').appendTo(thead);\n tr.addClass('layout-grid-row');\n fields.forEach(function (field) {\n var th = $('| ').html(field.label).appendTo(tr);\n th.css({\n 'width': field.width + 'px',\n 'border': '1px gray solid',\n 'text-align': 'center'\n });\n });\n }\n }, {\n key: \"toggleChildrenVisibility\",\n value: function toggleChildrenVisibility(nodeId, isExpanded) {\n var _this = this;\n var selector = \".treegrid-parent-\".concat(nodeId);\n $(selector).each(function (_, el) {\n $(el).toggle(!isExpanded);\n if (isExpanded) {\n // If we are hiding the children\n var childNodeId = $(el).data('nodeId'); // Assume data-nodeId is set when rows are created\n _this.toggleChildrenVisibility(childNodeId, true); // Recursively hide all descendants\n var expander = $(\".treegrid-\".concat(nodeId, \" .treegrid-expander\"));\n expander.html(isExpanded ? '+' : '-');\n }\n });\n }\n }, {\n key: \"setupExpander\",\n value: function setupExpander(cell, callback) {\n var expander = $('').addClass('treegrid-expander').html('-').appendTo(cell);\n expander.click(callback);\n }\n }]);\n return LayoutTreeDataGridView;\n}();\nvar LayoutTreeGridController = /*#__PURE__*/function () {\n function LayoutTreeGridController(model, view, options, totalMessageLengthSelector) {\n _classCallCheck(this, LayoutTreeGridController);\n this.model = model;\n this.view = view;\n this.options = options;\n this.apiClient = new _APIClient__WEBPACK_IMPORTED_MODULE_1__[\"default\"]();\n this.totalMessageLengthSelector = totalMessageLengthSelector;\n }\n _createClass(LayoutTreeGridController, [{\n key: \"init\",\n value: function init(callback) {\n this.view.addHeaders(this.options);\n this.processNode(this.model.dataRoot, 0);\n this.setupEditableFields();\n this.callback = callback;\n }\n }, {\n key: \"rebuild\",\n value: function () {\n var _rebuild = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee(dataRoot) {\n return _regeneratorRuntime().wrap(function _callee$(_context) {\n while (1) switch (_context.prev = _context.next) {\n case 0:\n this.model.dataRoot = dataRoot;\n this.view.table.children().remove();\n this.view.addHeaders(this.options);\n this.processNode(this.model.dataRoot, 0);\n this.setupEditableFields();\n _context.t0 = this;\n _context.next = 8;\n return this.concatenateFieldValues(this.model.dataRoot);\n case 8:\n _context.t1 = _context.sent;\n _context.t2 = this.model.dataRoot;\n _context.t0.callback.call(_context.t0, _context.t1, _context.t2);\n case 11:\n case \"end\":\n return _context.stop();\n }\n }, _callee, this);\n }));\n function rebuild(_x) {\n return _rebuild.apply(this, arguments);\n }\n return rebuild;\n }()\n }, {\n key: \"getIndent\",\n value: function getIndent(depth) {\n return new Array(depth + 1).join('');\n }\n }, {\n key: \"fillPadding\",\n value: function () {\n var _fillPadding = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee2(value, dataLength) {\n var paddedValue;\n return _regeneratorRuntime().wrap(function _callee2$(_context2) {\n while (1) switch (_context2.prev = _context2.next) {\n case 0:\n _context2.next = 2;\n return this.apiClient.processPreScriptAndVariables(this.model.apiRequest, value.toString());\n case 2:\n paddedValue = _context2.sent;\n while (paddedValue.length < dataLength) {\n paddedValue = ' ' + paddedValue; // Prepend a space character to the string\n }\n return _context2.abrupt(\"return\", paddedValue);\n case 5:\n case \"end\":\n return _context2.stop();\n }\n }, _callee2, this);\n }));\n function fillPadding(_x2, _x3) {\n return _fillPadding.apply(this, arguments);\n }\n return fillPadding;\n }()\n }, {\n key: \"concatenateFieldValues\",\n value: function () {\n var _concatenateFieldValues = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee3(node) {\n var concatenatedValues, _iterator, _step, child;\n return _regeneratorRuntime().wrap(function _callee3$(_context3) {\n while (1) switch (_context3.prev = _context3.next) {\n case 0:\n concatenatedValues = ''; // Process the current node if it is of type 'Field'\n if (!(node.loutItemType === 'Field')) {\n _context3.next = 9;\n break;\n }\n _context3.t0 = concatenatedValues;\n _context3.next = 5;\n return this.fillPadding(node.value, node.loutItemLength);\n case 5:\n _context3.t1 = _context3.sent;\n if (_context3.t1) {\n _context3.next = 8;\n break;\n }\n _context3.t1 = '';\n case 8:\n concatenatedValues = _context3.t0 += _context3.t1;\n case 9:\n if (!(node.children && node.children.length > 0)) {\n _context3.next = 29;\n break;\n }\n _iterator = _createForOfIteratorHelper(node.children);\n _context3.prev = 11;\n _iterator.s();\n case 13:\n if ((_step = _iterator.n()).done) {\n _context3.next = 21;\n break;\n }\n child = _step.value;\n _context3.t2 = concatenatedValues;\n _context3.next = 18;\n return this.concatenateFieldValues(child);\n case 18:\n concatenatedValues = _context3.t2 += _context3.sent;\n case 19:\n _context3.next = 13;\n break;\n case 21:\n _context3.next = 26;\n break;\n case 23:\n _context3.prev = 23;\n _context3.t3 = _context3[\"catch\"](11);\n _iterator.e(_context3.t3);\n case 26:\n _context3.prev = 26;\n _iterator.f();\n return _context3.finish(26);\n case 29:\n return _context3.abrupt(\"return\", concatenatedValues);\n case 30:\n case \"end\":\n return _context3.stop();\n }\n }, _callee3, this, [[11, 23, 26, 29]]);\n }));\n function concatenateFieldValues(_x4) {\n return _concatenateFieldValues.apply(this, arguments);\n }\n return concatenateFieldValues;\n }()\n }, {\n key: \"sumFieldLoutItemLengths\",\n value: function sumFieldLoutItemLengths() {\n var queue = [this.model.dataRoot];\n var sum = 0;\n while (queue.length > 0) {\n var node = queue.shift();\n if (node.loutItemType === 'Field') {\n sum += parseInt(node.loutItemLength) || 0; // Add the loutItemLength of the node, or 0 if undefined\n }\n if (node.children && node.children.length > 0) {\n var _iterator2 = _createForOfIteratorHelper(node.children),\n _step2;\n try {\n for (_iterator2.s(); !(_step2 = _iterator2.n()).done;) {\n var child = _step2.value;\n queue.push(child);\n }\n } catch (err) {\n _iterator2.e(err);\n } finally {\n _iterator2.f();\n }\n }\n }\n return sum;\n }\n }, {\n key: \"setupEditableFields\",\n value: function setupEditableFields() {\n var _this2 = this;\n this.view.table.find('.editable').each(function (index, editableElement) {\n var editableInput = new _EditableInput__WEBPACK_IMPORTED_MODULE_0__[\"default\"]({\n name: editableElement.dataset.name,\n value: editableElement.dataset.value,\n path: editableElement.dataset.path\n });\n editableInput.init(editableElement, /*#__PURE__*/function () {\n var _ref = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee4(value) {\n return _regeneratorRuntime().wrap(function _callee4$(_context4) {\n while (1) switch (_context4.prev = _context4.next) {\n case 0:\n _.set(_this2.model.dataRoot, editableElement.dataset.path, value);\n _context4.t0 = _this2;\n _context4.next = 4;\n return _this2.concatenateFieldValues(_this2.model.dataRoot);\n case 4:\n _context4.t1 = _context4.sent;\n _context4.t2 = _this2.model.dataRoot;\n _context4.t0.callback.call(_context4.t0, _context4.t1, _context4.t2);\n case 7:\n case \"end\":\n return _context4.stop();\n }\n }, _callee4);\n }));\n return function (_x5) {\n return _ref.apply(this, arguments);\n };\n }());\n });\n this.totalMessageLengthSelector.text(this.sumFieldLoutItemLengths());\n }\n }, {\n key: \"addCell\",\n value: function addCell(row, node, fieldInfo, depth) {\n var td = $(' | ').appendTo(row);\n var padding = fieldInfo.isFirst ? this.getIndent(depth) : '';\n var nodePath = this.model.getNodePath(this.model.dataRoot, node.id) + '.value';\n if (node.loutItemType === 'Field' && fieldInfo.type === 'textfield') {\n var div = $('');\n div.addClass('editable');\n div.appendTo(td);\n div.attr('data-name', fieldInfo.name);\n div.attr('data-value', node[fieldInfo.name]);\n div.attr('data-path', nodePath);\n } else {\n td.html(padding); // Default to just displaying the content\n }\n if (fieldInfo.width) {\n td.css({\n 'width': fieldInfo.width + 'px',\n 'border': '1px gray solid'\n });\n }\n if (fieldInfo.align) {\n td.css({\n 'text-align': fieldInfo.align\n });\n }\n return td;\n }\n }, {\n key: \"addRow\",\n value: function addRow(node, depth) {\n var tr = $(' ').addClass('treegrid-' + node.id).data('nodeId', node.id); // Storing node ID for easy access later\n\n if (depth === 0) {\n tr.css({\n 'display': 'none'\n });\n }\n if (node.parent) {\n var parentSelector = \".treegrid-\".concat(node.parent);\n var lastChildSelector = \".treegrid-parent-\".concat(node.parent);\n if ($(this.view.table).find(lastChildSelector).length > 0) {\n var lastChild = $(this.view.table).find(lastChildSelector).last();\n tr.insertAfter(lastChild);\n } else {\n tr.insertAfter($(this.view.table).find(parentSelector));\n }\n tr.addClass('treegrid-parent-' + node.parent);\n } else {\n tr.appendTo(this.view.table);\n }\n return tr;\n }\n\n //processNode in bfs\n }, {\n key: \"processNode\",\n value: function processNode(node, depth) {\n var _this3 = this;\n var queue = [{\n node: node,\n depth: depth\n }];\n var _loop = function _loop() {\n var _queue$shift = queue.shift(),\n node = _queue$shift.node,\n depth = _queue$shift.depth;\n var tr = _this3.addRow(node, depth);\n _this3.options.forEach(function (fieldInfo) {\n var content = node[fieldInfo.name];\n var td = _this3.addCell(tr, node, fieldInfo, depth);\n if (fieldInfo.isFirst) {\n if (node.children && node.children.length > 0) {\n _this3.view.setupExpander($(tr.children()[0]), function () {\n return _this3.handleExpanderClick(node.id);\n });\n }\n }\n if (fieldInfo.type !== 'textfield') {\n td.append(content);\n }\n });\n if (node.children && node.children.length > 0) {\n var _iterator3 = _createForOfIteratorHelper(node.children),\n _step3;\n try {\n for (_iterator3.s(); !(_step3 = _iterator3.n()).done;) {\n var child = _step3.value;\n queue.push({\n node: child,\n depth: depth + 1\n });\n }\n } catch (err) {\n _iterator3.e(err);\n } finally {\n _iterator3.f();\n }\n }\n };\n while (queue.length > 0) {\n _loop();\n }\n }\n }, {\n key: \"handleExpanderClick\",\n value: function handleExpanderClick(nodeId) {\n var expander = $(\".treegrid-\".concat(nodeId, \" .treegrid-expander\"));\n var isExpanded = expander.html() === '-';\n expander.html(isExpanded ? '+' : '-');\n this.view.toggleChildrenVisibility(nodeId, isExpanded);\n }\n }]);\n return LayoutTreeGridController;\n}();\nvar LayoutTreeDataGrid = /*#__PURE__*/function () {\n function LayoutTreeDataGrid(selector, root, apiRequest, options, totalMessageLengthSelector) {\n _classCallCheck(this, LayoutTreeDataGrid);\n this.model = new LayoutTreeDataGridModel(root, apiRequest);\n this.view = new LayoutTreeDataGridView(selector);\n this.controller = new LayoutTreeGridController(this.model, this.view, options, totalMessageLengthSelector);\n }\n _createClass(LayoutTreeDataGrid, [{\n key: \"init\",\n value: function init(callback) {\n this.controller.init(callback);\n }\n }, {\n key: \"rebuild\",\n value: function rebuild(dataRoot) {\n this.controller.rebuild(dataRoot);\n }\n }]);\n return LayoutTreeDataGrid;\n}();\n/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (LayoutTreeDataGrid);\n\n//# sourceURL=webpack://APITestManager/./src/components/LayoutTreeDataGrid.js?");
/***/ }),
/***/ "./src/components/LayoutTreeGrid.js":
/*!******************************************!*\
!*** ./src/components/LayoutTreeGrid.js ***!
\******************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": () => (__WEBPACK_DEFAULT_EXPORT__)\n/* harmony export */ });\n/* harmony import */ var _EditableInput__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./EditableInput */ \"./src/components/EditableInput.js\");\nfunction _regeneratorRuntime() { \"use strict\"; /*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/facebook/regenerator/blob/main/LICENSE */ _regeneratorRuntime = function _regeneratorRuntime() { return e; }; var t, e = {}, r = Object.prototype, n = r.hasOwnProperty, o = Object.defineProperty || function (t, e, r) { t[e] = r.value; }, i = \"function\" == typeof Symbol ? Symbol : {}, a = i.iterator || \"@@iterator\", c = i.asyncIterator || \"@@asyncIterator\", u = i.toStringTag || \"@@toStringTag\"; function define(t, e, r) { return Object.defineProperty(t, e, { value: r, enumerable: !0, configurable: !0, writable: !0 }), t[e]; } try { define({}, \"\"); } catch (t) { define = function define(t, e, r) { return t[e] = r; }; } function wrap(t, e, r, n) { var i = e && e.prototype instanceof Generator ? e : Generator, a = Object.create(i.prototype), c = new Context(n || []); return o(a, \"_invoke\", { value: makeInvokeMethod(t, r, c) }), a; } function tryCatch(t, e, r) { try { return { type: \"normal\", arg: t.call(e, r) }; } catch (t) { return { type: \"throw\", arg: t }; } } e.wrap = wrap; var h = \"suspendedStart\", l = \"suspendedYield\", f = \"executing\", s = \"completed\", y = {}; function Generator() {} function GeneratorFunction() {} function GeneratorFunctionPrototype() {} var p = {}; define(p, a, function () { return this; }); var d = Object.getPrototypeOf, v = d && d(d(values([]))); v && v !== r && n.call(v, a) && (p = v); var g = GeneratorFunctionPrototype.prototype = Generator.prototype = Object.create(p); function defineIteratorMethods(t) { [\"next\", \"throw\", \"return\"].forEach(function (e) { define(t, e, function (t) { return this._invoke(e, t); }); }); } function AsyncIterator(t, e) { function invoke(r, o, i, a) { var c = tryCatch(t[r], t, o); if (\"throw\" !== c.type) { var u = c.arg, h = u.value; return h && \"object\" == _typeof(h) && n.call(h, \"__await\") ? e.resolve(h.__await).then(function (t) { invoke(\"next\", t, i, a); }, function (t) { invoke(\"throw\", t, i, a); }) : e.resolve(h).then(function (t) { u.value = t, i(u); }, function (t) { return invoke(\"throw\", t, i, a); }); } a(c.arg); } var r; o(this, \"_invoke\", { value: function value(t, n) { function callInvokeWithMethodAndArg() { return new e(function (e, r) { invoke(t, n, e, r); }); } return r = r ? r.then(callInvokeWithMethodAndArg, callInvokeWithMethodAndArg) : callInvokeWithMethodAndArg(); } }); } function makeInvokeMethod(e, r, n) { var o = h; return function (i, a) { if (o === f) throw new Error(\"Generator is already running\"); if (o === s) { if (\"throw\" === i) throw a; return { value: t, done: !0 }; } for (n.method = i, n.arg = a;;) { var c = n.delegate; if (c) { var u = maybeInvokeDelegate(c, n); if (u) { if (u === y) continue; return u; } } if (\"next\" === n.method) n.sent = n._sent = n.arg;else if (\"throw\" === n.method) { if (o === h) throw o = s, n.arg; n.dispatchException(n.arg); } else \"return\" === n.method && n.abrupt(\"return\", n.arg); o = f; var p = tryCatch(e, r, n); if (\"normal\" === p.type) { if (o = n.done ? s : l, p.arg === y) continue; return { value: p.arg, done: n.done }; } \"throw\" === p.type && (o = s, n.method = \"throw\", n.arg = p.arg); } }; } function maybeInvokeDelegate(e, r) { var n = r.method, o = e.iterator[n]; if (o === t) return r.delegate = null, \"throw\" === n && e.iterator[\"return\"] && (r.method = \"return\", r.arg = t, maybeInvokeDelegate(e, r), \"throw\" === r.method) || \"return\" !== n && (r.method = \"throw\", r.arg = new TypeError(\"The iterator does not provide a '\" + n + \"' method\")), y; var i = tryCatch(o, e.iterator, r.arg); if (\"throw\" === i.type) return r.method = \"throw\", r.arg = i.arg, r.delegate = null, y; var a = i.arg; return a ? a.done ? (r[e.resultName] = a.value, r.next = e.nextLoc, \"return\" !== r.method && (r.method = \"next\", r.arg = t), r.delegate = null, y) : a : (r.method = \"throw\", r.arg = new TypeError(\"iterator result is not an object\"), r.delegate = null, y); } function pushTryEntry(t) { var e = { tryLoc: t[0] }; 1 in t && (e.catchLoc = t[1]), 2 in t && (e.finallyLoc = t[2], e.afterLoc = t[3]), this.tryEntries.push(e); } function resetTryEntry(t) { var e = t.completion || {}; e.type = \"normal\", delete e.arg, t.completion = e; } function Context(t) { this.tryEntries = [{ tryLoc: \"root\" }], t.forEach(pushTryEntry, this), this.reset(!0); } function values(e) { if (e || \"\" === e) { var r = e[a]; if (r) return r.call(e); if (\"function\" == typeof e.next) return e; if (!isNaN(e.length)) { var o = -1, i = function next() { for (; ++o < e.length;) if (n.call(e, o)) return next.value = e[o], next.done = !1, next; return next.value = t, next.done = !0, next; }; return i.next = i; } } throw new TypeError(_typeof(e) + \" is not iterable\"); } return GeneratorFunction.prototype = GeneratorFunctionPrototype, o(g, \"constructor\", { value: GeneratorFunctionPrototype, configurable: !0 }), o(GeneratorFunctionPrototype, \"constructor\", { value: GeneratorFunction, configurable: !0 }), GeneratorFunction.displayName = define(GeneratorFunctionPrototype, u, \"GeneratorFunction\"), e.isGeneratorFunction = function (t) { var e = \"function\" == typeof t && t.constructor; return !!e && (e === GeneratorFunction || \"GeneratorFunction\" === (e.displayName || e.name)); }, e.mark = function (t) { return Object.setPrototypeOf ? Object.setPrototypeOf(t, GeneratorFunctionPrototype) : (t.__proto__ = GeneratorFunctionPrototype, define(t, u, \"GeneratorFunction\")), t.prototype = Object.create(g), t; }, e.awrap = function (t) { return { __await: t }; }, defineIteratorMethods(AsyncIterator.prototype), define(AsyncIterator.prototype, c, function () { return this; }), e.AsyncIterator = AsyncIterator, e.async = function (t, r, n, o, i) { void 0 === i && (i = Promise); var a = new AsyncIterator(wrap(t, r, n, o), i); return e.isGeneratorFunction(r) ? a : a.next().then(function (t) { return t.done ? t.value : a.next(); }); }, defineIteratorMethods(g), define(g, u, \"Generator\"), define(g, a, function () { return this; }), define(g, \"toString\", function () { return \"[object Generator]\"; }), e.keys = function (t) { var e = Object(t), r = []; for (var n in e) r.push(n); return r.reverse(), function next() { for (; r.length;) { var t = r.pop(); if (t in e) return next.value = t, next.done = !1, next; } return next.done = !0, next; }; }, e.values = values, Context.prototype = { constructor: Context, reset: function reset(e) { if (this.prev = 0, this.next = 0, this.sent = this._sent = t, this.done = !1, this.delegate = null, this.method = \"next\", this.arg = t, this.tryEntries.forEach(resetTryEntry), !e) for (var r in this) \"t\" === r.charAt(0) && n.call(this, r) && !isNaN(+r.slice(1)) && (this[r] = t); }, stop: function stop() { this.done = !0; var t = this.tryEntries[0].completion; if (\"throw\" === t.type) throw t.arg; return this.rval; }, dispatchException: function dispatchException(e) { if (this.done) throw e; var r = this; function handle(n, o) { return a.type = \"throw\", a.arg = e, r.next = n, o && (r.method = \"next\", r.arg = t), !!o; } for (var o = this.tryEntries.length - 1; o >= 0; --o) { var i = this.tryEntries[o], a = i.completion; if (\"root\" === i.tryLoc) return handle(\"end\"); if (i.tryLoc <= this.prev) { var c = n.call(i, \"catchLoc\"), u = n.call(i, \"finallyLoc\"); if (c && u) { if (this.prev < i.catchLoc) return handle(i.catchLoc, !0); if (this.prev < i.finallyLoc) return handle(i.finallyLoc); } else if (c) { if (this.prev < i.catchLoc) return handle(i.catchLoc, !0); } else { if (!u) throw new Error(\"try statement without catch or finally\"); if (this.prev < i.finallyLoc) return handle(i.finallyLoc); } } } }, abrupt: function abrupt(t, e) { for (var r = this.tryEntries.length - 1; r >= 0; --r) { var o = this.tryEntries[r]; if (o.tryLoc <= this.prev && n.call(o, \"finallyLoc\") && this.prev < o.finallyLoc) { var i = o; break; } } i && (\"break\" === t || \"continue\" === t) && i.tryLoc <= e && e <= i.finallyLoc && (i = null); var a = i ? i.completion : {}; return a.type = t, a.arg = e, i ? (this.method = \"next\", this.next = i.finallyLoc, y) : this.complete(a); }, complete: function complete(t, e) { if (\"throw\" === t.type) throw t.arg; return \"break\" === t.type || \"continue\" === t.type ? this.next = t.arg : \"return\" === t.type ? (this.rval = this.arg = t.arg, this.method = \"return\", this.next = \"end\") : \"normal\" === t.type && e && (this.next = e), y; }, finish: function finish(t) { for (var e = this.tryEntries.length - 1; e >= 0; --e) { var r = this.tryEntries[e]; if (r.finallyLoc === t) return this.complete(r.completion, r.afterLoc), resetTryEntry(r), y; } }, \"catch\": function _catch(t) { for (var e = this.tryEntries.length - 1; e >= 0; --e) { var r = this.tryEntries[e]; if (r.tryLoc === t) { var n = r.completion; if (\"throw\" === n.type) { var o = n.arg; resetTryEntry(r); } return o; } } throw new Error(\"illegal catch attempt\"); }, delegateYield: function delegateYield(e, r, n) { return this.delegate = { iterator: values(e), resultName: r, nextLoc: n }, \"next\" === this.method && (this.arg = t), y; } }, e; }\nfunction asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) { try { var info = gen[key](arg); var value = info.value; } catch (error) { reject(error); return; } if (info.done) { resolve(value); } else { Promise.resolve(value).then(_next, _throw); } }\nfunction _asyncToGenerator(fn) { return function () { var self = this, args = arguments; return new Promise(function (resolve, reject) { var gen = fn.apply(self, args); function _next(value) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, \"next\", value); } function _throw(err) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, \"throw\", err); } _next(undefined); }); }; }\nfunction _typeof(o) { \"@babel/helpers - typeof\"; return _typeof = \"function\" == typeof Symbol && \"symbol\" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && \"function\" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? \"symbol\" : typeof o; }, _typeof(o); }\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\nfunction _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, _toPropertyKey(descriptor.key), descriptor); } }\nfunction _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); Object.defineProperty(Constructor, \"prototype\", { writable: false }); return Constructor; }\nfunction _toPropertyKey(t) { var i = _toPrimitive(t, \"string\"); return \"symbol\" == _typeof(i) ? i : String(i); }\nfunction _toPrimitive(t, r) { if (\"object\" != _typeof(t) || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || \"default\"); if (\"object\" != _typeof(i)) return i; throw new TypeError(\"@@toPrimitive must return a primitive value.\"); } return (\"string\" === r ? String : Number)(t); }\n\nvar LayoutTreeGridModel = /*#__PURE__*/function () {\n function LayoutTreeGridModel(root) {\n _classCallCheck(this, LayoutTreeGridModel);\n this.root = root;\n this.rootId = root.id;\n }\n _createClass(LayoutTreeGridModel, [{\n key: \"setRoot\",\n value: function setRoot(newRoot) {\n this.root = newRoot;\n }\n }, {\n key: \"getNodePath\",\n value: function getNodePath(node, targetId) {\n var path = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : '';\n // Check if the current node is the target node\n if (node.id === targetId) {\n return path;\n }\n\n // If the current node has children, iterate over them\n if (node.children) {\n for (var i = 0; i < node.children.length; i++) {\n // Construct the path to the current child\n var currentPath = path ? \"\".concat(path, \".children[\").concat(i, \"]\") : \"children[\".concat(i, \"]\");\n\n // Recursively call findPath on the child\n var resultPath = this.getNodePath(node.children[i], targetId, currentPath);\n\n // If resultPath is not null, the target has been found in the subtree\n if (resultPath) {\n return resultPath;\n }\n }\n }\n\n // Return null if the target is not found in this subtree\n return null;\n }\n }]);\n return LayoutTreeGridModel;\n}();\nvar LayoutTreeGridView = /*#__PURE__*/function () {\n function LayoutTreeGridView(selector) {\n _classCallCheck(this, LayoutTreeGridView);\n this.selector = selector;\n this.table = $('').appendTo($(this.selector));\n this.table.addClass('layout_table');\n this.table.css({\n 'width': 'inherit',\n 'border-collapse': 'collapse',\n 'border': '1px gray solid'\n });\n this.init();\n }\n _createClass(LayoutTreeGridView, [{\n key: \"init\",\n value: function init() {\n this.table.children().remove();\n }\n }, {\n key: \"clear\",\n value: function clear() {\n this.init();\n }\n }, {\n key: \"addHeaders\",\n value: function addHeaders(fields) {\n var thead = $('').appendTo(this.table);\n var tr = $('').appendTo(thead);\n tr.addClass('layout-grid-row');\n fields.forEach(function (field) {\n var th = $('').html(field.label).appendTo(tr);\n th.css({\n 'width': field.width + 'px',\n 'border': '1px gray solid',\n 'text-align': 'center'\n });\n });\n }\n }, {\n key: \"toggleChildrenVisibility\",\n value: function toggleChildrenVisibility(nodeId, isExpanded) {\n var _this = this;\n var selector = \".treegrid-parent-\".concat(nodeId);\n $(selector).each(function (_, el) {\n $(el).toggle(!isExpanded);\n if (isExpanded) {\n // If we are hiding the children\n var childNodeId = $(el).data('nodeId'); // Assume data-nodeId is set when rows are created\n _this.toggleChildrenVisibility(childNodeId, true); // Recursively hide all descendants\n var expander = $(\".treegrid-\".concat(nodeId, \" .treegrid-expander\"));\n expander.html(isExpanded ? '+' : '-');\n }\n });\n }\n }, {\n key: \"setupExpander\",\n value: function setupExpander(cell, callback) {\n var expander = $('').addClass('treegrid-expander').html('-').appendTo(cell);\n expander.click(callback);\n }\n }]);\n return LayoutTreeGridView;\n}();\nvar LayoutTreeGridController = /*#__PURE__*/function () {\n function LayoutTreeGridController(model, view, options, callback) {\n _classCallCheck(this, LayoutTreeGridController);\n this.model = model;\n this.view = view;\n this.options = options;\n this.callback = callback;\n this.init();\n }\n _createClass(LayoutTreeGridController, [{\n key: \"init\",\n value: function init() {\n var _this2 = this;\n this.view.init();\n this.view.addHeaders(this.options);\n this.processNode(this.model.root, 0);\n this.view.table.find('.editable').each(function (index, editableElement) {\n var editableInput = new _EditableInput__WEBPACK_IMPORTED_MODULE_0__[\"default\"]({\n name: editableElement.dataset.name,\n value: editableElement.dataset.value,\n path: editableElement.dataset.path\n });\n editableInput.init(editableElement, /*#__PURE__*/function () {\n var _ref = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee(value) {\n return _regeneratorRuntime().wrap(function _callee$(_context) {\n while (1) switch (_context.prev = _context.next) {\n case 0:\n _.set(_this2.model.root, editableElement.dataset.path, value);\n _this2.callback(_this2.model.root);\n case 2:\n case \"end\":\n return _context.stop();\n }\n }, _callee);\n }));\n return function (_x) {\n return _ref.apply(this, arguments);\n };\n }());\n });\n }\n }, {\n key: \"getIndent\",\n value: function getIndent(depth) {\n return new Array(depth + 1).join('');\n }\n }, {\n key: \"addRow\",\n value: function addRow(node, depth) {\n // console.log('================================ addRow: ', node.id);\n var tr = $('').addClass('treegrid-' + node.id).data('nodeId', node.id);\n if (depth === 0) {\n tr.css({\n 'display': 'none'\n });\n }\n if (node.parent !== undefined && node.parent !== null && parseInt(node.parent) !== this.model.rootId) {\n var parentSelector = \".treegrid-\".concat(node.parent);\n var lastChildSelector = \".treegrid-parent-\".concat(node.parent);\n if ($(this.view.table).find(lastChildSelector).length > 0) {\n var lastChild = $(this.view.table).find(lastChildSelector).last();\n tr.insertAfter(lastChild);\n // console.log('addRow, node: ', node.id, ' parent: ', node.parent, 'tr: ', tr, 'insertAfterLastChild: ', lastChild);\n } else {\n // console.log('addRow, node: ', node.id, ' parent: ', node.parent, 'tr: ', tr, 'insertAfterParent: ', parentSelector);\n tr.insertAfter($(this.view.table).find(parentSelector));\n }\n tr.addClass('treegrid-parent-' + node.parent);\n } else {\n tr.appendTo(this.view.table);\n // console.log('addRow, node: ', node.id, ' parent: ', node.parent, 'tr: ', tr, 'no parent');\n }\n\n // console.log('================================ row Added');\n return tr;\n }\n }, {\n key: \"addCell\",\n value: function addCell(row, node, fieldInfo, depth) {\n var td = $('').appendTo(row);\n var padding = fieldInfo.isFirst ? this.getIndent(depth) : '';\n var nodePath = this.model.getNodePath(this.model.root, node.id) + '.value';\n if (node.loutItemType === 'Field' && fieldInfo.type === 'textfield') {\n var div = $('');\n div.addClass('editable');\n div.appendTo(td);\n div.attr('data-name', fieldInfo.name);\n div.attr('data-value', node[fieldInfo.name]);\n div.attr('data-path', nodePath);\n } else {\n td.html(padding); // Default to just displaying the content\n }\n if (fieldInfo.width) {\n td.css({\n 'width': fieldInfo.width + 'px',\n 'border': '1px gray solid'\n });\n }\n if (fieldInfo.align) {\n td.css({\n 'text-align': fieldInfo.align\n });\n }\n return td;\n }\n }, {\n key: \"processNode\",\n value: function processNode(node, depth) {\n var _this3 = this;\n // console.log('node: ', node.id);\n var tr = this.addRow(node, depth);\n this.options.forEach(function (fieldInfo) {\n var content = node[fieldInfo.name];\n var td = _this3.addCell(tr, node, fieldInfo, depth);\n if (fieldInfo.isFirst) {\n if (node.children && node.children.length > 0) {\n _this3.view.setupExpander($(tr.children()[0]), function () {\n return _this3.handleExpanderClick(node.id);\n });\n }\n }\n if (fieldInfo.type !== 'textfield') {\n td.append(content);\n }\n });\n\n // Recursively process each child node if any\n if (node.children && node.children.length > 0) {\n node.children.forEach(function (child) {\n _this3.processNode(child, depth + 1); // Increment depth for each child\n });\n }\n }\n }, {\n key: \"handleExpanderClick\",\n value: function handleExpanderClick(nodeId) {\n var expander = $(\".treegrid-\".concat(nodeId, \" .treegrid-expander\"));\n var isExpanded = expander.html() === '-';\n expander.html(isExpanded ? '+' : '-');\n this.view.toggleChildrenVisibility(nodeId, isExpanded);\n }\n }, {\n key: \"rebuild\",\n value: function rebuild(newRoot) {\n this.model.setRoot(newRoot);\n this.view.clear();\n this.init();\n }\n }]);\n return LayoutTreeGridController;\n}();\nvar LayoutTreeGrid = /*#__PURE__*/function () {\n function LayoutTreeGrid(selector, root, options, callback) {\n _classCallCheck(this, LayoutTreeGrid);\n this.model = new LayoutTreeGridModel(root);\n this.view = new LayoutTreeGridView(selector);\n this.controller = new LayoutTreeGridController(this.model, this.view, options, callback);\n }\n _createClass(LayoutTreeGrid, [{\n key: \"rebuild\",\n value: function rebuild(root, callback) {\n this.controller.rebuild(root);\n callback(root);\n }\n }]);\n return LayoutTreeGrid;\n}();\n/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (LayoutTreeGrid);\n\n//# sourceURL=webpack://APITestManager/./src/components/LayoutTreeGrid.js?");
/***/ }),
/***/ "./src/components/LoadTestResult.js":
/*!******************************************!*\
!*** ./src/components/LoadTestResult.js ***!
\******************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": () => (__WEBPACK_DEFAULT_EXPORT__)\n/* harmony export */ });\n/* harmony import */ var _stomp_stompjs__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @stomp/stompjs */ \"./node_modules/@stomp/stompjs/esm6/compatibility/stomp.js\");\n/* harmony import */ var sockjs_client__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! sockjs-client */ \"./node_modules/sockjs-client/lib/entry.js\");\n/* harmony import */ var sockjs_client__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(sockjs_client__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var _LoadTestResultList__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./LoadTestResultList */ \"./src/components/LoadTestResultList.js\");\n/* harmony import */ var _LoadTestResultDetail__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./LoadTestResultDetail */ \"./src/components/LoadTestResultDetail.js\");\nfunction _typeof(o) { \"@babel/helpers - typeof\"; return _typeof = \"function\" == typeof Symbol && \"symbol\" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && \"function\" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? \"symbol\" : typeof o; }, _typeof(o); }\nfunction _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, _toPropertyKey(descriptor.key), descriptor); } }\nfunction _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); Object.defineProperty(Constructor, \"prototype\", { writable: false }); return Constructor; }\nfunction _toPropertyKey(t) { var i = _toPrimitive(t, \"string\"); return \"symbol\" == _typeof(i) ? i : String(i); }\nfunction _toPrimitive(t, r) { if (\"object\" != _typeof(t) || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || \"default\"); if (\"object\" != _typeof(i)) return i; throw new TypeError(\"@@toPrimitive must return a primitive value.\"); } return (\"string\" === r ? String : Number)(t); }\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\n\n\n\nvar LoadTestResultModel = /*#__PURE__*/_createClass(function LoadTestResultModel(testId) {\n _classCallCheck(this, LoadTestResultModel);\n this.testId = testId;\n});\nvar LoadTestResultView = /*#__PURE__*/function () {\n function LoadTestResultView(model, element, controller) {\n _classCallCheck(this, LoadTestResultView);\n this.element = element;\n this.model = model;\n this.controller = controller;\n this.testResultListElement = document.createElement('div');\n this.testResultListElement.id = 'loadTestResultList';\n this.testResultListElement.style.width = '250px';\n this.testResultListElement.style.border = '1px solid #e0e0e0';\n this.testResultListElement.style.padding = '5px';\n this.testResultListElement.style.overflow = 'hidden';\n this.testResultListElement.style.height = \"\".concat(window.innerHeight - 160, \"px\");\n this.testResultListElement.style.maxHeight = '100%';\n this.testResultListElement.classList.add('load-test-result-container');\n this.element.appendChild(this.testResultListElement);\n this.testResultDetailElement = document.createElement('div');\n this.testResultDetailElement.id = 'loadTestResultDetail';\n this.testResultDetailElement.style.width = 'calc(100% - 250px)';\n this.testResultDetailElement.style.border = '1px solid #e0e0e0';\n this.testResultDetailElement.classList.add('load-test-result-detail');\n this.testResultDetailElement.style.display = 'flex';\n this.testResultDetailElement.style.height = \"\".concat(window.innerHeight - 160, \"px\");\n this.testResultDetailElement.style.maxHeight = '100%'; //it seems not working\n this.element.appendChild(this.testResultDetailElement);\n }\n _createClass(LoadTestResultView, [{\n key: \"resize\",\n value: function resize() {\n this.testResultListElement.style.height = \"\".concat(window.innerHeight - 160, \"px\");\n this.testResultDetailElement.style.height = \"\".concat(window.innerHeight - 160, \"px\");\n }\n }]);\n return LoadTestResultView;\n}();\nvar LoadTestResultController = /*#__PURE__*/function () {\n function LoadTestResultController(contextPath, element, model) {\n _classCallCheck(this, LoadTestResultController);\n this.contextPath = contextPath || '/';\n this.model = model;\n this.view = new LoadTestResultView(this.model, element, this);\n this.subscription = null;\n this.loadTestResultList = null;\n }\n _createClass(LoadTestResultController, [{\n key: \"init\",\n value: function init() {\n console.log('LoadTestResultController init');\n //initialize websocket\n this.socket = new (sockjs_client__WEBPACK_IMPORTED_MODULE_0___default())(this.contextPath + 'load-test-result');\n this.client = _stomp_stompjs__WEBPACK_IMPORTED_MODULE_3__.Stomp.over(this.socket);\n this.client.connect({}, function () {\n console.log('connected');\n });\n this.client.activate();\n this.bindEvents();\n }\n }, {\n key: \"bindEvents\",\n value: function bindEvents() {\n window.addEventListener('resize', this.resize.bind(this));\n }\n }, {\n key: \"resize\",\n value: function resize() {\n this.view.resize();\n }\n }, {\n key: \"showResult\",\n value: function showResult(testId) {\n var _this = this;\n if (this.subscription) {\n this.subscription.unsubscribe();\n this.subscription = null; // Clear the subscription after unsubscribing\n }\n this.model.testId = testId;\n this.subscription = this.client.subscribe(\"/topic/\".concat(this.model.testId), function (message) {\n _this.loadTestResultList.addTestResult(JSON.parse(message.body));\n });\n }\n }]);\n return LoadTestResultController;\n}();\nvar LoadTestResult = /*#__PURE__*/function () {\n function LoadTestResult(contextPath, element) {\n _classCallCheck(this, LoadTestResult);\n this.contextPath = contextPath || '/';\n this.element = element;\n }\n _createClass(LoadTestResult, [{\n key: \"init\",\n value: function init() {\n this.model = new LoadTestResultModel();\n this.controller = new LoadTestResultController(this.contextPath, this.element, this.model);\n this.controller.init();\n this.view = this.controller.view;\n this.loadTestResultDetail = new _LoadTestResultDetail__WEBPACK_IMPORTED_MODULE_2__[\"default\"](this.contextPath, this.view.testResultDetailElement);\n this.loadTestResultList = new _LoadTestResultList__WEBPACK_IMPORTED_MODULE_1__[\"default\"](this.contextPath, this.view.testResultListElement, this.loadTestResultDetail);\n this.controller.loadTestResultList = this.loadTestResultList;\n }\n }, {\n key: \"showResult\",\n value: function showResult(testId) {\n this.controller.showResult(testId);\n }\n }, {\n key: \"reset\",\n value: function reset() {\n this.loadTestResultList.reset();\n this.loadTestResultDetail.reset();\n }\n }, {\n key: \"showTestReport\",\n value: function showTestReport() {\n //show test report modal\n }\n }]);\n return LoadTestResult;\n}();\n/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (LoadTestResult);\n\n//# sourceURL=webpack://APITestManager/./src/components/LoadTestResult.js?");
/***/ }),
/***/ "./src/components/LoadTestResultDetail.js":
/*!************************************************!*\
!*** ./src/components/LoadTestResultDetail.js ***!
\************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": () => (__WEBPACK_DEFAULT_EXPORT__)\n/* harmony export */ });\n/* harmony import */ var monaco_editor__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! monaco-editor */ \"include-loader!./node_modules/monaco-editor/esm/vs/editor/editor.main.js\");\nfunction _typeof(o) { \"@babel/helpers - typeof\"; return _typeof = \"function\" == typeof Symbol && \"symbol\" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && \"function\" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? \"symbol\" : typeof o; }, _typeof(o); }\nfunction _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, _toPropertyKey(descriptor.key), descriptor); } }\nfunction _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); Object.defineProperty(Constructor, \"prototype\", { writable: false }); return Constructor; }\nfunction _toPropertyKey(t) { var i = _toPrimitive(t, \"string\"); return \"symbol\" == _typeof(i) ? i : String(i); }\nfunction _toPrimitive(t, r) { if (\"object\" != _typeof(t) || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || \"default\"); if (\"object\" != _typeof(i)) return i; throw new TypeError(\"@@toPrimitive must return a primitive value.\"); } return (\"string\" === r ? String : Number)(t); }\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nvar LoadTestResultDetailModel = /*#__PURE__*/_createClass(function LoadTestResultDetailModel() {\n _classCallCheck(this, LoadTestResultDetailModel);\n this.testResult = null;\n});\nvar LoadTestResultDetailView = /*#__PURE__*/_createClass(function LoadTestResultDetailView(element, model, controller) {\n _classCallCheck(this, LoadTestResultDetailView);\n this.element = element;\n this.editorContainer = document.createElement('div');\n this.editorContainer.style.flex = '1';\n this.element.appendChild(this.editorContainer);\n this.model = model;\n this.controller = controller;\n this.outputEditor = monaco_editor__WEBPACK_IMPORTED_MODULE_0__.editor.create(this.editorContainer, {\n value: '',\n automaticLayout: true,\n quickSuggestions: false\n });\n});\nvar LoadTestResultDetailController = /*#__PURE__*/function () {\n function LoadTestResultDetailController(element, model) {\n _classCallCheck(this, LoadTestResultDetailController);\n this.element = element;\n this.model = model;\n this.view = new LoadTestResultDetailView(element, model, this);\n }\n _createClass(LoadTestResultDetailController, [{\n key: \"showDetail\",\n value: function showDetail(result) {\n this.view.outputEditor.setValue('');\n console.log(result);\n if (result.request.type === 'TCP') {\n this.logTcpRequest(result.request);\n this.logTcpResponse(result.response);\n } else {\n this.logHttpRequest(result.request);\n this.logHttpResponse(result.response);\n }\n }\n }, {\n key: \"reset\",\n value: function reset() {\n this.view.outputEditor.setValue('');\n }\n }, {\n key: \"appendLog\",\n value: function appendLog(text) {\n var range = new monaco_editor__WEBPACK_IMPORTED_MODULE_0__.Range(this.view.outputEditor.getModel().getLineCount(), 1, this.view.outputEditor.getModel().getLineCount(), 1);\n var id = {\n major: 1,\n minor: 1\n };\n var op = {\n identifier: id,\n range: range,\n text: text + '\\n\\n',\n forceMoveMarkers: true\n };\n this.view.outputEditor.executeEdits('my-source', [op]);\n }\n }, {\n key: \"logHttpRequest\",\n value: function logHttpRequest(request) {\n console.log({\n request: request\n });\n var log = \"[API Request]\\n\".concat(request.method, \" \").concat(request.path, \" HTTP/1.1\\n[Request Headers]\\n\").concat(this.parseRequestHeaders(request.headers), \"\\n[Request Body]\\n\").concat(request.requestBody);\n this.appendLog(log);\n }\n }, {\n key: \"logTcpRequest\",\n value: function logTcpRequest(model) {\n console.log(model);\n var log = \"[TCP API Request]\\n[Request Body]\\n\".concat(model.requestBody);\n this.appendLog(log);\n }\n }, {\n key: \"logHttpResponse\",\n value: function logHttpResponse(response) {\n console.log({\n response: response\n });\n var log = \"[Response]\\nHTTP/1.1 \".concat(response.status, \"\\n[Response Headers]\\n\").concat(this.parseHeaders(response.headers), \"\\n[Response Body]\\n\").concat(response.body, \"\\n\");\n this.appendLog(log);\n }\n }, {\n key: \"logTcpResponse\",\n value: function logTcpResponse(response) {\n console.log({\n response: response\n });\n var log = \"[Response]\\n\".concat(response.body, \"\\n\");\n this.appendLog(log);\n }\n }, {\n key: \"parseRequestHeaders\",\n value: function parseRequestHeaders(headers) {\n var parsedHeaders = '';\n headers.forEach(function (header) {\n if (header.enabled) {\n parsedHeaders += \"\".concat(header.key, \": \").concat(header.value, \"\\n\");\n }\n });\n return parsedHeaders;\n }\n }, {\n key: \"parseHeaders\",\n value: function parseHeaders(headers) {\n var parsedHeaders = '';\n headers.forEach(function (header) {\n parsedHeaders += \"\".concat(header.key, \": \").concat(header.value, \"\\n\");\n });\n return parsedHeaders;\n }\n }, {\n key: \"resizeEditor\",\n value: function resizeEditor() {\n //FIXME: 창 크기 변경시 자동으로 editor 크기가 조정되지 않아서, 0으로 강제 변경후 다시 layout() 호출\n this.view.outputEditor.layout({\n width: 0\n });\n this.view.outputEditor.layout({});\n }\n }, {\n key: \"init\",\n value: function init() {\n this.bindEvents();\n }\n }, {\n key: \"bindEvents\",\n value: function bindEvents() {\n window.addEventListener('resize', this.resizeEditor.bind(this));\n }\n }]);\n return LoadTestResultDetailController;\n}();\nvar LoadTestResultDetail = /*#__PURE__*/function () {\n function LoadTestResultDetail(contextPath, element) {\n _classCallCheck(this, LoadTestResultDetail);\n this.contextPath = contextPath || '/';\n this.model = new LoadTestResultDetailModel();\n this.controller = new LoadTestResultDetailController(element, this.model);\n this.controller.init();\n }\n _createClass(LoadTestResultDetail, [{\n key: \"showDetail\",\n value: function showDetail(result) {\n this.controller.showDetail(result);\n }\n }, {\n key: \"reset\",\n value: function reset() {\n this.controller.reset();\n }\n }]);\n return LoadTestResultDetail;\n}();\n/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (LoadTestResultDetail);\n\n//# sourceURL=webpack://APITestManager/./src/components/LoadTestResultDetail.js?");
/***/ }),
/***/ "./src/components/LoadTestResultList.js":
/*!**********************************************!*\
!*** ./src/components/LoadTestResultList.js ***!
\**********************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": () => (__WEBPACK_DEFAULT_EXPORT__)\n/* harmony export */ });\nfunction _typeof(o) { \"@babel/helpers - typeof\"; return _typeof = \"function\" == typeof Symbol && \"symbol\" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && \"function\" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? \"symbol\" : typeof o; }, _typeof(o); }\nfunction _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, _toPropertyKey(descriptor.key), descriptor); } }\nfunction _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); Object.defineProperty(Constructor, \"prototype\", { writable: false }); return Constructor; }\nfunction _toPropertyKey(t) { var i = _toPrimitive(t, \"string\"); return \"symbol\" == _typeof(i) ? i : String(i); }\nfunction _toPrimitive(t, r) { if (\"object\" != _typeof(t) || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || \"default\"); if (\"object\" != _typeof(i)) return i; throw new TypeError(\"@@toPrimitive must return a primitive value.\"); } return (\"string\" === r ? String : Number)(t); }\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\nvar LoadTestResultListModel = /*#__PURE__*/_createClass(function LoadTestResultListModel() {\n _classCallCheck(this, LoadTestResultListModel);\n this.testResults = [];\n});\nvar LoadTestResultListView = /*#__PURE__*/function () {\n function LoadTestResultListView(element, model, controller) {\n _classCallCheck(this, LoadTestResultListView);\n this.element = element;\n var ul = document.createElement('ul');\n ul.style.overflowY = 'scroll';\n ul.style.padding = '0';\n ul.style.height = 'inherit';\n ul.style.maxHeight = '100%';\n this.element.appendChild(ul);\n this.model = model;\n this.controller = controller;\n }\n _createClass(LoadTestResultListView, [{\n key: \"addTestResult\",\n value: function addTestResult(result) {\n var _this = this;\n var ul = this.element.querySelector('ul');\n var li = document.createElement('li');\n li.style.border = '1px solid #e0e0e0';\n li.style.marginBottom = '5px';\n li.style.padding = '4px';\n li.textContent = result.request.name; // Assuming `result` is a string or has a `.toString()` method that returns a meaningful representation\n\n li.addEventListener('click', function () {\n var allLi = ul.querySelectorAll('li');\n allLi.forEach(function (li) {\n li.classList.remove('selected');\n });\n\n // Add \"selected\" class to the clicked li\n li.classList.add('selected');\n _this.controller.showDetail(result);\n });\n ul.appendChild(li);\n }\n }]);\n return LoadTestResultListView;\n}();\nvar LoadTestResultListController = /*#__PURE__*/function () {\n function LoadTestResultListController(model, element, detail) {\n _classCallCheck(this, LoadTestResultListController);\n this.model = model;\n this.view = new LoadTestResultListView(element, model, this);\n this.detail = detail;\n }\n _createClass(LoadTestResultListController, [{\n key: \"init\",\n value: function init() {\n this.bindEvents();\n }\n }, {\n key: \"showDetail\",\n value: function showDetail(result) {\n this.detail.showDetail(result);\n }\n }, {\n key: \"bindEvents\",\n value: function bindEvents() {\n var events = [\n // {type: 'click'}\n ];\n for (var _i = 0, _events = events; _i < _events.length; _i++) {\n var event = _events[_i];\n $(document).off(event.type, event.selector).on(event.type, event.selector, event.action);\n }\n }\n }, {\n key: \"addTestResult\",\n value: function addTestResult(result) {\n this.model.testResults.push(result);\n this.view.addTestResult(result);\n }\n }, {\n key: \"reset\",\n value: function reset() {\n this.model.testResults = [];\n this.view.element.querySelector('ul').innerHTML = '';\n }\n }]);\n return LoadTestResultListController;\n}();\nvar LoadTestResultList = /*#__PURE__*/function () {\n function LoadTestResultList(contextPath, element, detail) {\n _classCallCheck(this, LoadTestResultList);\n this.contextPath = contextPath || '/';\n this.model = new LoadTestResultListModel();\n this.detail = detail;\n this.controller = new LoadTestResultListController(this.model, element, detail);\n }\n _createClass(LoadTestResultList, [{\n key: \"init\",\n value: function init() {\n this.controller.init();\n }\n }, {\n key: \"addTestResult\",\n value: function addTestResult(result) {\n this.controller.addTestResult(result);\n }\n }, {\n key: \"reset\",\n value: function reset() {\n this.controller.reset();\n }\n }]);\n return LoadTestResultList;\n}();\n/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (LoadTestResultList);\n\n//# sourceURL=webpack://APITestManager/./src/components/LoadTestResultList.js?");
/***/ }),
/***/ "./src/components/LoadTester.js":
/*!**************************************!*\
!*** ./src/components/LoadTester.js ***!
\**************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": () => (__WEBPACK_DEFAULT_EXPORT__)\n/* harmony export */ });\nfunction _typeof(o) { \"@babel/helpers - typeof\"; return _typeof = \"function\" == typeof Symbol && \"symbol\" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && \"function\" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? \"symbol\" : typeof o; }, _typeof(o); }\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\nfunction _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, _toPropertyKey(descriptor.key), descriptor); } }\nfunction _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); Object.defineProperty(Constructor, \"prototype\", { writable: false }); return Constructor; }\nfunction _toPropertyKey(t) { var i = _toPrimitive(t, \"string\"); return \"symbol\" == _typeof(i) ? i : String(i); }\nfunction _toPrimitive(t, r) { if (\"object\" != _typeof(t) || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || \"default\"); if (\"object\" != _typeof(i)) return i; throw new TypeError(\"@@toPrimitive must return a primitive value.\"); } return (\"string\" === r ? String : Number)(t); }\nvar LoadTestModel = /*#__PURE__*/function () {\n function LoadTestModel(loadTest) {\n _classCallCheck(this, LoadTestModel);\n this.scenarios = [];\n if (loadTest) {\n this.loadTest = loadTest;\n } else {\n this.loadTest = {\n scenarioId: null,\n threadCount: 1,\n loopCount: 0,\n rampUpTime: 0,\n duration: 0,\n testData: null\n };\n }\n }\n _createClass(LoadTestModel, [{\n key: \"getScenarioList\",\n value: function getScenarioList() {\n return this.scenarios;\n }\n }]);\n return LoadTestModel;\n}();\nvar LoadTestView = /*#__PURE__*/function () {\n function LoadTestView(model, controller) {\n _classCallCheck(this, LoadTestView);\n this.model = model;\n this.controller = controller;\n }\n _createClass(LoadTestView, [{\n key: \"renderScenarioList\",\n value: function renderScenarioList() {\n var _this = this;\n var scenarioList = this.model.getScenarioList();\n return \" \\n \\n \\n \");\n }\n }, {\n key: \"render\",\n value: function render(element) {\n this.element = element;\n\n // Assuming the container's HTML is defined here as before\n var html = \"\\n \".concat(this.renderScenarioList(), \"\\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n\\n \");\n this.element.innerHTML = html;\n console.log('LoadTestView.render() called');\n }\n }, {\n key: \"updateView\",\n value: function updateView() {\n document.querySelector('select[name=\"scenarioId\"]').value = this.model.loadTest.scenarioId || '';\n document.querySelector('input[name=\"user_count\"]').value = this.model.loadTest.threadCount || 1;\n document.querySelector('input[name=\"repeat_count\"]').value = this.model.loadTest.loopCount || 0;\n document.querySelector('input[name=\"ramp_up\"]').value = this.model.loadTest.rampUpTime || 0;\n document.querySelector('input[name=\"duration\"]').value = this.model.loadTest.duration || 0;\n }\n }]);\n return LoadTestView;\n}();\nvar LoadTestController = /*#__PURE__*/function () {\n function LoadTestController(contextPath, model) {\n _classCallCheck(this, LoadTestController);\n this.contextPath = contextPath || '/';\n this.model = model;\n this.view = new LoadTestView(this.model, this);\n }\n _createClass(LoadTestController, [{\n key: \"getStartLoadTestUrl\",\n value: function getStartLoadTestUrl() {\n return this.contextPath + 'startLoadTest';\n }\n }, {\n key: \"getStopLoadTestUrl\",\n value: function getStopLoadTestUrl() {\n return this.contextPath + 'stopLoadTest';\n }\n }, {\n key: \"init\",\n value: function init(element) {\n // Initialize the view\n this.view.render(element);\n }\n }, {\n key: \"startTest\",\n value: function startTest() {\n this.updateLoadTest();\n return fetch(this.getStartLoadTestUrl(), {\n method: 'POST',\n body: JSON.stringify(this.model.loadTest),\n headers: {\n 'Content-Type': 'application/json',\n 'X-XSRF-TOKEN': $('meta[name=\"_csrf\"]').attr('content')\n }\n });\n }\n }, {\n key: \"stopTest\",\n value: function stopTest() {\n return fetch(this.getStopLoadTestUrl(), {\n method: 'POST',\n body: JSON.stringify(this.model.loadTest),\n headers: {\n 'Content-Type': 'application/json',\n 'X-XSRF-TOKEN': $('meta[name=\"_csrf\"]').attr('content')\n }\n });\n }\n }, {\n key: \"updateLoadTest\",\n value: function updateLoadTest() {\n this.model.loadTest.scenarioId = document.querySelector('select[name=\"scenarioId\"]').value;\n this.model.loadTest.threadCount = document.querySelector('input[name=\"user_count\"]').value;\n this.model.loadTest.loopCount = document.querySelector('input[name=\"repeat_count\"]').value;\n this.model.loadTest.rampUpTime = document.querySelector('input[name=\"ramp_up\"]').value;\n this.model.loadTest.duration = document.querySelector('input[name=\"duration\"]').value;\n }\n }, {\n key: \"showLoadTest\",\n value: function showLoadTest(loadTest) {\n this.model.loadTest = loadTest;\n this.view.updateView();\n }\n }]);\n return LoadTestController;\n}();\nvar LoadTester = /*#__PURE__*/function () {\n function LoadTester(contextPath, scenarios) {\n _classCallCheck(this, LoadTester);\n this.contextPath = contextPath || '/';\n this.model = new LoadTestModel();\n if (scenarios) {\n this.model.scenarios = scenarios;\n } else {\n this.model.scenarios = [];\n }\n this.controller = new LoadTestController(this.contextPath, this.model);\n }\n _createClass(LoadTester, [{\n key: \"init\",\n value: function init(element) {\n this.controller.init(element);\n this.bindEvents();\n }\n }, {\n key: \"bindEvents\",\n value: function bindEvents() {\n var events = [{\n type: 'click',\n selector: '.start_test',\n action: this.controller.startTest.bind(this.controller)\n }, {\n type: 'click',\n selector: '.stop_test',\n action: this.controller.stopTest.bind(this.controller)\n }];\n for (var _i = 0, _events = events; _i < _events.length; _i++) {\n var event = _events[_i];\n $(document).off(event.type, event.selector).on(event.type, event.selector, event.action);\n }\n console.log('LoadTester.bindEvents() called');\n }\n }, {\n key: \"getLoadTest\",\n value: function getLoadTest() {\n //set current value from input\n this.controller.updateLoadTest();\n return this.model.loadTest;\n }\n }, {\n key: \"openLoadTest\",\n value: function openLoadTest(loadTest) {\n this.controller.showLoadTest(loadTest);\n }\n }]);\n return LoadTester;\n}();\n/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (LoadTester);\n\n//# sourceURL=webpack://APITestManager/./src/components/LoadTester.js?");
/***/ }),
/***/ "./src/components/PropertyTable.js":
/*!*****************************************!*\
!*** ./src/components/PropertyTable.js ***!
\*****************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": () => (__WEBPACK_DEFAULT_EXPORT__)\n/* harmony export */ });\n/* harmony import */ var _EditableInput_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./EditableInput.js */ \"./src/components/EditableInput.js\");\nfunction _typeof(o) { \"@babel/helpers - typeof\"; return _typeof = \"function\" == typeof Symbol && \"symbol\" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && \"function\" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? \"symbol\" : typeof o; }, _typeof(o); }\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\nfunction _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, _toPropertyKey(descriptor.key), descriptor); } }\nfunction _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); Object.defineProperty(Constructor, \"prototype\", { writable: false }); return Constructor; }\nfunction _toPropertyKey(t) { var i = _toPrimitive(t, \"string\"); return \"symbol\" == _typeof(i) ? i : String(i); }\nfunction _toPrimitive(t, r) { if (\"object\" != _typeof(t) || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || \"default\"); if (\"object\" != _typeof(i)) return i; throw new TypeError(\"@@toPrimitive must return a primitive value.\"); } return (\"string\" === r ? String : Number)(t); }\n\nvar PropertyTableModel = /*#__PURE__*/function () {\n function PropertyTableModel() {\n var properties = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : [];\n _classCallCheck(this, PropertyTableModel);\n this.properties = properties;\n }\n _createClass(PropertyTableModel, [{\n key: \"addProperty\",\n value: function addProperty(property) {\n this.properties.push(property);\n }\n }, {\n key: \"removeProperty\",\n value: function removeProperty(index) {\n this.properties.splice(index, 1);\n }\n }, {\n key: \"getProperties\",\n value: function getProperties() {\n return this.properties;\n }\n }, {\n key: \"setProperties\",\n value: function setProperties(newProperties) {\n this.properties = newProperties;\n }\n }]);\n return PropertyTableModel;\n}();\nvar PropertyTableView = /*#__PURE__*/function () {\n function PropertyTableView(model, controller) {\n _classCallCheck(this, PropertyTableView);\n this.model = model;\n this.controller = controller;\n this.modelViewList = [];\n }\n _createClass(PropertyTableView, [{\n key: \"render\",\n value: function render(element) {\n this.element = element;\n this.element.innerHTML = this.generateTableHtml();\n this.attachEventListeners();\n }\n }, {\n key: \"generateTableHtml\",\n value: function generateTableHtml() {\n var _this = this;\n var properties = this.model.getProperties();\n var rowsHtml = properties.map(function (property, index) {\n return _this.generateRowHtml(property, index);\n }).join('');\n return \" \\n \\n # \\n \\uC774\\uB984 \\n \\uAC12 \\n \\n \\n \\n \\n \".concat(rowsHtml, \"\\n \");\n }\n }, {\n key: \"generateRowHtml\",\n value: function generateRowHtml(property, index) {\n // Updated to include placeholders for EditableInput\n return \"\\n \\n \\n \\n \\n \\n \\n \\n \\n \");\n }\n }, {\n key: \"updateUI\",\n value: function updateUI() {\n var _this2 = this;\n // Re-render the table with updated data\n this.element.innerHTML = this.generateTableHtml();\n // Instantiate EditableInput components for each editable cell\n this.element.querySelectorAll('.prop-table-row:not(.prop-table-header)').forEach(function (row, index) {\n var checkbox = row.querySelector('.form-check-input');\n if (checkbox) {\n checkbox.addEventListener('change', function (event) {\n var index = parseInt(event.target.parentElement.parentElement.parentElement.getAttribute('data-index'), 10);\n _this2.controller.updateProperty(index, 'enabled', event.target.checked);\n if (_this2.controller.additionalCallback) {\n _this2.controller.additionalCallback(_this2.model.getProperties());\n }\n });\n }\n _this2.element.querySelectorAll('.editable').forEach(function (editableElement) {\n var index = parseInt(editableElement.parentElement.parentElement.getAttribute('data-index'), 10);\n var editableInput = new _EditableInput_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"]({\n name: editableElement.dataset.name,\n value: editableElement.dataset.value\n });\n editableInput.init(editableElement, function (value) {\n var model = _this2.model.getProperties()[index];\n model[editableElement.dataset.name] = value;\n if (_this2.controller.additionalCallback) {\n _this2.controller.additionalCallback(_this2.model.getProperties());\n }\n });\n });\n });\n this.attachEventListeners();\n }\n }, {\n key: \"attachEventListeners\",\n value: function attachEventListeners() {\n var _this3 = this;\n this.element.querySelectorAll('.remove-property').forEach(function (button) {\n button.addEventListener('click', function (event) {\n console.log(event.target);\n console.log(event.target.getAttribute('data-index'));\n var index = parseInt(event.target.getAttribute('data-index'), 10);\n console.log({\n index: index\n });\n _this3.controller.removeProperty(index);\n });\n });\n var addButton = this.element.querySelector('.add_property');\n if (addButton) {\n addButton.addEventListener('click', function (event) {\n _this3.controller.addProperty();\n });\n } else {\n console.log('Add button not found'); // Check if the button is not found\n }\n }\n }]);\n return PropertyTableView;\n}();\nvar PropertyTableController = /*#__PURE__*/function () {\n function PropertyTableController(model) {\n _classCallCheck(this, PropertyTableController);\n this.model = model;\n this.view = new PropertyTableView(this.model, this);\n }\n _createClass(PropertyTableController, [{\n key: \"init\",\n value: function init(element, callback) {\n this.view.render(element);\n this.additionalCallback = callback;\n }\n }, {\n key: \"addProperty\",\n value: function addProperty() {\n console.log('addProperty');\n // Add a new property to the model\n this.model.addProperty({\n key: '',\n value: ''\n });\n // Update the view to reflect the model changes\n this.view.updateUI();\n }\n }, {\n key: \"removeProperty\",\n value: function removeProperty(index) {\n // Remove the property from the model\n this.model.removeProperty(index);\n // Update the view to reflect the model changes\n this.view.updateUI();\n if (this.additionalCallback) {\n this.additionalCallback(this.model.getProperties());\n }\n }\n }, {\n key: \"updateProperty\",\n value: function updateProperty(index, key, value) {\n // Update a specific property in the model\n var properties = this.model.getProperties();\n if (properties[index]) {\n properties[index][key] = value;\n }\n }\n }, {\n key: \"updateUI\",\n value: function updateUI() {\n this.view.updateUI();\n }\n }]);\n return PropertyTableController;\n}();\nvar PropertyTable = /*#__PURE__*/function () {\n function PropertyTable() {\n var options = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n _classCallCheck(this, PropertyTable);\n this.model = new PropertyTableModel(options.properties || []);\n this.controller = new PropertyTableController(this.model);\n this.propertyName = options.propertyName || '';\n }\n _createClass(PropertyTable, [{\n key: \"init\",\n value: function init(element, callback) {\n // Initialize the controller with the DOM element\n this.controller.init(element, callback);\n this.setProperties(this.model.getProperties());\n }\n }, {\n key: \"getProperties\",\n value: function getProperties() {\n // Delegate to the model\n return this.model.getProperties();\n }\n }, {\n key: \"setProperties\",\n value: function setProperties(newProperties) {\n // Update the model and refresh the view\n this.model.setProperties(newProperties);\n this.controller.updateUI();\n }\n }, {\n key: \"addProperty\",\n value: function addProperty(property) {\n // Delegate to the controller\n this.controller.addProperty(property);\n }\n }, {\n key: \"removeProperty\",\n value: function removeProperty(index) {\n // Delegate to the controller\n this.controller.removeProperty(index);\n }\n\n // Any additional methods as needed\n }]);\n return PropertyTable;\n}();\n/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (PropertyTable);\n\n//# sourceURL=webpack://APITestManager/./src/components/PropertyTable.js?");
/***/ }),
/***/ "./src/components/ServerManager.js":
/*!*****************************************!*\
!*** ./src/components/ServerManager.js ***!
\*****************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": () => (__WEBPACK_DEFAULT_EXPORT__)\n/* harmony export */ });\n/* harmony import */ var _EditableInput__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./EditableInput */ \"./src/components/EditableInput.js\");\n/* harmony import */ var _APIClient__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../APIClient */ \"./src/APIClient.js\");\nfunction _typeof(o) { \"@babel/helpers - typeof\"; return _typeof = \"function\" == typeof Symbol && \"symbol\" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && \"function\" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? \"symbol\" : typeof o; }, _typeof(o); }\nfunction _regeneratorRuntime() { \"use strict\"; /*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/facebook/regenerator/blob/main/LICENSE */ _regeneratorRuntime = function _regeneratorRuntime() { return e; }; var t, e = {}, r = Object.prototype, n = r.hasOwnProperty, o = Object.defineProperty || function (t, e, r) { t[e] = r.value; }, i = \"function\" == typeof Symbol ? Symbol : {}, a = i.iterator || \"@@iterator\", c = i.asyncIterator || \"@@asyncIterator\", u = i.toStringTag || \"@@toStringTag\"; function define(t, e, r) { return Object.defineProperty(t, e, { value: r, enumerable: !0, configurable: !0, writable: !0 }), t[e]; } try { define({}, \"\"); } catch (t) { define = function define(t, e, r) { return t[e] = r; }; } function wrap(t, e, r, n) { var i = e && e.prototype instanceof Generator ? e : Generator, a = Object.create(i.prototype), c = new Context(n || []); return o(a, \"_invoke\", { value: makeInvokeMethod(t, r, c) }), a; } function tryCatch(t, e, r) { try { return { type: \"normal\", arg: t.call(e, r) }; } catch (t) { return { type: \"throw\", arg: t }; } } e.wrap = wrap; var h = \"suspendedStart\", l = \"suspendedYield\", f = \"executing\", s = \"completed\", y = {}; function Generator() {} function GeneratorFunction() {} function GeneratorFunctionPrototype() {} var p = {}; define(p, a, function () { return this; }); var d = Object.getPrototypeOf, v = d && d(d(values([]))); v && v !== r && n.call(v, a) && (p = v); var g = GeneratorFunctionPrototype.prototype = Generator.prototype = Object.create(p); function defineIteratorMethods(t) { [\"next\", \"throw\", \"return\"].forEach(function (e) { define(t, e, function (t) { return this._invoke(e, t); }); }); } function AsyncIterator(t, e) { function invoke(r, o, i, a) { var c = tryCatch(t[r], t, o); if (\"throw\" !== c.type) { var u = c.arg, h = u.value; return h && \"object\" == _typeof(h) && n.call(h, \"__await\") ? e.resolve(h.__await).then(function (t) { invoke(\"next\", t, i, a); }, function (t) { invoke(\"throw\", t, i, a); }) : e.resolve(h).then(function (t) { u.value = t, i(u); }, function (t) { return invoke(\"throw\", t, i, a); }); } a(c.arg); } var r; o(this, \"_invoke\", { value: function value(t, n) { function callInvokeWithMethodAndArg() { return new e(function (e, r) { invoke(t, n, e, r); }); } return r = r ? r.then(callInvokeWithMethodAndArg, callInvokeWithMethodAndArg) : callInvokeWithMethodAndArg(); } }); } function makeInvokeMethod(e, r, n) { var o = h; return function (i, a) { if (o === f) throw new Error(\"Generator is already running\"); if (o === s) { if (\"throw\" === i) throw a; return { value: t, done: !0 }; } for (n.method = i, n.arg = a;;) { var c = n.delegate; if (c) { var u = maybeInvokeDelegate(c, n); if (u) { if (u === y) continue; return u; } } if (\"next\" === n.method) n.sent = n._sent = n.arg;else if (\"throw\" === n.method) { if (o === h) throw o = s, n.arg; n.dispatchException(n.arg); } else \"return\" === n.method && n.abrupt(\"return\", n.arg); o = f; var p = tryCatch(e, r, n); if (\"normal\" === p.type) { if (o = n.done ? s : l, p.arg === y) continue; return { value: p.arg, done: n.done }; } \"throw\" === p.type && (o = s, n.method = \"throw\", n.arg = p.arg); } }; } function maybeInvokeDelegate(e, r) { var n = r.method, o = e.iterator[n]; if (o === t) return r.delegate = null, \"throw\" === n && e.iterator[\"return\"] && (r.method = \"return\", r.arg = t, maybeInvokeDelegate(e, r), \"throw\" === r.method) || \"return\" !== n && (r.method = \"throw\", r.arg = new TypeError(\"The iterator does not provide a '\" + n + \"' method\")), y; var i = tryCatch(o, e.iterator, r.arg); if (\"throw\" === i.type) return r.method = \"throw\", r.arg = i.arg, r.delegate = null, y; var a = i.arg; return a ? a.done ? (r[e.resultName] = a.value, r.next = e.nextLoc, \"return\" !== r.method && (r.method = \"next\", r.arg = t), r.delegate = null, y) : a : (r.method = \"throw\", r.arg = new TypeError(\"iterator result is not an object\"), r.delegate = null, y); } function pushTryEntry(t) { var e = { tryLoc: t[0] }; 1 in t && (e.catchLoc = t[1]), 2 in t && (e.finallyLoc = t[2], e.afterLoc = t[3]), this.tryEntries.push(e); } function resetTryEntry(t) { var e = t.completion || {}; e.type = \"normal\", delete e.arg, t.completion = e; } function Context(t) { this.tryEntries = [{ tryLoc: \"root\" }], t.forEach(pushTryEntry, this), this.reset(!0); } function values(e) { if (e || \"\" === e) { var r = e[a]; if (r) return r.call(e); if (\"function\" == typeof e.next) return e; if (!isNaN(e.length)) { var o = -1, i = function next() { for (; ++o < e.length;) if (n.call(e, o)) return next.value = e[o], next.done = !1, next; return next.value = t, next.done = !0, next; }; return i.next = i; } } throw new TypeError(_typeof(e) + \" is not iterable\"); } return GeneratorFunction.prototype = GeneratorFunctionPrototype, o(g, \"constructor\", { value: GeneratorFunctionPrototype, configurable: !0 }), o(GeneratorFunctionPrototype, \"constructor\", { value: GeneratorFunction, configurable: !0 }), GeneratorFunction.displayName = define(GeneratorFunctionPrototype, u, \"GeneratorFunction\"), e.isGeneratorFunction = function (t) { var e = \"function\" == typeof t && t.constructor; return !!e && (e === GeneratorFunction || \"GeneratorFunction\" === (e.displayName || e.name)); }, e.mark = function (t) { return Object.setPrototypeOf ? Object.setPrototypeOf(t, GeneratorFunctionPrototype) : (t.__proto__ = GeneratorFunctionPrototype, define(t, u, \"GeneratorFunction\")), t.prototype = Object.create(g), t; }, e.awrap = function (t) { return { __await: t }; }, defineIteratorMethods(AsyncIterator.prototype), define(AsyncIterator.prototype, c, function () { return this; }), e.AsyncIterator = AsyncIterator, e.async = function (t, r, n, o, i) { void 0 === i && (i = Promise); var a = new AsyncIterator(wrap(t, r, n, o), i); return e.isGeneratorFunction(r) ? a : a.next().then(function (t) { return t.done ? t.value : a.next(); }); }, defineIteratorMethods(g), define(g, u, \"Generator\"), define(g, a, function () { return this; }), define(g, \"toString\", function () { return \"[object Generator]\"; }), e.keys = function (t) { var e = Object(t), r = []; for (var n in e) r.push(n); return r.reverse(), function next() { for (; r.length;) { var t = r.pop(); if (t in e) return next.value = t, next.done = !1, next; } return next.done = !0, next; }; }, e.values = values, Context.prototype = { constructor: Context, reset: function reset(e) { if (this.prev = 0, this.next = 0, this.sent = this._sent = t, this.done = !1, this.delegate = null, this.method = \"next\", this.arg = t, this.tryEntries.forEach(resetTryEntry), !e) for (var r in this) \"t\" === r.charAt(0) && n.call(this, r) && !isNaN(+r.slice(1)) && (this[r] = t); }, stop: function stop() { this.done = !0; var t = this.tryEntries[0].completion; if (\"throw\" === t.type) throw t.arg; return this.rval; }, dispatchException: function dispatchException(e) { if (this.done) throw e; var r = this; function handle(n, o) { return a.type = \"throw\", a.arg = e, r.next = n, o && (r.method = \"next\", r.arg = t), !!o; } for (var o = this.tryEntries.length - 1; o >= 0; --o) { var i = this.tryEntries[o], a = i.completion; if (\"root\" === i.tryLoc) return handle(\"end\"); if (i.tryLoc <= this.prev) { var c = n.call(i, \"catchLoc\"), u = n.call(i, \"finallyLoc\"); if (c && u) { if (this.prev < i.catchLoc) return handle(i.catchLoc, !0); if (this.prev < i.finallyLoc) return handle(i.finallyLoc); } else if (c) { if (this.prev < i.catchLoc) return handle(i.catchLoc, !0); } else { if (!u) throw new Error(\"try statement without catch or finally\"); if (this.prev < i.finallyLoc) return handle(i.finallyLoc); } } } }, abrupt: function abrupt(t, e) { for (var r = this.tryEntries.length - 1; r >= 0; --r) { var o = this.tryEntries[r]; if (o.tryLoc <= this.prev && n.call(o, \"finallyLoc\") && this.prev < o.finallyLoc) { var i = o; break; } } i && (\"break\" === t || \"continue\" === t) && i.tryLoc <= e && e <= i.finallyLoc && (i = null); var a = i ? i.completion : {}; return a.type = t, a.arg = e, i ? (this.method = \"next\", this.next = i.finallyLoc, y) : this.complete(a); }, complete: function complete(t, e) { if (\"throw\" === t.type) throw t.arg; return \"break\" === t.type || \"continue\" === t.type ? this.next = t.arg : \"return\" === t.type ? (this.rval = this.arg = t.arg, this.method = \"return\", this.next = \"end\") : \"normal\" === t.type && e && (this.next = e), y; }, finish: function finish(t) { for (var e = this.tryEntries.length - 1; e >= 0; --e) { var r = this.tryEntries[e]; if (r.finallyLoc === t) return this.complete(r.completion, r.afterLoc), resetTryEntry(r), y; } }, \"catch\": function _catch(t) { for (var e = this.tryEntries.length - 1; e >= 0; --e) { var r = this.tryEntries[e]; if (r.tryLoc === t) { var n = r.completion; if (\"throw\" === n.type) { var o = n.arg; resetTryEntry(r); } return o; } } throw new Error(\"illegal catch attempt\"); }, delegateYield: function delegateYield(e, r, n) { return this.delegate = { iterator: values(e), resultName: r, nextLoc: n }, \"next\" === this.method && (this.arg = t), y; } }, e; }\nfunction asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) { try { var info = gen[key](arg); var value = info.value; } catch (error) { reject(error); return; } if (info.done) { resolve(value); } else { Promise.resolve(value).then(_next, _throw); } }\nfunction _asyncToGenerator(fn) { return function () { var self = this, args = arguments; return new Promise(function (resolve, reject) { var gen = fn.apply(self, args); function _next(value) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, \"next\", value); } function _throw(err) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, \"throw\", err); } _next(undefined); }); }; }\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\nfunction _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, _toPropertyKey(descriptor.key), descriptor); } }\nfunction _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); Object.defineProperty(Constructor, \"prototype\", { writable: false }); return Constructor; }\nfunction _toPropertyKey(t) { var i = _toPrimitive(t, \"string\"); return \"symbol\" == _typeof(i) ? i : String(i); }\nfunction _toPrimitive(t, r) { if (\"object\" != _typeof(t) || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || \"default\"); if (\"object\" != _typeof(i)) return i; throw new TypeError(\"@@toPrimitive must return a primitive value.\"); } return (\"string\" === r ? String : Number)(t); }\n\n\nvar ServerManager = /*#__PURE__*/function () {\n function ServerManager(servers) {\n _classCallCheck(this, ServerManager);\n this.servers = servers || [];\n this.apiClient = new _APIClient__WEBPACK_IMPORTED_MODULE_1__[\"default\"]();\n }\n _createClass(ServerManager, [{\n key: \"basePath\",\n value: function basePath(serverId) {\n if (serverId === undefined || serverId === null || serverId === '') {\n return '';\n }\n return this.servers.filter(function (server) {\n return server.id == serverId;\n })[0].basePath; // == : 타입 비교 없이 값만 비교\n }\n }, {\n key: \"getServer\",\n value: function getServer(serverId) {\n return this.servers.filter(function (server) {\n return server.id == serverId;\n })[0];\n }\n }, {\n key: \"renderServers\",\n value: function renderServers(selectedServer) {\n var optionsHtml = this.servers.map(function (server) {\n return \" \");\n }).join('');\n return \" \");\n }\n }, {\n key: \"renderTcpServers\",\n value: function renderTcpServers(selectedServer) {\n var optionsHtml = this.servers.filter(function (server) {\n return server.scheme === 'tcp';\n }).map(function (server) {\n return \" \");\n }).join('');\n return \" \");\n }\n }, {\n key: \"getHeader\",\n value: function getHeader(headers, key) {\n if (headers === undefined || headers === null) {\n return '';\n }\n\n // Filter the headers to find the matching key\n var filteredHeaders = headers.filter(function (header) {\n return header.key === key;\n });\n\n // Check if any header was found that matches the key\n if (filteredHeaders.length === 0) {\n console.log('new header');\n var newHeader = {\n key: key,\n value: '',\n enabled: true\n };\n headers.push(newHeader);\n return newHeader;\n }\n // Return the value of the first matching header\n return filteredHeaders[0];\n }\n }, {\n key: \"renderTcpServerOptions\",\n value: function renderTcpServerOptions(target, serverOptions, headers, parent) {\n var _this = this;\n console.log(headers);\n var tableHTML = \"\\n \\n \\n \\n | Option Key | \\n Option Name | \\n Offset | \\n Length | \\n Value | \\n \\n \\n \\n \".concat(serverOptions.map(function (option) {\n return \"\\n \\n | \".concat(option.optionKey, \" | \\n \").concat(option.optionName, \" | \\n \").concat(option.offset, \" | \\n \").concat(option.length, \" | \\n \\n \\n | \\n \\n \");\n }).join(''), \"\\n \\n \\n \");\n var container = document.querySelector(target);\n container.innerHTML += tableHTML;\n container.querySelectorAll('.editable').forEach(function (editableElement) {\n var editableInput = new _EditableInput__WEBPACK_IMPORTED_MODULE_0__[\"default\"]({\n name: editableElement.dataset.name,\n value: editableElement.dataset.value\n });\n editableInput.init(editableElement, function (value) {\n var header = _this.getHeader(headers, editableElement.dataset.name);\n header.value = value;\n console.log({\n value: value\n });\n console.log(header);\n $('span.variable').off('mouseover');\n $('span.variable').off('mouseout');\n document.querySelectorAll('span.variable').forEach(function (element) {\n var text = element.innerText;\n element.addEventListener('mouseover', function () {\n return parent.showPopper(element, text);\n });\n element.addEventListener('mouseout', function () {\n return parent.hidePopper(element);\n });\n });\n });\n });\n }\n }, {\n key: \"renderHttpServers\",\n value: function renderHttpServers(selectedServer) {\n var optionsHtml = this.servers.filter(function (server) {\n return server.scheme !== 'tcp';\n }).map(function (server) {\n return \" \");\n }).join('');\n return \" \");\n }\n }, {\n key: \"fillPadding\",\n value: function () {\n var _fillPadding = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee(apiRequest, value, dataLength) {\n var paddedValue;\n return _regeneratorRuntime().wrap(function _callee$(_context) {\n while (1) switch (_context.prev = _context.next) {\n case 0:\n _context.next = 2;\n return this.apiClient.processPreScriptAndVariables(apiRequest, value);\n case 2:\n paddedValue = _context.sent;\n while (paddedValue.length < dataLength) {\n paddedValue = ' ' + paddedValue; // Prepend a space character to the string\n }\n return _context.abrupt(\"return\", paddedValue);\n case 5:\n case \"end\":\n return _context.stop();\n }\n }, _callee, this);\n }));\n function fillPadding(_x, _x2, _x3) {\n return _fillPadding.apply(this, arguments);\n }\n return fillPadding;\n }()\n }, {\n key: \"renderServerPrefix\",\n value: function () {\n var _renderServerPrefix = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee2(serverOptions, apiRequest) {\n var _this2 = this;\n var message, _loop, i;\n return _regeneratorRuntime().wrap(function _callee2$(_context3) {\n while (1) switch (_context3.prev = _context3.next) {\n case 0:\n message = '';\n _loop = /*#__PURE__*/_regeneratorRuntime().mark(function _loop(i) {\n var value, found;\n return _regeneratorRuntime().wrap(function _loop$(_context2) {\n while (1) switch (_context2.prev = _context2.next) {\n case 0:\n //header 에서 값을 가져와야 함.\n value = '';\n found = apiRequest.headers.filter(function (header) {\n return header.key === serverOptions[i].optionKey;\n });\n if (found.length > 0) {\n value = found[0].value;\n }\n _context2.t0 = message;\n _context2.next = 6;\n return _this2.fillPadding(apiRequest, value, serverOptions[i].length);\n case 6:\n message = _context2.t0 += _context2.sent;\n case 7:\n case \"end\":\n return _context2.stop();\n }\n }, _loop);\n });\n i = 0;\n case 3:\n if (!(i < serverOptions.length)) {\n _context3.next = 8;\n break;\n }\n return _context3.delegateYield(_loop(i), \"t0\", 5);\n case 5:\n i++;\n _context3.next = 3;\n break;\n case 8:\n return _context3.abrupt(\"return\", message);\n case 9:\n case \"end\":\n return _context3.stop();\n }\n }, _callee2);\n }));\n function renderServerPrefix(_x4, _x5) {\n return _renderServerPrefix.apply(this, arguments);\n }\n return renderServerPrefix;\n }()\n }]);\n return ServerManager;\n}();\n/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (ServerManager);\n\n//# sourceURL=webpack://APITestManager/./src/components/ServerManager.js?");
/***/ }),
/***/ "./src/components/TCPClientView.js":
/*!*****************************************!*\
!*** ./src/components/TCPClientView.js ***!
\*****************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": () => (__WEBPACK_DEFAULT_EXPORT__)\n/* harmony export */ });\n/* harmony import */ var _LayoutGrid__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./LayoutGrid */ \"./src/components/LayoutGrid.js\");\n/* harmony import */ var _LayoutTreeGrid__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./LayoutTreeGrid */ \"./src/components/LayoutTreeGrid.js\");\n/* harmony import */ var _LayoutTreeDataGrid__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./LayoutTreeDataGrid */ \"./src/components/LayoutTreeDataGrid.js\");\n/* harmony import */ var monaco_editor__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! monaco-editor */ \"include-loader!./node_modules/monaco-editor/esm/vs/editor/editor.main.js\");\n/* harmony import */ var _ApiLayoutItemTreeBuilder__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./ApiLayoutItemTreeBuilder */ \"./src/components/ApiLayoutItemTreeBuilder.js\");\n/* harmony import */ var _ApiLayoutItemTreeDataBuilder__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./ApiLayoutItemTreeDataBuilder */ \"./src/components/ApiLayoutItemTreeDataBuilder.js\");\nfunction _typeof(o) { \"@babel/helpers - typeof\"; return _typeof = \"function\" == typeof Symbol && \"symbol\" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && \"function\" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? \"symbol\" : typeof o; }, _typeof(o); }\nfunction _regeneratorRuntime() { \"use strict\"; /*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/facebook/regenerator/blob/main/LICENSE */ _regeneratorRuntime = function _regeneratorRuntime() { return e; }; var t, e = {}, r = Object.prototype, n = r.hasOwnProperty, o = Object.defineProperty || function (t, e, r) { t[e] = r.value; }, i = \"function\" == typeof Symbol ? Symbol : {}, a = i.iterator || \"@@iterator\", c = i.asyncIterator || \"@@asyncIterator\", u = i.toStringTag || \"@@toStringTag\"; function define(t, e, r) { return Object.defineProperty(t, e, { value: r, enumerable: !0, configurable: !0, writable: !0 }), t[e]; } try { define({}, \"\"); } catch (t) { define = function define(t, e, r) { return t[e] = r; }; } function wrap(t, e, r, n) { var i = e && e.prototype instanceof Generator ? e : Generator, a = Object.create(i.prototype), c = new Context(n || []); return o(a, \"_invoke\", { value: makeInvokeMethod(t, r, c) }), a; } function tryCatch(t, e, r) { try { return { type: \"normal\", arg: t.call(e, r) }; } catch (t) { return { type: \"throw\", arg: t }; } } e.wrap = wrap; var h = \"suspendedStart\", l = \"suspendedYield\", f = \"executing\", s = \"completed\", y = {}; function Generator() {} function GeneratorFunction() {} function GeneratorFunctionPrototype() {} var p = {}; define(p, a, function () { return this; }); var d = Object.getPrototypeOf, v = d && d(d(values([]))); v && v !== r && n.call(v, a) && (p = v); var g = GeneratorFunctionPrototype.prototype = Generator.prototype = Object.create(p); function defineIteratorMethods(t) { [\"next\", \"throw\", \"return\"].forEach(function (e) { define(t, e, function (t) { return this._invoke(e, t); }); }); } function AsyncIterator(t, e) { function invoke(r, o, i, a) { var c = tryCatch(t[r], t, o); if (\"throw\" !== c.type) { var u = c.arg, h = u.value; return h && \"object\" == _typeof(h) && n.call(h, \"__await\") ? e.resolve(h.__await).then(function (t) { invoke(\"next\", t, i, a); }, function (t) { invoke(\"throw\", t, i, a); }) : e.resolve(h).then(function (t) { u.value = t, i(u); }, function (t) { return invoke(\"throw\", t, i, a); }); } a(c.arg); } var r; o(this, \"_invoke\", { value: function value(t, n) { function callInvokeWithMethodAndArg() { return new e(function (e, r) { invoke(t, n, e, r); }); } return r = r ? r.then(callInvokeWithMethodAndArg, callInvokeWithMethodAndArg) : callInvokeWithMethodAndArg(); } }); } function makeInvokeMethod(e, r, n) { var o = h; return function (i, a) { if (o === f) throw new Error(\"Generator is already running\"); if (o === s) { if (\"throw\" === i) throw a; return { value: t, done: !0 }; } for (n.method = i, n.arg = a;;) { var c = n.delegate; if (c) { var u = maybeInvokeDelegate(c, n); if (u) { if (u === y) continue; return u; } } if (\"next\" === n.method) n.sent = n._sent = n.arg;else if (\"throw\" === n.method) { if (o === h) throw o = s, n.arg; n.dispatchException(n.arg); } else \"return\" === n.method && n.abrupt(\"return\", n.arg); o = f; var p = tryCatch(e, r, n); if (\"normal\" === p.type) { if (o = n.done ? s : l, p.arg === y) continue; return { value: p.arg, done: n.done }; } \"throw\" === p.type && (o = s, n.method = \"throw\", n.arg = p.arg); } }; } function maybeInvokeDelegate(e, r) { var n = r.method, o = e.iterator[n]; if (o === t) return r.delegate = null, \"throw\" === n && e.iterator[\"return\"] && (r.method = \"return\", r.arg = t, maybeInvokeDelegate(e, r), \"throw\" === r.method) || \"return\" !== n && (r.method = \"throw\", r.arg = new TypeError(\"The iterator does not provide a '\" + n + \"' method\")), y; var i = tryCatch(o, e.iterator, r.arg); if (\"throw\" === i.type) return r.method = \"throw\", r.arg = i.arg, r.delegate = null, y; var a = i.arg; return a ? a.done ? (r[e.resultName] = a.value, r.next = e.nextLoc, \"return\" !== r.method && (r.method = \"next\", r.arg = t), r.delegate = null, y) : a : (r.method = \"throw\", r.arg = new TypeError(\"iterator result is not an object\"), r.delegate = null, y); } function pushTryEntry(t) { var e = { tryLoc: t[0] }; 1 in t && (e.catchLoc = t[1]), 2 in t && (e.finallyLoc = t[2], e.afterLoc = t[3]), this.tryEntries.push(e); } function resetTryEntry(t) { var e = t.completion || {}; e.type = \"normal\", delete e.arg, t.completion = e; } function Context(t) { this.tryEntries = [{ tryLoc: \"root\" }], t.forEach(pushTryEntry, this), this.reset(!0); } function values(e) { if (e || \"\" === e) { var r = e[a]; if (r) return r.call(e); if (\"function\" == typeof e.next) return e; if (!isNaN(e.length)) { var o = -1, i = function next() { for (; ++o < e.length;) if (n.call(e, o)) return next.value = e[o], next.done = !1, next; return next.value = t, next.done = !0, next; }; return i.next = i; } } throw new TypeError(_typeof(e) + \" is not iterable\"); } return GeneratorFunction.prototype = GeneratorFunctionPrototype, o(g, \"constructor\", { value: GeneratorFunctionPrototype, configurable: !0 }), o(GeneratorFunctionPrototype, \"constructor\", { value: GeneratorFunction, configurable: !0 }), GeneratorFunction.displayName = define(GeneratorFunctionPrototype, u, \"GeneratorFunction\"), e.isGeneratorFunction = function (t) { var e = \"function\" == typeof t && t.constructor; return !!e && (e === GeneratorFunction || \"GeneratorFunction\" === (e.displayName || e.name)); }, e.mark = function (t) { return Object.setPrototypeOf ? Object.setPrototypeOf(t, GeneratorFunctionPrototype) : (t.__proto__ = GeneratorFunctionPrototype, define(t, u, \"GeneratorFunction\")), t.prototype = Object.create(g), t; }, e.awrap = function (t) { return { __await: t }; }, defineIteratorMethods(AsyncIterator.prototype), define(AsyncIterator.prototype, c, function () { return this; }), e.AsyncIterator = AsyncIterator, e.async = function (t, r, n, o, i) { void 0 === i && (i = Promise); var a = new AsyncIterator(wrap(t, r, n, o), i); return e.isGeneratorFunction(r) ? a : a.next().then(function (t) { return t.done ? t.value : a.next(); }); }, defineIteratorMethods(g), define(g, u, \"Generator\"), define(g, a, function () { return this; }), define(g, \"toString\", function () { return \"[object Generator]\"; }), e.keys = function (t) { var e = Object(t), r = []; for (var n in e) r.push(n); return r.reverse(), function next() { for (; r.length;) { var t = r.pop(); if (t in e) return next.value = t, next.done = !1, next; } return next.done = !0, next; }; }, e.values = values, Context.prototype = { constructor: Context, reset: function reset(e) { if (this.prev = 0, this.next = 0, this.sent = this._sent = t, this.done = !1, this.delegate = null, this.method = \"next\", this.arg = t, this.tryEntries.forEach(resetTryEntry), !e) for (var r in this) \"t\" === r.charAt(0) && n.call(this, r) && !isNaN(+r.slice(1)) && (this[r] = t); }, stop: function stop() { this.done = !0; var t = this.tryEntries[0].completion; if (\"throw\" === t.type) throw t.arg; return this.rval; }, dispatchException: function dispatchException(e) { if (this.done) throw e; var r = this; function handle(n, o) { return a.type = \"throw\", a.arg = e, r.next = n, o && (r.method = \"next\", r.arg = t), !!o; } for (var o = this.tryEntries.length - 1; o >= 0; --o) { var i = this.tryEntries[o], a = i.completion; if (\"root\" === i.tryLoc) return handle(\"end\"); if (i.tryLoc <= this.prev) { var c = n.call(i, \"catchLoc\"), u = n.call(i, \"finallyLoc\"); if (c && u) { if (this.prev < i.catchLoc) return handle(i.catchLoc, !0); if (this.prev < i.finallyLoc) return handle(i.finallyLoc); } else if (c) { if (this.prev < i.catchLoc) return handle(i.catchLoc, !0); } else { if (!u) throw new Error(\"try statement without catch or finally\"); if (this.prev < i.finallyLoc) return handle(i.finallyLoc); } } } }, abrupt: function abrupt(t, e) { for (var r = this.tryEntries.length - 1; r >= 0; --r) { var o = this.tryEntries[r]; if (o.tryLoc <= this.prev && n.call(o, \"finallyLoc\") && this.prev < o.finallyLoc) { var i = o; break; } } i && (\"break\" === t || \"continue\" === t) && i.tryLoc <= e && e <= i.finallyLoc && (i = null); var a = i ? i.completion : {}; return a.type = t, a.arg = e, i ? (this.method = \"next\", this.next = i.finallyLoc, y) : this.complete(a); }, complete: function complete(t, e) { if (\"throw\" === t.type) throw t.arg; return \"break\" === t.type || \"continue\" === t.type ? this.next = t.arg : \"return\" === t.type ? (this.rval = this.arg = t.arg, this.method = \"return\", this.next = \"end\") : \"normal\" === t.type && e && (this.next = e), y; }, finish: function finish(t) { for (var e = this.tryEntries.length - 1; e >= 0; --e) { var r = this.tryEntries[e]; if (r.finallyLoc === t) return this.complete(r.completion, r.afterLoc), resetTryEntry(r), y; } }, \"catch\": function _catch(t) { for (var e = this.tryEntries.length - 1; e >= 0; --e) { var r = this.tryEntries[e]; if (r.tryLoc === t) { var n = r.completion; if (\"throw\" === n.type) { var o = n.arg; resetTryEntry(r); } return o; } } throw new Error(\"illegal catch attempt\"); }, delegateYield: function delegateYield(e, r, n) { return this.delegate = { iterator: values(e), resultName: r, nextLoc: n }, \"next\" === this.method && (this.arg = t), y; } }, e; }\nfunction asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) { try { var info = gen[key](arg); var value = info.value; } catch (error) { reject(error); return; } if (info.done) { resolve(value); } else { Promise.resolve(value).then(_next, _throw); } }\nfunction _asyncToGenerator(fn) { return function () { var self = this, args = arguments; return new Promise(function (resolve, reject) { var gen = fn.apply(self, args); function _next(value) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, \"next\", value); } function _throw(err) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, \"throw\", err); } _next(undefined); }); }; }\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\nfunction _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, _toPropertyKey(descriptor.key), descriptor); } }\nfunction _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); Object.defineProperty(Constructor, \"prototype\", { writable: false }); return Constructor; }\nfunction _toPropertyKey(t) { var i = _toPrimitive(t, \"string\"); return \"symbol\" == _typeof(i) ? i : String(i); }\nfunction _toPrimitive(t, r) { if (\"object\" != _typeof(t) || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || \"default\"); if (\"object\" != _typeof(i)) return i; throw new TypeError(\"@@toPrimitive must return a primitive value.\"); } return (\"string\" === r ? String : Number)(t); }\n\n\n\n\n\n\nvar TCPClientView = /*#__PURE__*/function () {\n function TCPClientView(parent, serverManager, apiRequestTabContent, model, index) {\n _classCallCheck(this, TCPClientView);\n this.parent = parent;\n this.serverManager = serverManager;\n this.apiRequestTabContent = apiRequestTabContent;\n this.model = model;\n this.index = index;\n this.server = this.serverManager.getServer(this.model.server);\n }\n _createClass(TCPClientView, [{\n key: \"init\",\n value: function init() {\n var _this = this;\n console.log('TCPClientView init');\n this.apiRequestTabContent.append(this.tcpApiRequestTemplate(this.model, this.index));\n if (this.server && this.server.headers === undefined) {\n this.server.headers = [];\n }\n if (this.server && this.server.serverOptions) {\n this.serverManager.renderTcpServerOptions('.server_options', this.server.serverOptions, this.model.headers, this.parent);\n }\n var layoutJson = JSON.stringify(this.model.layout, null, 2);\n this.layoutJsonEditor = monaco_editor__WEBPACK_IMPORTED_MODULE_3__.editor.create(this.apiRequestTabContent.find(\"#api_request_\".concat(this.model.id)).find('.layout-json')[0], {\n value: layoutJson,\n language: 'json',\n automaticLayout: true,\n quickSuggestions: false\n });\n var layoutDataTreeOptions = [{\n name: 'loutItemSerno',\n width: 100,\n isFirst: true,\n label: '#'\n }, {\n name: 'loutItemName',\n width: 100,\n align: 'left',\n label: '항목명(영문)'\n }, {\n name: 'loutItemDesc',\n width: 100,\n align: 'left',\n label: '항목설명'\n }, {\n name: 'loutItemDepth',\n width: 60,\n align: 'center',\n label: '깊이'\n }, {\n name: 'loutItemType',\n width: 100,\n align: 'center',\n label: '아이템 유형'\n }, {\n name: 'loutItemOccCnt',\n width: 100,\n align: 'center',\n label: '반복 횟수'\n }, {\n name: 'loutItemOccRef',\n width: 120,\n align: 'center',\n label: '반복 참조 필드'\n }, {\n name: 'loutItemLength',\n width: 100,\n align: 'center',\n label: '데이터 길이'\n }, {\n name: 'value',\n width: 200,\n align: 'left',\n label: '값',\n type: 'textfield'\n }];\n var layoutRoot = _ApiLayoutItemTreeBuilder__WEBPACK_IMPORTED_MODULE_4__[\"default\"].createTree(this.model.layout.layoutItems);\n var replicator = new _ApiLayoutItemTreeDataBuilder__WEBPACK_IMPORTED_MODULE_5__[\"default\"](10000);\n var layoutDataRoot = replicator.createReplicatedTree(layoutRoot);\n var layoutTreeDataGrid = new _LayoutTreeDataGrid__WEBPACK_IMPORTED_MODULE_2__[\"default\"](this.apiRequestTabContent.find(\"#api_request_\".concat(this.model.id)).find('.request_layout_data_tree'), layoutDataRoot, this.model, layoutDataTreeOptions, this.apiRequestTabContent.find(\"#api_request_\".concat(this.model.id)).find('.total_message_length'));\n layoutTreeDataGrid.init( /*#__PURE__*/function () {\n var _ref = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee(finalMessage, layoutDataTree) {\n var prefix;\n return _regeneratorRuntime().wrap(function _callee$(_context) {\n while (1) switch (_context.prev = _context.next) {\n case 0:\n if (!(_this.server && _this.server.serverOptions)) {\n _context.next = 6;\n break;\n }\n _context.next = 3;\n return _this.serverManager.renderServerPrefix(_this.server.serverOptions, _this.model);\n case 3:\n _context.t0 = _context.sent;\n _context.next = 7;\n break;\n case 6:\n _context.t0 = '';\n case 7:\n prefix = _context.t0;\n _this.requestBodyEditor.setValue(prefix + finalMessage);\n _this.model.layout.computedLayoutItemRoot = layoutDataTree;\n $('span.variable').off('mouseover');\n $('span.variable').off('mouseout');\n document.querySelectorAll('span.variable').forEach(function (element) {\n var text = element.innerText;\n element.addEventListener('mouseover', function () {\n return _this.parent.showPopper(element, text);\n });\n element.addEventListener('mouseout', function () {\n return _this.parent.hidePopper(element);\n });\n });\n case 13:\n case \"end\":\n return _context.stop();\n }\n }, _callee);\n }));\n return function (_x, _x2) {\n return _ref.apply(this, arguments);\n };\n }());\n var layoutTreeGrid = new _LayoutTreeGrid__WEBPACK_IMPORTED_MODULE_1__[\"default\"](this.apiRequestTabContent.find(\"#api_request_\".concat(this.model.id)).find('.request_layout_tree'), layoutRoot, layoutDataTreeOptions, function (root) {\n var replicator = new _ApiLayoutItemTreeDataBuilder__WEBPACK_IMPORTED_MODULE_5__[\"default\"](10000);\n var layoutDataRoot = replicator.createReplicatedTree(root);\n layoutTreeDataGrid.rebuild(layoutDataRoot);\n $('span.variable').off('mouseover');\n $('span.variable').off('mouseout');\n document.querySelectorAll('span.variable').forEach(function (element) {\n var text = element.innerText;\n element.addEventListener('mouseover', function () {\n return _this.parent.showPopper(element, text);\n });\n element.addEventListener('mouseout', function () {\n return _this.parent.hidePopper(element);\n });\n });\n });\n var layoutGrid = new _LayoutGrid__WEBPACK_IMPORTED_MODULE_0__[\"default\"](this.apiRequestTabContent.find(\"#api_request_\".concat(this.model.id)).find('.request_layout'), this.model.layout, function (model) {\n model.items.forEach(function (item) {\n item.children = [];\n });\n var updatedRoot = _ApiLayoutItemTreeBuilder__WEBPACK_IMPORTED_MODULE_4__[\"default\"].createTree(model.items);\n layoutTreeGrid.rebuild(updatedRoot, function (root) {\n var replicator = new _ApiLayoutItemTreeDataBuilder__WEBPACK_IMPORTED_MODULE_5__[\"default\"](10000);\n var layoutDataRoot = replicator.createReplicatedTree(root);\n layoutTreeDataGrid.rebuild(layoutDataRoot);\n });\n _this.layoutJsonEditor.setValue(JSON.stringify(_this.model.layout, null, 2));\n $('span.variable').off('mouseover');\n $('span.variable').off('mouseout');\n document.querySelectorAll('span.variable').forEach(function (element) {\n var text = element.innerText;\n element.addEventListener('mouseover', function () {\n return _this.parent.showPopper(element, text);\n });\n element.addEventListener('mouseout', function () {\n return _this.parent.hidePopper(element);\n });\n });\n });\n this.apiRequestTabContent.find(\"#api_request_\".concat(this.model.id)).find('.load_layout').on('click', function () {\n try {\n _this.model.layout = JSON.parse(_this.layoutJsonEditor.getValue());\n _this.model.layout.layoutItems.forEach(function (item) {\n if (item.value === undefined) {\n item.value = '';\n }\n });\n console.log(_this.model);\n layoutGrid.rebuild(_this.model.layout);\n } catch (e) {\n console.error(e);\n alert(e);\n }\n });\n window.addEventListener('resize', this.resizeEditor.bind(this));\n }\n }, {\n key: \"resizeEditor\",\n value: function resizeEditor() {\n this.requestBodyEditor.layout({\n width: 0\n });\n this.requestBodyEditor.layout({});\n this.layoutJsonEditor.layout({\n width: 0\n });\n this.layoutJsonEditor.layout({});\n }\n }, {\n key: \"tcpApiRequestTemplate\",\n value: function tcpApiRequestTemplate(apiRequest, index) {\n console.log('tcpApiRequestTemplate');\n return \"\\n \\n \").concat(apiRequest.collectionName, \" > \").concat(apiRequest.name, \" \\n \\n \\n \").concat(this.serverManager.renderTcpServers(apiRequest.server), \"\\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n - \\n \\n
\\n - \\n \\n
\\n - \\n \\n
\\n - \\n \\n
\\n - \\n \\n
\\n - \\n \\n
\\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\uC804\\uCCB4 \\uBA54\\uC2DC\\uC9C0 \\uAE38\\uC774: \\n \\n \\n \\n \\n \\n \\n Response\\n \\n \\n \\n \\n - \\n \\n
\\n - \\n \\n
\\n \\n \\n \\n \\n \\n \\n \");\n }\n }]);\n return TCPClientView;\n}();\n/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (TCPClientView);\n\n//# sourceURL=webpack://APITestManager/./src/components/TCPClientView.js?");
/***/ }),
/***/ "./src/components/VariableSnippet.js":
/*!*******************************************!*\
!*** ./src/components/VariableSnippet.js ***!
\*******************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": () => (__WEBPACK_DEFAULT_EXPORT__)\n/* harmony export */ });\n/* harmony import */ var monaco_editor__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! monaco-editor */ \"include-loader!./node_modules/monaco-editor/esm/vs/editor/editor.main.js\");\nfunction _typeof(o) { \"@babel/helpers - typeof\"; return _typeof = \"function\" == typeof Symbol && \"symbol\" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && \"function\" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? \"symbol\" : typeof o; }, _typeof(o); }\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\nfunction _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, _toPropertyKey(descriptor.key), descriptor); } }\nfunction _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); Object.defineProperty(Constructor, \"prototype\", { writable: false }); return Constructor; }\nfunction _toPropertyKey(t) { var i = _toPrimitive(t, \"string\"); return \"symbol\" == _typeof(i) ? i : String(i); }\nfunction _toPrimitive(t, r) { if (\"object\" != _typeof(t) || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || \"default\"); if (\"object\" != _typeof(i)) return i; throw new TypeError(\"@@toPrimitive must return a primitive value.\"); } return (\"string\" === r ? String : Number)(t); }\n\nvar commands = [{\n name: 'set_global',\n displayName: 'Set Global Variable',\n text: 'globals[\"key\"] = \"value\";\\n'\n}, {\n name: 'get_global',\n displayName: 'Get Global Variable',\n text: 'const value = globals[\"key\"];\\n'\n}, {\n name: 'set_variable',\n displayName: 'Set Variable',\n text: 'variables[\"key\"] = \"value\";\\n'\n}, {\n name: 'get_variable',\n displayName: 'Get Variable',\n text: 'const value = variables[\"key\"];\\n'\n}, {\n name: 'get_response_body',\n displayName: 'Get Response Body',\n text: 'const body = response.body;\\n'\n}, {\n name: 'parse_response_body',\n displayName: 'Parse Response Body',\n text: 'JSON.parse(response.body);\\n'\n}, {\n name: 'get_response_headers',\n displayName: 'Get Response Header',\n text: 'const header_value = response.headers[\"header-key\"];\\n'\n}];\nvar VariableSnippet = /*#__PURE__*/function () {\n function VariableSnippet() {\n var options = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n _classCallCheck(this, VariableSnippet);\n this.commands = commands || []; // Array of command objects\n }\n _createClass(VariableSnippet, [{\n key: \"init\",\n value: function init(element, editor) {\n this.editor = editor; // Store the editor reference\n this.render(element);\n }\n }, {\n key: \"render\",\n value: function render(element) {\n var _this = this;\n var commandsList = this.commands.map(function (command) {\n return \" \");\n }).join('');\n element.innerHTML = \" \".concat(commandsList, \" \");\n\n // Attach event listeners\n element.querySelectorAll('.command-button').forEach(function (button) {\n button.addEventListener('click', function (event) {\n var commandName = event.target.getAttribute('data-command');\n var command = _this.commands.find(function (cmd) {\n return cmd.name === commandName;\n });\n if (command && _this.editor) {\n _this.appendTextToEditor(command.text);\n }\n });\n });\n }\n }, {\n key: \"appendTextToEditor\",\n value: function appendTextToEditor(text) {\n var model = this.editor.getModel();\n var position = this.editor.getPosition();\n this.editor.executeEdits('', [{\n range: new monaco_editor__WEBPACK_IMPORTED_MODULE_0__.Range(position.lineNumber, position.column, position.lineNumber, position.column),\n text: text,\n forceMoveMarkers: true\n }]);\n this.editor.focus();\n }\n }]);\n return VariableSnippet;\n}();\n/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (VariableSnippet);\n\n// Usage:\n//const snippet = new VariableSnippet();\n//snippet.init(document.getElementById('snippet-container'), editor);\n\n//# sourceURL=webpack://APITestManager/./src/components/VariableSnippet.js?");
/***/ }),
/***/ "./src/index.js":
/*!**********************!*\
!*** ./src/index.js ***!
\**********************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": () => (/* binding */ APITestManager)\n/* harmony export */ });\n/* harmony import */ var _APITester__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./APITester */ \"./src/APITester.js\");\n/* harmony import */ var _APIScenario__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./APIScenario */ \"./src/APIScenario.js\");\n/* harmony import */ var _LoadTestManager__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./LoadTestManager */ \"./src/LoadTestManager.js\");\nfunction _typeof(o) { \"@babel/helpers - typeof\"; return _typeof = \"function\" == typeof Symbol && \"symbol\" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && \"function\" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? \"symbol\" : typeof o; }, _typeof(o); }\nfunction _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, _toPropertyKey(descriptor.key), descriptor); } }\nfunction _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); Object.defineProperty(Constructor, \"prototype\", { writable: false }); return Constructor; }\nfunction _toPropertyKey(t) { var i = _toPrimitive(t, \"string\"); return \"symbol\" == _typeof(i) ? i : String(i); }\nfunction _toPrimitive(t, r) { if (\"object\" != _typeof(t) || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || \"default\"); if (\"object\" != _typeof(i)) return i; throw new TypeError(\"@@toPrimitive must return a primitive value.\"); } return (\"string\" === r ? String : Number)(t); }\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\n\n\nwindow.MonacoEnvironment = {\n getWorkerUrl: function getWorkerUrl(moduleId, label) {\n var contextPath = document.querySelector('meta[name=\"context-path\"]').getAttribute('content');\n if (!contextPath) {\n contextPath = '/';\n }\n if (!contextPath.endsWith('/')) {\n contextPath += '/';\n }\n if (label === 'json') {\n return contextPath + 'plugins/apitestmanager/json.worker.bundle.js';\n }\n if (label === 'css' || label === 'scss' || label === 'less') {\n return contextPath + 'plugins/apitestmanager/css.worker.bundle.js';\n }\n if (label === 'html' || label === 'handlebars' || label === 'razor') {\n return contextPath + 'plugins/apitestmanager/html.worker.bundle.js';\n }\n if (label === 'typescript' || label === 'javascript') {\n return contextPath + 'plugins/apitestmanager/ts.worker.bundle.js';\n }\n return contextPath + 'plugins/apitestmanager/editor.worker.bundle.js';\n }\n};\nvar APITestManager = /*#__PURE__*/_createClass(function APITestManager() {\n var options = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n _classCallCheck(this, APITestManager);\n if (options.type === undefined) {\n options.type = 'api';\n }\n if (options.type === 'api') {\n this.apiTester = new _APITester__WEBPACK_IMPORTED_MODULE_0__[\"default\"](options.contextPath);\n this.apiTester.init(options.servers);\n this.apiScenario = new _APIScenario__WEBPACK_IMPORTED_MODULE_1__[\"default\"](this.apiTester, options.contextPath);\n this.apiScenario.init();\n } else if (options.type === 'load') {\n this.loadTesterManager = new _LoadTestManager__WEBPACK_IMPORTED_MODULE_2__[\"default\"](options.contextPath);\n this.loadTesterManager.init();\n }\n});\n\n\n//# sourceURL=webpack://APITestManager/./src/index.js?");
/***/ }),
/***/ "./node_modules/css-loader/dist/cjs.js!./node_modules/monaco-editor/esm/vs/base/browser/ui/actionbar/actionbar.css":
/*!*************************************************************************************************************************!*\
!*** ./node_modules/css-loader/dist/cjs.js!./node_modules/monaco-editor/esm/vs/base/browser/ui/actionbar/actionbar.css ***!
\*************************************************************************************************************************/
/***/ ((module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": () => (__WEBPACK_DEFAULT_EXPORT__)\n/* harmony export */ });\n/* harmony import */ var _css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../../../../../css-loader/dist/runtime/noSourceMaps.js */ \"./node_modules/css-loader/dist/runtime/noSourceMaps.js\");\n/* harmony import */ var _css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var _css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../../../../css-loader/dist/runtime/api.js */ \"./node_modules/css-loader/dist/runtime/api.js\");\n/* harmony import */ var _css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__);\n// Imports\n\n\nvar ___CSS_LOADER_EXPORT___ = _css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default()((_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default()));\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, `/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n.monaco-action-bar {\n\twhite-space: nowrap;\n\theight: 100%;\n}\n\n.monaco-action-bar .actions-container {\n\tdisplay: flex;\n\tmargin: 0 auto;\n\tpadding: 0;\n\theight: 100%;\n\twidth: 100%;\n\talign-items: center;\n}\n\n.monaco-action-bar.vertical .actions-container {\n\tdisplay: inline-block;\n}\n\n.monaco-action-bar .action-item {\n\tdisplay: block;\n\talign-items: center;\n\tjustify-content: center;\n\tcursor: pointer;\n\tposition: relative; /* DO NOT REMOVE - this is the key to preventing the ghosting icon bug in Chrome 42 */\n}\n\n.monaco-action-bar .action-item.disabled {\n\tcursor: default;\n}\n\n.monaco-action-bar .action-item .icon,\n.monaco-action-bar .action-item .codicon {\n\tdisplay: block;\n}\n\n.monaco-action-bar .action-item .codicon {\n\tdisplay: flex;\n\talign-items: center;\n\twidth: 16px;\n\theight: 16px;\n}\n\n.monaco-action-bar .action-label {\n\tdisplay: flex;\n\tfont-size: 11px;\n\tpadding: 3px;\n\tborder-radius: 5px;\n}\n\n.monaco-action-bar .action-item.disabled .action-label,\n.monaco-action-bar .action-item.disabled .action-label::before,\n.monaco-action-bar .action-item.disabled .action-label:hover {\n\tcolor: var(--vscode-disabledForeground);\n}\n\n/* Vertical actions */\n\n.monaco-action-bar.vertical {\n\ttext-align: left;\n}\n\n.monaco-action-bar.vertical .action-item {\n\tdisplay: block;\n}\n\n.monaco-action-bar.vertical .action-label.separator {\n\tdisplay: block;\n\tborder-bottom: 1px solid #bbb;\n\tpadding-top: 1px;\n\tmargin-left: .8em;\n\tmargin-right: .8em;\n}\n\n.monaco-action-bar .action-item .action-label.separator {\n\twidth: 1px;\n\theight: 16px;\n\tmargin: 5px 4px !important;\n\tcursor: default;\n\tmin-width: 1px;\n\tpadding: 0;\n\tbackground-color: #bbb;\n}\n\n.secondary-actions .monaco-action-bar .action-label {\n\tmargin-left: 6px;\n}\n\n/* Action Items */\n.monaco-action-bar .action-item.select-container {\n\toverflow: hidden; /* somehow the dropdown overflows its container, we prevent it here to not push */\n\tflex: 1;\n\tmax-width: 170px;\n\tmin-width: 60px;\n\tdisplay: flex;\n\talign-items: center;\n\tjustify-content: center;\n\tmargin-right: 10px;\n}\n\n.monaco-action-bar .action-item.action-dropdown-item {\n\tdisplay: flex;\n}\n\n.monaco-action-bar .action-item.action-dropdown-item > .action-dropdown-item-separator {\n\tdisplay: flex;\n\talign-items: center;\n\tcursor: default;\n}\n\n.monaco-action-bar .action-item.action-dropdown-item > .action-dropdown-item-separator > div {\n\twidth: 1px;\n}\n`, \"\"]);\n// Exports\n/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (___CSS_LOADER_EXPORT___);\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/base/browser/ui/actionbar/actionbar.css?./node_modules/css-loader/dist/cjs.js");
/***/ }),
/***/ "./node_modules/css-loader/dist/cjs.js!./node_modules/monaco-editor/esm/vs/base/browser/ui/aria/aria.css":
/*!***************************************************************************************************************!*\
!*** ./node_modules/css-loader/dist/cjs.js!./node_modules/monaco-editor/esm/vs/base/browser/ui/aria/aria.css ***!
\***************************************************************************************************************/
/***/ ((module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": () => (__WEBPACK_DEFAULT_EXPORT__)\n/* harmony export */ });\n/* harmony import */ var _css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../../../../../css-loader/dist/runtime/noSourceMaps.js */ \"./node_modules/css-loader/dist/runtime/noSourceMaps.js\");\n/* harmony import */ var _css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var _css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../../../../css-loader/dist/runtime/api.js */ \"./node_modules/css-loader/dist/runtime/api.js\");\n/* harmony import */ var _css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__);\n// Imports\n\n\nvar ___CSS_LOADER_EXPORT___ = _css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default()((_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default()));\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, `/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n.monaco-aria-container {\n\tposition: absolute; /* try to hide from window but not from screen readers */\n\tleft:-999em;\n}`, \"\"]);\n// Exports\n/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (___CSS_LOADER_EXPORT___);\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/base/browser/ui/aria/aria.css?./node_modules/css-loader/dist/cjs.js");
/***/ }),
/***/ "./node_modules/css-loader/dist/cjs.js!./node_modules/monaco-editor/esm/vs/base/browser/ui/button/button.css":
/*!*******************************************************************************************************************!*\
!*** ./node_modules/css-loader/dist/cjs.js!./node_modules/monaco-editor/esm/vs/base/browser/ui/button/button.css ***!
\*******************************************************************************************************************/
/***/ ((module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": () => (__WEBPACK_DEFAULT_EXPORT__)\n/* harmony export */ });\n/* harmony import */ var _css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../../../../../css-loader/dist/runtime/noSourceMaps.js */ \"./node_modules/css-loader/dist/runtime/noSourceMaps.js\");\n/* harmony import */ var _css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var _css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../../../../css-loader/dist/runtime/api.js */ \"./node_modules/css-loader/dist/runtime/api.js\");\n/* harmony import */ var _css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__);\n// Imports\n\n\nvar ___CSS_LOADER_EXPORT___ = _css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default()((_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default()));\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, `/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n.monaco-text-button {\n\tbox-sizing: border-box;\n\tdisplay: flex;\n\twidth: 100%;\n\tpadding: 4px;\n\tborder-radius: 2px;\n\ttext-align: center;\n\tcursor: pointer;\n\tjustify-content: center;\n\talign-items: center;\n\tborder: 1px solid var(--vscode-button-border, transparent);\n\tline-height: 18px;\n}\n\n.monaco-text-button:focus {\n\toutline-offset: 2px !important;\n}\n\n.monaco-text-button:hover {\n\ttext-decoration: none !important;\n}\n\n.monaco-button.disabled:focus,\n.monaco-button.disabled {\n\topacity: 0.4 !important;\n\tcursor: default;\n}\n\n.monaco-text-button .codicon {\n\tmargin: 0 0.2em;\n\tcolor: inherit !important;\n}\n\n.monaco-text-button.monaco-text-button-with-short-label {\n\tflex-direction: row;\n\tflex-wrap: wrap;\n\tpadding: 0 4px;\n\toverflow: hidden;\n\theight: 28px;\n}\n\n.monaco-text-button.monaco-text-button-with-short-label > .monaco-button-label {\n\tflex-basis: 100%;\n}\n\n.monaco-text-button.monaco-text-button-with-short-label > .monaco-button-label-short {\n\tflex-grow: 1;\n\twidth: 0;\n\toverflow: hidden;\n}\n\n.monaco-text-button.monaco-text-button-with-short-label > .monaco-button-label,\n.monaco-text-button.monaco-text-button-with-short-label > .monaco-button-label-short {\n\tdisplay: flex;\n\tjustify-content: center;\n\talign-items: center;\n\tfont-weight: normal;\n\tfont-style: inherit;\n\tpadding: 4px 0;\n}\n\n.monaco-button-dropdown {\n\tdisplay: flex;\n\tcursor: pointer;\n}\n\n.monaco-button-dropdown.disabled {\n\tcursor: default;\n}\n\n.monaco-button-dropdown > .monaco-button:focus {\n\toutline-offset: -1px !important;\n}\n\n.monaco-button-dropdown.disabled > .monaco-button.disabled,\n.monaco-button-dropdown.disabled > .monaco-button.disabled:focus,\n.monaco-button-dropdown.disabled > .monaco-button-dropdown-separator {\n\topacity: 0.4 !important;\n}\n\n.monaco-button-dropdown > .monaco-button.monaco-text-button {\n\tborder-right-width: 0 !important;\n}\n\n.monaco-button-dropdown .monaco-button-dropdown-separator {\n\tpadding: 4px 0;\n\tcursor: default;\n}\n\n.monaco-button-dropdown .monaco-button-dropdown-separator > div {\n\theight: 100%;\n\twidth: 1px;\n}\n\n.monaco-button-dropdown > .monaco-button.monaco-dropdown-button {\n\tborder: 1px solid var(--vscode-button-border, transparent);\n\tborder-left-width: 0 !important;\n\tborder-radius: 0 2px 2px 0;\n\tdisplay: flex;\n\talign-items: center;\n}\n\n.monaco-button-dropdown > .monaco-button.monaco-text-button {\n\tborder-radius: 2px 0 0 2px;\n}\n\n.monaco-description-button {\n\tdisplay: flex;\n\tflex-direction: column;\n\talign-items: center;\n\tmargin: 4px 5px; /* allows button focus outline to be visible */\n}\n\n.monaco-description-button .monaco-button-description {\n\tfont-style: italic;\n\tfont-size: 11px;\n\tpadding: 4px 20px;\n}\n\n.monaco-description-button .monaco-button-label,\n.monaco-description-button .monaco-button-description {\n\tdisplay: flex;\n\tjustify-content: center;\n\talign-items: center;\n}\n\n.monaco-description-button .monaco-button-label > .codicon,\n.monaco-description-button .monaco-button-description > .codicon {\n\tmargin: 0 0.2em;\n\tcolor: inherit !important;\n}\n\n/* default color styles - based on CSS variables */\n\n.monaco-button.default-colors,\n.monaco-button-dropdown.default-colors > .monaco-button{\n\tcolor: var(--vscode-button-foreground);\n\tbackground-color: var(--vscode-button-background);\n}\n\n.monaco-button.default-colors:hover,\n.monaco-button-dropdown.default-colors > .monaco-button:hover {\n\tbackground-color: var(--vscode-button-hoverBackground);\n}\n\n.monaco-button.default-colors.secondary,\n.monaco-button-dropdown.default-colors > .monaco-button.secondary {\n\tcolor: var(--vscode-button-secondaryForeground);\n\tbackground-color: var(--vscode-button-secondaryBackground);\n}\n\n.monaco-button.default-colors.secondary:hover,\n.monaco-button-dropdown.default-colors > .monaco-button.secondary:hover {\n\tbackground-color: var(--vscode-button-secondaryHoverBackground);\n}\n\n.monaco-button-dropdown.default-colors .monaco-button-dropdown-separator {\n\tbackground-color: var(--vscode-button-background);\n\tborder-top: 1px solid var(--vscode-button-border);\n\tborder-bottom: 1px solid var(--vscode-button-border);\n}\n\n.monaco-button-dropdown.default-colors .monaco-button.secondary + .monaco-button-dropdown-separator {\n\tbackground-color: var(--vscode-button-secondaryBackground);\n}\n\n.monaco-button-dropdown.default-colors .monaco-button-dropdown-separator > div {\n\tbackground-color: var(--vscode-button-separator);\n}\n`, \"\"]);\n// Exports\n/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (___CSS_LOADER_EXPORT___);\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/base/browser/ui/button/button.css?./node_modules/css-loader/dist/cjs.js");
/***/ }),
/***/ "./node_modules/css-loader/dist/cjs.js!./node_modules/monaco-editor/esm/vs/base/browser/ui/codicons/codicon/codicon-modifiers.css":
/*!****************************************************************************************************************************************!*\
!*** ./node_modules/css-loader/dist/cjs.js!./node_modules/monaco-editor/esm/vs/base/browser/ui/codicons/codicon/codicon-modifiers.css ***!
\****************************************************************************************************************************************/
/***/ ((module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": () => (__WEBPACK_DEFAULT_EXPORT__)\n/* harmony export */ });\n/* harmony import */ var _css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../../../../../../css-loader/dist/runtime/noSourceMaps.js */ \"./node_modules/css-loader/dist/runtime/noSourceMaps.js\");\n/* harmony import */ var _css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var _css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../../../../../css-loader/dist/runtime/api.js */ \"./node_modules/css-loader/dist/runtime/api.js\");\n/* harmony import */ var _css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__);\n// Imports\n\n\nvar ___CSS_LOADER_EXPORT___ = _css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default()((_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default()));\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, `/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n.codicon-wrench-subaction {\n\topacity: 0.5;\n}\n\n@keyframes codicon-spin {\n\t100% {\n\t\ttransform:rotate(360deg);\n\t}\n}\n\n.codicon-sync.codicon-modifier-spin,\n.codicon-loading.codicon-modifier-spin,\n.codicon-gear.codicon-modifier-spin,\n.codicon-notebook-state-executing.codicon-modifier-spin {\n\t/* Use steps to throttle FPS to reduce CPU usage */\n\tanimation: codicon-spin 1.5s steps(30) infinite;\n}\n\n.codicon-modifier-disabled {\n\topacity: 0.4;\n}\n\n/* custom speed & easing for loading icon */\n.codicon-loading,\n.codicon-tree-item-loading::before {\n\tanimation-duration: 1s !important;\n\tanimation-timing-function: cubic-bezier(0.53, 0.21, 0.29, 0.67) !important;\n}\n`, \"\"]);\n// Exports\n/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (___CSS_LOADER_EXPORT___);\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/base/browser/ui/codicons/codicon/codicon-modifiers.css?./node_modules/css-loader/dist/cjs.js");
/***/ }),
/***/ "./node_modules/css-loader/dist/cjs.js!./node_modules/monaco-editor/esm/vs/base/browser/ui/codicons/codicon/codicon.css":
/*!******************************************************************************************************************************!*\
!*** ./node_modules/css-loader/dist/cjs.js!./node_modules/monaco-editor/esm/vs/base/browser/ui/codicons/codicon/codicon.css ***!
\******************************************************************************************************************************/
/***/ ((module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": () => (__WEBPACK_DEFAULT_EXPORT__)\n/* harmony export */ });\n/* harmony import */ var _css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../../../../../../css-loader/dist/runtime/noSourceMaps.js */ \"./node_modules/css-loader/dist/runtime/noSourceMaps.js\");\n/* harmony import */ var _css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var _css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../../../../../css-loader/dist/runtime/api.js */ \"./node_modules/css-loader/dist/runtime/api.js\");\n/* harmony import */ var _css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__);\n/* harmony import */ var _css_loader_dist_runtime_getUrl_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../../../../../../css-loader/dist/runtime/getUrl.js */ \"./node_modules/css-loader/dist/runtime/getUrl.js\");\n/* harmony import */ var _css_loader_dist_runtime_getUrl_js__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(_css_loader_dist_runtime_getUrl_js__WEBPACK_IMPORTED_MODULE_2__);\n// Imports\n\n\n\nvar ___CSS_LOADER_URL_IMPORT_0___ = new URL(/* asset import */ __webpack_require__(/*! ./codicon.ttf */ \"./node_modules/monaco-editor/esm/vs/base/browser/ui/codicons/codicon/codicon.ttf\"), __webpack_require__.b);\nvar ___CSS_LOADER_EXPORT___ = _css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default()((_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default()));\nvar ___CSS_LOADER_URL_REPLACEMENT_0___ = _css_loader_dist_runtime_getUrl_js__WEBPACK_IMPORTED_MODULE_2___default()(___CSS_LOADER_URL_IMPORT_0___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, `/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n@font-face {\n\tfont-family: \"codicon\";\n\tfont-display: block;\n\tsrc: url(${___CSS_LOADER_URL_REPLACEMENT_0___}) format(\"truetype\");\n}\n\n.codicon[class*='codicon-'] {\n\tfont: normal normal normal 16px/1 codicon;\n\tdisplay: inline-block;\n\ttext-decoration: none;\n\ttext-rendering: auto;\n\ttext-align: center;\n\ttext-transform: none;\n\t-webkit-font-smoothing: antialiased;\n\t-moz-osx-font-smoothing: grayscale;\n\tuser-select: none;\n\t-webkit-user-select: none;\n}\n\n/* icon rules are dynamically created by the platform theme service (see iconsStyleSheet.ts) */\n`, \"\"]);\n// Exports\n/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (___CSS_LOADER_EXPORT___);\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/base/browser/ui/codicons/codicon/codicon.css?./node_modules/css-loader/dist/cjs.js");
/***/ }),
/***/ "./node_modules/css-loader/dist/cjs.js!./node_modules/monaco-editor/esm/vs/base/browser/ui/contextview/contextview.css":
/*!*****************************************************************************************************************************!*\
!*** ./node_modules/css-loader/dist/cjs.js!./node_modules/monaco-editor/esm/vs/base/browser/ui/contextview/contextview.css ***!
\*****************************************************************************************************************************/
/***/ ((module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": () => (__WEBPACK_DEFAULT_EXPORT__)\n/* harmony export */ });\n/* harmony import */ var _css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../../../../../css-loader/dist/runtime/noSourceMaps.js */ \"./node_modules/css-loader/dist/runtime/noSourceMaps.js\");\n/* harmony import */ var _css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var _css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../../../../css-loader/dist/runtime/api.js */ \"./node_modules/css-loader/dist/runtime/api.js\");\n/* harmony import */ var _css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__);\n// Imports\n\n\nvar ___CSS_LOADER_EXPORT___ = _css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default()((_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default()));\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, `/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n.context-view {\n\tposition: absolute;\n}\n\n.context-view.fixed {\n\tall: initial;\n\tfont-family: inherit;\n\tfont-size: 13px;\n\tposition: fixed;\n\tcolor: inherit;\n}\n`, \"\"]);\n// Exports\n/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (___CSS_LOADER_EXPORT___);\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/base/browser/ui/contextview/contextview.css?./node_modules/css-loader/dist/cjs.js");
/***/ }),
/***/ "./node_modules/css-loader/dist/cjs.js!./node_modules/monaco-editor/esm/vs/base/browser/ui/countBadge/countBadge.css":
/*!***************************************************************************************************************************!*\
!*** ./node_modules/css-loader/dist/cjs.js!./node_modules/monaco-editor/esm/vs/base/browser/ui/countBadge/countBadge.css ***!
\***************************************************************************************************************************/
/***/ ((module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": () => (__WEBPACK_DEFAULT_EXPORT__)\n/* harmony export */ });\n/* harmony import */ var _css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../../../../../css-loader/dist/runtime/noSourceMaps.js */ \"./node_modules/css-loader/dist/runtime/noSourceMaps.js\");\n/* harmony import */ var _css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var _css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../../../../css-loader/dist/runtime/api.js */ \"./node_modules/css-loader/dist/runtime/api.js\");\n/* harmony import */ var _css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__);\n// Imports\n\n\nvar ___CSS_LOADER_EXPORT___ = _css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default()((_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default()));\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, `/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n.monaco-count-badge {\n\tpadding: 3px 6px;\n\tborder-radius: 11px;\n\tfont-size: 11px;\n\tmin-width: 18px;\n\tmin-height: 18px;\n\tline-height: 11px;\n\tfont-weight: normal;\n\ttext-align: center;\n\tdisplay: inline-block;\n\tbox-sizing: border-box;\n}\n\n.monaco-count-badge.long {\n\tpadding: 2px 3px;\n\tborder-radius: 2px;\n\tmin-height: auto;\n\tline-height: normal;\n}\n`, \"\"]);\n// Exports\n/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (___CSS_LOADER_EXPORT___);\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/base/browser/ui/countBadge/countBadge.css?./node_modules/css-loader/dist/cjs.js");
/***/ }),
/***/ "./node_modules/css-loader/dist/cjs.js!./node_modules/monaco-editor/esm/vs/base/browser/ui/dropdown/dropdown.css":
/*!***********************************************************************************************************************!*\
!*** ./node_modules/css-loader/dist/cjs.js!./node_modules/monaco-editor/esm/vs/base/browser/ui/dropdown/dropdown.css ***!
\***********************************************************************************************************************/
/***/ ((module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": () => (__WEBPACK_DEFAULT_EXPORT__)\n/* harmony export */ });\n/* harmony import */ var _css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../../../../../css-loader/dist/runtime/noSourceMaps.js */ \"./node_modules/css-loader/dist/runtime/noSourceMaps.js\");\n/* harmony import */ var _css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var _css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../../../../css-loader/dist/runtime/api.js */ \"./node_modules/css-loader/dist/runtime/api.js\");\n/* harmony import */ var _css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__);\n// Imports\n\n\nvar ___CSS_LOADER_EXPORT___ = _css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default()((_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default()));\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, `/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n.monaco-dropdown {\n\theight: 100%;\n\tpadding: 0;\n}\n\n.monaco-dropdown > .dropdown-label {\n\tcursor: pointer;\n\theight: 100%;\n\tdisplay: flex;\n\talign-items: center;\n\tjustify-content: center;\n}\n\n.monaco-dropdown > .dropdown-label > .action-label.disabled {\n\tcursor: default;\n}\n\n.monaco-dropdown-with-primary {\n\tdisplay: flex !important;\n\tflex-direction: row;\n\tborder-radius: 5px;\n}\n\n.monaco-dropdown-with-primary > .action-container > .action-label {\n\tmargin-right: 0;\n}\n\n.monaco-dropdown-with-primary > .dropdown-action-container > .monaco-dropdown > .dropdown-label .codicon[class*='codicon-'] {\n\tfont-size: 12px;\n\tpadding-left: 0px;\n\tpadding-right: 0px;\n\tline-height: 16px;\n\tmargin-left: -3px;\n}\n\n.monaco-dropdown-with-primary > .dropdown-action-container > .monaco-dropdown > .dropdown-label > .action-label {\n\tdisplay: block;\n\tbackground-size: 16px;\n\tbackground-position: center center;\n\tbackground-repeat: no-repeat;\n}\n`, \"\"]);\n// Exports\n/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (___CSS_LOADER_EXPORT___);\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/base/browser/ui/dropdown/dropdown.css?./node_modules/css-loader/dist/cjs.js");
/***/ }),
/***/ "./node_modules/css-loader/dist/cjs.js!./node_modules/monaco-editor/esm/vs/base/browser/ui/findinput/findInput.css":
/*!*************************************************************************************************************************!*\
!*** ./node_modules/css-loader/dist/cjs.js!./node_modules/monaco-editor/esm/vs/base/browser/ui/findinput/findInput.css ***!
\*************************************************************************************************************************/
/***/ ((module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": () => (__WEBPACK_DEFAULT_EXPORT__)\n/* harmony export */ });\n/* harmony import */ var _css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../../../../../css-loader/dist/runtime/noSourceMaps.js */ \"./node_modules/css-loader/dist/runtime/noSourceMaps.js\");\n/* harmony import */ var _css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var _css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../../../../css-loader/dist/runtime/api.js */ \"./node_modules/css-loader/dist/runtime/api.js\");\n/* harmony import */ var _css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__);\n// Imports\n\n\nvar ___CSS_LOADER_EXPORT___ = _css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default()((_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default()));\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, `/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n/* ---------- Find input ---------- */\n\n.monaco-findInput {\n\tposition: relative;\n}\n\n.monaco-findInput .monaco-inputbox {\n\tfont-size: 13px;\n\twidth: 100%;\n}\n\n.monaco-findInput > .controls {\n\tposition: absolute;\n\ttop: 3px;\n\tright: 2px;\n}\n\n.vs .monaco-findInput.disabled {\n\tbackground-color: #E1E1E1;\n}\n\n/* Theming */\n.vs-dark .monaco-findInput.disabled {\n\tbackground-color: #333;\n}\n\n/* Highlighting */\n.monaco-findInput.highlight-0 .controls,\n.hc-light .monaco-findInput.highlight-0 .controls {\n\tanimation: monaco-findInput-highlight-0 100ms linear 0s;\n}\n\n.monaco-findInput.highlight-1 .controls,\n.hc-light .monaco-findInput.highlight-1 .controls {\n\tanimation: monaco-findInput-highlight-1 100ms linear 0s;\n}\n\n.hc-black .monaco-findInput.highlight-0 .controls,\n.vs-dark .monaco-findInput.highlight-0 .controls {\n\tanimation: monaco-findInput-highlight-dark-0 100ms linear 0s;\n}\n\n.hc-black .monaco-findInput.highlight-1 .controls,\n.vs-dark .monaco-findInput.highlight-1 .controls {\n\tanimation: monaco-findInput-highlight-dark-1 100ms linear 0s;\n}\n\n@keyframes monaco-findInput-highlight-0 {\n\t0% { background: rgba(253, 255, 0, 0.8); }\n\t100% { background: transparent; }\n}\n@keyframes monaco-findInput-highlight-1 {\n\t0% { background: rgba(253, 255, 0, 0.8); }\n\t/* Made intentionally different such that the CSS minifier does not collapse the two animations into a single one*/\n\t99% { background: transparent; }\n}\n\n@keyframes monaco-findInput-highlight-dark-0 {\n\t0% { background: rgba(255, 255, 255, 0.44); }\n\t100% { background: transparent; }\n}\n@keyframes monaco-findInput-highlight-dark-1 {\n\t0% { background: rgba(255, 255, 255, 0.44); }\n\t/* Made intentionally different such that the CSS minifier does not collapse the two animations into a single one*/\n\t99% { background: transparent; }\n}\n`, \"\"]);\n// Exports\n/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (___CSS_LOADER_EXPORT___);\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/base/browser/ui/findinput/findInput.css?./node_modules/css-loader/dist/cjs.js");
/***/ }),
/***/ "./node_modules/css-loader/dist/cjs.js!./node_modules/monaco-editor/esm/vs/base/browser/ui/hover/hover.css":
/*!*****************************************************************************************************************!*\
!*** ./node_modules/css-loader/dist/cjs.js!./node_modules/monaco-editor/esm/vs/base/browser/ui/hover/hover.css ***!
\*****************************************************************************************************************/
/***/ ((module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": () => (__WEBPACK_DEFAULT_EXPORT__)\n/* harmony export */ });\n/* harmony import */ var _css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../../../../../css-loader/dist/runtime/noSourceMaps.js */ \"./node_modules/css-loader/dist/runtime/noSourceMaps.js\");\n/* harmony import */ var _css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var _css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../../../../css-loader/dist/runtime/api.js */ \"./node_modules/css-loader/dist/runtime/api.js\");\n/* harmony import */ var _css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__);\n// Imports\n\n\nvar ___CSS_LOADER_EXPORT___ = _css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default()((_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default()));\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, `/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n.monaco-hover {\n\tcursor: default;\n\tposition: absolute;\n\toverflow: hidden;\n\tuser-select: text;\n\t-webkit-user-select: text;\n\tbox-sizing: border-box;\n\tanimation: fadein 100ms linear;\n\tline-height: 1.5em;\n\twhite-space: var(--vscode-hover-whiteSpace, normal);\n}\n\n.monaco-hover.hidden {\n\tdisplay: none;\n}\n\n.monaco-hover a:hover:not(.disabled) {\n\tcursor: pointer;\n}\n\n.monaco-hover .hover-contents:not(.html-hover-contents) {\n\tpadding: 4px 8px;\n}\n\n.monaco-hover .markdown-hover > .hover-contents:not(.code-hover-contents) {\n\tmax-width: var(--vscode-hover-maxWidth, 500px);\n\tword-wrap: break-word;\n}\n\n.monaco-hover .markdown-hover > .hover-contents:not(.code-hover-contents) hr {\n\tmin-width: 100%;\n}\n\n.monaco-hover p,\n.monaco-hover .code,\n.monaco-hover ul,\n.monaco-hover h1,\n.monaco-hover h2,\n.monaco-hover h3,\n.monaco-hover h4,\n.monaco-hover h5,\n.monaco-hover h6 {\n\tmargin: 8px 0;\n}\n\n.monaco-hover h1,\n.monaco-hover h2,\n.monaco-hover h3,\n.monaco-hover h4,\n.monaco-hover h5,\n.monaco-hover h6 {\n\tline-height: 1.1;\n}\n\n.monaco-hover code {\n\tfont-family: var(--monaco-monospace-font);\n}\n\n.monaco-hover hr {\n\tbox-sizing: border-box;\n\tborder-left: 0px;\n\tborder-right: 0px;\n\tmargin-top: 4px;\n\tmargin-bottom: -4px;\n\tmargin-left: -8px;\n\tmargin-right: -8px;\n\theight: 1px;\n}\n\n.monaco-hover p:first-child,\n.monaco-hover .code:first-child,\n.monaco-hover ul:first-child {\n\tmargin-top: 0;\n}\n\n.monaco-hover p:last-child,\n.monaco-hover .code:last-child,\n.monaco-hover ul:last-child {\n\tmargin-bottom: 0;\n}\n\n/* MarkupContent Layout */\n.monaco-hover ul {\n\tpadding-left: 20px;\n}\n.monaco-hover ol {\n\tpadding-left: 20px;\n}\n\n.monaco-hover li > p {\n\tmargin-bottom: 0;\n}\n\n.monaco-hover li > ul {\n\tmargin-top: 0;\n}\n\n.monaco-hover code {\n\tborder-radius: 3px;\n\tpadding: 0 0.4em;\n}\n\n.monaco-hover .monaco-tokenized-source {\n\twhite-space: var(--vscode-hover-sourceWhiteSpace, pre-wrap);\n}\n\n.monaco-hover .hover-row.status-bar {\n\tfont-size: 12px;\n\tline-height: 22px;\n}\n\n.monaco-hover .hover-row.status-bar .info {\n\tfont-style: italic;\n\tpadding: 0px 8px;\n}\n\n.monaco-hover .hover-row.status-bar .actions {\n\tdisplay: flex;\n\tpadding: 0px 8px;\n}\n\n.monaco-hover .hover-row.status-bar .actions .action-container {\n\tmargin-right: 16px;\n\tcursor: pointer;\n}\n\n.monaco-hover .hover-row.status-bar .actions .action-container .action .icon {\n\tpadding-right: 4px;\n}\n\n.monaco-hover .markdown-hover .hover-contents .codicon {\n\tcolor: inherit;\n\tfont-size: inherit;\n\tvertical-align: middle;\n}\n\n.monaco-hover .hover-contents a.code-link:hover,\n.monaco-hover .hover-contents a.code-link {\n\tcolor: inherit;\n}\n\n.monaco-hover .hover-contents a.code-link:before {\n\tcontent: '(';\n}\n\n.monaco-hover .hover-contents a.code-link:after {\n\tcontent: ')';\n}\n\n.monaco-hover .hover-contents a.code-link > span {\n\ttext-decoration: underline;\n\t/** Hack to force underline to show **/\n\tborder-bottom: 1px solid transparent;\n\ttext-underline-position: under;\n\tcolor: var(--vscode-textLink-foreground);\n}\n\n.monaco-hover .hover-contents a.code-link > span:hover {\n\tcolor: var(--vscode-textLink-activeForeground);\n}\n\n/** Spans in markdown hovers need a margin-bottom to avoid looking cramped: https://github.com/microsoft/vscode/issues/101496 **/\n.monaco-hover .markdown-hover .hover-contents:not(.code-hover-contents):not(.html-hover-contents) span {\n\tmargin-bottom: 4px;\n\tdisplay: inline-block;\n}\n\n.monaco-hover-content .action-container a {\n\t-webkit-user-select: none;\n\tuser-select: none;\n}\n\n.monaco-hover-content .action-container.disabled {\n\tpointer-events: none;\n\topacity: 0.4;\n\tcursor: default;\n}\n`, \"\"]);\n// Exports\n/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (___CSS_LOADER_EXPORT___);\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/base/browser/ui/hover/hover.css?./node_modules/css-loader/dist/cjs.js");
/***/ }),
/***/ "./node_modules/css-loader/dist/cjs.js!./node_modules/monaco-editor/esm/vs/base/browser/ui/iconLabel/iconlabel.css":
/*!*************************************************************************************************************************!*\
!*** ./node_modules/css-loader/dist/cjs.js!./node_modules/monaco-editor/esm/vs/base/browser/ui/iconLabel/iconlabel.css ***!
\*************************************************************************************************************************/
/***/ ((module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": () => (__WEBPACK_DEFAULT_EXPORT__)\n/* harmony export */ });\n/* harmony import */ var _css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../../../../../css-loader/dist/runtime/noSourceMaps.js */ \"./node_modules/css-loader/dist/runtime/noSourceMaps.js\");\n/* harmony import */ var _css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var _css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../../../../css-loader/dist/runtime/api.js */ \"./node_modules/css-loader/dist/runtime/api.js\");\n/* harmony import */ var _css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__);\n// Imports\n\n\nvar ___CSS_LOADER_EXPORT___ = _css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default()((_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default()));\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, `/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n/* ---------- Icon label ---------- */\n\n.monaco-icon-label {\n\tdisplay: flex; /* required for icons support :before rule */\n\toverflow: hidden;\n\ttext-overflow: ellipsis;\n}\n\n.monaco-icon-label::before {\n\n\t/* svg icons rendered as background image */\n\tbackground-size: 16px;\n\tbackground-position: left center;\n\tbackground-repeat: no-repeat;\n\tpadding-right: 6px;\n\twidth: 16px;\n\theight: 22px;\n\tline-height: inherit !important;\n\tdisplay: inline-block;\n\n\t/* fonts icons */\n\t-webkit-font-smoothing: antialiased;\n\t-moz-osx-font-smoothing: grayscale;\n\tvertical-align: top;\n\n\tflex-shrink: 0; /* fix for https://github.com/microsoft/vscode/issues/13787 */\n}\n\n.monaco-icon-label-container.disabled {\n\tcolor: var(--vscode-disabledForeground);\n}\n.monaco-icon-label > .monaco-icon-label-container {\n\tmin-width: 0;\n\toverflow: hidden;\n\ttext-overflow: ellipsis;\n\tflex: 1;\n}\n\n.monaco-icon-label > .monaco-icon-label-container > .monaco-icon-name-container > .label-name {\n\tcolor: inherit;\n\twhite-space: pre; /* enable to show labels that include multiple whitespaces */\n}\n\n.monaco-icon-label > .monaco-icon-label-container > .monaco-icon-name-container > .label-name > .label-separator {\n\tmargin: 0 2px;\n\topacity: 0.5;\n}\n\n.monaco-icon-label > .monaco-icon-label-container > .monaco-icon-suffix-container > .label-suffix {\n\topacity: .7;\n\twhite-space: pre;\n}\n\n.monaco-icon-label > .monaco-icon-label-container > .monaco-icon-description-container > .label-description {\n\topacity: .7;\n\tmargin-left: 0.5em;\n\tfont-size: 0.9em;\n\twhite-space: pre; /* enable to show labels that include multiple whitespaces */\n}\n\n.monaco-icon-label.nowrap > .monaco-icon-label-container > .monaco-icon-description-container > .label-description{\n\twhite-space: nowrap\n}\n\n.vs .monaco-icon-label > .monaco-icon-label-container > .monaco-icon-description-container > .label-description {\n\topacity: .95;\n}\n\n.monaco-icon-label.italic > .monaco-icon-label-container > .monaco-icon-name-container > .label-name,\n.monaco-icon-label.italic > .monaco-icon-label-container > .monaco-icon-description-container > .label-description {\n\tfont-style: italic;\n}\n\n.monaco-icon-label.deprecated {\n\ttext-decoration: line-through;\n\topacity: 0.66;\n}\n\n/* make sure apply italic font style to decorations as well */\n.monaco-icon-label.italic::after {\n\tfont-style: italic;\n}\n\n.monaco-icon-label.strikethrough > .monaco-icon-label-container > .monaco-icon-name-container > .label-name,\n.monaco-icon-label.strikethrough > .monaco-icon-label-container > .monaco-icon-description-container > .label-description {\n\ttext-decoration: line-through;\n}\n\n.monaco-icon-label::after {\n\topacity: 0.75;\n\tfont-size: 90%;\n\tfont-weight: 600;\n\tmargin: auto 16px 0 5px; /* https://github.com/microsoft/vscode/issues/113223 */\n\ttext-align: center;\n}\n\n/* make sure selection color wins when a label is being selected */\n.monaco-list:focus .selected .monaco-icon-label, /* list */\n.monaco-list:focus .selected .monaco-icon-label::after\n{\n\tcolor: inherit !important;\n}\n\n.monaco-list-row.focused.selected .label-description,\n.monaco-list-row.selected .label-description {\n\topacity: .8;\n}\n`, \"\"]);\n// Exports\n/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (___CSS_LOADER_EXPORT___);\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/base/browser/ui/iconLabel/iconlabel.css?./node_modules/css-loader/dist/cjs.js");
/***/ }),
/***/ "./node_modules/css-loader/dist/cjs.js!./node_modules/monaco-editor/esm/vs/base/browser/ui/inputbox/inputBox.css":
/*!***********************************************************************************************************************!*\
!*** ./node_modules/css-loader/dist/cjs.js!./node_modules/monaco-editor/esm/vs/base/browser/ui/inputbox/inputBox.css ***!
\***********************************************************************************************************************/
/***/ ((module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": () => (__WEBPACK_DEFAULT_EXPORT__)\n/* harmony export */ });\n/* harmony import */ var _css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../../../../../css-loader/dist/runtime/noSourceMaps.js */ \"./node_modules/css-loader/dist/runtime/noSourceMaps.js\");\n/* harmony import */ var _css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var _css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../../../../css-loader/dist/runtime/api.js */ \"./node_modules/css-loader/dist/runtime/api.js\");\n/* harmony import */ var _css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__);\n// Imports\n\n\nvar ___CSS_LOADER_EXPORT___ = _css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default()((_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default()));\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, `/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n.monaco-inputbox {\n\tposition: relative;\n\tdisplay: block;\n\tpadding: 0;\n\tbox-sizing:\tborder-box;\n\tborder-radius: 2px;\n\n\t/* Customizable */\n\tfont-size: inherit;\n}\n\n.monaco-inputbox > .ibwrapper > .input,\n.monaco-inputbox > .ibwrapper > .mirror {\n\n\t/* Customizable */\n\tpadding: 4px 6px;\n}\n\n.monaco-inputbox > .ibwrapper {\n\tposition: relative;\n\twidth: 100%;\n\theight: 100%;\n}\n\n.monaco-inputbox > .ibwrapper > .input {\n\tdisplay: inline-block;\n\tbox-sizing:\tborder-box;\n\twidth: 100%;\n\theight: 100%;\n\tline-height: inherit;\n\tborder: none;\n\tfont-family: inherit;\n\tfont-size: inherit;\n\tresize: none;\n\tcolor: inherit;\n}\n\n.monaco-inputbox > .ibwrapper > input {\n\ttext-overflow: ellipsis;\n}\n\n.monaco-inputbox > .ibwrapper > textarea.input {\n\tdisplay: block;\n\tscrollbar-width: none; /* Firefox: hide scrollbars */\n\toutline: none;\n}\n\n.monaco-inputbox > .ibwrapper > textarea.input::-webkit-scrollbar {\n\tdisplay: none; /* Chrome + Safari: hide scrollbar */\n}\n\n.monaco-inputbox > .ibwrapper > textarea.input.empty {\n\twhite-space: nowrap;\n}\n\n.monaco-inputbox > .ibwrapper > .mirror {\n\tposition: absolute;\n\tdisplay: inline-block;\n\twidth: 100%;\n\ttop: 0;\n\tleft: 0;\n\tbox-sizing: border-box;\n\twhite-space: pre-wrap;\n\tvisibility: hidden;\n\tword-wrap: break-word;\n}\n\n/* Context view */\n\n.monaco-inputbox-container {\n\ttext-align: right;\n}\n\n.monaco-inputbox-container .monaco-inputbox-message {\n\tdisplay: inline-block;\n\toverflow: hidden;\n\ttext-align: left;\n\twidth: 100%;\n\tbox-sizing:\tborder-box;\n\tpadding: 0.4em;\n\tfont-size: 12px;\n\tline-height: 17px;\n\tmargin-top: -1px;\n\tword-wrap: break-word;\n}\n\n/* Action bar support */\n.monaco-inputbox .monaco-action-bar {\n\tposition: absolute;\n\tright: 2px;\n\ttop: 4px;\n}\n\n.monaco-inputbox .monaco-action-bar .action-item {\n\tmargin-left: 2px;\n}\n\n.monaco-inputbox .monaco-action-bar .action-item .codicon {\n\tbackground-repeat: no-repeat;\n\twidth: 16px;\n\theight: 16px;\n}\n`, \"\"]);\n// Exports\n/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (___CSS_LOADER_EXPORT___);\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/base/browser/ui/inputbox/inputBox.css?./node_modules/css-loader/dist/cjs.js");
/***/ }),
/***/ "./node_modules/css-loader/dist/cjs.js!./node_modules/monaco-editor/esm/vs/base/browser/ui/keybindingLabel/keybindingLabel.css":
/*!*************************************************************************************************************************************!*\
!*** ./node_modules/css-loader/dist/cjs.js!./node_modules/monaco-editor/esm/vs/base/browser/ui/keybindingLabel/keybindingLabel.css ***!
\*************************************************************************************************************************************/
/***/ ((module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": () => (__WEBPACK_DEFAULT_EXPORT__)\n/* harmony export */ });\n/* harmony import */ var _css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../../../../../css-loader/dist/runtime/noSourceMaps.js */ \"./node_modules/css-loader/dist/runtime/noSourceMaps.js\");\n/* harmony import */ var _css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var _css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../../../../css-loader/dist/runtime/api.js */ \"./node_modules/css-loader/dist/runtime/api.js\");\n/* harmony import */ var _css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__);\n// Imports\n\n\nvar ___CSS_LOADER_EXPORT___ = _css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default()((_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default()));\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, `/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n.monaco-keybinding {\n\tdisplay: flex;\n\talign-items: center;\n\tline-height: 10px;\n}\n\n.monaco-keybinding > .monaco-keybinding-key {\n\tdisplay: inline-block;\n\tborder-style: solid;\n\tborder-width: 1px;\n\tborder-radius: 3px;\n\tvertical-align: middle;\n\tfont-size: 11px;\n\tpadding: 3px 5px;\n\tmargin: 0 2px;\n}\n\n.monaco-keybinding > .monaco-keybinding-key:first-child {\n\tmargin-left: 0;\n}\n\n.monaco-keybinding > .monaco-keybinding-key:last-child {\n\tmargin-right: 0;\n}\n\n.monaco-keybinding > .monaco-keybinding-key-separator {\n\tdisplay: inline-block;\n}\n\n.monaco-keybinding > .monaco-keybinding-key-chord-separator {\n\twidth: 6px;\n}\n`, \"\"]);\n// Exports\n/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (___CSS_LOADER_EXPORT___);\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/base/browser/ui/keybindingLabel/keybindingLabel.css?./node_modules/css-loader/dist/cjs.js");
/***/ }),
/***/ "./node_modules/css-loader/dist/cjs.js!./node_modules/monaco-editor/esm/vs/base/browser/ui/list/list.css":
/*!***************************************************************************************************************!*\
!*** ./node_modules/css-loader/dist/cjs.js!./node_modules/monaco-editor/esm/vs/base/browser/ui/list/list.css ***!
\***************************************************************************************************************/
/***/ ((module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": () => (__WEBPACK_DEFAULT_EXPORT__)\n/* harmony export */ });\n/* harmony import */ var _css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../../../../../css-loader/dist/runtime/noSourceMaps.js */ \"./node_modules/css-loader/dist/runtime/noSourceMaps.js\");\n/* harmony import */ var _css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var _css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../../../../css-loader/dist/runtime/api.js */ \"./node_modules/css-loader/dist/runtime/api.js\");\n/* harmony import */ var _css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__);\n// Imports\n\n\nvar ___CSS_LOADER_EXPORT___ = _css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default()((_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default()));\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, `/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n.monaco-list {\n\tposition: relative;\n\theight: 100%;\n\twidth: 100%;\n\twhite-space: nowrap;\n}\n\n.monaco-list.mouse-support {\n\tuser-select: none;\n\t-webkit-user-select: none;\n}\n\n.monaco-list > .monaco-scrollable-element {\n\theight: 100%;\n}\n\n.monaco-list-rows {\n\tposition: relative;\n\twidth: 100%;\n\theight: 100%;\n}\n\n.monaco-list.horizontal-scrolling .monaco-list-rows {\n\twidth: auto;\n\tmin-width: 100%;\n}\n\n.monaco-list-row {\n\tposition: absolute;\n\tbox-sizing: border-box;\n\toverflow: hidden;\n\twidth: 100%;\n}\n\n.monaco-list.mouse-support .monaco-list-row {\n\tcursor: pointer;\n\ttouch-action: none;\n}\n\n/* Make sure the scrollbar renders above overlays (sticky scroll) */\n.monaco-list .monaco-scrollable-element > .scrollbar.vertical,\n.monaco-pane-view > .monaco-split-view2.vertical > .monaco-scrollable-element > .scrollbar.vertical {\n\tz-index: 14;\n}\n\n/* for OS X ballistic scrolling */\n.monaco-list-row.scrolling {\n\tdisplay: none !important;\n}\n\n/* Focus */\n.monaco-list.element-focused,\n.monaco-list.selection-single,\n.monaco-list.selection-multiple {\n\toutline: 0 !important;\n}\n\n/* Dnd */\n.monaco-drag-image {\n\tdisplay: inline-block;\n\tpadding: 1px 7px;\n\tborder-radius: 10px;\n\tfont-size: 12px;\n\tposition: absolute;\n\tz-index: 1000;\n}\n\n/* Filter */\n\n.monaco-list-type-filter-message {\n\tposition: absolute;\n\tbox-sizing: border-box;\n\twidth: 100%;\n\theight: 100%;\n\ttop: 0;\n\tleft: 0;\n\tpadding: 40px 1em 1em 1em;\n\ttext-align: center;\n\twhite-space: normal;\n\topacity: 0.7;\n\tpointer-events: none;\n}\n\n.monaco-list-type-filter-message:empty {\n\tdisplay: none;\n}\n`, \"\"]);\n// Exports\n/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (___CSS_LOADER_EXPORT___);\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/base/browser/ui/list/list.css?./node_modules/css-loader/dist/cjs.js");
/***/ }),
/***/ "./node_modules/css-loader/dist/cjs.js!./node_modules/monaco-editor/esm/vs/base/browser/ui/mouseCursor/mouseCursor.css":
/*!*****************************************************************************************************************************!*\
!*** ./node_modules/css-loader/dist/cjs.js!./node_modules/monaco-editor/esm/vs/base/browser/ui/mouseCursor/mouseCursor.css ***!
\*****************************************************************************************************************************/
/***/ ((module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": () => (__WEBPACK_DEFAULT_EXPORT__)\n/* harmony export */ });\n/* harmony import */ var _css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../../../../../css-loader/dist/runtime/noSourceMaps.js */ \"./node_modules/css-loader/dist/runtime/noSourceMaps.js\");\n/* harmony import */ var _css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var _css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../../../../css-loader/dist/runtime/api.js */ \"./node_modules/css-loader/dist/runtime/api.js\");\n/* harmony import */ var _css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__);\n// Imports\n\n\nvar ___CSS_LOADER_EXPORT___ = _css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default()((_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default()));\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, `/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n.monaco-mouse-cursor-text {\n\tcursor: text;\n}\n`, \"\"]);\n// Exports\n/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (___CSS_LOADER_EXPORT___);\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/base/browser/ui/mouseCursor/mouseCursor.css?./node_modules/css-loader/dist/cjs.js");
/***/ }),
/***/ "./node_modules/css-loader/dist/cjs.js!./node_modules/monaco-editor/esm/vs/base/browser/ui/progressbar/progressbar.css":
/*!*****************************************************************************************************************************!*\
!*** ./node_modules/css-loader/dist/cjs.js!./node_modules/monaco-editor/esm/vs/base/browser/ui/progressbar/progressbar.css ***!
\*****************************************************************************************************************************/
/***/ ((module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": () => (__WEBPACK_DEFAULT_EXPORT__)\n/* harmony export */ });\n/* harmony import */ var _css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../../../../../css-loader/dist/runtime/noSourceMaps.js */ \"./node_modules/css-loader/dist/runtime/noSourceMaps.js\");\n/* harmony import */ var _css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var _css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../../../../css-loader/dist/runtime/api.js */ \"./node_modules/css-loader/dist/runtime/api.js\");\n/* harmony import */ var _css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__);\n// Imports\n\n\nvar ___CSS_LOADER_EXPORT___ = _css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default()((_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default()));\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, `/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n.monaco-progress-container {\n\twidth: 100%;\n\theight: 2px;\n\toverflow: hidden; /* keep progress bit in bounds */\n}\n\n.monaco-progress-container .progress-bit {\n\twidth: 2%;\n\theight: 2px;\n\tposition: absolute;\n\tleft: 0;\n\tdisplay: none;\n}\n\n.monaco-progress-container.active .progress-bit {\n\tdisplay: inherit;\n}\n\n.monaco-progress-container.discrete .progress-bit {\n\tleft: 0;\n\ttransition: width 100ms linear;\n}\n\n.monaco-progress-container.discrete.done .progress-bit {\n\twidth: 100%;\n}\n\n.monaco-progress-container.infinite .progress-bit {\n\tanimation-name: progress;\n\tanimation-duration: 4s;\n\tanimation-iteration-count: infinite;\n\ttransform: translate3d(0px, 0px, 0px);\n\tanimation-timing-function: linear;\n}\n\n.monaco-progress-container.infinite.infinite-long-running .progress-bit {\n\t/*\n\t\tThe more smooth \\`linear\\` timing function can cause\n\t\thigher GPU consumption as indicated in\n\t\thttps://github.com/microsoft/vscode/issues/97900 &\n\t\thttps://github.com/microsoft/vscode/issues/138396\n\t*/\n\tanimation-timing-function: steps(100);\n}\n\n/**\n * The progress bit has a width: 2% (1/50) of the parent container. The animation moves it from 0% to 100% of\n * that container. Since translateX is relative to the progress bit size, we have to multiple it with\n * its relative size to the parent container:\n * parent width: 5000%\n * bit width: 100%\n * translateX should be as follow:\n * 50%: 5000% * 50% - 50% (set to center) = 2450%\n * 100%: 5000% * 100% - 100% (do not overflow) = 4900%\n */\n@keyframes progress { from { transform: translateX(0%) scaleX(1) } 50% { transform: translateX(2500%) scaleX(3) } to { transform: translateX(4900%) scaleX(1) } }\n`, \"\"]);\n// Exports\n/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (___CSS_LOADER_EXPORT___);\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/base/browser/ui/progressbar/progressbar.css?./node_modules/css-loader/dist/cjs.js");
/***/ }),
/***/ "./node_modules/css-loader/dist/cjs.js!./node_modules/monaco-editor/esm/vs/base/browser/ui/sash/sash.css":
/*!***************************************************************************************************************!*\
!*** ./node_modules/css-loader/dist/cjs.js!./node_modules/monaco-editor/esm/vs/base/browser/ui/sash/sash.css ***!
\***************************************************************************************************************/
/***/ ((module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": () => (__WEBPACK_DEFAULT_EXPORT__)\n/* harmony export */ });\n/* harmony import */ var _css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../../../../../css-loader/dist/runtime/noSourceMaps.js */ \"./node_modules/css-loader/dist/runtime/noSourceMaps.js\");\n/* harmony import */ var _css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var _css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../../../../css-loader/dist/runtime/api.js */ \"./node_modules/css-loader/dist/runtime/api.js\");\n/* harmony import */ var _css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__);\n// Imports\n\n\nvar ___CSS_LOADER_EXPORT___ = _css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default()((_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default()));\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, `/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n:root {\n\t--vscode-sash-size: 4px;\n\t--vscode-sash-hover-size: 4px;\n}\n\n.monaco-sash {\n\tposition: absolute;\n\tz-index: 35;\n\ttouch-action: none;\n}\n\n.monaco-sash.disabled {\n\tpointer-events: none;\n}\n\n.monaco-sash.mac.vertical {\n\tcursor: col-resize;\n}\n\n.monaco-sash.vertical.minimum {\n\tcursor: e-resize;\n}\n\n.monaco-sash.vertical.maximum {\n\tcursor: w-resize;\n}\n\n.monaco-sash.mac.horizontal {\n\tcursor: row-resize;\n}\n\n.monaco-sash.horizontal.minimum {\n\tcursor: s-resize;\n}\n\n.monaco-sash.horizontal.maximum {\n\tcursor: n-resize;\n}\n\n.monaco-sash.disabled {\n\tcursor: default !important;\n\tpointer-events: none !important;\n}\n\n.monaco-sash.vertical {\n\tcursor: ew-resize;\n\ttop: 0;\n\twidth: var(--vscode-sash-size);\n\theight: 100%;\n}\n\n.monaco-sash.horizontal {\n\tcursor: ns-resize;\n\tleft: 0;\n\twidth: 100%;\n\theight: var(--vscode-sash-size);\n}\n\n.monaco-sash:not(.disabled) > .orthogonal-drag-handle {\n\tcontent: \" \";\n\theight: calc(var(--vscode-sash-size) * 2);\n\twidth: calc(var(--vscode-sash-size) * 2);\n\tz-index: 100;\n\tdisplay: block;\n\tcursor: all-scroll;\n\tposition: absolute;\n}\n\n.monaco-sash.horizontal.orthogonal-edge-north:not(.disabled)\n\t> .orthogonal-drag-handle.start,\n.monaco-sash.horizontal.orthogonal-edge-south:not(.disabled)\n\t> .orthogonal-drag-handle.end {\n\tcursor: nwse-resize;\n}\n\n.monaco-sash.horizontal.orthogonal-edge-north:not(.disabled)\n\t> .orthogonal-drag-handle.end,\n.monaco-sash.horizontal.orthogonal-edge-south:not(.disabled)\n\t> .orthogonal-drag-handle.start {\n\tcursor: nesw-resize;\n}\n\n.monaco-sash.vertical > .orthogonal-drag-handle.start {\n\tleft: calc(var(--vscode-sash-size) * -0.5);\n\ttop: calc(var(--vscode-sash-size) * -1);\n}\n.monaco-sash.vertical > .orthogonal-drag-handle.end {\n\tleft: calc(var(--vscode-sash-size) * -0.5);\n\tbottom: calc(var(--vscode-sash-size) * -1);\n}\n.monaco-sash.horizontal > .orthogonal-drag-handle.start {\n\ttop: calc(var(--vscode-sash-size) * -0.5);\n\tleft: calc(var(--vscode-sash-size) * -1);\n}\n.monaco-sash.horizontal > .orthogonal-drag-handle.end {\n\ttop: calc(var(--vscode-sash-size) * -0.5);\n\tright: calc(var(--vscode-sash-size) * -1);\n}\n\n.monaco-sash:before {\n\tcontent: '';\n\tpointer-events: none;\n\tposition: absolute;\n\twidth: 100%;\n\theight: 100%;\n\tbackground: transparent;\n}\n\n.monaco-workbench:not(.reduce-motion) .monaco-sash:before {\n\ttransition: background-color 0.1s ease-out;\n}\n\n.monaco-sash.hover:before,\n.monaco-sash.active:before {\n\tbackground: var(--vscode-sash-hoverBorder);\n}\n\n.monaco-sash.vertical:before {\n\twidth: var(--vscode-sash-hover-size);\n\tleft: calc(50% - (var(--vscode-sash-hover-size) / 2));\n}\n\n.monaco-sash.horizontal:before {\n\theight: var(--vscode-sash-hover-size);\n\ttop: calc(50% - (var(--vscode-sash-hover-size) / 2));\n}\n\n.pointer-events-disabled {\n\tpointer-events: none !important;\n}\n\n/** Debug **/\n\n.monaco-sash.debug {\n\tbackground: cyan;\n}\n\n.monaco-sash.debug.disabled {\n\tbackground: rgba(0, 255, 255, 0.2);\n}\n\n.monaco-sash.debug:not(.disabled) > .orthogonal-drag-handle {\n\tbackground: red;\n}\n`, \"\"]);\n// Exports\n/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (___CSS_LOADER_EXPORT___);\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/base/browser/ui/sash/sash.css?./node_modules/css-loader/dist/cjs.js");
/***/ }),
/***/ "./node_modules/css-loader/dist/cjs.js!./node_modules/monaco-editor/esm/vs/base/browser/ui/scrollbar/media/scrollbars.css":
/*!********************************************************************************************************************************!*\
!*** ./node_modules/css-loader/dist/cjs.js!./node_modules/monaco-editor/esm/vs/base/browser/ui/scrollbar/media/scrollbars.css ***!
\********************************************************************************************************************************/
/***/ ((module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": () => (__WEBPACK_DEFAULT_EXPORT__)\n/* harmony export */ });\n/* harmony import */ var _css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../../../../../../css-loader/dist/runtime/noSourceMaps.js */ \"./node_modules/css-loader/dist/runtime/noSourceMaps.js\");\n/* harmony import */ var _css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var _css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../../../../../css-loader/dist/runtime/api.js */ \"./node_modules/css-loader/dist/runtime/api.js\");\n/* harmony import */ var _css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__);\n// Imports\n\n\nvar ___CSS_LOADER_EXPORT___ = _css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default()((_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default()));\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, `/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n/* Arrows */\n.monaco-scrollable-element > .scrollbar > .scra {\n\tcursor: pointer;\n\tfont-size: 11px !important;\n}\n\n.monaco-scrollable-element > .visible {\n\topacity: 1;\n\n\t/* Background rule added for IE9 - to allow clicks on dom node */\n\tbackground:rgba(0,0,0,0);\n\n\ttransition: opacity 100ms linear;\n\t/* In front of peek view */\n\tz-index: 11;\n}\n.monaco-scrollable-element > .invisible {\n\topacity: 0;\n\tpointer-events: none;\n}\n.monaco-scrollable-element > .invisible.fade {\n\ttransition: opacity 800ms linear;\n}\n\n/* Scrollable Content Inset Shadow */\n.monaco-scrollable-element > .shadow {\n\tposition: absolute;\n\tdisplay: none;\n}\n.monaco-scrollable-element > .shadow.top {\n\tdisplay: block;\n\ttop: 0;\n\tleft: 3px;\n\theight: 3px;\n\twidth: 100%;\n\tbox-shadow: var(--vscode-scrollbar-shadow) 0 6px 6px -6px inset;\n}\n.monaco-scrollable-element > .shadow.left {\n\tdisplay: block;\n\ttop: 3px;\n\tleft: 0;\n\theight: 100%;\n\twidth: 3px;\n\tbox-shadow: var(--vscode-scrollbar-shadow) 6px 0 6px -6px inset;\n}\n.monaco-scrollable-element > .shadow.top-left-corner {\n\tdisplay: block;\n\ttop: 0;\n\tleft: 0;\n\theight: 3px;\n\twidth: 3px;\n}\n.monaco-scrollable-element > .shadow.top.left {\n\tbox-shadow: var(--vscode-scrollbar-shadow) 6px 0 6px -6px inset;\n}\n\n.monaco-scrollable-element > .scrollbar > .slider {\n\tbackground: var(--vscode-scrollbarSlider-background);\n}\n\n.monaco-scrollable-element > .scrollbar > .slider:hover {\n\tbackground: var(--vscode-scrollbarSlider-hoverBackground);\n}\n\n.monaco-scrollable-element > .scrollbar > .slider.active {\n\tbackground: var(--vscode-scrollbarSlider-activeBackground);\n}\n`, \"\"]);\n// Exports\n/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (___CSS_LOADER_EXPORT___);\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/base/browser/ui/scrollbar/media/scrollbars.css?./node_modules/css-loader/dist/cjs.js");
/***/ }),
/***/ "./node_modules/css-loader/dist/cjs.js!./node_modules/monaco-editor/esm/vs/base/browser/ui/selectBox/selectBox.css":
/*!*************************************************************************************************************************!*\
!*** ./node_modules/css-loader/dist/cjs.js!./node_modules/monaco-editor/esm/vs/base/browser/ui/selectBox/selectBox.css ***!
\*************************************************************************************************************************/
/***/ ((module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": () => (__WEBPACK_DEFAULT_EXPORT__)\n/* harmony export */ });\n/* harmony import */ var _css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../../../../../css-loader/dist/runtime/noSourceMaps.js */ \"./node_modules/css-loader/dist/runtime/noSourceMaps.js\");\n/* harmony import */ var _css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var _css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../../../../css-loader/dist/runtime/api.js */ \"./node_modules/css-loader/dist/runtime/api.js\");\n/* harmony import */ var _css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__);\n// Imports\n\n\nvar ___CSS_LOADER_EXPORT___ = _css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default()((_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default()));\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, `/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n.monaco-select-box {\n\twidth: 100%;\n\tcursor: pointer;\n\tborder-radius: 2px;\n}\n\n.monaco-select-box-dropdown-container {\n\tfont-size: 13px;\n\tfont-weight: normal;\n\ttext-transform: none;\n}\n\n/** Actions */\n\n.monaco-action-bar .action-item.select-container {\n\tcursor: default;\n}\n\n.monaco-action-bar .action-item .monaco-select-box {\n\tcursor: pointer;\n\tmin-width: 100px;\n\tmin-height: 18px;\n\tpadding: 2px 23px 2px 8px;\n}\n\n.mac .monaco-action-bar .action-item .monaco-select-box {\n\tfont-size: 11px;\n\tborder-radius: 5px;\n}\n`, \"\"]);\n// Exports\n/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (___CSS_LOADER_EXPORT___);\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/base/browser/ui/selectBox/selectBox.css?./node_modules/css-loader/dist/cjs.js");
/***/ }),
/***/ "./node_modules/css-loader/dist/cjs.js!./node_modules/monaco-editor/esm/vs/base/browser/ui/selectBox/selectBoxCustom.css":
/*!*******************************************************************************************************************************!*\
!*** ./node_modules/css-loader/dist/cjs.js!./node_modules/monaco-editor/esm/vs/base/browser/ui/selectBox/selectBoxCustom.css ***!
\*******************************************************************************************************************************/
/***/ ((module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": () => (__WEBPACK_DEFAULT_EXPORT__)\n/* harmony export */ });\n/* harmony import */ var _css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../../../../../css-loader/dist/runtime/noSourceMaps.js */ \"./node_modules/css-loader/dist/runtime/noSourceMaps.js\");\n/* harmony import */ var _css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var _css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../../../../css-loader/dist/runtime/api.js */ \"./node_modules/css-loader/dist/runtime/api.js\");\n/* harmony import */ var _css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__);\n// Imports\n\n\nvar ___CSS_LOADER_EXPORT___ = _css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default()((_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default()));\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, `/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n/* Use custom CSS vars to expose padding into parent select for padding calculation */\n.monaco-select-box-dropdown-padding {\n\t--dropdown-padding-top: 1px;\n\t--dropdown-padding-bottom: 1px;\n}\n\n.hc-black .monaco-select-box-dropdown-padding,\n.hc-light .monaco-select-box-dropdown-padding {\n\t--dropdown-padding-top: 3px;\n\t--dropdown-padding-bottom: 4px;\n}\n\n.monaco-select-box-dropdown-container {\n\tdisplay: none;\n\tbox-sizing:\tborder-box;\n}\n\n.monaco-select-box-dropdown-container > .select-box-details-pane > .select-box-description-markdown * {\n\tmargin: 0;\n}\n\n.monaco-select-box-dropdown-container > .select-box-details-pane > .select-box-description-markdown a:focus {\n\toutline: 1px solid -webkit-focus-ring-color;\n\toutline-offset: -1px;\n}\n\n.monaco-select-box-dropdown-container > .select-box-details-pane > .select-box-description-markdown code {\n\tline-height: 15px; /** For some reason, this is needed, otherwise will take up 20px height */\n\tfont-family: var(--monaco-monospace-font);\n}\n\n\n.monaco-select-box-dropdown-container.visible {\n\tdisplay: flex;\n\tflex-direction: column;\n\ttext-align: left;\n\twidth: 1px;\n\toverflow: hidden;\n\tborder-bottom-left-radius: 3px;\n\tborder-bottom-right-radius: 3px;\n}\n\n.monaco-select-box-dropdown-container > .select-box-dropdown-list-container {\n\tflex: 0 0 auto;\n\talign-self: flex-start;\n\tpadding-top: var(--dropdown-padding-top);\n\tpadding-bottom: var(--dropdown-padding-bottom);\n\tpadding-left: 1px;\n\tpadding-right: 1px;\n\twidth: 100%;\n\toverflow: hidden;\n\tbox-sizing:\tborder-box;\n}\n\n.monaco-select-box-dropdown-container > .select-box-details-pane {\n\tpadding: 5px;\n}\n\n.hc-black .monaco-select-box-dropdown-container > .select-box-dropdown-list-container {\n\tpadding-top: var(--dropdown-padding-top);\n\tpadding-bottom: var(--dropdown-padding-bottom);\n}\n\n.monaco-select-box-dropdown-container > .select-box-dropdown-list-container .monaco-list .monaco-list-row {\n\tcursor: pointer;\n}\n\n.monaco-select-box-dropdown-container > .select-box-dropdown-list-container .monaco-list .monaco-list-row > .option-text {\n\ttext-overflow: ellipsis;\n\toverflow: hidden;\n\tpadding-left: 3.5px;\n\twhite-space: nowrap;\n\tfloat: left;\n}\n\n.monaco-select-box-dropdown-container > .select-box-dropdown-list-container .monaco-list .monaco-list-row > .option-detail {\n\ttext-overflow: ellipsis;\n\toverflow: hidden;\n\tpadding-left: 3.5px;\n\twhite-space: nowrap;\n\tfloat: left;\n\topacity: 0.7;\n}\n\n.monaco-select-box-dropdown-container > .select-box-dropdown-list-container .monaco-list .monaco-list-row > .option-decorator-right {\n\ttext-overflow: ellipsis;\n\toverflow: hidden;\n\tpadding-right: 10px;\n\twhite-space: nowrap;\n\tfloat: right;\n}\n\n\n/* Accepted CSS hiding technique for accessibility reader text */\n/* https://webaim.org/techniques/css/invisiblecontent/ */\n\n.monaco-select-box-dropdown-container > .select-box-dropdown-list-container .monaco-list .monaco-list-row > .visually-hidden {\n\t\tposition: absolute;\n\t\tleft: -10000px;\n\t\ttop: auto;\n\t\twidth: 1px;\n\t\theight: 1px;\n\t\toverflow: hidden;\n}\n\n.monaco-select-box-dropdown-container > .select-box-dropdown-container-width-control {\n\tflex: 1 1 auto;\n\talign-self: flex-start;\n\topacity: 0;\n}\n\n.monaco-select-box-dropdown-container > .select-box-dropdown-container-width-control > .width-control-div {\n\toverflow: hidden;\n\tmax-height: 0px;\n}\n\n.monaco-select-box-dropdown-container > .select-box-dropdown-container-width-control > .width-control-div > .option-text-width-control {\n\tpadding-left: 4px;\n\tpadding-right: 8px;\n\twhite-space: nowrap;\n}\n`, \"\"]);\n// Exports\n/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (___CSS_LOADER_EXPORT___);\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/base/browser/ui/selectBox/selectBoxCustom.css?./node_modules/css-loader/dist/cjs.js");
/***/ }),
/***/ "./node_modules/css-loader/dist/cjs.js!./node_modules/monaco-editor/esm/vs/base/browser/ui/splitview/splitview.css":
/*!*************************************************************************************************************************!*\
!*** ./node_modules/css-loader/dist/cjs.js!./node_modules/monaco-editor/esm/vs/base/browser/ui/splitview/splitview.css ***!
\*************************************************************************************************************************/
/***/ ((module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": () => (__WEBPACK_DEFAULT_EXPORT__)\n/* harmony export */ });\n/* harmony import */ var _css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../../../../../css-loader/dist/runtime/noSourceMaps.js */ \"./node_modules/css-loader/dist/runtime/noSourceMaps.js\");\n/* harmony import */ var _css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var _css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../../../../css-loader/dist/runtime/api.js */ \"./node_modules/css-loader/dist/runtime/api.js\");\n/* harmony import */ var _css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__);\n// Imports\n\n\nvar ___CSS_LOADER_EXPORT___ = _css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default()((_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default()));\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, `/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n.monaco-split-view2 {\n\tposition: relative;\n\twidth: 100%;\n\theight: 100%;\n}\n\n.monaco-split-view2 > .sash-container {\n\tposition: absolute;\n\twidth: 100%;\n\theight: 100%;\n\tpointer-events: none;\n}\n\n.monaco-split-view2 > .sash-container > .monaco-sash {\n\tpointer-events: initial;\n}\n\n.monaco-split-view2 > .monaco-scrollable-element {\n\twidth: 100%;\n\theight: 100%;\n}\n\n.monaco-split-view2 > .monaco-scrollable-element > .split-view-container {\n\twidth: 100%;\n\theight: 100%;\n\twhite-space: nowrap;\n\tposition: relative;\n}\n\n.monaco-split-view2 > .monaco-scrollable-element > .split-view-container > .split-view-view {\n\twhite-space: initial;\n\tposition: absolute;\n}\n\n.monaco-split-view2 > .monaco-scrollable-element > .split-view-container > .split-view-view:not(.visible) {\n\tdisplay: none;\n}\n\n.monaco-split-view2.vertical > .monaco-scrollable-element > .split-view-container > .split-view-view {\n\twidth: 100%;\n}\n\n.monaco-split-view2.horizontal > .monaco-scrollable-element > .split-view-container > .split-view-view {\n\theight: 100%;\n}\n\n.monaco-split-view2.separator-border > .monaco-scrollable-element > .split-view-container > .split-view-view:not(:first-child)::before {\n\tcontent: ' ';\n\tposition: absolute;\n\ttop: 0;\n\tleft: 0;\n\tz-index: 5;\n\tpointer-events: none;\n\tbackground-color: var(--separator-border);\n}\n\n.monaco-split-view2.separator-border.horizontal > .monaco-scrollable-element > .split-view-container > .split-view-view:not(:first-child)::before {\n\theight: 100%;\n\twidth: 1px;\n}\n\n.monaco-split-view2.separator-border.vertical > .monaco-scrollable-element > .split-view-container > .split-view-view:not(:first-child)::before {\n\theight: 1px;\n\twidth: 100%;\n}\n`, \"\"]);\n// Exports\n/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (___CSS_LOADER_EXPORT___);\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/base/browser/ui/splitview/splitview.css?./node_modules/css-loader/dist/cjs.js");
/***/ }),
/***/ "./node_modules/css-loader/dist/cjs.js!./node_modules/monaco-editor/esm/vs/base/browser/ui/table/table.css":
/*!*****************************************************************************************************************!*\
!*** ./node_modules/css-loader/dist/cjs.js!./node_modules/monaco-editor/esm/vs/base/browser/ui/table/table.css ***!
\*****************************************************************************************************************/
/***/ ((module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": () => (__WEBPACK_DEFAULT_EXPORT__)\n/* harmony export */ });\n/* harmony import */ var _css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../../../../../css-loader/dist/runtime/noSourceMaps.js */ \"./node_modules/css-loader/dist/runtime/noSourceMaps.js\");\n/* harmony import */ var _css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var _css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../../../../css-loader/dist/runtime/api.js */ \"./node_modules/css-loader/dist/runtime/api.js\");\n/* harmony import */ var _css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__);\n// Imports\n\n\nvar ___CSS_LOADER_EXPORT___ = _css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default()((_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default()));\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, `/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n.monaco-table {\n\tdisplay: flex;\n\tflex-direction: column;\n\tposition: relative;\n\theight: 100%;\n\twidth: 100%;\n\twhite-space: nowrap;\n\toverflow: hidden;\n}\n\n.monaco-table > .monaco-split-view2 {\n\tborder-bottom: 1px solid transparent;\n}\n\n.monaco-table > .monaco-list {\n\tflex: 1;\n}\n\n.monaco-table-tr {\n\tdisplay: flex;\n\theight: 100%;\n}\n\n.monaco-table-th {\n\twidth: 100%;\n\theight: 100%;\n\tfont-weight: bold;\n\toverflow: hidden;\n\ttext-overflow: ellipsis;\n}\n\n.monaco-table-th,\n.monaco-table-td {\n\tbox-sizing: border-box;\n\tflex-shrink: 0;\n\toverflow: hidden;\n\twhite-space: nowrap;\n\ttext-overflow: ellipsis;\n}\n\n.monaco-table > .monaco-split-view2 .monaco-sash.vertical::before {\n\tcontent: \"\";\n\tposition: absolute;\n\tleft: calc(var(--vscode-sash-size) / 2);\n\twidth: 0;\n\tborder-left: 1px solid transparent;\n}\n\n.monaco-workbench:not(.reduce-motion) .monaco-table > .monaco-split-view2,\n.monaco-workbench:not(.reduce-motion) .monaco-table > .monaco-split-view2 .monaco-sash.vertical::before {\n\ttransition: border-color 0.2s ease-out;\n}\n`, \"\"]);\n// Exports\n/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (___CSS_LOADER_EXPORT___);\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/base/browser/ui/table/table.css?./node_modules/css-loader/dist/cjs.js");
/***/ }),
/***/ "./node_modules/css-loader/dist/cjs.js!./node_modules/monaco-editor/esm/vs/base/browser/ui/toggle/toggle.css":
/*!*******************************************************************************************************************!*\
!*** ./node_modules/css-loader/dist/cjs.js!./node_modules/monaco-editor/esm/vs/base/browser/ui/toggle/toggle.css ***!
\*******************************************************************************************************************/
/***/ ((module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": () => (__WEBPACK_DEFAULT_EXPORT__)\n/* harmony export */ });\n/* harmony import */ var _css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../../../../../css-loader/dist/runtime/noSourceMaps.js */ \"./node_modules/css-loader/dist/runtime/noSourceMaps.js\");\n/* harmony import */ var _css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var _css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../../../../css-loader/dist/runtime/api.js */ \"./node_modules/css-loader/dist/runtime/api.js\");\n/* harmony import */ var _css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__);\n// Imports\n\n\nvar ___CSS_LOADER_EXPORT___ = _css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default()((_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default()));\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, `/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n.monaco-custom-toggle {\n\tmargin-left: 2px;\n\tfloat: left;\n\tcursor: pointer;\n\toverflow: hidden;\n\twidth: 20px;\n\theight: 20px;\n\tborder-radius: 3px;\n\tborder: 1px solid transparent;\n\tpadding: 1px;\n\tbox-sizing:\tborder-box;\n\tuser-select: none;\n\t-webkit-user-select: none;\n}\n\n.monaco-custom-toggle:hover {\n\tbackground-color: var(--vscode-inputOption-hoverBackground);\n}\n\n.hc-black .monaco-custom-toggle:hover,\n.hc-light .monaco-custom-toggle:hover {\n\tborder: 1px dashed var(--vscode-focusBorder);\n}\n\n.hc-black .monaco-custom-toggle,\n.hc-light .monaco-custom-toggle {\n\tbackground: none;\n}\n\n.hc-black .monaco-custom-toggle:hover,\n.hc-light .monaco-custom-toggle:hover {\n\tbackground: none;\n}\n\n.monaco-custom-toggle.monaco-checkbox {\n\theight: 18px;\n\twidth: 18px;\n\tborder: 1px solid transparent;\n\tborder-radius: 3px;\n\tmargin-right: 9px;\n\tmargin-left: 0px;\n\tpadding: 0px;\n\topacity: 1;\n\tbackground-size: 16px !important;\n}\n\n.monaco-action-bar .checkbox-action-item {\n\tdisplay: flex;\n\talign-items: center;\n}\n\n.monaco-action-bar .checkbox-action-item > .monaco-custom-toggle.monaco-checkbox {\n\tmargin-right: 4px;\n}\n\n.monaco-action-bar .checkbox-action-item > .checkbox-label {\n\tfont-size: 12px;\n}\n\n/* hide check when unchecked */\n.monaco-custom-toggle.monaco-checkbox:not(.checked)::before {\n\tvisibility: hidden;\n}\n`, \"\"]);\n// Exports\n/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (___CSS_LOADER_EXPORT___);\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/base/browser/ui/toggle/toggle.css?./node_modules/css-loader/dist/cjs.js");
/***/ }),
/***/ "./node_modules/css-loader/dist/cjs.js!./node_modules/monaco-editor/esm/vs/base/browser/ui/toolbar/toolbar.css":
/*!*********************************************************************************************************************!*\
!*** ./node_modules/css-loader/dist/cjs.js!./node_modules/monaco-editor/esm/vs/base/browser/ui/toolbar/toolbar.css ***!
\*********************************************************************************************************************/
/***/ ((module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": () => (__WEBPACK_DEFAULT_EXPORT__)\n/* harmony export */ });\n/* harmony import */ var _css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../../../../../css-loader/dist/runtime/noSourceMaps.js */ \"./node_modules/css-loader/dist/runtime/noSourceMaps.js\");\n/* harmony import */ var _css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var _css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../../../../css-loader/dist/runtime/api.js */ \"./node_modules/css-loader/dist/runtime/api.js\");\n/* harmony import */ var _css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__);\n// Imports\n\n\nvar ___CSS_LOADER_EXPORT___ = _css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default()((_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default()));\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, `/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n.monaco-toolbar {\n\theight: 100%;\n}\n\n.monaco-toolbar .toolbar-toggle-more {\n\tdisplay: inline-block;\n\tpadding: 0;\n}\n`, \"\"]);\n// Exports\n/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (___CSS_LOADER_EXPORT___);\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/base/browser/ui/toolbar/toolbar.css?./node_modules/css-loader/dist/cjs.js");
/***/ }),
/***/ "./node_modules/css-loader/dist/cjs.js!./node_modules/monaco-editor/esm/vs/base/browser/ui/tree/media/tree.css":
/*!*********************************************************************************************************************!*\
!*** ./node_modules/css-loader/dist/cjs.js!./node_modules/monaco-editor/esm/vs/base/browser/ui/tree/media/tree.css ***!
\*********************************************************************************************************************/
/***/ ((module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": () => (__WEBPACK_DEFAULT_EXPORT__)\n/* harmony export */ });\n/* harmony import */ var _css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../../../../../../css-loader/dist/runtime/noSourceMaps.js */ \"./node_modules/css-loader/dist/runtime/noSourceMaps.js\");\n/* harmony import */ var _css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var _css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../../../../../css-loader/dist/runtime/api.js */ \"./node_modules/css-loader/dist/runtime/api.js\");\n/* harmony import */ var _css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__);\n// Imports\n\n\nvar ___CSS_LOADER_EXPORT___ = _css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default()((_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default()));\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, `/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n.monaco-tl-row {\n\tdisplay: flex;\n\theight: 100%;\n\talign-items: center;\n\tposition: relative;\n}\n\n.monaco-tl-row.disabled {\n\tcursor: default;\n}\n.monaco-tl-indent {\n\theight: 100%;\n\tposition: absolute;\n\ttop: 0;\n\tleft: 16px;\n\tpointer-events: none;\n}\n\n.hide-arrows .monaco-tl-indent {\n\tleft: 12px;\n}\n\n.monaco-tl-indent > .indent-guide {\n\tdisplay: inline-block;\n\tbox-sizing: border-box;\n\theight: 100%;\n\tborder-left: 1px solid transparent;\n}\n\n.monaco-workbench:not(.reduce-motion) .monaco-tl-indent > .indent-guide {\n\ttransition: border-color 0.1s linear;\n}\n\n.monaco-tl-twistie,\n.monaco-tl-contents {\n\theight: 100%;\n}\n\n.monaco-tl-twistie {\n\tfont-size: 10px;\n\ttext-align: right;\n\tpadding-right: 6px;\n\tflex-shrink: 0;\n\twidth: 16px;\n\tdisplay: flex !important;\n\talign-items: center;\n\tjustify-content: center;\n\ttransform: translateX(3px);\n}\n\n.monaco-tl-contents {\n\tflex: 1;\n\toverflow: hidden;\n}\n\n.monaco-tl-twistie::before {\n\tborder-radius: 20px;\n}\n\n.monaco-tl-twistie.collapsed::before {\n\ttransform: rotate(-90deg);\n}\n\n.monaco-tl-twistie.codicon-tree-item-loading::before {\n\t/* Use steps to throttle FPS to reduce CPU usage */\n\tanimation: codicon-spin 1.25s steps(30) infinite;\n}\n\n.monaco-tree-type-filter {\n\tposition: absolute;\n\ttop: 0;\n\tdisplay: flex;\n\tpadding: 3px;\n\tmax-width: 200px;\n\tz-index: 100;\n\tmargin: 0 6px;\n\tborder: 1px solid var(--vscode-widget-border);\n\tborder-bottom-left-radius: 4px;\n\tborder-bottom-right-radius: 4px;\n}\n\n.monaco-workbench:not(.reduce-motion) .monaco-tree-type-filter {\n\ttransition: top 0.3s;\n}\n\n.monaco-tree-type-filter.disabled {\n\ttop: -40px !important;\n}\n\n.monaco-tree-type-filter-grab {\n\tdisplay: flex !important;\n\talign-items: center;\n\tjustify-content: center;\n\tcursor: grab;\n\tmargin-right: 2px;\n}\n\n.monaco-tree-type-filter-grab.grabbing {\n\tcursor: grabbing;\n}\n\n.monaco-tree-type-filter-input {\n\tflex: 1;\n}\n\n.monaco-tree-type-filter-input .monaco-inputbox {\n\theight: 23px;\n}\n\n.monaco-tree-type-filter-input .monaco-inputbox > .ibwrapper > .input,\n.monaco-tree-type-filter-input .monaco-inputbox > .ibwrapper > .mirror {\n\tpadding: 2px 4px;\n}\n\n.monaco-tree-type-filter-input .monaco-findInput > .controls {\n\ttop: 2px;\n}\n\n.monaco-tree-type-filter-actionbar {\n\tmargin-left: 4px;\n}\n\n.monaco-tree-type-filter-actionbar .monaco-action-bar .action-label {\n\tpadding: 2px;\n}\n\n.monaco-list .monaco-scrollable-element .monaco-tree-sticky-container{\n\tposition: absolute;\n\ttop: 0;\n\tleft: 0;\n\twidth: 100%;\n\theight: 0;\n\tz-index: 13; /* Settings editor uses z-index: 12 */\n\n\t/* TODO@benibenj temporary solution, all lists should provide their background */\n\tbackground-color: var(--vscode-sideBar-background);\n}\n\n.monaco-list .monaco-scrollable-element .monaco-tree-sticky-container .monaco-tree-sticky-row.monaco-list-row{\n\tposition: absolute;\n\twidth: 100%;\n\topacity: 1 !important; /* Settings editor uses opacity < 1 */\n\toverflow: hidden;\n\n\t/* TODO@benibenj temporary solution, all lists should provide their background */\n\tbackground-color: var(--vscode-sideBar-background);\n}\n\n.monaco-list .monaco-scrollable-element .monaco-tree-sticky-container .monaco-tree-sticky-row:hover{\n\tbackground-color: var(--vscode-list-hoverBackground) !important;\n\tcursor: pointer;\n}\n\n.monaco-list .monaco-scrollable-element .monaco-tree-sticky-container.empty,\n.monaco-list .monaco-scrollable-element .monaco-tree-sticky-container.empty .monaco-tree-sticky-container-shadow {\n\tdisplay: none;\n}\n\n.monaco-list .monaco-scrollable-element .monaco-tree-sticky-container .monaco-tree-sticky-container-shadow{\n\tposition: absolute;\n\tbottom: -3px;\n\tleft: 0px;\n\theight: 3px;\n\twidth: 100%;\n\tbox-shadow: var(--vscode-scrollbar-shadow) 0 6px 6px -6px inset;\n}\n\n.monaco-list .monaco-scrollable-element .monaco-tree-sticky-container[tabindex=\"0\"]:focus{\n\toutline: none;\n}\n`, \"\"]);\n// Exports\n/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (___CSS_LOADER_EXPORT___);\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/base/browser/ui/tree/media/tree.css?./node_modules/css-loader/dist/cjs.js");
/***/ }),
/***/ "./node_modules/css-loader/dist/cjs.js!./node_modules/monaco-editor/esm/vs/editor/browser/controller/textAreaHandler.css":
/*!*******************************************************************************************************************************!*\
!*** ./node_modules/css-loader/dist/cjs.js!./node_modules/monaco-editor/esm/vs/editor/browser/controller/textAreaHandler.css ***!
\*******************************************************************************************************************************/
/***/ ((module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": () => (__WEBPACK_DEFAULT_EXPORT__)\n/* harmony export */ });\n/* harmony import */ var _css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../../../../css-loader/dist/runtime/noSourceMaps.js */ \"./node_modules/css-loader/dist/runtime/noSourceMaps.js\");\n/* harmony import */ var _css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var _css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../../../css-loader/dist/runtime/api.js */ \"./node_modules/css-loader/dist/runtime/api.js\");\n/* harmony import */ var _css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__);\n// Imports\n\n\nvar ___CSS_LOADER_EXPORT___ = _css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default()((_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default()));\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, `/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n.monaco-editor .inputarea {\n\tmin-width: 0;\n\tmin-height: 0;\n\tmargin: 0;\n\tpadding: 0;\n\tposition: absolute;\n\toutline: none !important;\n\tresize: none;\n\tborder: none;\n\toverflow: hidden;\n\tcolor: transparent;\n\tbackground-color: transparent;\n\tz-index: -10;\n}\n/*.monaco-editor .inputarea {\n\tposition: fixed !important;\n\twidth: 800px !important;\n\theight: 500px !important;\n\ttop: initial !important;\n\tleft: initial !important;\n\tbottom: 0 !important;\n\tright: 0 !important;\n\tcolor: black !important;\n\tbackground: white !important;\n\tline-height: 15px !important;\n\tfont-size: 14px !important;\n\tz-index: 10 !important;\n}*/\n.monaco-editor .inputarea.ime-input {\n\tz-index: 10;\n\tcaret-color: var(--vscode-editorCursor-foreground);\n\tcolor: var(--vscode-editor-foreground);\n}\n`, \"\"]);\n// Exports\n/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (___CSS_LOADER_EXPORT___);\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/browser/controller/textAreaHandler.css?./node_modules/css-loader/dist/cjs.js");
/***/ }),
/***/ "./node_modules/css-loader/dist/cjs.js!./node_modules/monaco-editor/esm/vs/editor/browser/viewParts/blockDecorations/blockDecorations.css":
/*!************************************************************************************************************************************************!*\
!*** ./node_modules/css-loader/dist/cjs.js!./node_modules/monaco-editor/esm/vs/editor/browser/viewParts/blockDecorations/blockDecorations.css ***!
\************************************************************************************************************************************************/
/***/ ((module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": () => (__WEBPACK_DEFAULT_EXPORT__)\n/* harmony export */ });\n/* harmony import */ var _css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../../../../../css-loader/dist/runtime/noSourceMaps.js */ \"./node_modules/css-loader/dist/runtime/noSourceMaps.js\");\n/* harmony import */ var _css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var _css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../../../../css-loader/dist/runtime/api.js */ \"./node_modules/css-loader/dist/runtime/api.js\");\n/* harmony import */ var _css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__);\n// Imports\n\n\nvar ___CSS_LOADER_EXPORT___ = _css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default()((_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default()));\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, `/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n.monaco-editor .blockDecorations-container {\n\tposition: absolute;\n\ttop: 0;\n\tpointer-events: none;\n}\n\n.monaco-editor .blockDecorations-block {\n\tposition: absolute;\n\tbox-sizing: border-box;\n}\n`, \"\"]);\n// Exports\n/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (___CSS_LOADER_EXPORT___);\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/browser/viewParts/blockDecorations/blockDecorations.css?./node_modules/css-loader/dist/cjs.js");
/***/ }),
/***/ "./node_modules/css-loader/dist/cjs.js!./node_modules/monaco-editor/esm/vs/editor/browser/viewParts/currentLineHighlight/currentLineHighlight.css":
/*!********************************************************************************************************************************************************!*\
!*** ./node_modules/css-loader/dist/cjs.js!./node_modules/monaco-editor/esm/vs/editor/browser/viewParts/currentLineHighlight/currentLineHighlight.css ***!
\********************************************************************************************************************************************************/
/***/ ((module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": () => (__WEBPACK_DEFAULT_EXPORT__)\n/* harmony export */ });\n/* harmony import */ var _css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../../../../../css-loader/dist/runtime/noSourceMaps.js */ \"./node_modules/css-loader/dist/runtime/noSourceMaps.js\");\n/* harmony import */ var _css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var _css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../../../../css-loader/dist/runtime/api.js */ \"./node_modules/css-loader/dist/runtime/api.js\");\n/* harmony import */ var _css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__);\n// Imports\n\n\nvar ___CSS_LOADER_EXPORT___ = _css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default()((_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default()));\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, `/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n.monaco-editor .view-overlays .current-line {\n\tdisplay: block;\n\tposition: absolute;\n\tleft: 0;\n\ttop: 0;\n\tbox-sizing: border-box;\n}\n\n.monaco-editor .margin-view-overlays .current-line {\n\tdisplay: block;\n\tposition: absolute;\n\tleft: 0;\n\ttop: 0;\n\tbox-sizing: border-box;\n}\n\n.monaco-editor .margin-view-overlays .current-line.current-line-margin.current-line-margin-both {\n\tborder-right: 0;\n}\n`, \"\"]);\n// Exports\n/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (___CSS_LOADER_EXPORT___);\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/browser/viewParts/currentLineHighlight/currentLineHighlight.css?./node_modules/css-loader/dist/cjs.js");
/***/ }),
/***/ "./node_modules/css-loader/dist/cjs.js!./node_modules/monaco-editor/esm/vs/editor/browser/viewParts/decorations/decorations.css":
/*!**************************************************************************************************************************************!*\
!*** ./node_modules/css-loader/dist/cjs.js!./node_modules/monaco-editor/esm/vs/editor/browser/viewParts/decorations/decorations.css ***!
\**************************************************************************************************************************************/
/***/ ((module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": () => (__WEBPACK_DEFAULT_EXPORT__)\n/* harmony export */ });\n/* harmony import */ var _css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../../../../../css-loader/dist/runtime/noSourceMaps.js */ \"./node_modules/css-loader/dist/runtime/noSourceMaps.js\");\n/* harmony import */ var _css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var _css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../../../../css-loader/dist/runtime/api.js */ \"./node_modules/css-loader/dist/runtime/api.js\");\n/* harmony import */ var _css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__);\n// Imports\n\n\nvar ___CSS_LOADER_EXPORT___ = _css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default()((_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default()));\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, `/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n/*\n\tKeeping name short for faster parsing.\n\tcdr = core decorations rendering (div)\n*/\n.monaco-editor .lines-content .cdr {\n\tposition: absolute;\n}`, \"\"]);\n// Exports\n/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (___CSS_LOADER_EXPORT___);\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/browser/viewParts/decorations/decorations.css?./node_modules/css-loader/dist/cjs.js");
/***/ }),
/***/ "./node_modules/css-loader/dist/cjs.js!./node_modules/monaco-editor/esm/vs/editor/browser/viewParts/glyphMargin/glyphMargin.css":
/*!**************************************************************************************************************************************!*\
!*** ./node_modules/css-loader/dist/cjs.js!./node_modules/monaco-editor/esm/vs/editor/browser/viewParts/glyphMargin/glyphMargin.css ***!
\**************************************************************************************************************************************/
/***/ ((module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": () => (__WEBPACK_DEFAULT_EXPORT__)\n/* harmony export */ });\n/* harmony import */ var _css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../../../../../css-loader/dist/runtime/noSourceMaps.js */ \"./node_modules/css-loader/dist/runtime/noSourceMaps.js\");\n/* harmony import */ var _css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var _css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../../../../css-loader/dist/runtime/api.js */ \"./node_modules/css-loader/dist/runtime/api.js\");\n/* harmony import */ var _css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__);\n// Imports\n\n\nvar ___CSS_LOADER_EXPORT___ = _css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default()((_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default()));\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, `/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n.monaco-editor .glyph-margin {\n\tposition: absolute;\n\ttop: 0;\n}\n\n/*\n\tKeeping name short for faster parsing.\n\tcgmr = core glyph margin rendering (div)\n*/\n.monaco-editor .glyph-margin-widgets .cgmr {\n\tposition: absolute;\n\tdisplay: flex;\n\talign-items: center;\n\tjustify-content: center;\n}\n\n/*\n\tEnsure spinning icons are pixel-perfectly centered and avoid wobble.\n\tThis is only applied to icons that spin to avoid unnecessary\n\tGPU layers and blurry subpixel AA.\n*/\n.monaco-editor .glyph-margin-widgets .cgmr.codicon-modifier-spin::before {\n\tposition: absolute;\n\ttop: 50%;\n\tleft: 50%;\n\ttransform: translate(-50%, -50%);\n}\n`, \"\"]);\n// Exports\n/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (___CSS_LOADER_EXPORT___);\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/browser/viewParts/glyphMargin/glyphMargin.css?./node_modules/css-loader/dist/cjs.js");
/***/ }),
/***/ "./node_modules/css-loader/dist/cjs.js!./node_modules/monaco-editor/esm/vs/editor/browser/viewParts/indentGuides/indentGuides.css":
/*!****************************************************************************************************************************************!*\
!*** ./node_modules/css-loader/dist/cjs.js!./node_modules/monaco-editor/esm/vs/editor/browser/viewParts/indentGuides/indentGuides.css ***!
\****************************************************************************************************************************************/
/***/ ((module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": () => (__WEBPACK_DEFAULT_EXPORT__)\n/* harmony export */ });\n/* harmony import */ var _css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../../../../../css-loader/dist/runtime/noSourceMaps.js */ \"./node_modules/css-loader/dist/runtime/noSourceMaps.js\");\n/* harmony import */ var _css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var _css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../../../../css-loader/dist/runtime/api.js */ \"./node_modules/css-loader/dist/runtime/api.js\");\n/* harmony import */ var _css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__);\n// Imports\n\n\nvar ___CSS_LOADER_EXPORT___ = _css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default()((_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default()));\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, `/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n.monaco-editor .lines-content .core-guide {\n\tposition: absolute;\n\tbox-sizing: border-box;\n}\n`, \"\"]);\n// Exports\n/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (___CSS_LOADER_EXPORT___);\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/browser/viewParts/indentGuides/indentGuides.css?./node_modules/css-loader/dist/cjs.js");
/***/ }),
/***/ "./node_modules/css-loader/dist/cjs.js!./node_modules/monaco-editor/esm/vs/editor/browser/viewParts/lineNumbers/lineNumbers.css":
/*!**************************************************************************************************************************************!*\
!*** ./node_modules/css-loader/dist/cjs.js!./node_modules/monaco-editor/esm/vs/editor/browser/viewParts/lineNumbers/lineNumbers.css ***!
\**************************************************************************************************************************************/
/***/ ((module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": () => (__WEBPACK_DEFAULT_EXPORT__)\n/* harmony export */ });\n/* harmony import */ var _css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../../../../../css-loader/dist/runtime/noSourceMaps.js */ \"./node_modules/css-loader/dist/runtime/noSourceMaps.js\");\n/* harmony import */ var _css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var _css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../../../../css-loader/dist/runtime/api.js */ \"./node_modules/css-loader/dist/runtime/api.js\");\n/* harmony import */ var _css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__);\n// Imports\n\n\nvar ___CSS_LOADER_EXPORT___ = _css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default()((_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default()));\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, `/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n.monaco-editor .margin-view-overlays .line-numbers {\n\tfont-variant-numeric: tabular-nums;\n\tposition: absolute;\n\ttext-align: right;\n\tdisplay: inline-block;\n\tvertical-align: middle;\n\tbox-sizing: border-box;\n\tcursor: default;\n\theight: 100%;\n}\n\n.monaco-editor .relative-current-line-number {\n\ttext-align: left;\n\tdisplay: inline-block;\n\twidth: 100%;\n}\n\n.monaco-editor .margin-view-overlays .line-numbers.lh-odd {\n\tmargin-top: 1px;\n}\n\n.monaco-editor .line-numbers {\n\tcolor: var(--vscode-editorLineNumber-foreground);\n}\n\n.monaco-editor .line-numbers.active-line-number {\n\tcolor: var(--vscode-editorLineNumber-activeForeground);\n}\n`, \"\"]);\n// Exports\n/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (___CSS_LOADER_EXPORT___);\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/browser/viewParts/lineNumbers/lineNumbers.css?./node_modules/css-loader/dist/cjs.js");
/***/ }),
/***/ "./node_modules/css-loader/dist/cjs.js!./node_modules/monaco-editor/esm/vs/editor/browser/viewParts/lines/viewLines.css":
/*!******************************************************************************************************************************!*\
!*** ./node_modules/css-loader/dist/cjs.js!./node_modules/monaco-editor/esm/vs/editor/browser/viewParts/lines/viewLines.css ***!
\******************************************************************************************************************************/
/***/ ((module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": () => (__WEBPACK_DEFAULT_EXPORT__)\n/* harmony export */ });\n/* harmony import */ var _css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../../../../../css-loader/dist/runtime/noSourceMaps.js */ \"./node_modules/css-loader/dist/runtime/noSourceMaps.js\");\n/* harmony import */ var _css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var _css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../../../../css-loader/dist/runtime/api.js */ \"./node_modules/css-loader/dist/runtime/api.js\");\n/* harmony import */ var _css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__);\n// Imports\n\n\nvar ___CSS_LOADER_EXPORT___ = _css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default()((_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default()));\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, `/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n/* Uncomment to see lines flashing when they're painted */\n/*.monaco-editor .view-lines > .view-line {\n\tbackground-color: none;\n\tanimation-name: flash-background;\n\tanimation-duration: 800ms;\n}\n@keyframes flash-background {\n\t0% { background-color: lightgreen; }\n\t100% { background-color: none }\n}*/\n\n.mtkcontrol {\n\tcolor: rgb(255, 255, 255) !important;\n\tbackground: rgb(150, 0, 0) !important;\n}\n\n.mtkoverflow {\n\tbackground-color: var(--vscode-button-background, var(--vscode-editor-background));\n\tcolor: var(--vscode-button-foreground, var(--vscode-editor-foreground));\n\tborder-width: 1px;\n\tborder-style: solid;\n\tborder-color: var(--vscode-contrastBorder);\n\tborder-radius: 2px;\n\tpadding: 4px;\n\tcursor: pointer;\n}\n.mtkoverflow:hover {\n\tbackground-color: var(--vscode-button-hoverBackground);\n}\n\n.monaco-editor.no-user-select .lines-content,\n.monaco-editor.no-user-select .view-line,\n.monaco-editor.no-user-select .view-lines {\n\tuser-select: none;\n\t-webkit-user-select: none;\n}\n/* Use user-select: text for lookup feature on macOS */\n/* https://github.com/microsoft/vscode/issues/85632 */\n.monaco-editor.mac .lines-content:hover,\n.monaco-editor.mac .view-line:hover,\n.monaco-editor.mac .view-lines:hover {\n\tuser-select: text;\n\t-webkit-user-select: text;\n\t-ms-user-select: text;\n}\n\n.monaco-editor.enable-user-select {\n\tuser-select: initial;\n\t-webkit-user-select: initial;\n}\n\n.monaco-editor .view-lines {\n\twhite-space: nowrap;\n}\n\n.monaco-editor .view-line {\n\tposition: absolute;\n\twidth: 100%;\n}\n\n.monaco-editor .mtkw {\n\tcolor: var(--vscode-editorWhitespace-foreground) !important;\n}\n\n.monaco-editor .mtkz {\n\tdisplay: inline-block;\n\tcolor: var(--vscode-editorWhitespace-foreground) !important;\n}\n\n/* TODO@tokenization bootstrap fix */\n/*.monaco-editor .view-line > span > span {\n\tfloat: none;\n\tmin-height: inherit;\n\tmargin-left: inherit;\n}*/\n`, \"\"]);\n// Exports\n/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (___CSS_LOADER_EXPORT___);\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/browser/viewParts/lines/viewLines.css?./node_modules/css-loader/dist/cjs.js");
/***/ }),
/***/ "./node_modules/css-loader/dist/cjs.js!./node_modules/monaco-editor/esm/vs/editor/browser/viewParts/linesDecorations/linesDecorations.css":
/*!************************************************************************************************************************************************!*\
!*** ./node_modules/css-loader/dist/cjs.js!./node_modules/monaco-editor/esm/vs/editor/browser/viewParts/linesDecorations/linesDecorations.css ***!
\************************************************************************************************************************************************/
/***/ ((module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": () => (__WEBPACK_DEFAULT_EXPORT__)\n/* harmony export */ });\n/* harmony import */ var _css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../../../../../css-loader/dist/runtime/noSourceMaps.js */ \"./node_modules/css-loader/dist/runtime/noSourceMaps.js\");\n/* harmony import */ var _css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var _css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../../../../css-loader/dist/runtime/api.js */ \"./node_modules/css-loader/dist/runtime/api.js\");\n/* harmony import */ var _css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__);\n// Imports\n\n\nvar ___CSS_LOADER_EXPORT___ = _css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default()((_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default()));\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, `/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n.monaco-editor .lines-decorations {\n\tposition: absolute;\n\ttop: 0;\n\tbackground: white;\n}\n\n/*\n\tKeeping name short for faster parsing.\n\tcldr = core lines decorations rendering (div)\n*/\n.monaco-editor .margin-view-overlays .cldr {\n\tposition: absolute;\n\theight: 100%;\n}`, \"\"]);\n// Exports\n/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (___CSS_LOADER_EXPORT___);\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/browser/viewParts/linesDecorations/linesDecorations.css?./node_modules/css-loader/dist/cjs.js");
/***/ }),
/***/ "./node_modules/css-loader/dist/cjs.js!./node_modules/monaco-editor/esm/vs/editor/browser/viewParts/margin/margin.css":
/*!****************************************************************************************************************************!*\
!*** ./node_modules/css-loader/dist/cjs.js!./node_modules/monaco-editor/esm/vs/editor/browser/viewParts/margin/margin.css ***!
\****************************************************************************************************************************/
/***/ ((module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": () => (__WEBPACK_DEFAULT_EXPORT__)\n/* harmony export */ });\n/* harmony import */ var _css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../../../../../css-loader/dist/runtime/noSourceMaps.js */ \"./node_modules/css-loader/dist/runtime/noSourceMaps.js\");\n/* harmony import */ var _css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var _css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../../../../css-loader/dist/runtime/api.js */ \"./node_modules/css-loader/dist/runtime/api.js\");\n/* harmony import */ var _css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__);\n// Imports\n\n\nvar ___CSS_LOADER_EXPORT___ = _css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default()((_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default()));\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, `/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n.monaco-editor .margin {\n\tbackground-color: var(--vscode-editorGutter-background);\n}\n`, \"\"]);\n// Exports\n/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (___CSS_LOADER_EXPORT___);\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/browser/viewParts/margin/margin.css?./node_modules/css-loader/dist/cjs.js");
/***/ }),
/***/ "./node_modules/css-loader/dist/cjs.js!./node_modules/monaco-editor/esm/vs/editor/browser/viewParts/marginDecorations/marginDecorations.css":
/*!**************************************************************************************************************************************************!*\
!*** ./node_modules/css-loader/dist/cjs.js!./node_modules/monaco-editor/esm/vs/editor/browser/viewParts/marginDecorations/marginDecorations.css ***!
\**************************************************************************************************************************************************/
/***/ ((module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": () => (__WEBPACK_DEFAULT_EXPORT__)\n/* harmony export */ });\n/* harmony import */ var _css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../../../../../css-loader/dist/runtime/noSourceMaps.js */ \"./node_modules/css-loader/dist/runtime/noSourceMaps.js\");\n/* harmony import */ var _css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var _css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../../../../css-loader/dist/runtime/api.js */ \"./node_modules/css-loader/dist/runtime/api.js\");\n/* harmony import */ var _css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__);\n// Imports\n\n\nvar ___CSS_LOADER_EXPORT___ = _css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default()((_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default()));\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, `/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n/*\n\tKeeping name short for faster parsing.\n\tcmdr = core margin decorations rendering (div)\n*/\n.monaco-editor .margin-view-overlays .cmdr {\n\tposition: absolute;\n\tleft: 0;\n\twidth: 100%;\n\theight: 100%;\n}`, \"\"]);\n// Exports\n/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (___CSS_LOADER_EXPORT___);\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/browser/viewParts/marginDecorations/marginDecorations.css?./node_modules/css-loader/dist/cjs.js");
/***/ }),
/***/ "./node_modules/css-loader/dist/cjs.js!./node_modules/monaco-editor/esm/vs/editor/browser/viewParts/minimap/minimap.css":
/*!******************************************************************************************************************************!*\
!*** ./node_modules/css-loader/dist/cjs.js!./node_modules/monaco-editor/esm/vs/editor/browser/viewParts/minimap/minimap.css ***!
\******************************************************************************************************************************/
/***/ ((module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": () => (__WEBPACK_DEFAULT_EXPORT__)\n/* harmony export */ });\n/* harmony import */ var _css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../../../../../css-loader/dist/runtime/noSourceMaps.js */ \"./node_modules/css-loader/dist/runtime/noSourceMaps.js\");\n/* harmony import */ var _css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var _css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../../../../css-loader/dist/runtime/api.js */ \"./node_modules/css-loader/dist/runtime/api.js\");\n/* harmony import */ var _css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__);\n// Imports\n\n\nvar ___CSS_LOADER_EXPORT___ = _css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default()((_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default()));\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, `/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n/* START cover the case that slider is visible on mouseover */\n.monaco-editor .minimap.slider-mouseover .minimap-slider {\n\topacity: 0;\n\ttransition: opacity 100ms linear;\n}\n.monaco-editor .minimap.slider-mouseover:hover .minimap-slider {\n\topacity: 1;\n}\n.monaco-editor .minimap.slider-mouseover .minimap-slider.active {\n\topacity: 1;\n}\n/* END cover the case that slider is visible on mouseover */\n.monaco-editor .minimap-slider .minimap-slider-horizontal {\n\tbackground: var(--vscode-minimapSlider-background);\n}\n.monaco-editor .minimap-slider:hover .minimap-slider-horizontal {\n\tbackground: var(--vscode-minimapSlider-hoverBackground);\n}\n.monaco-editor .minimap-slider.active .minimap-slider-horizontal {\n\tbackground: var(--vscode-minimapSlider-activeBackground);\n}\n.monaco-editor .minimap-shadow-visible {\n\tbox-shadow: var(--vscode-scrollbar-shadow) -6px 0 6px -6px inset;\n}\n.monaco-editor .minimap-shadow-hidden {\n\tposition: absolute;\n\twidth: 0;\n}\n.monaco-editor .minimap-shadow-visible {\n\tposition: absolute;\n\tleft: -6px;\n\twidth: 6px;\n}\n.monaco-editor.no-minimap-shadow .minimap-shadow-visible {\n\tposition: absolute;\n\tleft: -1px;\n\twidth: 1px;\n}\n\n/* 0.5s fade in/out for the minimap */\n.minimap.autohide {\n\topacity: 0;\n\ttransition: opacity 0.5s;\n}\n.minimap.autohide:hover {\n\topacity: 1;\n}\n\n.monaco-editor .minimap {\n\tz-index: 5;\n}\n`, \"\"]);\n// Exports\n/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (___CSS_LOADER_EXPORT___);\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/browser/viewParts/minimap/minimap.css?./node_modules/css-loader/dist/cjs.js");
/***/ }),
/***/ "./node_modules/css-loader/dist/cjs.js!./node_modules/monaco-editor/esm/vs/editor/browser/viewParts/overlayWidgets/overlayWidgets.css":
/*!********************************************************************************************************************************************!*\
!*** ./node_modules/css-loader/dist/cjs.js!./node_modules/monaco-editor/esm/vs/editor/browser/viewParts/overlayWidgets/overlayWidgets.css ***!
\********************************************************************************************************************************************/
/***/ ((module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": () => (__WEBPACK_DEFAULT_EXPORT__)\n/* harmony export */ });\n/* harmony import */ var _css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../../../../../css-loader/dist/runtime/noSourceMaps.js */ \"./node_modules/css-loader/dist/runtime/noSourceMaps.js\");\n/* harmony import */ var _css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var _css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../../../../css-loader/dist/runtime/api.js */ \"./node_modules/css-loader/dist/runtime/api.js\");\n/* harmony import */ var _css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__);\n// Imports\n\n\nvar ___CSS_LOADER_EXPORT___ = _css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default()((_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default()));\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, `/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n.monaco-editor .overlayWidgets {\n\tposition: absolute;\n\ttop: 0;\n\tleft:0;\n}`, \"\"]);\n// Exports\n/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (___CSS_LOADER_EXPORT___);\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/browser/viewParts/overlayWidgets/overlayWidgets.css?./node_modules/css-loader/dist/cjs.js");
/***/ }),
/***/ "./node_modules/css-loader/dist/cjs.js!./node_modules/monaco-editor/esm/vs/editor/browser/viewParts/rulers/rulers.css":
/*!****************************************************************************************************************************!*\
!*** ./node_modules/css-loader/dist/cjs.js!./node_modules/monaco-editor/esm/vs/editor/browser/viewParts/rulers/rulers.css ***!
\****************************************************************************************************************************/
/***/ ((module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": () => (__WEBPACK_DEFAULT_EXPORT__)\n/* harmony export */ });\n/* harmony import */ var _css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../../../../../css-loader/dist/runtime/noSourceMaps.js */ \"./node_modules/css-loader/dist/runtime/noSourceMaps.js\");\n/* harmony import */ var _css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var _css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../../../../css-loader/dist/runtime/api.js */ \"./node_modules/css-loader/dist/runtime/api.js\");\n/* harmony import */ var _css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__);\n// Imports\n\n\nvar ___CSS_LOADER_EXPORT___ = _css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default()((_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default()));\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, `/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n.monaco-editor .view-ruler {\n\tposition: absolute;\n\ttop: 0;\n\tbox-shadow: 1px 0 0 0 var(--vscode-editorRuler-foreground) inset;\n}\n`, \"\"]);\n// Exports\n/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (___CSS_LOADER_EXPORT___);\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/browser/viewParts/rulers/rulers.css?./node_modules/css-loader/dist/cjs.js");
/***/ }),
/***/ "./node_modules/css-loader/dist/cjs.js!./node_modules/monaco-editor/esm/vs/editor/browser/viewParts/scrollDecoration/scrollDecoration.css":
/*!************************************************************************************************************************************************!*\
!*** ./node_modules/css-loader/dist/cjs.js!./node_modules/monaco-editor/esm/vs/editor/browser/viewParts/scrollDecoration/scrollDecoration.css ***!
\************************************************************************************************************************************************/
/***/ ((module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": () => (__WEBPACK_DEFAULT_EXPORT__)\n/* harmony export */ });\n/* harmony import */ var _css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../../../../../css-loader/dist/runtime/noSourceMaps.js */ \"./node_modules/css-loader/dist/runtime/noSourceMaps.js\");\n/* harmony import */ var _css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var _css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../../../../css-loader/dist/runtime/api.js */ \"./node_modules/css-loader/dist/runtime/api.js\");\n/* harmony import */ var _css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__);\n// Imports\n\n\nvar ___CSS_LOADER_EXPORT___ = _css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default()((_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default()));\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, `/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n.monaco-editor .scroll-decoration {\n\tposition: absolute;\n\ttop: 0;\n\tleft: 0;\n\theight: 6px;\n\tbox-shadow: var(--vscode-scrollbar-shadow) 0 6px 6px -6px inset;\n}\n`, \"\"]);\n// Exports\n/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (___CSS_LOADER_EXPORT___);\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/browser/viewParts/scrollDecoration/scrollDecoration.css?./node_modules/css-loader/dist/cjs.js");
/***/ }),
/***/ "./node_modules/css-loader/dist/cjs.js!./node_modules/monaco-editor/esm/vs/editor/browser/viewParts/selections/selections.css":
/*!************************************************************************************************************************************!*\
!*** ./node_modules/css-loader/dist/cjs.js!./node_modules/monaco-editor/esm/vs/editor/browser/viewParts/selections/selections.css ***!
\************************************************************************************************************************************/
/***/ ((module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": () => (__WEBPACK_DEFAULT_EXPORT__)\n/* harmony export */ });\n/* harmony import */ var _css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../../../../../css-loader/dist/runtime/noSourceMaps.js */ \"./node_modules/css-loader/dist/runtime/noSourceMaps.js\");\n/* harmony import */ var _css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var _css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../../../../css-loader/dist/runtime/api.js */ \"./node_modules/css-loader/dist/runtime/api.js\");\n/* harmony import */ var _css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__);\n// Imports\n\n\nvar ___CSS_LOADER_EXPORT___ = _css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default()((_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default()));\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, `/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n/*\n\tKeeping name short for faster parsing.\n\tcslr = core selections layer rendering (div)\n*/\n.monaco-editor .lines-content .cslr {\n\tposition: absolute;\n}\n\n.monaco-editor .focused .selected-text {\n\tbackground-color: var(--vscode-editor-selectionBackground);\n}\n\n.monaco-editor .selected-text {\n\tbackground-color: var(--vscode-editor-inactiveSelectionBackground);\n}\n\n.monaco-editor\t\t\t.top-left-radius\t\t{ border-top-left-radius: 3px; }\n.monaco-editor\t\t\t.bottom-left-radius\t\t{ border-bottom-left-radius: 3px; }\n.monaco-editor\t\t\t.top-right-radius\t\t{ border-top-right-radius: 3px; }\n.monaco-editor\t\t\t.bottom-right-radius\t{ border-bottom-right-radius: 3px; }\n\n.monaco-editor.hc-black .top-left-radius\t\t{ border-top-left-radius: 0; }\n.monaco-editor.hc-black .bottom-left-radius\t\t{ border-bottom-left-radius: 0; }\n.monaco-editor.hc-black .top-right-radius\t\t{ border-top-right-radius: 0; }\n.monaco-editor.hc-black .bottom-right-radius\t{ border-bottom-right-radius: 0; }\n\n.monaco-editor.hc-light .top-left-radius\t\t{ border-top-left-radius: 0; }\n.monaco-editor.hc-light .bottom-left-radius\t\t{ border-bottom-left-radius: 0; }\n.monaco-editor.hc-light .top-right-radius\t\t{ border-top-right-radius: 0; }\n.monaco-editor.hc-light .bottom-right-radius\t{ border-bottom-right-radius: 0; }\n`, \"\"]);\n// Exports\n/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (___CSS_LOADER_EXPORT___);\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/browser/viewParts/selections/selections.css?./node_modules/css-loader/dist/cjs.js");
/***/ }),
/***/ "./node_modules/css-loader/dist/cjs.js!./node_modules/monaco-editor/esm/vs/editor/browser/viewParts/viewCursors/viewCursors.css":
/*!**************************************************************************************************************************************!*\
!*** ./node_modules/css-loader/dist/cjs.js!./node_modules/monaco-editor/esm/vs/editor/browser/viewParts/viewCursors/viewCursors.css ***!
\**************************************************************************************************************************************/
/***/ ((module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": () => (__WEBPACK_DEFAULT_EXPORT__)\n/* harmony export */ });\n/* harmony import */ var _css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../../../../../css-loader/dist/runtime/noSourceMaps.js */ \"./node_modules/css-loader/dist/runtime/noSourceMaps.js\");\n/* harmony import */ var _css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var _css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../../../../css-loader/dist/runtime/api.js */ \"./node_modules/css-loader/dist/runtime/api.js\");\n/* harmony import */ var _css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__);\n// Imports\n\n\nvar ___CSS_LOADER_EXPORT___ = _css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default()((_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default()));\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, `/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n.monaco-editor .cursors-layer {\n\tposition: absolute;\n\ttop: 0;\n}\n\n.monaco-editor .cursors-layer > .cursor {\n\tposition: absolute;\n\toverflow: hidden;\n\tbox-sizing: border-box;\n}\n\n/* -- smooth-caret-animation -- */\n.monaco-editor .cursors-layer.cursor-smooth-caret-animation > .cursor {\n\ttransition: all 80ms;\n}\n\n/* -- block-outline-style -- */\n.monaco-editor .cursors-layer.cursor-block-outline-style > .cursor {\n\tbackground: transparent !important;\n\tborder-style: solid;\n\tborder-width: 1px;\n}\n\n/* -- underline-style -- */\n.monaco-editor .cursors-layer.cursor-underline-style > .cursor {\n\tborder-bottom-width: 2px;\n\tborder-bottom-style: solid;\n\tbackground: transparent !important;\n}\n\n/* -- underline-thin-style -- */\n.monaco-editor .cursors-layer.cursor-underline-thin-style > .cursor {\n\tborder-bottom-width: 1px;\n\tborder-bottom-style: solid;\n\tbackground: transparent !important;\n}\n\n@keyframes monaco-cursor-smooth {\n\t0%,\n\t20% {\n\t\topacity: 1;\n\t}\n\t60%,\n\t100% {\n\t\topacity: 0;\n\t}\n}\n\n@keyframes monaco-cursor-phase {\n\t0%,\n\t20% {\n\t\topacity: 1;\n\t}\n\t90%,\n\t100% {\n\t\topacity: 0;\n\t}\n}\n\n@keyframes monaco-cursor-expand {\n\t0%,\n\t20% {\n\t\ttransform: scaleY(1);\n\t}\n\t80%,\n\t100% {\n\t\ttransform: scaleY(0);\n\t}\n}\n\n.cursor-smooth {\n\tanimation: monaco-cursor-smooth 0.5s ease-in-out 0s 20 alternate;\n}\n\n.cursor-phase {\n\tanimation: monaco-cursor-phase 0.5s ease-in-out 0s 20 alternate;\n}\n\n.cursor-expand > .cursor {\n\tanimation: monaco-cursor-expand 0.5s ease-in-out 0s 20 alternate;\n}\n`, \"\"]);\n// Exports\n/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (___CSS_LOADER_EXPORT___);\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/browser/viewParts/viewCursors/viewCursors.css?./node_modules/css-loader/dist/cjs.js");
/***/ }),
/***/ "./node_modules/css-loader/dist/cjs.js!./node_modules/monaco-editor/esm/vs/editor/browser/viewParts/whitespace/whitespace.css":
/*!************************************************************************************************************************************!*\
!*** ./node_modules/css-loader/dist/cjs.js!./node_modules/monaco-editor/esm/vs/editor/browser/viewParts/whitespace/whitespace.css ***!
\************************************************************************************************************************************/
/***/ ((module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": () => (__WEBPACK_DEFAULT_EXPORT__)\n/* harmony export */ });\n/* harmony import */ var _css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../../../../../css-loader/dist/runtime/noSourceMaps.js */ \"./node_modules/css-loader/dist/runtime/noSourceMaps.js\");\n/* harmony import */ var _css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var _css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../../../../css-loader/dist/runtime/api.js */ \"./node_modules/css-loader/dist/runtime/api.js\");\n/* harmony import */ var _css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__);\n// Imports\n\n\nvar ___CSS_LOADER_EXPORT___ = _css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default()((_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default()));\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, `/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n.monaco-editor .mwh {\n\tposition: absolute;\n\tcolor: var(--vscode-editorWhitespace-foreground) !important;\n}\n`, \"\"]);\n// Exports\n/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (___CSS_LOADER_EXPORT___);\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/browser/viewParts/whitespace/whitespace.css?./node_modules/css-loader/dist/cjs.js");
/***/ }),
/***/ "./node_modules/css-loader/dist/cjs.js!./node_modules/monaco-editor/esm/vs/editor/browser/widget/diffEditor/components/accessibleDiffViewer.css":
/*!******************************************************************************************************************************************************!*\
!*** ./node_modules/css-loader/dist/cjs.js!./node_modules/monaco-editor/esm/vs/editor/browser/widget/diffEditor/components/accessibleDiffViewer.css ***!
\******************************************************************************************************************************************************/
/***/ ((module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": () => (__WEBPACK_DEFAULT_EXPORT__)\n/* harmony export */ });\n/* harmony import */ var _css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../../../../../../css-loader/dist/runtime/noSourceMaps.js */ \"./node_modules/css-loader/dist/runtime/noSourceMaps.js\");\n/* harmony import */ var _css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var _css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../../../../../css-loader/dist/runtime/api.js */ \"./node_modules/css-loader/dist/runtime/api.js\");\n/* harmony import */ var _css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__);\n// Imports\n\n\nvar ___CSS_LOADER_EXPORT___ = _css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default()((_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default()));\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, `/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n.monaco-component.diff-review {\n\tuser-select: none;\n\t-webkit-user-select: none;\n\tz-index: 99;\n}\n\n.monaco-diff-editor .diff-review {\n\tposition: absolute;\n\n}\n\n.monaco-component.diff-review .diff-review-line-number {\n\ttext-align: right;\n\tdisplay: inline-block;\n\tcolor: var(--vscode-editorLineNumber-foreground);\n}\n\n.monaco-component.diff-review .diff-review-summary {\n\tpadding-left: 10px;\n}\n\n.monaco-component.diff-review .diff-review-shadow {\n\tposition: absolute;\n\tbox-shadow: var(--vscode-scrollbar-shadow) 0 -6px 6px -6px inset;\n}\n\n.monaco-component.diff-review .diff-review-row {\n\twhite-space: pre;\n}\n\n.monaco-component.diff-review .diff-review-table {\n\tdisplay: table;\n\tmin-width: 100%;\n}\n\n.monaco-component.diff-review .diff-review-row {\n\tdisplay: table-row;\n\twidth: 100%;\n}\n\n.monaco-component.diff-review .diff-review-spacer {\n\tdisplay: inline-block;\n\twidth: 10px;\n\tvertical-align: middle;\n}\n\n.monaco-component.diff-review .diff-review-spacer > .codicon {\n\tfont-size: 9px !important;\n}\n\n.monaco-component.diff-review .diff-review-actions {\n\tdisplay: inline-block;\n\tposition: absolute;\n\tright: 10px;\n\ttop: 2px;\n\tz-index: 100;\n}\n\n.monaco-component.diff-review .diff-review-actions .action-label {\n\twidth: 16px;\n\theight: 16px;\n\tmargin: 2px 0;\n}\n\n.monaco-component.diff-review .revertButton {\n\tcursor: pointer;\n}\n`, \"\"]);\n// Exports\n/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (___CSS_LOADER_EXPORT___);\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/browser/widget/diffEditor/components/accessibleDiffViewer.css?./node_modules/css-loader/dist/cjs.js");
/***/ }),
/***/ "./node_modules/css-loader/dist/cjs.js!./node_modules/monaco-editor/esm/vs/editor/browser/widget/diffEditor/style.css":
/*!****************************************************************************************************************************!*\
!*** ./node_modules/css-loader/dist/cjs.js!./node_modules/monaco-editor/esm/vs/editor/browser/widget/diffEditor/style.css ***!
\****************************************************************************************************************************/
/***/ ((module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": () => (__WEBPACK_DEFAULT_EXPORT__)\n/* harmony export */ });\n/* harmony import */ var _css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../../../../../css-loader/dist/runtime/noSourceMaps.js */ \"./node_modules/css-loader/dist/runtime/noSourceMaps.js\");\n/* harmony import */ var _css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var _css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../../../../css-loader/dist/runtime/api.js */ \"./node_modules/css-loader/dist/runtime/api.js\");\n/* harmony import */ var _css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__);\n// Imports\n\n\nvar ___CSS_LOADER_EXPORT___ = _css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default()((_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default()));\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, `/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n.monaco-editor .diff-hidden-lines-widget {\n\twidth: 100%;\n}\n\n.monaco-editor .diff-hidden-lines {\n\theight: 0px; /* The children each have a fixed height, the transform confuses the browser */\n\ttransform: translate(0px, -10px);\n\tfont-size: 13px;\n\tline-height: 14px;\n}\n\n.monaco-editor .diff-hidden-lines:not(.dragging) .top:hover,\n.monaco-editor .diff-hidden-lines:not(.dragging) .bottom:hover,\n.monaco-editor .diff-hidden-lines .top.dragging,\n.monaco-editor .diff-hidden-lines .bottom.dragging {\n\tbackground-color: var(--vscode-focusBorder);\n}\n\n.monaco-editor .diff-hidden-lines .top,\n.monaco-editor .diff-hidden-lines .bottom {\n\ttransition: background-color 0.1s ease-out;\n\theight: 4px;\n\tbackground-color: transparent;\n\tbackground-clip: padding-box;\n\tborder-bottom: 2px solid transparent;\n\tborder-top: 4px solid transparent;\n\t/*cursor: n-resize;*/\n}\n\n.monaco-editor.draggingUnchangedRegion.canMoveTop:not(.canMoveBottom) *,\n.monaco-editor .diff-hidden-lines .top.canMoveTop:not(.canMoveBottom),\n.monaco-editor .diff-hidden-lines .bottom.canMoveTop:not(.canMoveBottom) {\n\tcursor: n-resize !important;\n}\n\n.monaco-editor.draggingUnchangedRegion:not(.canMoveTop).canMoveBottom *,\n.monaco-editor .diff-hidden-lines .top:not(.canMoveTop).canMoveBottom,\n.monaco-editor .diff-hidden-lines .bottom:not(.canMoveTop).canMoveBottom {\n\tcursor: s-resize !important;\n}\n\n.monaco-editor.draggingUnchangedRegion.canMoveTop.canMoveBottom *,\n.monaco-editor .diff-hidden-lines .top.canMoveTop.canMoveBottom,\n.monaco-editor .diff-hidden-lines .bottom.canMoveTop.canMoveBottom {\n\tcursor: ns-resize !important;\n}\n\n.monaco-editor .diff-hidden-lines .top {\n\ttransform: translate(0px, 4px);\n}\n\n.monaco-editor .diff-hidden-lines .bottom {\n\ttransform: translate(0px, -6px);\n}\n\n.monaco-editor .diff-unchanged-lines {\n\tbackground: var(--vscode-diffEditor-unchangedCodeBackground);\n}\n\n.monaco-editor .noModificationsOverlay {\n\tz-index: 1;\n\tbackground: var(--vscode-editor-background);\n\n\tdisplay: flex;\n\tjustify-content: center;\n\talign-items: center;\n}\n\n\n.monaco-editor .diff-hidden-lines .center {\n\tbackground: var(--vscode-diffEditor-unchangedRegionBackground);\n\tcolor: var(--vscode-diffEditor-unchangedRegionForeground);\n\toverflow: hidden;\n\tdisplay: block;\n\ttext-overflow: ellipsis;\n\twhite-space: nowrap;\n\n\theight: 24px;\n\tbox-shadow: inset 0 -5px 5px -7px var(--vscode-diffEditor-unchangedRegionShadow), inset 0 5px 5px -7px var(--vscode-diffEditor-unchangedRegionShadow);\n}\n\n.monaco-editor .diff-hidden-lines .center span.codicon {\n\tvertical-align: middle;\n}\n\n.monaco-editor .diff-hidden-lines .center a:hover .codicon {\n\tcursor: pointer;\n\tcolor: var(--vscode-editorLink-activeForeground) !important;\n}\n\n.monaco-editor .diff-hidden-lines div.breadcrumb-item {\n\tcursor: pointer;\n}\n\n.monaco-editor .diff-hidden-lines div.breadcrumb-item:hover {\n\tcolor: var(--vscode-editorLink-activeForeground);\n}\n\n.monaco-editor .movedOriginal {\n\tborder: 2px solid var(--vscode-diffEditor-move-border);\n}\n\n.monaco-editor .movedModified {\n\tborder: 2px solid var(--vscode-diffEditor-move-border);\n}\n\n.monaco-editor .movedOriginal.currentMove, .monaco-editor .movedModified.currentMove {\n\tborder: 2px solid var(--vscode-diffEditor-moveActive-border);\n}\n\n.monaco-diff-editor .moved-blocks-lines path.currentMove {\n\tstroke: var(--vscode-diffEditor-moveActive-border);\n}\n\n.monaco-diff-editor .moved-blocks-lines path {\n\tpointer-events: visiblestroke;\n}\n\n.monaco-diff-editor .moved-blocks-lines .arrow {\n\tfill: var(--vscode-diffEditor-move-border);\n}\n\n.monaco-diff-editor .moved-blocks-lines .arrow.currentMove {\n\tfill: var(--vscode-diffEditor-moveActive-border);\n}\n\n.monaco-diff-editor .moved-blocks-lines .arrow-rectangle {\n\tfill: var(--vscode-editor-background);\n}\n\n.monaco-diff-editor .moved-blocks-lines {\n\tposition: absolute;\n\tpointer-events: none;\n}\n\n.monaco-diff-editor .moved-blocks-lines path {\n\tfill: none;\n\tstroke: var(--vscode-diffEditor-move-border);\n\tstroke-width: 2;\n}\n\n.monaco-editor .char-delete.diff-range-empty {\n\tmargin-left: -1px;\n\tborder-left: solid var(--vscode-diffEditor-removedTextBackground) 3px;\n}\n\n.monaco-editor .char-insert.diff-range-empty {\n\tborder-left: solid var(--vscode-diffEditor-insertedTextBackground) 3px;\n}\n\n.monaco-editor .fold-unchanged {\n\tcursor: pointer;\n}\n\n.monaco-diff-editor .diff-moved-code-block {\n\tdisplay: flex;\n\tjustify-content: flex-end;\n\tmargin-top: -4px;\n}\n\n.monaco-diff-editor .diff-moved-code-block .action-bar .action-label.codicon {\n\twidth: 12px;\n\theight: 12px;\n\tfont-size: 12px;\n}\n\n/* ---------- DiffEditor ---------- */\n\n.monaco-diff-editor .diffOverview {\n\tz-index: 9;\n}\n\n.monaco-diff-editor .diffOverview .diffViewport {\n\tz-index: 10;\n}\n\n/* colors not externalized: using transparancy on background */\n.monaco-diff-editor.vs\t\t\t.diffOverview { background: rgba(0, 0, 0, 0.03); }\n.monaco-diff-editor.vs-dark\t\t.diffOverview { background: rgba(255, 255, 255, 0.01); }\n\n.monaco-scrollable-element.modified-in-monaco-diff-editor.vs\t\t.scrollbar { background: rgba(0,0,0,0); }\n.monaco-scrollable-element.modified-in-monaco-diff-editor.vs-dark\t.scrollbar { background: rgba(0,0,0,0); }\n.monaco-scrollable-element.modified-in-monaco-diff-editor.hc-black\t.scrollbar { background: none; }\n.monaco-scrollable-element.modified-in-monaco-diff-editor.hc-light\t.scrollbar { background: none; }\n\n.monaco-scrollable-element.modified-in-monaco-diff-editor .slider {\n\tz-index: 10;\n}\n.modified-in-monaco-diff-editor\t\t\t\t.slider.active { background: rgba(171, 171, 171, .4); }\n.modified-in-monaco-diff-editor.hc-black\t.slider.active { background: none; }\n.modified-in-monaco-diff-editor.hc-light\t.slider.active { background: none; }\n\n/* ---------- Diff ---------- */\n\n.monaco-editor .insert-sign,\n.monaco-diff-editor .insert-sign,\n.monaco-editor .delete-sign,\n.monaco-diff-editor .delete-sign {\n\tfont-size: 11px !important;\n\topacity: 0.7 !important;\n\tdisplay: flex !important;\n\talign-items: center;\n}\n.monaco-editor.hc-black .insert-sign,\n.monaco-diff-editor.hc-black .insert-sign,\n.monaco-editor.hc-black .delete-sign,\n.monaco-diff-editor.hc-black .delete-sign,\n.monaco-editor.hc-light .insert-sign,\n.monaco-diff-editor.hc-light .insert-sign,\n.monaco-editor.hc-light .delete-sign,\n.monaco-diff-editor.hc-light .delete-sign {\n\topacity: 1;\n}\n\n.monaco-editor .inline-deleted-margin-view-zone {\n\ttext-align: right;\n}\n.monaco-editor .inline-added-margin-view-zone {\n\ttext-align: right;\n}\n\n.monaco-editor .arrow-revert-change {\n\tz-index: 10;\n\tposition: absolute;\n}\n\n.monaco-editor .arrow-revert-change:hover {\n\tcursor: pointer;\n}\n\n/* ---------- Inline Diff ---------- */\n\n.monaco-editor .view-zones .view-lines .view-line span {\n\tdisplay: inline-block;\n}\n\n.monaco-editor .margin-view-zones .lightbulb-glyph:hover {\n\tcursor: pointer;\n}\n\n.monaco-editor .char-insert, .monaco-diff-editor .char-insert {\n\tbackground-color: var(--vscode-diffEditor-insertedTextBackground);\n}\n\n.monaco-editor .line-insert, .monaco-diff-editor .line-insert {\n\tbackground-color: var(--vscode-diffEditor-insertedLineBackground, var(--vscode-diffEditor-insertedTextBackground));\n}\n\n.monaco-editor .line-insert,\n.monaco-editor .char-insert {\n\tbox-sizing: border-box;\n\tborder: 1px solid var(--vscode-diffEditor-insertedTextBorder);\n}\n.monaco-editor.hc-black .line-insert, .monaco-editor.hc-light .line-insert,\n.monaco-editor.hc-black .char-insert, .monaco-editor.hc-light .char-insert {\n\tborder-style: dashed;\n}\n\n.monaco-editor .line-delete,\n.monaco-editor .char-delete {\n\tbox-sizing: border-box;\n\tborder: 1px solid var(--vscode-diffEditor-removedTextBorder);\n}\n.monaco-editor.hc-black .line-delete, .monaco-editor.hc-light .line-delete,\n.monaco-editor.hc-black .char-delete, .monaco-editor.hc-light .char-delete {\n\tborder-style: dashed;\n}\n\n.monaco-editor .inline-added-margin-view-zone,\n.monaco-editor .gutter-insert, .monaco-diff-editor .gutter-insert {\n\tbackground-color: var(--vscode-diffEditorGutter-insertedLineBackground, var(--vscode-diffEditor-insertedLineBackground), var(--vscode-diffEditor-insertedTextBackground));\n}\n\n.monaco-editor .char-delete, .monaco-diff-editor .char-delete {\n\tbackground-color: var(--vscode-diffEditor-removedTextBackground);\n}\n\n.monaco-editor .line-delete, .monaco-diff-editor .line-delete {\n\tbackground-color: var(--vscode-diffEditor-removedLineBackground, var(--vscode-diffEditor-removedTextBackground));\n}\n\n.monaco-editor .inline-deleted-margin-view-zone,\n.monaco-editor .gutter-delete, .monaco-diff-editor .gutter-delete {\n\tbackground-color: var(--vscode-diffEditorGutter-removedLineBackground, var(--vscode-diffEditor-removedLineBackground), var(--vscode-diffEditor-removedTextBackground));\n}\n\n.monaco-diff-editor.side-by-side .editor.modified {\n\tbox-shadow: -6px 0 5px -5px var(--vscode-scrollbar-shadow);\n\tborder-left: 1px solid var(--vscode-diffEditor-border);\n}\n\n.monaco-diff-editor .diffViewport {\n\tbackground: var(--vscode-scrollbarSlider-background);\n}\n\n.monaco-diff-editor .diffViewport:hover {\n\tbackground: var(--vscode-scrollbarSlider-hoverBackground);\n}\n\n.monaco-diff-editor .diffViewport:active {\n\tbackground: var(--vscode-scrollbarSlider-activeBackground);\n}\n\n.monaco-editor .diagonal-fill {\n\tbackground-image: linear-gradient(\n\t\t-45deg,\n\t\tvar(--vscode-diffEditor-diagonalFill) 12.5%,\n\t\t#0000 12.5%, #0000 50%,\n\t\tvar(--vscode-diffEditor-diagonalFill) 50%, var(--vscode-diffEditor-diagonalFill) 62.5%,\n\t\t#0000 62.5%, #0000 100%\n\t);\n\tbackground-size: 8px 8px;\n}\n`, \"\"]);\n// Exports\n/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (___CSS_LOADER_EXPORT___);\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/browser/widget/diffEditor/style.css?./node_modules/css-loader/dist/cjs.js");
/***/ }),
/***/ "./node_modules/css-loader/dist/cjs.js!./node_modules/monaco-editor/esm/vs/editor/browser/widget/hoverWidget/hover.css":
/*!*****************************************************************************************************************************!*\
!*** ./node_modules/css-loader/dist/cjs.js!./node_modules/monaco-editor/esm/vs/editor/browser/widget/hoverWidget/hover.css ***!
\*****************************************************************************************************************************/
/***/ ((module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": () => (__WEBPACK_DEFAULT_EXPORT__)\n/* harmony export */ });\n/* harmony import */ var _css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../../../../../css-loader/dist/runtime/noSourceMaps.js */ \"./node_modules/css-loader/dist/runtime/noSourceMaps.js\");\n/* harmony import */ var _css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var _css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../../../../css-loader/dist/runtime/api.js */ \"./node_modules/css-loader/dist/runtime/api.js\");\n/* harmony import */ var _css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__);\n// Imports\n\n\nvar ___CSS_LOADER_EXPORT___ = _css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default()((_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default()));\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, `/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n.monaco-workbench .workbench-hover {\n\tposition: relative;\n\tfont-size: 13px;\n\tline-height: 19px;\n\t/* Must be higher than sash's z-index and terminal canvases */\n\tz-index: 40;\n\toverflow: hidden;\n\tmax-width: 700px;\n\tbackground: var(--vscode-editorHoverWidget-background);\n\tborder: 1px solid var(--vscode-editorHoverWidget-border);\n\tborder-radius: 3px;\n\tcolor: var(--vscode-editorHoverWidget-foreground);\n\tbox-shadow: 0 2px 8px var(--vscode-widget-shadow);\n}\n\n.monaco-workbench .workbench-hover hr {\n\tborder-bottom: none;\n}\n\n.monaco-workbench .workbench-hover:not(.skip-fade-in) {\n\tanimation: fadein 100ms linear;\n}\n\n.monaco-workbench .workbench-hover.compact {\n\tfont-size: 12px;\n}\n\n.monaco-workbench .workbench-hover.compact .hover-contents {\n\tpadding: 2px 8px;\n}\n\n.monaco-workbench .workbench-hover-container.locked .workbench-hover {\n\toutline: 1px solid var(--vscode-editorHoverWidget-border);\n}\n.monaco-workbench .workbench-hover-container.locked .workbench-hover:focus,\n.monaco-workbench .workbench-hover-lock:focus {\n\toutline: 1px solid var(--vscode-focusBorder);\n}\n.monaco-workbench .workbench-hover-container.locked .workbench-hover-lock:hover {\n\tbackground: var(--vscode-toolbar-hoverBackground);\n}\n\n.monaco-workbench .workbench-hover-pointer {\n\tposition: absolute;\n\t/* Must be higher than workbench hover z-index */\n\tz-index: 41;\n\tpointer-events: none;\n}\n\n.monaco-workbench .workbench-hover-pointer:after {\n\tcontent: '';\n\tposition: absolute;\n\twidth: 5px;\n\theight: 5px;\n\tbackground-color: var(--vscode-editorHoverWidget-background);\n\tborder-right: 1px solid var(--vscode-editorHoverWidget-border);\n\tborder-bottom: 1px solid var(--vscode-editorHoverWidget-border);\n}\n.monaco-workbench .locked .workbench-hover-pointer:after {\n\twidth: 4px;\n\theight: 4px;\n\tborder-right-width: 2px;\n\tborder-bottom-width: 2px;\n}\n\n.monaco-workbench .workbench-hover-pointer.left { left: -3px; }\n.monaco-workbench .workbench-hover-pointer.right { right: 3px; }\n.monaco-workbench .workbench-hover-pointer.top { top: -3px; }\n.monaco-workbench .workbench-hover-pointer.bottom { bottom: 3px; }\n\n.monaco-workbench .workbench-hover-pointer.left:after {\n\ttransform: rotate(135deg);\n}\n\n.monaco-workbench .workbench-hover-pointer.right:after {\n\ttransform: rotate(315deg);\n}\n\n.monaco-workbench .workbench-hover-pointer.top:after {\n\ttransform: rotate(225deg);\n}\n\n.monaco-workbench .workbench-hover-pointer.bottom:after {\n\ttransform: rotate(45deg);\n}\n\n.monaco-workbench .workbench-hover a {\n\tcolor: var(--vscode-textLink-foreground);\n}\n\n.monaco-workbench .workbench-hover a:focus {\n\toutline: 1px solid;\n\toutline-offset: -1px;\n\ttext-decoration: underline;\n\toutline-color: var(--vscode-focusBorder);\n}\n\n.monaco-workbench .workbench-hover a:hover,\n.monaco-workbench .workbench-hover a:active {\n\tcolor: var(--vscode-textLink-activeForeground);\n}\n\n.monaco-workbench .workbench-hover code {\n\tbackground: var(--vscode-textCodeBlock-background);\n}\n\n.monaco-workbench .workbench-hover .hover-row .actions {\n\tbackground: var(--vscode-editorHoverWidget-statusBarBackground);\n}\n\n.monaco-workbench .workbench-hover.right-aligned {\n\t/* The context view service wraps strangely when it's right up against the edge without this */\n\tleft: 1px;\n}\n\n.monaco-workbench .workbench-hover.right-aligned .hover-row.status-bar .actions {\n\tflex-direction: row-reverse;\n}\n\n.monaco-workbench .workbench-hover.right-aligned .hover-row.status-bar .actions .action-container {\n\tmargin-right: 0;\n\tmargin-left: 16px;\n}\n`, \"\"]);\n// Exports\n/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (___CSS_LOADER_EXPORT___);\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/browser/widget/hoverWidget/hover.css?./node_modules/css-loader/dist/cjs.js");
/***/ }),
/***/ "./node_modules/css-loader/dist/cjs.js!./node_modules/monaco-editor/esm/vs/editor/browser/widget/markdownRenderer/browser/renderedMarkdown.css":
/*!*****************************************************************************************************************************************************!*\
!*** ./node_modules/css-loader/dist/cjs.js!./node_modules/monaco-editor/esm/vs/editor/browser/widget/markdownRenderer/browser/renderedMarkdown.css ***!
\*****************************************************************************************************************************************************/
/***/ ((module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": () => (__WEBPACK_DEFAULT_EXPORT__)\n/* harmony export */ });\n/* harmony import */ var _css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../../../../../../css-loader/dist/runtime/noSourceMaps.js */ \"./node_modules/css-loader/dist/runtime/noSourceMaps.js\");\n/* harmony import */ var _css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var _css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../../../../../css-loader/dist/runtime/api.js */ \"./node_modules/css-loader/dist/runtime/api.js\");\n/* harmony import */ var _css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__);\n// Imports\n\n\nvar ___CSS_LOADER_EXPORT___ = _css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default()((_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default()));\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, `/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n.monaco-editor .rendered-markdown kbd {\n\tbackground-color: var(--vscode-keybindingLabel-background);\n\tcolor: var(--vscode-keybindingLabel-foreground);\n\tborder-style: solid;\n\tborder-width: 1px;\n\tborder-radius: 3px;\n\tborder-color: var(--vscode-keybindingLabel-border);\n\tborder-bottom-color: var(--vscode-keybindingLabel-bottomBorder);\n\tbox-shadow: inset 0 -1px 0 var(--vscode-widget-shadow);\n\tvertical-align: middle;\n\tpadding: 1px 3px;\n}\n\n.rendered-markdown li:has(input[type=checkbox]) {\n\tlist-style-type: none;\n}\n`, \"\"]);\n// Exports\n/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (___CSS_LOADER_EXPORT___);\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/browser/widget/markdownRenderer/browser/renderedMarkdown.css?./node_modules/css-loader/dist/cjs.js");
/***/ }),
/***/ "./node_modules/css-loader/dist/cjs.js!./node_modules/monaco-editor/esm/vs/editor/browser/widget/media/editor.css":
/*!************************************************************************************************************************!*\
!*** ./node_modules/css-loader/dist/cjs.js!./node_modules/monaco-editor/esm/vs/editor/browser/widget/media/editor.css ***!
\************************************************************************************************************************/
/***/ ((module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": () => (__WEBPACK_DEFAULT_EXPORT__)\n/* harmony export */ });\n/* harmony import */ var _css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../../../../../css-loader/dist/runtime/noSourceMaps.js */ \"./node_modules/css-loader/dist/runtime/noSourceMaps.js\");\n/* harmony import */ var _css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var _css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../../../../css-loader/dist/runtime/api.js */ \"./node_modules/css-loader/dist/runtime/api.js\");\n/* harmony import */ var _css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__);\n// Imports\n\n\nvar ___CSS_LOADER_EXPORT___ = _css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default()((_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default()));\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, `/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n/* -------------------- IE10 remove auto clear button -------------------- */\n\n::-ms-clear {\n\tdisplay: none;\n}\n\n/* All widgets */\n/* I am not a big fan of this rule */\n.monaco-editor .editor-widget input {\n\tcolor: inherit;\n}\n\n/* -------------------- Editor -------------------- */\n\n.monaco-editor {\n\tposition: relative;\n\toverflow: visible;\n\t-webkit-text-size-adjust: 100%;\n\tcolor: var(--vscode-editor-foreground);\n\tbackground-color: var(--vscode-editor-background);\n}\n.monaco-editor-background {\n\tbackground-color: var(--vscode-editor-background);\n}\n.monaco-editor .rangeHighlight {\n\tbackground-color: var(--vscode-editor-rangeHighlightBackground);\n\tbox-sizing: border-box;\n\tborder: 1px solid var(--vscode-editor-rangeHighlightBorder);\n}\n.monaco-editor.hc-black .rangeHighlight, .monaco-editor.hc-light .rangeHighlight {\n\tborder-style: dotted;\n}\n.monaco-editor .symbolHighlight {\n\tbackground-color: var(--vscode-editor-symbolHighlightBackground);\n\tbox-sizing: border-box;\n\tborder: 1px solid var(--vscode-editor-symbolHighlightBorder);\n}\n.monaco-editor.hc-black .symbolHighlight, .monaco-editor.hc-light .symbolHighlight {\n\tborder-style: dotted;\n}\n\n/* -------------------- Misc -------------------- */\n\n.monaco-editor .overflow-guard {\n\tposition: relative;\n\toverflow: hidden;\n}\n\n.monaco-editor .view-overlays {\n\tposition: absolute;\n\ttop: 0;\n}\n\n/*\n.monaco-editor .auto-closed-character {\n\topacity: 0.3;\n}\n*/\n\n\n.monaco-editor .squiggly-error {\n\tborder-bottom: 4px double var(--vscode-editorError-border);\n}\n.monaco-editor .squiggly-error::before {\n\tdisplay: block;\n\tcontent: '';\n\twidth: 100%;\n\theight: 100%;\n\tbackground: var(--vscode-editorError-background);\n}\n.monaco-editor .squiggly-warning {\n\tborder-bottom: 4px double var(--vscode-editorWarning-border);\n}\n.monaco-editor .squiggly-warning::before {\n\tdisplay: block;\n\tcontent: '';\n\twidth: 100%;\n\theight: 100%;\n\tbackground: var(--vscode-editorWarning-background);\n}\n.monaco-editor .squiggly-info {\n\tborder-bottom: 4px double var(--vscode-editorInfo-border);\n}\n.monaco-editor .squiggly-info::before {\n\tdisplay: block;\n\tcontent: '';\n\twidth: 100%;\n\theight: 100%;\n\tbackground: var(--vscode-editorInfo-background);\n}\n.monaco-editor .squiggly-hint {\n\tborder-bottom: 2px dotted var(--vscode-editorHint-border);\n}\n.monaco-editor.showUnused .squiggly-unnecessary {\n\tborder-bottom: 2px dashed var(--vscode-editorUnnecessaryCode-border);\n}\n.monaco-editor.showDeprecated .squiggly-inline-deprecated {\n\ttext-decoration: line-through;\n\ttext-decoration-color: var(--vscode-editor-foreground, inherit);\n}\n`, \"\"]);\n// Exports\n/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (___CSS_LOADER_EXPORT___);\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/browser/widget/media/editor.css?./node_modules/css-loader/dist/cjs.js");
/***/ }),
/***/ "./node_modules/css-loader/dist/cjs.js!./node_modules/monaco-editor/esm/vs/editor/browser/widget/multiDiffEditorWidget/style.css":
/*!***************************************************************************************************************************************!*\
!*** ./node_modules/css-loader/dist/cjs.js!./node_modules/monaco-editor/esm/vs/editor/browser/widget/multiDiffEditorWidget/style.css ***!
\***************************************************************************************************************************************/
/***/ ((module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": () => (__WEBPACK_DEFAULT_EXPORT__)\n/* harmony export */ });\n/* harmony import */ var _css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../../../../../css-loader/dist/runtime/noSourceMaps.js */ \"./node_modules/css-loader/dist/runtime/noSourceMaps.js\");\n/* harmony import */ var _css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var _css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../../../../css-loader/dist/runtime/api.js */ \"./node_modules/css-loader/dist/runtime/api.js\");\n/* harmony import */ var _css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__);\n// Imports\n\n\nvar ___CSS_LOADER_EXPORT___ = _css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default()((_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default()));\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, `/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n.monaco-component.multiDiffEditor {\n\tbackground: var(--vscode-multiDiffEditor-background);\n\toverflow-y: hidden;\n\n\t.focused {\n\t\t--vscode-multiDiffEditor-border: var(--vscode-focusBorder);\n\t}\n\n\t.multiDiffEntry {\n\t\tdisplay: flex;\n\t\tflex-direction: column;\n\t\tflex: 1;\n\t\toverflow: hidden;\n\n\n\t\t.collapse-button {\n\t\t\tmargin: 0 5px;\n\t\t\tcursor: pointer;\n\n\t\t\ta {\n\t\t\t\tdisplay: block;\n\t\t\t}\n\t\t}\n\n\t\t.header {\n\t\t\tz-index: 1000;\n\t\t\tbackground: var(--vscode-editor-background);\n\n\t\t\t&:not(.collapsed) .header-content {\n\t\t\t\tborder-bottom: 1px solid var(--vscode-sideBarSectionHeader-border);\n\t\t\t}\n\n\t\t\t.header-content {\n\t\t\t\tmargin: 8px 8px 0px 8px;\n\t\t\t\tpadding: 8px 5px;\n\n\t\t\t\tborder-top: 1px solid var(--vscode-multiDiffEditor-border);\n\t\t\t\tborder-right: 1px solid var(--vscode-multiDiffEditor-border);\n\t\t\t\tborder-left: 1px solid var(--vscode-multiDiffEditor-border);\n\t\t\t\tborder-top-left-radius: 2px;\n\t\t\t\tborder-top-right-radius: 2px;\n\n\t\t\t\tdisplay: flex;\n\t\t\t\talign-items: center;\n\n\t\t\t\tcolor: var(--vscode-foreground);\n\t\t\t\tbackground: var(--vscode-multiDiffEditor-headerBackground);\n\n\t\t\t\t&.shadow {\n\t\t\t\t\tbox-shadow: var(--vscode-scrollbar-shadow) 0px 6px 6px -6px;\n\t\t\t\t}\n\n\t\t\t\t.file-path {\n\t\t\t\t\tdisplay: flex;\n\t\t\t\t\tflex: 1;\n\t\t\t\t\tmin-width: 0;\n\n\t\t\t\t\t.title {\n\t\t\t\t\t\tfont-size: 14px;\n\t\t\t\t\t\tline-height: 22px;\n\n\t\t\t\t\t\t&.original {\n\t\t\t\t\t\t\tflex: 1;\n\t\t\t\t\t\t\tmin-width: 0;\n\t\t\t\t\t\t\ttext-overflow: ellipsis;\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\n\t\t\t\t\t.status {\n\t\t\t\t\t\tfont-weight: 600;\n\t\t\t\t\t\topacity: 0.75;\n\t\t\t\t\t\tmargin: 0px 10px;\n\t\t\t\t\t\tline-height: 22px;\n\n\t\t\t\t\t\t/*\n\t\t\t\t\t\t\tTODO@hediet: move colors from git extension to core!\n\t\t\t\t\t\t&.renamed {\n\t\t\t\t\t\t\tcolor: v ar(--vscode-gitDecoration-renamedResourceForeground);\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\t&.deleted {\n\t\t\t\t\t\t\tcolor: v ar(--vscode-gitDecoration-deletedResourceForeground);\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\t&.added {\n\t\t\t\t\t\t\tcolor: v ar(--vscode-gitDecoration-addedResourceForeground);\n\t\t\t\t\t\t}\n\t\t\t\t\t\t*/\n\t\t\t\t\t}\n\t\t\t\t}\n\n\t\t\t\t.actions {\n\t\t\t\t\tpadding: 0 8px;\n\t\t\t\t}\n\t\t\t}\n\n\n\t\t}\n\n\t\t.editorParent {\n\t\t\tflex: 1;\n\t\t\tdisplay: flex;\n\t\t\tflex-direction: column;\n\n\t\t\tmargin-right: 8px;\n\t\t\tmargin-left: 8px;\n\n\t\t\tborder-right: 1px solid var(--vscode-multiDiffEditor-border);\n\t\t\tborder-left: 1px solid var(--vscode-multiDiffEditor-border);\n\t\t\tborder-bottom: 1px solid var(--vscode-multiDiffEditor-border);\n\t\t\tborder-radius: 2px;\n\t\t\toverflow: hidden;\n\t\t}\n\n\t\t.editorContainer {\n\t\t\tflex: 1;\n\t\t}\n\t}\n}\n`, \"\"]);\n// Exports\n/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (___CSS_LOADER_EXPORT___);\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/browser/widget/multiDiffEditorWidget/style.css?./node_modules/css-loader/dist/cjs.js");
/***/ }),
/***/ "./node_modules/css-loader/dist/cjs.js!./node_modules/monaco-editor/esm/vs/editor/contrib/anchorSelect/browser/anchorSelect.css":
/*!**************************************************************************************************************************************!*\
!*** ./node_modules/css-loader/dist/cjs.js!./node_modules/monaco-editor/esm/vs/editor/contrib/anchorSelect/browser/anchorSelect.css ***!
\**************************************************************************************************************************************/
/***/ ((module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": () => (__WEBPACK_DEFAULT_EXPORT__)\n/* harmony export */ });\n/* harmony import */ var _css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../../../../../css-loader/dist/runtime/noSourceMaps.js */ \"./node_modules/css-loader/dist/runtime/noSourceMaps.js\");\n/* harmony import */ var _css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var _css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../../../../css-loader/dist/runtime/api.js */ \"./node_modules/css-loader/dist/runtime/api.js\");\n/* harmony import */ var _css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__);\n// Imports\n\n\nvar ___CSS_LOADER_EXPORT___ = _css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default()((_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default()));\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, `/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n.monaco-editor .selection-anchor {\n\tbackground-color: #007ACC;\n\twidth: 2px !important;\n}\n`, \"\"]);\n// Exports\n/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (___CSS_LOADER_EXPORT___);\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/contrib/anchorSelect/browser/anchorSelect.css?./node_modules/css-loader/dist/cjs.js");
/***/ }),
/***/ "./node_modules/css-loader/dist/cjs.js!./node_modules/monaco-editor/esm/vs/editor/contrib/bracketMatching/browser/bracketMatching.css":
/*!********************************************************************************************************************************************!*\
!*** ./node_modules/css-loader/dist/cjs.js!./node_modules/monaco-editor/esm/vs/editor/contrib/bracketMatching/browser/bracketMatching.css ***!
\********************************************************************************************************************************************/
/***/ ((module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": () => (__WEBPACK_DEFAULT_EXPORT__)\n/* harmony export */ });\n/* harmony import */ var _css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../../../../../css-loader/dist/runtime/noSourceMaps.js */ \"./node_modules/css-loader/dist/runtime/noSourceMaps.js\");\n/* harmony import */ var _css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var _css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../../../../css-loader/dist/runtime/api.js */ \"./node_modules/css-loader/dist/runtime/api.js\");\n/* harmony import */ var _css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__);\n// Imports\n\n\nvar ___CSS_LOADER_EXPORT___ = _css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default()((_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default()));\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, `/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n.monaco-editor .bracket-match {\n\tbox-sizing: border-box;\n\tbackground-color: var(--vscode-editorBracketMatch-background);\n\tborder: 1px solid var(--vscode-editorBracketMatch-border);\n}\n`, \"\"]);\n// Exports\n/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (___CSS_LOADER_EXPORT___);\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/contrib/bracketMatching/browser/bracketMatching.css?./node_modules/css-loader/dist/cjs.js");
/***/ }),
/***/ "./node_modules/css-loader/dist/cjs.js!./node_modules/monaco-editor/esm/vs/editor/contrib/codeAction/browser/lightBulbWidget.css":
/*!***************************************************************************************************************************************!*\
!*** ./node_modules/css-loader/dist/cjs.js!./node_modules/monaco-editor/esm/vs/editor/contrib/codeAction/browser/lightBulbWidget.css ***!
\***************************************************************************************************************************************/
/***/ ((module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": () => (__WEBPACK_DEFAULT_EXPORT__)\n/* harmony export */ });\n/* harmony import */ var _css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../../../../../css-loader/dist/runtime/noSourceMaps.js */ \"./node_modules/css-loader/dist/runtime/noSourceMaps.js\");\n/* harmony import */ var _css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var _css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../../../../css-loader/dist/runtime/api.js */ \"./node_modules/css-loader/dist/runtime/api.js\");\n/* harmony import */ var _css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__);\n// Imports\n\n\nvar ___CSS_LOADER_EXPORT___ = _css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default()((_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default()));\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, `/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n.monaco-editor .lightBulbWidget {\n\tdisplay: flex;\n\talign-items: center;\n\tjustify-content: center;\n}\n\n.monaco-editor .lightBulbWidget:hover{\n\tcursor: pointer;\n}\n\n.monaco-editor .lightBulbWidget.codicon-light-bulb,\n.monaco-editor .lightBulbWidget.codicon-lightbulb-sparkle {\n\tcolor: var(--vscode-editorLightBulb-foreground);\n}\n\n.monaco-editor .lightBulbWidget.codicon-lightbulb-autofix,\n.monaco-editor .lightBulbWidget.codicon-lightbulb-sparkle-autofix {\n\tcolor: var(--vscode-editorLightBulbAutoFix-foreground, var(--vscode-editorLightBulb-foreground));\n}\n\n.monaco-editor .lightBulbWidget.codicon-sparkle-filled {\n\tcolor: var(--vscode-editorLightBulbAi-foreground, var(--vscode-icon-foreground));\n}\n\n.monaco-editor .lightBulbWidget:before {\n\tposition: relative;\n\tz-index: 2;\n}\n\n.monaco-editor .lightBulbWidget:after {\n\tposition: absolute;\n\ttop: 0;\n\tleft: 0;\n\tcontent: '';\n\tdisplay: block;\n\twidth: 100%;\n\theight: 100%;\n\topacity: 0.3;\n\tbackground-color: var(--vscode-editor-background);\n\tz-index: 1;\n}\n`, \"\"]);\n// Exports\n/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (___CSS_LOADER_EXPORT___);\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/contrib/codeAction/browser/lightBulbWidget.css?./node_modules/css-loader/dist/cjs.js");
/***/ }),
/***/ "./node_modules/css-loader/dist/cjs.js!./node_modules/monaco-editor/esm/vs/editor/contrib/codelens/browser/codelensWidget.css":
/*!************************************************************************************************************************************!*\
!*** ./node_modules/css-loader/dist/cjs.js!./node_modules/monaco-editor/esm/vs/editor/contrib/codelens/browser/codelensWidget.css ***!
\************************************************************************************************************************************/
/***/ ((module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": () => (__WEBPACK_DEFAULT_EXPORT__)\n/* harmony export */ });\n/* harmony import */ var _css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../../../../../css-loader/dist/runtime/noSourceMaps.js */ \"./node_modules/css-loader/dist/runtime/noSourceMaps.js\");\n/* harmony import */ var _css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var _css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../../../../css-loader/dist/runtime/api.js */ \"./node_modules/css-loader/dist/runtime/api.js\");\n/* harmony import */ var _css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__);\n// Imports\n\n\nvar ___CSS_LOADER_EXPORT___ = _css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default()((_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default()));\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, `/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n.monaco-editor .codelens-decoration {\n\toverflow: hidden;\n\tdisplay: inline-block;\n\ttext-overflow: ellipsis;\n\twhite-space: nowrap;\n\tcolor: var(--vscode-editorCodeLens-foreground);\n\tline-height: var(--vscode-editorCodeLens-lineHeight);\n\tfont-size: var(--vscode-editorCodeLens-fontSize);\n\tpadding-right: calc(var(--vscode-editorCodeLens-fontSize)*0.5);\n\tfont-feature-settings: var(--vscode-editorCodeLens-fontFeatureSettings);\n\tfont-family: var(--vscode-editorCodeLens-fontFamily), var(--vscode-editorCodeLens-fontFamilyDefault);\n}\n\n.monaco-editor .codelens-decoration > span,\n.monaco-editor .codelens-decoration > a {\n\tuser-select: none;\n\t-webkit-user-select: none;\n\twhite-space: nowrap;\n\tvertical-align: sub;\n}\n\n.monaco-editor .codelens-decoration > a {\n\ttext-decoration: none;\n}\n\n.monaco-editor .codelens-decoration > a:hover {\n\tcursor: pointer;\n\tcolor: var(--vscode-editorLink-activeForeground) !important;\n}\n\n.monaco-editor .codelens-decoration > a:hover .codicon {\n\tcolor: var(--vscode-editorLink-activeForeground) !important;\n}\n\n.monaco-editor .codelens-decoration .codicon {\n\tvertical-align: middle;\n\tcolor: currentColor !important;\n\tcolor: var(--vscode-editorCodeLens-foreground);\n\tline-height: var(--vscode-editorCodeLens-lineHeight);\n\tfont-size: var(--vscode-editorCodeLens-fontSize);\n}\n\n.monaco-editor .codelens-decoration > a:hover .codicon::before {\n\tcursor: pointer;\n}\n\n@keyframes fadein {\n\t0% {\n\t\topacity: 0;\n\t\tvisibility: visible;\n\t}\n\n\t100% {\n\t\topacity: 1;\n\t}\n}\n\n.monaco-editor .codelens-decoration.fadein {\n\tanimation: fadein 0.1s linear;\n}\n`, \"\"]);\n// Exports\n/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (___CSS_LOADER_EXPORT___);\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/contrib/codelens/browser/codelensWidget.css?./node_modules/css-loader/dist/cjs.js");
/***/ }),
/***/ "./node_modules/css-loader/dist/cjs.js!./node_modules/monaco-editor/esm/vs/editor/contrib/colorPicker/browser/colorPicker.css":
/*!************************************************************************************************************************************!*\
!*** ./node_modules/css-loader/dist/cjs.js!./node_modules/monaco-editor/esm/vs/editor/contrib/colorPicker/browser/colorPicker.css ***!
\************************************************************************************************************************************/
/***/ ((module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": () => (__WEBPACK_DEFAULT_EXPORT__)\n/* harmony export */ });\n/* harmony import */ var _css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../../../../../css-loader/dist/runtime/noSourceMaps.js */ \"./node_modules/css-loader/dist/runtime/noSourceMaps.js\");\n/* harmony import */ var _css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var _css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../../../../css-loader/dist/runtime/api.js */ \"./node_modules/css-loader/dist/runtime/api.js\");\n/* harmony import */ var _css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__);\n/* harmony import */ var _css_loader_dist_runtime_getUrl_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../../../../../css-loader/dist/runtime/getUrl.js */ \"./node_modules/css-loader/dist/runtime/getUrl.js\");\n/* harmony import */ var _css_loader_dist_runtime_getUrl_js__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(_css_loader_dist_runtime_getUrl_js__WEBPACK_IMPORTED_MODULE_2__);\n// Imports\n\n\n\nvar ___CSS_LOADER_URL_IMPORT_0___ = new URL(/* asset import */ __webpack_require__(/*! data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAQAAAAECAYAAACp8Z5+AAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAAZdEVYdFNvZnR3YXJlAHBhaW50Lm5ldCA0LjAuMTZEaa/1AAAAHUlEQVQYV2PYvXu3JAi7uLiAMaYAjAGTQBPYLQkAa/0Zef3qRswAAAAASUVORK5CYII= */ \"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAQAAAAECAYAAACp8Z5+AAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAAZdEVYdFNvZnR3YXJlAHBhaW50Lm5ldCA0LjAuMTZEaa/1AAAAHUlEQVQYV2PYvXu3JAi7uLiAMaYAjAGTQBPYLQkAa/0Zef3qRswAAAAASUVORK5CYII=\"), __webpack_require__.b);\nvar ___CSS_LOADER_EXPORT___ = _css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default()((_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default()));\nvar ___CSS_LOADER_URL_REPLACEMENT_0___ = _css_loader_dist_runtime_getUrl_js__WEBPACK_IMPORTED_MODULE_2___default()(___CSS_LOADER_URL_IMPORT_0___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, `/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n.colorpicker-widget {\n\theight: 190px;\n\tuser-select: none;\n\t-webkit-user-select: none;\n}\n\n/* Decoration */\n\n.colorpicker-color-decoration,\n.hc-light .colorpicker-color-decoration {\n\tborder: solid 0.1em #000;\n\tbox-sizing: border-box;\n\tmargin: 0.1em 0.2em 0 0.2em;\n\twidth: 0.8em;\n\theight: 0.8em;\n\tline-height: 0.8em;\n\tdisplay: inline-block;\n\tcursor: pointer;\n}\n\n.hc-black .colorpicker-color-decoration,\n.vs-dark .colorpicker-color-decoration {\n\tborder: solid 0.1em #eee;\n}\n\n/* Header */\n\n.colorpicker-header {\n\tdisplay: flex;\n\theight: 24px;\n\tposition: relative;\n\tbackground: url(${___CSS_LOADER_URL_REPLACEMENT_0___});\n\tbackground-size: 9px 9px;\n\timage-rendering: pixelated;\n}\n\n.colorpicker-header .picked-color {\n\twidth: 240px;\n\tdisplay: flex;\n\talign-items: center;\n\tjustify-content: center;\n\tline-height: 24px;\n\tcursor: pointer;\n\tcolor: white;\n\tflex: 1;\n\twhite-space: nowrap;\n\toverflow: hidden;\n}\n\n.colorpicker-header .picked-color .picked-color-presentation {\n\twhite-space: nowrap;\n\tmargin-left: 5px;\n\tmargin-right: 5px;\n}\n\n.colorpicker-header .picked-color .codicon {\n\tcolor: inherit;\n\tfont-size: 14px;\n}\n\n.colorpicker-header .picked-color.light {\n\tcolor: black;\n}\n\n.colorpicker-header .original-color {\n\twidth: 74px;\n\tz-index: inherit;\n\tcursor: pointer;\n}\n\n.standalone-colorpicker {\n\tcolor: var(--vscode-editorHoverWidget-foreground);\n\tbackground-color: var(--vscode-editorHoverWidget-background);\n\tborder: 1px solid var(--vscode-editorHoverWidget-border);\n}\n\n.colorpicker-header.standalone-colorpicker {\n\tborder-bottom: none;\n}\n\n.colorpicker-header .close-button {\n\tcursor: pointer;\n\tbackground-color: var(--vscode-editorHoverWidget-background);\n\tborder-left: 1px solid var(--vscode-editorHoverWidget-border);\n}\n\n.colorpicker-header .close-button-inner-div {\n\twidth: 100%;\n\theight: 100%;\n\ttext-align: center;\n}\n\n.colorpicker-header .close-button-inner-div:hover {\n\tbackground-color: var(--vscode-toolbar-hoverBackground);\n}\n\n.colorpicker-header .close-icon {\n\tpadding: 3px;\n}\n\n/* Body */\n\n.colorpicker-body {\n\tdisplay: flex;\n\tpadding: 8px;\n\tposition: relative;\n}\n\n.colorpicker-body .saturation-wrap {\n\toverflow: hidden;\n\theight: 150px;\n\tposition: relative;\n\tmin-width: 220px;\n\tflex: 1;\n}\n\n.colorpicker-body .saturation-box {\n\theight: 150px;\n\tposition: absolute;\n}\n\n.colorpicker-body .saturation-selection {\n\twidth: 9px;\n\theight: 9px;\n\tmargin: -5px 0 0 -5px;\n\tborder: 1px solid rgb(255, 255, 255);\n\tborder-radius: 100%;\n\tbox-shadow: 0px 0px 2px rgba(0, 0, 0, 0.8);\n\tposition: absolute;\n}\n\n.colorpicker-body .strip {\n\twidth: 25px;\n\theight: 150px;\n}\n\n.colorpicker-body .standalone-strip {\n\twidth: 25px;\n\theight: 122px;\n}\n\n.colorpicker-body .hue-strip {\n\tposition: relative;\n\tmargin-left: 8px;\n\tcursor: grab;\n\tbackground: linear-gradient(to bottom, #ff0000 0%, #ffff00 17%, #00ff00 33%, #00ffff 50%, #0000ff 67%, #ff00ff 83%, #ff0000 100%);\n}\n\n.colorpicker-body .opacity-strip {\n\tposition: relative;\n\tmargin-left: 8px;\n\tcursor: grab;\n\tbackground: url(${___CSS_LOADER_URL_REPLACEMENT_0___});\n\tbackground-size: 9px 9px;\n\timage-rendering: pixelated;\n}\n\n.colorpicker-body .strip.grabbing {\n\tcursor: grabbing;\n}\n\n.colorpicker-body .slider {\n\tposition: absolute;\n\ttop: 0;\n\tleft: -2px;\n\twidth: calc(100% + 4px);\n\theight: 4px;\n\tbox-sizing: border-box;\n\tborder: 1px solid rgba(255, 255, 255, 0.71);\n\tbox-shadow: 0px 0px 1px rgba(0, 0, 0, 0.85);\n}\n\n.colorpicker-body .strip .overlay {\n\theight: 150px;\n\tpointer-events: none;\n}\n\n.colorpicker-body .standalone-strip .standalone-overlay {\n\theight: 122px;\n\tpointer-events: none;\n}\n\n.standalone-colorpicker-body {\n\tdisplay: block;\n\tborder: 1px solid transparent;\n\tborder-bottom: 1px solid var(--vscode-editorHoverWidget-border);\n\toverflow: hidden;\n}\n\n.colorpicker-body .insert-button {\n\tposition: absolute;\n\theight: 20px;\n\twidth: 58px;\n\tpadding: 0px;\n\tright: 8px;\n\tbottom: 8px;\n\tbackground: var(--vscode-button-background);\n\tcolor: var(--vscode-button-foreground);\n\tborder-radius: 2px;\n\tborder: none;\n\tcursor: pointer;\n}\n\n.colorpicker-body .insert-button:hover{\n\tbackground: var(--vscode-button-hoverBackground);\n}\n`, \"\"]);\n// Exports\n/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (___CSS_LOADER_EXPORT___);\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/contrib/colorPicker/browser/colorPicker.css?./node_modules/css-loader/dist/cjs.js");
/***/ }),
/***/ "./node_modules/css-loader/dist/cjs.js!./node_modules/monaco-editor/esm/vs/editor/contrib/dnd/browser/dnd.css":
/*!********************************************************************************************************************!*\
!*** ./node_modules/css-loader/dist/cjs.js!./node_modules/monaco-editor/esm/vs/editor/contrib/dnd/browser/dnd.css ***!
\********************************************************************************************************************/
/***/ ((module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": () => (__WEBPACK_DEFAULT_EXPORT__)\n/* harmony export */ });\n/* harmony import */ var _css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../../../../../css-loader/dist/runtime/noSourceMaps.js */ \"./node_modules/css-loader/dist/runtime/noSourceMaps.js\");\n/* harmony import */ var _css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var _css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../../../../css-loader/dist/runtime/api.js */ \"./node_modules/css-loader/dist/runtime/api.js\");\n/* harmony import */ var _css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__);\n// Imports\n\n\nvar ___CSS_LOADER_EXPORT___ = _css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default()((_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default()));\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, `/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n.monaco-editor.vs .dnd-target,\n.monaco-editor.hc-light .dnd-target {\n\tborder-right: 2px dotted black;\n\tcolor: white; /* opposite of black */\n}\n.monaco-editor.vs-dark .dnd-target {\n\tborder-right: 2px dotted #AEAFAD;\n\tcolor: #51504f; /* opposite of #AEAFAD */\n}\n.monaco-editor.hc-black .dnd-target {\n\tborder-right: 2px dotted #fff;\n\tcolor: #000; /* opposite of #fff */\n}\n\n.monaco-editor.mouse-default .view-lines,\n.monaco-editor.vs-dark.mac.mouse-default .view-lines,\n.monaco-editor.hc-black.mac.mouse-default .view-lines,\n.monaco-editor.hc-light.mac.mouse-default .view-lines {\n\tcursor: default;\n}\n.monaco-editor.mouse-copy .view-lines,\n.monaco-editor.vs-dark.mac.mouse-copy .view-lines,\n.monaco-editor.hc-black.mac.mouse-copy .view-lines,\n.monaco-editor.hc-light.mac.mouse-copy .view-lines {\n\tcursor: copy;\n}\n`, \"\"]);\n// Exports\n/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (___CSS_LOADER_EXPORT___);\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/contrib/dnd/browser/dnd.css?./node_modules/css-loader/dist/cjs.js");
/***/ }),
/***/ "./node_modules/css-loader/dist/cjs.js!./node_modules/monaco-editor/esm/vs/editor/contrib/dropOrPasteInto/browser/postEditWidget.css":
/*!*******************************************************************************************************************************************!*\
!*** ./node_modules/css-loader/dist/cjs.js!./node_modules/monaco-editor/esm/vs/editor/contrib/dropOrPasteInto/browser/postEditWidget.css ***!
\*******************************************************************************************************************************************/
/***/ ((module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": () => (__WEBPACK_DEFAULT_EXPORT__)\n/* harmony export */ });\n/* harmony import */ var _css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../../../../../css-loader/dist/runtime/noSourceMaps.js */ \"./node_modules/css-loader/dist/runtime/noSourceMaps.js\");\n/* harmony import */ var _css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var _css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../../../../css-loader/dist/runtime/api.js */ \"./node_modules/css-loader/dist/runtime/api.js\");\n/* harmony import */ var _css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__);\n// Imports\n\n\nvar ___CSS_LOADER_EXPORT___ = _css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default()((_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default()));\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, `/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n.post-edit-widget {\n\tbox-shadow: 0 0 8px 2px var(--vscode-widget-shadow);\n\tborder: 1px solid var(--vscode-widget-border, transparent);\n\tborder-radius: 4px;\n\tbackground-color: var(--vscode-editorWidget-background);\n\toverflow: hidden;\n}\n\n.post-edit-widget .monaco-button {\n\tpadding: 2px;\n\tborder: none;\n\tborder-radius: 0;\n}\n\n.post-edit-widget .monaco-button:hover {\n\tbackground-color: var(--vscode-button-secondaryHoverBackground) !important;\n}\n\n.post-edit-widget .monaco-button .codicon {\n\tmargin: 0;\n}\n`, \"\"]);\n// Exports\n/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (___CSS_LOADER_EXPORT___);\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/contrib/dropOrPasteInto/browser/postEditWidget.css?./node_modules/css-loader/dist/cjs.js");
/***/ }),
/***/ "./node_modules/css-loader/dist/cjs.js!./node_modules/monaco-editor/esm/vs/editor/contrib/find/browser/findOptionsWidget.css":
/*!***********************************************************************************************************************************!*\
!*** ./node_modules/css-loader/dist/cjs.js!./node_modules/monaco-editor/esm/vs/editor/contrib/find/browser/findOptionsWidget.css ***!
\***********************************************************************************************************************************/
/***/ ((module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": () => (__WEBPACK_DEFAULT_EXPORT__)\n/* harmony export */ });\n/* harmony import */ var _css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../../../../../css-loader/dist/runtime/noSourceMaps.js */ \"./node_modules/css-loader/dist/runtime/noSourceMaps.js\");\n/* harmony import */ var _css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var _css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../../../../css-loader/dist/runtime/api.js */ \"./node_modules/css-loader/dist/runtime/api.js\");\n/* harmony import */ var _css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__);\n// Imports\n\n\nvar ___CSS_LOADER_EXPORT___ = _css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default()((_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default()));\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, `/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n.monaco-editor .findOptionsWidget {\n\tbackground-color: var(--vscode-editorWidget-background);\n\tcolor: var(--vscode-editorWidget-foreground);\n\tbox-shadow: 0 0 8px 2px var(--vscode-widget-shadow);\n\tborder: 2px solid var(--vscode-contrastBorder);\n}\n`, \"\"]);\n// Exports\n/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (___CSS_LOADER_EXPORT___);\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/contrib/find/browser/findOptionsWidget.css?./node_modules/css-loader/dist/cjs.js");
/***/ }),
/***/ "./node_modules/css-loader/dist/cjs.js!./node_modules/monaco-editor/esm/vs/editor/contrib/find/browser/findWidget.css":
/*!****************************************************************************************************************************!*\
!*** ./node_modules/css-loader/dist/cjs.js!./node_modules/monaco-editor/esm/vs/editor/contrib/find/browser/findWidget.css ***!
\****************************************************************************************************************************/
/***/ ((module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": () => (__WEBPACK_DEFAULT_EXPORT__)\n/* harmony export */ });\n/* harmony import */ var _css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../../../../../css-loader/dist/runtime/noSourceMaps.js */ \"./node_modules/css-loader/dist/runtime/noSourceMaps.js\");\n/* harmony import */ var _css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var _css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../../../../css-loader/dist/runtime/api.js */ \"./node_modules/css-loader/dist/runtime/api.js\");\n/* harmony import */ var _css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__);\n// Imports\n\n\nvar ___CSS_LOADER_EXPORT___ = _css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default()((_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default()));\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, `/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n/* Find widget */\n.monaco-editor .find-widget {\n\tposition: absolute;\n\tz-index: 35;\n\theight: 33px;\n\toverflow: hidden;\n\tline-height: 19px;\n\ttransition: transform 200ms linear;\n\tpadding: 0 4px;\n\tbox-sizing: border-box;\n\ttransform: translateY(calc(-100% - 10px)); /* shadow (10px) */\n\tbox-shadow: 0 0 8px 2px var(--vscode-widget-shadow);\n\tcolor: var(--vscode-editorWidget-foreground);\n\tborder-left: 1px solid var(--vscode-widget-border);\n\tborder-right: 1px solid var(--vscode-widget-border);\n\tborder-bottom: 1px solid var(--vscode-widget-border);\n\tborder-bottom-left-radius: 4px;\n\tborder-bottom-right-radius: 4px;\n\tbackground-color: var(--vscode-editorWidget-background);\n}\n\n.monaco-workbench.reduce-motion .monaco-editor .find-widget {\n\ttransition: transform 0ms linear;\n}\n\n.monaco-editor .find-widget textarea {\n\tmargin: 0px;\n}\n\n.monaco-editor .find-widget.hiddenEditor {\n\tdisplay: none;\n}\n\n/* Find widget when replace is toggled on */\n.monaco-editor .find-widget.replaceToggled > .replace-part {\n\tdisplay: flex;\n}\n\n.monaco-editor .find-widget.visible {\n\ttransform: translateY(0);\n}\n\n/* This outline-color rule is used to override the outline color for synthetic-focus find input. */\n.monaco-editor .find-widget .monaco-inputbox.synthetic-focus {\n\toutline: 1px solid -webkit-focus-ring-color;\n\toutline-offset: -1px;\n\toutline-color: var(--vscode-focusBorder);\n}\n\n.monaco-editor .find-widget .monaco-inputbox .input {\n\tbackground-color: transparent;\n\tmin-height: 0;\n}\n\n.monaco-editor .find-widget .monaco-findInput .input {\n\tfont-size: 13px;\n}\n\n.monaco-editor .find-widget > .find-part,\n.monaco-editor .find-widget > .replace-part {\n\tmargin: 3px 25px 0 17px;\n\tfont-size: 12px;\n\tdisplay: flex;\n}\n\n.monaco-editor .find-widget > .find-part .monaco-inputbox,\n.monaco-editor .find-widget > .replace-part .monaco-inputbox {\n\tmin-height: 25px;\n}\n\n\n.monaco-editor .find-widget > .replace-part .monaco-inputbox > .ibwrapper > .mirror {\n\tpadding-right: 22px;\n}\n\n.monaco-editor .find-widget > .find-part .monaco-inputbox > .ibwrapper > .input,\n.monaco-editor .find-widget > .find-part .monaco-inputbox > .ibwrapper > .mirror,\n.monaco-editor .find-widget > .replace-part .monaco-inputbox > .ibwrapper > .input,\n.monaco-editor .find-widget > .replace-part .monaco-inputbox > .ibwrapper > .mirror {\n\tpadding-top: 2px;\n\tpadding-bottom: 2px;\n}\n\n.monaco-editor .find-widget > .find-part .find-actions {\n\theight: 25px;\n\tdisplay: flex;\n\talign-items: center;\n}\n\n.monaco-editor .find-widget > .replace-part .replace-actions {\n\theight: 25px;\n\tdisplay: flex;\n\talign-items: center;\n}\n\n.monaco-editor .find-widget .monaco-findInput {\n\tvertical-align: middle;\n\tdisplay: flex;\n\tflex:1;\n}\n\n.monaco-editor .find-widget .monaco-findInput .monaco-scrollable-element {\n\t/* Make sure textarea inherits the width correctly */\n\twidth: 100%;\n}\n\n.monaco-editor .find-widget .monaco-findInput .monaco-scrollable-element .scrollbar.vertical {\n\t/* Hide vertical scrollbar */\n\topacity: 0;\n}\n\n.monaco-editor .find-widget .matchesCount {\n\tdisplay: flex;\n\tflex: initial;\n\tmargin: 0 0 0 3px;\n\tpadding: 2px 0 0 2px;\n\theight: 25px;\n\tvertical-align: middle;\n\tbox-sizing: border-box;\n\ttext-align: center;\n\tline-height: 23px;\n}\n\n.monaco-editor .find-widget .button {\n\twidth: 16px;\n\theight: 16px;\n\tpadding: 3px;\n\tborder-radius: 5px;\n\tdisplay: flex;\n\tflex: initial;\n\tmargin-left: 3px;\n\tbackground-position: center center;\n\tbackground-repeat: no-repeat;\n\tcursor: pointer;\n\tdisplay: flex;\n\talign-items: center;\n\tjustify-content: center;\n}\n\n/* find in selection button */\n.monaco-editor .find-widget .codicon-find-selection {\n\twidth: 22px;\n\theight: 22px;\n\tpadding: 3px;\n\tborder-radius: 5px;\n}\n\n.monaco-editor .find-widget .button.left {\n\tmargin-left: 0;\n\tmargin-right: 3px;\n}\n\n.monaco-editor .find-widget .button.wide {\n\twidth: auto;\n\tpadding: 1px 6px;\n\ttop: -1px;\n}\n\n.monaco-editor .find-widget .button.toggle {\n\tposition: absolute;\n\ttop: 0;\n\tleft: 3px;\n\twidth: 18px;\n\theight: 100%;\n\tborder-radius: 0;\n\tbox-sizing: border-box;\n}\n\n.monaco-editor .find-widget .button.toggle.disabled {\n\tdisplay: none;\n}\n\n.monaco-editor .find-widget .disabled {\n\tcolor: var(--vscode-disabledForeground);\n\tcursor: default;\n}\n\n.monaco-editor .find-widget > .replace-part {\n\tdisplay: none;\n}\n\n.monaco-editor .find-widget > .replace-part > .monaco-findInput {\n\tposition: relative;\n\tdisplay: flex;\n\tvertical-align: middle;\n\tflex: auto;\n\tflex-grow: 0;\n\tflex-shrink: 0;\n}\n\n.monaco-editor .find-widget > .replace-part > .monaco-findInput > .controls {\n\tposition: absolute;\n\ttop: 3px;\n\tright: 2px;\n}\n\n/* REDUCED */\n.monaco-editor .find-widget.reduced-find-widget .matchesCount {\n\tdisplay:none;\n}\n\n/* NARROW (SMALLER THAN REDUCED) */\n.monaco-editor .find-widget.narrow-find-widget {\n\tmax-width: 257px !important;\n}\n\n/* COLLAPSED (SMALLER THAN NARROW) */\n.monaco-editor .find-widget.collapsed-find-widget {\n\tmax-width: 170px !important;\n}\n\n.monaco-editor .find-widget.collapsed-find-widget .button.previous,\n.monaco-editor .find-widget.collapsed-find-widget .button.next,\n.monaco-editor .find-widget.collapsed-find-widget .button.replace,\n.monaco-editor .find-widget.collapsed-find-widget .button.replace-all,\n.monaco-editor .find-widget.collapsed-find-widget > .find-part .monaco-findInput .controls {\n\tdisplay:none;\n}\n\n.monaco-editor .find-widget.no-results .matchesCount {\n\tcolor: var(--vscode-errorForeground);\n}\n\n.monaco-editor .findMatch {\n\tanimation-duration: 0;\n\tanimation-name: inherit !important;\n\tbackground-color: var(--vscode-editor-findMatchHighlightBackground);\n}\n\n.monaco-editor .currentFindMatch {\n\tbackground-color: var(--vscode-editor-findMatchBackground);\n\tborder: 2px solid var(--vscode-editor-findMatchBorder);\n\tpadding: 1px;\n\tbox-sizing: border-box;\n}\n\n.monaco-editor .findScope {\n\tbackground-color: var(--vscode-editor-findRangeHighlightBackground);\n}\n\n.monaco-editor .find-widget .monaco-sash {\n\tleft: 0 !important;\n\tbackground-color: var(--vscode-editorWidget-resizeBorder, var(--vscode-editorWidget-border));\n}\n\n.monaco-editor.hc-black .find-widget .button:before {\n\tposition: relative;\n\ttop: 1px;\n\tleft: 2px;\n}\n\n/* Action bars */\n.monaco-editor .find-widget .button:not(.disabled):hover,\n.monaco-editor .find-widget .codicon-find-selection:hover {\n\tbackground-color: var(--vscode-toolbar-hoverBackground) !important;\n}\n\n.monaco-editor.findMatch {\n\tbackground-color: var(--vscode-editor-findMatchHighlightBackground);\n}\n\n.monaco-editor.currentFindMatch {\n\tbackground-color: var(--vscode-editor-findMatchBackground);\n}\n\n.monaco-editor.findScope {\n\tbackground-color: var(--vscode-editor-findRangeHighlightBackground);\n}\n\n.monaco-editor.findMatch {\n\tbackground-color: var(--vscode-editorWidget-background);\n}\n\n/* Close button position. */\n.monaco-editor .find-widget > .button.codicon-widget-close {\n\tposition: absolute;\n\ttop: 5px;\n\tright: 4px;\n}\n`, \"\"]);\n// Exports\n/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (___CSS_LOADER_EXPORT___);\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/contrib/find/browser/findWidget.css?./node_modules/css-loader/dist/cjs.js");
/***/ }),
/***/ "./node_modules/css-loader/dist/cjs.js!./node_modules/monaco-editor/esm/vs/editor/contrib/folding/browser/folding.css":
/*!****************************************************************************************************************************!*\
!*** ./node_modules/css-loader/dist/cjs.js!./node_modules/monaco-editor/esm/vs/editor/contrib/folding/browser/folding.css ***!
\****************************************************************************************************************************/
/***/ ((module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": () => (__WEBPACK_DEFAULT_EXPORT__)\n/* harmony export */ });\n/* harmony import */ var _css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../../../../../css-loader/dist/runtime/noSourceMaps.js */ \"./node_modules/css-loader/dist/runtime/noSourceMaps.js\");\n/* harmony import */ var _css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var _css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../../../../css-loader/dist/runtime/api.js */ \"./node_modules/css-loader/dist/runtime/api.js\");\n/* harmony import */ var _css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__);\n// Imports\n\n\nvar ___CSS_LOADER_EXPORT___ = _css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default()((_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default()));\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, `/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n.monaco-editor .margin-view-overlays .codicon-folding-manual-collapsed,\n.monaco-editor .margin-view-overlays .codicon-folding-manual-expanded,\n.monaco-editor .margin-view-overlays .codicon-folding-expanded,\n.monaco-editor .margin-view-overlays .codicon-folding-collapsed {\n\tcursor: pointer;\n\topacity: 0;\n\ttransition: opacity 0.5s;\n\tdisplay: flex;\n\talign-items: center;\n\tjustify-content: center;\n\tfont-size: 140%;\n\tmargin-left: 2px;\n}\n\n.monaco-workbench.reduce-motion .monaco-editor .margin-view-overlays .codicon-folding-manual-collapsed,\n.monaco-workbench.reduce-motion .monaco-editor .margin-view-overlays .codicon-folding-manual-expanded,\n.monaco-workbench.reduce-motion .monaco-editor .margin-view-overlays .codicon-folding-expanded,\n.monaco-workbench.reduce-motion .monaco-editor .margin-view-overlays .codicon-folding-collapsed {\n\ttransition: initial;\n}\n\n.monaco-editor .margin-view-overlays:hover .codicon,\n.monaco-editor .margin-view-overlays .codicon.codicon-folding-collapsed,\n.monaco-editor .margin-view-overlays .codicon.codicon-folding-manual-collapsed,\n.monaco-editor .margin-view-overlays .codicon.alwaysShowFoldIcons {\n\topacity: 1;\n}\n\n.monaco-editor .inline-folded:after {\n\tcolor: grey;\n\tmargin: 0.1em 0.2em 0 0.2em;\n\tcontent: \"\\\\22EF\"; /* ellipses unicode character */\n\tdisplay: inline;\n\tline-height: 1em;\n\tcursor: pointer;\n}\n\n.monaco-editor .folded-background {\n\tbackground-color: var(--vscode-editor-foldBackground);\n}\n\n.monaco-editor .cldr.codicon.codicon-folding-expanded,\n.monaco-editor .cldr.codicon.codicon-folding-collapsed,\n.monaco-editor .cldr.codicon.codicon-folding-manual-expanded,\n.monaco-editor .cldr.codicon.codicon-folding-manual-collapsed {\n\tcolor: var(--vscode-editorGutter-foldingControlForeground) !important;\n}\n\n`, \"\"]);\n// Exports\n/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (___CSS_LOADER_EXPORT___);\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/contrib/folding/browser/folding.css?./node_modules/css-loader/dist/cjs.js");
/***/ }),
/***/ "./node_modules/css-loader/dist/cjs.js!./node_modules/monaco-editor/esm/vs/editor/contrib/gotoError/browser/media/gotoErrorWidget.css":
/*!********************************************************************************************************************************************!*\
!*** ./node_modules/css-loader/dist/cjs.js!./node_modules/monaco-editor/esm/vs/editor/contrib/gotoError/browser/media/gotoErrorWidget.css ***!
\********************************************************************************************************************************************/
/***/ ((module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": () => (__WEBPACK_DEFAULT_EXPORT__)\n/* harmony export */ });\n/* harmony import */ var _css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../../../../../../css-loader/dist/runtime/noSourceMaps.js */ \"./node_modules/css-loader/dist/runtime/noSourceMaps.js\");\n/* harmony import */ var _css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var _css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../../../../../css-loader/dist/runtime/api.js */ \"./node_modules/css-loader/dist/runtime/api.js\");\n/* harmony import */ var _css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__);\n// Imports\n\n\nvar ___CSS_LOADER_EXPORT___ = _css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default()((_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default()));\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, `/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n/* marker zone */\n\n.monaco-editor .peekview-widget .head .peekview-title .severity-icon {\n\tdisplay: inline-block;\n\tvertical-align: text-top;\n\tmargin-right: 4px;\n}\n\n.monaco-editor .marker-widget {\n\ttext-overflow: ellipsis;\n\twhite-space: nowrap;\n}\n\n.monaco-editor .marker-widget > .stale {\n\topacity: 0.6;\n\tfont-style: italic;\n}\n\n.monaco-editor .marker-widget .title {\n\tdisplay: inline-block;\n\tpadding-right: 5px;\n}\n\n.monaco-editor .marker-widget .descriptioncontainer {\n\tposition: absolute;\n\twhite-space: pre;\n\tuser-select: text;\n\t-webkit-user-select: text;\n\tpadding: 8px 12px 0 20px;\n}\n\n.monaco-editor .marker-widget .descriptioncontainer .message {\n\tdisplay: flex;\n\tflex-direction: column;\n}\n\n.monaco-editor .marker-widget .descriptioncontainer .message .details {\n\tpadding-left: 6px;\n}\n\n.monaco-editor .marker-widget .descriptioncontainer .message .source,\n.monaco-editor .marker-widget .descriptioncontainer .message span.code {\n\topacity: 0.6;\n}\n\n.monaco-editor .marker-widget .descriptioncontainer .message a.code-link {\n\topacity: 0.6;\n\tcolor: inherit;\n}\n\n.monaco-editor .marker-widget .descriptioncontainer .message a.code-link:before {\n\tcontent: '(';\n}\n\n.monaco-editor .marker-widget .descriptioncontainer .message a.code-link:after {\n\tcontent: ')';\n}\n\n.monaco-editor .marker-widget .descriptioncontainer .message a.code-link > span {\n\ttext-decoration: underline;\n\t/** Hack to force underline to show **/\n\tborder-bottom: 1px solid transparent;\n\ttext-underline-position: under;\n\tcolor: var(--vscode-textLink-activeForeground);\n}\n\n.monaco-editor .marker-widget .descriptioncontainer .filename {\n\tcursor: pointer;\n\tcolor: var(--vscode-textLink-activeForeground);\n}\n`, \"\"]);\n// Exports\n/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (___CSS_LOADER_EXPORT___);\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/contrib/gotoError/browser/media/gotoErrorWidget.css?./node_modules/css-loader/dist/cjs.js");
/***/ }),
/***/ "./node_modules/css-loader/dist/cjs.js!./node_modules/monaco-editor/esm/vs/editor/contrib/gotoSymbol/browser/link/goToDefinitionAtPosition.css":
/*!*****************************************************************************************************************************************************!*\
!*** ./node_modules/css-loader/dist/cjs.js!./node_modules/monaco-editor/esm/vs/editor/contrib/gotoSymbol/browser/link/goToDefinitionAtPosition.css ***!
\*****************************************************************************************************************************************************/
/***/ ((module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": () => (__WEBPACK_DEFAULT_EXPORT__)\n/* harmony export */ });\n/* harmony import */ var _css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../../../../../../css-loader/dist/runtime/noSourceMaps.js */ \"./node_modules/css-loader/dist/runtime/noSourceMaps.js\");\n/* harmony import */ var _css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var _css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../../../../../css-loader/dist/runtime/api.js */ \"./node_modules/css-loader/dist/runtime/api.js\");\n/* harmony import */ var _css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__);\n// Imports\n\n\nvar ___CSS_LOADER_EXPORT___ = _css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default()((_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default()));\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, `/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n.monaco-editor .goto-definition-link {\n\ttext-decoration: underline;\n\tcursor: pointer;\n\tcolor: var(--vscode-editorLink-activeForeground) !important;\n}\n`, \"\"]);\n// Exports\n/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (___CSS_LOADER_EXPORT___);\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/contrib/gotoSymbol/browser/link/goToDefinitionAtPosition.css?./node_modules/css-loader/dist/cjs.js");
/***/ }),
/***/ "./node_modules/css-loader/dist/cjs.js!./node_modules/monaco-editor/esm/vs/editor/contrib/gotoSymbol/browser/peek/referencesWidget.css":
/*!*********************************************************************************************************************************************!*\
!*** ./node_modules/css-loader/dist/cjs.js!./node_modules/monaco-editor/esm/vs/editor/contrib/gotoSymbol/browser/peek/referencesWidget.css ***!
\*********************************************************************************************************************************************/
/***/ ((module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": () => (__WEBPACK_DEFAULT_EXPORT__)\n/* harmony export */ });\n/* harmony import */ var _css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../../../../../../css-loader/dist/runtime/noSourceMaps.js */ \"./node_modules/css-loader/dist/runtime/noSourceMaps.js\");\n/* harmony import */ var _css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var _css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../../../../../css-loader/dist/runtime/api.js */ \"./node_modules/css-loader/dist/runtime/api.js\");\n/* harmony import */ var _css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__);\n// Imports\n\n\nvar ___CSS_LOADER_EXPORT___ = _css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default()((_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default()));\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, `/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n/* -- zone widget */\n.monaco-editor .zone-widget .zone-widget-container.reference-zone-widget {\n\tborder-top-width: 1px;\n\tborder-bottom-width: 1px;\n}\n\n.monaco-editor .reference-zone-widget .inline {\n\tdisplay: inline-block;\n\tvertical-align: top;\n}\n\n.monaco-editor .reference-zone-widget .messages {\n\theight: 100%;\n\twidth: 100%;\n\ttext-align: center;\n\tpadding: 3em 0;\n}\n\n.monaco-editor .reference-zone-widget .ref-tree {\n\tline-height: 23px;\n\tbackground-color: var(--vscode-peekViewResult-background);\n\tcolor: var(--vscode-peekViewResult-lineForeground);\n}\n\n.monaco-editor .reference-zone-widget .ref-tree .reference {\n\ttext-overflow: ellipsis;\n\toverflow: hidden;\n}\n\n.monaco-editor .reference-zone-widget .ref-tree .reference-file {\n\tdisplay: inline-flex;\n\twidth: 100%;\n\theight: 100%;\n\tcolor: var(--vscode-peekViewResult-fileForeground);\n}\n\n.monaco-editor .reference-zone-widget .ref-tree .monaco-list:focus .selected .reference-file {\n\tcolor: inherit !important;\n}\n\n.monaco-editor .reference-zone-widget .ref-tree .monaco-list:focus .monaco-list-rows > .monaco-list-row.selected:not(.highlighted) {\n\tbackground-color: var(--vscode-peekViewResult-selectionBackground);\n\tcolor: var(--vscode-peekViewResult-selectionForeground) !important;\n}\n\n.monaco-editor .reference-zone-widget .ref-tree .reference-file .count {\n\tmargin-right: 12px;\n\tmargin-left: auto;\n}\n\n.monaco-editor .reference-zone-widget .ref-tree .referenceMatch .highlight {\n\tbackground-color: var(--vscode-peekViewResult-matchHighlightBackground);\n}\n\n.monaco-editor .reference-zone-widget .preview .reference-decoration {\n\tbackground-color: var(--vscode-peekViewEditor-matchHighlightBackground);\n\tborder: 2px solid var(--vscode-peekViewEditor-matchHighlightBorder);\n\tbox-sizing: border-box;\n}\n\n.monaco-editor .reference-zone-widget .preview .monaco-editor .monaco-editor-background,\n.monaco-editor .reference-zone-widget .preview .monaco-editor .inputarea.ime-input {\n\tbackground-color: var(--vscode-peekViewEditor-background);\n}\n\n.monaco-editor .reference-zone-widget .preview .monaco-editor .margin {\n\tbackground-color: var(--vscode-peekViewEditorGutter-background);\n}\n\n/* High Contrast Theming */\n\n.monaco-editor.hc-black .reference-zone-widget .ref-tree .reference-file,\n.monaco-editor.hc-light .reference-zone-widget .ref-tree .reference-file {\n\tfont-weight: bold;\n}\n\n.monaco-editor.hc-black .reference-zone-widget .ref-tree .referenceMatch .highlight,\n.monaco-editor.hc-light .reference-zone-widget .ref-tree .referenceMatch .highlight {\n\tborder: 1px dotted var(--vscode-contrastActiveBorder, transparent);\n\tbox-sizing: border-box;\n}\n`, \"\"]);\n// Exports\n/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (___CSS_LOADER_EXPORT___);\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/contrib/gotoSymbol/browser/peek/referencesWidget.css?./node_modules/css-loader/dist/cjs.js");
/***/ }),
/***/ "./node_modules/css-loader/dist/cjs.js!./node_modules/monaco-editor/esm/vs/editor/contrib/hover/browser/hover.css":
/*!************************************************************************************************************************!*\
!*** ./node_modules/css-loader/dist/cjs.js!./node_modules/monaco-editor/esm/vs/editor/contrib/hover/browser/hover.css ***!
\************************************************************************************************************************/
/***/ ((module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": () => (__WEBPACK_DEFAULT_EXPORT__)\n/* harmony export */ });\n/* harmony import */ var _css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../../../../../css-loader/dist/runtime/noSourceMaps.js */ \"./node_modules/css-loader/dist/runtime/noSourceMaps.js\");\n/* harmony import */ var _css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var _css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../../../../css-loader/dist/runtime/api.js */ \"./node_modules/css-loader/dist/runtime/api.js\");\n/* harmony import */ var _css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__);\n// Imports\n\n\nvar ___CSS_LOADER_EXPORT___ = _css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default()((_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default()));\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, `/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n.monaco-editor .hoverHighlight {\n\tbackground-color: var(--vscode-editor-hoverHighlightBackground);\n}\n\n.monaco-editor .monaco-hover {\n\tcolor: var(--vscode-editorHoverWidget-foreground);\n\tbackground-color: var(--vscode-editorHoverWidget-background);\n\tborder: 1px solid var(--vscode-editorHoverWidget-border);\n\tborder-radius: 3px;\n}\n\n.monaco-editor .monaco-hover a {\n\tcolor: var(--vscode-textLink-foreground);\n}\n\n.monaco-editor .monaco-hover a:hover {\n\tcolor: var(--vscode-textLink-activeForeground);\n}\n\n.monaco-editor .monaco-hover .hover-row .actions {\n\tbackground-color: var(--vscode-editorHoverWidget-statusBarBackground);\n}\n\n.monaco-editor .monaco-hover code {\n\tbackground-color: var(--vscode-textCodeBlock-background);\n}\n\n\n`, \"\"]);\n// Exports\n/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (___CSS_LOADER_EXPORT___);\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/contrib/hover/browser/hover.css?./node_modules/css-loader/dist/cjs.js");
/***/ }),
/***/ "./node_modules/css-loader/dist/cjs.js!./node_modules/monaco-editor/esm/vs/editor/contrib/inPlaceReplace/browser/inPlaceReplace.css":
/*!******************************************************************************************************************************************!*\
!*** ./node_modules/css-loader/dist/cjs.js!./node_modules/monaco-editor/esm/vs/editor/contrib/inPlaceReplace/browser/inPlaceReplace.css ***!
\******************************************************************************************************************************************/
/***/ ((module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": () => (__WEBPACK_DEFAULT_EXPORT__)\n/* harmony export */ });\n/* harmony import */ var _css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../../../../../css-loader/dist/runtime/noSourceMaps.js */ \"./node_modules/css-loader/dist/runtime/noSourceMaps.js\");\n/* harmony import */ var _css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var _css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../../../../css-loader/dist/runtime/api.js */ \"./node_modules/css-loader/dist/runtime/api.js\");\n/* harmony import */ var _css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__);\n// Imports\n\n\nvar ___CSS_LOADER_EXPORT___ = _css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default()((_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default()));\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, `/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n\n.monaco-editor.vs .valueSetReplacement {\n\toutline: solid 2px var(--vscode-editorBracketMatch-border);\n}\n`, \"\"]);\n// Exports\n/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (___CSS_LOADER_EXPORT___);\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/contrib/inPlaceReplace/browser/inPlaceReplace.css?./node_modules/css-loader/dist/cjs.js");
/***/ }),
/***/ "./node_modules/css-loader/dist/cjs.js!./node_modules/monaco-editor/esm/vs/editor/contrib/inlineCompletions/browser/ghostText.css":
/*!****************************************************************************************************************************************!*\
!*** ./node_modules/css-loader/dist/cjs.js!./node_modules/monaco-editor/esm/vs/editor/contrib/inlineCompletions/browser/ghostText.css ***!
\****************************************************************************************************************************************/
/***/ ((module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": () => (__WEBPACK_DEFAULT_EXPORT__)\n/* harmony export */ });\n/* harmony import */ var _css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../../../../../css-loader/dist/runtime/noSourceMaps.js */ \"./node_modules/css-loader/dist/runtime/noSourceMaps.js\");\n/* harmony import */ var _css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var _css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../../../../css-loader/dist/runtime/api.js */ \"./node_modules/css-loader/dist/runtime/api.js\");\n/* harmony import */ var _css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__);\n// Imports\n\n\nvar ___CSS_LOADER_EXPORT___ = _css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default()((_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default()));\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, `/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n.monaco-editor .suggest-preview-additional-widget {\n\twhite-space: nowrap;\n}\n\n.monaco-editor .suggest-preview-additional-widget .content-spacer {\n\tcolor: transparent;\n\twhite-space: pre;\n}\n\n.monaco-editor .suggest-preview-additional-widget .button {\n\tdisplay: inline-block;\n\tcursor: pointer;\n\ttext-decoration: underline;\n\ttext-underline-position: under;\n}\n\n.monaco-editor .ghost-text-hidden {\n\topacity: 0;\n\tfont-size: 0;\n}\n\n.monaco-editor .ghost-text-decoration, .monaco-editor .suggest-preview-text .ghost-text {\n\tfont-style: italic;\n}\n\n.monaco-editor .inline-completion-text-to-replace {\n\ttext-decoration: underline;\n\ttext-underline-position: under;\n}\n\n.monaco-editor .ghost-text-decoration,\n.monaco-editor .ghost-text-decoration-preview,\n.monaco-editor .suggest-preview-text .ghost-text {\n\tcolor: var(--vscode-editorGhostText-foreground) !important;\n\tbackground-color: var(--vscode-editorGhostText-background);\n\tborder: 1px solid var(--vscode-editorGhostText-border);\n}\n`, \"\"]);\n// Exports\n/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (___CSS_LOADER_EXPORT___);\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/contrib/inlineCompletions/browser/ghostText.css?./node_modules/css-loader/dist/cjs.js");
/***/ }),
/***/ "./node_modules/css-loader/dist/cjs.js!./node_modules/monaco-editor/esm/vs/editor/contrib/inlineCompletions/browser/inlineCompletionsHintsWidget.css":
/*!***********************************************************************************************************************************************************!*\
!*** ./node_modules/css-loader/dist/cjs.js!./node_modules/monaco-editor/esm/vs/editor/contrib/inlineCompletions/browser/inlineCompletionsHintsWidget.css ***!
\***********************************************************************************************************************************************************/
/***/ ((module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": () => (__WEBPACK_DEFAULT_EXPORT__)\n/* harmony export */ });\n/* harmony import */ var _css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../../../../../css-loader/dist/runtime/noSourceMaps.js */ \"./node_modules/css-loader/dist/runtime/noSourceMaps.js\");\n/* harmony import */ var _css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var _css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../../../../css-loader/dist/runtime/api.js */ \"./node_modules/css-loader/dist/runtime/api.js\");\n/* harmony import */ var _css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__);\n// Imports\n\n\nvar ___CSS_LOADER_EXPORT___ = _css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default()((_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default()));\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, `/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n.monaco-editor .inlineSuggestionsHints.withBorder {\n\tz-index: 39;\n\tcolor: var(--vscode-editorHoverWidget-foreground);\n\tbackground-color: var(--vscode-editorHoverWidget-background);\n\tborder: 1px solid var(--vscode-editorHoverWidget-border);\n}\n\n.monaco-editor .inlineSuggestionsHints a {\n\tcolor: var(--vscode-foreground);\n}\n\n.monaco-editor .inlineSuggestionsHints a:hover {\n\tcolor: var(--vscode-foreground);\n}\n\n.monaco-editor .inlineSuggestionsHints .keybinding {\n\tdisplay: flex;\n\tmargin-left: 4px;\n\topacity: 0.6;\n}\n\n.monaco-editor .inlineSuggestionsHints .keybinding .monaco-keybinding-key {\n\tfont-size: 8px;\n\tpadding: 2px 3px;\n}\n\n.monaco-editor .inlineSuggestionsHints .availableSuggestionCount a {\n\tdisplay: flex;\n\tmin-width: 19px;\n\tjustify-content: center;\n}\n\n.monaco-editor .inlineSuggestionStatusBarItemLabel {\n\tmargin-right: 2px;\n}\n`, \"\"]);\n// Exports\n/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (___CSS_LOADER_EXPORT___);\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/contrib/inlineCompletions/browser/inlineCompletionsHintsWidget.css?./node_modules/css-loader/dist/cjs.js");
/***/ }),
/***/ "./node_modules/css-loader/dist/cjs.js!./node_modules/monaco-editor/esm/vs/editor/contrib/inlineEdit/browser/inlineEdit.css":
/*!**********************************************************************************************************************************!*\
!*** ./node_modules/css-loader/dist/cjs.js!./node_modules/monaco-editor/esm/vs/editor/contrib/inlineEdit/browser/inlineEdit.css ***!
\**********************************************************************************************************************************/
/***/ ((module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": () => (__WEBPACK_DEFAULT_EXPORT__)\n/* harmony export */ });\n/* harmony import */ var _css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../../../../../css-loader/dist/runtime/noSourceMaps.js */ \"./node_modules/css-loader/dist/runtime/noSourceMaps.js\");\n/* harmony import */ var _css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var _css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../../../../css-loader/dist/runtime/api.js */ \"./node_modules/css-loader/dist/runtime/api.js\");\n/* harmony import */ var _css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__);\n// Imports\n\n\nvar ___CSS_LOADER_EXPORT___ = _css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default()((_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default()));\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, `/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n.monaco-editor .inline-edit-remove {\n\tbackground-color: var(--vscode-editorGhostText-background);\n\tfont-style: italic;\n\ttext-decoration: line-through;\n}\n\n.monaco-editor .inline-edit-remove.backgroundColoring {\n\tbackground-color: var(--vscode-diffEditor-removedLineBackground);\n}\n\n.monaco-editor .inline-edit-hidden {\n\topacity: 0;\n\tfont-size: 0;\n}\n\n.monaco-editor .inline-edit-decoration, .monaco-editor .suggest-preview-text .inline-edit {\n\tfont-style: italic;\n}\n\n.monaco-editor .inline-completion-text-to-replace {\n\ttext-decoration: underline;\n\ttext-underline-position: under;\n}\n\n.monaco-editor .inline-edit-decoration,\n.monaco-editor .inline-edit-decoration-preview,\n.monaco-editor .suggest-preview-text .inline-edit {\n\tcolor: var(--vscode-editorGhostText-foreground) !important;\n\tbackground-color: var(--vscode-editorGhostText-background);\n\tborder: 1px solid var(--vscode-editorGhostText-border);\n}\n\n\n`, \"\"]);\n// Exports\n/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (___CSS_LOADER_EXPORT___);\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/contrib/inlineEdit/browser/inlineEdit.css?./node_modules/css-loader/dist/cjs.js");
/***/ }),
/***/ "./node_modules/css-loader/dist/cjs.js!./node_modules/monaco-editor/esm/vs/editor/contrib/inlineEdit/browser/inlineEditHintsWidget.css":
/*!*********************************************************************************************************************************************!*\
!*** ./node_modules/css-loader/dist/cjs.js!./node_modules/monaco-editor/esm/vs/editor/contrib/inlineEdit/browser/inlineEditHintsWidget.css ***!
\*********************************************************************************************************************************************/
/***/ ((module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": () => (__WEBPACK_DEFAULT_EXPORT__)\n/* harmony export */ });\n/* harmony import */ var _css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../../../../../css-loader/dist/runtime/noSourceMaps.js */ \"./node_modules/css-loader/dist/runtime/noSourceMaps.js\");\n/* harmony import */ var _css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var _css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../../../../css-loader/dist/runtime/api.js */ \"./node_modules/css-loader/dist/runtime/api.js\");\n/* harmony import */ var _css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__);\n// Imports\n\n\nvar ___CSS_LOADER_EXPORT___ = _css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default()((_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default()));\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, `/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n.monaco-editor .inlineEditHints.withBorder {\n\tz-index: 39;\n\tcolor: var(--vscode-editorHoverWidget-foreground);\n\tbackground-color: var(--vscode-editorHoverWidget-background);\n\tborder: 1px solid var(--vscode-editorHoverWidget-border);\n}\n\n.monaco-editor .inlineEditHints a {\n\tcolor: var(--vscode-foreground);\n}\n\n.monaco-editor .inlineEditHints a:hover {\n\tcolor: var(--vscode-foreground);\n}\n\n.monaco-editor .inlineEditHints .keybinding {\n\tdisplay: flex;\n\tmargin-left: 4px;\n\topacity: 0.6;\n}\n\n.monaco-editor .inlineEditHints .keybinding .monaco-keybinding-key {\n\tfont-size: 8px;\n\tpadding: 2px 3px;\n}\n\n.monaco-editor .inlineEditStatusBarItemLabel {\n\tmargin-right: 2px;\n}\n`, \"\"]);\n// Exports\n/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (___CSS_LOADER_EXPORT___);\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/contrib/inlineEdit/browser/inlineEditHintsWidget.css?./node_modules/css-loader/dist/cjs.js");
/***/ }),
/***/ "./node_modules/css-loader/dist/cjs.js!./node_modules/monaco-editor/esm/vs/editor/contrib/inlineProgress/browser/inlineProgressWidget.css":
/*!************************************************************************************************************************************************!*\
!*** ./node_modules/css-loader/dist/cjs.js!./node_modules/monaco-editor/esm/vs/editor/contrib/inlineProgress/browser/inlineProgressWidget.css ***!
\************************************************************************************************************************************************/
/***/ ((module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": () => (__WEBPACK_DEFAULT_EXPORT__)\n/* harmony export */ });\n/* harmony import */ var _css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../../../../../css-loader/dist/runtime/noSourceMaps.js */ \"./node_modules/css-loader/dist/runtime/noSourceMaps.js\");\n/* harmony import */ var _css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var _css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../../../../css-loader/dist/runtime/api.js */ \"./node_modules/css-loader/dist/runtime/api.js\");\n/* harmony import */ var _css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__);\n// Imports\n\n\nvar ___CSS_LOADER_EXPORT___ = _css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default()((_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default()));\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, `/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n.inline-editor-progress-decoration {\n\tdisplay: inline-block;\n\twidth: 1em;\n\theight: 1em;\n}\n\n.inline-progress-widget {\n\tdisplay: flex !important;\n\tjustify-content: center;\n\talign-items: center;\n}\n\n.inline-progress-widget .icon {\n\tfont-size: 80% !important;\n}\n\n.inline-progress-widget:hover .icon {\n\tfont-size: 90% !important;\n\tanimation: none;\n}\n\n.inline-progress-widget:hover .icon::before {\n\tcontent: \"\\\\ea76\"; /* codicon-x */\n}\n`, \"\"]);\n// Exports\n/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (___CSS_LOADER_EXPORT___);\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/contrib/inlineProgress/browser/inlineProgressWidget.css?./node_modules/css-loader/dist/cjs.js");
/***/ }),
/***/ "./node_modules/css-loader/dist/cjs.js!./node_modules/monaco-editor/esm/vs/editor/contrib/linkedEditing/browser/linkedEditing.css":
/*!****************************************************************************************************************************************!*\
!*** ./node_modules/css-loader/dist/cjs.js!./node_modules/monaco-editor/esm/vs/editor/contrib/linkedEditing/browser/linkedEditing.css ***!
\****************************************************************************************************************************************/
/***/ ((module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": () => (__WEBPACK_DEFAULT_EXPORT__)\n/* harmony export */ });\n/* harmony import */ var _css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../../../../../css-loader/dist/runtime/noSourceMaps.js */ \"./node_modules/css-loader/dist/runtime/noSourceMaps.js\");\n/* harmony import */ var _css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var _css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../../../../css-loader/dist/runtime/api.js */ \"./node_modules/css-loader/dist/runtime/api.js\");\n/* harmony import */ var _css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__);\n// Imports\n\n\nvar ___CSS_LOADER_EXPORT___ = _css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default()((_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default()));\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, `/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n.monaco-editor .linked-editing-decoration {\n\tbackground-color: var(--vscode-editor-linkedEditingBackground);\n\n\t/* Ensure decoration is visible even if range is empty */\n\tmin-width: 1px;\n}\n`, \"\"]);\n// Exports\n/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (___CSS_LOADER_EXPORT___);\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/contrib/linkedEditing/browser/linkedEditing.css?./node_modules/css-loader/dist/cjs.js");
/***/ }),
/***/ "./node_modules/css-loader/dist/cjs.js!./node_modules/monaco-editor/esm/vs/editor/contrib/links/browser/links.css":
/*!************************************************************************************************************************!*\
!*** ./node_modules/css-loader/dist/cjs.js!./node_modules/monaco-editor/esm/vs/editor/contrib/links/browser/links.css ***!
\************************************************************************************************************************/
/***/ ((module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": () => (__WEBPACK_DEFAULT_EXPORT__)\n/* harmony export */ });\n/* harmony import */ var _css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../../../../../css-loader/dist/runtime/noSourceMaps.js */ \"./node_modules/css-loader/dist/runtime/noSourceMaps.js\");\n/* harmony import */ var _css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var _css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../../../../css-loader/dist/runtime/api.js */ \"./node_modules/css-loader/dist/runtime/api.js\");\n/* harmony import */ var _css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__);\n// Imports\n\n\nvar ___CSS_LOADER_EXPORT___ = _css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default()((_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default()));\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, `/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n.monaco-editor .detected-link,\n.monaco-editor .detected-link-active {\n\ttext-decoration: underline;\n\ttext-underline-position: under;\n}\n\n.monaco-editor .detected-link-active {\n\tcursor: pointer;\n\tcolor: var(--vscode-editorLink-activeForeground) !important;\n}\n`, \"\"]);\n// Exports\n/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (___CSS_LOADER_EXPORT___);\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/contrib/links/browser/links.css?./node_modules/css-loader/dist/cjs.js");
/***/ }),
/***/ "./node_modules/css-loader/dist/cjs.js!./node_modules/monaco-editor/esm/vs/editor/contrib/message/browser/messageController.css":
/*!**************************************************************************************************************************************!*\
!*** ./node_modules/css-loader/dist/cjs.js!./node_modules/monaco-editor/esm/vs/editor/contrib/message/browser/messageController.css ***!
\**************************************************************************************************************************************/
/***/ ((module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": () => (__WEBPACK_DEFAULT_EXPORT__)\n/* harmony export */ });\n/* harmony import */ var _css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../../../../../css-loader/dist/runtime/noSourceMaps.js */ \"./node_modules/css-loader/dist/runtime/noSourceMaps.js\");\n/* harmony import */ var _css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var _css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../../../../css-loader/dist/runtime/api.js */ \"./node_modules/css-loader/dist/runtime/api.js\");\n/* harmony import */ var _css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__);\n// Imports\n\n\nvar ___CSS_LOADER_EXPORT___ = _css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default()((_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default()));\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, `/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n.monaco-editor .monaco-editor-overlaymessage {\n\tpadding-bottom: 8px;\n\tz-index: 10000;\n}\n\n.monaco-editor .monaco-editor-overlaymessage.below {\n\tpadding-bottom: 0;\n\tpadding-top: 8px;\n\tz-index: 10000;\n}\n\n@keyframes fadeIn {\n\tfrom { opacity: 0; }\n\tto { opacity: 1; }\n}\n.monaco-editor .monaco-editor-overlaymessage.fadeIn {\n\tanimation: fadeIn 150ms ease-out;\n}\n\n@keyframes fadeOut {\n\tfrom { opacity: 1; }\n\tto { opacity: 0; }\n}\n.monaco-editor .monaco-editor-overlaymessage.fadeOut {\n\tanimation: fadeOut 100ms ease-out;\n}\n\n.monaco-editor .monaco-editor-overlaymessage .message {\n\tpadding: 2px 4px;\n\tcolor: var(--vscode-editorHoverWidget-foreground);\n\tbackground-color: var(--vscode-editorHoverWidget-background);\n\tborder: 1px solid var(--vscode-inputValidation-infoBorder);\n\tborder-radius: 3px;\n}\n\n.monaco-editor .monaco-editor-overlaymessage .message p {\n\tmargin-block: 0px;\n}\n\n.monaco-editor .monaco-editor-overlaymessage .message a {\n\tcolor: var(--vscode-textLink-foreground);\n}\n\n.monaco-editor .monaco-editor-overlaymessage .message a:hover {\n\tcolor: var(--vscode-textLink-activeForeground);\n}\n\n.monaco-editor.hc-black .monaco-editor-overlaymessage .message,\n.monaco-editor.hc-light .monaco-editor-overlaymessage .message {\n\tborder-width: 2px;\n}\n\n.monaco-editor .monaco-editor-overlaymessage .anchor {\n\twidth: 0 !important;\n\theight: 0 !important;\n\tborder-color: transparent;\n\tborder-style: solid;\n\tz-index: 1000;\n\tborder-width: 8px;\n\tposition: absolute;\n\tleft: 2px;\n}\n\n.monaco-editor .monaco-editor-overlaymessage .anchor.top {\n\tborder-bottom-color: var(--vscode-inputValidation-infoBorder);\n}\n\n.monaco-editor .monaco-editor-overlaymessage .anchor.below {\n\tborder-top-color: var(--vscode-inputValidation-infoBorder);\n}\n\n.monaco-editor .monaco-editor-overlaymessage:not(.below) .anchor.top,\n.monaco-editor .monaco-editor-overlaymessage.below .anchor.below {\n\tdisplay: none;\n}\n\n.monaco-editor .monaco-editor-overlaymessage.below .anchor.top {\n\tdisplay: inherit;\n\ttop: -8px;\n}\n`, \"\"]);\n// Exports\n/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (___CSS_LOADER_EXPORT___);\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/contrib/message/browser/messageController.css?./node_modules/css-loader/dist/cjs.js");
/***/ }),
/***/ "./node_modules/css-loader/dist/cjs.js!./node_modules/monaco-editor/esm/vs/editor/contrib/parameterHints/browser/parameterHints.css":
/*!******************************************************************************************************************************************!*\
!*** ./node_modules/css-loader/dist/cjs.js!./node_modules/monaco-editor/esm/vs/editor/contrib/parameterHints/browser/parameterHints.css ***!
\******************************************************************************************************************************************/
/***/ ((module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": () => (__WEBPACK_DEFAULT_EXPORT__)\n/* harmony export */ });\n/* harmony import */ var _css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../../../../../css-loader/dist/runtime/noSourceMaps.js */ \"./node_modules/css-loader/dist/runtime/noSourceMaps.js\");\n/* harmony import */ var _css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var _css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../../../../css-loader/dist/runtime/api.js */ \"./node_modules/css-loader/dist/runtime/api.js\");\n/* harmony import */ var _css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__);\n// Imports\n\n\nvar ___CSS_LOADER_EXPORT___ = _css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default()((_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default()));\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, `/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n.monaco-editor .parameter-hints-widget {\n\t/* Must be higher than the sash's z-index and terminal canvases but lower than the suggest widget */\n\tz-index: 39;\n\tdisplay: flex;\n\tflex-direction: column;\n\tline-height: 1.5em;\n\tcursor: default;\n\tcolor: var(--vscode-editorHoverWidget-foreground);\n\tbackground-color: var(--vscode-editorHoverWidget-background);\n\tborder: 1px solid var(--vscode-editorHoverWidget-border);\n}\n\n.hc-black .monaco-editor .parameter-hints-widget,\n.hc-light .monaco-editor .parameter-hints-widget {\n\tborder-width: 2px;\n}\n\n.monaco-editor .parameter-hints-widget > .phwrapper {\n\tmax-width: 440px;\n\tdisplay: flex;\n\tflex-direction: row;\n}\n\n.monaco-editor .parameter-hints-widget.multiple {\n\tmin-height: 3.3em;\n\tpadding: 0;\n}\n\n.monaco-editor .parameter-hints-widget.multiple .body::before {\n\tcontent: \"\";\n\tdisplay: block;\n\theight: 100%;\n\tposition: absolute;\n\topacity: 0.5;\n\tborder-left: 1px solid var(--vscode-editorHoverWidget-border);\n}\n\n.monaco-editor .parameter-hints-widget p,\n.monaco-editor .parameter-hints-widget ul {\n\tmargin: 8px 0;\n}\n\n.monaco-editor .parameter-hints-widget .monaco-scrollable-element,\n.monaco-editor .parameter-hints-widget .body {\n\tdisplay: flex;\n\tflex: 1;\n\tflex-direction: column;\n\tmin-height: 100%;\n}\n\n.monaco-editor .parameter-hints-widget .signature {\n\tpadding: 4px 5px;\n\tposition: relative;\n}\n\n.monaco-editor .parameter-hints-widget .signature.has-docs::after {\n\tcontent: \"\";\n\tdisplay: block;\n\tposition: absolute;\n\tleft: 0;\n\twidth: 100%;\n\tpadding-top: 4px;\n\topacity: 0.5;\n\tborder-bottom: 1px solid var(--vscode-editorHoverWidget-border);\n}\n\n.monaco-editor .parameter-hints-widget .docs {\n\tpadding: 0 10px 0 5px;\n\twhite-space: pre-wrap;\n}\n\n.monaco-editor .parameter-hints-widget .docs.empty {\n\tdisplay: none;\n}\n\n.monaco-editor .parameter-hints-widget .docs a {\n\tcolor: var(--vscode-textLink-foreground);\n}\n\n.monaco-editor .parameter-hints-widget .docs a:hover {\n\tcolor: var(--vscode-textLink-activeForeground);\n\tcursor: pointer;\n}\n\n.monaco-editor .parameter-hints-widget .docs .markdown-docs {\n\twhite-space: initial;\n}\n\n.monaco-editor .parameter-hints-widget .docs code {\n\tfont-family: var(--monaco-monospace-font);\n\tborder-radius: 3px;\n\tpadding: 0 0.4em;\n\tbackground-color: var(--vscode-textCodeBlock-background);\n}\n\n.monaco-editor .parameter-hints-widget .docs .monaco-tokenized-source,\n.monaco-editor .parameter-hints-widget .docs .code {\n\twhite-space: pre-wrap;\n}\n\n.monaco-editor .parameter-hints-widget .controls {\n\tdisplay: none;\n\tflex-direction: column;\n\talign-items: center;\n\tmin-width: 22px;\n\tjustify-content: flex-end;\n}\n\n.monaco-editor .parameter-hints-widget.multiple .controls {\n\tdisplay: flex;\n\tpadding: 0 2px;\n}\n\n.monaco-editor .parameter-hints-widget.multiple .button {\n\twidth: 16px;\n\theight: 16px;\n\tbackground-repeat: no-repeat;\n\tcursor: pointer;\n}\n\n.monaco-editor .parameter-hints-widget .button.previous {\n\tbottom: 24px;\n}\n\n.monaco-editor .parameter-hints-widget .overloads {\n\ttext-align: center;\n\theight: 12px;\n\tline-height: 12px;\n\tfont-family: var(--monaco-monospace-font);\n}\n\n.monaco-editor .parameter-hints-widget .signature .parameter.active {\n\tcolor: var(--vscode-editorHoverWidget-highlightForeground);\n\tfont-weight: bold;\n}\n\n.monaco-editor .parameter-hints-widget .documentation-parameter > .parameter {\n\tfont-weight: bold;\n\tmargin-right: 0.5em;\n}\n`, \"\"]);\n// Exports\n/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (___CSS_LOADER_EXPORT___);\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/contrib/parameterHints/browser/parameterHints.css?./node_modules/css-loader/dist/cjs.js");
/***/ }),
/***/ "./node_modules/css-loader/dist/cjs.js!./node_modules/monaco-editor/esm/vs/editor/contrib/peekView/browser/media/peekViewWidget.css":
/*!******************************************************************************************************************************************!*\
!*** ./node_modules/css-loader/dist/cjs.js!./node_modules/monaco-editor/esm/vs/editor/contrib/peekView/browser/media/peekViewWidget.css ***!
\******************************************************************************************************************************************/
/***/ ((module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": () => (__WEBPACK_DEFAULT_EXPORT__)\n/* harmony export */ });\n/* harmony import */ var _css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../../../../../../css-loader/dist/runtime/noSourceMaps.js */ \"./node_modules/css-loader/dist/runtime/noSourceMaps.js\");\n/* harmony import */ var _css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var _css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../../../../../css-loader/dist/runtime/api.js */ \"./node_modules/css-loader/dist/runtime/api.js\");\n/* harmony import */ var _css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__);\n// Imports\n\n\nvar ___CSS_LOADER_EXPORT___ = _css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default()((_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default()));\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, `/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n.monaco-editor .peekview-widget .head {\n\tbox-sizing: border-box;\n\tdisplay: flex;\n\tjustify-content: space-between;\n\tflex-wrap: nowrap;\n}\n\n.monaco-editor .peekview-widget .head .peekview-title {\n\tdisplay: flex;\n\talign-items: baseline;\n\tfont-size: 13px;\n\tmargin-left: 20px;\n\tmin-width: 0;\n\ttext-overflow: ellipsis;\n\toverflow: hidden;\n}\n\n.monaco-editor .peekview-widget .head .peekview-title.clickable {\n\tcursor: pointer;\n}\n\n.monaco-editor .peekview-widget .head .peekview-title .dirname:not(:empty) {\n\tfont-size: 0.9em;\n\tmargin-left: 0.5em;\n}\n\n.monaco-editor .peekview-widget .head .peekview-title .meta {\n\twhite-space: nowrap;\n\toverflow: hidden;\n\ttext-overflow: ellipsis;\n}\n\n.monaco-editor .peekview-widget .head .peekview-title .dirname {\n\toverflow: hidden;\n\ttext-overflow: ellipsis;\n\twhite-space: nowrap;\n}\n\n.monaco-editor .peekview-widget .head .peekview-title .filename {\n\toverflow: hidden;\n\ttext-overflow: ellipsis;\n\twhite-space: nowrap;\n}\n\n.monaco-editor .peekview-widget .head .peekview-title .meta:not(:empty)::before {\n\tcontent: '-';\n\tpadding: 0 0.3em;\n}\n\n.monaco-editor .peekview-widget .head .peekview-actions {\n\tflex: 1;\n\ttext-align: right;\n\tpadding-right: 2px;\n}\n\n.monaco-editor .peekview-widget .head .peekview-actions > .monaco-action-bar {\n\tdisplay: inline-block;\n}\n\n.monaco-editor .peekview-widget .head .peekview-actions > .monaco-action-bar,\n.monaco-editor .peekview-widget .head .peekview-actions > .monaco-action-bar > .actions-container {\n\theight: 100%;\n}\n\n.monaco-editor .peekview-widget > .body {\n\tborder-top: 1px solid;\n\tposition: relative;\n}\n\n.monaco-editor .peekview-widget .head .peekview-title .codicon {\n\tmargin-right: 4px;\n\talign-self: center;\n}\n\n.monaco-editor .peekview-widget .monaco-list .monaco-list-row.focused .codicon {\n\tcolor: inherit !important;\n}\n`, \"\"]);\n// Exports\n/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (___CSS_LOADER_EXPORT___);\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/contrib/peekView/browser/media/peekViewWidget.css?./node_modules/css-loader/dist/cjs.js");
/***/ }),
/***/ "./node_modules/css-loader/dist/cjs.js!./node_modules/monaco-editor/esm/vs/editor/contrib/rename/browser/renameInputField.css":
/*!************************************************************************************************************************************!*\
!*** ./node_modules/css-loader/dist/cjs.js!./node_modules/monaco-editor/esm/vs/editor/contrib/rename/browser/renameInputField.css ***!
\************************************************************************************************************************************/
/***/ ((module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": () => (__WEBPACK_DEFAULT_EXPORT__)\n/* harmony export */ });\n/* harmony import */ var _css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../../../../../css-loader/dist/runtime/noSourceMaps.js */ \"./node_modules/css-loader/dist/runtime/noSourceMaps.js\");\n/* harmony import */ var _css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var _css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../../../../css-loader/dist/runtime/api.js */ \"./node_modules/css-loader/dist/runtime/api.js\");\n/* harmony import */ var _css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__);\n// Imports\n\n\nvar ___CSS_LOADER_EXPORT___ = _css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default()((_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default()));\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, `/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n.monaco-editor .rename-box {\n\tz-index: 100;\n\tcolor: inherit;\n\tborder-radius: 4px;\n}\n\n.monaco-editor .rename-box.preview {\n\tpadding: 4px 4px 0 4px;\n}\n\n.monaco-editor .rename-box .rename-input {\n\tpadding: 3px;\n\tborder-radius: 2px;\n\twidth: calc(100% - 8px); /* 4px padding on each side */\n}\n\n.monaco-editor .rename-box .rename-label {\n\tdisplay: none;\n\topacity: .8;\n}\n\n.monaco-editor .rename-box.preview .rename-label {\n\tdisplay: inherit;\n}\n`, \"\"]);\n// Exports\n/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (___CSS_LOADER_EXPORT___);\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/contrib/rename/browser/renameInputField.css?./node_modules/css-loader/dist/cjs.js");
/***/ }),
/***/ "./node_modules/css-loader/dist/cjs.js!./node_modules/monaco-editor/esm/vs/editor/contrib/snippet/browser/snippetSession.css":
/*!***********************************************************************************************************************************!*\
!*** ./node_modules/css-loader/dist/cjs.js!./node_modules/monaco-editor/esm/vs/editor/contrib/snippet/browser/snippetSession.css ***!
\***********************************************************************************************************************************/
/***/ ((module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": () => (__WEBPACK_DEFAULT_EXPORT__)\n/* harmony export */ });\n/* harmony import */ var _css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../../../../../css-loader/dist/runtime/noSourceMaps.js */ \"./node_modules/css-loader/dist/runtime/noSourceMaps.js\");\n/* harmony import */ var _css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var _css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../../../../css-loader/dist/runtime/api.js */ \"./node_modules/css-loader/dist/runtime/api.js\");\n/* harmony import */ var _css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__);\n// Imports\n\n\nvar ___CSS_LOADER_EXPORT___ = _css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default()((_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default()));\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, `/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n.monaco-editor .snippet-placeholder {\n\tmin-width: 2px;\n\toutline-style: solid;\n\toutline-width: 1px;\n\tbackground-color: var(--vscode-editor-snippetTabstopHighlightBackground, transparent);\n\toutline-color: var(--vscode-editor-snippetTabstopHighlightBorder, transparent);\n}\n\n.monaco-editor .finish-snippet-placeholder {\n\toutline-style: solid;\n\toutline-width: 1px;\n\tbackground-color: var(--vscode-editor-snippetFinalTabstopHighlightBackground, transparent);\n\toutline-color: var(--vscode-editor-snippetFinalTabstopHighlightBorder, transparent);\n}\n`, \"\"]);\n// Exports\n/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (___CSS_LOADER_EXPORT___);\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/contrib/snippet/browser/snippetSession.css?./node_modules/css-loader/dist/cjs.js");
/***/ }),
/***/ "./node_modules/css-loader/dist/cjs.js!./node_modules/monaco-editor/esm/vs/editor/contrib/stickyScroll/browser/stickyScroll.css":
/*!**************************************************************************************************************************************!*\
!*** ./node_modules/css-loader/dist/cjs.js!./node_modules/monaco-editor/esm/vs/editor/contrib/stickyScroll/browser/stickyScroll.css ***!
\**************************************************************************************************************************************/
/***/ ((module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": () => (__WEBPACK_DEFAULT_EXPORT__)\n/* harmony export */ });\n/* harmony import */ var _css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../../../../../css-loader/dist/runtime/noSourceMaps.js */ \"./node_modules/css-loader/dist/runtime/noSourceMaps.js\");\n/* harmony import */ var _css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var _css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../../../../css-loader/dist/runtime/api.js */ \"./node_modules/css-loader/dist/runtime/api.js\");\n/* harmony import */ var _css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__);\n// Imports\n\n\nvar ___CSS_LOADER_EXPORT___ = _css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default()((_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default()));\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, `/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n.monaco-editor .sticky-widget {\n\toverflow: hidden;\n}\n\n.monaco-editor .sticky-widget-line-numbers {\n\tfloat: left;\n\tbackground-color: inherit;\n}\n\n.monaco-editor .sticky-widget-lines-scrollable {\n\tdisplay: inline-block;\n\tposition: absolute;\n\toverflow: hidden;\n\twidth: var(--vscode-editorStickyScroll-scrollableWidth);\n\tbackground-color: inherit;\n}\n\n.monaco-editor .sticky-widget-lines {\n\tposition: absolute;\n\tbackground-color: inherit;\n}\n\n.monaco-editor .sticky-line-number, .monaco-editor .sticky-line-content {\n\tcolor: var(--vscode-editorLineNumber-foreground);\n\twhite-space: nowrap;\n\tdisplay: inline-block;\n\tposition: absolute;\n\tbackground-color: inherit;\n}\n\n.monaco-editor .sticky-line-number .codicon-folding-expanded,\n.monaco-editor .sticky-line-number .codicon-folding-collapsed {\n\tfloat: right;\n\ttransition: var(--vscode-editorStickyScroll-foldingOpacityTransition);\n}\n\n.monaco-editor .sticky-line-content {\n\twidth: var(--vscode-editorStickyScroll-scrollableWidth);\n\tbackground-color: inherit;\n\twhite-space: nowrap;\n}\n\n.monaco-editor .sticky-line-number-inner {\n\tdisplay: inline-block;\n\ttext-align: right;\n}\n\n.monaco-editor .sticky-widget {\n\tborder-bottom: 1px solid var(--vscode-editorStickyScroll-border);\n}\n\n.monaco-editor .sticky-line-content:hover {\n\tbackground-color: var(--vscode-editorStickyScrollHover-background);\n\tcursor: pointer;\n}\n\n.monaco-editor .sticky-widget {\n\twidth: 100%;\n\tbox-shadow: var(--vscode-editorStickyScroll-shadow) 0 3px 2px -2px;\n\tz-index: 4;\n\tbackground-color: var(--vscode-editorStickyScroll-background);\n}\n\n.monaco-editor .sticky-widget.peek {\n\tbackground-color: var(--vscode-peekViewEditorStickyScroll-background);\n}\n`, \"\"]);\n// Exports\n/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (___CSS_LOADER_EXPORT___);\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/contrib/stickyScroll/browser/stickyScroll.css?./node_modules/css-loader/dist/cjs.js");
/***/ }),
/***/ "./node_modules/css-loader/dist/cjs.js!./node_modules/monaco-editor/esm/vs/editor/contrib/suggest/browser/media/suggest.css":
/*!**********************************************************************************************************************************!*\
!*** ./node_modules/css-loader/dist/cjs.js!./node_modules/monaco-editor/esm/vs/editor/contrib/suggest/browser/media/suggest.css ***!
\**********************************************************************************************************************************/
/***/ ((module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": () => (__WEBPACK_DEFAULT_EXPORT__)\n/* harmony export */ });\n/* harmony import */ var _css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../../../../../../css-loader/dist/runtime/noSourceMaps.js */ \"./node_modules/css-loader/dist/runtime/noSourceMaps.js\");\n/* harmony import */ var _css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var _css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../../../../../css-loader/dist/runtime/api.js */ \"./node_modules/css-loader/dist/runtime/api.js\");\n/* harmony import */ var _css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__);\n// Imports\n\n\nvar ___CSS_LOADER_EXPORT___ = _css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default()((_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default()));\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, `/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n/* Suggest widget*/\n\n.monaco-editor .suggest-widget {\n\twidth: 430px;\n\tz-index: 40;\n\tdisplay: flex;\n\tflex-direction: column;\n\tborder-radius: 3px;\n}\n\n.monaco-editor .suggest-widget.message {\n\tflex-direction: row;\n\talign-items: center;\n}\n\n.monaco-editor .suggest-widget,\n.monaco-editor .suggest-details {\n\tflex: 0 1 auto;\n\twidth: 100%;\n\tborder-style: solid;\n\tborder-width: 1px;\n\tborder-color: var(--vscode-editorSuggestWidget-border);\n\tbackground-color: var(--vscode-editorSuggestWidget-background);\n}\n\n.monaco-editor.hc-black .suggest-widget,\n.monaco-editor.hc-black .suggest-details,\n.monaco-editor.hc-light .suggest-widget,\n.monaco-editor.hc-light .suggest-details {\n\tborder-width: 2px;\n}\n\n/* Styles for status bar part */\n\n\n.monaco-editor .suggest-widget .suggest-status-bar {\n\tbox-sizing: border-box;\n\tdisplay: none;\n\tflex-flow: row nowrap;\n\tjustify-content: space-between;\n\twidth: 100%;\n\tfont-size: 80%;\n\tpadding: 0 4px 0 4px;\n\tborder-top: 1px solid var(--vscode-editorSuggestWidget-border);\n\toverflow: hidden;\n}\n\n.monaco-editor .suggest-widget.with-status-bar .suggest-status-bar {\n\tdisplay: flex;\n}\n\n.monaco-editor .suggest-widget .suggest-status-bar .left {\n\tpadding-right: 8px;\n}\n\n.monaco-editor .suggest-widget.with-status-bar .suggest-status-bar .action-label {\n\tcolor: var(--vscode-editorSuggestWidgetStatus-foreground);\n}\n\n.monaco-editor .suggest-widget.with-status-bar .suggest-status-bar .action-item:not(:last-of-type) .action-label {\n\tmargin-right: 0;\n}\n\n.monaco-editor .suggest-widget.with-status-bar .suggest-status-bar .action-item:not(:last-of-type) .action-label::after {\n\tcontent: ', ';\n\tmargin-right: 0.3em;\n}\n\n.monaco-editor .suggest-widget.with-status-bar .monaco-list .monaco-list-row > .contents > .main > .right > .readMore,\n.monaco-editor .suggest-widget.with-status-bar .monaco-list .monaco-list-row.focused.string-label > .contents > .main > .right > .readMore {\n\tdisplay: none;\n}\n\n.monaco-editor .suggest-widget.with-status-bar:not(.docs-side) .monaco-list .monaco-list-row:hover > .contents > .main > .right.can-expand-details > .details-label {\n\twidth: 100%;\n}\n\n/* Styles for Message element for when widget is loading or is empty */\n\n.monaco-editor .suggest-widget > .message {\n\tpadding-left: 22px;\n}\n\n/** Styles for the list element **/\n\n.monaco-editor .suggest-widget > .tree {\n\theight: 100%;\n\twidth: 100%;\n}\n\n.monaco-editor .suggest-widget .monaco-list {\n\tuser-select: none;\n\t-webkit-user-select: none;\n}\n\n/** Styles for each row in the list element **/\n\n.monaco-editor .suggest-widget .monaco-list .monaco-list-row {\n\tdisplay: flex;\n\t-mox-box-sizing: border-box;\n\tbox-sizing: border-box;\n\tpadding-right: 10px;\n\tbackground-repeat: no-repeat;\n\tbackground-position: 2px 2px;\n\twhite-space: nowrap;\n\tcursor: pointer;\n\ttouch-action: none;\n}\n\n.monaco-editor .suggest-widget .monaco-list .monaco-list-row.focused {\n\tcolor: var(--vscode-editorSuggestWidget-selectedForeground);\n}\n\n.monaco-editor .suggest-widget .monaco-list .monaco-list-row.focused .codicon {\n\tcolor: var(--vscode-editorSuggestWidget-selectedIconForeground);\n}\n\n.monaco-editor .suggest-widget .monaco-list .monaco-list-row > .contents {\n\tflex: 1;\n\theight: 100%;\n\toverflow: hidden;\n\tpadding-left: 2px;\n}\n\n.monaco-editor .suggest-widget .monaco-list .monaco-list-row > .contents > .main {\n\tdisplay: flex;\n\toverflow: hidden;\n\ttext-overflow: ellipsis;\n\twhite-space: pre;\n\tjustify-content: space-between;\n}\n\n.monaco-editor .suggest-widget .monaco-list .monaco-list-row > .contents > .main > .left,\n.monaco-editor .suggest-widget .monaco-list .monaco-list-row > .contents > .main > .right {\n\tdisplay: flex;\n}\n\n.monaco-editor .suggest-widget .monaco-list .monaco-list-row:not(.focused) > .contents > .main .monaco-icon-label {\n\tcolor: var(--vscode-editorSuggestWidget-foreground);\n}\n\n.monaco-editor .suggest-widget:not(.frozen) .monaco-highlighted-label .highlight {\n\tfont-weight: bold;\n}\n\n.monaco-editor .suggest-widget .monaco-list .monaco-list-row > .contents > .main .monaco-highlighted-label .highlight {\n\tcolor: var(--vscode-editorSuggestWidget-highlightForeground);\n}\n\n.monaco-editor .suggest-widget .monaco-list .monaco-list-row.focused > .contents > .main .monaco-highlighted-label .highlight {\n\tcolor: var(--vscode-editorSuggestWidget-focusHighlightForeground);\n}\n\n/** ReadMore Icon styles **/\n\n.monaco-editor .suggest-details > .monaco-scrollable-element > .body > .header > .codicon-close,\n.monaco-editor .suggest-widget .monaco-list .monaco-list-row > .contents > .main > .right > .readMore::before {\n\tcolor: inherit;\n\topacity: 1;\n\tfont-size: 14px;\n\tcursor: pointer;\n}\n\n.monaco-editor .suggest-details > .monaco-scrollable-element > .body > .header > .codicon-close {\n\tposition: absolute;\n\ttop: 6px;\n\tright: 2px;\n}\n\n.monaco-editor .suggest-details > .monaco-scrollable-element > .body > .header > .codicon-close:hover,\n.monaco-editor .suggest-widget .monaco-list .monaco-list-row > .contents > .main > .right > .readMore:hover {\n\topacity: 1;\n}\n\n/** signature, qualifier, type/details opacity **/\n\n.monaco-editor .suggest-widget .monaco-list .monaco-list-row > .contents > .main > .right > .details-label {\n\topacity: 0.7;\n}\n\n.monaco-editor .suggest-widget .monaco-list .monaco-list-row > .contents > .main > .left > .signature-label {\n\toverflow: hidden;\n\ttext-overflow: ellipsis;\n\topacity: 0.6;\n}\n\n.monaco-editor .suggest-widget .monaco-list .monaco-list-row > .contents > .main > .left > .qualifier-label {\n\tmargin-left: 12px;\n\topacity: 0.4;\n\tfont-size: 85%;\n\tline-height: initial;\n\ttext-overflow: ellipsis;\n\toverflow: hidden;\n\talign-self: center;\n}\n\n/** Type Info and icon next to the label in the focused completion item **/\n\n.monaco-editor .suggest-widget .monaco-list .monaco-list-row > .contents > .main > .right > .details-label {\n\tfont-size: 85%;\n\tmargin-left: 1.1em;\n\toverflow: hidden;\n\ttext-overflow: ellipsis;\n\twhite-space: nowrap;\n}\n\n.monaco-editor .suggest-widget .monaco-list .monaco-list-row > .contents > .main > .right > .details-label > .monaco-tokenized-source {\n\tdisplay: inline;\n}\n\n/** Details: if using CompletionItem#details, show on focus **/\n\n.monaco-editor .suggest-widget .monaco-list .monaco-list-row > .contents > .main > .right > .details-label {\n\tdisplay: none;\n}\n\n.monaco-editor .suggest-widget:not(.shows-details) .monaco-list .monaco-list-row.focused > .contents > .main > .right > .details-label {\n\tdisplay: inline;\n}\n\n/** Details: if using CompletionItemLabel#details, always show **/\n\n.monaco-editor .suggest-widget .monaco-list .monaco-list-row:not(.string-label) > .contents > .main > .right > .details-label,\n.monaco-editor .suggest-widget.docs-side .monaco-list .monaco-list-row.focused:not(.string-label) > .contents > .main > .right > .details-label {\n\tdisplay: inline;\n}\n\n/** Ellipsis on hover **/\n\n.monaco-editor .suggest-widget:not(.docs-side) .monaco-list .monaco-list-row.focused:hover > .contents > .main > .right.can-expand-details > .details-label {\n\twidth: calc(100% - 26px);\n}\n\n.monaco-editor .suggest-widget .monaco-list .monaco-list-row > .contents > .main > .left {\n\tflex-shrink: 1;\n\tflex-grow: 1;\n\toverflow: hidden;\n}\n\n.monaco-editor .suggest-widget .monaco-list .monaco-list-row > .contents > .main > .left > .monaco-icon-label {\n\tflex-shrink: 0;\n}\n\n.monaco-editor .suggest-widget .monaco-list .monaco-list-row:not(.string-label) > .contents > .main > .left > .monaco-icon-label {\n\tmax-width: 100%;\n}\n\n.monaco-editor .suggest-widget .monaco-list .monaco-list-row.string-label > .contents > .main > .left > .monaco-icon-label {\n\tflex-shrink: 1;\n}\n\n.monaco-editor .suggest-widget .monaco-list .monaco-list-row > .contents > .main > .right {\n\toverflow: hidden;\n\tflex-shrink: 4;\n\tmax-width: 70%;\n}\n\n.monaco-editor .suggest-widget .monaco-list .monaco-list-row > .contents > .main > .right > .readMore {\n\tdisplay: inline-block;\n\tposition: absolute;\n\tright: 10px;\n\twidth: 18px;\n\theight: 18px;\n\tvisibility: hidden;\n}\n\n/** Do NOT display ReadMore when docs is side/below **/\n\n.monaco-editor .suggest-widget.docs-side .monaco-list .monaco-list-row > .contents > .main > .right > .readMore {\n\tdisplay: none !important;\n}\n\n/** Do NOT display ReadMore when using plain CompletionItemLabel (details/documentation might not be resolved) **/\n\n.monaco-editor .suggest-widget .monaco-list .monaco-list-row.string-label > .contents > .main > .right > .readMore {\n\tdisplay: none;\n}\n\n/** Focused item can show ReadMore, but can't when docs is side/below **/\n\n.monaco-editor .suggest-widget .monaco-list .monaco-list-row.focused.string-label > .contents > .main > .right > .readMore {\n\tdisplay: inline-block;\n}\n\n.monaco-editor .suggest-widget .monaco-list .monaco-list-row.focused:hover > .contents > .main > .right > .readMore {\n\tvisibility: visible;\n}\n\n/** Styles for each row in the list **/\n\n.monaco-editor .suggest-widget .monaco-list .monaco-list-row .monaco-icon-label.deprecated {\n\topacity: 0.66;\n\ttext-decoration: unset;\n}\n\n.monaco-editor .suggest-widget .monaco-list .monaco-list-row .monaco-icon-label.deprecated > .monaco-icon-label-container > .monaco-icon-name-container {\n\ttext-decoration: line-through;\n}\n\n.monaco-editor .suggest-widget .monaco-list .monaco-list-row .monaco-icon-label::before {\n\theight: 100%;\n}\n\n.monaco-editor .suggest-widget .monaco-list .monaco-list-row .icon {\n\tdisplay: block;\n\theight: 16px;\n\twidth: 16px;\n\tmargin-left: 2px;\n\tbackground-repeat: no-repeat;\n\tbackground-size: 80%;\n\tbackground-position: center;\n}\n\n.monaco-editor .suggest-widget .monaco-list .monaco-list-row .icon.hide {\n\tdisplay: none;\n}\n\n.monaco-editor .suggest-widget .monaco-list .monaco-list-row .suggest-icon {\n\tdisplay: flex;\n\talign-items: center;\n\tmargin-right: 4px;\n}\n\n.monaco-editor .suggest-widget.no-icons .monaco-list .monaco-list-row .icon,\n.monaco-editor .suggest-widget.no-icons .monaco-list .monaco-list-row .suggest-icon::before {\n\tdisplay: none;\n}\n\n.monaco-editor .suggest-widget .monaco-list .monaco-list-row .icon.customcolor .colorspan {\n\tmargin: 0 0 0 0.3em;\n\tborder: 0.1em solid #000;\n\twidth: 0.7em;\n\theight: 0.7em;\n\tdisplay: inline-block;\n}\n\n/** Styles for the docs of the completion item in focus **/\n\n.monaco-editor .suggest-details-container {\n\tz-index: 41;\n}\n\n.monaco-editor .suggest-details {\n\tdisplay: flex;\n\tflex-direction: column;\n\tcursor: default;\n\tcolor: var(--vscode-editorSuggestWidget-foreground);\n}\n\n.monaco-editor .suggest-details.focused {\n\tborder-color: var(--vscode-focusBorder);\n}\n\n.monaco-editor .suggest-details a {\n\tcolor: var(--vscode-textLink-foreground);\n}\n\n.monaco-editor .suggest-details a:hover {\n\tcolor: var(--vscode-textLink-activeForeground);\n}\n\n.monaco-editor .suggest-details code {\n\tbackground-color: var(--vscode-textCodeBlock-background);\n}\n\n.monaco-editor .suggest-details.no-docs {\n\tdisplay: none;\n}\n\n.monaco-editor .suggest-details > .monaco-scrollable-element {\n\tflex: 1;\n}\n\n.monaco-editor .suggest-details > .monaco-scrollable-element > .body {\n\tbox-sizing: border-box;\n\theight: 100%;\n\twidth: 100%;\n}\n\n.monaco-editor .suggest-details > .monaco-scrollable-element > .body > .header > .type {\n\tflex: 2;\n\toverflow: hidden;\n\ttext-overflow: ellipsis;\n\topacity: 0.7;\n\twhite-space: pre;\n\tmargin: 0 24px 0 0;\n\tpadding: 4px 0 12px 5px;\n}\n\n.monaco-editor .suggest-details > .monaco-scrollable-element > .body > .header > .type.auto-wrap {\n\twhite-space: normal;\n\tword-break: break-all;\n}\n\n.monaco-editor .suggest-details > .monaco-scrollable-element > .body > .docs {\n\tmargin: 0;\n\tpadding: 4px 5px;\n\twhite-space: pre-wrap;\n}\n\n.monaco-editor .suggest-details.no-type > .monaco-scrollable-element > .body > .docs {\n\tmargin-right: 24px;\n\toverflow: hidden;\n}\n\n.monaco-editor .suggest-details > .monaco-scrollable-element > .body > .docs.markdown-docs {\n\tpadding: 0;\n\twhite-space: initial;\n\tmin-height: calc(1rem + 8px);\n}\n\n.monaco-editor .suggest-details > .monaco-scrollable-element > .body > .docs.markdown-docs > div,\n.monaco-editor .suggest-details > .monaco-scrollable-element > .body > .docs.markdown-docs > span:not(:empty) {\n\tpadding: 4px 5px;\n}\n\n.monaco-editor .suggest-details > .monaco-scrollable-element > .body > .docs.markdown-docs > div > p:first-child {\n\tmargin-top: 0;\n}\n\n.monaco-editor .suggest-details > .monaco-scrollable-element > .body > .docs.markdown-docs > div > p:last-child {\n\tmargin-bottom: 0;\n}\n\n.monaco-editor .suggest-details > .monaco-scrollable-element > .body > .docs.markdown-docs .monaco-tokenized-source {\n\twhite-space: pre;\n}\n\n.monaco-editor .suggest-details > .monaco-scrollable-element > .body > .docs .code {\n\twhite-space: pre-wrap;\n\tword-wrap: break-word;\n}\n\n.monaco-editor .suggest-details > .monaco-scrollable-element > .body > .docs.markdown-docs .codicon {\n\tvertical-align: sub;\n}\n\n.monaco-editor .suggest-details > .monaco-scrollable-element > .body > p:empty {\n\tdisplay: none;\n}\n\n.monaco-editor .suggest-details code {\n\tborder-radius: 3px;\n\tpadding: 0 0.4em;\n}\n\n.monaco-editor .suggest-details ul {\n\tpadding-left: 20px;\n}\n\n.monaco-editor .suggest-details ol {\n\tpadding-left: 20px;\n}\n\n.monaco-editor .suggest-details p code {\n\tfont-family: var(--monaco-monospace-font);\n}\n`, \"\"]);\n// Exports\n/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (___CSS_LOADER_EXPORT___);\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/contrib/suggest/browser/media/suggest.css?./node_modules/css-loader/dist/cjs.js");
/***/ }),
/***/ "./node_modules/css-loader/dist/cjs.js!./node_modules/monaco-editor/esm/vs/editor/contrib/symbolIcons/browser/symbolIcons.css":
/*!************************************************************************************************************************************!*\
!*** ./node_modules/css-loader/dist/cjs.js!./node_modules/monaco-editor/esm/vs/editor/contrib/symbolIcons/browser/symbolIcons.css ***!
\************************************************************************************************************************************/
/***/ ((module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": () => (__WEBPACK_DEFAULT_EXPORT__)\n/* harmony export */ });\n/* harmony import */ var _css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../../../../../css-loader/dist/runtime/noSourceMaps.js */ \"./node_modules/css-loader/dist/runtime/noSourceMaps.js\");\n/* harmony import */ var _css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var _css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../../../../css-loader/dist/runtime/api.js */ \"./node_modules/css-loader/dist/runtime/api.js\");\n/* harmony import */ var _css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__);\n// Imports\n\n\nvar ___CSS_LOADER_EXPORT___ = _css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default()((_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default()));\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, `/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n.monaco-editor .codicon.codicon-symbol-array,\n.monaco-workbench .codicon.codicon-symbol-array { color: var(--vscode-symbolIcon-arrayForeground); }\n.monaco-editor .codicon.codicon-symbol-boolean,\n.monaco-workbench .codicon.codicon-symbol-boolean { color: var(--vscode-symbolIcon-booleanForeground); }\n.monaco-editor .codicon.codicon-symbol-class,\n.monaco-workbench .codicon.codicon-symbol-class { color: var(--vscode-symbolIcon-classForeground); }\n.monaco-editor .codicon.codicon-symbol-method,\n.monaco-workbench .codicon.codicon-symbol-method { color: var(--vscode-symbolIcon-methodForeground); }\n.monaco-editor .codicon.codicon-symbol-color,\n.monaco-workbench .codicon.codicon-symbol-color { color: var(--vscode-symbolIcon-colorForeground); }\n.monaco-editor .codicon.codicon-symbol-constant,\n.monaco-workbench .codicon.codicon-symbol-constant { color: var(--vscode-symbolIcon-constantForeground); }\n.monaco-editor .codicon.codicon-symbol-constructor,\n.monaco-workbench .codicon.codicon-symbol-constructor { color: var(--vscode-symbolIcon-constructorForeground); }\n.monaco-editor .codicon.codicon-symbol-value,\n.monaco-workbench .codicon.codicon-symbol-value,\n.monaco-editor .codicon.codicon-symbol-enum,\n.monaco-workbench .codicon.codicon-symbol-enum { color: var(--vscode-symbolIcon-enumeratorForeground); }\n.monaco-editor .codicon.codicon-symbol-enum-member,\n.monaco-workbench .codicon.codicon-symbol-enum-member { color: var(--vscode-symbolIcon-enumeratorMemberForeground); }\n.monaco-editor .codicon.codicon-symbol-event,\n.monaco-workbench .codicon.codicon-symbol-event { color: var(--vscode-symbolIcon-eventForeground); }\n.monaco-editor .codicon.codicon-symbol-field,\n.monaco-workbench .codicon.codicon-symbol-field { color: var(--vscode-symbolIcon-fieldForeground); }\n.monaco-editor .codicon.codicon-symbol-file,\n.monaco-workbench .codicon.codicon-symbol-file { color: var(--vscode-symbolIcon-fileForeground); }\n.monaco-editor .codicon.codicon-symbol-folder,\n.monaco-workbench .codicon.codicon-symbol-folder { color: var(--vscode-symbolIcon-folderForeground); }\n.monaco-editor .codicon.codicon-symbol-function,\n.monaco-workbench .codicon.codicon-symbol-function { color: var(--vscode-symbolIcon-functionForeground); }\n.monaco-editor .codicon.codicon-symbol-interface,\n.monaco-workbench .codicon.codicon-symbol-interface { color: var(--vscode-symbolIcon-interfaceForeground); }\n.monaco-editor .codicon.codicon-symbol-key,\n.monaco-workbench .codicon.codicon-symbol-key { color: var(--vscode-symbolIcon-keyForeground); }\n.monaco-editor .codicon.codicon-symbol-keyword,\n.monaco-workbench .codicon.codicon-symbol-keyword { color: var(--vscode-symbolIcon-keywordForeground); }\n.monaco-editor .codicon.codicon-symbol-module,\n.monaco-workbench .codicon.codicon-symbol-module { color: var(--vscode-symbolIcon-moduleForeground); }\n.monaco-editor .codicon.codicon-symbol-namespace,\n.monaco-workbench .codicon.codicon-symbol-namespace { color: var(--vscode-symbolIcon-namespaceForeground); }\n.monaco-editor .codicon.codicon-symbol-null,\n.monaco-workbench .codicon.codicon-symbol-null { color: var(--vscode-symbolIcon-nullForeground); }\n.monaco-editor .codicon.codicon-symbol-number,\n.monaco-workbench .codicon.codicon-symbol-number { color: var(--vscode-symbolIcon-numberForeground); }\n.monaco-editor .codicon.codicon-symbol-object,\n.monaco-workbench .codicon.codicon-symbol-object { color: var(--vscode-symbolIcon-objectForeground); }\n.monaco-editor .codicon.codicon-symbol-operator,\n.monaco-workbench .codicon.codicon-symbol-operator { color: var(--vscode-symbolIcon-operatorForeground); }\n.monaco-editor .codicon.codicon-symbol-package,\n.monaco-workbench .codicon.codicon-symbol-package { color: var(--vscode-symbolIcon-packageForeground); }\n.monaco-editor .codicon.codicon-symbol-property,\n.monaco-workbench .codicon.codicon-symbol-property { color: var(--vscode-symbolIcon-propertyForeground); }\n.monaco-editor .codicon.codicon-symbol-reference,\n.monaco-workbench .codicon.codicon-symbol-reference { color: var(--vscode-symbolIcon-referenceForeground); }\n.monaco-editor .codicon.codicon-symbol-snippet,\n.monaco-workbench .codicon.codicon-symbol-snippet { color: var(--vscode-symbolIcon-snippetForeground); }\n.monaco-editor .codicon.codicon-symbol-string,\n.monaco-workbench .codicon.codicon-symbol-string { color: var(--vscode-symbolIcon-stringForeground); }\n.monaco-editor .codicon.codicon-symbol-struct,\n.monaco-workbench .codicon.codicon-symbol-struct { color: var(--vscode-symbolIcon-structForeground); }\n.monaco-editor .codicon.codicon-symbol-text,\n.monaco-workbench .codicon.codicon-symbol-text { color: var(--vscode-symbolIcon-textForeground); }\n.monaco-editor .codicon.codicon-symbol-type-parameter,\n.monaco-workbench .codicon.codicon-symbol-type-parameter { color: var(--vscode-symbolIcon-typeParameterForeground); }\n.monaco-editor .codicon.codicon-symbol-unit,\n.monaco-workbench .codicon.codicon-symbol-unit { color: var(--vscode-symbolIcon-unitForeground); }\n.monaco-editor .codicon.codicon-symbol-variable,\n.monaco-workbench .codicon.codicon-symbol-variable { color: var(--vscode-symbolIcon-variableForeground); }\n`, \"\"]);\n// Exports\n/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (___CSS_LOADER_EXPORT___);\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/contrib/symbolIcons/browser/symbolIcons.css?./node_modules/css-loader/dist/cjs.js");
/***/ }),
/***/ "./node_modules/css-loader/dist/cjs.js!./node_modules/monaco-editor/esm/vs/editor/contrib/unicodeHighlighter/browser/bannerController.css":
/*!************************************************************************************************************************************************!*\
!*** ./node_modules/css-loader/dist/cjs.js!./node_modules/monaco-editor/esm/vs/editor/contrib/unicodeHighlighter/browser/bannerController.css ***!
\************************************************************************************************************************************************/
/***/ ((module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": () => (__WEBPACK_DEFAULT_EXPORT__)\n/* harmony export */ });\n/* harmony import */ var _css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../../../../../css-loader/dist/runtime/noSourceMaps.js */ \"./node_modules/css-loader/dist/runtime/noSourceMaps.js\");\n/* harmony import */ var _css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var _css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../../../../css-loader/dist/runtime/api.js */ \"./node_modules/css-loader/dist/runtime/api.js\");\n/* harmony import */ var _css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__);\n// Imports\n\n\nvar ___CSS_LOADER_EXPORT___ = _css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default()((_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default()));\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, `/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n.editor-banner {\n\tbox-sizing: border-box;\n\tcursor: default;\n\twidth: 100%;\n\tfont-size: 12px;\n\tdisplay: flex;\n\toverflow: visible;\n\n\theight: 26px;\n\n\tbackground: var(--vscode-banner-background);\n}\n\n\n.editor-banner .icon-container {\n\tdisplay: flex;\n\tflex-shrink: 0;\n\talign-items: center;\n\tpadding: 0 6px 0 10px;\n}\n\n.editor-banner .icon-container.custom-icon {\n\tbackground-repeat: no-repeat;\n\tbackground-position: center center;\n\tbackground-size: 16px;\n\twidth: 16px;\n\tpadding: 0;\n\tmargin: 0 6px 0 10px;\n}\n\n.editor-banner .message-container {\n\tdisplay: flex;\n\talign-items: center;\n\tline-height: 26px;\n\ttext-overflow: ellipsis;\n\twhite-space: nowrap;\n\toverflow: hidden;\n}\n\n.editor-banner .message-container p {\n\tmargin-block-start: 0;\n\tmargin-block-end: 0;\n}\n\n.editor-banner .message-actions-container {\n\tflex-grow: 1;\n\tflex-shrink: 0;\n\tline-height: 26px;\n\tmargin: 0 4px;\n}\n\n.editor-banner .message-actions-container a.monaco-button {\n\twidth: inherit;\n\tmargin: 2px 8px;\n\tpadding: 0px 12px;\n}\n\n.editor-banner .message-actions-container a {\n\tpadding: 3px;\n\tmargin-left: 12px;\n\ttext-decoration: underline;\n}\n\n.editor-banner .action-container {\n\tpadding: 0 10px 0 6px;\n}\n\n.editor-banner {\n\tbackground-color: var(--vscode-banner-background);\n}\n\n.editor-banner,\n.editor-banner .action-container .codicon,\n.editor-banner .message-actions-container .monaco-link {\n\tcolor: var(--vscode-banner-foreground);\n}\n\n.editor-banner .icon-container .codicon {\n\tcolor: var(--vscode-banner-iconForeground);\n}\n`, \"\"]);\n// Exports\n/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (___CSS_LOADER_EXPORT___);\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/contrib/unicodeHighlighter/browser/bannerController.css?./node_modules/css-loader/dist/cjs.js");
/***/ }),
/***/ "./node_modules/css-loader/dist/cjs.js!./node_modules/monaco-editor/esm/vs/editor/contrib/unicodeHighlighter/browser/unicodeHighlighter.css":
/*!**************************************************************************************************************************************************!*\
!*** ./node_modules/css-loader/dist/cjs.js!./node_modules/monaco-editor/esm/vs/editor/contrib/unicodeHighlighter/browser/unicodeHighlighter.css ***!
\**************************************************************************************************************************************************/
/***/ ((module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": () => (__WEBPACK_DEFAULT_EXPORT__)\n/* harmony export */ });\n/* harmony import */ var _css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../../../../../css-loader/dist/runtime/noSourceMaps.js */ \"./node_modules/css-loader/dist/runtime/noSourceMaps.js\");\n/* harmony import */ var _css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var _css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../../../../css-loader/dist/runtime/api.js */ \"./node_modules/css-loader/dist/runtime/api.js\");\n/* harmony import */ var _css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__);\n// Imports\n\n\nvar ___CSS_LOADER_EXPORT___ = _css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default()((_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default()));\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, `/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n.monaco-editor .unicode-highlight {\n\tborder: 1px solid var(--vscode-editorUnicodeHighlight-border);\n\tbackground-color: var(--vscode-editorUnicodeHighlight-background);\n\tbox-sizing: border-box;\n}\n`, \"\"]);\n// Exports\n/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (___CSS_LOADER_EXPORT___);\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/contrib/unicodeHighlighter/browser/unicodeHighlighter.css?./node_modules/css-loader/dist/cjs.js");
/***/ }),
/***/ "./node_modules/css-loader/dist/cjs.js!./node_modules/monaco-editor/esm/vs/editor/contrib/wordHighlighter/browser/highlightDecorations.css":
/*!*************************************************************************************************************************************************!*\
!*** ./node_modules/css-loader/dist/cjs.js!./node_modules/monaco-editor/esm/vs/editor/contrib/wordHighlighter/browser/highlightDecorations.css ***!
\*************************************************************************************************************************************************/
/***/ ((module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": () => (__WEBPACK_DEFAULT_EXPORT__)\n/* harmony export */ });\n/* harmony import */ var _css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../../../../../css-loader/dist/runtime/noSourceMaps.js */ \"./node_modules/css-loader/dist/runtime/noSourceMaps.js\");\n/* harmony import */ var _css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var _css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../../../../css-loader/dist/runtime/api.js */ \"./node_modules/css-loader/dist/runtime/api.js\");\n/* harmony import */ var _css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__);\n// Imports\n\n\nvar ___CSS_LOADER_EXPORT___ = _css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default()((_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default()));\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, `/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n.monaco-editor .focused .selectionHighlight {\n\tbackground-color: var(--vscode-editor-selectionHighlightBackground);\n\tbox-sizing: border-box;\n\tborder: 1px solid var(--vscode-editor-selectionHighlightBorder);\n}\n.monaco-editor.hc-black .focused .selectionHighlight, .monaco-editor.hc-light .focused .selectionHighlight {\n\tborder-style: dotted;\n}\n\n.monaco-editor .wordHighlight {\n\tbackground-color: var(--vscode-editor-wordHighlightBackground);\n\tbox-sizing: border-box;\n\tborder: 1px solid var(--vscode-editor-wordHighlightBorder);\n}\n.monaco-editor.hc-black .wordHighlight, .monaco-editor.hc-light .wordHighlight {\n\tborder-style: dotted;\n}\n\n.monaco-editor .wordHighlightStrong {\n\tbackground-color: var(--vscode-editor-wordHighlightStrongBackground);\n\tbox-sizing: border-box;\n\tborder: 1px solid var(--vscode-editor-wordHighlightStrongBorder);\n}\n.monaco-editor.hc-black .wordHighlightStrong, .monaco-editor.hc-light .wordHighlightStrong {\n\tborder-style: dotted;\n}\n\n.monaco-editor .wordHighlightText {\n\tbackground-color: var(--vscode-editor-wordHighlightTextBackground);\n\tbox-sizing: border-box;\n\tborder: 1px solid var(--vscode-editor-wordHighlightTextBorder);\n}\n.monaco-editor.hc-black .wordHighlightText, .monaco-editor.hc-light .wordHighlightText {\n\tborder-style: dotted;\n}\n`, \"\"]);\n// Exports\n/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (___CSS_LOADER_EXPORT___);\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/contrib/wordHighlighter/browser/highlightDecorations.css?./node_modules/css-loader/dist/cjs.js");
/***/ }),
/***/ "./node_modules/css-loader/dist/cjs.js!./node_modules/monaco-editor/esm/vs/editor/contrib/zoneWidget/browser/zoneWidget.css":
/*!**********************************************************************************************************************************!*\
!*** ./node_modules/css-loader/dist/cjs.js!./node_modules/monaco-editor/esm/vs/editor/contrib/zoneWidget/browser/zoneWidget.css ***!
\**********************************************************************************************************************************/
/***/ ((module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": () => (__WEBPACK_DEFAULT_EXPORT__)\n/* harmony export */ });\n/* harmony import */ var _css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../../../../../css-loader/dist/runtime/noSourceMaps.js */ \"./node_modules/css-loader/dist/runtime/noSourceMaps.js\");\n/* harmony import */ var _css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var _css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../../../../css-loader/dist/runtime/api.js */ \"./node_modules/css-loader/dist/runtime/api.js\");\n/* harmony import */ var _css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__);\n// Imports\n\n\nvar ___CSS_LOADER_EXPORT___ = _css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default()((_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default()));\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, `/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n.monaco-editor .zone-widget {\n\tposition: absolute;\n\tz-index: 10;\n}\n\n\n.monaco-editor .zone-widget .zone-widget-container {\n\tborder-top-style: solid;\n\tborder-bottom-style: solid;\n\tborder-top-width: 0;\n\tborder-bottom-width: 0;\n\tposition: relative;\n}\n`, \"\"]);\n// Exports\n/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (___CSS_LOADER_EXPORT___);\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/contrib/zoneWidget/browser/zoneWidget.css?./node_modules/css-loader/dist/cjs.js");
/***/ }),
/***/ "./node_modules/css-loader/dist/cjs.js!./node_modules/monaco-editor/esm/vs/editor/standalone/browser/iPadShowKeyboard/iPadShowKeyboard.css":
/*!*************************************************************************************************************************************************!*\
!*** ./node_modules/css-loader/dist/cjs.js!./node_modules/monaco-editor/esm/vs/editor/standalone/browser/iPadShowKeyboard/iPadShowKeyboard.css ***!
\*************************************************************************************************************************************************/
/***/ ((module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": () => (__WEBPACK_DEFAULT_EXPORT__)\n/* harmony export */ });\n/* harmony import */ var _css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../../../../../css-loader/dist/runtime/noSourceMaps.js */ \"./node_modules/css-loader/dist/runtime/noSourceMaps.js\");\n/* harmony import */ var _css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var _css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../../../../css-loader/dist/runtime/api.js */ \"./node_modules/css-loader/dist/runtime/api.js\");\n/* harmony import */ var _css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__);\n/* harmony import */ var _css_loader_dist_runtime_getUrl_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../../../../../css-loader/dist/runtime/getUrl.js */ \"./node_modules/css-loader/dist/runtime/getUrl.js\");\n/* harmony import */ var _css_loader_dist_runtime_getUrl_js__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(_css_loader_dist_runtime_getUrl_js__WEBPACK_IMPORTED_MODULE_2__);\n// Imports\n\n\n\nvar ___CSS_LOADER_URL_IMPORT_0___ = new URL(/* asset import */ __webpack_require__(/*! data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iNTMiIGhlaWdodD0iMzYiIHZpZXdCb3g9IjAgMCA1MyAzNiIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPGcgY2xpcC1wYXRoPSJ1cmwoI2NsaXAwKSI+CjxwYXRoIGZpbGwtcnVsZT0iZXZlbm9kZCIgY2xpcC1ydWxlPSJldmVub2RkIiBkPSJNNDguMDM2NCA0LjAxMDQySDQuMDA3NzlMNC4wMDc3OSAzMi4wMjg2SDQ4LjAzNjRWNC4wMTA0MlpNNC4wMDc3OSAwLjAwNzgxMjVDMS43OTcyMSAwLjAwNzgxMjUgMC4wMDUxODc5OSAxLjc5OTg0IDAuMDA1MTg3OTkgNC4wMTA0MlYzMi4wMjg2QzAuMDA1MTg3OTkgMzQuMjM5MiAxLjc5NzIxIDM2LjAzMTIgNC4wMDc3OSAzNi4wMzEySDQ4LjAzNjRDNTAuMjQ3IDM2LjAzMTIgNTIuMDM5IDM0LjIzOTIgNTIuMDM5IDMyLjAyODZWNC4wMTA0MkM1Mi4wMzkgMS43OTk4NCA1MC4yNDcgMC4wMDc4MTI1IDQ4LjAzNjQgMC4wMDc4MTI1SDQuMDA3NzlaTTguMDEwNDIgOC4wMTMwMkgxMi4wMTNWMTIuMDE1Nkg4LjAxMDQyVjguMDEzMDJaTTIwLjAxODIgOC4wMTMwMkgxNi4wMTU2VjEyLjAxNTZIMjAuMDE4MlY4LjAxMzAyWk0yNC4wMjA4IDguMDEzMDJIMjguMDIzNFYxMi4wMTU2SDI0LjAyMDhWOC4wMTMwMlpNMzYuMDI4NiA4LjAxMzAySDMyLjAyNlYxMi4wMTU2SDM2LjAyODZWOC4wMTMwMlpNNDAuMDMxMiA4LjAxMzAySDQ0LjAzMzlWMTIuMDE1Nkg0MC4wMzEyVjguMDEzMDJaTTE2LjAxNTYgMTYuMDE4Mkg4LjAxMDQyVjIwLjAyMDhIMTYuMDE1NlYxNi4wMTgyWk0yMC4wMTgyIDE2LjAxODJIMjQuMDIwOFYyMC4wMjA4SDIwLjAxODJWMTYuMDE4MlpNMzIuMDI2IDE2LjAxODJIMjguMDIzNFYyMC4wMjA4SDMyLjAyNlYxNi4wMTgyWk00NC4wMzM5IDE2LjAxODJWMjAuMDIwOEgzNi4wMjg2VjE2LjAxODJINDQuMDMzOVpNMTIuMDEzIDI0LjAyMzRIOC4wMTA0MlYyOC4wMjZIMTIuMDEzVjI0LjAyMzRaTTE2LjAxNTYgMjQuMDIzNEgzNi4wMjg2VjI4LjAyNkgxNi4wMTU2VjI0LjAyMzRaTTQ0LjAzMzkgMjQuMDIzNEg0MC4wMzEyVjI4LjAyNkg0NC4wMzM5VjI0LjAyMzRaIiBmaWxsPSIjNDI0MjQyIi8+CjwvZz4KPGRlZnM+CjxjbGlwUGF0aCBpZD0iY2xpcDAiPgo8cmVjdCB3aWR0aD0iNTMiIGhlaWdodD0iMzYiIGZpbGw9IndoaXRlIi8+CjwvY2xpcFBhdGg+CjwvZGVmcz4KPC9zdmc+Cg== */ \"data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iNTMiIGhlaWdodD0iMzYiIHZpZXdCb3g9IjAgMCA1MyAzNiIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPGcgY2xpcC1wYXRoPSJ1cmwoI2NsaXAwKSI+CjxwYXRoIGZpbGwtcnVsZT0iZXZlbm9kZCIgY2xpcC1ydWxlPSJldmVub2RkIiBkPSJNNDguMDM2NCA0LjAxMDQySDQuMDA3NzlMNC4wMDc3OSAzMi4wMjg2SDQ4LjAzNjRWNC4wMTA0MlpNNC4wMDc3OSAwLjAwNzgxMjVDMS43OTcyMSAwLjAwNzgxMjUgMC4wMDUxODc5OSAxLjc5OTg0IDAuMDA1MTg3OTkgNC4wMTA0MlYzMi4wMjg2QzAuMDA1MTg3OTkgMzQuMjM5MiAxLjc5NzIxIDM2LjAzMTIgNC4wMDc3OSAzNi4wMzEySDQ4LjAzNjRDNTAuMjQ3IDM2LjAzMTIgNTIuMDM5IDM0LjIzOTIgNTIuMDM5IDMyLjAyODZWNC4wMTA0MkM1Mi4wMzkgMS43OTk4NCA1MC4yNDcgMC4wMDc4MTI1IDQ4LjAzNjQgMC4wMDc4MTI1SDQuMDA3NzlaTTguMDEwNDIgOC4wMTMwMkgxMi4wMTNWMTIuMDE1Nkg4LjAxMDQyVjguMDEzMDJaTTIwLjAxODIgOC4wMTMwMkgxNi4wMTU2VjEyLjAxNTZIMjAuMDE4MlY4LjAxMzAyWk0yNC4wMjA4IDguMDEzMDJIMjguMDIzNFYxMi4wMTU2SDI0LjAyMDhWOC4wMTMwMlpNMzYuMDI4NiA4LjAxMzAySDMyLjAyNlYxMi4wMTU2SDM2LjAyODZWOC4wMTMwMlpNNDAuMDMxMiA4LjAxMzAySDQ0LjAzMzlWMTIuMDE1Nkg0MC4wMzEyVjguMDEzMDJaTTE2LjAxNTYgMTYuMDE4Mkg4LjAxMDQyVjIwLjAyMDhIMTYuMDE1NlYxNi4wMTgyWk0yMC4wMTgyIDE2LjAxODJIMjQuMDIwOFYyMC4wMjA4SDIwLjAxODJWMTYuMDE4MlpNMzIuMDI2IDE2LjAxODJIMjguMDIzNFYyMC4wMjA4SDMyLjAyNlYxNi4wMTgyWk00NC4wMzM5IDE2LjAxODJWMjAuMDIwOEgzNi4wMjg2VjE2LjAxODJINDQuMDMzOVpNMTIuMDEzIDI0LjAyMzRIOC4wMTA0MlYyOC4wMjZIMTIuMDEzVjI0LjAyMzRaTTE2LjAxNTYgMjQuMDIzNEgzNi4wMjg2VjI4LjAyNkgxNi4wMTU2VjI0LjAyMzRaTTQ0LjAzMzkgMjQuMDIzNEg0MC4wMzEyVjI4LjAyNkg0NC4wMzM5VjI0LjAyMzRaIiBmaWxsPSIjNDI0MjQyIi8+CjwvZz4KPGRlZnM+CjxjbGlwUGF0aCBpZD0iY2xpcDAiPgo8cmVjdCB3aWR0aD0iNTMiIGhlaWdodD0iMzYiIGZpbGw9IndoaXRlIi8+CjwvY2xpcFBhdGg+CjwvZGVmcz4KPC9zdmc+Cg==\"), __webpack_require__.b);\nvar ___CSS_LOADER_URL_IMPORT_1___ = new URL(/* asset import */ __webpack_require__(/*! data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iNTMiIGhlaWdodD0iMzYiIHZpZXdCb3g9IjAgMCA1MyAzNiIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPGcgY2xpcC1wYXRoPSJ1cmwoI2NsaXAwKSI+CjxwYXRoIGZpbGwtcnVsZT0iZXZlbm9kZCIgY2xpcC1ydWxlPSJldmVub2RkIiBkPSJNNDguMDM2NCA0LjAxMDQySDQuMDA3NzlMNC4wMDc3OSAzMi4wMjg2SDQ4LjAzNjRWNC4wMTA0MlpNNC4wMDc3OSAwLjAwNzgxMjVDMS43OTcyMSAwLjAwNzgxMjUgMC4wMDUxODc5OSAxLjc5OTg0IDAuMDA1MTg3OTkgNC4wMTA0MlYzMi4wMjg2QzAuMDA1MTg3OTkgMzQuMjM5MiAxLjc5NzIxIDM2LjAzMTIgNC4wMDc3OSAzNi4wMzEySDQ4LjAzNjRDNTAuMjQ3IDM2LjAzMTIgNTIuMDM5IDM0LjIzOTIgNTIuMDM5IDMyLjAyODZWNC4wMTA0MkM1Mi4wMzkgMS43OTk4NCA1MC4yNDcgMC4wMDc4MTI1IDQ4LjAzNjQgMC4wMDc4MTI1SDQuMDA3NzlaTTguMDEwNDIgOC4wMTMwMkgxMi4wMTNWMTIuMDE1Nkg4LjAxMDQyVjguMDEzMDJaTTIwLjAxODIgOC4wMTMwMkgxNi4wMTU2VjEyLjAxNTZIMjAuMDE4MlY4LjAxMzAyWk0yNC4wMjA4IDguMDEzMDJIMjguMDIzNFYxMi4wMTU2SDI0LjAyMDhWOC4wMTMwMlpNMzYuMDI4NiA4LjAxMzAySDMyLjAyNlYxMi4wMTU2SDM2LjAyODZWOC4wMTMwMlpNNDAuMDMxMiA4LjAxMzAySDQ0LjAzMzlWMTIuMDE1Nkg0MC4wMzEyVjguMDEzMDJaTTE2LjAxNTYgMTYuMDE4Mkg4LjAxMDQyVjIwLjAyMDhIMTYuMDE1NlYxNi4wMTgyWk0yMC4wMTgyIDE2LjAxODJIMjQuMDIwOFYyMC4wMjA4SDIwLjAxODJWMTYuMDE4MlpNMzIuMDI2IDE2LjAxODJIMjguMDIzNFYyMC4wMjA4SDMyLjAyNlYxNi4wMTgyWk00NC4wMzM5IDE2LjAxODJWMjAuMDIwOEgzNi4wMjg2VjE2LjAxODJINDQuMDMzOVpNMTIuMDEzIDI0LjAyMzRIOC4wMTA0MlYyOC4wMjZIMTIuMDEzVjI0LjAyMzRaTTE2LjAxNTYgMjQuMDIzNEgzNi4wMjg2VjI4LjAyNkgxNi4wMTU2VjI0LjAyMzRaTTQ0LjAzMzkgMjQuMDIzNEg0MC4wMzEyVjI4LjAyNkg0NC4wMzM5VjI0LjAyMzRaIiBmaWxsPSIjQzVDNUM1Ii8+CjwvZz4KPGRlZnM+CjxjbGlwUGF0aCBpZD0iY2xpcDAiPgo8cmVjdCB3aWR0aD0iNTMiIGhlaWdodD0iMzYiIGZpbGw9IndoaXRlIi8+CjwvY2xpcFBhdGg+CjwvZGVmcz4KPC9zdmc+Cg== */ \"data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iNTMiIGhlaWdodD0iMzYiIHZpZXdCb3g9IjAgMCA1MyAzNiIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPGcgY2xpcC1wYXRoPSJ1cmwoI2NsaXAwKSI+CjxwYXRoIGZpbGwtcnVsZT0iZXZlbm9kZCIgY2xpcC1ydWxlPSJldmVub2RkIiBkPSJNNDguMDM2NCA0LjAxMDQySDQuMDA3NzlMNC4wMDc3OSAzMi4wMjg2SDQ4LjAzNjRWNC4wMTA0MlpNNC4wMDc3OSAwLjAwNzgxMjVDMS43OTcyMSAwLjAwNzgxMjUgMC4wMDUxODc5OSAxLjc5OTg0IDAuMDA1MTg3OTkgNC4wMTA0MlYzMi4wMjg2QzAuMDA1MTg3OTkgMzQuMjM5MiAxLjc5NzIxIDM2LjAzMTIgNC4wMDc3OSAzNi4wMzEySDQ4LjAzNjRDNTAuMjQ3IDM2LjAzMTIgNTIuMDM5IDM0LjIzOTIgNTIuMDM5IDMyLjAyODZWNC4wMTA0MkM1Mi4wMzkgMS43OTk4NCA1MC4yNDcgMC4wMDc4MTI1IDQ4LjAzNjQgMC4wMDc4MTI1SDQuMDA3NzlaTTguMDEwNDIgOC4wMTMwMkgxMi4wMTNWMTIuMDE1Nkg4LjAxMDQyVjguMDEzMDJaTTIwLjAxODIgOC4wMTMwMkgxNi4wMTU2VjEyLjAxNTZIMjAuMDE4MlY4LjAxMzAyWk0yNC4wMjA4IDguMDEzMDJIMjguMDIzNFYxMi4wMTU2SDI0LjAyMDhWOC4wMTMwMlpNMzYuMDI4NiA4LjAxMzAySDMyLjAyNlYxMi4wMTU2SDM2LjAyODZWOC4wMTMwMlpNNDAuMDMxMiA4LjAxMzAySDQ0LjAzMzlWMTIuMDE1Nkg0MC4wMzEyVjguMDEzMDJaTTE2LjAxNTYgMTYuMDE4Mkg4LjAxMDQyVjIwLjAyMDhIMTYuMDE1NlYxNi4wMTgyWk0yMC4wMTgyIDE2LjAxODJIMjQuMDIwOFYyMC4wMjA4SDIwLjAxODJWMTYuMDE4MlpNMzIuMDI2IDE2LjAxODJIMjguMDIzNFYyMC4wMjA4SDMyLjAyNlYxNi4wMTgyWk00NC4wMzM5IDE2LjAxODJWMjAuMDIwOEgzNi4wMjg2VjE2LjAxODJINDQuMDMzOVpNMTIuMDEzIDI0LjAyMzRIOC4wMTA0MlYyOC4wMjZIMTIuMDEzVjI0LjAyMzRaTTE2LjAxNTYgMjQuMDIzNEgzNi4wMjg2VjI4LjAyNkgxNi4wMTU2VjI0LjAyMzRaTTQ0LjAzMzkgMjQuMDIzNEg0MC4wMzEyVjI4LjAyNkg0NC4wMzM5VjI0LjAyMzRaIiBmaWxsPSIjQzVDNUM1Ii8+CjwvZz4KPGRlZnM+CjxjbGlwUGF0aCBpZD0iY2xpcDAiPgo8cmVjdCB3aWR0aD0iNTMiIGhlaWdodD0iMzYiIGZpbGw9IndoaXRlIi8+CjwvY2xpcFBhdGg+CjwvZGVmcz4KPC9zdmc+Cg==\"), __webpack_require__.b);\nvar ___CSS_LOADER_EXPORT___ = _css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default()((_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default()));\nvar ___CSS_LOADER_URL_REPLACEMENT_0___ = _css_loader_dist_runtime_getUrl_js__WEBPACK_IMPORTED_MODULE_2___default()(___CSS_LOADER_URL_IMPORT_0___);\nvar ___CSS_LOADER_URL_REPLACEMENT_1___ = _css_loader_dist_runtime_getUrl_js__WEBPACK_IMPORTED_MODULE_2___default()(___CSS_LOADER_URL_IMPORT_1___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, `/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n.monaco-editor .iPadShowKeyboard {\n\twidth: 58px;\n\tmin-width: 0;\n\theight: 36px;\n\tmin-height: 0;\n\tmargin: 0;\n\tpadding: 0;\n\tposition: absolute;\n\tresize: none;\n\toverflow: hidden;\n\tbackground: url(${___CSS_LOADER_URL_REPLACEMENT_0___}) center center no-repeat;\n\tborder: 4px solid #F6F6F6;\n\tborder-radius: 4px;\n}\n\n.monaco-editor.vs-dark .iPadShowKeyboard {\n\tbackground: url(${___CSS_LOADER_URL_REPLACEMENT_1___}) center center no-repeat;\n\tborder: 4px solid #252526;\n}`, \"\"]);\n// Exports\n/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (___CSS_LOADER_EXPORT___);\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/standalone/browser/iPadShowKeyboard/iPadShowKeyboard.css?./node_modules/css-loader/dist/cjs.js");
/***/ }),
/***/ "./node_modules/css-loader/dist/cjs.js!./node_modules/monaco-editor/esm/vs/editor/standalone/browser/inspectTokens/inspectTokens.css":
/*!*******************************************************************************************************************************************!*\
!*** ./node_modules/css-loader/dist/cjs.js!./node_modules/monaco-editor/esm/vs/editor/standalone/browser/inspectTokens/inspectTokens.css ***!
\*******************************************************************************************************************************************/
/***/ ((module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": () => (__WEBPACK_DEFAULT_EXPORT__)\n/* harmony export */ });\n/* harmony import */ var _css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../../../../../css-loader/dist/runtime/noSourceMaps.js */ \"./node_modules/css-loader/dist/runtime/noSourceMaps.js\");\n/* harmony import */ var _css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var _css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../../../../css-loader/dist/runtime/api.js */ \"./node_modules/css-loader/dist/runtime/api.js\");\n/* harmony import */ var _css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__);\n// Imports\n\n\nvar ___CSS_LOADER_EXPORT___ = _css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default()((_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default()));\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, `/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n.monaco-editor .tokens-inspect-widget {\n\tz-index: 50;\n\tuser-select: text;\n\t-webkit-user-select: text;\n\tpadding: 10px;\n\tcolor: var(--vscode-editorHoverWidget-foreground);\n\tbackground-color: var(--vscode-editorHoverWidget-background);\n\tborder: 1px solid var(--vscode-editorHoverWidget-border);\n}\n.monaco-editor.hc-black .tokens-inspect-widget, .monaco-editor.hc-light .tokens-inspect-widget {\n\tborder-width: 2px;\n}\n\n.monaco-editor .tokens-inspect-widget .tokens-inspect-separator {\n\theight: 1px;\n\tborder: 0;\n\tbackground-color: var(--vscode-editorHoverWidget-border);\n}\n\n.monaco-editor .tokens-inspect-widget .tm-token {\n\tfont-family: var(--monaco-monospace-font);\n}\n\n.monaco-editor .tokens-inspect-widget .tm-token-length {\n\tfont-weight: normal;\n\tfont-size: 60%;\n\tfloat: right;\n}\n\n.monaco-editor .tokens-inspect-widget .tm-metadata-table {\n\twidth: 100%;\n}\n\n.monaco-editor .tokens-inspect-widget .tm-metadata-value {\n\tfont-family: var(--monaco-monospace-font);\n\ttext-align: right;\n}\n\n.monaco-editor .tokens-inspect-widget .tm-token-type {\n\tfont-family: var(--monaco-monospace-font);\n}\n`, \"\"]);\n// Exports\n/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (___CSS_LOADER_EXPORT___);\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/standalone/browser/inspectTokens/inspectTokens.css?./node_modules/css-loader/dist/cjs.js");
/***/ }),
/***/ "./node_modules/css-loader/dist/cjs.js!./node_modules/monaco-editor/esm/vs/editor/standalone/browser/quickInput/standaloneQuickInput.css":
/*!***********************************************************************************************************************************************!*\
!*** ./node_modules/css-loader/dist/cjs.js!./node_modules/monaco-editor/esm/vs/editor/standalone/browser/quickInput/standaloneQuickInput.css ***!
\***********************************************************************************************************************************************/
/***/ ((module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": () => (__WEBPACK_DEFAULT_EXPORT__)\n/* harmony export */ });\n/* harmony import */ var _css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../../../../../css-loader/dist/runtime/noSourceMaps.js */ \"./node_modules/css-loader/dist/runtime/noSourceMaps.js\");\n/* harmony import */ var _css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var _css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../../../../css-loader/dist/runtime/api.js */ \"./node_modules/css-loader/dist/runtime/api.js\");\n/* harmony import */ var _css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__);\n// Imports\n\n\nvar ___CSS_LOADER_EXPORT___ = _css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default()((_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default()));\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, `/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n.quick-input-widget {\n\tfont-size: 13px;\n}\n\n.quick-input-widget .monaco-highlighted-label .highlight,\n.quick-input-widget .monaco-highlighted-label .highlight {\n\tcolor: #0066BF;\n}\n\n.vs .quick-input-widget .monaco-list-row.focused .monaco-highlighted-label .highlight,\n.vs .quick-input-widget .monaco-list-row.focused .monaco-highlighted-label .highlight {\n\tcolor: #9DDDFF;\n}\n\n.vs-dark .quick-input-widget .monaco-highlighted-label .highlight,\n.vs-dark .quick-input-widget .monaco-highlighted-label .highlight {\n\tcolor: #0097fb;\n}\n\n.hc-black .quick-input-widget .monaco-highlighted-label .highlight,\n.hc-black .quick-input-widget .monaco-highlighted-label .highlight {\n\tcolor: #F38518;\n}\n\n.hc-light .quick-input-widget .monaco-highlighted-label .highlight,\n.hc-light .quick-input-widget .monaco-highlighted-label .highlight {\n\tcolor: #0F4A85;\n}\n\n.monaco-keybinding > .monaco-keybinding-key {\n\tbackground-color: rgba(221, 221, 221, 0.4);\n\tborder: solid 1px rgba(204, 204, 204, 0.4);\n\tborder-bottom-color: rgba(187, 187, 187, 0.4);\n\tbox-shadow: inset 0 -1px 0 rgba(187, 187, 187, 0.4);\n\tcolor: #555;\n}\n\n.hc-black .monaco-keybinding > .monaco-keybinding-key {\n\tbackground-color: transparent;\n\tborder: solid 1px rgb(111, 195, 223);\n\tbox-shadow: none;\n\tcolor: #fff;\n}\n\n.hc-light .monaco-keybinding > .monaco-keybinding-key {\n\tbackground-color: transparent;\n\tborder: solid 1px #0F4A85;\n\tbox-shadow: none;\n\tcolor: #292929;\n}\n\n.vs-dark .monaco-keybinding > .monaco-keybinding-key {\n\tbackground-color: rgba(128, 128, 128, 0.17);\n\tborder: solid 1px rgba(51, 51, 51, 0.6);\n\tborder-bottom-color: rgba(68, 68, 68, 0.6);\n\tbox-shadow: inset 0 -1px 0 rgba(68, 68, 68, 0.6);\n\tcolor: #ccc;\n}\n`, \"\"]);\n// Exports\n/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (___CSS_LOADER_EXPORT___);\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/standalone/browser/quickInput/standaloneQuickInput.css?./node_modules/css-loader/dist/cjs.js");
/***/ }),
/***/ "./node_modules/css-loader/dist/cjs.js!./node_modules/monaco-editor/esm/vs/editor/standalone/browser/standalone-tokens.css":
/*!*********************************************************************************************************************************!*\
!*** ./node_modules/css-loader/dist/cjs.js!./node_modules/monaco-editor/esm/vs/editor/standalone/browser/standalone-tokens.css ***!
\*********************************************************************************************************************************/
/***/ ((module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": () => (__WEBPACK_DEFAULT_EXPORT__)\n/* harmony export */ });\n/* harmony import */ var _css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../../../../css-loader/dist/runtime/noSourceMaps.js */ \"./node_modules/css-loader/dist/runtime/noSourceMaps.js\");\n/* harmony import */ var _css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var _css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../../../css-loader/dist/runtime/api.js */ \"./node_modules/css-loader/dist/runtime/api.js\");\n/* harmony import */ var _css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__);\n// Imports\n\n\nvar ___CSS_LOADER_EXPORT___ = _css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default()((_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default()));\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, `/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n\n/* Default standalone editor fonts */\n.monaco-editor {\n\tfont-family: -apple-system, BlinkMacSystemFont, \"Segoe WPC\", \"Segoe UI\", \"HelveticaNeue-Light\", system-ui, \"Ubuntu\", \"Droid Sans\", sans-serif;\n\t--monaco-monospace-font: \"SF Mono\", Monaco, Menlo, Consolas, \"Ubuntu Mono\", \"Liberation Mono\", \"DejaVu Sans Mono\", \"Courier New\", monospace;\n}\n\n.monaco-menu .monaco-action-bar.vertical .action-item .action-menu-item:focus .action-label {\n\tstroke-width: 1.2px;\n}\n\n.monaco-editor.vs-dark .monaco-menu .monaco-action-bar.vertical .action-menu-item:focus .action-label,\n.monaco-editor.hc-black .monaco-menu .monaco-action-bar.vertical .action-menu-item:focus .action-label,\n.monaco-editor.hc-light .monaco-menu .monaco-action-bar.vertical .action-menu-item:focus .action-label {\n\tstroke-width: 1.2px;\n}\n\n.monaco-hover p {\n\tmargin: 0;\n}\n\n/* See https://github.com/microsoft/monaco-editor/issues/2168#issuecomment-780078600 */\n.monaco-aria-container {\n\tposition: absolute !important;\n\ttop: 0; /* avoid being placed underneath a sibling element */\n\theight: 1px;\n\twidth: 1px;\n\tmargin: -1px;\n\toverflow: hidden;\n\tpadding: 0;\n\tclip: rect(1px, 1px, 1px, 1px);\n\tclip-path: inset(50%);\n}\n\n.monaco-editor, .monaco-diff-editor .synthetic-focus,\n.monaco-editor, .monaco-diff-editor [tabindex=\"0\"]:focus,\n.monaco-editor, .monaco-diff-editor [tabindex=\"-1\"]:focus,\n.monaco-editor, .monaco-diff-editor button:focus,\n.monaco-editor, .monaco-diff-editor input[type=button]:focus,\n.monaco-editor, .monaco-diff-editor input[type=checkbox]:focus,\n.monaco-editor, .monaco-diff-editor input[type=search]:focus,\n.monaco-editor, .monaco-diff-editor input[type=text]:focus,\n.monaco-editor, .monaco-diff-editor select:focus,\n.monaco-editor, .monaco-diff-editor textarea:focus {\n\toutline-width: 1px;\n\toutline-style: solid;\n\toutline-offset: -1px;\n\toutline-color: var(--vscode-focusBorder);\n\topacity: 1\n}\n`, \"\"]);\n// Exports\n/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (___CSS_LOADER_EXPORT___);\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/standalone/browser/standalone-tokens.css?./node_modules/css-loader/dist/cjs.js");
/***/ }),
/***/ "./node_modules/css-loader/dist/cjs.js!./node_modules/monaco-editor/esm/vs/platform/actionWidget/browser/actionWidget.css":
/*!********************************************************************************************************************************!*\
!*** ./node_modules/css-loader/dist/cjs.js!./node_modules/monaco-editor/esm/vs/platform/actionWidget/browser/actionWidget.css ***!
\********************************************************************************************************************************/
/***/ ((module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": () => (__WEBPACK_DEFAULT_EXPORT__)\n/* harmony export */ });\n/* harmony import */ var _css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../../../../css-loader/dist/runtime/noSourceMaps.js */ \"./node_modules/css-loader/dist/runtime/noSourceMaps.js\");\n/* harmony import */ var _css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var _css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../../../css-loader/dist/runtime/api.js */ \"./node_modules/css-loader/dist/runtime/api.js\");\n/* harmony import */ var _css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__);\n// Imports\n\n\nvar ___CSS_LOADER_EXPORT___ = _css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default()((_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default()));\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, `/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n.action-widget {\n\tfont-size: 13px;\n\tborder-radius: 0;\n\tmin-width: 160px;\n\tmax-width: 80vw;\n\tz-index: 40;\n\tdisplay: block;\n\twidth: 100%;\n\tborder: 1px solid var(--vscode-editorWidget-border) !important;\n\tborder-radius: 2px;\n\tbackground-color: var(--vscode-editorWidget-background);\n\tcolor: var(--vscode-editorWidget-foreground);\n}\n\n.context-view-block {\n\tposition: fixed;\n\tcursor: initial;\n\tleft: 0;\n\ttop: 0;\n\twidth: 100%;\n\theight: 100%;\n\tz-index: -1;\n}\n\n.context-view-pointerBlock {\n\tposition: fixed;\n\tcursor: initial;\n\tleft: 0;\n\ttop: 0;\n\twidth: 100%;\n\theight: 100%;\n\tz-index: 2;\n}\n\n.action-widget .monaco-list {\n\tuser-select: none;\n\t-webkit-user-select: none;\n\tborder: none !important;\n\tborder-width: 0 !important;\n}\n\n.action-widget .monaco-list:focus:before {\n\toutline: 0 !important;\n}\n\n.action-widget .monaco-list .monaco-scrollable-element {\n\toverflow: visible;\n}\n\n/** Styles for each row in the list element **/\n.action-widget .monaco-list .monaco-list-row {\n\tpadding: 0 10px;\n\twhite-space: nowrap;\n\tcursor: pointer;\n\ttouch-action: none;\n\twidth: 100%;\n}\n\n.action-widget .monaco-list .monaco-list-row.action.focused:not(.option-disabled) {\n\tbackground-color: var(--vscode-quickInputList-focusBackground) !important;\n\tcolor: var(--vscode-quickInputList-focusForeground);\n\toutline: 1px solid var(--vscode-menu-selectionBorder, transparent);\n\toutline-offset: -1px;\n}\n\n.action-widget .monaco-list-row.group-header {\n\tcolor: var(--vscode-descriptionForeground) !important;\n\tfont-weight: 600;\n}\n\n.action-widget .monaco-list .group-header,\n.action-widget .monaco-list .option-disabled,\n.action-widget .monaco-list .option-disabled:before,\n.action-widget .monaco-list .option-disabled .focused,\n.action-widget .monaco-list .option-disabled .focused:before {\n\tcursor: default !important;\n\t-webkit-touch-callout: none;\n\t-webkit-user-select: none;\n\tuser-select: none;\n\tbackground-color: transparent !important;\n\toutline: 0 solid !important;\n}\n\n.action-widget .monaco-list-row.action {\n\tdisplay: flex;\n\tgap: 6px;\n\talign-items: center;\n}\n\n.action-widget .monaco-list-row.action.option-disabled,\n.action-widget .monaco-list:focus .monaco-list-row.focused.action.option-disabled,\n.action-widget .monaco-list-row.action.option-disabled .codicon,\n.action-widget .monaco-list:not(.drop-target):not(.dragging) .monaco-list-row:hover:not(.selected):not(.focused).option-disabled {\n\tcolor: var(--vscode-disabledForeground);\n}\n\n\n.action-widget .monaco-list-row.action:not(.option-disabled) .codicon {\n\tcolor: inherit;\n}\n\n.action-widget .monaco-list-row.action .title {\n\tflex: 1;\n\toverflow: hidden;\n\ttext-overflow: ellipsis;\n}\n\n.action-widget .monaco-list-row.action .monaco-keybinding > .monaco-keybinding-key {\n\t\tbackground-color: var(--vscode-keybindingLabel-background);\n\t\tcolor: var(--vscode-keybindingLabel-foreground);\n\t\tborder-style: solid;\n\t\tborder-width: 1px;\n\t\tborder-radius: 3px;\n\t\tborder-color: var(--vscode-keybindingLabel-border);\n\t\tborder-bottom-color: var(--vscode-keybindingLabel-bottomBorder);\n\t\tbox-shadow: inset 0 -1px 0 var(--vscode-widget-shadow);\n}\n\n/* Action bar */\n\n.action-widget .action-widget-action-bar {\n\tbackground-color: var(--vscode-editorHoverWidget-statusBarBackground);\n\tborder-top: 1px solid var(--vscode-editorHoverWidget-border);\n}\n\n.action-widget .action-widget-action-bar::before {\n\tdisplay: block;\n\tcontent: \"\";\n\twidth: 100%;\n}\n\n.action-widget .action-widget-action-bar .actions-container {\n\tpadding: 0 8px;\n}\n\n.action-widget-action-bar .action-label {\n\tcolor: var(--vscode-textLink-activeForeground);\n\tfont-size: 12px;\n\tline-height: 22px;\n\tpadding: 0;\n\tpointer-events: all;\n}\n\n.action-widget-action-bar .action-item {\n\tmargin-right: 16px;\n\tpointer-events: none;\n}\n\n.action-widget-action-bar .action-label:hover {\n\tbackground-color: transparent !important;\n}\n\n.monaco-action-bar .actions-container.highlight-toggled .action-label.checked {\n\t/* The important gives this rule precedence over the hover rule. */\n\tbackground: var(--vscode-actionBar-toggledBackground) !important;\n}\n`, \"\"]);\n// Exports\n/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (___CSS_LOADER_EXPORT___);\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/platform/actionWidget/browser/actionWidget.css?./node_modules/css-loader/dist/cjs.js");
/***/ }),
/***/ "./node_modules/css-loader/dist/cjs.js!./node_modules/monaco-editor/esm/vs/platform/actions/browser/menuEntryActionViewItem.css":
/*!**************************************************************************************************************************************!*\
!*** ./node_modules/css-loader/dist/cjs.js!./node_modules/monaco-editor/esm/vs/platform/actions/browser/menuEntryActionViewItem.css ***!
\**************************************************************************************************************************************/
/***/ ((module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": () => (__WEBPACK_DEFAULT_EXPORT__)\n/* harmony export */ });\n/* harmony import */ var _css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../../../../css-loader/dist/runtime/noSourceMaps.js */ \"./node_modules/css-loader/dist/runtime/noSourceMaps.js\");\n/* harmony import */ var _css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var _css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../../../css-loader/dist/runtime/api.js */ \"./node_modules/css-loader/dist/runtime/api.js\");\n/* harmony import */ var _css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__);\n// Imports\n\n\nvar ___CSS_LOADER_EXPORT___ = _css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default()((_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default()));\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, `/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n.monaco-action-bar .action-item.menu-entry .action-label.icon {\n\twidth: 16px;\n\theight: 16px;\n\tbackground-repeat: no-repeat;\n\tbackground-position: 50%;\n\tbackground-size: 16px;\n}\n\n.monaco-dropdown-with-default {\n\tdisplay: flex !important;\n\tflex-direction: row;\n\tborder-radius: 5px;\n}\n\n.monaco-dropdown-with-default > .action-container > .action-label {\n\tmargin-right: 0;\n}\n\n.monaco-dropdown-with-default > .action-container.menu-entry > .action-label.icon {\n\twidth: 16px;\n\theight: 16px;\n\tbackground-repeat: no-repeat;\n\tbackground-position: 50%;\n\tbackground-size: 16px;\n}\n\n.monaco-dropdown-with-default:hover {\n\tbackground-color: var(--vscode-toolbar-hoverBackground);\n}\n\n.monaco-dropdown-with-default > .dropdown-action-container > .monaco-dropdown > .dropdown-label .codicon[class*='codicon-'] {\n\tfont-size: 12px;\n\tpadding-left: 0px;\n\tpadding-right: 0px;\n\tline-height: 16px;\n\tmargin-left: -3px;\n}\n\n.monaco-dropdown-with-default > .dropdown-action-container > .monaco-dropdown > .dropdown-label > .action-label {\n\tdisplay: block;\n\tbackground-size: 16px;\n\tbackground-position: center center;\n\tbackground-repeat: no-repeat;\n}\n`, \"\"]);\n// Exports\n/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (___CSS_LOADER_EXPORT___);\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/platform/actions/browser/menuEntryActionViewItem.css?./node_modules/css-loader/dist/cjs.js");
/***/ }),
/***/ "./node_modules/css-loader/dist/cjs.js!./node_modules/monaco-editor/esm/vs/platform/opener/browser/link.css":
/*!******************************************************************************************************************!*\
!*** ./node_modules/css-loader/dist/cjs.js!./node_modules/monaco-editor/esm/vs/platform/opener/browser/link.css ***!
\******************************************************************************************************************/
/***/ ((module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": () => (__WEBPACK_DEFAULT_EXPORT__)\n/* harmony export */ });\n/* harmony import */ var _css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../../../../css-loader/dist/runtime/noSourceMaps.js */ \"./node_modules/css-loader/dist/runtime/noSourceMaps.js\");\n/* harmony import */ var _css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var _css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../../../css-loader/dist/runtime/api.js */ \"./node_modules/css-loader/dist/runtime/api.js\");\n/* harmony import */ var _css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__);\n// Imports\n\n\nvar ___CSS_LOADER_EXPORT___ = _css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default()((_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default()));\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, `/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n.monaco-link {\n\tcolor: var(--vscode-textLink-foreground);\n}\n\n.monaco-link:hover {\n\tcolor: var(--vscode-textLink-activeForeground);\n}\n\n`, \"\"]);\n// Exports\n/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (___CSS_LOADER_EXPORT___);\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/platform/opener/browser/link.css?./node_modules/css-loader/dist/cjs.js");
/***/ }),
/***/ "./node_modules/css-loader/dist/cjs.js!./node_modules/monaco-editor/esm/vs/platform/quickinput/browser/media/quickInput.css":
/*!**********************************************************************************************************************************!*\
!*** ./node_modules/css-loader/dist/cjs.js!./node_modules/monaco-editor/esm/vs/platform/quickinput/browser/media/quickInput.css ***!
\**********************************************************************************************************************************/
/***/ ((module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": () => (__WEBPACK_DEFAULT_EXPORT__)\n/* harmony export */ });\n/* harmony import */ var _css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../../../../../css-loader/dist/runtime/noSourceMaps.js */ \"./node_modules/css-loader/dist/runtime/noSourceMaps.js\");\n/* harmony import */ var _css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var _css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../../../../css-loader/dist/runtime/api.js */ \"./node_modules/css-loader/dist/runtime/api.js\");\n/* harmony import */ var _css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__);\n// Imports\n\n\nvar ___CSS_LOADER_EXPORT___ = _css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default()((_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default()));\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, `/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n.quick-input-widget {\n\tposition: absolute;\n\twidth: 600px;\n\tz-index: 2550;\n\tleft: 50%;\n\tmargin-left: -300px;\n\t-webkit-app-region: no-drag;\n\tborder-radius: 6px;\n}\n\n.quick-input-titlebar {\n\tdisplay: flex;\n\talign-items: center;\n\tborder-top-left-radius: 5px; /* match border radius of quick input widget */\n\tborder-top-right-radius: 5px;\n}\n\n.quick-input-left-action-bar {\n\tdisplay: flex;\n\tmargin-left: 4px;\n\tflex: 1;\n}\n\n.quick-input-title {\n\tpadding: 3px 0px;\n\ttext-align: center;\n\ttext-overflow: ellipsis;\n\toverflow: hidden;\n}\n\n.quick-input-right-action-bar {\n\tdisplay: flex;\n\tmargin-right: 4px;\n\tflex: 1;\n}\n\n.quick-input-right-action-bar > .actions-container {\n\tjustify-content: flex-end;\n}\n\n.quick-input-titlebar .monaco-action-bar .action-label.codicon {\n\tbackground-position: center;\n\tbackground-repeat: no-repeat;\n\tpadding: 2px;\n}\n\n.quick-input-description {\n\tmargin: 6px 6px 6px 11px;\n}\n\n.quick-input-header .quick-input-description {\n\tmargin: 4px 2px;\n\tflex: 1;\n}\n\n.quick-input-header {\n\tdisplay: flex;\n\tpadding: 8px 6px 6px 6px;\n}\n\n.quick-input-widget.hidden-input .quick-input-header {\n\t/* reduce margins and paddings when input box hidden */\n\tpadding: 0;\n\tmargin-bottom: 0;\n}\n\n.quick-input-and-message {\n\tdisplay: flex;\n\tflex-direction: column;\n\tflex-grow: 1;\n\tmin-width: 0;\n\tposition: relative;\n}\n\n.quick-input-check-all {\n\talign-self: center;\n\tmargin: 0;\n}\n\n.quick-input-filter {\n\tflex-grow: 1;\n\tdisplay: flex;\n\tposition: relative;\n}\n\n.quick-input-box {\n\tflex-grow: 1;\n}\n\n.quick-input-widget.show-checkboxes .quick-input-box,\n.quick-input-widget.show-checkboxes .quick-input-message {\n\tmargin-left: 5px;\n}\n\n.quick-input-visible-count {\n\tposition: absolute;\n\tleft: -10000px;\n}\n\n.quick-input-count {\n\talign-self: center;\n\tposition: absolute;\n\tright: 4px;\n\tdisplay: flex;\n\talign-items: center;\n}\n\n.quick-input-count .monaco-count-badge {\n\tvertical-align: middle;\n\tpadding: 2px 4px;\n\tborder-radius: 2px;\n\tmin-height: auto;\n\tline-height: normal;\n}\n\n.quick-input-action {\n\tmargin-left: 6px;\n}\n\n.quick-input-action .monaco-text-button {\n\tfont-size: 11px;\n\tpadding: 0 6px;\n\tdisplay: flex;\n\theight: 25px;\n\talign-items: center;\n}\n\n.quick-input-message {\n\tmargin-top: -1px;\n\tpadding: 5px;\n\toverflow-wrap: break-word;\n}\n\n.quick-input-message > .codicon {\n\tmargin: 0 0.2em;\n\tvertical-align: text-bottom;\n}\n\n/* Links in descriptions & validations */\n.quick-input-message a {\n\tcolor: inherit;\n}\n\n.quick-input-progress.monaco-progress-container {\n\tposition: relative;\n}\n\n.quick-input-list {\n\tline-height: 22px;\n}\n\n.quick-input-widget.hidden-input .quick-input-list {\n\tmargin-top: 4px; /* reduce margins when input box hidden */\n\tpadding-bottom: 4px;\n}\n\n.quick-input-list .monaco-list {\n\toverflow: hidden;\n\tmax-height: calc(20 * 22px);\n\tpadding-bottom: 5px;\n}\n\n.quick-input-list .monaco-scrollable-element {\n\tpadding: 0px 5px;\n}\n\n.quick-input-list .quick-input-list-entry {\n\tbox-sizing: border-box;\n\toverflow: hidden;\n\tdisplay: flex;\n\theight: 100%;\n\tpadding: 0 6px;\n}\n\n.quick-input-list .quick-input-list-entry.quick-input-list-separator-border {\n\tborder-top-width: 1px;\n\tborder-top-style: solid;\n}\n\n.quick-input-list .monaco-list-row {\n\tborder-radius: 3px;\n}\n\n.quick-input-list .monaco-list-row[data-index=\"0\"] .quick-input-list-entry.quick-input-list-separator-border {\n\tborder-top-style: none;\n}\n\n.quick-input-list .quick-input-list-label {\n\toverflow: hidden;\n\tdisplay: flex;\n\theight: 100%;\n\tflex: 1;\n}\n\n.quick-input-list .quick-input-list-checkbox {\n\talign-self: center;\n\tmargin: 0;\n}\n\n.quick-input-list .quick-input-list-icon {\n\tbackground-size: 16px;\n\tbackground-position: left center;\n\tbackground-repeat: no-repeat;\n\tpadding-right: 6px;\n\twidth: 16px;\n\theight: 22px;\n\tdisplay: flex;\n\talign-items: center;\n\tjustify-content: center;\n}\n\n.quick-input-list .quick-input-list-rows {\n\toverflow: hidden;\n\ttext-overflow: ellipsis;\n\tdisplay: flex;\n\tflex-direction: column;\n\theight: 100%;\n\tflex: 1;\n\tmargin-left: 5px;\n}\n\n.quick-input-widget.show-checkboxes .quick-input-list .quick-input-list-rows {\n\tmargin-left: 10px;\n}\n\n.quick-input-widget .quick-input-list .quick-input-list-checkbox {\n\tdisplay: none;\n}\n.quick-input-widget.show-checkboxes .quick-input-list .quick-input-list-checkbox {\n\tdisplay: inline;\n}\n\n.quick-input-list .quick-input-list-rows > .quick-input-list-row {\n\tdisplay: flex;\n\talign-items: center;\n}\n\n.quick-input-list .quick-input-list-rows > .quick-input-list-row .monaco-icon-label,\n.quick-input-list .quick-input-list-rows > .quick-input-list-row .monaco-icon-label .monaco-icon-label-container > .monaco-icon-name-container {\n\tflex: 1; /* make sure the icon label grows within the row */\n}\n\n.quick-input-list .quick-input-list-rows > .quick-input-list-row .codicon[class*='codicon-'] {\n\tvertical-align: text-bottom;\n}\n\n.quick-input-list .quick-input-list-rows .monaco-highlighted-label > span {\n\topacity: 1;\n}\n\n.quick-input-list .quick-input-list-entry .quick-input-list-entry-keybinding {\n\tmargin-right: 8px; /* separate from the separator label or scrollbar if any */\n}\n\n.quick-input-list .quick-input-list-label-meta {\n\topacity: 0.7;\n\tline-height: normal;\n\ttext-overflow: ellipsis;\n\toverflow: hidden;\n}\n\n.quick-input-list .monaco-highlighted-label .highlight {\n\tfont-weight: bold;\n}\n\n.quick-input-list .quick-input-list-entry .quick-input-list-separator {\n\tmargin-right: 4px; /* separate from keybindings or actions */\n}\n\n.quick-input-list .quick-input-list-entry-action-bar {\n\tdisplay: flex;\n\tflex: 0;\n\toverflow: visible;\n}\n\n.quick-input-list .quick-input-list-entry-action-bar .action-label {\n\t/*\n\t * By default, actions in the quick input action bar are hidden\n\t * until hovered over them or selected.\n\t */\n\tdisplay: none;\n}\n\n.quick-input-list .quick-input-list-entry-action-bar .action-label.codicon {\n\tmargin-right: 4px;\n\tpadding: 0px 2px 2px 2px;\n}\n\n.quick-input-list .quick-input-list-entry-action-bar {\n\tmargin-top: 1px;\n}\n\n.quick-input-list .quick-input-list-entry-action-bar {\n\tmargin-right: 4px; /* separate from scrollbar */\n}\n\n.quick-input-list .quick-input-list-entry .quick-input-list-entry-action-bar .action-label.always-visible,\n.quick-input-list .quick-input-list-entry:hover .quick-input-list-entry-action-bar .action-label,\n.quick-input-list .monaco-list-row.focused .quick-input-list-entry-action-bar .action-label {\n\tdisplay: flex;\n}\n\n/* focused items in quick pick */\n.quick-input-list .monaco-list-row.focused .monaco-keybinding-key,\n.quick-input-list .monaco-list-row.focused .quick-input-list-entry .quick-input-list-separator {\n\tcolor: inherit\n}\n.quick-input-list .monaco-list-row.focused .monaco-keybinding-key {\n\tbackground: none;\n}\n\n/* Quick input separators as full-row item */\n.quick-input-list .quick-input-list-separator-as-item {\n\tfont-weight: 600;\n\tfont-size: 12px;\n}\n`, \"\"]);\n// Exports\n/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (___CSS_LOADER_EXPORT___);\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/platform/quickinput/browser/media/quickInput.css?./node_modules/css-loader/dist/cjs.js");
/***/ }),
/***/ "./node_modules/css-loader/dist/cjs.js!./node_modules/monaco-editor/esm/vs/platform/severityIcon/browser/media/severityIcon.css":
/*!**************************************************************************************************************************************!*\
!*** ./node_modules/css-loader/dist/cjs.js!./node_modules/monaco-editor/esm/vs/platform/severityIcon/browser/media/severityIcon.css ***!
\**************************************************************************************************************************************/
/***/ ((module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": () => (__WEBPACK_DEFAULT_EXPORT__)\n/* harmony export */ });\n/* harmony import */ var _css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../../../../../css-loader/dist/runtime/noSourceMaps.js */ \"./node_modules/css-loader/dist/runtime/noSourceMaps.js\");\n/* harmony import */ var _css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var _css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../../../../css-loader/dist/runtime/api.js */ \"./node_modules/css-loader/dist/runtime/api.js\");\n/* harmony import */ var _css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__);\n// Imports\n\n\nvar ___CSS_LOADER_EXPORT___ = _css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default()((_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default()));\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, `/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n.monaco-editor .zone-widget .codicon.codicon-error,\n.markers-panel .marker-icon.error, .markers-panel .marker-icon .codicon.codicon-error,\n.text-search-provider-messages .providerMessage .codicon.codicon-error,\n.extensions-viewlet > .extensions .codicon.codicon-error,\n.extension-editor .codicon.codicon-error,\n.preferences-editor .codicon.codicon-error {\n\tcolor: var(--vscode-problemsErrorIcon-foreground);\n}\n\n.monaco-editor .zone-widget .codicon.codicon-warning,\n.markers-panel .marker-icon.warning, .markers-panel .marker-icon .codicon.codicon-warning,\n.text-search-provider-messages .providerMessage .codicon.codicon-warning,\n.extensions-viewlet > .extensions .codicon.codicon-warning,\n.extension-editor .codicon.codicon-warning,\n.preferences-editor .codicon.codicon-warning {\n\tcolor: var(--vscode-problemsWarningIcon-foreground);\n}\n\n.monaco-editor .zone-widget .codicon.codicon-info,\n.markers-panel .marker-icon.info, .markers-panel .marker-icon .codicon.codicon-info,\n.text-search-provider-messages .providerMessage .codicon.codicon-info,\n.extensions-viewlet > .extensions .codicon.codicon-info,\n.extension-editor .codicon.codicon-info,\n.preferences-editor .codicon.codicon-info {\n\tcolor: var(--vscode-problemsInfoIcon-foreground);\n}\n`, \"\"]);\n// Exports\n/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (___CSS_LOADER_EXPORT___);\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/platform/severityIcon/browser/media/severityIcon.css?./node_modules/css-loader/dist/cjs.js");
/***/ }),
/***/ "./node_modules/css-loader/dist/runtime/api.js":
/*!*****************************************************!*\
!*** ./node_modules/css-loader/dist/runtime/api.js ***!
\*****************************************************/
/***/ ((module) => {
"use strict";
eval("\n\n/*\n MIT License http://www.opensource.org/licenses/mit-license.php\n Author Tobias Koppers @sokra\n*/\nmodule.exports = function (cssWithMappingToString) {\n var list = [];\n\n // return the list of modules as css string\n list.toString = function toString() {\n return this.map(function (item) {\n var content = \"\";\n var needLayer = typeof item[5] !== \"undefined\";\n if (item[4]) {\n content += \"@supports (\".concat(item[4], \") {\");\n }\n if (item[2]) {\n content += \"@media \".concat(item[2], \" {\");\n }\n if (needLayer) {\n content += \"@layer\".concat(item[5].length > 0 ? \" \".concat(item[5]) : \"\", \" {\");\n }\n content += cssWithMappingToString(item);\n if (needLayer) {\n content += \"}\";\n }\n if (item[2]) {\n content += \"}\";\n }\n if (item[4]) {\n content += \"}\";\n }\n return content;\n }).join(\"\");\n };\n\n // import a list of modules into the list\n list.i = function i(modules, media, dedupe, supports, layer) {\n if (typeof modules === \"string\") {\n modules = [[null, modules, undefined]];\n }\n var alreadyImportedModules = {};\n if (dedupe) {\n for (var k = 0; k < this.length; k++) {\n var id = this[k][0];\n if (id != null) {\n alreadyImportedModules[id] = true;\n }\n }\n }\n for (var _k = 0; _k < modules.length; _k++) {\n var item = [].concat(modules[_k]);\n if (dedupe && alreadyImportedModules[item[0]]) {\n continue;\n }\n if (typeof layer !== \"undefined\") {\n if (typeof item[5] === \"undefined\") {\n item[5] = layer;\n } else {\n item[1] = \"@layer\".concat(item[5].length > 0 ? \" \".concat(item[5]) : \"\", \" {\").concat(item[1], \"}\");\n item[5] = layer;\n }\n }\n if (media) {\n if (!item[2]) {\n item[2] = media;\n } else {\n item[1] = \"@media \".concat(item[2], \" {\").concat(item[1], \"}\");\n item[2] = media;\n }\n }\n if (supports) {\n if (!item[4]) {\n item[4] = \"\".concat(supports);\n } else {\n item[1] = \"@supports (\".concat(item[4], \") {\").concat(item[1], \"}\");\n item[4] = supports;\n }\n }\n list.push(item);\n }\n };\n return list;\n};\n\n//# sourceURL=webpack://APITestManager/./node_modules/css-loader/dist/runtime/api.js?");
/***/ }),
/***/ "./node_modules/css-loader/dist/runtime/getUrl.js":
/*!********************************************************!*\
!*** ./node_modules/css-loader/dist/runtime/getUrl.js ***!
\********************************************************/
/***/ ((module) => {
"use strict";
eval("\n\nmodule.exports = function (url, options) {\n if (!options) {\n options = {};\n }\n if (!url) {\n return url;\n }\n url = String(url.__esModule ? url.default : url);\n\n // If url is already wrapped in quotes, remove them\n if (/^['\"].*['\"]$/.test(url)) {\n url = url.slice(1, -1);\n }\n if (options.hash) {\n url += options.hash;\n }\n\n // Should url be wrapped?\n // See https://drafts.csswg.org/css-values-3/#urls\n if (/[\"'() \\t\\n]|(%20)/.test(url) || options.needQuotes) {\n return \"\\\"\".concat(url.replace(/\"/g, '\\\\\"').replace(/\\n/g, \"\\\\n\"), \"\\\"\");\n }\n return url;\n};\n\n//# sourceURL=webpack://APITestManager/./node_modules/css-loader/dist/runtime/getUrl.js?");
/***/ }),
/***/ "./node_modules/css-loader/dist/runtime/noSourceMaps.js":
/*!**************************************************************!*\
!*** ./node_modules/css-loader/dist/runtime/noSourceMaps.js ***!
\**************************************************************/
/***/ ((module) => {
"use strict";
eval("\n\nmodule.exports = function (i) {\n return i[1];\n};\n\n//# sourceURL=webpack://APITestManager/./node_modules/css-loader/dist/runtime/noSourceMaps.js?");
/***/ }),
/***/ "./node_modules/drawflow/dist/drawflow.min.js":
/*!****************************************************!*\
!*** ./node_modules/drawflow/dist/drawflow.min.js ***!
\****************************************************/
/***/ (function(module) {
eval("!function(e,t){ true?module.exports=t():0}(\"undefined\"!=typeof self?self:this,(function(){return function(e){var t={};function n(i){if(t[i])return t[i].exports;var s=t[i]={i:i,l:!1,exports:{}};return e[i].call(s.exports,s,s.exports,n),s.l=!0,s.exports}return n.m=e,n.c=t,n.d=function(e,t,i){n.o(e,t)||Object.defineProperty(e,t,{enumerable:!0,get:i})},n.r=function(e){\"undefined\"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:\"Module\"}),Object.defineProperty(e,\"__esModule\",{value:!0})},n.t=function(e,t){if(1&t&&(e=n(e)),8&t)return e;if(4&t&&\"object\"==typeof e&&e&&e.__esModule)return e;var i=Object.create(null);if(n.r(i),Object.defineProperty(i,\"default\",{enumerable:!0,value:e}),2&t&&\"string\"!=typeof e)for(var s in e)n.d(i,s,function(t){return e[t]}.bind(null,s));return i},n.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return n.d(t,\"a\",t),t},n.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},n.p=\"\",n(n.s=0)}([function(e,t,n){\"use strict\";n.r(t),n.d(t,\"default\",(function(){return i}));class i{constructor(e,t=null,n=null){this.events={},this.container=e,this.precanvas=null,this.nodeId=1,this.ele_selected=null,this.node_selected=null,this.drag=!1,this.reroute=!1,this.reroute_fix_curvature=!1,this.curvature=.5,this.reroute_curvature_start_end=.5,this.reroute_curvature=.5,this.reroute_width=6,this.drag_point=!1,this.editor_selected=!1,this.connection=!1,this.connection_ele=null,this.connection_selected=null,this.canvas_x=0,this.canvas_y=0,this.pos_x=0,this.pos_x_start=0,this.pos_y=0,this.pos_y_start=0,this.mouse_x=0,this.mouse_y=0,this.line_path=5,this.first_click=null,this.force_first_input=!1,this.draggable_inputs=!0,this.useuuid=!1,this.parent=n,this.noderegister={},this.render=t,this.drawflow={drawflow:{Home:{data:{}}}},this.module=\"Home\",this.editor_mode=\"edit\",this.zoom=1,this.zoom_max=1.6,this.zoom_min=.5,this.zoom_value=.1,this.zoom_last_value=1,this.evCache=new Array,this.prevDiff=-1}start(){this.container.classList.add(\"parent-drawflow\"),this.container.tabIndex=0,this.precanvas=document.createElement(\"div\"),this.precanvas.classList.add(\"drawflow\"),this.container.appendChild(this.precanvas),this.container.addEventListener(\"mouseup\",this.dragEnd.bind(this)),this.container.addEventListener(\"mousemove\",this.position.bind(this)),this.container.addEventListener(\"mousedown\",this.click.bind(this)),this.container.addEventListener(\"touchend\",this.dragEnd.bind(this)),this.container.addEventListener(\"touchmove\",this.position.bind(this)),this.container.addEventListener(\"touchstart\",this.click.bind(this)),this.container.addEventListener(\"contextmenu\",this.contextmenu.bind(this)),this.container.addEventListener(\"keydown\",this.key.bind(this)),this.container.addEventListener(\"wheel\",this.zoom_enter.bind(this)),this.container.addEventListener(\"input\",this.updateNodeValue.bind(this)),this.container.addEventListener(\"dblclick\",this.dblclick.bind(this)),this.container.onpointerdown=this.pointerdown_handler.bind(this),this.container.onpointermove=this.pointermove_handler.bind(this),this.container.onpointerup=this.pointerup_handler.bind(this),this.container.onpointercancel=this.pointerup_handler.bind(this),this.container.onpointerout=this.pointerup_handler.bind(this),this.container.onpointerleave=this.pointerup_handler.bind(this),this.load()}pointerdown_handler(e){this.evCache.push(e)}pointermove_handler(e){for(var t=0;t100&&(n>this.prevDiff&&this.zoom_in(),n=n&&(n=parseInt(e)+1)}))})),this.nodeId=n}removeReouteConnectionSelected(){this.dispatch(\"connectionUnselected\",!0),this.reroute_fix_curvature&&this.connection_selected.parentElement.querySelectorAll(\".main-path\").forEach((e,t)=>{e.classList.remove(\"selected\")})}click(e){if(this.dispatch(\"click\",e),\"fixed\"===this.editor_mode){if(e.preventDefault(),\"parent-drawflow\"!==e.target.classList[0]&&\"drawflow\"!==e.target.classList[0])return!1;this.ele_selected=e.target.closest(\".parent-drawflow\")}else\"view\"===this.editor_mode?(null!=e.target.closest(\".drawflow\")||e.target.matches(\".parent-drawflow\"))&&(this.ele_selected=e.target.closest(\".parent-drawflow\"),e.preventDefault()):(this.first_click=e.target,this.ele_selected=e.target,0===e.button&&this.contextmenuDel(),null!=e.target.closest(\".drawflow_content_node\")&&(this.ele_selected=e.target.closest(\".drawflow_content_node\").parentElement));switch(this.ele_selected.classList[0]){case\"drawflow-node\":null!=this.node_selected&&(this.node_selected.classList.remove(\"selected\"),this.node_selected!=this.ele_selected&&this.dispatch(\"nodeUnselected\",!0)),null!=this.connection_selected&&(this.connection_selected.classList.remove(\"selected\"),this.removeReouteConnectionSelected(),this.connection_selected=null),this.node_selected!=this.ele_selected&&this.dispatch(\"nodeSelected\",this.ele_selected.id.slice(5)),this.node_selected=this.ele_selected,this.node_selected.classList.add(\"selected\"),this.draggable_inputs?\"SELECT\"!==e.target.tagName&&(this.drag=!0):\"INPUT\"!==e.target.tagName&&\"TEXTAREA\"!==e.target.tagName&&\"SELECT\"!==e.target.tagName&&!0!==e.target.hasAttribute(\"contenteditable\")&&(this.drag=!0);break;case\"output\":this.connection=!0,null!=this.node_selected&&(this.node_selected.classList.remove(\"selected\"),this.node_selected=null,this.dispatch(\"nodeUnselected\",!0)),null!=this.connection_selected&&(this.connection_selected.classList.remove(\"selected\"),this.removeReouteConnectionSelected(),this.connection_selected=null),this.drawConnection(e.target);break;case\"parent-drawflow\":case\"drawflow\":null!=this.node_selected&&(this.node_selected.classList.remove(\"selected\"),this.node_selected=null,this.dispatch(\"nodeUnselected\",!0)),null!=this.connection_selected&&(this.connection_selected.classList.remove(\"selected\"),this.removeReouteConnectionSelected(),this.connection_selected=null),this.editor_selected=!0;break;case\"main-path\":null!=this.node_selected&&(this.node_selected.classList.remove(\"selected\"),this.node_selected=null,this.dispatch(\"nodeUnselected\",!0)),null!=this.connection_selected&&(this.connection_selected.classList.remove(\"selected\"),this.removeReouteConnectionSelected(),this.connection_selected=null),this.connection_selected=this.ele_selected,this.connection_selected.classList.add(\"selected\");const t=this.connection_selected.parentElement.classList;t.length>1&&(this.dispatch(\"connectionSelected\",{output_id:t[2].slice(14),input_id:t[1].slice(13),output_class:t[3],input_class:t[4]}),this.reroute_fix_curvature&&this.connection_selected.parentElement.querySelectorAll(\".main-path\").forEach((e,t)=>{e.classList.add(\"selected\")}));break;case\"point\":this.drag_point=!0,this.ele_selected.classList.add(\"selected\");break;case\"drawflow-delete\":this.node_selected&&this.removeNodeId(this.node_selected.id),this.connection_selected&&this.removeConnection(),null!=this.node_selected&&(this.node_selected.classList.remove(\"selected\"),this.node_selected=null,this.dispatch(\"nodeUnselected\",!0)),null!=this.connection_selected&&(this.connection_selected.classList.remove(\"selected\"),this.removeReouteConnectionSelected(),this.connection_selected=null)}\"touchstart\"===e.type?(this.pos_x=e.touches[0].clientX,this.pos_x_start=e.touches[0].clientX,this.pos_y=e.touches[0].clientY,this.pos_y_start=e.touches[0].clientY,this.mouse_x=e.touches[0].clientX,this.mouse_y=e.touches[0].clientY):(this.pos_x=e.clientX,this.pos_x_start=e.clientX,this.pos_y=e.clientY,this.pos_y_start=e.clientY),[\"input\",\"output\",\"main-path\"].includes(this.ele_selected.classList[0])&&e.preventDefault(),this.dispatch(\"clickEnd\",e)}position(e){if(\"touchmove\"===e.type)var t=e.touches[0].clientX,n=e.touches[0].clientY;else t=e.clientX,n=e.clientY;if(this.connection&&this.updateConnection(t,n),this.editor_selected&&(i=this.canvas_x+-(this.pos_x-t),s=this.canvas_y+-(this.pos_y-n),this.dispatch(\"translate\",{x:i,y:s}),this.precanvas.style.transform=\"translate(\"+i+\"px, \"+s+\"px) scale(\"+this.zoom+\")\"),this.drag){e.preventDefault();var i=(this.pos_x-t)*this.precanvas.clientWidth/(this.precanvas.clientWidth*this.zoom),s=(this.pos_y-n)*this.precanvas.clientHeight/(this.precanvas.clientHeight*this.zoom);this.pos_x=t,this.pos_y=n,this.ele_selected.style.top=this.ele_selected.offsetTop-s+\"px\",this.ele_selected.style.left=this.ele_selected.offsetLeft-i+\"px\",this.drawflow.drawflow[this.module].data[this.ele_selected.id.slice(5)].pos_x=this.ele_selected.offsetLeft-i,this.drawflow.drawflow[this.module].data[this.ele_selected.id.slice(5)].pos_y=this.ele_selected.offsetTop-s,this.updateConnectionNodes(this.ele_selected.id)}if(this.drag_point){i=(this.pos_x-t)*this.precanvas.clientWidth/(this.precanvas.clientWidth*this.zoom),s=(this.pos_y-n)*this.precanvas.clientHeight/(this.precanvas.clientHeight*this.zoom);this.pos_x=t,this.pos_y=n;var o=this.pos_x*(this.precanvas.clientWidth/(this.precanvas.clientWidth*this.zoom))-this.precanvas.getBoundingClientRect().x*(this.precanvas.clientWidth/(this.precanvas.clientWidth*this.zoom)),l=this.pos_y*(this.precanvas.clientHeight/(this.precanvas.clientHeight*this.zoom))-this.precanvas.getBoundingClientRect().y*(this.precanvas.clientHeight/(this.precanvas.clientHeight*this.zoom));this.ele_selected.setAttributeNS(null,\"cx\",o),this.ele_selected.setAttributeNS(null,\"cy\",l);const e=this.ele_selected.parentElement.classList[2].slice(9),c=this.ele_selected.parentElement.classList[1].slice(13),d=this.ele_selected.parentElement.classList[3],a=this.ele_selected.parentElement.classList[4];let r=Array.from(this.ele_selected.parentElement.children).indexOf(this.ele_selected)-1;if(this.reroute_fix_curvature){r-=this.ele_selected.parentElement.querySelectorAll(\".main-path\").length-1,r<0&&(r=0)}const h=e.slice(5),u=this.drawflow.drawflow[this.module].data[h].outputs[d].connections.findIndex((function(e,t){return e.node===c&&e.output===a}));this.drawflow.drawflow[this.module].data[h].outputs[d].connections[u].points[r]={pos_x:o,pos_y:l};const p=this.ele_selected.parentElement.classList[2].slice(9);this.updateConnectionNodes(p)}\"touchmove\"===e.type&&(this.mouse_x=t,this.mouse_y=n),this.dispatch(\"mouseMove\",{x:t,y:n})}dragEnd(e){if(\"touchend\"===e.type)var t=this.mouse_x,n=this.mouse_y,i=document.elementFromPoint(t,n);else t=e.clientX,n=e.clientY,i=e.target;if(this.drag&&(this.pos_x_start==t&&this.pos_y_start==n||this.dispatch(\"nodeMoved\",this.ele_selected.id.slice(5))),this.drag_point&&(this.ele_selected.classList.remove(\"selected\"),this.pos_x_start==t&&this.pos_y_start==n||this.dispatch(\"rerouteMoved\",this.ele_selected.parentElement.classList[2].slice(14))),this.editor_selected&&(this.canvas_x=this.canvas_x+-(this.pos_x-t),this.canvas_y=this.canvas_y+-(this.pos_y-n),this.editor_selected=!1),!0===this.connection)if(\"input\"===i.classList[0]||this.force_first_input&&(null!=i.closest(\".drawflow_content_node\")||\"drawflow-node\"===i.classList[0])){if(!this.force_first_input||null==i.closest(\".drawflow_content_node\")&&\"drawflow-node\"!==i.classList[0])s=i.parentElement.parentElement.id,o=i.classList[1];else{if(null!=i.closest(\".drawflow_content_node\"))var s=i.closest(\".drawflow_content_node\").parentElement.id;else var s=i.id;if(0===Object.keys(this.getNodeFromId(s.slice(5)).inputs).length)var o=!1;else var o=\"input_1\"}var l=this.ele_selected.parentElement.parentElement.id,c=this.ele_selected.classList[1];if(l!==s&&!1!==o){if(0===this.container.querySelectorAll(\".connection.node_in_\"+s+\".node_out_\"+l+\".\"+c+\".\"+o).length){this.connection_ele.classList.add(\"node_in_\"+s),this.connection_ele.classList.add(\"node_out_\"+l),this.connection_ele.classList.add(c),this.connection_ele.classList.add(o);var d=s.slice(5),a=l.slice(5);this.drawflow.drawflow[this.module].data[a].outputs[c].connections.push({node:d,output:o}),this.drawflow.drawflow[this.module].data[d].inputs[o].connections.push({node:a,input:c}),this.updateConnectionNodes(\"node-\"+a),this.updateConnectionNodes(\"node-\"+d),this.dispatch(\"connectionCreated\",{output_id:a,input_id:d,output_class:c,input_class:o})}else this.dispatch(\"connectionCancel\",!0),this.connection_ele.remove();this.connection_ele=null}else this.dispatch(\"connectionCancel\",!0),this.connection_ele.remove(),this.connection_ele=null}else this.dispatch(\"connectionCancel\",!0),this.connection_ele.remove(),this.connection_ele=null;this.drag=!1,this.drag_point=!1,this.connection=!1,this.ele_selected=null,this.editor_selected=!1,this.dispatch(\"mouseUp\",e)}contextmenu(e){if(this.dispatch(\"contextmenu\",e),e.preventDefault(),\"fixed\"===this.editor_mode||\"view\"===this.editor_mode)return!1;if(this.precanvas.getElementsByClassName(\"drawflow-delete\").length&&this.precanvas.getElementsByClassName(\"drawflow-delete\")[0].remove(),this.node_selected||this.connection_selected){var t=document.createElement(\"div\");t.classList.add(\"drawflow-delete\"),t.innerHTML=\"x\",this.node_selected&&this.node_selected.appendChild(t),this.connection_selected&&this.connection_selected.parentElement.classList.length>1&&(t.style.top=e.clientY*(this.precanvas.clientHeight/(this.precanvas.clientHeight*this.zoom))-this.precanvas.getBoundingClientRect().y*(this.precanvas.clientHeight/(this.precanvas.clientHeight*this.zoom))+\"px\",t.style.left=e.clientX*(this.precanvas.clientWidth/(this.precanvas.clientWidth*this.zoom))-this.precanvas.getBoundingClientRect().x*(this.precanvas.clientWidth/(this.precanvas.clientWidth*this.zoom))+\"px\",this.precanvas.appendChild(t))}}contextmenuDel(){this.precanvas.getElementsByClassName(\"drawflow-delete\").length&&this.precanvas.getElementsByClassName(\"drawflow-delete\")[0].remove()}key(e){if(this.dispatch(\"keydown\",e),\"fixed\"===this.editor_mode||\"view\"===this.editor_mode)return!1;(\"Delete\"===e.key||\"Backspace\"===e.key&&e.metaKey)&&(null!=this.node_selected&&\"INPUT\"!==this.first_click.tagName&&\"TEXTAREA\"!==this.first_click.tagName&&!0!==this.first_click.hasAttribute(\"contenteditable\")&&this.removeNodeId(this.node_selected.id),null!=this.connection_selected&&this.removeConnection())}zoom_enter(e,t){e.ctrlKey&&(e.preventDefault(),e.deltaY>0?this.zoom_out():this.zoom_in())}zoom_refresh(){this.dispatch(\"zoom\",this.zoom),this.canvas_x=this.canvas_x/this.zoom_last_value*this.zoom,this.canvas_y=this.canvas_y/this.zoom_last_value*this.zoom,this.zoom_last_value=this.zoom,this.precanvas.style.transform=\"translate(\"+this.canvas_x+\"px, \"+this.canvas_y+\"px) scale(\"+this.zoom+\")\"}zoom_in(){this.zoomthis.zoom_min&&(this.zoom-=this.zoom_value,this.zoom_refresh())}zoom_reset(){1!=this.zoom&&(this.zoom=1,this.zoom_refresh())}createCurvature(e,t,n,i,s,o){var l=e,c=t,d=n,a=i,r=s;switch(o){case\"open\":if(e>=n)var h=l+Math.abs(d-l)*r,u=d-Math.abs(d-l)*(-1*r);else h=l+Math.abs(d-l)*r,u=d-Math.abs(d-l)*r;return\" M \"+l+\" \"+c+\" C \"+h+\" \"+c+\" \"+u+\" \"+a+\" \"+d+\" \"+a;case\"close\":if(e>=n)h=l+Math.abs(d-l)*(-1*r),u=d-Math.abs(d-l)*r;else h=l+Math.abs(d-l)*r,u=d-Math.abs(d-l)*r;return\" M \"+l+\" \"+c+\" C \"+h+\" \"+c+\" \"+u+\" \"+a+\" \"+d+\" \"+a;case\"other\":if(e>=n)h=l+Math.abs(d-l)*(-1*r),u=d-Math.abs(d-l)*(-1*r);else h=l+Math.abs(d-l)*r,u=d-Math.abs(d-l)*r;return\" M \"+l+\" \"+c+\" C \"+h+\" \"+c+\" \"+u+\" \"+a+\" \"+d+\" \"+a;default:return\" M \"+l+\" \"+c+\" C \"+(h=l+Math.abs(d-l)*r)+\" \"+c+\" \"+(u=d-Math.abs(d-l)*r)+\" \"+a+\" \"+d+\" \"+a}}drawConnection(e){var t=document.createElementNS(\"http://www.w3.org/2000/svg\",\"svg\");this.connection_ele=t;var n=document.createElementNS(\"http://www.w3.org/2000/svg\",\"path\");n.classList.add(\"main-path\"),n.setAttributeNS(null,\"d\",\"\"),t.classList.add(\"connection\"),t.appendChild(n),this.precanvas.appendChild(t);var i=e.parentElement.parentElement.id.slice(5),s=e.classList[1];this.dispatch(\"connectionStart\",{output_id:i,output_class:s})}updateConnection(e,t){const n=this.precanvas,i=this.zoom;let s=n.clientWidth/(n.clientWidth*i);s=s||0;let o=n.clientHeight/(n.clientHeight*i);o=o||0;var l=this.connection_ele.children[0],c=this.ele_selected.offsetWidth/2+(this.ele_selected.getBoundingClientRect().x-n.getBoundingClientRect().x)*s,d=this.ele_selected.offsetHeight/2+(this.ele_selected.getBoundingClientRect().y-n.getBoundingClientRect().y)*o,a=e*(this.precanvas.clientWidth/(this.precanvas.clientWidth*this.zoom))-this.precanvas.getBoundingClientRect().x*(this.precanvas.clientWidth/(this.precanvas.clientWidth*this.zoom)),r=t*(this.precanvas.clientHeight/(this.precanvas.clientHeight*this.zoom))-this.precanvas.getBoundingClientRect().y*(this.precanvas.clientHeight/(this.precanvas.clientHeight*this.zoom)),h=this.curvature,u=this.createCurvature(c,d,a,r,h,\"openclose\");l.setAttributeNS(null,\"d\",u)}addConnection(e,t,n,i){var s=this.getModuleFromNodeId(e);if(s===this.getModuleFromNodeId(t)){var o=this.getNodeFromId(e),l=!1;for(var c in o.outputs[n].connections){var d=o.outputs[n].connections[c];d.node==t&&d.output==i&&(l=!0)}if(!1===l){if(this.drawflow.drawflow[s].data[e].outputs[n].connections.push({node:t.toString(),output:i}),this.drawflow.drawflow[s].data[t].inputs[i].connections.push({node:e.toString(),input:n}),this.module===s){var a=document.createElementNS(\"http://www.w3.org/2000/svg\",\"svg\"),r=document.createElementNS(\"http://www.w3.org/2000/svg\",\"path\");r.classList.add(\"main-path\"),r.setAttributeNS(null,\"d\",\"\"),a.classList.add(\"connection\"),a.classList.add(\"node_in_node-\"+t),a.classList.add(\"node_out_node-\"+e),a.classList.add(n),a.classList.add(i),a.appendChild(r),this.precanvas.appendChild(a),this.updateConnectionNodes(\"node-\"+e),this.updateConnectionNodes(\"node-\"+t)}this.dispatch(\"connectionCreated\",{output_id:e,input_id:t,output_class:n,input_class:i})}}}updateConnectionNodes(e){const t=\"node_in_\"+e,n=\"node_out_\"+e;this.line_path;const i=this.container,s=this.precanvas,o=this.curvature,l=this.createCurvature,c=this.reroute_curvature,d=this.reroute_curvature_start_end,a=this.reroute_fix_curvature,r=this.reroute_width,h=this.zoom;let u=s.clientWidth/(s.clientWidth*h);u=u||0;let p=s.clientHeight/(s.clientHeight*h);p=p||0;const f=i.querySelectorAll(\".\"+n);Object.keys(f).map((function(t,n){if(null===f[t].querySelector(\".point\")){var m=i.querySelector(\"#\"+e),g=f[t].classList[1].replace(\"node_in_\",\"\"),_=i.querySelector(\"#\"+g).querySelectorAll(\".\"+f[t].classList[4])[0],w=_.offsetWidth/2+(_.getBoundingClientRect().x-s.getBoundingClientRect().x)*u,v=_.offsetHeight/2+(_.getBoundingClientRect().y-s.getBoundingClientRect().y)*p,y=m.querySelectorAll(\".\"+f[t].classList[3])[0],C=y.offsetWidth/2+(y.getBoundingClientRect().x-s.getBoundingClientRect().x)*u,x=y.offsetHeight/2+(y.getBoundingClientRect().y-s.getBoundingClientRect().y)*p;const n=l(C,x,w,v,o,\"openclose\");f[t].children[0].setAttributeNS(null,\"d\",n)}else{const n=f[t].querySelectorAll(\".point\");let o=\"\";const m=[];n.forEach((t,a)=>{if(0===a&&n.length-1==0){var f=i.querySelector(\"#\"+e),g=((x=t).getBoundingClientRect().x-s.getBoundingClientRect().x)*u+r,_=(x.getBoundingClientRect().y-s.getBoundingClientRect().y)*p+r,w=(L=f.querySelectorAll(\".\"+t.parentElement.classList[3])[0]).offsetWidth/2+(L.getBoundingClientRect().x-s.getBoundingClientRect().x)*u,v=L.offsetHeight/2+(L.getBoundingClientRect().y-s.getBoundingClientRect().y)*p,y=l(w,v,g,_,d,\"open\");o+=y,m.push(y);f=t;var C=t.parentElement.classList[1].replace(\"node_in_\",\"\"),x=(E=i.querySelector(\"#\"+C)).querySelectorAll(\".\"+t.parentElement.classList[4])[0];g=(R=E.querySelectorAll(\".\"+t.parentElement.classList[4])[0]).offsetWidth/2+(R.getBoundingClientRect().x-s.getBoundingClientRect().x)*u,_=R.offsetHeight/2+(R.getBoundingClientRect().y-s.getBoundingClientRect().y)*p,w=(f.getBoundingClientRect().x-s.getBoundingClientRect().x)*u+r,v=(f.getBoundingClientRect().y-s.getBoundingClientRect().y)*p+r,y=l(w,v,g,_,d,\"close\");o+=y,m.push(y)}else if(0===a){var L;f=i.querySelector(\"#\"+e),g=((x=t).getBoundingClientRect().x-s.getBoundingClientRect().x)*u+r,_=(x.getBoundingClientRect().y-s.getBoundingClientRect().y)*p+r,w=(L=f.querySelectorAll(\".\"+t.parentElement.classList[3])[0]).offsetWidth/2+(L.getBoundingClientRect().x-s.getBoundingClientRect().x)*u,v=L.offsetHeight/2+(L.getBoundingClientRect().y-s.getBoundingClientRect().y)*p,y=l(w,v,g,_,d,\"open\");o+=y,m.push(y);f=t,g=((x=n[a+1]).getBoundingClientRect().x-s.getBoundingClientRect().x)*u+r,_=(x.getBoundingClientRect().y-s.getBoundingClientRect().y)*p+r,w=(f.getBoundingClientRect().x-s.getBoundingClientRect().x)*u+r,v=(f.getBoundingClientRect().y-s.getBoundingClientRect().y)*p+r,y=l(w,v,g,_,c,\"other\");o+=y,m.push(y)}else if(a===n.length-1){var E,R;f=t,C=t.parentElement.classList[1].replace(\"node_in_\",\"\"),x=(E=i.querySelector(\"#\"+C)).querySelectorAll(\".\"+t.parentElement.classList[4])[0],g=(R=E.querySelectorAll(\".\"+t.parentElement.classList[4])[0]).offsetWidth/2+(R.getBoundingClientRect().x-s.getBoundingClientRect().x)*u,_=R.offsetHeight/2+(R.getBoundingClientRect().y-s.getBoundingClientRect().y)*p,w=(f.getBoundingClientRect().x-s.getBoundingClientRect().x)*(s.clientWidth/(s.clientWidth*h))+r,v=(f.getBoundingClientRect().y-s.getBoundingClientRect().y)*(s.clientHeight/(s.clientHeight*h))+r,y=l(w,v,g,_,d,\"close\");o+=y,m.push(y)}else{f=t,g=((x=n[a+1]).getBoundingClientRect().x-s.getBoundingClientRect().x)*(s.clientWidth/(s.clientWidth*h))+r,_=(x.getBoundingClientRect().y-s.getBoundingClientRect().y)*(s.clientHeight/(s.clientHeight*h))+r,w=(f.getBoundingClientRect().x-s.getBoundingClientRect().x)*(s.clientWidth/(s.clientWidth*h))+r,v=(f.getBoundingClientRect().y-s.getBoundingClientRect().y)*(s.clientHeight/(s.clientHeight*h))+r,y=l(w,v,g,_,c,\"other\");o+=y,m.push(y)}}),a?m.forEach((e,n)=>{f[t].children[n].setAttributeNS(null,\"d\",e)}):f[t].children[0].setAttributeNS(null,\"d\",o)}}));const m=i.querySelectorAll(\".\"+t);Object.keys(m).map((function(t,n){if(null===m[t].querySelector(\".point\")){var h=i.querySelector(\"#\"+e),f=m[t].classList[2].replace(\"node_out_\",\"\"),g=i.querySelector(\"#\"+f).querySelectorAll(\".\"+m[t].classList[3])[0],_=g.offsetWidth/2+(g.getBoundingClientRect().x-s.getBoundingClientRect().x)*u,w=g.offsetHeight/2+(g.getBoundingClientRect().y-s.getBoundingClientRect().y)*p,v=(h=h.querySelectorAll(\".\"+m[t].classList[4])[0]).offsetWidth/2+(h.getBoundingClientRect().x-s.getBoundingClientRect().x)*u,y=h.offsetHeight/2+(h.getBoundingClientRect().y-s.getBoundingClientRect().y)*p;const n=l(_,w,v,y,o,\"openclose\");m[t].children[0].setAttributeNS(null,\"d\",n)}else{const n=m[t].querySelectorAll(\".point\");let o=\"\";const h=[];n.forEach((t,a)=>{if(0===a&&n.length-1==0){var f=i.querySelector(\"#\"+e),m=((C=t).getBoundingClientRect().x-s.getBoundingClientRect().x)*u+r,g=(C.getBoundingClientRect().y-s.getBoundingClientRect().y)*p+r,_=(E=f.querySelectorAll(\".\"+t.parentElement.classList[4])[0]).offsetWidth/2+(E.getBoundingClientRect().x-s.getBoundingClientRect().x)*u,w=E.offsetHeight/2+(E.getBoundingClientRect().y-s.getBoundingClientRect().y)*p,v=l(m,g,_,w,d,\"close\");o+=v,h.push(v);f=t;var y=t.parentElement.classList[2].replace(\"node_out_\",\"\"),C=(L=i.querySelector(\"#\"+y)).querySelectorAll(\".\"+t.parentElement.classList[3])[0];m=(x=L.querySelectorAll(\".\"+t.parentElement.classList[3])[0]).offsetWidth/2+(x.getBoundingClientRect().x-s.getBoundingClientRect().x)*u,g=x.offsetHeight/2+(x.getBoundingClientRect().y-s.getBoundingClientRect().y)*p,_=(f.getBoundingClientRect().x-s.getBoundingClientRect().x)*u+r,w=(f.getBoundingClientRect().y-s.getBoundingClientRect().y)*p+r,v=l(m,g,_,w,d,\"open\");o+=v,h.push(v)}else if(0===a){var x;f=t,y=t.parentElement.classList[2].replace(\"node_out_\",\"\"),C=(L=i.querySelector(\"#\"+y)).querySelectorAll(\".\"+t.parentElement.classList[3])[0],m=(x=L.querySelectorAll(\".\"+t.parentElement.classList[3])[0]).offsetWidth/2+(x.getBoundingClientRect().x-s.getBoundingClientRect().x)*u,g=x.offsetHeight/2+(x.getBoundingClientRect().y-s.getBoundingClientRect().y)*p,_=(f.getBoundingClientRect().x-s.getBoundingClientRect().x)*u+r,w=(f.getBoundingClientRect().y-s.getBoundingClientRect().y)*p+r,v=l(m,g,_,w,d,\"open\");o+=v,h.push(v);f=t,_=((C=n[a+1]).getBoundingClientRect().x-s.getBoundingClientRect().x)*u+r,w=(C.getBoundingClientRect().y-s.getBoundingClientRect().y)*p+r,m=(f.getBoundingClientRect().x-s.getBoundingClientRect().x)*u+r,g=(f.getBoundingClientRect().y-s.getBoundingClientRect().y)*p+r,v=l(m,g,_,w,c,\"other\");o+=v,h.push(v)}else if(a===n.length-1){var L,E;f=t,y=t.parentElement.classList[1].replace(\"node_in_\",\"\"),C=(L=i.querySelector(\"#\"+y)).querySelectorAll(\".\"+t.parentElement.classList[4])[0],_=(E=L.querySelectorAll(\".\"+t.parentElement.classList[4])[0]).offsetWidth/2+(E.getBoundingClientRect().x-s.getBoundingClientRect().x)*u,w=E.offsetHeight/2+(E.getBoundingClientRect().y-s.getBoundingClientRect().y)*p,m=(f.getBoundingClientRect().x-s.getBoundingClientRect().x)*u+r,g=(f.getBoundingClientRect().y-s.getBoundingClientRect().y)*p+r,v=l(m,g,_,w,d,\"close\");o+=v,h.push(v)}else{f=t,_=((C=n[a+1]).getBoundingClientRect().x-s.getBoundingClientRect().x)*u+r,w=(C.getBoundingClientRect().y-s.getBoundingClientRect().y)*p+r,m=(f.getBoundingClientRect().x-s.getBoundingClientRect().x)*u+r,g=(f.getBoundingClientRect().y-s.getBoundingClientRect().y)*p+r,v=l(m,g,_,w,c,\"other\");o+=v,h.push(v)}}),a?h.forEach((e,n)=>{m[t].children[n].setAttributeNS(null,\"d\",e)}):m[t].children[0].setAttributeNS(null,\"d\",o)}}))}dblclick(e){null!=this.connection_selected&&this.reroute&&this.createReroutePoint(this.connection_selected),\"point\"===e.target.classList[0]&&this.removeReroutePoint(e.target)}createReroutePoint(e){this.connection_selected.classList.remove(\"selected\");const t=this.connection_selected.parentElement.classList[2].slice(9),n=this.connection_selected.parentElement.classList[1].slice(13),i=this.connection_selected.parentElement.classList[3],s=this.connection_selected.parentElement.classList[4];this.connection_selected=null;const o=document.createElementNS(\"http://www.w3.org/2000/svg\",\"circle\");o.classList.add(\"point\");var l=this.pos_x*(this.precanvas.clientWidth/(this.precanvas.clientWidth*this.zoom))-this.precanvas.getBoundingClientRect().x*(this.precanvas.clientWidth/(this.precanvas.clientWidth*this.zoom)),c=this.pos_y*(this.precanvas.clientHeight/(this.precanvas.clientHeight*this.zoom))-this.precanvas.getBoundingClientRect().y*(this.precanvas.clientHeight/(this.precanvas.clientHeight*this.zoom));o.setAttributeNS(null,\"cx\",l),o.setAttributeNS(null,\"cy\",c),o.setAttributeNS(null,\"r\",this.reroute_width);let d=0;if(this.reroute_fix_curvature){const t=e.parentElement.querySelectorAll(\".main-path\").length;var a=document.createElementNS(\"http://www.w3.org/2000/svg\",\"path\");if(a.classList.add(\"main-path\"),a.setAttributeNS(null,\"d\",\"\"),e.parentElement.insertBefore(a,e.parentElement.children[t]),1===t)e.parentElement.appendChild(o);else{const n=Array.from(e.parentElement.children).indexOf(e);d=n,e.parentElement.insertBefore(o,e.parentElement.children[n+t+1])}}else e.parentElement.appendChild(o);const r=t.slice(5),h=this.drawflow.drawflow[this.module].data[r].outputs[i].connections.findIndex((function(e,t){return e.node===n&&e.output===s}));void 0===this.drawflow.drawflow[this.module].data[r].outputs[i].connections[h].points&&(this.drawflow.drawflow[this.module].data[r].outputs[i].connections[h].points=[]),this.reroute_fix_curvature?(d>0||this.drawflow.drawflow[this.module].data[r].outputs[i].connections[h].points!==[]?this.drawflow.drawflow[this.module].data[r].outputs[i].connections[h].points.splice(d,0,{pos_x:l,pos_y:c}):this.drawflow.drawflow[this.module].data[r].outputs[i].connections[h].points.push({pos_x:l,pos_y:c}),e.parentElement.querySelectorAll(\".main-path\").forEach((e,t)=>{e.classList.remove(\"selected\")})):this.drawflow.drawflow[this.module].data[r].outputs[i].connections[h].points.push({pos_x:l,pos_y:c}),this.dispatch(\"addReroute\",r),this.updateConnectionNodes(t)}removeReroutePoint(e){const t=e.parentElement.classList[2].slice(9),n=e.parentElement.classList[1].slice(13),i=e.parentElement.classList[3],s=e.parentElement.classList[4];let o=Array.from(e.parentElement.children).indexOf(e);const l=t.slice(5),c=this.drawflow.drawflow[this.module].data[l].outputs[i].connections.findIndex((function(e,t){return e.node===n&&e.output===s}));if(this.reroute_fix_curvature){const t=e.parentElement.querySelectorAll(\".main-path\").length;e.parentElement.children[t-1].remove(),o-=t,o<0&&(o=0)}else o--;this.drawflow.drawflow[this.module].data[l].outputs[i].connections[c].points.splice(o,1),e.remove(),this.dispatch(\"removeReroute\",l),this.updateConnectionNodes(t)}registerNode(e,t,n=null,i=null){this.noderegister[e]={html:t,props:n,options:i}}getNodeFromId(e){var t=this.getModuleFromNodeId(e);return JSON.parse(JSON.stringify(this.drawflow.drawflow[t].data[e]))}getNodesFromName(e){var t=[];const n=this.drawflow.drawflow;return Object.keys(n).map((function(i,s){for(var o in n[i].data)n[i].data[o].name==e&&t.push(n[i].data[o].id)})),t}addNode(e,t,n,i,s,o,l,c,d=!1){if(this.useuuid)var a=this.getUuid();else a=this.nodeId;const r=document.createElement(\"div\");r.classList.add(\"parent-node\");const h=document.createElement(\"div\");h.innerHTML=\"\",h.setAttribute(\"id\",\"node-\"+a),h.classList.add(\"drawflow-node\"),\"\"!=o&&h.classList.add(...o.split(\" \"));const u=document.createElement(\"div\");u.classList.add(\"inputs\");const p=document.createElement(\"div\");p.classList.add(\"outputs\");const f={};for(var m=0;me(this.noderegister[c].html,{props:this.noderegister[c].props}),...this.noderegister[c].options}).$mount();_.appendChild(e.$el)}Object.entries(l).forEach((function(e,t){if(\"object\"==typeof e[1])!function e(t,n,i){if(null===t)t=l[n];else t=t[n];null!==t&&Object.entries(t).forEach((function(n,s){if(\"object\"==typeof n[1])e(t,n[0],i+\"-\"+n[0]);else for(var o=_.querySelectorAll(\"[df-\"+i+\"-\"+n[0]+\"]\"),l=0;lt(this.noderegister[e.html].html,{props:this.noderegister[e.html].props}),...this.noderegister[e.html].options}).$mount();c.appendChild(t.$el)}Object.entries(e.data).forEach((function(t,n){if(\"object\"==typeof t[1])!function t(n,i,s){if(null===n)n=e.data[i];else n=n[i];null!==n&&Object.entries(n).forEach((function(e,i){if(\"object\"==typeof e[1])t(n,e[0],s+\"-\"+e[0]);else for(var o=c.querySelectorAll(\"[df-\"+s+\"-\"+e[0]+\"]\"),l=0;l{const a=e.outputs[s].connections[o].node,r=e.outputs[s].connections[o].output,h=i.querySelector(\".connection.node_in_node-\"+a+\".node_out_node-\"+e.id+\".\"+s+\".\"+r);if(n&&0===d)for(var u=0;u{this.removeSingleConnection(e.id_output,e.id,e.output_class,e.input_class)}),delete this.drawflow.drawflow[n].data[e].inputs[t];const o=[],l=this.drawflow.drawflow[n].data[e].inputs;Object.keys(l).map((function(e,t){o.push(l[e])})),this.drawflow.drawflow[n].data[e].inputs={};const c=t.slice(6);let d=[];if(o.forEach((t,i)=>{t.connections.forEach((e,t)=>{d.push(e)}),this.drawflow.drawflow[n].data[e].inputs[\"input_\"+(i+1)]=t}),d=new Set(d.map(e=>JSON.stringify(e))),d=Array.from(d).map(e=>JSON.parse(e)),this.module===n){this.container.querySelectorAll(\"#node-\"+e+\" .inputs .input\").forEach((e,t)=>{const n=e.classList[1].slice(6);parseInt(c){this.drawflow.drawflow[n].data[t.node].outputs[t.input].connections.forEach((i,s)=>{if(i.node==e){const o=i.output.slice(6);if(parseInt(c){this.removeSingleConnection(e.id,e.id_input,e.output_class,e.input_class)}),delete this.drawflow.drawflow[n].data[e].outputs[t];const o=[],l=this.drawflow.drawflow[n].data[e].outputs;Object.keys(l).map((function(e,t){o.push(l[e])})),this.drawflow.drawflow[n].data[e].outputs={};const c=t.slice(7);let d=[];if(o.forEach((t,i)=>{t.connections.forEach((e,t)=>{d.push({node:e.node,output:e.output})}),this.drawflow.drawflow[n].data[e].outputs[\"output_\"+(i+1)]=t}),d=new Set(d.map(e=>JSON.stringify(e))),d=Array.from(d).map(e=>JSON.parse(e)),this.module===n){this.container.querySelectorAll(\"#node-\"+e+\" .outputs .output\").forEach((e,t)=>{const n=e.classList[1].slice(7);parseInt(c){this.drawflow.drawflow[n].data[t.node].inputs[t.output].connections.forEach((i,s)=>{if(i.node==e){const o=i.input.slice(7);if(parseInt(c)-1){this.module===s&&this.container.querySelector(\".connection.node_in_node-\"+t+\".node_out_node-\"+e+\".\"+n+\".\"+i).remove();var o=this.drawflow.drawflow[s].data[e].outputs[n].connections.findIndex((function(e,n){return e.node==t&&e.output===i}));this.drawflow.drawflow[s].data[e].outputs[n].connections.splice(o,1);var l=this.drawflow.drawflow[s].data[t].inputs[i].connections.findIndex((function(t,i){return t.node==e&&t.input===n}));return this.drawflow.drawflow[s].data[t].inputs[i].connections.splice(l,1),this.dispatch(\"connectionRemoved\",{output_id:e,input_id:t,output_class:n,input_class:i}),!0}return!1}return!1}removeConnectionNodeId(e){const t=\"node_in_\"+e,n=\"node_out_\"+e,i=this.container.querySelectorAll(\".\"+n);for(var s=i.length-1;s>=0;s--){var o=i[s].classList,l=this.drawflow.drawflow[this.module].data[o[1].slice(13)].inputs[o[4]].connections.findIndex((function(e,t){return e.node===o[2].slice(14)&&e.input===o[3]}));this.drawflow.drawflow[this.module].data[o[1].slice(13)].inputs[o[4]].connections.splice(l,1);var c=this.drawflow.drawflow[this.module].data[o[2].slice(14)].outputs[o[3]].connections.findIndex((function(e,t){return e.node===o[1].slice(13)&&e.output===o[4]}));this.drawflow.drawflow[this.module].data[o[2].slice(14)].outputs[o[3]].connections.splice(c,1),i[s].remove(),this.dispatch(\"connectionRemoved\",{output_id:o[2].slice(14),input_id:o[1].slice(13),output_class:o[3],input_class:o[4]})}const d=this.container.querySelectorAll(\".\"+t);for(s=d.length-1;s>=0;s--){o=d[s].classList,c=this.drawflow.drawflow[this.module].data[o[2].slice(14)].outputs[o[3]].connections.findIndex((function(e,t){return e.node===o[1].slice(13)&&e.output===o[4]}));this.drawflow.drawflow[this.module].data[o[2].slice(14)].outputs[o[3]].connections.splice(c,1);l=this.drawflow.drawflow[this.module].data[o[1].slice(13)].inputs[o[4]].connections.findIndex((function(e,t){return e.node===o[2].slice(14)&&e.input===o[3]}));this.drawflow.drawflow[this.module].data[o[1].slice(13)].inputs[o[4]].connections.splice(l,1),d[s].remove(),this.dispatch(\"connectionRemoved\",{output_id:o[2].slice(14),input_id:o[1].slice(13),output_class:o[3],input_class:o[4]})}}getModuleFromNodeId(e){var t;const n=this.drawflow.drawflow;return Object.keys(n).map((function(i,s){Object.keys(n[i].data).map((function(n,s){n==e&&(t=i)}))})),t}addModule(e){this.drawflow.drawflow[e]={data:{}},this.dispatch(\"moduleCreated\",e)}changeModule(e){this.dispatch(\"moduleChanged\",e),this.module=e,this.precanvas.innerHTML=\"\",this.canvas_x=0,this.canvas_y=0,this.pos_x=0,this.pos_y=0,this.mouse_x=0,this.mouse_y=0,this.zoom=1,this.zoom_last_value=1,this.precanvas.style.transform=\"\",this.import(this.drawflow,!1)}removeModule(e){this.module===e&&this.changeModule(\"Home\"),delete this.drawflow.drawflow[e],this.dispatch(\"moduleRemoved\",e)}clearModuleSelected(){this.precanvas.innerHTML=\"\",this.drawflow.drawflow[this.module]={data:{}}}clear(){this.precanvas.innerHTML=\"\",this.drawflow={drawflow:{Home:{data:{}}}}}export(){const e=JSON.parse(JSON.stringify(this.drawflow));return this.dispatch(\"export\",e),e}import(e,t=!0){this.clear(),this.drawflow=JSON.parse(JSON.stringify(e)),this.load(),t&&this.dispatch(\"import\",\"import\")}on(e,t){return\"function\"!=typeof t?(console.error(\"The listener callback must be a function, the given type is \"+typeof t),!1):\"string\"!=typeof e?(console.error(\"The event name must be a string, the given type is \"+typeof e),!1):(void 0===this.events[e]&&(this.events[e]={listeners:[]}),void this.events[e].listeners.push(t))}removeListener(e,t){if(!this.events[e])return!1;const n=this.events[e].listeners,i=n.indexOf(t);i>-1&&n.splice(i,1)}dispatch(e,t){if(void 0===this.events[e])return!1;this.events[e].listeners.forEach(e=>{e(t)})}getUuid(){for(var e=[],t=0;t<36;t++)e[t]=\"0123456789abcdef\".substr(Math.floor(16*Math.random()),1);return e[14]=\"4\",e[19]=\"0123456789abcdef\".substr(3&e[19]|8,1),e[8]=e[13]=e[18]=e[23]=\"-\",e.join(\"\")}}}]).default}));\n\n//# sourceURL=webpack://APITestManager/./node_modules/drawflow/dist/drawflow.min.js?");
/***/ }),
/***/ "./node_modules/inherits/inherits_browser.js":
/*!***************************************************!*\
!*** ./node_modules/inherits/inherits_browser.js ***!
\***************************************************/
/***/ ((module) => {
eval("if (typeof Object.create === 'function') {\n // implementation from standard node.js 'util' module\n module.exports = function inherits(ctor, superCtor) {\n if (superCtor) {\n ctor.super_ = superCtor\n ctor.prototype = Object.create(superCtor.prototype, {\n constructor: {\n value: ctor,\n enumerable: false,\n writable: true,\n configurable: true\n }\n })\n }\n };\n} else {\n // old school shim for old browsers\n module.exports = function inherits(ctor, superCtor) {\n if (superCtor) {\n ctor.super_ = superCtor\n var TempCtor = function () {}\n TempCtor.prototype = superCtor.prototype\n ctor.prototype = new TempCtor()\n ctor.prototype.constructor = ctor\n }\n }\n}\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/inherits/inherits_browser.js?");
/***/ }),
/***/ "include-loader!./node_modules/monaco-editor/esm/vs/editor/editor.api.js":
/*!*******************************************************************************!*\
!*** include-loader!./node_modules/monaco-editor/esm/vs/editor/editor.api.js ***!
\*******************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ CancellationTokenSource: () => (/* reexport safe */ _editor_api_js__WEBPACK_IMPORTED_MODULE_64__.CancellationTokenSource),\n/* harmony export */ Emitter: () => (/* reexport safe */ _editor_api_js__WEBPACK_IMPORTED_MODULE_64__.Emitter),\n/* harmony export */ KeyCode: () => (/* reexport safe */ _editor_api_js__WEBPACK_IMPORTED_MODULE_64__.KeyCode),\n/* harmony export */ KeyMod: () => (/* reexport safe */ _editor_api_js__WEBPACK_IMPORTED_MODULE_64__.KeyMod),\n/* harmony export */ MarkerSeverity: () => (/* reexport safe */ _editor_api_js__WEBPACK_IMPORTED_MODULE_64__.MarkerSeverity),\n/* harmony export */ MarkerTag: () => (/* reexport safe */ _editor_api_js__WEBPACK_IMPORTED_MODULE_64__.MarkerTag),\n/* harmony export */ Position: () => (/* reexport safe */ _editor_api_js__WEBPACK_IMPORTED_MODULE_64__.Position),\n/* harmony export */ Range: () => (/* reexport safe */ _editor_api_js__WEBPACK_IMPORTED_MODULE_64__.Range),\n/* harmony export */ Selection: () => (/* reexport safe */ _editor_api_js__WEBPACK_IMPORTED_MODULE_64__.Selection),\n/* harmony export */ SelectionDirection: () => (/* reexport safe */ _editor_api_js__WEBPACK_IMPORTED_MODULE_64__.SelectionDirection),\n/* harmony export */ Token: () => (/* reexport safe */ _editor_api_js__WEBPACK_IMPORTED_MODULE_64__.Token),\n/* harmony export */ Uri: () => (/* reexport safe */ _editor_api_js__WEBPACK_IMPORTED_MODULE_64__.Uri),\n/* harmony export */ \"default\": () => (__WEBPACK_DEFAULT_EXPORT__),\n/* harmony export */ editor: () => (/* reexport safe */ _editor_api_js__WEBPACK_IMPORTED_MODULE_64__.editor),\n/* harmony export */ languages: () => (/* reexport safe */ _editor_api_js__WEBPACK_IMPORTED_MODULE_64__.languages)\n/* harmony export */ });\n/* harmony import */ var _contrib_anchorSelect_browser_anchorSelect_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./contrib/anchorSelect/browser/anchorSelect.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/anchorSelect/browser/anchorSelect.js\");\n/* harmony import */ var _contrib_bracketMatching_browser_bracketMatching_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./contrib/bracketMatching/browser/bracketMatching.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/bracketMatching/browser/bracketMatching.js\");\n/* harmony import */ var _browser_coreCommands_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./browser/coreCommands.js */ \"./node_modules/monaco-editor/esm/vs/editor/browser/coreCommands.js\");\n/* harmony import */ var _contrib_caretOperations_browser_caretOperations_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./contrib/caretOperations/browser/caretOperations.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/caretOperations/browser/caretOperations.js\");\n/* harmony import */ var _contrib_caretOperations_browser_transpose_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./contrib/caretOperations/browser/transpose.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/caretOperations/browser/transpose.js\");\n/* harmony import */ var _contrib_clipboard_browser_clipboard_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./contrib/clipboard/browser/clipboard.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/clipboard/browser/clipboard.js\");\n/* harmony import */ var _contrib_codeAction_browser_codeActionContributions_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ./contrib/codeAction/browser/codeActionContributions.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/codeAction/browser/codeActionContributions.js\");\n/* harmony import */ var _contrib_codelens_browser_codelensController_js__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ./contrib/codelens/browser/codelensController.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/codelens/browser/codelensController.js\");\n/* harmony import */ var _contrib_colorPicker_browser_colorContributions_js__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ./contrib/colorPicker/browser/colorContributions.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/colorPicker/browser/colorContributions.js\");\n/* harmony import */ var _contrib_colorPicker_browser_standaloneColorPickerActions_js__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ./contrib/colorPicker/browser/standaloneColorPickerActions.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/colorPicker/browser/standaloneColorPickerActions.js\");\n/* harmony import */ var _contrib_comment_browser_comment_js__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! ./contrib/comment/browser/comment.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/comment/browser/comment.js\");\n/* harmony import */ var _contrib_contextmenu_browser_contextmenu_js__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(/*! ./contrib/contextmenu/browser/contextmenu.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/contextmenu/browser/contextmenu.js\");\n/* harmony import */ var _contrib_cursorUndo_browser_cursorUndo_js__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(/*! ./contrib/cursorUndo/browser/cursorUndo.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/cursorUndo/browser/cursorUndo.js\");\n/* harmony import */ var _browser_widget_diffEditor_diffEditor_contribution_js__WEBPACK_IMPORTED_MODULE_13__ = __webpack_require__(/*! ./browser/widget/diffEditor/diffEditor.contribution.js */ \"./node_modules/monaco-editor/esm/vs/editor/browser/widget/diffEditor/diffEditor.contribution.js\");\n/* harmony import */ var _contrib_diffEditorBreadcrumbs_browser_contribution_js__WEBPACK_IMPORTED_MODULE_14__ = __webpack_require__(/*! ./contrib/diffEditorBreadcrumbs/browser/contribution.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/diffEditorBreadcrumbs/browser/contribution.js\");\n/* harmony import */ var _contrib_dnd_browser_dnd_js__WEBPACK_IMPORTED_MODULE_15__ = __webpack_require__(/*! ./contrib/dnd/browser/dnd.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/dnd/browser/dnd.js\");\n/* harmony import */ var _contrib_documentSymbols_browser_documentSymbols_js__WEBPACK_IMPORTED_MODULE_16__ = __webpack_require__(/*! ./contrib/documentSymbols/browser/documentSymbols.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/documentSymbols/browser/documentSymbols.js\");\n/* harmony import */ var _contrib_dropOrPasteInto_browser_copyPasteContribution_js__WEBPACK_IMPORTED_MODULE_17__ = __webpack_require__(/*! ./contrib/dropOrPasteInto/browser/copyPasteContribution.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/dropOrPasteInto/browser/copyPasteContribution.js\");\n/* harmony import */ var _contrib_dropOrPasteInto_browser_dropIntoEditorContribution_js__WEBPACK_IMPORTED_MODULE_18__ = __webpack_require__(/*! ./contrib/dropOrPasteInto/browser/dropIntoEditorContribution.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/dropOrPasteInto/browser/dropIntoEditorContribution.js\");\n/* harmony import */ var _contrib_find_browser_findController_js__WEBPACK_IMPORTED_MODULE_19__ = __webpack_require__(/*! ./contrib/find/browser/findController.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/find/browser/findController.js\");\n/* harmony import */ var _contrib_folding_browser_folding_js__WEBPACK_IMPORTED_MODULE_20__ = __webpack_require__(/*! ./contrib/folding/browser/folding.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/folding/browser/folding.js\");\n/* harmony import */ var _contrib_fontZoom_browser_fontZoom_js__WEBPACK_IMPORTED_MODULE_21__ = __webpack_require__(/*! ./contrib/fontZoom/browser/fontZoom.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/fontZoom/browser/fontZoom.js\");\n/* harmony import */ var _contrib_format_browser_formatActions_js__WEBPACK_IMPORTED_MODULE_22__ = __webpack_require__(/*! ./contrib/format/browser/formatActions.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/format/browser/formatActions.js\");\n/* harmony import */ var _contrib_gotoError_browser_gotoError_js__WEBPACK_IMPORTED_MODULE_23__ = __webpack_require__(/*! ./contrib/gotoError/browser/gotoError.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/gotoError/browser/gotoError.js\");\n/* harmony import */ var _standalone_browser_quickAccess_standaloneGotoLineQuickAccess_js__WEBPACK_IMPORTED_MODULE_24__ = __webpack_require__(/*! ./standalone/browser/quickAccess/standaloneGotoLineQuickAccess.js */ \"./node_modules/monaco-editor/esm/vs/editor/standalone/browser/quickAccess/standaloneGotoLineQuickAccess.js\");\n/* harmony import */ var _contrib_gotoSymbol_browser_goToCommands_js__WEBPACK_IMPORTED_MODULE_25__ = __webpack_require__(/*! ./contrib/gotoSymbol/browser/goToCommands.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/gotoSymbol/browser/goToCommands.js\");\n/* harmony import */ var _contrib_gotoSymbol_browser_link_goToDefinitionAtPosition_js__WEBPACK_IMPORTED_MODULE_26__ = __webpack_require__(/*! ./contrib/gotoSymbol/browser/link/goToDefinitionAtPosition.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/gotoSymbol/browser/link/goToDefinitionAtPosition.js\");\n/* harmony import */ var _contrib_hover_browser_hover_js__WEBPACK_IMPORTED_MODULE_27__ = __webpack_require__(/*! ./contrib/hover/browser/hover.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/hover/browser/hover.js\");\n/* harmony import */ var _standalone_browser_iPadShowKeyboard_iPadShowKeyboard_js__WEBPACK_IMPORTED_MODULE_28__ = __webpack_require__(/*! ./standalone/browser/iPadShowKeyboard/iPadShowKeyboard.js */ \"./node_modules/monaco-editor/esm/vs/editor/standalone/browser/iPadShowKeyboard/iPadShowKeyboard.js\");\n/* harmony import */ var _contrib_inPlaceReplace_browser_inPlaceReplace_js__WEBPACK_IMPORTED_MODULE_29__ = __webpack_require__(/*! ./contrib/inPlaceReplace/browser/inPlaceReplace.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/inPlaceReplace/browser/inPlaceReplace.js\");\n/* harmony import */ var _contrib_indentation_browser_indentation_js__WEBPACK_IMPORTED_MODULE_30__ = __webpack_require__(/*! ./contrib/indentation/browser/indentation.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/indentation/browser/indentation.js\");\n/* harmony import */ var _contrib_inlayHints_browser_inlayHintsContribution_js__WEBPACK_IMPORTED_MODULE_31__ = __webpack_require__(/*! ./contrib/inlayHints/browser/inlayHintsContribution.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/inlayHints/browser/inlayHintsContribution.js\");\n/* harmony import */ var _contrib_inlineCompletions_browser_inlineCompletions_contribution_js__WEBPACK_IMPORTED_MODULE_32__ = __webpack_require__(/*! ./contrib/inlineCompletions/browser/inlineCompletions.contribution.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/inlineCompletions/browser/inlineCompletions.contribution.js\");\n/* harmony import */ var _contrib_inlineEdit_browser_inlineEdit_contribution_js__WEBPACK_IMPORTED_MODULE_33__ = __webpack_require__(/*! ./contrib/inlineEdit/browser/inlineEdit.contribution.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/inlineEdit/browser/inlineEdit.contribution.js\");\n/* harmony import */ var _contrib_inlineProgress_browser_inlineProgress_js__WEBPACK_IMPORTED_MODULE_34__ = __webpack_require__(/*! ./contrib/inlineProgress/browser/inlineProgress.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/inlineProgress/browser/inlineProgress.js\");\n/* harmony import */ var _standalone_browser_inspectTokens_inspectTokens_js__WEBPACK_IMPORTED_MODULE_35__ = __webpack_require__(/*! ./standalone/browser/inspectTokens/inspectTokens.js */ \"./node_modules/monaco-editor/esm/vs/editor/standalone/browser/inspectTokens/inspectTokens.js\");\n/* harmony import */ var _contrib_lineSelection_browser_lineSelection_js__WEBPACK_IMPORTED_MODULE_36__ = __webpack_require__(/*! ./contrib/lineSelection/browser/lineSelection.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/lineSelection/browser/lineSelection.js\");\n/* harmony import */ var _contrib_linesOperations_browser_linesOperations_js__WEBPACK_IMPORTED_MODULE_37__ = __webpack_require__(/*! ./contrib/linesOperations/browser/linesOperations.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/linesOperations/browser/linesOperations.js\");\n/* harmony import */ var _contrib_linkedEditing_browser_linkedEditing_js__WEBPACK_IMPORTED_MODULE_38__ = __webpack_require__(/*! ./contrib/linkedEditing/browser/linkedEditing.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/linkedEditing/browser/linkedEditing.js\");\n/* harmony import */ var _contrib_links_browser_links_js__WEBPACK_IMPORTED_MODULE_39__ = __webpack_require__(/*! ./contrib/links/browser/links.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/links/browser/links.js\");\n/* harmony import */ var _contrib_longLinesHelper_browser_longLinesHelper_js__WEBPACK_IMPORTED_MODULE_40__ = __webpack_require__(/*! ./contrib/longLinesHelper/browser/longLinesHelper.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/longLinesHelper/browser/longLinesHelper.js\");\n/* harmony import */ var _contrib_multicursor_browser_multicursor_js__WEBPACK_IMPORTED_MODULE_41__ = __webpack_require__(/*! ./contrib/multicursor/browser/multicursor.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/multicursor/browser/multicursor.js\");\n/* harmony import */ var _contrib_parameterHints_browser_parameterHints_js__WEBPACK_IMPORTED_MODULE_42__ = __webpack_require__(/*! ./contrib/parameterHints/browser/parameterHints.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/parameterHints/browser/parameterHints.js\");\n/* harmony import */ var _standalone_browser_quickAccess_standaloneCommandsQuickAccess_js__WEBPACK_IMPORTED_MODULE_43__ = __webpack_require__(/*! ./standalone/browser/quickAccess/standaloneCommandsQuickAccess.js */ \"./node_modules/monaco-editor/esm/vs/editor/standalone/browser/quickAccess/standaloneCommandsQuickAccess.js\");\n/* harmony import */ var _standalone_browser_quickAccess_standaloneHelpQuickAccess_js__WEBPACK_IMPORTED_MODULE_44__ = __webpack_require__(/*! ./standalone/browser/quickAccess/standaloneHelpQuickAccess.js */ \"./node_modules/monaco-editor/esm/vs/editor/standalone/browser/quickAccess/standaloneHelpQuickAccess.js\");\n/* harmony import */ var _standalone_browser_quickAccess_standaloneGotoSymbolQuickAccess_js__WEBPACK_IMPORTED_MODULE_45__ = __webpack_require__(/*! ./standalone/browser/quickAccess/standaloneGotoSymbolQuickAccess.js */ \"./node_modules/monaco-editor/esm/vs/editor/standalone/browser/quickAccess/standaloneGotoSymbolQuickAccess.js\");\n/* harmony import */ var _contrib_readOnlyMessage_browser_contribution_js__WEBPACK_IMPORTED_MODULE_46__ = __webpack_require__(/*! ./contrib/readOnlyMessage/browser/contribution.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/readOnlyMessage/browser/contribution.js\");\n/* harmony import */ var _standalone_browser_referenceSearch_standaloneReferenceSearch_js__WEBPACK_IMPORTED_MODULE_47__ = __webpack_require__(/*! ./standalone/browser/referenceSearch/standaloneReferenceSearch.js */ \"./node_modules/monaco-editor/esm/vs/editor/standalone/browser/referenceSearch/standaloneReferenceSearch.js\");\n/* harmony import */ var _contrib_rename_browser_rename_js__WEBPACK_IMPORTED_MODULE_48__ = __webpack_require__(/*! ./contrib/rename/browser/rename.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/rename/browser/rename.js\");\n/* harmony import */ var _contrib_semanticTokens_browser_documentSemanticTokens_js__WEBPACK_IMPORTED_MODULE_49__ = __webpack_require__(/*! ./contrib/semanticTokens/browser/documentSemanticTokens.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/semanticTokens/browser/documentSemanticTokens.js\");\n/* harmony import */ var _contrib_semanticTokens_browser_viewportSemanticTokens_js__WEBPACK_IMPORTED_MODULE_50__ = __webpack_require__(/*! ./contrib/semanticTokens/browser/viewportSemanticTokens.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/semanticTokens/browser/viewportSemanticTokens.js\");\n/* harmony import */ var _contrib_smartSelect_browser_smartSelect_js__WEBPACK_IMPORTED_MODULE_51__ = __webpack_require__(/*! ./contrib/smartSelect/browser/smartSelect.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/smartSelect/browser/smartSelect.js\");\n/* harmony import */ var _contrib_snippet_browser_snippetController2_js__WEBPACK_IMPORTED_MODULE_52__ = __webpack_require__(/*! ./contrib/snippet/browser/snippetController2.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/snippet/browser/snippetController2.js\");\n/* harmony import */ var _contrib_stickyScroll_browser_stickyScrollContribution_js__WEBPACK_IMPORTED_MODULE_53__ = __webpack_require__(/*! ./contrib/stickyScroll/browser/stickyScrollContribution.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/stickyScroll/browser/stickyScrollContribution.js\");\n/* harmony import */ var _contrib_suggest_browser_suggestController_js__WEBPACK_IMPORTED_MODULE_54__ = __webpack_require__(/*! ./contrib/suggest/browser/suggestController.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/suggest/browser/suggestController.js\");\n/* harmony import */ var _contrib_suggest_browser_suggestInlineCompletions_js__WEBPACK_IMPORTED_MODULE_55__ = __webpack_require__(/*! ./contrib/suggest/browser/suggestInlineCompletions.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/suggest/browser/suggestInlineCompletions.js\");\n/* harmony import */ var _standalone_browser_toggleHighContrast_toggleHighContrast_js__WEBPACK_IMPORTED_MODULE_56__ = __webpack_require__(/*! ./standalone/browser/toggleHighContrast/toggleHighContrast.js */ \"./node_modules/monaco-editor/esm/vs/editor/standalone/browser/toggleHighContrast/toggleHighContrast.js\");\n/* harmony import */ var _contrib_toggleTabFocusMode_browser_toggleTabFocusMode_js__WEBPACK_IMPORTED_MODULE_57__ = __webpack_require__(/*! ./contrib/toggleTabFocusMode/browser/toggleTabFocusMode.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/toggleTabFocusMode/browser/toggleTabFocusMode.js\");\n/* harmony import */ var _contrib_tokenization_browser_tokenization_js__WEBPACK_IMPORTED_MODULE_58__ = __webpack_require__(/*! ./contrib/tokenization/browser/tokenization.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/tokenization/browser/tokenization.js\");\n/* harmony import */ var _contrib_unicodeHighlighter_browser_unicodeHighlighter_js__WEBPACK_IMPORTED_MODULE_59__ = __webpack_require__(/*! ./contrib/unicodeHighlighter/browser/unicodeHighlighter.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/unicodeHighlighter/browser/unicodeHighlighter.js\");\n/* harmony import */ var _contrib_unusualLineTerminators_browser_unusualLineTerminators_js__WEBPACK_IMPORTED_MODULE_60__ = __webpack_require__(/*! ./contrib/unusualLineTerminators/browser/unusualLineTerminators.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/unusualLineTerminators/browser/unusualLineTerminators.js\");\n/* harmony import */ var _contrib_wordHighlighter_browser_wordHighlighter_js__WEBPACK_IMPORTED_MODULE_61__ = __webpack_require__(/*! ./contrib/wordHighlighter/browser/wordHighlighter.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/wordHighlighter/browser/wordHighlighter.js\");\n/* harmony import */ var _contrib_wordOperations_browser_wordOperations_js__WEBPACK_IMPORTED_MODULE_62__ = __webpack_require__(/*! ./contrib/wordOperations/browser/wordOperations.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/wordOperations/browser/wordOperations.js\");\n/* harmony import */ var _contrib_wordPartOperations_browser_wordPartOperations_js__WEBPACK_IMPORTED_MODULE_63__ = __webpack_require__(/*! ./contrib/wordPartOperations/browser/wordPartOperations.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/wordPartOperations/browser/wordPartOperations.js\");\n/* harmony import */ var _editor_api_js__WEBPACK_IMPORTED_MODULE_64__ = __webpack_require__(/*! !!./editor.api.js */ \"./node_modules/monaco-editor/esm/vs/editor/editor.api.js\");\n/* harmony import */ var _basic_languages_abap_abap_contribution_js__WEBPACK_IMPORTED_MODULE_65__ = __webpack_require__(/*! ../basic-languages/abap/abap.contribution.js */ \"./node_modules/monaco-editor/esm/vs/basic-languages/abap/abap.contribution.js\");\n/* harmony import */ var _basic_languages_apex_apex_contribution_js__WEBPACK_IMPORTED_MODULE_66__ = __webpack_require__(/*! ../basic-languages/apex/apex.contribution.js */ \"./node_modules/monaco-editor/esm/vs/basic-languages/apex/apex.contribution.js\");\n/* harmony import */ var _basic_languages_azcli_azcli_contribution_js__WEBPACK_IMPORTED_MODULE_67__ = __webpack_require__(/*! ../basic-languages/azcli/azcli.contribution.js */ \"./node_modules/monaco-editor/esm/vs/basic-languages/azcli/azcli.contribution.js\");\n/* harmony import */ var _basic_languages_bat_bat_contribution_js__WEBPACK_IMPORTED_MODULE_68__ = __webpack_require__(/*! ../basic-languages/bat/bat.contribution.js */ \"./node_modules/monaco-editor/esm/vs/basic-languages/bat/bat.contribution.js\");\n/* harmony import */ var _basic_languages_bicep_bicep_contribution_js__WEBPACK_IMPORTED_MODULE_69__ = __webpack_require__(/*! ../basic-languages/bicep/bicep.contribution.js */ \"./node_modules/monaco-editor/esm/vs/basic-languages/bicep/bicep.contribution.js\");\n/* harmony import */ var _basic_languages_cameligo_cameligo_contribution_js__WEBPACK_IMPORTED_MODULE_70__ = __webpack_require__(/*! ../basic-languages/cameligo/cameligo.contribution.js */ \"./node_modules/monaco-editor/esm/vs/basic-languages/cameligo/cameligo.contribution.js\");\n/* harmony import */ var _basic_languages_clojure_clojure_contribution_js__WEBPACK_IMPORTED_MODULE_71__ = __webpack_require__(/*! ../basic-languages/clojure/clojure.contribution.js */ \"./node_modules/monaco-editor/esm/vs/basic-languages/clojure/clojure.contribution.js\");\n/* harmony import */ var _basic_languages_coffee_coffee_contribution_js__WEBPACK_IMPORTED_MODULE_72__ = __webpack_require__(/*! ../basic-languages/coffee/coffee.contribution.js */ \"./node_modules/monaco-editor/esm/vs/basic-languages/coffee/coffee.contribution.js\");\n/* harmony import */ var _basic_languages_cpp_cpp_contribution_js__WEBPACK_IMPORTED_MODULE_73__ = __webpack_require__(/*! ../basic-languages/cpp/cpp.contribution.js */ \"./node_modules/monaco-editor/esm/vs/basic-languages/cpp/cpp.contribution.js\");\n/* harmony import */ var _basic_languages_csharp_csharp_contribution_js__WEBPACK_IMPORTED_MODULE_74__ = __webpack_require__(/*! ../basic-languages/csharp/csharp.contribution.js */ \"./node_modules/monaco-editor/esm/vs/basic-languages/csharp/csharp.contribution.js\");\n/* harmony import */ var _basic_languages_csp_csp_contribution_js__WEBPACK_IMPORTED_MODULE_75__ = __webpack_require__(/*! ../basic-languages/csp/csp.contribution.js */ \"./node_modules/monaco-editor/esm/vs/basic-languages/csp/csp.contribution.js\");\n/* harmony import */ var _basic_languages_css_css_contribution_js__WEBPACK_IMPORTED_MODULE_76__ = __webpack_require__(/*! ../basic-languages/css/css.contribution.js */ \"./node_modules/monaco-editor/esm/vs/basic-languages/css/css.contribution.js\");\n/* harmony import */ var _language_css_monaco_contribution_js__WEBPACK_IMPORTED_MODULE_77__ = __webpack_require__(/*! ../language/css/monaco.contribution.js */ \"./node_modules/monaco-editor/esm/vs/language/css/monaco.contribution.js\");\n/* harmony import */ var _basic_languages_cypher_cypher_contribution_js__WEBPACK_IMPORTED_MODULE_78__ = __webpack_require__(/*! ../basic-languages/cypher/cypher.contribution.js */ \"./node_modules/monaco-editor/esm/vs/basic-languages/cypher/cypher.contribution.js\");\n/* harmony import */ var _basic_languages_dart_dart_contribution_js__WEBPACK_IMPORTED_MODULE_79__ = __webpack_require__(/*! ../basic-languages/dart/dart.contribution.js */ \"./node_modules/monaco-editor/esm/vs/basic-languages/dart/dart.contribution.js\");\n/* harmony import */ var _basic_languages_dockerfile_dockerfile_contribution_js__WEBPACK_IMPORTED_MODULE_80__ = __webpack_require__(/*! ../basic-languages/dockerfile/dockerfile.contribution.js */ \"./node_modules/monaco-editor/esm/vs/basic-languages/dockerfile/dockerfile.contribution.js\");\n/* harmony import */ var _basic_languages_ecl_ecl_contribution_js__WEBPACK_IMPORTED_MODULE_81__ = __webpack_require__(/*! ../basic-languages/ecl/ecl.contribution.js */ \"./node_modules/monaco-editor/esm/vs/basic-languages/ecl/ecl.contribution.js\");\n/* harmony import */ var _basic_languages_elixir_elixir_contribution_js__WEBPACK_IMPORTED_MODULE_82__ = __webpack_require__(/*! ../basic-languages/elixir/elixir.contribution.js */ \"./node_modules/monaco-editor/esm/vs/basic-languages/elixir/elixir.contribution.js\");\n/* harmony import */ var _basic_languages_flow9_flow9_contribution_js__WEBPACK_IMPORTED_MODULE_83__ = __webpack_require__(/*! ../basic-languages/flow9/flow9.contribution.js */ \"./node_modules/monaco-editor/esm/vs/basic-languages/flow9/flow9.contribution.js\");\n/* harmony import */ var _basic_languages_freemarker2_freemarker2_contribution_js__WEBPACK_IMPORTED_MODULE_84__ = __webpack_require__(/*! ../basic-languages/freemarker2/freemarker2.contribution.js */ \"./node_modules/monaco-editor/esm/vs/basic-languages/freemarker2/freemarker2.contribution.js\");\n/* harmony import */ var _basic_languages_fsharp_fsharp_contribution_js__WEBPACK_IMPORTED_MODULE_85__ = __webpack_require__(/*! ../basic-languages/fsharp/fsharp.contribution.js */ \"./node_modules/monaco-editor/esm/vs/basic-languages/fsharp/fsharp.contribution.js\");\n/* harmony import */ var _basic_languages_go_go_contribution_js__WEBPACK_IMPORTED_MODULE_86__ = __webpack_require__(/*! ../basic-languages/go/go.contribution.js */ \"./node_modules/monaco-editor/esm/vs/basic-languages/go/go.contribution.js\");\n/* harmony import */ var _basic_languages_graphql_graphql_contribution_js__WEBPACK_IMPORTED_MODULE_87__ = __webpack_require__(/*! ../basic-languages/graphql/graphql.contribution.js */ \"./node_modules/monaco-editor/esm/vs/basic-languages/graphql/graphql.contribution.js\");\n/* harmony import */ var _basic_languages_handlebars_handlebars_contribution_js__WEBPACK_IMPORTED_MODULE_88__ = __webpack_require__(/*! ../basic-languages/handlebars/handlebars.contribution.js */ \"./node_modules/monaco-editor/esm/vs/basic-languages/handlebars/handlebars.contribution.js\");\n/* harmony import */ var _basic_languages_hcl_hcl_contribution_js__WEBPACK_IMPORTED_MODULE_89__ = __webpack_require__(/*! ../basic-languages/hcl/hcl.contribution.js */ \"./node_modules/monaco-editor/esm/vs/basic-languages/hcl/hcl.contribution.js\");\n/* harmony import */ var _basic_languages_html_html_contribution_js__WEBPACK_IMPORTED_MODULE_90__ = __webpack_require__(/*! ../basic-languages/html/html.contribution.js */ \"./node_modules/monaco-editor/esm/vs/basic-languages/html/html.contribution.js\");\n/* harmony import */ var _language_html_monaco_contribution_js__WEBPACK_IMPORTED_MODULE_91__ = __webpack_require__(/*! ../language/html/monaco.contribution.js */ \"./node_modules/monaco-editor/esm/vs/language/html/monaco.contribution.js\");\n/* harmony import */ var _basic_languages_ini_ini_contribution_js__WEBPACK_IMPORTED_MODULE_92__ = __webpack_require__(/*! ../basic-languages/ini/ini.contribution.js */ \"./node_modules/monaco-editor/esm/vs/basic-languages/ini/ini.contribution.js\");\n/* harmony import */ var _basic_languages_java_java_contribution_js__WEBPACK_IMPORTED_MODULE_93__ = __webpack_require__(/*! ../basic-languages/java/java.contribution.js */ \"./node_modules/monaco-editor/esm/vs/basic-languages/java/java.contribution.js\");\n/* harmony import */ var _basic_languages_javascript_javascript_contribution_js__WEBPACK_IMPORTED_MODULE_94__ = __webpack_require__(/*! ../basic-languages/javascript/javascript.contribution.js */ \"./node_modules/monaco-editor/esm/vs/basic-languages/javascript/javascript.contribution.js\");\n/* harmony import */ var _language_json_monaco_contribution_js__WEBPACK_IMPORTED_MODULE_95__ = __webpack_require__(/*! ../language/json/monaco.contribution.js */ \"./node_modules/monaco-editor/esm/vs/language/json/monaco.contribution.js\");\n/* harmony import */ var _basic_languages_julia_julia_contribution_js__WEBPACK_IMPORTED_MODULE_96__ = __webpack_require__(/*! ../basic-languages/julia/julia.contribution.js */ \"./node_modules/monaco-editor/esm/vs/basic-languages/julia/julia.contribution.js\");\n/* harmony import */ var _basic_languages_kotlin_kotlin_contribution_js__WEBPACK_IMPORTED_MODULE_97__ = __webpack_require__(/*! ../basic-languages/kotlin/kotlin.contribution.js */ \"./node_modules/monaco-editor/esm/vs/basic-languages/kotlin/kotlin.contribution.js\");\n/* harmony import */ var _basic_languages_less_less_contribution_js__WEBPACK_IMPORTED_MODULE_98__ = __webpack_require__(/*! ../basic-languages/less/less.contribution.js */ \"./node_modules/monaco-editor/esm/vs/basic-languages/less/less.contribution.js\");\n/* harmony import */ var _basic_languages_lexon_lexon_contribution_js__WEBPACK_IMPORTED_MODULE_99__ = __webpack_require__(/*! ../basic-languages/lexon/lexon.contribution.js */ \"./node_modules/monaco-editor/esm/vs/basic-languages/lexon/lexon.contribution.js\");\n/* harmony import */ var _basic_languages_liquid_liquid_contribution_js__WEBPACK_IMPORTED_MODULE_100__ = __webpack_require__(/*! ../basic-languages/liquid/liquid.contribution.js */ \"./node_modules/monaco-editor/esm/vs/basic-languages/liquid/liquid.contribution.js\");\n/* harmony import */ var _basic_languages_lua_lua_contribution_js__WEBPACK_IMPORTED_MODULE_101__ = __webpack_require__(/*! ../basic-languages/lua/lua.contribution.js */ \"./node_modules/monaco-editor/esm/vs/basic-languages/lua/lua.contribution.js\");\n/* harmony import */ var _basic_languages_m3_m3_contribution_js__WEBPACK_IMPORTED_MODULE_102__ = __webpack_require__(/*! ../basic-languages/m3/m3.contribution.js */ \"./node_modules/monaco-editor/esm/vs/basic-languages/m3/m3.contribution.js\");\n/* harmony import */ var _basic_languages_markdown_markdown_contribution_js__WEBPACK_IMPORTED_MODULE_103__ = __webpack_require__(/*! ../basic-languages/markdown/markdown.contribution.js */ \"./node_modules/monaco-editor/esm/vs/basic-languages/markdown/markdown.contribution.js\");\n/* harmony import */ var _basic_languages_mdx_mdx_contribution_js__WEBPACK_IMPORTED_MODULE_104__ = __webpack_require__(/*! ../basic-languages/mdx/mdx.contribution.js */ \"./node_modules/monaco-editor/esm/vs/basic-languages/mdx/mdx.contribution.js\");\n/* harmony import */ var _basic_languages_mips_mips_contribution_js__WEBPACK_IMPORTED_MODULE_105__ = __webpack_require__(/*! ../basic-languages/mips/mips.contribution.js */ \"./node_modules/monaco-editor/esm/vs/basic-languages/mips/mips.contribution.js\");\n/* harmony import */ var _basic_languages_msdax_msdax_contribution_js__WEBPACK_IMPORTED_MODULE_106__ = __webpack_require__(/*! ../basic-languages/msdax/msdax.contribution.js */ \"./node_modules/monaco-editor/esm/vs/basic-languages/msdax/msdax.contribution.js\");\n/* harmony import */ var _basic_languages_mysql_mysql_contribution_js__WEBPACK_IMPORTED_MODULE_107__ = __webpack_require__(/*! ../basic-languages/mysql/mysql.contribution.js */ \"./node_modules/monaco-editor/esm/vs/basic-languages/mysql/mysql.contribution.js\");\n/* harmony import */ var _basic_languages_objective_c_objective_c_contribution_js__WEBPACK_IMPORTED_MODULE_108__ = __webpack_require__(/*! ../basic-languages/objective-c/objective-c.contribution.js */ \"./node_modules/monaco-editor/esm/vs/basic-languages/objective-c/objective-c.contribution.js\");\n/* harmony import */ var _basic_languages_pascal_pascal_contribution_js__WEBPACK_IMPORTED_MODULE_109__ = __webpack_require__(/*! ../basic-languages/pascal/pascal.contribution.js */ \"./node_modules/monaco-editor/esm/vs/basic-languages/pascal/pascal.contribution.js\");\n/* harmony import */ var _basic_languages_pascaligo_pascaligo_contribution_js__WEBPACK_IMPORTED_MODULE_110__ = __webpack_require__(/*! ../basic-languages/pascaligo/pascaligo.contribution.js */ \"./node_modules/monaco-editor/esm/vs/basic-languages/pascaligo/pascaligo.contribution.js\");\n/* harmony import */ var _basic_languages_perl_perl_contribution_js__WEBPACK_IMPORTED_MODULE_111__ = __webpack_require__(/*! ../basic-languages/perl/perl.contribution.js */ \"./node_modules/monaco-editor/esm/vs/basic-languages/perl/perl.contribution.js\");\n/* harmony import */ var _basic_languages_pgsql_pgsql_contribution_js__WEBPACK_IMPORTED_MODULE_112__ = __webpack_require__(/*! ../basic-languages/pgsql/pgsql.contribution.js */ \"./node_modules/monaco-editor/esm/vs/basic-languages/pgsql/pgsql.contribution.js\");\n/* harmony import */ var _basic_languages_php_php_contribution_js__WEBPACK_IMPORTED_MODULE_113__ = __webpack_require__(/*! ../basic-languages/php/php.contribution.js */ \"./node_modules/monaco-editor/esm/vs/basic-languages/php/php.contribution.js\");\n/* harmony import */ var _basic_languages_pla_pla_contribution_js__WEBPACK_IMPORTED_MODULE_114__ = __webpack_require__(/*! ../basic-languages/pla/pla.contribution.js */ \"./node_modules/monaco-editor/esm/vs/basic-languages/pla/pla.contribution.js\");\n/* harmony import */ var _basic_languages_postiats_postiats_contribution_js__WEBPACK_IMPORTED_MODULE_115__ = __webpack_require__(/*! ../basic-languages/postiats/postiats.contribution.js */ \"./node_modules/monaco-editor/esm/vs/basic-languages/postiats/postiats.contribution.js\");\n/* harmony import */ var _basic_languages_powerquery_powerquery_contribution_js__WEBPACK_IMPORTED_MODULE_116__ = __webpack_require__(/*! ../basic-languages/powerquery/powerquery.contribution.js */ \"./node_modules/monaco-editor/esm/vs/basic-languages/powerquery/powerquery.contribution.js\");\n/* harmony import */ var _basic_languages_powershell_powershell_contribution_js__WEBPACK_IMPORTED_MODULE_117__ = __webpack_require__(/*! ../basic-languages/powershell/powershell.contribution.js */ \"./node_modules/monaco-editor/esm/vs/basic-languages/powershell/powershell.contribution.js\");\n/* harmony import */ var _basic_languages_protobuf_protobuf_contribution_js__WEBPACK_IMPORTED_MODULE_118__ = __webpack_require__(/*! ../basic-languages/protobuf/protobuf.contribution.js */ \"./node_modules/monaco-editor/esm/vs/basic-languages/protobuf/protobuf.contribution.js\");\n/* harmony import */ var _basic_languages_pug_pug_contribution_js__WEBPACK_IMPORTED_MODULE_119__ = __webpack_require__(/*! ../basic-languages/pug/pug.contribution.js */ \"./node_modules/monaco-editor/esm/vs/basic-languages/pug/pug.contribution.js\");\n/* harmony import */ var _basic_languages_python_python_contribution_js__WEBPACK_IMPORTED_MODULE_120__ = __webpack_require__(/*! ../basic-languages/python/python.contribution.js */ \"./node_modules/monaco-editor/esm/vs/basic-languages/python/python.contribution.js\");\n/* harmony import */ var _basic_languages_qsharp_qsharp_contribution_js__WEBPACK_IMPORTED_MODULE_121__ = __webpack_require__(/*! ../basic-languages/qsharp/qsharp.contribution.js */ \"./node_modules/monaco-editor/esm/vs/basic-languages/qsharp/qsharp.contribution.js\");\n/* harmony import */ var _basic_languages_r_r_contribution_js__WEBPACK_IMPORTED_MODULE_122__ = __webpack_require__(/*! ../basic-languages/r/r.contribution.js */ \"./node_modules/monaco-editor/esm/vs/basic-languages/r/r.contribution.js\");\n/* harmony import */ var _basic_languages_razor_razor_contribution_js__WEBPACK_IMPORTED_MODULE_123__ = __webpack_require__(/*! ../basic-languages/razor/razor.contribution.js */ \"./node_modules/monaco-editor/esm/vs/basic-languages/razor/razor.contribution.js\");\n/* harmony import */ var _basic_languages_redis_redis_contribution_js__WEBPACK_IMPORTED_MODULE_124__ = __webpack_require__(/*! ../basic-languages/redis/redis.contribution.js */ \"./node_modules/monaco-editor/esm/vs/basic-languages/redis/redis.contribution.js\");\n/* harmony import */ var _basic_languages_redshift_redshift_contribution_js__WEBPACK_IMPORTED_MODULE_125__ = __webpack_require__(/*! ../basic-languages/redshift/redshift.contribution.js */ \"./node_modules/monaco-editor/esm/vs/basic-languages/redshift/redshift.contribution.js\");\n/* harmony import */ var _basic_languages_restructuredtext_restructuredtext_contribution_js__WEBPACK_IMPORTED_MODULE_126__ = __webpack_require__(/*! ../basic-languages/restructuredtext/restructuredtext.contribution.js */ \"./node_modules/monaco-editor/esm/vs/basic-languages/restructuredtext/restructuredtext.contribution.js\");\n/* harmony import */ var _basic_languages_ruby_ruby_contribution_js__WEBPACK_IMPORTED_MODULE_127__ = __webpack_require__(/*! ../basic-languages/ruby/ruby.contribution.js */ \"./node_modules/monaco-editor/esm/vs/basic-languages/ruby/ruby.contribution.js\");\n/* harmony import */ var _basic_languages_rust_rust_contribution_js__WEBPACK_IMPORTED_MODULE_128__ = __webpack_require__(/*! ../basic-languages/rust/rust.contribution.js */ \"./node_modules/monaco-editor/esm/vs/basic-languages/rust/rust.contribution.js\");\n/* harmony import */ var _basic_languages_sb_sb_contribution_js__WEBPACK_IMPORTED_MODULE_129__ = __webpack_require__(/*! ../basic-languages/sb/sb.contribution.js */ \"./node_modules/monaco-editor/esm/vs/basic-languages/sb/sb.contribution.js\");\n/* harmony import */ var _basic_languages_scala_scala_contribution_js__WEBPACK_IMPORTED_MODULE_130__ = __webpack_require__(/*! ../basic-languages/scala/scala.contribution.js */ \"./node_modules/monaco-editor/esm/vs/basic-languages/scala/scala.contribution.js\");\n/* harmony import */ var _basic_languages_scheme_scheme_contribution_js__WEBPACK_IMPORTED_MODULE_131__ = __webpack_require__(/*! ../basic-languages/scheme/scheme.contribution.js */ \"./node_modules/monaco-editor/esm/vs/basic-languages/scheme/scheme.contribution.js\");\n/* harmony import */ var _basic_languages_scss_scss_contribution_js__WEBPACK_IMPORTED_MODULE_132__ = __webpack_require__(/*! ../basic-languages/scss/scss.contribution.js */ \"./node_modules/monaco-editor/esm/vs/basic-languages/scss/scss.contribution.js\");\n/* harmony import */ var _basic_languages_shell_shell_contribution_js__WEBPACK_IMPORTED_MODULE_133__ = __webpack_require__(/*! ../basic-languages/shell/shell.contribution.js */ \"./node_modules/monaco-editor/esm/vs/basic-languages/shell/shell.contribution.js\");\n/* harmony import */ var _basic_languages_solidity_solidity_contribution_js__WEBPACK_IMPORTED_MODULE_134__ = __webpack_require__(/*! ../basic-languages/solidity/solidity.contribution.js */ \"./node_modules/monaco-editor/esm/vs/basic-languages/solidity/solidity.contribution.js\");\n/* harmony import */ var _basic_languages_sophia_sophia_contribution_js__WEBPACK_IMPORTED_MODULE_135__ = __webpack_require__(/*! ../basic-languages/sophia/sophia.contribution.js */ \"./node_modules/monaco-editor/esm/vs/basic-languages/sophia/sophia.contribution.js\");\n/* harmony import */ var _basic_languages_sparql_sparql_contribution_js__WEBPACK_IMPORTED_MODULE_136__ = __webpack_require__(/*! ../basic-languages/sparql/sparql.contribution.js */ \"./node_modules/monaco-editor/esm/vs/basic-languages/sparql/sparql.contribution.js\");\n/* harmony import */ var _basic_languages_sql_sql_contribution_js__WEBPACK_IMPORTED_MODULE_137__ = __webpack_require__(/*! ../basic-languages/sql/sql.contribution.js */ \"./node_modules/monaco-editor/esm/vs/basic-languages/sql/sql.contribution.js\");\n/* harmony import */ var _basic_languages_st_st_contribution_js__WEBPACK_IMPORTED_MODULE_138__ = __webpack_require__(/*! ../basic-languages/st/st.contribution.js */ \"./node_modules/monaco-editor/esm/vs/basic-languages/st/st.contribution.js\");\n/* harmony import */ var _basic_languages_swift_swift_contribution_js__WEBPACK_IMPORTED_MODULE_139__ = __webpack_require__(/*! ../basic-languages/swift/swift.contribution.js */ \"./node_modules/monaco-editor/esm/vs/basic-languages/swift/swift.contribution.js\");\n/* harmony import */ var _basic_languages_systemverilog_systemverilog_contribution_js__WEBPACK_IMPORTED_MODULE_140__ = __webpack_require__(/*! ../basic-languages/systemverilog/systemverilog.contribution.js */ \"./node_modules/monaco-editor/esm/vs/basic-languages/systemverilog/systemverilog.contribution.js\");\n/* harmony import */ var _basic_languages_tcl_tcl_contribution_js__WEBPACK_IMPORTED_MODULE_141__ = __webpack_require__(/*! ../basic-languages/tcl/tcl.contribution.js */ \"./node_modules/monaco-editor/esm/vs/basic-languages/tcl/tcl.contribution.js\");\n/* harmony import */ var _basic_languages_twig_twig_contribution_js__WEBPACK_IMPORTED_MODULE_142__ = __webpack_require__(/*! ../basic-languages/twig/twig.contribution.js */ \"./node_modules/monaco-editor/esm/vs/basic-languages/twig/twig.contribution.js\");\n/* harmony import */ var _basic_languages_typescript_typescript_contribution_js__WEBPACK_IMPORTED_MODULE_143__ = __webpack_require__(/*! ../basic-languages/typescript/typescript.contribution.js */ \"./node_modules/monaco-editor/esm/vs/basic-languages/typescript/typescript.contribution.js\");\n/* harmony import */ var _language_typescript_monaco_contribution_js__WEBPACK_IMPORTED_MODULE_144__ = __webpack_require__(/*! ../language/typescript/monaco.contribution.js */ \"./node_modules/monaco-editor/esm/vs/language/typescript/monaco.contribution.js\");\n/* harmony import */ var _basic_languages_vb_vb_contribution_js__WEBPACK_IMPORTED_MODULE_145__ = __webpack_require__(/*! ../basic-languages/vb/vb.contribution.js */ \"./node_modules/monaco-editor/esm/vs/basic-languages/vb/vb.contribution.js\");\n/* harmony import */ var _basic_languages_wgsl_wgsl_contribution_js__WEBPACK_IMPORTED_MODULE_146__ = __webpack_require__(/*! ../basic-languages/wgsl/wgsl.contribution.js */ \"./node_modules/monaco-editor/esm/vs/basic-languages/wgsl/wgsl.contribution.js\");\n/* harmony import */ var _basic_languages_xml_xml_contribution_js__WEBPACK_IMPORTED_MODULE_147__ = __webpack_require__(/*! ../basic-languages/xml/xml.contribution.js */ \"./node_modules/monaco-editor/esm/vs/basic-languages/xml/xml.contribution.js\");\n/* harmony import */ var _basic_languages_yaml_yaml_contribution_js__WEBPACK_IMPORTED_MODULE_148__ = __webpack_require__(/*! ../basic-languages/yaml/yaml.contribution.js */ \"./node_modules/monaco-editor/esm/vs/basic-languages/yaml/yaml.contribution.js\");\nself[\"MonacoEnvironment\"] = (function (paths) {\n function stripTrailingSlash(str) {\n return str.replace(/\\/$/, '');\n }\n return {\n globalAPI: false,\n getWorkerUrl: function (moduleId, label) {\n var pathPrefix = true ? __webpack_require__.p : 0;\n var result = (pathPrefix ? stripTrailingSlash(pathPrefix) + '/' : '') + paths[label];\n if (/^((http:)|(https:)|(file:)|(\\/\\/))/.test(result)) {\n var currentUrl = String(window.location);\n var currentOrigin = currentUrl.substr(0, currentUrl.length - window.location.hash.length - window.location.search.length - window.location.pathname.length);\n if (result.substring(0, currentOrigin.length) !== currentOrigin) {\n if(/^(\\/\\/)/.test(result)) {\n result = window.location.protocol + result\n }\n var js = '/*' + label + '*/importScripts(\"' + result + '\");';\n var blob = new Blob([js], { type: 'application/javascript' });\n return URL.createObjectURL(blob);\n }\n }\n return result;\n }\n };\n })({\n \"editorWorkerService\": \"editor.worker.js\",\n \"css\": \"css.worker.js\",\n \"html\": \"html.worker.js\",\n \"json\": \"json.worker.js\",\n \"typescript\": \"ts.worker.js\",\n \"javascript\": \"ts.worker.js\",\n \"less\": \"css.worker.js\",\n \"scss\": \"css.worker.js\",\n \"handlebars\": \"html.worker.js\",\n \"razor\": \"html.worker.js\"\n});\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (_editor_api_js__WEBPACK_IMPORTED_MODULE_64__);\n\t\t\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/editor.api.js?include-loader");
/***/ }),
/***/ "include-loader!./node_modules/monaco-editor/esm/vs/editor/editor.main.js":
/*!********************************************************************************!*\
!*** include-loader!./node_modules/monaco-editor/esm/vs/editor/editor.main.js ***!
\********************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ CancellationTokenSource: () => (/* reexport safe */ _editor_main_js__WEBPACK_IMPORTED_MODULE_64__.CancellationTokenSource),\n/* harmony export */ Emitter: () => (/* reexport safe */ _editor_main_js__WEBPACK_IMPORTED_MODULE_64__.Emitter),\n/* harmony export */ KeyCode: () => (/* reexport safe */ _editor_main_js__WEBPACK_IMPORTED_MODULE_64__.KeyCode),\n/* harmony export */ KeyMod: () => (/* reexport safe */ _editor_main_js__WEBPACK_IMPORTED_MODULE_64__.KeyMod),\n/* harmony export */ MarkerSeverity: () => (/* reexport safe */ _editor_main_js__WEBPACK_IMPORTED_MODULE_64__.MarkerSeverity),\n/* harmony export */ MarkerTag: () => (/* reexport safe */ _editor_main_js__WEBPACK_IMPORTED_MODULE_64__.MarkerTag),\n/* harmony export */ Position: () => (/* reexport safe */ _editor_main_js__WEBPACK_IMPORTED_MODULE_64__.Position),\n/* harmony export */ Range: () => (/* reexport safe */ _editor_main_js__WEBPACK_IMPORTED_MODULE_64__.Range),\n/* harmony export */ Selection: () => (/* reexport safe */ _editor_main_js__WEBPACK_IMPORTED_MODULE_64__.Selection),\n/* harmony export */ SelectionDirection: () => (/* reexport safe */ _editor_main_js__WEBPACK_IMPORTED_MODULE_64__.SelectionDirection),\n/* harmony export */ Token: () => (/* reexport safe */ _editor_main_js__WEBPACK_IMPORTED_MODULE_64__.Token),\n/* harmony export */ Uri: () => (/* reexport safe */ _editor_main_js__WEBPACK_IMPORTED_MODULE_64__.Uri),\n/* harmony export */ \"default\": () => (__WEBPACK_DEFAULT_EXPORT__),\n/* harmony export */ editor: () => (/* reexport safe */ _editor_main_js__WEBPACK_IMPORTED_MODULE_64__.editor),\n/* harmony export */ languages: () => (/* reexport safe */ _editor_main_js__WEBPACK_IMPORTED_MODULE_64__.languages)\n/* harmony export */ });\n/* harmony import */ var _contrib_anchorSelect_browser_anchorSelect_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./contrib/anchorSelect/browser/anchorSelect.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/anchorSelect/browser/anchorSelect.js\");\n/* harmony import */ var _contrib_bracketMatching_browser_bracketMatching_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./contrib/bracketMatching/browser/bracketMatching.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/bracketMatching/browser/bracketMatching.js\");\n/* harmony import */ var _browser_coreCommands_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./browser/coreCommands.js */ \"./node_modules/monaco-editor/esm/vs/editor/browser/coreCommands.js\");\n/* harmony import */ var _contrib_caretOperations_browser_caretOperations_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./contrib/caretOperations/browser/caretOperations.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/caretOperations/browser/caretOperations.js\");\n/* harmony import */ var _contrib_caretOperations_browser_transpose_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./contrib/caretOperations/browser/transpose.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/caretOperations/browser/transpose.js\");\n/* harmony import */ var _contrib_clipboard_browser_clipboard_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./contrib/clipboard/browser/clipboard.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/clipboard/browser/clipboard.js\");\n/* harmony import */ var _contrib_codeAction_browser_codeActionContributions_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ./contrib/codeAction/browser/codeActionContributions.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/codeAction/browser/codeActionContributions.js\");\n/* harmony import */ var _contrib_codelens_browser_codelensController_js__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ./contrib/codelens/browser/codelensController.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/codelens/browser/codelensController.js\");\n/* harmony import */ var _contrib_colorPicker_browser_colorContributions_js__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ./contrib/colorPicker/browser/colorContributions.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/colorPicker/browser/colorContributions.js\");\n/* harmony import */ var _contrib_colorPicker_browser_standaloneColorPickerActions_js__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ./contrib/colorPicker/browser/standaloneColorPickerActions.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/colorPicker/browser/standaloneColorPickerActions.js\");\n/* harmony import */ var _contrib_comment_browser_comment_js__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! ./contrib/comment/browser/comment.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/comment/browser/comment.js\");\n/* harmony import */ var _contrib_contextmenu_browser_contextmenu_js__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(/*! ./contrib/contextmenu/browser/contextmenu.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/contextmenu/browser/contextmenu.js\");\n/* harmony import */ var _contrib_cursorUndo_browser_cursorUndo_js__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(/*! ./contrib/cursorUndo/browser/cursorUndo.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/cursorUndo/browser/cursorUndo.js\");\n/* harmony import */ var _browser_widget_diffEditor_diffEditor_contribution_js__WEBPACK_IMPORTED_MODULE_13__ = __webpack_require__(/*! ./browser/widget/diffEditor/diffEditor.contribution.js */ \"./node_modules/monaco-editor/esm/vs/editor/browser/widget/diffEditor/diffEditor.contribution.js\");\n/* harmony import */ var _contrib_diffEditorBreadcrumbs_browser_contribution_js__WEBPACK_IMPORTED_MODULE_14__ = __webpack_require__(/*! ./contrib/diffEditorBreadcrumbs/browser/contribution.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/diffEditorBreadcrumbs/browser/contribution.js\");\n/* harmony import */ var _contrib_dnd_browser_dnd_js__WEBPACK_IMPORTED_MODULE_15__ = __webpack_require__(/*! ./contrib/dnd/browser/dnd.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/dnd/browser/dnd.js\");\n/* harmony import */ var _contrib_documentSymbols_browser_documentSymbols_js__WEBPACK_IMPORTED_MODULE_16__ = __webpack_require__(/*! ./contrib/documentSymbols/browser/documentSymbols.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/documentSymbols/browser/documentSymbols.js\");\n/* harmony import */ var _contrib_dropOrPasteInto_browser_copyPasteContribution_js__WEBPACK_IMPORTED_MODULE_17__ = __webpack_require__(/*! ./contrib/dropOrPasteInto/browser/copyPasteContribution.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/dropOrPasteInto/browser/copyPasteContribution.js\");\n/* harmony import */ var _contrib_dropOrPasteInto_browser_dropIntoEditorContribution_js__WEBPACK_IMPORTED_MODULE_18__ = __webpack_require__(/*! ./contrib/dropOrPasteInto/browser/dropIntoEditorContribution.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/dropOrPasteInto/browser/dropIntoEditorContribution.js\");\n/* harmony import */ var _contrib_find_browser_findController_js__WEBPACK_IMPORTED_MODULE_19__ = __webpack_require__(/*! ./contrib/find/browser/findController.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/find/browser/findController.js\");\n/* harmony import */ var _contrib_folding_browser_folding_js__WEBPACK_IMPORTED_MODULE_20__ = __webpack_require__(/*! ./contrib/folding/browser/folding.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/folding/browser/folding.js\");\n/* harmony import */ var _contrib_fontZoom_browser_fontZoom_js__WEBPACK_IMPORTED_MODULE_21__ = __webpack_require__(/*! ./contrib/fontZoom/browser/fontZoom.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/fontZoom/browser/fontZoom.js\");\n/* harmony import */ var _contrib_format_browser_formatActions_js__WEBPACK_IMPORTED_MODULE_22__ = __webpack_require__(/*! ./contrib/format/browser/formatActions.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/format/browser/formatActions.js\");\n/* harmony import */ var _contrib_gotoError_browser_gotoError_js__WEBPACK_IMPORTED_MODULE_23__ = __webpack_require__(/*! ./contrib/gotoError/browser/gotoError.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/gotoError/browser/gotoError.js\");\n/* harmony import */ var _standalone_browser_quickAccess_standaloneGotoLineQuickAccess_js__WEBPACK_IMPORTED_MODULE_24__ = __webpack_require__(/*! ./standalone/browser/quickAccess/standaloneGotoLineQuickAccess.js */ \"./node_modules/monaco-editor/esm/vs/editor/standalone/browser/quickAccess/standaloneGotoLineQuickAccess.js\");\n/* harmony import */ var _contrib_gotoSymbol_browser_goToCommands_js__WEBPACK_IMPORTED_MODULE_25__ = __webpack_require__(/*! ./contrib/gotoSymbol/browser/goToCommands.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/gotoSymbol/browser/goToCommands.js\");\n/* harmony import */ var _contrib_gotoSymbol_browser_link_goToDefinitionAtPosition_js__WEBPACK_IMPORTED_MODULE_26__ = __webpack_require__(/*! ./contrib/gotoSymbol/browser/link/goToDefinitionAtPosition.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/gotoSymbol/browser/link/goToDefinitionAtPosition.js\");\n/* harmony import */ var _contrib_hover_browser_hover_js__WEBPACK_IMPORTED_MODULE_27__ = __webpack_require__(/*! ./contrib/hover/browser/hover.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/hover/browser/hover.js\");\n/* harmony import */ var _standalone_browser_iPadShowKeyboard_iPadShowKeyboard_js__WEBPACK_IMPORTED_MODULE_28__ = __webpack_require__(/*! ./standalone/browser/iPadShowKeyboard/iPadShowKeyboard.js */ \"./node_modules/monaco-editor/esm/vs/editor/standalone/browser/iPadShowKeyboard/iPadShowKeyboard.js\");\n/* harmony import */ var _contrib_inPlaceReplace_browser_inPlaceReplace_js__WEBPACK_IMPORTED_MODULE_29__ = __webpack_require__(/*! ./contrib/inPlaceReplace/browser/inPlaceReplace.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/inPlaceReplace/browser/inPlaceReplace.js\");\n/* harmony import */ var _contrib_indentation_browser_indentation_js__WEBPACK_IMPORTED_MODULE_30__ = __webpack_require__(/*! ./contrib/indentation/browser/indentation.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/indentation/browser/indentation.js\");\n/* harmony import */ var _contrib_inlayHints_browser_inlayHintsContribution_js__WEBPACK_IMPORTED_MODULE_31__ = __webpack_require__(/*! ./contrib/inlayHints/browser/inlayHintsContribution.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/inlayHints/browser/inlayHintsContribution.js\");\n/* harmony import */ var _contrib_inlineCompletions_browser_inlineCompletions_contribution_js__WEBPACK_IMPORTED_MODULE_32__ = __webpack_require__(/*! ./contrib/inlineCompletions/browser/inlineCompletions.contribution.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/inlineCompletions/browser/inlineCompletions.contribution.js\");\n/* harmony import */ var _contrib_inlineEdit_browser_inlineEdit_contribution_js__WEBPACK_IMPORTED_MODULE_33__ = __webpack_require__(/*! ./contrib/inlineEdit/browser/inlineEdit.contribution.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/inlineEdit/browser/inlineEdit.contribution.js\");\n/* harmony import */ var _contrib_inlineProgress_browser_inlineProgress_js__WEBPACK_IMPORTED_MODULE_34__ = __webpack_require__(/*! ./contrib/inlineProgress/browser/inlineProgress.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/inlineProgress/browser/inlineProgress.js\");\n/* harmony import */ var _standalone_browser_inspectTokens_inspectTokens_js__WEBPACK_IMPORTED_MODULE_35__ = __webpack_require__(/*! ./standalone/browser/inspectTokens/inspectTokens.js */ \"./node_modules/monaco-editor/esm/vs/editor/standalone/browser/inspectTokens/inspectTokens.js\");\n/* harmony import */ var _contrib_lineSelection_browser_lineSelection_js__WEBPACK_IMPORTED_MODULE_36__ = __webpack_require__(/*! ./contrib/lineSelection/browser/lineSelection.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/lineSelection/browser/lineSelection.js\");\n/* harmony import */ var _contrib_linesOperations_browser_linesOperations_js__WEBPACK_IMPORTED_MODULE_37__ = __webpack_require__(/*! ./contrib/linesOperations/browser/linesOperations.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/linesOperations/browser/linesOperations.js\");\n/* harmony import */ var _contrib_linkedEditing_browser_linkedEditing_js__WEBPACK_IMPORTED_MODULE_38__ = __webpack_require__(/*! ./contrib/linkedEditing/browser/linkedEditing.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/linkedEditing/browser/linkedEditing.js\");\n/* harmony import */ var _contrib_links_browser_links_js__WEBPACK_IMPORTED_MODULE_39__ = __webpack_require__(/*! ./contrib/links/browser/links.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/links/browser/links.js\");\n/* harmony import */ var _contrib_longLinesHelper_browser_longLinesHelper_js__WEBPACK_IMPORTED_MODULE_40__ = __webpack_require__(/*! ./contrib/longLinesHelper/browser/longLinesHelper.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/longLinesHelper/browser/longLinesHelper.js\");\n/* harmony import */ var _contrib_multicursor_browser_multicursor_js__WEBPACK_IMPORTED_MODULE_41__ = __webpack_require__(/*! ./contrib/multicursor/browser/multicursor.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/multicursor/browser/multicursor.js\");\n/* harmony import */ var _contrib_parameterHints_browser_parameterHints_js__WEBPACK_IMPORTED_MODULE_42__ = __webpack_require__(/*! ./contrib/parameterHints/browser/parameterHints.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/parameterHints/browser/parameterHints.js\");\n/* harmony import */ var _standalone_browser_quickAccess_standaloneCommandsQuickAccess_js__WEBPACK_IMPORTED_MODULE_43__ = __webpack_require__(/*! ./standalone/browser/quickAccess/standaloneCommandsQuickAccess.js */ \"./node_modules/monaco-editor/esm/vs/editor/standalone/browser/quickAccess/standaloneCommandsQuickAccess.js\");\n/* harmony import */ var _standalone_browser_quickAccess_standaloneHelpQuickAccess_js__WEBPACK_IMPORTED_MODULE_44__ = __webpack_require__(/*! ./standalone/browser/quickAccess/standaloneHelpQuickAccess.js */ \"./node_modules/monaco-editor/esm/vs/editor/standalone/browser/quickAccess/standaloneHelpQuickAccess.js\");\n/* harmony import */ var _standalone_browser_quickAccess_standaloneGotoSymbolQuickAccess_js__WEBPACK_IMPORTED_MODULE_45__ = __webpack_require__(/*! ./standalone/browser/quickAccess/standaloneGotoSymbolQuickAccess.js */ \"./node_modules/monaco-editor/esm/vs/editor/standalone/browser/quickAccess/standaloneGotoSymbolQuickAccess.js\");\n/* harmony import */ var _contrib_readOnlyMessage_browser_contribution_js__WEBPACK_IMPORTED_MODULE_46__ = __webpack_require__(/*! ./contrib/readOnlyMessage/browser/contribution.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/readOnlyMessage/browser/contribution.js\");\n/* harmony import */ var _standalone_browser_referenceSearch_standaloneReferenceSearch_js__WEBPACK_IMPORTED_MODULE_47__ = __webpack_require__(/*! ./standalone/browser/referenceSearch/standaloneReferenceSearch.js */ \"./node_modules/monaco-editor/esm/vs/editor/standalone/browser/referenceSearch/standaloneReferenceSearch.js\");\n/* harmony import */ var _contrib_rename_browser_rename_js__WEBPACK_IMPORTED_MODULE_48__ = __webpack_require__(/*! ./contrib/rename/browser/rename.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/rename/browser/rename.js\");\n/* harmony import */ var _contrib_semanticTokens_browser_documentSemanticTokens_js__WEBPACK_IMPORTED_MODULE_49__ = __webpack_require__(/*! ./contrib/semanticTokens/browser/documentSemanticTokens.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/semanticTokens/browser/documentSemanticTokens.js\");\n/* harmony import */ var _contrib_semanticTokens_browser_viewportSemanticTokens_js__WEBPACK_IMPORTED_MODULE_50__ = __webpack_require__(/*! ./contrib/semanticTokens/browser/viewportSemanticTokens.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/semanticTokens/browser/viewportSemanticTokens.js\");\n/* harmony import */ var _contrib_smartSelect_browser_smartSelect_js__WEBPACK_IMPORTED_MODULE_51__ = __webpack_require__(/*! ./contrib/smartSelect/browser/smartSelect.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/smartSelect/browser/smartSelect.js\");\n/* harmony import */ var _contrib_snippet_browser_snippetController2_js__WEBPACK_IMPORTED_MODULE_52__ = __webpack_require__(/*! ./contrib/snippet/browser/snippetController2.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/snippet/browser/snippetController2.js\");\n/* harmony import */ var _contrib_stickyScroll_browser_stickyScrollContribution_js__WEBPACK_IMPORTED_MODULE_53__ = __webpack_require__(/*! ./contrib/stickyScroll/browser/stickyScrollContribution.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/stickyScroll/browser/stickyScrollContribution.js\");\n/* harmony import */ var _contrib_suggest_browser_suggestController_js__WEBPACK_IMPORTED_MODULE_54__ = __webpack_require__(/*! ./contrib/suggest/browser/suggestController.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/suggest/browser/suggestController.js\");\n/* harmony import */ var _contrib_suggest_browser_suggestInlineCompletions_js__WEBPACK_IMPORTED_MODULE_55__ = __webpack_require__(/*! ./contrib/suggest/browser/suggestInlineCompletions.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/suggest/browser/suggestInlineCompletions.js\");\n/* harmony import */ var _standalone_browser_toggleHighContrast_toggleHighContrast_js__WEBPACK_IMPORTED_MODULE_56__ = __webpack_require__(/*! ./standalone/browser/toggleHighContrast/toggleHighContrast.js */ \"./node_modules/monaco-editor/esm/vs/editor/standalone/browser/toggleHighContrast/toggleHighContrast.js\");\n/* harmony import */ var _contrib_toggleTabFocusMode_browser_toggleTabFocusMode_js__WEBPACK_IMPORTED_MODULE_57__ = __webpack_require__(/*! ./contrib/toggleTabFocusMode/browser/toggleTabFocusMode.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/toggleTabFocusMode/browser/toggleTabFocusMode.js\");\n/* harmony import */ var _contrib_tokenization_browser_tokenization_js__WEBPACK_IMPORTED_MODULE_58__ = __webpack_require__(/*! ./contrib/tokenization/browser/tokenization.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/tokenization/browser/tokenization.js\");\n/* harmony import */ var _contrib_unicodeHighlighter_browser_unicodeHighlighter_js__WEBPACK_IMPORTED_MODULE_59__ = __webpack_require__(/*! ./contrib/unicodeHighlighter/browser/unicodeHighlighter.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/unicodeHighlighter/browser/unicodeHighlighter.js\");\n/* harmony import */ var _contrib_unusualLineTerminators_browser_unusualLineTerminators_js__WEBPACK_IMPORTED_MODULE_60__ = __webpack_require__(/*! ./contrib/unusualLineTerminators/browser/unusualLineTerminators.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/unusualLineTerminators/browser/unusualLineTerminators.js\");\n/* harmony import */ var _contrib_wordHighlighter_browser_wordHighlighter_js__WEBPACK_IMPORTED_MODULE_61__ = __webpack_require__(/*! ./contrib/wordHighlighter/browser/wordHighlighter.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/wordHighlighter/browser/wordHighlighter.js\");\n/* harmony import */ var _contrib_wordOperations_browser_wordOperations_js__WEBPACK_IMPORTED_MODULE_62__ = __webpack_require__(/*! ./contrib/wordOperations/browser/wordOperations.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/wordOperations/browser/wordOperations.js\");\n/* harmony import */ var _contrib_wordPartOperations_browser_wordPartOperations_js__WEBPACK_IMPORTED_MODULE_63__ = __webpack_require__(/*! ./contrib/wordPartOperations/browser/wordPartOperations.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/wordPartOperations/browser/wordPartOperations.js\");\n/* harmony import */ var _editor_main_js__WEBPACK_IMPORTED_MODULE_64__ = __webpack_require__(/*! !!./editor.main.js */ \"./node_modules/monaco-editor/esm/vs/editor/editor.main.js\");\n/* harmony import */ var _basic_languages_abap_abap_contribution_js__WEBPACK_IMPORTED_MODULE_65__ = __webpack_require__(/*! ../basic-languages/abap/abap.contribution.js */ \"./node_modules/monaco-editor/esm/vs/basic-languages/abap/abap.contribution.js\");\n/* harmony import */ var _basic_languages_apex_apex_contribution_js__WEBPACK_IMPORTED_MODULE_66__ = __webpack_require__(/*! ../basic-languages/apex/apex.contribution.js */ \"./node_modules/monaco-editor/esm/vs/basic-languages/apex/apex.contribution.js\");\n/* harmony import */ var _basic_languages_azcli_azcli_contribution_js__WEBPACK_IMPORTED_MODULE_67__ = __webpack_require__(/*! ../basic-languages/azcli/azcli.contribution.js */ \"./node_modules/monaco-editor/esm/vs/basic-languages/azcli/azcli.contribution.js\");\n/* harmony import */ var _basic_languages_bat_bat_contribution_js__WEBPACK_IMPORTED_MODULE_68__ = __webpack_require__(/*! ../basic-languages/bat/bat.contribution.js */ \"./node_modules/monaco-editor/esm/vs/basic-languages/bat/bat.contribution.js\");\n/* harmony import */ var _basic_languages_bicep_bicep_contribution_js__WEBPACK_IMPORTED_MODULE_69__ = __webpack_require__(/*! ../basic-languages/bicep/bicep.contribution.js */ \"./node_modules/monaco-editor/esm/vs/basic-languages/bicep/bicep.contribution.js\");\n/* harmony import */ var _basic_languages_cameligo_cameligo_contribution_js__WEBPACK_IMPORTED_MODULE_70__ = __webpack_require__(/*! ../basic-languages/cameligo/cameligo.contribution.js */ \"./node_modules/monaco-editor/esm/vs/basic-languages/cameligo/cameligo.contribution.js\");\n/* harmony import */ var _basic_languages_clojure_clojure_contribution_js__WEBPACK_IMPORTED_MODULE_71__ = __webpack_require__(/*! ../basic-languages/clojure/clojure.contribution.js */ \"./node_modules/monaco-editor/esm/vs/basic-languages/clojure/clojure.contribution.js\");\n/* harmony import */ var _basic_languages_coffee_coffee_contribution_js__WEBPACK_IMPORTED_MODULE_72__ = __webpack_require__(/*! ../basic-languages/coffee/coffee.contribution.js */ \"./node_modules/monaco-editor/esm/vs/basic-languages/coffee/coffee.contribution.js\");\n/* harmony import */ var _basic_languages_cpp_cpp_contribution_js__WEBPACK_IMPORTED_MODULE_73__ = __webpack_require__(/*! ../basic-languages/cpp/cpp.contribution.js */ \"./node_modules/monaco-editor/esm/vs/basic-languages/cpp/cpp.contribution.js\");\n/* harmony import */ var _basic_languages_csharp_csharp_contribution_js__WEBPACK_IMPORTED_MODULE_74__ = __webpack_require__(/*! ../basic-languages/csharp/csharp.contribution.js */ \"./node_modules/monaco-editor/esm/vs/basic-languages/csharp/csharp.contribution.js\");\n/* harmony import */ var _basic_languages_csp_csp_contribution_js__WEBPACK_IMPORTED_MODULE_75__ = __webpack_require__(/*! ../basic-languages/csp/csp.contribution.js */ \"./node_modules/monaco-editor/esm/vs/basic-languages/csp/csp.contribution.js\");\n/* harmony import */ var _basic_languages_css_css_contribution_js__WEBPACK_IMPORTED_MODULE_76__ = __webpack_require__(/*! ../basic-languages/css/css.contribution.js */ \"./node_modules/monaco-editor/esm/vs/basic-languages/css/css.contribution.js\");\n/* harmony import */ var _language_css_monaco_contribution_js__WEBPACK_IMPORTED_MODULE_77__ = __webpack_require__(/*! ../language/css/monaco.contribution.js */ \"./node_modules/monaco-editor/esm/vs/language/css/monaco.contribution.js\");\n/* harmony import */ var _basic_languages_cypher_cypher_contribution_js__WEBPACK_IMPORTED_MODULE_78__ = __webpack_require__(/*! ../basic-languages/cypher/cypher.contribution.js */ \"./node_modules/monaco-editor/esm/vs/basic-languages/cypher/cypher.contribution.js\");\n/* harmony import */ var _basic_languages_dart_dart_contribution_js__WEBPACK_IMPORTED_MODULE_79__ = __webpack_require__(/*! ../basic-languages/dart/dart.contribution.js */ \"./node_modules/monaco-editor/esm/vs/basic-languages/dart/dart.contribution.js\");\n/* harmony import */ var _basic_languages_dockerfile_dockerfile_contribution_js__WEBPACK_IMPORTED_MODULE_80__ = __webpack_require__(/*! ../basic-languages/dockerfile/dockerfile.contribution.js */ \"./node_modules/monaco-editor/esm/vs/basic-languages/dockerfile/dockerfile.contribution.js\");\n/* harmony import */ var _basic_languages_ecl_ecl_contribution_js__WEBPACK_IMPORTED_MODULE_81__ = __webpack_require__(/*! ../basic-languages/ecl/ecl.contribution.js */ \"./node_modules/monaco-editor/esm/vs/basic-languages/ecl/ecl.contribution.js\");\n/* harmony import */ var _basic_languages_elixir_elixir_contribution_js__WEBPACK_IMPORTED_MODULE_82__ = __webpack_require__(/*! ../basic-languages/elixir/elixir.contribution.js */ \"./node_modules/monaco-editor/esm/vs/basic-languages/elixir/elixir.contribution.js\");\n/* harmony import */ var _basic_languages_flow9_flow9_contribution_js__WEBPACK_IMPORTED_MODULE_83__ = __webpack_require__(/*! ../basic-languages/flow9/flow9.contribution.js */ \"./node_modules/monaco-editor/esm/vs/basic-languages/flow9/flow9.contribution.js\");\n/* harmony import */ var _basic_languages_freemarker2_freemarker2_contribution_js__WEBPACK_IMPORTED_MODULE_84__ = __webpack_require__(/*! ../basic-languages/freemarker2/freemarker2.contribution.js */ \"./node_modules/monaco-editor/esm/vs/basic-languages/freemarker2/freemarker2.contribution.js\");\n/* harmony import */ var _basic_languages_fsharp_fsharp_contribution_js__WEBPACK_IMPORTED_MODULE_85__ = __webpack_require__(/*! ../basic-languages/fsharp/fsharp.contribution.js */ \"./node_modules/monaco-editor/esm/vs/basic-languages/fsharp/fsharp.contribution.js\");\n/* harmony import */ var _basic_languages_go_go_contribution_js__WEBPACK_IMPORTED_MODULE_86__ = __webpack_require__(/*! ../basic-languages/go/go.contribution.js */ \"./node_modules/monaco-editor/esm/vs/basic-languages/go/go.contribution.js\");\n/* harmony import */ var _basic_languages_graphql_graphql_contribution_js__WEBPACK_IMPORTED_MODULE_87__ = __webpack_require__(/*! ../basic-languages/graphql/graphql.contribution.js */ \"./node_modules/monaco-editor/esm/vs/basic-languages/graphql/graphql.contribution.js\");\n/* harmony import */ var _basic_languages_handlebars_handlebars_contribution_js__WEBPACK_IMPORTED_MODULE_88__ = __webpack_require__(/*! ../basic-languages/handlebars/handlebars.contribution.js */ \"./node_modules/monaco-editor/esm/vs/basic-languages/handlebars/handlebars.contribution.js\");\n/* harmony import */ var _basic_languages_hcl_hcl_contribution_js__WEBPACK_IMPORTED_MODULE_89__ = __webpack_require__(/*! ../basic-languages/hcl/hcl.contribution.js */ \"./node_modules/monaco-editor/esm/vs/basic-languages/hcl/hcl.contribution.js\");\n/* harmony import */ var _basic_languages_html_html_contribution_js__WEBPACK_IMPORTED_MODULE_90__ = __webpack_require__(/*! ../basic-languages/html/html.contribution.js */ \"./node_modules/monaco-editor/esm/vs/basic-languages/html/html.contribution.js\");\n/* harmony import */ var _language_html_monaco_contribution_js__WEBPACK_IMPORTED_MODULE_91__ = __webpack_require__(/*! ../language/html/monaco.contribution.js */ \"./node_modules/monaco-editor/esm/vs/language/html/monaco.contribution.js\");\n/* harmony import */ var _basic_languages_ini_ini_contribution_js__WEBPACK_IMPORTED_MODULE_92__ = __webpack_require__(/*! ../basic-languages/ini/ini.contribution.js */ \"./node_modules/monaco-editor/esm/vs/basic-languages/ini/ini.contribution.js\");\n/* harmony import */ var _basic_languages_java_java_contribution_js__WEBPACK_IMPORTED_MODULE_93__ = __webpack_require__(/*! ../basic-languages/java/java.contribution.js */ \"./node_modules/monaco-editor/esm/vs/basic-languages/java/java.contribution.js\");\n/* harmony import */ var _basic_languages_javascript_javascript_contribution_js__WEBPACK_IMPORTED_MODULE_94__ = __webpack_require__(/*! ../basic-languages/javascript/javascript.contribution.js */ \"./node_modules/monaco-editor/esm/vs/basic-languages/javascript/javascript.contribution.js\");\n/* harmony import */ var _language_json_monaco_contribution_js__WEBPACK_IMPORTED_MODULE_95__ = __webpack_require__(/*! ../language/json/monaco.contribution.js */ \"./node_modules/monaco-editor/esm/vs/language/json/monaco.contribution.js\");\n/* harmony import */ var _basic_languages_julia_julia_contribution_js__WEBPACK_IMPORTED_MODULE_96__ = __webpack_require__(/*! ../basic-languages/julia/julia.contribution.js */ \"./node_modules/monaco-editor/esm/vs/basic-languages/julia/julia.contribution.js\");\n/* harmony import */ var _basic_languages_kotlin_kotlin_contribution_js__WEBPACK_IMPORTED_MODULE_97__ = __webpack_require__(/*! ../basic-languages/kotlin/kotlin.contribution.js */ \"./node_modules/monaco-editor/esm/vs/basic-languages/kotlin/kotlin.contribution.js\");\n/* harmony import */ var _basic_languages_less_less_contribution_js__WEBPACK_IMPORTED_MODULE_98__ = __webpack_require__(/*! ../basic-languages/less/less.contribution.js */ \"./node_modules/monaco-editor/esm/vs/basic-languages/less/less.contribution.js\");\n/* harmony import */ var _basic_languages_lexon_lexon_contribution_js__WEBPACK_IMPORTED_MODULE_99__ = __webpack_require__(/*! ../basic-languages/lexon/lexon.contribution.js */ \"./node_modules/monaco-editor/esm/vs/basic-languages/lexon/lexon.contribution.js\");\n/* harmony import */ var _basic_languages_liquid_liquid_contribution_js__WEBPACK_IMPORTED_MODULE_100__ = __webpack_require__(/*! ../basic-languages/liquid/liquid.contribution.js */ \"./node_modules/monaco-editor/esm/vs/basic-languages/liquid/liquid.contribution.js\");\n/* harmony import */ var _basic_languages_lua_lua_contribution_js__WEBPACK_IMPORTED_MODULE_101__ = __webpack_require__(/*! ../basic-languages/lua/lua.contribution.js */ \"./node_modules/monaco-editor/esm/vs/basic-languages/lua/lua.contribution.js\");\n/* harmony import */ var _basic_languages_m3_m3_contribution_js__WEBPACK_IMPORTED_MODULE_102__ = __webpack_require__(/*! ../basic-languages/m3/m3.contribution.js */ \"./node_modules/monaco-editor/esm/vs/basic-languages/m3/m3.contribution.js\");\n/* harmony import */ var _basic_languages_markdown_markdown_contribution_js__WEBPACK_IMPORTED_MODULE_103__ = __webpack_require__(/*! ../basic-languages/markdown/markdown.contribution.js */ \"./node_modules/monaco-editor/esm/vs/basic-languages/markdown/markdown.contribution.js\");\n/* harmony import */ var _basic_languages_mdx_mdx_contribution_js__WEBPACK_IMPORTED_MODULE_104__ = __webpack_require__(/*! ../basic-languages/mdx/mdx.contribution.js */ \"./node_modules/monaco-editor/esm/vs/basic-languages/mdx/mdx.contribution.js\");\n/* harmony import */ var _basic_languages_mips_mips_contribution_js__WEBPACK_IMPORTED_MODULE_105__ = __webpack_require__(/*! ../basic-languages/mips/mips.contribution.js */ \"./node_modules/monaco-editor/esm/vs/basic-languages/mips/mips.contribution.js\");\n/* harmony import */ var _basic_languages_msdax_msdax_contribution_js__WEBPACK_IMPORTED_MODULE_106__ = __webpack_require__(/*! ../basic-languages/msdax/msdax.contribution.js */ \"./node_modules/monaco-editor/esm/vs/basic-languages/msdax/msdax.contribution.js\");\n/* harmony import */ var _basic_languages_mysql_mysql_contribution_js__WEBPACK_IMPORTED_MODULE_107__ = __webpack_require__(/*! ../basic-languages/mysql/mysql.contribution.js */ \"./node_modules/monaco-editor/esm/vs/basic-languages/mysql/mysql.contribution.js\");\n/* harmony import */ var _basic_languages_objective_c_objective_c_contribution_js__WEBPACK_IMPORTED_MODULE_108__ = __webpack_require__(/*! ../basic-languages/objective-c/objective-c.contribution.js */ \"./node_modules/monaco-editor/esm/vs/basic-languages/objective-c/objective-c.contribution.js\");\n/* harmony import */ var _basic_languages_pascal_pascal_contribution_js__WEBPACK_IMPORTED_MODULE_109__ = __webpack_require__(/*! ../basic-languages/pascal/pascal.contribution.js */ \"./node_modules/monaco-editor/esm/vs/basic-languages/pascal/pascal.contribution.js\");\n/* harmony import */ var _basic_languages_pascaligo_pascaligo_contribution_js__WEBPACK_IMPORTED_MODULE_110__ = __webpack_require__(/*! ../basic-languages/pascaligo/pascaligo.contribution.js */ \"./node_modules/monaco-editor/esm/vs/basic-languages/pascaligo/pascaligo.contribution.js\");\n/* harmony import */ var _basic_languages_perl_perl_contribution_js__WEBPACK_IMPORTED_MODULE_111__ = __webpack_require__(/*! ../basic-languages/perl/perl.contribution.js */ \"./node_modules/monaco-editor/esm/vs/basic-languages/perl/perl.contribution.js\");\n/* harmony import */ var _basic_languages_pgsql_pgsql_contribution_js__WEBPACK_IMPORTED_MODULE_112__ = __webpack_require__(/*! ../basic-languages/pgsql/pgsql.contribution.js */ \"./node_modules/monaco-editor/esm/vs/basic-languages/pgsql/pgsql.contribution.js\");\n/* harmony import */ var _basic_languages_php_php_contribution_js__WEBPACK_IMPORTED_MODULE_113__ = __webpack_require__(/*! ../basic-languages/php/php.contribution.js */ \"./node_modules/monaco-editor/esm/vs/basic-languages/php/php.contribution.js\");\n/* harmony import */ var _basic_languages_pla_pla_contribution_js__WEBPACK_IMPORTED_MODULE_114__ = __webpack_require__(/*! ../basic-languages/pla/pla.contribution.js */ \"./node_modules/monaco-editor/esm/vs/basic-languages/pla/pla.contribution.js\");\n/* harmony import */ var _basic_languages_postiats_postiats_contribution_js__WEBPACK_IMPORTED_MODULE_115__ = __webpack_require__(/*! ../basic-languages/postiats/postiats.contribution.js */ \"./node_modules/monaco-editor/esm/vs/basic-languages/postiats/postiats.contribution.js\");\n/* harmony import */ var _basic_languages_powerquery_powerquery_contribution_js__WEBPACK_IMPORTED_MODULE_116__ = __webpack_require__(/*! ../basic-languages/powerquery/powerquery.contribution.js */ \"./node_modules/monaco-editor/esm/vs/basic-languages/powerquery/powerquery.contribution.js\");\n/* harmony import */ var _basic_languages_powershell_powershell_contribution_js__WEBPACK_IMPORTED_MODULE_117__ = __webpack_require__(/*! ../basic-languages/powershell/powershell.contribution.js */ \"./node_modules/monaco-editor/esm/vs/basic-languages/powershell/powershell.contribution.js\");\n/* harmony import */ var _basic_languages_protobuf_protobuf_contribution_js__WEBPACK_IMPORTED_MODULE_118__ = __webpack_require__(/*! ../basic-languages/protobuf/protobuf.contribution.js */ \"./node_modules/monaco-editor/esm/vs/basic-languages/protobuf/protobuf.contribution.js\");\n/* harmony import */ var _basic_languages_pug_pug_contribution_js__WEBPACK_IMPORTED_MODULE_119__ = __webpack_require__(/*! ../basic-languages/pug/pug.contribution.js */ \"./node_modules/monaco-editor/esm/vs/basic-languages/pug/pug.contribution.js\");\n/* harmony import */ var _basic_languages_python_python_contribution_js__WEBPACK_IMPORTED_MODULE_120__ = __webpack_require__(/*! ../basic-languages/python/python.contribution.js */ \"./node_modules/monaco-editor/esm/vs/basic-languages/python/python.contribution.js\");\n/* harmony import */ var _basic_languages_qsharp_qsharp_contribution_js__WEBPACK_IMPORTED_MODULE_121__ = __webpack_require__(/*! ../basic-languages/qsharp/qsharp.contribution.js */ \"./node_modules/monaco-editor/esm/vs/basic-languages/qsharp/qsharp.contribution.js\");\n/* harmony import */ var _basic_languages_r_r_contribution_js__WEBPACK_IMPORTED_MODULE_122__ = __webpack_require__(/*! ../basic-languages/r/r.contribution.js */ \"./node_modules/monaco-editor/esm/vs/basic-languages/r/r.contribution.js\");\n/* harmony import */ var _basic_languages_razor_razor_contribution_js__WEBPACK_IMPORTED_MODULE_123__ = __webpack_require__(/*! ../basic-languages/razor/razor.contribution.js */ \"./node_modules/monaco-editor/esm/vs/basic-languages/razor/razor.contribution.js\");\n/* harmony import */ var _basic_languages_redis_redis_contribution_js__WEBPACK_IMPORTED_MODULE_124__ = __webpack_require__(/*! ../basic-languages/redis/redis.contribution.js */ \"./node_modules/monaco-editor/esm/vs/basic-languages/redis/redis.contribution.js\");\n/* harmony import */ var _basic_languages_redshift_redshift_contribution_js__WEBPACK_IMPORTED_MODULE_125__ = __webpack_require__(/*! ../basic-languages/redshift/redshift.contribution.js */ \"./node_modules/monaco-editor/esm/vs/basic-languages/redshift/redshift.contribution.js\");\n/* harmony import */ var _basic_languages_restructuredtext_restructuredtext_contribution_js__WEBPACK_IMPORTED_MODULE_126__ = __webpack_require__(/*! ../basic-languages/restructuredtext/restructuredtext.contribution.js */ \"./node_modules/monaco-editor/esm/vs/basic-languages/restructuredtext/restructuredtext.contribution.js\");\n/* harmony import */ var _basic_languages_ruby_ruby_contribution_js__WEBPACK_IMPORTED_MODULE_127__ = __webpack_require__(/*! ../basic-languages/ruby/ruby.contribution.js */ \"./node_modules/monaco-editor/esm/vs/basic-languages/ruby/ruby.contribution.js\");\n/* harmony import */ var _basic_languages_rust_rust_contribution_js__WEBPACK_IMPORTED_MODULE_128__ = __webpack_require__(/*! ../basic-languages/rust/rust.contribution.js */ \"./node_modules/monaco-editor/esm/vs/basic-languages/rust/rust.contribution.js\");\n/* harmony import */ var _basic_languages_sb_sb_contribution_js__WEBPACK_IMPORTED_MODULE_129__ = __webpack_require__(/*! ../basic-languages/sb/sb.contribution.js */ \"./node_modules/monaco-editor/esm/vs/basic-languages/sb/sb.contribution.js\");\n/* harmony import */ var _basic_languages_scala_scala_contribution_js__WEBPACK_IMPORTED_MODULE_130__ = __webpack_require__(/*! ../basic-languages/scala/scala.contribution.js */ \"./node_modules/monaco-editor/esm/vs/basic-languages/scala/scala.contribution.js\");\n/* harmony import */ var _basic_languages_scheme_scheme_contribution_js__WEBPACK_IMPORTED_MODULE_131__ = __webpack_require__(/*! ../basic-languages/scheme/scheme.contribution.js */ \"./node_modules/monaco-editor/esm/vs/basic-languages/scheme/scheme.contribution.js\");\n/* harmony import */ var _basic_languages_scss_scss_contribution_js__WEBPACK_IMPORTED_MODULE_132__ = __webpack_require__(/*! ../basic-languages/scss/scss.contribution.js */ \"./node_modules/monaco-editor/esm/vs/basic-languages/scss/scss.contribution.js\");\n/* harmony import */ var _basic_languages_shell_shell_contribution_js__WEBPACK_IMPORTED_MODULE_133__ = __webpack_require__(/*! ../basic-languages/shell/shell.contribution.js */ \"./node_modules/monaco-editor/esm/vs/basic-languages/shell/shell.contribution.js\");\n/* harmony import */ var _basic_languages_solidity_solidity_contribution_js__WEBPACK_IMPORTED_MODULE_134__ = __webpack_require__(/*! ../basic-languages/solidity/solidity.contribution.js */ \"./node_modules/monaco-editor/esm/vs/basic-languages/solidity/solidity.contribution.js\");\n/* harmony import */ var _basic_languages_sophia_sophia_contribution_js__WEBPACK_IMPORTED_MODULE_135__ = __webpack_require__(/*! ../basic-languages/sophia/sophia.contribution.js */ \"./node_modules/monaco-editor/esm/vs/basic-languages/sophia/sophia.contribution.js\");\n/* harmony import */ var _basic_languages_sparql_sparql_contribution_js__WEBPACK_IMPORTED_MODULE_136__ = __webpack_require__(/*! ../basic-languages/sparql/sparql.contribution.js */ \"./node_modules/monaco-editor/esm/vs/basic-languages/sparql/sparql.contribution.js\");\n/* harmony import */ var _basic_languages_sql_sql_contribution_js__WEBPACK_IMPORTED_MODULE_137__ = __webpack_require__(/*! ../basic-languages/sql/sql.contribution.js */ \"./node_modules/monaco-editor/esm/vs/basic-languages/sql/sql.contribution.js\");\n/* harmony import */ var _basic_languages_st_st_contribution_js__WEBPACK_IMPORTED_MODULE_138__ = __webpack_require__(/*! ../basic-languages/st/st.contribution.js */ \"./node_modules/monaco-editor/esm/vs/basic-languages/st/st.contribution.js\");\n/* harmony import */ var _basic_languages_swift_swift_contribution_js__WEBPACK_IMPORTED_MODULE_139__ = __webpack_require__(/*! ../basic-languages/swift/swift.contribution.js */ \"./node_modules/monaco-editor/esm/vs/basic-languages/swift/swift.contribution.js\");\n/* harmony import */ var _basic_languages_systemverilog_systemverilog_contribution_js__WEBPACK_IMPORTED_MODULE_140__ = __webpack_require__(/*! ../basic-languages/systemverilog/systemverilog.contribution.js */ \"./node_modules/monaco-editor/esm/vs/basic-languages/systemverilog/systemverilog.contribution.js\");\n/* harmony import */ var _basic_languages_tcl_tcl_contribution_js__WEBPACK_IMPORTED_MODULE_141__ = __webpack_require__(/*! ../basic-languages/tcl/tcl.contribution.js */ \"./node_modules/monaco-editor/esm/vs/basic-languages/tcl/tcl.contribution.js\");\n/* harmony import */ var _basic_languages_twig_twig_contribution_js__WEBPACK_IMPORTED_MODULE_142__ = __webpack_require__(/*! ../basic-languages/twig/twig.contribution.js */ \"./node_modules/monaco-editor/esm/vs/basic-languages/twig/twig.contribution.js\");\n/* harmony import */ var _basic_languages_typescript_typescript_contribution_js__WEBPACK_IMPORTED_MODULE_143__ = __webpack_require__(/*! ../basic-languages/typescript/typescript.contribution.js */ \"./node_modules/monaco-editor/esm/vs/basic-languages/typescript/typescript.contribution.js\");\n/* harmony import */ var _language_typescript_monaco_contribution_js__WEBPACK_IMPORTED_MODULE_144__ = __webpack_require__(/*! ../language/typescript/monaco.contribution.js */ \"./node_modules/monaco-editor/esm/vs/language/typescript/monaco.contribution.js\");\n/* harmony import */ var _basic_languages_vb_vb_contribution_js__WEBPACK_IMPORTED_MODULE_145__ = __webpack_require__(/*! ../basic-languages/vb/vb.contribution.js */ \"./node_modules/monaco-editor/esm/vs/basic-languages/vb/vb.contribution.js\");\n/* harmony import */ var _basic_languages_wgsl_wgsl_contribution_js__WEBPACK_IMPORTED_MODULE_146__ = __webpack_require__(/*! ../basic-languages/wgsl/wgsl.contribution.js */ \"./node_modules/monaco-editor/esm/vs/basic-languages/wgsl/wgsl.contribution.js\");\n/* harmony import */ var _basic_languages_xml_xml_contribution_js__WEBPACK_IMPORTED_MODULE_147__ = __webpack_require__(/*! ../basic-languages/xml/xml.contribution.js */ \"./node_modules/monaco-editor/esm/vs/basic-languages/xml/xml.contribution.js\");\n/* harmony import */ var _basic_languages_yaml_yaml_contribution_js__WEBPACK_IMPORTED_MODULE_148__ = __webpack_require__(/*! ../basic-languages/yaml/yaml.contribution.js */ \"./node_modules/monaco-editor/esm/vs/basic-languages/yaml/yaml.contribution.js\");\nself[\"MonacoEnvironment\"] = (function (paths) {\n function stripTrailingSlash(str) {\n return str.replace(/\\/$/, '');\n }\n return {\n globalAPI: false,\n getWorkerUrl: function (moduleId, label) {\n var pathPrefix = true ? __webpack_require__.p : 0;\n var result = (pathPrefix ? stripTrailingSlash(pathPrefix) + '/' : '') + paths[label];\n if (/^((http:)|(https:)|(file:)|(\\/\\/))/.test(result)) {\n var currentUrl = String(window.location);\n var currentOrigin = currentUrl.substr(0, currentUrl.length - window.location.hash.length - window.location.search.length - window.location.pathname.length);\n if (result.substring(0, currentOrigin.length) !== currentOrigin) {\n if(/^(\\/\\/)/.test(result)) {\n result = window.location.protocol + result\n }\n var js = '/*' + label + '*/importScripts(\"' + result + '\");';\n var blob = new Blob([js], { type: 'application/javascript' });\n return URL.createObjectURL(blob);\n }\n }\n return result;\n }\n };\n })({\n \"editorWorkerService\": \"editor.worker.js\",\n \"css\": \"css.worker.js\",\n \"html\": \"html.worker.js\",\n \"json\": \"json.worker.js\",\n \"typescript\": \"ts.worker.js\",\n \"javascript\": \"ts.worker.js\",\n \"less\": \"css.worker.js\",\n \"scss\": \"css.worker.js\",\n \"handlebars\": \"html.worker.js\",\n \"razor\": \"html.worker.js\"\n});\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (_editor_main_js__WEBPACK_IMPORTED_MODULE_64__);\n\t\t\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/editor.main.js?include-loader");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/base/browser/browser.js":
/*!*******************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/base/browser/browser.js ***!
\*******************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ addMatchMediaChangeListener: () => (/* binding */ addMatchMediaChangeListener),\n/* harmony export */ getZoomFactor: () => (/* binding */ getZoomFactor),\n/* harmony export */ isAndroid: () => (/* binding */ isAndroid),\n/* harmony export */ isChrome: () => (/* binding */ isChrome),\n/* harmony export */ isElectron: () => (/* binding */ isElectron),\n/* harmony export */ isFirefox: () => (/* binding */ isFirefox),\n/* harmony export */ isSafari: () => (/* binding */ isSafari),\n/* harmony export */ isStandalone: () => (/* binding */ isStandalone),\n/* harmony export */ isWebKit: () => (/* binding */ isWebKit),\n/* harmony export */ isWebkitWebView: () => (/* binding */ isWebkitWebView)\n/* harmony export */ });\n/* harmony import */ var _window_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./window.js */ \"./node_modules/monaco-editor/esm/vs/base/browser/window.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\nclass WindowManager {\n constructor() {\n // --- Zoom Factor\n this.mapWindowIdToZoomFactor = new Map();\n }\n getZoomFactor(targetWindow) {\n var _a;\n return (_a = this.mapWindowIdToZoomFactor.get(this.getWindowId(targetWindow))) !== null && _a !== void 0 ? _a : 1;\n }\n getWindowId(targetWindow) {\n return targetWindow.vscodeWindowId;\n }\n}\nWindowManager.INSTANCE = new WindowManager();\nfunction addMatchMediaChangeListener(targetWindow, query, callback) {\n if (typeof query === 'string') {\n query = targetWindow.matchMedia(query);\n }\n query.addEventListener('change', callback);\n}\n/** The zoom scale for an index, e.g. 1, 1.2, 1.4 */\nfunction getZoomFactor(targetWindow) {\n return WindowManager.INSTANCE.getZoomFactor(targetWindow);\n}\nconst userAgent = navigator.userAgent;\nconst isFirefox = (userAgent.indexOf('Firefox') >= 0);\nconst isWebKit = (userAgent.indexOf('AppleWebKit') >= 0);\nconst isChrome = (userAgent.indexOf('Chrome') >= 0);\nconst isSafari = (!isChrome && (userAgent.indexOf('Safari') >= 0));\nconst isWebkitWebView = (!isChrome && !isSafari && isWebKit);\nconst isElectron = (userAgent.indexOf('Electron/') >= 0);\nconst isAndroid = (userAgent.indexOf('Android') >= 0);\nlet standalone = false;\nif (typeof _window_js__WEBPACK_IMPORTED_MODULE_0__.mainWindow.matchMedia === 'function') {\n const standaloneMatchMedia = _window_js__WEBPACK_IMPORTED_MODULE_0__.mainWindow.matchMedia('(display-mode: standalone) or (display-mode: window-controls-overlay)');\n const fullScreenMatchMedia = _window_js__WEBPACK_IMPORTED_MODULE_0__.mainWindow.matchMedia('(display-mode: fullscreen)');\n standalone = standaloneMatchMedia.matches;\n addMatchMediaChangeListener(_window_js__WEBPACK_IMPORTED_MODULE_0__.mainWindow, standaloneMatchMedia, ({ matches }) => {\n // entering fullscreen would change standaloneMatchMedia.matches to false\n // if standalone is true (running as PWA) and entering fullscreen, skip this change\n if (standalone && fullScreenMatchMedia.matches) {\n return;\n }\n // otherwise update standalone (browser to PWA or PWA to browser)\n standalone = matches;\n });\n}\nfunction isStandalone() {\n return standalone;\n}\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/base/browser/browser.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/base/browser/canIUse.js":
/*!*******************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/base/browser/canIUse.js ***!
\*******************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ BrowserFeatures: () => (/* binding */ BrowserFeatures)\n/* harmony export */ });\n/* harmony import */ var _browser_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./browser.js */ \"./node_modules/monaco-editor/esm/vs/base/browser/browser.js\");\n/* harmony import */ var _window_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./window.js */ \"./node_modules/monaco-editor/esm/vs/base/browser/window.js\");\n/* harmony import */ var _common_platform_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../common/platform.js */ \"./node_modules/monaco-editor/esm/vs/base/common/platform.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n\n\n/**\n * Browser feature we can support in current platform, browser and environment.\n */\nconst BrowserFeatures = {\n clipboard: {\n writeText: (_common_platform_js__WEBPACK_IMPORTED_MODULE_2__.isNative\n || (document.queryCommandSupported && document.queryCommandSupported('copy'))\n || !!(navigator && navigator.clipboard && navigator.clipboard.writeText)),\n readText: (_common_platform_js__WEBPACK_IMPORTED_MODULE_2__.isNative\n || !!(navigator && navigator.clipboard && navigator.clipboard.readText))\n },\n keyboard: (() => {\n if (_common_platform_js__WEBPACK_IMPORTED_MODULE_2__.isNative || _browser_js__WEBPACK_IMPORTED_MODULE_0__.isStandalone()) {\n return 0 /* KeyboardSupport.Always */;\n }\n if (navigator.keyboard || _browser_js__WEBPACK_IMPORTED_MODULE_0__.isSafari) {\n return 1 /* KeyboardSupport.FullScreen */;\n }\n return 2 /* KeyboardSupport.None */;\n })(),\n // 'ontouchstart' in window always evaluates to true with typescript's modern typings. This causes `window` to be\n // `never` later in `window.navigator`. That's why we need the explicit `window as Window` cast\n touch: \"ontouchstart\" in _window_js__WEBPACK_IMPORTED_MODULE_1__.mainWindow || navigator.maxTouchPoints > 0,\n pointerEvents: _window_js__WEBPACK_IMPORTED_MODULE_1__.mainWindow.PointerEvent && (\"ontouchstart\" in _window_js__WEBPACK_IMPORTED_MODULE_1__.mainWindow || navigator.maxTouchPoints > 0)\n};\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/base/browser/canIUse.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/base/browser/defaultWorkerFactory.js":
/*!********************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/base/browser/defaultWorkerFactory.js ***!
\********************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ DefaultWorkerFactory: () => (/* binding */ DefaultWorkerFactory)\n/* harmony export */ });\n/* harmony import */ var _trustedTypes_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./trustedTypes.js */ \"./node_modules/monaco-editor/esm/vs/base/browser/trustedTypes.js\");\n/* harmony import */ var _common_errors_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../common/errors.js */ \"./node_modules/monaco-editor/esm/vs/base/common/errors.js\");\n/* harmony import */ var _common_worker_simpleWorker_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../common/worker/simpleWorker.js */ \"./node_modules/monaco-editor/esm/vs/base/common/worker/simpleWorker.js\");\n/* harmony import */ var _common_lifecycle_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../common/lifecycle.js */ \"./node_modules/monaco-editor/esm/vs/base/common/lifecycle.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n\n\n\nconst ttPolicy = (0,_trustedTypes_js__WEBPACK_IMPORTED_MODULE_0__.createTrustedTypesPolicy)('defaultWorkerFactory', { createScriptURL: value => value });\nfunction getWorker(label) {\n const monacoEnvironment = globalThis.MonacoEnvironment;\n if (monacoEnvironment) {\n if (typeof monacoEnvironment.getWorker === 'function') {\n return monacoEnvironment.getWorker('workerMain.js', label);\n }\n if (typeof monacoEnvironment.getWorkerUrl === 'function') {\n const workerUrl = monacoEnvironment.getWorkerUrl('workerMain.js', label);\n return new Worker(ttPolicy ? ttPolicy.createScriptURL(workerUrl) : workerUrl, { name: label });\n }\n }\n // ESM-comment-begin\n // \tif (typeof require === 'function') {\n // \t\t// check if the JS lives on a different origin\n // \t\tconst workerMain = require.toUrl('vs/base/worker/workerMain.js'); // explicitly using require.toUrl(), see https://github.com/microsoft/vscode/issues/107440#issuecomment-698982321\n // \t\tconst workerUrl = getWorkerBootstrapUrl(workerMain, label);\n // \t\treturn new Worker(ttPolicy ? ttPolicy.createScriptURL(workerUrl) as unknown as string : workerUrl, { name: label });\n // \t}\n // ESM-comment-end\n throw new Error(`You must define a function MonacoEnvironment.getWorkerUrl or MonacoEnvironment.getWorker`);\n}\n// ESM-comment-begin\n// export function getWorkerBootstrapUrl(scriptPath: string, label: string): string {\n// \tif (/^((http:)|(https:)|(file:))/.test(scriptPath) && scriptPath.substring(0, globalThis.origin.length) !== globalThis.origin) {\n// \t\t// this is the cross-origin case\n// \t\t// i.e. the webpage is running at a different origin than where the scripts are loaded from\n// \t\tconst myPath = 'vs/base/worker/defaultWorkerFactory.js';\n// \t\tconst workerBaseUrl = require.toUrl(myPath).slice(0, -myPath.length); // explicitly using require.toUrl(), see https://github.com/microsoft/vscode/issues/107440#issuecomment-698982321\n// \t\tconst js = `/*${label}*/globalThis.MonacoEnvironment={baseUrl: '${workerBaseUrl}'};const ttPolicy = globalThis.trustedTypes?.createPolicy('defaultWorkerFactory', { createScriptURL: value => value });importScripts(ttPolicy?.createScriptURL('${scriptPath}') ?? '${scriptPath}');/*${label}*/`;\n// \t\tconst blob = new Blob([js], { type: 'application/javascript' });\n// \t\treturn URL.createObjectURL(blob);\n// \t}\n// \n// \tconst start = scriptPath.lastIndexOf('?');\n// \tconst end = scriptPath.lastIndexOf('#', start);\n// \tconst params = start > 0\n// \t\t? new URLSearchParams(scriptPath.substring(start + 1, ~end ? end : undefined))\n// \t\t: new URLSearchParams();\n// \n// \tCOI.addSearchParam(params, true, true);\n// \tconst search = params.toString();\n// \n// \tif (!search) {\n// \t\treturn `${scriptPath}#${label}`;\n// \t} else {\n// \t\treturn `${scriptPath}?${params.toString()}#${label}`;\n// \t}\n// }\n// ESM-comment-end\nfunction isPromiseLike(obj) {\n if (typeof obj.then === 'function') {\n return true;\n }\n return false;\n}\n/**\n * A worker that uses HTML5 web workers so that is has\n * its own global scope and its own thread.\n */\nclass WebWorker extends _common_lifecycle_js__WEBPACK_IMPORTED_MODULE_3__.Disposable {\n constructor(moduleId, id, label, onMessageCallback, onErrorCallback) {\n super();\n this.id = id;\n this.label = label;\n const workerOrPromise = getWorker(label);\n if (isPromiseLike(workerOrPromise)) {\n this.worker = workerOrPromise;\n }\n else {\n this.worker = Promise.resolve(workerOrPromise);\n }\n this.postMessage(moduleId, []);\n this.worker.then((w) => {\n w.onmessage = function (ev) {\n onMessageCallback(ev.data);\n };\n w.onmessageerror = onErrorCallback;\n if (typeof w.addEventListener === 'function') {\n w.addEventListener('error', onErrorCallback);\n }\n });\n this._register((0,_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_3__.toDisposable)(() => {\n var _a;\n (_a = this.worker) === null || _a === void 0 ? void 0 : _a.then(w => {\n w.onmessage = null;\n w.onmessageerror = null;\n w.removeEventListener('error', onErrorCallback);\n w.terminate();\n });\n this.worker = null;\n }));\n }\n getId() {\n return this.id;\n }\n postMessage(message, transfer) {\n var _a;\n (_a = this.worker) === null || _a === void 0 ? void 0 : _a.then(w => {\n try {\n w.postMessage(message, transfer);\n }\n catch (err) {\n (0,_common_errors_js__WEBPACK_IMPORTED_MODULE_1__.onUnexpectedError)(err);\n (0,_common_errors_js__WEBPACK_IMPORTED_MODULE_1__.onUnexpectedError)(new Error(`FAILED to post message to '${this.label}'-worker`, { cause: err }));\n }\n });\n }\n}\nclass DefaultWorkerFactory {\n constructor(label) {\n this._label = label;\n this._webWorkerFailedBeforeError = false;\n }\n create(moduleId, onMessageCallback, onErrorCallback) {\n const workerId = (++DefaultWorkerFactory.LAST_WORKER_ID);\n if (this._webWorkerFailedBeforeError) {\n throw this._webWorkerFailedBeforeError;\n }\n return new WebWorker(moduleId, workerId, this._label || 'anonymous' + workerId, onMessageCallback, (err) => {\n (0,_common_worker_simpleWorker_js__WEBPACK_IMPORTED_MODULE_2__.logOnceWebWorkerWarning)(err);\n this._webWorkerFailedBeforeError = err;\n onErrorCallback(err);\n });\n }\n}\nDefaultWorkerFactory.LAST_WORKER_ID = 0;\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/base/browser/defaultWorkerFactory.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/base/browser/dnd.js":
/*!***************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/base/browser/dnd.js ***!
\***************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ DataTransfers: () => (/* binding */ DataTransfers)\n/* harmony export */ });\n/* harmony import */ var _common_mime_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../common/mime.js */ \"./node_modules/monaco-editor/esm/vs/base/common/mime.js\");\n\n// Common data transfers\nconst DataTransfers = {\n /**\n * Application specific resource transfer type\n */\n RESOURCES: 'ResourceURLs',\n /**\n * Browser specific transfer type to download\n */\n DOWNLOAD_URL: 'DownloadURL',\n /**\n * Browser specific transfer type for files\n */\n FILES: 'Files',\n /**\n * Typically transfer type for copy/paste transfers.\n */\n TEXT: _common_mime_js__WEBPACK_IMPORTED_MODULE_0__.Mimes.text,\n /**\n * Internal type used to pass around text/uri-list data.\n *\n * This is needed to work around https://bugs.chromium.org/p/chromium/issues/detail?id=239745.\n */\n INTERNAL_URI_LIST: 'application/vnd.code.uri-list',\n};\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/base/browser/dnd.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/base/browser/dom.js":
/*!***************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/base/browser/dom.js ***!
\***************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ $: () => (/* binding */ $),\n/* harmony export */ Dimension: () => (/* binding */ Dimension),\n/* harmony export */ DragAndDropObserver: () => (/* binding */ DragAndDropObserver),\n/* harmony export */ EventHelper: () => (/* binding */ EventHelper),\n/* harmony export */ EventType: () => (/* binding */ EventType),\n/* harmony export */ ModifierKeyEmitter: () => (/* binding */ ModifierKeyEmitter),\n/* harmony export */ Namespace: () => (/* binding */ Namespace),\n/* harmony export */ WindowIdleValue: () => (/* binding */ WindowIdleValue),\n/* harmony export */ WindowIntervalTimer: () => (/* binding */ WindowIntervalTimer),\n/* harmony export */ addDisposableGenericMouseDownListener: () => (/* binding */ addDisposableGenericMouseDownListener),\n/* harmony export */ addDisposableGenericMouseUpListener: () => (/* binding */ addDisposableGenericMouseUpListener),\n/* harmony export */ addDisposableListener: () => (/* binding */ addDisposableListener),\n/* harmony export */ addStandardDisposableGenericMouseDownListener: () => (/* binding */ addStandardDisposableGenericMouseDownListener),\n/* harmony export */ addStandardDisposableGenericMouseUpListener: () => (/* binding */ addStandardDisposableGenericMouseUpListener),\n/* harmony export */ addStandardDisposableListener: () => (/* binding */ addStandardDisposableListener),\n/* harmony export */ after: () => (/* binding */ after),\n/* harmony export */ animate: () => (/* binding */ animate),\n/* harmony export */ append: () => (/* binding */ append),\n/* harmony export */ asCSSPropertyValue: () => (/* binding */ asCSSPropertyValue),\n/* harmony export */ asCSSUrl: () => (/* binding */ asCSSUrl),\n/* harmony export */ asCssValueWithDefault: () => (/* binding */ asCssValueWithDefault),\n/* harmony export */ basicMarkupHtmlTags: () => (/* binding */ basicMarkupHtmlTags),\n/* harmony export */ clearNode: () => (/* binding */ clearNode),\n/* harmony export */ computeScreenAwareSize: () => (/* binding */ computeScreenAwareSize),\n/* harmony export */ createCSSRule: () => (/* binding */ createCSSRule),\n/* harmony export */ createStyleSheet: () => (/* binding */ createStyleSheet),\n/* harmony export */ createStyleSheet2: () => (/* binding */ createStyleSheet2),\n/* harmony export */ findParentWithClass: () => (/* binding */ findParentWithClass),\n/* harmony export */ getActiveDocument: () => (/* binding */ getActiveDocument),\n/* harmony export */ getActiveElement: () => (/* binding */ getActiveElement),\n/* harmony export */ getActiveWindow: () => (/* binding */ getActiveWindow),\n/* harmony export */ getClientArea: () => (/* binding */ getClientArea),\n/* harmony export */ getComputedStyle: () => (/* binding */ getComputedStyle),\n/* harmony export */ getContentHeight: () => (/* binding */ getContentHeight),\n/* harmony export */ getContentWidth: () => (/* binding */ getContentWidth),\n/* harmony export */ getDocument: () => (/* binding */ getDocument),\n/* harmony export */ getDomNodePagePosition: () => (/* binding */ getDomNodePagePosition),\n/* harmony export */ getDomNodeZoomLevel: () => (/* binding */ getDomNodeZoomLevel),\n/* harmony export */ getShadowRoot: () => (/* binding */ getShadowRoot),\n/* harmony export */ getTopLeftOffset: () => (/* binding */ getTopLeftOffset),\n/* harmony export */ getTotalHeight: () => (/* binding */ getTotalHeight),\n/* harmony export */ getTotalWidth: () => (/* binding */ getTotalWidth),\n/* harmony export */ getWindow: () => (/* binding */ getWindow),\n/* harmony export */ getWindowById: () => (/* binding */ getWindowById),\n/* harmony export */ getWindowId: () => (/* binding */ getWindowId),\n/* harmony export */ getWindows: () => (/* binding */ getWindows),\n/* harmony export */ getWindowsCount: () => (/* binding */ getWindowsCount),\n/* harmony export */ h: () => (/* binding */ h),\n/* harmony export */ hasParentWithClass: () => (/* binding */ hasParentWithClass),\n/* harmony export */ hasWindow: () => (/* binding */ hasWindow),\n/* harmony export */ hide: () => (/* binding */ hide),\n/* harmony export */ hookDomPurifyHrefAndSrcSanitizer: () => (/* binding */ hookDomPurifyHrefAndSrcSanitizer),\n/* harmony export */ isActiveElement: () => (/* binding */ isActiveElement),\n/* harmony export */ isAncestor: () => (/* binding */ isAncestor),\n/* harmony export */ isAncestorOfActiveElement: () => (/* binding */ isAncestorOfActiveElement),\n/* harmony export */ isEventLike: () => (/* binding */ isEventLike),\n/* harmony export */ isInShadowDOM: () => (/* binding */ isInShadowDOM),\n/* harmony export */ isKeyboardEvent: () => (/* binding */ isKeyboardEvent),\n/* harmony export */ isMouseEvent: () => (/* binding */ isMouseEvent),\n/* harmony export */ isShadowRoot: () => (/* binding */ isShadowRoot),\n/* harmony export */ onDidRegisterWindow: () => (/* binding */ onDidRegisterWindow),\n/* harmony export */ onDidUnregisterWindow: () => (/* binding */ onDidUnregisterWindow),\n/* harmony export */ onWillUnregisterWindow: () => (/* binding */ onWillUnregisterWindow),\n/* harmony export */ prepend: () => (/* binding */ prepend),\n/* harmony export */ registerWindow: () => (/* binding */ registerWindow),\n/* harmony export */ removeCSSRulesContainingSelector: () => (/* binding */ removeCSSRulesContainingSelector),\n/* harmony export */ reset: () => (/* binding */ reset),\n/* harmony export */ restoreParentsScrollTop: () => (/* binding */ restoreParentsScrollTop),\n/* harmony export */ runAtThisOrScheduleAtNextAnimationFrame: () => (/* binding */ runAtThisOrScheduleAtNextAnimationFrame),\n/* harmony export */ runWhenWindowIdle: () => (/* binding */ runWhenWindowIdle),\n/* harmony export */ saveParentsScrollTop: () => (/* binding */ saveParentsScrollTop),\n/* harmony export */ scheduleAtNextAnimationFrame: () => (/* binding */ scheduleAtNextAnimationFrame),\n/* harmony export */ setVisibility: () => (/* binding */ setVisibility),\n/* harmony export */ sharedMutationObserver: () => (/* binding */ sharedMutationObserver),\n/* harmony export */ show: () => (/* binding */ show),\n/* harmony export */ size: () => (/* binding */ size),\n/* harmony export */ trackFocus: () => (/* binding */ trackFocus),\n/* harmony export */ windowOpenNoOpener: () => (/* binding */ windowOpenNoOpener)\n/* harmony export */ });\n/* harmony import */ var _browser_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./browser.js */ \"./node_modules/monaco-editor/esm/vs/base/browser/browser.js\");\n/* harmony import */ var _canIUse_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./canIUse.js */ \"./node_modules/monaco-editor/esm/vs/base/browser/canIUse.js\");\n/* harmony import */ var _keyboardEvent_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./keyboardEvent.js */ \"./node_modules/monaco-editor/esm/vs/base/browser/keyboardEvent.js\");\n/* harmony import */ var _mouseEvent_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./mouseEvent.js */ \"./node_modules/monaco-editor/esm/vs/base/browser/mouseEvent.js\");\n/* harmony import */ var _common_async_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../common/async.js */ \"./node_modules/monaco-editor/esm/vs/base/common/async.js\");\n/* harmony import */ var _common_errors_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../common/errors.js */ \"./node_modules/monaco-editor/esm/vs/base/common/errors.js\");\n/* harmony import */ var _common_event_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../common/event.js */ \"./node_modules/monaco-editor/esm/vs/base/common/event.js\");\n/* harmony import */ var _dompurify_dompurify_js__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ./dompurify/dompurify.js */ \"./node_modules/monaco-editor/esm/vs/base/browser/dompurify/dompurify.js\");\n/* harmony import */ var _common_lifecycle_js__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ../common/lifecycle.js */ \"./node_modules/monaco-editor/esm/vs/base/common/lifecycle.js\");\n/* harmony import */ var _common_network_js__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ../common/network.js */ \"./node_modules/monaco-editor/esm/vs/base/common/network.js\");\n/* harmony import */ var _common_platform_js__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! ../common/platform.js */ \"./node_modules/monaco-editor/esm/vs/base/common/platform.js\");\n/* harmony import */ var _common_hash_js__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(/*! ../common/hash.js */ \"./node_modules/monaco-editor/esm/vs/base/common/hash.js\");\n/* harmony import */ var _window_js__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(/*! ./window.js */ \"./node_modules/monaco-editor/esm/vs/base/browser/window.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n\n\n\n\n\n\n\n\n\n\n\n\n//# region Multi-Window Support Utilities\nconst { registerWindow, getWindow, getDocument, getWindows, getWindowsCount, getWindowId, getWindowById, hasWindow, onDidRegisterWindow, onWillUnregisterWindow, onDidUnregisterWindow } = (function () {\n const windows = new Map();\n (0,_window_js__WEBPACK_IMPORTED_MODULE_12__.ensureCodeWindow)(_window_js__WEBPACK_IMPORTED_MODULE_12__.mainWindow, 1);\n const mainWindowRegistration = { window: _window_js__WEBPACK_IMPORTED_MODULE_12__.mainWindow, disposables: new _common_lifecycle_js__WEBPACK_IMPORTED_MODULE_8__.DisposableStore() };\n windows.set(_window_js__WEBPACK_IMPORTED_MODULE_12__.mainWindow.vscodeWindowId, mainWindowRegistration);\n const onDidRegisterWindow = new _common_event_js__WEBPACK_IMPORTED_MODULE_6__.Emitter();\n const onDidUnregisterWindow = new _common_event_js__WEBPACK_IMPORTED_MODULE_6__.Emitter();\n const onWillUnregisterWindow = new _common_event_js__WEBPACK_IMPORTED_MODULE_6__.Emitter();\n function getWindowById(windowId, fallbackToMain) {\n const window = typeof windowId === 'number' ? windows.get(windowId) : undefined;\n return window !== null && window !== void 0 ? window : (fallbackToMain ? mainWindowRegistration : undefined);\n }\n return {\n onDidRegisterWindow: onDidRegisterWindow.event,\n onWillUnregisterWindow: onWillUnregisterWindow.event,\n onDidUnregisterWindow: onDidUnregisterWindow.event,\n registerWindow(window) {\n if (windows.has(window.vscodeWindowId)) {\n return _common_lifecycle_js__WEBPACK_IMPORTED_MODULE_8__.Disposable.None;\n }\n const disposables = new _common_lifecycle_js__WEBPACK_IMPORTED_MODULE_8__.DisposableStore();\n const registeredWindow = {\n window,\n disposables: disposables.add(new _common_lifecycle_js__WEBPACK_IMPORTED_MODULE_8__.DisposableStore())\n };\n windows.set(window.vscodeWindowId, registeredWindow);\n disposables.add((0,_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_8__.toDisposable)(() => {\n windows.delete(window.vscodeWindowId);\n onDidUnregisterWindow.fire(window);\n }));\n disposables.add(addDisposableListener(window, EventType.BEFORE_UNLOAD, () => {\n onWillUnregisterWindow.fire(window);\n }));\n onDidRegisterWindow.fire(registeredWindow);\n return disposables;\n },\n getWindows() {\n return windows.values();\n },\n getWindowsCount() {\n return windows.size;\n },\n getWindowId(targetWindow) {\n return targetWindow.vscodeWindowId;\n },\n hasWindow(windowId) {\n return windows.has(windowId);\n },\n getWindowById,\n getWindow(e) {\n var _a;\n const candidateNode = e;\n if ((_a = candidateNode === null || candidateNode === void 0 ? void 0 : candidateNode.ownerDocument) === null || _a === void 0 ? void 0 : _a.defaultView) {\n return candidateNode.ownerDocument.defaultView.window;\n }\n const candidateEvent = e;\n if (candidateEvent === null || candidateEvent === void 0 ? void 0 : candidateEvent.view) {\n return candidateEvent.view.window;\n }\n return _window_js__WEBPACK_IMPORTED_MODULE_12__.mainWindow;\n },\n getDocument(e) {\n const candidateNode = e;\n return getWindow(candidateNode).document;\n }\n };\n})();\n//#endregion\nfunction clearNode(node) {\n while (node.firstChild) {\n node.firstChild.remove();\n }\n}\nclass DomListener {\n constructor(node, type, handler, options) {\n this._node = node;\n this._type = type;\n this._handler = handler;\n this._options = (options || false);\n this._node.addEventListener(this._type, this._handler, this._options);\n }\n dispose() {\n if (!this._handler) {\n // Already disposed\n return;\n }\n this._node.removeEventListener(this._type, this._handler, this._options);\n // Prevent leakers from holding on to the dom or handler func\n this._node = null;\n this._handler = null;\n }\n}\nfunction addDisposableListener(node, type, handler, useCaptureOrOptions) {\n return new DomListener(node, type, handler, useCaptureOrOptions);\n}\nfunction _wrapAsStandardMouseEvent(targetWindow, handler) {\n return function (e) {\n return handler(new _mouseEvent_js__WEBPACK_IMPORTED_MODULE_3__.StandardMouseEvent(targetWindow, e));\n };\n}\nfunction _wrapAsStandardKeyboardEvent(handler) {\n return function (e) {\n return handler(new _keyboardEvent_js__WEBPACK_IMPORTED_MODULE_2__.StandardKeyboardEvent(e));\n };\n}\nconst addStandardDisposableListener = function addStandardDisposableListener(node, type, handler, useCapture) {\n let wrapHandler = handler;\n if (type === 'click' || type === 'mousedown') {\n wrapHandler = _wrapAsStandardMouseEvent(getWindow(node), handler);\n }\n else if (type === 'keydown' || type === 'keypress' || type === 'keyup') {\n wrapHandler = _wrapAsStandardKeyboardEvent(handler);\n }\n return addDisposableListener(node, type, wrapHandler, useCapture);\n};\nconst addStandardDisposableGenericMouseDownListener = function addStandardDisposableListener(node, handler, useCapture) {\n const wrapHandler = _wrapAsStandardMouseEvent(getWindow(node), handler);\n return addDisposableGenericMouseDownListener(node, wrapHandler, useCapture);\n};\nconst addStandardDisposableGenericMouseUpListener = function addStandardDisposableListener(node, handler, useCapture) {\n const wrapHandler = _wrapAsStandardMouseEvent(getWindow(node), handler);\n return addDisposableGenericMouseUpListener(node, wrapHandler, useCapture);\n};\nfunction addDisposableGenericMouseDownListener(node, handler, useCapture) {\n return addDisposableListener(node, _common_platform_js__WEBPACK_IMPORTED_MODULE_10__.isIOS && _canIUse_js__WEBPACK_IMPORTED_MODULE_1__.BrowserFeatures.pointerEvents ? EventType.POINTER_DOWN : EventType.MOUSE_DOWN, handler, useCapture);\n}\nfunction addDisposableGenericMouseUpListener(node, handler, useCapture) {\n return addDisposableListener(node, _common_platform_js__WEBPACK_IMPORTED_MODULE_10__.isIOS && _canIUse_js__WEBPACK_IMPORTED_MODULE_1__.BrowserFeatures.pointerEvents ? EventType.POINTER_UP : EventType.MOUSE_UP, handler, useCapture);\n}\n/**\n * Execute the callback the next time the browser is idle, returning an\n * {@link IDisposable} that will cancel the callback when disposed. This wraps\n * [requestIdleCallback] so it will fallback to [setTimeout] if the environment\n * doesn't support it.\n *\n * @param targetWindow The window for which to run the idle callback\n * @param callback The callback to run when idle, this includes an\n * [IdleDeadline] that provides the time alloted for the idle callback by the\n * browser. Not respecting this deadline will result in a degraded user\n * experience.\n * @param timeout A timeout at which point to queue no longer wait for an idle\n * callback but queue it on the regular event loop (like setTimeout). Typically\n * this should not be used.\n *\n * [IdleDeadline]: https://developer.mozilla.org/en-US/docs/Web/API/IdleDeadline\n * [requestIdleCallback]: https://developer.mozilla.org/en-US/docs/Web/API/Window/requestIdleCallback\n * [setTimeout]: https://developer.mozilla.org/en-US/docs/Web/API/Window/setTimeout\n */\nfunction runWhenWindowIdle(targetWindow, callback, timeout) {\n return (0,_common_async_js__WEBPACK_IMPORTED_MODULE_4__._runWhenIdle)(targetWindow, callback, timeout);\n}\n/**\n * An implementation of the \"idle-until-urgent\"-strategy as introduced\n * here: https://philipwalton.com/articles/idle-until-urgent/\n */\nclass WindowIdleValue extends _common_async_js__WEBPACK_IMPORTED_MODULE_4__.AbstractIdleValue {\n constructor(targetWindow, executor) {\n super(targetWindow, executor);\n }\n}\n/**\n * Schedule a callback to be run at the next animation frame.\n * This allows multiple parties to register callbacks that should run at the next animation frame.\n * If currently in an animation frame, `runner` will be executed immediately.\n * @return token that can be used to cancel the scheduled runner (only if `runner` was not executed immediately).\n */\nlet runAtThisOrScheduleAtNextAnimationFrame;\n/**\n * Schedule a callback to be run at the next animation frame.\n * This allows multiple parties to register callbacks that should run at the next animation frame.\n * If currently in an animation frame, `runner` will be executed at the next animation frame.\n * @return token that can be used to cancel the scheduled runner.\n */\nlet scheduleAtNextAnimationFrame;\nclass WindowIntervalTimer extends _common_async_js__WEBPACK_IMPORTED_MODULE_4__.IntervalTimer {\n /**\n *\n * @param node The optional node from which the target window is determined\n */\n constructor(node) {\n super();\n this.defaultTarget = node && getWindow(node);\n }\n cancelAndSet(runner, interval, targetWindow) {\n return super.cancelAndSet(runner, interval, targetWindow !== null && targetWindow !== void 0 ? targetWindow : this.defaultTarget);\n }\n}\nclass AnimationFrameQueueItem {\n constructor(runner, priority = 0) {\n this._runner = runner;\n this.priority = priority;\n this._canceled = false;\n }\n dispose() {\n this._canceled = true;\n }\n execute() {\n if (this._canceled) {\n return;\n }\n try {\n this._runner();\n }\n catch (e) {\n (0,_common_errors_js__WEBPACK_IMPORTED_MODULE_5__.onUnexpectedError)(e);\n }\n }\n // Sort by priority (largest to lowest)\n static sort(a, b) {\n return b.priority - a.priority;\n }\n}\n(function () {\n /**\n * The runners scheduled at the next animation frame\n */\n const NEXT_QUEUE = new Map();\n /**\n * The runners scheduled at the current animation frame\n */\n const CURRENT_QUEUE = new Map();\n /**\n * A flag to keep track if the native requestAnimationFrame was already called\n */\n const animFrameRequested = new Map();\n /**\n * A flag to indicate if currently handling a native requestAnimationFrame callback\n */\n const inAnimationFrameRunner = new Map();\n const animationFrameRunner = (targetWindowId) => {\n var _a;\n animFrameRequested.set(targetWindowId, false);\n const currentQueue = (_a = NEXT_QUEUE.get(targetWindowId)) !== null && _a !== void 0 ? _a : [];\n CURRENT_QUEUE.set(targetWindowId, currentQueue);\n NEXT_QUEUE.set(targetWindowId, []);\n inAnimationFrameRunner.set(targetWindowId, true);\n while (currentQueue.length > 0) {\n currentQueue.sort(AnimationFrameQueueItem.sort);\n const top = currentQueue.shift();\n top.execute();\n }\n inAnimationFrameRunner.set(targetWindowId, false);\n };\n scheduleAtNextAnimationFrame = (targetWindow, runner, priority = 0) => {\n const targetWindowId = getWindowId(targetWindow);\n const item = new AnimationFrameQueueItem(runner, priority);\n let nextQueue = NEXT_QUEUE.get(targetWindowId);\n if (!nextQueue) {\n nextQueue = [];\n NEXT_QUEUE.set(targetWindowId, nextQueue);\n }\n nextQueue.push(item);\n if (!animFrameRequested.get(targetWindowId)) {\n animFrameRequested.set(targetWindowId, true);\n targetWindow.requestAnimationFrame(() => animationFrameRunner(targetWindowId));\n }\n return item;\n };\n runAtThisOrScheduleAtNextAnimationFrame = (targetWindow, runner, priority) => {\n const targetWindowId = getWindowId(targetWindow);\n if (inAnimationFrameRunner.get(targetWindowId)) {\n const item = new AnimationFrameQueueItem(runner, priority);\n let currentQueue = CURRENT_QUEUE.get(targetWindowId);\n if (!currentQueue) {\n currentQueue = [];\n CURRENT_QUEUE.set(targetWindowId, currentQueue);\n }\n currentQueue.push(item);\n return item;\n }\n else {\n return scheduleAtNextAnimationFrame(targetWindow, runner, priority);\n }\n };\n})();\nfunction getComputedStyle(el) {\n return getWindow(el).getComputedStyle(el, null);\n}\nfunction getClientArea(element, fallback) {\n const elWindow = getWindow(element);\n const elDocument = elWindow.document;\n // Try with DOM clientWidth / clientHeight\n if (element !== elDocument.body) {\n return new Dimension(element.clientWidth, element.clientHeight);\n }\n // If visual view port exits and it's on mobile, it should be used instead of window innerWidth / innerHeight, or document.body.clientWidth / document.body.clientHeight\n if (_common_platform_js__WEBPACK_IMPORTED_MODULE_10__.isIOS && (elWindow === null || elWindow === void 0 ? void 0 : elWindow.visualViewport)) {\n return new Dimension(elWindow.visualViewport.width, elWindow.visualViewport.height);\n }\n // Try innerWidth / innerHeight\n if ((elWindow === null || elWindow === void 0 ? void 0 : elWindow.innerWidth) && elWindow.innerHeight) {\n return new Dimension(elWindow.innerWidth, elWindow.innerHeight);\n }\n // Try with document.body.clientWidth / document.body.clientHeight\n if (elDocument.body && elDocument.body.clientWidth && elDocument.body.clientHeight) {\n return new Dimension(elDocument.body.clientWidth, elDocument.body.clientHeight);\n }\n // Try with document.documentElement.clientWidth / document.documentElement.clientHeight\n if (elDocument.documentElement && elDocument.documentElement.clientWidth && elDocument.documentElement.clientHeight) {\n return new Dimension(elDocument.documentElement.clientWidth, elDocument.documentElement.clientHeight);\n }\n if (fallback) {\n return getClientArea(fallback);\n }\n throw new Error('Unable to figure out browser width and height');\n}\nclass SizeUtils {\n // Adapted from WinJS\n // Converts a CSS positioning string for the specified element to pixels.\n static convertToPixels(element, value) {\n return parseFloat(value) || 0;\n }\n static getDimension(element, cssPropertyName, jsPropertyName) {\n const computedStyle = getComputedStyle(element);\n const value = computedStyle ? computedStyle.getPropertyValue(cssPropertyName) : '0';\n return SizeUtils.convertToPixels(element, value);\n }\n static getBorderLeftWidth(element) {\n return SizeUtils.getDimension(element, 'border-left-width', 'borderLeftWidth');\n }\n static getBorderRightWidth(element) {\n return SizeUtils.getDimension(element, 'border-right-width', 'borderRightWidth');\n }\n static getBorderTopWidth(element) {\n return SizeUtils.getDimension(element, 'border-top-width', 'borderTopWidth');\n }\n static getBorderBottomWidth(element) {\n return SizeUtils.getDimension(element, 'border-bottom-width', 'borderBottomWidth');\n }\n static getPaddingLeft(element) {\n return SizeUtils.getDimension(element, 'padding-left', 'paddingLeft');\n }\n static getPaddingRight(element) {\n return SizeUtils.getDimension(element, 'padding-right', 'paddingRight');\n }\n static getPaddingTop(element) {\n return SizeUtils.getDimension(element, 'padding-top', 'paddingTop');\n }\n static getPaddingBottom(element) {\n return SizeUtils.getDimension(element, 'padding-bottom', 'paddingBottom');\n }\n static getMarginLeft(element) {\n return SizeUtils.getDimension(element, 'margin-left', 'marginLeft');\n }\n static getMarginTop(element) {\n return SizeUtils.getDimension(element, 'margin-top', 'marginTop');\n }\n static getMarginRight(element) {\n return SizeUtils.getDimension(element, 'margin-right', 'marginRight');\n }\n static getMarginBottom(element) {\n return SizeUtils.getDimension(element, 'margin-bottom', 'marginBottom');\n }\n}\nclass Dimension {\n constructor(width, height) {\n this.width = width;\n this.height = height;\n }\n with(width = this.width, height = this.height) {\n if (width !== this.width || height !== this.height) {\n return new Dimension(width, height);\n }\n else {\n return this;\n }\n }\n static is(obj) {\n return typeof obj === 'object' && typeof obj.height === 'number' && typeof obj.width === 'number';\n }\n static lift(obj) {\n if (obj instanceof Dimension) {\n return obj;\n }\n else {\n return new Dimension(obj.width, obj.height);\n }\n }\n static equals(a, b) {\n if (a === b) {\n return true;\n }\n if (!a || !b) {\n return false;\n }\n return a.width === b.width && a.height === b.height;\n }\n}\nDimension.None = new Dimension(0, 0);\nfunction getTopLeftOffset(element) {\n // Adapted from WinJS.Utilities.getPosition\n // and added borders to the mix\n let offsetParent = element.offsetParent;\n let top = element.offsetTop;\n let left = element.offsetLeft;\n while ((element = element.parentNode) !== null\n && element !== element.ownerDocument.body\n && element !== element.ownerDocument.documentElement) {\n top -= element.scrollTop;\n const c = isShadowRoot(element) ? null : getComputedStyle(element);\n if (c) {\n left -= c.direction !== 'rtl' ? element.scrollLeft : -element.scrollLeft;\n }\n if (element === offsetParent) {\n left += SizeUtils.getBorderLeftWidth(element);\n top += SizeUtils.getBorderTopWidth(element);\n top += element.offsetTop;\n left += element.offsetLeft;\n offsetParent = element.offsetParent;\n }\n }\n return {\n left: left,\n top: top\n };\n}\nfunction size(element, width, height) {\n if (typeof width === 'number') {\n element.style.width = `${width}px`;\n }\n if (typeof height === 'number') {\n element.style.height = `${height}px`;\n }\n}\n/**\n * Returns the position of a dom node relative to the entire page.\n */\nfunction getDomNodePagePosition(domNode) {\n const bb = domNode.getBoundingClientRect();\n const window = getWindow(domNode);\n return {\n left: bb.left + window.scrollX,\n top: bb.top + window.scrollY,\n width: bb.width,\n height: bb.height\n };\n}\n/**\n * Returns the effective zoom on a given element before window zoom level is applied\n */\nfunction getDomNodeZoomLevel(domNode) {\n let testElement = domNode;\n let zoom = 1.0;\n do {\n const elementZoomLevel = getComputedStyle(testElement).zoom;\n if (elementZoomLevel !== null && elementZoomLevel !== undefined && elementZoomLevel !== '1') {\n zoom *= elementZoomLevel;\n }\n testElement = testElement.parentElement;\n } while (testElement !== null && testElement !== testElement.ownerDocument.documentElement);\n return zoom;\n}\n// Adapted from WinJS\n// Gets the width of the element, including margins.\nfunction getTotalWidth(element) {\n const margin = SizeUtils.getMarginLeft(element) + SizeUtils.getMarginRight(element);\n return element.offsetWidth + margin;\n}\nfunction getContentWidth(element) {\n const border = SizeUtils.getBorderLeftWidth(element) + SizeUtils.getBorderRightWidth(element);\n const padding = SizeUtils.getPaddingLeft(element) + SizeUtils.getPaddingRight(element);\n return element.offsetWidth - border - padding;\n}\n// Adapted from WinJS\n// Gets the height of the content of the specified element. The content height does not include borders or padding.\nfunction getContentHeight(element) {\n const border = SizeUtils.getBorderTopWidth(element) + SizeUtils.getBorderBottomWidth(element);\n const padding = SizeUtils.getPaddingTop(element) + SizeUtils.getPaddingBottom(element);\n return element.offsetHeight - border - padding;\n}\n// Adapted from WinJS\n// Gets the height of the element, including its margins.\nfunction getTotalHeight(element) {\n const margin = SizeUtils.getMarginTop(element) + SizeUtils.getMarginBottom(element);\n return element.offsetHeight + margin;\n}\n// ----------------------------------------------------------------------------------------\nfunction isAncestor(testChild, testAncestor) {\n return Boolean(testAncestor === null || testAncestor === void 0 ? void 0 : testAncestor.contains(testChild));\n}\nfunction findParentWithClass(node, clazz, stopAtClazzOrNode) {\n while (node && node.nodeType === node.ELEMENT_NODE) {\n if (node.classList.contains(clazz)) {\n return node;\n }\n if (stopAtClazzOrNode) {\n if (typeof stopAtClazzOrNode === 'string') {\n if (node.classList.contains(stopAtClazzOrNode)) {\n return null;\n }\n }\n else {\n if (node === stopAtClazzOrNode) {\n return null;\n }\n }\n }\n node = node.parentNode;\n }\n return null;\n}\nfunction hasParentWithClass(node, clazz, stopAtClazzOrNode) {\n return !!findParentWithClass(node, clazz, stopAtClazzOrNode);\n}\nfunction isShadowRoot(node) {\n return (node && !!node.host && !!node.mode);\n}\nfunction isInShadowDOM(domNode) {\n return !!getShadowRoot(domNode);\n}\nfunction getShadowRoot(domNode) {\n var _a;\n while (domNode.parentNode) {\n if (domNode === ((_a = domNode.ownerDocument) === null || _a === void 0 ? void 0 : _a.body)) {\n // reached the body\n return null;\n }\n domNode = domNode.parentNode;\n }\n return isShadowRoot(domNode) ? domNode : null;\n}\n/**\n * Returns the active element across all child windows\n * based on document focus. Falls back to the main\n * window if no window has focus.\n */\nfunction getActiveElement() {\n let result = getActiveDocument().activeElement;\n while (result === null || result === void 0 ? void 0 : result.shadowRoot) {\n result = result.shadowRoot.activeElement;\n }\n return result;\n}\n/**\n * Returns true if the focused window active element matches\n * the provided element. Falls back to the main window if no\n * window has focus.\n */\nfunction isActiveElement(element) {\n return getActiveElement() === element;\n}\n/**\n * Returns true if the focused window active element is contained in\n * `ancestor`. Falls back to the main window if no window has focus.\n */\nfunction isAncestorOfActiveElement(ancestor) {\n return isAncestor(getActiveElement(), ancestor);\n}\n/**\n * Returns the active document across main and child windows.\n * Prefers the window with focus, otherwise falls back to\n * the main windows document.\n */\nfunction getActiveDocument() {\n var _a;\n if (getWindowsCount() <= 1) {\n return _window_js__WEBPACK_IMPORTED_MODULE_12__.mainWindow.document;\n }\n const documents = Array.from(getWindows()).map(({ window }) => window.document);\n return (_a = documents.find(doc => doc.hasFocus())) !== null && _a !== void 0 ? _a : _window_js__WEBPACK_IMPORTED_MODULE_12__.mainWindow.document;\n}\n/**\n * Returns the active window across main and child windows.\n * Prefers the window with focus, otherwise falls back to\n * the main window.\n */\nfunction getActiveWindow() {\n var _a, _b;\n const document = getActiveDocument();\n return ((_b = (_a = document.defaultView) === null || _a === void 0 ? void 0 : _a.window) !== null && _b !== void 0 ? _b : _window_js__WEBPACK_IMPORTED_MODULE_12__.mainWindow);\n}\nconst globalStylesheets = new Map();\n/**\n * A version of createStyleSheet which has a unified API to initialize/set the style content.\n */\nfunction createStyleSheet2() {\n return new WrappedStyleElement();\n}\nclass WrappedStyleElement {\n constructor() {\n this._currentCssStyle = '';\n this._styleSheet = undefined;\n }\n setStyle(cssStyle) {\n if (cssStyle === this._currentCssStyle) {\n return;\n }\n this._currentCssStyle = cssStyle;\n if (!this._styleSheet) {\n this._styleSheet = createStyleSheet(_window_js__WEBPACK_IMPORTED_MODULE_12__.mainWindow.document.head, (s) => s.innerText = cssStyle);\n }\n else {\n this._styleSheet.innerText = cssStyle;\n }\n }\n dispose() {\n if (this._styleSheet) {\n this._styleSheet.remove();\n this._styleSheet = undefined;\n }\n }\n}\nfunction createStyleSheet(container = _window_js__WEBPACK_IMPORTED_MODULE_12__.mainWindow.document.head, beforeAppend, disposableStore) {\n const style = document.createElement('style');\n style.type = 'text/css';\n style.media = 'screen';\n beforeAppend === null || beforeAppend === void 0 ? void 0 : beforeAppend(style);\n container.appendChild(style);\n if (disposableStore) {\n disposableStore.add((0,_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_8__.toDisposable)(() => container.removeChild(style)));\n }\n // With as container, the stylesheet becomes global and is tracked\n // to support auxiliary windows to clone the stylesheet.\n if (container === _window_js__WEBPACK_IMPORTED_MODULE_12__.mainWindow.document.head) {\n const globalStylesheetClones = new Set();\n globalStylesheets.set(style, globalStylesheetClones);\n for (const { window: targetWindow, disposables } of getWindows()) {\n if (targetWindow === _window_js__WEBPACK_IMPORTED_MODULE_12__.mainWindow) {\n continue; // main window is already tracked\n }\n const cloneDisposable = disposables.add(cloneGlobalStyleSheet(style, globalStylesheetClones, targetWindow));\n disposableStore === null || disposableStore === void 0 ? void 0 : disposableStore.add(cloneDisposable);\n }\n }\n return style;\n}\nfunction cloneGlobalStyleSheet(globalStylesheet, globalStylesheetClones, targetWindow) {\n var _a, _b;\n const disposables = new _common_lifecycle_js__WEBPACK_IMPORTED_MODULE_8__.DisposableStore();\n const clone = globalStylesheet.cloneNode(true);\n targetWindow.document.head.appendChild(clone);\n disposables.add((0,_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_8__.toDisposable)(() => targetWindow.document.head.removeChild(clone)));\n for (const rule of getDynamicStyleSheetRules(globalStylesheet)) {\n (_a = clone.sheet) === null || _a === void 0 ? void 0 : _a.insertRule(rule.cssText, (_b = clone.sheet) === null || _b === void 0 ? void 0 : _b.cssRules.length);\n }\n disposables.add(sharedMutationObserver.observe(globalStylesheet, disposables, { childList: true })(() => {\n clone.textContent = globalStylesheet.textContent;\n }));\n globalStylesheetClones.add(clone);\n disposables.add((0,_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_8__.toDisposable)(() => globalStylesheetClones.delete(clone)));\n return disposables;\n}\nconst sharedMutationObserver = new class {\n constructor() {\n this.mutationObservers = new Map();\n }\n observe(target, disposables, options) {\n let mutationObserversPerTarget = this.mutationObservers.get(target);\n if (!mutationObserversPerTarget) {\n mutationObserversPerTarget = new Map();\n this.mutationObservers.set(target, mutationObserversPerTarget);\n }\n const optionsHash = (0,_common_hash_js__WEBPACK_IMPORTED_MODULE_11__.hash)(options);\n let mutationObserverPerOptions = mutationObserversPerTarget.get(optionsHash);\n if (!mutationObserverPerOptions) {\n const onDidMutate = new _common_event_js__WEBPACK_IMPORTED_MODULE_6__.Emitter();\n const observer = new MutationObserver(mutations => onDidMutate.fire(mutations));\n observer.observe(target, options);\n const resolvedMutationObserverPerOptions = mutationObserverPerOptions = {\n users: 1,\n observer,\n onDidMutate: onDidMutate.event\n };\n disposables.add((0,_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_8__.toDisposable)(() => {\n resolvedMutationObserverPerOptions.users -= 1;\n if (resolvedMutationObserverPerOptions.users === 0) {\n onDidMutate.dispose();\n observer.disconnect();\n mutationObserversPerTarget === null || mutationObserversPerTarget === void 0 ? void 0 : mutationObserversPerTarget.delete(optionsHash);\n if ((mutationObserversPerTarget === null || mutationObserversPerTarget === void 0 ? void 0 : mutationObserversPerTarget.size) === 0) {\n this.mutationObservers.delete(target);\n }\n }\n }));\n mutationObserversPerTarget.set(optionsHash, mutationObserverPerOptions);\n }\n else {\n mutationObserverPerOptions.users += 1;\n }\n return mutationObserverPerOptions.onDidMutate;\n }\n};\nlet _sharedStyleSheet = null;\nfunction getSharedStyleSheet() {\n if (!_sharedStyleSheet) {\n _sharedStyleSheet = createStyleSheet();\n }\n return _sharedStyleSheet;\n}\nfunction getDynamicStyleSheetRules(style) {\n var _a, _b;\n if ((_a = style === null || style === void 0 ? void 0 : style.sheet) === null || _a === void 0 ? void 0 : _a.rules) {\n // Chrome, IE\n return style.sheet.rules;\n }\n if ((_b = style === null || style === void 0 ? void 0 : style.sheet) === null || _b === void 0 ? void 0 : _b.cssRules) {\n // FF\n return style.sheet.cssRules;\n }\n return [];\n}\nfunction createCSSRule(selector, cssText, style = getSharedStyleSheet()) {\n var _a, _b;\n if (!style || !cssText) {\n return;\n }\n (_a = style.sheet) === null || _a === void 0 ? void 0 : _a.insertRule(`${selector} {${cssText}}`, 0);\n // Apply rule also to all cloned global stylesheets\n for (const clonedGlobalStylesheet of (_b = globalStylesheets.get(style)) !== null && _b !== void 0 ? _b : []) {\n createCSSRule(selector, cssText, clonedGlobalStylesheet);\n }\n}\nfunction removeCSSRulesContainingSelector(ruleName, style = getSharedStyleSheet()) {\n var _a, _b;\n if (!style) {\n return;\n }\n const rules = getDynamicStyleSheetRules(style);\n const toDelete = [];\n for (let i = 0; i < rules.length; i++) {\n const rule = rules[i];\n if (isCSSStyleRule(rule) && rule.selectorText.indexOf(ruleName) !== -1) {\n toDelete.push(i);\n }\n }\n for (let i = toDelete.length - 1; i >= 0; i--) {\n (_a = style.sheet) === null || _a === void 0 ? void 0 : _a.deleteRule(toDelete[i]);\n }\n // Remove rules also from all cloned global stylesheets\n for (const clonedGlobalStylesheet of (_b = globalStylesheets.get(style)) !== null && _b !== void 0 ? _b : []) {\n removeCSSRulesContainingSelector(ruleName, clonedGlobalStylesheet);\n }\n}\nfunction isCSSStyleRule(rule) {\n return typeof rule.selectorText === 'string';\n}\nfunction isMouseEvent(e) {\n // eslint-disable-next-line no-restricted-syntax\n return e instanceof MouseEvent || e instanceof getWindow(e).MouseEvent;\n}\nfunction isKeyboardEvent(e) {\n // eslint-disable-next-line no-restricted-syntax\n return e instanceof KeyboardEvent || e instanceof getWindow(e).KeyboardEvent;\n}\nconst EventType = {\n // Mouse\n CLICK: 'click',\n AUXCLICK: 'auxclick',\n DBLCLICK: 'dblclick',\n MOUSE_UP: 'mouseup',\n MOUSE_DOWN: 'mousedown',\n MOUSE_OVER: 'mouseover',\n MOUSE_MOVE: 'mousemove',\n MOUSE_OUT: 'mouseout',\n MOUSE_ENTER: 'mouseenter',\n MOUSE_LEAVE: 'mouseleave',\n MOUSE_WHEEL: 'wheel',\n POINTER_UP: 'pointerup',\n POINTER_DOWN: 'pointerdown',\n POINTER_MOVE: 'pointermove',\n POINTER_LEAVE: 'pointerleave',\n CONTEXT_MENU: 'contextmenu',\n WHEEL: 'wheel',\n // Keyboard\n KEY_DOWN: 'keydown',\n KEY_PRESS: 'keypress',\n KEY_UP: 'keyup',\n // HTML Document\n LOAD: 'load',\n BEFORE_UNLOAD: 'beforeunload',\n UNLOAD: 'unload',\n PAGE_SHOW: 'pageshow',\n PAGE_HIDE: 'pagehide',\n PASTE: 'paste',\n ABORT: 'abort',\n ERROR: 'error',\n RESIZE: 'resize',\n SCROLL: 'scroll',\n FULLSCREEN_CHANGE: 'fullscreenchange',\n WK_FULLSCREEN_CHANGE: 'webkitfullscreenchange',\n // Form\n SELECT: 'select',\n CHANGE: 'change',\n SUBMIT: 'submit',\n RESET: 'reset',\n FOCUS: 'focus',\n FOCUS_IN: 'focusin',\n FOCUS_OUT: 'focusout',\n BLUR: 'blur',\n INPUT: 'input',\n // Local Storage\n STORAGE: 'storage',\n // Drag\n DRAG_START: 'dragstart',\n DRAG: 'drag',\n DRAG_ENTER: 'dragenter',\n DRAG_LEAVE: 'dragleave',\n DRAG_OVER: 'dragover',\n DROP: 'drop',\n DRAG_END: 'dragend',\n // Animation\n ANIMATION_START: _browser_js__WEBPACK_IMPORTED_MODULE_0__.isWebKit ? 'webkitAnimationStart' : 'animationstart',\n ANIMATION_END: _browser_js__WEBPACK_IMPORTED_MODULE_0__.isWebKit ? 'webkitAnimationEnd' : 'animationend',\n ANIMATION_ITERATION: _browser_js__WEBPACK_IMPORTED_MODULE_0__.isWebKit ? 'webkitAnimationIteration' : 'animationiteration'\n};\nfunction isEventLike(obj) {\n const candidate = obj;\n return !!(candidate && typeof candidate.preventDefault === 'function' && typeof candidate.stopPropagation === 'function');\n}\nconst EventHelper = {\n stop: (e, cancelBubble) => {\n e.preventDefault();\n if (cancelBubble) {\n e.stopPropagation();\n }\n return e;\n }\n};\nfunction saveParentsScrollTop(node) {\n const r = [];\n for (let i = 0; node && node.nodeType === node.ELEMENT_NODE; i++) {\n r[i] = node.scrollTop;\n node = node.parentNode;\n }\n return r;\n}\nfunction restoreParentsScrollTop(node, state) {\n for (let i = 0; node && node.nodeType === node.ELEMENT_NODE; i++) {\n if (node.scrollTop !== state[i]) {\n node.scrollTop = state[i];\n }\n node = node.parentNode;\n }\n}\nclass FocusTracker extends _common_lifecycle_js__WEBPACK_IMPORTED_MODULE_8__.Disposable {\n static hasFocusWithin(element) {\n if (element instanceof HTMLElement) {\n const shadowRoot = getShadowRoot(element);\n const activeElement = (shadowRoot ? shadowRoot.activeElement : element.ownerDocument.activeElement);\n return isAncestor(activeElement, element);\n }\n else {\n const window = element;\n return isAncestor(window.document.activeElement, window.document);\n }\n }\n constructor(element) {\n super();\n this._onDidFocus = this._register(new _common_event_js__WEBPACK_IMPORTED_MODULE_6__.Emitter());\n this.onDidFocus = this._onDidFocus.event;\n this._onDidBlur = this._register(new _common_event_js__WEBPACK_IMPORTED_MODULE_6__.Emitter());\n this.onDidBlur = this._onDidBlur.event;\n let hasFocus = FocusTracker.hasFocusWithin(element);\n let loosingFocus = false;\n const onFocus = () => {\n loosingFocus = false;\n if (!hasFocus) {\n hasFocus = true;\n this._onDidFocus.fire();\n }\n };\n const onBlur = () => {\n if (hasFocus) {\n loosingFocus = true;\n (element instanceof HTMLElement ? getWindow(element) : element).setTimeout(() => {\n if (loosingFocus) {\n loosingFocus = false;\n hasFocus = false;\n this._onDidBlur.fire();\n }\n }, 0);\n }\n };\n this._refreshStateHandler = () => {\n const currentNodeHasFocus = FocusTracker.hasFocusWithin(element);\n if (currentNodeHasFocus !== hasFocus) {\n if (hasFocus) {\n onBlur();\n }\n else {\n onFocus();\n }\n }\n };\n this._register(addDisposableListener(element, EventType.FOCUS, onFocus, true));\n this._register(addDisposableListener(element, EventType.BLUR, onBlur, true));\n if (element instanceof HTMLElement) {\n this._register(addDisposableListener(element, EventType.FOCUS_IN, () => this._refreshStateHandler()));\n this._register(addDisposableListener(element, EventType.FOCUS_OUT, () => this._refreshStateHandler()));\n }\n }\n}\n/**\n * Creates a new `IFocusTracker` instance that tracks focus changes on the given `element` and its descendants.\n *\n * @param element The `HTMLElement` or `Window` to track focus changes on.\n * @returns An `IFocusTracker` instance.\n */\nfunction trackFocus(element) {\n return new FocusTracker(element);\n}\nfunction after(sibling, child) {\n sibling.after(child);\n return child;\n}\nfunction append(parent, ...children) {\n parent.append(...children);\n if (children.length === 1 && typeof children[0] !== 'string') {\n return children[0];\n }\n}\nfunction prepend(parent, child) {\n parent.insertBefore(child, parent.firstChild);\n return child;\n}\n/**\n * Removes all children from `parent` and appends `children`\n */\nfunction reset(parent, ...children) {\n parent.innerText = '';\n append(parent, ...children);\n}\nconst SELECTOR_REGEX = /([\\w\\-]+)?(#([\\w\\-]+))?((\\.([\\w\\-]+))*)/;\nvar Namespace;\n(function (Namespace) {\n Namespace[\"HTML\"] = \"http://www.w3.org/1999/xhtml\";\n Namespace[\"SVG\"] = \"http://www.w3.org/2000/svg\";\n})(Namespace || (Namespace = {}));\nfunction _$(namespace, description, attrs, ...children) {\n const match = SELECTOR_REGEX.exec(description);\n if (!match) {\n throw new Error('Bad use of emmet');\n }\n const tagName = match[1] || 'div';\n let result;\n if (namespace !== Namespace.HTML) {\n result = document.createElementNS(namespace, tagName);\n }\n else {\n result = document.createElement(tagName);\n }\n if (match[3]) {\n result.id = match[3];\n }\n if (match[4]) {\n result.className = match[4].replace(/\\./g, ' ').trim();\n }\n if (attrs) {\n Object.entries(attrs).forEach(([name, value]) => {\n if (typeof value === 'undefined') {\n return;\n }\n if (/^on\\w+$/.test(name)) {\n result[name] = value;\n }\n else if (name === 'selected') {\n if (value) {\n result.setAttribute(name, 'true');\n }\n }\n else {\n result.setAttribute(name, value);\n }\n });\n }\n result.append(...children);\n return result;\n}\nfunction $(description, attrs, ...children) {\n return _$(Namespace.HTML, description, attrs, ...children);\n}\n$.SVG = function (description, attrs, ...children) {\n return _$(Namespace.SVG, description, attrs, ...children);\n};\nfunction setVisibility(visible, ...elements) {\n if (visible) {\n show(...elements);\n }\n else {\n hide(...elements);\n }\n}\nfunction show(...elements) {\n for (const element of elements) {\n element.style.display = '';\n element.removeAttribute('aria-hidden');\n }\n}\nfunction hide(...elements) {\n for (const element of elements) {\n element.style.display = 'none';\n element.setAttribute('aria-hidden', 'true');\n }\n}\n/**\n * Find a value usable for a dom node size such that the likelihood that it would be\n * displayed with constant screen pixels size is as high as possible.\n *\n * e.g. We would desire for the cursors to be 2px (CSS px) wide. Under a devicePixelRatio\n * of 1.25, the cursor will be 2.5 screen pixels wide. Depending on how the dom node aligns/\"snaps\"\n * with the screen pixels, it will sometimes be rendered with 2 screen pixels, and sometimes with 3 screen pixels.\n */\nfunction computeScreenAwareSize(window, cssPx) {\n const screenPx = window.devicePixelRatio * cssPx;\n return Math.max(1, Math.floor(screenPx)) / window.devicePixelRatio;\n}\n/**\n * Open safely a new window. This is the best way to do so, but you cannot tell\n * if the window was opened or if it was blocked by the browser's popup blocker.\n * If you want to tell if the browser blocked the new window, use {@link windowOpenWithSuccess}.\n *\n * See https://github.com/microsoft/monaco-editor/issues/601\n * To protect against malicious code in the linked site, particularly phishing attempts,\n * the window.opener should be set to null to prevent the linked site from having access\n * to change the location of the current page.\n * See https://mathiasbynens.github.io/rel-noopener/\n */\nfunction windowOpenNoOpener(url) {\n // By using 'noopener' in the `windowFeatures` argument, the newly created window will\n // not be able to use `window.opener` to reach back to the current page.\n // See https://stackoverflow.com/a/46958731\n // See https://developer.mozilla.org/en-US/docs/Web/API/Window/open#noopener\n // However, this also doesn't allow us to realize if the browser blocked\n // the creation of the window.\n _window_js__WEBPACK_IMPORTED_MODULE_12__.mainWindow.open(url, '_blank', 'noopener');\n}\nfunction animate(targetWindow, fn) {\n const step = () => {\n fn();\n stepDisposable = scheduleAtNextAnimationFrame(targetWindow, step);\n };\n let stepDisposable = scheduleAtNextAnimationFrame(targetWindow, step);\n return (0,_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_8__.toDisposable)(() => stepDisposable.dispose());\n}\n_common_network_js__WEBPACK_IMPORTED_MODULE_9__.RemoteAuthorities.setPreferredWebSchema(/^https:/.test(_window_js__WEBPACK_IMPORTED_MODULE_12__.mainWindow.location.href) ? 'https' : 'http');\n/**\n * returns url('...')\n */\nfunction asCSSUrl(uri) {\n if (!uri) {\n return `url('')`;\n }\n return `url('${_common_network_js__WEBPACK_IMPORTED_MODULE_9__.FileAccess.uriToBrowserUri(uri).toString(true).replace(/'/g, '%27')}')`;\n}\nfunction asCSSPropertyValue(value) {\n return `'${value.replace(/'/g, '%27')}'`;\n}\nfunction asCssValueWithDefault(cssPropertyValue, dflt) {\n if (cssPropertyValue !== undefined) {\n const variableMatch = cssPropertyValue.match(/^\\s*var\\((.+)\\)$/);\n if (variableMatch) {\n const varArguments = variableMatch[1].split(',', 2);\n if (varArguments.length === 2) {\n dflt = asCssValueWithDefault(varArguments[1].trim(), dflt);\n }\n return `var(${varArguments[0]}, ${dflt})`;\n }\n return cssPropertyValue;\n }\n return dflt;\n}\n// -- sanitize and trusted html\n/**\n * Hooks dompurify using `afterSanitizeAttributes` to check that all `href` and `src`\n * attributes are valid.\n */\nfunction hookDomPurifyHrefAndSrcSanitizer(allowedProtocols, allowDataImages = false) {\n // https://github.com/cure53/DOMPurify/blob/main/demos/hooks-scheme-allowlist.html\n // build an anchor to map URLs to\n const anchor = document.createElement('a');\n _dompurify_dompurify_js__WEBPACK_IMPORTED_MODULE_7__.addHook('afterSanitizeAttributes', (node) => {\n // check all href/src attributes for validity\n for (const attr of ['href', 'src']) {\n if (node.hasAttribute(attr)) {\n const attrValue = node.getAttribute(attr);\n if (attr === 'href' && attrValue.startsWith('#')) {\n // Allow fragment links\n continue;\n }\n anchor.href = attrValue;\n if (!allowedProtocols.includes(anchor.protocol.replace(/:$/, ''))) {\n if (allowDataImages && attr === 'src' && anchor.href.startsWith('data:')) {\n continue;\n }\n node.removeAttribute(attr);\n }\n }\n }\n });\n return (0,_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_8__.toDisposable)(() => {\n _dompurify_dompurify_js__WEBPACK_IMPORTED_MODULE_7__.removeHook('afterSanitizeAttributes');\n });\n}\n/**\n * List of safe, non-input html tags.\n */\nconst basicMarkupHtmlTags = Object.freeze([\n 'a',\n 'abbr',\n 'b',\n 'bdo',\n 'blockquote',\n 'br',\n 'caption',\n 'cite',\n 'code',\n 'col',\n 'colgroup',\n 'dd',\n 'del',\n 'details',\n 'dfn',\n 'div',\n 'dl',\n 'dt',\n 'em',\n 'figcaption',\n 'figure',\n 'h1',\n 'h2',\n 'h3',\n 'h4',\n 'h5',\n 'h6',\n 'hr',\n 'i',\n 'img',\n 'input',\n 'ins',\n 'kbd',\n 'label',\n 'li',\n 'mark',\n 'ol',\n 'p',\n 'pre',\n 'q',\n 'rp',\n 'rt',\n 'ruby',\n 'samp',\n 'small',\n 'small',\n 'source',\n 'span',\n 'strike',\n 'strong',\n 'sub',\n 'summary',\n 'sup',\n 'table',\n 'tbody',\n 'td',\n 'tfoot',\n 'th',\n 'thead',\n 'time',\n 'tr',\n 'tt',\n 'u',\n 'ul',\n 'var',\n 'video',\n 'wbr',\n]);\nconst defaultDomPurifyConfig = Object.freeze({\n ALLOWED_TAGS: ['a', 'button', 'blockquote', 'code', 'div', 'h1', 'h2', 'h3', 'h4', 'h5', 'h6', 'hr', 'input', 'label', 'li', 'p', 'pre', 'select', 'small', 'span', 'strong', 'textarea', 'ul', 'ol'],\n ALLOWED_ATTR: ['href', 'data-href', 'data-command', 'target', 'title', 'name', 'src', 'alt', 'class', 'id', 'role', 'tabindex', 'style', 'data-code', 'width', 'height', 'align', 'x-dispatch', 'required', 'checked', 'placeholder', 'type', 'start'],\n RETURN_DOM: false,\n RETURN_DOM_FRAGMENT: false,\n RETURN_TRUSTED_TYPE: true\n});\nclass ModifierKeyEmitter extends _common_event_js__WEBPACK_IMPORTED_MODULE_6__.Emitter {\n constructor() {\n super();\n this._subscriptions = new _common_lifecycle_js__WEBPACK_IMPORTED_MODULE_8__.DisposableStore();\n this._keyStatus = {\n altKey: false,\n shiftKey: false,\n ctrlKey: false,\n metaKey: false\n };\n this._subscriptions.add(_common_event_js__WEBPACK_IMPORTED_MODULE_6__.Event.runAndSubscribe(onDidRegisterWindow, ({ window, disposables }) => this.registerListeners(window, disposables), { window: _window_js__WEBPACK_IMPORTED_MODULE_12__.mainWindow, disposables: this._subscriptions }));\n }\n registerListeners(window, disposables) {\n disposables.add(addDisposableListener(window, 'keydown', e => {\n if (e.defaultPrevented) {\n return;\n }\n const event = new _keyboardEvent_js__WEBPACK_IMPORTED_MODULE_2__.StandardKeyboardEvent(e);\n // If Alt-key keydown event is repeated, ignore it #112347\n // Only known to be necessary for Alt-Key at the moment #115810\n if (event.keyCode === 6 /* KeyCode.Alt */ && e.repeat) {\n return;\n }\n if (e.altKey && !this._keyStatus.altKey) {\n this._keyStatus.lastKeyPressed = 'alt';\n }\n else if (e.ctrlKey && !this._keyStatus.ctrlKey) {\n this._keyStatus.lastKeyPressed = 'ctrl';\n }\n else if (e.metaKey && !this._keyStatus.metaKey) {\n this._keyStatus.lastKeyPressed = 'meta';\n }\n else if (e.shiftKey && !this._keyStatus.shiftKey) {\n this._keyStatus.lastKeyPressed = 'shift';\n }\n else if (event.keyCode !== 6 /* KeyCode.Alt */) {\n this._keyStatus.lastKeyPressed = undefined;\n }\n else {\n return;\n }\n this._keyStatus.altKey = e.altKey;\n this._keyStatus.ctrlKey = e.ctrlKey;\n this._keyStatus.metaKey = e.metaKey;\n this._keyStatus.shiftKey = e.shiftKey;\n if (this._keyStatus.lastKeyPressed) {\n this._keyStatus.event = e;\n this.fire(this._keyStatus);\n }\n }, true));\n disposables.add(addDisposableListener(window, 'keyup', e => {\n if (e.defaultPrevented) {\n return;\n }\n if (!e.altKey && this._keyStatus.altKey) {\n this._keyStatus.lastKeyReleased = 'alt';\n }\n else if (!e.ctrlKey && this._keyStatus.ctrlKey) {\n this._keyStatus.lastKeyReleased = 'ctrl';\n }\n else if (!e.metaKey && this._keyStatus.metaKey) {\n this._keyStatus.lastKeyReleased = 'meta';\n }\n else if (!e.shiftKey && this._keyStatus.shiftKey) {\n this._keyStatus.lastKeyReleased = 'shift';\n }\n else {\n this._keyStatus.lastKeyReleased = undefined;\n }\n if (this._keyStatus.lastKeyPressed !== this._keyStatus.lastKeyReleased) {\n this._keyStatus.lastKeyPressed = undefined;\n }\n this._keyStatus.altKey = e.altKey;\n this._keyStatus.ctrlKey = e.ctrlKey;\n this._keyStatus.metaKey = e.metaKey;\n this._keyStatus.shiftKey = e.shiftKey;\n if (this._keyStatus.lastKeyReleased) {\n this._keyStatus.event = e;\n this.fire(this._keyStatus);\n }\n }, true));\n disposables.add(addDisposableListener(window.document.body, 'mousedown', () => {\n this._keyStatus.lastKeyPressed = undefined;\n }, true));\n disposables.add(addDisposableListener(window.document.body, 'mouseup', () => {\n this._keyStatus.lastKeyPressed = undefined;\n }, true));\n disposables.add(addDisposableListener(window.document.body, 'mousemove', e => {\n if (e.buttons) {\n this._keyStatus.lastKeyPressed = undefined;\n }\n }, true));\n disposables.add(addDisposableListener(window, 'blur', () => {\n this.resetKeyStatus();\n }));\n }\n get keyStatus() {\n return this._keyStatus;\n }\n /**\n * Allows to explicitly reset the key status based on more knowledge (#109062)\n */\n resetKeyStatus() {\n this.doResetKeyStatus();\n this.fire(this._keyStatus);\n }\n doResetKeyStatus() {\n this._keyStatus = {\n altKey: false,\n shiftKey: false,\n ctrlKey: false,\n metaKey: false\n };\n }\n static getInstance() {\n if (!ModifierKeyEmitter.instance) {\n ModifierKeyEmitter.instance = new ModifierKeyEmitter();\n }\n return ModifierKeyEmitter.instance;\n }\n dispose() {\n super.dispose();\n this._subscriptions.dispose();\n }\n}\nclass DragAndDropObserver extends _common_lifecycle_js__WEBPACK_IMPORTED_MODULE_8__.Disposable {\n constructor(element, callbacks) {\n super();\n this.element = element;\n this.callbacks = callbacks;\n // A helper to fix issues with repeated DRAG_ENTER / DRAG_LEAVE\n // calls see https://github.com/microsoft/vscode/issues/14470\n // when the element has child elements where the events are fired\n // repeadedly.\n this.counter = 0;\n // Allows to measure the duration of the drag operation.\n this.dragStartTime = 0;\n this.registerListeners();\n }\n registerListeners() {\n if (this.callbacks.onDragStart) {\n this._register(addDisposableListener(this.element, EventType.DRAG_START, (e) => {\n var _a, _b;\n (_b = (_a = this.callbacks).onDragStart) === null || _b === void 0 ? void 0 : _b.call(_a, e);\n }));\n }\n if (this.callbacks.onDrag) {\n this._register(addDisposableListener(this.element, EventType.DRAG, (e) => {\n var _a, _b;\n (_b = (_a = this.callbacks).onDrag) === null || _b === void 0 ? void 0 : _b.call(_a, e);\n }));\n }\n this._register(addDisposableListener(this.element, EventType.DRAG_ENTER, (e) => {\n var _a, _b;\n this.counter++;\n this.dragStartTime = e.timeStamp;\n (_b = (_a = this.callbacks).onDragEnter) === null || _b === void 0 ? void 0 : _b.call(_a, e);\n }));\n this._register(addDisposableListener(this.element, EventType.DRAG_OVER, (e) => {\n var _a, _b;\n e.preventDefault(); // needed so that the drop event fires (https://stackoverflow.com/questions/21339924/drop-event-not-firing-in-chrome)\n (_b = (_a = this.callbacks).onDragOver) === null || _b === void 0 ? void 0 : _b.call(_a, e, e.timeStamp - this.dragStartTime);\n }));\n this._register(addDisposableListener(this.element, EventType.DRAG_LEAVE, (e) => {\n var _a, _b;\n this.counter--;\n if (this.counter === 0) {\n this.dragStartTime = 0;\n (_b = (_a = this.callbacks).onDragLeave) === null || _b === void 0 ? void 0 : _b.call(_a, e);\n }\n }));\n this._register(addDisposableListener(this.element, EventType.DRAG_END, (e) => {\n var _a, _b;\n this.counter = 0;\n this.dragStartTime = 0;\n (_b = (_a = this.callbacks).onDragEnd) === null || _b === void 0 ? void 0 : _b.call(_a, e);\n }));\n this._register(addDisposableListener(this.element, EventType.DROP, (e) => {\n var _a, _b;\n this.counter = 0;\n this.dragStartTime = 0;\n (_b = (_a = this.callbacks).onDrop) === null || _b === void 0 ? void 0 : _b.call(_a, e);\n }));\n }\n}\nconst H_REGEX = /(?[\\w\\-]+)?(?:#(?[\\w\\-]+))?(?(?:\\.(?:[\\w\\-]+))*)(?:@(?(?:[\\w\\_])+))?/;\nfunction h(tag, ...args) {\n let attributes;\n let children;\n if (Array.isArray(args[0])) {\n attributes = {};\n children = args[0];\n }\n else {\n attributes = args[0] || {};\n children = args[1];\n }\n const match = H_REGEX.exec(tag);\n if (!match || !match.groups) {\n throw new Error('Bad use of h');\n }\n const tagName = match.groups['tag'] || 'div';\n const el = document.createElement(tagName);\n if (match.groups['id']) {\n el.id = match.groups['id'];\n }\n const classNames = [];\n if (match.groups['class']) {\n for (const className of match.groups['class'].split('.')) {\n if (className !== '') {\n classNames.push(className);\n }\n }\n }\n if (attributes.className !== undefined) {\n for (const className of attributes.className.split('.')) {\n if (className !== '') {\n classNames.push(className);\n }\n }\n }\n if (classNames.length > 0) {\n el.className = classNames.join(' ');\n }\n const result = {};\n if (match.groups['name']) {\n result[match.groups['name']] = el;\n }\n if (children) {\n for (const c of children) {\n if (c instanceof HTMLElement) {\n el.appendChild(c);\n }\n else if (typeof c === 'string') {\n el.append(c);\n }\n else if ('root' in c) {\n Object.assign(result, c);\n el.appendChild(c.root);\n }\n }\n }\n for (const [key, value] of Object.entries(attributes)) {\n if (key === 'className') {\n continue;\n }\n else if (key === 'style') {\n for (const [cssKey, cssValue] of Object.entries(value)) {\n el.style.setProperty(camelCaseToHyphenCase(cssKey), typeof cssValue === 'number' ? cssValue + 'px' : '' + cssValue);\n }\n }\n else if (key === 'tabIndex') {\n el.tabIndex = value;\n }\n else {\n el.setAttribute(camelCaseToHyphenCase(key), value.toString());\n }\n }\n result['root'] = el;\n return result;\n}\nfunction camelCaseToHyphenCase(str) {\n return str.replace(/([a-z])([A-Z])/g, '$1-$2').toLowerCase();\n}\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/base/browser/dom.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/base/browser/dompurify/dompurify.js":
/*!*******************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/base/browser/dompurify/dompurify.js ***!
\*******************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ addHook: () => (/* binding */ addHook),\n/* harmony export */ clearConfig: () => (/* binding */ clearConfig),\n/* harmony export */ \"default\": () => (__WEBPACK_DEFAULT_EXPORT__),\n/* harmony export */ isSupported: () => (/* binding */ isSupported),\n/* harmony export */ isValidAttribute: () => (/* binding */ isValidAttribute),\n/* harmony export */ removeAllHooks: () => (/* binding */ removeAllHooks),\n/* harmony export */ removeHook: () => (/* binding */ removeHook),\n/* harmony export */ removeHooks: () => (/* binding */ removeHooks),\n/* harmony export */ sanitize: () => (/* binding */ sanitize),\n/* harmony export */ setConfig: () => (/* binding */ setConfig),\n/* harmony export */ version: () => (/* binding */ version)\n/* harmony export */ });\n/*! @license DOMPurify 3.0.5 | (c) Cure53 and other contributors | Released under the Apache license 2.0 and Mozilla Public License 2.0 | github.com/cure53/DOMPurify/blob/3.0.5/LICENSE */\n\nconst {\n\tentries,\n\tsetPrototypeOf,\n\tisFrozen,\n\tgetPrototypeOf,\n\tgetOwnPropertyDescriptor\n} = Object;\nlet {\n\tfreeze,\n\tseal,\n\tcreate\n} = Object; // eslint-disable-line import/no-mutable-exports\n\nlet {\n\tapply,\n\tconstruct\n} = typeof Reflect !== 'undefined' && Reflect;\n\nif (!apply) {\n\tapply = function apply(fun, thisValue, args) {\n\t\treturn fun.apply(thisValue, args);\n\t};\n}\n\nif (!freeze) {\n\tfreeze = function freeze(x) {\n\t\treturn x;\n\t};\n}\n\nif (!seal) {\n\tseal = function seal(x) {\n\t\treturn x;\n\t};\n}\n\nif (!construct) {\n\tconstruct = function construct(Func, args) {\n\t\treturn new Func(...args);\n\t};\n}\n\nconst arrayForEach = unapply(Array.prototype.forEach);\nconst arrayPop = unapply(Array.prototype.pop);\nconst arrayPush = unapply(Array.prototype.push);\nconst stringToLowerCase = unapply(String.prototype.toLowerCase);\nconst stringToString = unapply(String.prototype.toString);\nconst stringMatch = unapply(String.prototype.match);\nconst stringReplace = unapply(String.prototype.replace);\nconst stringIndexOf = unapply(String.prototype.indexOf);\nconst stringTrim = unapply(String.prototype.trim);\nconst regExpTest = unapply(RegExp.prototype.test);\nconst typeErrorCreate = unconstruct(TypeError);\nfunction unapply(func) {\n\treturn function (thisArg) {\n\t\tfor (var _len = arguments.length, args = new Array(_len > 1 ? _len - 1 : 0), _key = 1; _key < _len; _key++) {\n\t\t\targs[_key - 1] = arguments[_key];\n\t\t}\n\n\t\treturn apply(func, thisArg, args);\n\t};\n}\nfunction unconstruct(func) {\n\treturn function () {\n\t\tfor (var _len2 = arguments.length, args = new Array(_len2), _key2 = 0; _key2 < _len2; _key2++) {\n\t\t\targs[_key2] = arguments[_key2];\n\t\t}\n\n\t\treturn construct(func, args);\n\t};\n}\n/* Add properties to a lookup table */\n\nfunction addToSet(set, array, transformCaseFunc) {\n\tvar _transformCaseFunc;\n\n\ttransformCaseFunc = (_transformCaseFunc = transformCaseFunc) !== null && _transformCaseFunc !== void 0 ? _transformCaseFunc : stringToLowerCase;\n\n\tif (setPrototypeOf) {\n\t\t// Make 'in' and truthy checks like Boolean(set.constructor)\n\t\t// independent of any properties defined on Object.prototype.\n\t\t// Prevent prototype setters from intercepting set as a this value.\n\t\tsetPrototypeOf(set, null);\n\t}\n\n\tlet l = array.length;\n\n\twhile (l--) {\n\t\tlet element = array[l];\n\n\t\tif (typeof element === 'string') {\n\t\t\tconst lcElement = transformCaseFunc(element);\n\n\t\t\tif (lcElement !== element) {\n\t\t\t\t// Config presets (e.g. tags.js, attrs.js) are immutable.\n\t\t\t\tif (!isFrozen(array)) {\n\t\t\t\t\tarray[l] = lcElement;\n\t\t\t\t}\n\n\t\t\t\telement = lcElement;\n\t\t\t}\n\t\t}\n\n\t\tset[element] = true;\n\t}\n\n\treturn set;\n}\n/* Shallow clone an object */\n\nfunction clone(object) {\n\tconst newObject = create(null);\n\n\tfor (const [property, value] of entries(object)) {\n\t\tnewObject[property] = value;\n\t}\n\n\treturn newObject;\n}\n/* This method automatically checks if the prop is function\n * or getter and behaves accordingly. */\n\nfunction lookupGetter(object, prop) {\n\twhile (object !== null) {\n\t\tconst desc = getOwnPropertyDescriptor(object, prop);\n\n\t\tif (desc) {\n\t\t\tif (desc.get) {\n\t\t\t\treturn unapply(desc.get);\n\t\t\t}\n\n\t\t\tif (typeof desc.value === 'function') {\n\t\t\t\treturn unapply(desc.value);\n\t\t\t}\n\t\t}\n\n\t\tobject = getPrototypeOf(object);\n\t}\n\n\tfunction fallbackValue(element) {\n\t\tconsole.warn('fallback value for', element);\n\t\treturn null;\n\t}\n\n\treturn fallbackValue;\n}\n\nconst html$1 = freeze(['a', 'abbr', 'acronym', 'address', 'area', 'article', 'aside', 'audio', 'b', 'bdi', 'bdo', 'big', 'blink', 'blockquote', 'body', 'br', 'button', 'canvas', 'caption', 'center', 'cite', 'code', 'col', 'colgroup', 'content', 'data', 'datalist', 'dd', 'decorator', 'del', 'details', 'dfn', 'dialog', 'dir', 'div', 'dl', 'dt', 'element', 'em', 'fieldset', 'figcaption', 'figure', 'font', 'footer', 'form', 'h1', 'h2', 'h3', 'h4', 'h5', 'h6', 'head', 'header', 'hgroup', 'hr', 'html', 'i', 'img', 'input', 'ins', 'kbd', 'label', 'legend', 'li', 'main', 'map', 'mark', 'marquee', 'menu', 'menuitem', 'meter', 'nav', 'nobr', 'ol', 'optgroup', 'option', 'output', 'p', 'picture', 'pre', 'progress', 'q', 'rp', 'rt', 'ruby', 's', 'samp', 'section', 'select', 'shadow', 'small', 'source', 'spacer', 'span', 'strike', 'strong', 'style', 'sub', 'summary', 'sup', 'table', 'tbody', 'td', 'template', 'textarea', 'tfoot', 'th', 'thead', 'time', 'tr', 'track', 'tt', 'u', 'ul', 'var', 'video', 'wbr']); // SVG\n\nconst svg$1 = freeze(['svg', 'a', 'altglyph', 'altglyphdef', 'altglyphitem', 'animatecolor', 'animatemotion', 'animatetransform', 'circle', 'clippath', 'defs', 'desc', 'ellipse', 'filter', 'font', 'g', 'glyph', 'glyphref', 'hkern', 'image', 'line', 'lineargradient', 'marker', 'mask', 'metadata', 'mpath', 'path', 'pattern', 'polygon', 'polyline', 'radialgradient', 'rect', 'stop', 'style', 'switch', 'symbol', 'text', 'textpath', 'title', 'tref', 'tspan', 'view', 'vkern']);\nconst svgFilters = freeze(['feBlend', 'feColorMatrix', 'feComponentTransfer', 'feComposite', 'feConvolveMatrix', 'feDiffuseLighting', 'feDisplacementMap', 'feDistantLight', 'feDropShadow', 'feFlood', 'feFuncA', 'feFuncB', 'feFuncG', 'feFuncR', 'feGaussianBlur', 'feImage', 'feMerge', 'feMergeNode', 'feMorphology', 'feOffset', 'fePointLight', 'feSpecularLighting', 'feSpotLight', 'feTile', 'feTurbulence']); // List of SVG elements that are disallowed by default.\n// We still need to know them so that we can do namespace\n// checks properly in case one wants to add them to\n// allow-list.\n\nconst svgDisallowed = freeze(['animate', 'color-profile', 'cursor', 'discard', 'font-face', 'font-face-format', 'font-face-name', 'font-face-src', 'font-face-uri', 'foreignobject', 'hatch', 'hatchpath', 'mesh', 'meshgradient', 'meshpatch', 'meshrow', 'missing-glyph', 'script', 'set', 'solidcolor', 'unknown', 'use']);\nconst mathMl$1 = freeze(['math', 'menclose', 'merror', 'mfenced', 'mfrac', 'mglyph', 'mi', 'mlabeledtr', 'mmultiscripts', 'mn', 'mo', 'mover', 'mpadded', 'mphantom', 'mroot', 'mrow', 'ms', 'mspace', 'msqrt', 'mstyle', 'msub', 'msup', 'msubsup', 'mtable', 'mtd', 'mtext', 'mtr', 'munder', 'munderover', 'mprescripts']); // Similarly to SVG, we want to know all MathML elements,\n// even those that we disallow by default.\n\nconst mathMlDisallowed = freeze(['maction', 'maligngroup', 'malignmark', 'mlongdiv', 'mscarries', 'mscarry', 'msgroup', 'mstack', 'msline', 'msrow', 'semantics', 'annotation', 'annotation-xml', 'mprescripts', 'none']);\nconst text = freeze(['#text']);\n\nconst html = freeze(['accept', 'action', 'align', 'alt', 'autocapitalize', 'autocomplete', 'autopictureinpicture', 'autoplay', 'background', 'bgcolor', 'border', 'capture', 'cellpadding', 'cellspacing', 'checked', 'cite', 'class', 'clear', 'color', 'cols', 'colspan', 'controls', 'controlslist', 'coords', 'crossorigin', 'datetime', 'decoding', 'default', 'dir', 'disabled', 'disablepictureinpicture', 'disableremoteplayback', 'download', 'draggable', 'enctype', 'enterkeyhint', 'face', 'for', 'headers', 'height', 'hidden', 'high', 'href', 'hreflang', 'id', 'inputmode', 'integrity', 'ismap', 'kind', 'label', 'lang', 'list', 'loading', 'loop', 'low', 'max', 'maxlength', 'media', 'method', 'min', 'minlength', 'multiple', 'muted', 'name', 'nonce', 'noshade', 'novalidate', 'nowrap', 'open', 'optimum', 'pattern', 'placeholder', 'playsinline', 'poster', 'preload', 'pubdate', 'radiogroup', 'readonly', 'rel', 'required', 'rev', 'reversed', 'role', 'rows', 'rowspan', 'spellcheck', 'scope', 'selected', 'shape', 'size', 'sizes', 'span', 'srclang', 'start', 'src', 'srcset', 'step', 'style', 'summary', 'tabindex', 'title', 'translate', 'type', 'usemap', 'valign', 'value', 'width', 'xmlns', 'slot']);\nconst svg = freeze(['accent-height', 'accumulate', 'additive', 'alignment-baseline', 'ascent', 'attributename', 'attributetype', 'azimuth', 'basefrequency', 'baseline-shift', 'begin', 'bias', 'by', 'class', 'clip', 'clippathunits', 'clip-path', 'clip-rule', 'color', 'color-interpolation', 'color-interpolation-filters', 'color-profile', 'color-rendering', 'cx', 'cy', 'd', 'dx', 'dy', 'diffuseconstant', 'direction', 'display', 'divisor', 'dur', 'edgemode', 'elevation', 'end', 'fill', 'fill-opacity', 'fill-rule', 'filter', 'filterunits', 'flood-color', 'flood-opacity', 'font-family', 'font-size', 'font-size-adjust', 'font-stretch', 'font-style', 'font-variant', 'font-weight', 'fx', 'fy', 'g1', 'g2', 'glyph-name', 'glyphref', 'gradientunits', 'gradienttransform', 'height', 'href', 'id', 'image-rendering', 'in', 'in2', 'k', 'k1', 'k2', 'k3', 'k4', 'kerning', 'keypoints', 'keysplines', 'keytimes', 'lang', 'lengthadjust', 'letter-spacing', 'kernelmatrix', 'kernelunitlength', 'lighting-color', 'local', 'marker-end', 'marker-mid', 'marker-start', 'markerheight', 'markerunits', 'markerwidth', 'maskcontentunits', 'maskunits', 'max', 'mask', 'media', 'method', 'mode', 'min', 'name', 'numoctaves', 'offset', 'operator', 'opacity', 'order', 'orient', 'orientation', 'origin', 'overflow', 'paint-order', 'path', 'pathlength', 'patterncontentunits', 'patterntransform', 'patternunits', 'points', 'preservealpha', 'preserveaspectratio', 'primitiveunits', 'r', 'rx', 'ry', 'radius', 'refx', 'refy', 'repeatcount', 'repeatdur', 'restart', 'result', 'rotate', 'scale', 'seed', 'shape-rendering', 'specularconstant', 'specularexponent', 'spreadmethod', 'startoffset', 'stddeviation', 'stitchtiles', 'stop-color', 'stop-opacity', 'stroke-dasharray', 'stroke-dashoffset', 'stroke-linecap', 'stroke-linejoin', 'stroke-miterlimit', 'stroke-opacity', 'stroke', 'stroke-width', 'style', 'surfacescale', 'systemlanguage', 'tabindex', 'targetx', 'targety', 'transform', 'transform-origin', 'text-anchor', 'text-decoration', 'text-rendering', 'textlength', 'type', 'u1', 'u2', 'unicode', 'values', 'viewbox', 'visibility', 'version', 'vert-adv-y', 'vert-origin-x', 'vert-origin-y', 'width', 'word-spacing', 'wrap', 'writing-mode', 'xchannelselector', 'ychannelselector', 'x', 'x1', 'x2', 'xmlns', 'y', 'y1', 'y2', 'z', 'zoomandpan']);\nconst mathMl = freeze(['accent', 'accentunder', 'align', 'bevelled', 'close', 'columnsalign', 'columnlines', 'columnspan', 'denomalign', 'depth', 'dir', 'display', 'displaystyle', 'encoding', 'fence', 'frame', 'height', 'href', 'id', 'largeop', 'length', 'linethickness', 'lspace', 'lquote', 'mathbackground', 'mathcolor', 'mathsize', 'mathvariant', 'maxsize', 'minsize', 'movablelimits', 'notation', 'numalign', 'open', 'rowalign', 'rowlines', 'rowspacing', 'rowspan', 'rspace', 'rquote', 'scriptlevel', 'scriptminsize', 'scriptsizemultiplier', 'selection', 'separator', 'separators', 'stretchy', 'subscriptshift', 'supscriptshift', 'symmetric', 'voffset', 'width', 'xmlns']);\nconst xml = freeze(['xlink:href', 'xml:id', 'xlink:title', 'xml:space', 'xmlns:xlink']);\n\nconst MUSTACHE_EXPR = seal(/\\{\\{[\\w\\W]*|[\\w\\W]*\\}\\}/gm); // Specify template detection regex for SAFE_FOR_TEMPLATES mode\n\nconst ERB_EXPR = seal(/<%[\\w\\W]*|[\\w\\W]*%>/gm);\nconst TMPLIT_EXPR = seal(/\\${[\\w\\W]*}/gm);\nconst DATA_ATTR = seal(/^data-[\\-\\w.\\u00B7-\\uFFFF]/); // eslint-disable-line no-useless-escape\n\nconst ARIA_ATTR = seal(/^aria-[\\-\\w]+$/); // eslint-disable-line no-useless-escape\n\nconst IS_ALLOWED_URI = seal(/^(?:(?:(?:f|ht)tps?|mailto|tel|callto|sms|cid|xmpp):|[^a-z]|[a-z+.\\-]+(?:[^a-z+.\\-:]|$))/i // eslint-disable-line no-useless-escape\n);\nconst IS_SCRIPT_OR_DATA = seal(/^(?:\\w+script|data):/i);\nconst ATTR_WHITESPACE = seal(/[\\u0000-\\u0020\\u00A0\\u1680\\u180E\\u2000-\\u2029\\u205F\\u3000]/g // eslint-disable-line no-control-regex\n);\nconst DOCTYPE_NAME = seal(/^html$/i);\n\nvar EXPRESSIONS = /*#__PURE__*/Object.freeze({\n\t__proto__: null,\n\tMUSTACHE_EXPR: MUSTACHE_EXPR,\n\tERB_EXPR: ERB_EXPR,\n\tTMPLIT_EXPR: TMPLIT_EXPR,\n\tDATA_ATTR: DATA_ATTR,\n\tARIA_ATTR: ARIA_ATTR,\n\tIS_ALLOWED_URI: IS_ALLOWED_URI,\n\tIS_SCRIPT_OR_DATA: IS_SCRIPT_OR_DATA,\n\tATTR_WHITESPACE: ATTR_WHITESPACE,\n\tDOCTYPE_NAME: DOCTYPE_NAME\n});\n\nconst getGlobal = () => typeof window === 'undefined' ? null : window;\n/**\n * Creates a no-op policy for internal use only.\n * Don't export this function outside this module!\n * @param {?TrustedTypePolicyFactory} trustedTypes The policy factory.\n * @param {HTMLScriptElement} purifyHostElement The Script element used to load DOMPurify (to determine policy name suffix).\n * @return {?TrustedTypePolicy} The policy created (or null, if Trusted Types\n * are not supported or creating the policy failed).\n */\n\n\nconst _createTrustedTypesPolicy = function _createTrustedTypesPolicy(trustedTypes, purifyHostElement) {\n\tif (typeof trustedTypes !== 'object' || typeof trustedTypes.createPolicy !== 'function') {\n\t\treturn null;\n\t} // Allow the callers to control the unique policy name\n\t// by adding a data-tt-policy-suffix to the script element with the DOMPurify.\n\t// Policy creation with duplicate names throws in Trusted Types.\n\n\n\tlet suffix = null;\n\tconst ATTR_NAME = 'data-tt-policy-suffix';\n\n\tif (purifyHostElement && purifyHostElement.hasAttribute(ATTR_NAME)) {\n\t\tsuffix = purifyHostElement.getAttribute(ATTR_NAME);\n\t}\n\n\tconst policyName = 'dompurify' + (suffix ? '#' + suffix : '');\n\n\ttry {\n\t\treturn trustedTypes.createPolicy(policyName, {\n\t\t\tcreateHTML(html) {\n\t\t\t\treturn html;\n\t\t\t},\n\n\t\t\tcreateScriptURL(scriptUrl) {\n\t\t\t\treturn scriptUrl;\n\t\t\t}\n\n\t\t});\n\t} catch (_) {\n\t\t// Policy creation failed (most likely another DOMPurify script has\n\t\t// already run). Skip creating the policy, as this will only cause errors\n\t\t// if TT are enforced.\n\t\tconsole.warn('TrustedTypes policy ' + policyName + ' could not be created.');\n\t\treturn null;\n\t}\n};\n\nfunction createDOMPurify() {\n\tlet window = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : getGlobal();\n\n\tconst DOMPurify = root => createDOMPurify(root);\n\t/**\n\t * Version label, exposed for easier checks\n\t * if DOMPurify is up to date or not\n\t */\n\n\n\tDOMPurify.version = '3.0.5';\n\t/**\n\t * Array of elements that DOMPurify removed during sanitation.\n\t * Empty if nothing was removed.\n\t */\n\n\tDOMPurify.removed = [];\n\n\tif (!window || !window.document || window.document.nodeType !== 9) {\n\t\t// Not running in a browser, provide a factory function\n\t\t// so that you can pass your own Window\n\t\tDOMPurify.isSupported = false;\n\t\treturn DOMPurify;\n\t}\n\n\tconst originalDocument = window.document;\n\tconst currentScript = originalDocument.currentScript;\n\tlet {\n\t\tdocument\n\t} = window;\n\tconst {\n\t\tDocumentFragment,\n\t\tHTMLTemplateElement,\n\t\tNode,\n\t\tElement,\n\t\tNodeFilter,\n\t\tNamedNodeMap = window.NamedNodeMap || window.MozNamedAttrMap,\n\t\tHTMLFormElement,\n\t\tDOMParser,\n\t\ttrustedTypes\n\t} = window;\n\tconst ElementPrototype = Element.prototype;\n\tconst cloneNode = lookupGetter(ElementPrototype, 'cloneNode');\n\tconst getNextSibling = lookupGetter(ElementPrototype, 'nextSibling');\n\tconst getChildNodes = lookupGetter(ElementPrototype, 'childNodes');\n\tconst getParentNode = lookupGetter(ElementPrototype, 'parentNode'); // As per issue #47, the web-components registry is inherited by a\n\t// new document created via createHTMLDocument. As per the spec\n\t// (http://w3c.github.io/webcomponents/spec/custom/#creating-and-passing-registries)\n\t// a new empty registry is used when creating a template contents owner\n\t// document, so we use that as our parent document to ensure nothing\n\t// is inherited.\n\n\tif (typeof HTMLTemplateElement === 'function') {\n\t\tconst template = document.createElement('template');\n\n\t\tif (template.content && template.content.ownerDocument) {\n\t\t\tdocument = template.content.ownerDocument;\n\t\t}\n\t}\n\n\tlet trustedTypesPolicy;\n\tlet emptyHTML = '';\n\tconst {\n\t\timplementation,\n\t\tcreateNodeIterator,\n\t\tcreateDocumentFragment,\n\t\tgetElementsByTagName\n\t} = document;\n\tconst {\n\t\timportNode\n\t} = originalDocument;\n\tlet hooks = {};\n\t/**\n\t * Expose whether this browser supports running the full DOMPurify.\n\t */\n\n\tDOMPurify.isSupported = typeof entries === 'function' && typeof getParentNode === 'function' && implementation && implementation.createHTMLDocument !== undefined;\n\tconst {\n\t\tMUSTACHE_EXPR,\n\t\tERB_EXPR,\n\t\tTMPLIT_EXPR,\n\t\tDATA_ATTR,\n\t\tARIA_ATTR,\n\t\tIS_SCRIPT_OR_DATA,\n\t\tATTR_WHITESPACE\n\t} = EXPRESSIONS;\n\tlet {\n\t\tIS_ALLOWED_URI: IS_ALLOWED_URI$1\n\t} = EXPRESSIONS;\n\t/**\n\t * We consider the elements and attributes below to be safe. Ideally\n\t * don't add any new ones but feel free to remove unwanted ones.\n\t */\n\n\t/* allowed element names */\n\n\tlet ALLOWED_TAGS = null;\n\tconst DEFAULT_ALLOWED_TAGS = addToSet({}, [...html$1, ...svg$1, ...svgFilters, ...mathMl$1, ...text]);\n\t/* Allowed attribute names */\n\n\tlet ALLOWED_ATTR = null;\n\tconst DEFAULT_ALLOWED_ATTR = addToSet({}, [...html, ...svg, ...mathMl, ...xml]);\n\t/*\n\t * Configure how DOMPUrify should handle custom elements and their attributes as well as customized built-in elements.\n\t * @property {RegExp|Function|null} tagNameCheck one of [null, regexPattern, predicate]. Default: `null` (disallow any custom elements)\n\t * @property {RegExp|Function|null} attributeNameCheck one of [null, regexPattern, predicate]. Default: `null` (disallow any attributes not on the allow list)\n\t * @property {boolean} allowCustomizedBuiltInElements allow custom elements derived from built-ins if they pass CUSTOM_ELEMENT_HANDLING.tagNameCheck. Default: `false`.\n\t */\n\n\tlet CUSTOM_ELEMENT_HANDLING = Object.seal(Object.create(null, {\n\t\ttagNameCheck: {\n\t\t\twritable: true,\n\t\t\tconfigurable: false,\n\t\t\tenumerable: true,\n\t\t\tvalue: null\n\t\t},\n\t\tattributeNameCheck: {\n\t\t\twritable: true,\n\t\t\tconfigurable: false,\n\t\t\tenumerable: true,\n\t\t\tvalue: null\n\t\t},\n\t\tallowCustomizedBuiltInElements: {\n\t\t\twritable: true,\n\t\t\tconfigurable: false,\n\t\t\tenumerable: true,\n\t\t\tvalue: false\n\t\t}\n\t}));\n\t/* Explicitly forbidden tags (overrides ALLOWED_TAGS/ADD_TAGS) */\n\n\tlet FORBID_TAGS = null;\n\t/* Explicitly forbidden attributes (overrides ALLOWED_ATTR/ADD_ATTR) */\n\n\tlet FORBID_ATTR = null;\n\t/* Decide if ARIA attributes are okay */\n\n\tlet ALLOW_ARIA_ATTR = true;\n\t/* Decide if custom data attributes are okay */\n\n\tlet ALLOW_DATA_ATTR = true;\n\t/* Decide if unknown protocols are okay */\n\n\tlet ALLOW_UNKNOWN_PROTOCOLS = false;\n\t/* Decide if self-closing tags in attributes are allowed.\n\t * Usually removed due to a mXSS issue in jQuery 3.0 */\n\n\tlet ALLOW_SELF_CLOSE_IN_ATTR = true;\n\t/* Output should be safe for common template engines.\n\t * This means, DOMPurify removes data attributes, mustaches and ERB\n\t */\n\n\tlet SAFE_FOR_TEMPLATES = false;\n\t/* Decide if document with ... should be returned */\n\n\tlet WHOLE_DOCUMENT = false;\n\t/* Track whether config is already set on this instance of DOMPurify. */\n\n\tlet SET_CONFIG = false;\n\t/* Decide if all elements (e.g. style, script) must be children of\n\t * document.body. By default, browsers might move them to document.head */\n\n\tlet FORCE_BODY = false;\n\t/* Decide if a DOM `HTMLBodyElement` should be returned, instead of a html\n\t * string (or a TrustedHTML object if Trusted Types are supported).\n\t * If `WHOLE_DOCUMENT` is enabled a `HTMLHtmlElement` will be returned instead\n\t */\n\n\tlet RETURN_DOM = false;\n\t/* Decide if a DOM `DocumentFragment` should be returned, instead of a html\n\t * string (or a TrustedHTML object if Trusted Types are supported) */\n\n\tlet RETURN_DOM_FRAGMENT = false;\n\t/* Try to return a Trusted Type object instead of a string, return a string in\n\t * case Trusted Types are not supported */\n\n\tlet RETURN_TRUSTED_TYPE = false;\n\t/* Output should be free from DOM clobbering attacks?\n\t * This sanitizes markups named with colliding, clobberable built-in DOM APIs.\n\t */\n\n\tlet SANITIZE_DOM = true;\n\t/* Achieve full DOM Clobbering protection by isolating the namespace of named\n\t * properties and JS variables, mitigating attacks that abuse the HTML/DOM spec rules.\n\t *\n\t * HTML/DOM spec rules that enable DOM Clobbering:\n\t * - Named Access on Window (§7.3.3)\n\t * - DOM Tree Accessors (§3.1.5)\n\t * - Form Element Parent-Child Relations (§4.10.3)\n\t * - Iframe srcdoc / Nested WindowProxies (§4.8.5)\n\t * - HTMLCollection (§4.2.10.2)\n\t *\n\t * Namespace isolation is implemented by prefixing `id` and `name` attributes\n\t * with a constant string, i.e., `user-content-`\n\t */\n\n\tlet SANITIZE_NAMED_PROPS = false;\n\tconst SANITIZE_NAMED_PROPS_PREFIX = 'user-content-';\n\t/* Keep element content when removing element? */\n\n\tlet KEEP_CONTENT = true;\n\t/* If a `Node` is passed to sanitize(), then performs sanitization in-place instead\n\t * of importing it into a new Document and returning a sanitized copy */\n\n\tlet IN_PLACE = false;\n\t/* Allow usage of profiles like html, svg and mathMl */\n\n\tlet USE_PROFILES = {};\n\t/* Tags to ignore content of when KEEP_CONTENT is true */\n\n\tlet FORBID_CONTENTS = null;\n\tconst DEFAULT_FORBID_CONTENTS = addToSet({}, ['annotation-xml', 'audio', 'colgroup', 'desc', 'foreignobject', 'head', 'iframe', 'math', 'mi', 'mn', 'mo', 'ms', 'mtext', 'noembed', 'noframes', 'noscript', 'plaintext', 'script', 'style', 'svg', 'template', 'thead', 'title', 'video', 'xmp']);\n\t/* Tags that are safe for data: URIs */\n\n\tlet DATA_URI_TAGS = null;\n\tconst DEFAULT_DATA_URI_TAGS = addToSet({}, ['audio', 'video', 'img', 'source', 'image', 'track']);\n\t/* Attributes safe for values like \"javascript:\" */\n\n\tlet URI_SAFE_ATTRIBUTES = null;\n\tconst DEFAULT_URI_SAFE_ATTRIBUTES = addToSet({}, ['alt', 'class', 'for', 'id', 'label', 'name', 'pattern', 'placeholder', 'role', 'summary', 'title', 'value', 'style', 'xmlns']);\n\tconst MATHML_NAMESPACE = 'http://www.w3.org/1998/Math/MathML';\n\tconst SVG_NAMESPACE = 'http://www.w3.org/2000/svg';\n\tconst HTML_NAMESPACE = 'http://www.w3.org/1999/xhtml';\n\t/* Document namespace */\n\n\tlet NAMESPACE = HTML_NAMESPACE;\n\tlet IS_EMPTY_INPUT = false;\n\t/* Allowed XHTML+XML namespaces */\n\n\tlet ALLOWED_NAMESPACES = null;\n\tconst DEFAULT_ALLOWED_NAMESPACES = addToSet({}, [MATHML_NAMESPACE, SVG_NAMESPACE, HTML_NAMESPACE], stringToString);\n\t/* Parsing of strict XHTML documents */\n\n\tlet PARSER_MEDIA_TYPE;\n\tconst SUPPORTED_PARSER_MEDIA_TYPES = ['application/xhtml+xml', 'text/html'];\n\tconst DEFAULT_PARSER_MEDIA_TYPE = 'text/html';\n\tlet transformCaseFunc;\n\t/* Keep a reference to config to pass to hooks */\n\n\tlet CONFIG = null;\n\t/* Ideally, do not touch anything below this line */\n\n\t/* ______________________________________________ */\n\n\tconst formElement = document.createElement('form');\n\n\tconst isRegexOrFunction = function isRegexOrFunction(testValue) {\n\t\treturn testValue instanceof RegExp || testValue instanceof Function;\n\t};\n\t/**\n\t * _parseConfig\n\t *\n\t * @param {Object} cfg optional config literal\n\t */\n\t// eslint-disable-next-line complexity\n\n\n\tconst _parseConfig = function _parseConfig(cfg) {\n\t\tif (CONFIG && CONFIG === cfg) {\n\t\t\treturn;\n\t\t}\n\t\t/* Shield configuration object from tampering */\n\n\n\t\tif (!cfg || typeof cfg !== 'object') {\n\t\t\tcfg = {};\n\t\t}\n\t\t/* Shield configuration object from prototype pollution */\n\n\n\t\tcfg = clone(cfg);\n\t\tPARSER_MEDIA_TYPE = // eslint-disable-next-line unicorn/prefer-includes\n\t\t\tSUPPORTED_PARSER_MEDIA_TYPES.indexOf(cfg.PARSER_MEDIA_TYPE) === -1 ? PARSER_MEDIA_TYPE = DEFAULT_PARSER_MEDIA_TYPE : PARSER_MEDIA_TYPE = cfg.PARSER_MEDIA_TYPE; // HTML tags and attributes are not case-sensitive, converting to lowercase. Keeping XHTML as is.\n\n\t\ttransformCaseFunc = PARSER_MEDIA_TYPE === 'application/xhtml+xml' ? stringToString : stringToLowerCase;\n\t\t/* Set configuration parameters */\n\n\t\tALLOWED_TAGS = 'ALLOWED_TAGS' in cfg ? addToSet({}, cfg.ALLOWED_TAGS, transformCaseFunc) : DEFAULT_ALLOWED_TAGS;\n\t\tALLOWED_ATTR = 'ALLOWED_ATTR' in cfg ? addToSet({}, cfg.ALLOWED_ATTR, transformCaseFunc) : DEFAULT_ALLOWED_ATTR;\n\t\tALLOWED_NAMESPACES = 'ALLOWED_NAMESPACES' in cfg ? addToSet({}, cfg.ALLOWED_NAMESPACES, stringToString) : DEFAULT_ALLOWED_NAMESPACES;\n\t\tURI_SAFE_ATTRIBUTES = 'ADD_URI_SAFE_ATTR' in cfg ? addToSet(clone(DEFAULT_URI_SAFE_ATTRIBUTES), // eslint-disable-line indent\n\t\t\tcfg.ADD_URI_SAFE_ATTR, // eslint-disable-line indent\n\t\t\ttransformCaseFunc // eslint-disable-line indent\n\t\t) // eslint-disable-line indent\n\t\t\t: DEFAULT_URI_SAFE_ATTRIBUTES;\n\t\tDATA_URI_TAGS = 'ADD_DATA_URI_TAGS' in cfg ? addToSet(clone(DEFAULT_DATA_URI_TAGS), // eslint-disable-line indent\n\t\t\tcfg.ADD_DATA_URI_TAGS, // eslint-disable-line indent\n\t\t\ttransformCaseFunc // eslint-disable-line indent\n\t\t) // eslint-disable-line indent\n\t\t\t: DEFAULT_DATA_URI_TAGS;\n\t\tFORBID_CONTENTS = 'FORBID_CONTENTS' in cfg ? addToSet({}, cfg.FORBID_CONTENTS, transformCaseFunc) : DEFAULT_FORBID_CONTENTS;\n\t\tFORBID_TAGS = 'FORBID_TAGS' in cfg ? addToSet({}, cfg.FORBID_TAGS, transformCaseFunc) : {};\n\t\tFORBID_ATTR = 'FORBID_ATTR' in cfg ? addToSet({}, cfg.FORBID_ATTR, transformCaseFunc) : {};\n\t\tUSE_PROFILES = 'USE_PROFILES' in cfg ? cfg.USE_PROFILES : false;\n\t\tALLOW_ARIA_ATTR = cfg.ALLOW_ARIA_ATTR !== false; // Default true\n\n\t\tALLOW_DATA_ATTR = cfg.ALLOW_DATA_ATTR !== false; // Default true\n\n\t\tALLOW_UNKNOWN_PROTOCOLS = cfg.ALLOW_UNKNOWN_PROTOCOLS || false; // Default false\n\n\t\tALLOW_SELF_CLOSE_IN_ATTR = cfg.ALLOW_SELF_CLOSE_IN_ATTR !== false; // Default true\n\n\t\tSAFE_FOR_TEMPLATES = cfg.SAFE_FOR_TEMPLATES || false; // Default false\n\n\t\tWHOLE_DOCUMENT = cfg.WHOLE_DOCUMENT || false; // Default false\n\n\t\tRETURN_DOM = cfg.RETURN_DOM || false; // Default false\n\n\t\tRETURN_DOM_FRAGMENT = cfg.RETURN_DOM_FRAGMENT || false; // Default false\n\n\t\tRETURN_TRUSTED_TYPE = cfg.RETURN_TRUSTED_TYPE || false; // Default false\n\n\t\tFORCE_BODY = cfg.FORCE_BODY || false; // Default false\n\n\t\tSANITIZE_DOM = cfg.SANITIZE_DOM !== false; // Default true\n\n\t\tSANITIZE_NAMED_PROPS = cfg.SANITIZE_NAMED_PROPS || false; // Default false\n\n\t\tKEEP_CONTENT = cfg.KEEP_CONTENT !== false; // Default true\n\n\t\tIN_PLACE = cfg.IN_PLACE || false; // Default false\n\n\t\tIS_ALLOWED_URI$1 = cfg.ALLOWED_URI_REGEXP || IS_ALLOWED_URI;\n\t\tNAMESPACE = cfg.NAMESPACE || HTML_NAMESPACE;\n\t\tCUSTOM_ELEMENT_HANDLING = cfg.CUSTOM_ELEMENT_HANDLING || {};\n\n\t\tif (cfg.CUSTOM_ELEMENT_HANDLING && isRegexOrFunction(cfg.CUSTOM_ELEMENT_HANDLING.tagNameCheck)) {\n\t\t\tCUSTOM_ELEMENT_HANDLING.tagNameCheck = cfg.CUSTOM_ELEMENT_HANDLING.tagNameCheck;\n\t\t}\n\n\t\tif (cfg.CUSTOM_ELEMENT_HANDLING && isRegexOrFunction(cfg.CUSTOM_ELEMENT_HANDLING.attributeNameCheck)) {\n\t\t\tCUSTOM_ELEMENT_HANDLING.attributeNameCheck = cfg.CUSTOM_ELEMENT_HANDLING.attributeNameCheck;\n\t\t}\n\n\t\tif (cfg.CUSTOM_ELEMENT_HANDLING && typeof cfg.CUSTOM_ELEMENT_HANDLING.allowCustomizedBuiltInElements === 'boolean') {\n\t\t\tCUSTOM_ELEMENT_HANDLING.allowCustomizedBuiltInElements = cfg.CUSTOM_ELEMENT_HANDLING.allowCustomizedBuiltInElements;\n\t\t}\n\n\t\tif (SAFE_FOR_TEMPLATES) {\n\t\t\tALLOW_DATA_ATTR = false;\n\t\t}\n\n\t\tif (RETURN_DOM_FRAGMENT) {\n\t\t\tRETURN_DOM = true;\n\t\t}\n\t\t/* Parse profile info */\n\n\n\t\tif (USE_PROFILES) {\n\t\t\tALLOWED_TAGS = addToSet({}, [...text]);\n\t\t\tALLOWED_ATTR = [];\n\n\t\t\tif (USE_PROFILES.html === true) {\n\t\t\t\taddToSet(ALLOWED_TAGS, html$1);\n\t\t\t\taddToSet(ALLOWED_ATTR, html);\n\t\t\t}\n\n\t\t\tif (USE_PROFILES.svg === true) {\n\t\t\t\taddToSet(ALLOWED_TAGS, svg$1);\n\t\t\t\taddToSet(ALLOWED_ATTR, svg);\n\t\t\t\taddToSet(ALLOWED_ATTR, xml);\n\t\t\t}\n\n\t\t\tif (USE_PROFILES.svgFilters === true) {\n\t\t\t\taddToSet(ALLOWED_TAGS, svgFilters);\n\t\t\t\taddToSet(ALLOWED_ATTR, svg);\n\t\t\t\taddToSet(ALLOWED_ATTR, xml);\n\t\t\t}\n\n\t\t\tif (USE_PROFILES.mathMl === true) {\n\t\t\t\taddToSet(ALLOWED_TAGS, mathMl$1);\n\t\t\t\taddToSet(ALLOWED_ATTR, mathMl);\n\t\t\t\taddToSet(ALLOWED_ATTR, xml);\n\t\t\t}\n\t\t}\n\t\t/* Merge configuration parameters */\n\n\n\t\tif (cfg.ADD_TAGS) {\n\t\t\tif (ALLOWED_TAGS === DEFAULT_ALLOWED_TAGS) {\n\t\t\t\tALLOWED_TAGS = clone(ALLOWED_TAGS);\n\t\t\t}\n\n\t\t\taddToSet(ALLOWED_TAGS, cfg.ADD_TAGS, transformCaseFunc);\n\t\t}\n\n\t\tif (cfg.ADD_ATTR) {\n\t\t\tif (ALLOWED_ATTR === DEFAULT_ALLOWED_ATTR) {\n\t\t\t\tALLOWED_ATTR = clone(ALLOWED_ATTR);\n\t\t\t}\n\n\t\t\taddToSet(ALLOWED_ATTR, cfg.ADD_ATTR, transformCaseFunc);\n\t\t}\n\n\t\tif (cfg.ADD_URI_SAFE_ATTR) {\n\t\t\taddToSet(URI_SAFE_ATTRIBUTES, cfg.ADD_URI_SAFE_ATTR, transformCaseFunc);\n\t\t}\n\n\t\tif (cfg.FORBID_CONTENTS) {\n\t\t\tif (FORBID_CONTENTS === DEFAULT_FORBID_CONTENTS) {\n\t\t\t\tFORBID_CONTENTS = clone(FORBID_CONTENTS);\n\t\t\t}\n\n\t\t\taddToSet(FORBID_CONTENTS, cfg.FORBID_CONTENTS, transformCaseFunc);\n\t\t}\n\t\t/* Add #text in case KEEP_CONTENT is set to true */\n\n\n\t\tif (KEEP_CONTENT) {\n\t\t\tALLOWED_TAGS['#text'] = true;\n\t\t}\n\t\t/* Add html, head and body to ALLOWED_TAGS in case WHOLE_DOCUMENT is true */\n\n\n\t\tif (WHOLE_DOCUMENT) {\n\t\t\taddToSet(ALLOWED_TAGS, ['html', 'head', 'body']);\n\t\t}\n\t\t/* Add tbody to ALLOWED_TAGS in case tables are permitted, see #286, #365 */\n\n\n\t\tif (ALLOWED_TAGS.table) {\n\t\t\taddToSet(ALLOWED_TAGS, ['tbody']);\n\t\t\tdelete FORBID_TAGS.tbody;\n\t\t}\n\n\t\tif (cfg.TRUSTED_TYPES_POLICY) {\n\t\t\tif (typeof cfg.TRUSTED_TYPES_POLICY.createHTML !== 'function') {\n\t\t\t\tthrow typeErrorCreate('TRUSTED_TYPES_POLICY configuration option must provide a \"createHTML\" hook.');\n\t\t\t}\n\n\t\t\tif (typeof cfg.TRUSTED_TYPES_POLICY.createScriptURL !== 'function') {\n\t\t\t\tthrow typeErrorCreate('TRUSTED_TYPES_POLICY configuration option must provide a \"createScriptURL\" hook.');\n\t\t\t} // Overwrite existing TrustedTypes policy.\n\n\n\t\t\ttrustedTypesPolicy = cfg.TRUSTED_TYPES_POLICY; // Sign local variables required by `sanitize`.\n\n\t\t\temptyHTML = trustedTypesPolicy.createHTML('');\n\t\t} else {\n\t\t\t// Uninitialized policy, attempt to initialize the internal dompurify policy.\n\t\t\tif (trustedTypesPolicy === undefined) {\n\t\t\t\ttrustedTypesPolicy = _createTrustedTypesPolicy(trustedTypes, currentScript);\n\t\t\t} // If creating the internal policy succeeded sign internal variables.\n\n\n\t\t\tif (trustedTypesPolicy !== null && typeof emptyHTML === 'string') {\n\t\t\t\temptyHTML = trustedTypesPolicy.createHTML('');\n\t\t\t}\n\t\t} // Prevent further manipulation of configuration.\n\t\t// Not available in IE8, Safari 5, etc.\n\n\n\t\tif (freeze) {\n\t\t\tfreeze(cfg);\n\t\t}\n\n\t\tCONFIG = cfg;\n\t};\n\n\tconst MATHML_TEXT_INTEGRATION_POINTS = addToSet({}, ['mi', 'mo', 'mn', 'ms', 'mtext']);\n\tconst HTML_INTEGRATION_POINTS = addToSet({}, ['foreignobject', 'desc', 'title', 'annotation-xml']); // Certain elements are allowed in both SVG and HTML\n\t// namespace. We need to specify them explicitly\n\t// so that they don't get erroneously deleted from\n\t// HTML namespace.\n\n\tconst COMMON_SVG_AND_HTML_ELEMENTS = addToSet({}, ['title', 'style', 'font', 'a', 'script']);\n\t/* Keep track of all possible SVG and MathML tags\n\t * so that we can perform the namespace checks\n\t * correctly. */\n\n\tconst ALL_SVG_TAGS = addToSet({}, svg$1);\n\taddToSet(ALL_SVG_TAGS, svgFilters);\n\taddToSet(ALL_SVG_TAGS, svgDisallowed);\n\tconst ALL_MATHML_TAGS = addToSet({}, mathMl$1);\n\taddToSet(ALL_MATHML_TAGS, mathMlDisallowed);\n\t/**\n\t *\n\t *\n\t * @param {Element} element a DOM element whose namespace is being checked\n\t * @returns {boolean} Return false if the element has a\n\t * namespace that a spec-compliant parser would never\n\t * return. Return true otherwise.\n\t */\n\n\tconst _checkValidNamespace = function _checkValidNamespace(element) {\n\t\tlet parent = getParentNode(element); // In JSDOM, if we're inside shadow DOM, then parentNode\n\t\t// can be null. We just simulate parent in this case.\n\n\t\tif (!parent || !parent.tagName) {\n\t\t\tparent = {\n\t\t\t\tnamespaceURI: NAMESPACE,\n\t\t\t\ttagName: 'template'\n\t\t\t};\n\t\t}\n\n\t\tconst tagName = stringToLowerCase(element.tagName);\n\t\tconst parentTagName = stringToLowerCase(parent.tagName);\n\n\t\tif (!ALLOWED_NAMESPACES[element.namespaceURI]) {\n\t\t\treturn false;\n\t\t}\n\n\t\tif (element.namespaceURI === SVG_NAMESPACE) {\n\t\t\t// The only way to switch from HTML namespace to SVG\n\t\t\t// is via ';\n const output = [];\n for (let lineNumber = visibleStartLineNumber; lineNumber <= visibleEndLineNumber; lineNumber++) {\n const lineIndex = lineNumber - visibleStartLineNumber;\n const decorations = toRender[lineIndex].getDecorations();\n let lineOutput = '';\n for (const decoration of decorations) {\n let addition = ' {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ Margin: () => (/* binding */ Margin)\n/* harmony export */ });\n/* harmony import */ var _margin_css__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./margin.css */ \"./node_modules/monaco-editor/esm/vs/editor/browser/viewParts/margin/margin.css\");\n/* harmony import */ var _base_browser_fastDomNode_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../base/browser/fastDomNode.js */ \"./node_modules/monaco-editor/esm/vs/base/browser/fastDomNode.js\");\n/* harmony import */ var _view_viewPart_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../view/viewPart.js */ \"./node_modules/monaco-editor/esm/vs/editor/browser/view/viewPart.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n\n\nclass Margin extends _view_viewPart_js__WEBPACK_IMPORTED_MODULE_2__.ViewPart {\n constructor(context) {\n super(context);\n const options = this._context.configuration.options;\n const layoutInfo = options.get(144 /* EditorOption.layoutInfo */);\n this._canUseLayerHinting = !options.get(32 /* EditorOption.disableLayerHinting */);\n this._contentLeft = layoutInfo.contentLeft;\n this._glyphMarginLeft = layoutInfo.glyphMarginLeft;\n this._glyphMarginWidth = layoutInfo.glyphMarginWidth;\n this._domNode = (0,_base_browser_fastDomNode_js__WEBPACK_IMPORTED_MODULE_1__.createFastDomNode)(document.createElement('div'));\n this._domNode.setClassName(Margin.OUTER_CLASS_NAME);\n this._domNode.setPosition('absolute');\n this._domNode.setAttribute('role', 'presentation');\n this._domNode.setAttribute('aria-hidden', 'true');\n this._glyphMarginBackgroundDomNode = (0,_base_browser_fastDomNode_js__WEBPACK_IMPORTED_MODULE_1__.createFastDomNode)(document.createElement('div'));\n this._glyphMarginBackgroundDomNode.setClassName(Margin.CLASS_NAME);\n this._domNode.appendChild(this._glyphMarginBackgroundDomNode);\n }\n dispose() {\n super.dispose();\n }\n getDomNode() {\n return this._domNode;\n }\n // --- begin event handlers\n onConfigurationChanged(e) {\n const options = this._context.configuration.options;\n const layoutInfo = options.get(144 /* EditorOption.layoutInfo */);\n this._canUseLayerHinting = !options.get(32 /* EditorOption.disableLayerHinting */);\n this._contentLeft = layoutInfo.contentLeft;\n this._glyphMarginLeft = layoutInfo.glyphMarginLeft;\n this._glyphMarginWidth = layoutInfo.glyphMarginWidth;\n return true;\n }\n onScrollChanged(e) {\n return super.onScrollChanged(e) || e.scrollTopChanged;\n }\n // --- end event handlers\n prepareRender(ctx) {\n // Nothing to read\n }\n render(ctx) {\n this._domNode.setLayerHinting(this._canUseLayerHinting);\n this._domNode.setContain('strict');\n const adjustedScrollTop = ctx.scrollTop - ctx.bigNumbersDelta;\n this._domNode.setTop(-adjustedScrollTop);\n const height = Math.min(ctx.scrollHeight, 1000000);\n this._domNode.setHeight(height);\n this._domNode.setWidth(this._contentLeft);\n this._glyphMarginBackgroundDomNode.setLeft(this._glyphMarginLeft);\n this._glyphMarginBackgroundDomNode.setWidth(this._glyphMarginWidth);\n this._glyphMarginBackgroundDomNode.setHeight(height);\n }\n}\nMargin.CLASS_NAME = 'glyph-margin';\nMargin.OUTER_CLASS_NAME = 'margin';\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/browser/viewParts/margin/margin.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/browser/viewParts/marginDecorations/marginDecorations.js":
/*!***********************************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/browser/viewParts/marginDecorations/marginDecorations.js ***!
\***********************************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ MarginViewLineDecorationsOverlay: () => (/* binding */ MarginViewLineDecorationsOverlay)\n/* harmony export */ });\n/* harmony import */ var _marginDecorations_css__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./marginDecorations.css */ \"./node_modules/monaco-editor/esm/vs/editor/browser/viewParts/marginDecorations/marginDecorations.css\");\n/* harmony import */ var _glyphMargin_glyphMargin_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../glyphMargin/glyphMargin.js */ \"./node_modules/monaco-editor/esm/vs/editor/browser/viewParts/glyphMargin/glyphMargin.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n\nclass MarginViewLineDecorationsOverlay extends _glyphMargin_glyphMargin_js__WEBPACK_IMPORTED_MODULE_1__.DedupOverlay {\n constructor(context) {\n super();\n this._context = context;\n this._renderResult = null;\n this._context.addEventHandler(this);\n }\n dispose() {\n this._context.removeEventHandler(this);\n this._renderResult = null;\n super.dispose();\n }\n // --- begin event handlers\n onConfigurationChanged(e) {\n return true;\n }\n onDecorationsChanged(e) {\n return true;\n }\n onFlushed(e) {\n return true;\n }\n onLinesChanged(e) {\n return true;\n }\n onLinesDeleted(e) {\n return true;\n }\n onLinesInserted(e) {\n return true;\n }\n onScrollChanged(e) {\n return e.scrollTopChanged;\n }\n onZonesChanged(e) {\n return true;\n }\n // --- end event handlers\n _getDecorations(ctx) {\n const decorations = ctx.getDecorationsInViewport();\n const r = [];\n let rLen = 0;\n for (let i = 0, len = decorations.length; i < len; i++) {\n const d = decorations[i];\n const marginClassName = d.options.marginClassName;\n const zIndex = d.options.zIndex;\n if (marginClassName) {\n r[rLen++] = new _glyphMargin_glyphMargin_js__WEBPACK_IMPORTED_MODULE_1__.DecorationToRender(d.range.startLineNumber, d.range.endLineNumber, marginClassName, null, zIndex);\n }\n }\n return r;\n }\n prepareRender(ctx) {\n const visibleStartLineNumber = ctx.visibleRange.startLineNumber;\n const visibleEndLineNumber = ctx.visibleRange.endLineNumber;\n const toRender = this._render(visibleStartLineNumber, visibleEndLineNumber, this._getDecorations(ctx));\n const output = [];\n for (let lineNumber = visibleStartLineNumber; lineNumber <= visibleEndLineNumber; lineNumber++) {\n const lineIndex = lineNumber - visibleStartLineNumber;\n const decorations = toRender[lineIndex].getDecorations();\n let lineOutput = '';\n for (const decoration of decorations) {\n lineOutput += ' ';\n }\n output[lineIndex] = lineOutput;\n }\n this._renderResult = output;\n }\n render(startLineNumber, lineNumber) {\n if (!this._renderResult) {\n return '';\n }\n return this._renderResult[lineNumber - startLineNumber];\n }\n}\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/browser/viewParts/marginDecorations/marginDecorations.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/browser/viewParts/minimap/minimap.js":
/*!***************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/browser/viewParts/minimap/minimap.js ***!
\***************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ Minimap: () => (/* binding */ Minimap)\n/* harmony export */ });\n/* harmony import */ var _minimap_css__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./minimap.css */ \"./node_modules/monaco-editor/esm/vs/editor/browser/viewParts/minimap/minimap.css\");\n/* harmony import */ var _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../base/browser/dom.js */ \"./node_modules/monaco-editor/esm/vs/base/browser/dom.js\");\n/* harmony import */ var _base_browser_fastDomNode_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../../base/browser/fastDomNode.js */ \"./node_modules/monaco-editor/esm/vs/base/browser/fastDomNode.js\");\n/* harmony import */ var _base_browser_globalPointerMoveMonitor_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../../../base/browser/globalPointerMoveMonitor.js */ \"./node_modules/monaco-editor/esm/vs/base/browser/globalPointerMoveMonitor.js\");\n/* harmony import */ var _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../../../base/common/lifecycle.js */ \"./node_modules/monaco-editor/esm/vs/base/common/lifecycle.js\");\n/* harmony import */ var _base_common_platform_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../../../../base/common/platform.js */ \"./node_modules/monaco-editor/esm/vs/base/common/platform.js\");\n/* harmony import */ var _base_common_strings_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../../../../base/common/strings.js */ \"./node_modules/monaco-editor/esm/vs/base/common/strings.js\");\n/* harmony import */ var _view_viewLayer_js__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ../../view/viewLayer.js */ \"./node_modules/monaco-editor/esm/vs/editor/browser/view/viewLayer.js\");\n/* harmony import */ var _view_viewPart_js__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ../../view/viewPart.js */ \"./node_modules/monaco-editor/esm/vs/editor/browser/view/viewPart.js\");\n/* harmony import */ var _common_config_editorOptions_js__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ../../../common/config/editorOptions.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/config/editorOptions.js\");\n/* harmony import */ var _common_core_range_js__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! ../../../common/core/range.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/core/range.js\");\n/* harmony import */ var _common_core_rgba_js__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(/*! ../../../common/core/rgba.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/core/rgba.js\");\n/* harmony import */ var _common_viewModel_minimapTokensColorTracker_js__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(/*! ../../../common/viewModel/minimapTokensColorTracker.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/viewModel/minimapTokensColorTracker.js\");\n/* harmony import */ var _common_viewModel_js__WEBPACK_IMPORTED_MODULE_13__ = __webpack_require__(/*! ../../../common/viewModel.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/viewModel.js\");\n/* harmony import */ var _platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_14__ = __webpack_require__(/*! ../../../../platform/theme/common/colorRegistry.js */ \"./node_modules/monaco-editor/esm/vs/platform/theme/common/colorRegistry.js\");\n/* harmony import */ var _common_core_selection_js__WEBPACK_IMPORTED_MODULE_15__ = __webpack_require__(/*! ../../../common/core/selection.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/core/selection.js\");\n/* harmony import */ var _base_browser_touch_js__WEBPACK_IMPORTED_MODULE_16__ = __webpack_require__(/*! ../../../../base/browser/touch.js */ \"./node_modules/monaco-editor/esm/vs/base/browser/touch.js\");\n/* harmony import */ var _minimapCharRendererFactory_js__WEBPACK_IMPORTED_MODULE_17__ = __webpack_require__(/*! ./minimapCharRendererFactory.js */ \"./node_modules/monaco-editor/esm/vs/editor/browser/viewParts/minimap/minimapCharRendererFactory.js\");\n/* harmony import */ var _common_model_js__WEBPACK_IMPORTED_MODULE_18__ = __webpack_require__(/*! ../../../common/model.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/model.js\");\n/* harmony import */ var _base_common_functional_js__WEBPACK_IMPORTED_MODULE_19__ = __webpack_require__(/*! ../../../../base/common/functional.js */ \"./node_modules/monaco-editor/esm/vs/base/common/functional.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n/**\n * The orthogonal distance to the slider at which dragging \"resets\". This implements \"snapping\"\n */\nconst POINTER_DRAG_RESET_DISTANCE = 140;\nconst GUTTER_DECORATION_WIDTH = 2;\nclass MinimapOptions {\n constructor(configuration, theme, tokensColorTracker) {\n const options = configuration.options;\n const pixelRatio = options.get(142 /* EditorOption.pixelRatio */);\n const layoutInfo = options.get(144 /* EditorOption.layoutInfo */);\n const minimapLayout = layoutInfo.minimap;\n const fontInfo = options.get(50 /* EditorOption.fontInfo */);\n const minimapOpts = options.get(73 /* EditorOption.minimap */);\n this.renderMinimap = minimapLayout.renderMinimap;\n this.size = minimapOpts.size;\n this.minimapHeightIsEditorHeight = minimapLayout.minimapHeightIsEditorHeight;\n this.scrollBeyondLastLine = options.get(105 /* EditorOption.scrollBeyondLastLine */);\n this.paddingTop = options.get(84 /* EditorOption.padding */).top;\n this.paddingBottom = options.get(84 /* EditorOption.padding */).bottom;\n this.showSlider = minimapOpts.showSlider;\n this.autohide = minimapOpts.autohide;\n this.pixelRatio = pixelRatio;\n this.typicalHalfwidthCharacterWidth = fontInfo.typicalHalfwidthCharacterWidth;\n this.lineHeight = options.get(67 /* EditorOption.lineHeight */);\n this.minimapLeft = minimapLayout.minimapLeft;\n this.minimapWidth = minimapLayout.minimapWidth;\n this.minimapHeight = layoutInfo.height;\n this.canvasInnerWidth = minimapLayout.minimapCanvasInnerWidth;\n this.canvasInnerHeight = minimapLayout.minimapCanvasInnerHeight;\n this.canvasOuterWidth = minimapLayout.minimapCanvasOuterWidth;\n this.canvasOuterHeight = minimapLayout.minimapCanvasOuterHeight;\n this.isSampling = minimapLayout.minimapIsSampling;\n this.editorHeight = layoutInfo.height;\n this.fontScale = minimapLayout.minimapScale;\n this.minimapLineHeight = minimapLayout.minimapLineHeight;\n this.minimapCharWidth = 1 /* Constants.BASE_CHAR_WIDTH */ * this.fontScale;\n this.charRenderer = (0,_base_common_functional_js__WEBPACK_IMPORTED_MODULE_19__.createSingleCallFunction)(() => _minimapCharRendererFactory_js__WEBPACK_IMPORTED_MODULE_17__.MinimapCharRendererFactory.create(this.fontScale, fontInfo.fontFamily));\n this.defaultBackgroundColor = tokensColorTracker.getColor(2 /* ColorId.DefaultBackground */);\n this.backgroundColor = MinimapOptions._getMinimapBackground(theme, this.defaultBackgroundColor);\n this.foregroundAlpha = MinimapOptions._getMinimapForegroundOpacity(theme);\n }\n static _getMinimapBackground(theme, defaultBackgroundColor) {\n const themeColor = theme.getColor(_platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_14__.minimapBackground);\n if (themeColor) {\n return new _common_core_rgba_js__WEBPACK_IMPORTED_MODULE_11__.RGBA8(themeColor.rgba.r, themeColor.rgba.g, themeColor.rgba.b, Math.round(255 * themeColor.rgba.a));\n }\n return defaultBackgroundColor;\n }\n static _getMinimapForegroundOpacity(theme) {\n const themeColor = theme.getColor(_platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_14__.minimapForegroundOpacity);\n if (themeColor) {\n return _common_core_rgba_js__WEBPACK_IMPORTED_MODULE_11__.RGBA8._clamp(Math.round(255 * themeColor.rgba.a));\n }\n return 255;\n }\n equals(other) {\n return (this.renderMinimap === other.renderMinimap\n && this.size === other.size\n && this.minimapHeightIsEditorHeight === other.minimapHeightIsEditorHeight\n && this.scrollBeyondLastLine === other.scrollBeyondLastLine\n && this.paddingTop === other.paddingTop\n && this.paddingBottom === other.paddingBottom\n && this.showSlider === other.showSlider\n && this.autohide === other.autohide\n && this.pixelRatio === other.pixelRatio\n && this.typicalHalfwidthCharacterWidth === other.typicalHalfwidthCharacterWidth\n && this.lineHeight === other.lineHeight\n && this.minimapLeft === other.minimapLeft\n && this.minimapWidth === other.minimapWidth\n && this.minimapHeight === other.minimapHeight\n && this.canvasInnerWidth === other.canvasInnerWidth\n && this.canvasInnerHeight === other.canvasInnerHeight\n && this.canvasOuterWidth === other.canvasOuterWidth\n && this.canvasOuterHeight === other.canvasOuterHeight\n && this.isSampling === other.isSampling\n && this.editorHeight === other.editorHeight\n && this.fontScale === other.fontScale\n && this.minimapLineHeight === other.minimapLineHeight\n && this.minimapCharWidth === other.minimapCharWidth\n && this.defaultBackgroundColor && this.defaultBackgroundColor.equals(other.defaultBackgroundColor)\n && this.backgroundColor && this.backgroundColor.equals(other.backgroundColor)\n && this.foregroundAlpha === other.foregroundAlpha);\n }\n}\nclass MinimapLayout {\n constructor(\n /**\n * The given editor scrollTop (input).\n */\n scrollTop, \n /**\n * The given editor scrollHeight (input).\n */\n scrollHeight, sliderNeeded, _computedSliderRatio, \n /**\n * slider dom node top (in CSS px)\n */\n sliderTop, \n /**\n * slider dom node height (in CSS px)\n */\n sliderHeight, \n /**\n * empty lines to reserve at the top of the minimap.\n */\n topPaddingLineCount, \n /**\n * minimap render start line number.\n */\n startLineNumber, \n /**\n * minimap render end line number.\n */\n endLineNumber) {\n this.scrollTop = scrollTop;\n this.scrollHeight = scrollHeight;\n this.sliderNeeded = sliderNeeded;\n this._computedSliderRatio = _computedSliderRatio;\n this.sliderTop = sliderTop;\n this.sliderHeight = sliderHeight;\n this.topPaddingLineCount = topPaddingLineCount;\n this.startLineNumber = startLineNumber;\n this.endLineNumber = endLineNumber;\n }\n /**\n * Compute a desired `scrollPosition` such that the slider moves by `delta`.\n */\n getDesiredScrollTopFromDelta(delta) {\n return Math.round(this.scrollTop + delta / this._computedSliderRatio);\n }\n getDesiredScrollTopFromTouchLocation(pageY) {\n return Math.round((pageY - this.sliderHeight / 2) / this._computedSliderRatio);\n }\n /**\n * Intersect a line range with `this.startLineNumber` and `this.endLineNumber`.\n */\n intersectWithViewport(range) {\n const startLineNumber = Math.max(this.startLineNumber, range.startLineNumber);\n const endLineNumber = Math.min(this.endLineNumber, range.endLineNumber);\n if (startLineNumber > endLineNumber) {\n // entirely outside minimap's viewport\n return null;\n }\n return [startLineNumber, endLineNumber];\n }\n /**\n * Get the inner minimap y coordinate for a line number.\n */\n getYForLineNumber(lineNumber, minimapLineHeight) {\n return +(lineNumber - this.startLineNumber + this.topPaddingLineCount) * minimapLineHeight;\n }\n static create(options, viewportStartLineNumber, viewportEndLineNumber, viewportStartLineNumberVerticalOffset, viewportHeight, viewportContainsWhitespaceGaps, lineCount, realLineCount, scrollTop, scrollHeight, previousLayout) {\n const pixelRatio = options.pixelRatio;\n const minimapLineHeight = options.minimapLineHeight;\n const minimapLinesFitting = Math.floor(options.canvasInnerHeight / minimapLineHeight);\n const lineHeight = options.lineHeight;\n if (options.minimapHeightIsEditorHeight) {\n let logicalScrollHeight = (realLineCount * options.lineHeight\n + options.paddingTop\n + options.paddingBottom);\n if (options.scrollBeyondLastLine) {\n logicalScrollHeight += Math.max(0, viewportHeight - options.lineHeight - options.paddingBottom);\n }\n const sliderHeight = Math.max(1, Math.floor(viewportHeight * viewportHeight / logicalScrollHeight));\n const maxMinimapSliderTop = Math.max(0, options.minimapHeight - sliderHeight);\n // The slider can move from 0 to `maxMinimapSliderTop`\n // in the same way `scrollTop` can move from 0 to `scrollHeight` - `viewportHeight`.\n const computedSliderRatio = (maxMinimapSliderTop) / (scrollHeight - viewportHeight);\n const sliderTop = (scrollTop * computedSliderRatio);\n const sliderNeeded = (maxMinimapSliderTop > 0);\n const maxLinesFitting = Math.floor(options.canvasInnerHeight / options.minimapLineHeight);\n const topPaddingLineCount = Math.floor(options.paddingTop / options.lineHeight);\n return new MinimapLayout(scrollTop, scrollHeight, sliderNeeded, computedSliderRatio, sliderTop, sliderHeight, topPaddingLineCount, 1, Math.min(lineCount, maxLinesFitting));\n }\n // The visible line count in a viewport can change due to a number of reasons:\n // a) with the same viewport width, different scroll positions can result in partial lines being visible:\n // e.g. for a line height of 20, and a viewport height of 600\n // * scrollTop = 0 => visible lines are [1, 30]\n // * scrollTop = 10 => visible lines are [1, 31] (with lines 1 and 31 partially visible)\n // * scrollTop = 20 => visible lines are [2, 31]\n // b) whitespace gaps might make their way in the viewport (which results in a decrease in the visible line count)\n // c) we could be in the scroll beyond last line case (which also results in a decrease in the visible line count, down to possibly only one line being visible)\n // We must first establish a desirable slider height.\n let sliderHeight;\n if (viewportContainsWhitespaceGaps && viewportEndLineNumber !== lineCount) {\n // case b) from above: there are whitespace gaps in the viewport.\n // In this case, the height of the slider directly reflects the visible line count.\n const viewportLineCount = viewportEndLineNumber - viewportStartLineNumber + 1;\n sliderHeight = Math.floor(viewportLineCount * minimapLineHeight / pixelRatio);\n }\n else {\n // The slider has a stable height\n const expectedViewportLineCount = viewportHeight / lineHeight;\n sliderHeight = Math.floor(expectedViewportLineCount * minimapLineHeight / pixelRatio);\n }\n const extraLinesAtTheTop = Math.floor(options.paddingTop / lineHeight);\n let extraLinesAtTheBottom = Math.floor(options.paddingBottom / lineHeight);\n if (options.scrollBeyondLastLine) {\n const expectedViewportLineCount = viewportHeight / lineHeight;\n extraLinesAtTheBottom = Math.max(extraLinesAtTheBottom, expectedViewportLineCount - 1);\n }\n let maxMinimapSliderTop;\n if (extraLinesAtTheBottom > 0) {\n const expectedViewportLineCount = viewportHeight / lineHeight;\n // The minimap slider, when dragged all the way down, will contain the last line at its top\n maxMinimapSliderTop = (extraLinesAtTheTop + lineCount + extraLinesAtTheBottom - expectedViewportLineCount - 1) * minimapLineHeight / pixelRatio;\n }\n else {\n // The minimap slider, when dragged all the way down, will contain the last line at its bottom\n maxMinimapSliderTop = Math.max(0, (extraLinesAtTheTop + lineCount) * minimapLineHeight / pixelRatio - sliderHeight);\n }\n maxMinimapSliderTop = Math.min(options.minimapHeight - sliderHeight, maxMinimapSliderTop);\n // The slider can move from 0 to `maxMinimapSliderTop`\n // in the same way `scrollTop` can move from 0 to `scrollHeight` - `viewportHeight`.\n const computedSliderRatio = (maxMinimapSliderTop) / (scrollHeight - viewportHeight);\n const sliderTop = (scrollTop * computedSliderRatio);\n if (minimapLinesFitting >= extraLinesAtTheTop + lineCount + extraLinesAtTheBottom) {\n // All lines fit in the minimap\n const sliderNeeded = (maxMinimapSliderTop > 0);\n return new MinimapLayout(scrollTop, scrollHeight, sliderNeeded, computedSliderRatio, sliderTop, sliderHeight, extraLinesAtTheTop, 1, lineCount);\n }\n else {\n let consideringStartLineNumber;\n if (viewportStartLineNumber > 1) {\n consideringStartLineNumber = viewportStartLineNumber + extraLinesAtTheTop;\n }\n else {\n consideringStartLineNumber = Math.max(1, scrollTop / lineHeight);\n }\n let topPaddingLineCount;\n let startLineNumber = Math.max(1, Math.floor(consideringStartLineNumber - sliderTop * pixelRatio / minimapLineHeight));\n if (startLineNumber < extraLinesAtTheTop) {\n topPaddingLineCount = extraLinesAtTheTop - startLineNumber + 1;\n startLineNumber = 1;\n }\n else {\n topPaddingLineCount = 0;\n startLineNumber = Math.max(1, startLineNumber - extraLinesAtTheTop);\n }\n // Avoid flickering caused by a partial viewport start line\n // by being consistent w.r.t. the previous layout decision\n if (previousLayout && previousLayout.scrollHeight === scrollHeight) {\n if (previousLayout.scrollTop > scrollTop) {\n // Scrolling up => never increase `startLineNumber`\n startLineNumber = Math.min(startLineNumber, previousLayout.startLineNumber);\n topPaddingLineCount = Math.max(topPaddingLineCount, previousLayout.topPaddingLineCount);\n }\n if (previousLayout.scrollTop < scrollTop) {\n // Scrolling down => never decrease `startLineNumber`\n startLineNumber = Math.max(startLineNumber, previousLayout.startLineNumber);\n topPaddingLineCount = Math.min(topPaddingLineCount, previousLayout.topPaddingLineCount);\n }\n }\n const endLineNumber = Math.min(lineCount, startLineNumber - topPaddingLineCount + minimapLinesFitting - 1);\n const partialLine = (scrollTop - viewportStartLineNumberVerticalOffset) / lineHeight;\n let sliderTopAligned;\n if (scrollTop >= options.paddingTop) {\n sliderTopAligned = (viewportStartLineNumber - startLineNumber + topPaddingLineCount + partialLine) * minimapLineHeight / pixelRatio;\n }\n else {\n sliderTopAligned = (scrollTop / options.paddingTop) * (topPaddingLineCount + partialLine) * minimapLineHeight / pixelRatio;\n }\n return new MinimapLayout(scrollTop, scrollHeight, true, computedSliderRatio, sliderTopAligned, sliderHeight, topPaddingLineCount, startLineNumber, endLineNumber);\n }\n }\n}\nclass MinimapLine {\n constructor(dy) {\n this.dy = dy;\n }\n onContentChanged() {\n this.dy = -1;\n }\n onTokensChanged() {\n this.dy = -1;\n }\n}\nMinimapLine.INVALID = new MinimapLine(-1);\nclass RenderData {\n constructor(renderedLayout, imageData, lines) {\n this.renderedLayout = renderedLayout;\n this._imageData = imageData;\n this._renderedLines = new _view_viewLayer_js__WEBPACK_IMPORTED_MODULE_7__.RenderedLinesCollection(() => MinimapLine.INVALID);\n this._renderedLines._set(renderedLayout.startLineNumber, lines);\n }\n /**\n * Check if the current RenderData matches accurately the new desired layout and no painting is needed.\n */\n linesEquals(layout) {\n if (!this.scrollEquals(layout)) {\n return false;\n }\n const tmp = this._renderedLines._get();\n const lines = tmp.lines;\n for (let i = 0, len = lines.length; i < len; i++) {\n if (lines[i].dy === -1) {\n // This line is invalid\n return false;\n }\n }\n return true;\n }\n /**\n * Check if the current RenderData matches the new layout's scroll position\n */\n scrollEquals(layout) {\n return this.renderedLayout.startLineNumber === layout.startLineNumber\n && this.renderedLayout.endLineNumber === layout.endLineNumber;\n }\n _get() {\n const tmp = this._renderedLines._get();\n return {\n imageData: this._imageData,\n rendLineNumberStart: tmp.rendLineNumberStart,\n lines: tmp.lines\n };\n }\n onLinesChanged(changeFromLineNumber, changeCount) {\n return this._renderedLines.onLinesChanged(changeFromLineNumber, changeCount);\n }\n onLinesDeleted(deleteFromLineNumber, deleteToLineNumber) {\n this._renderedLines.onLinesDeleted(deleteFromLineNumber, deleteToLineNumber);\n }\n onLinesInserted(insertFromLineNumber, insertToLineNumber) {\n this._renderedLines.onLinesInserted(insertFromLineNumber, insertToLineNumber);\n }\n onTokensChanged(ranges) {\n return this._renderedLines.onTokensChanged(ranges);\n }\n}\n/**\n * Some sort of double buffering.\n *\n * Keeps two buffers around that will be rotated for painting.\n * Always gives a buffer that is filled with the background color.\n */\nclass MinimapBuffers {\n constructor(ctx, WIDTH, HEIGHT, background) {\n this._backgroundFillData = MinimapBuffers._createBackgroundFillData(WIDTH, HEIGHT, background);\n this._buffers = [\n ctx.createImageData(WIDTH, HEIGHT),\n ctx.createImageData(WIDTH, HEIGHT)\n ];\n this._lastUsedBuffer = 0;\n }\n getBuffer() {\n // rotate buffers\n this._lastUsedBuffer = 1 - this._lastUsedBuffer;\n const result = this._buffers[this._lastUsedBuffer];\n // fill with background color\n result.data.set(this._backgroundFillData);\n return result;\n }\n static _createBackgroundFillData(WIDTH, HEIGHT, background) {\n const backgroundR = background.r;\n const backgroundG = background.g;\n const backgroundB = background.b;\n const backgroundA = background.a;\n const result = new Uint8ClampedArray(WIDTH * HEIGHT * 4);\n let offset = 0;\n for (let i = 0; i < HEIGHT; i++) {\n for (let j = 0; j < WIDTH; j++) {\n result[offset] = backgroundR;\n result[offset + 1] = backgroundG;\n result[offset + 2] = backgroundB;\n result[offset + 3] = backgroundA;\n offset += 4;\n }\n }\n return result;\n }\n}\nclass MinimapSamplingState {\n static compute(options, viewLineCount, oldSamplingState) {\n if (options.renderMinimap === 0 /* RenderMinimap.None */ || !options.isSampling) {\n return [null, []];\n }\n // ratio is intentionally not part of the layout to avoid the layout changing all the time\n // so we need to recompute it again...\n const { minimapLineCount } = _common_config_editorOptions_js__WEBPACK_IMPORTED_MODULE_9__.EditorLayoutInfoComputer.computeContainedMinimapLineCount({\n viewLineCount: viewLineCount,\n scrollBeyondLastLine: options.scrollBeyondLastLine,\n paddingTop: options.paddingTop,\n paddingBottom: options.paddingBottom,\n height: options.editorHeight,\n lineHeight: options.lineHeight,\n pixelRatio: options.pixelRatio\n });\n const ratio = viewLineCount / minimapLineCount;\n const halfRatio = ratio / 2;\n if (!oldSamplingState || oldSamplingState.minimapLines.length === 0) {\n const result = [];\n result[0] = 1;\n if (minimapLineCount > 1) {\n for (let i = 0, lastIndex = minimapLineCount - 1; i < lastIndex; i++) {\n result[i] = Math.round(i * ratio + halfRatio);\n }\n result[minimapLineCount - 1] = viewLineCount;\n }\n return [new MinimapSamplingState(ratio, result), []];\n }\n const oldMinimapLines = oldSamplingState.minimapLines;\n const oldLength = oldMinimapLines.length;\n const result = [];\n let oldIndex = 0;\n let oldDeltaLineCount = 0;\n let minViewLineNumber = 1;\n const MAX_EVENT_COUNT = 10; // generate at most 10 events, if there are more than 10 changes, just flush all previous data\n let events = [];\n let lastEvent = null;\n for (let i = 0; i < minimapLineCount; i++) {\n const fromViewLineNumber = Math.max(minViewLineNumber, Math.round(i * ratio));\n const toViewLineNumber = Math.max(fromViewLineNumber, Math.round((i + 1) * ratio));\n while (oldIndex < oldLength && oldMinimapLines[oldIndex] < fromViewLineNumber) {\n if (events.length < MAX_EVENT_COUNT) {\n const oldMinimapLineNumber = oldIndex + 1 + oldDeltaLineCount;\n if (lastEvent && lastEvent.type === 'deleted' && lastEvent._oldIndex === oldIndex - 1) {\n lastEvent.deleteToLineNumber++;\n }\n else {\n lastEvent = { type: 'deleted', _oldIndex: oldIndex, deleteFromLineNumber: oldMinimapLineNumber, deleteToLineNumber: oldMinimapLineNumber };\n events.push(lastEvent);\n }\n oldDeltaLineCount--;\n }\n oldIndex++;\n }\n let selectedViewLineNumber;\n if (oldIndex < oldLength && oldMinimapLines[oldIndex] <= toViewLineNumber) {\n // reuse the old sampled line\n selectedViewLineNumber = oldMinimapLines[oldIndex];\n oldIndex++;\n }\n else {\n if (i === 0) {\n selectedViewLineNumber = 1;\n }\n else if (i + 1 === minimapLineCount) {\n selectedViewLineNumber = viewLineCount;\n }\n else {\n selectedViewLineNumber = Math.round(i * ratio + halfRatio);\n }\n if (events.length < MAX_EVENT_COUNT) {\n const oldMinimapLineNumber = oldIndex + 1 + oldDeltaLineCount;\n if (lastEvent && lastEvent.type === 'inserted' && lastEvent._i === i - 1) {\n lastEvent.insertToLineNumber++;\n }\n else {\n lastEvent = { type: 'inserted', _i: i, insertFromLineNumber: oldMinimapLineNumber, insertToLineNumber: oldMinimapLineNumber };\n events.push(lastEvent);\n }\n oldDeltaLineCount++;\n }\n }\n result[i] = selectedViewLineNumber;\n minViewLineNumber = selectedViewLineNumber;\n }\n if (events.length < MAX_EVENT_COUNT) {\n while (oldIndex < oldLength) {\n const oldMinimapLineNumber = oldIndex + 1 + oldDeltaLineCount;\n if (lastEvent && lastEvent.type === 'deleted' && lastEvent._oldIndex === oldIndex - 1) {\n lastEvent.deleteToLineNumber++;\n }\n else {\n lastEvent = { type: 'deleted', _oldIndex: oldIndex, deleteFromLineNumber: oldMinimapLineNumber, deleteToLineNumber: oldMinimapLineNumber };\n events.push(lastEvent);\n }\n oldDeltaLineCount--;\n oldIndex++;\n }\n }\n else {\n // too many events, just give up\n events = [{ type: 'flush' }];\n }\n return [new MinimapSamplingState(ratio, result), events];\n }\n constructor(samplingRatio, minimapLines) {\n this.samplingRatio = samplingRatio;\n this.minimapLines = minimapLines;\n }\n modelLineToMinimapLine(lineNumber) {\n return Math.min(this.minimapLines.length, Math.max(1, Math.round(lineNumber / this.samplingRatio)));\n }\n /**\n * Will return null if the model line ranges are not intersecting with a sampled model line.\n */\n modelLineRangeToMinimapLineRange(fromLineNumber, toLineNumber) {\n let fromLineIndex = this.modelLineToMinimapLine(fromLineNumber) - 1;\n while (fromLineIndex > 0 && this.minimapLines[fromLineIndex - 1] >= fromLineNumber) {\n fromLineIndex--;\n }\n let toLineIndex = this.modelLineToMinimapLine(toLineNumber) - 1;\n while (toLineIndex + 1 < this.minimapLines.length && this.minimapLines[toLineIndex + 1] <= toLineNumber) {\n toLineIndex++;\n }\n if (fromLineIndex === toLineIndex) {\n const sampledLineNumber = this.minimapLines[fromLineIndex];\n if (sampledLineNumber < fromLineNumber || sampledLineNumber > toLineNumber) {\n // This line is not part of the sampled lines ==> nothing to do\n return null;\n }\n }\n return [fromLineIndex + 1, toLineIndex + 1];\n }\n /**\n * Will always return a range, even if it is not intersecting with a sampled model line.\n */\n decorationLineRangeToMinimapLineRange(startLineNumber, endLineNumber) {\n let minimapLineStart = this.modelLineToMinimapLine(startLineNumber);\n let minimapLineEnd = this.modelLineToMinimapLine(endLineNumber);\n if (startLineNumber !== endLineNumber && minimapLineEnd === minimapLineStart) {\n if (minimapLineEnd === this.minimapLines.length) {\n if (minimapLineStart > 1) {\n minimapLineStart--;\n }\n }\n else {\n minimapLineEnd++;\n }\n }\n return [minimapLineStart, minimapLineEnd];\n }\n onLinesDeleted(e) {\n // have the mapping be sticky\n const deletedLineCount = e.toLineNumber - e.fromLineNumber + 1;\n let changeStartIndex = this.minimapLines.length;\n let changeEndIndex = 0;\n for (let i = this.minimapLines.length - 1; i >= 0; i--) {\n if (this.minimapLines[i] < e.fromLineNumber) {\n break;\n }\n if (this.minimapLines[i] <= e.toLineNumber) {\n // this line got deleted => move to previous available\n this.minimapLines[i] = Math.max(1, e.fromLineNumber - 1);\n changeStartIndex = Math.min(changeStartIndex, i);\n changeEndIndex = Math.max(changeEndIndex, i);\n }\n else {\n this.minimapLines[i] -= deletedLineCount;\n }\n }\n return [changeStartIndex, changeEndIndex];\n }\n onLinesInserted(e) {\n // have the mapping be sticky\n const insertedLineCount = e.toLineNumber - e.fromLineNumber + 1;\n for (let i = this.minimapLines.length - 1; i >= 0; i--) {\n if (this.minimapLines[i] < e.fromLineNumber) {\n break;\n }\n this.minimapLines[i] += insertedLineCount;\n }\n }\n}\nclass Minimap extends _view_viewPart_js__WEBPACK_IMPORTED_MODULE_8__.ViewPart {\n constructor(context) {\n super(context);\n this.tokensColorTracker = _common_viewModel_minimapTokensColorTracker_js__WEBPACK_IMPORTED_MODULE_12__.MinimapTokensColorTracker.getInstance();\n this._selections = [];\n this._minimapSelections = null;\n this.options = new MinimapOptions(this._context.configuration, this._context.theme, this.tokensColorTracker);\n const [samplingState,] = MinimapSamplingState.compute(this.options, this._context.viewModel.getLineCount(), null);\n this._samplingState = samplingState;\n this._shouldCheckSampling = false;\n this._actual = new InnerMinimap(context.theme, this);\n }\n dispose() {\n this._actual.dispose();\n super.dispose();\n }\n getDomNode() {\n return this._actual.getDomNode();\n }\n _onOptionsMaybeChanged() {\n const opts = new MinimapOptions(this._context.configuration, this._context.theme, this.tokensColorTracker);\n if (this.options.equals(opts)) {\n return false;\n }\n this.options = opts;\n this._recreateLineSampling();\n this._actual.onDidChangeOptions();\n return true;\n }\n // ---- begin view event handlers\n onConfigurationChanged(e) {\n return this._onOptionsMaybeChanged();\n }\n onCursorStateChanged(e) {\n this._selections = e.selections;\n this._minimapSelections = null;\n return this._actual.onSelectionChanged();\n }\n onDecorationsChanged(e) {\n if (e.affectsMinimap) {\n return this._actual.onDecorationsChanged();\n }\n return false;\n }\n onFlushed(e) {\n if (this._samplingState) {\n this._shouldCheckSampling = true;\n }\n return this._actual.onFlushed();\n }\n onLinesChanged(e) {\n if (this._samplingState) {\n const minimapLineRange = this._samplingState.modelLineRangeToMinimapLineRange(e.fromLineNumber, e.fromLineNumber + e.count - 1);\n if (minimapLineRange) {\n return this._actual.onLinesChanged(minimapLineRange[0], minimapLineRange[1] - minimapLineRange[0] + 1);\n }\n else {\n return false;\n }\n }\n else {\n return this._actual.onLinesChanged(e.fromLineNumber, e.count);\n }\n }\n onLinesDeleted(e) {\n if (this._samplingState) {\n const [changeStartIndex, changeEndIndex] = this._samplingState.onLinesDeleted(e);\n if (changeStartIndex <= changeEndIndex) {\n this._actual.onLinesChanged(changeStartIndex + 1, changeEndIndex - changeStartIndex + 1);\n }\n this._shouldCheckSampling = true;\n return true;\n }\n else {\n return this._actual.onLinesDeleted(e.fromLineNumber, e.toLineNumber);\n }\n }\n onLinesInserted(e) {\n if (this._samplingState) {\n this._samplingState.onLinesInserted(e);\n this._shouldCheckSampling = true;\n return true;\n }\n else {\n return this._actual.onLinesInserted(e.fromLineNumber, e.toLineNumber);\n }\n }\n onScrollChanged(e) {\n return this._actual.onScrollChanged();\n }\n onThemeChanged(e) {\n this._actual.onThemeChanged();\n this._onOptionsMaybeChanged();\n return true;\n }\n onTokensChanged(e) {\n if (this._samplingState) {\n const ranges = [];\n for (const range of e.ranges) {\n const minimapLineRange = this._samplingState.modelLineRangeToMinimapLineRange(range.fromLineNumber, range.toLineNumber);\n if (minimapLineRange) {\n ranges.push({ fromLineNumber: minimapLineRange[0], toLineNumber: minimapLineRange[1] });\n }\n }\n if (ranges.length) {\n return this._actual.onTokensChanged(ranges);\n }\n else {\n return false;\n }\n }\n else {\n return this._actual.onTokensChanged(e.ranges);\n }\n }\n onTokensColorsChanged(e) {\n this._onOptionsMaybeChanged();\n return this._actual.onTokensColorsChanged();\n }\n onZonesChanged(e) {\n return this._actual.onZonesChanged();\n }\n // --- end event handlers\n prepareRender(ctx) {\n if (this._shouldCheckSampling) {\n this._shouldCheckSampling = false;\n this._recreateLineSampling();\n }\n }\n render(ctx) {\n let viewportStartLineNumber = ctx.visibleRange.startLineNumber;\n let viewportEndLineNumber = ctx.visibleRange.endLineNumber;\n if (this._samplingState) {\n viewportStartLineNumber = this._samplingState.modelLineToMinimapLine(viewportStartLineNumber);\n viewportEndLineNumber = this._samplingState.modelLineToMinimapLine(viewportEndLineNumber);\n }\n const minimapCtx = {\n viewportContainsWhitespaceGaps: (ctx.viewportData.whitespaceViewportData.length > 0),\n scrollWidth: ctx.scrollWidth,\n scrollHeight: ctx.scrollHeight,\n viewportStartLineNumber: viewportStartLineNumber,\n viewportEndLineNumber: viewportEndLineNumber,\n viewportStartLineNumberVerticalOffset: ctx.getVerticalOffsetForLineNumber(viewportStartLineNumber),\n scrollTop: ctx.scrollTop,\n scrollLeft: ctx.scrollLeft,\n viewportWidth: ctx.viewportWidth,\n viewportHeight: ctx.viewportHeight,\n };\n this._actual.render(minimapCtx);\n }\n //#region IMinimapModel\n _recreateLineSampling() {\n this._minimapSelections = null;\n const wasSampling = Boolean(this._samplingState);\n const [samplingState, events] = MinimapSamplingState.compute(this.options, this._context.viewModel.getLineCount(), this._samplingState);\n this._samplingState = samplingState;\n if (wasSampling && this._samplingState) {\n // was sampling, is sampling\n for (const event of events) {\n switch (event.type) {\n case 'deleted':\n this._actual.onLinesDeleted(event.deleteFromLineNumber, event.deleteToLineNumber);\n break;\n case 'inserted':\n this._actual.onLinesInserted(event.insertFromLineNumber, event.insertToLineNumber);\n break;\n case 'flush':\n this._actual.onFlushed();\n break;\n }\n }\n }\n }\n getLineCount() {\n if (this._samplingState) {\n return this._samplingState.minimapLines.length;\n }\n return this._context.viewModel.getLineCount();\n }\n getRealLineCount() {\n return this._context.viewModel.getLineCount();\n }\n getLineContent(lineNumber) {\n if (this._samplingState) {\n return this._context.viewModel.getLineContent(this._samplingState.minimapLines[lineNumber - 1]);\n }\n return this._context.viewModel.getLineContent(lineNumber);\n }\n getLineMaxColumn(lineNumber) {\n if (this._samplingState) {\n return this._context.viewModel.getLineMaxColumn(this._samplingState.minimapLines[lineNumber - 1]);\n }\n return this._context.viewModel.getLineMaxColumn(lineNumber);\n }\n getMinimapLinesRenderingData(startLineNumber, endLineNumber, needed) {\n if (this._samplingState) {\n const result = [];\n for (let lineIndex = 0, lineCount = endLineNumber - startLineNumber + 1; lineIndex < lineCount; lineIndex++) {\n if (needed[lineIndex]) {\n result[lineIndex] = this._context.viewModel.getViewLineData(this._samplingState.minimapLines[startLineNumber + lineIndex - 1]);\n }\n else {\n result[lineIndex] = null;\n }\n }\n return result;\n }\n return this._context.viewModel.getMinimapLinesRenderingData(startLineNumber, endLineNumber, needed).data;\n }\n getSelections() {\n if (this._minimapSelections === null) {\n if (this._samplingState) {\n this._minimapSelections = [];\n for (const selection of this._selections) {\n const [minimapLineStart, minimapLineEnd] = this._samplingState.decorationLineRangeToMinimapLineRange(selection.startLineNumber, selection.endLineNumber);\n this._minimapSelections.push(new _common_core_selection_js__WEBPACK_IMPORTED_MODULE_15__.Selection(minimapLineStart, selection.startColumn, minimapLineEnd, selection.endColumn));\n }\n }\n else {\n this._minimapSelections = this._selections;\n }\n }\n return this._minimapSelections;\n }\n getMinimapDecorationsInViewport(startLineNumber, endLineNumber) {\n let visibleRange;\n if (this._samplingState) {\n const modelStartLineNumber = this._samplingState.minimapLines[startLineNumber - 1];\n const modelEndLineNumber = this._samplingState.minimapLines[endLineNumber - 1];\n visibleRange = new _common_core_range_js__WEBPACK_IMPORTED_MODULE_10__.Range(modelStartLineNumber, 1, modelEndLineNumber, this._context.viewModel.getLineMaxColumn(modelEndLineNumber));\n }\n else {\n visibleRange = new _common_core_range_js__WEBPACK_IMPORTED_MODULE_10__.Range(startLineNumber, 1, endLineNumber, this._context.viewModel.getLineMaxColumn(endLineNumber));\n }\n const decorations = this._context.viewModel.getMinimapDecorationsInRange(visibleRange);\n if (this._samplingState) {\n const result = [];\n for (const decoration of decorations) {\n if (!decoration.options.minimap) {\n continue;\n }\n const range = decoration.range;\n const minimapStartLineNumber = this._samplingState.modelLineToMinimapLine(range.startLineNumber);\n const minimapEndLineNumber = this._samplingState.modelLineToMinimapLine(range.endLineNumber);\n result.push(new _common_viewModel_js__WEBPACK_IMPORTED_MODULE_13__.ViewModelDecoration(new _common_core_range_js__WEBPACK_IMPORTED_MODULE_10__.Range(minimapStartLineNumber, range.startColumn, minimapEndLineNumber, range.endColumn), decoration.options));\n }\n return result;\n }\n return decorations;\n }\n getOptions() {\n return this._context.viewModel.model.getOptions();\n }\n revealLineNumber(lineNumber) {\n if (this._samplingState) {\n lineNumber = this._samplingState.minimapLines[lineNumber - 1];\n }\n this._context.viewModel.revealRange('mouse', false, new _common_core_range_js__WEBPACK_IMPORTED_MODULE_10__.Range(lineNumber, 1, lineNumber, 1), 1 /* viewEvents.VerticalRevealType.Center */, 0 /* ScrollType.Smooth */);\n }\n setScrollTop(scrollTop) {\n this._context.viewModel.viewLayout.setScrollPosition({\n scrollTop: scrollTop\n }, 1 /* ScrollType.Immediate */);\n }\n}\nclass InnerMinimap extends _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_4__.Disposable {\n constructor(theme, model) {\n super();\n this._renderDecorations = false;\n this._gestureInProgress = false;\n this._theme = theme;\n this._model = model;\n this._lastRenderData = null;\n this._buffers = null;\n this._selectionColor = this._theme.getColor(_platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_14__.minimapSelection);\n this._domNode = (0,_base_browser_fastDomNode_js__WEBPACK_IMPORTED_MODULE_2__.createFastDomNode)(document.createElement('div'));\n _view_viewPart_js__WEBPACK_IMPORTED_MODULE_8__.PartFingerprints.write(this._domNode, 9 /* PartFingerprint.Minimap */);\n this._domNode.setClassName(this._getMinimapDomNodeClassName());\n this._domNode.setPosition('absolute');\n this._domNode.setAttribute('role', 'presentation');\n this._domNode.setAttribute('aria-hidden', 'true');\n this._shadow = (0,_base_browser_fastDomNode_js__WEBPACK_IMPORTED_MODULE_2__.createFastDomNode)(document.createElement('div'));\n this._shadow.setClassName('minimap-shadow-hidden');\n this._domNode.appendChild(this._shadow);\n this._canvas = (0,_base_browser_fastDomNode_js__WEBPACK_IMPORTED_MODULE_2__.createFastDomNode)(document.createElement('canvas'));\n this._canvas.setPosition('absolute');\n this._canvas.setLeft(0);\n this._domNode.appendChild(this._canvas);\n this._decorationsCanvas = (0,_base_browser_fastDomNode_js__WEBPACK_IMPORTED_MODULE_2__.createFastDomNode)(document.createElement('canvas'));\n this._decorationsCanvas.setPosition('absolute');\n this._decorationsCanvas.setClassName('minimap-decorations-layer');\n this._decorationsCanvas.setLeft(0);\n this._domNode.appendChild(this._decorationsCanvas);\n this._slider = (0,_base_browser_fastDomNode_js__WEBPACK_IMPORTED_MODULE_2__.createFastDomNode)(document.createElement('div'));\n this._slider.setPosition('absolute');\n this._slider.setClassName('minimap-slider');\n this._slider.setLayerHinting(true);\n this._slider.setContain('strict');\n this._domNode.appendChild(this._slider);\n this._sliderHorizontal = (0,_base_browser_fastDomNode_js__WEBPACK_IMPORTED_MODULE_2__.createFastDomNode)(document.createElement('div'));\n this._sliderHorizontal.setPosition('absolute');\n this._sliderHorizontal.setClassName('minimap-slider-horizontal');\n this._slider.appendChild(this._sliderHorizontal);\n this._applyLayout();\n this._pointerDownListener = _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_1__.addStandardDisposableListener(this._domNode.domNode, _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_1__.EventType.POINTER_DOWN, (e) => {\n e.preventDefault();\n const renderMinimap = this._model.options.renderMinimap;\n if (renderMinimap === 0 /* RenderMinimap.None */) {\n return;\n }\n if (!this._lastRenderData) {\n return;\n }\n if (this._model.options.size !== 'proportional') {\n if (e.button === 0 && this._lastRenderData) {\n // pretend the click occurred in the center of the slider\n const position = _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_1__.getDomNodePagePosition(this._slider.domNode);\n const initialPosY = position.top + position.height / 2;\n this._startSliderDragging(e, initialPosY, this._lastRenderData.renderedLayout);\n }\n return;\n }\n const minimapLineHeight = this._model.options.minimapLineHeight;\n const internalOffsetY = (this._model.options.canvasInnerHeight / this._model.options.canvasOuterHeight) * e.offsetY;\n const lineIndex = Math.floor(internalOffsetY / minimapLineHeight);\n let lineNumber = lineIndex + this._lastRenderData.renderedLayout.startLineNumber - this._lastRenderData.renderedLayout.topPaddingLineCount;\n lineNumber = Math.min(lineNumber, this._model.getLineCount());\n this._model.revealLineNumber(lineNumber);\n });\n this._sliderPointerMoveMonitor = new _base_browser_globalPointerMoveMonitor_js__WEBPACK_IMPORTED_MODULE_3__.GlobalPointerMoveMonitor();\n this._sliderPointerDownListener = _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_1__.addStandardDisposableListener(this._slider.domNode, _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_1__.EventType.POINTER_DOWN, (e) => {\n e.preventDefault();\n e.stopPropagation();\n if (e.button === 0 && this._lastRenderData) {\n this._startSliderDragging(e, e.pageY, this._lastRenderData.renderedLayout);\n }\n });\n this._gestureDisposable = _base_browser_touch_js__WEBPACK_IMPORTED_MODULE_16__.Gesture.addTarget(this._domNode.domNode);\n this._sliderTouchStartListener = _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_1__.addDisposableListener(this._domNode.domNode, _base_browser_touch_js__WEBPACK_IMPORTED_MODULE_16__.EventType.Start, (e) => {\n e.preventDefault();\n e.stopPropagation();\n if (this._lastRenderData) {\n this._slider.toggleClassName('active', true);\n this._gestureInProgress = true;\n this.scrollDueToTouchEvent(e);\n }\n }, { passive: false });\n this._sliderTouchMoveListener = _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_1__.addDisposableListener(this._domNode.domNode, _base_browser_touch_js__WEBPACK_IMPORTED_MODULE_16__.EventType.Change, (e) => {\n e.preventDefault();\n e.stopPropagation();\n if (this._lastRenderData && this._gestureInProgress) {\n this.scrollDueToTouchEvent(e);\n }\n }, { passive: false });\n this._sliderTouchEndListener = _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_1__.addStandardDisposableListener(this._domNode.domNode, _base_browser_touch_js__WEBPACK_IMPORTED_MODULE_16__.EventType.End, (e) => {\n e.preventDefault();\n e.stopPropagation();\n this._gestureInProgress = false;\n this._slider.toggleClassName('active', false);\n });\n }\n _startSliderDragging(e, initialPosY, initialSliderState) {\n if (!e.target || !(e.target instanceof Element)) {\n return;\n }\n const initialPosX = e.pageX;\n this._slider.toggleClassName('active', true);\n const handlePointerMove = (posy, posx) => {\n const minimapPosition = _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_1__.getDomNodePagePosition(this._domNode.domNode);\n const pointerOrthogonalDelta = Math.min(Math.abs(posx - initialPosX), Math.abs(posx - minimapPosition.left), Math.abs(posx - minimapPosition.left - minimapPosition.width));\n if (_base_common_platform_js__WEBPACK_IMPORTED_MODULE_5__.isWindows && pointerOrthogonalDelta > POINTER_DRAG_RESET_DISTANCE) {\n // The pointer has wondered away from the scrollbar => reset dragging\n this._model.setScrollTop(initialSliderState.scrollTop);\n return;\n }\n const pointerDelta = posy - initialPosY;\n this._model.setScrollTop(initialSliderState.getDesiredScrollTopFromDelta(pointerDelta));\n };\n if (e.pageY !== initialPosY) {\n handlePointerMove(e.pageY, initialPosX);\n }\n this._sliderPointerMoveMonitor.startMonitoring(e.target, e.pointerId, e.buttons, pointerMoveData => handlePointerMove(pointerMoveData.pageY, pointerMoveData.pageX), () => {\n this._slider.toggleClassName('active', false);\n });\n }\n scrollDueToTouchEvent(touch) {\n const startY = this._domNode.domNode.getBoundingClientRect().top;\n const scrollTop = this._lastRenderData.renderedLayout.getDesiredScrollTopFromTouchLocation(touch.pageY - startY);\n this._model.setScrollTop(scrollTop);\n }\n dispose() {\n this._pointerDownListener.dispose();\n this._sliderPointerMoveMonitor.dispose();\n this._sliderPointerDownListener.dispose();\n this._gestureDisposable.dispose();\n this._sliderTouchStartListener.dispose();\n this._sliderTouchMoveListener.dispose();\n this._sliderTouchEndListener.dispose();\n super.dispose();\n }\n _getMinimapDomNodeClassName() {\n const class_ = ['minimap'];\n if (this._model.options.showSlider === 'always') {\n class_.push('slider-always');\n }\n else {\n class_.push('slider-mouseover');\n }\n if (this._model.options.autohide) {\n class_.push('autohide');\n }\n return class_.join(' ');\n }\n getDomNode() {\n return this._domNode;\n }\n _applyLayout() {\n this._domNode.setLeft(this._model.options.minimapLeft);\n this._domNode.setWidth(this._model.options.minimapWidth);\n this._domNode.setHeight(this._model.options.minimapHeight);\n this._shadow.setHeight(this._model.options.minimapHeight);\n this._canvas.setWidth(this._model.options.canvasOuterWidth);\n this._canvas.setHeight(this._model.options.canvasOuterHeight);\n this._canvas.domNode.width = this._model.options.canvasInnerWidth;\n this._canvas.domNode.height = this._model.options.canvasInnerHeight;\n this._decorationsCanvas.setWidth(this._model.options.canvasOuterWidth);\n this._decorationsCanvas.setHeight(this._model.options.canvasOuterHeight);\n this._decorationsCanvas.domNode.width = this._model.options.canvasInnerWidth;\n this._decorationsCanvas.domNode.height = this._model.options.canvasInnerHeight;\n this._slider.setWidth(this._model.options.minimapWidth);\n }\n _getBuffer() {\n if (!this._buffers) {\n if (this._model.options.canvasInnerWidth > 0 && this._model.options.canvasInnerHeight > 0) {\n this._buffers = new MinimapBuffers(this._canvas.domNode.getContext('2d'), this._model.options.canvasInnerWidth, this._model.options.canvasInnerHeight, this._model.options.backgroundColor);\n }\n }\n return this._buffers ? this._buffers.getBuffer() : null;\n }\n // ---- begin view event handlers\n onDidChangeOptions() {\n this._lastRenderData = null;\n this._buffers = null;\n this._applyLayout();\n this._domNode.setClassName(this._getMinimapDomNodeClassName());\n }\n onSelectionChanged() {\n this._renderDecorations = true;\n return true;\n }\n onDecorationsChanged() {\n this._renderDecorations = true;\n return true;\n }\n onFlushed() {\n this._lastRenderData = null;\n return true;\n }\n onLinesChanged(changeFromLineNumber, changeCount) {\n if (this._lastRenderData) {\n return this._lastRenderData.onLinesChanged(changeFromLineNumber, changeCount);\n }\n return false;\n }\n onLinesDeleted(deleteFromLineNumber, deleteToLineNumber) {\n var _a;\n (_a = this._lastRenderData) === null || _a === void 0 ? void 0 : _a.onLinesDeleted(deleteFromLineNumber, deleteToLineNumber);\n return true;\n }\n onLinesInserted(insertFromLineNumber, insertToLineNumber) {\n var _a;\n (_a = this._lastRenderData) === null || _a === void 0 ? void 0 : _a.onLinesInserted(insertFromLineNumber, insertToLineNumber);\n return true;\n }\n onScrollChanged() {\n this._renderDecorations = true;\n return true;\n }\n onThemeChanged() {\n this._selectionColor = this._theme.getColor(_platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_14__.minimapSelection);\n this._renderDecorations = true;\n return true;\n }\n onTokensChanged(ranges) {\n if (this._lastRenderData) {\n return this._lastRenderData.onTokensChanged(ranges);\n }\n return false;\n }\n onTokensColorsChanged() {\n this._lastRenderData = null;\n this._buffers = null;\n return true;\n }\n onZonesChanged() {\n this._lastRenderData = null;\n return true;\n }\n // --- end event handlers\n render(renderingCtx) {\n const renderMinimap = this._model.options.renderMinimap;\n if (renderMinimap === 0 /* RenderMinimap.None */) {\n this._shadow.setClassName('minimap-shadow-hidden');\n this._sliderHorizontal.setWidth(0);\n this._sliderHorizontal.setHeight(0);\n return;\n }\n if (renderingCtx.scrollLeft + renderingCtx.viewportWidth >= renderingCtx.scrollWidth) {\n this._shadow.setClassName('minimap-shadow-hidden');\n }\n else {\n this._shadow.setClassName('minimap-shadow-visible');\n }\n const layout = MinimapLayout.create(this._model.options, renderingCtx.viewportStartLineNumber, renderingCtx.viewportEndLineNumber, renderingCtx.viewportStartLineNumberVerticalOffset, renderingCtx.viewportHeight, renderingCtx.viewportContainsWhitespaceGaps, this._model.getLineCount(), this._model.getRealLineCount(), renderingCtx.scrollTop, renderingCtx.scrollHeight, this._lastRenderData ? this._lastRenderData.renderedLayout : null);\n this._slider.setDisplay(layout.sliderNeeded ? 'block' : 'none');\n this._slider.setTop(layout.sliderTop);\n this._slider.setHeight(layout.sliderHeight);\n // Compute horizontal slider coordinates\n this._sliderHorizontal.setLeft(0);\n this._sliderHorizontal.setWidth(this._model.options.minimapWidth);\n this._sliderHorizontal.setTop(0);\n this._sliderHorizontal.setHeight(layout.sliderHeight);\n this.renderDecorations(layout);\n this._lastRenderData = this.renderLines(layout);\n }\n renderDecorations(layout) {\n if (this._renderDecorations) {\n this._renderDecorations = false;\n const selections = this._model.getSelections();\n selections.sort(_common_core_range_js__WEBPACK_IMPORTED_MODULE_10__.Range.compareRangesUsingStarts);\n const decorations = this._model.getMinimapDecorationsInViewport(layout.startLineNumber, layout.endLineNumber);\n decorations.sort((a, b) => (a.options.zIndex || 0) - (b.options.zIndex || 0));\n const { canvasInnerWidth, canvasInnerHeight } = this._model.options;\n const minimapLineHeight = this._model.options.minimapLineHeight;\n const minimapCharWidth = this._model.options.minimapCharWidth;\n const tabSize = this._model.getOptions().tabSize;\n const canvasContext = this._decorationsCanvas.domNode.getContext('2d');\n canvasContext.clearRect(0, 0, canvasInnerWidth, canvasInnerHeight);\n // We first need to render line highlights and then render decorations on top of those.\n // But we need to pick a single color for each line, and use that as a line highlight.\n // This needs to be the color of the decoration with the highest `zIndex`, but priority\n // is given to the selection.\n const highlightedLines = new ContiguousLineMap(layout.startLineNumber, layout.endLineNumber, false);\n this._renderSelectionLineHighlights(canvasContext, selections, highlightedLines, layout, minimapLineHeight);\n this._renderDecorationsLineHighlights(canvasContext, decorations, highlightedLines, layout, minimapLineHeight);\n const lineOffsetMap = new ContiguousLineMap(layout.startLineNumber, layout.endLineNumber, null);\n this._renderSelectionsHighlights(canvasContext, selections, lineOffsetMap, layout, minimapLineHeight, tabSize, minimapCharWidth, canvasInnerWidth);\n this._renderDecorationsHighlights(canvasContext, decorations, lineOffsetMap, layout, minimapLineHeight, tabSize, minimapCharWidth, canvasInnerWidth);\n }\n }\n _renderSelectionLineHighlights(canvasContext, selections, highlightedLines, layout, minimapLineHeight) {\n if (!this._selectionColor || this._selectionColor.isTransparent()) {\n return;\n }\n canvasContext.fillStyle = this._selectionColor.transparent(0.5).toString();\n let y1 = 0;\n let y2 = 0;\n for (const selection of selections) {\n const intersection = layout.intersectWithViewport(selection);\n if (!intersection) {\n // entirely outside minimap's viewport\n continue;\n }\n const [startLineNumber, endLineNumber] = intersection;\n for (let line = startLineNumber; line <= endLineNumber; line++) {\n highlightedLines.set(line, true);\n }\n const yy1 = layout.getYForLineNumber(startLineNumber, minimapLineHeight);\n const yy2 = layout.getYForLineNumber(endLineNumber, minimapLineHeight);\n if (y2 >= yy1) {\n // merge into previous\n y2 = yy2;\n }\n else {\n if (y2 > y1) {\n // flush\n canvasContext.fillRect(_common_config_editorOptions_js__WEBPACK_IMPORTED_MODULE_9__.MINIMAP_GUTTER_WIDTH, y1, canvasContext.canvas.width, y2 - y1);\n }\n y1 = yy1;\n y2 = yy2;\n }\n }\n if (y2 > y1) {\n // flush\n canvasContext.fillRect(_common_config_editorOptions_js__WEBPACK_IMPORTED_MODULE_9__.MINIMAP_GUTTER_WIDTH, y1, canvasContext.canvas.width, y2 - y1);\n }\n }\n _renderDecorationsLineHighlights(canvasContext, decorations, highlightedLines, layout, minimapLineHeight) {\n const highlightColors = new Map();\n // Loop backwards to hit first decorations with higher `zIndex`\n for (let i = decorations.length - 1; i >= 0; i--) {\n const decoration = decorations[i];\n const minimapOptions = decoration.options.minimap;\n if (!minimapOptions || minimapOptions.position !== _common_model_js__WEBPACK_IMPORTED_MODULE_18__.MinimapPosition.Inline) {\n continue;\n }\n const intersection = layout.intersectWithViewport(decoration.range);\n if (!intersection) {\n // entirely outside minimap's viewport\n continue;\n }\n const [startLineNumber, endLineNumber] = intersection;\n const decorationColor = minimapOptions.getColor(this._theme.value);\n if (!decorationColor || decorationColor.isTransparent()) {\n continue;\n }\n let highlightColor = highlightColors.get(decorationColor.toString());\n if (!highlightColor) {\n highlightColor = decorationColor.transparent(0.5).toString();\n highlightColors.set(decorationColor.toString(), highlightColor);\n }\n canvasContext.fillStyle = highlightColor;\n for (let line = startLineNumber; line <= endLineNumber; line++) {\n if (highlightedLines.has(line)) {\n continue;\n }\n highlightedLines.set(line, true);\n const y = layout.getYForLineNumber(startLineNumber, minimapLineHeight);\n canvasContext.fillRect(_common_config_editorOptions_js__WEBPACK_IMPORTED_MODULE_9__.MINIMAP_GUTTER_WIDTH, y, canvasContext.canvas.width, minimapLineHeight);\n }\n }\n }\n _renderSelectionsHighlights(canvasContext, selections, lineOffsetMap, layout, lineHeight, tabSize, characterWidth, canvasInnerWidth) {\n if (!this._selectionColor || this._selectionColor.isTransparent()) {\n return;\n }\n for (const selection of selections) {\n const intersection = layout.intersectWithViewport(selection);\n if (!intersection) {\n // entirely outside minimap's viewport\n continue;\n }\n const [startLineNumber, endLineNumber] = intersection;\n for (let line = startLineNumber; line <= endLineNumber; line++) {\n this.renderDecorationOnLine(canvasContext, lineOffsetMap, selection, this._selectionColor, layout, line, lineHeight, lineHeight, tabSize, characterWidth, canvasInnerWidth);\n }\n }\n }\n _renderDecorationsHighlights(canvasContext, decorations, lineOffsetMap, layout, minimapLineHeight, tabSize, characterWidth, canvasInnerWidth) {\n // Loop forwards to hit first decorations with lower `zIndex`\n for (const decoration of decorations) {\n const minimapOptions = decoration.options.minimap;\n if (!minimapOptions) {\n continue;\n }\n const intersection = layout.intersectWithViewport(decoration.range);\n if (!intersection) {\n // entirely outside minimap's viewport\n continue;\n }\n const [startLineNumber, endLineNumber] = intersection;\n const decorationColor = minimapOptions.getColor(this._theme.value);\n if (!decorationColor || decorationColor.isTransparent()) {\n continue;\n }\n for (let line = startLineNumber; line <= endLineNumber; line++) {\n switch (minimapOptions.position) {\n case _common_model_js__WEBPACK_IMPORTED_MODULE_18__.MinimapPosition.Inline:\n this.renderDecorationOnLine(canvasContext, lineOffsetMap, decoration.range, decorationColor, layout, line, minimapLineHeight, minimapLineHeight, tabSize, characterWidth, canvasInnerWidth);\n continue;\n case _common_model_js__WEBPACK_IMPORTED_MODULE_18__.MinimapPosition.Gutter: {\n const y = layout.getYForLineNumber(line, minimapLineHeight);\n const x = 2;\n this.renderDecoration(canvasContext, decorationColor, x, y, GUTTER_DECORATION_WIDTH, minimapLineHeight);\n continue;\n }\n }\n }\n }\n }\n renderDecorationOnLine(canvasContext, lineOffsetMap, decorationRange, decorationColor, layout, lineNumber, height, minimapLineHeight, tabSize, charWidth, canvasInnerWidth) {\n const y = layout.getYForLineNumber(lineNumber, minimapLineHeight);\n // Skip rendering the line if it's vertically outside our viewport\n if (y + height < 0 || y > this._model.options.canvasInnerHeight) {\n return;\n }\n const { startLineNumber, endLineNumber } = decorationRange;\n const startColumn = (startLineNumber === lineNumber ? decorationRange.startColumn : 1);\n const endColumn = (endLineNumber === lineNumber ? decorationRange.endColumn : this._model.getLineMaxColumn(lineNumber));\n const x1 = this.getXOffsetForPosition(lineOffsetMap, lineNumber, startColumn, tabSize, charWidth, canvasInnerWidth);\n const x2 = this.getXOffsetForPosition(lineOffsetMap, lineNumber, endColumn, tabSize, charWidth, canvasInnerWidth);\n this.renderDecoration(canvasContext, decorationColor, x1, y, x2 - x1, height);\n }\n getXOffsetForPosition(lineOffsetMap, lineNumber, column, tabSize, charWidth, canvasInnerWidth) {\n if (column === 1) {\n return _common_config_editorOptions_js__WEBPACK_IMPORTED_MODULE_9__.MINIMAP_GUTTER_WIDTH;\n }\n const minimumXOffset = (column - 1) * charWidth;\n if (minimumXOffset >= canvasInnerWidth) {\n // there is no need to look at actual characters,\n // as this column is certainly after the minimap width\n return canvasInnerWidth;\n }\n // Cache line offset data so that it is only read once per line\n let lineIndexToXOffset = lineOffsetMap.get(lineNumber);\n if (!lineIndexToXOffset) {\n const lineData = this._model.getLineContent(lineNumber);\n lineIndexToXOffset = [_common_config_editorOptions_js__WEBPACK_IMPORTED_MODULE_9__.MINIMAP_GUTTER_WIDTH];\n let prevx = _common_config_editorOptions_js__WEBPACK_IMPORTED_MODULE_9__.MINIMAP_GUTTER_WIDTH;\n for (let i = 1; i < lineData.length + 1; i++) {\n const charCode = lineData.charCodeAt(i - 1);\n const dx = charCode === 9 /* CharCode.Tab */\n ? tabSize * charWidth\n : _base_common_strings_js__WEBPACK_IMPORTED_MODULE_6__.isFullWidthCharacter(charCode)\n ? 2 * charWidth\n : charWidth;\n const x = prevx + dx;\n if (x >= canvasInnerWidth) {\n // no need to keep on going, as we've hit the canvas width\n lineIndexToXOffset[i] = canvasInnerWidth;\n break;\n }\n lineIndexToXOffset[i] = x;\n prevx = x;\n }\n lineOffsetMap.set(lineNumber, lineIndexToXOffset);\n }\n if (column - 1 < lineIndexToXOffset.length) {\n return lineIndexToXOffset[column - 1];\n }\n // goes over the canvas width\n return canvasInnerWidth;\n }\n renderDecoration(canvasContext, decorationColor, x, y, width, height) {\n canvasContext.fillStyle = decorationColor && decorationColor.toString() || '';\n canvasContext.fillRect(x, y, width, height);\n }\n renderLines(layout) {\n const startLineNumber = layout.startLineNumber;\n const endLineNumber = layout.endLineNumber;\n const minimapLineHeight = this._model.options.minimapLineHeight;\n // Check if nothing changed w.r.t. lines from last frame\n if (this._lastRenderData && this._lastRenderData.linesEquals(layout)) {\n const _lastData = this._lastRenderData._get();\n // Nice!! Nothing changed from last frame\n return new RenderData(layout, _lastData.imageData, _lastData.lines);\n }\n // Oh well!! We need to repaint some lines...\n const imageData = this._getBuffer();\n if (!imageData) {\n // 0 width or 0 height canvas, nothing to do\n return null;\n }\n // Render untouched lines by using last rendered data.\n const [_dirtyY1, _dirtyY2, needed] = InnerMinimap._renderUntouchedLines(imageData, layout.topPaddingLineCount, startLineNumber, endLineNumber, minimapLineHeight, this._lastRenderData);\n // Fetch rendering info from view model for rest of lines that need rendering.\n const lineInfo = this._model.getMinimapLinesRenderingData(startLineNumber, endLineNumber, needed);\n const tabSize = this._model.getOptions().tabSize;\n const defaultBackground = this._model.options.defaultBackgroundColor;\n const background = this._model.options.backgroundColor;\n const foregroundAlpha = this._model.options.foregroundAlpha;\n const tokensColorTracker = this._model.tokensColorTracker;\n const useLighterFont = tokensColorTracker.backgroundIsLight();\n const renderMinimap = this._model.options.renderMinimap;\n const charRenderer = this._model.options.charRenderer();\n const fontScale = this._model.options.fontScale;\n const minimapCharWidth = this._model.options.minimapCharWidth;\n const baseCharHeight = (renderMinimap === 1 /* RenderMinimap.Text */ ? 2 /* Constants.BASE_CHAR_HEIGHT */ : 2 /* Constants.BASE_CHAR_HEIGHT */ + 1);\n const renderMinimapLineHeight = baseCharHeight * fontScale;\n const innerLinePadding = (minimapLineHeight > renderMinimapLineHeight ? Math.floor((minimapLineHeight - renderMinimapLineHeight) / 2) : 0);\n // Render the rest of lines\n const backgroundA = background.a / 255;\n const renderBackground = new _common_core_rgba_js__WEBPACK_IMPORTED_MODULE_11__.RGBA8(Math.round((background.r - defaultBackground.r) * backgroundA + defaultBackground.r), Math.round((background.g - defaultBackground.g) * backgroundA + defaultBackground.g), Math.round((background.b - defaultBackground.b) * backgroundA + defaultBackground.b), 255);\n let dy = layout.topPaddingLineCount * minimapLineHeight;\n const renderedLines = [];\n for (let lineIndex = 0, lineCount = endLineNumber - startLineNumber + 1; lineIndex < lineCount; lineIndex++) {\n if (needed[lineIndex]) {\n InnerMinimap._renderLine(imageData, renderBackground, background.a, useLighterFont, renderMinimap, minimapCharWidth, tokensColorTracker, foregroundAlpha, charRenderer, dy, innerLinePadding, tabSize, lineInfo[lineIndex], fontScale, minimapLineHeight);\n }\n renderedLines[lineIndex] = new MinimapLine(dy);\n dy += minimapLineHeight;\n }\n const dirtyY1 = (_dirtyY1 === -1 ? 0 : _dirtyY1);\n const dirtyY2 = (_dirtyY2 === -1 ? imageData.height : _dirtyY2);\n const dirtyHeight = dirtyY2 - dirtyY1;\n // Finally, paint to the canvas\n const ctx = this._canvas.domNode.getContext('2d');\n ctx.putImageData(imageData, 0, 0, 0, dirtyY1, imageData.width, dirtyHeight);\n // Save rendered data for reuse on next frame if possible\n return new RenderData(layout, imageData, renderedLines);\n }\n static _renderUntouchedLines(target, topPaddingLineCount, startLineNumber, endLineNumber, minimapLineHeight, lastRenderData) {\n const needed = [];\n if (!lastRenderData) {\n for (let i = 0, len = endLineNumber - startLineNumber + 1; i < len; i++) {\n needed[i] = true;\n }\n return [-1, -1, needed];\n }\n const _lastData = lastRenderData._get();\n const lastTargetData = _lastData.imageData.data;\n const lastStartLineNumber = _lastData.rendLineNumberStart;\n const lastLines = _lastData.lines;\n const lastLinesLength = lastLines.length;\n const WIDTH = target.width;\n const targetData = target.data;\n const maxDestPixel = (endLineNumber - startLineNumber + 1) * minimapLineHeight * WIDTH * 4;\n let dirtyPixel1 = -1; // the pixel offset up to which all the data is equal to the prev frame\n let dirtyPixel2 = -1; // the pixel offset after which all the data is equal to the prev frame\n let copySourceStart = -1;\n let copySourceEnd = -1;\n let copyDestStart = -1;\n let copyDestEnd = -1;\n let dest_dy = topPaddingLineCount * minimapLineHeight;\n for (let lineNumber = startLineNumber; lineNumber <= endLineNumber; lineNumber++) {\n const lineIndex = lineNumber - startLineNumber;\n const lastLineIndex = lineNumber - lastStartLineNumber;\n const source_dy = (lastLineIndex >= 0 && lastLineIndex < lastLinesLength ? lastLines[lastLineIndex].dy : -1);\n if (source_dy === -1) {\n needed[lineIndex] = true;\n dest_dy += minimapLineHeight;\n continue;\n }\n const sourceStart = source_dy * WIDTH * 4;\n const sourceEnd = (source_dy + minimapLineHeight) * WIDTH * 4;\n const destStart = dest_dy * WIDTH * 4;\n const destEnd = (dest_dy + minimapLineHeight) * WIDTH * 4;\n if (copySourceEnd === sourceStart && copyDestEnd === destStart) {\n // contiguous zone => extend copy request\n copySourceEnd = sourceEnd;\n copyDestEnd = destEnd;\n }\n else {\n if (copySourceStart !== -1) {\n // flush existing copy request\n targetData.set(lastTargetData.subarray(copySourceStart, copySourceEnd), copyDestStart);\n if (dirtyPixel1 === -1 && copySourceStart === 0 && copySourceStart === copyDestStart) {\n dirtyPixel1 = copySourceEnd;\n }\n if (dirtyPixel2 === -1 && copySourceEnd === maxDestPixel && copySourceStart === copyDestStart) {\n dirtyPixel2 = copySourceStart;\n }\n }\n copySourceStart = sourceStart;\n copySourceEnd = sourceEnd;\n copyDestStart = destStart;\n copyDestEnd = destEnd;\n }\n needed[lineIndex] = false;\n dest_dy += minimapLineHeight;\n }\n if (copySourceStart !== -1) {\n // flush existing copy request\n targetData.set(lastTargetData.subarray(copySourceStart, copySourceEnd), copyDestStart);\n if (dirtyPixel1 === -1 && copySourceStart === 0 && copySourceStart === copyDestStart) {\n dirtyPixel1 = copySourceEnd;\n }\n if (dirtyPixel2 === -1 && copySourceEnd === maxDestPixel && copySourceStart === copyDestStart) {\n dirtyPixel2 = copySourceStart;\n }\n }\n const dirtyY1 = (dirtyPixel1 === -1 ? -1 : dirtyPixel1 / (WIDTH * 4));\n const dirtyY2 = (dirtyPixel2 === -1 ? -1 : dirtyPixel2 / (WIDTH * 4));\n return [dirtyY1, dirtyY2, needed];\n }\n static _renderLine(target, backgroundColor, backgroundAlpha, useLighterFont, renderMinimap, charWidth, colorTracker, foregroundAlpha, minimapCharRenderer, dy, innerLinePadding, tabSize, lineData, fontScale, minimapLineHeight) {\n const content = lineData.content;\n const tokens = lineData.tokens;\n const maxDx = target.width - charWidth;\n const force1pxHeight = (minimapLineHeight === 1);\n let dx = _common_config_editorOptions_js__WEBPACK_IMPORTED_MODULE_9__.MINIMAP_GUTTER_WIDTH;\n let charIndex = 0;\n let tabsCharDelta = 0;\n for (let tokenIndex = 0, tokensLen = tokens.getCount(); tokenIndex < tokensLen; tokenIndex++) {\n const tokenEndIndex = tokens.getEndOffset(tokenIndex);\n const tokenColorId = tokens.getForeground(tokenIndex);\n const tokenColor = colorTracker.getColor(tokenColorId);\n for (; charIndex < tokenEndIndex; charIndex++) {\n if (dx > maxDx) {\n // hit edge of minimap\n return;\n }\n const charCode = content.charCodeAt(charIndex);\n if (charCode === 9 /* CharCode.Tab */) {\n const insertSpacesCount = tabSize - (charIndex + tabsCharDelta) % tabSize;\n tabsCharDelta += insertSpacesCount - 1;\n // No need to render anything since tab is invisible\n dx += insertSpacesCount * charWidth;\n }\n else if (charCode === 32 /* CharCode.Space */) {\n // No need to render anything since space is invisible\n dx += charWidth;\n }\n else {\n // Render twice for a full width character\n const count = _base_common_strings_js__WEBPACK_IMPORTED_MODULE_6__.isFullWidthCharacter(charCode) ? 2 : 1;\n for (let i = 0; i < count; i++) {\n if (renderMinimap === 2 /* RenderMinimap.Blocks */) {\n minimapCharRenderer.blockRenderChar(target, dx, dy + innerLinePadding, tokenColor, foregroundAlpha, backgroundColor, backgroundAlpha, force1pxHeight);\n }\n else { // RenderMinimap.Text\n minimapCharRenderer.renderChar(target, dx, dy + innerLinePadding, charCode, tokenColor, foregroundAlpha, backgroundColor, backgroundAlpha, fontScale, useLighterFont, force1pxHeight);\n }\n dx += charWidth;\n if (dx > maxDx) {\n // hit edge of minimap\n return;\n }\n }\n }\n }\n }\n }\n}\nclass ContiguousLineMap {\n constructor(startLineNumber, endLineNumber, defaultValue) {\n this._startLineNumber = startLineNumber;\n this._endLineNumber = endLineNumber;\n this._defaultValue = defaultValue;\n this._values = [];\n for (let i = 0, count = this._endLineNumber - this._startLineNumber + 1; i < count; i++) {\n this._values[i] = defaultValue;\n }\n }\n has(lineNumber) {\n return (this.get(lineNumber) !== this._defaultValue);\n }\n set(lineNumber, value) {\n if (lineNumber < this._startLineNumber || lineNumber > this._endLineNumber) {\n return;\n }\n this._values[lineNumber - this._startLineNumber] = value;\n }\n get(lineNumber) {\n if (lineNumber < this._startLineNumber || lineNumber > this._endLineNumber) {\n return this._defaultValue;\n }\n return this._values[lineNumber - this._startLineNumber];\n }\n}\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/browser/viewParts/minimap/minimap.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/browser/viewParts/minimap/minimapCharRenderer.js":
/*!***************************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/browser/viewParts/minimap/minimapCharRenderer.js ***!
\***************************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ MinimapCharRenderer: () => (/* binding */ MinimapCharRenderer)\n/* harmony export */ });\n/* harmony import */ var _minimapCharSheet_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./minimapCharSheet.js */ \"./node_modules/monaco-editor/esm/vs/editor/browser/viewParts/minimap/minimapCharSheet.js\");\n/* harmony import */ var _base_common_uint_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../base/common/uint.js */ \"./node_modules/monaco-editor/esm/vs/base/common/uint.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n\nclass MinimapCharRenderer {\n constructor(charData, scale) {\n this.scale = scale;\n this._minimapCharRendererBrand = undefined;\n this.charDataNormal = MinimapCharRenderer.soften(charData, 12 / 15);\n this.charDataLight = MinimapCharRenderer.soften(charData, 50 / 60);\n }\n static soften(input, ratio) {\n const result = new Uint8ClampedArray(input.length);\n for (let i = 0, len = input.length; i < len; i++) {\n result[i] = (0,_base_common_uint_js__WEBPACK_IMPORTED_MODULE_1__.toUint8)(input[i] * ratio);\n }\n return result;\n }\n renderChar(target, dx, dy, chCode, color, foregroundAlpha, backgroundColor, backgroundAlpha, fontScale, useLighterFont, force1pxHeight) {\n const charWidth = 1 /* Constants.BASE_CHAR_WIDTH */ * this.scale;\n const charHeight = 2 /* Constants.BASE_CHAR_HEIGHT */ * this.scale;\n const renderHeight = (force1pxHeight ? 1 : charHeight);\n if (dx + charWidth > target.width || dy + renderHeight > target.height) {\n console.warn('bad render request outside image data');\n return;\n }\n const charData = useLighterFont ? this.charDataLight : this.charDataNormal;\n const charIndex = (0,_minimapCharSheet_js__WEBPACK_IMPORTED_MODULE_0__.getCharIndex)(chCode, fontScale);\n const destWidth = target.width * 4 /* Constants.RGBA_CHANNELS_CNT */;\n const backgroundR = backgroundColor.r;\n const backgroundG = backgroundColor.g;\n const backgroundB = backgroundColor.b;\n const deltaR = color.r - backgroundR;\n const deltaG = color.g - backgroundG;\n const deltaB = color.b - backgroundB;\n const destAlpha = Math.max(foregroundAlpha, backgroundAlpha);\n const dest = target.data;\n let sourceOffset = charIndex * charWidth * charHeight;\n let row = dy * destWidth + dx * 4 /* Constants.RGBA_CHANNELS_CNT */;\n for (let y = 0; y < renderHeight; y++) {\n let column = row;\n for (let x = 0; x < charWidth; x++) {\n const c = (charData[sourceOffset++] / 255) * (foregroundAlpha / 255);\n dest[column++] = backgroundR + deltaR * c;\n dest[column++] = backgroundG + deltaG * c;\n dest[column++] = backgroundB + deltaB * c;\n dest[column++] = destAlpha;\n }\n row += destWidth;\n }\n }\n blockRenderChar(target, dx, dy, color, foregroundAlpha, backgroundColor, backgroundAlpha, force1pxHeight) {\n const charWidth = 1 /* Constants.BASE_CHAR_WIDTH */ * this.scale;\n const charHeight = 2 /* Constants.BASE_CHAR_HEIGHT */ * this.scale;\n const renderHeight = (force1pxHeight ? 1 : charHeight);\n if (dx + charWidth > target.width || dy + renderHeight > target.height) {\n console.warn('bad render request outside image data');\n return;\n }\n const destWidth = target.width * 4 /* Constants.RGBA_CHANNELS_CNT */;\n const c = 0.5 * (foregroundAlpha / 255);\n const backgroundR = backgroundColor.r;\n const backgroundG = backgroundColor.g;\n const backgroundB = backgroundColor.b;\n const deltaR = color.r - backgroundR;\n const deltaG = color.g - backgroundG;\n const deltaB = color.b - backgroundB;\n const colorR = backgroundR + deltaR * c;\n const colorG = backgroundG + deltaG * c;\n const colorB = backgroundB + deltaB * c;\n const destAlpha = Math.max(foregroundAlpha, backgroundAlpha);\n const dest = target.data;\n let row = dy * destWidth + dx * 4 /* Constants.RGBA_CHANNELS_CNT */;\n for (let y = 0; y < renderHeight; y++) {\n let column = row;\n for (let x = 0; x < charWidth; x++) {\n dest[column++] = colorR;\n dest[column++] = colorG;\n dest[column++] = colorB;\n dest[column++] = destAlpha;\n }\n row += destWidth;\n }\n }\n}\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/browser/viewParts/minimap/minimapCharRenderer.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/browser/viewParts/minimap/minimapCharRendererFactory.js":
/*!**********************************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/browser/viewParts/minimap/minimapCharRendererFactory.js ***!
\**********************************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ MinimapCharRendererFactory: () => (/* binding */ MinimapCharRendererFactory)\n/* harmony export */ });\n/* harmony import */ var _minimapCharRenderer_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./minimapCharRenderer.js */ \"./node_modules/monaco-editor/esm/vs/editor/browser/viewParts/minimap/minimapCharRenderer.js\");\n/* harmony import */ var _minimapCharSheet_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./minimapCharSheet.js */ \"./node_modules/monaco-editor/esm/vs/editor/browser/viewParts/minimap/minimapCharSheet.js\");\n/* harmony import */ var _minimapPreBaked_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./minimapPreBaked.js */ \"./node_modules/monaco-editor/esm/vs/editor/browser/viewParts/minimap/minimapPreBaked.js\");\n/* harmony import */ var _base_common_uint_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../../../base/common/uint.js */ \"./node_modules/monaco-editor/esm/vs/base/common/uint.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n\n\n\n/**\n * Creates character renderers. It takes a 'scale' that determines how large\n * characters should be drawn. Using this, it draws data into a canvas and\n * then downsamples the characters as necessary for the current display.\n * This makes rendering more efficient, rather than drawing a full (tiny)\n * font, or downsampling in real-time.\n */\nclass MinimapCharRendererFactory {\n /**\n * Creates a new character renderer factory with the given scale.\n */\n static create(scale, fontFamily) {\n // renderers are immutable. By default we'll 'create' a new minimap\n // character renderer whenever we switch editors, no need to do extra work.\n if (this.lastCreated && scale === this.lastCreated.scale && fontFamily === this.lastFontFamily) {\n return this.lastCreated;\n }\n let factory;\n if (_minimapPreBaked_js__WEBPACK_IMPORTED_MODULE_2__.prebakedMiniMaps[scale]) {\n factory = new _minimapCharRenderer_js__WEBPACK_IMPORTED_MODULE_0__.MinimapCharRenderer(_minimapPreBaked_js__WEBPACK_IMPORTED_MODULE_2__.prebakedMiniMaps[scale](), scale);\n }\n else {\n factory = MinimapCharRendererFactory.createFromSampleData(MinimapCharRendererFactory.createSampleData(fontFamily).data, scale);\n }\n this.lastFontFamily = fontFamily;\n this.lastCreated = factory;\n return factory;\n }\n /**\n * Creates the font sample data, writing to a canvas.\n */\n static createSampleData(fontFamily) {\n const canvas = document.createElement('canvas');\n const ctx = canvas.getContext('2d');\n canvas.style.height = `${16 /* Constants.SAMPLED_CHAR_HEIGHT */}px`;\n canvas.height = 16 /* Constants.SAMPLED_CHAR_HEIGHT */;\n canvas.width = 96 /* Constants.CHAR_COUNT */ * 10 /* Constants.SAMPLED_CHAR_WIDTH */;\n canvas.style.width = 96 /* Constants.CHAR_COUNT */ * 10 /* Constants.SAMPLED_CHAR_WIDTH */ + 'px';\n ctx.fillStyle = '#ffffff';\n ctx.font = `bold ${16 /* Constants.SAMPLED_CHAR_HEIGHT */}px ${fontFamily}`;\n ctx.textBaseline = 'middle';\n let x = 0;\n for (const code of _minimapCharSheet_js__WEBPACK_IMPORTED_MODULE_1__.allCharCodes) {\n ctx.fillText(String.fromCharCode(code), x, 16 /* Constants.SAMPLED_CHAR_HEIGHT */ / 2);\n x += 10 /* Constants.SAMPLED_CHAR_WIDTH */;\n }\n return ctx.getImageData(0, 0, 96 /* Constants.CHAR_COUNT */ * 10 /* Constants.SAMPLED_CHAR_WIDTH */, 16 /* Constants.SAMPLED_CHAR_HEIGHT */);\n }\n /**\n * Creates a character renderer from the canvas sample data.\n */\n static createFromSampleData(source, scale) {\n const expectedLength = 16 /* Constants.SAMPLED_CHAR_HEIGHT */ * 10 /* Constants.SAMPLED_CHAR_WIDTH */ * 4 /* Constants.RGBA_CHANNELS_CNT */ * 96 /* Constants.CHAR_COUNT */;\n if (source.length !== expectedLength) {\n throw new Error('Unexpected source in MinimapCharRenderer');\n }\n const charData = MinimapCharRendererFactory._downsample(source, scale);\n return new _minimapCharRenderer_js__WEBPACK_IMPORTED_MODULE_0__.MinimapCharRenderer(charData, scale);\n }\n static _downsampleChar(source, sourceOffset, dest, destOffset, scale) {\n const width = 1 /* Constants.BASE_CHAR_WIDTH */ * scale;\n const height = 2 /* Constants.BASE_CHAR_HEIGHT */ * scale;\n let targetIndex = destOffset;\n let brightest = 0;\n // This is essentially an ad-hoc rescaling algorithm. Standard approaches\n // like bicubic interpolation are awesome for scaling between image sizes,\n // but don't work so well when scaling to very small pixel values, we end\n // up with blurry, indistinct forms.\n //\n // The approach taken here is simply mapping each source pixel to the target\n // pixels, and taking the weighted values for all pixels in each, and then\n // averaging them out. Finally we apply an intensity boost in _downsample,\n // since when scaling to the smallest pixel sizes there's more black space\n // which causes characters to be much less distinct.\n for (let y = 0; y < height; y++) {\n // 1. For this destination pixel, get the source pixels we're sampling\n // from (x1, y1) to the next pixel (x2, y2)\n const sourceY1 = (y / height) * 16 /* Constants.SAMPLED_CHAR_HEIGHT */;\n const sourceY2 = ((y + 1) / height) * 16 /* Constants.SAMPLED_CHAR_HEIGHT */;\n for (let x = 0; x < width; x++) {\n const sourceX1 = (x / width) * 10 /* Constants.SAMPLED_CHAR_WIDTH */;\n const sourceX2 = ((x + 1) / width) * 10 /* Constants.SAMPLED_CHAR_WIDTH */;\n // 2. Sample all of them, summing them up and weighting them. Similar\n // to bilinear interpolation.\n let value = 0;\n let samples = 0;\n for (let sy = sourceY1; sy < sourceY2; sy++) {\n const sourceRow = sourceOffset + Math.floor(sy) * 3840 /* Constants.RGBA_SAMPLED_ROW_WIDTH */;\n const yBalance = 1 - (sy - Math.floor(sy));\n for (let sx = sourceX1; sx < sourceX2; sx++) {\n const xBalance = 1 - (sx - Math.floor(sx));\n const sourceIndex = sourceRow + Math.floor(sx) * 4 /* Constants.RGBA_CHANNELS_CNT */;\n const weight = xBalance * yBalance;\n samples += weight;\n value += ((source[sourceIndex] * source[sourceIndex + 3]) / 255) * weight;\n }\n }\n const final = value / samples;\n brightest = Math.max(brightest, final);\n dest[targetIndex++] = (0,_base_common_uint_js__WEBPACK_IMPORTED_MODULE_3__.toUint8)(final);\n }\n }\n return brightest;\n }\n static _downsample(data, scale) {\n const pixelsPerCharacter = 2 /* Constants.BASE_CHAR_HEIGHT */ * scale * 1 /* Constants.BASE_CHAR_WIDTH */ * scale;\n const resultLen = pixelsPerCharacter * 96 /* Constants.CHAR_COUNT */;\n const result = new Uint8ClampedArray(resultLen);\n let resultOffset = 0;\n let sourceOffset = 0;\n let brightest = 0;\n for (let charIndex = 0; charIndex < 96 /* Constants.CHAR_COUNT */; charIndex++) {\n brightest = Math.max(brightest, this._downsampleChar(data, sourceOffset, result, resultOffset, scale));\n resultOffset += pixelsPerCharacter;\n sourceOffset += 10 /* Constants.SAMPLED_CHAR_WIDTH */ * 4 /* Constants.RGBA_CHANNELS_CNT */;\n }\n if (brightest > 0) {\n const adjust = 255 / brightest;\n for (let i = 0; i < resultLen; i++) {\n result[i] *= adjust;\n }\n }\n return result;\n }\n}\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/browser/viewParts/minimap/minimapCharRendererFactory.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/browser/viewParts/minimap/minimapCharSheet.js":
/*!************************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/browser/viewParts/minimap/minimapCharSheet.js ***!
\************************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ allCharCodes: () => (/* binding */ allCharCodes),\n/* harmony export */ getCharIndex: () => (/* binding */ getCharIndex)\n/* harmony export */ });\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\nconst allCharCodes = (() => {\n const v = [];\n for (let i = 32 /* Constants.START_CH_CODE */; i <= 126 /* Constants.END_CH_CODE */; i++) {\n v.push(i);\n }\n v.push(65533 /* Constants.UNKNOWN_CODE */);\n return v;\n})();\nconst getCharIndex = (chCode, fontScale) => {\n chCode -= 32 /* Constants.START_CH_CODE */;\n if (chCode < 0 || chCode > 96 /* Constants.CHAR_COUNT */) {\n if (fontScale <= 2) {\n // for smaller scales, we can get away with using any ASCII character...\n return (chCode + 96 /* Constants.CHAR_COUNT */) % 96 /* Constants.CHAR_COUNT */;\n }\n return 96 /* Constants.CHAR_COUNT */ - 1; // unknown symbol\n }\n return chCode;\n};\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/browser/viewParts/minimap/minimapCharSheet.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/browser/viewParts/minimap/minimapPreBaked.js":
/*!***********************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/browser/viewParts/minimap/minimapPreBaked.js ***!
\***********************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ prebakedMiniMaps: () => (/* binding */ prebakedMiniMaps)\n/* harmony export */ });\n/* harmony import */ var _base_common_functional_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../../base/common/functional.js */ \"./node_modules/monaco-editor/esm/vs/base/common/functional.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\nconst charTable = {\n '0': 0,\n '1': 1,\n '2': 2,\n '3': 3,\n '4': 4,\n '5': 5,\n '6': 6,\n '7': 7,\n '8': 8,\n '9': 9,\n A: 10,\n B: 11,\n C: 12,\n D: 13,\n E: 14,\n F: 15\n};\nconst decodeData = (str) => {\n const output = new Uint8ClampedArray(str.length / 2);\n for (let i = 0; i < str.length; i += 2) {\n output[i >> 1] = (charTable[str[i]] << 4) | (charTable[str[i + 1]] & 0xF);\n }\n return output;\n};\n/*\nconst encodeData = (data: Uint8ClampedArray, length: string) => {\n const chars = '0123456789ABCDEF';\n let output = '';\n for (let i = 0; i < data.length; i++) {\n output += chars[data[i] >> 4] + chars[data[i] & 0xf];\n }\n return output;\n};\n*/\n/**\n * Map of minimap scales to prebaked sample data at those scales. We don't\n * sample much larger data, because then font family becomes visible, which\n * is use-configurable.\n */\nconst prebakedMiniMaps = {\n 1: (0,_base_common_functional_js__WEBPACK_IMPORTED_MODULE_0__.createSingleCallFunction)(() => decodeData('0000511D6300CF609C709645A78432005642574171487021003C451900274D35D762755E8B629C5BA856AF57BA649530C167D1512A272A3F6038604460398526BCA2A968DB6F8957C768BE5FBE2FB467CF5D8D5B795DC7625B5DFF50DE64C466DB2FC47CD860A65E9A2EB96CB54CE06DA763AB2EA26860524D3763536601005116008177A8705E53AB738E6A982F88BAA35B5F5B626D9C636B449B737E5B7B678598869A662F6B5B8542706C704C80736A607578685B70594A49715A4522E792')),\n 2: (0,_base_common_functional_js__WEBPACK_IMPORTED_MODULE_0__.createSingleCallFunction)(() => decodeData('000000000000000055394F383D2800008B8B1F210002000081B1CBCBCC820000847AAF6B9AAF2119BE08B8881AD60000A44FD07DCCF107015338130C00000000385972265F390B406E2437634B4B48031B12B8A0847000001E15B29A402F0000000000004B33460B00007A752C2A0000000000004D3900000084394B82013400ABA5CFC7AD9C0302A45A3E5A98AB000089A43382D97900008BA54AA087A70A0248A6A7AE6DBE0000BF6F94987EA40A01A06DCFA7A7A9030496C32F77891D0000A99FB1A0AFA80603B29AB9CA75930D010C0948354D3900000C0948354F37460D0028BE673D8400000000AF9D7B6E00002B007AA8933400007AA642675C2700007984CFB9C3985B768772A8A6B7B20000CAAECAAFC4B700009F94A6009F840009D09F9BA4CA9C0000CC8FC76DC87F0000C991C472A2000000A894A48CA7B501079BA2C9C69BA20000B19A5D3FA89000005CA6009DA2960901B0A7F0669FB200009D009E00B7890000DAD0F5D092820000D294D4C48BD10000B5A7A4A3B1A50402CAB6CBA6A2000000B5A7A4A3B1A8044FCDADD19D9CB00000B7778F7B8AAE0803C9AB5D3F5D3F00009EA09EA0BAB006039EA0989A8C7900009B9EF4D6B7C00000A9A7816CACA80000ABAC84705D3F000096DA635CDC8C00006F486F266F263D4784006124097B00374F6D2D6D2D6D4A3A95872322000000030000000000008D8939130000000000002E22A5C9CBC70600AB25C0B5C9B400061A2DB04CA67001082AA6BEBEBFC606002321DACBC19E03087AA08B6768380000282FBAC0B8CA7A88AD25BBA5A29900004C396C5894A6000040485A6E356E9442A32CD17EADA70000B4237923628600003E2DE9C1D7B500002F25BBA5A2990000231DB6AFB4A804023025C0B5CAB588062B2CBDBEC0C706882435A75CA20000002326BD6A82A908048B4B9A5A668000002423A09CB4BB060025259C9D8A7900001C1FCAB2C7C700002A2A9387ABA200002626A4A47D6E9D14333163A0C87500004B6F9C2D643A257049364936493647358A34438355497F1A0000A24C1D590000D38DFFBDD4CD3126'))\n};\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/browser/viewParts/minimap/minimapPreBaked.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/browser/viewParts/overlayWidgets/overlayWidgets.js":
/*!*****************************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/browser/viewParts/overlayWidgets/overlayWidgets.js ***!
\*****************************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ ViewOverlayWidgets: () => (/* binding */ ViewOverlayWidgets)\n/* harmony export */ });\n/* harmony import */ var _overlayWidgets_css__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./overlayWidgets.css */ \"./node_modules/monaco-editor/esm/vs/editor/browser/viewParts/overlayWidgets/overlayWidgets.css\");\n/* harmony import */ var _base_browser_fastDomNode_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../base/browser/fastDomNode.js */ \"./node_modules/monaco-editor/esm/vs/base/browser/fastDomNode.js\");\n/* harmony import */ var _view_viewPart_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../view/viewPart.js */ \"./node_modules/monaco-editor/esm/vs/editor/browser/view/viewPart.js\");\n/* harmony import */ var _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../../../base/browser/dom.js */ \"./node_modules/monaco-editor/esm/vs/base/browser/dom.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n\n\n\nclass ViewOverlayWidgets extends _view_viewPart_js__WEBPACK_IMPORTED_MODULE_2__.ViewPart {\n constructor(context, viewDomNode) {\n super(context);\n this._viewDomNode = viewDomNode;\n const options = this._context.configuration.options;\n const layoutInfo = options.get(144 /* EditorOption.layoutInfo */);\n this._widgets = {};\n this._verticalScrollbarWidth = layoutInfo.verticalScrollbarWidth;\n this._minimapWidth = layoutInfo.minimap.minimapWidth;\n this._horizontalScrollbarHeight = layoutInfo.horizontalScrollbarHeight;\n this._editorHeight = layoutInfo.height;\n this._editorWidth = layoutInfo.width;\n this._viewDomNodeRect = { top: 0, left: 0, width: 0, height: 0 };\n this._domNode = (0,_base_browser_fastDomNode_js__WEBPACK_IMPORTED_MODULE_1__.createFastDomNode)(document.createElement('div'));\n _view_viewPart_js__WEBPACK_IMPORTED_MODULE_2__.PartFingerprints.write(this._domNode, 4 /* PartFingerprint.OverlayWidgets */);\n this._domNode.setClassName('overlayWidgets');\n this.overflowingOverlayWidgetsDomNode = (0,_base_browser_fastDomNode_js__WEBPACK_IMPORTED_MODULE_1__.createFastDomNode)(document.createElement('div'));\n _view_viewPart_js__WEBPACK_IMPORTED_MODULE_2__.PartFingerprints.write(this.overflowingOverlayWidgetsDomNode, 5 /* PartFingerprint.OverflowingOverlayWidgets */);\n this.overflowingOverlayWidgetsDomNode.setClassName('overflowingOverlayWidgets');\n }\n dispose() {\n super.dispose();\n this._widgets = {};\n }\n getDomNode() {\n return this._domNode;\n }\n // ---- begin view event handlers\n onConfigurationChanged(e) {\n const options = this._context.configuration.options;\n const layoutInfo = options.get(144 /* EditorOption.layoutInfo */);\n this._verticalScrollbarWidth = layoutInfo.verticalScrollbarWidth;\n this._minimapWidth = layoutInfo.minimap.minimapWidth;\n this._horizontalScrollbarHeight = layoutInfo.horizontalScrollbarHeight;\n this._editorHeight = layoutInfo.height;\n this._editorWidth = layoutInfo.width;\n return true;\n }\n // ---- end view event handlers\n addWidget(widget) {\n const domNode = (0,_base_browser_fastDomNode_js__WEBPACK_IMPORTED_MODULE_1__.createFastDomNode)(widget.getDomNode());\n this._widgets[widget.getId()] = {\n widget: widget,\n preference: null,\n domNode: domNode\n };\n // This is sync because a widget wants to be in the dom\n domNode.setPosition('absolute');\n domNode.setAttribute('widgetId', widget.getId());\n if (widget.allowEditorOverflow) {\n this.overflowingOverlayWidgetsDomNode.appendChild(domNode);\n }\n else {\n this._domNode.appendChild(domNode);\n }\n this.setShouldRender();\n this._updateMaxMinWidth();\n }\n setWidgetPosition(widget, preference) {\n const widgetData = this._widgets[widget.getId()];\n if (widgetData.preference === preference) {\n this._updateMaxMinWidth();\n return false;\n }\n widgetData.preference = preference;\n this.setShouldRender();\n this._updateMaxMinWidth();\n return true;\n }\n removeWidget(widget) {\n const widgetId = widget.getId();\n if (this._widgets.hasOwnProperty(widgetId)) {\n const widgetData = this._widgets[widgetId];\n const domNode = widgetData.domNode.domNode;\n delete this._widgets[widgetId];\n domNode.remove();\n this.setShouldRender();\n this._updateMaxMinWidth();\n }\n }\n _updateMaxMinWidth() {\n var _a, _b;\n let maxMinWidth = 0;\n const keys = Object.keys(this._widgets);\n for (let i = 0, len = keys.length; i < len; i++) {\n const widgetId = keys[i];\n const widget = this._widgets[widgetId];\n const widgetMinWidthInPx = (_b = (_a = widget.widget).getMinContentWidthInPx) === null || _b === void 0 ? void 0 : _b.call(_a);\n if (typeof widgetMinWidthInPx !== 'undefined') {\n maxMinWidth = Math.max(maxMinWidth, widgetMinWidthInPx);\n }\n }\n this._context.viewLayout.setOverlayWidgetsMinWidth(maxMinWidth);\n }\n _renderWidget(widgetData) {\n const domNode = widgetData.domNode;\n if (widgetData.preference === null) {\n domNode.setTop('');\n return;\n }\n if (widgetData.preference === 0 /* OverlayWidgetPositionPreference.TOP_RIGHT_CORNER */) {\n domNode.setTop(0);\n domNode.setRight((2 * this._verticalScrollbarWidth) + this._minimapWidth);\n }\n else if (widgetData.preference === 1 /* OverlayWidgetPositionPreference.BOTTOM_RIGHT_CORNER */) {\n const widgetHeight = domNode.domNode.clientHeight;\n domNode.setTop((this._editorHeight - widgetHeight - 2 * this._horizontalScrollbarHeight));\n domNode.setRight((2 * this._verticalScrollbarWidth) + this._minimapWidth);\n }\n else if (widgetData.preference === 2 /* OverlayWidgetPositionPreference.TOP_CENTER */) {\n domNode.setTop(0);\n domNode.domNode.style.right = '50%';\n }\n else {\n const { top, left } = widgetData.preference;\n const fixedOverflowWidgets = this._context.configuration.options.get(42 /* EditorOption.fixedOverflowWidgets */);\n if (fixedOverflowWidgets && widgetData.widget.allowEditorOverflow) {\n // top, left are computed relative to the editor and we need them relative to the page\n const editorBoundingBox = this._viewDomNodeRect;\n domNode.setTop(top + editorBoundingBox.top);\n domNode.setLeft(left + editorBoundingBox.left);\n domNode.setPosition('fixed');\n }\n else {\n domNode.setTop(top);\n domNode.setLeft(left);\n domNode.setPosition('absolute');\n }\n }\n }\n prepareRender(ctx) {\n this._viewDomNodeRect = _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_3__.getDomNodePagePosition(this._viewDomNode.domNode);\n }\n render(ctx) {\n this._domNode.setWidth(this._editorWidth);\n const keys = Object.keys(this._widgets);\n for (let i = 0, len = keys.length; i < len; i++) {\n const widgetId = keys[i];\n this._renderWidget(this._widgets[widgetId]);\n }\n }\n}\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/browser/viewParts/overlayWidgets/overlayWidgets.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/browser/viewParts/overviewRuler/decorationsOverviewRuler.js":
/*!**************************************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/browser/viewParts/overviewRuler/decorationsOverviewRuler.js ***!
\**************************************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ DecorationsOverviewRuler: () => (/* binding */ DecorationsOverviewRuler)\n/* harmony export */ });\n/* harmony import */ var _base_browser_fastDomNode_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../../base/browser/fastDomNode.js */ \"./node_modules/monaco-editor/esm/vs/base/browser/fastDomNode.js\");\n/* harmony import */ var _base_common_color_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../base/common/color.js */ \"./node_modules/monaco-editor/esm/vs/base/common/color.js\");\n/* harmony import */ var _view_viewPart_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../view/viewPart.js */ \"./node_modules/monaco-editor/esm/vs/editor/browser/view/viewPart.js\");\n/* harmony import */ var _common_core_position_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../../common/core/position.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/core/position.js\");\n/* harmony import */ var _common_languages_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../../common/languages.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/languages.js\");\n/* harmony import */ var _common_core_editorColorRegistry_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../../../common/core/editorColorRegistry.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/core/editorColorRegistry.js\");\n/* harmony import */ var _common_viewModel_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../../../common/viewModel.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/viewModel.js\");\n/* harmony import */ var _base_common_arrays_js__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ../../../../base/common/arrays.js */ \"./node_modules/monaco-editor/esm/vs/base/common/arrays.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n\n\n\n\n\n\n\nclass Settings {\n constructor(config, theme) {\n const options = config.options;\n this.lineHeight = options.get(67 /* EditorOption.lineHeight */);\n this.pixelRatio = options.get(142 /* EditorOption.pixelRatio */);\n this.overviewRulerLanes = options.get(83 /* EditorOption.overviewRulerLanes */);\n this.renderBorder = options.get(82 /* EditorOption.overviewRulerBorder */);\n const borderColor = theme.getColor(_common_core_editorColorRegistry_js__WEBPACK_IMPORTED_MODULE_5__.editorOverviewRulerBorder);\n this.borderColor = borderColor ? borderColor.toString() : null;\n this.hideCursor = options.get(59 /* EditorOption.hideCursorInOverviewRuler */);\n const cursorColor = theme.getColor(_common_core_editorColorRegistry_js__WEBPACK_IMPORTED_MODULE_5__.editorCursorForeground);\n this.cursorColor = cursorColor ? cursorColor.transparent(0.7).toString() : null;\n this.themeType = theme.type;\n const minimapOpts = options.get(73 /* EditorOption.minimap */);\n const minimapEnabled = minimapOpts.enabled;\n const minimapSide = minimapOpts.side;\n const themeColor = theme.getColor(_common_core_editorColorRegistry_js__WEBPACK_IMPORTED_MODULE_5__.editorOverviewRulerBackground);\n const defaultBackground = _common_languages_js__WEBPACK_IMPORTED_MODULE_4__.TokenizationRegistry.getDefaultBackground();\n if (themeColor) {\n this.backgroundColor = themeColor;\n }\n else if (minimapEnabled && minimapSide === 'right') {\n this.backgroundColor = defaultBackground;\n }\n else {\n this.backgroundColor = null;\n }\n const layoutInfo = options.get(144 /* EditorOption.layoutInfo */);\n const position = layoutInfo.overviewRuler;\n this.top = position.top;\n this.right = position.right;\n this.domWidth = position.width;\n this.domHeight = position.height;\n if (this.overviewRulerLanes === 0) {\n // overview ruler is off\n this.canvasWidth = 0;\n this.canvasHeight = 0;\n }\n else {\n this.canvasWidth = (this.domWidth * this.pixelRatio) | 0;\n this.canvasHeight = (this.domHeight * this.pixelRatio) | 0;\n }\n const [x, w] = this._initLanes(1, this.canvasWidth, this.overviewRulerLanes);\n this.x = x;\n this.w = w;\n }\n _initLanes(canvasLeftOffset, canvasWidth, laneCount) {\n const remainingWidth = canvasWidth - canvasLeftOffset;\n if (laneCount >= 3) {\n const leftWidth = Math.floor(remainingWidth / 3);\n const rightWidth = Math.floor(remainingWidth / 3);\n const centerWidth = remainingWidth - leftWidth - rightWidth;\n const leftOffset = canvasLeftOffset;\n const centerOffset = leftOffset + leftWidth;\n const rightOffset = leftOffset + leftWidth + centerWidth;\n return [\n [\n 0,\n leftOffset, // Left\n centerOffset, // Center\n leftOffset, // Left | Center\n rightOffset, // Right\n leftOffset, // Left | Right\n centerOffset, // Center | Right\n leftOffset, // Left | Center | Right\n ], [\n 0,\n leftWidth, // Left\n centerWidth, // Center\n leftWidth + centerWidth, // Left | Center\n rightWidth, // Right\n leftWidth + centerWidth + rightWidth, // Left | Right\n centerWidth + rightWidth, // Center | Right\n leftWidth + centerWidth + rightWidth, // Left | Center | Right\n ]\n ];\n }\n else if (laneCount === 2) {\n const leftWidth = Math.floor(remainingWidth / 2);\n const rightWidth = remainingWidth - leftWidth;\n const leftOffset = canvasLeftOffset;\n const rightOffset = leftOffset + leftWidth;\n return [\n [\n 0,\n leftOffset, // Left\n leftOffset, // Center\n leftOffset, // Left | Center\n rightOffset, // Right\n leftOffset, // Left | Right\n leftOffset, // Center | Right\n leftOffset, // Left | Center | Right\n ], [\n 0,\n leftWidth, // Left\n leftWidth, // Center\n leftWidth, // Left | Center\n rightWidth, // Right\n leftWidth + rightWidth, // Left | Right\n leftWidth + rightWidth, // Center | Right\n leftWidth + rightWidth, // Left | Center | Right\n ]\n ];\n }\n else {\n const offset = canvasLeftOffset;\n const width = remainingWidth;\n return [\n [\n 0,\n offset, // Left\n offset, // Center\n offset, // Left | Center\n offset, // Right\n offset, // Left | Right\n offset, // Center | Right\n offset, // Left | Center | Right\n ], [\n 0,\n width, // Left\n width, // Center\n width, // Left | Center\n width, // Right\n width, // Left | Right\n width, // Center | Right\n width, // Left | Center | Right\n ]\n ];\n }\n }\n equals(other) {\n return (this.lineHeight === other.lineHeight\n && this.pixelRatio === other.pixelRatio\n && this.overviewRulerLanes === other.overviewRulerLanes\n && this.renderBorder === other.renderBorder\n && this.borderColor === other.borderColor\n && this.hideCursor === other.hideCursor\n && this.cursorColor === other.cursorColor\n && this.themeType === other.themeType\n && _base_common_color_js__WEBPACK_IMPORTED_MODULE_1__.Color.equals(this.backgroundColor, other.backgroundColor)\n && this.top === other.top\n && this.right === other.right\n && this.domWidth === other.domWidth\n && this.domHeight === other.domHeight\n && this.canvasWidth === other.canvasWidth\n && this.canvasHeight === other.canvasHeight);\n }\n}\nclass DecorationsOverviewRuler extends _view_viewPart_js__WEBPACK_IMPORTED_MODULE_2__.ViewPart {\n constructor(context) {\n super(context);\n this._actualShouldRender = 0 /* ShouldRenderValue.NotNeeded */;\n this._renderedDecorations = [];\n this._renderedCursorPositions = [];\n this._domNode = (0,_base_browser_fastDomNode_js__WEBPACK_IMPORTED_MODULE_0__.createFastDomNode)(document.createElement('canvas'));\n this._domNode.setClassName('decorationsOverviewRuler');\n this._domNode.setPosition('absolute');\n this._domNode.setLayerHinting(true);\n this._domNode.setContain('strict');\n this._domNode.setAttribute('aria-hidden', 'true');\n this._updateSettings(false);\n this._tokensColorTrackerListener = _common_languages_js__WEBPACK_IMPORTED_MODULE_4__.TokenizationRegistry.onDidChange((e) => {\n if (e.changedColorMap) {\n this._updateSettings(true);\n }\n });\n this._cursorPositions = [new _common_core_position_js__WEBPACK_IMPORTED_MODULE_3__.Position(1, 1)];\n }\n dispose() {\n super.dispose();\n this._tokensColorTrackerListener.dispose();\n }\n _updateSettings(renderNow) {\n const newSettings = new Settings(this._context.configuration, this._context.theme);\n if (this._settings && this._settings.equals(newSettings)) {\n // nothing to do\n return false;\n }\n this._settings = newSettings;\n this._domNode.setTop(this._settings.top);\n this._domNode.setRight(this._settings.right);\n this._domNode.setWidth(this._settings.domWidth);\n this._domNode.setHeight(this._settings.domHeight);\n this._domNode.domNode.width = this._settings.canvasWidth;\n this._domNode.domNode.height = this._settings.canvasHeight;\n if (renderNow) {\n this._render();\n }\n return true;\n }\n // ---- begin view event handlers\n _markRenderingIsNeeded() {\n this._actualShouldRender = 2 /* ShouldRenderValue.Needed */;\n return true;\n }\n _markRenderingIsMaybeNeeded() {\n this._actualShouldRender = 1 /* ShouldRenderValue.Maybe */;\n return true;\n }\n onConfigurationChanged(e) {\n return this._updateSettings(false) ? this._markRenderingIsNeeded() : false;\n }\n onCursorStateChanged(e) {\n this._cursorPositions = [];\n for (let i = 0, len = e.selections.length; i < len; i++) {\n this._cursorPositions[i] = e.selections[i].getPosition();\n }\n this._cursorPositions.sort(_common_core_position_js__WEBPACK_IMPORTED_MODULE_3__.Position.compare);\n return this._markRenderingIsMaybeNeeded();\n }\n onDecorationsChanged(e) {\n if (e.affectsOverviewRuler) {\n return this._markRenderingIsMaybeNeeded();\n }\n return false;\n }\n onFlushed(e) {\n return this._markRenderingIsNeeded();\n }\n onScrollChanged(e) {\n return e.scrollHeightChanged ? this._markRenderingIsNeeded() : false;\n }\n onZonesChanged(e) {\n return this._markRenderingIsNeeded();\n }\n onThemeChanged(e) {\n return this._updateSettings(false) ? this._markRenderingIsNeeded() : false;\n }\n // ---- end view event handlers\n getDomNode() {\n return this._domNode.domNode;\n }\n prepareRender(ctx) {\n // Nothing to read\n }\n render(editorCtx) {\n this._render();\n this._actualShouldRender = 0 /* ShouldRenderValue.NotNeeded */;\n }\n _render() {\n const backgroundColor = this._settings.backgroundColor;\n if (this._settings.overviewRulerLanes === 0) {\n // overview ruler is off\n this._domNode.setBackgroundColor(backgroundColor ? _base_common_color_js__WEBPACK_IMPORTED_MODULE_1__.Color.Format.CSS.formatHexA(backgroundColor) : '');\n this._domNode.setDisplay('none');\n return;\n }\n const decorations = this._context.viewModel.getAllOverviewRulerDecorations(this._context.theme);\n decorations.sort(_common_viewModel_js__WEBPACK_IMPORTED_MODULE_6__.OverviewRulerDecorationsGroup.compareByRenderingProps);\n if (this._actualShouldRender === 1 /* ShouldRenderValue.Maybe */ && !_common_viewModel_js__WEBPACK_IMPORTED_MODULE_6__.OverviewRulerDecorationsGroup.equalsArr(this._renderedDecorations, decorations)) {\n this._actualShouldRender = 2 /* ShouldRenderValue.Needed */;\n }\n if (this._actualShouldRender === 1 /* ShouldRenderValue.Maybe */ && !(0,_base_common_arrays_js__WEBPACK_IMPORTED_MODULE_7__.equals)(this._renderedCursorPositions, this._cursorPositions, (a, b) => a.lineNumber === b.lineNumber)) {\n this._actualShouldRender = 2 /* ShouldRenderValue.Needed */;\n }\n if (this._actualShouldRender === 1 /* ShouldRenderValue.Maybe */) {\n // both decorations and cursor positions are unchanged, nothing to do\n return;\n }\n this._renderedDecorations = decorations;\n this._renderedCursorPositions = this._cursorPositions;\n this._domNode.setDisplay('block');\n const canvasWidth = this._settings.canvasWidth;\n const canvasHeight = this._settings.canvasHeight;\n const lineHeight = this._settings.lineHeight;\n const viewLayout = this._context.viewLayout;\n const outerHeight = this._context.viewLayout.getScrollHeight();\n const heightRatio = canvasHeight / outerHeight;\n const minDecorationHeight = (6 /* Constants.MIN_DECORATION_HEIGHT */ * this._settings.pixelRatio) | 0;\n const halfMinDecorationHeight = (minDecorationHeight / 2) | 0;\n const canvasCtx = this._domNode.domNode.getContext('2d');\n if (backgroundColor) {\n if (backgroundColor.isOpaque()) {\n // We have a background color which is opaque, we can just paint the entire surface with it\n canvasCtx.fillStyle = _base_common_color_js__WEBPACK_IMPORTED_MODULE_1__.Color.Format.CSS.formatHexA(backgroundColor);\n canvasCtx.fillRect(0, 0, canvasWidth, canvasHeight);\n }\n else {\n // We have a background color which is transparent, we need to first clear the surface and\n // then fill it\n canvasCtx.clearRect(0, 0, canvasWidth, canvasHeight);\n canvasCtx.fillStyle = _base_common_color_js__WEBPACK_IMPORTED_MODULE_1__.Color.Format.CSS.formatHexA(backgroundColor);\n canvasCtx.fillRect(0, 0, canvasWidth, canvasHeight);\n }\n }\n else {\n // We don't have a background color\n canvasCtx.clearRect(0, 0, canvasWidth, canvasHeight);\n }\n const x = this._settings.x;\n const w = this._settings.w;\n for (const decorationGroup of decorations) {\n const color = decorationGroup.color;\n const decorationGroupData = decorationGroup.data;\n canvasCtx.fillStyle = color;\n let prevLane = 0;\n let prevY1 = 0;\n let prevY2 = 0;\n for (let i = 0, len = decorationGroupData.length / 3; i < len; i++) {\n const lane = decorationGroupData[3 * i];\n const startLineNumber = decorationGroupData[3 * i + 1];\n const endLineNumber = decorationGroupData[3 * i + 2];\n let y1 = (viewLayout.getVerticalOffsetForLineNumber(startLineNumber) * heightRatio) | 0;\n let y2 = ((viewLayout.getVerticalOffsetForLineNumber(endLineNumber) + lineHeight) * heightRatio) | 0;\n const height = y2 - y1;\n if (height < minDecorationHeight) {\n let yCenter = ((y1 + y2) / 2) | 0;\n if (yCenter < halfMinDecorationHeight) {\n yCenter = halfMinDecorationHeight;\n }\n else if (yCenter + halfMinDecorationHeight > canvasHeight) {\n yCenter = canvasHeight - halfMinDecorationHeight;\n }\n y1 = yCenter - halfMinDecorationHeight;\n y2 = yCenter + halfMinDecorationHeight;\n }\n if (y1 > prevY2 + 1 || lane !== prevLane) {\n // flush prev\n if (i !== 0) {\n canvasCtx.fillRect(x[prevLane], prevY1, w[prevLane], prevY2 - prevY1);\n }\n prevLane = lane;\n prevY1 = y1;\n prevY2 = y2;\n }\n else {\n // merge into prev\n if (y2 > prevY2) {\n prevY2 = y2;\n }\n }\n }\n canvasCtx.fillRect(x[prevLane], prevY1, w[prevLane], prevY2 - prevY1);\n }\n // Draw cursors\n if (!this._settings.hideCursor && this._settings.cursorColor) {\n const cursorHeight = (2 * this._settings.pixelRatio) | 0;\n const halfCursorHeight = (cursorHeight / 2) | 0;\n const cursorX = this._settings.x[7 /* OverviewRulerLane.Full */];\n const cursorW = this._settings.w[7 /* OverviewRulerLane.Full */];\n canvasCtx.fillStyle = this._settings.cursorColor;\n let prevY1 = -100;\n let prevY2 = -100;\n for (let i = 0, len = this._cursorPositions.length; i < len; i++) {\n const cursor = this._cursorPositions[i];\n let yCenter = (viewLayout.getVerticalOffsetForLineNumber(cursor.lineNumber) * heightRatio) | 0;\n if (yCenter < halfCursorHeight) {\n yCenter = halfCursorHeight;\n }\n else if (yCenter + halfCursorHeight > canvasHeight) {\n yCenter = canvasHeight - halfCursorHeight;\n }\n const y1 = yCenter - halfCursorHeight;\n const y2 = y1 + cursorHeight;\n if (y1 > prevY2 + 1) {\n // flush prev\n if (i !== 0) {\n canvasCtx.fillRect(cursorX, prevY1, cursorW, prevY2 - prevY1);\n }\n prevY1 = y1;\n prevY2 = y2;\n }\n else {\n // merge into prev\n if (y2 > prevY2) {\n prevY2 = y2;\n }\n }\n }\n canvasCtx.fillRect(cursorX, prevY1, cursorW, prevY2 - prevY1);\n }\n if (this._settings.renderBorder && this._settings.borderColor && this._settings.overviewRulerLanes > 0) {\n canvasCtx.beginPath();\n canvasCtx.lineWidth = 1;\n canvasCtx.strokeStyle = this._settings.borderColor;\n canvasCtx.moveTo(0, 0);\n canvasCtx.lineTo(0, canvasHeight);\n canvasCtx.stroke();\n canvasCtx.moveTo(0, 0);\n canvasCtx.lineTo(canvasWidth, 0);\n canvasCtx.stroke();\n }\n }\n}\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/browser/viewParts/overviewRuler/decorationsOverviewRuler.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/browser/viewParts/overviewRuler/overviewRuler.js":
/*!***************************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/browser/viewParts/overviewRuler/overviewRuler.js ***!
\***************************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ OverviewRuler: () => (/* binding */ OverviewRuler)\n/* harmony export */ });\n/* harmony import */ var _base_browser_fastDomNode_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../../base/browser/fastDomNode.js */ \"./node_modules/monaco-editor/esm/vs/base/browser/fastDomNode.js\");\n/* harmony import */ var _common_viewModel_overviewZoneManager_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../common/viewModel/overviewZoneManager.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/viewModel/overviewZoneManager.js\");\n/* harmony import */ var _common_viewEventHandler_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../common/viewEventHandler.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/viewEventHandler.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n\n\nclass OverviewRuler extends _common_viewEventHandler_js__WEBPACK_IMPORTED_MODULE_2__.ViewEventHandler {\n constructor(context, cssClassName) {\n super();\n this._context = context;\n const options = this._context.configuration.options;\n this._domNode = (0,_base_browser_fastDomNode_js__WEBPACK_IMPORTED_MODULE_0__.createFastDomNode)(document.createElement('canvas'));\n this._domNode.setClassName(cssClassName);\n this._domNode.setPosition('absolute');\n this._domNode.setLayerHinting(true);\n this._domNode.setContain('strict');\n this._zoneManager = new _common_viewModel_overviewZoneManager_js__WEBPACK_IMPORTED_MODULE_1__.OverviewZoneManager((lineNumber) => this._context.viewLayout.getVerticalOffsetForLineNumber(lineNumber));\n this._zoneManager.setDOMWidth(0);\n this._zoneManager.setDOMHeight(0);\n this._zoneManager.setOuterHeight(this._context.viewLayout.getScrollHeight());\n this._zoneManager.setLineHeight(options.get(67 /* EditorOption.lineHeight */));\n this._zoneManager.setPixelRatio(options.get(142 /* EditorOption.pixelRatio */));\n this._context.addEventHandler(this);\n }\n dispose() {\n this._context.removeEventHandler(this);\n super.dispose();\n }\n // ---- begin view event handlers\n onConfigurationChanged(e) {\n const options = this._context.configuration.options;\n if (e.hasChanged(67 /* EditorOption.lineHeight */)) {\n this._zoneManager.setLineHeight(options.get(67 /* EditorOption.lineHeight */));\n this._render();\n }\n if (e.hasChanged(142 /* EditorOption.pixelRatio */)) {\n this._zoneManager.setPixelRatio(options.get(142 /* EditorOption.pixelRatio */));\n this._domNode.setWidth(this._zoneManager.getDOMWidth());\n this._domNode.setHeight(this._zoneManager.getDOMHeight());\n this._domNode.domNode.width = this._zoneManager.getCanvasWidth();\n this._domNode.domNode.height = this._zoneManager.getCanvasHeight();\n this._render();\n }\n return true;\n }\n onFlushed(e) {\n this._render();\n return true;\n }\n onScrollChanged(e) {\n if (e.scrollHeightChanged) {\n this._zoneManager.setOuterHeight(e.scrollHeight);\n this._render();\n }\n return true;\n }\n onZonesChanged(e) {\n this._render();\n return true;\n }\n // ---- end view event handlers\n getDomNode() {\n return this._domNode.domNode;\n }\n setLayout(position) {\n this._domNode.setTop(position.top);\n this._domNode.setRight(position.right);\n let hasChanged = false;\n hasChanged = this._zoneManager.setDOMWidth(position.width) || hasChanged;\n hasChanged = this._zoneManager.setDOMHeight(position.height) || hasChanged;\n if (hasChanged) {\n this._domNode.setWidth(this._zoneManager.getDOMWidth());\n this._domNode.setHeight(this._zoneManager.getDOMHeight());\n this._domNode.domNode.width = this._zoneManager.getCanvasWidth();\n this._domNode.domNode.height = this._zoneManager.getCanvasHeight();\n this._render();\n }\n }\n setZones(zones) {\n this._zoneManager.setZones(zones);\n this._render();\n }\n _render() {\n if (this._zoneManager.getOuterHeight() === 0) {\n return false;\n }\n const width = this._zoneManager.getCanvasWidth();\n const height = this._zoneManager.getCanvasHeight();\n const colorZones = this._zoneManager.resolveColorZones();\n const id2Color = this._zoneManager.getId2Color();\n const ctx = this._domNode.domNode.getContext('2d');\n ctx.clearRect(0, 0, width, height);\n if (colorZones.length > 0) {\n this._renderOneLane(ctx, colorZones, id2Color, width);\n }\n return true;\n }\n _renderOneLane(ctx, colorZones, id2Color, width) {\n let currentColorId = 0;\n let currentFrom = 0;\n let currentTo = 0;\n for (const zone of colorZones) {\n const zoneColorId = zone.colorId;\n const zoneFrom = zone.from;\n const zoneTo = zone.to;\n if (zoneColorId !== currentColorId) {\n ctx.fillRect(0, currentFrom, width, currentTo - currentFrom);\n currentColorId = zoneColorId;\n ctx.fillStyle = id2Color[currentColorId];\n currentFrom = zoneFrom;\n currentTo = zoneTo;\n }\n else {\n if (currentTo >= zoneFrom) {\n currentTo = Math.max(currentTo, zoneTo);\n }\n else {\n ctx.fillRect(0, currentFrom, width, currentTo - currentFrom);\n currentFrom = zoneFrom;\n currentTo = zoneTo;\n }\n }\n }\n ctx.fillRect(0, currentFrom, width, currentTo - currentFrom);\n }\n}\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/browser/viewParts/overviewRuler/overviewRuler.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/browser/viewParts/rulers/rulers.js":
/*!*************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/browser/viewParts/rulers/rulers.js ***!
\*************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ Rulers: () => (/* binding */ Rulers)\n/* harmony export */ });\n/* harmony import */ var _rulers_css__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./rulers.css */ \"./node_modules/monaco-editor/esm/vs/editor/browser/viewParts/rulers/rulers.css\");\n/* harmony import */ var _base_browser_fastDomNode_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../base/browser/fastDomNode.js */ \"./node_modules/monaco-editor/esm/vs/base/browser/fastDomNode.js\");\n/* harmony import */ var _view_viewPart_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../view/viewPart.js */ \"./node_modules/monaco-editor/esm/vs/editor/browser/view/viewPart.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n\n\nclass Rulers extends _view_viewPart_js__WEBPACK_IMPORTED_MODULE_2__.ViewPart {\n constructor(context) {\n super(context);\n this.domNode = (0,_base_browser_fastDomNode_js__WEBPACK_IMPORTED_MODULE_1__.createFastDomNode)(document.createElement('div'));\n this.domNode.setAttribute('role', 'presentation');\n this.domNode.setAttribute('aria-hidden', 'true');\n this.domNode.setClassName('view-rulers');\n this._renderedRulers = [];\n const options = this._context.configuration.options;\n this._rulers = options.get(102 /* EditorOption.rulers */);\n this._typicalHalfwidthCharacterWidth = options.get(50 /* EditorOption.fontInfo */).typicalHalfwidthCharacterWidth;\n }\n dispose() {\n super.dispose();\n }\n // --- begin event handlers\n onConfigurationChanged(e) {\n const options = this._context.configuration.options;\n this._rulers = options.get(102 /* EditorOption.rulers */);\n this._typicalHalfwidthCharacterWidth = options.get(50 /* EditorOption.fontInfo */).typicalHalfwidthCharacterWidth;\n return true;\n }\n onScrollChanged(e) {\n return e.scrollHeightChanged;\n }\n // --- end event handlers\n prepareRender(ctx) {\n // Nothing to read\n }\n _ensureRulersCount() {\n const currentCount = this._renderedRulers.length;\n const desiredCount = this._rulers.length;\n if (currentCount === desiredCount) {\n // Nothing to do\n return;\n }\n if (currentCount < desiredCount) {\n const { tabSize } = this._context.viewModel.model.getOptions();\n const rulerWidth = tabSize;\n let addCount = desiredCount - currentCount;\n while (addCount > 0) {\n const node = (0,_base_browser_fastDomNode_js__WEBPACK_IMPORTED_MODULE_1__.createFastDomNode)(document.createElement('div'));\n node.setClassName('view-ruler');\n node.setWidth(rulerWidth);\n this.domNode.appendChild(node);\n this._renderedRulers.push(node);\n addCount--;\n }\n return;\n }\n let removeCount = currentCount - desiredCount;\n while (removeCount > 0) {\n const node = this._renderedRulers.pop();\n this.domNode.removeChild(node);\n removeCount--;\n }\n }\n render(ctx) {\n this._ensureRulersCount();\n for (let i = 0, len = this._rulers.length; i < len; i++) {\n const node = this._renderedRulers[i];\n const ruler = this._rulers[i];\n node.setBoxShadow(ruler.color ? `1px 0 0 0 ${ruler.color} inset` : ``);\n node.setHeight(Math.min(ctx.scrollHeight, 1000000));\n node.setLeft(ruler.column * this._typicalHalfwidthCharacterWidth);\n }\n }\n}\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/browser/viewParts/rulers/rulers.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/browser/viewParts/scrollDecoration/scrollDecoration.js":
/*!*********************************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/browser/viewParts/scrollDecoration/scrollDecoration.js ***!
\*********************************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ ScrollDecorationViewPart: () => (/* binding */ ScrollDecorationViewPart)\n/* harmony export */ });\n/* harmony import */ var _scrollDecoration_css__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./scrollDecoration.css */ \"./node_modules/monaco-editor/esm/vs/editor/browser/viewParts/scrollDecoration/scrollDecoration.css\");\n/* harmony import */ var _base_browser_fastDomNode_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../base/browser/fastDomNode.js */ \"./node_modules/monaco-editor/esm/vs/base/browser/fastDomNode.js\");\n/* harmony import */ var _view_viewPart_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../view/viewPart.js */ \"./node_modules/monaco-editor/esm/vs/editor/browser/view/viewPart.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n\n\nclass ScrollDecorationViewPart extends _view_viewPart_js__WEBPACK_IMPORTED_MODULE_2__.ViewPart {\n constructor(context) {\n super(context);\n this._scrollTop = 0;\n this._width = 0;\n this._updateWidth();\n this._shouldShow = false;\n const options = this._context.configuration.options;\n const scrollbar = options.get(103 /* EditorOption.scrollbar */);\n this._useShadows = scrollbar.useShadows;\n this._domNode = (0,_base_browser_fastDomNode_js__WEBPACK_IMPORTED_MODULE_1__.createFastDomNode)(document.createElement('div'));\n this._domNode.setAttribute('role', 'presentation');\n this._domNode.setAttribute('aria-hidden', 'true');\n }\n dispose() {\n super.dispose();\n }\n _updateShouldShow() {\n const newShouldShow = (this._useShadows && this._scrollTop > 0);\n if (this._shouldShow !== newShouldShow) {\n this._shouldShow = newShouldShow;\n return true;\n }\n return false;\n }\n getDomNode() {\n return this._domNode;\n }\n _updateWidth() {\n const options = this._context.configuration.options;\n const layoutInfo = options.get(144 /* EditorOption.layoutInfo */);\n if (layoutInfo.minimap.renderMinimap === 0 || (layoutInfo.minimap.minimapWidth > 0 && layoutInfo.minimap.minimapLeft === 0)) {\n this._width = layoutInfo.width;\n }\n else {\n this._width = layoutInfo.width - layoutInfo.verticalScrollbarWidth;\n }\n }\n // --- begin event handlers\n onConfigurationChanged(e) {\n const options = this._context.configuration.options;\n const scrollbar = options.get(103 /* EditorOption.scrollbar */);\n this._useShadows = scrollbar.useShadows;\n this._updateWidth();\n this._updateShouldShow();\n return true;\n }\n onScrollChanged(e) {\n this._scrollTop = e.scrollTop;\n return this._updateShouldShow();\n }\n // --- end event handlers\n prepareRender(ctx) {\n // Nothing to read\n }\n render(ctx) {\n this._domNode.setWidth(this._width);\n this._domNode.setClassName(this._shouldShow ? 'scroll-decoration' : '');\n }\n}\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/browser/viewParts/scrollDecoration/scrollDecoration.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/browser/viewParts/selections/selections.js":
/*!*********************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/browser/viewParts/selections/selections.js ***!
\*********************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ SelectionsOverlay: () => (/* binding */ SelectionsOverlay)\n/* harmony export */ });\n/* harmony import */ var _selections_css__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./selections.css */ \"./node_modules/monaco-editor/esm/vs/editor/browser/viewParts/selections/selections.css\");\n/* harmony import */ var _view_dynamicViewOverlay_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../view/dynamicViewOverlay.js */ \"./node_modules/monaco-editor/esm/vs/editor/browser/view/dynamicViewOverlay.js\");\n/* harmony import */ var _platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../../platform/theme/common/colorRegistry.js */ \"./node_modules/monaco-editor/esm/vs/platform/theme/common/colorRegistry.js\");\n/* harmony import */ var _platform_theme_common_themeService_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../../../platform/theme/common/themeService.js */ \"./node_modules/monaco-editor/esm/vs/platform/theme/common/themeService.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n\n\n\nclass HorizontalRangeWithStyle {\n constructor(other) {\n this.left = other.left;\n this.width = other.width;\n this.startStyle = null;\n this.endStyle = null;\n }\n}\nclass LineVisibleRangesWithStyle {\n constructor(lineNumber, ranges) {\n this.lineNumber = lineNumber;\n this.ranges = ranges;\n }\n}\nfunction toStyledRange(item) {\n return new HorizontalRangeWithStyle(item);\n}\nfunction toStyled(item) {\n return new LineVisibleRangesWithStyle(item.lineNumber, item.ranges.map(toStyledRange));\n}\nclass SelectionsOverlay extends _view_dynamicViewOverlay_js__WEBPACK_IMPORTED_MODULE_1__.DynamicViewOverlay {\n constructor(context) {\n super();\n this._previousFrameVisibleRangesWithStyle = [];\n this._context = context;\n const options = this._context.configuration.options;\n this._lineHeight = options.get(67 /* EditorOption.lineHeight */);\n this._roundedSelection = options.get(101 /* EditorOption.roundedSelection */);\n this._typicalHalfwidthCharacterWidth = options.get(50 /* EditorOption.fontInfo */).typicalHalfwidthCharacterWidth;\n this._selections = [];\n this._renderResult = null;\n this._context.addEventHandler(this);\n }\n dispose() {\n this._context.removeEventHandler(this);\n this._renderResult = null;\n super.dispose();\n }\n // --- begin event handlers\n onConfigurationChanged(e) {\n const options = this._context.configuration.options;\n this._lineHeight = options.get(67 /* EditorOption.lineHeight */);\n this._roundedSelection = options.get(101 /* EditorOption.roundedSelection */);\n this._typicalHalfwidthCharacterWidth = options.get(50 /* EditorOption.fontInfo */).typicalHalfwidthCharacterWidth;\n return true;\n }\n onCursorStateChanged(e) {\n this._selections = e.selections.slice(0);\n return true;\n }\n onDecorationsChanged(e) {\n // true for inline decorations that can end up relayouting text\n return true; //e.inlineDecorationsChanged;\n }\n onFlushed(e) {\n return true;\n }\n onLinesChanged(e) {\n return true;\n }\n onLinesDeleted(e) {\n return true;\n }\n onLinesInserted(e) {\n return true;\n }\n onScrollChanged(e) {\n return e.scrollTopChanged;\n }\n onZonesChanged(e) {\n return true;\n }\n // --- end event handlers\n _visibleRangesHaveGaps(linesVisibleRanges) {\n for (let i = 0, len = linesVisibleRanges.length; i < len; i++) {\n const lineVisibleRanges = linesVisibleRanges[i];\n if (lineVisibleRanges.ranges.length > 1) {\n // There are two ranges on the same line\n return true;\n }\n }\n return false;\n }\n _enrichVisibleRangesWithStyle(viewport, linesVisibleRanges, previousFrame) {\n const epsilon = this._typicalHalfwidthCharacterWidth / 4;\n let previousFrameTop = null;\n let previousFrameBottom = null;\n if (previousFrame && previousFrame.length > 0 && linesVisibleRanges.length > 0) {\n const topLineNumber = linesVisibleRanges[0].lineNumber;\n if (topLineNumber === viewport.startLineNumber) {\n for (let i = 0; !previousFrameTop && i < previousFrame.length; i++) {\n if (previousFrame[i].lineNumber === topLineNumber) {\n previousFrameTop = previousFrame[i].ranges[0];\n }\n }\n }\n const bottomLineNumber = linesVisibleRanges[linesVisibleRanges.length - 1].lineNumber;\n if (bottomLineNumber === viewport.endLineNumber) {\n for (let i = previousFrame.length - 1; !previousFrameBottom && i >= 0; i--) {\n if (previousFrame[i].lineNumber === bottomLineNumber) {\n previousFrameBottom = previousFrame[i].ranges[0];\n }\n }\n }\n if (previousFrameTop && !previousFrameTop.startStyle) {\n previousFrameTop = null;\n }\n if (previousFrameBottom && !previousFrameBottom.startStyle) {\n previousFrameBottom = null;\n }\n }\n for (let i = 0, len = linesVisibleRanges.length; i < len; i++) {\n // We know for a fact that there is precisely one range on each line\n const curLineRange = linesVisibleRanges[i].ranges[0];\n const curLeft = curLineRange.left;\n const curRight = curLineRange.left + curLineRange.width;\n const startStyle = {\n top: 0 /* CornerStyle.EXTERN */,\n bottom: 0 /* CornerStyle.EXTERN */\n };\n const endStyle = {\n top: 0 /* CornerStyle.EXTERN */,\n bottom: 0 /* CornerStyle.EXTERN */\n };\n if (i > 0) {\n // Look above\n const prevLeft = linesVisibleRanges[i - 1].ranges[0].left;\n const prevRight = linesVisibleRanges[i - 1].ranges[0].left + linesVisibleRanges[i - 1].ranges[0].width;\n if (abs(curLeft - prevLeft) < epsilon) {\n startStyle.top = 2 /* CornerStyle.FLAT */;\n }\n else if (curLeft > prevLeft) {\n startStyle.top = 1 /* CornerStyle.INTERN */;\n }\n if (abs(curRight - prevRight) < epsilon) {\n endStyle.top = 2 /* CornerStyle.FLAT */;\n }\n else if (prevLeft < curRight && curRight < prevRight) {\n endStyle.top = 1 /* CornerStyle.INTERN */;\n }\n }\n else if (previousFrameTop) {\n // Accept some hiccups near the viewport edges to save on repaints\n startStyle.top = previousFrameTop.startStyle.top;\n endStyle.top = previousFrameTop.endStyle.top;\n }\n if (i + 1 < len) {\n // Look below\n const nextLeft = linesVisibleRanges[i + 1].ranges[0].left;\n const nextRight = linesVisibleRanges[i + 1].ranges[0].left + linesVisibleRanges[i + 1].ranges[0].width;\n if (abs(curLeft - nextLeft) < epsilon) {\n startStyle.bottom = 2 /* CornerStyle.FLAT */;\n }\n else if (nextLeft < curLeft && curLeft < nextRight) {\n startStyle.bottom = 1 /* CornerStyle.INTERN */;\n }\n if (abs(curRight - nextRight) < epsilon) {\n endStyle.bottom = 2 /* CornerStyle.FLAT */;\n }\n else if (curRight < nextRight) {\n endStyle.bottom = 1 /* CornerStyle.INTERN */;\n }\n }\n else if (previousFrameBottom) {\n // Accept some hiccups near the viewport edges to save on repaints\n startStyle.bottom = previousFrameBottom.startStyle.bottom;\n endStyle.bottom = previousFrameBottom.endStyle.bottom;\n }\n curLineRange.startStyle = startStyle;\n curLineRange.endStyle = endStyle;\n }\n }\n _getVisibleRangesWithStyle(selection, ctx, previousFrame) {\n const _linesVisibleRanges = ctx.linesVisibleRangesForRange(selection, true) || [];\n const linesVisibleRanges = _linesVisibleRanges.map(toStyled);\n const visibleRangesHaveGaps = this._visibleRangesHaveGaps(linesVisibleRanges);\n if (!visibleRangesHaveGaps && this._roundedSelection) {\n this._enrichVisibleRangesWithStyle(ctx.visibleRange, linesVisibleRanges, previousFrame);\n }\n // The visible ranges are sorted TOP-BOTTOM and LEFT-RIGHT\n return linesVisibleRanges;\n }\n _createSelectionPiece(top, height, className, left, width) {\n return (' ');\n }\n _actualRenderOneSelection(output2, visibleStartLineNumber, hasMultipleSelections, visibleRanges) {\n if (visibleRanges.length === 0) {\n return;\n }\n const visibleRangesHaveStyle = !!visibleRanges[0].ranges[0].startStyle;\n const fullLineHeight = (this._lineHeight).toString();\n const reducedLineHeight = (this._lineHeight - 1).toString();\n const firstLineNumber = visibleRanges[0].lineNumber;\n const lastLineNumber = visibleRanges[visibleRanges.length - 1].lineNumber;\n for (let i = 0, len = visibleRanges.length; i < len; i++) {\n const lineVisibleRanges = visibleRanges[i];\n const lineNumber = lineVisibleRanges.lineNumber;\n const lineIndex = lineNumber - visibleStartLineNumber;\n const lineHeight = hasMultipleSelections ? (lineNumber === lastLineNumber || lineNumber === firstLineNumber ? reducedLineHeight : fullLineHeight) : fullLineHeight;\n const top = hasMultipleSelections ? (lineNumber === firstLineNumber ? 1 : 0) : 0;\n let innerCornerOutput = '';\n let restOfSelectionOutput = '';\n for (let j = 0, lenJ = lineVisibleRanges.ranges.length; j < lenJ; j++) {\n const visibleRange = lineVisibleRanges.ranges[j];\n if (visibleRangesHaveStyle) {\n const startStyle = visibleRange.startStyle;\n const endStyle = visibleRange.endStyle;\n if (startStyle.top === 1 /* CornerStyle.INTERN */ || startStyle.bottom === 1 /* CornerStyle.INTERN */) {\n // Reverse rounded corner to the left\n // First comes the selection (blue layer)\n innerCornerOutput += this._createSelectionPiece(top, lineHeight, SelectionsOverlay.SELECTION_CLASS_NAME, visibleRange.left - SelectionsOverlay.ROUNDED_PIECE_WIDTH, SelectionsOverlay.ROUNDED_PIECE_WIDTH);\n // Second comes the background (white layer) with inverse border radius\n let className = SelectionsOverlay.EDITOR_BACKGROUND_CLASS_NAME;\n if (startStyle.top === 1 /* CornerStyle.INTERN */) {\n className += ' ' + SelectionsOverlay.SELECTION_TOP_RIGHT;\n }\n if (startStyle.bottom === 1 /* CornerStyle.INTERN */) {\n className += ' ' + SelectionsOverlay.SELECTION_BOTTOM_RIGHT;\n }\n innerCornerOutput += this._createSelectionPiece(top, lineHeight, className, visibleRange.left - SelectionsOverlay.ROUNDED_PIECE_WIDTH, SelectionsOverlay.ROUNDED_PIECE_WIDTH);\n }\n if (endStyle.top === 1 /* CornerStyle.INTERN */ || endStyle.bottom === 1 /* CornerStyle.INTERN */) {\n // Reverse rounded corner to the right\n // First comes the selection (blue layer)\n innerCornerOutput += this._createSelectionPiece(top, lineHeight, SelectionsOverlay.SELECTION_CLASS_NAME, visibleRange.left + visibleRange.width, SelectionsOverlay.ROUNDED_PIECE_WIDTH);\n // Second comes the background (white layer) with inverse border radius\n let className = SelectionsOverlay.EDITOR_BACKGROUND_CLASS_NAME;\n if (endStyle.top === 1 /* CornerStyle.INTERN */) {\n className += ' ' + SelectionsOverlay.SELECTION_TOP_LEFT;\n }\n if (endStyle.bottom === 1 /* CornerStyle.INTERN */) {\n className += ' ' + SelectionsOverlay.SELECTION_BOTTOM_LEFT;\n }\n innerCornerOutput += this._createSelectionPiece(top, lineHeight, className, visibleRange.left + visibleRange.width, SelectionsOverlay.ROUNDED_PIECE_WIDTH);\n }\n }\n let className = SelectionsOverlay.SELECTION_CLASS_NAME;\n if (visibleRangesHaveStyle) {\n const startStyle = visibleRange.startStyle;\n const endStyle = visibleRange.endStyle;\n if (startStyle.top === 0 /* CornerStyle.EXTERN */) {\n className += ' ' + SelectionsOverlay.SELECTION_TOP_LEFT;\n }\n if (startStyle.bottom === 0 /* CornerStyle.EXTERN */) {\n className += ' ' + SelectionsOverlay.SELECTION_BOTTOM_LEFT;\n }\n if (endStyle.top === 0 /* CornerStyle.EXTERN */) {\n className += ' ' + SelectionsOverlay.SELECTION_TOP_RIGHT;\n }\n if (endStyle.bottom === 0 /* CornerStyle.EXTERN */) {\n className += ' ' + SelectionsOverlay.SELECTION_BOTTOM_RIGHT;\n }\n }\n restOfSelectionOutput += this._createSelectionPiece(top, lineHeight, className, visibleRange.left, visibleRange.width);\n }\n output2[lineIndex][0] += innerCornerOutput;\n output2[lineIndex][1] += restOfSelectionOutput;\n }\n }\n prepareRender(ctx) {\n // Build HTML for inner corners separate from HTML for the rest of selections,\n // as the inner corner HTML can interfere with that of other selections.\n // In final render, make sure to place the inner corner HTML before the rest of selection HTML. See issue #77777.\n const output = [];\n const visibleStartLineNumber = ctx.visibleRange.startLineNumber;\n const visibleEndLineNumber = ctx.visibleRange.endLineNumber;\n for (let lineNumber = visibleStartLineNumber; lineNumber <= visibleEndLineNumber; lineNumber++) {\n const lineIndex = lineNumber - visibleStartLineNumber;\n output[lineIndex] = ['', ''];\n }\n const thisFrameVisibleRangesWithStyle = [];\n for (let i = 0, len = this._selections.length; i < len; i++) {\n const selection = this._selections[i];\n if (selection.isEmpty()) {\n thisFrameVisibleRangesWithStyle[i] = null;\n continue;\n }\n const visibleRangesWithStyle = this._getVisibleRangesWithStyle(selection, ctx, this._previousFrameVisibleRangesWithStyle[i]);\n thisFrameVisibleRangesWithStyle[i] = visibleRangesWithStyle;\n this._actualRenderOneSelection(output, visibleStartLineNumber, this._selections.length > 1, visibleRangesWithStyle);\n }\n this._previousFrameVisibleRangesWithStyle = thisFrameVisibleRangesWithStyle;\n this._renderResult = output.map(([internalCorners, restOfSelection]) => internalCorners + restOfSelection);\n }\n render(startLineNumber, lineNumber) {\n if (!this._renderResult) {\n return '';\n }\n const lineIndex = lineNumber - startLineNumber;\n if (lineIndex < 0 || lineIndex >= this._renderResult.length) {\n return '';\n }\n return this._renderResult[lineIndex];\n }\n}\nSelectionsOverlay.SELECTION_CLASS_NAME = 'selected-text';\nSelectionsOverlay.SELECTION_TOP_LEFT = 'top-left-radius';\nSelectionsOverlay.SELECTION_BOTTOM_LEFT = 'bottom-left-radius';\nSelectionsOverlay.SELECTION_TOP_RIGHT = 'top-right-radius';\nSelectionsOverlay.SELECTION_BOTTOM_RIGHT = 'bottom-right-radius';\nSelectionsOverlay.EDITOR_BACKGROUND_CLASS_NAME = 'monaco-editor-background';\nSelectionsOverlay.ROUNDED_PIECE_WIDTH = 10;\n(0,_platform_theme_common_themeService_js__WEBPACK_IMPORTED_MODULE_3__.registerThemingParticipant)((theme, collector) => {\n const editorSelectionForegroundColor = theme.getColor(_platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_2__.editorSelectionForeground);\n if (editorSelectionForegroundColor && !editorSelectionForegroundColor.isTransparent()) {\n collector.addRule(`.monaco-editor .view-line span.inline-selected-text { color: ${editorSelectionForegroundColor}; }`);\n }\n});\nfunction abs(n) {\n return n < 0 ? -n : n;\n}\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/browser/viewParts/selections/selections.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/browser/viewParts/viewCursors/viewCursor.js":
/*!**********************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/browser/viewParts/viewCursors/viewCursor.js ***!
\**********************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ ViewCursor: () => (/* binding */ ViewCursor)\n/* harmony export */ });\n/* harmony import */ var _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../../base/browser/dom.js */ \"./node_modules/monaco-editor/esm/vs/base/browser/dom.js\");\n/* harmony import */ var _base_browser_fastDomNode_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../base/browser/fastDomNode.js */ \"./node_modules/monaco-editor/esm/vs/base/browser/fastDomNode.js\");\n/* harmony import */ var _base_common_strings_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../../base/common/strings.js */ \"./node_modules/monaco-editor/esm/vs/base/common/strings.js\");\n/* harmony import */ var _config_domFontInfo_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../config/domFontInfo.js */ \"./node_modules/monaco-editor/esm/vs/editor/browser/config/domFontInfo.js\");\n/* harmony import */ var _common_config_editorOptions_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../../common/config/editorOptions.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/config/editorOptions.js\");\n/* harmony import */ var _common_core_position_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../../../common/core/position.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/core/position.js\");\n/* harmony import */ var _common_core_range_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../../../common/core/range.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/core/range.js\");\n/* harmony import */ var _base_browser_ui_mouseCursor_mouseCursor_js__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ../../../../base/browser/ui/mouseCursor/mouseCursor.js */ \"./node_modules/monaco-editor/esm/vs/base/browser/ui/mouseCursor/mouseCursor.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n\n\n\n\n\n\n\nclass ViewCursorRenderData {\n constructor(top, left, paddingLeft, width, height, textContent, textContentClassName) {\n this.top = top;\n this.left = left;\n this.paddingLeft = paddingLeft;\n this.width = width;\n this.height = height;\n this.textContent = textContent;\n this.textContentClassName = textContentClassName;\n }\n}\nclass ViewCursor {\n constructor(context) {\n this._context = context;\n const options = this._context.configuration.options;\n const fontInfo = options.get(50 /* EditorOption.fontInfo */);\n this._cursorStyle = options.get(28 /* EditorOption.cursorStyle */);\n this._lineHeight = options.get(67 /* EditorOption.lineHeight */);\n this._typicalHalfwidthCharacterWidth = fontInfo.typicalHalfwidthCharacterWidth;\n this._lineCursorWidth = Math.min(options.get(31 /* EditorOption.cursorWidth */), this._typicalHalfwidthCharacterWidth);\n this._isVisible = true;\n // Create the dom node\n this._domNode = (0,_base_browser_fastDomNode_js__WEBPACK_IMPORTED_MODULE_1__.createFastDomNode)(document.createElement('div'));\n this._domNode.setClassName(`cursor ${_base_browser_ui_mouseCursor_mouseCursor_js__WEBPACK_IMPORTED_MODULE_7__.MOUSE_CURSOR_TEXT_CSS_CLASS_NAME}`);\n this._domNode.setHeight(this._lineHeight);\n this._domNode.setTop(0);\n this._domNode.setLeft(0);\n (0,_config_domFontInfo_js__WEBPACK_IMPORTED_MODULE_3__.applyFontInfo)(this._domNode, fontInfo);\n this._domNode.setDisplay('none');\n this._position = new _common_core_position_js__WEBPACK_IMPORTED_MODULE_5__.Position(1, 1);\n this._lastRenderedContent = '';\n this._renderData = null;\n }\n getDomNode() {\n return this._domNode;\n }\n getPosition() {\n return this._position;\n }\n show() {\n if (!this._isVisible) {\n this._domNode.setVisibility('inherit');\n this._isVisible = true;\n }\n }\n hide() {\n if (this._isVisible) {\n this._domNode.setVisibility('hidden');\n this._isVisible = false;\n }\n }\n onConfigurationChanged(e) {\n const options = this._context.configuration.options;\n const fontInfo = options.get(50 /* EditorOption.fontInfo */);\n this._cursorStyle = options.get(28 /* EditorOption.cursorStyle */);\n this._lineHeight = options.get(67 /* EditorOption.lineHeight */);\n this._typicalHalfwidthCharacterWidth = fontInfo.typicalHalfwidthCharacterWidth;\n this._lineCursorWidth = Math.min(options.get(31 /* EditorOption.cursorWidth */), this._typicalHalfwidthCharacterWidth);\n (0,_config_domFontInfo_js__WEBPACK_IMPORTED_MODULE_3__.applyFontInfo)(this._domNode, fontInfo);\n return true;\n }\n onCursorPositionChanged(position, pauseAnimation) {\n if (pauseAnimation) {\n this._domNode.domNode.style.transitionProperty = 'none';\n }\n else {\n this._domNode.domNode.style.transitionProperty = '';\n }\n this._position = position;\n return true;\n }\n /**\n * If `this._position` is inside a grapheme, returns the position where the grapheme starts.\n * Also returns the next grapheme.\n */\n _getGraphemeAwarePosition() {\n const { lineNumber, column } = this._position;\n const lineContent = this._context.viewModel.getLineContent(lineNumber);\n const [startOffset, endOffset] = _base_common_strings_js__WEBPACK_IMPORTED_MODULE_2__.getCharContainingOffset(lineContent, column - 1);\n return [new _common_core_position_js__WEBPACK_IMPORTED_MODULE_5__.Position(lineNumber, startOffset + 1), lineContent.substring(startOffset, endOffset)];\n }\n _prepareRender(ctx) {\n let textContent = '';\n let textContentClassName = '';\n const [position, nextGrapheme] = this._getGraphemeAwarePosition();\n if (this._cursorStyle === _common_config_editorOptions_js__WEBPACK_IMPORTED_MODULE_4__.TextEditorCursorStyle.Line || this._cursorStyle === _common_config_editorOptions_js__WEBPACK_IMPORTED_MODULE_4__.TextEditorCursorStyle.LineThin) {\n const visibleRange = ctx.visibleRangeForPosition(position);\n if (!visibleRange || visibleRange.outsideRenderedLine) {\n // Outside viewport\n return null;\n }\n const window = _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.getWindow(this._domNode.domNode);\n let width;\n if (this._cursorStyle === _common_config_editorOptions_js__WEBPACK_IMPORTED_MODULE_4__.TextEditorCursorStyle.Line) {\n width = _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.computeScreenAwareSize(window, this._lineCursorWidth > 0 ? this._lineCursorWidth : 2);\n if (width > 2) {\n textContent = nextGrapheme;\n textContentClassName = this._getTokenClassName(position);\n }\n }\n else {\n width = _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.computeScreenAwareSize(window, 1);\n }\n let left = visibleRange.left;\n let paddingLeft = 0;\n if (width >= 2 && left >= 1) {\n // shift the cursor a bit between the characters\n paddingLeft = 1;\n left -= paddingLeft;\n }\n const top = ctx.getVerticalOffsetForLineNumber(position.lineNumber) - ctx.bigNumbersDelta;\n return new ViewCursorRenderData(top, left, paddingLeft, width, this._lineHeight, textContent, textContentClassName);\n }\n const visibleRangeForCharacter = ctx.linesVisibleRangesForRange(new _common_core_range_js__WEBPACK_IMPORTED_MODULE_6__.Range(position.lineNumber, position.column, position.lineNumber, position.column + nextGrapheme.length), false);\n if (!visibleRangeForCharacter || visibleRangeForCharacter.length === 0) {\n // Outside viewport\n return null;\n }\n const firstVisibleRangeForCharacter = visibleRangeForCharacter[0];\n if (firstVisibleRangeForCharacter.outsideRenderedLine || firstVisibleRangeForCharacter.ranges.length === 0) {\n // Outside viewport\n return null;\n }\n const range = firstVisibleRangeForCharacter.ranges[0];\n const width = (nextGrapheme === '\\t'\n ? this._typicalHalfwidthCharacterWidth\n : (range.width < 1\n ? this._typicalHalfwidthCharacterWidth\n : range.width));\n if (this._cursorStyle === _common_config_editorOptions_js__WEBPACK_IMPORTED_MODULE_4__.TextEditorCursorStyle.Block) {\n textContent = nextGrapheme;\n textContentClassName = this._getTokenClassName(position);\n }\n let top = ctx.getVerticalOffsetForLineNumber(position.lineNumber) - ctx.bigNumbersDelta;\n let height = this._lineHeight;\n // Underline might interfere with clicking\n if (this._cursorStyle === _common_config_editorOptions_js__WEBPACK_IMPORTED_MODULE_4__.TextEditorCursorStyle.Underline || this._cursorStyle === _common_config_editorOptions_js__WEBPACK_IMPORTED_MODULE_4__.TextEditorCursorStyle.UnderlineThin) {\n top += this._lineHeight - 2;\n height = 2;\n }\n return new ViewCursorRenderData(top, range.left, 0, width, height, textContent, textContentClassName);\n }\n _getTokenClassName(position) {\n const lineData = this._context.viewModel.getViewLineData(position.lineNumber);\n const tokenIndex = lineData.tokens.findTokenIndexAtOffset(position.column - 1);\n return lineData.tokens.getClassName(tokenIndex);\n }\n prepareRender(ctx) {\n this._renderData = this._prepareRender(ctx);\n }\n render(ctx) {\n if (!this._renderData) {\n this._domNode.setDisplay('none');\n return null;\n }\n if (this._lastRenderedContent !== this._renderData.textContent) {\n this._lastRenderedContent = this._renderData.textContent;\n this._domNode.domNode.textContent = this._lastRenderedContent;\n }\n this._domNode.setClassName(`cursor ${_base_browser_ui_mouseCursor_mouseCursor_js__WEBPACK_IMPORTED_MODULE_7__.MOUSE_CURSOR_TEXT_CSS_CLASS_NAME} ${this._renderData.textContentClassName}`);\n this._domNode.setDisplay('block');\n this._domNode.setTop(this._renderData.top);\n this._domNode.setLeft(this._renderData.left);\n this._domNode.setPaddingLeft(this._renderData.paddingLeft);\n this._domNode.setWidth(this._renderData.width);\n this._domNode.setLineHeight(this._renderData.height);\n this._domNode.setHeight(this._renderData.height);\n return {\n domNode: this._domNode.domNode,\n position: this._position,\n contentLeft: this._renderData.left,\n height: this._renderData.height,\n width: 2\n };\n }\n}\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/browser/viewParts/viewCursors/viewCursor.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/browser/viewParts/viewCursors/viewCursors.js":
/*!***********************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/browser/viewParts/viewCursors/viewCursors.js ***!
\***********************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ ViewCursors: () => (/* binding */ ViewCursors)\n/* harmony export */ });\n/* harmony import */ var _viewCursors_css__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./viewCursors.css */ \"./node_modules/monaco-editor/esm/vs/editor/browser/viewParts/viewCursors/viewCursors.css\");\n/* harmony import */ var _base_browser_fastDomNode_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../base/browser/fastDomNode.js */ \"./node_modules/monaco-editor/esm/vs/base/browser/fastDomNode.js\");\n/* harmony import */ var _base_common_async_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../../base/common/async.js */ \"./node_modules/monaco-editor/esm/vs/base/common/async.js\");\n/* harmony import */ var _view_viewPart_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../view/viewPart.js */ \"./node_modules/monaco-editor/esm/vs/editor/browser/view/viewPart.js\");\n/* harmony import */ var _viewCursor_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./viewCursor.js */ \"./node_modules/monaco-editor/esm/vs/editor/browser/viewParts/viewCursors/viewCursor.js\");\n/* harmony import */ var _common_config_editorOptions_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../../../common/config/editorOptions.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/config/editorOptions.js\");\n/* harmony import */ var _common_core_editorColorRegistry_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../../../common/core/editorColorRegistry.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/core/editorColorRegistry.js\");\n/* harmony import */ var _platform_theme_common_themeService_js__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ../../../../platform/theme/common/themeService.js */ \"./node_modules/monaco-editor/esm/vs/platform/theme/common/themeService.js\");\n/* harmony import */ var _platform_theme_common_theme_js__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ../../../../platform/theme/common/theme.js */ \"./node_modules/monaco-editor/esm/vs/platform/theme/common/theme.js\");\n/* harmony import */ var _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ../../../../base/browser/dom.js */ \"./node_modules/monaco-editor/esm/vs/base/browser/dom.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n\n\n\n\n\n\n\n\n\nclass ViewCursors extends _view_viewPart_js__WEBPACK_IMPORTED_MODULE_3__.ViewPart {\n constructor(context) {\n super(context);\n const options = this._context.configuration.options;\n this._readOnly = options.get(91 /* EditorOption.readOnly */);\n this._cursorBlinking = options.get(26 /* EditorOption.cursorBlinking */);\n this._cursorStyle = options.get(28 /* EditorOption.cursorStyle */);\n this._cursorSmoothCaretAnimation = options.get(27 /* EditorOption.cursorSmoothCaretAnimation */);\n this._selectionIsEmpty = true;\n this._isComposingInput = false;\n this._isVisible = false;\n this._primaryCursor = new _viewCursor_js__WEBPACK_IMPORTED_MODULE_4__.ViewCursor(this._context);\n this._secondaryCursors = [];\n this._renderData = [];\n this._domNode = (0,_base_browser_fastDomNode_js__WEBPACK_IMPORTED_MODULE_1__.createFastDomNode)(document.createElement('div'));\n this._domNode.setAttribute('role', 'presentation');\n this._domNode.setAttribute('aria-hidden', 'true');\n this._updateDomClassName();\n this._domNode.appendChild(this._primaryCursor.getDomNode());\n this._startCursorBlinkAnimation = new _base_common_async_js__WEBPACK_IMPORTED_MODULE_2__.TimeoutTimer();\n this._cursorFlatBlinkInterval = new _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_9__.WindowIntervalTimer();\n this._blinkingEnabled = false;\n this._editorHasFocus = false;\n this._updateBlinking();\n }\n dispose() {\n super.dispose();\n this._startCursorBlinkAnimation.dispose();\n this._cursorFlatBlinkInterval.dispose();\n }\n getDomNode() {\n return this._domNode;\n }\n // --- begin event handlers\n onCompositionStart(e) {\n this._isComposingInput = true;\n this._updateBlinking();\n return true;\n }\n onCompositionEnd(e) {\n this._isComposingInput = false;\n this._updateBlinking();\n return true;\n }\n onConfigurationChanged(e) {\n const options = this._context.configuration.options;\n this._readOnly = options.get(91 /* EditorOption.readOnly */);\n this._cursorBlinking = options.get(26 /* EditorOption.cursorBlinking */);\n this._cursorStyle = options.get(28 /* EditorOption.cursorStyle */);\n this._cursorSmoothCaretAnimation = options.get(27 /* EditorOption.cursorSmoothCaretAnimation */);\n this._updateBlinking();\n this._updateDomClassName();\n this._primaryCursor.onConfigurationChanged(e);\n for (let i = 0, len = this._secondaryCursors.length; i < len; i++) {\n this._secondaryCursors[i].onConfigurationChanged(e);\n }\n return true;\n }\n _onCursorPositionChanged(position, secondaryPositions, reason) {\n const pauseAnimation = (this._secondaryCursors.length !== secondaryPositions.length\n || (this._cursorSmoothCaretAnimation === 'explicit' && reason !== 3 /* CursorChangeReason.Explicit */));\n this._primaryCursor.onCursorPositionChanged(position, pauseAnimation);\n this._updateBlinking();\n if (this._secondaryCursors.length < secondaryPositions.length) {\n // Create new cursors\n const addCnt = secondaryPositions.length - this._secondaryCursors.length;\n for (let i = 0; i < addCnt; i++) {\n const newCursor = new _viewCursor_js__WEBPACK_IMPORTED_MODULE_4__.ViewCursor(this._context);\n this._domNode.domNode.insertBefore(newCursor.getDomNode().domNode, this._primaryCursor.getDomNode().domNode.nextSibling);\n this._secondaryCursors.push(newCursor);\n }\n }\n else if (this._secondaryCursors.length > secondaryPositions.length) {\n // Remove some cursors\n const removeCnt = this._secondaryCursors.length - secondaryPositions.length;\n for (let i = 0; i < removeCnt; i++) {\n this._domNode.removeChild(this._secondaryCursors[0].getDomNode());\n this._secondaryCursors.splice(0, 1);\n }\n }\n for (let i = 0; i < secondaryPositions.length; i++) {\n this._secondaryCursors[i].onCursorPositionChanged(secondaryPositions[i], pauseAnimation);\n }\n }\n onCursorStateChanged(e) {\n const positions = [];\n for (let i = 0, len = e.selections.length; i < len; i++) {\n positions[i] = e.selections[i].getPosition();\n }\n this._onCursorPositionChanged(positions[0], positions.slice(1), e.reason);\n const selectionIsEmpty = e.selections[0].isEmpty();\n if (this._selectionIsEmpty !== selectionIsEmpty) {\n this._selectionIsEmpty = selectionIsEmpty;\n this._updateDomClassName();\n }\n return true;\n }\n onDecorationsChanged(e) {\n // true for inline decorations that can end up relayouting text\n return true;\n }\n onFlushed(e) {\n return true;\n }\n onFocusChanged(e) {\n this._editorHasFocus = e.isFocused;\n this._updateBlinking();\n return false;\n }\n onLinesChanged(e) {\n return true;\n }\n onLinesDeleted(e) {\n return true;\n }\n onLinesInserted(e) {\n return true;\n }\n onScrollChanged(e) {\n return true;\n }\n onTokensChanged(e) {\n const shouldRender = (position) => {\n for (let i = 0, len = e.ranges.length; i < len; i++) {\n if (e.ranges[i].fromLineNumber <= position.lineNumber && position.lineNumber <= e.ranges[i].toLineNumber) {\n return true;\n }\n }\n return false;\n };\n if (shouldRender(this._primaryCursor.getPosition())) {\n return true;\n }\n for (const secondaryCursor of this._secondaryCursors) {\n if (shouldRender(secondaryCursor.getPosition())) {\n return true;\n }\n }\n return false;\n }\n onZonesChanged(e) {\n return true;\n }\n // --- end event handlers\n // ---- blinking logic\n _getCursorBlinking() {\n if (this._isComposingInput) {\n // avoid double cursors\n return 0 /* TextEditorCursorBlinkingStyle.Hidden */;\n }\n if (!this._editorHasFocus) {\n return 0 /* TextEditorCursorBlinkingStyle.Hidden */;\n }\n if (this._readOnly) {\n return 5 /* TextEditorCursorBlinkingStyle.Solid */;\n }\n return this._cursorBlinking;\n }\n _updateBlinking() {\n this._startCursorBlinkAnimation.cancel();\n this._cursorFlatBlinkInterval.cancel();\n const blinkingStyle = this._getCursorBlinking();\n // hidden and solid are special as they involve no animations\n const isHidden = (blinkingStyle === 0 /* TextEditorCursorBlinkingStyle.Hidden */);\n const isSolid = (blinkingStyle === 5 /* TextEditorCursorBlinkingStyle.Solid */);\n if (isHidden) {\n this._hide();\n }\n else {\n this._show();\n }\n this._blinkingEnabled = false;\n this._updateDomClassName();\n if (!isHidden && !isSolid) {\n if (blinkingStyle === 1 /* TextEditorCursorBlinkingStyle.Blink */) {\n // flat blinking is handled by JavaScript to save battery life due to Chromium step timing issue https://bugs.chromium.org/p/chromium/issues/detail?id=361587\n this._cursorFlatBlinkInterval.cancelAndSet(() => {\n if (this._isVisible) {\n this._hide();\n }\n else {\n this._show();\n }\n }, ViewCursors.BLINK_INTERVAL, (0,_base_browser_dom_js__WEBPACK_IMPORTED_MODULE_9__.getWindow)(this._domNode.domNode));\n }\n else {\n this._startCursorBlinkAnimation.setIfNotSet(() => {\n this._blinkingEnabled = true;\n this._updateDomClassName();\n }, ViewCursors.BLINK_INTERVAL);\n }\n }\n }\n // --- end blinking logic\n _updateDomClassName() {\n this._domNode.setClassName(this._getClassName());\n }\n _getClassName() {\n let result = 'cursors-layer';\n if (!this._selectionIsEmpty) {\n result += ' has-selection';\n }\n switch (this._cursorStyle) {\n case _common_config_editorOptions_js__WEBPACK_IMPORTED_MODULE_5__.TextEditorCursorStyle.Line:\n result += ' cursor-line-style';\n break;\n case _common_config_editorOptions_js__WEBPACK_IMPORTED_MODULE_5__.TextEditorCursorStyle.Block:\n result += ' cursor-block-style';\n break;\n case _common_config_editorOptions_js__WEBPACK_IMPORTED_MODULE_5__.TextEditorCursorStyle.Underline:\n result += ' cursor-underline-style';\n break;\n case _common_config_editorOptions_js__WEBPACK_IMPORTED_MODULE_5__.TextEditorCursorStyle.LineThin:\n result += ' cursor-line-thin-style';\n break;\n case _common_config_editorOptions_js__WEBPACK_IMPORTED_MODULE_5__.TextEditorCursorStyle.BlockOutline:\n result += ' cursor-block-outline-style';\n break;\n case _common_config_editorOptions_js__WEBPACK_IMPORTED_MODULE_5__.TextEditorCursorStyle.UnderlineThin:\n result += ' cursor-underline-thin-style';\n break;\n default:\n result += ' cursor-line-style';\n }\n if (this._blinkingEnabled) {\n switch (this._getCursorBlinking()) {\n case 1 /* TextEditorCursorBlinkingStyle.Blink */:\n result += ' cursor-blink';\n break;\n case 2 /* TextEditorCursorBlinkingStyle.Smooth */:\n result += ' cursor-smooth';\n break;\n case 3 /* TextEditorCursorBlinkingStyle.Phase */:\n result += ' cursor-phase';\n break;\n case 4 /* TextEditorCursorBlinkingStyle.Expand */:\n result += ' cursor-expand';\n break;\n case 5 /* TextEditorCursorBlinkingStyle.Solid */:\n result += ' cursor-solid';\n break;\n default:\n result += ' cursor-solid';\n }\n }\n else {\n result += ' cursor-solid';\n }\n if (this._cursorSmoothCaretAnimation === 'on' || this._cursorSmoothCaretAnimation === 'explicit') {\n result += ' cursor-smooth-caret-animation';\n }\n return result;\n }\n _show() {\n this._primaryCursor.show();\n for (let i = 0, len = this._secondaryCursors.length; i < len; i++) {\n this._secondaryCursors[i].show();\n }\n this._isVisible = true;\n }\n _hide() {\n this._primaryCursor.hide();\n for (let i = 0, len = this._secondaryCursors.length; i < len; i++) {\n this._secondaryCursors[i].hide();\n }\n this._isVisible = false;\n }\n // ---- IViewPart implementation\n prepareRender(ctx) {\n this._primaryCursor.prepareRender(ctx);\n for (let i = 0, len = this._secondaryCursors.length; i < len; i++) {\n this._secondaryCursors[i].prepareRender(ctx);\n }\n }\n render(ctx) {\n const renderData = [];\n let renderDataLen = 0;\n const primaryRenderData = this._primaryCursor.render(ctx);\n if (primaryRenderData) {\n renderData[renderDataLen++] = primaryRenderData;\n }\n for (let i = 0, len = this._secondaryCursors.length; i < len; i++) {\n const secondaryRenderData = this._secondaryCursors[i].render(ctx);\n if (secondaryRenderData) {\n renderData[renderDataLen++] = secondaryRenderData;\n }\n }\n this._renderData = renderData;\n }\n getLastRenderData() {\n return this._renderData;\n }\n}\nViewCursors.BLINK_INTERVAL = 500;\n(0,_platform_theme_common_themeService_js__WEBPACK_IMPORTED_MODULE_7__.registerThemingParticipant)((theme, collector) => {\n const caret = theme.getColor(_common_core_editorColorRegistry_js__WEBPACK_IMPORTED_MODULE_6__.editorCursorForeground);\n if (caret) {\n let caretBackground = theme.getColor(_common_core_editorColorRegistry_js__WEBPACK_IMPORTED_MODULE_6__.editorCursorBackground);\n if (!caretBackground) {\n caretBackground = caret.opposite();\n }\n collector.addRule(`.monaco-editor .cursors-layer .cursor { background-color: ${caret}; border-color: ${caret}; color: ${caretBackground}; }`);\n if ((0,_platform_theme_common_theme_js__WEBPACK_IMPORTED_MODULE_8__.isHighContrast)(theme.type)) {\n collector.addRule(`.monaco-editor .cursors-layer.has-selection .cursor { border-left: 1px solid ${caretBackground}; border-right: 1px solid ${caretBackground}; }`);\n }\n }\n});\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/browser/viewParts/viewCursors/viewCursors.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/browser/viewParts/viewZones/viewZones.js":
/*!*******************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/browser/viewParts/viewZones/viewZones.js ***!
\*******************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ ViewZones: () => (/* binding */ ViewZones)\n/* harmony export */ });\n/* harmony import */ var _base_browser_fastDomNode_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../../base/browser/fastDomNode.js */ \"./node_modules/monaco-editor/esm/vs/base/browser/fastDomNode.js\");\n/* harmony import */ var _base_common_errors_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../base/common/errors.js */ \"./node_modules/monaco-editor/esm/vs/base/common/errors.js\");\n/* harmony import */ var _view_viewPart_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../view/viewPart.js */ \"./node_modules/monaco-editor/esm/vs/editor/browser/view/viewPart.js\");\n/* harmony import */ var _common_core_position_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../../common/core/position.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/core/position.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n\n\n\nconst invalidFunc = () => { throw new Error(`Invalid change accessor`); };\nclass ViewZones extends _view_viewPart_js__WEBPACK_IMPORTED_MODULE_2__.ViewPart {\n constructor(context) {\n super(context);\n const options = this._context.configuration.options;\n const layoutInfo = options.get(144 /* EditorOption.layoutInfo */);\n this._lineHeight = options.get(67 /* EditorOption.lineHeight */);\n this._contentWidth = layoutInfo.contentWidth;\n this._contentLeft = layoutInfo.contentLeft;\n this.domNode = (0,_base_browser_fastDomNode_js__WEBPACK_IMPORTED_MODULE_0__.createFastDomNode)(document.createElement('div'));\n this.domNode.setClassName('view-zones');\n this.domNode.setPosition('absolute');\n this.domNode.setAttribute('role', 'presentation');\n this.domNode.setAttribute('aria-hidden', 'true');\n this.marginDomNode = (0,_base_browser_fastDomNode_js__WEBPACK_IMPORTED_MODULE_0__.createFastDomNode)(document.createElement('div'));\n this.marginDomNode.setClassName('margin-view-zones');\n this.marginDomNode.setPosition('absolute');\n this.marginDomNode.setAttribute('role', 'presentation');\n this.marginDomNode.setAttribute('aria-hidden', 'true');\n this._zones = {};\n }\n dispose() {\n super.dispose();\n this._zones = {};\n }\n // ---- begin view event handlers\n _recomputeWhitespacesProps() {\n const whitespaces = this._context.viewLayout.getWhitespaces();\n const oldWhitespaces = new Map();\n for (const whitespace of whitespaces) {\n oldWhitespaces.set(whitespace.id, whitespace);\n }\n let hadAChange = false;\n this._context.viewModel.changeWhitespace((whitespaceAccessor) => {\n const keys = Object.keys(this._zones);\n for (let i = 0, len = keys.length; i < len; i++) {\n const id = keys[i];\n const zone = this._zones[id];\n const props = this._computeWhitespaceProps(zone.delegate);\n zone.isInHiddenArea = props.isInHiddenArea;\n const oldWhitespace = oldWhitespaces.get(id);\n if (oldWhitespace && (oldWhitespace.afterLineNumber !== props.afterViewLineNumber || oldWhitespace.height !== props.heightInPx)) {\n whitespaceAccessor.changeOneWhitespace(id, props.afterViewLineNumber, props.heightInPx);\n this._safeCallOnComputedHeight(zone.delegate, props.heightInPx);\n hadAChange = true;\n }\n }\n });\n return hadAChange;\n }\n onConfigurationChanged(e) {\n const options = this._context.configuration.options;\n const layoutInfo = options.get(144 /* EditorOption.layoutInfo */);\n this._lineHeight = options.get(67 /* EditorOption.lineHeight */);\n this._contentWidth = layoutInfo.contentWidth;\n this._contentLeft = layoutInfo.contentLeft;\n if (e.hasChanged(67 /* EditorOption.lineHeight */)) {\n this._recomputeWhitespacesProps();\n }\n return true;\n }\n onLineMappingChanged(e) {\n return this._recomputeWhitespacesProps();\n }\n onLinesDeleted(e) {\n return true;\n }\n onScrollChanged(e) {\n return e.scrollTopChanged || e.scrollWidthChanged;\n }\n onZonesChanged(e) {\n return true;\n }\n onLinesInserted(e) {\n return true;\n }\n // ---- end view event handlers\n _getZoneOrdinal(zone) {\n var _a, _b;\n return (_b = (_a = zone.ordinal) !== null && _a !== void 0 ? _a : zone.afterColumn) !== null && _b !== void 0 ? _b : 10000;\n }\n _computeWhitespaceProps(zone) {\n if (zone.afterLineNumber === 0) {\n return {\n isInHiddenArea: false,\n afterViewLineNumber: 0,\n heightInPx: this._heightInPixels(zone),\n minWidthInPx: this._minWidthInPixels(zone)\n };\n }\n let zoneAfterModelPosition;\n if (typeof zone.afterColumn !== 'undefined') {\n zoneAfterModelPosition = this._context.viewModel.model.validatePosition({\n lineNumber: zone.afterLineNumber,\n column: zone.afterColumn\n });\n }\n else {\n const validAfterLineNumber = this._context.viewModel.model.validatePosition({\n lineNumber: zone.afterLineNumber,\n column: 1\n }).lineNumber;\n zoneAfterModelPosition = new _common_core_position_js__WEBPACK_IMPORTED_MODULE_3__.Position(validAfterLineNumber, this._context.viewModel.model.getLineMaxColumn(validAfterLineNumber));\n }\n let zoneBeforeModelPosition;\n if (zoneAfterModelPosition.column === this._context.viewModel.model.getLineMaxColumn(zoneAfterModelPosition.lineNumber)) {\n zoneBeforeModelPosition = this._context.viewModel.model.validatePosition({\n lineNumber: zoneAfterModelPosition.lineNumber + 1,\n column: 1\n });\n }\n else {\n zoneBeforeModelPosition = this._context.viewModel.model.validatePosition({\n lineNumber: zoneAfterModelPosition.lineNumber,\n column: zoneAfterModelPosition.column + 1\n });\n }\n const viewPosition = this._context.viewModel.coordinatesConverter.convertModelPositionToViewPosition(zoneAfterModelPosition, zone.afterColumnAffinity, true);\n const isVisible = zone.showInHiddenAreas || this._context.viewModel.coordinatesConverter.modelPositionIsVisible(zoneBeforeModelPosition);\n return {\n isInHiddenArea: !isVisible,\n afterViewLineNumber: viewPosition.lineNumber,\n heightInPx: (isVisible ? this._heightInPixels(zone) : 0),\n minWidthInPx: this._minWidthInPixels(zone)\n };\n }\n changeViewZones(callback) {\n let zonesHaveChanged = false;\n this._context.viewModel.changeWhitespace((whitespaceAccessor) => {\n const changeAccessor = {\n addZone: (zone) => {\n zonesHaveChanged = true;\n return this._addZone(whitespaceAccessor, zone);\n },\n removeZone: (id) => {\n if (!id) {\n return;\n }\n zonesHaveChanged = this._removeZone(whitespaceAccessor, id) || zonesHaveChanged;\n },\n layoutZone: (id) => {\n if (!id) {\n return;\n }\n zonesHaveChanged = this._layoutZone(whitespaceAccessor, id) || zonesHaveChanged;\n }\n };\n safeInvoke1Arg(callback, changeAccessor);\n // Invalidate changeAccessor\n changeAccessor.addZone = invalidFunc;\n changeAccessor.removeZone = invalidFunc;\n changeAccessor.layoutZone = invalidFunc;\n });\n return zonesHaveChanged;\n }\n _addZone(whitespaceAccessor, zone) {\n const props = this._computeWhitespaceProps(zone);\n const whitespaceId = whitespaceAccessor.insertWhitespace(props.afterViewLineNumber, this._getZoneOrdinal(zone), props.heightInPx, props.minWidthInPx);\n const myZone = {\n whitespaceId: whitespaceId,\n delegate: zone,\n isInHiddenArea: props.isInHiddenArea,\n isVisible: false,\n domNode: (0,_base_browser_fastDomNode_js__WEBPACK_IMPORTED_MODULE_0__.createFastDomNode)(zone.domNode),\n marginDomNode: zone.marginDomNode ? (0,_base_browser_fastDomNode_js__WEBPACK_IMPORTED_MODULE_0__.createFastDomNode)(zone.marginDomNode) : null\n };\n this._safeCallOnComputedHeight(myZone.delegate, props.heightInPx);\n myZone.domNode.setPosition('absolute');\n myZone.domNode.domNode.style.width = '100%';\n myZone.domNode.setDisplay('none');\n myZone.domNode.setAttribute('monaco-view-zone', myZone.whitespaceId);\n this.domNode.appendChild(myZone.domNode);\n if (myZone.marginDomNode) {\n myZone.marginDomNode.setPosition('absolute');\n myZone.marginDomNode.domNode.style.width = '100%';\n myZone.marginDomNode.setDisplay('none');\n myZone.marginDomNode.setAttribute('monaco-view-zone', myZone.whitespaceId);\n this.marginDomNode.appendChild(myZone.marginDomNode);\n }\n this._zones[myZone.whitespaceId] = myZone;\n this.setShouldRender();\n return myZone.whitespaceId;\n }\n _removeZone(whitespaceAccessor, id) {\n if (this._zones.hasOwnProperty(id)) {\n const zone = this._zones[id];\n delete this._zones[id];\n whitespaceAccessor.removeWhitespace(zone.whitespaceId);\n zone.domNode.removeAttribute('monaco-visible-view-zone');\n zone.domNode.removeAttribute('monaco-view-zone');\n zone.domNode.domNode.parentNode.removeChild(zone.domNode.domNode);\n if (zone.marginDomNode) {\n zone.marginDomNode.removeAttribute('monaco-visible-view-zone');\n zone.marginDomNode.removeAttribute('monaco-view-zone');\n zone.marginDomNode.domNode.parentNode.removeChild(zone.marginDomNode.domNode);\n }\n this.setShouldRender();\n return true;\n }\n return false;\n }\n _layoutZone(whitespaceAccessor, id) {\n if (this._zones.hasOwnProperty(id)) {\n const zone = this._zones[id];\n const props = this._computeWhitespaceProps(zone.delegate);\n zone.isInHiddenArea = props.isInHiddenArea;\n // const newOrdinal = this._getZoneOrdinal(zone.delegate);\n whitespaceAccessor.changeOneWhitespace(zone.whitespaceId, props.afterViewLineNumber, props.heightInPx);\n // TODO@Alex: change `newOrdinal` too\n this._safeCallOnComputedHeight(zone.delegate, props.heightInPx);\n this.setShouldRender();\n return true;\n }\n return false;\n }\n shouldSuppressMouseDownOnViewZone(id) {\n if (this._zones.hasOwnProperty(id)) {\n const zone = this._zones[id];\n return Boolean(zone.delegate.suppressMouseDown);\n }\n return false;\n }\n _heightInPixels(zone) {\n if (typeof zone.heightInPx === 'number') {\n return zone.heightInPx;\n }\n if (typeof zone.heightInLines === 'number') {\n return this._lineHeight * zone.heightInLines;\n }\n return this._lineHeight;\n }\n _minWidthInPixels(zone) {\n if (typeof zone.minWidthInPx === 'number') {\n return zone.minWidthInPx;\n }\n return 0;\n }\n _safeCallOnComputedHeight(zone, height) {\n if (typeof zone.onComputedHeight === 'function') {\n try {\n zone.onComputedHeight(height);\n }\n catch (e) {\n (0,_base_common_errors_js__WEBPACK_IMPORTED_MODULE_1__.onUnexpectedError)(e);\n }\n }\n }\n _safeCallOnDomNodeTop(zone, top) {\n if (typeof zone.onDomNodeTop === 'function') {\n try {\n zone.onDomNodeTop(top);\n }\n catch (e) {\n (0,_base_common_errors_js__WEBPACK_IMPORTED_MODULE_1__.onUnexpectedError)(e);\n }\n }\n }\n prepareRender(ctx) {\n // Nothing to read\n }\n render(ctx) {\n const visibleWhitespaces = ctx.viewportData.whitespaceViewportData;\n const visibleZones = {};\n let hasVisibleZone = false;\n for (const visibleWhitespace of visibleWhitespaces) {\n if (this._zones[visibleWhitespace.id].isInHiddenArea) {\n continue;\n }\n visibleZones[visibleWhitespace.id] = visibleWhitespace;\n hasVisibleZone = true;\n }\n const keys = Object.keys(this._zones);\n for (let i = 0, len = keys.length; i < len; i++) {\n const id = keys[i];\n const zone = this._zones[id];\n let newTop = 0;\n let newHeight = 0;\n let newDisplay = 'none';\n if (visibleZones.hasOwnProperty(id)) {\n newTop = visibleZones[id].verticalOffset - ctx.bigNumbersDelta;\n newHeight = visibleZones[id].height;\n newDisplay = 'block';\n // zone is visible\n if (!zone.isVisible) {\n zone.domNode.setAttribute('monaco-visible-view-zone', 'true');\n zone.isVisible = true;\n }\n this._safeCallOnDomNodeTop(zone.delegate, ctx.getScrolledTopFromAbsoluteTop(visibleZones[id].verticalOffset));\n }\n else {\n if (zone.isVisible) {\n zone.domNode.removeAttribute('monaco-visible-view-zone');\n zone.isVisible = false;\n }\n this._safeCallOnDomNodeTop(zone.delegate, ctx.getScrolledTopFromAbsoluteTop(-1000000));\n }\n zone.domNode.setTop(newTop);\n zone.domNode.setHeight(newHeight);\n zone.domNode.setDisplay(newDisplay);\n if (zone.marginDomNode) {\n zone.marginDomNode.setTop(newTop);\n zone.marginDomNode.setHeight(newHeight);\n zone.marginDomNode.setDisplay(newDisplay);\n }\n }\n if (hasVisibleZone) {\n this.domNode.setWidth(Math.max(ctx.scrollWidth, this._contentWidth));\n this.marginDomNode.setWidth(this._contentLeft);\n }\n }\n}\nfunction safeInvoke1Arg(func, arg1) {\n try {\n return func(arg1);\n }\n catch (e) {\n (0,_base_common_errors_js__WEBPACK_IMPORTED_MODULE_1__.onUnexpectedError)(e);\n }\n}\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/browser/viewParts/viewZones/viewZones.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/browser/viewParts/whitespace/whitespace.js":
/*!*********************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/browser/viewParts/whitespace/whitespace.js ***!
\*********************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ WhitespaceOverlay: () => (/* binding */ WhitespaceOverlay)\n/* harmony export */ });\n/* harmony import */ var _whitespace_css__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./whitespace.css */ \"./node_modules/monaco-editor/esm/vs/editor/browser/viewParts/whitespace/whitespace.css\");\n/* harmony import */ var _view_dynamicViewOverlay_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../view/dynamicViewOverlay.js */ \"./node_modules/monaco-editor/esm/vs/editor/browser/view/dynamicViewOverlay.js\");\n/* harmony import */ var _base_common_strings_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../../base/common/strings.js */ \"./node_modules/monaco-editor/esm/vs/base/common/strings.js\");\n/* harmony import */ var _common_viewLayout_viewLineRenderer_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../../common/viewLayout/viewLineRenderer.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/viewLayout/viewLineRenderer.js\");\n/* harmony import */ var _common_core_position_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../../common/core/position.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/core/position.js\");\n/* harmony import */ var _common_core_editorColorRegistry_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../../../common/core/editorColorRegistry.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/core/editorColorRegistry.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n\n\n\n\n\nclass WhitespaceOverlay extends _view_dynamicViewOverlay_js__WEBPACK_IMPORTED_MODULE_1__.DynamicViewOverlay {\n constructor(context) {\n super();\n this._context = context;\n this._options = new WhitespaceOptions(this._context.configuration);\n this._selection = [];\n this._renderResult = null;\n this._context.addEventHandler(this);\n }\n dispose() {\n this._context.removeEventHandler(this);\n this._renderResult = null;\n super.dispose();\n }\n // --- begin event handlers\n onConfigurationChanged(e) {\n const newOptions = new WhitespaceOptions(this._context.configuration);\n if (this._options.equals(newOptions)) {\n return e.hasChanged(144 /* EditorOption.layoutInfo */);\n }\n this._options = newOptions;\n return true;\n }\n onCursorStateChanged(e) {\n this._selection = e.selections;\n if (this._options.renderWhitespace === 'selection') {\n return true;\n }\n return false;\n }\n onDecorationsChanged(e) {\n return true;\n }\n onFlushed(e) {\n return true;\n }\n onLinesChanged(e) {\n return true;\n }\n onLinesDeleted(e) {\n return true;\n }\n onLinesInserted(e) {\n return true;\n }\n onScrollChanged(e) {\n return e.scrollTopChanged;\n }\n onZonesChanged(e) {\n return true;\n }\n // --- end event handlers\n prepareRender(ctx) {\n if (this._options.renderWhitespace === 'none') {\n this._renderResult = null;\n return;\n }\n const startLineNumber = ctx.visibleRange.startLineNumber;\n const endLineNumber = ctx.visibleRange.endLineNumber;\n const lineCount = endLineNumber - startLineNumber + 1;\n const needed = new Array(lineCount);\n for (let i = 0; i < lineCount; i++) {\n needed[i] = true;\n }\n const viewportData = this._context.viewModel.getMinimapLinesRenderingData(ctx.viewportData.startLineNumber, ctx.viewportData.endLineNumber, needed);\n this._renderResult = [];\n for (let lineNumber = ctx.viewportData.startLineNumber; lineNumber <= ctx.viewportData.endLineNumber; lineNumber++) {\n const lineIndex = lineNumber - ctx.viewportData.startLineNumber;\n const lineData = viewportData.data[lineIndex];\n let selectionsOnLine = null;\n if (this._options.renderWhitespace === 'selection') {\n const selections = this._selection;\n for (const selection of selections) {\n if (selection.endLineNumber < lineNumber || selection.startLineNumber > lineNumber) {\n // Selection does not intersect line\n continue;\n }\n const startColumn = (selection.startLineNumber === lineNumber ? selection.startColumn : lineData.minColumn);\n const endColumn = (selection.endLineNumber === lineNumber ? selection.endColumn : lineData.maxColumn);\n if (startColumn < endColumn) {\n if (!selectionsOnLine) {\n selectionsOnLine = [];\n }\n selectionsOnLine.push(new _common_viewLayout_viewLineRenderer_js__WEBPACK_IMPORTED_MODULE_3__.LineRange(startColumn - 1, endColumn - 1));\n }\n }\n }\n this._renderResult[lineIndex] = this._applyRenderWhitespace(ctx, lineNumber, selectionsOnLine, lineData);\n }\n }\n _applyRenderWhitespace(ctx, lineNumber, selections, lineData) {\n if (this._options.renderWhitespace === 'selection' && !selections) {\n return '';\n }\n if (this._options.renderWhitespace === 'trailing' && lineData.continuesWithWrappedLine) {\n return '';\n }\n const color = this._context.theme.getColor(_common_core_editorColorRegistry_js__WEBPACK_IMPORTED_MODULE_5__.editorWhitespaces);\n const USE_SVG = this._options.renderWithSVG;\n const lineContent = lineData.content;\n const len = (this._options.stopRenderingLineAfter === -1 ? lineContent.length : Math.min(this._options.stopRenderingLineAfter, lineContent.length));\n const continuesWithWrappedLine = lineData.continuesWithWrappedLine;\n const fauxIndentLength = lineData.minColumn - 1;\n const onlyBoundary = (this._options.renderWhitespace === 'boundary');\n const onlyTrailing = (this._options.renderWhitespace === 'trailing');\n const lineHeight = this._options.lineHeight;\n const middotWidth = this._options.middotWidth;\n const wsmiddotWidth = this._options.wsmiddotWidth;\n const spaceWidth = this._options.spaceWidth;\n const wsmiddotDiff = Math.abs(wsmiddotWidth - spaceWidth);\n const middotDiff = Math.abs(middotWidth - spaceWidth);\n // U+2E31 - WORD SEPARATOR MIDDLE DOT\n // U+00B7 - MIDDLE DOT\n const renderSpaceCharCode = (wsmiddotDiff < middotDiff ? 0x2E31 : 0xB7);\n const canUseHalfwidthRightwardsArrow = this._options.canUseHalfwidthRightwardsArrow;\n let result = '';\n let lineIsEmptyOrWhitespace = false;\n let firstNonWhitespaceIndex = _base_common_strings_js__WEBPACK_IMPORTED_MODULE_2__.firstNonWhitespaceIndex(lineContent);\n let lastNonWhitespaceIndex;\n if (firstNonWhitespaceIndex === -1) {\n lineIsEmptyOrWhitespace = true;\n firstNonWhitespaceIndex = len;\n lastNonWhitespaceIndex = len;\n }\n else {\n lastNonWhitespaceIndex = _base_common_strings_js__WEBPACK_IMPORTED_MODULE_2__.lastNonWhitespaceIndex(lineContent);\n }\n let currentSelectionIndex = 0;\n let currentSelection = selections && selections[currentSelectionIndex];\n let maxLeft = 0;\n for (let charIndex = fauxIndentLength; charIndex < len; charIndex++) {\n const chCode = lineContent.charCodeAt(charIndex);\n if (currentSelection && charIndex >= currentSelection.endOffset) {\n currentSelectionIndex++;\n currentSelection = selections && selections[currentSelectionIndex];\n }\n if (chCode !== 9 /* CharCode.Tab */ && chCode !== 32 /* CharCode.Space */) {\n continue;\n }\n if (onlyTrailing && !lineIsEmptyOrWhitespace && charIndex <= lastNonWhitespaceIndex) {\n // If rendering only trailing whitespace, check that the charIndex points to trailing whitespace.\n continue;\n }\n if (onlyBoundary && charIndex >= firstNonWhitespaceIndex && charIndex <= lastNonWhitespaceIndex && chCode === 32 /* CharCode.Space */) {\n // rendering only boundary whitespace\n const prevChCode = (charIndex - 1 >= 0 ? lineContent.charCodeAt(charIndex - 1) : 0 /* CharCode.Null */);\n const nextChCode = (charIndex + 1 < len ? lineContent.charCodeAt(charIndex + 1) : 0 /* CharCode.Null */);\n if (prevChCode !== 32 /* CharCode.Space */ && nextChCode !== 32 /* CharCode.Space */) {\n continue;\n }\n }\n if (onlyBoundary && continuesWithWrappedLine && charIndex === len - 1) {\n const prevCharCode = (charIndex - 1 >= 0 ? lineContent.charCodeAt(charIndex - 1) : 0 /* CharCode.Null */);\n const isSingleTrailingSpace = (chCode === 32 /* CharCode.Space */ && (prevCharCode !== 32 /* CharCode.Space */ && prevCharCode !== 9 /* CharCode.Tab */));\n if (isSingleTrailingSpace) {\n continue;\n }\n }\n if (selections && (!currentSelection || currentSelection.startOffset > charIndex || currentSelection.endOffset <= charIndex)) {\n // If rendering whitespace on selection, check that the charIndex falls within a selection\n continue;\n }\n const visibleRange = ctx.visibleRangeForPosition(new _common_core_position_js__WEBPACK_IMPORTED_MODULE_4__.Position(lineNumber, charIndex + 1));\n if (!visibleRange) {\n continue;\n }\n if (USE_SVG) {\n maxLeft = Math.max(maxLeft, visibleRange.left);\n if (chCode === 9 /* CharCode.Tab */) {\n result += this._renderArrow(lineHeight, spaceWidth, visibleRange.left);\n }\n else {\n result += ` `;\n }\n }\n else {\n if (chCode === 9 /* CharCode.Tab */) {\n result += ` ${canUseHalfwidthRightwardsArrow ? String.fromCharCode(0xFFEB) : String.fromCharCode(0x2192)} `;\n }\n else {\n result += ` ${String.fromCharCode(renderSpaceCharCode)} `;\n }\n }\n }\n if (USE_SVG) {\n maxLeft = Math.round(maxLeft + spaceWidth);\n return (` `);\n }\n return result;\n }\n _renderArrow(lineHeight, spaceWidth, left) {\n const strokeWidth = spaceWidth / 7;\n const width = spaceWidth;\n const dy = lineHeight / 2;\n const dx = left;\n const p1 = { x: 0, y: strokeWidth / 2 };\n const p2 = { x: 100 / 125 * width, y: p1.y };\n const p3 = { x: p2.x - 0.2 * p2.x, y: p2.y + 0.2 * p2.x };\n const p4 = { x: p3.x + 0.1 * p2.x, y: p3.y + 0.1 * p2.x };\n const p5 = { x: p4.x + 0.35 * p2.x, y: p4.y - 0.35 * p2.x };\n const p6 = { x: p5.x, y: -p5.y };\n const p7 = { x: p4.x, y: -p4.y };\n const p8 = { x: p3.x, y: -p3.y };\n const p9 = { x: p2.x, y: -p2.y };\n const p10 = { x: p1.x, y: -p1.y };\n const p = [p1, p2, p3, p4, p5, p6, p7, p8, p9, p10];\n const parts = p.map((p) => `${(dx + p.x).toFixed(2)} ${(dy + p.y).toFixed(2)}`).join(' L ');\n return ` `;\n }\n render(startLineNumber, lineNumber) {\n if (!this._renderResult) {\n return '';\n }\n const lineIndex = lineNumber - startLineNumber;\n if (lineIndex < 0 || lineIndex >= this._renderResult.length) {\n return '';\n }\n return this._renderResult[lineIndex];\n }\n}\nclass WhitespaceOptions {\n constructor(config) {\n const options = config.options;\n const fontInfo = options.get(50 /* EditorOption.fontInfo */);\n const experimentalWhitespaceRendering = options.get(38 /* EditorOption.experimentalWhitespaceRendering */);\n if (experimentalWhitespaceRendering === 'off') {\n // whitespace is rendered in the view line\n this.renderWhitespace = 'none';\n this.renderWithSVG = false;\n }\n else if (experimentalWhitespaceRendering === 'svg') {\n this.renderWhitespace = options.get(99 /* EditorOption.renderWhitespace */);\n this.renderWithSVG = true;\n }\n else {\n this.renderWhitespace = options.get(99 /* EditorOption.renderWhitespace */);\n this.renderWithSVG = false;\n }\n this.spaceWidth = fontInfo.spaceWidth;\n this.middotWidth = fontInfo.middotWidth;\n this.wsmiddotWidth = fontInfo.wsmiddotWidth;\n this.canUseHalfwidthRightwardsArrow = fontInfo.canUseHalfwidthRightwardsArrow;\n this.lineHeight = options.get(67 /* EditorOption.lineHeight */);\n this.stopRenderingLineAfter = options.get(117 /* EditorOption.stopRenderingLineAfter */);\n }\n equals(other) {\n return (this.renderWhitespace === other.renderWhitespace\n && this.renderWithSVG === other.renderWithSVG\n && this.spaceWidth === other.spaceWidth\n && this.middotWidth === other.middotWidth\n && this.wsmiddotWidth === other.wsmiddotWidth\n && this.canUseHalfwidthRightwardsArrow === other.canUseHalfwidthRightwardsArrow\n && this.lineHeight === other.lineHeight\n && this.stopRenderingLineAfter === other.stopRenderingLineAfter);\n }\n}\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/browser/viewParts/whitespace/whitespace.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/browser/widget/codeEditorContributions.js":
/*!********************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/browser/widget/codeEditorContributions.js ***!
\********************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ CodeEditorContributions: () => (/* binding */ CodeEditorContributions)\n/* harmony export */ });\n/* harmony import */ var _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../base/browser/dom.js */ \"./node_modules/monaco-editor/esm/vs/base/browser/dom.js\");\n/* harmony import */ var _base_common_errors_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../base/common/errors.js */ \"./node_modules/monaco-editor/esm/vs/base/common/errors.js\");\n/* harmony import */ var _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../base/common/lifecycle.js */ \"./node_modules/monaco-editor/esm/vs/base/common/lifecycle.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n\n\nclass CodeEditorContributions extends _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_2__.Disposable {\n constructor() {\n super();\n this._editor = null;\n this._instantiationService = null;\n /**\n * Contains all instantiated contributions.\n */\n this._instances = this._register(new _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_2__.DisposableMap());\n /**\n * Contains contributions which are not yet instantiated.\n */\n this._pending = new Map();\n /**\n * Tracks which instantiation kinds are still left in `_pending`.\n */\n this._finishedInstantiation = [];\n this._finishedInstantiation[0 /* EditorContributionInstantiation.Eager */] = false;\n this._finishedInstantiation[1 /* EditorContributionInstantiation.AfterFirstRender */] = false;\n this._finishedInstantiation[2 /* EditorContributionInstantiation.BeforeFirstInteraction */] = false;\n this._finishedInstantiation[3 /* EditorContributionInstantiation.Eventually */] = false;\n }\n initialize(editor, contributions, instantiationService) {\n this._editor = editor;\n this._instantiationService = instantiationService;\n for (const desc of contributions) {\n if (this._pending.has(desc.id)) {\n (0,_base_common_errors_js__WEBPACK_IMPORTED_MODULE_1__.onUnexpectedError)(new Error(`Cannot have two contributions with the same id ${desc.id}`));\n continue;\n }\n this._pending.set(desc.id, desc);\n }\n this._instantiateSome(0 /* EditorContributionInstantiation.Eager */);\n // AfterFirstRender\n // - these extensions will be instantiated at the latest 50ms after the first render.\n // - but if there is idle time, we will instantiate them sooner.\n this._register((0,_base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.runWhenWindowIdle)((0,_base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.getWindow)(this._editor.getDomNode()), () => {\n this._instantiateSome(1 /* EditorContributionInstantiation.AfterFirstRender */);\n }));\n // BeforeFirstInteraction\n // - these extensions will be instantiated at the latest before a mouse or a keyboard event.\n // - but if there is idle time, we will instantiate them sooner.\n this._register((0,_base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.runWhenWindowIdle)((0,_base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.getWindow)(this._editor.getDomNode()), () => {\n this._instantiateSome(2 /* EditorContributionInstantiation.BeforeFirstInteraction */);\n }));\n // Eventually\n // - these extensions will only be instantiated when there is idle time.\n // - since there is no guarantee that there will ever be idle time, we set a timeout of 5s here.\n this._register((0,_base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.runWhenWindowIdle)((0,_base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.getWindow)(this._editor.getDomNode()), () => {\n this._instantiateSome(3 /* EditorContributionInstantiation.Eventually */);\n }, 5000));\n }\n saveViewState() {\n const contributionsState = {};\n for (const [id, contribution] of this._instances) {\n if (typeof contribution.saveViewState === 'function') {\n contributionsState[id] = contribution.saveViewState();\n }\n }\n return contributionsState;\n }\n restoreViewState(contributionsState) {\n for (const [id, contribution] of this._instances) {\n if (typeof contribution.restoreViewState === 'function') {\n contribution.restoreViewState(contributionsState[id]);\n }\n }\n }\n get(id) {\n this._instantiateById(id);\n return this._instances.get(id) || null;\n }\n onBeforeInteractionEvent() {\n // this method is called very often by the editor!\n this._instantiateSome(2 /* EditorContributionInstantiation.BeforeFirstInteraction */);\n }\n onAfterModelAttached() {\n var _a;\n return (0,_base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.runWhenWindowIdle)((0,_base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.getWindow)((_a = this._editor) === null || _a === void 0 ? void 0 : _a.getDomNode()), () => {\n this._instantiateSome(1 /* EditorContributionInstantiation.AfterFirstRender */);\n }, 50);\n }\n _instantiateSome(instantiation) {\n if (this._finishedInstantiation[instantiation]) {\n // already done with this instantiation!\n return;\n }\n this._finishedInstantiation[instantiation] = true;\n const contribs = this._findPendingContributionsByInstantiation(instantiation);\n for (const contrib of contribs) {\n this._instantiateById(contrib.id);\n }\n }\n _findPendingContributionsByInstantiation(instantiation) {\n const result = [];\n for (const [, desc] of this._pending) {\n if (desc.instantiation === instantiation) {\n result.push(desc);\n }\n }\n return result;\n }\n _instantiateById(id) {\n const desc = this._pending.get(id);\n if (!desc) {\n return;\n }\n this._pending.delete(id);\n if (!this._instantiationService || !this._editor) {\n throw new Error(`Cannot instantiate contributions before being initialized!`);\n }\n try {\n const instance = this._instantiationService.createInstance(desc.ctor, this._editor);\n this._instances.set(desc.id, instance);\n if (typeof instance.restoreViewState === 'function' && desc.instantiation !== 0 /* EditorContributionInstantiation.Eager */) {\n console.warn(`Editor contribution '${desc.id}' should be eager instantiated because it uses saveViewState / restoreViewState.`);\n }\n }\n catch (err) {\n (0,_base_common_errors_js__WEBPACK_IMPORTED_MODULE_1__.onUnexpectedError)(err);\n }\n }\n}\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/browser/widget/codeEditorContributions.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/browser/widget/codeEditorWidget.js":
/*!*************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/browser/widget/codeEditorWidget.js ***!
\*************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ BooleanEventEmitter: () => (/* binding */ BooleanEventEmitter),\n/* harmony export */ CodeEditorWidget: () => (/* binding */ CodeEditorWidget),\n/* harmony export */ EditorModeContext: () => (/* binding */ EditorModeContext)\n/* harmony export */ });\n/* harmony import */ var _services_markerDecorations_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../services/markerDecorations.js */ \"./node_modules/monaco-editor/esm/vs/editor/browser/services/markerDecorations.js\");\n/* harmony import */ var _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../base/browser/dom.js */ \"./node_modules/monaco-editor/esm/vs/base/browser/dom.js\");\n/* harmony import */ var _base_common_errors_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../base/common/errors.js */ \"./node_modules/monaco-editor/esm/vs/base/common/errors.js\");\n/* harmony import */ var _base_common_event_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../../base/common/event.js */ \"./node_modules/monaco-editor/esm/vs/base/common/event.js\");\n/* harmony import */ var _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../../base/common/lifecycle.js */ \"./node_modules/monaco-editor/esm/vs/base/common/lifecycle.js\");\n/* harmony import */ var _base_common_network_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../../../base/common/network.js */ \"./node_modules/monaco-editor/esm/vs/base/common/network.js\");\n/* harmony import */ var _media_editor_css__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ./media/editor.css */ \"./node_modules/monaco-editor/esm/vs/editor/browser/widget/media/editor.css\");\n/* harmony import */ var _config_domFontInfo_js__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ../config/domFontInfo.js */ \"./node_modules/monaco-editor/esm/vs/editor/browser/config/domFontInfo.js\");\n/* harmony import */ var _config_editorConfiguration_js__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ../config/editorConfiguration.js */ \"./node_modules/monaco-editor/esm/vs/editor/browser/config/editorConfiguration.js\");\n/* harmony import */ var _config_tabFocus_js__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ../config/tabFocus.js */ \"./node_modules/monaco-editor/esm/vs/editor/browser/config/tabFocus.js\");\n/* harmony import */ var _editorExtensions_js__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! ../editorExtensions.js */ \"./node_modules/monaco-editor/esm/vs/editor/browser/editorExtensions.js\");\n/* harmony import */ var _services_codeEditorService_js__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(/*! ../services/codeEditorService.js */ \"./node_modules/monaco-editor/esm/vs/editor/browser/services/codeEditorService.js\");\n/* harmony import */ var _view_js__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(/*! ../view.js */ \"./node_modules/monaco-editor/esm/vs/editor/browser/view.js\");\n/* harmony import */ var _view_domLineBreaksComputer_js__WEBPACK_IMPORTED_MODULE_13__ = __webpack_require__(/*! ../view/domLineBreaksComputer.js */ \"./node_modules/monaco-editor/esm/vs/editor/browser/view/domLineBreaksComputer.js\");\n/* harmony import */ var _view_viewUserInputEvents_js__WEBPACK_IMPORTED_MODULE_14__ = __webpack_require__(/*! ../view/viewUserInputEvents.js */ \"./node_modules/monaco-editor/esm/vs/editor/browser/view/viewUserInputEvents.js\");\n/* harmony import */ var _codeEditorContributions_js__WEBPACK_IMPORTED_MODULE_15__ = __webpack_require__(/*! ./codeEditorContributions.js */ \"./node_modules/monaco-editor/esm/vs/editor/browser/widget/codeEditorContributions.js\");\n/* harmony import */ var _common_config_editorOptions_js__WEBPACK_IMPORTED_MODULE_16__ = __webpack_require__(/*! ../../common/config/editorOptions.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/config/editorOptions.js\");\n/* harmony import */ var _common_core_cursorColumns_js__WEBPACK_IMPORTED_MODULE_17__ = __webpack_require__(/*! ../../common/core/cursorColumns.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/core/cursorColumns.js\");\n/* harmony import */ var _common_core_editorColorRegistry_js__WEBPACK_IMPORTED_MODULE_18__ = __webpack_require__(/*! ../../common/core/editorColorRegistry.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/core/editorColorRegistry.js\");\n/* harmony import */ var _common_core_position_js__WEBPACK_IMPORTED_MODULE_19__ = __webpack_require__(/*! ../../common/core/position.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/core/position.js\");\n/* harmony import */ var _common_core_range_js__WEBPACK_IMPORTED_MODULE_20__ = __webpack_require__(/*! ../../common/core/range.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/core/range.js\");\n/* harmony import */ var _common_core_selection_js__WEBPACK_IMPORTED_MODULE_21__ = __webpack_require__(/*! ../../common/core/selection.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/core/selection.js\");\n/* harmony import */ var _common_cursor_cursorWordOperations_js__WEBPACK_IMPORTED_MODULE_22__ = __webpack_require__(/*! ../../common/cursor/cursorWordOperations.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/cursor/cursorWordOperations.js\");\n/* harmony import */ var _common_editorAction_js__WEBPACK_IMPORTED_MODULE_23__ = __webpack_require__(/*! ../../common/editorAction.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/editorAction.js\");\n/* harmony import */ var _common_editorCommon_js__WEBPACK_IMPORTED_MODULE_24__ = __webpack_require__(/*! ../../common/editorCommon.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/editorCommon.js\");\n/* harmony import */ var _common_editorContextKeys_js__WEBPACK_IMPORTED_MODULE_25__ = __webpack_require__(/*! ../../common/editorContextKeys.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/editorContextKeys.js\");\n/* harmony import */ var _common_languages_languageConfigurationRegistry_js__WEBPACK_IMPORTED_MODULE_26__ = __webpack_require__(/*! ../../common/languages/languageConfigurationRegistry.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/languages/languageConfigurationRegistry.js\");\n/* harmony import */ var _common_model_textModel_js__WEBPACK_IMPORTED_MODULE_27__ = __webpack_require__(/*! ../../common/model/textModel.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/model/textModel.js\");\n/* harmony import */ var _common_services_languageFeatures_js__WEBPACK_IMPORTED_MODULE_28__ = __webpack_require__(/*! ../../common/services/languageFeatures.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/services/languageFeatures.js\");\n/* harmony import */ var _common_viewModel_monospaceLineBreaksComputer_js__WEBPACK_IMPORTED_MODULE_29__ = __webpack_require__(/*! ../../common/viewModel/monospaceLineBreaksComputer.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/viewModel/monospaceLineBreaksComputer.js\");\n/* harmony import */ var _common_viewModel_viewModelImpl_js__WEBPACK_IMPORTED_MODULE_30__ = __webpack_require__(/*! ../../common/viewModel/viewModelImpl.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/viewModel/viewModelImpl.js\");\n/* harmony import */ var _nls_js__WEBPACK_IMPORTED_MODULE_31__ = __webpack_require__(/*! ../../../nls.js */ \"./node_modules/monaco-editor/esm/vs/nls.js\");\n/* harmony import */ var _platform_accessibility_common_accessibility_js__WEBPACK_IMPORTED_MODULE_32__ = __webpack_require__(/*! ../../../platform/accessibility/common/accessibility.js */ \"./node_modules/monaco-editor/esm/vs/platform/accessibility/common/accessibility.js\");\n/* harmony import */ var _platform_commands_common_commands_js__WEBPACK_IMPORTED_MODULE_33__ = __webpack_require__(/*! ../../../platform/commands/common/commands.js */ \"./node_modules/monaco-editor/esm/vs/platform/commands/common/commands.js\");\n/* harmony import */ var _platform_contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_34__ = __webpack_require__(/*! ../../../platform/contextkey/common/contextkey.js */ \"./node_modules/monaco-editor/esm/vs/platform/contextkey/common/contextkey.js\");\n/* harmony import */ var _platform_instantiation_common_instantiation_js__WEBPACK_IMPORTED_MODULE_35__ = __webpack_require__(/*! ../../../platform/instantiation/common/instantiation.js */ \"./node_modules/monaco-editor/esm/vs/platform/instantiation/common/instantiation.js\");\n/* harmony import */ var _platform_instantiation_common_serviceCollection_js__WEBPACK_IMPORTED_MODULE_36__ = __webpack_require__(/*! ../../../platform/instantiation/common/serviceCollection.js */ \"./node_modules/monaco-editor/esm/vs/platform/instantiation/common/serviceCollection.js\");\n/* harmony import */ var _platform_notification_common_notification_js__WEBPACK_IMPORTED_MODULE_37__ = __webpack_require__(/*! ../../../platform/notification/common/notification.js */ \"./node_modules/monaco-editor/esm/vs/platform/notification/common/notification.js\");\n/* harmony import */ var _platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_38__ = __webpack_require__(/*! ../../../platform/theme/common/colorRegistry.js */ \"./node_modules/monaco-editor/esm/vs/platform/theme/common/colorRegistry.js\");\n/* harmony import */ var _platform_theme_common_themeService_js__WEBPACK_IMPORTED_MODULE_39__ = __webpack_require__(/*! ../../../platform/theme/common/themeService.js */ \"./node_modules/monaco-editor/esm/vs/platform/theme/common/themeService.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\nvar __decorate = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\n return c > 3 && r && Object.defineProperty(target, key, r), r;\n};\nvar __param = (undefined && undefined.__param) || function (paramIndex, decorator) {\n return function (target, key) { decorator(target, key, paramIndex); }\n};\nvar CodeEditorWidget_1;\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlet EDITOR_ID = 0;\nclass ModelData {\n constructor(model, viewModel, view, hasRealView, listenersToRemove, attachedView) {\n this.model = model;\n this.viewModel = viewModel;\n this.view = view;\n this.hasRealView = hasRealView;\n this.listenersToRemove = listenersToRemove;\n this.attachedView = attachedView;\n }\n dispose() {\n (0,_base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_4__.dispose)(this.listenersToRemove);\n this.model.onBeforeDetached(this.attachedView);\n if (this.hasRealView) {\n this.view.dispose();\n }\n this.viewModel.dispose();\n }\n}\nlet CodeEditorWidget = CodeEditorWidget_1 = class CodeEditorWidget extends _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_4__.Disposable {\n //#endregion\n get isSimpleWidget() {\n return this._configuration.isSimpleWidget;\n }\n constructor(domElement, _options, codeEditorWidgetOptions, instantiationService, codeEditorService, commandService, contextKeyService, themeService, notificationService, accessibilityService, languageConfigurationService, languageFeaturesService) {\n var _a;\n super();\n this.languageConfigurationService = languageConfigurationService;\n //#region Eventing\n this._deliveryQueue = (0,_base_common_event_js__WEBPACK_IMPORTED_MODULE_3__.createEventDeliveryQueue)();\n this._contributions = this._register(new _codeEditorContributions_js__WEBPACK_IMPORTED_MODULE_15__.CodeEditorContributions());\n this._onDidDispose = this._register(new _base_common_event_js__WEBPACK_IMPORTED_MODULE_3__.Emitter());\n this.onDidDispose = this._onDidDispose.event;\n this._onDidChangeModelContent = this._register(new _base_common_event_js__WEBPACK_IMPORTED_MODULE_3__.Emitter({ deliveryQueue: this._deliveryQueue }));\n this.onDidChangeModelContent = this._onDidChangeModelContent.event;\n this._onDidChangeModelLanguage = this._register(new _base_common_event_js__WEBPACK_IMPORTED_MODULE_3__.Emitter({ deliveryQueue: this._deliveryQueue }));\n this.onDidChangeModelLanguage = this._onDidChangeModelLanguage.event;\n this._onDidChangeModelLanguageConfiguration = this._register(new _base_common_event_js__WEBPACK_IMPORTED_MODULE_3__.Emitter({ deliveryQueue: this._deliveryQueue }));\n this.onDidChangeModelLanguageConfiguration = this._onDidChangeModelLanguageConfiguration.event;\n this._onDidChangeModelOptions = this._register(new _base_common_event_js__WEBPACK_IMPORTED_MODULE_3__.Emitter({ deliveryQueue: this._deliveryQueue }));\n this.onDidChangeModelOptions = this._onDidChangeModelOptions.event;\n this._onDidChangeModelDecorations = this._register(new _base_common_event_js__WEBPACK_IMPORTED_MODULE_3__.Emitter({ deliveryQueue: this._deliveryQueue }));\n this.onDidChangeModelDecorations = this._onDidChangeModelDecorations.event;\n this._onDidChangeModelTokens = this._register(new _base_common_event_js__WEBPACK_IMPORTED_MODULE_3__.Emitter({ deliveryQueue: this._deliveryQueue }));\n this.onDidChangeModelTokens = this._onDidChangeModelTokens.event;\n this._onDidChangeConfiguration = this._register(new _base_common_event_js__WEBPACK_IMPORTED_MODULE_3__.Emitter({ deliveryQueue: this._deliveryQueue }));\n this.onDidChangeConfiguration = this._onDidChangeConfiguration.event;\n this._onWillChangeModel = this._register(new _base_common_event_js__WEBPACK_IMPORTED_MODULE_3__.Emitter({ deliveryQueue: this._deliveryQueue }));\n this.onWillChangeModel = this._onWillChangeModel.event;\n this._onDidChangeModel = this._register(new _base_common_event_js__WEBPACK_IMPORTED_MODULE_3__.Emitter({ deliveryQueue: this._deliveryQueue }));\n this.onDidChangeModel = this._onDidChangeModel.event;\n this._onDidChangeCursorPosition = this._register(new _base_common_event_js__WEBPACK_IMPORTED_MODULE_3__.Emitter({ deliveryQueue: this._deliveryQueue }));\n this.onDidChangeCursorPosition = this._onDidChangeCursorPosition.event;\n this._onDidChangeCursorSelection = this._register(new _base_common_event_js__WEBPACK_IMPORTED_MODULE_3__.Emitter({ deliveryQueue: this._deliveryQueue }));\n this.onDidChangeCursorSelection = this._onDidChangeCursorSelection.event;\n this._onDidAttemptReadOnlyEdit = this._register(new InteractionEmitter(this._contributions, this._deliveryQueue));\n this.onDidAttemptReadOnlyEdit = this._onDidAttemptReadOnlyEdit.event;\n this._onDidLayoutChange = this._register(new _base_common_event_js__WEBPACK_IMPORTED_MODULE_3__.Emitter({ deliveryQueue: this._deliveryQueue }));\n this.onDidLayoutChange = this._onDidLayoutChange.event;\n this._editorTextFocus = this._register(new BooleanEventEmitter({ deliveryQueue: this._deliveryQueue }));\n this.onDidFocusEditorText = this._editorTextFocus.onDidChangeToTrue;\n this.onDidBlurEditorText = this._editorTextFocus.onDidChangeToFalse;\n this._editorWidgetFocus = this._register(new BooleanEventEmitter({ deliveryQueue: this._deliveryQueue }));\n this.onDidFocusEditorWidget = this._editorWidgetFocus.onDidChangeToTrue;\n this.onDidBlurEditorWidget = this._editorWidgetFocus.onDidChangeToFalse;\n this._onWillType = this._register(new InteractionEmitter(this._contributions, this._deliveryQueue));\n this.onWillType = this._onWillType.event;\n this._onDidType = this._register(new InteractionEmitter(this._contributions, this._deliveryQueue));\n this.onDidType = this._onDidType.event;\n this._onDidCompositionStart = this._register(new InteractionEmitter(this._contributions, this._deliveryQueue));\n this.onDidCompositionStart = this._onDidCompositionStart.event;\n this._onDidCompositionEnd = this._register(new InteractionEmitter(this._contributions, this._deliveryQueue));\n this.onDidCompositionEnd = this._onDidCompositionEnd.event;\n this._onDidPaste = this._register(new InteractionEmitter(this._contributions, this._deliveryQueue));\n this.onDidPaste = this._onDidPaste.event;\n this._onMouseUp = this._register(new InteractionEmitter(this._contributions, this._deliveryQueue));\n this.onMouseUp = this._onMouseUp.event;\n this._onMouseDown = this._register(new InteractionEmitter(this._contributions, this._deliveryQueue));\n this.onMouseDown = this._onMouseDown.event;\n this._onMouseDrag = this._register(new InteractionEmitter(this._contributions, this._deliveryQueue));\n this.onMouseDrag = this._onMouseDrag.event;\n this._onMouseDrop = this._register(new InteractionEmitter(this._contributions, this._deliveryQueue));\n this.onMouseDrop = this._onMouseDrop.event;\n this._onMouseDropCanceled = this._register(new InteractionEmitter(this._contributions, this._deliveryQueue));\n this.onMouseDropCanceled = this._onMouseDropCanceled.event;\n this._onDropIntoEditor = this._register(new InteractionEmitter(this._contributions, this._deliveryQueue));\n this.onDropIntoEditor = this._onDropIntoEditor.event;\n this._onContextMenu = this._register(new InteractionEmitter(this._contributions, this._deliveryQueue));\n this.onContextMenu = this._onContextMenu.event;\n this._onMouseMove = this._register(new InteractionEmitter(this._contributions, this._deliveryQueue));\n this.onMouseMove = this._onMouseMove.event;\n this._onMouseLeave = this._register(new InteractionEmitter(this._contributions, this._deliveryQueue));\n this.onMouseLeave = this._onMouseLeave.event;\n this._onMouseWheel = this._register(new InteractionEmitter(this._contributions, this._deliveryQueue));\n this.onMouseWheel = this._onMouseWheel.event;\n this._onKeyUp = this._register(new InteractionEmitter(this._contributions, this._deliveryQueue));\n this.onKeyUp = this._onKeyUp.event;\n this._onKeyDown = this._register(new InteractionEmitter(this._contributions, this._deliveryQueue));\n this.onKeyDown = this._onKeyDown.event;\n this._onDidContentSizeChange = this._register(new _base_common_event_js__WEBPACK_IMPORTED_MODULE_3__.Emitter({ deliveryQueue: this._deliveryQueue }));\n this.onDidContentSizeChange = this._onDidContentSizeChange.event;\n this._onDidScrollChange = this._register(new _base_common_event_js__WEBPACK_IMPORTED_MODULE_3__.Emitter({ deliveryQueue: this._deliveryQueue }));\n this.onDidScrollChange = this._onDidScrollChange.event;\n this._onDidChangeViewZones = this._register(new _base_common_event_js__WEBPACK_IMPORTED_MODULE_3__.Emitter({ deliveryQueue: this._deliveryQueue }));\n this.onDidChangeViewZones = this._onDidChangeViewZones.event;\n this._onDidChangeHiddenAreas = this._register(new _base_common_event_js__WEBPACK_IMPORTED_MODULE_3__.Emitter({ deliveryQueue: this._deliveryQueue }));\n this.onDidChangeHiddenAreas = this._onDidChangeHiddenAreas.event;\n this._actions = new Map();\n this._bannerDomNode = null;\n this._dropIntoEditorDecorations = this.createDecorationsCollection();\n codeEditorService.willCreateCodeEditor();\n const options = { ..._options };\n this._domElement = domElement;\n this._overflowWidgetsDomNode = options.overflowWidgetsDomNode;\n delete options.overflowWidgetsDomNode;\n this._id = (++EDITOR_ID);\n this._decorationTypeKeysToIds = {};\n this._decorationTypeSubtypes = {};\n this._telemetryData = codeEditorWidgetOptions.telemetryData;\n this._configuration = this._register(this._createConfiguration(codeEditorWidgetOptions.isSimpleWidget || false, options, accessibilityService));\n this._register(this._configuration.onDidChange((e) => {\n this._onDidChangeConfiguration.fire(e);\n const options = this._configuration.options;\n if (e.hasChanged(144 /* EditorOption.layoutInfo */)) {\n const layoutInfo = options.get(144 /* EditorOption.layoutInfo */);\n this._onDidLayoutChange.fire(layoutInfo);\n }\n }));\n this._contextKeyService = this._register(contextKeyService.createScoped(this._domElement));\n this._notificationService = notificationService;\n this._codeEditorService = codeEditorService;\n this._commandService = commandService;\n this._themeService = themeService;\n this._register(new EditorContextKeysManager(this, this._contextKeyService));\n this._register(new EditorModeContext(this, this._contextKeyService, languageFeaturesService));\n this._instantiationService = instantiationService.createChild(new _platform_instantiation_common_serviceCollection_js__WEBPACK_IMPORTED_MODULE_36__.ServiceCollection([_platform_contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_34__.IContextKeyService, this._contextKeyService]));\n this._modelData = null;\n this._focusTracker = new CodeEditorWidgetFocusTracker(domElement, this._overflowWidgetsDomNode);\n this._register(this._focusTracker.onChange(() => {\n this._editorWidgetFocus.setValue(this._focusTracker.hasFocus());\n }));\n this._contentWidgets = {};\n this._overlayWidgets = {};\n this._glyphMarginWidgets = {};\n let contributions;\n if (Array.isArray(codeEditorWidgetOptions.contributions)) {\n contributions = codeEditorWidgetOptions.contributions;\n }\n else {\n contributions = _editorExtensions_js__WEBPACK_IMPORTED_MODULE_10__.EditorExtensionsRegistry.getEditorContributions();\n }\n this._contributions.initialize(this, contributions, this._instantiationService);\n for (const action of _editorExtensions_js__WEBPACK_IMPORTED_MODULE_10__.EditorExtensionsRegistry.getEditorActions()) {\n if (this._actions.has(action.id)) {\n (0,_base_common_errors_js__WEBPACK_IMPORTED_MODULE_2__.onUnexpectedError)(new Error(`Cannot have two actions with the same id ${action.id}`));\n continue;\n }\n const internalAction = new _common_editorAction_js__WEBPACK_IMPORTED_MODULE_23__.InternalEditorAction(action.id, action.label, action.alias, action.metadata, (_a = action.precondition) !== null && _a !== void 0 ? _a : undefined, (args) => {\n return this._instantiationService.invokeFunction((accessor) => {\n return Promise.resolve(action.runEditorCommand(accessor, this, args));\n });\n }, this._contextKeyService);\n this._actions.set(internalAction.id, internalAction);\n }\n const isDropIntoEnabled = () => {\n return !this._configuration.options.get(91 /* EditorOption.readOnly */)\n && this._configuration.options.get(36 /* EditorOption.dropIntoEditor */).enabled;\n };\n this._register(new _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_1__.DragAndDropObserver(this._domElement, {\n onDragOver: e => {\n if (!isDropIntoEnabled()) {\n return;\n }\n const target = this.getTargetAtClientPoint(e.clientX, e.clientY);\n if (target === null || target === void 0 ? void 0 : target.position) {\n this.showDropIndicatorAt(target.position);\n }\n },\n onDrop: async (e) => {\n if (!isDropIntoEnabled()) {\n return;\n }\n this.removeDropIndicator();\n if (!e.dataTransfer) {\n return;\n }\n const target = this.getTargetAtClientPoint(e.clientX, e.clientY);\n if (target === null || target === void 0 ? void 0 : target.position) {\n this._onDropIntoEditor.fire({ position: target.position, event: e });\n }\n },\n onDragLeave: () => {\n this.removeDropIndicator();\n },\n onDragEnd: () => {\n this.removeDropIndicator();\n },\n }));\n this._codeEditorService.addCodeEditor(this);\n }\n writeScreenReaderContent(reason) {\n var _a;\n (_a = this._modelData) === null || _a === void 0 ? void 0 : _a.view.writeScreenReaderContent(reason);\n }\n _createConfiguration(isSimpleWidget, options, accessibilityService) {\n return new _config_editorConfiguration_js__WEBPACK_IMPORTED_MODULE_8__.EditorConfiguration(isSimpleWidget, options, this._domElement, accessibilityService);\n }\n getId() {\n return this.getEditorType() + ':' + this._id;\n }\n getEditorType() {\n return _common_editorCommon_js__WEBPACK_IMPORTED_MODULE_24__.EditorType.ICodeEditor;\n }\n dispose() {\n this._codeEditorService.removeCodeEditor(this);\n this._focusTracker.dispose();\n this._actions.clear();\n this._contentWidgets = {};\n this._overlayWidgets = {};\n this._removeDecorationTypes();\n this._postDetachModelCleanup(this._detachModel());\n this._onDidDispose.fire();\n super.dispose();\n }\n invokeWithinContext(fn) {\n return this._instantiationService.invokeFunction(fn);\n }\n updateOptions(newOptions) {\n this._configuration.updateOptions(newOptions || {});\n }\n getOptions() {\n return this._configuration.options;\n }\n getOption(id) {\n return this._configuration.options.get(id);\n }\n getRawOptions() {\n return this._configuration.getRawOptions();\n }\n getOverflowWidgetsDomNode() {\n return this._overflowWidgetsDomNode;\n }\n getConfiguredWordAtPosition(position) {\n if (!this._modelData) {\n return null;\n }\n return _common_cursor_cursorWordOperations_js__WEBPACK_IMPORTED_MODULE_22__.WordOperations.getWordAtPosition(this._modelData.model, this._configuration.options.get(130 /* EditorOption.wordSeparators */), position);\n }\n getValue(options = null) {\n if (!this._modelData) {\n return '';\n }\n const preserveBOM = (options && options.preserveBOM) ? true : false;\n let eolPreference = 0 /* EndOfLinePreference.TextDefined */;\n if (options && options.lineEnding && options.lineEnding === '\\n') {\n eolPreference = 1 /* EndOfLinePreference.LF */;\n }\n else if (options && options.lineEnding && options.lineEnding === '\\r\\n') {\n eolPreference = 2 /* EndOfLinePreference.CRLF */;\n }\n return this._modelData.model.getValue(eolPreference, preserveBOM);\n }\n setValue(newValue) {\n if (!this._modelData) {\n return;\n }\n this._modelData.model.setValue(newValue);\n }\n getModel() {\n if (!this._modelData) {\n return null;\n }\n return this._modelData.model;\n }\n setModel(_model = null) {\n var _a;\n const model = _model;\n if (this._modelData === null && model === null) {\n // Current model is the new model\n return;\n }\n if (this._modelData && this._modelData.model === model) {\n // Current model is the new model\n return;\n }\n const e = {\n oldModelUrl: ((_a = this._modelData) === null || _a === void 0 ? void 0 : _a.model.uri) || null,\n newModelUrl: (model === null || model === void 0 ? void 0 : model.uri) || null\n };\n this._onWillChangeModel.fire(e);\n const hasTextFocus = this.hasTextFocus();\n const detachedModel = this._detachModel();\n this._attachModel(model);\n if (hasTextFocus && this.hasModel()) {\n this.focus();\n }\n this._removeDecorationTypes();\n this._onDidChangeModel.fire(e);\n this._postDetachModelCleanup(detachedModel);\n this._contributionsDisposable = this._contributions.onAfterModelAttached();\n }\n _removeDecorationTypes() {\n this._decorationTypeKeysToIds = {};\n if (this._decorationTypeSubtypes) {\n for (const decorationType in this._decorationTypeSubtypes) {\n const subTypes = this._decorationTypeSubtypes[decorationType];\n for (const subType in subTypes) {\n this._removeDecorationType(decorationType + '-' + subType);\n }\n }\n this._decorationTypeSubtypes = {};\n }\n }\n getVisibleRanges() {\n if (!this._modelData) {\n return [];\n }\n return this._modelData.viewModel.getVisibleRanges();\n }\n getVisibleRangesPlusViewportAboveBelow() {\n if (!this._modelData) {\n return [];\n }\n return this._modelData.viewModel.getVisibleRangesPlusViewportAboveBelow();\n }\n getWhitespaces() {\n if (!this._modelData) {\n return [];\n }\n return this._modelData.viewModel.viewLayout.getWhitespaces();\n }\n static _getVerticalOffsetAfterPosition(modelData, modelLineNumber, modelColumn, includeViewZones) {\n const modelPosition = modelData.model.validatePosition({\n lineNumber: modelLineNumber,\n column: modelColumn\n });\n const viewPosition = modelData.viewModel.coordinatesConverter.convertModelPositionToViewPosition(modelPosition);\n return modelData.viewModel.viewLayout.getVerticalOffsetAfterLineNumber(viewPosition.lineNumber, includeViewZones);\n }\n getTopForLineNumber(lineNumber, includeViewZones = false) {\n if (!this._modelData) {\n return -1;\n }\n return CodeEditorWidget_1._getVerticalOffsetForPosition(this._modelData, lineNumber, 1, includeViewZones);\n }\n getTopForPosition(lineNumber, column) {\n if (!this._modelData) {\n return -1;\n }\n return CodeEditorWidget_1._getVerticalOffsetForPosition(this._modelData, lineNumber, column, false);\n }\n static _getVerticalOffsetForPosition(modelData, modelLineNumber, modelColumn, includeViewZones = false) {\n const modelPosition = modelData.model.validatePosition({\n lineNumber: modelLineNumber,\n column: modelColumn\n });\n const viewPosition = modelData.viewModel.coordinatesConverter.convertModelPositionToViewPosition(modelPosition);\n return modelData.viewModel.viewLayout.getVerticalOffsetForLineNumber(viewPosition.lineNumber, includeViewZones);\n }\n getBottomForLineNumber(lineNumber, includeViewZones = false) {\n if (!this._modelData) {\n return -1;\n }\n return CodeEditorWidget_1._getVerticalOffsetAfterPosition(this._modelData, lineNumber, 1, includeViewZones);\n }\n setHiddenAreas(ranges, source) {\n var _a;\n (_a = this._modelData) === null || _a === void 0 ? void 0 : _a.viewModel.setHiddenAreas(ranges.map(r => _common_core_range_js__WEBPACK_IMPORTED_MODULE_20__.Range.lift(r)), source);\n }\n getVisibleColumnFromPosition(rawPosition) {\n if (!this._modelData) {\n return rawPosition.column;\n }\n const position = this._modelData.model.validatePosition(rawPosition);\n const tabSize = this._modelData.model.getOptions().tabSize;\n return _common_core_cursorColumns_js__WEBPACK_IMPORTED_MODULE_17__.CursorColumns.visibleColumnFromColumn(this._modelData.model.getLineContent(position.lineNumber), position.column, tabSize) + 1;\n }\n getPosition() {\n if (!this._modelData) {\n return null;\n }\n return this._modelData.viewModel.getPosition();\n }\n setPosition(position, source = 'api') {\n if (!this._modelData) {\n return;\n }\n if (!_common_core_position_js__WEBPACK_IMPORTED_MODULE_19__.Position.isIPosition(position)) {\n throw new Error('Invalid arguments');\n }\n this._modelData.viewModel.setSelections(source, [{\n selectionStartLineNumber: position.lineNumber,\n selectionStartColumn: position.column,\n positionLineNumber: position.lineNumber,\n positionColumn: position.column\n }]);\n }\n _sendRevealRange(modelRange, verticalType, revealHorizontal, scrollType) {\n if (!this._modelData) {\n return;\n }\n if (!_common_core_range_js__WEBPACK_IMPORTED_MODULE_20__.Range.isIRange(modelRange)) {\n throw new Error('Invalid arguments');\n }\n const validatedModelRange = this._modelData.model.validateRange(modelRange);\n const viewRange = this._modelData.viewModel.coordinatesConverter.convertModelRangeToViewRange(validatedModelRange);\n this._modelData.viewModel.revealRange('api', revealHorizontal, viewRange, verticalType, scrollType);\n }\n revealLine(lineNumber, scrollType = 0 /* editorCommon.ScrollType.Smooth */) {\n this._revealLine(lineNumber, 0 /* VerticalRevealType.Simple */, scrollType);\n }\n revealLineInCenter(lineNumber, scrollType = 0 /* editorCommon.ScrollType.Smooth */) {\n this._revealLine(lineNumber, 1 /* VerticalRevealType.Center */, scrollType);\n }\n revealLineInCenterIfOutsideViewport(lineNumber, scrollType = 0 /* editorCommon.ScrollType.Smooth */) {\n this._revealLine(lineNumber, 2 /* VerticalRevealType.CenterIfOutsideViewport */, scrollType);\n }\n revealLineNearTop(lineNumber, scrollType = 0 /* editorCommon.ScrollType.Smooth */) {\n this._revealLine(lineNumber, 5 /* VerticalRevealType.NearTop */, scrollType);\n }\n _revealLine(lineNumber, revealType, scrollType) {\n if (typeof lineNumber !== 'number') {\n throw new Error('Invalid arguments');\n }\n this._sendRevealRange(new _common_core_range_js__WEBPACK_IMPORTED_MODULE_20__.Range(lineNumber, 1, lineNumber, 1), revealType, false, scrollType);\n }\n revealPosition(position, scrollType = 0 /* editorCommon.ScrollType.Smooth */) {\n this._revealPosition(position, 0 /* VerticalRevealType.Simple */, true, scrollType);\n }\n revealPositionInCenter(position, scrollType = 0 /* editorCommon.ScrollType.Smooth */) {\n this._revealPosition(position, 1 /* VerticalRevealType.Center */, true, scrollType);\n }\n revealPositionInCenterIfOutsideViewport(position, scrollType = 0 /* editorCommon.ScrollType.Smooth */) {\n this._revealPosition(position, 2 /* VerticalRevealType.CenterIfOutsideViewport */, true, scrollType);\n }\n revealPositionNearTop(position, scrollType = 0 /* editorCommon.ScrollType.Smooth */) {\n this._revealPosition(position, 5 /* VerticalRevealType.NearTop */, true, scrollType);\n }\n _revealPosition(position, verticalType, revealHorizontal, scrollType) {\n if (!_common_core_position_js__WEBPACK_IMPORTED_MODULE_19__.Position.isIPosition(position)) {\n throw new Error('Invalid arguments');\n }\n this._sendRevealRange(new _common_core_range_js__WEBPACK_IMPORTED_MODULE_20__.Range(position.lineNumber, position.column, position.lineNumber, position.column), verticalType, revealHorizontal, scrollType);\n }\n getSelection() {\n if (!this._modelData) {\n return null;\n }\n return this._modelData.viewModel.getSelection();\n }\n getSelections() {\n if (!this._modelData) {\n return null;\n }\n return this._modelData.viewModel.getSelections();\n }\n setSelection(something, source = 'api') {\n const isSelection = _common_core_selection_js__WEBPACK_IMPORTED_MODULE_21__.Selection.isISelection(something);\n const isRange = _common_core_range_js__WEBPACK_IMPORTED_MODULE_20__.Range.isIRange(something);\n if (!isSelection && !isRange) {\n throw new Error('Invalid arguments');\n }\n if (isSelection) {\n this._setSelectionImpl(something, source);\n }\n else if (isRange) {\n // act as if it was an IRange\n const selection = {\n selectionStartLineNumber: something.startLineNumber,\n selectionStartColumn: something.startColumn,\n positionLineNumber: something.endLineNumber,\n positionColumn: something.endColumn\n };\n this._setSelectionImpl(selection, source);\n }\n }\n _setSelectionImpl(sel, source) {\n if (!this._modelData) {\n return;\n }\n const selection = new _common_core_selection_js__WEBPACK_IMPORTED_MODULE_21__.Selection(sel.selectionStartLineNumber, sel.selectionStartColumn, sel.positionLineNumber, sel.positionColumn);\n this._modelData.viewModel.setSelections(source, [selection]);\n }\n revealLines(startLineNumber, endLineNumber, scrollType = 0 /* editorCommon.ScrollType.Smooth */) {\n this._revealLines(startLineNumber, endLineNumber, 0 /* VerticalRevealType.Simple */, scrollType);\n }\n revealLinesInCenter(startLineNumber, endLineNumber, scrollType = 0 /* editorCommon.ScrollType.Smooth */) {\n this._revealLines(startLineNumber, endLineNumber, 1 /* VerticalRevealType.Center */, scrollType);\n }\n revealLinesInCenterIfOutsideViewport(startLineNumber, endLineNumber, scrollType = 0 /* editorCommon.ScrollType.Smooth */) {\n this._revealLines(startLineNumber, endLineNumber, 2 /* VerticalRevealType.CenterIfOutsideViewport */, scrollType);\n }\n revealLinesNearTop(startLineNumber, endLineNumber, scrollType = 0 /* editorCommon.ScrollType.Smooth */) {\n this._revealLines(startLineNumber, endLineNumber, 5 /* VerticalRevealType.NearTop */, scrollType);\n }\n _revealLines(startLineNumber, endLineNumber, verticalType, scrollType) {\n if (typeof startLineNumber !== 'number' || typeof endLineNumber !== 'number') {\n throw new Error('Invalid arguments');\n }\n this._sendRevealRange(new _common_core_range_js__WEBPACK_IMPORTED_MODULE_20__.Range(startLineNumber, 1, endLineNumber, 1), verticalType, false, scrollType);\n }\n revealRange(range, scrollType = 0 /* editorCommon.ScrollType.Smooth */, revealVerticalInCenter = false, revealHorizontal = true) {\n this._revealRange(range, revealVerticalInCenter ? 1 /* VerticalRevealType.Center */ : 0 /* VerticalRevealType.Simple */, revealHorizontal, scrollType);\n }\n revealRangeInCenter(range, scrollType = 0 /* editorCommon.ScrollType.Smooth */) {\n this._revealRange(range, 1 /* VerticalRevealType.Center */, true, scrollType);\n }\n revealRangeInCenterIfOutsideViewport(range, scrollType = 0 /* editorCommon.ScrollType.Smooth */) {\n this._revealRange(range, 2 /* VerticalRevealType.CenterIfOutsideViewport */, true, scrollType);\n }\n revealRangeNearTop(range, scrollType = 0 /* editorCommon.ScrollType.Smooth */) {\n this._revealRange(range, 5 /* VerticalRevealType.NearTop */, true, scrollType);\n }\n revealRangeNearTopIfOutsideViewport(range, scrollType = 0 /* editorCommon.ScrollType.Smooth */) {\n this._revealRange(range, 6 /* VerticalRevealType.NearTopIfOutsideViewport */, true, scrollType);\n }\n revealRangeAtTop(range, scrollType = 0 /* editorCommon.ScrollType.Smooth */) {\n this._revealRange(range, 3 /* VerticalRevealType.Top */, true, scrollType);\n }\n _revealRange(range, verticalType, revealHorizontal, scrollType) {\n if (!_common_core_range_js__WEBPACK_IMPORTED_MODULE_20__.Range.isIRange(range)) {\n throw new Error('Invalid arguments');\n }\n this._sendRevealRange(_common_core_range_js__WEBPACK_IMPORTED_MODULE_20__.Range.lift(range), verticalType, revealHorizontal, scrollType);\n }\n setSelections(ranges, source = 'api', reason = 0 /* CursorChangeReason.NotSet */) {\n if (!this._modelData) {\n return;\n }\n if (!ranges || ranges.length === 0) {\n throw new Error('Invalid arguments');\n }\n for (let i = 0, len = ranges.length; i < len; i++) {\n if (!_common_core_selection_js__WEBPACK_IMPORTED_MODULE_21__.Selection.isISelection(ranges[i])) {\n throw new Error('Invalid arguments');\n }\n }\n this._modelData.viewModel.setSelections(source, ranges, reason);\n }\n getContentWidth() {\n if (!this._modelData) {\n return -1;\n }\n return this._modelData.viewModel.viewLayout.getContentWidth();\n }\n getScrollWidth() {\n if (!this._modelData) {\n return -1;\n }\n return this._modelData.viewModel.viewLayout.getScrollWidth();\n }\n getScrollLeft() {\n if (!this._modelData) {\n return -1;\n }\n return this._modelData.viewModel.viewLayout.getCurrentScrollLeft();\n }\n getContentHeight() {\n if (!this._modelData) {\n return -1;\n }\n return this._modelData.viewModel.viewLayout.getContentHeight();\n }\n getScrollHeight() {\n if (!this._modelData) {\n return -1;\n }\n return this._modelData.viewModel.viewLayout.getScrollHeight();\n }\n getScrollTop() {\n if (!this._modelData) {\n return -1;\n }\n return this._modelData.viewModel.viewLayout.getCurrentScrollTop();\n }\n setScrollLeft(newScrollLeft, scrollType = 1 /* editorCommon.ScrollType.Immediate */) {\n if (!this._modelData) {\n return;\n }\n if (typeof newScrollLeft !== 'number') {\n throw new Error('Invalid arguments');\n }\n this._modelData.viewModel.viewLayout.setScrollPosition({\n scrollLeft: newScrollLeft\n }, scrollType);\n }\n setScrollTop(newScrollTop, scrollType = 1 /* editorCommon.ScrollType.Immediate */) {\n if (!this._modelData) {\n return;\n }\n if (typeof newScrollTop !== 'number') {\n throw new Error('Invalid arguments');\n }\n this._modelData.viewModel.viewLayout.setScrollPosition({\n scrollTop: newScrollTop\n }, scrollType);\n }\n setScrollPosition(position, scrollType = 1 /* editorCommon.ScrollType.Immediate */) {\n if (!this._modelData) {\n return;\n }\n this._modelData.viewModel.viewLayout.setScrollPosition(position, scrollType);\n }\n hasPendingScrollAnimation() {\n if (!this._modelData) {\n return false;\n }\n return this._modelData.viewModel.viewLayout.hasPendingScrollAnimation();\n }\n saveViewState() {\n if (!this._modelData) {\n return null;\n }\n const contributionsState = this._contributions.saveViewState();\n const cursorState = this._modelData.viewModel.saveCursorState();\n const viewState = this._modelData.viewModel.saveState();\n return {\n cursorState: cursorState,\n viewState: viewState,\n contributionsState: contributionsState\n };\n }\n restoreViewState(s) {\n if (!this._modelData || !this._modelData.hasRealView) {\n return;\n }\n const codeEditorState = s;\n if (codeEditorState && codeEditorState.cursorState && codeEditorState.viewState) {\n const cursorState = codeEditorState.cursorState;\n if (Array.isArray(cursorState)) {\n if (cursorState.length > 0) {\n this._modelData.viewModel.restoreCursorState(cursorState);\n }\n }\n else {\n // Backwards compatibility\n this._modelData.viewModel.restoreCursorState([cursorState]);\n }\n this._contributions.restoreViewState(codeEditorState.contributionsState || {});\n const reducedState = this._modelData.viewModel.reduceRestoreState(codeEditorState.viewState);\n this._modelData.view.restoreState(reducedState);\n }\n }\n handleInitialized() {\n var _a;\n (_a = this._getViewModel()) === null || _a === void 0 ? void 0 : _a.visibleLinesStabilized();\n }\n getContribution(id) {\n return this._contributions.get(id);\n }\n getActions() {\n return Array.from(this._actions.values());\n }\n getSupportedActions() {\n let result = this.getActions();\n result = result.filter(action => action.isSupported());\n return result;\n }\n getAction(id) {\n return this._actions.get(id) || null;\n }\n trigger(source, handlerId, payload) {\n payload = payload || {};\n switch (handlerId) {\n case \"compositionStart\" /* editorCommon.Handler.CompositionStart */:\n this._startComposition();\n return;\n case \"compositionEnd\" /* editorCommon.Handler.CompositionEnd */:\n this._endComposition(source);\n return;\n case \"type\" /* editorCommon.Handler.Type */: {\n const args = payload;\n this._type(source, args.text || '');\n return;\n }\n case \"replacePreviousChar\" /* editorCommon.Handler.ReplacePreviousChar */: {\n const args = payload;\n this._compositionType(source, args.text || '', args.replaceCharCnt || 0, 0, 0);\n return;\n }\n case \"compositionType\" /* editorCommon.Handler.CompositionType */: {\n const args = payload;\n this._compositionType(source, args.text || '', args.replacePrevCharCnt || 0, args.replaceNextCharCnt || 0, args.positionDelta || 0);\n return;\n }\n case \"paste\" /* editorCommon.Handler.Paste */: {\n const args = payload;\n this._paste(source, args.text || '', args.pasteOnNewLine || false, args.multicursorText || null, args.mode || null);\n return;\n }\n case \"cut\" /* editorCommon.Handler.Cut */:\n this._cut(source);\n return;\n }\n const action = this.getAction(handlerId);\n if (action) {\n Promise.resolve(action.run(payload)).then(undefined, _base_common_errors_js__WEBPACK_IMPORTED_MODULE_2__.onUnexpectedError);\n return;\n }\n if (!this._modelData) {\n return;\n }\n if (this._triggerEditorCommand(source, handlerId, payload)) {\n return;\n }\n this._triggerCommand(handlerId, payload);\n }\n _triggerCommand(handlerId, payload) {\n this._commandService.executeCommand(handlerId, payload);\n }\n _startComposition() {\n if (!this._modelData) {\n return;\n }\n this._modelData.viewModel.startComposition();\n this._onDidCompositionStart.fire();\n }\n _endComposition(source) {\n if (!this._modelData) {\n return;\n }\n this._modelData.viewModel.endComposition(source);\n this._onDidCompositionEnd.fire();\n }\n _type(source, text) {\n if (!this._modelData || text.length === 0) {\n return;\n }\n if (source === 'keyboard') {\n this._onWillType.fire(text);\n }\n this._modelData.viewModel.type(text, source);\n if (source === 'keyboard') {\n this._onDidType.fire(text);\n }\n }\n _compositionType(source, text, replacePrevCharCnt, replaceNextCharCnt, positionDelta) {\n if (!this._modelData) {\n return;\n }\n this._modelData.viewModel.compositionType(text, replacePrevCharCnt, replaceNextCharCnt, positionDelta, source);\n }\n _paste(source, text, pasteOnNewLine, multicursorText, mode) {\n if (!this._modelData || text.length === 0) {\n return;\n }\n const viewModel = this._modelData.viewModel;\n const startPosition = viewModel.getSelection().getStartPosition();\n viewModel.paste(text, pasteOnNewLine, multicursorText, source);\n const endPosition = viewModel.getSelection().getStartPosition();\n if (source === 'keyboard') {\n this._onDidPaste.fire({\n range: new _common_core_range_js__WEBPACK_IMPORTED_MODULE_20__.Range(startPosition.lineNumber, startPosition.column, endPosition.lineNumber, endPosition.column),\n languageId: mode\n });\n }\n }\n _cut(source) {\n if (!this._modelData) {\n return;\n }\n this._modelData.viewModel.cut(source);\n }\n _triggerEditorCommand(source, handlerId, payload) {\n const command = _editorExtensions_js__WEBPACK_IMPORTED_MODULE_10__.EditorExtensionsRegistry.getEditorCommand(handlerId);\n if (command) {\n payload = payload || {};\n payload.source = source;\n this._instantiationService.invokeFunction((accessor) => {\n Promise.resolve(command.runEditorCommand(accessor, this, payload)).then(undefined, _base_common_errors_js__WEBPACK_IMPORTED_MODULE_2__.onUnexpectedError);\n });\n return true;\n }\n return false;\n }\n _getViewModel() {\n if (!this._modelData) {\n return null;\n }\n return this._modelData.viewModel;\n }\n pushUndoStop() {\n if (!this._modelData) {\n return false;\n }\n if (this._configuration.options.get(91 /* EditorOption.readOnly */)) {\n // read only editor => sorry!\n return false;\n }\n this._modelData.model.pushStackElement();\n return true;\n }\n popUndoStop() {\n if (!this._modelData) {\n return false;\n }\n if (this._configuration.options.get(91 /* EditorOption.readOnly */)) {\n // read only editor => sorry!\n return false;\n }\n this._modelData.model.popStackElement();\n return true;\n }\n executeEdits(source, edits, endCursorState) {\n if (!this._modelData) {\n return false;\n }\n if (this._configuration.options.get(91 /* EditorOption.readOnly */)) {\n // read only editor => sorry!\n return false;\n }\n let cursorStateComputer;\n if (!endCursorState) {\n cursorStateComputer = () => null;\n }\n else if (Array.isArray(endCursorState)) {\n cursorStateComputer = () => endCursorState;\n }\n else {\n cursorStateComputer = endCursorState;\n }\n this._modelData.viewModel.executeEdits(source, edits, cursorStateComputer);\n return true;\n }\n executeCommand(source, command) {\n if (!this._modelData) {\n return;\n }\n this._modelData.viewModel.executeCommand(command, source);\n }\n executeCommands(source, commands) {\n if (!this._modelData) {\n return;\n }\n this._modelData.viewModel.executeCommands(commands, source);\n }\n createDecorationsCollection(decorations) {\n return new EditorDecorationsCollection(this, decorations);\n }\n changeDecorations(callback) {\n if (!this._modelData) {\n // callback will not be called\n return null;\n }\n return this._modelData.model.changeDecorations(callback, this._id);\n }\n getLineDecorations(lineNumber) {\n if (!this._modelData) {\n return null;\n }\n return this._modelData.model.getLineDecorations(lineNumber, this._id, (0,_common_config_editorOptions_js__WEBPACK_IMPORTED_MODULE_16__.filterValidationDecorations)(this._configuration.options));\n }\n getDecorationsInRange(range) {\n if (!this._modelData) {\n return null;\n }\n return this._modelData.model.getDecorationsInRange(range, this._id, (0,_common_config_editorOptions_js__WEBPACK_IMPORTED_MODULE_16__.filterValidationDecorations)(this._configuration.options));\n }\n /**\n * @deprecated\n */\n deltaDecorations(oldDecorations, newDecorations) {\n if (!this._modelData) {\n return [];\n }\n if (oldDecorations.length === 0 && newDecorations.length === 0) {\n return oldDecorations;\n }\n return this._modelData.model.deltaDecorations(oldDecorations, newDecorations, this._id);\n }\n removeDecorations(decorationIds) {\n if (!this._modelData || decorationIds.length === 0) {\n return;\n }\n this._modelData.model.changeDecorations((changeAccessor) => {\n changeAccessor.deltaDecorations(decorationIds, []);\n });\n }\n removeDecorationsByType(decorationTypeKey) {\n // remove decorations for type and sub type\n const oldDecorationsIds = this._decorationTypeKeysToIds[decorationTypeKey];\n if (oldDecorationsIds) {\n this.changeDecorations(accessor => accessor.deltaDecorations(oldDecorationsIds, []));\n }\n if (this._decorationTypeKeysToIds.hasOwnProperty(decorationTypeKey)) {\n delete this._decorationTypeKeysToIds[decorationTypeKey];\n }\n if (this._decorationTypeSubtypes.hasOwnProperty(decorationTypeKey)) {\n delete this._decorationTypeSubtypes[decorationTypeKey];\n }\n }\n getLayoutInfo() {\n const options = this._configuration.options;\n const layoutInfo = options.get(144 /* EditorOption.layoutInfo */);\n return layoutInfo;\n }\n createOverviewRuler(cssClassName) {\n if (!this._modelData || !this._modelData.hasRealView) {\n return null;\n }\n return this._modelData.view.createOverviewRuler(cssClassName);\n }\n getContainerDomNode() {\n return this._domElement;\n }\n getDomNode() {\n if (!this._modelData || !this._modelData.hasRealView) {\n return null;\n }\n return this._modelData.view.domNode.domNode;\n }\n delegateVerticalScrollbarPointerDown(browserEvent) {\n if (!this._modelData || !this._modelData.hasRealView) {\n return;\n }\n this._modelData.view.delegateVerticalScrollbarPointerDown(browserEvent);\n }\n delegateScrollFromMouseWheelEvent(browserEvent) {\n if (!this._modelData || !this._modelData.hasRealView) {\n return;\n }\n this._modelData.view.delegateScrollFromMouseWheelEvent(browserEvent);\n }\n layout(dimension, postponeRendering = false) {\n this._configuration.observeContainer(dimension);\n if (!postponeRendering) {\n this.render();\n }\n }\n focus() {\n if (!this._modelData || !this._modelData.hasRealView) {\n return;\n }\n this._modelData.view.focus();\n }\n hasTextFocus() {\n if (!this._modelData || !this._modelData.hasRealView) {\n return false;\n }\n return this._modelData.view.isFocused();\n }\n hasWidgetFocus() {\n return this._focusTracker && this._focusTracker.hasFocus();\n }\n addContentWidget(widget) {\n const widgetData = {\n widget: widget,\n position: widget.getPosition()\n };\n if (this._contentWidgets.hasOwnProperty(widget.getId())) {\n console.warn('Overwriting a content widget with the same id:' + widget.getId());\n }\n this._contentWidgets[widget.getId()] = widgetData;\n if (this._modelData && this._modelData.hasRealView) {\n this._modelData.view.addContentWidget(widgetData);\n }\n }\n layoutContentWidget(widget) {\n const widgetId = widget.getId();\n if (this._contentWidgets.hasOwnProperty(widgetId)) {\n const widgetData = this._contentWidgets[widgetId];\n widgetData.position = widget.getPosition();\n if (this._modelData && this._modelData.hasRealView) {\n this._modelData.view.layoutContentWidget(widgetData);\n }\n }\n }\n removeContentWidget(widget) {\n const widgetId = widget.getId();\n if (this._contentWidgets.hasOwnProperty(widgetId)) {\n const widgetData = this._contentWidgets[widgetId];\n delete this._contentWidgets[widgetId];\n if (this._modelData && this._modelData.hasRealView) {\n this._modelData.view.removeContentWidget(widgetData);\n }\n }\n }\n addOverlayWidget(widget) {\n const widgetData = {\n widget: widget,\n position: widget.getPosition()\n };\n if (this._overlayWidgets.hasOwnProperty(widget.getId())) {\n console.warn('Overwriting an overlay widget with the same id.');\n }\n this._overlayWidgets[widget.getId()] = widgetData;\n if (this._modelData && this._modelData.hasRealView) {\n this._modelData.view.addOverlayWidget(widgetData);\n }\n }\n layoutOverlayWidget(widget) {\n const widgetId = widget.getId();\n if (this._overlayWidgets.hasOwnProperty(widgetId)) {\n const widgetData = this._overlayWidgets[widgetId];\n widgetData.position = widget.getPosition();\n if (this._modelData && this._modelData.hasRealView) {\n this._modelData.view.layoutOverlayWidget(widgetData);\n }\n }\n }\n removeOverlayWidget(widget) {\n const widgetId = widget.getId();\n if (this._overlayWidgets.hasOwnProperty(widgetId)) {\n const widgetData = this._overlayWidgets[widgetId];\n delete this._overlayWidgets[widgetId];\n if (this._modelData && this._modelData.hasRealView) {\n this._modelData.view.removeOverlayWidget(widgetData);\n }\n }\n }\n addGlyphMarginWidget(widget) {\n const widgetData = {\n widget: widget,\n position: widget.getPosition()\n };\n if (this._glyphMarginWidgets.hasOwnProperty(widget.getId())) {\n console.warn('Overwriting a glyph margin widget with the same id.');\n }\n this._glyphMarginWidgets[widget.getId()] = widgetData;\n if (this._modelData && this._modelData.hasRealView) {\n this._modelData.view.addGlyphMarginWidget(widgetData);\n }\n }\n layoutGlyphMarginWidget(widget) {\n const widgetId = widget.getId();\n if (this._glyphMarginWidgets.hasOwnProperty(widgetId)) {\n const widgetData = this._glyphMarginWidgets[widgetId];\n widgetData.position = widget.getPosition();\n if (this._modelData && this._modelData.hasRealView) {\n this._modelData.view.layoutGlyphMarginWidget(widgetData);\n }\n }\n }\n removeGlyphMarginWidget(widget) {\n const widgetId = widget.getId();\n if (this._glyphMarginWidgets.hasOwnProperty(widgetId)) {\n const widgetData = this._glyphMarginWidgets[widgetId];\n delete this._glyphMarginWidgets[widgetId];\n if (this._modelData && this._modelData.hasRealView) {\n this._modelData.view.removeGlyphMarginWidget(widgetData);\n }\n }\n }\n changeViewZones(callback) {\n if (!this._modelData || !this._modelData.hasRealView) {\n return;\n }\n this._modelData.view.change(callback);\n }\n getTargetAtClientPoint(clientX, clientY) {\n if (!this._modelData || !this._modelData.hasRealView) {\n return null;\n }\n return this._modelData.view.getTargetAtClientPoint(clientX, clientY);\n }\n getScrolledVisiblePosition(rawPosition) {\n if (!this._modelData || !this._modelData.hasRealView) {\n return null;\n }\n const position = this._modelData.model.validatePosition(rawPosition);\n const options = this._configuration.options;\n const layoutInfo = options.get(144 /* EditorOption.layoutInfo */);\n const top = CodeEditorWidget_1._getVerticalOffsetForPosition(this._modelData, position.lineNumber, position.column) - this.getScrollTop();\n const left = this._modelData.view.getOffsetForColumn(position.lineNumber, position.column) + layoutInfo.glyphMarginWidth + layoutInfo.lineNumbersWidth + layoutInfo.decorationsWidth - this.getScrollLeft();\n return {\n top: top,\n left: left,\n height: options.get(67 /* EditorOption.lineHeight */)\n };\n }\n getOffsetForColumn(lineNumber, column) {\n if (!this._modelData || !this._modelData.hasRealView) {\n return -1;\n }\n return this._modelData.view.getOffsetForColumn(lineNumber, column);\n }\n render(forceRedraw = false) {\n if (!this._modelData || !this._modelData.hasRealView) {\n return;\n }\n this._modelData.view.render(true, forceRedraw);\n }\n setAriaOptions(options) {\n if (!this._modelData || !this._modelData.hasRealView) {\n return;\n }\n this._modelData.view.setAriaOptions(options);\n }\n applyFontInfo(target) {\n (0,_config_domFontInfo_js__WEBPACK_IMPORTED_MODULE_7__.applyFontInfo)(target, this._configuration.options.get(50 /* EditorOption.fontInfo */));\n }\n setBanner(domNode, domNodeHeight) {\n if (this._bannerDomNode && this._domElement.contains(this._bannerDomNode)) {\n this._domElement.removeChild(this._bannerDomNode);\n }\n this._bannerDomNode = domNode;\n this._configuration.setReservedHeight(domNode ? domNodeHeight : 0);\n if (this._bannerDomNode) {\n this._domElement.prepend(this._bannerDomNode);\n }\n }\n _attachModel(model) {\n if (!model) {\n this._modelData = null;\n return;\n }\n const listenersToRemove = [];\n this._domElement.setAttribute('data-mode-id', model.getLanguageId());\n this._configuration.setIsDominatedByLongLines(model.isDominatedByLongLines());\n this._configuration.setModelLineCount(model.getLineCount());\n const attachedView = model.onBeforeAttached();\n const viewModel = new _common_viewModel_viewModelImpl_js__WEBPACK_IMPORTED_MODULE_30__.ViewModel(this._id, this._configuration, model, _view_domLineBreaksComputer_js__WEBPACK_IMPORTED_MODULE_13__.DOMLineBreaksComputerFactory.create(_base_browser_dom_js__WEBPACK_IMPORTED_MODULE_1__.getWindow(this._domElement)), _common_viewModel_monospaceLineBreaksComputer_js__WEBPACK_IMPORTED_MODULE_29__.MonospaceLineBreaksComputerFactory.create(this._configuration.options), (callback) => _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_1__.scheduleAtNextAnimationFrame(_base_browser_dom_js__WEBPACK_IMPORTED_MODULE_1__.getWindow(this._domElement), callback), this.languageConfigurationService, this._themeService, attachedView);\n // Someone might destroy the model from under the editor, so prevent any exceptions by setting a null model\n listenersToRemove.push(model.onWillDispose(() => this.setModel(null)));\n listenersToRemove.push(viewModel.onEvent((e) => {\n switch (e.kind) {\n case 0 /* OutgoingViewModelEventKind.ContentSizeChanged */:\n this._onDidContentSizeChange.fire(e);\n break;\n case 1 /* OutgoingViewModelEventKind.FocusChanged */:\n this._editorTextFocus.setValue(e.hasFocus);\n break;\n case 2 /* OutgoingViewModelEventKind.ScrollChanged */:\n this._onDidScrollChange.fire(e);\n break;\n case 3 /* OutgoingViewModelEventKind.ViewZonesChanged */:\n this._onDidChangeViewZones.fire();\n break;\n case 4 /* OutgoingViewModelEventKind.HiddenAreasChanged */:\n this._onDidChangeHiddenAreas.fire();\n break;\n case 5 /* OutgoingViewModelEventKind.ReadOnlyEditAttempt */:\n this._onDidAttemptReadOnlyEdit.fire();\n break;\n case 6 /* OutgoingViewModelEventKind.CursorStateChanged */: {\n if (e.reachedMaxCursorCount) {\n const multiCursorLimit = this.getOption(80 /* EditorOption.multiCursorLimit */);\n const message = _nls_js__WEBPACK_IMPORTED_MODULE_31__.localize('cursors.maximum', \"The number of cursors has been limited to {0}. Consider using [find and replace](https://code.visualstudio.com/docs/editor/codebasics#_find-and-replace) for larger changes or increase the editor multi cursor limit setting.\", multiCursorLimit);\n this._notificationService.prompt(_platform_notification_common_notification_js__WEBPACK_IMPORTED_MODULE_37__.Severity.Warning, message, [\n {\n label: 'Find and Replace',\n run: () => {\n this._commandService.executeCommand('editor.action.startFindReplaceAction');\n }\n },\n {\n label: _nls_js__WEBPACK_IMPORTED_MODULE_31__.localize('goToSetting', 'Increase Multi Cursor Limit'),\n run: () => {\n this._commandService.executeCommand('workbench.action.openSettings2', {\n query: 'editor.multiCursorLimit'\n });\n }\n }\n ]);\n }\n const positions = [];\n for (let i = 0, len = e.selections.length; i < len; i++) {\n positions[i] = e.selections[i].getPosition();\n }\n const e1 = {\n position: positions[0],\n secondaryPositions: positions.slice(1),\n reason: e.reason,\n source: e.source\n };\n this._onDidChangeCursorPosition.fire(e1);\n const e2 = {\n selection: e.selections[0],\n secondarySelections: e.selections.slice(1),\n modelVersionId: e.modelVersionId,\n oldSelections: e.oldSelections,\n oldModelVersionId: e.oldModelVersionId,\n source: e.source,\n reason: e.reason\n };\n this._onDidChangeCursorSelection.fire(e2);\n break;\n }\n case 7 /* OutgoingViewModelEventKind.ModelDecorationsChanged */:\n this._onDidChangeModelDecorations.fire(e.event);\n break;\n case 8 /* OutgoingViewModelEventKind.ModelLanguageChanged */:\n this._domElement.setAttribute('data-mode-id', model.getLanguageId());\n this._onDidChangeModelLanguage.fire(e.event);\n break;\n case 9 /* OutgoingViewModelEventKind.ModelLanguageConfigurationChanged */:\n this._onDidChangeModelLanguageConfiguration.fire(e.event);\n break;\n case 10 /* OutgoingViewModelEventKind.ModelContentChanged */:\n this._onDidChangeModelContent.fire(e.event);\n break;\n case 11 /* OutgoingViewModelEventKind.ModelOptionsChanged */:\n this._onDidChangeModelOptions.fire(e.event);\n break;\n case 12 /* OutgoingViewModelEventKind.ModelTokensChanged */:\n this._onDidChangeModelTokens.fire(e.event);\n break;\n }\n }));\n const [view, hasRealView] = this._createView(viewModel);\n if (hasRealView) {\n this._domElement.appendChild(view.domNode.domNode);\n let keys = Object.keys(this._contentWidgets);\n for (let i = 0, len = keys.length; i < len; i++) {\n const widgetId = keys[i];\n view.addContentWidget(this._contentWidgets[widgetId]);\n }\n keys = Object.keys(this._overlayWidgets);\n for (let i = 0, len = keys.length; i < len; i++) {\n const widgetId = keys[i];\n view.addOverlayWidget(this._overlayWidgets[widgetId]);\n }\n keys = Object.keys(this._glyphMarginWidgets);\n for (let i = 0, len = keys.length; i < len; i++) {\n const widgetId = keys[i];\n view.addGlyphMarginWidget(this._glyphMarginWidgets[widgetId]);\n }\n view.render(false, true);\n view.domNode.domNode.setAttribute('data-uri', model.uri.toString());\n }\n this._modelData = new ModelData(model, viewModel, view, hasRealView, listenersToRemove, attachedView);\n }\n _createView(viewModel) {\n let commandDelegate;\n if (this.isSimpleWidget) {\n commandDelegate = {\n paste: (text, pasteOnNewLine, multicursorText, mode) => {\n this._paste('keyboard', text, pasteOnNewLine, multicursorText, mode);\n },\n type: (text) => {\n this._type('keyboard', text);\n },\n compositionType: (text, replacePrevCharCnt, replaceNextCharCnt, positionDelta) => {\n this._compositionType('keyboard', text, replacePrevCharCnt, replaceNextCharCnt, positionDelta);\n },\n startComposition: () => {\n this._startComposition();\n },\n endComposition: () => {\n this._endComposition('keyboard');\n },\n cut: () => {\n this._cut('keyboard');\n }\n };\n }\n else {\n commandDelegate = {\n paste: (text, pasteOnNewLine, multicursorText, mode) => {\n const payload = { text, pasteOnNewLine, multicursorText, mode };\n this._commandService.executeCommand(\"paste\" /* editorCommon.Handler.Paste */, payload);\n },\n type: (text) => {\n const payload = { text };\n this._commandService.executeCommand(\"type\" /* editorCommon.Handler.Type */, payload);\n },\n compositionType: (text, replacePrevCharCnt, replaceNextCharCnt, positionDelta) => {\n // Try if possible to go through the existing `replacePreviousChar` command\n if (replaceNextCharCnt || positionDelta) {\n // must be handled through the new command\n const payload = { text, replacePrevCharCnt, replaceNextCharCnt, positionDelta };\n this._commandService.executeCommand(\"compositionType\" /* editorCommon.Handler.CompositionType */, payload);\n }\n else {\n const payload = { text, replaceCharCnt: replacePrevCharCnt };\n this._commandService.executeCommand(\"replacePreviousChar\" /* editorCommon.Handler.ReplacePreviousChar */, payload);\n }\n },\n startComposition: () => {\n this._commandService.executeCommand(\"compositionStart\" /* editorCommon.Handler.CompositionStart */, {});\n },\n endComposition: () => {\n this._commandService.executeCommand(\"compositionEnd\" /* editorCommon.Handler.CompositionEnd */, {});\n },\n cut: () => {\n this._commandService.executeCommand(\"cut\" /* editorCommon.Handler.Cut */, {});\n }\n };\n }\n const viewUserInputEvents = new _view_viewUserInputEvents_js__WEBPACK_IMPORTED_MODULE_14__.ViewUserInputEvents(viewModel.coordinatesConverter);\n viewUserInputEvents.onKeyDown = (e) => this._onKeyDown.fire(e);\n viewUserInputEvents.onKeyUp = (e) => this._onKeyUp.fire(e);\n viewUserInputEvents.onContextMenu = (e) => this._onContextMenu.fire(e);\n viewUserInputEvents.onMouseMove = (e) => this._onMouseMove.fire(e);\n viewUserInputEvents.onMouseLeave = (e) => this._onMouseLeave.fire(e);\n viewUserInputEvents.onMouseDown = (e) => this._onMouseDown.fire(e);\n viewUserInputEvents.onMouseUp = (e) => this._onMouseUp.fire(e);\n viewUserInputEvents.onMouseDrag = (e) => this._onMouseDrag.fire(e);\n viewUserInputEvents.onMouseDrop = (e) => this._onMouseDrop.fire(e);\n viewUserInputEvents.onMouseDropCanceled = (e) => this._onMouseDropCanceled.fire(e);\n viewUserInputEvents.onMouseWheel = (e) => this._onMouseWheel.fire(e);\n const view = new _view_js__WEBPACK_IMPORTED_MODULE_12__.View(commandDelegate, this._configuration, this._themeService.getColorTheme(), viewModel, viewUserInputEvents, this._overflowWidgetsDomNode, this._instantiationService);\n return [view, true];\n }\n _postDetachModelCleanup(detachedModel) {\n detachedModel === null || detachedModel === void 0 ? void 0 : detachedModel.removeAllDecorationsWithOwnerId(this._id);\n }\n _detachModel() {\n var _a;\n (_a = this._contributionsDisposable) === null || _a === void 0 ? void 0 : _a.dispose();\n this._contributionsDisposable = undefined;\n if (!this._modelData) {\n return null;\n }\n const model = this._modelData.model;\n const removeDomNode = this._modelData.hasRealView ? this._modelData.view.domNode.domNode : null;\n this._modelData.dispose();\n this._modelData = null;\n this._domElement.removeAttribute('data-mode-id');\n if (removeDomNode && this._domElement.contains(removeDomNode)) {\n this._domElement.removeChild(removeDomNode);\n }\n if (this._bannerDomNode && this._domElement.contains(this._bannerDomNode)) {\n this._domElement.removeChild(this._bannerDomNode);\n }\n return model;\n }\n _removeDecorationType(key) {\n this._codeEditorService.removeDecorationType(key);\n }\n hasModel() {\n return (this._modelData !== null);\n }\n showDropIndicatorAt(position) {\n const newDecorations = [{\n range: new _common_core_range_js__WEBPACK_IMPORTED_MODULE_20__.Range(position.lineNumber, position.column, position.lineNumber, position.column),\n options: CodeEditorWidget_1.dropIntoEditorDecorationOptions\n }];\n this._dropIntoEditorDecorations.set(newDecorations);\n this.revealPosition(position, 1 /* editorCommon.ScrollType.Immediate */);\n }\n removeDropIndicator() {\n this._dropIntoEditorDecorations.clear();\n }\n setContextValue(key, value) {\n this._contextKeyService.createKey(key, value);\n }\n};\nCodeEditorWidget.dropIntoEditorDecorationOptions = _common_model_textModel_js__WEBPACK_IMPORTED_MODULE_27__.ModelDecorationOptions.register({\n description: 'workbench-dnd-target',\n className: 'dnd-target'\n});\nCodeEditorWidget = CodeEditorWidget_1 = __decorate([\n __param(3, _platform_instantiation_common_instantiation_js__WEBPACK_IMPORTED_MODULE_35__.IInstantiationService),\n __param(4, _services_codeEditorService_js__WEBPACK_IMPORTED_MODULE_11__.ICodeEditorService),\n __param(5, _platform_commands_common_commands_js__WEBPACK_IMPORTED_MODULE_33__.ICommandService),\n __param(6, _platform_contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_34__.IContextKeyService),\n __param(7, _platform_theme_common_themeService_js__WEBPACK_IMPORTED_MODULE_39__.IThemeService),\n __param(8, _platform_notification_common_notification_js__WEBPACK_IMPORTED_MODULE_37__.INotificationService),\n __param(9, _platform_accessibility_common_accessibility_js__WEBPACK_IMPORTED_MODULE_32__.IAccessibilityService),\n __param(10, _common_languages_languageConfigurationRegistry_js__WEBPACK_IMPORTED_MODULE_26__.ILanguageConfigurationService),\n __param(11, _common_services_languageFeatures_js__WEBPACK_IMPORTED_MODULE_28__.ILanguageFeaturesService)\n], CodeEditorWidget);\n\nclass BooleanEventEmitter extends _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_4__.Disposable {\n constructor(_emitterOptions) {\n super();\n this._emitterOptions = _emitterOptions;\n this._onDidChangeToTrue = this._register(new _base_common_event_js__WEBPACK_IMPORTED_MODULE_3__.Emitter(this._emitterOptions));\n this.onDidChangeToTrue = this._onDidChangeToTrue.event;\n this._onDidChangeToFalse = this._register(new _base_common_event_js__WEBPACK_IMPORTED_MODULE_3__.Emitter(this._emitterOptions));\n this.onDidChangeToFalse = this._onDidChangeToFalse.event;\n this._value = 0 /* BooleanEventValue.NotSet */;\n }\n setValue(_value) {\n const value = (_value ? 2 /* BooleanEventValue.True */ : 1 /* BooleanEventValue.False */);\n if (this._value === value) {\n return;\n }\n this._value = value;\n if (this._value === 2 /* BooleanEventValue.True */) {\n this._onDidChangeToTrue.fire();\n }\n else if (this._value === 1 /* BooleanEventValue.False */) {\n this._onDidChangeToFalse.fire();\n }\n }\n}\n/**\n * A regular event emitter that also makes sure contributions are instantiated if necessary\n */\nclass InteractionEmitter extends _base_common_event_js__WEBPACK_IMPORTED_MODULE_3__.Emitter {\n constructor(_contributions, deliveryQueue) {\n super({ deliveryQueue });\n this._contributions = _contributions;\n }\n fire(event) {\n this._contributions.onBeforeInteractionEvent();\n super.fire(event);\n }\n}\nclass EditorContextKeysManager extends _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_4__.Disposable {\n constructor(editor, contextKeyService) {\n super();\n this._editor = editor;\n contextKeyService.createKey('editorId', editor.getId());\n this._editorSimpleInput = _common_editorContextKeys_js__WEBPACK_IMPORTED_MODULE_25__.EditorContextKeys.editorSimpleInput.bindTo(contextKeyService);\n this._editorFocus = _common_editorContextKeys_js__WEBPACK_IMPORTED_MODULE_25__.EditorContextKeys.focus.bindTo(contextKeyService);\n this._textInputFocus = _common_editorContextKeys_js__WEBPACK_IMPORTED_MODULE_25__.EditorContextKeys.textInputFocus.bindTo(contextKeyService);\n this._editorTextFocus = _common_editorContextKeys_js__WEBPACK_IMPORTED_MODULE_25__.EditorContextKeys.editorTextFocus.bindTo(contextKeyService);\n this._tabMovesFocus = _common_editorContextKeys_js__WEBPACK_IMPORTED_MODULE_25__.EditorContextKeys.tabMovesFocus.bindTo(contextKeyService);\n this._editorReadonly = _common_editorContextKeys_js__WEBPACK_IMPORTED_MODULE_25__.EditorContextKeys.readOnly.bindTo(contextKeyService);\n this._inDiffEditor = _common_editorContextKeys_js__WEBPACK_IMPORTED_MODULE_25__.EditorContextKeys.inDiffEditor.bindTo(contextKeyService);\n this._editorColumnSelection = _common_editorContextKeys_js__WEBPACK_IMPORTED_MODULE_25__.EditorContextKeys.columnSelection.bindTo(contextKeyService);\n this._hasMultipleSelections = _common_editorContextKeys_js__WEBPACK_IMPORTED_MODULE_25__.EditorContextKeys.hasMultipleSelections.bindTo(contextKeyService);\n this._hasNonEmptySelection = _common_editorContextKeys_js__WEBPACK_IMPORTED_MODULE_25__.EditorContextKeys.hasNonEmptySelection.bindTo(contextKeyService);\n this._canUndo = _common_editorContextKeys_js__WEBPACK_IMPORTED_MODULE_25__.EditorContextKeys.canUndo.bindTo(contextKeyService);\n this._canRedo = _common_editorContextKeys_js__WEBPACK_IMPORTED_MODULE_25__.EditorContextKeys.canRedo.bindTo(contextKeyService);\n this._register(this._editor.onDidChangeConfiguration(() => this._updateFromConfig()));\n this._register(this._editor.onDidChangeCursorSelection(() => this._updateFromSelection()));\n this._register(this._editor.onDidFocusEditorWidget(() => this._updateFromFocus()));\n this._register(this._editor.onDidBlurEditorWidget(() => this._updateFromFocus()));\n this._register(this._editor.onDidFocusEditorText(() => this._updateFromFocus()));\n this._register(this._editor.onDidBlurEditorText(() => this._updateFromFocus()));\n this._register(this._editor.onDidChangeModel(() => this._updateFromModel()));\n this._register(this._editor.onDidChangeConfiguration(() => this._updateFromModel()));\n this._register(_config_tabFocus_js__WEBPACK_IMPORTED_MODULE_9__.TabFocus.onDidChangeTabFocus((tabFocusMode) => this._tabMovesFocus.set(tabFocusMode)));\n this._updateFromConfig();\n this._updateFromSelection();\n this._updateFromFocus();\n this._updateFromModel();\n this._editorSimpleInput.set(this._editor.isSimpleWidget);\n }\n _updateFromConfig() {\n const options = this._editor.getOptions();\n this._tabMovesFocus.set(_config_tabFocus_js__WEBPACK_IMPORTED_MODULE_9__.TabFocus.getTabFocusMode());\n this._editorReadonly.set(options.get(91 /* EditorOption.readOnly */));\n this._inDiffEditor.set(options.get(61 /* EditorOption.inDiffEditor */));\n this._editorColumnSelection.set(options.get(22 /* EditorOption.columnSelection */));\n }\n _updateFromSelection() {\n const selections = this._editor.getSelections();\n if (!selections) {\n this._hasMultipleSelections.reset();\n this._hasNonEmptySelection.reset();\n }\n else {\n this._hasMultipleSelections.set(selections.length > 1);\n this._hasNonEmptySelection.set(selections.some(s => !s.isEmpty()));\n }\n }\n _updateFromFocus() {\n this._editorFocus.set(this._editor.hasWidgetFocus() && !this._editor.isSimpleWidget);\n this._editorTextFocus.set(this._editor.hasTextFocus() && !this._editor.isSimpleWidget);\n this._textInputFocus.set(this._editor.hasTextFocus());\n }\n _updateFromModel() {\n const model = this._editor.getModel();\n this._canUndo.set(Boolean(model && model.canUndo()));\n this._canRedo.set(Boolean(model && model.canRedo()));\n }\n}\nclass EditorModeContext extends _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_4__.Disposable {\n constructor(_editor, _contextKeyService, _languageFeaturesService) {\n super();\n this._editor = _editor;\n this._contextKeyService = _contextKeyService;\n this._languageFeaturesService = _languageFeaturesService;\n this._langId = _common_editorContextKeys_js__WEBPACK_IMPORTED_MODULE_25__.EditorContextKeys.languageId.bindTo(_contextKeyService);\n this._hasCompletionItemProvider = _common_editorContextKeys_js__WEBPACK_IMPORTED_MODULE_25__.EditorContextKeys.hasCompletionItemProvider.bindTo(_contextKeyService);\n this._hasCodeActionsProvider = _common_editorContextKeys_js__WEBPACK_IMPORTED_MODULE_25__.EditorContextKeys.hasCodeActionsProvider.bindTo(_contextKeyService);\n this._hasCodeLensProvider = _common_editorContextKeys_js__WEBPACK_IMPORTED_MODULE_25__.EditorContextKeys.hasCodeLensProvider.bindTo(_contextKeyService);\n this._hasDefinitionProvider = _common_editorContextKeys_js__WEBPACK_IMPORTED_MODULE_25__.EditorContextKeys.hasDefinitionProvider.bindTo(_contextKeyService);\n this._hasDeclarationProvider = _common_editorContextKeys_js__WEBPACK_IMPORTED_MODULE_25__.EditorContextKeys.hasDeclarationProvider.bindTo(_contextKeyService);\n this._hasImplementationProvider = _common_editorContextKeys_js__WEBPACK_IMPORTED_MODULE_25__.EditorContextKeys.hasImplementationProvider.bindTo(_contextKeyService);\n this._hasTypeDefinitionProvider = _common_editorContextKeys_js__WEBPACK_IMPORTED_MODULE_25__.EditorContextKeys.hasTypeDefinitionProvider.bindTo(_contextKeyService);\n this._hasHoverProvider = _common_editorContextKeys_js__WEBPACK_IMPORTED_MODULE_25__.EditorContextKeys.hasHoverProvider.bindTo(_contextKeyService);\n this._hasDocumentHighlightProvider = _common_editorContextKeys_js__WEBPACK_IMPORTED_MODULE_25__.EditorContextKeys.hasDocumentHighlightProvider.bindTo(_contextKeyService);\n this._hasDocumentSymbolProvider = _common_editorContextKeys_js__WEBPACK_IMPORTED_MODULE_25__.EditorContextKeys.hasDocumentSymbolProvider.bindTo(_contextKeyService);\n this._hasReferenceProvider = _common_editorContextKeys_js__WEBPACK_IMPORTED_MODULE_25__.EditorContextKeys.hasReferenceProvider.bindTo(_contextKeyService);\n this._hasRenameProvider = _common_editorContextKeys_js__WEBPACK_IMPORTED_MODULE_25__.EditorContextKeys.hasRenameProvider.bindTo(_contextKeyService);\n this._hasSignatureHelpProvider = _common_editorContextKeys_js__WEBPACK_IMPORTED_MODULE_25__.EditorContextKeys.hasSignatureHelpProvider.bindTo(_contextKeyService);\n this._hasInlayHintsProvider = _common_editorContextKeys_js__WEBPACK_IMPORTED_MODULE_25__.EditorContextKeys.hasInlayHintsProvider.bindTo(_contextKeyService);\n this._hasDocumentFormattingProvider = _common_editorContextKeys_js__WEBPACK_IMPORTED_MODULE_25__.EditorContextKeys.hasDocumentFormattingProvider.bindTo(_contextKeyService);\n this._hasDocumentSelectionFormattingProvider = _common_editorContextKeys_js__WEBPACK_IMPORTED_MODULE_25__.EditorContextKeys.hasDocumentSelectionFormattingProvider.bindTo(_contextKeyService);\n this._hasMultipleDocumentFormattingProvider = _common_editorContextKeys_js__WEBPACK_IMPORTED_MODULE_25__.EditorContextKeys.hasMultipleDocumentFormattingProvider.bindTo(_contextKeyService);\n this._hasMultipleDocumentSelectionFormattingProvider = _common_editorContextKeys_js__WEBPACK_IMPORTED_MODULE_25__.EditorContextKeys.hasMultipleDocumentSelectionFormattingProvider.bindTo(_contextKeyService);\n this._isInEmbeddedEditor = _common_editorContextKeys_js__WEBPACK_IMPORTED_MODULE_25__.EditorContextKeys.isInEmbeddedEditor.bindTo(_contextKeyService);\n const update = () => this._update();\n // update when model/mode changes\n this._register(_editor.onDidChangeModel(update));\n this._register(_editor.onDidChangeModelLanguage(update));\n // update when registries change\n this._register(_languageFeaturesService.completionProvider.onDidChange(update));\n this._register(_languageFeaturesService.codeActionProvider.onDidChange(update));\n this._register(_languageFeaturesService.codeLensProvider.onDidChange(update));\n this._register(_languageFeaturesService.definitionProvider.onDidChange(update));\n this._register(_languageFeaturesService.declarationProvider.onDidChange(update));\n this._register(_languageFeaturesService.implementationProvider.onDidChange(update));\n this._register(_languageFeaturesService.typeDefinitionProvider.onDidChange(update));\n this._register(_languageFeaturesService.hoverProvider.onDidChange(update));\n this._register(_languageFeaturesService.documentHighlightProvider.onDidChange(update));\n this._register(_languageFeaturesService.documentSymbolProvider.onDidChange(update));\n this._register(_languageFeaturesService.referenceProvider.onDidChange(update));\n this._register(_languageFeaturesService.renameProvider.onDidChange(update));\n this._register(_languageFeaturesService.documentFormattingEditProvider.onDidChange(update));\n this._register(_languageFeaturesService.documentRangeFormattingEditProvider.onDidChange(update));\n this._register(_languageFeaturesService.signatureHelpProvider.onDidChange(update));\n this._register(_languageFeaturesService.inlayHintsProvider.onDidChange(update));\n update();\n }\n dispose() {\n super.dispose();\n }\n reset() {\n this._contextKeyService.bufferChangeEvents(() => {\n this._langId.reset();\n this._hasCompletionItemProvider.reset();\n this._hasCodeActionsProvider.reset();\n this._hasCodeLensProvider.reset();\n this._hasDefinitionProvider.reset();\n this._hasDeclarationProvider.reset();\n this._hasImplementationProvider.reset();\n this._hasTypeDefinitionProvider.reset();\n this._hasHoverProvider.reset();\n this._hasDocumentHighlightProvider.reset();\n this._hasDocumentSymbolProvider.reset();\n this._hasReferenceProvider.reset();\n this._hasRenameProvider.reset();\n this._hasDocumentFormattingProvider.reset();\n this._hasDocumentSelectionFormattingProvider.reset();\n this._hasSignatureHelpProvider.reset();\n this._isInEmbeddedEditor.reset();\n });\n }\n _update() {\n const model = this._editor.getModel();\n if (!model) {\n this.reset();\n return;\n }\n this._contextKeyService.bufferChangeEvents(() => {\n this._langId.set(model.getLanguageId());\n this._hasCompletionItemProvider.set(this._languageFeaturesService.completionProvider.has(model));\n this._hasCodeActionsProvider.set(this._languageFeaturesService.codeActionProvider.has(model));\n this._hasCodeLensProvider.set(this._languageFeaturesService.codeLensProvider.has(model));\n this._hasDefinitionProvider.set(this._languageFeaturesService.definitionProvider.has(model));\n this._hasDeclarationProvider.set(this._languageFeaturesService.declarationProvider.has(model));\n this._hasImplementationProvider.set(this._languageFeaturesService.implementationProvider.has(model));\n this._hasTypeDefinitionProvider.set(this._languageFeaturesService.typeDefinitionProvider.has(model));\n this._hasHoverProvider.set(this._languageFeaturesService.hoverProvider.has(model));\n this._hasDocumentHighlightProvider.set(this._languageFeaturesService.documentHighlightProvider.has(model));\n this._hasDocumentSymbolProvider.set(this._languageFeaturesService.documentSymbolProvider.has(model));\n this._hasReferenceProvider.set(this._languageFeaturesService.referenceProvider.has(model));\n this._hasRenameProvider.set(this._languageFeaturesService.renameProvider.has(model));\n this._hasSignatureHelpProvider.set(this._languageFeaturesService.signatureHelpProvider.has(model));\n this._hasInlayHintsProvider.set(this._languageFeaturesService.inlayHintsProvider.has(model));\n this._hasDocumentFormattingProvider.set(this._languageFeaturesService.documentFormattingEditProvider.has(model) || this._languageFeaturesService.documentRangeFormattingEditProvider.has(model));\n this._hasDocumentSelectionFormattingProvider.set(this._languageFeaturesService.documentRangeFormattingEditProvider.has(model));\n this._hasMultipleDocumentFormattingProvider.set(this._languageFeaturesService.documentFormattingEditProvider.all(model).length + this._languageFeaturesService.documentRangeFormattingEditProvider.all(model).length > 1);\n this._hasMultipleDocumentSelectionFormattingProvider.set(this._languageFeaturesService.documentRangeFormattingEditProvider.all(model).length > 1);\n this._isInEmbeddedEditor.set(model.uri.scheme === _base_common_network_js__WEBPACK_IMPORTED_MODULE_5__.Schemas.walkThroughSnippet || model.uri.scheme === _base_common_network_js__WEBPACK_IMPORTED_MODULE_5__.Schemas.vscodeChatCodeBlock);\n });\n }\n}\nclass CodeEditorWidgetFocusTracker extends _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_4__.Disposable {\n constructor(domElement, overflowWidgetsDomNode) {\n super();\n this._onChange = this._register(new _base_common_event_js__WEBPACK_IMPORTED_MODULE_3__.Emitter());\n this.onChange = this._onChange.event;\n this._hadFocus = undefined;\n this._hasDomElementFocus = false;\n this._domFocusTracker = this._register(_base_browser_dom_js__WEBPACK_IMPORTED_MODULE_1__.trackFocus(domElement));\n this._overflowWidgetsDomNodeHasFocus = false;\n this._register(this._domFocusTracker.onDidFocus(() => {\n this._hasDomElementFocus = true;\n this._update();\n }));\n this._register(this._domFocusTracker.onDidBlur(() => {\n this._hasDomElementFocus = false;\n this._update();\n }));\n if (overflowWidgetsDomNode) {\n this._overflowWidgetsDomNode = this._register(_base_browser_dom_js__WEBPACK_IMPORTED_MODULE_1__.trackFocus(overflowWidgetsDomNode));\n this._register(this._overflowWidgetsDomNode.onDidFocus(() => {\n this._overflowWidgetsDomNodeHasFocus = true;\n this._update();\n }));\n this._register(this._overflowWidgetsDomNode.onDidBlur(() => {\n this._overflowWidgetsDomNodeHasFocus = false;\n this._update();\n }));\n }\n }\n _update() {\n const focused = this._hasDomElementFocus || this._overflowWidgetsDomNodeHasFocus;\n if (this._hadFocus !== focused) {\n this._hadFocus = focused;\n this._onChange.fire(undefined);\n }\n }\n hasFocus() {\n var _a;\n return (_a = this._hadFocus) !== null && _a !== void 0 ? _a : false;\n }\n}\nclass EditorDecorationsCollection {\n get length() {\n return this._decorationIds.length;\n }\n constructor(_editor, decorations) {\n this._editor = _editor;\n this._decorationIds = [];\n this._isChangingDecorations = false;\n if (Array.isArray(decorations) && decorations.length > 0) {\n this.set(decorations);\n }\n }\n onDidChange(listener, thisArgs, disposables) {\n return this._editor.onDidChangeModelDecorations((e) => {\n if (this._isChangingDecorations) {\n return;\n }\n listener.call(thisArgs, e);\n }, disposables);\n }\n getRange(index) {\n if (!this._editor.hasModel()) {\n return null;\n }\n if (index >= this._decorationIds.length) {\n return null;\n }\n return this._editor.getModel().getDecorationRange(this._decorationIds[index]);\n }\n getRanges() {\n if (!this._editor.hasModel()) {\n return [];\n }\n const model = this._editor.getModel();\n const result = [];\n for (const decorationId of this._decorationIds) {\n const range = model.getDecorationRange(decorationId);\n if (range) {\n result.push(range);\n }\n }\n return result;\n }\n has(decoration) {\n return this._decorationIds.includes(decoration.id);\n }\n clear() {\n if (this._decorationIds.length === 0) {\n // nothing to do\n return;\n }\n this.set([]);\n }\n set(newDecorations) {\n try {\n this._isChangingDecorations = true;\n this._editor.changeDecorations((accessor) => {\n this._decorationIds = accessor.deltaDecorations(this._decorationIds, newDecorations);\n });\n }\n finally {\n this._isChangingDecorations = false;\n }\n return this._decorationIds;\n }\n append(newDecorations) {\n let newDecorationIds = [];\n try {\n this._isChangingDecorations = true;\n this._editor.changeDecorations((accessor) => {\n newDecorationIds = accessor.deltaDecorations([], newDecorations);\n this._decorationIds = this._decorationIds.concat(newDecorationIds);\n });\n }\n finally {\n this._isChangingDecorations = false;\n }\n return newDecorationIds;\n }\n}\nconst squigglyStart = encodeURIComponent(` `);\nfunction getSquigglySVGData(color) {\n return squigglyStart + encodeURIComponent(color.toString()) + squigglyEnd;\n}\nconst dotdotdotStart = encodeURIComponent(` `);\nfunction getDotDotDotSVGData(color) {\n return dotdotdotStart + encodeURIComponent(color.toString()) + dotdotdotEnd;\n}\n(0,_platform_theme_common_themeService_js__WEBPACK_IMPORTED_MODULE_39__.registerThemingParticipant)((theme, collector) => {\n const errorForeground = theme.getColor(_platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_38__.editorErrorForeground);\n if (errorForeground) {\n collector.addRule(`.monaco-editor .${\"squiggly-error\" /* ClassName.EditorErrorDecoration */} { background: url(\"data:image/svg+xml,${getSquigglySVGData(errorForeground)}\") repeat-x bottom left; }`);\n }\n const warningForeground = theme.getColor(_platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_38__.editorWarningForeground);\n if (warningForeground) {\n collector.addRule(`.monaco-editor .${\"squiggly-warning\" /* ClassName.EditorWarningDecoration */} { background: url(\"data:image/svg+xml,${getSquigglySVGData(warningForeground)}\") repeat-x bottom left; }`);\n }\n const infoForeground = theme.getColor(_platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_38__.editorInfoForeground);\n if (infoForeground) {\n collector.addRule(`.monaco-editor .${\"squiggly-info\" /* ClassName.EditorInfoDecoration */} { background: url(\"data:image/svg+xml,${getSquigglySVGData(infoForeground)}\") repeat-x bottom left; }`);\n }\n const hintForeground = theme.getColor(_platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_38__.editorHintForeground);\n if (hintForeground) {\n collector.addRule(`.monaco-editor .${\"squiggly-hint\" /* ClassName.EditorHintDecoration */} { background: url(\"data:image/svg+xml,${getDotDotDotSVGData(hintForeground)}\") no-repeat bottom left; }`);\n }\n const unnecessaryForeground = theme.getColor(_common_core_editorColorRegistry_js__WEBPACK_IMPORTED_MODULE_18__.editorUnnecessaryCodeOpacity);\n if (unnecessaryForeground) {\n collector.addRule(`.monaco-editor.showUnused .${\"squiggly-inline-unnecessary\" /* ClassName.EditorUnnecessaryInlineDecoration */} { opacity: ${unnecessaryForeground.rgba.a}; }`);\n }\n});\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/browser/widget/codeEditorWidget.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/browser/widget/diffEditor/components/accessibleDiffViewer.js":
/*!***************************************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/browser/widget/diffEditor/components/accessibleDiffViewer.js ***!
\***************************************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ AccessibleDiffViewer: () => (/* binding */ AccessibleDiffViewer),\n/* harmony export */ AccessibleDiffViewerModelFromEditors: () => (/* binding */ AccessibleDiffViewerModelFromEditors)\n/* harmony export */ });\n/* harmony import */ var _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../../../base/browser/dom.js */ \"./node_modules/monaco-editor/esm/vs/base/browser/dom.js\");\n/* harmony import */ var _base_browser_trustedTypes_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../../base/browser/trustedTypes.js */ \"./node_modules/monaco-editor/esm/vs/base/browser/trustedTypes.js\");\n/* harmony import */ var _base_browser_ui_actionbar_actionbar_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../../../base/browser/ui/actionbar/actionbar.js */ \"./node_modules/monaco-editor/esm/vs/base/browser/ui/actionbar/actionbar.js\");\n/* harmony import */ var _base_browser_ui_scrollbar_scrollableElement_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../../../../base/browser/ui/scrollbar/scrollableElement.js */ \"./node_modules/monaco-editor/esm/vs/base/browser/ui/scrollbar/scrollableElement.js\");\n/* harmony import */ var _base_common_actions_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../../../../base/common/actions.js */ \"./node_modules/monaco-editor/esm/vs/base/common/actions.js\");\n/* harmony import */ var _base_common_arrays_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../../../../../base/common/arrays.js */ \"./node_modules/monaco-editor/esm/vs/base/common/arrays.js\");\n/* harmony import */ var _base_common_codicons_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../../../../../base/common/codicons.js */ \"./node_modules/monaco-editor/esm/vs/base/common/codicons.js\");\n/* harmony import */ var _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ../../../../../base/common/lifecycle.js */ \"./node_modules/monaco-editor/esm/vs/base/common/lifecycle.js\");\n/* harmony import */ var _base_common_observable_js__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ../../../../../base/common/observable.js */ \"./node_modules/monaco-editor/esm/vs/base/common/observable.js\");\n/* harmony import */ var _base_common_themables_js__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ../../../../../base/common/themables.js */ \"./node_modules/monaco-editor/esm/vs/base/common/themables.js\");\n/* harmony import */ var _config_domFontInfo_js__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! ../../../config/domFontInfo.js */ \"./node_modules/monaco-editor/esm/vs/editor/browser/config/domFontInfo.js\");\n/* harmony import */ var _utils_js__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(/*! ../utils.js */ \"./node_modules/monaco-editor/esm/vs/editor/browser/widget/diffEditor/utils.js\");\n/* harmony import */ var _common_config_editorOptions_js__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(/*! ../../../../common/config/editorOptions.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/config/editorOptions.js\");\n/* harmony import */ var _common_core_lineRange_js__WEBPACK_IMPORTED_MODULE_13__ = __webpack_require__(/*! ../../../../common/core/lineRange.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/core/lineRange.js\");\n/* harmony import */ var _common_core_offsetRange_js__WEBPACK_IMPORTED_MODULE_14__ = __webpack_require__(/*! ../../../../common/core/offsetRange.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/core/offsetRange.js\");\n/* harmony import */ var _common_core_position_js__WEBPACK_IMPORTED_MODULE_15__ = __webpack_require__(/*! ../../../../common/core/position.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/core/position.js\");\n/* harmony import */ var _common_core_range_js__WEBPACK_IMPORTED_MODULE_16__ = __webpack_require__(/*! ../../../../common/core/range.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/core/range.js\");\n/* harmony import */ var _common_diff_rangeMapping_js__WEBPACK_IMPORTED_MODULE_17__ = __webpack_require__(/*! ../../../../common/diff/rangeMapping.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/diff/rangeMapping.js\");\n/* harmony import */ var _common_languages_language_js__WEBPACK_IMPORTED_MODULE_18__ = __webpack_require__(/*! ../../../../common/languages/language.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/languages/language.js\");\n/* harmony import */ var _common_tokens_lineTokens_js__WEBPACK_IMPORTED_MODULE_19__ = __webpack_require__(/*! ../../../../common/tokens/lineTokens.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/tokens/lineTokens.js\");\n/* harmony import */ var _common_viewLayout_viewLineRenderer_js__WEBPACK_IMPORTED_MODULE_20__ = __webpack_require__(/*! ../../../../common/viewLayout/viewLineRenderer.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/viewLayout/viewLineRenderer.js\");\n/* harmony import */ var _common_viewModel_js__WEBPACK_IMPORTED_MODULE_21__ = __webpack_require__(/*! ../../../../common/viewModel.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/viewModel.js\");\n/* harmony import */ var _nls_js__WEBPACK_IMPORTED_MODULE_22__ = __webpack_require__(/*! ../../../../../nls.js */ \"./node_modules/monaco-editor/esm/vs/nls.js\");\n/* harmony import */ var _platform_accessibilitySignal_browser_accessibilitySignalService_js__WEBPACK_IMPORTED_MODULE_23__ = __webpack_require__(/*! ../../../../../platform/accessibilitySignal/browser/accessibilitySignalService.js */ \"./node_modules/monaco-editor/esm/vs/platform/accessibilitySignal/browser/accessibilitySignalService.js\");\n/* harmony import */ var _platform_instantiation_common_instantiation_js__WEBPACK_IMPORTED_MODULE_24__ = __webpack_require__(/*! ../../../../../platform/instantiation/common/instantiation.js */ \"./node_modules/monaco-editor/esm/vs/platform/instantiation/common/instantiation.js\");\n/* harmony import */ var _platform_theme_common_iconRegistry_js__WEBPACK_IMPORTED_MODULE_25__ = __webpack_require__(/*! ../../../../../platform/theme/common/iconRegistry.js */ \"./node_modules/monaco-editor/esm/vs/platform/theme/common/iconRegistry.js\");\n/* harmony import */ var _accessibleDiffViewer_css__WEBPACK_IMPORTED_MODULE_26__ = __webpack_require__(/*! ./accessibleDiffViewer.css */ \"./node_modules/monaco-editor/esm/vs/editor/browser/widget/diffEditor/components/accessibleDiffViewer.css\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\nvar __decorate = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\n return c > 3 && r && Object.defineProperty(target, key, r), r;\n};\nvar __param = (undefined && undefined.__param) || function (paramIndex, decorator) {\n return function (target, key) { decorator(target, key, paramIndex); }\n};\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nconst accessibleDiffViewerInsertIcon = (0,_platform_theme_common_iconRegistry_js__WEBPACK_IMPORTED_MODULE_25__.registerIcon)('diff-review-insert', _base_common_codicons_js__WEBPACK_IMPORTED_MODULE_6__.Codicon.add, (0,_nls_js__WEBPACK_IMPORTED_MODULE_22__.localize)('accessibleDiffViewerInsertIcon', 'Icon for \\'Insert\\' in accessible diff viewer.'));\nconst accessibleDiffViewerRemoveIcon = (0,_platform_theme_common_iconRegistry_js__WEBPACK_IMPORTED_MODULE_25__.registerIcon)('diff-review-remove', _base_common_codicons_js__WEBPACK_IMPORTED_MODULE_6__.Codicon.remove, (0,_nls_js__WEBPACK_IMPORTED_MODULE_22__.localize)('accessibleDiffViewerRemoveIcon', 'Icon for \\'Remove\\' in accessible diff viewer.'));\nconst accessibleDiffViewerCloseIcon = (0,_platform_theme_common_iconRegistry_js__WEBPACK_IMPORTED_MODULE_25__.registerIcon)('diff-review-close', _base_common_codicons_js__WEBPACK_IMPORTED_MODULE_6__.Codicon.close, (0,_nls_js__WEBPACK_IMPORTED_MODULE_22__.localize)('accessibleDiffViewerCloseIcon', 'Icon for \\'Close\\' in accessible diff viewer.'));\nlet AccessibleDiffViewer = class AccessibleDiffViewer extends _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_7__.Disposable {\n constructor(_parentNode, _visible, _setVisible, _canClose, _width, _height, _diffs, _models, _instantiationService) {\n super();\n this._parentNode = _parentNode;\n this._visible = _visible;\n this._setVisible = _setVisible;\n this._canClose = _canClose;\n this._width = _width;\n this._height = _height;\n this._diffs = _diffs;\n this._models = _models;\n this._instantiationService = _instantiationService;\n this._state = (0,_base_common_observable_js__WEBPACK_IMPORTED_MODULE_8__.derivedWithStore)(this, (reader, store) => {\n const visible = this._visible.read(reader);\n this._parentNode.style.visibility = visible ? 'visible' : 'hidden';\n if (!visible) {\n return null;\n }\n const model = store.add(this._instantiationService.createInstance(ViewModel, this._diffs, this._models, this._setVisible, this._canClose));\n const view = store.add(this._instantiationService.createInstance(View, this._parentNode, model, this._width, this._height, this._models));\n return { model, view, };\n }).recomputeInitiallyAndOnChange(this._store);\n }\n next() {\n (0,_base_common_observable_js__WEBPACK_IMPORTED_MODULE_8__.transaction)(tx => {\n const isVisible = this._visible.get();\n this._setVisible(true, tx);\n if (isVisible) {\n this._state.get().model.nextGroup(tx);\n }\n });\n }\n prev() {\n (0,_base_common_observable_js__WEBPACK_IMPORTED_MODULE_8__.transaction)(tx => {\n this._setVisible(true, tx);\n this._state.get().model.previousGroup(tx);\n });\n }\n close() {\n (0,_base_common_observable_js__WEBPACK_IMPORTED_MODULE_8__.transaction)(tx => {\n this._setVisible(false, tx);\n });\n }\n};\nAccessibleDiffViewer._ttPolicy = (0,_base_browser_trustedTypes_js__WEBPACK_IMPORTED_MODULE_1__.createTrustedTypesPolicy)('diffReview', { createHTML: value => value });\nAccessibleDiffViewer = __decorate([\n __param(8, _platform_instantiation_common_instantiation_js__WEBPACK_IMPORTED_MODULE_24__.IInstantiationService)\n], AccessibleDiffViewer);\n\nlet ViewModel = class ViewModel extends _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_7__.Disposable {\n constructor(_diffs, _models, _setVisible, canClose, _accessibilitySignalService) {\n super();\n this._diffs = _diffs;\n this._models = _models;\n this._setVisible = _setVisible;\n this.canClose = canClose;\n this._accessibilitySignalService = _accessibilitySignalService;\n this._groups = (0,_base_common_observable_js__WEBPACK_IMPORTED_MODULE_8__.observableValue)(this, []);\n this._currentGroupIdx = (0,_base_common_observable_js__WEBPACK_IMPORTED_MODULE_8__.observableValue)(this, 0);\n this._currentElementIdx = (0,_base_common_observable_js__WEBPACK_IMPORTED_MODULE_8__.observableValue)(this, 0);\n this.groups = this._groups;\n this.currentGroup = this._currentGroupIdx.map((idx, r) => this._groups.read(r)[idx]);\n this.currentGroupIndex = this._currentGroupIdx;\n this.currentElement = this._currentElementIdx.map((idx, r) => { var _a; return (_a = this.currentGroup.read(r)) === null || _a === void 0 ? void 0 : _a.lines[idx]; });\n this._register((0,_base_common_observable_js__WEBPACK_IMPORTED_MODULE_8__.autorun)(reader => {\n /** @description update groups */\n const diffs = this._diffs.read(reader);\n if (!diffs) {\n this._groups.set([], undefined);\n return;\n }\n const groups = computeViewElementGroups(diffs, this._models.getOriginalModel().getLineCount(), this._models.getModifiedModel().getLineCount());\n (0,_base_common_observable_js__WEBPACK_IMPORTED_MODULE_8__.transaction)(tx => {\n const p = this._models.getModifiedPosition();\n if (p) {\n const nextGroup = groups.findIndex(g => (p === null || p === void 0 ? void 0 : p.lineNumber) < g.range.modified.endLineNumberExclusive);\n if (nextGroup !== -1) {\n this._currentGroupIdx.set(nextGroup, tx);\n }\n }\n this._groups.set(groups, tx);\n });\n }));\n this._register((0,_base_common_observable_js__WEBPACK_IMPORTED_MODULE_8__.autorun)(reader => {\n /** @description play audio-cue for diff */\n const currentViewItem = this.currentElement.read(reader);\n if ((currentViewItem === null || currentViewItem === void 0 ? void 0 : currentViewItem.type) === LineType.Deleted) {\n this._accessibilitySignalService.playSignal(_platform_accessibilitySignal_browser_accessibilitySignalService_js__WEBPACK_IMPORTED_MODULE_23__.AccessibilitySignal.diffLineDeleted, { source: 'accessibleDiffViewer.currentElementChanged' });\n }\n else if ((currentViewItem === null || currentViewItem === void 0 ? void 0 : currentViewItem.type) === LineType.Added) {\n this._accessibilitySignalService.playSignal(_platform_accessibilitySignal_browser_accessibilitySignalService_js__WEBPACK_IMPORTED_MODULE_23__.AccessibilitySignal.diffLineInserted, { source: 'accessibleDiffViewer.currentElementChanged' });\n }\n }));\n this._register((0,_base_common_observable_js__WEBPACK_IMPORTED_MODULE_8__.autorun)(reader => {\n var _a;\n /** @description select lines in editor */\n // This ensures editor commands (like revert/stage) work\n const currentViewItem = this.currentElement.read(reader);\n if (currentViewItem && currentViewItem.type !== LineType.Header) {\n const lineNumber = (_a = currentViewItem.modifiedLineNumber) !== null && _a !== void 0 ? _a : currentViewItem.diff.modified.startLineNumber;\n this._models.modifiedSetSelection(_common_core_range_js__WEBPACK_IMPORTED_MODULE_16__.Range.fromPositions(new _common_core_position_js__WEBPACK_IMPORTED_MODULE_15__.Position(lineNumber, 1)));\n }\n }));\n }\n _goToGroupDelta(delta, tx) {\n const groups = this.groups.get();\n if (!groups || groups.length <= 1) {\n return;\n }\n (0,_base_common_observable_js__WEBPACK_IMPORTED_MODULE_8__.subtransaction)(tx, tx => {\n this._currentGroupIdx.set(_common_core_offsetRange_js__WEBPACK_IMPORTED_MODULE_14__.OffsetRange.ofLength(groups.length).clipCyclic(this._currentGroupIdx.get() + delta), tx);\n this._currentElementIdx.set(0, tx);\n });\n }\n nextGroup(tx) { this._goToGroupDelta(1, tx); }\n previousGroup(tx) { this._goToGroupDelta(-1, tx); }\n _goToLineDelta(delta) {\n const group = this.currentGroup.get();\n if (!group || group.lines.length <= 1) {\n return;\n }\n (0,_base_common_observable_js__WEBPACK_IMPORTED_MODULE_8__.transaction)(tx => {\n this._currentElementIdx.set(_common_core_offsetRange_js__WEBPACK_IMPORTED_MODULE_14__.OffsetRange.ofLength(group.lines.length).clip(this._currentElementIdx.get() + delta), tx);\n });\n }\n goToNextLine() { this._goToLineDelta(1); }\n goToPreviousLine() { this._goToLineDelta(-1); }\n goToLine(line) {\n const group = this.currentGroup.get();\n if (!group) {\n return;\n }\n const idx = group.lines.indexOf(line);\n if (idx === -1) {\n return;\n }\n (0,_base_common_observable_js__WEBPACK_IMPORTED_MODULE_8__.transaction)(tx => {\n this._currentElementIdx.set(idx, tx);\n });\n }\n revealCurrentElementInEditor() {\n if (!this.canClose.get()) {\n return;\n }\n this._setVisible(false, undefined);\n const curElem = this.currentElement.get();\n if (curElem) {\n if (curElem.type === LineType.Deleted) {\n this._models.originalReveal(_common_core_range_js__WEBPACK_IMPORTED_MODULE_16__.Range.fromPositions(new _common_core_position_js__WEBPACK_IMPORTED_MODULE_15__.Position(curElem.originalLineNumber, 1)));\n }\n else {\n this._models.modifiedReveal(curElem.type !== LineType.Header\n ? _common_core_range_js__WEBPACK_IMPORTED_MODULE_16__.Range.fromPositions(new _common_core_position_js__WEBPACK_IMPORTED_MODULE_15__.Position(curElem.modifiedLineNumber, 1))\n : undefined);\n }\n }\n }\n close() {\n if (!this.canClose.get()) {\n return;\n }\n this._setVisible(false, undefined);\n this._models.modifiedFocus();\n }\n};\nViewModel = __decorate([\n __param(4, _platform_accessibilitySignal_browser_accessibilitySignalService_js__WEBPACK_IMPORTED_MODULE_23__.IAccessibilitySignalService)\n], ViewModel);\nconst viewElementGroupLineMargin = 3;\nfunction computeViewElementGroups(diffs, originalLineCount, modifiedLineCount) {\n const result = [];\n for (const g of (0,_base_common_arrays_js__WEBPACK_IMPORTED_MODULE_5__.groupAdjacentBy)(diffs, (a, b) => (b.modified.startLineNumber - a.modified.endLineNumberExclusive < 2 * viewElementGroupLineMargin))) {\n const viewElements = [];\n viewElements.push(new HeaderViewElement());\n const origFullRange = new _common_core_lineRange_js__WEBPACK_IMPORTED_MODULE_13__.LineRange(Math.max(1, g[0].original.startLineNumber - viewElementGroupLineMargin), Math.min(g[g.length - 1].original.endLineNumberExclusive + viewElementGroupLineMargin, originalLineCount + 1));\n const modifiedFullRange = new _common_core_lineRange_js__WEBPACK_IMPORTED_MODULE_13__.LineRange(Math.max(1, g[0].modified.startLineNumber - viewElementGroupLineMargin), Math.min(g[g.length - 1].modified.endLineNumberExclusive + viewElementGroupLineMargin, modifiedLineCount + 1));\n (0,_base_common_arrays_js__WEBPACK_IMPORTED_MODULE_5__.forEachAdjacent)(g, (a, b) => {\n const origRange = new _common_core_lineRange_js__WEBPACK_IMPORTED_MODULE_13__.LineRange(a ? a.original.endLineNumberExclusive : origFullRange.startLineNumber, b ? b.original.startLineNumber : origFullRange.endLineNumberExclusive);\n const modifiedRange = new _common_core_lineRange_js__WEBPACK_IMPORTED_MODULE_13__.LineRange(a ? a.modified.endLineNumberExclusive : modifiedFullRange.startLineNumber, b ? b.modified.startLineNumber : modifiedFullRange.endLineNumberExclusive);\n origRange.forEach(origLineNumber => {\n viewElements.push(new UnchangedLineViewElement(origLineNumber, modifiedRange.startLineNumber + (origLineNumber - origRange.startLineNumber)));\n });\n if (b) {\n b.original.forEach(origLineNumber => {\n viewElements.push(new DeletedLineViewElement(b, origLineNumber));\n });\n b.modified.forEach(modifiedLineNumber => {\n viewElements.push(new AddedLineViewElement(b, modifiedLineNumber));\n });\n }\n });\n const modifiedRange = g[0].modified.join(g[g.length - 1].modified);\n const originalRange = g[0].original.join(g[g.length - 1].original);\n result.push(new ViewElementGroup(new _common_diff_rangeMapping_js__WEBPACK_IMPORTED_MODULE_17__.LineRangeMapping(modifiedRange, originalRange), viewElements));\n }\n return result;\n}\nvar LineType;\n(function (LineType) {\n LineType[LineType[\"Header\"] = 0] = \"Header\";\n LineType[LineType[\"Unchanged\"] = 1] = \"Unchanged\";\n LineType[LineType[\"Deleted\"] = 2] = \"Deleted\";\n LineType[LineType[\"Added\"] = 3] = \"Added\";\n})(LineType || (LineType = {}));\nclass ViewElementGroup {\n constructor(range, lines) {\n this.range = range;\n this.lines = lines;\n }\n}\nclass HeaderViewElement {\n constructor() {\n this.type = LineType.Header;\n }\n}\nclass DeletedLineViewElement {\n constructor(diff, originalLineNumber) {\n this.diff = diff;\n this.originalLineNumber = originalLineNumber;\n this.type = LineType.Deleted;\n this.modifiedLineNumber = undefined;\n }\n}\nclass AddedLineViewElement {\n constructor(diff, modifiedLineNumber) {\n this.diff = diff;\n this.modifiedLineNumber = modifiedLineNumber;\n this.type = LineType.Added;\n this.originalLineNumber = undefined;\n }\n}\nclass UnchangedLineViewElement {\n constructor(originalLineNumber, modifiedLineNumber) {\n this.originalLineNumber = originalLineNumber;\n this.modifiedLineNumber = modifiedLineNumber;\n this.type = LineType.Unchanged;\n }\n}\nlet View = class View extends _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_7__.Disposable {\n constructor(_element, _model, _width, _height, _models, _languageService) {\n super();\n this._element = _element;\n this._model = _model;\n this._width = _width;\n this._height = _height;\n this._models = _models;\n this._languageService = _languageService;\n this.domNode = this._element;\n this.domNode.className = 'monaco-component diff-review monaco-editor-background';\n const actionBarContainer = document.createElement('div');\n actionBarContainer.className = 'diff-review-actions';\n this._actionBar = this._register(new _base_browser_ui_actionbar_actionbar_js__WEBPACK_IMPORTED_MODULE_2__.ActionBar(actionBarContainer));\n this._register((0,_base_common_observable_js__WEBPACK_IMPORTED_MODULE_8__.autorun)(reader => {\n /** @description update actions */\n this._actionBar.clear();\n if (this._model.canClose.read(reader)) {\n this._actionBar.push(new _base_common_actions_js__WEBPACK_IMPORTED_MODULE_4__.Action('diffreview.close', (0,_nls_js__WEBPACK_IMPORTED_MODULE_22__.localize)('label.close', \"Close\"), 'close-diff-review ' + _base_common_themables_js__WEBPACK_IMPORTED_MODULE_9__.ThemeIcon.asClassName(accessibleDiffViewerCloseIcon), true, async () => _model.close()), { label: false, icon: true });\n }\n }));\n this._content = document.createElement('div');\n this._content.className = 'diff-review-content';\n this._content.setAttribute('role', 'code');\n this._scrollbar = this._register(new _base_browser_ui_scrollbar_scrollableElement_js__WEBPACK_IMPORTED_MODULE_3__.DomScrollableElement(this._content, {}));\n (0,_base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.reset)(this.domNode, this._scrollbar.getDomNode(), actionBarContainer);\n this._register((0,_base_common_observable_js__WEBPACK_IMPORTED_MODULE_8__.autorun)(r => {\n this._height.read(r);\n this._width.read(r);\n this._scrollbar.scanDomNode();\n }));\n this._register((0,_base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_7__.toDisposable)(() => { (0,_base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.reset)(this.domNode); }));\n this._register((0,_utils_js__WEBPACK_IMPORTED_MODULE_11__.applyStyle)(this.domNode, { width: this._width, height: this._height }));\n this._register((0,_utils_js__WEBPACK_IMPORTED_MODULE_11__.applyStyle)(this._content, { width: this._width, height: this._height }));\n this._register((0,_base_common_observable_js__WEBPACK_IMPORTED_MODULE_8__.autorunWithStore)((reader, store) => {\n /** @description render */\n this._model.currentGroup.read(reader);\n this._render(store);\n }));\n // TODO@hediet use commands\n this._register((0,_base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.addStandardDisposableListener)(this.domNode, 'keydown', (e) => {\n if (e.equals(18 /* KeyCode.DownArrow */)\n || e.equals(2048 /* KeyMod.CtrlCmd */ | 18 /* KeyCode.DownArrow */)\n || e.equals(512 /* KeyMod.Alt */ | 18 /* KeyCode.DownArrow */)) {\n e.preventDefault();\n this._model.goToNextLine();\n }\n if (e.equals(16 /* KeyCode.UpArrow */)\n || e.equals(2048 /* KeyMod.CtrlCmd */ | 16 /* KeyCode.UpArrow */)\n || e.equals(512 /* KeyMod.Alt */ | 16 /* KeyCode.UpArrow */)) {\n e.preventDefault();\n this._model.goToPreviousLine();\n }\n if (e.equals(9 /* KeyCode.Escape */)\n || e.equals(2048 /* KeyMod.CtrlCmd */ | 9 /* KeyCode.Escape */)\n || e.equals(512 /* KeyMod.Alt */ | 9 /* KeyCode.Escape */)\n || e.equals(1024 /* KeyMod.Shift */ | 9 /* KeyCode.Escape */)) {\n e.preventDefault();\n this._model.close();\n }\n if (e.equals(10 /* KeyCode.Space */)\n || e.equals(3 /* KeyCode.Enter */)) {\n e.preventDefault();\n this._model.revealCurrentElementInEditor();\n }\n }));\n }\n _render(store) {\n const originalOptions = this._models.getOriginalOptions();\n const modifiedOptions = this._models.getModifiedOptions();\n const container = document.createElement('div');\n container.className = 'diff-review-table';\n container.setAttribute('role', 'list');\n container.setAttribute('aria-label', (0,_nls_js__WEBPACK_IMPORTED_MODULE_22__.localize)('ariaLabel', 'Accessible Diff Viewer. Use arrow up and down to navigate.'));\n (0,_config_domFontInfo_js__WEBPACK_IMPORTED_MODULE_10__.applyFontInfo)(container, modifiedOptions.get(50 /* EditorOption.fontInfo */));\n (0,_base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.reset)(this._content, container);\n const originalModel = this._models.getOriginalModel();\n const modifiedModel = this._models.getModifiedModel();\n if (!originalModel || !modifiedModel) {\n return;\n }\n const originalModelOpts = originalModel.getOptions();\n const modifiedModelOpts = modifiedModel.getOptions();\n const lineHeight = modifiedOptions.get(67 /* EditorOption.lineHeight */);\n const group = this._model.currentGroup.get();\n for (const viewItem of (group === null || group === void 0 ? void 0 : group.lines) || []) {\n if (!group) {\n break;\n }\n let row;\n if (viewItem.type === LineType.Header) {\n const header = document.createElement('div');\n header.className = 'diff-review-row';\n header.setAttribute('role', 'listitem');\n const r = group.range;\n const diffIndex = this._model.currentGroupIndex.get();\n const diffsLength = this._model.groups.get().length;\n const getAriaLines = (lines) => lines === 0 ? (0,_nls_js__WEBPACK_IMPORTED_MODULE_22__.localize)('no_lines_changed', \"no lines changed\")\n : lines === 1 ? (0,_nls_js__WEBPACK_IMPORTED_MODULE_22__.localize)('one_line_changed', \"1 line changed\")\n : (0,_nls_js__WEBPACK_IMPORTED_MODULE_22__.localize)('more_lines_changed', \"{0} lines changed\", lines);\n const originalChangedLinesCntAria = getAriaLines(r.original.length);\n const modifiedChangedLinesCntAria = getAriaLines(r.modified.length);\n header.setAttribute('aria-label', (0,_nls_js__WEBPACK_IMPORTED_MODULE_22__.localize)({\n key: 'header',\n comment: [\n 'This is the ARIA label for a git diff header.',\n 'A git diff header looks like this: @@ -154,12 +159,39 @@.',\n 'That encodes that at original line 154 (which is now line 159), 12 lines were removed/changed with 39 lines.',\n 'Variables 0 and 1 refer to the diff index out of total number of diffs.',\n 'Variables 2 and 4 will be numbers (a line number).',\n 'Variables 3 and 5 will be \"no lines changed\", \"1 line changed\" or \"X lines changed\", localized separately.'\n ]\n }, \"Difference {0} of {1}: original line {2}, {3}, modified line {4}, {5}\", (diffIndex + 1), diffsLength, r.original.startLineNumber, originalChangedLinesCntAria, r.modified.startLineNumber, modifiedChangedLinesCntAria));\n const cell = document.createElement('div');\n cell.className = 'diff-review-cell diff-review-summary';\n // e.g.: `1/10: @@ -504,7 +517,7 @@`\n cell.appendChild(document.createTextNode(`${diffIndex + 1}/${diffsLength}: @@ -${r.original.startLineNumber},${r.original.length} +${r.modified.startLineNumber},${r.modified.length} @@`));\n header.appendChild(cell);\n row = header;\n }\n else {\n row = this._createRow(viewItem, lineHeight, this._width.get(), originalOptions, originalModel, originalModelOpts, modifiedOptions, modifiedModel, modifiedModelOpts);\n }\n container.appendChild(row);\n const isSelectedObs = (0,_base_common_observable_js__WEBPACK_IMPORTED_MODULE_8__.derived)(reader => /** @description isSelected */ this._model.currentElement.read(reader) === viewItem);\n store.add((0,_base_common_observable_js__WEBPACK_IMPORTED_MODULE_8__.autorun)(reader => {\n /** @description update tab index */\n const isSelected = isSelectedObs.read(reader);\n row.tabIndex = isSelected ? 0 : -1;\n if (isSelected) {\n row.focus();\n }\n }));\n store.add((0,_base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.addDisposableListener)(row, 'focus', () => {\n this._model.goToLine(viewItem);\n }));\n }\n this._scrollbar.scanDomNode();\n }\n _createRow(item, lineHeight, width, originalOptions, originalModel, originalModelOpts, modifiedOptions, modifiedModel, modifiedModelOpts) {\n const originalLayoutInfo = originalOptions.get(144 /* EditorOption.layoutInfo */);\n const originalLineNumbersWidth = originalLayoutInfo.glyphMarginWidth + originalLayoutInfo.lineNumbersWidth;\n const modifiedLayoutInfo = modifiedOptions.get(144 /* EditorOption.layoutInfo */);\n const modifiedLineNumbersWidth = 10 + modifiedLayoutInfo.glyphMarginWidth + modifiedLayoutInfo.lineNumbersWidth;\n let rowClassName = 'diff-review-row';\n let lineNumbersExtraClassName = '';\n const spacerClassName = 'diff-review-spacer';\n let spacerIcon = null;\n switch (item.type) {\n case LineType.Added:\n rowClassName = 'diff-review-row line-insert';\n lineNumbersExtraClassName = ' char-insert';\n spacerIcon = accessibleDiffViewerInsertIcon;\n break;\n case LineType.Deleted:\n rowClassName = 'diff-review-row line-delete';\n lineNumbersExtraClassName = ' char-delete';\n spacerIcon = accessibleDiffViewerRemoveIcon;\n break;\n }\n const row = document.createElement('div');\n row.style.minWidth = width + 'px';\n row.className = rowClassName;\n row.setAttribute('role', 'listitem');\n row.ariaLevel = '';\n const cell = document.createElement('div');\n cell.className = 'diff-review-cell';\n cell.style.height = `${lineHeight}px`;\n row.appendChild(cell);\n const originalLineNumber = document.createElement('span');\n originalLineNumber.style.width = (originalLineNumbersWidth + 'px');\n originalLineNumber.style.minWidth = (originalLineNumbersWidth + 'px');\n originalLineNumber.className = 'diff-review-line-number' + lineNumbersExtraClassName;\n if (item.originalLineNumber !== undefined) {\n originalLineNumber.appendChild(document.createTextNode(String(item.originalLineNumber)));\n }\n else {\n originalLineNumber.innerText = '\\u00a0';\n }\n cell.appendChild(originalLineNumber);\n const modifiedLineNumber = document.createElement('span');\n modifiedLineNumber.style.width = (modifiedLineNumbersWidth + 'px');\n modifiedLineNumber.style.minWidth = (modifiedLineNumbersWidth + 'px');\n modifiedLineNumber.style.paddingRight = '10px';\n modifiedLineNumber.className = 'diff-review-line-number' + lineNumbersExtraClassName;\n if (item.modifiedLineNumber !== undefined) {\n modifiedLineNumber.appendChild(document.createTextNode(String(item.modifiedLineNumber)));\n }\n else {\n modifiedLineNumber.innerText = '\\u00a0';\n }\n cell.appendChild(modifiedLineNumber);\n const spacer = document.createElement('span');\n spacer.className = spacerClassName;\n if (spacerIcon) {\n const spacerCodicon = document.createElement('span');\n spacerCodicon.className = _base_common_themables_js__WEBPACK_IMPORTED_MODULE_9__.ThemeIcon.asClassName(spacerIcon);\n spacerCodicon.innerText = '\\u00a0\\u00a0';\n spacer.appendChild(spacerCodicon);\n }\n else {\n spacer.innerText = '\\u00a0\\u00a0';\n }\n cell.appendChild(spacer);\n let lineContent;\n if (item.modifiedLineNumber !== undefined) {\n let html = this._getLineHtml(modifiedModel, modifiedOptions, modifiedModelOpts.tabSize, item.modifiedLineNumber, this._languageService.languageIdCodec);\n if (AccessibleDiffViewer._ttPolicy) {\n html = AccessibleDiffViewer._ttPolicy.createHTML(html);\n }\n cell.insertAdjacentHTML('beforeend', html);\n lineContent = modifiedModel.getLineContent(item.modifiedLineNumber);\n }\n else {\n let html = this._getLineHtml(originalModel, originalOptions, originalModelOpts.tabSize, item.originalLineNumber, this._languageService.languageIdCodec);\n if (AccessibleDiffViewer._ttPolicy) {\n html = AccessibleDiffViewer._ttPolicy.createHTML(html);\n }\n cell.insertAdjacentHTML('beforeend', html);\n lineContent = originalModel.getLineContent(item.originalLineNumber);\n }\n if (lineContent.length === 0) {\n lineContent = (0,_nls_js__WEBPACK_IMPORTED_MODULE_22__.localize)('blankLine', \"blank\");\n }\n let ariaLabel = '';\n switch (item.type) {\n case LineType.Unchanged:\n if (item.originalLineNumber === item.modifiedLineNumber) {\n ariaLabel = (0,_nls_js__WEBPACK_IMPORTED_MODULE_22__.localize)({ key: 'unchangedLine', comment: ['The placeholders are contents of the line and should not be translated.'] }, \"{0} unchanged line {1}\", lineContent, item.originalLineNumber);\n }\n else {\n ariaLabel = (0,_nls_js__WEBPACK_IMPORTED_MODULE_22__.localize)('equalLine', \"{0} original line {1} modified line {2}\", lineContent, item.originalLineNumber, item.modifiedLineNumber);\n }\n break;\n case LineType.Added:\n ariaLabel = (0,_nls_js__WEBPACK_IMPORTED_MODULE_22__.localize)('insertLine', \"+ {0} modified line {1}\", lineContent, item.modifiedLineNumber);\n break;\n case LineType.Deleted:\n ariaLabel = (0,_nls_js__WEBPACK_IMPORTED_MODULE_22__.localize)('deleteLine', \"- {0} original line {1}\", lineContent, item.originalLineNumber);\n break;\n }\n row.setAttribute('aria-label', ariaLabel);\n return row;\n }\n _getLineHtml(model, options, tabSize, lineNumber, languageIdCodec) {\n const lineContent = model.getLineContent(lineNumber);\n const fontInfo = options.get(50 /* EditorOption.fontInfo */);\n const lineTokens = _common_tokens_lineTokens_js__WEBPACK_IMPORTED_MODULE_19__.LineTokens.createEmpty(lineContent, languageIdCodec);\n const isBasicASCII = _common_viewModel_js__WEBPACK_IMPORTED_MODULE_21__.ViewLineRenderingData.isBasicASCII(lineContent, model.mightContainNonBasicASCII());\n const containsRTL = _common_viewModel_js__WEBPACK_IMPORTED_MODULE_21__.ViewLineRenderingData.containsRTL(lineContent, isBasicASCII, model.mightContainRTL());\n const r = (0,_common_viewLayout_viewLineRenderer_js__WEBPACK_IMPORTED_MODULE_20__.renderViewLine2)(new _common_viewLayout_viewLineRenderer_js__WEBPACK_IMPORTED_MODULE_20__.RenderLineInput((fontInfo.isMonospace && !options.get(33 /* EditorOption.disableMonospaceOptimizations */)), fontInfo.canUseHalfwidthRightwardsArrow, lineContent, false, isBasicASCII, containsRTL, 0, lineTokens, [], tabSize, 0, fontInfo.spaceWidth, fontInfo.middotWidth, fontInfo.wsmiddotWidth, options.get(117 /* EditorOption.stopRenderingLineAfter */), options.get(99 /* EditorOption.renderWhitespace */), options.get(94 /* EditorOption.renderControlCharacters */), options.get(51 /* EditorOption.fontLigatures */) !== _common_config_editorOptions_js__WEBPACK_IMPORTED_MODULE_12__.EditorFontLigatures.OFF, null));\n return r.html;\n }\n};\nView = __decorate([\n __param(5, _common_languages_language_js__WEBPACK_IMPORTED_MODULE_18__.ILanguageService)\n], View);\nclass AccessibleDiffViewerModelFromEditors {\n constructor(editors) {\n this.editors = editors;\n }\n getOriginalModel() {\n return this.editors.original.getModel();\n }\n getOriginalOptions() {\n return this.editors.original.getOptions();\n }\n originalReveal(range) {\n this.editors.original.revealRange(range);\n this.editors.original.setSelection(range);\n this.editors.original.focus();\n }\n getModifiedModel() {\n return this.editors.modified.getModel();\n }\n getModifiedOptions() {\n return this.editors.modified.getOptions();\n }\n modifiedReveal(range) {\n if (range) {\n this.editors.modified.revealRange(range);\n this.editors.modified.setSelection(range);\n }\n this.editors.modified.focus();\n }\n modifiedSetSelection(range) {\n this.editors.modified.setSelection(range);\n }\n modifiedFocus() {\n this.editors.modified.focus();\n }\n getModifiedPosition() {\n var _a;\n return (_a = this.editors.modified.getPosition()) !== null && _a !== void 0 ? _a : undefined;\n }\n}\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/browser/widget/diffEditor/components/accessibleDiffViewer.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/browser/widget/diffEditor/components/diffEditorDecorations.js":
/*!****************************************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/browser/widget/diffEditor/components/diffEditorDecorations.js ***!
\****************************************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ DiffEditorDecorations: () => (/* binding */ DiffEditorDecorations)\n/* harmony export */ });\n/* harmony import */ var _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../../../base/common/lifecycle.js */ \"./node_modules/monaco-editor/esm/vs/base/common/lifecycle.js\");\n/* harmony import */ var _base_common_observable_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../../base/common/observable.js */ \"./node_modules/monaco-editor/esm/vs/base/common/observable.js\");\n/* harmony import */ var _features_movedBlocksLinesFeature_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../features/movedBlocksLinesFeature.js */ \"./node_modules/monaco-editor/esm/vs/editor/browser/widget/diffEditor/features/movedBlocksLinesFeature.js\");\n/* harmony import */ var _registrations_contribution_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../registrations.contribution.js */ \"./node_modules/monaco-editor/esm/vs/editor/browser/widget/diffEditor/registrations.contribution.js\");\n/* harmony import */ var _utils_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../utils.js */ \"./node_modules/monaco-editor/esm/vs/editor/browser/widget/diffEditor/utils.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n\n\n\n\nclass DiffEditorDecorations extends _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_0__.Disposable {\n constructor(_editors, _diffModel, _options, widget) {\n super();\n this._editors = _editors;\n this._diffModel = _diffModel;\n this._options = _options;\n this._decorations = (0,_base_common_observable_js__WEBPACK_IMPORTED_MODULE_1__.derived)(this, (reader) => {\n var _a;\n const diff = (_a = this._diffModel.read(reader)) === null || _a === void 0 ? void 0 : _a.diff.read(reader);\n if (!diff) {\n return null;\n }\n const movedTextToCompare = this._diffModel.read(reader).movedTextToCompare.read(reader);\n const renderIndicators = this._options.renderIndicators.read(reader);\n const showEmptyDecorations = this._options.showEmptyDecorations.read(reader);\n const originalDecorations = [];\n const modifiedDecorations = [];\n if (!movedTextToCompare) {\n for (const m of diff.mappings) {\n if (!m.lineRangeMapping.original.isEmpty) {\n originalDecorations.push({ range: m.lineRangeMapping.original.toInclusiveRange(), options: renderIndicators ? _registrations_contribution_js__WEBPACK_IMPORTED_MODULE_3__.diffLineDeleteDecorationBackgroundWithIndicator : _registrations_contribution_js__WEBPACK_IMPORTED_MODULE_3__.diffLineDeleteDecorationBackground });\n }\n if (!m.lineRangeMapping.modified.isEmpty) {\n modifiedDecorations.push({ range: m.lineRangeMapping.modified.toInclusiveRange(), options: renderIndicators ? _registrations_contribution_js__WEBPACK_IMPORTED_MODULE_3__.diffLineAddDecorationBackgroundWithIndicator : _registrations_contribution_js__WEBPACK_IMPORTED_MODULE_3__.diffLineAddDecorationBackground });\n }\n if (m.lineRangeMapping.modified.isEmpty || m.lineRangeMapping.original.isEmpty) {\n if (!m.lineRangeMapping.original.isEmpty) {\n originalDecorations.push({ range: m.lineRangeMapping.original.toInclusiveRange(), options: _registrations_contribution_js__WEBPACK_IMPORTED_MODULE_3__.diffWholeLineDeleteDecoration });\n }\n if (!m.lineRangeMapping.modified.isEmpty) {\n modifiedDecorations.push({ range: m.lineRangeMapping.modified.toInclusiveRange(), options: _registrations_contribution_js__WEBPACK_IMPORTED_MODULE_3__.diffWholeLineAddDecoration });\n }\n }\n else {\n for (const i of m.lineRangeMapping.innerChanges || []) {\n // Don't show empty markers outside the line range\n if (m.lineRangeMapping.original.contains(i.originalRange.startLineNumber)) {\n originalDecorations.push({ range: i.originalRange, options: (i.originalRange.isEmpty() && showEmptyDecorations) ? _registrations_contribution_js__WEBPACK_IMPORTED_MODULE_3__.diffDeleteDecorationEmpty : _registrations_contribution_js__WEBPACK_IMPORTED_MODULE_3__.diffDeleteDecoration });\n }\n if (m.lineRangeMapping.modified.contains(i.modifiedRange.startLineNumber)) {\n modifiedDecorations.push({ range: i.modifiedRange, options: (i.modifiedRange.isEmpty() && showEmptyDecorations) ? _registrations_contribution_js__WEBPACK_IMPORTED_MODULE_3__.diffAddDecorationEmpty : _registrations_contribution_js__WEBPACK_IMPORTED_MODULE_3__.diffAddDecoration });\n }\n }\n }\n }\n }\n if (movedTextToCompare) {\n for (const m of movedTextToCompare.changes) {\n const fullRangeOriginal = m.original.toInclusiveRange();\n if (fullRangeOriginal) {\n originalDecorations.push({ range: fullRangeOriginal, options: renderIndicators ? _registrations_contribution_js__WEBPACK_IMPORTED_MODULE_3__.diffLineDeleteDecorationBackgroundWithIndicator : _registrations_contribution_js__WEBPACK_IMPORTED_MODULE_3__.diffLineDeleteDecorationBackground });\n }\n const fullRangeModified = m.modified.toInclusiveRange();\n if (fullRangeModified) {\n modifiedDecorations.push({ range: fullRangeModified, options: renderIndicators ? _registrations_contribution_js__WEBPACK_IMPORTED_MODULE_3__.diffLineAddDecorationBackgroundWithIndicator : _registrations_contribution_js__WEBPACK_IMPORTED_MODULE_3__.diffLineAddDecorationBackground });\n }\n for (const i of m.innerChanges || []) {\n originalDecorations.push({ range: i.originalRange, options: _registrations_contribution_js__WEBPACK_IMPORTED_MODULE_3__.diffDeleteDecoration });\n modifiedDecorations.push({ range: i.modifiedRange, options: _registrations_contribution_js__WEBPACK_IMPORTED_MODULE_3__.diffAddDecoration });\n }\n }\n }\n const activeMovedText = this._diffModel.read(reader).activeMovedText.read(reader);\n for (const m of diff.movedTexts) {\n originalDecorations.push({\n range: m.lineRangeMapping.original.toInclusiveRange(), options: {\n description: 'moved',\n blockClassName: 'movedOriginal' + (m === activeMovedText ? ' currentMove' : ''),\n blockPadding: [_features_movedBlocksLinesFeature_js__WEBPACK_IMPORTED_MODULE_2__.MovedBlocksLinesFeature.movedCodeBlockPadding, 0, _features_movedBlocksLinesFeature_js__WEBPACK_IMPORTED_MODULE_2__.MovedBlocksLinesFeature.movedCodeBlockPadding, _features_movedBlocksLinesFeature_js__WEBPACK_IMPORTED_MODULE_2__.MovedBlocksLinesFeature.movedCodeBlockPadding],\n }\n });\n modifiedDecorations.push({\n range: m.lineRangeMapping.modified.toInclusiveRange(), options: {\n description: 'moved',\n blockClassName: 'movedModified' + (m === activeMovedText ? ' currentMove' : ''),\n blockPadding: [4, 0, 4, 4],\n }\n });\n }\n return { originalDecorations, modifiedDecorations };\n });\n this._register((0,_utils_js__WEBPACK_IMPORTED_MODULE_4__.applyObservableDecorations)(this._editors.original, this._decorations.map(d => (d === null || d === void 0 ? void 0 : d.originalDecorations) || [])));\n this._register((0,_utils_js__WEBPACK_IMPORTED_MODULE_4__.applyObservableDecorations)(this._editors.modified, this._decorations.map(d => (d === null || d === void 0 ? void 0 : d.modifiedDecorations) || [])));\n }\n}\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/browser/widget/diffEditor/components/diffEditorDecorations.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/browser/widget/diffEditor/components/diffEditorEditors.js":
/*!************************************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/browser/widget/diffEditor/components/diffEditorEditors.js ***!
\************************************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ DiffEditorEditors: () => (/* binding */ DiffEditorEditors)\n/* harmony export */ });\n/* harmony import */ var _base_common_event_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../../../base/common/event.js */ \"./node_modules/monaco-editor/esm/vs/base/common/event.js\");\n/* harmony import */ var _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../../base/common/lifecycle.js */ \"./node_modules/monaco-editor/esm/vs/base/common/lifecycle.js\");\n/* harmony import */ var _base_common_observable_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../../../base/common/observable.js */ \"./node_modules/monaco-editor/esm/vs/base/common/observable.js\");\n/* harmony import */ var _features_overviewRulerFeature_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../features/overviewRulerFeature.js */ \"./node_modules/monaco-editor/esm/vs/editor/browser/widget/diffEditor/features/overviewRulerFeature.js\");\n/* harmony import */ var _common_config_editorOptions_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../../../common/config/editorOptions.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/config/editorOptions.js\");\n/* harmony import */ var _nls_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../../../../../nls.js */ \"./node_modules/monaco-editor/esm/vs/nls.js\");\n/* harmony import */ var _platform_instantiation_common_instantiation_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../../../../../platform/instantiation/common/instantiation.js */ \"./node_modules/monaco-editor/esm/vs/platform/instantiation/common/instantiation.js\");\n/* harmony import */ var _platform_keybinding_common_keybinding_js__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ../../../../../platform/keybinding/common/keybinding.js */ \"./node_modules/monaco-editor/esm/vs/platform/keybinding/common/keybinding.js\");\n/* harmony import */ var _common_core_position_js__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ../../../../common/core/position.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/core/position.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\nvar __decorate = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\n return c > 3 && r && Object.defineProperty(target, key, r), r;\n};\nvar __param = (undefined && undefined.__param) || function (paramIndex, decorator) {\n return function (target, key) { decorator(target, key, paramIndex); }\n};\n\n\n\n\n\n\n\n\n\nlet DiffEditorEditors = class DiffEditorEditors extends _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_1__.Disposable {\n get onDidContentSizeChange() { return this._onDidContentSizeChange.event; }\n constructor(originalEditorElement, modifiedEditorElement, _options, codeEditorWidgetOptions, _createInnerEditor, _instantiationService, _keybindingService) {\n super();\n this.originalEditorElement = originalEditorElement;\n this.modifiedEditorElement = modifiedEditorElement;\n this._options = _options;\n this._createInnerEditor = _createInnerEditor;\n this._instantiationService = _instantiationService;\n this._keybindingService = _keybindingService;\n this._onDidContentSizeChange = this._register(new _base_common_event_js__WEBPACK_IMPORTED_MODULE_0__.Emitter());\n this.original = this._register(this._createLeftHandSideEditor(_options.editorOptions.get(), codeEditorWidgetOptions.originalEditor || {}));\n this.modified = this._register(this._createRightHandSideEditor(_options.editorOptions.get(), codeEditorWidgetOptions.modifiedEditor || {}));\n this.modifiedModel = (0,_base_common_observable_js__WEBPACK_IMPORTED_MODULE_2__.observableFromEvent)(this.modified.onDidChangeModel, () => /** @description modified.model */ this.modified.getModel());\n this.modifiedScrollTop = (0,_base_common_observable_js__WEBPACK_IMPORTED_MODULE_2__.observableFromEvent)(this.modified.onDidScrollChange, () => /** @description modified.getScrollTop */ this.modified.getScrollTop());\n this.modifiedScrollHeight = (0,_base_common_observable_js__WEBPACK_IMPORTED_MODULE_2__.observableFromEvent)(this.modified.onDidScrollChange, () => /** @description modified.getScrollHeight */ this.modified.getScrollHeight());\n this.modifiedSelections = (0,_base_common_observable_js__WEBPACK_IMPORTED_MODULE_2__.observableFromEvent)(this.modified.onDidChangeCursorSelection, () => { var _a; return (_a = this.modified.getSelections()) !== null && _a !== void 0 ? _a : []; });\n this.modifiedCursor = (0,_base_common_observable_js__WEBPACK_IMPORTED_MODULE_2__.derivedOpts)({ owner: this, equalityComparer: _common_core_position_js__WEBPACK_IMPORTED_MODULE_8__.Position.equals }, reader => { var _a, _b; return (_b = (_a = this.modifiedSelections.read(reader)[0]) === null || _a === void 0 ? void 0 : _a.getPosition()) !== null && _b !== void 0 ? _b : new _common_core_position_js__WEBPACK_IMPORTED_MODULE_8__.Position(1, 1); });\n this.originalCursor = (0,_base_common_observable_js__WEBPACK_IMPORTED_MODULE_2__.observableFromEvent)(this.original.onDidChangeCursorPosition, () => { var _a; return (_a = this.original.getPosition()) !== null && _a !== void 0 ? _a : new _common_core_position_js__WEBPACK_IMPORTED_MODULE_8__.Position(1, 1); });\n this._register((0,_base_common_observable_js__WEBPACK_IMPORTED_MODULE_2__.autorunHandleChanges)({\n createEmptyChangeSummary: () => ({}),\n handleChange: (ctx, changeSummary) => {\n if (ctx.didChange(_options.editorOptions)) {\n Object.assign(changeSummary, ctx.change.changedOptions);\n }\n return true;\n }\n }, (reader, changeSummary) => {\n /** @description update editor options */\n _options.editorOptions.read(reader);\n this._options.renderSideBySide.read(reader);\n this.modified.updateOptions(this._adjustOptionsForRightHandSide(reader, changeSummary));\n this.original.updateOptions(this._adjustOptionsForLeftHandSide(reader, changeSummary));\n }));\n }\n _createLeftHandSideEditor(options, codeEditorWidgetOptions) {\n const leftHandSideOptions = this._adjustOptionsForLeftHandSide(undefined, options);\n const editor = this._constructInnerEditor(this._instantiationService, this.originalEditorElement, leftHandSideOptions, codeEditorWidgetOptions);\n editor.setContextValue('isInDiffLeftEditor', true);\n return editor;\n }\n _createRightHandSideEditor(options, codeEditorWidgetOptions) {\n const rightHandSideOptions = this._adjustOptionsForRightHandSide(undefined, options);\n const editor = this._constructInnerEditor(this._instantiationService, this.modifiedEditorElement, rightHandSideOptions, codeEditorWidgetOptions);\n editor.setContextValue('isInDiffRightEditor', true);\n return editor;\n }\n _constructInnerEditor(instantiationService, container, options, editorWidgetOptions) {\n const editor = this._createInnerEditor(instantiationService, container, options, editorWidgetOptions);\n this._register(editor.onDidContentSizeChange(e => {\n const width = this.original.getContentWidth() + this.modified.getContentWidth() + _features_overviewRulerFeature_js__WEBPACK_IMPORTED_MODULE_3__.OverviewRulerFeature.ENTIRE_DIFF_OVERVIEW_WIDTH;\n const height = Math.max(this.modified.getContentHeight(), this.original.getContentHeight());\n this._onDidContentSizeChange.fire({\n contentHeight: height,\n contentWidth: width,\n contentHeightChanged: e.contentHeightChanged,\n contentWidthChanged: e.contentWidthChanged\n });\n }));\n return editor;\n }\n _adjustOptionsForLeftHandSide(_reader, changedOptions) {\n const result = this._adjustOptionsForSubEditor(changedOptions);\n if (!this._options.renderSideBySide.get()) {\n // never wrap hidden editor\n result.wordWrapOverride1 = 'off';\n result.wordWrapOverride2 = 'off';\n result.stickyScroll = { enabled: false };\n // Disable unicode highlighting for the original side in inline mode, as they are not shown anyway.\n result.unicodeHighlight = { nonBasicASCII: false, ambiguousCharacters: false, invisibleCharacters: false };\n }\n else {\n result.unicodeHighlight = this._options.editorOptions.get().unicodeHighlight || {};\n result.wordWrapOverride1 = this._options.diffWordWrap.get();\n }\n result.glyphMargin = this._options.renderSideBySide.get();\n if (changedOptions.originalAriaLabel) {\n result.ariaLabel = changedOptions.originalAriaLabel;\n }\n result.ariaLabel = this._updateAriaLabel(result.ariaLabel);\n result.readOnly = !this._options.originalEditable.get();\n result.dropIntoEditor = { enabled: !result.readOnly };\n result.extraEditorClassName = 'original-in-monaco-diff-editor';\n return result;\n }\n _adjustOptionsForRightHandSide(reader, changedOptions) {\n const result = this._adjustOptionsForSubEditor(changedOptions);\n if (changedOptions.modifiedAriaLabel) {\n result.ariaLabel = changedOptions.modifiedAriaLabel;\n }\n result.ariaLabel = this._updateAriaLabel(result.ariaLabel);\n result.wordWrapOverride1 = this._options.diffWordWrap.get();\n result.revealHorizontalRightPadding = _common_config_editorOptions_js__WEBPACK_IMPORTED_MODULE_4__.EditorOptions.revealHorizontalRightPadding.defaultValue + _features_overviewRulerFeature_js__WEBPACK_IMPORTED_MODULE_3__.OverviewRulerFeature.ENTIRE_DIFF_OVERVIEW_WIDTH;\n result.scrollbar.verticalHasArrows = false;\n result.extraEditorClassName = 'modified-in-monaco-diff-editor';\n return result;\n }\n _adjustOptionsForSubEditor(options) {\n const clonedOptions = {\n ...options,\n dimension: {\n height: 0,\n width: 0\n },\n };\n clonedOptions.inDiffEditor = true;\n clonedOptions.automaticLayout = false;\n // Clone scrollbar options before changing them\n clonedOptions.scrollbar = { ...(clonedOptions.scrollbar || {}) };\n clonedOptions.folding = false;\n clonedOptions.codeLens = this._options.diffCodeLens.get();\n clonedOptions.fixedOverflowWidgets = true;\n // Clone minimap options before changing them\n clonedOptions.minimap = { ...(clonedOptions.minimap || {}) };\n clonedOptions.minimap.enabled = false;\n if (this._options.hideUnchangedRegions.get()) {\n clonedOptions.stickyScroll = { enabled: false };\n }\n else {\n clonedOptions.stickyScroll = this._options.editorOptions.get().stickyScroll;\n }\n return clonedOptions;\n }\n _updateAriaLabel(ariaLabel) {\n var _a;\n if (!ariaLabel) {\n ariaLabel = '';\n }\n const ariaNavigationTip = (0,_nls_js__WEBPACK_IMPORTED_MODULE_5__.localize)('diff-aria-navigation-tip', ' use {0} to open the accessibility help.', (_a = this._keybindingService.lookupKeybinding('editor.action.accessibilityHelp')) === null || _a === void 0 ? void 0 : _a.getAriaLabel());\n if (this._options.accessibilityVerbose.get()) {\n return ariaLabel + ariaNavigationTip;\n }\n else if (ariaLabel) {\n return ariaLabel.replaceAll(ariaNavigationTip, '');\n }\n return '';\n }\n};\nDiffEditorEditors = __decorate([\n __param(5, _platform_instantiation_common_instantiation_js__WEBPACK_IMPORTED_MODULE_6__.IInstantiationService),\n __param(6, _platform_keybinding_common_keybinding_js__WEBPACK_IMPORTED_MODULE_7__.IKeybindingService)\n], DiffEditorEditors);\n\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/browser/widget/diffEditor/components/diffEditorEditors.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/browser/widget/diffEditor/components/diffEditorSash.js":
/*!*********************************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/browser/widget/diffEditor/components/diffEditorSash.js ***!
\*********************************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ DiffEditorSash: () => (/* binding */ DiffEditorSash)\n/* harmony export */ });\n/* harmony import */ var _base_browser_ui_sash_sash_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../../../base/browser/ui/sash/sash.js */ \"./node_modules/monaco-editor/esm/vs/base/browser/ui/sash/sash.js\");\n/* harmony import */ var _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../../base/common/lifecycle.js */ \"./node_modules/monaco-editor/esm/vs/base/common/lifecycle.js\");\n/* harmony import */ var _base_common_observable_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../../../base/common/observable.js */ \"./node_modules/monaco-editor/esm/vs/base/common/observable.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n\n\nclass DiffEditorSash extends _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_1__.Disposable {\n constructor(_options, _domNode, _dimensions, _sashes) {\n super();\n this._options = _options;\n this._domNode = _domNode;\n this._dimensions = _dimensions;\n this._sashes = _sashes;\n this._sashRatio = (0,_base_common_observable_js__WEBPACK_IMPORTED_MODULE_2__.observableValue)(this, undefined);\n this.sashLeft = (0,_base_common_observable_js__WEBPACK_IMPORTED_MODULE_2__.derived)(this, reader => {\n var _a;\n const ratio = (_a = this._sashRatio.read(reader)) !== null && _a !== void 0 ? _a : this._options.splitViewDefaultRatio.read(reader);\n return this._computeSashLeft(ratio, reader);\n });\n this._sash = this._register(new _base_browser_ui_sash_sash_js__WEBPACK_IMPORTED_MODULE_0__.Sash(this._domNode, {\n getVerticalSashTop: (_sash) => 0,\n getVerticalSashLeft: (_sash) => this.sashLeft.get(),\n getVerticalSashHeight: (_sash) => this._dimensions.height.get(),\n }, { orientation: 0 /* Orientation.VERTICAL */ }));\n this._startSashPosition = undefined;\n this._register(this._sash.onDidStart(() => {\n this._startSashPosition = this.sashLeft.get();\n }));\n this._register(this._sash.onDidChange((e) => {\n const contentWidth = this._dimensions.width.get();\n const sashPosition = this._computeSashLeft((this._startSashPosition + (e.currentX - e.startX)) / contentWidth, undefined);\n this._sashRatio.set(sashPosition / contentWidth, undefined);\n }));\n this._register(this._sash.onDidEnd(() => this._sash.layout()));\n this._register(this._sash.onDidReset(() => this._sashRatio.set(undefined, undefined)));\n this._register((0,_base_common_observable_js__WEBPACK_IMPORTED_MODULE_2__.autorun)(reader => {\n const sashes = this._sashes.read(reader);\n if (sashes) {\n this._sash.orthogonalEndSash = sashes.bottom;\n }\n }));\n this._register((0,_base_common_observable_js__WEBPACK_IMPORTED_MODULE_2__.autorun)(reader => {\n /** @description DiffEditorSash.layoutSash */\n const enabled = this._options.enableSplitViewResizing.read(reader);\n this._sash.state = enabled ? 3 /* SashState.Enabled */ : 0 /* SashState.Disabled */;\n this.sashLeft.read(reader);\n this._dimensions.height.read(reader);\n this._sash.layout();\n }));\n }\n /** @pure */\n _computeSashLeft(desiredRatio, reader) {\n const contentWidth = this._dimensions.width.read(reader);\n const midPoint = Math.floor(this._options.splitViewDefaultRatio.read(reader) * contentWidth);\n const sashLeft = this._options.enableSplitViewResizing.read(reader) ? Math.floor(desiredRatio * contentWidth) : midPoint;\n const MINIMUM_EDITOR_WIDTH = 100;\n if (contentWidth <= MINIMUM_EDITOR_WIDTH * 2) {\n return midPoint;\n }\n if (sashLeft < MINIMUM_EDITOR_WIDTH) {\n return MINIMUM_EDITOR_WIDTH;\n }\n if (sashLeft > contentWidth - MINIMUM_EDITOR_WIDTH) {\n return contentWidth - MINIMUM_EDITOR_WIDTH;\n }\n return sashLeft;\n }\n}\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/browser/widget/diffEditor/components/diffEditorSash.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/browser/widget/diffEditor/components/diffEditorViewZones/diffEditorViewZones.js":
/*!**********************************************************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/browser/widget/diffEditor/components/diffEditorViewZones/diffEditorViewZones.js ***!
\**********************************************************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ DiffEditorViewZones: () => (/* binding */ DiffEditorViewZones)\n/* harmony export */ });\n/* harmony import */ var _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../../../../base/browser/dom.js */ \"./node_modules/monaco-editor/esm/vs/base/browser/dom.js\");\n/* harmony import */ var _base_common_arrays_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../../../base/common/arrays.js */ \"./node_modules/monaco-editor/esm/vs/base/common/arrays.js\");\n/* harmony import */ var _base_common_async_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../../../../base/common/async.js */ \"./node_modules/monaco-editor/esm/vs/base/common/async.js\");\n/* harmony import */ var _base_common_codicons_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../../../../../base/common/codicons.js */ \"./node_modules/monaco-editor/esm/vs/base/common/codicons.js\");\n/* harmony import */ var _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../../../../../base/common/lifecycle.js */ \"./node_modules/monaco-editor/esm/vs/base/common/lifecycle.js\");\n/* harmony import */ var _base_common_observable_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../../../../../../base/common/observable.js */ \"./node_modules/monaco-editor/esm/vs/base/common/observable.js\");\n/* harmony import */ var _base_common_themables_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../../../../../../base/common/themables.js */ \"./node_modules/monaco-editor/esm/vs/base/common/themables.js\");\n/* harmony import */ var _base_common_types_js__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ../../../../../../base/common/types.js */ \"./node_modules/monaco-editor/esm/vs/base/common/types.js\");\n/* harmony import */ var _config_domFontInfo_js__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ../../../../config/domFontInfo.js */ \"./node_modules/monaco-editor/esm/vs/editor/browser/config/domFontInfo.js\");\n/* harmony import */ var _registrations_contribution_js__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ../../registrations.contribution.js */ \"./node_modules/monaco-editor/esm/vs/editor/browser/widget/diffEditor/registrations.contribution.js\");\n/* harmony import */ var _diffEditorViewModel_js__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! ../../diffEditorViewModel.js */ \"./node_modules/monaco-editor/esm/vs/editor/browser/widget/diffEditor/diffEditorViewModel.js\");\n/* harmony import */ var _inlineDiffDeletedCodeMargin_js__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(/*! ./inlineDiffDeletedCodeMargin.js */ \"./node_modules/monaco-editor/esm/vs/editor/browser/widget/diffEditor/components/diffEditorViewZones/inlineDiffDeletedCodeMargin.js\");\n/* harmony import */ var _renderLines_js__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(/*! ./renderLines.js */ \"./node_modules/monaco-editor/esm/vs/editor/browser/widget/diffEditor/components/diffEditorViewZones/renderLines.js\");\n/* harmony import */ var _utils_js__WEBPACK_IMPORTED_MODULE_13__ = __webpack_require__(/*! ../../utils.js */ \"./node_modules/monaco-editor/esm/vs/editor/browser/widget/diffEditor/utils.js\");\n/* harmony import */ var _common_core_lineRange_js__WEBPACK_IMPORTED_MODULE_14__ = __webpack_require__(/*! ../../../../../common/core/lineRange.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/core/lineRange.js\");\n/* harmony import */ var _common_core_position_js__WEBPACK_IMPORTED_MODULE_15__ = __webpack_require__(/*! ../../../../../common/core/position.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/core/position.js\");\n/* harmony import */ var _common_viewModel_js__WEBPACK_IMPORTED_MODULE_16__ = __webpack_require__(/*! ../../../../../common/viewModel.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/viewModel.js\");\n/* harmony import */ var _platform_clipboard_common_clipboardService_js__WEBPACK_IMPORTED_MODULE_17__ = __webpack_require__(/*! ../../../../../../platform/clipboard/common/clipboardService.js */ \"./node_modules/monaco-editor/esm/vs/platform/clipboard/common/clipboardService.js\");\n/* harmony import */ var _platform_contextview_browser_contextView_js__WEBPACK_IMPORTED_MODULE_18__ = __webpack_require__(/*! ../../../../../../platform/contextview/browser/contextView.js */ \"./node_modules/monaco-editor/esm/vs/platform/contextview/browser/contextView.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\nvar __decorate = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\n return c > 3 && r && Object.defineProperty(target, key, r), r;\n};\nvar __param = (undefined && undefined.__param) || function (paramIndex, decorator) {\n return function (target, key) { decorator(target, key, paramIndex); }\n};\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n/**\n * Ensures both editors have the same height by aligning unchanged lines.\n * In inline view mode, inserts viewzones to show deleted code from the original text model in the modified code editor.\n * Synchronizes scrolling.\n *\n * Make sure to add the view zones!\n */\nlet DiffEditorViewZones = class DiffEditorViewZones extends _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_4__.Disposable {\n constructor(_targetWindow, _editors, _diffModel, _options, _diffEditorWidget, _canIgnoreViewZoneUpdateEvent, _origViewZonesToIgnore, _modViewZonesToIgnore, _clipboardService, _contextMenuService) {\n super();\n this._targetWindow = _targetWindow;\n this._editors = _editors;\n this._diffModel = _diffModel;\n this._options = _options;\n this._diffEditorWidget = _diffEditorWidget;\n this._canIgnoreViewZoneUpdateEvent = _canIgnoreViewZoneUpdateEvent;\n this._origViewZonesToIgnore = _origViewZonesToIgnore;\n this._modViewZonesToIgnore = _modViewZonesToIgnore;\n this._clipboardService = _clipboardService;\n this._contextMenuService = _contextMenuService;\n this._originalTopPadding = (0,_base_common_observable_js__WEBPACK_IMPORTED_MODULE_5__.observableValue)(this, 0);\n this._originalScrollOffset = (0,_base_common_observable_js__WEBPACK_IMPORTED_MODULE_5__.observableValue)(this, 0);\n this._originalScrollOffsetAnimated = (0,_utils_js__WEBPACK_IMPORTED_MODULE_13__.animatedObservable)(this._targetWindow, this._originalScrollOffset, this._store);\n this._modifiedTopPadding = (0,_base_common_observable_js__WEBPACK_IMPORTED_MODULE_5__.observableValue)(this, 0);\n this._modifiedScrollOffset = (0,_base_common_observable_js__WEBPACK_IMPORTED_MODULE_5__.observableValue)(this, 0);\n this._modifiedScrollOffsetAnimated = (0,_utils_js__WEBPACK_IMPORTED_MODULE_13__.animatedObservable)(this._targetWindow, this._modifiedScrollOffset, this._store);\n const state = (0,_base_common_observable_js__WEBPACK_IMPORTED_MODULE_5__.observableValue)('invalidateAlignmentsState', 0);\n const updateImmediately = this._register(new _base_common_async_js__WEBPACK_IMPORTED_MODULE_2__.RunOnceScheduler(() => {\n state.set(state.get() + 1, undefined);\n }, 0));\n this._register(this._editors.original.onDidChangeViewZones((_args) => { if (!this._canIgnoreViewZoneUpdateEvent()) {\n updateImmediately.schedule();\n } }));\n this._register(this._editors.modified.onDidChangeViewZones((_args) => { if (!this._canIgnoreViewZoneUpdateEvent()) {\n updateImmediately.schedule();\n } }));\n this._register(this._editors.original.onDidChangeConfiguration((args) => {\n if (args.hasChanged(145 /* EditorOption.wrappingInfo */) || args.hasChanged(67 /* EditorOption.lineHeight */)) {\n updateImmediately.schedule();\n }\n }));\n this._register(this._editors.modified.onDidChangeConfiguration((args) => {\n if (args.hasChanged(145 /* EditorOption.wrappingInfo */) || args.hasChanged(67 /* EditorOption.lineHeight */)) {\n updateImmediately.schedule();\n }\n }));\n const originalModelTokenizationCompleted = this._diffModel.map(m => m ? (0,_base_common_observable_js__WEBPACK_IMPORTED_MODULE_5__.observableFromEvent)(m.model.original.onDidChangeTokens, () => m.model.original.tokenization.backgroundTokenizationState === 2 /* BackgroundTokenizationState.Completed */) : undefined).map((m, reader) => m === null || m === void 0 ? void 0 : m.read(reader));\n const alignments = (0,_base_common_observable_js__WEBPACK_IMPORTED_MODULE_5__.derived)((reader) => {\n /** @description alignments */\n const diffModel = this._diffModel.read(reader);\n const diff = diffModel === null || diffModel === void 0 ? void 0 : diffModel.diff.read(reader);\n if (!diffModel || !diff) {\n return null;\n }\n state.read(reader);\n const renderSideBySide = this._options.renderSideBySide.read(reader);\n const innerHunkAlignment = renderSideBySide;\n return computeRangeAlignment(this._editors.original, this._editors.modified, diff.mappings, this._origViewZonesToIgnore, this._modViewZonesToIgnore, innerHunkAlignment);\n });\n const alignmentsSyncedMovedText = (0,_base_common_observable_js__WEBPACK_IMPORTED_MODULE_5__.derived)((reader) => {\n var _a;\n /** @description alignmentsSyncedMovedText */\n const syncedMovedText = (_a = this._diffModel.read(reader)) === null || _a === void 0 ? void 0 : _a.movedTextToCompare.read(reader);\n if (!syncedMovedText) {\n return null;\n }\n state.read(reader);\n const mappings = syncedMovedText.changes.map(c => new _diffEditorViewModel_js__WEBPACK_IMPORTED_MODULE_10__.DiffMapping(c));\n // TODO dont include alignments outside syncedMovedText\n return computeRangeAlignment(this._editors.original, this._editors.modified, mappings, this._origViewZonesToIgnore, this._modViewZonesToIgnore, true);\n });\n function createFakeLinesDiv() {\n const r = document.createElement('div');\n r.className = 'diagonal-fill';\n return r;\n }\n const alignmentViewZonesDisposables = this._register(new _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_4__.DisposableStore());\n this.viewZones = (0,_base_common_observable_js__WEBPACK_IMPORTED_MODULE_5__.derivedWithStore)(this, (reader, store) => {\n var _a, _b, _c, _d, _e, _f, _g, _h;\n alignmentViewZonesDisposables.clear();\n const alignmentsVal = alignments.read(reader) || [];\n const origViewZones = [];\n const modViewZones = [];\n const modifiedTopPaddingVal = this._modifiedTopPadding.read(reader);\n if (modifiedTopPaddingVal > 0) {\n modViewZones.push({\n afterLineNumber: 0,\n domNode: document.createElement('div'),\n heightInPx: modifiedTopPaddingVal,\n showInHiddenAreas: true,\n suppressMouseDown: true,\n });\n }\n const originalTopPaddingVal = this._originalTopPadding.read(reader);\n if (originalTopPaddingVal > 0) {\n origViewZones.push({\n afterLineNumber: 0,\n domNode: document.createElement('div'),\n heightInPx: originalTopPaddingVal,\n showInHiddenAreas: true,\n suppressMouseDown: true,\n });\n }\n const renderSideBySide = this._options.renderSideBySide.read(reader);\n const deletedCodeLineBreaksComputer = !renderSideBySide ? (_a = this._editors.modified._getViewModel()) === null || _a === void 0 ? void 0 : _a.createLineBreaksComputer() : undefined;\n if (deletedCodeLineBreaksComputer) {\n const originalModel = this._editors.original.getModel();\n for (const a of alignmentsVal) {\n if (a.diff) {\n for (let i = a.originalRange.startLineNumber; i < a.originalRange.endLineNumberExclusive; i++) {\n // `i` can be out of bound when the diff has not been updated yet.\n // In this case, we do an early return.\n // TODO@hediet: Fix this by applying the edit directly to the diff model, so that the diff is always valid.\n if (i > originalModel.getLineCount()) {\n return { orig: origViewZones, mod: modViewZones };\n }\n deletedCodeLineBreaksComputer === null || deletedCodeLineBreaksComputer === void 0 ? void 0 : deletedCodeLineBreaksComputer.addRequest(originalModel.getLineContent(i), null, null);\n }\n }\n }\n }\n const lineBreakData = (_b = deletedCodeLineBreaksComputer === null || deletedCodeLineBreaksComputer === void 0 ? void 0 : deletedCodeLineBreaksComputer.finalize()) !== null && _b !== void 0 ? _b : [];\n let lineBreakDataIdx = 0;\n const modLineHeight = this._editors.modified.getOption(67 /* EditorOption.lineHeight */);\n const syncedMovedText = (_c = this._diffModel.read(reader)) === null || _c === void 0 ? void 0 : _c.movedTextToCompare.read(reader);\n const mightContainNonBasicASCII = (_e = (_d = this._editors.original.getModel()) === null || _d === void 0 ? void 0 : _d.mightContainNonBasicASCII()) !== null && _e !== void 0 ? _e : false;\n const mightContainRTL = (_g = (_f = this._editors.original.getModel()) === null || _f === void 0 ? void 0 : _f.mightContainRTL()) !== null && _g !== void 0 ? _g : false;\n const renderOptions = _renderLines_js__WEBPACK_IMPORTED_MODULE_12__.RenderOptions.fromEditor(this._editors.modified);\n for (const a of alignmentsVal) {\n if (a.diff && !renderSideBySide) {\n if (!a.originalRange.isEmpty) {\n originalModelTokenizationCompleted.read(reader); // Update view-zones once tokenization completes\n const deletedCodeDomNode = document.createElement('div');\n deletedCodeDomNode.classList.add('view-lines', 'line-delete', 'monaco-mouse-cursor-text');\n const originalModel = this._editors.original.getModel();\n // `a.originalRange` can be out of bound when the diff has not been updated yet.\n // In this case, we do an early return.\n // TODO@hediet: Fix this by applying the edit directly to the diff model, so that the diff is always valid.\n if (a.originalRange.endLineNumberExclusive - 1 > originalModel.getLineCount()) {\n return { orig: origViewZones, mod: modViewZones };\n }\n const source = new _renderLines_js__WEBPACK_IMPORTED_MODULE_12__.LineSource(a.originalRange.mapToLineArray(l => originalModel.tokenization.getLineTokens(l)), a.originalRange.mapToLineArray(_ => lineBreakData[lineBreakDataIdx++]), mightContainNonBasicASCII, mightContainRTL);\n const decorations = [];\n for (const i of a.diff.innerChanges || []) {\n decorations.push(new _common_viewModel_js__WEBPACK_IMPORTED_MODULE_16__.InlineDecoration(i.originalRange.delta(-(a.diff.original.startLineNumber - 1)), _registrations_contribution_js__WEBPACK_IMPORTED_MODULE_9__.diffDeleteDecoration.className, 0 /* InlineDecorationType.Regular */));\n }\n const result = (0,_renderLines_js__WEBPACK_IMPORTED_MODULE_12__.renderLines)(source, renderOptions, decorations, deletedCodeDomNode);\n const marginDomNode = document.createElement('div');\n marginDomNode.className = 'inline-deleted-margin-view-zone';\n (0,_config_domFontInfo_js__WEBPACK_IMPORTED_MODULE_8__.applyFontInfo)(marginDomNode, renderOptions.fontInfo);\n if (this._options.renderIndicators.read(reader)) {\n for (let i = 0; i < result.heightInLines; i++) {\n const marginElement = document.createElement('div');\n marginElement.className = `delete-sign ${_base_common_themables_js__WEBPACK_IMPORTED_MODULE_6__.ThemeIcon.asClassName(_registrations_contribution_js__WEBPACK_IMPORTED_MODULE_9__.diffRemoveIcon)}`;\n marginElement.setAttribute('style', `position:absolute;top:${i * modLineHeight}px;width:${renderOptions.lineDecorationsWidth}px;height:${modLineHeight}px;right:0;`);\n marginDomNode.appendChild(marginElement);\n }\n }\n let zoneId = undefined;\n alignmentViewZonesDisposables.add(new _inlineDiffDeletedCodeMargin_js__WEBPACK_IMPORTED_MODULE_11__.InlineDiffDeletedCodeMargin(() => (0,_base_common_types_js__WEBPACK_IMPORTED_MODULE_7__.assertIsDefined)(zoneId), marginDomNode, this._editors.modified, a.diff, this._diffEditorWidget, result.viewLineCounts, this._editors.original.getModel(), this._contextMenuService, this._clipboardService));\n for (let i = 0; i < result.viewLineCounts.length; i++) {\n const count = result.viewLineCounts[i];\n // Account for wrapped lines in the (collapsed) original editor (which doesn't wrap lines).\n if (count > 1) {\n origViewZones.push({\n afterLineNumber: a.originalRange.startLineNumber + i,\n domNode: createFakeLinesDiv(),\n heightInPx: (count - 1) * modLineHeight,\n showInHiddenAreas: true,\n suppressMouseDown: true,\n });\n }\n }\n modViewZones.push({\n afterLineNumber: a.modifiedRange.startLineNumber - 1,\n domNode: deletedCodeDomNode,\n heightInPx: result.heightInLines * modLineHeight,\n minWidthInPx: result.minWidthInPx,\n marginDomNode,\n setZoneId(id) { zoneId = id; },\n showInHiddenAreas: true,\n suppressMouseDown: true,\n });\n }\n const marginDomNode = document.createElement('div');\n marginDomNode.className = 'gutter-delete';\n origViewZones.push({\n afterLineNumber: a.originalRange.endLineNumberExclusive - 1,\n domNode: createFakeLinesDiv(),\n heightInPx: a.modifiedHeightInPx,\n marginDomNode,\n showInHiddenAreas: true,\n suppressMouseDown: true,\n });\n }\n else {\n const delta = a.modifiedHeightInPx - a.originalHeightInPx;\n if (delta > 0) {\n if (syncedMovedText === null || syncedMovedText === void 0 ? void 0 : syncedMovedText.lineRangeMapping.original.delta(-1).deltaLength(2).contains(a.originalRange.endLineNumberExclusive - 1)) {\n continue;\n }\n origViewZones.push({\n afterLineNumber: a.originalRange.endLineNumberExclusive - 1,\n domNode: createFakeLinesDiv(),\n heightInPx: delta,\n showInHiddenAreas: true,\n suppressMouseDown: true,\n });\n }\n else {\n if (syncedMovedText === null || syncedMovedText === void 0 ? void 0 : syncedMovedText.lineRangeMapping.modified.delta(-1).deltaLength(2).contains(a.modifiedRange.endLineNumberExclusive - 1)) {\n continue;\n }\n function createViewZoneMarginArrow() {\n const arrow = document.createElement('div');\n arrow.className = 'arrow-revert-change ' + _base_common_themables_js__WEBPACK_IMPORTED_MODULE_6__.ThemeIcon.asClassName(_base_common_codicons_js__WEBPACK_IMPORTED_MODULE_3__.Codicon.arrowRight);\n store.add((0,_base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.addDisposableListener)(arrow, 'mousedown', e => e.stopPropagation()));\n store.add((0,_base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.addDisposableListener)(arrow, 'click', e => {\n e.stopPropagation();\n _diffEditorWidget.revert(a.diff);\n }));\n return (0,_base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.$)('div', {}, arrow);\n }\n let marginDomNode = undefined;\n if (a.diff && a.diff.modified.isEmpty && this._options.shouldRenderRevertArrows.read(reader)) {\n marginDomNode = createViewZoneMarginArrow();\n }\n modViewZones.push({\n afterLineNumber: a.modifiedRange.endLineNumberExclusive - 1,\n domNode: createFakeLinesDiv(),\n heightInPx: -delta,\n marginDomNode,\n showInHiddenAreas: true,\n suppressMouseDown: true,\n });\n }\n }\n }\n for (const a of (_h = alignmentsSyncedMovedText.read(reader)) !== null && _h !== void 0 ? _h : []) {\n if (!(syncedMovedText === null || syncedMovedText === void 0 ? void 0 : syncedMovedText.lineRangeMapping.original.intersect(a.originalRange))\n || !(syncedMovedText === null || syncedMovedText === void 0 ? void 0 : syncedMovedText.lineRangeMapping.modified.intersect(a.modifiedRange))) {\n // ignore unrelated alignments outside the synced moved text\n continue;\n }\n const delta = a.modifiedHeightInPx - a.originalHeightInPx;\n if (delta > 0) {\n origViewZones.push({\n afterLineNumber: a.originalRange.endLineNumberExclusive - 1,\n domNode: createFakeLinesDiv(),\n heightInPx: delta,\n showInHiddenAreas: true,\n suppressMouseDown: true,\n });\n }\n else {\n modViewZones.push({\n afterLineNumber: a.modifiedRange.endLineNumberExclusive - 1,\n domNode: createFakeLinesDiv(),\n heightInPx: -delta,\n showInHiddenAreas: true,\n suppressMouseDown: true,\n });\n }\n }\n return { orig: origViewZones, mod: modViewZones };\n });\n let ignoreChange = false;\n this._register(this._editors.original.onDidScrollChange(e => {\n if (e.scrollLeftChanged && !ignoreChange) {\n ignoreChange = true;\n this._editors.modified.setScrollLeft(e.scrollLeft);\n ignoreChange = false;\n }\n }));\n this._register(this._editors.modified.onDidScrollChange(e => {\n if (e.scrollLeftChanged && !ignoreChange) {\n ignoreChange = true;\n this._editors.original.setScrollLeft(e.scrollLeft);\n ignoreChange = false;\n }\n }));\n this._originalScrollTop = (0,_base_common_observable_js__WEBPACK_IMPORTED_MODULE_5__.observableFromEvent)(this._editors.original.onDidScrollChange, () => /** @description original.getScrollTop */ this._editors.original.getScrollTop());\n this._modifiedScrollTop = (0,_base_common_observable_js__WEBPACK_IMPORTED_MODULE_5__.observableFromEvent)(this._editors.modified.onDidScrollChange, () => /** @description modified.getScrollTop */ this._editors.modified.getScrollTop());\n // origExtraHeight + origOffset - origScrollTop = modExtraHeight + modOffset - modScrollTop\n // origScrollTop = origExtraHeight + origOffset - modExtraHeight - modOffset + modScrollTop\n // modScrollTop = modExtraHeight + modOffset - origExtraHeight - origOffset + origScrollTop\n // origOffset - modOffset = heightOfLines(1..Y) - heightOfLines(1..X)\n // origScrollTop >= 0, modScrollTop >= 0\n this._register((0,_base_common_observable_js__WEBPACK_IMPORTED_MODULE_5__.autorun)(reader => {\n /** @description update scroll modified */\n const newScrollTopModified = this._originalScrollTop.read(reader)\n - (this._originalScrollOffsetAnimated.get() - this._modifiedScrollOffsetAnimated.read(reader))\n - (this._originalTopPadding.get() - this._modifiedTopPadding.read(reader));\n if (newScrollTopModified !== this._editors.modified.getScrollTop()) {\n this._editors.modified.setScrollTop(newScrollTopModified, 1 /* ScrollType.Immediate */);\n }\n }));\n this._register((0,_base_common_observable_js__WEBPACK_IMPORTED_MODULE_5__.autorun)(reader => {\n /** @description update scroll original */\n const newScrollTopOriginal = this._modifiedScrollTop.read(reader)\n - (this._modifiedScrollOffsetAnimated.get() - this._originalScrollOffsetAnimated.read(reader))\n - (this._modifiedTopPadding.get() - this._originalTopPadding.read(reader));\n if (newScrollTopOriginal !== this._editors.original.getScrollTop()) {\n this._editors.original.setScrollTop(newScrollTopOriginal, 1 /* ScrollType.Immediate */);\n }\n }));\n this._register((0,_base_common_observable_js__WEBPACK_IMPORTED_MODULE_5__.autorun)(reader => {\n var _a;\n /** @description update editor top offsets */\n const m = (_a = this._diffModel.read(reader)) === null || _a === void 0 ? void 0 : _a.movedTextToCompare.read(reader);\n let deltaOrigToMod = 0;\n if (m) {\n const trueTopOriginal = this._editors.original.getTopForLineNumber(m.lineRangeMapping.original.startLineNumber, true) - this._originalTopPadding.get();\n const trueTopModified = this._editors.modified.getTopForLineNumber(m.lineRangeMapping.modified.startLineNumber, true) - this._modifiedTopPadding.get();\n deltaOrigToMod = trueTopModified - trueTopOriginal;\n }\n if (deltaOrigToMod > 0) {\n this._modifiedTopPadding.set(0, undefined);\n this._originalTopPadding.set(deltaOrigToMod, undefined);\n }\n else if (deltaOrigToMod < 0) {\n this._modifiedTopPadding.set(-deltaOrigToMod, undefined);\n this._originalTopPadding.set(0, undefined);\n }\n else {\n setTimeout(() => {\n this._modifiedTopPadding.set(0, undefined);\n this._originalTopPadding.set(0, undefined);\n }, 400);\n }\n if (this._editors.modified.hasTextFocus()) {\n this._originalScrollOffset.set(this._modifiedScrollOffset.get() - deltaOrigToMod, undefined, true);\n }\n else {\n this._modifiedScrollOffset.set(this._originalScrollOffset.get() + deltaOrigToMod, undefined, true);\n }\n }));\n }\n};\nDiffEditorViewZones = __decorate([\n __param(8, _platform_clipboard_common_clipboardService_js__WEBPACK_IMPORTED_MODULE_17__.IClipboardService),\n __param(9, _platform_contextview_browser_contextView_js__WEBPACK_IMPORTED_MODULE_18__.IContextMenuService)\n], DiffEditorViewZones);\n\nfunction computeRangeAlignment(originalEditor, modifiedEditor, diffs, originalEditorAlignmentViewZones, modifiedEditorAlignmentViewZones, innerHunkAlignment) {\n const originalLineHeightOverrides = new _base_common_arrays_js__WEBPACK_IMPORTED_MODULE_1__.ArrayQueue(getAdditionalLineHeights(originalEditor, originalEditorAlignmentViewZones));\n const modifiedLineHeightOverrides = new _base_common_arrays_js__WEBPACK_IMPORTED_MODULE_1__.ArrayQueue(getAdditionalLineHeights(modifiedEditor, modifiedEditorAlignmentViewZones));\n const origLineHeight = originalEditor.getOption(67 /* EditorOption.lineHeight */);\n const modLineHeight = modifiedEditor.getOption(67 /* EditorOption.lineHeight */);\n const result = [];\n let lastOriginalLineNumber = 0;\n let lastModifiedLineNumber = 0;\n function handleAlignmentsOutsideOfDiffs(untilOriginalLineNumberExclusive, untilModifiedLineNumberExclusive) {\n while (true) {\n let origNext = originalLineHeightOverrides.peek();\n let modNext = modifiedLineHeightOverrides.peek();\n if (origNext && origNext.lineNumber >= untilOriginalLineNumberExclusive) {\n origNext = undefined;\n }\n if (modNext && modNext.lineNumber >= untilModifiedLineNumberExclusive) {\n modNext = undefined;\n }\n if (!origNext && !modNext) {\n break;\n }\n const distOrig = origNext ? origNext.lineNumber - lastOriginalLineNumber : Number.MAX_VALUE;\n const distNext = modNext ? modNext.lineNumber - lastModifiedLineNumber : Number.MAX_VALUE;\n if (distOrig < distNext) {\n originalLineHeightOverrides.dequeue();\n modNext = {\n lineNumber: origNext.lineNumber - lastOriginalLineNumber + lastModifiedLineNumber,\n heightInPx: 0,\n };\n }\n else if (distOrig > distNext) {\n modifiedLineHeightOverrides.dequeue();\n origNext = {\n lineNumber: modNext.lineNumber - lastModifiedLineNumber + lastOriginalLineNumber,\n heightInPx: 0,\n };\n }\n else {\n originalLineHeightOverrides.dequeue();\n modifiedLineHeightOverrides.dequeue();\n }\n result.push({\n originalRange: _common_core_lineRange_js__WEBPACK_IMPORTED_MODULE_14__.LineRange.ofLength(origNext.lineNumber, 1),\n modifiedRange: _common_core_lineRange_js__WEBPACK_IMPORTED_MODULE_14__.LineRange.ofLength(modNext.lineNumber, 1),\n originalHeightInPx: origLineHeight + origNext.heightInPx,\n modifiedHeightInPx: modLineHeight + modNext.heightInPx,\n diff: undefined,\n });\n }\n }\n for (const m of diffs) {\n const c = m.lineRangeMapping;\n handleAlignmentsOutsideOfDiffs(c.original.startLineNumber, c.modified.startLineNumber);\n let first = true;\n let lastModLineNumber = c.modified.startLineNumber;\n let lastOrigLineNumber = c.original.startLineNumber;\n function emitAlignment(origLineNumberExclusive, modLineNumberExclusive) {\n var _a, _b, _c, _d;\n if (origLineNumberExclusive < lastOrigLineNumber || modLineNumberExclusive < lastModLineNumber) {\n return;\n }\n if (first) {\n first = false;\n }\n else if (origLineNumberExclusive === lastOrigLineNumber || modLineNumberExclusive === lastModLineNumber) {\n return;\n }\n const originalRange = new _common_core_lineRange_js__WEBPACK_IMPORTED_MODULE_14__.LineRange(lastOrigLineNumber, origLineNumberExclusive);\n const modifiedRange = new _common_core_lineRange_js__WEBPACK_IMPORTED_MODULE_14__.LineRange(lastModLineNumber, modLineNumberExclusive);\n if (originalRange.isEmpty && modifiedRange.isEmpty) {\n return;\n }\n const originalAdditionalHeight = (_b = (_a = originalLineHeightOverrides\n .takeWhile(v => v.lineNumber < origLineNumberExclusive)) === null || _a === void 0 ? void 0 : _a.reduce((p, c) => p + c.heightInPx, 0)) !== null && _b !== void 0 ? _b : 0;\n const modifiedAdditionalHeight = (_d = (_c = modifiedLineHeightOverrides\n .takeWhile(v => v.lineNumber < modLineNumberExclusive)) === null || _c === void 0 ? void 0 : _c.reduce((p, c) => p + c.heightInPx, 0)) !== null && _d !== void 0 ? _d : 0;\n result.push({\n originalRange,\n modifiedRange,\n originalHeightInPx: originalRange.length * origLineHeight + originalAdditionalHeight,\n modifiedHeightInPx: modifiedRange.length * modLineHeight + modifiedAdditionalHeight,\n diff: m.lineRangeMapping,\n });\n lastOrigLineNumber = origLineNumberExclusive;\n lastModLineNumber = modLineNumberExclusive;\n }\n if (innerHunkAlignment) {\n for (const i of c.innerChanges || []) {\n if (i.originalRange.startColumn > 1 && i.modifiedRange.startColumn > 1) {\n // There is some unmodified text on this line before the diff\n emitAlignment(i.originalRange.startLineNumber, i.modifiedRange.startLineNumber);\n }\n const originalModel = originalEditor.getModel();\n // When the diff is invalid, the ranges might be out of bounds (this should be fixed in the diff model by applying edits directly).\n const maxColumn = i.originalRange.endLineNumber <= originalModel.getLineCount() ? originalModel.getLineMaxColumn(i.originalRange.endLineNumber) : Number.MAX_SAFE_INTEGER;\n if (i.originalRange.endColumn < maxColumn) {\n // // There is some unmodified text on this line after the diff\n emitAlignment(i.originalRange.endLineNumber, i.modifiedRange.endLineNumber);\n }\n }\n }\n emitAlignment(c.original.endLineNumberExclusive, c.modified.endLineNumberExclusive);\n lastOriginalLineNumber = c.original.endLineNumberExclusive;\n lastModifiedLineNumber = c.modified.endLineNumberExclusive;\n }\n handleAlignmentsOutsideOfDiffs(Number.MAX_VALUE, Number.MAX_VALUE);\n return result;\n}\nfunction getAdditionalLineHeights(editor, viewZonesToIgnore) {\n const viewZoneHeights = [];\n const wrappingZoneHeights = [];\n const hasWrapping = editor.getOption(145 /* EditorOption.wrappingInfo */).wrappingColumn !== -1;\n const coordinatesConverter = editor._getViewModel().coordinatesConverter;\n const editorLineHeight = editor.getOption(67 /* EditorOption.lineHeight */);\n if (hasWrapping) {\n for (let i = 1; i <= editor.getModel().getLineCount(); i++) {\n const lineCount = coordinatesConverter.getModelLineViewLineCount(i);\n if (lineCount > 1) {\n wrappingZoneHeights.push({ lineNumber: i, heightInPx: editorLineHeight * (lineCount - 1) });\n }\n }\n }\n for (const w of editor.getWhitespaces()) {\n if (viewZonesToIgnore.has(w.id)) {\n continue;\n }\n const modelLineNumber = w.afterLineNumber === 0 ? 0 : coordinatesConverter.convertViewPositionToModelPosition(new _common_core_position_js__WEBPACK_IMPORTED_MODULE_15__.Position(w.afterLineNumber, 1)).lineNumber;\n viewZoneHeights.push({ lineNumber: modelLineNumber, heightInPx: w.height });\n }\n const result = (0,_utils_js__WEBPACK_IMPORTED_MODULE_13__.joinCombine)(viewZoneHeights, wrappingZoneHeights, v => v.lineNumber, (v1, v2) => ({ lineNumber: v1.lineNumber, heightInPx: v1.heightInPx + v2.heightInPx }));\n return result;\n}\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/browser/widget/diffEditor/components/diffEditorViewZones/diffEditorViewZones.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/browser/widget/diffEditor/components/diffEditorViewZones/inlineDiffDeletedCodeMargin.js":
/*!******************************************************************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/browser/widget/diffEditor/components/diffEditorViewZones/inlineDiffDeletedCodeMargin.js ***!
\******************************************************************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ InlineDiffDeletedCodeMargin: () => (/* binding */ InlineDiffDeletedCodeMargin)\n/* harmony export */ });\n/* harmony import */ var _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../../../../base/browser/dom.js */ \"./node_modules/monaco-editor/esm/vs/base/browser/dom.js\");\n/* harmony import */ var _base_common_actions_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../../../base/common/actions.js */ \"./node_modules/monaco-editor/esm/vs/base/common/actions.js\");\n/* harmony import */ var _base_common_codicons_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../../../../base/common/codicons.js */ \"./node_modules/monaco-editor/esm/vs/base/common/codicons.js\");\n/* harmony import */ var _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../../../../../base/common/lifecycle.js */ \"./node_modules/monaco-editor/esm/vs/base/common/lifecycle.js\");\n/* harmony import */ var _base_common_platform_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../../../../../base/common/platform.js */ \"./node_modules/monaco-editor/esm/vs/base/common/platform.js\");\n/* harmony import */ var _base_common_themables_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../../../../../../base/common/themables.js */ \"./node_modules/monaco-editor/esm/vs/base/common/themables.js\");\n/* harmony import */ var _nls_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../../../../../../nls.js */ \"./node_modules/monaco-editor/esm/vs/nls.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n\n\n\n\n\n\nclass InlineDiffDeletedCodeMargin extends _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_3__.Disposable {\n get visibility() {\n return this._visibility;\n }\n set visibility(_visibility) {\n if (this._visibility !== _visibility) {\n this._visibility = _visibility;\n this._diffActions.style.visibility = _visibility ? 'visible' : 'hidden';\n }\n }\n constructor(_getViewZoneId, _marginDomNode, _modifiedEditor, _diff, _editor, _viewLineCounts, _originalTextModel, _contextMenuService, _clipboardService) {\n super();\n this._getViewZoneId = _getViewZoneId;\n this._marginDomNode = _marginDomNode;\n this._modifiedEditor = _modifiedEditor;\n this._diff = _diff;\n this._editor = _editor;\n this._viewLineCounts = _viewLineCounts;\n this._originalTextModel = _originalTextModel;\n this._contextMenuService = _contextMenuService;\n this._clipboardService = _clipboardService;\n this._visibility = false;\n // make sure the diff margin shows above overlay.\n this._marginDomNode.style.zIndex = '10';\n this._diffActions = document.createElement('div');\n this._diffActions.className = _base_common_themables_js__WEBPACK_IMPORTED_MODULE_5__.ThemeIcon.asClassName(_base_common_codicons_js__WEBPACK_IMPORTED_MODULE_2__.Codicon.lightBulb) + ' lightbulb-glyph';\n this._diffActions.style.position = 'absolute';\n const lineHeight = this._modifiedEditor.getOption(67 /* EditorOption.lineHeight */);\n this._diffActions.style.right = '0px';\n this._diffActions.style.visibility = 'hidden';\n this._diffActions.style.height = `${lineHeight}px`;\n this._diffActions.style.lineHeight = `${lineHeight}px`;\n this._marginDomNode.appendChild(this._diffActions);\n let currentLineNumberOffset = 0;\n const useShadowDOM = _modifiedEditor.getOption(127 /* EditorOption.useShadowDOM */) && !_base_common_platform_js__WEBPACK_IMPORTED_MODULE_4__.isIOS; // Do not use shadow dom on IOS #122035\n const showContextMenu = (x, y) => {\n var _a;\n this._contextMenuService.showContextMenu({\n domForShadowRoot: useShadowDOM ? (_a = _modifiedEditor.getDomNode()) !== null && _a !== void 0 ? _a : undefined : undefined,\n getAnchor: () => ({ x, y }),\n getActions: () => {\n const actions = [];\n const isDeletion = _diff.modified.isEmpty;\n // default action\n actions.push(new _base_common_actions_js__WEBPACK_IMPORTED_MODULE_1__.Action('diff.clipboard.copyDeletedContent', isDeletion\n ? (_diff.original.length > 1\n ? (0,_nls_js__WEBPACK_IMPORTED_MODULE_6__.localize)('diff.clipboard.copyDeletedLinesContent.label', \"Copy deleted lines\")\n : (0,_nls_js__WEBPACK_IMPORTED_MODULE_6__.localize)('diff.clipboard.copyDeletedLinesContent.single.label', \"Copy deleted line\"))\n : (_diff.original.length > 1\n ? (0,_nls_js__WEBPACK_IMPORTED_MODULE_6__.localize)('diff.clipboard.copyChangedLinesContent.label', \"Copy changed lines\")\n : (0,_nls_js__WEBPACK_IMPORTED_MODULE_6__.localize)('diff.clipboard.copyChangedLinesContent.single.label', \"Copy changed line\")), undefined, true, async () => {\n const originalText = this._originalTextModel.getValueInRange(_diff.original.toExclusiveRange());\n await this._clipboardService.writeText(originalText);\n }));\n if (_diff.original.length > 1) {\n actions.push(new _base_common_actions_js__WEBPACK_IMPORTED_MODULE_1__.Action('diff.clipboard.copyDeletedLineContent', isDeletion\n ? (0,_nls_js__WEBPACK_IMPORTED_MODULE_6__.localize)('diff.clipboard.copyDeletedLineContent.label', \"Copy deleted line ({0})\", _diff.original.startLineNumber + currentLineNumberOffset)\n : (0,_nls_js__WEBPACK_IMPORTED_MODULE_6__.localize)('diff.clipboard.copyChangedLineContent.label', \"Copy changed line ({0})\", _diff.original.startLineNumber + currentLineNumberOffset), undefined, true, async () => {\n let lineContent = this._originalTextModel.getLineContent(_diff.original.startLineNumber + currentLineNumberOffset);\n if (lineContent === '') {\n // empty line -> new line\n const eof = this._originalTextModel.getEndOfLineSequence();\n lineContent = eof === 0 /* EndOfLineSequence.LF */ ? '\\n' : '\\r\\n';\n }\n await this._clipboardService.writeText(lineContent);\n }));\n }\n const readOnly = _modifiedEditor.getOption(91 /* EditorOption.readOnly */);\n if (!readOnly) {\n actions.push(new _base_common_actions_js__WEBPACK_IMPORTED_MODULE_1__.Action('diff.inline.revertChange', (0,_nls_js__WEBPACK_IMPORTED_MODULE_6__.localize)('diff.inline.revertChange.label', \"Revert this change\"), undefined, true, async () => {\n this._editor.revert(this._diff);\n }));\n }\n return actions;\n },\n autoSelectFirstItem: true\n });\n };\n this._register((0,_base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.addStandardDisposableListener)(this._diffActions, 'mousedown', e => {\n if (!e.leftButton) {\n return;\n }\n const { top, height } = (0,_base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.getDomNodePagePosition)(this._diffActions);\n const pad = Math.floor(lineHeight / 3);\n e.preventDefault();\n showContextMenu(e.posx, top + height + pad);\n }));\n this._register(_modifiedEditor.onMouseMove((e) => {\n if ((e.target.type === 8 /* MouseTargetType.CONTENT_VIEW_ZONE */ || e.target.type === 5 /* MouseTargetType.GUTTER_VIEW_ZONE */) && e.target.detail.viewZoneId === this._getViewZoneId()) {\n currentLineNumberOffset = this._updateLightBulbPosition(this._marginDomNode, e.event.browserEvent.y, lineHeight);\n this.visibility = true;\n }\n else {\n this.visibility = false;\n }\n }));\n this._register(_modifiedEditor.onMouseDown((e) => {\n if (!e.event.leftButton) {\n return;\n }\n if (e.target.type === 8 /* MouseTargetType.CONTENT_VIEW_ZONE */ || e.target.type === 5 /* MouseTargetType.GUTTER_VIEW_ZONE */) {\n const viewZoneId = e.target.detail.viewZoneId;\n if (viewZoneId === this._getViewZoneId()) {\n e.event.preventDefault();\n currentLineNumberOffset = this._updateLightBulbPosition(this._marginDomNode, e.event.browserEvent.y, lineHeight);\n showContextMenu(e.event.posx, e.event.posy + lineHeight);\n }\n }\n }));\n }\n _updateLightBulbPosition(marginDomNode, y, lineHeight) {\n const { top } = (0,_base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.getDomNodePagePosition)(marginDomNode);\n const offset = y - top;\n const lineNumberOffset = Math.floor(offset / lineHeight);\n const newTop = lineNumberOffset * lineHeight;\n this._diffActions.style.top = `${newTop}px`;\n if (this._viewLineCounts) {\n let acc = 0;\n for (let i = 0; i < this._viewLineCounts.length; i++) {\n acc += this._viewLineCounts[i];\n if (lineNumberOffset < acc) {\n return i;\n }\n }\n }\n return lineNumberOffset;\n }\n}\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/browser/widget/diffEditor/components/diffEditorViewZones/inlineDiffDeletedCodeMargin.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/browser/widget/diffEditor/components/diffEditorViewZones/renderLines.js":
/*!**************************************************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/browser/widget/diffEditor/components/diffEditorViewZones/renderLines.js ***!
\**************************************************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ LineSource: () => (/* binding */ LineSource),\n/* harmony export */ RenderOptions: () => (/* binding */ RenderOptions),\n/* harmony export */ renderLines: () => (/* binding */ renderLines)\n/* harmony export */ });\n/* harmony import */ var _base_browser_trustedTypes_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../../../../base/browser/trustedTypes.js */ \"./node_modules/monaco-editor/esm/vs/base/browser/trustedTypes.js\");\n/* harmony import */ var _config_domFontInfo_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../config/domFontInfo.js */ \"./node_modules/monaco-editor/esm/vs/editor/browser/config/domFontInfo.js\");\n/* harmony import */ var _common_config_editorOptions_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../../../common/config/editorOptions.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/config/editorOptions.js\");\n/* harmony import */ var _common_core_stringBuilder_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../../../../common/core/stringBuilder.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/core/stringBuilder.js\");\n/* harmony import */ var _common_viewLayout_lineDecorations_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../../../../common/viewLayout/lineDecorations.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/viewLayout/lineDecorations.js\");\n/* harmony import */ var _common_viewLayout_viewLineRenderer_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../../../../../common/viewLayout/viewLineRenderer.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/viewLayout/viewLineRenderer.js\");\n/* harmony import */ var _common_viewModel_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../../../../../common/viewModel.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/viewModel.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n\n\n\n\n\n\nconst ttPolicy = (0,_base_browser_trustedTypes_js__WEBPACK_IMPORTED_MODULE_0__.createTrustedTypesPolicy)('diffEditorWidget', { createHTML: value => value });\nfunction renderLines(source, options, decorations, domNode) {\n (0,_config_domFontInfo_js__WEBPACK_IMPORTED_MODULE_1__.applyFontInfo)(domNode, options.fontInfo);\n const hasCharChanges = (decorations.length > 0);\n const sb = new _common_core_stringBuilder_js__WEBPACK_IMPORTED_MODULE_3__.StringBuilder(10000);\n let maxCharsPerLine = 0;\n let renderedLineCount = 0;\n const viewLineCounts = [];\n for (let lineIndex = 0; lineIndex < source.lineTokens.length; lineIndex++) {\n const lineNumber = lineIndex + 1;\n const lineTokens = source.lineTokens[lineIndex];\n const lineBreakData = source.lineBreakData[lineIndex];\n const actualDecorations = _common_viewLayout_lineDecorations_js__WEBPACK_IMPORTED_MODULE_4__.LineDecoration.filter(decorations, lineNumber, 1, Number.MAX_SAFE_INTEGER);\n if (lineBreakData) {\n let lastBreakOffset = 0;\n for (const breakOffset of lineBreakData.breakOffsets) {\n const viewLineTokens = lineTokens.sliceAndInflate(lastBreakOffset, breakOffset, 0);\n maxCharsPerLine = Math.max(maxCharsPerLine, renderOriginalLine(renderedLineCount, viewLineTokens, _common_viewLayout_lineDecorations_js__WEBPACK_IMPORTED_MODULE_4__.LineDecoration.extractWrapped(actualDecorations, lastBreakOffset, breakOffset), hasCharChanges, source.mightContainNonBasicASCII, source.mightContainRTL, options, sb));\n renderedLineCount++;\n lastBreakOffset = breakOffset;\n }\n viewLineCounts.push(lineBreakData.breakOffsets.length);\n }\n else {\n viewLineCounts.push(1);\n maxCharsPerLine = Math.max(maxCharsPerLine, renderOriginalLine(renderedLineCount, lineTokens, actualDecorations, hasCharChanges, source.mightContainNonBasicASCII, source.mightContainRTL, options, sb));\n renderedLineCount++;\n }\n }\n maxCharsPerLine += options.scrollBeyondLastColumn;\n const html = sb.build();\n const trustedhtml = ttPolicy ? ttPolicy.createHTML(html) : html;\n domNode.innerHTML = trustedhtml;\n const minWidthInPx = (maxCharsPerLine * options.typicalHalfwidthCharacterWidth);\n return {\n heightInLines: renderedLineCount,\n minWidthInPx,\n viewLineCounts,\n };\n}\nclass LineSource {\n constructor(lineTokens, lineBreakData, mightContainNonBasicASCII, mightContainRTL) {\n this.lineTokens = lineTokens;\n this.lineBreakData = lineBreakData;\n this.mightContainNonBasicASCII = mightContainNonBasicASCII;\n this.mightContainRTL = mightContainRTL;\n }\n}\nclass RenderOptions {\n static fromEditor(editor) {\n var _a;\n const modifiedEditorOptions = editor.getOptions();\n const fontInfo = modifiedEditorOptions.get(50 /* EditorOption.fontInfo */);\n const layoutInfo = modifiedEditorOptions.get(144 /* EditorOption.layoutInfo */);\n return new RenderOptions(((_a = editor.getModel()) === null || _a === void 0 ? void 0 : _a.getOptions().tabSize) || 0, fontInfo, modifiedEditorOptions.get(33 /* EditorOption.disableMonospaceOptimizations */), fontInfo.typicalHalfwidthCharacterWidth, modifiedEditorOptions.get(104 /* EditorOption.scrollBeyondLastColumn */), modifiedEditorOptions.get(67 /* EditorOption.lineHeight */), layoutInfo.decorationsWidth, modifiedEditorOptions.get(117 /* EditorOption.stopRenderingLineAfter */), modifiedEditorOptions.get(99 /* EditorOption.renderWhitespace */), modifiedEditorOptions.get(94 /* EditorOption.renderControlCharacters */), modifiedEditorOptions.get(51 /* EditorOption.fontLigatures */));\n }\n constructor(tabSize, fontInfo, disableMonospaceOptimizations, typicalHalfwidthCharacterWidth, scrollBeyondLastColumn, lineHeight, lineDecorationsWidth, stopRenderingLineAfter, renderWhitespace, renderControlCharacters, fontLigatures) {\n this.tabSize = tabSize;\n this.fontInfo = fontInfo;\n this.disableMonospaceOptimizations = disableMonospaceOptimizations;\n this.typicalHalfwidthCharacterWidth = typicalHalfwidthCharacterWidth;\n this.scrollBeyondLastColumn = scrollBeyondLastColumn;\n this.lineHeight = lineHeight;\n this.lineDecorationsWidth = lineDecorationsWidth;\n this.stopRenderingLineAfter = stopRenderingLineAfter;\n this.renderWhitespace = renderWhitespace;\n this.renderControlCharacters = renderControlCharacters;\n this.fontLigatures = fontLigatures;\n }\n}\nfunction renderOriginalLine(viewLineIdx, lineTokens, decorations, hasCharChanges, mightContainNonBasicASCII, mightContainRTL, options, sb) {\n sb.appendString(' ');\n const lineContent = lineTokens.getLineContent();\n const isBasicASCII = _common_viewModel_js__WEBPACK_IMPORTED_MODULE_6__.ViewLineRenderingData.isBasicASCII(lineContent, mightContainNonBasicASCII);\n const containsRTL = _common_viewModel_js__WEBPACK_IMPORTED_MODULE_6__.ViewLineRenderingData.containsRTL(lineContent, isBasicASCII, mightContainRTL);\n const output = (0,_common_viewLayout_viewLineRenderer_js__WEBPACK_IMPORTED_MODULE_5__.renderViewLine)(new _common_viewLayout_viewLineRenderer_js__WEBPACK_IMPORTED_MODULE_5__.RenderLineInput((options.fontInfo.isMonospace && !options.disableMonospaceOptimizations), options.fontInfo.canUseHalfwidthRightwardsArrow, lineContent, false, isBasicASCII, containsRTL, 0, lineTokens, decorations, options.tabSize, 0, options.fontInfo.spaceWidth, options.fontInfo.middotWidth, options.fontInfo.wsmiddotWidth, options.stopRenderingLineAfter, options.renderWhitespace, options.renderControlCharacters, options.fontLigatures !== _common_config_editorOptions_js__WEBPACK_IMPORTED_MODULE_2__.EditorFontLigatures.OFF, null // Send no selections, original line cannot be selected\n ), sb);\n sb.appendString(' ');\n return output.characterMapping.getHorizontalOffset(output.characterMapping.length);\n}\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/browser/widget/diffEditor/components/diffEditorViewZones/renderLines.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/browser/widget/diffEditor/delegatingEditorImpl.js":
/*!****************************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/browser/widget/diffEditor/delegatingEditorImpl.js ***!
\****************************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ DelegatingEditor: () => (/* binding */ DelegatingEditor)\n/* harmony export */ });\n/* harmony import */ var _base_common_event_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../../base/common/event.js */ \"./node_modules/monaco-editor/esm/vs/base/common/event.js\");\n/* harmony import */ var _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../base/common/lifecycle.js */ \"./node_modules/monaco-editor/esm/vs/base/common/lifecycle.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n\nclass DelegatingEditor extends _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_1__.Disposable {\n constructor() {\n super(...arguments);\n this._id = ++DelegatingEditor.idCounter;\n this._onDidDispose = this._register(new _base_common_event_js__WEBPACK_IMPORTED_MODULE_0__.Emitter());\n this.onDidDispose = this._onDidDispose.event;\n // #endregion\n }\n getId() { return this.getEditorType() + ':v2:' + this._id; }\n // #region editorBrowser.IDiffEditor: Delegating to modified Editor\n getVisibleColumnFromPosition(position) {\n return this._targetEditor.getVisibleColumnFromPosition(position);\n }\n getPosition() {\n return this._targetEditor.getPosition();\n }\n setPosition(position, source = 'api') {\n this._targetEditor.setPosition(position, source);\n }\n revealLine(lineNumber, scrollType = 0 /* ScrollType.Smooth */) {\n this._targetEditor.revealLine(lineNumber, scrollType);\n }\n revealLineInCenter(lineNumber, scrollType = 0 /* ScrollType.Smooth */) {\n this._targetEditor.revealLineInCenter(lineNumber, scrollType);\n }\n revealLineInCenterIfOutsideViewport(lineNumber, scrollType = 0 /* ScrollType.Smooth */) {\n this._targetEditor.revealLineInCenterIfOutsideViewport(lineNumber, scrollType);\n }\n revealLineNearTop(lineNumber, scrollType = 0 /* ScrollType.Smooth */) {\n this._targetEditor.revealLineNearTop(lineNumber, scrollType);\n }\n revealPosition(position, scrollType = 0 /* ScrollType.Smooth */) {\n this._targetEditor.revealPosition(position, scrollType);\n }\n revealPositionInCenter(position, scrollType = 0 /* ScrollType.Smooth */) {\n this._targetEditor.revealPositionInCenter(position, scrollType);\n }\n revealPositionInCenterIfOutsideViewport(position, scrollType = 0 /* ScrollType.Smooth */) {\n this._targetEditor.revealPositionInCenterIfOutsideViewport(position, scrollType);\n }\n revealPositionNearTop(position, scrollType = 0 /* ScrollType.Smooth */) {\n this._targetEditor.revealPositionNearTop(position, scrollType);\n }\n getSelection() {\n return this._targetEditor.getSelection();\n }\n getSelections() {\n return this._targetEditor.getSelections();\n }\n setSelection(something, source = 'api') {\n this._targetEditor.setSelection(something, source);\n }\n setSelections(ranges, source = 'api') {\n this._targetEditor.setSelections(ranges, source);\n }\n revealLines(startLineNumber, endLineNumber, scrollType = 0 /* ScrollType.Smooth */) {\n this._targetEditor.revealLines(startLineNumber, endLineNumber, scrollType);\n }\n revealLinesInCenter(startLineNumber, endLineNumber, scrollType = 0 /* ScrollType.Smooth */) {\n this._targetEditor.revealLinesInCenter(startLineNumber, endLineNumber, scrollType);\n }\n revealLinesInCenterIfOutsideViewport(startLineNumber, endLineNumber, scrollType = 0 /* ScrollType.Smooth */) {\n this._targetEditor.revealLinesInCenterIfOutsideViewport(startLineNumber, endLineNumber, scrollType);\n }\n revealLinesNearTop(startLineNumber, endLineNumber, scrollType = 0 /* ScrollType.Smooth */) {\n this._targetEditor.revealLinesNearTop(startLineNumber, endLineNumber, scrollType);\n }\n revealRange(range, scrollType = 0 /* ScrollType.Smooth */, revealVerticalInCenter = false, revealHorizontal = true) {\n this._targetEditor.revealRange(range, scrollType, revealVerticalInCenter, revealHorizontal);\n }\n revealRangeInCenter(range, scrollType = 0 /* ScrollType.Smooth */) {\n this._targetEditor.revealRangeInCenter(range, scrollType);\n }\n revealRangeInCenterIfOutsideViewport(range, scrollType = 0 /* ScrollType.Smooth */) {\n this._targetEditor.revealRangeInCenterIfOutsideViewport(range, scrollType);\n }\n revealRangeNearTop(range, scrollType = 0 /* ScrollType.Smooth */) {\n this._targetEditor.revealRangeNearTop(range, scrollType);\n }\n revealRangeNearTopIfOutsideViewport(range, scrollType = 0 /* ScrollType.Smooth */) {\n this._targetEditor.revealRangeNearTopIfOutsideViewport(range, scrollType);\n }\n revealRangeAtTop(range, scrollType = 0 /* ScrollType.Smooth */) {\n this._targetEditor.revealRangeAtTop(range, scrollType);\n }\n getSupportedActions() {\n return this._targetEditor.getSupportedActions();\n }\n focus() {\n this._targetEditor.focus();\n }\n trigger(source, handlerId, payload) {\n this._targetEditor.trigger(source, handlerId, payload);\n }\n createDecorationsCollection(decorations) {\n return this._targetEditor.createDecorationsCollection(decorations);\n }\n changeDecorations(callback) {\n return this._targetEditor.changeDecorations(callback);\n }\n}\nDelegatingEditor.idCounter = 0;\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/browser/widget/diffEditor/delegatingEditorImpl.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/browser/widget/diffEditor/diffEditor.contribution.js":
/*!*******************************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/browser/widget/diffEditor/diffEditor.contribution.js ***!
\*******************************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ AccessibleDiffViewerNext: () => (/* binding */ AccessibleDiffViewerNext),\n/* harmony export */ AccessibleDiffViewerPrev: () => (/* binding */ AccessibleDiffViewerPrev),\n/* harmony export */ CollapseAllUnchangedRegions: () => (/* binding */ CollapseAllUnchangedRegions),\n/* harmony export */ ExitCompareMove: () => (/* binding */ ExitCompareMove),\n/* harmony export */ ShowAllUnchangedRegions: () => (/* binding */ ShowAllUnchangedRegions),\n/* harmony export */ SwitchSide: () => (/* binding */ SwitchSide),\n/* harmony export */ ToggleCollapseUnchangedRegions: () => (/* binding */ ToggleCollapseUnchangedRegions),\n/* harmony export */ ToggleShowMovedCodeBlocks: () => (/* binding */ ToggleShowMovedCodeBlocks),\n/* harmony export */ ToggleUseInlineViewWhenSpaceIsLimited: () => (/* binding */ ToggleUseInlineViewWhenSpaceIsLimited),\n/* harmony export */ findFocusedDiffEditor: () => (/* binding */ findFocusedDiffEditor)\n/* harmony export */ });\n/* harmony import */ var _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../../base/browser/dom.js */ \"./node_modules/monaco-editor/esm/vs/base/browser/dom.js\");\n/* harmony import */ var _base_common_codicons_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../base/common/codicons.js */ \"./node_modules/monaco-editor/esm/vs/base/common/codicons.js\");\n/* harmony import */ var _editorExtensions_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../editorExtensions.js */ \"./node_modules/monaco-editor/esm/vs/editor/browser/editorExtensions.js\");\n/* harmony import */ var _services_codeEditorService_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../services/codeEditorService.js */ \"./node_modules/monaco-editor/esm/vs/editor/browser/services/codeEditorService.js\");\n/* harmony import */ var _diffEditorWidget_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./diffEditorWidget.js */ \"./node_modules/monaco-editor/esm/vs/editor/browser/widget/diffEditor/diffEditorWidget.js\");\n/* harmony import */ var _common_editorContextKeys_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../../../common/editorContextKeys.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/editorContextKeys.js\");\n/* harmony import */ var _nls_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../../../../nls.js */ \"./node_modules/monaco-editor/esm/vs/nls.js\");\n/* harmony import */ var _platform_actions_common_actions_js__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ../../../../platform/actions/common/actions.js */ \"./node_modules/monaco-editor/esm/vs/platform/actions/common/actions.js\");\n/* harmony import */ var _platform_commands_common_commands_js__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ../../../../platform/commands/common/commands.js */ \"./node_modules/monaco-editor/esm/vs/platform/commands/common/commands.js\");\n/* harmony import */ var _platform_configuration_common_configuration_js__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ../../../../platform/configuration/common/configuration.js */ \"./node_modules/monaco-editor/esm/vs/platform/configuration/common/configuration.js\");\n/* harmony import */ var _platform_contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! ../../../../platform/contextkey/common/contextkey.js */ \"./node_modules/monaco-editor/esm/vs/platform/contextkey/common/contextkey.js\");\n/* harmony import */ var _registrations_contribution_js__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(/*! ./registrations.contribution.js */ \"./node_modules/monaco-editor/esm/vs/editor/browser/widget/diffEditor/registrations.contribution.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n\n\n\n\n\n\n\n\n\n\n\nclass ToggleCollapseUnchangedRegions extends _platform_actions_common_actions_js__WEBPACK_IMPORTED_MODULE_7__.Action2 {\n constructor() {\n super({\n id: 'diffEditor.toggleCollapseUnchangedRegions',\n title: (0,_nls_js__WEBPACK_IMPORTED_MODULE_6__.localize2)('toggleCollapseUnchangedRegions', 'Toggle Collapse Unchanged Regions'),\n icon: _base_common_codicons_js__WEBPACK_IMPORTED_MODULE_1__.Codicon.map,\n toggled: _platform_contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_10__.ContextKeyExpr.has('config.diffEditor.hideUnchangedRegions.enabled'),\n precondition: _platform_contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_10__.ContextKeyExpr.has('isInDiffEditor'),\n menu: {\n when: _platform_contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_10__.ContextKeyExpr.has('isInDiffEditor'),\n id: _platform_actions_common_actions_js__WEBPACK_IMPORTED_MODULE_7__.MenuId.EditorTitle,\n order: 22,\n group: 'navigation',\n },\n });\n }\n run(accessor, ...args) {\n const configurationService = accessor.get(_platform_configuration_common_configuration_js__WEBPACK_IMPORTED_MODULE_9__.IConfigurationService);\n const newValue = !configurationService.getValue('diffEditor.hideUnchangedRegions.enabled');\n configurationService.updateValue('diffEditor.hideUnchangedRegions.enabled', newValue);\n }\n}\n(0,_platform_actions_common_actions_js__WEBPACK_IMPORTED_MODULE_7__.registerAction2)(ToggleCollapseUnchangedRegions);\nclass ToggleShowMovedCodeBlocks extends _platform_actions_common_actions_js__WEBPACK_IMPORTED_MODULE_7__.Action2 {\n constructor() {\n super({\n id: 'diffEditor.toggleShowMovedCodeBlocks',\n title: (0,_nls_js__WEBPACK_IMPORTED_MODULE_6__.localize2)('toggleShowMovedCodeBlocks', 'Toggle Show Moved Code Blocks'),\n precondition: _platform_contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_10__.ContextKeyExpr.has('isInDiffEditor'),\n });\n }\n run(accessor, ...args) {\n const configurationService = accessor.get(_platform_configuration_common_configuration_js__WEBPACK_IMPORTED_MODULE_9__.IConfigurationService);\n const newValue = !configurationService.getValue('diffEditor.experimental.showMoves');\n configurationService.updateValue('diffEditor.experimental.showMoves', newValue);\n }\n}\n(0,_platform_actions_common_actions_js__WEBPACK_IMPORTED_MODULE_7__.registerAction2)(ToggleShowMovedCodeBlocks);\nclass ToggleUseInlineViewWhenSpaceIsLimited extends _platform_actions_common_actions_js__WEBPACK_IMPORTED_MODULE_7__.Action2 {\n constructor() {\n super({\n id: 'diffEditor.toggleUseInlineViewWhenSpaceIsLimited',\n title: (0,_nls_js__WEBPACK_IMPORTED_MODULE_6__.localize2)('toggleUseInlineViewWhenSpaceIsLimited', 'Toggle Use Inline View When Space Is Limited'),\n precondition: _platform_contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_10__.ContextKeyExpr.has('isInDiffEditor'),\n });\n }\n run(accessor, ...args) {\n const configurationService = accessor.get(_platform_configuration_common_configuration_js__WEBPACK_IMPORTED_MODULE_9__.IConfigurationService);\n const newValue = !configurationService.getValue('diffEditor.useInlineViewWhenSpaceIsLimited');\n configurationService.updateValue('diffEditor.useInlineViewWhenSpaceIsLimited', newValue);\n }\n}\n(0,_platform_actions_common_actions_js__WEBPACK_IMPORTED_MODULE_7__.registerAction2)(ToggleUseInlineViewWhenSpaceIsLimited);\n_platform_actions_common_actions_js__WEBPACK_IMPORTED_MODULE_7__.MenuRegistry.appendMenuItem(_platform_actions_common_actions_js__WEBPACK_IMPORTED_MODULE_7__.MenuId.EditorTitle, {\n command: {\n id: new ToggleUseInlineViewWhenSpaceIsLimited().desc.id,\n title: (0,_nls_js__WEBPACK_IMPORTED_MODULE_6__.localize)('useInlineViewWhenSpaceIsLimited', \"Use Inline View When Space Is Limited\"),\n toggled: _platform_contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_10__.ContextKeyExpr.has('config.diffEditor.useInlineViewWhenSpaceIsLimited'),\n precondition: _platform_contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_10__.ContextKeyExpr.has('isInDiffEditor'),\n },\n order: 11,\n group: '1_diff',\n when: _platform_contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_10__.ContextKeyExpr.and(_common_editorContextKeys_js__WEBPACK_IMPORTED_MODULE_5__.EditorContextKeys.diffEditorRenderSideBySideInlineBreakpointReached, _platform_contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_10__.ContextKeyExpr.has('isInDiffEditor')),\n});\n_platform_actions_common_actions_js__WEBPACK_IMPORTED_MODULE_7__.MenuRegistry.appendMenuItem(_platform_actions_common_actions_js__WEBPACK_IMPORTED_MODULE_7__.MenuId.EditorTitle, {\n command: {\n id: new ToggleShowMovedCodeBlocks().desc.id,\n title: (0,_nls_js__WEBPACK_IMPORTED_MODULE_6__.localize)('showMoves', \"Show Moved Code Blocks\"),\n icon: _base_common_codicons_js__WEBPACK_IMPORTED_MODULE_1__.Codicon.move,\n toggled: _platform_contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_10__.ContextKeyEqualsExpr.create('config.diffEditor.experimental.showMoves', true),\n precondition: _platform_contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_10__.ContextKeyExpr.has('isInDiffEditor'),\n },\n order: 10,\n group: '1_diff',\n when: _platform_contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_10__.ContextKeyExpr.has('isInDiffEditor'),\n});\nconst diffEditorCategory = (0,_nls_js__WEBPACK_IMPORTED_MODULE_6__.localize2)('diffEditor', \"Diff Editor\");\nclass SwitchSide extends _editorExtensions_js__WEBPACK_IMPORTED_MODULE_2__.EditorAction2 {\n constructor() {\n super({\n id: 'diffEditor.switchSide',\n title: (0,_nls_js__WEBPACK_IMPORTED_MODULE_6__.localize2)('switchSide', 'Switch Side'),\n icon: _base_common_codicons_js__WEBPACK_IMPORTED_MODULE_1__.Codicon.arrowSwap,\n precondition: _platform_contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_10__.ContextKeyExpr.has('isInDiffEditor'),\n f1: true,\n category: diffEditorCategory,\n });\n }\n runEditorCommand(accessor, editor, arg) {\n const diffEditor = findFocusedDiffEditor(accessor);\n if (diffEditor instanceof _diffEditorWidget_js__WEBPACK_IMPORTED_MODULE_4__.DiffEditorWidget) {\n if (arg && arg.dryRun) {\n return { destinationSelection: diffEditor.mapToOtherSide().destinationSelection };\n }\n else {\n diffEditor.switchSide();\n }\n }\n return undefined;\n }\n}\n(0,_platform_actions_common_actions_js__WEBPACK_IMPORTED_MODULE_7__.registerAction2)(SwitchSide);\nclass ExitCompareMove extends _editorExtensions_js__WEBPACK_IMPORTED_MODULE_2__.EditorAction2 {\n constructor() {\n super({\n id: 'diffEditor.exitCompareMove',\n title: (0,_nls_js__WEBPACK_IMPORTED_MODULE_6__.localize2)('exitCompareMove', 'Exit Compare Move'),\n icon: _base_common_codicons_js__WEBPACK_IMPORTED_MODULE_1__.Codicon.close,\n precondition: _common_editorContextKeys_js__WEBPACK_IMPORTED_MODULE_5__.EditorContextKeys.comparingMovedCode,\n f1: false,\n category: diffEditorCategory,\n keybinding: {\n weight: 10000,\n primary: 9 /* KeyCode.Escape */,\n }\n });\n }\n runEditorCommand(accessor, editor, ...args) {\n const diffEditor = findFocusedDiffEditor(accessor);\n if (diffEditor instanceof _diffEditorWidget_js__WEBPACK_IMPORTED_MODULE_4__.DiffEditorWidget) {\n diffEditor.exitCompareMove();\n }\n }\n}\n(0,_platform_actions_common_actions_js__WEBPACK_IMPORTED_MODULE_7__.registerAction2)(ExitCompareMove);\nclass CollapseAllUnchangedRegions extends _editorExtensions_js__WEBPACK_IMPORTED_MODULE_2__.EditorAction2 {\n constructor() {\n super({\n id: 'diffEditor.collapseAllUnchangedRegions',\n title: (0,_nls_js__WEBPACK_IMPORTED_MODULE_6__.localize2)('collapseAllUnchangedRegions', 'Collapse All Unchanged Regions'),\n icon: _base_common_codicons_js__WEBPACK_IMPORTED_MODULE_1__.Codicon.fold,\n precondition: _platform_contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_10__.ContextKeyExpr.has('isInDiffEditor'),\n f1: true,\n category: diffEditorCategory,\n });\n }\n runEditorCommand(accessor, editor, ...args) {\n const diffEditor = findFocusedDiffEditor(accessor);\n if (diffEditor instanceof _diffEditorWidget_js__WEBPACK_IMPORTED_MODULE_4__.DiffEditorWidget) {\n diffEditor.collapseAllUnchangedRegions();\n }\n }\n}\n(0,_platform_actions_common_actions_js__WEBPACK_IMPORTED_MODULE_7__.registerAction2)(CollapseAllUnchangedRegions);\nclass ShowAllUnchangedRegions extends _editorExtensions_js__WEBPACK_IMPORTED_MODULE_2__.EditorAction2 {\n constructor() {\n super({\n id: 'diffEditor.showAllUnchangedRegions',\n title: (0,_nls_js__WEBPACK_IMPORTED_MODULE_6__.localize2)('showAllUnchangedRegions', 'Show All Unchanged Regions'),\n icon: _base_common_codicons_js__WEBPACK_IMPORTED_MODULE_1__.Codicon.unfold,\n precondition: _platform_contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_10__.ContextKeyExpr.has('isInDiffEditor'),\n f1: true,\n category: diffEditorCategory,\n });\n }\n runEditorCommand(accessor, editor, ...args) {\n const diffEditor = findFocusedDiffEditor(accessor);\n if (diffEditor instanceof _diffEditorWidget_js__WEBPACK_IMPORTED_MODULE_4__.DiffEditorWidget) {\n diffEditor.showAllUnchangedRegions();\n }\n }\n}\n(0,_platform_actions_common_actions_js__WEBPACK_IMPORTED_MODULE_7__.registerAction2)(ShowAllUnchangedRegions);\nconst accessibleDiffViewerCategory = (0,_nls_js__WEBPACK_IMPORTED_MODULE_6__.localize2)('accessibleDiffViewer', \"Accessible Diff Viewer\");\nclass AccessibleDiffViewerNext extends _platform_actions_common_actions_js__WEBPACK_IMPORTED_MODULE_7__.Action2 {\n constructor() {\n super({\n id: AccessibleDiffViewerNext.id,\n title: (0,_nls_js__WEBPACK_IMPORTED_MODULE_6__.localize2)('editor.action.accessibleDiffViewer.next', 'Go to Next Difference'),\n category: accessibleDiffViewerCategory,\n precondition: _platform_contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_10__.ContextKeyExpr.has('isInDiffEditor'),\n keybinding: {\n primary: 65 /* KeyCode.F7 */,\n weight: 100 /* KeybindingWeight.EditorContrib */\n },\n f1: true,\n });\n }\n run(accessor) {\n const diffEditor = findFocusedDiffEditor(accessor);\n diffEditor === null || diffEditor === void 0 ? void 0 : diffEditor.accessibleDiffViewerNext();\n }\n}\nAccessibleDiffViewerNext.id = 'editor.action.accessibleDiffViewer.next';\n_platform_actions_common_actions_js__WEBPACK_IMPORTED_MODULE_7__.MenuRegistry.appendMenuItem(_platform_actions_common_actions_js__WEBPACK_IMPORTED_MODULE_7__.MenuId.EditorTitle, {\n command: {\n id: AccessibleDiffViewerNext.id,\n title: (0,_nls_js__WEBPACK_IMPORTED_MODULE_6__.localize)('Open Accessible Diff Viewer', \"Open Accessible Diff Viewer\"),\n precondition: _platform_contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_10__.ContextKeyExpr.has('isInDiffEditor'),\n },\n order: 10,\n group: '2_diff',\n when: _platform_contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_10__.ContextKeyExpr.and(_common_editorContextKeys_js__WEBPACK_IMPORTED_MODULE_5__.EditorContextKeys.accessibleDiffViewerVisible.negate(), _platform_contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_10__.ContextKeyExpr.has('isInDiffEditor')),\n});\nclass AccessibleDiffViewerPrev extends _platform_actions_common_actions_js__WEBPACK_IMPORTED_MODULE_7__.Action2 {\n constructor() {\n super({\n id: AccessibleDiffViewerPrev.id,\n title: (0,_nls_js__WEBPACK_IMPORTED_MODULE_6__.localize2)('editor.action.accessibleDiffViewer.prev', 'Go to Previous Difference'),\n category: accessibleDiffViewerCategory,\n precondition: _platform_contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_10__.ContextKeyExpr.has('isInDiffEditor'),\n keybinding: {\n primary: 1024 /* KeyMod.Shift */ | 65 /* KeyCode.F7 */,\n weight: 100 /* KeybindingWeight.EditorContrib */\n },\n f1: true,\n });\n }\n run(accessor) {\n const diffEditor = findFocusedDiffEditor(accessor);\n diffEditor === null || diffEditor === void 0 ? void 0 : diffEditor.accessibleDiffViewerPrev();\n }\n}\nAccessibleDiffViewerPrev.id = 'editor.action.accessibleDiffViewer.prev';\nfunction findFocusedDiffEditor(accessor) {\n const codeEditorService = accessor.get(_services_codeEditorService_js__WEBPACK_IMPORTED_MODULE_3__.ICodeEditorService);\n const diffEditors = codeEditorService.listDiffEditors();\n const activeElement = (0,_base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.getActiveElement)();\n if (activeElement) {\n for (const d of diffEditors) {\n const container = d.getContainerDomNode();\n if (isElementOrParentOf(container, activeElement)) {\n return d;\n }\n }\n }\n return null;\n}\nfunction isElementOrParentOf(elementOrParent, element) {\n let e = element;\n while (e) {\n if (e === elementOrParent) {\n return true;\n }\n e = e.parentElement;\n }\n return false;\n}\n_platform_commands_common_commands_js__WEBPACK_IMPORTED_MODULE_8__.CommandsRegistry.registerCommandAlias('editor.action.diffReview.next', AccessibleDiffViewerNext.id);\n(0,_platform_actions_common_actions_js__WEBPACK_IMPORTED_MODULE_7__.registerAction2)(AccessibleDiffViewerNext);\n_platform_commands_common_commands_js__WEBPACK_IMPORTED_MODULE_8__.CommandsRegistry.registerCommandAlias('editor.action.diffReview.prev', AccessibleDiffViewerPrev.id);\n(0,_platform_actions_common_actions_js__WEBPACK_IMPORTED_MODULE_7__.registerAction2)(AccessibleDiffViewerPrev);\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/browser/widget/diffEditor/diffEditor.contribution.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/browser/widget/diffEditor/diffEditorOptions.js":
/*!*************************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/browser/widget/diffEditor/diffEditorOptions.js ***!
\*************************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ DiffEditorOptions: () => (/* binding */ DiffEditorOptions)\n/* harmony export */ });\n/* harmony import */ var _base_common_observable_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../../base/common/observable.js */ \"./node_modules/monaco-editor/esm/vs/base/common/observable.js\");\n/* harmony import */ var _common_config_diffEditor_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../common/config/diffEditor.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/config/diffEditor.js\");\n/* harmony import */ var _common_config_editorOptions_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../common/config/editorOptions.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/config/editorOptions.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n\n\nclass DiffEditorOptions {\n get editorOptions() { return this._options; }\n constructor(options) {\n this._diffEditorWidth = (0,_base_common_observable_js__WEBPACK_IMPORTED_MODULE_0__.observableValue)(this, 0);\n this.couldShowInlineViewBecauseOfSize = (0,_base_common_observable_js__WEBPACK_IMPORTED_MODULE_0__.derived)(this, reader => this._options.read(reader).renderSideBySide && this._diffEditorWidth.read(reader) <= this._options.read(reader).renderSideBySideInlineBreakpoint);\n this.renderOverviewRuler = (0,_base_common_observable_js__WEBPACK_IMPORTED_MODULE_0__.derived)(this, reader => this._options.read(reader).renderOverviewRuler);\n this.renderSideBySide = (0,_base_common_observable_js__WEBPACK_IMPORTED_MODULE_0__.derived)(this, reader => this._options.read(reader).renderSideBySide\n && !(this._options.read(reader).useInlineViewWhenSpaceIsLimited && this.couldShowInlineViewBecauseOfSize.read(reader)));\n this.readOnly = (0,_base_common_observable_js__WEBPACK_IMPORTED_MODULE_0__.derived)(this, reader => this._options.read(reader).readOnly);\n this.shouldRenderRevertArrows = (0,_base_common_observable_js__WEBPACK_IMPORTED_MODULE_0__.derived)(this, reader => {\n if (!this._options.read(reader).renderMarginRevertIcon) {\n return false;\n }\n if (!this.renderSideBySide.read(reader)) {\n return false;\n }\n if (this.readOnly.read(reader)) {\n return false;\n }\n return true;\n });\n this.renderIndicators = (0,_base_common_observable_js__WEBPACK_IMPORTED_MODULE_0__.derived)(this, reader => this._options.read(reader).renderIndicators);\n this.enableSplitViewResizing = (0,_base_common_observable_js__WEBPACK_IMPORTED_MODULE_0__.derived)(this, reader => this._options.read(reader).enableSplitViewResizing);\n this.splitViewDefaultRatio = (0,_base_common_observable_js__WEBPACK_IMPORTED_MODULE_0__.derived)(this, reader => this._options.read(reader).splitViewDefaultRatio);\n this.ignoreTrimWhitespace = (0,_base_common_observable_js__WEBPACK_IMPORTED_MODULE_0__.derived)(this, reader => this._options.read(reader).ignoreTrimWhitespace);\n this.maxComputationTimeMs = (0,_base_common_observable_js__WEBPACK_IMPORTED_MODULE_0__.derived)(this, reader => this._options.read(reader).maxComputationTime);\n this.showMoves = (0,_base_common_observable_js__WEBPACK_IMPORTED_MODULE_0__.derived)(this, reader => this._options.read(reader).experimental.showMoves && this.renderSideBySide.read(reader));\n this.isInEmbeddedEditor = (0,_base_common_observable_js__WEBPACK_IMPORTED_MODULE_0__.derived)(this, reader => this._options.read(reader).isInEmbeddedEditor);\n this.diffWordWrap = (0,_base_common_observable_js__WEBPACK_IMPORTED_MODULE_0__.derived)(this, reader => this._options.read(reader).diffWordWrap);\n this.originalEditable = (0,_base_common_observable_js__WEBPACK_IMPORTED_MODULE_0__.derived)(this, reader => this._options.read(reader).originalEditable);\n this.diffCodeLens = (0,_base_common_observable_js__WEBPACK_IMPORTED_MODULE_0__.derived)(this, reader => this._options.read(reader).diffCodeLens);\n this.accessibilityVerbose = (0,_base_common_observable_js__WEBPACK_IMPORTED_MODULE_0__.derived)(this, reader => this._options.read(reader).accessibilityVerbose);\n this.diffAlgorithm = (0,_base_common_observable_js__WEBPACK_IMPORTED_MODULE_0__.derived)(this, reader => this._options.read(reader).diffAlgorithm);\n this.showEmptyDecorations = (0,_base_common_observable_js__WEBPACK_IMPORTED_MODULE_0__.derived)(this, reader => this._options.read(reader).experimental.showEmptyDecorations);\n this.onlyShowAccessibleDiffViewer = (0,_base_common_observable_js__WEBPACK_IMPORTED_MODULE_0__.derived)(this, reader => this._options.read(reader).onlyShowAccessibleDiffViewer);\n this.hideUnchangedRegions = (0,_base_common_observable_js__WEBPACK_IMPORTED_MODULE_0__.derived)(this, reader => this._options.read(reader).hideUnchangedRegions.enabled);\n this.hideUnchangedRegionsRevealLineCount = (0,_base_common_observable_js__WEBPACK_IMPORTED_MODULE_0__.derived)(this, reader => this._options.read(reader).hideUnchangedRegions.revealLineCount);\n this.hideUnchangedRegionsContextLineCount = (0,_base_common_observable_js__WEBPACK_IMPORTED_MODULE_0__.derived)(this, reader => this._options.read(reader).hideUnchangedRegions.contextLineCount);\n this.hideUnchangedRegionsMinimumLineCount = (0,_base_common_observable_js__WEBPACK_IMPORTED_MODULE_0__.derived)(this, reader => this._options.read(reader).hideUnchangedRegions.minimumLineCount);\n const optionsCopy = { ...options, ...validateDiffEditorOptions(options, _common_config_diffEditor_js__WEBPACK_IMPORTED_MODULE_1__.diffEditorDefaultOptions) };\n this._options = (0,_base_common_observable_js__WEBPACK_IMPORTED_MODULE_0__.observableValue)(this, optionsCopy);\n }\n updateOptions(changedOptions) {\n const newDiffEditorOptions = validateDiffEditorOptions(changedOptions, this._options.get());\n const newOptions = { ...this._options.get(), ...changedOptions, ...newDiffEditorOptions };\n this._options.set(newOptions, undefined, { changedOptions: changedOptions });\n }\n setWidth(width) {\n this._diffEditorWidth.set(width, undefined);\n }\n}\nfunction validateDiffEditorOptions(options, defaults) {\n var _a, _b, _c, _d, _e, _f, _g, _h;\n return {\n enableSplitViewResizing: (0,_common_config_editorOptions_js__WEBPACK_IMPORTED_MODULE_2__.boolean)(options.enableSplitViewResizing, defaults.enableSplitViewResizing),\n splitViewDefaultRatio: (0,_common_config_editorOptions_js__WEBPACK_IMPORTED_MODULE_2__.clampedFloat)(options.splitViewDefaultRatio, 0.5, 0.1, 0.9),\n renderSideBySide: (0,_common_config_editorOptions_js__WEBPACK_IMPORTED_MODULE_2__.boolean)(options.renderSideBySide, defaults.renderSideBySide),\n renderMarginRevertIcon: (0,_common_config_editorOptions_js__WEBPACK_IMPORTED_MODULE_2__.boolean)(options.renderMarginRevertIcon, defaults.renderMarginRevertIcon),\n maxComputationTime: (0,_common_config_editorOptions_js__WEBPACK_IMPORTED_MODULE_2__.clampedInt)(options.maxComputationTime, defaults.maxComputationTime, 0, 1073741824 /* Constants.MAX_SAFE_SMALL_INTEGER */),\n maxFileSize: (0,_common_config_editorOptions_js__WEBPACK_IMPORTED_MODULE_2__.clampedInt)(options.maxFileSize, defaults.maxFileSize, 0, 1073741824 /* Constants.MAX_SAFE_SMALL_INTEGER */),\n ignoreTrimWhitespace: (0,_common_config_editorOptions_js__WEBPACK_IMPORTED_MODULE_2__.boolean)(options.ignoreTrimWhitespace, defaults.ignoreTrimWhitespace),\n renderIndicators: (0,_common_config_editorOptions_js__WEBPACK_IMPORTED_MODULE_2__.boolean)(options.renderIndicators, defaults.renderIndicators),\n originalEditable: (0,_common_config_editorOptions_js__WEBPACK_IMPORTED_MODULE_2__.boolean)(options.originalEditable, defaults.originalEditable),\n diffCodeLens: (0,_common_config_editorOptions_js__WEBPACK_IMPORTED_MODULE_2__.boolean)(options.diffCodeLens, defaults.diffCodeLens),\n renderOverviewRuler: (0,_common_config_editorOptions_js__WEBPACK_IMPORTED_MODULE_2__.boolean)(options.renderOverviewRuler, defaults.renderOverviewRuler),\n diffWordWrap: (0,_common_config_editorOptions_js__WEBPACK_IMPORTED_MODULE_2__.stringSet)(options.diffWordWrap, defaults.diffWordWrap, ['off', 'on', 'inherit']),\n diffAlgorithm: (0,_common_config_editorOptions_js__WEBPACK_IMPORTED_MODULE_2__.stringSet)(options.diffAlgorithm, defaults.diffAlgorithm, ['legacy', 'advanced'], { 'smart': 'legacy', 'experimental': 'advanced' }),\n accessibilityVerbose: (0,_common_config_editorOptions_js__WEBPACK_IMPORTED_MODULE_2__.boolean)(options.accessibilityVerbose, defaults.accessibilityVerbose),\n experimental: {\n showMoves: (0,_common_config_editorOptions_js__WEBPACK_IMPORTED_MODULE_2__.boolean)((_a = options.experimental) === null || _a === void 0 ? void 0 : _a.showMoves, defaults.experimental.showMoves),\n showEmptyDecorations: (0,_common_config_editorOptions_js__WEBPACK_IMPORTED_MODULE_2__.boolean)((_b = options.experimental) === null || _b === void 0 ? void 0 : _b.showEmptyDecorations, defaults.experimental.showEmptyDecorations),\n },\n hideUnchangedRegions: {\n enabled: (0,_common_config_editorOptions_js__WEBPACK_IMPORTED_MODULE_2__.boolean)((_d = (_c = options.hideUnchangedRegions) === null || _c === void 0 ? void 0 : _c.enabled) !== null && _d !== void 0 ? _d : (_e = options.experimental) === null || _e === void 0 ? void 0 : _e.collapseUnchangedRegions, defaults.hideUnchangedRegions.enabled),\n contextLineCount: (0,_common_config_editorOptions_js__WEBPACK_IMPORTED_MODULE_2__.clampedInt)((_f = options.hideUnchangedRegions) === null || _f === void 0 ? void 0 : _f.contextLineCount, defaults.hideUnchangedRegions.contextLineCount, 0, 1073741824 /* Constants.MAX_SAFE_SMALL_INTEGER */),\n minimumLineCount: (0,_common_config_editorOptions_js__WEBPACK_IMPORTED_MODULE_2__.clampedInt)((_g = options.hideUnchangedRegions) === null || _g === void 0 ? void 0 : _g.minimumLineCount, defaults.hideUnchangedRegions.minimumLineCount, 0, 1073741824 /* Constants.MAX_SAFE_SMALL_INTEGER */),\n revealLineCount: (0,_common_config_editorOptions_js__WEBPACK_IMPORTED_MODULE_2__.clampedInt)((_h = options.hideUnchangedRegions) === null || _h === void 0 ? void 0 : _h.revealLineCount, defaults.hideUnchangedRegions.revealLineCount, 0, 1073741824 /* Constants.MAX_SAFE_SMALL_INTEGER */),\n },\n isInEmbeddedEditor: (0,_common_config_editorOptions_js__WEBPACK_IMPORTED_MODULE_2__.boolean)(options.isInEmbeddedEditor, defaults.isInEmbeddedEditor),\n onlyShowAccessibleDiffViewer: (0,_common_config_editorOptions_js__WEBPACK_IMPORTED_MODULE_2__.boolean)(options.onlyShowAccessibleDiffViewer, defaults.onlyShowAccessibleDiffViewer),\n renderSideBySideInlineBreakpoint: (0,_common_config_editorOptions_js__WEBPACK_IMPORTED_MODULE_2__.clampedInt)(options.renderSideBySideInlineBreakpoint, defaults.renderSideBySideInlineBreakpoint, 0, 1073741824 /* Constants.MAX_SAFE_SMALL_INTEGER */),\n useInlineViewWhenSpaceIsLimited: (0,_common_config_editorOptions_js__WEBPACK_IMPORTED_MODULE_2__.boolean)(options.useInlineViewWhenSpaceIsLimited, defaults.useInlineViewWhenSpaceIsLimited),\n };\n}\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/browser/widget/diffEditor/diffEditorOptions.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/browser/widget/diffEditor/diffEditorViewModel.js":
/*!***************************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/browser/widget/diffEditor/diffEditorViewModel.js ***!
\***************************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ DiffEditorViewModel: () => (/* binding */ DiffEditorViewModel),\n/* harmony export */ DiffMapping: () => (/* binding */ DiffMapping),\n/* harmony export */ DiffState: () => (/* binding */ DiffState),\n/* harmony export */ UnchangedRegion: () => (/* binding */ UnchangedRegion)\n/* harmony export */ });\n/* harmony import */ var _base_common_async_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../../base/common/async.js */ \"./node_modules/monaco-editor/esm/vs/base/common/async.js\");\n/* harmony import */ var _base_common_cancellation_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../base/common/cancellation.js */ \"./node_modules/monaco-editor/esm/vs/base/common/cancellation.js\");\n/* harmony import */ var _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../../base/common/lifecycle.js */ \"./node_modules/monaco-editor/esm/vs/base/common/lifecycle.js\");\n/* harmony import */ var _base_common_observable_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../../../base/common/observable.js */ \"./node_modules/monaco-editor/esm/vs/base/common/observable.js\");\n/* harmony import */ var _diffProviderFactoryService_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./diffProviderFactoryService.js */ \"./node_modules/monaco-editor/esm/vs/editor/browser/widget/diffEditor/diffProviderFactoryService.js\");\n/* harmony import */ var _utils_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./utils.js */ \"./node_modules/monaco-editor/esm/vs/editor/browser/widget/diffEditor/utils.js\");\n/* harmony import */ var _common_core_lineRange_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../../../common/core/lineRange.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/core/lineRange.js\");\n/* harmony import */ var _common_diff_defaultLinesDiffComputer_defaultLinesDiffComputer_js__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ../../../common/diff/defaultLinesDiffComputer/defaultLinesDiffComputer.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/diff/defaultLinesDiffComputer/defaultLinesDiffComputer.js\");\n/* harmony import */ var _common_diff_rangeMapping_js__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ../../../common/diff/rangeMapping.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/diff/rangeMapping.js\");\n/* harmony import */ var _common_model_bracketPairsTextModelPart_bracketPairsTree_beforeEditPositionMapper_js__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ../../../common/model/bracketPairsTextModelPart/bracketPairsTree/beforeEditPositionMapper.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/model/bracketPairsTextModelPart/bracketPairsTree/beforeEditPositionMapper.js\");\n/* harmony import */ var _common_model_bracketPairsTextModelPart_bracketPairsTree_combineTextEditInfos_js__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! ../../../common/model/bracketPairsTextModelPart/bracketPairsTree/combineTextEditInfos.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/model/bracketPairsTextModelPart/bracketPairsTree/combineTextEditInfos.js\");\n/* harmony import */ var _common_diff_defaultLinesDiffComputer_heuristicSequenceOptimizations_js__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(/*! ../../../common/diff/defaultLinesDiffComputer/heuristicSequenceOptimizations.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/diff/defaultLinesDiffComputer/heuristicSequenceOptimizations.js\");\n/* harmony import */ var _base_common_types_js__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(/*! ../../../../base/common/types.js */ \"./node_modules/monaco-editor/esm/vs/base/common/types.js\");\n/* harmony import */ var _base_common_arrays_js__WEBPACK_IMPORTED_MODULE_13__ = __webpack_require__(/*! ../../../../base/common/arrays.js */ \"./node_modules/monaco-editor/esm/vs/base/common/arrays.js\");\n/* harmony import */ var _base_common_assert_js__WEBPACK_IMPORTED_MODULE_14__ = __webpack_require__(/*! ../../../../base/common/assert.js */ \"./node_modules/monaco-editor/esm/vs/base/common/assert.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\nvar __decorate = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\n return c > 3 && r && Object.defineProperty(target, key, r), r;\n};\nvar __param = (undefined && undefined.__param) || function (paramIndex, decorator) {\n return function (target, key) { decorator(target, key, paramIndex); }\n};\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlet DiffEditorViewModel = class DiffEditorViewModel extends _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_2__.Disposable {\n setActiveMovedText(movedText) {\n this._activeMovedText.set(movedText, undefined);\n }\n constructor(model, _options, _diffProviderFactoryService) {\n super();\n this.model = model;\n this._options = _options;\n this._diffProviderFactoryService = _diffProviderFactoryService;\n this._isDiffUpToDate = (0,_base_common_observable_js__WEBPACK_IMPORTED_MODULE_3__.observableValue)(this, false);\n this.isDiffUpToDate = this._isDiffUpToDate;\n this._diff = (0,_base_common_observable_js__WEBPACK_IMPORTED_MODULE_3__.observableValue)(this, undefined);\n this.diff = this._diff;\n this._unchangedRegions = (0,_base_common_observable_js__WEBPACK_IMPORTED_MODULE_3__.observableValue)(this, undefined);\n this.unchangedRegions = (0,_base_common_observable_js__WEBPACK_IMPORTED_MODULE_3__.derived)(this, r => {\n var _a, _b;\n if (this._options.hideUnchangedRegions.read(r)) {\n return (_b = (_a = this._unchangedRegions.read(r)) === null || _a === void 0 ? void 0 : _a.regions) !== null && _b !== void 0 ? _b : [];\n }\n else {\n // Reset state\n (0,_base_common_observable_js__WEBPACK_IMPORTED_MODULE_3__.transaction)(tx => {\n var _a;\n for (const r of ((_a = this._unchangedRegions.get()) === null || _a === void 0 ? void 0 : _a.regions) || []) {\n r.collapseAll(tx);\n }\n });\n return [];\n }\n });\n this.movedTextToCompare = (0,_base_common_observable_js__WEBPACK_IMPORTED_MODULE_3__.observableValue)(this, undefined);\n this._activeMovedText = (0,_base_common_observable_js__WEBPACK_IMPORTED_MODULE_3__.observableValue)(this, undefined);\n this._hoveredMovedText = (0,_base_common_observable_js__WEBPACK_IMPORTED_MODULE_3__.observableValue)(this, undefined);\n this.activeMovedText = (0,_base_common_observable_js__WEBPACK_IMPORTED_MODULE_3__.derived)(this, r => { var _a, _b; return (_b = (_a = this.movedTextToCompare.read(r)) !== null && _a !== void 0 ? _a : this._hoveredMovedText.read(r)) !== null && _b !== void 0 ? _b : this._activeMovedText.read(r); });\n this._cancellationTokenSource = new _base_common_cancellation_js__WEBPACK_IMPORTED_MODULE_1__.CancellationTokenSource();\n this._diffProvider = (0,_base_common_observable_js__WEBPACK_IMPORTED_MODULE_3__.derived)(this, reader => {\n const diffProvider = this._diffProviderFactoryService.createDiffProvider({\n diffAlgorithm: this._options.diffAlgorithm.read(reader)\n });\n const onChangeSignal = (0,_base_common_observable_js__WEBPACK_IMPORTED_MODULE_3__.observableSignalFromEvent)('onDidChange', diffProvider.onDidChange);\n return {\n diffProvider,\n onChangeSignal,\n };\n });\n this._register((0,_base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_2__.toDisposable)(() => this._cancellationTokenSource.cancel()));\n const contentChangedSignal = (0,_base_common_observable_js__WEBPACK_IMPORTED_MODULE_3__.observableSignal)('contentChangedSignal');\n const debouncer = this._register(new _base_common_async_js__WEBPACK_IMPORTED_MODULE_0__.RunOnceScheduler(() => contentChangedSignal.trigger(undefined), 200));\n this._register((0,_base_common_observable_js__WEBPACK_IMPORTED_MODULE_3__.autorun)(reader => {\n /** @description collapse touching unchanged ranges */\n const lastUnchangedRegions = this._unchangedRegions.read(reader);\n if (!lastUnchangedRegions || lastUnchangedRegions.regions.some(r => r.isDragged.read(reader))) {\n return;\n }\n const lastUnchangedRegionsOrigRanges = lastUnchangedRegions.originalDecorationIds\n .map(id => model.original.getDecorationRange(id))\n .map(r => r ? _common_core_lineRange_js__WEBPACK_IMPORTED_MODULE_6__.LineRange.fromRangeInclusive(r) : undefined);\n const lastUnchangedRegionsModRanges = lastUnchangedRegions.modifiedDecorationIds\n .map(id => model.modified.getDecorationRange(id))\n .map(r => r ? _common_core_lineRange_js__WEBPACK_IMPORTED_MODULE_6__.LineRange.fromRangeInclusive(r) : undefined);\n const updatedLastUnchangedRegions = lastUnchangedRegions.regions.map((r, idx) => (!lastUnchangedRegionsOrigRanges[idx] || !lastUnchangedRegionsModRanges[idx]) ? undefined :\n new UnchangedRegion(lastUnchangedRegionsOrigRanges[idx].startLineNumber, lastUnchangedRegionsModRanges[idx].startLineNumber, lastUnchangedRegionsOrigRanges[idx].length, r.visibleLineCountTop.read(reader), r.visibleLineCountBottom.read(reader))).filter(_base_common_types_js__WEBPACK_IMPORTED_MODULE_12__.isDefined);\n const newRanges = [];\n let didChange = false;\n for (const touching of (0,_base_common_arrays_js__WEBPACK_IMPORTED_MODULE_13__.groupAdjacentBy)(updatedLastUnchangedRegions, (a, b) => a.getHiddenModifiedRange(reader).endLineNumberExclusive === b.getHiddenModifiedRange(reader).startLineNumber)) {\n if (touching.length > 1) {\n didChange = true;\n const sumLineCount = touching.reduce((sum, r) => sum + r.lineCount, 0);\n const r = new UnchangedRegion(touching[0].originalLineNumber, touching[0].modifiedLineNumber, sumLineCount, touching[0].visibleLineCountTop.get(), touching[touching.length - 1].visibleLineCountBottom.get());\n newRanges.push(r);\n }\n else {\n newRanges.push(touching[0]);\n }\n }\n if (didChange) {\n const originalDecorationIds = model.original.deltaDecorations(lastUnchangedRegions.originalDecorationIds, newRanges.map(r => ({ range: r.originalUnchangedRange.toInclusiveRange(), options: { description: 'unchanged' } })));\n const modifiedDecorationIds = model.modified.deltaDecorations(lastUnchangedRegions.modifiedDecorationIds, newRanges.map(r => ({ range: r.modifiedUnchangedRange.toInclusiveRange(), options: { description: 'unchanged' } })));\n (0,_base_common_observable_js__WEBPACK_IMPORTED_MODULE_3__.transaction)(tx => {\n this._unchangedRegions.set({\n regions: newRanges,\n originalDecorationIds,\n modifiedDecorationIds\n }, tx);\n });\n }\n }));\n const updateUnchangedRegions = (result, tx, reader) => {\n const newUnchangedRegions = UnchangedRegion.fromDiffs(result.changes, model.original.getLineCount(), model.modified.getLineCount(), this._options.hideUnchangedRegionsMinimumLineCount.read(reader), this._options.hideUnchangedRegionsContextLineCount.read(reader));\n // Transfer state from cur state\n let visibleRegions = undefined;\n const lastUnchangedRegions = this._unchangedRegions.get();\n if (lastUnchangedRegions) {\n const lastUnchangedRegionsOrigRanges = lastUnchangedRegions.originalDecorationIds\n .map(id => model.original.getDecorationRange(id))\n .map(r => r ? _common_core_lineRange_js__WEBPACK_IMPORTED_MODULE_6__.LineRange.fromRangeInclusive(r) : undefined);\n const lastUnchangedRegionsModRanges = lastUnchangedRegions.modifiedDecorationIds\n .map(id => model.modified.getDecorationRange(id))\n .map(r => r ? _common_core_lineRange_js__WEBPACK_IMPORTED_MODULE_6__.LineRange.fromRangeInclusive(r) : undefined);\n const updatedLastUnchangedRegions = (0,_utils_js__WEBPACK_IMPORTED_MODULE_5__.filterWithPrevious)(lastUnchangedRegions.regions\n .map((r, idx) => {\n if (!lastUnchangedRegionsOrigRanges[idx] || !lastUnchangedRegionsModRanges[idx]) {\n return undefined;\n }\n const length = lastUnchangedRegionsOrigRanges[idx].length;\n return new UnchangedRegion(lastUnchangedRegionsOrigRanges[idx].startLineNumber, lastUnchangedRegionsModRanges[idx].startLineNumber, length, \n // The visible area can shrink by edits -> we have to account for this\n Math.min(r.visibleLineCountTop.get(), length), Math.min(r.visibleLineCountBottom.get(), length - r.visibleLineCountTop.get()));\n }).filter(_base_common_types_js__WEBPACK_IMPORTED_MODULE_12__.isDefined), (cur, prev) => !prev || (cur.modifiedLineNumber >= prev.modifiedLineNumber + prev.lineCount && cur.originalLineNumber >= prev.originalLineNumber + prev.lineCount));\n let hiddenRegions = updatedLastUnchangedRegions.map(r => new _common_diff_rangeMapping_js__WEBPACK_IMPORTED_MODULE_8__.LineRangeMapping(r.getHiddenOriginalRange(reader), r.getHiddenModifiedRange(reader)));\n hiddenRegions = _common_diff_rangeMapping_js__WEBPACK_IMPORTED_MODULE_8__.LineRangeMapping.clip(hiddenRegions, _common_core_lineRange_js__WEBPACK_IMPORTED_MODULE_6__.LineRange.ofLength(1, model.original.getLineCount()), _common_core_lineRange_js__WEBPACK_IMPORTED_MODULE_6__.LineRange.ofLength(1, model.modified.getLineCount()));\n visibleRegions = _common_diff_rangeMapping_js__WEBPACK_IMPORTED_MODULE_8__.LineRangeMapping.inverse(hiddenRegions, model.original.getLineCount(), model.modified.getLineCount());\n }\n const newUnchangedRegions2 = [];\n if (visibleRegions) {\n for (const r of newUnchangedRegions) {\n const intersecting = visibleRegions.filter(f => f.original.intersectsStrict(r.originalUnchangedRange) && f.modified.intersectsStrict(r.modifiedUnchangedRange));\n newUnchangedRegions2.push(...r.setVisibleRanges(intersecting, tx));\n }\n }\n else {\n newUnchangedRegions2.push(...newUnchangedRegions);\n }\n const originalDecorationIds = model.original.deltaDecorations((lastUnchangedRegions === null || lastUnchangedRegions === void 0 ? void 0 : lastUnchangedRegions.originalDecorationIds) || [], newUnchangedRegions2.map(r => ({ range: r.originalUnchangedRange.toInclusiveRange(), options: { description: 'unchanged' } })));\n const modifiedDecorationIds = model.modified.deltaDecorations((lastUnchangedRegions === null || lastUnchangedRegions === void 0 ? void 0 : lastUnchangedRegions.modifiedDecorationIds) || [], newUnchangedRegions2.map(r => ({ range: r.modifiedUnchangedRange.toInclusiveRange(), options: { description: 'unchanged' } })));\n this._unchangedRegions.set({\n regions: newUnchangedRegions2,\n originalDecorationIds,\n modifiedDecorationIds\n }, tx);\n };\n this._register(model.modified.onDidChangeContent((e) => {\n const diff = this._diff.get();\n if (diff) {\n const textEdits = _common_model_bracketPairsTextModelPart_bracketPairsTree_beforeEditPositionMapper_js__WEBPACK_IMPORTED_MODULE_9__.TextEditInfo.fromModelContentChanges(e.changes);\n const result = applyModifiedEdits(this._lastDiff, textEdits, model.original, model.modified);\n if (result) {\n this._lastDiff = result;\n (0,_base_common_observable_js__WEBPACK_IMPORTED_MODULE_3__.transaction)(tx => {\n this._diff.set(DiffState.fromDiffResult(this._lastDiff), tx);\n updateUnchangedRegions(result, tx);\n const currentSyncedMovedText = this.movedTextToCompare.get();\n this.movedTextToCompare.set(currentSyncedMovedText ? this._lastDiff.moves.find(m => m.lineRangeMapping.modified.intersect(currentSyncedMovedText.lineRangeMapping.modified)) : undefined, tx);\n });\n }\n }\n this._isDiffUpToDate.set(false, undefined);\n debouncer.schedule();\n }));\n this._register(model.original.onDidChangeContent((e) => {\n const diff = this._diff.get();\n if (diff) {\n const textEdits = _common_model_bracketPairsTextModelPart_bracketPairsTree_beforeEditPositionMapper_js__WEBPACK_IMPORTED_MODULE_9__.TextEditInfo.fromModelContentChanges(e.changes);\n const result = applyOriginalEdits(this._lastDiff, textEdits, model.original, model.modified);\n if (result) {\n this._lastDiff = result;\n (0,_base_common_observable_js__WEBPACK_IMPORTED_MODULE_3__.transaction)(tx => {\n this._diff.set(DiffState.fromDiffResult(this._lastDiff), tx);\n updateUnchangedRegions(result, tx);\n const currentSyncedMovedText = this.movedTextToCompare.get();\n this.movedTextToCompare.set(currentSyncedMovedText ? this._lastDiff.moves.find(m => m.lineRangeMapping.modified.intersect(currentSyncedMovedText.lineRangeMapping.modified)) : undefined, tx);\n });\n }\n }\n this._isDiffUpToDate.set(false, undefined);\n debouncer.schedule();\n }));\n this._register((0,_base_common_observable_js__WEBPACK_IMPORTED_MODULE_3__.autorunWithStore)(async (reader, store) => {\n /** @description compute diff */\n var _a, _b;\n // So that they get recomputed when these settings change\n this._options.hideUnchangedRegionsMinimumLineCount.read(reader);\n this._options.hideUnchangedRegionsContextLineCount.read(reader);\n debouncer.cancel();\n contentChangedSignal.read(reader);\n const documentDiffProvider = this._diffProvider.read(reader);\n documentDiffProvider.onChangeSignal.read(reader);\n (0,_utils_js__WEBPACK_IMPORTED_MODULE_5__.readHotReloadableExport)(_common_diff_defaultLinesDiffComputer_defaultLinesDiffComputer_js__WEBPACK_IMPORTED_MODULE_7__.DefaultLinesDiffComputer, reader);\n (0,_utils_js__WEBPACK_IMPORTED_MODULE_5__.readHotReloadableExport)(_common_diff_defaultLinesDiffComputer_heuristicSequenceOptimizations_js__WEBPACK_IMPORTED_MODULE_11__.optimizeSequenceDiffs, reader);\n this._isDiffUpToDate.set(false, undefined);\n let originalTextEditInfos = [];\n store.add(model.original.onDidChangeContent((e) => {\n const edits = _common_model_bracketPairsTextModelPart_bracketPairsTree_beforeEditPositionMapper_js__WEBPACK_IMPORTED_MODULE_9__.TextEditInfo.fromModelContentChanges(e.changes);\n originalTextEditInfos = (0,_common_model_bracketPairsTextModelPart_bracketPairsTree_combineTextEditInfos_js__WEBPACK_IMPORTED_MODULE_10__.combineTextEditInfos)(originalTextEditInfos, edits);\n }));\n let modifiedTextEditInfos = [];\n store.add(model.modified.onDidChangeContent((e) => {\n const edits = _common_model_bracketPairsTextModelPart_bracketPairsTree_beforeEditPositionMapper_js__WEBPACK_IMPORTED_MODULE_9__.TextEditInfo.fromModelContentChanges(e.changes);\n modifiedTextEditInfos = (0,_common_model_bracketPairsTextModelPart_bracketPairsTree_combineTextEditInfos_js__WEBPACK_IMPORTED_MODULE_10__.combineTextEditInfos)(modifiedTextEditInfos, edits);\n }));\n let result = await documentDiffProvider.diffProvider.computeDiff(model.original, model.modified, {\n ignoreTrimWhitespace: this._options.ignoreTrimWhitespace.read(reader),\n maxComputationTimeMs: this._options.maxComputationTimeMs.read(reader),\n computeMoves: this._options.showMoves.read(reader),\n }, this._cancellationTokenSource.token);\n if (this._cancellationTokenSource.token.isCancellationRequested) {\n return;\n }\n result = normalizeDocumentDiff(result, model.original, model.modified);\n result = (_a = applyOriginalEdits(result, originalTextEditInfos, model.original, model.modified)) !== null && _a !== void 0 ? _a : result;\n result = (_b = applyModifiedEdits(result, modifiedTextEditInfos, model.original, model.modified)) !== null && _b !== void 0 ? _b : result;\n (0,_base_common_observable_js__WEBPACK_IMPORTED_MODULE_3__.transaction)(tx => {\n /** @description write diff result */\n updateUnchangedRegions(result, tx);\n this._lastDiff = result;\n const state = DiffState.fromDiffResult(result);\n this._diff.set(state, tx);\n this._isDiffUpToDate.set(true, tx);\n const currentSyncedMovedText = this.movedTextToCompare.get();\n this.movedTextToCompare.set(currentSyncedMovedText ? this._lastDiff.moves.find(m => m.lineRangeMapping.modified.intersect(currentSyncedMovedText.lineRangeMapping.modified)) : undefined, tx);\n });\n }));\n }\n ensureModifiedLineIsVisible(lineNumber, preference, tx) {\n var _a, _b;\n if (((_a = this.diff.get()) === null || _a === void 0 ? void 0 : _a.mappings.length) === 0) {\n return;\n }\n const unchangedRegions = ((_b = this._unchangedRegions.get()) === null || _b === void 0 ? void 0 : _b.regions) || [];\n for (const r of unchangedRegions) {\n if (r.getHiddenModifiedRange(undefined).contains(lineNumber)) {\n r.showModifiedLine(lineNumber, preference, tx);\n return;\n }\n }\n }\n ensureOriginalLineIsVisible(lineNumber, preference, tx) {\n var _a, _b;\n if (((_a = this.diff.get()) === null || _a === void 0 ? void 0 : _a.mappings.length) === 0) {\n return;\n }\n const unchangedRegions = ((_b = this._unchangedRegions.get()) === null || _b === void 0 ? void 0 : _b.regions) || [];\n for (const r of unchangedRegions) {\n if (r.getHiddenOriginalRange(undefined).contains(lineNumber)) {\n r.showOriginalLine(lineNumber, preference, tx);\n return;\n }\n }\n }\n async waitForDiff() {\n await (0,_base_common_observable_js__WEBPACK_IMPORTED_MODULE_3__.waitForState)(this.isDiffUpToDate, s => s);\n }\n serializeState() {\n const regions = this._unchangedRegions.get();\n return {\n collapsedRegions: regions === null || regions === void 0 ? void 0 : regions.regions.map(r => ({ range: r.getHiddenModifiedRange(undefined).serialize() }))\n };\n }\n restoreSerializedState(state) {\n var _a;\n const ranges = (_a = state.collapsedRegions) === null || _a === void 0 ? void 0 : _a.map(r => _common_core_lineRange_js__WEBPACK_IMPORTED_MODULE_6__.LineRange.deserialize(r.range));\n const regions = this._unchangedRegions.get();\n if (!regions || !ranges) {\n return;\n }\n (0,_base_common_observable_js__WEBPACK_IMPORTED_MODULE_3__.transaction)(tx => {\n for (const r of regions.regions) {\n for (const range of ranges) {\n if (r.modifiedUnchangedRange.intersect(range)) {\n r.setHiddenModifiedRange(range, tx);\n break;\n }\n }\n }\n });\n }\n};\nDiffEditorViewModel = __decorate([\n __param(2, _diffProviderFactoryService_js__WEBPACK_IMPORTED_MODULE_4__.IDiffProviderFactoryService)\n], DiffEditorViewModel);\n\nfunction normalizeDocumentDiff(diff, original, modified) {\n return {\n changes: diff.changes.map(c => new _common_diff_rangeMapping_js__WEBPACK_IMPORTED_MODULE_8__.DetailedLineRangeMapping(c.original, c.modified, c.innerChanges ? c.innerChanges.map(i => normalizeRangeMapping(i, original, modified)) : undefined)),\n moves: diff.moves,\n identical: diff.identical,\n quitEarly: diff.quitEarly,\n };\n}\nfunction normalizeRangeMapping(rangeMapping, original, modified) {\n let originalRange = rangeMapping.originalRange;\n let modifiedRange = rangeMapping.modifiedRange;\n if ((originalRange.endColumn !== 1 || modifiedRange.endColumn !== 1) &&\n originalRange.endColumn === original.getLineMaxColumn(originalRange.endLineNumber)\n && modifiedRange.endColumn === modified.getLineMaxColumn(modifiedRange.endLineNumber)\n && originalRange.endLineNumber < original.getLineCount()\n && modifiedRange.endLineNumber < modified.getLineCount()) {\n originalRange = originalRange.setEndPosition(originalRange.endLineNumber + 1, 1);\n modifiedRange = modifiedRange.setEndPosition(modifiedRange.endLineNumber + 1, 1);\n }\n return new _common_diff_rangeMapping_js__WEBPACK_IMPORTED_MODULE_8__.RangeMapping(originalRange, modifiedRange);\n}\nclass DiffState {\n static fromDiffResult(result) {\n return new DiffState(result.changes.map(c => new DiffMapping(c)), result.moves || [], result.identical, result.quitEarly);\n }\n constructor(mappings, movedTexts, identical, quitEarly) {\n this.mappings = mappings;\n this.movedTexts = movedTexts;\n this.identical = identical;\n this.quitEarly = quitEarly;\n }\n}\nclass DiffMapping {\n constructor(lineRangeMapping) {\n this.lineRangeMapping = lineRangeMapping;\n /*\n readonly movedTo: MovedText | undefined,\n readonly movedFrom: MovedText | undefined,\n\n if (movedTo) {\n assertFn(() =>\n movedTo.lineRangeMapping.modifiedRange.equals(lineRangeMapping.modifiedRange)\n && lineRangeMapping.originalRange.isEmpty\n && !movedFrom\n );\n } else if (movedFrom) {\n assertFn(() =>\n movedFrom.lineRangeMapping.originalRange.equals(lineRangeMapping.originalRange)\n && lineRangeMapping.modifiedRange.isEmpty\n && !movedTo\n );\n }\n */\n }\n}\nclass UnchangedRegion {\n static fromDiffs(changes, originalLineCount, modifiedLineCount, minHiddenLineCount, minContext) {\n const inversedMappings = _common_diff_rangeMapping_js__WEBPACK_IMPORTED_MODULE_8__.DetailedLineRangeMapping.inverse(changes, originalLineCount, modifiedLineCount);\n const result = [];\n for (const mapping of inversedMappings) {\n let origStart = mapping.original.startLineNumber;\n let modStart = mapping.modified.startLineNumber;\n let length = mapping.original.length;\n const atStart = origStart === 1 && modStart === 1;\n const atEnd = origStart + length === originalLineCount + 1 && modStart + length === modifiedLineCount + 1;\n if ((atStart || atEnd) && length >= minContext + minHiddenLineCount) {\n if (atStart && !atEnd) {\n length -= minContext;\n }\n if (atEnd && !atStart) {\n origStart += minContext;\n modStart += minContext;\n length -= minContext;\n }\n result.push(new UnchangedRegion(origStart, modStart, length, 0, 0));\n }\n else if (length >= minContext * 2 + minHiddenLineCount) {\n origStart += minContext;\n modStart += minContext;\n length -= minContext * 2;\n result.push(new UnchangedRegion(origStart, modStart, length, 0, 0));\n }\n }\n return result;\n }\n get originalUnchangedRange() {\n return _common_core_lineRange_js__WEBPACK_IMPORTED_MODULE_6__.LineRange.ofLength(this.originalLineNumber, this.lineCount);\n }\n get modifiedUnchangedRange() {\n return _common_core_lineRange_js__WEBPACK_IMPORTED_MODULE_6__.LineRange.ofLength(this.modifiedLineNumber, this.lineCount);\n }\n constructor(originalLineNumber, modifiedLineNumber, lineCount, visibleLineCountTop, visibleLineCountBottom) {\n this.originalLineNumber = originalLineNumber;\n this.modifiedLineNumber = modifiedLineNumber;\n this.lineCount = lineCount;\n this._visibleLineCountTop = (0,_base_common_observable_js__WEBPACK_IMPORTED_MODULE_3__.observableValue)(this, 0);\n this.visibleLineCountTop = this._visibleLineCountTop;\n this._visibleLineCountBottom = (0,_base_common_observable_js__WEBPACK_IMPORTED_MODULE_3__.observableValue)(this, 0);\n this.visibleLineCountBottom = this._visibleLineCountBottom;\n this._shouldHideControls = (0,_base_common_observable_js__WEBPACK_IMPORTED_MODULE_3__.derived)(this, reader => /** @description isVisible */ this.visibleLineCountTop.read(reader) + this.visibleLineCountBottom.read(reader) === this.lineCount && !this.isDragged.read(reader));\n this.isDragged = (0,_base_common_observable_js__WEBPACK_IMPORTED_MODULE_3__.observableValue)(this, undefined);\n const visibleLineCountTop2 = Math.max(Math.min(visibleLineCountTop, this.lineCount), 0);\n const visibleLineCountBottom2 = Math.max(Math.min(visibleLineCountBottom, this.lineCount - visibleLineCountTop), 0);\n (0,_base_common_assert_js__WEBPACK_IMPORTED_MODULE_14__.softAssert)(visibleLineCountTop === visibleLineCountTop2);\n (0,_base_common_assert_js__WEBPACK_IMPORTED_MODULE_14__.softAssert)(visibleLineCountBottom === visibleLineCountBottom2);\n this._visibleLineCountTop.set(visibleLineCountTop2, undefined);\n this._visibleLineCountBottom.set(visibleLineCountBottom2, undefined);\n }\n setVisibleRanges(visibleRanges, tx) {\n const result = [];\n const hiddenModified = new _common_core_lineRange_js__WEBPACK_IMPORTED_MODULE_6__.LineRangeSet(visibleRanges.map(r => r.modified)).subtractFrom(this.modifiedUnchangedRange);\n let originalStartLineNumber = this.originalLineNumber;\n let modifiedStartLineNumber = this.modifiedLineNumber;\n const modifiedEndLineNumberEx = this.modifiedLineNumber + this.lineCount;\n if (hiddenModified.ranges.length === 0) {\n this.showAll(tx);\n result.push(this);\n }\n else {\n let i = 0;\n for (const r of hiddenModified.ranges) {\n const isLast = i === hiddenModified.ranges.length - 1;\n i++;\n const length = (isLast ? modifiedEndLineNumberEx : r.endLineNumberExclusive) - modifiedStartLineNumber;\n const newR = new UnchangedRegion(originalStartLineNumber, modifiedStartLineNumber, length, 0, 0);\n newR.setHiddenModifiedRange(r, tx);\n result.push(newR);\n originalStartLineNumber = newR.originalUnchangedRange.endLineNumberExclusive;\n modifiedStartLineNumber = newR.modifiedUnchangedRange.endLineNumberExclusive;\n }\n }\n return result;\n }\n shouldHideControls(reader) {\n return this._shouldHideControls.read(reader);\n }\n getHiddenOriginalRange(reader) {\n return _common_core_lineRange_js__WEBPACK_IMPORTED_MODULE_6__.LineRange.ofLength(this.originalLineNumber + this._visibleLineCountTop.read(reader), this.lineCount - this._visibleLineCountTop.read(reader) - this._visibleLineCountBottom.read(reader));\n }\n getHiddenModifiedRange(reader) {\n return _common_core_lineRange_js__WEBPACK_IMPORTED_MODULE_6__.LineRange.ofLength(this.modifiedLineNumber + this._visibleLineCountTop.read(reader), this.lineCount - this._visibleLineCountTop.read(reader) - this._visibleLineCountBottom.read(reader));\n }\n setHiddenModifiedRange(range, tx) {\n const visibleLineCountTop = range.startLineNumber - this.modifiedLineNumber;\n const visibleLineCountBottom = (this.modifiedLineNumber + this.lineCount) - range.endLineNumberExclusive;\n this.setState(visibleLineCountTop, visibleLineCountBottom, tx);\n }\n getMaxVisibleLineCountTop() {\n return this.lineCount - this._visibleLineCountBottom.get();\n }\n getMaxVisibleLineCountBottom() {\n return this.lineCount - this._visibleLineCountTop.get();\n }\n showMoreAbove(count = 10, tx) {\n const maxVisibleLineCountTop = this.getMaxVisibleLineCountTop();\n this._visibleLineCountTop.set(Math.min(this._visibleLineCountTop.get() + count, maxVisibleLineCountTop), tx);\n }\n showMoreBelow(count = 10, tx) {\n const maxVisibleLineCountBottom = this.lineCount - this._visibleLineCountTop.get();\n this._visibleLineCountBottom.set(Math.min(this._visibleLineCountBottom.get() + count, maxVisibleLineCountBottom), tx);\n }\n showAll(tx) {\n this._visibleLineCountBottom.set(this.lineCount - this._visibleLineCountTop.get(), tx);\n }\n showModifiedLine(lineNumber, preference, tx) {\n const top = lineNumber + 1 - (this.modifiedLineNumber + this._visibleLineCountTop.get());\n const bottom = (this.modifiedLineNumber - this._visibleLineCountBottom.get() + this.lineCount) - lineNumber;\n if (preference === 0 /* RevealPreference.FromCloserSide */ && top < bottom || preference === 1 /* RevealPreference.FromTop */) {\n this._visibleLineCountTop.set(this._visibleLineCountTop.get() + top, tx);\n }\n else {\n this._visibleLineCountBottom.set(this._visibleLineCountBottom.get() + bottom, tx);\n }\n }\n showOriginalLine(lineNumber, preference, tx) {\n const top = lineNumber - this.originalLineNumber;\n const bottom = (this.originalLineNumber + this.lineCount) - lineNumber;\n if (preference === 0 /* RevealPreference.FromCloserSide */ && top < bottom || preference === 1 /* RevealPreference.FromTop */) {\n this._visibleLineCountTop.set(Math.min(this._visibleLineCountTop.get() + bottom - top, this.getMaxVisibleLineCountTop()), tx);\n }\n else {\n this._visibleLineCountBottom.set(Math.min(this._visibleLineCountBottom.get() + top - bottom, this.getMaxVisibleLineCountBottom()), tx);\n }\n }\n collapseAll(tx) {\n this._visibleLineCountTop.set(0, tx);\n this._visibleLineCountBottom.set(0, tx);\n }\n setState(visibleLineCountTop, visibleLineCountBottom, tx) {\n visibleLineCountTop = Math.max(Math.min(visibleLineCountTop, this.lineCount), 0);\n visibleLineCountBottom = Math.max(Math.min(visibleLineCountBottom, this.lineCount - visibleLineCountTop), 0);\n this._visibleLineCountTop.set(visibleLineCountTop, tx);\n this._visibleLineCountBottom.set(visibleLineCountBottom, tx);\n }\n}\nfunction applyOriginalEdits(diff, textEdits, originalTextModel, modifiedTextModel) {\n return undefined;\n /*\n TODO@hediet\n if (textEdits.length === 0) {\n return diff;\n }\n\n const diff2 = flip(diff);\n const diff3 = applyModifiedEdits(diff2, textEdits, modifiedTextModel, originalTextModel);\n if (!diff3) {\n return undefined;\n }\n return flip(diff3);*/\n}\n/*\nfunction flip(diff: IDocumentDiff): IDocumentDiff {\n return {\n changes: diff.changes.map(c => c.flip()),\n moves: diff.moves.map(m => m.flip()),\n identical: diff.identical,\n quitEarly: diff.quitEarly,\n };\n}\n*/\nfunction applyModifiedEdits(diff, textEdits, originalTextModel, modifiedTextModel) {\n return undefined;\n /*\n TODO@hediet\n if (textEdits.length === 0) {\n return diff;\n }\n if (diff.changes.some(c => !c.innerChanges) || diff.moves.length > 0) {\n // TODO support these cases\n return undefined;\n }\n\n const changes = applyModifiedEditsToLineRangeMappings(diff.changes, textEdits, originalTextModel, modifiedTextModel);\n\n const moves = diff.moves.map(m => {\n const newModifiedRange = applyEditToLineRange(m.lineRangeMapping.modified, textEdits);\n return newModifiedRange ? new MovedText(\n new SimpleLineRangeMapping(m.lineRangeMapping.original, newModifiedRange),\n applyModifiedEditsToLineRangeMappings(m.changes, textEdits, originalTextModel, modifiedTextModel),\n ) : undefined;\n }).filter(isDefined);\n\n return {\n identical: false,\n quitEarly: false,\n changes,\n moves,\n };*/\n}\n/*\nfunction applyEditToLineRange(range: LineRange, textEdits: TextEditInfo[]): LineRange | undefined {\n let rangeStartLineNumber = range.startLineNumber;\n let rangeEndLineNumberEx = range.endLineNumberExclusive;\n\n for (let i = textEdits.length - 1; i >= 0; i--) {\n const textEdit = textEdits[i];\n const textEditStartLineNumber = lengthGetLineCount(textEdit.startOffset) + 1;\n const textEditEndLineNumber = lengthGetLineCount(textEdit.endOffset) + 1;\n const newLengthLineCount = lengthGetLineCount(textEdit.newLength);\n const delta = newLengthLineCount - (textEditEndLineNumber - textEditStartLineNumber);\n\n if (textEditEndLineNumber < rangeStartLineNumber) {\n // the text edit is before us\n rangeStartLineNumber += delta;\n rangeEndLineNumberEx += delta;\n } else if (textEditStartLineNumber > rangeEndLineNumberEx) {\n // the text edit is after us\n // NOOP\n } else if (textEditStartLineNumber < rangeStartLineNumber && rangeEndLineNumberEx < textEditEndLineNumber) {\n // the range is fully contained in the text edit\n return undefined;\n } else if (textEditStartLineNumber < rangeStartLineNumber && textEditEndLineNumber <= rangeEndLineNumberEx) {\n // the text edit ends inside our range\n rangeStartLineNumber = textEditEndLineNumber + 1;\n rangeStartLineNumber += delta;\n rangeEndLineNumberEx += delta;\n } else if (rangeStartLineNumber <= textEditStartLineNumber && textEditEndLineNumber < rangeStartLineNumber) {\n // the text edit starts inside our range\n rangeEndLineNumberEx = textEditStartLineNumber;\n } else {\n rangeEndLineNumberEx += delta;\n }\n }\n\n return new LineRange(rangeStartLineNumber, rangeEndLineNumberEx);\n}\n\nfunction applyModifiedEditsToLineRangeMappings(changes: readonly LineRangeMapping[], textEdits: TextEditInfo[], originalTextModel: ITextModel, modifiedTextModel: ITextModel): LineRangeMapping[] {\n const diffTextEdits = changes.flatMap(c => c.innerChanges!.map(c => new TextEditInfo(\n positionToLength(c.originalRange.getStartPosition()),\n positionToLength(c.originalRange.getEndPosition()),\n lengthOfRange(c.modifiedRange).toLength(),\n )));\n\n const combined = combineTextEditInfos(diffTextEdits, textEdits);\n\n let lastOriginalEndOffset = lengthZero;\n let lastModifiedEndOffset = lengthZero;\n const rangeMappings = combined.map(c => {\n const modifiedStartOffset = lengthAdd(lastModifiedEndOffset, lengthDiffNonNegative(lastOriginalEndOffset, c.startOffset));\n lastOriginalEndOffset = c.endOffset;\n lastModifiedEndOffset = lengthAdd(modifiedStartOffset, c.newLength);\n\n return new RangeMapping(\n Range.fromPositions(lengthToPosition(c.startOffset), lengthToPosition(c.endOffset)),\n Range.fromPositions(lengthToPosition(modifiedStartOffset), lengthToPosition(lastModifiedEndOffset)),\n );\n });\n\n const newChanges = lineRangeMappingFromRangeMappings(\n rangeMappings,\n originalTextModel.getLinesContent(),\n modifiedTextModel.getLinesContent(),\n );\n return newChanges;\n}\n*/\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/browser/widget/diffEditor/diffEditorViewModel.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/browser/widget/diffEditor/diffEditorWidget.js":
/*!************************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/browser/widget/diffEditor/diffEditorWidget.js ***!
\************************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ DiffEditorWidget: () => (/* binding */ DiffEditorWidget)\n/* harmony export */ });\n/* harmony import */ var _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../../base/browser/dom.js */ \"./node_modules/monaco-editor/esm/vs/base/browser/dom.js\");\n/* harmony import */ var _base_common_arraysFind_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../base/common/arraysFind.js */ \"./node_modules/monaco-editor/esm/vs/base/common/arraysFind.js\");\n/* harmony import */ var _base_common_errors_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../../base/common/errors.js */ \"./node_modules/monaco-editor/esm/vs/base/common/errors.js\");\n/* harmony import */ var _base_common_event_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../../../base/common/event.js */ \"./node_modules/monaco-editor/esm/vs/base/common/event.js\");\n/* harmony import */ var _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../../../base/common/lifecycle.js */ \"./node_modules/monaco-editor/esm/vs/base/common/lifecycle.js\");\n/* harmony import */ var _base_common_observable_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../../../../base/common/observable.js */ \"./node_modules/monaco-editor/esm/vs/base/common/observable.js\");\n/* harmony import */ var _base_common_observableInternal_derived_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../../../../base/common/observableInternal/derived.js */ \"./node_modules/monaco-editor/esm/vs/base/common/observableInternal/derived.js\");\n/* harmony import */ var _style_css__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ./style.css */ \"./node_modules/monaco-editor/esm/vs/editor/browser/widget/diffEditor/style.css\");\n/* harmony import */ var _editorExtensions_js__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ../../editorExtensions.js */ \"./node_modules/monaco-editor/esm/vs/editor/browser/editorExtensions.js\");\n/* harmony import */ var _services_codeEditorService_js__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ../../services/codeEditorService.js */ \"./node_modules/monaco-editor/esm/vs/editor/browser/services/codeEditorService.js\");\n/* harmony import */ var _stableEditorScroll_js__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! ../../stableEditorScroll.js */ \"./node_modules/monaco-editor/esm/vs/editor/browser/stableEditorScroll.js\");\n/* harmony import */ var _codeEditorWidget_js__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(/*! ../codeEditorWidget.js */ \"./node_modules/monaco-editor/esm/vs/editor/browser/widget/codeEditorWidget.js\");\n/* harmony import */ var _components_accessibleDiffViewer_js__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(/*! ./components/accessibleDiffViewer.js */ \"./node_modules/monaco-editor/esm/vs/editor/browser/widget/diffEditor/components/accessibleDiffViewer.js\");\n/* harmony import */ var _components_diffEditorDecorations_js__WEBPACK_IMPORTED_MODULE_13__ = __webpack_require__(/*! ./components/diffEditorDecorations.js */ \"./node_modules/monaco-editor/esm/vs/editor/browser/widget/diffEditor/components/diffEditorDecorations.js\");\n/* harmony import */ var _components_diffEditorSash_js__WEBPACK_IMPORTED_MODULE_14__ = __webpack_require__(/*! ./components/diffEditorSash.js */ \"./node_modules/monaco-editor/esm/vs/editor/browser/widget/diffEditor/components/diffEditorSash.js\");\n/* harmony import */ var _features_hideUnchangedRegionsFeature_js__WEBPACK_IMPORTED_MODULE_15__ = __webpack_require__(/*! ./features/hideUnchangedRegionsFeature.js */ \"./node_modules/monaco-editor/esm/vs/editor/browser/widget/diffEditor/features/hideUnchangedRegionsFeature.js\");\n/* harmony import */ var _components_diffEditorViewZones_diffEditorViewZones_js__WEBPACK_IMPORTED_MODULE_16__ = __webpack_require__(/*! ./components/diffEditorViewZones/diffEditorViewZones.js */ \"./node_modules/monaco-editor/esm/vs/editor/browser/widget/diffEditor/components/diffEditorViewZones/diffEditorViewZones.js\");\n/* harmony import */ var _features_movedBlocksLinesFeature_js__WEBPACK_IMPORTED_MODULE_17__ = __webpack_require__(/*! ./features/movedBlocksLinesFeature.js */ \"./node_modules/monaco-editor/esm/vs/editor/browser/widget/diffEditor/features/movedBlocksLinesFeature.js\");\n/* harmony import */ var _features_overviewRulerFeature_js__WEBPACK_IMPORTED_MODULE_18__ = __webpack_require__(/*! ./features/overviewRulerFeature.js */ \"./node_modules/monaco-editor/esm/vs/editor/browser/widget/diffEditor/features/overviewRulerFeature.js\");\n/* harmony import */ var _utils_js__WEBPACK_IMPORTED_MODULE_19__ = __webpack_require__(/*! ./utils.js */ \"./node_modules/monaco-editor/esm/vs/editor/browser/widget/diffEditor/utils.js\");\n/* harmony import */ var _common_core_position_js__WEBPACK_IMPORTED_MODULE_20__ = __webpack_require__(/*! ../../../common/core/position.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/core/position.js\");\n/* harmony import */ var _common_core_range_js__WEBPACK_IMPORTED_MODULE_21__ = __webpack_require__(/*! ../../../common/core/range.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/core/range.js\");\n/* harmony import */ var _common_editorCommon_js__WEBPACK_IMPORTED_MODULE_22__ = __webpack_require__(/*! ../../../common/editorCommon.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/editorCommon.js\");\n/* harmony import */ var _common_editorContextKeys_js__WEBPACK_IMPORTED_MODULE_23__ = __webpack_require__(/*! ../../../common/editorContextKeys.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/editorContextKeys.js\");\n/* harmony import */ var _platform_accessibilitySignal_browser_accessibilitySignalService_js__WEBPACK_IMPORTED_MODULE_24__ = __webpack_require__(/*! ../../../../platform/accessibilitySignal/browser/accessibilitySignalService.js */ \"./node_modules/monaco-editor/esm/vs/platform/accessibilitySignal/browser/accessibilitySignalService.js\");\n/* harmony import */ var _platform_contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_25__ = __webpack_require__(/*! ../../../../platform/contextkey/common/contextkey.js */ \"./node_modules/monaco-editor/esm/vs/platform/contextkey/common/contextkey.js\");\n/* harmony import */ var _platform_instantiation_common_instantiation_js__WEBPACK_IMPORTED_MODULE_26__ = __webpack_require__(/*! ../../../../platform/instantiation/common/instantiation.js */ \"./node_modules/monaco-editor/esm/vs/platform/instantiation/common/instantiation.js\");\n/* harmony import */ var _platform_instantiation_common_serviceCollection_js__WEBPACK_IMPORTED_MODULE_27__ = __webpack_require__(/*! ../../../../platform/instantiation/common/serviceCollection.js */ \"./node_modules/monaco-editor/esm/vs/platform/instantiation/common/serviceCollection.js\");\n/* harmony import */ var _platform_progress_common_progress_js__WEBPACK_IMPORTED_MODULE_28__ = __webpack_require__(/*! ../../../../platform/progress/common/progress.js */ \"./node_modules/monaco-editor/esm/vs/platform/progress/common/progress.js\");\n/* harmony import */ var _delegatingEditorImpl_js__WEBPACK_IMPORTED_MODULE_29__ = __webpack_require__(/*! ./delegatingEditorImpl.js */ \"./node_modules/monaco-editor/esm/vs/editor/browser/widget/diffEditor/delegatingEditorImpl.js\");\n/* harmony import */ var _components_diffEditorEditors_js__WEBPACK_IMPORTED_MODULE_30__ = __webpack_require__(/*! ./components/diffEditorEditors.js */ \"./node_modules/monaco-editor/esm/vs/editor/browser/widget/diffEditor/components/diffEditorEditors.js\");\n/* harmony import */ var _diffEditorOptions_js__WEBPACK_IMPORTED_MODULE_31__ = __webpack_require__(/*! ./diffEditorOptions.js */ \"./node_modules/monaco-editor/esm/vs/editor/browser/widget/diffEditor/diffEditorOptions.js\");\n/* harmony import */ var _diffEditorViewModel_js__WEBPACK_IMPORTED_MODULE_32__ = __webpack_require__(/*! ./diffEditorViewModel.js */ \"./node_modules/monaco-editor/esm/vs/editor/browser/widget/diffEditor/diffEditorViewModel.js\");\n/* harmony import */ var _features_revertButtonsFeature_js__WEBPACK_IMPORTED_MODULE_33__ = __webpack_require__(/*! ./features/revertButtonsFeature.js */ \"./node_modules/monaco-editor/esm/vs/editor/browser/widget/diffEditor/features/revertButtonsFeature.js\");\nvar __decorate = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\n return c > 3 && r && Object.defineProperty(target, key, r), r;\n};\nvar __param = (undefined && undefined.__param) || function (paramIndex, decorator) {\n return function (target, key) { decorator(target, key, paramIndex); }\n};\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlet DiffEditorWidget = class DiffEditorWidget extends _delegatingEditorImpl_js__WEBPACK_IMPORTED_MODULE_29__.DelegatingEditor {\n get onDidContentSizeChange() { return this._editors.onDidContentSizeChange; }\n constructor(_domElement, options, codeEditorWidgetOptions, _parentContextKeyService, _parentInstantiationService, codeEditorService, _accessibilitySignalService, _editorProgressService) {\n var _a;\n super();\n this._domElement = _domElement;\n this._parentContextKeyService = _parentContextKeyService;\n this._parentInstantiationService = _parentInstantiationService;\n this._accessibilitySignalService = _accessibilitySignalService;\n this._editorProgressService = _editorProgressService;\n this.elements = (0,_base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.h)('div.monaco-diff-editor.side-by-side', { style: { position: 'relative', height: '100%' } }, [\n (0,_base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.h)('div.noModificationsOverlay@overlay', { style: { position: 'absolute', height: '100%', visibility: 'hidden', } }, [(0,_base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.$)('span', {}, 'No Changes')]),\n (0,_base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.h)('div.editor.original@original', { style: { position: 'absolute', height: '100%' } }),\n (0,_base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.h)('div.editor.modified@modified', { style: { position: 'absolute', height: '100%' } }),\n (0,_base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.h)('div.accessibleDiffViewer@accessibleDiffViewer', { style: { position: 'absolute', height: '100%' } }),\n ]);\n this._diffModel = (0,_base_common_observable_js__WEBPACK_IMPORTED_MODULE_5__.observableValue)(this, undefined);\n this._shouldDisposeDiffModel = false;\n this.onDidChangeModel = _base_common_event_js__WEBPACK_IMPORTED_MODULE_3__.Event.fromObservableLight(this._diffModel);\n this._contextKeyService = this._register(this._parentContextKeyService.createScoped(this._domElement));\n this._instantiationService = this._parentInstantiationService.createChild(new _platform_instantiation_common_serviceCollection_js__WEBPACK_IMPORTED_MODULE_27__.ServiceCollection([_platform_contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_25__.IContextKeyService, this._contextKeyService]));\n this._boundarySashes = (0,_base_common_observable_js__WEBPACK_IMPORTED_MODULE_5__.observableValue)(this, undefined);\n this._accessibleDiffViewerShouldBeVisible = (0,_base_common_observable_js__WEBPACK_IMPORTED_MODULE_5__.observableValue)(this, false);\n this._accessibleDiffViewerVisible = (0,_base_common_observable_js__WEBPACK_IMPORTED_MODULE_5__.derived)(this, reader => this._options.onlyShowAccessibleDiffViewer.read(reader)\n ? true\n : this._accessibleDiffViewerShouldBeVisible.read(reader));\n this._movedBlocksLinesPart = (0,_base_common_observable_js__WEBPACK_IMPORTED_MODULE_5__.observableValue)(this, undefined);\n this._layoutInfo = (0,_base_common_observable_js__WEBPACK_IMPORTED_MODULE_5__.derived)(this, reader => {\n var _a, _b, _c, _d, _e;\n const width = this._rootSizeObserver.width.read(reader);\n const height = this._rootSizeObserver.height.read(reader);\n const sashLeft = (_a = this._sash.read(reader)) === null || _a === void 0 ? void 0 : _a.sashLeft.read(reader);\n const originalWidth = sashLeft !== null && sashLeft !== void 0 ? sashLeft : Math.max(5, this._editors.original.getLayoutInfo().decorationsLeft);\n const modifiedWidth = width - originalWidth - ((_c = (_b = this._overviewRulerPart.read(reader)) === null || _b === void 0 ? void 0 : _b.width) !== null && _c !== void 0 ? _c : 0);\n const movedBlocksLinesWidth = (_e = (_d = this._movedBlocksLinesPart.read(reader)) === null || _d === void 0 ? void 0 : _d.width.read(reader)) !== null && _e !== void 0 ? _e : 0;\n const originalWidthWithoutMovedBlockLines = originalWidth - movedBlocksLinesWidth;\n this.elements.original.style.width = originalWidthWithoutMovedBlockLines + 'px';\n this.elements.original.style.left = '0px';\n this.elements.modified.style.width = modifiedWidth + 'px';\n this.elements.modified.style.left = originalWidth + 'px';\n this._editors.original.layout({ width: originalWidthWithoutMovedBlockLines, height }, true);\n this._editors.modified.layout({ width: modifiedWidth, height }, true);\n return {\n modifiedEditor: this._editors.modified.getLayoutInfo(),\n originalEditor: this._editors.original.getLayoutInfo(),\n };\n });\n this._diffValue = this._diffModel.map((m, r) => m === null || m === void 0 ? void 0 : m.diff.read(r));\n this.onDidUpdateDiff = _base_common_event_js__WEBPACK_IMPORTED_MODULE_3__.Event.fromObservableLight(this._diffValue);\n codeEditorService.willCreateDiffEditor();\n this._contextKeyService.createKey('isInDiffEditor', true);\n this._domElement.appendChild(this.elements.root);\n this._register((0,_base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_4__.toDisposable)(() => this._domElement.removeChild(this.elements.root)));\n this._rootSizeObserver = this._register(new _utils_js__WEBPACK_IMPORTED_MODULE_19__.ObservableElementSizeObserver(this.elements.root, options.dimension));\n this._rootSizeObserver.setAutomaticLayout((_a = options.automaticLayout) !== null && _a !== void 0 ? _a : false);\n this._options = new _diffEditorOptions_js__WEBPACK_IMPORTED_MODULE_31__.DiffEditorOptions(options);\n this._register((0,_base_common_observable_js__WEBPACK_IMPORTED_MODULE_5__.autorun)(reader => {\n this._options.setWidth(this._rootSizeObserver.width.read(reader));\n }));\n this._contextKeyService.createKey(_common_editorContextKeys_js__WEBPACK_IMPORTED_MODULE_23__.EditorContextKeys.isEmbeddedDiffEditor.key, false);\n this._register((0,_utils_js__WEBPACK_IMPORTED_MODULE_19__.bindContextKey)(_common_editorContextKeys_js__WEBPACK_IMPORTED_MODULE_23__.EditorContextKeys.isEmbeddedDiffEditor, this._contextKeyService, reader => this._options.isInEmbeddedEditor.read(reader)));\n this._register((0,_utils_js__WEBPACK_IMPORTED_MODULE_19__.bindContextKey)(_common_editorContextKeys_js__WEBPACK_IMPORTED_MODULE_23__.EditorContextKeys.comparingMovedCode, this._contextKeyService, reader => { var _a; return !!((_a = this._diffModel.read(reader)) === null || _a === void 0 ? void 0 : _a.movedTextToCompare.read(reader)); }));\n this._register((0,_utils_js__WEBPACK_IMPORTED_MODULE_19__.bindContextKey)(_common_editorContextKeys_js__WEBPACK_IMPORTED_MODULE_23__.EditorContextKeys.diffEditorRenderSideBySideInlineBreakpointReached, this._contextKeyService, reader => this._options.couldShowInlineViewBecauseOfSize.read(reader)));\n this._register((0,_utils_js__WEBPACK_IMPORTED_MODULE_19__.bindContextKey)(_common_editorContextKeys_js__WEBPACK_IMPORTED_MODULE_23__.EditorContextKeys.hasChanges, this._contextKeyService, reader => { var _a, _b, _c; return ((_c = (_b = (_a = this._diffModel.read(reader)) === null || _a === void 0 ? void 0 : _a.diff.read(reader)) === null || _b === void 0 ? void 0 : _b.mappings.length) !== null && _c !== void 0 ? _c : 0) > 0; }));\n this._editors = this._register(this._instantiationService.createInstance(_components_diffEditorEditors_js__WEBPACK_IMPORTED_MODULE_30__.DiffEditorEditors, this.elements.original, this.elements.modified, this._options, codeEditorWidgetOptions, (i, c, o, o2) => this._createInnerEditor(i, c, o, o2)));\n this._overviewRulerPart = (0,_base_common_observableInternal_derived_js__WEBPACK_IMPORTED_MODULE_6__.derivedDisposable)(this, reader => !this._options.renderOverviewRuler.read(reader)\n ? undefined\n : this._instantiationService.createInstance((0,_utils_js__WEBPACK_IMPORTED_MODULE_19__.readHotReloadableExport)(_features_overviewRulerFeature_js__WEBPACK_IMPORTED_MODULE_18__.OverviewRulerFeature, reader), this._editors, this.elements.root, this._diffModel, this._rootSizeObserver.width, this._rootSizeObserver.height, this._layoutInfo.map(i => i.modifiedEditor))).recomputeInitiallyAndOnChange(this._store);\n this._sash = (0,_base_common_observableInternal_derived_js__WEBPACK_IMPORTED_MODULE_6__.derivedDisposable)(this, reader => {\n const showSash = this._options.renderSideBySide.read(reader);\n this.elements.root.classList.toggle('side-by-side', showSash);\n return !showSash ? undefined : new _components_diffEditorSash_js__WEBPACK_IMPORTED_MODULE_14__.DiffEditorSash(this._options, this.elements.root, {\n height: this._rootSizeObserver.height,\n width: this._rootSizeObserver.width.map((w, reader) => { var _a, _b; return w - ((_b = (_a = this._overviewRulerPart.read(reader)) === null || _a === void 0 ? void 0 : _a.width) !== null && _b !== void 0 ? _b : 0); }),\n }, this._boundarySashes);\n }).recomputeInitiallyAndOnChange(this._store);\n const unchangedRangesFeature = (0,_base_common_observableInternal_derived_js__WEBPACK_IMPORTED_MODULE_6__.derivedDisposable)(this, reader => /** @description UnchangedRangesFeature */ this._instantiationService.createInstance((0,_utils_js__WEBPACK_IMPORTED_MODULE_19__.readHotReloadableExport)(_features_hideUnchangedRegionsFeature_js__WEBPACK_IMPORTED_MODULE_15__.HideUnchangedRegionsFeature, reader), this._editors, this._diffModel, this._options)).recomputeInitiallyAndOnChange(this._store);\n (0,_base_common_observableInternal_derived_js__WEBPACK_IMPORTED_MODULE_6__.derivedDisposable)(this, reader => /** @description DiffEditorDecorations */ this._instantiationService.createInstance((0,_utils_js__WEBPACK_IMPORTED_MODULE_19__.readHotReloadableExport)(_components_diffEditorDecorations_js__WEBPACK_IMPORTED_MODULE_13__.DiffEditorDecorations, reader), this._editors, this._diffModel, this._options, this)).recomputeInitiallyAndOnChange(this._store);\n const origViewZoneIdsToIgnore = new Set();\n const modViewZoneIdsToIgnore = new Set();\n let isUpdatingViewZones = false;\n const viewZoneManager = (0,_base_common_observableInternal_derived_js__WEBPACK_IMPORTED_MODULE_6__.derivedDisposable)(this, reader => /** @description ViewZoneManager */ this._instantiationService.createInstance((0,_utils_js__WEBPACK_IMPORTED_MODULE_19__.readHotReloadableExport)(_components_diffEditorViewZones_diffEditorViewZones_js__WEBPACK_IMPORTED_MODULE_16__.DiffEditorViewZones, reader), (0,_base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.getWindow)(this._domElement), this._editors, this._diffModel, this._options, this, () => isUpdatingViewZones || unchangedRangesFeature.get().isUpdatingHiddenAreas, origViewZoneIdsToIgnore, modViewZoneIdsToIgnore)).recomputeInitiallyAndOnChange(this._store);\n const originalViewZones = (0,_base_common_observable_js__WEBPACK_IMPORTED_MODULE_5__.derived)(this, (reader) => {\n const orig = viewZoneManager.read(reader).viewZones.read(reader).orig;\n const orig2 = unchangedRangesFeature.read(reader).viewZones.read(reader).origViewZones;\n return orig.concat(orig2);\n });\n const modifiedViewZones = (0,_base_common_observable_js__WEBPACK_IMPORTED_MODULE_5__.derived)(this, (reader) => {\n const mod = viewZoneManager.read(reader).viewZones.read(reader).mod;\n const mod2 = unchangedRangesFeature.read(reader).viewZones.read(reader).modViewZones;\n return mod.concat(mod2);\n });\n this._register((0,_utils_js__WEBPACK_IMPORTED_MODULE_19__.applyViewZones)(this._editors.original, originalViewZones, isUpdatingOrigViewZones => {\n isUpdatingViewZones = isUpdatingOrigViewZones;\n }, origViewZoneIdsToIgnore));\n let scrollState;\n this._register((0,_utils_js__WEBPACK_IMPORTED_MODULE_19__.applyViewZones)(this._editors.modified, modifiedViewZones, isUpdatingModViewZones => {\n isUpdatingViewZones = isUpdatingModViewZones;\n if (isUpdatingViewZones) {\n scrollState = _stableEditorScroll_js__WEBPACK_IMPORTED_MODULE_10__.StableEditorScrollState.capture(this._editors.modified);\n }\n else {\n scrollState === null || scrollState === void 0 ? void 0 : scrollState.restore(this._editors.modified);\n scrollState = undefined;\n }\n }, modViewZoneIdsToIgnore));\n this._accessibleDiffViewer = (0,_base_common_observableInternal_derived_js__WEBPACK_IMPORTED_MODULE_6__.derivedDisposable)(this, reader => this._instantiationService.createInstance((0,_utils_js__WEBPACK_IMPORTED_MODULE_19__.readHotReloadableExport)(_components_accessibleDiffViewer_js__WEBPACK_IMPORTED_MODULE_12__.AccessibleDiffViewer, reader), this.elements.accessibleDiffViewer, this._accessibleDiffViewerVisible, (visible, tx) => this._accessibleDiffViewerShouldBeVisible.set(visible, tx), this._options.onlyShowAccessibleDiffViewer.map(v => !v), this._rootSizeObserver.width, this._rootSizeObserver.height, this._diffModel.map((m, r) => { var _a; return (_a = m === null || m === void 0 ? void 0 : m.diff.read(r)) === null || _a === void 0 ? void 0 : _a.mappings.map(m => m.lineRangeMapping); }), new _components_accessibleDiffViewer_js__WEBPACK_IMPORTED_MODULE_12__.AccessibleDiffViewerModelFromEditors(this._editors))).recomputeInitiallyAndOnChange(this._store);\n const visibility = this._accessibleDiffViewerVisible.map(v => v ? 'hidden' : 'visible');\n this._register((0,_utils_js__WEBPACK_IMPORTED_MODULE_19__.applyStyle)(this.elements.modified, { visibility }));\n this._register((0,_utils_js__WEBPACK_IMPORTED_MODULE_19__.applyStyle)(this.elements.original, { visibility }));\n this._createDiffEditorContributions();\n codeEditorService.addDiffEditor(this);\n this._register((0,_base_common_observable_js__WEBPACK_IMPORTED_MODULE_5__.recomputeInitiallyAndOnChange)(this._layoutInfo));\n (0,_base_common_observableInternal_derived_js__WEBPACK_IMPORTED_MODULE_6__.derivedDisposable)(this, reader => /** @description MovedBlocksLinesPart */ new ((0,_utils_js__WEBPACK_IMPORTED_MODULE_19__.readHotReloadableExport)(_features_movedBlocksLinesFeature_js__WEBPACK_IMPORTED_MODULE_17__.MovedBlocksLinesFeature, reader))(this.elements.root, this._diffModel, this._layoutInfo.map(i => i.originalEditor), this._layoutInfo.map(i => i.modifiedEditor), this._editors)).recomputeInitiallyAndOnChange(this._store, value => {\n // This is to break the layout info <-> moved blocks lines part dependency cycle.\n this._movedBlocksLinesPart.set(value, undefined);\n });\n this._register((0,_utils_js__WEBPACK_IMPORTED_MODULE_19__.applyStyle)(this.elements.overlay, {\n width: this._layoutInfo.map((i, r) => i.originalEditor.width + (this._options.renderSideBySide.read(r) ? 0 : i.modifiedEditor.width)),\n visibility: (0,_base_common_observable_js__WEBPACK_IMPORTED_MODULE_5__.derived)(reader => /** @description visibility */ {\n var _a, _b;\n return (this._options.hideUnchangedRegions.read(reader) && ((_b = (_a = this._diffModel.read(reader)) === null || _a === void 0 ? void 0 : _a.diff.read(reader)) === null || _b === void 0 ? void 0 : _b.mappings.length) === 0)\n ? 'visible' : 'hidden';\n }),\n }));\n this._register(_base_common_event_js__WEBPACK_IMPORTED_MODULE_3__.Event.runAndSubscribe(this._editors.modified.onDidChangeCursorPosition, (e) => {\n var _a, _b;\n if ((e === null || e === void 0 ? void 0 : e.reason) === 3 /* CursorChangeReason.Explicit */) {\n const diff = (_b = (_a = this._diffModel.get()) === null || _a === void 0 ? void 0 : _a.diff.get()) === null || _b === void 0 ? void 0 : _b.mappings.find(m => m.lineRangeMapping.modified.contains(e.position.lineNumber));\n if (diff === null || diff === void 0 ? void 0 : diff.lineRangeMapping.modified.isEmpty) {\n this._accessibilitySignalService.playSignal(_platform_accessibilitySignal_browser_accessibilitySignalService_js__WEBPACK_IMPORTED_MODULE_24__.AccessibilitySignal.diffLineDeleted, { source: 'diffEditor.cursorPositionChanged' });\n }\n else if (diff === null || diff === void 0 ? void 0 : diff.lineRangeMapping.original.isEmpty) {\n this._accessibilitySignalService.playSignal(_platform_accessibilitySignal_browser_accessibilitySignalService_js__WEBPACK_IMPORTED_MODULE_24__.AccessibilitySignal.diffLineInserted, { source: 'diffEditor.cursorPositionChanged' });\n }\n else if (diff) {\n this._accessibilitySignalService.playSignal(_platform_accessibilitySignal_browser_accessibilitySignalService_js__WEBPACK_IMPORTED_MODULE_24__.AccessibilitySignal.diffLineModified, { source: 'diffEditor.cursorPositionChanged' });\n }\n }\n }));\n const isInitializingDiff = this._diffModel.map(this, (m, reader) => {\n /** @isInitializingDiff isDiffUpToDate */\n if (!m) {\n return undefined;\n }\n return m.diff.read(reader) === undefined && !m.isDiffUpToDate.read(reader);\n });\n this._register((0,_base_common_observable_js__WEBPACK_IMPORTED_MODULE_5__.autorunWithStore)((reader, store) => {\n /** @description DiffEditorWidgetHelper.ShowProgress */\n if (isInitializingDiff.read(reader) === true) {\n const r = this._editorProgressService.show(true, 1000);\n store.add((0,_base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_4__.toDisposable)(() => r.done()));\n }\n }));\n this._register((0,_base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_4__.toDisposable)(() => {\n var _a;\n if (this._shouldDisposeDiffModel) {\n (_a = this._diffModel.get()) === null || _a === void 0 ? void 0 : _a.dispose();\n }\n }));\n this._register(new _features_revertButtonsFeature_js__WEBPACK_IMPORTED_MODULE_33__.RevertButtonsFeature(this._editors, this._diffModel, this._options, this));\n }\n _createInnerEditor(instantiationService, container, options, editorWidgetOptions) {\n const editor = instantiationService.createInstance(_codeEditorWidget_js__WEBPACK_IMPORTED_MODULE_11__.CodeEditorWidget, container, options, editorWidgetOptions);\n return editor;\n }\n _createDiffEditorContributions() {\n const contributions = _editorExtensions_js__WEBPACK_IMPORTED_MODULE_8__.EditorExtensionsRegistry.getDiffEditorContributions();\n for (const desc of contributions) {\n try {\n this._register(this._instantiationService.createInstance(desc.ctor, this));\n }\n catch (err) {\n (0,_base_common_errors_js__WEBPACK_IMPORTED_MODULE_2__.onUnexpectedError)(err);\n }\n }\n }\n get _targetEditor() { return this._editors.modified; }\n getEditorType() { return _common_editorCommon_js__WEBPACK_IMPORTED_MODULE_22__.EditorType.IDiffEditor; }\n layout(dimension) {\n this._rootSizeObserver.observe(dimension);\n }\n hasTextFocus() { return this._editors.original.hasTextFocus() || this._editors.modified.hasTextFocus(); }\n saveViewState() {\n var _a;\n const originalViewState = this._editors.original.saveViewState();\n const modifiedViewState = this._editors.modified.saveViewState();\n return {\n original: originalViewState,\n modified: modifiedViewState,\n modelState: (_a = this._diffModel.get()) === null || _a === void 0 ? void 0 : _a.serializeState(),\n };\n }\n restoreViewState(s) {\n var _a;\n if (s && s.original && s.modified) {\n const diffEditorState = s;\n this._editors.original.restoreViewState(diffEditorState.original);\n this._editors.modified.restoreViewState(diffEditorState.modified);\n if (diffEditorState.modelState) {\n (_a = this._diffModel.get()) === null || _a === void 0 ? void 0 : _a.restoreSerializedState(diffEditorState.modelState);\n }\n }\n }\n handleInitialized() {\n this._editors.original.handleInitialized();\n this._editors.modified.handleInitialized();\n }\n createViewModel(model) {\n return this._instantiationService.createInstance(_diffEditorViewModel_js__WEBPACK_IMPORTED_MODULE_32__.DiffEditorViewModel, model, this._options);\n }\n getModel() { var _a, _b; return (_b = (_a = this._diffModel.get()) === null || _a === void 0 ? void 0 : _a.model) !== null && _b !== void 0 ? _b : null; }\n setModel(model, tx) {\n if (!model && this._diffModel.get()) {\n // Transitioning from a model to no-model\n this._accessibleDiffViewer.get().close();\n }\n const vm = model ? ('model' in model) ? { model, shouldDispose: false } : { model: this.createViewModel(model), shouldDispose: true } : undefined;\n if (this._diffModel.get() !== (vm === null || vm === void 0 ? void 0 : vm.model)) {\n (0,_base_common_observable_js__WEBPACK_IMPORTED_MODULE_5__.subtransaction)(tx, tx => {\n var _a;\n /** @description DiffEditorWidget.setModel */\n _base_common_observable_js__WEBPACK_IMPORTED_MODULE_5__.observableFromEvent.batchEventsGlobally(tx, () => {\n this._editors.original.setModel(vm ? vm.model.model.original : null);\n this._editors.modified.setModel(vm ? vm.model.model.modified : null);\n });\n const prevValue = this._diffModel.get();\n const shouldDispose = this._shouldDisposeDiffModel;\n this._shouldDisposeDiffModel = (_a = vm === null || vm === void 0 ? void 0 : vm.shouldDispose) !== null && _a !== void 0 ? _a : false;\n this._diffModel.set(vm === null || vm === void 0 ? void 0 : vm.model, tx);\n if (shouldDispose) {\n prevValue === null || prevValue === void 0 ? void 0 : prevValue.dispose();\n }\n });\n }\n }\n /**\n * @param changedOptions Only has values for top-level options that have actually changed.\n */\n updateOptions(changedOptions) {\n this._options.updateOptions(changedOptions);\n }\n getContainerDomNode() { return this._domElement; }\n getOriginalEditor() { return this._editors.original; }\n getModifiedEditor() { return this._editors.modified; }\n /**\n * @deprecated Use `this.getDiffComputationResult().changes2` instead.\n */\n getLineChanges() {\n var _a;\n const diffState = (_a = this._diffModel.get()) === null || _a === void 0 ? void 0 : _a.diff.get();\n if (!diffState) {\n return null;\n }\n return toLineChanges(diffState);\n }\n revert(diff) {\n if (diff.innerChanges) {\n this.revertRangeMappings(diff.innerChanges);\n return;\n }\n const model = this._diffModel.get();\n if (!model || !model.isDiffUpToDate.get()) {\n return;\n }\n this._editors.modified.executeEdits('diffEditor', [\n {\n range: diff.modified.toExclusiveRange(),\n text: model.model.original.getValueInRange(diff.original.toExclusiveRange())\n }\n ]);\n }\n revertRangeMappings(diffs) {\n const model = this._diffModel.get();\n if (!model || !model.isDiffUpToDate.get()) {\n return;\n }\n const changes = diffs.map(c => ({\n range: c.modifiedRange,\n text: model.model.original.getValueInRange(c.originalRange)\n }));\n this._editors.modified.executeEdits('diffEditor', changes);\n }\n _goTo(diff) {\n this._editors.modified.setPosition(new _common_core_position_js__WEBPACK_IMPORTED_MODULE_20__.Position(diff.lineRangeMapping.modified.startLineNumber, 1));\n this._editors.modified.revealRangeInCenter(diff.lineRangeMapping.modified.toExclusiveRange());\n }\n goToDiff(target) {\n var _a, _b, _c, _d;\n const diffs = (_b = (_a = this._diffModel.get()) === null || _a === void 0 ? void 0 : _a.diff.get()) === null || _b === void 0 ? void 0 : _b.mappings;\n if (!diffs || diffs.length === 0) {\n return;\n }\n const curLineNumber = this._editors.modified.getPosition().lineNumber;\n let diff;\n if (target === 'next') {\n diff = (_c = diffs.find(d => d.lineRangeMapping.modified.startLineNumber > curLineNumber)) !== null && _c !== void 0 ? _c : diffs[0];\n }\n else {\n diff = (_d = (0,_base_common_arraysFind_js__WEBPACK_IMPORTED_MODULE_1__.findLast)(diffs, d => d.lineRangeMapping.modified.startLineNumber < curLineNumber)) !== null && _d !== void 0 ? _d : diffs[diffs.length - 1];\n }\n this._goTo(diff);\n if (diff.lineRangeMapping.modified.isEmpty) {\n this._accessibilitySignalService.playSignal(_platform_accessibilitySignal_browser_accessibilitySignalService_js__WEBPACK_IMPORTED_MODULE_24__.AccessibilitySignal.diffLineDeleted, { source: 'diffEditor.goToDiff' });\n }\n else if (diff.lineRangeMapping.original.isEmpty) {\n this._accessibilitySignalService.playSignal(_platform_accessibilitySignal_browser_accessibilitySignalService_js__WEBPACK_IMPORTED_MODULE_24__.AccessibilitySignal.diffLineInserted, { source: 'diffEditor.goToDiff' });\n }\n else if (diff) {\n this._accessibilitySignalService.playSignal(_platform_accessibilitySignal_browser_accessibilitySignalService_js__WEBPACK_IMPORTED_MODULE_24__.AccessibilitySignal.diffLineModified, { source: 'diffEditor.goToDiff' });\n }\n }\n revealFirstDiff() {\n const diffModel = this._diffModel.get();\n if (!diffModel) {\n return;\n }\n // wait for the diff computation to finish\n this.waitForDiff().then(() => {\n var _a;\n const diffs = (_a = diffModel.diff.get()) === null || _a === void 0 ? void 0 : _a.mappings;\n if (!diffs || diffs.length === 0) {\n return;\n }\n this._goTo(diffs[0]);\n });\n }\n accessibleDiffViewerNext() { this._accessibleDiffViewer.get().next(); }\n accessibleDiffViewerPrev() { this._accessibleDiffViewer.get().prev(); }\n async waitForDiff() {\n const diffModel = this._diffModel.get();\n if (!diffModel) {\n return;\n }\n await diffModel.waitForDiff();\n }\n mapToOtherSide() {\n var _a, _b;\n const isModifiedFocus = this._editors.modified.hasWidgetFocus();\n const source = isModifiedFocus ? this._editors.modified : this._editors.original;\n const destination = isModifiedFocus ? this._editors.original : this._editors.modified;\n let destinationSelection;\n const sourceSelection = source.getSelection();\n if (sourceSelection) {\n const mappings = (_b = (_a = this._diffModel.get()) === null || _a === void 0 ? void 0 : _a.diff.get()) === null || _b === void 0 ? void 0 : _b.mappings.map(m => isModifiedFocus ? m.lineRangeMapping.flip() : m.lineRangeMapping);\n if (mappings) {\n const newRange1 = (0,_utils_js__WEBPACK_IMPORTED_MODULE_19__.translatePosition)(sourceSelection.getStartPosition(), mappings);\n const newRange2 = (0,_utils_js__WEBPACK_IMPORTED_MODULE_19__.translatePosition)(sourceSelection.getEndPosition(), mappings);\n destinationSelection = _common_core_range_js__WEBPACK_IMPORTED_MODULE_21__.Range.plusRange(newRange1, newRange2);\n }\n }\n return { destination, destinationSelection };\n }\n switchSide() {\n const { destination, destinationSelection } = this.mapToOtherSide();\n destination.focus();\n if (destinationSelection) {\n destination.setSelection(destinationSelection);\n }\n }\n exitCompareMove() {\n const model = this._diffModel.get();\n if (!model) {\n return;\n }\n model.movedTextToCompare.set(undefined, undefined);\n }\n collapseAllUnchangedRegions() {\n var _a;\n const unchangedRegions = (_a = this._diffModel.get()) === null || _a === void 0 ? void 0 : _a.unchangedRegions.get();\n if (!unchangedRegions) {\n return;\n }\n (0,_base_common_observable_js__WEBPACK_IMPORTED_MODULE_5__.transaction)(tx => {\n for (const region of unchangedRegions) {\n region.collapseAll(tx);\n }\n });\n }\n showAllUnchangedRegions() {\n var _a;\n const unchangedRegions = (_a = this._diffModel.get()) === null || _a === void 0 ? void 0 : _a.unchangedRegions.get();\n if (!unchangedRegions) {\n return;\n }\n (0,_base_common_observable_js__WEBPACK_IMPORTED_MODULE_5__.transaction)(tx => {\n for (const region of unchangedRegions) {\n region.showAll(tx);\n }\n });\n }\n};\nDiffEditorWidget = __decorate([\n __param(3, _platform_contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_25__.IContextKeyService),\n __param(4, _platform_instantiation_common_instantiation_js__WEBPACK_IMPORTED_MODULE_26__.IInstantiationService),\n __param(5, _services_codeEditorService_js__WEBPACK_IMPORTED_MODULE_9__.ICodeEditorService),\n __param(6, _platform_accessibilitySignal_browser_accessibilitySignalService_js__WEBPACK_IMPORTED_MODULE_24__.IAccessibilitySignalService),\n __param(7, _platform_progress_common_progress_js__WEBPACK_IMPORTED_MODULE_28__.IEditorProgressService)\n], DiffEditorWidget);\n\nfunction toLineChanges(state) {\n return state.mappings.map(x => {\n const m = x.lineRangeMapping;\n let originalStartLineNumber;\n let originalEndLineNumber;\n let modifiedStartLineNumber;\n let modifiedEndLineNumber;\n let innerChanges = m.innerChanges;\n if (m.original.isEmpty) {\n // Insertion\n originalStartLineNumber = m.original.startLineNumber - 1;\n originalEndLineNumber = 0;\n innerChanges = undefined;\n }\n else {\n originalStartLineNumber = m.original.startLineNumber;\n originalEndLineNumber = m.original.endLineNumberExclusive - 1;\n }\n if (m.modified.isEmpty) {\n // Deletion\n modifiedStartLineNumber = m.modified.startLineNumber - 1;\n modifiedEndLineNumber = 0;\n innerChanges = undefined;\n }\n else {\n modifiedStartLineNumber = m.modified.startLineNumber;\n modifiedEndLineNumber = m.modified.endLineNumberExclusive - 1;\n }\n return {\n originalStartLineNumber,\n originalEndLineNumber,\n modifiedStartLineNumber,\n modifiedEndLineNumber,\n charChanges: innerChanges === null || innerChanges === void 0 ? void 0 : innerChanges.map(m => ({\n originalStartLineNumber: m.originalRange.startLineNumber,\n originalStartColumn: m.originalRange.startColumn,\n originalEndLineNumber: m.originalRange.endLineNumber,\n originalEndColumn: m.originalRange.endColumn,\n modifiedStartLineNumber: m.modifiedRange.startLineNumber,\n modifiedStartColumn: m.modifiedRange.startColumn,\n modifiedEndLineNumber: m.modifiedRange.endLineNumber,\n modifiedEndColumn: m.modifiedRange.endColumn,\n }))\n };\n });\n}\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/browser/widget/diffEditor/diffEditorWidget.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/browser/widget/diffEditor/diffProviderFactoryService.js":
/*!**********************************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/browser/widget/diffEditor/diffProviderFactoryService.js ***!
\**********************************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ IDiffProviderFactoryService: () => (/* binding */ IDiffProviderFactoryService),\n/* harmony export */ WorkerBasedDiffProviderFactoryService: () => (/* binding */ WorkerBasedDiffProviderFactoryService),\n/* harmony export */ WorkerBasedDocumentDiffProvider: () => (/* binding */ WorkerBasedDocumentDiffProvider)\n/* harmony export */ });\n/* harmony import */ var _platform_instantiation_common_extensions_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../../platform/instantiation/common/extensions.js */ \"./node_modules/monaco-editor/esm/vs/platform/instantiation/common/extensions.js\");\n/* harmony import */ var _platform_instantiation_common_instantiation_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../platform/instantiation/common/instantiation.js */ \"./node_modules/monaco-editor/esm/vs/platform/instantiation/common/instantiation.js\");\n/* harmony import */ var _base_common_event_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../../base/common/event.js */ \"./node_modules/monaco-editor/esm/vs/base/common/event.js\");\n/* harmony import */ var _base_common_stopwatch_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../../../base/common/stopwatch.js */ \"./node_modules/monaco-editor/esm/vs/base/common/stopwatch.js\");\n/* harmony import */ var _common_core_lineRange_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../../common/core/lineRange.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/core/lineRange.js\");\n/* harmony import */ var _common_diff_rangeMapping_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../../../common/diff/rangeMapping.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/diff/rangeMapping.js\");\n/* harmony import */ var _common_services_editorWorker_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../../../common/services/editorWorker.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/services/editorWorker.js\");\n/* harmony import */ var _platform_telemetry_common_telemetry_js__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ../../../../platform/telemetry/common/telemetry.js */ \"./node_modules/monaco-editor/esm/vs/platform/telemetry/common/telemetry.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\nvar __decorate = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\n return c > 3 && r && Object.defineProperty(target, key, r), r;\n};\nvar __param = (undefined && undefined.__param) || function (paramIndex, decorator) {\n return function (target, key) { decorator(target, key, paramIndex); }\n};\nvar WorkerBasedDocumentDiffProvider_1;\n\n\n\n\n\n\n\n\nconst IDiffProviderFactoryService = (0,_platform_instantiation_common_instantiation_js__WEBPACK_IMPORTED_MODULE_1__.createDecorator)('diffProviderFactoryService');\nlet WorkerBasedDiffProviderFactoryService = class WorkerBasedDiffProviderFactoryService {\n constructor(instantiationService) {\n this.instantiationService = instantiationService;\n }\n createDiffProvider(options) {\n return this.instantiationService.createInstance(WorkerBasedDocumentDiffProvider, options);\n }\n};\nWorkerBasedDiffProviderFactoryService = __decorate([\n __param(0, _platform_instantiation_common_instantiation_js__WEBPACK_IMPORTED_MODULE_1__.IInstantiationService)\n], WorkerBasedDiffProviderFactoryService);\n\n(0,_platform_instantiation_common_extensions_js__WEBPACK_IMPORTED_MODULE_0__.registerSingleton)(IDiffProviderFactoryService, WorkerBasedDiffProviderFactoryService, 1 /* InstantiationType.Delayed */);\nlet WorkerBasedDocumentDiffProvider = WorkerBasedDocumentDiffProvider_1 = class WorkerBasedDocumentDiffProvider {\n constructor(options, editorWorkerService, telemetryService) {\n this.editorWorkerService = editorWorkerService;\n this.telemetryService = telemetryService;\n this.onDidChangeEventEmitter = new _base_common_event_js__WEBPACK_IMPORTED_MODULE_2__.Emitter();\n this.onDidChange = this.onDidChangeEventEmitter.event;\n this.diffAlgorithm = 'advanced';\n this.diffAlgorithmOnDidChangeSubscription = undefined;\n this.setOptions(options);\n }\n dispose() {\n var _a;\n (_a = this.diffAlgorithmOnDidChangeSubscription) === null || _a === void 0 ? void 0 : _a.dispose();\n }\n async computeDiff(original, modified, options, cancellationToken) {\n var _a, _b;\n if (typeof this.diffAlgorithm !== 'string') {\n return this.diffAlgorithm.computeDiff(original, modified, options, cancellationToken);\n }\n // This significantly speeds up the case when the original file is empty\n if (original.getLineCount() === 1 && original.getLineMaxColumn(1) === 1) {\n if (modified.getLineCount() === 1 && modified.getLineMaxColumn(1) === 1) {\n return {\n changes: [],\n identical: true,\n quitEarly: false,\n moves: [],\n };\n }\n return {\n changes: [\n new _common_diff_rangeMapping_js__WEBPACK_IMPORTED_MODULE_5__.DetailedLineRangeMapping(new _common_core_lineRange_js__WEBPACK_IMPORTED_MODULE_4__.LineRange(1, 2), new _common_core_lineRange_js__WEBPACK_IMPORTED_MODULE_4__.LineRange(1, modified.getLineCount() + 1), [\n new _common_diff_rangeMapping_js__WEBPACK_IMPORTED_MODULE_5__.RangeMapping(original.getFullModelRange(), modified.getFullModelRange())\n ])\n ],\n identical: false,\n quitEarly: false,\n moves: [],\n };\n }\n const uriKey = JSON.stringify([original.uri.toString(), modified.uri.toString()]);\n const context = JSON.stringify([original.id, modified.id, original.getAlternativeVersionId(), modified.getAlternativeVersionId(), JSON.stringify(options)]);\n const c = WorkerBasedDocumentDiffProvider_1.diffCache.get(uriKey);\n if (c && c.context === context) {\n return c.result;\n }\n const sw = _base_common_stopwatch_js__WEBPACK_IMPORTED_MODULE_3__.StopWatch.create();\n const result = await this.editorWorkerService.computeDiff(original.uri, modified.uri, options, this.diffAlgorithm);\n const timeMs = sw.elapsed();\n this.telemetryService.publicLog2('diffEditor.computeDiff', {\n timeMs,\n timedOut: (_a = result === null || result === void 0 ? void 0 : result.quitEarly) !== null && _a !== void 0 ? _a : true,\n detectedMoves: options.computeMoves ? ((_b = result === null || result === void 0 ? void 0 : result.moves.length) !== null && _b !== void 0 ? _b : 0) : -1,\n });\n if (cancellationToken.isCancellationRequested) {\n // Text models might be disposed!\n return {\n changes: [],\n identical: false,\n quitEarly: true,\n moves: [],\n };\n }\n if (!result) {\n throw new Error('no diff result available');\n }\n // max 10 items in cache\n if (WorkerBasedDocumentDiffProvider_1.diffCache.size > 10) {\n WorkerBasedDocumentDiffProvider_1.diffCache.delete(WorkerBasedDocumentDiffProvider_1.diffCache.keys().next().value);\n }\n WorkerBasedDocumentDiffProvider_1.diffCache.set(uriKey, { result, context });\n return result;\n }\n setOptions(newOptions) {\n var _a;\n let didChange = false;\n if (newOptions.diffAlgorithm) {\n if (this.diffAlgorithm !== newOptions.diffAlgorithm) {\n (_a = this.diffAlgorithmOnDidChangeSubscription) === null || _a === void 0 ? void 0 : _a.dispose();\n this.diffAlgorithmOnDidChangeSubscription = undefined;\n this.diffAlgorithm = newOptions.diffAlgorithm;\n if (typeof newOptions.diffAlgorithm !== 'string') {\n this.diffAlgorithmOnDidChangeSubscription = newOptions.diffAlgorithm.onDidChange(() => this.onDidChangeEventEmitter.fire());\n }\n didChange = true;\n }\n }\n if (didChange) {\n this.onDidChangeEventEmitter.fire();\n }\n }\n};\nWorkerBasedDocumentDiffProvider.diffCache = new Map();\nWorkerBasedDocumentDiffProvider = WorkerBasedDocumentDiffProvider_1 = __decorate([\n __param(1, _common_services_editorWorker_js__WEBPACK_IMPORTED_MODULE_6__.IEditorWorkerService),\n __param(2, _platform_telemetry_common_telemetry_js__WEBPACK_IMPORTED_MODULE_7__.ITelemetryService)\n], WorkerBasedDocumentDiffProvider);\n\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/browser/widget/diffEditor/diffProviderFactoryService.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/browser/widget/diffEditor/features/hideUnchangedRegionsFeature.js":
/*!********************************************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/browser/widget/diffEditor/features/hideUnchangedRegionsFeature.js ***!
\********************************************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ HideUnchangedRegionsFeature: () => (/* binding */ HideUnchangedRegionsFeature)\n/* harmony export */ });\n/* harmony import */ var _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../../../base/browser/dom.js */ \"./node_modules/monaco-editor/esm/vs/base/browser/dom.js\");\n/* harmony import */ var _base_browser_ui_iconLabel_iconLabels_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../../base/browser/ui/iconLabel/iconLabels.js */ \"./node_modules/monaco-editor/esm/vs/base/browser/ui/iconLabel/iconLabels.js\");\n/* harmony import */ var _base_common_codicons_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../../../base/common/codicons.js */ \"./node_modules/monaco-editor/esm/vs/base/common/codicons.js\");\n/* harmony import */ var _base_common_htmlContent_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../../../../base/common/htmlContent.js */ \"./node_modules/monaco-editor/esm/vs/base/common/htmlContent.js\");\n/* harmony import */ var _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../../../../base/common/lifecycle.js */ \"./node_modules/monaco-editor/esm/vs/base/common/lifecycle.js\");\n/* harmony import */ var _base_common_observable_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../../../../../base/common/observable.js */ \"./node_modules/monaco-editor/esm/vs/base/common/observable.js\");\n/* harmony import */ var _base_common_observableInternal_derived_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../../../../../base/common/observableInternal/derived.js */ \"./node_modules/monaco-editor/esm/vs/base/common/observableInternal/derived.js\");\n/* harmony import */ var _base_common_themables_js__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ../../../../../base/common/themables.js */ \"./node_modules/monaco-editor/esm/vs/base/common/themables.js\");\n/* harmony import */ var _base_common_types_js__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ../../../../../base/common/types.js */ \"./node_modules/monaco-editor/esm/vs/base/common/types.js\");\n/* harmony import */ var _utils_js__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ../utils.js */ \"./node_modules/monaco-editor/esm/vs/editor/browser/widget/diffEditor/utils.js\");\n/* harmony import */ var _common_core_lineRange_js__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! ../../../../common/core/lineRange.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/core/lineRange.js\");\n/* harmony import */ var _common_core_position_js__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(/*! ../../../../common/core/position.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/core/position.js\");\n/* harmony import */ var _common_core_range_js__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(/*! ../../../../common/core/range.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/core/range.js\");\n/* harmony import */ var _common_languages_js__WEBPACK_IMPORTED_MODULE_13__ = __webpack_require__(/*! ../../../../common/languages.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/languages.js\");\n/* harmony import */ var _nls_js__WEBPACK_IMPORTED_MODULE_14__ = __webpack_require__(/*! ../../../../../nls.js */ \"./node_modules/monaco-editor/esm/vs/nls.js\");\n/* harmony import */ var _platform_instantiation_common_instantiation_js__WEBPACK_IMPORTED_MODULE_15__ = __webpack_require__(/*! ../../../../../platform/instantiation/common/instantiation.js */ \"./node_modules/monaco-editor/esm/vs/platform/instantiation/common/instantiation.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\nvar __decorate = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\n return c > 3 && r && Object.defineProperty(target, key, r), r;\n};\nvar __param = (undefined && undefined.__param) || function (paramIndex, decorator) {\n return function (target, key) { decorator(target, key, paramIndex); }\n};\nvar HideUnchangedRegionsFeature_1;\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n/**\n * Make sure to add the view zones to the editor!\n */\nlet HideUnchangedRegionsFeature = HideUnchangedRegionsFeature_1 = class HideUnchangedRegionsFeature extends _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_4__.Disposable {\n static setBreadcrumbsSourceFactory(factory) {\n this._breadcrumbsSourceFactory.set(factory, undefined);\n }\n get isUpdatingHiddenAreas() { return this._isUpdatingHiddenAreas; }\n constructor(_editors, _diffModel, _options, _instantiationService) {\n super();\n this._editors = _editors;\n this._diffModel = _diffModel;\n this._options = _options;\n this._instantiationService = _instantiationService;\n this._modifiedOutlineSource = (0,_base_common_observableInternal_derived_js__WEBPACK_IMPORTED_MODULE_6__.derivedDisposable)(this, (reader) => {\n const m = this._editors.modifiedModel.read(reader);\n const factory = HideUnchangedRegionsFeature_1._breadcrumbsSourceFactory.read(reader);\n return (!m || !factory) ? undefined : factory(m, this._instantiationService);\n });\n this._isUpdatingHiddenAreas = false;\n this._register(this._editors.original.onDidChangeCursorPosition(e => {\n if (e.reason === 3 /* CursorChangeReason.Explicit */) {\n const m = this._diffModel.get();\n (0,_base_common_observable_js__WEBPACK_IMPORTED_MODULE_5__.transaction)(tx => {\n for (const s of this._editors.original.getSelections() || []) {\n m === null || m === void 0 ? void 0 : m.ensureOriginalLineIsVisible(s.getStartPosition().lineNumber, 0 /* RevealPreference.FromCloserSide */, tx);\n m === null || m === void 0 ? void 0 : m.ensureOriginalLineIsVisible(s.getEndPosition().lineNumber, 0 /* RevealPreference.FromCloserSide */, tx);\n }\n });\n }\n }));\n this._register(this._editors.modified.onDidChangeCursorPosition(e => {\n if (e.reason === 3 /* CursorChangeReason.Explicit */) {\n const m = this._diffModel.get();\n (0,_base_common_observable_js__WEBPACK_IMPORTED_MODULE_5__.transaction)(tx => {\n for (const s of this._editors.modified.getSelections() || []) {\n m === null || m === void 0 ? void 0 : m.ensureModifiedLineIsVisible(s.getStartPosition().lineNumber, 0 /* RevealPreference.FromCloserSide */, tx);\n m === null || m === void 0 ? void 0 : m.ensureModifiedLineIsVisible(s.getEndPosition().lineNumber, 0 /* RevealPreference.FromCloserSide */, tx);\n }\n });\n }\n }));\n const unchangedRegions = this._diffModel.map((m, reader) => {\n var _a, _b;\n const regions = (_a = m === null || m === void 0 ? void 0 : m.unchangedRegions.read(reader)) !== null && _a !== void 0 ? _a : [];\n if (regions.length === 1 && regions[0].modifiedLineNumber === 1 && regions[0].lineCount === ((_b = this._editors.modifiedModel.read(reader)) === null || _b === void 0 ? void 0 : _b.getLineCount())) {\n return [];\n }\n return regions;\n });\n this.viewZones = (0,_base_common_observable_js__WEBPACK_IMPORTED_MODULE_5__.derivedWithStore)(this, (reader, store) => {\n /** @description view Zones */\n const modifiedOutlineSource = this._modifiedOutlineSource.read(reader);\n if (!modifiedOutlineSource) {\n return { origViewZones: [], modViewZones: [] };\n }\n const origViewZones = [];\n const modViewZones = [];\n const sideBySide = this._options.renderSideBySide.read(reader);\n const curUnchangedRegions = unchangedRegions.read(reader);\n for (const r of curUnchangedRegions) {\n if (r.shouldHideControls(reader)) {\n continue;\n }\n {\n const d = (0,_base_common_observable_js__WEBPACK_IMPORTED_MODULE_5__.derived)(this, reader => /** @description hiddenOriginalRangeStart */ r.getHiddenOriginalRange(reader).startLineNumber - 1);\n const origVz = new _utils_js__WEBPACK_IMPORTED_MODULE_9__.PlaceholderViewZone(d, 24);\n origViewZones.push(origVz);\n store.add(new CollapsedCodeOverlayWidget(this._editors.original, origVz, r, r.originalUnchangedRange, !sideBySide, modifiedOutlineSource, l => this._diffModel.get().ensureModifiedLineIsVisible(l, 2 /* RevealPreference.FromBottom */, undefined), this._options));\n }\n {\n const d = (0,_base_common_observable_js__WEBPACK_IMPORTED_MODULE_5__.derived)(this, reader => /** @description hiddenModifiedRangeStart */ r.getHiddenModifiedRange(reader).startLineNumber - 1);\n const modViewZone = new _utils_js__WEBPACK_IMPORTED_MODULE_9__.PlaceholderViewZone(d, 24);\n modViewZones.push(modViewZone);\n store.add(new CollapsedCodeOverlayWidget(this._editors.modified, modViewZone, r, r.modifiedUnchangedRange, false, modifiedOutlineSource, l => this._diffModel.get().ensureModifiedLineIsVisible(l, 2 /* RevealPreference.FromBottom */, undefined), this._options));\n }\n }\n return { origViewZones, modViewZones, };\n });\n const unchangedLinesDecoration = {\n description: 'unchanged lines',\n className: 'diff-unchanged-lines',\n isWholeLine: true,\n };\n const unchangedLinesDecorationShow = {\n description: 'Fold Unchanged',\n glyphMarginHoverMessage: new _base_common_htmlContent_js__WEBPACK_IMPORTED_MODULE_3__.MarkdownString(undefined, { isTrusted: true, supportThemeIcons: true })\n .appendMarkdown((0,_nls_js__WEBPACK_IMPORTED_MODULE_14__.localize)('foldUnchanged', 'Fold Unchanged Region')),\n glyphMarginClassName: 'fold-unchanged ' + _base_common_themables_js__WEBPACK_IMPORTED_MODULE_7__.ThemeIcon.asClassName(_base_common_codicons_js__WEBPACK_IMPORTED_MODULE_2__.Codicon.fold),\n zIndex: 10001,\n };\n this._register((0,_utils_js__WEBPACK_IMPORTED_MODULE_9__.applyObservableDecorations)(this._editors.original, (0,_base_common_observable_js__WEBPACK_IMPORTED_MODULE_5__.derived)(this, reader => {\n /** @description decorations */\n const curUnchangedRegions = unchangedRegions.read(reader);\n const result = curUnchangedRegions.map(r => ({\n range: r.originalUnchangedRange.toInclusiveRange(),\n options: unchangedLinesDecoration,\n }));\n for (const r of curUnchangedRegions) {\n if (r.shouldHideControls(reader)) {\n result.push({\n range: _common_core_range_js__WEBPACK_IMPORTED_MODULE_12__.Range.fromPositions(new _common_core_position_js__WEBPACK_IMPORTED_MODULE_11__.Position(r.originalLineNumber, 1)),\n options: unchangedLinesDecorationShow,\n });\n }\n }\n return result;\n })));\n this._register((0,_utils_js__WEBPACK_IMPORTED_MODULE_9__.applyObservableDecorations)(this._editors.modified, (0,_base_common_observable_js__WEBPACK_IMPORTED_MODULE_5__.derived)(this, reader => {\n /** @description decorations */\n const curUnchangedRegions = unchangedRegions.read(reader);\n const result = curUnchangedRegions.map(r => ({\n range: r.modifiedUnchangedRange.toInclusiveRange(),\n options: unchangedLinesDecoration,\n }));\n for (const r of curUnchangedRegions) {\n if (r.shouldHideControls(reader)) {\n result.push({\n range: _common_core_lineRange_js__WEBPACK_IMPORTED_MODULE_10__.LineRange.ofLength(r.modifiedLineNumber, 1).toInclusiveRange(),\n options: unchangedLinesDecorationShow,\n });\n }\n }\n return result;\n })));\n this._register((0,_base_common_observable_js__WEBPACK_IMPORTED_MODULE_5__.autorun)((reader) => {\n /** @description update folded unchanged regions */\n const curUnchangedRegions = unchangedRegions.read(reader);\n this._isUpdatingHiddenAreas = true;\n try {\n this._editors.original.setHiddenAreas(curUnchangedRegions.map(r => r.getHiddenOriginalRange(reader).toInclusiveRange()).filter(_base_common_types_js__WEBPACK_IMPORTED_MODULE_8__.isDefined));\n this._editors.modified.setHiddenAreas(curUnchangedRegions.map(r => r.getHiddenModifiedRange(reader).toInclusiveRange()).filter(_base_common_types_js__WEBPACK_IMPORTED_MODULE_8__.isDefined));\n }\n finally {\n this._isUpdatingHiddenAreas = false;\n }\n }));\n this._register(this._editors.modified.onMouseUp(event => {\n var _a;\n if (!event.event.rightButton && event.target.position && ((_a = event.target.element) === null || _a === void 0 ? void 0 : _a.className.includes('fold-unchanged'))) {\n const lineNumber = event.target.position.lineNumber;\n const model = this._diffModel.get();\n if (!model) {\n return;\n }\n const region = model.unchangedRegions.get().find(r => r.modifiedUnchangedRange.includes(lineNumber));\n if (!region) {\n return;\n }\n region.collapseAll(undefined);\n event.event.stopPropagation();\n event.event.preventDefault();\n }\n }));\n this._register(this._editors.original.onMouseUp(event => {\n var _a;\n if (!event.event.rightButton && event.target.position && ((_a = event.target.element) === null || _a === void 0 ? void 0 : _a.className.includes('fold-unchanged'))) {\n const lineNumber = event.target.position.lineNumber;\n const model = this._diffModel.get();\n if (!model) {\n return;\n }\n const region = model.unchangedRegions.get().find(r => r.originalUnchangedRange.includes(lineNumber));\n if (!region) {\n return;\n }\n region.collapseAll(undefined);\n event.event.stopPropagation();\n event.event.preventDefault();\n }\n }));\n }\n};\nHideUnchangedRegionsFeature._breadcrumbsSourceFactory = (0,_base_common_observable_js__WEBPACK_IMPORTED_MODULE_5__.observableValue)('breadcrumbsSourceFactory', undefined);\nHideUnchangedRegionsFeature = HideUnchangedRegionsFeature_1 = __decorate([\n __param(3, _platform_instantiation_common_instantiation_js__WEBPACK_IMPORTED_MODULE_15__.IInstantiationService)\n], HideUnchangedRegionsFeature);\n\nclass CollapsedCodeOverlayWidget extends _utils_js__WEBPACK_IMPORTED_MODULE_9__.ViewZoneOverlayWidget {\n constructor(_editor, _viewZone, _unchangedRegion, _unchangedRegionRange, _hide, _modifiedOutlineSource, _revealModifiedHiddenLine, _options) {\n const root = (0,_base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.h)('div.diff-hidden-lines-widget');\n super(_editor, _viewZone, root.root);\n this._editor = _editor;\n this._unchangedRegion = _unchangedRegion;\n this._unchangedRegionRange = _unchangedRegionRange;\n this._hide = _hide;\n this._modifiedOutlineSource = _modifiedOutlineSource;\n this._revealModifiedHiddenLine = _revealModifiedHiddenLine;\n this._options = _options;\n this._nodes = (0,_base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.h)('div.diff-hidden-lines', [\n (0,_base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.h)('div.top@top', { title: (0,_nls_js__WEBPACK_IMPORTED_MODULE_14__.localize)('diff.hiddenLines.top', 'Click or drag to show more above') }),\n (0,_base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.h)('div.center@content', { style: { display: 'flex' } }, [\n (0,_base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.h)('div@first', { style: { display: 'flex', justifyContent: 'center', alignItems: 'center', flexShrink: '0' } }, [(0,_base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.$)('a', { title: (0,_nls_js__WEBPACK_IMPORTED_MODULE_14__.localize)('showUnchangedRegion', 'Show Unchanged Region'), role: 'button', onclick: () => { this._unchangedRegion.showAll(undefined); } }, ...(0,_base_browser_ui_iconLabel_iconLabels_js__WEBPACK_IMPORTED_MODULE_1__.renderLabelWithIcons)('$(unfold)'))]),\n (0,_base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.h)('div@others', { style: { display: 'flex', justifyContent: 'center', alignItems: 'center' } }),\n ]),\n (0,_base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.h)('div.bottom@bottom', { title: (0,_nls_js__WEBPACK_IMPORTED_MODULE_14__.localize)('diff.bottom', 'Click or drag to show more below'), role: 'button' }),\n ]);\n root.root.appendChild(this._nodes.root);\n const layoutInfo = (0,_base_common_observable_js__WEBPACK_IMPORTED_MODULE_5__.observableFromEvent)(this._editor.onDidLayoutChange, () => this._editor.getLayoutInfo());\n if (!this._hide) {\n this._register((0,_utils_js__WEBPACK_IMPORTED_MODULE_9__.applyStyle)(this._nodes.first, { width: layoutInfo.map((l) => l.contentLeft) }));\n }\n else {\n (0,_base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.reset)(this._nodes.first);\n }\n this._register((0,_base_common_observable_js__WEBPACK_IMPORTED_MODULE_5__.autorun)(reader => {\n /** @description Update CollapsedCodeOverlayWidget canMove* css classes */\n const isFullyRevealed = this._unchangedRegion.visibleLineCountTop.read(reader) + this._unchangedRegion.visibleLineCountBottom.read(reader) === this._unchangedRegion.lineCount;\n this._nodes.bottom.classList.toggle('canMoveTop', !isFullyRevealed);\n this._nodes.bottom.classList.toggle('canMoveBottom', this._unchangedRegion.visibleLineCountBottom.read(reader) > 0);\n this._nodes.top.classList.toggle('canMoveTop', this._unchangedRegion.visibleLineCountTop.read(reader) > 0);\n this._nodes.top.classList.toggle('canMoveBottom', !isFullyRevealed);\n const isDragged = this._unchangedRegion.isDragged.read(reader);\n const domNode = this._editor.getDomNode();\n if (domNode) {\n domNode.classList.toggle('draggingUnchangedRegion', !!isDragged);\n if (isDragged === 'top') {\n domNode.classList.toggle('canMoveTop', this._unchangedRegion.visibleLineCountTop.read(reader) > 0);\n domNode.classList.toggle('canMoveBottom', !isFullyRevealed);\n }\n else if (isDragged === 'bottom') {\n domNode.classList.toggle('canMoveTop', !isFullyRevealed);\n domNode.classList.toggle('canMoveBottom', this._unchangedRegion.visibleLineCountBottom.read(reader) > 0);\n }\n else {\n domNode.classList.toggle('canMoveTop', false);\n domNode.classList.toggle('canMoveBottom', false);\n }\n }\n }));\n const editor = this._editor;\n this._register((0,_base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.addDisposableListener)(this._nodes.top, 'mousedown', e => {\n if (e.button !== 0) {\n return;\n }\n this._nodes.top.classList.toggle('dragging', true);\n this._nodes.root.classList.toggle('dragging', true);\n e.preventDefault();\n const startTop = e.clientY;\n let didMove = false;\n const cur = this._unchangedRegion.visibleLineCountTop.get();\n this._unchangedRegion.isDragged.set('top', undefined);\n const window = (0,_base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.getWindow)(this._nodes.top);\n const mouseMoveListener = (0,_base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.addDisposableListener)(window, 'mousemove', e => {\n const currentTop = e.clientY;\n const delta = currentTop - startTop;\n didMove = didMove || Math.abs(delta) > 2;\n const lineDelta = Math.round(delta / editor.getOption(67 /* EditorOption.lineHeight */));\n const newVal = Math.max(0, Math.min(cur + lineDelta, this._unchangedRegion.getMaxVisibleLineCountTop()));\n this._unchangedRegion.visibleLineCountTop.set(newVal, undefined);\n });\n const mouseUpListener = (0,_base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.addDisposableListener)(window, 'mouseup', e => {\n if (!didMove) {\n this._unchangedRegion.showMoreAbove(this._options.hideUnchangedRegionsRevealLineCount.get(), undefined);\n }\n this._nodes.top.classList.toggle('dragging', false);\n this._nodes.root.classList.toggle('dragging', false);\n this._unchangedRegion.isDragged.set(undefined, undefined);\n mouseMoveListener.dispose();\n mouseUpListener.dispose();\n });\n }));\n this._register((0,_base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.addDisposableListener)(this._nodes.bottom, 'mousedown', e => {\n if (e.button !== 0) {\n return;\n }\n this._nodes.bottom.classList.toggle('dragging', true);\n this._nodes.root.classList.toggle('dragging', true);\n e.preventDefault();\n const startTop = e.clientY;\n let didMove = false;\n const cur = this._unchangedRegion.visibleLineCountBottom.get();\n this._unchangedRegion.isDragged.set('bottom', undefined);\n const window = (0,_base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.getWindow)(this._nodes.bottom);\n const mouseMoveListener = (0,_base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.addDisposableListener)(window, 'mousemove', e => {\n const currentTop = e.clientY;\n const delta = currentTop - startTop;\n didMove = didMove || Math.abs(delta) > 2;\n const lineDelta = Math.round(delta / editor.getOption(67 /* EditorOption.lineHeight */));\n const newVal = Math.max(0, Math.min(cur - lineDelta, this._unchangedRegion.getMaxVisibleLineCountBottom()));\n const top = editor.getTopForLineNumber(this._unchangedRegionRange.endLineNumberExclusive);\n this._unchangedRegion.visibleLineCountBottom.set(newVal, undefined);\n const top2 = editor.getTopForLineNumber(this._unchangedRegionRange.endLineNumberExclusive);\n editor.setScrollTop(editor.getScrollTop() + (top2 - top));\n });\n const mouseUpListener = (0,_base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.addDisposableListener)(window, 'mouseup', e => {\n this._unchangedRegion.isDragged.set(undefined, undefined);\n if (!didMove) {\n const top = editor.getTopForLineNumber(this._unchangedRegionRange.endLineNumberExclusive);\n this._unchangedRegion.showMoreBelow(this._options.hideUnchangedRegionsRevealLineCount.get(), undefined);\n const top2 = editor.getTopForLineNumber(this._unchangedRegionRange.endLineNumberExclusive);\n editor.setScrollTop(editor.getScrollTop() + (top2 - top));\n }\n this._nodes.bottom.classList.toggle('dragging', false);\n this._nodes.root.classList.toggle('dragging', false);\n mouseMoveListener.dispose();\n mouseUpListener.dispose();\n });\n }));\n this._register((0,_base_common_observable_js__WEBPACK_IMPORTED_MODULE_5__.autorun)(reader => {\n /** @description update labels */\n const children = [];\n if (!this._hide) {\n const lineCount = _unchangedRegion.getHiddenModifiedRange(reader).length;\n const linesHiddenText = (0,_nls_js__WEBPACK_IMPORTED_MODULE_14__.localize)('hiddenLines', '{0} hidden lines', lineCount);\n const span = (0,_base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.$)('span', { title: (0,_nls_js__WEBPACK_IMPORTED_MODULE_14__.localize)('diff.hiddenLines.expandAll', 'Double click to unfold') }, linesHiddenText);\n span.addEventListener('dblclick', e => {\n if (e.button !== 0) {\n return;\n }\n e.preventDefault();\n this._unchangedRegion.showAll(undefined);\n });\n children.push(span);\n const range = this._unchangedRegion.getHiddenModifiedRange(reader);\n const items = this._modifiedOutlineSource.getBreadcrumbItems(range, reader);\n if (items.length > 0) {\n children.push((0,_base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.$)('span', undefined, '\\u00a0\\u00a0|\\u00a0\\u00a0'));\n for (let i = 0; i < items.length; i++) {\n const item = items[i];\n const icon = _common_languages_js__WEBPACK_IMPORTED_MODULE_13__.SymbolKinds.toIcon(item.kind);\n const divItem = (0,_base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.h)('div.breadcrumb-item', {\n style: { display: 'flex', alignItems: 'center' },\n }, [\n (0,_base_browser_ui_iconLabel_iconLabels_js__WEBPACK_IMPORTED_MODULE_1__.renderIcon)(icon),\n '\\u00a0',\n item.name,\n ...(i === items.length - 1\n ? []\n : [(0,_base_browser_ui_iconLabel_iconLabels_js__WEBPACK_IMPORTED_MODULE_1__.renderIcon)(_base_common_codicons_js__WEBPACK_IMPORTED_MODULE_2__.Codicon.chevronRight)])\n ]).root;\n children.push(divItem);\n divItem.onclick = () => {\n this._revealModifiedHiddenLine(item.startLineNumber);\n };\n }\n }\n }\n (0,_base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.reset)(this._nodes.others, ...children);\n }));\n }\n}\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/browser/widget/diffEditor/features/hideUnchangedRegionsFeature.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/browser/widget/diffEditor/features/movedBlocksLinesFeature.js":
/*!****************************************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/browser/widget/diffEditor/features/movedBlocksLinesFeature.js ***!
\****************************************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ MovedBlocksLinesFeature: () => (/* binding */ MovedBlocksLinesFeature)\n/* harmony export */ });\n/* harmony import */ var _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../../../base/browser/dom.js */ \"./node_modules/monaco-editor/esm/vs/base/browser/dom.js\");\n/* harmony import */ var _base_browser_ui_actionbar_actionbar_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../../base/browser/ui/actionbar/actionbar.js */ \"./node_modules/monaco-editor/esm/vs/base/browser/ui/actionbar/actionbar.js\");\n/* harmony import */ var _base_common_actions_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../../../base/common/actions.js */ \"./node_modules/monaco-editor/esm/vs/base/common/actions.js\");\n/* harmony import */ var _base_common_arrays_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../../../../base/common/arrays.js */ \"./node_modules/monaco-editor/esm/vs/base/common/arrays.js\");\n/* harmony import */ var _base_common_arraysFind_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../../../../base/common/arraysFind.js */ \"./node_modules/monaco-editor/esm/vs/base/common/arraysFind.js\");\n/* harmony import */ var _base_common_codicons_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../../../../../base/common/codicons.js */ \"./node_modules/monaco-editor/esm/vs/base/common/codicons.js\");\n/* harmony import */ var _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../../../../../base/common/lifecycle.js */ \"./node_modules/monaco-editor/esm/vs/base/common/lifecycle.js\");\n/* harmony import */ var _base_common_observable_js__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ../../../../../base/common/observable.js */ \"./node_modules/monaco-editor/esm/vs/base/common/observable.js\");\n/* harmony import */ var _base_common_themables_js__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ../../../../../base/common/themables.js */ \"./node_modules/monaco-editor/esm/vs/base/common/themables.js\");\n/* harmony import */ var _utils_js__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ../utils.js */ \"./node_modules/monaco-editor/esm/vs/editor/browser/widget/diffEditor/utils.js\");\n/* harmony import */ var _common_core_offsetRange_js__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! ../../../../common/core/offsetRange.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/core/offsetRange.js\");\n/* harmony import */ var _nls_js__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(/*! ../../../../../nls.js */ \"./node_modules/monaco-editor/esm/vs/nls.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n\n\n\n\n\n\n\n\n\n\n\nclass MovedBlocksLinesFeature extends _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_6__.Disposable {\n constructor(_rootElement, _diffModel, _originalEditorLayoutInfo, _modifiedEditorLayoutInfo, _editors) {\n super();\n this._rootElement = _rootElement;\n this._diffModel = _diffModel;\n this._originalEditorLayoutInfo = _originalEditorLayoutInfo;\n this._modifiedEditorLayoutInfo = _modifiedEditorLayoutInfo;\n this._editors = _editors;\n this._originalScrollTop = (0,_base_common_observable_js__WEBPACK_IMPORTED_MODULE_7__.observableFromEvent)(this._editors.original.onDidScrollChange, () => this._editors.original.getScrollTop());\n this._modifiedScrollTop = (0,_base_common_observable_js__WEBPACK_IMPORTED_MODULE_7__.observableFromEvent)(this._editors.modified.onDidScrollChange, () => this._editors.modified.getScrollTop());\n this._viewZonesChanged = (0,_base_common_observable_js__WEBPACK_IMPORTED_MODULE_7__.observableSignalFromEvent)('onDidChangeViewZones', this._editors.modified.onDidChangeViewZones);\n this.width = (0,_base_common_observable_js__WEBPACK_IMPORTED_MODULE_7__.observableValue)(this, 0);\n this._modifiedViewZonesChangedSignal = (0,_base_common_observable_js__WEBPACK_IMPORTED_MODULE_7__.observableSignalFromEvent)('modified.onDidChangeViewZones', this._editors.modified.onDidChangeViewZones);\n this._originalViewZonesChangedSignal = (0,_base_common_observable_js__WEBPACK_IMPORTED_MODULE_7__.observableSignalFromEvent)('original.onDidChangeViewZones', this._editors.original.onDidChangeViewZones);\n this._state = (0,_base_common_observable_js__WEBPACK_IMPORTED_MODULE_7__.derivedWithStore)(this, (reader, store) => {\n /** @description state */\n var _a;\n this._element.replaceChildren();\n const model = this._diffModel.read(reader);\n const moves = (_a = model === null || model === void 0 ? void 0 : model.diff.read(reader)) === null || _a === void 0 ? void 0 : _a.movedTexts;\n if (!moves || moves.length === 0) {\n this.width.set(0, undefined);\n return;\n }\n this._viewZonesChanged.read(reader);\n const infoOrig = this._originalEditorLayoutInfo.read(reader);\n const infoMod = this._modifiedEditorLayoutInfo.read(reader);\n if (!infoOrig || !infoMod) {\n this.width.set(0, undefined);\n return;\n }\n this._modifiedViewZonesChangedSignal.read(reader);\n this._originalViewZonesChangedSignal.read(reader);\n const lines = moves.map((move) => {\n function computeLineStart(range, editor) {\n const t1 = editor.getTopForLineNumber(range.startLineNumber, true);\n const t2 = editor.getTopForLineNumber(range.endLineNumberExclusive, true);\n return (t1 + t2) / 2;\n }\n const start = computeLineStart(move.lineRangeMapping.original, this._editors.original);\n const startOffset = this._originalScrollTop.read(reader);\n const end = computeLineStart(move.lineRangeMapping.modified, this._editors.modified);\n const endOffset = this._modifiedScrollTop.read(reader);\n const from = start - startOffset;\n const to = end - endOffset;\n const top = Math.min(start, end);\n const bottom = Math.max(start, end);\n return { range: new _common_core_offsetRange_js__WEBPACK_IMPORTED_MODULE_10__.OffsetRange(top, bottom), from, to, fromWithoutScroll: start, toWithoutScroll: end, move };\n });\n lines.sort((0,_base_common_arrays_js__WEBPACK_IMPORTED_MODULE_3__.tieBreakComparators)((0,_base_common_arrays_js__WEBPACK_IMPORTED_MODULE_3__.compareBy)(l => l.fromWithoutScroll > l.toWithoutScroll, _base_common_arrays_js__WEBPACK_IMPORTED_MODULE_3__.booleanComparator), (0,_base_common_arrays_js__WEBPACK_IMPORTED_MODULE_3__.compareBy)(l => l.fromWithoutScroll > l.toWithoutScroll ? l.fromWithoutScroll : -l.toWithoutScroll, _base_common_arrays_js__WEBPACK_IMPORTED_MODULE_3__.numberComparator)));\n const layout = LinesLayout.compute(lines.map(l => l.range));\n const padding = 10;\n const lineAreaLeft = infoOrig.verticalScrollbarWidth;\n const lineAreaWidth = (layout.getTrackCount() - 1) * 10 + padding * 2;\n const width = lineAreaLeft + lineAreaWidth + (infoMod.contentLeft - MovedBlocksLinesFeature.movedCodeBlockPadding);\n let idx = 0;\n for (const line of lines) {\n const track = layout.getTrack(idx);\n const verticalY = lineAreaLeft + padding + track * 10;\n const arrowHeight = 15;\n const arrowWidth = 15;\n const right = width;\n const rectWidth = infoMod.glyphMarginWidth + infoMod.lineNumbersWidth;\n const rectHeight = 18;\n const rect = document.createElementNS('http://www.w3.org/2000/svg', 'rect');\n rect.classList.add('arrow-rectangle');\n rect.setAttribute('x', `${right - rectWidth}`);\n rect.setAttribute('y', `${line.to - rectHeight / 2}`);\n rect.setAttribute('width', `${rectWidth}`);\n rect.setAttribute('height', `${rectHeight}`);\n this._element.appendChild(rect);\n const g = document.createElementNS('http://www.w3.org/2000/svg', 'g');\n const path = document.createElementNS('http://www.w3.org/2000/svg', 'path');\n path.setAttribute('d', `M ${0} ${line.from} L ${verticalY} ${line.from} L ${verticalY} ${line.to} L ${right - arrowWidth} ${line.to}`);\n path.setAttribute('fill', 'none');\n g.appendChild(path);\n const arrowRight = document.createElementNS('http://www.w3.org/2000/svg', 'polygon');\n arrowRight.classList.add('arrow');\n store.add((0,_base_common_observable_js__WEBPACK_IMPORTED_MODULE_7__.autorun)(reader => {\n path.classList.toggle('currentMove', line.move === model.activeMovedText.read(reader));\n arrowRight.classList.toggle('currentMove', line.move === model.activeMovedText.read(reader));\n }));\n arrowRight.setAttribute('points', `${right - arrowWidth},${line.to - arrowHeight / 2} ${right},${line.to} ${right - arrowWidth},${line.to + arrowHeight / 2}`);\n g.appendChild(arrowRight);\n this._element.appendChild(g);\n /*\n TODO@hediet\n path.addEventListener('mouseenter', () => {\n model.setHoveredMovedText(line.move);\n });\n path.addEventListener('mouseleave', () => {\n model.setHoveredMovedText(undefined);\n });*/\n idx++;\n }\n this.width.set(lineAreaWidth, undefined);\n });\n this._element = document.createElementNS('http://www.w3.org/2000/svg', 'svg');\n this._element.setAttribute('class', 'moved-blocks-lines');\n this._rootElement.appendChild(this._element);\n this._register((0,_base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_6__.toDisposable)(() => this._element.remove()));\n this._register((0,_base_common_observable_js__WEBPACK_IMPORTED_MODULE_7__.autorun)(reader => {\n /** @description update moved blocks lines positioning */\n const info = this._originalEditorLayoutInfo.read(reader);\n const info2 = this._modifiedEditorLayoutInfo.read(reader);\n if (!info || !info2) {\n return;\n }\n this._element.style.left = `${info.width - info.verticalScrollbarWidth}px`;\n this._element.style.height = `${info.height}px`;\n this._element.style.width = `${info.verticalScrollbarWidth + info.contentLeft - MovedBlocksLinesFeature.movedCodeBlockPadding + this.width.read(reader)}px`;\n }));\n this._register((0,_base_common_observable_js__WEBPACK_IMPORTED_MODULE_7__.recomputeInitiallyAndOnChange)(this._state));\n const movedBlockViewZones = (0,_base_common_observable_js__WEBPACK_IMPORTED_MODULE_7__.derived)(reader => {\n const model = this._diffModel.read(reader);\n const d = model === null || model === void 0 ? void 0 : model.diff.read(reader);\n if (!d) {\n return [];\n }\n return d.movedTexts.map(move => ({\n move,\n original: new _utils_js__WEBPACK_IMPORTED_MODULE_9__.PlaceholderViewZone((0,_base_common_observable_js__WEBPACK_IMPORTED_MODULE_7__.constObservable)(move.lineRangeMapping.original.startLineNumber - 1), 18),\n modified: new _utils_js__WEBPACK_IMPORTED_MODULE_9__.PlaceholderViewZone((0,_base_common_observable_js__WEBPACK_IMPORTED_MODULE_7__.constObservable)(move.lineRangeMapping.modified.startLineNumber - 1), 18),\n }));\n });\n this._register((0,_utils_js__WEBPACK_IMPORTED_MODULE_9__.applyViewZones)(this._editors.original, movedBlockViewZones.map(zones => /** @description movedBlockViewZones.original */ zones.map(z => z.original))));\n this._register((0,_utils_js__WEBPACK_IMPORTED_MODULE_9__.applyViewZones)(this._editors.modified, movedBlockViewZones.map(zones => /** @description movedBlockViewZones.modified */ zones.map(z => z.modified))));\n this._register((0,_base_common_observable_js__WEBPACK_IMPORTED_MODULE_7__.autorunWithStore)((reader, store) => {\n const blocks = movedBlockViewZones.read(reader);\n for (const b of blocks) {\n store.add(new MovedBlockOverlayWidget(this._editors.original, b.original, b.move, 'original', this._diffModel.get()));\n store.add(new MovedBlockOverlayWidget(this._editors.modified, b.modified, b.move, 'modified', this._diffModel.get()));\n }\n }));\n const originalHasFocus = (0,_base_common_observable_js__WEBPACK_IMPORTED_MODULE_7__.observableSignalFromEvent)('original.onDidFocusEditorWidget', e => this._editors.original.onDidFocusEditorWidget(() => setTimeout(() => e(undefined), 0)));\n const modifiedHasFocus = (0,_base_common_observable_js__WEBPACK_IMPORTED_MODULE_7__.observableSignalFromEvent)('modified.onDidFocusEditorWidget', e => this._editors.modified.onDidFocusEditorWidget(() => setTimeout(() => e(undefined), 0)));\n let lastChangedEditor = 'modified';\n this._register((0,_base_common_observable_js__WEBPACK_IMPORTED_MODULE_7__.autorunHandleChanges)({\n createEmptyChangeSummary: () => undefined,\n handleChange: (ctx, summary) => {\n if (ctx.didChange(originalHasFocus)) {\n lastChangedEditor = 'original';\n }\n if (ctx.didChange(modifiedHasFocus)) {\n lastChangedEditor = 'modified';\n }\n return true;\n }\n }, reader => {\n /** @description MovedBlocksLines.setActiveMovedTextFromCursor */\n originalHasFocus.read(reader);\n modifiedHasFocus.read(reader);\n const m = this._diffModel.read(reader);\n if (!m) {\n return;\n }\n const diff = m.diff.read(reader);\n let movedText = undefined;\n if (diff && lastChangedEditor === 'original') {\n const originalPos = this._editors.originalCursor.read(reader);\n if (originalPos) {\n movedText = diff.movedTexts.find(m => m.lineRangeMapping.original.contains(originalPos.lineNumber));\n }\n }\n if (diff && lastChangedEditor === 'modified') {\n const modifiedPos = this._editors.modifiedCursor.read(reader);\n if (modifiedPos) {\n movedText = diff.movedTexts.find(m => m.lineRangeMapping.modified.contains(modifiedPos.lineNumber));\n }\n }\n if (movedText !== m.movedTextToCompare.get()) {\n m.movedTextToCompare.set(undefined, undefined);\n }\n m.setActiveMovedText(movedText);\n }));\n }\n}\nMovedBlocksLinesFeature.movedCodeBlockPadding = 4;\nclass LinesLayout {\n static compute(lines) {\n const setsPerTrack = [];\n const trackPerLineIdx = [];\n for (const line of lines) {\n let trackIdx = setsPerTrack.findIndex(set => !set.intersectsStrict(line));\n if (trackIdx === -1) {\n const maxTrackCount = 6;\n if (setsPerTrack.length >= maxTrackCount) {\n trackIdx = (0,_base_common_arraysFind_js__WEBPACK_IMPORTED_MODULE_4__.findMaxIdxBy)(setsPerTrack, (0,_base_common_arrays_js__WEBPACK_IMPORTED_MODULE_3__.compareBy)(set => set.intersectWithRangeLength(line), _base_common_arrays_js__WEBPACK_IMPORTED_MODULE_3__.numberComparator));\n }\n else {\n trackIdx = setsPerTrack.length;\n setsPerTrack.push(new _common_core_offsetRange_js__WEBPACK_IMPORTED_MODULE_10__.OffsetRangeSet());\n }\n }\n setsPerTrack[trackIdx].addRange(line);\n trackPerLineIdx.push(trackIdx);\n }\n return new LinesLayout(setsPerTrack.length, trackPerLineIdx);\n }\n constructor(_trackCount, trackPerLineIdx) {\n this._trackCount = _trackCount;\n this.trackPerLineIdx = trackPerLineIdx;\n }\n getTrack(lineIdx) {\n return this.trackPerLineIdx[lineIdx];\n }\n getTrackCount() {\n return this._trackCount;\n }\n}\nclass MovedBlockOverlayWidget extends _utils_js__WEBPACK_IMPORTED_MODULE_9__.ViewZoneOverlayWidget {\n constructor(_editor, _viewZone, _move, _kind, _diffModel) {\n const root = (0,_base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.h)('div.diff-hidden-lines-widget');\n super(_editor, _viewZone, root.root);\n this._editor = _editor;\n this._move = _move;\n this._kind = _kind;\n this._diffModel = _diffModel;\n this._nodes = (0,_base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.h)('div.diff-moved-code-block', { style: { marginRight: '4px' } }, [\n (0,_base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.h)('div.text-content@textContent'),\n (0,_base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.h)('div.action-bar@actionBar'),\n ]);\n root.root.appendChild(this._nodes.root);\n const editorLayout = (0,_base_common_observable_js__WEBPACK_IMPORTED_MODULE_7__.observableFromEvent)(this._editor.onDidLayoutChange, () => this._editor.getLayoutInfo());\n this._register((0,_utils_js__WEBPACK_IMPORTED_MODULE_9__.applyStyle)(this._nodes.root, {\n paddingRight: editorLayout.map(l => l.verticalScrollbarWidth)\n }));\n let text;\n if (_move.changes.length > 0) {\n text = this._kind === 'original' ? (0,_nls_js__WEBPACK_IMPORTED_MODULE_11__.localize)('codeMovedToWithChanges', 'Code moved with changes to line {0}-{1}', this._move.lineRangeMapping.modified.startLineNumber, this._move.lineRangeMapping.modified.endLineNumberExclusive - 1) : (0,_nls_js__WEBPACK_IMPORTED_MODULE_11__.localize)('codeMovedFromWithChanges', 'Code moved with changes from line {0}-{1}', this._move.lineRangeMapping.original.startLineNumber, this._move.lineRangeMapping.original.endLineNumberExclusive - 1);\n }\n else {\n text = this._kind === 'original' ? (0,_nls_js__WEBPACK_IMPORTED_MODULE_11__.localize)('codeMovedTo', 'Code moved to line {0}-{1}', this._move.lineRangeMapping.modified.startLineNumber, this._move.lineRangeMapping.modified.endLineNumberExclusive - 1) : (0,_nls_js__WEBPACK_IMPORTED_MODULE_11__.localize)('codeMovedFrom', 'Code moved from line {0}-{1}', this._move.lineRangeMapping.original.startLineNumber, this._move.lineRangeMapping.original.endLineNumberExclusive - 1);\n }\n const actionBar = this._register(new _base_browser_ui_actionbar_actionbar_js__WEBPACK_IMPORTED_MODULE_1__.ActionBar(this._nodes.actionBar, {\n highlightToggledItems: true,\n }));\n const caption = new _base_common_actions_js__WEBPACK_IMPORTED_MODULE_2__.Action('', text, '', false);\n actionBar.push(caption, { icon: false, label: true });\n const actionCompare = new _base_common_actions_js__WEBPACK_IMPORTED_MODULE_2__.Action('', 'Compare', _base_common_themables_js__WEBPACK_IMPORTED_MODULE_8__.ThemeIcon.asClassName(_base_common_codicons_js__WEBPACK_IMPORTED_MODULE_5__.Codicon.compareChanges), true, () => {\n this._editor.focus();\n this._diffModel.movedTextToCompare.set(this._diffModel.movedTextToCompare.get() === _move ? undefined : this._move, undefined);\n });\n this._register((0,_base_common_observable_js__WEBPACK_IMPORTED_MODULE_7__.autorun)(reader => {\n const isActive = this._diffModel.movedTextToCompare.read(reader) === _move;\n actionCompare.checked = isActive;\n }));\n actionBar.push(actionCompare, { icon: false, label: true });\n }\n}\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/browser/widget/diffEditor/features/movedBlocksLinesFeature.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/browser/widget/diffEditor/features/overviewRulerFeature.js":
/*!*************************************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/browser/widget/diffEditor/features/overviewRulerFeature.js ***!
\*************************************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ OverviewRulerFeature: () => (/* binding */ OverviewRulerFeature)\n/* harmony export */ });\n/* harmony import */ var _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../../../base/browser/dom.js */ \"./node_modules/monaco-editor/esm/vs/base/browser/dom.js\");\n/* harmony import */ var _base_browser_fastDomNode_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../../base/browser/fastDomNode.js */ \"./node_modules/monaco-editor/esm/vs/base/browser/fastDomNode.js\");\n/* harmony import */ var _base_browser_ui_scrollbar_scrollbarState_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../../../base/browser/ui/scrollbar/scrollbarState.js */ \"./node_modules/monaco-editor/esm/vs/base/browser/ui/scrollbar/scrollbarState.js\");\n/* harmony import */ var _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../../../../base/common/lifecycle.js */ \"./node_modules/monaco-editor/esm/vs/base/common/lifecycle.js\");\n/* harmony import */ var _base_common_observable_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../../../../base/common/observable.js */ \"./node_modules/monaco-editor/esm/vs/base/common/observable.js\");\n/* harmony import */ var _utils_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../utils.js */ \"./node_modules/monaco-editor/esm/vs/editor/browser/widget/diffEditor/utils.js\");\n/* harmony import */ var _common_core_position_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../../../../common/core/position.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/core/position.js\");\n/* harmony import */ var _common_viewModel_overviewZoneManager_js__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ../../../../common/viewModel/overviewZoneManager.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/viewModel/overviewZoneManager.js\");\n/* harmony import */ var _platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ../../../../../platform/theme/common/colorRegistry.js */ \"./node_modules/monaco-editor/esm/vs/platform/theme/common/colorRegistry.js\");\n/* harmony import */ var _platform_theme_common_themeService_js__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ../../../../../platform/theme/common/themeService.js */ \"./node_modules/monaco-editor/esm/vs/platform/theme/common/themeService.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\nvar __decorate = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\n return c > 3 && r && Object.defineProperty(target, key, r), r;\n};\nvar __param = (undefined && undefined.__param) || function (paramIndex, decorator) {\n return function (target, key) { decorator(target, key, paramIndex); }\n};\nvar OverviewRulerFeature_1;\n\n\n\n\n\n\n\n\n\n\nlet OverviewRulerFeature = OverviewRulerFeature_1 = class OverviewRulerFeature extends _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_3__.Disposable {\n constructor(_editors, _rootElement, _diffModel, _rootWidth, _rootHeight, _modifiedEditorLayoutInfo, _themeService) {\n super();\n this._editors = _editors;\n this._rootElement = _rootElement;\n this._diffModel = _diffModel;\n this._rootWidth = _rootWidth;\n this._rootHeight = _rootHeight;\n this._modifiedEditorLayoutInfo = _modifiedEditorLayoutInfo;\n this._themeService = _themeService;\n this.width = OverviewRulerFeature_1.ENTIRE_DIFF_OVERVIEW_WIDTH;\n const currentColorTheme = (0,_base_common_observable_js__WEBPACK_IMPORTED_MODULE_4__.observableFromEvent)(this._themeService.onDidColorThemeChange, () => this._themeService.getColorTheme());\n const currentColors = (0,_base_common_observable_js__WEBPACK_IMPORTED_MODULE_4__.derived)(reader => {\n /** @description colors */\n const theme = currentColorTheme.read(reader);\n const insertColor = theme.getColor(_platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_8__.diffOverviewRulerInserted) || (theme.getColor(_platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_8__.diffInserted) || _platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_8__.defaultInsertColor).transparent(2);\n const removeColor = theme.getColor(_platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_8__.diffOverviewRulerRemoved) || (theme.getColor(_platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_8__.diffRemoved) || _platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_8__.defaultRemoveColor).transparent(2);\n return { insertColor, removeColor };\n });\n const viewportDomElement = (0,_base_browser_fastDomNode_js__WEBPACK_IMPORTED_MODULE_1__.createFastDomNode)(document.createElement('div'));\n viewportDomElement.setClassName('diffViewport');\n viewportDomElement.setPosition('absolute');\n const diffOverviewRoot = (0,_base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.h)('div.diffOverview', {\n style: { position: 'absolute', top: '0px', width: OverviewRulerFeature_1.ENTIRE_DIFF_OVERVIEW_WIDTH + 'px' }\n }).root;\n this._register((0,_utils_js__WEBPACK_IMPORTED_MODULE_5__.appendRemoveOnDispose)(diffOverviewRoot, viewportDomElement.domNode));\n this._register((0,_base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.addStandardDisposableListener)(diffOverviewRoot, _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.EventType.POINTER_DOWN, (e) => {\n this._editors.modified.delegateVerticalScrollbarPointerDown(e);\n }));\n this._register((0,_base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.addDisposableListener)(diffOverviewRoot, _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.EventType.MOUSE_WHEEL, (e) => {\n this._editors.modified.delegateScrollFromMouseWheelEvent(e);\n }, { passive: false }));\n this._register((0,_utils_js__WEBPACK_IMPORTED_MODULE_5__.appendRemoveOnDispose)(this._rootElement, diffOverviewRoot));\n this._register((0,_base_common_observable_js__WEBPACK_IMPORTED_MODULE_4__.autorunWithStore)((reader, store) => {\n /** @description recreate overview rules when model changes */\n const m = this._diffModel.read(reader);\n const originalOverviewRuler = this._editors.original.createOverviewRuler('original diffOverviewRuler');\n if (originalOverviewRuler) {\n store.add(originalOverviewRuler);\n store.add((0,_utils_js__WEBPACK_IMPORTED_MODULE_5__.appendRemoveOnDispose)(diffOverviewRoot, originalOverviewRuler.getDomNode()));\n }\n const modifiedOverviewRuler = this._editors.modified.createOverviewRuler('modified diffOverviewRuler');\n if (modifiedOverviewRuler) {\n store.add(modifiedOverviewRuler);\n store.add((0,_utils_js__WEBPACK_IMPORTED_MODULE_5__.appendRemoveOnDispose)(diffOverviewRoot, modifiedOverviewRuler.getDomNode()));\n }\n if (!originalOverviewRuler || !modifiedOverviewRuler) {\n // probably no model\n return;\n }\n const origViewZonesChanged = (0,_base_common_observable_js__WEBPACK_IMPORTED_MODULE_4__.observableSignalFromEvent)('viewZoneChanged', this._editors.original.onDidChangeViewZones);\n const modViewZonesChanged = (0,_base_common_observable_js__WEBPACK_IMPORTED_MODULE_4__.observableSignalFromEvent)('viewZoneChanged', this._editors.modified.onDidChangeViewZones);\n const origHiddenRangesChanged = (0,_base_common_observable_js__WEBPACK_IMPORTED_MODULE_4__.observableSignalFromEvent)('hiddenRangesChanged', this._editors.original.onDidChangeHiddenAreas);\n const modHiddenRangesChanged = (0,_base_common_observable_js__WEBPACK_IMPORTED_MODULE_4__.observableSignalFromEvent)('hiddenRangesChanged', this._editors.modified.onDidChangeHiddenAreas);\n store.add((0,_base_common_observable_js__WEBPACK_IMPORTED_MODULE_4__.autorun)(reader => {\n var _a;\n /** @description set overview ruler zones */\n origViewZonesChanged.read(reader);\n modViewZonesChanged.read(reader);\n origHiddenRangesChanged.read(reader);\n modHiddenRangesChanged.read(reader);\n const colors = currentColors.read(reader);\n const diff = (_a = m === null || m === void 0 ? void 0 : m.diff.read(reader)) === null || _a === void 0 ? void 0 : _a.mappings;\n function createZones(ranges, color, editor) {\n const vm = editor._getViewModel();\n if (!vm) {\n return [];\n }\n return ranges\n .filter(d => d.length > 0)\n .map(r => {\n const start = vm.coordinatesConverter.convertModelPositionToViewPosition(new _common_core_position_js__WEBPACK_IMPORTED_MODULE_6__.Position(r.startLineNumber, 1));\n const end = vm.coordinatesConverter.convertModelPositionToViewPosition(new _common_core_position_js__WEBPACK_IMPORTED_MODULE_6__.Position(r.endLineNumberExclusive, 1));\n // By computing the lineCount, we won't ask the view model later for the bottom vertical position.\n // (The view model will take into account the alignment viewzones, which will give\n // modifications and deletetions always the same height.)\n const lineCount = end.lineNumber - start.lineNumber;\n return new _common_viewModel_overviewZoneManager_js__WEBPACK_IMPORTED_MODULE_7__.OverviewRulerZone(start.lineNumber, end.lineNumber, lineCount, color.toString());\n });\n }\n const originalZones = createZones((diff || []).map(d => d.lineRangeMapping.original), colors.removeColor, this._editors.original);\n const modifiedZones = createZones((diff || []).map(d => d.lineRangeMapping.modified), colors.insertColor, this._editors.modified);\n originalOverviewRuler === null || originalOverviewRuler === void 0 ? void 0 : originalOverviewRuler.setZones(originalZones);\n modifiedOverviewRuler === null || modifiedOverviewRuler === void 0 ? void 0 : modifiedOverviewRuler.setZones(modifiedZones);\n }));\n store.add((0,_base_common_observable_js__WEBPACK_IMPORTED_MODULE_4__.autorun)(reader => {\n /** @description layout overview ruler */\n const height = this._rootHeight.read(reader);\n const width = this._rootWidth.read(reader);\n const layoutInfo = this._modifiedEditorLayoutInfo.read(reader);\n if (layoutInfo) {\n const freeSpace = OverviewRulerFeature_1.ENTIRE_DIFF_OVERVIEW_WIDTH - 2 * OverviewRulerFeature_1.ONE_OVERVIEW_WIDTH;\n originalOverviewRuler.setLayout({\n top: 0,\n height: height,\n right: freeSpace + OverviewRulerFeature_1.ONE_OVERVIEW_WIDTH,\n width: OverviewRulerFeature_1.ONE_OVERVIEW_WIDTH,\n });\n modifiedOverviewRuler.setLayout({\n top: 0,\n height: height,\n right: 0,\n width: OverviewRulerFeature_1.ONE_OVERVIEW_WIDTH,\n });\n const scrollTop = this._editors.modifiedScrollTop.read(reader);\n const scrollHeight = this._editors.modifiedScrollHeight.read(reader);\n const scrollBarOptions = this._editors.modified.getOption(103 /* EditorOption.scrollbar */);\n const state = new _base_browser_ui_scrollbar_scrollbarState_js__WEBPACK_IMPORTED_MODULE_2__.ScrollbarState(scrollBarOptions.verticalHasArrows ? scrollBarOptions.arrowSize : 0, scrollBarOptions.verticalScrollbarSize, 0, layoutInfo.height, scrollHeight, scrollTop);\n viewportDomElement.setTop(state.getSliderPosition());\n viewportDomElement.setHeight(state.getSliderSize());\n }\n else {\n viewportDomElement.setTop(0);\n viewportDomElement.setHeight(0);\n }\n diffOverviewRoot.style.height = height + 'px';\n diffOverviewRoot.style.left = (width - OverviewRulerFeature_1.ENTIRE_DIFF_OVERVIEW_WIDTH) + 'px';\n viewportDomElement.setWidth(OverviewRulerFeature_1.ENTIRE_DIFF_OVERVIEW_WIDTH);\n }));\n }));\n }\n};\nOverviewRulerFeature.ONE_OVERVIEW_WIDTH = 15;\nOverviewRulerFeature.ENTIRE_DIFF_OVERVIEW_WIDTH = OverviewRulerFeature_1.ONE_OVERVIEW_WIDTH * 2;\nOverviewRulerFeature = OverviewRulerFeature_1 = __decorate([\n __param(6, _platform_theme_common_themeService_js__WEBPACK_IMPORTED_MODULE_9__.IThemeService)\n], OverviewRulerFeature);\n\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/browser/widget/diffEditor/features/overviewRulerFeature.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/browser/widget/diffEditor/features/revertButtonsFeature.js":
/*!*************************************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/browser/widget/diffEditor/features/revertButtonsFeature.js ***!
\*************************************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ RevertButton: () => (/* binding */ RevertButton),\n/* harmony export */ RevertButtonsFeature: () => (/* binding */ RevertButtonsFeature)\n/* harmony export */ });\n/* harmony import */ var _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../../../base/browser/dom.js */ \"./node_modules/monaco-editor/esm/vs/base/browser/dom.js\");\n/* harmony import */ var _base_browser_ui_iconLabel_iconLabels_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../../base/browser/ui/iconLabel/iconLabels.js */ \"./node_modules/monaco-editor/esm/vs/base/browser/ui/iconLabel/iconLabels.js\");\n/* harmony import */ var _base_common_codicons_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../../../base/common/codicons.js */ \"./node_modules/monaco-editor/esm/vs/base/common/codicons.js\");\n/* harmony import */ var _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../../../../base/common/lifecycle.js */ \"./node_modules/monaco-editor/esm/vs/base/common/lifecycle.js\");\n/* harmony import */ var _base_common_observable_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../../../../base/common/observable.js */ \"./node_modules/monaco-editor/esm/vs/base/common/observable.js\");\n/* harmony import */ var _common_core_lineRange_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../../../../common/core/lineRange.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/core/lineRange.js\");\n/* harmony import */ var _common_core_range_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../../../../common/core/range.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/core/range.js\");\n/* harmony import */ var _common_model_js__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ../../../../common/model.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/model.js\");\n/* harmony import */ var _nls_js__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ../../../../../nls.js */ \"./node_modules/monaco-editor/esm/vs/nls.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n\n\n\n\n\n\n\n\nconst emptyArr = [];\nclass RevertButtonsFeature extends _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_3__.Disposable {\n constructor(_editors, _diffModel, _options, _widget) {\n super();\n this._editors = _editors;\n this._diffModel = _diffModel;\n this._options = _options;\n this._widget = _widget;\n this._selectedDiffs = (0,_base_common_observable_js__WEBPACK_IMPORTED_MODULE_4__.derived)(this, (reader) => {\n /** @description selectedDiffs */\n const model = this._diffModel.read(reader);\n const diff = model === null || model === void 0 ? void 0 : model.diff.read(reader);\n // Return `emptyArr` because it is a constant. [] is always a new array and would trigger a change.\n if (!diff) {\n return emptyArr;\n }\n const selections = this._editors.modifiedSelections.read(reader);\n if (selections.every(s => s.isEmpty())) {\n return emptyArr;\n }\n const selectedLineNumbers = new _common_core_lineRange_js__WEBPACK_IMPORTED_MODULE_5__.LineRangeSet(selections.map(s => _common_core_lineRange_js__WEBPACK_IMPORTED_MODULE_5__.LineRange.fromRangeInclusive(s)));\n const selectedMappings = diff.mappings.filter(m => m.lineRangeMapping.innerChanges && selectedLineNumbers.intersects(m.lineRangeMapping.modified));\n const result = selectedMappings.map(mapping => ({\n mapping,\n rangeMappings: mapping.lineRangeMapping.innerChanges.filter(c => selections.some(s => _common_core_range_js__WEBPACK_IMPORTED_MODULE_6__.Range.areIntersecting(c.modifiedRange, s)))\n }));\n if (result.length === 0 || result.every(r => r.rangeMappings.length === 0)) {\n return emptyArr;\n }\n return result;\n });\n this._register((0,_base_common_observable_js__WEBPACK_IMPORTED_MODULE_4__.autorunWithStore)((reader, store) => {\n if (!this._options.shouldRenderRevertArrows.read(reader)) {\n return;\n }\n const model = this._diffModel.read(reader);\n const diff = model === null || model === void 0 ? void 0 : model.diff.read(reader);\n if (!model || !diff) {\n return;\n }\n if (model.movedTextToCompare.read(reader)) {\n return;\n }\n const glyphWidgetsModified = [];\n const selectedDiffs = this._selectedDiffs.read(reader);\n const selectedDiffsSet = new Set(selectedDiffs.map(d => d.mapping));\n if (selectedDiffs.length > 0) {\n // The button to revert the selection\n const selections = this._editors.modifiedSelections.read(reader);\n const btn = store.add(new RevertButton(selections[selections.length - 1].positionLineNumber, this._widget, selectedDiffs.flatMap(d => d.rangeMappings), true));\n this._editors.modified.addGlyphMarginWidget(btn);\n glyphWidgetsModified.push(btn);\n }\n for (const m of diff.mappings) {\n if (selectedDiffsSet.has(m)) {\n continue;\n }\n if (!m.lineRangeMapping.modified.isEmpty && m.lineRangeMapping.innerChanges) {\n const btn = store.add(new RevertButton(m.lineRangeMapping.modified.startLineNumber, this._widget, m.lineRangeMapping.innerChanges, false));\n this._editors.modified.addGlyphMarginWidget(btn);\n glyphWidgetsModified.push(btn);\n }\n }\n store.add((0,_base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_3__.toDisposable)(() => {\n for (const w of glyphWidgetsModified) {\n this._editors.modified.removeGlyphMarginWidget(w);\n }\n }));\n }));\n }\n}\nclass RevertButton extends _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_3__.Disposable {\n getId() { return this._id; }\n constructor(_lineNumber, _widget, _diffs, _revertSelection) {\n super();\n this._lineNumber = _lineNumber;\n this._widget = _widget;\n this._diffs = _diffs;\n this._revertSelection = _revertSelection;\n this._id = `revertButton${RevertButton.counter++}`;\n this._domNode = (0,_base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.h)('div.revertButton', {\n title: this._revertSelection\n ? (0,_nls_js__WEBPACK_IMPORTED_MODULE_8__.localize)('revertSelectedChanges', 'Revert Selected Changes')\n : (0,_nls_js__WEBPACK_IMPORTED_MODULE_8__.localize)('revertChange', 'Revert Change')\n }, [(0,_base_browser_ui_iconLabel_iconLabels_js__WEBPACK_IMPORTED_MODULE_1__.renderIcon)(_base_common_codicons_js__WEBPACK_IMPORTED_MODULE_2__.Codicon.arrowRight)]).root;\n this._register((0,_base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.addDisposableListener)(this._domNode, _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.EventType.MOUSE_DOWN, e => {\n // don't prevent context menu from showing up\n if (e.button !== 2) {\n e.stopPropagation();\n e.preventDefault();\n }\n }));\n this._register((0,_base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.addDisposableListener)(this._domNode, _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.EventType.MOUSE_UP, e => {\n e.stopPropagation();\n e.preventDefault();\n }));\n this._register((0,_base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.addDisposableListener)(this._domNode, _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.EventType.CLICK, (e) => {\n this._widget.revertRangeMappings(this._diffs);\n e.stopPropagation();\n e.preventDefault();\n }));\n }\n /**\n * Get the dom node of the glyph widget.\n */\n getDomNode() {\n return this._domNode;\n }\n /**\n * Get the placement of the glyph widget.\n */\n getPosition() {\n return {\n lane: _common_model_js__WEBPACK_IMPORTED_MODULE_7__.GlyphMarginLane.Right,\n range: {\n startColumn: 1,\n startLineNumber: this._lineNumber,\n endColumn: 1,\n endLineNumber: this._lineNumber,\n },\n zIndex: 10001,\n };\n }\n}\nRevertButton.counter = 0;\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/browser/widget/diffEditor/features/revertButtonsFeature.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/browser/widget/diffEditor/registrations.contribution.js":
/*!**********************************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/browser/widget/diffEditor/registrations.contribution.js ***!
\**********************************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ diffAddDecoration: () => (/* binding */ diffAddDecoration),\n/* harmony export */ diffAddDecorationEmpty: () => (/* binding */ diffAddDecorationEmpty),\n/* harmony export */ diffDeleteDecoration: () => (/* binding */ diffDeleteDecoration),\n/* harmony export */ diffDeleteDecorationEmpty: () => (/* binding */ diffDeleteDecorationEmpty),\n/* harmony export */ diffEditorUnchangedRegionShadow: () => (/* binding */ diffEditorUnchangedRegionShadow),\n/* harmony export */ diffInsertIcon: () => (/* binding */ diffInsertIcon),\n/* harmony export */ diffLineAddDecorationBackground: () => (/* binding */ diffLineAddDecorationBackground),\n/* harmony export */ diffLineAddDecorationBackgroundWithIndicator: () => (/* binding */ diffLineAddDecorationBackgroundWithIndicator),\n/* harmony export */ diffLineDeleteDecorationBackground: () => (/* binding */ diffLineDeleteDecorationBackground),\n/* harmony export */ diffLineDeleteDecorationBackgroundWithIndicator: () => (/* binding */ diffLineDeleteDecorationBackgroundWithIndicator),\n/* harmony export */ diffMoveBorder: () => (/* binding */ diffMoveBorder),\n/* harmony export */ diffMoveBorderActive: () => (/* binding */ diffMoveBorderActive),\n/* harmony export */ diffRemoveIcon: () => (/* binding */ diffRemoveIcon),\n/* harmony export */ diffWholeLineAddDecoration: () => (/* binding */ diffWholeLineAddDecoration),\n/* harmony export */ diffWholeLineDeleteDecoration: () => (/* binding */ diffWholeLineDeleteDecoration)\n/* harmony export */ });\n/* harmony import */ var _base_common_codicons_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../../base/common/codicons.js */ \"./node_modules/monaco-editor/esm/vs/base/common/codicons.js\");\n/* harmony import */ var _base_common_themables_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../base/common/themables.js */ \"./node_modules/monaco-editor/esm/vs/base/common/themables.js\");\n/* harmony import */ var _common_model_textModel_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../common/model/textModel.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/model/textModel.js\");\n/* harmony import */ var _nls_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../../../nls.js */ \"./node_modules/monaco-editor/esm/vs/nls.js\");\n/* harmony import */ var _platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../../../platform/theme/common/colorRegistry.js */ \"./node_modules/monaco-editor/esm/vs/platform/theme/common/colorRegistry.js\");\n/* harmony import */ var _platform_theme_common_iconRegistry_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../../../../platform/theme/common/iconRegistry.js */ \"./node_modules/monaco-editor/esm/vs/platform/theme/common/iconRegistry.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n\n\n\n\n\nconst diffMoveBorder = (0,_platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_4__.registerColor)('diffEditor.move.border', { dark: '#8b8b8b9c', light: '#8b8b8b9c', hcDark: '#8b8b8b9c', hcLight: '#8b8b8b9c', }, (0,_nls_js__WEBPACK_IMPORTED_MODULE_3__.localize)('diffEditor.move.border', 'The border color for text that got moved in the diff editor.'));\nconst diffMoveBorderActive = (0,_platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_4__.registerColor)('diffEditor.moveActive.border', { dark: '#FFA500', light: '#FFA500', hcDark: '#FFA500', hcLight: '#FFA500', }, (0,_nls_js__WEBPACK_IMPORTED_MODULE_3__.localize)('diffEditor.moveActive.border', 'The active border color for text that got moved in the diff editor.'));\nconst diffEditorUnchangedRegionShadow = (0,_platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_4__.registerColor)('diffEditor.unchangedRegionShadow', { dark: '#000000', light: '#737373BF', hcDark: '#000000', hcLight: '#737373BF', }, (0,_nls_js__WEBPACK_IMPORTED_MODULE_3__.localize)('diffEditor.unchangedRegionShadow', 'The color of the shadow around unchanged region widgets.'));\nconst diffInsertIcon = (0,_platform_theme_common_iconRegistry_js__WEBPACK_IMPORTED_MODULE_5__.registerIcon)('diff-insert', _base_common_codicons_js__WEBPACK_IMPORTED_MODULE_0__.Codicon.add, (0,_nls_js__WEBPACK_IMPORTED_MODULE_3__.localize)('diffInsertIcon', 'Line decoration for inserts in the diff editor.'));\nconst diffRemoveIcon = (0,_platform_theme_common_iconRegistry_js__WEBPACK_IMPORTED_MODULE_5__.registerIcon)('diff-remove', _base_common_codicons_js__WEBPACK_IMPORTED_MODULE_0__.Codicon.remove, (0,_nls_js__WEBPACK_IMPORTED_MODULE_3__.localize)('diffRemoveIcon', 'Line decoration for removals in the diff editor.'));\nconst diffLineAddDecorationBackgroundWithIndicator = _common_model_textModel_js__WEBPACK_IMPORTED_MODULE_2__.ModelDecorationOptions.register({\n className: 'line-insert',\n description: 'line-insert',\n isWholeLine: true,\n linesDecorationsClassName: 'insert-sign ' + _base_common_themables_js__WEBPACK_IMPORTED_MODULE_1__.ThemeIcon.asClassName(diffInsertIcon),\n marginClassName: 'gutter-insert',\n});\nconst diffLineDeleteDecorationBackgroundWithIndicator = _common_model_textModel_js__WEBPACK_IMPORTED_MODULE_2__.ModelDecorationOptions.register({\n className: 'line-delete',\n description: 'line-delete',\n isWholeLine: true,\n linesDecorationsClassName: 'delete-sign ' + _base_common_themables_js__WEBPACK_IMPORTED_MODULE_1__.ThemeIcon.asClassName(diffRemoveIcon),\n marginClassName: 'gutter-delete',\n});\nconst diffLineAddDecorationBackground = _common_model_textModel_js__WEBPACK_IMPORTED_MODULE_2__.ModelDecorationOptions.register({\n className: 'line-insert',\n description: 'line-insert',\n isWholeLine: true,\n marginClassName: 'gutter-insert',\n});\nconst diffLineDeleteDecorationBackground = _common_model_textModel_js__WEBPACK_IMPORTED_MODULE_2__.ModelDecorationOptions.register({\n className: 'line-delete',\n description: 'line-delete',\n isWholeLine: true,\n marginClassName: 'gutter-delete',\n});\nconst diffAddDecoration = _common_model_textModel_js__WEBPACK_IMPORTED_MODULE_2__.ModelDecorationOptions.register({\n className: 'char-insert',\n description: 'char-insert',\n shouldFillLineOnLineBreak: true,\n});\nconst diffWholeLineAddDecoration = _common_model_textModel_js__WEBPACK_IMPORTED_MODULE_2__.ModelDecorationOptions.register({\n className: 'char-insert',\n description: 'char-insert',\n isWholeLine: true,\n});\nconst diffAddDecorationEmpty = _common_model_textModel_js__WEBPACK_IMPORTED_MODULE_2__.ModelDecorationOptions.register({\n className: 'char-insert diff-range-empty',\n description: 'char-insert diff-range-empty',\n});\nconst diffDeleteDecoration = _common_model_textModel_js__WEBPACK_IMPORTED_MODULE_2__.ModelDecorationOptions.register({\n className: 'char-delete',\n description: 'char-delete',\n shouldFillLineOnLineBreak: true,\n});\nconst diffWholeLineDeleteDecoration = _common_model_textModel_js__WEBPACK_IMPORTED_MODULE_2__.ModelDecorationOptions.register({\n className: 'char-delete',\n description: 'char-delete',\n isWholeLine: true,\n});\nconst diffDeleteDecorationEmpty = _common_model_textModel_js__WEBPACK_IMPORTED_MODULE_2__.ModelDecorationOptions.register({\n className: 'char-delete diff-range-empty',\n description: 'char-delete diff-range-empty',\n});\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/browser/widget/diffEditor/registrations.contribution.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/browser/widget/diffEditor/utils.js":
/*!*************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/browser/widget/diffEditor/utils.js ***!
\*************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ DisposableCancellationTokenSource: () => (/* binding */ DisposableCancellationTokenSource),\n/* harmony export */ ManagedOverlayWidget: () => (/* binding */ ManagedOverlayWidget),\n/* harmony export */ ObservableElementSizeObserver: () => (/* binding */ ObservableElementSizeObserver),\n/* harmony export */ PlaceholderViewZone: () => (/* binding */ PlaceholderViewZone),\n/* harmony export */ ViewZoneOverlayWidget: () => (/* binding */ ViewZoneOverlayWidget),\n/* harmony export */ animatedObservable: () => (/* binding */ animatedObservable),\n/* harmony export */ appendRemoveOnDispose: () => (/* binding */ appendRemoveOnDispose),\n/* harmony export */ applyObservableDecorations: () => (/* binding */ applyObservableDecorations),\n/* harmony export */ applyStyle: () => (/* binding */ applyStyle),\n/* harmony export */ applyViewZones: () => (/* binding */ applyViewZones),\n/* harmony export */ bindContextKey: () => (/* binding */ bindContextKey),\n/* harmony export */ filterWithPrevious: () => (/* binding */ filterWithPrevious),\n/* harmony export */ joinCombine: () => (/* binding */ joinCombine),\n/* harmony export */ observeHotReloadableExports: () => (/* binding */ observeHotReloadableExports),\n/* harmony export */ readHotReloadableExport: () => (/* binding */ readHotReloadableExport),\n/* harmony export */ translatePosition: () => (/* binding */ translatePosition)\n/* harmony export */ });\n/* harmony import */ var _base_common_arraysFind_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../../base/common/arraysFind.js */ \"./node_modules/monaco-editor/esm/vs/base/common/arraysFind.js\");\n/* harmony import */ var _base_common_cancellation_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../base/common/cancellation.js */ \"./node_modules/monaco-editor/esm/vs/base/common/cancellation.js\");\n/* harmony import */ var _base_common_hotReload_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../../base/common/hotReload.js */ \"./node_modules/monaco-editor/esm/vs/base/common/hotReload.js\");\n/* harmony import */ var _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../../../base/common/lifecycle.js */ \"./node_modules/monaco-editor/esm/vs/base/common/lifecycle.js\");\n/* harmony import */ var _base_common_observable_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../../../base/common/observable.js */ \"./node_modules/monaco-editor/esm/vs/base/common/observable.js\");\n/* harmony import */ var _config_elementSizeObserver_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../../config/elementSizeObserver.js */ \"./node_modules/monaco-editor/esm/vs/editor/browser/config/elementSizeObserver.js\");\n/* harmony import */ var _common_core_position_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../../../common/core/position.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/core/position.js\");\n/* harmony import */ var _common_core_range_js__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ../../../common/core/range.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/core/range.js\");\n/* harmony import */ var _common_model_bracketPairsTextModelPart_bracketPairsTree_length_js__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ../../../common/model/bracketPairsTextModelPart/bracketPairsTree/length.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/model/bracketPairsTextModelPart/bracketPairsTree/length.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n\n\n\n\n\n\n\n\nfunction joinCombine(arr1, arr2, keySelector, combine) {\n if (arr1.length === 0) {\n return arr2;\n }\n if (arr2.length === 0) {\n return arr1;\n }\n const result = [];\n let i = 0;\n let j = 0;\n while (i < arr1.length && j < arr2.length) {\n const val1 = arr1[i];\n const val2 = arr2[j];\n const key1 = keySelector(val1);\n const key2 = keySelector(val2);\n if (key1 < key2) {\n result.push(val1);\n i++;\n }\n else if (key1 > key2) {\n result.push(val2);\n j++;\n }\n else {\n result.push(combine(val1, val2));\n i++;\n j++;\n }\n }\n while (i < arr1.length) {\n result.push(arr1[i]);\n i++;\n }\n while (j < arr2.length) {\n result.push(arr2[j]);\n j++;\n }\n return result;\n}\n// TODO make utility\nfunction applyObservableDecorations(editor, decorations) {\n const d = new _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_3__.DisposableStore();\n const decorationsCollection = editor.createDecorationsCollection();\n d.add((0,_base_common_observable_js__WEBPACK_IMPORTED_MODULE_4__.autorunOpts)({ debugName: () => `Apply decorations from ${decorations.debugName}` }, reader => {\n const d = decorations.read(reader);\n decorationsCollection.set(d);\n }));\n d.add({\n dispose: () => {\n decorationsCollection.clear();\n }\n });\n return d;\n}\nfunction appendRemoveOnDispose(parent, child) {\n parent.appendChild(child);\n return (0,_base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_3__.toDisposable)(() => {\n parent.removeChild(child);\n });\n}\nclass ObservableElementSizeObserver extends _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_3__.Disposable {\n get width() { return this._width; }\n get height() { return this._height; }\n constructor(element, dimension) {\n super();\n this.elementSizeObserver = this._register(new _config_elementSizeObserver_js__WEBPACK_IMPORTED_MODULE_5__.ElementSizeObserver(element, dimension));\n this._width = (0,_base_common_observable_js__WEBPACK_IMPORTED_MODULE_4__.observableValue)(this, this.elementSizeObserver.getWidth());\n this._height = (0,_base_common_observable_js__WEBPACK_IMPORTED_MODULE_4__.observableValue)(this, this.elementSizeObserver.getHeight());\n this._register(this.elementSizeObserver.onDidChange(e => (0,_base_common_observable_js__WEBPACK_IMPORTED_MODULE_4__.transaction)(tx => {\n /** @description Set width/height from elementSizeObserver */\n this._width.set(this.elementSizeObserver.getWidth(), tx);\n this._height.set(this.elementSizeObserver.getHeight(), tx);\n })));\n }\n observe(dimension) {\n this.elementSizeObserver.observe(dimension);\n }\n setAutomaticLayout(automaticLayout) {\n if (automaticLayout) {\n this.elementSizeObserver.startObserving();\n }\n else {\n this.elementSizeObserver.stopObserving();\n }\n }\n}\nfunction animatedObservable(targetWindow, base, store) {\n let targetVal = base.get();\n let startVal = targetVal;\n let curVal = targetVal;\n const result = (0,_base_common_observable_js__WEBPACK_IMPORTED_MODULE_4__.observableValue)('animatedValue', targetVal);\n let animationStartMs = -1;\n const durationMs = 300;\n let animationFrame = undefined;\n store.add((0,_base_common_observable_js__WEBPACK_IMPORTED_MODULE_4__.autorunHandleChanges)({\n createEmptyChangeSummary: () => ({ animate: false }),\n handleChange: (ctx, s) => {\n if (ctx.didChange(base)) {\n s.animate = s.animate || ctx.change;\n }\n return true;\n }\n }, (reader, s) => {\n /** @description update value */\n if (animationFrame !== undefined) {\n targetWindow.cancelAnimationFrame(animationFrame);\n animationFrame = undefined;\n }\n startVal = curVal;\n targetVal = base.read(reader);\n animationStartMs = Date.now() - (s.animate ? 0 : durationMs);\n update();\n }));\n function update() {\n const passedMs = Date.now() - animationStartMs;\n curVal = Math.floor(easeOutExpo(passedMs, startVal, targetVal - startVal, durationMs));\n if (passedMs < durationMs) {\n animationFrame = targetWindow.requestAnimationFrame(update);\n }\n else {\n curVal = targetVal;\n }\n result.set(curVal, undefined);\n }\n return result;\n}\nfunction easeOutExpo(t, b, c, d) {\n return t === d ? b + c : c * (-Math.pow(2, -10 * t / d) + 1) + b;\n}\nclass ViewZoneOverlayWidget extends _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_3__.Disposable {\n constructor(editor, viewZone, htmlElement) {\n super();\n this._register(new ManagedOverlayWidget(editor, htmlElement));\n this._register(applyStyle(htmlElement, {\n height: viewZone.actualHeight,\n top: viewZone.actualTop,\n }));\n }\n}\nclass PlaceholderViewZone {\n get afterLineNumber() { return this._afterLineNumber.get(); }\n constructor(_afterLineNumber, heightInPx) {\n this._afterLineNumber = _afterLineNumber;\n this.heightInPx = heightInPx;\n this.domNode = document.createElement('div');\n this._actualTop = (0,_base_common_observable_js__WEBPACK_IMPORTED_MODULE_4__.observableValue)(this, undefined);\n this._actualHeight = (0,_base_common_observable_js__WEBPACK_IMPORTED_MODULE_4__.observableValue)(this, undefined);\n this.actualTop = this._actualTop;\n this.actualHeight = this._actualHeight;\n this.showInHiddenAreas = true;\n this.onChange = this._afterLineNumber;\n this.onDomNodeTop = (top) => {\n this._actualTop.set(top, undefined);\n };\n this.onComputedHeight = (height) => {\n this._actualHeight.set(height, undefined);\n };\n }\n}\nclass ManagedOverlayWidget {\n constructor(_editor, _domElement) {\n this._editor = _editor;\n this._domElement = _domElement;\n this._overlayWidgetId = `managedOverlayWidget-${ManagedOverlayWidget._counter++}`;\n this._overlayWidget = {\n getId: () => this._overlayWidgetId,\n getDomNode: () => this._domElement,\n getPosition: () => null\n };\n this._editor.addOverlayWidget(this._overlayWidget);\n }\n dispose() {\n this._editor.removeOverlayWidget(this._overlayWidget);\n }\n}\nManagedOverlayWidget._counter = 0;\nfunction applyStyle(domNode, style) {\n return (0,_base_common_observable_js__WEBPACK_IMPORTED_MODULE_4__.autorun)(reader => {\n /** @description applyStyle */\n for (let [key, val] of Object.entries(style)) {\n if (val && typeof val === 'object' && 'read' in val) {\n val = val.read(reader);\n }\n if (typeof val === 'number') {\n val = `${val}px`;\n }\n key = key.replace(/[A-Z]/g, m => '-' + m.toLowerCase());\n domNode.style[key] = val;\n }\n });\n}\nfunction readHotReloadableExport(value, reader) {\n observeHotReloadableExports([value], reader);\n return value;\n}\nfunction observeHotReloadableExports(values, reader) {\n if ((0,_base_common_hotReload_js__WEBPACK_IMPORTED_MODULE_2__.isHotReloadEnabled)()) {\n const o = (0,_base_common_observable_js__WEBPACK_IMPORTED_MODULE_4__.observableSignalFromEvent)('reload', event => (0,_base_common_hotReload_js__WEBPACK_IMPORTED_MODULE_2__.registerHotReloadHandler)(({ oldExports }) => {\n if (![...Object.values(oldExports)].some(v => values.includes(v))) {\n return undefined;\n }\n return (_newExports) => {\n event(undefined);\n return true;\n };\n }));\n o.read(reader);\n }\n}\nfunction applyViewZones(editor, viewZones, setIsUpdating, zoneIds) {\n const store = new _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_3__.DisposableStore();\n const lastViewZoneIds = [];\n store.add((0,_base_common_observable_js__WEBPACK_IMPORTED_MODULE_4__.autorunWithStore)((reader, store) => {\n /** @description applyViewZones */\n const curViewZones = viewZones.read(reader);\n const viewZonIdsPerViewZone = new Map();\n const viewZoneIdPerOnChangeObservable = new Map();\n // Add/remove view zones\n if (setIsUpdating) {\n setIsUpdating(true);\n }\n editor.changeViewZones(a => {\n for (const id of lastViewZoneIds) {\n a.removeZone(id);\n zoneIds === null || zoneIds === void 0 ? void 0 : zoneIds.delete(id);\n }\n lastViewZoneIds.length = 0;\n for (const z of curViewZones) {\n const id = a.addZone(z);\n if (z.setZoneId) {\n z.setZoneId(id);\n }\n lastViewZoneIds.push(id);\n zoneIds === null || zoneIds === void 0 ? void 0 : zoneIds.add(id);\n viewZonIdsPerViewZone.set(z, id);\n }\n });\n if (setIsUpdating) {\n setIsUpdating(false);\n }\n // Layout zone on change\n store.add((0,_base_common_observable_js__WEBPACK_IMPORTED_MODULE_4__.autorunHandleChanges)({\n createEmptyChangeSummary() {\n return { zoneIds: [] };\n },\n handleChange(context, changeSummary) {\n const id = viewZoneIdPerOnChangeObservable.get(context.changedObservable);\n if (id !== undefined) {\n changeSummary.zoneIds.push(id);\n }\n return true;\n },\n }, (reader, changeSummary) => {\n /** @description layoutZone on change */\n for (const vz of curViewZones) {\n if (vz.onChange) {\n viewZoneIdPerOnChangeObservable.set(vz.onChange, viewZonIdsPerViewZone.get(vz));\n vz.onChange.read(reader);\n }\n }\n if (setIsUpdating) {\n setIsUpdating(true);\n }\n editor.changeViewZones(a => { for (const id of changeSummary.zoneIds) {\n a.layoutZone(id);\n } });\n if (setIsUpdating) {\n setIsUpdating(false);\n }\n }));\n }));\n store.add({\n dispose() {\n if (setIsUpdating) {\n setIsUpdating(true);\n }\n editor.changeViewZones(a => { for (const id of lastViewZoneIds) {\n a.removeZone(id);\n } });\n zoneIds === null || zoneIds === void 0 ? void 0 : zoneIds.clear();\n if (setIsUpdating) {\n setIsUpdating(false);\n }\n }\n });\n return store;\n}\nclass DisposableCancellationTokenSource extends _base_common_cancellation_js__WEBPACK_IMPORTED_MODULE_1__.CancellationTokenSource {\n dispose() {\n super.dispose(true);\n }\n}\nfunction translatePosition(posInOriginal, mappings) {\n const mapping = (0,_base_common_arraysFind_js__WEBPACK_IMPORTED_MODULE_0__.findLast)(mappings, m => m.original.startLineNumber <= posInOriginal.lineNumber);\n if (!mapping) {\n // No changes before the position\n return _common_core_range_js__WEBPACK_IMPORTED_MODULE_7__.Range.fromPositions(posInOriginal);\n }\n if (mapping.original.endLineNumberExclusive <= posInOriginal.lineNumber) {\n const newLineNumber = posInOriginal.lineNumber - mapping.original.endLineNumberExclusive + mapping.modified.endLineNumberExclusive;\n return _common_core_range_js__WEBPACK_IMPORTED_MODULE_7__.Range.fromPositions(new _common_core_position_js__WEBPACK_IMPORTED_MODULE_6__.Position(newLineNumber, posInOriginal.column));\n }\n if (!mapping.innerChanges) {\n // Only for legacy algorithm\n return _common_core_range_js__WEBPACK_IMPORTED_MODULE_7__.Range.fromPositions(new _common_core_position_js__WEBPACK_IMPORTED_MODULE_6__.Position(mapping.modified.startLineNumber, 1));\n }\n const innerMapping = (0,_base_common_arraysFind_js__WEBPACK_IMPORTED_MODULE_0__.findLast)(mapping.innerChanges, m => m.originalRange.getStartPosition().isBeforeOrEqual(posInOriginal));\n if (!innerMapping) {\n const newLineNumber = posInOriginal.lineNumber - mapping.original.startLineNumber + mapping.modified.startLineNumber;\n return _common_core_range_js__WEBPACK_IMPORTED_MODULE_7__.Range.fromPositions(new _common_core_position_js__WEBPACK_IMPORTED_MODULE_6__.Position(newLineNumber, posInOriginal.column));\n }\n if (innerMapping.originalRange.containsPosition(posInOriginal)) {\n return innerMapping.modifiedRange;\n }\n else {\n const l = lengthBetweenPositions(innerMapping.originalRange.getEndPosition(), posInOriginal);\n return _common_core_range_js__WEBPACK_IMPORTED_MODULE_7__.Range.fromPositions(addLength(innerMapping.modifiedRange.getEndPosition(), l));\n }\n}\nfunction lengthBetweenPositions(position1, position2) {\n if (position1.lineNumber === position2.lineNumber) {\n return new _common_model_bracketPairsTextModelPart_bracketPairsTree_length_js__WEBPACK_IMPORTED_MODULE_8__.LengthObj(0, position2.column - position1.column);\n }\n else {\n return new _common_model_bracketPairsTextModelPart_bracketPairsTree_length_js__WEBPACK_IMPORTED_MODULE_8__.LengthObj(position2.lineNumber - position1.lineNumber, position2.column - 1);\n }\n}\nfunction addLength(position, length) {\n if (length.lineCount === 0) {\n return new _common_core_position_js__WEBPACK_IMPORTED_MODULE_6__.Position(position.lineNumber, position.column + length.columnCount);\n }\n else {\n return new _common_core_position_js__WEBPACK_IMPORTED_MODULE_6__.Position(position.lineNumber + length.lineCount, length.columnCount + 1);\n }\n}\nfunction bindContextKey(key, service, computeValue) {\n const boundKey = key.bindTo(service);\n return (0,_base_common_observable_js__WEBPACK_IMPORTED_MODULE_4__.autorunOpts)({ debugName: () => `Set Context Key \"${key.key}\"` }, reader => {\n boundKey.set(computeValue(reader));\n });\n}\nfunction filterWithPrevious(arr, filter) {\n let prev;\n return arr.filter(cur => {\n const result = filter(cur, prev);\n prev = cur;\n return result;\n });\n}\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/browser/widget/diffEditor/utils.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/browser/widget/embeddedCodeEditorWidget.js":
/*!*********************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/browser/widget/embeddedCodeEditorWidget.js ***!
\*********************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ EmbeddedCodeEditorWidget: () => (/* binding */ EmbeddedCodeEditorWidget)\n/* harmony export */ });\n/* harmony import */ var _base_common_objects_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../base/common/objects.js */ \"./node_modules/monaco-editor/esm/vs/base/common/objects.js\");\n/* harmony import */ var _services_codeEditorService_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../services/codeEditorService.js */ \"./node_modules/monaco-editor/esm/vs/editor/browser/services/codeEditorService.js\");\n/* harmony import */ var _codeEditorWidget_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./codeEditorWidget.js */ \"./node_modules/monaco-editor/esm/vs/editor/browser/widget/codeEditorWidget.js\");\n/* harmony import */ var _common_languages_languageConfigurationRegistry_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../common/languages/languageConfigurationRegistry.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/languages/languageConfigurationRegistry.js\");\n/* harmony import */ var _common_services_languageFeatures_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../common/services/languageFeatures.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/services/languageFeatures.js\");\n/* harmony import */ var _platform_accessibility_common_accessibility_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../../../platform/accessibility/common/accessibility.js */ \"./node_modules/monaco-editor/esm/vs/platform/accessibility/common/accessibility.js\");\n/* harmony import */ var _platform_commands_common_commands_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../../../platform/commands/common/commands.js */ \"./node_modules/monaco-editor/esm/vs/platform/commands/common/commands.js\");\n/* harmony import */ var _platform_contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ../../../platform/contextkey/common/contextkey.js */ \"./node_modules/monaco-editor/esm/vs/platform/contextkey/common/contextkey.js\");\n/* harmony import */ var _platform_instantiation_common_instantiation_js__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ../../../platform/instantiation/common/instantiation.js */ \"./node_modules/monaco-editor/esm/vs/platform/instantiation/common/instantiation.js\");\n/* harmony import */ var _platform_notification_common_notification_js__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ../../../platform/notification/common/notification.js */ \"./node_modules/monaco-editor/esm/vs/platform/notification/common/notification.js\");\n/* harmony import */ var _platform_theme_common_themeService_js__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! ../../../platform/theme/common/themeService.js */ \"./node_modules/monaco-editor/esm/vs/platform/theme/common/themeService.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\nvar __decorate = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\n return c > 3 && r && Object.defineProperty(target, key, r), r;\n};\nvar __param = (undefined && undefined.__param) || function (paramIndex, decorator) {\n return function (target, key) { decorator(target, key, paramIndex); }\n};\n\n\n\n\n\n\n\n\n\n\n\nlet EmbeddedCodeEditorWidget = class EmbeddedCodeEditorWidget extends _codeEditorWidget_js__WEBPACK_IMPORTED_MODULE_2__.CodeEditorWidget {\n constructor(domElement, options, codeEditorWidgetOptions, parentEditor, instantiationService, codeEditorService, commandService, contextKeyService, themeService, notificationService, accessibilityService, languageConfigurationService, languageFeaturesService) {\n super(domElement, { ...parentEditor.getRawOptions(), overflowWidgetsDomNode: parentEditor.getOverflowWidgetsDomNode() }, codeEditorWidgetOptions, instantiationService, codeEditorService, commandService, contextKeyService, themeService, notificationService, accessibilityService, languageConfigurationService, languageFeaturesService);\n this._parentEditor = parentEditor;\n this._overwriteOptions = options;\n // Overwrite parent's options\n super.updateOptions(this._overwriteOptions);\n this._register(parentEditor.onDidChangeConfiguration((e) => this._onParentConfigurationChanged(e)));\n }\n getParentEditor() {\n return this._parentEditor;\n }\n _onParentConfigurationChanged(e) {\n super.updateOptions(this._parentEditor.getRawOptions());\n super.updateOptions(this._overwriteOptions);\n }\n updateOptions(newOptions) {\n _base_common_objects_js__WEBPACK_IMPORTED_MODULE_0__.mixin(this._overwriteOptions, newOptions, true);\n super.updateOptions(this._overwriteOptions);\n }\n};\nEmbeddedCodeEditorWidget = __decorate([\n __param(4, _platform_instantiation_common_instantiation_js__WEBPACK_IMPORTED_MODULE_8__.IInstantiationService),\n __param(5, _services_codeEditorService_js__WEBPACK_IMPORTED_MODULE_1__.ICodeEditorService),\n __param(6, _platform_commands_common_commands_js__WEBPACK_IMPORTED_MODULE_6__.ICommandService),\n __param(7, _platform_contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_7__.IContextKeyService),\n __param(8, _platform_theme_common_themeService_js__WEBPACK_IMPORTED_MODULE_10__.IThemeService),\n __param(9, _platform_notification_common_notification_js__WEBPACK_IMPORTED_MODULE_9__.INotificationService),\n __param(10, _platform_accessibility_common_accessibility_js__WEBPACK_IMPORTED_MODULE_5__.IAccessibilityService),\n __param(11, _common_languages_languageConfigurationRegistry_js__WEBPACK_IMPORTED_MODULE_3__.ILanguageConfigurationService),\n __param(12, _common_services_languageFeatures_js__WEBPACK_IMPORTED_MODULE_4__.ILanguageFeaturesService)\n], EmbeddedCodeEditorWidget);\n\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/browser/widget/embeddedCodeEditorWidget.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/browser/widget/hoverWidget/hoverWidget.js":
/*!********************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/browser/widget/hoverWidget/hoverWidget.js ***!
\********************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ HoverWidget: () => (/* binding */ HoverWidget)\n/* harmony export */ });\n/* harmony import */ var _hover_css__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./hover.css */ \"./node_modules/monaco-editor/esm/vs/editor/browser/widget/hoverWidget/hover.css\");\n/* harmony import */ var _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../base/common/lifecycle.js */ \"./node_modules/monaco-editor/esm/vs/base/common/lifecycle.js\");\n/* harmony import */ var _base_common_event_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../../base/common/event.js */ \"./node_modules/monaco-editor/esm/vs/base/common/event.js\");\n/* harmony import */ var _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../../../base/browser/dom.js */ \"./node_modules/monaco-editor/esm/vs/base/browser/dom.js\");\n/* harmony import */ var _platform_keybinding_common_keybinding_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../../../platform/keybinding/common/keybinding.js */ \"./node_modules/monaco-editor/esm/vs/platform/keybinding/common/keybinding.js\");\n/* harmony import */ var _platform_configuration_common_configuration_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../../../../platform/configuration/common/configuration.js */ \"./node_modules/monaco-editor/esm/vs/platform/configuration/common/configuration.js\");\n/* harmony import */ var _common_config_editorOptions_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../../../common/config/editorOptions.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/config/editorOptions.js\");\n/* harmony import */ var _base_browser_ui_hover_hoverWidget_js__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ../../../../base/browser/ui/hover/hoverWidget.js */ \"./node_modules/monaco-editor/esm/vs/base/browser/ui/hover/hoverWidget.js\");\n/* harmony import */ var _base_browser_ui_widget_js__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ../../../../base/browser/ui/widget.js */ \"./node_modules/monaco-editor/esm/vs/base/browser/ui/widget.js\");\n/* harmony import */ var _platform_opener_common_opener_js__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ../../../../platform/opener/common/opener.js */ \"./node_modules/monaco-editor/esm/vs/platform/opener/common/opener.js\");\n/* harmony import */ var _platform_instantiation_common_instantiation_js__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! ../../../../platform/instantiation/common/instantiation.js */ \"./node_modules/monaco-editor/esm/vs/platform/instantiation/common/instantiation.js\");\n/* harmony import */ var _markdownRenderer_browser_markdownRenderer_js__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(/*! ../markdownRenderer/browser/markdownRenderer.js */ \"./node_modules/monaco-editor/esm/vs/editor/browser/widget/markdownRenderer/browser/markdownRenderer.js\");\n/* harmony import */ var _base_common_htmlContent_js__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(/*! ../../../../base/common/htmlContent.js */ \"./node_modules/monaco-editor/esm/vs/base/common/htmlContent.js\");\n/* harmony import */ var _nls_js__WEBPACK_IMPORTED_MODULE_13__ = __webpack_require__(/*! ../../../../nls.js */ \"./node_modules/monaco-editor/esm/vs/nls.js\");\n/* harmony import */ var _base_common_platform_js__WEBPACK_IMPORTED_MODULE_14__ = __webpack_require__(/*! ../../../../base/common/platform.js */ \"./node_modules/monaco-editor/esm/vs/base/common/platform.js\");\n/* harmony import */ var _platform_accessibility_common_accessibility_js__WEBPACK_IMPORTED_MODULE_15__ = __webpack_require__(/*! ../../../../platform/accessibility/common/accessibility.js */ \"./node_modules/monaco-editor/esm/vs/platform/accessibility/common/accessibility.js\");\n/* harmony import */ var _base_browser_ui_aria_aria_js__WEBPACK_IMPORTED_MODULE_16__ = __webpack_require__(/*! ../../../../base/browser/ui/aria/aria.js */ \"./node_modules/monaco-editor/esm/vs/base/browser/ui/aria/aria.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\nvar __decorate = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\n return c > 3 && r && Object.defineProperty(target, key, r), r;\n};\nvar __param = (undefined && undefined.__param) || function (paramIndex, decorator) {\n return function (target, key) { decorator(target, key, paramIndex); }\n};\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nconst $ = _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_3__.$;\nlet HoverWidget = class HoverWidget extends _base_browser_ui_widget_js__WEBPACK_IMPORTED_MODULE_8__.Widget {\n get _targetWindow() {\n return _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_3__.getWindow(this._target.targetElements[0]);\n }\n get _targetDocumentElement() {\n return _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_3__.getWindow(this._target.targetElements[0]).document.documentElement;\n }\n get isDisposed() { return this._isDisposed; }\n get isMouseIn() { return this._lockMouseTracker.isMouseIn; }\n get domNode() { return this._hover.containerDomNode; }\n get onDispose() { return this._onDispose.event; }\n get onRequestLayout() { return this._onRequestLayout.event; }\n get anchor() { return this._hoverPosition === 2 /* HoverPosition.BELOW */ ? 0 /* AnchorPosition.BELOW */ : 1 /* AnchorPosition.ABOVE */; }\n get x() { return this._x; }\n get y() { return this._y; }\n /**\n * Whether the hover is \"locked\" by holding the alt/option key. When locked, the hover will not\n * hide and can be hovered regardless of whether the `hideOnHover` hover option is set.\n */\n get isLocked() { return this._isLocked; }\n set isLocked(value) {\n if (this._isLocked === value) {\n return;\n }\n this._isLocked = value;\n this._hoverContainer.classList.toggle('locked', this._isLocked);\n }\n constructor(options, _keybindingService, _configurationService, _openerService, _instantiationService, _accessibilityService) {\n var _a, _b, _c, _d, _e, _f, _g, _h;\n super();\n this._keybindingService = _keybindingService;\n this._configurationService = _configurationService;\n this._openerService = _openerService;\n this._instantiationService = _instantiationService;\n this._accessibilityService = _accessibilityService;\n this._messageListeners = new _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_1__.DisposableStore();\n this._isDisposed = false;\n this._forcePosition = false;\n this._x = 0;\n this._y = 0;\n this._isLocked = false;\n this._enableFocusTraps = false;\n this._addedFocusTrap = false;\n this._onDispose = this._register(new _base_common_event_js__WEBPACK_IMPORTED_MODULE_2__.Emitter());\n this._onRequestLayout = this._register(new _base_common_event_js__WEBPACK_IMPORTED_MODULE_2__.Emitter());\n this._linkHandler = options.linkHandler || (url => {\n return (0,_markdownRenderer_browser_markdownRenderer_js__WEBPACK_IMPORTED_MODULE_11__.openLinkFromMarkdown)(this._openerService, url, (0,_base_common_htmlContent_js__WEBPACK_IMPORTED_MODULE_12__.isMarkdownString)(options.content) ? options.content.isTrusted : undefined);\n });\n this._target = 'targetElements' in options.target ? options.target : new ElementHoverTarget(options.target);\n this._hoverPointer = ((_a = options.appearance) === null || _a === void 0 ? void 0 : _a.showPointer) ? $('div.workbench-hover-pointer') : undefined;\n this._hover = this._register(new _base_browser_ui_hover_hoverWidget_js__WEBPACK_IMPORTED_MODULE_7__.HoverWidget());\n this._hover.containerDomNode.classList.add('workbench-hover', 'fadeIn');\n if ((_b = options.appearance) === null || _b === void 0 ? void 0 : _b.compact) {\n this._hover.containerDomNode.classList.add('workbench-hover', 'compact');\n }\n if ((_c = options.appearance) === null || _c === void 0 ? void 0 : _c.skipFadeInAnimation) {\n this._hover.containerDomNode.classList.add('skip-fade-in');\n }\n if (options.additionalClasses) {\n this._hover.containerDomNode.classList.add(...options.additionalClasses);\n }\n if ((_d = options.position) === null || _d === void 0 ? void 0 : _d.forcePosition) {\n this._forcePosition = true;\n }\n if (options.trapFocus) {\n this._enableFocusTraps = true;\n }\n this._hoverPosition = (_f = (_e = options.position) === null || _e === void 0 ? void 0 : _e.hoverPosition) !== null && _f !== void 0 ? _f : 3 /* HoverPosition.ABOVE */;\n // Don't allow mousedown out of the widget, otherwise preventDefault will call and text will\n // not be selected.\n this.onmousedown(this._hover.containerDomNode, e => e.stopPropagation());\n // Hide hover on escape\n this.onkeydown(this._hover.containerDomNode, e => {\n if (e.equals(9 /* KeyCode.Escape */)) {\n this.dispose();\n }\n });\n // Hide when the window loses focus\n this._register(_base_browser_dom_js__WEBPACK_IMPORTED_MODULE_3__.addDisposableListener(this._targetWindow, 'blur', () => this.dispose()));\n const rowElement = $('div.hover-row.markdown-hover');\n const contentsElement = $('div.hover-contents');\n if (typeof options.content === 'string') {\n contentsElement.textContent = options.content;\n contentsElement.style.whiteSpace = 'pre-wrap';\n }\n else if (options.content instanceof HTMLElement) {\n contentsElement.appendChild(options.content);\n contentsElement.classList.add('html-hover-contents');\n }\n else {\n const markdown = options.content;\n const mdRenderer = this._instantiationService.createInstance(_markdownRenderer_browser_markdownRenderer_js__WEBPACK_IMPORTED_MODULE_11__.MarkdownRenderer, { codeBlockFontFamily: this._configurationService.getValue('editor').fontFamily || _common_config_editorOptions_js__WEBPACK_IMPORTED_MODULE_6__.EDITOR_FONT_DEFAULTS.fontFamily });\n const { element } = mdRenderer.render(markdown, {\n actionHandler: {\n callback: (content) => this._linkHandler(content),\n disposables: this._messageListeners\n },\n asyncRenderCallback: () => {\n contentsElement.classList.add('code-hover-contents');\n this.layout();\n // This changes the dimensions of the hover so trigger a layout\n this._onRequestLayout.fire();\n }\n });\n contentsElement.appendChild(element);\n }\n rowElement.appendChild(contentsElement);\n this._hover.contentsDomNode.appendChild(rowElement);\n if (options.actions && options.actions.length > 0) {\n const statusBarElement = $('div.hover-row.status-bar');\n const actionsElement = $('div.actions');\n options.actions.forEach(action => {\n const keybinding = this._keybindingService.lookupKeybinding(action.commandId);\n const keybindingLabel = keybinding ? keybinding.getLabel() : null;\n _base_browser_ui_hover_hoverWidget_js__WEBPACK_IMPORTED_MODULE_7__.HoverAction.render(actionsElement, {\n label: action.label,\n commandId: action.commandId,\n run: e => {\n action.run(e);\n this.dispose();\n },\n iconClass: action.iconClass\n }, keybindingLabel);\n });\n statusBarElement.appendChild(actionsElement);\n this._hover.containerDomNode.appendChild(statusBarElement);\n }\n this._hoverContainer = $('div.workbench-hover-container');\n if (this._hoverPointer) {\n this._hoverContainer.appendChild(this._hoverPointer);\n }\n this._hoverContainer.appendChild(this._hover.containerDomNode);\n // Determine whether to hide on hover\n let hideOnHover;\n if (options.actions && options.actions.length > 0) {\n // If there are actions, require hover so they can be accessed\n hideOnHover = false;\n }\n else {\n if (((_g = options.persistence) === null || _g === void 0 ? void 0 : _g.hideOnHover) === undefined) {\n // When unset, will default to true when it's a string or when it's markdown that\n // appears to have a link using a naive check for '](' and ''\n hideOnHover = typeof options.content === 'string' ||\n (0,_base_common_htmlContent_js__WEBPACK_IMPORTED_MODULE_12__.isMarkdownString)(options.content) && !options.content.value.includes('](') && !options.content.value.includes('');\n }\n else {\n // It's set explicitly\n hideOnHover = options.persistence.hideOnHover;\n }\n }\n // Show the hover hint if needed\n if (hideOnHover && ((_h = options.appearance) === null || _h === void 0 ? void 0 : _h.showHoverHint)) {\n const statusBarElement = $('div.hover-row.status-bar');\n const infoElement = $('div.info');\n infoElement.textContent = (0,_nls_js__WEBPACK_IMPORTED_MODULE_13__.localize)('hoverhint', 'Hold {0} key to mouse over', _base_common_platform_js__WEBPACK_IMPORTED_MODULE_14__.isMacintosh ? 'Option' : 'Alt');\n statusBarElement.appendChild(infoElement);\n this._hover.containerDomNode.appendChild(statusBarElement);\n }\n const mouseTrackerTargets = [...this._target.targetElements];\n if (!hideOnHover) {\n mouseTrackerTargets.push(this._hoverContainer);\n }\n const mouseTracker = this._register(new CompositeMouseTracker(mouseTrackerTargets));\n this._register(mouseTracker.onMouseOut(() => {\n if (!this._isLocked) {\n this.dispose();\n }\n }));\n // Setup another mouse tracker when hideOnHover is set in order to track the hover as well\n // when it is locked. This ensures the hover will hide on mouseout after alt has been\n // released to unlock the element.\n if (hideOnHover) {\n const mouseTracker2Targets = [...this._target.targetElements, this._hoverContainer];\n this._lockMouseTracker = this._register(new CompositeMouseTracker(mouseTracker2Targets));\n this._register(this._lockMouseTracker.onMouseOut(() => {\n if (!this._isLocked) {\n this.dispose();\n }\n }));\n }\n else {\n this._lockMouseTracker = mouseTracker;\n }\n }\n addFocusTrap() {\n if (!this._enableFocusTraps || this._addedFocusTrap) {\n return;\n }\n this._addedFocusTrap = true;\n // Add a hover tab loop if the hover has at least one element with a valid tabIndex\n const firstContainerFocusElement = this._hover.containerDomNode;\n const lastContainerFocusElement = this.findLastFocusableChild(this._hover.containerDomNode);\n if (lastContainerFocusElement) {\n const beforeContainerFocusElement = _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_3__.prepend(this._hoverContainer, $('div'));\n const afterContainerFocusElement = _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_3__.append(this._hoverContainer, $('div'));\n beforeContainerFocusElement.tabIndex = 0;\n afterContainerFocusElement.tabIndex = 0;\n this._register(_base_browser_dom_js__WEBPACK_IMPORTED_MODULE_3__.addDisposableListener(afterContainerFocusElement, 'focus', (e) => {\n firstContainerFocusElement.focus();\n e.preventDefault();\n }));\n this._register(_base_browser_dom_js__WEBPACK_IMPORTED_MODULE_3__.addDisposableListener(beforeContainerFocusElement, 'focus', (e) => {\n lastContainerFocusElement.focus();\n e.preventDefault();\n }));\n }\n }\n findLastFocusableChild(root) {\n if (root.hasChildNodes()) {\n for (let i = 0; i < root.childNodes.length; i++) {\n const node = root.childNodes.item(root.childNodes.length - i - 1);\n if (node.nodeType === node.ELEMENT_NODE) {\n const parsedNode = node;\n if (typeof parsedNode.tabIndex === 'number' && parsedNode.tabIndex >= 0) {\n return parsedNode;\n }\n }\n const recursivelyFoundElement = this.findLastFocusableChild(node);\n if (recursivelyFoundElement) {\n return recursivelyFoundElement;\n }\n }\n }\n return undefined;\n }\n render(container) {\n var _a;\n container.appendChild(this._hoverContainer);\n const hoverFocused = this._hoverContainer.contains(this._hoverContainer.ownerDocument.activeElement);\n const accessibleViewHint = hoverFocused && (0,_base_browser_ui_hover_hoverWidget_js__WEBPACK_IMPORTED_MODULE_7__.getHoverAccessibleViewHint)(this._configurationService.getValue('accessibility.verbosity.hover') === true && this._accessibilityService.isScreenReaderOptimized(), (_a = this._keybindingService.lookupKeybinding('editor.action.accessibleView')) === null || _a === void 0 ? void 0 : _a.getAriaLabel());\n if (accessibleViewHint) {\n (0,_base_browser_ui_aria_aria_js__WEBPACK_IMPORTED_MODULE_16__.status)(accessibleViewHint);\n }\n this.layout();\n this.addFocusTrap();\n }\n layout() {\n this._hover.containerDomNode.classList.remove('right-aligned');\n this._hover.contentsDomNode.style.maxHeight = '';\n const getZoomAccountedBoundingClientRect = (e) => {\n const zoom = _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_3__.getDomNodeZoomLevel(e);\n const boundingRect = e.getBoundingClientRect();\n return {\n top: boundingRect.top * zoom,\n bottom: boundingRect.bottom * zoom,\n right: boundingRect.right * zoom,\n left: boundingRect.left * zoom,\n };\n };\n const targetBounds = this._target.targetElements.map(e => getZoomAccountedBoundingClientRect(e));\n const top = Math.min(...targetBounds.map(e => e.top));\n const right = Math.max(...targetBounds.map(e => e.right));\n const bottom = Math.max(...targetBounds.map(e => e.bottom));\n const left = Math.min(...targetBounds.map(e => e.left));\n const width = right - left;\n const height = bottom - top;\n const targetRect = {\n top, right, bottom, left, width, height,\n center: {\n x: left + (width / 2),\n y: top + (height / 2)\n }\n };\n // These calls adjust the position depending on spacing.\n this.adjustHorizontalHoverPosition(targetRect);\n this.adjustVerticalHoverPosition(targetRect);\n // This call limits the maximum height of the hover.\n this.adjustHoverMaxHeight(targetRect);\n // Offset the hover position if there is a pointer so it aligns with the target element\n this._hoverContainer.style.padding = '';\n this._hoverContainer.style.margin = '';\n if (this._hoverPointer) {\n switch (this._hoverPosition) {\n case 1 /* HoverPosition.RIGHT */:\n targetRect.left += 3 /* Constants.PointerSize */;\n targetRect.right += 3 /* Constants.PointerSize */;\n this._hoverContainer.style.paddingLeft = `${3 /* Constants.PointerSize */}px`;\n this._hoverContainer.style.marginLeft = `${-3 /* Constants.PointerSize */}px`;\n break;\n case 0 /* HoverPosition.LEFT */:\n targetRect.left -= 3 /* Constants.PointerSize */;\n targetRect.right -= 3 /* Constants.PointerSize */;\n this._hoverContainer.style.paddingRight = `${3 /* Constants.PointerSize */}px`;\n this._hoverContainer.style.marginRight = `${-3 /* Constants.PointerSize */}px`;\n break;\n case 2 /* HoverPosition.BELOW */:\n targetRect.top += 3 /* Constants.PointerSize */;\n targetRect.bottom += 3 /* Constants.PointerSize */;\n this._hoverContainer.style.paddingTop = `${3 /* Constants.PointerSize */}px`;\n this._hoverContainer.style.marginTop = `${-3 /* Constants.PointerSize */}px`;\n break;\n case 3 /* HoverPosition.ABOVE */:\n targetRect.top -= 3 /* Constants.PointerSize */;\n targetRect.bottom -= 3 /* Constants.PointerSize */;\n this._hoverContainer.style.paddingBottom = `${3 /* Constants.PointerSize */}px`;\n this._hoverContainer.style.marginBottom = `${-3 /* Constants.PointerSize */}px`;\n break;\n }\n targetRect.center.x = targetRect.left + (width / 2);\n targetRect.center.y = targetRect.top + (height / 2);\n }\n this.computeXCordinate(targetRect);\n this.computeYCordinate(targetRect);\n if (this._hoverPointer) {\n // reset\n this._hoverPointer.classList.remove('top');\n this._hoverPointer.classList.remove('left');\n this._hoverPointer.classList.remove('right');\n this._hoverPointer.classList.remove('bottom');\n this.setHoverPointerPosition(targetRect);\n }\n this._hover.onContentsChanged();\n }\n computeXCordinate(target) {\n const hoverWidth = this._hover.containerDomNode.clientWidth + 2 /* Constants.HoverBorderWidth */;\n if (this._target.x !== undefined) {\n this._x = this._target.x;\n }\n else if (this._hoverPosition === 1 /* HoverPosition.RIGHT */) {\n this._x = target.right;\n }\n else if (this._hoverPosition === 0 /* HoverPosition.LEFT */) {\n this._x = target.left - hoverWidth;\n }\n else {\n if (this._hoverPointer) {\n this._x = target.center.x - (this._hover.containerDomNode.clientWidth / 2);\n }\n else {\n this._x = target.left;\n }\n // Hover is going beyond window towards right end\n if (this._x + hoverWidth >= this._targetDocumentElement.clientWidth) {\n this._hover.containerDomNode.classList.add('right-aligned');\n this._x = Math.max(this._targetDocumentElement.clientWidth - hoverWidth - 2 /* Constants.HoverWindowEdgeMargin */, this._targetDocumentElement.clientLeft);\n }\n }\n // Hover is going beyond window towards left end\n if (this._x < this._targetDocumentElement.clientLeft) {\n this._x = target.left + 2 /* Constants.HoverWindowEdgeMargin */;\n }\n }\n computeYCordinate(target) {\n if (this._target.y !== undefined) {\n this._y = this._target.y;\n }\n else if (this._hoverPosition === 3 /* HoverPosition.ABOVE */) {\n this._y = target.top;\n }\n else if (this._hoverPosition === 2 /* HoverPosition.BELOW */) {\n this._y = target.bottom - 2;\n }\n else {\n if (this._hoverPointer) {\n this._y = target.center.y + (this._hover.containerDomNode.clientHeight / 2);\n }\n else {\n this._y = target.bottom;\n }\n }\n // Hover on bottom is going beyond window\n if (this._y > this._targetWindow.innerHeight) {\n this._y = target.bottom;\n }\n }\n adjustHorizontalHoverPosition(target) {\n // Do not adjust horizontal hover position if x cordiante is provided\n if (this._target.x !== undefined) {\n return;\n }\n // When force position is enabled, restrict max width\n if (this._forcePosition) {\n const padding = (this._hoverPointer ? 3 /* Constants.PointerSize */ : 0) + 2 /* Constants.HoverBorderWidth */;\n if (this._hoverPosition === 1 /* HoverPosition.RIGHT */) {\n this._hover.containerDomNode.style.maxWidth = `${this._targetDocumentElement.clientWidth - target.right - padding}px`;\n }\n else if (this._hoverPosition === 0 /* HoverPosition.LEFT */) {\n this._hover.containerDomNode.style.maxWidth = `${target.left - padding}px`;\n }\n return;\n }\n // Position hover on right to target\n if (this._hoverPosition === 1 /* HoverPosition.RIGHT */) {\n const roomOnRight = this._targetDocumentElement.clientWidth - target.right;\n // Hover on the right is going beyond window.\n if (roomOnRight < this._hover.containerDomNode.clientWidth) {\n const roomOnLeft = target.left;\n // There's enough room on the left, flip the hover position\n if (roomOnLeft >= this._hover.containerDomNode.clientWidth) {\n this._hoverPosition = 0 /* HoverPosition.LEFT */;\n }\n // Hover on the left would go beyond window too\n else {\n this._hoverPosition = 2 /* HoverPosition.BELOW */;\n }\n }\n }\n // Position hover on left to target\n else if (this._hoverPosition === 0 /* HoverPosition.LEFT */) {\n const roomOnLeft = target.left;\n // Hover on the left is going beyond window.\n if (roomOnLeft < this._hover.containerDomNode.clientWidth) {\n const roomOnRight = this._targetDocumentElement.clientWidth - target.right;\n // There's enough room on the right, flip the hover position\n if (roomOnRight >= this._hover.containerDomNode.clientWidth) {\n this._hoverPosition = 1 /* HoverPosition.RIGHT */;\n }\n // Hover on the right would go beyond window too\n else {\n this._hoverPosition = 2 /* HoverPosition.BELOW */;\n }\n }\n // Hover on the left is going beyond window.\n if (target.left - this._hover.containerDomNode.clientWidth <= this._targetDocumentElement.clientLeft) {\n this._hoverPosition = 1 /* HoverPosition.RIGHT */;\n }\n }\n }\n adjustVerticalHoverPosition(target) {\n // Do not adjust vertical hover position if the y coordinate is provided\n // or the position is forced\n if (this._target.y !== undefined || this._forcePosition) {\n return;\n }\n // Position hover on top of the target\n if (this._hoverPosition === 3 /* HoverPosition.ABOVE */) {\n // Hover on top is going beyond window\n if (target.top - this._hover.containerDomNode.clientHeight < 0) {\n this._hoverPosition = 2 /* HoverPosition.BELOW */;\n }\n }\n // Position hover below the target\n else if (this._hoverPosition === 2 /* HoverPosition.BELOW */) {\n // Hover on bottom is going beyond window\n if (target.bottom + this._hover.containerDomNode.clientHeight > this._targetWindow.innerHeight) {\n this._hoverPosition = 3 /* HoverPosition.ABOVE */;\n }\n }\n }\n adjustHoverMaxHeight(target) {\n let maxHeight = this._targetWindow.innerHeight / 2;\n // When force position is enabled, restrict max height\n if (this._forcePosition) {\n const padding = (this._hoverPointer ? 3 /* Constants.PointerSize */ : 0) + 2 /* Constants.HoverBorderWidth */;\n if (this._hoverPosition === 3 /* HoverPosition.ABOVE */) {\n maxHeight = Math.min(maxHeight, target.top - padding);\n }\n else if (this._hoverPosition === 2 /* HoverPosition.BELOW */) {\n maxHeight = Math.min(maxHeight, this._targetWindow.innerHeight - target.bottom - padding);\n }\n }\n this._hover.containerDomNode.style.maxHeight = `${maxHeight}px`;\n if (this._hover.contentsDomNode.clientHeight < this._hover.contentsDomNode.scrollHeight) {\n // Add padding for a vertical scrollbar\n const extraRightPadding = `${this._hover.scrollbar.options.verticalScrollbarSize}px`;\n if (this._hover.contentsDomNode.style.paddingRight !== extraRightPadding) {\n this._hover.contentsDomNode.style.paddingRight = extraRightPadding;\n }\n }\n }\n setHoverPointerPosition(target) {\n if (!this._hoverPointer) {\n return;\n }\n switch (this._hoverPosition) {\n case 0 /* HoverPosition.LEFT */:\n case 1 /* HoverPosition.RIGHT */: {\n this._hoverPointer.classList.add(this._hoverPosition === 0 /* HoverPosition.LEFT */ ? 'right' : 'left');\n const hoverHeight = this._hover.containerDomNode.clientHeight;\n // If hover is taller than target, then show the pointer at the center of target\n if (hoverHeight > target.height) {\n this._hoverPointer.style.top = `${target.center.y - (this._y - hoverHeight) - 3 /* Constants.PointerSize */}px`;\n }\n // Otherwise show the pointer at the center of hover\n else {\n this._hoverPointer.style.top = `${Math.round((hoverHeight / 2)) - 3 /* Constants.PointerSize */}px`;\n }\n break;\n }\n case 3 /* HoverPosition.ABOVE */:\n case 2 /* HoverPosition.BELOW */: {\n this._hoverPointer.classList.add(this._hoverPosition === 3 /* HoverPosition.ABOVE */ ? 'bottom' : 'top');\n const hoverWidth = this._hover.containerDomNode.clientWidth;\n // Position pointer at the center of the hover\n let pointerLeftPosition = Math.round((hoverWidth / 2)) - 3 /* Constants.PointerSize */;\n // If pointer goes beyond target then position it at the center of the target\n const pointerX = this._x + pointerLeftPosition;\n if (pointerX < target.left || pointerX > target.right) {\n pointerLeftPosition = target.center.x - this._x - 3 /* Constants.PointerSize */;\n }\n this._hoverPointer.style.left = `${pointerLeftPosition}px`;\n break;\n }\n }\n }\n focus() {\n this._hover.containerDomNode.focus();\n }\n dispose() {\n if (!this._isDisposed) {\n this._onDispose.fire();\n this._hoverContainer.remove();\n this._messageListeners.dispose();\n this._target.dispose();\n super.dispose();\n }\n this._isDisposed = true;\n }\n};\nHoverWidget = __decorate([\n __param(1, _platform_keybinding_common_keybinding_js__WEBPACK_IMPORTED_MODULE_4__.IKeybindingService),\n __param(2, _platform_configuration_common_configuration_js__WEBPACK_IMPORTED_MODULE_5__.IConfigurationService),\n __param(3, _platform_opener_common_opener_js__WEBPACK_IMPORTED_MODULE_9__.IOpenerService),\n __param(4, _platform_instantiation_common_instantiation_js__WEBPACK_IMPORTED_MODULE_10__.IInstantiationService),\n __param(5, _platform_accessibility_common_accessibility_js__WEBPACK_IMPORTED_MODULE_15__.IAccessibilityService)\n], HoverWidget);\n\nclass CompositeMouseTracker extends _base_browser_ui_widget_js__WEBPACK_IMPORTED_MODULE_8__.Widget {\n get onMouseOut() { return this._onMouseOut.event; }\n get isMouseIn() { return this._isMouseIn; }\n constructor(_elements) {\n super();\n this._elements = _elements;\n this._isMouseIn = true;\n this._onMouseOut = this._register(new _base_common_event_js__WEBPACK_IMPORTED_MODULE_2__.Emitter());\n this._elements.forEach(n => this.onmouseover(n, () => this._onTargetMouseOver(n)));\n this._elements.forEach(n => this.onmouseleave(n, () => this._onTargetMouseLeave(n)));\n }\n _onTargetMouseOver(target) {\n this._isMouseIn = true;\n this._clearEvaluateMouseStateTimeout(target);\n }\n _onTargetMouseLeave(target) {\n this._isMouseIn = false;\n this._evaluateMouseState(target);\n }\n _evaluateMouseState(target) {\n this._clearEvaluateMouseStateTimeout(target);\n // Evaluate whether the mouse is still outside asynchronously such that other mouse targets\n // have the opportunity to first their mouse in event.\n this._mouseTimeout = _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_3__.getWindow(target).setTimeout(() => this._fireIfMouseOutside(), 0);\n }\n _clearEvaluateMouseStateTimeout(target) {\n if (this._mouseTimeout) {\n _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_3__.getWindow(target).clearTimeout(this._mouseTimeout);\n this._mouseTimeout = undefined;\n }\n }\n _fireIfMouseOutside() {\n if (!this._isMouseIn) {\n this._onMouseOut.fire();\n }\n }\n}\nclass ElementHoverTarget {\n constructor(_element) {\n this._element = _element;\n this.targetElements = [this._element];\n }\n dispose() {\n }\n}\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/browser/widget/hoverWidget/hoverWidget.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/browser/widget/markdownRenderer/browser/markdownRenderer.js":
/*!**************************************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/browser/widget/markdownRenderer/browser/markdownRenderer.js ***!
\**************************************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ MarkdownRenderer: () => (/* binding */ MarkdownRenderer),\n/* harmony export */ openLinkFromMarkdown: () => (/* binding */ openLinkFromMarkdown)\n/* harmony export */ });\n/* harmony import */ var _base_browser_markdownRenderer_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../../../base/browser/markdownRenderer.js */ \"./node_modules/monaco-editor/esm/vs/base/browser/markdownRenderer.js\");\n/* harmony import */ var _base_browser_trustedTypes_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../../base/browser/trustedTypes.js */ \"./node_modules/monaco-editor/esm/vs/base/browser/trustedTypes.js\");\n/* harmony import */ var _base_common_errors_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../../../base/common/errors.js */ \"./node_modules/monaco-editor/esm/vs/base/common/errors.js\");\n/* harmony import */ var _base_common_event_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../../../../base/common/event.js */ \"./node_modules/monaco-editor/esm/vs/base/common/event.js\");\n/* harmony import */ var _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../../../../base/common/lifecycle.js */ \"./node_modules/monaco-editor/esm/vs/base/common/lifecycle.js\");\n/* harmony import */ var _renderedMarkdown_css__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./renderedMarkdown.css */ \"./node_modules/monaco-editor/esm/vs/editor/browser/widget/markdownRenderer/browser/renderedMarkdown.css\");\n/* harmony import */ var _config_domFontInfo_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../../../config/domFontInfo.js */ \"./node_modules/monaco-editor/esm/vs/editor/browser/config/domFontInfo.js\");\n/* harmony import */ var _common_languages_language_js__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ../../../../common/languages/language.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/languages/language.js\");\n/* harmony import */ var _common_languages_modesRegistry_js__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ../../../../common/languages/modesRegistry.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/languages/modesRegistry.js\");\n/* harmony import */ var _common_languages_textToHtmlTokenizer_js__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ../../../../common/languages/textToHtmlTokenizer.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/languages/textToHtmlTokenizer.js\");\n/* harmony import */ var _platform_opener_common_opener_js__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! ../../../../../platform/opener/common/opener.js */ \"./node_modules/monaco-editor/esm/vs/platform/opener/common/opener.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\nvar __decorate = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\n return c > 3 && r && Object.defineProperty(target, key, r), r;\n};\nvar __param = (undefined && undefined.__param) || function (paramIndex, decorator) {\n return function (target, key) { decorator(target, key, paramIndex); }\n};\nvar MarkdownRenderer_1;\n\n\n\n\n\n\n\n\n\n\n\n/**\n * Markdown renderer that can render codeblocks with the editor mechanics. This\n * renderer should always be preferred.\n */\nlet MarkdownRenderer = MarkdownRenderer_1 = class MarkdownRenderer {\n constructor(_options, _languageService, _openerService) {\n this._options = _options;\n this._languageService = _languageService;\n this._openerService = _openerService;\n this._onDidRenderAsync = new _base_common_event_js__WEBPACK_IMPORTED_MODULE_3__.Emitter();\n this.onDidRenderAsync = this._onDidRenderAsync.event;\n }\n dispose() {\n this._onDidRenderAsync.dispose();\n }\n render(markdown, options, markedOptions) {\n if (!markdown) {\n const element = document.createElement('span');\n return { element, dispose: () => { } };\n }\n const disposables = new _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_4__.DisposableStore();\n const rendered = disposables.add((0,_base_browser_markdownRenderer_js__WEBPACK_IMPORTED_MODULE_0__.renderMarkdown)(markdown, { ...this._getRenderOptions(markdown, disposables), ...options }, markedOptions));\n rendered.element.classList.add('rendered-markdown');\n return {\n element: rendered.element,\n dispose: () => disposables.dispose()\n };\n }\n _getRenderOptions(markdown, disposables) {\n return {\n codeBlockRenderer: async (languageAlias, value) => {\n var _a, _b, _c;\n // In markdown,\n // it is possible that we stumble upon language aliases (e.g.js instead of javascript)\n // it is possible no alias is given in which case we fall back to the current editor lang\n let languageId;\n if (languageAlias) {\n languageId = this._languageService.getLanguageIdByLanguageName(languageAlias);\n }\n else if (this._options.editor) {\n languageId = (_a = this._options.editor.getModel()) === null || _a === void 0 ? void 0 : _a.getLanguageId();\n }\n if (!languageId) {\n languageId = _common_languages_modesRegistry_js__WEBPACK_IMPORTED_MODULE_8__.PLAINTEXT_LANGUAGE_ID;\n }\n const html = await (0,_common_languages_textToHtmlTokenizer_js__WEBPACK_IMPORTED_MODULE_9__.tokenizeToString)(this._languageService, value, languageId);\n const element = document.createElement('span');\n element.innerHTML = ((_c = (_b = MarkdownRenderer_1._ttpTokenizer) === null || _b === void 0 ? void 0 : _b.createHTML(html)) !== null && _c !== void 0 ? _c : html);\n // use \"good\" font\n if (this._options.editor) {\n const fontInfo = this._options.editor.getOption(50 /* EditorOption.fontInfo */);\n (0,_config_domFontInfo_js__WEBPACK_IMPORTED_MODULE_6__.applyFontInfo)(element, fontInfo);\n }\n else if (this._options.codeBlockFontFamily) {\n element.style.fontFamily = this._options.codeBlockFontFamily;\n }\n if (this._options.codeBlockFontSize !== undefined) {\n element.style.fontSize = this._options.codeBlockFontSize;\n }\n return element;\n },\n asyncRenderCallback: () => this._onDidRenderAsync.fire(),\n actionHandler: {\n callback: (link) => openLinkFromMarkdown(this._openerService, link, markdown.isTrusted),\n disposables: disposables\n }\n };\n }\n};\nMarkdownRenderer._ttpTokenizer = (0,_base_browser_trustedTypes_js__WEBPACK_IMPORTED_MODULE_1__.createTrustedTypesPolicy)('tokenizeToString', {\n createHTML(html) {\n return html;\n }\n});\nMarkdownRenderer = MarkdownRenderer_1 = __decorate([\n __param(1, _common_languages_language_js__WEBPACK_IMPORTED_MODULE_7__.ILanguageService),\n __param(2, _platform_opener_common_opener_js__WEBPACK_IMPORTED_MODULE_10__.IOpenerService)\n], MarkdownRenderer);\n\nasync function openLinkFromMarkdown(openerService, link, isTrusted) {\n try {\n return await openerService.open(link, {\n fromUserGesture: true,\n allowContributedOpeners: true,\n allowCommands: toAllowCommandsOption(isTrusted),\n });\n }\n catch (e) {\n (0,_base_common_errors_js__WEBPACK_IMPORTED_MODULE_2__.onUnexpectedError)(e);\n return false;\n }\n}\nfunction toAllowCommandsOption(isTrusted) {\n if (isTrusted === true) {\n return true; // Allow all commands\n }\n if (isTrusted && Array.isArray(isTrusted.enabledCommands)) {\n return isTrusted.enabledCommands; // Allow subset of commands\n }\n return false; // Block commands\n}\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/browser/widget/markdownRenderer/browser/markdownRenderer.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/browser/widget/multiDiffEditorWidget/colors.js":
/*!*************************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/browser/widget/multiDiffEditorWidget/colors.js ***!
\*************************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ multiDiffEditorBackground: () => (/* binding */ multiDiffEditorBackground),\n/* harmony export */ multiDiffEditorBorder: () => (/* binding */ multiDiffEditorBorder),\n/* harmony export */ multiDiffEditorHeaderBackground: () => (/* binding */ multiDiffEditorHeaderBackground)\n/* harmony export */ });\n/* harmony import */ var _nls_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../../nls.js */ \"./node_modules/monaco-editor/esm/vs/nls.js\");\n/* harmony import */ var _platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../platform/theme/common/colorRegistry.js */ \"./node_modules/monaco-editor/esm/vs/platform/theme/common/colorRegistry.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n\nconst multiDiffEditorHeaderBackground = (0,_platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_1__.registerColor)('multiDiffEditor.headerBackground', { dark: '#262626', light: 'tab.inactiveBackground', hcDark: 'tab.inactiveBackground', hcLight: 'tab.inactiveBackground', }, (0,_nls_js__WEBPACK_IMPORTED_MODULE_0__.localize)('multiDiffEditor.headerBackground', 'The background color of the diff editor\\'s header'));\nconst multiDiffEditorBackground = (0,_platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_1__.registerColor)('multiDiffEditor.background', { dark: 'editorBackground', light: 'editorBackground', hcDark: 'editorBackground', hcLight: 'editorBackground', }, (0,_nls_js__WEBPACK_IMPORTED_MODULE_0__.localize)('multiDiffEditor.background', 'The background color of the multi file diff editor'));\nconst multiDiffEditorBorder = (0,_platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_1__.registerColor)('multiDiffEditor.border', { dark: 'sideBarSectionHeader.border', light: '#cccccc', hcDark: 'sideBarSectionHeader.border', hcLight: '#cccccc', }, (0,_nls_js__WEBPACK_IMPORTED_MODULE_0__.localize)('multiDiffEditor.border', 'The border color of the multi file diff editor'));\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/browser/widget/multiDiffEditorWidget/colors.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/browser/widget/multiDiffEditorWidget/diffEditorItemTemplate.js":
/*!*****************************************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/browser/widget/multiDiffEditorWidget/diffEditorItemTemplate.js ***!
\*****************************************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ DiffEditorItemTemplate: () => (/* binding */ DiffEditorItemTemplate),\n/* harmony export */ TemplateData: () => (/* binding */ TemplateData)\n/* harmony export */ });\n/* harmony import */ var _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../../base/browser/dom.js */ \"./node_modules/monaco-editor/esm/vs/base/browser/dom.js\");\n/* harmony import */ var _base_browser_ui_button_button_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../base/browser/ui/button/button.js */ \"./node_modules/monaco-editor/esm/vs/base/browser/ui/button/button.js\");\n/* harmony import */ var _base_common_codicons_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../../base/common/codicons.js */ \"./node_modules/monaco-editor/esm/vs/base/common/codicons.js\");\n/* harmony import */ var _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../../../base/common/lifecycle.js */ \"./node_modules/monaco-editor/esm/vs/base/common/lifecycle.js\");\n/* harmony import */ var _base_common_observable_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../../../base/common/observable.js */ \"./node_modules/monaco-editor/esm/vs/base/common/observable.js\");\n/* harmony import */ var _base_common_observableInternal_base_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../../../../base/common/observableInternal/base.js */ \"./node_modules/monaco-editor/esm/vs/base/common/observableInternal/base.js\");\n/* harmony import */ var _diffEditor_diffEditorWidget_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../diffEditor/diffEditorWidget.js */ \"./node_modules/monaco-editor/esm/vs/editor/browser/widget/diffEditor/diffEditorWidget.js\");\n/* harmony import */ var _platform_actions_browser_toolbar_js__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ../../../../platform/actions/browser/toolbar.js */ \"./node_modules/monaco-editor/esm/vs/platform/actions/browser/toolbar.js\");\n/* harmony import */ var _platform_actions_common_actions_js__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ../../../../platform/actions/common/actions.js */ \"./node_modules/monaco-editor/esm/vs/platform/actions/common/actions.js\");\n/* harmony import */ var _platform_instantiation_common_instantiation_js__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ../../../../platform/instantiation/common/instantiation.js */ \"./node_modules/monaco-editor/esm/vs/platform/instantiation/common/instantiation.js\");\n/* harmony import */ var _utils_js__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! ./utils.js */ \"./node_modules/monaco-editor/esm/vs/editor/browser/widget/multiDiffEditorWidget/utils.js\");\n/* harmony import */ var _platform_actions_browser_menuEntryActionViewItem_js__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(/*! ../../../../platform/actions/browser/menuEntryActionViewItem.js */ \"./node_modules/monaco-editor/esm/vs/platform/actions/browser/menuEntryActionViewItem.js\");\nvar __decorate = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\n return c > 3 && r && Object.defineProperty(target, key, r), r;\n};\nvar __param = (undefined && undefined.__param) || function (paramIndex, decorator) {\n return function (target, key) { decorator(target, key, paramIndex); }\n};\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n\n\n\n\n\n\n\n\n\n\n\nclass TemplateData {\n constructor(viewModel, deltaScrollVertical) {\n this.viewModel = viewModel;\n this.deltaScrollVertical = deltaScrollVertical;\n }\n getId() {\n return this.viewModel;\n }\n}\nlet DiffEditorItemTemplate = class DiffEditorItemTemplate extends _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_3__.Disposable {\n constructor(_container, _overflowWidgetsDomNode, _workbenchUIElementFactory, _instantiationService) {\n super();\n this._container = _container;\n this._overflowWidgetsDomNode = _overflowWidgetsDomNode;\n this._workbenchUIElementFactory = _workbenchUIElementFactory;\n this._instantiationService = _instantiationService;\n this._viewModel = (0,_base_common_observableInternal_base_js__WEBPACK_IMPORTED_MODULE_5__.observableValue)(this, undefined);\n this._collapsed = (0,_base_common_observable_js__WEBPACK_IMPORTED_MODULE_4__.derived)(this, reader => { var _a; return (_a = this._viewModel.read(reader)) === null || _a === void 0 ? void 0 : _a.collapsed.read(reader); });\n this._editorContentHeight = (0,_base_common_observableInternal_base_js__WEBPACK_IMPORTED_MODULE_5__.observableValue)(this, 500);\n this.contentHeight = (0,_base_common_observable_js__WEBPACK_IMPORTED_MODULE_4__.derived)(this, reader => {\n const h = this._collapsed.read(reader) ? 0 : this._editorContentHeight.read(reader);\n return h + this._outerEditorHeight;\n });\n this._modifiedContentWidth = (0,_base_common_observableInternal_base_js__WEBPACK_IMPORTED_MODULE_5__.observableValue)(this, 0);\n this._modifiedWidth = (0,_base_common_observableInternal_base_js__WEBPACK_IMPORTED_MODULE_5__.observableValue)(this, 0);\n this._originalContentWidth = (0,_base_common_observableInternal_base_js__WEBPACK_IMPORTED_MODULE_5__.observableValue)(this, 0);\n this._originalWidth = (0,_base_common_observableInternal_base_js__WEBPACK_IMPORTED_MODULE_5__.observableValue)(this, 0);\n this.maxScroll = (0,_base_common_observable_js__WEBPACK_IMPORTED_MODULE_4__.derived)(this, reader => {\n const scroll1 = this._modifiedContentWidth.read(reader) - this._modifiedWidth.read(reader);\n const scroll2 = this._originalContentWidth.read(reader) - this._originalWidth.read(reader);\n if (scroll1 > scroll2) {\n return { maxScroll: scroll1, width: this._modifiedWidth.read(reader) };\n }\n else {\n return { maxScroll: scroll2, width: this._originalWidth.read(reader) };\n }\n });\n this._elements = (0,_base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.h)('div.multiDiffEntry', [\n (0,_base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.h)('div.header@header', [\n (0,_base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.h)('div.header-content', [\n (0,_base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.h)('div.collapse-button@collapseButton'),\n (0,_base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.h)('div.file-path', [\n (0,_base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.h)('div.title.modified.show-file-icons@primaryPath', []),\n (0,_base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.h)('div.status.deleted@status', ['R']),\n (0,_base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.h)('div.title.original.show-file-icons@secondaryPath', []),\n ]),\n (0,_base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.h)('div.actions@actions'),\n ]),\n ]),\n (0,_base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.h)('div.editorParent', [\n (0,_base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.h)('div.editorContainer@editor'),\n ])\n ]);\n this.editor = this._register(this._instantiationService.createInstance(_diffEditor_diffEditorWidget_js__WEBPACK_IMPORTED_MODULE_6__.DiffEditorWidget, this._elements.editor, {\n overflowWidgetsDomNode: this._overflowWidgetsDomNode,\n }, {}));\n this.isModifedFocused = isFocused(this.editor.getModifiedEditor());\n this.isOriginalFocused = isFocused(this.editor.getOriginalEditor());\n this.isFocused = (0,_base_common_observable_js__WEBPACK_IMPORTED_MODULE_4__.derived)(this, reader => this.isModifedFocused.read(reader) || this.isOriginalFocused.read(reader));\n this._resourceLabel = this._workbenchUIElementFactory.createResourceLabel\n ? this._register(this._workbenchUIElementFactory.createResourceLabel(this._elements.primaryPath))\n : undefined;\n this._resourceLabel2 = this._workbenchUIElementFactory.createResourceLabel\n ? this._register(this._workbenchUIElementFactory.createResourceLabel(this._elements.secondaryPath))\n : undefined;\n this._dataStore = new _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_3__.DisposableStore();\n this._headerHeight = 48;\n this._lastScrollTop = -1;\n this._isSettingScrollTop = false;\n const btn = new _base_browser_ui_button_button_js__WEBPACK_IMPORTED_MODULE_1__.Button(this._elements.collapseButton, {});\n this._register((0,_base_common_observable_js__WEBPACK_IMPORTED_MODULE_4__.autorun)(reader => {\n btn.element.className = '';\n btn.icon = this._collapsed.read(reader) ? _base_common_codicons_js__WEBPACK_IMPORTED_MODULE_2__.Codicon.chevronRight : _base_common_codicons_js__WEBPACK_IMPORTED_MODULE_2__.Codicon.chevronDown;\n }));\n this._register(btn.onDidClick(() => {\n var _a;\n (_a = this._viewModel.get()) === null || _a === void 0 ? void 0 : _a.collapsed.set(!this._collapsed.get(), undefined);\n }));\n this._register((0,_base_common_observable_js__WEBPACK_IMPORTED_MODULE_4__.autorun)(reader => {\n this._elements.editor.style.display = this._collapsed.read(reader) ? 'none' : 'block';\n }));\n this._register(this.editor.getModifiedEditor().onDidLayoutChange(e => {\n const width = this.editor.getModifiedEditor().getLayoutInfo().contentWidth;\n this._modifiedWidth.set(width, undefined);\n }));\n this._register(this.editor.getOriginalEditor().onDidLayoutChange(e => {\n const width = this.editor.getOriginalEditor().getLayoutInfo().contentWidth;\n this._originalWidth.set(width, undefined);\n }));\n this._register(this.editor.onDidContentSizeChange(e => {\n (0,_base_common_observableInternal_base_js__WEBPACK_IMPORTED_MODULE_5__.globalTransaction)(tx => {\n this._editorContentHeight.set(e.contentHeight, tx);\n this._modifiedContentWidth.set(this.editor.getModifiedEditor().getContentWidth(), tx);\n this._originalContentWidth.set(this.editor.getOriginalEditor().getContentWidth(), tx);\n });\n }));\n this._register(this.editor.getOriginalEditor().onDidScrollChange(e => {\n if (this._isSettingScrollTop) {\n return;\n }\n if (!e.scrollTopChanged || !this._data) {\n return;\n }\n const delta = e.scrollTop - this._lastScrollTop;\n this._data.deltaScrollVertical(delta);\n }));\n this._register((0,_base_common_observable_js__WEBPACK_IMPORTED_MODULE_4__.autorun)(reader => {\n const isFocused = this.isFocused.read(reader);\n this._elements.root.classList.toggle('focused', isFocused);\n }));\n this._container.appendChild(this._elements.root);\n this._outerEditorHeight = this._headerHeight;\n this._register(this._instantiationService.createInstance(_platform_actions_browser_toolbar_js__WEBPACK_IMPORTED_MODULE_7__.MenuWorkbenchToolBar, this._elements.actions, _platform_actions_common_actions_js__WEBPACK_IMPORTED_MODULE_8__.MenuId.MultiDiffEditorFileToolbar, {\n actionRunner: this._register(new _utils_js__WEBPACK_IMPORTED_MODULE_10__.ActionRunnerWithContext(() => { var _a; return ((_a = this._viewModel.get()) === null || _a === void 0 ? void 0 : _a.modifiedUri); })),\n menuOptions: {\n shouldForwardArgs: true,\n },\n toolbarOptions: { primaryGroup: g => g.startsWith('navigation') },\n actionViewItemProvider: (action, options) => (0,_platform_actions_browser_menuEntryActionViewItem_js__WEBPACK_IMPORTED_MODULE_11__.createActionViewItem)(_instantiationService, action, options),\n }));\n }\n setScrollLeft(left) {\n if (this._modifiedContentWidth.get() - this._modifiedWidth.get() > this._originalContentWidth.get() - this._originalWidth.get()) {\n this.editor.getModifiedEditor().setScrollLeft(left);\n }\n else {\n this.editor.getOriginalEditor().setScrollLeft(left);\n }\n }\n setData(data) {\n this._data = data;\n function updateOptions(options) {\n return {\n ...options,\n scrollBeyondLastLine: false,\n hideUnchangedRegions: {\n enabled: true,\n },\n scrollbar: {\n vertical: 'hidden',\n horizontal: 'hidden',\n handleMouseWheel: false,\n useShadows: false,\n },\n renderOverviewRuler: false,\n fixedOverflowWidgets: true,\n overviewRulerBorder: false,\n };\n }\n const value = data.viewModel.entry.value; // TODO\n if (value.onOptionsDidChange) {\n this._dataStore.add(value.onOptionsDidChange(() => {\n var _a;\n this.editor.updateOptions(updateOptions((_a = value.options) !== null && _a !== void 0 ? _a : {}));\n }));\n }\n (0,_base_common_observableInternal_base_js__WEBPACK_IMPORTED_MODULE_5__.globalTransaction)(tx => {\n var _a, _b, _c, _d;\n (_a = this._resourceLabel) === null || _a === void 0 ? void 0 : _a.setUri((_b = data.viewModel.modifiedUri) !== null && _b !== void 0 ? _b : data.viewModel.originalUri, { strikethrough: data.viewModel.modifiedUri === undefined });\n let isRenamed = false;\n let isDeleted = false;\n let isAdded = false;\n let flag = '';\n if (data.viewModel.modifiedUri && data.viewModel.originalUri && data.viewModel.modifiedUri.path !== data.viewModel.originalUri.path) {\n flag = 'R';\n isRenamed = true;\n }\n else if (!data.viewModel.modifiedUri) {\n flag = 'D';\n isDeleted = true;\n }\n else if (!data.viewModel.originalUri) {\n flag = 'A';\n isAdded = true;\n }\n this._elements.status.classList.toggle('renamed', isRenamed);\n this._elements.status.classList.toggle('deleted', isDeleted);\n this._elements.status.classList.toggle('added', isAdded);\n this._elements.status.innerText = flag;\n (_c = this._resourceLabel2) === null || _c === void 0 ? void 0 : _c.setUri(isRenamed ? data.viewModel.originalUri : undefined, { strikethrough: true });\n this._dataStore.clear();\n this._viewModel.set(data.viewModel, tx);\n this.editor.setModel(data.viewModel.diffEditorViewModel, tx);\n this.editor.updateOptions(updateOptions((_d = value.options) !== null && _d !== void 0 ? _d : {}));\n });\n }\n render(verticalRange, width, editorScroll, viewPort) {\n this._elements.root.style.visibility = 'visible';\n this._elements.root.style.top = `${verticalRange.start}px`;\n this._elements.root.style.height = `${verticalRange.length}px`;\n this._elements.root.style.width = `${width}px`;\n this._elements.root.style.position = 'absolute';\n // For sticky scroll\n const maxDelta = verticalRange.length - this._headerHeight;\n const delta = Math.max(0, Math.min(viewPort.start - verticalRange.start, maxDelta));\n this._elements.header.style.transform = `translateY(${delta}px)`;\n (0,_base_common_observableInternal_base_js__WEBPACK_IMPORTED_MODULE_5__.globalTransaction)(tx => {\n this.editor.layout({\n width: width - 2 * 8 - 2 * 1,\n height: verticalRange.length - this._outerEditorHeight,\n });\n });\n try {\n this._isSettingScrollTop = true;\n this._lastScrollTop = editorScroll;\n this.editor.getOriginalEditor().setScrollTop(editorScroll);\n }\n finally {\n this._isSettingScrollTop = false;\n }\n this._elements.header.classList.toggle('shadow', delta > 0 || editorScroll > 0);\n this._elements.header.classList.toggle('collapsed', delta === maxDelta);\n }\n hide() {\n this._elements.root.style.top = `-100000px`;\n this._elements.root.style.visibility = 'hidden'; // Some editor parts are still visible\n }\n};\nDiffEditorItemTemplate = __decorate([\n __param(3, _platform_instantiation_common_instantiation_js__WEBPACK_IMPORTED_MODULE_9__.IInstantiationService)\n], DiffEditorItemTemplate);\n\nfunction isFocused(editor) {\n return (0,_base_common_observable_js__WEBPACK_IMPORTED_MODULE_4__.observableFromEvent)(h => {\n const store = new _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_3__.DisposableStore();\n store.add(editor.onDidFocusEditorWidget(() => h(true)));\n store.add(editor.onDidBlurEditorWidget(() => h(false)));\n return store;\n }, () => editor.hasWidgetFocus());\n}\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/browser/widget/multiDiffEditorWidget/diffEditorItemTemplate.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/browser/widget/multiDiffEditorWidget/multiDiffEditorWidget.js":
/*!****************************************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/browser/widget/multiDiffEditorWidget/multiDiffEditorWidget.js ***!
\****************************************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ MultiDiffEditorWidget: () => (/* binding */ MultiDiffEditorWidget)\n/* harmony export */ });\n/* harmony import */ var _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../../base/common/lifecycle.js */ \"./node_modules/monaco-editor/esm/vs/base/common/lifecycle.js\");\n/* harmony import */ var _base_common_observable_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../base/common/observable.js */ \"./node_modules/monaco-editor/esm/vs/base/common/observable.js\");\n/* harmony import */ var _diffEditor_utils_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../diffEditor/utils.js */ \"./node_modules/monaco-editor/esm/vs/editor/browser/widget/diffEditor/utils.js\");\n/* harmony import */ var _multiDiffEditorWidgetImpl_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./multiDiffEditorWidgetImpl.js */ \"./node_modules/monaco-editor/esm/vs/editor/browser/widget/multiDiffEditorWidget/multiDiffEditorWidgetImpl.js\");\n/* harmony import */ var _platform_instantiation_common_instantiation_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../../../platform/instantiation/common/instantiation.js */ \"./node_modules/monaco-editor/esm/vs/platform/instantiation/common/instantiation.js\");\n/* harmony import */ var _colors_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./colors.js */ \"./node_modules/monaco-editor/esm/vs/editor/browser/widget/multiDiffEditorWidget/colors.js\");\n/* harmony import */ var _diffEditorItemTemplate_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ./diffEditorItemTemplate.js */ \"./node_modules/monaco-editor/esm/vs/editor/browser/widget/multiDiffEditorWidget/diffEditorItemTemplate.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\nvar __decorate = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\n return c > 3 && r && Object.defineProperty(target, key, r), r;\n};\nvar __param = (undefined && undefined.__param) || function (paramIndex, decorator) {\n return function (target, key) { decorator(target, key, paramIndex); }\n};\n\n\n\n\n\n\n\nlet MultiDiffEditorWidget = class MultiDiffEditorWidget extends _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_0__.Disposable {\n constructor(_element, _workbenchUIElementFactory, _instantiationService) {\n super();\n this._element = _element;\n this._workbenchUIElementFactory = _workbenchUIElementFactory;\n this._instantiationService = _instantiationService;\n this._dimension = (0,_base_common_observable_js__WEBPACK_IMPORTED_MODULE_1__.observableValue)(this, undefined);\n this._viewModel = (0,_base_common_observable_js__WEBPACK_IMPORTED_MODULE_1__.observableValue)(this, undefined);\n this._widgetImpl = (0,_base_common_observable_js__WEBPACK_IMPORTED_MODULE_1__.derivedWithStore)(this, (reader, store) => {\n (0,_diffEditor_utils_js__WEBPACK_IMPORTED_MODULE_2__.readHotReloadableExport)(_diffEditorItemTemplate_js__WEBPACK_IMPORTED_MODULE_6__.DiffEditorItemTemplate, reader);\n return store.add(this._instantiationService.createInstance(((0,_diffEditor_utils_js__WEBPACK_IMPORTED_MODULE_2__.readHotReloadableExport)(_multiDiffEditorWidgetImpl_js__WEBPACK_IMPORTED_MODULE_3__.MultiDiffEditorWidgetImpl, reader)), this._element, this._dimension, this._viewModel, this._workbenchUIElementFactory));\n });\n this._register((0,_base_common_observable_js__WEBPACK_IMPORTED_MODULE_1__.recomputeInitiallyAndOnChange)(this._widgetImpl));\n }\n};\nMultiDiffEditorWidget = __decorate([\n __param(2, _platform_instantiation_common_instantiation_js__WEBPACK_IMPORTED_MODULE_4__.IInstantiationService)\n], MultiDiffEditorWidget);\n\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/browser/widget/multiDiffEditorWidget/multiDiffEditorWidget.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/browser/widget/multiDiffEditorWidget/multiDiffEditorWidgetImpl.js":
/*!********************************************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/browser/widget/multiDiffEditorWidget/multiDiffEditorWidgetImpl.js ***!
\********************************************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ MultiDiffEditorWidgetImpl: () => (/* binding */ MultiDiffEditorWidgetImpl)\n/* harmony export */ });\n/* harmony import */ var _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../../base/browser/dom.js */ \"./node_modules/monaco-editor/esm/vs/base/browser/dom.js\");\n/* harmony import */ var _base_browser_ui_scrollbar_scrollableElement_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../base/browser/ui/scrollbar/scrollableElement.js */ \"./node_modules/monaco-editor/esm/vs/base/browser/ui/scrollbar/scrollableElement.js\");\n/* harmony import */ var _base_common_arraysFind_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../../base/common/arraysFind.js */ \"./node_modules/monaco-editor/esm/vs/base/common/arraysFind.js\");\n/* harmony import */ var _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../../../base/common/lifecycle.js */ \"./node_modules/monaco-editor/esm/vs/base/common/lifecycle.js\");\n/* harmony import */ var _base_common_observable_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../../../base/common/observable.js */ \"./node_modules/monaco-editor/esm/vs/base/common/observable.js\");\n/* harmony import */ var _base_common_observableInternal_base_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../../../../base/common/observableInternal/base.js */ \"./node_modules/monaco-editor/esm/vs/base/common/observableInternal/base.js\");\n/* harmony import */ var _base_common_scrollable_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../../../../base/common/scrollable.js */ \"./node_modules/monaco-editor/esm/vs/base/common/scrollable.js\");\n/* harmony import */ var _style_css__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ./style.css */ \"./node_modules/monaco-editor/esm/vs/editor/browser/widget/multiDiffEditorWidget/style.css\");\n/* harmony import */ var _diffEditor_utils_js__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ../diffEditor/utils.js */ \"./node_modules/monaco-editor/esm/vs/editor/browser/widget/diffEditor/utils.js\");\n/* harmony import */ var _common_core_offsetRange_js__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ../../../common/core/offsetRange.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/core/offsetRange.js\");\n/* harmony import */ var _common_core_selection_js__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! ../../../common/core/selection.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/core/selection.js\");\n/* harmony import */ var _common_editorContextKeys_js__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(/*! ../../../common/editorContextKeys.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/editorContextKeys.js\");\n/* harmony import */ var _platform_contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(/*! ../../../../platform/contextkey/common/contextkey.js */ \"./node_modules/monaco-editor/esm/vs/platform/contextkey/common/contextkey.js\");\n/* harmony import */ var _platform_instantiation_common_instantiation_js__WEBPACK_IMPORTED_MODULE_13__ = __webpack_require__(/*! ../../../../platform/instantiation/common/instantiation.js */ \"./node_modules/monaco-editor/esm/vs/platform/instantiation/common/instantiation.js\");\n/* harmony import */ var _platform_instantiation_common_serviceCollection_js__WEBPACK_IMPORTED_MODULE_14__ = __webpack_require__(/*! ../../../../platform/instantiation/common/serviceCollection.js */ \"./node_modules/monaco-editor/esm/vs/platform/instantiation/common/serviceCollection.js\");\n/* harmony import */ var _diffEditorItemTemplate_js__WEBPACK_IMPORTED_MODULE_15__ = __webpack_require__(/*! ./diffEditorItemTemplate.js */ \"./node_modules/monaco-editor/esm/vs/editor/browser/widget/multiDiffEditorWidget/diffEditorItemTemplate.js\");\n/* harmony import */ var _objectPool_js__WEBPACK_IMPORTED_MODULE_16__ = __webpack_require__(/*! ./objectPool.js */ \"./node_modules/monaco-editor/esm/vs/editor/browser/widget/multiDiffEditorWidget/objectPool.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\nvar __decorate = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\n return c > 3 && r && Object.defineProperty(target, key, r), r;\n};\nvar __param = (undefined && undefined.__param) || function (paramIndex, decorator) {\n return function (target, key) { decorator(target, key, paramIndex); }\n};\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlet MultiDiffEditorWidgetImpl = class MultiDiffEditorWidgetImpl extends _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_3__.Disposable {\n constructor(_element, _dimension, _viewModel, _workbenchUIElementFactory, _parentContextKeyService, _parentInstantiationService) {\n super();\n this._element = _element;\n this._dimension = _dimension;\n this._viewModel = _viewModel;\n this._workbenchUIElementFactory = _workbenchUIElementFactory;\n this._parentContextKeyService = _parentContextKeyService;\n this._parentInstantiationService = _parentInstantiationService;\n this._elements = (0,_base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.h)('div.monaco-component.multiDiffEditor', [\n (0,_base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.h)('div@content', {\n style: {\n overflow: 'hidden',\n }\n }),\n (0,_base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.h)('div.monaco-editor@overflowWidgetsDomNode', {}),\n ]);\n this._sizeObserver = this._register(new _diffEditor_utils_js__WEBPACK_IMPORTED_MODULE_8__.ObservableElementSizeObserver(this._element, undefined));\n this._objectPool = this._register(new _objectPool_js__WEBPACK_IMPORTED_MODULE_16__.ObjectPool((data) => {\n const template = this._instantiationService.createInstance(_diffEditorItemTemplate_js__WEBPACK_IMPORTED_MODULE_15__.DiffEditorItemTemplate, this._elements.content, this._elements.overflowWidgetsDomNode, this._workbenchUIElementFactory);\n template.setData(data);\n return template;\n }));\n this._scrollable = this._register(new _base_common_scrollable_js__WEBPACK_IMPORTED_MODULE_6__.Scrollable({\n forceIntegerValues: false,\n scheduleAtNextAnimationFrame: (cb) => (0,_base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.scheduleAtNextAnimationFrame)((0,_base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.getWindow)(this._element), cb),\n smoothScrollDuration: 100,\n }));\n this._scrollableElement = this._register(new _base_browser_ui_scrollbar_scrollableElement_js__WEBPACK_IMPORTED_MODULE_1__.SmoothScrollableElement(this._elements.root, {\n vertical: 1 /* ScrollbarVisibility.Auto */,\n horizontal: 1 /* ScrollbarVisibility.Auto */,\n useShadows: false,\n }, this._scrollable));\n this.scrollTop = (0,_base_common_observable_js__WEBPACK_IMPORTED_MODULE_4__.observableFromEvent)(this._scrollableElement.onScroll, () => /** @description scrollTop */ this._scrollableElement.getScrollPosition().scrollTop);\n this.scrollLeft = (0,_base_common_observable_js__WEBPACK_IMPORTED_MODULE_4__.observableFromEvent)(this._scrollableElement.onScroll, () => /** @description scrollLeft */ this._scrollableElement.getScrollPosition().scrollLeft);\n this._viewItems = (0,_base_common_observable_js__WEBPACK_IMPORTED_MODULE_4__.derivedWithStore)(this, (reader, store) => {\n const vm = this._viewModel.read(reader);\n if (!vm) {\n return [];\n }\n const items = vm.items.read(reader);\n return items.map(d => {\n var _a;\n const item = store.add(new VirtualizedViewItem(d, this._objectPool, this.scrollLeft, delta => {\n this._scrollableElement.setScrollPosition({ scrollTop: this._scrollableElement.getScrollPosition().scrollTop + delta });\n }));\n const data = (_a = this._lastDocStates) === null || _a === void 0 ? void 0 : _a[item.getKey()];\n if (data) {\n (0,_base_common_observableInternal_base_js__WEBPACK_IMPORTED_MODULE_5__.transaction)(tx => {\n item.setViewState(data, tx);\n });\n }\n return item;\n });\n });\n this._spaceBetweenPx = 0;\n this._totalHeight = this._viewItems.map(this, (items, reader) => items.reduce((r, i) => r + i.contentHeight.read(reader) + this._spaceBetweenPx, 0));\n this.activeDiffItem = (0,_base_common_observable_js__WEBPACK_IMPORTED_MODULE_4__.derived)(this, reader => this._viewItems.read(reader).find(i => { var _a; return (_a = i.template.read(reader)) === null || _a === void 0 ? void 0 : _a.isFocused.read(reader); }));\n this.lastActiveDiffItem = (0,_base_common_observable_js__WEBPACK_IMPORTED_MODULE_4__.derivedObservableWithCache)((reader, lastValue) => { var _a; return (_a = this.activeDiffItem.read(reader)) !== null && _a !== void 0 ? _a : lastValue; });\n this._contextKeyService = this._register(this._parentContextKeyService.createScoped(this._element));\n this._instantiationService = this._parentInstantiationService.createChild(new _platform_instantiation_common_serviceCollection_js__WEBPACK_IMPORTED_MODULE_14__.ServiceCollection([_platform_contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_12__.IContextKeyService, this._contextKeyService]));\n /** This accounts for documents that are not loaded yet. */\n this._lastDocStates = {};\n this._contextKeyService.createKey(_common_editorContextKeys_js__WEBPACK_IMPORTED_MODULE_11__.EditorContextKeys.inMultiDiffEditor.key, true);\n this._register((0,_base_common_observable_js__WEBPACK_IMPORTED_MODULE_4__.autorunWithStore)((reader, store) => {\n const viewModel = this._viewModel.read(reader);\n if (viewModel && viewModel.contextKeys) {\n for (const [key, value] of Object.entries(viewModel.contextKeys)) {\n const contextKey = this._contextKeyService.createKey(key, undefined);\n contextKey.set(value);\n store.add((0,_base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_3__.toDisposable)(() => contextKey.reset()));\n }\n }\n }));\n const ctxAllCollapsed = this._parentContextKeyService.createKey(_common_editorContextKeys_js__WEBPACK_IMPORTED_MODULE_11__.EditorContextKeys.multiDiffEditorAllCollapsed.key, false);\n this._register((0,_base_common_observable_js__WEBPACK_IMPORTED_MODULE_4__.autorun)((reader) => {\n const viewModel = this._viewModel.read(reader);\n if (viewModel) {\n const allCollapsed = viewModel.items.read(reader).every(item => item.collapsed.read(reader));\n ctxAllCollapsed.set(allCollapsed);\n }\n }));\n this._register((0,_base_common_observable_js__WEBPACK_IMPORTED_MODULE_4__.autorun)((reader) => {\n const lastActiveDiffItem = this.lastActiveDiffItem.read(reader);\n (0,_base_common_observableInternal_base_js__WEBPACK_IMPORTED_MODULE_5__.transaction)(tx => {\n var _a;\n (_a = this._viewModel.read(reader)) === null || _a === void 0 ? void 0 : _a.activeDiffItem.set(lastActiveDiffItem === null || lastActiveDiffItem === void 0 ? void 0 : lastActiveDiffItem.viewModel, tx);\n });\n }));\n this._register((0,_base_common_observable_js__WEBPACK_IMPORTED_MODULE_4__.autorun)((reader) => {\n /** @description Update widget dimension */\n const dimension = this._dimension.read(reader);\n this._sizeObserver.observe(dimension);\n }));\n this._elements.content.style.position = 'relative';\n this._register((0,_base_common_observable_js__WEBPACK_IMPORTED_MODULE_4__.autorun)((reader) => {\n /** @description Update scroll dimensions */\n const height = this._sizeObserver.height.read(reader);\n this._elements.root.style.height = `${height}px`;\n const totalHeight = this._totalHeight.read(reader);\n this._elements.content.style.height = `${totalHeight}px`;\n const width = this._sizeObserver.width.read(reader);\n let scrollWidth = width;\n const viewItems = this._viewItems.read(reader);\n const max = (0,_base_common_arraysFind_js__WEBPACK_IMPORTED_MODULE_2__.findFirstMaxBy)(viewItems, i => i.maxScroll.read(reader).maxScroll);\n if (max) {\n const maxScroll = max.maxScroll.read(reader);\n scrollWidth = width + maxScroll.maxScroll;\n }\n this._scrollableElement.setScrollDimensions({\n width: width,\n height: height,\n scrollHeight: totalHeight,\n scrollWidth,\n });\n }));\n _element.replaceChildren(this._scrollableElement.getDomNode());\n this._register((0,_base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_3__.toDisposable)(() => {\n _element.replaceChildren();\n }));\n this._register(this._register((0,_base_common_observable_js__WEBPACK_IMPORTED_MODULE_4__.autorun)(reader => {\n /** @description Render all */\n (0,_base_common_observableInternal_base_js__WEBPACK_IMPORTED_MODULE_5__.globalTransaction)(tx => {\n this.render(reader);\n });\n })));\n }\n render(reader) {\n const scrollTop = this.scrollTop.read(reader);\n let contentScrollOffsetToScrollOffset = 0;\n let itemHeightSumBefore = 0;\n let itemContentHeightSumBefore = 0;\n const viewPortHeight = this._sizeObserver.height.read(reader);\n const contentViewPort = _common_core_offsetRange_js__WEBPACK_IMPORTED_MODULE_9__.OffsetRange.ofStartAndLength(scrollTop, viewPortHeight);\n const width = this._sizeObserver.width.read(reader);\n for (const v of this._viewItems.read(reader)) {\n const itemContentHeight = v.contentHeight.read(reader);\n const itemHeight = Math.min(itemContentHeight, viewPortHeight);\n const itemRange = _common_core_offsetRange_js__WEBPACK_IMPORTED_MODULE_9__.OffsetRange.ofStartAndLength(itemHeightSumBefore, itemHeight);\n const itemContentRange = _common_core_offsetRange_js__WEBPACK_IMPORTED_MODULE_9__.OffsetRange.ofStartAndLength(itemContentHeightSumBefore, itemContentHeight);\n if (itemContentRange.isBefore(contentViewPort)) {\n contentScrollOffsetToScrollOffset -= itemContentHeight - itemHeight;\n v.hide();\n }\n else if (itemContentRange.isAfter(contentViewPort)) {\n v.hide();\n }\n else {\n const scroll = Math.max(0, Math.min(contentViewPort.start - itemContentRange.start, itemContentHeight - itemHeight));\n contentScrollOffsetToScrollOffset -= scroll;\n const viewPort = _common_core_offsetRange_js__WEBPACK_IMPORTED_MODULE_9__.OffsetRange.ofStartAndLength(scrollTop + contentScrollOffsetToScrollOffset, viewPortHeight);\n v.render(itemRange, scroll, width, viewPort);\n }\n itemHeightSumBefore += itemHeight + this._spaceBetweenPx;\n itemContentHeightSumBefore += itemContentHeight + this._spaceBetweenPx;\n }\n this._elements.content.style.transform = `translateY(${-(scrollTop + contentScrollOffsetToScrollOffset)}px)`;\n }\n};\nMultiDiffEditorWidgetImpl = __decorate([\n __param(4, _platform_contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_12__.IContextKeyService),\n __param(5, _platform_instantiation_common_instantiation_js__WEBPACK_IMPORTED_MODULE_13__.IInstantiationService)\n], MultiDiffEditorWidgetImpl);\n\nclass VirtualizedViewItem extends _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_3__.Disposable {\n constructor(viewModel, _objectPool, _scrollLeft, _deltaScrollVertical) {\n super();\n this.viewModel = viewModel;\n this._objectPool = _objectPool;\n this._scrollLeft = _scrollLeft;\n this._deltaScrollVertical = _deltaScrollVertical;\n this._templateRef = this._register((0,_base_common_observableInternal_base_js__WEBPACK_IMPORTED_MODULE_5__.disposableObservableValue)(this, undefined));\n this.contentHeight = (0,_base_common_observable_js__WEBPACK_IMPORTED_MODULE_4__.derived)(this, reader => { var _a, _b, _c; return (_c = (_b = (_a = this._templateRef.read(reader)) === null || _a === void 0 ? void 0 : _a.object.contentHeight) === null || _b === void 0 ? void 0 : _b.read(reader)) !== null && _c !== void 0 ? _c : this.viewModel.lastTemplateData.read(reader).contentHeight; });\n this.maxScroll = (0,_base_common_observable_js__WEBPACK_IMPORTED_MODULE_4__.derived)(this, reader => { var _a, _b; return (_b = (_a = this._templateRef.read(reader)) === null || _a === void 0 ? void 0 : _a.object.maxScroll.read(reader)) !== null && _b !== void 0 ? _b : { maxScroll: 0, scrollWidth: 0 }; });\n this.template = (0,_base_common_observable_js__WEBPACK_IMPORTED_MODULE_4__.derived)(this, reader => { var _a; return (_a = this._templateRef.read(reader)) === null || _a === void 0 ? void 0 : _a.object; });\n this._isHidden = (0,_base_common_observable_js__WEBPACK_IMPORTED_MODULE_4__.observableValue)(this, false);\n this._register((0,_base_common_observable_js__WEBPACK_IMPORTED_MODULE_4__.autorun)((reader) => {\n var _a;\n const scrollLeft = this._scrollLeft.read(reader);\n (_a = this._templateRef.read(reader)) === null || _a === void 0 ? void 0 : _a.object.setScrollLeft(scrollLeft);\n }));\n this._register((0,_base_common_observable_js__WEBPACK_IMPORTED_MODULE_4__.autorun)(reader => {\n const ref = this._templateRef.read(reader);\n if (!ref) {\n return;\n }\n const isHidden = this._isHidden.read(reader);\n if (!isHidden) {\n return;\n }\n const isFocused = ref.object.isFocused.read(reader);\n if (isFocused) {\n return;\n }\n this._clear();\n }));\n }\n dispose() {\n this._clear();\n super.dispose();\n }\n toString() {\n var _a;\n return `VirtualViewItem(${(_a = this.viewModel.entry.value.modified) === null || _a === void 0 ? void 0 : _a.uri.toString()})`;\n }\n getKey() {\n return this.viewModel.getKey();\n }\n setViewState(viewState, tx) {\n var _a;\n this.viewModel.collapsed.set(viewState.collapsed, tx);\n this._updateTemplateData(tx);\n const data = this.viewModel.lastTemplateData.get();\n const selections = (_a = viewState.selections) === null || _a === void 0 ? void 0 : _a.map(_common_core_selection_js__WEBPACK_IMPORTED_MODULE_10__.Selection.liftSelection);\n this.viewModel.lastTemplateData.set({\n ...data,\n selections,\n }, tx);\n const ref = this._templateRef.get();\n if (ref) {\n if (selections) {\n ref.object.editor.setSelections(selections);\n }\n }\n }\n _updateTemplateData(tx) {\n var _a;\n const ref = this._templateRef.get();\n if (!ref) {\n return;\n }\n this.viewModel.lastTemplateData.set({\n contentHeight: ref.object.contentHeight.get(),\n selections: (_a = ref.object.editor.getSelections()) !== null && _a !== void 0 ? _a : undefined,\n }, tx);\n }\n _clear() {\n const ref = this._templateRef.get();\n if (!ref) {\n return;\n }\n (0,_base_common_observableInternal_base_js__WEBPACK_IMPORTED_MODULE_5__.transaction)(tx => {\n this._updateTemplateData(tx);\n ref.object.hide();\n this._templateRef.set(undefined, tx);\n });\n }\n hide() {\n this._isHidden.set(true, undefined);\n }\n render(verticalSpace, offset, width, viewPort) {\n this._isHidden.set(false, undefined);\n let ref = this._templateRef.get();\n if (!ref) {\n ref = this._objectPool.getUnusedObj(new _diffEditorItemTemplate_js__WEBPACK_IMPORTED_MODULE_15__.TemplateData(this.viewModel, this._deltaScrollVertical));\n this._templateRef.set(ref, undefined);\n const selections = this.viewModel.lastTemplateData.get().selections;\n if (selections) {\n ref.object.editor.setSelections(selections);\n }\n }\n ref.object.render(verticalSpace, width, offset, viewPort);\n }\n}\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/browser/widget/multiDiffEditorWidget/multiDiffEditorWidgetImpl.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/browser/widget/multiDiffEditorWidget/objectPool.js":
/*!*****************************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/browser/widget/multiDiffEditorWidget/objectPool.js ***!
\*****************************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ ObjectPool: () => (/* binding */ ObjectPool)\n/* harmony export */ });\nclass ObjectPool {\n constructor(_create) {\n this._create = _create;\n this._unused = new Set();\n this._used = new Set();\n this._itemData = new Map();\n }\n getUnusedObj(data) {\n var _a;\n let obj;\n if (this._unused.size === 0) {\n obj = this._create(data);\n this._itemData.set(obj, data);\n }\n else {\n const values = [...this._unused.values()];\n obj = (_a = values.find(obj => this._itemData.get(obj).getId() === data.getId())) !== null && _a !== void 0 ? _a : values[0];\n this._unused.delete(obj);\n this._itemData.set(obj, data);\n obj.setData(data);\n }\n this._used.add(obj);\n return {\n object: obj,\n dispose: () => {\n this._used.delete(obj);\n if (this._unused.size > 5) {\n obj.dispose();\n }\n else {\n this._unused.add(obj);\n }\n }\n };\n }\n dispose() {\n for (const obj of this._used) {\n obj.dispose();\n }\n for (const obj of this._unused) {\n obj.dispose();\n }\n this._used.clear();\n this._unused.clear();\n }\n}\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/browser/widget/multiDiffEditorWidget/objectPool.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/browser/widget/multiDiffEditorWidget/utils.js":
/*!************************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/browser/widget/multiDiffEditorWidget/utils.js ***!
\************************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ ActionRunnerWithContext: () => (/* binding */ ActionRunnerWithContext)\n/* harmony export */ });\n/* harmony import */ var _base_common_actions_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../../base/common/actions.js */ \"./node_modules/monaco-editor/esm/vs/base/common/actions.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\nclass ActionRunnerWithContext extends _base_common_actions_js__WEBPACK_IMPORTED_MODULE_0__.ActionRunner {\n constructor(_getContext) {\n super();\n this._getContext = _getContext;\n }\n runAction(action, _context) {\n return super.runAction(action, this._getContext());\n }\n}\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/browser/widget/multiDiffEditorWidget/utils.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/common/commands/replaceCommand.js":
/*!************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/common/commands/replaceCommand.js ***!
\************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ ReplaceCommand: () => (/* binding */ ReplaceCommand),\n/* harmony export */ ReplaceCommandThatPreservesSelection: () => (/* binding */ ReplaceCommandThatPreservesSelection),\n/* harmony export */ ReplaceCommandThatSelectsText: () => (/* binding */ ReplaceCommandThatSelectsText),\n/* harmony export */ ReplaceCommandWithOffsetCursorState: () => (/* binding */ ReplaceCommandWithOffsetCursorState),\n/* harmony export */ ReplaceCommandWithoutChangingPosition: () => (/* binding */ ReplaceCommandWithoutChangingPosition)\n/* harmony export */ });\n/* harmony import */ var _core_selection_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../core/selection.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/core/selection.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\nclass ReplaceCommand {\n constructor(range, text, insertsAutoWhitespace = false) {\n this._range = range;\n this._text = text;\n this.insertsAutoWhitespace = insertsAutoWhitespace;\n }\n getEditOperations(model, builder) {\n builder.addTrackedEditOperation(this._range, this._text);\n }\n computeCursorState(model, helper) {\n const inverseEditOperations = helper.getInverseEditOperations();\n const srcRange = inverseEditOperations[0].range;\n return _core_selection_js__WEBPACK_IMPORTED_MODULE_0__.Selection.fromPositions(srcRange.getEndPosition());\n }\n}\nclass ReplaceCommandThatSelectsText {\n constructor(range, text) {\n this._range = range;\n this._text = text;\n }\n getEditOperations(model, builder) {\n builder.addTrackedEditOperation(this._range, this._text);\n }\n computeCursorState(model, helper) {\n const inverseEditOperations = helper.getInverseEditOperations();\n const srcRange = inverseEditOperations[0].range;\n return _core_selection_js__WEBPACK_IMPORTED_MODULE_0__.Selection.fromRange(srcRange, 0 /* SelectionDirection.LTR */);\n }\n}\nclass ReplaceCommandWithoutChangingPosition {\n constructor(range, text, insertsAutoWhitespace = false) {\n this._range = range;\n this._text = text;\n this.insertsAutoWhitespace = insertsAutoWhitespace;\n }\n getEditOperations(model, builder) {\n builder.addTrackedEditOperation(this._range, this._text);\n }\n computeCursorState(model, helper) {\n const inverseEditOperations = helper.getInverseEditOperations();\n const srcRange = inverseEditOperations[0].range;\n return _core_selection_js__WEBPACK_IMPORTED_MODULE_0__.Selection.fromPositions(srcRange.getStartPosition());\n }\n}\nclass ReplaceCommandWithOffsetCursorState {\n constructor(range, text, lineNumberDeltaOffset, columnDeltaOffset, insertsAutoWhitespace = false) {\n this._range = range;\n this._text = text;\n this._columnDeltaOffset = columnDeltaOffset;\n this._lineNumberDeltaOffset = lineNumberDeltaOffset;\n this.insertsAutoWhitespace = insertsAutoWhitespace;\n }\n getEditOperations(model, builder) {\n builder.addTrackedEditOperation(this._range, this._text);\n }\n computeCursorState(model, helper) {\n const inverseEditOperations = helper.getInverseEditOperations();\n const srcRange = inverseEditOperations[0].range;\n return _core_selection_js__WEBPACK_IMPORTED_MODULE_0__.Selection.fromPositions(srcRange.getEndPosition().delta(this._lineNumberDeltaOffset, this._columnDeltaOffset));\n }\n}\nclass ReplaceCommandThatPreservesSelection {\n constructor(editRange, text, initialSelection, forceMoveMarkers = false) {\n this._range = editRange;\n this._text = text;\n this._initialSelection = initialSelection;\n this._forceMoveMarkers = forceMoveMarkers;\n this._selectionId = null;\n }\n getEditOperations(model, builder) {\n builder.addTrackedEditOperation(this._range, this._text, this._forceMoveMarkers);\n this._selectionId = builder.trackSelection(this._initialSelection);\n }\n computeCursorState(model, helper) {\n return helper.getTrackedSelection(this._selectionId);\n }\n}\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/common/commands/replaceCommand.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/common/commands/shiftCommand.js":
/*!**********************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/common/commands/shiftCommand.js ***!
\**********************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ ShiftCommand: () => (/* binding */ ShiftCommand)\n/* harmony export */ });\n/* harmony import */ var _base_common_strings_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../base/common/strings.js */ \"./node_modules/monaco-editor/esm/vs/base/common/strings.js\");\n/* harmony import */ var _core_cursorColumns_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../core/cursorColumns.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/core/cursorColumns.js\");\n/* harmony import */ var _core_range_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../core/range.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/core/range.js\");\n/* harmony import */ var _core_selection_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../core/selection.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/core/selection.js\");\n/* harmony import */ var _languages_enterAction_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../languages/enterAction.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/languages/enterAction.js\");\n/* harmony import */ var _languages_languageConfigurationRegistry_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../languages/languageConfigurationRegistry.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/languages/languageConfigurationRegistry.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\nvar __decorate = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\n return c > 3 && r && Object.defineProperty(target, key, r), r;\n};\nvar __param = (undefined && undefined.__param) || function (paramIndex, decorator) {\n return function (target, key) { decorator(target, key, paramIndex); }\n};\nvar ShiftCommand_1;\n\n\n\n\n\n\nconst repeatCache = Object.create(null);\nfunction cachedStringRepeat(str, count) {\n if (count <= 0) {\n return '';\n }\n if (!repeatCache[str]) {\n repeatCache[str] = ['', str];\n }\n const cache = repeatCache[str];\n for (let i = cache.length; i <= count; i++) {\n cache[i] = cache[i - 1] + str;\n }\n return cache[count];\n}\nlet ShiftCommand = ShiftCommand_1 = class ShiftCommand {\n static unshiftIndent(line, column, tabSize, indentSize, insertSpaces) {\n // Determine the visible column where the content starts\n const contentStartVisibleColumn = _core_cursorColumns_js__WEBPACK_IMPORTED_MODULE_1__.CursorColumns.visibleColumnFromColumn(line, column, tabSize);\n if (insertSpaces) {\n const indent = cachedStringRepeat(' ', indentSize);\n const desiredTabStop = _core_cursorColumns_js__WEBPACK_IMPORTED_MODULE_1__.CursorColumns.prevIndentTabStop(contentStartVisibleColumn, indentSize);\n const indentCount = desiredTabStop / indentSize; // will be an integer\n return cachedStringRepeat(indent, indentCount);\n }\n else {\n const indent = '\\t';\n const desiredTabStop = _core_cursorColumns_js__WEBPACK_IMPORTED_MODULE_1__.CursorColumns.prevRenderTabStop(contentStartVisibleColumn, tabSize);\n const indentCount = desiredTabStop / tabSize; // will be an integer\n return cachedStringRepeat(indent, indentCount);\n }\n }\n static shiftIndent(line, column, tabSize, indentSize, insertSpaces) {\n // Determine the visible column where the content starts\n const contentStartVisibleColumn = _core_cursorColumns_js__WEBPACK_IMPORTED_MODULE_1__.CursorColumns.visibleColumnFromColumn(line, column, tabSize);\n if (insertSpaces) {\n const indent = cachedStringRepeat(' ', indentSize);\n const desiredTabStop = _core_cursorColumns_js__WEBPACK_IMPORTED_MODULE_1__.CursorColumns.nextIndentTabStop(contentStartVisibleColumn, indentSize);\n const indentCount = desiredTabStop / indentSize; // will be an integer\n return cachedStringRepeat(indent, indentCount);\n }\n else {\n const indent = '\\t';\n const desiredTabStop = _core_cursorColumns_js__WEBPACK_IMPORTED_MODULE_1__.CursorColumns.nextRenderTabStop(contentStartVisibleColumn, tabSize);\n const indentCount = desiredTabStop / tabSize; // will be an integer\n return cachedStringRepeat(indent, indentCount);\n }\n }\n constructor(range, opts, _languageConfigurationService) {\n this._languageConfigurationService = _languageConfigurationService;\n this._opts = opts;\n this._selection = range;\n this._selectionId = null;\n this._useLastEditRangeForCursorEndPosition = false;\n this._selectionStartColumnStaysPut = false;\n }\n _addEditOperation(builder, range, text) {\n if (this._useLastEditRangeForCursorEndPosition) {\n builder.addTrackedEditOperation(range, text);\n }\n else {\n builder.addEditOperation(range, text);\n }\n }\n getEditOperations(model, builder) {\n const startLine = this._selection.startLineNumber;\n let endLine = this._selection.endLineNumber;\n if (this._selection.endColumn === 1 && startLine !== endLine) {\n endLine = endLine - 1;\n }\n const { tabSize, indentSize, insertSpaces } = this._opts;\n const shouldIndentEmptyLines = (startLine === endLine);\n if (this._opts.useTabStops) {\n // if indenting or outdenting on a whitespace only line\n if (this._selection.isEmpty()) {\n if (/^\\s*$/.test(model.getLineContent(startLine))) {\n this._useLastEditRangeForCursorEndPosition = true;\n }\n }\n // keep track of previous line's \"miss-alignment\"\n let previousLineExtraSpaces = 0, extraSpaces = 0;\n for (let lineNumber = startLine; lineNumber <= endLine; lineNumber++, previousLineExtraSpaces = extraSpaces) {\n extraSpaces = 0;\n const lineText = model.getLineContent(lineNumber);\n let indentationEndIndex = _base_common_strings_js__WEBPACK_IMPORTED_MODULE_0__.firstNonWhitespaceIndex(lineText);\n if (this._opts.isUnshift && (lineText.length === 0 || indentationEndIndex === 0)) {\n // empty line or line with no leading whitespace => nothing to do\n continue;\n }\n if (!shouldIndentEmptyLines && !this._opts.isUnshift && lineText.length === 0) {\n // do not indent empty lines => nothing to do\n continue;\n }\n if (indentationEndIndex === -1) {\n // the entire line is whitespace\n indentationEndIndex = lineText.length;\n }\n if (lineNumber > 1) {\n const contentStartVisibleColumn = _core_cursorColumns_js__WEBPACK_IMPORTED_MODULE_1__.CursorColumns.visibleColumnFromColumn(lineText, indentationEndIndex + 1, tabSize);\n if (contentStartVisibleColumn % indentSize !== 0) {\n // The current line is \"miss-aligned\", so let's see if this is expected...\n // This can only happen when it has trailing commas in the indent\n if (model.tokenization.isCheapToTokenize(lineNumber - 1)) {\n const enterAction = (0,_languages_enterAction_js__WEBPACK_IMPORTED_MODULE_4__.getEnterAction)(this._opts.autoIndent, model, new _core_range_js__WEBPACK_IMPORTED_MODULE_2__.Range(lineNumber - 1, model.getLineMaxColumn(lineNumber - 1), lineNumber - 1, model.getLineMaxColumn(lineNumber - 1)), this._languageConfigurationService);\n if (enterAction) {\n extraSpaces = previousLineExtraSpaces;\n if (enterAction.appendText) {\n for (let j = 0, lenJ = enterAction.appendText.length; j < lenJ && extraSpaces < indentSize; j++) {\n if (enterAction.appendText.charCodeAt(j) === 32 /* CharCode.Space */) {\n extraSpaces++;\n }\n else {\n break;\n }\n }\n }\n if (enterAction.removeText) {\n extraSpaces = Math.max(0, extraSpaces - enterAction.removeText);\n }\n // Act as if `prefixSpaces` is not part of the indentation\n for (let j = 0; j < extraSpaces; j++) {\n if (indentationEndIndex === 0 || lineText.charCodeAt(indentationEndIndex - 1) !== 32 /* CharCode.Space */) {\n break;\n }\n indentationEndIndex--;\n }\n }\n }\n }\n }\n if (this._opts.isUnshift && indentationEndIndex === 0) {\n // line with no leading whitespace => nothing to do\n continue;\n }\n let desiredIndent;\n if (this._opts.isUnshift) {\n desiredIndent = ShiftCommand_1.unshiftIndent(lineText, indentationEndIndex + 1, tabSize, indentSize, insertSpaces);\n }\n else {\n desiredIndent = ShiftCommand_1.shiftIndent(lineText, indentationEndIndex + 1, tabSize, indentSize, insertSpaces);\n }\n this._addEditOperation(builder, new _core_range_js__WEBPACK_IMPORTED_MODULE_2__.Range(lineNumber, 1, lineNumber, indentationEndIndex + 1), desiredIndent);\n if (lineNumber === startLine && !this._selection.isEmpty()) {\n // Force the startColumn to stay put because we're inserting after it\n this._selectionStartColumnStaysPut = (this._selection.startColumn <= indentationEndIndex + 1);\n }\n }\n }\n else {\n // if indenting or outdenting on a whitespace only line\n if (!this._opts.isUnshift && this._selection.isEmpty() && model.getLineLength(startLine) === 0) {\n this._useLastEditRangeForCursorEndPosition = true;\n }\n const oneIndent = (insertSpaces ? cachedStringRepeat(' ', indentSize) : '\\t');\n for (let lineNumber = startLine; lineNumber <= endLine; lineNumber++) {\n const lineText = model.getLineContent(lineNumber);\n let indentationEndIndex = _base_common_strings_js__WEBPACK_IMPORTED_MODULE_0__.firstNonWhitespaceIndex(lineText);\n if (this._opts.isUnshift && (lineText.length === 0 || indentationEndIndex === 0)) {\n // empty line or line with no leading whitespace => nothing to do\n continue;\n }\n if (!shouldIndentEmptyLines && !this._opts.isUnshift && lineText.length === 0) {\n // do not indent empty lines => nothing to do\n continue;\n }\n if (indentationEndIndex === -1) {\n // the entire line is whitespace\n indentationEndIndex = lineText.length;\n }\n if (this._opts.isUnshift && indentationEndIndex === 0) {\n // line with no leading whitespace => nothing to do\n continue;\n }\n if (this._opts.isUnshift) {\n indentationEndIndex = Math.min(indentationEndIndex, indentSize);\n for (let i = 0; i < indentationEndIndex; i++) {\n const chr = lineText.charCodeAt(i);\n if (chr === 9 /* CharCode.Tab */) {\n indentationEndIndex = i + 1;\n break;\n }\n }\n this._addEditOperation(builder, new _core_range_js__WEBPACK_IMPORTED_MODULE_2__.Range(lineNumber, 1, lineNumber, indentationEndIndex + 1), '');\n }\n else {\n this._addEditOperation(builder, new _core_range_js__WEBPACK_IMPORTED_MODULE_2__.Range(lineNumber, 1, lineNumber, 1), oneIndent);\n if (lineNumber === startLine && !this._selection.isEmpty()) {\n // Force the startColumn to stay put because we're inserting after it\n this._selectionStartColumnStaysPut = (this._selection.startColumn === 1);\n }\n }\n }\n }\n this._selectionId = builder.trackSelection(this._selection);\n }\n computeCursorState(model, helper) {\n if (this._useLastEditRangeForCursorEndPosition) {\n const lastOp = helper.getInverseEditOperations()[0];\n return new _core_selection_js__WEBPACK_IMPORTED_MODULE_3__.Selection(lastOp.range.endLineNumber, lastOp.range.endColumn, lastOp.range.endLineNumber, lastOp.range.endColumn);\n }\n const result = helper.getTrackedSelection(this._selectionId);\n if (this._selectionStartColumnStaysPut) {\n // The selection start should not move\n const initialStartColumn = this._selection.startColumn;\n const resultStartColumn = result.startColumn;\n if (resultStartColumn <= initialStartColumn) {\n return result;\n }\n if (result.getDirection() === 0 /* SelectionDirection.LTR */) {\n return new _core_selection_js__WEBPACK_IMPORTED_MODULE_3__.Selection(result.startLineNumber, initialStartColumn, result.endLineNumber, result.endColumn);\n }\n return new _core_selection_js__WEBPACK_IMPORTED_MODULE_3__.Selection(result.endLineNumber, result.endColumn, result.startLineNumber, initialStartColumn);\n }\n return result;\n }\n};\nShiftCommand = ShiftCommand_1 = __decorate([\n __param(2, _languages_languageConfigurationRegistry_js__WEBPACK_IMPORTED_MODULE_5__.ILanguageConfigurationService)\n], ShiftCommand);\n\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/common/commands/shiftCommand.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/common/commands/surroundSelectionCommand.js":
/*!**********************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/common/commands/surroundSelectionCommand.js ***!
\**********************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ CompositionSurroundSelectionCommand: () => (/* binding */ CompositionSurroundSelectionCommand),\n/* harmony export */ SurroundSelectionCommand: () => (/* binding */ SurroundSelectionCommand)\n/* harmony export */ });\n/* harmony import */ var _core_range_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../core/range.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/core/range.js\");\n/* harmony import */ var _core_selection_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../core/selection.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/core/selection.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n\nclass SurroundSelectionCommand {\n constructor(range, charBeforeSelection, charAfterSelection) {\n this._range = range;\n this._charBeforeSelection = charBeforeSelection;\n this._charAfterSelection = charAfterSelection;\n }\n getEditOperations(model, builder) {\n builder.addTrackedEditOperation(new _core_range_js__WEBPACK_IMPORTED_MODULE_0__.Range(this._range.startLineNumber, this._range.startColumn, this._range.startLineNumber, this._range.startColumn), this._charBeforeSelection);\n builder.addTrackedEditOperation(new _core_range_js__WEBPACK_IMPORTED_MODULE_0__.Range(this._range.endLineNumber, this._range.endColumn, this._range.endLineNumber, this._range.endColumn), this._charAfterSelection);\n }\n computeCursorState(model, helper) {\n const inverseEditOperations = helper.getInverseEditOperations();\n const firstOperationRange = inverseEditOperations[0].range;\n const secondOperationRange = inverseEditOperations[1].range;\n return new _core_selection_js__WEBPACK_IMPORTED_MODULE_1__.Selection(firstOperationRange.endLineNumber, firstOperationRange.endColumn, secondOperationRange.endLineNumber, secondOperationRange.endColumn - this._charAfterSelection.length);\n }\n}\n/**\n * A surround selection command that runs after composition finished.\n */\nclass CompositionSurroundSelectionCommand {\n constructor(_position, _text, _charAfter) {\n this._position = _position;\n this._text = _text;\n this._charAfter = _charAfter;\n }\n getEditOperations(model, builder) {\n builder.addTrackedEditOperation(new _core_range_js__WEBPACK_IMPORTED_MODULE_0__.Range(this._position.lineNumber, this._position.column, this._position.lineNumber, this._position.column), this._text + this._charAfter);\n }\n computeCursorState(model, helper) {\n const inverseEditOperations = helper.getInverseEditOperations();\n const opRange = inverseEditOperations[0].range;\n return new _core_selection_js__WEBPACK_IMPORTED_MODULE_1__.Selection(opRange.endLineNumber, opRange.startColumn, opRange.endLineNumber, opRange.endColumn - this._charAfter.length);\n }\n}\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/common/commands/surroundSelectionCommand.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/common/commands/trimTrailingWhitespaceCommand.js":
/*!***************************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/common/commands/trimTrailingWhitespaceCommand.js ***!
\***************************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ TrimTrailingWhitespaceCommand: () => (/* binding */ TrimTrailingWhitespaceCommand),\n/* harmony export */ trimTrailingWhitespace: () => (/* binding */ trimTrailingWhitespace)\n/* harmony export */ });\n/* harmony import */ var _base_common_strings_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../base/common/strings.js */ \"./node_modules/monaco-editor/esm/vs/base/common/strings.js\");\n/* harmony import */ var _core_editOperation_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../core/editOperation.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/core/editOperation.js\");\n/* harmony import */ var _core_range_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../core/range.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/core/range.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n\n\nclass TrimTrailingWhitespaceCommand {\n constructor(selection, cursors) {\n this._selection = selection;\n this._cursors = cursors;\n this._selectionId = null;\n }\n getEditOperations(model, builder) {\n const ops = trimTrailingWhitespace(model, this._cursors);\n for (let i = 0, len = ops.length; i < len; i++) {\n const op = ops[i];\n builder.addEditOperation(op.range, op.text);\n }\n this._selectionId = builder.trackSelection(this._selection);\n }\n computeCursorState(model, helper) {\n return helper.getTrackedSelection(this._selectionId);\n }\n}\n/**\n * Generate commands for trimming trailing whitespace on a model and ignore lines on which cursors are sitting.\n */\nfunction trimTrailingWhitespace(model, cursors) {\n // Sort cursors ascending\n cursors.sort((a, b) => {\n if (a.lineNumber === b.lineNumber) {\n return a.column - b.column;\n }\n return a.lineNumber - b.lineNumber;\n });\n // Reduce multiple cursors on the same line and only keep the last one on the line\n for (let i = cursors.length - 2; i >= 0; i--) {\n if (cursors[i].lineNumber === cursors[i + 1].lineNumber) {\n // Remove cursor at `i`\n cursors.splice(i, 1);\n }\n }\n const r = [];\n let rLen = 0;\n let cursorIndex = 0;\n const cursorLen = cursors.length;\n for (let lineNumber = 1, lineCount = model.getLineCount(); lineNumber <= lineCount; lineNumber++) {\n const lineContent = model.getLineContent(lineNumber);\n const maxLineColumn = lineContent.length + 1;\n let minEditColumn = 0;\n if (cursorIndex < cursorLen && cursors[cursorIndex].lineNumber === lineNumber) {\n minEditColumn = cursors[cursorIndex].column;\n cursorIndex++;\n if (minEditColumn === maxLineColumn) {\n // The cursor is at the end of the line => no edits for sure on this line\n continue;\n }\n }\n if (lineContent.length === 0) {\n continue;\n }\n const lastNonWhitespaceIndex = _base_common_strings_js__WEBPACK_IMPORTED_MODULE_0__.lastNonWhitespaceIndex(lineContent);\n let fromColumn = 0;\n if (lastNonWhitespaceIndex === -1) {\n // Entire line is whitespace\n fromColumn = 1;\n }\n else if (lastNonWhitespaceIndex !== lineContent.length - 1) {\n // There is trailing whitespace\n fromColumn = lastNonWhitespaceIndex + 2;\n }\n else {\n // There is no trailing whitespace\n continue;\n }\n fromColumn = Math.max(minEditColumn, fromColumn);\n r[rLen++] = _core_editOperation_js__WEBPACK_IMPORTED_MODULE_1__.EditOperation.delete(new _core_range_js__WEBPACK_IMPORTED_MODULE_2__.Range(lineNumber, fromColumn, lineNumber, maxLineColumn));\n }\n return r;\n}\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/common/commands/trimTrailingWhitespaceCommand.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/common/config/diffEditor.js":
/*!******************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/common/config/diffEditor.js ***!
\******************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ diffEditorDefaultOptions: () => (/* binding */ diffEditorDefaultOptions)\n/* harmony export */ });\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\nconst diffEditorDefaultOptions = {\n enableSplitViewResizing: true,\n splitViewDefaultRatio: 0.5,\n renderSideBySide: true,\n renderMarginRevertIcon: true,\n maxComputationTime: 5000,\n maxFileSize: 50,\n ignoreTrimWhitespace: true,\n renderIndicators: true,\n originalEditable: false,\n diffCodeLens: false,\n renderOverviewRuler: true,\n diffWordWrap: 'inherit',\n diffAlgorithm: 'advanced',\n accessibilityVerbose: false,\n experimental: {\n showMoves: false,\n showEmptyDecorations: true,\n },\n hideUnchangedRegions: {\n enabled: false,\n contextLineCount: 3,\n minimumLineCount: 3,\n revealLineCount: 20,\n },\n isInEmbeddedEditor: false,\n onlyShowAccessibleDiffViewer: false,\n renderSideBySideInlineBreakpoint: 900,\n useInlineViewWhenSpaceIsLimited: true,\n};\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/common/config/diffEditor.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/common/config/editorConfigurationSchema.js":
/*!*********************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/common/config/editorConfigurationSchema.js ***!
\*********************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ editorConfigurationBaseNode: () => (/* binding */ editorConfigurationBaseNode),\n/* harmony export */ isDiffEditorConfigurationKey: () => (/* binding */ isDiffEditorConfigurationKey),\n/* harmony export */ isEditorConfigurationKey: () => (/* binding */ isEditorConfigurationKey)\n/* harmony export */ });\n/* harmony import */ var _diffEditor_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./diffEditor.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/config/diffEditor.js\");\n/* harmony import */ var _editorOptions_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./editorOptions.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/config/editorOptions.js\");\n/* harmony import */ var _core_textModelDefaults_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../core/textModelDefaults.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/core/textModelDefaults.js\");\n/* harmony import */ var _nls_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../../nls.js */ \"./node_modules/monaco-editor/esm/vs/nls.js\");\n/* harmony import */ var _platform_configuration_common_configurationRegistry_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../../platform/configuration/common/configurationRegistry.js */ \"./node_modules/monaco-editor/esm/vs/platform/configuration/common/configurationRegistry.js\");\n/* harmony import */ var _platform_registry_common_platform_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../../../platform/registry/common/platform.js */ \"./node_modules/monaco-editor/esm/vs/platform/registry/common/platform.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n\n\n\n\n\nconst editorConfigurationBaseNode = Object.freeze({\n id: 'editor',\n order: 5,\n type: 'object',\n title: _nls_js__WEBPACK_IMPORTED_MODULE_3__.localize('editorConfigurationTitle', \"Editor\"),\n scope: 5 /* ConfigurationScope.LANGUAGE_OVERRIDABLE */,\n});\nconst editorConfiguration = {\n ...editorConfigurationBaseNode,\n properties: {\n 'editor.tabSize': {\n type: 'number',\n default: _core_textModelDefaults_js__WEBPACK_IMPORTED_MODULE_2__.EDITOR_MODEL_DEFAULTS.tabSize,\n minimum: 1,\n markdownDescription: _nls_js__WEBPACK_IMPORTED_MODULE_3__.localize('tabSize', \"The number of spaces a tab is equal to. This setting is overridden based on the file contents when {0} is on.\", '`#editor.detectIndentation#`')\n },\n 'editor.indentSize': {\n 'anyOf': [\n {\n type: 'string',\n enum: ['tabSize']\n },\n {\n type: 'number',\n minimum: 1\n }\n ],\n default: 'tabSize',\n markdownDescription: _nls_js__WEBPACK_IMPORTED_MODULE_3__.localize('indentSize', \"The number of spaces used for indentation or `\\\"tabSize\\\"` to use the value from `#editor.tabSize#`. This setting is overridden based on the file contents when `#editor.detectIndentation#` is on.\")\n },\n 'editor.insertSpaces': {\n type: 'boolean',\n default: _core_textModelDefaults_js__WEBPACK_IMPORTED_MODULE_2__.EDITOR_MODEL_DEFAULTS.insertSpaces,\n markdownDescription: _nls_js__WEBPACK_IMPORTED_MODULE_3__.localize('insertSpaces', \"Insert spaces when pressing `Tab`. This setting is overridden based on the file contents when {0} is on.\", '`#editor.detectIndentation#`')\n },\n 'editor.detectIndentation': {\n type: 'boolean',\n default: _core_textModelDefaults_js__WEBPACK_IMPORTED_MODULE_2__.EDITOR_MODEL_DEFAULTS.detectIndentation,\n markdownDescription: _nls_js__WEBPACK_IMPORTED_MODULE_3__.localize('detectIndentation', \"Controls whether {0} and {1} will be automatically detected when a file is opened based on the file contents.\", '`#editor.tabSize#`', '`#editor.insertSpaces#`')\n },\n 'editor.trimAutoWhitespace': {\n type: 'boolean',\n default: _core_textModelDefaults_js__WEBPACK_IMPORTED_MODULE_2__.EDITOR_MODEL_DEFAULTS.trimAutoWhitespace,\n description: _nls_js__WEBPACK_IMPORTED_MODULE_3__.localize('trimAutoWhitespace', \"Remove trailing auto inserted whitespace.\")\n },\n 'editor.largeFileOptimizations': {\n type: 'boolean',\n default: _core_textModelDefaults_js__WEBPACK_IMPORTED_MODULE_2__.EDITOR_MODEL_DEFAULTS.largeFileOptimizations,\n description: _nls_js__WEBPACK_IMPORTED_MODULE_3__.localize('largeFileOptimizations', \"Special handling for large files to disable certain memory intensive features.\")\n },\n 'editor.wordBasedSuggestions': {\n enum: ['off', 'currentDocument', 'matchingDocuments', 'allDocuments'],\n default: 'matchingDocuments',\n enumDescriptions: [\n _nls_js__WEBPACK_IMPORTED_MODULE_3__.localize('wordBasedSuggestions.off', 'Turn off Word Based Suggestions.'),\n _nls_js__WEBPACK_IMPORTED_MODULE_3__.localize('wordBasedSuggestions.currentDocument', 'Only suggest words from the active document.'),\n _nls_js__WEBPACK_IMPORTED_MODULE_3__.localize('wordBasedSuggestions.matchingDocuments', 'Suggest words from all open documents of the same language.'),\n _nls_js__WEBPACK_IMPORTED_MODULE_3__.localize('wordBasedSuggestions.allDocuments', 'Suggest words from all open documents.')\n ],\n description: _nls_js__WEBPACK_IMPORTED_MODULE_3__.localize('wordBasedSuggestions', \"Controls whether completions should be computed based on words in the document and from which documents they are computed.\")\n },\n 'editor.semanticHighlighting.enabled': {\n enum: [true, false, 'configuredByTheme'],\n enumDescriptions: [\n _nls_js__WEBPACK_IMPORTED_MODULE_3__.localize('semanticHighlighting.true', 'Semantic highlighting enabled for all color themes.'),\n _nls_js__WEBPACK_IMPORTED_MODULE_3__.localize('semanticHighlighting.false', 'Semantic highlighting disabled for all color themes.'),\n _nls_js__WEBPACK_IMPORTED_MODULE_3__.localize('semanticHighlighting.configuredByTheme', 'Semantic highlighting is configured by the current color theme\\'s `semanticHighlighting` setting.')\n ],\n default: 'configuredByTheme',\n description: _nls_js__WEBPACK_IMPORTED_MODULE_3__.localize('semanticHighlighting.enabled', \"Controls whether the semanticHighlighting is shown for the languages that support it.\")\n },\n 'editor.stablePeek': {\n type: 'boolean',\n default: false,\n markdownDescription: _nls_js__WEBPACK_IMPORTED_MODULE_3__.localize('stablePeek', \"Keep peek editors open even when double-clicking their content or when hitting `Escape`.\")\n },\n 'editor.maxTokenizationLineLength': {\n type: 'integer',\n default: 20000,\n description: _nls_js__WEBPACK_IMPORTED_MODULE_3__.localize('maxTokenizationLineLength', \"Lines above this length will not be tokenized for performance reasons\")\n },\n 'editor.experimental.asyncTokenization': {\n type: 'boolean',\n default: false,\n description: _nls_js__WEBPACK_IMPORTED_MODULE_3__.localize('editor.experimental.asyncTokenization', \"Controls whether the tokenization should happen asynchronously on a web worker.\"),\n tags: ['experimental'],\n },\n 'editor.experimental.asyncTokenizationLogging': {\n type: 'boolean',\n default: false,\n description: _nls_js__WEBPACK_IMPORTED_MODULE_3__.localize('editor.experimental.asyncTokenizationLogging', \"Controls whether async tokenization should be logged. For debugging only.\"),\n },\n 'editor.experimental.asyncTokenizationVerification': {\n type: 'boolean',\n default: false,\n description: _nls_js__WEBPACK_IMPORTED_MODULE_3__.localize('editor.experimental.asyncTokenizationVerification', \"Controls whether async tokenization should be verified against legacy background tokenization. Might slow down tokenization. For debugging only.\"),\n tags: ['experimental'],\n },\n 'editor.language.brackets': {\n type: ['array', 'null'],\n default: null, // We want to distinguish the empty array from not configured.\n description: _nls_js__WEBPACK_IMPORTED_MODULE_3__.localize('schema.brackets', 'Defines the bracket symbols that increase or decrease the indentation.'),\n items: {\n type: 'array',\n items: [\n {\n type: 'string',\n description: _nls_js__WEBPACK_IMPORTED_MODULE_3__.localize('schema.openBracket', 'The opening bracket character or string sequence.')\n },\n {\n type: 'string',\n description: _nls_js__WEBPACK_IMPORTED_MODULE_3__.localize('schema.closeBracket', 'The closing bracket character or string sequence.')\n }\n ]\n }\n },\n 'editor.language.colorizedBracketPairs': {\n type: ['array', 'null'],\n default: null, // We want to distinguish the empty array from not configured.\n description: _nls_js__WEBPACK_IMPORTED_MODULE_3__.localize('schema.colorizedBracketPairs', 'Defines the bracket pairs that are colorized by their nesting level if bracket pair colorization is enabled.'),\n items: {\n type: 'array',\n items: [\n {\n type: 'string',\n description: _nls_js__WEBPACK_IMPORTED_MODULE_3__.localize('schema.openBracket', 'The opening bracket character or string sequence.')\n },\n {\n type: 'string',\n description: _nls_js__WEBPACK_IMPORTED_MODULE_3__.localize('schema.closeBracket', 'The closing bracket character or string sequence.')\n }\n ]\n }\n },\n 'diffEditor.maxComputationTime': {\n type: 'number',\n default: _diffEditor_js__WEBPACK_IMPORTED_MODULE_0__.diffEditorDefaultOptions.maxComputationTime,\n description: _nls_js__WEBPACK_IMPORTED_MODULE_3__.localize('maxComputationTime', \"Timeout in milliseconds after which diff computation is cancelled. Use 0 for no timeout.\")\n },\n 'diffEditor.maxFileSize': {\n type: 'number',\n default: _diffEditor_js__WEBPACK_IMPORTED_MODULE_0__.diffEditorDefaultOptions.maxFileSize,\n description: _nls_js__WEBPACK_IMPORTED_MODULE_3__.localize('maxFileSize', \"Maximum file size in MB for which to compute diffs. Use 0 for no limit.\")\n },\n 'diffEditor.renderSideBySide': {\n type: 'boolean',\n default: _diffEditor_js__WEBPACK_IMPORTED_MODULE_0__.diffEditorDefaultOptions.renderSideBySide,\n description: _nls_js__WEBPACK_IMPORTED_MODULE_3__.localize('sideBySide', \"Controls whether the diff editor shows the diff side by side or inline.\")\n },\n 'diffEditor.renderSideBySideInlineBreakpoint': {\n type: 'number',\n default: _diffEditor_js__WEBPACK_IMPORTED_MODULE_0__.diffEditorDefaultOptions.renderSideBySideInlineBreakpoint,\n description: _nls_js__WEBPACK_IMPORTED_MODULE_3__.localize('renderSideBySideInlineBreakpoint', \"If the diff editor width is smaller than this value, the inline view is used.\")\n },\n 'diffEditor.useInlineViewWhenSpaceIsLimited': {\n type: 'boolean',\n default: _diffEditor_js__WEBPACK_IMPORTED_MODULE_0__.diffEditorDefaultOptions.useInlineViewWhenSpaceIsLimited,\n description: _nls_js__WEBPACK_IMPORTED_MODULE_3__.localize('useInlineViewWhenSpaceIsLimited', \"If enabled and the editor width is too small, the inline view is used.\")\n },\n 'diffEditor.renderMarginRevertIcon': {\n type: 'boolean',\n default: _diffEditor_js__WEBPACK_IMPORTED_MODULE_0__.diffEditorDefaultOptions.renderMarginRevertIcon,\n description: _nls_js__WEBPACK_IMPORTED_MODULE_3__.localize('renderMarginRevertIcon', \"When enabled, the diff editor shows arrows in its glyph margin to revert changes.\")\n },\n 'diffEditor.ignoreTrimWhitespace': {\n type: 'boolean',\n default: _diffEditor_js__WEBPACK_IMPORTED_MODULE_0__.diffEditorDefaultOptions.ignoreTrimWhitespace,\n description: _nls_js__WEBPACK_IMPORTED_MODULE_3__.localize('ignoreTrimWhitespace', \"When enabled, the diff editor ignores changes in leading or trailing whitespace.\")\n },\n 'diffEditor.renderIndicators': {\n type: 'boolean',\n default: _diffEditor_js__WEBPACK_IMPORTED_MODULE_0__.diffEditorDefaultOptions.renderIndicators,\n description: _nls_js__WEBPACK_IMPORTED_MODULE_3__.localize('renderIndicators', \"Controls whether the diff editor shows +/- indicators for added/removed changes.\")\n },\n 'diffEditor.codeLens': {\n type: 'boolean',\n default: _diffEditor_js__WEBPACK_IMPORTED_MODULE_0__.diffEditorDefaultOptions.diffCodeLens,\n description: _nls_js__WEBPACK_IMPORTED_MODULE_3__.localize('codeLens', \"Controls whether the editor shows CodeLens.\")\n },\n 'diffEditor.wordWrap': {\n type: 'string',\n enum: ['off', 'on', 'inherit'],\n default: _diffEditor_js__WEBPACK_IMPORTED_MODULE_0__.diffEditorDefaultOptions.diffWordWrap,\n markdownEnumDescriptions: [\n _nls_js__WEBPACK_IMPORTED_MODULE_3__.localize('wordWrap.off', \"Lines will never wrap.\"),\n _nls_js__WEBPACK_IMPORTED_MODULE_3__.localize('wordWrap.on', \"Lines will wrap at the viewport width.\"),\n _nls_js__WEBPACK_IMPORTED_MODULE_3__.localize('wordWrap.inherit', \"Lines will wrap according to the {0} setting.\", '`#editor.wordWrap#`'),\n ]\n },\n 'diffEditor.diffAlgorithm': {\n type: 'string',\n enum: ['legacy', 'advanced'],\n default: _diffEditor_js__WEBPACK_IMPORTED_MODULE_0__.diffEditorDefaultOptions.diffAlgorithm,\n markdownEnumDescriptions: [\n _nls_js__WEBPACK_IMPORTED_MODULE_3__.localize('diffAlgorithm.legacy', \"Uses the legacy diffing algorithm.\"),\n _nls_js__WEBPACK_IMPORTED_MODULE_3__.localize('diffAlgorithm.advanced', \"Uses the advanced diffing algorithm.\"),\n ],\n tags: ['experimental'],\n },\n 'diffEditor.hideUnchangedRegions.enabled': {\n type: 'boolean',\n default: _diffEditor_js__WEBPACK_IMPORTED_MODULE_0__.diffEditorDefaultOptions.hideUnchangedRegions.enabled,\n markdownDescription: _nls_js__WEBPACK_IMPORTED_MODULE_3__.localize('hideUnchangedRegions.enabled', \"Controls whether the diff editor shows unchanged regions.\"),\n },\n 'diffEditor.hideUnchangedRegions.revealLineCount': {\n type: 'integer',\n default: _diffEditor_js__WEBPACK_IMPORTED_MODULE_0__.diffEditorDefaultOptions.hideUnchangedRegions.revealLineCount,\n markdownDescription: _nls_js__WEBPACK_IMPORTED_MODULE_3__.localize('hideUnchangedRegions.revealLineCount', \"Controls how many lines are used for unchanged regions.\"),\n minimum: 1,\n },\n 'diffEditor.hideUnchangedRegions.minimumLineCount': {\n type: 'integer',\n default: _diffEditor_js__WEBPACK_IMPORTED_MODULE_0__.diffEditorDefaultOptions.hideUnchangedRegions.minimumLineCount,\n markdownDescription: _nls_js__WEBPACK_IMPORTED_MODULE_3__.localize('hideUnchangedRegions.minimumLineCount', \"Controls how many lines are used as a minimum for unchanged regions.\"),\n minimum: 1,\n },\n 'diffEditor.hideUnchangedRegions.contextLineCount': {\n type: 'integer',\n default: _diffEditor_js__WEBPACK_IMPORTED_MODULE_0__.diffEditorDefaultOptions.hideUnchangedRegions.contextLineCount,\n markdownDescription: _nls_js__WEBPACK_IMPORTED_MODULE_3__.localize('hideUnchangedRegions.contextLineCount', \"Controls how many lines are used as context when comparing unchanged regions.\"),\n minimum: 1,\n },\n 'diffEditor.experimental.showMoves': {\n type: 'boolean',\n default: _diffEditor_js__WEBPACK_IMPORTED_MODULE_0__.diffEditorDefaultOptions.experimental.showMoves,\n markdownDescription: _nls_js__WEBPACK_IMPORTED_MODULE_3__.localize('showMoves', \"Controls whether the diff editor should show detected code moves.\")\n },\n 'diffEditor.experimental.showEmptyDecorations': {\n type: 'boolean',\n default: _diffEditor_js__WEBPACK_IMPORTED_MODULE_0__.diffEditorDefaultOptions.experimental.showEmptyDecorations,\n description: _nls_js__WEBPACK_IMPORTED_MODULE_3__.localize('showEmptyDecorations', \"Controls whether the diff editor shows empty decorations to see where characters got inserted or deleted.\"),\n }\n }\n};\nfunction isConfigurationPropertySchema(x) {\n return (typeof x.type !== 'undefined' || typeof x.anyOf !== 'undefined');\n}\n// Add properties from the Editor Option Registry\nfor (const editorOption of _editorOptions_js__WEBPACK_IMPORTED_MODULE_1__.editorOptionsRegistry) {\n const schema = editorOption.schema;\n if (typeof schema !== 'undefined') {\n if (isConfigurationPropertySchema(schema)) {\n // This is a single schema contribution\n editorConfiguration.properties[`editor.${editorOption.name}`] = schema;\n }\n else {\n for (const key in schema) {\n if (Object.hasOwnProperty.call(schema, key)) {\n editorConfiguration.properties[key] = schema[key];\n }\n }\n }\n }\n}\nlet cachedEditorConfigurationKeys = null;\nfunction getEditorConfigurationKeys() {\n if (cachedEditorConfigurationKeys === null) {\n cachedEditorConfigurationKeys = Object.create(null);\n Object.keys(editorConfiguration.properties).forEach((prop) => {\n cachedEditorConfigurationKeys[prop] = true;\n });\n }\n return cachedEditorConfigurationKeys;\n}\nfunction isEditorConfigurationKey(key) {\n const editorConfigurationKeys = getEditorConfigurationKeys();\n return (editorConfigurationKeys[`editor.${key}`] || false);\n}\nfunction isDiffEditorConfigurationKey(key) {\n const editorConfigurationKeys = getEditorConfigurationKeys();\n return (editorConfigurationKeys[`diffEditor.${key}`] || false);\n}\nconst configurationRegistry = _platform_registry_common_platform_js__WEBPACK_IMPORTED_MODULE_5__.Registry.as(_platform_configuration_common_configurationRegistry_js__WEBPACK_IMPORTED_MODULE_4__.Extensions.Configuration);\nconfigurationRegistry.registerConfiguration(editorConfiguration);\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/common/config/editorConfigurationSchema.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/common/config/editorOptions.js":
/*!*********************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/common/config/editorOptions.js ***!
\*********************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ ApplyUpdateResult: () => (/* binding */ ApplyUpdateResult),\n/* harmony export */ ComputeOptionsMemory: () => (/* binding */ ComputeOptionsMemory),\n/* harmony export */ ConfigurationChangedEvent: () => (/* binding */ ConfigurationChangedEvent),\n/* harmony export */ EDITOR_FONT_DEFAULTS: () => (/* binding */ EDITOR_FONT_DEFAULTS),\n/* harmony export */ EditorFontLigatures: () => (/* binding */ EditorFontLigatures),\n/* harmony export */ EditorFontVariations: () => (/* binding */ EditorFontVariations),\n/* harmony export */ EditorLayoutInfoComputer: () => (/* binding */ EditorLayoutInfoComputer),\n/* harmony export */ EditorOptions: () => (/* binding */ EditorOptions),\n/* harmony export */ MINIMAP_GUTTER_WIDTH: () => (/* binding */ MINIMAP_GUTTER_WIDTH),\n/* harmony export */ ShowLightbulbIconMode: () => (/* binding */ ShowLightbulbIconMode),\n/* harmony export */ TextEditorCursorStyle: () => (/* binding */ TextEditorCursorStyle),\n/* harmony export */ boolean: () => (/* binding */ boolean),\n/* harmony export */ clampedFloat: () => (/* binding */ clampedFloat),\n/* harmony export */ clampedInt: () => (/* binding */ clampedInt),\n/* harmony export */ editorOptionsRegistry: () => (/* binding */ editorOptionsRegistry),\n/* harmony export */ filterValidationDecorations: () => (/* binding */ filterValidationDecorations),\n/* harmony export */ inUntrustedWorkspace: () => (/* binding */ inUntrustedWorkspace),\n/* harmony export */ stringSet: () => (/* binding */ stringSet),\n/* harmony export */ unicodeHighlightConfigKeys: () => (/* binding */ unicodeHighlightConfigKeys)\n/* harmony export */ });\n/* harmony import */ var _base_common_arrays_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../base/common/arrays.js */ \"./node_modules/monaco-editor/esm/vs/base/common/arrays.js\");\n/* harmony import */ var _base_common_objects_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../base/common/objects.js */ \"./node_modules/monaco-editor/esm/vs/base/common/objects.js\");\n/* harmony import */ var _base_common_platform_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../base/common/platform.js */ \"./node_modules/monaco-editor/esm/vs/base/common/platform.js\");\n/* harmony import */ var _core_textModelDefaults_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../core/textModelDefaults.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/core/textModelDefaults.js\");\n/* harmony import */ var _core_wordHelper_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../core/wordHelper.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/core/wordHelper.js\");\n/* harmony import */ var _nls_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../../../nls.js */ \"./node_modules/monaco-editor/esm/vs/nls.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n\n\n\n\n\n/**\n * @internal\n * The width of the minimap gutter, in pixels.\n */\nconst MINIMAP_GUTTER_WIDTH = 8;\n//#endregion\n/**\n * An event describing that the configuration of the editor has changed.\n */\nclass ConfigurationChangedEvent {\n /**\n * @internal\n */\n constructor(values) {\n this._values = values;\n }\n hasChanged(id) {\n return this._values[id];\n }\n}\n/**\n * @internal\n */\nclass ComputeOptionsMemory {\n constructor() {\n this.stableMinimapLayoutInput = null;\n this.stableFitMaxMinimapScale = 0;\n this.stableFitRemainingWidth = 0;\n }\n}\n/**\n * @internal\n */\nclass BaseEditorOption {\n constructor(id, name, defaultValue, schema) {\n this.id = id;\n this.name = name;\n this.defaultValue = defaultValue;\n this.schema = schema;\n }\n applyUpdate(value, update) {\n return applyUpdate(value, update);\n }\n compute(env, options, value) {\n return value;\n }\n}\nclass ApplyUpdateResult {\n constructor(newValue, didChange) {\n this.newValue = newValue;\n this.didChange = didChange;\n }\n}\nfunction applyUpdate(value, update) {\n if (typeof value !== 'object' || typeof update !== 'object' || !value || !update) {\n return new ApplyUpdateResult(update, value !== update);\n }\n if (Array.isArray(value) || Array.isArray(update)) {\n const arrayEquals = Array.isArray(value) && Array.isArray(update) && _base_common_arrays_js__WEBPACK_IMPORTED_MODULE_0__.equals(value, update);\n return new ApplyUpdateResult(update, !arrayEquals);\n }\n let didChange = false;\n for (const key in update) {\n if (update.hasOwnProperty(key)) {\n const result = applyUpdate(value[key], update[key]);\n if (result.didChange) {\n value[key] = result.newValue;\n didChange = true;\n }\n }\n }\n return new ApplyUpdateResult(value, didChange);\n}\n/**\n * @internal\n */\nclass ComputedEditorOption {\n constructor(id) {\n this.schema = undefined;\n this.id = id;\n this.name = '_never_';\n this.defaultValue = undefined;\n }\n applyUpdate(value, update) {\n return applyUpdate(value, update);\n }\n validate(input) {\n return this.defaultValue;\n }\n}\nclass SimpleEditorOption {\n constructor(id, name, defaultValue, schema) {\n this.id = id;\n this.name = name;\n this.defaultValue = defaultValue;\n this.schema = schema;\n }\n applyUpdate(value, update) {\n return applyUpdate(value, update);\n }\n validate(input) {\n if (typeof input === 'undefined') {\n return this.defaultValue;\n }\n return input;\n }\n compute(env, options, value) {\n return value;\n }\n}\n/**\n * @internal\n */\nfunction boolean(value, defaultValue) {\n if (typeof value === 'undefined') {\n return defaultValue;\n }\n if (value === 'false') {\n // treat the string 'false' as false\n return false;\n }\n return Boolean(value);\n}\nclass EditorBooleanOption extends SimpleEditorOption {\n constructor(id, name, defaultValue, schema = undefined) {\n if (typeof schema !== 'undefined') {\n schema.type = 'boolean';\n schema.default = defaultValue;\n }\n super(id, name, defaultValue, schema);\n }\n validate(input) {\n return boolean(input, this.defaultValue);\n }\n}\n/**\n * @internal\n */\nfunction clampedInt(value, defaultValue, minimum, maximum) {\n if (typeof value === 'undefined') {\n return defaultValue;\n }\n let r = parseInt(value, 10);\n if (isNaN(r)) {\n return defaultValue;\n }\n r = Math.max(minimum, r);\n r = Math.min(maximum, r);\n return r | 0;\n}\nclass EditorIntOption extends SimpleEditorOption {\n static clampedInt(value, defaultValue, minimum, maximum) {\n return clampedInt(value, defaultValue, minimum, maximum);\n }\n constructor(id, name, defaultValue, minimum, maximum, schema = undefined) {\n if (typeof schema !== 'undefined') {\n schema.type = 'integer';\n schema.default = defaultValue;\n schema.minimum = minimum;\n schema.maximum = maximum;\n }\n super(id, name, defaultValue, schema);\n this.minimum = minimum;\n this.maximum = maximum;\n }\n validate(input) {\n return EditorIntOption.clampedInt(input, this.defaultValue, this.minimum, this.maximum);\n }\n}\n/**\n * @internal\n */\nfunction clampedFloat(value, defaultValue, minimum, maximum) {\n if (typeof value === 'undefined') {\n return defaultValue;\n }\n const r = EditorFloatOption.float(value, defaultValue);\n return EditorFloatOption.clamp(r, minimum, maximum);\n}\nclass EditorFloatOption extends SimpleEditorOption {\n static clamp(n, min, max) {\n if (n < min) {\n return min;\n }\n if (n > max) {\n return max;\n }\n return n;\n }\n static float(value, defaultValue) {\n if (typeof value === 'number') {\n return value;\n }\n if (typeof value === 'undefined') {\n return defaultValue;\n }\n const r = parseFloat(value);\n return (isNaN(r) ? defaultValue : r);\n }\n constructor(id, name, defaultValue, validationFn, schema) {\n if (typeof schema !== 'undefined') {\n schema.type = 'number';\n schema.default = defaultValue;\n }\n super(id, name, defaultValue, schema);\n this.validationFn = validationFn;\n }\n validate(input) {\n return this.validationFn(EditorFloatOption.float(input, this.defaultValue));\n }\n}\nclass EditorStringOption extends SimpleEditorOption {\n static string(value, defaultValue) {\n if (typeof value !== 'string') {\n return defaultValue;\n }\n return value;\n }\n constructor(id, name, defaultValue, schema = undefined) {\n if (typeof schema !== 'undefined') {\n schema.type = 'string';\n schema.default = defaultValue;\n }\n super(id, name, defaultValue, schema);\n }\n validate(input) {\n return EditorStringOption.string(input, this.defaultValue);\n }\n}\n/**\n * @internal\n */\nfunction stringSet(value, defaultValue, allowedValues, renamedValues) {\n if (typeof value !== 'string') {\n return defaultValue;\n }\n if (renamedValues && value in renamedValues) {\n return renamedValues[value];\n }\n if (allowedValues.indexOf(value) === -1) {\n return defaultValue;\n }\n return value;\n}\nclass EditorStringEnumOption extends SimpleEditorOption {\n constructor(id, name, defaultValue, allowedValues, schema = undefined) {\n if (typeof schema !== 'undefined') {\n schema.type = 'string';\n schema.enum = allowedValues;\n schema.default = defaultValue;\n }\n super(id, name, defaultValue, schema);\n this._allowedValues = allowedValues;\n }\n validate(input) {\n return stringSet(input, this.defaultValue, this._allowedValues);\n }\n}\nclass EditorEnumOption extends BaseEditorOption {\n constructor(id, name, defaultValue, defaultStringValue, allowedValues, convert, schema = undefined) {\n if (typeof schema !== 'undefined') {\n schema.type = 'string';\n schema.enum = allowedValues;\n schema.default = defaultStringValue;\n }\n super(id, name, defaultValue, schema);\n this._allowedValues = allowedValues;\n this._convert = convert;\n }\n validate(input) {\n if (typeof input !== 'string') {\n return this.defaultValue;\n }\n if (this._allowedValues.indexOf(input) === -1) {\n return this.defaultValue;\n }\n return this._convert(input);\n }\n}\n//#endregion\n//#region autoIndent\nfunction _autoIndentFromString(autoIndent) {\n switch (autoIndent) {\n case 'none': return 0 /* EditorAutoIndentStrategy.None */;\n case 'keep': return 1 /* EditorAutoIndentStrategy.Keep */;\n case 'brackets': return 2 /* EditorAutoIndentStrategy.Brackets */;\n case 'advanced': return 3 /* EditorAutoIndentStrategy.Advanced */;\n case 'full': return 4 /* EditorAutoIndentStrategy.Full */;\n }\n}\n//#endregion\n//#region accessibilitySupport\nclass EditorAccessibilitySupport extends BaseEditorOption {\n constructor() {\n super(2 /* EditorOption.accessibilitySupport */, 'accessibilitySupport', 0 /* AccessibilitySupport.Unknown */, {\n type: 'string',\n enum: ['auto', 'on', 'off'],\n enumDescriptions: [\n _nls_js__WEBPACK_IMPORTED_MODULE_5__.localize('accessibilitySupport.auto', \"Use platform APIs to detect when a Screen Reader is attached.\"),\n _nls_js__WEBPACK_IMPORTED_MODULE_5__.localize('accessibilitySupport.on', \"Optimize for usage with a Screen Reader.\"),\n _nls_js__WEBPACK_IMPORTED_MODULE_5__.localize('accessibilitySupport.off', \"Assume a screen reader is not attached.\"),\n ],\n default: 'auto',\n tags: ['accessibility'],\n description: _nls_js__WEBPACK_IMPORTED_MODULE_5__.localize('accessibilitySupport', \"Controls if the UI should run in a mode where it is optimized for screen readers.\")\n });\n }\n validate(input) {\n switch (input) {\n case 'auto': return 0 /* AccessibilitySupport.Unknown */;\n case 'off': return 1 /* AccessibilitySupport.Disabled */;\n case 'on': return 2 /* AccessibilitySupport.Enabled */;\n }\n return this.defaultValue;\n }\n compute(env, options, value) {\n if (value === 0 /* AccessibilitySupport.Unknown */) {\n // The editor reads the `accessibilitySupport` from the environment\n return env.accessibilitySupport;\n }\n return value;\n }\n}\nclass EditorComments extends BaseEditorOption {\n constructor() {\n const defaults = {\n insertSpace: true,\n ignoreEmptyLines: true,\n };\n super(23 /* EditorOption.comments */, 'comments', defaults, {\n 'editor.comments.insertSpace': {\n type: 'boolean',\n default: defaults.insertSpace,\n description: _nls_js__WEBPACK_IMPORTED_MODULE_5__.localize('comments.insertSpace', \"Controls whether a space character is inserted when commenting.\")\n },\n 'editor.comments.ignoreEmptyLines': {\n type: 'boolean',\n default: defaults.ignoreEmptyLines,\n description: _nls_js__WEBPACK_IMPORTED_MODULE_5__.localize('comments.ignoreEmptyLines', 'Controls if empty lines should be ignored with toggle, add or remove actions for line comments.')\n },\n });\n }\n validate(_input) {\n if (!_input || typeof _input !== 'object') {\n return this.defaultValue;\n }\n const input = _input;\n return {\n insertSpace: boolean(input.insertSpace, this.defaultValue.insertSpace),\n ignoreEmptyLines: boolean(input.ignoreEmptyLines, this.defaultValue.ignoreEmptyLines),\n };\n }\n}\nfunction _cursorBlinkingStyleFromString(cursorBlinkingStyle) {\n switch (cursorBlinkingStyle) {\n case 'blink': return 1 /* TextEditorCursorBlinkingStyle.Blink */;\n case 'smooth': return 2 /* TextEditorCursorBlinkingStyle.Smooth */;\n case 'phase': return 3 /* TextEditorCursorBlinkingStyle.Phase */;\n case 'expand': return 4 /* TextEditorCursorBlinkingStyle.Expand */;\n case 'solid': return 5 /* TextEditorCursorBlinkingStyle.Solid */;\n }\n}\n//#endregion\n//#region cursorStyle\n/**\n * The style in which the editor's cursor should be rendered.\n */\nvar TextEditorCursorStyle;\n(function (TextEditorCursorStyle) {\n /**\n * As a vertical line (sitting between two characters).\n */\n TextEditorCursorStyle[TextEditorCursorStyle[\"Line\"] = 1] = \"Line\";\n /**\n * As a block (sitting on top of a character).\n */\n TextEditorCursorStyle[TextEditorCursorStyle[\"Block\"] = 2] = \"Block\";\n /**\n * As a horizontal line (sitting under a character).\n */\n TextEditorCursorStyle[TextEditorCursorStyle[\"Underline\"] = 3] = \"Underline\";\n /**\n * As a thin vertical line (sitting between two characters).\n */\n TextEditorCursorStyle[TextEditorCursorStyle[\"LineThin\"] = 4] = \"LineThin\";\n /**\n * As an outlined block (sitting on top of a character).\n */\n TextEditorCursorStyle[TextEditorCursorStyle[\"BlockOutline\"] = 5] = \"BlockOutline\";\n /**\n * As a thin horizontal line (sitting under a character).\n */\n TextEditorCursorStyle[TextEditorCursorStyle[\"UnderlineThin\"] = 6] = \"UnderlineThin\";\n})(TextEditorCursorStyle || (TextEditorCursorStyle = {}));\nfunction _cursorStyleFromString(cursorStyle) {\n switch (cursorStyle) {\n case 'line': return TextEditorCursorStyle.Line;\n case 'block': return TextEditorCursorStyle.Block;\n case 'underline': return TextEditorCursorStyle.Underline;\n case 'line-thin': return TextEditorCursorStyle.LineThin;\n case 'block-outline': return TextEditorCursorStyle.BlockOutline;\n case 'underline-thin': return TextEditorCursorStyle.UnderlineThin;\n }\n}\n//#endregion\n//#region editorClassName\nclass EditorClassName extends ComputedEditorOption {\n constructor() {\n super(141 /* EditorOption.editorClassName */);\n }\n compute(env, options, _) {\n const classNames = ['monaco-editor'];\n if (options.get(39 /* EditorOption.extraEditorClassName */)) {\n classNames.push(options.get(39 /* EditorOption.extraEditorClassName */));\n }\n if (env.extraEditorClassName) {\n classNames.push(env.extraEditorClassName);\n }\n if (options.get(74 /* EditorOption.mouseStyle */) === 'default') {\n classNames.push('mouse-default');\n }\n else if (options.get(74 /* EditorOption.mouseStyle */) === 'copy') {\n classNames.push('mouse-copy');\n }\n if (options.get(111 /* EditorOption.showUnused */)) {\n classNames.push('showUnused');\n }\n if (options.get(139 /* EditorOption.showDeprecated */)) {\n classNames.push('showDeprecated');\n }\n return classNames.join(' ');\n }\n}\n//#endregion\n//#region emptySelectionClipboard\nclass EditorEmptySelectionClipboard extends EditorBooleanOption {\n constructor() {\n super(37 /* EditorOption.emptySelectionClipboard */, 'emptySelectionClipboard', true, { description: _nls_js__WEBPACK_IMPORTED_MODULE_5__.localize('emptySelectionClipboard', \"Controls whether copying without a selection copies the current line.\") });\n }\n compute(env, options, value) {\n return value && env.emptySelectionClipboard;\n }\n}\nclass EditorFind extends BaseEditorOption {\n constructor() {\n const defaults = {\n cursorMoveOnType: true,\n seedSearchStringFromSelection: 'always',\n autoFindInSelection: 'never',\n globalFindClipboard: false,\n addExtraSpaceOnTop: true,\n loop: true\n };\n super(41 /* EditorOption.find */, 'find', defaults, {\n 'editor.find.cursorMoveOnType': {\n type: 'boolean',\n default: defaults.cursorMoveOnType,\n description: _nls_js__WEBPACK_IMPORTED_MODULE_5__.localize('find.cursorMoveOnType', \"Controls whether the cursor should jump to find matches while typing.\")\n },\n 'editor.find.seedSearchStringFromSelection': {\n type: 'string',\n enum: ['never', 'always', 'selection'],\n default: defaults.seedSearchStringFromSelection,\n enumDescriptions: [\n _nls_js__WEBPACK_IMPORTED_MODULE_5__.localize('editor.find.seedSearchStringFromSelection.never', 'Never seed search string from the editor selection.'),\n _nls_js__WEBPACK_IMPORTED_MODULE_5__.localize('editor.find.seedSearchStringFromSelection.always', 'Always seed search string from the editor selection, including word at cursor position.'),\n _nls_js__WEBPACK_IMPORTED_MODULE_5__.localize('editor.find.seedSearchStringFromSelection.selection', 'Only seed search string from the editor selection.')\n ],\n description: _nls_js__WEBPACK_IMPORTED_MODULE_5__.localize('find.seedSearchStringFromSelection', \"Controls whether the search string in the Find Widget is seeded from the editor selection.\")\n },\n 'editor.find.autoFindInSelection': {\n type: 'string',\n enum: ['never', 'always', 'multiline'],\n default: defaults.autoFindInSelection,\n enumDescriptions: [\n _nls_js__WEBPACK_IMPORTED_MODULE_5__.localize('editor.find.autoFindInSelection.never', 'Never turn on Find in Selection automatically (default).'),\n _nls_js__WEBPACK_IMPORTED_MODULE_5__.localize('editor.find.autoFindInSelection.always', 'Always turn on Find in Selection automatically.'),\n _nls_js__WEBPACK_IMPORTED_MODULE_5__.localize('editor.find.autoFindInSelection.multiline', 'Turn on Find in Selection automatically when multiple lines of content are selected.')\n ],\n description: _nls_js__WEBPACK_IMPORTED_MODULE_5__.localize('find.autoFindInSelection', \"Controls the condition for turning on Find in Selection automatically.\")\n },\n 'editor.find.globalFindClipboard': {\n type: 'boolean',\n default: defaults.globalFindClipboard,\n description: _nls_js__WEBPACK_IMPORTED_MODULE_5__.localize('find.globalFindClipboard', \"Controls whether the Find Widget should read or modify the shared find clipboard on macOS.\"),\n included: _base_common_platform_js__WEBPACK_IMPORTED_MODULE_2__.isMacintosh\n },\n 'editor.find.addExtraSpaceOnTop': {\n type: 'boolean',\n default: defaults.addExtraSpaceOnTop,\n description: _nls_js__WEBPACK_IMPORTED_MODULE_5__.localize('find.addExtraSpaceOnTop', \"Controls whether the Find Widget should add extra lines on top of the editor. When true, you can scroll beyond the first line when the Find Widget is visible.\")\n },\n 'editor.find.loop': {\n type: 'boolean',\n default: defaults.loop,\n description: _nls_js__WEBPACK_IMPORTED_MODULE_5__.localize('find.loop', \"Controls whether the search automatically restarts from the beginning (or the end) when no further matches can be found.\")\n },\n });\n }\n validate(_input) {\n if (!_input || typeof _input !== 'object') {\n return this.defaultValue;\n }\n const input = _input;\n return {\n cursorMoveOnType: boolean(input.cursorMoveOnType, this.defaultValue.cursorMoveOnType),\n seedSearchStringFromSelection: typeof _input.seedSearchStringFromSelection === 'boolean'\n ? (_input.seedSearchStringFromSelection ? 'always' : 'never')\n : stringSet(input.seedSearchStringFromSelection, this.defaultValue.seedSearchStringFromSelection, ['never', 'always', 'selection']),\n autoFindInSelection: typeof _input.autoFindInSelection === 'boolean'\n ? (_input.autoFindInSelection ? 'always' : 'never')\n : stringSet(input.autoFindInSelection, this.defaultValue.autoFindInSelection, ['never', 'always', 'multiline']),\n globalFindClipboard: boolean(input.globalFindClipboard, this.defaultValue.globalFindClipboard),\n addExtraSpaceOnTop: boolean(input.addExtraSpaceOnTop, this.defaultValue.addExtraSpaceOnTop),\n loop: boolean(input.loop, this.defaultValue.loop),\n };\n }\n}\n//#endregion\n//#region fontLigatures\n/**\n * @internal\n */\nclass EditorFontLigatures extends BaseEditorOption {\n constructor() {\n super(51 /* EditorOption.fontLigatures */, 'fontLigatures', EditorFontLigatures.OFF, {\n anyOf: [\n {\n type: 'boolean',\n description: _nls_js__WEBPACK_IMPORTED_MODULE_5__.localize('fontLigatures', \"Enables/Disables font ligatures ('calt' and 'liga' font features). Change this to a string for fine-grained control of the 'font-feature-settings' CSS property.\"),\n },\n {\n type: 'string',\n description: _nls_js__WEBPACK_IMPORTED_MODULE_5__.localize('fontFeatureSettings', \"Explicit 'font-feature-settings' CSS property. A boolean can be passed instead if one only needs to turn on/off ligatures.\")\n }\n ],\n description: _nls_js__WEBPACK_IMPORTED_MODULE_5__.localize('fontLigaturesGeneral', \"Configures font ligatures or font features. Can be either a boolean to enable/disable ligatures or a string for the value of the CSS 'font-feature-settings' property.\"),\n default: false\n });\n }\n validate(input) {\n if (typeof input === 'undefined') {\n return this.defaultValue;\n }\n if (typeof input === 'string') {\n if (input === 'false' || input.length === 0) {\n return EditorFontLigatures.OFF;\n }\n if (input === 'true') {\n return EditorFontLigatures.ON;\n }\n return input;\n }\n if (Boolean(input)) {\n return EditorFontLigatures.ON;\n }\n return EditorFontLigatures.OFF;\n }\n}\nEditorFontLigatures.OFF = '\"liga\" off, \"calt\" off';\nEditorFontLigatures.ON = '\"liga\" on, \"calt\" on';\n//#endregion\n//#region fontVariations\n/**\n * @internal\n */\nclass EditorFontVariations extends BaseEditorOption {\n constructor() {\n super(54 /* EditorOption.fontVariations */, 'fontVariations', EditorFontVariations.OFF, {\n anyOf: [\n {\n type: 'boolean',\n description: _nls_js__WEBPACK_IMPORTED_MODULE_5__.localize('fontVariations', \"Enables/Disables the translation from font-weight to font-variation-settings. Change this to a string for fine-grained control of the 'font-variation-settings' CSS property.\"),\n },\n {\n type: 'string',\n description: _nls_js__WEBPACK_IMPORTED_MODULE_5__.localize('fontVariationSettings', \"Explicit 'font-variation-settings' CSS property. A boolean can be passed instead if one only needs to translate font-weight to font-variation-settings.\")\n }\n ],\n description: _nls_js__WEBPACK_IMPORTED_MODULE_5__.localize('fontVariationsGeneral', \"Configures font variations. Can be either a boolean to enable/disable the translation from font-weight to font-variation-settings or a string for the value of the CSS 'font-variation-settings' property.\"),\n default: false\n });\n }\n validate(input) {\n if (typeof input === 'undefined') {\n return this.defaultValue;\n }\n if (typeof input === 'string') {\n if (input === 'false') {\n return EditorFontVariations.OFF;\n }\n if (input === 'true') {\n return EditorFontVariations.TRANSLATE;\n }\n return input;\n }\n if (Boolean(input)) {\n return EditorFontVariations.TRANSLATE;\n }\n return EditorFontVariations.OFF;\n }\n compute(env, options, value) {\n // The value is computed from the fontWeight if it is true.\n // So take the result from env.fontInfo\n return env.fontInfo.fontVariationSettings;\n }\n}\n// Text is laid out using default settings.\nEditorFontVariations.OFF = 'normal';\n// Translate `fontWeight` config to the `font-variation-settings` CSS property.\nEditorFontVariations.TRANSLATE = 'translate';\n//#endregion\n//#region fontInfo\nclass EditorFontInfo extends ComputedEditorOption {\n constructor() {\n super(50 /* EditorOption.fontInfo */);\n }\n compute(env, options, _) {\n return env.fontInfo;\n }\n}\n//#endregion\n//#region fontSize\nclass EditorFontSize extends SimpleEditorOption {\n constructor() {\n super(52 /* EditorOption.fontSize */, 'fontSize', EDITOR_FONT_DEFAULTS.fontSize, {\n type: 'number',\n minimum: 6,\n maximum: 100,\n default: EDITOR_FONT_DEFAULTS.fontSize,\n description: _nls_js__WEBPACK_IMPORTED_MODULE_5__.localize('fontSize', \"Controls the font size in pixels.\")\n });\n }\n validate(input) {\n const r = EditorFloatOption.float(input, this.defaultValue);\n if (r === 0) {\n return EDITOR_FONT_DEFAULTS.fontSize;\n }\n return EditorFloatOption.clamp(r, 6, 100);\n }\n compute(env, options, value) {\n // The final fontSize respects the editor zoom level.\n // So take the result from env.fontInfo\n return env.fontInfo.fontSize;\n }\n}\n//#endregion\n//#region fontWeight\nclass EditorFontWeight extends BaseEditorOption {\n constructor() {\n super(53 /* EditorOption.fontWeight */, 'fontWeight', EDITOR_FONT_DEFAULTS.fontWeight, {\n anyOf: [\n {\n type: 'number',\n minimum: EditorFontWeight.MINIMUM_VALUE,\n maximum: EditorFontWeight.MAXIMUM_VALUE,\n errorMessage: _nls_js__WEBPACK_IMPORTED_MODULE_5__.localize('fontWeightErrorMessage', \"Only \\\"normal\\\" and \\\"bold\\\" keywords or numbers between 1 and 1000 are allowed.\")\n },\n {\n type: 'string',\n pattern: '^(normal|bold|1000|[1-9][0-9]{0,2})$'\n },\n {\n enum: EditorFontWeight.SUGGESTION_VALUES\n }\n ],\n default: EDITOR_FONT_DEFAULTS.fontWeight,\n description: _nls_js__WEBPACK_IMPORTED_MODULE_5__.localize('fontWeight', \"Controls the font weight. Accepts \\\"normal\\\" and \\\"bold\\\" keywords or numbers between 1 and 1000.\")\n });\n }\n validate(input) {\n if (input === 'normal' || input === 'bold') {\n return input;\n }\n return String(EditorIntOption.clampedInt(input, EDITOR_FONT_DEFAULTS.fontWeight, EditorFontWeight.MINIMUM_VALUE, EditorFontWeight.MAXIMUM_VALUE));\n }\n}\nEditorFontWeight.SUGGESTION_VALUES = ['normal', 'bold', '100', '200', '300', '400', '500', '600', '700', '800', '900'];\nEditorFontWeight.MINIMUM_VALUE = 1;\nEditorFontWeight.MAXIMUM_VALUE = 1000;\nclass EditorGoToLocation extends BaseEditorOption {\n constructor() {\n const defaults = {\n multiple: 'peek',\n multipleDefinitions: 'peek',\n multipleTypeDefinitions: 'peek',\n multipleDeclarations: 'peek',\n multipleImplementations: 'peek',\n multipleReferences: 'peek',\n alternativeDefinitionCommand: 'editor.action.goToReferences',\n alternativeTypeDefinitionCommand: 'editor.action.goToReferences',\n alternativeDeclarationCommand: 'editor.action.goToReferences',\n alternativeImplementationCommand: '',\n alternativeReferenceCommand: '',\n };\n const jsonSubset = {\n type: 'string',\n enum: ['peek', 'gotoAndPeek', 'goto'],\n default: defaults.multiple,\n enumDescriptions: [\n _nls_js__WEBPACK_IMPORTED_MODULE_5__.localize('editor.gotoLocation.multiple.peek', 'Show Peek view of the results (default)'),\n _nls_js__WEBPACK_IMPORTED_MODULE_5__.localize('editor.gotoLocation.multiple.gotoAndPeek', 'Go to the primary result and show a Peek view'),\n _nls_js__WEBPACK_IMPORTED_MODULE_5__.localize('editor.gotoLocation.multiple.goto', 'Go to the primary result and enable Peek-less navigation to others')\n ]\n };\n const alternativeCommandOptions = ['', 'editor.action.referenceSearch.trigger', 'editor.action.goToReferences', 'editor.action.peekImplementation', 'editor.action.goToImplementation', 'editor.action.peekTypeDefinition', 'editor.action.goToTypeDefinition', 'editor.action.peekDeclaration', 'editor.action.revealDeclaration', 'editor.action.peekDefinition', 'editor.action.revealDefinitionAside', 'editor.action.revealDefinition'];\n super(58 /* EditorOption.gotoLocation */, 'gotoLocation', defaults, {\n 'editor.gotoLocation.multiple': {\n deprecationMessage: _nls_js__WEBPACK_IMPORTED_MODULE_5__.localize('editor.gotoLocation.multiple.deprecated', \"This setting is deprecated, please use separate settings like 'editor.editor.gotoLocation.multipleDefinitions' or 'editor.editor.gotoLocation.multipleImplementations' instead.\"),\n },\n 'editor.gotoLocation.multipleDefinitions': {\n description: _nls_js__WEBPACK_IMPORTED_MODULE_5__.localize('editor.editor.gotoLocation.multipleDefinitions', \"Controls the behavior the 'Go to Definition'-command when multiple target locations exist.\"),\n ...jsonSubset,\n },\n 'editor.gotoLocation.multipleTypeDefinitions': {\n description: _nls_js__WEBPACK_IMPORTED_MODULE_5__.localize('editor.editor.gotoLocation.multipleTypeDefinitions', \"Controls the behavior the 'Go to Type Definition'-command when multiple target locations exist.\"),\n ...jsonSubset,\n },\n 'editor.gotoLocation.multipleDeclarations': {\n description: _nls_js__WEBPACK_IMPORTED_MODULE_5__.localize('editor.editor.gotoLocation.multipleDeclarations', \"Controls the behavior the 'Go to Declaration'-command when multiple target locations exist.\"),\n ...jsonSubset,\n },\n 'editor.gotoLocation.multipleImplementations': {\n description: _nls_js__WEBPACK_IMPORTED_MODULE_5__.localize('editor.editor.gotoLocation.multipleImplemenattions', \"Controls the behavior the 'Go to Implementations'-command when multiple target locations exist.\"),\n ...jsonSubset,\n },\n 'editor.gotoLocation.multipleReferences': {\n description: _nls_js__WEBPACK_IMPORTED_MODULE_5__.localize('editor.editor.gotoLocation.multipleReferences', \"Controls the behavior the 'Go to References'-command when multiple target locations exist.\"),\n ...jsonSubset,\n },\n 'editor.gotoLocation.alternativeDefinitionCommand': {\n type: 'string',\n default: defaults.alternativeDefinitionCommand,\n enum: alternativeCommandOptions,\n description: _nls_js__WEBPACK_IMPORTED_MODULE_5__.localize('alternativeDefinitionCommand', \"Alternative command id that is being executed when the result of 'Go to Definition' is the current location.\")\n },\n 'editor.gotoLocation.alternativeTypeDefinitionCommand': {\n type: 'string',\n default: defaults.alternativeTypeDefinitionCommand,\n enum: alternativeCommandOptions,\n description: _nls_js__WEBPACK_IMPORTED_MODULE_5__.localize('alternativeTypeDefinitionCommand', \"Alternative command id that is being executed when the result of 'Go to Type Definition' is the current location.\")\n },\n 'editor.gotoLocation.alternativeDeclarationCommand': {\n type: 'string',\n default: defaults.alternativeDeclarationCommand,\n enum: alternativeCommandOptions,\n description: _nls_js__WEBPACK_IMPORTED_MODULE_5__.localize('alternativeDeclarationCommand', \"Alternative command id that is being executed when the result of 'Go to Declaration' is the current location.\")\n },\n 'editor.gotoLocation.alternativeImplementationCommand': {\n type: 'string',\n default: defaults.alternativeImplementationCommand,\n enum: alternativeCommandOptions,\n description: _nls_js__WEBPACK_IMPORTED_MODULE_5__.localize('alternativeImplementationCommand', \"Alternative command id that is being executed when the result of 'Go to Implementation' is the current location.\")\n },\n 'editor.gotoLocation.alternativeReferenceCommand': {\n type: 'string',\n default: defaults.alternativeReferenceCommand,\n enum: alternativeCommandOptions,\n description: _nls_js__WEBPACK_IMPORTED_MODULE_5__.localize('alternativeReferenceCommand', \"Alternative command id that is being executed when the result of 'Go to Reference' is the current location.\")\n },\n });\n }\n validate(_input) {\n var _a, _b, _c, _d, _e;\n if (!_input || typeof _input !== 'object') {\n return this.defaultValue;\n }\n const input = _input;\n return {\n multiple: stringSet(input.multiple, this.defaultValue.multiple, ['peek', 'gotoAndPeek', 'goto']),\n multipleDefinitions: (_a = input.multipleDefinitions) !== null && _a !== void 0 ? _a : stringSet(input.multipleDefinitions, 'peek', ['peek', 'gotoAndPeek', 'goto']),\n multipleTypeDefinitions: (_b = input.multipleTypeDefinitions) !== null && _b !== void 0 ? _b : stringSet(input.multipleTypeDefinitions, 'peek', ['peek', 'gotoAndPeek', 'goto']),\n multipleDeclarations: (_c = input.multipleDeclarations) !== null && _c !== void 0 ? _c : stringSet(input.multipleDeclarations, 'peek', ['peek', 'gotoAndPeek', 'goto']),\n multipleImplementations: (_d = input.multipleImplementations) !== null && _d !== void 0 ? _d : stringSet(input.multipleImplementations, 'peek', ['peek', 'gotoAndPeek', 'goto']),\n multipleReferences: (_e = input.multipleReferences) !== null && _e !== void 0 ? _e : stringSet(input.multipleReferences, 'peek', ['peek', 'gotoAndPeek', 'goto']),\n alternativeDefinitionCommand: EditorStringOption.string(input.alternativeDefinitionCommand, this.defaultValue.alternativeDefinitionCommand),\n alternativeTypeDefinitionCommand: EditorStringOption.string(input.alternativeTypeDefinitionCommand, this.defaultValue.alternativeTypeDefinitionCommand),\n alternativeDeclarationCommand: EditorStringOption.string(input.alternativeDeclarationCommand, this.defaultValue.alternativeDeclarationCommand),\n alternativeImplementationCommand: EditorStringOption.string(input.alternativeImplementationCommand, this.defaultValue.alternativeImplementationCommand),\n alternativeReferenceCommand: EditorStringOption.string(input.alternativeReferenceCommand, this.defaultValue.alternativeReferenceCommand),\n };\n }\n}\nclass EditorHover extends BaseEditorOption {\n constructor() {\n const defaults = {\n enabled: true,\n delay: 300,\n hidingDelay: 300,\n sticky: true,\n above: true,\n };\n super(60 /* EditorOption.hover */, 'hover', defaults, {\n 'editor.hover.enabled': {\n type: 'boolean',\n default: defaults.enabled,\n description: _nls_js__WEBPACK_IMPORTED_MODULE_5__.localize('hover.enabled', \"Controls whether the hover is shown.\")\n },\n 'editor.hover.delay': {\n type: 'number',\n default: defaults.delay,\n minimum: 0,\n maximum: 10000,\n description: _nls_js__WEBPACK_IMPORTED_MODULE_5__.localize('hover.delay', \"Controls the delay in milliseconds after which the hover is shown.\")\n },\n 'editor.hover.sticky': {\n type: 'boolean',\n default: defaults.sticky,\n description: _nls_js__WEBPACK_IMPORTED_MODULE_5__.localize('hover.sticky', \"Controls whether the hover should remain visible when mouse is moved over it.\")\n },\n 'editor.hover.hidingDelay': {\n type: 'integer',\n minimum: 0,\n default: defaults.hidingDelay,\n description: _nls_js__WEBPACK_IMPORTED_MODULE_5__.localize('hover.hidingDelay', \"Controls the delay in milliseconds after which the hover is hidden. Requires `editor.hover.sticky` to be enabled.\")\n },\n 'editor.hover.above': {\n type: 'boolean',\n default: defaults.above,\n description: _nls_js__WEBPACK_IMPORTED_MODULE_5__.localize('hover.above', \"Prefer showing hovers above the line, if there's space.\")\n },\n });\n }\n validate(_input) {\n if (!_input || typeof _input !== 'object') {\n return this.defaultValue;\n }\n const input = _input;\n return {\n enabled: boolean(input.enabled, this.defaultValue.enabled),\n delay: EditorIntOption.clampedInt(input.delay, this.defaultValue.delay, 0, 10000),\n sticky: boolean(input.sticky, this.defaultValue.sticky),\n hidingDelay: EditorIntOption.clampedInt(input.hidingDelay, this.defaultValue.hidingDelay, 0, 600000),\n above: boolean(input.above, this.defaultValue.above),\n };\n }\n}\n/**\n * @internal\n */\nclass EditorLayoutInfoComputer extends ComputedEditorOption {\n constructor() {\n super(144 /* EditorOption.layoutInfo */);\n }\n compute(env, options, _) {\n return EditorLayoutInfoComputer.computeLayout(options, {\n memory: env.memory,\n outerWidth: env.outerWidth,\n outerHeight: env.outerHeight,\n isDominatedByLongLines: env.isDominatedByLongLines,\n lineHeight: env.fontInfo.lineHeight,\n viewLineCount: env.viewLineCount,\n lineNumbersDigitCount: env.lineNumbersDigitCount,\n typicalHalfwidthCharacterWidth: env.fontInfo.typicalHalfwidthCharacterWidth,\n maxDigitWidth: env.fontInfo.maxDigitWidth,\n pixelRatio: env.pixelRatio,\n glyphMarginDecorationLaneCount: env.glyphMarginDecorationLaneCount\n });\n }\n static computeContainedMinimapLineCount(input) {\n const typicalViewportLineCount = input.height / input.lineHeight;\n const extraLinesBeforeFirstLine = Math.floor(input.paddingTop / input.lineHeight);\n let extraLinesBeyondLastLine = Math.floor(input.paddingBottom / input.lineHeight);\n if (input.scrollBeyondLastLine) {\n extraLinesBeyondLastLine = Math.max(extraLinesBeyondLastLine, typicalViewportLineCount - 1);\n }\n const desiredRatio = (extraLinesBeforeFirstLine + input.viewLineCount + extraLinesBeyondLastLine) / (input.pixelRatio * input.height);\n const minimapLineCount = Math.floor(input.viewLineCount / desiredRatio);\n return { typicalViewportLineCount, extraLinesBeforeFirstLine, extraLinesBeyondLastLine, desiredRatio, minimapLineCount };\n }\n static _computeMinimapLayout(input, memory) {\n const outerWidth = input.outerWidth;\n const outerHeight = input.outerHeight;\n const pixelRatio = input.pixelRatio;\n if (!input.minimap.enabled) {\n return {\n renderMinimap: 0 /* RenderMinimap.None */,\n minimapLeft: 0,\n minimapWidth: 0,\n minimapHeightIsEditorHeight: false,\n minimapIsSampling: false,\n minimapScale: 1,\n minimapLineHeight: 1,\n minimapCanvasInnerWidth: 0,\n minimapCanvasInnerHeight: Math.floor(pixelRatio * outerHeight),\n minimapCanvasOuterWidth: 0,\n minimapCanvasOuterHeight: outerHeight,\n };\n }\n // Can use memory if only the `viewLineCount` and `remainingWidth` have changed\n const stableMinimapLayoutInput = memory.stableMinimapLayoutInput;\n const couldUseMemory = (stableMinimapLayoutInput\n // && input.outerWidth === lastMinimapLayoutInput.outerWidth !!! INTENTIONAL OMITTED\n && input.outerHeight === stableMinimapLayoutInput.outerHeight\n && input.lineHeight === stableMinimapLayoutInput.lineHeight\n && input.typicalHalfwidthCharacterWidth === stableMinimapLayoutInput.typicalHalfwidthCharacterWidth\n && input.pixelRatio === stableMinimapLayoutInput.pixelRatio\n && input.scrollBeyondLastLine === stableMinimapLayoutInput.scrollBeyondLastLine\n && input.paddingTop === stableMinimapLayoutInput.paddingTop\n && input.paddingBottom === stableMinimapLayoutInput.paddingBottom\n && input.minimap.enabled === stableMinimapLayoutInput.minimap.enabled\n && input.minimap.side === stableMinimapLayoutInput.minimap.side\n && input.minimap.size === stableMinimapLayoutInput.minimap.size\n && input.minimap.showSlider === stableMinimapLayoutInput.minimap.showSlider\n && input.minimap.renderCharacters === stableMinimapLayoutInput.minimap.renderCharacters\n && input.minimap.maxColumn === stableMinimapLayoutInput.minimap.maxColumn\n && input.minimap.scale === stableMinimapLayoutInput.minimap.scale\n && input.verticalScrollbarWidth === stableMinimapLayoutInput.verticalScrollbarWidth\n // && input.viewLineCount === lastMinimapLayoutInput.viewLineCount !!! INTENTIONAL OMITTED\n // && input.remainingWidth === lastMinimapLayoutInput.remainingWidth !!! INTENTIONAL OMITTED\n && input.isViewportWrapping === stableMinimapLayoutInput.isViewportWrapping);\n const lineHeight = input.lineHeight;\n const typicalHalfwidthCharacterWidth = input.typicalHalfwidthCharacterWidth;\n const scrollBeyondLastLine = input.scrollBeyondLastLine;\n const minimapRenderCharacters = input.minimap.renderCharacters;\n let minimapScale = (pixelRatio >= 2 ? Math.round(input.minimap.scale * 2) : input.minimap.scale);\n const minimapMaxColumn = input.minimap.maxColumn;\n const minimapSize = input.minimap.size;\n const minimapSide = input.minimap.side;\n const verticalScrollbarWidth = input.verticalScrollbarWidth;\n const viewLineCount = input.viewLineCount;\n const remainingWidth = input.remainingWidth;\n const isViewportWrapping = input.isViewportWrapping;\n const baseCharHeight = minimapRenderCharacters ? 2 : 3;\n let minimapCanvasInnerHeight = Math.floor(pixelRatio * outerHeight);\n const minimapCanvasOuterHeight = minimapCanvasInnerHeight / pixelRatio;\n let minimapHeightIsEditorHeight = false;\n let minimapIsSampling = false;\n let minimapLineHeight = baseCharHeight * minimapScale;\n let minimapCharWidth = minimapScale / pixelRatio;\n let minimapWidthMultiplier = 1;\n if (minimapSize === 'fill' || minimapSize === 'fit') {\n const { typicalViewportLineCount, extraLinesBeforeFirstLine, extraLinesBeyondLastLine, desiredRatio, minimapLineCount } = EditorLayoutInfoComputer.computeContainedMinimapLineCount({\n viewLineCount: viewLineCount,\n scrollBeyondLastLine: scrollBeyondLastLine,\n paddingTop: input.paddingTop,\n paddingBottom: input.paddingBottom,\n height: outerHeight,\n lineHeight: lineHeight,\n pixelRatio: pixelRatio\n });\n // ratio is intentionally not part of the layout to avoid the layout changing all the time\n // when doing sampling\n const ratio = viewLineCount / minimapLineCount;\n if (ratio > 1) {\n minimapHeightIsEditorHeight = true;\n minimapIsSampling = true;\n minimapScale = 1;\n minimapLineHeight = 1;\n minimapCharWidth = minimapScale / pixelRatio;\n }\n else {\n let fitBecomesFill = false;\n let maxMinimapScale = minimapScale + 1;\n if (minimapSize === 'fit') {\n const effectiveMinimapHeight = Math.ceil((extraLinesBeforeFirstLine + viewLineCount + extraLinesBeyondLastLine) * minimapLineHeight);\n if (isViewportWrapping && couldUseMemory && remainingWidth <= memory.stableFitRemainingWidth) {\n // There is a loop when using `fit` and viewport wrapping:\n // - view line count impacts minimap layout\n // - minimap layout impacts viewport width\n // - viewport width impacts view line count\n // To break the loop, once we go to a smaller minimap scale, we try to stick with it.\n fitBecomesFill = true;\n maxMinimapScale = memory.stableFitMaxMinimapScale;\n }\n else {\n fitBecomesFill = (effectiveMinimapHeight > minimapCanvasInnerHeight);\n }\n }\n if (minimapSize === 'fill' || fitBecomesFill) {\n minimapHeightIsEditorHeight = true;\n const configuredMinimapScale = minimapScale;\n minimapLineHeight = Math.min(lineHeight * pixelRatio, Math.max(1, Math.floor(1 / desiredRatio)));\n if (isViewportWrapping && couldUseMemory && remainingWidth <= memory.stableFitRemainingWidth) {\n // There is a loop when using `fill` and viewport wrapping:\n // - view line count impacts minimap layout\n // - minimap layout impacts viewport width\n // - viewport width impacts view line count\n // To break the loop, once we go to a smaller minimap scale, we try to stick with it.\n maxMinimapScale = memory.stableFitMaxMinimapScale;\n }\n minimapScale = Math.min(maxMinimapScale, Math.max(1, Math.floor(minimapLineHeight / baseCharHeight)));\n if (minimapScale > configuredMinimapScale) {\n minimapWidthMultiplier = Math.min(2, minimapScale / configuredMinimapScale);\n }\n minimapCharWidth = minimapScale / pixelRatio / minimapWidthMultiplier;\n minimapCanvasInnerHeight = Math.ceil((Math.max(typicalViewportLineCount, extraLinesBeforeFirstLine + viewLineCount + extraLinesBeyondLastLine)) * minimapLineHeight);\n if (isViewportWrapping) {\n // remember for next time\n memory.stableMinimapLayoutInput = input;\n memory.stableFitRemainingWidth = remainingWidth;\n memory.stableFitMaxMinimapScale = minimapScale;\n }\n else {\n memory.stableMinimapLayoutInput = null;\n memory.stableFitRemainingWidth = 0;\n }\n }\n }\n }\n // Given:\n // (leaving 2px for the cursor to have space after the last character)\n // viewportColumn = (contentWidth - verticalScrollbarWidth - 2) / typicalHalfwidthCharacterWidth\n // minimapWidth = viewportColumn * minimapCharWidth\n // contentWidth = remainingWidth - minimapWidth\n // What are good values for contentWidth and minimapWidth ?\n // minimapWidth = ((contentWidth - verticalScrollbarWidth - 2) / typicalHalfwidthCharacterWidth) * minimapCharWidth\n // typicalHalfwidthCharacterWidth * minimapWidth = (contentWidth - verticalScrollbarWidth - 2) * minimapCharWidth\n // typicalHalfwidthCharacterWidth * minimapWidth = (remainingWidth - minimapWidth - verticalScrollbarWidth - 2) * minimapCharWidth\n // (typicalHalfwidthCharacterWidth + minimapCharWidth) * minimapWidth = (remainingWidth - verticalScrollbarWidth - 2) * minimapCharWidth\n // minimapWidth = ((remainingWidth - verticalScrollbarWidth - 2) * minimapCharWidth) / (typicalHalfwidthCharacterWidth + minimapCharWidth)\n const minimapMaxWidth = Math.floor(minimapMaxColumn * minimapCharWidth);\n const minimapWidth = Math.min(minimapMaxWidth, Math.max(0, Math.floor(((remainingWidth - verticalScrollbarWidth - 2) * minimapCharWidth) / (typicalHalfwidthCharacterWidth + minimapCharWidth))) + MINIMAP_GUTTER_WIDTH);\n let minimapCanvasInnerWidth = Math.floor(pixelRatio * minimapWidth);\n const minimapCanvasOuterWidth = minimapCanvasInnerWidth / pixelRatio;\n minimapCanvasInnerWidth = Math.floor(minimapCanvasInnerWidth * minimapWidthMultiplier);\n const renderMinimap = (minimapRenderCharacters ? 1 /* RenderMinimap.Text */ : 2 /* RenderMinimap.Blocks */);\n const minimapLeft = (minimapSide === 'left' ? 0 : (outerWidth - minimapWidth - verticalScrollbarWidth));\n return {\n renderMinimap,\n minimapLeft,\n minimapWidth,\n minimapHeightIsEditorHeight,\n minimapIsSampling,\n minimapScale,\n minimapLineHeight,\n minimapCanvasInnerWidth,\n minimapCanvasInnerHeight,\n minimapCanvasOuterWidth,\n minimapCanvasOuterHeight,\n };\n }\n static computeLayout(options, env) {\n const outerWidth = env.outerWidth | 0;\n const outerHeight = env.outerHeight | 0;\n const lineHeight = env.lineHeight | 0;\n const lineNumbersDigitCount = env.lineNumbersDigitCount | 0;\n const typicalHalfwidthCharacterWidth = env.typicalHalfwidthCharacterWidth;\n const maxDigitWidth = env.maxDigitWidth;\n const pixelRatio = env.pixelRatio;\n const viewLineCount = env.viewLineCount;\n const wordWrapOverride2 = options.get(136 /* EditorOption.wordWrapOverride2 */);\n const wordWrapOverride1 = (wordWrapOverride2 === 'inherit' ? options.get(135 /* EditorOption.wordWrapOverride1 */) : wordWrapOverride2);\n const wordWrap = (wordWrapOverride1 === 'inherit' ? options.get(131 /* EditorOption.wordWrap */) : wordWrapOverride1);\n const wordWrapColumn = options.get(134 /* EditorOption.wordWrapColumn */);\n const isDominatedByLongLines = env.isDominatedByLongLines;\n const showGlyphMargin = options.get(57 /* EditorOption.glyphMargin */);\n const showLineNumbers = (options.get(68 /* EditorOption.lineNumbers */).renderType !== 0 /* RenderLineNumbersType.Off */);\n const lineNumbersMinChars = options.get(69 /* EditorOption.lineNumbersMinChars */);\n const scrollBeyondLastLine = options.get(105 /* EditorOption.scrollBeyondLastLine */);\n const padding = options.get(84 /* EditorOption.padding */);\n const minimap = options.get(73 /* EditorOption.minimap */);\n const scrollbar = options.get(103 /* EditorOption.scrollbar */);\n const verticalScrollbarWidth = scrollbar.verticalScrollbarSize;\n const verticalScrollbarHasArrows = scrollbar.verticalHasArrows;\n const scrollbarArrowSize = scrollbar.arrowSize;\n const horizontalScrollbarHeight = scrollbar.horizontalScrollbarSize;\n const folding = options.get(43 /* EditorOption.folding */);\n const showFoldingDecoration = options.get(110 /* EditorOption.showFoldingControls */) !== 'never';\n let lineDecorationsWidth = options.get(66 /* EditorOption.lineDecorationsWidth */);\n if (folding && showFoldingDecoration) {\n lineDecorationsWidth += 16;\n }\n let lineNumbersWidth = 0;\n if (showLineNumbers) {\n const digitCount = Math.max(lineNumbersDigitCount, lineNumbersMinChars);\n lineNumbersWidth = Math.round(digitCount * maxDigitWidth);\n }\n let glyphMarginWidth = 0;\n if (showGlyphMargin) {\n glyphMarginWidth = lineHeight * env.glyphMarginDecorationLaneCount;\n }\n let glyphMarginLeft = 0;\n let lineNumbersLeft = glyphMarginLeft + glyphMarginWidth;\n let decorationsLeft = lineNumbersLeft + lineNumbersWidth;\n let contentLeft = decorationsLeft + lineDecorationsWidth;\n const remainingWidth = outerWidth - glyphMarginWidth - lineNumbersWidth - lineDecorationsWidth;\n let isWordWrapMinified = false;\n let isViewportWrapping = false;\n let wrappingColumn = -1;\n if (wordWrapOverride1 === 'inherit' && isDominatedByLongLines) {\n // Force viewport width wrapping if model is dominated by long lines\n isWordWrapMinified = true;\n isViewportWrapping = true;\n }\n else if (wordWrap === 'on' || wordWrap === 'bounded') {\n isViewportWrapping = true;\n }\n else if (wordWrap === 'wordWrapColumn') {\n wrappingColumn = wordWrapColumn;\n }\n const minimapLayout = EditorLayoutInfoComputer._computeMinimapLayout({\n outerWidth: outerWidth,\n outerHeight: outerHeight,\n lineHeight: lineHeight,\n typicalHalfwidthCharacterWidth: typicalHalfwidthCharacterWidth,\n pixelRatio: pixelRatio,\n scrollBeyondLastLine: scrollBeyondLastLine,\n paddingTop: padding.top,\n paddingBottom: padding.bottom,\n minimap: minimap,\n verticalScrollbarWidth: verticalScrollbarWidth,\n viewLineCount: viewLineCount,\n remainingWidth: remainingWidth,\n isViewportWrapping: isViewportWrapping,\n }, env.memory || new ComputeOptionsMemory());\n if (minimapLayout.renderMinimap !== 0 /* RenderMinimap.None */ && minimapLayout.minimapLeft === 0) {\n // the minimap is rendered to the left, so move everything to the right\n glyphMarginLeft += minimapLayout.minimapWidth;\n lineNumbersLeft += minimapLayout.minimapWidth;\n decorationsLeft += minimapLayout.minimapWidth;\n contentLeft += minimapLayout.minimapWidth;\n }\n const contentWidth = remainingWidth - minimapLayout.minimapWidth;\n // (leaving 2px for the cursor to have space after the last character)\n const viewportColumn = Math.max(1, Math.floor((contentWidth - verticalScrollbarWidth - 2) / typicalHalfwidthCharacterWidth));\n const verticalArrowSize = (verticalScrollbarHasArrows ? scrollbarArrowSize : 0);\n if (isViewportWrapping) {\n // compute the actual wrappingColumn\n wrappingColumn = Math.max(1, viewportColumn);\n if (wordWrap === 'bounded') {\n wrappingColumn = Math.min(wrappingColumn, wordWrapColumn);\n }\n }\n return {\n width: outerWidth,\n height: outerHeight,\n glyphMarginLeft: glyphMarginLeft,\n glyphMarginWidth: glyphMarginWidth,\n glyphMarginDecorationLaneCount: env.glyphMarginDecorationLaneCount,\n lineNumbersLeft: lineNumbersLeft,\n lineNumbersWidth: lineNumbersWidth,\n decorationsLeft: decorationsLeft,\n decorationsWidth: lineDecorationsWidth,\n contentLeft: contentLeft,\n contentWidth: contentWidth,\n minimap: minimapLayout,\n viewportColumn: viewportColumn,\n isWordWrapMinified: isWordWrapMinified,\n isViewportWrapping: isViewportWrapping,\n wrappingColumn: wrappingColumn,\n verticalScrollbarWidth: verticalScrollbarWidth,\n horizontalScrollbarHeight: horizontalScrollbarHeight,\n overviewRuler: {\n top: verticalArrowSize,\n width: verticalScrollbarWidth,\n height: (outerHeight - 2 * verticalArrowSize),\n right: 0\n }\n };\n }\n}\n//#endregion\n//#region WrappingStrategy\nclass WrappingStrategy extends BaseEditorOption {\n constructor() {\n super(138 /* EditorOption.wrappingStrategy */, 'wrappingStrategy', 'simple', {\n 'editor.wrappingStrategy': {\n enumDescriptions: [\n _nls_js__WEBPACK_IMPORTED_MODULE_5__.localize('wrappingStrategy.simple', \"Assumes that all characters are of the same width. This is a fast algorithm that works correctly for monospace fonts and certain scripts (like Latin characters) where glyphs are of equal width.\"),\n _nls_js__WEBPACK_IMPORTED_MODULE_5__.localize('wrappingStrategy.advanced', \"Delegates wrapping points computation to the browser. This is a slow algorithm, that might cause freezes for large files, but it works correctly in all cases.\")\n ],\n type: 'string',\n enum: ['simple', 'advanced'],\n default: 'simple',\n description: _nls_js__WEBPACK_IMPORTED_MODULE_5__.localize('wrappingStrategy', \"Controls the algorithm that computes wrapping points. Note that when in accessibility mode, advanced will be used for the best experience.\")\n }\n });\n }\n validate(input) {\n return stringSet(input, 'simple', ['simple', 'advanced']);\n }\n compute(env, options, value) {\n const accessibilitySupport = options.get(2 /* EditorOption.accessibilitySupport */);\n if (accessibilitySupport === 2 /* AccessibilitySupport.Enabled */) {\n // if we know for a fact that a screen reader is attached, we switch our strategy to advanced to\n // help that the editor's wrapping points match the textarea's wrapping points\n return 'advanced';\n }\n return value;\n }\n}\n//#endregion\n//#region lightbulb\nvar ShowLightbulbIconMode;\n(function (ShowLightbulbIconMode) {\n ShowLightbulbIconMode[\"Off\"] = \"off\";\n ShowLightbulbIconMode[\"OnCode\"] = \"onCode\";\n ShowLightbulbIconMode[\"On\"] = \"on\";\n})(ShowLightbulbIconMode || (ShowLightbulbIconMode = {}));\nclass EditorLightbulb extends BaseEditorOption {\n constructor() {\n const defaults = { enabled: ShowLightbulbIconMode.OnCode };\n super(65 /* EditorOption.lightbulb */, 'lightbulb', defaults, {\n 'editor.lightbulb.enabled': {\n type: 'string',\n tags: ['experimental'],\n enum: [ShowLightbulbIconMode.Off, ShowLightbulbIconMode.OnCode, ShowLightbulbIconMode.On],\n default: defaults.enabled,\n enumDescriptions: [\n _nls_js__WEBPACK_IMPORTED_MODULE_5__.localize('editor.lightbulb.enabled.off', 'Disable the code action menu.'),\n _nls_js__WEBPACK_IMPORTED_MODULE_5__.localize('editor.lightbulb.enabled.onCode', 'Show the code action menu when the cursor is on lines with code.'),\n _nls_js__WEBPACK_IMPORTED_MODULE_5__.localize('editor.lightbulb.enabled.on', 'Show the code action menu when the cursor is on lines with code or on empty lines.'),\n ],\n description: _nls_js__WEBPACK_IMPORTED_MODULE_5__.localize('enabled', \"Enables the Code Action lightbulb in the editor.\")\n }\n });\n }\n validate(_input) {\n if (!_input || typeof _input !== 'object') {\n return this.defaultValue;\n }\n const input = _input;\n return {\n enabled: stringSet(input.enabled, this.defaultValue.enabled, [ShowLightbulbIconMode.Off, ShowLightbulbIconMode.OnCode, ShowLightbulbIconMode.On])\n };\n }\n}\nclass EditorStickyScroll extends BaseEditorOption {\n constructor() {\n const defaults = { enabled: true, maxLineCount: 5, defaultModel: 'outlineModel', scrollWithEditor: true };\n super(115 /* EditorOption.stickyScroll */, 'stickyScroll', defaults, {\n 'editor.stickyScroll.enabled': {\n type: 'boolean',\n default: defaults.enabled,\n description: _nls_js__WEBPACK_IMPORTED_MODULE_5__.localize('editor.stickyScroll.enabled', \"Shows the nested current scopes during the scroll at the top of the editor.\"),\n tags: ['experimental']\n },\n 'editor.stickyScroll.maxLineCount': {\n type: 'number',\n default: defaults.maxLineCount,\n minimum: 1,\n maximum: 20,\n description: _nls_js__WEBPACK_IMPORTED_MODULE_5__.localize('editor.stickyScroll.maxLineCount', \"Defines the maximum number of sticky lines to show.\")\n },\n 'editor.stickyScroll.defaultModel': {\n type: 'string',\n enum: ['outlineModel', 'foldingProviderModel', 'indentationModel'],\n default: defaults.defaultModel,\n description: _nls_js__WEBPACK_IMPORTED_MODULE_5__.localize('editor.stickyScroll.defaultModel', \"Defines the model to use for determining which lines to stick. If the outline model does not exist, it will fall back on the folding provider model which falls back on the indentation model. This order is respected in all three cases.\")\n },\n 'editor.stickyScroll.scrollWithEditor': {\n type: 'boolean',\n default: defaults.scrollWithEditor,\n description: _nls_js__WEBPACK_IMPORTED_MODULE_5__.localize('editor.stickyScroll.scrollWithEditor', \"Enable scrolling of Sticky Scroll with the editor's horizontal scrollbar.\")\n },\n });\n }\n validate(_input) {\n if (!_input || typeof _input !== 'object') {\n return this.defaultValue;\n }\n const input = _input;\n return {\n enabled: boolean(input.enabled, this.defaultValue.enabled),\n maxLineCount: EditorIntOption.clampedInt(input.maxLineCount, this.defaultValue.maxLineCount, 1, 20),\n defaultModel: stringSet(input.defaultModel, this.defaultValue.defaultModel, ['outlineModel', 'foldingProviderModel', 'indentationModel']),\n scrollWithEditor: boolean(input.scrollWithEditor, this.defaultValue.scrollWithEditor)\n };\n }\n}\nclass EditorInlayHints extends BaseEditorOption {\n constructor() {\n const defaults = { enabled: 'on', fontSize: 0, fontFamily: '', padding: false };\n super(140 /* EditorOption.inlayHints */, 'inlayHints', defaults, {\n 'editor.inlayHints.enabled': {\n type: 'string',\n default: defaults.enabled,\n description: _nls_js__WEBPACK_IMPORTED_MODULE_5__.localize('inlayHints.enable', \"Enables the inlay hints in the editor.\"),\n enum: ['on', 'onUnlessPressed', 'offUnlessPressed', 'off'],\n markdownEnumDescriptions: [\n _nls_js__WEBPACK_IMPORTED_MODULE_5__.localize('editor.inlayHints.on', \"Inlay hints are enabled\"),\n _nls_js__WEBPACK_IMPORTED_MODULE_5__.localize('editor.inlayHints.onUnlessPressed', \"Inlay hints are showing by default and hide when holding {0}\", _base_common_platform_js__WEBPACK_IMPORTED_MODULE_2__.isMacintosh ? `Ctrl+Option` : `Ctrl+Alt`),\n _nls_js__WEBPACK_IMPORTED_MODULE_5__.localize('editor.inlayHints.offUnlessPressed', \"Inlay hints are hidden by default and show when holding {0}\", _base_common_platform_js__WEBPACK_IMPORTED_MODULE_2__.isMacintosh ? `Ctrl+Option` : `Ctrl+Alt`),\n _nls_js__WEBPACK_IMPORTED_MODULE_5__.localize('editor.inlayHints.off', \"Inlay hints are disabled\"),\n ],\n },\n 'editor.inlayHints.fontSize': {\n type: 'number',\n default: defaults.fontSize,\n markdownDescription: _nls_js__WEBPACK_IMPORTED_MODULE_5__.localize('inlayHints.fontSize', \"Controls font size of inlay hints in the editor. As default the {0} is used when the configured value is less than {1} or greater than the editor font size.\", '`#editor.fontSize#`', '`5`')\n },\n 'editor.inlayHints.fontFamily': {\n type: 'string',\n default: defaults.fontFamily,\n markdownDescription: _nls_js__WEBPACK_IMPORTED_MODULE_5__.localize('inlayHints.fontFamily', \"Controls font family of inlay hints in the editor. When set to empty, the {0} is used.\", '`#editor.fontFamily#`')\n },\n 'editor.inlayHints.padding': {\n type: 'boolean',\n default: defaults.padding,\n description: _nls_js__WEBPACK_IMPORTED_MODULE_5__.localize('inlayHints.padding', \"Enables the padding around the inlay hints in the editor.\")\n }\n });\n }\n validate(_input) {\n if (!_input || typeof _input !== 'object') {\n return this.defaultValue;\n }\n const input = _input;\n if (typeof input.enabled === 'boolean') {\n input.enabled = input.enabled ? 'on' : 'off';\n }\n return {\n enabled: stringSet(input.enabled, this.defaultValue.enabled, ['on', 'off', 'offUnlessPressed', 'onUnlessPressed']),\n fontSize: EditorIntOption.clampedInt(input.fontSize, this.defaultValue.fontSize, 0, 100),\n fontFamily: EditorStringOption.string(input.fontFamily, this.defaultValue.fontFamily),\n padding: boolean(input.padding, this.defaultValue.padding)\n };\n }\n}\n//#endregion\n//#region lineDecorationsWidth\nclass EditorLineDecorationsWidth extends BaseEditorOption {\n constructor() {\n super(66 /* EditorOption.lineDecorationsWidth */, 'lineDecorationsWidth', 10);\n }\n validate(input) {\n if (typeof input === 'string' && /^\\d+(\\.\\d+)?ch$/.test(input)) {\n const multiple = parseFloat(input.substring(0, input.length - 2));\n return -multiple; // negative numbers signal a multiple\n }\n else {\n return EditorIntOption.clampedInt(input, this.defaultValue, 0, 1000);\n }\n }\n compute(env, options, value) {\n if (value < 0) {\n // negative numbers signal a multiple\n return EditorIntOption.clampedInt(-value * env.fontInfo.typicalHalfwidthCharacterWidth, this.defaultValue, 0, 1000);\n }\n else {\n return value;\n }\n }\n}\n//#endregion\n//#region lineHeight\nclass EditorLineHeight extends EditorFloatOption {\n constructor() {\n super(67 /* EditorOption.lineHeight */, 'lineHeight', EDITOR_FONT_DEFAULTS.lineHeight, x => EditorFloatOption.clamp(x, 0, 150), { markdownDescription: _nls_js__WEBPACK_IMPORTED_MODULE_5__.localize('lineHeight', \"Controls the line height. \\n - Use 0 to automatically compute the line height from the font size.\\n - Values between 0 and 8 will be used as a multiplier with the font size.\\n - Values greater than or equal to 8 will be used as effective values.\") });\n }\n compute(env, options, value) {\n // The lineHeight is computed from the fontSize if it is 0.\n // Moreover, the final lineHeight respects the editor zoom level.\n // So take the result from env.fontInfo\n return env.fontInfo.lineHeight;\n }\n}\nclass EditorMinimap extends BaseEditorOption {\n constructor() {\n const defaults = {\n enabled: true,\n size: 'proportional',\n side: 'right',\n showSlider: 'mouseover',\n autohide: false,\n renderCharacters: true,\n maxColumn: 120,\n scale: 1,\n };\n super(73 /* EditorOption.minimap */, 'minimap', defaults, {\n 'editor.minimap.enabled': {\n type: 'boolean',\n default: defaults.enabled,\n description: _nls_js__WEBPACK_IMPORTED_MODULE_5__.localize('minimap.enabled', \"Controls whether the minimap is shown.\")\n },\n 'editor.minimap.autohide': {\n type: 'boolean',\n default: defaults.autohide,\n description: _nls_js__WEBPACK_IMPORTED_MODULE_5__.localize('minimap.autohide', \"Controls whether the minimap is hidden automatically.\")\n },\n 'editor.minimap.size': {\n type: 'string',\n enum: ['proportional', 'fill', 'fit'],\n enumDescriptions: [\n _nls_js__WEBPACK_IMPORTED_MODULE_5__.localize('minimap.size.proportional', \"The minimap has the same size as the editor contents (and might scroll).\"),\n _nls_js__WEBPACK_IMPORTED_MODULE_5__.localize('minimap.size.fill', \"The minimap will stretch or shrink as necessary to fill the height of the editor (no scrolling).\"),\n _nls_js__WEBPACK_IMPORTED_MODULE_5__.localize('minimap.size.fit', \"The minimap will shrink as necessary to never be larger than the editor (no scrolling).\"),\n ],\n default: defaults.size,\n description: _nls_js__WEBPACK_IMPORTED_MODULE_5__.localize('minimap.size', \"Controls the size of the minimap.\")\n },\n 'editor.minimap.side': {\n type: 'string',\n enum: ['left', 'right'],\n default: defaults.side,\n description: _nls_js__WEBPACK_IMPORTED_MODULE_5__.localize('minimap.side', \"Controls the side where to render the minimap.\")\n },\n 'editor.minimap.showSlider': {\n type: 'string',\n enum: ['always', 'mouseover'],\n default: defaults.showSlider,\n description: _nls_js__WEBPACK_IMPORTED_MODULE_5__.localize('minimap.showSlider', \"Controls when the minimap slider is shown.\")\n },\n 'editor.minimap.scale': {\n type: 'number',\n default: defaults.scale,\n minimum: 1,\n maximum: 3,\n enum: [1, 2, 3],\n description: _nls_js__WEBPACK_IMPORTED_MODULE_5__.localize('minimap.scale', \"Scale of content drawn in the minimap: 1, 2 or 3.\")\n },\n 'editor.minimap.renderCharacters': {\n type: 'boolean',\n default: defaults.renderCharacters,\n description: _nls_js__WEBPACK_IMPORTED_MODULE_5__.localize('minimap.renderCharacters', \"Render the actual characters on a line as opposed to color blocks.\")\n },\n 'editor.minimap.maxColumn': {\n type: 'number',\n default: defaults.maxColumn,\n description: _nls_js__WEBPACK_IMPORTED_MODULE_5__.localize('minimap.maxColumn', \"Limit the width of the minimap to render at most a certain number of columns.\")\n }\n });\n }\n validate(_input) {\n if (!_input || typeof _input !== 'object') {\n return this.defaultValue;\n }\n const input = _input;\n return {\n enabled: boolean(input.enabled, this.defaultValue.enabled),\n autohide: boolean(input.autohide, this.defaultValue.autohide),\n size: stringSet(input.size, this.defaultValue.size, ['proportional', 'fill', 'fit']),\n side: stringSet(input.side, this.defaultValue.side, ['right', 'left']),\n showSlider: stringSet(input.showSlider, this.defaultValue.showSlider, ['always', 'mouseover']),\n renderCharacters: boolean(input.renderCharacters, this.defaultValue.renderCharacters),\n scale: EditorIntOption.clampedInt(input.scale, 1, 1, 3),\n maxColumn: EditorIntOption.clampedInt(input.maxColumn, this.defaultValue.maxColumn, 1, 10000),\n };\n }\n}\n//#endregion\n//#region multiCursorModifier\nfunction _multiCursorModifierFromString(multiCursorModifier) {\n if (multiCursorModifier === 'ctrlCmd') {\n return (_base_common_platform_js__WEBPACK_IMPORTED_MODULE_2__.isMacintosh ? 'metaKey' : 'ctrlKey');\n }\n return 'altKey';\n}\nclass EditorPadding extends BaseEditorOption {\n constructor() {\n super(84 /* EditorOption.padding */, 'padding', { top: 0, bottom: 0 }, {\n 'editor.padding.top': {\n type: 'number',\n default: 0,\n minimum: 0,\n maximum: 1000,\n description: _nls_js__WEBPACK_IMPORTED_MODULE_5__.localize('padding.top', \"Controls the amount of space between the top edge of the editor and the first line.\")\n },\n 'editor.padding.bottom': {\n type: 'number',\n default: 0,\n minimum: 0,\n maximum: 1000,\n description: _nls_js__WEBPACK_IMPORTED_MODULE_5__.localize('padding.bottom', \"Controls the amount of space between the bottom edge of the editor and the last line.\")\n }\n });\n }\n validate(_input) {\n if (!_input || typeof _input !== 'object') {\n return this.defaultValue;\n }\n const input = _input;\n return {\n top: EditorIntOption.clampedInt(input.top, 0, 0, 1000),\n bottom: EditorIntOption.clampedInt(input.bottom, 0, 0, 1000)\n };\n }\n}\nclass EditorParameterHints extends BaseEditorOption {\n constructor() {\n const defaults = {\n enabled: true,\n cycle: true\n };\n super(86 /* EditorOption.parameterHints */, 'parameterHints', defaults, {\n 'editor.parameterHints.enabled': {\n type: 'boolean',\n default: defaults.enabled,\n description: _nls_js__WEBPACK_IMPORTED_MODULE_5__.localize('parameterHints.enabled', \"Enables a pop-up that shows parameter documentation and type information as you type.\")\n },\n 'editor.parameterHints.cycle': {\n type: 'boolean',\n default: defaults.cycle,\n description: _nls_js__WEBPACK_IMPORTED_MODULE_5__.localize('parameterHints.cycle', \"Controls whether the parameter hints menu cycles or closes when reaching the end of the list.\")\n },\n });\n }\n validate(_input) {\n if (!_input || typeof _input !== 'object') {\n return this.defaultValue;\n }\n const input = _input;\n return {\n enabled: boolean(input.enabled, this.defaultValue.enabled),\n cycle: boolean(input.cycle, this.defaultValue.cycle)\n };\n }\n}\n//#endregion\n//#region pixelRatio\nclass EditorPixelRatio extends ComputedEditorOption {\n constructor() {\n super(142 /* EditorOption.pixelRatio */);\n }\n compute(env, options, _) {\n return env.pixelRatio;\n }\n}\nclass EditorQuickSuggestions extends BaseEditorOption {\n constructor() {\n const defaults = {\n other: 'on',\n comments: 'off',\n strings: 'off'\n };\n const types = [\n { type: 'boolean' },\n {\n type: 'string',\n enum: ['on', 'inline', 'off'],\n enumDescriptions: [_nls_js__WEBPACK_IMPORTED_MODULE_5__.localize('on', \"Quick suggestions show inside the suggest widget\"), _nls_js__WEBPACK_IMPORTED_MODULE_5__.localize('inline', \"Quick suggestions show as ghost text\"), _nls_js__WEBPACK_IMPORTED_MODULE_5__.localize('off', \"Quick suggestions are disabled\")]\n }\n ];\n super(89 /* EditorOption.quickSuggestions */, 'quickSuggestions', defaults, {\n type: 'object',\n additionalProperties: false,\n properties: {\n strings: {\n anyOf: types,\n default: defaults.strings,\n description: _nls_js__WEBPACK_IMPORTED_MODULE_5__.localize('quickSuggestions.strings', \"Enable quick suggestions inside strings.\")\n },\n comments: {\n anyOf: types,\n default: defaults.comments,\n description: _nls_js__WEBPACK_IMPORTED_MODULE_5__.localize('quickSuggestions.comments', \"Enable quick suggestions inside comments.\")\n },\n other: {\n anyOf: types,\n default: defaults.other,\n description: _nls_js__WEBPACK_IMPORTED_MODULE_5__.localize('quickSuggestions.other', \"Enable quick suggestions outside of strings and comments.\")\n },\n },\n default: defaults,\n markdownDescription: _nls_js__WEBPACK_IMPORTED_MODULE_5__.localize('quickSuggestions', \"Controls whether suggestions should automatically show up while typing. This can be controlled for typing in comments, strings, and other code. Quick suggestion can be configured to show as ghost text or with the suggest widget. Also be aware of the '{0}'-setting which controls if suggestions are triggered by special characters.\", `#editor.suggestOnTriggerCharacters#`)\n });\n this.defaultValue = defaults;\n }\n validate(input) {\n if (typeof input === 'boolean') {\n // boolean -> all on/off\n const value = input ? 'on' : 'off';\n return { comments: value, strings: value, other: value };\n }\n if (!input || typeof input !== 'object') {\n // invalid object\n return this.defaultValue;\n }\n const { other, comments, strings } = input;\n const allowedValues = ['on', 'inline', 'off'];\n let validatedOther;\n let validatedComments;\n let validatedStrings;\n if (typeof other === 'boolean') {\n validatedOther = other ? 'on' : 'off';\n }\n else {\n validatedOther = stringSet(other, this.defaultValue.other, allowedValues);\n }\n if (typeof comments === 'boolean') {\n validatedComments = comments ? 'on' : 'off';\n }\n else {\n validatedComments = stringSet(comments, this.defaultValue.comments, allowedValues);\n }\n if (typeof strings === 'boolean') {\n validatedStrings = strings ? 'on' : 'off';\n }\n else {\n validatedStrings = stringSet(strings, this.defaultValue.strings, allowedValues);\n }\n return {\n other: validatedOther,\n comments: validatedComments,\n strings: validatedStrings\n };\n }\n}\nclass EditorRenderLineNumbersOption extends BaseEditorOption {\n constructor() {\n super(68 /* EditorOption.lineNumbers */, 'lineNumbers', { renderType: 1 /* RenderLineNumbersType.On */, renderFn: null }, {\n type: 'string',\n enum: ['off', 'on', 'relative', 'interval'],\n enumDescriptions: [\n _nls_js__WEBPACK_IMPORTED_MODULE_5__.localize('lineNumbers.off', \"Line numbers are not rendered.\"),\n _nls_js__WEBPACK_IMPORTED_MODULE_5__.localize('lineNumbers.on', \"Line numbers are rendered as absolute number.\"),\n _nls_js__WEBPACK_IMPORTED_MODULE_5__.localize('lineNumbers.relative', \"Line numbers are rendered as distance in lines to cursor position.\"),\n _nls_js__WEBPACK_IMPORTED_MODULE_5__.localize('lineNumbers.interval', \"Line numbers are rendered every 10 lines.\")\n ],\n default: 'on',\n description: _nls_js__WEBPACK_IMPORTED_MODULE_5__.localize('lineNumbers', \"Controls the display of line numbers.\")\n });\n }\n validate(lineNumbers) {\n let renderType = this.defaultValue.renderType;\n let renderFn = this.defaultValue.renderFn;\n if (typeof lineNumbers !== 'undefined') {\n if (typeof lineNumbers === 'function') {\n renderType = 4 /* RenderLineNumbersType.Custom */;\n renderFn = lineNumbers;\n }\n else if (lineNumbers === 'interval') {\n renderType = 3 /* RenderLineNumbersType.Interval */;\n }\n else if (lineNumbers === 'relative') {\n renderType = 2 /* RenderLineNumbersType.Relative */;\n }\n else if (lineNumbers === 'on') {\n renderType = 1 /* RenderLineNumbersType.On */;\n }\n else {\n renderType = 0 /* RenderLineNumbersType.Off */;\n }\n }\n return {\n renderType,\n renderFn\n };\n }\n}\n//#endregion\n//#region renderValidationDecorations\n/**\n * @internal\n */\nfunction filterValidationDecorations(options) {\n const renderValidationDecorations = options.get(98 /* EditorOption.renderValidationDecorations */);\n if (renderValidationDecorations === 'editable') {\n return options.get(91 /* EditorOption.readOnly */);\n }\n return renderValidationDecorations === 'on' ? false : true;\n}\nclass EditorRulers extends BaseEditorOption {\n constructor() {\n const defaults = [];\n const columnSchema = { type: 'number', description: _nls_js__WEBPACK_IMPORTED_MODULE_5__.localize('rulers.size', \"Number of monospace characters at which this editor ruler will render.\") };\n super(102 /* EditorOption.rulers */, 'rulers', defaults, {\n type: 'array',\n items: {\n anyOf: [\n columnSchema,\n {\n type: [\n 'object'\n ],\n properties: {\n column: columnSchema,\n color: {\n type: 'string',\n description: _nls_js__WEBPACK_IMPORTED_MODULE_5__.localize('rulers.color', \"Color of this editor ruler.\"),\n format: 'color-hex'\n }\n }\n }\n ]\n },\n default: defaults,\n description: _nls_js__WEBPACK_IMPORTED_MODULE_5__.localize('rulers', \"Render vertical rulers after a certain number of monospace characters. Use multiple values for multiple rulers. No rulers are drawn if array is empty.\")\n });\n }\n validate(input) {\n if (Array.isArray(input)) {\n const rulers = [];\n for (const _element of input) {\n if (typeof _element === 'number') {\n rulers.push({\n column: EditorIntOption.clampedInt(_element, 0, 0, 10000),\n color: null\n });\n }\n else if (_element && typeof _element === 'object') {\n const element = _element;\n rulers.push({\n column: EditorIntOption.clampedInt(element.column, 0, 0, 10000),\n color: element.color\n });\n }\n }\n rulers.sort((a, b) => a.column - b.column);\n return rulers;\n }\n return this.defaultValue;\n }\n}\n//#endregion\n//#region readonly\n/**\n * Configuration options for readonly message\n */\nclass ReadonlyMessage extends BaseEditorOption {\n constructor() {\n const defaults = undefined;\n super(92 /* EditorOption.readOnlyMessage */, 'readOnlyMessage', defaults);\n }\n validate(_input) {\n if (!_input || typeof _input !== 'object') {\n return this.defaultValue;\n }\n return _input;\n }\n}\nfunction _scrollbarVisibilityFromString(visibility, defaultValue) {\n if (typeof visibility !== 'string') {\n return defaultValue;\n }\n switch (visibility) {\n case 'hidden': return 2 /* ScrollbarVisibility.Hidden */;\n case 'visible': return 3 /* ScrollbarVisibility.Visible */;\n default: return 1 /* ScrollbarVisibility.Auto */;\n }\n}\nclass EditorScrollbar extends BaseEditorOption {\n constructor() {\n const defaults = {\n vertical: 1 /* ScrollbarVisibility.Auto */,\n horizontal: 1 /* ScrollbarVisibility.Auto */,\n arrowSize: 11,\n useShadows: true,\n verticalHasArrows: false,\n horizontalHasArrows: false,\n horizontalScrollbarSize: 12,\n horizontalSliderSize: 12,\n verticalScrollbarSize: 14,\n verticalSliderSize: 14,\n handleMouseWheel: true,\n alwaysConsumeMouseWheel: true,\n scrollByPage: false,\n ignoreHorizontalScrollbarInContentHeight: false,\n };\n super(103 /* EditorOption.scrollbar */, 'scrollbar', defaults, {\n 'editor.scrollbar.vertical': {\n type: 'string',\n enum: ['auto', 'visible', 'hidden'],\n enumDescriptions: [\n _nls_js__WEBPACK_IMPORTED_MODULE_5__.localize('scrollbar.vertical.auto', \"The vertical scrollbar will be visible only when necessary.\"),\n _nls_js__WEBPACK_IMPORTED_MODULE_5__.localize('scrollbar.vertical.visible', \"The vertical scrollbar will always be visible.\"),\n _nls_js__WEBPACK_IMPORTED_MODULE_5__.localize('scrollbar.vertical.fit', \"The vertical scrollbar will always be hidden.\"),\n ],\n default: 'auto',\n description: _nls_js__WEBPACK_IMPORTED_MODULE_5__.localize('scrollbar.vertical', \"Controls the visibility of the vertical scrollbar.\")\n },\n 'editor.scrollbar.horizontal': {\n type: 'string',\n enum: ['auto', 'visible', 'hidden'],\n enumDescriptions: [\n _nls_js__WEBPACK_IMPORTED_MODULE_5__.localize('scrollbar.horizontal.auto', \"The horizontal scrollbar will be visible only when necessary.\"),\n _nls_js__WEBPACK_IMPORTED_MODULE_5__.localize('scrollbar.horizontal.visible', \"The horizontal scrollbar will always be visible.\"),\n _nls_js__WEBPACK_IMPORTED_MODULE_5__.localize('scrollbar.horizontal.fit', \"The horizontal scrollbar will always be hidden.\"),\n ],\n default: 'auto',\n description: _nls_js__WEBPACK_IMPORTED_MODULE_5__.localize('scrollbar.horizontal', \"Controls the visibility of the horizontal scrollbar.\")\n },\n 'editor.scrollbar.verticalScrollbarSize': {\n type: 'number',\n default: defaults.verticalScrollbarSize,\n description: _nls_js__WEBPACK_IMPORTED_MODULE_5__.localize('scrollbar.verticalScrollbarSize', \"The width of the vertical scrollbar.\")\n },\n 'editor.scrollbar.horizontalScrollbarSize': {\n type: 'number',\n default: defaults.horizontalScrollbarSize,\n description: _nls_js__WEBPACK_IMPORTED_MODULE_5__.localize('scrollbar.horizontalScrollbarSize', \"The height of the horizontal scrollbar.\")\n },\n 'editor.scrollbar.scrollByPage': {\n type: 'boolean',\n default: defaults.scrollByPage,\n description: _nls_js__WEBPACK_IMPORTED_MODULE_5__.localize('scrollbar.scrollByPage', \"Controls whether clicks scroll by page or jump to click position.\")\n },\n 'editor.scrollbar.ignoreHorizontalScrollbarInContentHeight': {\n type: 'boolean',\n default: defaults.ignoreHorizontalScrollbarInContentHeight,\n description: _nls_js__WEBPACK_IMPORTED_MODULE_5__.localize('scrollbar.ignoreHorizontalScrollbarInContentHeight', \"When set, the horizontal scrollbar will not increase the size of the editor's content.\")\n }\n });\n }\n validate(_input) {\n if (!_input || typeof _input !== 'object') {\n return this.defaultValue;\n }\n const input = _input;\n const horizontalScrollbarSize = EditorIntOption.clampedInt(input.horizontalScrollbarSize, this.defaultValue.horizontalScrollbarSize, 0, 1000);\n const verticalScrollbarSize = EditorIntOption.clampedInt(input.verticalScrollbarSize, this.defaultValue.verticalScrollbarSize, 0, 1000);\n return {\n arrowSize: EditorIntOption.clampedInt(input.arrowSize, this.defaultValue.arrowSize, 0, 1000),\n vertical: _scrollbarVisibilityFromString(input.vertical, this.defaultValue.vertical),\n horizontal: _scrollbarVisibilityFromString(input.horizontal, this.defaultValue.horizontal),\n useShadows: boolean(input.useShadows, this.defaultValue.useShadows),\n verticalHasArrows: boolean(input.verticalHasArrows, this.defaultValue.verticalHasArrows),\n horizontalHasArrows: boolean(input.horizontalHasArrows, this.defaultValue.horizontalHasArrows),\n handleMouseWheel: boolean(input.handleMouseWheel, this.defaultValue.handleMouseWheel),\n alwaysConsumeMouseWheel: boolean(input.alwaysConsumeMouseWheel, this.defaultValue.alwaysConsumeMouseWheel),\n horizontalScrollbarSize: horizontalScrollbarSize,\n horizontalSliderSize: EditorIntOption.clampedInt(input.horizontalSliderSize, horizontalScrollbarSize, 0, 1000),\n verticalScrollbarSize: verticalScrollbarSize,\n verticalSliderSize: EditorIntOption.clampedInt(input.verticalSliderSize, verticalScrollbarSize, 0, 1000),\n scrollByPage: boolean(input.scrollByPage, this.defaultValue.scrollByPage),\n ignoreHorizontalScrollbarInContentHeight: boolean(input.ignoreHorizontalScrollbarInContentHeight, this.defaultValue.ignoreHorizontalScrollbarInContentHeight),\n };\n }\n}\n/**\n * @internal\n*/\nconst inUntrustedWorkspace = 'inUntrustedWorkspace';\n/**\n * @internal\n */\nconst unicodeHighlightConfigKeys = {\n allowedCharacters: 'editor.unicodeHighlight.allowedCharacters',\n invisibleCharacters: 'editor.unicodeHighlight.invisibleCharacters',\n nonBasicASCII: 'editor.unicodeHighlight.nonBasicASCII',\n ambiguousCharacters: 'editor.unicodeHighlight.ambiguousCharacters',\n includeComments: 'editor.unicodeHighlight.includeComments',\n includeStrings: 'editor.unicodeHighlight.includeStrings',\n allowedLocales: 'editor.unicodeHighlight.allowedLocales',\n};\nclass UnicodeHighlight extends BaseEditorOption {\n constructor() {\n const defaults = {\n nonBasicASCII: inUntrustedWorkspace,\n invisibleCharacters: true,\n ambiguousCharacters: true,\n includeComments: inUntrustedWorkspace,\n includeStrings: true,\n allowedCharacters: {},\n allowedLocales: { _os: true, _vscode: true },\n };\n super(125 /* EditorOption.unicodeHighlighting */, 'unicodeHighlight', defaults, {\n [unicodeHighlightConfigKeys.nonBasicASCII]: {\n restricted: true,\n type: ['boolean', 'string'],\n enum: [true, false, inUntrustedWorkspace],\n default: defaults.nonBasicASCII,\n description: _nls_js__WEBPACK_IMPORTED_MODULE_5__.localize('unicodeHighlight.nonBasicASCII', \"Controls whether all non-basic ASCII characters are highlighted. Only characters between U+0020 and U+007E, tab, line-feed and carriage-return are considered basic ASCII.\")\n },\n [unicodeHighlightConfigKeys.invisibleCharacters]: {\n restricted: true,\n type: 'boolean',\n default: defaults.invisibleCharacters,\n description: _nls_js__WEBPACK_IMPORTED_MODULE_5__.localize('unicodeHighlight.invisibleCharacters', \"Controls whether characters that just reserve space or have no width at all are highlighted.\")\n },\n [unicodeHighlightConfigKeys.ambiguousCharacters]: {\n restricted: true,\n type: 'boolean',\n default: defaults.ambiguousCharacters,\n description: _nls_js__WEBPACK_IMPORTED_MODULE_5__.localize('unicodeHighlight.ambiguousCharacters', \"Controls whether characters are highlighted that can be confused with basic ASCII characters, except those that are common in the current user locale.\")\n },\n [unicodeHighlightConfigKeys.includeComments]: {\n restricted: true,\n type: ['boolean', 'string'],\n enum: [true, false, inUntrustedWorkspace],\n default: defaults.includeComments,\n description: _nls_js__WEBPACK_IMPORTED_MODULE_5__.localize('unicodeHighlight.includeComments', \"Controls whether characters in comments should also be subject to Unicode highlighting.\")\n },\n [unicodeHighlightConfigKeys.includeStrings]: {\n restricted: true,\n type: ['boolean', 'string'],\n enum: [true, false, inUntrustedWorkspace],\n default: defaults.includeStrings,\n description: _nls_js__WEBPACK_IMPORTED_MODULE_5__.localize('unicodeHighlight.includeStrings', \"Controls whether characters in strings should also be subject to Unicode highlighting.\")\n },\n [unicodeHighlightConfigKeys.allowedCharacters]: {\n restricted: true,\n type: 'object',\n default: defaults.allowedCharacters,\n description: _nls_js__WEBPACK_IMPORTED_MODULE_5__.localize('unicodeHighlight.allowedCharacters', \"Defines allowed characters that are not being highlighted.\"),\n additionalProperties: {\n type: 'boolean'\n }\n },\n [unicodeHighlightConfigKeys.allowedLocales]: {\n restricted: true,\n type: 'object',\n additionalProperties: {\n type: 'boolean'\n },\n default: defaults.allowedLocales,\n description: _nls_js__WEBPACK_IMPORTED_MODULE_5__.localize('unicodeHighlight.allowedLocales', \"Unicode characters that are common in allowed locales are not being highlighted.\")\n },\n });\n }\n applyUpdate(value, update) {\n let didChange = false;\n if (update.allowedCharacters && value) {\n // Treat allowedCharacters atomically\n if (!_base_common_objects_js__WEBPACK_IMPORTED_MODULE_1__.equals(value.allowedCharacters, update.allowedCharacters)) {\n value = { ...value, allowedCharacters: update.allowedCharacters };\n didChange = true;\n }\n }\n if (update.allowedLocales && value) {\n // Treat allowedLocales atomically\n if (!_base_common_objects_js__WEBPACK_IMPORTED_MODULE_1__.equals(value.allowedLocales, update.allowedLocales)) {\n value = { ...value, allowedLocales: update.allowedLocales };\n didChange = true;\n }\n }\n const result = super.applyUpdate(value, update);\n if (didChange) {\n return new ApplyUpdateResult(result.newValue, true);\n }\n return result;\n }\n validate(_input) {\n if (!_input || typeof _input !== 'object') {\n return this.defaultValue;\n }\n const input = _input;\n return {\n nonBasicASCII: primitiveSet(input.nonBasicASCII, inUntrustedWorkspace, [true, false, inUntrustedWorkspace]),\n invisibleCharacters: boolean(input.invisibleCharacters, this.defaultValue.invisibleCharacters),\n ambiguousCharacters: boolean(input.ambiguousCharacters, this.defaultValue.ambiguousCharacters),\n includeComments: primitiveSet(input.includeComments, inUntrustedWorkspace, [true, false, inUntrustedWorkspace]),\n includeStrings: primitiveSet(input.includeStrings, inUntrustedWorkspace, [true, false, inUntrustedWorkspace]),\n allowedCharacters: this.validateBooleanMap(_input.allowedCharacters, this.defaultValue.allowedCharacters),\n allowedLocales: this.validateBooleanMap(_input.allowedLocales, this.defaultValue.allowedLocales),\n };\n }\n validateBooleanMap(map, defaultValue) {\n if ((typeof map !== 'object') || !map) {\n return defaultValue;\n }\n const result = {};\n for (const [key, value] of Object.entries(map)) {\n if (value === true) {\n result[key] = true;\n }\n }\n return result;\n }\n}\n/**\n * Configuration options for inline suggestions\n */\nclass InlineEditorSuggest extends BaseEditorOption {\n constructor() {\n const defaults = {\n enabled: true,\n mode: 'subwordSmart',\n showToolbar: 'onHover',\n suppressSuggestions: false,\n keepOnBlur: false,\n fontFamily: 'default'\n };\n super(62 /* EditorOption.inlineSuggest */, 'inlineSuggest', defaults, {\n 'editor.inlineSuggest.enabled': {\n type: 'boolean',\n default: defaults.enabled,\n description: _nls_js__WEBPACK_IMPORTED_MODULE_5__.localize('inlineSuggest.enabled', \"Controls whether to automatically show inline suggestions in the editor.\")\n },\n 'editor.inlineSuggest.showToolbar': {\n type: 'string',\n default: defaults.showToolbar,\n enum: ['always', 'onHover', 'never'],\n enumDescriptions: [\n _nls_js__WEBPACK_IMPORTED_MODULE_5__.localize('inlineSuggest.showToolbar.always', \"Show the inline suggestion toolbar whenever an inline suggestion is shown.\"),\n _nls_js__WEBPACK_IMPORTED_MODULE_5__.localize('inlineSuggest.showToolbar.onHover', \"Show the inline suggestion toolbar when hovering over an inline suggestion.\"),\n _nls_js__WEBPACK_IMPORTED_MODULE_5__.localize('inlineSuggest.showToolbar.never', \"Never show the inline suggestion toolbar.\"),\n ],\n description: _nls_js__WEBPACK_IMPORTED_MODULE_5__.localize('inlineSuggest.showToolbar', \"Controls when to show the inline suggestion toolbar.\"),\n },\n 'editor.inlineSuggest.suppressSuggestions': {\n type: 'boolean',\n default: defaults.suppressSuggestions,\n description: _nls_js__WEBPACK_IMPORTED_MODULE_5__.localize('inlineSuggest.suppressSuggestions', \"Controls how inline suggestions interact with the suggest widget. If enabled, the suggest widget is not shown automatically when inline suggestions are available.\")\n },\n 'editor.inlineSuggest.fontFamily': {\n type: 'string',\n default: defaults.fontFamily,\n description: _nls_js__WEBPACK_IMPORTED_MODULE_5__.localize('inlineSuggest.fontFamily', \"Controls the font family of the inline suggestions.\")\n },\n });\n }\n validate(_input) {\n if (!_input || typeof _input !== 'object') {\n return this.defaultValue;\n }\n const input = _input;\n return {\n enabled: boolean(input.enabled, this.defaultValue.enabled),\n mode: stringSet(input.mode, this.defaultValue.mode, ['prefix', 'subword', 'subwordSmart']),\n showToolbar: stringSet(input.showToolbar, this.defaultValue.showToolbar, ['always', 'onHover', 'never']),\n suppressSuggestions: boolean(input.suppressSuggestions, this.defaultValue.suppressSuggestions),\n keepOnBlur: boolean(input.keepOnBlur, this.defaultValue.keepOnBlur),\n fontFamily: EditorStringOption.string(input.fontFamily, this.defaultValue.fontFamily)\n };\n }\n}\nclass InlineEditorEdit extends BaseEditorOption {\n constructor() {\n const defaults = {\n enabled: false,\n showToolbar: 'onHover',\n fontFamily: 'default',\n keepOnBlur: false,\n backgroundColoring: false,\n };\n super(63 /* EditorOption.inlineEdit */, 'experimentalInlineEdit', defaults, {\n 'editor.experimentalInlineEdit.enabled': {\n type: 'boolean',\n default: defaults.enabled,\n description: _nls_js__WEBPACK_IMPORTED_MODULE_5__.localize('inlineEdit.enabled', \"Controls whether to show inline edits in the editor.\")\n },\n 'editor.experimentalInlineEdit.showToolbar': {\n type: 'string',\n default: defaults.showToolbar,\n enum: ['always', 'onHover', 'never'],\n enumDescriptions: [\n _nls_js__WEBPACK_IMPORTED_MODULE_5__.localize('inlineEdit.showToolbar.always', \"Show the inline edit toolbar whenever an inline suggestion is shown.\"),\n _nls_js__WEBPACK_IMPORTED_MODULE_5__.localize('inlineEdit.showToolbar.onHover', \"Show the inline edit toolbar when hovering over an inline suggestion.\"),\n _nls_js__WEBPACK_IMPORTED_MODULE_5__.localize('inlineEdit.showToolbar.never', \"Never show the inline edit toolbar.\"),\n ],\n description: _nls_js__WEBPACK_IMPORTED_MODULE_5__.localize('inlineEdit.showToolbar', \"Controls when to show the inline edit toolbar.\"),\n },\n 'editor.experimentalInlineEdit.fontFamily': {\n type: 'string',\n default: defaults.fontFamily,\n description: _nls_js__WEBPACK_IMPORTED_MODULE_5__.localize('inlineEdit.fontFamily', \"Controls the font family of the inline edit.\")\n },\n 'editor.experimentalInlineEdit.backgroundColoring': {\n type: 'boolean',\n default: defaults.backgroundColoring,\n description: _nls_js__WEBPACK_IMPORTED_MODULE_5__.localize('inlineEdit.backgroundColoring', \"Controls whether to color the background of inline edits.\")\n },\n });\n }\n validate(_input) {\n if (!_input || typeof _input !== 'object') {\n return this.defaultValue;\n }\n const input = _input;\n return {\n enabled: boolean(input.enabled, this.defaultValue.enabled),\n showToolbar: stringSet(input.showToolbar, this.defaultValue.showToolbar, ['always', 'onHover', 'never']),\n fontFamily: EditorStringOption.string(input.fontFamily, this.defaultValue.fontFamily),\n keepOnBlur: boolean(input.keepOnBlur, this.defaultValue.keepOnBlur),\n backgroundColoring: boolean(input.backgroundColoring, this.defaultValue.backgroundColoring)\n };\n }\n}\n/**\n * Configuration options for inline suggestions\n */\nclass BracketPairColorization extends BaseEditorOption {\n constructor() {\n const defaults = {\n enabled: _core_textModelDefaults_js__WEBPACK_IMPORTED_MODULE_3__.EDITOR_MODEL_DEFAULTS.bracketPairColorizationOptions.enabled,\n independentColorPoolPerBracketType: _core_textModelDefaults_js__WEBPACK_IMPORTED_MODULE_3__.EDITOR_MODEL_DEFAULTS.bracketPairColorizationOptions.independentColorPoolPerBracketType,\n };\n super(15 /* EditorOption.bracketPairColorization */, 'bracketPairColorization', defaults, {\n 'editor.bracketPairColorization.enabled': {\n type: 'boolean',\n default: defaults.enabled,\n markdownDescription: _nls_js__WEBPACK_IMPORTED_MODULE_5__.localize('bracketPairColorization.enabled', \"Controls whether bracket pair colorization is enabled or not. Use {0} to override the bracket highlight colors.\", '`#workbench.colorCustomizations#`')\n },\n 'editor.bracketPairColorization.independentColorPoolPerBracketType': {\n type: 'boolean',\n default: defaults.independentColorPoolPerBracketType,\n description: _nls_js__WEBPACK_IMPORTED_MODULE_5__.localize('bracketPairColorization.independentColorPoolPerBracketType', \"Controls whether each bracket type has its own independent color pool.\")\n },\n });\n }\n validate(_input) {\n if (!_input || typeof _input !== 'object') {\n return this.defaultValue;\n }\n const input = _input;\n return {\n enabled: boolean(input.enabled, this.defaultValue.enabled),\n independentColorPoolPerBracketType: boolean(input.independentColorPoolPerBracketType, this.defaultValue.independentColorPoolPerBracketType),\n };\n }\n}\n/**\n * Configuration options for inline suggestions\n */\nclass GuideOptions extends BaseEditorOption {\n constructor() {\n const defaults = {\n bracketPairs: false,\n bracketPairsHorizontal: 'active',\n highlightActiveBracketPair: true,\n indentation: true,\n highlightActiveIndentation: true\n };\n super(16 /* EditorOption.guides */, 'guides', defaults, {\n 'editor.guides.bracketPairs': {\n type: ['boolean', 'string'],\n enum: [true, 'active', false],\n enumDescriptions: [\n _nls_js__WEBPACK_IMPORTED_MODULE_5__.localize('editor.guides.bracketPairs.true', \"Enables bracket pair guides.\"),\n _nls_js__WEBPACK_IMPORTED_MODULE_5__.localize('editor.guides.bracketPairs.active', \"Enables bracket pair guides only for the active bracket pair.\"),\n _nls_js__WEBPACK_IMPORTED_MODULE_5__.localize('editor.guides.bracketPairs.false', \"Disables bracket pair guides.\"),\n ],\n default: defaults.bracketPairs,\n description: _nls_js__WEBPACK_IMPORTED_MODULE_5__.localize('editor.guides.bracketPairs', \"Controls whether bracket pair guides are enabled or not.\")\n },\n 'editor.guides.bracketPairsHorizontal': {\n type: ['boolean', 'string'],\n enum: [true, 'active', false],\n enumDescriptions: [\n _nls_js__WEBPACK_IMPORTED_MODULE_5__.localize('editor.guides.bracketPairsHorizontal.true', \"Enables horizontal guides as addition to vertical bracket pair guides.\"),\n _nls_js__WEBPACK_IMPORTED_MODULE_5__.localize('editor.guides.bracketPairsHorizontal.active', \"Enables horizontal guides only for the active bracket pair.\"),\n _nls_js__WEBPACK_IMPORTED_MODULE_5__.localize('editor.guides.bracketPairsHorizontal.false', \"Disables horizontal bracket pair guides.\"),\n ],\n default: defaults.bracketPairsHorizontal,\n description: _nls_js__WEBPACK_IMPORTED_MODULE_5__.localize('editor.guides.bracketPairsHorizontal', \"Controls whether horizontal bracket pair guides are enabled or not.\")\n },\n 'editor.guides.highlightActiveBracketPair': {\n type: 'boolean',\n default: defaults.highlightActiveBracketPair,\n description: _nls_js__WEBPACK_IMPORTED_MODULE_5__.localize('editor.guides.highlightActiveBracketPair', \"Controls whether the editor should highlight the active bracket pair.\")\n },\n 'editor.guides.indentation': {\n type: 'boolean',\n default: defaults.indentation,\n description: _nls_js__WEBPACK_IMPORTED_MODULE_5__.localize('editor.guides.indentation', \"Controls whether the editor should render indent guides.\")\n },\n 'editor.guides.highlightActiveIndentation': {\n type: ['boolean', 'string'],\n enum: [true, 'always', false],\n enumDescriptions: [\n _nls_js__WEBPACK_IMPORTED_MODULE_5__.localize('editor.guides.highlightActiveIndentation.true', \"Highlights the active indent guide.\"),\n _nls_js__WEBPACK_IMPORTED_MODULE_5__.localize('editor.guides.highlightActiveIndentation.always', \"Highlights the active indent guide even if bracket guides are highlighted.\"),\n _nls_js__WEBPACK_IMPORTED_MODULE_5__.localize('editor.guides.highlightActiveIndentation.false', \"Do not highlight the active indent guide.\"),\n ],\n default: defaults.highlightActiveIndentation,\n description: _nls_js__WEBPACK_IMPORTED_MODULE_5__.localize('editor.guides.highlightActiveIndentation', \"Controls whether the editor should highlight the active indent guide.\")\n }\n });\n }\n validate(_input) {\n if (!_input || typeof _input !== 'object') {\n return this.defaultValue;\n }\n const input = _input;\n return {\n bracketPairs: primitiveSet(input.bracketPairs, this.defaultValue.bracketPairs, [true, false, 'active']),\n bracketPairsHorizontal: primitiveSet(input.bracketPairsHorizontal, this.defaultValue.bracketPairsHorizontal, [true, false, 'active']),\n highlightActiveBracketPair: boolean(input.highlightActiveBracketPair, this.defaultValue.highlightActiveBracketPair),\n indentation: boolean(input.indentation, this.defaultValue.indentation),\n highlightActiveIndentation: primitiveSet(input.highlightActiveIndentation, this.defaultValue.highlightActiveIndentation, [true, false, 'always']),\n };\n }\n}\nfunction primitiveSet(value, defaultValue, allowedValues) {\n const idx = allowedValues.indexOf(value);\n if (idx === -1) {\n return defaultValue;\n }\n return allowedValues[idx];\n}\nclass EditorSuggest extends BaseEditorOption {\n constructor() {\n const defaults = {\n insertMode: 'insert',\n filterGraceful: true,\n snippetsPreventQuickSuggestions: false,\n localityBonus: false,\n shareSuggestSelections: false,\n selectionMode: 'always',\n showIcons: true,\n showStatusBar: false,\n preview: false,\n previewMode: 'subwordSmart',\n showInlineDetails: true,\n showMethods: true,\n showFunctions: true,\n showConstructors: true,\n showDeprecated: true,\n matchOnWordStartOnly: true,\n showFields: true,\n showVariables: true,\n showClasses: true,\n showStructs: true,\n showInterfaces: true,\n showModules: true,\n showProperties: true,\n showEvents: true,\n showOperators: true,\n showUnits: true,\n showValues: true,\n showConstants: true,\n showEnums: true,\n showEnumMembers: true,\n showKeywords: true,\n showWords: true,\n showColors: true,\n showFiles: true,\n showReferences: true,\n showFolders: true,\n showTypeParameters: true,\n showSnippets: true,\n showUsers: true,\n showIssues: true,\n };\n super(118 /* EditorOption.suggest */, 'suggest', defaults, {\n 'editor.suggest.insertMode': {\n type: 'string',\n enum: ['insert', 'replace'],\n enumDescriptions: [\n _nls_js__WEBPACK_IMPORTED_MODULE_5__.localize('suggest.insertMode.insert', \"Insert suggestion without overwriting text right of the cursor.\"),\n _nls_js__WEBPACK_IMPORTED_MODULE_5__.localize('suggest.insertMode.replace', \"Insert suggestion and overwrite text right of the cursor.\"),\n ],\n default: defaults.insertMode,\n description: _nls_js__WEBPACK_IMPORTED_MODULE_5__.localize('suggest.insertMode', \"Controls whether words are overwritten when accepting completions. Note that this depends on extensions opting into this feature.\")\n },\n 'editor.suggest.filterGraceful': {\n type: 'boolean',\n default: defaults.filterGraceful,\n description: _nls_js__WEBPACK_IMPORTED_MODULE_5__.localize('suggest.filterGraceful', \"Controls whether filtering and sorting suggestions accounts for small typos.\")\n },\n 'editor.suggest.localityBonus': {\n type: 'boolean',\n default: defaults.localityBonus,\n description: _nls_js__WEBPACK_IMPORTED_MODULE_5__.localize('suggest.localityBonus', \"Controls whether sorting favors words that appear close to the cursor.\")\n },\n 'editor.suggest.shareSuggestSelections': {\n type: 'boolean',\n default: defaults.shareSuggestSelections,\n markdownDescription: _nls_js__WEBPACK_IMPORTED_MODULE_5__.localize('suggest.shareSuggestSelections', \"Controls whether remembered suggestion selections are shared between multiple workspaces and windows (needs `#editor.suggestSelection#`).\")\n },\n 'editor.suggest.selectionMode': {\n type: 'string',\n enum: ['always', 'never', 'whenTriggerCharacter', 'whenQuickSuggestion'],\n enumDescriptions: [\n _nls_js__WEBPACK_IMPORTED_MODULE_5__.localize('suggest.insertMode.always', \"Always select a suggestion when automatically triggering IntelliSense.\"),\n _nls_js__WEBPACK_IMPORTED_MODULE_5__.localize('suggest.insertMode.never', \"Never select a suggestion when automatically triggering IntelliSense.\"),\n _nls_js__WEBPACK_IMPORTED_MODULE_5__.localize('suggest.insertMode.whenTriggerCharacter', \"Select a suggestion only when triggering IntelliSense from a trigger character.\"),\n _nls_js__WEBPACK_IMPORTED_MODULE_5__.localize('suggest.insertMode.whenQuickSuggestion', \"Select a suggestion only when triggering IntelliSense as you type.\"),\n ],\n default: defaults.selectionMode,\n markdownDescription: _nls_js__WEBPACK_IMPORTED_MODULE_5__.localize('suggest.selectionMode', \"Controls whether a suggestion is selected when the widget shows. Note that this only applies to automatically triggered suggestions (`#editor.quickSuggestions#` and `#editor.suggestOnTriggerCharacters#`) and that a suggestion is always selected when explicitly invoked, e.g via `Ctrl+Space`.\")\n },\n 'editor.suggest.snippetsPreventQuickSuggestions': {\n type: 'boolean',\n default: defaults.snippetsPreventQuickSuggestions,\n description: _nls_js__WEBPACK_IMPORTED_MODULE_5__.localize('suggest.snippetsPreventQuickSuggestions', \"Controls whether an active snippet prevents quick suggestions.\")\n },\n 'editor.suggest.showIcons': {\n type: 'boolean',\n default: defaults.showIcons,\n description: _nls_js__WEBPACK_IMPORTED_MODULE_5__.localize('suggest.showIcons', \"Controls whether to show or hide icons in suggestions.\")\n },\n 'editor.suggest.showStatusBar': {\n type: 'boolean',\n default: defaults.showStatusBar,\n description: _nls_js__WEBPACK_IMPORTED_MODULE_5__.localize('suggest.showStatusBar', \"Controls the visibility of the status bar at the bottom of the suggest widget.\")\n },\n 'editor.suggest.preview': {\n type: 'boolean',\n default: defaults.preview,\n description: _nls_js__WEBPACK_IMPORTED_MODULE_5__.localize('suggest.preview', \"Controls whether to preview the suggestion outcome in the editor.\")\n },\n 'editor.suggest.showInlineDetails': {\n type: 'boolean',\n default: defaults.showInlineDetails,\n description: _nls_js__WEBPACK_IMPORTED_MODULE_5__.localize('suggest.showInlineDetails', \"Controls whether suggest details show inline with the label or only in the details widget.\")\n },\n 'editor.suggest.maxVisibleSuggestions': {\n type: 'number',\n deprecationMessage: _nls_js__WEBPACK_IMPORTED_MODULE_5__.localize('suggest.maxVisibleSuggestions.dep', \"This setting is deprecated. The suggest widget can now be resized.\"),\n },\n 'editor.suggest.filteredTypes': {\n type: 'object',\n deprecationMessage: _nls_js__WEBPACK_IMPORTED_MODULE_5__.localize('deprecated', \"This setting is deprecated, please use separate settings like 'editor.suggest.showKeywords' or 'editor.suggest.showSnippets' instead.\")\n },\n 'editor.suggest.showMethods': {\n type: 'boolean',\n default: true,\n markdownDescription: _nls_js__WEBPACK_IMPORTED_MODULE_5__.localize('editor.suggest.showMethods', \"When enabled IntelliSense shows `method`-suggestions.\")\n },\n 'editor.suggest.showFunctions': {\n type: 'boolean',\n default: true,\n markdownDescription: _nls_js__WEBPACK_IMPORTED_MODULE_5__.localize('editor.suggest.showFunctions', \"When enabled IntelliSense shows `function`-suggestions.\")\n },\n 'editor.suggest.showConstructors': {\n type: 'boolean',\n default: true,\n markdownDescription: _nls_js__WEBPACK_IMPORTED_MODULE_5__.localize('editor.suggest.showConstructors', \"When enabled IntelliSense shows `constructor`-suggestions.\")\n },\n 'editor.suggest.showDeprecated': {\n type: 'boolean',\n default: true,\n markdownDescription: _nls_js__WEBPACK_IMPORTED_MODULE_5__.localize('editor.suggest.showDeprecated', \"When enabled IntelliSense shows `deprecated`-suggestions.\")\n },\n 'editor.suggest.matchOnWordStartOnly': {\n type: 'boolean',\n default: true,\n markdownDescription: _nls_js__WEBPACK_IMPORTED_MODULE_5__.localize('editor.suggest.matchOnWordStartOnly', \"When enabled IntelliSense filtering requires that the first character matches on a word start. For example, `c` on `Console` or `WebContext` but _not_ on `description`. When disabled IntelliSense will show more results but still sorts them by match quality.\")\n },\n 'editor.suggest.showFields': {\n type: 'boolean',\n default: true,\n markdownDescription: _nls_js__WEBPACK_IMPORTED_MODULE_5__.localize('editor.suggest.showFields', \"When enabled IntelliSense shows `field`-suggestions.\")\n },\n 'editor.suggest.showVariables': {\n type: 'boolean',\n default: true,\n markdownDescription: _nls_js__WEBPACK_IMPORTED_MODULE_5__.localize('editor.suggest.showVariables', \"When enabled IntelliSense shows `variable`-suggestions.\")\n },\n 'editor.suggest.showClasses': {\n type: 'boolean',\n default: true,\n markdownDescription: _nls_js__WEBPACK_IMPORTED_MODULE_5__.localize('editor.suggest.showClasss', \"When enabled IntelliSense shows `class`-suggestions.\")\n },\n 'editor.suggest.showStructs': {\n type: 'boolean',\n default: true,\n markdownDescription: _nls_js__WEBPACK_IMPORTED_MODULE_5__.localize('editor.suggest.showStructs', \"When enabled IntelliSense shows `struct`-suggestions.\")\n },\n 'editor.suggest.showInterfaces': {\n type: 'boolean',\n default: true,\n markdownDescription: _nls_js__WEBPACK_IMPORTED_MODULE_5__.localize('editor.suggest.showInterfaces', \"When enabled IntelliSense shows `interface`-suggestions.\")\n },\n 'editor.suggest.showModules': {\n type: 'boolean',\n default: true,\n markdownDescription: _nls_js__WEBPACK_IMPORTED_MODULE_5__.localize('editor.suggest.showModules', \"When enabled IntelliSense shows `module`-suggestions.\")\n },\n 'editor.suggest.showProperties': {\n type: 'boolean',\n default: true,\n markdownDescription: _nls_js__WEBPACK_IMPORTED_MODULE_5__.localize('editor.suggest.showPropertys', \"When enabled IntelliSense shows `property`-suggestions.\")\n },\n 'editor.suggest.showEvents': {\n type: 'boolean',\n default: true,\n markdownDescription: _nls_js__WEBPACK_IMPORTED_MODULE_5__.localize('editor.suggest.showEvents', \"When enabled IntelliSense shows `event`-suggestions.\")\n },\n 'editor.suggest.showOperators': {\n type: 'boolean',\n default: true,\n markdownDescription: _nls_js__WEBPACK_IMPORTED_MODULE_5__.localize('editor.suggest.showOperators', \"When enabled IntelliSense shows `operator`-suggestions.\")\n },\n 'editor.suggest.showUnits': {\n type: 'boolean',\n default: true,\n markdownDescription: _nls_js__WEBPACK_IMPORTED_MODULE_5__.localize('editor.suggest.showUnits', \"When enabled IntelliSense shows `unit`-suggestions.\")\n },\n 'editor.suggest.showValues': {\n type: 'boolean',\n default: true,\n markdownDescription: _nls_js__WEBPACK_IMPORTED_MODULE_5__.localize('editor.suggest.showValues', \"When enabled IntelliSense shows `value`-suggestions.\")\n },\n 'editor.suggest.showConstants': {\n type: 'boolean',\n default: true,\n markdownDescription: _nls_js__WEBPACK_IMPORTED_MODULE_5__.localize('editor.suggest.showConstants', \"When enabled IntelliSense shows `constant`-suggestions.\")\n },\n 'editor.suggest.showEnums': {\n type: 'boolean',\n default: true,\n markdownDescription: _nls_js__WEBPACK_IMPORTED_MODULE_5__.localize('editor.suggest.showEnums', \"When enabled IntelliSense shows `enum`-suggestions.\")\n },\n 'editor.suggest.showEnumMembers': {\n type: 'boolean',\n default: true,\n markdownDescription: _nls_js__WEBPACK_IMPORTED_MODULE_5__.localize('editor.suggest.showEnumMembers', \"When enabled IntelliSense shows `enumMember`-suggestions.\")\n },\n 'editor.suggest.showKeywords': {\n type: 'boolean',\n default: true,\n markdownDescription: _nls_js__WEBPACK_IMPORTED_MODULE_5__.localize('editor.suggest.showKeywords', \"When enabled IntelliSense shows `keyword`-suggestions.\")\n },\n 'editor.suggest.showWords': {\n type: 'boolean',\n default: true,\n markdownDescription: _nls_js__WEBPACK_IMPORTED_MODULE_5__.localize('editor.suggest.showTexts', \"When enabled IntelliSense shows `text`-suggestions.\")\n },\n 'editor.suggest.showColors': {\n type: 'boolean',\n default: true,\n markdownDescription: _nls_js__WEBPACK_IMPORTED_MODULE_5__.localize('editor.suggest.showColors', \"When enabled IntelliSense shows `color`-suggestions.\")\n },\n 'editor.suggest.showFiles': {\n type: 'boolean',\n default: true,\n markdownDescription: _nls_js__WEBPACK_IMPORTED_MODULE_5__.localize('editor.suggest.showFiles', \"When enabled IntelliSense shows `file`-suggestions.\")\n },\n 'editor.suggest.showReferences': {\n type: 'boolean',\n default: true,\n markdownDescription: _nls_js__WEBPACK_IMPORTED_MODULE_5__.localize('editor.suggest.showReferences', \"When enabled IntelliSense shows `reference`-suggestions.\")\n },\n 'editor.suggest.showCustomcolors': {\n type: 'boolean',\n default: true,\n markdownDescription: _nls_js__WEBPACK_IMPORTED_MODULE_5__.localize('editor.suggest.showCustomcolors', \"When enabled IntelliSense shows `customcolor`-suggestions.\")\n },\n 'editor.suggest.showFolders': {\n type: 'boolean',\n default: true,\n markdownDescription: _nls_js__WEBPACK_IMPORTED_MODULE_5__.localize('editor.suggest.showFolders', \"When enabled IntelliSense shows `folder`-suggestions.\")\n },\n 'editor.suggest.showTypeParameters': {\n type: 'boolean',\n default: true,\n markdownDescription: _nls_js__WEBPACK_IMPORTED_MODULE_5__.localize('editor.suggest.showTypeParameters', \"When enabled IntelliSense shows `typeParameter`-suggestions.\")\n },\n 'editor.suggest.showSnippets': {\n type: 'boolean',\n default: true,\n markdownDescription: _nls_js__WEBPACK_IMPORTED_MODULE_5__.localize('editor.suggest.showSnippets', \"When enabled IntelliSense shows `snippet`-suggestions.\")\n },\n 'editor.suggest.showUsers': {\n type: 'boolean',\n default: true,\n markdownDescription: _nls_js__WEBPACK_IMPORTED_MODULE_5__.localize('editor.suggest.showUsers', \"When enabled IntelliSense shows `user`-suggestions.\")\n },\n 'editor.suggest.showIssues': {\n type: 'boolean',\n default: true,\n markdownDescription: _nls_js__WEBPACK_IMPORTED_MODULE_5__.localize('editor.suggest.showIssues', \"When enabled IntelliSense shows `issues`-suggestions.\")\n }\n });\n }\n validate(_input) {\n if (!_input || typeof _input !== 'object') {\n return this.defaultValue;\n }\n const input = _input;\n return {\n insertMode: stringSet(input.insertMode, this.defaultValue.insertMode, ['insert', 'replace']),\n filterGraceful: boolean(input.filterGraceful, this.defaultValue.filterGraceful),\n snippetsPreventQuickSuggestions: boolean(input.snippetsPreventQuickSuggestions, this.defaultValue.filterGraceful),\n localityBonus: boolean(input.localityBonus, this.defaultValue.localityBonus),\n shareSuggestSelections: boolean(input.shareSuggestSelections, this.defaultValue.shareSuggestSelections),\n selectionMode: stringSet(input.selectionMode, this.defaultValue.selectionMode, ['always', 'never', 'whenQuickSuggestion', 'whenTriggerCharacter']),\n showIcons: boolean(input.showIcons, this.defaultValue.showIcons),\n showStatusBar: boolean(input.showStatusBar, this.defaultValue.showStatusBar),\n preview: boolean(input.preview, this.defaultValue.preview),\n previewMode: stringSet(input.previewMode, this.defaultValue.previewMode, ['prefix', 'subword', 'subwordSmart']),\n showInlineDetails: boolean(input.showInlineDetails, this.defaultValue.showInlineDetails),\n showMethods: boolean(input.showMethods, this.defaultValue.showMethods),\n showFunctions: boolean(input.showFunctions, this.defaultValue.showFunctions),\n showConstructors: boolean(input.showConstructors, this.defaultValue.showConstructors),\n showDeprecated: boolean(input.showDeprecated, this.defaultValue.showDeprecated),\n matchOnWordStartOnly: boolean(input.matchOnWordStartOnly, this.defaultValue.matchOnWordStartOnly),\n showFields: boolean(input.showFields, this.defaultValue.showFields),\n showVariables: boolean(input.showVariables, this.defaultValue.showVariables),\n showClasses: boolean(input.showClasses, this.defaultValue.showClasses),\n showStructs: boolean(input.showStructs, this.defaultValue.showStructs),\n showInterfaces: boolean(input.showInterfaces, this.defaultValue.showInterfaces),\n showModules: boolean(input.showModules, this.defaultValue.showModules),\n showProperties: boolean(input.showProperties, this.defaultValue.showProperties),\n showEvents: boolean(input.showEvents, this.defaultValue.showEvents),\n showOperators: boolean(input.showOperators, this.defaultValue.showOperators),\n showUnits: boolean(input.showUnits, this.defaultValue.showUnits),\n showValues: boolean(input.showValues, this.defaultValue.showValues),\n showConstants: boolean(input.showConstants, this.defaultValue.showConstants),\n showEnums: boolean(input.showEnums, this.defaultValue.showEnums),\n showEnumMembers: boolean(input.showEnumMembers, this.defaultValue.showEnumMembers),\n showKeywords: boolean(input.showKeywords, this.defaultValue.showKeywords),\n showWords: boolean(input.showWords, this.defaultValue.showWords),\n showColors: boolean(input.showColors, this.defaultValue.showColors),\n showFiles: boolean(input.showFiles, this.defaultValue.showFiles),\n showReferences: boolean(input.showReferences, this.defaultValue.showReferences),\n showFolders: boolean(input.showFolders, this.defaultValue.showFolders),\n showTypeParameters: boolean(input.showTypeParameters, this.defaultValue.showTypeParameters),\n showSnippets: boolean(input.showSnippets, this.defaultValue.showSnippets),\n showUsers: boolean(input.showUsers, this.defaultValue.showUsers),\n showIssues: boolean(input.showIssues, this.defaultValue.showIssues),\n };\n }\n}\nclass SmartSelect extends BaseEditorOption {\n constructor() {\n super(113 /* EditorOption.smartSelect */, 'smartSelect', {\n selectLeadingAndTrailingWhitespace: true,\n selectSubwords: true,\n }, {\n 'editor.smartSelect.selectLeadingAndTrailingWhitespace': {\n description: _nls_js__WEBPACK_IMPORTED_MODULE_5__.localize('selectLeadingAndTrailingWhitespace', \"Whether leading and trailing whitespace should always be selected.\"),\n default: true,\n type: 'boolean'\n },\n 'editor.smartSelect.selectSubwords': {\n description: _nls_js__WEBPACK_IMPORTED_MODULE_5__.localize('selectSubwords', \"Whether subwords (like 'foo' in 'fooBar' or 'foo_bar') should be selected.\"),\n default: true,\n type: 'boolean'\n }\n });\n }\n validate(input) {\n if (!input || typeof input !== 'object') {\n return this.defaultValue;\n }\n return {\n selectLeadingAndTrailingWhitespace: boolean(input.selectLeadingAndTrailingWhitespace, this.defaultValue.selectLeadingAndTrailingWhitespace),\n selectSubwords: boolean(input.selectSubwords, this.defaultValue.selectSubwords),\n };\n }\n}\nclass WrappingIndentOption extends BaseEditorOption {\n constructor() {\n super(137 /* EditorOption.wrappingIndent */, 'wrappingIndent', 1 /* WrappingIndent.Same */, {\n 'editor.wrappingIndent': {\n type: 'string',\n enum: ['none', 'same', 'indent', 'deepIndent'],\n enumDescriptions: [\n _nls_js__WEBPACK_IMPORTED_MODULE_5__.localize('wrappingIndent.none', \"No indentation. Wrapped lines begin at column 1.\"),\n _nls_js__WEBPACK_IMPORTED_MODULE_5__.localize('wrappingIndent.same', \"Wrapped lines get the same indentation as the parent.\"),\n _nls_js__WEBPACK_IMPORTED_MODULE_5__.localize('wrappingIndent.indent', \"Wrapped lines get +1 indentation toward the parent.\"),\n _nls_js__WEBPACK_IMPORTED_MODULE_5__.localize('wrappingIndent.deepIndent', \"Wrapped lines get +2 indentation toward the parent.\"),\n ],\n description: _nls_js__WEBPACK_IMPORTED_MODULE_5__.localize('wrappingIndent', \"Controls the indentation of wrapped lines.\"),\n default: 'same'\n }\n });\n }\n validate(input) {\n switch (input) {\n case 'none': return 0 /* WrappingIndent.None */;\n case 'same': return 1 /* WrappingIndent.Same */;\n case 'indent': return 2 /* WrappingIndent.Indent */;\n case 'deepIndent': return 3 /* WrappingIndent.DeepIndent */;\n }\n return 1 /* WrappingIndent.Same */;\n }\n compute(env, options, value) {\n const accessibilitySupport = options.get(2 /* EditorOption.accessibilitySupport */);\n if (accessibilitySupport === 2 /* AccessibilitySupport.Enabled */) {\n // if we know for a fact that a screen reader is attached, we use no indent wrapping to\n // help that the editor's wrapping points match the textarea's wrapping points\n return 0 /* WrappingIndent.None */;\n }\n return value;\n }\n}\nclass EditorWrappingInfoComputer extends ComputedEditorOption {\n constructor() {\n super(145 /* EditorOption.wrappingInfo */);\n }\n compute(env, options, _) {\n const layoutInfo = options.get(144 /* EditorOption.layoutInfo */);\n return {\n isDominatedByLongLines: env.isDominatedByLongLines,\n isWordWrapMinified: layoutInfo.isWordWrapMinified,\n isViewportWrapping: layoutInfo.isViewportWrapping,\n wrappingColumn: layoutInfo.wrappingColumn,\n };\n }\n}\nclass EditorDropIntoEditor extends BaseEditorOption {\n constructor() {\n const defaults = { enabled: true, showDropSelector: 'afterDrop' };\n super(36 /* EditorOption.dropIntoEditor */, 'dropIntoEditor', defaults, {\n 'editor.dropIntoEditor.enabled': {\n type: 'boolean',\n default: defaults.enabled,\n markdownDescription: _nls_js__WEBPACK_IMPORTED_MODULE_5__.localize('dropIntoEditor.enabled', \"Controls whether you can drag and drop a file into a text editor by holding down the `Shift` key (instead of opening the file in an editor).\"),\n },\n 'editor.dropIntoEditor.showDropSelector': {\n type: 'string',\n markdownDescription: _nls_js__WEBPACK_IMPORTED_MODULE_5__.localize('dropIntoEditor.showDropSelector', \"Controls if a widget is shown when dropping files into the editor. This widget lets you control how the file is dropped.\"),\n enum: [\n 'afterDrop',\n 'never'\n ],\n enumDescriptions: [\n _nls_js__WEBPACK_IMPORTED_MODULE_5__.localize('dropIntoEditor.showDropSelector.afterDrop', \"Show the drop selector widget after a file is dropped into the editor.\"),\n _nls_js__WEBPACK_IMPORTED_MODULE_5__.localize('dropIntoEditor.showDropSelector.never', \"Never show the drop selector widget. Instead the default drop provider is always used.\"),\n ],\n default: 'afterDrop',\n },\n });\n }\n validate(_input) {\n if (!_input || typeof _input !== 'object') {\n return this.defaultValue;\n }\n const input = _input;\n return {\n enabled: boolean(input.enabled, this.defaultValue.enabled),\n showDropSelector: stringSet(input.showDropSelector, this.defaultValue.showDropSelector, ['afterDrop', 'never']),\n };\n }\n}\nclass EditorPasteAs extends BaseEditorOption {\n constructor() {\n const defaults = { enabled: true, showPasteSelector: 'afterPaste' };\n super(85 /* EditorOption.pasteAs */, 'pasteAs', defaults, {\n 'editor.pasteAs.enabled': {\n type: 'boolean',\n default: defaults.enabled,\n markdownDescription: _nls_js__WEBPACK_IMPORTED_MODULE_5__.localize('pasteAs.enabled', \"Controls whether you can paste content in different ways.\"),\n },\n 'editor.pasteAs.showPasteSelector': {\n type: 'string',\n markdownDescription: _nls_js__WEBPACK_IMPORTED_MODULE_5__.localize('pasteAs.showPasteSelector', \"Controls if a widget is shown when pasting content in to the editor. This widget lets you control how the file is pasted.\"),\n enum: [\n 'afterPaste',\n 'never'\n ],\n enumDescriptions: [\n _nls_js__WEBPACK_IMPORTED_MODULE_5__.localize('pasteAs.showPasteSelector.afterPaste', \"Show the paste selector widget after content is pasted into the editor.\"),\n _nls_js__WEBPACK_IMPORTED_MODULE_5__.localize('pasteAs.showPasteSelector.never', \"Never show the paste selector widget. Instead the default pasting behavior is always used.\"),\n ],\n default: 'afterPaste',\n },\n });\n }\n validate(_input) {\n if (!_input || typeof _input !== 'object') {\n return this.defaultValue;\n }\n const input = _input;\n return {\n enabled: boolean(input.enabled, this.defaultValue.enabled),\n showPasteSelector: stringSet(input.showPasteSelector, this.defaultValue.showPasteSelector, ['afterPaste', 'never']),\n };\n }\n}\n//#endregion\nconst DEFAULT_WINDOWS_FONT_FAMILY = 'Consolas, \\'Courier New\\', monospace';\nconst DEFAULT_MAC_FONT_FAMILY = 'Menlo, Monaco, \\'Courier New\\', monospace';\nconst DEFAULT_LINUX_FONT_FAMILY = '\\'Droid Sans Mono\\', \\'monospace\\', monospace';\n/**\n * @internal\n */\nconst EDITOR_FONT_DEFAULTS = {\n fontFamily: (_base_common_platform_js__WEBPACK_IMPORTED_MODULE_2__.isMacintosh ? DEFAULT_MAC_FONT_FAMILY : (_base_common_platform_js__WEBPACK_IMPORTED_MODULE_2__.isLinux ? DEFAULT_LINUX_FONT_FAMILY : DEFAULT_WINDOWS_FONT_FAMILY)),\n fontWeight: 'normal',\n fontSize: (_base_common_platform_js__WEBPACK_IMPORTED_MODULE_2__.isMacintosh ? 12 : 14),\n lineHeight: 0,\n letterSpacing: 0,\n};\n/**\n * @internal\n */\nconst editorOptionsRegistry = [];\nfunction register(option) {\n editorOptionsRegistry[option.id] = option;\n return option;\n}\nconst EditorOptions = {\n acceptSuggestionOnCommitCharacter: register(new EditorBooleanOption(0 /* EditorOption.acceptSuggestionOnCommitCharacter */, 'acceptSuggestionOnCommitCharacter', true, { markdownDescription: _nls_js__WEBPACK_IMPORTED_MODULE_5__.localize('acceptSuggestionOnCommitCharacter', \"Controls whether suggestions should be accepted on commit characters. For example, in JavaScript, the semi-colon (`;`) can be a commit character that accepts a suggestion and types that character.\") })),\n acceptSuggestionOnEnter: register(new EditorStringEnumOption(1 /* EditorOption.acceptSuggestionOnEnter */, 'acceptSuggestionOnEnter', 'on', ['on', 'smart', 'off'], {\n markdownEnumDescriptions: [\n '',\n _nls_js__WEBPACK_IMPORTED_MODULE_5__.localize('acceptSuggestionOnEnterSmart', \"Only accept a suggestion with `Enter` when it makes a textual change.\"),\n ''\n ],\n markdownDescription: _nls_js__WEBPACK_IMPORTED_MODULE_5__.localize('acceptSuggestionOnEnter', \"Controls whether suggestions should be accepted on `Enter`, in addition to `Tab`. Helps to avoid ambiguity between inserting new lines or accepting suggestions.\")\n })),\n accessibilitySupport: register(new EditorAccessibilitySupport()),\n accessibilityPageSize: register(new EditorIntOption(3 /* EditorOption.accessibilityPageSize */, 'accessibilityPageSize', 10, 1, 1073741824 /* Constants.MAX_SAFE_SMALL_INTEGER */, {\n description: _nls_js__WEBPACK_IMPORTED_MODULE_5__.localize('accessibilityPageSize', \"Controls the number of lines in the editor that can be read out by a screen reader at once. When we detect a screen reader we automatically set the default to be 500. Warning: this has a performance implication for numbers larger than the default.\"),\n tags: ['accessibility']\n })),\n ariaLabel: register(new EditorStringOption(4 /* EditorOption.ariaLabel */, 'ariaLabel', _nls_js__WEBPACK_IMPORTED_MODULE_5__.localize('editorViewAccessibleLabel', \"Editor content\"))),\n ariaRequired: register(new EditorBooleanOption(5 /* EditorOption.ariaRequired */, 'ariaRequired', false, undefined)),\n screenReaderAnnounceInlineSuggestion: register(new EditorBooleanOption(8 /* EditorOption.screenReaderAnnounceInlineSuggestion */, 'screenReaderAnnounceInlineSuggestion', true, {\n description: _nls_js__WEBPACK_IMPORTED_MODULE_5__.localize('screenReaderAnnounceInlineSuggestion', \"Control whether inline suggestions are announced by a screen reader.\"),\n tags: ['accessibility']\n })),\n autoClosingBrackets: register(new EditorStringEnumOption(6 /* EditorOption.autoClosingBrackets */, 'autoClosingBrackets', 'languageDefined', ['always', 'languageDefined', 'beforeWhitespace', 'never'], {\n enumDescriptions: [\n '',\n _nls_js__WEBPACK_IMPORTED_MODULE_5__.localize('editor.autoClosingBrackets.languageDefined', \"Use language configurations to determine when to autoclose brackets.\"),\n _nls_js__WEBPACK_IMPORTED_MODULE_5__.localize('editor.autoClosingBrackets.beforeWhitespace', \"Autoclose brackets only when the cursor is to the left of whitespace.\"),\n '',\n ],\n description: _nls_js__WEBPACK_IMPORTED_MODULE_5__.localize('autoClosingBrackets', \"Controls whether the editor should automatically close brackets after the user adds an opening bracket.\")\n })),\n autoClosingComments: register(new EditorStringEnumOption(7 /* EditorOption.autoClosingComments */, 'autoClosingComments', 'languageDefined', ['always', 'languageDefined', 'beforeWhitespace', 'never'], {\n enumDescriptions: [\n '',\n _nls_js__WEBPACK_IMPORTED_MODULE_5__.localize('editor.autoClosingComments.languageDefined', \"Use language configurations to determine when to autoclose comments.\"),\n _nls_js__WEBPACK_IMPORTED_MODULE_5__.localize('editor.autoClosingComments.beforeWhitespace', \"Autoclose comments only when the cursor is to the left of whitespace.\"),\n '',\n ],\n description: _nls_js__WEBPACK_IMPORTED_MODULE_5__.localize('autoClosingComments', \"Controls whether the editor should automatically close comments after the user adds an opening comment.\")\n })),\n autoClosingDelete: register(new EditorStringEnumOption(9 /* EditorOption.autoClosingDelete */, 'autoClosingDelete', 'auto', ['always', 'auto', 'never'], {\n enumDescriptions: [\n '',\n _nls_js__WEBPACK_IMPORTED_MODULE_5__.localize('editor.autoClosingDelete.auto', \"Remove adjacent closing quotes or brackets only if they were automatically inserted.\"),\n '',\n ],\n description: _nls_js__WEBPACK_IMPORTED_MODULE_5__.localize('autoClosingDelete', \"Controls whether the editor should remove adjacent closing quotes or brackets when deleting.\")\n })),\n autoClosingOvertype: register(new EditorStringEnumOption(10 /* EditorOption.autoClosingOvertype */, 'autoClosingOvertype', 'auto', ['always', 'auto', 'never'], {\n enumDescriptions: [\n '',\n _nls_js__WEBPACK_IMPORTED_MODULE_5__.localize('editor.autoClosingOvertype.auto', \"Type over closing quotes or brackets only if they were automatically inserted.\"),\n '',\n ],\n description: _nls_js__WEBPACK_IMPORTED_MODULE_5__.localize('autoClosingOvertype', \"Controls whether the editor should type over closing quotes or brackets.\")\n })),\n autoClosingQuotes: register(new EditorStringEnumOption(11 /* EditorOption.autoClosingQuotes */, 'autoClosingQuotes', 'languageDefined', ['always', 'languageDefined', 'beforeWhitespace', 'never'], {\n enumDescriptions: [\n '',\n _nls_js__WEBPACK_IMPORTED_MODULE_5__.localize('editor.autoClosingQuotes.languageDefined', \"Use language configurations to determine when to autoclose quotes.\"),\n _nls_js__WEBPACK_IMPORTED_MODULE_5__.localize('editor.autoClosingQuotes.beforeWhitespace', \"Autoclose quotes only when the cursor is to the left of whitespace.\"),\n '',\n ],\n description: _nls_js__WEBPACK_IMPORTED_MODULE_5__.localize('autoClosingQuotes', \"Controls whether the editor should automatically close quotes after the user adds an opening quote.\")\n })),\n autoIndent: register(new EditorEnumOption(12 /* EditorOption.autoIndent */, 'autoIndent', 4 /* EditorAutoIndentStrategy.Full */, 'full', ['none', 'keep', 'brackets', 'advanced', 'full'], _autoIndentFromString, {\n enumDescriptions: [\n _nls_js__WEBPACK_IMPORTED_MODULE_5__.localize('editor.autoIndent.none', \"The editor will not insert indentation automatically.\"),\n _nls_js__WEBPACK_IMPORTED_MODULE_5__.localize('editor.autoIndent.keep', \"The editor will keep the current line's indentation.\"),\n _nls_js__WEBPACK_IMPORTED_MODULE_5__.localize('editor.autoIndent.brackets', \"The editor will keep the current line's indentation and honor language defined brackets.\"),\n _nls_js__WEBPACK_IMPORTED_MODULE_5__.localize('editor.autoIndent.advanced', \"The editor will keep the current line's indentation, honor language defined brackets and invoke special onEnterRules defined by languages.\"),\n _nls_js__WEBPACK_IMPORTED_MODULE_5__.localize('editor.autoIndent.full', \"The editor will keep the current line's indentation, honor language defined brackets, invoke special onEnterRules defined by languages, and honor indentationRules defined by languages.\"),\n ],\n description: _nls_js__WEBPACK_IMPORTED_MODULE_5__.localize('autoIndent', \"Controls whether the editor should automatically adjust the indentation when users type, paste, move or indent lines.\")\n })),\n automaticLayout: register(new EditorBooleanOption(13 /* EditorOption.automaticLayout */, 'automaticLayout', false)),\n autoSurround: register(new EditorStringEnumOption(14 /* EditorOption.autoSurround */, 'autoSurround', 'languageDefined', ['languageDefined', 'quotes', 'brackets', 'never'], {\n enumDescriptions: [\n _nls_js__WEBPACK_IMPORTED_MODULE_5__.localize('editor.autoSurround.languageDefined', \"Use language configurations to determine when to automatically surround selections.\"),\n _nls_js__WEBPACK_IMPORTED_MODULE_5__.localize('editor.autoSurround.quotes', \"Surround with quotes but not brackets.\"),\n _nls_js__WEBPACK_IMPORTED_MODULE_5__.localize('editor.autoSurround.brackets', \"Surround with brackets but not quotes.\"),\n ''\n ],\n description: _nls_js__WEBPACK_IMPORTED_MODULE_5__.localize('autoSurround', \"Controls whether the editor should automatically surround selections when typing quotes or brackets.\")\n })),\n bracketPairColorization: register(new BracketPairColorization()),\n bracketPairGuides: register(new GuideOptions()),\n stickyTabStops: register(new EditorBooleanOption(116 /* EditorOption.stickyTabStops */, 'stickyTabStops', false, { description: _nls_js__WEBPACK_IMPORTED_MODULE_5__.localize('stickyTabStops', \"Emulate selection behavior of tab characters when using spaces for indentation. Selection will stick to tab stops.\") })),\n codeLens: register(new EditorBooleanOption(17 /* EditorOption.codeLens */, 'codeLens', true, { description: _nls_js__WEBPACK_IMPORTED_MODULE_5__.localize('codeLens', \"Controls whether the editor shows CodeLens.\") })),\n codeLensFontFamily: register(new EditorStringOption(18 /* EditorOption.codeLensFontFamily */, 'codeLensFontFamily', '', { description: _nls_js__WEBPACK_IMPORTED_MODULE_5__.localize('codeLensFontFamily', \"Controls the font family for CodeLens.\") })),\n codeLensFontSize: register(new EditorIntOption(19 /* EditorOption.codeLensFontSize */, 'codeLensFontSize', 0, 0, 100, {\n type: 'number',\n default: 0,\n minimum: 0,\n maximum: 100,\n markdownDescription: _nls_js__WEBPACK_IMPORTED_MODULE_5__.localize('codeLensFontSize', \"Controls the font size in pixels for CodeLens. When set to 0, 90% of `#editor.fontSize#` is used.\")\n })),\n colorDecorators: register(new EditorBooleanOption(20 /* EditorOption.colorDecorators */, 'colorDecorators', true, { description: _nls_js__WEBPACK_IMPORTED_MODULE_5__.localize('colorDecorators', \"Controls whether the editor should render the inline color decorators and color picker.\") })),\n colorDecoratorActivatedOn: register(new EditorStringEnumOption(147 /* EditorOption.colorDecoratorsActivatedOn */, 'colorDecoratorsActivatedOn', 'clickAndHover', ['clickAndHover', 'hover', 'click'], {\n enumDescriptions: [\n _nls_js__WEBPACK_IMPORTED_MODULE_5__.localize('editor.colorDecoratorActivatedOn.clickAndHover', \"Make the color picker appear both on click and hover of the color decorator\"),\n _nls_js__WEBPACK_IMPORTED_MODULE_5__.localize('editor.colorDecoratorActivatedOn.hover', \"Make the color picker appear on hover of the color decorator\"),\n _nls_js__WEBPACK_IMPORTED_MODULE_5__.localize('editor.colorDecoratorActivatedOn.click', \"Make the color picker appear on click of the color decorator\")\n ],\n description: _nls_js__WEBPACK_IMPORTED_MODULE_5__.localize('colorDecoratorActivatedOn', \"Controls the condition to make a color picker appear from a color decorator\")\n })),\n colorDecoratorsLimit: register(new EditorIntOption(21 /* EditorOption.colorDecoratorsLimit */, 'colorDecoratorsLimit', 500, 1, 1000000, {\n markdownDescription: _nls_js__WEBPACK_IMPORTED_MODULE_5__.localize('colorDecoratorsLimit', \"Controls the max number of color decorators that can be rendered in an editor at once.\")\n })),\n columnSelection: register(new EditorBooleanOption(22 /* EditorOption.columnSelection */, 'columnSelection', false, { description: _nls_js__WEBPACK_IMPORTED_MODULE_5__.localize('columnSelection', \"Enable that the selection with the mouse and keys is doing column selection.\") })),\n comments: register(new EditorComments()),\n contextmenu: register(new EditorBooleanOption(24 /* EditorOption.contextmenu */, 'contextmenu', true)),\n copyWithSyntaxHighlighting: register(new EditorBooleanOption(25 /* EditorOption.copyWithSyntaxHighlighting */, 'copyWithSyntaxHighlighting', true, { description: _nls_js__WEBPACK_IMPORTED_MODULE_5__.localize('copyWithSyntaxHighlighting', \"Controls whether syntax highlighting should be copied into the clipboard.\") })),\n cursorBlinking: register(new EditorEnumOption(26 /* EditorOption.cursorBlinking */, 'cursorBlinking', 1 /* TextEditorCursorBlinkingStyle.Blink */, 'blink', ['blink', 'smooth', 'phase', 'expand', 'solid'], _cursorBlinkingStyleFromString, { description: _nls_js__WEBPACK_IMPORTED_MODULE_5__.localize('cursorBlinking', \"Control the cursor animation style.\") })),\n cursorSmoothCaretAnimation: register(new EditorStringEnumOption(27 /* EditorOption.cursorSmoothCaretAnimation */, 'cursorSmoothCaretAnimation', 'off', ['off', 'explicit', 'on'], {\n enumDescriptions: [\n _nls_js__WEBPACK_IMPORTED_MODULE_5__.localize('cursorSmoothCaretAnimation.off', \"Smooth caret animation is disabled.\"),\n _nls_js__WEBPACK_IMPORTED_MODULE_5__.localize('cursorSmoothCaretAnimation.explicit', \"Smooth caret animation is enabled only when the user moves the cursor with an explicit gesture.\"),\n _nls_js__WEBPACK_IMPORTED_MODULE_5__.localize('cursorSmoothCaretAnimation.on', \"Smooth caret animation is always enabled.\")\n ],\n description: _nls_js__WEBPACK_IMPORTED_MODULE_5__.localize('cursorSmoothCaretAnimation', \"Controls whether the smooth caret animation should be enabled.\")\n })),\n cursorStyle: register(new EditorEnumOption(28 /* EditorOption.cursorStyle */, 'cursorStyle', TextEditorCursorStyle.Line, 'line', ['line', 'block', 'underline', 'line-thin', 'block-outline', 'underline-thin'], _cursorStyleFromString, { description: _nls_js__WEBPACK_IMPORTED_MODULE_5__.localize('cursorStyle', \"Controls the cursor style.\") })),\n cursorSurroundingLines: register(new EditorIntOption(29 /* EditorOption.cursorSurroundingLines */, 'cursorSurroundingLines', 0, 0, 1073741824 /* Constants.MAX_SAFE_SMALL_INTEGER */, { description: _nls_js__WEBPACK_IMPORTED_MODULE_5__.localize('cursorSurroundingLines', \"Controls the minimal number of visible leading lines (minimum 0) and trailing lines (minimum 1) surrounding the cursor. Known as 'scrollOff' or 'scrollOffset' in some other editors.\") })),\n cursorSurroundingLinesStyle: register(new EditorStringEnumOption(30 /* EditorOption.cursorSurroundingLinesStyle */, 'cursorSurroundingLinesStyle', 'default', ['default', 'all'], {\n enumDescriptions: [\n _nls_js__WEBPACK_IMPORTED_MODULE_5__.localize('cursorSurroundingLinesStyle.default', \"`cursorSurroundingLines` is enforced only when triggered via the keyboard or API.\"),\n _nls_js__WEBPACK_IMPORTED_MODULE_5__.localize('cursorSurroundingLinesStyle.all', \"`cursorSurroundingLines` is enforced always.\")\n ],\n markdownDescription: _nls_js__WEBPACK_IMPORTED_MODULE_5__.localize('cursorSurroundingLinesStyle', \"Controls when `#cursorSurroundingLines#` should be enforced.\")\n })),\n cursorWidth: register(new EditorIntOption(31 /* EditorOption.cursorWidth */, 'cursorWidth', 0, 0, 1073741824 /* Constants.MAX_SAFE_SMALL_INTEGER */, { markdownDescription: _nls_js__WEBPACK_IMPORTED_MODULE_5__.localize('cursorWidth', \"Controls the width of the cursor when `#editor.cursorStyle#` is set to `line`.\") })),\n disableLayerHinting: register(new EditorBooleanOption(32 /* EditorOption.disableLayerHinting */, 'disableLayerHinting', false)),\n disableMonospaceOptimizations: register(new EditorBooleanOption(33 /* EditorOption.disableMonospaceOptimizations */, 'disableMonospaceOptimizations', false)),\n domReadOnly: register(new EditorBooleanOption(34 /* EditorOption.domReadOnly */, 'domReadOnly', false)),\n dragAndDrop: register(new EditorBooleanOption(35 /* EditorOption.dragAndDrop */, 'dragAndDrop', true, { description: _nls_js__WEBPACK_IMPORTED_MODULE_5__.localize('dragAndDrop', \"Controls whether the editor should allow moving selections via drag and drop.\") })),\n emptySelectionClipboard: register(new EditorEmptySelectionClipboard()),\n dropIntoEditor: register(new EditorDropIntoEditor()),\n stickyScroll: register(new EditorStickyScroll()),\n experimentalWhitespaceRendering: register(new EditorStringEnumOption(38 /* EditorOption.experimentalWhitespaceRendering */, 'experimentalWhitespaceRendering', 'svg', ['svg', 'font', 'off'], {\n enumDescriptions: [\n _nls_js__WEBPACK_IMPORTED_MODULE_5__.localize('experimentalWhitespaceRendering.svg', \"Use a new rendering method with svgs.\"),\n _nls_js__WEBPACK_IMPORTED_MODULE_5__.localize('experimentalWhitespaceRendering.font', \"Use a new rendering method with font characters.\"),\n _nls_js__WEBPACK_IMPORTED_MODULE_5__.localize('experimentalWhitespaceRendering.off', \"Use the stable rendering method.\"),\n ],\n description: _nls_js__WEBPACK_IMPORTED_MODULE_5__.localize('experimentalWhitespaceRendering', \"Controls whether whitespace is rendered with a new, experimental method.\")\n })),\n extraEditorClassName: register(new EditorStringOption(39 /* EditorOption.extraEditorClassName */, 'extraEditorClassName', '')),\n fastScrollSensitivity: register(new EditorFloatOption(40 /* EditorOption.fastScrollSensitivity */, 'fastScrollSensitivity', 5, x => (x <= 0 ? 5 : x), { markdownDescription: _nls_js__WEBPACK_IMPORTED_MODULE_5__.localize('fastScrollSensitivity', \"Scrolling speed multiplier when pressing `Alt`.\") })),\n find: register(new EditorFind()),\n fixedOverflowWidgets: register(new EditorBooleanOption(42 /* EditorOption.fixedOverflowWidgets */, 'fixedOverflowWidgets', false)),\n folding: register(new EditorBooleanOption(43 /* EditorOption.folding */, 'folding', true, { description: _nls_js__WEBPACK_IMPORTED_MODULE_5__.localize('folding', \"Controls whether the editor has code folding enabled.\") })),\n foldingStrategy: register(new EditorStringEnumOption(44 /* EditorOption.foldingStrategy */, 'foldingStrategy', 'auto', ['auto', 'indentation'], {\n enumDescriptions: [\n _nls_js__WEBPACK_IMPORTED_MODULE_5__.localize('foldingStrategy.auto', \"Use a language-specific folding strategy if available, else the indentation-based one.\"),\n _nls_js__WEBPACK_IMPORTED_MODULE_5__.localize('foldingStrategy.indentation', \"Use the indentation-based folding strategy.\"),\n ],\n description: _nls_js__WEBPACK_IMPORTED_MODULE_5__.localize('foldingStrategy', \"Controls the strategy for computing folding ranges.\")\n })),\n foldingHighlight: register(new EditorBooleanOption(45 /* EditorOption.foldingHighlight */, 'foldingHighlight', true, { description: _nls_js__WEBPACK_IMPORTED_MODULE_5__.localize('foldingHighlight', \"Controls whether the editor should highlight folded ranges.\") })),\n foldingImportsByDefault: register(new EditorBooleanOption(46 /* EditorOption.foldingImportsByDefault */, 'foldingImportsByDefault', false, { description: _nls_js__WEBPACK_IMPORTED_MODULE_5__.localize('foldingImportsByDefault', \"Controls whether the editor automatically collapses import ranges.\") })),\n foldingMaximumRegions: register(new EditorIntOption(47 /* EditorOption.foldingMaximumRegions */, 'foldingMaximumRegions', 5000, 10, 65000, // limit must be less than foldingRanges MAX_FOLDING_REGIONS\n { description: _nls_js__WEBPACK_IMPORTED_MODULE_5__.localize('foldingMaximumRegions', \"The maximum number of foldable regions. Increasing this value may result in the editor becoming less responsive when the current source has a large number of foldable regions.\") })),\n unfoldOnClickAfterEndOfLine: register(new EditorBooleanOption(48 /* EditorOption.unfoldOnClickAfterEndOfLine */, 'unfoldOnClickAfterEndOfLine', false, { description: _nls_js__WEBPACK_IMPORTED_MODULE_5__.localize('unfoldOnClickAfterEndOfLine', \"Controls whether clicking on the empty content after a folded line will unfold the line.\") })),\n fontFamily: register(new EditorStringOption(49 /* EditorOption.fontFamily */, 'fontFamily', EDITOR_FONT_DEFAULTS.fontFamily, { description: _nls_js__WEBPACK_IMPORTED_MODULE_5__.localize('fontFamily', \"Controls the font family.\") })),\n fontInfo: register(new EditorFontInfo()),\n fontLigatures2: register(new EditorFontLigatures()),\n fontSize: register(new EditorFontSize()),\n fontWeight: register(new EditorFontWeight()),\n fontVariations: register(new EditorFontVariations()),\n formatOnPaste: register(new EditorBooleanOption(55 /* EditorOption.formatOnPaste */, 'formatOnPaste', false, { description: _nls_js__WEBPACK_IMPORTED_MODULE_5__.localize('formatOnPaste', \"Controls whether the editor should automatically format the pasted content. A formatter must be available and the formatter should be able to format a range in a document.\") })),\n formatOnType: register(new EditorBooleanOption(56 /* EditorOption.formatOnType */, 'formatOnType', false, { description: _nls_js__WEBPACK_IMPORTED_MODULE_5__.localize('formatOnType', \"Controls whether the editor should automatically format the line after typing.\") })),\n glyphMargin: register(new EditorBooleanOption(57 /* EditorOption.glyphMargin */, 'glyphMargin', true, { description: _nls_js__WEBPACK_IMPORTED_MODULE_5__.localize('glyphMargin', \"Controls whether the editor should render the vertical glyph margin. Glyph margin is mostly used for debugging.\") })),\n gotoLocation: register(new EditorGoToLocation()),\n hideCursorInOverviewRuler: register(new EditorBooleanOption(59 /* EditorOption.hideCursorInOverviewRuler */, 'hideCursorInOverviewRuler', false, { description: _nls_js__WEBPACK_IMPORTED_MODULE_5__.localize('hideCursorInOverviewRuler', \"Controls whether the cursor should be hidden in the overview ruler.\") })),\n hover: register(new EditorHover()),\n inDiffEditor: register(new EditorBooleanOption(61 /* EditorOption.inDiffEditor */, 'inDiffEditor', false)),\n letterSpacing: register(new EditorFloatOption(64 /* EditorOption.letterSpacing */, 'letterSpacing', EDITOR_FONT_DEFAULTS.letterSpacing, x => EditorFloatOption.clamp(x, -5, 20), { description: _nls_js__WEBPACK_IMPORTED_MODULE_5__.localize('letterSpacing', \"Controls the letter spacing in pixels.\") })),\n lightbulb: register(new EditorLightbulb()),\n lineDecorationsWidth: register(new EditorLineDecorationsWidth()),\n lineHeight: register(new EditorLineHeight()),\n lineNumbers: register(new EditorRenderLineNumbersOption()),\n lineNumbersMinChars: register(new EditorIntOption(69 /* EditorOption.lineNumbersMinChars */, 'lineNumbersMinChars', 5, 1, 300)),\n linkedEditing: register(new EditorBooleanOption(70 /* EditorOption.linkedEditing */, 'linkedEditing', false, { description: _nls_js__WEBPACK_IMPORTED_MODULE_5__.localize('linkedEditing', \"Controls whether the editor has linked editing enabled. Depending on the language, related symbols such as HTML tags, are updated while editing.\") })),\n links: register(new EditorBooleanOption(71 /* EditorOption.links */, 'links', true, { description: _nls_js__WEBPACK_IMPORTED_MODULE_5__.localize('links', \"Controls whether the editor should detect links and make them clickable.\") })),\n matchBrackets: register(new EditorStringEnumOption(72 /* EditorOption.matchBrackets */, 'matchBrackets', 'always', ['always', 'near', 'never'], { description: _nls_js__WEBPACK_IMPORTED_MODULE_5__.localize('matchBrackets', \"Highlight matching brackets.\") })),\n minimap: register(new EditorMinimap()),\n mouseStyle: register(new EditorStringEnumOption(74 /* EditorOption.mouseStyle */, 'mouseStyle', 'text', ['text', 'default', 'copy'])),\n mouseWheelScrollSensitivity: register(new EditorFloatOption(75 /* EditorOption.mouseWheelScrollSensitivity */, 'mouseWheelScrollSensitivity', 1, x => (x === 0 ? 1 : x), { markdownDescription: _nls_js__WEBPACK_IMPORTED_MODULE_5__.localize('mouseWheelScrollSensitivity', \"A multiplier to be used on the `deltaX` and `deltaY` of mouse wheel scroll events.\") })),\n mouseWheelZoom: register(new EditorBooleanOption(76 /* EditorOption.mouseWheelZoom */, 'mouseWheelZoom', false, {\n markdownDescription: _base_common_platform_js__WEBPACK_IMPORTED_MODULE_2__.isMacintosh\n ? _nls_js__WEBPACK_IMPORTED_MODULE_5__.localize('mouseWheelZoom.mac', \"Zoom the font of the editor when using mouse wheel and holding `Cmd`.\")\n : _nls_js__WEBPACK_IMPORTED_MODULE_5__.localize('mouseWheelZoom', \"Zoom the font of the editor when using mouse wheel and holding `Ctrl`.\")\n })),\n multiCursorMergeOverlapping: register(new EditorBooleanOption(77 /* EditorOption.multiCursorMergeOverlapping */, 'multiCursorMergeOverlapping', true, { description: _nls_js__WEBPACK_IMPORTED_MODULE_5__.localize('multiCursorMergeOverlapping', \"Merge multiple cursors when they are overlapping.\") })),\n multiCursorModifier: register(new EditorEnumOption(78 /* EditorOption.multiCursorModifier */, 'multiCursorModifier', 'altKey', 'alt', ['ctrlCmd', 'alt'], _multiCursorModifierFromString, {\n markdownEnumDescriptions: [\n _nls_js__WEBPACK_IMPORTED_MODULE_5__.localize('multiCursorModifier.ctrlCmd', \"Maps to `Control` on Windows and Linux and to `Command` on macOS.\"),\n _nls_js__WEBPACK_IMPORTED_MODULE_5__.localize('multiCursorModifier.alt', \"Maps to `Alt` on Windows and Linux and to `Option` on macOS.\")\n ],\n markdownDescription: _nls_js__WEBPACK_IMPORTED_MODULE_5__.localize({\n key: 'multiCursorModifier',\n comment: [\n '- `ctrlCmd` refers to a value the setting can take and should not be localized.',\n '- `Control` and `Command` refer to the modifier keys Ctrl or Cmd on the keyboard and can be localized.'\n ]\n }, \"The modifier to be used to add multiple cursors with the mouse. The Go to Definition and Open Link mouse gestures will adapt such that they do not conflict with the [multicursor modifier](https://code.visualstudio.com/docs/editor/codebasics#_multicursor-modifier).\")\n })),\n multiCursorPaste: register(new EditorStringEnumOption(79 /* EditorOption.multiCursorPaste */, 'multiCursorPaste', 'spread', ['spread', 'full'], {\n markdownEnumDescriptions: [\n _nls_js__WEBPACK_IMPORTED_MODULE_5__.localize('multiCursorPaste.spread', \"Each cursor pastes a single line of the text.\"),\n _nls_js__WEBPACK_IMPORTED_MODULE_5__.localize('multiCursorPaste.full', \"Each cursor pastes the full text.\")\n ],\n markdownDescription: _nls_js__WEBPACK_IMPORTED_MODULE_5__.localize('multiCursorPaste', \"Controls pasting when the line count of the pasted text matches the cursor count.\")\n })),\n multiCursorLimit: register(new EditorIntOption(80 /* EditorOption.multiCursorLimit */, 'multiCursorLimit', 10000, 1, 100000, {\n markdownDescription: _nls_js__WEBPACK_IMPORTED_MODULE_5__.localize('multiCursorLimit', \"Controls the max number of cursors that can be in an active editor at once.\")\n })),\n occurrencesHighlight: register(new EditorStringEnumOption(81 /* EditorOption.occurrencesHighlight */, 'occurrencesHighlight', 'singleFile', ['off', 'singleFile', 'multiFile'], {\n markdownEnumDescriptions: [\n _nls_js__WEBPACK_IMPORTED_MODULE_5__.localize('occurrencesHighlight.off', \"Does not highlight occurrences.\"),\n _nls_js__WEBPACK_IMPORTED_MODULE_5__.localize('occurrencesHighlight.singleFile', \"Highlights occurrences only in the current file.\"),\n _nls_js__WEBPACK_IMPORTED_MODULE_5__.localize('occurrencesHighlight.multiFile', \"Experimental: Highlights occurrences across all valid open files.\")\n ],\n markdownDescription: _nls_js__WEBPACK_IMPORTED_MODULE_5__.localize('occurrencesHighlight', \"Controls whether occurrences should be highlighted across open files.\")\n })),\n overviewRulerBorder: register(new EditorBooleanOption(82 /* EditorOption.overviewRulerBorder */, 'overviewRulerBorder', true, { description: _nls_js__WEBPACK_IMPORTED_MODULE_5__.localize('overviewRulerBorder', \"Controls whether a border should be drawn around the overview ruler.\") })),\n overviewRulerLanes: register(new EditorIntOption(83 /* EditorOption.overviewRulerLanes */, 'overviewRulerLanes', 3, 0, 3)),\n padding: register(new EditorPadding()),\n pasteAs: register(new EditorPasteAs()),\n parameterHints: register(new EditorParameterHints()),\n peekWidgetDefaultFocus: register(new EditorStringEnumOption(87 /* EditorOption.peekWidgetDefaultFocus */, 'peekWidgetDefaultFocus', 'tree', ['tree', 'editor'], {\n enumDescriptions: [\n _nls_js__WEBPACK_IMPORTED_MODULE_5__.localize('peekWidgetDefaultFocus.tree', \"Focus the tree when opening peek\"),\n _nls_js__WEBPACK_IMPORTED_MODULE_5__.localize('peekWidgetDefaultFocus.editor', \"Focus the editor when opening peek\")\n ],\n description: _nls_js__WEBPACK_IMPORTED_MODULE_5__.localize('peekWidgetDefaultFocus', \"Controls whether to focus the inline editor or the tree in the peek widget.\")\n })),\n definitionLinkOpensInPeek: register(new EditorBooleanOption(88 /* EditorOption.definitionLinkOpensInPeek */, 'definitionLinkOpensInPeek', false, { description: _nls_js__WEBPACK_IMPORTED_MODULE_5__.localize('definitionLinkOpensInPeek', \"Controls whether the Go to Definition mouse gesture always opens the peek widget.\") })),\n quickSuggestions: register(new EditorQuickSuggestions()),\n quickSuggestionsDelay: register(new EditorIntOption(90 /* EditorOption.quickSuggestionsDelay */, 'quickSuggestionsDelay', 10, 0, 1073741824 /* Constants.MAX_SAFE_SMALL_INTEGER */, { description: _nls_js__WEBPACK_IMPORTED_MODULE_5__.localize('quickSuggestionsDelay', \"Controls the delay in milliseconds after which quick suggestions will show up.\") })),\n readOnly: register(new EditorBooleanOption(91 /* EditorOption.readOnly */, 'readOnly', false)),\n readOnlyMessage: register(new ReadonlyMessage()),\n renameOnType: register(new EditorBooleanOption(93 /* EditorOption.renameOnType */, 'renameOnType', false, { description: _nls_js__WEBPACK_IMPORTED_MODULE_5__.localize('renameOnType', \"Controls whether the editor auto renames on type.\"), markdownDeprecationMessage: _nls_js__WEBPACK_IMPORTED_MODULE_5__.localize('renameOnTypeDeprecate', \"Deprecated, use `editor.linkedEditing` instead.\") })),\n renderControlCharacters: register(new EditorBooleanOption(94 /* EditorOption.renderControlCharacters */, 'renderControlCharacters', true, { description: _nls_js__WEBPACK_IMPORTED_MODULE_5__.localize('renderControlCharacters', \"Controls whether the editor should render control characters.\"), restricted: true })),\n renderFinalNewline: register(new EditorStringEnumOption(95 /* EditorOption.renderFinalNewline */, 'renderFinalNewline', (_base_common_platform_js__WEBPACK_IMPORTED_MODULE_2__.isLinux ? 'dimmed' : 'on'), ['off', 'on', 'dimmed'], { description: _nls_js__WEBPACK_IMPORTED_MODULE_5__.localize('renderFinalNewline', \"Render last line number when the file ends with a newline.\") })),\n renderLineHighlight: register(new EditorStringEnumOption(96 /* EditorOption.renderLineHighlight */, 'renderLineHighlight', 'line', ['none', 'gutter', 'line', 'all'], {\n enumDescriptions: [\n '',\n '',\n '',\n _nls_js__WEBPACK_IMPORTED_MODULE_5__.localize('renderLineHighlight.all', \"Highlights both the gutter and the current line.\"),\n ],\n description: _nls_js__WEBPACK_IMPORTED_MODULE_5__.localize('renderLineHighlight', \"Controls how the editor should render the current line highlight.\")\n })),\n renderLineHighlightOnlyWhenFocus: register(new EditorBooleanOption(97 /* EditorOption.renderLineHighlightOnlyWhenFocus */, 'renderLineHighlightOnlyWhenFocus', false, { description: _nls_js__WEBPACK_IMPORTED_MODULE_5__.localize('renderLineHighlightOnlyWhenFocus', \"Controls if the editor should render the current line highlight only when the editor is focused.\") })),\n renderValidationDecorations: register(new EditorStringEnumOption(98 /* EditorOption.renderValidationDecorations */, 'renderValidationDecorations', 'editable', ['editable', 'on', 'off'])),\n renderWhitespace: register(new EditorStringEnumOption(99 /* EditorOption.renderWhitespace */, 'renderWhitespace', 'selection', ['none', 'boundary', 'selection', 'trailing', 'all'], {\n enumDescriptions: [\n '',\n _nls_js__WEBPACK_IMPORTED_MODULE_5__.localize('renderWhitespace.boundary', \"Render whitespace characters except for single spaces between words.\"),\n _nls_js__WEBPACK_IMPORTED_MODULE_5__.localize('renderWhitespace.selection', \"Render whitespace characters only on selected text.\"),\n _nls_js__WEBPACK_IMPORTED_MODULE_5__.localize('renderWhitespace.trailing', \"Render only trailing whitespace characters.\"),\n ''\n ],\n description: _nls_js__WEBPACK_IMPORTED_MODULE_5__.localize('renderWhitespace', \"Controls how the editor should render whitespace characters.\")\n })),\n revealHorizontalRightPadding: register(new EditorIntOption(100 /* EditorOption.revealHorizontalRightPadding */, 'revealHorizontalRightPadding', 15, 0, 1000)),\n roundedSelection: register(new EditorBooleanOption(101 /* EditorOption.roundedSelection */, 'roundedSelection', true, { description: _nls_js__WEBPACK_IMPORTED_MODULE_5__.localize('roundedSelection', \"Controls whether selections should have rounded corners.\") })),\n rulers: register(new EditorRulers()),\n scrollbar: register(new EditorScrollbar()),\n scrollBeyondLastColumn: register(new EditorIntOption(104 /* EditorOption.scrollBeyondLastColumn */, 'scrollBeyondLastColumn', 4, 0, 1073741824 /* Constants.MAX_SAFE_SMALL_INTEGER */, { description: _nls_js__WEBPACK_IMPORTED_MODULE_5__.localize('scrollBeyondLastColumn', \"Controls the number of extra characters beyond which the editor will scroll horizontally.\") })),\n scrollBeyondLastLine: register(new EditorBooleanOption(105 /* EditorOption.scrollBeyondLastLine */, 'scrollBeyondLastLine', true, { description: _nls_js__WEBPACK_IMPORTED_MODULE_5__.localize('scrollBeyondLastLine', \"Controls whether the editor will scroll beyond the last line.\") })),\n scrollPredominantAxis: register(new EditorBooleanOption(106 /* EditorOption.scrollPredominantAxis */, 'scrollPredominantAxis', true, { description: _nls_js__WEBPACK_IMPORTED_MODULE_5__.localize('scrollPredominantAxis', \"Scroll only along the predominant axis when scrolling both vertically and horizontally at the same time. Prevents horizontal drift when scrolling vertically on a trackpad.\") })),\n selectionClipboard: register(new EditorBooleanOption(107 /* EditorOption.selectionClipboard */, 'selectionClipboard', true, {\n description: _nls_js__WEBPACK_IMPORTED_MODULE_5__.localize('selectionClipboard', \"Controls whether the Linux primary clipboard should be supported.\"),\n included: _base_common_platform_js__WEBPACK_IMPORTED_MODULE_2__.isLinux\n })),\n selectionHighlight: register(new EditorBooleanOption(108 /* EditorOption.selectionHighlight */, 'selectionHighlight', true, { description: _nls_js__WEBPACK_IMPORTED_MODULE_5__.localize('selectionHighlight', \"Controls whether the editor should highlight matches similar to the selection.\") })),\n selectOnLineNumbers: register(new EditorBooleanOption(109 /* EditorOption.selectOnLineNumbers */, 'selectOnLineNumbers', true)),\n showFoldingControls: register(new EditorStringEnumOption(110 /* EditorOption.showFoldingControls */, 'showFoldingControls', 'mouseover', ['always', 'never', 'mouseover'], {\n enumDescriptions: [\n _nls_js__WEBPACK_IMPORTED_MODULE_5__.localize('showFoldingControls.always', \"Always show the folding controls.\"),\n _nls_js__WEBPACK_IMPORTED_MODULE_5__.localize('showFoldingControls.never', \"Never show the folding controls and reduce the gutter size.\"),\n _nls_js__WEBPACK_IMPORTED_MODULE_5__.localize('showFoldingControls.mouseover', \"Only show the folding controls when the mouse is over the gutter.\"),\n ],\n description: _nls_js__WEBPACK_IMPORTED_MODULE_5__.localize('showFoldingControls', \"Controls when the folding controls on the gutter are shown.\")\n })),\n showUnused: register(new EditorBooleanOption(111 /* EditorOption.showUnused */, 'showUnused', true, { description: _nls_js__WEBPACK_IMPORTED_MODULE_5__.localize('showUnused', \"Controls fading out of unused code.\") })),\n showDeprecated: register(new EditorBooleanOption(139 /* EditorOption.showDeprecated */, 'showDeprecated', true, { description: _nls_js__WEBPACK_IMPORTED_MODULE_5__.localize('showDeprecated', \"Controls strikethrough deprecated variables.\") })),\n inlayHints: register(new EditorInlayHints()),\n snippetSuggestions: register(new EditorStringEnumOption(112 /* EditorOption.snippetSuggestions */, 'snippetSuggestions', 'inline', ['top', 'bottom', 'inline', 'none'], {\n enumDescriptions: [\n _nls_js__WEBPACK_IMPORTED_MODULE_5__.localize('snippetSuggestions.top', \"Show snippet suggestions on top of other suggestions.\"),\n _nls_js__WEBPACK_IMPORTED_MODULE_5__.localize('snippetSuggestions.bottom', \"Show snippet suggestions below other suggestions.\"),\n _nls_js__WEBPACK_IMPORTED_MODULE_5__.localize('snippetSuggestions.inline', \"Show snippets suggestions with other suggestions.\"),\n _nls_js__WEBPACK_IMPORTED_MODULE_5__.localize('snippetSuggestions.none', \"Do not show snippet suggestions.\"),\n ],\n description: _nls_js__WEBPACK_IMPORTED_MODULE_5__.localize('snippetSuggestions', \"Controls whether snippets are shown with other suggestions and how they are sorted.\")\n })),\n smartSelect: register(new SmartSelect()),\n smoothScrolling: register(new EditorBooleanOption(114 /* EditorOption.smoothScrolling */, 'smoothScrolling', false, { description: _nls_js__WEBPACK_IMPORTED_MODULE_5__.localize('smoothScrolling', \"Controls whether the editor will scroll using an animation.\") })),\n stopRenderingLineAfter: register(new EditorIntOption(117 /* EditorOption.stopRenderingLineAfter */, 'stopRenderingLineAfter', 10000, -1, 1073741824 /* Constants.MAX_SAFE_SMALL_INTEGER */)),\n suggest: register(new EditorSuggest()),\n inlineSuggest: register(new InlineEditorSuggest()),\n inlineEdit: register(new InlineEditorEdit()),\n inlineCompletionsAccessibilityVerbose: register(new EditorBooleanOption(148 /* EditorOption.inlineCompletionsAccessibilityVerbose */, 'inlineCompletionsAccessibilityVerbose', false, { description: _nls_js__WEBPACK_IMPORTED_MODULE_5__.localize('inlineCompletionsAccessibilityVerbose', \"Controls whether the accessibility hint should be provided to screen reader users when an inline completion is shown.\") })),\n suggestFontSize: register(new EditorIntOption(119 /* EditorOption.suggestFontSize */, 'suggestFontSize', 0, 0, 1000, { markdownDescription: _nls_js__WEBPACK_IMPORTED_MODULE_5__.localize('suggestFontSize', \"Font size for the suggest widget. When set to {0}, the value of {1} is used.\", '`0`', '`#editor.fontSize#`') })),\n suggestLineHeight: register(new EditorIntOption(120 /* EditorOption.suggestLineHeight */, 'suggestLineHeight', 0, 0, 1000, { markdownDescription: _nls_js__WEBPACK_IMPORTED_MODULE_5__.localize('suggestLineHeight', \"Line height for the suggest widget. When set to {0}, the value of {1} is used. The minimum value is 8.\", '`0`', '`#editor.lineHeight#`') })),\n suggestOnTriggerCharacters: register(new EditorBooleanOption(121 /* EditorOption.suggestOnTriggerCharacters */, 'suggestOnTriggerCharacters', true, { description: _nls_js__WEBPACK_IMPORTED_MODULE_5__.localize('suggestOnTriggerCharacters', \"Controls whether suggestions should automatically show up when typing trigger characters.\") })),\n suggestSelection: register(new EditorStringEnumOption(122 /* EditorOption.suggestSelection */, 'suggestSelection', 'first', ['first', 'recentlyUsed', 'recentlyUsedByPrefix'], {\n markdownEnumDescriptions: [\n _nls_js__WEBPACK_IMPORTED_MODULE_5__.localize('suggestSelection.first', \"Always select the first suggestion.\"),\n _nls_js__WEBPACK_IMPORTED_MODULE_5__.localize('suggestSelection.recentlyUsed', \"Select recent suggestions unless further typing selects one, e.g. `console.| -> console.log` because `log` has been completed recently.\"),\n _nls_js__WEBPACK_IMPORTED_MODULE_5__.localize('suggestSelection.recentlyUsedByPrefix', \"Select suggestions based on previous prefixes that have completed those suggestions, e.g. `co -> console` and `con -> const`.\"),\n ],\n description: _nls_js__WEBPACK_IMPORTED_MODULE_5__.localize('suggestSelection', \"Controls how suggestions are pre-selected when showing the suggest list.\")\n })),\n tabCompletion: register(new EditorStringEnumOption(123 /* EditorOption.tabCompletion */, 'tabCompletion', 'off', ['on', 'off', 'onlySnippets'], {\n enumDescriptions: [\n _nls_js__WEBPACK_IMPORTED_MODULE_5__.localize('tabCompletion.on', \"Tab complete will insert the best matching suggestion when pressing tab.\"),\n _nls_js__WEBPACK_IMPORTED_MODULE_5__.localize('tabCompletion.off', \"Disable tab completions.\"),\n _nls_js__WEBPACK_IMPORTED_MODULE_5__.localize('tabCompletion.onlySnippets', \"Tab complete snippets when their prefix match. Works best when 'quickSuggestions' aren't enabled.\"),\n ],\n description: _nls_js__WEBPACK_IMPORTED_MODULE_5__.localize('tabCompletion', \"Enables tab completions.\")\n })),\n tabIndex: register(new EditorIntOption(124 /* EditorOption.tabIndex */, 'tabIndex', 0, -1, 1073741824 /* Constants.MAX_SAFE_SMALL_INTEGER */)),\n unicodeHighlight: register(new UnicodeHighlight()),\n unusualLineTerminators: register(new EditorStringEnumOption(126 /* EditorOption.unusualLineTerminators */, 'unusualLineTerminators', 'prompt', ['auto', 'off', 'prompt'], {\n enumDescriptions: [\n _nls_js__WEBPACK_IMPORTED_MODULE_5__.localize('unusualLineTerminators.auto', \"Unusual line terminators are automatically removed.\"),\n _nls_js__WEBPACK_IMPORTED_MODULE_5__.localize('unusualLineTerminators.off', \"Unusual line terminators are ignored.\"),\n _nls_js__WEBPACK_IMPORTED_MODULE_5__.localize('unusualLineTerminators.prompt', \"Unusual line terminators prompt to be removed.\"),\n ],\n description: _nls_js__WEBPACK_IMPORTED_MODULE_5__.localize('unusualLineTerminators', \"Remove unusual line terminators that might cause problems.\")\n })),\n useShadowDOM: register(new EditorBooleanOption(127 /* EditorOption.useShadowDOM */, 'useShadowDOM', true)),\n useTabStops: register(new EditorBooleanOption(128 /* EditorOption.useTabStops */, 'useTabStops', true, { description: _nls_js__WEBPACK_IMPORTED_MODULE_5__.localize('useTabStops', \"Inserting and deleting whitespace follows tab stops.\") })),\n wordBreak: register(new EditorStringEnumOption(129 /* EditorOption.wordBreak */, 'wordBreak', 'normal', ['normal', 'keepAll'], {\n markdownEnumDescriptions: [\n _nls_js__WEBPACK_IMPORTED_MODULE_5__.localize('wordBreak.normal', \"Use the default line break rule.\"),\n _nls_js__WEBPACK_IMPORTED_MODULE_5__.localize('wordBreak.keepAll', \"Word breaks should not be used for Chinese/Japanese/Korean (CJK) text. Non-CJK text behavior is the same as for normal.\"),\n ],\n description: _nls_js__WEBPACK_IMPORTED_MODULE_5__.localize('wordBreak', \"Controls the word break rules used for Chinese/Japanese/Korean (CJK) text.\")\n })),\n wordSeparators: register(new EditorStringOption(130 /* EditorOption.wordSeparators */, 'wordSeparators', _core_wordHelper_js__WEBPACK_IMPORTED_MODULE_4__.USUAL_WORD_SEPARATORS, { description: _nls_js__WEBPACK_IMPORTED_MODULE_5__.localize('wordSeparators', \"Characters that will be used as word separators when doing word related navigations or operations.\") })),\n wordWrap: register(new EditorStringEnumOption(131 /* EditorOption.wordWrap */, 'wordWrap', 'off', ['off', 'on', 'wordWrapColumn', 'bounded'], {\n markdownEnumDescriptions: [\n _nls_js__WEBPACK_IMPORTED_MODULE_5__.localize('wordWrap.off', \"Lines will never wrap.\"),\n _nls_js__WEBPACK_IMPORTED_MODULE_5__.localize('wordWrap.on', \"Lines will wrap at the viewport width.\"),\n _nls_js__WEBPACK_IMPORTED_MODULE_5__.localize({\n key: 'wordWrap.wordWrapColumn',\n comment: [\n '- `editor.wordWrapColumn` refers to a different setting and should not be localized.'\n ]\n }, \"Lines will wrap at `#editor.wordWrapColumn#`.\"),\n _nls_js__WEBPACK_IMPORTED_MODULE_5__.localize({\n key: 'wordWrap.bounded',\n comment: [\n '- viewport means the edge of the visible window size.',\n '- `editor.wordWrapColumn` refers to a different setting and should not be localized.'\n ]\n }, \"Lines will wrap at the minimum of viewport and `#editor.wordWrapColumn#`.\"),\n ],\n description: _nls_js__WEBPACK_IMPORTED_MODULE_5__.localize({\n key: 'wordWrap',\n comment: [\n '- \\'off\\', \\'on\\', \\'wordWrapColumn\\' and \\'bounded\\' refer to values the setting can take and should not be localized.',\n '- `editor.wordWrapColumn` refers to a different setting and should not be localized.'\n ]\n }, \"Controls how lines should wrap.\")\n })),\n wordWrapBreakAfterCharacters: register(new EditorStringOption(132 /* EditorOption.wordWrapBreakAfterCharacters */, 'wordWrapBreakAfterCharacters', \n // allow-any-unicode-next-line\n ' \\t})]?|/&.,;¢°′″‰℃、。。、¢,.:;?!%・・ゝゞヽヾーァィゥェォッャュョヮヵヶぁぃぅぇぉっゃゅょゎゕゖㇰㇱㇲㇳㇴㇵㇶㇷㇸㇹㇺㇻㇼㇽㇾㇿ々〻ァィゥェォャュョッー”〉》」』】〕)]}」')),\n wordWrapBreakBeforeCharacters: register(new EditorStringOption(133 /* EditorOption.wordWrapBreakBeforeCharacters */, 'wordWrapBreakBeforeCharacters', \n // allow-any-unicode-next-line\n '([{‘“〈《「『【〔([{「£¥$£¥++')),\n wordWrapColumn: register(new EditorIntOption(134 /* EditorOption.wordWrapColumn */, 'wordWrapColumn', 80, 1, 1073741824 /* Constants.MAX_SAFE_SMALL_INTEGER */, {\n markdownDescription: _nls_js__WEBPACK_IMPORTED_MODULE_5__.localize({\n key: 'wordWrapColumn',\n comment: [\n '- `editor.wordWrap` refers to a different setting and should not be localized.',\n '- \\'wordWrapColumn\\' and \\'bounded\\' refer to values the different setting can take and should not be localized.'\n ]\n }, \"Controls the wrapping column of the editor when `#editor.wordWrap#` is `wordWrapColumn` or `bounded`.\")\n })),\n wordWrapOverride1: register(new EditorStringEnumOption(135 /* EditorOption.wordWrapOverride1 */, 'wordWrapOverride1', 'inherit', ['off', 'on', 'inherit'])),\n wordWrapOverride2: register(new EditorStringEnumOption(136 /* EditorOption.wordWrapOverride2 */, 'wordWrapOverride2', 'inherit', ['off', 'on', 'inherit'])),\n // Leave these at the end (because they have dependencies!)\n editorClassName: register(new EditorClassName()),\n defaultColorDecorators: register(new EditorBooleanOption(146 /* EditorOption.defaultColorDecorators */, 'defaultColorDecorators', false, { markdownDescription: _nls_js__WEBPACK_IMPORTED_MODULE_5__.localize('defaultColorDecorators', \"Controls whether inline color decorations should be shown using the default document color provider\") })),\n pixelRatio: register(new EditorPixelRatio()),\n tabFocusMode: register(new EditorBooleanOption(143 /* EditorOption.tabFocusMode */, 'tabFocusMode', false, { markdownDescription: _nls_js__WEBPACK_IMPORTED_MODULE_5__.localize('tabFocusMode', \"Controls whether the editor receives tabs or defers them to the workbench for navigation.\") })),\n layoutInfo: register(new EditorLayoutInfoComputer()),\n wrappingInfo: register(new EditorWrappingInfoComputer()),\n wrappingIndent: register(new WrappingIndentOption()),\n wrappingStrategy: register(new WrappingStrategy())\n};\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/common/config/editorOptions.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/common/config/editorZoom.js":
/*!******************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/common/config/editorZoom.js ***!
\******************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ EditorZoom: () => (/* binding */ EditorZoom)\n/* harmony export */ });\n/* harmony import */ var _base_common_event_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../base/common/event.js */ \"./node_modules/monaco-editor/esm/vs/base/common/event.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\nconst EditorZoom = new class {\n constructor() {\n this._zoomLevel = 0;\n this._onDidChangeZoomLevel = new _base_common_event_js__WEBPACK_IMPORTED_MODULE_0__.Emitter();\n this.onDidChangeZoomLevel = this._onDidChangeZoomLevel.event;\n }\n getZoomLevel() {\n return this._zoomLevel;\n }\n setZoomLevel(zoomLevel) {\n zoomLevel = Math.min(Math.max(-5, zoomLevel), 20);\n if (this._zoomLevel === zoomLevel) {\n return;\n }\n this._zoomLevel = zoomLevel;\n this._onDidChangeZoomLevel.fire(this._zoomLevel);\n }\n};\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/common/config/editorZoom.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/common/config/fontInfo.js":
/*!****************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/common/config/fontInfo.js ***!
\****************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ BareFontInfo: () => (/* binding */ BareFontInfo),\n/* harmony export */ FontInfo: () => (/* binding */ FontInfo),\n/* harmony export */ SERIALIZED_FONT_INFO_VERSION: () => (/* binding */ SERIALIZED_FONT_INFO_VERSION)\n/* harmony export */ });\n/* harmony import */ var _base_common_platform_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../base/common/platform.js */ \"./node_modules/monaco-editor/esm/vs/base/common/platform.js\");\n/* harmony import */ var _editorOptions_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./editorOptions.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/config/editorOptions.js\");\n/* harmony import */ var _editorZoom_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./editorZoom.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/config/editorZoom.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n\n\n/**\n * Determined from empirical observations.\n * @internal\n */\nconst GOLDEN_LINE_HEIGHT_RATIO = _base_common_platform_js__WEBPACK_IMPORTED_MODULE_0__.isMacintosh ? 1.5 : 1.35;\n/**\n * @internal\n */\nconst MINIMUM_LINE_HEIGHT = 8;\nclass BareFontInfo {\n /**\n * @internal\n */\n static createFromValidatedSettings(options, pixelRatio, ignoreEditorZoom) {\n const fontFamily = options.get(49 /* EditorOption.fontFamily */);\n const fontWeight = options.get(53 /* EditorOption.fontWeight */);\n const fontSize = options.get(52 /* EditorOption.fontSize */);\n const fontFeatureSettings = options.get(51 /* EditorOption.fontLigatures */);\n const fontVariationSettings = options.get(54 /* EditorOption.fontVariations */);\n const lineHeight = options.get(67 /* EditorOption.lineHeight */);\n const letterSpacing = options.get(64 /* EditorOption.letterSpacing */);\n return BareFontInfo._create(fontFamily, fontWeight, fontSize, fontFeatureSettings, fontVariationSettings, lineHeight, letterSpacing, pixelRatio, ignoreEditorZoom);\n }\n /**\n * @internal\n */\n static _create(fontFamily, fontWeight, fontSize, fontFeatureSettings, fontVariationSettings, lineHeight, letterSpacing, pixelRatio, ignoreEditorZoom) {\n if (lineHeight === 0) {\n lineHeight = GOLDEN_LINE_HEIGHT_RATIO * fontSize;\n }\n else if (lineHeight < MINIMUM_LINE_HEIGHT) {\n // Values too small to be line heights in pixels are in ems.\n lineHeight = lineHeight * fontSize;\n }\n // Enforce integer, minimum constraints\n lineHeight = Math.round(lineHeight);\n if (lineHeight < MINIMUM_LINE_HEIGHT) {\n lineHeight = MINIMUM_LINE_HEIGHT;\n }\n const editorZoomLevelMultiplier = 1 + (ignoreEditorZoom ? 0 : _editorZoom_js__WEBPACK_IMPORTED_MODULE_2__.EditorZoom.getZoomLevel() * 0.1);\n fontSize *= editorZoomLevelMultiplier;\n lineHeight *= editorZoomLevelMultiplier;\n if (fontVariationSettings === _editorOptions_js__WEBPACK_IMPORTED_MODULE_1__.EditorFontVariations.TRANSLATE) {\n if (fontWeight === 'normal' || fontWeight === 'bold') {\n fontVariationSettings = _editorOptions_js__WEBPACK_IMPORTED_MODULE_1__.EditorFontVariations.OFF;\n }\n else {\n const fontWeightAsNumber = parseInt(fontWeight, 10);\n fontVariationSettings = `'wght' ${fontWeightAsNumber}`;\n fontWeight = 'normal';\n }\n }\n return new BareFontInfo({\n pixelRatio: pixelRatio,\n fontFamily: fontFamily,\n fontWeight: fontWeight,\n fontSize: fontSize,\n fontFeatureSettings: fontFeatureSettings,\n fontVariationSettings,\n lineHeight: lineHeight,\n letterSpacing: letterSpacing\n });\n }\n /**\n * @internal\n */\n constructor(opts) {\n this._bareFontInfoBrand = undefined;\n this.pixelRatio = opts.pixelRatio;\n this.fontFamily = String(opts.fontFamily);\n this.fontWeight = String(opts.fontWeight);\n this.fontSize = opts.fontSize;\n this.fontFeatureSettings = opts.fontFeatureSettings;\n this.fontVariationSettings = opts.fontVariationSettings;\n this.lineHeight = opts.lineHeight | 0;\n this.letterSpacing = opts.letterSpacing;\n }\n /**\n * @internal\n */\n getId() {\n return `${this.pixelRatio}-${this.fontFamily}-${this.fontWeight}-${this.fontSize}-${this.fontFeatureSettings}-${this.fontVariationSettings}-${this.lineHeight}-${this.letterSpacing}`;\n }\n /**\n * @internal\n */\n getMassagedFontFamily() {\n const fallbackFontFamily = _editorOptions_js__WEBPACK_IMPORTED_MODULE_1__.EDITOR_FONT_DEFAULTS.fontFamily;\n const fontFamily = BareFontInfo._wrapInQuotes(this.fontFamily);\n if (fallbackFontFamily && this.fontFamily !== fallbackFontFamily) {\n return `${fontFamily}, ${fallbackFontFamily}`;\n }\n return fontFamily;\n }\n static _wrapInQuotes(fontFamily) {\n if (/[,\"']/.test(fontFamily)) {\n // Looks like the font family might be already escaped\n return fontFamily;\n }\n if (/[+ ]/.test(fontFamily)) {\n // Wrap a font family using + or with quotes\n return `\"${fontFamily}\"`;\n }\n return fontFamily;\n }\n}\n// change this whenever `FontInfo` members are changed\nconst SERIALIZED_FONT_INFO_VERSION = 2;\nclass FontInfo extends BareFontInfo {\n /**\n * @internal\n */\n constructor(opts, isTrusted) {\n super(opts);\n this._editorStylingBrand = undefined;\n this.version = SERIALIZED_FONT_INFO_VERSION;\n this.isTrusted = isTrusted;\n this.isMonospace = opts.isMonospace;\n this.typicalHalfwidthCharacterWidth = opts.typicalHalfwidthCharacterWidth;\n this.typicalFullwidthCharacterWidth = opts.typicalFullwidthCharacterWidth;\n this.canUseHalfwidthRightwardsArrow = opts.canUseHalfwidthRightwardsArrow;\n this.spaceWidth = opts.spaceWidth;\n this.middotWidth = opts.middotWidth;\n this.wsmiddotWidth = opts.wsmiddotWidth;\n this.maxDigitWidth = opts.maxDigitWidth;\n }\n /**\n * @internal\n */\n equals(other) {\n return (this.fontFamily === other.fontFamily\n && this.fontWeight === other.fontWeight\n && this.fontSize === other.fontSize\n && this.fontFeatureSettings === other.fontFeatureSettings\n && this.fontVariationSettings === other.fontVariationSettings\n && this.lineHeight === other.lineHeight\n && this.letterSpacing === other.letterSpacing\n && this.typicalHalfwidthCharacterWidth === other.typicalHalfwidthCharacterWidth\n && this.typicalFullwidthCharacterWidth === other.typicalFullwidthCharacterWidth\n && this.canUseHalfwidthRightwardsArrow === other.canUseHalfwidthRightwardsArrow\n && this.spaceWidth === other.spaceWidth\n && this.middotWidth === other.middotWidth\n && this.wsmiddotWidth === other.wsmiddotWidth\n && this.maxDigitWidth === other.maxDigitWidth);\n }\n}\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/common/config/fontInfo.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/common/core/characterClassifier.js":
/*!*************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/common/core/characterClassifier.js ***!
\*************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ CharacterClassifier: () => (/* binding */ CharacterClassifier),\n/* harmony export */ CharacterSet: () => (/* binding */ CharacterSet)\n/* harmony export */ });\n/* harmony import */ var _base_common_uint_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../base/common/uint.js */ \"./node_modules/monaco-editor/esm/vs/base/common/uint.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n/**\n * A fast character classifier that uses a compact array for ASCII values.\n */\nclass CharacterClassifier {\n constructor(_defaultValue) {\n const defaultValue = (0,_base_common_uint_js__WEBPACK_IMPORTED_MODULE_0__.toUint8)(_defaultValue);\n this._defaultValue = defaultValue;\n this._asciiMap = CharacterClassifier._createAsciiMap(defaultValue);\n this._map = new Map();\n }\n static _createAsciiMap(defaultValue) {\n const asciiMap = new Uint8Array(256);\n asciiMap.fill(defaultValue);\n return asciiMap;\n }\n set(charCode, _value) {\n const value = (0,_base_common_uint_js__WEBPACK_IMPORTED_MODULE_0__.toUint8)(_value);\n if (charCode >= 0 && charCode < 256) {\n this._asciiMap[charCode] = value;\n }\n else {\n this._map.set(charCode, value);\n }\n }\n get(charCode) {\n if (charCode >= 0 && charCode < 256) {\n return this._asciiMap[charCode];\n }\n else {\n return (this._map.get(charCode) || this._defaultValue);\n }\n }\n clear() {\n this._asciiMap.fill(this._defaultValue);\n this._map.clear();\n }\n}\nclass CharacterSet {\n constructor() {\n this._actual = new CharacterClassifier(0 /* Boolean.False */);\n }\n add(charCode) {\n this._actual.set(charCode, 1 /* Boolean.True */);\n }\n has(charCode) {\n return (this._actual.get(charCode) === 1 /* Boolean.True */);\n }\n clear() {\n return this._actual.clear();\n }\n}\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/common/core/characterClassifier.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/common/core/cursorColumns.js":
/*!*******************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/common/core/cursorColumns.js ***!
\*******************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ CursorColumns: () => (/* binding */ CursorColumns)\n/* harmony export */ });\n/* harmony import */ var _base_common_strings_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../base/common/strings.js */ \"./node_modules/monaco-editor/esm/vs/base/common/strings.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n/**\n * A column in a position is the gap between two adjacent characters. The methods here\n * work with a concept called \"visible column\". A visible column is a very rough approximation\n * of the horizontal screen position of a column. For example, using a tab size of 4:\n * ```txt\n * |||T|ext\n * | | | \\---- column = 4, visible column = 9\n * | | \\------ column = 3, visible column = 8\n * | \\------------ column = 2, visible column = 4\n * \\------------------ column = 1, visible column = 0\n * ```\n *\n * **NOTE**: Visual columns do not work well for RTL text or variable-width fonts or characters.\n *\n * **NOTE**: These methods work and make sense both on the model and on the view model.\n */\nclass CursorColumns {\n static _nextVisibleColumn(codePoint, visibleColumn, tabSize) {\n if (codePoint === 9 /* CharCode.Tab */) {\n return CursorColumns.nextRenderTabStop(visibleColumn, tabSize);\n }\n if (_base_common_strings_js__WEBPACK_IMPORTED_MODULE_0__.isFullWidthCharacter(codePoint) || _base_common_strings_js__WEBPACK_IMPORTED_MODULE_0__.isEmojiImprecise(codePoint)) {\n return visibleColumn + 2;\n }\n return visibleColumn + 1;\n }\n /**\n * Returns a visible column from a column.\n * @see {@link CursorColumns}\n */\n static visibleColumnFromColumn(lineContent, column, tabSize) {\n const textLen = Math.min(column - 1, lineContent.length);\n const text = lineContent.substring(0, textLen);\n const iterator = new _base_common_strings_js__WEBPACK_IMPORTED_MODULE_0__.GraphemeIterator(text);\n let result = 0;\n while (!iterator.eol()) {\n const codePoint = _base_common_strings_js__WEBPACK_IMPORTED_MODULE_0__.getNextCodePoint(text, textLen, iterator.offset);\n iterator.nextGraphemeLength();\n result = this._nextVisibleColumn(codePoint, result, tabSize);\n }\n return result;\n }\n /**\n * Returns a column from a visible column.\n * @see {@link CursorColumns}\n */\n static columnFromVisibleColumn(lineContent, visibleColumn, tabSize) {\n if (visibleColumn <= 0) {\n return 1;\n }\n const lineContentLength = lineContent.length;\n const iterator = new _base_common_strings_js__WEBPACK_IMPORTED_MODULE_0__.GraphemeIterator(lineContent);\n let beforeVisibleColumn = 0;\n let beforeColumn = 1;\n while (!iterator.eol()) {\n const codePoint = _base_common_strings_js__WEBPACK_IMPORTED_MODULE_0__.getNextCodePoint(lineContent, lineContentLength, iterator.offset);\n iterator.nextGraphemeLength();\n const afterVisibleColumn = this._nextVisibleColumn(codePoint, beforeVisibleColumn, tabSize);\n const afterColumn = iterator.offset + 1;\n if (afterVisibleColumn >= visibleColumn) {\n const beforeDelta = visibleColumn - beforeVisibleColumn;\n const afterDelta = afterVisibleColumn - visibleColumn;\n if (afterDelta < beforeDelta) {\n return afterColumn;\n }\n else {\n return beforeColumn;\n }\n }\n beforeVisibleColumn = afterVisibleColumn;\n beforeColumn = afterColumn;\n }\n // walked the entire string\n return lineContentLength + 1;\n }\n /**\n * ATTENTION: This works with 0-based columns (as opposed to the regular 1-based columns)\n * @see {@link CursorColumns}\n */\n static nextRenderTabStop(visibleColumn, tabSize) {\n return visibleColumn + tabSize - visibleColumn % tabSize;\n }\n /**\n * ATTENTION: This works with 0-based columns (as opposed to the regular 1-based columns)\n * @see {@link CursorColumns}\n */\n static nextIndentTabStop(visibleColumn, indentSize) {\n return visibleColumn + indentSize - visibleColumn % indentSize;\n }\n /**\n * ATTENTION: This works with 0-based columns (as opposed to the regular 1-based columns)\n * @see {@link CursorColumns}\n */\n static prevRenderTabStop(column, tabSize) {\n return Math.max(0, column - 1 - (column - 1) % tabSize);\n }\n /**\n * ATTENTION: This works with 0-based columns (as opposed to the regular 1-based columns)\n * @see {@link CursorColumns}\n */\n static prevIndentTabStop(column, indentSize) {\n return Math.max(0, column - 1 - (column - 1) % indentSize);\n }\n}\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/common/core/cursorColumns.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/common/core/editOperation.js":
/*!*******************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/common/core/editOperation.js ***!
\*******************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ EditOperation: () => (/* binding */ EditOperation)\n/* harmony export */ });\n/* harmony import */ var _range_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./range.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/core/range.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\nclass EditOperation {\n static insert(position, text) {\n return {\n range: new _range_js__WEBPACK_IMPORTED_MODULE_0__.Range(position.lineNumber, position.column, position.lineNumber, position.column),\n text: text,\n forceMoveMarkers: true\n };\n }\n static delete(range) {\n return {\n range: range,\n text: null\n };\n }\n static replace(range, text) {\n return {\n range: range,\n text: text\n };\n }\n static replaceMove(range, text) {\n return {\n range: range,\n text: text,\n forceMoveMarkers: true\n };\n }\n}\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/common/core/editOperation.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/common/core/editorColorRegistry.js":
/*!*************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/common/core/editorColorRegistry.js ***!
\*************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ deprecatedEditorActiveIndentGuides: () => (/* binding */ deprecatedEditorActiveIndentGuides),\n/* harmony export */ deprecatedEditorIndentGuides: () => (/* binding */ deprecatedEditorIndentGuides),\n/* harmony export */ editorActiveIndentGuide1: () => (/* binding */ editorActiveIndentGuide1),\n/* harmony export */ editorActiveIndentGuide2: () => (/* binding */ editorActiveIndentGuide2),\n/* harmony export */ editorActiveIndentGuide3: () => (/* binding */ editorActiveIndentGuide3),\n/* harmony export */ editorActiveIndentGuide4: () => (/* binding */ editorActiveIndentGuide4),\n/* harmony export */ editorActiveIndentGuide5: () => (/* binding */ editorActiveIndentGuide5),\n/* harmony export */ editorActiveIndentGuide6: () => (/* binding */ editorActiveIndentGuide6),\n/* harmony export */ editorActiveLineNumber: () => (/* binding */ editorActiveLineNumber),\n/* harmony export */ editorBracketHighlightingForeground1: () => (/* binding */ editorBracketHighlightingForeground1),\n/* harmony export */ editorBracketHighlightingForeground2: () => (/* binding */ editorBracketHighlightingForeground2),\n/* harmony export */ editorBracketHighlightingForeground3: () => (/* binding */ editorBracketHighlightingForeground3),\n/* harmony export */ editorBracketHighlightingForeground4: () => (/* binding */ editorBracketHighlightingForeground4),\n/* harmony export */ editorBracketHighlightingForeground5: () => (/* binding */ editorBracketHighlightingForeground5),\n/* harmony export */ editorBracketHighlightingForeground6: () => (/* binding */ editorBracketHighlightingForeground6),\n/* harmony export */ editorBracketHighlightingUnexpectedBracketForeground: () => (/* binding */ editorBracketHighlightingUnexpectedBracketForeground),\n/* harmony export */ editorBracketMatchBackground: () => (/* binding */ editorBracketMatchBackground),\n/* harmony export */ editorBracketMatchBorder: () => (/* binding */ editorBracketMatchBorder),\n/* harmony export */ editorBracketPairGuideActiveBackground1: () => (/* binding */ editorBracketPairGuideActiveBackground1),\n/* harmony export */ editorBracketPairGuideActiveBackground2: () => (/* binding */ editorBracketPairGuideActiveBackground2),\n/* harmony export */ editorBracketPairGuideActiveBackground3: () => (/* binding */ editorBracketPairGuideActiveBackground3),\n/* harmony export */ editorBracketPairGuideActiveBackground4: () => (/* binding */ editorBracketPairGuideActiveBackground4),\n/* harmony export */ editorBracketPairGuideActiveBackground5: () => (/* binding */ editorBracketPairGuideActiveBackground5),\n/* harmony export */ editorBracketPairGuideActiveBackground6: () => (/* binding */ editorBracketPairGuideActiveBackground6),\n/* harmony export */ editorBracketPairGuideBackground1: () => (/* binding */ editorBracketPairGuideBackground1),\n/* harmony export */ editorBracketPairGuideBackground2: () => (/* binding */ editorBracketPairGuideBackground2),\n/* harmony export */ editorBracketPairGuideBackground3: () => (/* binding */ editorBracketPairGuideBackground3),\n/* harmony export */ editorBracketPairGuideBackground4: () => (/* binding */ editorBracketPairGuideBackground4),\n/* harmony export */ editorBracketPairGuideBackground5: () => (/* binding */ editorBracketPairGuideBackground5),\n/* harmony export */ editorBracketPairGuideBackground6: () => (/* binding */ editorBracketPairGuideBackground6),\n/* harmony export */ editorCodeLensForeground: () => (/* binding */ editorCodeLensForeground),\n/* harmony export */ editorCursorBackground: () => (/* binding */ editorCursorBackground),\n/* harmony export */ editorCursorForeground: () => (/* binding */ editorCursorForeground),\n/* harmony export */ editorDimmedLineNumber: () => (/* binding */ editorDimmedLineNumber),\n/* harmony export */ editorGutter: () => (/* binding */ editorGutter),\n/* harmony export */ editorIndentGuide1: () => (/* binding */ editorIndentGuide1),\n/* harmony export */ editorIndentGuide2: () => (/* binding */ editorIndentGuide2),\n/* harmony export */ editorIndentGuide3: () => (/* binding */ editorIndentGuide3),\n/* harmony export */ editorIndentGuide4: () => (/* binding */ editorIndentGuide4),\n/* harmony export */ editorIndentGuide5: () => (/* binding */ editorIndentGuide5),\n/* harmony export */ editorIndentGuide6: () => (/* binding */ editorIndentGuide6),\n/* harmony export */ editorLineHighlight: () => (/* binding */ editorLineHighlight),\n/* harmony export */ editorLineHighlightBorder: () => (/* binding */ editorLineHighlightBorder),\n/* harmony export */ editorLineNumbers: () => (/* binding */ editorLineNumbers),\n/* harmony export */ editorOverviewRulerBackground: () => (/* binding */ editorOverviewRulerBackground),\n/* harmony export */ editorOverviewRulerBorder: () => (/* binding */ editorOverviewRulerBorder),\n/* harmony export */ editorRangeHighlight: () => (/* binding */ editorRangeHighlight),\n/* harmony export */ editorRangeHighlightBorder: () => (/* binding */ editorRangeHighlightBorder),\n/* harmony export */ editorRuler: () => (/* binding */ editorRuler),\n/* harmony export */ editorSymbolHighlight: () => (/* binding */ editorSymbolHighlight),\n/* harmony export */ editorSymbolHighlightBorder: () => (/* binding */ editorSymbolHighlightBorder),\n/* harmony export */ editorUnicodeHighlightBackground: () => (/* binding */ editorUnicodeHighlightBackground),\n/* harmony export */ editorUnicodeHighlightBorder: () => (/* binding */ editorUnicodeHighlightBorder),\n/* harmony export */ editorUnnecessaryCodeBorder: () => (/* binding */ editorUnnecessaryCodeBorder),\n/* harmony export */ editorUnnecessaryCodeOpacity: () => (/* binding */ editorUnnecessaryCodeOpacity),\n/* harmony export */ editorWhitespaces: () => (/* binding */ editorWhitespaces),\n/* harmony export */ ghostTextBackground: () => (/* binding */ ghostTextBackground),\n/* harmony export */ ghostTextBorder: () => (/* binding */ ghostTextBorder),\n/* harmony export */ ghostTextForeground: () => (/* binding */ ghostTextForeground),\n/* harmony export */ overviewRulerError: () => (/* binding */ overviewRulerError),\n/* harmony export */ overviewRulerInfo: () => (/* binding */ overviewRulerInfo),\n/* harmony export */ overviewRulerRangeHighlight: () => (/* binding */ overviewRulerRangeHighlight),\n/* harmony export */ overviewRulerWarning: () => (/* binding */ overviewRulerWarning)\n/* harmony export */ });\n/* harmony import */ var _nls_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../nls.js */ \"./node_modules/monaco-editor/esm/vs/nls.js\");\n/* harmony import */ var _base_common_color_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../base/common/color.js */ \"./node_modules/monaco-editor/esm/vs/base/common/color.js\");\n/* harmony import */ var _platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../platform/theme/common/colorRegistry.js */ \"./node_modules/monaco-editor/esm/vs/platform/theme/common/colorRegistry.js\");\n/* harmony import */ var _platform_theme_common_themeService_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../../platform/theme/common/themeService.js */ \"./node_modules/monaco-editor/esm/vs/platform/theme/common/themeService.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n\n\n\n/**\n * Definition of the editor colors\n */\nconst editorLineHighlight = (0,_platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_2__.registerColor)('editor.lineHighlightBackground', { dark: null, light: null, hcDark: null, hcLight: null }, _nls_js__WEBPACK_IMPORTED_MODULE_0__.localize('lineHighlight', 'Background color for the highlight of line at the cursor position.'));\nconst editorLineHighlightBorder = (0,_platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_2__.registerColor)('editor.lineHighlightBorder', { dark: '#282828', light: '#eeeeee', hcDark: '#f38518', hcLight: _platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_2__.contrastBorder }, _nls_js__WEBPACK_IMPORTED_MODULE_0__.localize('lineHighlightBorderBox', 'Background color for the border around the line at the cursor position.'));\nconst editorRangeHighlight = (0,_platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_2__.registerColor)('editor.rangeHighlightBackground', { dark: '#ffffff0b', light: '#fdff0033', hcDark: null, hcLight: null }, _nls_js__WEBPACK_IMPORTED_MODULE_0__.localize('rangeHighlight', 'Background color of highlighted ranges, like by quick open and find features. The color must not be opaque so as not to hide underlying decorations.'), true);\nconst editorRangeHighlightBorder = (0,_platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_2__.registerColor)('editor.rangeHighlightBorder', { dark: null, light: null, hcDark: _platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_2__.activeContrastBorder, hcLight: _platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_2__.activeContrastBorder }, _nls_js__WEBPACK_IMPORTED_MODULE_0__.localize('rangeHighlightBorder', 'Background color of the border around highlighted ranges.'), true);\nconst editorSymbolHighlight = (0,_platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_2__.registerColor)('editor.symbolHighlightBackground', { dark: _platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_2__.editorFindMatchHighlight, light: _platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_2__.editorFindMatchHighlight, hcDark: null, hcLight: null }, _nls_js__WEBPACK_IMPORTED_MODULE_0__.localize('symbolHighlight', 'Background color of highlighted symbol, like for go to definition or go next/previous symbol. The color must not be opaque so as not to hide underlying decorations.'), true);\nconst editorSymbolHighlightBorder = (0,_platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_2__.registerColor)('editor.symbolHighlightBorder', { dark: null, light: null, hcDark: _platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_2__.activeContrastBorder, hcLight: _platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_2__.activeContrastBorder }, _nls_js__WEBPACK_IMPORTED_MODULE_0__.localize('symbolHighlightBorder', 'Background color of the border around highlighted symbols.'), true);\nconst editorCursorForeground = (0,_platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_2__.registerColor)('editorCursor.foreground', { dark: '#AEAFAD', light: _base_common_color_js__WEBPACK_IMPORTED_MODULE_1__.Color.black, hcDark: _base_common_color_js__WEBPACK_IMPORTED_MODULE_1__.Color.white, hcLight: '#0F4A85' }, _nls_js__WEBPACK_IMPORTED_MODULE_0__.localize('caret', 'Color of the editor cursor.'));\nconst editorCursorBackground = (0,_platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_2__.registerColor)('editorCursor.background', null, _nls_js__WEBPACK_IMPORTED_MODULE_0__.localize('editorCursorBackground', 'The background color of the editor cursor. Allows customizing the color of a character overlapped by a block cursor.'));\nconst editorWhitespaces = (0,_platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_2__.registerColor)('editorWhitespace.foreground', { dark: '#e3e4e229', light: '#33333333', hcDark: '#e3e4e229', hcLight: '#CCCCCC' }, _nls_js__WEBPACK_IMPORTED_MODULE_0__.localize('editorWhitespaces', 'Color of whitespace characters in the editor.'));\nconst editorLineNumbers = (0,_platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_2__.registerColor)('editorLineNumber.foreground', { dark: '#858585', light: '#237893', hcDark: _base_common_color_js__WEBPACK_IMPORTED_MODULE_1__.Color.white, hcLight: '#292929' }, _nls_js__WEBPACK_IMPORTED_MODULE_0__.localize('editorLineNumbers', 'Color of editor line numbers.'));\nconst deprecatedEditorIndentGuides = (0,_platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_2__.registerColor)('editorIndentGuide.background', { dark: editorWhitespaces, light: editorWhitespaces, hcDark: editorWhitespaces, hcLight: editorWhitespaces }, _nls_js__WEBPACK_IMPORTED_MODULE_0__.localize('editorIndentGuides', 'Color of the editor indentation guides.'), false, _nls_js__WEBPACK_IMPORTED_MODULE_0__.localize('deprecatedEditorIndentGuides', '\\'editorIndentGuide.background\\' is deprecated. Use \\'editorIndentGuide.background1\\' instead.'));\nconst deprecatedEditorActiveIndentGuides = (0,_platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_2__.registerColor)('editorIndentGuide.activeBackground', { dark: editorWhitespaces, light: editorWhitespaces, hcDark: editorWhitespaces, hcLight: editorWhitespaces }, _nls_js__WEBPACK_IMPORTED_MODULE_0__.localize('editorActiveIndentGuide', 'Color of the active editor indentation guides.'), false, _nls_js__WEBPACK_IMPORTED_MODULE_0__.localize('deprecatedEditorActiveIndentGuide', '\\'editorIndentGuide.activeBackground\\' is deprecated. Use \\'editorIndentGuide.activeBackground1\\' instead.'));\nconst editorIndentGuide1 = (0,_platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_2__.registerColor)('editorIndentGuide.background1', { dark: deprecatedEditorIndentGuides, light: deprecatedEditorIndentGuides, hcDark: deprecatedEditorIndentGuides, hcLight: deprecatedEditorIndentGuides }, _nls_js__WEBPACK_IMPORTED_MODULE_0__.localize('editorIndentGuides1', 'Color of the editor indentation guides (1).'));\nconst editorIndentGuide2 = (0,_platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_2__.registerColor)('editorIndentGuide.background2', { dark: '#00000000', light: '#00000000', hcDark: '#00000000', hcLight: '#00000000' }, _nls_js__WEBPACK_IMPORTED_MODULE_0__.localize('editorIndentGuides2', 'Color of the editor indentation guides (2).'));\nconst editorIndentGuide3 = (0,_platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_2__.registerColor)('editorIndentGuide.background3', { dark: '#00000000', light: '#00000000', hcDark: '#00000000', hcLight: '#00000000' }, _nls_js__WEBPACK_IMPORTED_MODULE_0__.localize('editorIndentGuides3', 'Color of the editor indentation guides (3).'));\nconst editorIndentGuide4 = (0,_platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_2__.registerColor)('editorIndentGuide.background4', { dark: '#00000000', light: '#00000000', hcDark: '#00000000', hcLight: '#00000000' }, _nls_js__WEBPACK_IMPORTED_MODULE_0__.localize('editorIndentGuides4', 'Color of the editor indentation guides (4).'));\nconst editorIndentGuide5 = (0,_platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_2__.registerColor)('editorIndentGuide.background5', { dark: '#00000000', light: '#00000000', hcDark: '#00000000', hcLight: '#00000000' }, _nls_js__WEBPACK_IMPORTED_MODULE_0__.localize('editorIndentGuides5', 'Color of the editor indentation guides (5).'));\nconst editorIndentGuide6 = (0,_platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_2__.registerColor)('editorIndentGuide.background6', { dark: '#00000000', light: '#00000000', hcDark: '#00000000', hcLight: '#00000000' }, _nls_js__WEBPACK_IMPORTED_MODULE_0__.localize('editorIndentGuides6', 'Color of the editor indentation guides (6).'));\nconst editorActiveIndentGuide1 = (0,_platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_2__.registerColor)('editorIndentGuide.activeBackground1', { dark: deprecatedEditorActiveIndentGuides, light: deprecatedEditorActiveIndentGuides, hcDark: deprecatedEditorActiveIndentGuides, hcLight: deprecatedEditorActiveIndentGuides }, _nls_js__WEBPACK_IMPORTED_MODULE_0__.localize('editorActiveIndentGuide1', 'Color of the active editor indentation guides (1).'));\nconst editorActiveIndentGuide2 = (0,_platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_2__.registerColor)('editorIndentGuide.activeBackground2', { dark: '#00000000', light: '#00000000', hcDark: '#00000000', hcLight: '#00000000' }, _nls_js__WEBPACK_IMPORTED_MODULE_0__.localize('editorActiveIndentGuide2', 'Color of the active editor indentation guides (2).'));\nconst editorActiveIndentGuide3 = (0,_platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_2__.registerColor)('editorIndentGuide.activeBackground3', { dark: '#00000000', light: '#00000000', hcDark: '#00000000', hcLight: '#00000000' }, _nls_js__WEBPACK_IMPORTED_MODULE_0__.localize('editorActiveIndentGuide3', 'Color of the active editor indentation guides (3).'));\nconst editorActiveIndentGuide4 = (0,_platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_2__.registerColor)('editorIndentGuide.activeBackground4', { dark: '#00000000', light: '#00000000', hcDark: '#00000000', hcLight: '#00000000' }, _nls_js__WEBPACK_IMPORTED_MODULE_0__.localize('editorActiveIndentGuide4', 'Color of the active editor indentation guides (4).'));\nconst editorActiveIndentGuide5 = (0,_platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_2__.registerColor)('editorIndentGuide.activeBackground5', { dark: '#00000000', light: '#00000000', hcDark: '#00000000', hcLight: '#00000000' }, _nls_js__WEBPACK_IMPORTED_MODULE_0__.localize('editorActiveIndentGuide5', 'Color of the active editor indentation guides (5).'));\nconst editorActiveIndentGuide6 = (0,_platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_2__.registerColor)('editorIndentGuide.activeBackground6', { dark: '#00000000', light: '#00000000', hcDark: '#00000000', hcLight: '#00000000' }, _nls_js__WEBPACK_IMPORTED_MODULE_0__.localize('editorActiveIndentGuide6', 'Color of the active editor indentation guides (6).'));\nconst deprecatedEditorActiveLineNumber = (0,_platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_2__.registerColor)('editorActiveLineNumber.foreground', { dark: '#c6c6c6', light: '#0B216F', hcDark: _platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_2__.activeContrastBorder, hcLight: _platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_2__.activeContrastBorder }, _nls_js__WEBPACK_IMPORTED_MODULE_0__.localize('editorActiveLineNumber', 'Color of editor active line number'), false, _nls_js__WEBPACK_IMPORTED_MODULE_0__.localize('deprecatedEditorActiveLineNumber', 'Id is deprecated. Use \\'editorLineNumber.activeForeground\\' instead.'));\nconst editorActiveLineNumber = (0,_platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_2__.registerColor)('editorLineNumber.activeForeground', { dark: deprecatedEditorActiveLineNumber, light: deprecatedEditorActiveLineNumber, hcDark: deprecatedEditorActiveLineNumber, hcLight: deprecatedEditorActiveLineNumber }, _nls_js__WEBPACK_IMPORTED_MODULE_0__.localize('editorActiveLineNumber', 'Color of editor active line number'));\nconst editorDimmedLineNumber = (0,_platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_2__.registerColor)('editorLineNumber.dimmedForeground', { dark: null, light: null, hcDark: null, hcLight: null }, _nls_js__WEBPACK_IMPORTED_MODULE_0__.localize('editorDimmedLineNumber', 'Color of the final editor line when editor.renderFinalNewline is set to dimmed.'));\nconst editorRuler = (0,_platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_2__.registerColor)('editorRuler.foreground', { dark: '#5A5A5A', light: _base_common_color_js__WEBPACK_IMPORTED_MODULE_1__.Color.lightgrey, hcDark: _base_common_color_js__WEBPACK_IMPORTED_MODULE_1__.Color.white, hcLight: '#292929' }, _nls_js__WEBPACK_IMPORTED_MODULE_0__.localize('editorRuler', 'Color of the editor rulers.'));\nconst editorCodeLensForeground = (0,_platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_2__.registerColor)('editorCodeLens.foreground', { dark: '#999999', light: '#919191', hcDark: '#999999', hcLight: '#292929' }, _nls_js__WEBPACK_IMPORTED_MODULE_0__.localize('editorCodeLensForeground', 'Foreground color of editor CodeLens'));\nconst editorBracketMatchBackground = (0,_platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_2__.registerColor)('editorBracketMatch.background', { dark: '#0064001a', light: '#0064001a', hcDark: '#0064001a', hcLight: '#0000' }, _nls_js__WEBPACK_IMPORTED_MODULE_0__.localize('editorBracketMatchBackground', 'Background color behind matching brackets'));\nconst editorBracketMatchBorder = (0,_platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_2__.registerColor)('editorBracketMatch.border', { dark: '#888', light: '#B9B9B9', hcDark: _platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_2__.contrastBorder, hcLight: _platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_2__.contrastBorder }, _nls_js__WEBPACK_IMPORTED_MODULE_0__.localize('editorBracketMatchBorder', 'Color for matching brackets boxes'));\nconst editorOverviewRulerBorder = (0,_platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_2__.registerColor)('editorOverviewRuler.border', { dark: '#7f7f7f4d', light: '#7f7f7f4d', hcDark: '#7f7f7f4d', hcLight: '#666666' }, _nls_js__WEBPACK_IMPORTED_MODULE_0__.localize('editorOverviewRulerBorder', 'Color of the overview ruler border.'));\nconst editorOverviewRulerBackground = (0,_platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_2__.registerColor)('editorOverviewRuler.background', null, _nls_js__WEBPACK_IMPORTED_MODULE_0__.localize('editorOverviewRulerBackground', 'Background color of the editor overview ruler.'));\nconst editorGutter = (0,_platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_2__.registerColor)('editorGutter.background', { dark: _platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_2__.editorBackground, light: _platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_2__.editorBackground, hcDark: _platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_2__.editorBackground, hcLight: _platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_2__.editorBackground }, _nls_js__WEBPACK_IMPORTED_MODULE_0__.localize('editorGutter', 'Background color of the editor gutter. The gutter contains the glyph margins and the line numbers.'));\nconst editorUnnecessaryCodeBorder = (0,_platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_2__.registerColor)('editorUnnecessaryCode.border', { dark: null, light: null, hcDark: _base_common_color_js__WEBPACK_IMPORTED_MODULE_1__.Color.fromHex('#fff').transparent(0.8), hcLight: _platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_2__.contrastBorder }, _nls_js__WEBPACK_IMPORTED_MODULE_0__.localize('unnecessaryCodeBorder', 'Border color of unnecessary (unused) source code in the editor.'));\nconst editorUnnecessaryCodeOpacity = (0,_platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_2__.registerColor)('editorUnnecessaryCode.opacity', { dark: _base_common_color_js__WEBPACK_IMPORTED_MODULE_1__.Color.fromHex('#000a'), light: _base_common_color_js__WEBPACK_IMPORTED_MODULE_1__.Color.fromHex('#0007'), hcDark: null, hcLight: null }, _nls_js__WEBPACK_IMPORTED_MODULE_0__.localize('unnecessaryCodeOpacity', 'Opacity of unnecessary (unused) source code in the editor. For example, \"#000000c0\" will render the code with 75% opacity. For high contrast themes, use the \\'editorUnnecessaryCode.border\\' theme color to underline unnecessary code instead of fading it out.'));\nconst ghostTextBorder = (0,_platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_2__.registerColor)('editorGhostText.border', { dark: null, light: null, hcDark: _base_common_color_js__WEBPACK_IMPORTED_MODULE_1__.Color.fromHex('#fff').transparent(0.8), hcLight: _base_common_color_js__WEBPACK_IMPORTED_MODULE_1__.Color.fromHex('#292929').transparent(0.8) }, _nls_js__WEBPACK_IMPORTED_MODULE_0__.localize('editorGhostTextBorder', 'Border color of ghost text in the editor.'));\nconst ghostTextForeground = (0,_platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_2__.registerColor)('editorGhostText.foreground', { dark: _base_common_color_js__WEBPACK_IMPORTED_MODULE_1__.Color.fromHex('#ffffff56'), light: _base_common_color_js__WEBPACK_IMPORTED_MODULE_1__.Color.fromHex('#0007'), hcDark: null, hcLight: null }, _nls_js__WEBPACK_IMPORTED_MODULE_0__.localize('editorGhostTextForeground', 'Foreground color of the ghost text in the editor.'));\nconst ghostTextBackground = (0,_platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_2__.registerColor)('editorGhostText.background', { dark: null, light: null, hcDark: null, hcLight: null }, _nls_js__WEBPACK_IMPORTED_MODULE_0__.localize('editorGhostTextBackground', 'Background color of the ghost text in the editor.'));\nconst rulerRangeDefault = new _base_common_color_js__WEBPACK_IMPORTED_MODULE_1__.Color(new _base_common_color_js__WEBPACK_IMPORTED_MODULE_1__.RGBA(0, 122, 204, 0.6));\nconst overviewRulerRangeHighlight = (0,_platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_2__.registerColor)('editorOverviewRuler.rangeHighlightForeground', { dark: rulerRangeDefault, light: rulerRangeDefault, hcDark: rulerRangeDefault, hcLight: rulerRangeDefault }, _nls_js__WEBPACK_IMPORTED_MODULE_0__.localize('overviewRulerRangeHighlight', 'Overview ruler marker color for range highlights. The color must not be opaque so as not to hide underlying decorations.'), true);\nconst overviewRulerError = (0,_platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_2__.registerColor)('editorOverviewRuler.errorForeground', { dark: new _base_common_color_js__WEBPACK_IMPORTED_MODULE_1__.Color(new _base_common_color_js__WEBPACK_IMPORTED_MODULE_1__.RGBA(255, 18, 18, 0.7)), light: new _base_common_color_js__WEBPACK_IMPORTED_MODULE_1__.Color(new _base_common_color_js__WEBPACK_IMPORTED_MODULE_1__.RGBA(255, 18, 18, 0.7)), hcDark: new _base_common_color_js__WEBPACK_IMPORTED_MODULE_1__.Color(new _base_common_color_js__WEBPACK_IMPORTED_MODULE_1__.RGBA(255, 50, 50, 1)), hcLight: '#B5200D' }, _nls_js__WEBPACK_IMPORTED_MODULE_0__.localize('overviewRuleError', 'Overview ruler marker color for errors.'));\nconst overviewRulerWarning = (0,_platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_2__.registerColor)('editorOverviewRuler.warningForeground', { dark: _platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_2__.editorWarningForeground, light: _platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_2__.editorWarningForeground, hcDark: _platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_2__.editorWarningBorder, hcLight: _platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_2__.editorWarningBorder }, _nls_js__WEBPACK_IMPORTED_MODULE_0__.localize('overviewRuleWarning', 'Overview ruler marker color for warnings.'));\nconst overviewRulerInfo = (0,_platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_2__.registerColor)('editorOverviewRuler.infoForeground', { dark: _platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_2__.editorInfoForeground, light: _platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_2__.editorInfoForeground, hcDark: _platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_2__.editorInfoBorder, hcLight: _platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_2__.editorInfoBorder }, _nls_js__WEBPACK_IMPORTED_MODULE_0__.localize('overviewRuleInfo', 'Overview ruler marker color for infos.'));\nconst editorBracketHighlightingForeground1 = (0,_platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_2__.registerColor)('editorBracketHighlight.foreground1', { dark: '#FFD700', light: '#0431FAFF', hcDark: '#FFD700', hcLight: '#0431FAFF' }, _nls_js__WEBPACK_IMPORTED_MODULE_0__.localize('editorBracketHighlightForeground1', 'Foreground color of brackets (1). Requires enabling bracket pair colorization.'));\nconst editorBracketHighlightingForeground2 = (0,_platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_2__.registerColor)('editorBracketHighlight.foreground2', { dark: '#DA70D6', light: '#319331FF', hcDark: '#DA70D6', hcLight: '#319331FF' }, _nls_js__WEBPACK_IMPORTED_MODULE_0__.localize('editorBracketHighlightForeground2', 'Foreground color of brackets (2). Requires enabling bracket pair colorization.'));\nconst editorBracketHighlightingForeground3 = (0,_platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_2__.registerColor)('editorBracketHighlight.foreground3', { dark: '#179FFF', light: '#7B3814FF', hcDark: '#87CEFA', hcLight: '#7B3814FF' }, _nls_js__WEBPACK_IMPORTED_MODULE_0__.localize('editorBracketHighlightForeground3', 'Foreground color of brackets (3). Requires enabling bracket pair colorization.'));\nconst editorBracketHighlightingForeground4 = (0,_platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_2__.registerColor)('editorBracketHighlight.foreground4', { dark: '#00000000', light: '#00000000', hcDark: '#00000000', hcLight: '#00000000' }, _nls_js__WEBPACK_IMPORTED_MODULE_0__.localize('editorBracketHighlightForeground4', 'Foreground color of brackets (4). Requires enabling bracket pair colorization.'));\nconst editorBracketHighlightingForeground5 = (0,_platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_2__.registerColor)('editorBracketHighlight.foreground5', { dark: '#00000000', light: '#00000000', hcDark: '#00000000', hcLight: '#00000000' }, _nls_js__WEBPACK_IMPORTED_MODULE_0__.localize('editorBracketHighlightForeground5', 'Foreground color of brackets (5). Requires enabling bracket pair colorization.'));\nconst editorBracketHighlightingForeground6 = (0,_platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_2__.registerColor)('editorBracketHighlight.foreground6', { dark: '#00000000', light: '#00000000', hcDark: '#00000000', hcLight: '#00000000' }, _nls_js__WEBPACK_IMPORTED_MODULE_0__.localize('editorBracketHighlightForeground6', 'Foreground color of brackets (6). Requires enabling bracket pair colorization.'));\nconst editorBracketHighlightingUnexpectedBracketForeground = (0,_platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_2__.registerColor)('editorBracketHighlight.unexpectedBracket.foreground', { dark: new _base_common_color_js__WEBPACK_IMPORTED_MODULE_1__.Color(new _base_common_color_js__WEBPACK_IMPORTED_MODULE_1__.RGBA(255, 18, 18, 0.8)), light: new _base_common_color_js__WEBPACK_IMPORTED_MODULE_1__.Color(new _base_common_color_js__WEBPACK_IMPORTED_MODULE_1__.RGBA(255, 18, 18, 0.8)), hcDark: new _base_common_color_js__WEBPACK_IMPORTED_MODULE_1__.Color(new _base_common_color_js__WEBPACK_IMPORTED_MODULE_1__.RGBA(255, 50, 50, 1)), hcLight: '' }, _nls_js__WEBPACK_IMPORTED_MODULE_0__.localize('editorBracketHighlightUnexpectedBracketForeground', 'Foreground color of unexpected brackets.'));\nconst editorBracketPairGuideBackground1 = (0,_platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_2__.registerColor)('editorBracketPairGuide.background1', { dark: '#00000000', light: '#00000000', hcDark: '#00000000', hcLight: '#00000000' }, _nls_js__WEBPACK_IMPORTED_MODULE_0__.localize('editorBracketPairGuide.background1', 'Background color of inactive bracket pair guides (1). Requires enabling bracket pair guides.'));\nconst editorBracketPairGuideBackground2 = (0,_platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_2__.registerColor)('editorBracketPairGuide.background2', { dark: '#00000000', light: '#00000000', hcDark: '#00000000', hcLight: '#00000000' }, _nls_js__WEBPACK_IMPORTED_MODULE_0__.localize('editorBracketPairGuide.background2', 'Background color of inactive bracket pair guides (2). Requires enabling bracket pair guides.'));\nconst editorBracketPairGuideBackground3 = (0,_platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_2__.registerColor)('editorBracketPairGuide.background3', { dark: '#00000000', light: '#00000000', hcDark: '#00000000', hcLight: '#00000000' }, _nls_js__WEBPACK_IMPORTED_MODULE_0__.localize('editorBracketPairGuide.background3', 'Background color of inactive bracket pair guides (3). Requires enabling bracket pair guides.'));\nconst editorBracketPairGuideBackground4 = (0,_platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_2__.registerColor)('editorBracketPairGuide.background4', { dark: '#00000000', light: '#00000000', hcDark: '#00000000', hcLight: '#00000000' }, _nls_js__WEBPACK_IMPORTED_MODULE_0__.localize('editorBracketPairGuide.background4', 'Background color of inactive bracket pair guides (4). Requires enabling bracket pair guides.'));\nconst editorBracketPairGuideBackground5 = (0,_platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_2__.registerColor)('editorBracketPairGuide.background5', { dark: '#00000000', light: '#00000000', hcDark: '#00000000', hcLight: '#00000000' }, _nls_js__WEBPACK_IMPORTED_MODULE_0__.localize('editorBracketPairGuide.background5', 'Background color of inactive bracket pair guides (5). Requires enabling bracket pair guides.'));\nconst editorBracketPairGuideBackground6 = (0,_platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_2__.registerColor)('editorBracketPairGuide.background6', { dark: '#00000000', light: '#00000000', hcDark: '#00000000', hcLight: '#00000000' }, _nls_js__WEBPACK_IMPORTED_MODULE_0__.localize('editorBracketPairGuide.background6', 'Background color of inactive bracket pair guides (6). Requires enabling bracket pair guides.'));\nconst editorBracketPairGuideActiveBackground1 = (0,_platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_2__.registerColor)('editorBracketPairGuide.activeBackground1', { dark: '#00000000', light: '#00000000', hcDark: '#00000000', hcLight: '#00000000' }, _nls_js__WEBPACK_IMPORTED_MODULE_0__.localize('editorBracketPairGuide.activeBackground1', 'Background color of active bracket pair guides (1). Requires enabling bracket pair guides.'));\nconst editorBracketPairGuideActiveBackground2 = (0,_platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_2__.registerColor)('editorBracketPairGuide.activeBackground2', { dark: '#00000000', light: '#00000000', hcDark: '#00000000', hcLight: '#00000000' }, _nls_js__WEBPACK_IMPORTED_MODULE_0__.localize('editorBracketPairGuide.activeBackground2', 'Background color of active bracket pair guides (2). Requires enabling bracket pair guides.'));\nconst editorBracketPairGuideActiveBackground3 = (0,_platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_2__.registerColor)('editorBracketPairGuide.activeBackground3', { dark: '#00000000', light: '#00000000', hcDark: '#00000000', hcLight: '#00000000' }, _nls_js__WEBPACK_IMPORTED_MODULE_0__.localize('editorBracketPairGuide.activeBackground3', 'Background color of active bracket pair guides (3). Requires enabling bracket pair guides.'));\nconst editorBracketPairGuideActiveBackground4 = (0,_platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_2__.registerColor)('editorBracketPairGuide.activeBackground4', { dark: '#00000000', light: '#00000000', hcDark: '#00000000', hcLight: '#00000000' }, _nls_js__WEBPACK_IMPORTED_MODULE_0__.localize('editorBracketPairGuide.activeBackground4', 'Background color of active bracket pair guides (4). Requires enabling bracket pair guides.'));\nconst editorBracketPairGuideActiveBackground5 = (0,_platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_2__.registerColor)('editorBracketPairGuide.activeBackground5', { dark: '#00000000', light: '#00000000', hcDark: '#00000000', hcLight: '#00000000' }, _nls_js__WEBPACK_IMPORTED_MODULE_0__.localize('editorBracketPairGuide.activeBackground5', 'Background color of active bracket pair guides (5). Requires enabling bracket pair guides.'));\nconst editorBracketPairGuideActiveBackground6 = (0,_platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_2__.registerColor)('editorBracketPairGuide.activeBackground6', { dark: '#00000000', light: '#00000000', hcDark: '#00000000', hcLight: '#00000000' }, _nls_js__WEBPACK_IMPORTED_MODULE_0__.localize('editorBracketPairGuide.activeBackground6', 'Background color of active bracket pair guides (6). Requires enabling bracket pair guides.'));\nconst editorUnicodeHighlightBorder = (0,_platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_2__.registerColor)('editorUnicodeHighlight.border', { dark: _platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_2__.editorWarningForeground, light: _platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_2__.editorWarningForeground, hcDark: _platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_2__.editorWarningForeground, hcLight: _platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_2__.editorWarningForeground }, _nls_js__WEBPACK_IMPORTED_MODULE_0__.localize('editorUnicodeHighlight.border', 'Border color used to highlight unicode characters.'));\nconst editorUnicodeHighlightBackground = (0,_platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_2__.registerColor)('editorUnicodeHighlight.background', { dark: _platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_2__.editorWarningBackground, light: _platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_2__.editorWarningBackground, hcDark: _platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_2__.editorWarningBackground, hcLight: _platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_2__.editorWarningBackground }, _nls_js__WEBPACK_IMPORTED_MODULE_0__.localize('editorUnicodeHighlight.background', 'Background color used to highlight unicode characters.'));\n// contains all color rules that used to defined in editor/browser/widget/editor.css\n(0,_platform_theme_common_themeService_js__WEBPACK_IMPORTED_MODULE_3__.registerThemingParticipant)((theme, collector) => {\n const background = theme.getColor(_platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_2__.editorBackground);\n const lineHighlight = theme.getColor(editorLineHighlight);\n const imeBackground = (lineHighlight && !lineHighlight.isTransparent() ? lineHighlight : background);\n if (imeBackground) {\n collector.addRule(`.monaco-editor .inputarea.ime-input { background-color: ${imeBackground}; }`);\n }\n});\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/common/core/editorColorRegistry.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/common/core/eolCounter.js":
/*!****************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/common/core/eolCounter.js ***!
\****************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ countEOL: () => (/* binding */ countEOL)\n/* harmony export */ });\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\nfunction countEOL(text) {\n let eolCount = 0;\n let firstLineLength = 0;\n let lastLineStart = 0;\n let eol = 0 /* StringEOL.Unknown */;\n for (let i = 0, len = text.length; i < len; i++) {\n const chr = text.charCodeAt(i);\n if (chr === 13 /* CharCode.CarriageReturn */) {\n if (eolCount === 0) {\n firstLineLength = i;\n }\n eolCount++;\n if (i + 1 < len && text.charCodeAt(i + 1) === 10 /* CharCode.LineFeed */) {\n // \\r\\n... case\n eol |= 2 /* StringEOL.CRLF */;\n i++; // skip \\n\n }\n else {\n // \\r... case\n eol |= 3 /* StringEOL.Invalid */;\n }\n lastLineStart = i + 1;\n }\n else if (chr === 10 /* CharCode.LineFeed */) {\n // \\n... case\n eol |= 1 /* StringEOL.LF */;\n if (eolCount === 0) {\n firstLineLength = i;\n }\n eolCount++;\n lastLineStart = i + 1;\n }\n }\n if (eolCount === 0) {\n firstLineLength = text.length;\n }\n return [eolCount, firstLineLength, text.length - lastLineStart, eol];\n}\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/common/core/eolCounter.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/common/core/indentation.js":
/*!*****************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/common/core/indentation.js ***!
\*****************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ normalizeIndentation: () => (/* binding */ normalizeIndentation)\n/* harmony export */ });\n/* harmony import */ var _base_common_strings_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../base/common/strings.js */ \"./node_modules/monaco-editor/esm/vs/base/common/strings.js\");\n/* harmony import */ var _cursorColumns_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./cursorColumns.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/core/cursorColumns.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n\nfunction _normalizeIndentationFromWhitespace(str, indentSize, insertSpaces) {\n let spacesCnt = 0;\n for (let i = 0; i < str.length; i++) {\n if (str.charAt(i) === '\\t') {\n spacesCnt = _cursorColumns_js__WEBPACK_IMPORTED_MODULE_1__.CursorColumns.nextIndentTabStop(spacesCnt, indentSize);\n }\n else {\n spacesCnt++;\n }\n }\n let result = '';\n if (!insertSpaces) {\n const tabsCnt = Math.floor(spacesCnt / indentSize);\n spacesCnt = spacesCnt % indentSize;\n for (let i = 0; i < tabsCnt; i++) {\n result += '\\t';\n }\n }\n for (let i = 0; i < spacesCnt; i++) {\n result += ' ';\n }\n return result;\n}\nfunction normalizeIndentation(str, indentSize, insertSpaces) {\n let firstNonWhitespaceIndex = _base_common_strings_js__WEBPACK_IMPORTED_MODULE_0__.firstNonWhitespaceIndex(str);\n if (firstNonWhitespaceIndex === -1) {\n firstNonWhitespaceIndex = str.length;\n }\n return _normalizeIndentationFromWhitespace(str.substring(0, firstNonWhitespaceIndex), indentSize, insertSpaces) + str.substring(firstNonWhitespaceIndex);\n}\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/common/core/indentation.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/common/core/lineRange.js":
/*!***************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/common/core/lineRange.js ***!
\***************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ LineRange: () => (/* binding */ LineRange),\n/* harmony export */ LineRangeSet: () => (/* binding */ LineRangeSet)\n/* harmony export */ });\n/* harmony import */ var _base_common_errors_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../base/common/errors.js */ \"./node_modules/monaco-editor/esm/vs/base/common/errors.js\");\n/* harmony import */ var _offsetRange_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./offsetRange.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/core/offsetRange.js\");\n/* harmony import */ var _range_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./range.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/core/range.js\");\n/* harmony import */ var _base_common_arraysFind_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../../base/common/arraysFind.js */ \"./node_modules/monaco-editor/esm/vs/base/common/arraysFind.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n\n\n\n/**\n * A range of lines (1-based).\n */\nclass LineRange {\n static fromRangeInclusive(range) {\n return new LineRange(range.startLineNumber, range.endLineNumber + 1);\n }\n /**\n * @param lineRanges An array of sorted line ranges.\n */\n static joinMany(lineRanges) {\n if (lineRanges.length === 0) {\n return [];\n }\n let result = new LineRangeSet(lineRanges[0].slice());\n for (let i = 1; i < lineRanges.length; i++) {\n result = result.getUnion(new LineRangeSet(lineRanges[i].slice()));\n }\n return result.ranges;\n }\n static ofLength(startLineNumber, length) {\n return new LineRange(startLineNumber, startLineNumber + length);\n }\n /**\n * @internal\n */\n static deserialize(lineRange) {\n return new LineRange(lineRange[0], lineRange[1]);\n }\n constructor(startLineNumber, endLineNumberExclusive) {\n if (startLineNumber > endLineNumberExclusive) {\n throw new _base_common_errors_js__WEBPACK_IMPORTED_MODULE_0__.BugIndicatingError(`startLineNumber ${startLineNumber} cannot be after endLineNumberExclusive ${endLineNumberExclusive}`);\n }\n this.startLineNumber = startLineNumber;\n this.endLineNumberExclusive = endLineNumberExclusive;\n }\n /**\n * Indicates if this line range contains the given line number.\n */\n contains(lineNumber) {\n return this.startLineNumber <= lineNumber && lineNumber < this.endLineNumberExclusive;\n }\n /**\n * Indicates if this line range is empty.\n */\n get isEmpty() {\n return this.startLineNumber === this.endLineNumberExclusive;\n }\n /**\n * Moves this line range by the given offset of line numbers.\n */\n delta(offset) {\n return new LineRange(this.startLineNumber + offset, this.endLineNumberExclusive + offset);\n }\n deltaLength(offset) {\n return new LineRange(this.startLineNumber, this.endLineNumberExclusive + offset);\n }\n /**\n * The number of lines this line range spans.\n */\n get length() {\n return this.endLineNumberExclusive - this.startLineNumber;\n }\n /**\n * Creates a line range that combines this and the given line range.\n */\n join(other) {\n return new LineRange(Math.min(this.startLineNumber, other.startLineNumber), Math.max(this.endLineNumberExclusive, other.endLineNumberExclusive));\n }\n toString() {\n return `[${this.startLineNumber},${this.endLineNumberExclusive})`;\n }\n /**\n * The resulting range is empty if the ranges do not intersect, but touch.\n * If the ranges don't even touch, the result is undefined.\n */\n intersect(other) {\n const startLineNumber = Math.max(this.startLineNumber, other.startLineNumber);\n const endLineNumberExclusive = Math.min(this.endLineNumberExclusive, other.endLineNumberExclusive);\n if (startLineNumber <= endLineNumberExclusive) {\n return new LineRange(startLineNumber, endLineNumberExclusive);\n }\n return undefined;\n }\n intersectsStrict(other) {\n return this.startLineNumber < other.endLineNumberExclusive && other.startLineNumber < this.endLineNumberExclusive;\n }\n overlapOrTouch(other) {\n return this.startLineNumber <= other.endLineNumberExclusive && other.startLineNumber <= this.endLineNumberExclusive;\n }\n equals(b) {\n return this.startLineNumber === b.startLineNumber && this.endLineNumberExclusive === b.endLineNumberExclusive;\n }\n toInclusiveRange() {\n if (this.isEmpty) {\n return null;\n }\n return new _range_js__WEBPACK_IMPORTED_MODULE_2__.Range(this.startLineNumber, 1, this.endLineNumberExclusive - 1, Number.MAX_SAFE_INTEGER);\n }\n toExclusiveRange() {\n return new _range_js__WEBPACK_IMPORTED_MODULE_2__.Range(this.startLineNumber, 1, this.endLineNumberExclusive, 1);\n }\n mapToLineArray(f) {\n const result = [];\n for (let lineNumber = this.startLineNumber; lineNumber < this.endLineNumberExclusive; lineNumber++) {\n result.push(f(lineNumber));\n }\n return result;\n }\n forEach(f) {\n for (let lineNumber = this.startLineNumber; lineNumber < this.endLineNumberExclusive; lineNumber++) {\n f(lineNumber);\n }\n }\n /**\n * @internal\n */\n serialize() {\n return [this.startLineNumber, this.endLineNumberExclusive];\n }\n includes(lineNumber) {\n return this.startLineNumber <= lineNumber && lineNumber < this.endLineNumberExclusive;\n }\n /**\n * Converts this 1-based line range to a 0-based offset range (subtracts 1!).\n * @internal\n */\n toOffsetRange() {\n return new _offsetRange_js__WEBPACK_IMPORTED_MODULE_1__.OffsetRange(this.startLineNumber - 1, this.endLineNumberExclusive - 1);\n }\n}\nclass LineRangeSet {\n constructor(\n /**\n * Sorted by start line number.\n * No two line ranges are touching or intersecting.\n */\n _normalizedRanges = []) {\n this._normalizedRanges = _normalizedRanges;\n }\n get ranges() {\n return this._normalizedRanges;\n }\n addRange(range) {\n if (range.length === 0) {\n return;\n }\n // Idea: Find joinRange such that:\n // replaceRange = _normalizedRanges.replaceRange(joinRange, range.joinAll(joinRange.map(idx => this._normalizedRanges[idx])))\n // idx of first element that touches range or that is after range\n const joinRangeStartIdx = (0,_base_common_arraysFind_js__WEBPACK_IMPORTED_MODULE_3__.findFirstIdxMonotonousOrArrLen)(this._normalizedRanges, r => r.endLineNumberExclusive >= range.startLineNumber);\n // idx of element after { last element that touches range or that is before range }\n const joinRangeEndIdxExclusive = (0,_base_common_arraysFind_js__WEBPACK_IMPORTED_MODULE_3__.findLastIdxMonotonous)(this._normalizedRanges, r => r.startLineNumber <= range.endLineNumberExclusive) + 1;\n if (joinRangeStartIdx === joinRangeEndIdxExclusive) {\n // If there is no element that touches range, then joinRangeStartIdx === joinRangeEndIdxExclusive and that value is the index of the element after range\n this._normalizedRanges.splice(joinRangeStartIdx, 0, range);\n }\n else if (joinRangeStartIdx === joinRangeEndIdxExclusive - 1) {\n // Else, there is an element that touches range and in this case it is both the first and last element. Thus we can replace it\n const joinRange = this._normalizedRanges[joinRangeStartIdx];\n this._normalizedRanges[joinRangeStartIdx] = joinRange.join(range);\n }\n else {\n // First and last element are different - we need to replace the entire range\n const joinRange = this._normalizedRanges[joinRangeStartIdx].join(this._normalizedRanges[joinRangeEndIdxExclusive - 1]).join(range);\n this._normalizedRanges.splice(joinRangeStartIdx, joinRangeEndIdxExclusive - joinRangeStartIdx, joinRange);\n }\n }\n contains(lineNumber) {\n const rangeThatStartsBeforeEnd = (0,_base_common_arraysFind_js__WEBPACK_IMPORTED_MODULE_3__.findLastMonotonous)(this._normalizedRanges, r => r.startLineNumber <= lineNumber);\n return !!rangeThatStartsBeforeEnd && rangeThatStartsBeforeEnd.endLineNumberExclusive > lineNumber;\n }\n intersects(range) {\n const rangeThatStartsBeforeEnd = (0,_base_common_arraysFind_js__WEBPACK_IMPORTED_MODULE_3__.findLastMonotonous)(this._normalizedRanges, r => r.startLineNumber < range.endLineNumberExclusive);\n return !!rangeThatStartsBeforeEnd && rangeThatStartsBeforeEnd.endLineNumberExclusive > range.startLineNumber;\n }\n getUnion(other) {\n if (this._normalizedRanges.length === 0) {\n return other;\n }\n if (other._normalizedRanges.length === 0) {\n return this;\n }\n const result = [];\n let i1 = 0;\n let i2 = 0;\n let current = null;\n while (i1 < this._normalizedRanges.length || i2 < other._normalizedRanges.length) {\n let next = null;\n if (i1 < this._normalizedRanges.length && i2 < other._normalizedRanges.length) {\n const lineRange1 = this._normalizedRanges[i1];\n const lineRange2 = other._normalizedRanges[i2];\n if (lineRange1.startLineNumber < lineRange2.startLineNumber) {\n next = lineRange1;\n i1++;\n }\n else {\n next = lineRange2;\n i2++;\n }\n }\n else if (i1 < this._normalizedRanges.length) {\n next = this._normalizedRanges[i1];\n i1++;\n }\n else {\n next = other._normalizedRanges[i2];\n i2++;\n }\n if (current === null) {\n current = next;\n }\n else {\n if (current.endLineNumberExclusive >= next.startLineNumber) {\n // merge\n current = new LineRange(current.startLineNumber, Math.max(current.endLineNumberExclusive, next.endLineNumberExclusive));\n }\n else {\n // push\n result.push(current);\n current = next;\n }\n }\n }\n if (current !== null) {\n result.push(current);\n }\n return new LineRangeSet(result);\n }\n /**\n * Subtracts all ranges in this set from `range` and returns the result.\n */\n subtractFrom(range) {\n // idx of first element that touches range or that is after range\n const joinRangeStartIdx = (0,_base_common_arraysFind_js__WEBPACK_IMPORTED_MODULE_3__.findFirstIdxMonotonousOrArrLen)(this._normalizedRanges, r => r.endLineNumberExclusive >= range.startLineNumber);\n // idx of element after { last element that touches range or that is before range }\n const joinRangeEndIdxExclusive = (0,_base_common_arraysFind_js__WEBPACK_IMPORTED_MODULE_3__.findLastIdxMonotonous)(this._normalizedRanges, r => r.startLineNumber <= range.endLineNumberExclusive) + 1;\n if (joinRangeStartIdx === joinRangeEndIdxExclusive) {\n return new LineRangeSet([range]);\n }\n const result = [];\n let startLineNumber = range.startLineNumber;\n for (let i = joinRangeStartIdx; i < joinRangeEndIdxExclusive; i++) {\n const r = this._normalizedRanges[i];\n if (r.startLineNumber > startLineNumber) {\n result.push(new LineRange(startLineNumber, r.startLineNumber));\n }\n startLineNumber = r.endLineNumberExclusive;\n }\n if (startLineNumber < range.endLineNumberExclusive) {\n result.push(new LineRange(startLineNumber, range.endLineNumberExclusive));\n }\n return new LineRangeSet(result);\n }\n toString() {\n return this._normalizedRanges.map(r => r.toString()).join(', ');\n }\n getIntersection(other) {\n const result = [];\n let i1 = 0;\n let i2 = 0;\n while (i1 < this._normalizedRanges.length && i2 < other._normalizedRanges.length) {\n const r1 = this._normalizedRanges[i1];\n const r2 = other._normalizedRanges[i2];\n const i = r1.intersect(r2);\n if (i && !i.isEmpty) {\n result.push(i);\n }\n if (r1.endLineNumberExclusive < r2.endLineNumberExclusive) {\n i1++;\n }\n else {\n i2++;\n }\n }\n return new LineRangeSet(result);\n }\n getWithDelta(value) {\n return new LineRangeSet(this._normalizedRanges.map(r => r.delta(value)));\n }\n}\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/common/core/lineRange.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/common/core/offsetRange.js":
/*!*****************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/common/core/offsetRange.js ***!
\*****************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ OffsetRange: () => (/* binding */ OffsetRange),\n/* harmony export */ OffsetRangeSet: () => (/* binding */ OffsetRangeSet)\n/* harmony export */ });\n/* harmony import */ var _base_common_errors_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../base/common/errors.js */ \"./node_modules/monaco-editor/esm/vs/base/common/errors.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n/**\n * A range of offsets (0-based).\n*/\nclass OffsetRange {\n static addRange(range, sortedRanges) {\n let i = 0;\n while (i < sortedRanges.length && sortedRanges[i].endExclusive < range.start) {\n i++;\n }\n let j = i;\n while (j < sortedRanges.length && sortedRanges[j].start <= range.endExclusive) {\n j++;\n }\n if (i === j) {\n sortedRanges.splice(i, 0, range);\n }\n else {\n const start = Math.min(range.start, sortedRanges[i].start);\n const end = Math.max(range.endExclusive, sortedRanges[j - 1].endExclusive);\n sortedRanges.splice(i, j - i, new OffsetRange(start, end));\n }\n }\n static ofLength(length) {\n return new OffsetRange(0, length);\n }\n static ofStartAndLength(start, length) {\n return new OffsetRange(start, start + length);\n }\n constructor(start, endExclusive) {\n this.start = start;\n this.endExclusive = endExclusive;\n if (start > endExclusive) {\n throw new _base_common_errors_js__WEBPACK_IMPORTED_MODULE_0__.BugIndicatingError(`Invalid range: ${this.toString()}`);\n }\n }\n get isEmpty() {\n return this.start === this.endExclusive;\n }\n delta(offset) {\n return new OffsetRange(this.start + offset, this.endExclusive + offset);\n }\n deltaStart(offset) {\n return new OffsetRange(this.start + offset, this.endExclusive);\n }\n deltaEnd(offset) {\n return new OffsetRange(this.start, this.endExclusive + offset);\n }\n get length() {\n return this.endExclusive - this.start;\n }\n toString() {\n return `[${this.start}, ${this.endExclusive})`;\n }\n contains(offset) {\n return this.start <= offset && offset < this.endExclusive;\n }\n /**\n * for all numbers n: range1.contains(n) or range2.contains(n) => range1.join(range2).contains(n)\n * The joined range is the smallest range that contains both ranges.\n */\n join(other) {\n return new OffsetRange(Math.min(this.start, other.start), Math.max(this.endExclusive, other.endExclusive));\n }\n /**\n * for all numbers n: range1.contains(n) and range2.contains(n) <=> range1.intersect(range2).contains(n)\n *\n * The resulting range is empty if the ranges do not intersect, but touch.\n * If the ranges don't even touch, the result is undefined.\n */\n intersect(other) {\n const start = Math.max(this.start, other.start);\n const end = Math.min(this.endExclusive, other.endExclusive);\n if (start <= end) {\n return new OffsetRange(start, end);\n }\n return undefined;\n }\n intersects(other) {\n const start = Math.max(this.start, other.start);\n const end = Math.min(this.endExclusive, other.endExclusive);\n return start < end;\n }\n isBefore(other) {\n return this.endExclusive <= other.start;\n }\n isAfter(other) {\n return this.start >= other.endExclusive;\n }\n slice(arr) {\n return arr.slice(this.start, this.endExclusive);\n }\n /**\n * Returns the given value if it is contained in this instance, otherwise the closest value that is contained.\n * The range must not be empty.\n */\n clip(value) {\n if (this.isEmpty) {\n throw new _base_common_errors_js__WEBPACK_IMPORTED_MODULE_0__.BugIndicatingError(`Invalid clipping range: ${this.toString()}`);\n }\n return Math.max(this.start, Math.min(this.endExclusive - 1, value));\n }\n /**\n * Returns `r := value + k * length` such that `r` is contained in this range.\n * The range must not be empty.\n *\n * E.g. `[5, 10).clipCyclic(10) === 5`, `[5, 10).clipCyclic(11) === 6` and `[5, 10).clipCyclic(4) === 9`.\n */\n clipCyclic(value) {\n if (this.isEmpty) {\n throw new _base_common_errors_js__WEBPACK_IMPORTED_MODULE_0__.BugIndicatingError(`Invalid clipping range: ${this.toString()}`);\n }\n if (value < this.start) {\n return this.endExclusive - ((this.start - value) % this.length);\n }\n if (value >= this.endExclusive) {\n return this.start + ((value - this.start) % this.length);\n }\n return value;\n }\n forEach(f) {\n for (let i = this.start; i < this.endExclusive; i++) {\n f(i);\n }\n }\n}\nclass OffsetRangeSet {\n constructor() {\n this._sortedRanges = [];\n }\n addRange(range) {\n let i = 0;\n while (i < this._sortedRanges.length && this._sortedRanges[i].endExclusive < range.start) {\n i++;\n }\n let j = i;\n while (j < this._sortedRanges.length && this._sortedRanges[j].start <= range.endExclusive) {\n j++;\n }\n if (i === j) {\n this._sortedRanges.splice(i, 0, range);\n }\n else {\n const start = Math.min(range.start, this._sortedRanges[i].start);\n const end = Math.max(range.endExclusive, this._sortedRanges[j - 1].endExclusive);\n this._sortedRanges.splice(i, j - i, new OffsetRange(start, end));\n }\n }\n toString() {\n return this._sortedRanges.map(r => r.toString()).join(', ');\n }\n /**\n * Returns of there is a value that is contained in this instance and the given range.\n */\n intersectsStrict(other) {\n // TODO use binary search\n let i = 0;\n while (i < this._sortedRanges.length && this._sortedRanges[i].endExclusive <= other.start) {\n i++;\n }\n return i < this._sortedRanges.length && this._sortedRanges[i].start < other.endExclusive;\n }\n intersectWithRange(other) {\n // TODO use binary search + slice\n const result = new OffsetRangeSet();\n for (const range of this._sortedRanges) {\n const intersection = range.intersect(other);\n if (intersection) {\n result.addRange(intersection);\n }\n }\n return result;\n }\n intersectWithRangeLength(other) {\n return this.intersectWithRange(other).length;\n }\n get length() {\n return this._sortedRanges.reduce((prev, cur) => prev + cur.length, 0);\n }\n}\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/common/core/offsetRange.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/common/core/position.js":
/*!**************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/common/core/position.js ***!
\**************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ Position: () => (/* binding */ Position)\n/* harmony export */ });\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n/**\n * A position in the editor.\n */\nclass Position {\n constructor(lineNumber, column) {\n this.lineNumber = lineNumber;\n this.column = column;\n }\n /**\n * Create a new position from this position.\n *\n * @param newLineNumber new line number\n * @param newColumn new column\n */\n with(newLineNumber = this.lineNumber, newColumn = this.column) {\n if (newLineNumber === this.lineNumber && newColumn === this.column) {\n return this;\n }\n else {\n return new Position(newLineNumber, newColumn);\n }\n }\n /**\n * Derive a new position from this position.\n *\n * @param deltaLineNumber line number delta\n * @param deltaColumn column delta\n */\n delta(deltaLineNumber = 0, deltaColumn = 0) {\n return this.with(this.lineNumber + deltaLineNumber, this.column + deltaColumn);\n }\n /**\n * Test if this position equals other position\n */\n equals(other) {\n return Position.equals(this, other);\n }\n /**\n * Test if position `a` equals position `b`\n */\n static equals(a, b) {\n if (!a && !b) {\n return true;\n }\n return (!!a &&\n !!b &&\n a.lineNumber === b.lineNumber &&\n a.column === b.column);\n }\n /**\n * Test if this position is before other position.\n * If the two positions are equal, the result will be false.\n */\n isBefore(other) {\n return Position.isBefore(this, other);\n }\n /**\n * Test if position `a` is before position `b`.\n * If the two positions are equal, the result will be false.\n */\n static isBefore(a, b) {\n if (a.lineNumber < b.lineNumber) {\n return true;\n }\n if (b.lineNumber < a.lineNumber) {\n return false;\n }\n return a.column < b.column;\n }\n /**\n * Test if this position is before other position.\n * If the two positions are equal, the result will be true.\n */\n isBeforeOrEqual(other) {\n return Position.isBeforeOrEqual(this, other);\n }\n /**\n * Test if position `a` is before position `b`.\n * If the two positions are equal, the result will be true.\n */\n static isBeforeOrEqual(a, b) {\n if (a.lineNumber < b.lineNumber) {\n return true;\n }\n if (b.lineNumber < a.lineNumber) {\n return false;\n }\n return a.column <= b.column;\n }\n /**\n * A function that compares positions, useful for sorting\n */\n static compare(a, b) {\n const aLineNumber = a.lineNumber | 0;\n const bLineNumber = b.lineNumber | 0;\n if (aLineNumber === bLineNumber) {\n const aColumn = a.column | 0;\n const bColumn = b.column | 0;\n return aColumn - bColumn;\n }\n return aLineNumber - bLineNumber;\n }\n /**\n * Clone this position.\n */\n clone() {\n return new Position(this.lineNumber, this.column);\n }\n /**\n * Convert to a human-readable representation.\n */\n toString() {\n return '(' + this.lineNumber + ',' + this.column + ')';\n }\n // ---\n /**\n * Create a `Position` from an `IPosition`.\n */\n static lift(pos) {\n return new Position(pos.lineNumber, pos.column);\n }\n /**\n * Test if `obj` is an `IPosition`.\n */\n static isIPosition(obj) {\n return (obj\n && (typeof obj.lineNumber === 'number')\n && (typeof obj.column === 'number'));\n }\n toJSON() {\n return {\n lineNumber: this.lineNumber,\n column: this.column\n };\n }\n}\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/common/core/position.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/common/core/range.js":
/*!***********************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/common/core/range.js ***!
\***********************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ Range: () => (/* binding */ Range)\n/* harmony export */ });\n/* harmony import */ var _position_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./position.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/core/position.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n/**\n * A range in the editor. (startLineNumber,startColumn) is <= (endLineNumber,endColumn)\n */\nclass Range {\n constructor(startLineNumber, startColumn, endLineNumber, endColumn) {\n if ((startLineNumber > endLineNumber) || (startLineNumber === endLineNumber && startColumn > endColumn)) {\n this.startLineNumber = endLineNumber;\n this.startColumn = endColumn;\n this.endLineNumber = startLineNumber;\n this.endColumn = startColumn;\n }\n else {\n this.startLineNumber = startLineNumber;\n this.startColumn = startColumn;\n this.endLineNumber = endLineNumber;\n this.endColumn = endColumn;\n }\n }\n /**\n * Test if this range is empty.\n */\n isEmpty() {\n return Range.isEmpty(this);\n }\n /**\n * Test if `range` is empty.\n */\n static isEmpty(range) {\n return (range.startLineNumber === range.endLineNumber && range.startColumn === range.endColumn);\n }\n /**\n * Test if position is in this range. If the position is at the edges, will return true.\n */\n containsPosition(position) {\n return Range.containsPosition(this, position);\n }\n /**\n * Test if `position` is in `range`. If the position is at the edges, will return true.\n */\n static containsPosition(range, position) {\n if (position.lineNumber < range.startLineNumber || position.lineNumber > range.endLineNumber) {\n return false;\n }\n if (position.lineNumber === range.startLineNumber && position.column < range.startColumn) {\n return false;\n }\n if (position.lineNumber === range.endLineNumber && position.column > range.endColumn) {\n return false;\n }\n return true;\n }\n /**\n * Test if `position` is in `range`. If the position is at the edges, will return false.\n * @internal\n */\n static strictContainsPosition(range, position) {\n if (position.lineNumber < range.startLineNumber || position.lineNumber > range.endLineNumber) {\n return false;\n }\n if (position.lineNumber === range.startLineNumber && position.column <= range.startColumn) {\n return false;\n }\n if (position.lineNumber === range.endLineNumber && position.column >= range.endColumn) {\n return false;\n }\n return true;\n }\n /**\n * Test if range is in this range. If the range is equal to this range, will return true.\n */\n containsRange(range) {\n return Range.containsRange(this, range);\n }\n /**\n * Test if `otherRange` is in `range`. If the ranges are equal, will return true.\n */\n static containsRange(range, otherRange) {\n if (otherRange.startLineNumber < range.startLineNumber || otherRange.endLineNumber < range.startLineNumber) {\n return false;\n }\n if (otherRange.startLineNumber > range.endLineNumber || otherRange.endLineNumber > range.endLineNumber) {\n return false;\n }\n if (otherRange.startLineNumber === range.startLineNumber && otherRange.startColumn < range.startColumn) {\n return false;\n }\n if (otherRange.endLineNumber === range.endLineNumber && otherRange.endColumn > range.endColumn) {\n return false;\n }\n return true;\n }\n /**\n * Test if `range` is strictly in this range. `range` must start after and end before this range for the result to be true.\n */\n strictContainsRange(range) {\n return Range.strictContainsRange(this, range);\n }\n /**\n * Test if `otherRange` is strictly in `range` (must start after, and end before). If the ranges are equal, will return false.\n */\n static strictContainsRange(range, otherRange) {\n if (otherRange.startLineNumber < range.startLineNumber || otherRange.endLineNumber < range.startLineNumber) {\n return false;\n }\n if (otherRange.startLineNumber > range.endLineNumber || otherRange.endLineNumber > range.endLineNumber) {\n return false;\n }\n if (otherRange.startLineNumber === range.startLineNumber && otherRange.startColumn <= range.startColumn) {\n return false;\n }\n if (otherRange.endLineNumber === range.endLineNumber && otherRange.endColumn >= range.endColumn) {\n return false;\n }\n return true;\n }\n /**\n * A reunion of the two ranges.\n * The smallest position will be used as the start point, and the largest one as the end point.\n */\n plusRange(range) {\n return Range.plusRange(this, range);\n }\n /**\n * A reunion of the two ranges.\n * The smallest position will be used as the start point, and the largest one as the end point.\n */\n static plusRange(a, b) {\n let startLineNumber;\n let startColumn;\n let endLineNumber;\n let endColumn;\n if (b.startLineNumber < a.startLineNumber) {\n startLineNumber = b.startLineNumber;\n startColumn = b.startColumn;\n }\n else if (b.startLineNumber === a.startLineNumber) {\n startLineNumber = b.startLineNumber;\n startColumn = Math.min(b.startColumn, a.startColumn);\n }\n else {\n startLineNumber = a.startLineNumber;\n startColumn = a.startColumn;\n }\n if (b.endLineNumber > a.endLineNumber) {\n endLineNumber = b.endLineNumber;\n endColumn = b.endColumn;\n }\n else if (b.endLineNumber === a.endLineNumber) {\n endLineNumber = b.endLineNumber;\n endColumn = Math.max(b.endColumn, a.endColumn);\n }\n else {\n endLineNumber = a.endLineNumber;\n endColumn = a.endColumn;\n }\n return new Range(startLineNumber, startColumn, endLineNumber, endColumn);\n }\n /**\n * A intersection of the two ranges.\n */\n intersectRanges(range) {\n return Range.intersectRanges(this, range);\n }\n /**\n * A intersection of the two ranges.\n */\n static intersectRanges(a, b) {\n let resultStartLineNumber = a.startLineNumber;\n let resultStartColumn = a.startColumn;\n let resultEndLineNumber = a.endLineNumber;\n let resultEndColumn = a.endColumn;\n const otherStartLineNumber = b.startLineNumber;\n const otherStartColumn = b.startColumn;\n const otherEndLineNumber = b.endLineNumber;\n const otherEndColumn = b.endColumn;\n if (resultStartLineNumber < otherStartLineNumber) {\n resultStartLineNumber = otherStartLineNumber;\n resultStartColumn = otherStartColumn;\n }\n else if (resultStartLineNumber === otherStartLineNumber) {\n resultStartColumn = Math.max(resultStartColumn, otherStartColumn);\n }\n if (resultEndLineNumber > otherEndLineNumber) {\n resultEndLineNumber = otherEndLineNumber;\n resultEndColumn = otherEndColumn;\n }\n else if (resultEndLineNumber === otherEndLineNumber) {\n resultEndColumn = Math.min(resultEndColumn, otherEndColumn);\n }\n // Check if selection is now empty\n if (resultStartLineNumber > resultEndLineNumber) {\n return null;\n }\n if (resultStartLineNumber === resultEndLineNumber && resultStartColumn > resultEndColumn) {\n return null;\n }\n return new Range(resultStartLineNumber, resultStartColumn, resultEndLineNumber, resultEndColumn);\n }\n /**\n * Test if this range equals other.\n */\n equalsRange(other) {\n return Range.equalsRange(this, other);\n }\n /**\n * Test if range `a` equals `b`.\n */\n static equalsRange(a, b) {\n if (!a && !b) {\n return true;\n }\n return (!!a &&\n !!b &&\n a.startLineNumber === b.startLineNumber &&\n a.startColumn === b.startColumn &&\n a.endLineNumber === b.endLineNumber &&\n a.endColumn === b.endColumn);\n }\n /**\n * Return the end position (which will be after or equal to the start position)\n */\n getEndPosition() {\n return Range.getEndPosition(this);\n }\n /**\n * Return the end position (which will be after or equal to the start position)\n */\n static getEndPosition(range) {\n return new _position_js__WEBPACK_IMPORTED_MODULE_0__.Position(range.endLineNumber, range.endColumn);\n }\n /**\n * Return the start position (which will be before or equal to the end position)\n */\n getStartPosition() {\n return Range.getStartPosition(this);\n }\n /**\n * Return the start position (which will be before or equal to the end position)\n */\n static getStartPosition(range) {\n return new _position_js__WEBPACK_IMPORTED_MODULE_0__.Position(range.startLineNumber, range.startColumn);\n }\n /**\n * Transform to a user presentable string representation.\n */\n toString() {\n return '[' + this.startLineNumber + ',' + this.startColumn + ' -> ' + this.endLineNumber + ',' + this.endColumn + ']';\n }\n /**\n * Create a new range using this range's start position, and using endLineNumber and endColumn as the end position.\n */\n setEndPosition(endLineNumber, endColumn) {\n return new Range(this.startLineNumber, this.startColumn, endLineNumber, endColumn);\n }\n /**\n * Create a new range using this range's end position, and using startLineNumber and startColumn as the start position.\n */\n setStartPosition(startLineNumber, startColumn) {\n return new Range(startLineNumber, startColumn, this.endLineNumber, this.endColumn);\n }\n /**\n * Create a new empty range using this range's start position.\n */\n collapseToStart() {\n return Range.collapseToStart(this);\n }\n /**\n * Create a new empty range using this range's start position.\n */\n static collapseToStart(range) {\n return new Range(range.startLineNumber, range.startColumn, range.startLineNumber, range.startColumn);\n }\n /**\n * Create a new empty range using this range's end position.\n */\n collapseToEnd() {\n return Range.collapseToEnd(this);\n }\n /**\n * Create a new empty range using this range's end position.\n */\n static collapseToEnd(range) {\n return new Range(range.endLineNumber, range.endColumn, range.endLineNumber, range.endColumn);\n }\n /**\n * Moves the range by the given amount of lines.\n */\n delta(lineCount) {\n return new Range(this.startLineNumber + lineCount, this.startColumn, this.endLineNumber + lineCount, this.endColumn);\n }\n // ---\n static fromPositions(start, end = start) {\n return new Range(start.lineNumber, start.column, end.lineNumber, end.column);\n }\n static lift(range) {\n if (!range) {\n return null;\n }\n return new Range(range.startLineNumber, range.startColumn, range.endLineNumber, range.endColumn);\n }\n /**\n * Test if `obj` is an `IRange`.\n */\n static isIRange(obj) {\n return (obj\n && (typeof obj.startLineNumber === 'number')\n && (typeof obj.startColumn === 'number')\n && (typeof obj.endLineNumber === 'number')\n && (typeof obj.endColumn === 'number'));\n }\n /**\n * Test if the two ranges are touching in any way.\n */\n static areIntersectingOrTouching(a, b) {\n // Check if `a` is before `b`\n if (a.endLineNumber < b.startLineNumber || (a.endLineNumber === b.startLineNumber && a.endColumn < b.startColumn)) {\n return false;\n }\n // Check if `b` is before `a`\n if (b.endLineNumber < a.startLineNumber || (b.endLineNumber === a.startLineNumber && b.endColumn < a.startColumn)) {\n return false;\n }\n // These ranges must intersect\n return true;\n }\n /**\n * Test if the two ranges are intersecting. If the ranges are touching it returns true.\n */\n static areIntersecting(a, b) {\n // Check if `a` is before `b`\n if (a.endLineNumber < b.startLineNumber || (a.endLineNumber === b.startLineNumber && a.endColumn <= b.startColumn)) {\n return false;\n }\n // Check if `b` is before `a`\n if (b.endLineNumber < a.startLineNumber || (b.endLineNumber === a.startLineNumber && b.endColumn <= a.startColumn)) {\n return false;\n }\n // These ranges must intersect\n return true;\n }\n /**\n * A function that compares ranges, useful for sorting ranges\n * It will first compare ranges on the startPosition and then on the endPosition\n */\n static compareRangesUsingStarts(a, b) {\n if (a && b) {\n const aStartLineNumber = a.startLineNumber | 0;\n const bStartLineNumber = b.startLineNumber | 0;\n if (aStartLineNumber === bStartLineNumber) {\n const aStartColumn = a.startColumn | 0;\n const bStartColumn = b.startColumn | 0;\n if (aStartColumn === bStartColumn) {\n const aEndLineNumber = a.endLineNumber | 0;\n const bEndLineNumber = b.endLineNumber | 0;\n if (aEndLineNumber === bEndLineNumber) {\n const aEndColumn = a.endColumn | 0;\n const bEndColumn = b.endColumn | 0;\n return aEndColumn - bEndColumn;\n }\n return aEndLineNumber - bEndLineNumber;\n }\n return aStartColumn - bStartColumn;\n }\n return aStartLineNumber - bStartLineNumber;\n }\n const aExists = (a ? 1 : 0);\n const bExists = (b ? 1 : 0);\n return aExists - bExists;\n }\n /**\n * A function that compares ranges, useful for sorting ranges\n * It will first compare ranges on the endPosition and then on the startPosition\n */\n static compareRangesUsingEnds(a, b) {\n if (a.endLineNumber === b.endLineNumber) {\n if (a.endColumn === b.endColumn) {\n if (a.startLineNumber === b.startLineNumber) {\n return a.startColumn - b.startColumn;\n }\n return a.startLineNumber - b.startLineNumber;\n }\n return a.endColumn - b.endColumn;\n }\n return a.endLineNumber - b.endLineNumber;\n }\n /**\n * Test if the range spans multiple lines.\n */\n static spansMultipleLines(range) {\n return range.endLineNumber > range.startLineNumber;\n }\n toJSON() {\n return this;\n }\n}\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/common/core/range.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/common/core/rgba.js":
/*!**********************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/common/core/rgba.js ***!
\**********************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ RGBA8: () => (/* binding */ RGBA8)\n/* harmony export */ });\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n/**\n * A very VM friendly rgba datastructure.\n * Please don't touch unless you take a look at the IR.\n */\nclass RGBA8 {\n constructor(r, g, b, a) {\n this._rgba8Brand = undefined;\n this.r = RGBA8._clamp(r);\n this.g = RGBA8._clamp(g);\n this.b = RGBA8._clamp(b);\n this.a = RGBA8._clamp(a);\n }\n equals(other) {\n return (this.r === other.r\n && this.g === other.g\n && this.b === other.b\n && this.a === other.a);\n }\n static _clamp(c) {\n if (c < 0) {\n return 0;\n }\n if (c > 255) {\n return 255;\n }\n return c | 0;\n }\n}\nRGBA8.Empty = new RGBA8(0, 0, 0, 0);\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/common/core/rgba.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/common/core/selection.js":
/*!***************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/common/core/selection.js ***!
\***************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ Selection: () => (/* binding */ Selection)\n/* harmony export */ });\n/* harmony import */ var _position_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./position.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/core/position.js\");\n/* harmony import */ var _range_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./range.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/core/range.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n\n/**\n * A selection in the editor.\n * The selection is a range that has an orientation.\n */\nclass Selection extends _range_js__WEBPACK_IMPORTED_MODULE_1__.Range {\n constructor(selectionStartLineNumber, selectionStartColumn, positionLineNumber, positionColumn) {\n super(selectionStartLineNumber, selectionStartColumn, positionLineNumber, positionColumn);\n this.selectionStartLineNumber = selectionStartLineNumber;\n this.selectionStartColumn = selectionStartColumn;\n this.positionLineNumber = positionLineNumber;\n this.positionColumn = positionColumn;\n }\n /**\n * Transform to a human-readable representation.\n */\n toString() {\n return '[' + this.selectionStartLineNumber + ',' + this.selectionStartColumn + ' -> ' + this.positionLineNumber + ',' + this.positionColumn + ']';\n }\n /**\n * Test if equals other selection.\n */\n equalsSelection(other) {\n return (Selection.selectionsEqual(this, other));\n }\n /**\n * Test if the two selections are equal.\n */\n static selectionsEqual(a, b) {\n return (a.selectionStartLineNumber === b.selectionStartLineNumber &&\n a.selectionStartColumn === b.selectionStartColumn &&\n a.positionLineNumber === b.positionLineNumber &&\n a.positionColumn === b.positionColumn);\n }\n /**\n * Get directions (LTR or RTL).\n */\n getDirection() {\n if (this.selectionStartLineNumber === this.startLineNumber && this.selectionStartColumn === this.startColumn) {\n return 0 /* SelectionDirection.LTR */;\n }\n return 1 /* SelectionDirection.RTL */;\n }\n /**\n * Create a new selection with a different `positionLineNumber` and `positionColumn`.\n */\n setEndPosition(endLineNumber, endColumn) {\n if (this.getDirection() === 0 /* SelectionDirection.LTR */) {\n return new Selection(this.startLineNumber, this.startColumn, endLineNumber, endColumn);\n }\n return new Selection(endLineNumber, endColumn, this.startLineNumber, this.startColumn);\n }\n /**\n * Get the position at `positionLineNumber` and `positionColumn`.\n */\n getPosition() {\n return new _position_js__WEBPACK_IMPORTED_MODULE_0__.Position(this.positionLineNumber, this.positionColumn);\n }\n /**\n * Get the position at the start of the selection.\n */\n getSelectionStart() {\n return new _position_js__WEBPACK_IMPORTED_MODULE_0__.Position(this.selectionStartLineNumber, this.selectionStartColumn);\n }\n /**\n * Create a new selection with a different `selectionStartLineNumber` and `selectionStartColumn`.\n */\n setStartPosition(startLineNumber, startColumn) {\n if (this.getDirection() === 0 /* SelectionDirection.LTR */) {\n return new Selection(startLineNumber, startColumn, this.endLineNumber, this.endColumn);\n }\n return new Selection(this.endLineNumber, this.endColumn, startLineNumber, startColumn);\n }\n // ----\n /**\n * Create a `Selection` from one or two positions\n */\n static fromPositions(start, end = start) {\n return new Selection(start.lineNumber, start.column, end.lineNumber, end.column);\n }\n /**\n * Creates a `Selection` from a range, given a direction.\n */\n static fromRange(range, direction) {\n if (direction === 0 /* SelectionDirection.LTR */) {\n return new Selection(range.startLineNumber, range.startColumn, range.endLineNumber, range.endColumn);\n }\n else {\n return new Selection(range.endLineNumber, range.endColumn, range.startLineNumber, range.startColumn);\n }\n }\n /**\n * Create a `Selection` from an `ISelection`.\n */\n static liftSelection(sel) {\n return new Selection(sel.selectionStartLineNumber, sel.selectionStartColumn, sel.positionLineNumber, sel.positionColumn);\n }\n /**\n * `a` equals `b`.\n */\n static selectionsArrEqual(a, b) {\n if (a && !b || !a && b) {\n return false;\n }\n if (!a && !b) {\n return true;\n }\n if (a.length !== b.length) {\n return false;\n }\n for (let i = 0, len = a.length; i < len; i++) {\n if (!this.selectionsEqual(a[i], b[i])) {\n return false;\n }\n }\n return true;\n }\n /**\n * Test if `obj` is an `ISelection`.\n */\n static isISelection(obj) {\n return (obj\n && (typeof obj.selectionStartLineNumber === 'number')\n && (typeof obj.selectionStartColumn === 'number')\n && (typeof obj.positionLineNumber === 'number')\n && (typeof obj.positionColumn === 'number'));\n }\n /**\n * Create with a direction.\n */\n static createWithDirection(startLineNumber, startColumn, endLineNumber, endColumn, direction) {\n if (direction === 0 /* SelectionDirection.LTR */) {\n return new Selection(startLineNumber, startColumn, endLineNumber, endColumn);\n }\n return new Selection(endLineNumber, endColumn, startLineNumber, startColumn);\n }\n}\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/common/core/selection.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/common/core/stringBuilder.js":
/*!*******************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/common/core/stringBuilder.js ***!
\*******************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ StringBuilder: () => (/* binding */ StringBuilder),\n/* harmony export */ decodeUTF16LE: () => (/* binding */ decodeUTF16LE),\n/* harmony export */ getPlatformTextDecoder: () => (/* binding */ getPlatformTextDecoder)\n/* harmony export */ });\n/* harmony import */ var _base_common_strings_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../base/common/strings.js */ \"./node_modules/monaco-editor/esm/vs/base/common/strings.js\");\n/* harmony import */ var _base_common_platform_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../base/common/platform.js */ \"./node_modules/monaco-editor/esm/vs/base/common/platform.js\");\n/* harmony import */ var _base_common_buffer_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../base/common/buffer.js */ \"./node_modules/monaco-editor/esm/vs/base/common/buffer.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n\n\nlet _utf16LE_TextDecoder;\nfunction getUTF16LE_TextDecoder() {\n if (!_utf16LE_TextDecoder) {\n _utf16LE_TextDecoder = new TextDecoder('UTF-16LE');\n }\n return _utf16LE_TextDecoder;\n}\nlet _utf16BE_TextDecoder;\nfunction getUTF16BE_TextDecoder() {\n if (!_utf16BE_TextDecoder) {\n _utf16BE_TextDecoder = new TextDecoder('UTF-16BE');\n }\n return _utf16BE_TextDecoder;\n}\nlet _platformTextDecoder;\nfunction getPlatformTextDecoder() {\n if (!_platformTextDecoder) {\n _platformTextDecoder = _base_common_platform_js__WEBPACK_IMPORTED_MODULE_1__.isLittleEndian() ? getUTF16LE_TextDecoder() : getUTF16BE_TextDecoder();\n }\n return _platformTextDecoder;\n}\nfunction decodeUTF16LE(source, offset, len) {\n const view = new Uint16Array(source.buffer, offset, len);\n if (len > 0 && (view[0] === 0xFEFF || view[0] === 0xFFFE)) {\n // UTF16 sometimes starts with a BOM https://de.wikipedia.org/wiki/Byte_Order_Mark\n // It looks like TextDecoder.decode will eat up a leading BOM (0xFEFF or 0xFFFE)\n // We don't want that behavior because we know the string is UTF16LE and the BOM should be maintained\n // So we use the manual decoder\n return compatDecodeUTF16LE(source, offset, len);\n }\n return getUTF16LE_TextDecoder().decode(view);\n}\nfunction compatDecodeUTF16LE(source, offset, len) {\n const result = [];\n let resultLen = 0;\n for (let i = 0; i < len; i++) {\n const charCode = _base_common_buffer_js__WEBPACK_IMPORTED_MODULE_2__.readUInt16LE(source, offset);\n offset += 2;\n result[resultLen++] = String.fromCharCode(charCode);\n }\n return result.join('');\n}\nclass StringBuilder {\n constructor(capacity) {\n this._capacity = capacity | 0;\n this._buffer = new Uint16Array(this._capacity);\n this._completedStrings = null;\n this._bufferLength = 0;\n }\n reset() {\n this._completedStrings = null;\n this._bufferLength = 0;\n }\n build() {\n if (this._completedStrings !== null) {\n this._flushBuffer();\n return this._completedStrings.join('');\n }\n return this._buildBuffer();\n }\n _buildBuffer() {\n if (this._bufferLength === 0) {\n return '';\n }\n const view = new Uint16Array(this._buffer.buffer, 0, this._bufferLength);\n return getPlatformTextDecoder().decode(view);\n }\n _flushBuffer() {\n const bufferString = this._buildBuffer();\n this._bufferLength = 0;\n if (this._completedStrings === null) {\n this._completedStrings = [bufferString];\n }\n else {\n this._completedStrings[this._completedStrings.length] = bufferString;\n }\n }\n /**\n * Append a char code (<2^16)\n */\n appendCharCode(charCode) {\n const remainingSpace = this._capacity - this._bufferLength;\n if (remainingSpace <= 1) {\n if (remainingSpace === 0 || _base_common_strings_js__WEBPACK_IMPORTED_MODULE_0__.isHighSurrogate(charCode)) {\n this._flushBuffer();\n }\n }\n this._buffer[this._bufferLength++] = charCode;\n }\n /**\n * Append an ASCII char code (<2^8)\n */\n appendASCIICharCode(charCode) {\n if (this._bufferLength === this._capacity) {\n // buffer is full\n this._flushBuffer();\n }\n this._buffer[this._bufferLength++] = charCode;\n }\n appendString(str) {\n const strLen = str.length;\n if (this._bufferLength + strLen >= this._capacity) {\n // This string does not fit in the remaining buffer space\n this._flushBuffer();\n this._completedStrings[this._completedStrings.length] = str;\n return;\n }\n for (let i = 0; i < strLen; i++) {\n this._buffer[this._bufferLength++] = str.charCodeAt(i);\n }\n }\n}\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/common/core/stringBuilder.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/common/core/textChange.js":
/*!****************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/common/core/textChange.js ***!
\****************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ TextChange: () => (/* binding */ TextChange),\n/* harmony export */ compressConsecutiveTextChanges: () => (/* binding */ compressConsecutiveTextChanges)\n/* harmony export */ });\n/* harmony import */ var _base_common_buffer_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../base/common/buffer.js */ \"./node_modules/monaco-editor/esm/vs/base/common/buffer.js\");\n/* harmony import */ var _stringBuilder_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./stringBuilder.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/core/stringBuilder.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n\nfunction escapeNewLine(str) {\n return (str\n .replace(/\\n/g, '\\\\n')\n .replace(/\\r/g, '\\\\r'));\n}\nclass TextChange {\n get oldLength() {\n return this.oldText.length;\n }\n get oldEnd() {\n return this.oldPosition + this.oldText.length;\n }\n get newLength() {\n return this.newText.length;\n }\n get newEnd() {\n return this.newPosition + this.newText.length;\n }\n constructor(oldPosition, oldText, newPosition, newText) {\n this.oldPosition = oldPosition;\n this.oldText = oldText;\n this.newPosition = newPosition;\n this.newText = newText;\n }\n toString() {\n if (this.oldText.length === 0) {\n return `(insert@${this.oldPosition} \"${escapeNewLine(this.newText)}\")`;\n }\n if (this.newText.length === 0) {\n return `(delete@${this.oldPosition} \"${escapeNewLine(this.oldText)}\")`;\n }\n return `(replace@${this.oldPosition} \"${escapeNewLine(this.oldText)}\" with \"${escapeNewLine(this.newText)}\")`;\n }\n static _writeStringSize(str) {\n return (4 + 2 * str.length);\n }\n static _writeString(b, str, offset) {\n const len = str.length;\n _base_common_buffer_js__WEBPACK_IMPORTED_MODULE_0__.writeUInt32BE(b, len, offset);\n offset += 4;\n for (let i = 0; i < len; i++) {\n _base_common_buffer_js__WEBPACK_IMPORTED_MODULE_0__.writeUInt16LE(b, str.charCodeAt(i), offset);\n offset += 2;\n }\n return offset;\n }\n static _readString(b, offset) {\n const len = _base_common_buffer_js__WEBPACK_IMPORTED_MODULE_0__.readUInt32BE(b, offset);\n offset += 4;\n return (0,_stringBuilder_js__WEBPACK_IMPORTED_MODULE_1__.decodeUTF16LE)(b, offset, len);\n }\n writeSize() {\n return (+4 // oldPosition\n + 4 // newPosition\n + TextChange._writeStringSize(this.oldText)\n + TextChange._writeStringSize(this.newText));\n }\n write(b, offset) {\n _base_common_buffer_js__WEBPACK_IMPORTED_MODULE_0__.writeUInt32BE(b, this.oldPosition, offset);\n offset += 4;\n _base_common_buffer_js__WEBPACK_IMPORTED_MODULE_0__.writeUInt32BE(b, this.newPosition, offset);\n offset += 4;\n offset = TextChange._writeString(b, this.oldText, offset);\n offset = TextChange._writeString(b, this.newText, offset);\n return offset;\n }\n static read(b, offset, dest) {\n const oldPosition = _base_common_buffer_js__WEBPACK_IMPORTED_MODULE_0__.readUInt32BE(b, offset);\n offset += 4;\n const newPosition = _base_common_buffer_js__WEBPACK_IMPORTED_MODULE_0__.readUInt32BE(b, offset);\n offset += 4;\n const oldText = TextChange._readString(b, offset);\n offset += TextChange._writeStringSize(oldText);\n const newText = TextChange._readString(b, offset);\n offset += TextChange._writeStringSize(newText);\n dest.push(new TextChange(oldPosition, oldText, newPosition, newText));\n return offset;\n }\n}\nfunction compressConsecutiveTextChanges(prevEdits, currEdits) {\n if (prevEdits === null || prevEdits.length === 0) {\n return currEdits;\n }\n const compressor = new TextChangeCompressor(prevEdits, currEdits);\n return compressor.compress();\n}\nclass TextChangeCompressor {\n constructor(prevEdits, currEdits) {\n this._prevEdits = prevEdits;\n this._currEdits = currEdits;\n this._result = [];\n this._resultLen = 0;\n this._prevLen = this._prevEdits.length;\n this._prevDeltaOffset = 0;\n this._currLen = this._currEdits.length;\n this._currDeltaOffset = 0;\n }\n compress() {\n let prevIndex = 0;\n let currIndex = 0;\n let prevEdit = this._getPrev(prevIndex);\n let currEdit = this._getCurr(currIndex);\n while (prevIndex < this._prevLen || currIndex < this._currLen) {\n if (prevEdit === null) {\n this._acceptCurr(currEdit);\n currEdit = this._getCurr(++currIndex);\n continue;\n }\n if (currEdit === null) {\n this._acceptPrev(prevEdit);\n prevEdit = this._getPrev(++prevIndex);\n continue;\n }\n if (currEdit.oldEnd <= prevEdit.newPosition) {\n this._acceptCurr(currEdit);\n currEdit = this._getCurr(++currIndex);\n continue;\n }\n if (prevEdit.newEnd <= currEdit.oldPosition) {\n this._acceptPrev(prevEdit);\n prevEdit = this._getPrev(++prevIndex);\n continue;\n }\n if (currEdit.oldPosition < prevEdit.newPosition) {\n const [e1, e2] = TextChangeCompressor._splitCurr(currEdit, prevEdit.newPosition - currEdit.oldPosition);\n this._acceptCurr(e1);\n currEdit = e2;\n continue;\n }\n if (prevEdit.newPosition < currEdit.oldPosition) {\n const [e1, e2] = TextChangeCompressor._splitPrev(prevEdit, currEdit.oldPosition - prevEdit.newPosition);\n this._acceptPrev(e1);\n prevEdit = e2;\n continue;\n }\n // At this point, currEdit.oldPosition === prevEdit.newPosition\n let mergePrev;\n let mergeCurr;\n if (currEdit.oldEnd === prevEdit.newEnd) {\n mergePrev = prevEdit;\n mergeCurr = currEdit;\n prevEdit = this._getPrev(++prevIndex);\n currEdit = this._getCurr(++currIndex);\n }\n else if (currEdit.oldEnd < prevEdit.newEnd) {\n const [e1, e2] = TextChangeCompressor._splitPrev(prevEdit, currEdit.oldLength);\n mergePrev = e1;\n mergeCurr = currEdit;\n prevEdit = e2;\n currEdit = this._getCurr(++currIndex);\n }\n else {\n const [e1, e2] = TextChangeCompressor._splitCurr(currEdit, prevEdit.newLength);\n mergePrev = prevEdit;\n mergeCurr = e1;\n prevEdit = this._getPrev(++prevIndex);\n currEdit = e2;\n }\n this._result[this._resultLen++] = new TextChange(mergePrev.oldPosition, mergePrev.oldText, mergeCurr.newPosition, mergeCurr.newText);\n this._prevDeltaOffset += mergePrev.newLength - mergePrev.oldLength;\n this._currDeltaOffset += mergeCurr.newLength - mergeCurr.oldLength;\n }\n const merged = TextChangeCompressor._merge(this._result);\n const cleaned = TextChangeCompressor._removeNoOps(merged);\n return cleaned;\n }\n _acceptCurr(currEdit) {\n this._result[this._resultLen++] = TextChangeCompressor._rebaseCurr(this._prevDeltaOffset, currEdit);\n this._currDeltaOffset += currEdit.newLength - currEdit.oldLength;\n }\n _getCurr(currIndex) {\n return (currIndex < this._currLen ? this._currEdits[currIndex] : null);\n }\n _acceptPrev(prevEdit) {\n this._result[this._resultLen++] = TextChangeCompressor._rebasePrev(this._currDeltaOffset, prevEdit);\n this._prevDeltaOffset += prevEdit.newLength - prevEdit.oldLength;\n }\n _getPrev(prevIndex) {\n return (prevIndex < this._prevLen ? this._prevEdits[prevIndex] : null);\n }\n static _rebaseCurr(prevDeltaOffset, currEdit) {\n return new TextChange(currEdit.oldPosition - prevDeltaOffset, currEdit.oldText, currEdit.newPosition, currEdit.newText);\n }\n static _rebasePrev(currDeltaOffset, prevEdit) {\n return new TextChange(prevEdit.oldPosition, prevEdit.oldText, prevEdit.newPosition + currDeltaOffset, prevEdit.newText);\n }\n static _splitPrev(edit, offset) {\n const preText = edit.newText.substr(0, offset);\n const postText = edit.newText.substr(offset);\n return [\n new TextChange(edit.oldPosition, edit.oldText, edit.newPosition, preText),\n new TextChange(edit.oldEnd, '', edit.newPosition + offset, postText)\n ];\n }\n static _splitCurr(edit, offset) {\n const preText = edit.oldText.substr(0, offset);\n const postText = edit.oldText.substr(offset);\n return [\n new TextChange(edit.oldPosition, preText, edit.newPosition, edit.newText),\n new TextChange(edit.oldPosition + offset, postText, edit.newEnd, '')\n ];\n }\n static _merge(edits) {\n if (edits.length === 0) {\n return edits;\n }\n const result = [];\n let resultLen = 0;\n let prev = edits[0];\n for (let i = 1; i < edits.length; i++) {\n const curr = edits[i];\n if (prev.oldEnd === curr.oldPosition) {\n // Merge into `prev`\n prev = new TextChange(prev.oldPosition, prev.oldText + curr.oldText, prev.newPosition, prev.newText + curr.newText);\n }\n else {\n result[resultLen++] = prev;\n prev = curr;\n }\n }\n result[resultLen++] = prev;\n return result;\n }\n static _removeNoOps(edits) {\n if (edits.length === 0) {\n return edits;\n }\n const result = [];\n let resultLen = 0;\n for (let i = 0; i < edits.length; i++) {\n const edit = edits[i];\n if (edit.oldText === edit.newText) {\n continue;\n }\n result[resultLen++] = edit;\n }\n return result;\n }\n}\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/common/core/textChange.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/common/core/textModelDefaults.js":
/*!***********************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/common/core/textModelDefaults.js ***!
\***********************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ EDITOR_MODEL_DEFAULTS: () => (/* binding */ EDITOR_MODEL_DEFAULTS)\n/* harmony export */ });\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\nconst EDITOR_MODEL_DEFAULTS = {\n tabSize: 4,\n indentSize: 4,\n insertSpaces: true,\n detectIndentation: true,\n trimAutoWhitespace: true,\n largeFileOptimizations: true,\n bracketPairColorizationOptions: {\n enabled: true,\n independentColorPoolPerBracketType: false,\n },\n};\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/common/core/textModelDefaults.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/common/core/wordCharacterClassifier.js":
/*!*****************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/common/core/wordCharacterClassifier.js ***!
\*****************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ WordCharacterClassifier: () => (/* binding */ WordCharacterClassifier),\n/* harmony export */ getMapForWordSeparators: () => (/* binding */ getMapForWordSeparators)\n/* harmony export */ });\n/* harmony import */ var _characterClassifier_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./characterClassifier.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/core/characterClassifier.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\nclass WordCharacterClassifier extends _characterClassifier_js__WEBPACK_IMPORTED_MODULE_0__.CharacterClassifier {\n constructor(wordSeparators) {\n super(0 /* WordCharacterClass.Regular */);\n for (let i = 0, len = wordSeparators.length; i < len; i++) {\n this.set(wordSeparators.charCodeAt(i), 2 /* WordCharacterClass.WordSeparator */);\n }\n this.set(32 /* CharCode.Space */, 1 /* WordCharacterClass.Whitespace */);\n this.set(9 /* CharCode.Tab */, 1 /* WordCharacterClass.Whitespace */);\n }\n}\nfunction once(computeFn) {\n const cache = {}; // TODO@Alex unbounded cache\n return (input) => {\n if (!cache.hasOwnProperty(input)) {\n cache[input] = computeFn(input);\n }\n return cache[input];\n };\n}\nconst getMapForWordSeparators = once((input) => new WordCharacterClassifier(input));\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/common/core/wordCharacterClassifier.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/common/core/wordHelper.js":
/*!****************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/common/core/wordHelper.js ***!
\****************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ DEFAULT_WORD_REGEXP: () => (/* binding */ DEFAULT_WORD_REGEXP),\n/* harmony export */ USUAL_WORD_SEPARATORS: () => (/* binding */ USUAL_WORD_SEPARATORS),\n/* harmony export */ ensureValidWordDefinition: () => (/* binding */ ensureValidWordDefinition),\n/* harmony export */ getWordAtText: () => (/* binding */ getWordAtText)\n/* harmony export */ });\n/* harmony import */ var _base_common_iterator_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../base/common/iterator.js */ \"./node_modules/monaco-editor/esm/vs/base/common/iterator.js\");\n/* harmony import */ var _base_common_linkedList_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../base/common/linkedList.js */ \"./node_modules/monaco-editor/esm/vs/base/common/linkedList.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n\nconst USUAL_WORD_SEPARATORS = '`~!@#$%^&*()-=+[{]}\\\\|;:\\'\",.<>/?';\n/**\n * Create a word definition regular expression based on default word separators.\n * Optionally provide allowed separators that should be included in words.\n *\n * The default would look like this:\n * /(-?\\d*\\.\\d\\w*)|([^\\`\\~\\!\\@\\#\\$\\%\\^\\&\\*\\(\\)\\-\\=\\+\\[\\{\\]\\}\\\\\\|\\;\\:\\'\\\"\\,\\.\\<\\>\\/\\?\\s]+)/g\n */\nfunction createWordRegExp(allowInWords = '') {\n let source = '(-?\\\\d*\\\\.\\\\d\\\\w*)|([^';\n for (const sep of USUAL_WORD_SEPARATORS) {\n if (allowInWords.indexOf(sep) >= 0) {\n continue;\n }\n source += '\\\\' + sep;\n }\n source += '\\\\s]+)';\n return new RegExp(source, 'g');\n}\n// catches numbers (including floating numbers) in the first group, and alphanum in the second\nconst DEFAULT_WORD_REGEXP = createWordRegExp();\nfunction ensureValidWordDefinition(wordDefinition) {\n let result = DEFAULT_WORD_REGEXP;\n if (wordDefinition && (wordDefinition instanceof RegExp)) {\n if (!wordDefinition.global) {\n let flags = 'g';\n if (wordDefinition.ignoreCase) {\n flags += 'i';\n }\n if (wordDefinition.multiline) {\n flags += 'm';\n }\n if (wordDefinition.unicode) {\n flags += 'u';\n }\n result = new RegExp(wordDefinition.source, flags);\n }\n else {\n result = wordDefinition;\n }\n }\n result.lastIndex = 0;\n return result;\n}\nconst _defaultConfig = new _base_common_linkedList_js__WEBPACK_IMPORTED_MODULE_1__.LinkedList();\n_defaultConfig.unshift({\n maxLen: 1000,\n windowSize: 15,\n timeBudget: 150\n});\nfunction getWordAtText(column, wordDefinition, text, textOffset, config) {\n // Ensure the regex has the 'g' flag, otherwise this will loop forever\n wordDefinition = ensureValidWordDefinition(wordDefinition);\n if (!config) {\n config = _base_common_iterator_js__WEBPACK_IMPORTED_MODULE_0__.Iterable.first(_defaultConfig);\n }\n if (text.length > config.maxLen) {\n // don't throw strings that long at the regexp\n // but use a sub-string in which a word must occur\n let start = column - config.maxLen / 2;\n if (start < 0) {\n start = 0;\n }\n else {\n textOffset += start;\n }\n text = text.substring(start, column + config.maxLen / 2);\n return getWordAtText(column, wordDefinition, text, textOffset, config);\n }\n const t1 = Date.now();\n const pos = column - 1 - textOffset;\n let prevRegexIndex = -1;\n let match = null;\n for (let i = 1;; i++) {\n // check time budget\n if (Date.now() - t1 >= config.timeBudget) {\n break;\n }\n // reset the index at which the regexp should start matching, also know where it\n // should stop so that subsequent search don't repeat previous searches\n const regexIndex = pos - config.windowSize * i;\n wordDefinition.lastIndex = Math.max(0, regexIndex);\n const thisMatch = _findRegexMatchEnclosingPosition(wordDefinition, text, pos, prevRegexIndex);\n if (!thisMatch && match) {\n // stop: we have something\n break;\n }\n match = thisMatch;\n // stop: searched at start\n if (regexIndex <= 0) {\n break;\n }\n prevRegexIndex = regexIndex;\n }\n if (match) {\n const result = {\n word: match[0],\n startColumn: textOffset + 1 + match.index,\n endColumn: textOffset + 1 + match.index + match[0].length\n };\n wordDefinition.lastIndex = 0;\n return result;\n }\n return null;\n}\nfunction _findRegexMatchEnclosingPosition(wordDefinition, text, pos, stopPos) {\n let match;\n while (match = wordDefinition.exec(text)) {\n const matchIndex = match.index || 0;\n if (matchIndex <= pos && wordDefinition.lastIndex >= pos) {\n return match;\n }\n else if (stopPos > 0 && matchIndex > stopPos) {\n return null;\n }\n }\n return null;\n}\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/common/core/wordHelper.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/common/cursor/cursor.js":
/*!**************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/common/cursor/cursor.js ***!
\**************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ CursorsController: () => (/* binding */ CursorsController)\n/* harmony export */ });\n/* harmony import */ var _base_common_errors_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../base/common/errors.js */ \"./node_modules/monaco-editor/esm/vs/base/common/errors.js\");\n/* harmony import */ var _base_common_strings_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../base/common/strings.js */ \"./node_modules/monaco-editor/esm/vs/base/common/strings.js\");\n/* harmony import */ var _cursorCollection_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./cursorCollection.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/cursor/cursorCollection.js\");\n/* harmony import */ var _cursorCommon_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../cursorCommon.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/cursorCommon.js\");\n/* harmony import */ var _cursorContext_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./cursorContext.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/cursor/cursorContext.js\");\n/* harmony import */ var _cursorDeleteOperations_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./cursorDeleteOperations.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/cursor/cursorDeleteOperations.js\");\n/* harmony import */ var _cursorTypeOperations_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ./cursorTypeOperations.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/cursor/cursorTypeOperations.js\");\n/* harmony import */ var _core_range_js__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ../core/range.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/core/range.js\");\n/* harmony import */ var _core_selection_js__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ../core/selection.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/core/selection.js\");\n/* harmony import */ var _textModelEvents_js__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ../textModelEvents.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/textModelEvents.js\");\n/* harmony import */ var _viewEvents_js__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! ../viewEvents.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/viewEvents.js\");\n/* harmony import */ var _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(/*! ../../../base/common/lifecycle.js */ \"./node_modules/monaco-editor/esm/vs/base/common/lifecycle.js\");\n/* harmony import */ var _viewModelEventDispatcher_js__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(/*! ../viewModelEventDispatcher.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/viewModelEventDispatcher.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n\n\n\n\n\n\n\n\n\n\n\n\nclass CursorsController extends _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_11__.Disposable {\n constructor(model, viewModel, coordinatesConverter, cursorConfig) {\n super();\n this._model = model;\n this._knownModelVersionId = this._model.getVersionId();\n this._viewModel = viewModel;\n this._coordinatesConverter = coordinatesConverter;\n this.context = new _cursorContext_js__WEBPACK_IMPORTED_MODULE_4__.CursorContext(this._model, this._viewModel, this._coordinatesConverter, cursorConfig);\n this._cursors = new _cursorCollection_js__WEBPACK_IMPORTED_MODULE_2__.CursorCollection(this.context);\n this._hasFocus = false;\n this._isHandling = false;\n this._compositionState = null;\n this._columnSelectData = null;\n this._autoClosedActions = [];\n this._prevEditOperationType = 0 /* EditOperationType.Other */;\n }\n dispose() {\n this._cursors.dispose();\n this._autoClosedActions = (0,_base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_11__.dispose)(this._autoClosedActions);\n super.dispose();\n }\n updateConfiguration(cursorConfig) {\n this.context = new _cursorContext_js__WEBPACK_IMPORTED_MODULE_4__.CursorContext(this._model, this._viewModel, this._coordinatesConverter, cursorConfig);\n this._cursors.updateContext(this.context);\n }\n onLineMappingChanged(eventsCollector) {\n if (this._knownModelVersionId !== this._model.getVersionId()) {\n // There are model change events that I didn't yet receive.\n //\n // This can happen when editing the model, and the view model receives the change events first,\n // and the view model emits line mapping changed events, all before the cursor gets a chance to\n // recover from markers.\n //\n // The model change listener above will be called soon and we'll ensure a valid cursor state there.\n return;\n }\n // Ensure valid state\n this.setStates(eventsCollector, 'viewModel', 0 /* CursorChangeReason.NotSet */, this.getCursorStates());\n }\n setHasFocus(hasFocus) {\n this._hasFocus = hasFocus;\n }\n _validateAutoClosedActions() {\n if (this._autoClosedActions.length > 0) {\n const selections = this._cursors.getSelections();\n for (let i = 0; i < this._autoClosedActions.length; i++) {\n const autoClosedAction = this._autoClosedActions[i];\n if (!autoClosedAction.isValid(selections)) {\n autoClosedAction.dispose();\n this._autoClosedActions.splice(i, 1);\n i--;\n }\n }\n }\n }\n // ------ some getters/setters\n getPrimaryCursorState() {\n return this._cursors.getPrimaryCursor();\n }\n getLastAddedCursorIndex() {\n return this._cursors.getLastAddedCursorIndex();\n }\n getCursorStates() {\n return this._cursors.getAll();\n }\n setStates(eventsCollector, source, reason, states) {\n let reachedMaxCursorCount = false;\n const multiCursorLimit = this.context.cursorConfig.multiCursorLimit;\n if (states !== null && states.length > multiCursorLimit) {\n states = states.slice(0, multiCursorLimit);\n reachedMaxCursorCount = true;\n }\n const oldState = CursorModelState.from(this._model, this);\n this._cursors.setStates(states);\n this._cursors.normalize();\n this._columnSelectData = null;\n this._validateAutoClosedActions();\n return this._emitStateChangedIfNecessary(eventsCollector, source, reason, oldState, reachedMaxCursorCount);\n }\n setCursorColumnSelectData(columnSelectData) {\n this._columnSelectData = columnSelectData;\n }\n revealPrimary(eventsCollector, source, minimalReveal, verticalType, revealHorizontal, scrollType) {\n const viewPositions = this._cursors.getViewPositions();\n let revealViewRange = null;\n let revealViewSelections = null;\n if (viewPositions.length > 1) {\n revealViewSelections = this._cursors.getViewSelections();\n }\n else {\n revealViewRange = _core_range_js__WEBPACK_IMPORTED_MODULE_7__.Range.fromPositions(viewPositions[0], viewPositions[0]);\n }\n eventsCollector.emitViewEvent(new _viewEvents_js__WEBPACK_IMPORTED_MODULE_10__.ViewRevealRangeRequestEvent(source, minimalReveal, revealViewRange, revealViewSelections, verticalType, revealHorizontal, scrollType));\n }\n saveState() {\n const result = [];\n const selections = this._cursors.getSelections();\n for (let i = 0, len = selections.length; i < len; i++) {\n const selection = selections[i];\n result.push({\n inSelectionMode: !selection.isEmpty(),\n selectionStart: {\n lineNumber: selection.selectionStartLineNumber,\n column: selection.selectionStartColumn,\n },\n position: {\n lineNumber: selection.positionLineNumber,\n column: selection.positionColumn,\n }\n });\n }\n return result;\n }\n restoreState(eventsCollector, states) {\n const desiredSelections = [];\n for (let i = 0, len = states.length; i < len; i++) {\n const state = states[i];\n let positionLineNumber = 1;\n let positionColumn = 1;\n // Avoid missing properties on the literal\n if (state.position && state.position.lineNumber) {\n positionLineNumber = state.position.lineNumber;\n }\n if (state.position && state.position.column) {\n positionColumn = state.position.column;\n }\n let selectionStartLineNumber = positionLineNumber;\n let selectionStartColumn = positionColumn;\n // Avoid missing properties on the literal\n if (state.selectionStart && state.selectionStart.lineNumber) {\n selectionStartLineNumber = state.selectionStart.lineNumber;\n }\n if (state.selectionStart && state.selectionStart.column) {\n selectionStartColumn = state.selectionStart.column;\n }\n desiredSelections.push({\n selectionStartLineNumber: selectionStartLineNumber,\n selectionStartColumn: selectionStartColumn,\n positionLineNumber: positionLineNumber,\n positionColumn: positionColumn\n });\n }\n this.setStates(eventsCollector, 'restoreState', 0 /* CursorChangeReason.NotSet */, _cursorCommon_js__WEBPACK_IMPORTED_MODULE_3__.CursorState.fromModelSelections(desiredSelections));\n this.revealPrimary(eventsCollector, 'restoreState', false, 0 /* VerticalRevealType.Simple */, true, 1 /* editorCommon.ScrollType.Immediate */);\n }\n onModelContentChanged(eventsCollector, event) {\n if (event instanceof _textModelEvents_js__WEBPACK_IMPORTED_MODULE_9__.ModelInjectedTextChangedEvent) {\n // If injected texts change, the view positions of all cursors need to be updated.\n if (this._isHandling) {\n // The view positions will be updated when handling finishes\n return;\n }\n // setStates might remove markers, which could trigger a decoration change.\n // If there are injected text decorations for that line, `onModelContentChanged` is emitted again\n // and an endless recursion happens.\n // _isHandling prevents that.\n this._isHandling = true;\n try {\n this.setStates(eventsCollector, 'modelChange', 0 /* CursorChangeReason.NotSet */, this.getCursorStates());\n }\n finally {\n this._isHandling = false;\n }\n }\n else {\n const e = event.rawContentChangedEvent;\n this._knownModelVersionId = e.versionId;\n if (this._isHandling) {\n return;\n }\n const hadFlushEvent = e.containsEvent(1 /* RawContentChangedType.Flush */);\n this._prevEditOperationType = 0 /* EditOperationType.Other */;\n if (hadFlushEvent) {\n // a model.setValue() was called\n this._cursors.dispose();\n this._cursors = new _cursorCollection_js__WEBPACK_IMPORTED_MODULE_2__.CursorCollection(this.context);\n this._validateAutoClosedActions();\n this._emitStateChangedIfNecessary(eventsCollector, 'model', 1 /* CursorChangeReason.ContentFlush */, null, false);\n }\n else {\n if (this._hasFocus && e.resultingSelection && e.resultingSelection.length > 0) {\n const cursorState = _cursorCommon_js__WEBPACK_IMPORTED_MODULE_3__.CursorState.fromModelSelections(e.resultingSelection);\n if (this.setStates(eventsCollector, 'modelChange', e.isUndoing ? 5 /* CursorChangeReason.Undo */ : e.isRedoing ? 6 /* CursorChangeReason.Redo */ : 2 /* CursorChangeReason.RecoverFromMarkers */, cursorState)) {\n this.revealPrimary(eventsCollector, 'modelChange', false, 0 /* VerticalRevealType.Simple */, true, 0 /* editorCommon.ScrollType.Smooth */);\n }\n }\n else {\n const selectionsFromMarkers = this._cursors.readSelectionFromMarkers();\n this.setStates(eventsCollector, 'modelChange', 2 /* CursorChangeReason.RecoverFromMarkers */, _cursorCommon_js__WEBPACK_IMPORTED_MODULE_3__.CursorState.fromModelSelections(selectionsFromMarkers));\n }\n }\n }\n }\n getSelection() {\n return this._cursors.getPrimaryCursor().modelState.selection;\n }\n getTopMostViewPosition() {\n return this._cursors.getTopMostViewPosition();\n }\n getBottomMostViewPosition() {\n return this._cursors.getBottomMostViewPosition();\n }\n getCursorColumnSelectData() {\n if (this._columnSelectData) {\n return this._columnSelectData;\n }\n const primaryCursor = this._cursors.getPrimaryCursor();\n const viewSelectionStart = primaryCursor.viewState.selectionStart.getStartPosition();\n const viewPosition = primaryCursor.viewState.position;\n return {\n isReal: false,\n fromViewLineNumber: viewSelectionStart.lineNumber,\n fromViewVisualColumn: this.context.cursorConfig.visibleColumnFromColumn(this._viewModel, viewSelectionStart),\n toViewLineNumber: viewPosition.lineNumber,\n toViewVisualColumn: this.context.cursorConfig.visibleColumnFromColumn(this._viewModel, viewPosition),\n };\n }\n getSelections() {\n return this._cursors.getSelections();\n }\n setSelections(eventsCollector, source, selections, reason) {\n this.setStates(eventsCollector, source, reason, _cursorCommon_js__WEBPACK_IMPORTED_MODULE_3__.CursorState.fromModelSelections(selections));\n }\n getPrevEditOperationType() {\n return this._prevEditOperationType;\n }\n setPrevEditOperationType(type) {\n this._prevEditOperationType = type;\n }\n // ------ auxiliary handling logic\n _pushAutoClosedAction(autoClosedCharactersRanges, autoClosedEnclosingRanges) {\n const autoClosedCharactersDeltaDecorations = [];\n const autoClosedEnclosingDeltaDecorations = [];\n for (let i = 0, len = autoClosedCharactersRanges.length; i < len; i++) {\n autoClosedCharactersDeltaDecorations.push({\n range: autoClosedCharactersRanges[i],\n options: {\n description: 'auto-closed-character',\n inlineClassName: 'auto-closed-character',\n stickiness: 1 /* TrackedRangeStickiness.NeverGrowsWhenTypingAtEdges */\n }\n });\n autoClosedEnclosingDeltaDecorations.push({\n range: autoClosedEnclosingRanges[i],\n options: {\n description: 'auto-closed-enclosing',\n stickiness: 1 /* TrackedRangeStickiness.NeverGrowsWhenTypingAtEdges */\n }\n });\n }\n const autoClosedCharactersDecorations = this._model.deltaDecorations([], autoClosedCharactersDeltaDecorations);\n const autoClosedEnclosingDecorations = this._model.deltaDecorations([], autoClosedEnclosingDeltaDecorations);\n this._autoClosedActions.push(new AutoClosedAction(this._model, autoClosedCharactersDecorations, autoClosedEnclosingDecorations));\n }\n _executeEditOperation(opResult) {\n if (!opResult) {\n // Nothing to execute\n return;\n }\n if (opResult.shouldPushStackElementBefore) {\n this._model.pushStackElement();\n }\n const result = CommandExecutor.executeCommands(this._model, this._cursors.getSelections(), opResult.commands);\n if (result) {\n // The commands were applied correctly\n this._interpretCommandResult(result);\n // Check for auto-closing closed characters\n const autoClosedCharactersRanges = [];\n const autoClosedEnclosingRanges = [];\n for (let i = 0; i < opResult.commands.length; i++) {\n const command = opResult.commands[i];\n if (command instanceof _cursorTypeOperations_js__WEBPACK_IMPORTED_MODULE_6__.TypeWithAutoClosingCommand && command.enclosingRange && command.closeCharacterRange) {\n autoClosedCharactersRanges.push(command.closeCharacterRange);\n autoClosedEnclosingRanges.push(command.enclosingRange);\n }\n }\n if (autoClosedCharactersRanges.length > 0) {\n this._pushAutoClosedAction(autoClosedCharactersRanges, autoClosedEnclosingRanges);\n }\n this._prevEditOperationType = opResult.type;\n }\n if (opResult.shouldPushStackElementAfter) {\n this._model.pushStackElement();\n }\n }\n _interpretCommandResult(cursorState) {\n if (!cursorState || cursorState.length === 0) {\n cursorState = this._cursors.readSelectionFromMarkers();\n }\n this._columnSelectData = null;\n this._cursors.setSelections(cursorState);\n this._cursors.normalize();\n }\n // -----------------------------------------------------------------------------------------------------------\n // ----- emitting events\n _emitStateChangedIfNecessary(eventsCollector, source, reason, oldState, reachedMaxCursorCount) {\n const newState = CursorModelState.from(this._model, this);\n if (newState.equals(oldState)) {\n return false;\n }\n const selections = this._cursors.getSelections();\n const viewSelections = this._cursors.getViewSelections();\n // Let the view get the event first.\n eventsCollector.emitViewEvent(new _viewEvents_js__WEBPACK_IMPORTED_MODULE_10__.ViewCursorStateChangedEvent(viewSelections, selections, reason));\n // Only after the view has been notified, let the rest of the world know...\n if (!oldState\n || oldState.cursorState.length !== newState.cursorState.length\n || newState.cursorState.some((newCursorState, i) => !newCursorState.modelState.equals(oldState.cursorState[i].modelState))) {\n const oldSelections = oldState ? oldState.cursorState.map(s => s.modelState.selection) : null;\n const oldModelVersionId = oldState ? oldState.modelVersionId : 0;\n eventsCollector.emitOutgoingEvent(new _viewModelEventDispatcher_js__WEBPACK_IMPORTED_MODULE_12__.CursorStateChangedEvent(oldSelections, selections, oldModelVersionId, newState.modelVersionId, source || 'keyboard', reason, reachedMaxCursorCount));\n }\n return true;\n }\n // -----------------------------------------------------------------------------------------------------------\n // ----- handlers beyond this point\n _findAutoClosingPairs(edits) {\n if (!edits.length) {\n return null;\n }\n const indices = [];\n for (let i = 0, len = edits.length; i < len; i++) {\n const edit = edits[i];\n if (!edit.text || edit.text.indexOf('\\n') >= 0) {\n return null;\n }\n const m = edit.text.match(/([)\\]}>'\"`])([^)\\]}>'\"`]*)$/);\n if (!m) {\n return null;\n }\n const closeChar = m[1];\n const autoClosingPairsCandidates = this.context.cursorConfig.autoClosingPairs.autoClosingPairsCloseSingleChar.get(closeChar);\n if (!autoClosingPairsCandidates || autoClosingPairsCandidates.length !== 1) {\n return null;\n }\n const openChar = autoClosingPairsCandidates[0].open;\n const closeCharIndex = edit.text.length - m[2].length - 1;\n const openCharIndex = edit.text.lastIndexOf(openChar, closeCharIndex - 1);\n if (openCharIndex === -1) {\n return null;\n }\n indices.push([openCharIndex, closeCharIndex]);\n }\n return indices;\n }\n executeEdits(eventsCollector, source, edits, cursorStateComputer) {\n let autoClosingIndices = null;\n if (source === 'snippet') {\n autoClosingIndices = this._findAutoClosingPairs(edits);\n }\n if (autoClosingIndices) {\n edits[0]._isTracked = true;\n }\n const autoClosedCharactersRanges = [];\n const autoClosedEnclosingRanges = [];\n const selections = this._model.pushEditOperations(this.getSelections(), edits, (undoEdits) => {\n if (autoClosingIndices) {\n for (let i = 0, len = autoClosingIndices.length; i < len; i++) {\n const [openCharInnerIndex, closeCharInnerIndex] = autoClosingIndices[i];\n const undoEdit = undoEdits[i];\n const lineNumber = undoEdit.range.startLineNumber;\n const openCharIndex = undoEdit.range.startColumn - 1 + openCharInnerIndex;\n const closeCharIndex = undoEdit.range.startColumn - 1 + closeCharInnerIndex;\n autoClosedCharactersRanges.push(new _core_range_js__WEBPACK_IMPORTED_MODULE_7__.Range(lineNumber, closeCharIndex + 1, lineNumber, closeCharIndex + 2));\n autoClosedEnclosingRanges.push(new _core_range_js__WEBPACK_IMPORTED_MODULE_7__.Range(lineNumber, openCharIndex + 1, lineNumber, closeCharIndex + 2));\n }\n }\n const selections = cursorStateComputer(undoEdits);\n if (selections) {\n // Don't recover the selection from markers because\n // we know what it should be.\n this._isHandling = true;\n }\n return selections;\n });\n if (selections) {\n this._isHandling = false;\n this.setSelections(eventsCollector, source, selections, 0 /* CursorChangeReason.NotSet */);\n }\n if (autoClosedCharactersRanges.length > 0) {\n this._pushAutoClosedAction(autoClosedCharactersRanges, autoClosedEnclosingRanges);\n }\n }\n _executeEdit(callback, eventsCollector, source, cursorChangeReason = 0 /* CursorChangeReason.NotSet */) {\n if (this.context.cursorConfig.readOnly) {\n // we cannot edit when read only...\n return;\n }\n const oldState = CursorModelState.from(this._model, this);\n this._cursors.stopTrackingSelections();\n this._isHandling = true;\n try {\n this._cursors.ensureValidState();\n callback();\n }\n catch (err) {\n (0,_base_common_errors_js__WEBPACK_IMPORTED_MODULE_0__.onUnexpectedError)(err);\n }\n this._isHandling = false;\n this._cursors.startTrackingSelections();\n this._validateAutoClosedActions();\n if (this._emitStateChangedIfNecessary(eventsCollector, source, cursorChangeReason, oldState, false)) {\n this.revealPrimary(eventsCollector, source, false, 0 /* VerticalRevealType.Simple */, true, 0 /* editorCommon.ScrollType.Smooth */);\n }\n }\n getAutoClosedCharacters() {\n return AutoClosedAction.getAllAutoClosedCharacters(this._autoClosedActions);\n }\n startComposition(eventsCollector) {\n this._compositionState = new CompositionState(this._model, this.getSelections());\n }\n endComposition(eventsCollector, source) {\n const compositionOutcome = this._compositionState ? this._compositionState.deduceOutcome(this._model, this.getSelections()) : null;\n this._compositionState = null;\n this._executeEdit(() => {\n if (source === 'keyboard') {\n // composition finishes, let's check if we need to auto complete if necessary.\n this._executeEditOperation(_cursorTypeOperations_js__WEBPACK_IMPORTED_MODULE_6__.TypeOperations.compositionEndWithInterceptors(this._prevEditOperationType, this.context.cursorConfig, this._model, compositionOutcome, this.getSelections(), this.getAutoClosedCharacters()));\n }\n }, eventsCollector, source);\n }\n type(eventsCollector, text, source) {\n this._executeEdit(() => {\n if (source === 'keyboard') {\n // If this event is coming straight from the keyboard, look for electric characters and enter\n const len = text.length;\n let offset = 0;\n while (offset < len) {\n const charLength = _base_common_strings_js__WEBPACK_IMPORTED_MODULE_1__.nextCharLength(text, offset);\n const chr = text.substr(offset, charLength);\n // Here we must interpret each typed character individually\n this._executeEditOperation(_cursorTypeOperations_js__WEBPACK_IMPORTED_MODULE_6__.TypeOperations.typeWithInterceptors(!!this._compositionState, this._prevEditOperationType, this.context.cursorConfig, this._model, this.getSelections(), this.getAutoClosedCharacters(), chr));\n offset += charLength;\n }\n }\n else {\n this._executeEditOperation(_cursorTypeOperations_js__WEBPACK_IMPORTED_MODULE_6__.TypeOperations.typeWithoutInterceptors(this._prevEditOperationType, this.context.cursorConfig, this._model, this.getSelections(), text));\n }\n }, eventsCollector, source);\n }\n compositionType(eventsCollector, text, replacePrevCharCnt, replaceNextCharCnt, positionDelta, source) {\n if (text.length === 0 && replacePrevCharCnt === 0 && replaceNextCharCnt === 0) {\n // this edit is a no-op\n if (positionDelta !== 0) {\n // but it still wants to move the cursor\n const newSelections = this.getSelections().map(selection => {\n const position = selection.getPosition();\n return new _core_selection_js__WEBPACK_IMPORTED_MODULE_8__.Selection(position.lineNumber, position.column + positionDelta, position.lineNumber, position.column + positionDelta);\n });\n this.setSelections(eventsCollector, source, newSelections, 0 /* CursorChangeReason.NotSet */);\n }\n return;\n }\n this._executeEdit(() => {\n this._executeEditOperation(_cursorTypeOperations_js__WEBPACK_IMPORTED_MODULE_6__.TypeOperations.compositionType(this._prevEditOperationType, this.context.cursorConfig, this._model, this.getSelections(), text, replacePrevCharCnt, replaceNextCharCnt, positionDelta));\n }, eventsCollector, source);\n }\n paste(eventsCollector, text, pasteOnNewLine, multicursorText, source) {\n this._executeEdit(() => {\n this._executeEditOperation(_cursorTypeOperations_js__WEBPACK_IMPORTED_MODULE_6__.TypeOperations.paste(this.context.cursorConfig, this._model, this.getSelections(), text, pasteOnNewLine, multicursorText || []));\n }, eventsCollector, source, 4 /* CursorChangeReason.Paste */);\n }\n cut(eventsCollector, source) {\n this._executeEdit(() => {\n this._executeEditOperation(_cursorDeleteOperations_js__WEBPACK_IMPORTED_MODULE_5__.DeleteOperations.cut(this.context.cursorConfig, this._model, this.getSelections()));\n }, eventsCollector, source);\n }\n executeCommand(eventsCollector, command, source) {\n this._executeEdit(() => {\n this._cursors.killSecondaryCursors();\n this._executeEditOperation(new _cursorCommon_js__WEBPACK_IMPORTED_MODULE_3__.EditOperationResult(0 /* EditOperationType.Other */, [command], {\n shouldPushStackElementBefore: false,\n shouldPushStackElementAfter: false\n }));\n }, eventsCollector, source);\n }\n executeCommands(eventsCollector, commands, source) {\n this._executeEdit(() => {\n this._executeEditOperation(new _cursorCommon_js__WEBPACK_IMPORTED_MODULE_3__.EditOperationResult(0 /* EditOperationType.Other */, commands, {\n shouldPushStackElementBefore: false,\n shouldPushStackElementAfter: false\n }));\n }, eventsCollector, source);\n }\n}\n/**\n * A snapshot of the cursor and the model state\n */\nclass CursorModelState {\n static from(model, cursor) {\n return new CursorModelState(model.getVersionId(), cursor.getCursorStates());\n }\n constructor(modelVersionId, cursorState) {\n this.modelVersionId = modelVersionId;\n this.cursorState = cursorState;\n }\n equals(other) {\n if (!other) {\n return false;\n }\n if (this.modelVersionId !== other.modelVersionId) {\n return false;\n }\n if (this.cursorState.length !== other.cursorState.length) {\n return false;\n }\n for (let i = 0, len = this.cursorState.length; i < len; i++) {\n if (!this.cursorState[i].equals(other.cursorState[i])) {\n return false;\n }\n }\n return true;\n }\n}\nclass AutoClosedAction {\n static getAllAutoClosedCharacters(autoClosedActions) {\n let autoClosedCharacters = [];\n for (const autoClosedAction of autoClosedActions) {\n autoClosedCharacters = autoClosedCharacters.concat(autoClosedAction.getAutoClosedCharactersRanges());\n }\n return autoClosedCharacters;\n }\n constructor(model, autoClosedCharactersDecorations, autoClosedEnclosingDecorations) {\n this._model = model;\n this._autoClosedCharactersDecorations = autoClosedCharactersDecorations;\n this._autoClosedEnclosingDecorations = autoClosedEnclosingDecorations;\n }\n dispose() {\n this._autoClosedCharactersDecorations = this._model.deltaDecorations(this._autoClosedCharactersDecorations, []);\n this._autoClosedEnclosingDecorations = this._model.deltaDecorations(this._autoClosedEnclosingDecorations, []);\n }\n getAutoClosedCharactersRanges() {\n const result = [];\n for (let i = 0; i < this._autoClosedCharactersDecorations.length; i++) {\n const decorationRange = this._model.getDecorationRange(this._autoClosedCharactersDecorations[i]);\n if (decorationRange) {\n result.push(decorationRange);\n }\n }\n return result;\n }\n isValid(selections) {\n const enclosingRanges = [];\n for (let i = 0; i < this._autoClosedEnclosingDecorations.length; i++) {\n const decorationRange = this._model.getDecorationRange(this._autoClosedEnclosingDecorations[i]);\n if (decorationRange) {\n enclosingRanges.push(decorationRange);\n if (decorationRange.startLineNumber !== decorationRange.endLineNumber) {\n // Stop tracking if the range becomes multiline...\n return false;\n }\n }\n }\n enclosingRanges.sort(_core_range_js__WEBPACK_IMPORTED_MODULE_7__.Range.compareRangesUsingStarts);\n selections.sort(_core_range_js__WEBPACK_IMPORTED_MODULE_7__.Range.compareRangesUsingStarts);\n for (let i = 0; i < selections.length; i++) {\n if (i >= enclosingRanges.length) {\n return false;\n }\n if (!enclosingRanges[i].strictContainsRange(selections[i])) {\n return false;\n }\n }\n return true;\n }\n}\nclass CommandExecutor {\n static executeCommands(model, selectionsBefore, commands) {\n const ctx = {\n model: model,\n selectionsBefore: selectionsBefore,\n trackedRanges: [],\n trackedRangesDirection: []\n };\n const result = this._innerExecuteCommands(ctx, commands);\n for (let i = 0, len = ctx.trackedRanges.length; i < len; i++) {\n ctx.model._setTrackedRange(ctx.trackedRanges[i], null, 0 /* TrackedRangeStickiness.AlwaysGrowsWhenTypingAtEdges */);\n }\n return result;\n }\n static _innerExecuteCommands(ctx, commands) {\n if (this._arrayIsEmpty(commands)) {\n return null;\n }\n const commandsData = this._getEditOperations(ctx, commands);\n if (commandsData.operations.length === 0) {\n return null;\n }\n const rawOperations = commandsData.operations;\n const loserCursorsMap = this._getLoserCursorMap(rawOperations);\n if (loserCursorsMap.hasOwnProperty('0')) {\n // These commands are very messed up\n console.warn('Ignoring commands');\n return null;\n }\n // Remove operations belonging to losing cursors\n const filteredOperations = [];\n for (let i = 0, len = rawOperations.length; i < len; i++) {\n if (!loserCursorsMap.hasOwnProperty(rawOperations[i].identifier.major.toString())) {\n filteredOperations.push(rawOperations[i]);\n }\n }\n // TODO@Alex: find a better way to do this.\n // give the hint that edit operations are tracked to the model\n if (commandsData.hadTrackedEditOperation && filteredOperations.length > 0) {\n filteredOperations[0]._isTracked = true;\n }\n let selectionsAfter = ctx.model.pushEditOperations(ctx.selectionsBefore, filteredOperations, (inverseEditOperations) => {\n const groupedInverseEditOperations = [];\n for (let i = 0; i < ctx.selectionsBefore.length; i++) {\n groupedInverseEditOperations[i] = [];\n }\n for (const op of inverseEditOperations) {\n if (!op.identifier) {\n // perhaps auto whitespace trim edits\n continue;\n }\n groupedInverseEditOperations[op.identifier.major].push(op);\n }\n const minorBasedSorter = (a, b) => {\n return a.identifier.minor - b.identifier.minor;\n };\n const cursorSelections = [];\n for (let i = 0; i < ctx.selectionsBefore.length; i++) {\n if (groupedInverseEditOperations[i].length > 0) {\n groupedInverseEditOperations[i].sort(minorBasedSorter);\n cursorSelections[i] = commands[i].computeCursorState(ctx.model, {\n getInverseEditOperations: () => {\n return groupedInverseEditOperations[i];\n },\n getTrackedSelection: (id) => {\n const idx = parseInt(id, 10);\n const range = ctx.model._getTrackedRange(ctx.trackedRanges[idx]);\n if (ctx.trackedRangesDirection[idx] === 0 /* SelectionDirection.LTR */) {\n return new _core_selection_js__WEBPACK_IMPORTED_MODULE_8__.Selection(range.startLineNumber, range.startColumn, range.endLineNumber, range.endColumn);\n }\n return new _core_selection_js__WEBPACK_IMPORTED_MODULE_8__.Selection(range.endLineNumber, range.endColumn, range.startLineNumber, range.startColumn);\n }\n });\n }\n else {\n cursorSelections[i] = ctx.selectionsBefore[i];\n }\n }\n return cursorSelections;\n });\n if (!selectionsAfter) {\n selectionsAfter = ctx.selectionsBefore;\n }\n // Extract losing cursors\n const losingCursors = [];\n for (const losingCursorIndex in loserCursorsMap) {\n if (loserCursorsMap.hasOwnProperty(losingCursorIndex)) {\n losingCursors.push(parseInt(losingCursorIndex, 10));\n }\n }\n // Sort losing cursors descending\n losingCursors.sort((a, b) => {\n return b - a;\n });\n // Remove losing cursors\n for (const losingCursor of losingCursors) {\n selectionsAfter.splice(losingCursor, 1);\n }\n return selectionsAfter;\n }\n static _arrayIsEmpty(commands) {\n for (let i = 0, len = commands.length; i < len; i++) {\n if (commands[i]) {\n return false;\n }\n }\n return true;\n }\n static _getEditOperations(ctx, commands) {\n let operations = [];\n let hadTrackedEditOperation = false;\n for (let i = 0, len = commands.length; i < len; i++) {\n const command = commands[i];\n if (command) {\n const r = this._getEditOperationsFromCommand(ctx, i, command);\n operations = operations.concat(r.operations);\n hadTrackedEditOperation = hadTrackedEditOperation || r.hadTrackedEditOperation;\n }\n }\n return {\n operations: operations,\n hadTrackedEditOperation: hadTrackedEditOperation\n };\n }\n static _getEditOperationsFromCommand(ctx, majorIdentifier, command) {\n // This method acts as a transaction, if the command fails\n // everything it has done is ignored\n const operations = [];\n let operationMinor = 0;\n const addEditOperation = (range, text, forceMoveMarkers = false) => {\n if (_core_range_js__WEBPACK_IMPORTED_MODULE_7__.Range.isEmpty(range) && text === '') {\n // This command wants to add a no-op => no thank you\n return;\n }\n operations.push({\n identifier: {\n major: majorIdentifier,\n minor: operationMinor++\n },\n range: range,\n text: text,\n forceMoveMarkers: forceMoveMarkers,\n isAutoWhitespaceEdit: command.insertsAutoWhitespace\n });\n };\n let hadTrackedEditOperation = false;\n const addTrackedEditOperation = (selection, text, forceMoveMarkers) => {\n hadTrackedEditOperation = true;\n addEditOperation(selection, text, forceMoveMarkers);\n };\n const trackSelection = (_selection, trackPreviousOnEmpty) => {\n const selection = _core_selection_js__WEBPACK_IMPORTED_MODULE_8__.Selection.liftSelection(_selection);\n let stickiness;\n if (selection.isEmpty()) {\n if (typeof trackPreviousOnEmpty === 'boolean') {\n if (trackPreviousOnEmpty) {\n stickiness = 2 /* TrackedRangeStickiness.GrowsOnlyWhenTypingBefore */;\n }\n else {\n stickiness = 3 /* TrackedRangeStickiness.GrowsOnlyWhenTypingAfter */;\n }\n }\n else {\n // Try to lock it with surrounding text\n const maxLineColumn = ctx.model.getLineMaxColumn(selection.startLineNumber);\n if (selection.startColumn === maxLineColumn) {\n stickiness = 2 /* TrackedRangeStickiness.GrowsOnlyWhenTypingBefore */;\n }\n else {\n stickiness = 3 /* TrackedRangeStickiness.GrowsOnlyWhenTypingAfter */;\n }\n }\n }\n else {\n stickiness = 1 /* TrackedRangeStickiness.NeverGrowsWhenTypingAtEdges */;\n }\n const l = ctx.trackedRanges.length;\n const id = ctx.model._setTrackedRange(null, selection, stickiness);\n ctx.trackedRanges[l] = id;\n ctx.trackedRangesDirection[l] = selection.getDirection();\n return l.toString();\n };\n const editOperationBuilder = {\n addEditOperation: addEditOperation,\n addTrackedEditOperation: addTrackedEditOperation,\n trackSelection: trackSelection\n };\n try {\n command.getEditOperations(ctx.model, editOperationBuilder);\n }\n catch (e) {\n // TODO@Alex use notification service if this should be user facing\n // e.friendlyMessage = nls.localize('corrupt.commands', \"Unexpected exception while executing command.\");\n (0,_base_common_errors_js__WEBPACK_IMPORTED_MODULE_0__.onUnexpectedError)(e);\n return {\n operations: [],\n hadTrackedEditOperation: false\n };\n }\n return {\n operations: operations,\n hadTrackedEditOperation: hadTrackedEditOperation\n };\n }\n static _getLoserCursorMap(operations) {\n // This is destructive on the array\n operations = operations.slice(0);\n // Sort operations with last one first\n operations.sort((a, b) => {\n // Note the minus!\n return -(_core_range_js__WEBPACK_IMPORTED_MODULE_7__.Range.compareRangesUsingEnds(a.range, b.range));\n });\n // Operations can not overlap!\n const loserCursorsMap = {};\n for (let i = 1; i < operations.length; i++) {\n const previousOp = operations[i - 1];\n const currentOp = operations[i];\n if (_core_range_js__WEBPACK_IMPORTED_MODULE_7__.Range.getStartPosition(previousOp.range).isBefore(_core_range_js__WEBPACK_IMPORTED_MODULE_7__.Range.getEndPosition(currentOp.range))) {\n let loserMajor;\n if (previousOp.identifier.major > currentOp.identifier.major) {\n // previousOp loses the battle\n loserMajor = previousOp.identifier.major;\n }\n else {\n loserMajor = currentOp.identifier.major;\n }\n loserCursorsMap[loserMajor.toString()] = true;\n for (let j = 0; j < operations.length; j++) {\n if (operations[j].identifier.major === loserMajor) {\n operations.splice(j, 1);\n if (j < i) {\n i--;\n }\n j--;\n }\n }\n if (i > 0) {\n i--;\n }\n }\n }\n return loserCursorsMap;\n }\n}\nclass CompositionLineState {\n constructor(text, startSelection, endSelection) {\n this.text = text;\n this.startSelection = startSelection;\n this.endSelection = endSelection;\n }\n}\nclass CompositionState {\n static _capture(textModel, selections) {\n const result = [];\n for (const selection of selections) {\n if (selection.startLineNumber !== selection.endLineNumber) {\n return null;\n }\n result.push(new CompositionLineState(textModel.getLineContent(selection.startLineNumber), selection.startColumn - 1, selection.endColumn - 1));\n }\n return result;\n }\n constructor(textModel, selections) {\n this._original = CompositionState._capture(textModel, selections);\n }\n /**\n * Returns the inserted text during this composition.\n * If the composition resulted in existing text being changed (i.e. not a pure insertion) it returns null.\n */\n deduceOutcome(textModel, selections) {\n if (!this._original) {\n return null;\n }\n const current = CompositionState._capture(textModel, selections);\n if (!current) {\n return null;\n }\n if (this._original.length !== current.length) {\n return null;\n }\n const result = [];\n for (let i = 0, len = this._original.length; i < len; i++) {\n result.push(CompositionState._deduceOutcome(this._original[i], current[i]));\n }\n return result;\n }\n static _deduceOutcome(original, current) {\n const commonPrefix = Math.min(original.startSelection, current.startSelection, _base_common_strings_js__WEBPACK_IMPORTED_MODULE_1__.commonPrefixLength(original.text, current.text));\n const commonSuffix = Math.min(original.text.length - original.endSelection, current.text.length - current.endSelection, _base_common_strings_js__WEBPACK_IMPORTED_MODULE_1__.commonSuffixLength(original.text, current.text));\n const deletedText = original.text.substring(commonPrefix, original.text.length - commonSuffix);\n const insertedText = current.text.substring(commonPrefix, current.text.length - commonSuffix);\n return new _cursorTypeOperations_js__WEBPACK_IMPORTED_MODULE_6__.CompositionOutcome(deletedText, original.startSelection - commonPrefix, original.endSelection - commonPrefix, insertedText, current.startSelection - commonPrefix, current.endSelection - commonPrefix);\n }\n}\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/common/cursor/cursor.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/common/cursor/cursorAtomicMoveOperations.js":
/*!**********************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/common/cursor/cursorAtomicMoveOperations.js ***!
\**********************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ AtomicTabMoveOperations: () => (/* binding */ AtomicTabMoveOperations)\n/* harmony export */ });\n/* harmony import */ var _core_cursorColumns_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../core/cursorColumns.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/core/cursorColumns.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\nclass AtomicTabMoveOperations {\n /**\n * Get the visible column at the position. If we get to a non-whitespace character first\n * or past the end of string then return -1.\n *\n * **Note** `position` and the return value are 0-based.\n */\n static whitespaceVisibleColumn(lineContent, position, tabSize) {\n const lineLength = lineContent.length;\n let visibleColumn = 0;\n let prevTabStopPosition = -1;\n let prevTabStopVisibleColumn = -1;\n for (let i = 0; i < lineLength; i++) {\n if (i === position) {\n return [prevTabStopPosition, prevTabStopVisibleColumn, visibleColumn];\n }\n if (visibleColumn % tabSize === 0) {\n prevTabStopPosition = i;\n prevTabStopVisibleColumn = visibleColumn;\n }\n const chCode = lineContent.charCodeAt(i);\n switch (chCode) {\n case 32 /* CharCode.Space */:\n visibleColumn += 1;\n break;\n case 9 /* CharCode.Tab */:\n // Skip to the next multiple of tabSize.\n visibleColumn = _core_cursorColumns_js__WEBPACK_IMPORTED_MODULE_0__.CursorColumns.nextRenderTabStop(visibleColumn, tabSize);\n break;\n default:\n return [-1, -1, -1];\n }\n }\n if (position === lineLength) {\n return [prevTabStopPosition, prevTabStopVisibleColumn, visibleColumn];\n }\n return [-1, -1, -1];\n }\n /**\n * Return the position that should result from a move left, right or to the\n * nearest tab, if atomic tabs are enabled. Left and right are used for the\n * arrow key movements, nearest is used for mouse selection. It returns\n * -1 if atomic tabs are not relevant and you should fall back to normal\n * behaviour.\n *\n * **Note**: `position` and the return value are 0-based.\n */\n static atomicPosition(lineContent, position, tabSize, direction) {\n const lineLength = lineContent.length;\n // Get the 0-based visible column corresponding to the position, or return\n // -1 if it is not in the initial whitespace.\n const [prevTabStopPosition, prevTabStopVisibleColumn, visibleColumn] = AtomicTabMoveOperations.whitespaceVisibleColumn(lineContent, position, tabSize);\n if (visibleColumn === -1) {\n return -1;\n }\n // Is the output left or right of the current position. The case for nearest\n // where it is the same as the current position is handled in the switch.\n let left;\n switch (direction) {\n case 0 /* Direction.Left */:\n left = true;\n break;\n case 1 /* Direction.Right */:\n left = false;\n break;\n case 2 /* Direction.Nearest */:\n // The code below assumes the output position is either left or right\n // of the input position. If it is the same, return immediately.\n if (visibleColumn % tabSize === 0) {\n return position;\n }\n // Go to the nearest indentation.\n left = visibleColumn % tabSize <= (tabSize / 2);\n break;\n }\n // If going left, we can just use the info about the last tab stop position and\n // last tab stop visible column that we computed in the first walk over the whitespace.\n if (left) {\n if (prevTabStopPosition === -1) {\n return -1;\n }\n // If the direction is left, we need to keep scanning right to ensure\n // that targetVisibleColumn + tabSize is before non-whitespace.\n // This is so that when we press left at the end of a partial\n // indentation it only goes one character. For example ' foo' with\n // tabSize 4, should jump from position 6 to position 5, not 4.\n let currentVisibleColumn = prevTabStopVisibleColumn;\n for (let i = prevTabStopPosition; i < lineLength; ++i) {\n if (currentVisibleColumn === prevTabStopVisibleColumn + tabSize) {\n // It is a full indentation.\n return prevTabStopPosition;\n }\n const chCode = lineContent.charCodeAt(i);\n switch (chCode) {\n case 32 /* CharCode.Space */:\n currentVisibleColumn += 1;\n break;\n case 9 /* CharCode.Tab */:\n currentVisibleColumn = _core_cursorColumns_js__WEBPACK_IMPORTED_MODULE_0__.CursorColumns.nextRenderTabStop(currentVisibleColumn, tabSize);\n break;\n default:\n return -1;\n }\n }\n if (currentVisibleColumn === prevTabStopVisibleColumn + tabSize) {\n return prevTabStopPosition;\n }\n // It must have been a partial indentation.\n return -1;\n }\n // We are going right.\n const targetVisibleColumn = _core_cursorColumns_js__WEBPACK_IMPORTED_MODULE_0__.CursorColumns.nextRenderTabStop(visibleColumn, tabSize);\n // We can just continue from where whitespaceVisibleColumn got to.\n let currentVisibleColumn = visibleColumn;\n for (let i = position; i < lineLength; i++) {\n if (currentVisibleColumn === targetVisibleColumn) {\n return i;\n }\n const chCode = lineContent.charCodeAt(i);\n switch (chCode) {\n case 32 /* CharCode.Space */:\n currentVisibleColumn += 1;\n break;\n case 9 /* CharCode.Tab */:\n currentVisibleColumn = _core_cursorColumns_js__WEBPACK_IMPORTED_MODULE_0__.CursorColumns.nextRenderTabStop(currentVisibleColumn, tabSize);\n break;\n default:\n return -1;\n }\n }\n // This condition handles when the target column is at the end of the line.\n if (currentVisibleColumn === targetVisibleColumn) {\n return lineLength;\n }\n return -1;\n }\n}\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/common/cursor/cursorAtomicMoveOperations.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/common/cursor/cursorCollection.js":
/*!************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/common/cursor/cursorCollection.js ***!
\************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ CursorCollection: () => (/* binding */ CursorCollection)\n/* harmony export */ });\n/* harmony import */ var _base_common_arrays_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../base/common/arrays.js */ \"./node_modules/monaco-editor/esm/vs/base/common/arrays.js\");\n/* harmony import */ var _base_common_arraysFind_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../base/common/arraysFind.js */ \"./node_modules/monaco-editor/esm/vs/base/common/arraysFind.js\");\n/* harmony import */ var _cursorCommon_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../cursorCommon.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/cursorCommon.js\");\n/* harmony import */ var _oneCursor_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./oneCursor.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/cursor/oneCursor.js\");\n/* harmony import */ var _core_position_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../core/position.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/core/position.js\");\n/* harmony import */ var _core_range_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../core/range.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/core/range.js\");\n/* harmony import */ var _core_selection_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../core/selection.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/core/selection.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n\n\n\n\n\n\nclass CursorCollection {\n constructor(context) {\n this.context = context;\n this.cursors = [new _oneCursor_js__WEBPACK_IMPORTED_MODULE_3__.Cursor(context)];\n this.lastAddedCursorIndex = 0;\n }\n dispose() {\n for (const cursor of this.cursors) {\n cursor.dispose(this.context);\n }\n }\n startTrackingSelections() {\n for (const cursor of this.cursors) {\n cursor.startTrackingSelection(this.context);\n }\n }\n stopTrackingSelections() {\n for (const cursor of this.cursors) {\n cursor.stopTrackingSelection(this.context);\n }\n }\n updateContext(context) {\n this.context = context;\n }\n ensureValidState() {\n for (const cursor of this.cursors) {\n cursor.ensureValidState(this.context);\n }\n }\n readSelectionFromMarkers() {\n return this.cursors.map(c => c.readSelectionFromMarkers(this.context));\n }\n getAll() {\n return this.cursors.map(c => c.asCursorState());\n }\n getViewPositions() {\n return this.cursors.map(c => c.viewState.position);\n }\n getTopMostViewPosition() {\n return (0,_base_common_arraysFind_js__WEBPACK_IMPORTED_MODULE_1__.findFirstMinBy)(this.cursors, (0,_base_common_arrays_js__WEBPACK_IMPORTED_MODULE_0__.compareBy)(c => c.viewState.position, _core_position_js__WEBPACK_IMPORTED_MODULE_4__.Position.compare)).viewState.position;\n }\n getBottomMostViewPosition() {\n return (0,_base_common_arraysFind_js__WEBPACK_IMPORTED_MODULE_1__.findLastMaxBy)(this.cursors, (0,_base_common_arrays_js__WEBPACK_IMPORTED_MODULE_0__.compareBy)(c => c.viewState.position, _core_position_js__WEBPACK_IMPORTED_MODULE_4__.Position.compare)).viewState.position;\n }\n getSelections() {\n return this.cursors.map(c => c.modelState.selection);\n }\n getViewSelections() {\n return this.cursors.map(c => c.viewState.selection);\n }\n setSelections(selections) {\n this.setStates(_cursorCommon_js__WEBPACK_IMPORTED_MODULE_2__.CursorState.fromModelSelections(selections));\n }\n getPrimaryCursor() {\n return this.cursors[0].asCursorState();\n }\n setStates(states) {\n if (states === null) {\n return;\n }\n this.cursors[0].setState(this.context, states[0].modelState, states[0].viewState);\n this._setSecondaryStates(states.slice(1));\n }\n /**\n * Creates or disposes secondary cursors as necessary to match the number of `secondarySelections`.\n */\n _setSecondaryStates(secondaryStates) {\n const secondaryCursorsLength = this.cursors.length - 1;\n const secondaryStatesLength = secondaryStates.length;\n if (secondaryCursorsLength < secondaryStatesLength) {\n const createCnt = secondaryStatesLength - secondaryCursorsLength;\n for (let i = 0; i < createCnt; i++) {\n this._addSecondaryCursor();\n }\n }\n else if (secondaryCursorsLength > secondaryStatesLength) {\n const removeCnt = secondaryCursorsLength - secondaryStatesLength;\n for (let i = 0; i < removeCnt; i++) {\n this._removeSecondaryCursor(this.cursors.length - 2);\n }\n }\n for (let i = 0; i < secondaryStatesLength; i++) {\n this.cursors[i + 1].setState(this.context, secondaryStates[i].modelState, secondaryStates[i].viewState);\n }\n }\n killSecondaryCursors() {\n this._setSecondaryStates([]);\n }\n _addSecondaryCursor() {\n this.cursors.push(new _oneCursor_js__WEBPACK_IMPORTED_MODULE_3__.Cursor(this.context));\n this.lastAddedCursorIndex = this.cursors.length - 1;\n }\n getLastAddedCursorIndex() {\n if (this.cursors.length === 1 || this.lastAddedCursorIndex === 0) {\n return 0;\n }\n return this.lastAddedCursorIndex;\n }\n _removeSecondaryCursor(removeIndex) {\n if (this.lastAddedCursorIndex >= removeIndex + 1) {\n this.lastAddedCursorIndex--;\n }\n this.cursors[removeIndex + 1].dispose(this.context);\n this.cursors.splice(removeIndex + 1, 1);\n }\n normalize() {\n if (this.cursors.length === 1) {\n return;\n }\n const cursors = this.cursors.slice(0);\n const sortedCursors = [];\n for (let i = 0, len = cursors.length; i < len; i++) {\n sortedCursors.push({\n index: i,\n selection: cursors[i].modelState.selection,\n });\n }\n sortedCursors.sort((0,_base_common_arrays_js__WEBPACK_IMPORTED_MODULE_0__.compareBy)(s => s.selection, _core_range_js__WEBPACK_IMPORTED_MODULE_5__.Range.compareRangesUsingStarts));\n for (let sortedCursorIndex = 0; sortedCursorIndex < sortedCursors.length - 1; sortedCursorIndex++) {\n const current = sortedCursors[sortedCursorIndex];\n const next = sortedCursors[sortedCursorIndex + 1];\n const currentSelection = current.selection;\n const nextSelection = next.selection;\n if (!this.context.cursorConfig.multiCursorMergeOverlapping) {\n continue;\n }\n let shouldMergeCursors;\n if (nextSelection.isEmpty() || currentSelection.isEmpty()) {\n // Merge touching cursors if one of them is collapsed\n shouldMergeCursors = nextSelection.getStartPosition().isBeforeOrEqual(currentSelection.getEndPosition());\n }\n else {\n // Merge only overlapping cursors (i.e. allow touching ranges)\n shouldMergeCursors = nextSelection.getStartPosition().isBefore(currentSelection.getEndPosition());\n }\n if (shouldMergeCursors) {\n const winnerSortedCursorIndex = current.index < next.index ? sortedCursorIndex : sortedCursorIndex + 1;\n const looserSortedCursorIndex = current.index < next.index ? sortedCursorIndex + 1 : sortedCursorIndex;\n const looserIndex = sortedCursors[looserSortedCursorIndex].index;\n const winnerIndex = sortedCursors[winnerSortedCursorIndex].index;\n const looserSelection = sortedCursors[looserSortedCursorIndex].selection;\n const winnerSelection = sortedCursors[winnerSortedCursorIndex].selection;\n if (!looserSelection.equalsSelection(winnerSelection)) {\n const resultingRange = looserSelection.plusRange(winnerSelection);\n const looserSelectionIsLTR = (looserSelection.selectionStartLineNumber === looserSelection.startLineNumber && looserSelection.selectionStartColumn === looserSelection.startColumn);\n const winnerSelectionIsLTR = (winnerSelection.selectionStartLineNumber === winnerSelection.startLineNumber && winnerSelection.selectionStartColumn === winnerSelection.startColumn);\n // Give more importance to the last added cursor (think Ctrl-dragging + hitting another cursor)\n let resultingSelectionIsLTR;\n if (looserIndex === this.lastAddedCursorIndex) {\n resultingSelectionIsLTR = looserSelectionIsLTR;\n this.lastAddedCursorIndex = winnerIndex;\n }\n else {\n // Winner takes it all\n resultingSelectionIsLTR = winnerSelectionIsLTR;\n }\n let resultingSelection;\n if (resultingSelectionIsLTR) {\n resultingSelection = new _core_selection_js__WEBPACK_IMPORTED_MODULE_6__.Selection(resultingRange.startLineNumber, resultingRange.startColumn, resultingRange.endLineNumber, resultingRange.endColumn);\n }\n else {\n resultingSelection = new _core_selection_js__WEBPACK_IMPORTED_MODULE_6__.Selection(resultingRange.endLineNumber, resultingRange.endColumn, resultingRange.startLineNumber, resultingRange.startColumn);\n }\n sortedCursors[winnerSortedCursorIndex].selection = resultingSelection;\n const resultingState = _cursorCommon_js__WEBPACK_IMPORTED_MODULE_2__.CursorState.fromModelSelection(resultingSelection);\n cursors[winnerIndex].setState(this.context, resultingState.modelState, resultingState.viewState);\n }\n for (const sortedCursor of sortedCursors) {\n if (sortedCursor.index > looserIndex) {\n sortedCursor.index--;\n }\n }\n cursors.splice(looserIndex, 1);\n sortedCursors.splice(looserSortedCursorIndex, 1);\n this._removeSecondaryCursor(looserIndex - 1);\n sortedCursorIndex--;\n }\n }\n }\n}\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/common/cursor/cursorCollection.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/common/cursor/cursorColumnSelection.js":
/*!*****************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/common/cursor/cursorColumnSelection.js ***!
\*****************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ ColumnSelection: () => (/* binding */ ColumnSelection)\n/* harmony export */ });\n/* harmony import */ var _cursorCommon_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../cursorCommon.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/cursorCommon.js\");\n/* harmony import */ var _core_position_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../core/position.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/core/position.js\");\n/* harmony import */ var _core_range_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../core/range.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/core/range.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n\n\nclass ColumnSelection {\n static columnSelect(config, model, fromLineNumber, fromVisibleColumn, toLineNumber, toVisibleColumn) {\n const lineCount = Math.abs(toLineNumber - fromLineNumber) + 1;\n const reversed = (fromLineNumber > toLineNumber);\n const isRTL = (fromVisibleColumn > toVisibleColumn);\n const isLTR = (fromVisibleColumn < toVisibleColumn);\n const result = [];\n // console.log(`fromVisibleColumn: ${fromVisibleColumn}, toVisibleColumn: ${toVisibleColumn}`);\n for (let i = 0; i < lineCount; i++) {\n const lineNumber = fromLineNumber + (reversed ? -i : i);\n const startColumn = config.columnFromVisibleColumn(model, lineNumber, fromVisibleColumn);\n const endColumn = config.columnFromVisibleColumn(model, lineNumber, toVisibleColumn);\n const visibleStartColumn = config.visibleColumnFromColumn(model, new _core_position_js__WEBPACK_IMPORTED_MODULE_1__.Position(lineNumber, startColumn));\n const visibleEndColumn = config.visibleColumnFromColumn(model, new _core_position_js__WEBPACK_IMPORTED_MODULE_1__.Position(lineNumber, endColumn));\n // console.log(`lineNumber: ${lineNumber}: visibleStartColumn: ${visibleStartColumn}, visibleEndColumn: ${visibleEndColumn}`);\n if (isLTR) {\n if (visibleStartColumn > toVisibleColumn) {\n continue;\n }\n if (visibleEndColumn < fromVisibleColumn) {\n continue;\n }\n }\n if (isRTL) {\n if (visibleEndColumn > fromVisibleColumn) {\n continue;\n }\n if (visibleStartColumn < toVisibleColumn) {\n continue;\n }\n }\n result.push(new _cursorCommon_js__WEBPACK_IMPORTED_MODULE_0__.SingleCursorState(new _core_range_js__WEBPACK_IMPORTED_MODULE_2__.Range(lineNumber, startColumn, lineNumber, startColumn), 0 /* SelectionStartKind.Simple */, 0, new _core_position_js__WEBPACK_IMPORTED_MODULE_1__.Position(lineNumber, endColumn), 0));\n }\n if (result.length === 0) {\n // We are after all the lines, so add cursor at the end of each line\n for (let i = 0; i < lineCount; i++) {\n const lineNumber = fromLineNumber + (reversed ? -i : i);\n const maxColumn = model.getLineMaxColumn(lineNumber);\n result.push(new _cursorCommon_js__WEBPACK_IMPORTED_MODULE_0__.SingleCursorState(new _core_range_js__WEBPACK_IMPORTED_MODULE_2__.Range(lineNumber, maxColumn, lineNumber, maxColumn), 0 /* SelectionStartKind.Simple */, 0, new _core_position_js__WEBPACK_IMPORTED_MODULE_1__.Position(lineNumber, maxColumn), 0));\n }\n }\n return {\n viewStates: result,\n reversed: reversed,\n fromLineNumber: fromLineNumber,\n fromVisualColumn: fromVisibleColumn,\n toLineNumber: toLineNumber,\n toVisualColumn: toVisibleColumn\n };\n }\n static columnSelectLeft(config, model, prevColumnSelectData) {\n let toViewVisualColumn = prevColumnSelectData.toViewVisualColumn;\n if (toViewVisualColumn > 0) {\n toViewVisualColumn--;\n }\n return ColumnSelection.columnSelect(config, model, prevColumnSelectData.fromViewLineNumber, prevColumnSelectData.fromViewVisualColumn, prevColumnSelectData.toViewLineNumber, toViewVisualColumn);\n }\n static columnSelectRight(config, model, prevColumnSelectData) {\n let maxVisualViewColumn = 0;\n const minViewLineNumber = Math.min(prevColumnSelectData.fromViewLineNumber, prevColumnSelectData.toViewLineNumber);\n const maxViewLineNumber = Math.max(prevColumnSelectData.fromViewLineNumber, prevColumnSelectData.toViewLineNumber);\n for (let lineNumber = minViewLineNumber; lineNumber <= maxViewLineNumber; lineNumber++) {\n const lineMaxViewColumn = model.getLineMaxColumn(lineNumber);\n const lineMaxVisualViewColumn = config.visibleColumnFromColumn(model, new _core_position_js__WEBPACK_IMPORTED_MODULE_1__.Position(lineNumber, lineMaxViewColumn));\n maxVisualViewColumn = Math.max(maxVisualViewColumn, lineMaxVisualViewColumn);\n }\n let toViewVisualColumn = prevColumnSelectData.toViewVisualColumn;\n if (toViewVisualColumn < maxVisualViewColumn) {\n toViewVisualColumn++;\n }\n return this.columnSelect(config, model, prevColumnSelectData.fromViewLineNumber, prevColumnSelectData.fromViewVisualColumn, prevColumnSelectData.toViewLineNumber, toViewVisualColumn);\n }\n static columnSelectUp(config, model, prevColumnSelectData, isPaged) {\n const linesCount = isPaged ? config.pageSize : 1;\n const toViewLineNumber = Math.max(1, prevColumnSelectData.toViewLineNumber - linesCount);\n return this.columnSelect(config, model, prevColumnSelectData.fromViewLineNumber, prevColumnSelectData.fromViewVisualColumn, toViewLineNumber, prevColumnSelectData.toViewVisualColumn);\n }\n static columnSelectDown(config, model, prevColumnSelectData, isPaged) {\n const linesCount = isPaged ? config.pageSize : 1;\n const toViewLineNumber = Math.min(model.getLineCount(), prevColumnSelectData.toViewLineNumber + linesCount);\n return this.columnSelect(config, model, prevColumnSelectData.fromViewLineNumber, prevColumnSelectData.fromViewVisualColumn, toViewLineNumber, prevColumnSelectData.toViewVisualColumn);\n }\n}\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/common/cursor/cursorColumnSelection.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/common/cursor/cursorContext.js":
/*!*********************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/common/cursor/cursorContext.js ***!
\*********************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ CursorContext: () => (/* binding */ CursorContext)\n/* harmony export */ });\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\nclass CursorContext {\n constructor(model, viewModel, coordinatesConverter, cursorConfig) {\n this._cursorContextBrand = undefined;\n this.model = model;\n this.viewModel = viewModel;\n this.coordinatesConverter = coordinatesConverter;\n this.cursorConfig = cursorConfig;\n }\n}\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/common/cursor/cursorContext.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/common/cursor/cursorDeleteOperations.js":
/*!******************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/common/cursor/cursorDeleteOperations.js ***!
\******************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ DeleteOperations: () => (/* binding */ DeleteOperations)\n/* harmony export */ });\n/* harmony import */ var _base_common_strings_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../base/common/strings.js */ \"./node_modules/monaco-editor/esm/vs/base/common/strings.js\");\n/* harmony import */ var _commands_replaceCommand_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../commands/replaceCommand.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/commands/replaceCommand.js\");\n/* harmony import */ var _cursorCommon_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../cursorCommon.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/cursorCommon.js\");\n/* harmony import */ var _core_cursorColumns_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../core/cursorColumns.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/core/cursorColumns.js\");\n/* harmony import */ var _cursorMoveOperations_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./cursorMoveOperations.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/cursor/cursorMoveOperations.js\");\n/* harmony import */ var _core_range_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../core/range.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/core/range.js\");\n/* harmony import */ var _core_position_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../core/position.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/core/position.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n\n\n\n\n\n\nclass DeleteOperations {\n static deleteRight(prevEditOperationType, config, model, selections) {\n const commands = [];\n let shouldPushStackElementBefore = (prevEditOperationType !== 3 /* EditOperationType.DeletingRight */);\n for (let i = 0, len = selections.length; i < len; i++) {\n const selection = selections[i];\n let deleteSelection = selection;\n if (deleteSelection.isEmpty()) {\n const position = selection.getPosition();\n const rightOfPosition = _cursorMoveOperations_js__WEBPACK_IMPORTED_MODULE_4__.MoveOperations.right(config, model, position);\n deleteSelection = new _core_range_js__WEBPACK_IMPORTED_MODULE_5__.Range(rightOfPosition.lineNumber, rightOfPosition.column, position.lineNumber, position.column);\n }\n if (deleteSelection.isEmpty()) {\n // Probably at end of file => ignore\n commands[i] = null;\n continue;\n }\n if (deleteSelection.startLineNumber !== deleteSelection.endLineNumber) {\n shouldPushStackElementBefore = true;\n }\n commands[i] = new _commands_replaceCommand_js__WEBPACK_IMPORTED_MODULE_1__.ReplaceCommand(deleteSelection, '');\n }\n return [shouldPushStackElementBefore, commands];\n }\n static isAutoClosingPairDelete(autoClosingDelete, autoClosingBrackets, autoClosingQuotes, autoClosingPairsOpen, model, selections, autoClosedCharacters) {\n if (autoClosingBrackets === 'never' && autoClosingQuotes === 'never') {\n return false;\n }\n if (autoClosingDelete === 'never') {\n return false;\n }\n for (let i = 0, len = selections.length; i < len; i++) {\n const selection = selections[i];\n const position = selection.getPosition();\n if (!selection.isEmpty()) {\n return false;\n }\n const lineText = model.getLineContent(position.lineNumber);\n if (position.column < 2 || position.column >= lineText.length + 1) {\n return false;\n }\n const character = lineText.charAt(position.column - 2);\n const autoClosingPairCandidates = autoClosingPairsOpen.get(character);\n if (!autoClosingPairCandidates) {\n return false;\n }\n if ((0,_cursorCommon_js__WEBPACK_IMPORTED_MODULE_2__.isQuote)(character)) {\n if (autoClosingQuotes === 'never') {\n return false;\n }\n }\n else {\n if (autoClosingBrackets === 'never') {\n return false;\n }\n }\n const afterCharacter = lineText.charAt(position.column - 1);\n let foundAutoClosingPair = false;\n for (const autoClosingPairCandidate of autoClosingPairCandidates) {\n if (autoClosingPairCandidate.open === character && autoClosingPairCandidate.close === afterCharacter) {\n foundAutoClosingPair = true;\n }\n }\n if (!foundAutoClosingPair) {\n return false;\n }\n // Must delete the pair only if it was automatically inserted by the editor\n if (autoClosingDelete === 'auto') {\n let found = false;\n for (let j = 0, lenJ = autoClosedCharacters.length; j < lenJ; j++) {\n const autoClosedCharacter = autoClosedCharacters[j];\n if (position.lineNumber === autoClosedCharacter.startLineNumber && position.column === autoClosedCharacter.startColumn) {\n found = true;\n break;\n }\n }\n if (!found) {\n return false;\n }\n }\n }\n return true;\n }\n static _runAutoClosingPairDelete(config, model, selections) {\n const commands = [];\n for (let i = 0, len = selections.length; i < len; i++) {\n const position = selections[i].getPosition();\n const deleteSelection = new _core_range_js__WEBPACK_IMPORTED_MODULE_5__.Range(position.lineNumber, position.column - 1, position.lineNumber, position.column + 1);\n commands[i] = new _commands_replaceCommand_js__WEBPACK_IMPORTED_MODULE_1__.ReplaceCommand(deleteSelection, '');\n }\n return [true, commands];\n }\n static deleteLeft(prevEditOperationType, config, model, selections, autoClosedCharacters) {\n if (this.isAutoClosingPairDelete(config.autoClosingDelete, config.autoClosingBrackets, config.autoClosingQuotes, config.autoClosingPairs.autoClosingPairsOpenByEnd, model, selections, autoClosedCharacters)) {\n return this._runAutoClosingPairDelete(config, model, selections);\n }\n const commands = [];\n let shouldPushStackElementBefore = (prevEditOperationType !== 2 /* EditOperationType.DeletingLeft */);\n for (let i = 0, len = selections.length; i < len; i++) {\n const deleteRange = DeleteOperations.getDeleteRange(selections[i], model, config);\n // Ignore empty delete ranges, as they have no effect\n // They happen if the cursor is at the beginning of the file.\n if (deleteRange.isEmpty()) {\n commands[i] = null;\n continue;\n }\n if (deleteRange.startLineNumber !== deleteRange.endLineNumber) {\n shouldPushStackElementBefore = true;\n }\n commands[i] = new _commands_replaceCommand_js__WEBPACK_IMPORTED_MODULE_1__.ReplaceCommand(deleteRange, '');\n }\n return [shouldPushStackElementBefore, commands];\n }\n static getDeleteRange(selection, model, config) {\n if (!selection.isEmpty()) {\n return selection;\n }\n const position = selection.getPosition();\n // Unintend when using tab stops and cursor is within indentation\n if (config.useTabStops && position.column > 1) {\n const lineContent = model.getLineContent(position.lineNumber);\n const firstNonWhitespaceIndex = _base_common_strings_js__WEBPACK_IMPORTED_MODULE_0__.firstNonWhitespaceIndex(lineContent);\n const lastIndentationColumn = (firstNonWhitespaceIndex === -1\n ? /* entire string is whitespace */ lineContent.length + 1\n : firstNonWhitespaceIndex + 1);\n if (position.column <= lastIndentationColumn) {\n const fromVisibleColumn = config.visibleColumnFromColumn(model, position);\n const toVisibleColumn = _core_cursorColumns_js__WEBPACK_IMPORTED_MODULE_3__.CursorColumns.prevIndentTabStop(fromVisibleColumn, config.indentSize);\n const toColumn = config.columnFromVisibleColumn(model, position.lineNumber, toVisibleColumn);\n return new _core_range_js__WEBPACK_IMPORTED_MODULE_5__.Range(position.lineNumber, toColumn, position.lineNumber, position.column);\n }\n }\n return _core_range_js__WEBPACK_IMPORTED_MODULE_5__.Range.fromPositions(DeleteOperations.getPositionAfterDeleteLeft(position, model), position);\n }\n static getPositionAfterDeleteLeft(position, model) {\n if (position.column > 1) {\n // Convert 1-based columns to 0-based offsets and back.\n const idx = _base_common_strings_js__WEBPACK_IMPORTED_MODULE_0__.getLeftDeleteOffset(position.column - 1, model.getLineContent(position.lineNumber));\n return position.with(undefined, idx + 1);\n }\n else if (position.lineNumber > 1) {\n const newLine = position.lineNumber - 1;\n return new _core_position_js__WEBPACK_IMPORTED_MODULE_6__.Position(newLine, model.getLineMaxColumn(newLine));\n }\n else {\n return position;\n }\n }\n static cut(config, model, selections) {\n const commands = [];\n let lastCutRange = null;\n selections.sort((a, b) => _core_position_js__WEBPACK_IMPORTED_MODULE_6__.Position.compare(a.getStartPosition(), b.getEndPosition()));\n for (let i = 0, len = selections.length; i < len; i++) {\n const selection = selections[i];\n if (selection.isEmpty()) {\n if (config.emptySelectionClipboard) {\n // This is a full line cut\n const position = selection.getPosition();\n let startLineNumber, startColumn, endLineNumber, endColumn;\n if (position.lineNumber < model.getLineCount()) {\n // Cutting a line in the middle of the model\n startLineNumber = position.lineNumber;\n startColumn = 1;\n endLineNumber = position.lineNumber + 1;\n endColumn = 1;\n }\n else if (position.lineNumber > 1 && (lastCutRange === null || lastCutRange === void 0 ? void 0 : lastCutRange.endLineNumber) !== position.lineNumber) {\n // Cutting the last line & there are more than 1 lines in the model & a previous cut operation does not touch the current cut operation\n startLineNumber = position.lineNumber - 1;\n startColumn = model.getLineMaxColumn(position.lineNumber - 1);\n endLineNumber = position.lineNumber;\n endColumn = model.getLineMaxColumn(position.lineNumber);\n }\n else {\n // Cutting the single line that the model contains\n startLineNumber = position.lineNumber;\n startColumn = 1;\n endLineNumber = position.lineNumber;\n endColumn = model.getLineMaxColumn(position.lineNumber);\n }\n const deleteSelection = new _core_range_js__WEBPACK_IMPORTED_MODULE_5__.Range(startLineNumber, startColumn, endLineNumber, endColumn);\n lastCutRange = deleteSelection;\n if (!deleteSelection.isEmpty()) {\n commands[i] = new _commands_replaceCommand_js__WEBPACK_IMPORTED_MODULE_1__.ReplaceCommand(deleteSelection, '');\n }\n else {\n commands[i] = null;\n }\n }\n else {\n // Cannot cut empty selection\n commands[i] = null;\n }\n }\n else {\n commands[i] = new _commands_replaceCommand_js__WEBPACK_IMPORTED_MODULE_1__.ReplaceCommand(selection, '');\n }\n }\n return new _cursorCommon_js__WEBPACK_IMPORTED_MODULE_2__.EditOperationResult(0 /* EditOperationType.Other */, commands, {\n shouldPushStackElementBefore: true,\n shouldPushStackElementAfter: true\n });\n }\n}\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/common/cursor/cursorDeleteOperations.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/common/cursor/cursorMoveCommands.js":
/*!**************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/common/cursor/cursorMoveCommands.js ***!
\**************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ CursorMove: () => (/* binding */ CursorMove),\n/* harmony export */ CursorMoveCommands: () => (/* binding */ CursorMoveCommands)\n/* harmony export */ });\n/* harmony import */ var _base_common_types_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../base/common/types.js */ \"./node_modules/monaco-editor/esm/vs/base/common/types.js\");\n/* harmony import */ var _cursorCommon_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../cursorCommon.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/cursorCommon.js\");\n/* harmony import */ var _cursorMoveOperations_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./cursorMoveOperations.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/cursor/cursorMoveOperations.js\");\n/* harmony import */ var _cursorWordOperations_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./cursorWordOperations.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/cursor/cursorWordOperations.js\");\n/* harmony import */ var _core_position_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../core/position.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/core/position.js\");\n/* harmony import */ var _core_range_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../core/range.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/core/range.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n\n\n\n\n\nclass CursorMoveCommands {\n static addCursorDown(viewModel, cursors, useLogicalLine) {\n const result = [];\n let resultLen = 0;\n for (let i = 0, len = cursors.length; i < len; i++) {\n const cursor = cursors[i];\n result[resultLen++] = new _cursorCommon_js__WEBPACK_IMPORTED_MODULE_1__.CursorState(cursor.modelState, cursor.viewState);\n if (useLogicalLine) {\n result[resultLen++] = _cursorCommon_js__WEBPACK_IMPORTED_MODULE_1__.CursorState.fromModelState(_cursorMoveOperations_js__WEBPACK_IMPORTED_MODULE_2__.MoveOperations.translateDown(viewModel.cursorConfig, viewModel.model, cursor.modelState));\n }\n else {\n result[resultLen++] = _cursorCommon_js__WEBPACK_IMPORTED_MODULE_1__.CursorState.fromViewState(_cursorMoveOperations_js__WEBPACK_IMPORTED_MODULE_2__.MoveOperations.translateDown(viewModel.cursorConfig, viewModel, cursor.viewState));\n }\n }\n return result;\n }\n static addCursorUp(viewModel, cursors, useLogicalLine) {\n const result = [];\n let resultLen = 0;\n for (let i = 0, len = cursors.length; i < len; i++) {\n const cursor = cursors[i];\n result[resultLen++] = new _cursorCommon_js__WEBPACK_IMPORTED_MODULE_1__.CursorState(cursor.modelState, cursor.viewState);\n if (useLogicalLine) {\n result[resultLen++] = _cursorCommon_js__WEBPACK_IMPORTED_MODULE_1__.CursorState.fromModelState(_cursorMoveOperations_js__WEBPACK_IMPORTED_MODULE_2__.MoveOperations.translateUp(viewModel.cursorConfig, viewModel.model, cursor.modelState));\n }\n else {\n result[resultLen++] = _cursorCommon_js__WEBPACK_IMPORTED_MODULE_1__.CursorState.fromViewState(_cursorMoveOperations_js__WEBPACK_IMPORTED_MODULE_2__.MoveOperations.translateUp(viewModel.cursorConfig, viewModel, cursor.viewState));\n }\n }\n return result;\n }\n static moveToBeginningOfLine(viewModel, cursors, inSelectionMode) {\n const result = [];\n for (let i = 0, len = cursors.length; i < len; i++) {\n const cursor = cursors[i];\n result[i] = this._moveToLineStart(viewModel, cursor, inSelectionMode);\n }\n return result;\n }\n static _moveToLineStart(viewModel, cursor, inSelectionMode) {\n const currentViewStateColumn = cursor.viewState.position.column;\n const currentModelStateColumn = cursor.modelState.position.column;\n const isFirstLineOfWrappedLine = currentViewStateColumn === currentModelStateColumn;\n const currentViewStatelineNumber = cursor.viewState.position.lineNumber;\n const firstNonBlankColumn = viewModel.getLineFirstNonWhitespaceColumn(currentViewStatelineNumber);\n const isBeginningOfViewLine = currentViewStateColumn === firstNonBlankColumn;\n if (!isFirstLineOfWrappedLine && !isBeginningOfViewLine) {\n return this._moveToLineStartByView(viewModel, cursor, inSelectionMode);\n }\n else {\n return this._moveToLineStartByModel(viewModel, cursor, inSelectionMode);\n }\n }\n static _moveToLineStartByView(viewModel, cursor, inSelectionMode) {\n return _cursorCommon_js__WEBPACK_IMPORTED_MODULE_1__.CursorState.fromViewState(_cursorMoveOperations_js__WEBPACK_IMPORTED_MODULE_2__.MoveOperations.moveToBeginningOfLine(viewModel.cursorConfig, viewModel, cursor.viewState, inSelectionMode));\n }\n static _moveToLineStartByModel(viewModel, cursor, inSelectionMode) {\n return _cursorCommon_js__WEBPACK_IMPORTED_MODULE_1__.CursorState.fromModelState(_cursorMoveOperations_js__WEBPACK_IMPORTED_MODULE_2__.MoveOperations.moveToBeginningOfLine(viewModel.cursorConfig, viewModel.model, cursor.modelState, inSelectionMode));\n }\n static moveToEndOfLine(viewModel, cursors, inSelectionMode, sticky) {\n const result = [];\n for (let i = 0, len = cursors.length; i < len; i++) {\n const cursor = cursors[i];\n result[i] = this._moveToLineEnd(viewModel, cursor, inSelectionMode, sticky);\n }\n return result;\n }\n static _moveToLineEnd(viewModel, cursor, inSelectionMode, sticky) {\n const viewStatePosition = cursor.viewState.position;\n const viewModelMaxColumn = viewModel.getLineMaxColumn(viewStatePosition.lineNumber);\n const isEndOfViewLine = viewStatePosition.column === viewModelMaxColumn;\n const modelStatePosition = cursor.modelState.position;\n const modelMaxColumn = viewModel.model.getLineMaxColumn(modelStatePosition.lineNumber);\n const isEndLineOfWrappedLine = viewModelMaxColumn - viewStatePosition.column === modelMaxColumn - modelStatePosition.column;\n if (isEndOfViewLine || isEndLineOfWrappedLine) {\n return this._moveToLineEndByModel(viewModel, cursor, inSelectionMode, sticky);\n }\n else {\n return this._moveToLineEndByView(viewModel, cursor, inSelectionMode, sticky);\n }\n }\n static _moveToLineEndByView(viewModel, cursor, inSelectionMode, sticky) {\n return _cursorCommon_js__WEBPACK_IMPORTED_MODULE_1__.CursorState.fromViewState(_cursorMoveOperations_js__WEBPACK_IMPORTED_MODULE_2__.MoveOperations.moveToEndOfLine(viewModel.cursorConfig, viewModel, cursor.viewState, inSelectionMode, sticky));\n }\n static _moveToLineEndByModel(viewModel, cursor, inSelectionMode, sticky) {\n return _cursorCommon_js__WEBPACK_IMPORTED_MODULE_1__.CursorState.fromModelState(_cursorMoveOperations_js__WEBPACK_IMPORTED_MODULE_2__.MoveOperations.moveToEndOfLine(viewModel.cursorConfig, viewModel.model, cursor.modelState, inSelectionMode, sticky));\n }\n static expandLineSelection(viewModel, cursors) {\n const result = [];\n for (let i = 0, len = cursors.length; i < len; i++) {\n const cursor = cursors[i];\n const startLineNumber = cursor.modelState.selection.startLineNumber;\n const lineCount = viewModel.model.getLineCount();\n let endLineNumber = cursor.modelState.selection.endLineNumber;\n let endColumn;\n if (endLineNumber === lineCount) {\n endColumn = viewModel.model.getLineMaxColumn(lineCount);\n }\n else {\n endLineNumber++;\n endColumn = 1;\n }\n result[i] = _cursorCommon_js__WEBPACK_IMPORTED_MODULE_1__.CursorState.fromModelState(new _cursorCommon_js__WEBPACK_IMPORTED_MODULE_1__.SingleCursorState(new _core_range_js__WEBPACK_IMPORTED_MODULE_5__.Range(startLineNumber, 1, startLineNumber, 1), 0 /* SelectionStartKind.Simple */, 0, new _core_position_js__WEBPACK_IMPORTED_MODULE_4__.Position(endLineNumber, endColumn), 0));\n }\n return result;\n }\n static moveToBeginningOfBuffer(viewModel, cursors, inSelectionMode) {\n const result = [];\n for (let i = 0, len = cursors.length; i < len; i++) {\n const cursor = cursors[i];\n result[i] = _cursorCommon_js__WEBPACK_IMPORTED_MODULE_1__.CursorState.fromModelState(_cursorMoveOperations_js__WEBPACK_IMPORTED_MODULE_2__.MoveOperations.moveToBeginningOfBuffer(viewModel.cursorConfig, viewModel.model, cursor.modelState, inSelectionMode));\n }\n return result;\n }\n static moveToEndOfBuffer(viewModel, cursors, inSelectionMode) {\n const result = [];\n for (let i = 0, len = cursors.length; i < len; i++) {\n const cursor = cursors[i];\n result[i] = _cursorCommon_js__WEBPACK_IMPORTED_MODULE_1__.CursorState.fromModelState(_cursorMoveOperations_js__WEBPACK_IMPORTED_MODULE_2__.MoveOperations.moveToEndOfBuffer(viewModel.cursorConfig, viewModel.model, cursor.modelState, inSelectionMode));\n }\n return result;\n }\n static selectAll(viewModel, cursor) {\n const lineCount = viewModel.model.getLineCount();\n const maxColumn = viewModel.model.getLineMaxColumn(lineCount);\n return _cursorCommon_js__WEBPACK_IMPORTED_MODULE_1__.CursorState.fromModelState(new _cursorCommon_js__WEBPACK_IMPORTED_MODULE_1__.SingleCursorState(new _core_range_js__WEBPACK_IMPORTED_MODULE_5__.Range(1, 1, 1, 1), 0 /* SelectionStartKind.Simple */, 0, new _core_position_js__WEBPACK_IMPORTED_MODULE_4__.Position(lineCount, maxColumn), 0));\n }\n static line(viewModel, cursor, inSelectionMode, _position, _viewPosition) {\n const position = viewModel.model.validatePosition(_position);\n const viewPosition = (_viewPosition\n ? viewModel.coordinatesConverter.validateViewPosition(new _core_position_js__WEBPACK_IMPORTED_MODULE_4__.Position(_viewPosition.lineNumber, _viewPosition.column), position)\n : viewModel.coordinatesConverter.convertModelPositionToViewPosition(position));\n if (!inSelectionMode) {\n // Entering line selection for the first time\n const lineCount = viewModel.model.getLineCount();\n let selectToLineNumber = position.lineNumber + 1;\n let selectToColumn = 1;\n if (selectToLineNumber > lineCount) {\n selectToLineNumber = lineCount;\n selectToColumn = viewModel.model.getLineMaxColumn(selectToLineNumber);\n }\n return _cursorCommon_js__WEBPACK_IMPORTED_MODULE_1__.CursorState.fromModelState(new _cursorCommon_js__WEBPACK_IMPORTED_MODULE_1__.SingleCursorState(new _core_range_js__WEBPACK_IMPORTED_MODULE_5__.Range(position.lineNumber, 1, selectToLineNumber, selectToColumn), 2 /* SelectionStartKind.Line */, 0, new _core_position_js__WEBPACK_IMPORTED_MODULE_4__.Position(selectToLineNumber, selectToColumn), 0));\n }\n // Continuing line selection\n const enteringLineNumber = cursor.modelState.selectionStart.getStartPosition().lineNumber;\n if (position.lineNumber < enteringLineNumber) {\n return _cursorCommon_js__WEBPACK_IMPORTED_MODULE_1__.CursorState.fromViewState(cursor.viewState.move(true, viewPosition.lineNumber, 1, 0));\n }\n else if (position.lineNumber > enteringLineNumber) {\n const lineCount = viewModel.getLineCount();\n let selectToViewLineNumber = viewPosition.lineNumber + 1;\n let selectToViewColumn = 1;\n if (selectToViewLineNumber > lineCount) {\n selectToViewLineNumber = lineCount;\n selectToViewColumn = viewModel.getLineMaxColumn(selectToViewLineNumber);\n }\n return _cursorCommon_js__WEBPACK_IMPORTED_MODULE_1__.CursorState.fromViewState(cursor.viewState.move(true, selectToViewLineNumber, selectToViewColumn, 0));\n }\n else {\n const endPositionOfSelectionStart = cursor.modelState.selectionStart.getEndPosition();\n return _cursorCommon_js__WEBPACK_IMPORTED_MODULE_1__.CursorState.fromModelState(cursor.modelState.move(true, endPositionOfSelectionStart.lineNumber, endPositionOfSelectionStart.column, 0));\n }\n }\n static word(viewModel, cursor, inSelectionMode, _position) {\n const position = viewModel.model.validatePosition(_position);\n return _cursorCommon_js__WEBPACK_IMPORTED_MODULE_1__.CursorState.fromModelState(_cursorWordOperations_js__WEBPACK_IMPORTED_MODULE_3__.WordOperations.word(viewModel.cursorConfig, viewModel.model, cursor.modelState, inSelectionMode, position));\n }\n static cancelSelection(viewModel, cursor) {\n if (!cursor.modelState.hasSelection()) {\n return new _cursorCommon_js__WEBPACK_IMPORTED_MODULE_1__.CursorState(cursor.modelState, cursor.viewState);\n }\n const lineNumber = cursor.viewState.position.lineNumber;\n const column = cursor.viewState.position.column;\n return _cursorCommon_js__WEBPACK_IMPORTED_MODULE_1__.CursorState.fromViewState(new _cursorCommon_js__WEBPACK_IMPORTED_MODULE_1__.SingleCursorState(new _core_range_js__WEBPACK_IMPORTED_MODULE_5__.Range(lineNumber, column, lineNumber, column), 0 /* SelectionStartKind.Simple */, 0, new _core_position_js__WEBPACK_IMPORTED_MODULE_4__.Position(lineNumber, column), 0));\n }\n static moveTo(viewModel, cursor, inSelectionMode, _position, _viewPosition) {\n if (inSelectionMode) {\n if (cursor.modelState.selectionStartKind === 1 /* SelectionStartKind.Word */) {\n return this.word(viewModel, cursor, inSelectionMode, _position);\n }\n if (cursor.modelState.selectionStartKind === 2 /* SelectionStartKind.Line */) {\n return this.line(viewModel, cursor, inSelectionMode, _position, _viewPosition);\n }\n }\n const position = viewModel.model.validatePosition(_position);\n const viewPosition = (_viewPosition\n ? viewModel.coordinatesConverter.validateViewPosition(new _core_position_js__WEBPACK_IMPORTED_MODULE_4__.Position(_viewPosition.lineNumber, _viewPosition.column), position)\n : viewModel.coordinatesConverter.convertModelPositionToViewPosition(position));\n return _cursorCommon_js__WEBPACK_IMPORTED_MODULE_1__.CursorState.fromViewState(cursor.viewState.move(inSelectionMode, viewPosition.lineNumber, viewPosition.column, 0));\n }\n static simpleMove(viewModel, cursors, direction, inSelectionMode, value, unit) {\n switch (direction) {\n case 0 /* CursorMove.Direction.Left */: {\n if (unit === 4 /* CursorMove.Unit.HalfLine */) {\n // Move left by half the current line length\n return this._moveHalfLineLeft(viewModel, cursors, inSelectionMode);\n }\n else {\n // Move left by `moveParams.value` columns\n return this._moveLeft(viewModel, cursors, inSelectionMode, value);\n }\n }\n case 1 /* CursorMove.Direction.Right */: {\n if (unit === 4 /* CursorMove.Unit.HalfLine */) {\n // Move right by half the current line length\n return this._moveHalfLineRight(viewModel, cursors, inSelectionMode);\n }\n else {\n // Move right by `moveParams.value` columns\n return this._moveRight(viewModel, cursors, inSelectionMode, value);\n }\n }\n case 2 /* CursorMove.Direction.Up */: {\n if (unit === 2 /* CursorMove.Unit.WrappedLine */) {\n // Move up by view lines\n return this._moveUpByViewLines(viewModel, cursors, inSelectionMode, value);\n }\n else {\n // Move up by model lines\n return this._moveUpByModelLines(viewModel, cursors, inSelectionMode, value);\n }\n }\n case 3 /* CursorMove.Direction.Down */: {\n if (unit === 2 /* CursorMove.Unit.WrappedLine */) {\n // Move down by view lines\n return this._moveDownByViewLines(viewModel, cursors, inSelectionMode, value);\n }\n else {\n // Move down by model lines\n return this._moveDownByModelLines(viewModel, cursors, inSelectionMode, value);\n }\n }\n case 4 /* CursorMove.Direction.PrevBlankLine */: {\n if (unit === 2 /* CursorMove.Unit.WrappedLine */) {\n return cursors.map(cursor => _cursorCommon_js__WEBPACK_IMPORTED_MODULE_1__.CursorState.fromViewState(_cursorMoveOperations_js__WEBPACK_IMPORTED_MODULE_2__.MoveOperations.moveToPrevBlankLine(viewModel.cursorConfig, viewModel, cursor.viewState, inSelectionMode)));\n }\n else {\n return cursors.map(cursor => _cursorCommon_js__WEBPACK_IMPORTED_MODULE_1__.CursorState.fromModelState(_cursorMoveOperations_js__WEBPACK_IMPORTED_MODULE_2__.MoveOperations.moveToPrevBlankLine(viewModel.cursorConfig, viewModel.model, cursor.modelState, inSelectionMode)));\n }\n }\n case 5 /* CursorMove.Direction.NextBlankLine */: {\n if (unit === 2 /* CursorMove.Unit.WrappedLine */) {\n return cursors.map(cursor => _cursorCommon_js__WEBPACK_IMPORTED_MODULE_1__.CursorState.fromViewState(_cursorMoveOperations_js__WEBPACK_IMPORTED_MODULE_2__.MoveOperations.moveToNextBlankLine(viewModel.cursorConfig, viewModel, cursor.viewState, inSelectionMode)));\n }\n else {\n return cursors.map(cursor => _cursorCommon_js__WEBPACK_IMPORTED_MODULE_1__.CursorState.fromModelState(_cursorMoveOperations_js__WEBPACK_IMPORTED_MODULE_2__.MoveOperations.moveToNextBlankLine(viewModel.cursorConfig, viewModel.model, cursor.modelState, inSelectionMode)));\n }\n }\n case 6 /* CursorMove.Direction.WrappedLineStart */: {\n // Move to the beginning of the current view line\n return this._moveToViewMinColumn(viewModel, cursors, inSelectionMode);\n }\n case 7 /* CursorMove.Direction.WrappedLineFirstNonWhitespaceCharacter */: {\n // Move to the first non-whitespace column of the current view line\n return this._moveToViewFirstNonWhitespaceColumn(viewModel, cursors, inSelectionMode);\n }\n case 8 /* CursorMove.Direction.WrappedLineColumnCenter */: {\n // Move to the \"center\" of the current view line\n return this._moveToViewCenterColumn(viewModel, cursors, inSelectionMode);\n }\n case 9 /* CursorMove.Direction.WrappedLineEnd */: {\n // Move to the end of the current view line\n return this._moveToViewMaxColumn(viewModel, cursors, inSelectionMode);\n }\n case 10 /* CursorMove.Direction.WrappedLineLastNonWhitespaceCharacter */: {\n // Move to the last non-whitespace column of the current view line\n return this._moveToViewLastNonWhitespaceColumn(viewModel, cursors, inSelectionMode);\n }\n default:\n return null;\n }\n }\n static viewportMove(viewModel, cursors, direction, inSelectionMode, value) {\n const visibleViewRange = viewModel.getCompletelyVisibleViewRange();\n const visibleModelRange = viewModel.coordinatesConverter.convertViewRangeToModelRange(visibleViewRange);\n switch (direction) {\n case 11 /* CursorMove.Direction.ViewPortTop */: {\n // Move to the nth line start in the viewport (from the top)\n const modelLineNumber = this._firstLineNumberInRange(viewModel.model, visibleModelRange, value);\n const modelColumn = viewModel.model.getLineFirstNonWhitespaceColumn(modelLineNumber);\n return [this._moveToModelPosition(viewModel, cursors[0], inSelectionMode, modelLineNumber, modelColumn)];\n }\n case 13 /* CursorMove.Direction.ViewPortBottom */: {\n // Move to the nth line start in the viewport (from the bottom)\n const modelLineNumber = this._lastLineNumberInRange(viewModel.model, visibleModelRange, value);\n const modelColumn = viewModel.model.getLineFirstNonWhitespaceColumn(modelLineNumber);\n return [this._moveToModelPosition(viewModel, cursors[0], inSelectionMode, modelLineNumber, modelColumn)];\n }\n case 12 /* CursorMove.Direction.ViewPortCenter */: {\n // Move to the line start in the viewport center\n const modelLineNumber = Math.round((visibleModelRange.startLineNumber + visibleModelRange.endLineNumber) / 2);\n const modelColumn = viewModel.model.getLineFirstNonWhitespaceColumn(modelLineNumber);\n return [this._moveToModelPosition(viewModel, cursors[0], inSelectionMode, modelLineNumber, modelColumn)];\n }\n case 14 /* CursorMove.Direction.ViewPortIfOutside */: {\n // Move to a position inside the viewport\n const result = [];\n for (let i = 0, len = cursors.length; i < len; i++) {\n const cursor = cursors[i];\n result[i] = this.findPositionInViewportIfOutside(viewModel, cursor, visibleViewRange, inSelectionMode);\n }\n return result;\n }\n default:\n return null;\n }\n }\n static findPositionInViewportIfOutside(viewModel, cursor, visibleViewRange, inSelectionMode) {\n const viewLineNumber = cursor.viewState.position.lineNumber;\n if (visibleViewRange.startLineNumber <= viewLineNumber && viewLineNumber <= visibleViewRange.endLineNumber - 1) {\n // Nothing to do, cursor is in viewport\n return new _cursorCommon_js__WEBPACK_IMPORTED_MODULE_1__.CursorState(cursor.modelState, cursor.viewState);\n }\n else {\n let newViewLineNumber;\n if (viewLineNumber > visibleViewRange.endLineNumber - 1) {\n newViewLineNumber = visibleViewRange.endLineNumber - 1;\n }\n else if (viewLineNumber < visibleViewRange.startLineNumber) {\n newViewLineNumber = visibleViewRange.startLineNumber;\n }\n else {\n newViewLineNumber = viewLineNumber;\n }\n const position = _cursorMoveOperations_js__WEBPACK_IMPORTED_MODULE_2__.MoveOperations.vertical(viewModel.cursorConfig, viewModel, viewLineNumber, cursor.viewState.position.column, cursor.viewState.leftoverVisibleColumns, newViewLineNumber, false);\n return _cursorCommon_js__WEBPACK_IMPORTED_MODULE_1__.CursorState.fromViewState(cursor.viewState.move(inSelectionMode, position.lineNumber, position.column, position.leftoverVisibleColumns));\n }\n }\n /**\n * Find the nth line start included in the range (from the start).\n */\n static _firstLineNumberInRange(model, range, count) {\n let startLineNumber = range.startLineNumber;\n if (range.startColumn !== model.getLineMinColumn(startLineNumber)) {\n // Move on to the second line if the first line start is not included in the range\n startLineNumber++;\n }\n return Math.min(range.endLineNumber, startLineNumber + count - 1);\n }\n /**\n * Find the nth line start included in the range (from the end).\n */\n static _lastLineNumberInRange(model, range, count) {\n let startLineNumber = range.startLineNumber;\n if (range.startColumn !== model.getLineMinColumn(startLineNumber)) {\n // Move on to the second line if the first line start is not included in the range\n startLineNumber++;\n }\n return Math.max(startLineNumber, range.endLineNumber - count + 1);\n }\n static _moveLeft(viewModel, cursors, inSelectionMode, noOfColumns) {\n return cursors.map(cursor => _cursorCommon_js__WEBPACK_IMPORTED_MODULE_1__.CursorState.fromViewState(_cursorMoveOperations_js__WEBPACK_IMPORTED_MODULE_2__.MoveOperations.moveLeft(viewModel.cursorConfig, viewModel, cursor.viewState, inSelectionMode, noOfColumns)));\n }\n static _moveHalfLineLeft(viewModel, cursors, inSelectionMode) {\n const result = [];\n for (let i = 0, len = cursors.length; i < len; i++) {\n const cursor = cursors[i];\n const viewLineNumber = cursor.viewState.position.lineNumber;\n const halfLine = Math.round(viewModel.getLineLength(viewLineNumber) / 2);\n result[i] = _cursorCommon_js__WEBPACK_IMPORTED_MODULE_1__.CursorState.fromViewState(_cursorMoveOperations_js__WEBPACK_IMPORTED_MODULE_2__.MoveOperations.moveLeft(viewModel.cursorConfig, viewModel, cursor.viewState, inSelectionMode, halfLine));\n }\n return result;\n }\n static _moveRight(viewModel, cursors, inSelectionMode, noOfColumns) {\n return cursors.map(cursor => _cursorCommon_js__WEBPACK_IMPORTED_MODULE_1__.CursorState.fromViewState(_cursorMoveOperations_js__WEBPACK_IMPORTED_MODULE_2__.MoveOperations.moveRight(viewModel.cursorConfig, viewModel, cursor.viewState, inSelectionMode, noOfColumns)));\n }\n static _moveHalfLineRight(viewModel, cursors, inSelectionMode) {\n const result = [];\n for (let i = 0, len = cursors.length; i < len; i++) {\n const cursor = cursors[i];\n const viewLineNumber = cursor.viewState.position.lineNumber;\n const halfLine = Math.round(viewModel.getLineLength(viewLineNumber) / 2);\n result[i] = _cursorCommon_js__WEBPACK_IMPORTED_MODULE_1__.CursorState.fromViewState(_cursorMoveOperations_js__WEBPACK_IMPORTED_MODULE_2__.MoveOperations.moveRight(viewModel.cursorConfig, viewModel, cursor.viewState, inSelectionMode, halfLine));\n }\n return result;\n }\n static _moveDownByViewLines(viewModel, cursors, inSelectionMode, linesCount) {\n const result = [];\n for (let i = 0, len = cursors.length; i < len; i++) {\n const cursor = cursors[i];\n result[i] = _cursorCommon_js__WEBPACK_IMPORTED_MODULE_1__.CursorState.fromViewState(_cursorMoveOperations_js__WEBPACK_IMPORTED_MODULE_2__.MoveOperations.moveDown(viewModel.cursorConfig, viewModel, cursor.viewState, inSelectionMode, linesCount));\n }\n return result;\n }\n static _moveDownByModelLines(viewModel, cursors, inSelectionMode, linesCount) {\n const result = [];\n for (let i = 0, len = cursors.length; i < len; i++) {\n const cursor = cursors[i];\n result[i] = _cursorCommon_js__WEBPACK_IMPORTED_MODULE_1__.CursorState.fromModelState(_cursorMoveOperations_js__WEBPACK_IMPORTED_MODULE_2__.MoveOperations.moveDown(viewModel.cursorConfig, viewModel.model, cursor.modelState, inSelectionMode, linesCount));\n }\n return result;\n }\n static _moveUpByViewLines(viewModel, cursors, inSelectionMode, linesCount) {\n const result = [];\n for (let i = 0, len = cursors.length; i < len; i++) {\n const cursor = cursors[i];\n result[i] = _cursorCommon_js__WEBPACK_IMPORTED_MODULE_1__.CursorState.fromViewState(_cursorMoveOperations_js__WEBPACK_IMPORTED_MODULE_2__.MoveOperations.moveUp(viewModel.cursorConfig, viewModel, cursor.viewState, inSelectionMode, linesCount));\n }\n return result;\n }\n static _moveUpByModelLines(viewModel, cursors, inSelectionMode, linesCount) {\n const result = [];\n for (let i = 0, len = cursors.length; i < len; i++) {\n const cursor = cursors[i];\n result[i] = _cursorCommon_js__WEBPACK_IMPORTED_MODULE_1__.CursorState.fromModelState(_cursorMoveOperations_js__WEBPACK_IMPORTED_MODULE_2__.MoveOperations.moveUp(viewModel.cursorConfig, viewModel.model, cursor.modelState, inSelectionMode, linesCount));\n }\n return result;\n }\n static _moveToViewPosition(viewModel, cursor, inSelectionMode, toViewLineNumber, toViewColumn) {\n return _cursorCommon_js__WEBPACK_IMPORTED_MODULE_1__.CursorState.fromViewState(cursor.viewState.move(inSelectionMode, toViewLineNumber, toViewColumn, 0));\n }\n static _moveToModelPosition(viewModel, cursor, inSelectionMode, toModelLineNumber, toModelColumn) {\n return _cursorCommon_js__WEBPACK_IMPORTED_MODULE_1__.CursorState.fromModelState(cursor.modelState.move(inSelectionMode, toModelLineNumber, toModelColumn, 0));\n }\n static _moveToViewMinColumn(viewModel, cursors, inSelectionMode) {\n const result = [];\n for (let i = 0, len = cursors.length; i < len; i++) {\n const cursor = cursors[i];\n const viewLineNumber = cursor.viewState.position.lineNumber;\n const viewColumn = viewModel.getLineMinColumn(viewLineNumber);\n result[i] = this._moveToViewPosition(viewModel, cursor, inSelectionMode, viewLineNumber, viewColumn);\n }\n return result;\n }\n static _moveToViewFirstNonWhitespaceColumn(viewModel, cursors, inSelectionMode) {\n const result = [];\n for (let i = 0, len = cursors.length; i < len; i++) {\n const cursor = cursors[i];\n const viewLineNumber = cursor.viewState.position.lineNumber;\n const viewColumn = viewModel.getLineFirstNonWhitespaceColumn(viewLineNumber);\n result[i] = this._moveToViewPosition(viewModel, cursor, inSelectionMode, viewLineNumber, viewColumn);\n }\n return result;\n }\n static _moveToViewCenterColumn(viewModel, cursors, inSelectionMode) {\n const result = [];\n for (let i = 0, len = cursors.length; i < len; i++) {\n const cursor = cursors[i];\n const viewLineNumber = cursor.viewState.position.lineNumber;\n const viewColumn = Math.round((viewModel.getLineMaxColumn(viewLineNumber) + viewModel.getLineMinColumn(viewLineNumber)) / 2);\n result[i] = this._moveToViewPosition(viewModel, cursor, inSelectionMode, viewLineNumber, viewColumn);\n }\n return result;\n }\n static _moveToViewMaxColumn(viewModel, cursors, inSelectionMode) {\n const result = [];\n for (let i = 0, len = cursors.length; i < len; i++) {\n const cursor = cursors[i];\n const viewLineNumber = cursor.viewState.position.lineNumber;\n const viewColumn = viewModel.getLineMaxColumn(viewLineNumber);\n result[i] = this._moveToViewPosition(viewModel, cursor, inSelectionMode, viewLineNumber, viewColumn);\n }\n return result;\n }\n static _moveToViewLastNonWhitespaceColumn(viewModel, cursors, inSelectionMode) {\n const result = [];\n for (let i = 0, len = cursors.length; i < len; i++) {\n const cursor = cursors[i];\n const viewLineNumber = cursor.viewState.position.lineNumber;\n const viewColumn = viewModel.getLineLastNonWhitespaceColumn(viewLineNumber);\n result[i] = this._moveToViewPosition(viewModel, cursor, inSelectionMode, viewLineNumber, viewColumn);\n }\n return result;\n }\n}\nvar CursorMove;\n(function (CursorMove) {\n const isCursorMoveArgs = function (arg) {\n if (!_base_common_types_js__WEBPACK_IMPORTED_MODULE_0__.isObject(arg)) {\n return false;\n }\n const cursorMoveArg = arg;\n if (!_base_common_types_js__WEBPACK_IMPORTED_MODULE_0__.isString(cursorMoveArg.to)) {\n return false;\n }\n if (!_base_common_types_js__WEBPACK_IMPORTED_MODULE_0__.isUndefined(cursorMoveArg.select) && !_base_common_types_js__WEBPACK_IMPORTED_MODULE_0__.isBoolean(cursorMoveArg.select)) {\n return false;\n }\n if (!_base_common_types_js__WEBPACK_IMPORTED_MODULE_0__.isUndefined(cursorMoveArg.by) && !_base_common_types_js__WEBPACK_IMPORTED_MODULE_0__.isString(cursorMoveArg.by)) {\n return false;\n }\n if (!_base_common_types_js__WEBPACK_IMPORTED_MODULE_0__.isUndefined(cursorMoveArg.value) && !_base_common_types_js__WEBPACK_IMPORTED_MODULE_0__.isNumber(cursorMoveArg.value)) {\n return false;\n }\n return true;\n };\n CursorMove.metadata = {\n description: 'Move cursor to a logical position in the view',\n args: [\n {\n name: 'Cursor move argument object',\n description: `Property-value pairs that can be passed through this argument:\n\t\t\t\t\t* 'to': A mandatory logical position value providing where to move the cursor.\n\t\t\t\t\t\t\\`\\`\\`\n\t\t\t\t\t\t'left', 'right', 'up', 'down', 'prevBlankLine', 'nextBlankLine',\n\t\t\t\t\t\t'wrappedLineStart', 'wrappedLineEnd', 'wrappedLineColumnCenter'\n\t\t\t\t\t\t'wrappedLineFirstNonWhitespaceCharacter', 'wrappedLineLastNonWhitespaceCharacter'\n\t\t\t\t\t\t'viewPortTop', 'viewPortCenter', 'viewPortBottom', 'viewPortIfOutside'\n\t\t\t\t\t\t\\`\\`\\`\n\t\t\t\t\t* 'by': Unit to move. Default is computed based on 'to' value.\n\t\t\t\t\t\t\\`\\`\\`\n\t\t\t\t\t\t'line', 'wrappedLine', 'character', 'halfLine'\n\t\t\t\t\t\t\\`\\`\\`\n\t\t\t\t\t* 'value': Number of units to move. Default is '1'.\n\t\t\t\t\t* 'select': If 'true' makes the selection. Default is 'false'.\n\t\t\t\t`,\n constraint: isCursorMoveArgs,\n schema: {\n 'type': 'object',\n 'required': ['to'],\n 'properties': {\n 'to': {\n 'type': 'string',\n 'enum': ['left', 'right', 'up', 'down', 'prevBlankLine', 'nextBlankLine', 'wrappedLineStart', 'wrappedLineEnd', 'wrappedLineColumnCenter', 'wrappedLineFirstNonWhitespaceCharacter', 'wrappedLineLastNonWhitespaceCharacter', 'viewPortTop', 'viewPortCenter', 'viewPortBottom', 'viewPortIfOutside']\n },\n 'by': {\n 'type': 'string',\n 'enum': ['line', 'wrappedLine', 'character', 'halfLine']\n },\n 'value': {\n 'type': 'number',\n 'default': 1\n },\n 'select': {\n 'type': 'boolean',\n 'default': false\n }\n }\n }\n }\n ]\n };\n /**\n * Positions in the view for cursor move command.\n */\n CursorMove.RawDirection = {\n Left: 'left',\n Right: 'right',\n Up: 'up',\n Down: 'down',\n PrevBlankLine: 'prevBlankLine',\n NextBlankLine: 'nextBlankLine',\n WrappedLineStart: 'wrappedLineStart',\n WrappedLineFirstNonWhitespaceCharacter: 'wrappedLineFirstNonWhitespaceCharacter',\n WrappedLineColumnCenter: 'wrappedLineColumnCenter',\n WrappedLineEnd: 'wrappedLineEnd',\n WrappedLineLastNonWhitespaceCharacter: 'wrappedLineLastNonWhitespaceCharacter',\n ViewPortTop: 'viewPortTop',\n ViewPortCenter: 'viewPortCenter',\n ViewPortBottom: 'viewPortBottom',\n ViewPortIfOutside: 'viewPortIfOutside'\n };\n /**\n * Units for Cursor move 'by' argument\n */\n CursorMove.RawUnit = {\n Line: 'line',\n WrappedLine: 'wrappedLine',\n Character: 'character',\n HalfLine: 'halfLine'\n };\n function parse(args) {\n if (!args.to) {\n // illegal arguments\n return null;\n }\n let direction;\n switch (args.to) {\n case CursorMove.RawDirection.Left:\n direction = 0 /* Direction.Left */;\n break;\n case CursorMove.RawDirection.Right:\n direction = 1 /* Direction.Right */;\n break;\n case CursorMove.RawDirection.Up:\n direction = 2 /* Direction.Up */;\n break;\n case CursorMove.RawDirection.Down:\n direction = 3 /* Direction.Down */;\n break;\n case CursorMove.RawDirection.PrevBlankLine:\n direction = 4 /* Direction.PrevBlankLine */;\n break;\n case CursorMove.RawDirection.NextBlankLine:\n direction = 5 /* Direction.NextBlankLine */;\n break;\n case CursorMove.RawDirection.WrappedLineStart:\n direction = 6 /* Direction.WrappedLineStart */;\n break;\n case CursorMove.RawDirection.WrappedLineFirstNonWhitespaceCharacter:\n direction = 7 /* Direction.WrappedLineFirstNonWhitespaceCharacter */;\n break;\n case CursorMove.RawDirection.WrappedLineColumnCenter:\n direction = 8 /* Direction.WrappedLineColumnCenter */;\n break;\n case CursorMove.RawDirection.WrappedLineEnd:\n direction = 9 /* Direction.WrappedLineEnd */;\n break;\n case CursorMove.RawDirection.WrappedLineLastNonWhitespaceCharacter:\n direction = 10 /* Direction.WrappedLineLastNonWhitespaceCharacter */;\n break;\n case CursorMove.RawDirection.ViewPortTop:\n direction = 11 /* Direction.ViewPortTop */;\n break;\n case CursorMove.RawDirection.ViewPortBottom:\n direction = 13 /* Direction.ViewPortBottom */;\n break;\n case CursorMove.RawDirection.ViewPortCenter:\n direction = 12 /* Direction.ViewPortCenter */;\n break;\n case CursorMove.RawDirection.ViewPortIfOutside:\n direction = 14 /* Direction.ViewPortIfOutside */;\n break;\n default:\n // illegal arguments\n return null;\n }\n let unit = 0 /* Unit.None */;\n switch (args.by) {\n case CursorMove.RawUnit.Line:\n unit = 1 /* Unit.Line */;\n break;\n case CursorMove.RawUnit.WrappedLine:\n unit = 2 /* Unit.WrappedLine */;\n break;\n case CursorMove.RawUnit.Character:\n unit = 3 /* Unit.Character */;\n break;\n case CursorMove.RawUnit.HalfLine:\n unit = 4 /* Unit.HalfLine */;\n break;\n }\n return {\n direction: direction,\n unit: unit,\n select: (!!args.select),\n value: (args.value || 1)\n };\n }\n CursorMove.parse = parse;\n})(CursorMove || (CursorMove = {}));\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/common/cursor/cursorMoveCommands.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/common/cursor/cursorMoveOperations.js":
/*!****************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/common/cursor/cursorMoveOperations.js ***!
\****************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ CursorPosition: () => (/* binding */ CursorPosition),\n/* harmony export */ MoveOperations: () => (/* binding */ MoveOperations)\n/* harmony export */ });\n/* harmony import */ var _base_common_strings_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../base/common/strings.js */ \"./node_modules/monaco-editor/esm/vs/base/common/strings.js\");\n/* harmony import */ var _core_cursorColumns_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../core/cursorColumns.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/core/cursorColumns.js\");\n/* harmony import */ var _core_position_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../core/position.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/core/position.js\");\n/* harmony import */ var _core_range_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../core/range.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/core/range.js\");\n/* harmony import */ var _cursorAtomicMoveOperations_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./cursorAtomicMoveOperations.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/cursor/cursorAtomicMoveOperations.js\");\n/* harmony import */ var _cursorCommon_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../cursorCommon.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/cursorCommon.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n\n\n\n\n\nclass CursorPosition {\n constructor(lineNumber, column, leftoverVisibleColumns) {\n this._cursorPositionBrand = undefined;\n this.lineNumber = lineNumber;\n this.column = column;\n this.leftoverVisibleColumns = leftoverVisibleColumns;\n }\n}\nclass MoveOperations {\n static leftPosition(model, position) {\n if (position.column > model.getLineMinColumn(position.lineNumber)) {\n return position.delta(undefined, -_base_common_strings_js__WEBPACK_IMPORTED_MODULE_0__.prevCharLength(model.getLineContent(position.lineNumber), position.column - 1));\n }\n else if (position.lineNumber > 1) {\n const newLineNumber = position.lineNumber - 1;\n return new _core_position_js__WEBPACK_IMPORTED_MODULE_2__.Position(newLineNumber, model.getLineMaxColumn(newLineNumber));\n }\n else {\n return position;\n }\n }\n static leftPositionAtomicSoftTabs(model, position, tabSize) {\n if (position.column <= model.getLineIndentColumn(position.lineNumber)) {\n const minColumn = model.getLineMinColumn(position.lineNumber);\n const lineContent = model.getLineContent(position.lineNumber);\n const newPosition = _cursorAtomicMoveOperations_js__WEBPACK_IMPORTED_MODULE_4__.AtomicTabMoveOperations.atomicPosition(lineContent, position.column - 1, tabSize, 0 /* Direction.Left */);\n if (newPosition !== -1 && newPosition + 1 >= minColumn) {\n return new _core_position_js__WEBPACK_IMPORTED_MODULE_2__.Position(position.lineNumber, newPosition + 1);\n }\n }\n return this.leftPosition(model, position);\n }\n static left(config, model, position) {\n const pos = config.stickyTabStops\n ? MoveOperations.leftPositionAtomicSoftTabs(model, position, config.tabSize)\n : MoveOperations.leftPosition(model, position);\n return new CursorPosition(pos.lineNumber, pos.column, 0);\n }\n /**\n * @param noOfColumns Must be either `1`\n * or `Math.round(viewModel.getLineContent(viewLineNumber).length / 2)` (for half lines).\n */\n static moveLeft(config, model, cursor, inSelectionMode, noOfColumns) {\n let lineNumber, column;\n if (cursor.hasSelection() && !inSelectionMode) {\n // If the user has a selection and does not want to extend it,\n // put the cursor at the beginning of the selection.\n lineNumber = cursor.selection.startLineNumber;\n column = cursor.selection.startColumn;\n }\n else {\n // This has no effect if noOfColumns === 1.\n // It is ok to do so in the half-line scenario.\n const pos = cursor.position.delta(undefined, -(noOfColumns - 1));\n // We clip the position before normalization, as normalization is not defined\n // for possibly negative columns.\n const normalizedPos = model.normalizePosition(MoveOperations.clipPositionColumn(pos, model), 0 /* PositionAffinity.Left */);\n const p = MoveOperations.left(config, model, normalizedPos);\n lineNumber = p.lineNumber;\n column = p.column;\n }\n return cursor.move(inSelectionMode, lineNumber, column, 0);\n }\n /**\n * Adjusts the column so that it is within min/max of the line.\n */\n static clipPositionColumn(position, model) {\n return new _core_position_js__WEBPACK_IMPORTED_MODULE_2__.Position(position.lineNumber, MoveOperations.clipRange(position.column, model.getLineMinColumn(position.lineNumber), model.getLineMaxColumn(position.lineNumber)));\n }\n static clipRange(value, min, max) {\n if (value < min) {\n return min;\n }\n if (value > max) {\n return max;\n }\n return value;\n }\n static rightPosition(model, lineNumber, column) {\n if (column < model.getLineMaxColumn(lineNumber)) {\n column = column + _base_common_strings_js__WEBPACK_IMPORTED_MODULE_0__.nextCharLength(model.getLineContent(lineNumber), column - 1);\n }\n else if (lineNumber < model.getLineCount()) {\n lineNumber = lineNumber + 1;\n column = model.getLineMinColumn(lineNumber);\n }\n return new _core_position_js__WEBPACK_IMPORTED_MODULE_2__.Position(lineNumber, column);\n }\n static rightPositionAtomicSoftTabs(model, lineNumber, column, tabSize, indentSize) {\n if (column < model.getLineIndentColumn(lineNumber)) {\n const lineContent = model.getLineContent(lineNumber);\n const newPosition = _cursorAtomicMoveOperations_js__WEBPACK_IMPORTED_MODULE_4__.AtomicTabMoveOperations.atomicPosition(lineContent, column - 1, tabSize, 1 /* Direction.Right */);\n if (newPosition !== -1) {\n return new _core_position_js__WEBPACK_IMPORTED_MODULE_2__.Position(lineNumber, newPosition + 1);\n }\n }\n return this.rightPosition(model, lineNumber, column);\n }\n static right(config, model, position) {\n const pos = config.stickyTabStops\n ? MoveOperations.rightPositionAtomicSoftTabs(model, position.lineNumber, position.column, config.tabSize, config.indentSize)\n : MoveOperations.rightPosition(model, position.lineNumber, position.column);\n return new CursorPosition(pos.lineNumber, pos.column, 0);\n }\n static moveRight(config, model, cursor, inSelectionMode, noOfColumns) {\n let lineNumber, column;\n if (cursor.hasSelection() && !inSelectionMode) {\n // If we are in selection mode, move right without selection cancels selection and puts cursor at the end of the selection\n lineNumber = cursor.selection.endLineNumber;\n column = cursor.selection.endColumn;\n }\n else {\n const pos = cursor.position.delta(undefined, noOfColumns - 1);\n const normalizedPos = model.normalizePosition(MoveOperations.clipPositionColumn(pos, model), 1 /* PositionAffinity.Right */);\n const r = MoveOperations.right(config, model, normalizedPos);\n lineNumber = r.lineNumber;\n column = r.column;\n }\n return cursor.move(inSelectionMode, lineNumber, column, 0);\n }\n static vertical(config, model, lineNumber, column, leftoverVisibleColumns, newLineNumber, allowMoveOnEdgeLine, normalizationAffinity) {\n const currentVisibleColumn = _core_cursorColumns_js__WEBPACK_IMPORTED_MODULE_1__.CursorColumns.visibleColumnFromColumn(model.getLineContent(lineNumber), column, config.tabSize) + leftoverVisibleColumns;\n const lineCount = model.getLineCount();\n const wasOnFirstPosition = (lineNumber === 1 && column === 1);\n const wasOnLastPosition = (lineNumber === lineCount && column === model.getLineMaxColumn(lineNumber));\n const wasAtEdgePosition = (newLineNumber < lineNumber ? wasOnFirstPosition : wasOnLastPosition);\n lineNumber = newLineNumber;\n if (lineNumber < 1) {\n lineNumber = 1;\n if (allowMoveOnEdgeLine) {\n column = model.getLineMinColumn(lineNumber);\n }\n else {\n column = Math.min(model.getLineMaxColumn(lineNumber), column);\n }\n }\n else if (lineNumber > lineCount) {\n lineNumber = lineCount;\n if (allowMoveOnEdgeLine) {\n column = model.getLineMaxColumn(lineNumber);\n }\n else {\n column = Math.min(model.getLineMaxColumn(lineNumber), column);\n }\n }\n else {\n column = config.columnFromVisibleColumn(model, lineNumber, currentVisibleColumn);\n }\n if (wasAtEdgePosition) {\n leftoverVisibleColumns = 0;\n }\n else {\n leftoverVisibleColumns = currentVisibleColumn - _core_cursorColumns_js__WEBPACK_IMPORTED_MODULE_1__.CursorColumns.visibleColumnFromColumn(model.getLineContent(lineNumber), column, config.tabSize);\n }\n if (normalizationAffinity !== undefined) {\n const position = new _core_position_js__WEBPACK_IMPORTED_MODULE_2__.Position(lineNumber, column);\n const newPosition = model.normalizePosition(position, normalizationAffinity);\n leftoverVisibleColumns = leftoverVisibleColumns + (column - newPosition.column);\n lineNumber = newPosition.lineNumber;\n column = newPosition.column;\n }\n return new CursorPosition(lineNumber, column, leftoverVisibleColumns);\n }\n static down(config, model, lineNumber, column, leftoverVisibleColumns, count, allowMoveOnLastLine) {\n return this.vertical(config, model, lineNumber, column, leftoverVisibleColumns, lineNumber + count, allowMoveOnLastLine, 4 /* PositionAffinity.RightOfInjectedText */);\n }\n static moveDown(config, model, cursor, inSelectionMode, linesCount) {\n let lineNumber, column;\n if (cursor.hasSelection() && !inSelectionMode) {\n // If we are in selection mode, move down acts relative to the end of selection\n lineNumber = cursor.selection.endLineNumber;\n column = cursor.selection.endColumn;\n }\n else {\n lineNumber = cursor.position.lineNumber;\n column = cursor.position.column;\n }\n let i = 0;\n let r;\n do {\n r = MoveOperations.down(config, model, lineNumber + i, column, cursor.leftoverVisibleColumns, linesCount, true);\n const np = model.normalizePosition(new _core_position_js__WEBPACK_IMPORTED_MODULE_2__.Position(r.lineNumber, r.column), 2 /* PositionAffinity.None */);\n if (np.lineNumber > lineNumber) {\n break;\n }\n } while (i++ < 10 && lineNumber + i < model.getLineCount());\n return cursor.move(inSelectionMode, r.lineNumber, r.column, r.leftoverVisibleColumns);\n }\n static translateDown(config, model, cursor) {\n const selection = cursor.selection;\n const selectionStart = MoveOperations.down(config, model, selection.selectionStartLineNumber, selection.selectionStartColumn, cursor.selectionStartLeftoverVisibleColumns, 1, false);\n const position = MoveOperations.down(config, model, selection.positionLineNumber, selection.positionColumn, cursor.leftoverVisibleColumns, 1, false);\n return new _cursorCommon_js__WEBPACK_IMPORTED_MODULE_5__.SingleCursorState(new _core_range_js__WEBPACK_IMPORTED_MODULE_3__.Range(selectionStart.lineNumber, selectionStart.column, selectionStart.lineNumber, selectionStart.column), 0 /* SelectionStartKind.Simple */, selectionStart.leftoverVisibleColumns, new _core_position_js__WEBPACK_IMPORTED_MODULE_2__.Position(position.lineNumber, position.column), position.leftoverVisibleColumns);\n }\n static up(config, model, lineNumber, column, leftoverVisibleColumns, count, allowMoveOnFirstLine) {\n return this.vertical(config, model, lineNumber, column, leftoverVisibleColumns, lineNumber - count, allowMoveOnFirstLine, 3 /* PositionAffinity.LeftOfInjectedText */);\n }\n static moveUp(config, model, cursor, inSelectionMode, linesCount) {\n let lineNumber, column;\n if (cursor.hasSelection() && !inSelectionMode) {\n // If we are in selection mode, move up acts relative to the beginning of selection\n lineNumber = cursor.selection.startLineNumber;\n column = cursor.selection.startColumn;\n }\n else {\n lineNumber = cursor.position.lineNumber;\n column = cursor.position.column;\n }\n const r = MoveOperations.up(config, model, lineNumber, column, cursor.leftoverVisibleColumns, linesCount, true);\n return cursor.move(inSelectionMode, r.lineNumber, r.column, r.leftoverVisibleColumns);\n }\n static translateUp(config, model, cursor) {\n const selection = cursor.selection;\n const selectionStart = MoveOperations.up(config, model, selection.selectionStartLineNumber, selection.selectionStartColumn, cursor.selectionStartLeftoverVisibleColumns, 1, false);\n const position = MoveOperations.up(config, model, selection.positionLineNumber, selection.positionColumn, cursor.leftoverVisibleColumns, 1, false);\n return new _cursorCommon_js__WEBPACK_IMPORTED_MODULE_5__.SingleCursorState(new _core_range_js__WEBPACK_IMPORTED_MODULE_3__.Range(selectionStart.lineNumber, selectionStart.column, selectionStart.lineNumber, selectionStart.column), 0 /* SelectionStartKind.Simple */, selectionStart.leftoverVisibleColumns, new _core_position_js__WEBPACK_IMPORTED_MODULE_2__.Position(position.lineNumber, position.column), position.leftoverVisibleColumns);\n }\n static _isBlankLine(model, lineNumber) {\n if (model.getLineFirstNonWhitespaceColumn(lineNumber) === 0) {\n // empty or contains only whitespace\n return true;\n }\n return false;\n }\n static moveToPrevBlankLine(config, model, cursor, inSelectionMode) {\n let lineNumber = cursor.position.lineNumber;\n // If our current line is blank, move to the previous non-blank line\n while (lineNumber > 1 && this._isBlankLine(model, lineNumber)) {\n lineNumber--;\n }\n // Find the previous blank line\n while (lineNumber > 1 && !this._isBlankLine(model, lineNumber)) {\n lineNumber--;\n }\n return cursor.move(inSelectionMode, lineNumber, model.getLineMinColumn(lineNumber), 0);\n }\n static moveToNextBlankLine(config, model, cursor, inSelectionMode) {\n const lineCount = model.getLineCount();\n let lineNumber = cursor.position.lineNumber;\n // If our current line is blank, move to the next non-blank line\n while (lineNumber < lineCount && this._isBlankLine(model, lineNumber)) {\n lineNumber++;\n }\n // Find the next blank line\n while (lineNumber < lineCount && !this._isBlankLine(model, lineNumber)) {\n lineNumber++;\n }\n return cursor.move(inSelectionMode, lineNumber, model.getLineMinColumn(lineNumber), 0);\n }\n static moveToBeginningOfLine(config, model, cursor, inSelectionMode) {\n const lineNumber = cursor.position.lineNumber;\n const minColumn = model.getLineMinColumn(lineNumber);\n const firstNonBlankColumn = model.getLineFirstNonWhitespaceColumn(lineNumber) || minColumn;\n let column;\n const relevantColumnNumber = cursor.position.column;\n if (relevantColumnNumber === firstNonBlankColumn) {\n column = minColumn;\n }\n else {\n column = firstNonBlankColumn;\n }\n return cursor.move(inSelectionMode, lineNumber, column, 0);\n }\n static moveToEndOfLine(config, model, cursor, inSelectionMode, sticky) {\n const lineNumber = cursor.position.lineNumber;\n const maxColumn = model.getLineMaxColumn(lineNumber);\n return cursor.move(inSelectionMode, lineNumber, maxColumn, sticky ? 1073741824 /* Constants.MAX_SAFE_SMALL_INTEGER */ - maxColumn : 0);\n }\n static moveToBeginningOfBuffer(config, model, cursor, inSelectionMode) {\n return cursor.move(inSelectionMode, 1, 1, 0);\n }\n static moveToEndOfBuffer(config, model, cursor, inSelectionMode) {\n const lastLineNumber = model.getLineCount();\n const lastColumn = model.getLineMaxColumn(lastLineNumber);\n return cursor.move(inSelectionMode, lastLineNumber, lastColumn, 0);\n }\n}\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/common/cursor/cursorMoveOperations.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/common/cursor/cursorTypeOperations.js":
/*!****************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/common/cursor/cursorTypeOperations.js ***!
\****************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ CompositionOutcome: () => (/* binding */ CompositionOutcome),\n/* harmony export */ TypeOperations: () => (/* binding */ TypeOperations),\n/* harmony export */ TypeWithAutoClosingCommand: () => (/* binding */ TypeWithAutoClosingCommand)\n/* harmony export */ });\n/* harmony import */ var _base_common_errors_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../base/common/errors.js */ \"./node_modules/monaco-editor/esm/vs/base/common/errors.js\");\n/* harmony import */ var _base_common_strings_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../base/common/strings.js */ \"./node_modules/monaco-editor/esm/vs/base/common/strings.js\");\n/* harmony import */ var _commands_replaceCommand_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../commands/replaceCommand.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/commands/replaceCommand.js\");\n/* harmony import */ var _commands_shiftCommand_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../commands/shiftCommand.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/commands/shiftCommand.js\");\n/* harmony import */ var _commands_surroundSelectionCommand_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../commands/surroundSelectionCommand.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/commands/surroundSelectionCommand.js\");\n/* harmony import */ var _cursorCommon_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../cursorCommon.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/cursorCommon.js\");\n/* harmony import */ var _core_wordCharacterClassifier_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../core/wordCharacterClassifier.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/core/wordCharacterClassifier.js\");\n/* harmony import */ var _core_range_js__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ../core/range.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/core/range.js\");\n/* harmony import */ var _core_position_js__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ../core/position.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/core/position.js\");\n/* harmony import */ var _languages_languageConfiguration_js__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ../languages/languageConfiguration.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/languages/languageConfiguration.js\");\n/* harmony import */ var _languages_languageConfigurationRegistry_js__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! ../languages/languageConfigurationRegistry.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/languages/languageConfigurationRegistry.js\");\n/* harmony import */ var _languages_supports_js__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(/*! ../languages/supports.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/languages/supports.js\");\n/* harmony import */ var _languages_autoIndent_js__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(/*! ../languages/autoIndent.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/languages/autoIndent.js\");\n/* harmony import */ var _languages_enterAction_js__WEBPACK_IMPORTED_MODULE_13__ = __webpack_require__(/*! ../languages/enterAction.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/languages/enterAction.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nclass TypeOperations {\n static indent(config, model, selections) {\n if (model === null || selections === null) {\n return [];\n }\n const commands = [];\n for (let i = 0, len = selections.length; i < len; i++) {\n commands[i] = new _commands_shiftCommand_js__WEBPACK_IMPORTED_MODULE_3__.ShiftCommand(selections[i], {\n isUnshift: false,\n tabSize: config.tabSize,\n indentSize: config.indentSize,\n insertSpaces: config.insertSpaces,\n useTabStops: config.useTabStops,\n autoIndent: config.autoIndent\n }, config.languageConfigurationService);\n }\n return commands;\n }\n static outdent(config, model, selections) {\n const commands = [];\n for (let i = 0, len = selections.length; i < len; i++) {\n commands[i] = new _commands_shiftCommand_js__WEBPACK_IMPORTED_MODULE_3__.ShiftCommand(selections[i], {\n isUnshift: true,\n tabSize: config.tabSize,\n indentSize: config.indentSize,\n insertSpaces: config.insertSpaces,\n useTabStops: config.useTabStops,\n autoIndent: config.autoIndent\n }, config.languageConfigurationService);\n }\n return commands;\n }\n static shiftIndent(config, indentation, count) {\n count = count || 1;\n return _commands_shiftCommand_js__WEBPACK_IMPORTED_MODULE_3__.ShiftCommand.shiftIndent(indentation, indentation.length + count, config.tabSize, config.indentSize, config.insertSpaces);\n }\n static unshiftIndent(config, indentation, count) {\n count = count || 1;\n return _commands_shiftCommand_js__WEBPACK_IMPORTED_MODULE_3__.ShiftCommand.unshiftIndent(indentation, indentation.length + count, config.tabSize, config.indentSize, config.insertSpaces);\n }\n static _distributedPaste(config, model, selections, text) {\n const commands = [];\n for (let i = 0, len = selections.length; i < len; i++) {\n commands[i] = new _commands_replaceCommand_js__WEBPACK_IMPORTED_MODULE_2__.ReplaceCommand(selections[i], text[i]);\n }\n return new _cursorCommon_js__WEBPACK_IMPORTED_MODULE_5__.EditOperationResult(0 /* EditOperationType.Other */, commands, {\n shouldPushStackElementBefore: true,\n shouldPushStackElementAfter: true\n });\n }\n static _simplePaste(config, model, selections, text, pasteOnNewLine) {\n const commands = [];\n for (let i = 0, len = selections.length; i < len; i++) {\n const selection = selections[i];\n const position = selection.getPosition();\n if (pasteOnNewLine && !selection.isEmpty()) {\n pasteOnNewLine = false;\n }\n if (pasteOnNewLine && text.indexOf('\\n') !== text.length - 1) {\n pasteOnNewLine = false;\n }\n if (pasteOnNewLine) {\n // Paste entire line at the beginning of line\n const typeSelection = new _core_range_js__WEBPACK_IMPORTED_MODULE_7__.Range(position.lineNumber, 1, position.lineNumber, 1);\n commands[i] = new _commands_replaceCommand_js__WEBPACK_IMPORTED_MODULE_2__.ReplaceCommandThatPreservesSelection(typeSelection, text, selection, true);\n }\n else {\n commands[i] = new _commands_replaceCommand_js__WEBPACK_IMPORTED_MODULE_2__.ReplaceCommand(selection, text);\n }\n }\n return new _cursorCommon_js__WEBPACK_IMPORTED_MODULE_5__.EditOperationResult(0 /* EditOperationType.Other */, commands, {\n shouldPushStackElementBefore: true,\n shouldPushStackElementAfter: true\n });\n }\n static _distributePasteToCursors(config, selections, text, pasteOnNewLine, multicursorText) {\n if (pasteOnNewLine) {\n return null;\n }\n if (selections.length === 1) {\n return null;\n }\n if (multicursorText && multicursorText.length === selections.length) {\n return multicursorText;\n }\n if (config.multiCursorPaste === 'spread') {\n // Try to spread the pasted text in case the line count matches the cursor count\n // Remove trailing \\n if present\n if (text.charCodeAt(text.length - 1) === 10 /* CharCode.LineFeed */) {\n text = text.substr(0, text.length - 1);\n }\n // Remove trailing \\r if present\n if (text.charCodeAt(text.length - 1) === 13 /* CharCode.CarriageReturn */) {\n text = text.substr(0, text.length - 1);\n }\n const lines = _base_common_strings_js__WEBPACK_IMPORTED_MODULE_1__.splitLines(text);\n if (lines.length === selections.length) {\n return lines;\n }\n }\n return null;\n }\n static paste(config, model, selections, text, pasteOnNewLine, multicursorText) {\n const distributedPaste = this._distributePasteToCursors(config, selections, text, pasteOnNewLine, multicursorText);\n if (distributedPaste) {\n selections = selections.sort(_core_range_js__WEBPACK_IMPORTED_MODULE_7__.Range.compareRangesUsingStarts);\n return this._distributedPaste(config, model, selections, distributedPaste);\n }\n else {\n return this._simplePaste(config, model, selections, text, pasteOnNewLine);\n }\n }\n static _goodIndentForLine(config, model, lineNumber) {\n let action = null;\n let indentation = '';\n const expectedIndentAction = (0,_languages_autoIndent_js__WEBPACK_IMPORTED_MODULE_12__.getInheritIndentForLine)(config.autoIndent, model, lineNumber, false, config.languageConfigurationService);\n if (expectedIndentAction) {\n action = expectedIndentAction.action;\n indentation = expectedIndentAction.indentation;\n }\n else if (lineNumber > 1) {\n let lastLineNumber;\n for (lastLineNumber = lineNumber - 1; lastLineNumber >= 1; lastLineNumber--) {\n const lineText = model.getLineContent(lastLineNumber);\n const nonWhitespaceIdx = _base_common_strings_js__WEBPACK_IMPORTED_MODULE_1__.lastNonWhitespaceIndex(lineText);\n if (nonWhitespaceIdx >= 0) {\n break;\n }\n }\n if (lastLineNumber < 1) {\n // No previous line with content found\n return null;\n }\n const maxColumn = model.getLineMaxColumn(lastLineNumber);\n const expectedEnterAction = (0,_languages_enterAction_js__WEBPACK_IMPORTED_MODULE_13__.getEnterAction)(config.autoIndent, model, new _core_range_js__WEBPACK_IMPORTED_MODULE_7__.Range(lastLineNumber, maxColumn, lastLineNumber, maxColumn), config.languageConfigurationService);\n if (expectedEnterAction) {\n indentation = expectedEnterAction.indentation + expectedEnterAction.appendText;\n }\n }\n if (action) {\n if (action === _languages_languageConfiguration_js__WEBPACK_IMPORTED_MODULE_9__.IndentAction.Indent) {\n indentation = TypeOperations.shiftIndent(config, indentation);\n }\n if (action === _languages_languageConfiguration_js__WEBPACK_IMPORTED_MODULE_9__.IndentAction.Outdent) {\n indentation = TypeOperations.unshiftIndent(config, indentation);\n }\n indentation = config.normalizeIndentation(indentation);\n }\n if (!indentation) {\n return null;\n }\n return indentation;\n }\n static _replaceJumpToNextIndent(config, model, selection, insertsAutoWhitespace) {\n let typeText = '';\n const position = selection.getStartPosition();\n if (config.insertSpaces) {\n const visibleColumnFromColumn = config.visibleColumnFromColumn(model, position);\n const indentSize = config.indentSize;\n const spacesCnt = indentSize - (visibleColumnFromColumn % indentSize);\n for (let i = 0; i < spacesCnt; i++) {\n typeText += ' ';\n }\n }\n else {\n typeText = '\\t';\n }\n return new _commands_replaceCommand_js__WEBPACK_IMPORTED_MODULE_2__.ReplaceCommand(selection, typeText, insertsAutoWhitespace);\n }\n static tab(config, model, selections) {\n const commands = [];\n for (let i = 0, len = selections.length; i < len; i++) {\n const selection = selections[i];\n if (selection.isEmpty()) {\n const lineText = model.getLineContent(selection.startLineNumber);\n if (/^\\s*$/.test(lineText) && model.tokenization.isCheapToTokenize(selection.startLineNumber)) {\n let goodIndent = this._goodIndentForLine(config, model, selection.startLineNumber);\n goodIndent = goodIndent || '\\t';\n const possibleTypeText = config.normalizeIndentation(goodIndent);\n if (!lineText.startsWith(possibleTypeText)) {\n commands[i] = new _commands_replaceCommand_js__WEBPACK_IMPORTED_MODULE_2__.ReplaceCommand(new _core_range_js__WEBPACK_IMPORTED_MODULE_7__.Range(selection.startLineNumber, 1, selection.startLineNumber, lineText.length + 1), possibleTypeText, true);\n continue;\n }\n }\n commands[i] = this._replaceJumpToNextIndent(config, model, selection, true);\n }\n else {\n if (selection.startLineNumber === selection.endLineNumber) {\n const lineMaxColumn = model.getLineMaxColumn(selection.startLineNumber);\n if (selection.startColumn !== 1 || selection.endColumn !== lineMaxColumn) {\n // This is a single line selection that is not the entire line\n commands[i] = this._replaceJumpToNextIndent(config, model, selection, false);\n continue;\n }\n }\n commands[i] = new _commands_shiftCommand_js__WEBPACK_IMPORTED_MODULE_3__.ShiftCommand(selection, {\n isUnshift: false,\n tabSize: config.tabSize,\n indentSize: config.indentSize,\n insertSpaces: config.insertSpaces,\n useTabStops: config.useTabStops,\n autoIndent: config.autoIndent\n }, config.languageConfigurationService);\n }\n }\n return commands;\n }\n static compositionType(prevEditOperationType, config, model, selections, text, replacePrevCharCnt, replaceNextCharCnt, positionDelta) {\n const commands = selections.map(selection => this._compositionType(model, selection, text, replacePrevCharCnt, replaceNextCharCnt, positionDelta));\n return new _cursorCommon_js__WEBPACK_IMPORTED_MODULE_5__.EditOperationResult(4 /* EditOperationType.TypingOther */, commands, {\n shouldPushStackElementBefore: shouldPushStackElementBetween(prevEditOperationType, 4 /* EditOperationType.TypingOther */),\n shouldPushStackElementAfter: false\n });\n }\n static _compositionType(model, selection, text, replacePrevCharCnt, replaceNextCharCnt, positionDelta) {\n if (!selection.isEmpty()) {\n // looks like https://github.com/microsoft/vscode/issues/2773\n // where a cursor operation occurred before a canceled composition\n // => ignore composition\n return null;\n }\n const pos = selection.getPosition();\n const startColumn = Math.max(1, pos.column - replacePrevCharCnt);\n const endColumn = Math.min(model.getLineMaxColumn(pos.lineNumber), pos.column + replaceNextCharCnt);\n const range = new _core_range_js__WEBPACK_IMPORTED_MODULE_7__.Range(pos.lineNumber, startColumn, pos.lineNumber, endColumn);\n const oldText = model.getValueInRange(range);\n if (oldText === text && positionDelta === 0) {\n // => ignore composition that doesn't do anything\n return null;\n }\n return new _commands_replaceCommand_js__WEBPACK_IMPORTED_MODULE_2__.ReplaceCommandWithOffsetCursorState(range, text, 0, positionDelta);\n }\n static _typeCommand(range, text, keepPosition) {\n if (keepPosition) {\n return new _commands_replaceCommand_js__WEBPACK_IMPORTED_MODULE_2__.ReplaceCommandWithoutChangingPosition(range, text, true);\n }\n else {\n return new _commands_replaceCommand_js__WEBPACK_IMPORTED_MODULE_2__.ReplaceCommand(range, text, true);\n }\n }\n static _enter(config, model, keepPosition, range) {\n if (config.autoIndent === 0 /* EditorAutoIndentStrategy.None */) {\n return TypeOperations._typeCommand(range, '\\n', keepPosition);\n }\n if (!model.tokenization.isCheapToTokenize(range.getStartPosition().lineNumber) || config.autoIndent === 1 /* EditorAutoIndentStrategy.Keep */) {\n const lineText = model.getLineContent(range.startLineNumber);\n const indentation = _base_common_strings_js__WEBPACK_IMPORTED_MODULE_1__.getLeadingWhitespace(lineText).substring(0, range.startColumn - 1);\n return TypeOperations._typeCommand(range, '\\n' + config.normalizeIndentation(indentation), keepPosition);\n }\n const r = (0,_languages_enterAction_js__WEBPACK_IMPORTED_MODULE_13__.getEnterAction)(config.autoIndent, model, range, config.languageConfigurationService);\n if (r) {\n if (r.indentAction === _languages_languageConfiguration_js__WEBPACK_IMPORTED_MODULE_9__.IndentAction.None) {\n // Nothing special\n return TypeOperations._typeCommand(range, '\\n' + config.normalizeIndentation(r.indentation + r.appendText), keepPosition);\n }\n else if (r.indentAction === _languages_languageConfiguration_js__WEBPACK_IMPORTED_MODULE_9__.IndentAction.Indent) {\n // Indent once\n return TypeOperations._typeCommand(range, '\\n' + config.normalizeIndentation(r.indentation + r.appendText), keepPosition);\n }\n else if (r.indentAction === _languages_languageConfiguration_js__WEBPACK_IMPORTED_MODULE_9__.IndentAction.IndentOutdent) {\n // Ultra special\n const normalIndent = config.normalizeIndentation(r.indentation);\n const increasedIndent = config.normalizeIndentation(r.indentation + r.appendText);\n const typeText = '\\n' + increasedIndent + '\\n' + normalIndent;\n if (keepPosition) {\n return new _commands_replaceCommand_js__WEBPACK_IMPORTED_MODULE_2__.ReplaceCommandWithoutChangingPosition(range, typeText, true);\n }\n else {\n return new _commands_replaceCommand_js__WEBPACK_IMPORTED_MODULE_2__.ReplaceCommandWithOffsetCursorState(range, typeText, -1, increasedIndent.length - normalIndent.length, true);\n }\n }\n else if (r.indentAction === _languages_languageConfiguration_js__WEBPACK_IMPORTED_MODULE_9__.IndentAction.Outdent) {\n const actualIndentation = TypeOperations.unshiftIndent(config, r.indentation);\n return TypeOperations._typeCommand(range, '\\n' + config.normalizeIndentation(actualIndentation + r.appendText), keepPosition);\n }\n }\n const lineText = model.getLineContent(range.startLineNumber);\n const indentation = _base_common_strings_js__WEBPACK_IMPORTED_MODULE_1__.getLeadingWhitespace(lineText).substring(0, range.startColumn - 1);\n if (config.autoIndent >= 4 /* EditorAutoIndentStrategy.Full */) {\n const ir = (0,_languages_autoIndent_js__WEBPACK_IMPORTED_MODULE_12__.getIndentForEnter)(config.autoIndent, model, range, {\n unshiftIndent: (indent) => {\n return TypeOperations.unshiftIndent(config, indent);\n },\n shiftIndent: (indent) => {\n return TypeOperations.shiftIndent(config, indent);\n },\n normalizeIndentation: (indent) => {\n return config.normalizeIndentation(indent);\n }\n }, config.languageConfigurationService);\n if (ir) {\n let oldEndViewColumn = config.visibleColumnFromColumn(model, range.getEndPosition());\n const oldEndColumn = range.endColumn;\n const newLineContent = model.getLineContent(range.endLineNumber);\n const firstNonWhitespace = _base_common_strings_js__WEBPACK_IMPORTED_MODULE_1__.firstNonWhitespaceIndex(newLineContent);\n if (firstNonWhitespace >= 0) {\n range = range.setEndPosition(range.endLineNumber, Math.max(range.endColumn, firstNonWhitespace + 1));\n }\n else {\n range = range.setEndPosition(range.endLineNumber, model.getLineMaxColumn(range.endLineNumber));\n }\n if (keepPosition) {\n return new _commands_replaceCommand_js__WEBPACK_IMPORTED_MODULE_2__.ReplaceCommandWithoutChangingPosition(range, '\\n' + config.normalizeIndentation(ir.afterEnter), true);\n }\n else {\n let offset = 0;\n if (oldEndColumn <= firstNonWhitespace + 1) {\n if (!config.insertSpaces) {\n oldEndViewColumn = Math.ceil(oldEndViewColumn / config.indentSize);\n }\n offset = Math.min(oldEndViewColumn + 1 - config.normalizeIndentation(ir.afterEnter).length - 1, 0);\n }\n return new _commands_replaceCommand_js__WEBPACK_IMPORTED_MODULE_2__.ReplaceCommandWithOffsetCursorState(range, '\\n' + config.normalizeIndentation(ir.afterEnter), 0, offset, true);\n }\n }\n }\n return TypeOperations._typeCommand(range, '\\n' + config.normalizeIndentation(indentation), keepPosition);\n }\n static _isAutoIndentType(config, model, selections) {\n if (config.autoIndent < 4 /* EditorAutoIndentStrategy.Full */) {\n return false;\n }\n for (let i = 0, len = selections.length; i < len; i++) {\n if (!model.tokenization.isCheapToTokenize(selections[i].getEndPosition().lineNumber)) {\n return false;\n }\n }\n return true;\n }\n static _runAutoIndentType(config, model, range, ch) {\n const currentIndentation = (0,_languages_languageConfigurationRegistry_js__WEBPACK_IMPORTED_MODULE_10__.getIndentationAtPosition)(model, range.startLineNumber, range.startColumn);\n const actualIndentation = (0,_languages_autoIndent_js__WEBPACK_IMPORTED_MODULE_12__.getIndentActionForType)(config.autoIndent, model, range, ch, {\n shiftIndent: (indentation) => {\n return TypeOperations.shiftIndent(config, indentation);\n },\n unshiftIndent: (indentation) => {\n return TypeOperations.unshiftIndent(config, indentation);\n },\n }, config.languageConfigurationService);\n if (actualIndentation === null) {\n return null;\n }\n if (actualIndentation !== config.normalizeIndentation(currentIndentation)) {\n const firstNonWhitespace = model.getLineFirstNonWhitespaceColumn(range.startLineNumber);\n if (firstNonWhitespace === 0) {\n return TypeOperations._typeCommand(new _core_range_js__WEBPACK_IMPORTED_MODULE_7__.Range(range.startLineNumber, 1, range.endLineNumber, range.endColumn), config.normalizeIndentation(actualIndentation) + ch, false);\n }\n else {\n return TypeOperations._typeCommand(new _core_range_js__WEBPACK_IMPORTED_MODULE_7__.Range(range.startLineNumber, 1, range.endLineNumber, range.endColumn), config.normalizeIndentation(actualIndentation) +\n model.getLineContent(range.startLineNumber).substring(firstNonWhitespace - 1, range.startColumn - 1) + ch, false);\n }\n }\n return null;\n }\n static _isAutoClosingOvertype(config, model, selections, autoClosedCharacters, ch) {\n if (config.autoClosingOvertype === 'never') {\n return false;\n }\n if (!config.autoClosingPairs.autoClosingPairsCloseSingleChar.has(ch)) {\n return false;\n }\n for (let i = 0, len = selections.length; i < len; i++) {\n const selection = selections[i];\n if (!selection.isEmpty()) {\n return false;\n }\n const position = selection.getPosition();\n const lineText = model.getLineContent(position.lineNumber);\n const afterCharacter = lineText.charAt(position.column - 1);\n if (afterCharacter !== ch) {\n return false;\n }\n // Do not over-type quotes after a backslash\n const chIsQuote = (0,_cursorCommon_js__WEBPACK_IMPORTED_MODULE_5__.isQuote)(ch);\n const beforeCharacter = position.column > 2 ? lineText.charCodeAt(position.column - 2) : 0 /* CharCode.Null */;\n if (beforeCharacter === 92 /* CharCode.Backslash */ && chIsQuote) {\n return false;\n }\n // Must over-type a closing character typed by the editor\n if (config.autoClosingOvertype === 'auto') {\n let found = false;\n for (let j = 0, lenJ = autoClosedCharacters.length; j < lenJ; j++) {\n const autoClosedCharacter = autoClosedCharacters[j];\n if (position.lineNumber === autoClosedCharacter.startLineNumber && position.column === autoClosedCharacter.startColumn) {\n found = true;\n break;\n }\n }\n if (!found) {\n return false;\n }\n }\n }\n return true;\n }\n static _runAutoClosingOvertype(prevEditOperationType, config, model, selections, ch) {\n const commands = [];\n for (let i = 0, len = selections.length; i < len; i++) {\n const selection = selections[i];\n const position = selection.getPosition();\n const typeSelection = new _core_range_js__WEBPACK_IMPORTED_MODULE_7__.Range(position.lineNumber, position.column, position.lineNumber, position.column + 1);\n commands[i] = new _commands_replaceCommand_js__WEBPACK_IMPORTED_MODULE_2__.ReplaceCommand(typeSelection, ch);\n }\n return new _cursorCommon_js__WEBPACK_IMPORTED_MODULE_5__.EditOperationResult(4 /* EditOperationType.TypingOther */, commands, {\n shouldPushStackElementBefore: shouldPushStackElementBetween(prevEditOperationType, 4 /* EditOperationType.TypingOther */),\n shouldPushStackElementAfter: false\n });\n }\n static _isBeforeClosingBrace(config, lineAfter) {\n // If the start of lineAfter can be interpretted as both a starting or ending brace, default to returning false\n const nextChar = lineAfter.charAt(0);\n const potentialStartingBraces = config.autoClosingPairs.autoClosingPairsOpenByStart.get(nextChar) || [];\n const potentialClosingBraces = config.autoClosingPairs.autoClosingPairsCloseByStart.get(nextChar) || [];\n const isBeforeStartingBrace = potentialStartingBraces.some(x => lineAfter.startsWith(x.open));\n const isBeforeClosingBrace = potentialClosingBraces.some(x => lineAfter.startsWith(x.close));\n return !isBeforeStartingBrace && isBeforeClosingBrace;\n }\n /**\n * Determine if typing `ch` at all `positions` in the `model` results in an\n * auto closing open sequence being typed.\n *\n * Auto closing open sequences can consist of multiple characters, which\n * can lead to ambiguities. In such a case, the longest auto-closing open\n * sequence is returned.\n */\n static _findAutoClosingPairOpen(config, model, positions, ch) {\n const candidates = config.autoClosingPairs.autoClosingPairsOpenByEnd.get(ch);\n if (!candidates) {\n return null;\n }\n // Determine which auto-closing pair it is\n let result = null;\n for (const candidate of candidates) {\n if (result === null || candidate.open.length > result.open.length) {\n let candidateIsMatch = true;\n for (const position of positions) {\n const relevantText = model.getValueInRange(new _core_range_js__WEBPACK_IMPORTED_MODULE_7__.Range(position.lineNumber, position.column - candidate.open.length + 1, position.lineNumber, position.column));\n if (relevantText + ch !== candidate.open) {\n candidateIsMatch = false;\n break;\n }\n }\n if (candidateIsMatch) {\n result = candidate;\n }\n }\n }\n return result;\n }\n /**\n * Find another auto-closing pair that is contained by the one passed in.\n *\n * e.g. when having [(,)] and [(*,*)] as auto-closing pairs\n * this method will find [(,)] as a containment pair for [(*,*)]\n */\n static _findContainedAutoClosingPair(config, pair) {\n if (pair.open.length <= 1) {\n return null;\n }\n const lastChar = pair.close.charAt(pair.close.length - 1);\n // get candidates with the same last character as close\n const candidates = config.autoClosingPairs.autoClosingPairsCloseByEnd.get(lastChar) || [];\n let result = null;\n for (const candidate of candidates) {\n if (candidate.open !== pair.open && pair.open.includes(candidate.open) && pair.close.endsWith(candidate.close)) {\n if (!result || candidate.open.length > result.open.length) {\n result = candidate;\n }\n }\n }\n return result;\n }\n static _getAutoClosingPairClose(config, model, selections, ch, chIsAlreadyTyped) {\n for (const selection of selections) {\n if (!selection.isEmpty()) {\n return null;\n }\n }\n // This method is called both when typing (regularly) and when composition ends\n // This means that we need to work with a text buffer where sometimes `ch` is not\n // there (it is being typed right now) or with a text buffer where `ch` has already been typed\n //\n // In order to avoid adding checks for `chIsAlreadyTyped` in all places, we will work\n // with two conceptual positions, the position before `ch` and the position after `ch`\n //\n const positions = selections.map((s) => {\n const position = s.getPosition();\n if (chIsAlreadyTyped) {\n return { lineNumber: position.lineNumber, beforeColumn: position.column - ch.length, afterColumn: position.column };\n }\n else {\n return { lineNumber: position.lineNumber, beforeColumn: position.column, afterColumn: position.column };\n }\n });\n // Find the longest auto-closing open pair in case of multiple ending in `ch`\n // e.g. when having [f\",\"] and [\",\"], it picks [f\",\"] if the character before is f\n const pair = this._findAutoClosingPairOpen(config, model, positions.map(p => new _core_position_js__WEBPACK_IMPORTED_MODULE_8__.Position(p.lineNumber, p.beforeColumn)), ch);\n if (!pair) {\n return null;\n }\n let autoCloseConfig;\n let shouldAutoCloseBefore;\n const chIsQuote = (0,_cursorCommon_js__WEBPACK_IMPORTED_MODULE_5__.isQuote)(ch);\n if (chIsQuote) {\n autoCloseConfig = config.autoClosingQuotes;\n shouldAutoCloseBefore = config.shouldAutoCloseBefore.quote;\n }\n else {\n const pairIsForComments = config.blockCommentStartToken ? pair.open.includes(config.blockCommentStartToken) : false;\n if (pairIsForComments) {\n autoCloseConfig = config.autoClosingComments;\n shouldAutoCloseBefore = config.shouldAutoCloseBefore.comment;\n }\n else {\n autoCloseConfig = config.autoClosingBrackets;\n shouldAutoCloseBefore = config.shouldAutoCloseBefore.bracket;\n }\n }\n if (autoCloseConfig === 'never') {\n return null;\n }\n // Sometimes, it is possible to have two auto-closing pairs that have a containment relationship\n // e.g. when having [(,)] and [(*,*)]\n // - when typing (, the resulting state is (|)\n // - when typing *, the desired resulting state is (*|*), not (*|*))\n const containedPair = this._findContainedAutoClosingPair(config, pair);\n const containedPairClose = containedPair ? containedPair.close : '';\n let isContainedPairPresent = true;\n for (const position of positions) {\n const { lineNumber, beforeColumn, afterColumn } = position;\n const lineText = model.getLineContent(lineNumber);\n const lineBefore = lineText.substring(0, beforeColumn - 1);\n const lineAfter = lineText.substring(afterColumn - 1);\n if (!lineAfter.startsWith(containedPairClose)) {\n isContainedPairPresent = false;\n }\n // Only consider auto closing the pair if an allowed character follows or if another autoclosed pair closing brace follows\n if (lineAfter.length > 0) {\n const characterAfter = lineAfter.charAt(0);\n const isBeforeCloseBrace = TypeOperations._isBeforeClosingBrace(config, lineAfter);\n if (!isBeforeCloseBrace && !shouldAutoCloseBefore(characterAfter)) {\n return null;\n }\n }\n // Do not auto-close ' or \" after a word character\n if (pair.open.length === 1 && (ch === '\\'' || ch === '\"') && autoCloseConfig !== 'always') {\n const wordSeparators = (0,_core_wordCharacterClassifier_js__WEBPACK_IMPORTED_MODULE_6__.getMapForWordSeparators)(config.wordSeparators);\n if (lineBefore.length > 0) {\n const characterBefore = lineBefore.charCodeAt(lineBefore.length - 1);\n if (wordSeparators.get(characterBefore) === 0 /* WordCharacterClass.Regular */) {\n return null;\n }\n }\n }\n if (!model.tokenization.isCheapToTokenize(lineNumber)) {\n // Do not force tokenization\n return null;\n }\n model.tokenization.forceTokenization(lineNumber);\n const lineTokens = model.tokenization.getLineTokens(lineNumber);\n const scopedLineTokens = (0,_languages_supports_js__WEBPACK_IMPORTED_MODULE_11__.createScopedLineTokens)(lineTokens, beforeColumn - 1);\n if (!pair.shouldAutoClose(scopedLineTokens, beforeColumn - scopedLineTokens.firstCharOffset)) {\n return null;\n }\n // Typing for example a quote could either start a new string, in which case auto-closing is desirable\n // or it could end a previously started string, in which case auto-closing is not desirable\n //\n // In certain cases, it is really not possible to look at the previous token to determine\n // what would happen. That's why we do something really unusual, we pretend to type a different\n // character and ask the tokenizer what the outcome of doing that is: after typing a neutral\n // character, are we in a string (i.e. the quote would most likely end a string) or not?\n //\n const neutralCharacter = pair.findNeutralCharacter();\n if (neutralCharacter) {\n const tokenType = model.tokenization.getTokenTypeIfInsertingCharacter(lineNumber, beforeColumn, neutralCharacter);\n if (!pair.isOK(tokenType)) {\n return null;\n }\n }\n }\n if (isContainedPairPresent) {\n return pair.close.substring(0, pair.close.length - containedPairClose.length);\n }\n else {\n return pair.close;\n }\n }\n static _runAutoClosingOpenCharType(prevEditOperationType, config, model, selections, ch, chIsAlreadyTyped, autoClosingPairClose) {\n const commands = [];\n for (let i = 0, len = selections.length; i < len; i++) {\n const selection = selections[i];\n commands[i] = new TypeWithAutoClosingCommand(selection, ch, !chIsAlreadyTyped, autoClosingPairClose);\n }\n return new _cursorCommon_js__WEBPACK_IMPORTED_MODULE_5__.EditOperationResult(4 /* EditOperationType.TypingOther */, commands, {\n shouldPushStackElementBefore: true,\n shouldPushStackElementAfter: false\n });\n }\n static _shouldSurroundChar(config, ch) {\n if ((0,_cursorCommon_js__WEBPACK_IMPORTED_MODULE_5__.isQuote)(ch)) {\n return (config.autoSurround === 'quotes' || config.autoSurround === 'languageDefined');\n }\n else {\n // Character is a bracket\n return (config.autoSurround === 'brackets' || config.autoSurround === 'languageDefined');\n }\n }\n static _isSurroundSelectionType(config, model, selections, ch) {\n if (!TypeOperations._shouldSurroundChar(config, ch) || !config.surroundingPairs.hasOwnProperty(ch)) {\n return false;\n }\n const isTypingAQuoteCharacter = (0,_cursorCommon_js__WEBPACK_IMPORTED_MODULE_5__.isQuote)(ch);\n for (const selection of selections) {\n if (selection.isEmpty()) {\n return false;\n }\n let selectionContainsOnlyWhitespace = true;\n for (let lineNumber = selection.startLineNumber; lineNumber <= selection.endLineNumber; lineNumber++) {\n const lineText = model.getLineContent(lineNumber);\n const startIndex = (lineNumber === selection.startLineNumber ? selection.startColumn - 1 : 0);\n const endIndex = (lineNumber === selection.endLineNumber ? selection.endColumn - 1 : lineText.length);\n const selectedText = lineText.substring(startIndex, endIndex);\n if (/[^ \\t]/.test(selectedText)) {\n // this selected text contains something other than whitespace\n selectionContainsOnlyWhitespace = false;\n break;\n }\n }\n if (selectionContainsOnlyWhitespace) {\n return false;\n }\n if (isTypingAQuoteCharacter && selection.startLineNumber === selection.endLineNumber && selection.startColumn + 1 === selection.endColumn) {\n const selectionText = model.getValueInRange(selection);\n if ((0,_cursorCommon_js__WEBPACK_IMPORTED_MODULE_5__.isQuote)(selectionText)) {\n // Typing a quote character on top of another quote character\n // => disable surround selection type\n return false;\n }\n }\n }\n return true;\n }\n static _runSurroundSelectionType(prevEditOperationType, config, model, selections, ch) {\n const commands = [];\n for (let i = 0, len = selections.length; i < len; i++) {\n const selection = selections[i];\n const closeCharacter = config.surroundingPairs[ch];\n commands[i] = new _commands_surroundSelectionCommand_js__WEBPACK_IMPORTED_MODULE_4__.SurroundSelectionCommand(selection, ch, closeCharacter);\n }\n return new _cursorCommon_js__WEBPACK_IMPORTED_MODULE_5__.EditOperationResult(0 /* EditOperationType.Other */, commands, {\n shouldPushStackElementBefore: true,\n shouldPushStackElementAfter: true\n });\n }\n static _isTypeInterceptorElectricChar(config, model, selections) {\n if (selections.length === 1 && model.tokenization.isCheapToTokenize(selections[0].getEndPosition().lineNumber)) {\n return true;\n }\n return false;\n }\n static _typeInterceptorElectricChar(prevEditOperationType, config, model, selection, ch) {\n if (!config.electricChars.hasOwnProperty(ch) || !selection.isEmpty()) {\n return null;\n }\n const position = selection.getPosition();\n model.tokenization.forceTokenization(position.lineNumber);\n const lineTokens = model.tokenization.getLineTokens(position.lineNumber);\n let electricAction;\n try {\n electricAction = config.onElectricCharacter(ch, lineTokens, position.column);\n }\n catch (e) {\n (0,_base_common_errors_js__WEBPACK_IMPORTED_MODULE_0__.onUnexpectedError)(e);\n return null;\n }\n if (!electricAction) {\n return null;\n }\n if (electricAction.matchOpenBracket) {\n const endColumn = (lineTokens.getLineContent() + ch).lastIndexOf(electricAction.matchOpenBracket) + 1;\n const match = model.bracketPairs.findMatchingBracketUp(electricAction.matchOpenBracket, {\n lineNumber: position.lineNumber,\n column: endColumn\n }, 500 /* give at most 500ms to compute */);\n if (match) {\n if (match.startLineNumber === position.lineNumber) {\n // matched something on the same line => no change in indentation\n return null;\n }\n const matchLine = model.getLineContent(match.startLineNumber);\n const matchLineIndentation = _base_common_strings_js__WEBPACK_IMPORTED_MODULE_1__.getLeadingWhitespace(matchLine);\n const newIndentation = config.normalizeIndentation(matchLineIndentation);\n const lineText = model.getLineContent(position.lineNumber);\n const lineFirstNonBlankColumn = model.getLineFirstNonWhitespaceColumn(position.lineNumber) || position.column;\n const prefix = lineText.substring(lineFirstNonBlankColumn - 1, position.column - 1);\n const typeText = newIndentation + prefix + ch;\n const typeSelection = new _core_range_js__WEBPACK_IMPORTED_MODULE_7__.Range(position.lineNumber, 1, position.lineNumber, position.column);\n const command = new _commands_replaceCommand_js__WEBPACK_IMPORTED_MODULE_2__.ReplaceCommand(typeSelection, typeText);\n return new _cursorCommon_js__WEBPACK_IMPORTED_MODULE_5__.EditOperationResult(getTypingOperation(typeText, prevEditOperationType), [command], {\n shouldPushStackElementBefore: false,\n shouldPushStackElementAfter: true\n });\n }\n }\n return null;\n }\n /**\n * This is very similar with typing, but the character is already in the text buffer!\n */\n static compositionEndWithInterceptors(prevEditOperationType, config, model, compositions, selections, autoClosedCharacters) {\n if (!compositions) {\n // could not deduce what the composition did\n return null;\n }\n let insertedText = null;\n for (const composition of compositions) {\n if (insertedText === null) {\n insertedText = composition.insertedText;\n }\n else if (insertedText !== composition.insertedText) {\n // not all selections agree on what was typed\n return null;\n }\n }\n if (!insertedText || insertedText.length !== 1) {\n // we're only interested in the case where a single character was inserted\n return null;\n }\n const ch = insertedText;\n let hasDeletion = false;\n for (const composition of compositions) {\n if (composition.deletedText.length !== 0) {\n hasDeletion = true;\n break;\n }\n }\n if (hasDeletion) {\n // Check if this could have been a surround selection\n if (!TypeOperations._shouldSurroundChar(config, ch) || !config.surroundingPairs.hasOwnProperty(ch)) {\n return null;\n }\n const isTypingAQuoteCharacter = (0,_cursorCommon_js__WEBPACK_IMPORTED_MODULE_5__.isQuote)(ch);\n for (const composition of compositions) {\n if (composition.deletedSelectionStart !== 0 || composition.deletedSelectionEnd !== composition.deletedText.length) {\n // more text was deleted than was selected, so this could not have been a surround selection\n return null;\n }\n if (/^[ \\t]+$/.test(composition.deletedText)) {\n // deleted text was only whitespace\n return null;\n }\n if (isTypingAQuoteCharacter && (0,_cursorCommon_js__WEBPACK_IMPORTED_MODULE_5__.isQuote)(composition.deletedText)) {\n // deleted text was a quote\n return null;\n }\n }\n const positions = [];\n for (const selection of selections) {\n if (!selection.isEmpty()) {\n return null;\n }\n positions.push(selection.getPosition());\n }\n if (positions.length !== compositions.length) {\n return null;\n }\n const commands = [];\n for (let i = 0, len = positions.length; i < len; i++) {\n commands.push(new _commands_surroundSelectionCommand_js__WEBPACK_IMPORTED_MODULE_4__.CompositionSurroundSelectionCommand(positions[i], compositions[i].deletedText, config.surroundingPairs[ch]));\n }\n return new _cursorCommon_js__WEBPACK_IMPORTED_MODULE_5__.EditOperationResult(4 /* EditOperationType.TypingOther */, commands, {\n shouldPushStackElementBefore: true,\n shouldPushStackElementAfter: false\n });\n }\n if (this._isAutoClosingOvertype(config, model, selections, autoClosedCharacters, ch)) {\n // Unfortunately, the close character is at this point \"doubled\", so we need to delete it...\n const commands = selections.map(s => new _commands_replaceCommand_js__WEBPACK_IMPORTED_MODULE_2__.ReplaceCommand(new _core_range_js__WEBPACK_IMPORTED_MODULE_7__.Range(s.positionLineNumber, s.positionColumn, s.positionLineNumber, s.positionColumn + 1), '', false));\n return new _cursorCommon_js__WEBPACK_IMPORTED_MODULE_5__.EditOperationResult(4 /* EditOperationType.TypingOther */, commands, {\n shouldPushStackElementBefore: true,\n shouldPushStackElementAfter: false\n });\n }\n const autoClosingPairClose = this._getAutoClosingPairClose(config, model, selections, ch, true);\n if (autoClosingPairClose !== null) {\n return this._runAutoClosingOpenCharType(prevEditOperationType, config, model, selections, ch, true, autoClosingPairClose);\n }\n return null;\n }\n static typeWithInterceptors(isDoingComposition, prevEditOperationType, config, model, selections, autoClosedCharacters, ch) {\n if (!isDoingComposition && ch === '\\n') {\n const commands = [];\n for (let i = 0, len = selections.length; i < len; i++) {\n commands[i] = TypeOperations._enter(config, model, false, selections[i]);\n }\n return new _cursorCommon_js__WEBPACK_IMPORTED_MODULE_5__.EditOperationResult(4 /* EditOperationType.TypingOther */, commands, {\n shouldPushStackElementBefore: true,\n shouldPushStackElementAfter: false,\n });\n }\n if (!isDoingComposition && this._isAutoIndentType(config, model, selections)) {\n const commands = [];\n let autoIndentFails = false;\n for (let i = 0, len = selections.length; i < len; i++) {\n commands[i] = this._runAutoIndentType(config, model, selections[i], ch);\n if (!commands[i]) {\n autoIndentFails = true;\n break;\n }\n }\n if (!autoIndentFails) {\n return new _cursorCommon_js__WEBPACK_IMPORTED_MODULE_5__.EditOperationResult(4 /* EditOperationType.TypingOther */, commands, {\n shouldPushStackElementBefore: true,\n shouldPushStackElementAfter: false,\n });\n }\n }\n if (this._isAutoClosingOvertype(config, model, selections, autoClosedCharacters, ch)) {\n return this._runAutoClosingOvertype(prevEditOperationType, config, model, selections, ch);\n }\n if (!isDoingComposition) {\n const autoClosingPairClose = this._getAutoClosingPairClose(config, model, selections, ch, false);\n if (autoClosingPairClose) {\n return this._runAutoClosingOpenCharType(prevEditOperationType, config, model, selections, ch, false, autoClosingPairClose);\n }\n }\n if (!isDoingComposition && this._isSurroundSelectionType(config, model, selections, ch)) {\n return this._runSurroundSelectionType(prevEditOperationType, config, model, selections, ch);\n }\n // Electric characters make sense only when dealing with a single cursor,\n // as multiple cursors typing brackets for example would interfer with bracket matching\n if (!isDoingComposition && this._isTypeInterceptorElectricChar(config, model, selections)) {\n const r = this._typeInterceptorElectricChar(prevEditOperationType, config, model, selections[0], ch);\n if (r) {\n return r;\n }\n }\n // A simple character type\n const commands = [];\n for (let i = 0, len = selections.length; i < len; i++) {\n commands[i] = new _commands_replaceCommand_js__WEBPACK_IMPORTED_MODULE_2__.ReplaceCommand(selections[i], ch);\n }\n const opType = getTypingOperation(ch, prevEditOperationType);\n return new _cursorCommon_js__WEBPACK_IMPORTED_MODULE_5__.EditOperationResult(opType, commands, {\n shouldPushStackElementBefore: shouldPushStackElementBetween(prevEditOperationType, opType),\n shouldPushStackElementAfter: false\n });\n }\n static typeWithoutInterceptors(prevEditOperationType, config, model, selections, str) {\n const commands = [];\n for (let i = 0, len = selections.length; i < len; i++) {\n commands[i] = new _commands_replaceCommand_js__WEBPACK_IMPORTED_MODULE_2__.ReplaceCommand(selections[i], str);\n }\n const opType = getTypingOperation(str, prevEditOperationType);\n return new _cursorCommon_js__WEBPACK_IMPORTED_MODULE_5__.EditOperationResult(opType, commands, {\n shouldPushStackElementBefore: shouldPushStackElementBetween(prevEditOperationType, opType),\n shouldPushStackElementAfter: false\n });\n }\n static lineInsertBefore(config, model, selections) {\n if (model === null || selections === null) {\n return [];\n }\n const commands = [];\n for (let i = 0, len = selections.length; i < len; i++) {\n let lineNumber = selections[i].positionLineNumber;\n if (lineNumber === 1) {\n commands[i] = new _commands_replaceCommand_js__WEBPACK_IMPORTED_MODULE_2__.ReplaceCommandWithoutChangingPosition(new _core_range_js__WEBPACK_IMPORTED_MODULE_7__.Range(1, 1, 1, 1), '\\n');\n }\n else {\n lineNumber--;\n const column = model.getLineMaxColumn(lineNumber);\n commands[i] = this._enter(config, model, false, new _core_range_js__WEBPACK_IMPORTED_MODULE_7__.Range(lineNumber, column, lineNumber, column));\n }\n }\n return commands;\n }\n static lineInsertAfter(config, model, selections) {\n if (model === null || selections === null) {\n return [];\n }\n const commands = [];\n for (let i = 0, len = selections.length; i < len; i++) {\n const lineNumber = selections[i].positionLineNumber;\n const column = model.getLineMaxColumn(lineNumber);\n commands[i] = this._enter(config, model, false, new _core_range_js__WEBPACK_IMPORTED_MODULE_7__.Range(lineNumber, column, lineNumber, column));\n }\n return commands;\n }\n static lineBreakInsert(config, model, selections) {\n const commands = [];\n for (let i = 0, len = selections.length; i < len; i++) {\n commands[i] = this._enter(config, model, true, selections[i]);\n }\n return commands;\n }\n}\nclass TypeWithAutoClosingCommand extends _commands_replaceCommand_js__WEBPACK_IMPORTED_MODULE_2__.ReplaceCommandWithOffsetCursorState {\n constructor(selection, openCharacter, insertOpenCharacter, closeCharacter) {\n super(selection, (insertOpenCharacter ? openCharacter : '') + closeCharacter, 0, -closeCharacter.length);\n this._openCharacter = openCharacter;\n this._closeCharacter = closeCharacter;\n this.closeCharacterRange = null;\n this.enclosingRange = null;\n }\n computeCursorState(model, helper) {\n const inverseEditOperations = helper.getInverseEditOperations();\n const range = inverseEditOperations[0].range;\n this.closeCharacterRange = new _core_range_js__WEBPACK_IMPORTED_MODULE_7__.Range(range.startLineNumber, range.endColumn - this._closeCharacter.length, range.endLineNumber, range.endColumn);\n this.enclosingRange = new _core_range_js__WEBPACK_IMPORTED_MODULE_7__.Range(range.startLineNumber, range.endColumn - this._openCharacter.length - this._closeCharacter.length, range.endLineNumber, range.endColumn);\n return super.computeCursorState(model, helper);\n }\n}\nclass CompositionOutcome {\n constructor(deletedText, deletedSelectionStart, deletedSelectionEnd, insertedText, insertedSelectionStart, insertedSelectionEnd) {\n this.deletedText = deletedText;\n this.deletedSelectionStart = deletedSelectionStart;\n this.deletedSelectionEnd = deletedSelectionEnd;\n this.insertedText = insertedText;\n this.insertedSelectionStart = insertedSelectionStart;\n this.insertedSelectionEnd = insertedSelectionEnd;\n }\n}\nfunction getTypingOperation(typedText, previousTypingOperation) {\n if (typedText === ' ') {\n return previousTypingOperation === 5 /* EditOperationType.TypingFirstSpace */\n || previousTypingOperation === 6 /* EditOperationType.TypingConsecutiveSpace */\n ? 6 /* EditOperationType.TypingConsecutiveSpace */\n : 5 /* EditOperationType.TypingFirstSpace */;\n }\n return 4 /* EditOperationType.TypingOther */;\n}\nfunction shouldPushStackElementBetween(previousTypingOperation, typingOperation) {\n if (isTypingOperation(previousTypingOperation) && !isTypingOperation(typingOperation)) {\n // Always set an undo stop before non-type operations\n return true;\n }\n if (previousTypingOperation === 5 /* EditOperationType.TypingFirstSpace */) {\n // `abc |d`: No undo stop\n // `abc |d`: Undo stop\n return false;\n }\n // Insert undo stop between different operation types\n return normalizeOperationType(previousTypingOperation) !== normalizeOperationType(typingOperation);\n}\nfunction normalizeOperationType(type) {\n return (type === 6 /* EditOperationType.TypingConsecutiveSpace */ || type === 5 /* EditOperationType.TypingFirstSpace */)\n ? 'space'\n : type;\n}\nfunction isTypingOperation(type) {\n return type === 4 /* EditOperationType.TypingOther */\n || type === 5 /* EditOperationType.TypingFirstSpace */\n || type === 6 /* EditOperationType.TypingConsecutiveSpace */;\n}\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/common/cursor/cursorTypeOperations.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/common/cursor/cursorWordOperations.js":
/*!****************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/common/cursor/cursorWordOperations.js ***!
\****************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ WordOperations: () => (/* binding */ WordOperations),\n/* harmony export */ WordPartOperations: () => (/* binding */ WordPartOperations)\n/* harmony export */ });\n/* harmony import */ var _base_common_strings_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../base/common/strings.js */ \"./node_modules/monaco-editor/esm/vs/base/common/strings.js\");\n/* harmony import */ var _cursorCommon_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../cursorCommon.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/cursorCommon.js\");\n/* harmony import */ var _cursorDeleteOperations_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./cursorDeleteOperations.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/cursor/cursorDeleteOperations.js\");\n/* harmony import */ var _core_wordCharacterClassifier_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../core/wordCharacterClassifier.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/core/wordCharacterClassifier.js\");\n/* harmony import */ var _core_position_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../core/position.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/core/position.js\");\n/* harmony import */ var _core_range_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../core/range.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/core/range.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n\n\n\n\n\nclass WordOperations {\n static _createWord(lineContent, wordType, nextCharClass, start, end) {\n // console.log('WORD ==> ' + start + ' => ' + end + ':::: <<<' + lineContent.substring(start, end) + '>>>');\n return { start: start, end: end, wordType: wordType, nextCharClass: nextCharClass };\n }\n static _findPreviousWordOnLine(wordSeparators, model, position) {\n const lineContent = model.getLineContent(position.lineNumber);\n return this._doFindPreviousWordOnLine(lineContent, wordSeparators, position);\n }\n static _doFindPreviousWordOnLine(lineContent, wordSeparators, position) {\n let wordType = 0 /* WordType.None */;\n for (let chIndex = position.column - 2; chIndex >= 0; chIndex--) {\n const chCode = lineContent.charCodeAt(chIndex);\n const chClass = wordSeparators.get(chCode);\n if (chClass === 0 /* WordCharacterClass.Regular */) {\n if (wordType === 2 /* WordType.Separator */) {\n return this._createWord(lineContent, wordType, chClass, chIndex + 1, this._findEndOfWord(lineContent, wordSeparators, wordType, chIndex + 1));\n }\n wordType = 1 /* WordType.Regular */;\n }\n else if (chClass === 2 /* WordCharacterClass.WordSeparator */) {\n if (wordType === 1 /* WordType.Regular */) {\n return this._createWord(lineContent, wordType, chClass, chIndex + 1, this._findEndOfWord(lineContent, wordSeparators, wordType, chIndex + 1));\n }\n wordType = 2 /* WordType.Separator */;\n }\n else if (chClass === 1 /* WordCharacterClass.Whitespace */) {\n if (wordType !== 0 /* WordType.None */) {\n return this._createWord(lineContent, wordType, chClass, chIndex + 1, this._findEndOfWord(lineContent, wordSeparators, wordType, chIndex + 1));\n }\n }\n }\n if (wordType !== 0 /* WordType.None */) {\n return this._createWord(lineContent, wordType, 1 /* WordCharacterClass.Whitespace */, 0, this._findEndOfWord(lineContent, wordSeparators, wordType, 0));\n }\n return null;\n }\n static _findEndOfWord(lineContent, wordSeparators, wordType, startIndex) {\n const len = lineContent.length;\n for (let chIndex = startIndex; chIndex < len; chIndex++) {\n const chCode = lineContent.charCodeAt(chIndex);\n const chClass = wordSeparators.get(chCode);\n if (chClass === 1 /* WordCharacterClass.Whitespace */) {\n return chIndex;\n }\n if (wordType === 1 /* WordType.Regular */ && chClass === 2 /* WordCharacterClass.WordSeparator */) {\n return chIndex;\n }\n if (wordType === 2 /* WordType.Separator */ && chClass === 0 /* WordCharacterClass.Regular */) {\n return chIndex;\n }\n }\n return len;\n }\n static _findNextWordOnLine(wordSeparators, model, position) {\n const lineContent = model.getLineContent(position.lineNumber);\n return this._doFindNextWordOnLine(lineContent, wordSeparators, position);\n }\n static _doFindNextWordOnLine(lineContent, wordSeparators, position) {\n let wordType = 0 /* WordType.None */;\n const len = lineContent.length;\n for (let chIndex = position.column - 1; chIndex < len; chIndex++) {\n const chCode = lineContent.charCodeAt(chIndex);\n const chClass = wordSeparators.get(chCode);\n if (chClass === 0 /* WordCharacterClass.Regular */) {\n if (wordType === 2 /* WordType.Separator */) {\n return this._createWord(lineContent, wordType, chClass, this._findStartOfWord(lineContent, wordSeparators, wordType, chIndex - 1), chIndex);\n }\n wordType = 1 /* WordType.Regular */;\n }\n else if (chClass === 2 /* WordCharacterClass.WordSeparator */) {\n if (wordType === 1 /* WordType.Regular */) {\n return this._createWord(lineContent, wordType, chClass, this._findStartOfWord(lineContent, wordSeparators, wordType, chIndex - 1), chIndex);\n }\n wordType = 2 /* WordType.Separator */;\n }\n else if (chClass === 1 /* WordCharacterClass.Whitespace */) {\n if (wordType !== 0 /* WordType.None */) {\n return this._createWord(lineContent, wordType, chClass, this._findStartOfWord(lineContent, wordSeparators, wordType, chIndex - 1), chIndex);\n }\n }\n }\n if (wordType !== 0 /* WordType.None */) {\n return this._createWord(lineContent, wordType, 1 /* WordCharacterClass.Whitespace */, this._findStartOfWord(lineContent, wordSeparators, wordType, len - 1), len);\n }\n return null;\n }\n static _findStartOfWord(lineContent, wordSeparators, wordType, startIndex) {\n for (let chIndex = startIndex; chIndex >= 0; chIndex--) {\n const chCode = lineContent.charCodeAt(chIndex);\n const chClass = wordSeparators.get(chCode);\n if (chClass === 1 /* WordCharacterClass.Whitespace */) {\n return chIndex + 1;\n }\n if (wordType === 1 /* WordType.Regular */ && chClass === 2 /* WordCharacterClass.WordSeparator */) {\n return chIndex + 1;\n }\n if (wordType === 2 /* WordType.Separator */ && chClass === 0 /* WordCharacterClass.Regular */) {\n return chIndex + 1;\n }\n }\n return 0;\n }\n static moveWordLeft(wordSeparators, model, position, wordNavigationType) {\n let lineNumber = position.lineNumber;\n let column = position.column;\n if (column === 1) {\n if (lineNumber > 1) {\n lineNumber = lineNumber - 1;\n column = model.getLineMaxColumn(lineNumber);\n }\n }\n let prevWordOnLine = WordOperations._findPreviousWordOnLine(wordSeparators, model, new _core_position_js__WEBPACK_IMPORTED_MODULE_4__.Position(lineNumber, column));\n if (wordNavigationType === 0 /* WordNavigationType.WordStart */) {\n return new _core_position_js__WEBPACK_IMPORTED_MODULE_4__.Position(lineNumber, prevWordOnLine ? prevWordOnLine.start + 1 : 1);\n }\n if (wordNavigationType === 1 /* WordNavigationType.WordStartFast */) {\n if (prevWordOnLine\n && prevWordOnLine.wordType === 2 /* WordType.Separator */\n && prevWordOnLine.end - prevWordOnLine.start === 1\n && prevWordOnLine.nextCharClass === 0 /* WordCharacterClass.Regular */) {\n // Skip over a word made up of one single separator and followed by a regular character\n prevWordOnLine = WordOperations._findPreviousWordOnLine(wordSeparators, model, new _core_position_js__WEBPACK_IMPORTED_MODULE_4__.Position(lineNumber, prevWordOnLine.start + 1));\n }\n return new _core_position_js__WEBPACK_IMPORTED_MODULE_4__.Position(lineNumber, prevWordOnLine ? prevWordOnLine.start + 1 : 1);\n }\n if (wordNavigationType === 3 /* WordNavigationType.WordAccessibility */) {\n while (prevWordOnLine\n && prevWordOnLine.wordType === 2 /* WordType.Separator */) {\n // Skip over words made up of only separators\n prevWordOnLine = WordOperations._findPreviousWordOnLine(wordSeparators, model, new _core_position_js__WEBPACK_IMPORTED_MODULE_4__.Position(lineNumber, prevWordOnLine.start + 1));\n }\n return new _core_position_js__WEBPACK_IMPORTED_MODULE_4__.Position(lineNumber, prevWordOnLine ? prevWordOnLine.start + 1 : 1);\n }\n // We are stopping at the ending of words\n if (prevWordOnLine && column <= prevWordOnLine.end + 1) {\n prevWordOnLine = WordOperations._findPreviousWordOnLine(wordSeparators, model, new _core_position_js__WEBPACK_IMPORTED_MODULE_4__.Position(lineNumber, prevWordOnLine.start + 1));\n }\n return new _core_position_js__WEBPACK_IMPORTED_MODULE_4__.Position(lineNumber, prevWordOnLine ? prevWordOnLine.end + 1 : 1);\n }\n static _moveWordPartLeft(model, position) {\n const lineNumber = position.lineNumber;\n const maxColumn = model.getLineMaxColumn(lineNumber);\n if (position.column === 1) {\n return (lineNumber > 1 ? new _core_position_js__WEBPACK_IMPORTED_MODULE_4__.Position(lineNumber - 1, model.getLineMaxColumn(lineNumber - 1)) : position);\n }\n const lineContent = model.getLineContent(lineNumber);\n for (let column = position.column - 1; column > 1; column--) {\n const left = lineContent.charCodeAt(column - 2);\n const right = lineContent.charCodeAt(column - 1);\n if (left === 95 /* CharCode.Underline */ && right !== 95 /* CharCode.Underline */) {\n // snake_case_variables\n return new _core_position_js__WEBPACK_IMPORTED_MODULE_4__.Position(lineNumber, column);\n }\n if (left === 45 /* CharCode.Dash */ && right !== 45 /* CharCode.Dash */) {\n // kebab-case-variables\n return new _core_position_js__WEBPACK_IMPORTED_MODULE_4__.Position(lineNumber, column);\n }\n if ((_base_common_strings_js__WEBPACK_IMPORTED_MODULE_0__.isLowerAsciiLetter(left) || _base_common_strings_js__WEBPACK_IMPORTED_MODULE_0__.isAsciiDigit(left)) && _base_common_strings_js__WEBPACK_IMPORTED_MODULE_0__.isUpperAsciiLetter(right)) {\n // camelCaseVariables\n return new _core_position_js__WEBPACK_IMPORTED_MODULE_4__.Position(lineNumber, column);\n }\n if (_base_common_strings_js__WEBPACK_IMPORTED_MODULE_0__.isUpperAsciiLetter(left) && _base_common_strings_js__WEBPACK_IMPORTED_MODULE_0__.isUpperAsciiLetter(right)) {\n // thisIsACamelCaseWithOneLetterWords\n if (column + 1 < maxColumn) {\n const rightRight = lineContent.charCodeAt(column);\n if (_base_common_strings_js__WEBPACK_IMPORTED_MODULE_0__.isLowerAsciiLetter(rightRight) || _base_common_strings_js__WEBPACK_IMPORTED_MODULE_0__.isAsciiDigit(rightRight)) {\n return new _core_position_js__WEBPACK_IMPORTED_MODULE_4__.Position(lineNumber, column);\n }\n }\n }\n }\n return new _core_position_js__WEBPACK_IMPORTED_MODULE_4__.Position(lineNumber, 1);\n }\n static moveWordRight(wordSeparators, model, position, wordNavigationType) {\n let lineNumber = position.lineNumber;\n let column = position.column;\n let movedDown = false;\n if (column === model.getLineMaxColumn(lineNumber)) {\n if (lineNumber < model.getLineCount()) {\n movedDown = true;\n lineNumber = lineNumber + 1;\n column = 1;\n }\n }\n let nextWordOnLine = WordOperations._findNextWordOnLine(wordSeparators, model, new _core_position_js__WEBPACK_IMPORTED_MODULE_4__.Position(lineNumber, column));\n if (wordNavigationType === 2 /* WordNavigationType.WordEnd */) {\n if (nextWordOnLine && nextWordOnLine.wordType === 2 /* WordType.Separator */) {\n if (nextWordOnLine.end - nextWordOnLine.start === 1 && nextWordOnLine.nextCharClass === 0 /* WordCharacterClass.Regular */) {\n // Skip over a word made up of one single separator and followed by a regular character\n nextWordOnLine = WordOperations._findNextWordOnLine(wordSeparators, model, new _core_position_js__WEBPACK_IMPORTED_MODULE_4__.Position(lineNumber, nextWordOnLine.end + 1));\n }\n }\n if (nextWordOnLine) {\n column = nextWordOnLine.end + 1;\n }\n else {\n column = model.getLineMaxColumn(lineNumber);\n }\n }\n else if (wordNavigationType === 3 /* WordNavigationType.WordAccessibility */) {\n if (movedDown) {\n // If we move to the next line, pretend that the cursor is right before the first character.\n // This is needed when the first word starts right at the first character - and in order not to miss it,\n // we need to start before.\n column = 0;\n }\n while (nextWordOnLine\n && (nextWordOnLine.wordType === 2 /* WordType.Separator */\n || nextWordOnLine.start + 1 <= column)) {\n // Skip over a word made up of one single separator\n // Also skip over word if it begins before current cursor position to ascertain we're moving forward at least 1 character.\n nextWordOnLine = WordOperations._findNextWordOnLine(wordSeparators, model, new _core_position_js__WEBPACK_IMPORTED_MODULE_4__.Position(lineNumber, nextWordOnLine.end + 1));\n }\n if (nextWordOnLine) {\n column = nextWordOnLine.start + 1;\n }\n else {\n column = model.getLineMaxColumn(lineNumber);\n }\n }\n else {\n if (nextWordOnLine && !movedDown && column >= nextWordOnLine.start + 1) {\n nextWordOnLine = WordOperations._findNextWordOnLine(wordSeparators, model, new _core_position_js__WEBPACK_IMPORTED_MODULE_4__.Position(lineNumber, nextWordOnLine.end + 1));\n }\n if (nextWordOnLine) {\n column = nextWordOnLine.start + 1;\n }\n else {\n column = model.getLineMaxColumn(lineNumber);\n }\n }\n return new _core_position_js__WEBPACK_IMPORTED_MODULE_4__.Position(lineNumber, column);\n }\n static _moveWordPartRight(model, position) {\n const lineNumber = position.lineNumber;\n const maxColumn = model.getLineMaxColumn(lineNumber);\n if (position.column === maxColumn) {\n return (lineNumber < model.getLineCount() ? new _core_position_js__WEBPACK_IMPORTED_MODULE_4__.Position(lineNumber + 1, 1) : position);\n }\n const lineContent = model.getLineContent(lineNumber);\n for (let column = position.column + 1; column < maxColumn; column++) {\n const left = lineContent.charCodeAt(column - 2);\n const right = lineContent.charCodeAt(column - 1);\n if (left !== 95 /* CharCode.Underline */ && right === 95 /* CharCode.Underline */) {\n // snake_case_variables\n return new _core_position_js__WEBPACK_IMPORTED_MODULE_4__.Position(lineNumber, column);\n }\n if (left !== 45 /* CharCode.Dash */ && right === 45 /* CharCode.Dash */) {\n // kebab-case-variables\n return new _core_position_js__WEBPACK_IMPORTED_MODULE_4__.Position(lineNumber, column);\n }\n if ((_base_common_strings_js__WEBPACK_IMPORTED_MODULE_0__.isLowerAsciiLetter(left) || _base_common_strings_js__WEBPACK_IMPORTED_MODULE_0__.isAsciiDigit(left)) && _base_common_strings_js__WEBPACK_IMPORTED_MODULE_0__.isUpperAsciiLetter(right)) {\n // camelCaseVariables\n return new _core_position_js__WEBPACK_IMPORTED_MODULE_4__.Position(lineNumber, column);\n }\n if (_base_common_strings_js__WEBPACK_IMPORTED_MODULE_0__.isUpperAsciiLetter(left) && _base_common_strings_js__WEBPACK_IMPORTED_MODULE_0__.isUpperAsciiLetter(right)) {\n // thisIsACamelCaseWithOneLetterWords\n if (column + 1 < maxColumn) {\n const rightRight = lineContent.charCodeAt(column);\n if (_base_common_strings_js__WEBPACK_IMPORTED_MODULE_0__.isLowerAsciiLetter(rightRight) || _base_common_strings_js__WEBPACK_IMPORTED_MODULE_0__.isAsciiDigit(rightRight)) {\n return new _core_position_js__WEBPACK_IMPORTED_MODULE_4__.Position(lineNumber, column);\n }\n }\n }\n }\n return new _core_position_js__WEBPACK_IMPORTED_MODULE_4__.Position(lineNumber, maxColumn);\n }\n static _deleteWordLeftWhitespace(model, position) {\n const lineContent = model.getLineContent(position.lineNumber);\n const startIndex = position.column - 2;\n const lastNonWhitespace = _base_common_strings_js__WEBPACK_IMPORTED_MODULE_0__.lastNonWhitespaceIndex(lineContent, startIndex);\n if (lastNonWhitespace + 1 < startIndex) {\n return new _core_range_js__WEBPACK_IMPORTED_MODULE_5__.Range(position.lineNumber, lastNonWhitespace + 2, position.lineNumber, position.column);\n }\n return null;\n }\n static deleteWordLeft(ctx, wordNavigationType) {\n const wordSeparators = ctx.wordSeparators;\n const model = ctx.model;\n const selection = ctx.selection;\n const whitespaceHeuristics = ctx.whitespaceHeuristics;\n if (!selection.isEmpty()) {\n return selection;\n }\n if (_cursorDeleteOperations_js__WEBPACK_IMPORTED_MODULE_2__.DeleteOperations.isAutoClosingPairDelete(ctx.autoClosingDelete, ctx.autoClosingBrackets, ctx.autoClosingQuotes, ctx.autoClosingPairs.autoClosingPairsOpenByEnd, ctx.model, [ctx.selection], ctx.autoClosedCharacters)) {\n const position = ctx.selection.getPosition();\n return new _core_range_js__WEBPACK_IMPORTED_MODULE_5__.Range(position.lineNumber, position.column - 1, position.lineNumber, position.column + 1);\n }\n const position = new _core_position_js__WEBPACK_IMPORTED_MODULE_4__.Position(selection.positionLineNumber, selection.positionColumn);\n let lineNumber = position.lineNumber;\n let column = position.column;\n if (lineNumber === 1 && column === 1) {\n // Ignore deleting at beginning of file\n return null;\n }\n if (whitespaceHeuristics) {\n const r = this._deleteWordLeftWhitespace(model, position);\n if (r) {\n return r;\n }\n }\n let prevWordOnLine = WordOperations._findPreviousWordOnLine(wordSeparators, model, position);\n if (wordNavigationType === 0 /* WordNavigationType.WordStart */) {\n if (prevWordOnLine) {\n column = prevWordOnLine.start + 1;\n }\n else {\n if (column > 1) {\n column = 1;\n }\n else {\n lineNumber--;\n column = model.getLineMaxColumn(lineNumber);\n }\n }\n }\n else {\n if (prevWordOnLine && column <= prevWordOnLine.end + 1) {\n prevWordOnLine = WordOperations._findPreviousWordOnLine(wordSeparators, model, new _core_position_js__WEBPACK_IMPORTED_MODULE_4__.Position(lineNumber, prevWordOnLine.start + 1));\n }\n if (prevWordOnLine) {\n column = prevWordOnLine.end + 1;\n }\n else {\n if (column > 1) {\n column = 1;\n }\n else {\n lineNumber--;\n column = model.getLineMaxColumn(lineNumber);\n }\n }\n }\n return new _core_range_js__WEBPACK_IMPORTED_MODULE_5__.Range(lineNumber, column, position.lineNumber, position.column);\n }\n static deleteInsideWord(wordSeparators, model, selection) {\n if (!selection.isEmpty()) {\n return selection;\n }\n const position = new _core_position_js__WEBPACK_IMPORTED_MODULE_4__.Position(selection.positionLineNumber, selection.positionColumn);\n const r = this._deleteInsideWordWhitespace(model, position);\n if (r) {\n return r;\n }\n return this._deleteInsideWordDetermineDeleteRange(wordSeparators, model, position);\n }\n static _charAtIsWhitespace(str, index) {\n const charCode = str.charCodeAt(index);\n return (charCode === 32 /* CharCode.Space */ || charCode === 9 /* CharCode.Tab */);\n }\n static _deleteInsideWordWhitespace(model, position) {\n const lineContent = model.getLineContent(position.lineNumber);\n const lineContentLength = lineContent.length;\n if (lineContentLength === 0) {\n // empty line\n return null;\n }\n let leftIndex = Math.max(position.column - 2, 0);\n if (!this._charAtIsWhitespace(lineContent, leftIndex)) {\n // touches a non-whitespace character to the left\n return null;\n }\n let rightIndex = Math.min(position.column - 1, lineContentLength - 1);\n if (!this._charAtIsWhitespace(lineContent, rightIndex)) {\n // touches a non-whitespace character to the right\n return null;\n }\n // walk over whitespace to the left\n while (leftIndex > 0 && this._charAtIsWhitespace(lineContent, leftIndex - 1)) {\n leftIndex--;\n }\n // walk over whitespace to the right\n while (rightIndex + 1 < lineContentLength && this._charAtIsWhitespace(lineContent, rightIndex + 1)) {\n rightIndex++;\n }\n return new _core_range_js__WEBPACK_IMPORTED_MODULE_5__.Range(position.lineNumber, leftIndex + 1, position.lineNumber, rightIndex + 2);\n }\n static _deleteInsideWordDetermineDeleteRange(wordSeparators, model, position) {\n const lineContent = model.getLineContent(position.lineNumber);\n const lineLength = lineContent.length;\n if (lineLength === 0) {\n // empty line\n if (position.lineNumber > 1) {\n return new _core_range_js__WEBPACK_IMPORTED_MODULE_5__.Range(position.lineNumber - 1, model.getLineMaxColumn(position.lineNumber - 1), position.lineNumber, 1);\n }\n else {\n if (position.lineNumber < model.getLineCount()) {\n return new _core_range_js__WEBPACK_IMPORTED_MODULE_5__.Range(position.lineNumber, 1, position.lineNumber + 1, 1);\n }\n else {\n // empty model\n return new _core_range_js__WEBPACK_IMPORTED_MODULE_5__.Range(position.lineNumber, 1, position.lineNumber, 1);\n }\n }\n }\n const touchesWord = (word) => {\n return (word.start + 1 <= position.column && position.column <= word.end + 1);\n };\n const createRangeWithPosition = (startColumn, endColumn) => {\n startColumn = Math.min(startColumn, position.column);\n endColumn = Math.max(endColumn, position.column);\n return new _core_range_js__WEBPACK_IMPORTED_MODULE_5__.Range(position.lineNumber, startColumn, position.lineNumber, endColumn);\n };\n const deleteWordAndAdjacentWhitespace = (word) => {\n let startColumn = word.start + 1;\n let endColumn = word.end + 1;\n let expandedToTheRight = false;\n while (endColumn - 1 < lineLength && this._charAtIsWhitespace(lineContent, endColumn - 1)) {\n expandedToTheRight = true;\n endColumn++;\n }\n if (!expandedToTheRight) {\n while (startColumn > 1 && this._charAtIsWhitespace(lineContent, startColumn - 2)) {\n startColumn--;\n }\n }\n return createRangeWithPosition(startColumn, endColumn);\n };\n const prevWordOnLine = WordOperations._findPreviousWordOnLine(wordSeparators, model, position);\n if (prevWordOnLine && touchesWord(prevWordOnLine)) {\n return deleteWordAndAdjacentWhitespace(prevWordOnLine);\n }\n const nextWordOnLine = WordOperations._findNextWordOnLine(wordSeparators, model, position);\n if (nextWordOnLine && touchesWord(nextWordOnLine)) {\n return deleteWordAndAdjacentWhitespace(nextWordOnLine);\n }\n if (prevWordOnLine && nextWordOnLine) {\n return createRangeWithPosition(prevWordOnLine.end + 1, nextWordOnLine.start + 1);\n }\n if (prevWordOnLine) {\n return createRangeWithPosition(prevWordOnLine.start + 1, prevWordOnLine.end + 1);\n }\n if (nextWordOnLine) {\n return createRangeWithPosition(nextWordOnLine.start + 1, nextWordOnLine.end + 1);\n }\n return createRangeWithPosition(1, lineLength + 1);\n }\n static _deleteWordPartLeft(model, selection) {\n if (!selection.isEmpty()) {\n return selection;\n }\n const pos = selection.getPosition();\n const toPosition = WordOperations._moveWordPartLeft(model, pos);\n return new _core_range_js__WEBPACK_IMPORTED_MODULE_5__.Range(pos.lineNumber, pos.column, toPosition.lineNumber, toPosition.column);\n }\n static _findFirstNonWhitespaceChar(str, startIndex) {\n const len = str.length;\n for (let chIndex = startIndex; chIndex < len; chIndex++) {\n const ch = str.charAt(chIndex);\n if (ch !== ' ' && ch !== '\\t') {\n return chIndex;\n }\n }\n return len;\n }\n static _deleteWordRightWhitespace(model, position) {\n const lineContent = model.getLineContent(position.lineNumber);\n const startIndex = position.column - 1;\n const firstNonWhitespace = this._findFirstNonWhitespaceChar(lineContent, startIndex);\n if (startIndex + 1 < firstNonWhitespace) {\n // bingo\n return new _core_range_js__WEBPACK_IMPORTED_MODULE_5__.Range(position.lineNumber, position.column, position.lineNumber, firstNonWhitespace + 1);\n }\n return null;\n }\n static deleteWordRight(ctx, wordNavigationType) {\n const wordSeparators = ctx.wordSeparators;\n const model = ctx.model;\n const selection = ctx.selection;\n const whitespaceHeuristics = ctx.whitespaceHeuristics;\n if (!selection.isEmpty()) {\n return selection;\n }\n const position = new _core_position_js__WEBPACK_IMPORTED_MODULE_4__.Position(selection.positionLineNumber, selection.positionColumn);\n let lineNumber = position.lineNumber;\n let column = position.column;\n const lineCount = model.getLineCount();\n const maxColumn = model.getLineMaxColumn(lineNumber);\n if (lineNumber === lineCount && column === maxColumn) {\n // Ignore deleting at end of file\n return null;\n }\n if (whitespaceHeuristics) {\n const r = this._deleteWordRightWhitespace(model, position);\n if (r) {\n return r;\n }\n }\n let nextWordOnLine = WordOperations._findNextWordOnLine(wordSeparators, model, position);\n if (wordNavigationType === 2 /* WordNavigationType.WordEnd */) {\n if (nextWordOnLine) {\n column = nextWordOnLine.end + 1;\n }\n else {\n if (column < maxColumn || lineNumber === lineCount) {\n column = maxColumn;\n }\n else {\n lineNumber++;\n nextWordOnLine = WordOperations._findNextWordOnLine(wordSeparators, model, new _core_position_js__WEBPACK_IMPORTED_MODULE_4__.Position(lineNumber, 1));\n if (nextWordOnLine) {\n column = nextWordOnLine.start + 1;\n }\n else {\n column = model.getLineMaxColumn(lineNumber);\n }\n }\n }\n }\n else {\n if (nextWordOnLine && column >= nextWordOnLine.start + 1) {\n nextWordOnLine = WordOperations._findNextWordOnLine(wordSeparators, model, new _core_position_js__WEBPACK_IMPORTED_MODULE_4__.Position(lineNumber, nextWordOnLine.end + 1));\n }\n if (nextWordOnLine) {\n column = nextWordOnLine.start + 1;\n }\n else {\n if (column < maxColumn || lineNumber === lineCount) {\n column = maxColumn;\n }\n else {\n lineNumber++;\n nextWordOnLine = WordOperations._findNextWordOnLine(wordSeparators, model, new _core_position_js__WEBPACK_IMPORTED_MODULE_4__.Position(lineNumber, 1));\n if (nextWordOnLine) {\n column = nextWordOnLine.start + 1;\n }\n else {\n column = model.getLineMaxColumn(lineNumber);\n }\n }\n }\n }\n return new _core_range_js__WEBPACK_IMPORTED_MODULE_5__.Range(lineNumber, column, position.lineNumber, position.column);\n }\n static _deleteWordPartRight(model, selection) {\n if (!selection.isEmpty()) {\n return selection;\n }\n const pos = selection.getPosition();\n const toPosition = WordOperations._moveWordPartRight(model, pos);\n return new _core_range_js__WEBPACK_IMPORTED_MODULE_5__.Range(pos.lineNumber, pos.column, toPosition.lineNumber, toPosition.column);\n }\n static _createWordAtPosition(model, lineNumber, word) {\n const range = new _core_range_js__WEBPACK_IMPORTED_MODULE_5__.Range(lineNumber, word.start + 1, lineNumber, word.end + 1);\n return {\n word: model.getValueInRange(range),\n startColumn: range.startColumn,\n endColumn: range.endColumn\n };\n }\n static getWordAtPosition(model, _wordSeparators, position) {\n const wordSeparators = (0,_core_wordCharacterClassifier_js__WEBPACK_IMPORTED_MODULE_3__.getMapForWordSeparators)(_wordSeparators);\n const prevWord = WordOperations._findPreviousWordOnLine(wordSeparators, model, position);\n if (prevWord && prevWord.wordType === 1 /* WordType.Regular */ && prevWord.start <= position.column - 1 && position.column - 1 <= prevWord.end) {\n return WordOperations._createWordAtPosition(model, position.lineNumber, prevWord);\n }\n const nextWord = WordOperations._findNextWordOnLine(wordSeparators, model, position);\n if (nextWord && nextWord.wordType === 1 /* WordType.Regular */ && nextWord.start <= position.column - 1 && position.column - 1 <= nextWord.end) {\n return WordOperations._createWordAtPosition(model, position.lineNumber, nextWord);\n }\n return null;\n }\n static word(config, model, cursor, inSelectionMode, position) {\n const wordSeparators = (0,_core_wordCharacterClassifier_js__WEBPACK_IMPORTED_MODULE_3__.getMapForWordSeparators)(config.wordSeparators);\n const prevWord = WordOperations._findPreviousWordOnLine(wordSeparators, model, position);\n const nextWord = WordOperations._findNextWordOnLine(wordSeparators, model, position);\n if (!inSelectionMode) {\n // Entering word selection for the first time\n let startColumn;\n let endColumn;\n if (prevWord && prevWord.wordType === 1 /* WordType.Regular */ && prevWord.start <= position.column - 1 && position.column - 1 <= prevWord.end) {\n // isTouchingPrevWord\n startColumn = prevWord.start + 1;\n endColumn = prevWord.end + 1;\n }\n else if (nextWord && nextWord.wordType === 1 /* WordType.Regular */ && nextWord.start <= position.column - 1 && position.column - 1 <= nextWord.end) {\n // isTouchingNextWord\n startColumn = nextWord.start + 1;\n endColumn = nextWord.end + 1;\n }\n else {\n if (prevWord) {\n startColumn = prevWord.end + 1;\n }\n else {\n startColumn = 1;\n }\n if (nextWord) {\n endColumn = nextWord.start + 1;\n }\n else {\n endColumn = model.getLineMaxColumn(position.lineNumber);\n }\n }\n return new _cursorCommon_js__WEBPACK_IMPORTED_MODULE_1__.SingleCursorState(new _core_range_js__WEBPACK_IMPORTED_MODULE_5__.Range(position.lineNumber, startColumn, position.lineNumber, endColumn), 1 /* SelectionStartKind.Word */, 0, new _core_position_js__WEBPACK_IMPORTED_MODULE_4__.Position(position.lineNumber, endColumn), 0);\n }\n let startColumn;\n let endColumn;\n if (prevWord && prevWord.wordType === 1 /* WordType.Regular */ && prevWord.start < position.column - 1 && position.column - 1 < prevWord.end) {\n // isInsidePrevWord\n startColumn = prevWord.start + 1;\n endColumn = prevWord.end + 1;\n }\n else if (nextWord && nextWord.wordType === 1 /* WordType.Regular */ && nextWord.start < position.column - 1 && position.column - 1 < nextWord.end) {\n // isInsideNextWord\n startColumn = nextWord.start + 1;\n endColumn = nextWord.end + 1;\n }\n else {\n startColumn = position.column;\n endColumn = position.column;\n }\n const lineNumber = position.lineNumber;\n let column;\n if (cursor.selectionStart.containsPosition(position)) {\n column = cursor.selectionStart.endColumn;\n }\n else if (position.isBeforeOrEqual(cursor.selectionStart.getStartPosition())) {\n column = startColumn;\n const possiblePosition = new _core_position_js__WEBPACK_IMPORTED_MODULE_4__.Position(lineNumber, column);\n if (cursor.selectionStart.containsPosition(possiblePosition)) {\n column = cursor.selectionStart.endColumn;\n }\n }\n else {\n column = endColumn;\n const possiblePosition = new _core_position_js__WEBPACK_IMPORTED_MODULE_4__.Position(lineNumber, column);\n if (cursor.selectionStart.containsPosition(possiblePosition)) {\n column = cursor.selectionStart.startColumn;\n }\n }\n return cursor.move(true, lineNumber, column, 0);\n }\n}\nclass WordPartOperations extends WordOperations {\n static deleteWordPartLeft(ctx) {\n const candidates = enforceDefined([\n WordOperations.deleteWordLeft(ctx, 0 /* WordNavigationType.WordStart */),\n WordOperations.deleteWordLeft(ctx, 2 /* WordNavigationType.WordEnd */),\n WordOperations._deleteWordPartLeft(ctx.model, ctx.selection)\n ]);\n candidates.sort(_core_range_js__WEBPACK_IMPORTED_MODULE_5__.Range.compareRangesUsingEnds);\n return candidates[2];\n }\n static deleteWordPartRight(ctx) {\n const candidates = enforceDefined([\n WordOperations.deleteWordRight(ctx, 0 /* WordNavigationType.WordStart */),\n WordOperations.deleteWordRight(ctx, 2 /* WordNavigationType.WordEnd */),\n WordOperations._deleteWordPartRight(ctx.model, ctx.selection)\n ]);\n candidates.sort(_core_range_js__WEBPACK_IMPORTED_MODULE_5__.Range.compareRangesUsingStarts);\n return candidates[0];\n }\n static moveWordPartLeft(wordSeparators, model, position) {\n const candidates = enforceDefined([\n WordOperations.moveWordLeft(wordSeparators, model, position, 0 /* WordNavigationType.WordStart */),\n WordOperations.moveWordLeft(wordSeparators, model, position, 2 /* WordNavigationType.WordEnd */),\n WordOperations._moveWordPartLeft(model, position)\n ]);\n candidates.sort(_core_position_js__WEBPACK_IMPORTED_MODULE_4__.Position.compare);\n return candidates[2];\n }\n static moveWordPartRight(wordSeparators, model, position) {\n const candidates = enforceDefined([\n WordOperations.moveWordRight(wordSeparators, model, position, 0 /* WordNavigationType.WordStart */),\n WordOperations.moveWordRight(wordSeparators, model, position, 2 /* WordNavigationType.WordEnd */),\n WordOperations._moveWordPartRight(model, position)\n ]);\n candidates.sort(_core_position_js__WEBPACK_IMPORTED_MODULE_4__.Position.compare);\n return candidates[0];\n }\n}\nfunction enforceDefined(arr) {\n return arr.filter(el => Boolean(el));\n}\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/common/cursor/cursorWordOperations.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/common/cursor/oneCursor.js":
/*!*****************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/common/cursor/oneCursor.js ***!
\*****************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ Cursor: () => (/* binding */ Cursor)\n/* harmony export */ });\n/* harmony import */ var _cursorCommon_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../cursorCommon.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/cursorCommon.js\");\n/* harmony import */ var _core_position_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../core/position.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/core/position.js\");\n/* harmony import */ var _core_range_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../core/range.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/core/range.js\");\n/* harmony import */ var _core_selection_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../core/selection.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/core/selection.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n\n\n\n/**\n * Represents a single cursor.\n*/\nclass Cursor {\n constructor(context) {\n this._selTrackedRange = null;\n this._trackSelection = true;\n this._setState(context, new _cursorCommon_js__WEBPACK_IMPORTED_MODULE_0__.SingleCursorState(new _core_range_js__WEBPACK_IMPORTED_MODULE_2__.Range(1, 1, 1, 1), 0 /* SelectionStartKind.Simple */, 0, new _core_position_js__WEBPACK_IMPORTED_MODULE_1__.Position(1, 1), 0), new _cursorCommon_js__WEBPACK_IMPORTED_MODULE_0__.SingleCursorState(new _core_range_js__WEBPACK_IMPORTED_MODULE_2__.Range(1, 1, 1, 1), 0 /* SelectionStartKind.Simple */, 0, new _core_position_js__WEBPACK_IMPORTED_MODULE_1__.Position(1, 1), 0));\n }\n dispose(context) {\n this._removeTrackedRange(context);\n }\n startTrackingSelection(context) {\n this._trackSelection = true;\n this._updateTrackedRange(context);\n }\n stopTrackingSelection(context) {\n this._trackSelection = false;\n this._removeTrackedRange(context);\n }\n _updateTrackedRange(context) {\n if (!this._trackSelection) {\n // don't track the selection\n return;\n }\n this._selTrackedRange = context.model._setTrackedRange(this._selTrackedRange, this.modelState.selection, 0 /* TrackedRangeStickiness.AlwaysGrowsWhenTypingAtEdges */);\n }\n _removeTrackedRange(context) {\n this._selTrackedRange = context.model._setTrackedRange(this._selTrackedRange, null, 0 /* TrackedRangeStickiness.AlwaysGrowsWhenTypingAtEdges */);\n }\n asCursorState() {\n return new _cursorCommon_js__WEBPACK_IMPORTED_MODULE_0__.CursorState(this.modelState, this.viewState);\n }\n readSelectionFromMarkers(context) {\n const range = context.model._getTrackedRange(this._selTrackedRange);\n if (this.modelState.selection.isEmpty() && !range.isEmpty()) {\n // Avoid selecting text when recovering from markers\n return _core_selection_js__WEBPACK_IMPORTED_MODULE_3__.Selection.fromRange(range.collapseToEnd(), this.modelState.selection.getDirection());\n }\n return _core_selection_js__WEBPACK_IMPORTED_MODULE_3__.Selection.fromRange(range, this.modelState.selection.getDirection());\n }\n ensureValidState(context) {\n this._setState(context, this.modelState, this.viewState);\n }\n setState(context, modelState, viewState) {\n this._setState(context, modelState, viewState);\n }\n static _validatePositionWithCache(viewModel, position, cacheInput, cacheOutput) {\n if (position.equals(cacheInput)) {\n return cacheOutput;\n }\n return viewModel.normalizePosition(position, 2 /* PositionAffinity.None */);\n }\n static _validateViewState(viewModel, viewState) {\n const position = viewState.position;\n const sStartPosition = viewState.selectionStart.getStartPosition();\n const sEndPosition = viewState.selectionStart.getEndPosition();\n const validPosition = viewModel.normalizePosition(position, 2 /* PositionAffinity.None */);\n const validSStartPosition = this._validatePositionWithCache(viewModel, sStartPosition, position, validPosition);\n const validSEndPosition = this._validatePositionWithCache(viewModel, sEndPosition, sStartPosition, validSStartPosition);\n if (position.equals(validPosition) && sStartPosition.equals(validSStartPosition) && sEndPosition.equals(validSEndPosition)) {\n // fast path: the state is valid\n return viewState;\n }\n return new _cursorCommon_js__WEBPACK_IMPORTED_MODULE_0__.SingleCursorState(_core_range_js__WEBPACK_IMPORTED_MODULE_2__.Range.fromPositions(validSStartPosition, validSEndPosition), viewState.selectionStartKind, viewState.selectionStartLeftoverVisibleColumns + sStartPosition.column - validSStartPosition.column, validPosition, viewState.leftoverVisibleColumns + position.column - validPosition.column);\n }\n _setState(context, modelState, viewState) {\n if (viewState) {\n viewState = Cursor._validateViewState(context.viewModel, viewState);\n }\n if (!modelState) {\n if (!viewState) {\n return;\n }\n // We only have the view state => compute the model state\n const selectionStart = context.model.validateRange(context.coordinatesConverter.convertViewRangeToModelRange(viewState.selectionStart));\n const position = context.model.validatePosition(context.coordinatesConverter.convertViewPositionToModelPosition(viewState.position));\n modelState = new _cursorCommon_js__WEBPACK_IMPORTED_MODULE_0__.SingleCursorState(selectionStart, viewState.selectionStartKind, viewState.selectionStartLeftoverVisibleColumns, position, viewState.leftoverVisibleColumns);\n }\n else {\n // Validate new model state\n const selectionStart = context.model.validateRange(modelState.selectionStart);\n const selectionStartLeftoverVisibleColumns = modelState.selectionStart.equalsRange(selectionStart) ? modelState.selectionStartLeftoverVisibleColumns : 0;\n const position = context.model.validatePosition(modelState.position);\n const leftoverVisibleColumns = modelState.position.equals(position) ? modelState.leftoverVisibleColumns : 0;\n modelState = new _cursorCommon_js__WEBPACK_IMPORTED_MODULE_0__.SingleCursorState(selectionStart, modelState.selectionStartKind, selectionStartLeftoverVisibleColumns, position, leftoverVisibleColumns);\n }\n if (!viewState) {\n // We only have the model state => compute the view state\n const viewSelectionStart1 = context.coordinatesConverter.convertModelPositionToViewPosition(new _core_position_js__WEBPACK_IMPORTED_MODULE_1__.Position(modelState.selectionStart.startLineNumber, modelState.selectionStart.startColumn));\n const viewSelectionStart2 = context.coordinatesConverter.convertModelPositionToViewPosition(new _core_position_js__WEBPACK_IMPORTED_MODULE_1__.Position(modelState.selectionStart.endLineNumber, modelState.selectionStart.endColumn));\n const viewSelectionStart = new _core_range_js__WEBPACK_IMPORTED_MODULE_2__.Range(viewSelectionStart1.lineNumber, viewSelectionStart1.column, viewSelectionStart2.lineNumber, viewSelectionStart2.column);\n const viewPosition = context.coordinatesConverter.convertModelPositionToViewPosition(modelState.position);\n viewState = new _cursorCommon_js__WEBPACK_IMPORTED_MODULE_0__.SingleCursorState(viewSelectionStart, modelState.selectionStartKind, modelState.selectionStartLeftoverVisibleColumns, viewPosition, modelState.leftoverVisibleColumns);\n }\n else {\n // Validate new view state\n const viewSelectionStart = context.coordinatesConverter.validateViewRange(viewState.selectionStart, modelState.selectionStart);\n const viewPosition = context.coordinatesConverter.validateViewPosition(viewState.position, modelState.position);\n viewState = new _cursorCommon_js__WEBPACK_IMPORTED_MODULE_0__.SingleCursorState(viewSelectionStart, modelState.selectionStartKind, modelState.selectionStartLeftoverVisibleColumns, viewPosition, modelState.leftoverVisibleColumns);\n }\n this.modelState = modelState;\n this.viewState = viewState;\n this._updateTrackedRange(context);\n }\n}\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/common/cursor/oneCursor.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/common/cursorCommon.js":
/*!*************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/common/cursorCommon.js ***!
\*************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ CursorConfiguration: () => (/* binding */ CursorConfiguration),\n/* harmony export */ CursorState: () => (/* binding */ CursorState),\n/* harmony export */ EditOperationResult: () => (/* binding */ EditOperationResult),\n/* harmony export */ PartialModelCursorState: () => (/* binding */ PartialModelCursorState),\n/* harmony export */ PartialViewCursorState: () => (/* binding */ PartialViewCursorState),\n/* harmony export */ SingleCursorState: () => (/* binding */ SingleCursorState),\n/* harmony export */ isQuote: () => (/* binding */ isQuote)\n/* harmony export */ });\n/* harmony import */ var _core_position_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./core/position.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/core/position.js\");\n/* harmony import */ var _core_range_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./core/range.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/core/range.js\");\n/* harmony import */ var _core_selection_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./core/selection.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/core/selection.js\");\n/* harmony import */ var _languages_supports_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./languages/supports.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/languages/supports.js\");\n/* harmony import */ var _core_cursorColumns_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./core/cursorColumns.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/core/cursorColumns.js\");\n/* harmony import */ var _core_indentation_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./core/indentation.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/core/indentation.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n\n\n\n\n\nconst autoCloseAlways = () => true;\nconst autoCloseNever = () => false;\nconst autoCloseBeforeWhitespace = (chr) => (chr === ' ' || chr === '\\t');\nclass CursorConfiguration {\n static shouldRecreate(e) {\n return (e.hasChanged(144 /* EditorOption.layoutInfo */)\n || e.hasChanged(130 /* EditorOption.wordSeparators */)\n || e.hasChanged(37 /* EditorOption.emptySelectionClipboard */)\n || e.hasChanged(77 /* EditorOption.multiCursorMergeOverlapping */)\n || e.hasChanged(79 /* EditorOption.multiCursorPaste */)\n || e.hasChanged(80 /* EditorOption.multiCursorLimit */)\n || e.hasChanged(6 /* EditorOption.autoClosingBrackets */)\n || e.hasChanged(7 /* EditorOption.autoClosingComments */)\n || e.hasChanged(11 /* EditorOption.autoClosingQuotes */)\n || e.hasChanged(9 /* EditorOption.autoClosingDelete */)\n || e.hasChanged(10 /* EditorOption.autoClosingOvertype */)\n || e.hasChanged(14 /* EditorOption.autoSurround */)\n || e.hasChanged(128 /* EditorOption.useTabStops */)\n || e.hasChanged(50 /* EditorOption.fontInfo */)\n || e.hasChanged(91 /* EditorOption.readOnly */));\n }\n constructor(languageId, modelOptions, configuration, languageConfigurationService) {\n var _a;\n this.languageConfigurationService = languageConfigurationService;\n this._cursorMoveConfigurationBrand = undefined;\n this._languageId = languageId;\n const options = configuration.options;\n const layoutInfo = options.get(144 /* EditorOption.layoutInfo */);\n const fontInfo = options.get(50 /* EditorOption.fontInfo */);\n this.readOnly = options.get(91 /* EditorOption.readOnly */);\n this.tabSize = modelOptions.tabSize;\n this.indentSize = modelOptions.indentSize;\n this.insertSpaces = modelOptions.insertSpaces;\n this.stickyTabStops = options.get(116 /* EditorOption.stickyTabStops */);\n this.lineHeight = fontInfo.lineHeight;\n this.typicalHalfwidthCharacterWidth = fontInfo.typicalHalfwidthCharacterWidth;\n this.pageSize = Math.max(1, Math.floor(layoutInfo.height / this.lineHeight) - 2);\n this.useTabStops = options.get(128 /* EditorOption.useTabStops */);\n this.wordSeparators = options.get(130 /* EditorOption.wordSeparators */);\n this.emptySelectionClipboard = options.get(37 /* EditorOption.emptySelectionClipboard */);\n this.copyWithSyntaxHighlighting = options.get(25 /* EditorOption.copyWithSyntaxHighlighting */);\n this.multiCursorMergeOverlapping = options.get(77 /* EditorOption.multiCursorMergeOverlapping */);\n this.multiCursorPaste = options.get(79 /* EditorOption.multiCursorPaste */);\n this.multiCursorLimit = options.get(80 /* EditorOption.multiCursorLimit */);\n this.autoClosingBrackets = options.get(6 /* EditorOption.autoClosingBrackets */);\n this.autoClosingComments = options.get(7 /* EditorOption.autoClosingComments */);\n this.autoClosingQuotes = options.get(11 /* EditorOption.autoClosingQuotes */);\n this.autoClosingDelete = options.get(9 /* EditorOption.autoClosingDelete */);\n this.autoClosingOvertype = options.get(10 /* EditorOption.autoClosingOvertype */);\n this.autoSurround = options.get(14 /* EditorOption.autoSurround */);\n this.autoIndent = options.get(12 /* EditorOption.autoIndent */);\n this.surroundingPairs = {};\n this._electricChars = null;\n this.shouldAutoCloseBefore = {\n quote: this._getShouldAutoClose(languageId, this.autoClosingQuotes, true),\n comment: this._getShouldAutoClose(languageId, this.autoClosingComments, false),\n bracket: this._getShouldAutoClose(languageId, this.autoClosingBrackets, false),\n };\n this.autoClosingPairs = this.languageConfigurationService.getLanguageConfiguration(languageId).getAutoClosingPairs();\n const surroundingPairs = this.languageConfigurationService.getLanguageConfiguration(languageId).getSurroundingPairs();\n if (surroundingPairs) {\n for (const pair of surroundingPairs) {\n this.surroundingPairs[pair.open] = pair.close;\n }\n }\n const commentsConfiguration = this.languageConfigurationService.getLanguageConfiguration(languageId).comments;\n this.blockCommentStartToken = (_a = commentsConfiguration === null || commentsConfiguration === void 0 ? void 0 : commentsConfiguration.blockCommentStartToken) !== null && _a !== void 0 ? _a : null;\n }\n get electricChars() {\n var _a;\n if (!this._electricChars) {\n this._electricChars = {};\n const electricChars = (_a = this.languageConfigurationService.getLanguageConfiguration(this._languageId).electricCharacter) === null || _a === void 0 ? void 0 : _a.getElectricCharacters();\n if (electricChars) {\n for (const char of electricChars) {\n this._electricChars[char] = true;\n }\n }\n }\n return this._electricChars;\n }\n /**\n * Should return opening bracket type to match indentation with\n */\n onElectricCharacter(character, context, column) {\n const scopedLineTokens = (0,_languages_supports_js__WEBPACK_IMPORTED_MODULE_3__.createScopedLineTokens)(context, column - 1);\n const electricCharacterSupport = this.languageConfigurationService.getLanguageConfiguration(scopedLineTokens.languageId).electricCharacter;\n if (!electricCharacterSupport) {\n return null;\n }\n return electricCharacterSupport.onElectricCharacter(character, scopedLineTokens, column - scopedLineTokens.firstCharOffset);\n }\n normalizeIndentation(str) {\n return (0,_core_indentation_js__WEBPACK_IMPORTED_MODULE_5__.normalizeIndentation)(str, this.indentSize, this.insertSpaces);\n }\n _getShouldAutoClose(languageId, autoCloseConfig, forQuotes) {\n switch (autoCloseConfig) {\n case 'beforeWhitespace':\n return autoCloseBeforeWhitespace;\n case 'languageDefined':\n return this._getLanguageDefinedShouldAutoClose(languageId, forQuotes);\n case 'always':\n return autoCloseAlways;\n case 'never':\n return autoCloseNever;\n }\n }\n _getLanguageDefinedShouldAutoClose(languageId, forQuotes) {\n const autoCloseBeforeSet = this.languageConfigurationService.getLanguageConfiguration(languageId).getAutoCloseBeforeSet(forQuotes);\n return c => autoCloseBeforeSet.indexOf(c) !== -1;\n }\n /**\n * Returns a visible column from a column.\n * @see {@link CursorColumns}\n */\n visibleColumnFromColumn(model, position) {\n return _core_cursorColumns_js__WEBPACK_IMPORTED_MODULE_4__.CursorColumns.visibleColumnFromColumn(model.getLineContent(position.lineNumber), position.column, this.tabSize);\n }\n /**\n * Returns a visible column from a column.\n * @see {@link CursorColumns}\n */\n columnFromVisibleColumn(model, lineNumber, visibleColumn) {\n const result = _core_cursorColumns_js__WEBPACK_IMPORTED_MODULE_4__.CursorColumns.columnFromVisibleColumn(model.getLineContent(lineNumber), visibleColumn, this.tabSize);\n const minColumn = model.getLineMinColumn(lineNumber);\n if (result < minColumn) {\n return minColumn;\n }\n const maxColumn = model.getLineMaxColumn(lineNumber);\n if (result > maxColumn) {\n return maxColumn;\n }\n return result;\n }\n}\nclass CursorState {\n static fromModelState(modelState) {\n return new PartialModelCursorState(modelState);\n }\n static fromViewState(viewState) {\n return new PartialViewCursorState(viewState);\n }\n static fromModelSelection(modelSelection) {\n const selection = _core_selection_js__WEBPACK_IMPORTED_MODULE_2__.Selection.liftSelection(modelSelection);\n const modelState = new SingleCursorState(_core_range_js__WEBPACK_IMPORTED_MODULE_1__.Range.fromPositions(selection.getSelectionStart()), 0 /* SelectionStartKind.Simple */, 0, selection.getPosition(), 0);\n return CursorState.fromModelState(modelState);\n }\n static fromModelSelections(modelSelections) {\n const states = [];\n for (let i = 0, len = modelSelections.length; i < len; i++) {\n states[i] = this.fromModelSelection(modelSelections[i]);\n }\n return states;\n }\n constructor(modelState, viewState) {\n this._cursorStateBrand = undefined;\n this.modelState = modelState;\n this.viewState = viewState;\n }\n equals(other) {\n return (this.viewState.equals(other.viewState) && this.modelState.equals(other.modelState));\n }\n}\nclass PartialModelCursorState {\n constructor(modelState) {\n this.modelState = modelState;\n this.viewState = null;\n }\n}\nclass PartialViewCursorState {\n constructor(viewState) {\n this.modelState = null;\n this.viewState = viewState;\n }\n}\n/**\n * Represents the cursor state on either the model or on the view model.\n */\nclass SingleCursorState {\n constructor(selectionStart, selectionStartKind, selectionStartLeftoverVisibleColumns, position, leftoverVisibleColumns) {\n this.selectionStart = selectionStart;\n this.selectionStartKind = selectionStartKind;\n this.selectionStartLeftoverVisibleColumns = selectionStartLeftoverVisibleColumns;\n this.position = position;\n this.leftoverVisibleColumns = leftoverVisibleColumns;\n this._singleCursorStateBrand = undefined;\n this.selection = SingleCursorState._computeSelection(this.selectionStart, this.position);\n }\n equals(other) {\n return (this.selectionStartLeftoverVisibleColumns === other.selectionStartLeftoverVisibleColumns\n && this.leftoverVisibleColumns === other.leftoverVisibleColumns\n && this.selectionStartKind === other.selectionStartKind\n && this.position.equals(other.position)\n && this.selectionStart.equalsRange(other.selectionStart));\n }\n hasSelection() {\n return (!this.selection.isEmpty() || !this.selectionStart.isEmpty());\n }\n move(inSelectionMode, lineNumber, column, leftoverVisibleColumns) {\n if (inSelectionMode) {\n // move just position\n return new SingleCursorState(this.selectionStart, this.selectionStartKind, this.selectionStartLeftoverVisibleColumns, new _core_position_js__WEBPACK_IMPORTED_MODULE_0__.Position(lineNumber, column), leftoverVisibleColumns);\n }\n else {\n // move everything\n return new SingleCursorState(new _core_range_js__WEBPACK_IMPORTED_MODULE_1__.Range(lineNumber, column, lineNumber, column), 0 /* SelectionStartKind.Simple */, leftoverVisibleColumns, new _core_position_js__WEBPACK_IMPORTED_MODULE_0__.Position(lineNumber, column), leftoverVisibleColumns);\n }\n }\n static _computeSelection(selectionStart, position) {\n if (selectionStart.isEmpty() || !position.isBeforeOrEqual(selectionStart.getStartPosition())) {\n return _core_selection_js__WEBPACK_IMPORTED_MODULE_2__.Selection.fromPositions(selectionStart.getStartPosition(), position);\n }\n else {\n return _core_selection_js__WEBPACK_IMPORTED_MODULE_2__.Selection.fromPositions(selectionStart.getEndPosition(), position);\n }\n }\n}\nclass EditOperationResult {\n constructor(type, commands, opts) {\n this._editOperationResultBrand = undefined;\n this.type = type;\n this.commands = commands;\n this.shouldPushStackElementBefore = opts.shouldPushStackElementBefore;\n this.shouldPushStackElementAfter = opts.shouldPushStackElementAfter;\n }\n}\nfunction isQuote(ch) {\n return (ch === '\\'' || ch === '\"' || ch === '`');\n}\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/common/cursorCommon.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/common/diff/defaultLinesDiffComputer/algorithms/diffAlgorithm.js":
/*!*******************************************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/common/diff/defaultLinesDiffComputer/algorithms/diffAlgorithm.js ***!
\*******************************************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ DateTimeout: () => (/* binding */ DateTimeout),\n/* harmony export */ DiffAlgorithmResult: () => (/* binding */ DiffAlgorithmResult),\n/* harmony export */ InfiniteTimeout: () => (/* binding */ InfiniteTimeout),\n/* harmony export */ OffsetPair: () => (/* binding */ OffsetPair),\n/* harmony export */ SequenceDiff: () => (/* binding */ SequenceDiff)\n/* harmony export */ });\n/* harmony import */ var _base_common_arrays_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../../../base/common/arrays.js */ \"./node_modules/monaco-editor/esm/vs/base/common/arrays.js\");\n/* harmony import */ var _base_common_errors_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../../base/common/errors.js */ \"./node_modules/monaco-editor/esm/vs/base/common/errors.js\");\n/* harmony import */ var _core_offsetRange_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../core/offsetRange.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/core/offsetRange.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n\n\nclass DiffAlgorithmResult {\n static trivial(seq1, seq2) {\n return new DiffAlgorithmResult([new SequenceDiff(_core_offsetRange_js__WEBPACK_IMPORTED_MODULE_2__.OffsetRange.ofLength(seq1.length), _core_offsetRange_js__WEBPACK_IMPORTED_MODULE_2__.OffsetRange.ofLength(seq2.length))], false);\n }\n static trivialTimedOut(seq1, seq2) {\n return new DiffAlgorithmResult([new SequenceDiff(_core_offsetRange_js__WEBPACK_IMPORTED_MODULE_2__.OffsetRange.ofLength(seq1.length), _core_offsetRange_js__WEBPACK_IMPORTED_MODULE_2__.OffsetRange.ofLength(seq2.length))], true);\n }\n constructor(diffs, \n /**\n * Indicates if the time out was reached.\n * In that case, the diffs might be an approximation and the user should be asked to rerun the diff with more time.\n */\n hitTimeout) {\n this.diffs = diffs;\n this.hitTimeout = hitTimeout;\n }\n}\nclass SequenceDiff {\n static invert(sequenceDiffs, doc1Length) {\n const result = [];\n (0,_base_common_arrays_js__WEBPACK_IMPORTED_MODULE_0__.forEachAdjacent)(sequenceDiffs, (a, b) => {\n result.push(SequenceDiff.fromOffsetPairs(a ? a.getEndExclusives() : OffsetPair.zero, b ? b.getStarts() : new OffsetPair(doc1Length, (a ? a.seq2Range.endExclusive - a.seq1Range.endExclusive : 0) + doc1Length)));\n });\n return result;\n }\n static fromOffsetPairs(start, endExclusive) {\n return new SequenceDiff(new _core_offsetRange_js__WEBPACK_IMPORTED_MODULE_2__.OffsetRange(start.offset1, endExclusive.offset1), new _core_offsetRange_js__WEBPACK_IMPORTED_MODULE_2__.OffsetRange(start.offset2, endExclusive.offset2));\n }\n constructor(seq1Range, seq2Range) {\n this.seq1Range = seq1Range;\n this.seq2Range = seq2Range;\n }\n swap() {\n return new SequenceDiff(this.seq2Range, this.seq1Range);\n }\n toString() {\n return `${this.seq1Range} <-> ${this.seq2Range}`;\n }\n join(other) {\n return new SequenceDiff(this.seq1Range.join(other.seq1Range), this.seq2Range.join(other.seq2Range));\n }\n delta(offset) {\n if (offset === 0) {\n return this;\n }\n return new SequenceDiff(this.seq1Range.delta(offset), this.seq2Range.delta(offset));\n }\n deltaStart(offset) {\n if (offset === 0) {\n return this;\n }\n return new SequenceDiff(this.seq1Range.deltaStart(offset), this.seq2Range.deltaStart(offset));\n }\n deltaEnd(offset) {\n if (offset === 0) {\n return this;\n }\n return new SequenceDiff(this.seq1Range.deltaEnd(offset), this.seq2Range.deltaEnd(offset));\n }\n intersect(other) {\n const i1 = this.seq1Range.intersect(other.seq1Range);\n const i2 = this.seq2Range.intersect(other.seq2Range);\n if (!i1 || !i2) {\n return undefined;\n }\n return new SequenceDiff(i1, i2);\n }\n getStarts() {\n return new OffsetPair(this.seq1Range.start, this.seq2Range.start);\n }\n getEndExclusives() {\n return new OffsetPair(this.seq1Range.endExclusive, this.seq2Range.endExclusive);\n }\n}\nclass OffsetPair {\n constructor(offset1, offset2) {\n this.offset1 = offset1;\n this.offset2 = offset2;\n }\n toString() {\n return `${this.offset1} <-> ${this.offset2}`;\n }\n delta(offset) {\n if (offset === 0) {\n return this;\n }\n return new OffsetPair(this.offset1 + offset, this.offset2 + offset);\n }\n equals(other) {\n return this.offset1 === other.offset1 && this.offset2 === other.offset2;\n }\n}\nOffsetPair.zero = new OffsetPair(0, 0);\nOffsetPair.max = new OffsetPair(Number.MAX_SAFE_INTEGER, Number.MAX_SAFE_INTEGER);\nclass InfiniteTimeout {\n isValid() {\n return true;\n }\n}\nInfiniteTimeout.instance = new InfiniteTimeout();\nclass DateTimeout {\n constructor(timeout) {\n this.timeout = timeout;\n this.startTime = Date.now();\n this.valid = true;\n if (timeout <= 0) {\n throw new _base_common_errors_js__WEBPACK_IMPORTED_MODULE_1__.BugIndicatingError('timeout must be positive');\n }\n }\n // Recommendation: Set a log-point `{this.disable()}` in the body\n isValid() {\n const valid = Date.now() - this.startTime < this.timeout;\n if (!valid && this.valid) {\n this.valid = false; // timeout reached\n // eslint-disable-next-line no-debugger\n debugger; // WARNING: Most likely debugging caused the timeout. Call `this.disable()` to continue without timing out.\n }\n return this.valid;\n }\n}\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/common/diff/defaultLinesDiffComputer/algorithms/diffAlgorithm.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/common/diff/defaultLinesDiffComputer/algorithms/dynamicProgrammingDiffing.js":
/*!*******************************************************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/common/diff/defaultLinesDiffComputer/algorithms/dynamicProgrammingDiffing.js ***!
\*******************************************************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ DynamicProgrammingDiffing: () => (/* binding */ DynamicProgrammingDiffing)\n/* harmony export */ });\n/* harmony import */ var _core_offsetRange_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../core/offsetRange.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/core/offsetRange.js\");\n/* harmony import */ var _diffAlgorithm_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./diffAlgorithm.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/diff/defaultLinesDiffComputer/algorithms/diffAlgorithm.js\");\n/* harmony import */ var _utils_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../utils.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/diff/defaultLinesDiffComputer/utils.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n\n\n/**\n * A O(MN) diffing algorithm that supports a score function.\n * The algorithm can be improved by processing the 2d array diagonally.\n*/\nclass DynamicProgrammingDiffing {\n compute(sequence1, sequence2, timeout = _diffAlgorithm_js__WEBPACK_IMPORTED_MODULE_1__.InfiniteTimeout.instance, equalityScore) {\n if (sequence1.length === 0 || sequence2.length === 0) {\n return _diffAlgorithm_js__WEBPACK_IMPORTED_MODULE_1__.DiffAlgorithmResult.trivial(sequence1, sequence2);\n }\n /**\n * lcsLengths.get(i, j): Length of the longest common subsequence of sequence1.substring(0, i + 1) and sequence2.substring(0, j + 1).\n */\n const lcsLengths = new _utils_js__WEBPACK_IMPORTED_MODULE_2__.Array2D(sequence1.length, sequence2.length);\n const directions = new _utils_js__WEBPACK_IMPORTED_MODULE_2__.Array2D(sequence1.length, sequence2.length);\n const lengths = new _utils_js__WEBPACK_IMPORTED_MODULE_2__.Array2D(sequence1.length, sequence2.length);\n // ==== Initializing lcsLengths ====\n for (let s1 = 0; s1 < sequence1.length; s1++) {\n for (let s2 = 0; s2 < sequence2.length; s2++) {\n if (!timeout.isValid()) {\n return _diffAlgorithm_js__WEBPACK_IMPORTED_MODULE_1__.DiffAlgorithmResult.trivialTimedOut(sequence1, sequence2);\n }\n const horizontalLen = s1 === 0 ? 0 : lcsLengths.get(s1 - 1, s2);\n const verticalLen = s2 === 0 ? 0 : lcsLengths.get(s1, s2 - 1);\n let extendedSeqScore;\n if (sequence1.getElement(s1) === sequence2.getElement(s2)) {\n if (s1 === 0 || s2 === 0) {\n extendedSeqScore = 0;\n }\n else {\n extendedSeqScore = lcsLengths.get(s1 - 1, s2 - 1);\n }\n if (s1 > 0 && s2 > 0 && directions.get(s1 - 1, s2 - 1) === 3) {\n // Prefer consecutive diagonals\n extendedSeqScore += lengths.get(s1 - 1, s2 - 1);\n }\n extendedSeqScore += (equalityScore ? equalityScore(s1, s2) : 1);\n }\n else {\n extendedSeqScore = -1;\n }\n const newValue = Math.max(horizontalLen, verticalLen, extendedSeqScore);\n if (newValue === extendedSeqScore) {\n // Prefer diagonals\n const prevLen = s1 > 0 && s2 > 0 ? lengths.get(s1 - 1, s2 - 1) : 0;\n lengths.set(s1, s2, prevLen + 1);\n directions.set(s1, s2, 3);\n }\n else if (newValue === horizontalLen) {\n lengths.set(s1, s2, 0);\n directions.set(s1, s2, 1);\n }\n else if (newValue === verticalLen) {\n lengths.set(s1, s2, 0);\n directions.set(s1, s2, 2);\n }\n lcsLengths.set(s1, s2, newValue);\n }\n }\n // ==== Backtracking ====\n const result = [];\n let lastAligningPosS1 = sequence1.length;\n let lastAligningPosS2 = sequence2.length;\n function reportDecreasingAligningPositions(s1, s2) {\n if (s1 + 1 !== lastAligningPosS1 || s2 + 1 !== lastAligningPosS2) {\n result.push(new _diffAlgorithm_js__WEBPACK_IMPORTED_MODULE_1__.SequenceDiff(new _core_offsetRange_js__WEBPACK_IMPORTED_MODULE_0__.OffsetRange(s1 + 1, lastAligningPosS1), new _core_offsetRange_js__WEBPACK_IMPORTED_MODULE_0__.OffsetRange(s2 + 1, lastAligningPosS2)));\n }\n lastAligningPosS1 = s1;\n lastAligningPosS2 = s2;\n }\n let s1 = sequence1.length - 1;\n let s2 = sequence2.length - 1;\n while (s1 >= 0 && s2 >= 0) {\n if (directions.get(s1, s2) === 3) {\n reportDecreasingAligningPositions(s1, s2);\n s1--;\n s2--;\n }\n else {\n if (directions.get(s1, s2) === 1) {\n s1--;\n }\n else {\n s2--;\n }\n }\n }\n reportDecreasingAligningPositions(-1, -1);\n result.reverse();\n return new _diffAlgorithm_js__WEBPACK_IMPORTED_MODULE_1__.DiffAlgorithmResult(result, false);\n }\n}\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/common/diff/defaultLinesDiffComputer/algorithms/dynamicProgrammingDiffing.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/common/diff/defaultLinesDiffComputer/algorithms/myersDiffAlgorithm.js":
/*!************************************************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/common/diff/defaultLinesDiffComputer/algorithms/myersDiffAlgorithm.js ***!
\************************************************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ MyersDiffAlgorithm: () => (/* binding */ MyersDiffAlgorithm)\n/* harmony export */ });\n/* harmony import */ var _core_offsetRange_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../core/offsetRange.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/core/offsetRange.js\");\n/* harmony import */ var _diffAlgorithm_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./diffAlgorithm.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/diff/defaultLinesDiffComputer/algorithms/diffAlgorithm.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n\n/**\n * An O(ND) diff algorithm that has a quadratic space worst-case complexity.\n*/\nclass MyersDiffAlgorithm {\n compute(seq1, seq2, timeout = _diffAlgorithm_js__WEBPACK_IMPORTED_MODULE_1__.InfiniteTimeout.instance) {\n // These are common special cases.\n // The early return improves performance dramatically.\n if (seq1.length === 0 || seq2.length === 0) {\n return _diffAlgorithm_js__WEBPACK_IMPORTED_MODULE_1__.DiffAlgorithmResult.trivial(seq1, seq2);\n }\n const seqX = seq1; // Text on the x axis\n const seqY = seq2; // Text on the y axis\n function getXAfterSnake(x, y) {\n while (x < seqX.length && y < seqY.length && seqX.getElement(x) === seqY.getElement(y)) {\n x++;\n y++;\n }\n return x;\n }\n let d = 0;\n // V[k]: X value of longest d-line that ends in diagonal k.\n // d-line: path from (0,0) to (x,y) that uses exactly d non-diagonals.\n // diagonal k: Set of points (x,y) with x-y = k.\n // k=1 -> (1,0),(2,1)\n const V = new FastInt32Array();\n V.set(0, getXAfterSnake(0, 0));\n const paths = new FastArrayNegativeIndices();\n paths.set(0, V.get(0) === 0 ? null : new SnakePath(null, 0, 0, V.get(0)));\n let k = 0;\n loop: while (true) {\n d++;\n if (!timeout.isValid()) {\n return _diffAlgorithm_js__WEBPACK_IMPORTED_MODULE_1__.DiffAlgorithmResult.trivialTimedOut(seqX, seqY);\n }\n // The paper has `for (k = -d; k <= d; k += 2)`, but we can ignore diagonals that cannot influence the result.\n const lowerBound = -Math.min(d, seqY.length + (d % 2));\n const upperBound = Math.min(d, seqX.length + (d % 2));\n for (k = lowerBound; k <= upperBound; k += 2) {\n let step = 0;\n // We can use the X values of (d-1)-lines to compute X value of the longest d-lines.\n const maxXofDLineTop = k === upperBound ? -1 : V.get(k + 1); // We take a vertical non-diagonal (add a symbol in seqX)\n const maxXofDLineLeft = k === lowerBound ? -1 : V.get(k - 1) + 1; // We take a horizontal non-diagonal (+1 x) (delete a symbol in seqX)\n step++;\n const x = Math.min(Math.max(maxXofDLineTop, maxXofDLineLeft), seqX.length);\n const y = x - k;\n step++;\n if (x > seqX.length || y > seqY.length) {\n // This diagonal is irrelevant for the result.\n // TODO: Don't pay the cost for this in the next iteration.\n continue;\n }\n const newMaxX = getXAfterSnake(x, y);\n V.set(k, newMaxX);\n const lastPath = x === maxXofDLineTop ? paths.get(k + 1) : paths.get(k - 1);\n paths.set(k, newMaxX !== x ? new SnakePath(lastPath, x, y, newMaxX - x) : lastPath);\n if (V.get(k) === seqX.length && V.get(k) - k === seqY.length) {\n break loop;\n }\n }\n }\n let path = paths.get(k);\n const result = [];\n let lastAligningPosS1 = seqX.length;\n let lastAligningPosS2 = seqY.length;\n while (true) {\n const endX = path ? path.x + path.length : 0;\n const endY = path ? path.y + path.length : 0;\n if (endX !== lastAligningPosS1 || endY !== lastAligningPosS2) {\n result.push(new _diffAlgorithm_js__WEBPACK_IMPORTED_MODULE_1__.SequenceDiff(new _core_offsetRange_js__WEBPACK_IMPORTED_MODULE_0__.OffsetRange(endX, lastAligningPosS1), new _core_offsetRange_js__WEBPACK_IMPORTED_MODULE_0__.OffsetRange(endY, lastAligningPosS2)));\n }\n if (!path) {\n break;\n }\n lastAligningPosS1 = path.x;\n lastAligningPosS2 = path.y;\n path = path.prev;\n }\n result.reverse();\n return new _diffAlgorithm_js__WEBPACK_IMPORTED_MODULE_1__.DiffAlgorithmResult(result, false);\n }\n}\nclass SnakePath {\n constructor(prev, x, y, length) {\n this.prev = prev;\n this.x = x;\n this.y = y;\n this.length = length;\n }\n}\n/**\n * An array that supports fast negative indices.\n*/\nclass FastInt32Array {\n constructor() {\n this.positiveArr = new Int32Array(10);\n this.negativeArr = new Int32Array(10);\n }\n get(idx) {\n if (idx < 0) {\n idx = -idx - 1;\n return this.negativeArr[idx];\n }\n else {\n return this.positiveArr[idx];\n }\n }\n set(idx, value) {\n if (idx < 0) {\n idx = -idx - 1;\n if (idx >= this.negativeArr.length) {\n const arr = this.negativeArr;\n this.negativeArr = new Int32Array(arr.length * 2);\n this.negativeArr.set(arr);\n }\n this.negativeArr[idx] = value;\n }\n else {\n if (idx >= this.positiveArr.length) {\n const arr = this.positiveArr;\n this.positiveArr = new Int32Array(arr.length * 2);\n this.positiveArr.set(arr);\n }\n this.positiveArr[idx] = value;\n }\n }\n}\n/**\n * An array that supports fast negative indices.\n*/\nclass FastArrayNegativeIndices {\n constructor() {\n this.positiveArr = [];\n this.negativeArr = [];\n }\n get(idx) {\n if (idx < 0) {\n idx = -idx - 1;\n return this.negativeArr[idx];\n }\n else {\n return this.positiveArr[idx];\n }\n }\n set(idx, value) {\n if (idx < 0) {\n idx = -idx - 1;\n this.negativeArr[idx] = value;\n }\n else {\n this.positiveArr[idx] = value;\n }\n }\n}\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/common/diff/defaultLinesDiffComputer/algorithms/myersDiffAlgorithm.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/common/diff/defaultLinesDiffComputer/computeMovedLines.js":
/*!************************************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/common/diff/defaultLinesDiffComputer/computeMovedLines.js ***!
\************************************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ computeMovedLines: () => (/* binding */ computeMovedLines)\n/* harmony export */ });\n/* harmony import */ var _algorithms_diffAlgorithm_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./algorithms/diffAlgorithm.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/diff/defaultLinesDiffComputer/algorithms/diffAlgorithm.js\");\n/* harmony import */ var _rangeMapping_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../rangeMapping.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/diff/rangeMapping.js\");\n/* harmony import */ var _base_common_arrays_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../../base/common/arrays.js */ \"./node_modules/monaco-editor/esm/vs/base/common/arrays.js\");\n/* harmony import */ var _base_common_arraysFind_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../../../base/common/arraysFind.js */ \"./node_modules/monaco-editor/esm/vs/base/common/arraysFind.js\");\n/* harmony import */ var _base_common_map_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../../../base/common/map.js */ \"./node_modules/monaco-editor/esm/vs/base/common/map.js\");\n/* harmony import */ var _core_lineRange_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../../core/lineRange.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/core/lineRange.js\");\n/* harmony import */ var _core_offsetRange_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../../core/offsetRange.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/core/offsetRange.js\");\n/* harmony import */ var _linesSliceCharSequence_js__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ./linesSliceCharSequence.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/diff/defaultLinesDiffComputer/linesSliceCharSequence.js\");\n/* harmony import */ var _utils_js__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ./utils.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/diff/defaultLinesDiffComputer/utils.js\");\n/* harmony import */ var _algorithms_myersDiffAlgorithm_js__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ./algorithms/myersDiffAlgorithm.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/diff/defaultLinesDiffComputer/algorithms/myersDiffAlgorithm.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n\n\n\n\n\n\n\n\n\nfunction computeMovedLines(changes, originalLines, modifiedLines, hashedOriginalLines, hashedModifiedLines, timeout) {\n let { moves, excludedChanges } = computeMovesFromSimpleDeletionsToSimpleInsertions(changes, originalLines, modifiedLines, timeout);\n if (!timeout.isValid()) {\n return [];\n }\n const filteredChanges = changes.filter(c => !excludedChanges.has(c));\n const unchangedMoves = computeUnchangedMoves(filteredChanges, hashedOriginalLines, hashedModifiedLines, originalLines, modifiedLines, timeout);\n (0,_base_common_arrays_js__WEBPACK_IMPORTED_MODULE_2__.pushMany)(moves, unchangedMoves);\n moves = joinCloseConsecutiveMoves(moves);\n // Ignore too short moves\n moves = moves.filter(current => {\n const lines = current.original.toOffsetRange().slice(originalLines).map(l => l.trim());\n const originalText = lines.join('\\n');\n return originalText.length >= 15 && countWhere(lines, l => l.length >= 2) >= 2;\n });\n moves = removeMovesInSameDiff(changes, moves);\n return moves;\n}\nfunction countWhere(arr, predicate) {\n let count = 0;\n for (const t of arr) {\n if (predicate(t)) {\n count++;\n }\n }\n return count;\n}\nfunction computeMovesFromSimpleDeletionsToSimpleInsertions(changes, originalLines, modifiedLines, timeout) {\n const moves = [];\n const deletions = changes\n .filter(c => c.modified.isEmpty && c.original.length >= 3)\n .map(d => new _utils_js__WEBPACK_IMPORTED_MODULE_8__.LineRangeFragment(d.original, originalLines, d));\n const insertions = new Set(changes\n .filter(c => c.original.isEmpty && c.modified.length >= 3)\n .map(d => new _utils_js__WEBPACK_IMPORTED_MODULE_8__.LineRangeFragment(d.modified, modifiedLines, d)));\n const excludedChanges = new Set();\n for (const deletion of deletions) {\n let highestSimilarity = -1;\n let best;\n for (const insertion of insertions) {\n const similarity = deletion.computeSimilarity(insertion);\n if (similarity > highestSimilarity) {\n highestSimilarity = similarity;\n best = insertion;\n }\n }\n if (highestSimilarity > 0.90 && best) {\n insertions.delete(best);\n moves.push(new _rangeMapping_js__WEBPACK_IMPORTED_MODULE_1__.LineRangeMapping(deletion.range, best.range));\n excludedChanges.add(deletion.source);\n excludedChanges.add(best.source);\n }\n if (!timeout.isValid()) {\n return { moves, excludedChanges };\n }\n }\n return { moves, excludedChanges };\n}\nfunction computeUnchangedMoves(changes, hashedOriginalLines, hashedModifiedLines, originalLines, modifiedLines, timeout) {\n const moves = [];\n const original3LineHashes = new _base_common_map_js__WEBPACK_IMPORTED_MODULE_4__.SetMap();\n for (const change of changes) {\n for (let i = change.original.startLineNumber; i < change.original.endLineNumberExclusive - 2; i++) {\n const key = `${hashedOriginalLines[i - 1]}:${hashedOriginalLines[i + 1 - 1]}:${hashedOriginalLines[i + 2 - 1]}`;\n original3LineHashes.add(key, { range: new _core_lineRange_js__WEBPACK_IMPORTED_MODULE_5__.LineRange(i, i + 3) });\n }\n }\n const possibleMappings = [];\n changes.sort((0,_base_common_arrays_js__WEBPACK_IMPORTED_MODULE_2__.compareBy)(c => c.modified.startLineNumber, _base_common_arrays_js__WEBPACK_IMPORTED_MODULE_2__.numberComparator));\n for (const change of changes) {\n let lastMappings = [];\n for (let i = change.modified.startLineNumber; i < change.modified.endLineNumberExclusive - 2; i++) {\n const key = `${hashedModifiedLines[i - 1]}:${hashedModifiedLines[i + 1 - 1]}:${hashedModifiedLines[i + 2 - 1]}`;\n const currentModifiedRange = new _core_lineRange_js__WEBPACK_IMPORTED_MODULE_5__.LineRange(i, i + 3);\n const nextMappings = [];\n original3LineHashes.forEach(key, ({ range }) => {\n for (const lastMapping of lastMappings) {\n // does this match extend some last match?\n if (lastMapping.originalLineRange.endLineNumberExclusive + 1 === range.endLineNumberExclusive &&\n lastMapping.modifiedLineRange.endLineNumberExclusive + 1 === currentModifiedRange.endLineNumberExclusive) {\n lastMapping.originalLineRange = new _core_lineRange_js__WEBPACK_IMPORTED_MODULE_5__.LineRange(lastMapping.originalLineRange.startLineNumber, range.endLineNumberExclusive);\n lastMapping.modifiedLineRange = new _core_lineRange_js__WEBPACK_IMPORTED_MODULE_5__.LineRange(lastMapping.modifiedLineRange.startLineNumber, currentModifiedRange.endLineNumberExclusive);\n nextMappings.push(lastMapping);\n return;\n }\n }\n const mapping = {\n modifiedLineRange: currentModifiedRange,\n originalLineRange: range,\n };\n possibleMappings.push(mapping);\n nextMappings.push(mapping);\n });\n lastMappings = nextMappings;\n }\n if (!timeout.isValid()) {\n return [];\n }\n }\n possibleMappings.sort((0,_base_common_arrays_js__WEBPACK_IMPORTED_MODULE_2__.reverseOrder)((0,_base_common_arrays_js__WEBPACK_IMPORTED_MODULE_2__.compareBy)(m => m.modifiedLineRange.length, _base_common_arrays_js__WEBPACK_IMPORTED_MODULE_2__.numberComparator)));\n const modifiedSet = new _core_lineRange_js__WEBPACK_IMPORTED_MODULE_5__.LineRangeSet();\n const originalSet = new _core_lineRange_js__WEBPACK_IMPORTED_MODULE_5__.LineRangeSet();\n for (const mapping of possibleMappings) {\n const diffOrigToMod = mapping.modifiedLineRange.startLineNumber - mapping.originalLineRange.startLineNumber;\n const modifiedSections = modifiedSet.subtractFrom(mapping.modifiedLineRange);\n const originalTranslatedSections = originalSet.subtractFrom(mapping.originalLineRange).getWithDelta(diffOrigToMod);\n const modifiedIntersectedSections = modifiedSections.getIntersection(originalTranslatedSections);\n for (const s of modifiedIntersectedSections.ranges) {\n if (s.length < 3) {\n continue;\n }\n const modifiedLineRange = s;\n const originalLineRange = s.delta(-diffOrigToMod);\n moves.push(new _rangeMapping_js__WEBPACK_IMPORTED_MODULE_1__.LineRangeMapping(originalLineRange, modifiedLineRange));\n modifiedSet.addRange(modifiedLineRange);\n originalSet.addRange(originalLineRange);\n }\n }\n moves.sort((0,_base_common_arrays_js__WEBPACK_IMPORTED_MODULE_2__.compareBy)(m => m.original.startLineNumber, _base_common_arrays_js__WEBPACK_IMPORTED_MODULE_2__.numberComparator));\n const monotonousChanges = new _base_common_arraysFind_js__WEBPACK_IMPORTED_MODULE_3__.MonotonousArray(changes);\n for (let i = 0; i < moves.length; i++) {\n const move = moves[i];\n const firstTouchingChangeOrig = monotonousChanges.findLastMonotonous(c => c.original.startLineNumber <= move.original.startLineNumber);\n const firstTouchingChangeMod = (0,_base_common_arraysFind_js__WEBPACK_IMPORTED_MODULE_3__.findLastMonotonous)(changes, c => c.modified.startLineNumber <= move.modified.startLineNumber);\n const linesAbove = Math.max(move.original.startLineNumber - firstTouchingChangeOrig.original.startLineNumber, move.modified.startLineNumber - firstTouchingChangeMod.modified.startLineNumber);\n const lastTouchingChangeOrig = monotonousChanges.findLastMonotonous(c => c.original.startLineNumber < move.original.endLineNumberExclusive);\n const lastTouchingChangeMod = (0,_base_common_arraysFind_js__WEBPACK_IMPORTED_MODULE_3__.findLastMonotonous)(changes, c => c.modified.startLineNumber < move.modified.endLineNumberExclusive);\n const linesBelow = Math.max(lastTouchingChangeOrig.original.endLineNumberExclusive - move.original.endLineNumberExclusive, lastTouchingChangeMod.modified.endLineNumberExclusive - move.modified.endLineNumberExclusive);\n let extendToTop;\n for (extendToTop = 0; extendToTop < linesAbove; extendToTop++) {\n const origLine = move.original.startLineNumber - extendToTop - 1;\n const modLine = move.modified.startLineNumber - extendToTop - 1;\n if (origLine > originalLines.length || modLine > modifiedLines.length) {\n break;\n }\n if (modifiedSet.contains(modLine) || originalSet.contains(origLine)) {\n break;\n }\n if (!areLinesSimilar(originalLines[origLine - 1], modifiedLines[modLine - 1], timeout)) {\n break;\n }\n }\n if (extendToTop > 0) {\n originalSet.addRange(new _core_lineRange_js__WEBPACK_IMPORTED_MODULE_5__.LineRange(move.original.startLineNumber - extendToTop, move.original.startLineNumber));\n modifiedSet.addRange(new _core_lineRange_js__WEBPACK_IMPORTED_MODULE_5__.LineRange(move.modified.startLineNumber - extendToTop, move.modified.startLineNumber));\n }\n let extendToBottom;\n for (extendToBottom = 0; extendToBottom < linesBelow; extendToBottom++) {\n const origLine = move.original.endLineNumberExclusive + extendToBottom;\n const modLine = move.modified.endLineNumberExclusive + extendToBottom;\n if (origLine > originalLines.length || modLine > modifiedLines.length) {\n break;\n }\n if (modifiedSet.contains(modLine) || originalSet.contains(origLine)) {\n break;\n }\n if (!areLinesSimilar(originalLines[origLine - 1], modifiedLines[modLine - 1], timeout)) {\n break;\n }\n }\n if (extendToBottom > 0) {\n originalSet.addRange(new _core_lineRange_js__WEBPACK_IMPORTED_MODULE_5__.LineRange(move.original.endLineNumberExclusive, move.original.endLineNumberExclusive + extendToBottom));\n modifiedSet.addRange(new _core_lineRange_js__WEBPACK_IMPORTED_MODULE_5__.LineRange(move.modified.endLineNumberExclusive, move.modified.endLineNumberExclusive + extendToBottom));\n }\n if (extendToTop > 0 || extendToBottom > 0) {\n moves[i] = new _rangeMapping_js__WEBPACK_IMPORTED_MODULE_1__.LineRangeMapping(new _core_lineRange_js__WEBPACK_IMPORTED_MODULE_5__.LineRange(move.original.startLineNumber - extendToTop, move.original.endLineNumberExclusive + extendToBottom), new _core_lineRange_js__WEBPACK_IMPORTED_MODULE_5__.LineRange(move.modified.startLineNumber - extendToTop, move.modified.endLineNumberExclusive + extendToBottom));\n }\n }\n return moves;\n}\nfunction areLinesSimilar(line1, line2, timeout) {\n if (line1.trim() === line2.trim()) {\n return true;\n }\n if (line1.length > 300 && line2.length > 300) {\n return false;\n }\n const myersDiffingAlgorithm = new _algorithms_myersDiffAlgorithm_js__WEBPACK_IMPORTED_MODULE_9__.MyersDiffAlgorithm();\n const result = myersDiffingAlgorithm.compute(new _linesSliceCharSequence_js__WEBPACK_IMPORTED_MODULE_7__.LinesSliceCharSequence([line1], new _core_offsetRange_js__WEBPACK_IMPORTED_MODULE_6__.OffsetRange(0, 1), false), new _linesSliceCharSequence_js__WEBPACK_IMPORTED_MODULE_7__.LinesSliceCharSequence([line2], new _core_offsetRange_js__WEBPACK_IMPORTED_MODULE_6__.OffsetRange(0, 1), false), timeout);\n let commonNonSpaceCharCount = 0;\n const inverted = _algorithms_diffAlgorithm_js__WEBPACK_IMPORTED_MODULE_0__.SequenceDiff.invert(result.diffs, line1.length);\n for (const seq of inverted) {\n seq.seq1Range.forEach(idx => {\n if (!(0,_utils_js__WEBPACK_IMPORTED_MODULE_8__.isSpace)(line1.charCodeAt(idx))) {\n commonNonSpaceCharCount++;\n }\n });\n }\n function countNonWsChars(str) {\n let count = 0;\n for (let i = 0; i < line1.length; i++) {\n if (!(0,_utils_js__WEBPACK_IMPORTED_MODULE_8__.isSpace)(str.charCodeAt(i))) {\n count++;\n }\n }\n return count;\n }\n const longerLineLength = countNonWsChars(line1.length > line2.length ? line1 : line2);\n const r = commonNonSpaceCharCount / longerLineLength > 0.6 && longerLineLength > 10;\n return r;\n}\nfunction joinCloseConsecutiveMoves(moves) {\n if (moves.length === 0) {\n return moves;\n }\n moves.sort((0,_base_common_arrays_js__WEBPACK_IMPORTED_MODULE_2__.compareBy)(m => m.original.startLineNumber, _base_common_arrays_js__WEBPACK_IMPORTED_MODULE_2__.numberComparator));\n const result = [moves[0]];\n for (let i = 1; i < moves.length; i++) {\n const last = result[result.length - 1];\n const current = moves[i];\n const originalDist = current.original.startLineNumber - last.original.endLineNumberExclusive;\n const modifiedDist = current.modified.startLineNumber - last.modified.endLineNumberExclusive;\n const currentMoveAfterLast = originalDist >= 0 && modifiedDist >= 0;\n if (currentMoveAfterLast && originalDist + modifiedDist <= 2) {\n result[result.length - 1] = last.join(current);\n continue;\n }\n result.push(current);\n }\n return result;\n}\nfunction removeMovesInSameDiff(changes, moves) {\n const changesMonotonous = new _base_common_arraysFind_js__WEBPACK_IMPORTED_MODULE_3__.MonotonousArray(changes);\n moves = moves.filter(m => {\n const diffBeforeEndOfMoveOriginal = changesMonotonous.findLastMonotonous(c => c.original.startLineNumber < m.original.endLineNumberExclusive)\n || new _rangeMapping_js__WEBPACK_IMPORTED_MODULE_1__.LineRangeMapping(new _core_lineRange_js__WEBPACK_IMPORTED_MODULE_5__.LineRange(1, 1), new _core_lineRange_js__WEBPACK_IMPORTED_MODULE_5__.LineRange(1, 1));\n const diffBeforeEndOfMoveModified = (0,_base_common_arraysFind_js__WEBPACK_IMPORTED_MODULE_3__.findLastMonotonous)(changes, c => c.modified.startLineNumber < m.modified.endLineNumberExclusive);\n const differentDiffs = diffBeforeEndOfMoveOriginal !== diffBeforeEndOfMoveModified;\n return differentDiffs;\n });\n return moves;\n}\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/common/diff/defaultLinesDiffComputer/computeMovedLines.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/common/diff/defaultLinesDiffComputer/defaultLinesDiffComputer.js":
/*!*******************************************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/common/diff/defaultLinesDiffComputer/defaultLinesDiffComputer.js ***!
\*******************************************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ DefaultLinesDiffComputer: () => (/* binding */ DefaultLinesDiffComputer),\n/* harmony export */ getLineRangeMapping: () => (/* binding */ getLineRangeMapping),\n/* harmony export */ lineRangeMappingFromRangeMappings: () => (/* binding */ lineRangeMappingFromRangeMappings)\n/* harmony export */ });\n/* harmony import */ var _base_common_arrays_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../../base/common/arrays.js */ \"./node_modules/monaco-editor/esm/vs/base/common/arrays.js\");\n/* harmony import */ var _base_common_assert_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../base/common/assert.js */ \"./node_modules/monaco-editor/esm/vs/base/common/assert.js\");\n/* harmony import */ var _core_lineRange_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../core/lineRange.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/core/lineRange.js\");\n/* harmony import */ var _core_offsetRange_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../core/offsetRange.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/core/offsetRange.js\");\n/* harmony import */ var _core_range_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../core/range.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/core/range.js\");\n/* harmony import */ var _algorithms_diffAlgorithm_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./algorithms/diffAlgorithm.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/diff/defaultLinesDiffComputer/algorithms/diffAlgorithm.js\");\n/* harmony import */ var _algorithms_dynamicProgrammingDiffing_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ./algorithms/dynamicProgrammingDiffing.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/diff/defaultLinesDiffComputer/algorithms/dynamicProgrammingDiffing.js\");\n/* harmony import */ var _algorithms_myersDiffAlgorithm_js__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ./algorithms/myersDiffAlgorithm.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/diff/defaultLinesDiffComputer/algorithms/myersDiffAlgorithm.js\");\n/* harmony import */ var _computeMovedLines_js__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ./computeMovedLines.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/diff/defaultLinesDiffComputer/computeMovedLines.js\");\n/* harmony import */ var _heuristicSequenceOptimizations_js__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ./heuristicSequenceOptimizations.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/diff/defaultLinesDiffComputer/heuristicSequenceOptimizations.js\");\n/* harmony import */ var _linesDiffComputer_js__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! ../linesDiffComputer.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/diff/linesDiffComputer.js\");\n/* harmony import */ var _rangeMapping_js__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(/*! ../rangeMapping.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/diff/rangeMapping.js\");\n/* harmony import */ var _linesSliceCharSequence_js__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(/*! ./linesSliceCharSequence.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/diff/defaultLinesDiffComputer/linesSliceCharSequence.js\");\n/* harmony import */ var _lineSequence_js__WEBPACK_IMPORTED_MODULE_13__ = __webpack_require__(/*! ./lineSequence.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/diff/defaultLinesDiffComputer/lineSequence.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nclass DefaultLinesDiffComputer {\n constructor() {\n this.dynamicProgrammingDiffing = new _algorithms_dynamicProgrammingDiffing_js__WEBPACK_IMPORTED_MODULE_6__.DynamicProgrammingDiffing();\n this.myersDiffingAlgorithm = new _algorithms_myersDiffAlgorithm_js__WEBPACK_IMPORTED_MODULE_7__.MyersDiffAlgorithm();\n }\n computeDiff(originalLines, modifiedLines, options) {\n if (originalLines.length <= 1 && (0,_base_common_arrays_js__WEBPACK_IMPORTED_MODULE_0__.equals)(originalLines, modifiedLines, (a, b) => a === b)) {\n return new _linesDiffComputer_js__WEBPACK_IMPORTED_MODULE_10__.LinesDiff([], [], false);\n }\n if (originalLines.length === 1 && originalLines[0].length === 0 || modifiedLines.length === 1 && modifiedLines[0].length === 0) {\n return new _linesDiffComputer_js__WEBPACK_IMPORTED_MODULE_10__.LinesDiff([\n new _rangeMapping_js__WEBPACK_IMPORTED_MODULE_11__.DetailedLineRangeMapping(new _core_lineRange_js__WEBPACK_IMPORTED_MODULE_2__.LineRange(1, originalLines.length + 1), new _core_lineRange_js__WEBPACK_IMPORTED_MODULE_2__.LineRange(1, modifiedLines.length + 1), [\n new _rangeMapping_js__WEBPACK_IMPORTED_MODULE_11__.RangeMapping(new _core_range_js__WEBPACK_IMPORTED_MODULE_4__.Range(1, 1, originalLines.length, originalLines[0].length + 1), new _core_range_js__WEBPACK_IMPORTED_MODULE_4__.Range(1, 1, modifiedLines.length, modifiedLines[0].length + 1))\n ])\n ], [], false);\n }\n const timeout = options.maxComputationTimeMs === 0 ? _algorithms_diffAlgorithm_js__WEBPACK_IMPORTED_MODULE_5__.InfiniteTimeout.instance : new _algorithms_diffAlgorithm_js__WEBPACK_IMPORTED_MODULE_5__.DateTimeout(options.maxComputationTimeMs);\n const considerWhitespaceChanges = !options.ignoreTrimWhitespace;\n const perfectHashes = new Map();\n function getOrCreateHash(text) {\n let hash = perfectHashes.get(text);\n if (hash === undefined) {\n hash = perfectHashes.size;\n perfectHashes.set(text, hash);\n }\n return hash;\n }\n const originalLinesHashes = originalLines.map((l) => getOrCreateHash(l.trim()));\n const modifiedLinesHashes = modifiedLines.map((l) => getOrCreateHash(l.trim()));\n const sequence1 = new _lineSequence_js__WEBPACK_IMPORTED_MODULE_13__.LineSequence(originalLinesHashes, originalLines);\n const sequence2 = new _lineSequence_js__WEBPACK_IMPORTED_MODULE_13__.LineSequence(modifiedLinesHashes, modifiedLines);\n const lineAlignmentResult = (() => {\n if (sequence1.length + sequence2.length < 1700) {\n // Use the improved algorithm for small files\n return this.dynamicProgrammingDiffing.compute(sequence1, sequence2, timeout, (offset1, offset2) => originalLines[offset1] === modifiedLines[offset2]\n ? modifiedLines[offset2].length === 0\n ? 0.1\n : 1 + Math.log(1 + modifiedLines[offset2].length)\n : 0.99);\n }\n return this.myersDiffingAlgorithm.compute(sequence1, sequence2);\n })();\n let lineAlignments = lineAlignmentResult.diffs;\n let hitTimeout = lineAlignmentResult.hitTimeout;\n lineAlignments = (0,_heuristicSequenceOptimizations_js__WEBPACK_IMPORTED_MODULE_9__.optimizeSequenceDiffs)(sequence1, sequence2, lineAlignments);\n lineAlignments = (0,_heuristicSequenceOptimizations_js__WEBPACK_IMPORTED_MODULE_9__.removeVeryShortMatchingLinesBetweenDiffs)(sequence1, sequence2, lineAlignments);\n const alignments = [];\n const scanForWhitespaceChanges = (equalLinesCount) => {\n if (!considerWhitespaceChanges) {\n return;\n }\n for (let i = 0; i < equalLinesCount; i++) {\n const seq1Offset = seq1LastStart + i;\n const seq2Offset = seq2LastStart + i;\n if (originalLines[seq1Offset] !== modifiedLines[seq2Offset]) {\n // This is because of whitespace changes, diff these lines\n const characterDiffs = this.refineDiff(originalLines, modifiedLines, new _algorithms_diffAlgorithm_js__WEBPACK_IMPORTED_MODULE_5__.SequenceDiff(new _core_offsetRange_js__WEBPACK_IMPORTED_MODULE_3__.OffsetRange(seq1Offset, seq1Offset + 1), new _core_offsetRange_js__WEBPACK_IMPORTED_MODULE_3__.OffsetRange(seq2Offset, seq2Offset + 1)), timeout, considerWhitespaceChanges);\n for (const a of characterDiffs.mappings) {\n alignments.push(a);\n }\n if (characterDiffs.hitTimeout) {\n hitTimeout = true;\n }\n }\n }\n };\n let seq1LastStart = 0;\n let seq2LastStart = 0;\n for (const diff of lineAlignments) {\n (0,_base_common_assert_js__WEBPACK_IMPORTED_MODULE_1__.assertFn)(() => diff.seq1Range.start - seq1LastStart === diff.seq2Range.start - seq2LastStart);\n const equalLinesCount = diff.seq1Range.start - seq1LastStart;\n scanForWhitespaceChanges(equalLinesCount);\n seq1LastStart = diff.seq1Range.endExclusive;\n seq2LastStart = diff.seq2Range.endExclusive;\n const characterDiffs = this.refineDiff(originalLines, modifiedLines, diff, timeout, considerWhitespaceChanges);\n if (characterDiffs.hitTimeout) {\n hitTimeout = true;\n }\n for (const a of characterDiffs.mappings) {\n alignments.push(a);\n }\n }\n scanForWhitespaceChanges(originalLines.length - seq1LastStart);\n const changes = lineRangeMappingFromRangeMappings(alignments, originalLines, modifiedLines);\n let moves = [];\n if (options.computeMoves) {\n moves = this.computeMoves(changes, originalLines, modifiedLines, originalLinesHashes, modifiedLinesHashes, timeout, considerWhitespaceChanges);\n }\n // Make sure all ranges are valid\n (0,_base_common_assert_js__WEBPACK_IMPORTED_MODULE_1__.assertFn)(() => {\n function validatePosition(pos, lines) {\n if (pos.lineNumber < 1 || pos.lineNumber > lines.length) {\n return false;\n }\n const line = lines[pos.lineNumber - 1];\n if (pos.column < 1 || pos.column > line.length + 1) {\n return false;\n }\n return true;\n }\n function validateRange(range, lines) {\n if (range.startLineNumber < 1 || range.startLineNumber > lines.length + 1) {\n return false;\n }\n if (range.endLineNumberExclusive < 1 || range.endLineNumberExclusive > lines.length + 1) {\n return false;\n }\n return true;\n }\n for (const c of changes) {\n if (!c.innerChanges) {\n return false;\n }\n for (const ic of c.innerChanges) {\n const valid = validatePosition(ic.modifiedRange.getStartPosition(), modifiedLines) && validatePosition(ic.modifiedRange.getEndPosition(), modifiedLines) &&\n validatePosition(ic.originalRange.getStartPosition(), originalLines) && validatePosition(ic.originalRange.getEndPosition(), originalLines);\n if (!valid) {\n return false;\n }\n }\n if (!validateRange(c.modified, modifiedLines) || !validateRange(c.original, originalLines)) {\n return false;\n }\n }\n return true;\n });\n return new _linesDiffComputer_js__WEBPACK_IMPORTED_MODULE_10__.LinesDiff(changes, moves, hitTimeout);\n }\n computeMoves(changes, originalLines, modifiedLines, hashedOriginalLines, hashedModifiedLines, timeout, considerWhitespaceChanges) {\n const moves = (0,_computeMovedLines_js__WEBPACK_IMPORTED_MODULE_8__.computeMovedLines)(changes, originalLines, modifiedLines, hashedOriginalLines, hashedModifiedLines, timeout);\n const movesWithDiffs = moves.map(m => {\n const moveChanges = this.refineDiff(originalLines, modifiedLines, new _algorithms_diffAlgorithm_js__WEBPACK_IMPORTED_MODULE_5__.SequenceDiff(m.original.toOffsetRange(), m.modified.toOffsetRange()), timeout, considerWhitespaceChanges);\n const mappings = lineRangeMappingFromRangeMappings(moveChanges.mappings, originalLines, modifiedLines, true);\n return new _linesDiffComputer_js__WEBPACK_IMPORTED_MODULE_10__.MovedText(m, mappings);\n });\n return movesWithDiffs;\n }\n refineDiff(originalLines, modifiedLines, diff, timeout, considerWhitespaceChanges) {\n const slice1 = new _linesSliceCharSequence_js__WEBPACK_IMPORTED_MODULE_12__.LinesSliceCharSequence(originalLines, diff.seq1Range, considerWhitespaceChanges);\n const slice2 = new _linesSliceCharSequence_js__WEBPACK_IMPORTED_MODULE_12__.LinesSliceCharSequence(modifiedLines, diff.seq2Range, considerWhitespaceChanges);\n const diffResult = slice1.length + slice2.length < 500\n ? this.dynamicProgrammingDiffing.compute(slice1, slice2, timeout)\n : this.myersDiffingAlgorithm.compute(slice1, slice2, timeout);\n let diffs = diffResult.diffs;\n diffs = (0,_heuristicSequenceOptimizations_js__WEBPACK_IMPORTED_MODULE_9__.optimizeSequenceDiffs)(slice1, slice2, diffs);\n diffs = (0,_heuristicSequenceOptimizations_js__WEBPACK_IMPORTED_MODULE_9__.extendDiffsToEntireWordIfAppropriate)(slice1, slice2, diffs);\n diffs = (0,_heuristicSequenceOptimizations_js__WEBPACK_IMPORTED_MODULE_9__.removeShortMatches)(slice1, slice2, diffs);\n diffs = (0,_heuristicSequenceOptimizations_js__WEBPACK_IMPORTED_MODULE_9__.removeVeryShortMatchingTextBetweenLongDiffs)(slice1, slice2, diffs);\n const result = diffs.map((d) => new _rangeMapping_js__WEBPACK_IMPORTED_MODULE_11__.RangeMapping(slice1.translateRange(d.seq1Range), slice2.translateRange(d.seq2Range)));\n // Assert: result applied on original should be the same as diff applied to original\n return {\n mappings: result,\n hitTimeout: diffResult.hitTimeout,\n };\n }\n}\nfunction lineRangeMappingFromRangeMappings(alignments, originalLines, modifiedLines, dontAssertStartLine = false) {\n const changes = [];\n for (const g of (0,_base_common_arrays_js__WEBPACK_IMPORTED_MODULE_0__.groupAdjacentBy)(alignments.map(a => getLineRangeMapping(a, originalLines, modifiedLines)), (a1, a2) => a1.original.overlapOrTouch(a2.original)\n || a1.modified.overlapOrTouch(a2.modified))) {\n const first = g[0];\n const last = g[g.length - 1];\n changes.push(new _rangeMapping_js__WEBPACK_IMPORTED_MODULE_11__.DetailedLineRangeMapping(first.original.join(last.original), first.modified.join(last.modified), g.map(a => a.innerChanges[0])));\n }\n (0,_base_common_assert_js__WEBPACK_IMPORTED_MODULE_1__.assertFn)(() => {\n if (!dontAssertStartLine) {\n if (changes.length > 0 && changes[0].original.startLineNumber !== changes[0].modified.startLineNumber) {\n return false;\n }\n }\n return (0,_base_common_assert_js__WEBPACK_IMPORTED_MODULE_1__.checkAdjacentItems)(changes, (m1, m2) => m2.original.startLineNumber - m1.original.endLineNumberExclusive === m2.modified.startLineNumber - m1.modified.endLineNumberExclusive &&\n // There has to be an unchanged line in between (otherwise both diffs should have been joined)\n m1.original.endLineNumberExclusive < m2.original.startLineNumber &&\n m1.modified.endLineNumberExclusive < m2.modified.startLineNumber);\n });\n return changes;\n}\nfunction getLineRangeMapping(rangeMapping, originalLines, modifiedLines) {\n let lineStartDelta = 0;\n let lineEndDelta = 0;\n // rangeMapping describes the edit that replaces `rangeMapping.originalRange` with `newText := getText(modifiedLines, rangeMapping.modifiedRange)`.\n // original: ]xxx \\n <- this line is not modified\n // modified: ]xx \\n\n if (rangeMapping.modifiedRange.endColumn === 1 && rangeMapping.originalRange.endColumn === 1\n && rangeMapping.originalRange.startLineNumber + lineStartDelta <= rangeMapping.originalRange.endLineNumber\n && rangeMapping.modifiedRange.startLineNumber + lineStartDelta <= rangeMapping.modifiedRange.endLineNumber) {\n // We can only do this if the range is not empty yet\n lineEndDelta = -1;\n }\n // original: xxx[ \\n <- this line is not modified\n // modified: xxx[ \\n\n if (rangeMapping.modifiedRange.startColumn - 1 >= modifiedLines[rangeMapping.modifiedRange.startLineNumber - 1].length\n && rangeMapping.originalRange.startColumn - 1 >= originalLines[rangeMapping.originalRange.startLineNumber - 1].length\n && rangeMapping.originalRange.startLineNumber <= rangeMapping.originalRange.endLineNumber + lineEndDelta\n && rangeMapping.modifiedRange.startLineNumber <= rangeMapping.modifiedRange.endLineNumber + lineEndDelta) {\n // We can only do this if the range is not empty yet\n lineStartDelta = 1;\n }\n const originalLineRange = new _core_lineRange_js__WEBPACK_IMPORTED_MODULE_2__.LineRange(rangeMapping.originalRange.startLineNumber + lineStartDelta, rangeMapping.originalRange.endLineNumber + 1 + lineEndDelta);\n const modifiedLineRange = new _core_lineRange_js__WEBPACK_IMPORTED_MODULE_2__.LineRange(rangeMapping.modifiedRange.startLineNumber + lineStartDelta, rangeMapping.modifiedRange.endLineNumber + 1 + lineEndDelta);\n return new _rangeMapping_js__WEBPACK_IMPORTED_MODULE_11__.DetailedLineRangeMapping(originalLineRange, modifiedLineRange, [rangeMapping]);\n}\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/common/diff/defaultLinesDiffComputer/defaultLinesDiffComputer.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/common/diff/defaultLinesDiffComputer/heuristicSequenceOptimizations.js":
/*!*************************************************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/common/diff/defaultLinesDiffComputer/heuristicSequenceOptimizations.js ***!
\*************************************************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ extendDiffsToEntireWordIfAppropriate: () => (/* binding */ extendDiffsToEntireWordIfAppropriate),\n/* harmony export */ optimizeSequenceDiffs: () => (/* binding */ optimizeSequenceDiffs),\n/* harmony export */ removeShortMatches: () => (/* binding */ removeShortMatches),\n/* harmony export */ removeVeryShortMatchingLinesBetweenDiffs: () => (/* binding */ removeVeryShortMatchingLinesBetweenDiffs),\n/* harmony export */ removeVeryShortMatchingTextBetweenLongDiffs: () => (/* binding */ removeVeryShortMatchingTextBetweenLongDiffs)\n/* harmony export */ });\n/* harmony import */ var _base_common_arrays_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../../base/common/arrays.js */ \"./node_modules/monaco-editor/esm/vs/base/common/arrays.js\");\n/* harmony import */ var _core_offsetRange_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../core/offsetRange.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/core/offsetRange.js\");\n/* harmony import */ var _algorithms_diffAlgorithm_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./algorithms/diffAlgorithm.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/diff/defaultLinesDiffComputer/algorithms/diffAlgorithm.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n\n\nfunction optimizeSequenceDiffs(sequence1, sequence2, sequenceDiffs) {\n let result = sequenceDiffs;\n result = joinSequenceDiffsByShifting(sequence1, sequence2, result);\n // Sometimes, calling this function twice improves the result.\n // Uncomment the second invocation and run the tests to see the difference.\n result = joinSequenceDiffsByShifting(sequence1, sequence2, result);\n result = shiftSequenceDiffs(sequence1, sequence2, result);\n return result;\n}\n/**\n * This function fixes issues like this:\n * ```\n * import { Baz, Bar } from \"foo\";\n * ```\n * <->\n * ```\n * import { Baz, Bar, Foo } from \"foo\";\n * ```\n * Computed diff: [ {Add \",\" after Bar}, {Add \"Foo \" after space} }\n * Improved diff: [{Add \", Foo\" after Bar}]\n */\nfunction joinSequenceDiffsByShifting(sequence1, sequence2, sequenceDiffs) {\n if (sequenceDiffs.length === 0) {\n return sequenceDiffs;\n }\n const result = [];\n result.push(sequenceDiffs[0]);\n // First move them all to the left as much as possible and join them if possible\n for (let i = 1; i < sequenceDiffs.length; i++) {\n const prevResult = result[result.length - 1];\n let cur = sequenceDiffs[i];\n if (cur.seq1Range.isEmpty || cur.seq2Range.isEmpty) {\n const length = cur.seq1Range.start - prevResult.seq1Range.endExclusive;\n let d;\n for (d = 1; d <= length; d++) {\n if (sequence1.getElement(cur.seq1Range.start - d) !== sequence1.getElement(cur.seq1Range.endExclusive - d) ||\n sequence2.getElement(cur.seq2Range.start - d) !== sequence2.getElement(cur.seq2Range.endExclusive - d)) {\n break;\n }\n }\n d--;\n if (d === length) {\n // Merge previous and current diff\n result[result.length - 1] = new _algorithms_diffAlgorithm_js__WEBPACK_IMPORTED_MODULE_2__.SequenceDiff(new _core_offsetRange_js__WEBPACK_IMPORTED_MODULE_1__.OffsetRange(prevResult.seq1Range.start, cur.seq1Range.endExclusive - length), new _core_offsetRange_js__WEBPACK_IMPORTED_MODULE_1__.OffsetRange(prevResult.seq2Range.start, cur.seq2Range.endExclusive - length));\n continue;\n }\n cur = cur.delta(-d);\n }\n result.push(cur);\n }\n const result2 = [];\n // Then move them all to the right and join them again if possible\n for (let i = 0; i < result.length - 1; i++) {\n const nextResult = result[i + 1];\n let cur = result[i];\n if (cur.seq1Range.isEmpty || cur.seq2Range.isEmpty) {\n const length = nextResult.seq1Range.start - cur.seq1Range.endExclusive;\n let d;\n for (d = 0; d < length; d++) {\n if (!sequence1.isStronglyEqual(cur.seq1Range.start + d, cur.seq1Range.endExclusive + d) ||\n !sequence2.isStronglyEqual(cur.seq2Range.start + d, cur.seq2Range.endExclusive + d)) {\n break;\n }\n }\n if (d === length) {\n // Merge previous and current diff, write to result!\n result[i + 1] = new _algorithms_diffAlgorithm_js__WEBPACK_IMPORTED_MODULE_2__.SequenceDiff(new _core_offsetRange_js__WEBPACK_IMPORTED_MODULE_1__.OffsetRange(cur.seq1Range.start + length, nextResult.seq1Range.endExclusive), new _core_offsetRange_js__WEBPACK_IMPORTED_MODULE_1__.OffsetRange(cur.seq2Range.start + length, nextResult.seq2Range.endExclusive));\n continue;\n }\n if (d > 0) {\n cur = cur.delta(d);\n }\n }\n result2.push(cur);\n }\n if (result.length > 0) {\n result2.push(result[result.length - 1]);\n }\n return result2;\n}\n// align character level diffs at whitespace characters\n// import { IBar } from \"foo\";\n// import { I[Arr, I]Bar } from \"foo\";\n// ->\n// import { [IArr, ]IBar } from \"foo\";\n// import { ITransaction, observableValue, transaction } from 'vs/base/common/observable';\n// import { ITransaction, observable[FromEvent, observable]Value, transaction } from 'vs/base/common/observable';\n// ->\n// import { ITransaction, [observableFromEvent, ]observableValue, transaction } from 'vs/base/common/observable';\n// collectBrackets(level + 1, levelPerBracketType);\n// collectBrackets(level + 1, levelPerBracket[ + 1, levelPerBracket]Type);\n// ->\n// collectBrackets(level + 1, [levelPerBracket + 1, ]levelPerBracketType);\nfunction shiftSequenceDiffs(sequence1, sequence2, sequenceDiffs) {\n if (!sequence1.getBoundaryScore || !sequence2.getBoundaryScore) {\n return sequenceDiffs;\n }\n for (let i = 0; i < sequenceDiffs.length; i++) {\n const prevDiff = (i > 0 ? sequenceDiffs[i - 1] : undefined);\n const diff = sequenceDiffs[i];\n const nextDiff = (i + 1 < sequenceDiffs.length ? sequenceDiffs[i + 1] : undefined);\n const seq1ValidRange = new _core_offsetRange_js__WEBPACK_IMPORTED_MODULE_1__.OffsetRange(prevDiff ? prevDiff.seq1Range.endExclusive + 1 : 0, nextDiff ? nextDiff.seq1Range.start - 1 : sequence1.length);\n const seq2ValidRange = new _core_offsetRange_js__WEBPACK_IMPORTED_MODULE_1__.OffsetRange(prevDiff ? prevDiff.seq2Range.endExclusive + 1 : 0, nextDiff ? nextDiff.seq2Range.start - 1 : sequence2.length);\n if (diff.seq1Range.isEmpty) {\n sequenceDiffs[i] = shiftDiffToBetterPosition(diff, sequence1, sequence2, seq1ValidRange, seq2ValidRange);\n }\n else if (diff.seq2Range.isEmpty) {\n sequenceDiffs[i] = shiftDiffToBetterPosition(diff.swap(), sequence2, sequence1, seq2ValidRange, seq1ValidRange).swap();\n }\n }\n return sequenceDiffs;\n}\nfunction shiftDiffToBetterPosition(diff, sequence1, sequence2, seq1ValidRange, seq2ValidRange) {\n const maxShiftLimit = 100; // To prevent performance issues\n // don't touch previous or next!\n let deltaBefore = 1;\n while (diff.seq1Range.start - deltaBefore >= seq1ValidRange.start &&\n diff.seq2Range.start - deltaBefore >= seq2ValidRange.start &&\n sequence2.isStronglyEqual(diff.seq2Range.start - deltaBefore, diff.seq2Range.endExclusive - deltaBefore) && deltaBefore < maxShiftLimit) {\n deltaBefore++;\n }\n deltaBefore--;\n let deltaAfter = 0;\n while (diff.seq1Range.start + deltaAfter < seq1ValidRange.endExclusive &&\n diff.seq2Range.endExclusive + deltaAfter < seq2ValidRange.endExclusive &&\n sequence2.isStronglyEqual(diff.seq2Range.start + deltaAfter, diff.seq2Range.endExclusive + deltaAfter) && deltaAfter < maxShiftLimit) {\n deltaAfter++;\n }\n if (deltaBefore === 0 && deltaAfter === 0) {\n return diff;\n }\n // Visualize `[sequence1.text, diff.seq1Range.start + deltaAfter]`\n // and `[sequence2.text, diff.seq2Range.start + deltaAfter, diff.seq2Range.endExclusive + deltaAfter]`\n let bestDelta = 0;\n let bestScore = -1;\n // find best scored delta\n for (let delta = -deltaBefore; delta <= deltaAfter; delta++) {\n const seq2OffsetStart = diff.seq2Range.start + delta;\n const seq2OffsetEndExclusive = diff.seq2Range.endExclusive + delta;\n const seq1Offset = diff.seq1Range.start + delta;\n const score = sequence1.getBoundaryScore(seq1Offset) + sequence2.getBoundaryScore(seq2OffsetStart) + sequence2.getBoundaryScore(seq2OffsetEndExclusive);\n if (score > bestScore) {\n bestScore = score;\n bestDelta = delta;\n }\n }\n return diff.delta(bestDelta);\n}\nfunction removeShortMatches(sequence1, sequence2, sequenceDiffs) {\n const result = [];\n for (const s of sequenceDiffs) {\n const last = result[result.length - 1];\n if (!last) {\n result.push(s);\n continue;\n }\n if (s.seq1Range.start - last.seq1Range.endExclusive <= 2 || s.seq2Range.start - last.seq2Range.endExclusive <= 2) {\n result[result.length - 1] = new _algorithms_diffAlgorithm_js__WEBPACK_IMPORTED_MODULE_2__.SequenceDiff(last.seq1Range.join(s.seq1Range), last.seq2Range.join(s.seq2Range));\n }\n else {\n result.push(s);\n }\n }\n return result;\n}\nfunction extendDiffsToEntireWordIfAppropriate(sequence1, sequence2, sequenceDiffs) {\n const equalMappings = _algorithms_diffAlgorithm_js__WEBPACK_IMPORTED_MODULE_2__.SequenceDiff.invert(sequenceDiffs, sequence1.length);\n const additional = [];\n let lastPoint = new _algorithms_diffAlgorithm_js__WEBPACK_IMPORTED_MODULE_2__.OffsetPair(0, 0);\n function scanWord(pair, equalMapping) {\n if (pair.offset1 < lastPoint.offset1 || pair.offset2 < lastPoint.offset2) {\n return;\n }\n const w1 = sequence1.findWordContaining(pair.offset1);\n const w2 = sequence2.findWordContaining(pair.offset2);\n if (!w1 || !w2) {\n return;\n }\n let w = new _algorithms_diffAlgorithm_js__WEBPACK_IMPORTED_MODULE_2__.SequenceDiff(w1, w2);\n const equalPart = w.intersect(equalMapping);\n let equalChars1 = equalPart.seq1Range.length;\n let equalChars2 = equalPart.seq2Range.length;\n // The words do not touch previous equals mappings, as we would have processed them already.\n // But they might touch the next ones.\n while (equalMappings.length > 0) {\n const next = equalMappings[0];\n const intersects = next.seq1Range.intersects(w1) || next.seq2Range.intersects(w2);\n if (!intersects) {\n break;\n }\n const v1 = sequence1.findWordContaining(next.seq1Range.start);\n const v2 = sequence2.findWordContaining(next.seq2Range.start);\n // Because there is an intersection, we know that the words are not empty.\n const v = new _algorithms_diffAlgorithm_js__WEBPACK_IMPORTED_MODULE_2__.SequenceDiff(v1, v2);\n const equalPart = v.intersect(next);\n equalChars1 += equalPart.seq1Range.length;\n equalChars2 += equalPart.seq2Range.length;\n w = w.join(v);\n if (w.seq1Range.endExclusive >= next.seq1Range.endExclusive) {\n // The word extends beyond the next equal mapping.\n equalMappings.shift();\n }\n else {\n break;\n }\n }\n if (equalChars1 + equalChars2 < (w.seq1Range.length + w.seq2Range.length) * 2 / 3) {\n additional.push(w);\n }\n lastPoint = w.getEndExclusives();\n }\n while (equalMappings.length > 0) {\n const next = equalMappings.shift();\n if (next.seq1Range.isEmpty) {\n continue;\n }\n scanWord(next.getStarts(), next);\n // The equal parts are not empty, so -1 gives us a character that is equal in both parts.\n scanWord(next.getEndExclusives().delta(-1), next);\n }\n const merged = mergeSequenceDiffs(sequenceDiffs, additional);\n return merged;\n}\nfunction mergeSequenceDiffs(sequenceDiffs1, sequenceDiffs2) {\n const result = [];\n while (sequenceDiffs1.length > 0 || sequenceDiffs2.length > 0) {\n const sd1 = sequenceDiffs1[0];\n const sd2 = sequenceDiffs2[0];\n let next;\n if (sd1 && (!sd2 || sd1.seq1Range.start < sd2.seq1Range.start)) {\n next = sequenceDiffs1.shift();\n }\n else {\n next = sequenceDiffs2.shift();\n }\n if (result.length > 0 && result[result.length - 1].seq1Range.endExclusive >= next.seq1Range.start) {\n result[result.length - 1] = result[result.length - 1].join(next);\n }\n else {\n result.push(next);\n }\n }\n return result;\n}\nfunction removeVeryShortMatchingLinesBetweenDiffs(sequence1, _sequence2, sequenceDiffs) {\n let diffs = sequenceDiffs;\n if (diffs.length === 0) {\n return diffs;\n }\n let counter = 0;\n let shouldRepeat;\n do {\n shouldRepeat = false;\n const result = [\n diffs[0]\n ];\n for (let i = 1; i < diffs.length; i++) {\n const cur = diffs[i];\n const lastResult = result[result.length - 1];\n function shouldJoinDiffs(before, after) {\n const unchangedRange = new _core_offsetRange_js__WEBPACK_IMPORTED_MODULE_1__.OffsetRange(lastResult.seq1Range.endExclusive, cur.seq1Range.start);\n const unchangedText = sequence1.getText(unchangedRange);\n const unchangedTextWithoutWs = unchangedText.replace(/\\s/g, '');\n if (unchangedTextWithoutWs.length <= 4\n && (before.seq1Range.length + before.seq2Range.length > 5 || after.seq1Range.length + after.seq2Range.length > 5)) {\n return true;\n }\n return false;\n }\n const shouldJoin = shouldJoinDiffs(lastResult, cur);\n if (shouldJoin) {\n shouldRepeat = true;\n result[result.length - 1] = result[result.length - 1].join(cur);\n }\n else {\n result.push(cur);\n }\n }\n diffs = result;\n } while (counter++ < 10 && shouldRepeat);\n return diffs;\n}\nfunction removeVeryShortMatchingTextBetweenLongDiffs(sequence1, sequence2, sequenceDiffs) {\n let diffs = sequenceDiffs;\n if (diffs.length === 0) {\n return diffs;\n }\n let counter = 0;\n let shouldRepeat;\n do {\n shouldRepeat = false;\n const result = [\n diffs[0]\n ];\n for (let i = 1; i < diffs.length; i++) {\n const cur = diffs[i];\n const lastResult = result[result.length - 1];\n function shouldJoinDiffs(before, after) {\n const unchangedRange = new _core_offsetRange_js__WEBPACK_IMPORTED_MODULE_1__.OffsetRange(lastResult.seq1Range.endExclusive, cur.seq1Range.start);\n const unchangedLineCount = sequence1.countLinesIn(unchangedRange);\n if (unchangedLineCount > 5 || unchangedRange.length > 500) {\n return false;\n }\n const unchangedText = sequence1.getText(unchangedRange).trim();\n if (unchangedText.length > 20 || unchangedText.split(/\\r\\n|\\r|\\n/).length > 1) {\n return false;\n }\n const beforeLineCount1 = sequence1.countLinesIn(before.seq1Range);\n const beforeSeq1Length = before.seq1Range.length;\n const beforeLineCount2 = sequence2.countLinesIn(before.seq2Range);\n const beforeSeq2Length = before.seq2Range.length;\n const afterLineCount1 = sequence1.countLinesIn(after.seq1Range);\n const afterSeq1Length = after.seq1Range.length;\n const afterLineCount2 = sequence2.countLinesIn(after.seq2Range);\n const afterSeq2Length = after.seq2Range.length;\n // TODO: Maybe a neural net can be used to derive the result from these numbers\n const max = 2 * 40 + 50;\n function cap(v) {\n return Math.min(v, max);\n }\n if (Math.pow(Math.pow(cap(beforeLineCount1 * 40 + beforeSeq1Length), 1.5) + Math.pow(cap(beforeLineCount2 * 40 + beforeSeq2Length), 1.5), 1.5)\n + Math.pow(Math.pow(cap(afterLineCount1 * 40 + afterSeq1Length), 1.5) + Math.pow(cap(afterLineCount2 * 40 + afterSeq2Length), 1.5), 1.5) > ((max ** 1.5) ** 1.5) * 1.3) {\n return true;\n }\n return false;\n }\n const shouldJoin = shouldJoinDiffs(lastResult, cur);\n if (shouldJoin) {\n shouldRepeat = true;\n result[result.length - 1] = result[result.length - 1].join(cur);\n }\n else {\n result.push(cur);\n }\n }\n diffs = result;\n } while (counter++ < 10 && shouldRepeat);\n const newDiffs = [];\n // Remove short suffixes/prefixes\n (0,_base_common_arrays_js__WEBPACK_IMPORTED_MODULE_0__.forEachWithNeighbors)(diffs, (prev, cur, next) => {\n let newDiff = cur;\n function shouldMarkAsChanged(text) {\n return text.length > 0 && text.trim().length <= 3 && cur.seq1Range.length + cur.seq2Range.length > 100;\n }\n const fullRange1 = sequence1.extendToFullLines(cur.seq1Range);\n const prefix = sequence1.getText(new _core_offsetRange_js__WEBPACK_IMPORTED_MODULE_1__.OffsetRange(fullRange1.start, cur.seq1Range.start));\n if (shouldMarkAsChanged(prefix)) {\n newDiff = newDiff.deltaStart(-prefix.length);\n }\n const suffix = sequence1.getText(new _core_offsetRange_js__WEBPACK_IMPORTED_MODULE_1__.OffsetRange(cur.seq1Range.endExclusive, fullRange1.endExclusive));\n if (shouldMarkAsChanged(suffix)) {\n newDiff = newDiff.deltaEnd(suffix.length);\n }\n const availableSpace = _algorithms_diffAlgorithm_js__WEBPACK_IMPORTED_MODULE_2__.SequenceDiff.fromOffsetPairs(prev ? prev.getEndExclusives() : _algorithms_diffAlgorithm_js__WEBPACK_IMPORTED_MODULE_2__.OffsetPair.zero, next ? next.getStarts() : _algorithms_diffAlgorithm_js__WEBPACK_IMPORTED_MODULE_2__.OffsetPair.max);\n const result = newDiff.intersect(availableSpace);\n if (newDiffs.length > 0 && result.getStarts().equals(newDiffs[newDiffs.length - 1].getEndExclusives())) {\n newDiffs[newDiffs.length - 1] = newDiffs[newDiffs.length - 1].join(result);\n }\n else {\n newDiffs.push(result);\n }\n });\n return newDiffs;\n}\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/common/diff/defaultLinesDiffComputer/heuristicSequenceOptimizations.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/common/diff/defaultLinesDiffComputer/lineSequence.js":
/*!*******************************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/common/diff/defaultLinesDiffComputer/lineSequence.js ***!
\*******************************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ LineSequence: () => (/* binding */ LineSequence)\n/* harmony export */ });\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\nclass LineSequence {\n constructor(trimmedHash, lines) {\n this.trimmedHash = trimmedHash;\n this.lines = lines;\n }\n getElement(offset) {\n return this.trimmedHash[offset];\n }\n get length() {\n return this.trimmedHash.length;\n }\n getBoundaryScore(length) {\n const indentationBefore = length === 0 ? 0 : getIndentation(this.lines[length - 1]);\n const indentationAfter = length === this.lines.length ? 0 : getIndentation(this.lines[length]);\n return 1000 - (indentationBefore + indentationAfter);\n }\n getText(range) {\n return this.lines.slice(range.start, range.endExclusive).join('\\n');\n }\n isStronglyEqual(offset1, offset2) {\n return this.lines[offset1] === this.lines[offset2];\n }\n}\nfunction getIndentation(str) {\n let i = 0;\n while (i < str.length && (str.charCodeAt(i) === 32 /* CharCode.Space */ || str.charCodeAt(i) === 9 /* CharCode.Tab */)) {\n i++;\n }\n return i;\n}\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/common/diff/defaultLinesDiffComputer/lineSequence.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/common/diff/defaultLinesDiffComputer/linesSliceCharSequence.js":
/*!*****************************************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/common/diff/defaultLinesDiffComputer/linesSliceCharSequence.js ***!
\*****************************************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ LinesSliceCharSequence: () => (/* binding */ LinesSliceCharSequence)\n/* harmony export */ });\n/* harmony import */ var _base_common_arraysFind_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../../base/common/arraysFind.js */ \"./node_modules/monaco-editor/esm/vs/base/common/arraysFind.js\");\n/* harmony import */ var _core_offsetRange_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../core/offsetRange.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/core/offsetRange.js\");\n/* harmony import */ var _core_position_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../core/position.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/core/position.js\");\n/* harmony import */ var _core_range_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../core/range.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/core/range.js\");\n/* harmony import */ var _utils_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./utils.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/diff/defaultLinesDiffComputer/utils.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n\n\n\n\nclass LinesSliceCharSequence {\n constructor(lines, lineRange, considerWhitespaceChanges) {\n // This slice has to have lineRange.length many \\n! (otherwise diffing against an empty slice will be problematic)\n // (Unless it covers the entire document, in that case the other slice also has to cover the entire document ands it's okay)\n this.lines = lines;\n this.considerWhitespaceChanges = considerWhitespaceChanges;\n this.elements = [];\n this.firstCharOffsetByLine = [];\n // To account for trimming\n this.additionalOffsetByLine = [];\n // If the slice covers the end, but does not start at the beginning, we include just the \\n of the previous line.\n let trimFirstLineFully = false;\n if (lineRange.start > 0 && lineRange.endExclusive >= lines.length) {\n lineRange = new _core_offsetRange_js__WEBPACK_IMPORTED_MODULE_1__.OffsetRange(lineRange.start - 1, lineRange.endExclusive);\n trimFirstLineFully = true;\n }\n this.lineRange = lineRange;\n this.firstCharOffsetByLine[0] = 0;\n for (let i = this.lineRange.start; i < this.lineRange.endExclusive; i++) {\n let line = lines[i];\n let offset = 0;\n if (trimFirstLineFully) {\n offset = line.length;\n line = '';\n trimFirstLineFully = false;\n }\n else if (!considerWhitespaceChanges) {\n const trimmedStartLine = line.trimStart();\n offset = line.length - trimmedStartLine.length;\n line = trimmedStartLine.trimEnd();\n }\n this.additionalOffsetByLine.push(offset);\n for (let i = 0; i < line.length; i++) {\n this.elements.push(line.charCodeAt(i));\n }\n // Don't add an \\n that does not exist in the document.\n if (i < lines.length - 1) {\n this.elements.push('\\n'.charCodeAt(0));\n this.firstCharOffsetByLine[i - this.lineRange.start + 1] = this.elements.length;\n }\n }\n // To account for the last line\n this.additionalOffsetByLine.push(0);\n }\n toString() {\n return `Slice: \"${this.text}\"`;\n }\n get text() {\n return this.getText(new _core_offsetRange_js__WEBPACK_IMPORTED_MODULE_1__.OffsetRange(0, this.length));\n }\n getText(range) {\n return this.elements.slice(range.start, range.endExclusive).map(e => String.fromCharCode(e)).join('');\n }\n getElement(offset) {\n return this.elements[offset];\n }\n get length() {\n return this.elements.length;\n }\n getBoundaryScore(length) {\n // a b c , d e f\n // 11 0 0 12 15 6 13 0 0 11\n const prevCategory = getCategory(length > 0 ? this.elements[length - 1] : -1);\n const nextCategory = getCategory(length < this.elements.length ? this.elements[length] : -1);\n if (prevCategory === 7 /* CharBoundaryCategory.LineBreakCR */ && nextCategory === 8 /* CharBoundaryCategory.LineBreakLF */) {\n // don't break between \\r and \\n\n return 0;\n }\n if (prevCategory === 8 /* CharBoundaryCategory.LineBreakLF */) {\n // prefer the linebreak before the change\n return 150;\n }\n let score = 0;\n if (prevCategory !== nextCategory) {\n score += 10;\n if (prevCategory === 0 /* CharBoundaryCategory.WordLower */ && nextCategory === 1 /* CharBoundaryCategory.WordUpper */) {\n score += 1;\n }\n }\n score += getCategoryBoundaryScore(prevCategory);\n score += getCategoryBoundaryScore(nextCategory);\n return score;\n }\n translateOffset(offset) {\n // find smallest i, so that lineBreakOffsets[i] <= offset using binary search\n if (this.lineRange.isEmpty) {\n return new _core_position_js__WEBPACK_IMPORTED_MODULE_2__.Position(this.lineRange.start + 1, 1);\n }\n const i = (0,_base_common_arraysFind_js__WEBPACK_IMPORTED_MODULE_0__.findLastIdxMonotonous)(this.firstCharOffsetByLine, (value) => value <= offset);\n return new _core_position_js__WEBPACK_IMPORTED_MODULE_2__.Position(this.lineRange.start + i + 1, offset - this.firstCharOffsetByLine[i] + this.additionalOffsetByLine[i] + 1);\n }\n translateRange(range) {\n return _core_range_js__WEBPACK_IMPORTED_MODULE_3__.Range.fromPositions(this.translateOffset(range.start), this.translateOffset(range.endExclusive));\n }\n /**\n * Finds the word that contains the character at the given offset\n */\n findWordContaining(offset) {\n if (offset < 0 || offset >= this.elements.length) {\n return undefined;\n }\n if (!isWordChar(this.elements[offset])) {\n return undefined;\n }\n // find start\n let start = offset;\n while (start > 0 && isWordChar(this.elements[start - 1])) {\n start--;\n }\n // find end\n let end = offset;\n while (end < this.elements.length && isWordChar(this.elements[end])) {\n end++;\n }\n return new _core_offsetRange_js__WEBPACK_IMPORTED_MODULE_1__.OffsetRange(start, end);\n }\n countLinesIn(range) {\n return this.translateOffset(range.endExclusive).lineNumber - this.translateOffset(range.start).lineNumber;\n }\n isStronglyEqual(offset1, offset2) {\n return this.elements[offset1] === this.elements[offset2];\n }\n extendToFullLines(range) {\n var _a, _b;\n const start = (_a = (0,_base_common_arraysFind_js__WEBPACK_IMPORTED_MODULE_0__.findLastMonotonous)(this.firstCharOffsetByLine, x => x <= range.start)) !== null && _a !== void 0 ? _a : 0;\n const end = (_b = (0,_base_common_arraysFind_js__WEBPACK_IMPORTED_MODULE_0__.findFirstMonotonous)(this.firstCharOffsetByLine, x => range.endExclusive <= x)) !== null && _b !== void 0 ? _b : this.elements.length;\n return new _core_offsetRange_js__WEBPACK_IMPORTED_MODULE_1__.OffsetRange(start, end);\n }\n}\nfunction isWordChar(charCode) {\n return charCode >= 97 /* CharCode.a */ && charCode <= 122 /* CharCode.z */\n || charCode >= 65 /* CharCode.A */ && charCode <= 90 /* CharCode.Z */\n || charCode >= 48 /* CharCode.Digit0 */ && charCode <= 57 /* CharCode.Digit9 */;\n}\nconst score = {\n [0 /* CharBoundaryCategory.WordLower */]: 0,\n [1 /* CharBoundaryCategory.WordUpper */]: 0,\n [2 /* CharBoundaryCategory.WordNumber */]: 0,\n [3 /* CharBoundaryCategory.End */]: 10,\n [4 /* CharBoundaryCategory.Other */]: 2,\n [5 /* CharBoundaryCategory.Separator */]: 30,\n [6 /* CharBoundaryCategory.Space */]: 3,\n [7 /* CharBoundaryCategory.LineBreakCR */]: 10,\n [8 /* CharBoundaryCategory.LineBreakLF */]: 10,\n};\nfunction getCategoryBoundaryScore(category) {\n return score[category];\n}\nfunction getCategory(charCode) {\n if (charCode === 10 /* CharCode.LineFeed */) {\n return 8 /* CharBoundaryCategory.LineBreakLF */;\n }\n else if (charCode === 13 /* CharCode.CarriageReturn */) {\n return 7 /* CharBoundaryCategory.LineBreakCR */;\n }\n else if ((0,_utils_js__WEBPACK_IMPORTED_MODULE_4__.isSpace)(charCode)) {\n return 6 /* CharBoundaryCategory.Space */;\n }\n else if (charCode >= 97 /* CharCode.a */ && charCode <= 122 /* CharCode.z */) {\n return 0 /* CharBoundaryCategory.WordLower */;\n }\n else if (charCode >= 65 /* CharCode.A */ && charCode <= 90 /* CharCode.Z */) {\n return 1 /* CharBoundaryCategory.WordUpper */;\n }\n else if (charCode >= 48 /* CharCode.Digit0 */ && charCode <= 57 /* CharCode.Digit9 */) {\n return 2 /* CharBoundaryCategory.WordNumber */;\n }\n else if (charCode === -1) {\n return 3 /* CharBoundaryCategory.End */;\n }\n else if (charCode === 44 /* CharCode.Comma */ || charCode === 59 /* CharCode.Semicolon */) {\n return 5 /* CharBoundaryCategory.Separator */;\n }\n else {\n return 4 /* CharBoundaryCategory.Other */;\n }\n}\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/common/diff/defaultLinesDiffComputer/linesSliceCharSequence.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/common/diff/defaultLinesDiffComputer/utils.js":
/*!************************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/common/diff/defaultLinesDiffComputer/utils.js ***!
\************************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ Array2D: () => (/* binding */ Array2D),\n/* harmony export */ LineRangeFragment: () => (/* binding */ LineRangeFragment),\n/* harmony export */ isSpace: () => (/* binding */ isSpace)\n/* harmony export */ });\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\nclass Array2D {\n constructor(width, height) {\n this.width = width;\n this.height = height;\n this.array = [];\n this.array = new Array(width * height);\n }\n get(x, y) {\n return this.array[x + y * this.width];\n }\n set(x, y, value) {\n this.array[x + y * this.width] = value;\n }\n}\nfunction isSpace(charCode) {\n return charCode === 32 /* CharCode.Space */ || charCode === 9 /* CharCode.Tab */;\n}\nclass LineRangeFragment {\n static getKey(chr) {\n let key = this.chrKeys.get(chr);\n if (key === undefined) {\n key = this.chrKeys.size;\n this.chrKeys.set(chr, key);\n }\n return key;\n }\n constructor(range, lines, source) {\n this.range = range;\n this.lines = lines;\n this.source = source;\n this.histogram = [];\n let counter = 0;\n for (let i = range.startLineNumber - 1; i < range.endLineNumberExclusive - 1; i++) {\n const line = lines[i];\n for (let j = 0; j < line.length; j++) {\n counter++;\n const chr = line[j];\n const key = LineRangeFragment.getKey(chr);\n this.histogram[key] = (this.histogram[key] || 0) + 1;\n }\n counter++;\n const key = LineRangeFragment.getKey('\\n');\n this.histogram[key] = (this.histogram[key] || 0) + 1;\n }\n this.totalCount = counter;\n }\n computeSimilarity(other) {\n var _a, _b;\n let sumDifferences = 0;\n const maxLength = Math.max(this.histogram.length, other.histogram.length);\n for (let i = 0; i < maxLength; i++) {\n sumDifferences += Math.abs(((_a = this.histogram[i]) !== null && _a !== void 0 ? _a : 0) - ((_b = other.histogram[i]) !== null && _b !== void 0 ? _b : 0));\n }\n return 1 - (sumDifferences / (this.totalCount + other.totalCount));\n }\n}\nLineRangeFragment.chrKeys = new Map();\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/common/diff/defaultLinesDiffComputer/utils.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/common/diff/legacyLinesDiffComputer.js":
/*!*****************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/common/diff/legacyLinesDiffComputer.js ***!
\*****************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ DiffComputer: () => (/* binding */ DiffComputer),\n/* harmony export */ LegacyLinesDiffComputer: () => (/* binding */ LegacyLinesDiffComputer)\n/* harmony export */ });\n/* harmony import */ var _base_common_diff_diff_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../base/common/diff/diff.js */ \"./node_modules/monaco-editor/esm/vs/base/common/diff/diff.js\");\n/* harmony import */ var _linesDiffComputer_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./linesDiffComputer.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/diff/linesDiffComputer.js\");\n/* harmony import */ var _rangeMapping_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./rangeMapping.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/diff/rangeMapping.js\");\n/* harmony import */ var _base_common_strings_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../../base/common/strings.js */ \"./node_modules/monaco-editor/esm/vs/base/common/strings.js\");\n/* harmony import */ var _core_range_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../core/range.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/core/range.js\");\n/* harmony import */ var _base_common_assert_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../../../base/common/assert.js */ \"./node_modules/monaco-editor/esm/vs/base/common/assert.js\");\n/* harmony import */ var _core_lineRange_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../core/lineRange.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/core/lineRange.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n\n\n\n\n\n\nconst MINIMUM_MATCHING_CHARACTER_LENGTH = 3;\nclass LegacyLinesDiffComputer {\n computeDiff(originalLines, modifiedLines, options) {\n var _a;\n const diffComputer = new DiffComputer(originalLines, modifiedLines, {\n maxComputationTime: options.maxComputationTimeMs,\n shouldIgnoreTrimWhitespace: options.ignoreTrimWhitespace,\n shouldComputeCharChanges: true,\n shouldMakePrettyDiff: true,\n shouldPostProcessCharChanges: true,\n });\n const result = diffComputer.computeDiff();\n const changes = [];\n let lastChange = null;\n for (const c of result.changes) {\n let originalRange;\n if (c.originalEndLineNumber === 0) {\n // Insertion\n originalRange = new _core_lineRange_js__WEBPACK_IMPORTED_MODULE_6__.LineRange(c.originalStartLineNumber + 1, c.originalStartLineNumber + 1);\n }\n else {\n originalRange = new _core_lineRange_js__WEBPACK_IMPORTED_MODULE_6__.LineRange(c.originalStartLineNumber, c.originalEndLineNumber + 1);\n }\n let modifiedRange;\n if (c.modifiedEndLineNumber === 0) {\n // Deletion\n modifiedRange = new _core_lineRange_js__WEBPACK_IMPORTED_MODULE_6__.LineRange(c.modifiedStartLineNumber + 1, c.modifiedStartLineNumber + 1);\n }\n else {\n modifiedRange = new _core_lineRange_js__WEBPACK_IMPORTED_MODULE_6__.LineRange(c.modifiedStartLineNumber, c.modifiedEndLineNumber + 1);\n }\n let change = new _rangeMapping_js__WEBPACK_IMPORTED_MODULE_2__.DetailedLineRangeMapping(originalRange, modifiedRange, (_a = c.charChanges) === null || _a === void 0 ? void 0 : _a.map(c => new _rangeMapping_js__WEBPACK_IMPORTED_MODULE_2__.RangeMapping(new _core_range_js__WEBPACK_IMPORTED_MODULE_4__.Range(c.originalStartLineNumber, c.originalStartColumn, c.originalEndLineNumber, c.originalEndColumn), new _core_range_js__WEBPACK_IMPORTED_MODULE_4__.Range(c.modifiedStartLineNumber, c.modifiedStartColumn, c.modifiedEndLineNumber, c.modifiedEndColumn))));\n if (lastChange) {\n if (lastChange.modified.endLineNumberExclusive === change.modified.startLineNumber\n || lastChange.original.endLineNumberExclusive === change.original.startLineNumber) {\n // join touching diffs. Probably moving diffs up/down in the algorithm causes touching diffs.\n change = new _rangeMapping_js__WEBPACK_IMPORTED_MODULE_2__.DetailedLineRangeMapping(lastChange.original.join(change.original), lastChange.modified.join(change.modified), lastChange.innerChanges && change.innerChanges ?\n lastChange.innerChanges.concat(change.innerChanges) : undefined);\n changes.pop();\n }\n }\n changes.push(change);\n lastChange = change;\n }\n (0,_base_common_assert_js__WEBPACK_IMPORTED_MODULE_5__.assertFn)(() => {\n return (0,_base_common_assert_js__WEBPACK_IMPORTED_MODULE_5__.checkAdjacentItems)(changes, (m1, m2) => m2.original.startLineNumber - m1.original.endLineNumberExclusive === m2.modified.startLineNumber - m1.modified.endLineNumberExclusive &&\n // There has to be an unchanged line in between (otherwise both diffs should have been joined)\n m1.original.endLineNumberExclusive < m2.original.startLineNumber &&\n m1.modified.endLineNumberExclusive < m2.modified.startLineNumber);\n });\n return new _linesDiffComputer_js__WEBPACK_IMPORTED_MODULE_1__.LinesDiff(changes, [], result.quitEarly);\n }\n}\nfunction computeDiff(originalSequence, modifiedSequence, continueProcessingPredicate, pretty) {\n const diffAlgo = new _base_common_diff_diff_js__WEBPACK_IMPORTED_MODULE_0__.LcsDiff(originalSequence, modifiedSequence, continueProcessingPredicate);\n return diffAlgo.ComputeDiff(pretty);\n}\nclass LineSequence {\n constructor(lines) {\n const startColumns = [];\n const endColumns = [];\n for (let i = 0, length = lines.length; i < length; i++) {\n startColumns[i] = getFirstNonBlankColumn(lines[i], 1);\n endColumns[i] = getLastNonBlankColumn(lines[i], 1);\n }\n this.lines = lines;\n this._startColumns = startColumns;\n this._endColumns = endColumns;\n }\n getElements() {\n const elements = [];\n for (let i = 0, len = this.lines.length; i < len; i++) {\n elements[i] = this.lines[i].substring(this._startColumns[i] - 1, this._endColumns[i] - 1);\n }\n return elements;\n }\n getStrictElement(index) {\n return this.lines[index];\n }\n getStartLineNumber(i) {\n return i + 1;\n }\n getEndLineNumber(i) {\n return i + 1;\n }\n createCharSequence(shouldIgnoreTrimWhitespace, startIndex, endIndex) {\n const charCodes = [];\n const lineNumbers = [];\n const columns = [];\n let len = 0;\n for (let index = startIndex; index <= endIndex; index++) {\n const lineContent = this.lines[index];\n const startColumn = (shouldIgnoreTrimWhitespace ? this._startColumns[index] : 1);\n const endColumn = (shouldIgnoreTrimWhitespace ? this._endColumns[index] : lineContent.length + 1);\n for (let col = startColumn; col < endColumn; col++) {\n charCodes[len] = lineContent.charCodeAt(col - 1);\n lineNumbers[len] = index + 1;\n columns[len] = col;\n len++;\n }\n if (!shouldIgnoreTrimWhitespace && index < endIndex) {\n // Add \\n if trim whitespace is not ignored\n charCodes[len] = 10 /* CharCode.LineFeed */;\n lineNumbers[len] = index + 1;\n columns[len] = lineContent.length + 1;\n len++;\n }\n }\n return new CharSequence(charCodes, lineNumbers, columns);\n }\n}\nclass CharSequence {\n constructor(charCodes, lineNumbers, columns) {\n this._charCodes = charCodes;\n this._lineNumbers = lineNumbers;\n this._columns = columns;\n }\n toString() {\n return ('[' + this._charCodes.map((s, idx) => (s === 10 /* CharCode.LineFeed */ ? '\\\\n' : String.fromCharCode(s)) + `-(${this._lineNumbers[idx]},${this._columns[idx]})`).join(', ') + ']');\n }\n _assertIndex(index, arr) {\n if (index < 0 || index >= arr.length) {\n throw new Error(`Illegal index`);\n }\n }\n getElements() {\n return this._charCodes;\n }\n getStartLineNumber(i) {\n if (i > 0 && i === this._lineNumbers.length) {\n // the start line number of the element after the last element\n // is the end line number of the last element\n return this.getEndLineNumber(i - 1);\n }\n this._assertIndex(i, this._lineNumbers);\n return this._lineNumbers[i];\n }\n getEndLineNumber(i) {\n if (i === -1) {\n // the end line number of the element before the first element\n // is the start line number of the first element\n return this.getStartLineNumber(i + 1);\n }\n this._assertIndex(i, this._lineNumbers);\n if (this._charCodes[i] === 10 /* CharCode.LineFeed */) {\n return this._lineNumbers[i] + 1;\n }\n return this._lineNumbers[i];\n }\n getStartColumn(i) {\n if (i > 0 && i === this._columns.length) {\n // the start column of the element after the last element\n // is the end column of the last element\n return this.getEndColumn(i - 1);\n }\n this._assertIndex(i, this._columns);\n return this._columns[i];\n }\n getEndColumn(i) {\n if (i === -1) {\n // the end column of the element before the first element\n // is the start column of the first element\n return this.getStartColumn(i + 1);\n }\n this._assertIndex(i, this._columns);\n if (this._charCodes[i] === 10 /* CharCode.LineFeed */) {\n return 1;\n }\n return this._columns[i] + 1;\n }\n}\nclass CharChange {\n constructor(originalStartLineNumber, originalStartColumn, originalEndLineNumber, originalEndColumn, modifiedStartLineNumber, modifiedStartColumn, modifiedEndLineNumber, modifiedEndColumn) {\n this.originalStartLineNumber = originalStartLineNumber;\n this.originalStartColumn = originalStartColumn;\n this.originalEndLineNumber = originalEndLineNumber;\n this.originalEndColumn = originalEndColumn;\n this.modifiedStartLineNumber = modifiedStartLineNumber;\n this.modifiedStartColumn = modifiedStartColumn;\n this.modifiedEndLineNumber = modifiedEndLineNumber;\n this.modifiedEndColumn = modifiedEndColumn;\n }\n static createFromDiffChange(diffChange, originalCharSequence, modifiedCharSequence) {\n const originalStartLineNumber = originalCharSequence.getStartLineNumber(diffChange.originalStart);\n const originalStartColumn = originalCharSequence.getStartColumn(diffChange.originalStart);\n const originalEndLineNumber = originalCharSequence.getEndLineNumber(diffChange.originalStart + diffChange.originalLength - 1);\n const originalEndColumn = originalCharSequence.getEndColumn(diffChange.originalStart + diffChange.originalLength - 1);\n const modifiedStartLineNumber = modifiedCharSequence.getStartLineNumber(diffChange.modifiedStart);\n const modifiedStartColumn = modifiedCharSequence.getStartColumn(diffChange.modifiedStart);\n const modifiedEndLineNumber = modifiedCharSequence.getEndLineNumber(diffChange.modifiedStart + diffChange.modifiedLength - 1);\n const modifiedEndColumn = modifiedCharSequence.getEndColumn(diffChange.modifiedStart + diffChange.modifiedLength - 1);\n return new CharChange(originalStartLineNumber, originalStartColumn, originalEndLineNumber, originalEndColumn, modifiedStartLineNumber, modifiedStartColumn, modifiedEndLineNumber, modifiedEndColumn);\n }\n}\nfunction postProcessCharChanges(rawChanges) {\n if (rawChanges.length <= 1) {\n return rawChanges;\n }\n const result = [rawChanges[0]];\n let prevChange = result[0];\n for (let i = 1, len = rawChanges.length; i < len; i++) {\n const currChange = rawChanges[i];\n const originalMatchingLength = currChange.originalStart - (prevChange.originalStart + prevChange.originalLength);\n const modifiedMatchingLength = currChange.modifiedStart - (prevChange.modifiedStart + prevChange.modifiedLength);\n // Both of the above should be equal, but the continueProcessingPredicate may prevent this from being true\n const matchingLength = Math.min(originalMatchingLength, modifiedMatchingLength);\n if (matchingLength < MINIMUM_MATCHING_CHARACTER_LENGTH) {\n // Merge the current change into the previous one\n prevChange.originalLength = (currChange.originalStart + currChange.originalLength) - prevChange.originalStart;\n prevChange.modifiedLength = (currChange.modifiedStart + currChange.modifiedLength) - prevChange.modifiedStart;\n }\n else {\n // Add the current change\n result.push(currChange);\n prevChange = currChange;\n }\n }\n return result;\n}\nclass LineChange {\n constructor(originalStartLineNumber, originalEndLineNumber, modifiedStartLineNumber, modifiedEndLineNumber, charChanges) {\n this.originalStartLineNumber = originalStartLineNumber;\n this.originalEndLineNumber = originalEndLineNumber;\n this.modifiedStartLineNumber = modifiedStartLineNumber;\n this.modifiedEndLineNumber = modifiedEndLineNumber;\n this.charChanges = charChanges;\n }\n static createFromDiffResult(shouldIgnoreTrimWhitespace, diffChange, originalLineSequence, modifiedLineSequence, continueCharDiff, shouldComputeCharChanges, shouldPostProcessCharChanges) {\n let originalStartLineNumber;\n let originalEndLineNumber;\n let modifiedStartLineNumber;\n let modifiedEndLineNumber;\n let charChanges = undefined;\n if (diffChange.originalLength === 0) {\n originalStartLineNumber = originalLineSequence.getStartLineNumber(diffChange.originalStart) - 1;\n originalEndLineNumber = 0;\n }\n else {\n originalStartLineNumber = originalLineSequence.getStartLineNumber(diffChange.originalStart);\n originalEndLineNumber = originalLineSequence.getEndLineNumber(diffChange.originalStart + diffChange.originalLength - 1);\n }\n if (diffChange.modifiedLength === 0) {\n modifiedStartLineNumber = modifiedLineSequence.getStartLineNumber(diffChange.modifiedStart) - 1;\n modifiedEndLineNumber = 0;\n }\n else {\n modifiedStartLineNumber = modifiedLineSequence.getStartLineNumber(diffChange.modifiedStart);\n modifiedEndLineNumber = modifiedLineSequence.getEndLineNumber(diffChange.modifiedStart + diffChange.modifiedLength - 1);\n }\n if (shouldComputeCharChanges && diffChange.originalLength > 0 && diffChange.originalLength < 20 && diffChange.modifiedLength > 0 && diffChange.modifiedLength < 20 && continueCharDiff()) {\n // Compute character changes for diff chunks of at most 20 lines...\n const originalCharSequence = originalLineSequence.createCharSequence(shouldIgnoreTrimWhitespace, diffChange.originalStart, diffChange.originalStart + diffChange.originalLength - 1);\n const modifiedCharSequence = modifiedLineSequence.createCharSequence(shouldIgnoreTrimWhitespace, diffChange.modifiedStart, diffChange.modifiedStart + diffChange.modifiedLength - 1);\n if (originalCharSequence.getElements().length > 0 && modifiedCharSequence.getElements().length > 0) {\n let rawChanges = computeDiff(originalCharSequence, modifiedCharSequence, continueCharDiff, true).changes;\n if (shouldPostProcessCharChanges) {\n rawChanges = postProcessCharChanges(rawChanges);\n }\n charChanges = [];\n for (let i = 0, length = rawChanges.length; i < length; i++) {\n charChanges.push(CharChange.createFromDiffChange(rawChanges[i], originalCharSequence, modifiedCharSequence));\n }\n }\n }\n return new LineChange(originalStartLineNumber, originalEndLineNumber, modifiedStartLineNumber, modifiedEndLineNumber, charChanges);\n }\n}\nclass DiffComputer {\n constructor(originalLines, modifiedLines, opts) {\n this.shouldComputeCharChanges = opts.shouldComputeCharChanges;\n this.shouldPostProcessCharChanges = opts.shouldPostProcessCharChanges;\n this.shouldIgnoreTrimWhitespace = opts.shouldIgnoreTrimWhitespace;\n this.shouldMakePrettyDiff = opts.shouldMakePrettyDiff;\n this.originalLines = originalLines;\n this.modifiedLines = modifiedLines;\n this.original = new LineSequence(originalLines);\n this.modified = new LineSequence(modifiedLines);\n this.continueLineDiff = createContinueProcessingPredicate(opts.maxComputationTime);\n this.continueCharDiff = createContinueProcessingPredicate(opts.maxComputationTime === 0 ? 0 : Math.min(opts.maxComputationTime, 5000)); // never run after 5s for character changes...\n }\n computeDiff() {\n if (this.original.lines.length === 1 && this.original.lines[0].length === 0) {\n // empty original => fast path\n if (this.modified.lines.length === 1 && this.modified.lines[0].length === 0) {\n return {\n quitEarly: false,\n changes: []\n };\n }\n return {\n quitEarly: false,\n changes: [{\n originalStartLineNumber: 1,\n originalEndLineNumber: 1,\n modifiedStartLineNumber: 1,\n modifiedEndLineNumber: this.modified.lines.length,\n charChanges: undefined\n }]\n };\n }\n if (this.modified.lines.length === 1 && this.modified.lines[0].length === 0) {\n // empty modified => fast path\n return {\n quitEarly: false,\n changes: [{\n originalStartLineNumber: 1,\n originalEndLineNumber: this.original.lines.length,\n modifiedStartLineNumber: 1,\n modifiedEndLineNumber: 1,\n charChanges: undefined\n }]\n };\n }\n const diffResult = computeDiff(this.original, this.modified, this.continueLineDiff, this.shouldMakePrettyDiff);\n const rawChanges = diffResult.changes;\n const quitEarly = diffResult.quitEarly;\n // The diff is always computed with ignoring trim whitespace\n // This ensures we get the prettiest diff\n if (this.shouldIgnoreTrimWhitespace) {\n const lineChanges = [];\n for (let i = 0, length = rawChanges.length; i < length; i++) {\n lineChanges.push(LineChange.createFromDiffResult(this.shouldIgnoreTrimWhitespace, rawChanges[i], this.original, this.modified, this.continueCharDiff, this.shouldComputeCharChanges, this.shouldPostProcessCharChanges));\n }\n return {\n quitEarly: quitEarly,\n changes: lineChanges\n };\n }\n // Need to post-process and introduce changes where the trim whitespace is different\n // Note that we are looping starting at -1 to also cover the lines before the first change\n const result = [];\n let originalLineIndex = 0;\n let modifiedLineIndex = 0;\n for (let i = -1 /* !!!! */, len = rawChanges.length; i < len; i++) {\n const nextChange = (i + 1 < len ? rawChanges[i + 1] : null);\n const originalStop = (nextChange ? nextChange.originalStart : this.originalLines.length);\n const modifiedStop = (nextChange ? nextChange.modifiedStart : this.modifiedLines.length);\n while (originalLineIndex < originalStop && modifiedLineIndex < modifiedStop) {\n const originalLine = this.originalLines[originalLineIndex];\n const modifiedLine = this.modifiedLines[modifiedLineIndex];\n if (originalLine !== modifiedLine) {\n // These lines differ only in trim whitespace\n // Check the leading whitespace\n {\n let originalStartColumn = getFirstNonBlankColumn(originalLine, 1);\n let modifiedStartColumn = getFirstNonBlankColumn(modifiedLine, 1);\n while (originalStartColumn > 1 && modifiedStartColumn > 1) {\n const originalChar = originalLine.charCodeAt(originalStartColumn - 2);\n const modifiedChar = modifiedLine.charCodeAt(modifiedStartColumn - 2);\n if (originalChar !== modifiedChar) {\n break;\n }\n originalStartColumn--;\n modifiedStartColumn--;\n }\n if (originalStartColumn > 1 || modifiedStartColumn > 1) {\n this._pushTrimWhitespaceCharChange(result, originalLineIndex + 1, 1, originalStartColumn, modifiedLineIndex + 1, 1, modifiedStartColumn);\n }\n }\n // Check the trailing whitespace\n {\n let originalEndColumn = getLastNonBlankColumn(originalLine, 1);\n let modifiedEndColumn = getLastNonBlankColumn(modifiedLine, 1);\n const originalMaxColumn = originalLine.length + 1;\n const modifiedMaxColumn = modifiedLine.length + 1;\n while (originalEndColumn < originalMaxColumn && modifiedEndColumn < modifiedMaxColumn) {\n const originalChar = originalLine.charCodeAt(originalEndColumn - 1);\n const modifiedChar = originalLine.charCodeAt(modifiedEndColumn - 1);\n if (originalChar !== modifiedChar) {\n break;\n }\n originalEndColumn++;\n modifiedEndColumn++;\n }\n if (originalEndColumn < originalMaxColumn || modifiedEndColumn < modifiedMaxColumn) {\n this._pushTrimWhitespaceCharChange(result, originalLineIndex + 1, originalEndColumn, originalMaxColumn, modifiedLineIndex + 1, modifiedEndColumn, modifiedMaxColumn);\n }\n }\n }\n originalLineIndex++;\n modifiedLineIndex++;\n }\n if (nextChange) {\n // Emit the actual change\n result.push(LineChange.createFromDiffResult(this.shouldIgnoreTrimWhitespace, nextChange, this.original, this.modified, this.continueCharDiff, this.shouldComputeCharChanges, this.shouldPostProcessCharChanges));\n originalLineIndex += nextChange.originalLength;\n modifiedLineIndex += nextChange.modifiedLength;\n }\n }\n return {\n quitEarly: quitEarly,\n changes: result\n };\n }\n _pushTrimWhitespaceCharChange(result, originalLineNumber, originalStartColumn, originalEndColumn, modifiedLineNumber, modifiedStartColumn, modifiedEndColumn) {\n if (this._mergeTrimWhitespaceCharChange(result, originalLineNumber, originalStartColumn, originalEndColumn, modifiedLineNumber, modifiedStartColumn, modifiedEndColumn)) {\n // Merged into previous\n return;\n }\n let charChanges = undefined;\n if (this.shouldComputeCharChanges) {\n charChanges = [new CharChange(originalLineNumber, originalStartColumn, originalLineNumber, originalEndColumn, modifiedLineNumber, modifiedStartColumn, modifiedLineNumber, modifiedEndColumn)];\n }\n result.push(new LineChange(originalLineNumber, originalLineNumber, modifiedLineNumber, modifiedLineNumber, charChanges));\n }\n _mergeTrimWhitespaceCharChange(result, originalLineNumber, originalStartColumn, originalEndColumn, modifiedLineNumber, modifiedStartColumn, modifiedEndColumn) {\n const len = result.length;\n if (len === 0) {\n return false;\n }\n const prevChange = result[len - 1];\n if (prevChange.originalEndLineNumber === 0 || prevChange.modifiedEndLineNumber === 0) {\n // Don't merge with inserts/deletes\n return false;\n }\n if (prevChange.originalEndLineNumber === originalLineNumber && prevChange.modifiedEndLineNumber === modifiedLineNumber) {\n if (this.shouldComputeCharChanges && prevChange.charChanges) {\n prevChange.charChanges.push(new CharChange(originalLineNumber, originalStartColumn, originalLineNumber, originalEndColumn, modifiedLineNumber, modifiedStartColumn, modifiedLineNumber, modifiedEndColumn));\n }\n return true;\n }\n if (prevChange.originalEndLineNumber + 1 === originalLineNumber && prevChange.modifiedEndLineNumber + 1 === modifiedLineNumber) {\n prevChange.originalEndLineNumber = originalLineNumber;\n prevChange.modifiedEndLineNumber = modifiedLineNumber;\n if (this.shouldComputeCharChanges && prevChange.charChanges) {\n prevChange.charChanges.push(new CharChange(originalLineNumber, originalStartColumn, originalLineNumber, originalEndColumn, modifiedLineNumber, modifiedStartColumn, modifiedLineNumber, modifiedEndColumn));\n }\n return true;\n }\n return false;\n }\n}\nfunction getFirstNonBlankColumn(txt, defaultValue) {\n const r = _base_common_strings_js__WEBPACK_IMPORTED_MODULE_3__.firstNonWhitespaceIndex(txt);\n if (r === -1) {\n return defaultValue;\n }\n return r + 1;\n}\nfunction getLastNonBlankColumn(txt, defaultValue) {\n const r = _base_common_strings_js__WEBPACK_IMPORTED_MODULE_3__.lastNonWhitespaceIndex(txt);\n if (r === -1) {\n return defaultValue;\n }\n return r + 2;\n}\nfunction createContinueProcessingPredicate(maximumRuntime) {\n if (maximumRuntime === 0) {\n return () => true;\n }\n const startTime = Date.now();\n return () => {\n return Date.now() - startTime < maximumRuntime;\n };\n}\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/common/diff/legacyLinesDiffComputer.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/common/diff/linesDiffComputer.js":
/*!***********************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/common/diff/linesDiffComputer.js ***!
\***********************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ LinesDiff: () => (/* binding */ LinesDiff),\n/* harmony export */ MovedText: () => (/* binding */ MovedText)\n/* harmony export */ });\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\nclass LinesDiff {\n constructor(changes, \n /**\n * Sorted by original line ranges.\n * The original line ranges and the modified line ranges must be disjoint (but can be touching).\n */\n moves, \n /**\n * Indicates if the time out was reached.\n * In that case, the diffs might be an approximation and the user should be asked to rerun the diff with more time.\n */\n hitTimeout) {\n this.changes = changes;\n this.moves = moves;\n this.hitTimeout = hitTimeout;\n }\n}\nclass MovedText {\n constructor(lineRangeMapping, changes) {\n this.lineRangeMapping = lineRangeMapping;\n this.changes = changes;\n }\n}\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/common/diff/linesDiffComputer.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/common/diff/linesDiffComputers.js":
/*!************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/common/diff/linesDiffComputers.js ***!
\************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ linesDiffComputers: () => (/* binding */ linesDiffComputers)\n/* harmony export */ });\n/* harmony import */ var _legacyLinesDiffComputer_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./legacyLinesDiffComputer.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/diff/legacyLinesDiffComputer.js\");\n/* harmony import */ var _defaultLinesDiffComputer_defaultLinesDiffComputer_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./defaultLinesDiffComputer/defaultLinesDiffComputer.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/diff/defaultLinesDiffComputer/defaultLinesDiffComputer.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n\nconst linesDiffComputers = {\n getLegacy: () => new _legacyLinesDiffComputer_js__WEBPACK_IMPORTED_MODULE_0__.LegacyLinesDiffComputer(),\n getDefault: () => new _defaultLinesDiffComputer_defaultLinesDiffComputer_js__WEBPACK_IMPORTED_MODULE_1__.DefaultLinesDiffComputer(),\n};\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/common/diff/linesDiffComputers.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/common/diff/rangeMapping.js":
/*!******************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/common/diff/rangeMapping.js ***!
\******************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ DetailedLineRangeMapping: () => (/* binding */ DetailedLineRangeMapping),\n/* harmony export */ LineRangeMapping: () => (/* binding */ LineRangeMapping),\n/* harmony export */ RangeMapping: () => (/* binding */ RangeMapping)\n/* harmony export */ });\n/* harmony import */ var _core_lineRange_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../core/lineRange.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/core/lineRange.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n/**\n * Maps a line range in the original text model to a line range in the modified text model.\n */\nclass LineRangeMapping {\n static inverse(mapping, originalLineCount, modifiedLineCount) {\n const result = [];\n let lastOriginalEndLineNumber = 1;\n let lastModifiedEndLineNumber = 1;\n for (const m of mapping) {\n const r = new LineRangeMapping(new _core_lineRange_js__WEBPACK_IMPORTED_MODULE_0__.LineRange(lastOriginalEndLineNumber, m.original.startLineNumber), new _core_lineRange_js__WEBPACK_IMPORTED_MODULE_0__.LineRange(lastModifiedEndLineNumber, m.modified.startLineNumber));\n if (!r.modified.isEmpty) {\n result.push(r);\n }\n lastOriginalEndLineNumber = m.original.endLineNumberExclusive;\n lastModifiedEndLineNumber = m.modified.endLineNumberExclusive;\n }\n const r = new LineRangeMapping(new _core_lineRange_js__WEBPACK_IMPORTED_MODULE_0__.LineRange(lastOriginalEndLineNumber, originalLineCount + 1), new _core_lineRange_js__WEBPACK_IMPORTED_MODULE_0__.LineRange(lastModifiedEndLineNumber, modifiedLineCount + 1));\n if (!r.modified.isEmpty) {\n result.push(r);\n }\n return result;\n }\n static clip(mapping, originalRange, modifiedRange) {\n const result = [];\n for (const m of mapping) {\n const original = m.original.intersect(originalRange);\n const modified = m.modified.intersect(modifiedRange);\n if (original && !original.isEmpty && modified && !modified.isEmpty) {\n result.push(new LineRangeMapping(original, modified));\n }\n }\n return result;\n }\n constructor(originalRange, modifiedRange) {\n this.original = originalRange;\n this.modified = modifiedRange;\n }\n toString() {\n return `{${this.original.toString()}->${this.modified.toString()}}`;\n }\n flip() {\n return new LineRangeMapping(this.modified, this.original);\n }\n join(other) {\n return new LineRangeMapping(this.original.join(other.original), this.modified.join(other.modified));\n }\n}\n/**\n * Maps a line range in the original text model to a line range in the modified text model.\n * Also contains inner range mappings.\n */\nclass DetailedLineRangeMapping extends LineRangeMapping {\n constructor(originalRange, modifiedRange, innerChanges) {\n super(originalRange, modifiedRange);\n this.innerChanges = innerChanges;\n }\n flip() {\n var _a;\n return new DetailedLineRangeMapping(this.modified, this.original, (_a = this.innerChanges) === null || _a === void 0 ? void 0 : _a.map(c => c.flip()));\n }\n}\n/**\n * Maps a range in the original text model to a range in the modified text model.\n */\nclass RangeMapping {\n constructor(originalRange, modifiedRange) {\n this.originalRange = originalRange;\n this.modifiedRange = modifiedRange;\n }\n toString() {\n return `{${this.originalRange.toString()}->${this.modifiedRange.toString()}}`;\n }\n flip() {\n return new RangeMapping(this.modifiedRange, this.originalRange);\n }\n}\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/common/diff/rangeMapping.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/common/editorAction.js":
/*!*************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/common/editorAction.js ***!
\*************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ InternalEditorAction: () => (/* binding */ InternalEditorAction)\n/* harmony export */ });\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\nclass InternalEditorAction {\n constructor(id, label, alias, metadata, _precondition, _run, _contextKeyService) {\n this.id = id;\n this.label = label;\n this.alias = alias;\n this.metadata = metadata;\n this._precondition = _precondition;\n this._run = _run;\n this._contextKeyService = _contextKeyService;\n }\n isSupported() {\n return this._contextKeyService.contextMatchesRules(this._precondition);\n }\n run(args) {\n if (!this.isSupported()) {\n return Promise.resolve(undefined);\n }\n return this._run(args);\n }\n}\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/common/editorAction.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/common/editorCommon.js":
/*!*************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/common/editorCommon.js ***!
\*************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ EditorType: () => (/* binding */ EditorType)\n/* harmony export */ });\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n/**\n * The type of the `IEditor`.\n */\nconst EditorType = {\n ICodeEditor: 'vs.editor.ICodeEditor',\n IDiffEditor: 'vs.editor.IDiffEditor'\n};\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/common/editorCommon.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/common/editorContextKeys.js":
/*!******************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/common/editorContextKeys.js ***!
\******************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ EditorContextKeys: () => (/* binding */ EditorContextKeys)\n/* harmony export */ });\n/* harmony import */ var _nls_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../nls.js */ \"./node_modules/monaco-editor/esm/vs/nls.js\");\n/* harmony import */ var _platform_contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../platform/contextkey/common/contextkey.js */ \"./node_modules/monaco-editor/esm/vs/platform/contextkey/common/contextkey.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n\nvar EditorContextKeys;\n(function (EditorContextKeys) {\n EditorContextKeys.editorSimpleInput = new _platform_contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_1__.RawContextKey('editorSimpleInput', false, true);\n /**\n * A context key that is set when the editor's text has focus (cursor is blinking).\n * Is false when focus is in simple editor widgets (repl input, scm commit input).\n */\n EditorContextKeys.editorTextFocus = new _platform_contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_1__.RawContextKey('editorTextFocus', false, _nls_js__WEBPACK_IMPORTED_MODULE_0__.localize('editorTextFocus', \"Whether the editor text has focus (cursor is blinking)\"));\n /**\n * A context key that is set when the editor's text or an editor's widget has focus.\n */\n EditorContextKeys.focus = new _platform_contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_1__.RawContextKey('editorFocus', false, _nls_js__WEBPACK_IMPORTED_MODULE_0__.localize('editorFocus', \"Whether the editor or an editor widget has focus (e.g. focus is in the find widget)\"));\n /**\n * A context key that is set when any editor input has focus (regular editor, repl input...).\n */\n EditorContextKeys.textInputFocus = new _platform_contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_1__.RawContextKey('textInputFocus', false, _nls_js__WEBPACK_IMPORTED_MODULE_0__.localize('textInputFocus', \"Whether an editor or a rich text input has focus (cursor is blinking)\"));\n EditorContextKeys.readOnly = new _platform_contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_1__.RawContextKey('editorReadonly', false, _nls_js__WEBPACK_IMPORTED_MODULE_0__.localize('editorReadonly', \"Whether the editor is read-only\"));\n EditorContextKeys.inDiffEditor = new _platform_contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_1__.RawContextKey('inDiffEditor', false, _nls_js__WEBPACK_IMPORTED_MODULE_0__.localize('inDiffEditor', \"Whether the context is a diff editor\"));\n EditorContextKeys.isEmbeddedDiffEditor = new _platform_contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_1__.RawContextKey('isEmbeddedDiffEditor', false, _nls_js__WEBPACK_IMPORTED_MODULE_0__.localize('isEmbeddedDiffEditor', \"Whether the context is an embedded diff editor\"));\n EditorContextKeys.inMultiDiffEditor = new _platform_contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_1__.RawContextKey('inMultiDiffEditor', false, _nls_js__WEBPACK_IMPORTED_MODULE_0__.localize('inMultiDiffEditor', \"Whether the context is a multi diff editor\"));\n EditorContextKeys.multiDiffEditorAllCollapsed = new _platform_contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_1__.RawContextKey('multiDiffEditorAllCollapsed', undefined, _nls_js__WEBPACK_IMPORTED_MODULE_0__.localize('multiDiffEditorAllCollapsed', \"Whether all files in multi diff editor are collapsed\"));\n EditorContextKeys.hasChanges = new _platform_contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_1__.RawContextKey('diffEditorHasChanges', false, _nls_js__WEBPACK_IMPORTED_MODULE_0__.localize('diffEditorHasChanges', \"Whether the diff editor has changes\"));\n EditorContextKeys.comparingMovedCode = new _platform_contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_1__.RawContextKey('comparingMovedCode', false, _nls_js__WEBPACK_IMPORTED_MODULE_0__.localize('comparingMovedCode', \"Whether a moved code block is selected for comparison\"));\n EditorContextKeys.accessibleDiffViewerVisible = new _platform_contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_1__.RawContextKey('accessibleDiffViewerVisible', false, _nls_js__WEBPACK_IMPORTED_MODULE_0__.localize('accessibleDiffViewerVisible', \"Whether the accessible diff viewer is visible\"));\n EditorContextKeys.diffEditorRenderSideBySideInlineBreakpointReached = new _platform_contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_1__.RawContextKey('diffEditorRenderSideBySideInlineBreakpointReached', false, _nls_js__WEBPACK_IMPORTED_MODULE_0__.localize('diffEditorRenderSideBySideInlineBreakpointReached', \"Whether the diff editor render side by side inline breakpoint is reached\"));\n EditorContextKeys.columnSelection = new _platform_contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_1__.RawContextKey('editorColumnSelection', false, _nls_js__WEBPACK_IMPORTED_MODULE_0__.localize('editorColumnSelection', \"Whether `editor.columnSelection` is enabled\"));\n EditorContextKeys.writable = EditorContextKeys.readOnly.toNegated();\n EditorContextKeys.hasNonEmptySelection = new _platform_contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_1__.RawContextKey('editorHasSelection', false, _nls_js__WEBPACK_IMPORTED_MODULE_0__.localize('editorHasSelection', \"Whether the editor has text selected\"));\n EditorContextKeys.hasOnlyEmptySelection = EditorContextKeys.hasNonEmptySelection.toNegated();\n EditorContextKeys.hasMultipleSelections = new _platform_contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_1__.RawContextKey('editorHasMultipleSelections', false, _nls_js__WEBPACK_IMPORTED_MODULE_0__.localize('editorHasMultipleSelections', \"Whether the editor has multiple selections\"));\n EditorContextKeys.hasSingleSelection = EditorContextKeys.hasMultipleSelections.toNegated();\n EditorContextKeys.tabMovesFocus = new _platform_contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_1__.RawContextKey('editorTabMovesFocus', false, _nls_js__WEBPACK_IMPORTED_MODULE_0__.localize('editorTabMovesFocus', \"Whether `Tab` will move focus out of the editor\"));\n EditorContextKeys.tabDoesNotMoveFocus = EditorContextKeys.tabMovesFocus.toNegated();\n EditorContextKeys.isInEmbeddedEditor = new _platform_contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_1__.RawContextKey('isInEmbeddedEditor', false, true);\n EditorContextKeys.canUndo = new _platform_contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_1__.RawContextKey('canUndo', false, true);\n EditorContextKeys.canRedo = new _platform_contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_1__.RawContextKey('canRedo', false, true);\n EditorContextKeys.hoverVisible = new _platform_contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_1__.RawContextKey('editorHoverVisible', false, _nls_js__WEBPACK_IMPORTED_MODULE_0__.localize('editorHoverVisible', \"Whether the editor hover is visible\"));\n EditorContextKeys.hoverFocused = new _platform_contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_1__.RawContextKey('editorHoverFocused', false, _nls_js__WEBPACK_IMPORTED_MODULE_0__.localize('editorHoverFocused', \"Whether the editor hover is focused\"));\n EditorContextKeys.stickyScrollFocused = new _platform_contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_1__.RawContextKey('stickyScrollFocused', false, _nls_js__WEBPACK_IMPORTED_MODULE_0__.localize('stickyScrollFocused', \"Whether the sticky scroll is focused\"));\n EditorContextKeys.stickyScrollVisible = new _platform_contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_1__.RawContextKey('stickyScrollVisible', false, _nls_js__WEBPACK_IMPORTED_MODULE_0__.localize('stickyScrollVisible', \"Whether the sticky scroll is visible\"));\n EditorContextKeys.standaloneColorPickerVisible = new _platform_contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_1__.RawContextKey('standaloneColorPickerVisible', false, _nls_js__WEBPACK_IMPORTED_MODULE_0__.localize('standaloneColorPickerVisible', \"Whether the standalone color picker is visible\"));\n EditorContextKeys.standaloneColorPickerFocused = new _platform_contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_1__.RawContextKey('standaloneColorPickerFocused', false, _nls_js__WEBPACK_IMPORTED_MODULE_0__.localize('standaloneColorPickerFocused', \"Whether the standalone color picker is focused\"));\n /**\n * A context key that is set when an editor is part of a larger editor, like notebooks or\n * (future) a diff editor\n */\n EditorContextKeys.inCompositeEditor = new _platform_contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_1__.RawContextKey('inCompositeEditor', undefined, _nls_js__WEBPACK_IMPORTED_MODULE_0__.localize('inCompositeEditor', \"Whether the editor is part of a larger editor (e.g. notebooks)\"));\n EditorContextKeys.notInCompositeEditor = EditorContextKeys.inCompositeEditor.toNegated();\n // -- mode context keys\n EditorContextKeys.languageId = new _platform_contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_1__.RawContextKey('editorLangId', '', _nls_js__WEBPACK_IMPORTED_MODULE_0__.localize('editorLangId', \"The language identifier of the editor\"));\n EditorContextKeys.hasCompletionItemProvider = new _platform_contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_1__.RawContextKey('editorHasCompletionItemProvider', false, _nls_js__WEBPACK_IMPORTED_MODULE_0__.localize('editorHasCompletionItemProvider', \"Whether the editor has a completion item provider\"));\n EditorContextKeys.hasCodeActionsProvider = new _platform_contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_1__.RawContextKey('editorHasCodeActionsProvider', false, _nls_js__WEBPACK_IMPORTED_MODULE_0__.localize('editorHasCodeActionsProvider', \"Whether the editor has a code actions provider\"));\n EditorContextKeys.hasCodeLensProvider = new _platform_contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_1__.RawContextKey('editorHasCodeLensProvider', false, _nls_js__WEBPACK_IMPORTED_MODULE_0__.localize('editorHasCodeLensProvider', \"Whether the editor has a code lens provider\"));\n EditorContextKeys.hasDefinitionProvider = new _platform_contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_1__.RawContextKey('editorHasDefinitionProvider', false, _nls_js__WEBPACK_IMPORTED_MODULE_0__.localize('editorHasDefinitionProvider', \"Whether the editor has a definition provider\"));\n EditorContextKeys.hasDeclarationProvider = new _platform_contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_1__.RawContextKey('editorHasDeclarationProvider', false, _nls_js__WEBPACK_IMPORTED_MODULE_0__.localize('editorHasDeclarationProvider', \"Whether the editor has a declaration provider\"));\n EditorContextKeys.hasImplementationProvider = new _platform_contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_1__.RawContextKey('editorHasImplementationProvider', false, _nls_js__WEBPACK_IMPORTED_MODULE_0__.localize('editorHasImplementationProvider', \"Whether the editor has an implementation provider\"));\n EditorContextKeys.hasTypeDefinitionProvider = new _platform_contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_1__.RawContextKey('editorHasTypeDefinitionProvider', false, _nls_js__WEBPACK_IMPORTED_MODULE_0__.localize('editorHasTypeDefinitionProvider', \"Whether the editor has a type definition provider\"));\n EditorContextKeys.hasHoverProvider = new _platform_contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_1__.RawContextKey('editorHasHoverProvider', false, _nls_js__WEBPACK_IMPORTED_MODULE_0__.localize('editorHasHoverProvider', \"Whether the editor has a hover provider\"));\n EditorContextKeys.hasDocumentHighlightProvider = new _platform_contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_1__.RawContextKey('editorHasDocumentHighlightProvider', false, _nls_js__WEBPACK_IMPORTED_MODULE_0__.localize('editorHasDocumentHighlightProvider', \"Whether the editor has a document highlight provider\"));\n EditorContextKeys.hasDocumentSymbolProvider = new _platform_contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_1__.RawContextKey('editorHasDocumentSymbolProvider', false, _nls_js__WEBPACK_IMPORTED_MODULE_0__.localize('editorHasDocumentSymbolProvider', \"Whether the editor has a document symbol provider\"));\n EditorContextKeys.hasReferenceProvider = new _platform_contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_1__.RawContextKey('editorHasReferenceProvider', false, _nls_js__WEBPACK_IMPORTED_MODULE_0__.localize('editorHasReferenceProvider', \"Whether the editor has a reference provider\"));\n EditorContextKeys.hasRenameProvider = new _platform_contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_1__.RawContextKey('editorHasRenameProvider', false, _nls_js__WEBPACK_IMPORTED_MODULE_0__.localize('editorHasRenameProvider', \"Whether the editor has a rename provider\"));\n EditorContextKeys.hasSignatureHelpProvider = new _platform_contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_1__.RawContextKey('editorHasSignatureHelpProvider', false, _nls_js__WEBPACK_IMPORTED_MODULE_0__.localize('editorHasSignatureHelpProvider', \"Whether the editor has a signature help provider\"));\n EditorContextKeys.hasInlayHintsProvider = new _platform_contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_1__.RawContextKey('editorHasInlayHintsProvider', false, _nls_js__WEBPACK_IMPORTED_MODULE_0__.localize('editorHasInlayHintsProvider', \"Whether the editor has an inline hints provider\"));\n // -- mode context keys: formatting\n EditorContextKeys.hasDocumentFormattingProvider = new _platform_contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_1__.RawContextKey('editorHasDocumentFormattingProvider', false, _nls_js__WEBPACK_IMPORTED_MODULE_0__.localize('editorHasDocumentFormattingProvider', \"Whether the editor has a document formatting provider\"));\n EditorContextKeys.hasDocumentSelectionFormattingProvider = new _platform_contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_1__.RawContextKey('editorHasDocumentSelectionFormattingProvider', false, _nls_js__WEBPACK_IMPORTED_MODULE_0__.localize('editorHasDocumentSelectionFormattingProvider', \"Whether the editor has a document selection formatting provider\"));\n EditorContextKeys.hasMultipleDocumentFormattingProvider = new _platform_contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_1__.RawContextKey('editorHasMultipleDocumentFormattingProvider', false, _nls_js__WEBPACK_IMPORTED_MODULE_0__.localize('editorHasMultipleDocumentFormattingProvider', \"Whether the editor has multiple document formatting providers\"));\n EditorContextKeys.hasMultipleDocumentSelectionFormattingProvider = new _platform_contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_1__.RawContextKey('editorHasMultipleDocumentSelectionFormattingProvider', false, _nls_js__WEBPACK_IMPORTED_MODULE_0__.localize('editorHasMultipleDocumentSelectionFormattingProvider', \"Whether the editor has multiple document selection formatting providers\"));\n})(EditorContextKeys || (EditorContextKeys = {}));\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/common/editorContextKeys.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/common/editorFeatures.js":
/*!***************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/common/editorFeatures.js ***!
\***************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ getEditorFeatures: () => (/* binding */ getEditorFeatures),\n/* harmony export */ registerEditorFeature: () => (/* binding */ registerEditorFeature)\n/* harmony export */ });\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\nconst editorFeatures = [];\n/**\n * Registers an editor feature. Editor features will be instantiated only once, as soon as\n * the first code editor is instantiated.\n */\nfunction registerEditorFeature(ctor) {\n editorFeatures.push(ctor);\n}\nfunction getEditorFeatures() {\n return editorFeatures.slice(0);\n}\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/common/editorFeatures.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/common/editorTheme.js":
/*!************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/common/editorTheme.js ***!
\************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ EditorTheme: () => (/* binding */ EditorTheme)\n/* harmony export */ });\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\nclass EditorTheme {\n get type() {\n return this._theme.type;\n }\n get value() {\n return this._theme;\n }\n constructor(theme) {\n this._theme = theme;\n }\n update(theme) {\n this._theme = theme;\n }\n getColor(color) {\n return this._theme.getColor(color);\n }\n}\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/common/editorTheme.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/common/encodedTokenAttributes.js":
/*!***********************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/common/encodedTokenAttributes.js ***!
\***********************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ TokenMetadata: () => (/* binding */ TokenMetadata)\n/* harmony export */ });\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n/**\n */\nclass TokenMetadata {\n static getLanguageId(metadata) {\n return (metadata & 255 /* MetadataConsts.LANGUAGEID_MASK */) >>> 0 /* MetadataConsts.LANGUAGEID_OFFSET */;\n }\n static getTokenType(metadata) {\n return (metadata & 768 /* MetadataConsts.TOKEN_TYPE_MASK */) >>> 8 /* MetadataConsts.TOKEN_TYPE_OFFSET */;\n }\n static containsBalancedBrackets(metadata) {\n return (metadata & 1024 /* MetadataConsts.BALANCED_BRACKETS_MASK */) !== 0;\n }\n static getFontStyle(metadata) {\n return (metadata & 30720 /* MetadataConsts.FONT_STYLE_MASK */) >>> 11 /* MetadataConsts.FONT_STYLE_OFFSET */;\n }\n static getForeground(metadata) {\n return (metadata & 16744448 /* MetadataConsts.FOREGROUND_MASK */) >>> 15 /* MetadataConsts.FOREGROUND_OFFSET */;\n }\n static getBackground(metadata) {\n return (metadata & 4278190080 /* MetadataConsts.BACKGROUND_MASK */) >>> 24 /* MetadataConsts.BACKGROUND_OFFSET */;\n }\n static getClassNameFromMetadata(metadata) {\n const foreground = this.getForeground(metadata);\n let className = 'mtk' + foreground;\n const fontStyle = this.getFontStyle(metadata);\n if (fontStyle & 1 /* FontStyle.Italic */) {\n className += ' mtki';\n }\n if (fontStyle & 2 /* FontStyle.Bold */) {\n className += ' mtkb';\n }\n if (fontStyle & 4 /* FontStyle.Underline */) {\n className += ' mtku';\n }\n if (fontStyle & 8 /* FontStyle.Strikethrough */) {\n className += ' mtks';\n }\n return className;\n }\n static getInlineStyleFromMetadata(metadata, colorMap) {\n const foreground = this.getForeground(metadata);\n const fontStyle = this.getFontStyle(metadata);\n let result = `color: ${colorMap[foreground]};`;\n if (fontStyle & 1 /* FontStyle.Italic */) {\n result += 'font-style: italic;';\n }\n if (fontStyle & 2 /* FontStyle.Bold */) {\n result += 'font-weight: bold;';\n }\n let textDecoration = '';\n if (fontStyle & 4 /* FontStyle.Underline */) {\n textDecoration += ' underline';\n }\n if (fontStyle & 8 /* FontStyle.Strikethrough */) {\n textDecoration += ' line-through';\n }\n if (textDecoration) {\n result += `text-decoration:${textDecoration};`;\n }\n return result;\n }\n static getPresentationFromMetadata(metadata) {\n const foreground = this.getForeground(metadata);\n const fontStyle = this.getFontStyle(metadata);\n return {\n foreground: foreground,\n italic: Boolean(fontStyle & 1 /* FontStyle.Italic */),\n bold: Boolean(fontStyle & 2 /* FontStyle.Bold */),\n underline: Boolean(fontStyle & 4 /* FontStyle.Underline */),\n strikethrough: Boolean(fontStyle & 8 /* FontStyle.Strikethrough */),\n };\n }\n}\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/common/encodedTokenAttributes.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/common/languageFeatureRegistry.js":
/*!************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/common/languageFeatureRegistry.js ***!
\************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ LanguageFeatureRegistry: () => (/* binding */ LanguageFeatureRegistry)\n/* harmony export */ });\n/* harmony import */ var _base_common_event_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../base/common/event.js */ \"./node_modules/monaco-editor/esm/vs/base/common/event.js\");\n/* harmony import */ var _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../base/common/lifecycle.js */ \"./node_modules/monaco-editor/esm/vs/base/common/lifecycle.js\");\n/* harmony import */ var _model_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./model.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/model.js\");\n/* harmony import */ var _languageSelector_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./languageSelector.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/languageSelector.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n\n\n\nfunction isExclusive(selector) {\n if (typeof selector === 'string') {\n return false;\n }\n else if (Array.isArray(selector)) {\n return selector.every(isExclusive);\n }\n else {\n return !!selector.exclusive; // TODO: microsoft/TypeScript#42768\n }\n}\nclass MatchCandidate {\n constructor(uri, languageId, notebookUri, notebookType) {\n this.uri = uri;\n this.languageId = languageId;\n this.notebookUri = notebookUri;\n this.notebookType = notebookType;\n }\n equals(other) {\n var _a, _b;\n return this.notebookType === other.notebookType\n && this.languageId === other.languageId\n && this.uri.toString() === other.uri.toString()\n && ((_a = this.notebookUri) === null || _a === void 0 ? void 0 : _a.toString()) === ((_b = other.notebookUri) === null || _b === void 0 ? void 0 : _b.toString());\n }\n}\nclass LanguageFeatureRegistry {\n constructor(_notebookInfoResolver) {\n this._notebookInfoResolver = _notebookInfoResolver;\n this._clock = 0;\n this._entries = [];\n this._onDidChange = new _base_common_event_js__WEBPACK_IMPORTED_MODULE_0__.Emitter();\n this.onDidChange = this._onDidChange.event;\n }\n register(selector, provider) {\n let entry = {\n selector,\n provider,\n _score: -1,\n _time: this._clock++\n };\n this._entries.push(entry);\n this._lastCandidate = undefined;\n this._onDidChange.fire(this._entries.length);\n return (0,_base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_1__.toDisposable)(() => {\n if (entry) {\n const idx = this._entries.indexOf(entry);\n if (idx >= 0) {\n this._entries.splice(idx, 1);\n this._lastCandidate = undefined;\n this._onDidChange.fire(this._entries.length);\n entry = undefined;\n }\n }\n });\n }\n has(model) {\n return this.all(model).length > 0;\n }\n all(model) {\n if (!model) {\n return [];\n }\n this._updateScores(model);\n const result = [];\n // from registry\n for (const entry of this._entries) {\n if (entry._score > 0) {\n result.push(entry.provider);\n }\n }\n return result;\n }\n ordered(model) {\n const result = [];\n this._orderedForEach(model, entry => result.push(entry.provider));\n return result;\n }\n orderedGroups(model) {\n const result = [];\n let lastBucket;\n let lastBucketScore;\n this._orderedForEach(model, entry => {\n if (lastBucket && lastBucketScore === entry._score) {\n lastBucket.push(entry.provider);\n }\n else {\n lastBucketScore = entry._score;\n lastBucket = [entry.provider];\n result.push(lastBucket);\n }\n });\n return result;\n }\n _orderedForEach(model, callback) {\n this._updateScores(model);\n for (const entry of this._entries) {\n if (entry._score > 0) {\n callback(entry);\n }\n }\n }\n _updateScores(model) {\n var _a, _b;\n const notebookInfo = (_a = this._notebookInfoResolver) === null || _a === void 0 ? void 0 : _a.call(this, model.uri);\n // use the uri (scheme, pattern) of the notebook info iff we have one\n // otherwise it's the model's/document's uri\n const candidate = notebookInfo\n ? new MatchCandidate(model.uri, model.getLanguageId(), notebookInfo.uri, notebookInfo.type)\n : new MatchCandidate(model.uri, model.getLanguageId(), undefined, undefined);\n if ((_b = this._lastCandidate) === null || _b === void 0 ? void 0 : _b.equals(candidate)) {\n // nothing has changed\n return;\n }\n this._lastCandidate = candidate;\n for (const entry of this._entries) {\n entry._score = (0,_languageSelector_js__WEBPACK_IMPORTED_MODULE_3__.score)(entry.selector, candidate.uri, candidate.languageId, (0,_model_js__WEBPACK_IMPORTED_MODULE_2__.shouldSynchronizeModel)(model), candidate.notebookUri, candidate.notebookType);\n if (isExclusive(entry.selector) && entry._score > 0) {\n // support for one exclusive selector that overwrites\n // any other selector\n for (const entry of this._entries) {\n entry._score = 0;\n }\n entry._score = 1000;\n break;\n }\n }\n // needs sorting\n this._entries.sort(LanguageFeatureRegistry._compareByScoreAndTime);\n }\n static _compareByScoreAndTime(a, b) {\n if (a._score < b._score) {\n return 1;\n }\n else if (a._score > b._score) {\n return -1;\n }\n // De-prioritize built-in providers\n if (isBuiltinSelector(a.selector) && !isBuiltinSelector(b.selector)) {\n return 1;\n }\n else if (!isBuiltinSelector(a.selector) && isBuiltinSelector(b.selector)) {\n return -1;\n }\n if (a._time < b._time) {\n return 1;\n }\n else if (a._time > b._time) {\n return -1;\n }\n else {\n return 0;\n }\n }\n}\nfunction isBuiltinSelector(selector) {\n if (typeof selector === 'string') {\n return false;\n }\n if (Array.isArray(selector)) {\n return selector.some(isBuiltinSelector);\n }\n return Boolean(selector.isBuiltin);\n}\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/common/languageFeatureRegistry.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/common/languageSelector.js":
/*!*****************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/common/languageSelector.js ***!
\*****************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ score: () => (/* binding */ score)\n/* harmony export */ });\n/* harmony import */ var _base_common_glob_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../base/common/glob.js */ \"./node_modules/monaco-editor/esm/vs/base/common/glob.js\");\n/* harmony import */ var _base_common_path_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../base/common/path.js */ \"./node_modules/monaco-editor/esm/vs/base/common/path.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n\nfunction score(selector, candidateUri, candidateLanguage, candidateIsSynchronized, candidateNotebookUri, candidateNotebookType) {\n if (Array.isArray(selector)) {\n // array -> take max individual value\n let ret = 0;\n for (const filter of selector) {\n const value = score(filter, candidateUri, candidateLanguage, candidateIsSynchronized, candidateNotebookUri, candidateNotebookType);\n if (value === 10) {\n return value; // already at the highest\n }\n if (value > ret) {\n ret = value;\n }\n }\n return ret;\n }\n else if (typeof selector === 'string') {\n if (!candidateIsSynchronized) {\n return 0;\n }\n // short-hand notion, desugars to\n // 'fooLang' -> { language: 'fooLang'}\n // '*' -> { language: '*' }\n if (selector === '*') {\n return 5;\n }\n else if (selector === candidateLanguage) {\n return 10;\n }\n else {\n return 0;\n }\n }\n else if (selector) {\n // filter -> select accordingly, use defaults for scheme\n const { language, pattern, scheme, hasAccessToAllModels, notebookType } = selector; // TODO: microsoft/TypeScript#42768\n if (!candidateIsSynchronized && !hasAccessToAllModels) {\n return 0;\n }\n // selector targets a notebook -> use the notebook uri instead\n // of the \"normal\" document uri.\n if (notebookType && candidateNotebookUri) {\n candidateUri = candidateNotebookUri;\n }\n let ret = 0;\n if (scheme) {\n if (scheme === candidateUri.scheme) {\n ret = 10;\n }\n else if (scheme === '*') {\n ret = 5;\n }\n else {\n return 0;\n }\n }\n if (language) {\n if (language === candidateLanguage) {\n ret = 10;\n }\n else if (language === '*') {\n ret = Math.max(ret, 5);\n }\n else {\n return 0;\n }\n }\n if (notebookType) {\n if (notebookType === candidateNotebookType) {\n ret = 10;\n }\n else if (notebookType === '*' && candidateNotebookType !== undefined) {\n ret = Math.max(ret, 5);\n }\n else {\n return 0;\n }\n }\n if (pattern) {\n let normalizedPattern;\n if (typeof pattern === 'string') {\n normalizedPattern = pattern;\n }\n else {\n // Since this pattern has a `base` property, we need\n // to normalize this path first before passing it on\n // because we will compare it against `Uri.fsPath`\n // which uses platform specific separators.\n // Refs: https://github.com/microsoft/vscode/issues/99938\n normalizedPattern = { ...pattern, base: (0,_base_common_path_js__WEBPACK_IMPORTED_MODULE_1__.normalize)(pattern.base) };\n }\n if (normalizedPattern === candidateUri.fsPath || (0,_base_common_glob_js__WEBPACK_IMPORTED_MODULE_0__.match)(normalizedPattern, candidateUri.fsPath)) {\n ret = 10;\n }\n else {\n return 0;\n }\n }\n return ret;\n }\n else {\n return 0;\n }\n}\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/common/languageSelector.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/common/languages.js":
/*!**********************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/common/languages.js ***!
\**********************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ Command: () => (/* binding */ Command),\n/* harmony export */ CompletionItemKinds: () => (/* binding */ CompletionItemKinds),\n/* harmony export */ DocumentHighlightKind: () => (/* binding */ DocumentHighlightKind),\n/* harmony export */ EncodedTokenizationResult: () => (/* binding */ EncodedTokenizationResult),\n/* harmony export */ FoldingRangeKind: () => (/* binding */ FoldingRangeKind),\n/* harmony export */ InlayHintKind: () => (/* binding */ InlayHintKind),\n/* harmony export */ InlineCompletionTriggerKind: () => (/* binding */ InlineCompletionTriggerKind),\n/* harmony export */ InlineEditTriggerKind: () => (/* binding */ InlineEditTriggerKind),\n/* harmony export */ LazyTokenizationSupport: () => (/* binding */ LazyTokenizationSupport),\n/* harmony export */ NewSymbolNameTag: () => (/* binding */ NewSymbolNameTag),\n/* harmony export */ SelectedSuggestionInfo: () => (/* binding */ SelectedSuggestionInfo),\n/* harmony export */ SignatureHelpTriggerKind: () => (/* binding */ SignatureHelpTriggerKind),\n/* harmony export */ SymbolKinds: () => (/* binding */ SymbolKinds),\n/* harmony export */ TextEdit: () => (/* binding */ TextEdit),\n/* harmony export */ Token: () => (/* binding */ Token),\n/* harmony export */ TokenizationRegistry: () => (/* binding */ TokenizationRegistry),\n/* harmony export */ TokenizationResult: () => (/* binding */ TokenizationResult),\n/* harmony export */ getAriaLabelForSymbol: () => (/* binding */ getAriaLabelForSymbol),\n/* harmony export */ isLocationLink: () => (/* binding */ isLocationLink),\n/* harmony export */ symbolKindNames: () => (/* binding */ symbolKindNames)\n/* harmony export */ });\n/* harmony import */ var _base_common_codicons_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../base/common/codicons.js */ \"./node_modules/monaco-editor/esm/vs/base/common/codicons.js\");\n/* harmony import */ var _base_common_uri_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../base/common/uri.js */ \"./node_modules/monaco-editor/esm/vs/base/common/uri.js\");\n/* harmony import */ var _core_range_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./core/range.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/core/range.js\");\n/* harmony import */ var _tokenizationRegistry_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./tokenizationRegistry.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/tokenizationRegistry.js\");\n/* harmony import */ var _nls_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../nls.js */ \"./node_modules/monaco-editor/esm/vs/nls.js\");\n\n\n\n\n\nclass Token {\n constructor(offset, type, language) {\n this.offset = offset;\n this.type = type;\n this.language = language;\n this._tokenBrand = undefined;\n }\n toString() {\n return '(' + this.offset + ', ' + this.type + ')';\n }\n}\n/**\n * @internal\n */\nclass TokenizationResult {\n constructor(tokens, endState) {\n this.tokens = tokens;\n this.endState = endState;\n this._tokenizationResultBrand = undefined;\n }\n}\n/**\n * @internal\n */\nclass EncodedTokenizationResult {\n constructor(\n /**\n * The tokens in binary format. Each token occupies two array indices. For token i:\n * - at offset 2*i => startIndex\n * - at offset 2*i + 1 => metadata\n *\n */\n tokens, endState) {\n this.tokens = tokens;\n this.endState = endState;\n this._encodedTokenizationResultBrand = undefined;\n }\n}\n/**\n * @internal\n */\nvar CompletionItemKinds;\n(function (CompletionItemKinds) {\n const byKind = new Map();\n byKind.set(0 /* CompletionItemKind.Method */, _base_common_codicons_js__WEBPACK_IMPORTED_MODULE_0__.Codicon.symbolMethod);\n byKind.set(1 /* CompletionItemKind.Function */, _base_common_codicons_js__WEBPACK_IMPORTED_MODULE_0__.Codicon.symbolFunction);\n byKind.set(2 /* CompletionItemKind.Constructor */, _base_common_codicons_js__WEBPACK_IMPORTED_MODULE_0__.Codicon.symbolConstructor);\n byKind.set(3 /* CompletionItemKind.Field */, _base_common_codicons_js__WEBPACK_IMPORTED_MODULE_0__.Codicon.symbolField);\n byKind.set(4 /* CompletionItemKind.Variable */, _base_common_codicons_js__WEBPACK_IMPORTED_MODULE_0__.Codicon.symbolVariable);\n byKind.set(5 /* CompletionItemKind.Class */, _base_common_codicons_js__WEBPACK_IMPORTED_MODULE_0__.Codicon.symbolClass);\n byKind.set(6 /* CompletionItemKind.Struct */, _base_common_codicons_js__WEBPACK_IMPORTED_MODULE_0__.Codicon.symbolStruct);\n byKind.set(7 /* CompletionItemKind.Interface */, _base_common_codicons_js__WEBPACK_IMPORTED_MODULE_0__.Codicon.symbolInterface);\n byKind.set(8 /* CompletionItemKind.Module */, _base_common_codicons_js__WEBPACK_IMPORTED_MODULE_0__.Codicon.symbolModule);\n byKind.set(9 /* CompletionItemKind.Property */, _base_common_codicons_js__WEBPACK_IMPORTED_MODULE_0__.Codicon.symbolProperty);\n byKind.set(10 /* CompletionItemKind.Event */, _base_common_codicons_js__WEBPACK_IMPORTED_MODULE_0__.Codicon.symbolEvent);\n byKind.set(11 /* CompletionItemKind.Operator */, _base_common_codicons_js__WEBPACK_IMPORTED_MODULE_0__.Codicon.symbolOperator);\n byKind.set(12 /* CompletionItemKind.Unit */, _base_common_codicons_js__WEBPACK_IMPORTED_MODULE_0__.Codicon.symbolUnit);\n byKind.set(13 /* CompletionItemKind.Value */, _base_common_codicons_js__WEBPACK_IMPORTED_MODULE_0__.Codicon.symbolValue);\n byKind.set(15 /* CompletionItemKind.Enum */, _base_common_codicons_js__WEBPACK_IMPORTED_MODULE_0__.Codicon.symbolEnum);\n byKind.set(14 /* CompletionItemKind.Constant */, _base_common_codicons_js__WEBPACK_IMPORTED_MODULE_0__.Codicon.symbolConstant);\n byKind.set(15 /* CompletionItemKind.Enum */, _base_common_codicons_js__WEBPACK_IMPORTED_MODULE_0__.Codicon.symbolEnum);\n byKind.set(16 /* CompletionItemKind.EnumMember */, _base_common_codicons_js__WEBPACK_IMPORTED_MODULE_0__.Codicon.symbolEnumMember);\n byKind.set(17 /* CompletionItemKind.Keyword */, _base_common_codicons_js__WEBPACK_IMPORTED_MODULE_0__.Codicon.symbolKeyword);\n byKind.set(27 /* CompletionItemKind.Snippet */, _base_common_codicons_js__WEBPACK_IMPORTED_MODULE_0__.Codicon.symbolSnippet);\n byKind.set(18 /* CompletionItemKind.Text */, _base_common_codicons_js__WEBPACK_IMPORTED_MODULE_0__.Codicon.symbolText);\n byKind.set(19 /* CompletionItemKind.Color */, _base_common_codicons_js__WEBPACK_IMPORTED_MODULE_0__.Codicon.symbolColor);\n byKind.set(20 /* CompletionItemKind.File */, _base_common_codicons_js__WEBPACK_IMPORTED_MODULE_0__.Codicon.symbolFile);\n byKind.set(21 /* CompletionItemKind.Reference */, _base_common_codicons_js__WEBPACK_IMPORTED_MODULE_0__.Codicon.symbolReference);\n byKind.set(22 /* CompletionItemKind.Customcolor */, _base_common_codicons_js__WEBPACK_IMPORTED_MODULE_0__.Codicon.symbolCustomColor);\n byKind.set(23 /* CompletionItemKind.Folder */, _base_common_codicons_js__WEBPACK_IMPORTED_MODULE_0__.Codicon.symbolFolder);\n byKind.set(24 /* CompletionItemKind.TypeParameter */, _base_common_codicons_js__WEBPACK_IMPORTED_MODULE_0__.Codicon.symbolTypeParameter);\n byKind.set(25 /* CompletionItemKind.User */, _base_common_codicons_js__WEBPACK_IMPORTED_MODULE_0__.Codicon.account);\n byKind.set(26 /* CompletionItemKind.Issue */, _base_common_codicons_js__WEBPACK_IMPORTED_MODULE_0__.Codicon.issues);\n /**\n * @internal\n */\n function toIcon(kind) {\n let codicon = byKind.get(kind);\n if (!codicon) {\n console.info('No codicon found for CompletionItemKind ' + kind);\n codicon = _base_common_codicons_js__WEBPACK_IMPORTED_MODULE_0__.Codicon.symbolProperty;\n }\n return codicon;\n }\n CompletionItemKinds.toIcon = toIcon;\n const data = new Map();\n data.set('method', 0 /* CompletionItemKind.Method */);\n data.set('function', 1 /* CompletionItemKind.Function */);\n data.set('constructor', 2 /* CompletionItemKind.Constructor */);\n data.set('field', 3 /* CompletionItemKind.Field */);\n data.set('variable', 4 /* CompletionItemKind.Variable */);\n data.set('class', 5 /* CompletionItemKind.Class */);\n data.set('struct', 6 /* CompletionItemKind.Struct */);\n data.set('interface', 7 /* CompletionItemKind.Interface */);\n data.set('module', 8 /* CompletionItemKind.Module */);\n data.set('property', 9 /* CompletionItemKind.Property */);\n data.set('event', 10 /* CompletionItemKind.Event */);\n data.set('operator', 11 /* CompletionItemKind.Operator */);\n data.set('unit', 12 /* CompletionItemKind.Unit */);\n data.set('value', 13 /* CompletionItemKind.Value */);\n data.set('constant', 14 /* CompletionItemKind.Constant */);\n data.set('enum', 15 /* CompletionItemKind.Enum */);\n data.set('enum-member', 16 /* CompletionItemKind.EnumMember */);\n data.set('enumMember', 16 /* CompletionItemKind.EnumMember */);\n data.set('keyword', 17 /* CompletionItemKind.Keyword */);\n data.set('snippet', 27 /* CompletionItemKind.Snippet */);\n data.set('text', 18 /* CompletionItemKind.Text */);\n data.set('color', 19 /* CompletionItemKind.Color */);\n data.set('file', 20 /* CompletionItemKind.File */);\n data.set('reference', 21 /* CompletionItemKind.Reference */);\n data.set('customcolor', 22 /* CompletionItemKind.Customcolor */);\n data.set('folder', 23 /* CompletionItemKind.Folder */);\n data.set('type-parameter', 24 /* CompletionItemKind.TypeParameter */);\n data.set('typeParameter', 24 /* CompletionItemKind.TypeParameter */);\n data.set('account', 25 /* CompletionItemKind.User */);\n data.set('issue', 26 /* CompletionItemKind.Issue */);\n /**\n * @internal\n */\n function fromString(value, strict) {\n let res = data.get(value);\n if (typeof res === 'undefined' && !strict) {\n res = 9 /* CompletionItemKind.Property */;\n }\n return res;\n }\n CompletionItemKinds.fromString = fromString;\n})(CompletionItemKinds || (CompletionItemKinds = {}));\n/**\n * How an {@link InlineCompletionsProvider inline completion provider} was triggered.\n */\nvar InlineCompletionTriggerKind;\n(function (InlineCompletionTriggerKind) {\n /**\n * Completion was triggered automatically while editing.\n * It is sufficient to return a single completion item in this case.\n */\n InlineCompletionTriggerKind[InlineCompletionTriggerKind[\"Automatic\"] = 0] = \"Automatic\";\n /**\n * Completion was triggered explicitly by a user gesture.\n * Return multiple completion items to enable cycling through them.\n */\n InlineCompletionTriggerKind[InlineCompletionTriggerKind[\"Explicit\"] = 1] = \"Explicit\";\n})(InlineCompletionTriggerKind || (InlineCompletionTriggerKind = {}));\nclass SelectedSuggestionInfo {\n constructor(range, text, completionKind, isSnippetText) {\n this.range = range;\n this.text = text;\n this.completionKind = completionKind;\n this.isSnippetText = isSnippetText;\n }\n equals(other) {\n return _core_range_js__WEBPACK_IMPORTED_MODULE_2__.Range.lift(this.range).equalsRange(other.range)\n && this.text === other.text\n && this.completionKind === other.completionKind\n && this.isSnippetText === other.isSnippetText;\n }\n}\nvar SignatureHelpTriggerKind;\n(function (SignatureHelpTriggerKind) {\n SignatureHelpTriggerKind[SignatureHelpTriggerKind[\"Invoke\"] = 1] = \"Invoke\";\n SignatureHelpTriggerKind[SignatureHelpTriggerKind[\"TriggerCharacter\"] = 2] = \"TriggerCharacter\";\n SignatureHelpTriggerKind[SignatureHelpTriggerKind[\"ContentChange\"] = 3] = \"ContentChange\";\n})(SignatureHelpTriggerKind || (SignatureHelpTriggerKind = {}));\n/**\n * A document highlight kind.\n */\nvar DocumentHighlightKind;\n(function (DocumentHighlightKind) {\n /**\n * A textual occurrence.\n */\n DocumentHighlightKind[DocumentHighlightKind[\"Text\"] = 0] = \"Text\";\n /**\n * Read-access of a symbol, like reading a variable.\n */\n DocumentHighlightKind[DocumentHighlightKind[\"Read\"] = 1] = \"Read\";\n /**\n * Write-access of a symbol, like writing to a variable.\n */\n DocumentHighlightKind[DocumentHighlightKind[\"Write\"] = 2] = \"Write\";\n})(DocumentHighlightKind || (DocumentHighlightKind = {}));\n/**\n * @internal\n */\nfunction isLocationLink(thing) {\n return thing\n && _base_common_uri_js__WEBPACK_IMPORTED_MODULE_1__.URI.isUri(thing.uri)\n && _core_range_js__WEBPACK_IMPORTED_MODULE_2__.Range.isIRange(thing.range)\n && (_core_range_js__WEBPACK_IMPORTED_MODULE_2__.Range.isIRange(thing.originSelectionRange) || _core_range_js__WEBPACK_IMPORTED_MODULE_2__.Range.isIRange(thing.targetSelectionRange));\n}\n/**\n * @internal\n */\nconst symbolKindNames = {\n [17 /* SymbolKind.Array */]: (0,_nls_js__WEBPACK_IMPORTED_MODULE_4__.localize)('Array', \"array\"),\n [16 /* SymbolKind.Boolean */]: (0,_nls_js__WEBPACK_IMPORTED_MODULE_4__.localize)('Boolean', \"boolean\"),\n [4 /* SymbolKind.Class */]: (0,_nls_js__WEBPACK_IMPORTED_MODULE_4__.localize)('Class', \"class\"),\n [13 /* SymbolKind.Constant */]: (0,_nls_js__WEBPACK_IMPORTED_MODULE_4__.localize)('Constant', \"constant\"),\n [8 /* SymbolKind.Constructor */]: (0,_nls_js__WEBPACK_IMPORTED_MODULE_4__.localize)('Constructor', \"constructor\"),\n [9 /* SymbolKind.Enum */]: (0,_nls_js__WEBPACK_IMPORTED_MODULE_4__.localize)('Enum', \"enumeration\"),\n [21 /* SymbolKind.EnumMember */]: (0,_nls_js__WEBPACK_IMPORTED_MODULE_4__.localize)('EnumMember', \"enumeration member\"),\n [23 /* SymbolKind.Event */]: (0,_nls_js__WEBPACK_IMPORTED_MODULE_4__.localize)('Event', \"event\"),\n [7 /* SymbolKind.Field */]: (0,_nls_js__WEBPACK_IMPORTED_MODULE_4__.localize)('Field', \"field\"),\n [0 /* SymbolKind.File */]: (0,_nls_js__WEBPACK_IMPORTED_MODULE_4__.localize)('File', \"file\"),\n [11 /* SymbolKind.Function */]: (0,_nls_js__WEBPACK_IMPORTED_MODULE_4__.localize)('Function', \"function\"),\n [10 /* SymbolKind.Interface */]: (0,_nls_js__WEBPACK_IMPORTED_MODULE_4__.localize)('Interface', \"interface\"),\n [19 /* SymbolKind.Key */]: (0,_nls_js__WEBPACK_IMPORTED_MODULE_4__.localize)('Key', \"key\"),\n [5 /* SymbolKind.Method */]: (0,_nls_js__WEBPACK_IMPORTED_MODULE_4__.localize)('Method', \"method\"),\n [1 /* SymbolKind.Module */]: (0,_nls_js__WEBPACK_IMPORTED_MODULE_4__.localize)('Module', \"module\"),\n [2 /* SymbolKind.Namespace */]: (0,_nls_js__WEBPACK_IMPORTED_MODULE_4__.localize)('Namespace', \"namespace\"),\n [20 /* SymbolKind.Null */]: (0,_nls_js__WEBPACK_IMPORTED_MODULE_4__.localize)('Null', \"null\"),\n [15 /* SymbolKind.Number */]: (0,_nls_js__WEBPACK_IMPORTED_MODULE_4__.localize)('Number', \"number\"),\n [18 /* SymbolKind.Object */]: (0,_nls_js__WEBPACK_IMPORTED_MODULE_4__.localize)('Object', \"object\"),\n [24 /* SymbolKind.Operator */]: (0,_nls_js__WEBPACK_IMPORTED_MODULE_4__.localize)('Operator', \"operator\"),\n [3 /* SymbolKind.Package */]: (0,_nls_js__WEBPACK_IMPORTED_MODULE_4__.localize)('Package', \"package\"),\n [6 /* SymbolKind.Property */]: (0,_nls_js__WEBPACK_IMPORTED_MODULE_4__.localize)('Property', \"property\"),\n [14 /* SymbolKind.String */]: (0,_nls_js__WEBPACK_IMPORTED_MODULE_4__.localize)('String', \"string\"),\n [22 /* SymbolKind.Struct */]: (0,_nls_js__WEBPACK_IMPORTED_MODULE_4__.localize)('Struct', \"struct\"),\n [25 /* SymbolKind.TypeParameter */]: (0,_nls_js__WEBPACK_IMPORTED_MODULE_4__.localize)('TypeParameter', \"type parameter\"),\n [12 /* SymbolKind.Variable */]: (0,_nls_js__WEBPACK_IMPORTED_MODULE_4__.localize)('Variable', \"variable\"),\n};\n/**\n * @internal\n */\nfunction getAriaLabelForSymbol(symbolName, kind) {\n return (0,_nls_js__WEBPACK_IMPORTED_MODULE_4__.localize)('symbolAriaLabel', '{0} ({1})', symbolName, symbolKindNames[kind]);\n}\n/**\n * @internal\n */\nvar SymbolKinds;\n(function (SymbolKinds) {\n const byKind = new Map();\n byKind.set(0 /* SymbolKind.File */, _base_common_codicons_js__WEBPACK_IMPORTED_MODULE_0__.Codicon.symbolFile);\n byKind.set(1 /* SymbolKind.Module */, _base_common_codicons_js__WEBPACK_IMPORTED_MODULE_0__.Codicon.symbolModule);\n byKind.set(2 /* SymbolKind.Namespace */, _base_common_codicons_js__WEBPACK_IMPORTED_MODULE_0__.Codicon.symbolNamespace);\n byKind.set(3 /* SymbolKind.Package */, _base_common_codicons_js__WEBPACK_IMPORTED_MODULE_0__.Codicon.symbolPackage);\n byKind.set(4 /* SymbolKind.Class */, _base_common_codicons_js__WEBPACK_IMPORTED_MODULE_0__.Codicon.symbolClass);\n byKind.set(5 /* SymbolKind.Method */, _base_common_codicons_js__WEBPACK_IMPORTED_MODULE_0__.Codicon.symbolMethod);\n byKind.set(6 /* SymbolKind.Property */, _base_common_codicons_js__WEBPACK_IMPORTED_MODULE_0__.Codicon.symbolProperty);\n byKind.set(7 /* SymbolKind.Field */, _base_common_codicons_js__WEBPACK_IMPORTED_MODULE_0__.Codicon.symbolField);\n byKind.set(8 /* SymbolKind.Constructor */, _base_common_codicons_js__WEBPACK_IMPORTED_MODULE_0__.Codicon.symbolConstructor);\n byKind.set(9 /* SymbolKind.Enum */, _base_common_codicons_js__WEBPACK_IMPORTED_MODULE_0__.Codicon.symbolEnum);\n byKind.set(10 /* SymbolKind.Interface */, _base_common_codicons_js__WEBPACK_IMPORTED_MODULE_0__.Codicon.symbolInterface);\n byKind.set(11 /* SymbolKind.Function */, _base_common_codicons_js__WEBPACK_IMPORTED_MODULE_0__.Codicon.symbolFunction);\n byKind.set(12 /* SymbolKind.Variable */, _base_common_codicons_js__WEBPACK_IMPORTED_MODULE_0__.Codicon.symbolVariable);\n byKind.set(13 /* SymbolKind.Constant */, _base_common_codicons_js__WEBPACK_IMPORTED_MODULE_0__.Codicon.symbolConstant);\n byKind.set(14 /* SymbolKind.String */, _base_common_codicons_js__WEBPACK_IMPORTED_MODULE_0__.Codicon.symbolString);\n byKind.set(15 /* SymbolKind.Number */, _base_common_codicons_js__WEBPACK_IMPORTED_MODULE_0__.Codicon.symbolNumber);\n byKind.set(16 /* SymbolKind.Boolean */, _base_common_codicons_js__WEBPACK_IMPORTED_MODULE_0__.Codicon.symbolBoolean);\n byKind.set(17 /* SymbolKind.Array */, _base_common_codicons_js__WEBPACK_IMPORTED_MODULE_0__.Codicon.symbolArray);\n byKind.set(18 /* SymbolKind.Object */, _base_common_codicons_js__WEBPACK_IMPORTED_MODULE_0__.Codicon.symbolObject);\n byKind.set(19 /* SymbolKind.Key */, _base_common_codicons_js__WEBPACK_IMPORTED_MODULE_0__.Codicon.symbolKey);\n byKind.set(20 /* SymbolKind.Null */, _base_common_codicons_js__WEBPACK_IMPORTED_MODULE_0__.Codicon.symbolNull);\n byKind.set(21 /* SymbolKind.EnumMember */, _base_common_codicons_js__WEBPACK_IMPORTED_MODULE_0__.Codicon.symbolEnumMember);\n byKind.set(22 /* SymbolKind.Struct */, _base_common_codicons_js__WEBPACK_IMPORTED_MODULE_0__.Codicon.symbolStruct);\n byKind.set(23 /* SymbolKind.Event */, _base_common_codicons_js__WEBPACK_IMPORTED_MODULE_0__.Codicon.symbolEvent);\n byKind.set(24 /* SymbolKind.Operator */, _base_common_codicons_js__WEBPACK_IMPORTED_MODULE_0__.Codicon.symbolOperator);\n byKind.set(25 /* SymbolKind.TypeParameter */, _base_common_codicons_js__WEBPACK_IMPORTED_MODULE_0__.Codicon.symbolTypeParameter);\n /**\n * @internal\n */\n function toIcon(kind) {\n let icon = byKind.get(kind);\n if (!icon) {\n console.info('No codicon found for SymbolKind ' + kind);\n icon = _base_common_codicons_js__WEBPACK_IMPORTED_MODULE_0__.Codicon.symbolProperty;\n }\n return icon;\n }\n SymbolKinds.toIcon = toIcon;\n})(SymbolKinds || (SymbolKinds = {}));\n/** @internal */\nclass TextEdit {\n}\nclass FoldingRangeKind {\n /**\n * Returns a {@link FoldingRangeKind} for the given value.\n *\n * @param value of the kind.\n */\n static fromValue(value) {\n switch (value) {\n case 'comment': return FoldingRangeKind.Comment;\n case 'imports': return FoldingRangeKind.Imports;\n case 'region': return FoldingRangeKind.Region;\n }\n return new FoldingRangeKind(value);\n }\n /**\n * Creates a new {@link FoldingRangeKind}.\n *\n * @param value of the kind.\n */\n constructor(value) {\n this.value = value;\n }\n}\n/**\n * Kind for folding range representing a comment. The value of the kind is 'comment'.\n */\nFoldingRangeKind.Comment = new FoldingRangeKind('comment');\n/**\n * Kind for folding range representing a import. The value of the kind is 'imports'.\n */\nFoldingRangeKind.Imports = new FoldingRangeKind('imports');\n/**\n * Kind for folding range representing regions (for example marked by `#region`, `#endregion`).\n * The value of the kind is 'region'.\n */\nFoldingRangeKind.Region = new FoldingRangeKind('region');\nvar NewSymbolNameTag;\n(function (NewSymbolNameTag) {\n NewSymbolNameTag[NewSymbolNameTag[\"AIGenerated\"] = 1] = \"AIGenerated\";\n})(NewSymbolNameTag || (NewSymbolNameTag = {}));\n/**\n * @internal\n */\nvar Command;\n(function (Command) {\n /**\n * @internal\n */\n function is(obj) {\n if (!obj || typeof obj !== 'object') {\n return false;\n }\n return typeof obj.id === 'string' &&\n typeof obj.title === 'string';\n }\n Command.is = is;\n})(Command || (Command = {}));\nvar InlayHintKind;\n(function (InlayHintKind) {\n InlayHintKind[InlayHintKind[\"Type\"] = 1] = \"Type\";\n InlayHintKind[InlayHintKind[\"Parameter\"] = 2] = \"Parameter\";\n})(InlayHintKind || (InlayHintKind = {}));\n/**\n * @internal\n */\nclass LazyTokenizationSupport {\n constructor(createSupport) {\n this.createSupport = createSupport;\n this._tokenizationSupport = null;\n }\n dispose() {\n if (this._tokenizationSupport) {\n this._tokenizationSupport.then((support) => {\n if (support) {\n support.dispose();\n }\n });\n }\n }\n get tokenizationSupport() {\n if (!this._tokenizationSupport) {\n this._tokenizationSupport = this.createSupport();\n }\n return this._tokenizationSupport;\n }\n}\n/**\n * @internal\n */\nconst TokenizationRegistry = new _tokenizationRegistry_js__WEBPACK_IMPORTED_MODULE_3__.TokenizationRegistry();\nvar InlineEditTriggerKind;\n(function (InlineEditTriggerKind) {\n InlineEditTriggerKind[InlineEditTriggerKind[\"Invoke\"] = 0] = \"Invoke\";\n InlineEditTriggerKind[InlineEditTriggerKind[\"Automatic\"] = 1] = \"Automatic\";\n})(InlineEditTriggerKind || (InlineEditTriggerKind = {}));\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/common/languages.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/common/languages/autoIndent.js":
/*!*********************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/common/languages/autoIndent.js ***!
\*********************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ getGoodIndentForLine: () => (/* binding */ getGoodIndentForLine),\n/* harmony export */ getIndentActionForType: () => (/* binding */ getIndentActionForType),\n/* harmony export */ getIndentForEnter: () => (/* binding */ getIndentForEnter),\n/* harmony export */ getIndentMetadata: () => (/* binding */ getIndentMetadata),\n/* harmony export */ getInheritIndentForLine: () => (/* binding */ getInheritIndentForLine)\n/* harmony export */ });\n/* harmony import */ var _base_common_strings_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../base/common/strings.js */ \"./node_modules/monaco-editor/esm/vs/base/common/strings.js\");\n/* harmony import */ var _languageConfiguration_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./languageConfiguration.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/languages/languageConfiguration.js\");\n/* harmony import */ var _supports_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./supports.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/languages/supports.js\");\n/* harmony import */ var _languageConfigurationRegistry_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./languageConfigurationRegistry.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/languages/languageConfigurationRegistry.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n\n\n\n/**\n * Get nearest preceding line which doesn't match unIndentPattern or contains all whitespace.\n * Result:\n * -1: run into the boundary of embedded languages\n * 0: every line above are invalid\n * else: nearest preceding line of the same language\n */\nfunction getPrecedingValidLine(model, lineNumber, indentRulesSupport) {\n const languageId = model.tokenization.getLanguageIdAtPosition(lineNumber, 0);\n if (lineNumber > 1) {\n let lastLineNumber;\n let resultLineNumber = -1;\n for (lastLineNumber = lineNumber - 1; lastLineNumber >= 1; lastLineNumber--) {\n if (model.tokenization.getLanguageIdAtPosition(lastLineNumber, 0) !== languageId) {\n return resultLineNumber;\n }\n const text = model.getLineContent(lastLineNumber);\n if (indentRulesSupport.shouldIgnore(text) || /^\\s+$/.test(text) || text === '') {\n resultLineNumber = lastLineNumber;\n continue;\n }\n return lastLineNumber;\n }\n }\n return -1;\n}\n/**\n * Get inherited indentation from above lines.\n * 1. Find the nearest preceding line which doesn't match unIndentedLinePattern.\n * 2. If this line matches indentNextLinePattern or increaseIndentPattern, it means that the indent level of `lineNumber` should be 1 greater than this line.\n * 3. If this line doesn't match any indent rules\n * a. check whether the line above it matches indentNextLinePattern\n * b. If not, the indent level of this line is the result\n * c. If so, it means the indent of this line is *temporary*, go upward utill we find a line whose indent is not temporary (the same workflow a -> b -> c).\n * 4. Otherwise, we fail to get an inherited indent from aboves. Return null and we should not touch the indent of `lineNumber`\n *\n * This function only return the inherited indent based on above lines, it doesn't check whether current line should decrease or not.\n */\nfunction getInheritIndentForLine(autoIndent, model, lineNumber, honorIntentialIndent = true, languageConfigurationService) {\n if (autoIndent < 4 /* EditorAutoIndentStrategy.Full */) {\n return null;\n }\n const indentRulesSupport = languageConfigurationService.getLanguageConfiguration(model.tokenization.getLanguageId()).indentRulesSupport;\n if (!indentRulesSupport) {\n return null;\n }\n if (lineNumber <= 1) {\n return {\n indentation: '',\n action: null\n };\n }\n // Use no indent if this is the first non-blank line\n for (let priorLineNumber = lineNumber - 1; priorLineNumber > 0; priorLineNumber--) {\n if (model.getLineContent(priorLineNumber) !== '') {\n break;\n }\n if (priorLineNumber === 1) {\n return {\n indentation: '',\n action: null\n };\n }\n }\n const precedingUnIgnoredLine = getPrecedingValidLine(model, lineNumber, indentRulesSupport);\n if (precedingUnIgnoredLine < 0) {\n return null;\n }\n else if (precedingUnIgnoredLine < 1) {\n return {\n indentation: '',\n action: null\n };\n }\n const precedingUnIgnoredLineContent = model.getLineContent(precedingUnIgnoredLine);\n if (indentRulesSupport.shouldIncrease(precedingUnIgnoredLineContent) || indentRulesSupport.shouldIndentNextLine(precedingUnIgnoredLineContent)) {\n return {\n indentation: _base_common_strings_js__WEBPACK_IMPORTED_MODULE_0__.getLeadingWhitespace(precedingUnIgnoredLineContent),\n action: _languageConfiguration_js__WEBPACK_IMPORTED_MODULE_1__.IndentAction.Indent,\n line: precedingUnIgnoredLine\n };\n }\n else if (indentRulesSupport.shouldDecrease(precedingUnIgnoredLineContent)) {\n return {\n indentation: _base_common_strings_js__WEBPACK_IMPORTED_MODULE_0__.getLeadingWhitespace(precedingUnIgnoredLineContent),\n action: null,\n line: precedingUnIgnoredLine\n };\n }\n else {\n // precedingUnIgnoredLine can not be ignored.\n // it doesn't increase indent of following lines\n // it doesn't increase just next line\n // so current line is not affect by precedingUnIgnoredLine\n // and then we should get a correct inheritted indentation from above lines\n if (precedingUnIgnoredLine === 1) {\n return {\n indentation: _base_common_strings_js__WEBPACK_IMPORTED_MODULE_0__.getLeadingWhitespace(model.getLineContent(precedingUnIgnoredLine)),\n action: null,\n line: precedingUnIgnoredLine\n };\n }\n const previousLine = precedingUnIgnoredLine - 1;\n const previousLineIndentMetadata = indentRulesSupport.getIndentMetadata(model.getLineContent(previousLine));\n if (!(previousLineIndentMetadata & (1 /* IndentConsts.INCREASE_MASK */ | 2 /* IndentConsts.DECREASE_MASK */)) &&\n (previousLineIndentMetadata & 4 /* IndentConsts.INDENT_NEXTLINE_MASK */)) {\n let stopLine = 0;\n for (let i = previousLine - 1; i > 0; i--) {\n if (indentRulesSupport.shouldIndentNextLine(model.getLineContent(i))) {\n continue;\n }\n stopLine = i;\n break;\n }\n return {\n indentation: _base_common_strings_js__WEBPACK_IMPORTED_MODULE_0__.getLeadingWhitespace(model.getLineContent(stopLine + 1)),\n action: null,\n line: stopLine + 1\n };\n }\n if (honorIntentialIndent) {\n return {\n indentation: _base_common_strings_js__WEBPACK_IMPORTED_MODULE_0__.getLeadingWhitespace(model.getLineContent(precedingUnIgnoredLine)),\n action: null,\n line: precedingUnIgnoredLine\n };\n }\n else {\n // search from precedingUnIgnoredLine until we find one whose indent is not temporary\n for (let i = precedingUnIgnoredLine; i > 0; i--) {\n const lineContent = model.getLineContent(i);\n if (indentRulesSupport.shouldIncrease(lineContent)) {\n return {\n indentation: _base_common_strings_js__WEBPACK_IMPORTED_MODULE_0__.getLeadingWhitespace(lineContent),\n action: _languageConfiguration_js__WEBPACK_IMPORTED_MODULE_1__.IndentAction.Indent,\n line: i\n };\n }\n else if (indentRulesSupport.shouldIndentNextLine(lineContent)) {\n let stopLine = 0;\n for (let j = i - 1; j > 0; j--) {\n if (indentRulesSupport.shouldIndentNextLine(model.getLineContent(i))) {\n continue;\n }\n stopLine = j;\n break;\n }\n return {\n indentation: _base_common_strings_js__WEBPACK_IMPORTED_MODULE_0__.getLeadingWhitespace(model.getLineContent(stopLine + 1)),\n action: null,\n line: stopLine + 1\n };\n }\n else if (indentRulesSupport.shouldDecrease(lineContent)) {\n return {\n indentation: _base_common_strings_js__WEBPACK_IMPORTED_MODULE_0__.getLeadingWhitespace(lineContent),\n action: null,\n line: i\n };\n }\n }\n return {\n indentation: _base_common_strings_js__WEBPACK_IMPORTED_MODULE_0__.getLeadingWhitespace(model.getLineContent(1)),\n action: null,\n line: 1\n };\n }\n }\n}\nfunction getGoodIndentForLine(autoIndent, virtualModel, languageId, lineNumber, indentConverter, languageConfigurationService) {\n if (autoIndent < 4 /* EditorAutoIndentStrategy.Full */) {\n return null;\n }\n const richEditSupport = languageConfigurationService.getLanguageConfiguration(languageId);\n if (!richEditSupport) {\n return null;\n }\n const indentRulesSupport = languageConfigurationService.getLanguageConfiguration(languageId).indentRulesSupport;\n if (!indentRulesSupport) {\n return null;\n }\n const indent = getInheritIndentForLine(autoIndent, virtualModel, lineNumber, undefined, languageConfigurationService);\n const lineContent = virtualModel.getLineContent(lineNumber);\n if (indent) {\n const inheritLine = indent.line;\n if (inheritLine !== undefined) {\n // Apply enter action as long as there are only whitespace lines between inherited line and this line.\n let shouldApplyEnterRules = true;\n for (let inBetweenLine = inheritLine; inBetweenLine < lineNumber - 1; inBetweenLine++) {\n if (!/^\\s*$/.test(virtualModel.getLineContent(inBetweenLine))) {\n shouldApplyEnterRules = false;\n break;\n }\n }\n if (shouldApplyEnterRules) {\n const enterResult = richEditSupport.onEnter(autoIndent, '', virtualModel.getLineContent(inheritLine), '');\n if (enterResult) {\n let indentation = _base_common_strings_js__WEBPACK_IMPORTED_MODULE_0__.getLeadingWhitespace(virtualModel.getLineContent(inheritLine));\n if (enterResult.removeText) {\n indentation = indentation.substring(0, indentation.length - enterResult.removeText);\n }\n if ((enterResult.indentAction === _languageConfiguration_js__WEBPACK_IMPORTED_MODULE_1__.IndentAction.Indent) ||\n (enterResult.indentAction === _languageConfiguration_js__WEBPACK_IMPORTED_MODULE_1__.IndentAction.IndentOutdent)) {\n indentation = indentConverter.shiftIndent(indentation);\n }\n else if (enterResult.indentAction === _languageConfiguration_js__WEBPACK_IMPORTED_MODULE_1__.IndentAction.Outdent) {\n indentation = indentConverter.unshiftIndent(indentation);\n }\n if (indentRulesSupport.shouldDecrease(lineContent)) {\n indentation = indentConverter.unshiftIndent(indentation);\n }\n if (enterResult.appendText) {\n indentation += enterResult.appendText;\n }\n return _base_common_strings_js__WEBPACK_IMPORTED_MODULE_0__.getLeadingWhitespace(indentation);\n }\n }\n }\n if (indentRulesSupport.shouldDecrease(lineContent)) {\n if (indent.action === _languageConfiguration_js__WEBPACK_IMPORTED_MODULE_1__.IndentAction.Indent) {\n return indent.indentation;\n }\n else {\n return indentConverter.unshiftIndent(indent.indentation);\n }\n }\n else {\n if (indent.action === _languageConfiguration_js__WEBPACK_IMPORTED_MODULE_1__.IndentAction.Indent) {\n return indentConverter.shiftIndent(indent.indentation);\n }\n else {\n return indent.indentation;\n }\n }\n }\n return null;\n}\nfunction getIndentForEnter(autoIndent, model, range, indentConverter, languageConfigurationService) {\n if (autoIndent < 4 /* EditorAutoIndentStrategy.Full */) {\n return null;\n }\n model.tokenization.forceTokenization(range.startLineNumber);\n const lineTokens = model.tokenization.getLineTokens(range.startLineNumber);\n const scopedLineTokens = (0,_supports_js__WEBPACK_IMPORTED_MODULE_2__.createScopedLineTokens)(lineTokens, range.startColumn - 1);\n const scopedLineText = scopedLineTokens.getLineContent();\n let embeddedLanguage = false;\n let beforeEnterText;\n if (scopedLineTokens.firstCharOffset > 0 && lineTokens.getLanguageId(0) !== scopedLineTokens.languageId) {\n // we are in the embeded language content\n embeddedLanguage = true; // if embeddedLanguage is true, then we don't touch the indentation of current line\n beforeEnterText = scopedLineText.substr(0, range.startColumn - 1 - scopedLineTokens.firstCharOffset);\n }\n else {\n beforeEnterText = lineTokens.getLineContent().substring(0, range.startColumn - 1);\n }\n let afterEnterText;\n if (range.isEmpty()) {\n afterEnterText = scopedLineText.substr(range.startColumn - 1 - scopedLineTokens.firstCharOffset);\n }\n else {\n const endScopedLineTokens = (0,_languageConfigurationRegistry_js__WEBPACK_IMPORTED_MODULE_3__.getScopedLineTokens)(model, range.endLineNumber, range.endColumn);\n afterEnterText = endScopedLineTokens.getLineContent().substr(range.endColumn - 1 - scopedLineTokens.firstCharOffset);\n }\n const indentRulesSupport = languageConfigurationService.getLanguageConfiguration(scopedLineTokens.languageId).indentRulesSupport;\n if (!indentRulesSupport) {\n return null;\n }\n const beforeEnterResult = beforeEnterText;\n const beforeEnterIndent = _base_common_strings_js__WEBPACK_IMPORTED_MODULE_0__.getLeadingWhitespace(beforeEnterText);\n const virtualModel = {\n tokenization: {\n getLineTokens: (lineNumber) => {\n return model.tokenization.getLineTokens(lineNumber);\n },\n getLanguageId: () => {\n return model.getLanguageId();\n },\n getLanguageIdAtPosition: (lineNumber, column) => {\n return model.getLanguageIdAtPosition(lineNumber, column);\n },\n },\n getLineContent: (lineNumber) => {\n if (lineNumber === range.startLineNumber) {\n return beforeEnterResult;\n }\n else {\n return model.getLineContent(lineNumber);\n }\n }\n };\n const currentLineIndent = _base_common_strings_js__WEBPACK_IMPORTED_MODULE_0__.getLeadingWhitespace(lineTokens.getLineContent());\n const afterEnterAction = getInheritIndentForLine(autoIndent, virtualModel, range.startLineNumber + 1, undefined, languageConfigurationService);\n if (!afterEnterAction) {\n const beforeEnter = embeddedLanguage ? currentLineIndent : beforeEnterIndent;\n return {\n beforeEnter: beforeEnter,\n afterEnter: beforeEnter\n };\n }\n let afterEnterIndent = embeddedLanguage ? currentLineIndent : afterEnterAction.indentation;\n if (afterEnterAction.action === _languageConfiguration_js__WEBPACK_IMPORTED_MODULE_1__.IndentAction.Indent) {\n afterEnterIndent = indentConverter.shiftIndent(afterEnterIndent);\n }\n if (indentRulesSupport.shouldDecrease(afterEnterText)) {\n afterEnterIndent = indentConverter.unshiftIndent(afterEnterIndent);\n }\n return {\n beforeEnter: embeddedLanguage ? currentLineIndent : beforeEnterIndent,\n afterEnter: afterEnterIndent\n };\n}\n/**\n * We should always allow intentional indentation. It means, if users change the indentation of `lineNumber` and the content of\n * this line doesn't match decreaseIndentPattern, we should not adjust the indentation.\n */\nfunction getIndentActionForType(autoIndent, model, range, ch, indentConverter, languageConfigurationService) {\n if (autoIndent < 4 /* EditorAutoIndentStrategy.Full */) {\n return null;\n }\n const scopedLineTokens = (0,_languageConfigurationRegistry_js__WEBPACK_IMPORTED_MODULE_3__.getScopedLineTokens)(model, range.startLineNumber, range.startColumn);\n if (scopedLineTokens.firstCharOffset) {\n // this line has mixed languages and indentation rules will not work\n return null;\n }\n const indentRulesSupport = languageConfigurationService.getLanguageConfiguration(scopedLineTokens.languageId).indentRulesSupport;\n if (!indentRulesSupport) {\n return null;\n }\n const scopedLineText = scopedLineTokens.getLineContent();\n const beforeTypeText = scopedLineText.substr(0, range.startColumn - 1 - scopedLineTokens.firstCharOffset);\n // selection support\n let afterTypeText;\n if (range.isEmpty()) {\n afterTypeText = scopedLineText.substr(range.startColumn - 1 - scopedLineTokens.firstCharOffset);\n }\n else {\n const endScopedLineTokens = (0,_languageConfigurationRegistry_js__WEBPACK_IMPORTED_MODULE_3__.getScopedLineTokens)(model, range.endLineNumber, range.endColumn);\n afterTypeText = endScopedLineTokens.getLineContent().substr(range.endColumn - 1 - scopedLineTokens.firstCharOffset);\n }\n // If previous content already matches decreaseIndentPattern, it means indentation of this line should already be adjusted\n // Users might change the indentation by purpose and we should honor that instead of readjusting.\n if (!indentRulesSupport.shouldDecrease(beforeTypeText + afterTypeText) && indentRulesSupport.shouldDecrease(beforeTypeText + ch + afterTypeText)) {\n // after typing `ch`, the content matches decreaseIndentPattern, we should adjust the indent to a good manner.\n // 1. Get inherited indent action\n const r = getInheritIndentForLine(autoIndent, model, range.startLineNumber, false, languageConfigurationService);\n if (!r) {\n return null;\n }\n let indentation = r.indentation;\n if (r.action !== _languageConfiguration_js__WEBPACK_IMPORTED_MODULE_1__.IndentAction.Indent) {\n indentation = indentConverter.unshiftIndent(indentation);\n }\n return indentation;\n }\n return null;\n}\nfunction getIndentMetadata(model, lineNumber, languageConfigurationService) {\n const indentRulesSupport = languageConfigurationService.getLanguageConfiguration(model.getLanguageId()).indentRulesSupport;\n if (!indentRulesSupport) {\n return null;\n }\n if (lineNumber < 1 || lineNumber > model.getLineCount()) {\n return null;\n }\n return indentRulesSupport.getIndentMetadata(model.getLineContent(lineNumber));\n}\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/common/languages/autoIndent.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/common/languages/defaultDocumentColorsComputer.js":
/*!****************************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/common/languages/defaultDocumentColorsComputer.js ***!
\****************************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ computeDefaultDocumentColors: () => (/* binding */ computeDefaultDocumentColors)\n/* harmony export */ });\n/* harmony import */ var _base_common_color_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../base/common/color.js */ \"./node_modules/monaco-editor/esm/vs/base/common/color.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\nfunction _parseCaptureGroups(captureGroups) {\n const values = [];\n for (const captureGroup of captureGroups) {\n const parsedNumber = Number(captureGroup);\n if (parsedNumber || parsedNumber === 0 && captureGroup.replace(/\\s/g, '') !== '') {\n values.push(parsedNumber);\n }\n }\n return values;\n}\nfunction _toIColor(r, g, b, a) {\n return {\n red: r / 255,\n blue: b / 255,\n green: g / 255,\n alpha: a\n };\n}\nfunction _findRange(model, match) {\n const index = match.index;\n const length = match[0].length;\n if (!index) {\n return;\n }\n const startPosition = model.positionAt(index);\n const range = {\n startLineNumber: startPosition.lineNumber,\n startColumn: startPosition.column,\n endLineNumber: startPosition.lineNumber,\n endColumn: startPosition.column + length\n };\n return range;\n}\nfunction _findHexColorInformation(range, hexValue) {\n if (!range) {\n return;\n }\n const parsedHexColor = _base_common_color_js__WEBPACK_IMPORTED_MODULE_0__.Color.Format.CSS.parseHex(hexValue);\n if (!parsedHexColor) {\n return;\n }\n return {\n range: range,\n color: _toIColor(parsedHexColor.rgba.r, parsedHexColor.rgba.g, parsedHexColor.rgba.b, parsedHexColor.rgba.a)\n };\n}\nfunction _findRGBColorInformation(range, matches, isAlpha) {\n if (!range || matches.length !== 1) {\n return;\n }\n const match = matches[0];\n const captureGroups = match.values();\n const parsedRegex = _parseCaptureGroups(captureGroups);\n return {\n range: range,\n color: _toIColor(parsedRegex[0], parsedRegex[1], parsedRegex[2], isAlpha ? parsedRegex[3] : 1)\n };\n}\nfunction _findHSLColorInformation(range, matches, isAlpha) {\n if (!range || matches.length !== 1) {\n return;\n }\n const match = matches[0];\n const captureGroups = match.values();\n const parsedRegex = _parseCaptureGroups(captureGroups);\n const colorEquivalent = new _base_common_color_js__WEBPACK_IMPORTED_MODULE_0__.Color(new _base_common_color_js__WEBPACK_IMPORTED_MODULE_0__.HSLA(parsedRegex[0], parsedRegex[1] / 100, parsedRegex[2] / 100, isAlpha ? parsedRegex[3] : 1));\n return {\n range: range,\n color: _toIColor(colorEquivalent.rgba.r, colorEquivalent.rgba.g, colorEquivalent.rgba.b, colorEquivalent.rgba.a)\n };\n}\nfunction _findMatches(model, regex) {\n if (typeof model === 'string') {\n return [...model.matchAll(regex)];\n }\n else {\n return model.findMatches(regex);\n }\n}\nfunction computeColors(model) {\n const result = [];\n // Early validation for RGB and HSL\n const initialValidationRegex = /\\b(rgb|rgba|hsl|hsla)(\\([0-9\\s,.\\%]*\\))|(#)([A-Fa-f0-9]{3})\\b|(#)([A-Fa-f0-9]{4})\\b|(#)([A-Fa-f0-9]{6})\\b|(#)([A-Fa-f0-9]{8})\\b/gm;\n const initialValidationMatches = _findMatches(model, initialValidationRegex);\n // Potential colors have been found, validate the parameters\n if (initialValidationMatches.length > 0) {\n for (const initialMatch of initialValidationMatches) {\n const initialCaptureGroups = initialMatch.filter(captureGroup => captureGroup !== undefined);\n const colorScheme = initialCaptureGroups[1];\n const colorParameters = initialCaptureGroups[2];\n if (!colorParameters) {\n continue;\n }\n let colorInformation;\n if (colorScheme === 'rgb') {\n const regexParameters = /^\\(\\s*(25[0-5]|2[0-4][0-9]|1[0-9]{2}|[1-9][0-9]|[0-9])\\s*,\\s*(25[0-5]|2[0-4][0-9]|1[0-9]{2}|[1-9][0-9]|[0-9])\\s*,\\s*(25[0-5]|2[0-4][0-9]|1[0-9]{2}|[1-9][0-9]|[0-9])\\s*\\)$/gm;\n colorInformation = _findRGBColorInformation(_findRange(model, initialMatch), _findMatches(colorParameters, regexParameters), false);\n }\n else if (colorScheme === 'rgba') {\n const regexParameters = /^\\(\\s*(25[0-5]|2[0-4][0-9]|1[0-9]{2}|[1-9][0-9]|[0-9])\\s*,\\s*(25[0-5]|2[0-4][0-9]|1[0-9]{2}|[1-9][0-9]|[0-9])\\s*,\\s*(25[0-5]|2[0-4][0-9]|1[0-9]{2}|[1-9][0-9]|[0-9])\\s*,\\s*(0[.][0-9]+|[.][0-9]+|[01][.]|[01])\\s*\\)$/gm;\n colorInformation = _findRGBColorInformation(_findRange(model, initialMatch), _findMatches(colorParameters, regexParameters), true);\n }\n else if (colorScheme === 'hsl') {\n const regexParameters = /^\\(\\s*(36[0]|3[0-5][0-9]|[12][0-9][0-9]|[1-9]?[0-9])\\s*,\\s*(100|\\d{1,2}[.]\\d*|\\d{1,2})%\\s*,\\s*(100|\\d{1,2}[.]\\d*|\\d{1,2})%\\s*\\)$/gm;\n colorInformation = _findHSLColorInformation(_findRange(model, initialMatch), _findMatches(colorParameters, regexParameters), false);\n }\n else if (colorScheme === 'hsla') {\n const regexParameters = /^\\(\\s*(36[0]|3[0-5][0-9]|[12][0-9][0-9]|[1-9]?[0-9])\\s*,\\s*(100|\\d{1,2}[.]\\d*|\\d{1,2})%\\s*,\\s*(100|\\d{1,2}[.]\\d*|\\d{1,2})%\\s*,\\s*(0[.][0-9]+|[.][0-9]+|[01][.]|[01])\\s*\\)$/gm;\n colorInformation = _findHSLColorInformation(_findRange(model, initialMatch), _findMatches(colorParameters, regexParameters), true);\n }\n else if (colorScheme === '#') {\n colorInformation = _findHexColorInformation(_findRange(model, initialMatch), colorScheme + colorParameters);\n }\n if (colorInformation) {\n result.push(colorInformation);\n }\n }\n }\n return result;\n}\n/**\n * Returns an array of all default document colors in the provided document\n */\nfunction computeDefaultDocumentColors(model) {\n if (!model || typeof model.getValue !== 'function' || typeof model.positionAt !== 'function') {\n // Unknown caller!\n return [];\n }\n return computeColors(model);\n}\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/common/languages/defaultDocumentColorsComputer.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/common/languages/enterAction.js":
/*!**********************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/common/languages/enterAction.js ***!
\**********************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ getEnterAction: () => (/* binding */ getEnterAction)\n/* harmony export */ });\n/* harmony import */ var _languageConfiguration_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./languageConfiguration.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/languages/languageConfiguration.js\");\n/* harmony import */ var _languageConfigurationRegistry_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./languageConfigurationRegistry.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/languages/languageConfigurationRegistry.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n\nfunction getEnterAction(autoIndent, model, range, languageConfigurationService) {\n const scopedLineTokens = (0,_languageConfigurationRegistry_js__WEBPACK_IMPORTED_MODULE_1__.getScopedLineTokens)(model, range.startLineNumber, range.startColumn);\n const richEditSupport = languageConfigurationService.getLanguageConfiguration(scopedLineTokens.languageId);\n if (!richEditSupport) {\n return null;\n }\n const scopedLineText = scopedLineTokens.getLineContent();\n const beforeEnterText = scopedLineText.substr(0, range.startColumn - 1 - scopedLineTokens.firstCharOffset);\n // selection support\n let afterEnterText;\n if (range.isEmpty()) {\n afterEnterText = scopedLineText.substr(range.startColumn - 1 - scopedLineTokens.firstCharOffset);\n }\n else {\n const endScopedLineTokens = (0,_languageConfigurationRegistry_js__WEBPACK_IMPORTED_MODULE_1__.getScopedLineTokens)(model, range.endLineNumber, range.endColumn);\n afterEnterText = endScopedLineTokens.getLineContent().substr(range.endColumn - 1 - scopedLineTokens.firstCharOffset);\n }\n let previousLineText = '';\n if (range.startLineNumber > 1 && scopedLineTokens.firstCharOffset === 0) {\n // This is not the first line and the entire line belongs to this mode\n const oneLineAboveScopedLineTokens = (0,_languageConfigurationRegistry_js__WEBPACK_IMPORTED_MODULE_1__.getScopedLineTokens)(model, range.startLineNumber - 1);\n if (oneLineAboveScopedLineTokens.languageId === scopedLineTokens.languageId) {\n // The line above ends with text belonging to the same mode\n previousLineText = oneLineAboveScopedLineTokens.getLineContent();\n }\n }\n const enterResult = richEditSupport.onEnter(autoIndent, previousLineText, beforeEnterText, afterEnterText);\n if (!enterResult) {\n return null;\n }\n const indentAction = enterResult.indentAction;\n let appendText = enterResult.appendText;\n const removeText = enterResult.removeText || 0;\n // Here we add `\\t` to appendText first because enterAction is leveraging appendText and removeText to change indentation.\n if (!appendText) {\n if ((indentAction === _languageConfiguration_js__WEBPACK_IMPORTED_MODULE_0__.IndentAction.Indent) ||\n (indentAction === _languageConfiguration_js__WEBPACK_IMPORTED_MODULE_0__.IndentAction.IndentOutdent)) {\n appendText = '\\t';\n }\n else {\n appendText = '';\n }\n }\n else if (indentAction === _languageConfiguration_js__WEBPACK_IMPORTED_MODULE_0__.IndentAction.Indent) {\n appendText = '\\t' + appendText;\n }\n let indentation = (0,_languageConfigurationRegistry_js__WEBPACK_IMPORTED_MODULE_1__.getIndentationAtPosition)(model, range.startLineNumber, range.startColumn);\n if (removeText) {\n indentation = indentation.substring(0, indentation.length - removeText);\n }\n return {\n indentAction: indentAction,\n appendText: appendText,\n removeText: removeText,\n indentation: indentation\n };\n}\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/common/languages/enterAction.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/common/languages/language.js":
/*!*******************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/common/languages/language.js ***!
\*******************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ ILanguageService: () => (/* binding */ ILanguageService)\n/* harmony export */ });\n/* harmony import */ var _platform_instantiation_common_instantiation_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../platform/instantiation/common/instantiation.js */ \"./node_modules/monaco-editor/esm/vs/platform/instantiation/common/instantiation.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\nconst ILanguageService = (0,_platform_instantiation_common_instantiation_js__WEBPACK_IMPORTED_MODULE_0__.createDecorator)('languageService');\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/common/languages/language.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/common/languages/languageConfiguration.js":
/*!********************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/common/languages/languageConfiguration.js ***!
\********************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ AutoClosingPairs: () => (/* binding */ AutoClosingPairs),\n/* harmony export */ IndentAction: () => (/* binding */ IndentAction),\n/* harmony export */ StandardAutoClosingPairConditional: () => (/* binding */ StandardAutoClosingPairConditional)\n/* harmony export */ });\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n/**\n * Describes what to do with the indentation when pressing Enter.\n */\nvar IndentAction;\n(function (IndentAction) {\n /**\n * Insert new line and copy the previous line's indentation.\n */\n IndentAction[IndentAction[\"None\"] = 0] = \"None\";\n /**\n * Insert new line and indent once (relative to the previous line's indentation).\n */\n IndentAction[IndentAction[\"Indent\"] = 1] = \"Indent\";\n /**\n * Insert two new lines:\n * - the first one indented which will hold the cursor\n * - the second one at the same indentation level\n */\n IndentAction[IndentAction[\"IndentOutdent\"] = 2] = \"IndentOutdent\";\n /**\n * Insert new line and outdent once (relative to the previous line's indentation).\n */\n IndentAction[IndentAction[\"Outdent\"] = 3] = \"Outdent\";\n})(IndentAction || (IndentAction = {}));\n/**\n * @internal\n */\nclass StandardAutoClosingPairConditional {\n constructor(source) {\n this._neutralCharacter = null;\n this._neutralCharacterSearched = false;\n this.open = source.open;\n this.close = source.close;\n // initially allowed in all tokens\n this._inString = true;\n this._inComment = true;\n this._inRegEx = true;\n if (Array.isArray(source.notIn)) {\n for (let i = 0, len = source.notIn.length; i < len; i++) {\n const notIn = source.notIn[i];\n switch (notIn) {\n case 'string':\n this._inString = false;\n break;\n case 'comment':\n this._inComment = false;\n break;\n case 'regex':\n this._inRegEx = false;\n break;\n }\n }\n }\n }\n isOK(standardToken) {\n switch (standardToken) {\n case 0 /* StandardTokenType.Other */:\n return true;\n case 1 /* StandardTokenType.Comment */:\n return this._inComment;\n case 2 /* StandardTokenType.String */:\n return this._inString;\n case 3 /* StandardTokenType.RegEx */:\n return this._inRegEx;\n }\n }\n shouldAutoClose(context, column) {\n // Always complete on empty line\n if (context.getTokenCount() === 0) {\n return true;\n }\n const tokenIndex = context.findTokenIndexAtOffset(column - 2);\n const standardTokenType = context.getStandardTokenType(tokenIndex);\n return this.isOK(standardTokenType);\n }\n _findNeutralCharacterInRange(fromCharCode, toCharCode) {\n for (let charCode = fromCharCode; charCode <= toCharCode; charCode++) {\n const character = String.fromCharCode(charCode);\n if (!this.open.includes(character) && !this.close.includes(character)) {\n return character;\n }\n }\n return null;\n }\n /**\n * Find a character in the range [0-9a-zA-Z] that does not appear in the open or close\n */\n findNeutralCharacter() {\n if (!this._neutralCharacterSearched) {\n this._neutralCharacterSearched = true;\n if (!this._neutralCharacter) {\n this._neutralCharacter = this._findNeutralCharacterInRange(48 /* CharCode.Digit0 */, 57 /* CharCode.Digit9 */);\n }\n if (!this._neutralCharacter) {\n this._neutralCharacter = this._findNeutralCharacterInRange(97 /* CharCode.a */, 122 /* CharCode.z */);\n }\n if (!this._neutralCharacter) {\n this._neutralCharacter = this._findNeutralCharacterInRange(65 /* CharCode.A */, 90 /* CharCode.Z */);\n }\n }\n return this._neutralCharacter;\n }\n}\n/**\n * @internal\n */\nclass AutoClosingPairs {\n constructor(autoClosingPairs) {\n this.autoClosingPairsOpenByStart = new Map();\n this.autoClosingPairsOpenByEnd = new Map();\n this.autoClosingPairsCloseByStart = new Map();\n this.autoClosingPairsCloseByEnd = new Map();\n this.autoClosingPairsCloseSingleChar = new Map();\n for (const pair of autoClosingPairs) {\n appendEntry(this.autoClosingPairsOpenByStart, pair.open.charAt(0), pair);\n appendEntry(this.autoClosingPairsOpenByEnd, pair.open.charAt(pair.open.length - 1), pair);\n appendEntry(this.autoClosingPairsCloseByStart, pair.close.charAt(0), pair);\n appendEntry(this.autoClosingPairsCloseByEnd, pair.close.charAt(pair.close.length - 1), pair);\n if (pair.close.length === 1 && pair.open.length === 1) {\n appendEntry(this.autoClosingPairsCloseSingleChar, pair.close, pair);\n }\n }\n }\n}\nfunction appendEntry(target, key, value) {\n if (target.has(key)) {\n target.get(key).push(value);\n }\n else {\n target.set(key, [value]);\n }\n}\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/common/languages/languageConfiguration.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/common/languages/languageConfigurationRegistry.js":
/*!****************************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/common/languages/languageConfigurationRegistry.js ***!
\****************************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ ILanguageConfigurationService: () => (/* binding */ ILanguageConfigurationService),\n/* harmony export */ LanguageConfigurationChangeEvent: () => (/* binding */ LanguageConfigurationChangeEvent),\n/* harmony export */ LanguageConfigurationRegistry: () => (/* binding */ LanguageConfigurationRegistry),\n/* harmony export */ LanguageConfigurationService: () => (/* binding */ LanguageConfigurationService),\n/* harmony export */ LanguageConfigurationServiceChangeEvent: () => (/* binding */ LanguageConfigurationServiceChangeEvent),\n/* harmony export */ ResolvedLanguageConfiguration: () => (/* binding */ ResolvedLanguageConfiguration),\n/* harmony export */ getIndentationAtPosition: () => (/* binding */ getIndentationAtPosition),\n/* harmony export */ getScopedLineTokens: () => (/* binding */ getScopedLineTokens)\n/* harmony export */ });\n/* harmony import */ var _base_common_event_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../base/common/event.js */ \"./node_modules/monaco-editor/esm/vs/base/common/event.js\");\n/* harmony import */ var _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../base/common/lifecycle.js */ \"./node_modules/monaco-editor/esm/vs/base/common/lifecycle.js\");\n/* harmony import */ var _base_common_strings_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../base/common/strings.js */ \"./node_modules/monaco-editor/esm/vs/base/common/strings.js\");\n/* harmony import */ var _core_wordHelper_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../core/wordHelper.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/core/wordHelper.js\");\n/* harmony import */ var _languageConfiguration_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./languageConfiguration.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/languages/languageConfiguration.js\");\n/* harmony import */ var _supports_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./supports.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/languages/supports.js\");\n/* harmony import */ var _supports_characterPair_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ./supports/characterPair.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/languages/supports/characterPair.js\");\n/* harmony import */ var _supports_electricCharacter_js__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ./supports/electricCharacter.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/languages/supports/electricCharacter.js\");\n/* harmony import */ var _supports_indentRules_js__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ./supports/indentRules.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/languages/supports/indentRules.js\");\n/* harmony import */ var _supports_onEnter_js__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ./supports/onEnter.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/languages/supports/onEnter.js\");\n/* harmony import */ var _supports_richEditBrackets_js__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! ./supports/richEditBrackets.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/languages/supports/richEditBrackets.js\");\n/* harmony import */ var _platform_instantiation_common_instantiation_js__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(/*! ../../../platform/instantiation/common/instantiation.js */ \"./node_modules/monaco-editor/esm/vs/platform/instantiation/common/instantiation.js\");\n/* harmony import */ var _platform_configuration_common_configuration_js__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(/*! ../../../platform/configuration/common/configuration.js */ \"./node_modules/monaco-editor/esm/vs/platform/configuration/common/configuration.js\");\n/* harmony import */ var _language_js__WEBPACK_IMPORTED_MODULE_13__ = __webpack_require__(/*! ./language.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/languages/language.js\");\n/* harmony import */ var _platform_instantiation_common_extensions_js__WEBPACK_IMPORTED_MODULE_14__ = __webpack_require__(/*! ../../../platform/instantiation/common/extensions.js */ \"./node_modules/monaco-editor/esm/vs/platform/instantiation/common/extensions.js\");\n/* harmony import */ var _modesRegistry_js__WEBPACK_IMPORTED_MODULE_15__ = __webpack_require__(/*! ./modesRegistry.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/languages/modesRegistry.js\");\n/* harmony import */ var _supports_languageBracketsConfiguration_js__WEBPACK_IMPORTED_MODULE_16__ = __webpack_require__(/*! ./supports/languageBracketsConfiguration.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/languages/supports/languageBracketsConfiguration.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\nvar __decorate = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\n return c > 3 && r && Object.defineProperty(target, key, r), r;\n};\nvar __param = (undefined && undefined.__param) || function (paramIndex, decorator) {\n return function (target, key) { decorator(target, key, paramIndex); }\n};\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nclass LanguageConfigurationServiceChangeEvent {\n constructor(languageId) {\n this.languageId = languageId;\n }\n affects(languageId) {\n return !this.languageId ? true : this.languageId === languageId;\n }\n}\nconst ILanguageConfigurationService = (0,_platform_instantiation_common_instantiation_js__WEBPACK_IMPORTED_MODULE_11__.createDecorator)('languageConfigurationService');\nlet LanguageConfigurationService = class LanguageConfigurationService extends _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_1__.Disposable {\n constructor(configurationService, languageService) {\n super();\n this.configurationService = configurationService;\n this.languageService = languageService;\n this._registry = this._register(new LanguageConfigurationRegistry());\n this.onDidChangeEmitter = this._register(new _base_common_event_js__WEBPACK_IMPORTED_MODULE_0__.Emitter());\n this.onDidChange = this.onDidChangeEmitter.event;\n this.configurations = new Map();\n const languageConfigKeys = new Set(Object.values(customizedLanguageConfigKeys));\n this._register(this.configurationService.onDidChangeConfiguration((e) => {\n const globalConfigChanged = e.change.keys.some((k) => languageConfigKeys.has(k));\n const localConfigChanged = e.change.overrides\n .filter(([overrideLangName, keys]) => keys.some((k) => languageConfigKeys.has(k)))\n .map(([overrideLangName]) => overrideLangName);\n if (globalConfigChanged) {\n this.configurations.clear();\n this.onDidChangeEmitter.fire(new LanguageConfigurationServiceChangeEvent(undefined));\n }\n else {\n for (const languageId of localConfigChanged) {\n if (this.languageService.isRegisteredLanguageId(languageId)) {\n this.configurations.delete(languageId);\n this.onDidChangeEmitter.fire(new LanguageConfigurationServiceChangeEvent(languageId));\n }\n }\n }\n }));\n this._register(this._registry.onDidChange((e) => {\n this.configurations.delete(e.languageId);\n this.onDidChangeEmitter.fire(new LanguageConfigurationServiceChangeEvent(e.languageId));\n }));\n }\n register(languageId, configuration, priority) {\n return this._registry.register(languageId, configuration, priority);\n }\n getLanguageConfiguration(languageId) {\n let result = this.configurations.get(languageId);\n if (!result) {\n result = computeConfig(languageId, this._registry, this.configurationService, this.languageService);\n this.configurations.set(languageId, result);\n }\n return result;\n }\n};\nLanguageConfigurationService = __decorate([\n __param(0, _platform_configuration_common_configuration_js__WEBPACK_IMPORTED_MODULE_12__.IConfigurationService),\n __param(1, _language_js__WEBPACK_IMPORTED_MODULE_13__.ILanguageService)\n], LanguageConfigurationService);\n\nfunction computeConfig(languageId, registry, configurationService, languageService) {\n let languageConfig = registry.getLanguageConfiguration(languageId);\n if (!languageConfig) {\n if (!languageService.isRegisteredLanguageId(languageId)) {\n // this happens for the null language, which can be returned by monarch.\n // Instead of throwing an error, we just return a default config.\n return new ResolvedLanguageConfiguration(languageId, {});\n }\n languageConfig = new ResolvedLanguageConfiguration(languageId, {});\n }\n const customizedConfig = getCustomizedLanguageConfig(languageConfig.languageId, configurationService);\n const data = combineLanguageConfigurations([languageConfig.underlyingConfig, customizedConfig]);\n const config = new ResolvedLanguageConfiguration(languageConfig.languageId, data);\n return config;\n}\nconst customizedLanguageConfigKeys = {\n brackets: 'editor.language.brackets',\n colorizedBracketPairs: 'editor.language.colorizedBracketPairs'\n};\nfunction getCustomizedLanguageConfig(languageId, configurationService) {\n const brackets = configurationService.getValue(customizedLanguageConfigKeys.brackets, {\n overrideIdentifier: languageId,\n });\n const colorizedBracketPairs = configurationService.getValue(customizedLanguageConfigKeys.colorizedBracketPairs, {\n overrideIdentifier: languageId,\n });\n return {\n brackets: validateBracketPairs(brackets),\n colorizedBracketPairs: validateBracketPairs(colorizedBracketPairs),\n };\n}\nfunction validateBracketPairs(data) {\n if (!Array.isArray(data)) {\n return undefined;\n }\n return data.map(pair => {\n if (!Array.isArray(pair) || pair.length !== 2) {\n return undefined;\n }\n return [pair[0], pair[1]];\n }).filter((p) => !!p);\n}\nfunction getIndentationAtPosition(model, lineNumber, column) {\n const lineText = model.getLineContent(lineNumber);\n let indentation = _base_common_strings_js__WEBPACK_IMPORTED_MODULE_2__.getLeadingWhitespace(lineText);\n if (indentation.length > column - 1) {\n indentation = indentation.substring(0, column - 1);\n }\n return indentation;\n}\nfunction getScopedLineTokens(model, lineNumber, columnNumber) {\n model.tokenization.forceTokenization(lineNumber);\n const lineTokens = model.tokenization.getLineTokens(lineNumber);\n const column = (typeof columnNumber === 'undefined' ? model.getLineMaxColumn(lineNumber) - 1 : columnNumber - 1);\n return (0,_supports_js__WEBPACK_IMPORTED_MODULE_5__.createScopedLineTokens)(lineTokens, column);\n}\nclass ComposedLanguageConfiguration {\n constructor(languageId) {\n this.languageId = languageId;\n this._resolved = null;\n this._entries = [];\n this._order = 0;\n this._resolved = null;\n }\n register(configuration, priority) {\n const entry = new LanguageConfigurationContribution(configuration, priority, ++this._order);\n this._entries.push(entry);\n this._resolved = null;\n return (0,_base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_1__.toDisposable)(() => {\n for (let i = 0; i < this._entries.length; i++) {\n if (this._entries[i] === entry) {\n this._entries.splice(i, 1);\n this._resolved = null;\n break;\n }\n }\n });\n }\n getResolvedConfiguration() {\n if (!this._resolved) {\n const config = this._resolve();\n if (config) {\n this._resolved = new ResolvedLanguageConfiguration(this.languageId, config);\n }\n }\n return this._resolved;\n }\n _resolve() {\n if (this._entries.length === 0) {\n return null;\n }\n this._entries.sort(LanguageConfigurationContribution.cmp);\n return combineLanguageConfigurations(this._entries.map(e => e.configuration));\n }\n}\nfunction combineLanguageConfigurations(configs) {\n let result = {\n comments: undefined,\n brackets: undefined,\n wordPattern: undefined,\n indentationRules: undefined,\n onEnterRules: undefined,\n autoClosingPairs: undefined,\n surroundingPairs: undefined,\n autoCloseBefore: undefined,\n folding: undefined,\n colorizedBracketPairs: undefined,\n __electricCharacterSupport: undefined,\n };\n for (const entry of configs) {\n result = {\n comments: entry.comments || result.comments,\n brackets: entry.brackets || result.brackets,\n wordPattern: entry.wordPattern || result.wordPattern,\n indentationRules: entry.indentationRules || result.indentationRules,\n onEnterRules: entry.onEnterRules || result.onEnterRules,\n autoClosingPairs: entry.autoClosingPairs || result.autoClosingPairs,\n surroundingPairs: entry.surroundingPairs || result.surroundingPairs,\n autoCloseBefore: entry.autoCloseBefore || result.autoCloseBefore,\n folding: entry.folding || result.folding,\n colorizedBracketPairs: entry.colorizedBracketPairs || result.colorizedBracketPairs,\n __electricCharacterSupport: entry.__electricCharacterSupport || result.__electricCharacterSupport,\n };\n }\n return result;\n}\nclass LanguageConfigurationContribution {\n constructor(configuration, priority, order) {\n this.configuration = configuration;\n this.priority = priority;\n this.order = order;\n }\n static cmp(a, b) {\n if (a.priority === b.priority) {\n // higher order last\n return a.order - b.order;\n }\n // higher priority last\n return a.priority - b.priority;\n }\n}\nclass LanguageConfigurationChangeEvent {\n constructor(languageId) {\n this.languageId = languageId;\n }\n}\nclass LanguageConfigurationRegistry extends _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_1__.Disposable {\n constructor() {\n super();\n this._entries = new Map();\n this._onDidChange = this._register(new _base_common_event_js__WEBPACK_IMPORTED_MODULE_0__.Emitter());\n this.onDidChange = this._onDidChange.event;\n this._register(this.register(_modesRegistry_js__WEBPACK_IMPORTED_MODULE_15__.PLAINTEXT_LANGUAGE_ID, {\n brackets: [\n ['(', ')'],\n ['[', ']'],\n ['{', '}'],\n ],\n surroundingPairs: [\n { open: '{', close: '}' },\n { open: '[', close: ']' },\n { open: '(', close: ')' },\n { open: '<', close: '>' },\n { open: '\\\"', close: '\\\"' },\n { open: '\\'', close: '\\'' },\n { open: '`', close: '`' },\n ],\n colorizedBracketPairs: [],\n folding: {\n offSide: true\n }\n }, 0));\n }\n /**\n * @param priority Use a higher number for higher priority\n */\n register(languageId, configuration, priority = 0) {\n let entries = this._entries.get(languageId);\n if (!entries) {\n entries = new ComposedLanguageConfiguration(languageId);\n this._entries.set(languageId, entries);\n }\n const disposable = entries.register(configuration, priority);\n this._onDidChange.fire(new LanguageConfigurationChangeEvent(languageId));\n return (0,_base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_1__.toDisposable)(() => {\n disposable.dispose();\n this._onDidChange.fire(new LanguageConfigurationChangeEvent(languageId));\n });\n }\n getLanguageConfiguration(languageId) {\n const entries = this._entries.get(languageId);\n return (entries === null || entries === void 0 ? void 0 : entries.getResolvedConfiguration()) || null;\n }\n}\n/**\n * Immutable.\n*/\nclass ResolvedLanguageConfiguration {\n constructor(languageId, underlyingConfig) {\n this.languageId = languageId;\n this.underlyingConfig = underlyingConfig;\n this._brackets = null;\n this._electricCharacter = null;\n this._onEnterSupport =\n this.underlyingConfig.brackets ||\n this.underlyingConfig.indentationRules ||\n this.underlyingConfig.onEnterRules\n ? new _supports_onEnter_js__WEBPACK_IMPORTED_MODULE_9__.OnEnterSupport(this.underlyingConfig)\n : null;\n this.comments = ResolvedLanguageConfiguration._handleComments(this.underlyingConfig);\n this.characterPair = new _supports_characterPair_js__WEBPACK_IMPORTED_MODULE_6__.CharacterPairSupport(this.underlyingConfig);\n this.wordDefinition = this.underlyingConfig.wordPattern || _core_wordHelper_js__WEBPACK_IMPORTED_MODULE_3__.DEFAULT_WORD_REGEXP;\n this.indentationRules = this.underlyingConfig.indentationRules;\n if (this.underlyingConfig.indentationRules) {\n this.indentRulesSupport = new _supports_indentRules_js__WEBPACK_IMPORTED_MODULE_8__.IndentRulesSupport(this.underlyingConfig.indentationRules);\n }\n else {\n this.indentRulesSupport = null;\n }\n this.foldingRules = this.underlyingConfig.folding || {};\n this.bracketsNew = new _supports_languageBracketsConfiguration_js__WEBPACK_IMPORTED_MODULE_16__.LanguageBracketsConfiguration(languageId, this.underlyingConfig);\n }\n getWordDefinition() {\n return (0,_core_wordHelper_js__WEBPACK_IMPORTED_MODULE_3__.ensureValidWordDefinition)(this.wordDefinition);\n }\n get brackets() {\n if (!this._brackets && this.underlyingConfig.brackets) {\n this._brackets = new _supports_richEditBrackets_js__WEBPACK_IMPORTED_MODULE_10__.RichEditBrackets(this.languageId, this.underlyingConfig.brackets);\n }\n return this._brackets;\n }\n get electricCharacter() {\n if (!this._electricCharacter) {\n this._electricCharacter = new _supports_electricCharacter_js__WEBPACK_IMPORTED_MODULE_7__.BracketElectricCharacterSupport(this.brackets);\n }\n return this._electricCharacter;\n }\n onEnter(autoIndent, previousLineText, beforeEnterText, afterEnterText) {\n if (!this._onEnterSupport) {\n return null;\n }\n return this._onEnterSupport.onEnter(autoIndent, previousLineText, beforeEnterText, afterEnterText);\n }\n getAutoClosingPairs() {\n return new _languageConfiguration_js__WEBPACK_IMPORTED_MODULE_4__.AutoClosingPairs(this.characterPair.getAutoClosingPairs());\n }\n getAutoCloseBeforeSet(forQuotes) {\n return this.characterPair.getAutoCloseBeforeSet(forQuotes);\n }\n getSurroundingPairs() {\n return this.characterPair.getSurroundingPairs();\n }\n static _handleComments(conf) {\n const commentRule = conf.comments;\n if (!commentRule) {\n return null;\n }\n // comment configuration\n const comments = {};\n if (commentRule.lineComment) {\n comments.lineCommentToken = commentRule.lineComment;\n }\n if (commentRule.blockComment) {\n const [blockStart, blockEnd] = commentRule.blockComment;\n comments.blockCommentStartToken = blockStart;\n comments.blockCommentEndToken = blockEnd;\n }\n return comments;\n }\n}\n(0,_platform_instantiation_common_extensions_js__WEBPACK_IMPORTED_MODULE_14__.registerSingleton)(ILanguageConfigurationService, LanguageConfigurationService, 1 /* InstantiationType.Delayed */);\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/common/languages/languageConfigurationRegistry.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/common/languages/linkComputer.js":
/*!***********************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/common/languages/linkComputer.js ***!
\***********************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ LinkComputer: () => (/* binding */ LinkComputer),\n/* harmony export */ StateMachine: () => (/* binding */ StateMachine),\n/* harmony export */ computeLinks: () => (/* binding */ computeLinks)\n/* harmony export */ });\n/* harmony import */ var _core_characterClassifier_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../core/characterClassifier.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/core/characterClassifier.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\nclass Uint8Matrix {\n constructor(rows, cols, defaultValue) {\n const data = new Uint8Array(rows * cols);\n for (let i = 0, len = rows * cols; i < len; i++) {\n data[i] = defaultValue;\n }\n this._data = data;\n this.rows = rows;\n this.cols = cols;\n }\n get(row, col) {\n return this._data[row * this.cols + col];\n }\n set(row, col, value) {\n this._data[row * this.cols + col] = value;\n }\n}\nclass StateMachine {\n constructor(edges) {\n let maxCharCode = 0;\n let maxState = 0 /* State.Invalid */;\n for (let i = 0, len = edges.length; i < len; i++) {\n const [from, chCode, to] = edges[i];\n if (chCode > maxCharCode) {\n maxCharCode = chCode;\n }\n if (from > maxState) {\n maxState = from;\n }\n if (to > maxState) {\n maxState = to;\n }\n }\n maxCharCode++;\n maxState++;\n const states = new Uint8Matrix(maxState, maxCharCode, 0 /* State.Invalid */);\n for (let i = 0, len = edges.length; i < len; i++) {\n const [from, chCode, to] = edges[i];\n states.set(from, chCode, to);\n }\n this._states = states;\n this._maxCharCode = maxCharCode;\n }\n nextState(currentState, chCode) {\n if (chCode < 0 || chCode >= this._maxCharCode) {\n return 0 /* State.Invalid */;\n }\n return this._states.get(currentState, chCode);\n }\n}\n// State machine for http:// or https:// or file://\nlet _stateMachine = null;\nfunction getStateMachine() {\n if (_stateMachine === null) {\n _stateMachine = new StateMachine([\n [1 /* State.Start */, 104 /* CharCode.h */, 2 /* State.H */],\n [1 /* State.Start */, 72 /* CharCode.H */, 2 /* State.H */],\n [1 /* State.Start */, 102 /* CharCode.f */, 6 /* State.F */],\n [1 /* State.Start */, 70 /* CharCode.F */, 6 /* State.F */],\n [2 /* State.H */, 116 /* CharCode.t */, 3 /* State.HT */],\n [2 /* State.H */, 84 /* CharCode.T */, 3 /* State.HT */],\n [3 /* State.HT */, 116 /* CharCode.t */, 4 /* State.HTT */],\n [3 /* State.HT */, 84 /* CharCode.T */, 4 /* State.HTT */],\n [4 /* State.HTT */, 112 /* CharCode.p */, 5 /* State.HTTP */],\n [4 /* State.HTT */, 80 /* CharCode.P */, 5 /* State.HTTP */],\n [5 /* State.HTTP */, 115 /* CharCode.s */, 9 /* State.BeforeColon */],\n [5 /* State.HTTP */, 83 /* CharCode.S */, 9 /* State.BeforeColon */],\n [5 /* State.HTTP */, 58 /* CharCode.Colon */, 10 /* State.AfterColon */],\n [6 /* State.F */, 105 /* CharCode.i */, 7 /* State.FI */],\n [6 /* State.F */, 73 /* CharCode.I */, 7 /* State.FI */],\n [7 /* State.FI */, 108 /* CharCode.l */, 8 /* State.FIL */],\n [7 /* State.FI */, 76 /* CharCode.L */, 8 /* State.FIL */],\n [8 /* State.FIL */, 101 /* CharCode.e */, 9 /* State.BeforeColon */],\n [8 /* State.FIL */, 69 /* CharCode.E */, 9 /* State.BeforeColon */],\n [9 /* State.BeforeColon */, 58 /* CharCode.Colon */, 10 /* State.AfterColon */],\n [10 /* State.AfterColon */, 47 /* CharCode.Slash */, 11 /* State.AlmostThere */],\n [11 /* State.AlmostThere */, 47 /* CharCode.Slash */, 12 /* State.End */],\n ]);\n }\n return _stateMachine;\n}\nlet _classifier = null;\nfunction getClassifier() {\n if (_classifier === null) {\n _classifier = new _core_characterClassifier_js__WEBPACK_IMPORTED_MODULE_0__.CharacterClassifier(0 /* CharacterClass.None */);\n // allow-any-unicode-next-line\n const FORCE_TERMINATION_CHARACTERS = ' \\t<>\\'\\\"、。。、,.:;‘〈「『〔([{「」}])〕』」〉’`~…';\n for (let i = 0; i < FORCE_TERMINATION_CHARACTERS.length; i++) {\n _classifier.set(FORCE_TERMINATION_CHARACTERS.charCodeAt(i), 1 /* CharacterClass.ForceTermination */);\n }\n const CANNOT_END_WITH_CHARACTERS = '.,;:';\n for (let i = 0; i < CANNOT_END_WITH_CHARACTERS.length; i++) {\n _classifier.set(CANNOT_END_WITH_CHARACTERS.charCodeAt(i), 2 /* CharacterClass.CannotEndIn */);\n }\n }\n return _classifier;\n}\nclass LinkComputer {\n static _createLink(classifier, line, lineNumber, linkBeginIndex, linkEndIndex) {\n // Do not allow to end link in certain characters...\n let lastIncludedCharIndex = linkEndIndex - 1;\n do {\n const chCode = line.charCodeAt(lastIncludedCharIndex);\n const chClass = classifier.get(chCode);\n if (chClass !== 2 /* CharacterClass.CannotEndIn */) {\n break;\n }\n lastIncludedCharIndex--;\n } while (lastIncludedCharIndex > linkBeginIndex);\n // Handle links enclosed in parens, square brackets and curlys.\n if (linkBeginIndex > 0) {\n const charCodeBeforeLink = line.charCodeAt(linkBeginIndex - 1);\n const lastCharCodeInLink = line.charCodeAt(lastIncludedCharIndex);\n if ((charCodeBeforeLink === 40 /* CharCode.OpenParen */ && lastCharCodeInLink === 41 /* CharCode.CloseParen */)\n || (charCodeBeforeLink === 91 /* CharCode.OpenSquareBracket */ && lastCharCodeInLink === 93 /* CharCode.CloseSquareBracket */)\n || (charCodeBeforeLink === 123 /* CharCode.OpenCurlyBrace */ && lastCharCodeInLink === 125 /* CharCode.CloseCurlyBrace */)) {\n // Do not end in ) if ( is before the link start\n // Do not end in ] if [ is before the link start\n // Do not end in } if { is before the link start\n lastIncludedCharIndex--;\n }\n }\n return {\n range: {\n startLineNumber: lineNumber,\n startColumn: linkBeginIndex + 1,\n endLineNumber: lineNumber,\n endColumn: lastIncludedCharIndex + 2\n },\n url: line.substring(linkBeginIndex, lastIncludedCharIndex + 1)\n };\n }\n static computeLinks(model, stateMachine = getStateMachine()) {\n const classifier = getClassifier();\n const result = [];\n for (let i = 1, lineCount = model.getLineCount(); i <= lineCount; i++) {\n const line = model.getLineContent(i);\n const len = line.length;\n let j = 0;\n let linkBeginIndex = 0;\n let linkBeginChCode = 0;\n let state = 1 /* State.Start */;\n let hasOpenParens = false;\n let hasOpenSquareBracket = false;\n let inSquareBrackets = false;\n let hasOpenCurlyBracket = false;\n while (j < len) {\n let resetStateMachine = false;\n const chCode = line.charCodeAt(j);\n if (state === 13 /* State.Accept */) {\n let chClass;\n switch (chCode) {\n case 40 /* CharCode.OpenParen */:\n hasOpenParens = true;\n chClass = 0 /* CharacterClass.None */;\n break;\n case 41 /* CharCode.CloseParen */:\n chClass = (hasOpenParens ? 0 /* CharacterClass.None */ : 1 /* CharacterClass.ForceTermination */);\n break;\n case 91 /* CharCode.OpenSquareBracket */:\n inSquareBrackets = true;\n hasOpenSquareBracket = true;\n chClass = 0 /* CharacterClass.None */;\n break;\n case 93 /* CharCode.CloseSquareBracket */:\n inSquareBrackets = false;\n chClass = (hasOpenSquareBracket ? 0 /* CharacterClass.None */ : 1 /* CharacterClass.ForceTermination */);\n break;\n case 123 /* CharCode.OpenCurlyBrace */:\n hasOpenCurlyBracket = true;\n chClass = 0 /* CharacterClass.None */;\n break;\n case 125 /* CharCode.CloseCurlyBrace */:\n chClass = (hasOpenCurlyBracket ? 0 /* CharacterClass.None */ : 1 /* CharacterClass.ForceTermination */);\n break;\n // The following three rules make it that ' or \" or ` are allowed inside links\n // only if the link is wrapped by some other quote character\n case 39 /* CharCode.SingleQuote */:\n case 34 /* CharCode.DoubleQuote */:\n case 96 /* CharCode.BackTick */:\n if (linkBeginChCode === chCode) {\n chClass = 1 /* CharacterClass.ForceTermination */;\n }\n else if (linkBeginChCode === 39 /* CharCode.SingleQuote */ || linkBeginChCode === 34 /* CharCode.DoubleQuote */ || linkBeginChCode === 96 /* CharCode.BackTick */) {\n chClass = 0 /* CharacterClass.None */;\n }\n else {\n chClass = 1 /* CharacterClass.ForceTermination */;\n }\n break;\n case 42 /* CharCode.Asterisk */:\n // `*` terminates a link if the link began with `*`\n chClass = (linkBeginChCode === 42 /* CharCode.Asterisk */) ? 1 /* CharacterClass.ForceTermination */ : 0 /* CharacterClass.None */;\n break;\n case 124 /* CharCode.Pipe */:\n // `|` terminates a link if the link began with `|`\n chClass = (linkBeginChCode === 124 /* CharCode.Pipe */) ? 1 /* CharacterClass.ForceTermination */ : 0 /* CharacterClass.None */;\n break;\n case 32 /* CharCode.Space */:\n // ` ` allow space in between [ and ]\n chClass = (inSquareBrackets ? 0 /* CharacterClass.None */ : 1 /* CharacterClass.ForceTermination */);\n break;\n default:\n chClass = classifier.get(chCode);\n }\n // Check if character terminates link\n if (chClass === 1 /* CharacterClass.ForceTermination */) {\n result.push(LinkComputer._createLink(classifier, line, i, linkBeginIndex, j));\n resetStateMachine = true;\n }\n }\n else if (state === 12 /* State.End */) {\n let chClass;\n if (chCode === 91 /* CharCode.OpenSquareBracket */) {\n // Allow for the authority part to contain ipv6 addresses which contain [ and ]\n hasOpenSquareBracket = true;\n chClass = 0 /* CharacterClass.None */;\n }\n else {\n chClass = classifier.get(chCode);\n }\n // Check if character terminates link\n if (chClass === 1 /* CharacterClass.ForceTermination */) {\n resetStateMachine = true;\n }\n else {\n state = 13 /* State.Accept */;\n }\n }\n else {\n state = stateMachine.nextState(state, chCode);\n if (state === 0 /* State.Invalid */) {\n resetStateMachine = true;\n }\n }\n if (resetStateMachine) {\n state = 1 /* State.Start */;\n hasOpenParens = false;\n hasOpenSquareBracket = false;\n hasOpenCurlyBracket = false;\n // Record where the link started\n linkBeginIndex = j + 1;\n linkBeginChCode = chCode;\n }\n j++;\n }\n if (state === 13 /* State.Accept */) {\n result.push(LinkComputer._createLink(classifier, line, i, linkBeginIndex, len));\n }\n }\n return result;\n }\n}\n/**\n * Returns an array of all links contains in the provided\n * document. *Note* that this operation is computational\n * expensive and should not run in the UI thread.\n */\nfunction computeLinks(model) {\n if (!model || typeof model.getLineCount !== 'function' || typeof model.getLineContent !== 'function') {\n // Unknown caller!\n return [];\n }\n return LinkComputer.computeLinks(model);\n}\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/common/languages/linkComputer.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/common/languages/modesRegistry.js":
/*!************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/common/languages/modesRegistry.js ***!
\************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ EditorModesRegistry: () => (/* binding */ EditorModesRegistry),\n/* harmony export */ Extensions: () => (/* binding */ Extensions),\n/* harmony export */ ModesRegistry: () => (/* binding */ ModesRegistry),\n/* harmony export */ PLAINTEXT_EXTENSION: () => (/* binding */ PLAINTEXT_EXTENSION),\n/* harmony export */ PLAINTEXT_LANGUAGE_ID: () => (/* binding */ PLAINTEXT_LANGUAGE_ID)\n/* harmony export */ });\n/* harmony import */ var _nls_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../nls.js */ \"./node_modules/monaco-editor/esm/vs/nls.js\");\n/* harmony import */ var _base_common_event_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../base/common/event.js */ \"./node_modules/monaco-editor/esm/vs/base/common/event.js\");\n/* harmony import */ var _platform_registry_common_platform_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../platform/registry/common/platform.js */ \"./node_modules/monaco-editor/esm/vs/platform/registry/common/platform.js\");\n/* harmony import */ var _base_common_mime_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../../base/common/mime.js */ \"./node_modules/monaco-editor/esm/vs/base/common/mime.js\");\n/* harmony import */ var _platform_configuration_common_configurationRegistry_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../../platform/configuration/common/configurationRegistry.js */ \"./node_modules/monaco-editor/esm/vs/platform/configuration/common/configurationRegistry.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n\n\n\n\n// Define extension point ids\nconst Extensions = {\n ModesRegistry: 'editor.modesRegistry'\n};\nclass EditorModesRegistry {\n constructor() {\n this._onDidChangeLanguages = new _base_common_event_js__WEBPACK_IMPORTED_MODULE_1__.Emitter();\n this.onDidChangeLanguages = this._onDidChangeLanguages.event;\n this._languages = [];\n }\n registerLanguage(def) {\n this._languages.push(def);\n this._onDidChangeLanguages.fire(undefined);\n return {\n dispose: () => {\n for (let i = 0, len = this._languages.length; i < len; i++) {\n if (this._languages[i] === def) {\n this._languages.splice(i, 1);\n return;\n }\n }\n }\n };\n }\n getLanguages() {\n return this._languages;\n }\n}\nconst ModesRegistry = new EditorModesRegistry();\n_platform_registry_common_platform_js__WEBPACK_IMPORTED_MODULE_2__.Registry.add(Extensions.ModesRegistry, ModesRegistry);\nconst PLAINTEXT_LANGUAGE_ID = 'plaintext';\nconst PLAINTEXT_EXTENSION = '.txt';\nModesRegistry.registerLanguage({\n id: PLAINTEXT_LANGUAGE_ID,\n extensions: [PLAINTEXT_EXTENSION],\n aliases: [_nls_js__WEBPACK_IMPORTED_MODULE_0__.localize('plainText.alias', \"Plain Text\"), 'text'],\n mimetypes: [_base_common_mime_js__WEBPACK_IMPORTED_MODULE_3__.Mimes.text]\n});\n_platform_registry_common_platform_js__WEBPACK_IMPORTED_MODULE_2__.Registry.as(_platform_configuration_common_configurationRegistry_js__WEBPACK_IMPORTED_MODULE_4__.Extensions.Configuration)\n .registerDefaultConfigurations([{\n overrides: {\n '[plaintext]': {\n 'editor.unicodeHighlight.ambiguousCharacters': false,\n 'editor.unicodeHighlight.invisibleCharacters': false\n }\n }\n }]);\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/common/languages/modesRegistry.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/common/languages/nullTokenize.js":
/*!***********************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/common/languages/nullTokenize.js ***!
\***********************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ NullState: () => (/* binding */ NullState),\n/* harmony export */ nullTokenize: () => (/* binding */ nullTokenize),\n/* harmony export */ nullTokenizeEncoded: () => (/* binding */ nullTokenizeEncoded)\n/* harmony export */ });\n/* harmony import */ var _languages_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../languages.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/languages.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\nconst NullState = new class {\n clone() {\n return this;\n }\n equals(other) {\n return (this === other);\n }\n};\nfunction nullTokenize(languageId, state) {\n return new _languages_js__WEBPACK_IMPORTED_MODULE_0__.TokenizationResult([new _languages_js__WEBPACK_IMPORTED_MODULE_0__.Token(0, '', languageId)], state);\n}\nfunction nullTokenizeEncoded(languageId, state) {\n const tokens = new Uint32Array(2);\n tokens[0] = 0;\n tokens[1] = ((languageId << 0 /* MetadataConsts.LANGUAGEID_OFFSET */)\n | (0 /* StandardTokenType.Other */ << 8 /* MetadataConsts.TOKEN_TYPE_OFFSET */)\n | (0 /* FontStyle.None */ << 11 /* MetadataConsts.FONT_STYLE_OFFSET */)\n | (1 /* ColorId.DefaultForeground */ << 15 /* MetadataConsts.FOREGROUND_OFFSET */)\n | (2 /* ColorId.DefaultBackground */ << 24 /* MetadataConsts.BACKGROUND_OFFSET */)) >>> 0;\n return new _languages_js__WEBPACK_IMPORTED_MODULE_0__.EncodedTokenizationResult(tokens, state === null ? NullState : state);\n}\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/common/languages/nullTokenize.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/common/languages/supports.js":
/*!*******************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/common/languages/supports.js ***!
\*******************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ ScopedLineTokens: () => (/* binding */ ScopedLineTokens),\n/* harmony export */ createScopedLineTokens: () => (/* binding */ createScopedLineTokens),\n/* harmony export */ ignoreBracketsInToken: () => (/* binding */ ignoreBracketsInToken)\n/* harmony export */ });\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\nfunction createScopedLineTokens(context, offset) {\n const tokenCount = context.getCount();\n const tokenIndex = context.findTokenIndexAtOffset(offset);\n const desiredLanguageId = context.getLanguageId(tokenIndex);\n let lastTokenIndex = tokenIndex;\n while (lastTokenIndex + 1 < tokenCount && context.getLanguageId(lastTokenIndex + 1) === desiredLanguageId) {\n lastTokenIndex++;\n }\n let firstTokenIndex = tokenIndex;\n while (firstTokenIndex > 0 && context.getLanguageId(firstTokenIndex - 1) === desiredLanguageId) {\n firstTokenIndex--;\n }\n return new ScopedLineTokens(context, desiredLanguageId, firstTokenIndex, lastTokenIndex + 1, context.getStartOffset(firstTokenIndex), context.getEndOffset(lastTokenIndex));\n}\nclass ScopedLineTokens {\n constructor(actual, languageId, firstTokenIndex, lastTokenIndex, firstCharOffset, lastCharOffset) {\n this._scopedLineTokensBrand = undefined;\n this._actual = actual;\n this.languageId = languageId;\n this._firstTokenIndex = firstTokenIndex;\n this._lastTokenIndex = lastTokenIndex;\n this.firstCharOffset = firstCharOffset;\n this._lastCharOffset = lastCharOffset;\n }\n getLineContent() {\n const actualLineContent = this._actual.getLineContent();\n return actualLineContent.substring(this.firstCharOffset, this._lastCharOffset);\n }\n getActualLineContentBefore(offset) {\n const actualLineContent = this._actual.getLineContent();\n return actualLineContent.substring(0, this.firstCharOffset + offset);\n }\n getTokenCount() {\n return this._lastTokenIndex - this._firstTokenIndex;\n }\n findTokenIndexAtOffset(offset) {\n return this._actual.findTokenIndexAtOffset(offset + this.firstCharOffset) - this._firstTokenIndex;\n }\n getStandardTokenType(tokenIndex) {\n return this._actual.getStandardTokenType(tokenIndex + this._firstTokenIndex);\n }\n}\nfunction ignoreBracketsInToken(standardTokenType) {\n return (standardTokenType & 3 /* IgnoreBracketsInTokens.value */) !== 0;\n}\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/common/languages/supports.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/common/languages/supports/characterPair.js":
/*!*********************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/common/languages/supports/characterPair.js ***!
\*********************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ CharacterPairSupport: () => (/* binding */ CharacterPairSupport)\n/* harmony export */ });\n/* harmony import */ var _languageConfiguration_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../languageConfiguration.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/languages/languageConfiguration.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\nclass CharacterPairSupport {\n constructor(config) {\n if (config.autoClosingPairs) {\n this._autoClosingPairs = config.autoClosingPairs.map(el => new _languageConfiguration_js__WEBPACK_IMPORTED_MODULE_0__.StandardAutoClosingPairConditional(el));\n }\n else if (config.brackets) {\n this._autoClosingPairs = config.brackets.map(b => new _languageConfiguration_js__WEBPACK_IMPORTED_MODULE_0__.StandardAutoClosingPairConditional({ open: b[0], close: b[1] }));\n }\n else {\n this._autoClosingPairs = [];\n }\n if (config.__electricCharacterSupport && config.__electricCharacterSupport.docComment) {\n const docComment = config.__electricCharacterSupport.docComment;\n // IDocComment is legacy, only partially supported\n this._autoClosingPairs.push(new _languageConfiguration_js__WEBPACK_IMPORTED_MODULE_0__.StandardAutoClosingPairConditional({ open: docComment.open, close: docComment.close || '' }));\n }\n this._autoCloseBeforeForQuotes = typeof config.autoCloseBefore === 'string' ? config.autoCloseBefore : CharacterPairSupport.DEFAULT_AUTOCLOSE_BEFORE_LANGUAGE_DEFINED_QUOTES;\n this._autoCloseBeforeForBrackets = typeof config.autoCloseBefore === 'string' ? config.autoCloseBefore : CharacterPairSupport.DEFAULT_AUTOCLOSE_BEFORE_LANGUAGE_DEFINED_BRACKETS;\n this._surroundingPairs = config.surroundingPairs || this._autoClosingPairs;\n }\n getAutoClosingPairs() {\n return this._autoClosingPairs;\n }\n getAutoCloseBeforeSet(forQuotes) {\n return (forQuotes ? this._autoCloseBeforeForQuotes : this._autoCloseBeforeForBrackets);\n }\n getSurroundingPairs() {\n return this._surroundingPairs;\n }\n}\nCharacterPairSupport.DEFAULT_AUTOCLOSE_BEFORE_LANGUAGE_DEFINED_QUOTES = ';:.,=}])> \\n\\t';\nCharacterPairSupport.DEFAULT_AUTOCLOSE_BEFORE_LANGUAGE_DEFINED_BRACKETS = '\\'\"`;:.,=}])> \\n\\t';\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/common/languages/supports/characterPair.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/common/languages/supports/electricCharacter.js":
/*!*************************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/common/languages/supports/electricCharacter.js ***!
\*************************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ BracketElectricCharacterSupport: () => (/* binding */ BracketElectricCharacterSupport)\n/* harmony export */ });\n/* harmony import */ var _base_common_arrays_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../../base/common/arrays.js */ \"./node_modules/monaco-editor/esm/vs/base/common/arrays.js\");\n/* harmony import */ var _supports_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../supports.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/languages/supports.js\");\n/* harmony import */ var _richEditBrackets_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./richEditBrackets.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/languages/supports/richEditBrackets.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n\n\nclass BracketElectricCharacterSupport {\n constructor(richEditBrackets) {\n this._richEditBrackets = richEditBrackets;\n }\n getElectricCharacters() {\n const result = [];\n if (this._richEditBrackets) {\n for (const bracket of this._richEditBrackets.brackets) {\n for (const close of bracket.close) {\n const lastChar = close.charAt(close.length - 1);\n result.push(lastChar);\n }\n }\n }\n return (0,_base_common_arrays_js__WEBPACK_IMPORTED_MODULE_0__.distinct)(result);\n }\n onElectricCharacter(character, context, column) {\n if (!this._richEditBrackets || this._richEditBrackets.brackets.length === 0) {\n return null;\n }\n const tokenIndex = context.findTokenIndexAtOffset(column - 1);\n if ((0,_supports_js__WEBPACK_IMPORTED_MODULE_1__.ignoreBracketsInToken)(context.getStandardTokenType(tokenIndex))) {\n return null;\n }\n const reversedBracketRegex = this._richEditBrackets.reversedRegex;\n const text = context.getLineContent().substring(0, column - 1) + character;\n const r = _richEditBrackets_js__WEBPACK_IMPORTED_MODULE_2__.BracketsUtils.findPrevBracketInRange(reversedBracketRegex, 1, text, 0, text.length);\n if (!r) {\n return null;\n }\n const bracketText = text.substring(r.startColumn - 1, r.endColumn - 1).toLowerCase();\n const isOpen = this._richEditBrackets.textIsOpenBracket[bracketText];\n if (isOpen) {\n return null;\n }\n const textBeforeBracket = context.getActualLineContentBefore(r.startColumn - 1);\n if (!/^\\s*$/.test(textBeforeBracket)) {\n // There is other text on the line before the bracket\n return null;\n }\n return {\n matchOpenBracket: bracketText\n };\n }\n}\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/common/languages/supports/electricCharacter.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/common/languages/supports/indentRules.js":
/*!*******************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/common/languages/supports/indentRules.js ***!
\*******************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ IndentRulesSupport: () => (/* binding */ IndentRulesSupport)\n/* harmony export */ });\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\nfunction resetGlobalRegex(reg) {\n if (reg.global) {\n reg.lastIndex = 0;\n }\n return true;\n}\nclass IndentRulesSupport {\n constructor(indentationRules) {\n this._indentationRules = indentationRules;\n }\n shouldIncrease(text) {\n if (this._indentationRules) {\n if (this._indentationRules.increaseIndentPattern && resetGlobalRegex(this._indentationRules.increaseIndentPattern) && this._indentationRules.increaseIndentPattern.test(text)) {\n return true;\n }\n // if (this._indentationRules.indentNextLinePattern && this._indentationRules.indentNextLinePattern.test(text)) {\n // \treturn true;\n // }\n }\n return false;\n }\n shouldDecrease(text) {\n if (this._indentationRules && this._indentationRules.decreaseIndentPattern && resetGlobalRegex(this._indentationRules.decreaseIndentPattern) && this._indentationRules.decreaseIndentPattern.test(text)) {\n return true;\n }\n return false;\n }\n shouldIndentNextLine(text) {\n if (this._indentationRules && this._indentationRules.indentNextLinePattern && resetGlobalRegex(this._indentationRules.indentNextLinePattern) && this._indentationRules.indentNextLinePattern.test(text)) {\n return true;\n }\n return false;\n }\n shouldIgnore(text) {\n // the text matches `unIndentedLinePattern`\n if (this._indentationRules && this._indentationRules.unIndentedLinePattern && resetGlobalRegex(this._indentationRules.unIndentedLinePattern) && this._indentationRules.unIndentedLinePattern.test(text)) {\n return true;\n }\n return false;\n }\n getIndentMetadata(text) {\n let ret = 0;\n if (this.shouldIncrease(text)) {\n ret += 1 /* IndentConsts.INCREASE_MASK */;\n }\n if (this.shouldDecrease(text)) {\n ret += 2 /* IndentConsts.DECREASE_MASK */;\n }\n if (this.shouldIndentNextLine(text)) {\n ret += 4 /* IndentConsts.INDENT_NEXTLINE_MASK */;\n }\n if (this.shouldIgnore(text)) {\n ret += 8 /* IndentConsts.UNINDENT_MASK */;\n }\n return ret;\n }\n}\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/common/languages/supports/indentRules.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/common/languages/supports/inplaceReplaceSupport.js":
/*!*****************************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/common/languages/supports/inplaceReplaceSupport.js ***!
\*****************************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ BasicInplaceReplace: () => (/* binding */ BasicInplaceReplace)\n/* harmony export */ });\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\nclass BasicInplaceReplace {\n constructor() {\n this._defaultValueSet = [\n ['true', 'false'],\n ['True', 'False'],\n ['Private', 'Public', 'Friend', 'ReadOnly', 'Partial', 'Protected', 'WriteOnly'],\n ['public', 'protected', 'private'],\n ];\n }\n navigateValueSet(range1, text1, range2, text2, up) {\n if (range1 && text1) {\n const result = this.doNavigateValueSet(text1, up);\n if (result) {\n return {\n range: range1,\n value: result\n };\n }\n }\n if (range2 && text2) {\n const result = this.doNavigateValueSet(text2, up);\n if (result) {\n return {\n range: range2,\n value: result\n };\n }\n }\n return null;\n }\n doNavigateValueSet(text, up) {\n const numberResult = this.numberReplace(text, up);\n if (numberResult !== null) {\n return numberResult;\n }\n return this.textReplace(text, up);\n }\n numberReplace(value, up) {\n const precision = Math.pow(10, value.length - (value.lastIndexOf('.') + 1));\n let n1 = Number(value);\n const n2 = parseFloat(value);\n if (!isNaN(n1) && !isNaN(n2) && n1 === n2) {\n if (n1 === 0 && !up) {\n return null; // don't do negative\n //\t\t\t} else if(n1 === 9 && up) {\n //\t\t\t\treturn null; // don't insert 10 into a number\n }\n else {\n n1 = Math.floor(n1 * precision);\n n1 += up ? precision : -precision;\n return String(n1 / precision);\n }\n }\n return null;\n }\n textReplace(value, up) {\n return this.valueSetsReplace(this._defaultValueSet, value, up);\n }\n valueSetsReplace(valueSets, value, up) {\n let result = null;\n for (let i = 0, len = valueSets.length; result === null && i < len; i++) {\n result = this.valueSetReplace(valueSets[i], value, up);\n }\n return result;\n }\n valueSetReplace(valueSet, value, up) {\n let idx = valueSet.indexOf(value);\n if (idx >= 0) {\n idx += up ? +1 : -1;\n if (idx < 0) {\n idx = valueSet.length - 1;\n }\n else {\n idx %= valueSet.length;\n }\n return valueSet[idx];\n }\n return null;\n }\n}\nBasicInplaceReplace.INSTANCE = new BasicInplaceReplace();\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/common/languages/supports/inplaceReplaceSupport.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/common/languages/supports/languageBracketsConfiguration.js":
/*!*************************************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/common/languages/supports/languageBracketsConfiguration.js ***!
\*************************************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ BracketKindBase: () => (/* binding */ BracketKindBase),\n/* harmony export */ ClosingBracketKind: () => (/* binding */ ClosingBracketKind),\n/* harmony export */ LanguageBracketsConfiguration: () => (/* binding */ LanguageBracketsConfiguration),\n/* harmony export */ OpeningBracketKind: () => (/* binding */ OpeningBracketKind)\n/* harmony export */ });\n/* harmony import */ var _base_common_cache_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../../base/common/cache.js */ \"./node_modules/monaco-editor/esm/vs/base/common/cache.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n/**\n * Captures all bracket related configurations for a single language.\n * Immutable.\n*/\nclass LanguageBracketsConfiguration {\n constructor(languageId, config) {\n this.languageId = languageId;\n const bracketPairs = config.brackets ? filterValidBrackets(config.brackets) : [];\n const openingBracketInfos = new _base_common_cache_js__WEBPACK_IMPORTED_MODULE_0__.CachedFunction((bracket) => {\n const closing = new Set();\n return {\n info: new OpeningBracketKind(this, bracket, closing),\n closing,\n };\n });\n const closingBracketInfos = new _base_common_cache_js__WEBPACK_IMPORTED_MODULE_0__.CachedFunction((bracket) => {\n const opening = new Set();\n const openingColorized = new Set();\n return {\n info: new ClosingBracketKind(this, bracket, opening, openingColorized),\n opening,\n openingColorized,\n };\n });\n for (const [open, close] of bracketPairs) {\n const opening = openingBracketInfos.get(open);\n const closing = closingBracketInfos.get(close);\n opening.closing.add(closing.info);\n closing.opening.add(opening.info);\n }\n // Treat colorized brackets as brackets, and mark them as colorized.\n const colorizedBracketPairs = config.colorizedBracketPairs\n ? filterValidBrackets(config.colorizedBracketPairs)\n // If not configured: Take all brackets except `<` ... `>`\n // Many languages set < ... > as bracket pair, even though they also use it as comparison operator.\n // This leads to problems when colorizing this bracket, so we exclude it if not explicitly configured otherwise.\n // https://github.com/microsoft/vscode/issues/132476\n : bracketPairs.filter((p) => !(p[0] === '<' && p[1] === '>'));\n for (const [open, close] of colorizedBracketPairs) {\n const opening = openingBracketInfos.get(open);\n const closing = closingBracketInfos.get(close);\n opening.closing.add(closing.info);\n closing.openingColorized.add(opening.info);\n closing.opening.add(opening.info);\n }\n this._openingBrackets = new Map([...openingBracketInfos.cachedValues].map(([k, v]) => [k, v.info]));\n this._closingBrackets = new Map([...closingBracketInfos.cachedValues].map(([k, v]) => [k, v.info]));\n }\n /**\n * No two brackets have the same bracket text.\n */\n get openingBrackets() {\n return [...this._openingBrackets.values()];\n }\n /**\n * No two brackets have the same bracket text.\n */\n get closingBrackets() {\n return [...this._closingBrackets.values()];\n }\n getOpeningBracketInfo(bracketText) {\n return this._openingBrackets.get(bracketText);\n }\n getClosingBracketInfo(bracketText) {\n return this._closingBrackets.get(bracketText);\n }\n getBracketInfo(bracketText) {\n return this.getOpeningBracketInfo(bracketText) || this.getClosingBracketInfo(bracketText);\n }\n}\nfunction filterValidBrackets(bracketPairs) {\n return bracketPairs.filter(([open, close]) => open !== '' && close !== '');\n}\nclass BracketKindBase {\n constructor(config, bracketText) {\n this.config = config;\n this.bracketText = bracketText;\n }\n get languageId() {\n return this.config.languageId;\n }\n}\nclass OpeningBracketKind extends BracketKindBase {\n constructor(config, bracketText, openedBrackets) {\n super(config, bracketText);\n this.openedBrackets = openedBrackets;\n this.isOpeningBracket = true;\n }\n}\nclass ClosingBracketKind extends BracketKindBase {\n constructor(config, bracketText, \n /**\n * Non empty array of all opening brackets this bracket closes.\n */\n openingBrackets, openingColorizedBrackets) {\n super(config, bracketText);\n this.openingBrackets = openingBrackets;\n this.openingColorizedBrackets = openingColorizedBrackets;\n this.isOpeningBracket = false;\n }\n /**\n * Checks if this bracket closes the given other bracket.\n * If the bracket infos come from different configurations, this method will return false.\n */\n closes(other) {\n if (other['config'] !== this.config) {\n return false;\n }\n return this.openingBrackets.has(other);\n }\n closesColorized(other) {\n if (other['config'] !== this.config) {\n return false;\n }\n return this.openingColorizedBrackets.has(other);\n }\n getOpeningBrackets() {\n return [...this.openingBrackets];\n }\n}\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/common/languages/supports/languageBracketsConfiguration.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/common/languages/supports/onEnter.js":
/*!***************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/common/languages/supports/onEnter.js ***!
\***************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ OnEnterSupport: () => (/* binding */ OnEnterSupport)\n/* harmony export */ });\n/* harmony import */ var _base_common_errors_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../../base/common/errors.js */ \"./node_modules/monaco-editor/esm/vs/base/common/errors.js\");\n/* harmony import */ var _base_common_strings_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../base/common/strings.js */ \"./node_modules/monaco-editor/esm/vs/base/common/strings.js\");\n/* harmony import */ var _languageConfiguration_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../languageConfiguration.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/languages/languageConfiguration.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n\n\nclass OnEnterSupport {\n constructor(opts) {\n opts = opts || {};\n opts.brackets = opts.brackets || [\n ['(', ')'],\n ['{', '}'],\n ['[', ']']\n ];\n this._brackets = [];\n opts.brackets.forEach((bracket) => {\n const openRegExp = OnEnterSupport._createOpenBracketRegExp(bracket[0]);\n const closeRegExp = OnEnterSupport._createCloseBracketRegExp(bracket[1]);\n if (openRegExp && closeRegExp) {\n this._brackets.push({\n open: bracket[0],\n openRegExp: openRegExp,\n close: bracket[1],\n closeRegExp: closeRegExp,\n });\n }\n });\n this._regExpRules = opts.onEnterRules || [];\n }\n onEnter(autoIndent, previousLineText, beforeEnterText, afterEnterText) {\n // (1): `regExpRules`\n if (autoIndent >= 3 /* EditorAutoIndentStrategy.Advanced */) {\n for (let i = 0, len = this._regExpRules.length; i < len; i++) {\n const rule = this._regExpRules[i];\n const regResult = [{\n reg: rule.beforeText,\n text: beforeEnterText\n }, {\n reg: rule.afterText,\n text: afterEnterText\n }, {\n reg: rule.previousLineText,\n text: previousLineText\n }].every((obj) => {\n if (!obj.reg) {\n return true;\n }\n obj.reg.lastIndex = 0; // To disable the effect of the \"g\" flag.\n return obj.reg.test(obj.text);\n });\n if (regResult) {\n return rule.action;\n }\n }\n }\n // (2): Special indent-outdent\n if (autoIndent >= 2 /* EditorAutoIndentStrategy.Brackets */) {\n if (beforeEnterText.length > 0 && afterEnterText.length > 0) {\n for (let i = 0, len = this._brackets.length; i < len; i++) {\n const bracket = this._brackets[i];\n if (bracket.openRegExp.test(beforeEnterText) && bracket.closeRegExp.test(afterEnterText)) {\n return { indentAction: _languageConfiguration_js__WEBPACK_IMPORTED_MODULE_2__.IndentAction.IndentOutdent };\n }\n }\n }\n }\n // (4): Open bracket based logic\n if (autoIndent >= 2 /* EditorAutoIndentStrategy.Brackets */) {\n if (beforeEnterText.length > 0) {\n for (let i = 0, len = this._brackets.length; i < len; i++) {\n const bracket = this._brackets[i];\n if (bracket.openRegExp.test(beforeEnterText)) {\n return { indentAction: _languageConfiguration_js__WEBPACK_IMPORTED_MODULE_2__.IndentAction.Indent };\n }\n }\n }\n }\n return null;\n }\n static _createOpenBracketRegExp(bracket) {\n let str = _base_common_strings_js__WEBPACK_IMPORTED_MODULE_1__.escapeRegExpCharacters(bracket);\n if (!/\\B/.test(str.charAt(0))) {\n str = '\\\\b' + str;\n }\n str += '\\\\s*$';\n return OnEnterSupport._safeRegExp(str);\n }\n static _createCloseBracketRegExp(bracket) {\n let str = _base_common_strings_js__WEBPACK_IMPORTED_MODULE_1__.escapeRegExpCharacters(bracket);\n if (!/\\B/.test(str.charAt(str.length - 1))) {\n str = str + '\\\\b';\n }\n str = '^\\\\s*' + str;\n return OnEnterSupport._safeRegExp(str);\n }\n static _safeRegExp(def) {\n try {\n return new RegExp(def);\n }\n catch (err) {\n (0,_base_common_errors_js__WEBPACK_IMPORTED_MODULE_0__.onUnexpectedError)(err);\n return null;\n }\n }\n}\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/common/languages/supports/onEnter.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/common/languages/supports/richEditBrackets.js":
/*!************************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/common/languages/supports/richEditBrackets.js ***!
\************************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ BracketsUtils: () => (/* binding */ BracketsUtils),\n/* harmony export */ RichEditBracket: () => (/* binding */ RichEditBracket),\n/* harmony export */ RichEditBrackets: () => (/* binding */ RichEditBrackets)\n/* harmony export */ });\n/* harmony import */ var _base_common_strings_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../../base/common/strings.js */ \"./node_modules/monaco-editor/esm/vs/base/common/strings.js\");\n/* harmony import */ var _core_stringBuilder_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../core/stringBuilder.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/core/stringBuilder.js\");\n/* harmony import */ var _core_range_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../core/range.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/core/range.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n\n\n/**\n * Represents a grouping of colliding bracket pairs.\n *\n * Most of the times this contains a single bracket pair,\n * but sometimes this contains multiple bracket pairs in cases\n * where the same string appears as a closing bracket for multiple\n * bracket pairs, or the same string appears an opening bracket for\n * multiple bracket pairs.\n *\n * e.g. of a group containing a single pair:\n * open: ['{'], close: ['}']\n *\n * e.g. of a group containing multiple pairs:\n * open: ['if', 'for'], close: ['end', 'end']\n */\nclass RichEditBracket {\n constructor(languageId, index, open, close, forwardRegex, reversedRegex) {\n this._richEditBracketBrand = undefined;\n this.languageId = languageId;\n this.index = index;\n this.open = open;\n this.close = close;\n this.forwardRegex = forwardRegex;\n this.reversedRegex = reversedRegex;\n this._openSet = RichEditBracket._toSet(this.open);\n this._closeSet = RichEditBracket._toSet(this.close);\n }\n /**\n * Check if the provided `text` is an open bracket in this group.\n */\n isOpen(text) {\n return this._openSet.has(text);\n }\n /**\n * Check if the provided `text` is a close bracket in this group.\n */\n isClose(text) {\n return this._closeSet.has(text);\n }\n static _toSet(arr) {\n const result = new Set();\n for (const element of arr) {\n result.add(element);\n }\n return result;\n }\n}\n/**\n * Groups together brackets that have equal open or close sequences.\n *\n * For example, if the following brackets are defined:\n * ['IF','END']\n * ['for','end']\n * ['{','}']\n *\n * Then the grouped brackets would be:\n * { open: ['if', 'for'], close: ['end', 'end'] }\n * { open: ['{'], close: ['}'] }\n *\n */\nfunction groupFuzzyBrackets(brackets) {\n const N = brackets.length;\n brackets = brackets.map(b => [b[0].toLowerCase(), b[1].toLowerCase()]);\n const group = [];\n for (let i = 0; i < N; i++) {\n group[i] = i;\n }\n const areOverlapping = (a, b) => {\n const [aOpen, aClose] = a;\n const [bOpen, bClose] = b;\n return (aOpen === bOpen || aOpen === bClose || aClose === bOpen || aClose === bClose);\n };\n const mergeGroups = (g1, g2) => {\n const newG = Math.min(g1, g2);\n const oldG = Math.max(g1, g2);\n for (let i = 0; i < N; i++) {\n if (group[i] === oldG) {\n group[i] = newG;\n }\n }\n };\n // group together brackets that have the same open or the same close sequence\n for (let i = 0; i < N; i++) {\n const a = brackets[i];\n for (let j = i + 1; j < N; j++) {\n const b = brackets[j];\n if (areOverlapping(a, b)) {\n mergeGroups(group[i], group[j]);\n }\n }\n }\n const result = [];\n for (let g = 0; g < N; g++) {\n const currentOpen = [];\n const currentClose = [];\n for (let i = 0; i < N; i++) {\n if (group[i] === g) {\n const [open, close] = brackets[i];\n currentOpen.push(open);\n currentClose.push(close);\n }\n }\n if (currentOpen.length > 0) {\n result.push({\n open: currentOpen,\n close: currentClose\n });\n }\n }\n return result;\n}\nclass RichEditBrackets {\n constructor(languageId, _brackets) {\n this._richEditBracketsBrand = undefined;\n const brackets = groupFuzzyBrackets(_brackets);\n this.brackets = brackets.map((b, index) => {\n return new RichEditBracket(languageId, index, b.open, b.close, getRegexForBracketPair(b.open, b.close, brackets, index), getReversedRegexForBracketPair(b.open, b.close, brackets, index));\n });\n this.forwardRegex = getRegexForBrackets(this.brackets);\n this.reversedRegex = getReversedRegexForBrackets(this.brackets);\n this.textIsBracket = {};\n this.textIsOpenBracket = {};\n this.maxBracketLength = 0;\n for (const bracket of this.brackets) {\n for (const open of bracket.open) {\n this.textIsBracket[open] = bracket;\n this.textIsOpenBracket[open] = true;\n this.maxBracketLength = Math.max(this.maxBracketLength, open.length);\n }\n for (const close of bracket.close) {\n this.textIsBracket[close] = bracket;\n this.textIsOpenBracket[close] = false;\n this.maxBracketLength = Math.max(this.maxBracketLength, close.length);\n }\n }\n }\n}\nfunction collectSuperstrings(str, brackets, currentIndex, dest) {\n for (let i = 0, len = brackets.length; i < len; i++) {\n if (i === currentIndex) {\n continue;\n }\n const bracket = brackets[i];\n for (const open of bracket.open) {\n if (open.indexOf(str) >= 0) {\n dest.push(open);\n }\n }\n for (const close of bracket.close) {\n if (close.indexOf(str) >= 0) {\n dest.push(close);\n }\n }\n }\n}\nfunction lengthcmp(a, b) {\n return a.length - b.length;\n}\nfunction unique(arr) {\n if (arr.length <= 1) {\n return arr;\n }\n const result = [];\n const seen = new Set();\n for (const element of arr) {\n if (seen.has(element)) {\n continue;\n }\n result.push(element);\n seen.add(element);\n }\n return result;\n}\n/**\n * Create a regular expression that can be used to search forward in a piece of text\n * for a group of bracket pairs. But this regex must be built in a way in which\n * it is aware of the other bracket pairs defined for the language.\n *\n * For example, if a language contains the following bracket pairs:\n * ['begin', 'end']\n * ['if', 'end if']\n * The two bracket pairs do not collide because no open or close brackets are equal.\n * So the function getRegexForBracketPair is called twice, once with\n * the ['begin'], ['end'] group consisting of one bracket pair, and once with\n * the ['if'], ['end if'] group consiting of the other bracket pair.\n *\n * But there could be a situation where an occurrence of 'end if' is mistaken\n * for an occurrence of 'end'.\n *\n * Therefore, for the bracket pair ['begin', 'end'], the regex will also\n * target 'end if'. The regex will be something like:\n * /(\\bend if\\b)|(\\bend\\b)|(\\bif\\b)/\n *\n * The regex also searches for \"superstrings\" (other brackets that might be mistaken with the current bracket).\n *\n */\nfunction getRegexForBracketPair(open, close, brackets, currentIndex) {\n // search in all brackets for other brackets that are a superstring of these brackets\n let pieces = [];\n pieces = pieces.concat(open);\n pieces = pieces.concat(close);\n for (let i = 0, len = pieces.length; i < len; i++) {\n collectSuperstrings(pieces[i], brackets, currentIndex, pieces);\n }\n pieces = unique(pieces);\n pieces.sort(lengthcmp);\n pieces.reverse();\n return createBracketOrRegExp(pieces);\n}\n/**\n * Matching a regular expression in JS can only be done \"forwards\". So JS offers natively only\n * methods to find the first match of a regex in a string. But sometimes, it is useful to\n * find the last match of a regex in a string. For such a situation, a nice solution is to\n * simply reverse the string and then search for a reversed regex.\n *\n * This function also has the fine details of `getRegexForBracketPair`. For the same example\n * given above, the regex produced here would look like:\n * /(\\bfi dne\\b)|(\\bdne\\b)|(\\bfi\\b)/\n */\nfunction getReversedRegexForBracketPair(open, close, brackets, currentIndex) {\n // search in all brackets for other brackets that are a superstring of these brackets\n let pieces = [];\n pieces = pieces.concat(open);\n pieces = pieces.concat(close);\n for (let i = 0, len = pieces.length; i < len; i++) {\n collectSuperstrings(pieces[i], brackets, currentIndex, pieces);\n }\n pieces = unique(pieces);\n pieces.sort(lengthcmp);\n pieces.reverse();\n return createBracketOrRegExp(pieces.map(toReversedString));\n}\n/**\n * Creates a regular expression that targets all bracket pairs.\n *\n * e.g. for the bracket pairs:\n * ['{','}']\n * ['begin,'end']\n * ['for','end']\n * the regex would look like:\n * /(\\{)|(\\})|(\\bbegin\\b)|(\\bend\\b)|(\\bfor\\b)/\n */\nfunction getRegexForBrackets(brackets) {\n let pieces = [];\n for (const bracket of brackets) {\n for (const open of bracket.open) {\n pieces.push(open);\n }\n for (const close of bracket.close) {\n pieces.push(close);\n }\n }\n pieces = unique(pieces);\n return createBracketOrRegExp(pieces);\n}\n/**\n * Matching a regular expression in JS can only be done \"forwards\". So JS offers natively only\n * methods to find the first match of a regex in a string. But sometimes, it is useful to\n * find the last match of a regex in a string. For such a situation, a nice solution is to\n * simply reverse the string and then search for a reversed regex.\n *\n * e.g. for the bracket pairs:\n * ['{','}']\n * ['begin,'end']\n * ['for','end']\n * the regex would look like:\n * /(\\{)|(\\})|(\\bnigeb\\b)|(\\bdne\\b)|(\\brof\\b)/\n */\nfunction getReversedRegexForBrackets(brackets) {\n let pieces = [];\n for (const bracket of brackets) {\n for (const open of bracket.open) {\n pieces.push(open);\n }\n for (const close of bracket.close) {\n pieces.push(close);\n }\n }\n pieces = unique(pieces);\n return createBracketOrRegExp(pieces.map(toReversedString));\n}\nfunction prepareBracketForRegExp(str) {\n // This bracket pair uses letters like e.g. \"begin\" - \"end\"\n const insertWordBoundaries = (/^[\\w ]+$/.test(str));\n str = _base_common_strings_js__WEBPACK_IMPORTED_MODULE_0__.escapeRegExpCharacters(str);\n return (insertWordBoundaries ? `\\\\b${str}\\\\b` : str);\n}\nfunction createBracketOrRegExp(pieces) {\n const regexStr = `(${pieces.map(prepareBracketForRegExp).join(')|(')})`;\n return _base_common_strings_js__WEBPACK_IMPORTED_MODULE_0__.createRegExp(regexStr, true);\n}\nconst toReversedString = (function () {\n function reverse(str) {\n // create a Uint16Array and then use a TextDecoder to create a string\n const arr = new Uint16Array(str.length);\n let offset = 0;\n for (let i = str.length - 1; i >= 0; i--) {\n arr[offset++] = str.charCodeAt(i);\n }\n return _core_stringBuilder_js__WEBPACK_IMPORTED_MODULE_1__.getPlatformTextDecoder().decode(arr);\n }\n let lastInput = null;\n let lastOutput = null;\n return function toReversedString(str) {\n if (lastInput !== str) {\n lastInput = str;\n lastOutput = reverse(lastInput);\n }\n return lastOutput;\n };\n})();\nclass BracketsUtils {\n static _findPrevBracketInText(reversedBracketRegex, lineNumber, reversedText, offset) {\n const m = reversedText.match(reversedBracketRegex);\n if (!m) {\n return null;\n }\n const matchOffset = reversedText.length - (m.index || 0);\n const matchLength = m[0].length;\n const absoluteMatchOffset = offset + matchOffset;\n return new _core_range_js__WEBPACK_IMPORTED_MODULE_2__.Range(lineNumber, absoluteMatchOffset - matchLength + 1, lineNumber, absoluteMatchOffset + 1);\n }\n static findPrevBracketInRange(reversedBracketRegex, lineNumber, lineText, startOffset, endOffset) {\n // Because JS does not support backwards regex search, we search forwards in a reversed string with a reversed regex ;)\n const reversedLineText = toReversedString(lineText);\n const reversedSubstr = reversedLineText.substring(lineText.length - endOffset, lineText.length - startOffset);\n return this._findPrevBracketInText(reversedBracketRegex, lineNumber, reversedSubstr, startOffset);\n }\n static findNextBracketInText(bracketRegex, lineNumber, text, offset) {\n const m = text.match(bracketRegex);\n if (!m) {\n return null;\n }\n const matchOffset = m.index || 0;\n const matchLength = m[0].length;\n if (matchLength === 0) {\n return null;\n }\n const absoluteMatchOffset = offset + matchOffset;\n return new _core_range_js__WEBPACK_IMPORTED_MODULE_2__.Range(lineNumber, absoluteMatchOffset + 1, lineNumber, absoluteMatchOffset + 1 + matchLength);\n }\n static findNextBracketInRange(bracketRegex, lineNumber, lineText, startOffset, endOffset) {\n const substr = lineText.substring(startOffset, endOffset);\n return this.findNextBracketInText(bracketRegex, lineNumber, substr, startOffset);\n }\n}\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/common/languages/supports/richEditBrackets.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/common/languages/supports/tokenization.js":
/*!********************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/common/languages/supports/tokenization.js ***!
\********************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ ColorMap: () => (/* binding */ ColorMap),\n/* harmony export */ ParsedTokenThemeRule: () => (/* binding */ ParsedTokenThemeRule),\n/* harmony export */ ThemeTrieElement: () => (/* binding */ ThemeTrieElement),\n/* harmony export */ ThemeTrieElementRule: () => (/* binding */ ThemeTrieElementRule),\n/* harmony export */ TokenTheme: () => (/* binding */ TokenTheme),\n/* harmony export */ generateTokensCSSForColorMap: () => (/* binding */ generateTokensCSSForColorMap),\n/* harmony export */ parseTokenTheme: () => (/* binding */ parseTokenTheme),\n/* harmony export */ strcmp: () => (/* binding */ strcmp),\n/* harmony export */ toStandardTokenType: () => (/* binding */ toStandardTokenType)\n/* harmony export */ });\n/* harmony import */ var _base_common_color_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../../base/common/color.js */ \"./node_modules/monaco-editor/esm/vs/base/common/color.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\nclass ParsedTokenThemeRule {\n constructor(token, index, fontStyle, foreground, background) {\n this._parsedThemeRuleBrand = undefined;\n this.token = token;\n this.index = index;\n this.fontStyle = fontStyle;\n this.foreground = foreground;\n this.background = background;\n }\n}\n/**\n * Parse a raw theme into rules.\n */\nfunction parseTokenTheme(source) {\n if (!source || !Array.isArray(source)) {\n return [];\n }\n const result = [];\n let resultLen = 0;\n for (let i = 0, len = source.length; i < len; i++) {\n const entry = source[i];\n let fontStyle = -1 /* FontStyle.NotSet */;\n if (typeof entry.fontStyle === 'string') {\n fontStyle = 0 /* FontStyle.None */;\n const segments = entry.fontStyle.split(' ');\n for (let j = 0, lenJ = segments.length; j < lenJ; j++) {\n const segment = segments[j];\n switch (segment) {\n case 'italic':\n fontStyle = fontStyle | 1 /* FontStyle.Italic */;\n break;\n case 'bold':\n fontStyle = fontStyle | 2 /* FontStyle.Bold */;\n break;\n case 'underline':\n fontStyle = fontStyle | 4 /* FontStyle.Underline */;\n break;\n case 'strikethrough':\n fontStyle = fontStyle | 8 /* FontStyle.Strikethrough */;\n break;\n }\n }\n }\n let foreground = null;\n if (typeof entry.foreground === 'string') {\n foreground = entry.foreground;\n }\n let background = null;\n if (typeof entry.background === 'string') {\n background = entry.background;\n }\n result[resultLen++] = new ParsedTokenThemeRule(entry.token || '', i, fontStyle, foreground, background);\n }\n return result;\n}\n/**\n * Resolve rules (i.e. inheritance).\n */\nfunction resolveParsedTokenThemeRules(parsedThemeRules, customTokenColors) {\n // Sort rules lexicographically, and then by index if necessary\n parsedThemeRules.sort((a, b) => {\n const r = strcmp(a.token, b.token);\n if (r !== 0) {\n return r;\n }\n return a.index - b.index;\n });\n // Determine defaults\n let defaultFontStyle = 0 /* FontStyle.None */;\n let defaultForeground = '000000';\n let defaultBackground = 'ffffff';\n while (parsedThemeRules.length >= 1 && parsedThemeRules[0].token === '') {\n const incomingDefaults = parsedThemeRules.shift();\n if (incomingDefaults.fontStyle !== -1 /* FontStyle.NotSet */) {\n defaultFontStyle = incomingDefaults.fontStyle;\n }\n if (incomingDefaults.foreground !== null) {\n defaultForeground = incomingDefaults.foreground;\n }\n if (incomingDefaults.background !== null) {\n defaultBackground = incomingDefaults.background;\n }\n }\n const colorMap = new ColorMap();\n // start with token colors from custom token themes\n for (const color of customTokenColors) {\n colorMap.getId(color);\n }\n const foregroundColorId = colorMap.getId(defaultForeground);\n const backgroundColorId = colorMap.getId(defaultBackground);\n const defaults = new ThemeTrieElementRule(defaultFontStyle, foregroundColorId, backgroundColorId);\n const root = new ThemeTrieElement(defaults);\n for (let i = 0, len = parsedThemeRules.length; i < len; i++) {\n const rule = parsedThemeRules[i];\n root.insert(rule.token, rule.fontStyle, colorMap.getId(rule.foreground), colorMap.getId(rule.background));\n }\n return new TokenTheme(colorMap, root);\n}\nconst colorRegExp = /^#?([0-9A-Fa-f]{6})([0-9A-Fa-f]{2})?$/;\nclass ColorMap {\n constructor() {\n this._lastColorId = 0;\n this._id2color = [];\n this._color2id = new Map();\n }\n getId(color) {\n if (color === null) {\n return 0;\n }\n const match = color.match(colorRegExp);\n if (!match) {\n throw new Error('Illegal value for token color: ' + color);\n }\n color = match[1].toUpperCase();\n let value = this._color2id.get(color);\n if (value) {\n return value;\n }\n value = ++this._lastColorId;\n this._color2id.set(color, value);\n this._id2color[value] = _base_common_color_js__WEBPACK_IMPORTED_MODULE_0__.Color.fromHex('#' + color);\n return value;\n }\n getColorMap() {\n return this._id2color.slice(0);\n }\n}\nclass TokenTheme {\n static createFromRawTokenTheme(source, customTokenColors) {\n return this.createFromParsedTokenTheme(parseTokenTheme(source), customTokenColors);\n }\n static createFromParsedTokenTheme(source, customTokenColors) {\n return resolveParsedTokenThemeRules(source, customTokenColors);\n }\n constructor(colorMap, root) {\n this._colorMap = colorMap;\n this._root = root;\n this._cache = new Map();\n }\n getColorMap() {\n return this._colorMap.getColorMap();\n }\n _match(token) {\n return this._root.match(token);\n }\n match(languageId, token) {\n // The cache contains the metadata without the language bits set.\n let result = this._cache.get(token);\n if (typeof result === 'undefined') {\n const rule = this._match(token);\n const standardToken = toStandardTokenType(token);\n result = (rule.metadata\n | (standardToken << 8 /* MetadataConsts.TOKEN_TYPE_OFFSET */)) >>> 0;\n this._cache.set(token, result);\n }\n return (result\n | (languageId << 0 /* MetadataConsts.LANGUAGEID_OFFSET */)) >>> 0;\n }\n}\nconst STANDARD_TOKEN_TYPE_REGEXP = /\\b(comment|string|regex|regexp)\\b/;\nfunction toStandardTokenType(tokenType) {\n const m = tokenType.match(STANDARD_TOKEN_TYPE_REGEXP);\n if (!m) {\n return 0 /* StandardTokenType.Other */;\n }\n switch (m[1]) {\n case 'comment':\n return 1 /* StandardTokenType.Comment */;\n case 'string':\n return 2 /* StandardTokenType.String */;\n case 'regex':\n return 3 /* StandardTokenType.RegEx */;\n case 'regexp':\n return 3 /* StandardTokenType.RegEx */;\n }\n throw new Error('Unexpected match for standard token type!');\n}\nfunction strcmp(a, b) {\n if (a < b) {\n return -1;\n }\n if (a > b) {\n return 1;\n }\n return 0;\n}\nclass ThemeTrieElementRule {\n constructor(fontStyle, foreground, background) {\n this._themeTrieElementRuleBrand = undefined;\n this._fontStyle = fontStyle;\n this._foreground = foreground;\n this._background = background;\n this.metadata = ((this._fontStyle << 11 /* MetadataConsts.FONT_STYLE_OFFSET */)\n | (this._foreground << 15 /* MetadataConsts.FOREGROUND_OFFSET */)\n | (this._background << 24 /* MetadataConsts.BACKGROUND_OFFSET */)) >>> 0;\n }\n clone() {\n return new ThemeTrieElementRule(this._fontStyle, this._foreground, this._background);\n }\n acceptOverwrite(fontStyle, foreground, background) {\n if (fontStyle !== -1 /* FontStyle.NotSet */) {\n this._fontStyle = fontStyle;\n }\n if (foreground !== 0 /* ColorId.None */) {\n this._foreground = foreground;\n }\n if (background !== 0 /* ColorId.None */) {\n this._background = background;\n }\n this.metadata = ((this._fontStyle << 11 /* MetadataConsts.FONT_STYLE_OFFSET */)\n | (this._foreground << 15 /* MetadataConsts.FOREGROUND_OFFSET */)\n | (this._background << 24 /* MetadataConsts.BACKGROUND_OFFSET */)) >>> 0;\n }\n}\nclass ThemeTrieElement {\n constructor(mainRule) {\n this._themeTrieElementBrand = undefined;\n this._mainRule = mainRule;\n this._children = new Map();\n }\n match(token) {\n if (token === '') {\n return this._mainRule;\n }\n const dotIndex = token.indexOf('.');\n let head;\n let tail;\n if (dotIndex === -1) {\n head = token;\n tail = '';\n }\n else {\n head = token.substring(0, dotIndex);\n tail = token.substring(dotIndex + 1);\n }\n const child = this._children.get(head);\n if (typeof child !== 'undefined') {\n return child.match(tail);\n }\n return this._mainRule;\n }\n insert(token, fontStyle, foreground, background) {\n if (token === '') {\n // Merge into the main rule\n this._mainRule.acceptOverwrite(fontStyle, foreground, background);\n return;\n }\n const dotIndex = token.indexOf('.');\n let head;\n let tail;\n if (dotIndex === -1) {\n head = token;\n tail = '';\n }\n else {\n head = token.substring(0, dotIndex);\n tail = token.substring(dotIndex + 1);\n }\n let child = this._children.get(head);\n if (typeof child === 'undefined') {\n child = new ThemeTrieElement(this._mainRule.clone());\n this._children.set(head, child);\n }\n child.insert(tail, fontStyle, foreground, background);\n }\n}\nfunction generateTokensCSSForColorMap(colorMap) {\n const rules = [];\n for (let i = 1, len = colorMap.length; i < len; i++) {\n const color = colorMap[i];\n rules[i] = `.mtk${i} { color: ${color}; }`;\n }\n rules.push('.mtki { font-style: italic; }');\n rules.push('.mtkb { font-weight: bold; }');\n rules.push('.mtku { text-decoration: underline; text-underline-position: under; }');\n rules.push('.mtks { text-decoration: line-through; }');\n rules.push('.mtks.mtku { text-decoration: underline line-through; text-underline-position: under; }');\n return rules.join('\\n');\n}\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/common/languages/supports/tokenization.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/common/languages/textToHtmlTokenizer.js":
/*!******************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/common/languages/textToHtmlTokenizer.js ***!
\******************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ _tokenizeToString: () => (/* binding */ _tokenizeToString),\n/* harmony export */ tokenizeLineToHTML: () => (/* binding */ tokenizeLineToHTML),\n/* harmony export */ tokenizeToString: () => (/* binding */ tokenizeToString)\n/* harmony export */ });\n/* harmony import */ var _base_common_strings_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../base/common/strings.js */ \"./node_modules/monaco-editor/esm/vs/base/common/strings.js\");\n/* harmony import */ var _tokens_lineTokens_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../tokens/lineTokens.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/tokens/lineTokens.js\");\n/* harmony import */ var _languages_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../languages.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/languages.js\");\n/* harmony import */ var _nullTokenize_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./nullTokenize.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/languages/nullTokenize.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n\n\n\nconst fallback = {\n getInitialState: () => _nullTokenize_js__WEBPACK_IMPORTED_MODULE_3__.NullState,\n tokenizeEncoded: (buffer, hasEOL, state) => (0,_nullTokenize_js__WEBPACK_IMPORTED_MODULE_3__.nullTokenizeEncoded)(0 /* LanguageId.Null */, state)\n};\nasync function tokenizeToString(languageService, text, languageId) {\n if (!languageId) {\n return _tokenizeToString(text, languageService.languageIdCodec, fallback);\n }\n const tokenizationSupport = await _languages_js__WEBPACK_IMPORTED_MODULE_2__.TokenizationRegistry.getOrCreate(languageId);\n return _tokenizeToString(text, languageService.languageIdCodec, tokenizationSupport || fallback);\n}\nfunction tokenizeLineToHTML(text, viewLineTokens, colorMap, startOffset, endOffset, tabSize, useNbsp) {\n let result = ``;\n let charIndex = startOffset;\n let tabsCharDelta = 0;\n let prevIsSpace = true;\n for (let tokenIndex = 0, tokenCount = viewLineTokens.getCount(); tokenIndex < tokenCount; tokenIndex++) {\n const tokenEndIndex = viewLineTokens.getEndOffset(tokenIndex);\n if (tokenEndIndex <= startOffset) {\n continue;\n }\n let partContent = '';\n for (; charIndex < tokenEndIndex && charIndex < endOffset; charIndex++) {\n const charCode = text.charCodeAt(charIndex);\n switch (charCode) {\n case 9 /* CharCode.Tab */: {\n let insertSpacesCount = tabSize - (charIndex + tabsCharDelta) % tabSize;\n tabsCharDelta += insertSpacesCount - 1;\n while (insertSpacesCount > 0) {\n if (useNbsp && prevIsSpace) {\n partContent += ' ';\n prevIsSpace = false;\n }\n else {\n partContent += ' ';\n prevIsSpace = true;\n }\n insertSpacesCount--;\n }\n break;\n }\n case 60 /* CharCode.LessThan */:\n partContent += '<';\n prevIsSpace = false;\n break;\n case 62 /* CharCode.GreaterThan */:\n partContent += '>';\n prevIsSpace = false;\n break;\n case 38 /* CharCode.Ampersand */:\n partContent += '&';\n prevIsSpace = false;\n break;\n case 0 /* CharCode.Null */:\n partContent += '';\n prevIsSpace = false;\n break;\n case 65279 /* CharCode.UTF8_BOM */:\n case 8232 /* CharCode.LINE_SEPARATOR */:\n case 8233 /* CharCode.PARAGRAPH_SEPARATOR */:\n case 133 /* CharCode.NEXT_LINE */:\n partContent += '\\ufffd';\n prevIsSpace = false;\n break;\n case 13 /* CharCode.CarriageReturn */:\n // zero width space, because carriage return would introduce a line break\n partContent += '';\n prevIsSpace = false;\n break;\n case 32 /* CharCode.Space */:\n if (useNbsp && prevIsSpace) {\n partContent += ' ';\n prevIsSpace = false;\n }\n else {\n partContent += ' ';\n prevIsSpace = true;\n }\n break;\n default:\n partContent += String.fromCharCode(charCode);\n prevIsSpace = false;\n }\n }\n result += `${partContent}`;\n if (tokenEndIndex > endOffset || charIndex >= endOffset) {\n break;\n }\n }\n result += ` `;\n return result;\n}\nfunction _tokenizeToString(text, languageIdCodec, tokenizationSupport) {\n let result = ``;\n const lines = _base_common_strings_js__WEBPACK_IMPORTED_MODULE_0__.splitLines(text);\n let currentState = tokenizationSupport.getInitialState();\n for (let i = 0, len = lines.length; i < len; i++) {\n const line = lines[i];\n if (i > 0) {\n result += ` `;\n }\n const tokenizationResult = tokenizationSupport.tokenizeEncoded(line, true, currentState);\n _tokens_lineTokens_js__WEBPACK_IMPORTED_MODULE_1__.LineTokens.convertToEndOffset(tokenizationResult.tokens, line.length);\n const lineTokens = new _tokens_lineTokens_js__WEBPACK_IMPORTED_MODULE_1__.LineTokens(tokenizationResult.tokens, line, languageIdCodec);\n const viewLineTokens = lineTokens.inflate();\n let startOffset = 0;\n for (let j = 0, lenJ = viewLineTokens.getCount(); j < lenJ; j++) {\n const type = viewLineTokens.getClassName(j);\n const endIndex = viewLineTokens.getEndOffset(j);\n result += `${_base_common_strings_js__WEBPACK_IMPORTED_MODULE_0__.escape(line.substring(startOffset, endIndex))}`;\n startOffset = endIndex;\n }\n currentState = tokenizationResult.endState;\n }\n result += ` `;\n return result;\n}\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/common/languages/textToHtmlTokenizer.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/common/model.js":
/*!******************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/common/model.js ***!
\******************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ ApplyEditsResult: () => (/* binding */ ApplyEditsResult),\n/* harmony export */ FindMatch: () => (/* binding */ FindMatch),\n/* harmony export */ GlyphMarginLane: () => (/* binding */ GlyphMarginLane),\n/* harmony export */ InjectedTextCursorStops: () => (/* binding */ InjectedTextCursorStops),\n/* harmony export */ MinimapPosition: () => (/* binding */ MinimapPosition),\n/* harmony export */ OverviewRulerLane: () => (/* binding */ OverviewRulerLane),\n/* harmony export */ SearchData: () => (/* binding */ SearchData),\n/* harmony export */ TextModelResolvedOptions: () => (/* binding */ TextModelResolvedOptions),\n/* harmony export */ ValidAnnotatedEditOperation: () => (/* binding */ ValidAnnotatedEditOperation),\n/* harmony export */ isITextSnapshot: () => (/* binding */ isITextSnapshot),\n/* harmony export */ shouldSynchronizeModel: () => (/* binding */ shouldSynchronizeModel)\n/* harmony export */ });\n/* harmony import */ var _base_common_objects_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../base/common/objects.js */ \"./node_modules/monaco-editor/esm/vs/base/common/objects.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n/**\n * Vertical Lane in the overview ruler of the editor.\n */\nvar OverviewRulerLane;\n(function (OverviewRulerLane) {\n OverviewRulerLane[OverviewRulerLane[\"Left\"] = 1] = \"Left\";\n OverviewRulerLane[OverviewRulerLane[\"Center\"] = 2] = \"Center\";\n OverviewRulerLane[OverviewRulerLane[\"Right\"] = 4] = \"Right\";\n OverviewRulerLane[OverviewRulerLane[\"Full\"] = 7] = \"Full\";\n})(OverviewRulerLane || (OverviewRulerLane = {}));\n/**\n * Vertical Lane in the glyph margin of the editor.\n */\nvar GlyphMarginLane;\n(function (GlyphMarginLane) {\n GlyphMarginLane[GlyphMarginLane[\"Left\"] = 1] = \"Left\";\n GlyphMarginLane[GlyphMarginLane[\"Center\"] = 2] = \"Center\";\n GlyphMarginLane[GlyphMarginLane[\"Right\"] = 3] = \"Right\";\n})(GlyphMarginLane || (GlyphMarginLane = {}));\n/**\n * Position in the minimap to render the decoration.\n */\nvar MinimapPosition;\n(function (MinimapPosition) {\n MinimapPosition[MinimapPosition[\"Inline\"] = 1] = \"Inline\";\n MinimapPosition[MinimapPosition[\"Gutter\"] = 2] = \"Gutter\";\n})(MinimapPosition || (MinimapPosition = {}));\nvar InjectedTextCursorStops;\n(function (InjectedTextCursorStops) {\n InjectedTextCursorStops[InjectedTextCursorStops[\"Both\"] = 0] = \"Both\";\n InjectedTextCursorStops[InjectedTextCursorStops[\"Right\"] = 1] = \"Right\";\n InjectedTextCursorStops[InjectedTextCursorStops[\"Left\"] = 2] = \"Left\";\n InjectedTextCursorStops[InjectedTextCursorStops[\"None\"] = 3] = \"None\";\n})(InjectedTextCursorStops || (InjectedTextCursorStops = {}));\nclass TextModelResolvedOptions {\n get originalIndentSize() {\n return this._indentSizeIsTabSize ? 'tabSize' : this.indentSize;\n }\n /**\n * @internal\n */\n constructor(src) {\n this._textModelResolvedOptionsBrand = undefined;\n this.tabSize = Math.max(1, src.tabSize | 0);\n if (src.indentSize === 'tabSize') {\n this.indentSize = this.tabSize;\n this._indentSizeIsTabSize = true;\n }\n else {\n this.indentSize = Math.max(1, src.indentSize | 0);\n this._indentSizeIsTabSize = false;\n }\n this.insertSpaces = Boolean(src.insertSpaces);\n this.defaultEOL = src.defaultEOL | 0;\n this.trimAutoWhitespace = Boolean(src.trimAutoWhitespace);\n this.bracketPairColorizationOptions = src.bracketPairColorizationOptions;\n }\n /**\n * @internal\n */\n equals(other) {\n return (this.tabSize === other.tabSize\n && this._indentSizeIsTabSize === other._indentSizeIsTabSize\n && this.indentSize === other.indentSize\n && this.insertSpaces === other.insertSpaces\n && this.defaultEOL === other.defaultEOL\n && this.trimAutoWhitespace === other.trimAutoWhitespace\n && (0,_base_common_objects_js__WEBPACK_IMPORTED_MODULE_0__.equals)(this.bracketPairColorizationOptions, other.bracketPairColorizationOptions));\n }\n /**\n * @internal\n */\n createChangeEvent(newOpts) {\n return {\n tabSize: this.tabSize !== newOpts.tabSize,\n indentSize: this.indentSize !== newOpts.indentSize,\n insertSpaces: this.insertSpaces !== newOpts.insertSpaces,\n trimAutoWhitespace: this.trimAutoWhitespace !== newOpts.trimAutoWhitespace,\n };\n }\n}\nclass FindMatch {\n /**\n * @internal\n */\n constructor(range, matches) {\n this._findMatchBrand = undefined;\n this.range = range;\n this.matches = matches;\n }\n}\n/**\n * @internal\n */\nfunction isITextSnapshot(obj) {\n return (obj && typeof obj.read === 'function');\n}\n/**\n * @internal\n */\nclass ValidAnnotatedEditOperation {\n constructor(identifier, range, text, forceMoveMarkers, isAutoWhitespaceEdit, _isTracked) {\n this.identifier = identifier;\n this.range = range;\n this.text = text;\n this.forceMoveMarkers = forceMoveMarkers;\n this.isAutoWhitespaceEdit = isAutoWhitespaceEdit;\n this._isTracked = _isTracked;\n }\n}\n/**\n * @internal\n */\nclass SearchData {\n constructor(regex, wordSeparators, simpleSearch) {\n this.regex = regex;\n this.wordSeparators = wordSeparators;\n this.simpleSearch = simpleSearch;\n }\n}\n/**\n * @internal\n */\nclass ApplyEditsResult {\n constructor(reverseEdits, changes, trimAutoWhitespaceLineNumbers) {\n this.reverseEdits = reverseEdits;\n this.changes = changes;\n this.trimAutoWhitespaceLineNumbers = trimAutoWhitespaceLineNumbers;\n }\n}\n/**\n * @internal\n */\nfunction shouldSynchronizeModel(model) {\n return (!model.isTooLargeForSyncing() && !model.isForSimpleWidget);\n}\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/common/model.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/common/model/bracketPairsTextModelPart/bracketPairsImpl.js":
/*!*************************************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/common/model/bracketPairsTextModelPart/bracketPairsImpl.js ***!
\*************************************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ BracketPairsTextModelPart: () => (/* binding */ BracketPairsTextModelPart)\n/* harmony export */ });\n/* harmony import */ var _base_common_arrays_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../../base/common/arrays.js */ \"./node_modules/monaco-editor/esm/vs/base/common/arrays.js\");\n/* harmony import */ var _base_common_event_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../base/common/event.js */ \"./node_modules/monaco-editor/esm/vs/base/common/event.js\");\n/* harmony import */ var _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../../base/common/lifecycle.js */ \"./node_modules/monaco-editor/esm/vs/base/common/lifecycle.js\");\n/* harmony import */ var _core_range_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../core/range.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/core/range.js\");\n/* harmony import */ var _languages_supports_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../languages/supports.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/languages/supports.js\");\n/* harmony import */ var _languages_supports_richEditBrackets_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../../languages/supports/richEditBrackets.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/languages/supports/richEditBrackets.js\");\n/* harmony import */ var _bracketPairsTree_bracketPairsTree_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ./bracketPairsTree/bracketPairsTree.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/model/bracketPairsTextModelPart/bracketPairsTree/bracketPairsTree.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n\n\n\n\n\n\nclass BracketPairsTextModelPart extends _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_2__.Disposable {\n get canBuildAST() {\n const maxSupportedDocumentLength = /* max lines */ 50000 * /* average column count */ 100;\n return this.textModel.getValueLength() <= maxSupportedDocumentLength;\n }\n constructor(textModel, languageConfigurationService) {\n super();\n this.textModel = textModel;\n this.languageConfigurationService = languageConfigurationService;\n this.bracketPairsTree = this._register(new _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_2__.MutableDisposable());\n this.onDidChangeEmitter = new _base_common_event_js__WEBPACK_IMPORTED_MODULE_1__.Emitter();\n this.onDidChange = this.onDidChangeEmitter.event;\n this.bracketsRequested = false;\n this._register(this.languageConfigurationService.onDidChange(e => {\n var _a;\n if (!e.languageId || ((_a = this.bracketPairsTree.value) === null || _a === void 0 ? void 0 : _a.object.didLanguageChange(e.languageId))) {\n this.bracketPairsTree.clear();\n this.updateBracketPairsTree();\n }\n }));\n }\n //#region TextModel events\n handleDidChangeOptions(e) {\n this.bracketPairsTree.clear();\n this.updateBracketPairsTree();\n }\n handleDidChangeLanguage(e) {\n this.bracketPairsTree.clear();\n this.updateBracketPairsTree();\n }\n handleDidChangeContent(change) {\n var _a;\n (_a = this.bracketPairsTree.value) === null || _a === void 0 ? void 0 : _a.object.handleContentChanged(change);\n }\n handleDidChangeBackgroundTokenizationState() {\n var _a;\n (_a = this.bracketPairsTree.value) === null || _a === void 0 ? void 0 : _a.object.handleDidChangeBackgroundTokenizationState();\n }\n handleDidChangeTokens(e) {\n var _a;\n (_a = this.bracketPairsTree.value) === null || _a === void 0 ? void 0 : _a.object.handleDidChangeTokens(e);\n }\n //#endregion\n updateBracketPairsTree() {\n if (this.bracketsRequested && this.canBuildAST) {\n if (!this.bracketPairsTree.value) {\n const store = new _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_2__.DisposableStore();\n this.bracketPairsTree.value = createDisposableRef(store.add(new _bracketPairsTree_bracketPairsTree_js__WEBPACK_IMPORTED_MODULE_6__.BracketPairsTree(this.textModel, (languageId) => {\n return this.languageConfigurationService.getLanguageConfiguration(languageId);\n })), store);\n store.add(this.bracketPairsTree.value.object.onDidChange(e => this.onDidChangeEmitter.fire(e)));\n this.onDidChangeEmitter.fire();\n }\n }\n else {\n if (this.bracketPairsTree.value) {\n this.bracketPairsTree.clear();\n // Important: Don't call fire if there was no change!\n this.onDidChangeEmitter.fire();\n }\n }\n }\n /**\n * Returns all bracket pairs that intersect the given range.\n * The result is sorted by the start position.\n */\n getBracketPairsInRange(range) {\n var _a;\n this.bracketsRequested = true;\n this.updateBracketPairsTree();\n return ((_a = this.bracketPairsTree.value) === null || _a === void 0 ? void 0 : _a.object.getBracketPairsInRange(range, false)) || _base_common_arrays_js__WEBPACK_IMPORTED_MODULE_0__.CallbackIterable.empty;\n }\n getBracketPairsInRangeWithMinIndentation(range) {\n var _a;\n this.bracketsRequested = true;\n this.updateBracketPairsTree();\n return ((_a = this.bracketPairsTree.value) === null || _a === void 0 ? void 0 : _a.object.getBracketPairsInRange(range, true)) || _base_common_arrays_js__WEBPACK_IMPORTED_MODULE_0__.CallbackIterable.empty;\n }\n getBracketsInRange(range, onlyColorizedBrackets = false) {\n var _a;\n this.bracketsRequested = true;\n this.updateBracketPairsTree();\n return ((_a = this.bracketPairsTree.value) === null || _a === void 0 ? void 0 : _a.object.getBracketsInRange(range, onlyColorizedBrackets)) || _base_common_arrays_js__WEBPACK_IMPORTED_MODULE_0__.CallbackIterable.empty;\n }\n findMatchingBracketUp(_bracket, _position, maxDuration) {\n const position = this.textModel.validatePosition(_position);\n const languageId = this.textModel.getLanguageIdAtPosition(position.lineNumber, position.column);\n if (this.canBuildAST) {\n const closingBracketInfo = this.languageConfigurationService\n .getLanguageConfiguration(languageId)\n .bracketsNew.getClosingBracketInfo(_bracket);\n if (!closingBracketInfo) {\n return null;\n }\n const bracketPair = this.getBracketPairsInRange(_core_range_js__WEBPACK_IMPORTED_MODULE_3__.Range.fromPositions(_position, _position)).findLast((b) => closingBracketInfo.closes(b.openingBracketInfo));\n if (bracketPair) {\n return bracketPair.openingBracketRange;\n }\n return null;\n }\n else {\n // Fallback to old bracket matching code:\n const bracket = _bracket.toLowerCase();\n const bracketsSupport = this.languageConfigurationService.getLanguageConfiguration(languageId).brackets;\n if (!bracketsSupport) {\n return null;\n }\n const data = bracketsSupport.textIsBracket[bracket];\n if (!data) {\n return null;\n }\n return stripBracketSearchCanceled(this._findMatchingBracketUp(data, position, createTimeBasedContinueBracketSearchPredicate(maxDuration)));\n }\n }\n matchBracket(position, maxDuration) {\n if (this.canBuildAST) {\n const bracketPair = this.getBracketPairsInRange(_core_range_js__WEBPACK_IMPORTED_MODULE_3__.Range.fromPositions(position, position)).filter((item) => item.closingBracketRange !== undefined &&\n (item.openingBracketRange.containsPosition(position) ||\n item.closingBracketRange.containsPosition(position))).findLastMaxBy((0,_base_common_arrays_js__WEBPACK_IMPORTED_MODULE_0__.compareBy)((item) => item.openingBracketRange.containsPosition(position)\n ? item.openingBracketRange\n : item.closingBracketRange, _core_range_js__WEBPACK_IMPORTED_MODULE_3__.Range.compareRangesUsingStarts));\n if (bracketPair) {\n return [bracketPair.openingBracketRange, bracketPair.closingBracketRange];\n }\n return null;\n }\n else {\n // Fallback to old bracket matching code:\n const continueSearchPredicate = createTimeBasedContinueBracketSearchPredicate(maxDuration);\n return this._matchBracket(this.textModel.validatePosition(position), continueSearchPredicate);\n }\n }\n _establishBracketSearchOffsets(position, lineTokens, modeBrackets, tokenIndex) {\n const tokenCount = lineTokens.getCount();\n const currentLanguageId = lineTokens.getLanguageId(tokenIndex);\n // limit search to not go before `maxBracketLength`\n let searchStartOffset = Math.max(0, position.column - 1 - modeBrackets.maxBracketLength);\n for (let i = tokenIndex - 1; i >= 0; i--) {\n const tokenEndOffset = lineTokens.getEndOffset(i);\n if (tokenEndOffset <= searchStartOffset) {\n break;\n }\n if ((0,_languages_supports_js__WEBPACK_IMPORTED_MODULE_4__.ignoreBracketsInToken)(lineTokens.getStandardTokenType(i)) || lineTokens.getLanguageId(i) !== currentLanguageId) {\n searchStartOffset = tokenEndOffset;\n break;\n }\n }\n // limit search to not go after `maxBracketLength`\n let searchEndOffset = Math.min(lineTokens.getLineContent().length, position.column - 1 + modeBrackets.maxBracketLength);\n for (let i = tokenIndex + 1; i < tokenCount; i++) {\n const tokenStartOffset = lineTokens.getStartOffset(i);\n if (tokenStartOffset >= searchEndOffset) {\n break;\n }\n if ((0,_languages_supports_js__WEBPACK_IMPORTED_MODULE_4__.ignoreBracketsInToken)(lineTokens.getStandardTokenType(i)) || lineTokens.getLanguageId(i) !== currentLanguageId) {\n searchEndOffset = tokenStartOffset;\n break;\n }\n }\n return { searchStartOffset, searchEndOffset };\n }\n _matchBracket(position, continueSearchPredicate) {\n const lineNumber = position.lineNumber;\n const lineTokens = this.textModel.tokenization.getLineTokens(lineNumber);\n const lineText = this.textModel.getLineContent(lineNumber);\n const tokenIndex = lineTokens.findTokenIndexAtOffset(position.column - 1);\n if (tokenIndex < 0) {\n return null;\n }\n const currentModeBrackets = this.languageConfigurationService.getLanguageConfiguration(lineTokens.getLanguageId(tokenIndex)).brackets;\n // check that the token is not to be ignored\n if (currentModeBrackets && !(0,_languages_supports_js__WEBPACK_IMPORTED_MODULE_4__.ignoreBracketsInToken)(lineTokens.getStandardTokenType(tokenIndex))) {\n let { searchStartOffset, searchEndOffset } = this._establishBracketSearchOffsets(position, lineTokens, currentModeBrackets, tokenIndex);\n // it might be the case that [currentTokenStart -> currentTokenEnd] contains multiple brackets\n // `bestResult` will contain the most right-side result\n let bestResult = null;\n while (true) {\n const foundBracket = _languages_supports_richEditBrackets_js__WEBPACK_IMPORTED_MODULE_5__.BracketsUtils.findNextBracketInRange(currentModeBrackets.forwardRegex, lineNumber, lineText, searchStartOffset, searchEndOffset);\n if (!foundBracket) {\n // there are no more brackets in this text\n break;\n }\n // check that we didn't hit a bracket too far away from position\n if (foundBracket.startColumn <= position.column && position.column <= foundBracket.endColumn) {\n const foundBracketText = lineText.substring(foundBracket.startColumn - 1, foundBracket.endColumn - 1).toLowerCase();\n const r = this._matchFoundBracket(foundBracket, currentModeBrackets.textIsBracket[foundBracketText], currentModeBrackets.textIsOpenBracket[foundBracketText], continueSearchPredicate);\n if (r) {\n if (r instanceof BracketSearchCanceled) {\n return null;\n }\n bestResult = r;\n }\n }\n searchStartOffset = foundBracket.endColumn - 1;\n }\n if (bestResult) {\n return bestResult;\n }\n }\n // If position is in between two tokens, try also looking in the previous token\n if (tokenIndex > 0 && lineTokens.getStartOffset(tokenIndex) === position.column - 1) {\n const prevTokenIndex = tokenIndex - 1;\n const prevModeBrackets = this.languageConfigurationService.getLanguageConfiguration(lineTokens.getLanguageId(prevTokenIndex)).brackets;\n // check that previous token is not to be ignored\n if (prevModeBrackets && !(0,_languages_supports_js__WEBPACK_IMPORTED_MODULE_4__.ignoreBracketsInToken)(lineTokens.getStandardTokenType(prevTokenIndex))) {\n const { searchStartOffset, searchEndOffset } = this._establishBracketSearchOffsets(position, lineTokens, prevModeBrackets, prevTokenIndex);\n const foundBracket = _languages_supports_richEditBrackets_js__WEBPACK_IMPORTED_MODULE_5__.BracketsUtils.findPrevBracketInRange(prevModeBrackets.reversedRegex, lineNumber, lineText, searchStartOffset, searchEndOffset);\n // check that we didn't hit a bracket too far away from position\n if (foundBracket && foundBracket.startColumn <= position.column && position.column <= foundBracket.endColumn) {\n const foundBracketText = lineText.substring(foundBracket.startColumn - 1, foundBracket.endColumn - 1).toLowerCase();\n const r = this._matchFoundBracket(foundBracket, prevModeBrackets.textIsBracket[foundBracketText], prevModeBrackets.textIsOpenBracket[foundBracketText], continueSearchPredicate);\n if (r) {\n if (r instanceof BracketSearchCanceled) {\n return null;\n }\n return r;\n }\n }\n }\n }\n return null;\n }\n _matchFoundBracket(foundBracket, data, isOpen, continueSearchPredicate) {\n if (!data) {\n return null;\n }\n const matched = (isOpen\n ? this._findMatchingBracketDown(data, foundBracket.getEndPosition(), continueSearchPredicate)\n : this._findMatchingBracketUp(data, foundBracket.getStartPosition(), continueSearchPredicate));\n if (!matched) {\n return null;\n }\n if (matched instanceof BracketSearchCanceled) {\n return matched;\n }\n return [foundBracket, matched];\n }\n _findMatchingBracketUp(bracket, position, continueSearchPredicate) {\n // console.log('_findMatchingBracketUp: ', 'bracket: ', JSON.stringify(bracket), 'startPosition: ', String(position));\n const languageId = bracket.languageId;\n const reversedBracketRegex = bracket.reversedRegex;\n let count = -1;\n let totalCallCount = 0;\n const searchPrevMatchingBracketInRange = (lineNumber, lineText, searchStartOffset, searchEndOffset) => {\n while (true) {\n if (continueSearchPredicate && (++totalCallCount) % 100 === 0 && !continueSearchPredicate()) {\n return BracketSearchCanceled.INSTANCE;\n }\n const r = _languages_supports_richEditBrackets_js__WEBPACK_IMPORTED_MODULE_5__.BracketsUtils.findPrevBracketInRange(reversedBracketRegex, lineNumber, lineText, searchStartOffset, searchEndOffset);\n if (!r) {\n break;\n }\n const hitText = lineText.substring(r.startColumn - 1, r.endColumn - 1).toLowerCase();\n if (bracket.isOpen(hitText)) {\n count++;\n }\n else if (bracket.isClose(hitText)) {\n count--;\n }\n if (count === 0) {\n return r;\n }\n searchEndOffset = r.startColumn - 1;\n }\n return null;\n };\n for (let lineNumber = position.lineNumber; lineNumber >= 1; lineNumber--) {\n const lineTokens = this.textModel.tokenization.getLineTokens(lineNumber);\n const tokenCount = lineTokens.getCount();\n const lineText = this.textModel.getLineContent(lineNumber);\n let tokenIndex = tokenCount - 1;\n let searchStartOffset = lineText.length;\n let searchEndOffset = lineText.length;\n if (lineNumber === position.lineNumber) {\n tokenIndex = lineTokens.findTokenIndexAtOffset(position.column - 1);\n searchStartOffset = position.column - 1;\n searchEndOffset = position.column - 1;\n }\n let prevSearchInToken = true;\n for (; tokenIndex >= 0; tokenIndex--) {\n const searchInToken = (lineTokens.getLanguageId(tokenIndex) === languageId && !(0,_languages_supports_js__WEBPACK_IMPORTED_MODULE_4__.ignoreBracketsInToken)(lineTokens.getStandardTokenType(tokenIndex)));\n if (searchInToken) {\n // this token should be searched\n if (prevSearchInToken) {\n // the previous token should be searched, simply extend searchStartOffset\n searchStartOffset = lineTokens.getStartOffset(tokenIndex);\n }\n else {\n // the previous token should not be searched\n searchStartOffset = lineTokens.getStartOffset(tokenIndex);\n searchEndOffset = lineTokens.getEndOffset(tokenIndex);\n }\n }\n else {\n // this token should not be searched\n if (prevSearchInToken && searchStartOffset !== searchEndOffset) {\n const r = searchPrevMatchingBracketInRange(lineNumber, lineText, searchStartOffset, searchEndOffset);\n if (r) {\n return r;\n }\n }\n }\n prevSearchInToken = searchInToken;\n }\n if (prevSearchInToken && searchStartOffset !== searchEndOffset) {\n const r = searchPrevMatchingBracketInRange(lineNumber, lineText, searchStartOffset, searchEndOffset);\n if (r) {\n return r;\n }\n }\n }\n return null;\n }\n _findMatchingBracketDown(bracket, position, continueSearchPredicate) {\n // console.log('_findMatchingBracketDown: ', 'bracket: ', JSON.stringify(bracket), 'startPosition: ', String(position));\n const languageId = bracket.languageId;\n const bracketRegex = bracket.forwardRegex;\n let count = 1;\n let totalCallCount = 0;\n const searchNextMatchingBracketInRange = (lineNumber, lineText, searchStartOffset, searchEndOffset) => {\n while (true) {\n if (continueSearchPredicate && (++totalCallCount) % 100 === 0 && !continueSearchPredicate()) {\n return BracketSearchCanceled.INSTANCE;\n }\n const r = _languages_supports_richEditBrackets_js__WEBPACK_IMPORTED_MODULE_5__.BracketsUtils.findNextBracketInRange(bracketRegex, lineNumber, lineText, searchStartOffset, searchEndOffset);\n if (!r) {\n break;\n }\n const hitText = lineText.substring(r.startColumn - 1, r.endColumn - 1).toLowerCase();\n if (bracket.isOpen(hitText)) {\n count++;\n }\n else if (bracket.isClose(hitText)) {\n count--;\n }\n if (count === 0) {\n return r;\n }\n searchStartOffset = r.endColumn - 1;\n }\n return null;\n };\n const lineCount = this.textModel.getLineCount();\n for (let lineNumber = position.lineNumber; lineNumber <= lineCount; lineNumber++) {\n const lineTokens = this.textModel.tokenization.getLineTokens(lineNumber);\n const tokenCount = lineTokens.getCount();\n const lineText = this.textModel.getLineContent(lineNumber);\n let tokenIndex = 0;\n let searchStartOffset = 0;\n let searchEndOffset = 0;\n if (lineNumber === position.lineNumber) {\n tokenIndex = lineTokens.findTokenIndexAtOffset(position.column - 1);\n searchStartOffset = position.column - 1;\n searchEndOffset = position.column - 1;\n }\n let prevSearchInToken = true;\n for (; tokenIndex < tokenCount; tokenIndex++) {\n const searchInToken = (lineTokens.getLanguageId(tokenIndex) === languageId && !(0,_languages_supports_js__WEBPACK_IMPORTED_MODULE_4__.ignoreBracketsInToken)(lineTokens.getStandardTokenType(tokenIndex)));\n if (searchInToken) {\n // this token should be searched\n if (prevSearchInToken) {\n // the previous token should be searched, simply extend searchEndOffset\n searchEndOffset = lineTokens.getEndOffset(tokenIndex);\n }\n else {\n // the previous token should not be searched\n searchStartOffset = lineTokens.getStartOffset(tokenIndex);\n searchEndOffset = lineTokens.getEndOffset(tokenIndex);\n }\n }\n else {\n // this token should not be searched\n if (prevSearchInToken && searchStartOffset !== searchEndOffset) {\n const r = searchNextMatchingBracketInRange(lineNumber, lineText, searchStartOffset, searchEndOffset);\n if (r) {\n return r;\n }\n }\n }\n prevSearchInToken = searchInToken;\n }\n if (prevSearchInToken && searchStartOffset !== searchEndOffset) {\n const r = searchNextMatchingBracketInRange(lineNumber, lineText, searchStartOffset, searchEndOffset);\n if (r) {\n return r;\n }\n }\n }\n return null;\n }\n findPrevBracket(_position) {\n var _a;\n const position = this.textModel.validatePosition(_position);\n if (this.canBuildAST) {\n this.bracketsRequested = true;\n this.updateBracketPairsTree();\n return ((_a = this.bracketPairsTree.value) === null || _a === void 0 ? void 0 : _a.object.getFirstBracketBefore(position)) || null;\n }\n let languageId = null;\n let modeBrackets = null;\n let bracketConfig = null;\n for (let lineNumber = position.lineNumber; lineNumber >= 1; lineNumber--) {\n const lineTokens = this.textModel.tokenization.getLineTokens(lineNumber);\n const tokenCount = lineTokens.getCount();\n const lineText = this.textModel.getLineContent(lineNumber);\n let tokenIndex = tokenCount - 1;\n let searchStartOffset = lineText.length;\n let searchEndOffset = lineText.length;\n if (lineNumber === position.lineNumber) {\n tokenIndex = lineTokens.findTokenIndexAtOffset(position.column - 1);\n searchStartOffset = position.column - 1;\n searchEndOffset = position.column - 1;\n const tokenLanguageId = lineTokens.getLanguageId(tokenIndex);\n if (languageId !== tokenLanguageId) {\n languageId = tokenLanguageId;\n modeBrackets = this.languageConfigurationService.getLanguageConfiguration(languageId).brackets;\n bracketConfig = this.languageConfigurationService.getLanguageConfiguration(languageId).bracketsNew;\n }\n }\n let prevSearchInToken = true;\n for (; tokenIndex >= 0; tokenIndex--) {\n const tokenLanguageId = lineTokens.getLanguageId(tokenIndex);\n if (languageId !== tokenLanguageId) {\n // language id change!\n if (modeBrackets && bracketConfig && prevSearchInToken && searchStartOffset !== searchEndOffset) {\n const r = _languages_supports_richEditBrackets_js__WEBPACK_IMPORTED_MODULE_5__.BracketsUtils.findPrevBracketInRange(modeBrackets.reversedRegex, lineNumber, lineText, searchStartOffset, searchEndOffset);\n if (r) {\n return this._toFoundBracket(bracketConfig, r);\n }\n prevSearchInToken = false;\n }\n languageId = tokenLanguageId;\n modeBrackets = this.languageConfigurationService.getLanguageConfiguration(languageId).brackets;\n bracketConfig = this.languageConfigurationService.getLanguageConfiguration(languageId).bracketsNew;\n }\n const searchInToken = (!!modeBrackets && !(0,_languages_supports_js__WEBPACK_IMPORTED_MODULE_4__.ignoreBracketsInToken)(lineTokens.getStandardTokenType(tokenIndex)));\n if (searchInToken) {\n // this token should be searched\n if (prevSearchInToken) {\n // the previous token should be searched, simply extend searchStartOffset\n searchStartOffset = lineTokens.getStartOffset(tokenIndex);\n }\n else {\n // the previous token should not be searched\n searchStartOffset = lineTokens.getStartOffset(tokenIndex);\n searchEndOffset = lineTokens.getEndOffset(tokenIndex);\n }\n }\n else {\n // this token should not be searched\n if (bracketConfig && modeBrackets && prevSearchInToken && searchStartOffset !== searchEndOffset) {\n const r = _languages_supports_richEditBrackets_js__WEBPACK_IMPORTED_MODULE_5__.BracketsUtils.findPrevBracketInRange(modeBrackets.reversedRegex, lineNumber, lineText, searchStartOffset, searchEndOffset);\n if (r) {\n return this._toFoundBracket(bracketConfig, r);\n }\n }\n }\n prevSearchInToken = searchInToken;\n }\n if (bracketConfig && modeBrackets && prevSearchInToken && searchStartOffset !== searchEndOffset) {\n const r = _languages_supports_richEditBrackets_js__WEBPACK_IMPORTED_MODULE_5__.BracketsUtils.findPrevBracketInRange(modeBrackets.reversedRegex, lineNumber, lineText, searchStartOffset, searchEndOffset);\n if (r) {\n return this._toFoundBracket(bracketConfig, r);\n }\n }\n }\n return null;\n }\n findNextBracket(_position) {\n var _a;\n const position = this.textModel.validatePosition(_position);\n if (this.canBuildAST) {\n this.bracketsRequested = true;\n this.updateBracketPairsTree();\n return ((_a = this.bracketPairsTree.value) === null || _a === void 0 ? void 0 : _a.object.getFirstBracketAfter(position)) || null;\n }\n const lineCount = this.textModel.getLineCount();\n let languageId = null;\n let modeBrackets = null;\n let bracketConfig = null;\n for (let lineNumber = position.lineNumber; lineNumber <= lineCount; lineNumber++) {\n const lineTokens = this.textModel.tokenization.getLineTokens(lineNumber);\n const tokenCount = lineTokens.getCount();\n const lineText = this.textModel.getLineContent(lineNumber);\n let tokenIndex = 0;\n let searchStartOffset = 0;\n let searchEndOffset = 0;\n if (lineNumber === position.lineNumber) {\n tokenIndex = lineTokens.findTokenIndexAtOffset(position.column - 1);\n searchStartOffset = position.column - 1;\n searchEndOffset = position.column - 1;\n const tokenLanguageId = lineTokens.getLanguageId(tokenIndex);\n if (languageId !== tokenLanguageId) {\n languageId = tokenLanguageId;\n modeBrackets = this.languageConfigurationService.getLanguageConfiguration(languageId).brackets;\n bracketConfig = this.languageConfigurationService.getLanguageConfiguration(languageId).bracketsNew;\n }\n }\n let prevSearchInToken = true;\n for (; tokenIndex < tokenCount; tokenIndex++) {\n const tokenLanguageId = lineTokens.getLanguageId(tokenIndex);\n if (languageId !== tokenLanguageId) {\n // language id change!\n if (bracketConfig && modeBrackets && prevSearchInToken && searchStartOffset !== searchEndOffset) {\n const r = _languages_supports_richEditBrackets_js__WEBPACK_IMPORTED_MODULE_5__.BracketsUtils.findNextBracketInRange(modeBrackets.forwardRegex, lineNumber, lineText, searchStartOffset, searchEndOffset);\n if (r) {\n return this._toFoundBracket(bracketConfig, r);\n }\n prevSearchInToken = false;\n }\n languageId = tokenLanguageId;\n modeBrackets = this.languageConfigurationService.getLanguageConfiguration(languageId).brackets;\n bracketConfig = this.languageConfigurationService.getLanguageConfiguration(languageId).bracketsNew;\n }\n const searchInToken = (!!modeBrackets && !(0,_languages_supports_js__WEBPACK_IMPORTED_MODULE_4__.ignoreBracketsInToken)(lineTokens.getStandardTokenType(tokenIndex)));\n if (searchInToken) {\n // this token should be searched\n if (prevSearchInToken) {\n // the previous token should be searched, simply extend searchEndOffset\n searchEndOffset = lineTokens.getEndOffset(tokenIndex);\n }\n else {\n // the previous token should not be searched\n searchStartOffset = lineTokens.getStartOffset(tokenIndex);\n searchEndOffset = lineTokens.getEndOffset(tokenIndex);\n }\n }\n else {\n // this token should not be searched\n if (bracketConfig && modeBrackets && prevSearchInToken && searchStartOffset !== searchEndOffset) {\n const r = _languages_supports_richEditBrackets_js__WEBPACK_IMPORTED_MODULE_5__.BracketsUtils.findNextBracketInRange(modeBrackets.forwardRegex, lineNumber, lineText, searchStartOffset, searchEndOffset);\n if (r) {\n return this._toFoundBracket(bracketConfig, r);\n }\n }\n }\n prevSearchInToken = searchInToken;\n }\n if (bracketConfig && modeBrackets && prevSearchInToken && searchStartOffset !== searchEndOffset) {\n const r = _languages_supports_richEditBrackets_js__WEBPACK_IMPORTED_MODULE_5__.BracketsUtils.findNextBracketInRange(modeBrackets.forwardRegex, lineNumber, lineText, searchStartOffset, searchEndOffset);\n if (r) {\n return this._toFoundBracket(bracketConfig, r);\n }\n }\n }\n return null;\n }\n findEnclosingBrackets(_position, maxDuration) {\n const position = this.textModel.validatePosition(_position);\n if (this.canBuildAST) {\n const range = _core_range_js__WEBPACK_IMPORTED_MODULE_3__.Range.fromPositions(position);\n const bracketPair = this.getBracketPairsInRange(_core_range_js__WEBPACK_IMPORTED_MODULE_3__.Range.fromPositions(position, position)).findLast((item) => item.closingBracketRange !== undefined && item.range.strictContainsRange(range));\n if (bracketPair) {\n return [bracketPair.openingBracketRange, bracketPair.closingBracketRange];\n }\n return null;\n }\n const continueSearchPredicate = createTimeBasedContinueBracketSearchPredicate(maxDuration);\n const lineCount = this.textModel.getLineCount();\n const savedCounts = new Map();\n let counts = [];\n const resetCounts = (languageId, modeBrackets) => {\n if (!savedCounts.has(languageId)) {\n const tmp = [];\n for (let i = 0, len = modeBrackets ? modeBrackets.brackets.length : 0; i < len; i++) {\n tmp[i] = 0;\n }\n savedCounts.set(languageId, tmp);\n }\n counts = savedCounts.get(languageId);\n };\n let totalCallCount = 0;\n const searchInRange = (modeBrackets, lineNumber, lineText, searchStartOffset, searchEndOffset) => {\n while (true) {\n if (continueSearchPredicate && (++totalCallCount) % 100 === 0 && !continueSearchPredicate()) {\n return BracketSearchCanceled.INSTANCE;\n }\n const r = _languages_supports_richEditBrackets_js__WEBPACK_IMPORTED_MODULE_5__.BracketsUtils.findNextBracketInRange(modeBrackets.forwardRegex, lineNumber, lineText, searchStartOffset, searchEndOffset);\n if (!r) {\n break;\n }\n const hitText = lineText.substring(r.startColumn - 1, r.endColumn - 1).toLowerCase();\n const bracket = modeBrackets.textIsBracket[hitText];\n if (bracket) {\n if (bracket.isOpen(hitText)) {\n counts[bracket.index]++;\n }\n else if (bracket.isClose(hitText)) {\n counts[bracket.index]--;\n }\n if (counts[bracket.index] === -1) {\n return this._matchFoundBracket(r, bracket, false, continueSearchPredicate);\n }\n }\n searchStartOffset = r.endColumn - 1;\n }\n return null;\n };\n let languageId = null;\n let modeBrackets = null;\n for (let lineNumber = position.lineNumber; lineNumber <= lineCount; lineNumber++) {\n const lineTokens = this.textModel.tokenization.getLineTokens(lineNumber);\n const tokenCount = lineTokens.getCount();\n const lineText = this.textModel.getLineContent(lineNumber);\n let tokenIndex = 0;\n let searchStartOffset = 0;\n let searchEndOffset = 0;\n if (lineNumber === position.lineNumber) {\n tokenIndex = lineTokens.findTokenIndexAtOffset(position.column - 1);\n searchStartOffset = position.column - 1;\n searchEndOffset = position.column - 1;\n const tokenLanguageId = lineTokens.getLanguageId(tokenIndex);\n if (languageId !== tokenLanguageId) {\n languageId = tokenLanguageId;\n modeBrackets = this.languageConfigurationService.getLanguageConfiguration(languageId).brackets;\n resetCounts(languageId, modeBrackets);\n }\n }\n let prevSearchInToken = true;\n for (; tokenIndex < tokenCount; tokenIndex++) {\n const tokenLanguageId = lineTokens.getLanguageId(tokenIndex);\n if (languageId !== tokenLanguageId) {\n // language id change!\n if (modeBrackets && prevSearchInToken && searchStartOffset !== searchEndOffset) {\n const r = searchInRange(modeBrackets, lineNumber, lineText, searchStartOffset, searchEndOffset);\n if (r) {\n return stripBracketSearchCanceled(r);\n }\n prevSearchInToken = false;\n }\n languageId = tokenLanguageId;\n modeBrackets = this.languageConfigurationService.getLanguageConfiguration(languageId).brackets;\n resetCounts(languageId, modeBrackets);\n }\n const searchInToken = (!!modeBrackets && !(0,_languages_supports_js__WEBPACK_IMPORTED_MODULE_4__.ignoreBracketsInToken)(lineTokens.getStandardTokenType(tokenIndex)));\n if (searchInToken) {\n // this token should be searched\n if (prevSearchInToken) {\n // the previous token should be searched, simply extend searchEndOffset\n searchEndOffset = lineTokens.getEndOffset(tokenIndex);\n }\n else {\n // the previous token should not be searched\n searchStartOffset = lineTokens.getStartOffset(tokenIndex);\n searchEndOffset = lineTokens.getEndOffset(tokenIndex);\n }\n }\n else {\n // this token should not be searched\n if (modeBrackets && prevSearchInToken && searchStartOffset !== searchEndOffset) {\n const r = searchInRange(modeBrackets, lineNumber, lineText, searchStartOffset, searchEndOffset);\n if (r) {\n return stripBracketSearchCanceled(r);\n }\n }\n }\n prevSearchInToken = searchInToken;\n }\n if (modeBrackets && prevSearchInToken && searchStartOffset !== searchEndOffset) {\n const r = searchInRange(modeBrackets, lineNumber, lineText, searchStartOffset, searchEndOffset);\n if (r) {\n return stripBracketSearchCanceled(r);\n }\n }\n }\n return null;\n }\n _toFoundBracket(bracketConfig, r) {\n if (!r) {\n return null;\n }\n let text = this.textModel.getValueInRange(r);\n text = text.toLowerCase();\n const bracketInfo = bracketConfig.getBracketInfo(text);\n if (!bracketInfo) {\n return null;\n }\n return {\n range: r,\n bracketInfo\n };\n }\n}\nfunction createDisposableRef(object, disposable) {\n return {\n object,\n dispose: () => disposable === null || disposable === void 0 ? void 0 : disposable.dispose(),\n };\n}\nfunction createTimeBasedContinueBracketSearchPredicate(maxDuration) {\n if (typeof maxDuration === 'undefined') {\n return () => true;\n }\n else {\n const startTime = Date.now();\n return () => {\n return (Date.now() - startTime <= maxDuration);\n };\n }\n}\nclass BracketSearchCanceled {\n constructor() {\n this._searchCanceledBrand = undefined;\n }\n}\nBracketSearchCanceled.INSTANCE = new BracketSearchCanceled();\nfunction stripBracketSearchCanceled(result) {\n if (result instanceof BracketSearchCanceled) {\n return null;\n }\n return result;\n}\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/common/model/bracketPairsTextModelPart/bracketPairsImpl.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/common/model/bracketPairsTextModelPart/bracketPairsTree/ast.js":
/*!*****************************************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/common/model/bracketPairsTextModelPart/bracketPairsTree/ast.js ***!
\*****************************************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ BracketAstNode: () => (/* binding */ BracketAstNode),\n/* harmony export */ InvalidBracketAstNode: () => (/* binding */ InvalidBracketAstNode),\n/* harmony export */ ListAstNode: () => (/* binding */ ListAstNode),\n/* harmony export */ PairAstNode: () => (/* binding */ PairAstNode),\n/* harmony export */ TextAstNode: () => (/* binding */ TextAstNode)\n/* harmony export */ });\n/* harmony import */ var _base_common_errors_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../../../base/common/errors.js */ \"./node_modules/monaco-editor/esm/vs/base/common/errors.js\");\n/* harmony import */ var _core_cursorColumns_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../core/cursorColumns.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/core/cursorColumns.js\");\n/* harmony import */ var _length_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./length.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/model/bracketPairsTextModelPart/bracketPairsTree/length.js\");\n/* harmony import */ var _smallImmutableSet_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./smallImmutableSet.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/model/bracketPairsTextModelPart/bracketPairsTree/smallImmutableSet.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n\n\n\n/**\n * The base implementation for all AST nodes.\n*/\nclass BaseAstNode {\n /**\n * The length of the entire node, which should equal the sum of lengths of all children.\n */\n get length() {\n return this._length;\n }\n constructor(length) {\n this._length = length;\n }\n}\n/**\n * Represents a bracket pair including its child (e.g. `{ ... }`).\n * Might be unclosed.\n * Immutable, if all children are immutable.\n*/\nclass PairAstNode extends BaseAstNode {\n static create(openingBracket, child, closingBracket) {\n let length = openingBracket.length;\n if (child) {\n length = (0,_length_js__WEBPACK_IMPORTED_MODULE_2__.lengthAdd)(length, child.length);\n }\n if (closingBracket) {\n length = (0,_length_js__WEBPACK_IMPORTED_MODULE_2__.lengthAdd)(length, closingBracket.length);\n }\n return new PairAstNode(length, openingBracket, child, closingBracket, child ? child.missingOpeningBracketIds : _smallImmutableSet_js__WEBPACK_IMPORTED_MODULE_3__.SmallImmutableSet.getEmpty());\n }\n get kind() {\n return 2 /* AstNodeKind.Pair */;\n }\n get listHeight() {\n return 0;\n }\n get childrenLength() {\n return 3;\n }\n getChild(idx) {\n switch (idx) {\n case 0: return this.openingBracket;\n case 1: return this.child;\n case 2: return this.closingBracket;\n }\n throw new Error('Invalid child index');\n }\n /**\n * Avoid using this property, it allocates an array!\n */\n get children() {\n const result = [];\n result.push(this.openingBracket);\n if (this.child) {\n result.push(this.child);\n }\n if (this.closingBracket) {\n result.push(this.closingBracket);\n }\n return result;\n }\n constructor(length, openingBracket, child, closingBracket, missingOpeningBracketIds) {\n super(length);\n this.openingBracket = openingBracket;\n this.child = child;\n this.closingBracket = closingBracket;\n this.missingOpeningBracketIds = missingOpeningBracketIds;\n }\n canBeReused(openBracketIds) {\n if (this.closingBracket === null) {\n // Unclosed pair ast nodes only\n // end at the end of the document\n // or when a parent node is closed.\n // This could be improved:\n // Only return false if some next token is neither \"undefined\" nor a bracket that closes a parent.\n return false;\n }\n if (openBracketIds.intersects(this.missingOpeningBracketIds)) {\n return false;\n }\n return true;\n }\n deepClone() {\n return new PairAstNode(this.length, this.openingBracket.deepClone(), this.child && this.child.deepClone(), this.closingBracket && this.closingBracket.deepClone(), this.missingOpeningBracketIds);\n }\n computeMinIndentation(offset, textModel) {\n return this.child ? this.child.computeMinIndentation((0,_length_js__WEBPACK_IMPORTED_MODULE_2__.lengthAdd)(offset, this.openingBracket.length), textModel) : Number.MAX_SAFE_INTEGER;\n }\n}\nclass ListAstNode extends BaseAstNode {\n /**\n * This method uses more memory-efficient list nodes that can only store 2 or 3 children.\n */\n static create23(item1, item2, item3, immutable = false) {\n let length = item1.length;\n let missingBracketIds = item1.missingOpeningBracketIds;\n if (item1.listHeight !== item2.listHeight) {\n throw new Error('Invalid list heights');\n }\n length = (0,_length_js__WEBPACK_IMPORTED_MODULE_2__.lengthAdd)(length, item2.length);\n missingBracketIds = missingBracketIds.merge(item2.missingOpeningBracketIds);\n if (item3) {\n if (item1.listHeight !== item3.listHeight) {\n throw new Error('Invalid list heights');\n }\n length = (0,_length_js__WEBPACK_IMPORTED_MODULE_2__.lengthAdd)(length, item3.length);\n missingBracketIds = missingBracketIds.merge(item3.missingOpeningBracketIds);\n }\n return immutable\n ? new Immutable23ListAstNode(length, item1.listHeight + 1, item1, item2, item3, missingBracketIds)\n : new TwoThreeListAstNode(length, item1.listHeight + 1, item1, item2, item3, missingBracketIds);\n }\n static getEmpty() {\n return new ImmutableArrayListAstNode(_length_js__WEBPACK_IMPORTED_MODULE_2__.lengthZero, 0, [], _smallImmutableSet_js__WEBPACK_IMPORTED_MODULE_3__.SmallImmutableSet.getEmpty());\n }\n get kind() {\n return 4 /* AstNodeKind.List */;\n }\n get missingOpeningBracketIds() {\n return this._missingOpeningBracketIds;\n }\n /**\n * Use ListAstNode.create.\n */\n constructor(length, listHeight, _missingOpeningBracketIds) {\n super(length);\n this.listHeight = listHeight;\n this._missingOpeningBracketIds = _missingOpeningBracketIds;\n this.cachedMinIndentation = -1;\n }\n throwIfImmutable() {\n // NOOP\n }\n makeLastElementMutable() {\n this.throwIfImmutable();\n const childCount = this.childrenLength;\n if (childCount === 0) {\n return undefined;\n }\n const lastChild = this.getChild(childCount - 1);\n const mutable = lastChild.kind === 4 /* AstNodeKind.List */ ? lastChild.toMutable() : lastChild;\n if (lastChild !== mutable) {\n this.setChild(childCount - 1, mutable);\n }\n return mutable;\n }\n makeFirstElementMutable() {\n this.throwIfImmutable();\n const childCount = this.childrenLength;\n if (childCount === 0) {\n return undefined;\n }\n const firstChild = this.getChild(0);\n const mutable = firstChild.kind === 4 /* AstNodeKind.List */ ? firstChild.toMutable() : firstChild;\n if (firstChild !== mutable) {\n this.setChild(0, mutable);\n }\n return mutable;\n }\n canBeReused(openBracketIds) {\n if (openBracketIds.intersects(this.missingOpeningBracketIds)) {\n return false;\n }\n if (this.childrenLength === 0) {\n // Don't reuse empty lists.\n return false;\n }\n let lastChild = this;\n while (lastChild.kind === 4 /* AstNodeKind.List */) {\n const lastLength = lastChild.childrenLength;\n if (lastLength === 0) {\n // Empty lists should never be contained in other lists.\n throw new _base_common_errors_js__WEBPACK_IMPORTED_MODULE_0__.BugIndicatingError();\n }\n lastChild = lastChild.getChild(lastLength - 1);\n }\n return lastChild.canBeReused(openBracketIds);\n }\n handleChildrenChanged() {\n this.throwIfImmutable();\n const count = this.childrenLength;\n let length = this.getChild(0).length;\n let unopenedBrackets = this.getChild(0).missingOpeningBracketIds;\n for (let i = 1; i < count; i++) {\n const child = this.getChild(i);\n length = (0,_length_js__WEBPACK_IMPORTED_MODULE_2__.lengthAdd)(length, child.length);\n unopenedBrackets = unopenedBrackets.merge(child.missingOpeningBracketIds);\n }\n this._length = length;\n this._missingOpeningBracketIds = unopenedBrackets;\n this.cachedMinIndentation = -1;\n }\n computeMinIndentation(offset, textModel) {\n if (this.cachedMinIndentation !== -1) {\n return this.cachedMinIndentation;\n }\n let minIndentation = Number.MAX_SAFE_INTEGER;\n let childOffset = offset;\n for (let i = 0; i < this.childrenLength; i++) {\n const child = this.getChild(i);\n if (child) {\n minIndentation = Math.min(minIndentation, child.computeMinIndentation(childOffset, textModel));\n childOffset = (0,_length_js__WEBPACK_IMPORTED_MODULE_2__.lengthAdd)(childOffset, child.length);\n }\n }\n this.cachedMinIndentation = minIndentation;\n return minIndentation;\n }\n}\nclass TwoThreeListAstNode extends ListAstNode {\n get childrenLength() {\n return this._item3 !== null ? 3 : 2;\n }\n getChild(idx) {\n switch (idx) {\n case 0: return this._item1;\n case 1: return this._item2;\n case 2: return this._item3;\n }\n throw new Error('Invalid child index');\n }\n setChild(idx, node) {\n switch (idx) {\n case 0:\n this._item1 = node;\n return;\n case 1:\n this._item2 = node;\n return;\n case 2:\n this._item3 = node;\n return;\n }\n throw new Error('Invalid child index');\n }\n get children() {\n return this._item3 ? [this._item1, this._item2, this._item3] : [this._item1, this._item2];\n }\n get item1() {\n return this._item1;\n }\n get item2() {\n return this._item2;\n }\n get item3() {\n return this._item3;\n }\n constructor(length, listHeight, _item1, _item2, _item3, missingOpeningBracketIds) {\n super(length, listHeight, missingOpeningBracketIds);\n this._item1 = _item1;\n this._item2 = _item2;\n this._item3 = _item3;\n }\n deepClone() {\n return new TwoThreeListAstNode(this.length, this.listHeight, this._item1.deepClone(), this._item2.deepClone(), this._item3 ? this._item3.deepClone() : null, this.missingOpeningBracketIds);\n }\n appendChildOfSameHeight(node) {\n if (this._item3) {\n throw new Error('Cannot append to a full (2,3) tree node');\n }\n this.throwIfImmutable();\n this._item3 = node;\n this.handleChildrenChanged();\n }\n unappendChild() {\n if (!this._item3) {\n throw new Error('Cannot remove from a non-full (2,3) tree node');\n }\n this.throwIfImmutable();\n const result = this._item3;\n this._item3 = null;\n this.handleChildrenChanged();\n return result;\n }\n prependChildOfSameHeight(node) {\n if (this._item3) {\n throw new Error('Cannot prepend to a full (2,3) tree node');\n }\n this.throwIfImmutable();\n this._item3 = this._item2;\n this._item2 = this._item1;\n this._item1 = node;\n this.handleChildrenChanged();\n }\n unprependChild() {\n if (!this._item3) {\n throw new Error('Cannot remove from a non-full (2,3) tree node');\n }\n this.throwIfImmutable();\n const result = this._item1;\n this._item1 = this._item2;\n this._item2 = this._item3;\n this._item3 = null;\n this.handleChildrenChanged();\n return result;\n }\n toMutable() {\n return this;\n }\n}\n/**\n * Immutable, if all children are immutable.\n*/\nclass Immutable23ListAstNode extends TwoThreeListAstNode {\n toMutable() {\n return new TwoThreeListAstNode(this.length, this.listHeight, this.item1, this.item2, this.item3, this.missingOpeningBracketIds);\n }\n throwIfImmutable() {\n throw new Error('this instance is immutable');\n }\n}\n/**\n * For debugging.\n*/\nclass ArrayListAstNode extends ListAstNode {\n get childrenLength() {\n return this._children.length;\n }\n getChild(idx) {\n return this._children[idx];\n }\n setChild(idx, child) {\n this._children[idx] = child;\n }\n get children() {\n return this._children;\n }\n constructor(length, listHeight, _children, missingOpeningBracketIds) {\n super(length, listHeight, missingOpeningBracketIds);\n this._children = _children;\n }\n deepClone() {\n const children = new Array(this._children.length);\n for (let i = 0; i < this._children.length; i++) {\n children[i] = this._children[i].deepClone();\n }\n return new ArrayListAstNode(this.length, this.listHeight, children, this.missingOpeningBracketIds);\n }\n appendChildOfSameHeight(node) {\n this.throwIfImmutable();\n this._children.push(node);\n this.handleChildrenChanged();\n }\n unappendChild() {\n this.throwIfImmutable();\n const item = this._children.pop();\n this.handleChildrenChanged();\n return item;\n }\n prependChildOfSameHeight(node) {\n this.throwIfImmutable();\n this._children.unshift(node);\n this.handleChildrenChanged();\n }\n unprependChild() {\n this.throwIfImmutable();\n const item = this._children.shift();\n this.handleChildrenChanged();\n return item;\n }\n toMutable() {\n return this;\n }\n}\n/**\n * Immutable, if all children are immutable.\n*/\nclass ImmutableArrayListAstNode extends ArrayListAstNode {\n toMutable() {\n return new ArrayListAstNode(this.length, this.listHeight, [...this.children], this.missingOpeningBracketIds);\n }\n throwIfImmutable() {\n throw new Error('this instance is immutable');\n }\n}\nconst emptyArray = [];\nclass ImmutableLeafAstNode extends BaseAstNode {\n get listHeight() {\n return 0;\n }\n get childrenLength() {\n return 0;\n }\n getChild(idx) {\n return null;\n }\n get children() {\n return emptyArray;\n }\n deepClone() {\n return this;\n }\n}\nclass TextAstNode extends ImmutableLeafAstNode {\n get kind() {\n return 0 /* AstNodeKind.Text */;\n }\n get missingOpeningBracketIds() {\n return _smallImmutableSet_js__WEBPACK_IMPORTED_MODULE_3__.SmallImmutableSet.getEmpty();\n }\n canBeReused(_openedBracketIds) {\n return true;\n }\n computeMinIndentation(offset, textModel) {\n const start = (0,_length_js__WEBPACK_IMPORTED_MODULE_2__.lengthToObj)(offset);\n // Text ast nodes don't have partial indentation (ensured by the tokenizer).\n // Thus, if this text node does not start at column 0, the first line cannot have any indentation at all.\n const startLineNumber = (start.columnCount === 0 ? start.lineCount : start.lineCount + 1) + 1;\n const endLineNumber = (0,_length_js__WEBPACK_IMPORTED_MODULE_2__.lengthGetLineCount)((0,_length_js__WEBPACK_IMPORTED_MODULE_2__.lengthAdd)(offset, this.length)) + 1;\n let result = Number.MAX_SAFE_INTEGER;\n for (let lineNumber = startLineNumber; lineNumber <= endLineNumber; lineNumber++) {\n const firstNonWsColumn = textModel.getLineFirstNonWhitespaceColumn(lineNumber);\n const lineContent = textModel.getLineContent(lineNumber);\n if (firstNonWsColumn === 0) {\n continue;\n }\n const visibleColumn = _core_cursorColumns_js__WEBPACK_IMPORTED_MODULE_1__.CursorColumns.visibleColumnFromColumn(lineContent, firstNonWsColumn, textModel.getOptions().tabSize);\n result = Math.min(result, visibleColumn);\n }\n return result;\n }\n}\nclass BracketAstNode extends ImmutableLeafAstNode {\n static create(length, bracketInfo, bracketIds) {\n const node = new BracketAstNode(length, bracketInfo, bracketIds);\n return node;\n }\n get kind() {\n return 1 /* AstNodeKind.Bracket */;\n }\n get missingOpeningBracketIds() {\n return _smallImmutableSet_js__WEBPACK_IMPORTED_MODULE_3__.SmallImmutableSet.getEmpty();\n }\n constructor(length, bracketInfo, \n /**\n * In case of a opening bracket, this is the id of the opening bracket.\n * In case of a closing bracket, this contains the ids of all opening brackets it can close.\n */\n bracketIds) {\n super(length);\n this.bracketInfo = bracketInfo;\n this.bracketIds = bracketIds;\n }\n get text() {\n return this.bracketInfo.bracketText;\n }\n get languageId() {\n return this.bracketInfo.languageId;\n }\n canBeReused(_openedBracketIds) {\n // These nodes could be reused,\n // but not in a general way.\n // Their parent may be reused.\n return false;\n }\n computeMinIndentation(offset, textModel) {\n return Number.MAX_SAFE_INTEGER;\n }\n}\nclass InvalidBracketAstNode extends ImmutableLeafAstNode {\n get kind() {\n return 3 /* AstNodeKind.UnexpectedClosingBracket */;\n }\n constructor(closingBrackets, length) {\n super(length);\n this.missingOpeningBracketIds = closingBrackets;\n }\n canBeReused(openedBracketIds) {\n return !openedBracketIds.intersects(this.missingOpeningBracketIds);\n }\n computeMinIndentation(offset, textModel) {\n return Number.MAX_SAFE_INTEGER;\n }\n}\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/common/model/bracketPairsTextModelPart/bracketPairsTree/ast.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/common/model/bracketPairsTextModelPart/bracketPairsTree/beforeEditPositionMapper.js":
/*!**************************************************************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/common/model/bracketPairsTextModelPart/bracketPairsTree/beforeEditPositionMapper.js ***!
\**************************************************************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ BeforeEditPositionMapper: () => (/* binding */ BeforeEditPositionMapper),\n/* harmony export */ TextEditInfo: () => (/* binding */ TextEditInfo)\n/* harmony export */ });\n/* harmony import */ var _core_range_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../core/range.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/core/range.js\");\n/* harmony import */ var _length_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./length.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/model/bracketPairsTextModelPart/bracketPairsTree/length.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n\nclass TextEditInfo {\n static fromModelContentChanges(changes) {\n // Must be sorted in ascending order\n const edits = changes.map(c => {\n const range = _core_range_js__WEBPACK_IMPORTED_MODULE_0__.Range.lift(c.range);\n return new TextEditInfo((0,_length_js__WEBPACK_IMPORTED_MODULE_1__.positionToLength)(range.getStartPosition()), (0,_length_js__WEBPACK_IMPORTED_MODULE_1__.positionToLength)(range.getEndPosition()), (0,_length_js__WEBPACK_IMPORTED_MODULE_1__.lengthOfString)(c.text));\n }).reverse();\n return edits;\n }\n constructor(startOffset, endOffset, newLength) {\n this.startOffset = startOffset;\n this.endOffset = endOffset;\n this.newLength = newLength;\n }\n toString() {\n return `[${(0,_length_js__WEBPACK_IMPORTED_MODULE_1__.lengthToObj)(this.startOffset)}...${(0,_length_js__WEBPACK_IMPORTED_MODULE_1__.lengthToObj)(this.endOffset)}) -> ${(0,_length_js__WEBPACK_IMPORTED_MODULE_1__.lengthToObj)(this.newLength)}`;\n }\n}\nclass BeforeEditPositionMapper {\n /**\n * @param edits Must be sorted by offset in ascending order.\n */\n constructor(edits) {\n this.nextEditIdx = 0;\n this.deltaOldToNewLineCount = 0;\n this.deltaOldToNewColumnCount = 0;\n this.deltaLineIdxInOld = -1;\n this.edits = edits.map(edit => TextEditInfoCache.from(edit));\n }\n /**\n * @param offset Must be equal to or greater than the last offset this method has been called with.\n */\n getOffsetBeforeChange(offset) {\n this.adjustNextEdit(offset);\n return this.translateCurToOld(offset);\n }\n /**\n * @param offset Must be equal to or greater than the last offset this method has been called with.\n * Returns null if there is no edit anymore.\n */\n getDistanceToNextChange(offset) {\n this.adjustNextEdit(offset);\n const nextEdit = this.edits[this.nextEditIdx];\n const nextChangeOffset = nextEdit ? this.translateOldToCur(nextEdit.offsetObj) : null;\n if (nextChangeOffset === null) {\n return null;\n }\n return (0,_length_js__WEBPACK_IMPORTED_MODULE_1__.lengthDiffNonNegative)(offset, nextChangeOffset);\n }\n translateOldToCur(oldOffsetObj) {\n if (oldOffsetObj.lineCount === this.deltaLineIdxInOld) {\n return (0,_length_js__WEBPACK_IMPORTED_MODULE_1__.toLength)(oldOffsetObj.lineCount + this.deltaOldToNewLineCount, oldOffsetObj.columnCount + this.deltaOldToNewColumnCount);\n }\n else {\n return (0,_length_js__WEBPACK_IMPORTED_MODULE_1__.toLength)(oldOffsetObj.lineCount + this.deltaOldToNewLineCount, oldOffsetObj.columnCount);\n }\n }\n translateCurToOld(newOffset) {\n const offsetObj = (0,_length_js__WEBPACK_IMPORTED_MODULE_1__.lengthToObj)(newOffset);\n if (offsetObj.lineCount - this.deltaOldToNewLineCount === this.deltaLineIdxInOld) {\n return (0,_length_js__WEBPACK_IMPORTED_MODULE_1__.toLength)(offsetObj.lineCount - this.deltaOldToNewLineCount, offsetObj.columnCount - this.deltaOldToNewColumnCount);\n }\n else {\n return (0,_length_js__WEBPACK_IMPORTED_MODULE_1__.toLength)(offsetObj.lineCount - this.deltaOldToNewLineCount, offsetObj.columnCount);\n }\n }\n adjustNextEdit(offset) {\n while (this.nextEditIdx < this.edits.length) {\n const nextEdit = this.edits[this.nextEditIdx];\n // After applying the edit, what is its end offset (considering all previous edits)?\n const nextEditEndOffsetInCur = this.translateOldToCur(nextEdit.endOffsetAfterObj);\n if ((0,_length_js__WEBPACK_IMPORTED_MODULE_1__.lengthLessThanEqual)(nextEditEndOffsetInCur, offset)) {\n // We are after the edit, skip it\n this.nextEditIdx++;\n const nextEditEndOffsetInCurObj = (0,_length_js__WEBPACK_IMPORTED_MODULE_1__.lengthToObj)(nextEditEndOffsetInCur);\n // Before applying the edit, what is its end offset (considering all previous edits)?\n const nextEditEndOffsetBeforeInCurObj = (0,_length_js__WEBPACK_IMPORTED_MODULE_1__.lengthToObj)(this.translateOldToCur(nextEdit.endOffsetBeforeObj));\n const lineDelta = nextEditEndOffsetInCurObj.lineCount - nextEditEndOffsetBeforeInCurObj.lineCount;\n this.deltaOldToNewLineCount += lineDelta;\n const previousColumnDelta = this.deltaLineIdxInOld === nextEdit.endOffsetBeforeObj.lineCount ? this.deltaOldToNewColumnCount : 0;\n const columnDelta = nextEditEndOffsetInCurObj.columnCount - nextEditEndOffsetBeforeInCurObj.columnCount;\n this.deltaOldToNewColumnCount = previousColumnDelta + columnDelta;\n this.deltaLineIdxInOld = nextEdit.endOffsetBeforeObj.lineCount;\n }\n else {\n // We are in or before the edit.\n break;\n }\n }\n }\n}\nclass TextEditInfoCache {\n static from(edit) {\n return new TextEditInfoCache(edit.startOffset, edit.endOffset, edit.newLength);\n }\n constructor(startOffset, endOffset, textLength) {\n this.endOffsetBeforeObj = (0,_length_js__WEBPACK_IMPORTED_MODULE_1__.lengthToObj)(endOffset);\n this.endOffsetAfterObj = (0,_length_js__WEBPACK_IMPORTED_MODULE_1__.lengthToObj)((0,_length_js__WEBPACK_IMPORTED_MODULE_1__.lengthAdd)(startOffset, textLength));\n this.offsetObj = (0,_length_js__WEBPACK_IMPORTED_MODULE_1__.lengthToObj)(startOffset);\n }\n}\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/common/model/bracketPairsTextModelPart/bracketPairsTree/beforeEditPositionMapper.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/common/model/bracketPairsTextModelPart/bracketPairsTree/bracketPairsTree.js":
/*!******************************************************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/common/model/bracketPairsTextModelPart/bracketPairsTree/bracketPairsTree.js ***!
\******************************************************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ BracketPairsTree: () => (/* binding */ BracketPairsTree)\n/* harmony export */ });\n/* harmony import */ var _base_common_event_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../../../base/common/event.js */ \"./node_modules/monaco-editor/esm/vs/base/common/event.js\");\n/* harmony import */ var _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../../base/common/lifecycle.js */ \"./node_modules/monaco-editor/esm/vs/base/common/lifecycle.js\");\n/* harmony import */ var _textModelBracketPairs_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../textModelBracketPairs.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/textModelBracketPairs.js\");\n/* harmony import */ var _beforeEditPositionMapper_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./beforeEditPositionMapper.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/model/bracketPairsTextModelPart/bracketPairsTree/beforeEditPositionMapper.js\");\n/* harmony import */ var _brackets_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./brackets.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/model/bracketPairsTextModelPart/bracketPairsTree/brackets.js\");\n/* harmony import */ var _length_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./length.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/model/bracketPairsTextModelPart/bracketPairsTree/length.js\");\n/* harmony import */ var _parser_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ./parser.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/model/bracketPairsTextModelPart/bracketPairsTree/parser.js\");\n/* harmony import */ var _smallImmutableSet_js__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ./smallImmutableSet.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/model/bracketPairsTextModelPart/bracketPairsTree/smallImmutableSet.js\");\n/* harmony import */ var _tokenizer_js__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ./tokenizer.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/model/bracketPairsTextModelPart/bracketPairsTree/tokenizer.js\");\n/* harmony import */ var _base_common_arrays_js__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ../../../../../base/common/arrays.js */ \"./node_modules/monaco-editor/esm/vs/base/common/arrays.js\");\n/* harmony import */ var _combineTextEditInfos_js__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! ./combineTextEditInfos.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/model/bracketPairsTextModelPart/bracketPairsTree/combineTextEditInfos.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n\n\n\n\n\n\n\n\n\n\nclass BracketPairsTree extends _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_1__.Disposable {\n didLanguageChange(languageId) {\n return this.brackets.didLanguageChange(languageId);\n }\n constructor(textModel, getLanguageConfiguration) {\n super();\n this.textModel = textModel;\n this.getLanguageConfiguration = getLanguageConfiguration;\n this.didChangeEmitter = new _base_common_event_js__WEBPACK_IMPORTED_MODULE_0__.Emitter();\n this.denseKeyProvider = new _smallImmutableSet_js__WEBPACK_IMPORTED_MODULE_7__.DenseKeyProvider();\n this.brackets = new _brackets_js__WEBPACK_IMPORTED_MODULE_4__.LanguageAgnosticBracketTokens(this.denseKeyProvider, this.getLanguageConfiguration);\n this.onDidChange = this.didChangeEmitter.event;\n this.queuedTextEditsForInitialAstWithoutTokens = [];\n this.queuedTextEdits = [];\n if (!textModel.tokenization.hasTokens) {\n const brackets = this.brackets.getSingleLanguageBracketTokens(this.textModel.getLanguageId());\n const tokenizer = new _tokenizer_js__WEBPACK_IMPORTED_MODULE_8__.FastTokenizer(this.textModel.getValue(), brackets);\n this.initialAstWithoutTokens = (0,_parser_js__WEBPACK_IMPORTED_MODULE_6__.parseDocument)(tokenizer, [], undefined, true);\n this.astWithTokens = this.initialAstWithoutTokens;\n }\n else if (textModel.tokenization.backgroundTokenizationState === 2 /* BackgroundTokenizationState.Completed */) {\n // Skip the initial ast, as there is no flickering.\n // Directly create the tree with token information.\n this.initialAstWithoutTokens = undefined;\n this.astWithTokens = this.parseDocumentFromTextBuffer([], undefined, false);\n }\n else {\n // We missed some token changes already, so we cannot use the fast tokenizer + delta increments\n this.initialAstWithoutTokens = this.parseDocumentFromTextBuffer([], undefined, true);\n this.astWithTokens = this.initialAstWithoutTokens;\n }\n }\n //#region TextModel events\n handleDidChangeBackgroundTokenizationState() {\n if (this.textModel.tokenization.backgroundTokenizationState === 2 /* BackgroundTokenizationState.Completed */) {\n const wasUndefined = this.initialAstWithoutTokens === undefined;\n // Clear the initial tree as we can use the tree with token information now.\n this.initialAstWithoutTokens = undefined;\n if (!wasUndefined) {\n this.didChangeEmitter.fire();\n }\n }\n }\n handleDidChangeTokens({ ranges }) {\n const edits = ranges.map(r => new _beforeEditPositionMapper_js__WEBPACK_IMPORTED_MODULE_3__.TextEditInfo((0,_length_js__WEBPACK_IMPORTED_MODULE_5__.toLength)(r.fromLineNumber - 1, 0), (0,_length_js__WEBPACK_IMPORTED_MODULE_5__.toLength)(r.toLineNumber, 0), (0,_length_js__WEBPACK_IMPORTED_MODULE_5__.toLength)(r.toLineNumber - r.fromLineNumber + 1, 0)));\n this.handleEdits(edits, true);\n if (!this.initialAstWithoutTokens) {\n this.didChangeEmitter.fire();\n }\n }\n handleContentChanged(change) {\n const edits = _beforeEditPositionMapper_js__WEBPACK_IMPORTED_MODULE_3__.TextEditInfo.fromModelContentChanges(change.changes);\n this.handleEdits(edits, false);\n }\n handleEdits(edits, tokenChange) {\n // Lazily queue the edits and only apply them when the tree is accessed.\n const result = (0,_combineTextEditInfos_js__WEBPACK_IMPORTED_MODULE_10__.combineTextEditInfos)(this.queuedTextEdits, edits);\n this.queuedTextEdits = result;\n if (this.initialAstWithoutTokens && !tokenChange) {\n this.queuedTextEditsForInitialAstWithoutTokens = (0,_combineTextEditInfos_js__WEBPACK_IMPORTED_MODULE_10__.combineTextEditInfos)(this.queuedTextEditsForInitialAstWithoutTokens, edits);\n }\n }\n //#endregion\n flushQueue() {\n if (this.queuedTextEdits.length > 0) {\n this.astWithTokens = this.parseDocumentFromTextBuffer(this.queuedTextEdits, this.astWithTokens, false);\n this.queuedTextEdits = [];\n }\n if (this.queuedTextEditsForInitialAstWithoutTokens.length > 0) {\n if (this.initialAstWithoutTokens) {\n this.initialAstWithoutTokens = this.parseDocumentFromTextBuffer(this.queuedTextEditsForInitialAstWithoutTokens, this.initialAstWithoutTokens, false);\n }\n this.queuedTextEditsForInitialAstWithoutTokens = [];\n }\n }\n /**\n * @pure (only if isPure = true)\n */\n parseDocumentFromTextBuffer(edits, previousAst, immutable) {\n // Is much faster if `isPure = false`.\n const isPure = false;\n const previousAstClone = isPure ? previousAst === null || previousAst === void 0 ? void 0 : previousAst.deepClone() : previousAst;\n const tokenizer = new _tokenizer_js__WEBPACK_IMPORTED_MODULE_8__.TextBufferTokenizer(this.textModel, this.brackets);\n const result = (0,_parser_js__WEBPACK_IMPORTED_MODULE_6__.parseDocument)(tokenizer, edits, previousAstClone, immutable);\n return result;\n }\n getBracketsInRange(range, onlyColorizedBrackets) {\n this.flushQueue();\n const startOffset = (0,_length_js__WEBPACK_IMPORTED_MODULE_5__.toLength)(range.startLineNumber - 1, range.startColumn - 1);\n const endOffset = (0,_length_js__WEBPACK_IMPORTED_MODULE_5__.toLength)(range.endLineNumber - 1, range.endColumn - 1);\n return new _base_common_arrays_js__WEBPACK_IMPORTED_MODULE_9__.CallbackIterable(cb => {\n const node = this.initialAstWithoutTokens || this.astWithTokens;\n collectBrackets(node, _length_js__WEBPACK_IMPORTED_MODULE_5__.lengthZero, node.length, startOffset, endOffset, cb, 0, 0, new Map(), onlyColorizedBrackets);\n });\n }\n getBracketPairsInRange(range, includeMinIndentation) {\n this.flushQueue();\n const startLength = (0,_length_js__WEBPACK_IMPORTED_MODULE_5__.positionToLength)(range.getStartPosition());\n const endLength = (0,_length_js__WEBPACK_IMPORTED_MODULE_5__.positionToLength)(range.getEndPosition());\n return new _base_common_arrays_js__WEBPACK_IMPORTED_MODULE_9__.CallbackIterable(cb => {\n const node = this.initialAstWithoutTokens || this.astWithTokens;\n const context = new CollectBracketPairsContext(cb, includeMinIndentation, this.textModel);\n collectBracketPairs(node, _length_js__WEBPACK_IMPORTED_MODULE_5__.lengthZero, node.length, startLength, endLength, context, 0, new Map());\n });\n }\n getFirstBracketAfter(position) {\n this.flushQueue();\n const node = this.initialAstWithoutTokens || this.astWithTokens;\n return getFirstBracketAfter(node, _length_js__WEBPACK_IMPORTED_MODULE_5__.lengthZero, node.length, (0,_length_js__WEBPACK_IMPORTED_MODULE_5__.positionToLength)(position));\n }\n getFirstBracketBefore(position) {\n this.flushQueue();\n const node = this.initialAstWithoutTokens || this.astWithTokens;\n return getFirstBracketBefore(node, _length_js__WEBPACK_IMPORTED_MODULE_5__.lengthZero, node.length, (0,_length_js__WEBPACK_IMPORTED_MODULE_5__.positionToLength)(position));\n }\n}\nfunction getFirstBracketBefore(node, nodeOffsetStart, nodeOffsetEnd, position) {\n if (node.kind === 4 /* AstNodeKind.List */ || node.kind === 2 /* AstNodeKind.Pair */) {\n const lengths = [];\n for (const child of node.children) {\n nodeOffsetEnd = (0,_length_js__WEBPACK_IMPORTED_MODULE_5__.lengthAdd)(nodeOffsetStart, child.length);\n lengths.push({ nodeOffsetStart, nodeOffsetEnd });\n nodeOffsetStart = nodeOffsetEnd;\n }\n for (let i = lengths.length - 1; i >= 0; i--) {\n const { nodeOffsetStart, nodeOffsetEnd } = lengths[i];\n if ((0,_length_js__WEBPACK_IMPORTED_MODULE_5__.lengthLessThan)(nodeOffsetStart, position)) {\n const result = getFirstBracketBefore(node.children[i], nodeOffsetStart, nodeOffsetEnd, position);\n if (result) {\n return result;\n }\n }\n }\n return null;\n }\n else if (node.kind === 3 /* AstNodeKind.UnexpectedClosingBracket */) {\n return null;\n }\n else if (node.kind === 1 /* AstNodeKind.Bracket */) {\n const range = (0,_length_js__WEBPACK_IMPORTED_MODULE_5__.lengthsToRange)(nodeOffsetStart, nodeOffsetEnd);\n return {\n bracketInfo: node.bracketInfo,\n range\n };\n }\n return null;\n}\nfunction getFirstBracketAfter(node, nodeOffsetStart, nodeOffsetEnd, position) {\n if (node.kind === 4 /* AstNodeKind.List */ || node.kind === 2 /* AstNodeKind.Pair */) {\n for (const child of node.children) {\n nodeOffsetEnd = (0,_length_js__WEBPACK_IMPORTED_MODULE_5__.lengthAdd)(nodeOffsetStart, child.length);\n if ((0,_length_js__WEBPACK_IMPORTED_MODULE_5__.lengthLessThan)(position, nodeOffsetEnd)) {\n const result = getFirstBracketAfter(child, nodeOffsetStart, nodeOffsetEnd, position);\n if (result) {\n return result;\n }\n }\n nodeOffsetStart = nodeOffsetEnd;\n }\n return null;\n }\n else if (node.kind === 3 /* AstNodeKind.UnexpectedClosingBracket */) {\n return null;\n }\n else if (node.kind === 1 /* AstNodeKind.Bracket */) {\n const range = (0,_length_js__WEBPACK_IMPORTED_MODULE_5__.lengthsToRange)(nodeOffsetStart, nodeOffsetEnd);\n return {\n bracketInfo: node.bracketInfo,\n range\n };\n }\n return null;\n}\nfunction collectBrackets(node, nodeOffsetStart, nodeOffsetEnd, startOffset, endOffset, push, level, nestingLevelOfEqualBracketType, levelPerBracketType, onlyColorizedBrackets, parentPairIsIncomplete = false) {\n if (level > 200) {\n return true;\n }\n whileLoop: while (true) {\n switch (node.kind) {\n case 4 /* AstNodeKind.List */: {\n const childCount = node.childrenLength;\n for (let i = 0; i < childCount; i++) {\n const child = node.getChild(i);\n if (!child) {\n continue;\n }\n nodeOffsetEnd = (0,_length_js__WEBPACK_IMPORTED_MODULE_5__.lengthAdd)(nodeOffsetStart, child.length);\n if ((0,_length_js__WEBPACK_IMPORTED_MODULE_5__.lengthLessThanEqual)(nodeOffsetStart, endOffset) &&\n (0,_length_js__WEBPACK_IMPORTED_MODULE_5__.lengthGreaterThanEqual)(nodeOffsetEnd, startOffset)) {\n const childEndsAfterEnd = (0,_length_js__WEBPACK_IMPORTED_MODULE_5__.lengthGreaterThanEqual)(nodeOffsetEnd, endOffset);\n if (childEndsAfterEnd) {\n // No child after this child in the requested window, don't recurse\n node = child;\n continue whileLoop;\n }\n const shouldContinue = collectBrackets(child, nodeOffsetStart, nodeOffsetEnd, startOffset, endOffset, push, level, 0, levelPerBracketType, onlyColorizedBrackets);\n if (!shouldContinue) {\n return false;\n }\n }\n nodeOffsetStart = nodeOffsetEnd;\n }\n return true;\n }\n case 2 /* AstNodeKind.Pair */: {\n const colorize = !onlyColorizedBrackets || !node.closingBracket || node.closingBracket.bracketInfo.closesColorized(node.openingBracket.bracketInfo);\n let levelPerBracket = 0;\n if (levelPerBracketType) {\n let existing = levelPerBracketType.get(node.openingBracket.text);\n if (existing === undefined) {\n existing = 0;\n }\n levelPerBracket = existing;\n if (colorize) {\n existing++;\n levelPerBracketType.set(node.openingBracket.text, existing);\n }\n }\n const childCount = node.childrenLength;\n for (let i = 0; i < childCount; i++) {\n const child = node.getChild(i);\n if (!child) {\n continue;\n }\n nodeOffsetEnd = (0,_length_js__WEBPACK_IMPORTED_MODULE_5__.lengthAdd)(nodeOffsetStart, child.length);\n if ((0,_length_js__WEBPACK_IMPORTED_MODULE_5__.lengthLessThanEqual)(nodeOffsetStart, endOffset) &&\n (0,_length_js__WEBPACK_IMPORTED_MODULE_5__.lengthGreaterThanEqual)(nodeOffsetEnd, startOffset)) {\n const childEndsAfterEnd = (0,_length_js__WEBPACK_IMPORTED_MODULE_5__.lengthGreaterThanEqual)(nodeOffsetEnd, endOffset);\n if (childEndsAfterEnd && child.kind !== 1 /* AstNodeKind.Bracket */) {\n // No child after this child in the requested window, don't recurse\n // Don't do this for brackets because of unclosed/unopened brackets\n node = child;\n if (colorize) {\n level++;\n nestingLevelOfEqualBracketType = levelPerBracket + 1;\n }\n else {\n nestingLevelOfEqualBracketType = levelPerBracket;\n }\n continue whileLoop;\n }\n if (colorize || child.kind !== 1 /* AstNodeKind.Bracket */ || !node.closingBracket) {\n const shouldContinue = collectBrackets(child, nodeOffsetStart, nodeOffsetEnd, startOffset, endOffset, push, colorize ? level + 1 : level, colorize ? levelPerBracket + 1 : levelPerBracket, levelPerBracketType, onlyColorizedBrackets, !node.closingBracket);\n if (!shouldContinue) {\n return false;\n }\n }\n }\n nodeOffsetStart = nodeOffsetEnd;\n }\n levelPerBracketType === null || levelPerBracketType === void 0 ? void 0 : levelPerBracketType.set(node.openingBracket.text, levelPerBracket);\n return true;\n }\n case 3 /* AstNodeKind.UnexpectedClosingBracket */: {\n const range = (0,_length_js__WEBPACK_IMPORTED_MODULE_5__.lengthsToRange)(nodeOffsetStart, nodeOffsetEnd);\n return push(new _textModelBracketPairs_js__WEBPACK_IMPORTED_MODULE_2__.BracketInfo(range, level - 1, 0, true));\n }\n case 1 /* AstNodeKind.Bracket */: {\n const range = (0,_length_js__WEBPACK_IMPORTED_MODULE_5__.lengthsToRange)(nodeOffsetStart, nodeOffsetEnd);\n return push(new _textModelBracketPairs_js__WEBPACK_IMPORTED_MODULE_2__.BracketInfo(range, level - 1, nestingLevelOfEqualBracketType - 1, parentPairIsIncomplete));\n }\n case 0 /* AstNodeKind.Text */:\n return true;\n }\n }\n}\nclass CollectBracketPairsContext {\n constructor(push, includeMinIndentation, textModel) {\n this.push = push;\n this.includeMinIndentation = includeMinIndentation;\n this.textModel = textModel;\n }\n}\nfunction collectBracketPairs(node, nodeOffsetStart, nodeOffsetEnd, startOffset, endOffset, context, level, levelPerBracketType) {\n var _a;\n if (level > 200) {\n return true;\n }\n let shouldContinue = true;\n if (node.kind === 2 /* AstNodeKind.Pair */) {\n let levelPerBracket = 0;\n if (levelPerBracketType) {\n let existing = levelPerBracketType.get(node.openingBracket.text);\n if (existing === undefined) {\n existing = 0;\n }\n levelPerBracket = existing;\n existing++;\n levelPerBracketType.set(node.openingBracket.text, existing);\n }\n const openingBracketEnd = (0,_length_js__WEBPACK_IMPORTED_MODULE_5__.lengthAdd)(nodeOffsetStart, node.openingBracket.length);\n let minIndentation = -1;\n if (context.includeMinIndentation) {\n minIndentation = node.computeMinIndentation(nodeOffsetStart, context.textModel);\n }\n shouldContinue = context.push(new _textModelBracketPairs_js__WEBPACK_IMPORTED_MODULE_2__.BracketPairWithMinIndentationInfo((0,_length_js__WEBPACK_IMPORTED_MODULE_5__.lengthsToRange)(nodeOffsetStart, nodeOffsetEnd), (0,_length_js__WEBPACK_IMPORTED_MODULE_5__.lengthsToRange)(nodeOffsetStart, openingBracketEnd), node.closingBracket\n ? (0,_length_js__WEBPACK_IMPORTED_MODULE_5__.lengthsToRange)((0,_length_js__WEBPACK_IMPORTED_MODULE_5__.lengthAdd)(openingBracketEnd, ((_a = node.child) === null || _a === void 0 ? void 0 : _a.length) || _length_js__WEBPACK_IMPORTED_MODULE_5__.lengthZero), nodeOffsetEnd)\n : undefined, level, levelPerBracket, node, minIndentation));\n nodeOffsetStart = openingBracketEnd;\n if (shouldContinue && node.child) {\n const child = node.child;\n nodeOffsetEnd = (0,_length_js__WEBPACK_IMPORTED_MODULE_5__.lengthAdd)(nodeOffsetStart, child.length);\n if ((0,_length_js__WEBPACK_IMPORTED_MODULE_5__.lengthLessThanEqual)(nodeOffsetStart, endOffset) &&\n (0,_length_js__WEBPACK_IMPORTED_MODULE_5__.lengthGreaterThanEqual)(nodeOffsetEnd, startOffset)) {\n shouldContinue = collectBracketPairs(child, nodeOffsetStart, nodeOffsetEnd, startOffset, endOffset, context, level + 1, levelPerBracketType);\n if (!shouldContinue) {\n return false;\n }\n }\n }\n levelPerBracketType === null || levelPerBracketType === void 0 ? void 0 : levelPerBracketType.set(node.openingBracket.text, levelPerBracket);\n }\n else {\n let curOffset = nodeOffsetStart;\n for (const child of node.children) {\n const childOffset = curOffset;\n curOffset = (0,_length_js__WEBPACK_IMPORTED_MODULE_5__.lengthAdd)(curOffset, child.length);\n if ((0,_length_js__WEBPACK_IMPORTED_MODULE_5__.lengthLessThanEqual)(childOffset, endOffset) &&\n (0,_length_js__WEBPACK_IMPORTED_MODULE_5__.lengthLessThanEqual)(startOffset, curOffset)) {\n shouldContinue = collectBracketPairs(child, childOffset, curOffset, startOffset, endOffset, context, level, levelPerBracketType);\n if (!shouldContinue) {\n return false;\n }\n }\n }\n }\n return shouldContinue;\n}\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/common/model/bracketPairsTextModelPart/bracketPairsTree/bracketPairsTree.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/common/model/bracketPairsTextModelPart/bracketPairsTree/brackets.js":
/*!**********************************************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/common/model/bracketPairsTextModelPart/bracketPairsTree/brackets.js ***!
\**********************************************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ BracketTokens: () => (/* binding */ BracketTokens),\n/* harmony export */ LanguageAgnosticBracketTokens: () => (/* binding */ LanguageAgnosticBracketTokens)\n/* harmony export */ });\n/* harmony import */ var _base_common_strings_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../../../base/common/strings.js */ \"./node_modules/monaco-editor/esm/vs/base/common/strings.js\");\n/* harmony import */ var _ast_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./ast.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/model/bracketPairsTextModelPart/bracketPairsTree/ast.js\");\n/* harmony import */ var _length_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./length.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/model/bracketPairsTextModelPart/bracketPairsTree/length.js\");\n/* harmony import */ var _smallImmutableSet_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./smallImmutableSet.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/model/bracketPairsTextModelPart/bracketPairsTree/smallImmutableSet.js\");\n/* harmony import */ var _tokenizer_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./tokenizer.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/model/bracketPairsTextModelPart/bracketPairsTree/tokenizer.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n\n\n\n\nclass BracketTokens {\n static createFromLanguage(configuration, denseKeyProvider) {\n function getId(bracketInfo) {\n return denseKeyProvider.getKey(`${bracketInfo.languageId}:::${bracketInfo.bracketText}`);\n }\n const map = new Map();\n for (const openingBracket of configuration.bracketsNew.openingBrackets) {\n const length = (0,_length_js__WEBPACK_IMPORTED_MODULE_2__.toLength)(0, openingBracket.bracketText.length);\n const openingTextId = getId(openingBracket);\n const bracketIds = _smallImmutableSet_js__WEBPACK_IMPORTED_MODULE_3__.SmallImmutableSet.getEmpty().add(openingTextId, _smallImmutableSet_js__WEBPACK_IMPORTED_MODULE_3__.identityKeyProvider);\n map.set(openingBracket.bracketText, new _tokenizer_js__WEBPACK_IMPORTED_MODULE_4__.Token(length, 1 /* TokenKind.OpeningBracket */, openingTextId, bracketIds, _ast_js__WEBPACK_IMPORTED_MODULE_1__.BracketAstNode.create(length, openingBracket, bracketIds)));\n }\n for (const closingBracket of configuration.bracketsNew.closingBrackets) {\n const length = (0,_length_js__WEBPACK_IMPORTED_MODULE_2__.toLength)(0, closingBracket.bracketText.length);\n let bracketIds = _smallImmutableSet_js__WEBPACK_IMPORTED_MODULE_3__.SmallImmutableSet.getEmpty();\n const closingBrackets = closingBracket.getOpeningBrackets();\n for (const bracket of closingBrackets) {\n bracketIds = bracketIds.add(getId(bracket), _smallImmutableSet_js__WEBPACK_IMPORTED_MODULE_3__.identityKeyProvider);\n }\n map.set(closingBracket.bracketText, new _tokenizer_js__WEBPACK_IMPORTED_MODULE_4__.Token(length, 2 /* TokenKind.ClosingBracket */, getId(closingBrackets[0]), bracketIds, _ast_js__WEBPACK_IMPORTED_MODULE_1__.BracketAstNode.create(length, closingBracket, bracketIds)));\n }\n return new BracketTokens(map);\n }\n constructor(map) {\n this.map = map;\n this.hasRegExp = false;\n this._regExpGlobal = null;\n }\n getRegExpStr() {\n if (this.isEmpty) {\n return null;\n }\n else {\n const keys = [...this.map.keys()];\n keys.sort();\n keys.reverse();\n return keys.map(k => prepareBracketForRegExp(k)).join('|');\n }\n }\n /**\n * Returns null if there is no such regexp (because there are no brackets).\n */\n get regExpGlobal() {\n if (!this.hasRegExp) {\n const regExpStr = this.getRegExpStr();\n this._regExpGlobal = regExpStr ? new RegExp(regExpStr, 'gi') : null;\n this.hasRegExp = true;\n }\n return this._regExpGlobal;\n }\n getToken(value) {\n return this.map.get(value.toLowerCase());\n }\n findClosingTokenText(openingBracketIds) {\n for (const [closingText, info] of this.map) {\n if (info.kind === 2 /* TokenKind.ClosingBracket */ && info.bracketIds.intersects(openingBracketIds)) {\n return closingText;\n }\n }\n return undefined;\n }\n get isEmpty() {\n return this.map.size === 0;\n }\n}\nfunction prepareBracketForRegExp(str) {\n let escaped = (0,_base_common_strings_js__WEBPACK_IMPORTED_MODULE_0__.escapeRegExpCharacters)(str);\n // These bracket pair delimiters start or end with letters\n // see https://github.com/microsoft/vscode/issues/132162 https://github.com/microsoft/vscode/issues/150440\n if (/^[\\w ]+/.test(str)) {\n escaped = `\\\\b${escaped}`;\n }\n if (/[\\w ]+$/.test(str)) {\n escaped = `${escaped}\\\\b`;\n }\n return escaped;\n}\nclass LanguageAgnosticBracketTokens {\n constructor(denseKeyProvider, getLanguageConfiguration) {\n this.denseKeyProvider = denseKeyProvider;\n this.getLanguageConfiguration = getLanguageConfiguration;\n this.languageIdToBracketTokens = new Map();\n }\n didLanguageChange(languageId) {\n // Report a change whenever the language configuration updates.\n return this.languageIdToBracketTokens.has(languageId);\n }\n getSingleLanguageBracketTokens(languageId) {\n let singleLanguageBracketTokens = this.languageIdToBracketTokens.get(languageId);\n if (!singleLanguageBracketTokens) {\n singleLanguageBracketTokens = BracketTokens.createFromLanguage(this.getLanguageConfiguration(languageId), this.denseKeyProvider);\n this.languageIdToBracketTokens.set(languageId, singleLanguageBracketTokens);\n }\n return singleLanguageBracketTokens;\n }\n}\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/common/model/bracketPairsTextModelPart/bracketPairsTree/brackets.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/common/model/bracketPairsTextModelPart/bracketPairsTree/combineTextEditInfos.js":
/*!**********************************************************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/common/model/bracketPairsTextModelPart/bracketPairsTree/combineTextEditInfos.js ***!
\**********************************************************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ combineTextEditInfos: () => (/* binding */ combineTextEditInfos)\n/* harmony export */ });\n/* harmony import */ var _base_common_arrays_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../../../base/common/arrays.js */ \"./node_modules/monaco-editor/esm/vs/base/common/arrays.js\");\n/* harmony import */ var _beforeEditPositionMapper_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./beforeEditPositionMapper.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/model/bracketPairsTextModelPart/bracketPairsTree/beforeEditPositionMapper.js\");\n/* harmony import */ var _length_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./length.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/model/bracketPairsTextModelPart/bracketPairsTree/length.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n\n\nfunction combineTextEditInfos(textEditInfoFirst, textEditInfoSecond) {\n if (textEditInfoFirst.length === 0) {\n return textEditInfoSecond;\n }\n if (textEditInfoSecond.length === 0) {\n return textEditInfoFirst;\n }\n // s0: State before any edits\n const s0ToS1Map = new _base_common_arrays_js__WEBPACK_IMPORTED_MODULE_0__.ArrayQueue(toLengthMapping(textEditInfoFirst));\n // s1: State after first edit, but before second edit\n const s1ToS2Map = toLengthMapping(textEditInfoSecond);\n s1ToS2Map.push({ modified: false, lengthBefore: undefined, lengthAfter: undefined }); // Copy everything from old to new\n // s2: State after both edits\n let curItem = s0ToS1Map.dequeue();\n /**\n * @param s1Length Use undefined for length \"infinity\"\n */\n function nextS0ToS1MapWithS1LengthOf(s1Length) {\n if (s1Length === undefined) {\n const arr = s0ToS1Map.takeWhile(v => true) || [];\n if (curItem) {\n arr.unshift(curItem);\n }\n return arr;\n }\n const result = [];\n while (curItem && !(0,_length_js__WEBPACK_IMPORTED_MODULE_2__.lengthIsZero)(s1Length)) {\n const [item, remainingItem] = curItem.splitAt(s1Length);\n result.push(item);\n s1Length = (0,_length_js__WEBPACK_IMPORTED_MODULE_2__.lengthDiffNonNegative)(item.lengthAfter, s1Length);\n curItem = remainingItem !== null && remainingItem !== void 0 ? remainingItem : s0ToS1Map.dequeue();\n }\n if (!(0,_length_js__WEBPACK_IMPORTED_MODULE_2__.lengthIsZero)(s1Length)) {\n result.push(new LengthMapping(false, s1Length, s1Length));\n }\n return result;\n }\n const result = [];\n function pushEdit(startOffset, endOffset, newLength) {\n if (result.length > 0 && (0,_length_js__WEBPACK_IMPORTED_MODULE_2__.lengthEquals)(result[result.length - 1].endOffset, startOffset)) {\n const lastResult = result[result.length - 1];\n result[result.length - 1] = new _beforeEditPositionMapper_js__WEBPACK_IMPORTED_MODULE_1__.TextEditInfo(lastResult.startOffset, endOffset, (0,_length_js__WEBPACK_IMPORTED_MODULE_2__.lengthAdd)(lastResult.newLength, newLength));\n }\n else {\n result.push({ startOffset, endOffset, newLength });\n }\n }\n let s0offset = _length_js__WEBPACK_IMPORTED_MODULE_2__.lengthZero;\n for (const s1ToS2 of s1ToS2Map) {\n const s0ToS1Map = nextS0ToS1MapWithS1LengthOf(s1ToS2.lengthBefore);\n if (s1ToS2.modified) {\n const s0Length = (0,_length_js__WEBPACK_IMPORTED_MODULE_2__.sumLengths)(s0ToS1Map, s => s.lengthBefore);\n const s0EndOffset = (0,_length_js__WEBPACK_IMPORTED_MODULE_2__.lengthAdd)(s0offset, s0Length);\n pushEdit(s0offset, s0EndOffset, s1ToS2.lengthAfter);\n s0offset = s0EndOffset;\n }\n else {\n for (const s1 of s0ToS1Map) {\n const s0startOffset = s0offset;\n s0offset = (0,_length_js__WEBPACK_IMPORTED_MODULE_2__.lengthAdd)(s0offset, s1.lengthBefore);\n if (s1.modified) {\n pushEdit(s0startOffset, s0offset, s1.lengthAfter);\n }\n }\n }\n }\n return result;\n}\nclass LengthMapping {\n constructor(\n /**\n * If false, length before and length after equal.\n */\n modified, lengthBefore, lengthAfter) {\n this.modified = modified;\n this.lengthBefore = lengthBefore;\n this.lengthAfter = lengthAfter;\n }\n splitAt(lengthAfter) {\n const remainingLengthAfter = (0,_length_js__WEBPACK_IMPORTED_MODULE_2__.lengthDiffNonNegative)(lengthAfter, this.lengthAfter);\n if ((0,_length_js__WEBPACK_IMPORTED_MODULE_2__.lengthEquals)(remainingLengthAfter, _length_js__WEBPACK_IMPORTED_MODULE_2__.lengthZero)) {\n return [this, undefined];\n }\n else if (this.modified) {\n return [\n new LengthMapping(this.modified, this.lengthBefore, lengthAfter),\n new LengthMapping(this.modified, _length_js__WEBPACK_IMPORTED_MODULE_2__.lengthZero, remainingLengthAfter)\n ];\n }\n else {\n return [\n new LengthMapping(this.modified, lengthAfter, lengthAfter),\n new LengthMapping(this.modified, remainingLengthAfter, remainingLengthAfter)\n ];\n }\n }\n toString() {\n return `${this.modified ? 'M' : 'U'}:${(0,_length_js__WEBPACK_IMPORTED_MODULE_2__.lengthToObj)(this.lengthBefore)} -> ${(0,_length_js__WEBPACK_IMPORTED_MODULE_2__.lengthToObj)(this.lengthAfter)}`;\n }\n}\nfunction toLengthMapping(textEditInfos) {\n const result = [];\n let lastOffset = _length_js__WEBPACK_IMPORTED_MODULE_2__.lengthZero;\n for (const textEditInfo of textEditInfos) {\n const spaceLength = (0,_length_js__WEBPACK_IMPORTED_MODULE_2__.lengthDiffNonNegative)(lastOffset, textEditInfo.startOffset);\n if (!(0,_length_js__WEBPACK_IMPORTED_MODULE_2__.lengthIsZero)(spaceLength)) {\n result.push(new LengthMapping(false, spaceLength, spaceLength));\n }\n const lengthBefore = (0,_length_js__WEBPACK_IMPORTED_MODULE_2__.lengthDiffNonNegative)(textEditInfo.startOffset, textEditInfo.endOffset);\n result.push(new LengthMapping(true, lengthBefore, textEditInfo.newLength));\n lastOffset = textEditInfo.endOffset;\n }\n return result;\n}\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/common/model/bracketPairsTextModelPart/bracketPairsTree/combineTextEditInfos.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/common/model/bracketPairsTextModelPart/bracketPairsTree/concat23Trees.js":
/*!***************************************************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/common/model/bracketPairsTextModelPart/bracketPairsTree/concat23Trees.js ***!
\***************************************************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ concat23Trees: () => (/* binding */ concat23Trees),\n/* harmony export */ concat23TreesOfSameHeight: () => (/* binding */ concat23TreesOfSameHeight)\n/* harmony export */ });\n/* harmony import */ var _ast_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./ast.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/model/bracketPairsTextModelPart/bracketPairsTree/ast.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n/**\n * Concatenates a list of (2,3) AstNode's into a single (2,3) AstNode.\n * This mutates the items of the input array!\n * If all items have the same height, this method has runtime O(items.length).\n * Otherwise, it has runtime O(items.length * max(log(items.length), items.max(i => i.height))).\n*/\nfunction concat23Trees(items) {\n if (items.length === 0) {\n return null;\n }\n if (items.length === 1) {\n return items[0];\n }\n let i = 0;\n /**\n * Reads nodes of same height and concatenates them to a single node.\n */\n function readNode() {\n if (i >= items.length) {\n return null;\n }\n const start = i;\n const height = items[start].listHeight;\n i++;\n while (i < items.length && items[i].listHeight === height) {\n i++;\n }\n if (i - start >= 2) {\n return concat23TreesOfSameHeight(start === 0 && i === items.length ? items : items.slice(start, i), false);\n }\n else {\n return items[start];\n }\n }\n // The items might not have the same height.\n // We merge all items by using a binary concat operator.\n let first = readNode(); // There must be a first item\n let second = readNode();\n if (!second) {\n return first;\n }\n for (let item = readNode(); item; item = readNode()) {\n // Prefer concatenating smaller trees, as the runtime of concat depends on the tree height.\n if (heightDiff(first, second) <= heightDiff(second, item)) {\n first = concat(first, second);\n second = item;\n }\n else {\n second = concat(second, item);\n }\n }\n const result = concat(first, second);\n return result;\n}\nfunction concat23TreesOfSameHeight(items, createImmutableLists = false) {\n if (items.length === 0) {\n return null;\n }\n if (items.length === 1) {\n return items[0];\n }\n let length = items.length;\n // All trees have same height, just create parent nodes.\n while (length > 3) {\n const newLength = length >> 1;\n for (let i = 0; i < newLength; i++) {\n const j = i << 1;\n items[i] = _ast_js__WEBPACK_IMPORTED_MODULE_0__.ListAstNode.create23(items[j], items[j + 1], j + 3 === length ? items[j + 2] : null, createImmutableLists);\n }\n length = newLength;\n }\n return _ast_js__WEBPACK_IMPORTED_MODULE_0__.ListAstNode.create23(items[0], items[1], length >= 3 ? items[2] : null, createImmutableLists);\n}\nfunction heightDiff(node1, node2) {\n return Math.abs(node1.listHeight - node2.listHeight);\n}\nfunction concat(node1, node2) {\n if (node1.listHeight === node2.listHeight) {\n return _ast_js__WEBPACK_IMPORTED_MODULE_0__.ListAstNode.create23(node1, node2, null, false);\n }\n else if (node1.listHeight > node2.listHeight) {\n // node1 is the tree we want to insert into\n return append(node1, node2);\n }\n else {\n return prepend(node2, node1);\n }\n}\n/**\n * Appends the given node to the end of this (2,3) tree.\n * Returns the new root.\n*/\nfunction append(list, nodeToAppend) {\n list = list.toMutable();\n let curNode = list;\n const parents = [];\n let nodeToAppendOfCorrectHeight;\n while (true) {\n // assert nodeToInsert.listHeight <= curNode.listHeight\n if (nodeToAppend.listHeight === curNode.listHeight) {\n nodeToAppendOfCorrectHeight = nodeToAppend;\n break;\n }\n // assert 0 <= nodeToInsert.listHeight < curNode.listHeight\n if (curNode.kind !== 4 /* AstNodeKind.List */) {\n throw new Error('unexpected');\n }\n parents.push(curNode);\n // assert 2 <= curNode.childrenLength <= 3\n curNode = curNode.makeLastElementMutable();\n }\n // assert nodeToAppendOfCorrectHeight!.listHeight === curNode.listHeight\n for (let i = parents.length - 1; i >= 0; i--) {\n const parent = parents[i];\n if (nodeToAppendOfCorrectHeight) {\n // Can we take the element?\n if (parent.childrenLength >= 3) {\n // assert parent.childrenLength === 3 && parent.listHeight === nodeToAppendOfCorrectHeight.listHeight + 1\n // we need to split to maintain (2,3)-tree property.\n // Send the third element + the new element to the parent.\n nodeToAppendOfCorrectHeight = _ast_js__WEBPACK_IMPORTED_MODULE_0__.ListAstNode.create23(parent.unappendChild(), nodeToAppendOfCorrectHeight, null, false);\n }\n else {\n parent.appendChildOfSameHeight(nodeToAppendOfCorrectHeight);\n nodeToAppendOfCorrectHeight = undefined;\n }\n }\n else {\n parent.handleChildrenChanged();\n }\n }\n if (nodeToAppendOfCorrectHeight) {\n return _ast_js__WEBPACK_IMPORTED_MODULE_0__.ListAstNode.create23(list, nodeToAppendOfCorrectHeight, null, false);\n }\n else {\n return list;\n }\n}\n/**\n * Prepends the given node to the end of this (2,3) tree.\n * Returns the new root.\n*/\nfunction prepend(list, nodeToAppend) {\n list = list.toMutable();\n let curNode = list;\n const parents = [];\n // assert nodeToInsert.listHeight <= curNode.listHeight\n while (nodeToAppend.listHeight !== curNode.listHeight) {\n // assert 0 <= nodeToInsert.listHeight < curNode.listHeight\n if (curNode.kind !== 4 /* AstNodeKind.List */) {\n throw new Error('unexpected');\n }\n parents.push(curNode);\n // assert 2 <= curNode.childrenFast.length <= 3\n curNode = curNode.makeFirstElementMutable();\n }\n let nodeToPrependOfCorrectHeight = nodeToAppend;\n // assert nodeToAppendOfCorrectHeight!.listHeight === curNode.listHeight\n for (let i = parents.length - 1; i >= 0; i--) {\n const parent = parents[i];\n if (nodeToPrependOfCorrectHeight) {\n // Can we take the element?\n if (parent.childrenLength >= 3) {\n // assert parent.childrenLength === 3 && parent.listHeight === nodeToAppendOfCorrectHeight.listHeight + 1\n // we need to split to maintain (2,3)-tree property.\n // Send the third element + the new element to the parent.\n nodeToPrependOfCorrectHeight = _ast_js__WEBPACK_IMPORTED_MODULE_0__.ListAstNode.create23(nodeToPrependOfCorrectHeight, parent.unprependChild(), null, false);\n }\n else {\n parent.prependChildOfSameHeight(nodeToPrependOfCorrectHeight);\n nodeToPrependOfCorrectHeight = undefined;\n }\n }\n else {\n parent.handleChildrenChanged();\n }\n }\n if (nodeToPrependOfCorrectHeight) {\n return _ast_js__WEBPACK_IMPORTED_MODULE_0__.ListAstNode.create23(nodeToPrependOfCorrectHeight, list, null, false);\n }\n else {\n return list;\n }\n}\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/common/model/bracketPairsTextModelPart/bracketPairsTree/concat23Trees.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/common/model/bracketPairsTextModelPart/bracketPairsTree/length.js":
/*!********************************************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/common/model/bracketPairsTextModelPart/bracketPairsTree/length.js ***!
\********************************************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ LengthObj: () => (/* binding */ LengthObj),\n/* harmony export */ lengthAdd: () => (/* binding */ lengthAdd),\n/* harmony export */ lengthDiff: () => (/* binding */ lengthDiff),\n/* harmony export */ lengthDiffNonNegative: () => (/* binding */ lengthDiffNonNegative),\n/* harmony export */ lengthEquals: () => (/* binding */ lengthEquals),\n/* harmony export */ lengthGetColumnCountIfZeroLineCount: () => (/* binding */ lengthGetColumnCountIfZeroLineCount),\n/* harmony export */ lengthGetLineCount: () => (/* binding */ lengthGetLineCount),\n/* harmony export */ lengthGreaterThanEqual: () => (/* binding */ lengthGreaterThanEqual),\n/* harmony export */ lengthIsZero: () => (/* binding */ lengthIsZero),\n/* harmony export */ lengthLessThan: () => (/* binding */ lengthLessThan),\n/* harmony export */ lengthLessThanEqual: () => (/* binding */ lengthLessThanEqual),\n/* harmony export */ lengthOfString: () => (/* binding */ lengthOfString),\n/* harmony export */ lengthToObj: () => (/* binding */ lengthToObj),\n/* harmony export */ lengthZero: () => (/* binding */ lengthZero),\n/* harmony export */ lengthsToRange: () => (/* binding */ lengthsToRange),\n/* harmony export */ positionToLength: () => (/* binding */ positionToLength),\n/* harmony export */ sumLengths: () => (/* binding */ sumLengths),\n/* harmony export */ toLength: () => (/* binding */ toLength)\n/* harmony export */ });\n/* harmony import */ var _base_common_strings_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../../../base/common/strings.js */ \"./node_modules/monaco-editor/esm/vs/base/common/strings.js\");\n/* harmony import */ var _core_range_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../core/range.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/core/range.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n\n/**\n * Represents a non-negative length in terms of line and column count.\n * Prefer using {@link Length} for performance reasons.\n*/\nclass LengthObj {\n constructor(lineCount, columnCount) {\n this.lineCount = lineCount;\n this.columnCount = columnCount;\n }\n toString() {\n return `${this.lineCount},${this.columnCount}`;\n }\n}\nLengthObj.zero = new LengthObj(0, 0);\n/**\n * The end must be greater than or equal to the start.\n*/\nfunction lengthDiff(startLineCount, startColumnCount, endLineCount, endColumnCount) {\n return (startLineCount !== endLineCount)\n ? toLength(endLineCount - startLineCount, endColumnCount)\n : toLength(0, endColumnCount - startColumnCount);\n}\nconst lengthZero = 0;\nfunction lengthIsZero(length) {\n return length === 0;\n}\n/*\n * We have 52 bits available in a JS number.\n * We use the upper 26 bits to store the line and the lower 26 bits to store the column.\n */\n///*\nconst factor = 2 ** 26;\n/*/\nconst factor = 1000000;\n// */\nfunction toLength(lineCount, columnCount) {\n // llllllllllllllllllllllllllcccccccccccccccccccccccccc (52 bits)\n // line count (26 bits) column count (26 bits)\n // If there is no overflow (all values/sums below 2^26 = 67108864),\n // we have `toLength(lns1, cols1) + toLength(lns2, cols2) = toLength(lns1 + lns2, cols1 + cols2)`.\n return (lineCount * factor + columnCount);\n}\nfunction lengthToObj(length) {\n const l = length;\n const lineCount = Math.floor(l / factor);\n const columnCount = l - lineCount * factor;\n return new LengthObj(lineCount, columnCount);\n}\nfunction lengthGetLineCount(length) {\n return Math.floor(length / factor);\n}\n/**\n * Returns the amount of columns of the given length, assuming that it does not span any line.\n*/\nfunction lengthGetColumnCountIfZeroLineCount(length) {\n return length;\n}\nfunction lengthAdd(l1, l2) {\n let r = l1 + l2;\n if (l2 >= factor) {\n r = r - (l1 % factor);\n }\n return r;\n}\nfunction sumLengths(items, lengthFn) {\n return items.reduce((a, b) => lengthAdd(a, lengthFn(b)), lengthZero);\n}\nfunction lengthEquals(length1, length2) {\n return length1 === length2;\n}\n/**\n * Returns a non negative length `result` such that `lengthAdd(length1, result) = length2`, or zero if such length does not exist.\n */\nfunction lengthDiffNonNegative(length1, length2) {\n const l1 = length1;\n const l2 = length2;\n const diff = l2 - l1;\n if (diff <= 0) {\n // line-count of length1 is higher than line-count of length2\n // or they are equal and column-count of length1 is higher than column-count of length2\n return lengthZero;\n }\n const lineCount1 = Math.floor(l1 / factor);\n const lineCount2 = Math.floor(l2 / factor);\n const colCount2 = l2 - lineCount2 * factor;\n if (lineCount1 === lineCount2) {\n const colCount1 = l1 - lineCount1 * factor;\n return toLength(0, colCount2 - colCount1);\n }\n else {\n return toLength(lineCount2 - lineCount1, colCount2);\n }\n}\nfunction lengthLessThan(length1, length2) {\n // First, compare line counts, then column counts.\n return length1 < length2;\n}\nfunction lengthLessThanEqual(length1, length2) {\n return length1 <= length2;\n}\nfunction lengthGreaterThanEqual(length1, length2) {\n return length1 >= length2;\n}\nfunction positionToLength(position) {\n return toLength(position.lineNumber - 1, position.column - 1);\n}\nfunction lengthsToRange(lengthStart, lengthEnd) {\n const l = lengthStart;\n const lineCount = Math.floor(l / factor);\n const colCount = l - lineCount * factor;\n const l2 = lengthEnd;\n const lineCount2 = Math.floor(l2 / factor);\n const colCount2 = l2 - lineCount2 * factor;\n return new _core_range_js__WEBPACK_IMPORTED_MODULE_1__.Range(lineCount + 1, colCount + 1, lineCount2 + 1, colCount2 + 1);\n}\nfunction lengthOfString(str) {\n const lines = (0,_base_common_strings_js__WEBPACK_IMPORTED_MODULE_0__.splitLines)(str);\n return toLength(lines.length - 1, lines[lines.length - 1].length);\n}\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/common/model/bracketPairsTextModelPart/bracketPairsTree/length.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/common/model/bracketPairsTextModelPart/bracketPairsTree/nodeReader.js":
/*!************************************************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/common/model/bracketPairsTextModelPart/bracketPairsTree/nodeReader.js ***!
\************************************************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ NodeReader: () => (/* binding */ NodeReader)\n/* harmony export */ });\n/* harmony import */ var _length_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./length.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/model/bracketPairsTextModelPart/bracketPairsTree/length.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n/**\n * Allows to efficiently find a longest child at a given offset in a fixed node.\n * The requested offsets must increase monotonously.\n*/\nclass NodeReader {\n constructor(node) {\n this.lastOffset = _length_js__WEBPACK_IMPORTED_MODULE_0__.lengthZero;\n this.nextNodes = [node];\n this.offsets = [_length_js__WEBPACK_IMPORTED_MODULE_0__.lengthZero];\n this.idxs = [];\n }\n /**\n * Returns the longest node at `offset` that satisfies the predicate.\n * @param offset must be greater than or equal to the last offset this method has been called with!\n */\n readLongestNodeAt(offset, predicate) {\n if ((0,_length_js__WEBPACK_IMPORTED_MODULE_0__.lengthLessThan)(offset, this.lastOffset)) {\n throw new Error('Invalid offset');\n }\n this.lastOffset = offset;\n // Find the longest node of all those that are closest to the current offset.\n while (true) {\n const curNode = lastOrUndefined(this.nextNodes);\n if (!curNode) {\n return undefined;\n }\n const curNodeOffset = lastOrUndefined(this.offsets);\n if ((0,_length_js__WEBPACK_IMPORTED_MODULE_0__.lengthLessThan)(offset, curNodeOffset)) {\n // The next best node is not here yet.\n // The reader must advance before a cached node is hit.\n return undefined;\n }\n if ((0,_length_js__WEBPACK_IMPORTED_MODULE_0__.lengthLessThan)(curNodeOffset, offset)) {\n // The reader is ahead of the current node.\n if ((0,_length_js__WEBPACK_IMPORTED_MODULE_0__.lengthAdd)(curNodeOffset, curNode.length) <= offset) {\n // The reader is after the end of the current node.\n this.nextNodeAfterCurrent();\n }\n else {\n // The reader is somewhere in the current node.\n const nextChildIdx = getNextChildIdx(curNode);\n if (nextChildIdx !== -1) {\n // Go to the first child and repeat.\n this.nextNodes.push(curNode.getChild(nextChildIdx));\n this.offsets.push(curNodeOffset);\n this.idxs.push(nextChildIdx);\n }\n else {\n // We don't have children\n this.nextNodeAfterCurrent();\n }\n }\n }\n else {\n // readerOffsetBeforeChange === curNodeOffset\n if (predicate(curNode)) {\n this.nextNodeAfterCurrent();\n return curNode;\n }\n else {\n const nextChildIdx = getNextChildIdx(curNode);\n // look for shorter node\n if (nextChildIdx === -1) {\n // There is no shorter node.\n this.nextNodeAfterCurrent();\n return undefined;\n }\n else {\n // Descend into first child & repeat.\n this.nextNodes.push(curNode.getChild(nextChildIdx));\n this.offsets.push(curNodeOffset);\n this.idxs.push(nextChildIdx);\n }\n }\n }\n }\n }\n // Navigates to the longest node that continues after the current node.\n nextNodeAfterCurrent() {\n while (true) {\n const currentOffset = lastOrUndefined(this.offsets);\n const currentNode = lastOrUndefined(this.nextNodes);\n this.nextNodes.pop();\n this.offsets.pop();\n if (this.idxs.length === 0) {\n // We just popped the root node, there is no next node.\n break;\n }\n // Parent is not undefined, because idxs is not empty\n const parent = lastOrUndefined(this.nextNodes);\n const nextChildIdx = getNextChildIdx(parent, this.idxs[this.idxs.length - 1]);\n if (nextChildIdx !== -1) {\n this.nextNodes.push(parent.getChild(nextChildIdx));\n this.offsets.push((0,_length_js__WEBPACK_IMPORTED_MODULE_0__.lengthAdd)(currentOffset, currentNode.length));\n this.idxs[this.idxs.length - 1] = nextChildIdx;\n break;\n }\n else {\n this.idxs.pop();\n }\n // We fully consumed the parent.\n // Current node is now parent, so call nextNodeAfterCurrent again\n }\n }\n}\nfunction getNextChildIdx(node, curIdx = -1) {\n while (true) {\n curIdx++;\n if (curIdx >= node.childrenLength) {\n return -1;\n }\n if (node.getChild(curIdx)) {\n return curIdx;\n }\n }\n}\nfunction lastOrUndefined(arr) {\n return arr.length > 0 ? arr[arr.length - 1] : undefined;\n}\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/common/model/bracketPairsTextModelPart/bracketPairsTree/nodeReader.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/common/model/bracketPairsTextModelPart/bracketPairsTree/parser.js":
/*!********************************************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/common/model/bracketPairsTextModelPart/bracketPairsTree/parser.js ***!
\********************************************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ parseDocument: () => (/* binding */ parseDocument)\n/* harmony export */ });\n/* harmony import */ var _ast_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./ast.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/model/bracketPairsTextModelPart/bracketPairsTree/ast.js\");\n/* harmony import */ var _beforeEditPositionMapper_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./beforeEditPositionMapper.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/model/bracketPairsTextModelPart/bracketPairsTree/beforeEditPositionMapper.js\");\n/* harmony import */ var _smallImmutableSet_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./smallImmutableSet.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/model/bracketPairsTextModelPart/bracketPairsTree/smallImmutableSet.js\");\n/* harmony import */ var _length_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./length.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/model/bracketPairsTextModelPart/bracketPairsTree/length.js\");\n/* harmony import */ var _concat23Trees_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./concat23Trees.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/model/bracketPairsTextModelPart/bracketPairsTree/concat23Trees.js\");\n/* harmony import */ var _nodeReader_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./nodeReader.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/model/bracketPairsTextModelPart/bracketPairsTree/nodeReader.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n\n\n\n\n\n/**\n * Non incrementally built ASTs are immutable.\n*/\nfunction parseDocument(tokenizer, edits, oldNode, createImmutableLists) {\n const parser = new Parser(tokenizer, edits, oldNode, createImmutableLists);\n return parser.parseDocument();\n}\n/**\n * Non incrementally built ASTs are immutable.\n*/\nclass Parser {\n constructor(tokenizer, edits, oldNode, createImmutableLists) {\n this.tokenizer = tokenizer;\n this.createImmutableLists = createImmutableLists;\n this._itemsConstructed = 0;\n this._itemsFromCache = 0;\n if (oldNode && createImmutableLists) {\n throw new Error('Not supported');\n }\n this.oldNodeReader = oldNode ? new _nodeReader_js__WEBPACK_IMPORTED_MODULE_5__.NodeReader(oldNode) : undefined;\n this.positionMapper = new _beforeEditPositionMapper_js__WEBPACK_IMPORTED_MODULE_1__.BeforeEditPositionMapper(edits);\n }\n parseDocument() {\n this._itemsConstructed = 0;\n this._itemsFromCache = 0;\n let result = this.parseList(_smallImmutableSet_js__WEBPACK_IMPORTED_MODULE_2__.SmallImmutableSet.getEmpty(), 0);\n if (!result) {\n result = _ast_js__WEBPACK_IMPORTED_MODULE_0__.ListAstNode.getEmpty();\n }\n return result;\n }\n parseList(openedBracketIds, level) {\n const items = [];\n while (true) {\n let child = this.tryReadChildFromCache(openedBracketIds);\n if (!child) {\n const token = this.tokenizer.peek();\n if (!token ||\n (token.kind === 2 /* TokenKind.ClosingBracket */ &&\n token.bracketIds.intersects(openedBracketIds))) {\n break;\n }\n child = this.parseChild(openedBracketIds, level + 1);\n }\n if (child.kind === 4 /* AstNodeKind.List */ && child.childrenLength === 0) {\n continue;\n }\n items.push(child);\n }\n // When there is no oldNodeReader, all items are created from scratch and must have the same height.\n const result = this.oldNodeReader ? (0,_concat23Trees_js__WEBPACK_IMPORTED_MODULE_4__.concat23Trees)(items) : (0,_concat23Trees_js__WEBPACK_IMPORTED_MODULE_4__.concat23TreesOfSameHeight)(items, this.createImmutableLists);\n return result;\n }\n tryReadChildFromCache(openedBracketIds) {\n if (this.oldNodeReader) {\n const maxCacheableLength = this.positionMapper.getDistanceToNextChange(this.tokenizer.offset);\n if (maxCacheableLength === null || !(0,_length_js__WEBPACK_IMPORTED_MODULE_3__.lengthIsZero)(maxCacheableLength)) {\n const cachedNode = this.oldNodeReader.readLongestNodeAt(this.positionMapper.getOffsetBeforeChange(this.tokenizer.offset), curNode => {\n // The edit could extend the ending token, thus we cannot re-use nodes that touch the edit.\n // If there is no edit anymore, we can re-use the node in any case.\n if (maxCacheableLength !== null && !(0,_length_js__WEBPACK_IMPORTED_MODULE_3__.lengthLessThan)(curNode.length, maxCacheableLength)) {\n // Either the node contains edited text or touches edited text.\n // In the latter case, brackets might have been extended (`end` -> `ending`), so even touching nodes cannot be reused.\n return false;\n }\n const canBeReused = curNode.canBeReused(openedBracketIds);\n return canBeReused;\n });\n if (cachedNode) {\n this._itemsFromCache++;\n this.tokenizer.skip(cachedNode.length);\n return cachedNode;\n }\n }\n }\n return undefined;\n }\n parseChild(openedBracketIds, level) {\n this._itemsConstructed++;\n const token = this.tokenizer.read();\n switch (token.kind) {\n case 2 /* TokenKind.ClosingBracket */:\n return new _ast_js__WEBPACK_IMPORTED_MODULE_0__.InvalidBracketAstNode(token.bracketIds, token.length);\n case 0 /* TokenKind.Text */:\n return token.astNode;\n case 1 /* TokenKind.OpeningBracket */: {\n if (level > 300) {\n // To prevent stack overflows\n return new _ast_js__WEBPACK_IMPORTED_MODULE_0__.TextAstNode(token.length);\n }\n const set = openedBracketIds.merge(token.bracketIds);\n const child = this.parseList(set, level + 1);\n const nextToken = this.tokenizer.peek();\n if (nextToken &&\n nextToken.kind === 2 /* TokenKind.ClosingBracket */ &&\n (nextToken.bracketId === token.bracketId || nextToken.bracketIds.intersects(token.bracketIds))) {\n this.tokenizer.read();\n return _ast_js__WEBPACK_IMPORTED_MODULE_0__.PairAstNode.create(token.astNode, child, nextToken.astNode);\n }\n else {\n return _ast_js__WEBPACK_IMPORTED_MODULE_0__.PairAstNode.create(token.astNode, child, null);\n }\n }\n default:\n throw new Error('unexpected');\n }\n }\n}\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/common/model/bracketPairsTextModelPart/bracketPairsTree/parser.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/common/model/bracketPairsTextModelPart/bracketPairsTree/smallImmutableSet.js":
/*!*******************************************************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/common/model/bracketPairsTextModelPart/bracketPairsTree/smallImmutableSet.js ***!
\*******************************************************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ DenseKeyProvider: () => (/* binding */ DenseKeyProvider),\n/* harmony export */ SmallImmutableSet: () => (/* binding */ SmallImmutableSet),\n/* harmony export */ identityKeyProvider: () => (/* binding */ identityKeyProvider)\n/* harmony export */ });\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\nconst emptyArr = [];\n/**\n * Represents an immutable set that works best for a small number of elements (less than 32).\n * It uses bits to encode element membership efficiently.\n*/\nclass SmallImmutableSet {\n static create(items, additionalItems) {\n if (items <= 128 && additionalItems.length === 0) {\n // We create a cache of 128=2^7 elements to cover all sets with up to 7 (dense) elements.\n let cached = SmallImmutableSet.cache[items];\n if (!cached) {\n cached = new SmallImmutableSet(items, additionalItems);\n SmallImmutableSet.cache[items] = cached;\n }\n return cached;\n }\n return new SmallImmutableSet(items, additionalItems);\n }\n static getEmpty() {\n return this.empty;\n }\n constructor(items, additionalItems) {\n this.items = items;\n this.additionalItems = additionalItems;\n }\n add(value, keyProvider) {\n const key = keyProvider.getKey(value);\n let idx = key >> 5; // divided by 32\n if (idx === 0) {\n // fast path\n const newItem = (1 << key) | this.items;\n if (newItem === this.items) {\n return this;\n }\n return SmallImmutableSet.create(newItem, this.additionalItems);\n }\n idx--;\n const newItems = this.additionalItems.slice(0);\n while (newItems.length < idx) {\n newItems.push(0);\n }\n newItems[idx] |= 1 << (key & 31);\n return SmallImmutableSet.create(this.items, newItems);\n }\n merge(other) {\n const merged = this.items | other.items;\n if (this.additionalItems === emptyArr && other.additionalItems === emptyArr) {\n // fast path\n if (merged === this.items) {\n return this;\n }\n if (merged === other.items) {\n return other;\n }\n return SmallImmutableSet.create(merged, emptyArr);\n }\n // This can be optimized, but it's not a common case\n const newItems = [];\n for (let i = 0; i < Math.max(this.additionalItems.length, other.additionalItems.length); i++) {\n const item1 = this.additionalItems[i] || 0;\n const item2 = other.additionalItems[i] || 0;\n newItems.push(item1 | item2);\n }\n return SmallImmutableSet.create(merged, newItems);\n }\n intersects(other) {\n if ((this.items & other.items) !== 0) {\n return true;\n }\n for (let i = 0; i < Math.min(this.additionalItems.length, other.additionalItems.length); i++) {\n if ((this.additionalItems[i] & other.additionalItems[i]) !== 0) {\n return true;\n }\n }\n return false;\n }\n}\nSmallImmutableSet.cache = new Array(129);\nSmallImmutableSet.empty = SmallImmutableSet.create(0, emptyArr);\nconst identityKeyProvider = {\n getKey(value) {\n return value;\n }\n};\n/**\n * Assigns values a unique incrementing key.\n*/\nclass DenseKeyProvider {\n constructor() {\n this.items = new Map();\n }\n getKey(value) {\n let existing = this.items.get(value);\n if (existing === undefined) {\n existing = this.items.size;\n this.items.set(value, existing);\n }\n return existing;\n }\n}\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/common/model/bracketPairsTextModelPart/bracketPairsTree/smallImmutableSet.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/common/model/bracketPairsTextModelPart/bracketPairsTree/tokenizer.js":
/*!***********************************************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/common/model/bracketPairsTextModelPart/bracketPairsTree/tokenizer.js ***!
\***********************************************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ FastTokenizer: () => (/* binding */ FastTokenizer),\n/* harmony export */ TextBufferTokenizer: () => (/* binding */ TextBufferTokenizer),\n/* harmony export */ Token: () => (/* binding */ Token)\n/* harmony export */ });\n/* harmony import */ var _base_common_errors_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../../../base/common/errors.js */ \"./node_modules/monaco-editor/esm/vs/base/common/errors.js\");\n/* harmony import */ var _encodedTokenAttributes_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../encodedTokenAttributes.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/encodedTokenAttributes.js\");\n/* harmony import */ var _ast_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./ast.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/model/bracketPairsTextModelPart/bracketPairsTree/ast.js\");\n/* harmony import */ var _length_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./length.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/model/bracketPairsTextModelPart/bracketPairsTree/length.js\");\n/* harmony import */ var _smallImmutableSet_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./smallImmutableSet.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/model/bracketPairsTextModelPart/bracketPairsTree/smallImmutableSet.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n\n\n\n\nclass Token {\n constructor(length, kind, \n /**\n * If this token is an opening bracket, this is the id of the opening bracket.\n * If this token is a closing bracket, this is the id of the first opening bracket that is closed by this bracket.\n * Otherwise, it is -1.\n */\n bracketId, \n /**\n * If this token is an opening bracket, this just contains `bracketId`.\n * If this token is a closing bracket, this lists all opening bracket ids, that it closes.\n * Otherwise, it is empty.\n */\n bracketIds, astNode) {\n this.length = length;\n this.kind = kind;\n this.bracketId = bracketId;\n this.bracketIds = bracketIds;\n this.astNode = astNode;\n }\n}\nclass TextBufferTokenizer {\n constructor(textModel, bracketTokens) {\n this.textModel = textModel;\n this.bracketTokens = bracketTokens;\n this.reader = new NonPeekableTextBufferTokenizer(this.textModel, this.bracketTokens);\n this._offset = _length_js__WEBPACK_IMPORTED_MODULE_3__.lengthZero;\n this.didPeek = false;\n this.peeked = null;\n this.textBufferLineCount = textModel.getLineCount();\n this.textBufferLastLineLength = textModel.getLineLength(this.textBufferLineCount);\n }\n get offset() {\n return this._offset;\n }\n get length() {\n return (0,_length_js__WEBPACK_IMPORTED_MODULE_3__.toLength)(this.textBufferLineCount - 1, this.textBufferLastLineLength);\n }\n skip(length) {\n this.didPeek = false;\n this._offset = (0,_length_js__WEBPACK_IMPORTED_MODULE_3__.lengthAdd)(this._offset, length);\n const obj = (0,_length_js__WEBPACK_IMPORTED_MODULE_3__.lengthToObj)(this._offset);\n this.reader.setPosition(obj.lineCount, obj.columnCount);\n }\n read() {\n let token;\n if (this.peeked) {\n this.didPeek = false;\n token = this.peeked;\n }\n else {\n token = this.reader.read();\n }\n if (token) {\n this._offset = (0,_length_js__WEBPACK_IMPORTED_MODULE_3__.lengthAdd)(this._offset, token.length);\n }\n return token;\n }\n peek() {\n if (!this.didPeek) {\n this.peeked = this.reader.read();\n this.didPeek = true;\n }\n return this.peeked;\n }\n}\n/**\n * Does not support peek.\n*/\nclass NonPeekableTextBufferTokenizer {\n constructor(textModel, bracketTokens) {\n this.textModel = textModel;\n this.bracketTokens = bracketTokens;\n this.lineIdx = 0;\n this.line = null;\n this.lineCharOffset = 0;\n this.lineTokens = null;\n this.lineTokenOffset = 0;\n /** Must be a zero line token. The end of the document cannot be peeked. */\n this.peekedToken = null;\n this.textBufferLineCount = textModel.getLineCount();\n this.textBufferLastLineLength = textModel.getLineLength(this.textBufferLineCount);\n }\n setPosition(lineIdx, column) {\n // We must not jump into a token!\n if (lineIdx === this.lineIdx) {\n this.lineCharOffset = column;\n if (this.line !== null) {\n this.lineTokenOffset = this.lineCharOffset === 0 ? 0 : this.lineTokens.findTokenIndexAtOffset(this.lineCharOffset);\n }\n }\n else {\n this.lineIdx = lineIdx;\n this.lineCharOffset = column;\n this.line = null;\n }\n this.peekedToken = null;\n }\n read() {\n if (this.peekedToken) {\n const token = this.peekedToken;\n this.peekedToken = null;\n this.lineCharOffset += (0,_length_js__WEBPACK_IMPORTED_MODULE_3__.lengthGetColumnCountIfZeroLineCount)(token.length);\n return token;\n }\n if (this.lineIdx > this.textBufferLineCount - 1 || (this.lineIdx === this.textBufferLineCount - 1 && this.lineCharOffset >= this.textBufferLastLineLength)) {\n // We are after the end\n return null;\n }\n if (this.line === null) {\n this.lineTokens = this.textModel.tokenization.getLineTokens(this.lineIdx + 1);\n this.line = this.lineTokens.getLineContent();\n this.lineTokenOffset = this.lineCharOffset === 0 ? 0 : this.lineTokens.findTokenIndexAtOffset(this.lineCharOffset);\n }\n const startLineIdx = this.lineIdx;\n const startLineCharOffset = this.lineCharOffset;\n // limits the length of text tokens.\n // If text tokens get too long, incremental updates will be slow\n let lengthHeuristic = 0;\n while (true) {\n const lineTokens = this.lineTokens;\n const tokenCount = lineTokens.getCount();\n let peekedBracketToken = null;\n if (this.lineTokenOffset < tokenCount) {\n const tokenMetadata = lineTokens.getMetadata(this.lineTokenOffset);\n while (this.lineTokenOffset + 1 < tokenCount && tokenMetadata === lineTokens.getMetadata(this.lineTokenOffset + 1)) {\n // Skip tokens that are identical.\n // Sometimes, (bracket) identifiers are split up into multiple tokens.\n this.lineTokenOffset++;\n }\n const isOther = _encodedTokenAttributes_js__WEBPACK_IMPORTED_MODULE_1__.TokenMetadata.getTokenType(tokenMetadata) === 0 /* StandardTokenType.Other */;\n const containsBracketType = _encodedTokenAttributes_js__WEBPACK_IMPORTED_MODULE_1__.TokenMetadata.containsBalancedBrackets(tokenMetadata);\n const endOffset = lineTokens.getEndOffset(this.lineTokenOffset);\n // Is there a bracket token next? Only consume text.\n if (containsBracketType && isOther && this.lineCharOffset < endOffset) {\n const languageId = lineTokens.getLanguageId(this.lineTokenOffset);\n const text = this.line.substring(this.lineCharOffset, endOffset);\n const brackets = this.bracketTokens.getSingleLanguageBracketTokens(languageId);\n const regexp = brackets.regExpGlobal;\n if (regexp) {\n regexp.lastIndex = 0;\n const match = regexp.exec(text);\n if (match) {\n peekedBracketToken = brackets.getToken(match[0]);\n if (peekedBracketToken) {\n // Consume leading text of the token\n this.lineCharOffset += match.index;\n }\n }\n }\n }\n lengthHeuristic += endOffset - this.lineCharOffset;\n if (peekedBracketToken) {\n // Don't skip the entire token, as a single token could contain multiple brackets.\n if (startLineIdx !== this.lineIdx || startLineCharOffset !== this.lineCharOffset) {\n // There is text before the bracket\n this.peekedToken = peekedBracketToken;\n break;\n }\n else {\n // Consume the peeked token\n this.lineCharOffset += (0,_length_js__WEBPACK_IMPORTED_MODULE_3__.lengthGetColumnCountIfZeroLineCount)(peekedBracketToken.length);\n return peekedBracketToken;\n }\n }\n else {\n // Skip the entire token, as the token contains no brackets at all.\n this.lineTokenOffset++;\n this.lineCharOffset = endOffset;\n }\n }\n else {\n if (this.lineIdx === this.textBufferLineCount - 1) {\n break;\n }\n this.lineIdx++;\n this.lineTokens = this.textModel.tokenization.getLineTokens(this.lineIdx + 1);\n this.lineTokenOffset = 0;\n this.line = this.lineTokens.getLineContent();\n this.lineCharOffset = 0;\n lengthHeuristic += 33; // max 1000/33 = 30 lines\n // This limits the amount of work to recompute min-indentation\n if (lengthHeuristic > 1000) {\n // only break (automatically) at the end of line.\n break;\n }\n }\n if (lengthHeuristic > 1500) {\n // Eventually break regardless of the line length so that\n // very long lines do not cause bad performance.\n // This effective limits max indentation to 500, as\n // indentation is not computed across multiple text nodes.\n break;\n }\n }\n // If a token contains some proper indentation, it also contains \\n{INDENTATION+}(?!{INDENTATION}),\n // unless the line is too long.\n // Thus, the min indentation of the document is the minimum min indentation of every text node.\n const length = (0,_length_js__WEBPACK_IMPORTED_MODULE_3__.lengthDiff)(startLineIdx, startLineCharOffset, this.lineIdx, this.lineCharOffset);\n return new Token(length, 0 /* TokenKind.Text */, -1, _smallImmutableSet_js__WEBPACK_IMPORTED_MODULE_4__.SmallImmutableSet.getEmpty(), new _ast_js__WEBPACK_IMPORTED_MODULE_2__.TextAstNode(length));\n }\n}\nclass FastTokenizer {\n constructor(text, brackets) {\n this.text = text;\n this._offset = _length_js__WEBPACK_IMPORTED_MODULE_3__.lengthZero;\n this.idx = 0;\n const regExpStr = brackets.getRegExpStr();\n const regexp = regExpStr ? new RegExp(regExpStr + '|\\n', 'gi') : null;\n const tokens = [];\n let match;\n let curLineCount = 0;\n let lastLineBreakOffset = 0;\n let lastTokenEndOffset = 0;\n let lastTokenEndLine = 0;\n const smallTextTokens0Line = [];\n for (let i = 0; i < 60; i++) {\n smallTextTokens0Line.push(new Token((0,_length_js__WEBPACK_IMPORTED_MODULE_3__.toLength)(0, i), 0 /* TokenKind.Text */, -1, _smallImmutableSet_js__WEBPACK_IMPORTED_MODULE_4__.SmallImmutableSet.getEmpty(), new _ast_js__WEBPACK_IMPORTED_MODULE_2__.TextAstNode((0,_length_js__WEBPACK_IMPORTED_MODULE_3__.toLength)(0, i))));\n }\n const smallTextTokens1Line = [];\n for (let i = 0; i < 60; i++) {\n smallTextTokens1Line.push(new Token((0,_length_js__WEBPACK_IMPORTED_MODULE_3__.toLength)(1, i), 0 /* TokenKind.Text */, -1, _smallImmutableSet_js__WEBPACK_IMPORTED_MODULE_4__.SmallImmutableSet.getEmpty(), new _ast_js__WEBPACK_IMPORTED_MODULE_2__.TextAstNode((0,_length_js__WEBPACK_IMPORTED_MODULE_3__.toLength)(1, i))));\n }\n if (regexp) {\n regexp.lastIndex = 0;\n // If a token contains indentation, it also contains \\n{INDENTATION+}(?!{INDENTATION})\n while ((match = regexp.exec(text)) !== null) {\n const curOffset = match.index;\n const value = match[0];\n if (value === '\\n') {\n curLineCount++;\n lastLineBreakOffset = curOffset + 1;\n }\n else {\n if (lastTokenEndOffset !== curOffset) {\n let token;\n if (lastTokenEndLine === curLineCount) {\n const colCount = curOffset - lastTokenEndOffset;\n if (colCount < smallTextTokens0Line.length) {\n token = smallTextTokens0Line[colCount];\n }\n else {\n const length = (0,_length_js__WEBPACK_IMPORTED_MODULE_3__.toLength)(0, colCount);\n token = new Token(length, 0 /* TokenKind.Text */, -1, _smallImmutableSet_js__WEBPACK_IMPORTED_MODULE_4__.SmallImmutableSet.getEmpty(), new _ast_js__WEBPACK_IMPORTED_MODULE_2__.TextAstNode(length));\n }\n }\n else {\n const lineCount = curLineCount - lastTokenEndLine;\n const colCount = curOffset - lastLineBreakOffset;\n if (lineCount === 1 && colCount < smallTextTokens1Line.length) {\n token = smallTextTokens1Line[colCount];\n }\n else {\n const length = (0,_length_js__WEBPACK_IMPORTED_MODULE_3__.toLength)(lineCount, colCount);\n token = new Token(length, 0 /* TokenKind.Text */, -1, _smallImmutableSet_js__WEBPACK_IMPORTED_MODULE_4__.SmallImmutableSet.getEmpty(), new _ast_js__WEBPACK_IMPORTED_MODULE_2__.TextAstNode(length));\n }\n }\n tokens.push(token);\n }\n // value is matched by regexp, so the token must exist\n tokens.push(brackets.getToken(value));\n lastTokenEndOffset = curOffset + value.length;\n lastTokenEndLine = curLineCount;\n }\n }\n }\n const offset = text.length;\n if (lastTokenEndOffset !== offset) {\n const length = (lastTokenEndLine === curLineCount)\n ? (0,_length_js__WEBPACK_IMPORTED_MODULE_3__.toLength)(0, offset - lastTokenEndOffset)\n : (0,_length_js__WEBPACK_IMPORTED_MODULE_3__.toLength)(curLineCount - lastTokenEndLine, offset - lastLineBreakOffset);\n tokens.push(new Token(length, 0 /* TokenKind.Text */, -1, _smallImmutableSet_js__WEBPACK_IMPORTED_MODULE_4__.SmallImmutableSet.getEmpty(), new _ast_js__WEBPACK_IMPORTED_MODULE_2__.TextAstNode(length)));\n }\n this.length = (0,_length_js__WEBPACK_IMPORTED_MODULE_3__.toLength)(curLineCount, offset - lastLineBreakOffset);\n this.tokens = tokens;\n }\n get offset() {\n return this._offset;\n }\n read() {\n return this.tokens[this.idx++] || null;\n }\n peek() {\n return this.tokens[this.idx] || null;\n }\n skip(length) {\n throw new _base_common_errors_js__WEBPACK_IMPORTED_MODULE_0__.NotSupportedError();\n }\n}\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/common/model/bracketPairsTextModelPart/bracketPairsTree/tokenizer.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/common/model/bracketPairsTextModelPart/colorizedBracketPairsDecorationProvider.js":
/*!************************************************************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/common/model/bracketPairsTextModelPart/colorizedBracketPairsDecorationProvider.js ***!
\************************************************************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ ColorizedBracketPairsDecorationProvider: () => (/* binding */ ColorizedBracketPairsDecorationProvider)\n/* harmony export */ });\n/* harmony import */ var _base_common_event_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../../base/common/event.js */ \"./node_modules/monaco-editor/esm/vs/base/common/event.js\");\n/* harmony import */ var _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../base/common/lifecycle.js */ \"./node_modules/monaco-editor/esm/vs/base/common/lifecycle.js\");\n/* harmony import */ var _core_range_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../core/range.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/core/range.js\");\n/* harmony import */ var _core_editorColorRegistry_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../core/editorColorRegistry.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/core/editorColorRegistry.js\");\n/* harmony import */ var _platform_theme_common_themeService_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../../../platform/theme/common/themeService.js */ \"./node_modules/monaco-editor/esm/vs/platform/theme/common/themeService.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n\n\n\n\nclass ColorizedBracketPairsDecorationProvider extends _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_1__.Disposable {\n constructor(textModel) {\n super();\n this.textModel = textModel;\n this.colorProvider = new ColorProvider();\n this.onDidChangeEmitter = new _base_common_event_js__WEBPACK_IMPORTED_MODULE_0__.Emitter();\n this.onDidChange = this.onDidChangeEmitter.event;\n this.colorizationOptions = textModel.getOptions().bracketPairColorizationOptions;\n this._register(textModel.bracketPairs.onDidChange(e => {\n this.onDidChangeEmitter.fire();\n }));\n }\n //#region TextModel events\n handleDidChangeOptions(e) {\n this.colorizationOptions = this.textModel.getOptions().bracketPairColorizationOptions;\n }\n //#endregion\n getDecorationsInRange(range, ownerId, filterOutValidation, onlyMinimapDecorations) {\n if (onlyMinimapDecorations) {\n // Bracket pair colorization decorations are not rendered in the minimap\n return [];\n }\n if (ownerId === undefined) {\n return [];\n }\n if (!this.colorizationOptions.enabled) {\n return [];\n }\n const result = this.textModel.bracketPairs.getBracketsInRange(range, true).map(bracket => ({\n id: `bracket${bracket.range.toString()}-${bracket.nestingLevel}`,\n options: {\n description: 'BracketPairColorization',\n inlineClassName: this.colorProvider.getInlineClassName(bracket, this.colorizationOptions.independentColorPoolPerBracketType),\n },\n ownerId: 0,\n range: bracket.range,\n })).toArray();\n return result;\n }\n getAllDecorations(ownerId, filterOutValidation) {\n if (ownerId === undefined) {\n return [];\n }\n if (!this.colorizationOptions.enabled) {\n return [];\n }\n return this.getDecorationsInRange(new _core_range_js__WEBPACK_IMPORTED_MODULE_2__.Range(1, 1, this.textModel.getLineCount(), 1), ownerId, filterOutValidation);\n }\n}\nclass ColorProvider {\n constructor() {\n this.unexpectedClosingBracketClassName = 'unexpected-closing-bracket';\n }\n getInlineClassName(bracket, independentColorPoolPerBracketType) {\n if (bracket.isInvalid) {\n return this.unexpectedClosingBracketClassName;\n }\n return this.getInlineClassNameOfLevel(independentColorPoolPerBracketType ? bracket.nestingLevelOfEqualBracketType : bracket.nestingLevel);\n }\n getInlineClassNameOfLevel(level) {\n // To support a dynamic amount of colors up to 6 colors,\n // we use a number that is a lcm of all numbers from 1 to 6.\n return `bracket-highlighting-${level % 30}`;\n }\n}\n(0,_platform_theme_common_themeService_js__WEBPACK_IMPORTED_MODULE_4__.registerThemingParticipant)((theme, collector) => {\n const colors = [\n _core_editorColorRegistry_js__WEBPACK_IMPORTED_MODULE_3__.editorBracketHighlightingForeground1,\n _core_editorColorRegistry_js__WEBPACK_IMPORTED_MODULE_3__.editorBracketHighlightingForeground2,\n _core_editorColorRegistry_js__WEBPACK_IMPORTED_MODULE_3__.editorBracketHighlightingForeground3,\n _core_editorColorRegistry_js__WEBPACK_IMPORTED_MODULE_3__.editorBracketHighlightingForeground4,\n _core_editorColorRegistry_js__WEBPACK_IMPORTED_MODULE_3__.editorBracketHighlightingForeground5,\n _core_editorColorRegistry_js__WEBPACK_IMPORTED_MODULE_3__.editorBracketHighlightingForeground6\n ];\n const colorProvider = new ColorProvider();\n collector.addRule(`.monaco-editor .${colorProvider.unexpectedClosingBracketClassName} { color: ${theme.getColor(_core_editorColorRegistry_js__WEBPACK_IMPORTED_MODULE_3__.editorBracketHighlightingUnexpectedBracketForeground)}; }`);\n const colorValues = colors\n .map(c => theme.getColor(c))\n .filter((c) => !!c)\n .filter(c => !c.isTransparent());\n for (let level = 0; level < 30; level++) {\n const color = colorValues[level % colorValues.length];\n collector.addRule(`.monaco-editor .${colorProvider.getInlineClassNameOfLevel(level)} { color: ${color}; }`);\n }\n});\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/common/model/bracketPairsTextModelPart/colorizedBracketPairsDecorationProvider.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/common/model/bracketPairsTextModelPart/fixBrackets.js":
/*!********************************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/common/model/bracketPairsTextModelPart/fixBrackets.js ***!
\********************************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ fixBracketsInLine: () => (/* binding */ fixBracketsInLine)\n/* harmony export */ });\n/* harmony import */ var _bracketPairsTree_brackets_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./bracketPairsTree/brackets.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/model/bracketPairsTextModelPart/bracketPairsTree/brackets.js\");\n/* harmony import */ var _bracketPairsTree_length_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./bracketPairsTree/length.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/model/bracketPairsTextModelPart/bracketPairsTree/length.js\");\n/* harmony import */ var _bracketPairsTree_parser_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./bracketPairsTree/parser.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/model/bracketPairsTextModelPart/bracketPairsTree/parser.js\");\n/* harmony import */ var _bracketPairsTree_smallImmutableSet_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./bracketPairsTree/smallImmutableSet.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/model/bracketPairsTextModelPart/bracketPairsTree/smallImmutableSet.js\");\n/* harmony import */ var _bracketPairsTree_tokenizer_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./bracketPairsTree/tokenizer.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/model/bracketPairsTextModelPart/bracketPairsTree/tokenizer.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n\n\n\n\nfunction fixBracketsInLine(tokens, languageConfigurationService) {\n const denseKeyProvider = new _bracketPairsTree_smallImmutableSet_js__WEBPACK_IMPORTED_MODULE_3__.DenseKeyProvider();\n const bracketTokens = new _bracketPairsTree_brackets_js__WEBPACK_IMPORTED_MODULE_0__.LanguageAgnosticBracketTokens(denseKeyProvider, (languageId) => languageConfigurationService.getLanguageConfiguration(languageId));\n const tokenizer = new _bracketPairsTree_tokenizer_js__WEBPACK_IMPORTED_MODULE_4__.TextBufferTokenizer(new StaticTokenizerSource([tokens]), bracketTokens);\n const node = (0,_bracketPairsTree_parser_js__WEBPACK_IMPORTED_MODULE_2__.parseDocument)(tokenizer, [], undefined, true);\n let str = '';\n const line = tokens.getLineContent();\n function processNode(node, offset) {\n if (node.kind === 2 /* AstNodeKind.Pair */) {\n processNode(node.openingBracket, offset);\n offset = (0,_bracketPairsTree_length_js__WEBPACK_IMPORTED_MODULE_1__.lengthAdd)(offset, node.openingBracket.length);\n if (node.child) {\n processNode(node.child, offset);\n offset = (0,_bracketPairsTree_length_js__WEBPACK_IMPORTED_MODULE_1__.lengthAdd)(offset, node.child.length);\n }\n if (node.closingBracket) {\n processNode(node.closingBracket, offset);\n offset = (0,_bracketPairsTree_length_js__WEBPACK_IMPORTED_MODULE_1__.lengthAdd)(offset, node.closingBracket.length);\n }\n else {\n const singleLangBracketTokens = bracketTokens.getSingleLanguageBracketTokens(node.openingBracket.languageId);\n const closingTokenText = singleLangBracketTokens.findClosingTokenText(node.openingBracket.bracketIds);\n str += closingTokenText;\n }\n }\n else if (node.kind === 3 /* AstNodeKind.UnexpectedClosingBracket */) {\n // remove the bracket\n }\n else if (node.kind === 0 /* AstNodeKind.Text */ || node.kind === 1 /* AstNodeKind.Bracket */) {\n str += line.substring((0,_bracketPairsTree_length_js__WEBPACK_IMPORTED_MODULE_1__.lengthGetColumnCountIfZeroLineCount)(offset), (0,_bracketPairsTree_length_js__WEBPACK_IMPORTED_MODULE_1__.lengthGetColumnCountIfZeroLineCount)((0,_bracketPairsTree_length_js__WEBPACK_IMPORTED_MODULE_1__.lengthAdd)(offset, node.length)));\n }\n else if (node.kind === 4 /* AstNodeKind.List */) {\n for (const child of node.children) {\n processNode(child, offset);\n offset = (0,_bracketPairsTree_length_js__WEBPACK_IMPORTED_MODULE_1__.lengthAdd)(offset, child.length);\n }\n }\n }\n processNode(node, _bracketPairsTree_length_js__WEBPACK_IMPORTED_MODULE_1__.lengthZero);\n return str;\n}\nclass StaticTokenizerSource {\n constructor(lines) {\n this.lines = lines;\n this.tokenization = {\n getLineTokens: (lineNumber) => {\n return this.lines[lineNumber - 1];\n }\n };\n }\n getLineCount() {\n return this.lines.length;\n }\n getLineLength(lineNumber) {\n return this.lines[lineNumber - 1].getLineContent().length;\n }\n}\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/common/model/bracketPairsTextModelPart/fixBrackets.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/common/model/editStack.js":
/*!****************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/common/model/editStack.js ***!
\****************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ EditStack: () => (/* binding */ EditStack),\n/* harmony export */ MultiModelEditStackElement: () => (/* binding */ MultiModelEditStackElement),\n/* harmony export */ SingleModelEditStackData: () => (/* binding */ SingleModelEditStackData),\n/* harmony export */ SingleModelEditStackElement: () => (/* binding */ SingleModelEditStackElement),\n/* harmony export */ isEditStackElement: () => (/* binding */ isEditStackElement)\n/* harmony export */ });\n/* harmony import */ var _nls_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../nls.js */ \"./node_modules/monaco-editor/esm/vs/nls.js\");\n/* harmony import */ var _base_common_errors_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../base/common/errors.js */ \"./node_modules/monaco-editor/esm/vs/base/common/errors.js\");\n/* harmony import */ var _core_selection_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../core/selection.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/core/selection.js\");\n/* harmony import */ var _base_common_uri_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../../base/common/uri.js */ \"./node_modules/monaco-editor/esm/vs/base/common/uri.js\");\n/* harmony import */ var _core_textChange_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../core/textChange.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/core/textChange.js\");\n/* harmony import */ var _base_common_buffer_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../../../base/common/buffer.js */ \"./node_modules/monaco-editor/esm/vs/base/common/buffer.js\");\n/* harmony import */ var _base_common_resources_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../../../base/common/resources.js */ \"./node_modules/monaco-editor/esm/vs/base/common/resources.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n\n\n\n\n\n\nfunction uriGetComparisonKey(resource) {\n return resource.toString();\n}\nclass SingleModelEditStackData {\n static create(model, beforeCursorState) {\n const alternativeVersionId = model.getAlternativeVersionId();\n const eol = getModelEOL(model);\n return new SingleModelEditStackData(alternativeVersionId, alternativeVersionId, eol, eol, beforeCursorState, beforeCursorState, []);\n }\n constructor(beforeVersionId, afterVersionId, beforeEOL, afterEOL, beforeCursorState, afterCursorState, changes) {\n this.beforeVersionId = beforeVersionId;\n this.afterVersionId = afterVersionId;\n this.beforeEOL = beforeEOL;\n this.afterEOL = afterEOL;\n this.beforeCursorState = beforeCursorState;\n this.afterCursorState = afterCursorState;\n this.changes = changes;\n }\n append(model, textChanges, afterEOL, afterVersionId, afterCursorState) {\n if (textChanges.length > 0) {\n this.changes = (0,_core_textChange_js__WEBPACK_IMPORTED_MODULE_4__.compressConsecutiveTextChanges)(this.changes, textChanges);\n }\n this.afterEOL = afterEOL;\n this.afterVersionId = afterVersionId;\n this.afterCursorState = afterCursorState;\n }\n static _writeSelectionsSize(selections) {\n return 4 + 4 * 4 * (selections ? selections.length : 0);\n }\n static _writeSelections(b, selections, offset) {\n _base_common_buffer_js__WEBPACK_IMPORTED_MODULE_5__.writeUInt32BE(b, (selections ? selections.length : 0), offset);\n offset += 4;\n if (selections) {\n for (const selection of selections) {\n _base_common_buffer_js__WEBPACK_IMPORTED_MODULE_5__.writeUInt32BE(b, selection.selectionStartLineNumber, offset);\n offset += 4;\n _base_common_buffer_js__WEBPACK_IMPORTED_MODULE_5__.writeUInt32BE(b, selection.selectionStartColumn, offset);\n offset += 4;\n _base_common_buffer_js__WEBPACK_IMPORTED_MODULE_5__.writeUInt32BE(b, selection.positionLineNumber, offset);\n offset += 4;\n _base_common_buffer_js__WEBPACK_IMPORTED_MODULE_5__.writeUInt32BE(b, selection.positionColumn, offset);\n offset += 4;\n }\n }\n return offset;\n }\n static _readSelections(b, offset, dest) {\n const count = _base_common_buffer_js__WEBPACK_IMPORTED_MODULE_5__.readUInt32BE(b, offset);\n offset += 4;\n for (let i = 0; i < count; i++) {\n const selectionStartLineNumber = _base_common_buffer_js__WEBPACK_IMPORTED_MODULE_5__.readUInt32BE(b, offset);\n offset += 4;\n const selectionStartColumn = _base_common_buffer_js__WEBPACK_IMPORTED_MODULE_5__.readUInt32BE(b, offset);\n offset += 4;\n const positionLineNumber = _base_common_buffer_js__WEBPACK_IMPORTED_MODULE_5__.readUInt32BE(b, offset);\n offset += 4;\n const positionColumn = _base_common_buffer_js__WEBPACK_IMPORTED_MODULE_5__.readUInt32BE(b, offset);\n offset += 4;\n dest.push(new _core_selection_js__WEBPACK_IMPORTED_MODULE_2__.Selection(selectionStartLineNumber, selectionStartColumn, positionLineNumber, positionColumn));\n }\n return offset;\n }\n serialize() {\n let necessarySize = (+4 // beforeVersionId\n + 4 // afterVersionId\n + 1 // beforeEOL\n + 1 // afterEOL\n + SingleModelEditStackData._writeSelectionsSize(this.beforeCursorState)\n + SingleModelEditStackData._writeSelectionsSize(this.afterCursorState)\n + 4 // change count\n );\n for (const change of this.changes) {\n necessarySize += change.writeSize();\n }\n const b = new Uint8Array(necessarySize);\n let offset = 0;\n _base_common_buffer_js__WEBPACK_IMPORTED_MODULE_5__.writeUInt32BE(b, this.beforeVersionId, offset);\n offset += 4;\n _base_common_buffer_js__WEBPACK_IMPORTED_MODULE_5__.writeUInt32BE(b, this.afterVersionId, offset);\n offset += 4;\n _base_common_buffer_js__WEBPACK_IMPORTED_MODULE_5__.writeUInt8(b, this.beforeEOL, offset);\n offset += 1;\n _base_common_buffer_js__WEBPACK_IMPORTED_MODULE_5__.writeUInt8(b, this.afterEOL, offset);\n offset += 1;\n offset = SingleModelEditStackData._writeSelections(b, this.beforeCursorState, offset);\n offset = SingleModelEditStackData._writeSelections(b, this.afterCursorState, offset);\n _base_common_buffer_js__WEBPACK_IMPORTED_MODULE_5__.writeUInt32BE(b, this.changes.length, offset);\n offset += 4;\n for (const change of this.changes) {\n offset = change.write(b, offset);\n }\n return b.buffer;\n }\n static deserialize(source) {\n const b = new Uint8Array(source);\n let offset = 0;\n const beforeVersionId = _base_common_buffer_js__WEBPACK_IMPORTED_MODULE_5__.readUInt32BE(b, offset);\n offset += 4;\n const afterVersionId = _base_common_buffer_js__WEBPACK_IMPORTED_MODULE_5__.readUInt32BE(b, offset);\n offset += 4;\n const beforeEOL = _base_common_buffer_js__WEBPACK_IMPORTED_MODULE_5__.readUInt8(b, offset);\n offset += 1;\n const afterEOL = _base_common_buffer_js__WEBPACK_IMPORTED_MODULE_5__.readUInt8(b, offset);\n offset += 1;\n const beforeCursorState = [];\n offset = SingleModelEditStackData._readSelections(b, offset, beforeCursorState);\n const afterCursorState = [];\n offset = SingleModelEditStackData._readSelections(b, offset, afterCursorState);\n const changeCount = _base_common_buffer_js__WEBPACK_IMPORTED_MODULE_5__.readUInt32BE(b, offset);\n offset += 4;\n const changes = [];\n for (let i = 0; i < changeCount; i++) {\n offset = _core_textChange_js__WEBPACK_IMPORTED_MODULE_4__.TextChange.read(b, offset, changes);\n }\n return new SingleModelEditStackData(beforeVersionId, afterVersionId, beforeEOL, afterEOL, beforeCursorState, afterCursorState, changes);\n }\n}\nclass SingleModelEditStackElement {\n get type() {\n return 0 /* UndoRedoElementType.Resource */;\n }\n get resource() {\n if (_base_common_uri_js__WEBPACK_IMPORTED_MODULE_3__.URI.isUri(this.model)) {\n return this.model;\n }\n return this.model.uri;\n }\n constructor(label, code, model, beforeCursorState) {\n this.label = label;\n this.code = code;\n this.model = model;\n this._data = SingleModelEditStackData.create(model, beforeCursorState);\n }\n toString() {\n const data = (this._data instanceof SingleModelEditStackData ? this._data : SingleModelEditStackData.deserialize(this._data));\n return data.changes.map(change => change.toString()).join(', ');\n }\n matchesResource(resource) {\n const uri = (_base_common_uri_js__WEBPACK_IMPORTED_MODULE_3__.URI.isUri(this.model) ? this.model : this.model.uri);\n return (uri.toString() === resource.toString());\n }\n setModel(model) {\n this.model = model;\n }\n canAppend(model) {\n return (this.model === model && this._data instanceof SingleModelEditStackData);\n }\n append(model, textChanges, afterEOL, afterVersionId, afterCursorState) {\n if (this._data instanceof SingleModelEditStackData) {\n this._data.append(model, textChanges, afterEOL, afterVersionId, afterCursorState);\n }\n }\n close() {\n if (this._data instanceof SingleModelEditStackData) {\n this._data = this._data.serialize();\n }\n }\n open() {\n if (!(this._data instanceof SingleModelEditStackData)) {\n this._data = SingleModelEditStackData.deserialize(this._data);\n }\n }\n undo() {\n if (_base_common_uri_js__WEBPACK_IMPORTED_MODULE_3__.URI.isUri(this.model)) {\n // don't have a model\n throw new Error(`Invalid SingleModelEditStackElement`);\n }\n if (this._data instanceof SingleModelEditStackData) {\n this._data = this._data.serialize();\n }\n const data = SingleModelEditStackData.deserialize(this._data);\n this.model._applyUndo(data.changes, data.beforeEOL, data.beforeVersionId, data.beforeCursorState);\n }\n redo() {\n if (_base_common_uri_js__WEBPACK_IMPORTED_MODULE_3__.URI.isUri(this.model)) {\n // don't have a model\n throw new Error(`Invalid SingleModelEditStackElement`);\n }\n if (this._data instanceof SingleModelEditStackData) {\n this._data = this._data.serialize();\n }\n const data = SingleModelEditStackData.deserialize(this._data);\n this.model._applyRedo(data.changes, data.afterEOL, data.afterVersionId, data.afterCursorState);\n }\n heapSize() {\n if (this._data instanceof SingleModelEditStackData) {\n this._data = this._data.serialize();\n }\n return this._data.byteLength + 168 /*heap overhead*/;\n }\n}\nclass MultiModelEditStackElement {\n get resources() {\n return this._editStackElementsArr.map(editStackElement => editStackElement.resource);\n }\n constructor(label, code, editStackElements) {\n this.label = label;\n this.code = code;\n this.type = 1 /* UndoRedoElementType.Workspace */;\n this._isOpen = true;\n this._editStackElementsArr = editStackElements.slice(0);\n this._editStackElementsMap = new Map();\n for (const editStackElement of this._editStackElementsArr) {\n const key = uriGetComparisonKey(editStackElement.resource);\n this._editStackElementsMap.set(key, editStackElement);\n }\n this._delegate = null;\n }\n prepareUndoRedo() {\n if (this._delegate) {\n return this._delegate.prepareUndoRedo(this);\n }\n }\n matchesResource(resource) {\n const key = uriGetComparisonKey(resource);\n return (this._editStackElementsMap.has(key));\n }\n setModel(model) {\n const key = uriGetComparisonKey(_base_common_uri_js__WEBPACK_IMPORTED_MODULE_3__.URI.isUri(model) ? model : model.uri);\n if (this._editStackElementsMap.has(key)) {\n this._editStackElementsMap.get(key).setModel(model);\n }\n }\n canAppend(model) {\n if (!this._isOpen) {\n return false;\n }\n const key = uriGetComparisonKey(model.uri);\n if (this._editStackElementsMap.has(key)) {\n const editStackElement = this._editStackElementsMap.get(key);\n return editStackElement.canAppend(model);\n }\n return false;\n }\n append(model, textChanges, afterEOL, afterVersionId, afterCursorState) {\n const key = uriGetComparisonKey(model.uri);\n const editStackElement = this._editStackElementsMap.get(key);\n editStackElement.append(model, textChanges, afterEOL, afterVersionId, afterCursorState);\n }\n close() {\n this._isOpen = false;\n }\n open() {\n // cannot reopen\n }\n undo() {\n this._isOpen = false;\n for (const editStackElement of this._editStackElementsArr) {\n editStackElement.undo();\n }\n }\n redo() {\n for (const editStackElement of this._editStackElementsArr) {\n editStackElement.redo();\n }\n }\n heapSize(resource) {\n const key = uriGetComparisonKey(resource);\n if (this._editStackElementsMap.has(key)) {\n const editStackElement = this._editStackElementsMap.get(key);\n return editStackElement.heapSize();\n }\n return 0;\n }\n split() {\n return this._editStackElementsArr;\n }\n toString() {\n const result = [];\n for (const editStackElement of this._editStackElementsArr) {\n result.push(`${(0,_base_common_resources_js__WEBPACK_IMPORTED_MODULE_6__.basename)(editStackElement.resource)}: ${editStackElement}`);\n }\n return `{${result.join(', ')}}`;\n }\n}\nfunction getModelEOL(model) {\n const eol = model.getEOL();\n if (eol === '\\n') {\n return 0 /* EndOfLineSequence.LF */;\n }\n else {\n return 1 /* EndOfLineSequence.CRLF */;\n }\n}\nfunction isEditStackElement(element) {\n if (!element) {\n return false;\n }\n return ((element instanceof SingleModelEditStackElement) || (element instanceof MultiModelEditStackElement));\n}\nclass EditStack {\n constructor(model, undoRedoService) {\n this._model = model;\n this._undoRedoService = undoRedoService;\n }\n pushStackElement() {\n const lastElement = this._undoRedoService.getLastElement(this._model.uri);\n if (isEditStackElement(lastElement)) {\n lastElement.close();\n }\n }\n popStackElement() {\n const lastElement = this._undoRedoService.getLastElement(this._model.uri);\n if (isEditStackElement(lastElement)) {\n lastElement.open();\n }\n }\n clear() {\n this._undoRedoService.removeElements(this._model.uri);\n }\n _getOrCreateEditStackElement(beforeCursorState, group) {\n const lastElement = this._undoRedoService.getLastElement(this._model.uri);\n if (isEditStackElement(lastElement) && lastElement.canAppend(this._model)) {\n return lastElement;\n }\n const newElement = new SingleModelEditStackElement(_nls_js__WEBPACK_IMPORTED_MODULE_0__.localize('edit', \"Typing\"), 'undoredo.textBufferEdit', this._model, beforeCursorState);\n this._undoRedoService.pushElement(newElement, group);\n return newElement;\n }\n pushEOL(eol) {\n const editStackElement = this._getOrCreateEditStackElement(null, undefined);\n this._model.setEOL(eol);\n editStackElement.append(this._model, [], getModelEOL(this._model), this._model.getAlternativeVersionId(), null);\n }\n pushEditOperation(beforeCursorState, editOperations, cursorStateComputer, group) {\n const editStackElement = this._getOrCreateEditStackElement(beforeCursorState, group);\n const inverseEditOperations = this._model.applyEdits(editOperations, true);\n const afterCursorState = EditStack._computeCursorState(cursorStateComputer, inverseEditOperations);\n const textChanges = inverseEditOperations.map((op, index) => ({ index: index, textChange: op.textChange }));\n textChanges.sort((a, b) => {\n if (a.textChange.oldPosition === b.textChange.oldPosition) {\n return a.index - b.index;\n }\n return a.textChange.oldPosition - b.textChange.oldPosition;\n });\n editStackElement.append(this._model, textChanges.map(op => op.textChange), getModelEOL(this._model), this._model.getAlternativeVersionId(), afterCursorState);\n return afterCursorState;\n }\n static _computeCursorState(cursorStateComputer, inverseEditOperations) {\n try {\n return cursorStateComputer ? cursorStateComputer(inverseEditOperations) : null;\n }\n catch (e) {\n (0,_base_common_errors_js__WEBPACK_IMPORTED_MODULE_1__.onUnexpectedError)(e);\n return null;\n }\n }\n}\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/common/model/editStack.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/common/model/fixedArray.js":
/*!*****************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/common/model/fixedArray.js ***!
\*****************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ FixedArray: () => (/* binding */ FixedArray)\n/* harmony export */ });\n/* harmony import */ var _base_common_arrays_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../base/common/arrays.js */ \"./node_modules/monaco-editor/esm/vs/base/common/arrays.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n/**\n * An array that avoids being sparse by always\n * filling up unused indices with a default value.\n */\nclass FixedArray {\n constructor(_default) {\n this._default = _default;\n this._store = [];\n }\n get(index) {\n if (index < this._store.length) {\n return this._store[index];\n }\n return this._default;\n }\n set(index, value) {\n while (index >= this._store.length) {\n this._store[this._store.length] = this._default;\n }\n this._store[index] = value;\n }\n replace(index, oldLength, newLength) {\n if (index >= this._store.length) {\n return;\n }\n if (oldLength === 0) {\n this.insert(index, newLength);\n return;\n }\n else if (newLength === 0) {\n this.delete(index, oldLength);\n return;\n }\n const before = this._store.slice(0, index);\n const after = this._store.slice(index + oldLength);\n const insertArr = arrayFill(newLength, this._default);\n this._store = before.concat(insertArr, after);\n }\n delete(deleteIndex, deleteCount) {\n if (deleteCount === 0 || deleteIndex >= this._store.length) {\n return;\n }\n this._store.splice(deleteIndex, deleteCount);\n }\n insert(insertIndex, insertCount) {\n if (insertCount === 0 || insertIndex >= this._store.length) {\n return;\n }\n const arr = [];\n for (let i = 0; i < insertCount; i++) {\n arr[i] = this._default;\n }\n this._store = (0,_base_common_arrays_js__WEBPACK_IMPORTED_MODULE_0__.arrayInsert)(this._store, insertIndex, arr);\n }\n}\nfunction arrayFill(length, value) {\n const arr = [];\n for (let i = 0; i < length; i++) {\n arr[i] = value;\n }\n return arr;\n}\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/common/model/fixedArray.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/common/model/guidesTextModelPart.js":
/*!**************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/common/model/guidesTextModelPart.js ***!
\**************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ BracketPairGuidesClassNames: () => (/* binding */ BracketPairGuidesClassNames),\n/* harmony export */ GuidesTextModelPart: () => (/* binding */ GuidesTextModelPart)\n/* harmony export */ });\n/* harmony import */ var _base_common_arraysFind_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../base/common/arraysFind.js */ \"./node_modules/monaco-editor/esm/vs/base/common/arraysFind.js\");\n/* harmony import */ var _base_common_strings_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../base/common/strings.js */ \"./node_modules/monaco-editor/esm/vs/base/common/strings.js\");\n/* harmony import */ var _core_cursorColumns_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../core/cursorColumns.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/core/cursorColumns.js\");\n/* harmony import */ var _core_range_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../core/range.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/core/range.js\");\n/* harmony import */ var _textModelPart_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./textModelPart.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/model/textModelPart.js\");\n/* harmony import */ var _utils_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./utils.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/model/utils.js\");\n/* harmony import */ var _textModelGuides_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../textModelGuides.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/textModelGuides.js\");\n/* harmony import */ var _base_common_errors_js__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ../../../base/common/errors.js */ \"./node_modules/monaco-editor/esm/vs/base/common/errors.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n\n\n\n\n\n\n\nclass GuidesTextModelPart extends _textModelPart_js__WEBPACK_IMPORTED_MODULE_4__.TextModelPart {\n constructor(textModel, languageConfigurationService) {\n super();\n this.textModel = textModel;\n this.languageConfigurationService = languageConfigurationService;\n }\n getLanguageConfiguration(languageId) {\n return this.languageConfigurationService.getLanguageConfiguration(languageId);\n }\n _computeIndentLevel(lineIndex) {\n return (0,_utils_js__WEBPACK_IMPORTED_MODULE_5__.computeIndentLevel)(this.textModel.getLineContent(lineIndex + 1), this.textModel.getOptions().tabSize);\n }\n getActiveIndentGuide(lineNumber, minLineNumber, maxLineNumber) {\n this.assertNotDisposed();\n const lineCount = this.textModel.getLineCount();\n if (lineNumber < 1 || lineNumber > lineCount) {\n throw new _base_common_errors_js__WEBPACK_IMPORTED_MODULE_7__.BugIndicatingError('Illegal value for lineNumber');\n }\n const foldingRules = this.getLanguageConfiguration(this.textModel.getLanguageId()).foldingRules;\n const offSide = Boolean(foldingRules && foldingRules.offSide);\n let up_aboveContentLineIndex = -2; /* -2 is a marker for not having computed it */\n let up_aboveContentLineIndent = -1;\n let up_belowContentLineIndex = -2; /* -2 is a marker for not having computed it */\n let up_belowContentLineIndent = -1;\n const up_resolveIndents = (lineNumber) => {\n if (up_aboveContentLineIndex !== -1 &&\n (up_aboveContentLineIndex === -2 ||\n up_aboveContentLineIndex > lineNumber - 1)) {\n up_aboveContentLineIndex = -1;\n up_aboveContentLineIndent = -1;\n // must find previous line with content\n for (let lineIndex = lineNumber - 2; lineIndex >= 0; lineIndex--) {\n const indent = this._computeIndentLevel(lineIndex);\n if (indent >= 0) {\n up_aboveContentLineIndex = lineIndex;\n up_aboveContentLineIndent = indent;\n break;\n }\n }\n }\n if (up_belowContentLineIndex === -2) {\n up_belowContentLineIndex = -1;\n up_belowContentLineIndent = -1;\n // must find next line with content\n for (let lineIndex = lineNumber; lineIndex < lineCount; lineIndex++) {\n const indent = this._computeIndentLevel(lineIndex);\n if (indent >= 0) {\n up_belowContentLineIndex = lineIndex;\n up_belowContentLineIndent = indent;\n break;\n }\n }\n }\n };\n let down_aboveContentLineIndex = -2; /* -2 is a marker for not having computed it */\n let down_aboveContentLineIndent = -1;\n let down_belowContentLineIndex = -2; /* -2 is a marker for not having computed it */\n let down_belowContentLineIndent = -1;\n const down_resolveIndents = (lineNumber) => {\n if (down_aboveContentLineIndex === -2) {\n down_aboveContentLineIndex = -1;\n down_aboveContentLineIndent = -1;\n // must find previous line with content\n for (let lineIndex = lineNumber - 2; lineIndex >= 0; lineIndex--) {\n const indent = this._computeIndentLevel(lineIndex);\n if (indent >= 0) {\n down_aboveContentLineIndex = lineIndex;\n down_aboveContentLineIndent = indent;\n break;\n }\n }\n }\n if (down_belowContentLineIndex !== -1 &&\n (down_belowContentLineIndex === -2 ||\n down_belowContentLineIndex < lineNumber - 1)) {\n down_belowContentLineIndex = -1;\n down_belowContentLineIndent = -1;\n // must find next line with content\n for (let lineIndex = lineNumber; lineIndex < lineCount; lineIndex++) {\n const indent = this._computeIndentLevel(lineIndex);\n if (indent >= 0) {\n down_belowContentLineIndex = lineIndex;\n down_belowContentLineIndent = indent;\n break;\n }\n }\n }\n };\n let startLineNumber = 0;\n let goUp = true;\n let endLineNumber = 0;\n let goDown = true;\n let indent = 0;\n let initialIndent = 0;\n for (let distance = 0; goUp || goDown; distance++) {\n const upLineNumber = lineNumber - distance;\n const downLineNumber = lineNumber + distance;\n if (distance > 1 && (upLineNumber < 1 || upLineNumber < minLineNumber)) {\n goUp = false;\n }\n if (distance > 1 &&\n (downLineNumber > lineCount || downLineNumber > maxLineNumber)) {\n goDown = false;\n }\n if (distance > 50000) {\n // stop processing\n goUp = false;\n goDown = false;\n }\n let upLineIndentLevel = -1;\n if (goUp && upLineNumber >= 1) {\n // compute indent level going up\n const currentIndent = this._computeIndentLevel(upLineNumber - 1);\n if (currentIndent >= 0) {\n // This line has content (besides whitespace)\n // Use the line's indent\n up_belowContentLineIndex = upLineNumber - 1;\n up_belowContentLineIndent = currentIndent;\n upLineIndentLevel = Math.ceil(currentIndent / this.textModel.getOptions().indentSize);\n }\n else {\n up_resolveIndents(upLineNumber);\n upLineIndentLevel = this._getIndentLevelForWhitespaceLine(offSide, up_aboveContentLineIndent, up_belowContentLineIndent);\n }\n }\n let downLineIndentLevel = -1;\n if (goDown && downLineNumber <= lineCount) {\n // compute indent level going down\n const currentIndent = this._computeIndentLevel(downLineNumber - 1);\n if (currentIndent >= 0) {\n // This line has content (besides whitespace)\n // Use the line's indent\n down_aboveContentLineIndex = downLineNumber - 1;\n down_aboveContentLineIndent = currentIndent;\n downLineIndentLevel = Math.ceil(currentIndent / this.textModel.getOptions().indentSize);\n }\n else {\n down_resolveIndents(downLineNumber);\n downLineIndentLevel = this._getIndentLevelForWhitespaceLine(offSide, down_aboveContentLineIndent, down_belowContentLineIndent);\n }\n }\n if (distance === 0) {\n initialIndent = upLineIndentLevel;\n continue;\n }\n if (distance === 1) {\n if (downLineNumber <= lineCount &&\n downLineIndentLevel >= 0 &&\n initialIndent + 1 === downLineIndentLevel) {\n // This is the beginning of a scope, we have special handling here, since we want the\n // child scope indent to be active, not the parent scope\n goUp = false;\n startLineNumber = downLineNumber;\n endLineNumber = downLineNumber;\n indent = downLineIndentLevel;\n continue;\n }\n if (upLineNumber >= 1 &&\n upLineIndentLevel >= 0 &&\n upLineIndentLevel - 1 === initialIndent) {\n // This is the end of a scope, just like above\n goDown = false;\n startLineNumber = upLineNumber;\n endLineNumber = upLineNumber;\n indent = upLineIndentLevel;\n continue;\n }\n startLineNumber = lineNumber;\n endLineNumber = lineNumber;\n indent = initialIndent;\n if (indent === 0) {\n // No need to continue\n return { startLineNumber, endLineNumber, indent };\n }\n }\n if (goUp) {\n if (upLineIndentLevel >= indent) {\n startLineNumber = upLineNumber;\n }\n else {\n goUp = false;\n }\n }\n if (goDown) {\n if (downLineIndentLevel >= indent) {\n endLineNumber = downLineNumber;\n }\n else {\n goDown = false;\n }\n }\n }\n return { startLineNumber, endLineNumber, indent };\n }\n getLinesBracketGuides(startLineNumber, endLineNumber, activePosition, options) {\n var _a;\n const result = [];\n for (let lineNumber = startLineNumber; lineNumber <= endLineNumber; lineNumber++) {\n result.push([]);\n }\n // If requested, this could be made configurable.\n const includeSingleLinePairs = true;\n const bracketPairs = this.textModel.bracketPairs.getBracketPairsInRangeWithMinIndentation(new _core_range_js__WEBPACK_IMPORTED_MODULE_3__.Range(startLineNumber, 1, endLineNumber, this.textModel.getLineMaxColumn(endLineNumber))).toArray();\n let activeBracketPairRange = undefined;\n if (activePosition && bracketPairs.length > 0) {\n const bracketsContainingActivePosition = (startLineNumber <= activePosition.lineNumber &&\n activePosition.lineNumber <= endLineNumber\n // We don't need to query the brackets again if the cursor is in the viewport\n ? bracketPairs\n : this.textModel.bracketPairs.getBracketPairsInRange(_core_range_js__WEBPACK_IMPORTED_MODULE_3__.Range.fromPositions(activePosition)).toArray()).filter((bp) => _core_range_js__WEBPACK_IMPORTED_MODULE_3__.Range.strictContainsPosition(bp.range, activePosition));\n activeBracketPairRange = (_a = (0,_base_common_arraysFind_js__WEBPACK_IMPORTED_MODULE_0__.findLast)(bracketsContainingActivePosition, (i) => includeSingleLinePairs || i.range.startLineNumber !== i.range.endLineNumber)) === null || _a === void 0 ? void 0 : _a.range;\n }\n const independentColorPoolPerBracketType = this.textModel.getOptions().bracketPairColorizationOptions.independentColorPoolPerBracketType;\n const colorProvider = new BracketPairGuidesClassNames();\n for (const pair of bracketPairs) {\n /*\n\n\n {\n |\n }\n\n {\n |\n ----}\n\n ____{\n |test\n ----}\n\n renderHorizontalEndLineAtTheBottom:\n {\n |\n |x}\n --\n renderHorizontalEndLineAtTheBottom:\n ____{\n |test\n | x }\n ----\n */\n if (!pair.closingBracketRange) {\n continue;\n }\n const isActive = activeBracketPairRange && pair.range.equalsRange(activeBracketPairRange);\n if (!isActive && !options.includeInactive) {\n continue;\n }\n const className = colorProvider.getInlineClassName(pair.nestingLevel, pair.nestingLevelOfEqualBracketType, independentColorPoolPerBracketType) +\n (options.highlightActive && isActive\n ? ' ' + colorProvider.activeClassName\n : '');\n const start = pair.openingBracketRange.getStartPosition();\n const end = pair.closingBracketRange.getStartPosition();\n const horizontalGuides = options.horizontalGuides === _textModelGuides_js__WEBPACK_IMPORTED_MODULE_6__.HorizontalGuidesState.Enabled || (options.horizontalGuides === _textModelGuides_js__WEBPACK_IMPORTED_MODULE_6__.HorizontalGuidesState.EnabledForActive && isActive);\n if (pair.range.startLineNumber === pair.range.endLineNumber) {\n if (includeSingleLinePairs && horizontalGuides) {\n result[pair.range.startLineNumber - startLineNumber].push(new _textModelGuides_js__WEBPACK_IMPORTED_MODULE_6__.IndentGuide(-1, pair.openingBracketRange.getEndPosition().column, className, new _textModelGuides_js__WEBPACK_IMPORTED_MODULE_6__.IndentGuideHorizontalLine(false, end.column), -1, -1));\n }\n continue;\n }\n const endVisibleColumn = this.getVisibleColumnFromPosition(end);\n const startVisibleColumn = this.getVisibleColumnFromPosition(pair.openingBracketRange.getStartPosition());\n const guideVisibleColumn = Math.min(startVisibleColumn, endVisibleColumn, pair.minVisibleColumnIndentation + 1);\n let renderHorizontalEndLineAtTheBottom = false;\n const firstNonWsIndex = _base_common_strings_js__WEBPACK_IMPORTED_MODULE_1__.firstNonWhitespaceIndex(this.textModel.getLineContent(pair.closingBracketRange.startLineNumber));\n const hasTextBeforeClosingBracket = firstNonWsIndex < pair.closingBracketRange.startColumn - 1;\n if (hasTextBeforeClosingBracket) {\n renderHorizontalEndLineAtTheBottom = true;\n }\n const visibleGuideStartLineNumber = Math.max(start.lineNumber, startLineNumber);\n const visibleGuideEndLineNumber = Math.min(end.lineNumber, endLineNumber);\n const offset = renderHorizontalEndLineAtTheBottom ? 1 : 0;\n for (let l = visibleGuideStartLineNumber; l < visibleGuideEndLineNumber + offset; l++) {\n result[l - startLineNumber].push(new _textModelGuides_js__WEBPACK_IMPORTED_MODULE_6__.IndentGuide(guideVisibleColumn, -1, className, null, l === start.lineNumber ? start.column : -1, l === end.lineNumber ? end.column : -1));\n }\n if (horizontalGuides) {\n if (start.lineNumber >= startLineNumber && startVisibleColumn > guideVisibleColumn) {\n result[start.lineNumber - startLineNumber].push(new _textModelGuides_js__WEBPACK_IMPORTED_MODULE_6__.IndentGuide(guideVisibleColumn, -1, className, new _textModelGuides_js__WEBPACK_IMPORTED_MODULE_6__.IndentGuideHorizontalLine(false, start.column), -1, -1));\n }\n if (end.lineNumber <= endLineNumber && endVisibleColumn > guideVisibleColumn) {\n result[end.lineNumber - startLineNumber].push(new _textModelGuides_js__WEBPACK_IMPORTED_MODULE_6__.IndentGuide(guideVisibleColumn, -1, className, new _textModelGuides_js__WEBPACK_IMPORTED_MODULE_6__.IndentGuideHorizontalLine(!renderHorizontalEndLineAtTheBottom, end.column), -1, -1));\n }\n }\n }\n for (const guides of result) {\n guides.sort((a, b) => a.visibleColumn - b.visibleColumn);\n }\n return result;\n }\n getVisibleColumnFromPosition(position) {\n return (_core_cursorColumns_js__WEBPACK_IMPORTED_MODULE_2__.CursorColumns.visibleColumnFromColumn(this.textModel.getLineContent(position.lineNumber), position.column, this.textModel.getOptions().tabSize) + 1);\n }\n getLinesIndentGuides(startLineNumber, endLineNumber) {\n this.assertNotDisposed();\n const lineCount = this.textModel.getLineCount();\n if (startLineNumber < 1 || startLineNumber > lineCount) {\n throw new Error('Illegal value for startLineNumber');\n }\n if (endLineNumber < 1 || endLineNumber > lineCount) {\n throw new Error('Illegal value for endLineNumber');\n }\n const options = this.textModel.getOptions();\n const foldingRules = this.getLanguageConfiguration(this.textModel.getLanguageId()).foldingRules;\n const offSide = Boolean(foldingRules && foldingRules.offSide);\n const result = new Array(endLineNumber - startLineNumber + 1);\n let aboveContentLineIndex = -2; /* -2 is a marker for not having computed it */\n let aboveContentLineIndent = -1;\n let belowContentLineIndex = -2; /* -2 is a marker for not having computed it */\n let belowContentLineIndent = -1;\n for (let lineNumber = startLineNumber; lineNumber <= endLineNumber; lineNumber++) {\n const resultIndex = lineNumber - startLineNumber;\n const currentIndent = this._computeIndentLevel(lineNumber - 1);\n if (currentIndent >= 0) {\n // This line has content (besides whitespace)\n // Use the line's indent\n aboveContentLineIndex = lineNumber - 1;\n aboveContentLineIndent = currentIndent;\n result[resultIndex] = Math.ceil(currentIndent / options.indentSize);\n continue;\n }\n if (aboveContentLineIndex === -2) {\n aboveContentLineIndex = -1;\n aboveContentLineIndent = -1;\n // must find previous line with content\n for (let lineIndex = lineNumber - 2; lineIndex >= 0; lineIndex--) {\n const indent = this._computeIndentLevel(lineIndex);\n if (indent >= 0) {\n aboveContentLineIndex = lineIndex;\n aboveContentLineIndent = indent;\n break;\n }\n }\n }\n if (belowContentLineIndex !== -1 &&\n (belowContentLineIndex === -2 || belowContentLineIndex < lineNumber - 1)) {\n belowContentLineIndex = -1;\n belowContentLineIndent = -1;\n // must find next line with content\n for (let lineIndex = lineNumber; lineIndex < lineCount; lineIndex++) {\n const indent = this._computeIndentLevel(lineIndex);\n if (indent >= 0) {\n belowContentLineIndex = lineIndex;\n belowContentLineIndent = indent;\n break;\n }\n }\n }\n result[resultIndex] = this._getIndentLevelForWhitespaceLine(offSide, aboveContentLineIndent, belowContentLineIndent);\n }\n return result;\n }\n _getIndentLevelForWhitespaceLine(offSide, aboveContentLineIndent, belowContentLineIndent) {\n const options = this.textModel.getOptions();\n if (aboveContentLineIndent === -1 || belowContentLineIndent === -1) {\n // At the top or bottom of the file\n return 0;\n }\n else if (aboveContentLineIndent < belowContentLineIndent) {\n // we are inside the region above\n return 1 + Math.floor(aboveContentLineIndent / options.indentSize);\n }\n else if (aboveContentLineIndent === belowContentLineIndent) {\n // we are in between two regions\n return Math.ceil(belowContentLineIndent / options.indentSize);\n }\n else {\n if (offSide) {\n // same level as region below\n return Math.ceil(belowContentLineIndent / options.indentSize);\n }\n else {\n // we are inside the region that ends below\n return 1 + Math.floor(belowContentLineIndent / options.indentSize);\n }\n }\n }\n}\nclass BracketPairGuidesClassNames {\n constructor() {\n this.activeClassName = 'indent-active';\n }\n getInlineClassName(nestingLevel, nestingLevelOfEqualBracketType, independentColorPoolPerBracketType) {\n return this.getInlineClassNameOfLevel(independentColorPoolPerBracketType ? nestingLevelOfEqualBracketType : nestingLevel);\n }\n getInlineClassNameOfLevel(level) {\n // To support a dynamic amount of colors up to 6 colors,\n // we use a number that is a lcm of all numbers from 1 to 6.\n return `bracket-indent-guide lvl-${level % 30}`;\n }\n}\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/common/model/guidesTextModelPart.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/common/model/indentationGuesser.js":
/*!*************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/common/model/indentationGuesser.js ***!
\*************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ guessIndentation: () => (/* binding */ guessIndentation)\n/* harmony export */ });\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\nclass SpacesDiffResult {\n constructor() {\n this.spacesDiff = 0;\n this.looksLikeAlignment = false;\n }\n}\n/**\n * Compute the diff in spaces between two line's indentation.\n */\nfunction spacesDiff(a, aLength, b, bLength, result) {\n result.spacesDiff = 0;\n result.looksLikeAlignment = false;\n // This can go both ways (e.g.):\n // - a: \"\\t\"\n // - b: \"\\t \"\n // => This should count 1 tab and 4 spaces\n let i;\n for (i = 0; i < aLength && i < bLength; i++) {\n const aCharCode = a.charCodeAt(i);\n const bCharCode = b.charCodeAt(i);\n if (aCharCode !== bCharCode) {\n break;\n }\n }\n let aSpacesCnt = 0, aTabsCount = 0;\n for (let j = i; j < aLength; j++) {\n const aCharCode = a.charCodeAt(j);\n if (aCharCode === 32 /* CharCode.Space */) {\n aSpacesCnt++;\n }\n else {\n aTabsCount++;\n }\n }\n let bSpacesCnt = 0, bTabsCount = 0;\n for (let j = i; j < bLength; j++) {\n const bCharCode = b.charCodeAt(j);\n if (bCharCode === 32 /* CharCode.Space */) {\n bSpacesCnt++;\n }\n else {\n bTabsCount++;\n }\n }\n if (aSpacesCnt > 0 && aTabsCount > 0) {\n return;\n }\n if (bSpacesCnt > 0 && bTabsCount > 0) {\n return;\n }\n const tabsDiff = Math.abs(aTabsCount - bTabsCount);\n const spacesDiff = Math.abs(aSpacesCnt - bSpacesCnt);\n if (tabsDiff === 0) {\n // check if the indentation difference might be caused by alignment reasons\n // sometime folks like to align their code, but this should not be used as a hint\n result.spacesDiff = spacesDiff;\n if (spacesDiff > 0 && 0 <= bSpacesCnt - 1 && bSpacesCnt - 1 < a.length && bSpacesCnt < b.length) {\n if (b.charCodeAt(bSpacesCnt) !== 32 /* CharCode.Space */ && a.charCodeAt(bSpacesCnt - 1) === 32 /* CharCode.Space */) {\n if (a.charCodeAt(a.length - 1) === 44 /* CharCode.Comma */) {\n // This looks like an alignment desire: e.g.\n // const a = b + c,\n // d = b - c;\n result.looksLikeAlignment = true;\n }\n }\n }\n return;\n }\n if (spacesDiff % tabsDiff === 0) {\n result.spacesDiff = spacesDiff / tabsDiff;\n return;\n }\n}\nfunction guessIndentation(source, defaultTabSize, defaultInsertSpaces) {\n // Look at most at the first 10k lines\n const linesCount = Math.min(source.getLineCount(), 10000);\n let linesIndentedWithTabsCount = 0; // number of lines that contain at least one tab in indentation\n let linesIndentedWithSpacesCount = 0; // number of lines that contain only spaces in indentation\n let previousLineText = ''; // content of latest line that contained non-whitespace chars\n let previousLineIndentation = 0; // index at which latest line contained the first non-whitespace char\n const ALLOWED_TAB_SIZE_GUESSES = [2, 4, 6, 8, 3, 5, 7]; // prefer even guesses for `tabSize`, limit to [2, 8].\n const MAX_ALLOWED_TAB_SIZE_GUESS = 8; // max(ALLOWED_TAB_SIZE_GUESSES) = 8\n const spacesDiffCount = [0, 0, 0, 0, 0, 0, 0, 0, 0]; // `tabSize` scores\n const tmp = new SpacesDiffResult();\n for (let lineNumber = 1; lineNumber <= linesCount; lineNumber++) {\n const currentLineLength = source.getLineLength(lineNumber);\n const currentLineText = source.getLineContent(lineNumber);\n // if the text buffer is chunk based, so long lines are cons-string, v8 will flattern the string when we check charCode.\n // checking charCode on chunks directly is cheaper.\n const useCurrentLineText = (currentLineLength <= 65536);\n let currentLineHasContent = false; // does `currentLineText` contain non-whitespace chars\n let currentLineIndentation = 0; // index at which `currentLineText` contains the first non-whitespace char\n let currentLineSpacesCount = 0; // count of spaces found in `currentLineText` indentation\n let currentLineTabsCount = 0; // count of tabs found in `currentLineText` indentation\n for (let j = 0, lenJ = currentLineLength; j < lenJ; j++) {\n const charCode = (useCurrentLineText ? currentLineText.charCodeAt(j) : source.getLineCharCode(lineNumber, j));\n if (charCode === 9 /* CharCode.Tab */) {\n currentLineTabsCount++;\n }\n else if (charCode === 32 /* CharCode.Space */) {\n currentLineSpacesCount++;\n }\n else {\n // Hit non whitespace character on this line\n currentLineHasContent = true;\n currentLineIndentation = j;\n break;\n }\n }\n // Ignore empty or only whitespace lines\n if (!currentLineHasContent) {\n continue;\n }\n if (currentLineTabsCount > 0) {\n linesIndentedWithTabsCount++;\n }\n else if (currentLineSpacesCount > 1) {\n linesIndentedWithSpacesCount++;\n }\n spacesDiff(previousLineText, previousLineIndentation, currentLineText, currentLineIndentation, tmp);\n if (tmp.looksLikeAlignment) {\n // if defaultInsertSpaces === true && the spaces count == tabSize, we may want to count it as valid indentation\n //\n // - item1\n // - item2\n //\n // otherwise skip this line entirely\n //\n // const a = 1,\n // b = 2;\n if (!(defaultInsertSpaces && defaultTabSize === tmp.spacesDiff)) {\n continue;\n }\n }\n const currentSpacesDiff = tmp.spacesDiff;\n if (currentSpacesDiff <= MAX_ALLOWED_TAB_SIZE_GUESS) {\n spacesDiffCount[currentSpacesDiff]++;\n }\n previousLineText = currentLineText;\n previousLineIndentation = currentLineIndentation;\n }\n let insertSpaces = defaultInsertSpaces;\n if (linesIndentedWithTabsCount !== linesIndentedWithSpacesCount) {\n insertSpaces = (linesIndentedWithTabsCount < linesIndentedWithSpacesCount);\n }\n let tabSize = defaultTabSize;\n // Guess tabSize only if inserting spaces...\n if (insertSpaces) {\n let tabSizeScore = (insertSpaces ? 0 : 0.1 * linesCount);\n // console.log(\"score threshold: \" + tabSizeScore);\n ALLOWED_TAB_SIZE_GUESSES.forEach((possibleTabSize) => {\n const possibleTabSizeScore = spacesDiffCount[possibleTabSize];\n if (possibleTabSizeScore > tabSizeScore) {\n tabSizeScore = possibleTabSizeScore;\n tabSize = possibleTabSize;\n }\n });\n // Let a tabSize of 2 win even if it is not the maximum\n // (only in case 4 was guessed)\n if (tabSize === 4 && spacesDiffCount[4] > 0 && spacesDiffCount[2] > 0 && spacesDiffCount[2] >= spacesDiffCount[4] / 2) {\n tabSize = 2;\n }\n }\n // console.log('--------------------------');\n // console.log('linesIndentedWithTabsCount: ' + linesIndentedWithTabsCount + ', linesIndentedWithSpacesCount: ' + linesIndentedWithSpacesCount);\n // console.log('spacesDiffCount: ' + spacesDiffCount);\n // console.log('tabSize: ' + tabSize + ', tabSizeScore: ' + tabSizeScore);\n return {\n insertSpaces: insertSpaces,\n tabSize: tabSize\n };\n}\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/common/model/indentationGuesser.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/common/model/intervalTree.js":
/*!*******************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/common/model/intervalTree.js ***!
\*******************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ IntervalNode: () => (/* binding */ IntervalNode),\n/* harmony export */ IntervalTree: () => (/* binding */ IntervalTree),\n/* harmony export */ SENTINEL: () => (/* binding */ SENTINEL),\n/* harmony export */ getNodeColor: () => (/* binding */ getNodeColor),\n/* harmony export */ intervalCompare: () => (/* binding */ intervalCompare),\n/* harmony export */ nodeAcceptEdit: () => (/* binding */ nodeAcceptEdit),\n/* harmony export */ recomputeMaxEnd: () => (/* binding */ recomputeMaxEnd)\n/* harmony export */ });\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\nfunction getNodeColor(node) {\n return ((node.metadata & 1 /* Constants.ColorMask */) >>> 0 /* Constants.ColorOffset */);\n}\nfunction setNodeColor(node, color) {\n node.metadata = ((node.metadata & 254 /* Constants.ColorMaskInverse */) | (color << 0 /* Constants.ColorOffset */));\n}\nfunction getNodeIsVisited(node) {\n return ((node.metadata & 2 /* Constants.IsVisitedMask */) >>> 1 /* Constants.IsVisitedOffset */) === 1;\n}\nfunction setNodeIsVisited(node, value) {\n node.metadata = ((node.metadata & 253 /* Constants.IsVisitedMaskInverse */) | ((value ? 1 : 0) << 1 /* Constants.IsVisitedOffset */));\n}\nfunction getNodeIsForValidation(node) {\n return ((node.metadata & 4 /* Constants.IsForValidationMask */) >>> 2 /* Constants.IsForValidationOffset */) === 1;\n}\nfunction setNodeIsForValidation(node, value) {\n node.metadata = ((node.metadata & 251 /* Constants.IsForValidationMaskInverse */) | ((value ? 1 : 0) << 2 /* Constants.IsForValidationOffset */));\n}\nfunction getNodeIsInGlyphMargin(node) {\n return ((node.metadata & 64 /* Constants.IsMarginMask */) >>> 6 /* Constants.IsMarginOffset */) === 1;\n}\nfunction setNodeIsInGlyphMargin(node, value) {\n node.metadata = ((node.metadata & 191 /* Constants.IsMarginMaskInverse */) | ((value ? 1 : 0) << 6 /* Constants.IsMarginOffset */));\n}\nfunction getNodeStickiness(node) {\n return ((node.metadata & 24 /* Constants.StickinessMask */) >>> 3 /* Constants.StickinessOffset */);\n}\nfunction _setNodeStickiness(node, stickiness) {\n node.metadata = ((node.metadata & 231 /* Constants.StickinessMaskInverse */) | (stickiness << 3 /* Constants.StickinessOffset */));\n}\nfunction getCollapseOnReplaceEdit(node) {\n return ((node.metadata & 32 /* Constants.CollapseOnReplaceEditMask */) >>> 5 /* Constants.CollapseOnReplaceEditOffset */) === 1;\n}\nfunction setCollapseOnReplaceEdit(node, value) {\n node.metadata = ((node.metadata & 223 /* Constants.CollapseOnReplaceEditMaskInverse */) | ((value ? 1 : 0) << 5 /* Constants.CollapseOnReplaceEditOffset */));\n}\nclass IntervalNode {\n constructor(id, start, end) {\n this.metadata = 0;\n this.parent = this;\n this.left = this;\n this.right = this;\n setNodeColor(this, 1 /* NodeColor.Red */);\n this.start = start;\n this.end = end;\n // FORCE_OVERFLOWING_TEST: this.delta = start;\n this.delta = 0;\n this.maxEnd = end;\n this.id = id;\n this.ownerId = 0;\n this.options = null;\n setNodeIsForValidation(this, false);\n setNodeIsInGlyphMargin(this, false);\n _setNodeStickiness(this, 1 /* TrackedRangeStickiness.NeverGrowsWhenTypingAtEdges */);\n setCollapseOnReplaceEdit(this, false);\n this.cachedVersionId = 0;\n this.cachedAbsoluteStart = start;\n this.cachedAbsoluteEnd = end;\n this.range = null;\n setNodeIsVisited(this, false);\n }\n reset(versionId, start, end, range) {\n this.start = start;\n this.end = end;\n this.maxEnd = end;\n this.cachedVersionId = versionId;\n this.cachedAbsoluteStart = start;\n this.cachedAbsoluteEnd = end;\n this.range = range;\n }\n setOptions(options) {\n this.options = options;\n const className = this.options.className;\n setNodeIsForValidation(this, (className === \"squiggly-error\" /* ClassName.EditorErrorDecoration */\n || className === \"squiggly-warning\" /* ClassName.EditorWarningDecoration */\n || className === \"squiggly-info\" /* ClassName.EditorInfoDecoration */));\n setNodeIsInGlyphMargin(this, this.options.glyphMarginClassName !== null);\n _setNodeStickiness(this, this.options.stickiness);\n setCollapseOnReplaceEdit(this, this.options.collapseOnReplaceEdit);\n }\n setCachedOffsets(absoluteStart, absoluteEnd, cachedVersionId) {\n if (this.cachedVersionId !== cachedVersionId) {\n this.range = null;\n }\n this.cachedVersionId = cachedVersionId;\n this.cachedAbsoluteStart = absoluteStart;\n this.cachedAbsoluteEnd = absoluteEnd;\n }\n detach() {\n this.parent = null;\n this.left = null;\n this.right = null;\n }\n}\nconst SENTINEL = new IntervalNode(null, 0, 0);\nSENTINEL.parent = SENTINEL;\nSENTINEL.left = SENTINEL;\nSENTINEL.right = SENTINEL;\nsetNodeColor(SENTINEL, 0 /* NodeColor.Black */);\nclass IntervalTree {\n constructor() {\n this.root = SENTINEL;\n this.requestNormalizeDelta = false;\n }\n intervalSearch(start, end, filterOwnerId, filterOutValidation, cachedVersionId, onlyMarginDecorations) {\n if (this.root === SENTINEL) {\n return [];\n }\n return intervalSearch(this, start, end, filterOwnerId, filterOutValidation, cachedVersionId, onlyMarginDecorations);\n }\n search(filterOwnerId, filterOutValidation, cachedVersionId, onlyMarginDecorations) {\n if (this.root === SENTINEL) {\n return [];\n }\n return search(this, filterOwnerId, filterOutValidation, cachedVersionId, onlyMarginDecorations);\n }\n /**\n * Will not set `cachedAbsoluteStart` nor `cachedAbsoluteEnd` on the returned nodes!\n */\n collectNodesFromOwner(ownerId) {\n return collectNodesFromOwner(this, ownerId);\n }\n /**\n * Will not set `cachedAbsoluteStart` nor `cachedAbsoluteEnd` on the returned nodes!\n */\n collectNodesPostOrder() {\n return collectNodesPostOrder(this);\n }\n insert(node) {\n rbTreeInsert(this, node);\n this._normalizeDeltaIfNecessary();\n }\n delete(node) {\n rbTreeDelete(this, node);\n this._normalizeDeltaIfNecessary();\n }\n resolveNode(node, cachedVersionId) {\n const initialNode = node;\n let delta = 0;\n while (node !== this.root) {\n if (node === node.parent.right) {\n delta += node.parent.delta;\n }\n node = node.parent;\n }\n const nodeStart = initialNode.start + delta;\n const nodeEnd = initialNode.end + delta;\n initialNode.setCachedOffsets(nodeStart, nodeEnd, cachedVersionId);\n }\n acceptReplace(offset, length, textLength, forceMoveMarkers) {\n // Our strategy is to remove all directly impacted nodes, and then add them back to the tree.\n // (1) collect all nodes that are intersecting this edit as nodes of interest\n const nodesOfInterest = searchForEditing(this, offset, offset + length);\n // (2) remove all nodes that are intersecting this edit\n for (let i = 0, len = nodesOfInterest.length; i < len; i++) {\n const node = nodesOfInterest[i];\n rbTreeDelete(this, node);\n }\n this._normalizeDeltaIfNecessary();\n // (3) edit all tree nodes except the nodes of interest\n noOverlapReplace(this, offset, offset + length, textLength);\n this._normalizeDeltaIfNecessary();\n // (4) edit the nodes of interest and insert them back in the tree\n for (let i = 0, len = nodesOfInterest.length; i < len; i++) {\n const node = nodesOfInterest[i];\n node.start = node.cachedAbsoluteStart;\n node.end = node.cachedAbsoluteEnd;\n nodeAcceptEdit(node, offset, (offset + length), textLength, forceMoveMarkers);\n node.maxEnd = node.end;\n rbTreeInsert(this, node);\n }\n this._normalizeDeltaIfNecessary();\n }\n _normalizeDeltaIfNecessary() {\n if (!this.requestNormalizeDelta) {\n return;\n }\n this.requestNormalizeDelta = false;\n normalizeDelta(this);\n }\n}\n//#region Delta Normalization\nfunction normalizeDelta(T) {\n let node = T.root;\n let delta = 0;\n while (node !== SENTINEL) {\n if (node.left !== SENTINEL && !getNodeIsVisited(node.left)) {\n // go left\n node = node.left;\n continue;\n }\n if (node.right !== SENTINEL && !getNodeIsVisited(node.right)) {\n // go right\n delta += node.delta;\n node = node.right;\n continue;\n }\n // handle current node\n node.start = delta + node.start;\n node.end = delta + node.end;\n node.delta = 0;\n recomputeMaxEnd(node);\n setNodeIsVisited(node, true);\n // going up from this node\n setNodeIsVisited(node.left, false);\n setNodeIsVisited(node.right, false);\n if (node === node.parent.right) {\n delta -= node.parent.delta;\n }\n node = node.parent;\n }\n setNodeIsVisited(T.root, false);\n}\nfunction adjustMarkerBeforeColumn(markerOffset, markerStickToPreviousCharacter, checkOffset, moveSemantics) {\n if (markerOffset < checkOffset) {\n return true;\n }\n if (markerOffset > checkOffset) {\n return false;\n }\n if (moveSemantics === 1 /* MarkerMoveSemantics.ForceMove */) {\n return false;\n }\n if (moveSemantics === 2 /* MarkerMoveSemantics.ForceStay */) {\n return true;\n }\n return markerStickToPreviousCharacter;\n}\n/**\n * This is a lot more complicated than strictly necessary to maintain the same behaviour\n * as when decorations were implemented using two markers.\n */\nfunction nodeAcceptEdit(node, start, end, textLength, forceMoveMarkers) {\n const nodeStickiness = getNodeStickiness(node);\n const startStickToPreviousCharacter = (nodeStickiness === 0 /* TrackedRangeStickiness.AlwaysGrowsWhenTypingAtEdges */\n || nodeStickiness === 2 /* TrackedRangeStickiness.GrowsOnlyWhenTypingBefore */);\n const endStickToPreviousCharacter = (nodeStickiness === 1 /* TrackedRangeStickiness.NeverGrowsWhenTypingAtEdges */\n || nodeStickiness === 2 /* TrackedRangeStickiness.GrowsOnlyWhenTypingBefore */);\n const deletingCnt = (end - start);\n const insertingCnt = textLength;\n const commonLength = Math.min(deletingCnt, insertingCnt);\n const nodeStart = node.start;\n let startDone = false;\n const nodeEnd = node.end;\n let endDone = false;\n if (start <= nodeStart && nodeEnd <= end && getCollapseOnReplaceEdit(node)) {\n // This edit encompasses the entire decoration range\n // and the decoration has asked to become collapsed\n node.start = start;\n startDone = true;\n node.end = start;\n endDone = true;\n }\n {\n const moveSemantics = forceMoveMarkers ? 1 /* MarkerMoveSemantics.ForceMove */ : (deletingCnt > 0 ? 2 /* MarkerMoveSemantics.ForceStay */ : 0 /* MarkerMoveSemantics.MarkerDefined */);\n if (!startDone && adjustMarkerBeforeColumn(nodeStart, startStickToPreviousCharacter, start, moveSemantics)) {\n startDone = true;\n }\n if (!endDone && adjustMarkerBeforeColumn(nodeEnd, endStickToPreviousCharacter, start, moveSemantics)) {\n endDone = true;\n }\n }\n if (commonLength > 0 && !forceMoveMarkers) {\n const moveSemantics = (deletingCnt > insertingCnt ? 2 /* MarkerMoveSemantics.ForceStay */ : 0 /* MarkerMoveSemantics.MarkerDefined */);\n if (!startDone && adjustMarkerBeforeColumn(nodeStart, startStickToPreviousCharacter, start + commonLength, moveSemantics)) {\n startDone = true;\n }\n if (!endDone && adjustMarkerBeforeColumn(nodeEnd, endStickToPreviousCharacter, start + commonLength, moveSemantics)) {\n endDone = true;\n }\n }\n {\n const moveSemantics = forceMoveMarkers ? 1 /* MarkerMoveSemantics.ForceMove */ : 0 /* MarkerMoveSemantics.MarkerDefined */;\n if (!startDone && adjustMarkerBeforeColumn(nodeStart, startStickToPreviousCharacter, end, moveSemantics)) {\n node.start = start + insertingCnt;\n startDone = true;\n }\n if (!endDone && adjustMarkerBeforeColumn(nodeEnd, endStickToPreviousCharacter, end, moveSemantics)) {\n node.end = start + insertingCnt;\n endDone = true;\n }\n }\n // Finish\n const deltaColumn = (insertingCnt - deletingCnt);\n if (!startDone) {\n node.start = Math.max(0, nodeStart + deltaColumn);\n }\n if (!endDone) {\n node.end = Math.max(0, nodeEnd + deltaColumn);\n }\n if (node.start > node.end) {\n node.end = node.start;\n }\n}\nfunction searchForEditing(T, start, end) {\n // https://en.wikipedia.org/wiki/Interval_tree#Augmented_tree\n // Now, it is known that two intervals A and B overlap only when both\n // A.low <= B.high and A.high >= B.low. When searching the trees for\n // nodes overlapping with a given interval, you can immediately skip:\n // a) all nodes to the right of nodes whose low value is past the end of the given interval.\n // b) all nodes that have their maximum 'high' value below the start of the given interval.\n let node = T.root;\n let delta = 0;\n let nodeMaxEnd = 0;\n let nodeStart = 0;\n let nodeEnd = 0;\n const result = [];\n let resultLen = 0;\n while (node !== SENTINEL) {\n if (getNodeIsVisited(node)) {\n // going up from this node\n setNodeIsVisited(node.left, false);\n setNodeIsVisited(node.right, false);\n if (node === node.parent.right) {\n delta -= node.parent.delta;\n }\n node = node.parent;\n continue;\n }\n if (!getNodeIsVisited(node.left)) {\n // first time seeing this node\n nodeMaxEnd = delta + node.maxEnd;\n if (nodeMaxEnd < start) {\n // cover case b) from above\n // there is no need to search this node or its children\n setNodeIsVisited(node, true);\n continue;\n }\n if (node.left !== SENTINEL) {\n // go left\n node = node.left;\n continue;\n }\n }\n // handle current node\n nodeStart = delta + node.start;\n if (nodeStart > end) {\n // cover case a) from above\n // there is no need to search this node or its right subtree\n setNodeIsVisited(node, true);\n continue;\n }\n nodeEnd = delta + node.end;\n if (nodeEnd >= start) {\n node.setCachedOffsets(nodeStart, nodeEnd, 0);\n result[resultLen++] = node;\n }\n setNodeIsVisited(node, true);\n if (node.right !== SENTINEL && !getNodeIsVisited(node.right)) {\n // go right\n delta += node.delta;\n node = node.right;\n continue;\n }\n }\n setNodeIsVisited(T.root, false);\n return result;\n}\nfunction noOverlapReplace(T, start, end, textLength) {\n // https://en.wikipedia.org/wiki/Interval_tree#Augmented_tree\n // Now, it is known that two intervals A and B overlap only when both\n // A.low <= B.high and A.high >= B.low. When searching the trees for\n // nodes overlapping with a given interval, you can immediately skip:\n // a) all nodes to the right of nodes whose low value is past the end of the given interval.\n // b) all nodes that have their maximum 'high' value below the start of the given interval.\n let node = T.root;\n let delta = 0;\n let nodeMaxEnd = 0;\n let nodeStart = 0;\n const editDelta = (textLength - (end - start));\n while (node !== SENTINEL) {\n if (getNodeIsVisited(node)) {\n // going up from this node\n setNodeIsVisited(node.left, false);\n setNodeIsVisited(node.right, false);\n if (node === node.parent.right) {\n delta -= node.parent.delta;\n }\n recomputeMaxEnd(node);\n node = node.parent;\n continue;\n }\n if (!getNodeIsVisited(node.left)) {\n // first time seeing this node\n nodeMaxEnd = delta + node.maxEnd;\n if (nodeMaxEnd < start) {\n // cover case b) from above\n // there is no need to search this node or its children\n setNodeIsVisited(node, true);\n continue;\n }\n if (node.left !== SENTINEL) {\n // go left\n node = node.left;\n continue;\n }\n }\n // handle current node\n nodeStart = delta + node.start;\n if (nodeStart > end) {\n node.start += editDelta;\n node.end += editDelta;\n node.delta += editDelta;\n if (node.delta < -1073741824 /* Constants.MIN_SAFE_DELTA */ || node.delta > 1073741824 /* Constants.MAX_SAFE_DELTA */) {\n T.requestNormalizeDelta = true;\n }\n // cover case a) from above\n // there is no need to search this node or its right subtree\n setNodeIsVisited(node, true);\n continue;\n }\n setNodeIsVisited(node, true);\n if (node.right !== SENTINEL && !getNodeIsVisited(node.right)) {\n // go right\n delta += node.delta;\n node = node.right;\n continue;\n }\n }\n setNodeIsVisited(T.root, false);\n}\n//#endregion\n//#region Searching\nfunction collectNodesFromOwner(T, ownerId) {\n let node = T.root;\n const result = [];\n let resultLen = 0;\n while (node !== SENTINEL) {\n if (getNodeIsVisited(node)) {\n // going up from this node\n setNodeIsVisited(node.left, false);\n setNodeIsVisited(node.right, false);\n node = node.parent;\n continue;\n }\n if (node.left !== SENTINEL && !getNodeIsVisited(node.left)) {\n // go left\n node = node.left;\n continue;\n }\n // handle current node\n if (node.ownerId === ownerId) {\n result[resultLen++] = node;\n }\n setNodeIsVisited(node, true);\n if (node.right !== SENTINEL && !getNodeIsVisited(node.right)) {\n // go right\n node = node.right;\n continue;\n }\n }\n setNodeIsVisited(T.root, false);\n return result;\n}\nfunction collectNodesPostOrder(T) {\n let node = T.root;\n const result = [];\n let resultLen = 0;\n while (node !== SENTINEL) {\n if (getNodeIsVisited(node)) {\n // going up from this node\n setNodeIsVisited(node.left, false);\n setNodeIsVisited(node.right, false);\n node = node.parent;\n continue;\n }\n if (node.left !== SENTINEL && !getNodeIsVisited(node.left)) {\n // go left\n node = node.left;\n continue;\n }\n if (node.right !== SENTINEL && !getNodeIsVisited(node.right)) {\n // go right\n node = node.right;\n continue;\n }\n // handle current node\n result[resultLen++] = node;\n setNodeIsVisited(node, true);\n }\n setNodeIsVisited(T.root, false);\n return result;\n}\nfunction search(T, filterOwnerId, filterOutValidation, cachedVersionId, onlyMarginDecorations) {\n let node = T.root;\n let delta = 0;\n let nodeStart = 0;\n let nodeEnd = 0;\n const result = [];\n let resultLen = 0;\n while (node !== SENTINEL) {\n if (getNodeIsVisited(node)) {\n // going up from this node\n setNodeIsVisited(node.left, false);\n setNodeIsVisited(node.right, false);\n if (node === node.parent.right) {\n delta -= node.parent.delta;\n }\n node = node.parent;\n continue;\n }\n if (node.left !== SENTINEL && !getNodeIsVisited(node.left)) {\n // go left\n node = node.left;\n continue;\n }\n // handle current node\n nodeStart = delta + node.start;\n nodeEnd = delta + node.end;\n node.setCachedOffsets(nodeStart, nodeEnd, cachedVersionId);\n let include = true;\n if (filterOwnerId && node.ownerId && node.ownerId !== filterOwnerId) {\n include = false;\n }\n if (filterOutValidation && getNodeIsForValidation(node)) {\n include = false;\n }\n if (onlyMarginDecorations && !getNodeIsInGlyphMargin(node)) {\n include = false;\n }\n if (include) {\n result[resultLen++] = node;\n }\n setNodeIsVisited(node, true);\n if (node.right !== SENTINEL && !getNodeIsVisited(node.right)) {\n // go right\n delta += node.delta;\n node = node.right;\n continue;\n }\n }\n setNodeIsVisited(T.root, false);\n return result;\n}\nfunction intervalSearch(T, intervalStart, intervalEnd, filterOwnerId, filterOutValidation, cachedVersionId, onlyMarginDecorations) {\n // https://en.wikipedia.org/wiki/Interval_tree#Augmented_tree\n // Now, it is known that two intervals A and B overlap only when both\n // A.low <= B.high and A.high >= B.low. When searching the trees for\n // nodes overlapping with a given interval, you can immediately skip:\n // a) all nodes to the right of nodes whose low value is past the end of the given interval.\n // b) all nodes that have their maximum 'high' value below the start of the given interval.\n let node = T.root;\n let delta = 0;\n let nodeMaxEnd = 0;\n let nodeStart = 0;\n let nodeEnd = 0;\n const result = [];\n let resultLen = 0;\n while (node !== SENTINEL) {\n if (getNodeIsVisited(node)) {\n // going up from this node\n setNodeIsVisited(node.left, false);\n setNodeIsVisited(node.right, false);\n if (node === node.parent.right) {\n delta -= node.parent.delta;\n }\n node = node.parent;\n continue;\n }\n if (!getNodeIsVisited(node.left)) {\n // first time seeing this node\n nodeMaxEnd = delta + node.maxEnd;\n if (nodeMaxEnd < intervalStart) {\n // cover case b) from above\n // there is no need to search this node or its children\n setNodeIsVisited(node, true);\n continue;\n }\n if (node.left !== SENTINEL) {\n // go left\n node = node.left;\n continue;\n }\n }\n // handle current node\n nodeStart = delta + node.start;\n if (nodeStart > intervalEnd) {\n // cover case a) from above\n // there is no need to search this node or its right subtree\n setNodeIsVisited(node, true);\n continue;\n }\n nodeEnd = delta + node.end;\n if (nodeEnd >= intervalStart) {\n // There is overlap\n node.setCachedOffsets(nodeStart, nodeEnd, cachedVersionId);\n let include = true;\n if (filterOwnerId && node.ownerId && node.ownerId !== filterOwnerId) {\n include = false;\n }\n if (filterOutValidation && getNodeIsForValidation(node)) {\n include = false;\n }\n if (onlyMarginDecorations && !getNodeIsInGlyphMargin(node)) {\n include = false;\n }\n if (include) {\n result[resultLen++] = node;\n }\n }\n setNodeIsVisited(node, true);\n if (node.right !== SENTINEL && !getNodeIsVisited(node.right)) {\n // go right\n delta += node.delta;\n node = node.right;\n continue;\n }\n }\n setNodeIsVisited(T.root, false);\n return result;\n}\n//#endregion\n//#region Insertion\nfunction rbTreeInsert(T, newNode) {\n if (T.root === SENTINEL) {\n newNode.parent = SENTINEL;\n newNode.left = SENTINEL;\n newNode.right = SENTINEL;\n setNodeColor(newNode, 0 /* NodeColor.Black */);\n T.root = newNode;\n return T.root;\n }\n treeInsert(T, newNode);\n recomputeMaxEndWalkToRoot(newNode.parent);\n // repair tree\n let x = newNode;\n while (x !== T.root && getNodeColor(x.parent) === 1 /* NodeColor.Red */) {\n if (x.parent === x.parent.parent.left) {\n const y = x.parent.parent.right;\n if (getNodeColor(y) === 1 /* NodeColor.Red */) {\n setNodeColor(x.parent, 0 /* NodeColor.Black */);\n setNodeColor(y, 0 /* NodeColor.Black */);\n setNodeColor(x.parent.parent, 1 /* NodeColor.Red */);\n x = x.parent.parent;\n }\n else {\n if (x === x.parent.right) {\n x = x.parent;\n leftRotate(T, x);\n }\n setNodeColor(x.parent, 0 /* NodeColor.Black */);\n setNodeColor(x.parent.parent, 1 /* NodeColor.Red */);\n rightRotate(T, x.parent.parent);\n }\n }\n else {\n const y = x.parent.parent.left;\n if (getNodeColor(y) === 1 /* NodeColor.Red */) {\n setNodeColor(x.parent, 0 /* NodeColor.Black */);\n setNodeColor(y, 0 /* NodeColor.Black */);\n setNodeColor(x.parent.parent, 1 /* NodeColor.Red */);\n x = x.parent.parent;\n }\n else {\n if (x === x.parent.left) {\n x = x.parent;\n rightRotate(T, x);\n }\n setNodeColor(x.parent, 0 /* NodeColor.Black */);\n setNodeColor(x.parent.parent, 1 /* NodeColor.Red */);\n leftRotate(T, x.parent.parent);\n }\n }\n }\n setNodeColor(T.root, 0 /* NodeColor.Black */);\n return newNode;\n}\nfunction treeInsert(T, z) {\n let delta = 0;\n let x = T.root;\n const zAbsoluteStart = z.start;\n const zAbsoluteEnd = z.end;\n while (true) {\n const cmp = intervalCompare(zAbsoluteStart, zAbsoluteEnd, x.start + delta, x.end + delta);\n if (cmp < 0) {\n // this node should be inserted to the left\n // => it is not affected by the node's delta\n if (x.left === SENTINEL) {\n z.start -= delta;\n z.end -= delta;\n z.maxEnd -= delta;\n x.left = z;\n break;\n }\n else {\n x = x.left;\n }\n }\n else {\n // this node should be inserted to the right\n // => it is not affected by the node's delta\n if (x.right === SENTINEL) {\n z.start -= (delta + x.delta);\n z.end -= (delta + x.delta);\n z.maxEnd -= (delta + x.delta);\n x.right = z;\n break;\n }\n else {\n delta += x.delta;\n x = x.right;\n }\n }\n }\n z.parent = x;\n z.left = SENTINEL;\n z.right = SENTINEL;\n setNodeColor(z, 1 /* NodeColor.Red */);\n}\n//#endregion\n//#region Deletion\nfunction rbTreeDelete(T, z) {\n let x;\n let y;\n // RB-DELETE except we don't swap z and y in case c)\n // i.e. we always delete what's pointed at by z.\n if (z.left === SENTINEL) {\n x = z.right;\n y = z;\n // x's delta is no longer influenced by z's delta\n x.delta += z.delta;\n if (x.delta < -1073741824 /* Constants.MIN_SAFE_DELTA */ || x.delta > 1073741824 /* Constants.MAX_SAFE_DELTA */) {\n T.requestNormalizeDelta = true;\n }\n x.start += z.delta;\n x.end += z.delta;\n }\n else if (z.right === SENTINEL) {\n x = z.left;\n y = z;\n }\n else {\n y = leftest(z.right);\n x = y.right;\n // y's delta is no longer influenced by z's delta,\n // but we don't want to walk the entire right-hand-side subtree of x.\n // we therefore maintain z's delta in y, and adjust only x\n x.start += y.delta;\n x.end += y.delta;\n x.delta += y.delta;\n if (x.delta < -1073741824 /* Constants.MIN_SAFE_DELTA */ || x.delta > 1073741824 /* Constants.MAX_SAFE_DELTA */) {\n T.requestNormalizeDelta = true;\n }\n y.start += z.delta;\n y.end += z.delta;\n y.delta = z.delta;\n if (y.delta < -1073741824 /* Constants.MIN_SAFE_DELTA */ || y.delta > 1073741824 /* Constants.MAX_SAFE_DELTA */) {\n T.requestNormalizeDelta = true;\n }\n }\n if (y === T.root) {\n T.root = x;\n setNodeColor(x, 0 /* NodeColor.Black */);\n z.detach();\n resetSentinel();\n recomputeMaxEnd(x);\n T.root.parent = SENTINEL;\n return;\n }\n const yWasRed = (getNodeColor(y) === 1 /* NodeColor.Red */);\n if (y === y.parent.left) {\n y.parent.left = x;\n }\n else {\n y.parent.right = x;\n }\n if (y === z) {\n x.parent = y.parent;\n }\n else {\n if (y.parent === z) {\n x.parent = y;\n }\n else {\n x.parent = y.parent;\n }\n y.left = z.left;\n y.right = z.right;\n y.parent = z.parent;\n setNodeColor(y, getNodeColor(z));\n if (z === T.root) {\n T.root = y;\n }\n else {\n if (z === z.parent.left) {\n z.parent.left = y;\n }\n else {\n z.parent.right = y;\n }\n }\n if (y.left !== SENTINEL) {\n y.left.parent = y;\n }\n if (y.right !== SENTINEL) {\n y.right.parent = y;\n }\n }\n z.detach();\n if (yWasRed) {\n recomputeMaxEndWalkToRoot(x.parent);\n if (y !== z) {\n recomputeMaxEndWalkToRoot(y);\n recomputeMaxEndWalkToRoot(y.parent);\n }\n resetSentinel();\n return;\n }\n recomputeMaxEndWalkToRoot(x);\n recomputeMaxEndWalkToRoot(x.parent);\n if (y !== z) {\n recomputeMaxEndWalkToRoot(y);\n recomputeMaxEndWalkToRoot(y.parent);\n }\n // RB-DELETE-FIXUP\n let w;\n while (x !== T.root && getNodeColor(x) === 0 /* NodeColor.Black */) {\n if (x === x.parent.left) {\n w = x.parent.right;\n if (getNodeColor(w) === 1 /* NodeColor.Red */) {\n setNodeColor(w, 0 /* NodeColor.Black */);\n setNodeColor(x.parent, 1 /* NodeColor.Red */);\n leftRotate(T, x.parent);\n w = x.parent.right;\n }\n if (getNodeColor(w.left) === 0 /* NodeColor.Black */ && getNodeColor(w.right) === 0 /* NodeColor.Black */) {\n setNodeColor(w, 1 /* NodeColor.Red */);\n x = x.parent;\n }\n else {\n if (getNodeColor(w.right) === 0 /* NodeColor.Black */) {\n setNodeColor(w.left, 0 /* NodeColor.Black */);\n setNodeColor(w, 1 /* NodeColor.Red */);\n rightRotate(T, w);\n w = x.parent.right;\n }\n setNodeColor(w, getNodeColor(x.parent));\n setNodeColor(x.parent, 0 /* NodeColor.Black */);\n setNodeColor(w.right, 0 /* NodeColor.Black */);\n leftRotate(T, x.parent);\n x = T.root;\n }\n }\n else {\n w = x.parent.left;\n if (getNodeColor(w) === 1 /* NodeColor.Red */) {\n setNodeColor(w, 0 /* NodeColor.Black */);\n setNodeColor(x.parent, 1 /* NodeColor.Red */);\n rightRotate(T, x.parent);\n w = x.parent.left;\n }\n if (getNodeColor(w.left) === 0 /* NodeColor.Black */ && getNodeColor(w.right) === 0 /* NodeColor.Black */) {\n setNodeColor(w, 1 /* NodeColor.Red */);\n x = x.parent;\n }\n else {\n if (getNodeColor(w.left) === 0 /* NodeColor.Black */) {\n setNodeColor(w.right, 0 /* NodeColor.Black */);\n setNodeColor(w, 1 /* NodeColor.Red */);\n leftRotate(T, w);\n w = x.parent.left;\n }\n setNodeColor(w, getNodeColor(x.parent));\n setNodeColor(x.parent, 0 /* NodeColor.Black */);\n setNodeColor(w.left, 0 /* NodeColor.Black */);\n rightRotate(T, x.parent);\n x = T.root;\n }\n }\n }\n setNodeColor(x, 0 /* NodeColor.Black */);\n resetSentinel();\n}\nfunction leftest(node) {\n while (node.left !== SENTINEL) {\n node = node.left;\n }\n return node;\n}\nfunction resetSentinel() {\n SENTINEL.parent = SENTINEL;\n SENTINEL.delta = 0; // optional\n SENTINEL.start = 0; // optional\n SENTINEL.end = 0; // optional\n}\n//#endregion\n//#region Rotations\nfunction leftRotate(T, x) {\n const y = x.right; // set y.\n y.delta += x.delta; // y's delta is no longer influenced by x's delta\n if (y.delta < -1073741824 /* Constants.MIN_SAFE_DELTA */ || y.delta > 1073741824 /* Constants.MAX_SAFE_DELTA */) {\n T.requestNormalizeDelta = true;\n }\n y.start += x.delta;\n y.end += x.delta;\n x.right = y.left; // turn y's left subtree into x's right subtree.\n if (y.left !== SENTINEL) {\n y.left.parent = x;\n }\n y.parent = x.parent; // link x's parent to y.\n if (x.parent === SENTINEL) {\n T.root = y;\n }\n else if (x === x.parent.left) {\n x.parent.left = y;\n }\n else {\n x.parent.right = y;\n }\n y.left = x; // put x on y's left.\n x.parent = y;\n recomputeMaxEnd(x);\n recomputeMaxEnd(y);\n}\nfunction rightRotate(T, y) {\n const x = y.left;\n y.delta -= x.delta;\n if (y.delta < -1073741824 /* Constants.MIN_SAFE_DELTA */ || y.delta > 1073741824 /* Constants.MAX_SAFE_DELTA */) {\n T.requestNormalizeDelta = true;\n }\n y.start -= x.delta;\n y.end -= x.delta;\n y.left = x.right;\n if (x.right !== SENTINEL) {\n x.right.parent = y;\n }\n x.parent = y.parent;\n if (y.parent === SENTINEL) {\n T.root = x;\n }\n else if (y === y.parent.right) {\n y.parent.right = x;\n }\n else {\n y.parent.left = x;\n }\n x.right = y;\n y.parent = x;\n recomputeMaxEnd(y);\n recomputeMaxEnd(x);\n}\n//#endregion\n//#region max end computation\nfunction computeMaxEnd(node) {\n let maxEnd = node.end;\n if (node.left !== SENTINEL) {\n const leftMaxEnd = node.left.maxEnd;\n if (leftMaxEnd > maxEnd) {\n maxEnd = leftMaxEnd;\n }\n }\n if (node.right !== SENTINEL) {\n const rightMaxEnd = node.right.maxEnd + node.delta;\n if (rightMaxEnd > maxEnd) {\n maxEnd = rightMaxEnd;\n }\n }\n return maxEnd;\n}\nfunction recomputeMaxEnd(node) {\n node.maxEnd = computeMaxEnd(node);\n}\nfunction recomputeMaxEndWalkToRoot(node) {\n while (node !== SENTINEL) {\n const maxEnd = computeMaxEnd(node);\n if (node.maxEnd === maxEnd) {\n // no need to go further\n return;\n }\n node.maxEnd = maxEnd;\n node = node.parent;\n }\n}\n//#endregion\n//#region utils\nfunction intervalCompare(aStart, aEnd, bStart, bEnd) {\n if (aStart === bStart) {\n return aEnd - bEnd;\n }\n return aStart - bStart;\n}\n//#endregion\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/common/model/intervalTree.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/common/model/mirrorTextModel.js":
/*!**********************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/common/model/mirrorTextModel.js ***!
\**********************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ MirrorTextModel: () => (/* binding */ MirrorTextModel)\n/* harmony export */ });\n/* harmony import */ var _base_common_strings_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../base/common/strings.js */ \"./node_modules/monaco-editor/esm/vs/base/common/strings.js\");\n/* harmony import */ var _core_position_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../core/position.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/core/position.js\");\n/* harmony import */ var _prefixSumComputer_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./prefixSumComputer.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/model/prefixSumComputer.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n\n\nclass MirrorTextModel {\n constructor(uri, lines, eol, versionId) {\n this._uri = uri;\n this._lines = lines;\n this._eol = eol;\n this._versionId = versionId;\n this._lineStarts = null;\n this._cachedTextValue = null;\n }\n dispose() {\n this._lines.length = 0;\n }\n get version() {\n return this._versionId;\n }\n getText() {\n if (this._cachedTextValue === null) {\n this._cachedTextValue = this._lines.join(this._eol);\n }\n return this._cachedTextValue;\n }\n onEvents(e) {\n if (e.eol && e.eol !== this._eol) {\n this._eol = e.eol;\n this._lineStarts = null;\n }\n // Update my lines\n const changes = e.changes;\n for (const change of changes) {\n this._acceptDeleteRange(change.range);\n this._acceptInsertText(new _core_position_js__WEBPACK_IMPORTED_MODULE_1__.Position(change.range.startLineNumber, change.range.startColumn), change.text);\n }\n this._versionId = e.versionId;\n this._cachedTextValue = null;\n }\n _ensureLineStarts() {\n if (!this._lineStarts) {\n const eolLength = this._eol.length;\n const linesLength = this._lines.length;\n const lineStartValues = new Uint32Array(linesLength);\n for (let i = 0; i < linesLength; i++) {\n lineStartValues[i] = this._lines[i].length + eolLength;\n }\n this._lineStarts = new _prefixSumComputer_js__WEBPACK_IMPORTED_MODULE_2__.PrefixSumComputer(lineStartValues);\n }\n }\n /**\n * All changes to a line's text go through this method\n */\n _setLineText(lineIndex, newValue) {\n this._lines[lineIndex] = newValue;\n if (this._lineStarts) {\n // update prefix sum\n this._lineStarts.setValue(lineIndex, this._lines[lineIndex].length + this._eol.length);\n }\n }\n _acceptDeleteRange(range) {\n if (range.startLineNumber === range.endLineNumber) {\n if (range.startColumn === range.endColumn) {\n // Nothing to delete\n return;\n }\n // Delete text on the affected line\n this._setLineText(range.startLineNumber - 1, this._lines[range.startLineNumber - 1].substring(0, range.startColumn - 1)\n + this._lines[range.startLineNumber - 1].substring(range.endColumn - 1));\n return;\n }\n // Take remaining text on last line and append it to remaining text on first line\n this._setLineText(range.startLineNumber - 1, this._lines[range.startLineNumber - 1].substring(0, range.startColumn - 1)\n + this._lines[range.endLineNumber - 1].substring(range.endColumn - 1));\n // Delete middle lines\n this._lines.splice(range.startLineNumber, range.endLineNumber - range.startLineNumber);\n if (this._lineStarts) {\n // update prefix sum\n this._lineStarts.removeValues(range.startLineNumber, range.endLineNumber - range.startLineNumber);\n }\n }\n _acceptInsertText(position, insertText) {\n if (insertText.length === 0) {\n // Nothing to insert\n return;\n }\n const insertLines = (0,_base_common_strings_js__WEBPACK_IMPORTED_MODULE_0__.splitLines)(insertText);\n if (insertLines.length === 1) {\n // Inserting text on one line\n this._setLineText(position.lineNumber - 1, this._lines[position.lineNumber - 1].substring(0, position.column - 1)\n + insertLines[0]\n + this._lines[position.lineNumber - 1].substring(position.column - 1));\n return;\n }\n // Append overflowing text from first line to the end of text to insert\n insertLines[insertLines.length - 1] += this._lines[position.lineNumber - 1].substring(position.column - 1);\n // Delete overflowing text from first line and insert text on first line\n this._setLineText(position.lineNumber - 1, this._lines[position.lineNumber - 1].substring(0, position.column - 1)\n + insertLines[0]);\n // Insert new lines & store lengths\n const newLengths = new Uint32Array(insertLines.length - 1);\n for (let i = 1; i < insertLines.length; i++) {\n this._lines.splice(position.lineNumber + i - 1, 0, insertLines[i]);\n newLengths[i - 1] = insertLines[i].length + this._eol.length;\n }\n if (this._lineStarts) {\n // update prefix sum\n this._lineStarts.insertValues(position.lineNumber, newLengths);\n }\n }\n}\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/common/model/mirrorTextModel.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/common/model/pieceTreeTextBuffer/pieceTreeBase.js":
/*!****************************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/common/model/pieceTreeTextBuffer/pieceTreeBase.js ***!
\****************************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ Piece: () => (/* binding */ Piece),\n/* harmony export */ PieceTreeBase: () => (/* binding */ PieceTreeBase),\n/* harmony export */ StringBuffer: () => (/* binding */ StringBuffer),\n/* harmony export */ createLineStarts: () => (/* binding */ createLineStarts),\n/* harmony export */ createLineStartsFast: () => (/* binding */ createLineStartsFast)\n/* harmony export */ });\n/* harmony import */ var _core_position_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../core/position.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/core/position.js\");\n/* harmony import */ var _core_range_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../core/range.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/core/range.js\");\n/* harmony import */ var _model_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../model.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/model.js\");\n/* harmony import */ var _rbTreeBase_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./rbTreeBase.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/model/pieceTreeTextBuffer/rbTreeBase.js\");\n/* harmony import */ var _textModelSearch_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../textModelSearch.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/model/textModelSearch.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n\n\n\n\n// const lfRegex = new RegExp(/\\r\\n|\\r|\\n/g);\nconst AverageBufferSize = 65535;\nfunction createUintArray(arr) {\n let r;\n if (arr[arr.length - 1] < 65536) {\n r = new Uint16Array(arr.length);\n }\n else {\n r = new Uint32Array(arr.length);\n }\n r.set(arr, 0);\n return r;\n}\nclass LineStarts {\n constructor(lineStarts, cr, lf, crlf, isBasicASCII) {\n this.lineStarts = lineStarts;\n this.cr = cr;\n this.lf = lf;\n this.crlf = crlf;\n this.isBasicASCII = isBasicASCII;\n }\n}\nfunction createLineStartsFast(str, readonly = true) {\n const r = [0];\n let rLength = 1;\n for (let i = 0, len = str.length; i < len; i++) {\n const chr = str.charCodeAt(i);\n if (chr === 13 /* CharCode.CarriageReturn */) {\n if (i + 1 < len && str.charCodeAt(i + 1) === 10 /* CharCode.LineFeed */) {\n // \\r\\n... case\n r[rLength++] = i + 2;\n i++; // skip \\n\n }\n else {\n // \\r... case\n r[rLength++] = i + 1;\n }\n }\n else if (chr === 10 /* CharCode.LineFeed */) {\n r[rLength++] = i + 1;\n }\n }\n if (readonly) {\n return createUintArray(r);\n }\n else {\n return r;\n }\n}\nfunction createLineStarts(r, str) {\n r.length = 0;\n r[0] = 0;\n let rLength = 1;\n let cr = 0, lf = 0, crlf = 0;\n let isBasicASCII = true;\n for (let i = 0, len = str.length; i < len; i++) {\n const chr = str.charCodeAt(i);\n if (chr === 13 /* CharCode.CarriageReturn */) {\n if (i + 1 < len && str.charCodeAt(i + 1) === 10 /* CharCode.LineFeed */) {\n // \\r\\n... case\n crlf++;\n r[rLength++] = i + 2;\n i++; // skip \\n\n }\n else {\n cr++;\n // \\r... case\n r[rLength++] = i + 1;\n }\n }\n else if (chr === 10 /* CharCode.LineFeed */) {\n lf++;\n r[rLength++] = i + 1;\n }\n else {\n if (isBasicASCII) {\n if (chr !== 9 /* CharCode.Tab */ && (chr < 32 || chr > 126)) {\n isBasicASCII = false;\n }\n }\n }\n }\n const result = new LineStarts(createUintArray(r), cr, lf, crlf, isBasicASCII);\n r.length = 0;\n return result;\n}\nclass Piece {\n constructor(bufferIndex, start, end, lineFeedCnt, length) {\n this.bufferIndex = bufferIndex;\n this.start = start;\n this.end = end;\n this.lineFeedCnt = lineFeedCnt;\n this.length = length;\n }\n}\nclass StringBuffer {\n constructor(buffer, lineStarts) {\n this.buffer = buffer;\n this.lineStarts = lineStarts;\n }\n}\n/**\n * Readonly snapshot for piece tree.\n * In a real multiple thread environment, to make snapshot reading always work correctly, we need to\n * 1. Make TreeNode.piece immutable, then reading and writing can run in parallel.\n * 2. TreeNode/Buffers normalization should not happen during snapshot reading.\n */\nclass PieceTreeSnapshot {\n constructor(tree, BOM) {\n this._pieces = [];\n this._tree = tree;\n this._BOM = BOM;\n this._index = 0;\n if (tree.root !== _rbTreeBase_js__WEBPACK_IMPORTED_MODULE_3__.SENTINEL) {\n tree.iterate(tree.root, node => {\n if (node !== _rbTreeBase_js__WEBPACK_IMPORTED_MODULE_3__.SENTINEL) {\n this._pieces.push(node.piece);\n }\n return true;\n });\n }\n }\n read() {\n if (this._pieces.length === 0) {\n if (this._index === 0) {\n this._index++;\n return this._BOM;\n }\n else {\n return null;\n }\n }\n if (this._index > this._pieces.length - 1) {\n return null;\n }\n if (this._index === 0) {\n return this._BOM + this._tree.getPieceContent(this._pieces[this._index++]);\n }\n return this._tree.getPieceContent(this._pieces[this._index++]);\n }\n}\nclass PieceTreeSearchCache {\n constructor(limit) {\n this._limit = limit;\n this._cache = [];\n }\n get(offset) {\n for (let i = this._cache.length - 1; i >= 0; i--) {\n const nodePos = this._cache[i];\n if (nodePos.nodeStartOffset <= offset && nodePos.nodeStartOffset + nodePos.node.piece.length >= offset) {\n return nodePos;\n }\n }\n return null;\n }\n get2(lineNumber) {\n for (let i = this._cache.length - 1; i >= 0; i--) {\n const nodePos = this._cache[i];\n if (nodePos.nodeStartLineNumber && nodePos.nodeStartLineNumber < lineNumber && nodePos.nodeStartLineNumber + nodePos.node.piece.lineFeedCnt >= lineNumber) {\n return nodePos;\n }\n }\n return null;\n }\n set(nodePosition) {\n if (this._cache.length >= this._limit) {\n this._cache.shift();\n }\n this._cache.push(nodePosition);\n }\n validate(offset) {\n let hasInvalidVal = false;\n const tmp = this._cache;\n for (let i = 0; i < tmp.length; i++) {\n const nodePos = tmp[i];\n if (nodePos.node.parent === null || nodePos.nodeStartOffset >= offset) {\n tmp[i] = null;\n hasInvalidVal = true;\n continue;\n }\n }\n if (hasInvalidVal) {\n const newArr = [];\n for (const entry of tmp) {\n if (entry !== null) {\n newArr.push(entry);\n }\n }\n this._cache = newArr;\n }\n }\n}\nclass PieceTreeBase {\n constructor(chunks, eol, eolNormalized) {\n this.create(chunks, eol, eolNormalized);\n }\n create(chunks, eol, eolNormalized) {\n this._buffers = [\n new StringBuffer('', [0])\n ];\n this._lastChangeBufferPos = { line: 0, column: 0 };\n this.root = _rbTreeBase_js__WEBPACK_IMPORTED_MODULE_3__.SENTINEL;\n this._lineCnt = 1;\n this._length = 0;\n this._EOL = eol;\n this._EOLLength = eol.length;\n this._EOLNormalized = eolNormalized;\n let lastNode = null;\n for (let i = 0, len = chunks.length; i < len; i++) {\n if (chunks[i].buffer.length > 0) {\n if (!chunks[i].lineStarts) {\n chunks[i].lineStarts = createLineStartsFast(chunks[i].buffer);\n }\n const piece = new Piece(i + 1, { line: 0, column: 0 }, { line: chunks[i].lineStarts.length - 1, column: chunks[i].buffer.length - chunks[i].lineStarts[chunks[i].lineStarts.length - 1] }, chunks[i].lineStarts.length - 1, chunks[i].buffer.length);\n this._buffers.push(chunks[i]);\n lastNode = this.rbInsertRight(lastNode, piece);\n }\n }\n this._searchCache = new PieceTreeSearchCache(1);\n this._lastVisitedLine = { lineNumber: 0, value: '' };\n this.computeBufferMetadata();\n }\n normalizeEOL(eol) {\n const averageBufferSize = AverageBufferSize;\n const min = averageBufferSize - Math.floor(averageBufferSize / 3);\n const max = min * 2;\n let tempChunk = '';\n let tempChunkLen = 0;\n const chunks = [];\n this.iterate(this.root, node => {\n const str = this.getNodeContent(node);\n const len = str.length;\n if (tempChunkLen <= min || tempChunkLen + len < max) {\n tempChunk += str;\n tempChunkLen += len;\n return true;\n }\n // flush anyways\n const text = tempChunk.replace(/\\r\\n|\\r|\\n/g, eol);\n chunks.push(new StringBuffer(text, createLineStartsFast(text)));\n tempChunk = str;\n tempChunkLen = len;\n return true;\n });\n if (tempChunkLen > 0) {\n const text = tempChunk.replace(/\\r\\n|\\r|\\n/g, eol);\n chunks.push(new StringBuffer(text, createLineStartsFast(text)));\n }\n this.create(chunks, eol, true);\n }\n // #region Buffer API\n getEOL() {\n return this._EOL;\n }\n setEOL(newEOL) {\n this._EOL = newEOL;\n this._EOLLength = this._EOL.length;\n this.normalizeEOL(newEOL);\n }\n createSnapshot(BOM) {\n return new PieceTreeSnapshot(this, BOM);\n }\n getOffsetAt(lineNumber, column) {\n let leftLen = 0; // inorder\n let x = this.root;\n while (x !== _rbTreeBase_js__WEBPACK_IMPORTED_MODULE_3__.SENTINEL) {\n if (x.left !== _rbTreeBase_js__WEBPACK_IMPORTED_MODULE_3__.SENTINEL && x.lf_left + 1 >= lineNumber) {\n x = x.left;\n }\n else if (x.lf_left + x.piece.lineFeedCnt + 1 >= lineNumber) {\n leftLen += x.size_left;\n // lineNumber >= 2\n const accumualtedValInCurrentIndex = this.getAccumulatedValue(x, lineNumber - x.lf_left - 2);\n return leftLen += accumualtedValInCurrentIndex + column - 1;\n }\n else {\n lineNumber -= x.lf_left + x.piece.lineFeedCnt;\n leftLen += x.size_left + x.piece.length;\n x = x.right;\n }\n }\n return leftLen;\n }\n getPositionAt(offset) {\n offset = Math.floor(offset);\n offset = Math.max(0, offset);\n let x = this.root;\n let lfCnt = 0;\n const originalOffset = offset;\n while (x !== _rbTreeBase_js__WEBPACK_IMPORTED_MODULE_3__.SENTINEL) {\n if (x.size_left !== 0 && x.size_left >= offset) {\n x = x.left;\n }\n else if (x.size_left + x.piece.length >= offset) {\n const out = this.getIndexOf(x, offset - x.size_left);\n lfCnt += x.lf_left + out.index;\n if (out.index === 0) {\n const lineStartOffset = this.getOffsetAt(lfCnt + 1, 1);\n const column = originalOffset - lineStartOffset;\n return new _core_position_js__WEBPACK_IMPORTED_MODULE_0__.Position(lfCnt + 1, column + 1);\n }\n return new _core_position_js__WEBPACK_IMPORTED_MODULE_0__.Position(lfCnt + 1, out.remainder + 1);\n }\n else {\n offset -= x.size_left + x.piece.length;\n lfCnt += x.lf_left + x.piece.lineFeedCnt;\n if (x.right === _rbTreeBase_js__WEBPACK_IMPORTED_MODULE_3__.SENTINEL) {\n // last node\n const lineStartOffset = this.getOffsetAt(lfCnt + 1, 1);\n const column = originalOffset - offset - lineStartOffset;\n return new _core_position_js__WEBPACK_IMPORTED_MODULE_0__.Position(lfCnt + 1, column + 1);\n }\n else {\n x = x.right;\n }\n }\n }\n return new _core_position_js__WEBPACK_IMPORTED_MODULE_0__.Position(1, 1);\n }\n getValueInRange(range, eol) {\n if (range.startLineNumber === range.endLineNumber && range.startColumn === range.endColumn) {\n return '';\n }\n const startPosition = this.nodeAt2(range.startLineNumber, range.startColumn);\n const endPosition = this.nodeAt2(range.endLineNumber, range.endColumn);\n const value = this.getValueInRange2(startPosition, endPosition);\n if (eol) {\n if (eol !== this._EOL || !this._EOLNormalized) {\n return value.replace(/\\r\\n|\\r|\\n/g, eol);\n }\n if (eol === this.getEOL() && this._EOLNormalized) {\n if (eol === '\\r\\n') {\n }\n return value;\n }\n return value.replace(/\\r\\n|\\r|\\n/g, eol);\n }\n return value;\n }\n getValueInRange2(startPosition, endPosition) {\n if (startPosition.node === endPosition.node) {\n const node = startPosition.node;\n const buffer = this._buffers[node.piece.bufferIndex].buffer;\n const startOffset = this.offsetInBuffer(node.piece.bufferIndex, node.piece.start);\n return buffer.substring(startOffset + startPosition.remainder, startOffset + endPosition.remainder);\n }\n let x = startPosition.node;\n const buffer = this._buffers[x.piece.bufferIndex].buffer;\n const startOffset = this.offsetInBuffer(x.piece.bufferIndex, x.piece.start);\n let ret = buffer.substring(startOffset + startPosition.remainder, startOffset + x.piece.length);\n x = x.next();\n while (x !== _rbTreeBase_js__WEBPACK_IMPORTED_MODULE_3__.SENTINEL) {\n const buffer = this._buffers[x.piece.bufferIndex].buffer;\n const startOffset = this.offsetInBuffer(x.piece.bufferIndex, x.piece.start);\n if (x === endPosition.node) {\n ret += buffer.substring(startOffset, startOffset + endPosition.remainder);\n break;\n }\n else {\n ret += buffer.substr(startOffset, x.piece.length);\n }\n x = x.next();\n }\n return ret;\n }\n getLinesContent() {\n const lines = [];\n let linesLength = 0;\n let currentLine = '';\n let danglingCR = false;\n this.iterate(this.root, node => {\n if (node === _rbTreeBase_js__WEBPACK_IMPORTED_MODULE_3__.SENTINEL) {\n return true;\n }\n const piece = node.piece;\n let pieceLength = piece.length;\n if (pieceLength === 0) {\n return true;\n }\n const buffer = this._buffers[piece.bufferIndex].buffer;\n const lineStarts = this._buffers[piece.bufferIndex].lineStarts;\n const pieceStartLine = piece.start.line;\n const pieceEndLine = piece.end.line;\n let pieceStartOffset = lineStarts[pieceStartLine] + piece.start.column;\n if (danglingCR) {\n if (buffer.charCodeAt(pieceStartOffset) === 10 /* CharCode.LineFeed */) {\n // pretend the \\n was in the previous piece..\n pieceStartOffset++;\n pieceLength--;\n }\n lines[linesLength++] = currentLine;\n currentLine = '';\n danglingCR = false;\n if (pieceLength === 0) {\n return true;\n }\n }\n if (pieceStartLine === pieceEndLine) {\n // this piece has no new lines\n if (!this._EOLNormalized && buffer.charCodeAt(pieceStartOffset + pieceLength - 1) === 13 /* CharCode.CarriageReturn */) {\n danglingCR = true;\n currentLine += buffer.substr(pieceStartOffset, pieceLength - 1);\n }\n else {\n currentLine += buffer.substr(pieceStartOffset, pieceLength);\n }\n return true;\n }\n // add the text before the first line start in this piece\n currentLine += (this._EOLNormalized\n ? buffer.substring(pieceStartOffset, Math.max(pieceStartOffset, lineStarts[pieceStartLine + 1] - this._EOLLength))\n : buffer.substring(pieceStartOffset, lineStarts[pieceStartLine + 1]).replace(/(\\r\\n|\\r|\\n)$/, ''));\n lines[linesLength++] = currentLine;\n for (let line = pieceStartLine + 1; line < pieceEndLine; line++) {\n currentLine = (this._EOLNormalized\n ? buffer.substring(lineStarts[line], lineStarts[line + 1] - this._EOLLength)\n : buffer.substring(lineStarts[line], lineStarts[line + 1]).replace(/(\\r\\n|\\r|\\n)$/, ''));\n lines[linesLength++] = currentLine;\n }\n if (!this._EOLNormalized && buffer.charCodeAt(lineStarts[pieceEndLine] + piece.end.column - 1) === 13 /* CharCode.CarriageReturn */) {\n danglingCR = true;\n if (piece.end.column === 0) {\n // The last line ended with a \\r, let's undo the push, it will be pushed by next iteration\n linesLength--;\n }\n else {\n currentLine = buffer.substr(lineStarts[pieceEndLine], piece.end.column - 1);\n }\n }\n else {\n currentLine = buffer.substr(lineStarts[pieceEndLine], piece.end.column);\n }\n return true;\n });\n if (danglingCR) {\n lines[linesLength++] = currentLine;\n currentLine = '';\n }\n lines[linesLength++] = currentLine;\n return lines;\n }\n getLength() {\n return this._length;\n }\n getLineCount() {\n return this._lineCnt;\n }\n getLineContent(lineNumber) {\n if (this._lastVisitedLine.lineNumber === lineNumber) {\n return this._lastVisitedLine.value;\n }\n this._lastVisitedLine.lineNumber = lineNumber;\n if (lineNumber === this._lineCnt) {\n this._lastVisitedLine.value = this.getLineRawContent(lineNumber);\n }\n else if (this._EOLNormalized) {\n this._lastVisitedLine.value = this.getLineRawContent(lineNumber, this._EOLLength);\n }\n else {\n this._lastVisitedLine.value = this.getLineRawContent(lineNumber).replace(/(\\r\\n|\\r|\\n)$/, '');\n }\n return this._lastVisitedLine.value;\n }\n _getCharCode(nodePos) {\n if (nodePos.remainder === nodePos.node.piece.length) {\n // the char we want to fetch is at the head of next node.\n const matchingNode = nodePos.node.next();\n if (!matchingNode) {\n return 0;\n }\n const buffer = this._buffers[matchingNode.piece.bufferIndex];\n const startOffset = this.offsetInBuffer(matchingNode.piece.bufferIndex, matchingNode.piece.start);\n return buffer.buffer.charCodeAt(startOffset);\n }\n else {\n const buffer = this._buffers[nodePos.node.piece.bufferIndex];\n const startOffset = this.offsetInBuffer(nodePos.node.piece.bufferIndex, nodePos.node.piece.start);\n const targetOffset = startOffset + nodePos.remainder;\n return buffer.buffer.charCodeAt(targetOffset);\n }\n }\n getLineCharCode(lineNumber, index) {\n const nodePos = this.nodeAt2(lineNumber, index + 1);\n return this._getCharCode(nodePos);\n }\n getLineLength(lineNumber) {\n if (lineNumber === this.getLineCount()) {\n const startOffset = this.getOffsetAt(lineNumber, 1);\n return this.getLength() - startOffset;\n }\n return this.getOffsetAt(lineNumber + 1, 1) - this.getOffsetAt(lineNumber, 1) - this._EOLLength;\n }\n findMatchesInNode(node, searcher, startLineNumber, startColumn, startCursor, endCursor, searchData, captureMatches, limitResultCount, resultLen, result) {\n const buffer = this._buffers[node.piece.bufferIndex];\n const startOffsetInBuffer = this.offsetInBuffer(node.piece.bufferIndex, node.piece.start);\n const start = this.offsetInBuffer(node.piece.bufferIndex, startCursor);\n const end = this.offsetInBuffer(node.piece.bufferIndex, endCursor);\n let m;\n // Reset regex to search from the beginning\n const ret = { line: 0, column: 0 };\n let searchText;\n let offsetInBuffer;\n if (searcher._wordSeparators) {\n searchText = buffer.buffer.substring(start, end);\n offsetInBuffer = (offset) => offset + start;\n searcher.reset(0);\n }\n else {\n searchText = buffer.buffer;\n offsetInBuffer = (offset) => offset;\n searcher.reset(start);\n }\n do {\n m = searcher.next(searchText);\n if (m) {\n if (offsetInBuffer(m.index) >= end) {\n return resultLen;\n }\n this.positionInBuffer(node, offsetInBuffer(m.index) - startOffsetInBuffer, ret);\n const lineFeedCnt = this.getLineFeedCnt(node.piece.bufferIndex, startCursor, ret);\n const retStartColumn = ret.line === startCursor.line ? ret.column - startCursor.column + startColumn : ret.column + 1;\n const retEndColumn = retStartColumn + m[0].length;\n result[resultLen++] = (0,_textModelSearch_js__WEBPACK_IMPORTED_MODULE_4__.createFindMatch)(new _core_range_js__WEBPACK_IMPORTED_MODULE_1__.Range(startLineNumber + lineFeedCnt, retStartColumn, startLineNumber + lineFeedCnt, retEndColumn), m, captureMatches);\n if (offsetInBuffer(m.index) + m[0].length >= end) {\n return resultLen;\n }\n if (resultLen >= limitResultCount) {\n return resultLen;\n }\n }\n } while (m);\n return resultLen;\n }\n findMatchesLineByLine(searchRange, searchData, captureMatches, limitResultCount) {\n const result = [];\n let resultLen = 0;\n const searcher = new _textModelSearch_js__WEBPACK_IMPORTED_MODULE_4__.Searcher(searchData.wordSeparators, searchData.regex);\n let startPosition = this.nodeAt2(searchRange.startLineNumber, searchRange.startColumn);\n if (startPosition === null) {\n return [];\n }\n const endPosition = this.nodeAt2(searchRange.endLineNumber, searchRange.endColumn);\n if (endPosition === null) {\n return [];\n }\n let start = this.positionInBuffer(startPosition.node, startPosition.remainder);\n const end = this.positionInBuffer(endPosition.node, endPosition.remainder);\n if (startPosition.node === endPosition.node) {\n this.findMatchesInNode(startPosition.node, searcher, searchRange.startLineNumber, searchRange.startColumn, start, end, searchData, captureMatches, limitResultCount, resultLen, result);\n return result;\n }\n let startLineNumber = searchRange.startLineNumber;\n let currentNode = startPosition.node;\n while (currentNode !== endPosition.node) {\n const lineBreakCnt = this.getLineFeedCnt(currentNode.piece.bufferIndex, start, currentNode.piece.end);\n if (lineBreakCnt >= 1) {\n // last line break position\n const lineStarts = this._buffers[currentNode.piece.bufferIndex].lineStarts;\n const startOffsetInBuffer = this.offsetInBuffer(currentNode.piece.bufferIndex, currentNode.piece.start);\n const nextLineStartOffset = lineStarts[start.line + lineBreakCnt];\n const startColumn = startLineNumber === searchRange.startLineNumber ? searchRange.startColumn : 1;\n resultLen = this.findMatchesInNode(currentNode, searcher, startLineNumber, startColumn, start, this.positionInBuffer(currentNode, nextLineStartOffset - startOffsetInBuffer), searchData, captureMatches, limitResultCount, resultLen, result);\n if (resultLen >= limitResultCount) {\n return result;\n }\n startLineNumber += lineBreakCnt;\n }\n const startColumn = startLineNumber === searchRange.startLineNumber ? searchRange.startColumn - 1 : 0;\n // search for the remaining content\n if (startLineNumber === searchRange.endLineNumber) {\n const text = this.getLineContent(startLineNumber).substring(startColumn, searchRange.endColumn - 1);\n resultLen = this._findMatchesInLine(searchData, searcher, text, searchRange.endLineNumber, startColumn, resultLen, result, captureMatches, limitResultCount);\n return result;\n }\n resultLen = this._findMatchesInLine(searchData, searcher, this.getLineContent(startLineNumber).substr(startColumn), startLineNumber, startColumn, resultLen, result, captureMatches, limitResultCount);\n if (resultLen >= limitResultCount) {\n return result;\n }\n startLineNumber++;\n startPosition = this.nodeAt2(startLineNumber, 1);\n currentNode = startPosition.node;\n start = this.positionInBuffer(startPosition.node, startPosition.remainder);\n }\n if (startLineNumber === searchRange.endLineNumber) {\n const startColumn = startLineNumber === searchRange.startLineNumber ? searchRange.startColumn - 1 : 0;\n const text = this.getLineContent(startLineNumber).substring(startColumn, searchRange.endColumn - 1);\n resultLen = this._findMatchesInLine(searchData, searcher, text, searchRange.endLineNumber, startColumn, resultLen, result, captureMatches, limitResultCount);\n return result;\n }\n const startColumn = startLineNumber === searchRange.startLineNumber ? searchRange.startColumn : 1;\n resultLen = this.findMatchesInNode(endPosition.node, searcher, startLineNumber, startColumn, start, end, searchData, captureMatches, limitResultCount, resultLen, result);\n return result;\n }\n _findMatchesInLine(searchData, searcher, text, lineNumber, deltaOffset, resultLen, result, captureMatches, limitResultCount) {\n const wordSeparators = searchData.wordSeparators;\n if (!captureMatches && searchData.simpleSearch) {\n const searchString = searchData.simpleSearch;\n const searchStringLen = searchString.length;\n const textLength = text.length;\n let lastMatchIndex = -searchStringLen;\n while ((lastMatchIndex = text.indexOf(searchString, lastMatchIndex + searchStringLen)) !== -1) {\n if (!wordSeparators || (0,_textModelSearch_js__WEBPACK_IMPORTED_MODULE_4__.isValidMatch)(wordSeparators, text, textLength, lastMatchIndex, searchStringLen)) {\n result[resultLen++] = new _model_js__WEBPACK_IMPORTED_MODULE_2__.FindMatch(new _core_range_js__WEBPACK_IMPORTED_MODULE_1__.Range(lineNumber, lastMatchIndex + 1 + deltaOffset, lineNumber, lastMatchIndex + 1 + searchStringLen + deltaOffset), null);\n if (resultLen >= limitResultCount) {\n return resultLen;\n }\n }\n }\n return resultLen;\n }\n let m;\n // Reset regex to search from the beginning\n searcher.reset(0);\n do {\n m = searcher.next(text);\n if (m) {\n result[resultLen++] = (0,_textModelSearch_js__WEBPACK_IMPORTED_MODULE_4__.createFindMatch)(new _core_range_js__WEBPACK_IMPORTED_MODULE_1__.Range(lineNumber, m.index + 1 + deltaOffset, lineNumber, m.index + 1 + m[0].length + deltaOffset), m, captureMatches);\n if (resultLen >= limitResultCount) {\n return resultLen;\n }\n }\n } while (m);\n return resultLen;\n }\n // #endregion\n // #region Piece Table\n insert(offset, value, eolNormalized = false) {\n this._EOLNormalized = this._EOLNormalized && eolNormalized;\n this._lastVisitedLine.lineNumber = 0;\n this._lastVisitedLine.value = '';\n if (this.root !== _rbTreeBase_js__WEBPACK_IMPORTED_MODULE_3__.SENTINEL) {\n const { node, remainder, nodeStartOffset } = this.nodeAt(offset);\n const piece = node.piece;\n const bufferIndex = piece.bufferIndex;\n const insertPosInBuffer = this.positionInBuffer(node, remainder);\n if (node.piece.bufferIndex === 0 &&\n piece.end.line === this._lastChangeBufferPos.line &&\n piece.end.column === this._lastChangeBufferPos.column &&\n (nodeStartOffset + piece.length === offset) &&\n value.length < AverageBufferSize) {\n // changed buffer\n this.appendToNode(node, value);\n this.computeBufferMetadata();\n return;\n }\n if (nodeStartOffset === offset) {\n this.insertContentToNodeLeft(value, node);\n this._searchCache.validate(offset);\n }\n else if (nodeStartOffset + node.piece.length > offset) {\n // we are inserting into the middle of a node.\n const nodesToDel = [];\n let newRightPiece = new Piece(piece.bufferIndex, insertPosInBuffer, piece.end, this.getLineFeedCnt(piece.bufferIndex, insertPosInBuffer, piece.end), this.offsetInBuffer(bufferIndex, piece.end) - this.offsetInBuffer(bufferIndex, insertPosInBuffer));\n if (this.shouldCheckCRLF() && this.endWithCR(value)) {\n const headOfRight = this.nodeCharCodeAt(node, remainder);\n if (headOfRight === 10 /** \\n */) {\n const newStart = { line: newRightPiece.start.line + 1, column: 0 };\n newRightPiece = new Piece(newRightPiece.bufferIndex, newStart, newRightPiece.end, this.getLineFeedCnt(newRightPiece.bufferIndex, newStart, newRightPiece.end), newRightPiece.length - 1);\n value += '\\n';\n }\n }\n // reuse node for content before insertion point.\n if (this.shouldCheckCRLF() && this.startWithLF(value)) {\n const tailOfLeft = this.nodeCharCodeAt(node, remainder - 1);\n if (tailOfLeft === 13 /** \\r */) {\n const previousPos = this.positionInBuffer(node, remainder - 1);\n this.deleteNodeTail(node, previousPos);\n value = '\\r' + value;\n if (node.piece.length === 0) {\n nodesToDel.push(node);\n }\n }\n else {\n this.deleteNodeTail(node, insertPosInBuffer);\n }\n }\n else {\n this.deleteNodeTail(node, insertPosInBuffer);\n }\n const newPieces = this.createNewPieces(value);\n if (newRightPiece.length > 0) {\n this.rbInsertRight(node, newRightPiece);\n }\n let tmpNode = node;\n for (let k = 0; k < newPieces.length; k++) {\n tmpNode = this.rbInsertRight(tmpNode, newPieces[k]);\n }\n this.deleteNodes(nodesToDel);\n }\n else {\n this.insertContentToNodeRight(value, node);\n }\n }\n else {\n // insert new node\n const pieces = this.createNewPieces(value);\n let node = this.rbInsertLeft(null, pieces[0]);\n for (let k = 1; k < pieces.length; k++) {\n node = this.rbInsertRight(node, pieces[k]);\n }\n }\n // todo, this is too brutal. Total line feed count should be updated the same way as lf_left.\n this.computeBufferMetadata();\n }\n delete(offset, cnt) {\n this._lastVisitedLine.lineNumber = 0;\n this._lastVisitedLine.value = '';\n if (cnt <= 0 || this.root === _rbTreeBase_js__WEBPACK_IMPORTED_MODULE_3__.SENTINEL) {\n return;\n }\n const startPosition = this.nodeAt(offset);\n const endPosition = this.nodeAt(offset + cnt);\n const startNode = startPosition.node;\n const endNode = endPosition.node;\n if (startNode === endNode) {\n const startSplitPosInBuffer = this.positionInBuffer(startNode, startPosition.remainder);\n const endSplitPosInBuffer = this.positionInBuffer(startNode, endPosition.remainder);\n if (startPosition.nodeStartOffset === offset) {\n if (cnt === startNode.piece.length) { // delete node\n const next = startNode.next();\n (0,_rbTreeBase_js__WEBPACK_IMPORTED_MODULE_3__.rbDelete)(this, startNode);\n this.validateCRLFWithPrevNode(next);\n this.computeBufferMetadata();\n return;\n }\n this.deleteNodeHead(startNode, endSplitPosInBuffer);\n this._searchCache.validate(offset);\n this.validateCRLFWithPrevNode(startNode);\n this.computeBufferMetadata();\n return;\n }\n if (startPosition.nodeStartOffset + startNode.piece.length === offset + cnt) {\n this.deleteNodeTail(startNode, startSplitPosInBuffer);\n this.validateCRLFWithNextNode(startNode);\n this.computeBufferMetadata();\n return;\n }\n // delete content in the middle, this node will be splitted to nodes\n this.shrinkNode(startNode, startSplitPosInBuffer, endSplitPosInBuffer);\n this.computeBufferMetadata();\n return;\n }\n const nodesToDel = [];\n const startSplitPosInBuffer = this.positionInBuffer(startNode, startPosition.remainder);\n this.deleteNodeTail(startNode, startSplitPosInBuffer);\n this._searchCache.validate(offset);\n if (startNode.piece.length === 0) {\n nodesToDel.push(startNode);\n }\n // update last touched node\n const endSplitPosInBuffer = this.positionInBuffer(endNode, endPosition.remainder);\n this.deleteNodeHead(endNode, endSplitPosInBuffer);\n if (endNode.piece.length === 0) {\n nodesToDel.push(endNode);\n }\n // delete nodes in between\n const secondNode = startNode.next();\n for (let node = secondNode; node !== _rbTreeBase_js__WEBPACK_IMPORTED_MODULE_3__.SENTINEL && node !== endNode; node = node.next()) {\n nodesToDel.push(node);\n }\n const prev = startNode.piece.length === 0 ? startNode.prev() : startNode;\n this.deleteNodes(nodesToDel);\n this.validateCRLFWithNextNode(prev);\n this.computeBufferMetadata();\n }\n insertContentToNodeLeft(value, node) {\n // we are inserting content to the beginning of node\n const nodesToDel = [];\n if (this.shouldCheckCRLF() && this.endWithCR(value) && this.startWithLF(node)) {\n // move `\\n` to new node.\n const piece = node.piece;\n const newStart = { line: piece.start.line + 1, column: 0 };\n const nPiece = new Piece(piece.bufferIndex, newStart, piece.end, this.getLineFeedCnt(piece.bufferIndex, newStart, piece.end), piece.length - 1);\n node.piece = nPiece;\n value += '\\n';\n (0,_rbTreeBase_js__WEBPACK_IMPORTED_MODULE_3__.updateTreeMetadata)(this, node, -1, -1);\n if (node.piece.length === 0) {\n nodesToDel.push(node);\n }\n }\n const newPieces = this.createNewPieces(value);\n let newNode = this.rbInsertLeft(node, newPieces[newPieces.length - 1]);\n for (let k = newPieces.length - 2; k >= 0; k--) {\n newNode = this.rbInsertLeft(newNode, newPieces[k]);\n }\n this.validateCRLFWithPrevNode(newNode);\n this.deleteNodes(nodesToDel);\n }\n insertContentToNodeRight(value, node) {\n // we are inserting to the right of this node.\n if (this.adjustCarriageReturnFromNext(value, node)) {\n // move \\n to the new node.\n value += '\\n';\n }\n const newPieces = this.createNewPieces(value);\n const newNode = this.rbInsertRight(node, newPieces[0]);\n let tmpNode = newNode;\n for (let k = 1; k < newPieces.length; k++) {\n tmpNode = this.rbInsertRight(tmpNode, newPieces[k]);\n }\n this.validateCRLFWithPrevNode(newNode);\n }\n positionInBuffer(node, remainder, ret) {\n const piece = node.piece;\n const bufferIndex = node.piece.bufferIndex;\n const lineStarts = this._buffers[bufferIndex].lineStarts;\n const startOffset = lineStarts[piece.start.line] + piece.start.column;\n const offset = startOffset + remainder;\n // binary search offset between startOffset and endOffset\n let low = piece.start.line;\n let high = piece.end.line;\n let mid = 0;\n let midStop = 0;\n let midStart = 0;\n while (low <= high) {\n mid = low + ((high - low) / 2) | 0;\n midStart = lineStarts[mid];\n if (mid === high) {\n break;\n }\n midStop = lineStarts[mid + 1];\n if (offset < midStart) {\n high = mid - 1;\n }\n else if (offset >= midStop) {\n low = mid + 1;\n }\n else {\n break;\n }\n }\n if (ret) {\n ret.line = mid;\n ret.column = offset - midStart;\n return null;\n }\n return {\n line: mid,\n column: offset - midStart\n };\n }\n getLineFeedCnt(bufferIndex, start, end) {\n // we don't need to worry about start: abc\\r|\\n, or abc|\\r, or abc|\\n, or abc|\\r\\n doesn't change the fact that, there is one line break after start.\n // now let's take care of end: abc\\r|\\n, if end is in between \\r and \\n, we need to add line feed count by 1\n if (end.column === 0) {\n return end.line - start.line;\n }\n const lineStarts = this._buffers[bufferIndex].lineStarts;\n if (end.line === lineStarts.length - 1) { // it means, there is no \\n after end, otherwise, there will be one more lineStart.\n return end.line - start.line;\n }\n const nextLineStartOffset = lineStarts[end.line + 1];\n const endOffset = lineStarts[end.line] + end.column;\n if (nextLineStartOffset > endOffset + 1) { // there are more than 1 character after end, which means it can't be \\n\n return end.line - start.line;\n }\n // endOffset + 1 === nextLineStartOffset\n // character at endOffset is \\n, so we check the character before first\n // if character at endOffset is \\r, end.column is 0 and we can't get here.\n const previousCharOffset = endOffset - 1; // end.column > 0 so it's okay.\n const buffer = this._buffers[bufferIndex].buffer;\n if (buffer.charCodeAt(previousCharOffset) === 13) {\n return end.line - start.line + 1;\n }\n else {\n return end.line - start.line;\n }\n }\n offsetInBuffer(bufferIndex, cursor) {\n const lineStarts = this._buffers[bufferIndex].lineStarts;\n return lineStarts[cursor.line] + cursor.column;\n }\n deleteNodes(nodes) {\n for (let i = 0; i < nodes.length; i++) {\n (0,_rbTreeBase_js__WEBPACK_IMPORTED_MODULE_3__.rbDelete)(this, nodes[i]);\n }\n }\n createNewPieces(text) {\n if (text.length > AverageBufferSize) {\n // the content is large, operations like substring, charCode becomes slow\n // so here we split it into smaller chunks, just like what we did for CR/LF normalization\n const newPieces = [];\n while (text.length > AverageBufferSize) {\n const lastChar = text.charCodeAt(AverageBufferSize - 1);\n let splitText;\n if (lastChar === 13 /* CharCode.CarriageReturn */ || (lastChar >= 0xD800 && lastChar <= 0xDBFF)) {\n // last character is \\r or a high surrogate => keep it back\n splitText = text.substring(0, AverageBufferSize - 1);\n text = text.substring(AverageBufferSize - 1);\n }\n else {\n splitText = text.substring(0, AverageBufferSize);\n text = text.substring(AverageBufferSize);\n }\n const lineStarts = createLineStartsFast(splitText);\n newPieces.push(new Piece(this._buffers.length, /* buffer index */ { line: 0, column: 0 }, { line: lineStarts.length - 1, column: splitText.length - lineStarts[lineStarts.length - 1] }, lineStarts.length - 1, splitText.length));\n this._buffers.push(new StringBuffer(splitText, lineStarts));\n }\n const lineStarts = createLineStartsFast(text);\n newPieces.push(new Piece(this._buffers.length, /* buffer index */ { line: 0, column: 0 }, { line: lineStarts.length - 1, column: text.length - lineStarts[lineStarts.length - 1] }, lineStarts.length - 1, text.length));\n this._buffers.push(new StringBuffer(text, lineStarts));\n return newPieces;\n }\n let startOffset = this._buffers[0].buffer.length;\n const lineStarts = createLineStartsFast(text, false);\n let start = this._lastChangeBufferPos;\n if (this._buffers[0].lineStarts[this._buffers[0].lineStarts.length - 1] === startOffset\n && startOffset !== 0\n && this.startWithLF(text)\n && this.endWithCR(this._buffers[0].buffer) // todo, we can check this._lastChangeBufferPos's column as it's the last one\n ) {\n this._lastChangeBufferPos = { line: this._lastChangeBufferPos.line, column: this._lastChangeBufferPos.column + 1 };\n start = this._lastChangeBufferPos;\n for (let i = 0; i < lineStarts.length; i++) {\n lineStarts[i] += startOffset + 1;\n }\n this._buffers[0].lineStarts = this._buffers[0].lineStarts.concat(lineStarts.slice(1));\n this._buffers[0].buffer += '_' + text;\n startOffset += 1;\n }\n else {\n if (startOffset !== 0) {\n for (let i = 0; i < lineStarts.length; i++) {\n lineStarts[i] += startOffset;\n }\n }\n this._buffers[0].lineStarts = this._buffers[0].lineStarts.concat(lineStarts.slice(1));\n this._buffers[0].buffer += text;\n }\n const endOffset = this._buffers[0].buffer.length;\n const endIndex = this._buffers[0].lineStarts.length - 1;\n const endColumn = endOffset - this._buffers[0].lineStarts[endIndex];\n const endPos = { line: endIndex, column: endColumn };\n const newPiece = new Piece(0, /** todo@peng */ start, endPos, this.getLineFeedCnt(0, start, endPos), endOffset - startOffset);\n this._lastChangeBufferPos = endPos;\n return [newPiece];\n }\n getLineRawContent(lineNumber, endOffset = 0) {\n let x = this.root;\n let ret = '';\n const cache = this._searchCache.get2(lineNumber);\n if (cache) {\n x = cache.node;\n const prevAccumulatedValue = this.getAccumulatedValue(x, lineNumber - cache.nodeStartLineNumber - 1);\n const buffer = this._buffers[x.piece.bufferIndex].buffer;\n const startOffset = this.offsetInBuffer(x.piece.bufferIndex, x.piece.start);\n if (cache.nodeStartLineNumber + x.piece.lineFeedCnt === lineNumber) {\n ret = buffer.substring(startOffset + prevAccumulatedValue, startOffset + x.piece.length);\n }\n else {\n const accumulatedValue = this.getAccumulatedValue(x, lineNumber - cache.nodeStartLineNumber);\n return buffer.substring(startOffset + prevAccumulatedValue, startOffset + accumulatedValue - endOffset);\n }\n }\n else {\n let nodeStartOffset = 0;\n const originalLineNumber = lineNumber;\n while (x !== _rbTreeBase_js__WEBPACK_IMPORTED_MODULE_3__.SENTINEL) {\n if (x.left !== _rbTreeBase_js__WEBPACK_IMPORTED_MODULE_3__.SENTINEL && x.lf_left >= lineNumber - 1) {\n x = x.left;\n }\n else if (x.lf_left + x.piece.lineFeedCnt > lineNumber - 1) {\n const prevAccumulatedValue = this.getAccumulatedValue(x, lineNumber - x.lf_left - 2);\n const accumulatedValue = this.getAccumulatedValue(x, lineNumber - x.lf_left - 1);\n const buffer = this._buffers[x.piece.bufferIndex].buffer;\n const startOffset = this.offsetInBuffer(x.piece.bufferIndex, x.piece.start);\n nodeStartOffset += x.size_left;\n this._searchCache.set({\n node: x,\n nodeStartOffset,\n nodeStartLineNumber: originalLineNumber - (lineNumber - 1 - x.lf_left)\n });\n return buffer.substring(startOffset + prevAccumulatedValue, startOffset + accumulatedValue - endOffset);\n }\n else if (x.lf_left + x.piece.lineFeedCnt === lineNumber - 1) {\n const prevAccumulatedValue = this.getAccumulatedValue(x, lineNumber - x.lf_left - 2);\n const buffer = this._buffers[x.piece.bufferIndex].buffer;\n const startOffset = this.offsetInBuffer(x.piece.bufferIndex, x.piece.start);\n ret = buffer.substring(startOffset + prevAccumulatedValue, startOffset + x.piece.length);\n break;\n }\n else {\n lineNumber -= x.lf_left + x.piece.lineFeedCnt;\n nodeStartOffset += x.size_left + x.piece.length;\n x = x.right;\n }\n }\n }\n // search in order, to find the node contains end column\n x = x.next();\n while (x !== _rbTreeBase_js__WEBPACK_IMPORTED_MODULE_3__.SENTINEL) {\n const buffer = this._buffers[x.piece.bufferIndex].buffer;\n if (x.piece.lineFeedCnt > 0) {\n const accumulatedValue = this.getAccumulatedValue(x, 0);\n const startOffset = this.offsetInBuffer(x.piece.bufferIndex, x.piece.start);\n ret += buffer.substring(startOffset, startOffset + accumulatedValue - endOffset);\n return ret;\n }\n else {\n const startOffset = this.offsetInBuffer(x.piece.bufferIndex, x.piece.start);\n ret += buffer.substr(startOffset, x.piece.length);\n }\n x = x.next();\n }\n return ret;\n }\n computeBufferMetadata() {\n let x = this.root;\n let lfCnt = 1;\n let len = 0;\n while (x !== _rbTreeBase_js__WEBPACK_IMPORTED_MODULE_3__.SENTINEL) {\n lfCnt += x.lf_left + x.piece.lineFeedCnt;\n len += x.size_left + x.piece.length;\n x = x.right;\n }\n this._lineCnt = lfCnt;\n this._length = len;\n this._searchCache.validate(this._length);\n }\n // #region node operations\n getIndexOf(node, accumulatedValue) {\n const piece = node.piece;\n const pos = this.positionInBuffer(node, accumulatedValue);\n const lineCnt = pos.line - piece.start.line;\n if (this.offsetInBuffer(piece.bufferIndex, piece.end) - this.offsetInBuffer(piece.bufferIndex, piece.start) === accumulatedValue) {\n // we are checking the end of this node, so a CRLF check is necessary.\n const realLineCnt = this.getLineFeedCnt(node.piece.bufferIndex, piece.start, pos);\n if (realLineCnt !== lineCnt) {\n // aha yes, CRLF\n return { index: realLineCnt, remainder: 0 };\n }\n }\n return { index: lineCnt, remainder: pos.column };\n }\n getAccumulatedValue(node, index) {\n if (index < 0) {\n return 0;\n }\n const piece = node.piece;\n const lineStarts = this._buffers[piece.bufferIndex].lineStarts;\n const expectedLineStartIndex = piece.start.line + index + 1;\n if (expectedLineStartIndex > piece.end.line) {\n return lineStarts[piece.end.line] + piece.end.column - lineStarts[piece.start.line] - piece.start.column;\n }\n else {\n return lineStarts[expectedLineStartIndex] - lineStarts[piece.start.line] - piece.start.column;\n }\n }\n deleteNodeTail(node, pos) {\n const piece = node.piece;\n const originalLFCnt = piece.lineFeedCnt;\n const originalEndOffset = this.offsetInBuffer(piece.bufferIndex, piece.end);\n const newEnd = pos;\n const newEndOffset = this.offsetInBuffer(piece.bufferIndex, newEnd);\n const newLineFeedCnt = this.getLineFeedCnt(piece.bufferIndex, piece.start, newEnd);\n const lf_delta = newLineFeedCnt - originalLFCnt;\n const size_delta = newEndOffset - originalEndOffset;\n const newLength = piece.length + size_delta;\n node.piece = new Piece(piece.bufferIndex, piece.start, newEnd, newLineFeedCnt, newLength);\n (0,_rbTreeBase_js__WEBPACK_IMPORTED_MODULE_3__.updateTreeMetadata)(this, node, size_delta, lf_delta);\n }\n deleteNodeHead(node, pos) {\n const piece = node.piece;\n const originalLFCnt = piece.lineFeedCnt;\n const originalStartOffset = this.offsetInBuffer(piece.bufferIndex, piece.start);\n const newStart = pos;\n const newLineFeedCnt = this.getLineFeedCnt(piece.bufferIndex, newStart, piece.end);\n const newStartOffset = this.offsetInBuffer(piece.bufferIndex, newStart);\n const lf_delta = newLineFeedCnt - originalLFCnt;\n const size_delta = originalStartOffset - newStartOffset;\n const newLength = piece.length + size_delta;\n node.piece = new Piece(piece.bufferIndex, newStart, piece.end, newLineFeedCnt, newLength);\n (0,_rbTreeBase_js__WEBPACK_IMPORTED_MODULE_3__.updateTreeMetadata)(this, node, size_delta, lf_delta);\n }\n shrinkNode(node, start, end) {\n const piece = node.piece;\n const originalStartPos = piece.start;\n const originalEndPos = piece.end;\n // old piece, originalStartPos, start\n const oldLength = piece.length;\n const oldLFCnt = piece.lineFeedCnt;\n const newEnd = start;\n const newLineFeedCnt = this.getLineFeedCnt(piece.bufferIndex, piece.start, newEnd);\n const newLength = this.offsetInBuffer(piece.bufferIndex, start) - this.offsetInBuffer(piece.bufferIndex, originalStartPos);\n node.piece = new Piece(piece.bufferIndex, piece.start, newEnd, newLineFeedCnt, newLength);\n (0,_rbTreeBase_js__WEBPACK_IMPORTED_MODULE_3__.updateTreeMetadata)(this, node, newLength - oldLength, newLineFeedCnt - oldLFCnt);\n // new right piece, end, originalEndPos\n const newPiece = new Piece(piece.bufferIndex, end, originalEndPos, this.getLineFeedCnt(piece.bufferIndex, end, originalEndPos), this.offsetInBuffer(piece.bufferIndex, originalEndPos) - this.offsetInBuffer(piece.bufferIndex, end));\n const newNode = this.rbInsertRight(node, newPiece);\n this.validateCRLFWithPrevNode(newNode);\n }\n appendToNode(node, value) {\n if (this.adjustCarriageReturnFromNext(value, node)) {\n value += '\\n';\n }\n const hitCRLF = this.shouldCheckCRLF() && this.startWithLF(value) && this.endWithCR(node);\n const startOffset = this._buffers[0].buffer.length;\n this._buffers[0].buffer += value;\n const lineStarts = createLineStartsFast(value, false);\n for (let i = 0; i < lineStarts.length; i++) {\n lineStarts[i] += startOffset;\n }\n if (hitCRLF) {\n const prevStartOffset = this._buffers[0].lineStarts[this._buffers[0].lineStarts.length - 2];\n this._buffers[0].lineStarts.pop();\n // _lastChangeBufferPos is already wrong\n this._lastChangeBufferPos = { line: this._lastChangeBufferPos.line - 1, column: startOffset - prevStartOffset };\n }\n this._buffers[0].lineStarts = this._buffers[0].lineStarts.concat(lineStarts.slice(1));\n const endIndex = this._buffers[0].lineStarts.length - 1;\n const endColumn = this._buffers[0].buffer.length - this._buffers[0].lineStarts[endIndex];\n const newEnd = { line: endIndex, column: endColumn };\n const newLength = node.piece.length + value.length;\n const oldLineFeedCnt = node.piece.lineFeedCnt;\n const newLineFeedCnt = this.getLineFeedCnt(0, node.piece.start, newEnd);\n const lf_delta = newLineFeedCnt - oldLineFeedCnt;\n node.piece = new Piece(node.piece.bufferIndex, node.piece.start, newEnd, newLineFeedCnt, newLength);\n this._lastChangeBufferPos = newEnd;\n (0,_rbTreeBase_js__WEBPACK_IMPORTED_MODULE_3__.updateTreeMetadata)(this, node, value.length, lf_delta);\n }\n nodeAt(offset) {\n let x = this.root;\n const cache = this._searchCache.get(offset);\n if (cache) {\n return {\n node: cache.node,\n nodeStartOffset: cache.nodeStartOffset,\n remainder: offset - cache.nodeStartOffset\n };\n }\n let nodeStartOffset = 0;\n while (x !== _rbTreeBase_js__WEBPACK_IMPORTED_MODULE_3__.SENTINEL) {\n if (x.size_left > offset) {\n x = x.left;\n }\n else if (x.size_left + x.piece.length >= offset) {\n nodeStartOffset += x.size_left;\n const ret = {\n node: x,\n remainder: offset - x.size_left,\n nodeStartOffset\n };\n this._searchCache.set(ret);\n return ret;\n }\n else {\n offset -= x.size_left + x.piece.length;\n nodeStartOffset += x.size_left + x.piece.length;\n x = x.right;\n }\n }\n return null;\n }\n nodeAt2(lineNumber, column) {\n let x = this.root;\n let nodeStartOffset = 0;\n while (x !== _rbTreeBase_js__WEBPACK_IMPORTED_MODULE_3__.SENTINEL) {\n if (x.left !== _rbTreeBase_js__WEBPACK_IMPORTED_MODULE_3__.SENTINEL && x.lf_left >= lineNumber - 1) {\n x = x.left;\n }\n else if (x.lf_left + x.piece.lineFeedCnt > lineNumber - 1) {\n const prevAccumualtedValue = this.getAccumulatedValue(x, lineNumber - x.lf_left - 2);\n const accumulatedValue = this.getAccumulatedValue(x, lineNumber - x.lf_left - 1);\n nodeStartOffset += x.size_left;\n return {\n node: x,\n remainder: Math.min(prevAccumualtedValue + column - 1, accumulatedValue),\n nodeStartOffset\n };\n }\n else if (x.lf_left + x.piece.lineFeedCnt === lineNumber - 1) {\n const prevAccumualtedValue = this.getAccumulatedValue(x, lineNumber - x.lf_left - 2);\n if (prevAccumualtedValue + column - 1 <= x.piece.length) {\n return {\n node: x,\n remainder: prevAccumualtedValue + column - 1,\n nodeStartOffset\n };\n }\n else {\n column -= x.piece.length - prevAccumualtedValue;\n break;\n }\n }\n else {\n lineNumber -= x.lf_left + x.piece.lineFeedCnt;\n nodeStartOffset += x.size_left + x.piece.length;\n x = x.right;\n }\n }\n // search in order, to find the node contains position.column\n x = x.next();\n while (x !== _rbTreeBase_js__WEBPACK_IMPORTED_MODULE_3__.SENTINEL) {\n if (x.piece.lineFeedCnt > 0) {\n const accumulatedValue = this.getAccumulatedValue(x, 0);\n const nodeStartOffset = this.offsetOfNode(x);\n return {\n node: x,\n remainder: Math.min(column - 1, accumulatedValue),\n nodeStartOffset\n };\n }\n else {\n if (x.piece.length >= column - 1) {\n const nodeStartOffset = this.offsetOfNode(x);\n return {\n node: x,\n remainder: column - 1,\n nodeStartOffset\n };\n }\n else {\n column -= x.piece.length;\n }\n }\n x = x.next();\n }\n return null;\n }\n nodeCharCodeAt(node, offset) {\n if (node.piece.lineFeedCnt < 1) {\n return -1;\n }\n const buffer = this._buffers[node.piece.bufferIndex];\n const newOffset = this.offsetInBuffer(node.piece.bufferIndex, node.piece.start) + offset;\n return buffer.buffer.charCodeAt(newOffset);\n }\n offsetOfNode(node) {\n if (!node) {\n return 0;\n }\n let pos = node.size_left;\n while (node !== this.root) {\n if (node.parent.right === node) {\n pos += node.parent.size_left + node.parent.piece.length;\n }\n node = node.parent;\n }\n return pos;\n }\n // #endregion\n // #region CRLF\n shouldCheckCRLF() {\n return !(this._EOLNormalized && this._EOL === '\\n');\n }\n startWithLF(val) {\n if (typeof val === 'string') {\n return val.charCodeAt(0) === 10;\n }\n if (val === _rbTreeBase_js__WEBPACK_IMPORTED_MODULE_3__.SENTINEL || val.piece.lineFeedCnt === 0) {\n return false;\n }\n const piece = val.piece;\n const lineStarts = this._buffers[piece.bufferIndex].lineStarts;\n const line = piece.start.line;\n const startOffset = lineStarts[line] + piece.start.column;\n if (line === lineStarts.length - 1) {\n // last line, so there is no line feed at the end of this line\n return false;\n }\n const nextLineOffset = lineStarts[line + 1];\n if (nextLineOffset > startOffset + 1) {\n return false;\n }\n return this._buffers[piece.bufferIndex].buffer.charCodeAt(startOffset) === 10;\n }\n endWithCR(val) {\n if (typeof val === 'string') {\n return val.charCodeAt(val.length - 1) === 13;\n }\n if (val === _rbTreeBase_js__WEBPACK_IMPORTED_MODULE_3__.SENTINEL || val.piece.lineFeedCnt === 0) {\n return false;\n }\n return this.nodeCharCodeAt(val, val.piece.length - 1) === 13;\n }\n validateCRLFWithPrevNode(nextNode) {\n if (this.shouldCheckCRLF() && this.startWithLF(nextNode)) {\n const node = nextNode.prev();\n if (this.endWithCR(node)) {\n this.fixCRLF(node, nextNode);\n }\n }\n }\n validateCRLFWithNextNode(node) {\n if (this.shouldCheckCRLF() && this.endWithCR(node)) {\n const nextNode = node.next();\n if (this.startWithLF(nextNode)) {\n this.fixCRLF(node, nextNode);\n }\n }\n }\n fixCRLF(prev, next) {\n const nodesToDel = [];\n // update node\n const lineStarts = this._buffers[prev.piece.bufferIndex].lineStarts;\n let newEnd;\n if (prev.piece.end.column === 0) {\n // it means, last line ends with \\r, not \\r\\n\n newEnd = { line: prev.piece.end.line - 1, column: lineStarts[prev.piece.end.line] - lineStarts[prev.piece.end.line - 1] - 1 };\n }\n else {\n // \\r\\n\n newEnd = { line: prev.piece.end.line, column: prev.piece.end.column - 1 };\n }\n const prevNewLength = prev.piece.length - 1;\n const prevNewLFCnt = prev.piece.lineFeedCnt - 1;\n prev.piece = new Piece(prev.piece.bufferIndex, prev.piece.start, newEnd, prevNewLFCnt, prevNewLength);\n (0,_rbTreeBase_js__WEBPACK_IMPORTED_MODULE_3__.updateTreeMetadata)(this, prev, -1, -1);\n if (prev.piece.length === 0) {\n nodesToDel.push(prev);\n }\n // update nextNode\n const newStart = { line: next.piece.start.line + 1, column: 0 };\n const newLength = next.piece.length - 1;\n const newLineFeedCnt = this.getLineFeedCnt(next.piece.bufferIndex, newStart, next.piece.end);\n next.piece = new Piece(next.piece.bufferIndex, newStart, next.piece.end, newLineFeedCnt, newLength);\n (0,_rbTreeBase_js__WEBPACK_IMPORTED_MODULE_3__.updateTreeMetadata)(this, next, -1, -1);\n if (next.piece.length === 0) {\n nodesToDel.push(next);\n }\n // create new piece which contains \\r\\n\n const pieces = this.createNewPieces('\\r\\n');\n this.rbInsertRight(prev, pieces[0]);\n // delete empty nodes\n for (let i = 0; i < nodesToDel.length; i++) {\n (0,_rbTreeBase_js__WEBPACK_IMPORTED_MODULE_3__.rbDelete)(this, nodesToDel[i]);\n }\n }\n adjustCarriageReturnFromNext(value, node) {\n if (this.shouldCheckCRLF() && this.endWithCR(value)) {\n const nextNode = node.next();\n if (this.startWithLF(nextNode)) {\n // move `\\n` forward\n value += '\\n';\n if (nextNode.piece.length === 1) {\n (0,_rbTreeBase_js__WEBPACK_IMPORTED_MODULE_3__.rbDelete)(this, nextNode);\n }\n else {\n const piece = nextNode.piece;\n const newStart = { line: piece.start.line + 1, column: 0 };\n const newLength = piece.length - 1;\n const newLineFeedCnt = this.getLineFeedCnt(piece.bufferIndex, newStart, piece.end);\n nextNode.piece = new Piece(piece.bufferIndex, newStart, piece.end, newLineFeedCnt, newLength);\n (0,_rbTreeBase_js__WEBPACK_IMPORTED_MODULE_3__.updateTreeMetadata)(this, nextNode, -1, -1);\n }\n return true;\n }\n }\n return false;\n }\n // #endregion\n // #endregion\n // #region Tree operations\n iterate(node, callback) {\n if (node === _rbTreeBase_js__WEBPACK_IMPORTED_MODULE_3__.SENTINEL) {\n return callback(_rbTreeBase_js__WEBPACK_IMPORTED_MODULE_3__.SENTINEL);\n }\n const leftRet = this.iterate(node.left, callback);\n if (!leftRet) {\n return leftRet;\n }\n return callback(node) && this.iterate(node.right, callback);\n }\n getNodeContent(node) {\n if (node === _rbTreeBase_js__WEBPACK_IMPORTED_MODULE_3__.SENTINEL) {\n return '';\n }\n const buffer = this._buffers[node.piece.bufferIndex];\n const piece = node.piece;\n const startOffset = this.offsetInBuffer(piece.bufferIndex, piece.start);\n const endOffset = this.offsetInBuffer(piece.bufferIndex, piece.end);\n const currentContent = buffer.buffer.substring(startOffset, endOffset);\n return currentContent;\n }\n getPieceContent(piece) {\n const buffer = this._buffers[piece.bufferIndex];\n const startOffset = this.offsetInBuffer(piece.bufferIndex, piece.start);\n const endOffset = this.offsetInBuffer(piece.bufferIndex, piece.end);\n const currentContent = buffer.buffer.substring(startOffset, endOffset);\n return currentContent;\n }\n /**\n * node node\n * / \\ / \\\n * a b <---- a b\n * /\n * z\n */\n rbInsertRight(node, p) {\n const z = new _rbTreeBase_js__WEBPACK_IMPORTED_MODULE_3__.TreeNode(p, 1 /* NodeColor.Red */);\n z.left = _rbTreeBase_js__WEBPACK_IMPORTED_MODULE_3__.SENTINEL;\n z.right = _rbTreeBase_js__WEBPACK_IMPORTED_MODULE_3__.SENTINEL;\n z.parent = _rbTreeBase_js__WEBPACK_IMPORTED_MODULE_3__.SENTINEL;\n z.size_left = 0;\n z.lf_left = 0;\n const x = this.root;\n if (x === _rbTreeBase_js__WEBPACK_IMPORTED_MODULE_3__.SENTINEL) {\n this.root = z;\n z.color = 0 /* NodeColor.Black */;\n }\n else if (node.right === _rbTreeBase_js__WEBPACK_IMPORTED_MODULE_3__.SENTINEL) {\n node.right = z;\n z.parent = node;\n }\n else {\n const nextNode = (0,_rbTreeBase_js__WEBPACK_IMPORTED_MODULE_3__.leftest)(node.right);\n nextNode.left = z;\n z.parent = nextNode;\n }\n (0,_rbTreeBase_js__WEBPACK_IMPORTED_MODULE_3__.fixInsert)(this, z);\n return z;\n }\n /**\n * node node\n * / \\ / \\\n * a b ----> a b\n * \\\n * z\n */\n rbInsertLeft(node, p) {\n const z = new _rbTreeBase_js__WEBPACK_IMPORTED_MODULE_3__.TreeNode(p, 1 /* NodeColor.Red */);\n z.left = _rbTreeBase_js__WEBPACK_IMPORTED_MODULE_3__.SENTINEL;\n z.right = _rbTreeBase_js__WEBPACK_IMPORTED_MODULE_3__.SENTINEL;\n z.parent = _rbTreeBase_js__WEBPACK_IMPORTED_MODULE_3__.SENTINEL;\n z.size_left = 0;\n z.lf_left = 0;\n if (this.root === _rbTreeBase_js__WEBPACK_IMPORTED_MODULE_3__.SENTINEL) {\n this.root = z;\n z.color = 0 /* NodeColor.Black */;\n }\n else if (node.left === _rbTreeBase_js__WEBPACK_IMPORTED_MODULE_3__.SENTINEL) {\n node.left = z;\n z.parent = node;\n }\n else {\n const prevNode = (0,_rbTreeBase_js__WEBPACK_IMPORTED_MODULE_3__.righttest)(node.left); // a\n prevNode.right = z;\n z.parent = prevNode;\n }\n (0,_rbTreeBase_js__WEBPACK_IMPORTED_MODULE_3__.fixInsert)(this, z);\n return z;\n }\n}\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/common/model/pieceTreeTextBuffer/pieceTreeBase.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/common/model/pieceTreeTextBuffer/pieceTreeTextBuffer.js":
/*!**********************************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/common/model/pieceTreeTextBuffer/pieceTreeTextBuffer.js ***!
\**********************************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ PieceTreeTextBuffer: () => (/* binding */ PieceTreeTextBuffer)\n/* harmony export */ });\n/* harmony import */ var _base_common_event_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../../base/common/event.js */ \"./node_modules/monaco-editor/esm/vs/base/common/event.js\");\n/* harmony import */ var _base_common_strings_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../base/common/strings.js */ \"./node_modules/monaco-editor/esm/vs/base/common/strings.js\");\n/* harmony import */ var _core_range_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../core/range.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/core/range.js\");\n/* harmony import */ var _model_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../model.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/model.js\");\n/* harmony import */ var _pieceTreeBase_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./pieceTreeBase.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/model/pieceTreeTextBuffer/pieceTreeBase.js\");\n/* harmony import */ var _core_eolCounter_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../../core/eolCounter.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/core/eolCounter.js\");\n/* harmony import */ var _core_textChange_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../../core/textChange.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/core/textChange.js\");\n/* harmony import */ var _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ../../../../base/common/lifecycle.js */ \"./node_modules/monaco-editor/esm/vs/base/common/lifecycle.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n\n\n\n\n\n\n\nclass PieceTreeTextBuffer extends _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_7__.Disposable {\n constructor(chunks, BOM, eol, containsRTL, containsUnusualLineTerminators, isBasicASCII, eolNormalized) {\n super();\n this._onDidChangeContent = this._register(new _base_common_event_js__WEBPACK_IMPORTED_MODULE_0__.Emitter());\n this._BOM = BOM;\n this._mightContainNonBasicASCII = !isBasicASCII;\n this._mightContainRTL = containsRTL;\n this._mightContainUnusualLineTerminators = containsUnusualLineTerminators;\n this._pieceTree = new _pieceTreeBase_js__WEBPACK_IMPORTED_MODULE_4__.PieceTreeBase(chunks, eol, eolNormalized);\n }\n mightContainRTL() {\n return this._mightContainRTL;\n }\n mightContainUnusualLineTerminators() {\n return this._mightContainUnusualLineTerminators;\n }\n resetMightContainUnusualLineTerminators() {\n this._mightContainUnusualLineTerminators = false;\n }\n mightContainNonBasicASCII() {\n return this._mightContainNonBasicASCII;\n }\n getBOM() {\n return this._BOM;\n }\n getEOL() {\n return this._pieceTree.getEOL();\n }\n createSnapshot(preserveBOM) {\n return this._pieceTree.createSnapshot(preserveBOM ? this._BOM : '');\n }\n getOffsetAt(lineNumber, column) {\n return this._pieceTree.getOffsetAt(lineNumber, column);\n }\n getPositionAt(offset) {\n return this._pieceTree.getPositionAt(offset);\n }\n getRangeAt(start, length) {\n const end = start + length;\n const startPosition = this.getPositionAt(start);\n const endPosition = this.getPositionAt(end);\n return new _core_range_js__WEBPACK_IMPORTED_MODULE_2__.Range(startPosition.lineNumber, startPosition.column, endPosition.lineNumber, endPosition.column);\n }\n getValueInRange(range, eol = 0 /* EndOfLinePreference.TextDefined */) {\n if (range.isEmpty()) {\n return '';\n }\n const lineEnding = this._getEndOfLine(eol);\n return this._pieceTree.getValueInRange(range, lineEnding);\n }\n getValueLengthInRange(range, eol = 0 /* EndOfLinePreference.TextDefined */) {\n if (range.isEmpty()) {\n return 0;\n }\n if (range.startLineNumber === range.endLineNumber) {\n return (range.endColumn - range.startColumn);\n }\n const startOffset = this.getOffsetAt(range.startLineNumber, range.startColumn);\n const endOffset = this.getOffsetAt(range.endLineNumber, range.endColumn);\n // offsets use the text EOL, so we need to compensate for length differences\n // if the requested EOL doesn't match the text EOL\n let eolOffsetCompensation = 0;\n const desiredEOL = this._getEndOfLine(eol);\n const actualEOL = this.getEOL();\n if (desiredEOL.length !== actualEOL.length) {\n const delta = desiredEOL.length - actualEOL.length;\n const eolCount = range.endLineNumber - range.startLineNumber;\n eolOffsetCompensation = delta * eolCount;\n }\n return endOffset - startOffset + eolOffsetCompensation;\n }\n getCharacterCountInRange(range, eol = 0 /* EndOfLinePreference.TextDefined */) {\n if (this._mightContainNonBasicASCII) {\n // we must count by iterating\n let result = 0;\n const fromLineNumber = range.startLineNumber;\n const toLineNumber = range.endLineNumber;\n for (let lineNumber = fromLineNumber; lineNumber <= toLineNumber; lineNumber++) {\n const lineContent = this.getLineContent(lineNumber);\n const fromOffset = (lineNumber === fromLineNumber ? range.startColumn - 1 : 0);\n const toOffset = (lineNumber === toLineNumber ? range.endColumn - 1 : lineContent.length);\n for (let offset = fromOffset; offset < toOffset; offset++) {\n if (_base_common_strings_js__WEBPACK_IMPORTED_MODULE_1__.isHighSurrogate(lineContent.charCodeAt(offset))) {\n result = result + 1;\n offset = offset + 1;\n }\n else {\n result = result + 1;\n }\n }\n }\n result += this._getEndOfLine(eol).length * (toLineNumber - fromLineNumber);\n return result;\n }\n return this.getValueLengthInRange(range, eol);\n }\n getLength() {\n return this._pieceTree.getLength();\n }\n getLineCount() {\n return this._pieceTree.getLineCount();\n }\n getLinesContent() {\n return this._pieceTree.getLinesContent();\n }\n getLineContent(lineNumber) {\n return this._pieceTree.getLineContent(lineNumber);\n }\n getLineCharCode(lineNumber, index) {\n return this._pieceTree.getLineCharCode(lineNumber, index);\n }\n getLineLength(lineNumber) {\n return this._pieceTree.getLineLength(lineNumber);\n }\n getLineFirstNonWhitespaceColumn(lineNumber) {\n const result = _base_common_strings_js__WEBPACK_IMPORTED_MODULE_1__.firstNonWhitespaceIndex(this.getLineContent(lineNumber));\n if (result === -1) {\n return 0;\n }\n return result + 1;\n }\n getLineLastNonWhitespaceColumn(lineNumber) {\n const result = _base_common_strings_js__WEBPACK_IMPORTED_MODULE_1__.lastNonWhitespaceIndex(this.getLineContent(lineNumber));\n if (result === -1) {\n return 0;\n }\n return result + 2;\n }\n _getEndOfLine(eol) {\n switch (eol) {\n case 1 /* EndOfLinePreference.LF */:\n return '\\n';\n case 2 /* EndOfLinePreference.CRLF */:\n return '\\r\\n';\n case 0 /* EndOfLinePreference.TextDefined */:\n return this.getEOL();\n default:\n throw new Error('Unknown EOL preference');\n }\n }\n setEOL(newEOL) {\n this._pieceTree.setEOL(newEOL);\n }\n applyEdits(rawOperations, recordTrimAutoWhitespace, computeUndoEdits) {\n let mightContainRTL = this._mightContainRTL;\n let mightContainUnusualLineTerminators = this._mightContainUnusualLineTerminators;\n let mightContainNonBasicASCII = this._mightContainNonBasicASCII;\n let canReduceOperations = true;\n let operations = [];\n for (let i = 0; i < rawOperations.length; i++) {\n const op = rawOperations[i];\n if (canReduceOperations && op._isTracked) {\n canReduceOperations = false;\n }\n const validatedRange = op.range;\n if (op.text) {\n let textMightContainNonBasicASCII = true;\n if (!mightContainNonBasicASCII) {\n textMightContainNonBasicASCII = !_base_common_strings_js__WEBPACK_IMPORTED_MODULE_1__.isBasicASCII(op.text);\n mightContainNonBasicASCII = textMightContainNonBasicASCII;\n }\n if (!mightContainRTL && textMightContainNonBasicASCII) {\n // check if the new inserted text contains RTL\n mightContainRTL = _base_common_strings_js__WEBPACK_IMPORTED_MODULE_1__.containsRTL(op.text);\n }\n if (!mightContainUnusualLineTerminators && textMightContainNonBasicASCII) {\n // check if the new inserted text contains unusual line terminators\n mightContainUnusualLineTerminators = _base_common_strings_js__WEBPACK_IMPORTED_MODULE_1__.containsUnusualLineTerminators(op.text);\n }\n }\n let validText = '';\n let eolCount = 0;\n let firstLineLength = 0;\n let lastLineLength = 0;\n if (op.text) {\n let strEOL;\n [eolCount, firstLineLength, lastLineLength, strEOL] = (0,_core_eolCounter_js__WEBPACK_IMPORTED_MODULE_5__.countEOL)(op.text);\n const bufferEOL = this.getEOL();\n const expectedStrEOL = (bufferEOL === '\\r\\n' ? 2 /* StringEOL.CRLF */ : 1 /* StringEOL.LF */);\n if (strEOL === 0 /* StringEOL.Unknown */ || strEOL === expectedStrEOL) {\n validText = op.text;\n }\n else {\n validText = op.text.replace(/\\r\\n|\\r|\\n/g, bufferEOL);\n }\n }\n operations[i] = {\n sortIndex: i,\n identifier: op.identifier || null,\n range: validatedRange,\n rangeOffset: this.getOffsetAt(validatedRange.startLineNumber, validatedRange.startColumn),\n rangeLength: this.getValueLengthInRange(validatedRange),\n text: validText,\n eolCount: eolCount,\n firstLineLength: firstLineLength,\n lastLineLength: lastLineLength,\n forceMoveMarkers: Boolean(op.forceMoveMarkers),\n isAutoWhitespaceEdit: op.isAutoWhitespaceEdit || false\n };\n }\n // Sort operations ascending\n operations.sort(PieceTreeTextBuffer._sortOpsAscending);\n let hasTouchingRanges = false;\n for (let i = 0, count = operations.length - 1; i < count; i++) {\n const rangeEnd = operations[i].range.getEndPosition();\n const nextRangeStart = operations[i + 1].range.getStartPosition();\n if (nextRangeStart.isBeforeOrEqual(rangeEnd)) {\n if (nextRangeStart.isBefore(rangeEnd)) {\n // overlapping ranges\n throw new Error('Overlapping ranges are not allowed!');\n }\n hasTouchingRanges = true;\n }\n }\n if (canReduceOperations) {\n operations = this._reduceOperations(operations);\n }\n // Delta encode operations\n const reverseRanges = (computeUndoEdits || recordTrimAutoWhitespace ? PieceTreeTextBuffer._getInverseEditRanges(operations) : []);\n const newTrimAutoWhitespaceCandidates = [];\n if (recordTrimAutoWhitespace) {\n for (let i = 0; i < operations.length; i++) {\n const op = operations[i];\n const reverseRange = reverseRanges[i];\n if (op.isAutoWhitespaceEdit && op.range.isEmpty()) {\n // Record already the future line numbers that might be auto whitespace removal candidates on next edit\n for (let lineNumber = reverseRange.startLineNumber; lineNumber <= reverseRange.endLineNumber; lineNumber++) {\n let currentLineContent = '';\n if (lineNumber === reverseRange.startLineNumber) {\n currentLineContent = this.getLineContent(op.range.startLineNumber);\n if (_base_common_strings_js__WEBPACK_IMPORTED_MODULE_1__.firstNonWhitespaceIndex(currentLineContent) !== -1) {\n continue;\n }\n }\n newTrimAutoWhitespaceCandidates.push({ lineNumber: lineNumber, oldContent: currentLineContent });\n }\n }\n }\n }\n let reverseOperations = null;\n if (computeUndoEdits) {\n let reverseRangeDeltaOffset = 0;\n reverseOperations = [];\n for (let i = 0; i < operations.length; i++) {\n const op = operations[i];\n const reverseRange = reverseRanges[i];\n const bufferText = this.getValueInRange(op.range);\n const reverseRangeOffset = op.rangeOffset + reverseRangeDeltaOffset;\n reverseRangeDeltaOffset += (op.text.length - bufferText.length);\n reverseOperations[i] = {\n sortIndex: op.sortIndex,\n identifier: op.identifier,\n range: reverseRange,\n text: bufferText,\n textChange: new _core_textChange_js__WEBPACK_IMPORTED_MODULE_6__.TextChange(op.rangeOffset, bufferText, reverseRangeOffset, op.text)\n };\n }\n // Can only sort reverse operations when the order is not significant\n if (!hasTouchingRanges) {\n reverseOperations.sort((a, b) => a.sortIndex - b.sortIndex);\n }\n }\n this._mightContainRTL = mightContainRTL;\n this._mightContainUnusualLineTerminators = mightContainUnusualLineTerminators;\n this._mightContainNonBasicASCII = mightContainNonBasicASCII;\n const contentChanges = this._doApplyEdits(operations);\n let trimAutoWhitespaceLineNumbers = null;\n if (recordTrimAutoWhitespace && newTrimAutoWhitespaceCandidates.length > 0) {\n // sort line numbers auto whitespace removal candidates for next edit descending\n newTrimAutoWhitespaceCandidates.sort((a, b) => b.lineNumber - a.lineNumber);\n trimAutoWhitespaceLineNumbers = [];\n for (let i = 0, len = newTrimAutoWhitespaceCandidates.length; i < len; i++) {\n const lineNumber = newTrimAutoWhitespaceCandidates[i].lineNumber;\n if (i > 0 && newTrimAutoWhitespaceCandidates[i - 1].lineNumber === lineNumber) {\n // Do not have the same line number twice\n continue;\n }\n const prevContent = newTrimAutoWhitespaceCandidates[i].oldContent;\n const lineContent = this.getLineContent(lineNumber);\n if (lineContent.length === 0 || lineContent === prevContent || _base_common_strings_js__WEBPACK_IMPORTED_MODULE_1__.firstNonWhitespaceIndex(lineContent) !== -1) {\n continue;\n }\n trimAutoWhitespaceLineNumbers.push(lineNumber);\n }\n }\n this._onDidChangeContent.fire();\n return new _model_js__WEBPACK_IMPORTED_MODULE_3__.ApplyEditsResult(reverseOperations, contentChanges, trimAutoWhitespaceLineNumbers);\n }\n /**\n * Transform operations such that they represent the same logic edit,\n * but that they also do not cause OOM crashes.\n */\n _reduceOperations(operations) {\n if (operations.length < 1000) {\n // We know from empirical testing that a thousand edits work fine regardless of their shape.\n return operations;\n }\n // At one point, due to how events are emitted and how each operation is handled,\n // some operations can trigger a high amount of temporary string allocations,\n // that will immediately get edited again.\n // e.g. a formatter inserting ridiculous ammounts of \\n on a model with a single line\n // Therefore, the strategy is to collapse all the operations into a huge single edit operation\n return [this._toSingleEditOperation(operations)];\n }\n _toSingleEditOperation(operations) {\n let forceMoveMarkers = false;\n const firstEditRange = operations[0].range;\n const lastEditRange = operations[operations.length - 1].range;\n const entireEditRange = new _core_range_js__WEBPACK_IMPORTED_MODULE_2__.Range(firstEditRange.startLineNumber, firstEditRange.startColumn, lastEditRange.endLineNumber, lastEditRange.endColumn);\n let lastEndLineNumber = firstEditRange.startLineNumber;\n let lastEndColumn = firstEditRange.startColumn;\n const result = [];\n for (let i = 0, len = operations.length; i < len; i++) {\n const operation = operations[i];\n const range = operation.range;\n forceMoveMarkers = forceMoveMarkers || operation.forceMoveMarkers;\n // (1) -- Push old text\n result.push(this.getValueInRange(new _core_range_js__WEBPACK_IMPORTED_MODULE_2__.Range(lastEndLineNumber, lastEndColumn, range.startLineNumber, range.startColumn)));\n // (2) -- Push new text\n if (operation.text.length > 0) {\n result.push(operation.text);\n }\n lastEndLineNumber = range.endLineNumber;\n lastEndColumn = range.endColumn;\n }\n const text = result.join('');\n const [eolCount, firstLineLength, lastLineLength] = (0,_core_eolCounter_js__WEBPACK_IMPORTED_MODULE_5__.countEOL)(text);\n return {\n sortIndex: 0,\n identifier: operations[0].identifier,\n range: entireEditRange,\n rangeOffset: this.getOffsetAt(entireEditRange.startLineNumber, entireEditRange.startColumn),\n rangeLength: this.getValueLengthInRange(entireEditRange, 0 /* EndOfLinePreference.TextDefined */),\n text: text,\n eolCount: eolCount,\n firstLineLength: firstLineLength,\n lastLineLength: lastLineLength,\n forceMoveMarkers: forceMoveMarkers,\n isAutoWhitespaceEdit: false\n };\n }\n _doApplyEdits(operations) {\n operations.sort(PieceTreeTextBuffer._sortOpsDescending);\n const contentChanges = [];\n // operations are from bottom to top\n for (let i = 0; i < operations.length; i++) {\n const op = operations[i];\n const startLineNumber = op.range.startLineNumber;\n const startColumn = op.range.startColumn;\n const endLineNumber = op.range.endLineNumber;\n const endColumn = op.range.endColumn;\n if (startLineNumber === endLineNumber && startColumn === endColumn && op.text.length === 0) {\n // no-op\n continue;\n }\n if (op.text) {\n // replacement\n this._pieceTree.delete(op.rangeOffset, op.rangeLength);\n this._pieceTree.insert(op.rangeOffset, op.text, true);\n }\n else {\n // deletion\n this._pieceTree.delete(op.rangeOffset, op.rangeLength);\n }\n const contentChangeRange = new _core_range_js__WEBPACK_IMPORTED_MODULE_2__.Range(startLineNumber, startColumn, endLineNumber, endColumn);\n contentChanges.push({\n range: contentChangeRange,\n rangeLength: op.rangeLength,\n text: op.text,\n rangeOffset: op.rangeOffset,\n forceMoveMarkers: op.forceMoveMarkers\n });\n }\n return contentChanges;\n }\n findMatchesLineByLine(searchRange, searchData, captureMatches, limitResultCount) {\n return this._pieceTree.findMatchesLineByLine(searchRange, searchData, captureMatches, limitResultCount);\n }\n /**\n * Assumes `operations` are validated and sorted ascending\n */\n static _getInverseEditRanges(operations) {\n const result = [];\n let prevOpEndLineNumber = 0;\n let prevOpEndColumn = 0;\n let prevOp = null;\n for (let i = 0, len = operations.length; i < len; i++) {\n const op = operations[i];\n let startLineNumber;\n let startColumn;\n if (prevOp) {\n if (prevOp.range.endLineNumber === op.range.startLineNumber) {\n startLineNumber = prevOpEndLineNumber;\n startColumn = prevOpEndColumn + (op.range.startColumn - prevOp.range.endColumn);\n }\n else {\n startLineNumber = prevOpEndLineNumber + (op.range.startLineNumber - prevOp.range.endLineNumber);\n startColumn = op.range.startColumn;\n }\n }\n else {\n startLineNumber = op.range.startLineNumber;\n startColumn = op.range.startColumn;\n }\n let resultRange;\n if (op.text.length > 0) {\n // the operation inserts something\n const lineCount = op.eolCount + 1;\n if (lineCount === 1) {\n // single line insert\n resultRange = new _core_range_js__WEBPACK_IMPORTED_MODULE_2__.Range(startLineNumber, startColumn, startLineNumber, startColumn + op.firstLineLength);\n }\n else {\n // multi line insert\n resultRange = new _core_range_js__WEBPACK_IMPORTED_MODULE_2__.Range(startLineNumber, startColumn, startLineNumber + lineCount - 1, op.lastLineLength + 1);\n }\n }\n else {\n // There is nothing to insert\n resultRange = new _core_range_js__WEBPACK_IMPORTED_MODULE_2__.Range(startLineNumber, startColumn, startLineNumber, startColumn);\n }\n prevOpEndLineNumber = resultRange.endLineNumber;\n prevOpEndColumn = resultRange.endColumn;\n result.push(resultRange);\n prevOp = op;\n }\n return result;\n }\n static _sortOpsAscending(a, b) {\n const r = _core_range_js__WEBPACK_IMPORTED_MODULE_2__.Range.compareRangesUsingEnds(a.range, b.range);\n if (r === 0) {\n return a.sortIndex - b.sortIndex;\n }\n return r;\n }\n static _sortOpsDescending(a, b) {\n const r = _core_range_js__WEBPACK_IMPORTED_MODULE_2__.Range.compareRangesUsingEnds(a.range, b.range);\n if (r === 0) {\n return b.sortIndex - a.sortIndex;\n }\n return -r;\n }\n}\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/common/model/pieceTreeTextBuffer/pieceTreeTextBuffer.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/common/model/pieceTreeTextBuffer/pieceTreeTextBufferBuilder.js":
/*!*****************************************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/common/model/pieceTreeTextBuffer/pieceTreeTextBufferBuilder.js ***!
\*****************************************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ PieceTreeTextBufferBuilder: () => (/* binding */ PieceTreeTextBufferBuilder)\n/* harmony export */ });\n/* harmony import */ var _base_common_strings_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../../base/common/strings.js */ \"./node_modules/monaco-editor/esm/vs/base/common/strings.js\");\n/* harmony import */ var _pieceTreeBase_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./pieceTreeBase.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/model/pieceTreeTextBuffer/pieceTreeBase.js\");\n/* harmony import */ var _pieceTreeTextBuffer_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./pieceTreeTextBuffer.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/model/pieceTreeTextBuffer/pieceTreeTextBuffer.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n\n\nclass PieceTreeTextBufferFactory {\n constructor(_chunks, _bom, _cr, _lf, _crlf, _containsRTL, _containsUnusualLineTerminators, _isBasicASCII, _normalizeEOL) {\n this._chunks = _chunks;\n this._bom = _bom;\n this._cr = _cr;\n this._lf = _lf;\n this._crlf = _crlf;\n this._containsRTL = _containsRTL;\n this._containsUnusualLineTerminators = _containsUnusualLineTerminators;\n this._isBasicASCII = _isBasicASCII;\n this._normalizeEOL = _normalizeEOL;\n }\n _getEOL(defaultEOL) {\n const totalEOLCount = this._cr + this._lf + this._crlf;\n const totalCRCount = this._cr + this._crlf;\n if (totalEOLCount === 0) {\n // This is an empty file or a file with precisely one line\n return (defaultEOL === 1 /* DefaultEndOfLine.LF */ ? '\\n' : '\\r\\n');\n }\n if (totalCRCount > totalEOLCount / 2) {\n // More than half of the file contains \\r\\n ending lines\n return '\\r\\n';\n }\n // At least one line more ends in \\n\n return '\\n';\n }\n create(defaultEOL) {\n const eol = this._getEOL(defaultEOL);\n const chunks = this._chunks;\n if (this._normalizeEOL &&\n ((eol === '\\r\\n' && (this._cr > 0 || this._lf > 0))\n || (eol === '\\n' && (this._cr > 0 || this._crlf > 0)))) {\n // Normalize pieces\n for (let i = 0, len = chunks.length; i < len; i++) {\n const str = chunks[i].buffer.replace(/\\r\\n|\\r|\\n/g, eol);\n const newLineStart = (0,_pieceTreeBase_js__WEBPACK_IMPORTED_MODULE_1__.createLineStartsFast)(str);\n chunks[i] = new _pieceTreeBase_js__WEBPACK_IMPORTED_MODULE_1__.StringBuffer(str, newLineStart);\n }\n }\n const textBuffer = new _pieceTreeTextBuffer_js__WEBPACK_IMPORTED_MODULE_2__.PieceTreeTextBuffer(chunks, this._bom, eol, this._containsRTL, this._containsUnusualLineTerminators, this._isBasicASCII, this._normalizeEOL);\n return { textBuffer: textBuffer, disposable: textBuffer };\n }\n}\nclass PieceTreeTextBufferBuilder {\n constructor() {\n this.chunks = [];\n this.BOM = '';\n this._hasPreviousChar = false;\n this._previousChar = 0;\n this._tmpLineStarts = [];\n this.cr = 0;\n this.lf = 0;\n this.crlf = 0;\n this.containsRTL = false;\n this.containsUnusualLineTerminators = false;\n this.isBasicASCII = true;\n }\n acceptChunk(chunk) {\n if (chunk.length === 0) {\n return;\n }\n if (this.chunks.length === 0) {\n if (_base_common_strings_js__WEBPACK_IMPORTED_MODULE_0__.startsWithUTF8BOM(chunk)) {\n this.BOM = _base_common_strings_js__WEBPACK_IMPORTED_MODULE_0__.UTF8_BOM_CHARACTER;\n chunk = chunk.substr(1);\n }\n }\n const lastChar = chunk.charCodeAt(chunk.length - 1);\n if (lastChar === 13 /* CharCode.CarriageReturn */ || (lastChar >= 0xD800 && lastChar <= 0xDBFF)) {\n // last character is \\r or a high surrogate => keep it back\n this._acceptChunk1(chunk.substr(0, chunk.length - 1), false);\n this._hasPreviousChar = true;\n this._previousChar = lastChar;\n }\n else {\n this._acceptChunk1(chunk, false);\n this._hasPreviousChar = false;\n this._previousChar = lastChar;\n }\n }\n _acceptChunk1(chunk, allowEmptyStrings) {\n if (!allowEmptyStrings && chunk.length === 0) {\n // Nothing to do\n return;\n }\n if (this._hasPreviousChar) {\n this._acceptChunk2(String.fromCharCode(this._previousChar) + chunk);\n }\n else {\n this._acceptChunk2(chunk);\n }\n }\n _acceptChunk2(chunk) {\n const lineStarts = (0,_pieceTreeBase_js__WEBPACK_IMPORTED_MODULE_1__.createLineStarts)(this._tmpLineStarts, chunk);\n this.chunks.push(new _pieceTreeBase_js__WEBPACK_IMPORTED_MODULE_1__.StringBuffer(chunk, lineStarts.lineStarts));\n this.cr += lineStarts.cr;\n this.lf += lineStarts.lf;\n this.crlf += lineStarts.crlf;\n if (!lineStarts.isBasicASCII) {\n // this chunk contains non basic ASCII characters\n this.isBasicASCII = false;\n if (!this.containsRTL) {\n this.containsRTL = _base_common_strings_js__WEBPACK_IMPORTED_MODULE_0__.containsRTL(chunk);\n }\n if (!this.containsUnusualLineTerminators) {\n this.containsUnusualLineTerminators = _base_common_strings_js__WEBPACK_IMPORTED_MODULE_0__.containsUnusualLineTerminators(chunk);\n }\n }\n }\n finish(normalizeEOL = true) {\n this._finish();\n return new PieceTreeTextBufferFactory(this.chunks, this.BOM, this.cr, this.lf, this.crlf, this.containsRTL, this.containsUnusualLineTerminators, this.isBasicASCII, normalizeEOL);\n }\n _finish() {\n if (this.chunks.length === 0) {\n this._acceptChunk1('', true);\n }\n if (this._hasPreviousChar) {\n this._hasPreviousChar = false;\n // recreate last chunk\n const lastChunk = this.chunks[this.chunks.length - 1];\n lastChunk.buffer += String.fromCharCode(this._previousChar);\n const newLineStarts = (0,_pieceTreeBase_js__WEBPACK_IMPORTED_MODULE_1__.createLineStartsFast)(lastChunk.buffer);\n lastChunk.lineStarts = newLineStarts;\n if (this._previousChar === 13 /* CharCode.CarriageReturn */) {\n this.cr++;\n }\n }\n }\n}\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/common/model/pieceTreeTextBuffer/pieceTreeTextBufferBuilder.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/common/model/pieceTreeTextBuffer/rbTreeBase.js":
/*!*************************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/common/model/pieceTreeTextBuffer/rbTreeBase.js ***!
\*************************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ SENTINEL: () => (/* binding */ SENTINEL),\n/* harmony export */ TreeNode: () => (/* binding */ TreeNode),\n/* harmony export */ fixInsert: () => (/* binding */ fixInsert),\n/* harmony export */ leftRotate: () => (/* binding */ leftRotate),\n/* harmony export */ leftest: () => (/* binding */ leftest),\n/* harmony export */ rbDelete: () => (/* binding */ rbDelete),\n/* harmony export */ recomputeTreeMetadata: () => (/* binding */ recomputeTreeMetadata),\n/* harmony export */ rightRotate: () => (/* binding */ rightRotate),\n/* harmony export */ righttest: () => (/* binding */ righttest),\n/* harmony export */ updateTreeMetadata: () => (/* binding */ updateTreeMetadata)\n/* harmony export */ });\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\nclass TreeNode {\n constructor(piece, color) {\n this.piece = piece;\n this.color = color;\n this.size_left = 0;\n this.lf_left = 0;\n this.parent = this;\n this.left = this;\n this.right = this;\n }\n next() {\n if (this.right !== SENTINEL) {\n return leftest(this.right);\n }\n let node = this;\n while (node.parent !== SENTINEL) {\n if (node.parent.left === node) {\n break;\n }\n node = node.parent;\n }\n if (node.parent === SENTINEL) {\n return SENTINEL;\n }\n else {\n return node.parent;\n }\n }\n prev() {\n if (this.left !== SENTINEL) {\n return righttest(this.left);\n }\n let node = this;\n while (node.parent !== SENTINEL) {\n if (node.parent.right === node) {\n break;\n }\n node = node.parent;\n }\n if (node.parent === SENTINEL) {\n return SENTINEL;\n }\n else {\n return node.parent;\n }\n }\n detach() {\n this.parent = null;\n this.left = null;\n this.right = null;\n }\n}\nconst SENTINEL = new TreeNode(null, 0 /* NodeColor.Black */);\nSENTINEL.parent = SENTINEL;\nSENTINEL.left = SENTINEL;\nSENTINEL.right = SENTINEL;\nSENTINEL.color = 0 /* NodeColor.Black */;\nfunction leftest(node) {\n while (node.left !== SENTINEL) {\n node = node.left;\n }\n return node;\n}\nfunction righttest(node) {\n while (node.right !== SENTINEL) {\n node = node.right;\n }\n return node;\n}\nfunction calculateSize(node) {\n if (node === SENTINEL) {\n return 0;\n }\n return node.size_left + node.piece.length + calculateSize(node.right);\n}\nfunction calculateLF(node) {\n if (node === SENTINEL) {\n return 0;\n }\n return node.lf_left + node.piece.lineFeedCnt + calculateLF(node.right);\n}\nfunction resetSentinel() {\n SENTINEL.parent = SENTINEL;\n}\nfunction leftRotate(tree, x) {\n const y = x.right;\n // fix size_left\n y.size_left += x.size_left + (x.piece ? x.piece.length : 0);\n y.lf_left += x.lf_left + (x.piece ? x.piece.lineFeedCnt : 0);\n x.right = y.left;\n if (y.left !== SENTINEL) {\n y.left.parent = x;\n }\n y.parent = x.parent;\n if (x.parent === SENTINEL) {\n tree.root = y;\n }\n else if (x.parent.left === x) {\n x.parent.left = y;\n }\n else {\n x.parent.right = y;\n }\n y.left = x;\n x.parent = y;\n}\nfunction rightRotate(tree, y) {\n const x = y.left;\n y.left = x.right;\n if (x.right !== SENTINEL) {\n x.right.parent = y;\n }\n x.parent = y.parent;\n // fix size_left\n y.size_left -= x.size_left + (x.piece ? x.piece.length : 0);\n y.lf_left -= x.lf_left + (x.piece ? x.piece.lineFeedCnt : 0);\n if (y.parent === SENTINEL) {\n tree.root = x;\n }\n else if (y === y.parent.right) {\n y.parent.right = x;\n }\n else {\n y.parent.left = x;\n }\n x.right = y;\n y.parent = x;\n}\nfunction rbDelete(tree, z) {\n let x;\n let y;\n if (z.left === SENTINEL) {\n y = z;\n x = y.right;\n }\n else if (z.right === SENTINEL) {\n y = z;\n x = y.left;\n }\n else {\n y = leftest(z.right);\n x = y.right;\n }\n if (y === tree.root) {\n tree.root = x;\n // if x is null, we are removing the only node\n x.color = 0 /* NodeColor.Black */;\n z.detach();\n resetSentinel();\n tree.root.parent = SENTINEL;\n return;\n }\n const yWasRed = (y.color === 1 /* NodeColor.Red */);\n if (y === y.parent.left) {\n y.parent.left = x;\n }\n else {\n y.parent.right = x;\n }\n if (y === z) {\n x.parent = y.parent;\n recomputeTreeMetadata(tree, x);\n }\n else {\n if (y.parent === z) {\n x.parent = y;\n }\n else {\n x.parent = y.parent;\n }\n // as we make changes to x's hierarchy, update size_left of subtree first\n recomputeTreeMetadata(tree, x);\n y.left = z.left;\n y.right = z.right;\n y.parent = z.parent;\n y.color = z.color;\n if (z === tree.root) {\n tree.root = y;\n }\n else {\n if (z === z.parent.left) {\n z.parent.left = y;\n }\n else {\n z.parent.right = y;\n }\n }\n if (y.left !== SENTINEL) {\n y.left.parent = y;\n }\n if (y.right !== SENTINEL) {\n y.right.parent = y;\n }\n // update metadata\n // we replace z with y, so in this sub tree, the length change is z.item.length\n y.size_left = z.size_left;\n y.lf_left = z.lf_left;\n recomputeTreeMetadata(tree, y);\n }\n z.detach();\n if (x.parent.left === x) {\n const newSizeLeft = calculateSize(x);\n const newLFLeft = calculateLF(x);\n if (newSizeLeft !== x.parent.size_left || newLFLeft !== x.parent.lf_left) {\n const delta = newSizeLeft - x.parent.size_left;\n const lf_delta = newLFLeft - x.parent.lf_left;\n x.parent.size_left = newSizeLeft;\n x.parent.lf_left = newLFLeft;\n updateTreeMetadata(tree, x.parent, delta, lf_delta);\n }\n }\n recomputeTreeMetadata(tree, x.parent);\n if (yWasRed) {\n resetSentinel();\n return;\n }\n // RB-DELETE-FIXUP\n let w;\n while (x !== tree.root && x.color === 0 /* NodeColor.Black */) {\n if (x === x.parent.left) {\n w = x.parent.right;\n if (w.color === 1 /* NodeColor.Red */) {\n w.color = 0 /* NodeColor.Black */;\n x.parent.color = 1 /* NodeColor.Red */;\n leftRotate(tree, x.parent);\n w = x.parent.right;\n }\n if (w.left.color === 0 /* NodeColor.Black */ && w.right.color === 0 /* NodeColor.Black */) {\n w.color = 1 /* NodeColor.Red */;\n x = x.parent;\n }\n else {\n if (w.right.color === 0 /* NodeColor.Black */) {\n w.left.color = 0 /* NodeColor.Black */;\n w.color = 1 /* NodeColor.Red */;\n rightRotate(tree, w);\n w = x.parent.right;\n }\n w.color = x.parent.color;\n x.parent.color = 0 /* NodeColor.Black */;\n w.right.color = 0 /* NodeColor.Black */;\n leftRotate(tree, x.parent);\n x = tree.root;\n }\n }\n else {\n w = x.parent.left;\n if (w.color === 1 /* NodeColor.Red */) {\n w.color = 0 /* NodeColor.Black */;\n x.parent.color = 1 /* NodeColor.Red */;\n rightRotate(tree, x.parent);\n w = x.parent.left;\n }\n if (w.left.color === 0 /* NodeColor.Black */ && w.right.color === 0 /* NodeColor.Black */) {\n w.color = 1 /* NodeColor.Red */;\n x = x.parent;\n }\n else {\n if (w.left.color === 0 /* NodeColor.Black */) {\n w.right.color = 0 /* NodeColor.Black */;\n w.color = 1 /* NodeColor.Red */;\n leftRotate(tree, w);\n w = x.parent.left;\n }\n w.color = x.parent.color;\n x.parent.color = 0 /* NodeColor.Black */;\n w.left.color = 0 /* NodeColor.Black */;\n rightRotate(tree, x.parent);\n x = tree.root;\n }\n }\n }\n x.color = 0 /* NodeColor.Black */;\n resetSentinel();\n}\nfunction fixInsert(tree, x) {\n recomputeTreeMetadata(tree, x);\n while (x !== tree.root && x.parent.color === 1 /* NodeColor.Red */) {\n if (x.parent === x.parent.parent.left) {\n const y = x.parent.parent.right;\n if (y.color === 1 /* NodeColor.Red */) {\n x.parent.color = 0 /* NodeColor.Black */;\n y.color = 0 /* NodeColor.Black */;\n x.parent.parent.color = 1 /* NodeColor.Red */;\n x = x.parent.parent;\n }\n else {\n if (x === x.parent.right) {\n x = x.parent;\n leftRotate(tree, x);\n }\n x.parent.color = 0 /* NodeColor.Black */;\n x.parent.parent.color = 1 /* NodeColor.Red */;\n rightRotate(tree, x.parent.parent);\n }\n }\n else {\n const y = x.parent.parent.left;\n if (y.color === 1 /* NodeColor.Red */) {\n x.parent.color = 0 /* NodeColor.Black */;\n y.color = 0 /* NodeColor.Black */;\n x.parent.parent.color = 1 /* NodeColor.Red */;\n x = x.parent.parent;\n }\n else {\n if (x === x.parent.left) {\n x = x.parent;\n rightRotate(tree, x);\n }\n x.parent.color = 0 /* NodeColor.Black */;\n x.parent.parent.color = 1 /* NodeColor.Red */;\n leftRotate(tree, x.parent.parent);\n }\n }\n }\n tree.root.color = 0 /* NodeColor.Black */;\n}\nfunction updateTreeMetadata(tree, x, delta, lineFeedCntDelta) {\n // node length change or line feed count change\n while (x !== tree.root && x !== SENTINEL) {\n if (x.parent.left === x) {\n x.parent.size_left += delta;\n x.parent.lf_left += lineFeedCntDelta;\n }\n x = x.parent;\n }\n}\nfunction recomputeTreeMetadata(tree, x) {\n let delta = 0;\n let lf_delta = 0;\n if (x === tree.root) {\n return;\n }\n // go upwards till the node whose left subtree is changed.\n while (x !== tree.root && x === x.parent.right) {\n x = x.parent;\n }\n if (x === tree.root) {\n // well, it means we add a node to the end (inorder)\n return;\n }\n // x is the node whose right subtree is changed.\n x = x.parent;\n delta = calculateSize(x.left) - x.size_left;\n lf_delta = calculateLF(x.left) - x.lf_left;\n x.size_left += delta;\n x.lf_left += lf_delta;\n // go upwards till root. O(logN)\n while (x !== tree.root && (delta !== 0 || lf_delta !== 0)) {\n if (x.parent.left === x) {\n x.parent.size_left += delta;\n x.parent.lf_left += lf_delta;\n }\n x = x.parent;\n }\n}\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/common/model/pieceTreeTextBuffer/rbTreeBase.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/common/model/prefixSumComputer.js":
/*!************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/common/model/prefixSumComputer.js ***!
\************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ ConstantTimePrefixSumComputer: () => (/* binding */ ConstantTimePrefixSumComputer),\n/* harmony export */ PrefixSumComputer: () => (/* binding */ PrefixSumComputer),\n/* harmony export */ PrefixSumIndexOfResult: () => (/* binding */ PrefixSumIndexOfResult)\n/* harmony export */ });\n/* harmony import */ var _base_common_arrays_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../base/common/arrays.js */ \"./node_modules/monaco-editor/esm/vs/base/common/arrays.js\");\n/* harmony import */ var _base_common_uint_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../base/common/uint.js */ \"./node_modules/monaco-editor/esm/vs/base/common/uint.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n\nclass PrefixSumComputer {\n constructor(values) {\n this.values = values;\n this.prefixSum = new Uint32Array(values.length);\n this.prefixSumValidIndex = new Int32Array(1);\n this.prefixSumValidIndex[0] = -1;\n }\n insertValues(insertIndex, insertValues) {\n insertIndex = (0,_base_common_uint_js__WEBPACK_IMPORTED_MODULE_1__.toUint32)(insertIndex);\n const oldValues = this.values;\n const oldPrefixSum = this.prefixSum;\n const insertValuesLen = insertValues.length;\n if (insertValuesLen === 0) {\n return false;\n }\n this.values = new Uint32Array(oldValues.length + insertValuesLen);\n this.values.set(oldValues.subarray(0, insertIndex), 0);\n this.values.set(oldValues.subarray(insertIndex), insertIndex + insertValuesLen);\n this.values.set(insertValues, insertIndex);\n if (insertIndex - 1 < this.prefixSumValidIndex[0]) {\n this.prefixSumValidIndex[0] = insertIndex - 1;\n }\n this.prefixSum = new Uint32Array(this.values.length);\n if (this.prefixSumValidIndex[0] >= 0) {\n this.prefixSum.set(oldPrefixSum.subarray(0, this.prefixSumValidIndex[0] + 1));\n }\n return true;\n }\n setValue(index, value) {\n index = (0,_base_common_uint_js__WEBPACK_IMPORTED_MODULE_1__.toUint32)(index);\n value = (0,_base_common_uint_js__WEBPACK_IMPORTED_MODULE_1__.toUint32)(value);\n if (this.values[index] === value) {\n return false;\n }\n this.values[index] = value;\n if (index - 1 < this.prefixSumValidIndex[0]) {\n this.prefixSumValidIndex[0] = index - 1;\n }\n return true;\n }\n removeValues(startIndex, count) {\n startIndex = (0,_base_common_uint_js__WEBPACK_IMPORTED_MODULE_1__.toUint32)(startIndex);\n count = (0,_base_common_uint_js__WEBPACK_IMPORTED_MODULE_1__.toUint32)(count);\n const oldValues = this.values;\n const oldPrefixSum = this.prefixSum;\n if (startIndex >= oldValues.length) {\n return false;\n }\n const maxCount = oldValues.length - startIndex;\n if (count >= maxCount) {\n count = maxCount;\n }\n if (count === 0) {\n return false;\n }\n this.values = new Uint32Array(oldValues.length - count);\n this.values.set(oldValues.subarray(0, startIndex), 0);\n this.values.set(oldValues.subarray(startIndex + count), startIndex);\n this.prefixSum = new Uint32Array(this.values.length);\n if (startIndex - 1 < this.prefixSumValidIndex[0]) {\n this.prefixSumValidIndex[0] = startIndex - 1;\n }\n if (this.prefixSumValidIndex[0] >= 0) {\n this.prefixSum.set(oldPrefixSum.subarray(0, this.prefixSumValidIndex[0] + 1));\n }\n return true;\n }\n getTotalSum() {\n if (this.values.length === 0) {\n return 0;\n }\n return this._getPrefixSum(this.values.length - 1);\n }\n /**\n * Returns the sum of the first `index + 1` many items.\n * @returns `SUM(0 <= j <= index, values[j])`.\n */\n getPrefixSum(index) {\n if (index < 0) {\n return 0;\n }\n index = (0,_base_common_uint_js__WEBPACK_IMPORTED_MODULE_1__.toUint32)(index);\n return this._getPrefixSum(index);\n }\n _getPrefixSum(index) {\n if (index <= this.prefixSumValidIndex[0]) {\n return this.prefixSum[index];\n }\n let startIndex = this.prefixSumValidIndex[0] + 1;\n if (startIndex === 0) {\n this.prefixSum[0] = this.values[0];\n startIndex++;\n }\n if (index >= this.values.length) {\n index = this.values.length - 1;\n }\n for (let i = startIndex; i <= index; i++) {\n this.prefixSum[i] = this.prefixSum[i - 1] + this.values[i];\n }\n this.prefixSumValidIndex[0] = Math.max(this.prefixSumValidIndex[0], index);\n return this.prefixSum[index];\n }\n getIndexOf(sum) {\n sum = Math.floor(sum);\n // Compute all sums (to get a fully valid prefixSum)\n this.getTotalSum();\n let low = 0;\n let high = this.values.length - 1;\n let mid = 0;\n let midStop = 0;\n let midStart = 0;\n while (low <= high) {\n mid = low + ((high - low) / 2) | 0;\n midStop = this.prefixSum[mid];\n midStart = midStop - this.values[mid];\n if (sum < midStart) {\n high = mid - 1;\n }\n else if (sum >= midStop) {\n low = mid + 1;\n }\n else {\n break;\n }\n }\n return new PrefixSumIndexOfResult(mid, sum - midStart);\n }\n}\n/**\n * {@link getIndexOf} has an amortized runtime complexity of O(1).\n *\n * ({@link PrefixSumComputer.getIndexOf} is just O(log n))\n*/\nclass ConstantTimePrefixSumComputer {\n constructor(values) {\n this._values = values;\n this._isValid = false;\n this._validEndIndex = -1;\n this._prefixSum = [];\n this._indexBySum = [];\n }\n /**\n * @returns SUM(0 <= j < values.length, values[j])\n */\n getTotalSum() {\n this._ensureValid();\n return this._indexBySum.length;\n }\n /**\n * Returns the sum of the first `count` many items.\n * @returns `SUM(0 <= j < count, values[j])`.\n */\n getPrefixSum(count) {\n this._ensureValid();\n if (count === 0) {\n return 0;\n }\n return this._prefixSum[count - 1];\n }\n /**\n * @returns `result`, such that `getPrefixSum(result.index) + result.remainder = sum`\n */\n getIndexOf(sum) {\n this._ensureValid();\n const idx = this._indexBySum[sum];\n const viewLinesAbove = idx > 0 ? this._prefixSum[idx - 1] : 0;\n return new PrefixSumIndexOfResult(idx, sum - viewLinesAbove);\n }\n removeValues(start, deleteCount) {\n this._values.splice(start, deleteCount);\n this._invalidate(start);\n }\n insertValues(insertIndex, insertArr) {\n this._values = (0,_base_common_arrays_js__WEBPACK_IMPORTED_MODULE_0__.arrayInsert)(this._values, insertIndex, insertArr);\n this._invalidate(insertIndex);\n }\n _invalidate(index) {\n this._isValid = false;\n this._validEndIndex = Math.min(this._validEndIndex, index - 1);\n }\n _ensureValid() {\n if (this._isValid) {\n return;\n }\n for (let i = this._validEndIndex + 1, len = this._values.length; i < len; i++) {\n const value = this._values[i];\n const sumAbove = i > 0 ? this._prefixSum[i - 1] : 0;\n this._prefixSum[i] = sumAbove + value;\n for (let j = 0; j < value; j++) {\n this._indexBySum[sumAbove + j] = i;\n }\n }\n // trim things\n this._prefixSum.length = this._values.length;\n this._indexBySum.length = this._prefixSum[this._prefixSum.length - 1];\n // mark as valid\n this._isValid = true;\n this._validEndIndex = this._values.length - 1;\n }\n setValue(index, value) {\n if (this._values[index] === value) {\n // no change\n return;\n }\n this._values[index] = value;\n this._invalidate(index);\n }\n}\nclass PrefixSumIndexOfResult {\n constructor(index, remainder) {\n this.index = index;\n this.remainder = remainder;\n this._prefixSumIndexOfResultBrand = undefined;\n this.index = index;\n this.remainder = remainder;\n }\n}\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/common/model/prefixSumComputer.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/common/model/textModel.js":
/*!****************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/common/model/textModel.js ***!
\****************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ AttachedViews: () => (/* binding */ AttachedViews),\n/* harmony export */ ModelDecorationGlyphMarginOptions: () => (/* binding */ ModelDecorationGlyphMarginOptions),\n/* harmony export */ ModelDecorationInjectedTextOptions: () => (/* binding */ ModelDecorationInjectedTextOptions),\n/* harmony export */ ModelDecorationMinimapOptions: () => (/* binding */ ModelDecorationMinimapOptions),\n/* harmony export */ ModelDecorationOptions: () => (/* binding */ ModelDecorationOptions),\n/* harmony export */ ModelDecorationOverviewRulerOptions: () => (/* binding */ ModelDecorationOverviewRulerOptions),\n/* harmony export */ TextModel: () => (/* binding */ TextModel),\n/* harmony export */ createTextBuffer: () => (/* binding */ createTextBuffer),\n/* harmony export */ createTextBufferFactory: () => (/* binding */ createTextBufferFactory),\n/* harmony export */ createTextBufferFactoryFromSnapshot: () => (/* binding */ createTextBufferFactoryFromSnapshot)\n/* harmony export */ });\n/* harmony import */ var _base_common_arrays_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../base/common/arrays.js */ \"./node_modules/monaco-editor/esm/vs/base/common/arrays.js\");\n/* harmony import */ var _base_common_color_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../base/common/color.js */ \"./node_modules/monaco-editor/esm/vs/base/common/color.js\");\n/* harmony import */ var _base_common_errors_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../base/common/errors.js */ \"./node_modules/monaco-editor/esm/vs/base/common/errors.js\");\n/* harmony import */ var _base_common_event_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../../base/common/event.js */ \"./node_modules/monaco-editor/esm/vs/base/common/event.js\");\n/* harmony import */ var _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../../base/common/lifecycle.js */ \"./node_modules/monaco-editor/esm/vs/base/common/lifecycle.js\");\n/* harmony import */ var _base_common_strings_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../../../base/common/strings.js */ \"./node_modules/monaco-editor/esm/vs/base/common/strings.js\");\n/* harmony import */ var _base_common_uri_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../../../base/common/uri.js */ \"./node_modules/monaco-editor/esm/vs/base/common/uri.js\");\n/* harmony import */ var _core_eolCounter_js__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ../core/eolCounter.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/core/eolCounter.js\");\n/* harmony import */ var _core_indentation_js__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ../core/indentation.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/core/indentation.js\");\n/* harmony import */ var _core_lineRange_js__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ../core/lineRange.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/core/lineRange.js\");\n/* harmony import */ var _core_position_js__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! ../core/position.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/core/position.js\");\n/* harmony import */ var _core_range_js__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(/*! ../core/range.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/core/range.js\");\n/* harmony import */ var _core_selection_js__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(/*! ../core/selection.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/core/selection.js\");\n/* harmony import */ var _core_textModelDefaults_js__WEBPACK_IMPORTED_MODULE_13__ = __webpack_require__(/*! ../core/textModelDefaults.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/core/textModelDefaults.js\");\n/* harmony import */ var _languages_language_js__WEBPACK_IMPORTED_MODULE_14__ = __webpack_require__(/*! ../languages/language.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/languages/language.js\");\n/* harmony import */ var _languages_languageConfigurationRegistry_js__WEBPACK_IMPORTED_MODULE_15__ = __webpack_require__(/*! ../languages/languageConfigurationRegistry.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/languages/languageConfigurationRegistry.js\");\n/* harmony import */ var _model_js__WEBPACK_IMPORTED_MODULE_16__ = __webpack_require__(/*! ../model.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/model.js\");\n/* harmony import */ var _bracketPairsTextModelPart_bracketPairsImpl_js__WEBPACK_IMPORTED_MODULE_17__ = __webpack_require__(/*! ./bracketPairsTextModelPart/bracketPairsImpl.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/model/bracketPairsTextModelPart/bracketPairsImpl.js\");\n/* harmony import */ var _bracketPairsTextModelPart_colorizedBracketPairsDecorationProvider_js__WEBPACK_IMPORTED_MODULE_18__ = __webpack_require__(/*! ./bracketPairsTextModelPart/colorizedBracketPairsDecorationProvider.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/model/bracketPairsTextModelPart/colorizedBracketPairsDecorationProvider.js\");\n/* harmony import */ var _editStack_js__WEBPACK_IMPORTED_MODULE_19__ = __webpack_require__(/*! ./editStack.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/model/editStack.js\");\n/* harmony import */ var _guidesTextModelPart_js__WEBPACK_IMPORTED_MODULE_20__ = __webpack_require__(/*! ./guidesTextModelPart.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/model/guidesTextModelPart.js\");\n/* harmony import */ var _indentationGuesser_js__WEBPACK_IMPORTED_MODULE_21__ = __webpack_require__(/*! ./indentationGuesser.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/model/indentationGuesser.js\");\n/* harmony import */ var _intervalTree_js__WEBPACK_IMPORTED_MODULE_22__ = __webpack_require__(/*! ./intervalTree.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/model/intervalTree.js\");\n/* harmony import */ var _pieceTreeTextBuffer_pieceTreeTextBuffer_js__WEBPACK_IMPORTED_MODULE_23__ = __webpack_require__(/*! ./pieceTreeTextBuffer/pieceTreeTextBuffer.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/model/pieceTreeTextBuffer/pieceTreeTextBuffer.js\");\n/* harmony import */ var _pieceTreeTextBuffer_pieceTreeTextBufferBuilder_js__WEBPACK_IMPORTED_MODULE_24__ = __webpack_require__(/*! ./pieceTreeTextBuffer/pieceTreeTextBufferBuilder.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/model/pieceTreeTextBuffer/pieceTreeTextBufferBuilder.js\");\n/* harmony import */ var _textModelSearch_js__WEBPACK_IMPORTED_MODULE_25__ = __webpack_require__(/*! ./textModelSearch.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/model/textModelSearch.js\");\n/* harmony import */ var _tokenizationTextModelPart_js__WEBPACK_IMPORTED_MODULE_26__ = __webpack_require__(/*! ./tokenizationTextModelPart.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/model/tokenizationTextModelPart.js\");\n/* harmony import */ var _textModelEvents_js__WEBPACK_IMPORTED_MODULE_27__ = __webpack_require__(/*! ../textModelEvents.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/textModelEvents.js\");\n/* harmony import */ var _platform_undoRedo_common_undoRedo_js__WEBPACK_IMPORTED_MODULE_28__ = __webpack_require__(/*! ../../../platform/undoRedo/common/undoRedo.js */ \"./node_modules/monaco-editor/esm/vs/platform/undoRedo/common/undoRedo.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\nvar __decorate = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\n return c > 3 && r && Object.defineProperty(target, key, r), r;\n};\nvar __param = (undefined && undefined.__param) || function (paramIndex, decorator) {\n return function (target, key) { decorator(target, key, paramIndex); }\n};\nvar TextModel_1;\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nfunction createTextBufferFactory(text) {\n const builder = new _pieceTreeTextBuffer_pieceTreeTextBufferBuilder_js__WEBPACK_IMPORTED_MODULE_24__.PieceTreeTextBufferBuilder();\n builder.acceptChunk(text);\n return builder.finish();\n}\nfunction createTextBufferFactoryFromSnapshot(snapshot) {\n const builder = new _pieceTreeTextBuffer_pieceTreeTextBufferBuilder_js__WEBPACK_IMPORTED_MODULE_24__.PieceTreeTextBufferBuilder();\n let chunk;\n while (typeof (chunk = snapshot.read()) === 'string') {\n builder.acceptChunk(chunk);\n }\n return builder.finish();\n}\nfunction createTextBuffer(value, defaultEOL) {\n let factory;\n if (typeof value === 'string') {\n factory = createTextBufferFactory(value);\n }\n else if (_model_js__WEBPACK_IMPORTED_MODULE_16__.isITextSnapshot(value)) {\n factory = createTextBufferFactoryFromSnapshot(value);\n }\n else {\n factory = value;\n }\n return factory.create(defaultEOL);\n}\nlet MODEL_ID = 0;\nconst LIMIT_FIND_COUNT = 999;\nconst LONG_LINE_BOUNDARY = 10000;\nclass TextModelSnapshot {\n constructor(source) {\n this._source = source;\n this._eos = false;\n }\n read() {\n if (this._eos) {\n return null;\n }\n const result = [];\n let resultCnt = 0;\n let resultLength = 0;\n do {\n const tmp = this._source.read();\n if (tmp === null) {\n // end-of-stream\n this._eos = true;\n if (resultCnt === 0) {\n return null;\n }\n else {\n return result.join('');\n }\n }\n if (tmp.length > 0) {\n result[resultCnt++] = tmp;\n resultLength += tmp.length;\n }\n if (resultLength >= 64 * 1024) {\n return result.join('');\n }\n } while (true);\n }\n}\nconst invalidFunc = () => { throw new Error(`Invalid change accessor`); };\nlet TextModel = TextModel_1 = class TextModel extends _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_4__.Disposable {\n static resolveOptions(textBuffer, options) {\n if (options.detectIndentation) {\n const guessedIndentation = (0,_indentationGuesser_js__WEBPACK_IMPORTED_MODULE_21__.guessIndentation)(textBuffer, options.tabSize, options.insertSpaces);\n return new _model_js__WEBPACK_IMPORTED_MODULE_16__.TextModelResolvedOptions({\n tabSize: guessedIndentation.tabSize,\n indentSize: 'tabSize', // TODO@Alex: guess indentSize independent of tabSize\n insertSpaces: guessedIndentation.insertSpaces,\n trimAutoWhitespace: options.trimAutoWhitespace,\n defaultEOL: options.defaultEOL,\n bracketPairColorizationOptions: options.bracketPairColorizationOptions,\n });\n }\n return new _model_js__WEBPACK_IMPORTED_MODULE_16__.TextModelResolvedOptions(options);\n }\n get onDidChangeLanguage() { return this._tokenizationTextModelPart.onDidChangeLanguage; }\n get onDidChangeLanguageConfiguration() { return this._tokenizationTextModelPart.onDidChangeLanguageConfiguration; }\n get onDidChangeTokens() { return this._tokenizationTextModelPart.onDidChangeTokens; }\n onDidChangeContent(listener) {\n return this._eventEmitter.slowEvent((e) => listener(e.contentChangedEvent));\n }\n onDidChangeContentOrInjectedText(listener) {\n return (0,_base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_4__.combinedDisposable)(this._eventEmitter.fastEvent(e => listener(e)), this._onDidChangeInjectedText.event(e => listener(e)));\n }\n _isDisposing() { return this.__isDisposing; }\n get tokenization() { return this._tokenizationTextModelPart; }\n get bracketPairs() { return this._bracketPairs; }\n get guides() { return this._guidesTextModelPart; }\n constructor(source, languageIdOrSelection, creationOptions, associatedResource = null, _undoRedoService, _languageService, _languageConfigurationService) {\n super();\n this._undoRedoService = _undoRedoService;\n this._languageService = _languageService;\n this._languageConfigurationService = _languageConfigurationService;\n //#region Events\n this._onWillDispose = this._register(new _base_common_event_js__WEBPACK_IMPORTED_MODULE_3__.Emitter());\n this.onWillDispose = this._onWillDispose.event;\n this._onDidChangeDecorations = this._register(new DidChangeDecorationsEmitter(affectedInjectedTextLines => this.handleBeforeFireDecorationsChangedEvent(affectedInjectedTextLines)));\n this.onDidChangeDecorations = this._onDidChangeDecorations.event;\n this._onDidChangeOptions = this._register(new _base_common_event_js__WEBPACK_IMPORTED_MODULE_3__.Emitter());\n this.onDidChangeOptions = this._onDidChangeOptions.event;\n this._onDidChangeAttached = this._register(new _base_common_event_js__WEBPACK_IMPORTED_MODULE_3__.Emitter());\n this.onDidChangeAttached = this._onDidChangeAttached.event;\n this._onDidChangeInjectedText = this._register(new _base_common_event_js__WEBPACK_IMPORTED_MODULE_3__.Emitter());\n this._eventEmitter = this._register(new DidChangeContentEmitter());\n this._languageSelectionListener = this._register(new _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_4__.MutableDisposable());\n this._deltaDecorationCallCnt = 0;\n this._attachedViews = new AttachedViews();\n // Generate a new unique model id\n MODEL_ID++;\n this.id = '$model' + MODEL_ID;\n this.isForSimpleWidget = creationOptions.isForSimpleWidget;\n if (typeof associatedResource === 'undefined' || associatedResource === null) {\n this._associatedResource = _base_common_uri_js__WEBPACK_IMPORTED_MODULE_6__.URI.parse('inmemory://model/' + MODEL_ID);\n }\n else {\n this._associatedResource = associatedResource;\n }\n this._attachedEditorCount = 0;\n const { textBuffer, disposable } = createTextBuffer(source, creationOptions.defaultEOL);\n this._buffer = textBuffer;\n this._bufferDisposable = disposable;\n this._options = TextModel_1.resolveOptions(this._buffer, creationOptions);\n const languageId = (typeof languageIdOrSelection === 'string' ? languageIdOrSelection : languageIdOrSelection.languageId);\n if (typeof languageIdOrSelection !== 'string') {\n this._languageSelectionListener.value = languageIdOrSelection.onDidChange(() => this._setLanguage(languageIdOrSelection.languageId));\n }\n this._bracketPairs = this._register(new _bracketPairsTextModelPart_bracketPairsImpl_js__WEBPACK_IMPORTED_MODULE_17__.BracketPairsTextModelPart(this, this._languageConfigurationService));\n this._guidesTextModelPart = this._register(new _guidesTextModelPart_js__WEBPACK_IMPORTED_MODULE_20__.GuidesTextModelPart(this, this._languageConfigurationService));\n this._decorationProvider = this._register(new _bracketPairsTextModelPart_colorizedBracketPairsDecorationProvider_js__WEBPACK_IMPORTED_MODULE_18__.ColorizedBracketPairsDecorationProvider(this));\n this._tokenizationTextModelPart = new _tokenizationTextModelPart_js__WEBPACK_IMPORTED_MODULE_26__.TokenizationTextModelPart(this._languageService, this._languageConfigurationService, this, this._bracketPairs, languageId, this._attachedViews);\n const bufferLineCount = this._buffer.getLineCount();\n const bufferTextLength = this._buffer.getValueLengthInRange(new _core_range_js__WEBPACK_IMPORTED_MODULE_11__.Range(1, 1, bufferLineCount, this._buffer.getLineLength(bufferLineCount) + 1), 0 /* model.EndOfLinePreference.TextDefined */);\n // !!! Make a decision in the ctor and permanently respect this decision !!!\n // If a model is too large at construction time, it will never get tokenized,\n // under no circumstances.\n if (creationOptions.largeFileOptimizations) {\n this._isTooLargeForTokenization = ((bufferTextLength > TextModel_1.LARGE_FILE_SIZE_THRESHOLD)\n || (bufferLineCount > TextModel_1.LARGE_FILE_LINE_COUNT_THRESHOLD));\n this._isTooLargeForHeapOperation = bufferTextLength > TextModel_1.LARGE_FILE_HEAP_OPERATION_THRESHOLD;\n }\n else {\n this._isTooLargeForTokenization = false;\n this._isTooLargeForHeapOperation = false;\n }\n this._isTooLargeForSyncing = (bufferTextLength > TextModel_1._MODEL_SYNC_LIMIT);\n this._versionId = 1;\n this._alternativeVersionId = 1;\n this._initialUndoRedoSnapshot = null;\n this._isDisposed = false;\n this.__isDisposing = false;\n this._instanceId = _base_common_strings_js__WEBPACK_IMPORTED_MODULE_5__.singleLetterHash(MODEL_ID);\n this._lastDecorationId = 0;\n this._decorations = Object.create(null);\n this._decorationsTree = new DecorationsTrees();\n this._commandManager = new _editStack_js__WEBPACK_IMPORTED_MODULE_19__.EditStack(this, this._undoRedoService);\n this._isUndoing = false;\n this._isRedoing = false;\n this._trimAutoWhitespaceLines = null;\n this._register(this._decorationProvider.onDidChange(() => {\n this._onDidChangeDecorations.beginDeferredEmit();\n this._onDidChangeDecorations.fire();\n this._onDidChangeDecorations.endDeferredEmit();\n }));\n this._languageService.requestRichLanguageFeatures(languageId);\n }\n dispose() {\n this.__isDisposing = true;\n this._onWillDispose.fire();\n this._tokenizationTextModelPart.dispose();\n this._isDisposed = true;\n super.dispose();\n this._bufferDisposable.dispose();\n this.__isDisposing = false;\n // Manually release reference to previous text buffer to avoid large leaks\n // in case someone leaks a TextModel reference\n const emptyDisposedTextBuffer = new _pieceTreeTextBuffer_pieceTreeTextBuffer_js__WEBPACK_IMPORTED_MODULE_23__.PieceTreeTextBuffer([], '', '\\n', false, false, true, true);\n emptyDisposedTextBuffer.dispose();\n this._buffer = emptyDisposedTextBuffer;\n this._bufferDisposable = _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_4__.Disposable.None;\n }\n _assertNotDisposed() {\n if (this._isDisposed) {\n throw new Error('Model is disposed!');\n }\n }\n _emitContentChangedEvent(rawChange, change) {\n if (this.__isDisposing) {\n // Do not confuse listeners by emitting any event after disposing\n return;\n }\n this._tokenizationTextModelPart.handleDidChangeContent(change);\n this._bracketPairs.handleDidChangeContent(change);\n this._eventEmitter.fire(new _textModelEvents_js__WEBPACK_IMPORTED_MODULE_27__.InternalModelContentChangeEvent(rawChange, change));\n }\n setValue(value) {\n this._assertNotDisposed();\n if (value === null || value === undefined) {\n throw (0,_base_common_errors_js__WEBPACK_IMPORTED_MODULE_2__.illegalArgument)();\n }\n const { textBuffer, disposable } = createTextBuffer(value, this._options.defaultEOL);\n this._setValueFromTextBuffer(textBuffer, disposable);\n }\n _createContentChanged2(range, rangeOffset, rangeLength, text, isUndoing, isRedoing, isFlush, isEolChange) {\n return {\n changes: [{\n range: range,\n rangeOffset: rangeOffset,\n rangeLength: rangeLength,\n text: text,\n }],\n eol: this._buffer.getEOL(),\n isEolChange: isEolChange,\n versionId: this.getVersionId(),\n isUndoing: isUndoing,\n isRedoing: isRedoing,\n isFlush: isFlush\n };\n }\n _setValueFromTextBuffer(textBuffer, textBufferDisposable) {\n this._assertNotDisposed();\n const oldFullModelRange = this.getFullModelRange();\n const oldModelValueLength = this.getValueLengthInRange(oldFullModelRange);\n const endLineNumber = this.getLineCount();\n const endColumn = this.getLineMaxColumn(endLineNumber);\n this._buffer = textBuffer;\n this._bufferDisposable.dispose();\n this._bufferDisposable = textBufferDisposable;\n this._increaseVersionId();\n // Destroy all my decorations\n this._decorations = Object.create(null);\n this._decorationsTree = new DecorationsTrees();\n // Destroy my edit history and settings\n this._commandManager.clear();\n this._trimAutoWhitespaceLines = null;\n this._emitContentChangedEvent(new _textModelEvents_js__WEBPACK_IMPORTED_MODULE_27__.ModelRawContentChangedEvent([\n new _textModelEvents_js__WEBPACK_IMPORTED_MODULE_27__.ModelRawFlush()\n ], this._versionId, false, false), this._createContentChanged2(new _core_range_js__WEBPACK_IMPORTED_MODULE_11__.Range(1, 1, endLineNumber, endColumn), 0, oldModelValueLength, this.getValue(), false, false, true, false));\n }\n setEOL(eol) {\n this._assertNotDisposed();\n const newEOL = (eol === 1 /* model.EndOfLineSequence.CRLF */ ? '\\r\\n' : '\\n');\n if (this._buffer.getEOL() === newEOL) {\n // Nothing to do\n return;\n }\n const oldFullModelRange = this.getFullModelRange();\n const oldModelValueLength = this.getValueLengthInRange(oldFullModelRange);\n const endLineNumber = this.getLineCount();\n const endColumn = this.getLineMaxColumn(endLineNumber);\n this._onBeforeEOLChange();\n this._buffer.setEOL(newEOL);\n this._increaseVersionId();\n this._onAfterEOLChange();\n this._emitContentChangedEvent(new _textModelEvents_js__WEBPACK_IMPORTED_MODULE_27__.ModelRawContentChangedEvent([\n new _textModelEvents_js__WEBPACK_IMPORTED_MODULE_27__.ModelRawEOLChanged()\n ], this._versionId, false, false), this._createContentChanged2(new _core_range_js__WEBPACK_IMPORTED_MODULE_11__.Range(1, 1, endLineNumber, endColumn), 0, oldModelValueLength, this.getValue(), false, false, false, true));\n }\n _onBeforeEOLChange() {\n // Ensure all decorations get their `range` set.\n this._decorationsTree.ensureAllNodesHaveRanges(this);\n }\n _onAfterEOLChange() {\n // Transform back `range` to offsets\n const versionId = this.getVersionId();\n const allDecorations = this._decorationsTree.collectNodesPostOrder();\n for (let i = 0, len = allDecorations.length; i < len; i++) {\n const node = allDecorations[i];\n const range = node.range; // the range is defined due to `_onBeforeEOLChange`\n const delta = node.cachedAbsoluteStart - node.start;\n const startOffset = this._buffer.getOffsetAt(range.startLineNumber, range.startColumn);\n const endOffset = this._buffer.getOffsetAt(range.endLineNumber, range.endColumn);\n node.cachedAbsoluteStart = startOffset;\n node.cachedAbsoluteEnd = endOffset;\n node.cachedVersionId = versionId;\n node.start = startOffset - delta;\n node.end = endOffset - delta;\n (0,_intervalTree_js__WEBPACK_IMPORTED_MODULE_22__.recomputeMaxEnd)(node);\n }\n }\n onBeforeAttached() {\n this._attachedEditorCount++;\n if (this._attachedEditorCount === 1) {\n this._tokenizationTextModelPart.handleDidChangeAttached();\n this._onDidChangeAttached.fire(undefined);\n }\n return this._attachedViews.attachView();\n }\n onBeforeDetached(view) {\n this._attachedEditorCount--;\n if (this._attachedEditorCount === 0) {\n this._tokenizationTextModelPart.handleDidChangeAttached();\n this._onDidChangeAttached.fire(undefined);\n }\n this._attachedViews.detachView(view);\n }\n isAttachedToEditor() {\n return this._attachedEditorCount > 0;\n }\n getAttachedEditorCount() {\n return this._attachedEditorCount;\n }\n isTooLargeForSyncing() {\n return this._isTooLargeForSyncing;\n }\n isTooLargeForTokenization() {\n return this._isTooLargeForTokenization;\n }\n isTooLargeForHeapOperation() {\n return this._isTooLargeForHeapOperation;\n }\n isDisposed() {\n return this._isDisposed;\n }\n isDominatedByLongLines() {\n this._assertNotDisposed();\n if (this.isTooLargeForTokenization()) {\n // Cannot word wrap huge files anyways, so it doesn't really matter\n return false;\n }\n let smallLineCharCount = 0;\n let longLineCharCount = 0;\n const lineCount = this._buffer.getLineCount();\n for (let lineNumber = 1; lineNumber <= lineCount; lineNumber++) {\n const lineLength = this._buffer.getLineLength(lineNumber);\n if (lineLength >= LONG_LINE_BOUNDARY) {\n longLineCharCount += lineLength;\n }\n else {\n smallLineCharCount += lineLength;\n }\n }\n return (longLineCharCount > smallLineCharCount);\n }\n get uri() {\n return this._associatedResource;\n }\n //#region Options\n getOptions() {\n this._assertNotDisposed();\n return this._options;\n }\n getFormattingOptions() {\n return {\n tabSize: this._options.indentSize,\n insertSpaces: this._options.insertSpaces\n };\n }\n updateOptions(_newOpts) {\n this._assertNotDisposed();\n const tabSize = (typeof _newOpts.tabSize !== 'undefined') ? _newOpts.tabSize : this._options.tabSize;\n const indentSize = (typeof _newOpts.indentSize !== 'undefined') ? _newOpts.indentSize : this._options.originalIndentSize;\n const insertSpaces = (typeof _newOpts.insertSpaces !== 'undefined') ? _newOpts.insertSpaces : this._options.insertSpaces;\n const trimAutoWhitespace = (typeof _newOpts.trimAutoWhitespace !== 'undefined') ? _newOpts.trimAutoWhitespace : this._options.trimAutoWhitespace;\n const bracketPairColorizationOptions = (typeof _newOpts.bracketColorizationOptions !== 'undefined') ? _newOpts.bracketColorizationOptions : this._options.bracketPairColorizationOptions;\n const newOpts = new _model_js__WEBPACK_IMPORTED_MODULE_16__.TextModelResolvedOptions({\n tabSize: tabSize,\n indentSize: indentSize,\n insertSpaces: insertSpaces,\n defaultEOL: this._options.defaultEOL,\n trimAutoWhitespace: trimAutoWhitespace,\n bracketPairColorizationOptions,\n });\n if (this._options.equals(newOpts)) {\n return;\n }\n const e = this._options.createChangeEvent(newOpts);\n this._options = newOpts;\n this._bracketPairs.handleDidChangeOptions(e);\n this._decorationProvider.handleDidChangeOptions(e);\n this._onDidChangeOptions.fire(e);\n }\n detectIndentation(defaultInsertSpaces, defaultTabSize) {\n this._assertNotDisposed();\n const guessedIndentation = (0,_indentationGuesser_js__WEBPACK_IMPORTED_MODULE_21__.guessIndentation)(this._buffer, defaultTabSize, defaultInsertSpaces);\n this.updateOptions({\n insertSpaces: guessedIndentation.insertSpaces,\n tabSize: guessedIndentation.tabSize,\n indentSize: guessedIndentation.tabSize, // TODO@Alex: guess indentSize independent of tabSize\n });\n }\n normalizeIndentation(str) {\n this._assertNotDisposed();\n return (0,_core_indentation_js__WEBPACK_IMPORTED_MODULE_8__.normalizeIndentation)(str, this._options.indentSize, this._options.insertSpaces);\n }\n //#endregion\n //#region Reading\n getVersionId() {\n this._assertNotDisposed();\n return this._versionId;\n }\n mightContainRTL() {\n return this._buffer.mightContainRTL();\n }\n mightContainUnusualLineTerminators() {\n return this._buffer.mightContainUnusualLineTerminators();\n }\n removeUnusualLineTerminators(selections = null) {\n const matches = this.findMatches(_base_common_strings_js__WEBPACK_IMPORTED_MODULE_5__.UNUSUAL_LINE_TERMINATORS.source, false, true, false, null, false, 1073741824 /* Constants.MAX_SAFE_SMALL_INTEGER */);\n this._buffer.resetMightContainUnusualLineTerminators();\n this.pushEditOperations(selections, matches.map(m => ({ range: m.range, text: null })), () => null);\n }\n mightContainNonBasicASCII() {\n return this._buffer.mightContainNonBasicASCII();\n }\n getAlternativeVersionId() {\n this._assertNotDisposed();\n return this._alternativeVersionId;\n }\n getInitialUndoRedoSnapshot() {\n this._assertNotDisposed();\n return this._initialUndoRedoSnapshot;\n }\n getOffsetAt(rawPosition) {\n this._assertNotDisposed();\n const position = this._validatePosition(rawPosition.lineNumber, rawPosition.column, 0 /* StringOffsetValidationType.Relaxed */);\n return this._buffer.getOffsetAt(position.lineNumber, position.column);\n }\n getPositionAt(rawOffset) {\n this._assertNotDisposed();\n const offset = (Math.min(this._buffer.getLength(), Math.max(0, rawOffset)));\n return this._buffer.getPositionAt(offset);\n }\n _increaseVersionId() {\n this._versionId = this._versionId + 1;\n this._alternativeVersionId = this._versionId;\n }\n _overwriteVersionId(versionId) {\n this._versionId = versionId;\n }\n _overwriteAlternativeVersionId(newAlternativeVersionId) {\n this._alternativeVersionId = newAlternativeVersionId;\n }\n _overwriteInitialUndoRedoSnapshot(newInitialUndoRedoSnapshot) {\n this._initialUndoRedoSnapshot = newInitialUndoRedoSnapshot;\n }\n getValue(eol, preserveBOM = false) {\n this._assertNotDisposed();\n if (this.isTooLargeForHeapOperation()) {\n throw new _base_common_errors_js__WEBPACK_IMPORTED_MODULE_2__.BugIndicatingError('Operation would exceed heap memory limits');\n }\n const fullModelRange = this.getFullModelRange();\n const fullModelValue = this.getValueInRange(fullModelRange, eol);\n if (preserveBOM) {\n return this._buffer.getBOM() + fullModelValue;\n }\n return fullModelValue;\n }\n createSnapshot(preserveBOM = false) {\n return new TextModelSnapshot(this._buffer.createSnapshot(preserveBOM));\n }\n getValueLength(eol, preserveBOM = false) {\n this._assertNotDisposed();\n const fullModelRange = this.getFullModelRange();\n const fullModelValue = this.getValueLengthInRange(fullModelRange, eol);\n if (preserveBOM) {\n return this._buffer.getBOM().length + fullModelValue;\n }\n return fullModelValue;\n }\n getValueInRange(rawRange, eol = 0 /* model.EndOfLinePreference.TextDefined */) {\n this._assertNotDisposed();\n return this._buffer.getValueInRange(this.validateRange(rawRange), eol);\n }\n getValueLengthInRange(rawRange, eol = 0 /* model.EndOfLinePreference.TextDefined */) {\n this._assertNotDisposed();\n return this._buffer.getValueLengthInRange(this.validateRange(rawRange), eol);\n }\n getCharacterCountInRange(rawRange, eol = 0 /* model.EndOfLinePreference.TextDefined */) {\n this._assertNotDisposed();\n return this._buffer.getCharacterCountInRange(this.validateRange(rawRange), eol);\n }\n getLineCount() {\n this._assertNotDisposed();\n return this._buffer.getLineCount();\n }\n getLineContent(lineNumber) {\n this._assertNotDisposed();\n if (lineNumber < 1 || lineNumber > this.getLineCount()) {\n throw new _base_common_errors_js__WEBPACK_IMPORTED_MODULE_2__.BugIndicatingError('Illegal value for lineNumber');\n }\n return this._buffer.getLineContent(lineNumber);\n }\n getLineLength(lineNumber) {\n this._assertNotDisposed();\n if (lineNumber < 1 || lineNumber > this.getLineCount()) {\n throw new _base_common_errors_js__WEBPACK_IMPORTED_MODULE_2__.BugIndicatingError('Illegal value for lineNumber');\n }\n return this._buffer.getLineLength(lineNumber);\n }\n getLinesContent() {\n this._assertNotDisposed();\n if (this.isTooLargeForHeapOperation()) {\n throw new _base_common_errors_js__WEBPACK_IMPORTED_MODULE_2__.BugIndicatingError('Operation would exceed heap memory limits');\n }\n return this._buffer.getLinesContent();\n }\n getEOL() {\n this._assertNotDisposed();\n return this._buffer.getEOL();\n }\n getEndOfLineSequence() {\n this._assertNotDisposed();\n return (this._buffer.getEOL() === '\\n'\n ? 0 /* model.EndOfLineSequence.LF */\n : 1 /* model.EndOfLineSequence.CRLF */);\n }\n getLineMinColumn(lineNumber) {\n this._assertNotDisposed();\n return 1;\n }\n getLineMaxColumn(lineNumber) {\n this._assertNotDisposed();\n if (lineNumber < 1 || lineNumber > this.getLineCount()) {\n throw new _base_common_errors_js__WEBPACK_IMPORTED_MODULE_2__.BugIndicatingError('Illegal value for lineNumber');\n }\n return this._buffer.getLineLength(lineNumber) + 1;\n }\n getLineFirstNonWhitespaceColumn(lineNumber) {\n this._assertNotDisposed();\n if (lineNumber < 1 || lineNumber > this.getLineCount()) {\n throw new _base_common_errors_js__WEBPACK_IMPORTED_MODULE_2__.BugIndicatingError('Illegal value for lineNumber');\n }\n return this._buffer.getLineFirstNonWhitespaceColumn(lineNumber);\n }\n getLineLastNonWhitespaceColumn(lineNumber) {\n this._assertNotDisposed();\n if (lineNumber < 1 || lineNumber > this.getLineCount()) {\n throw new _base_common_errors_js__WEBPACK_IMPORTED_MODULE_2__.BugIndicatingError('Illegal value for lineNumber');\n }\n return this._buffer.getLineLastNonWhitespaceColumn(lineNumber);\n }\n /**\n * Validates `range` is within buffer bounds, but allows it to sit in between surrogate pairs, etc.\n * Will try to not allocate if possible.\n */\n _validateRangeRelaxedNoAllocations(range) {\n const linesCount = this._buffer.getLineCount();\n const initialStartLineNumber = range.startLineNumber;\n const initialStartColumn = range.startColumn;\n let startLineNumber = Math.floor((typeof initialStartLineNumber === 'number' && !isNaN(initialStartLineNumber)) ? initialStartLineNumber : 1);\n let startColumn = Math.floor((typeof initialStartColumn === 'number' && !isNaN(initialStartColumn)) ? initialStartColumn : 1);\n if (startLineNumber < 1) {\n startLineNumber = 1;\n startColumn = 1;\n }\n else if (startLineNumber > linesCount) {\n startLineNumber = linesCount;\n startColumn = this.getLineMaxColumn(startLineNumber);\n }\n else {\n if (startColumn <= 1) {\n startColumn = 1;\n }\n else {\n const maxColumn = this.getLineMaxColumn(startLineNumber);\n if (startColumn >= maxColumn) {\n startColumn = maxColumn;\n }\n }\n }\n const initialEndLineNumber = range.endLineNumber;\n const initialEndColumn = range.endColumn;\n let endLineNumber = Math.floor((typeof initialEndLineNumber === 'number' && !isNaN(initialEndLineNumber)) ? initialEndLineNumber : 1);\n let endColumn = Math.floor((typeof initialEndColumn === 'number' && !isNaN(initialEndColumn)) ? initialEndColumn : 1);\n if (endLineNumber < 1) {\n endLineNumber = 1;\n endColumn = 1;\n }\n else if (endLineNumber > linesCount) {\n endLineNumber = linesCount;\n endColumn = this.getLineMaxColumn(endLineNumber);\n }\n else {\n if (endColumn <= 1) {\n endColumn = 1;\n }\n else {\n const maxColumn = this.getLineMaxColumn(endLineNumber);\n if (endColumn >= maxColumn) {\n endColumn = maxColumn;\n }\n }\n }\n if (initialStartLineNumber === startLineNumber\n && initialStartColumn === startColumn\n && initialEndLineNumber === endLineNumber\n && initialEndColumn === endColumn\n && range instanceof _core_range_js__WEBPACK_IMPORTED_MODULE_11__.Range\n && !(range instanceof _core_selection_js__WEBPACK_IMPORTED_MODULE_12__.Selection)) {\n return range;\n }\n return new _core_range_js__WEBPACK_IMPORTED_MODULE_11__.Range(startLineNumber, startColumn, endLineNumber, endColumn);\n }\n _isValidPosition(lineNumber, column, validationType) {\n if (typeof lineNumber !== 'number' || typeof column !== 'number') {\n return false;\n }\n if (isNaN(lineNumber) || isNaN(column)) {\n return false;\n }\n if (lineNumber < 1 || column < 1) {\n return false;\n }\n if ((lineNumber | 0) !== lineNumber || (column | 0) !== column) {\n return false;\n }\n const lineCount = this._buffer.getLineCount();\n if (lineNumber > lineCount) {\n return false;\n }\n if (column === 1) {\n return true;\n }\n const maxColumn = this.getLineMaxColumn(lineNumber);\n if (column > maxColumn) {\n return false;\n }\n if (validationType === 1 /* StringOffsetValidationType.SurrogatePairs */) {\n // !!At this point, column > 1\n const charCodeBefore = this._buffer.getLineCharCode(lineNumber, column - 2);\n if (_base_common_strings_js__WEBPACK_IMPORTED_MODULE_5__.isHighSurrogate(charCodeBefore)) {\n return false;\n }\n }\n return true;\n }\n _validatePosition(_lineNumber, _column, validationType) {\n const lineNumber = Math.floor((typeof _lineNumber === 'number' && !isNaN(_lineNumber)) ? _lineNumber : 1);\n const column = Math.floor((typeof _column === 'number' && !isNaN(_column)) ? _column : 1);\n const lineCount = this._buffer.getLineCount();\n if (lineNumber < 1) {\n return new _core_position_js__WEBPACK_IMPORTED_MODULE_10__.Position(1, 1);\n }\n if (lineNumber > lineCount) {\n return new _core_position_js__WEBPACK_IMPORTED_MODULE_10__.Position(lineCount, this.getLineMaxColumn(lineCount));\n }\n if (column <= 1) {\n return new _core_position_js__WEBPACK_IMPORTED_MODULE_10__.Position(lineNumber, 1);\n }\n const maxColumn = this.getLineMaxColumn(lineNumber);\n if (column >= maxColumn) {\n return new _core_position_js__WEBPACK_IMPORTED_MODULE_10__.Position(lineNumber, maxColumn);\n }\n if (validationType === 1 /* StringOffsetValidationType.SurrogatePairs */) {\n // If the position would end up in the middle of a high-low surrogate pair,\n // we move it to before the pair\n // !!At this point, column > 1\n const charCodeBefore = this._buffer.getLineCharCode(lineNumber, column - 2);\n if (_base_common_strings_js__WEBPACK_IMPORTED_MODULE_5__.isHighSurrogate(charCodeBefore)) {\n return new _core_position_js__WEBPACK_IMPORTED_MODULE_10__.Position(lineNumber, column - 1);\n }\n }\n return new _core_position_js__WEBPACK_IMPORTED_MODULE_10__.Position(lineNumber, column);\n }\n validatePosition(position) {\n const validationType = 1 /* StringOffsetValidationType.SurrogatePairs */;\n this._assertNotDisposed();\n // Avoid object allocation and cover most likely case\n if (position instanceof _core_position_js__WEBPACK_IMPORTED_MODULE_10__.Position) {\n if (this._isValidPosition(position.lineNumber, position.column, validationType)) {\n return position;\n }\n }\n return this._validatePosition(position.lineNumber, position.column, validationType);\n }\n _isValidRange(range, validationType) {\n const startLineNumber = range.startLineNumber;\n const startColumn = range.startColumn;\n const endLineNumber = range.endLineNumber;\n const endColumn = range.endColumn;\n if (!this._isValidPosition(startLineNumber, startColumn, 0 /* StringOffsetValidationType.Relaxed */)) {\n return false;\n }\n if (!this._isValidPosition(endLineNumber, endColumn, 0 /* StringOffsetValidationType.Relaxed */)) {\n return false;\n }\n if (validationType === 1 /* StringOffsetValidationType.SurrogatePairs */) {\n const charCodeBeforeStart = (startColumn > 1 ? this._buffer.getLineCharCode(startLineNumber, startColumn - 2) : 0);\n const charCodeBeforeEnd = (endColumn > 1 && endColumn <= this._buffer.getLineLength(endLineNumber) ? this._buffer.getLineCharCode(endLineNumber, endColumn - 2) : 0);\n const startInsideSurrogatePair = _base_common_strings_js__WEBPACK_IMPORTED_MODULE_5__.isHighSurrogate(charCodeBeforeStart);\n const endInsideSurrogatePair = _base_common_strings_js__WEBPACK_IMPORTED_MODULE_5__.isHighSurrogate(charCodeBeforeEnd);\n if (!startInsideSurrogatePair && !endInsideSurrogatePair) {\n return true;\n }\n return false;\n }\n return true;\n }\n validateRange(_range) {\n const validationType = 1 /* StringOffsetValidationType.SurrogatePairs */;\n this._assertNotDisposed();\n // Avoid object allocation and cover most likely case\n if ((_range instanceof _core_range_js__WEBPACK_IMPORTED_MODULE_11__.Range) && !(_range instanceof _core_selection_js__WEBPACK_IMPORTED_MODULE_12__.Selection)) {\n if (this._isValidRange(_range, validationType)) {\n return _range;\n }\n }\n const start = this._validatePosition(_range.startLineNumber, _range.startColumn, 0 /* StringOffsetValidationType.Relaxed */);\n const end = this._validatePosition(_range.endLineNumber, _range.endColumn, 0 /* StringOffsetValidationType.Relaxed */);\n const startLineNumber = start.lineNumber;\n const startColumn = start.column;\n const endLineNumber = end.lineNumber;\n const endColumn = end.column;\n if (validationType === 1 /* StringOffsetValidationType.SurrogatePairs */) {\n const charCodeBeforeStart = (startColumn > 1 ? this._buffer.getLineCharCode(startLineNumber, startColumn - 2) : 0);\n const charCodeBeforeEnd = (endColumn > 1 && endColumn <= this._buffer.getLineLength(endLineNumber) ? this._buffer.getLineCharCode(endLineNumber, endColumn - 2) : 0);\n const startInsideSurrogatePair = _base_common_strings_js__WEBPACK_IMPORTED_MODULE_5__.isHighSurrogate(charCodeBeforeStart);\n const endInsideSurrogatePair = _base_common_strings_js__WEBPACK_IMPORTED_MODULE_5__.isHighSurrogate(charCodeBeforeEnd);\n if (!startInsideSurrogatePair && !endInsideSurrogatePair) {\n return new _core_range_js__WEBPACK_IMPORTED_MODULE_11__.Range(startLineNumber, startColumn, endLineNumber, endColumn);\n }\n if (startLineNumber === endLineNumber && startColumn === endColumn) {\n // do not expand a collapsed range, simply move it to a valid location\n return new _core_range_js__WEBPACK_IMPORTED_MODULE_11__.Range(startLineNumber, startColumn - 1, endLineNumber, endColumn - 1);\n }\n if (startInsideSurrogatePair && endInsideSurrogatePair) {\n // expand range at both ends\n return new _core_range_js__WEBPACK_IMPORTED_MODULE_11__.Range(startLineNumber, startColumn - 1, endLineNumber, endColumn + 1);\n }\n if (startInsideSurrogatePair) {\n // only expand range at the start\n return new _core_range_js__WEBPACK_IMPORTED_MODULE_11__.Range(startLineNumber, startColumn - 1, endLineNumber, endColumn);\n }\n // only expand range at the end\n return new _core_range_js__WEBPACK_IMPORTED_MODULE_11__.Range(startLineNumber, startColumn, endLineNumber, endColumn + 1);\n }\n return new _core_range_js__WEBPACK_IMPORTED_MODULE_11__.Range(startLineNumber, startColumn, endLineNumber, endColumn);\n }\n modifyPosition(rawPosition, offset) {\n this._assertNotDisposed();\n const candidate = this.getOffsetAt(rawPosition) + offset;\n return this.getPositionAt(Math.min(this._buffer.getLength(), Math.max(0, candidate)));\n }\n getFullModelRange() {\n this._assertNotDisposed();\n const lineCount = this.getLineCount();\n return new _core_range_js__WEBPACK_IMPORTED_MODULE_11__.Range(1, 1, lineCount, this.getLineMaxColumn(lineCount));\n }\n findMatchesLineByLine(searchRange, searchData, captureMatches, limitResultCount) {\n return this._buffer.findMatchesLineByLine(searchRange, searchData, captureMatches, limitResultCount);\n }\n findMatches(searchString, rawSearchScope, isRegex, matchCase, wordSeparators, captureMatches, limitResultCount = LIMIT_FIND_COUNT) {\n this._assertNotDisposed();\n let searchRanges = null;\n if (rawSearchScope !== null) {\n if (!Array.isArray(rawSearchScope)) {\n rawSearchScope = [rawSearchScope];\n }\n if (rawSearchScope.every((searchScope) => _core_range_js__WEBPACK_IMPORTED_MODULE_11__.Range.isIRange(searchScope))) {\n searchRanges = rawSearchScope.map((searchScope) => this.validateRange(searchScope));\n }\n }\n if (searchRanges === null) {\n searchRanges = [this.getFullModelRange()];\n }\n searchRanges = searchRanges.sort((d1, d2) => d1.startLineNumber - d2.startLineNumber || d1.startColumn - d2.startColumn);\n const uniqueSearchRanges = [];\n uniqueSearchRanges.push(searchRanges.reduce((prev, curr) => {\n if (_core_range_js__WEBPACK_IMPORTED_MODULE_11__.Range.areIntersecting(prev, curr)) {\n return prev.plusRange(curr);\n }\n uniqueSearchRanges.push(prev);\n return curr;\n }));\n let matchMapper;\n if (!isRegex && searchString.indexOf('\\n') < 0) {\n // not regex, not multi line\n const searchParams = new _textModelSearch_js__WEBPACK_IMPORTED_MODULE_25__.SearchParams(searchString, isRegex, matchCase, wordSeparators);\n const searchData = searchParams.parseSearchRequest();\n if (!searchData) {\n return [];\n }\n matchMapper = (searchRange) => this.findMatchesLineByLine(searchRange, searchData, captureMatches, limitResultCount);\n }\n else {\n matchMapper = (searchRange) => _textModelSearch_js__WEBPACK_IMPORTED_MODULE_25__.TextModelSearch.findMatches(this, new _textModelSearch_js__WEBPACK_IMPORTED_MODULE_25__.SearchParams(searchString, isRegex, matchCase, wordSeparators), searchRange, captureMatches, limitResultCount);\n }\n return uniqueSearchRanges.map(matchMapper).reduce((arr, matches) => arr.concat(matches), []);\n }\n findNextMatch(searchString, rawSearchStart, isRegex, matchCase, wordSeparators, captureMatches) {\n this._assertNotDisposed();\n const searchStart = this.validatePosition(rawSearchStart);\n if (!isRegex && searchString.indexOf('\\n') < 0) {\n const searchParams = new _textModelSearch_js__WEBPACK_IMPORTED_MODULE_25__.SearchParams(searchString, isRegex, matchCase, wordSeparators);\n const searchData = searchParams.parseSearchRequest();\n if (!searchData) {\n return null;\n }\n const lineCount = this.getLineCount();\n let searchRange = new _core_range_js__WEBPACK_IMPORTED_MODULE_11__.Range(searchStart.lineNumber, searchStart.column, lineCount, this.getLineMaxColumn(lineCount));\n let ret = this.findMatchesLineByLine(searchRange, searchData, captureMatches, 1);\n _textModelSearch_js__WEBPACK_IMPORTED_MODULE_25__.TextModelSearch.findNextMatch(this, new _textModelSearch_js__WEBPACK_IMPORTED_MODULE_25__.SearchParams(searchString, isRegex, matchCase, wordSeparators), searchStart, captureMatches);\n if (ret.length > 0) {\n return ret[0];\n }\n searchRange = new _core_range_js__WEBPACK_IMPORTED_MODULE_11__.Range(1, 1, searchStart.lineNumber, this.getLineMaxColumn(searchStart.lineNumber));\n ret = this.findMatchesLineByLine(searchRange, searchData, captureMatches, 1);\n if (ret.length > 0) {\n return ret[0];\n }\n return null;\n }\n return _textModelSearch_js__WEBPACK_IMPORTED_MODULE_25__.TextModelSearch.findNextMatch(this, new _textModelSearch_js__WEBPACK_IMPORTED_MODULE_25__.SearchParams(searchString, isRegex, matchCase, wordSeparators), searchStart, captureMatches);\n }\n findPreviousMatch(searchString, rawSearchStart, isRegex, matchCase, wordSeparators, captureMatches) {\n this._assertNotDisposed();\n const searchStart = this.validatePosition(rawSearchStart);\n return _textModelSearch_js__WEBPACK_IMPORTED_MODULE_25__.TextModelSearch.findPreviousMatch(this, new _textModelSearch_js__WEBPACK_IMPORTED_MODULE_25__.SearchParams(searchString, isRegex, matchCase, wordSeparators), searchStart, captureMatches);\n }\n //#endregion\n //#region Editing\n pushStackElement() {\n this._commandManager.pushStackElement();\n }\n popStackElement() {\n this._commandManager.popStackElement();\n }\n pushEOL(eol) {\n const currentEOL = (this.getEOL() === '\\n' ? 0 /* model.EndOfLineSequence.LF */ : 1 /* model.EndOfLineSequence.CRLF */);\n if (currentEOL === eol) {\n return;\n }\n try {\n this._onDidChangeDecorations.beginDeferredEmit();\n this._eventEmitter.beginDeferredEmit();\n if (this._initialUndoRedoSnapshot === null) {\n this._initialUndoRedoSnapshot = this._undoRedoService.createSnapshot(this.uri);\n }\n this._commandManager.pushEOL(eol);\n }\n finally {\n this._eventEmitter.endDeferredEmit();\n this._onDidChangeDecorations.endDeferredEmit();\n }\n }\n _validateEditOperation(rawOperation) {\n if (rawOperation instanceof _model_js__WEBPACK_IMPORTED_MODULE_16__.ValidAnnotatedEditOperation) {\n return rawOperation;\n }\n return new _model_js__WEBPACK_IMPORTED_MODULE_16__.ValidAnnotatedEditOperation(rawOperation.identifier || null, this.validateRange(rawOperation.range), rawOperation.text, rawOperation.forceMoveMarkers || false, rawOperation.isAutoWhitespaceEdit || false, rawOperation._isTracked || false);\n }\n _validateEditOperations(rawOperations) {\n const result = [];\n for (let i = 0, len = rawOperations.length; i < len; i++) {\n result[i] = this._validateEditOperation(rawOperations[i]);\n }\n return result;\n }\n pushEditOperations(beforeCursorState, editOperations, cursorStateComputer, group) {\n try {\n this._onDidChangeDecorations.beginDeferredEmit();\n this._eventEmitter.beginDeferredEmit();\n return this._pushEditOperations(beforeCursorState, this._validateEditOperations(editOperations), cursorStateComputer, group);\n }\n finally {\n this._eventEmitter.endDeferredEmit();\n this._onDidChangeDecorations.endDeferredEmit();\n }\n }\n _pushEditOperations(beforeCursorState, editOperations, cursorStateComputer, group) {\n if (this._options.trimAutoWhitespace && this._trimAutoWhitespaceLines) {\n // Go through each saved line number and insert a trim whitespace edit\n // if it is safe to do so (no conflicts with other edits).\n const incomingEdits = editOperations.map((op) => {\n return {\n range: this.validateRange(op.range),\n text: op.text\n };\n });\n // Sometimes, auto-formatters change ranges automatically which can cause undesired auto whitespace trimming near the cursor\n // We'll use the following heuristic: if the edits occur near the cursor, then it's ok to trim auto whitespace\n let editsAreNearCursors = true;\n if (beforeCursorState) {\n for (let i = 0, len = beforeCursorState.length; i < len; i++) {\n const sel = beforeCursorState[i];\n let foundEditNearSel = false;\n for (let j = 0, lenJ = incomingEdits.length; j < lenJ; j++) {\n const editRange = incomingEdits[j].range;\n const selIsAbove = editRange.startLineNumber > sel.endLineNumber;\n const selIsBelow = sel.startLineNumber > editRange.endLineNumber;\n if (!selIsAbove && !selIsBelow) {\n foundEditNearSel = true;\n break;\n }\n }\n if (!foundEditNearSel) {\n editsAreNearCursors = false;\n break;\n }\n }\n }\n if (editsAreNearCursors) {\n for (let i = 0, len = this._trimAutoWhitespaceLines.length; i < len; i++) {\n const trimLineNumber = this._trimAutoWhitespaceLines[i];\n const maxLineColumn = this.getLineMaxColumn(trimLineNumber);\n let allowTrimLine = true;\n for (let j = 0, lenJ = incomingEdits.length; j < lenJ; j++) {\n const editRange = incomingEdits[j].range;\n const editText = incomingEdits[j].text;\n if (trimLineNumber < editRange.startLineNumber || trimLineNumber > editRange.endLineNumber) {\n // `trimLine` is completely outside this edit\n continue;\n }\n // At this point:\n // editRange.startLineNumber <= trimLine <= editRange.endLineNumber\n if (trimLineNumber === editRange.startLineNumber && editRange.startColumn === maxLineColumn\n && editRange.isEmpty() && editText && editText.length > 0 && editText.charAt(0) === '\\n') {\n // This edit inserts a new line (and maybe other text) after `trimLine`\n continue;\n }\n if (trimLineNumber === editRange.startLineNumber && editRange.startColumn === 1\n && editRange.isEmpty() && editText && editText.length > 0 && editText.charAt(editText.length - 1) === '\\n') {\n // This edit inserts a new line (and maybe other text) before `trimLine`\n continue;\n }\n // Looks like we can't trim this line as it would interfere with an incoming edit\n allowTrimLine = false;\n break;\n }\n if (allowTrimLine) {\n const trimRange = new _core_range_js__WEBPACK_IMPORTED_MODULE_11__.Range(trimLineNumber, 1, trimLineNumber, maxLineColumn);\n editOperations.push(new _model_js__WEBPACK_IMPORTED_MODULE_16__.ValidAnnotatedEditOperation(null, trimRange, null, false, false, false));\n }\n }\n }\n this._trimAutoWhitespaceLines = null;\n }\n if (this._initialUndoRedoSnapshot === null) {\n this._initialUndoRedoSnapshot = this._undoRedoService.createSnapshot(this.uri);\n }\n return this._commandManager.pushEditOperation(beforeCursorState, editOperations, cursorStateComputer, group);\n }\n _applyUndo(changes, eol, resultingAlternativeVersionId, resultingSelection) {\n const edits = changes.map((change) => {\n const rangeStart = this.getPositionAt(change.newPosition);\n const rangeEnd = this.getPositionAt(change.newEnd);\n return {\n range: new _core_range_js__WEBPACK_IMPORTED_MODULE_11__.Range(rangeStart.lineNumber, rangeStart.column, rangeEnd.lineNumber, rangeEnd.column),\n text: change.oldText\n };\n });\n this._applyUndoRedoEdits(edits, eol, true, false, resultingAlternativeVersionId, resultingSelection);\n }\n _applyRedo(changes, eol, resultingAlternativeVersionId, resultingSelection) {\n const edits = changes.map((change) => {\n const rangeStart = this.getPositionAt(change.oldPosition);\n const rangeEnd = this.getPositionAt(change.oldEnd);\n return {\n range: new _core_range_js__WEBPACK_IMPORTED_MODULE_11__.Range(rangeStart.lineNumber, rangeStart.column, rangeEnd.lineNumber, rangeEnd.column),\n text: change.newText\n };\n });\n this._applyUndoRedoEdits(edits, eol, false, true, resultingAlternativeVersionId, resultingSelection);\n }\n _applyUndoRedoEdits(edits, eol, isUndoing, isRedoing, resultingAlternativeVersionId, resultingSelection) {\n try {\n this._onDidChangeDecorations.beginDeferredEmit();\n this._eventEmitter.beginDeferredEmit();\n this._isUndoing = isUndoing;\n this._isRedoing = isRedoing;\n this.applyEdits(edits, false);\n this.setEOL(eol);\n this._overwriteAlternativeVersionId(resultingAlternativeVersionId);\n }\n finally {\n this._isUndoing = false;\n this._isRedoing = false;\n this._eventEmitter.endDeferredEmit(resultingSelection);\n this._onDidChangeDecorations.endDeferredEmit();\n }\n }\n applyEdits(rawOperations, computeUndoEdits = false) {\n try {\n this._onDidChangeDecorations.beginDeferredEmit();\n this._eventEmitter.beginDeferredEmit();\n const operations = this._validateEditOperations(rawOperations);\n return this._doApplyEdits(operations, computeUndoEdits);\n }\n finally {\n this._eventEmitter.endDeferredEmit();\n this._onDidChangeDecorations.endDeferredEmit();\n }\n }\n _doApplyEdits(rawOperations, computeUndoEdits) {\n const oldLineCount = this._buffer.getLineCount();\n const result = this._buffer.applyEdits(rawOperations, this._options.trimAutoWhitespace, computeUndoEdits);\n const newLineCount = this._buffer.getLineCount();\n const contentChanges = result.changes;\n this._trimAutoWhitespaceLines = result.trimAutoWhitespaceLineNumbers;\n if (contentChanges.length !== 0) {\n // We do a first pass to update decorations\n // because we want to read decorations in the second pass\n // where we will emit content change events\n // and we want to read the final decorations\n for (let i = 0, len = contentChanges.length; i < len; i++) {\n const change = contentChanges[i];\n this._decorationsTree.acceptReplace(change.rangeOffset, change.rangeLength, change.text.length, change.forceMoveMarkers);\n }\n const rawContentChanges = [];\n this._increaseVersionId();\n let lineCount = oldLineCount;\n for (let i = 0, len = contentChanges.length; i < len; i++) {\n const change = contentChanges[i];\n const [eolCount] = (0,_core_eolCounter_js__WEBPACK_IMPORTED_MODULE_7__.countEOL)(change.text);\n this._onDidChangeDecorations.fire();\n const startLineNumber = change.range.startLineNumber;\n const endLineNumber = change.range.endLineNumber;\n const deletingLinesCnt = endLineNumber - startLineNumber;\n const insertingLinesCnt = eolCount;\n const editingLinesCnt = Math.min(deletingLinesCnt, insertingLinesCnt);\n const changeLineCountDelta = (insertingLinesCnt - deletingLinesCnt);\n const currentEditStartLineNumber = newLineCount - lineCount - changeLineCountDelta + startLineNumber;\n const firstEditLineNumber = currentEditStartLineNumber;\n const lastInsertedLineNumber = currentEditStartLineNumber + insertingLinesCnt;\n const decorationsWithInjectedTextInEditedRange = this._decorationsTree.getInjectedTextInInterval(this, this.getOffsetAt(new _core_position_js__WEBPACK_IMPORTED_MODULE_10__.Position(firstEditLineNumber, 1)), this.getOffsetAt(new _core_position_js__WEBPACK_IMPORTED_MODULE_10__.Position(lastInsertedLineNumber, this.getLineMaxColumn(lastInsertedLineNumber))), 0);\n const injectedTextInEditedRange = _textModelEvents_js__WEBPACK_IMPORTED_MODULE_27__.LineInjectedText.fromDecorations(decorationsWithInjectedTextInEditedRange);\n const injectedTextInEditedRangeQueue = new _base_common_arrays_js__WEBPACK_IMPORTED_MODULE_0__.ArrayQueue(injectedTextInEditedRange);\n for (let j = editingLinesCnt; j >= 0; j--) {\n const editLineNumber = startLineNumber + j;\n const currentEditLineNumber = currentEditStartLineNumber + j;\n injectedTextInEditedRangeQueue.takeFromEndWhile(r => r.lineNumber > currentEditLineNumber);\n const decorationsInCurrentLine = injectedTextInEditedRangeQueue.takeFromEndWhile(r => r.lineNumber === currentEditLineNumber);\n rawContentChanges.push(new _textModelEvents_js__WEBPACK_IMPORTED_MODULE_27__.ModelRawLineChanged(editLineNumber, this.getLineContent(currentEditLineNumber), decorationsInCurrentLine));\n }\n if (editingLinesCnt < deletingLinesCnt) {\n // Must delete some lines\n const spliceStartLineNumber = startLineNumber + editingLinesCnt;\n rawContentChanges.push(new _textModelEvents_js__WEBPACK_IMPORTED_MODULE_27__.ModelRawLinesDeleted(spliceStartLineNumber + 1, endLineNumber));\n }\n if (editingLinesCnt < insertingLinesCnt) {\n const injectedTextInEditedRangeQueue = new _base_common_arrays_js__WEBPACK_IMPORTED_MODULE_0__.ArrayQueue(injectedTextInEditedRange);\n // Must insert some lines\n const spliceLineNumber = startLineNumber + editingLinesCnt;\n const cnt = insertingLinesCnt - editingLinesCnt;\n const fromLineNumber = newLineCount - lineCount - cnt + spliceLineNumber + 1;\n const injectedTexts = [];\n const newLines = [];\n for (let i = 0; i < cnt; i++) {\n const lineNumber = fromLineNumber + i;\n newLines[i] = this.getLineContent(lineNumber);\n injectedTextInEditedRangeQueue.takeWhile(r => r.lineNumber < lineNumber);\n injectedTexts[i] = injectedTextInEditedRangeQueue.takeWhile(r => r.lineNumber === lineNumber);\n }\n rawContentChanges.push(new _textModelEvents_js__WEBPACK_IMPORTED_MODULE_27__.ModelRawLinesInserted(spliceLineNumber + 1, startLineNumber + insertingLinesCnt, newLines, injectedTexts));\n }\n lineCount += changeLineCountDelta;\n }\n this._emitContentChangedEvent(new _textModelEvents_js__WEBPACK_IMPORTED_MODULE_27__.ModelRawContentChangedEvent(rawContentChanges, this.getVersionId(), this._isUndoing, this._isRedoing), {\n changes: contentChanges,\n eol: this._buffer.getEOL(),\n isEolChange: false,\n versionId: this.getVersionId(),\n isUndoing: this._isUndoing,\n isRedoing: this._isRedoing,\n isFlush: false\n });\n }\n return (result.reverseEdits === null ? undefined : result.reverseEdits);\n }\n undo() {\n return this._undoRedoService.undo(this.uri);\n }\n canUndo() {\n return this._undoRedoService.canUndo(this.uri);\n }\n redo() {\n return this._undoRedoService.redo(this.uri);\n }\n canRedo() {\n return this._undoRedoService.canRedo(this.uri);\n }\n //#endregion\n //#region Decorations\n handleBeforeFireDecorationsChangedEvent(affectedInjectedTextLines) {\n // This is called before the decoration changed event is fired.\n if (affectedInjectedTextLines === null || affectedInjectedTextLines.size === 0) {\n return;\n }\n const affectedLines = Array.from(affectedInjectedTextLines);\n const lineChangeEvents = affectedLines.map(lineNumber => new _textModelEvents_js__WEBPACK_IMPORTED_MODULE_27__.ModelRawLineChanged(lineNumber, this.getLineContent(lineNumber), this._getInjectedTextInLine(lineNumber)));\n this._onDidChangeInjectedText.fire(new _textModelEvents_js__WEBPACK_IMPORTED_MODULE_27__.ModelInjectedTextChangedEvent(lineChangeEvents));\n }\n changeDecorations(callback, ownerId = 0) {\n this._assertNotDisposed();\n try {\n this._onDidChangeDecorations.beginDeferredEmit();\n return this._changeDecorations(ownerId, callback);\n }\n finally {\n this._onDidChangeDecorations.endDeferredEmit();\n }\n }\n _changeDecorations(ownerId, callback) {\n const changeAccessor = {\n addDecoration: (range, options) => {\n return this._deltaDecorationsImpl(ownerId, [], [{ range: range, options: options }])[0];\n },\n changeDecoration: (id, newRange) => {\n this._changeDecorationImpl(id, newRange);\n },\n changeDecorationOptions: (id, options) => {\n this._changeDecorationOptionsImpl(id, _normalizeOptions(options));\n },\n removeDecoration: (id) => {\n this._deltaDecorationsImpl(ownerId, [id], []);\n },\n deltaDecorations: (oldDecorations, newDecorations) => {\n if (oldDecorations.length === 0 && newDecorations.length === 0) {\n // nothing to do\n return [];\n }\n return this._deltaDecorationsImpl(ownerId, oldDecorations, newDecorations);\n }\n };\n let result = null;\n try {\n result = callback(changeAccessor);\n }\n catch (e) {\n (0,_base_common_errors_js__WEBPACK_IMPORTED_MODULE_2__.onUnexpectedError)(e);\n }\n // Invalidate change accessor\n changeAccessor.addDecoration = invalidFunc;\n changeAccessor.changeDecoration = invalidFunc;\n changeAccessor.changeDecorationOptions = invalidFunc;\n changeAccessor.removeDecoration = invalidFunc;\n changeAccessor.deltaDecorations = invalidFunc;\n return result;\n }\n deltaDecorations(oldDecorations, newDecorations, ownerId = 0) {\n this._assertNotDisposed();\n if (!oldDecorations) {\n oldDecorations = [];\n }\n if (oldDecorations.length === 0 && newDecorations.length === 0) {\n // nothing to do\n return [];\n }\n try {\n this._deltaDecorationCallCnt++;\n if (this._deltaDecorationCallCnt > 1) {\n console.warn(`Invoking deltaDecorations recursively could lead to leaking decorations.`);\n (0,_base_common_errors_js__WEBPACK_IMPORTED_MODULE_2__.onUnexpectedError)(new Error(`Invoking deltaDecorations recursively could lead to leaking decorations.`));\n }\n this._onDidChangeDecorations.beginDeferredEmit();\n return this._deltaDecorationsImpl(ownerId, oldDecorations, newDecorations);\n }\n finally {\n this._onDidChangeDecorations.endDeferredEmit();\n this._deltaDecorationCallCnt--;\n }\n }\n _getTrackedRange(id) {\n return this.getDecorationRange(id);\n }\n _setTrackedRange(id, newRange, newStickiness) {\n const node = (id ? this._decorations[id] : null);\n if (!node) {\n if (!newRange) {\n // node doesn't exist, the request is to delete => nothing to do\n return null;\n }\n // node doesn't exist, the request is to set => add the tracked range\n return this._deltaDecorationsImpl(0, [], [{ range: newRange, options: TRACKED_RANGE_OPTIONS[newStickiness] }], true)[0];\n }\n if (!newRange) {\n // node exists, the request is to delete => delete node\n this._decorationsTree.delete(node);\n delete this._decorations[node.id];\n return null;\n }\n // node exists, the request is to set => change the tracked range and its options\n const range = this._validateRangeRelaxedNoAllocations(newRange);\n const startOffset = this._buffer.getOffsetAt(range.startLineNumber, range.startColumn);\n const endOffset = this._buffer.getOffsetAt(range.endLineNumber, range.endColumn);\n this._decorationsTree.delete(node);\n node.reset(this.getVersionId(), startOffset, endOffset, range);\n node.setOptions(TRACKED_RANGE_OPTIONS[newStickiness]);\n this._decorationsTree.insert(node);\n return node.id;\n }\n removeAllDecorationsWithOwnerId(ownerId) {\n if (this._isDisposed) {\n return;\n }\n const nodes = this._decorationsTree.collectNodesFromOwner(ownerId);\n for (let i = 0, len = nodes.length; i < len; i++) {\n const node = nodes[i];\n this._decorationsTree.delete(node);\n delete this._decorations[node.id];\n }\n }\n getDecorationOptions(decorationId) {\n const node = this._decorations[decorationId];\n if (!node) {\n return null;\n }\n return node.options;\n }\n getDecorationRange(decorationId) {\n const node = this._decorations[decorationId];\n if (!node) {\n return null;\n }\n return this._decorationsTree.getNodeRange(this, node);\n }\n getLineDecorations(lineNumber, ownerId = 0, filterOutValidation = false) {\n if (lineNumber < 1 || lineNumber > this.getLineCount()) {\n return [];\n }\n return this.getLinesDecorations(lineNumber, lineNumber, ownerId, filterOutValidation);\n }\n getLinesDecorations(_startLineNumber, _endLineNumber, ownerId = 0, filterOutValidation = false, onlyMarginDecorations = false) {\n const lineCount = this.getLineCount();\n const startLineNumber = Math.min(lineCount, Math.max(1, _startLineNumber));\n const endLineNumber = Math.min(lineCount, Math.max(1, _endLineNumber));\n const endColumn = this.getLineMaxColumn(endLineNumber);\n const range = new _core_range_js__WEBPACK_IMPORTED_MODULE_11__.Range(startLineNumber, 1, endLineNumber, endColumn);\n const decorations = this._getDecorationsInRange(range, ownerId, filterOutValidation, onlyMarginDecorations);\n (0,_base_common_arrays_js__WEBPACK_IMPORTED_MODULE_0__.pushMany)(decorations, this._decorationProvider.getDecorationsInRange(range, ownerId, filterOutValidation));\n return decorations;\n }\n getDecorationsInRange(range, ownerId = 0, filterOutValidation = false, onlyMinimapDecorations = false, onlyMarginDecorations = false) {\n const validatedRange = this.validateRange(range);\n const decorations = this._getDecorationsInRange(validatedRange, ownerId, filterOutValidation, onlyMarginDecorations);\n (0,_base_common_arrays_js__WEBPACK_IMPORTED_MODULE_0__.pushMany)(decorations, this._decorationProvider.getDecorationsInRange(validatedRange, ownerId, filterOutValidation, onlyMinimapDecorations));\n return decorations;\n }\n getOverviewRulerDecorations(ownerId = 0, filterOutValidation = false) {\n return this._decorationsTree.getAll(this, ownerId, filterOutValidation, true, false);\n }\n getInjectedTextDecorations(ownerId = 0) {\n return this._decorationsTree.getAllInjectedText(this, ownerId);\n }\n _getInjectedTextInLine(lineNumber) {\n const startOffset = this._buffer.getOffsetAt(lineNumber, 1);\n const endOffset = startOffset + this._buffer.getLineLength(lineNumber);\n const result = this._decorationsTree.getInjectedTextInInterval(this, startOffset, endOffset, 0);\n return _textModelEvents_js__WEBPACK_IMPORTED_MODULE_27__.LineInjectedText.fromDecorations(result).filter(t => t.lineNumber === lineNumber);\n }\n getAllDecorations(ownerId = 0, filterOutValidation = false) {\n let result = this._decorationsTree.getAll(this, ownerId, filterOutValidation, false, false);\n result = result.concat(this._decorationProvider.getAllDecorations(ownerId, filterOutValidation));\n return result;\n }\n getAllMarginDecorations(ownerId = 0) {\n return this._decorationsTree.getAll(this, ownerId, false, false, true);\n }\n _getDecorationsInRange(filterRange, filterOwnerId, filterOutValidation, onlyMarginDecorations) {\n const startOffset = this._buffer.getOffsetAt(filterRange.startLineNumber, filterRange.startColumn);\n const endOffset = this._buffer.getOffsetAt(filterRange.endLineNumber, filterRange.endColumn);\n return this._decorationsTree.getAllInInterval(this, startOffset, endOffset, filterOwnerId, filterOutValidation, onlyMarginDecorations);\n }\n getRangeAt(start, end) {\n return this._buffer.getRangeAt(start, end - start);\n }\n _changeDecorationImpl(decorationId, _range) {\n const node = this._decorations[decorationId];\n if (!node) {\n return;\n }\n if (node.options.after) {\n const oldRange = this.getDecorationRange(decorationId);\n this._onDidChangeDecorations.recordLineAffectedByInjectedText(oldRange.endLineNumber);\n }\n if (node.options.before) {\n const oldRange = this.getDecorationRange(decorationId);\n this._onDidChangeDecorations.recordLineAffectedByInjectedText(oldRange.startLineNumber);\n }\n const range = this._validateRangeRelaxedNoAllocations(_range);\n const startOffset = this._buffer.getOffsetAt(range.startLineNumber, range.startColumn);\n const endOffset = this._buffer.getOffsetAt(range.endLineNumber, range.endColumn);\n this._decorationsTree.delete(node);\n node.reset(this.getVersionId(), startOffset, endOffset, range);\n this._decorationsTree.insert(node);\n this._onDidChangeDecorations.checkAffectedAndFire(node.options);\n if (node.options.after) {\n this._onDidChangeDecorations.recordLineAffectedByInjectedText(range.endLineNumber);\n }\n if (node.options.before) {\n this._onDidChangeDecorations.recordLineAffectedByInjectedText(range.startLineNumber);\n }\n }\n _changeDecorationOptionsImpl(decorationId, options) {\n const node = this._decorations[decorationId];\n if (!node) {\n return;\n }\n const nodeWasInOverviewRuler = (node.options.overviewRuler && node.options.overviewRuler.color ? true : false);\n const nodeIsInOverviewRuler = (options.overviewRuler && options.overviewRuler.color ? true : false);\n this._onDidChangeDecorations.checkAffectedAndFire(node.options);\n this._onDidChangeDecorations.checkAffectedAndFire(options);\n if (node.options.after || options.after) {\n const nodeRange = this._decorationsTree.getNodeRange(this, node);\n this._onDidChangeDecorations.recordLineAffectedByInjectedText(nodeRange.endLineNumber);\n }\n if (node.options.before || options.before) {\n const nodeRange = this._decorationsTree.getNodeRange(this, node);\n this._onDidChangeDecorations.recordLineAffectedByInjectedText(nodeRange.startLineNumber);\n }\n const movedInOverviewRuler = nodeWasInOverviewRuler !== nodeIsInOverviewRuler;\n const changedWhetherInjectedText = isOptionsInjectedText(options) !== isNodeInjectedText(node);\n if (movedInOverviewRuler || changedWhetherInjectedText) {\n this._decorationsTree.delete(node);\n node.setOptions(options);\n this._decorationsTree.insert(node);\n }\n else {\n node.setOptions(options);\n }\n }\n _deltaDecorationsImpl(ownerId, oldDecorationsIds, newDecorations, suppressEvents = false) {\n const versionId = this.getVersionId();\n const oldDecorationsLen = oldDecorationsIds.length;\n let oldDecorationIndex = 0;\n const newDecorationsLen = newDecorations.length;\n let newDecorationIndex = 0;\n this._onDidChangeDecorations.beginDeferredEmit();\n try {\n const result = new Array(newDecorationsLen);\n while (oldDecorationIndex < oldDecorationsLen || newDecorationIndex < newDecorationsLen) {\n let node = null;\n if (oldDecorationIndex < oldDecorationsLen) {\n // (1) get ourselves an old node\n do {\n node = this._decorations[oldDecorationsIds[oldDecorationIndex++]];\n } while (!node && oldDecorationIndex < oldDecorationsLen);\n // (2) remove the node from the tree (if it exists)\n if (node) {\n if (node.options.after) {\n const nodeRange = this._decorationsTree.getNodeRange(this, node);\n this._onDidChangeDecorations.recordLineAffectedByInjectedText(nodeRange.endLineNumber);\n }\n if (node.options.before) {\n const nodeRange = this._decorationsTree.getNodeRange(this, node);\n this._onDidChangeDecorations.recordLineAffectedByInjectedText(nodeRange.startLineNumber);\n }\n this._decorationsTree.delete(node);\n if (!suppressEvents) {\n this._onDidChangeDecorations.checkAffectedAndFire(node.options);\n }\n }\n }\n if (newDecorationIndex < newDecorationsLen) {\n // (3) create a new node if necessary\n if (!node) {\n const internalDecorationId = (++this._lastDecorationId);\n const decorationId = `${this._instanceId};${internalDecorationId}`;\n node = new _intervalTree_js__WEBPACK_IMPORTED_MODULE_22__.IntervalNode(decorationId, 0, 0);\n this._decorations[decorationId] = node;\n }\n // (4) initialize node\n const newDecoration = newDecorations[newDecorationIndex];\n const range = this._validateRangeRelaxedNoAllocations(newDecoration.range);\n const options = _normalizeOptions(newDecoration.options);\n const startOffset = this._buffer.getOffsetAt(range.startLineNumber, range.startColumn);\n const endOffset = this._buffer.getOffsetAt(range.endLineNumber, range.endColumn);\n node.ownerId = ownerId;\n node.reset(versionId, startOffset, endOffset, range);\n node.setOptions(options);\n if (node.options.after) {\n this._onDidChangeDecorations.recordLineAffectedByInjectedText(range.endLineNumber);\n }\n if (node.options.before) {\n this._onDidChangeDecorations.recordLineAffectedByInjectedText(range.startLineNumber);\n }\n if (!suppressEvents) {\n this._onDidChangeDecorations.checkAffectedAndFire(options);\n }\n this._decorationsTree.insert(node);\n result[newDecorationIndex] = node.id;\n newDecorationIndex++;\n }\n else {\n if (node) {\n delete this._decorations[node.id];\n }\n }\n }\n return result;\n }\n finally {\n this._onDidChangeDecorations.endDeferredEmit();\n }\n }\n //#endregion\n //#region Tokenization\n // TODO move them to the tokenization part.\n getLanguageId() {\n return this.tokenization.getLanguageId();\n }\n setLanguage(languageIdOrSelection, source) {\n if (typeof languageIdOrSelection === 'string') {\n this._languageSelectionListener.clear();\n this._setLanguage(languageIdOrSelection, source);\n }\n else {\n this._languageSelectionListener.value = languageIdOrSelection.onDidChange(() => this._setLanguage(languageIdOrSelection.languageId, source));\n this._setLanguage(languageIdOrSelection.languageId, source);\n }\n }\n _setLanguage(languageId, source) {\n this.tokenization.setLanguageId(languageId, source);\n this._languageService.requestRichLanguageFeatures(languageId);\n }\n getLanguageIdAtPosition(lineNumber, column) {\n return this.tokenization.getLanguageIdAtPosition(lineNumber, column);\n }\n getWordAtPosition(position) {\n return this._tokenizationTextModelPart.getWordAtPosition(position);\n }\n getWordUntilPosition(position) {\n return this._tokenizationTextModelPart.getWordUntilPosition(position);\n }\n //#endregion\n normalizePosition(position, affinity) {\n return position;\n }\n /**\n * Gets the column at which indentation stops at a given line.\n * @internal\n */\n getLineIndentColumn(lineNumber) {\n // Columns start with 1.\n return indentOfLine(this.getLineContent(lineNumber)) + 1;\n }\n};\nTextModel._MODEL_SYNC_LIMIT = 50 * 1024 * 1024; // 50 MB, // used in tests\nTextModel.LARGE_FILE_SIZE_THRESHOLD = 20 * 1024 * 1024; // 20 MB;\nTextModel.LARGE_FILE_LINE_COUNT_THRESHOLD = 300 * 1000; // 300K lines\nTextModel.LARGE_FILE_HEAP_OPERATION_THRESHOLD = 256 * 1024 * 1024; // 256M characters, usually ~> 512MB memory usage\nTextModel.DEFAULT_CREATION_OPTIONS = {\n isForSimpleWidget: false,\n tabSize: _core_textModelDefaults_js__WEBPACK_IMPORTED_MODULE_13__.EDITOR_MODEL_DEFAULTS.tabSize,\n indentSize: _core_textModelDefaults_js__WEBPACK_IMPORTED_MODULE_13__.EDITOR_MODEL_DEFAULTS.indentSize,\n insertSpaces: _core_textModelDefaults_js__WEBPACK_IMPORTED_MODULE_13__.EDITOR_MODEL_DEFAULTS.insertSpaces,\n detectIndentation: false,\n defaultEOL: 1 /* model.DefaultEndOfLine.LF */,\n trimAutoWhitespace: _core_textModelDefaults_js__WEBPACK_IMPORTED_MODULE_13__.EDITOR_MODEL_DEFAULTS.trimAutoWhitespace,\n largeFileOptimizations: _core_textModelDefaults_js__WEBPACK_IMPORTED_MODULE_13__.EDITOR_MODEL_DEFAULTS.largeFileOptimizations,\n bracketPairColorizationOptions: _core_textModelDefaults_js__WEBPACK_IMPORTED_MODULE_13__.EDITOR_MODEL_DEFAULTS.bracketPairColorizationOptions,\n};\nTextModel = TextModel_1 = __decorate([\n __param(4, _platform_undoRedo_common_undoRedo_js__WEBPACK_IMPORTED_MODULE_28__.IUndoRedoService),\n __param(5, _languages_language_js__WEBPACK_IMPORTED_MODULE_14__.ILanguageService),\n __param(6, _languages_languageConfigurationRegistry_js__WEBPACK_IMPORTED_MODULE_15__.ILanguageConfigurationService)\n], TextModel);\n\nfunction indentOfLine(line) {\n let indent = 0;\n for (const c of line) {\n if (c === ' ' || c === '\\t') {\n indent++;\n }\n else {\n break;\n }\n }\n return indent;\n}\n//#region Decorations\nfunction isNodeInOverviewRuler(node) {\n return (node.options.overviewRuler && node.options.overviewRuler.color ? true : false);\n}\nfunction isOptionsInjectedText(options) {\n return !!options.after || !!options.before;\n}\nfunction isNodeInjectedText(node) {\n return !!node.options.after || !!node.options.before;\n}\nclass DecorationsTrees {\n constructor() {\n this._decorationsTree0 = new _intervalTree_js__WEBPACK_IMPORTED_MODULE_22__.IntervalTree();\n this._decorationsTree1 = new _intervalTree_js__WEBPACK_IMPORTED_MODULE_22__.IntervalTree();\n this._injectedTextDecorationsTree = new _intervalTree_js__WEBPACK_IMPORTED_MODULE_22__.IntervalTree();\n }\n ensureAllNodesHaveRanges(host) {\n this.getAll(host, 0, false, false, false);\n }\n _ensureNodesHaveRanges(host, nodes) {\n for (const node of nodes) {\n if (node.range === null) {\n node.range = host.getRangeAt(node.cachedAbsoluteStart, node.cachedAbsoluteEnd);\n }\n }\n return nodes;\n }\n getAllInInterval(host, start, end, filterOwnerId, filterOutValidation, onlyMarginDecorations) {\n const versionId = host.getVersionId();\n const result = this._intervalSearch(start, end, filterOwnerId, filterOutValidation, versionId, onlyMarginDecorations);\n return this._ensureNodesHaveRanges(host, result);\n }\n _intervalSearch(start, end, filterOwnerId, filterOutValidation, cachedVersionId, onlyMarginDecorations) {\n const r0 = this._decorationsTree0.intervalSearch(start, end, filterOwnerId, filterOutValidation, cachedVersionId, onlyMarginDecorations);\n const r1 = this._decorationsTree1.intervalSearch(start, end, filterOwnerId, filterOutValidation, cachedVersionId, onlyMarginDecorations);\n const r2 = this._injectedTextDecorationsTree.intervalSearch(start, end, filterOwnerId, filterOutValidation, cachedVersionId, onlyMarginDecorations);\n return r0.concat(r1).concat(r2);\n }\n getInjectedTextInInterval(host, start, end, filterOwnerId) {\n const versionId = host.getVersionId();\n const result = this._injectedTextDecorationsTree.intervalSearch(start, end, filterOwnerId, false, versionId, false);\n return this._ensureNodesHaveRanges(host, result).filter((i) => i.options.showIfCollapsed || !i.range.isEmpty());\n }\n getAllInjectedText(host, filterOwnerId) {\n const versionId = host.getVersionId();\n const result = this._injectedTextDecorationsTree.search(filterOwnerId, false, versionId, false);\n return this._ensureNodesHaveRanges(host, result).filter((i) => i.options.showIfCollapsed || !i.range.isEmpty());\n }\n getAll(host, filterOwnerId, filterOutValidation, overviewRulerOnly, onlyMarginDecorations) {\n const versionId = host.getVersionId();\n const result = this._search(filterOwnerId, filterOutValidation, overviewRulerOnly, versionId, onlyMarginDecorations);\n return this._ensureNodesHaveRanges(host, result);\n }\n _search(filterOwnerId, filterOutValidation, overviewRulerOnly, cachedVersionId, onlyMarginDecorations) {\n if (overviewRulerOnly) {\n return this._decorationsTree1.search(filterOwnerId, filterOutValidation, cachedVersionId, onlyMarginDecorations);\n }\n else {\n const r0 = this._decorationsTree0.search(filterOwnerId, filterOutValidation, cachedVersionId, onlyMarginDecorations);\n const r1 = this._decorationsTree1.search(filterOwnerId, filterOutValidation, cachedVersionId, onlyMarginDecorations);\n const r2 = this._injectedTextDecorationsTree.search(filterOwnerId, filterOutValidation, cachedVersionId, onlyMarginDecorations);\n return r0.concat(r1).concat(r2);\n }\n }\n collectNodesFromOwner(ownerId) {\n const r0 = this._decorationsTree0.collectNodesFromOwner(ownerId);\n const r1 = this._decorationsTree1.collectNodesFromOwner(ownerId);\n const r2 = this._injectedTextDecorationsTree.collectNodesFromOwner(ownerId);\n return r0.concat(r1).concat(r2);\n }\n collectNodesPostOrder() {\n const r0 = this._decorationsTree0.collectNodesPostOrder();\n const r1 = this._decorationsTree1.collectNodesPostOrder();\n const r2 = this._injectedTextDecorationsTree.collectNodesPostOrder();\n return r0.concat(r1).concat(r2);\n }\n insert(node) {\n if (isNodeInjectedText(node)) {\n this._injectedTextDecorationsTree.insert(node);\n }\n else if (isNodeInOverviewRuler(node)) {\n this._decorationsTree1.insert(node);\n }\n else {\n this._decorationsTree0.insert(node);\n }\n }\n delete(node) {\n if (isNodeInjectedText(node)) {\n this._injectedTextDecorationsTree.delete(node);\n }\n else if (isNodeInOverviewRuler(node)) {\n this._decorationsTree1.delete(node);\n }\n else {\n this._decorationsTree0.delete(node);\n }\n }\n getNodeRange(host, node) {\n const versionId = host.getVersionId();\n if (node.cachedVersionId !== versionId) {\n this._resolveNode(node, versionId);\n }\n if (node.range === null) {\n node.range = host.getRangeAt(node.cachedAbsoluteStart, node.cachedAbsoluteEnd);\n }\n return node.range;\n }\n _resolveNode(node, cachedVersionId) {\n if (isNodeInjectedText(node)) {\n this._injectedTextDecorationsTree.resolveNode(node, cachedVersionId);\n }\n else if (isNodeInOverviewRuler(node)) {\n this._decorationsTree1.resolveNode(node, cachedVersionId);\n }\n else {\n this._decorationsTree0.resolveNode(node, cachedVersionId);\n }\n }\n acceptReplace(offset, length, textLength, forceMoveMarkers) {\n this._decorationsTree0.acceptReplace(offset, length, textLength, forceMoveMarkers);\n this._decorationsTree1.acceptReplace(offset, length, textLength, forceMoveMarkers);\n this._injectedTextDecorationsTree.acceptReplace(offset, length, textLength, forceMoveMarkers);\n }\n}\nfunction cleanClassName(className) {\n return className.replace(/[^a-z0-9\\-_]/gi, ' ');\n}\nclass DecorationOptions {\n constructor(options) {\n this.color = options.color || '';\n this.darkColor = options.darkColor || '';\n }\n}\nclass ModelDecorationOverviewRulerOptions extends DecorationOptions {\n constructor(options) {\n super(options);\n this._resolvedColor = null;\n this.position = (typeof options.position === 'number' ? options.position : _model_js__WEBPACK_IMPORTED_MODULE_16__.OverviewRulerLane.Center);\n }\n getColor(theme) {\n if (!this._resolvedColor) {\n if (theme.type !== 'light' && this.darkColor) {\n this._resolvedColor = this._resolveColor(this.darkColor, theme);\n }\n else {\n this._resolvedColor = this._resolveColor(this.color, theme);\n }\n }\n return this._resolvedColor;\n }\n invalidateCachedColor() {\n this._resolvedColor = null;\n }\n _resolveColor(color, theme) {\n if (typeof color === 'string') {\n return color;\n }\n const c = color ? theme.getColor(color.id) : null;\n if (!c) {\n return '';\n }\n return c.toString();\n }\n}\nclass ModelDecorationGlyphMarginOptions {\n constructor(options) {\n var _a;\n this.position = (_a = options === null || options === void 0 ? void 0 : options.position) !== null && _a !== void 0 ? _a : _model_js__WEBPACK_IMPORTED_MODULE_16__.GlyphMarginLane.Center;\n this.persistLane = options === null || options === void 0 ? void 0 : options.persistLane;\n }\n}\nclass ModelDecorationMinimapOptions extends DecorationOptions {\n constructor(options) {\n super(options);\n this.position = options.position;\n }\n getColor(theme) {\n if (!this._resolvedColor) {\n if (theme.type !== 'light' && this.darkColor) {\n this._resolvedColor = this._resolveColor(this.darkColor, theme);\n }\n else {\n this._resolvedColor = this._resolveColor(this.color, theme);\n }\n }\n return this._resolvedColor;\n }\n invalidateCachedColor() {\n this._resolvedColor = undefined;\n }\n _resolveColor(color, theme) {\n if (typeof color === 'string') {\n return _base_common_color_js__WEBPACK_IMPORTED_MODULE_1__.Color.fromHex(color);\n }\n return theme.getColor(color.id);\n }\n}\nclass ModelDecorationInjectedTextOptions {\n static from(options) {\n if (options instanceof ModelDecorationInjectedTextOptions) {\n return options;\n }\n return new ModelDecorationInjectedTextOptions(options);\n }\n constructor(options) {\n this.content = options.content || '';\n this.inlineClassName = options.inlineClassName || null;\n this.inlineClassNameAffectsLetterSpacing = options.inlineClassNameAffectsLetterSpacing || false;\n this.attachedData = options.attachedData || null;\n this.cursorStops = options.cursorStops || null;\n }\n}\nclass ModelDecorationOptions {\n static register(options) {\n return new ModelDecorationOptions(options);\n }\n static createDynamic(options) {\n return new ModelDecorationOptions(options);\n }\n constructor(options) {\n var _a, _b, _c, _d, _e, _f;\n this.description = options.description;\n this.blockClassName = options.blockClassName ? cleanClassName(options.blockClassName) : null;\n this.blockDoesNotCollapse = (_a = options.blockDoesNotCollapse) !== null && _a !== void 0 ? _a : null;\n this.blockIsAfterEnd = (_b = options.blockIsAfterEnd) !== null && _b !== void 0 ? _b : null;\n this.blockPadding = (_c = options.blockPadding) !== null && _c !== void 0 ? _c : null;\n this.stickiness = options.stickiness || 0 /* model.TrackedRangeStickiness.AlwaysGrowsWhenTypingAtEdges */;\n this.zIndex = options.zIndex || 0;\n this.className = options.className ? cleanClassName(options.className) : null;\n this.shouldFillLineOnLineBreak = (_d = options.shouldFillLineOnLineBreak) !== null && _d !== void 0 ? _d : null;\n this.hoverMessage = options.hoverMessage || null;\n this.glyphMarginHoverMessage = options.glyphMarginHoverMessage || null;\n this.lineNumberHoverMessage = options.lineNumberHoverMessage || null;\n this.isWholeLine = options.isWholeLine || false;\n this.showIfCollapsed = options.showIfCollapsed || false;\n this.collapseOnReplaceEdit = options.collapseOnReplaceEdit || false;\n this.overviewRuler = options.overviewRuler ? new ModelDecorationOverviewRulerOptions(options.overviewRuler) : null;\n this.minimap = options.minimap ? new ModelDecorationMinimapOptions(options.minimap) : null;\n this.glyphMargin = options.glyphMarginClassName ? new ModelDecorationGlyphMarginOptions(options.glyphMargin) : null;\n this.glyphMarginClassName = options.glyphMarginClassName ? cleanClassName(options.glyphMarginClassName) : null;\n this.linesDecorationsClassName = options.linesDecorationsClassName ? cleanClassName(options.linesDecorationsClassName) : null;\n this.lineNumberClassName = options.lineNumberClassName ? cleanClassName(options.lineNumberClassName) : null;\n this.linesDecorationsTooltip = options.linesDecorationsTooltip ? _base_common_strings_js__WEBPACK_IMPORTED_MODULE_5__.htmlAttributeEncodeValue(options.linesDecorationsTooltip) : null;\n this.firstLineDecorationClassName = options.firstLineDecorationClassName ? cleanClassName(options.firstLineDecorationClassName) : null;\n this.marginClassName = options.marginClassName ? cleanClassName(options.marginClassName) : null;\n this.inlineClassName = options.inlineClassName ? cleanClassName(options.inlineClassName) : null;\n this.inlineClassNameAffectsLetterSpacing = options.inlineClassNameAffectsLetterSpacing || false;\n this.beforeContentClassName = options.beforeContentClassName ? cleanClassName(options.beforeContentClassName) : null;\n this.afterContentClassName = options.afterContentClassName ? cleanClassName(options.afterContentClassName) : null;\n this.after = options.after ? ModelDecorationInjectedTextOptions.from(options.after) : null;\n this.before = options.before ? ModelDecorationInjectedTextOptions.from(options.before) : null;\n this.hideInCommentTokens = (_e = options.hideInCommentTokens) !== null && _e !== void 0 ? _e : false;\n this.hideInStringTokens = (_f = options.hideInStringTokens) !== null && _f !== void 0 ? _f : false;\n }\n}\nModelDecorationOptions.EMPTY = ModelDecorationOptions.register({ description: 'empty' });\n/**\n * The order carefully matches the values of the enum.\n */\nconst TRACKED_RANGE_OPTIONS = [\n ModelDecorationOptions.register({ description: 'tracked-range-always-grows-when-typing-at-edges', stickiness: 0 /* model.TrackedRangeStickiness.AlwaysGrowsWhenTypingAtEdges */ }),\n ModelDecorationOptions.register({ description: 'tracked-range-never-grows-when-typing-at-edges', stickiness: 1 /* model.TrackedRangeStickiness.NeverGrowsWhenTypingAtEdges */ }),\n ModelDecorationOptions.register({ description: 'tracked-range-grows-only-when-typing-before', stickiness: 2 /* model.TrackedRangeStickiness.GrowsOnlyWhenTypingBefore */ }),\n ModelDecorationOptions.register({ description: 'tracked-range-grows-only-when-typing-after', stickiness: 3 /* model.TrackedRangeStickiness.GrowsOnlyWhenTypingAfter */ }),\n];\nfunction _normalizeOptions(options) {\n if (options instanceof ModelDecorationOptions) {\n return options;\n }\n return ModelDecorationOptions.createDynamic(options);\n}\nclass DidChangeDecorationsEmitter extends _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_4__.Disposable {\n constructor(handleBeforeFire) {\n super();\n this.handleBeforeFire = handleBeforeFire;\n this._actual = this._register(new _base_common_event_js__WEBPACK_IMPORTED_MODULE_3__.Emitter());\n this.event = this._actual.event;\n this._affectedInjectedTextLines = null;\n this._deferredCnt = 0;\n this._shouldFireDeferred = false;\n this._affectsMinimap = false;\n this._affectsOverviewRuler = false;\n this._affectsGlyphMargin = false;\n this._affectsLineNumber = false;\n }\n beginDeferredEmit() {\n this._deferredCnt++;\n }\n endDeferredEmit() {\n var _a;\n this._deferredCnt--;\n if (this._deferredCnt === 0) {\n if (this._shouldFireDeferred) {\n this.doFire();\n }\n (_a = this._affectedInjectedTextLines) === null || _a === void 0 ? void 0 : _a.clear();\n this._affectedInjectedTextLines = null;\n }\n }\n recordLineAffectedByInjectedText(lineNumber) {\n if (!this._affectedInjectedTextLines) {\n this._affectedInjectedTextLines = new Set();\n }\n this._affectedInjectedTextLines.add(lineNumber);\n }\n checkAffectedAndFire(options) {\n var _a, _b;\n this._affectsMinimap || (this._affectsMinimap = !!((_a = options.minimap) === null || _a === void 0 ? void 0 : _a.position));\n this._affectsOverviewRuler || (this._affectsOverviewRuler = !!((_b = options.overviewRuler) === null || _b === void 0 ? void 0 : _b.color));\n this._affectsGlyphMargin || (this._affectsGlyphMargin = !!options.glyphMarginClassName);\n this._affectsLineNumber || (this._affectsLineNumber = !!options.lineNumberClassName);\n this.tryFire();\n }\n fire() {\n this._affectsMinimap = true;\n this._affectsOverviewRuler = true;\n this._affectsGlyphMargin = true;\n this.tryFire();\n }\n tryFire() {\n if (this._deferredCnt === 0) {\n this.doFire();\n }\n else {\n this._shouldFireDeferred = true;\n }\n }\n doFire() {\n this.handleBeforeFire(this._affectedInjectedTextLines);\n const event = {\n affectsMinimap: this._affectsMinimap,\n affectsOverviewRuler: this._affectsOverviewRuler,\n affectsGlyphMargin: this._affectsGlyphMargin,\n affectsLineNumber: this._affectsLineNumber,\n };\n this._shouldFireDeferred = false;\n this._affectsMinimap = false;\n this._affectsOverviewRuler = false;\n this._affectsGlyphMargin = false;\n this._actual.fire(event);\n }\n}\n//#endregion\nclass DidChangeContentEmitter extends _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_4__.Disposable {\n constructor() {\n super();\n /**\n * Both `fastEvent` and `slowEvent` work the same way and contain the same events, but first we invoke `fastEvent` and then `slowEvent`.\n */\n this._fastEmitter = this._register(new _base_common_event_js__WEBPACK_IMPORTED_MODULE_3__.Emitter());\n this.fastEvent = this._fastEmitter.event;\n this._slowEmitter = this._register(new _base_common_event_js__WEBPACK_IMPORTED_MODULE_3__.Emitter());\n this.slowEvent = this._slowEmitter.event;\n this._deferredCnt = 0;\n this._deferredEvent = null;\n }\n beginDeferredEmit() {\n this._deferredCnt++;\n }\n endDeferredEmit(resultingSelection = null) {\n this._deferredCnt--;\n if (this._deferredCnt === 0) {\n if (this._deferredEvent !== null) {\n this._deferredEvent.rawContentChangedEvent.resultingSelection = resultingSelection;\n const e = this._deferredEvent;\n this._deferredEvent = null;\n this._fastEmitter.fire(e);\n this._slowEmitter.fire(e);\n }\n }\n }\n fire(e) {\n if (this._deferredCnt > 0) {\n if (this._deferredEvent) {\n this._deferredEvent = this._deferredEvent.merge(e);\n }\n else {\n this._deferredEvent = e;\n }\n return;\n }\n this._fastEmitter.fire(e);\n this._slowEmitter.fire(e);\n }\n}\n/**\n * @internal\n */\nclass AttachedViews {\n constructor() {\n this._onDidChangeVisibleRanges = new _base_common_event_js__WEBPACK_IMPORTED_MODULE_3__.Emitter();\n this.onDidChangeVisibleRanges = this._onDidChangeVisibleRanges.event;\n this._views = new Set();\n }\n attachView() {\n const view = new AttachedViewImpl((state) => {\n this._onDidChangeVisibleRanges.fire({ view, state });\n });\n this._views.add(view);\n return view;\n }\n detachView(view) {\n this._views.delete(view);\n this._onDidChangeVisibleRanges.fire({ view, state: undefined });\n }\n}\nclass AttachedViewImpl {\n constructor(handleStateChange) {\n this.handleStateChange = handleStateChange;\n }\n setVisibleLines(visibleLines, stabilized) {\n const visibleLineRanges = visibleLines.map((line) => new _core_lineRange_js__WEBPACK_IMPORTED_MODULE_9__.LineRange(line.startLineNumber, line.endLineNumber + 1));\n this.handleStateChange({ visibleLineRanges, stabilized });\n }\n}\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/common/model/textModel.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/common/model/textModelPart.js":
/*!********************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/common/model/textModelPart.js ***!
\********************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ TextModelPart: () => (/* binding */ TextModelPart)\n/* harmony export */ });\n/* harmony import */ var _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../base/common/lifecycle.js */ \"./node_modules/monaco-editor/esm/vs/base/common/lifecycle.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\nclass TextModelPart extends _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_0__.Disposable {\n constructor() {\n super(...arguments);\n this._isDisposed = false;\n }\n dispose() {\n super.dispose();\n this._isDisposed = true;\n }\n assertNotDisposed() {\n if (this._isDisposed) {\n throw new Error('TextModelPart is disposed!');\n }\n }\n}\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/common/model/textModelPart.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/common/model/textModelSearch.js":
/*!**********************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/common/model/textModelSearch.js ***!
\**********************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ SearchParams: () => (/* binding */ SearchParams),\n/* harmony export */ Searcher: () => (/* binding */ Searcher),\n/* harmony export */ TextModelSearch: () => (/* binding */ TextModelSearch),\n/* harmony export */ createFindMatch: () => (/* binding */ createFindMatch),\n/* harmony export */ isMultilineRegexSource: () => (/* binding */ isMultilineRegexSource),\n/* harmony export */ isValidMatch: () => (/* binding */ isValidMatch)\n/* harmony export */ });\n/* harmony import */ var _base_common_strings_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../base/common/strings.js */ \"./node_modules/monaco-editor/esm/vs/base/common/strings.js\");\n/* harmony import */ var _core_wordCharacterClassifier_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../core/wordCharacterClassifier.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/core/wordCharacterClassifier.js\");\n/* harmony import */ var _core_position_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../core/position.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/core/position.js\");\n/* harmony import */ var _core_range_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../core/range.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/core/range.js\");\n/* harmony import */ var _model_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../model.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/model.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n\n\n\n\nconst LIMIT_FIND_COUNT = 999;\nclass SearchParams {\n constructor(searchString, isRegex, matchCase, wordSeparators) {\n this.searchString = searchString;\n this.isRegex = isRegex;\n this.matchCase = matchCase;\n this.wordSeparators = wordSeparators;\n }\n parseSearchRequest() {\n if (this.searchString === '') {\n return null;\n }\n // Try to create a RegExp out of the params\n let multiline;\n if (this.isRegex) {\n multiline = isMultilineRegexSource(this.searchString);\n }\n else {\n multiline = (this.searchString.indexOf('\\n') >= 0);\n }\n let regex = null;\n try {\n regex = _base_common_strings_js__WEBPACK_IMPORTED_MODULE_0__.createRegExp(this.searchString, this.isRegex, {\n matchCase: this.matchCase,\n wholeWord: false,\n multiline: multiline,\n global: true,\n unicode: true\n });\n }\n catch (err) {\n return null;\n }\n if (!regex) {\n return null;\n }\n let canUseSimpleSearch = (!this.isRegex && !multiline);\n if (canUseSimpleSearch && this.searchString.toLowerCase() !== this.searchString.toUpperCase()) {\n // casing might make a difference\n canUseSimpleSearch = this.matchCase;\n }\n return new _model_js__WEBPACK_IMPORTED_MODULE_4__.SearchData(regex, this.wordSeparators ? (0,_core_wordCharacterClassifier_js__WEBPACK_IMPORTED_MODULE_1__.getMapForWordSeparators)(this.wordSeparators) : null, canUseSimpleSearch ? this.searchString : null);\n }\n}\nfunction isMultilineRegexSource(searchString) {\n if (!searchString || searchString.length === 0) {\n return false;\n }\n for (let i = 0, len = searchString.length; i < len; i++) {\n const chCode = searchString.charCodeAt(i);\n if (chCode === 10 /* CharCode.LineFeed */) {\n return true;\n }\n if (chCode === 92 /* CharCode.Backslash */) {\n // move to next char\n i++;\n if (i >= len) {\n // string ends with a \\\n break;\n }\n const nextChCode = searchString.charCodeAt(i);\n if (nextChCode === 110 /* CharCode.n */ || nextChCode === 114 /* CharCode.r */ || nextChCode === 87 /* CharCode.W */) {\n return true;\n }\n }\n }\n return false;\n}\nfunction createFindMatch(range, rawMatches, captureMatches) {\n if (!captureMatches) {\n return new _model_js__WEBPACK_IMPORTED_MODULE_4__.FindMatch(range, null);\n }\n const matches = [];\n for (let i = 0, len = rawMatches.length; i < len; i++) {\n matches[i] = rawMatches[i];\n }\n return new _model_js__WEBPACK_IMPORTED_MODULE_4__.FindMatch(range, matches);\n}\nclass LineFeedCounter {\n constructor(text) {\n const lineFeedsOffsets = [];\n let lineFeedsOffsetsLen = 0;\n for (let i = 0, textLen = text.length; i < textLen; i++) {\n if (text.charCodeAt(i) === 10 /* CharCode.LineFeed */) {\n lineFeedsOffsets[lineFeedsOffsetsLen++] = i;\n }\n }\n this._lineFeedsOffsets = lineFeedsOffsets;\n }\n findLineFeedCountBeforeOffset(offset) {\n const lineFeedsOffsets = this._lineFeedsOffsets;\n let min = 0;\n let max = lineFeedsOffsets.length - 1;\n if (max === -1) {\n // no line feeds\n return 0;\n }\n if (offset <= lineFeedsOffsets[0]) {\n // before first line feed\n return 0;\n }\n while (min < max) {\n const mid = min + ((max - min) / 2 >> 0);\n if (lineFeedsOffsets[mid] >= offset) {\n max = mid - 1;\n }\n else {\n if (lineFeedsOffsets[mid + 1] >= offset) {\n // bingo!\n min = mid;\n max = mid;\n }\n else {\n min = mid + 1;\n }\n }\n }\n return min + 1;\n }\n}\nclass TextModelSearch {\n static findMatches(model, searchParams, searchRange, captureMatches, limitResultCount) {\n const searchData = searchParams.parseSearchRequest();\n if (!searchData) {\n return [];\n }\n if (searchData.regex.multiline) {\n return this._doFindMatchesMultiline(model, searchRange, new Searcher(searchData.wordSeparators, searchData.regex), captureMatches, limitResultCount);\n }\n return this._doFindMatchesLineByLine(model, searchRange, searchData, captureMatches, limitResultCount);\n }\n /**\n * Multiline search always executes on the lines concatenated with \\n.\n * We must therefore compensate for the count of \\n in case the model is CRLF\n */\n static _getMultilineMatchRange(model, deltaOffset, text, lfCounter, matchIndex, match0) {\n let startOffset;\n let lineFeedCountBeforeMatch = 0;\n if (lfCounter) {\n lineFeedCountBeforeMatch = lfCounter.findLineFeedCountBeforeOffset(matchIndex);\n startOffset = deltaOffset + matchIndex + lineFeedCountBeforeMatch /* add as many \\r as there were \\n */;\n }\n else {\n startOffset = deltaOffset + matchIndex;\n }\n let endOffset;\n if (lfCounter) {\n const lineFeedCountBeforeEndOfMatch = lfCounter.findLineFeedCountBeforeOffset(matchIndex + match0.length);\n const lineFeedCountInMatch = lineFeedCountBeforeEndOfMatch - lineFeedCountBeforeMatch;\n endOffset = startOffset + match0.length + lineFeedCountInMatch /* add as many \\r as there were \\n */;\n }\n else {\n endOffset = startOffset + match0.length;\n }\n const startPosition = model.getPositionAt(startOffset);\n const endPosition = model.getPositionAt(endOffset);\n return new _core_range_js__WEBPACK_IMPORTED_MODULE_3__.Range(startPosition.lineNumber, startPosition.column, endPosition.lineNumber, endPosition.column);\n }\n static _doFindMatchesMultiline(model, searchRange, searcher, captureMatches, limitResultCount) {\n const deltaOffset = model.getOffsetAt(searchRange.getStartPosition());\n // We always execute multiline search over the lines joined with \\n\n // This makes it that \\n will match the EOL for both CRLF and LF models\n // We compensate for offset errors in `_getMultilineMatchRange`\n const text = model.getValueInRange(searchRange, 1 /* EndOfLinePreference.LF */);\n const lfCounter = (model.getEOL() === '\\r\\n' ? new LineFeedCounter(text) : null);\n const result = [];\n let counter = 0;\n let m;\n searcher.reset(0);\n while ((m = searcher.next(text))) {\n result[counter++] = createFindMatch(this._getMultilineMatchRange(model, deltaOffset, text, lfCounter, m.index, m[0]), m, captureMatches);\n if (counter >= limitResultCount) {\n return result;\n }\n }\n return result;\n }\n static _doFindMatchesLineByLine(model, searchRange, searchData, captureMatches, limitResultCount) {\n const result = [];\n let resultLen = 0;\n // Early case for a search range that starts & stops on the same line number\n if (searchRange.startLineNumber === searchRange.endLineNumber) {\n const text = model.getLineContent(searchRange.startLineNumber).substring(searchRange.startColumn - 1, searchRange.endColumn - 1);\n resultLen = this._findMatchesInLine(searchData, text, searchRange.startLineNumber, searchRange.startColumn - 1, resultLen, result, captureMatches, limitResultCount);\n return result;\n }\n // Collect results from first line\n const text = model.getLineContent(searchRange.startLineNumber).substring(searchRange.startColumn - 1);\n resultLen = this._findMatchesInLine(searchData, text, searchRange.startLineNumber, searchRange.startColumn - 1, resultLen, result, captureMatches, limitResultCount);\n // Collect results from middle lines\n for (let lineNumber = searchRange.startLineNumber + 1; lineNumber < searchRange.endLineNumber && resultLen < limitResultCount; lineNumber++) {\n resultLen = this._findMatchesInLine(searchData, model.getLineContent(lineNumber), lineNumber, 0, resultLen, result, captureMatches, limitResultCount);\n }\n // Collect results from last line\n if (resultLen < limitResultCount) {\n const text = model.getLineContent(searchRange.endLineNumber).substring(0, searchRange.endColumn - 1);\n resultLen = this._findMatchesInLine(searchData, text, searchRange.endLineNumber, 0, resultLen, result, captureMatches, limitResultCount);\n }\n return result;\n }\n static _findMatchesInLine(searchData, text, lineNumber, deltaOffset, resultLen, result, captureMatches, limitResultCount) {\n const wordSeparators = searchData.wordSeparators;\n if (!captureMatches && searchData.simpleSearch) {\n const searchString = searchData.simpleSearch;\n const searchStringLen = searchString.length;\n const textLength = text.length;\n let lastMatchIndex = -searchStringLen;\n while ((lastMatchIndex = text.indexOf(searchString, lastMatchIndex + searchStringLen)) !== -1) {\n if (!wordSeparators || isValidMatch(wordSeparators, text, textLength, lastMatchIndex, searchStringLen)) {\n result[resultLen++] = new _model_js__WEBPACK_IMPORTED_MODULE_4__.FindMatch(new _core_range_js__WEBPACK_IMPORTED_MODULE_3__.Range(lineNumber, lastMatchIndex + 1 + deltaOffset, lineNumber, lastMatchIndex + 1 + searchStringLen + deltaOffset), null);\n if (resultLen >= limitResultCount) {\n return resultLen;\n }\n }\n }\n return resultLen;\n }\n const searcher = new Searcher(searchData.wordSeparators, searchData.regex);\n let m;\n // Reset regex to search from the beginning\n searcher.reset(0);\n do {\n m = searcher.next(text);\n if (m) {\n result[resultLen++] = createFindMatch(new _core_range_js__WEBPACK_IMPORTED_MODULE_3__.Range(lineNumber, m.index + 1 + deltaOffset, lineNumber, m.index + 1 + m[0].length + deltaOffset), m, captureMatches);\n if (resultLen >= limitResultCount) {\n return resultLen;\n }\n }\n } while (m);\n return resultLen;\n }\n static findNextMatch(model, searchParams, searchStart, captureMatches) {\n const searchData = searchParams.parseSearchRequest();\n if (!searchData) {\n return null;\n }\n const searcher = new Searcher(searchData.wordSeparators, searchData.regex);\n if (searchData.regex.multiline) {\n return this._doFindNextMatchMultiline(model, searchStart, searcher, captureMatches);\n }\n return this._doFindNextMatchLineByLine(model, searchStart, searcher, captureMatches);\n }\n static _doFindNextMatchMultiline(model, searchStart, searcher, captureMatches) {\n const searchTextStart = new _core_position_js__WEBPACK_IMPORTED_MODULE_2__.Position(searchStart.lineNumber, 1);\n const deltaOffset = model.getOffsetAt(searchTextStart);\n const lineCount = model.getLineCount();\n // We always execute multiline search over the lines joined with \\n\n // This makes it that \\n will match the EOL for both CRLF and LF models\n // We compensate for offset errors in `_getMultilineMatchRange`\n const text = model.getValueInRange(new _core_range_js__WEBPACK_IMPORTED_MODULE_3__.Range(searchTextStart.lineNumber, searchTextStart.column, lineCount, model.getLineMaxColumn(lineCount)), 1 /* EndOfLinePreference.LF */);\n const lfCounter = (model.getEOL() === '\\r\\n' ? new LineFeedCounter(text) : null);\n searcher.reset(searchStart.column - 1);\n const m = searcher.next(text);\n if (m) {\n return createFindMatch(this._getMultilineMatchRange(model, deltaOffset, text, lfCounter, m.index, m[0]), m, captureMatches);\n }\n if (searchStart.lineNumber !== 1 || searchStart.column !== 1) {\n // Try again from the top\n return this._doFindNextMatchMultiline(model, new _core_position_js__WEBPACK_IMPORTED_MODULE_2__.Position(1, 1), searcher, captureMatches);\n }\n return null;\n }\n static _doFindNextMatchLineByLine(model, searchStart, searcher, captureMatches) {\n const lineCount = model.getLineCount();\n const startLineNumber = searchStart.lineNumber;\n // Look in first line\n const text = model.getLineContent(startLineNumber);\n const r = this._findFirstMatchInLine(searcher, text, startLineNumber, searchStart.column, captureMatches);\n if (r) {\n return r;\n }\n for (let i = 1; i <= lineCount; i++) {\n const lineIndex = (startLineNumber + i - 1) % lineCount;\n const text = model.getLineContent(lineIndex + 1);\n const r = this._findFirstMatchInLine(searcher, text, lineIndex + 1, 1, captureMatches);\n if (r) {\n return r;\n }\n }\n return null;\n }\n static _findFirstMatchInLine(searcher, text, lineNumber, fromColumn, captureMatches) {\n // Set regex to search from column\n searcher.reset(fromColumn - 1);\n const m = searcher.next(text);\n if (m) {\n return createFindMatch(new _core_range_js__WEBPACK_IMPORTED_MODULE_3__.Range(lineNumber, m.index + 1, lineNumber, m.index + 1 + m[0].length), m, captureMatches);\n }\n return null;\n }\n static findPreviousMatch(model, searchParams, searchStart, captureMatches) {\n const searchData = searchParams.parseSearchRequest();\n if (!searchData) {\n return null;\n }\n const searcher = new Searcher(searchData.wordSeparators, searchData.regex);\n if (searchData.regex.multiline) {\n return this._doFindPreviousMatchMultiline(model, searchStart, searcher, captureMatches);\n }\n return this._doFindPreviousMatchLineByLine(model, searchStart, searcher, captureMatches);\n }\n static _doFindPreviousMatchMultiline(model, searchStart, searcher, captureMatches) {\n const matches = this._doFindMatchesMultiline(model, new _core_range_js__WEBPACK_IMPORTED_MODULE_3__.Range(1, 1, searchStart.lineNumber, searchStart.column), searcher, captureMatches, 10 * LIMIT_FIND_COUNT);\n if (matches.length > 0) {\n return matches[matches.length - 1];\n }\n const lineCount = model.getLineCount();\n if (searchStart.lineNumber !== lineCount || searchStart.column !== model.getLineMaxColumn(lineCount)) {\n // Try again with all content\n return this._doFindPreviousMatchMultiline(model, new _core_position_js__WEBPACK_IMPORTED_MODULE_2__.Position(lineCount, model.getLineMaxColumn(lineCount)), searcher, captureMatches);\n }\n return null;\n }\n static _doFindPreviousMatchLineByLine(model, searchStart, searcher, captureMatches) {\n const lineCount = model.getLineCount();\n const startLineNumber = searchStart.lineNumber;\n // Look in first line\n const text = model.getLineContent(startLineNumber).substring(0, searchStart.column - 1);\n const r = this._findLastMatchInLine(searcher, text, startLineNumber, captureMatches);\n if (r) {\n return r;\n }\n for (let i = 1; i <= lineCount; i++) {\n const lineIndex = (lineCount + startLineNumber - i - 1) % lineCount;\n const text = model.getLineContent(lineIndex + 1);\n const r = this._findLastMatchInLine(searcher, text, lineIndex + 1, captureMatches);\n if (r) {\n return r;\n }\n }\n return null;\n }\n static _findLastMatchInLine(searcher, text, lineNumber, captureMatches) {\n let bestResult = null;\n let m;\n searcher.reset(0);\n while ((m = searcher.next(text))) {\n bestResult = createFindMatch(new _core_range_js__WEBPACK_IMPORTED_MODULE_3__.Range(lineNumber, m.index + 1, lineNumber, m.index + 1 + m[0].length), m, captureMatches);\n }\n return bestResult;\n }\n}\nfunction leftIsWordBounday(wordSeparators, text, textLength, matchStartIndex, matchLength) {\n if (matchStartIndex === 0) {\n // Match starts at start of string\n return true;\n }\n const charBefore = text.charCodeAt(matchStartIndex - 1);\n if (wordSeparators.get(charBefore) !== 0 /* WordCharacterClass.Regular */) {\n // The character before the match is a word separator\n return true;\n }\n if (charBefore === 13 /* CharCode.CarriageReturn */ || charBefore === 10 /* CharCode.LineFeed */) {\n // The character before the match is line break or carriage return.\n return true;\n }\n if (matchLength > 0) {\n const firstCharInMatch = text.charCodeAt(matchStartIndex);\n if (wordSeparators.get(firstCharInMatch) !== 0 /* WordCharacterClass.Regular */) {\n // The first character inside the match is a word separator\n return true;\n }\n }\n return false;\n}\nfunction rightIsWordBounday(wordSeparators, text, textLength, matchStartIndex, matchLength) {\n if (matchStartIndex + matchLength === textLength) {\n // Match ends at end of string\n return true;\n }\n const charAfter = text.charCodeAt(matchStartIndex + matchLength);\n if (wordSeparators.get(charAfter) !== 0 /* WordCharacterClass.Regular */) {\n // The character after the match is a word separator\n return true;\n }\n if (charAfter === 13 /* CharCode.CarriageReturn */ || charAfter === 10 /* CharCode.LineFeed */) {\n // The character after the match is line break or carriage return.\n return true;\n }\n if (matchLength > 0) {\n const lastCharInMatch = text.charCodeAt(matchStartIndex + matchLength - 1);\n if (wordSeparators.get(lastCharInMatch) !== 0 /* WordCharacterClass.Regular */) {\n // The last character in the match is a word separator\n return true;\n }\n }\n return false;\n}\nfunction isValidMatch(wordSeparators, text, textLength, matchStartIndex, matchLength) {\n return (leftIsWordBounday(wordSeparators, text, textLength, matchStartIndex, matchLength)\n && rightIsWordBounday(wordSeparators, text, textLength, matchStartIndex, matchLength));\n}\nclass Searcher {\n constructor(wordSeparators, searchRegex) {\n this._wordSeparators = wordSeparators;\n this._searchRegex = searchRegex;\n this._prevMatchStartIndex = -1;\n this._prevMatchLength = 0;\n }\n reset(lastIndex) {\n this._searchRegex.lastIndex = lastIndex;\n this._prevMatchStartIndex = -1;\n this._prevMatchLength = 0;\n }\n next(text) {\n const textLength = text.length;\n let m;\n do {\n if (this._prevMatchStartIndex + this._prevMatchLength === textLength) {\n // Reached the end of the line\n return null;\n }\n m = this._searchRegex.exec(text);\n if (!m) {\n return null;\n }\n const matchStartIndex = m.index;\n const matchLength = m[0].length;\n if (matchStartIndex === this._prevMatchStartIndex && matchLength === this._prevMatchLength) {\n if (matchLength === 0) {\n // the search result is an empty string and won't advance `regex.lastIndex`, so `regex.exec` will stuck here\n // we attempt to recover from that by advancing by two if surrogate pair found and by one otherwise\n if (_base_common_strings_js__WEBPACK_IMPORTED_MODULE_0__.getNextCodePoint(text, textLength, this._searchRegex.lastIndex) > 0xFFFF) {\n this._searchRegex.lastIndex += 2;\n }\n else {\n this._searchRegex.lastIndex += 1;\n }\n continue;\n }\n // Exit early if the regex matches the same range twice\n return null;\n }\n this._prevMatchStartIndex = matchStartIndex;\n this._prevMatchLength = matchLength;\n if (!this._wordSeparators || isValidMatch(this._wordSeparators, text, textLength, matchStartIndex, matchLength)) {\n return m;\n }\n } while (m);\n return null;\n }\n}\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/common/model/textModelSearch.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/common/model/textModelTokens.js":
/*!**********************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/common/model/textModelTokens.js ***!
\**********************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ DefaultBackgroundTokenizer: () => (/* binding */ DefaultBackgroundTokenizer),\n/* harmony export */ RangePriorityQueueImpl: () => (/* binding */ RangePriorityQueueImpl),\n/* harmony export */ TokenizationStateStore: () => (/* binding */ TokenizationStateStore),\n/* harmony export */ TokenizerWithStateStore: () => (/* binding */ TokenizerWithStateStore),\n/* harmony export */ TokenizerWithStateStoreAndTextModel: () => (/* binding */ TokenizerWithStateStoreAndTextModel),\n/* harmony export */ TrackingTokenizationStateStore: () => (/* binding */ TrackingTokenizationStateStore)\n/* harmony export */ });\n/* harmony import */ var _base_common_async_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../base/common/async.js */ \"./node_modules/monaco-editor/esm/vs/base/common/async.js\");\n/* harmony import */ var _base_common_errors_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../base/common/errors.js */ \"./node_modules/monaco-editor/esm/vs/base/common/errors.js\");\n/* harmony import */ var _base_common_platform_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../base/common/platform.js */ \"./node_modules/monaco-editor/esm/vs/base/common/platform.js\");\n/* harmony import */ var _base_common_stopwatch_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../../base/common/stopwatch.js */ \"./node_modules/monaco-editor/esm/vs/base/common/stopwatch.js\");\n/* harmony import */ var _core_eolCounter_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../core/eolCounter.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/core/eolCounter.js\");\n/* harmony import */ var _core_lineRange_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../core/lineRange.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/core/lineRange.js\");\n/* harmony import */ var _core_offsetRange_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../core/offsetRange.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/core/offsetRange.js\");\n/* harmony import */ var _languages_nullTokenize_js__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ../languages/nullTokenize.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/languages/nullTokenize.js\");\n/* harmony import */ var _fixedArray_js__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ./fixedArray.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/model/fixedArray.js\");\n/* harmony import */ var _tokens_contiguousMultilineTokensBuilder_js__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ../tokens/contiguousMultilineTokensBuilder.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/tokens/contiguousMultilineTokensBuilder.js\");\n/* harmony import */ var _tokens_lineTokens_js__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! ../tokens/lineTokens.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/tokens/lineTokens.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n\n\n\n\n\n\n\n\n\n\nclass TokenizerWithStateStore {\n constructor(lineCount, tokenizationSupport) {\n this.tokenizationSupport = tokenizationSupport;\n this.initialState = this.tokenizationSupport.getInitialState();\n this.store = new TrackingTokenizationStateStore(lineCount);\n }\n getStartState(lineNumber) {\n return this.store.getStartState(lineNumber, this.initialState);\n }\n getFirstInvalidLine() {\n return this.store.getFirstInvalidLine(this.initialState);\n }\n}\nclass TokenizerWithStateStoreAndTextModel extends TokenizerWithStateStore {\n constructor(lineCount, tokenizationSupport, _textModel, _languageIdCodec) {\n super(lineCount, tokenizationSupport);\n this._textModel = _textModel;\n this._languageIdCodec = _languageIdCodec;\n }\n updateTokensUntilLine(builder, lineNumber) {\n const languageId = this._textModel.getLanguageId();\n while (true) {\n const lineToTokenize = this.getFirstInvalidLine();\n if (!lineToTokenize || lineToTokenize.lineNumber > lineNumber) {\n break;\n }\n const text = this._textModel.getLineContent(lineToTokenize.lineNumber);\n const r = safeTokenize(this._languageIdCodec, languageId, this.tokenizationSupport, text, true, lineToTokenize.startState);\n builder.add(lineToTokenize.lineNumber, r.tokens);\n this.store.setEndState(lineToTokenize.lineNumber, r.endState);\n }\n }\n /** assumes state is up to date */\n getTokenTypeIfInsertingCharacter(position, character) {\n // TODO@hediet: use tokenizeLineWithEdit\n const lineStartState = this.getStartState(position.lineNumber);\n if (!lineStartState) {\n return 0 /* StandardTokenType.Other */;\n }\n const languageId = this._textModel.getLanguageId();\n const lineContent = this._textModel.getLineContent(position.lineNumber);\n // Create the text as if `character` was inserted\n const text = (lineContent.substring(0, position.column - 1)\n + character\n + lineContent.substring(position.column - 1));\n const r = safeTokenize(this._languageIdCodec, languageId, this.tokenizationSupport, text, true, lineStartState);\n const lineTokens = new _tokens_lineTokens_js__WEBPACK_IMPORTED_MODULE_10__.LineTokens(r.tokens, text, this._languageIdCodec);\n if (lineTokens.getCount() === 0) {\n return 0 /* StandardTokenType.Other */;\n }\n const tokenIndex = lineTokens.findTokenIndexAtOffset(position.column - 1);\n return lineTokens.getStandardTokenType(tokenIndex);\n }\n /** assumes state is up to date */\n tokenizeLineWithEdit(position, length, newText) {\n const lineNumber = position.lineNumber;\n const column = position.column;\n const lineStartState = this.getStartState(lineNumber);\n if (!lineStartState) {\n return null;\n }\n const curLineContent = this._textModel.getLineContent(lineNumber);\n const newLineContent = curLineContent.substring(0, column - 1)\n + newText + curLineContent.substring(column - 1 + length);\n const languageId = this._textModel.getLanguageIdAtPosition(lineNumber, 0);\n const result = safeTokenize(this._languageIdCodec, languageId, this.tokenizationSupport, newLineContent, true, lineStartState);\n const lineTokens = new _tokens_lineTokens_js__WEBPACK_IMPORTED_MODULE_10__.LineTokens(result.tokens, newLineContent, this._languageIdCodec);\n return lineTokens;\n }\n isCheapToTokenize(lineNumber) {\n const firstInvalidLineNumber = this.store.getFirstInvalidEndStateLineNumberOrMax();\n if (lineNumber < firstInvalidLineNumber) {\n return true;\n }\n if (lineNumber === firstInvalidLineNumber\n && this._textModel.getLineLength(lineNumber) < 2048 /* Constants.CHEAP_TOKENIZATION_LENGTH_LIMIT */) {\n return true;\n }\n return false;\n }\n /**\n * The result is not cached.\n */\n tokenizeHeuristically(builder, startLineNumber, endLineNumber) {\n if (endLineNumber <= this.store.getFirstInvalidEndStateLineNumberOrMax()) {\n // nothing to do\n return { heuristicTokens: false };\n }\n if (startLineNumber <= this.store.getFirstInvalidEndStateLineNumberOrMax()) {\n // tokenization has reached the viewport start...\n this.updateTokensUntilLine(builder, endLineNumber);\n return { heuristicTokens: false };\n }\n let state = this.guessStartState(startLineNumber);\n const languageId = this._textModel.getLanguageId();\n for (let lineNumber = startLineNumber; lineNumber <= endLineNumber; lineNumber++) {\n const text = this._textModel.getLineContent(lineNumber);\n const r = safeTokenize(this._languageIdCodec, languageId, this.tokenizationSupport, text, true, state);\n builder.add(lineNumber, r.tokens);\n state = r.endState;\n }\n return { heuristicTokens: true };\n }\n guessStartState(lineNumber) {\n let nonWhitespaceColumn = this._textModel.getLineFirstNonWhitespaceColumn(lineNumber);\n const likelyRelevantLines = [];\n let initialState = null;\n for (let i = lineNumber - 1; nonWhitespaceColumn > 1 && i >= 1; i--) {\n const newNonWhitespaceIndex = this._textModel.getLineFirstNonWhitespaceColumn(i);\n // Ignore lines full of whitespace\n if (newNonWhitespaceIndex === 0) {\n continue;\n }\n if (newNonWhitespaceIndex < nonWhitespaceColumn) {\n likelyRelevantLines.push(this._textModel.getLineContent(i));\n nonWhitespaceColumn = newNonWhitespaceIndex;\n initialState = this.getStartState(i);\n if (initialState) {\n break;\n }\n }\n }\n if (!initialState) {\n initialState = this.tokenizationSupport.getInitialState();\n }\n likelyRelevantLines.reverse();\n const languageId = this._textModel.getLanguageId();\n let state = initialState;\n for (const line of likelyRelevantLines) {\n const r = safeTokenize(this._languageIdCodec, languageId, this.tokenizationSupport, line, false, state);\n state = r.endState;\n }\n return state;\n }\n}\n/**\n * **Invariant:**\n * If the text model is retokenized from line 1 to {@link getFirstInvalidEndStateLineNumber}() - 1,\n * then the recomputed end state for line l will be equal to {@link getEndState}(l).\n */\nclass TrackingTokenizationStateStore {\n constructor(lineCount) {\n this.lineCount = lineCount;\n this._tokenizationStateStore = new TokenizationStateStore();\n this._invalidEndStatesLineNumbers = new RangePriorityQueueImpl();\n this._invalidEndStatesLineNumbers.addRange(new _core_offsetRange_js__WEBPACK_IMPORTED_MODULE_6__.OffsetRange(1, lineCount + 1));\n }\n getEndState(lineNumber) {\n return this._tokenizationStateStore.getEndState(lineNumber);\n }\n /**\n * @returns if the end state has changed.\n */\n setEndState(lineNumber, state) {\n if (!state) {\n throw new _base_common_errors_js__WEBPACK_IMPORTED_MODULE_1__.BugIndicatingError('Cannot set null/undefined state');\n }\n this._invalidEndStatesLineNumbers.delete(lineNumber);\n const r = this._tokenizationStateStore.setEndState(lineNumber, state);\n if (r && lineNumber < this.lineCount) {\n // because the state changed, we cannot trust the next state anymore and have to invalidate it.\n this._invalidEndStatesLineNumbers.addRange(new _core_offsetRange_js__WEBPACK_IMPORTED_MODULE_6__.OffsetRange(lineNumber + 1, lineNumber + 2));\n }\n return r;\n }\n acceptChange(range, newLineCount) {\n this.lineCount += newLineCount - range.length;\n this._tokenizationStateStore.acceptChange(range, newLineCount);\n this._invalidEndStatesLineNumbers.addRangeAndResize(new _core_offsetRange_js__WEBPACK_IMPORTED_MODULE_6__.OffsetRange(range.startLineNumber, range.endLineNumberExclusive), newLineCount);\n }\n acceptChanges(changes) {\n for (const c of changes) {\n const [eolCount] = (0,_core_eolCounter_js__WEBPACK_IMPORTED_MODULE_4__.countEOL)(c.text);\n this.acceptChange(new _core_lineRange_js__WEBPACK_IMPORTED_MODULE_5__.LineRange(c.range.startLineNumber, c.range.endLineNumber + 1), eolCount + 1);\n }\n }\n invalidateEndStateRange(range) {\n this._invalidEndStatesLineNumbers.addRange(new _core_offsetRange_js__WEBPACK_IMPORTED_MODULE_6__.OffsetRange(range.startLineNumber, range.endLineNumberExclusive));\n }\n getFirstInvalidEndStateLineNumber() { return this._invalidEndStatesLineNumbers.min; }\n getFirstInvalidEndStateLineNumberOrMax() {\n return this.getFirstInvalidEndStateLineNumber() || Number.MAX_SAFE_INTEGER;\n }\n allStatesValid() { return this._invalidEndStatesLineNumbers.min === null; }\n getStartState(lineNumber, initialState) {\n if (lineNumber === 1) {\n return initialState;\n }\n return this.getEndState(lineNumber - 1);\n }\n getFirstInvalidLine(initialState) {\n const lineNumber = this.getFirstInvalidEndStateLineNumber();\n if (lineNumber === null) {\n return null;\n }\n const startState = this.getStartState(lineNumber, initialState);\n if (!startState) {\n throw new _base_common_errors_js__WEBPACK_IMPORTED_MODULE_1__.BugIndicatingError('Start state must be defined');\n }\n return { lineNumber, startState };\n }\n}\nclass TokenizationStateStore {\n constructor() {\n this._lineEndStates = new _fixedArray_js__WEBPACK_IMPORTED_MODULE_8__.FixedArray(null);\n }\n getEndState(lineNumber) {\n return this._lineEndStates.get(lineNumber);\n }\n setEndState(lineNumber, state) {\n const oldState = this._lineEndStates.get(lineNumber);\n if (oldState && oldState.equals(state)) {\n return false;\n }\n this._lineEndStates.set(lineNumber, state);\n return true;\n }\n acceptChange(range, newLineCount) {\n let length = range.length;\n if (newLineCount > 0 && length > 0) {\n // Keep the last state, even though it is unrelated.\n // But if the new state happens to agree with this last state, then we know we can stop tokenizing.\n length--;\n newLineCount--;\n }\n this._lineEndStates.replace(range.startLineNumber, length, newLineCount);\n }\n}\nclass RangePriorityQueueImpl {\n constructor() {\n this._ranges = [];\n }\n get min() {\n if (this._ranges.length === 0) {\n return null;\n }\n return this._ranges[0].start;\n }\n delete(value) {\n const idx = this._ranges.findIndex(r => r.contains(value));\n if (idx !== -1) {\n const range = this._ranges[idx];\n if (range.start === value) {\n if (range.endExclusive === value + 1) {\n this._ranges.splice(idx, 1);\n }\n else {\n this._ranges[idx] = new _core_offsetRange_js__WEBPACK_IMPORTED_MODULE_6__.OffsetRange(value + 1, range.endExclusive);\n }\n }\n else {\n if (range.endExclusive === value + 1) {\n this._ranges[idx] = new _core_offsetRange_js__WEBPACK_IMPORTED_MODULE_6__.OffsetRange(range.start, value);\n }\n else {\n this._ranges.splice(idx, 1, new _core_offsetRange_js__WEBPACK_IMPORTED_MODULE_6__.OffsetRange(range.start, value), new _core_offsetRange_js__WEBPACK_IMPORTED_MODULE_6__.OffsetRange(value + 1, range.endExclusive));\n }\n }\n }\n }\n addRange(range) {\n _core_offsetRange_js__WEBPACK_IMPORTED_MODULE_6__.OffsetRange.addRange(range, this._ranges);\n }\n addRangeAndResize(range, newLength) {\n let idxFirstMightBeIntersecting = 0;\n while (!(idxFirstMightBeIntersecting >= this._ranges.length || range.start <= this._ranges[idxFirstMightBeIntersecting].endExclusive)) {\n idxFirstMightBeIntersecting++;\n }\n let idxFirstIsAfter = idxFirstMightBeIntersecting;\n while (!(idxFirstIsAfter >= this._ranges.length || range.endExclusive < this._ranges[idxFirstIsAfter].start)) {\n idxFirstIsAfter++;\n }\n const delta = newLength - range.length;\n for (let i = idxFirstIsAfter; i < this._ranges.length; i++) {\n this._ranges[i] = this._ranges[i].delta(delta);\n }\n if (idxFirstMightBeIntersecting === idxFirstIsAfter) {\n const newRange = new _core_offsetRange_js__WEBPACK_IMPORTED_MODULE_6__.OffsetRange(range.start, range.start + newLength);\n if (!newRange.isEmpty) {\n this._ranges.splice(idxFirstMightBeIntersecting, 0, newRange);\n }\n }\n else {\n const start = Math.min(range.start, this._ranges[idxFirstMightBeIntersecting].start);\n const endEx = Math.max(range.endExclusive, this._ranges[idxFirstIsAfter - 1].endExclusive);\n const newRange = new _core_offsetRange_js__WEBPACK_IMPORTED_MODULE_6__.OffsetRange(start, endEx + delta);\n if (!newRange.isEmpty) {\n this._ranges.splice(idxFirstMightBeIntersecting, idxFirstIsAfter - idxFirstMightBeIntersecting, newRange);\n }\n else {\n this._ranges.splice(idxFirstMightBeIntersecting, idxFirstIsAfter - idxFirstMightBeIntersecting);\n }\n }\n }\n toString() {\n return this._ranges.map(r => r.toString()).join(' + ');\n }\n}\nfunction safeTokenize(languageIdCodec, languageId, tokenizationSupport, text, hasEOL, state) {\n let r = null;\n if (tokenizationSupport) {\n try {\n r = tokenizationSupport.tokenizeEncoded(text, hasEOL, state.clone());\n }\n catch (e) {\n (0,_base_common_errors_js__WEBPACK_IMPORTED_MODULE_1__.onUnexpectedError)(e);\n }\n }\n if (!r) {\n r = (0,_languages_nullTokenize_js__WEBPACK_IMPORTED_MODULE_7__.nullTokenizeEncoded)(languageIdCodec.encodeLanguageId(languageId), state);\n }\n _tokens_lineTokens_js__WEBPACK_IMPORTED_MODULE_10__.LineTokens.convertToEndOffset(r.tokens, text.length);\n return r;\n}\nclass DefaultBackgroundTokenizer {\n constructor(_tokenizerWithStateStore, _backgroundTokenStore) {\n this._tokenizerWithStateStore = _tokenizerWithStateStore;\n this._backgroundTokenStore = _backgroundTokenStore;\n this._isDisposed = false;\n this._isScheduled = false;\n }\n dispose() {\n this._isDisposed = true;\n }\n handleChanges() {\n this._beginBackgroundTokenization();\n }\n _beginBackgroundTokenization() {\n if (this._isScheduled || !this._tokenizerWithStateStore._textModel.isAttachedToEditor() || !this._hasLinesToTokenize()) {\n return;\n }\n this._isScheduled = true;\n (0,_base_common_async_js__WEBPACK_IMPORTED_MODULE_0__.runWhenGlobalIdle)((deadline) => {\n this._isScheduled = false;\n this._backgroundTokenizeWithDeadline(deadline);\n });\n }\n /**\n * Tokenize until the deadline occurs, but try to yield every 1-2ms.\n */\n _backgroundTokenizeWithDeadline(deadline) {\n // Read the time remaining from the `deadline` immediately because it is unclear\n // if the `deadline` object will be valid after execution leaves this function.\n const endTime = Date.now() + deadline.timeRemaining();\n const execute = () => {\n if (this._isDisposed || !this._tokenizerWithStateStore._textModel.isAttachedToEditor() || !this._hasLinesToTokenize()) {\n // disposed in the meantime or detached or finished\n return;\n }\n this._backgroundTokenizeForAtLeast1ms();\n if (Date.now() < endTime) {\n // There is still time before reaching the deadline, so yield to the browser and then\n // continue execution\n (0,_base_common_platform_js__WEBPACK_IMPORTED_MODULE_2__.setTimeout0)(execute);\n }\n else {\n // The deadline has been reached, so schedule a new idle callback if necessary\n this._beginBackgroundTokenization();\n }\n };\n execute();\n }\n /**\n * Tokenize for at least 1ms.\n */\n _backgroundTokenizeForAtLeast1ms() {\n const lineCount = this._tokenizerWithStateStore._textModel.getLineCount();\n const builder = new _tokens_contiguousMultilineTokensBuilder_js__WEBPACK_IMPORTED_MODULE_9__.ContiguousMultilineTokensBuilder();\n const sw = _base_common_stopwatch_js__WEBPACK_IMPORTED_MODULE_3__.StopWatch.create(false);\n do {\n if (sw.elapsed() > 1) {\n // the comparison is intentionally > 1 and not >= 1 to ensure that\n // a full millisecond has elapsed, given how microseconds are rounded\n // to milliseconds\n break;\n }\n const tokenizedLineNumber = this._tokenizeOneInvalidLine(builder);\n if (tokenizedLineNumber >= lineCount) {\n break;\n }\n } while (this._hasLinesToTokenize());\n this._backgroundTokenStore.setTokens(builder.finalize());\n this.checkFinished();\n }\n _hasLinesToTokenize() {\n if (!this._tokenizerWithStateStore) {\n return false;\n }\n return !this._tokenizerWithStateStore.store.allStatesValid();\n }\n _tokenizeOneInvalidLine(builder) {\n var _a;\n const firstInvalidLine = (_a = this._tokenizerWithStateStore) === null || _a === void 0 ? void 0 : _a.getFirstInvalidLine();\n if (!firstInvalidLine) {\n return this._tokenizerWithStateStore._textModel.getLineCount() + 1;\n }\n this._tokenizerWithStateStore.updateTokensUntilLine(builder, firstInvalidLine.lineNumber);\n return firstInvalidLine.lineNumber;\n }\n checkFinished() {\n if (this._isDisposed) {\n return;\n }\n if (this._tokenizerWithStateStore.store.allStatesValid()) {\n this._backgroundTokenStore.backgroundTokenizationFinished();\n }\n }\n requestTokens(startLineNumber, endLineNumberExclusive) {\n this._tokenizerWithStateStore.store.invalidateEndStateRange(new _core_lineRange_js__WEBPACK_IMPORTED_MODULE_5__.LineRange(startLineNumber, endLineNumberExclusive));\n }\n}\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/common/model/textModelTokens.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/common/model/tokenizationTextModelPart.js":
/*!********************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/common/model/tokenizationTextModelPart.js ***!
\********************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ TokenizationTextModelPart: () => (/* binding */ TokenizationTextModelPart)\n/* harmony export */ });\n/* harmony import */ var _base_common_arrays_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../base/common/arrays.js */ \"./node_modules/monaco-editor/esm/vs/base/common/arrays.js\");\n/* harmony import */ var _base_common_async_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../base/common/async.js */ \"./node_modules/monaco-editor/esm/vs/base/common/async.js\");\n/* harmony import */ var _base_common_errors_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../base/common/errors.js */ \"./node_modules/monaco-editor/esm/vs/base/common/errors.js\");\n/* harmony import */ var _base_common_event_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../../base/common/event.js */ \"./node_modules/monaco-editor/esm/vs/base/common/event.js\");\n/* harmony import */ var _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../../base/common/lifecycle.js */ \"./node_modules/monaco-editor/esm/vs/base/common/lifecycle.js\");\n/* harmony import */ var _core_eolCounter_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../core/eolCounter.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/core/eolCounter.js\");\n/* harmony import */ var _core_lineRange_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../core/lineRange.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/core/lineRange.js\");\n/* harmony import */ var _core_position_js__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ../core/position.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/core/position.js\");\n/* harmony import */ var _core_wordHelper_js__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ../core/wordHelper.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/core/wordHelper.js\");\n/* harmony import */ var _languages_js__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ../languages.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/languages.js\");\n/* harmony import */ var _textModelPart_js__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! ./textModelPart.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/model/textModelPart.js\");\n/* harmony import */ var _textModelTokens_js__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(/*! ./textModelTokens.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/model/textModelTokens.js\");\n/* harmony import */ var _tokens_contiguousMultilineTokensBuilder_js__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(/*! ../tokens/contiguousMultilineTokensBuilder.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/tokens/contiguousMultilineTokensBuilder.js\");\n/* harmony import */ var _tokens_contiguousTokensStore_js__WEBPACK_IMPORTED_MODULE_13__ = __webpack_require__(/*! ../tokens/contiguousTokensStore.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/tokens/contiguousTokensStore.js\");\n/* harmony import */ var _tokens_sparseTokensStore_js__WEBPACK_IMPORTED_MODULE_14__ = __webpack_require__(/*! ../tokens/sparseTokensStore.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/tokens/sparseTokensStore.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nclass TokenizationTextModelPart extends _textModelPart_js__WEBPACK_IMPORTED_MODULE_10__.TextModelPart {\n constructor(_languageService, _languageConfigurationService, _textModel, _bracketPairsTextModelPart, _languageId, _attachedViews) {\n super();\n this._languageService = _languageService;\n this._languageConfigurationService = _languageConfigurationService;\n this._textModel = _textModel;\n this._bracketPairsTextModelPart = _bracketPairsTextModelPart;\n this._languageId = _languageId;\n this._attachedViews = _attachedViews;\n this._semanticTokens = new _tokens_sparseTokensStore_js__WEBPACK_IMPORTED_MODULE_14__.SparseTokensStore(this._languageService.languageIdCodec);\n this._onDidChangeLanguage = this._register(new _base_common_event_js__WEBPACK_IMPORTED_MODULE_3__.Emitter());\n this.onDidChangeLanguage = this._onDidChangeLanguage.event;\n this._onDidChangeLanguageConfiguration = this._register(new _base_common_event_js__WEBPACK_IMPORTED_MODULE_3__.Emitter());\n this.onDidChangeLanguageConfiguration = this._onDidChangeLanguageConfiguration.event;\n this._onDidChangeTokens = this._register(new _base_common_event_js__WEBPACK_IMPORTED_MODULE_3__.Emitter());\n this.onDidChangeTokens = this._onDidChangeTokens.event;\n this.grammarTokens = this._register(new GrammarTokens(this._languageService.languageIdCodec, this._textModel, () => this._languageId, this._attachedViews));\n this._register(this._languageConfigurationService.onDidChange(e => {\n if (e.affects(this._languageId)) {\n this._onDidChangeLanguageConfiguration.fire({});\n }\n }));\n this._register(this.grammarTokens.onDidChangeTokens(e => {\n this._emitModelTokensChangedEvent(e);\n }));\n this._register(this.grammarTokens.onDidChangeBackgroundTokenizationState(e => {\n this._bracketPairsTextModelPart.handleDidChangeBackgroundTokenizationState();\n }));\n }\n handleDidChangeContent(e) {\n if (e.isFlush) {\n this._semanticTokens.flush();\n }\n else if (!e.isEolChange) { // We don't have to do anything on an EOL change\n for (const c of e.changes) {\n const [eolCount, firstLineLength, lastLineLength] = (0,_core_eolCounter_js__WEBPACK_IMPORTED_MODULE_5__.countEOL)(c.text);\n this._semanticTokens.acceptEdit(c.range, eolCount, firstLineLength, lastLineLength, c.text.length > 0 ? c.text.charCodeAt(0) : 0 /* CharCode.Null */);\n }\n }\n this.grammarTokens.handleDidChangeContent(e);\n }\n handleDidChangeAttached() {\n this.grammarTokens.handleDidChangeAttached();\n }\n /**\n * Includes grammar and semantic tokens.\n */\n getLineTokens(lineNumber) {\n this.validateLineNumber(lineNumber);\n const syntacticTokens = this.grammarTokens.getLineTokens(lineNumber);\n return this._semanticTokens.addSparseTokens(lineNumber, syntacticTokens);\n }\n _emitModelTokensChangedEvent(e) {\n if (!this._textModel._isDisposing()) {\n this._bracketPairsTextModelPart.handleDidChangeTokens(e);\n this._onDidChangeTokens.fire(e);\n }\n }\n // #region Grammar Tokens\n validateLineNumber(lineNumber) {\n if (lineNumber < 1 || lineNumber > this._textModel.getLineCount()) {\n throw new _base_common_errors_js__WEBPACK_IMPORTED_MODULE_2__.BugIndicatingError('Illegal value for lineNumber');\n }\n }\n get hasTokens() {\n return this.grammarTokens.hasTokens;\n }\n resetTokenization() {\n this.grammarTokens.resetTokenization();\n }\n get backgroundTokenizationState() {\n return this.grammarTokens.backgroundTokenizationState;\n }\n forceTokenization(lineNumber) {\n this.validateLineNumber(lineNumber);\n this.grammarTokens.forceTokenization(lineNumber);\n }\n isCheapToTokenize(lineNumber) {\n this.validateLineNumber(lineNumber);\n return this.grammarTokens.isCheapToTokenize(lineNumber);\n }\n tokenizeIfCheap(lineNumber) {\n this.validateLineNumber(lineNumber);\n this.grammarTokens.tokenizeIfCheap(lineNumber);\n }\n getTokenTypeIfInsertingCharacter(lineNumber, column, character) {\n return this.grammarTokens.getTokenTypeIfInsertingCharacter(lineNumber, column, character);\n }\n tokenizeLineWithEdit(position, length, newText) {\n return this.grammarTokens.tokenizeLineWithEdit(position, length, newText);\n }\n // #endregion\n // #region Semantic Tokens\n setSemanticTokens(tokens, isComplete) {\n this._semanticTokens.set(tokens, isComplete);\n this._emitModelTokensChangedEvent({\n semanticTokensApplied: tokens !== null,\n ranges: [{ fromLineNumber: 1, toLineNumber: this._textModel.getLineCount() }],\n });\n }\n hasCompleteSemanticTokens() {\n return this._semanticTokens.isComplete();\n }\n hasSomeSemanticTokens() {\n return !this._semanticTokens.isEmpty();\n }\n setPartialSemanticTokens(range, tokens) {\n if (this.hasCompleteSemanticTokens()) {\n return;\n }\n const changedRange = this._textModel.validateRange(this._semanticTokens.setPartial(range, tokens));\n this._emitModelTokensChangedEvent({\n semanticTokensApplied: true,\n ranges: [\n {\n fromLineNumber: changedRange.startLineNumber,\n toLineNumber: changedRange.endLineNumber,\n },\n ],\n });\n }\n // #endregion\n // #region Utility Methods\n getWordAtPosition(_position) {\n this.assertNotDisposed();\n const position = this._textModel.validatePosition(_position);\n const lineContent = this._textModel.getLineContent(position.lineNumber);\n const lineTokens = this.getLineTokens(position.lineNumber);\n const tokenIndex = lineTokens.findTokenIndexAtOffset(position.column - 1);\n // (1). First try checking right biased word\n const [rbStartOffset, rbEndOffset] = TokenizationTextModelPart._findLanguageBoundaries(lineTokens, tokenIndex);\n const rightBiasedWord = (0,_core_wordHelper_js__WEBPACK_IMPORTED_MODULE_8__.getWordAtText)(position.column, this.getLanguageConfiguration(lineTokens.getLanguageId(tokenIndex)).getWordDefinition(), lineContent.substring(rbStartOffset, rbEndOffset), rbStartOffset);\n // Make sure the result touches the original passed in position\n if (rightBiasedWord &&\n rightBiasedWord.startColumn <= _position.column &&\n _position.column <= rightBiasedWord.endColumn) {\n return rightBiasedWord;\n }\n // (2). Else, if we were at a language boundary, check the left biased word\n if (tokenIndex > 0 && rbStartOffset === position.column - 1) {\n // edge case, where `position` sits between two tokens belonging to two different languages\n const [lbStartOffset, lbEndOffset] = TokenizationTextModelPart._findLanguageBoundaries(lineTokens, tokenIndex - 1);\n const leftBiasedWord = (0,_core_wordHelper_js__WEBPACK_IMPORTED_MODULE_8__.getWordAtText)(position.column, this.getLanguageConfiguration(lineTokens.getLanguageId(tokenIndex - 1)).getWordDefinition(), lineContent.substring(lbStartOffset, lbEndOffset), lbStartOffset);\n // Make sure the result touches the original passed in position\n if (leftBiasedWord &&\n leftBiasedWord.startColumn <= _position.column &&\n _position.column <= leftBiasedWord.endColumn) {\n return leftBiasedWord;\n }\n }\n return null;\n }\n getLanguageConfiguration(languageId) {\n return this._languageConfigurationService.getLanguageConfiguration(languageId);\n }\n static _findLanguageBoundaries(lineTokens, tokenIndex) {\n const languageId = lineTokens.getLanguageId(tokenIndex);\n // go left until a different language is hit\n let startOffset = 0;\n for (let i = tokenIndex; i >= 0 && lineTokens.getLanguageId(i) === languageId; i--) {\n startOffset = lineTokens.getStartOffset(i);\n }\n // go right until a different language is hit\n let endOffset = lineTokens.getLineContent().length;\n for (let i = tokenIndex, tokenCount = lineTokens.getCount(); i < tokenCount && lineTokens.getLanguageId(i) === languageId; i++) {\n endOffset = lineTokens.getEndOffset(i);\n }\n return [startOffset, endOffset];\n }\n getWordUntilPosition(position) {\n const wordAtPosition = this.getWordAtPosition(position);\n if (!wordAtPosition) {\n return { word: '', startColumn: position.column, endColumn: position.column, };\n }\n return {\n word: wordAtPosition.word.substr(0, position.column - wordAtPosition.startColumn),\n startColumn: wordAtPosition.startColumn,\n endColumn: position.column,\n };\n }\n // #endregion\n // #region Language Id handling\n getLanguageId() {\n return this._languageId;\n }\n getLanguageIdAtPosition(lineNumber, column) {\n const position = this._textModel.validatePosition(new _core_position_js__WEBPACK_IMPORTED_MODULE_7__.Position(lineNumber, column));\n const lineTokens = this.getLineTokens(position.lineNumber);\n return lineTokens.getLanguageId(lineTokens.findTokenIndexAtOffset(position.column - 1));\n }\n setLanguageId(languageId, source = 'api') {\n if (this._languageId === languageId) {\n // There's nothing to do\n return;\n }\n const e = {\n oldLanguage: this._languageId,\n newLanguage: languageId,\n source\n };\n this._languageId = languageId;\n this._bracketPairsTextModelPart.handleDidChangeLanguage(e);\n this.grammarTokens.resetTokenization();\n this._onDidChangeLanguage.fire(e);\n this._onDidChangeLanguageConfiguration.fire({});\n }\n}\nclass GrammarTokens extends _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_4__.Disposable {\n get backgroundTokenizationState() {\n return this._backgroundTokenizationState;\n }\n constructor(_languageIdCodec, _textModel, getLanguageId, attachedViews) {\n super();\n this._languageIdCodec = _languageIdCodec;\n this._textModel = _textModel;\n this.getLanguageId = getLanguageId;\n this._tokenizer = null;\n this._defaultBackgroundTokenizer = null;\n this._backgroundTokenizer = this._register(new _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_4__.MutableDisposable());\n this._tokens = new _tokens_contiguousTokensStore_js__WEBPACK_IMPORTED_MODULE_13__.ContiguousTokensStore(this._languageIdCodec);\n this._debugBackgroundTokenizer = this._register(new _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_4__.MutableDisposable());\n this._backgroundTokenizationState = 1 /* BackgroundTokenizationState.InProgress */;\n this._onDidChangeBackgroundTokenizationState = this._register(new _base_common_event_js__WEBPACK_IMPORTED_MODULE_3__.Emitter());\n /** @internal, should not be exposed by the text model! */\n this.onDidChangeBackgroundTokenizationState = this._onDidChangeBackgroundTokenizationState.event;\n this._onDidChangeTokens = this._register(new _base_common_event_js__WEBPACK_IMPORTED_MODULE_3__.Emitter());\n /** @internal, should not be exposed by the text model! */\n this.onDidChangeTokens = this._onDidChangeTokens.event;\n this._attachedViewStates = this._register(new _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_4__.DisposableMap());\n this._register(_languages_js__WEBPACK_IMPORTED_MODULE_9__.TokenizationRegistry.onDidChange((e) => {\n const languageId = this.getLanguageId();\n if (e.changedLanguages.indexOf(languageId) === -1) {\n return;\n }\n this.resetTokenization();\n }));\n this.resetTokenization();\n this._register(attachedViews.onDidChangeVisibleRanges(({ view, state }) => {\n if (state) {\n let existing = this._attachedViewStates.get(view);\n if (!existing) {\n existing = new AttachedViewHandler(() => this.refreshRanges(existing.lineRanges));\n this._attachedViewStates.set(view, existing);\n }\n existing.handleStateChange(state);\n }\n else {\n this._attachedViewStates.deleteAndDispose(view);\n }\n }));\n }\n resetTokenization(fireTokenChangeEvent = true) {\n var _a;\n this._tokens.flush();\n (_a = this._debugBackgroundTokens) === null || _a === void 0 ? void 0 : _a.flush();\n if (this._debugBackgroundStates) {\n this._debugBackgroundStates = new _textModelTokens_js__WEBPACK_IMPORTED_MODULE_11__.TrackingTokenizationStateStore(this._textModel.getLineCount());\n }\n if (fireTokenChangeEvent) {\n this._onDidChangeTokens.fire({\n semanticTokensApplied: false,\n ranges: [\n {\n fromLineNumber: 1,\n toLineNumber: this._textModel.getLineCount(),\n },\n ],\n });\n }\n const initializeTokenization = () => {\n if (this._textModel.isTooLargeForTokenization()) {\n return [null, null];\n }\n const tokenizationSupport = _languages_js__WEBPACK_IMPORTED_MODULE_9__.TokenizationRegistry.get(this.getLanguageId());\n if (!tokenizationSupport) {\n return [null, null];\n }\n let initialState;\n try {\n initialState = tokenizationSupport.getInitialState();\n }\n catch (e) {\n (0,_base_common_errors_js__WEBPACK_IMPORTED_MODULE_2__.onUnexpectedError)(e);\n return [null, null];\n }\n return [tokenizationSupport, initialState];\n };\n const [tokenizationSupport, initialState] = initializeTokenization();\n if (tokenizationSupport && initialState) {\n this._tokenizer = new _textModelTokens_js__WEBPACK_IMPORTED_MODULE_11__.TokenizerWithStateStoreAndTextModel(this._textModel.getLineCount(), tokenizationSupport, this._textModel, this._languageIdCodec);\n }\n else {\n this._tokenizer = null;\n }\n this._backgroundTokenizer.clear();\n this._defaultBackgroundTokenizer = null;\n if (this._tokenizer) {\n const b = {\n setTokens: (tokens) => {\n this.setTokens(tokens);\n },\n backgroundTokenizationFinished: () => {\n if (this._backgroundTokenizationState === 2 /* BackgroundTokenizationState.Completed */) {\n // We already did a full tokenization and don't go back to progressing.\n return;\n }\n const newState = 2 /* BackgroundTokenizationState.Completed */;\n this._backgroundTokenizationState = newState;\n this._onDidChangeBackgroundTokenizationState.fire();\n },\n setEndState: (lineNumber, state) => {\n var _a;\n if (!this._tokenizer) {\n return;\n }\n const firstInvalidEndStateLineNumber = this._tokenizer.store.getFirstInvalidEndStateLineNumber();\n // Don't accept states for definitely valid states, the renderer is ahead of the worker!\n if (firstInvalidEndStateLineNumber !== null && lineNumber >= firstInvalidEndStateLineNumber) {\n (_a = this._tokenizer) === null || _a === void 0 ? void 0 : _a.store.setEndState(lineNumber, state);\n }\n },\n };\n if (tokenizationSupport && tokenizationSupport.createBackgroundTokenizer && !tokenizationSupport.backgroundTokenizerShouldOnlyVerifyTokens) {\n this._backgroundTokenizer.value = tokenizationSupport.createBackgroundTokenizer(this._textModel, b);\n }\n if (!this._backgroundTokenizer.value && !this._textModel.isTooLargeForTokenization()) {\n this._backgroundTokenizer.value = this._defaultBackgroundTokenizer =\n new _textModelTokens_js__WEBPACK_IMPORTED_MODULE_11__.DefaultBackgroundTokenizer(this._tokenizer, b);\n this._defaultBackgroundTokenizer.handleChanges();\n }\n if ((tokenizationSupport === null || tokenizationSupport === void 0 ? void 0 : tokenizationSupport.backgroundTokenizerShouldOnlyVerifyTokens) && tokenizationSupport.createBackgroundTokenizer) {\n this._debugBackgroundTokens = new _tokens_contiguousTokensStore_js__WEBPACK_IMPORTED_MODULE_13__.ContiguousTokensStore(this._languageIdCodec);\n this._debugBackgroundStates = new _textModelTokens_js__WEBPACK_IMPORTED_MODULE_11__.TrackingTokenizationStateStore(this._textModel.getLineCount());\n this._debugBackgroundTokenizer.clear();\n this._debugBackgroundTokenizer.value = tokenizationSupport.createBackgroundTokenizer(this._textModel, {\n setTokens: (tokens) => {\n var _a;\n (_a = this._debugBackgroundTokens) === null || _a === void 0 ? void 0 : _a.setMultilineTokens(tokens, this._textModel);\n },\n backgroundTokenizationFinished() {\n // NO OP\n },\n setEndState: (lineNumber, state) => {\n var _a;\n (_a = this._debugBackgroundStates) === null || _a === void 0 ? void 0 : _a.setEndState(lineNumber, state);\n },\n });\n }\n else {\n this._debugBackgroundTokens = undefined;\n this._debugBackgroundStates = undefined;\n this._debugBackgroundTokenizer.value = undefined;\n }\n }\n this.refreshAllVisibleLineTokens();\n }\n handleDidChangeAttached() {\n var _a;\n (_a = this._defaultBackgroundTokenizer) === null || _a === void 0 ? void 0 : _a.handleChanges();\n }\n handleDidChangeContent(e) {\n var _a, _b, _c;\n if (e.isFlush) {\n // Don't fire the event, as the view might not have got the text change event yet\n this.resetTokenization(false);\n }\n else if (!e.isEolChange) { // We don't have to do anything on an EOL change\n for (const c of e.changes) {\n const [eolCount, firstLineLength] = (0,_core_eolCounter_js__WEBPACK_IMPORTED_MODULE_5__.countEOL)(c.text);\n this._tokens.acceptEdit(c.range, eolCount, firstLineLength);\n (_a = this._debugBackgroundTokens) === null || _a === void 0 ? void 0 : _a.acceptEdit(c.range, eolCount, firstLineLength);\n }\n (_b = this._debugBackgroundStates) === null || _b === void 0 ? void 0 : _b.acceptChanges(e.changes);\n if (this._tokenizer) {\n this._tokenizer.store.acceptChanges(e.changes);\n }\n (_c = this._defaultBackgroundTokenizer) === null || _c === void 0 ? void 0 : _c.handleChanges();\n }\n }\n setTokens(tokens) {\n const { changes } = this._tokens.setMultilineTokens(tokens, this._textModel);\n if (changes.length > 0) {\n this._onDidChangeTokens.fire({ semanticTokensApplied: false, ranges: changes, });\n }\n return { changes: changes };\n }\n refreshAllVisibleLineTokens() {\n const ranges = _core_lineRange_js__WEBPACK_IMPORTED_MODULE_6__.LineRange.joinMany([...this._attachedViewStates].map(([_, s]) => s.lineRanges));\n this.refreshRanges(ranges);\n }\n refreshRanges(ranges) {\n for (const range of ranges) {\n this.refreshRange(range.startLineNumber, range.endLineNumberExclusive - 1);\n }\n }\n refreshRange(startLineNumber, endLineNumber) {\n var _a, _b;\n if (!this._tokenizer) {\n return;\n }\n startLineNumber = Math.max(1, Math.min(this._textModel.getLineCount(), startLineNumber));\n endLineNumber = Math.min(this._textModel.getLineCount(), endLineNumber);\n const builder = new _tokens_contiguousMultilineTokensBuilder_js__WEBPACK_IMPORTED_MODULE_12__.ContiguousMultilineTokensBuilder();\n const { heuristicTokens } = this._tokenizer.tokenizeHeuristically(builder, startLineNumber, endLineNumber);\n const changedTokens = this.setTokens(builder.finalize());\n if (heuristicTokens) {\n // We overrode tokens with heuristically computed ones.\n // Because old states might get reused (thus stopping invalidation),\n // we have to explicitly request the tokens for the changed ranges again.\n for (const c of changedTokens.changes) {\n (_a = this._backgroundTokenizer.value) === null || _a === void 0 ? void 0 : _a.requestTokens(c.fromLineNumber, c.toLineNumber + 1);\n }\n }\n (_b = this._defaultBackgroundTokenizer) === null || _b === void 0 ? void 0 : _b.checkFinished();\n }\n forceTokenization(lineNumber) {\n var _a, _b;\n const builder = new _tokens_contiguousMultilineTokensBuilder_js__WEBPACK_IMPORTED_MODULE_12__.ContiguousMultilineTokensBuilder();\n (_a = this._tokenizer) === null || _a === void 0 ? void 0 : _a.updateTokensUntilLine(builder, lineNumber);\n this.setTokens(builder.finalize());\n (_b = this._defaultBackgroundTokenizer) === null || _b === void 0 ? void 0 : _b.checkFinished();\n }\n isCheapToTokenize(lineNumber) {\n if (!this._tokenizer) {\n return true;\n }\n return this._tokenizer.isCheapToTokenize(lineNumber);\n }\n tokenizeIfCheap(lineNumber) {\n if (this.isCheapToTokenize(lineNumber)) {\n this.forceTokenization(lineNumber);\n }\n }\n getLineTokens(lineNumber) {\n var _a;\n const lineText = this._textModel.getLineContent(lineNumber);\n const result = this._tokens.getTokens(this._textModel.getLanguageId(), lineNumber - 1, lineText);\n if (this._debugBackgroundTokens && this._debugBackgroundStates && this._tokenizer) {\n if (this._debugBackgroundStates.getFirstInvalidEndStateLineNumberOrMax() > lineNumber && this._tokenizer.store.getFirstInvalidEndStateLineNumberOrMax() > lineNumber) {\n const backgroundResult = this._debugBackgroundTokens.getTokens(this._textModel.getLanguageId(), lineNumber - 1, lineText);\n if (!result.equals(backgroundResult) && ((_a = this._debugBackgroundTokenizer.value) === null || _a === void 0 ? void 0 : _a.reportMismatchingTokens)) {\n this._debugBackgroundTokenizer.value.reportMismatchingTokens(lineNumber);\n }\n }\n }\n return result;\n }\n getTokenTypeIfInsertingCharacter(lineNumber, column, character) {\n if (!this._tokenizer) {\n return 0 /* StandardTokenType.Other */;\n }\n const position = this._textModel.validatePosition(new _core_position_js__WEBPACK_IMPORTED_MODULE_7__.Position(lineNumber, column));\n this.forceTokenization(position.lineNumber);\n return this._tokenizer.getTokenTypeIfInsertingCharacter(position, character);\n }\n tokenizeLineWithEdit(position, length, newText) {\n if (!this._tokenizer) {\n return null;\n }\n const validatedPosition = this._textModel.validatePosition(position);\n this.forceTokenization(validatedPosition.lineNumber);\n return this._tokenizer.tokenizeLineWithEdit(validatedPosition, length, newText);\n }\n get hasTokens() {\n return this._tokens.hasTokens;\n }\n}\nclass AttachedViewHandler extends _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_4__.Disposable {\n get lineRanges() { return this._lineRanges; }\n constructor(_refreshTokens) {\n super();\n this._refreshTokens = _refreshTokens;\n this.runner = this._register(new _base_common_async_js__WEBPACK_IMPORTED_MODULE_1__.RunOnceScheduler(() => this.update(), 50));\n this._computedLineRanges = [];\n this._lineRanges = [];\n }\n update() {\n if ((0,_base_common_arrays_js__WEBPACK_IMPORTED_MODULE_0__.equals)(this._computedLineRanges, this._lineRanges, (a, b) => a.equals(b))) {\n return;\n }\n this._computedLineRanges = this._lineRanges;\n this._refreshTokens();\n }\n handleStateChange(state) {\n this._lineRanges = state.visibleLineRanges;\n if (state.stabilized) {\n this.runner.cancel();\n this.update();\n }\n else {\n this.runner.schedule();\n }\n }\n}\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/common/model/tokenizationTextModelPart.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/common/model/utils.js":
/*!************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/common/model/utils.js ***!
\************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ computeIndentLevel: () => (/* binding */ computeIndentLevel)\n/* harmony export */ });\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n/**\n * Returns:\n * - -1 => the line consists of whitespace\n * - otherwise => the indent level is returned value\n */\nfunction computeIndentLevel(line, tabSize) {\n let indent = 0;\n let i = 0;\n const len = line.length;\n while (i < len) {\n const chCode = line.charCodeAt(i);\n if (chCode === 32 /* CharCode.Space */) {\n indent++;\n }\n else if (chCode === 9 /* CharCode.Tab */) {\n indent = indent - indent % tabSize + tabSize;\n }\n else {\n break;\n }\n i++;\n }\n if (i === len) {\n return -1; // line only consists of whitespace\n }\n return indent;\n}\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/common/model/utils.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/common/modelLineProjectionData.js":
/*!************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/common/modelLineProjectionData.js ***!
\************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ InjectedText: () => (/* binding */ InjectedText),\n/* harmony export */ ModelLineProjectionData: () => (/* binding */ ModelLineProjectionData),\n/* harmony export */ OutputPosition: () => (/* binding */ OutputPosition)\n/* harmony export */ });\n/* harmony import */ var _base_common_assert_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../base/common/assert.js */ \"./node_modules/monaco-editor/esm/vs/base/common/assert.js\");\n/* harmony import */ var _core_position_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./core/position.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/core/position.js\");\n/* harmony import */ var _model_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./model.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/model.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n\n\n/**\n * *input*:\n * ```\n * xxxxxxxxxxxxxxxxxxxxxxxxxxx\n * ```\n *\n * -> Applying injections `[i...i]`, *inputWithInjections*:\n * ```\n * xxxxxx[iiiiiiiiii]xxxxxxxxxxxxxxxxx[ii]xxxx\n * ```\n *\n * -> breaking at offsets `|` in `xxxxxx[iiiiiii|iii]xxxxxxxxxxx|xxxxxx[ii]xxxx|`:\n * ```\n * xxxxxx[iiiiiii\n * iii]xxxxxxxxxxx\n * xxxxxx[ii]xxxx\n * ```\n *\n * -> applying wrappedTextIndentLength, *output*:\n * ```\n * xxxxxx[iiiiiii\n * iii]xxxxxxxxxxx\n * xxxxxx[ii]xxxx\n * ```\n */\nclass ModelLineProjectionData {\n constructor(injectionOffsets, \n /**\n * `injectionOptions.length` must equal `injectionOffsets.length`\n */\n injectionOptions, \n /**\n * Refers to offsets after applying injections to the source.\n * The last break offset indicates the length of the source after applying injections.\n */\n breakOffsets, \n /**\n * Refers to offsets after applying injections\n */\n breakOffsetsVisibleColumn, wrappedTextIndentLength) {\n this.injectionOffsets = injectionOffsets;\n this.injectionOptions = injectionOptions;\n this.breakOffsets = breakOffsets;\n this.breakOffsetsVisibleColumn = breakOffsetsVisibleColumn;\n this.wrappedTextIndentLength = wrappedTextIndentLength;\n }\n getOutputLineCount() {\n return this.breakOffsets.length;\n }\n getMinOutputOffset(outputLineIndex) {\n if (outputLineIndex > 0) {\n return this.wrappedTextIndentLength;\n }\n return 0;\n }\n getLineLength(outputLineIndex) {\n // These offsets refer to model text with injected text.\n const startOffset = outputLineIndex > 0 ? this.breakOffsets[outputLineIndex - 1] : 0;\n const endOffset = this.breakOffsets[outputLineIndex];\n let lineLength = endOffset - startOffset;\n if (outputLineIndex > 0) {\n lineLength += this.wrappedTextIndentLength;\n }\n return lineLength;\n }\n getMaxOutputOffset(outputLineIndex) {\n return this.getLineLength(outputLineIndex);\n }\n translateToInputOffset(outputLineIndex, outputOffset) {\n if (outputLineIndex > 0) {\n outputOffset = Math.max(0, outputOffset - this.wrappedTextIndentLength);\n }\n const offsetInInputWithInjection = outputLineIndex === 0 ? outputOffset : this.breakOffsets[outputLineIndex - 1] + outputOffset;\n let offsetInInput = offsetInInputWithInjection;\n if (this.injectionOffsets !== null) {\n for (let i = 0; i < this.injectionOffsets.length; i++) {\n if (offsetInInput > this.injectionOffsets[i]) {\n if (offsetInInput < this.injectionOffsets[i] + this.injectionOptions[i].content.length) {\n // `inputOffset` is within injected text\n offsetInInput = this.injectionOffsets[i];\n }\n else {\n offsetInInput -= this.injectionOptions[i].content.length;\n }\n }\n else {\n break;\n }\n }\n }\n return offsetInInput;\n }\n translateToOutputPosition(inputOffset, affinity = 2 /* PositionAffinity.None */) {\n let inputOffsetInInputWithInjection = inputOffset;\n if (this.injectionOffsets !== null) {\n for (let i = 0; i < this.injectionOffsets.length; i++) {\n if (inputOffset < this.injectionOffsets[i]) {\n break;\n }\n if (affinity !== 1 /* PositionAffinity.Right */ && inputOffset === this.injectionOffsets[i]) {\n break;\n }\n inputOffsetInInputWithInjection += this.injectionOptions[i].content.length;\n }\n }\n return this.offsetInInputWithInjectionsToOutputPosition(inputOffsetInInputWithInjection, affinity);\n }\n offsetInInputWithInjectionsToOutputPosition(offsetInInputWithInjections, affinity = 2 /* PositionAffinity.None */) {\n let low = 0;\n let high = this.breakOffsets.length - 1;\n let mid = 0;\n let midStart = 0;\n while (low <= high) {\n mid = low + ((high - low) / 2) | 0;\n const midStop = this.breakOffsets[mid];\n midStart = mid > 0 ? this.breakOffsets[mid - 1] : 0;\n if (affinity === 0 /* PositionAffinity.Left */) {\n if (offsetInInputWithInjections <= midStart) {\n high = mid - 1;\n }\n else if (offsetInInputWithInjections > midStop) {\n low = mid + 1;\n }\n else {\n break;\n }\n }\n else {\n if (offsetInInputWithInjections < midStart) {\n high = mid - 1;\n }\n else if (offsetInInputWithInjections >= midStop) {\n low = mid + 1;\n }\n else {\n break;\n }\n }\n }\n let outputOffset = offsetInInputWithInjections - midStart;\n if (mid > 0) {\n outputOffset += this.wrappedTextIndentLength;\n }\n return new OutputPosition(mid, outputOffset);\n }\n normalizeOutputPosition(outputLineIndex, outputOffset, affinity) {\n if (this.injectionOffsets !== null) {\n const offsetInInputWithInjections = this.outputPositionToOffsetInInputWithInjections(outputLineIndex, outputOffset);\n const normalizedOffsetInUnwrappedLine = this.normalizeOffsetInInputWithInjectionsAroundInjections(offsetInInputWithInjections, affinity);\n if (normalizedOffsetInUnwrappedLine !== offsetInInputWithInjections) {\n // injected text caused a change\n return this.offsetInInputWithInjectionsToOutputPosition(normalizedOffsetInUnwrappedLine, affinity);\n }\n }\n if (affinity === 0 /* PositionAffinity.Left */) {\n if (outputLineIndex > 0 && outputOffset === this.getMinOutputOffset(outputLineIndex)) {\n return new OutputPosition(outputLineIndex - 1, this.getMaxOutputOffset(outputLineIndex - 1));\n }\n }\n else if (affinity === 1 /* PositionAffinity.Right */) {\n const maxOutputLineIndex = this.getOutputLineCount() - 1;\n if (outputLineIndex < maxOutputLineIndex && outputOffset === this.getMaxOutputOffset(outputLineIndex)) {\n return new OutputPosition(outputLineIndex + 1, this.getMinOutputOffset(outputLineIndex + 1));\n }\n }\n return new OutputPosition(outputLineIndex, outputOffset);\n }\n outputPositionToOffsetInInputWithInjections(outputLineIndex, outputOffset) {\n if (outputLineIndex > 0) {\n outputOffset = Math.max(0, outputOffset - this.wrappedTextIndentLength);\n }\n const result = (outputLineIndex > 0 ? this.breakOffsets[outputLineIndex - 1] : 0) + outputOffset;\n return result;\n }\n normalizeOffsetInInputWithInjectionsAroundInjections(offsetInInputWithInjections, affinity) {\n const injectedText = this.getInjectedTextAtOffset(offsetInInputWithInjections);\n if (!injectedText) {\n return offsetInInputWithInjections;\n }\n if (affinity === 2 /* PositionAffinity.None */) {\n if (offsetInInputWithInjections === injectedText.offsetInInputWithInjections + injectedText.length\n && hasRightCursorStop(this.injectionOptions[injectedText.injectedTextIndex].cursorStops)) {\n return injectedText.offsetInInputWithInjections + injectedText.length;\n }\n else {\n let result = injectedText.offsetInInputWithInjections;\n if (hasLeftCursorStop(this.injectionOptions[injectedText.injectedTextIndex].cursorStops)) {\n return result;\n }\n let index = injectedText.injectedTextIndex - 1;\n while (index >= 0 && this.injectionOffsets[index] === this.injectionOffsets[injectedText.injectedTextIndex]) {\n if (hasRightCursorStop(this.injectionOptions[index].cursorStops)) {\n break;\n }\n result -= this.injectionOptions[index].content.length;\n if (hasLeftCursorStop(this.injectionOptions[index].cursorStops)) {\n break;\n }\n index--;\n }\n return result;\n }\n }\n else if (affinity === 1 /* PositionAffinity.Right */ || affinity === 4 /* PositionAffinity.RightOfInjectedText */) {\n let result = injectedText.offsetInInputWithInjections + injectedText.length;\n let index = injectedText.injectedTextIndex;\n // traverse all injected text that touch each other\n while (index + 1 < this.injectionOffsets.length && this.injectionOffsets[index + 1] === this.injectionOffsets[index]) {\n result += this.injectionOptions[index + 1].content.length;\n index++;\n }\n return result;\n }\n else if (affinity === 0 /* PositionAffinity.Left */ || affinity === 3 /* PositionAffinity.LeftOfInjectedText */) {\n // affinity is left\n let result = injectedText.offsetInInputWithInjections;\n let index = injectedText.injectedTextIndex;\n // traverse all injected text that touch each other\n while (index - 1 >= 0 && this.injectionOffsets[index - 1] === this.injectionOffsets[index]) {\n result -= this.injectionOptions[index - 1].content.length;\n index--;\n }\n return result;\n }\n (0,_base_common_assert_js__WEBPACK_IMPORTED_MODULE_0__.assertNever)(affinity);\n }\n getInjectedText(outputLineIndex, outputOffset) {\n const offset = this.outputPositionToOffsetInInputWithInjections(outputLineIndex, outputOffset);\n const injectedText = this.getInjectedTextAtOffset(offset);\n if (!injectedText) {\n return null;\n }\n return {\n options: this.injectionOptions[injectedText.injectedTextIndex]\n };\n }\n getInjectedTextAtOffset(offsetInInputWithInjections) {\n const injectionOffsets = this.injectionOffsets;\n const injectionOptions = this.injectionOptions;\n if (injectionOffsets !== null) {\n let totalInjectedTextLengthBefore = 0;\n for (let i = 0; i < injectionOffsets.length; i++) {\n const length = injectionOptions[i].content.length;\n const injectedTextStartOffsetInInputWithInjections = injectionOffsets[i] + totalInjectedTextLengthBefore;\n const injectedTextEndOffsetInInputWithInjections = injectionOffsets[i] + totalInjectedTextLengthBefore + length;\n if (injectedTextStartOffsetInInputWithInjections > offsetInInputWithInjections) {\n // Injected text starts later.\n break; // All later injected texts have an even larger offset.\n }\n if (offsetInInputWithInjections <= injectedTextEndOffsetInInputWithInjections) {\n // Injected text ends after or with the given position (but also starts with or before it).\n return {\n injectedTextIndex: i,\n offsetInInputWithInjections: injectedTextStartOffsetInInputWithInjections,\n length\n };\n }\n totalInjectedTextLengthBefore += length;\n }\n }\n return undefined;\n }\n}\nfunction hasRightCursorStop(cursorStop) {\n if (cursorStop === null || cursorStop === undefined) {\n return true;\n }\n return cursorStop === _model_js__WEBPACK_IMPORTED_MODULE_2__.InjectedTextCursorStops.Right || cursorStop === _model_js__WEBPACK_IMPORTED_MODULE_2__.InjectedTextCursorStops.Both;\n}\nfunction hasLeftCursorStop(cursorStop) {\n if (cursorStop === null || cursorStop === undefined) {\n return true;\n }\n return cursorStop === _model_js__WEBPACK_IMPORTED_MODULE_2__.InjectedTextCursorStops.Left || cursorStop === _model_js__WEBPACK_IMPORTED_MODULE_2__.InjectedTextCursorStops.Both;\n}\nclass InjectedText {\n constructor(options) {\n this.options = options;\n }\n}\nclass OutputPosition {\n constructor(outputLineIndex, outputOffset) {\n this.outputLineIndex = outputLineIndex;\n this.outputOffset = outputOffset;\n }\n toString() {\n return `${this.outputLineIndex}:${this.outputOffset}`;\n }\n toPosition(baseLineNumber) {\n return new _core_position_js__WEBPACK_IMPORTED_MODULE_1__.Position(baseLineNumber + this.outputLineIndex, this.outputOffset + 1);\n }\n}\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/common/modelLineProjectionData.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/common/services/editorBaseApi.js":
/*!***********************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/common/services/editorBaseApi.js ***!
\***********************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ KeyMod: () => (/* binding */ KeyMod),\n/* harmony export */ createMonacoBaseAPI: () => (/* binding */ createMonacoBaseAPI)\n/* harmony export */ });\n/* harmony import */ var _base_common_cancellation_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../base/common/cancellation.js */ \"./node_modules/monaco-editor/esm/vs/base/common/cancellation.js\");\n/* harmony import */ var _base_common_event_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../base/common/event.js */ \"./node_modules/monaco-editor/esm/vs/base/common/event.js\");\n/* harmony import */ var _base_common_keyCodes_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../base/common/keyCodes.js */ \"./node_modules/monaco-editor/esm/vs/base/common/keyCodes.js\");\n/* harmony import */ var _base_common_uri_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../../base/common/uri.js */ \"./node_modules/monaco-editor/esm/vs/base/common/uri.js\");\n/* harmony import */ var _core_position_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../core/position.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/core/position.js\");\n/* harmony import */ var _core_range_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../core/range.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/core/range.js\");\n/* harmony import */ var _core_selection_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../core/selection.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/core/selection.js\");\n/* harmony import */ var _languages_js__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ../languages.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/languages.js\");\n/* harmony import */ var _standalone_standaloneEnums_js__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ../standalone/standaloneEnums.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/standalone/standaloneEnums.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n\n\n\n\n\n\n\n\nclass KeyMod {\n static chord(firstPart, secondPart) {\n return (0,_base_common_keyCodes_js__WEBPACK_IMPORTED_MODULE_2__.KeyChord)(firstPart, secondPart);\n }\n}\nKeyMod.CtrlCmd = 2048 /* ConstKeyMod.CtrlCmd */;\nKeyMod.Shift = 1024 /* ConstKeyMod.Shift */;\nKeyMod.Alt = 512 /* ConstKeyMod.Alt */;\nKeyMod.WinCtrl = 256 /* ConstKeyMod.WinCtrl */;\nfunction createMonacoBaseAPI() {\n return {\n editor: undefined, // undefined override expected here\n languages: undefined, // undefined override expected here\n CancellationTokenSource: _base_common_cancellation_js__WEBPACK_IMPORTED_MODULE_0__.CancellationTokenSource,\n Emitter: _base_common_event_js__WEBPACK_IMPORTED_MODULE_1__.Emitter,\n KeyCode: _standalone_standaloneEnums_js__WEBPACK_IMPORTED_MODULE_8__.KeyCode,\n KeyMod: KeyMod,\n Position: _core_position_js__WEBPACK_IMPORTED_MODULE_4__.Position,\n Range: _core_range_js__WEBPACK_IMPORTED_MODULE_5__.Range,\n Selection: _core_selection_js__WEBPACK_IMPORTED_MODULE_6__.Selection,\n SelectionDirection: _standalone_standaloneEnums_js__WEBPACK_IMPORTED_MODULE_8__.SelectionDirection,\n MarkerSeverity: _standalone_standaloneEnums_js__WEBPACK_IMPORTED_MODULE_8__.MarkerSeverity,\n MarkerTag: _standalone_standaloneEnums_js__WEBPACK_IMPORTED_MODULE_8__.MarkerTag,\n Uri: _base_common_uri_js__WEBPACK_IMPORTED_MODULE_3__.URI,\n Token: _languages_js__WEBPACK_IMPORTED_MODULE_7__.Token\n };\n}\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/common/services/editorBaseApi.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/common/services/editorSimpleWorker.js":
/*!****************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/common/services/editorSimpleWorker.js ***!
\****************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ EditorSimpleWorker: () => (/* binding */ EditorSimpleWorker),\n/* harmony export */ create: () => (/* binding */ create)\n/* harmony export */ });\n/* harmony import */ var _base_common_diff_diff_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../base/common/diff/diff.js */ \"./node_modules/monaco-editor/esm/vs/base/common/diff/diff.js\");\n/* harmony import */ var _base_common_uri_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../base/common/uri.js */ \"./node_modules/monaco-editor/esm/vs/base/common/uri.js\");\n/* harmony import */ var _core_position_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../core/position.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/core/position.js\");\n/* harmony import */ var _core_range_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../core/range.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/core/range.js\");\n/* harmony import */ var _model_mirrorTextModel_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../model/mirrorTextModel.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/model/mirrorTextModel.js\");\n/* harmony import */ var _core_wordHelper_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../core/wordHelper.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/core/wordHelper.js\");\n/* harmony import */ var _languages_linkComputer_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../languages/linkComputer.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/languages/linkComputer.js\");\n/* harmony import */ var _languages_supports_inplaceReplaceSupport_js__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ../languages/supports/inplaceReplaceSupport.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/languages/supports/inplaceReplaceSupport.js\");\n/* harmony import */ var _editorBaseApi_js__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ./editorBaseApi.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/services/editorBaseApi.js\");\n/* harmony import */ var _base_common_stopwatch_js__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ../../../base/common/stopwatch.js */ \"./node_modules/monaco-editor/esm/vs/base/common/stopwatch.js\");\n/* harmony import */ var _unicodeTextModelHighlighter_js__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! ./unicodeTextModelHighlighter.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/services/unicodeTextModelHighlighter.js\");\n/* harmony import */ var _diff_linesDiffComputers_js__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(/*! ../diff/linesDiffComputers.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/diff/linesDiffComputers.js\");\n/* harmony import */ var _base_common_objects_js__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(/*! ../../../base/common/objects.js */ \"./node_modules/monaco-editor/esm/vs/base/common/objects.js\");\n/* harmony import */ var _languages_defaultDocumentColorsComputer_js__WEBPACK_IMPORTED_MODULE_13__ = __webpack_require__(/*! ../languages/defaultDocumentColorsComputer.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/languages/defaultDocumentColorsComputer.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n/**\n * @internal\n */\nclass MirrorModel extends _model_mirrorTextModel_js__WEBPACK_IMPORTED_MODULE_4__.MirrorTextModel {\n get uri() {\n return this._uri;\n }\n get eol() {\n return this._eol;\n }\n getValue() {\n return this.getText();\n }\n findMatches(regex) {\n const matches = [];\n for (let i = 0; i < this._lines.length; i++) {\n const line = this._lines[i];\n const offsetToAdd = this.offsetAt(new _core_position_js__WEBPACK_IMPORTED_MODULE_2__.Position(i + 1, 1));\n const iteratorOverMatches = line.matchAll(regex);\n for (const match of iteratorOverMatches) {\n if (match.index || match.index === 0) {\n match.index = match.index + offsetToAdd;\n }\n matches.push(match);\n }\n }\n return matches;\n }\n getLinesContent() {\n return this._lines.slice(0);\n }\n getLineCount() {\n return this._lines.length;\n }\n getLineContent(lineNumber) {\n return this._lines[lineNumber - 1];\n }\n getWordAtPosition(position, wordDefinition) {\n const wordAtText = (0,_core_wordHelper_js__WEBPACK_IMPORTED_MODULE_5__.getWordAtText)(position.column, (0,_core_wordHelper_js__WEBPACK_IMPORTED_MODULE_5__.ensureValidWordDefinition)(wordDefinition), this._lines[position.lineNumber - 1], 0);\n if (wordAtText) {\n return new _core_range_js__WEBPACK_IMPORTED_MODULE_3__.Range(position.lineNumber, wordAtText.startColumn, position.lineNumber, wordAtText.endColumn);\n }\n return null;\n }\n words(wordDefinition) {\n const lines = this._lines;\n const wordenize = this._wordenize.bind(this);\n let lineNumber = 0;\n let lineText = '';\n let wordRangesIdx = 0;\n let wordRanges = [];\n return {\n *[Symbol.iterator]() {\n while (true) {\n if (wordRangesIdx < wordRanges.length) {\n const value = lineText.substring(wordRanges[wordRangesIdx].start, wordRanges[wordRangesIdx].end);\n wordRangesIdx += 1;\n yield value;\n }\n else {\n if (lineNumber < lines.length) {\n lineText = lines[lineNumber];\n wordRanges = wordenize(lineText, wordDefinition);\n wordRangesIdx = 0;\n lineNumber += 1;\n }\n else {\n break;\n }\n }\n }\n }\n };\n }\n getLineWords(lineNumber, wordDefinition) {\n const content = this._lines[lineNumber - 1];\n const ranges = this._wordenize(content, wordDefinition);\n const words = [];\n for (const range of ranges) {\n words.push({\n word: content.substring(range.start, range.end),\n startColumn: range.start + 1,\n endColumn: range.end + 1\n });\n }\n return words;\n }\n _wordenize(content, wordDefinition) {\n const result = [];\n let match;\n wordDefinition.lastIndex = 0; // reset lastIndex just to be sure\n while (match = wordDefinition.exec(content)) {\n if (match[0].length === 0) {\n // it did match the empty string\n break;\n }\n result.push({ start: match.index, end: match.index + match[0].length });\n }\n return result;\n }\n getValueInRange(range) {\n range = this._validateRange(range);\n if (range.startLineNumber === range.endLineNumber) {\n return this._lines[range.startLineNumber - 1].substring(range.startColumn - 1, range.endColumn - 1);\n }\n const lineEnding = this._eol;\n const startLineIndex = range.startLineNumber - 1;\n const endLineIndex = range.endLineNumber - 1;\n const resultLines = [];\n resultLines.push(this._lines[startLineIndex].substring(range.startColumn - 1));\n for (let i = startLineIndex + 1; i < endLineIndex; i++) {\n resultLines.push(this._lines[i]);\n }\n resultLines.push(this._lines[endLineIndex].substring(0, range.endColumn - 1));\n return resultLines.join(lineEnding);\n }\n offsetAt(position) {\n position = this._validatePosition(position);\n this._ensureLineStarts();\n return this._lineStarts.getPrefixSum(position.lineNumber - 2) + (position.column - 1);\n }\n positionAt(offset) {\n offset = Math.floor(offset);\n offset = Math.max(0, offset);\n this._ensureLineStarts();\n const out = this._lineStarts.getIndexOf(offset);\n const lineLength = this._lines[out.index].length;\n // Ensure we return a valid position\n return {\n lineNumber: 1 + out.index,\n column: 1 + Math.min(out.remainder, lineLength)\n };\n }\n _validateRange(range) {\n const start = this._validatePosition({ lineNumber: range.startLineNumber, column: range.startColumn });\n const end = this._validatePosition({ lineNumber: range.endLineNumber, column: range.endColumn });\n if (start.lineNumber !== range.startLineNumber\n || start.column !== range.startColumn\n || end.lineNumber !== range.endLineNumber\n || end.column !== range.endColumn) {\n return {\n startLineNumber: start.lineNumber,\n startColumn: start.column,\n endLineNumber: end.lineNumber,\n endColumn: end.column\n };\n }\n return range;\n }\n _validatePosition(position) {\n if (!_core_position_js__WEBPACK_IMPORTED_MODULE_2__.Position.isIPosition(position)) {\n throw new Error('bad position');\n }\n let { lineNumber, column } = position;\n let hasChanged = false;\n if (lineNumber < 1) {\n lineNumber = 1;\n column = 1;\n hasChanged = true;\n }\n else if (lineNumber > this._lines.length) {\n lineNumber = this._lines.length;\n column = this._lines[lineNumber - 1].length + 1;\n hasChanged = true;\n }\n else {\n const maxCharacter = this._lines[lineNumber - 1].length + 1;\n if (column < 1) {\n column = 1;\n hasChanged = true;\n }\n else if (column > maxCharacter) {\n column = maxCharacter;\n hasChanged = true;\n }\n }\n if (!hasChanged) {\n return position;\n }\n else {\n return { lineNumber, column };\n }\n }\n}\n/**\n * @internal\n */\nclass EditorSimpleWorker {\n constructor(host, foreignModuleFactory) {\n this._host = host;\n this._models = Object.create(null);\n this._foreignModuleFactory = foreignModuleFactory;\n this._foreignModule = null;\n }\n dispose() {\n this._models = Object.create(null);\n }\n _getModel(uri) {\n return this._models[uri];\n }\n _getModels() {\n const all = [];\n Object.keys(this._models).forEach((key) => all.push(this._models[key]));\n return all;\n }\n acceptNewModel(data) {\n this._models[data.url] = new MirrorModel(_base_common_uri_js__WEBPACK_IMPORTED_MODULE_1__.URI.parse(data.url), data.lines, data.EOL, data.versionId);\n }\n acceptModelChanged(strURL, e) {\n if (!this._models[strURL]) {\n return;\n }\n const model = this._models[strURL];\n model.onEvents(e);\n }\n acceptRemovedModel(strURL) {\n if (!this._models[strURL]) {\n return;\n }\n delete this._models[strURL];\n }\n async computeUnicodeHighlights(url, options, range) {\n const model = this._getModel(url);\n if (!model) {\n return { ranges: [], hasMore: false, ambiguousCharacterCount: 0, invisibleCharacterCount: 0, nonBasicAsciiCharacterCount: 0 };\n }\n return _unicodeTextModelHighlighter_js__WEBPACK_IMPORTED_MODULE_10__.UnicodeTextModelHighlighter.computeUnicodeHighlights(model, options, range);\n }\n // ---- BEGIN diff --------------------------------------------------------------------------\n async computeDiff(originalUrl, modifiedUrl, options, algorithm) {\n const original = this._getModel(originalUrl);\n const modified = this._getModel(modifiedUrl);\n if (!original || !modified) {\n return null;\n }\n const result = EditorSimpleWorker.computeDiff(original, modified, options, algorithm);\n return result;\n }\n static computeDiff(originalTextModel, modifiedTextModel, options, algorithm) {\n const diffAlgorithm = algorithm === 'advanced' ? _diff_linesDiffComputers_js__WEBPACK_IMPORTED_MODULE_11__.linesDiffComputers.getDefault() : _diff_linesDiffComputers_js__WEBPACK_IMPORTED_MODULE_11__.linesDiffComputers.getLegacy();\n const originalLines = originalTextModel.getLinesContent();\n const modifiedLines = modifiedTextModel.getLinesContent();\n const result = diffAlgorithm.computeDiff(originalLines, modifiedLines, options);\n const identical = (result.changes.length > 0 ? false : this._modelsAreIdentical(originalTextModel, modifiedTextModel));\n function getLineChanges(changes) {\n return changes.map(m => {\n var _a;\n return ([m.original.startLineNumber, m.original.endLineNumberExclusive, m.modified.startLineNumber, m.modified.endLineNumberExclusive, (_a = m.innerChanges) === null || _a === void 0 ? void 0 : _a.map(m => [\n m.originalRange.startLineNumber,\n m.originalRange.startColumn,\n m.originalRange.endLineNumber,\n m.originalRange.endColumn,\n m.modifiedRange.startLineNumber,\n m.modifiedRange.startColumn,\n m.modifiedRange.endLineNumber,\n m.modifiedRange.endColumn,\n ])]);\n });\n }\n return {\n identical,\n quitEarly: result.hitTimeout,\n changes: getLineChanges(result.changes),\n moves: result.moves.map(m => ([\n m.lineRangeMapping.original.startLineNumber,\n m.lineRangeMapping.original.endLineNumberExclusive,\n m.lineRangeMapping.modified.startLineNumber,\n m.lineRangeMapping.modified.endLineNumberExclusive,\n getLineChanges(m.changes)\n ])),\n };\n }\n static _modelsAreIdentical(original, modified) {\n const originalLineCount = original.getLineCount();\n const modifiedLineCount = modified.getLineCount();\n if (originalLineCount !== modifiedLineCount) {\n return false;\n }\n for (let line = 1; line <= originalLineCount; line++) {\n const originalLine = original.getLineContent(line);\n const modifiedLine = modified.getLineContent(line);\n if (originalLine !== modifiedLine) {\n return false;\n }\n }\n return true;\n }\n async computeMoreMinimalEdits(modelUrl, edits, pretty) {\n const model = this._getModel(modelUrl);\n if (!model) {\n return edits;\n }\n const result = [];\n let lastEol = undefined;\n edits = edits.slice(0).sort((a, b) => {\n if (a.range && b.range) {\n return _core_range_js__WEBPACK_IMPORTED_MODULE_3__.Range.compareRangesUsingStarts(a.range, b.range);\n }\n // eol only changes should go to the end\n const aRng = a.range ? 0 : 1;\n const bRng = b.range ? 0 : 1;\n return aRng - bRng;\n });\n // merge adjacent edits\n let writeIndex = 0;\n for (let readIndex = 1; readIndex < edits.length; readIndex++) {\n if (_core_range_js__WEBPACK_IMPORTED_MODULE_3__.Range.getEndPosition(edits[writeIndex].range).equals(_core_range_js__WEBPACK_IMPORTED_MODULE_3__.Range.getStartPosition(edits[readIndex].range))) {\n edits[writeIndex].range = _core_range_js__WEBPACK_IMPORTED_MODULE_3__.Range.fromPositions(_core_range_js__WEBPACK_IMPORTED_MODULE_3__.Range.getStartPosition(edits[writeIndex].range), _core_range_js__WEBPACK_IMPORTED_MODULE_3__.Range.getEndPosition(edits[readIndex].range));\n edits[writeIndex].text += edits[readIndex].text;\n }\n else {\n writeIndex++;\n edits[writeIndex] = edits[readIndex];\n }\n }\n edits.length = writeIndex + 1;\n for (let { range, text, eol } of edits) {\n if (typeof eol === 'number') {\n lastEol = eol;\n }\n if (_core_range_js__WEBPACK_IMPORTED_MODULE_3__.Range.isEmpty(range) && !text) {\n // empty change\n continue;\n }\n const original = model.getValueInRange(range);\n text = text.replace(/\\r\\n|\\n|\\r/g, model.eol);\n if (original === text) {\n // noop\n continue;\n }\n // make sure diff won't take too long\n if (Math.max(text.length, original.length) > EditorSimpleWorker._diffLimit) {\n result.push({ range, text });\n continue;\n }\n // compute diff between original and edit.text\n const changes = (0,_base_common_diff_diff_js__WEBPACK_IMPORTED_MODULE_0__.stringDiff)(original, text, pretty);\n const editOffset = model.offsetAt(_core_range_js__WEBPACK_IMPORTED_MODULE_3__.Range.lift(range).getStartPosition());\n for (const change of changes) {\n const start = model.positionAt(editOffset + change.originalStart);\n const end = model.positionAt(editOffset + change.originalStart + change.originalLength);\n const newEdit = {\n text: text.substr(change.modifiedStart, change.modifiedLength),\n range: { startLineNumber: start.lineNumber, startColumn: start.column, endLineNumber: end.lineNumber, endColumn: end.column }\n };\n if (model.getValueInRange(newEdit.range) !== newEdit.text) {\n result.push(newEdit);\n }\n }\n }\n if (typeof lastEol === 'number') {\n result.push({ eol: lastEol, text: '', range: { startLineNumber: 0, startColumn: 0, endLineNumber: 0, endColumn: 0 } });\n }\n return result;\n }\n // ---- END minimal edits ---------------------------------------------------------------\n async computeLinks(modelUrl) {\n const model = this._getModel(modelUrl);\n if (!model) {\n return null;\n }\n return (0,_languages_linkComputer_js__WEBPACK_IMPORTED_MODULE_6__.computeLinks)(model);\n }\n // --- BEGIN default document colors -----------------------------------------------------------\n async computeDefaultDocumentColors(modelUrl) {\n const model = this._getModel(modelUrl);\n if (!model) {\n return null;\n }\n return (0,_languages_defaultDocumentColorsComputer_js__WEBPACK_IMPORTED_MODULE_13__.computeDefaultDocumentColors)(model);\n }\n async textualSuggest(modelUrls, leadingWord, wordDef, wordDefFlags) {\n const sw = new _base_common_stopwatch_js__WEBPACK_IMPORTED_MODULE_9__.StopWatch();\n const wordDefRegExp = new RegExp(wordDef, wordDefFlags);\n const seen = new Set();\n outer: for (const url of modelUrls) {\n const model = this._getModel(url);\n if (!model) {\n continue;\n }\n for (const word of model.words(wordDefRegExp)) {\n if (word === leadingWord || !isNaN(Number(word))) {\n continue;\n }\n seen.add(word);\n if (seen.size > EditorSimpleWorker._suggestionsLimit) {\n break outer;\n }\n }\n }\n return { words: Array.from(seen), duration: sw.elapsed() };\n }\n // ---- END suggest --------------------------------------------------------------------------\n //#region -- word ranges --\n async computeWordRanges(modelUrl, range, wordDef, wordDefFlags) {\n const model = this._getModel(modelUrl);\n if (!model) {\n return Object.create(null);\n }\n const wordDefRegExp = new RegExp(wordDef, wordDefFlags);\n const result = Object.create(null);\n for (let line = range.startLineNumber; line < range.endLineNumber; line++) {\n const words = model.getLineWords(line, wordDefRegExp);\n for (const word of words) {\n if (!isNaN(Number(word.word))) {\n continue;\n }\n let array = result[word.word];\n if (!array) {\n array = [];\n result[word.word] = array;\n }\n array.push({\n startLineNumber: line,\n startColumn: word.startColumn,\n endLineNumber: line,\n endColumn: word.endColumn\n });\n }\n }\n return result;\n }\n //#endregion\n async navigateValueSet(modelUrl, range, up, wordDef, wordDefFlags) {\n const model = this._getModel(modelUrl);\n if (!model) {\n return null;\n }\n const wordDefRegExp = new RegExp(wordDef, wordDefFlags);\n if (range.startColumn === range.endColumn) {\n range = {\n startLineNumber: range.startLineNumber,\n startColumn: range.startColumn,\n endLineNumber: range.endLineNumber,\n endColumn: range.endColumn + 1\n };\n }\n const selectionText = model.getValueInRange(range);\n const wordRange = model.getWordAtPosition({ lineNumber: range.startLineNumber, column: range.startColumn }, wordDefRegExp);\n if (!wordRange) {\n return null;\n }\n const word = model.getValueInRange(wordRange);\n const result = _languages_supports_inplaceReplaceSupport_js__WEBPACK_IMPORTED_MODULE_7__.BasicInplaceReplace.INSTANCE.navigateValueSet(range, selectionText, wordRange, word, up);\n return result;\n }\n // ---- BEGIN foreign module support --------------------------------------------------------------------------\n loadForeignModule(moduleId, createData, foreignHostMethods) {\n const proxyMethodRequest = (method, args) => {\n return this._host.fhr(method, args);\n };\n const foreignHost = (0,_base_common_objects_js__WEBPACK_IMPORTED_MODULE_12__.createProxyObject)(foreignHostMethods, proxyMethodRequest);\n const ctx = {\n host: foreignHost,\n getMirrorModels: () => {\n return this._getModels();\n }\n };\n if (this._foreignModuleFactory) {\n this._foreignModule = this._foreignModuleFactory(ctx, createData);\n // static foreing module\n return Promise.resolve((0,_base_common_objects_js__WEBPACK_IMPORTED_MODULE_12__.getAllMethodNames)(this._foreignModule));\n }\n // ESM-comment-begin\n // \t\treturn new Promise((resolve, reject) => {\n // \t\t\trequire([moduleId], (foreignModule: { create: IForeignModuleFactory }) => {\n // \t\t\t\tthis._foreignModule = foreignModule.create(ctx, createData);\n // \n // \t\t\t\tresolve(getAllMethodNames(this._foreignModule));\n // \n // \t\t\t}, reject);\n // \t\t});\n // ESM-comment-end\n // ESM-uncomment-begin\n return Promise.reject(new Error(`Unexpected usage`));\n // ESM-uncomment-end\n }\n // foreign method request\n fmr(method, args) {\n if (!this._foreignModule || typeof this._foreignModule[method] !== 'function') {\n return Promise.reject(new Error('Missing requestHandler or method: ' + method));\n }\n try {\n return Promise.resolve(this._foreignModule[method].apply(this._foreignModule, args));\n }\n catch (e) {\n return Promise.reject(e);\n }\n }\n}\n// ---- END diff --------------------------------------------------------------------------\n// ---- BEGIN minimal edits ---------------------------------------------------------------\nEditorSimpleWorker._diffLimit = 100000;\n// ---- BEGIN suggest --------------------------------------------------------------------------\nEditorSimpleWorker._suggestionsLimit = 10000;\n/**\n * Called on the worker side\n * @internal\n */\nfunction create(host) {\n return new EditorSimpleWorker(host, null);\n}\nif (typeof importScripts === 'function') {\n // Running in a web worker\n globalThis.monaco = (0,_editorBaseApi_js__WEBPACK_IMPORTED_MODULE_8__.createMonacoBaseAPI)();\n}\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/common/services/editorSimpleWorker.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/common/services/editorWorker.js":
/*!**********************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/common/services/editorWorker.js ***!
\**********************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ IEditorWorkerService: () => (/* binding */ IEditorWorkerService)\n/* harmony export */ });\n/* harmony import */ var _platform_instantiation_common_instantiation_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../platform/instantiation/common/instantiation.js */ \"./node_modules/monaco-editor/esm/vs/platform/instantiation/common/instantiation.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\nconst IEditorWorkerService = (0,_platform_instantiation_common_instantiation_js__WEBPACK_IMPORTED_MODULE_0__.createDecorator)('editorWorkerService');\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/common/services/editorWorker.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/common/services/getIconClasses.js":
/*!************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/common/services/getIconClasses.js ***!
\************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ getIconClasses: () => (/* binding */ getIconClasses)\n/* harmony export */ });\n/* harmony import */ var _base_common_network_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../base/common/network.js */ \"./node_modules/monaco-editor/esm/vs/base/common/network.js\");\n/* harmony import */ var _base_common_resources_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../base/common/resources.js */ \"./node_modules/monaco-editor/esm/vs/base/common/resources.js\");\n/* harmony import */ var _languages_modesRegistry_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../languages/modesRegistry.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/languages/modesRegistry.js\");\n/* harmony import */ var _platform_files_common_files_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../../platform/files/common/files.js */ \"./node_modules/monaco-editor/esm/vs/platform/files/common/files.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n\n\n\nconst fileIconDirectoryRegex = /(?:\\/|^)(?:([^\\/]+)\\/)?([^\\/]+)$/;\nfunction getIconClasses(modelService, languageService, resource, fileKind, icon) {\n if (icon) {\n return [`codicon-${icon.id}`, 'predefined-file-icon'];\n }\n // we always set these base classes even if we do not have a path\n const classes = fileKind === _platform_files_common_files_js__WEBPACK_IMPORTED_MODULE_3__.FileKind.ROOT_FOLDER ? ['rootfolder-icon'] : fileKind === _platform_files_common_files_js__WEBPACK_IMPORTED_MODULE_3__.FileKind.FOLDER ? ['folder-icon'] : ['file-icon'];\n if (resource) {\n // Get the path and name of the resource. For data-URIs, we need to parse specially\n let name;\n if (resource.scheme === _base_common_network_js__WEBPACK_IMPORTED_MODULE_0__.Schemas.data) {\n const metadata = _base_common_resources_js__WEBPACK_IMPORTED_MODULE_1__.DataUri.parseMetaData(resource);\n name = metadata.get(_base_common_resources_js__WEBPACK_IMPORTED_MODULE_1__.DataUri.META_DATA_LABEL);\n }\n else {\n const match = resource.path.match(fileIconDirectoryRegex);\n if (match) {\n name = cssEscape(match[2].toLowerCase());\n if (match[1]) {\n classes.push(`${cssEscape(match[1].toLowerCase())}-name-dir-icon`); // parent directory\n }\n }\n else {\n name = cssEscape(resource.authority.toLowerCase());\n }\n }\n // Root Folders\n if (fileKind === _platform_files_common_files_js__WEBPACK_IMPORTED_MODULE_3__.FileKind.ROOT_FOLDER) {\n classes.push(`${name}-root-name-folder-icon`);\n }\n // Folders\n else if (fileKind === _platform_files_common_files_js__WEBPACK_IMPORTED_MODULE_3__.FileKind.FOLDER) {\n classes.push(`${name}-name-folder-icon`);\n }\n // Files\n else {\n // Name & Extension(s)\n if (name) {\n classes.push(`${name}-name-file-icon`);\n classes.push(`name-file-icon`); // extra segment to increase file-name score\n // Avoid doing an explosive combination of extensions for very long filenames\n // (most file systems do not allow files > 255 length) with lots of `.` characters\n // https://github.com/microsoft/vscode/issues/116199\n if (name.length <= 255) {\n const dotSegments = name.split('.');\n for (let i = 1; i < dotSegments.length; i++) {\n classes.push(`${dotSegments.slice(i).join('.')}-ext-file-icon`); // add each combination of all found extensions if more than one\n }\n }\n classes.push(`ext-file-icon`); // extra segment to increase file-ext score\n }\n // Detected Mode\n const detectedLanguageId = detectLanguageId(modelService, languageService, resource);\n if (detectedLanguageId) {\n classes.push(`${cssEscape(detectedLanguageId)}-lang-file-icon`);\n }\n }\n }\n return classes;\n}\nfunction detectLanguageId(modelService, languageService, resource) {\n if (!resource) {\n return null; // we need a resource at least\n }\n let languageId = null;\n // Data URI: check for encoded metadata\n if (resource.scheme === _base_common_network_js__WEBPACK_IMPORTED_MODULE_0__.Schemas.data) {\n const metadata = _base_common_resources_js__WEBPACK_IMPORTED_MODULE_1__.DataUri.parseMetaData(resource);\n const mime = metadata.get(_base_common_resources_js__WEBPACK_IMPORTED_MODULE_1__.DataUri.META_DATA_MIME);\n if (mime) {\n languageId = languageService.getLanguageIdByMimeType(mime);\n }\n }\n // Any other URI: check for model if existing\n else {\n const model = modelService.getModel(resource);\n if (model) {\n languageId = model.getLanguageId();\n }\n }\n // only take if the language id is specific (aka no just plain text)\n if (languageId && languageId !== _languages_modesRegistry_js__WEBPACK_IMPORTED_MODULE_2__.PLAINTEXT_LANGUAGE_ID) {\n return languageId;\n }\n // otherwise fallback to path based detection\n return languageService.guessLanguageIdByFilepathOrFirstLine(resource);\n}\nfunction cssEscape(str) {\n return str.replace(/[\\11\\12\\14\\15\\40]/g, '/'); // HTML class names can not contain certain whitespace characters, use / instead, which doesn't exist in file names.\n}\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/common/services/getIconClasses.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/common/services/languageFeatureDebounce.js":
/*!*********************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/common/services/languageFeatureDebounce.js ***!
\*********************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ ILanguageFeatureDebounceService: () => (/* binding */ ILanguageFeatureDebounceService),\n/* harmony export */ LanguageFeatureDebounceService: () => (/* binding */ LanguageFeatureDebounceService)\n/* harmony export */ });\n/* harmony import */ var _base_common_hash_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../base/common/hash.js */ \"./node_modules/monaco-editor/esm/vs/base/common/hash.js\");\n/* harmony import */ var _base_common_map_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../base/common/map.js */ \"./node_modules/monaco-editor/esm/vs/base/common/map.js\");\n/* harmony import */ var _base_common_numbers_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../base/common/numbers.js */ \"./node_modules/monaco-editor/esm/vs/base/common/numbers.js\");\n/* harmony import */ var _platform_environment_common_environment_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../../platform/environment/common/environment.js */ \"./node_modules/monaco-editor/esm/vs/platform/environment/common/environment.js\");\n/* harmony import */ var _platform_instantiation_common_extensions_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../../platform/instantiation/common/extensions.js */ \"./node_modules/monaco-editor/esm/vs/platform/instantiation/common/extensions.js\");\n/* harmony import */ var _platform_instantiation_common_instantiation_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../../../platform/instantiation/common/instantiation.js */ \"./node_modules/monaco-editor/esm/vs/platform/instantiation/common/instantiation.js\");\n/* harmony import */ var _platform_log_common_log_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../../../platform/log/common/log.js */ \"./node_modules/monaco-editor/esm/vs/platform/log/common/log.js\");\n/* harmony import */ var _base_common_network_js__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ../../../base/common/network.js */ \"./node_modules/monaco-editor/esm/vs/base/common/network.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\nvar __decorate = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\n return c > 3 && r && Object.defineProperty(target, key, r), r;\n};\nvar __param = (undefined && undefined.__param) || function (paramIndex, decorator) {\n return function (target, key) { decorator(target, key, paramIndex); }\n};\n\n\n\n\n\n\n\n\nconst ILanguageFeatureDebounceService = (0,_platform_instantiation_common_instantiation_js__WEBPACK_IMPORTED_MODULE_5__.createDecorator)('ILanguageFeatureDebounceService');\nvar IdentityHash;\n(function (IdentityHash) {\n const _hashes = new WeakMap();\n let pool = 0;\n function of(obj) {\n let value = _hashes.get(obj);\n if (value === undefined) {\n value = ++pool;\n _hashes.set(obj, value);\n }\n return value;\n }\n IdentityHash.of = of;\n})(IdentityHash || (IdentityHash = {}));\nclass NullDebounceInformation {\n constructor(_default) {\n this._default = _default;\n }\n get(_model) {\n return this._default;\n }\n update(_model, _value) {\n return this._default;\n }\n default() {\n return this._default;\n }\n}\nclass FeatureDebounceInformation {\n constructor(_logService, _name, _registry, _default, _min, _max) {\n this._logService = _logService;\n this._name = _name;\n this._registry = _registry;\n this._default = _default;\n this._min = _min;\n this._max = _max;\n this._cache = new _base_common_map_js__WEBPACK_IMPORTED_MODULE_1__.LRUCache(50, 0.7);\n }\n _key(model) {\n return model.id + this._registry.all(model).reduce((hashVal, obj) => (0,_base_common_hash_js__WEBPACK_IMPORTED_MODULE_0__.doHash)(IdentityHash.of(obj), hashVal), 0);\n }\n get(model) {\n const key = this._key(model);\n const avg = this._cache.get(key);\n return avg\n ? (0,_base_common_numbers_js__WEBPACK_IMPORTED_MODULE_2__.clamp)(avg.value, this._min, this._max)\n : this.default();\n }\n update(model, value) {\n const key = this._key(model);\n let avg = this._cache.get(key);\n if (!avg) {\n avg = new _base_common_numbers_js__WEBPACK_IMPORTED_MODULE_2__.SlidingWindowAverage(6);\n this._cache.set(key, avg);\n }\n const newValue = (0,_base_common_numbers_js__WEBPACK_IMPORTED_MODULE_2__.clamp)(avg.update(value), this._min, this._max);\n if (!(0,_base_common_network_js__WEBPACK_IMPORTED_MODULE_7__.matchesScheme)(model.uri, 'output')) {\n this._logService.trace(`[DEBOUNCE: ${this._name}] for ${model.uri.toString()} is ${newValue}ms`);\n }\n return newValue;\n }\n _overall() {\n const result = new _base_common_numbers_js__WEBPACK_IMPORTED_MODULE_2__.MovingAverage();\n for (const [, avg] of this._cache) {\n result.update(avg.value);\n }\n return result.value;\n }\n default() {\n const value = (this._overall() | 0) || this._default;\n return (0,_base_common_numbers_js__WEBPACK_IMPORTED_MODULE_2__.clamp)(value, this._min, this._max);\n }\n}\nlet LanguageFeatureDebounceService = class LanguageFeatureDebounceService {\n constructor(_logService, envService) {\n this._logService = _logService;\n this._data = new Map();\n this._isDev = envService.isExtensionDevelopment || !envService.isBuilt;\n }\n for(feature, name, config) {\n var _a, _b, _c;\n const min = (_a = config === null || config === void 0 ? void 0 : config.min) !== null && _a !== void 0 ? _a : 50;\n const max = (_b = config === null || config === void 0 ? void 0 : config.max) !== null && _b !== void 0 ? _b : min ** 2;\n const extra = (_c = config === null || config === void 0 ? void 0 : config.key) !== null && _c !== void 0 ? _c : undefined;\n const key = `${IdentityHash.of(feature)},${min}${extra ? ',' + extra : ''}`;\n let info = this._data.get(key);\n if (!info) {\n if (!this._isDev) {\n this._logService.debug(`[DEBOUNCE: ${name}] is disabled in developed mode`);\n info = new NullDebounceInformation(min * 1.5);\n }\n else {\n info = new FeatureDebounceInformation(this._logService, name, feature, (this._overallAverage() | 0) || (min * 1.5), // default is overall default or derived from min-value\n min, max);\n }\n this._data.set(key, info);\n }\n return info;\n }\n _overallAverage() {\n // Average of all language features. Not a great value but an approximation\n const result = new _base_common_numbers_js__WEBPACK_IMPORTED_MODULE_2__.MovingAverage();\n for (const info of this._data.values()) {\n result.update(info.default());\n }\n return result.value;\n }\n};\nLanguageFeatureDebounceService = __decorate([\n __param(0, _platform_log_common_log_js__WEBPACK_IMPORTED_MODULE_6__.ILogService),\n __param(1, _platform_environment_common_environment_js__WEBPACK_IMPORTED_MODULE_3__.IEnvironmentService)\n], LanguageFeatureDebounceService);\n\n(0,_platform_instantiation_common_extensions_js__WEBPACK_IMPORTED_MODULE_4__.registerSingleton)(ILanguageFeatureDebounceService, LanguageFeatureDebounceService, 1 /* InstantiationType.Delayed */);\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/common/services/languageFeatureDebounce.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/common/services/languageFeatures.js":
/*!**************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/common/services/languageFeatures.js ***!
\**************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ ILanguageFeaturesService: () => (/* binding */ ILanguageFeaturesService)\n/* harmony export */ });\n/* harmony import */ var _platform_instantiation_common_instantiation_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../platform/instantiation/common/instantiation.js */ \"./node_modules/monaco-editor/esm/vs/platform/instantiation/common/instantiation.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\nconst ILanguageFeaturesService = (0,_platform_instantiation_common_instantiation_js__WEBPACK_IMPORTED_MODULE_0__.createDecorator)('ILanguageFeaturesService');\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/common/services/languageFeatures.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/common/services/languageFeaturesService.js":
/*!*********************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/common/services/languageFeaturesService.js ***!
\*********************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ LanguageFeaturesService: () => (/* binding */ LanguageFeaturesService)\n/* harmony export */ });\n/* harmony import */ var _languageFeatureRegistry_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../languageFeatureRegistry.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/languageFeatureRegistry.js\");\n/* harmony import */ var _languageFeatures_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./languageFeatures.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/services/languageFeatures.js\");\n/* harmony import */ var _platform_instantiation_common_extensions_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../platform/instantiation/common/extensions.js */ \"./node_modules/monaco-editor/esm/vs/platform/instantiation/common/extensions.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n\n\nclass LanguageFeaturesService {\n constructor() {\n this.referenceProvider = new _languageFeatureRegistry_js__WEBPACK_IMPORTED_MODULE_0__.LanguageFeatureRegistry(this._score.bind(this));\n this.renameProvider = new _languageFeatureRegistry_js__WEBPACK_IMPORTED_MODULE_0__.LanguageFeatureRegistry(this._score.bind(this));\n this.newSymbolNamesProvider = new _languageFeatureRegistry_js__WEBPACK_IMPORTED_MODULE_0__.LanguageFeatureRegistry(this._score.bind(this));\n this.codeActionProvider = new _languageFeatureRegistry_js__WEBPACK_IMPORTED_MODULE_0__.LanguageFeatureRegistry(this._score.bind(this));\n this.definitionProvider = new _languageFeatureRegistry_js__WEBPACK_IMPORTED_MODULE_0__.LanguageFeatureRegistry(this._score.bind(this));\n this.typeDefinitionProvider = new _languageFeatureRegistry_js__WEBPACK_IMPORTED_MODULE_0__.LanguageFeatureRegistry(this._score.bind(this));\n this.declarationProvider = new _languageFeatureRegistry_js__WEBPACK_IMPORTED_MODULE_0__.LanguageFeatureRegistry(this._score.bind(this));\n this.implementationProvider = new _languageFeatureRegistry_js__WEBPACK_IMPORTED_MODULE_0__.LanguageFeatureRegistry(this._score.bind(this));\n this.documentSymbolProvider = new _languageFeatureRegistry_js__WEBPACK_IMPORTED_MODULE_0__.LanguageFeatureRegistry(this._score.bind(this));\n this.inlayHintsProvider = new _languageFeatureRegistry_js__WEBPACK_IMPORTED_MODULE_0__.LanguageFeatureRegistry(this._score.bind(this));\n this.colorProvider = new _languageFeatureRegistry_js__WEBPACK_IMPORTED_MODULE_0__.LanguageFeatureRegistry(this._score.bind(this));\n this.codeLensProvider = new _languageFeatureRegistry_js__WEBPACK_IMPORTED_MODULE_0__.LanguageFeatureRegistry(this._score.bind(this));\n this.documentFormattingEditProvider = new _languageFeatureRegistry_js__WEBPACK_IMPORTED_MODULE_0__.LanguageFeatureRegistry(this._score.bind(this));\n this.documentRangeFormattingEditProvider = new _languageFeatureRegistry_js__WEBPACK_IMPORTED_MODULE_0__.LanguageFeatureRegistry(this._score.bind(this));\n this.onTypeFormattingEditProvider = new _languageFeatureRegistry_js__WEBPACK_IMPORTED_MODULE_0__.LanguageFeatureRegistry(this._score.bind(this));\n this.signatureHelpProvider = new _languageFeatureRegistry_js__WEBPACK_IMPORTED_MODULE_0__.LanguageFeatureRegistry(this._score.bind(this));\n this.hoverProvider = new _languageFeatureRegistry_js__WEBPACK_IMPORTED_MODULE_0__.LanguageFeatureRegistry(this._score.bind(this));\n this.documentHighlightProvider = new _languageFeatureRegistry_js__WEBPACK_IMPORTED_MODULE_0__.LanguageFeatureRegistry(this._score.bind(this));\n this.multiDocumentHighlightProvider = new _languageFeatureRegistry_js__WEBPACK_IMPORTED_MODULE_0__.LanguageFeatureRegistry(this._score.bind(this));\n this.selectionRangeProvider = new _languageFeatureRegistry_js__WEBPACK_IMPORTED_MODULE_0__.LanguageFeatureRegistry(this._score.bind(this));\n this.foldingRangeProvider = new _languageFeatureRegistry_js__WEBPACK_IMPORTED_MODULE_0__.LanguageFeatureRegistry(this._score.bind(this));\n this.linkProvider = new _languageFeatureRegistry_js__WEBPACK_IMPORTED_MODULE_0__.LanguageFeatureRegistry(this._score.bind(this));\n this.inlineCompletionsProvider = new _languageFeatureRegistry_js__WEBPACK_IMPORTED_MODULE_0__.LanguageFeatureRegistry(this._score.bind(this));\n this.inlineEditProvider = new _languageFeatureRegistry_js__WEBPACK_IMPORTED_MODULE_0__.LanguageFeatureRegistry(this._score.bind(this));\n this.completionProvider = new _languageFeatureRegistry_js__WEBPACK_IMPORTED_MODULE_0__.LanguageFeatureRegistry(this._score.bind(this));\n this.linkedEditingRangeProvider = new _languageFeatureRegistry_js__WEBPACK_IMPORTED_MODULE_0__.LanguageFeatureRegistry(this._score.bind(this));\n this.documentRangeSemanticTokensProvider = new _languageFeatureRegistry_js__WEBPACK_IMPORTED_MODULE_0__.LanguageFeatureRegistry(this._score.bind(this));\n this.documentSemanticTokensProvider = new _languageFeatureRegistry_js__WEBPACK_IMPORTED_MODULE_0__.LanguageFeatureRegistry(this._score.bind(this));\n this.documentOnDropEditProvider = new _languageFeatureRegistry_js__WEBPACK_IMPORTED_MODULE_0__.LanguageFeatureRegistry(this._score.bind(this));\n this.documentPasteEditProvider = new _languageFeatureRegistry_js__WEBPACK_IMPORTED_MODULE_0__.LanguageFeatureRegistry(this._score.bind(this));\n }\n _score(uri) {\n var _a;\n return (_a = this._notebookTypeResolver) === null || _a === void 0 ? void 0 : _a.call(this, uri);\n }\n}\n(0,_platform_instantiation_common_extensions_js__WEBPACK_IMPORTED_MODULE_2__.registerSingleton)(_languageFeatures_js__WEBPACK_IMPORTED_MODULE_1__.ILanguageFeaturesService, LanguageFeaturesService, 1 /* InstantiationType.Delayed */);\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/common/services/languageFeaturesService.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/common/services/languageService.js":
/*!*************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/common/services/languageService.js ***!
\*************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ LanguageService: () => (/* binding */ LanguageService)\n/* harmony export */ });\n/* harmony import */ var _base_common_event_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../base/common/event.js */ \"./node_modules/monaco-editor/esm/vs/base/common/event.js\");\n/* harmony import */ var _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../base/common/lifecycle.js */ \"./node_modules/monaco-editor/esm/vs/base/common/lifecycle.js\");\n/* harmony import */ var _languagesRegistry_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./languagesRegistry.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/services/languagesRegistry.js\");\n/* harmony import */ var _base_common_arrays_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../../base/common/arrays.js */ \"./node_modules/monaco-editor/esm/vs/base/common/arrays.js\");\n/* harmony import */ var _languages_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../languages.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/languages.js\");\n/* harmony import */ var _languages_modesRegistry_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../languages/modesRegistry.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/languages/modesRegistry.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n\n\n\n\n\nclass LanguageService extends _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_1__.Disposable {\n constructor(warnOnOverwrite = false) {\n super();\n this._onDidRequestBasicLanguageFeatures = this._register(new _base_common_event_js__WEBPACK_IMPORTED_MODULE_0__.Emitter());\n this.onDidRequestBasicLanguageFeatures = this._onDidRequestBasicLanguageFeatures.event;\n this._onDidRequestRichLanguageFeatures = this._register(new _base_common_event_js__WEBPACK_IMPORTED_MODULE_0__.Emitter());\n this.onDidRequestRichLanguageFeatures = this._onDidRequestRichLanguageFeatures.event;\n this._onDidChange = this._register(new _base_common_event_js__WEBPACK_IMPORTED_MODULE_0__.Emitter({ leakWarningThreshold: 200 /* https://github.com/microsoft/vscode/issues/119968 */ }));\n this.onDidChange = this._onDidChange.event;\n this._requestedBasicLanguages = new Set();\n this._requestedRichLanguages = new Set();\n LanguageService.instanceCount++;\n this._registry = this._register(new _languagesRegistry_js__WEBPACK_IMPORTED_MODULE_2__.LanguagesRegistry(true, warnOnOverwrite));\n this.languageIdCodec = this._registry.languageIdCodec;\n this._register(this._registry.onDidChange(() => this._onDidChange.fire()));\n }\n dispose() {\n LanguageService.instanceCount--;\n super.dispose();\n }\n isRegisteredLanguageId(languageId) {\n return this._registry.isRegisteredLanguageId(languageId);\n }\n getLanguageIdByLanguageName(languageName) {\n return this._registry.getLanguageIdByLanguageName(languageName);\n }\n getLanguageIdByMimeType(mimeType) {\n return this._registry.getLanguageIdByMimeType(mimeType);\n }\n guessLanguageIdByFilepathOrFirstLine(resource, firstLine) {\n const languageIds = this._registry.guessLanguageIdByFilepathOrFirstLine(resource, firstLine);\n return (0,_base_common_arrays_js__WEBPACK_IMPORTED_MODULE_3__.firstOrDefault)(languageIds, null);\n }\n createById(languageId) {\n return new LanguageSelection(this.onDidChange, () => {\n return this._createAndGetLanguageIdentifier(languageId);\n });\n }\n createByFilepathOrFirstLine(resource, firstLine) {\n return new LanguageSelection(this.onDidChange, () => {\n const languageId = this.guessLanguageIdByFilepathOrFirstLine(resource, firstLine);\n return this._createAndGetLanguageIdentifier(languageId);\n });\n }\n _createAndGetLanguageIdentifier(languageId) {\n if (!languageId || !this.isRegisteredLanguageId(languageId)) {\n // Fall back to plain text if language is unknown\n languageId = _languages_modesRegistry_js__WEBPACK_IMPORTED_MODULE_5__.PLAINTEXT_LANGUAGE_ID;\n }\n return languageId;\n }\n requestBasicLanguageFeatures(languageId) {\n if (!this._requestedBasicLanguages.has(languageId)) {\n this._requestedBasicLanguages.add(languageId);\n this._onDidRequestBasicLanguageFeatures.fire(languageId);\n }\n }\n requestRichLanguageFeatures(languageId) {\n if (!this._requestedRichLanguages.has(languageId)) {\n this._requestedRichLanguages.add(languageId);\n // Ensure basic features are requested\n this.requestBasicLanguageFeatures(languageId);\n // Ensure tokenizers are created\n _languages_js__WEBPACK_IMPORTED_MODULE_4__.TokenizationRegistry.getOrCreate(languageId);\n this._onDidRequestRichLanguageFeatures.fire(languageId);\n }\n }\n}\nLanguageService.instanceCount = 0;\nclass LanguageSelection {\n constructor(_onDidChangeLanguages, _selector) {\n this._onDidChangeLanguages = _onDidChangeLanguages;\n this._selector = _selector;\n this._listener = null;\n this._emitter = null;\n this.languageId = this._selector();\n }\n _dispose() {\n if (this._listener) {\n this._listener.dispose();\n this._listener = null;\n }\n if (this._emitter) {\n this._emitter.dispose();\n this._emitter = null;\n }\n }\n get onDidChange() {\n if (!this._listener) {\n this._listener = this._onDidChangeLanguages(() => this._evaluate());\n }\n if (!this._emitter) {\n this._emitter = new _base_common_event_js__WEBPACK_IMPORTED_MODULE_0__.Emitter({\n onDidRemoveLastListener: () => {\n this._dispose();\n }\n });\n }\n return this._emitter.event;\n }\n _evaluate() {\n var _a;\n const languageId = this._selector();\n if (languageId === this.languageId) {\n // no change\n return;\n }\n this.languageId = languageId;\n (_a = this._emitter) === null || _a === void 0 ? void 0 : _a.fire(this.languageId);\n }\n}\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/common/services/languageService.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/common/services/languagesAssociations.js":
/*!*******************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/common/services/languagesAssociations.js ***!
\*******************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ clearPlatformLanguageAssociations: () => (/* binding */ clearPlatformLanguageAssociations),\n/* harmony export */ getLanguageIds: () => (/* binding */ getLanguageIds),\n/* harmony export */ registerPlatformLanguageAssociation: () => (/* binding */ registerPlatformLanguageAssociation)\n/* harmony export */ });\n/* harmony import */ var _base_common_glob_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../base/common/glob.js */ \"./node_modules/monaco-editor/esm/vs/base/common/glob.js\");\n/* harmony import */ var _base_common_mime_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../base/common/mime.js */ \"./node_modules/monaco-editor/esm/vs/base/common/mime.js\");\n/* harmony import */ var _base_common_network_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../base/common/network.js */ \"./node_modules/monaco-editor/esm/vs/base/common/network.js\");\n/* harmony import */ var _base_common_path_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../../base/common/path.js */ \"./node_modules/monaco-editor/esm/vs/base/common/path.js\");\n/* harmony import */ var _base_common_resources_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../../base/common/resources.js */ \"./node_modules/monaco-editor/esm/vs/base/common/resources.js\");\n/* harmony import */ var _base_common_strings_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../../../base/common/strings.js */ \"./node_modules/monaco-editor/esm/vs/base/common/strings.js\");\n/* harmony import */ var _languages_modesRegistry_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../languages/modesRegistry.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/languages/modesRegistry.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n\n\n\n\n\n\nlet registeredAssociations = [];\nlet nonUserRegisteredAssociations = [];\nlet userRegisteredAssociations = [];\n/**\n * Associate a language to the registry (platform).\n * * **NOTE**: This association will lose over associations registered using `registerConfiguredLanguageAssociation`.\n * * **NOTE**: Use `clearPlatformLanguageAssociations` to remove all associations registered using this function.\n */\nfunction registerPlatformLanguageAssociation(association, warnOnOverwrite = false) {\n _registerLanguageAssociation(association, false, warnOnOverwrite);\n}\nfunction _registerLanguageAssociation(association, userConfigured, warnOnOverwrite) {\n // Register\n const associationItem = toLanguageAssociationItem(association, userConfigured);\n registeredAssociations.push(associationItem);\n if (!associationItem.userConfigured) {\n nonUserRegisteredAssociations.push(associationItem);\n }\n else {\n userRegisteredAssociations.push(associationItem);\n }\n // Check for conflicts unless this is a user configured association\n if (warnOnOverwrite && !associationItem.userConfigured) {\n registeredAssociations.forEach(a => {\n if (a.mime === associationItem.mime || a.userConfigured) {\n return; // same mime or userConfigured is ok\n }\n if (associationItem.extension && a.extension === associationItem.extension) {\n console.warn(`Overwriting extension <<${associationItem.extension}>> to now point to mime <<${associationItem.mime}>>`);\n }\n if (associationItem.filename && a.filename === associationItem.filename) {\n console.warn(`Overwriting filename <<${associationItem.filename}>> to now point to mime <<${associationItem.mime}>>`);\n }\n if (associationItem.filepattern && a.filepattern === associationItem.filepattern) {\n console.warn(`Overwriting filepattern <<${associationItem.filepattern}>> to now point to mime <<${associationItem.mime}>>`);\n }\n if (associationItem.firstline && a.firstline === associationItem.firstline) {\n console.warn(`Overwriting firstline <<${associationItem.firstline}>> to now point to mime <<${associationItem.mime}>>`);\n }\n });\n }\n}\nfunction toLanguageAssociationItem(association, userConfigured) {\n return {\n id: association.id,\n mime: association.mime,\n filename: association.filename,\n extension: association.extension,\n filepattern: association.filepattern,\n firstline: association.firstline,\n userConfigured: userConfigured,\n filenameLowercase: association.filename ? association.filename.toLowerCase() : undefined,\n extensionLowercase: association.extension ? association.extension.toLowerCase() : undefined,\n filepatternLowercase: association.filepattern ? (0,_base_common_glob_js__WEBPACK_IMPORTED_MODULE_0__.parse)(association.filepattern.toLowerCase()) : undefined,\n filepatternOnPath: association.filepattern ? association.filepattern.indexOf(_base_common_path_js__WEBPACK_IMPORTED_MODULE_3__.posix.sep) >= 0 : false\n };\n}\n/**\n * Clear language associations from the registry (platform).\n */\nfunction clearPlatformLanguageAssociations() {\n registeredAssociations = registeredAssociations.filter(a => a.userConfigured);\n nonUserRegisteredAssociations = [];\n}\n/**\n * @see `getMimeTypes`\n */\nfunction getLanguageIds(resource, firstLine) {\n return getAssociations(resource, firstLine).map(item => item.id);\n}\nfunction getAssociations(resource, firstLine) {\n let path;\n if (resource) {\n switch (resource.scheme) {\n case _base_common_network_js__WEBPACK_IMPORTED_MODULE_2__.Schemas.file:\n path = resource.fsPath;\n break;\n case _base_common_network_js__WEBPACK_IMPORTED_MODULE_2__.Schemas.data: {\n const metadata = _base_common_resources_js__WEBPACK_IMPORTED_MODULE_4__.DataUri.parseMetaData(resource);\n path = metadata.get(_base_common_resources_js__WEBPACK_IMPORTED_MODULE_4__.DataUri.META_DATA_LABEL);\n break;\n }\n case _base_common_network_js__WEBPACK_IMPORTED_MODULE_2__.Schemas.vscodeNotebookCell:\n // File path not relevant for language detection of cell\n path = undefined;\n break;\n default:\n path = resource.path;\n }\n }\n if (!path) {\n return [{ id: 'unknown', mime: _base_common_mime_js__WEBPACK_IMPORTED_MODULE_1__.Mimes.unknown }];\n }\n path = path.toLowerCase();\n const filename = (0,_base_common_path_js__WEBPACK_IMPORTED_MODULE_3__.basename)(path);\n // 1.) User configured mappings have highest priority\n const configuredLanguage = getAssociationByPath(path, filename, userRegisteredAssociations);\n if (configuredLanguage) {\n return [configuredLanguage, { id: _languages_modesRegistry_js__WEBPACK_IMPORTED_MODULE_6__.PLAINTEXT_LANGUAGE_ID, mime: _base_common_mime_js__WEBPACK_IMPORTED_MODULE_1__.Mimes.text }];\n }\n // 2.) Registered mappings have middle priority\n const registeredLanguage = getAssociationByPath(path, filename, nonUserRegisteredAssociations);\n if (registeredLanguage) {\n return [registeredLanguage, { id: _languages_modesRegistry_js__WEBPACK_IMPORTED_MODULE_6__.PLAINTEXT_LANGUAGE_ID, mime: _base_common_mime_js__WEBPACK_IMPORTED_MODULE_1__.Mimes.text }];\n }\n // 3.) Firstline has lowest priority\n if (firstLine) {\n const firstlineLanguage = getAssociationByFirstline(firstLine);\n if (firstlineLanguage) {\n return [firstlineLanguage, { id: _languages_modesRegistry_js__WEBPACK_IMPORTED_MODULE_6__.PLAINTEXT_LANGUAGE_ID, mime: _base_common_mime_js__WEBPACK_IMPORTED_MODULE_1__.Mimes.text }];\n }\n }\n return [{ id: 'unknown', mime: _base_common_mime_js__WEBPACK_IMPORTED_MODULE_1__.Mimes.unknown }];\n}\nfunction getAssociationByPath(path, filename, associations) {\n var _a;\n let filenameMatch = undefined;\n let patternMatch = undefined;\n let extensionMatch = undefined;\n // We want to prioritize associations based on the order they are registered so that the last registered\n // association wins over all other. This is for https://github.com/microsoft/vscode/issues/20074\n for (let i = associations.length - 1; i >= 0; i--) {\n const association = associations[i];\n // First exact name match\n if (filename === association.filenameLowercase) {\n filenameMatch = association;\n break; // take it!\n }\n // Longest pattern match\n if (association.filepattern) {\n if (!patternMatch || association.filepattern.length > patternMatch.filepattern.length) {\n const target = association.filepatternOnPath ? path : filename; // match on full path if pattern contains path separator\n if ((_a = association.filepatternLowercase) === null || _a === void 0 ? void 0 : _a.call(association, target)) {\n patternMatch = association;\n }\n }\n }\n // Longest extension match\n if (association.extension) {\n if (!extensionMatch || association.extension.length > extensionMatch.extension.length) {\n if (filename.endsWith(association.extensionLowercase)) {\n extensionMatch = association;\n }\n }\n }\n }\n // 1.) Exact name match has second highest priority\n if (filenameMatch) {\n return filenameMatch;\n }\n // 2.) Match on pattern\n if (patternMatch) {\n return patternMatch;\n }\n // 3.) Match on extension comes next\n if (extensionMatch) {\n return extensionMatch;\n }\n return undefined;\n}\nfunction getAssociationByFirstline(firstLine) {\n if ((0,_base_common_strings_js__WEBPACK_IMPORTED_MODULE_5__.startsWithUTF8BOM)(firstLine)) {\n firstLine = firstLine.substr(1);\n }\n if (firstLine.length > 0) {\n // We want to prioritize associations based on the order they are registered so that the last registered\n // association wins over all other. This is for https://github.com/microsoft/vscode/issues/20074\n for (let i = registeredAssociations.length - 1; i >= 0; i--) {\n const association = registeredAssociations[i];\n if (!association.firstline) {\n continue;\n }\n const matches = firstLine.match(association.firstline);\n if (matches && matches.length > 0) {\n return association;\n }\n }\n }\n return undefined;\n}\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/common/services/languagesAssociations.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/common/services/languagesRegistry.js":
/*!***************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/common/services/languagesRegistry.js ***!
\***************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ LanguageIdCodec: () => (/* binding */ LanguageIdCodec),\n/* harmony export */ LanguagesRegistry: () => (/* binding */ LanguagesRegistry)\n/* harmony export */ });\n/* harmony import */ var _base_common_event_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../base/common/event.js */ \"./node_modules/monaco-editor/esm/vs/base/common/event.js\");\n/* harmony import */ var _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../base/common/lifecycle.js */ \"./node_modules/monaco-editor/esm/vs/base/common/lifecycle.js\");\n/* harmony import */ var _base_common_strings_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../base/common/strings.js */ \"./node_modules/monaco-editor/esm/vs/base/common/strings.js\");\n/* harmony import */ var _languagesAssociations_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./languagesAssociations.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/services/languagesAssociations.js\");\n/* harmony import */ var _languages_modesRegistry_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../languages/modesRegistry.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/languages/modesRegistry.js\");\n/* harmony import */ var _platform_configuration_common_configurationRegistry_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../../../platform/configuration/common/configurationRegistry.js */ \"./node_modules/monaco-editor/esm/vs/platform/configuration/common/configurationRegistry.js\");\n/* harmony import */ var _platform_registry_common_platform_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../../../platform/registry/common/platform.js */ \"./node_modules/monaco-editor/esm/vs/platform/registry/common/platform.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n\n\n\n\n\n\nconst hasOwnProperty = Object.prototype.hasOwnProperty;\nconst NULL_LANGUAGE_ID = 'vs.editor.nullLanguage';\nclass LanguageIdCodec {\n constructor() {\n this._languageIdToLanguage = [];\n this._languageToLanguageId = new Map();\n this._register(NULL_LANGUAGE_ID, 0 /* LanguageId.Null */);\n this._register(_languages_modesRegistry_js__WEBPACK_IMPORTED_MODULE_4__.PLAINTEXT_LANGUAGE_ID, 1 /* LanguageId.PlainText */);\n this._nextLanguageId = 2;\n }\n _register(language, languageId) {\n this._languageIdToLanguage[languageId] = language;\n this._languageToLanguageId.set(language, languageId);\n }\n register(language) {\n if (this._languageToLanguageId.has(language)) {\n return;\n }\n const languageId = this._nextLanguageId++;\n this._register(language, languageId);\n }\n encodeLanguageId(languageId) {\n return this._languageToLanguageId.get(languageId) || 0 /* LanguageId.Null */;\n }\n decodeLanguageId(languageId) {\n return this._languageIdToLanguage[languageId] || NULL_LANGUAGE_ID;\n }\n}\nclass LanguagesRegistry extends _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_1__.Disposable {\n constructor(useModesRegistry = true, warnOnOverwrite = false) {\n super();\n this._onDidChange = this._register(new _base_common_event_js__WEBPACK_IMPORTED_MODULE_0__.Emitter());\n this.onDidChange = this._onDidChange.event;\n LanguagesRegistry.instanceCount++;\n this._warnOnOverwrite = warnOnOverwrite;\n this.languageIdCodec = new LanguageIdCodec();\n this._dynamicLanguages = [];\n this._languages = {};\n this._mimeTypesMap = {};\n this._nameMap = {};\n this._lowercaseNameMap = {};\n if (useModesRegistry) {\n this._initializeFromRegistry();\n this._register(_languages_modesRegistry_js__WEBPACK_IMPORTED_MODULE_4__.ModesRegistry.onDidChangeLanguages((m) => {\n this._initializeFromRegistry();\n }));\n }\n }\n dispose() {\n LanguagesRegistry.instanceCount--;\n super.dispose();\n }\n _initializeFromRegistry() {\n this._languages = {};\n this._mimeTypesMap = {};\n this._nameMap = {};\n this._lowercaseNameMap = {};\n (0,_languagesAssociations_js__WEBPACK_IMPORTED_MODULE_3__.clearPlatformLanguageAssociations)();\n const desc = [].concat(_languages_modesRegistry_js__WEBPACK_IMPORTED_MODULE_4__.ModesRegistry.getLanguages()).concat(this._dynamicLanguages);\n this._registerLanguages(desc);\n }\n _registerLanguages(desc) {\n for (const d of desc) {\n this._registerLanguage(d);\n }\n // Rebuild fast path maps\n this._mimeTypesMap = {};\n this._nameMap = {};\n this._lowercaseNameMap = {};\n Object.keys(this._languages).forEach((langId) => {\n const language = this._languages[langId];\n if (language.name) {\n this._nameMap[language.name] = language.identifier;\n }\n language.aliases.forEach((alias) => {\n this._lowercaseNameMap[alias.toLowerCase()] = language.identifier;\n });\n language.mimetypes.forEach((mimetype) => {\n this._mimeTypesMap[mimetype] = language.identifier;\n });\n });\n _platform_registry_common_platform_js__WEBPACK_IMPORTED_MODULE_6__.Registry.as(_platform_configuration_common_configurationRegistry_js__WEBPACK_IMPORTED_MODULE_5__.Extensions.Configuration).registerOverrideIdentifiers(this.getRegisteredLanguageIds());\n this._onDidChange.fire();\n }\n _registerLanguage(lang) {\n const langId = lang.id;\n let resolvedLanguage;\n if (hasOwnProperty.call(this._languages, langId)) {\n resolvedLanguage = this._languages[langId];\n }\n else {\n this.languageIdCodec.register(langId);\n resolvedLanguage = {\n identifier: langId,\n name: null,\n mimetypes: [],\n aliases: [],\n extensions: [],\n filenames: [],\n configurationFiles: [],\n icons: []\n };\n this._languages[langId] = resolvedLanguage;\n }\n this._mergeLanguage(resolvedLanguage, lang);\n }\n _mergeLanguage(resolvedLanguage, lang) {\n const langId = lang.id;\n let primaryMime = null;\n if (Array.isArray(lang.mimetypes) && lang.mimetypes.length > 0) {\n resolvedLanguage.mimetypes.push(...lang.mimetypes);\n primaryMime = lang.mimetypes[0];\n }\n if (!primaryMime) {\n primaryMime = `text/x-${langId}`;\n resolvedLanguage.mimetypes.push(primaryMime);\n }\n if (Array.isArray(lang.extensions)) {\n if (lang.configuration) {\n // insert first as this appears to be the 'primary' language definition\n resolvedLanguage.extensions = lang.extensions.concat(resolvedLanguage.extensions);\n }\n else {\n resolvedLanguage.extensions = resolvedLanguage.extensions.concat(lang.extensions);\n }\n for (const extension of lang.extensions) {\n (0,_languagesAssociations_js__WEBPACK_IMPORTED_MODULE_3__.registerPlatformLanguageAssociation)({ id: langId, mime: primaryMime, extension: extension }, this._warnOnOverwrite);\n }\n }\n if (Array.isArray(lang.filenames)) {\n for (const filename of lang.filenames) {\n (0,_languagesAssociations_js__WEBPACK_IMPORTED_MODULE_3__.registerPlatformLanguageAssociation)({ id: langId, mime: primaryMime, filename: filename }, this._warnOnOverwrite);\n resolvedLanguage.filenames.push(filename);\n }\n }\n if (Array.isArray(lang.filenamePatterns)) {\n for (const filenamePattern of lang.filenamePatterns) {\n (0,_languagesAssociations_js__WEBPACK_IMPORTED_MODULE_3__.registerPlatformLanguageAssociation)({ id: langId, mime: primaryMime, filepattern: filenamePattern }, this._warnOnOverwrite);\n }\n }\n if (typeof lang.firstLine === 'string' && lang.firstLine.length > 0) {\n let firstLineRegexStr = lang.firstLine;\n if (firstLineRegexStr.charAt(0) !== '^') {\n firstLineRegexStr = '^' + firstLineRegexStr;\n }\n try {\n const firstLineRegex = new RegExp(firstLineRegexStr);\n if (!(0,_base_common_strings_js__WEBPACK_IMPORTED_MODULE_2__.regExpLeadsToEndlessLoop)(firstLineRegex)) {\n (0,_languagesAssociations_js__WEBPACK_IMPORTED_MODULE_3__.registerPlatformLanguageAssociation)({ id: langId, mime: primaryMime, firstline: firstLineRegex }, this._warnOnOverwrite);\n }\n }\n catch (err) {\n // Most likely, the regex was bad\n console.warn(`[${lang.id}]: Invalid regular expression \\`${firstLineRegexStr}\\`: `, err);\n }\n }\n resolvedLanguage.aliases.push(langId);\n let langAliases = null;\n if (typeof lang.aliases !== 'undefined' && Array.isArray(lang.aliases)) {\n if (lang.aliases.length === 0) {\n // signal that this language should not get a name\n langAliases = [null];\n }\n else {\n langAliases = lang.aliases;\n }\n }\n if (langAliases !== null) {\n for (const langAlias of langAliases) {\n if (!langAlias || langAlias.length === 0) {\n continue;\n }\n resolvedLanguage.aliases.push(langAlias);\n }\n }\n const containsAliases = (langAliases !== null && langAliases.length > 0);\n if (containsAliases && langAliases[0] === null) {\n // signal that this language should not get a name\n }\n else {\n const bestName = (containsAliases ? langAliases[0] : null) || langId;\n if (containsAliases || !resolvedLanguage.name) {\n resolvedLanguage.name = bestName;\n }\n }\n if (lang.configuration) {\n resolvedLanguage.configurationFiles.push(lang.configuration);\n }\n if (lang.icon) {\n resolvedLanguage.icons.push(lang.icon);\n }\n }\n isRegisteredLanguageId(languageId) {\n if (!languageId) {\n return false;\n }\n return hasOwnProperty.call(this._languages, languageId);\n }\n getRegisteredLanguageIds() {\n return Object.keys(this._languages);\n }\n getLanguageIdByLanguageName(languageName) {\n const languageNameLower = languageName.toLowerCase();\n if (!hasOwnProperty.call(this._lowercaseNameMap, languageNameLower)) {\n return null;\n }\n return this._lowercaseNameMap[languageNameLower];\n }\n getLanguageIdByMimeType(mimeType) {\n if (!mimeType) {\n return null;\n }\n if (hasOwnProperty.call(this._mimeTypesMap, mimeType)) {\n return this._mimeTypesMap[mimeType];\n }\n return null;\n }\n guessLanguageIdByFilepathOrFirstLine(resource, firstLine) {\n if (!resource && !firstLine) {\n return [];\n }\n return (0,_languagesAssociations_js__WEBPACK_IMPORTED_MODULE_3__.getLanguageIds)(resource, firstLine);\n }\n}\nLanguagesRegistry.instanceCount = 0;\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/common/services/languagesRegistry.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/common/services/markerDecorations.js":
/*!***************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/common/services/markerDecorations.js ***!
\***************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ IMarkerDecorationsService: () => (/* binding */ IMarkerDecorationsService)\n/* harmony export */ });\n/* harmony import */ var _platform_instantiation_common_instantiation_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../platform/instantiation/common/instantiation.js */ \"./node_modules/monaco-editor/esm/vs/platform/instantiation/common/instantiation.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\nconst IMarkerDecorationsService = (0,_platform_instantiation_common_instantiation_js__WEBPACK_IMPORTED_MODULE_0__.createDecorator)('markerDecorationsService');\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/common/services/markerDecorations.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/common/services/markerDecorationsService.js":
/*!**********************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/common/services/markerDecorationsService.js ***!
\**********************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ MarkerDecorationsService: () => (/* binding */ MarkerDecorationsService)\n/* harmony export */ });\n/* harmony import */ var _platform_markers_common_markers_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../platform/markers/common/markers.js */ \"./node_modules/monaco-editor/esm/vs/platform/markers/common/markers.js\");\n/* harmony import */ var _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../base/common/lifecycle.js */ \"./node_modules/monaco-editor/esm/vs/base/common/lifecycle.js\");\n/* harmony import */ var _model_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../model.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/model.js\");\n/* harmony import */ var _platform_theme_common_themeService_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../../platform/theme/common/themeService.js */ \"./node_modules/monaco-editor/esm/vs/platform/theme/common/themeService.js\");\n/* harmony import */ var _core_editorColorRegistry_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../core/editorColorRegistry.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/core/editorColorRegistry.js\");\n/* harmony import */ var _model_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./model.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/services/model.js\");\n/* harmony import */ var _core_range_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../core/range.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/core/range.js\");\n/* harmony import */ var _base_common_network_js__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ../../../base/common/network.js */ \"./node_modules/monaco-editor/esm/vs/base/common/network.js\");\n/* harmony import */ var _base_common_event_js__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ../../../base/common/event.js */ \"./node_modules/monaco-editor/esm/vs/base/common/event.js\");\n/* harmony import */ var _platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ../../../platform/theme/common/colorRegistry.js */ \"./node_modules/monaco-editor/esm/vs/platform/theme/common/colorRegistry.js\");\n/* harmony import */ var _base_common_map_js__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! ../../../base/common/map.js */ \"./node_modules/monaco-editor/esm/vs/base/common/map.js\");\n/* harmony import */ var _base_common_collections_js__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(/*! ../../../base/common/collections.js */ \"./node_modules/monaco-editor/esm/vs/base/common/collections.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\nvar __decorate = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\n return c > 3 && r && Object.defineProperty(target, key, r), r;\n};\nvar __param = (undefined && undefined.__param) || function (paramIndex, decorator) {\n return function (target, key) { decorator(target, key, paramIndex); }\n};\n\n\n\n\n\n\n\n\n\n\n\n\nlet MarkerDecorationsService = class MarkerDecorationsService extends _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_1__.Disposable {\n constructor(modelService, _markerService) {\n super();\n this._markerService = _markerService;\n this._onDidChangeMarker = this._register(new _base_common_event_js__WEBPACK_IMPORTED_MODULE_8__.Emitter());\n this._markerDecorations = new _base_common_map_js__WEBPACK_IMPORTED_MODULE_10__.ResourceMap();\n modelService.getModels().forEach(model => this._onModelAdded(model));\n this._register(modelService.onModelAdded(this._onModelAdded, this));\n this._register(modelService.onModelRemoved(this._onModelRemoved, this));\n this._register(this._markerService.onMarkerChanged(this._handleMarkerChange, this));\n }\n dispose() {\n super.dispose();\n this._markerDecorations.forEach(value => value.dispose());\n this._markerDecorations.clear();\n }\n getMarker(uri, decoration) {\n const markerDecorations = this._markerDecorations.get(uri);\n return markerDecorations ? (markerDecorations.getMarker(decoration) || null) : null;\n }\n _handleMarkerChange(changedResources) {\n changedResources.forEach((resource) => {\n const markerDecorations = this._markerDecorations.get(resource);\n if (markerDecorations) {\n this._updateDecorations(markerDecorations);\n }\n });\n }\n _onModelAdded(model) {\n const markerDecorations = new MarkerDecorations(model);\n this._markerDecorations.set(model.uri, markerDecorations);\n this._updateDecorations(markerDecorations);\n }\n _onModelRemoved(model) {\n var _a;\n const markerDecorations = this._markerDecorations.get(model.uri);\n if (markerDecorations) {\n markerDecorations.dispose();\n this._markerDecorations.delete(model.uri);\n }\n // clean up markers for internal, transient models\n if (model.uri.scheme === _base_common_network_js__WEBPACK_IMPORTED_MODULE_7__.Schemas.inMemory\n || model.uri.scheme === _base_common_network_js__WEBPACK_IMPORTED_MODULE_7__.Schemas.internal\n || model.uri.scheme === _base_common_network_js__WEBPACK_IMPORTED_MODULE_7__.Schemas.vscode) {\n (_a = this._markerService) === null || _a === void 0 ? void 0 : _a.read({ resource: model.uri }).map(marker => marker.owner).forEach(owner => this._markerService.remove(owner, [model.uri]));\n }\n }\n _updateDecorations(markerDecorations) {\n // Limit to the first 500 errors/warnings\n const markers = this._markerService.read({ resource: markerDecorations.model.uri, take: 500 });\n if (markerDecorations.update(markers)) {\n this._onDidChangeMarker.fire(markerDecorations.model);\n }\n }\n};\nMarkerDecorationsService = __decorate([\n __param(0, _model_js__WEBPACK_IMPORTED_MODULE_5__.IModelService),\n __param(1, _platform_markers_common_markers_js__WEBPACK_IMPORTED_MODULE_0__.IMarkerService)\n], MarkerDecorationsService);\n\nclass MarkerDecorations extends _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_1__.Disposable {\n constructor(model) {\n super();\n this.model = model;\n this._map = new _base_common_map_js__WEBPACK_IMPORTED_MODULE_10__.BidirectionalMap();\n this._register((0,_base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_1__.toDisposable)(() => {\n this.model.deltaDecorations([...this._map.values()], []);\n this._map.clear();\n }));\n }\n update(markers) {\n // We use the fact that marker instances are not recreated when different owners\n // update. So we can compare references to find out what changed since the last update.\n const { added, removed } = (0,_base_common_collections_js__WEBPACK_IMPORTED_MODULE_11__.diffSets)(new Set(this._map.keys()), new Set(markers));\n if (added.length === 0 && removed.length === 0) {\n return false;\n }\n const oldIds = removed.map(marker => this._map.get(marker));\n const newDecorations = added.map(marker => {\n return {\n range: this._createDecorationRange(this.model, marker),\n options: this._createDecorationOption(marker)\n };\n });\n const ids = this.model.deltaDecorations(oldIds, newDecorations);\n for (const removedMarker of removed) {\n this._map.delete(removedMarker);\n }\n for (let index = 0; index < ids.length; index++) {\n this._map.set(added[index], ids[index]);\n }\n return true;\n }\n getMarker(decoration) {\n return this._map.getKey(decoration.id);\n }\n _createDecorationRange(model, rawMarker) {\n let ret = _core_range_js__WEBPACK_IMPORTED_MODULE_6__.Range.lift(rawMarker);\n if (rawMarker.severity === _platform_markers_common_markers_js__WEBPACK_IMPORTED_MODULE_0__.MarkerSeverity.Hint && !this._hasMarkerTag(rawMarker, 1 /* MarkerTag.Unnecessary */) && !this._hasMarkerTag(rawMarker, 2 /* MarkerTag.Deprecated */)) {\n // * never render hints on multiple lines\n // * make enough space for three dots\n ret = ret.setEndPosition(ret.startLineNumber, ret.startColumn + 2);\n }\n ret = model.validateRange(ret);\n if (ret.isEmpty()) {\n const maxColumn = model.getLineLastNonWhitespaceColumn(ret.startLineNumber) ||\n model.getLineMaxColumn(ret.startLineNumber);\n if (maxColumn === 1 || ret.endColumn >= maxColumn) {\n // empty line or behind eol\n // keep the range as is, it will be rendered 1ch wide\n return ret;\n }\n const word = model.getWordAtPosition(ret.getStartPosition());\n if (word) {\n ret = new _core_range_js__WEBPACK_IMPORTED_MODULE_6__.Range(ret.startLineNumber, word.startColumn, ret.endLineNumber, word.endColumn);\n }\n }\n else if (rawMarker.endColumn === Number.MAX_VALUE && rawMarker.startColumn === 1 && ret.startLineNumber === ret.endLineNumber) {\n const minColumn = model.getLineFirstNonWhitespaceColumn(rawMarker.startLineNumber);\n if (minColumn < ret.endColumn) {\n ret = new _core_range_js__WEBPACK_IMPORTED_MODULE_6__.Range(ret.startLineNumber, minColumn, ret.endLineNumber, ret.endColumn);\n rawMarker.startColumn = minColumn;\n }\n }\n return ret;\n }\n _createDecorationOption(marker) {\n let className;\n let color = undefined;\n let zIndex;\n let inlineClassName = undefined;\n let minimap;\n switch (marker.severity) {\n case _platform_markers_common_markers_js__WEBPACK_IMPORTED_MODULE_0__.MarkerSeverity.Hint:\n if (this._hasMarkerTag(marker, 2 /* MarkerTag.Deprecated */)) {\n className = undefined;\n }\n else if (this._hasMarkerTag(marker, 1 /* MarkerTag.Unnecessary */)) {\n className = \"squiggly-unnecessary\" /* ClassName.EditorUnnecessaryDecoration */;\n }\n else {\n className = \"squiggly-hint\" /* ClassName.EditorHintDecoration */;\n }\n zIndex = 0;\n break;\n case _platform_markers_common_markers_js__WEBPACK_IMPORTED_MODULE_0__.MarkerSeverity.Info:\n className = \"squiggly-info\" /* ClassName.EditorInfoDecoration */;\n color = (0,_platform_theme_common_themeService_js__WEBPACK_IMPORTED_MODULE_3__.themeColorFromId)(_core_editorColorRegistry_js__WEBPACK_IMPORTED_MODULE_4__.overviewRulerInfo);\n zIndex = 10;\n minimap = {\n color: (0,_platform_theme_common_themeService_js__WEBPACK_IMPORTED_MODULE_3__.themeColorFromId)(_platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_9__.minimapInfo),\n position: _model_js__WEBPACK_IMPORTED_MODULE_2__.MinimapPosition.Inline\n };\n break;\n case _platform_markers_common_markers_js__WEBPACK_IMPORTED_MODULE_0__.MarkerSeverity.Warning:\n className = \"squiggly-warning\" /* ClassName.EditorWarningDecoration */;\n color = (0,_platform_theme_common_themeService_js__WEBPACK_IMPORTED_MODULE_3__.themeColorFromId)(_core_editorColorRegistry_js__WEBPACK_IMPORTED_MODULE_4__.overviewRulerWarning);\n zIndex = 20;\n minimap = {\n color: (0,_platform_theme_common_themeService_js__WEBPACK_IMPORTED_MODULE_3__.themeColorFromId)(_platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_9__.minimapWarning),\n position: _model_js__WEBPACK_IMPORTED_MODULE_2__.MinimapPosition.Inline\n };\n break;\n case _platform_markers_common_markers_js__WEBPACK_IMPORTED_MODULE_0__.MarkerSeverity.Error:\n default:\n className = \"squiggly-error\" /* ClassName.EditorErrorDecoration */;\n color = (0,_platform_theme_common_themeService_js__WEBPACK_IMPORTED_MODULE_3__.themeColorFromId)(_core_editorColorRegistry_js__WEBPACK_IMPORTED_MODULE_4__.overviewRulerError);\n zIndex = 30;\n minimap = {\n color: (0,_platform_theme_common_themeService_js__WEBPACK_IMPORTED_MODULE_3__.themeColorFromId)(_platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_9__.minimapError),\n position: _model_js__WEBPACK_IMPORTED_MODULE_2__.MinimapPosition.Inline\n };\n break;\n }\n if (marker.tags) {\n if (marker.tags.indexOf(1 /* MarkerTag.Unnecessary */) !== -1) {\n inlineClassName = \"squiggly-inline-unnecessary\" /* ClassName.EditorUnnecessaryInlineDecoration */;\n }\n if (marker.tags.indexOf(2 /* MarkerTag.Deprecated */) !== -1) {\n inlineClassName = \"squiggly-inline-deprecated\" /* ClassName.EditorDeprecatedInlineDecoration */;\n }\n }\n return {\n description: 'marker-decoration',\n stickiness: 1 /* TrackedRangeStickiness.NeverGrowsWhenTypingAtEdges */,\n className,\n showIfCollapsed: true,\n overviewRuler: {\n color,\n position: _model_js__WEBPACK_IMPORTED_MODULE_2__.OverviewRulerLane.Right\n },\n minimap,\n zIndex,\n inlineClassName,\n };\n }\n _hasMarkerTag(marker, tag) {\n if (marker.tags) {\n return marker.tags.indexOf(tag) >= 0;\n }\n return false;\n }\n}\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/common/services/markerDecorationsService.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/common/services/model.js":
/*!***************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/common/services/model.js ***!
\***************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ IModelService: () => (/* binding */ IModelService)\n/* harmony export */ });\n/* harmony import */ var _platform_instantiation_common_instantiation_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../platform/instantiation/common/instantiation.js */ \"./node_modules/monaco-editor/esm/vs/platform/instantiation/common/instantiation.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\nconst IModelService = (0,_platform_instantiation_common_instantiation_js__WEBPACK_IMPORTED_MODULE_0__.createDecorator)('modelService');\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/common/services/model.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/common/services/modelService.js":
/*!**********************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/common/services/modelService.js ***!
\**********************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ DefaultModelSHA1Computer: () => (/* binding */ DefaultModelSHA1Computer),\n/* harmony export */ ModelService: () => (/* binding */ ModelService)\n/* harmony export */ });\n/* harmony import */ var _base_common_event_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../base/common/event.js */ \"./node_modules/monaco-editor/esm/vs/base/common/event.js\");\n/* harmony import */ var _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../base/common/lifecycle.js */ \"./node_modules/monaco-editor/esm/vs/base/common/lifecycle.js\");\n/* harmony import */ var _base_common_platform_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../base/common/platform.js */ \"./node_modules/monaco-editor/esm/vs/base/common/platform.js\");\n/* harmony import */ var _model_textModel_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../model/textModel.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/model/textModel.js\");\n/* harmony import */ var _core_textModelDefaults_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../core/textModelDefaults.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/core/textModelDefaults.js\");\n/* harmony import */ var _languages_modesRegistry_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../languages/modesRegistry.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/languages/modesRegistry.js\");\n/* harmony import */ var _languages_language_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../languages/language.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/languages/language.js\");\n/* harmony import */ var _textResourceConfiguration_js__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ./textResourceConfiguration.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/services/textResourceConfiguration.js\");\n/* harmony import */ var _platform_configuration_common_configuration_js__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ../../../platform/configuration/common/configuration.js */ \"./node_modules/monaco-editor/esm/vs/platform/configuration/common/configuration.js\");\n/* harmony import */ var _platform_undoRedo_common_undoRedo_js__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ../../../platform/undoRedo/common/undoRedo.js */ \"./node_modules/monaco-editor/esm/vs/platform/undoRedo/common/undoRedo.js\");\n/* harmony import */ var _base_common_hash_js__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! ../../../base/common/hash.js */ \"./node_modules/monaco-editor/esm/vs/base/common/hash.js\");\n/* harmony import */ var _model_editStack_js__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(/*! ../model/editStack.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/model/editStack.js\");\n/* harmony import */ var _base_common_network_js__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(/*! ../../../base/common/network.js */ \"./node_modules/monaco-editor/esm/vs/base/common/network.js\");\n/* harmony import */ var _base_common_objects_js__WEBPACK_IMPORTED_MODULE_13__ = __webpack_require__(/*! ../../../base/common/objects.js */ \"./node_modules/monaco-editor/esm/vs/base/common/objects.js\");\n/* harmony import */ var _languages_languageConfigurationRegistry_js__WEBPACK_IMPORTED_MODULE_14__ = __webpack_require__(/*! ../languages/languageConfigurationRegistry.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/languages/languageConfigurationRegistry.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\nvar __decorate = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\n return c > 3 && r && Object.defineProperty(target, key, r), r;\n};\nvar __param = (undefined && undefined.__param) || function (paramIndex, decorator) {\n return function (target, key) { decorator(target, key, paramIndex); }\n};\nvar ModelService_1;\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nfunction MODEL_ID(resource) {\n return resource.toString();\n}\nclass ModelData {\n constructor(model, onWillDispose, onDidChangeLanguage) {\n this.model = model;\n this._modelEventListeners = new _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_1__.DisposableStore();\n this.model = model;\n this._modelEventListeners.add(model.onWillDispose(() => onWillDispose(model)));\n this._modelEventListeners.add(model.onDidChangeLanguage((e) => onDidChangeLanguage(model, e)));\n }\n dispose() {\n this._modelEventListeners.dispose();\n }\n}\nconst DEFAULT_EOL = (_base_common_platform_js__WEBPACK_IMPORTED_MODULE_2__.isLinux || _base_common_platform_js__WEBPACK_IMPORTED_MODULE_2__.isMacintosh) ? 1 /* DefaultEndOfLine.LF */ : 2 /* DefaultEndOfLine.CRLF */;\nclass DisposedModelInfo {\n constructor(uri, initialUndoRedoSnapshot, time, sharesUndoRedoStack, heapSize, sha1, versionId, alternativeVersionId) {\n this.uri = uri;\n this.initialUndoRedoSnapshot = initialUndoRedoSnapshot;\n this.time = time;\n this.sharesUndoRedoStack = sharesUndoRedoStack;\n this.heapSize = heapSize;\n this.sha1 = sha1;\n this.versionId = versionId;\n this.alternativeVersionId = alternativeVersionId;\n }\n}\nlet ModelService = ModelService_1 = class ModelService extends _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_1__.Disposable {\n constructor(_configurationService, _resourcePropertiesService, _undoRedoService, _languageService, _languageConfigurationService) {\n super();\n this._configurationService = _configurationService;\n this._resourcePropertiesService = _resourcePropertiesService;\n this._undoRedoService = _undoRedoService;\n this._languageService = _languageService;\n this._languageConfigurationService = _languageConfigurationService;\n this._onModelAdded = this._register(new _base_common_event_js__WEBPACK_IMPORTED_MODULE_0__.Emitter());\n this.onModelAdded = this._onModelAdded.event;\n this._onModelRemoved = this._register(new _base_common_event_js__WEBPACK_IMPORTED_MODULE_0__.Emitter());\n this.onModelRemoved = this._onModelRemoved.event;\n this._onModelModeChanged = this._register(new _base_common_event_js__WEBPACK_IMPORTED_MODULE_0__.Emitter());\n this.onModelLanguageChanged = this._onModelModeChanged.event;\n this._modelCreationOptionsByLanguageAndResource = Object.create(null);\n this._models = {};\n this._disposedModels = new Map();\n this._disposedModelsHeapSize = 0;\n this._register(this._configurationService.onDidChangeConfiguration(e => this._updateModelOptions(e)));\n this._updateModelOptions(undefined);\n }\n static _readModelOptions(config, isForSimpleWidget) {\n var _a;\n let tabSize = _core_textModelDefaults_js__WEBPACK_IMPORTED_MODULE_4__.EDITOR_MODEL_DEFAULTS.tabSize;\n if (config.editor && typeof config.editor.tabSize !== 'undefined') {\n const parsedTabSize = parseInt(config.editor.tabSize, 10);\n if (!isNaN(parsedTabSize)) {\n tabSize = parsedTabSize;\n }\n if (tabSize < 1) {\n tabSize = 1;\n }\n }\n let indentSize = 'tabSize';\n if (config.editor && typeof config.editor.indentSize !== 'undefined' && config.editor.indentSize !== 'tabSize') {\n const parsedIndentSize = parseInt(config.editor.indentSize, 10);\n if (!isNaN(parsedIndentSize)) {\n indentSize = Math.max(parsedIndentSize, 1);\n }\n }\n let insertSpaces = _core_textModelDefaults_js__WEBPACK_IMPORTED_MODULE_4__.EDITOR_MODEL_DEFAULTS.insertSpaces;\n if (config.editor && typeof config.editor.insertSpaces !== 'undefined') {\n insertSpaces = (config.editor.insertSpaces === 'false' ? false : Boolean(config.editor.insertSpaces));\n }\n let newDefaultEOL = DEFAULT_EOL;\n const eol = config.eol;\n if (eol === '\\r\\n') {\n newDefaultEOL = 2 /* DefaultEndOfLine.CRLF */;\n }\n else if (eol === '\\n') {\n newDefaultEOL = 1 /* DefaultEndOfLine.LF */;\n }\n let trimAutoWhitespace = _core_textModelDefaults_js__WEBPACK_IMPORTED_MODULE_4__.EDITOR_MODEL_DEFAULTS.trimAutoWhitespace;\n if (config.editor && typeof config.editor.trimAutoWhitespace !== 'undefined') {\n trimAutoWhitespace = (config.editor.trimAutoWhitespace === 'false' ? false : Boolean(config.editor.trimAutoWhitespace));\n }\n let detectIndentation = _core_textModelDefaults_js__WEBPACK_IMPORTED_MODULE_4__.EDITOR_MODEL_DEFAULTS.detectIndentation;\n if (config.editor && typeof config.editor.detectIndentation !== 'undefined') {\n detectIndentation = (config.editor.detectIndentation === 'false' ? false : Boolean(config.editor.detectIndentation));\n }\n let largeFileOptimizations = _core_textModelDefaults_js__WEBPACK_IMPORTED_MODULE_4__.EDITOR_MODEL_DEFAULTS.largeFileOptimizations;\n if (config.editor && typeof config.editor.largeFileOptimizations !== 'undefined') {\n largeFileOptimizations = (config.editor.largeFileOptimizations === 'false' ? false : Boolean(config.editor.largeFileOptimizations));\n }\n let bracketPairColorizationOptions = _core_textModelDefaults_js__WEBPACK_IMPORTED_MODULE_4__.EDITOR_MODEL_DEFAULTS.bracketPairColorizationOptions;\n if (((_a = config.editor) === null || _a === void 0 ? void 0 : _a.bracketPairColorization) && typeof config.editor.bracketPairColorization === 'object') {\n bracketPairColorizationOptions = {\n enabled: !!config.editor.bracketPairColorization.enabled,\n independentColorPoolPerBracketType: !!config.editor.bracketPairColorization.independentColorPoolPerBracketType\n };\n }\n return {\n isForSimpleWidget: isForSimpleWidget,\n tabSize: tabSize,\n indentSize: indentSize,\n insertSpaces: insertSpaces,\n detectIndentation: detectIndentation,\n defaultEOL: newDefaultEOL,\n trimAutoWhitespace: trimAutoWhitespace,\n largeFileOptimizations: largeFileOptimizations,\n bracketPairColorizationOptions\n };\n }\n _getEOL(resource, language) {\n if (resource) {\n return this._resourcePropertiesService.getEOL(resource, language);\n }\n const eol = this._configurationService.getValue('files.eol', { overrideIdentifier: language });\n if (eol && typeof eol === 'string' && eol !== 'auto') {\n return eol;\n }\n return _base_common_platform_js__WEBPACK_IMPORTED_MODULE_2__.OS === 3 /* platform.OperatingSystem.Linux */ || _base_common_platform_js__WEBPACK_IMPORTED_MODULE_2__.OS === 2 /* platform.OperatingSystem.Macintosh */ ? '\\n' : '\\r\\n';\n }\n _shouldRestoreUndoStack() {\n const result = this._configurationService.getValue('files.restoreUndoStack');\n if (typeof result === 'boolean') {\n return result;\n }\n return true;\n }\n getCreationOptions(languageIdOrSelection, resource, isForSimpleWidget) {\n const language = (typeof languageIdOrSelection === 'string' ? languageIdOrSelection : languageIdOrSelection.languageId);\n let creationOptions = this._modelCreationOptionsByLanguageAndResource[language + resource];\n if (!creationOptions) {\n const editor = this._configurationService.getValue('editor', { overrideIdentifier: language, resource });\n const eol = this._getEOL(resource, language);\n creationOptions = ModelService_1._readModelOptions({ editor, eol }, isForSimpleWidget);\n this._modelCreationOptionsByLanguageAndResource[language + resource] = creationOptions;\n }\n return creationOptions;\n }\n _updateModelOptions(e) {\n const oldOptionsByLanguageAndResource = this._modelCreationOptionsByLanguageAndResource;\n this._modelCreationOptionsByLanguageAndResource = Object.create(null);\n // Update options on all models\n const keys = Object.keys(this._models);\n for (let i = 0, len = keys.length; i < len; i++) {\n const modelId = keys[i];\n const modelData = this._models[modelId];\n const language = modelData.model.getLanguageId();\n const uri = modelData.model.uri;\n if (e && !e.affectsConfiguration('editor', { overrideIdentifier: language, resource: uri }) && !e.affectsConfiguration('files.eol', { overrideIdentifier: language, resource: uri })) {\n continue; // perf: skip if this model is not affected by configuration change\n }\n const oldOptions = oldOptionsByLanguageAndResource[language + uri];\n const newOptions = this.getCreationOptions(language, uri, modelData.model.isForSimpleWidget);\n ModelService_1._setModelOptionsForModel(modelData.model, newOptions, oldOptions);\n }\n }\n static _setModelOptionsForModel(model, newOptions, currentOptions) {\n if (currentOptions && currentOptions.defaultEOL !== newOptions.defaultEOL && model.getLineCount() === 1) {\n model.setEOL(newOptions.defaultEOL === 1 /* DefaultEndOfLine.LF */ ? 0 /* EndOfLineSequence.LF */ : 1 /* EndOfLineSequence.CRLF */);\n }\n if (currentOptions\n && (currentOptions.detectIndentation === newOptions.detectIndentation)\n && (currentOptions.insertSpaces === newOptions.insertSpaces)\n && (currentOptions.tabSize === newOptions.tabSize)\n && (currentOptions.indentSize === newOptions.indentSize)\n && (currentOptions.trimAutoWhitespace === newOptions.trimAutoWhitespace)\n && (0,_base_common_objects_js__WEBPACK_IMPORTED_MODULE_13__.equals)(currentOptions.bracketPairColorizationOptions, newOptions.bracketPairColorizationOptions)) {\n // Same indent opts, no need to touch the model\n return;\n }\n if (newOptions.detectIndentation) {\n model.detectIndentation(newOptions.insertSpaces, newOptions.tabSize);\n model.updateOptions({\n trimAutoWhitespace: newOptions.trimAutoWhitespace,\n bracketColorizationOptions: newOptions.bracketPairColorizationOptions\n });\n }\n else {\n model.updateOptions({\n insertSpaces: newOptions.insertSpaces,\n tabSize: newOptions.tabSize,\n indentSize: newOptions.indentSize,\n trimAutoWhitespace: newOptions.trimAutoWhitespace,\n bracketColorizationOptions: newOptions.bracketPairColorizationOptions\n });\n }\n }\n // --- begin IModelService\n _insertDisposedModel(disposedModelData) {\n this._disposedModels.set(MODEL_ID(disposedModelData.uri), disposedModelData);\n this._disposedModelsHeapSize += disposedModelData.heapSize;\n }\n _removeDisposedModel(resource) {\n const disposedModelData = this._disposedModels.get(MODEL_ID(resource));\n if (disposedModelData) {\n this._disposedModelsHeapSize -= disposedModelData.heapSize;\n }\n this._disposedModels.delete(MODEL_ID(resource));\n return disposedModelData;\n }\n _ensureDisposedModelsHeapSize(maxModelsHeapSize) {\n if (this._disposedModelsHeapSize > maxModelsHeapSize) {\n // we must remove some old undo stack elements to free up some memory\n const disposedModels = [];\n this._disposedModels.forEach(entry => {\n if (!entry.sharesUndoRedoStack) {\n disposedModels.push(entry);\n }\n });\n disposedModels.sort((a, b) => a.time - b.time);\n while (disposedModels.length > 0 && this._disposedModelsHeapSize > maxModelsHeapSize) {\n const disposedModel = disposedModels.shift();\n this._removeDisposedModel(disposedModel.uri);\n if (disposedModel.initialUndoRedoSnapshot !== null) {\n this._undoRedoService.restoreSnapshot(disposedModel.initialUndoRedoSnapshot);\n }\n }\n }\n }\n _createModelData(value, languageIdOrSelection, resource, isForSimpleWidget) {\n // create & save the model\n const options = this.getCreationOptions(languageIdOrSelection, resource, isForSimpleWidget);\n const model = new _model_textModel_js__WEBPACK_IMPORTED_MODULE_3__.TextModel(value, languageIdOrSelection, options, resource, this._undoRedoService, this._languageService, this._languageConfigurationService);\n if (resource && this._disposedModels.has(MODEL_ID(resource))) {\n const disposedModelData = this._removeDisposedModel(resource);\n const elements = this._undoRedoService.getElements(resource);\n const sha1Computer = this._getSHA1Computer();\n const sha1IsEqual = (sha1Computer.canComputeSHA1(model)\n ? sha1Computer.computeSHA1(model) === disposedModelData.sha1\n : false);\n if (sha1IsEqual || disposedModelData.sharesUndoRedoStack) {\n for (const element of elements.past) {\n if ((0,_model_editStack_js__WEBPACK_IMPORTED_MODULE_11__.isEditStackElement)(element) && element.matchesResource(resource)) {\n element.setModel(model);\n }\n }\n for (const element of elements.future) {\n if ((0,_model_editStack_js__WEBPACK_IMPORTED_MODULE_11__.isEditStackElement)(element) && element.matchesResource(resource)) {\n element.setModel(model);\n }\n }\n this._undoRedoService.setElementsValidFlag(resource, true, (element) => ((0,_model_editStack_js__WEBPACK_IMPORTED_MODULE_11__.isEditStackElement)(element) && element.matchesResource(resource)));\n if (sha1IsEqual) {\n model._overwriteVersionId(disposedModelData.versionId);\n model._overwriteAlternativeVersionId(disposedModelData.alternativeVersionId);\n model._overwriteInitialUndoRedoSnapshot(disposedModelData.initialUndoRedoSnapshot);\n }\n }\n else {\n if (disposedModelData.initialUndoRedoSnapshot !== null) {\n this._undoRedoService.restoreSnapshot(disposedModelData.initialUndoRedoSnapshot);\n }\n }\n }\n const modelId = MODEL_ID(model.uri);\n if (this._models[modelId]) {\n // There already exists a model with this id => this is a programmer error\n throw new Error('ModelService: Cannot add model because it already exists!');\n }\n const modelData = new ModelData(model, (model) => this._onWillDispose(model), (model, e) => this._onDidChangeLanguage(model, e));\n this._models[modelId] = modelData;\n return modelData;\n }\n createModel(value, languageSelection, resource, isForSimpleWidget = false) {\n let modelData;\n if (languageSelection) {\n modelData = this._createModelData(value, languageSelection, resource, isForSimpleWidget);\n }\n else {\n modelData = this._createModelData(value, _languages_modesRegistry_js__WEBPACK_IMPORTED_MODULE_5__.PLAINTEXT_LANGUAGE_ID, resource, isForSimpleWidget);\n }\n this._onModelAdded.fire(modelData.model);\n return modelData.model;\n }\n getModels() {\n const ret = [];\n const keys = Object.keys(this._models);\n for (let i = 0, len = keys.length; i < len; i++) {\n const modelId = keys[i];\n ret.push(this._models[modelId].model);\n }\n return ret;\n }\n getModel(resource) {\n const modelId = MODEL_ID(resource);\n const modelData = this._models[modelId];\n if (!modelData) {\n return null;\n }\n return modelData.model;\n }\n // --- end IModelService\n _schemaShouldMaintainUndoRedoElements(resource) {\n return (resource.scheme === _base_common_network_js__WEBPACK_IMPORTED_MODULE_12__.Schemas.file\n || resource.scheme === _base_common_network_js__WEBPACK_IMPORTED_MODULE_12__.Schemas.vscodeRemote\n || resource.scheme === _base_common_network_js__WEBPACK_IMPORTED_MODULE_12__.Schemas.vscodeUserData\n || resource.scheme === _base_common_network_js__WEBPACK_IMPORTED_MODULE_12__.Schemas.vscodeNotebookCell\n || resource.scheme === 'fake-fs' // for tests\n );\n }\n _onWillDispose(model) {\n const modelId = MODEL_ID(model.uri);\n const modelData = this._models[modelId];\n const sharesUndoRedoStack = (this._undoRedoService.getUriComparisonKey(model.uri) !== model.uri.toString());\n let maintainUndoRedoStack = false;\n let heapSize = 0;\n if (sharesUndoRedoStack || (this._shouldRestoreUndoStack() && this._schemaShouldMaintainUndoRedoElements(model.uri))) {\n const elements = this._undoRedoService.getElements(model.uri);\n if (elements.past.length > 0 || elements.future.length > 0) {\n for (const element of elements.past) {\n if ((0,_model_editStack_js__WEBPACK_IMPORTED_MODULE_11__.isEditStackElement)(element) && element.matchesResource(model.uri)) {\n maintainUndoRedoStack = true;\n heapSize += element.heapSize(model.uri);\n element.setModel(model.uri); // remove reference from text buffer instance\n }\n }\n for (const element of elements.future) {\n if ((0,_model_editStack_js__WEBPACK_IMPORTED_MODULE_11__.isEditStackElement)(element) && element.matchesResource(model.uri)) {\n maintainUndoRedoStack = true;\n heapSize += element.heapSize(model.uri);\n element.setModel(model.uri); // remove reference from text buffer instance\n }\n }\n }\n }\n const maxMemory = ModelService_1.MAX_MEMORY_FOR_CLOSED_FILES_UNDO_STACK;\n const sha1Computer = this._getSHA1Computer();\n if (!maintainUndoRedoStack) {\n if (!sharesUndoRedoStack) {\n const initialUndoRedoSnapshot = modelData.model.getInitialUndoRedoSnapshot();\n if (initialUndoRedoSnapshot !== null) {\n this._undoRedoService.restoreSnapshot(initialUndoRedoSnapshot);\n }\n }\n }\n else if (!sharesUndoRedoStack && (heapSize > maxMemory || !sha1Computer.canComputeSHA1(model))) {\n // the undo stack for this file would never fit in the configured memory or the file is very large, so don't bother with it.\n const initialUndoRedoSnapshot = modelData.model.getInitialUndoRedoSnapshot();\n if (initialUndoRedoSnapshot !== null) {\n this._undoRedoService.restoreSnapshot(initialUndoRedoSnapshot);\n }\n }\n else {\n this._ensureDisposedModelsHeapSize(maxMemory - heapSize);\n // We only invalidate the elements, but they remain in the undo-redo service.\n this._undoRedoService.setElementsValidFlag(model.uri, false, (element) => ((0,_model_editStack_js__WEBPACK_IMPORTED_MODULE_11__.isEditStackElement)(element) && element.matchesResource(model.uri)));\n this._insertDisposedModel(new DisposedModelInfo(model.uri, modelData.model.getInitialUndoRedoSnapshot(), Date.now(), sharesUndoRedoStack, heapSize, sha1Computer.computeSHA1(model), model.getVersionId(), model.getAlternativeVersionId()));\n }\n delete this._models[modelId];\n modelData.dispose();\n // clean up cache\n delete this._modelCreationOptionsByLanguageAndResource[model.getLanguageId() + model.uri];\n this._onModelRemoved.fire(model);\n }\n _onDidChangeLanguage(model, e) {\n const oldLanguageId = e.oldLanguage;\n const newLanguageId = model.getLanguageId();\n const oldOptions = this.getCreationOptions(oldLanguageId, model.uri, model.isForSimpleWidget);\n const newOptions = this.getCreationOptions(newLanguageId, model.uri, model.isForSimpleWidget);\n ModelService_1._setModelOptionsForModel(model, newOptions, oldOptions);\n this._onModelModeChanged.fire({ model, oldLanguageId: oldLanguageId });\n }\n _getSHA1Computer() {\n return new DefaultModelSHA1Computer();\n }\n};\nModelService.MAX_MEMORY_FOR_CLOSED_FILES_UNDO_STACK = 20 * 1024 * 1024;\nModelService = ModelService_1 = __decorate([\n __param(0, _platform_configuration_common_configuration_js__WEBPACK_IMPORTED_MODULE_8__.IConfigurationService),\n __param(1, _textResourceConfiguration_js__WEBPACK_IMPORTED_MODULE_7__.ITextResourcePropertiesService),\n __param(2, _platform_undoRedo_common_undoRedo_js__WEBPACK_IMPORTED_MODULE_9__.IUndoRedoService),\n __param(3, _languages_language_js__WEBPACK_IMPORTED_MODULE_6__.ILanguageService),\n __param(4, _languages_languageConfigurationRegistry_js__WEBPACK_IMPORTED_MODULE_14__.ILanguageConfigurationService)\n], ModelService);\n\nclass DefaultModelSHA1Computer {\n canComputeSHA1(model) {\n return (model.getValueLength() <= DefaultModelSHA1Computer.MAX_MODEL_SIZE);\n }\n computeSHA1(model) {\n // compute the sha1\n const shaComputer = new _base_common_hash_js__WEBPACK_IMPORTED_MODULE_10__.StringSHA1();\n const snapshot = model.createSnapshot();\n let text;\n while ((text = snapshot.read())) {\n shaComputer.update(text);\n }\n return shaComputer.digest();\n }\n}\nDefaultModelSHA1Computer.MAX_MODEL_SIZE = 10 * 1024 * 1024; // takes 200ms to compute a sha1 on a 10MB model on a new machine\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/common/services/modelService.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/common/services/resolverService.js":
/*!*************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/common/services/resolverService.js ***!
\*************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ ITextModelService: () => (/* binding */ ITextModelService)\n/* harmony export */ });\n/* harmony import */ var _platform_instantiation_common_instantiation_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../platform/instantiation/common/instantiation.js */ \"./node_modules/monaco-editor/esm/vs/platform/instantiation/common/instantiation.js\");\n\nconst ITextModelService = (0,_platform_instantiation_common_instantiation_js__WEBPACK_IMPORTED_MODULE_0__.createDecorator)('textModelService');\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/common/services/resolverService.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/common/services/semanticTokensDto.js":
/*!***************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/common/services/semanticTokensDto.js ***!
\***************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ encodeSemanticTokensDto: () => (/* binding */ encodeSemanticTokensDto)\n/* harmony export */ });\n/* harmony import */ var _base_common_buffer_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../base/common/buffer.js */ \"./node_modules/monaco-editor/esm/vs/base/common/buffer.js\");\n/* harmony import */ var _base_common_platform_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../base/common/platform.js */ \"./node_modules/monaco-editor/esm/vs/base/common/platform.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n\nfunction reverseEndianness(arr) {\n for (let i = 0, len = arr.length; i < len; i += 4) {\n // flip bytes 0<->3 and 1<->2\n const b0 = arr[i + 0];\n const b1 = arr[i + 1];\n const b2 = arr[i + 2];\n const b3 = arr[i + 3];\n arr[i + 0] = b3;\n arr[i + 1] = b2;\n arr[i + 2] = b1;\n arr[i + 3] = b0;\n }\n}\nfunction toLittleEndianBuffer(arr) {\n const uint8Arr = new Uint8Array(arr.buffer, arr.byteOffset, arr.length * 4);\n if (!_base_common_platform_js__WEBPACK_IMPORTED_MODULE_1__.isLittleEndian()) {\n // the byte order must be changed\n reverseEndianness(uint8Arr);\n }\n return _base_common_buffer_js__WEBPACK_IMPORTED_MODULE_0__.VSBuffer.wrap(uint8Arr);\n}\nfunction encodeSemanticTokensDto(semanticTokens) {\n const dest = new Uint32Array(encodeSemanticTokensDtoSize(semanticTokens));\n let offset = 0;\n dest[offset++] = semanticTokens.id;\n if (semanticTokens.type === 'full') {\n dest[offset++] = 1 /* EncodedSemanticTokensType.Full */;\n dest[offset++] = semanticTokens.data.length;\n dest.set(semanticTokens.data, offset);\n offset += semanticTokens.data.length;\n }\n else {\n dest[offset++] = 2 /* EncodedSemanticTokensType.Delta */;\n dest[offset++] = semanticTokens.deltas.length;\n for (const delta of semanticTokens.deltas) {\n dest[offset++] = delta.start;\n dest[offset++] = delta.deleteCount;\n if (delta.data) {\n dest[offset++] = delta.data.length;\n dest.set(delta.data, offset);\n offset += delta.data.length;\n }\n else {\n dest[offset++] = 0;\n }\n }\n }\n return toLittleEndianBuffer(dest);\n}\nfunction encodeSemanticTokensDtoSize(semanticTokens) {\n let result = 0;\n result += (+1 // id\n + 1 // type\n );\n if (semanticTokens.type === 'full') {\n result += (+1 // data length\n + semanticTokens.data.length);\n }\n else {\n result += (+1 // delta count\n );\n result += (+1 // start\n + 1 // deleteCount\n + 1 // data length\n ) * semanticTokens.deltas.length;\n for (const delta of semanticTokens.deltas) {\n if (delta.data) {\n result += delta.data.length;\n }\n }\n }\n return result;\n}\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/common/services/semanticTokensDto.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/common/services/semanticTokensProviderStyling.js":
/*!***************************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/common/services/semanticTokensProviderStyling.js ***!
\***************************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ SemanticTokensProviderStyling: () => (/* binding */ SemanticTokensProviderStyling),\n/* harmony export */ toMultilineTokens2: () => (/* binding */ toMultilineTokens2)\n/* harmony export */ });\n/* harmony import */ var _encodedTokenAttributes_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../encodedTokenAttributes.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/encodedTokenAttributes.js\");\n/* harmony import */ var _platform_theme_common_themeService_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../platform/theme/common/themeService.js */ \"./node_modules/monaco-editor/esm/vs/platform/theme/common/themeService.js\");\n/* harmony import */ var _platform_log_common_log_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../platform/log/common/log.js */ \"./node_modules/monaco-editor/esm/vs/platform/log/common/log.js\");\n/* harmony import */ var _tokens_sparseMultilineTokens_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../tokens/sparseMultilineTokens.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/tokens/sparseMultilineTokens.js\");\n/* harmony import */ var _languages_language_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../languages/language.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/languages/language.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\nvar __decorate = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\n return c > 3 && r && Object.defineProperty(target, key, r), r;\n};\nvar __param = (undefined && undefined.__param) || function (paramIndex, decorator) {\n return function (target, key) { decorator(target, key, paramIndex); }\n};\n\n\n\n\n\nlet SemanticTokensProviderStyling = class SemanticTokensProviderStyling {\n constructor(_legend, _themeService, _languageService, _logService) {\n this._legend = _legend;\n this._themeService = _themeService;\n this._languageService = _languageService;\n this._logService = _logService;\n this._hasWarnedOverlappingTokens = false;\n this._hasWarnedInvalidLengthTokens = false;\n this._hasWarnedInvalidEditStart = false;\n this._hashTable = new HashTable();\n }\n getMetadata(tokenTypeIndex, tokenModifierSet, languageId) {\n const encodedLanguageId = this._languageService.languageIdCodec.encodeLanguageId(languageId);\n const entry = this._hashTable.get(tokenTypeIndex, tokenModifierSet, encodedLanguageId);\n let metadata;\n if (entry) {\n metadata = entry.metadata;\n if (this._logService.getLevel() === _platform_log_common_log_js__WEBPACK_IMPORTED_MODULE_2__.LogLevel.Trace) {\n this._logService.trace(`SemanticTokensProviderStyling [CACHED] ${tokenTypeIndex} / ${tokenModifierSet}: foreground ${_encodedTokenAttributes_js__WEBPACK_IMPORTED_MODULE_0__.TokenMetadata.getForeground(metadata)}, fontStyle ${_encodedTokenAttributes_js__WEBPACK_IMPORTED_MODULE_0__.TokenMetadata.getFontStyle(metadata).toString(2)}`);\n }\n }\n else {\n let tokenType = this._legend.tokenTypes[tokenTypeIndex];\n const tokenModifiers = [];\n if (tokenType) {\n let modifierSet = tokenModifierSet;\n for (let modifierIndex = 0; modifierSet > 0 && modifierIndex < this._legend.tokenModifiers.length; modifierIndex++) {\n if (modifierSet & 1) {\n tokenModifiers.push(this._legend.tokenModifiers[modifierIndex]);\n }\n modifierSet = modifierSet >> 1;\n }\n if (modifierSet > 0 && this._logService.getLevel() === _platform_log_common_log_js__WEBPACK_IMPORTED_MODULE_2__.LogLevel.Trace) {\n this._logService.trace(`SemanticTokensProviderStyling: unknown token modifier index: ${tokenModifierSet.toString(2)} for legend: ${JSON.stringify(this._legend.tokenModifiers)}`);\n tokenModifiers.push('not-in-legend');\n }\n const tokenStyle = this._themeService.getColorTheme().getTokenStyleMetadata(tokenType, tokenModifiers, languageId);\n if (typeof tokenStyle === 'undefined') {\n metadata = 2147483647 /* SemanticTokensProviderStylingConstants.NO_STYLING */;\n }\n else {\n metadata = 0;\n if (typeof tokenStyle.italic !== 'undefined') {\n const italicBit = (tokenStyle.italic ? 1 /* FontStyle.Italic */ : 0) << 11 /* MetadataConsts.FONT_STYLE_OFFSET */;\n metadata |= italicBit | 1 /* MetadataConsts.SEMANTIC_USE_ITALIC */;\n }\n if (typeof tokenStyle.bold !== 'undefined') {\n const boldBit = (tokenStyle.bold ? 2 /* FontStyle.Bold */ : 0) << 11 /* MetadataConsts.FONT_STYLE_OFFSET */;\n metadata |= boldBit | 2 /* MetadataConsts.SEMANTIC_USE_BOLD */;\n }\n if (typeof tokenStyle.underline !== 'undefined') {\n const underlineBit = (tokenStyle.underline ? 4 /* FontStyle.Underline */ : 0) << 11 /* MetadataConsts.FONT_STYLE_OFFSET */;\n metadata |= underlineBit | 4 /* MetadataConsts.SEMANTIC_USE_UNDERLINE */;\n }\n if (typeof tokenStyle.strikethrough !== 'undefined') {\n const strikethroughBit = (tokenStyle.strikethrough ? 8 /* FontStyle.Strikethrough */ : 0) << 11 /* MetadataConsts.FONT_STYLE_OFFSET */;\n metadata |= strikethroughBit | 8 /* MetadataConsts.SEMANTIC_USE_STRIKETHROUGH */;\n }\n if (tokenStyle.foreground) {\n const foregroundBits = (tokenStyle.foreground) << 15 /* MetadataConsts.FOREGROUND_OFFSET */;\n metadata |= foregroundBits | 16 /* MetadataConsts.SEMANTIC_USE_FOREGROUND */;\n }\n if (metadata === 0) {\n // Nothing!\n metadata = 2147483647 /* SemanticTokensProviderStylingConstants.NO_STYLING */;\n }\n }\n }\n else {\n if (this._logService.getLevel() === _platform_log_common_log_js__WEBPACK_IMPORTED_MODULE_2__.LogLevel.Trace) {\n this._logService.trace(`SemanticTokensProviderStyling: unknown token type index: ${tokenTypeIndex} for legend: ${JSON.stringify(this._legend.tokenTypes)}`);\n }\n metadata = 2147483647 /* SemanticTokensProviderStylingConstants.NO_STYLING */;\n tokenType = 'not-in-legend';\n }\n this._hashTable.add(tokenTypeIndex, tokenModifierSet, encodedLanguageId, metadata);\n if (this._logService.getLevel() === _platform_log_common_log_js__WEBPACK_IMPORTED_MODULE_2__.LogLevel.Trace) {\n this._logService.trace(`SemanticTokensProviderStyling ${tokenTypeIndex} (${tokenType}) / ${tokenModifierSet} (${tokenModifiers.join(' ')}): foreground ${_encodedTokenAttributes_js__WEBPACK_IMPORTED_MODULE_0__.TokenMetadata.getForeground(metadata)}, fontStyle ${_encodedTokenAttributes_js__WEBPACK_IMPORTED_MODULE_0__.TokenMetadata.getFontStyle(metadata).toString(2)}`);\n }\n }\n return metadata;\n }\n warnOverlappingSemanticTokens(lineNumber, startColumn) {\n if (!this._hasWarnedOverlappingTokens) {\n this._hasWarnedOverlappingTokens = true;\n this._logService.warn(`Overlapping semantic tokens detected at lineNumber ${lineNumber}, column ${startColumn}`);\n }\n }\n warnInvalidLengthSemanticTokens(lineNumber, startColumn) {\n if (!this._hasWarnedInvalidLengthTokens) {\n this._hasWarnedInvalidLengthTokens = true;\n this._logService.warn(`Semantic token with invalid length detected at lineNumber ${lineNumber}, column ${startColumn}`);\n }\n }\n warnInvalidEditStart(previousResultId, resultId, editIndex, editStart, maxExpectedStart) {\n if (!this._hasWarnedInvalidEditStart) {\n this._hasWarnedInvalidEditStart = true;\n this._logService.warn(`Invalid semantic tokens edit detected (previousResultId: ${previousResultId}, resultId: ${resultId}) at edit #${editIndex}: The provided start offset ${editStart} is outside the previous data (length ${maxExpectedStart}).`);\n }\n }\n};\nSemanticTokensProviderStyling = __decorate([\n __param(1, _platform_theme_common_themeService_js__WEBPACK_IMPORTED_MODULE_1__.IThemeService),\n __param(2, _languages_language_js__WEBPACK_IMPORTED_MODULE_4__.ILanguageService),\n __param(3, _platform_log_common_log_js__WEBPACK_IMPORTED_MODULE_2__.ILogService)\n], SemanticTokensProviderStyling);\n\nfunction toMultilineTokens2(tokens, styling, languageId) {\n const srcData = tokens.data;\n const tokenCount = (tokens.data.length / 5) | 0;\n const tokensPerArea = Math.max(Math.ceil(tokenCount / 1024 /* SemanticColoringConstants.DesiredMaxAreas */), 400 /* SemanticColoringConstants.DesiredTokensPerArea */);\n const result = [];\n let tokenIndex = 0;\n let lastLineNumber = 1;\n let lastStartCharacter = 0;\n while (tokenIndex < tokenCount) {\n const tokenStartIndex = tokenIndex;\n let tokenEndIndex = Math.min(tokenStartIndex + tokensPerArea, tokenCount);\n // Keep tokens on the same line in the same area...\n if (tokenEndIndex < tokenCount) {\n let smallTokenEndIndex = tokenEndIndex;\n while (smallTokenEndIndex - 1 > tokenStartIndex && srcData[5 * smallTokenEndIndex] === 0) {\n smallTokenEndIndex--;\n }\n if (smallTokenEndIndex - 1 === tokenStartIndex) {\n // there are so many tokens on this line that our area would be empty, we must now go right\n let bigTokenEndIndex = tokenEndIndex;\n while (bigTokenEndIndex + 1 < tokenCount && srcData[5 * bigTokenEndIndex] === 0) {\n bigTokenEndIndex++;\n }\n tokenEndIndex = bigTokenEndIndex;\n }\n else {\n tokenEndIndex = smallTokenEndIndex;\n }\n }\n let destData = new Uint32Array((tokenEndIndex - tokenStartIndex) * 4);\n let destOffset = 0;\n let areaLine = 0;\n let prevLineNumber = 0;\n let prevEndCharacter = 0;\n while (tokenIndex < tokenEndIndex) {\n const srcOffset = 5 * tokenIndex;\n const deltaLine = srcData[srcOffset];\n const deltaCharacter = srcData[srcOffset + 1];\n // Casting both `lineNumber`, `startCharacter` and `endCharacter` here to uint32 using `|0`\n // to validate below with the actual values that will be inserted in the Uint32Array result\n const lineNumber = (lastLineNumber + deltaLine) | 0;\n const startCharacter = (deltaLine === 0 ? (lastStartCharacter + deltaCharacter) | 0 : deltaCharacter);\n const length = srcData[srcOffset + 2];\n const endCharacter = (startCharacter + length) | 0;\n const tokenTypeIndex = srcData[srcOffset + 3];\n const tokenModifierSet = srcData[srcOffset + 4];\n if (endCharacter <= startCharacter) {\n // this token is invalid (most likely a negative length casted to uint32)\n styling.warnInvalidLengthSemanticTokens(lineNumber, startCharacter + 1);\n }\n else if (prevLineNumber === lineNumber && prevEndCharacter > startCharacter) {\n // this token overlaps with the previous token\n styling.warnOverlappingSemanticTokens(lineNumber, startCharacter + 1);\n }\n else {\n const metadata = styling.getMetadata(tokenTypeIndex, tokenModifierSet, languageId);\n if (metadata !== 2147483647 /* SemanticTokensProviderStylingConstants.NO_STYLING */) {\n if (areaLine === 0) {\n areaLine = lineNumber;\n }\n destData[destOffset] = lineNumber - areaLine;\n destData[destOffset + 1] = startCharacter;\n destData[destOffset + 2] = endCharacter;\n destData[destOffset + 3] = metadata;\n destOffset += 4;\n prevLineNumber = lineNumber;\n prevEndCharacter = endCharacter;\n }\n }\n lastLineNumber = lineNumber;\n lastStartCharacter = startCharacter;\n tokenIndex++;\n }\n if (destOffset !== destData.length) {\n destData = destData.subarray(0, destOffset);\n }\n const tokens = _tokens_sparseMultilineTokens_js__WEBPACK_IMPORTED_MODULE_3__.SparseMultilineTokens.create(areaLine, destData);\n result.push(tokens);\n }\n return result;\n}\nclass HashTableEntry {\n constructor(tokenTypeIndex, tokenModifierSet, languageId, metadata) {\n this.tokenTypeIndex = tokenTypeIndex;\n this.tokenModifierSet = tokenModifierSet;\n this.languageId = languageId;\n this.metadata = metadata;\n this.next = null;\n }\n}\nclass HashTable {\n constructor() {\n this._elementsCount = 0;\n this._currentLengthIndex = 0;\n this._currentLength = HashTable._SIZES[this._currentLengthIndex];\n this._growCount = Math.round(this._currentLengthIndex + 1 < HashTable._SIZES.length ? 2 / 3 * this._currentLength : 0);\n this._elements = [];\n HashTable._nullOutEntries(this._elements, this._currentLength);\n }\n static _nullOutEntries(entries, length) {\n for (let i = 0; i < length; i++) {\n entries[i] = null;\n }\n }\n _hash2(n1, n2) {\n return (((n1 << 5) - n1) + n2) | 0; // n1 * 31 + n2, keep as int32\n }\n _hashFunc(tokenTypeIndex, tokenModifierSet, languageId) {\n return this._hash2(this._hash2(tokenTypeIndex, tokenModifierSet), languageId) % this._currentLength;\n }\n get(tokenTypeIndex, tokenModifierSet, languageId) {\n const hash = this._hashFunc(tokenTypeIndex, tokenModifierSet, languageId);\n let p = this._elements[hash];\n while (p) {\n if (p.tokenTypeIndex === tokenTypeIndex && p.tokenModifierSet === tokenModifierSet && p.languageId === languageId) {\n return p;\n }\n p = p.next;\n }\n return null;\n }\n add(tokenTypeIndex, tokenModifierSet, languageId, metadata) {\n this._elementsCount++;\n if (this._growCount !== 0 && this._elementsCount >= this._growCount) {\n // expand!\n const oldElements = this._elements;\n this._currentLengthIndex++;\n this._currentLength = HashTable._SIZES[this._currentLengthIndex];\n this._growCount = Math.round(this._currentLengthIndex + 1 < HashTable._SIZES.length ? 2 / 3 * this._currentLength : 0);\n this._elements = [];\n HashTable._nullOutEntries(this._elements, this._currentLength);\n for (const first of oldElements) {\n let p = first;\n while (p) {\n const oldNext = p.next;\n p.next = null;\n this._add(p);\n p = oldNext;\n }\n }\n }\n this._add(new HashTableEntry(tokenTypeIndex, tokenModifierSet, languageId, metadata));\n }\n _add(element) {\n const hash = this._hashFunc(element.tokenTypeIndex, element.tokenModifierSet, element.languageId);\n element.next = this._elements[hash];\n this._elements[hash] = element;\n }\n}\nHashTable._SIZES = [3, 7, 13, 31, 61, 127, 251, 509, 1021, 2039, 4093, 8191, 16381, 32749, 65521, 131071, 262139, 524287, 1048573, 2097143];\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/common/services/semanticTokensProviderStyling.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/common/services/semanticTokensStyling.js":
/*!*******************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/common/services/semanticTokensStyling.js ***!
\*******************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ ISemanticTokensStylingService: () => (/* binding */ ISemanticTokensStylingService)\n/* harmony export */ });\n/* harmony import */ var _platform_instantiation_common_instantiation_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../platform/instantiation/common/instantiation.js */ \"./node_modules/monaco-editor/esm/vs/platform/instantiation/common/instantiation.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\nconst ISemanticTokensStylingService = (0,_platform_instantiation_common_instantiation_js__WEBPACK_IMPORTED_MODULE_0__.createDecorator)('semanticTokensStylingService');\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/common/services/semanticTokensStyling.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/common/services/semanticTokensStylingService.js":
/*!**************************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/common/services/semanticTokensStylingService.js ***!
\**************************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ SemanticTokensStylingService: () => (/* binding */ SemanticTokensStylingService)\n/* harmony export */ });\n/* harmony import */ var _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../base/common/lifecycle.js */ \"./node_modules/monaco-editor/esm/vs/base/common/lifecycle.js\");\n/* harmony import */ var _languages_language_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../languages/language.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/languages/language.js\");\n/* harmony import */ var _platform_theme_common_themeService_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../platform/theme/common/themeService.js */ \"./node_modules/monaco-editor/esm/vs/platform/theme/common/themeService.js\");\n/* harmony import */ var _platform_log_common_log_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../../platform/log/common/log.js */ \"./node_modules/monaco-editor/esm/vs/platform/log/common/log.js\");\n/* harmony import */ var _semanticTokensProviderStyling_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./semanticTokensProviderStyling.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/services/semanticTokensProviderStyling.js\");\n/* harmony import */ var _semanticTokensStyling_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./semanticTokensStyling.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/services/semanticTokensStyling.js\");\n/* harmony import */ var _platform_instantiation_common_extensions_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../../../platform/instantiation/common/extensions.js */ \"./node_modules/monaco-editor/esm/vs/platform/instantiation/common/extensions.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\nvar __decorate = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\n return c > 3 && r && Object.defineProperty(target, key, r), r;\n};\nvar __param = (undefined && undefined.__param) || function (paramIndex, decorator) {\n return function (target, key) { decorator(target, key, paramIndex); }\n};\n\n\n\n\n\n\n\nlet SemanticTokensStylingService = class SemanticTokensStylingService extends _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_0__.Disposable {\n constructor(_themeService, _logService, _languageService) {\n super();\n this._themeService = _themeService;\n this._logService = _logService;\n this._languageService = _languageService;\n this._caches = new WeakMap();\n this._register(this._themeService.onDidColorThemeChange(() => {\n this._caches = new WeakMap();\n }));\n }\n getStyling(provider) {\n if (!this._caches.has(provider)) {\n this._caches.set(provider, new _semanticTokensProviderStyling_js__WEBPACK_IMPORTED_MODULE_4__.SemanticTokensProviderStyling(provider.getLegend(), this._themeService, this._languageService, this._logService));\n }\n return this._caches.get(provider);\n }\n};\nSemanticTokensStylingService = __decorate([\n __param(0, _platform_theme_common_themeService_js__WEBPACK_IMPORTED_MODULE_2__.IThemeService),\n __param(1, _platform_log_common_log_js__WEBPACK_IMPORTED_MODULE_3__.ILogService),\n __param(2, _languages_language_js__WEBPACK_IMPORTED_MODULE_1__.ILanguageService)\n], SemanticTokensStylingService);\n\n(0,_platform_instantiation_common_extensions_js__WEBPACK_IMPORTED_MODULE_6__.registerSingleton)(_semanticTokensStyling_js__WEBPACK_IMPORTED_MODULE_5__.ISemanticTokensStylingService, SemanticTokensStylingService, 1 /* InstantiationType.Delayed */);\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/common/services/semanticTokensStylingService.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/common/services/textResourceConfiguration.js":
/*!***********************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/common/services/textResourceConfiguration.js ***!
\***********************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ ITextResourceConfigurationService: () => (/* binding */ ITextResourceConfigurationService),\n/* harmony export */ ITextResourcePropertiesService: () => (/* binding */ ITextResourcePropertiesService)\n/* harmony export */ });\n/* harmony import */ var _platform_instantiation_common_instantiation_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../platform/instantiation/common/instantiation.js */ \"./node_modules/monaco-editor/esm/vs/platform/instantiation/common/instantiation.js\");\n\nconst ITextResourceConfigurationService = (0,_platform_instantiation_common_instantiation_js__WEBPACK_IMPORTED_MODULE_0__.createDecorator)('textResourceConfigurationService');\nconst ITextResourcePropertiesService = (0,_platform_instantiation_common_instantiation_js__WEBPACK_IMPORTED_MODULE_0__.createDecorator)('textResourcePropertiesService');\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/common/services/textResourceConfiguration.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/common/services/treeViewsDnd.js":
/*!**********************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/common/services/treeViewsDnd.js ***!
\**********************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ DraggedTreeItemsIdentifier: () => (/* binding */ DraggedTreeItemsIdentifier),\n/* harmony export */ TreeViewsDnDService: () => (/* binding */ TreeViewsDnDService)\n/* harmony export */ });\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\nclass TreeViewsDnDService {\n constructor() {\n this._dragOperations = new Map();\n }\n removeDragOperationTransfer(uuid) {\n if ((uuid && this._dragOperations.has(uuid))) {\n const operation = this._dragOperations.get(uuid);\n this._dragOperations.delete(uuid);\n return operation;\n }\n return undefined;\n }\n}\nclass DraggedTreeItemsIdentifier {\n constructor(identifier) {\n this.identifier = identifier;\n }\n}\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/common/services/treeViewsDnd.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/common/services/treeViewsDndService.js":
/*!*****************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/common/services/treeViewsDndService.js ***!
\*****************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ ITreeViewsDnDService: () => (/* binding */ ITreeViewsDnDService)\n/* harmony export */ });\n/* harmony import */ var _platform_instantiation_common_extensions_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../platform/instantiation/common/extensions.js */ \"./node_modules/monaco-editor/esm/vs/platform/instantiation/common/extensions.js\");\n/* harmony import */ var _platform_instantiation_common_instantiation_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../platform/instantiation/common/instantiation.js */ \"./node_modules/monaco-editor/esm/vs/platform/instantiation/common/instantiation.js\");\n/* harmony import */ var _treeViewsDnd_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./treeViewsDnd.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/services/treeViewsDnd.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n\n\nconst ITreeViewsDnDService = (0,_platform_instantiation_common_instantiation_js__WEBPACK_IMPORTED_MODULE_1__.createDecorator)('treeViewsDndService');\n(0,_platform_instantiation_common_extensions_js__WEBPACK_IMPORTED_MODULE_0__.registerSingleton)(ITreeViewsDnDService, _treeViewsDnd_js__WEBPACK_IMPORTED_MODULE_2__.TreeViewsDnDService, 1 /* InstantiationType.Delayed */);\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/common/services/treeViewsDndService.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/common/services/unicodeTextModelHighlighter.js":
/*!*************************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/common/services/unicodeTextModelHighlighter.js ***!
\*************************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ UnicodeTextModelHighlighter: () => (/* binding */ UnicodeTextModelHighlighter)\n/* harmony export */ });\n/* harmony import */ var _core_range_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../core/range.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/core/range.js\");\n/* harmony import */ var _model_textModelSearch_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../model/textModelSearch.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/model/textModelSearch.js\");\n/* harmony import */ var _base_common_strings_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../base/common/strings.js */ \"./node_modules/monaco-editor/esm/vs/base/common/strings.js\");\n/* harmony import */ var _base_common_assert_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../../base/common/assert.js */ \"./node_modules/monaco-editor/esm/vs/base/common/assert.js\");\n/* harmony import */ var _core_wordHelper_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../core/wordHelper.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/core/wordHelper.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n\n\n\n\nclass UnicodeTextModelHighlighter {\n static computeUnicodeHighlights(model, options, range) {\n const startLine = range ? range.startLineNumber : 1;\n const endLine = range ? range.endLineNumber : model.getLineCount();\n const codePointHighlighter = new CodePointHighlighter(options);\n const candidates = codePointHighlighter.getCandidateCodePoints();\n let regex;\n if (candidates === 'allNonBasicAscii') {\n regex = new RegExp('[^\\\\t\\\\n\\\\r\\\\x20-\\\\x7E]', 'g');\n }\n else {\n regex = new RegExp(`${buildRegExpCharClassExpr(Array.from(candidates))}`, 'g');\n }\n const searcher = new _model_textModelSearch_js__WEBPACK_IMPORTED_MODULE_1__.Searcher(null, regex);\n const ranges = [];\n let hasMore = false;\n let m;\n let ambiguousCharacterCount = 0;\n let invisibleCharacterCount = 0;\n let nonBasicAsciiCharacterCount = 0;\n forLoop: for (let lineNumber = startLine, lineCount = endLine; lineNumber <= lineCount; lineNumber++) {\n const lineContent = model.getLineContent(lineNumber);\n const lineLength = lineContent.length;\n // Reset regex to search from the beginning\n searcher.reset(0);\n do {\n m = searcher.next(lineContent);\n if (m) {\n let startIndex = m.index;\n let endIndex = m.index + m[0].length;\n // Extend range to entire code point\n if (startIndex > 0) {\n const charCodeBefore = lineContent.charCodeAt(startIndex - 1);\n if (_base_common_strings_js__WEBPACK_IMPORTED_MODULE_2__.isHighSurrogate(charCodeBefore)) {\n startIndex--;\n }\n }\n if (endIndex + 1 < lineLength) {\n const charCodeBefore = lineContent.charCodeAt(endIndex - 1);\n if (_base_common_strings_js__WEBPACK_IMPORTED_MODULE_2__.isHighSurrogate(charCodeBefore)) {\n endIndex++;\n }\n }\n const str = lineContent.substring(startIndex, endIndex);\n let word = (0,_core_wordHelper_js__WEBPACK_IMPORTED_MODULE_4__.getWordAtText)(startIndex + 1, _core_wordHelper_js__WEBPACK_IMPORTED_MODULE_4__.DEFAULT_WORD_REGEXP, lineContent, 0);\n if (word && word.endColumn <= startIndex + 1) {\n // The word does not include the problematic character, ignore the word\n word = null;\n }\n const highlightReason = codePointHighlighter.shouldHighlightNonBasicASCII(str, word ? word.word : null);\n if (highlightReason !== 0 /* SimpleHighlightReason.None */) {\n if (highlightReason === 3 /* SimpleHighlightReason.Ambiguous */) {\n ambiguousCharacterCount++;\n }\n else if (highlightReason === 2 /* SimpleHighlightReason.Invisible */) {\n invisibleCharacterCount++;\n }\n else if (highlightReason === 1 /* SimpleHighlightReason.NonBasicASCII */) {\n nonBasicAsciiCharacterCount++;\n }\n else {\n (0,_base_common_assert_js__WEBPACK_IMPORTED_MODULE_3__.assertNever)(highlightReason);\n }\n const MAX_RESULT_LENGTH = 1000;\n if (ranges.length >= MAX_RESULT_LENGTH) {\n hasMore = true;\n break forLoop;\n }\n ranges.push(new _core_range_js__WEBPACK_IMPORTED_MODULE_0__.Range(lineNumber, startIndex + 1, lineNumber, endIndex + 1));\n }\n }\n } while (m);\n }\n return {\n ranges,\n hasMore,\n ambiguousCharacterCount,\n invisibleCharacterCount,\n nonBasicAsciiCharacterCount\n };\n }\n static computeUnicodeHighlightReason(char, options) {\n const codePointHighlighter = new CodePointHighlighter(options);\n const reason = codePointHighlighter.shouldHighlightNonBasicASCII(char, null);\n switch (reason) {\n case 0 /* SimpleHighlightReason.None */:\n return null;\n case 2 /* SimpleHighlightReason.Invisible */:\n return { kind: 1 /* UnicodeHighlighterReasonKind.Invisible */ };\n case 3 /* SimpleHighlightReason.Ambiguous */: {\n const codePoint = char.codePointAt(0);\n const primaryConfusable = codePointHighlighter.ambiguousCharacters.getPrimaryConfusable(codePoint);\n const notAmbiguousInLocales = _base_common_strings_js__WEBPACK_IMPORTED_MODULE_2__.AmbiguousCharacters.getLocales().filter((l) => !_base_common_strings_js__WEBPACK_IMPORTED_MODULE_2__.AmbiguousCharacters.getInstance(new Set([...options.allowedLocales, l])).isAmbiguous(codePoint));\n return { kind: 0 /* UnicodeHighlighterReasonKind.Ambiguous */, confusableWith: String.fromCodePoint(primaryConfusable), notAmbiguousInLocales };\n }\n case 1 /* SimpleHighlightReason.NonBasicASCII */:\n return { kind: 2 /* UnicodeHighlighterReasonKind.NonBasicAscii */ };\n }\n }\n}\nfunction buildRegExpCharClassExpr(codePoints, flags) {\n const src = `[${_base_common_strings_js__WEBPACK_IMPORTED_MODULE_2__.escapeRegExpCharacters(codePoints.map((i) => String.fromCodePoint(i)).join(''))}]`;\n return src;\n}\nclass CodePointHighlighter {\n constructor(options) {\n this.options = options;\n this.allowedCodePoints = new Set(options.allowedCodePoints);\n this.ambiguousCharacters = _base_common_strings_js__WEBPACK_IMPORTED_MODULE_2__.AmbiguousCharacters.getInstance(new Set(options.allowedLocales));\n }\n getCandidateCodePoints() {\n if (this.options.nonBasicASCII) {\n return 'allNonBasicAscii';\n }\n const set = new Set();\n if (this.options.invisibleCharacters) {\n for (const cp of _base_common_strings_js__WEBPACK_IMPORTED_MODULE_2__.InvisibleCharacters.codePoints) {\n if (!isAllowedInvisibleCharacter(String.fromCodePoint(cp))) {\n set.add(cp);\n }\n }\n }\n if (this.options.ambiguousCharacters) {\n for (const cp of this.ambiguousCharacters.getConfusableCodePoints()) {\n set.add(cp);\n }\n }\n for (const cp of this.allowedCodePoints) {\n set.delete(cp);\n }\n return set;\n }\n shouldHighlightNonBasicASCII(character, wordContext) {\n const codePoint = character.codePointAt(0);\n if (this.allowedCodePoints.has(codePoint)) {\n return 0 /* SimpleHighlightReason.None */;\n }\n if (this.options.nonBasicASCII) {\n return 1 /* SimpleHighlightReason.NonBasicASCII */;\n }\n let hasBasicASCIICharacters = false;\n let hasNonConfusableNonBasicAsciiCharacter = false;\n if (wordContext) {\n for (const char of wordContext) {\n const codePoint = char.codePointAt(0);\n const isBasicASCII = _base_common_strings_js__WEBPACK_IMPORTED_MODULE_2__.isBasicASCII(char);\n hasBasicASCIICharacters = hasBasicASCIICharacters || isBasicASCII;\n if (!isBasicASCII &&\n !this.ambiguousCharacters.isAmbiguous(codePoint) &&\n !_base_common_strings_js__WEBPACK_IMPORTED_MODULE_2__.InvisibleCharacters.isInvisibleCharacter(codePoint)) {\n hasNonConfusableNonBasicAsciiCharacter = true;\n }\n }\n }\n if (\n /* Don't allow mixing weird looking characters with ASCII */ !hasBasicASCIICharacters &&\n /* Is there an obviously weird looking character? */ hasNonConfusableNonBasicAsciiCharacter) {\n return 0 /* SimpleHighlightReason.None */;\n }\n if (this.options.invisibleCharacters) {\n // TODO check for emojis\n if (!isAllowedInvisibleCharacter(character) && _base_common_strings_js__WEBPACK_IMPORTED_MODULE_2__.InvisibleCharacters.isInvisibleCharacter(codePoint)) {\n return 2 /* SimpleHighlightReason.Invisible */;\n }\n }\n if (this.options.ambiguousCharacters) {\n if (this.ambiguousCharacters.isAmbiguous(codePoint)) {\n return 3 /* SimpleHighlightReason.Ambiguous */;\n }\n }\n return 0 /* SimpleHighlightReason.None */;\n }\n}\nfunction isAllowedInvisibleCharacter(character) {\n return character === ' ' || character === '\\n' || character === '\\t';\n}\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/common/services/unicodeTextModelHighlighter.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/common/standalone/standaloneEnums.js":
/*!***************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/common/standalone/standaloneEnums.js ***!
\***************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ AccessibilitySupport: () => (/* binding */ AccessibilitySupport),\n/* harmony export */ CodeActionTriggerType: () => (/* binding */ CodeActionTriggerType),\n/* harmony export */ CompletionItemInsertTextRule: () => (/* binding */ CompletionItemInsertTextRule),\n/* harmony export */ CompletionItemKind: () => (/* binding */ CompletionItemKind),\n/* harmony export */ CompletionItemTag: () => (/* binding */ CompletionItemTag),\n/* harmony export */ CompletionTriggerKind: () => (/* binding */ CompletionTriggerKind),\n/* harmony export */ ContentWidgetPositionPreference: () => (/* binding */ ContentWidgetPositionPreference),\n/* harmony export */ CursorChangeReason: () => (/* binding */ CursorChangeReason),\n/* harmony export */ DefaultEndOfLine: () => (/* binding */ DefaultEndOfLine),\n/* harmony export */ DocumentHighlightKind: () => (/* binding */ DocumentHighlightKind),\n/* harmony export */ EditorAutoIndentStrategy: () => (/* binding */ EditorAutoIndentStrategy),\n/* harmony export */ EditorOption: () => (/* binding */ EditorOption),\n/* harmony export */ EndOfLinePreference: () => (/* binding */ EndOfLinePreference),\n/* harmony export */ EndOfLineSequence: () => (/* binding */ EndOfLineSequence),\n/* harmony export */ GlyphMarginLane: () => (/* binding */ GlyphMarginLane),\n/* harmony export */ IndentAction: () => (/* binding */ IndentAction),\n/* harmony export */ InjectedTextCursorStops: () => (/* binding */ InjectedTextCursorStops),\n/* harmony export */ InlayHintKind: () => (/* binding */ InlayHintKind),\n/* harmony export */ InlineCompletionTriggerKind: () => (/* binding */ InlineCompletionTriggerKind),\n/* harmony export */ InlineEditTriggerKind: () => (/* binding */ InlineEditTriggerKind),\n/* harmony export */ KeyCode: () => (/* binding */ KeyCode),\n/* harmony export */ MarkerSeverity: () => (/* binding */ MarkerSeverity),\n/* harmony export */ MarkerTag: () => (/* binding */ MarkerTag),\n/* harmony export */ MinimapPosition: () => (/* binding */ MinimapPosition),\n/* harmony export */ MouseTargetType: () => (/* binding */ MouseTargetType),\n/* harmony export */ NewSymbolNameTag: () => (/* binding */ NewSymbolNameTag),\n/* harmony export */ OverlayWidgetPositionPreference: () => (/* binding */ OverlayWidgetPositionPreference),\n/* harmony export */ OverviewRulerLane: () => (/* binding */ OverviewRulerLane),\n/* harmony export */ PositionAffinity: () => (/* binding */ PositionAffinity),\n/* harmony export */ RenderLineNumbersType: () => (/* binding */ RenderLineNumbersType),\n/* harmony export */ RenderMinimap: () => (/* binding */ RenderMinimap),\n/* harmony export */ ScrollType: () => (/* binding */ ScrollType),\n/* harmony export */ ScrollbarVisibility: () => (/* binding */ ScrollbarVisibility),\n/* harmony export */ SelectionDirection: () => (/* binding */ SelectionDirection),\n/* harmony export */ ShowLightbulbIconMode: () => (/* binding */ ShowLightbulbIconMode),\n/* harmony export */ SignatureHelpTriggerKind: () => (/* binding */ SignatureHelpTriggerKind),\n/* harmony export */ SymbolKind: () => (/* binding */ SymbolKind),\n/* harmony export */ SymbolTag: () => (/* binding */ SymbolTag),\n/* harmony export */ TextEditorCursorBlinkingStyle: () => (/* binding */ TextEditorCursorBlinkingStyle),\n/* harmony export */ TextEditorCursorStyle: () => (/* binding */ TextEditorCursorStyle),\n/* harmony export */ TrackedRangeStickiness: () => (/* binding */ TrackedRangeStickiness),\n/* harmony export */ WrappingIndent: () => (/* binding */ WrappingIndent)\n/* harmony export */ });\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n// THIS IS A GENERATED FILE. DO NOT EDIT DIRECTLY.\nvar AccessibilitySupport;\n(function (AccessibilitySupport) {\n /**\n * This should be the browser case where it is not known if a screen reader is attached or no.\n */\n AccessibilitySupport[AccessibilitySupport[\"Unknown\"] = 0] = \"Unknown\";\n AccessibilitySupport[AccessibilitySupport[\"Disabled\"] = 1] = \"Disabled\";\n AccessibilitySupport[AccessibilitySupport[\"Enabled\"] = 2] = \"Enabled\";\n})(AccessibilitySupport || (AccessibilitySupport = {}));\nvar CodeActionTriggerType;\n(function (CodeActionTriggerType) {\n CodeActionTriggerType[CodeActionTriggerType[\"Invoke\"] = 1] = \"Invoke\";\n CodeActionTriggerType[CodeActionTriggerType[\"Auto\"] = 2] = \"Auto\";\n})(CodeActionTriggerType || (CodeActionTriggerType = {}));\nvar CompletionItemInsertTextRule;\n(function (CompletionItemInsertTextRule) {\n CompletionItemInsertTextRule[CompletionItemInsertTextRule[\"None\"] = 0] = \"None\";\n /**\n * Adjust whitespace/indentation of multiline insert texts to\n * match the current line indentation.\n */\n CompletionItemInsertTextRule[CompletionItemInsertTextRule[\"KeepWhitespace\"] = 1] = \"KeepWhitespace\";\n /**\n * `insertText` is a snippet.\n */\n CompletionItemInsertTextRule[CompletionItemInsertTextRule[\"InsertAsSnippet\"] = 4] = \"InsertAsSnippet\";\n})(CompletionItemInsertTextRule || (CompletionItemInsertTextRule = {}));\nvar CompletionItemKind;\n(function (CompletionItemKind) {\n CompletionItemKind[CompletionItemKind[\"Method\"] = 0] = \"Method\";\n CompletionItemKind[CompletionItemKind[\"Function\"] = 1] = \"Function\";\n CompletionItemKind[CompletionItemKind[\"Constructor\"] = 2] = \"Constructor\";\n CompletionItemKind[CompletionItemKind[\"Field\"] = 3] = \"Field\";\n CompletionItemKind[CompletionItemKind[\"Variable\"] = 4] = \"Variable\";\n CompletionItemKind[CompletionItemKind[\"Class\"] = 5] = \"Class\";\n CompletionItemKind[CompletionItemKind[\"Struct\"] = 6] = \"Struct\";\n CompletionItemKind[CompletionItemKind[\"Interface\"] = 7] = \"Interface\";\n CompletionItemKind[CompletionItemKind[\"Module\"] = 8] = \"Module\";\n CompletionItemKind[CompletionItemKind[\"Property\"] = 9] = \"Property\";\n CompletionItemKind[CompletionItemKind[\"Event\"] = 10] = \"Event\";\n CompletionItemKind[CompletionItemKind[\"Operator\"] = 11] = \"Operator\";\n CompletionItemKind[CompletionItemKind[\"Unit\"] = 12] = \"Unit\";\n CompletionItemKind[CompletionItemKind[\"Value\"] = 13] = \"Value\";\n CompletionItemKind[CompletionItemKind[\"Constant\"] = 14] = \"Constant\";\n CompletionItemKind[CompletionItemKind[\"Enum\"] = 15] = \"Enum\";\n CompletionItemKind[CompletionItemKind[\"EnumMember\"] = 16] = \"EnumMember\";\n CompletionItemKind[CompletionItemKind[\"Keyword\"] = 17] = \"Keyword\";\n CompletionItemKind[CompletionItemKind[\"Text\"] = 18] = \"Text\";\n CompletionItemKind[CompletionItemKind[\"Color\"] = 19] = \"Color\";\n CompletionItemKind[CompletionItemKind[\"File\"] = 20] = \"File\";\n CompletionItemKind[CompletionItemKind[\"Reference\"] = 21] = \"Reference\";\n CompletionItemKind[CompletionItemKind[\"Customcolor\"] = 22] = \"Customcolor\";\n CompletionItemKind[CompletionItemKind[\"Folder\"] = 23] = \"Folder\";\n CompletionItemKind[CompletionItemKind[\"TypeParameter\"] = 24] = \"TypeParameter\";\n CompletionItemKind[CompletionItemKind[\"User\"] = 25] = \"User\";\n CompletionItemKind[CompletionItemKind[\"Issue\"] = 26] = \"Issue\";\n CompletionItemKind[CompletionItemKind[\"Snippet\"] = 27] = \"Snippet\";\n})(CompletionItemKind || (CompletionItemKind = {}));\nvar CompletionItemTag;\n(function (CompletionItemTag) {\n CompletionItemTag[CompletionItemTag[\"Deprecated\"] = 1] = \"Deprecated\";\n})(CompletionItemTag || (CompletionItemTag = {}));\n/**\n * How a suggest provider was triggered.\n */\nvar CompletionTriggerKind;\n(function (CompletionTriggerKind) {\n CompletionTriggerKind[CompletionTriggerKind[\"Invoke\"] = 0] = \"Invoke\";\n CompletionTriggerKind[CompletionTriggerKind[\"TriggerCharacter\"] = 1] = \"TriggerCharacter\";\n CompletionTriggerKind[CompletionTriggerKind[\"TriggerForIncompleteCompletions\"] = 2] = \"TriggerForIncompleteCompletions\";\n})(CompletionTriggerKind || (CompletionTriggerKind = {}));\n/**\n * A positioning preference for rendering content widgets.\n */\nvar ContentWidgetPositionPreference;\n(function (ContentWidgetPositionPreference) {\n /**\n * Place the content widget exactly at a position\n */\n ContentWidgetPositionPreference[ContentWidgetPositionPreference[\"EXACT\"] = 0] = \"EXACT\";\n /**\n * Place the content widget above a position\n */\n ContentWidgetPositionPreference[ContentWidgetPositionPreference[\"ABOVE\"] = 1] = \"ABOVE\";\n /**\n * Place the content widget below a position\n */\n ContentWidgetPositionPreference[ContentWidgetPositionPreference[\"BELOW\"] = 2] = \"BELOW\";\n})(ContentWidgetPositionPreference || (ContentWidgetPositionPreference = {}));\n/**\n * Describes the reason the cursor has changed its position.\n */\nvar CursorChangeReason;\n(function (CursorChangeReason) {\n /**\n * Unknown or not set.\n */\n CursorChangeReason[CursorChangeReason[\"NotSet\"] = 0] = \"NotSet\";\n /**\n * A `model.setValue()` was called.\n */\n CursorChangeReason[CursorChangeReason[\"ContentFlush\"] = 1] = \"ContentFlush\";\n /**\n * The `model` has been changed outside of this cursor and the cursor recovers its position from associated markers.\n */\n CursorChangeReason[CursorChangeReason[\"RecoverFromMarkers\"] = 2] = \"RecoverFromMarkers\";\n /**\n * There was an explicit user gesture.\n */\n CursorChangeReason[CursorChangeReason[\"Explicit\"] = 3] = \"Explicit\";\n /**\n * There was a Paste.\n */\n CursorChangeReason[CursorChangeReason[\"Paste\"] = 4] = \"Paste\";\n /**\n * There was an Undo.\n */\n CursorChangeReason[CursorChangeReason[\"Undo\"] = 5] = \"Undo\";\n /**\n * There was a Redo.\n */\n CursorChangeReason[CursorChangeReason[\"Redo\"] = 6] = \"Redo\";\n})(CursorChangeReason || (CursorChangeReason = {}));\n/**\n * The default end of line to use when instantiating models.\n */\nvar DefaultEndOfLine;\n(function (DefaultEndOfLine) {\n /**\n * Use line feed (\\n) as the end of line character.\n */\n DefaultEndOfLine[DefaultEndOfLine[\"LF\"] = 1] = \"LF\";\n /**\n * Use carriage return and line feed (\\r\\n) as the end of line character.\n */\n DefaultEndOfLine[DefaultEndOfLine[\"CRLF\"] = 2] = \"CRLF\";\n})(DefaultEndOfLine || (DefaultEndOfLine = {}));\n/**\n * A document highlight kind.\n */\nvar DocumentHighlightKind;\n(function (DocumentHighlightKind) {\n /**\n * A textual occurrence.\n */\n DocumentHighlightKind[DocumentHighlightKind[\"Text\"] = 0] = \"Text\";\n /**\n * Read-access of a symbol, like reading a variable.\n */\n DocumentHighlightKind[DocumentHighlightKind[\"Read\"] = 1] = \"Read\";\n /**\n * Write-access of a symbol, like writing to a variable.\n */\n DocumentHighlightKind[DocumentHighlightKind[\"Write\"] = 2] = \"Write\";\n})(DocumentHighlightKind || (DocumentHighlightKind = {}));\n/**\n * Configuration options for auto indentation in the editor\n */\nvar EditorAutoIndentStrategy;\n(function (EditorAutoIndentStrategy) {\n EditorAutoIndentStrategy[EditorAutoIndentStrategy[\"None\"] = 0] = \"None\";\n EditorAutoIndentStrategy[EditorAutoIndentStrategy[\"Keep\"] = 1] = \"Keep\";\n EditorAutoIndentStrategy[EditorAutoIndentStrategy[\"Brackets\"] = 2] = \"Brackets\";\n EditorAutoIndentStrategy[EditorAutoIndentStrategy[\"Advanced\"] = 3] = \"Advanced\";\n EditorAutoIndentStrategy[EditorAutoIndentStrategy[\"Full\"] = 4] = \"Full\";\n})(EditorAutoIndentStrategy || (EditorAutoIndentStrategy = {}));\nvar EditorOption;\n(function (EditorOption) {\n EditorOption[EditorOption[\"acceptSuggestionOnCommitCharacter\"] = 0] = \"acceptSuggestionOnCommitCharacter\";\n EditorOption[EditorOption[\"acceptSuggestionOnEnter\"] = 1] = \"acceptSuggestionOnEnter\";\n EditorOption[EditorOption[\"accessibilitySupport\"] = 2] = \"accessibilitySupport\";\n EditorOption[EditorOption[\"accessibilityPageSize\"] = 3] = \"accessibilityPageSize\";\n EditorOption[EditorOption[\"ariaLabel\"] = 4] = \"ariaLabel\";\n EditorOption[EditorOption[\"ariaRequired\"] = 5] = \"ariaRequired\";\n EditorOption[EditorOption[\"autoClosingBrackets\"] = 6] = \"autoClosingBrackets\";\n EditorOption[EditorOption[\"autoClosingComments\"] = 7] = \"autoClosingComments\";\n EditorOption[EditorOption[\"screenReaderAnnounceInlineSuggestion\"] = 8] = \"screenReaderAnnounceInlineSuggestion\";\n EditorOption[EditorOption[\"autoClosingDelete\"] = 9] = \"autoClosingDelete\";\n EditorOption[EditorOption[\"autoClosingOvertype\"] = 10] = \"autoClosingOvertype\";\n EditorOption[EditorOption[\"autoClosingQuotes\"] = 11] = \"autoClosingQuotes\";\n EditorOption[EditorOption[\"autoIndent\"] = 12] = \"autoIndent\";\n EditorOption[EditorOption[\"automaticLayout\"] = 13] = \"automaticLayout\";\n EditorOption[EditorOption[\"autoSurround\"] = 14] = \"autoSurround\";\n EditorOption[EditorOption[\"bracketPairColorization\"] = 15] = \"bracketPairColorization\";\n EditorOption[EditorOption[\"guides\"] = 16] = \"guides\";\n EditorOption[EditorOption[\"codeLens\"] = 17] = \"codeLens\";\n EditorOption[EditorOption[\"codeLensFontFamily\"] = 18] = \"codeLensFontFamily\";\n EditorOption[EditorOption[\"codeLensFontSize\"] = 19] = \"codeLensFontSize\";\n EditorOption[EditorOption[\"colorDecorators\"] = 20] = \"colorDecorators\";\n EditorOption[EditorOption[\"colorDecoratorsLimit\"] = 21] = \"colorDecoratorsLimit\";\n EditorOption[EditorOption[\"columnSelection\"] = 22] = \"columnSelection\";\n EditorOption[EditorOption[\"comments\"] = 23] = \"comments\";\n EditorOption[EditorOption[\"contextmenu\"] = 24] = \"contextmenu\";\n EditorOption[EditorOption[\"copyWithSyntaxHighlighting\"] = 25] = \"copyWithSyntaxHighlighting\";\n EditorOption[EditorOption[\"cursorBlinking\"] = 26] = \"cursorBlinking\";\n EditorOption[EditorOption[\"cursorSmoothCaretAnimation\"] = 27] = \"cursorSmoothCaretAnimation\";\n EditorOption[EditorOption[\"cursorStyle\"] = 28] = \"cursorStyle\";\n EditorOption[EditorOption[\"cursorSurroundingLines\"] = 29] = \"cursorSurroundingLines\";\n EditorOption[EditorOption[\"cursorSurroundingLinesStyle\"] = 30] = \"cursorSurroundingLinesStyle\";\n EditorOption[EditorOption[\"cursorWidth\"] = 31] = \"cursorWidth\";\n EditorOption[EditorOption[\"disableLayerHinting\"] = 32] = \"disableLayerHinting\";\n EditorOption[EditorOption[\"disableMonospaceOptimizations\"] = 33] = \"disableMonospaceOptimizations\";\n EditorOption[EditorOption[\"domReadOnly\"] = 34] = \"domReadOnly\";\n EditorOption[EditorOption[\"dragAndDrop\"] = 35] = \"dragAndDrop\";\n EditorOption[EditorOption[\"dropIntoEditor\"] = 36] = \"dropIntoEditor\";\n EditorOption[EditorOption[\"emptySelectionClipboard\"] = 37] = \"emptySelectionClipboard\";\n EditorOption[EditorOption[\"experimentalWhitespaceRendering\"] = 38] = \"experimentalWhitespaceRendering\";\n EditorOption[EditorOption[\"extraEditorClassName\"] = 39] = \"extraEditorClassName\";\n EditorOption[EditorOption[\"fastScrollSensitivity\"] = 40] = \"fastScrollSensitivity\";\n EditorOption[EditorOption[\"find\"] = 41] = \"find\";\n EditorOption[EditorOption[\"fixedOverflowWidgets\"] = 42] = \"fixedOverflowWidgets\";\n EditorOption[EditorOption[\"folding\"] = 43] = \"folding\";\n EditorOption[EditorOption[\"foldingStrategy\"] = 44] = \"foldingStrategy\";\n EditorOption[EditorOption[\"foldingHighlight\"] = 45] = \"foldingHighlight\";\n EditorOption[EditorOption[\"foldingImportsByDefault\"] = 46] = \"foldingImportsByDefault\";\n EditorOption[EditorOption[\"foldingMaximumRegions\"] = 47] = \"foldingMaximumRegions\";\n EditorOption[EditorOption[\"unfoldOnClickAfterEndOfLine\"] = 48] = \"unfoldOnClickAfterEndOfLine\";\n EditorOption[EditorOption[\"fontFamily\"] = 49] = \"fontFamily\";\n EditorOption[EditorOption[\"fontInfo\"] = 50] = \"fontInfo\";\n EditorOption[EditorOption[\"fontLigatures\"] = 51] = \"fontLigatures\";\n EditorOption[EditorOption[\"fontSize\"] = 52] = \"fontSize\";\n EditorOption[EditorOption[\"fontWeight\"] = 53] = \"fontWeight\";\n EditorOption[EditorOption[\"fontVariations\"] = 54] = \"fontVariations\";\n EditorOption[EditorOption[\"formatOnPaste\"] = 55] = \"formatOnPaste\";\n EditorOption[EditorOption[\"formatOnType\"] = 56] = \"formatOnType\";\n EditorOption[EditorOption[\"glyphMargin\"] = 57] = \"glyphMargin\";\n EditorOption[EditorOption[\"gotoLocation\"] = 58] = \"gotoLocation\";\n EditorOption[EditorOption[\"hideCursorInOverviewRuler\"] = 59] = \"hideCursorInOverviewRuler\";\n EditorOption[EditorOption[\"hover\"] = 60] = \"hover\";\n EditorOption[EditorOption[\"inDiffEditor\"] = 61] = \"inDiffEditor\";\n EditorOption[EditorOption[\"inlineSuggest\"] = 62] = \"inlineSuggest\";\n EditorOption[EditorOption[\"inlineEdit\"] = 63] = \"inlineEdit\";\n EditorOption[EditorOption[\"letterSpacing\"] = 64] = \"letterSpacing\";\n EditorOption[EditorOption[\"lightbulb\"] = 65] = \"lightbulb\";\n EditorOption[EditorOption[\"lineDecorationsWidth\"] = 66] = \"lineDecorationsWidth\";\n EditorOption[EditorOption[\"lineHeight\"] = 67] = \"lineHeight\";\n EditorOption[EditorOption[\"lineNumbers\"] = 68] = \"lineNumbers\";\n EditorOption[EditorOption[\"lineNumbersMinChars\"] = 69] = \"lineNumbersMinChars\";\n EditorOption[EditorOption[\"linkedEditing\"] = 70] = \"linkedEditing\";\n EditorOption[EditorOption[\"links\"] = 71] = \"links\";\n EditorOption[EditorOption[\"matchBrackets\"] = 72] = \"matchBrackets\";\n EditorOption[EditorOption[\"minimap\"] = 73] = \"minimap\";\n EditorOption[EditorOption[\"mouseStyle\"] = 74] = \"mouseStyle\";\n EditorOption[EditorOption[\"mouseWheelScrollSensitivity\"] = 75] = \"mouseWheelScrollSensitivity\";\n EditorOption[EditorOption[\"mouseWheelZoom\"] = 76] = \"mouseWheelZoom\";\n EditorOption[EditorOption[\"multiCursorMergeOverlapping\"] = 77] = \"multiCursorMergeOverlapping\";\n EditorOption[EditorOption[\"multiCursorModifier\"] = 78] = \"multiCursorModifier\";\n EditorOption[EditorOption[\"multiCursorPaste\"] = 79] = \"multiCursorPaste\";\n EditorOption[EditorOption[\"multiCursorLimit\"] = 80] = \"multiCursorLimit\";\n EditorOption[EditorOption[\"occurrencesHighlight\"] = 81] = \"occurrencesHighlight\";\n EditorOption[EditorOption[\"overviewRulerBorder\"] = 82] = \"overviewRulerBorder\";\n EditorOption[EditorOption[\"overviewRulerLanes\"] = 83] = \"overviewRulerLanes\";\n EditorOption[EditorOption[\"padding\"] = 84] = \"padding\";\n EditorOption[EditorOption[\"pasteAs\"] = 85] = \"pasteAs\";\n EditorOption[EditorOption[\"parameterHints\"] = 86] = \"parameterHints\";\n EditorOption[EditorOption[\"peekWidgetDefaultFocus\"] = 87] = \"peekWidgetDefaultFocus\";\n EditorOption[EditorOption[\"definitionLinkOpensInPeek\"] = 88] = \"definitionLinkOpensInPeek\";\n EditorOption[EditorOption[\"quickSuggestions\"] = 89] = \"quickSuggestions\";\n EditorOption[EditorOption[\"quickSuggestionsDelay\"] = 90] = \"quickSuggestionsDelay\";\n EditorOption[EditorOption[\"readOnly\"] = 91] = \"readOnly\";\n EditorOption[EditorOption[\"readOnlyMessage\"] = 92] = \"readOnlyMessage\";\n EditorOption[EditorOption[\"renameOnType\"] = 93] = \"renameOnType\";\n EditorOption[EditorOption[\"renderControlCharacters\"] = 94] = \"renderControlCharacters\";\n EditorOption[EditorOption[\"renderFinalNewline\"] = 95] = \"renderFinalNewline\";\n EditorOption[EditorOption[\"renderLineHighlight\"] = 96] = \"renderLineHighlight\";\n EditorOption[EditorOption[\"renderLineHighlightOnlyWhenFocus\"] = 97] = \"renderLineHighlightOnlyWhenFocus\";\n EditorOption[EditorOption[\"renderValidationDecorations\"] = 98] = \"renderValidationDecorations\";\n EditorOption[EditorOption[\"renderWhitespace\"] = 99] = \"renderWhitespace\";\n EditorOption[EditorOption[\"revealHorizontalRightPadding\"] = 100] = \"revealHorizontalRightPadding\";\n EditorOption[EditorOption[\"roundedSelection\"] = 101] = \"roundedSelection\";\n EditorOption[EditorOption[\"rulers\"] = 102] = \"rulers\";\n EditorOption[EditorOption[\"scrollbar\"] = 103] = \"scrollbar\";\n EditorOption[EditorOption[\"scrollBeyondLastColumn\"] = 104] = \"scrollBeyondLastColumn\";\n EditorOption[EditorOption[\"scrollBeyondLastLine\"] = 105] = \"scrollBeyondLastLine\";\n EditorOption[EditorOption[\"scrollPredominantAxis\"] = 106] = \"scrollPredominantAxis\";\n EditorOption[EditorOption[\"selectionClipboard\"] = 107] = \"selectionClipboard\";\n EditorOption[EditorOption[\"selectionHighlight\"] = 108] = \"selectionHighlight\";\n EditorOption[EditorOption[\"selectOnLineNumbers\"] = 109] = \"selectOnLineNumbers\";\n EditorOption[EditorOption[\"showFoldingControls\"] = 110] = \"showFoldingControls\";\n EditorOption[EditorOption[\"showUnused\"] = 111] = \"showUnused\";\n EditorOption[EditorOption[\"snippetSuggestions\"] = 112] = \"snippetSuggestions\";\n EditorOption[EditorOption[\"smartSelect\"] = 113] = \"smartSelect\";\n EditorOption[EditorOption[\"smoothScrolling\"] = 114] = \"smoothScrolling\";\n EditorOption[EditorOption[\"stickyScroll\"] = 115] = \"stickyScroll\";\n EditorOption[EditorOption[\"stickyTabStops\"] = 116] = \"stickyTabStops\";\n EditorOption[EditorOption[\"stopRenderingLineAfter\"] = 117] = \"stopRenderingLineAfter\";\n EditorOption[EditorOption[\"suggest\"] = 118] = \"suggest\";\n EditorOption[EditorOption[\"suggestFontSize\"] = 119] = \"suggestFontSize\";\n EditorOption[EditorOption[\"suggestLineHeight\"] = 120] = \"suggestLineHeight\";\n EditorOption[EditorOption[\"suggestOnTriggerCharacters\"] = 121] = \"suggestOnTriggerCharacters\";\n EditorOption[EditorOption[\"suggestSelection\"] = 122] = \"suggestSelection\";\n EditorOption[EditorOption[\"tabCompletion\"] = 123] = \"tabCompletion\";\n EditorOption[EditorOption[\"tabIndex\"] = 124] = \"tabIndex\";\n EditorOption[EditorOption[\"unicodeHighlighting\"] = 125] = \"unicodeHighlighting\";\n EditorOption[EditorOption[\"unusualLineTerminators\"] = 126] = \"unusualLineTerminators\";\n EditorOption[EditorOption[\"useShadowDOM\"] = 127] = \"useShadowDOM\";\n EditorOption[EditorOption[\"useTabStops\"] = 128] = \"useTabStops\";\n EditorOption[EditorOption[\"wordBreak\"] = 129] = \"wordBreak\";\n EditorOption[EditorOption[\"wordSeparators\"] = 130] = \"wordSeparators\";\n EditorOption[EditorOption[\"wordWrap\"] = 131] = \"wordWrap\";\n EditorOption[EditorOption[\"wordWrapBreakAfterCharacters\"] = 132] = \"wordWrapBreakAfterCharacters\";\n EditorOption[EditorOption[\"wordWrapBreakBeforeCharacters\"] = 133] = \"wordWrapBreakBeforeCharacters\";\n EditorOption[EditorOption[\"wordWrapColumn\"] = 134] = \"wordWrapColumn\";\n EditorOption[EditorOption[\"wordWrapOverride1\"] = 135] = \"wordWrapOverride1\";\n EditorOption[EditorOption[\"wordWrapOverride2\"] = 136] = \"wordWrapOverride2\";\n EditorOption[EditorOption[\"wrappingIndent\"] = 137] = \"wrappingIndent\";\n EditorOption[EditorOption[\"wrappingStrategy\"] = 138] = \"wrappingStrategy\";\n EditorOption[EditorOption[\"showDeprecated\"] = 139] = \"showDeprecated\";\n EditorOption[EditorOption[\"inlayHints\"] = 140] = \"inlayHints\";\n EditorOption[EditorOption[\"editorClassName\"] = 141] = \"editorClassName\";\n EditorOption[EditorOption[\"pixelRatio\"] = 142] = \"pixelRatio\";\n EditorOption[EditorOption[\"tabFocusMode\"] = 143] = \"tabFocusMode\";\n EditorOption[EditorOption[\"layoutInfo\"] = 144] = \"layoutInfo\";\n EditorOption[EditorOption[\"wrappingInfo\"] = 145] = \"wrappingInfo\";\n EditorOption[EditorOption[\"defaultColorDecorators\"] = 146] = \"defaultColorDecorators\";\n EditorOption[EditorOption[\"colorDecoratorsActivatedOn\"] = 147] = \"colorDecoratorsActivatedOn\";\n EditorOption[EditorOption[\"inlineCompletionsAccessibilityVerbose\"] = 148] = \"inlineCompletionsAccessibilityVerbose\";\n})(EditorOption || (EditorOption = {}));\n/**\n * End of line character preference.\n */\nvar EndOfLinePreference;\n(function (EndOfLinePreference) {\n /**\n * Use the end of line character identified in the text buffer.\n */\n EndOfLinePreference[EndOfLinePreference[\"TextDefined\"] = 0] = \"TextDefined\";\n /**\n * Use line feed (\\n) as the end of line character.\n */\n EndOfLinePreference[EndOfLinePreference[\"LF\"] = 1] = \"LF\";\n /**\n * Use carriage return and line feed (\\r\\n) as the end of line character.\n */\n EndOfLinePreference[EndOfLinePreference[\"CRLF\"] = 2] = \"CRLF\";\n})(EndOfLinePreference || (EndOfLinePreference = {}));\n/**\n * End of line character preference.\n */\nvar EndOfLineSequence;\n(function (EndOfLineSequence) {\n /**\n * Use line feed (\\n) as the end of line character.\n */\n EndOfLineSequence[EndOfLineSequence[\"LF\"] = 0] = \"LF\";\n /**\n * Use carriage return and line feed (\\r\\n) as the end of line character.\n */\n EndOfLineSequence[EndOfLineSequence[\"CRLF\"] = 1] = \"CRLF\";\n})(EndOfLineSequence || (EndOfLineSequence = {}));\n/**\n * Vertical Lane in the glyph margin of the editor.\n */\nvar GlyphMarginLane;\n(function (GlyphMarginLane) {\n GlyphMarginLane[GlyphMarginLane[\"Left\"] = 1] = \"Left\";\n GlyphMarginLane[GlyphMarginLane[\"Center\"] = 2] = \"Center\";\n GlyphMarginLane[GlyphMarginLane[\"Right\"] = 3] = \"Right\";\n})(GlyphMarginLane || (GlyphMarginLane = {}));\n/**\n * Describes what to do with the indentation when pressing Enter.\n */\nvar IndentAction;\n(function (IndentAction) {\n /**\n * Insert new line and copy the previous line's indentation.\n */\n IndentAction[IndentAction[\"None\"] = 0] = \"None\";\n /**\n * Insert new line and indent once (relative to the previous line's indentation).\n */\n IndentAction[IndentAction[\"Indent\"] = 1] = \"Indent\";\n /**\n * Insert two new lines:\n * - the first one indented which will hold the cursor\n * - the second one at the same indentation level\n */\n IndentAction[IndentAction[\"IndentOutdent\"] = 2] = \"IndentOutdent\";\n /**\n * Insert new line and outdent once (relative to the previous line's indentation).\n */\n IndentAction[IndentAction[\"Outdent\"] = 3] = \"Outdent\";\n})(IndentAction || (IndentAction = {}));\nvar InjectedTextCursorStops;\n(function (InjectedTextCursorStops) {\n InjectedTextCursorStops[InjectedTextCursorStops[\"Both\"] = 0] = \"Both\";\n InjectedTextCursorStops[InjectedTextCursorStops[\"Right\"] = 1] = \"Right\";\n InjectedTextCursorStops[InjectedTextCursorStops[\"Left\"] = 2] = \"Left\";\n InjectedTextCursorStops[InjectedTextCursorStops[\"None\"] = 3] = \"None\";\n})(InjectedTextCursorStops || (InjectedTextCursorStops = {}));\nvar InlayHintKind;\n(function (InlayHintKind) {\n InlayHintKind[InlayHintKind[\"Type\"] = 1] = \"Type\";\n InlayHintKind[InlayHintKind[\"Parameter\"] = 2] = \"Parameter\";\n})(InlayHintKind || (InlayHintKind = {}));\n/**\n * How an {@link InlineCompletionsProvider inline completion provider} was triggered.\n */\nvar InlineCompletionTriggerKind;\n(function (InlineCompletionTriggerKind) {\n /**\n * Completion was triggered automatically while editing.\n * It is sufficient to return a single completion item in this case.\n */\n InlineCompletionTriggerKind[InlineCompletionTriggerKind[\"Automatic\"] = 0] = \"Automatic\";\n /**\n * Completion was triggered explicitly by a user gesture.\n * Return multiple completion items to enable cycling through them.\n */\n InlineCompletionTriggerKind[InlineCompletionTriggerKind[\"Explicit\"] = 1] = \"Explicit\";\n})(InlineCompletionTriggerKind || (InlineCompletionTriggerKind = {}));\nvar InlineEditTriggerKind;\n(function (InlineEditTriggerKind) {\n InlineEditTriggerKind[InlineEditTriggerKind[\"Invoke\"] = 0] = \"Invoke\";\n InlineEditTriggerKind[InlineEditTriggerKind[\"Automatic\"] = 1] = \"Automatic\";\n})(InlineEditTriggerKind || (InlineEditTriggerKind = {}));\n/**\n * Virtual Key Codes, the value does not hold any inherent meaning.\n * Inspired somewhat from https://msdn.microsoft.com/en-us/library/windows/desktop/dd375731(v=vs.85).aspx\n * But these are \"more general\", as they should work across browsers & OS`s.\n */\nvar KeyCode;\n(function (KeyCode) {\n KeyCode[KeyCode[\"DependsOnKbLayout\"] = -1] = \"DependsOnKbLayout\";\n /**\n * Placed first to cover the 0 value of the enum.\n */\n KeyCode[KeyCode[\"Unknown\"] = 0] = \"Unknown\";\n KeyCode[KeyCode[\"Backspace\"] = 1] = \"Backspace\";\n KeyCode[KeyCode[\"Tab\"] = 2] = \"Tab\";\n KeyCode[KeyCode[\"Enter\"] = 3] = \"Enter\";\n KeyCode[KeyCode[\"Shift\"] = 4] = \"Shift\";\n KeyCode[KeyCode[\"Ctrl\"] = 5] = \"Ctrl\";\n KeyCode[KeyCode[\"Alt\"] = 6] = \"Alt\";\n KeyCode[KeyCode[\"PauseBreak\"] = 7] = \"PauseBreak\";\n KeyCode[KeyCode[\"CapsLock\"] = 8] = \"CapsLock\";\n KeyCode[KeyCode[\"Escape\"] = 9] = \"Escape\";\n KeyCode[KeyCode[\"Space\"] = 10] = \"Space\";\n KeyCode[KeyCode[\"PageUp\"] = 11] = \"PageUp\";\n KeyCode[KeyCode[\"PageDown\"] = 12] = \"PageDown\";\n KeyCode[KeyCode[\"End\"] = 13] = \"End\";\n KeyCode[KeyCode[\"Home\"] = 14] = \"Home\";\n KeyCode[KeyCode[\"LeftArrow\"] = 15] = \"LeftArrow\";\n KeyCode[KeyCode[\"UpArrow\"] = 16] = \"UpArrow\";\n KeyCode[KeyCode[\"RightArrow\"] = 17] = \"RightArrow\";\n KeyCode[KeyCode[\"DownArrow\"] = 18] = \"DownArrow\";\n KeyCode[KeyCode[\"Insert\"] = 19] = \"Insert\";\n KeyCode[KeyCode[\"Delete\"] = 20] = \"Delete\";\n KeyCode[KeyCode[\"Digit0\"] = 21] = \"Digit0\";\n KeyCode[KeyCode[\"Digit1\"] = 22] = \"Digit1\";\n KeyCode[KeyCode[\"Digit2\"] = 23] = \"Digit2\";\n KeyCode[KeyCode[\"Digit3\"] = 24] = \"Digit3\";\n KeyCode[KeyCode[\"Digit4\"] = 25] = \"Digit4\";\n KeyCode[KeyCode[\"Digit5\"] = 26] = \"Digit5\";\n KeyCode[KeyCode[\"Digit6\"] = 27] = \"Digit6\";\n KeyCode[KeyCode[\"Digit7\"] = 28] = \"Digit7\";\n KeyCode[KeyCode[\"Digit8\"] = 29] = \"Digit8\";\n KeyCode[KeyCode[\"Digit9\"] = 30] = \"Digit9\";\n KeyCode[KeyCode[\"KeyA\"] = 31] = \"KeyA\";\n KeyCode[KeyCode[\"KeyB\"] = 32] = \"KeyB\";\n KeyCode[KeyCode[\"KeyC\"] = 33] = \"KeyC\";\n KeyCode[KeyCode[\"KeyD\"] = 34] = \"KeyD\";\n KeyCode[KeyCode[\"KeyE\"] = 35] = \"KeyE\";\n KeyCode[KeyCode[\"KeyF\"] = 36] = \"KeyF\";\n KeyCode[KeyCode[\"KeyG\"] = 37] = \"KeyG\";\n KeyCode[KeyCode[\"KeyH\"] = 38] = \"KeyH\";\n KeyCode[KeyCode[\"KeyI\"] = 39] = \"KeyI\";\n KeyCode[KeyCode[\"KeyJ\"] = 40] = \"KeyJ\";\n KeyCode[KeyCode[\"KeyK\"] = 41] = \"KeyK\";\n KeyCode[KeyCode[\"KeyL\"] = 42] = \"KeyL\";\n KeyCode[KeyCode[\"KeyM\"] = 43] = \"KeyM\";\n KeyCode[KeyCode[\"KeyN\"] = 44] = \"KeyN\";\n KeyCode[KeyCode[\"KeyO\"] = 45] = \"KeyO\";\n KeyCode[KeyCode[\"KeyP\"] = 46] = \"KeyP\";\n KeyCode[KeyCode[\"KeyQ\"] = 47] = \"KeyQ\";\n KeyCode[KeyCode[\"KeyR\"] = 48] = \"KeyR\";\n KeyCode[KeyCode[\"KeyS\"] = 49] = \"KeyS\";\n KeyCode[KeyCode[\"KeyT\"] = 50] = \"KeyT\";\n KeyCode[KeyCode[\"KeyU\"] = 51] = \"KeyU\";\n KeyCode[KeyCode[\"KeyV\"] = 52] = \"KeyV\";\n KeyCode[KeyCode[\"KeyW\"] = 53] = \"KeyW\";\n KeyCode[KeyCode[\"KeyX\"] = 54] = \"KeyX\";\n KeyCode[KeyCode[\"KeyY\"] = 55] = \"KeyY\";\n KeyCode[KeyCode[\"KeyZ\"] = 56] = \"KeyZ\";\n KeyCode[KeyCode[\"Meta\"] = 57] = \"Meta\";\n KeyCode[KeyCode[\"ContextMenu\"] = 58] = \"ContextMenu\";\n KeyCode[KeyCode[\"F1\"] = 59] = \"F1\";\n KeyCode[KeyCode[\"F2\"] = 60] = \"F2\";\n KeyCode[KeyCode[\"F3\"] = 61] = \"F3\";\n KeyCode[KeyCode[\"F4\"] = 62] = \"F4\";\n KeyCode[KeyCode[\"F5\"] = 63] = \"F5\";\n KeyCode[KeyCode[\"F6\"] = 64] = \"F6\";\n KeyCode[KeyCode[\"F7\"] = 65] = \"F7\";\n KeyCode[KeyCode[\"F8\"] = 66] = \"F8\";\n KeyCode[KeyCode[\"F9\"] = 67] = \"F9\";\n KeyCode[KeyCode[\"F10\"] = 68] = \"F10\";\n KeyCode[KeyCode[\"F11\"] = 69] = \"F11\";\n KeyCode[KeyCode[\"F12\"] = 70] = \"F12\";\n KeyCode[KeyCode[\"F13\"] = 71] = \"F13\";\n KeyCode[KeyCode[\"F14\"] = 72] = \"F14\";\n KeyCode[KeyCode[\"F15\"] = 73] = \"F15\";\n KeyCode[KeyCode[\"F16\"] = 74] = \"F16\";\n KeyCode[KeyCode[\"F17\"] = 75] = \"F17\";\n KeyCode[KeyCode[\"F18\"] = 76] = \"F18\";\n KeyCode[KeyCode[\"F19\"] = 77] = \"F19\";\n KeyCode[KeyCode[\"F20\"] = 78] = \"F20\";\n KeyCode[KeyCode[\"F21\"] = 79] = \"F21\";\n KeyCode[KeyCode[\"F22\"] = 80] = \"F22\";\n KeyCode[KeyCode[\"F23\"] = 81] = \"F23\";\n KeyCode[KeyCode[\"F24\"] = 82] = \"F24\";\n KeyCode[KeyCode[\"NumLock\"] = 83] = \"NumLock\";\n KeyCode[KeyCode[\"ScrollLock\"] = 84] = \"ScrollLock\";\n /**\n * Used for miscellaneous characters; it can vary by keyboard.\n * For the US standard keyboard, the ';:' key\n */\n KeyCode[KeyCode[\"Semicolon\"] = 85] = \"Semicolon\";\n /**\n * For any country/region, the '+' key\n * For the US standard keyboard, the '=+' key\n */\n KeyCode[KeyCode[\"Equal\"] = 86] = \"Equal\";\n /**\n * For any country/region, the ',' key\n * For the US standard keyboard, the ',<' key\n */\n KeyCode[KeyCode[\"Comma\"] = 87] = \"Comma\";\n /**\n * For any country/region, the '-' key\n * For the US standard keyboard, the '-_' key\n */\n KeyCode[KeyCode[\"Minus\"] = 88] = \"Minus\";\n /**\n * For any country/region, the '.' key\n * For the US standard keyboard, the '.>' key\n */\n KeyCode[KeyCode[\"Period\"] = 89] = \"Period\";\n /**\n * Used for miscellaneous characters; it can vary by keyboard.\n * For the US standard keyboard, the '/?' key\n */\n KeyCode[KeyCode[\"Slash\"] = 90] = \"Slash\";\n /**\n * Used for miscellaneous characters; it can vary by keyboard.\n * For the US standard keyboard, the '`~' key\n */\n KeyCode[KeyCode[\"Backquote\"] = 91] = \"Backquote\";\n /**\n * Used for miscellaneous characters; it can vary by keyboard.\n * For the US standard keyboard, the '[{' key\n */\n KeyCode[KeyCode[\"BracketLeft\"] = 92] = \"BracketLeft\";\n /**\n * Used for miscellaneous characters; it can vary by keyboard.\n * For the US standard keyboard, the '\\|' key\n */\n KeyCode[KeyCode[\"Backslash\"] = 93] = \"Backslash\";\n /**\n * Used for miscellaneous characters; it can vary by keyboard.\n * For the US standard keyboard, the ']}' key\n */\n KeyCode[KeyCode[\"BracketRight\"] = 94] = \"BracketRight\";\n /**\n * Used for miscellaneous characters; it can vary by keyboard.\n * For the US standard keyboard, the ''\"' key\n */\n KeyCode[KeyCode[\"Quote\"] = 95] = \"Quote\";\n /**\n * Used for miscellaneous characters; it can vary by keyboard.\n */\n KeyCode[KeyCode[\"OEM_8\"] = 96] = \"OEM_8\";\n /**\n * Either the angle bracket key or the backslash key on the RT 102-key keyboard.\n */\n KeyCode[KeyCode[\"IntlBackslash\"] = 97] = \"IntlBackslash\";\n KeyCode[KeyCode[\"Numpad0\"] = 98] = \"Numpad0\";\n KeyCode[KeyCode[\"Numpad1\"] = 99] = \"Numpad1\";\n KeyCode[KeyCode[\"Numpad2\"] = 100] = \"Numpad2\";\n KeyCode[KeyCode[\"Numpad3\"] = 101] = \"Numpad3\";\n KeyCode[KeyCode[\"Numpad4\"] = 102] = \"Numpad4\";\n KeyCode[KeyCode[\"Numpad5\"] = 103] = \"Numpad5\";\n KeyCode[KeyCode[\"Numpad6\"] = 104] = \"Numpad6\";\n KeyCode[KeyCode[\"Numpad7\"] = 105] = \"Numpad7\";\n KeyCode[KeyCode[\"Numpad8\"] = 106] = \"Numpad8\";\n KeyCode[KeyCode[\"Numpad9\"] = 107] = \"Numpad9\";\n KeyCode[KeyCode[\"NumpadMultiply\"] = 108] = \"NumpadMultiply\";\n KeyCode[KeyCode[\"NumpadAdd\"] = 109] = \"NumpadAdd\";\n KeyCode[KeyCode[\"NUMPAD_SEPARATOR\"] = 110] = \"NUMPAD_SEPARATOR\";\n KeyCode[KeyCode[\"NumpadSubtract\"] = 111] = \"NumpadSubtract\";\n KeyCode[KeyCode[\"NumpadDecimal\"] = 112] = \"NumpadDecimal\";\n KeyCode[KeyCode[\"NumpadDivide\"] = 113] = \"NumpadDivide\";\n /**\n * Cover all key codes when IME is processing input.\n */\n KeyCode[KeyCode[\"KEY_IN_COMPOSITION\"] = 114] = \"KEY_IN_COMPOSITION\";\n KeyCode[KeyCode[\"ABNT_C1\"] = 115] = \"ABNT_C1\";\n KeyCode[KeyCode[\"ABNT_C2\"] = 116] = \"ABNT_C2\";\n KeyCode[KeyCode[\"AudioVolumeMute\"] = 117] = \"AudioVolumeMute\";\n KeyCode[KeyCode[\"AudioVolumeUp\"] = 118] = \"AudioVolumeUp\";\n KeyCode[KeyCode[\"AudioVolumeDown\"] = 119] = \"AudioVolumeDown\";\n KeyCode[KeyCode[\"BrowserSearch\"] = 120] = \"BrowserSearch\";\n KeyCode[KeyCode[\"BrowserHome\"] = 121] = \"BrowserHome\";\n KeyCode[KeyCode[\"BrowserBack\"] = 122] = \"BrowserBack\";\n KeyCode[KeyCode[\"BrowserForward\"] = 123] = \"BrowserForward\";\n KeyCode[KeyCode[\"MediaTrackNext\"] = 124] = \"MediaTrackNext\";\n KeyCode[KeyCode[\"MediaTrackPrevious\"] = 125] = \"MediaTrackPrevious\";\n KeyCode[KeyCode[\"MediaStop\"] = 126] = \"MediaStop\";\n KeyCode[KeyCode[\"MediaPlayPause\"] = 127] = \"MediaPlayPause\";\n KeyCode[KeyCode[\"LaunchMediaPlayer\"] = 128] = \"LaunchMediaPlayer\";\n KeyCode[KeyCode[\"LaunchMail\"] = 129] = \"LaunchMail\";\n KeyCode[KeyCode[\"LaunchApp2\"] = 130] = \"LaunchApp2\";\n /**\n * VK_CLEAR, 0x0C, CLEAR key\n */\n KeyCode[KeyCode[\"Clear\"] = 131] = \"Clear\";\n /**\n * Placed last to cover the length of the enum.\n * Please do not depend on this value!\n */\n KeyCode[KeyCode[\"MAX_VALUE\"] = 132] = \"MAX_VALUE\";\n})(KeyCode || (KeyCode = {}));\nvar MarkerSeverity;\n(function (MarkerSeverity) {\n MarkerSeverity[MarkerSeverity[\"Hint\"] = 1] = \"Hint\";\n MarkerSeverity[MarkerSeverity[\"Info\"] = 2] = \"Info\";\n MarkerSeverity[MarkerSeverity[\"Warning\"] = 4] = \"Warning\";\n MarkerSeverity[MarkerSeverity[\"Error\"] = 8] = \"Error\";\n})(MarkerSeverity || (MarkerSeverity = {}));\nvar MarkerTag;\n(function (MarkerTag) {\n MarkerTag[MarkerTag[\"Unnecessary\"] = 1] = \"Unnecessary\";\n MarkerTag[MarkerTag[\"Deprecated\"] = 2] = \"Deprecated\";\n})(MarkerTag || (MarkerTag = {}));\n/**\n * Position in the minimap to render the decoration.\n */\nvar MinimapPosition;\n(function (MinimapPosition) {\n MinimapPosition[MinimapPosition[\"Inline\"] = 1] = \"Inline\";\n MinimapPosition[MinimapPosition[\"Gutter\"] = 2] = \"Gutter\";\n})(MinimapPosition || (MinimapPosition = {}));\n/**\n * Type of hit element with the mouse in the editor.\n */\nvar MouseTargetType;\n(function (MouseTargetType) {\n /**\n * Mouse is on top of an unknown element.\n */\n MouseTargetType[MouseTargetType[\"UNKNOWN\"] = 0] = \"UNKNOWN\";\n /**\n * Mouse is on top of the textarea used for input.\n */\n MouseTargetType[MouseTargetType[\"TEXTAREA\"] = 1] = \"TEXTAREA\";\n /**\n * Mouse is on top of the glyph margin\n */\n MouseTargetType[MouseTargetType[\"GUTTER_GLYPH_MARGIN\"] = 2] = \"GUTTER_GLYPH_MARGIN\";\n /**\n * Mouse is on top of the line numbers\n */\n MouseTargetType[MouseTargetType[\"GUTTER_LINE_NUMBERS\"] = 3] = \"GUTTER_LINE_NUMBERS\";\n /**\n * Mouse is on top of the line decorations\n */\n MouseTargetType[MouseTargetType[\"GUTTER_LINE_DECORATIONS\"] = 4] = \"GUTTER_LINE_DECORATIONS\";\n /**\n * Mouse is on top of the whitespace left in the gutter by a view zone.\n */\n MouseTargetType[MouseTargetType[\"GUTTER_VIEW_ZONE\"] = 5] = \"GUTTER_VIEW_ZONE\";\n /**\n * Mouse is on top of text in the content.\n */\n MouseTargetType[MouseTargetType[\"CONTENT_TEXT\"] = 6] = \"CONTENT_TEXT\";\n /**\n * Mouse is on top of empty space in the content (e.g. after line text or below last line)\n */\n MouseTargetType[MouseTargetType[\"CONTENT_EMPTY\"] = 7] = \"CONTENT_EMPTY\";\n /**\n * Mouse is on top of a view zone in the content.\n */\n MouseTargetType[MouseTargetType[\"CONTENT_VIEW_ZONE\"] = 8] = \"CONTENT_VIEW_ZONE\";\n /**\n * Mouse is on top of a content widget.\n */\n MouseTargetType[MouseTargetType[\"CONTENT_WIDGET\"] = 9] = \"CONTENT_WIDGET\";\n /**\n * Mouse is on top of the decorations overview ruler.\n */\n MouseTargetType[MouseTargetType[\"OVERVIEW_RULER\"] = 10] = \"OVERVIEW_RULER\";\n /**\n * Mouse is on top of a scrollbar.\n */\n MouseTargetType[MouseTargetType[\"SCROLLBAR\"] = 11] = \"SCROLLBAR\";\n /**\n * Mouse is on top of an overlay widget.\n */\n MouseTargetType[MouseTargetType[\"OVERLAY_WIDGET\"] = 12] = \"OVERLAY_WIDGET\";\n /**\n * Mouse is outside of the editor.\n */\n MouseTargetType[MouseTargetType[\"OUTSIDE_EDITOR\"] = 13] = \"OUTSIDE_EDITOR\";\n})(MouseTargetType || (MouseTargetType = {}));\nvar NewSymbolNameTag;\n(function (NewSymbolNameTag) {\n NewSymbolNameTag[NewSymbolNameTag[\"AIGenerated\"] = 1] = \"AIGenerated\";\n})(NewSymbolNameTag || (NewSymbolNameTag = {}));\n/**\n * A positioning preference for rendering overlay widgets.\n */\nvar OverlayWidgetPositionPreference;\n(function (OverlayWidgetPositionPreference) {\n /**\n * Position the overlay widget in the top right corner\n */\n OverlayWidgetPositionPreference[OverlayWidgetPositionPreference[\"TOP_RIGHT_CORNER\"] = 0] = \"TOP_RIGHT_CORNER\";\n /**\n * Position the overlay widget in the bottom right corner\n */\n OverlayWidgetPositionPreference[OverlayWidgetPositionPreference[\"BOTTOM_RIGHT_CORNER\"] = 1] = \"BOTTOM_RIGHT_CORNER\";\n /**\n * Position the overlay widget in the top center\n */\n OverlayWidgetPositionPreference[OverlayWidgetPositionPreference[\"TOP_CENTER\"] = 2] = \"TOP_CENTER\";\n})(OverlayWidgetPositionPreference || (OverlayWidgetPositionPreference = {}));\n/**\n * Vertical Lane in the overview ruler of the editor.\n */\nvar OverviewRulerLane;\n(function (OverviewRulerLane) {\n OverviewRulerLane[OverviewRulerLane[\"Left\"] = 1] = \"Left\";\n OverviewRulerLane[OverviewRulerLane[\"Center\"] = 2] = \"Center\";\n OverviewRulerLane[OverviewRulerLane[\"Right\"] = 4] = \"Right\";\n OverviewRulerLane[OverviewRulerLane[\"Full\"] = 7] = \"Full\";\n})(OverviewRulerLane || (OverviewRulerLane = {}));\nvar PositionAffinity;\n(function (PositionAffinity) {\n /**\n * Prefers the left most position.\n */\n PositionAffinity[PositionAffinity[\"Left\"] = 0] = \"Left\";\n /**\n * Prefers the right most position.\n */\n PositionAffinity[PositionAffinity[\"Right\"] = 1] = \"Right\";\n /**\n * No preference.\n */\n PositionAffinity[PositionAffinity[\"None\"] = 2] = \"None\";\n /**\n * If the given position is on injected text, prefers the position left of it.\n */\n PositionAffinity[PositionAffinity[\"LeftOfInjectedText\"] = 3] = \"LeftOfInjectedText\";\n /**\n * If the given position is on injected text, prefers the position right of it.\n */\n PositionAffinity[PositionAffinity[\"RightOfInjectedText\"] = 4] = \"RightOfInjectedText\";\n})(PositionAffinity || (PositionAffinity = {}));\nvar RenderLineNumbersType;\n(function (RenderLineNumbersType) {\n RenderLineNumbersType[RenderLineNumbersType[\"Off\"] = 0] = \"Off\";\n RenderLineNumbersType[RenderLineNumbersType[\"On\"] = 1] = \"On\";\n RenderLineNumbersType[RenderLineNumbersType[\"Relative\"] = 2] = \"Relative\";\n RenderLineNumbersType[RenderLineNumbersType[\"Interval\"] = 3] = \"Interval\";\n RenderLineNumbersType[RenderLineNumbersType[\"Custom\"] = 4] = \"Custom\";\n})(RenderLineNumbersType || (RenderLineNumbersType = {}));\nvar RenderMinimap;\n(function (RenderMinimap) {\n RenderMinimap[RenderMinimap[\"None\"] = 0] = \"None\";\n RenderMinimap[RenderMinimap[\"Text\"] = 1] = \"Text\";\n RenderMinimap[RenderMinimap[\"Blocks\"] = 2] = \"Blocks\";\n})(RenderMinimap || (RenderMinimap = {}));\nvar ScrollType;\n(function (ScrollType) {\n ScrollType[ScrollType[\"Smooth\"] = 0] = \"Smooth\";\n ScrollType[ScrollType[\"Immediate\"] = 1] = \"Immediate\";\n})(ScrollType || (ScrollType = {}));\nvar ScrollbarVisibility;\n(function (ScrollbarVisibility) {\n ScrollbarVisibility[ScrollbarVisibility[\"Auto\"] = 1] = \"Auto\";\n ScrollbarVisibility[ScrollbarVisibility[\"Hidden\"] = 2] = \"Hidden\";\n ScrollbarVisibility[ScrollbarVisibility[\"Visible\"] = 3] = \"Visible\";\n})(ScrollbarVisibility || (ScrollbarVisibility = {}));\n/**\n * The direction of a selection.\n */\nvar SelectionDirection;\n(function (SelectionDirection) {\n /**\n * The selection starts above where it ends.\n */\n SelectionDirection[SelectionDirection[\"LTR\"] = 0] = \"LTR\";\n /**\n * The selection starts below where it ends.\n */\n SelectionDirection[SelectionDirection[\"RTL\"] = 1] = \"RTL\";\n})(SelectionDirection || (SelectionDirection = {}));\nvar ShowLightbulbIconMode;\n(function (ShowLightbulbIconMode) {\n ShowLightbulbIconMode[\"Off\"] = \"off\";\n ShowLightbulbIconMode[\"OnCode\"] = \"onCode\";\n ShowLightbulbIconMode[\"On\"] = \"on\";\n})(ShowLightbulbIconMode || (ShowLightbulbIconMode = {}));\nvar SignatureHelpTriggerKind;\n(function (SignatureHelpTriggerKind) {\n SignatureHelpTriggerKind[SignatureHelpTriggerKind[\"Invoke\"] = 1] = \"Invoke\";\n SignatureHelpTriggerKind[SignatureHelpTriggerKind[\"TriggerCharacter\"] = 2] = \"TriggerCharacter\";\n SignatureHelpTriggerKind[SignatureHelpTriggerKind[\"ContentChange\"] = 3] = \"ContentChange\";\n})(SignatureHelpTriggerKind || (SignatureHelpTriggerKind = {}));\n/**\n * A symbol kind.\n */\nvar SymbolKind;\n(function (SymbolKind) {\n SymbolKind[SymbolKind[\"File\"] = 0] = \"File\";\n SymbolKind[SymbolKind[\"Module\"] = 1] = \"Module\";\n SymbolKind[SymbolKind[\"Namespace\"] = 2] = \"Namespace\";\n SymbolKind[SymbolKind[\"Package\"] = 3] = \"Package\";\n SymbolKind[SymbolKind[\"Class\"] = 4] = \"Class\";\n SymbolKind[SymbolKind[\"Method\"] = 5] = \"Method\";\n SymbolKind[SymbolKind[\"Property\"] = 6] = \"Property\";\n SymbolKind[SymbolKind[\"Field\"] = 7] = \"Field\";\n SymbolKind[SymbolKind[\"Constructor\"] = 8] = \"Constructor\";\n SymbolKind[SymbolKind[\"Enum\"] = 9] = \"Enum\";\n SymbolKind[SymbolKind[\"Interface\"] = 10] = \"Interface\";\n SymbolKind[SymbolKind[\"Function\"] = 11] = \"Function\";\n SymbolKind[SymbolKind[\"Variable\"] = 12] = \"Variable\";\n SymbolKind[SymbolKind[\"Constant\"] = 13] = \"Constant\";\n SymbolKind[SymbolKind[\"String\"] = 14] = \"String\";\n SymbolKind[SymbolKind[\"Number\"] = 15] = \"Number\";\n SymbolKind[SymbolKind[\"Boolean\"] = 16] = \"Boolean\";\n SymbolKind[SymbolKind[\"Array\"] = 17] = \"Array\";\n SymbolKind[SymbolKind[\"Object\"] = 18] = \"Object\";\n SymbolKind[SymbolKind[\"Key\"] = 19] = \"Key\";\n SymbolKind[SymbolKind[\"Null\"] = 20] = \"Null\";\n SymbolKind[SymbolKind[\"EnumMember\"] = 21] = \"EnumMember\";\n SymbolKind[SymbolKind[\"Struct\"] = 22] = \"Struct\";\n SymbolKind[SymbolKind[\"Event\"] = 23] = \"Event\";\n SymbolKind[SymbolKind[\"Operator\"] = 24] = \"Operator\";\n SymbolKind[SymbolKind[\"TypeParameter\"] = 25] = \"TypeParameter\";\n})(SymbolKind || (SymbolKind = {}));\nvar SymbolTag;\n(function (SymbolTag) {\n SymbolTag[SymbolTag[\"Deprecated\"] = 1] = \"Deprecated\";\n})(SymbolTag || (SymbolTag = {}));\n/**\n * The kind of animation in which the editor's cursor should be rendered.\n */\nvar TextEditorCursorBlinkingStyle;\n(function (TextEditorCursorBlinkingStyle) {\n /**\n * Hidden\n */\n TextEditorCursorBlinkingStyle[TextEditorCursorBlinkingStyle[\"Hidden\"] = 0] = \"Hidden\";\n /**\n * Blinking\n */\n TextEditorCursorBlinkingStyle[TextEditorCursorBlinkingStyle[\"Blink\"] = 1] = \"Blink\";\n /**\n * Blinking with smooth fading\n */\n TextEditorCursorBlinkingStyle[TextEditorCursorBlinkingStyle[\"Smooth\"] = 2] = \"Smooth\";\n /**\n * Blinking with prolonged filled state and smooth fading\n */\n TextEditorCursorBlinkingStyle[TextEditorCursorBlinkingStyle[\"Phase\"] = 3] = \"Phase\";\n /**\n * Expand collapse animation on the y axis\n */\n TextEditorCursorBlinkingStyle[TextEditorCursorBlinkingStyle[\"Expand\"] = 4] = \"Expand\";\n /**\n * No-Blinking\n */\n TextEditorCursorBlinkingStyle[TextEditorCursorBlinkingStyle[\"Solid\"] = 5] = \"Solid\";\n})(TextEditorCursorBlinkingStyle || (TextEditorCursorBlinkingStyle = {}));\n/**\n * The style in which the editor's cursor should be rendered.\n */\nvar TextEditorCursorStyle;\n(function (TextEditorCursorStyle) {\n /**\n * As a vertical line (sitting between two characters).\n */\n TextEditorCursorStyle[TextEditorCursorStyle[\"Line\"] = 1] = \"Line\";\n /**\n * As a block (sitting on top of a character).\n */\n TextEditorCursorStyle[TextEditorCursorStyle[\"Block\"] = 2] = \"Block\";\n /**\n * As a horizontal line (sitting under a character).\n */\n TextEditorCursorStyle[TextEditorCursorStyle[\"Underline\"] = 3] = \"Underline\";\n /**\n * As a thin vertical line (sitting between two characters).\n */\n TextEditorCursorStyle[TextEditorCursorStyle[\"LineThin\"] = 4] = \"LineThin\";\n /**\n * As an outlined block (sitting on top of a character).\n */\n TextEditorCursorStyle[TextEditorCursorStyle[\"BlockOutline\"] = 5] = \"BlockOutline\";\n /**\n * As a thin horizontal line (sitting under a character).\n */\n TextEditorCursorStyle[TextEditorCursorStyle[\"UnderlineThin\"] = 6] = \"UnderlineThin\";\n})(TextEditorCursorStyle || (TextEditorCursorStyle = {}));\n/**\n * Describes the behavior of decorations when typing/editing near their edges.\n * Note: Please do not edit the values, as they very carefully match `DecorationRangeBehavior`\n */\nvar TrackedRangeStickiness;\n(function (TrackedRangeStickiness) {\n TrackedRangeStickiness[TrackedRangeStickiness[\"AlwaysGrowsWhenTypingAtEdges\"] = 0] = \"AlwaysGrowsWhenTypingAtEdges\";\n TrackedRangeStickiness[TrackedRangeStickiness[\"NeverGrowsWhenTypingAtEdges\"] = 1] = \"NeverGrowsWhenTypingAtEdges\";\n TrackedRangeStickiness[TrackedRangeStickiness[\"GrowsOnlyWhenTypingBefore\"] = 2] = \"GrowsOnlyWhenTypingBefore\";\n TrackedRangeStickiness[TrackedRangeStickiness[\"GrowsOnlyWhenTypingAfter\"] = 3] = \"GrowsOnlyWhenTypingAfter\";\n})(TrackedRangeStickiness || (TrackedRangeStickiness = {}));\n/**\n * Describes how to indent wrapped lines.\n */\nvar WrappingIndent;\n(function (WrappingIndent) {\n /**\n * No indentation => wrapped lines begin at column 1.\n */\n WrappingIndent[WrappingIndent[\"None\"] = 0] = \"None\";\n /**\n * Same => wrapped lines get the same indentation as the parent.\n */\n WrappingIndent[WrappingIndent[\"Same\"] = 1] = \"Same\";\n /**\n * Indent => wrapped lines get +1 indentation toward the parent.\n */\n WrappingIndent[WrappingIndent[\"Indent\"] = 2] = \"Indent\";\n /**\n * DeepIndent => wrapped lines get +2 indentation toward the parent.\n */\n WrappingIndent[WrappingIndent[\"DeepIndent\"] = 3] = \"DeepIndent\";\n})(WrappingIndent || (WrappingIndent = {}));\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/common/standalone/standaloneEnums.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/common/standaloneStrings.js":
/*!******************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/common/standaloneStrings.js ***!
\******************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ GoToLineNLS: () => (/* binding */ GoToLineNLS),\n/* harmony export */ InspectTokensNLS: () => (/* binding */ InspectTokensNLS),\n/* harmony export */ QuickCommandNLS: () => (/* binding */ QuickCommandNLS),\n/* harmony export */ QuickHelpNLS: () => (/* binding */ QuickHelpNLS),\n/* harmony export */ QuickOutlineNLS: () => (/* binding */ QuickOutlineNLS),\n/* harmony export */ StandaloneCodeEditorNLS: () => (/* binding */ StandaloneCodeEditorNLS),\n/* harmony export */ StandaloneServicesNLS: () => (/* binding */ StandaloneServicesNLS),\n/* harmony export */ ToggleHighContrastNLS: () => (/* binding */ ToggleHighContrastNLS)\n/* harmony export */ });\n/* harmony import */ var _nls_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../nls.js */ \"./node_modules/monaco-editor/esm/vs/nls.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\nvar InspectTokensNLS;\n(function (InspectTokensNLS) {\n InspectTokensNLS.inspectTokensAction = _nls_js__WEBPACK_IMPORTED_MODULE_0__.localize('inspectTokens', \"Developer: Inspect Tokens\");\n})(InspectTokensNLS || (InspectTokensNLS = {}));\nvar GoToLineNLS;\n(function (GoToLineNLS) {\n GoToLineNLS.gotoLineActionLabel = _nls_js__WEBPACK_IMPORTED_MODULE_0__.localize('gotoLineActionLabel', \"Go to Line/Column...\");\n})(GoToLineNLS || (GoToLineNLS = {}));\nvar QuickHelpNLS;\n(function (QuickHelpNLS) {\n QuickHelpNLS.helpQuickAccessActionLabel = _nls_js__WEBPACK_IMPORTED_MODULE_0__.localize('helpQuickAccess', \"Show all Quick Access Providers\");\n})(QuickHelpNLS || (QuickHelpNLS = {}));\nvar QuickCommandNLS;\n(function (QuickCommandNLS) {\n QuickCommandNLS.quickCommandActionLabel = _nls_js__WEBPACK_IMPORTED_MODULE_0__.localize('quickCommandActionLabel', \"Command Palette\");\n QuickCommandNLS.quickCommandHelp = _nls_js__WEBPACK_IMPORTED_MODULE_0__.localize('quickCommandActionHelp', \"Show And Run Commands\");\n})(QuickCommandNLS || (QuickCommandNLS = {}));\nvar QuickOutlineNLS;\n(function (QuickOutlineNLS) {\n QuickOutlineNLS.quickOutlineActionLabel = _nls_js__WEBPACK_IMPORTED_MODULE_0__.localize('quickOutlineActionLabel', \"Go to Symbol...\");\n QuickOutlineNLS.quickOutlineByCategoryActionLabel = _nls_js__WEBPACK_IMPORTED_MODULE_0__.localize('quickOutlineByCategoryActionLabel', \"Go to Symbol by Category...\");\n})(QuickOutlineNLS || (QuickOutlineNLS = {}));\nvar StandaloneCodeEditorNLS;\n(function (StandaloneCodeEditorNLS) {\n StandaloneCodeEditorNLS.editorViewAccessibleLabel = _nls_js__WEBPACK_IMPORTED_MODULE_0__.localize('editorViewAccessibleLabel', \"Editor content\");\n StandaloneCodeEditorNLS.accessibilityHelpMessage = _nls_js__WEBPACK_IMPORTED_MODULE_0__.localize('accessibilityHelpMessage', \"Press Alt+F1 for Accessibility Options.\");\n})(StandaloneCodeEditorNLS || (StandaloneCodeEditorNLS = {}));\nvar ToggleHighContrastNLS;\n(function (ToggleHighContrastNLS) {\n ToggleHighContrastNLS.toggleHighContrast = _nls_js__WEBPACK_IMPORTED_MODULE_0__.localize('toggleHighContrast', \"Toggle High Contrast Theme\");\n})(ToggleHighContrastNLS || (ToggleHighContrastNLS = {}));\nvar StandaloneServicesNLS;\n(function (StandaloneServicesNLS) {\n StandaloneServicesNLS.bulkEditServiceSummary = _nls_js__WEBPACK_IMPORTED_MODULE_0__.localize('bulkEditServiceSummary', \"Made {0} edits in {1} files\");\n})(StandaloneServicesNLS || (StandaloneServicesNLS = {}));\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/common/standaloneStrings.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/common/textModelBracketPairs.js":
/*!**********************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/common/textModelBracketPairs.js ***!
\**********************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ BracketInfo: () => (/* binding */ BracketInfo),\n/* harmony export */ BracketPairInfo: () => (/* binding */ BracketPairInfo),\n/* harmony export */ BracketPairWithMinIndentationInfo: () => (/* binding */ BracketPairWithMinIndentationInfo)\n/* harmony export */ });\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\nclass BracketInfo {\n constructor(range, \n /** 0-based level */\n nestingLevel, nestingLevelOfEqualBracketType, isInvalid) {\n this.range = range;\n this.nestingLevel = nestingLevel;\n this.nestingLevelOfEqualBracketType = nestingLevelOfEqualBracketType;\n this.isInvalid = isInvalid;\n }\n}\nclass BracketPairInfo {\n constructor(range, openingBracketRange, closingBracketRange, \n /** 0-based */\n nestingLevel, nestingLevelOfEqualBracketType, bracketPairNode) {\n this.range = range;\n this.openingBracketRange = openingBracketRange;\n this.closingBracketRange = closingBracketRange;\n this.nestingLevel = nestingLevel;\n this.nestingLevelOfEqualBracketType = nestingLevelOfEqualBracketType;\n this.bracketPairNode = bracketPairNode;\n }\n get openingBracketInfo() {\n return this.bracketPairNode.openingBracket.bracketInfo;\n }\n}\nclass BracketPairWithMinIndentationInfo extends BracketPairInfo {\n constructor(range, openingBracketRange, closingBracketRange, \n /**\n * 0-based\n */\n nestingLevel, nestingLevelOfEqualBracketType, bracketPairNode, \n /**\n * -1 if not requested, otherwise the size of the minimum indentation in the bracket pair in terms of visible columns.\n */\n minVisibleColumnIndentation) {\n super(range, openingBracketRange, closingBracketRange, nestingLevel, nestingLevelOfEqualBracketType, bracketPairNode);\n this.minVisibleColumnIndentation = minVisibleColumnIndentation;\n }\n}\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/common/textModelBracketPairs.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/common/textModelEvents.js":
/*!****************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/common/textModelEvents.js ***!
\****************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ InternalModelContentChangeEvent: () => (/* binding */ InternalModelContentChangeEvent),\n/* harmony export */ LineInjectedText: () => (/* binding */ LineInjectedText),\n/* harmony export */ ModelInjectedTextChangedEvent: () => (/* binding */ ModelInjectedTextChangedEvent),\n/* harmony export */ ModelRawContentChangedEvent: () => (/* binding */ ModelRawContentChangedEvent),\n/* harmony export */ ModelRawEOLChanged: () => (/* binding */ ModelRawEOLChanged),\n/* harmony export */ ModelRawFlush: () => (/* binding */ ModelRawFlush),\n/* harmony export */ ModelRawLineChanged: () => (/* binding */ ModelRawLineChanged),\n/* harmony export */ ModelRawLinesDeleted: () => (/* binding */ ModelRawLinesDeleted),\n/* harmony export */ ModelRawLinesInserted: () => (/* binding */ ModelRawLinesInserted)\n/* harmony export */ });\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n/**\n * An event describing that a model has been reset to a new value.\n * @internal\n */\nclass ModelRawFlush {\n constructor() {\n this.changeType = 1 /* RawContentChangedType.Flush */;\n }\n}\n/**\n * Represents text injected on a line\n * @internal\n */\nclass LineInjectedText {\n static applyInjectedText(lineText, injectedTexts) {\n if (!injectedTexts || injectedTexts.length === 0) {\n return lineText;\n }\n let result = '';\n let lastOriginalOffset = 0;\n for (const injectedText of injectedTexts) {\n result += lineText.substring(lastOriginalOffset, injectedText.column - 1);\n lastOriginalOffset = injectedText.column - 1;\n result += injectedText.options.content;\n }\n result += lineText.substring(lastOriginalOffset);\n return result;\n }\n static fromDecorations(decorations) {\n const result = [];\n for (const decoration of decorations) {\n if (decoration.options.before && decoration.options.before.content.length > 0) {\n result.push(new LineInjectedText(decoration.ownerId, decoration.range.startLineNumber, decoration.range.startColumn, decoration.options.before, 0));\n }\n if (decoration.options.after && decoration.options.after.content.length > 0) {\n result.push(new LineInjectedText(decoration.ownerId, decoration.range.endLineNumber, decoration.range.endColumn, decoration.options.after, 1));\n }\n }\n result.sort((a, b) => {\n if (a.lineNumber === b.lineNumber) {\n if (a.column === b.column) {\n return a.order - b.order;\n }\n return a.column - b.column;\n }\n return a.lineNumber - b.lineNumber;\n });\n return result;\n }\n constructor(ownerId, lineNumber, column, options, order) {\n this.ownerId = ownerId;\n this.lineNumber = lineNumber;\n this.column = column;\n this.options = options;\n this.order = order;\n }\n}\n/**\n * An event describing that a line has changed in a model.\n * @internal\n */\nclass ModelRawLineChanged {\n constructor(lineNumber, detail, injectedText) {\n this.changeType = 2 /* RawContentChangedType.LineChanged */;\n this.lineNumber = lineNumber;\n this.detail = detail;\n this.injectedText = injectedText;\n }\n}\n/**\n * An event describing that line(s) have been deleted in a model.\n * @internal\n */\nclass ModelRawLinesDeleted {\n constructor(fromLineNumber, toLineNumber) {\n this.changeType = 3 /* RawContentChangedType.LinesDeleted */;\n this.fromLineNumber = fromLineNumber;\n this.toLineNumber = toLineNumber;\n }\n}\n/**\n * An event describing that line(s) have been inserted in a model.\n * @internal\n */\nclass ModelRawLinesInserted {\n constructor(fromLineNumber, toLineNumber, detail, injectedTexts) {\n this.changeType = 4 /* RawContentChangedType.LinesInserted */;\n this.injectedTexts = injectedTexts;\n this.fromLineNumber = fromLineNumber;\n this.toLineNumber = toLineNumber;\n this.detail = detail;\n }\n}\n/**\n * An event describing that a model has had its EOL changed.\n * @internal\n */\nclass ModelRawEOLChanged {\n constructor() {\n this.changeType = 5 /* RawContentChangedType.EOLChanged */;\n }\n}\n/**\n * An event describing a change in the text of a model.\n * @internal\n */\nclass ModelRawContentChangedEvent {\n constructor(changes, versionId, isUndoing, isRedoing) {\n this.changes = changes;\n this.versionId = versionId;\n this.isUndoing = isUndoing;\n this.isRedoing = isRedoing;\n this.resultingSelection = null;\n }\n containsEvent(type) {\n for (let i = 0, len = this.changes.length; i < len; i++) {\n const change = this.changes[i];\n if (change.changeType === type) {\n return true;\n }\n }\n return false;\n }\n static merge(a, b) {\n const changes = [].concat(a.changes).concat(b.changes);\n const versionId = b.versionId;\n const isUndoing = (a.isUndoing || b.isUndoing);\n const isRedoing = (a.isRedoing || b.isRedoing);\n return new ModelRawContentChangedEvent(changes, versionId, isUndoing, isRedoing);\n }\n}\n/**\n * An event describing a change in injected text.\n * @internal\n */\nclass ModelInjectedTextChangedEvent {\n constructor(changes) {\n this.changes = changes;\n }\n}\n/**\n * @internal\n */\nclass InternalModelContentChangeEvent {\n constructor(rawContentChangedEvent, contentChangedEvent) {\n this.rawContentChangedEvent = rawContentChangedEvent;\n this.contentChangedEvent = contentChangedEvent;\n }\n merge(other) {\n const rawContentChangedEvent = ModelRawContentChangedEvent.merge(this.rawContentChangedEvent, other.rawContentChangedEvent);\n const contentChangedEvent = InternalModelContentChangeEvent._mergeChangeEvents(this.contentChangedEvent, other.contentChangedEvent);\n return new InternalModelContentChangeEvent(rawContentChangedEvent, contentChangedEvent);\n }\n static _mergeChangeEvents(a, b) {\n const changes = [].concat(a.changes).concat(b.changes);\n const eol = b.eol;\n const versionId = b.versionId;\n const isUndoing = (a.isUndoing || b.isUndoing);\n const isRedoing = (a.isRedoing || b.isRedoing);\n const isFlush = (a.isFlush || b.isFlush);\n const isEolChange = a.isEolChange && b.isEolChange; // both must be true to not confuse listeners who skip such edits\n return {\n changes: changes,\n eol: eol,\n isEolChange: isEolChange,\n versionId: versionId,\n isUndoing: isUndoing,\n isRedoing: isRedoing,\n isFlush: isFlush,\n };\n }\n}\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/common/textModelEvents.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/common/textModelGuides.js":
/*!****************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/common/textModelGuides.js ***!
\****************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ HorizontalGuidesState: () => (/* binding */ HorizontalGuidesState),\n/* harmony export */ IndentGuide: () => (/* binding */ IndentGuide),\n/* harmony export */ IndentGuideHorizontalLine: () => (/* binding */ IndentGuideHorizontalLine)\n/* harmony export */ });\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\nvar HorizontalGuidesState;\n(function (HorizontalGuidesState) {\n HorizontalGuidesState[HorizontalGuidesState[\"Disabled\"] = 0] = \"Disabled\";\n HorizontalGuidesState[HorizontalGuidesState[\"EnabledForActive\"] = 1] = \"EnabledForActive\";\n HorizontalGuidesState[HorizontalGuidesState[\"Enabled\"] = 2] = \"Enabled\";\n})(HorizontalGuidesState || (HorizontalGuidesState = {}));\nclass IndentGuide {\n constructor(visibleColumn, column, className, \n /**\n * If set, this indent guide is a horizontal guide (no vertical part).\n * It starts at visibleColumn and continues until endColumn.\n */\n horizontalLine, \n /**\n * If set (!= -1), only show this guide for wrapped lines that don't contain this model column, but are after it.\n */\n forWrappedLinesAfterColumn, forWrappedLinesBeforeOrAtColumn) {\n this.visibleColumn = visibleColumn;\n this.column = column;\n this.className = className;\n this.horizontalLine = horizontalLine;\n this.forWrappedLinesAfterColumn = forWrappedLinesAfterColumn;\n this.forWrappedLinesBeforeOrAtColumn = forWrappedLinesBeforeOrAtColumn;\n if ((visibleColumn !== -1) === (column !== -1)) {\n throw new Error();\n }\n }\n}\nclass IndentGuideHorizontalLine {\n constructor(top, endColumn) {\n this.top = top;\n this.endColumn = endColumn;\n }\n}\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/common/textModelGuides.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/common/tokenizationRegistry.js":
/*!*********************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/common/tokenizationRegistry.js ***!
\*********************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ TokenizationRegistry: () => (/* binding */ TokenizationRegistry)\n/* harmony export */ });\n/* harmony import */ var _base_common_event_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../base/common/event.js */ \"./node_modules/monaco-editor/esm/vs/base/common/event.js\");\n/* harmony import */ var _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../base/common/lifecycle.js */ \"./node_modules/monaco-editor/esm/vs/base/common/lifecycle.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n\nclass TokenizationRegistry {\n constructor() {\n this._tokenizationSupports = new Map();\n this._factories = new Map();\n this._onDidChange = new _base_common_event_js__WEBPACK_IMPORTED_MODULE_0__.Emitter();\n this.onDidChange = this._onDidChange.event;\n this._colorMap = null;\n }\n handleChange(languageIds) {\n this._onDidChange.fire({\n changedLanguages: languageIds,\n changedColorMap: false\n });\n }\n register(languageId, support) {\n this._tokenizationSupports.set(languageId, support);\n this.handleChange([languageId]);\n return (0,_base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_1__.toDisposable)(() => {\n if (this._tokenizationSupports.get(languageId) !== support) {\n return;\n }\n this._tokenizationSupports.delete(languageId);\n this.handleChange([languageId]);\n });\n }\n get(languageId) {\n return this._tokenizationSupports.get(languageId) || null;\n }\n registerFactory(languageId, factory) {\n var _a;\n (_a = this._factories.get(languageId)) === null || _a === void 0 ? void 0 : _a.dispose();\n const myData = new TokenizationSupportFactoryData(this, languageId, factory);\n this._factories.set(languageId, myData);\n return (0,_base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_1__.toDisposable)(() => {\n const v = this._factories.get(languageId);\n if (!v || v !== myData) {\n return;\n }\n this._factories.delete(languageId);\n v.dispose();\n });\n }\n async getOrCreate(languageId) {\n // check first if the support is already set\n const tokenizationSupport = this.get(languageId);\n if (tokenizationSupport) {\n return tokenizationSupport;\n }\n const factory = this._factories.get(languageId);\n if (!factory || factory.isResolved) {\n // no factory or factory.resolve already finished\n return null;\n }\n await factory.resolve();\n return this.get(languageId);\n }\n isResolved(languageId) {\n const tokenizationSupport = this.get(languageId);\n if (tokenizationSupport) {\n return true;\n }\n const factory = this._factories.get(languageId);\n if (!factory || factory.isResolved) {\n return true;\n }\n return false;\n }\n setColorMap(colorMap) {\n this._colorMap = colorMap;\n this._onDidChange.fire({\n changedLanguages: Array.from(this._tokenizationSupports.keys()),\n changedColorMap: true\n });\n }\n getColorMap() {\n return this._colorMap;\n }\n getDefaultBackground() {\n if (this._colorMap && this._colorMap.length > 2 /* ColorId.DefaultBackground */) {\n return this._colorMap[2 /* ColorId.DefaultBackground */];\n }\n return null;\n }\n}\nclass TokenizationSupportFactoryData extends _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_1__.Disposable {\n get isResolved() {\n return this._isResolved;\n }\n constructor(_registry, _languageId, _factory) {\n super();\n this._registry = _registry;\n this._languageId = _languageId;\n this._factory = _factory;\n this._isDisposed = false;\n this._resolvePromise = null;\n this._isResolved = false;\n }\n dispose() {\n this._isDisposed = true;\n super.dispose();\n }\n async resolve() {\n if (!this._resolvePromise) {\n this._resolvePromise = this._create();\n }\n return this._resolvePromise;\n }\n async _create() {\n const value = await this._factory.tokenizationSupport;\n this._isResolved = true;\n if (value && !this._isDisposed) {\n this._register(this._registry.register(this._languageId, value));\n }\n }\n}\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/common/tokenizationRegistry.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/common/tokens/contiguousMultilineTokens.js":
/*!*********************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/common/tokens/contiguousMultilineTokens.js ***!
\*********************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ ContiguousMultilineTokens: () => (/* binding */ ContiguousMultilineTokens)\n/* harmony export */ });\n/**\n * Represents contiguous tokens over a contiguous range of lines.\n */\nclass ContiguousMultilineTokens {\n /**\n * (Inclusive) start line number for these tokens.\n */\n get startLineNumber() {\n return this._startLineNumber;\n }\n /**\n * (Inclusive) end line number for these tokens.\n */\n get endLineNumber() {\n return this._startLineNumber + this._tokens.length - 1;\n }\n constructor(startLineNumber, tokens) {\n this._startLineNumber = startLineNumber;\n this._tokens = tokens;\n }\n /**\n * @see {@link _tokens}\n */\n getLineTokens(lineNumber) {\n return this._tokens[lineNumber - this._startLineNumber];\n }\n appendLineTokens(lineTokens) {\n this._tokens.push(lineTokens);\n }\n}\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/common/tokens/contiguousMultilineTokens.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/common/tokens/contiguousMultilineTokensBuilder.js":
/*!****************************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/common/tokens/contiguousMultilineTokensBuilder.js ***!
\****************************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ ContiguousMultilineTokensBuilder: () => (/* binding */ ContiguousMultilineTokensBuilder)\n/* harmony export */ });\n/* harmony import */ var _contiguousMultilineTokens_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./contiguousMultilineTokens.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/tokens/contiguousMultilineTokens.js\");\n\nclass ContiguousMultilineTokensBuilder {\n constructor() {\n this._tokens = [];\n }\n add(lineNumber, lineTokens) {\n if (this._tokens.length > 0) {\n const last = this._tokens[this._tokens.length - 1];\n if (last.endLineNumber + 1 === lineNumber) {\n // append\n last.appendLineTokens(lineTokens);\n return;\n }\n }\n this._tokens.push(new _contiguousMultilineTokens_js__WEBPACK_IMPORTED_MODULE_0__.ContiguousMultilineTokens(lineNumber, [lineTokens]));\n }\n finalize() {\n return this._tokens;\n }\n}\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/common/tokens/contiguousMultilineTokensBuilder.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/common/tokens/contiguousTokensEditing.js":
/*!*******************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/common/tokens/contiguousTokensEditing.js ***!
\*******************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ ContiguousTokensEditing: () => (/* binding */ ContiguousTokensEditing),\n/* harmony export */ EMPTY_LINE_TOKENS: () => (/* binding */ EMPTY_LINE_TOKENS),\n/* harmony export */ toUint32Array: () => (/* binding */ toUint32Array)\n/* harmony export */ });\n/* harmony import */ var _lineTokens_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./lineTokens.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/tokens/lineTokens.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\nconst EMPTY_LINE_TOKENS = (new Uint32Array(0)).buffer;\nclass ContiguousTokensEditing {\n static deleteBeginning(lineTokens, toChIndex) {\n if (lineTokens === null || lineTokens === EMPTY_LINE_TOKENS) {\n return lineTokens;\n }\n return ContiguousTokensEditing.delete(lineTokens, 0, toChIndex);\n }\n static deleteEnding(lineTokens, fromChIndex) {\n if (lineTokens === null || lineTokens === EMPTY_LINE_TOKENS) {\n return lineTokens;\n }\n const tokens = toUint32Array(lineTokens);\n const lineTextLength = tokens[tokens.length - 2];\n return ContiguousTokensEditing.delete(lineTokens, fromChIndex, lineTextLength);\n }\n static delete(lineTokens, fromChIndex, toChIndex) {\n if (lineTokens === null || lineTokens === EMPTY_LINE_TOKENS || fromChIndex === toChIndex) {\n return lineTokens;\n }\n const tokens = toUint32Array(lineTokens);\n const tokensCount = (tokens.length >>> 1);\n // special case: deleting everything\n if (fromChIndex === 0 && tokens[tokens.length - 2] === toChIndex) {\n return EMPTY_LINE_TOKENS;\n }\n const fromTokenIndex = _lineTokens_js__WEBPACK_IMPORTED_MODULE_0__.LineTokens.findIndexInTokensArray(tokens, fromChIndex);\n const fromTokenStartOffset = (fromTokenIndex > 0 ? tokens[(fromTokenIndex - 1) << 1] : 0);\n const fromTokenEndOffset = tokens[fromTokenIndex << 1];\n if (toChIndex < fromTokenEndOffset) {\n // the delete range is inside a single token\n const delta = (toChIndex - fromChIndex);\n for (let i = fromTokenIndex; i < tokensCount; i++) {\n tokens[i << 1] -= delta;\n }\n return lineTokens;\n }\n let dest;\n let lastEnd;\n if (fromTokenStartOffset !== fromChIndex) {\n tokens[fromTokenIndex << 1] = fromChIndex;\n dest = ((fromTokenIndex + 1) << 1);\n lastEnd = fromChIndex;\n }\n else {\n dest = (fromTokenIndex << 1);\n lastEnd = fromTokenStartOffset;\n }\n const delta = (toChIndex - fromChIndex);\n for (let tokenIndex = fromTokenIndex + 1; tokenIndex < tokensCount; tokenIndex++) {\n const tokenEndOffset = tokens[tokenIndex << 1] - delta;\n if (tokenEndOffset > lastEnd) {\n tokens[dest++] = tokenEndOffset;\n tokens[dest++] = tokens[(tokenIndex << 1) + 1];\n lastEnd = tokenEndOffset;\n }\n }\n if (dest === tokens.length) {\n // nothing to trim\n return lineTokens;\n }\n const tmp = new Uint32Array(dest);\n tmp.set(tokens.subarray(0, dest), 0);\n return tmp.buffer;\n }\n static append(lineTokens, _otherTokens) {\n if (_otherTokens === EMPTY_LINE_TOKENS) {\n return lineTokens;\n }\n if (lineTokens === EMPTY_LINE_TOKENS) {\n return _otherTokens;\n }\n if (lineTokens === null) {\n return lineTokens;\n }\n if (_otherTokens === null) {\n // cannot determine combined line length...\n return null;\n }\n const myTokens = toUint32Array(lineTokens);\n const otherTokens = toUint32Array(_otherTokens);\n const otherTokensCount = (otherTokens.length >>> 1);\n const result = new Uint32Array(myTokens.length + otherTokens.length);\n result.set(myTokens, 0);\n let dest = myTokens.length;\n const delta = myTokens[myTokens.length - 2];\n for (let i = 0; i < otherTokensCount; i++) {\n result[dest++] = otherTokens[(i << 1)] + delta;\n result[dest++] = otherTokens[(i << 1) + 1];\n }\n return result.buffer;\n }\n static insert(lineTokens, chIndex, textLength) {\n if (lineTokens === null || lineTokens === EMPTY_LINE_TOKENS) {\n // nothing to do\n return lineTokens;\n }\n const tokens = toUint32Array(lineTokens);\n const tokensCount = (tokens.length >>> 1);\n let fromTokenIndex = _lineTokens_js__WEBPACK_IMPORTED_MODULE_0__.LineTokens.findIndexInTokensArray(tokens, chIndex);\n if (fromTokenIndex > 0) {\n const fromTokenStartOffset = tokens[(fromTokenIndex - 1) << 1];\n if (fromTokenStartOffset === chIndex) {\n fromTokenIndex--;\n }\n }\n for (let tokenIndex = fromTokenIndex; tokenIndex < tokensCount; tokenIndex++) {\n tokens[tokenIndex << 1] += textLength;\n }\n return lineTokens;\n }\n}\nfunction toUint32Array(arr) {\n if (arr instanceof Uint32Array) {\n return arr;\n }\n else {\n return new Uint32Array(arr);\n }\n}\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/common/tokens/contiguousTokensEditing.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/common/tokens/contiguousTokensStore.js":
/*!*****************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/common/tokens/contiguousTokensStore.js ***!
\*****************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ ContiguousTokensStore: () => (/* binding */ ContiguousTokensStore)\n/* harmony export */ });\n/* harmony import */ var _base_common_arrays_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../base/common/arrays.js */ \"./node_modules/monaco-editor/esm/vs/base/common/arrays.js\");\n/* harmony import */ var _core_position_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../core/position.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/core/position.js\");\n/* harmony import */ var _contiguousTokensEditing_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./contiguousTokensEditing.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/tokens/contiguousTokensEditing.js\");\n/* harmony import */ var _lineTokens_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./lineTokens.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/tokens/lineTokens.js\");\n/* harmony import */ var _encodedTokenAttributes_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../encodedTokenAttributes.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/encodedTokenAttributes.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n\n\n\n\n/**\n * Represents contiguous tokens in a text model.\n */\nclass ContiguousTokensStore {\n constructor(languageIdCodec) {\n this._lineTokens = [];\n this._len = 0;\n this._languageIdCodec = languageIdCodec;\n }\n flush() {\n this._lineTokens = [];\n this._len = 0;\n }\n get hasTokens() {\n return this._lineTokens.length > 0;\n }\n getTokens(topLevelLanguageId, lineIndex, lineText) {\n let rawLineTokens = null;\n if (lineIndex < this._len) {\n rawLineTokens = this._lineTokens[lineIndex];\n }\n if (rawLineTokens !== null && rawLineTokens !== _contiguousTokensEditing_js__WEBPACK_IMPORTED_MODULE_2__.EMPTY_LINE_TOKENS) {\n return new _lineTokens_js__WEBPACK_IMPORTED_MODULE_3__.LineTokens((0,_contiguousTokensEditing_js__WEBPACK_IMPORTED_MODULE_2__.toUint32Array)(rawLineTokens), lineText, this._languageIdCodec);\n }\n const lineTokens = new Uint32Array(2);\n lineTokens[0] = lineText.length;\n lineTokens[1] = getDefaultMetadata(this._languageIdCodec.encodeLanguageId(topLevelLanguageId));\n return new _lineTokens_js__WEBPACK_IMPORTED_MODULE_3__.LineTokens(lineTokens, lineText, this._languageIdCodec);\n }\n static _massageTokens(topLevelLanguageId, lineTextLength, _tokens) {\n const tokens = _tokens ? (0,_contiguousTokensEditing_js__WEBPACK_IMPORTED_MODULE_2__.toUint32Array)(_tokens) : null;\n if (lineTextLength === 0) {\n let hasDifferentLanguageId = false;\n if (tokens && tokens.length > 1) {\n hasDifferentLanguageId = (_encodedTokenAttributes_js__WEBPACK_IMPORTED_MODULE_4__.TokenMetadata.getLanguageId(tokens[1]) !== topLevelLanguageId);\n }\n if (!hasDifferentLanguageId) {\n return _contiguousTokensEditing_js__WEBPACK_IMPORTED_MODULE_2__.EMPTY_LINE_TOKENS;\n }\n }\n if (!tokens || tokens.length === 0) {\n const tokens = new Uint32Array(2);\n tokens[0] = lineTextLength;\n tokens[1] = getDefaultMetadata(topLevelLanguageId);\n return tokens.buffer;\n }\n // Ensure the last token covers the end of the text\n tokens[tokens.length - 2] = lineTextLength;\n if (tokens.byteOffset === 0 && tokens.byteLength === tokens.buffer.byteLength) {\n // Store directly the ArrayBuffer pointer to save an object\n return tokens.buffer;\n }\n return tokens;\n }\n _ensureLine(lineIndex) {\n while (lineIndex >= this._len) {\n this._lineTokens[this._len] = null;\n this._len++;\n }\n }\n _deleteLines(start, deleteCount) {\n if (deleteCount === 0) {\n return;\n }\n if (start + deleteCount > this._len) {\n deleteCount = this._len - start;\n }\n this._lineTokens.splice(start, deleteCount);\n this._len -= deleteCount;\n }\n _insertLines(insertIndex, insertCount) {\n if (insertCount === 0) {\n return;\n }\n const lineTokens = [];\n for (let i = 0; i < insertCount; i++) {\n lineTokens[i] = null;\n }\n this._lineTokens = _base_common_arrays_js__WEBPACK_IMPORTED_MODULE_0__.arrayInsert(this._lineTokens, insertIndex, lineTokens);\n this._len += insertCount;\n }\n setTokens(topLevelLanguageId, lineIndex, lineTextLength, _tokens, checkEquality) {\n const tokens = ContiguousTokensStore._massageTokens(this._languageIdCodec.encodeLanguageId(topLevelLanguageId), lineTextLength, _tokens);\n this._ensureLine(lineIndex);\n const oldTokens = this._lineTokens[lineIndex];\n this._lineTokens[lineIndex] = tokens;\n if (checkEquality) {\n return !ContiguousTokensStore._equals(oldTokens, tokens);\n }\n return false;\n }\n static _equals(_a, _b) {\n if (!_a || !_b) {\n return !_a && !_b;\n }\n const a = (0,_contiguousTokensEditing_js__WEBPACK_IMPORTED_MODULE_2__.toUint32Array)(_a);\n const b = (0,_contiguousTokensEditing_js__WEBPACK_IMPORTED_MODULE_2__.toUint32Array)(_b);\n if (a.length !== b.length) {\n return false;\n }\n for (let i = 0, len = a.length; i < len; i++) {\n if (a[i] !== b[i]) {\n return false;\n }\n }\n return true;\n }\n //#region Editing\n acceptEdit(range, eolCount, firstLineLength) {\n this._acceptDeleteRange(range);\n this._acceptInsertText(new _core_position_js__WEBPACK_IMPORTED_MODULE_1__.Position(range.startLineNumber, range.startColumn), eolCount, firstLineLength);\n }\n _acceptDeleteRange(range) {\n const firstLineIndex = range.startLineNumber - 1;\n if (firstLineIndex >= this._len) {\n return;\n }\n if (range.startLineNumber === range.endLineNumber) {\n if (range.startColumn === range.endColumn) {\n // Nothing to delete\n return;\n }\n this._lineTokens[firstLineIndex] = _contiguousTokensEditing_js__WEBPACK_IMPORTED_MODULE_2__.ContiguousTokensEditing.delete(this._lineTokens[firstLineIndex], range.startColumn - 1, range.endColumn - 1);\n return;\n }\n this._lineTokens[firstLineIndex] = _contiguousTokensEditing_js__WEBPACK_IMPORTED_MODULE_2__.ContiguousTokensEditing.deleteEnding(this._lineTokens[firstLineIndex], range.startColumn - 1);\n const lastLineIndex = range.endLineNumber - 1;\n let lastLineTokens = null;\n if (lastLineIndex < this._len) {\n lastLineTokens = _contiguousTokensEditing_js__WEBPACK_IMPORTED_MODULE_2__.ContiguousTokensEditing.deleteBeginning(this._lineTokens[lastLineIndex], range.endColumn - 1);\n }\n // Take remaining text on last line and append it to remaining text on first line\n this._lineTokens[firstLineIndex] = _contiguousTokensEditing_js__WEBPACK_IMPORTED_MODULE_2__.ContiguousTokensEditing.append(this._lineTokens[firstLineIndex], lastLineTokens);\n // Delete middle lines\n this._deleteLines(range.startLineNumber, range.endLineNumber - range.startLineNumber);\n }\n _acceptInsertText(position, eolCount, firstLineLength) {\n if (eolCount === 0 && firstLineLength === 0) {\n // Nothing to insert\n return;\n }\n const lineIndex = position.lineNumber - 1;\n if (lineIndex >= this._len) {\n return;\n }\n if (eolCount === 0) {\n // Inserting text on one line\n this._lineTokens[lineIndex] = _contiguousTokensEditing_js__WEBPACK_IMPORTED_MODULE_2__.ContiguousTokensEditing.insert(this._lineTokens[lineIndex], position.column - 1, firstLineLength);\n return;\n }\n this._lineTokens[lineIndex] = _contiguousTokensEditing_js__WEBPACK_IMPORTED_MODULE_2__.ContiguousTokensEditing.deleteEnding(this._lineTokens[lineIndex], position.column - 1);\n this._lineTokens[lineIndex] = _contiguousTokensEditing_js__WEBPACK_IMPORTED_MODULE_2__.ContiguousTokensEditing.insert(this._lineTokens[lineIndex], position.column - 1, firstLineLength);\n this._insertLines(position.lineNumber, eolCount);\n }\n //#endregion\n setMultilineTokens(tokens, textModel) {\n if (tokens.length === 0) {\n return { changes: [] };\n }\n const ranges = [];\n for (let i = 0, len = tokens.length; i < len; i++) {\n const element = tokens[i];\n let minChangedLineNumber = 0;\n let maxChangedLineNumber = 0;\n let hasChange = false;\n for (let lineNumber = element.startLineNumber; lineNumber <= element.endLineNumber; lineNumber++) {\n if (hasChange) {\n this.setTokens(textModel.getLanguageId(), lineNumber - 1, textModel.getLineLength(lineNumber), element.getLineTokens(lineNumber), false);\n maxChangedLineNumber = lineNumber;\n }\n else {\n const lineHasChange = this.setTokens(textModel.getLanguageId(), lineNumber - 1, textModel.getLineLength(lineNumber), element.getLineTokens(lineNumber), true);\n if (lineHasChange) {\n hasChange = true;\n minChangedLineNumber = lineNumber;\n maxChangedLineNumber = lineNumber;\n }\n }\n }\n if (hasChange) {\n ranges.push({ fromLineNumber: minChangedLineNumber, toLineNumber: maxChangedLineNumber, });\n }\n }\n return { changes: ranges };\n }\n}\nfunction getDefaultMetadata(topLevelLanguageId) {\n return ((topLevelLanguageId << 0 /* MetadataConsts.LANGUAGEID_OFFSET */)\n | (0 /* StandardTokenType.Other */ << 8 /* MetadataConsts.TOKEN_TYPE_OFFSET */)\n | (0 /* FontStyle.None */ << 11 /* MetadataConsts.FONT_STYLE_OFFSET */)\n | (1 /* ColorId.DefaultForeground */ << 15 /* MetadataConsts.FOREGROUND_OFFSET */)\n | (2 /* ColorId.DefaultBackground */ << 24 /* MetadataConsts.BACKGROUND_OFFSET */)\n // If there is no grammar, we just take a guess and try to match brackets.\n | (1024 /* MetadataConsts.BALANCED_BRACKETS_MASK */)) >>> 0;\n}\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/common/tokens/contiguousTokensStore.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/common/tokens/lineTokens.js":
/*!******************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/common/tokens/lineTokens.js ***!
\******************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ LineTokens: () => (/* binding */ LineTokens)\n/* harmony export */ });\n/* harmony import */ var _encodedTokenAttributes_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../encodedTokenAttributes.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/encodedTokenAttributes.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\nclass LineTokens {\n static createEmpty(lineContent, decoder) {\n const defaultMetadata = LineTokens.defaultTokenMetadata;\n const tokens = new Uint32Array(2);\n tokens[0] = lineContent.length;\n tokens[1] = defaultMetadata;\n return new LineTokens(tokens, lineContent, decoder);\n }\n constructor(tokens, text, decoder) {\n this._lineTokensBrand = undefined;\n this._tokens = tokens;\n this._tokensCount = (this._tokens.length >>> 1);\n this._text = text;\n this._languageIdCodec = decoder;\n }\n equals(other) {\n if (other instanceof LineTokens) {\n return this.slicedEquals(other, 0, this._tokensCount);\n }\n return false;\n }\n slicedEquals(other, sliceFromTokenIndex, sliceTokenCount) {\n if (this._text !== other._text) {\n return false;\n }\n if (this._tokensCount !== other._tokensCount) {\n return false;\n }\n const from = (sliceFromTokenIndex << 1);\n const to = from + (sliceTokenCount << 1);\n for (let i = from; i < to; i++) {\n if (this._tokens[i] !== other._tokens[i]) {\n return false;\n }\n }\n return true;\n }\n getLineContent() {\n return this._text;\n }\n getCount() {\n return this._tokensCount;\n }\n getStartOffset(tokenIndex) {\n if (tokenIndex > 0) {\n return this._tokens[(tokenIndex - 1) << 1];\n }\n return 0;\n }\n getMetadata(tokenIndex) {\n const metadata = this._tokens[(tokenIndex << 1) + 1];\n return metadata;\n }\n getLanguageId(tokenIndex) {\n const metadata = this._tokens[(tokenIndex << 1) + 1];\n const languageId = _encodedTokenAttributes_js__WEBPACK_IMPORTED_MODULE_0__.TokenMetadata.getLanguageId(metadata);\n return this._languageIdCodec.decodeLanguageId(languageId);\n }\n getStandardTokenType(tokenIndex) {\n const metadata = this._tokens[(tokenIndex << 1) + 1];\n return _encodedTokenAttributes_js__WEBPACK_IMPORTED_MODULE_0__.TokenMetadata.getTokenType(metadata);\n }\n getForeground(tokenIndex) {\n const metadata = this._tokens[(tokenIndex << 1) + 1];\n return _encodedTokenAttributes_js__WEBPACK_IMPORTED_MODULE_0__.TokenMetadata.getForeground(metadata);\n }\n getClassName(tokenIndex) {\n const metadata = this._tokens[(tokenIndex << 1) + 1];\n return _encodedTokenAttributes_js__WEBPACK_IMPORTED_MODULE_0__.TokenMetadata.getClassNameFromMetadata(metadata);\n }\n getInlineStyle(tokenIndex, colorMap) {\n const metadata = this._tokens[(tokenIndex << 1) + 1];\n return _encodedTokenAttributes_js__WEBPACK_IMPORTED_MODULE_0__.TokenMetadata.getInlineStyleFromMetadata(metadata, colorMap);\n }\n getPresentation(tokenIndex) {\n const metadata = this._tokens[(tokenIndex << 1) + 1];\n return _encodedTokenAttributes_js__WEBPACK_IMPORTED_MODULE_0__.TokenMetadata.getPresentationFromMetadata(metadata);\n }\n getEndOffset(tokenIndex) {\n return this._tokens[tokenIndex << 1];\n }\n /**\n * Find the token containing offset `offset`.\n * @param offset The search offset\n * @return The index of the token containing the offset.\n */\n findTokenIndexAtOffset(offset) {\n return LineTokens.findIndexInTokensArray(this._tokens, offset);\n }\n inflate() {\n return this;\n }\n sliceAndInflate(startOffset, endOffset, deltaOffset) {\n return new SliceLineTokens(this, startOffset, endOffset, deltaOffset);\n }\n static convertToEndOffset(tokens, lineTextLength) {\n const tokenCount = (tokens.length >>> 1);\n const lastTokenIndex = tokenCount - 1;\n for (let tokenIndex = 0; tokenIndex < lastTokenIndex; tokenIndex++) {\n tokens[tokenIndex << 1] = tokens[(tokenIndex + 1) << 1];\n }\n tokens[lastTokenIndex << 1] = lineTextLength;\n }\n static findIndexInTokensArray(tokens, desiredIndex) {\n if (tokens.length <= 2) {\n return 0;\n }\n let low = 0;\n let high = (tokens.length >>> 1) - 1;\n while (low < high) {\n const mid = low + Math.floor((high - low) / 2);\n const endOffset = tokens[(mid << 1)];\n if (endOffset === desiredIndex) {\n return mid + 1;\n }\n else if (endOffset < desiredIndex) {\n low = mid + 1;\n }\n else if (endOffset > desiredIndex) {\n high = mid;\n }\n }\n return low;\n }\n /**\n * @pure\n * @param insertTokens Must be sorted by offset.\n */\n withInserted(insertTokens) {\n if (insertTokens.length === 0) {\n return this;\n }\n let nextOriginalTokenIdx = 0;\n let nextInsertTokenIdx = 0;\n let text = '';\n const newTokens = new Array();\n let originalEndOffset = 0;\n while (true) {\n const nextOriginalTokenEndOffset = nextOriginalTokenIdx < this._tokensCount ? this._tokens[nextOriginalTokenIdx << 1] : -1;\n const nextInsertToken = nextInsertTokenIdx < insertTokens.length ? insertTokens[nextInsertTokenIdx] : null;\n if (nextOriginalTokenEndOffset !== -1 && (nextInsertToken === null || nextOriginalTokenEndOffset <= nextInsertToken.offset)) {\n // original token ends before next insert token\n text += this._text.substring(originalEndOffset, nextOriginalTokenEndOffset);\n const metadata = this._tokens[(nextOriginalTokenIdx << 1) + 1];\n newTokens.push(text.length, metadata);\n nextOriginalTokenIdx++;\n originalEndOffset = nextOriginalTokenEndOffset;\n }\n else if (nextInsertToken) {\n if (nextInsertToken.offset > originalEndOffset) {\n // insert token is in the middle of the next token.\n text += this._text.substring(originalEndOffset, nextInsertToken.offset);\n const metadata = this._tokens[(nextOriginalTokenIdx << 1) + 1];\n newTokens.push(text.length, metadata);\n originalEndOffset = nextInsertToken.offset;\n }\n text += nextInsertToken.text;\n newTokens.push(text.length, nextInsertToken.tokenMetadata);\n nextInsertTokenIdx++;\n }\n else {\n break;\n }\n }\n return new LineTokens(new Uint32Array(newTokens), text, this._languageIdCodec);\n }\n}\nLineTokens.defaultTokenMetadata = ((0 /* FontStyle.None */ << 11 /* MetadataConsts.FONT_STYLE_OFFSET */)\n | (1 /* ColorId.DefaultForeground */ << 15 /* MetadataConsts.FOREGROUND_OFFSET */)\n | (2 /* ColorId.DefaultBackground */ << 24 /* MetadataConsts.BACKGROUND_OFFSET */)) >>> 0;\nclass SliceLineTokens {\n constructor(source, startOffset, endOffset, deltaOffset) {\n this._source = source;\n this._startOffset = startOffset;\n this._endOffset = endOffset;\n this._deltaOffset = deltaOffset;\n this._firstTokenIndex = source.findTokenIndexAtOffset(startOffset);\n this._tokensCount = 0;\n for (let i = this._firstTokenIndex, len = source.getCount(); i < len; i++) {\n const tokenStartOffset = source.getStartOffset(i);\n if (tokenStartOffset >= endOffset) {\n break;\n }\n this._tokensCount++;\n }\n }\n getMetadata(tokenIndex) {\n return this._source.getMetadata(this._firstTokenIndex + tokenIndex);\n }\n getLanguageId(tokenIndex) {\n return this._source.getLanguageId(this._firstTokenIndex + tokenIndex);\n }\n getLineContent() {\n return this._source.getLineContent().substring(this._startOffset, this._endOffset);\n }\n equals(other) {\n if (other instanceof SliceLineTokens) {\n return (this._startOffset === other._startOffset\n && this._endOffset === other._endOffset\n && this._deltaOffset === other._deltaOffset\n && this._source.slicedEquals(other._source, this._firstTokenIndex, this._tokensCount));\n }\n return false;\n }\n getCount() {\n return this._tokensCount;\n }\n getForeground(tokenIndex) {\n return this._source.getForeground(this._firstTokenIndex + tokenIndex);\n }\n getEndOffset(tokenIndex) {\n const tokenEndOffset = this._source.getEndOffset(this._firstTokenIndex + tokenIndex);\n return Math.min(this._endOffset, tokenEndOffset) - this._startOffset + this._deltaOffset;\n }\n getClassName(tokenIndex) {\n return this._source.getClassName(this._firstTokenIndex + tokenIndex);\n }\n getInlineStyle(tokenIndex, colorMap) {\n return this._source.getInlineStyle(this._firstTokenIndex + tokenIndex, colorMap);\n }\n getPresentation(tokenIndex) {\n return this._source.getPresentation(this._firstTokenIndex + tokenIndex);\n }\n findTokenIndexAtOffset(offset) {\n return this._source.findTokenIndexAtOffset(offset + this._startOffset - this._deltaOffset) - this._firstTokenIndex;\n }\n}\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/common/tokens/lineTokens.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/common/tokens/sparseMultilineTokens.js":
/*!*****************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/common/tokens/sparseMultilineTokens.js ***!
\*****************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ SparseLineTokens: () => (/* binding */ SparseLineTokens),\n/* harmony export */ SparseMultilineTokens: () => (/* binding */ SparseMultilineTokens)\n/* harmony export */ });\n/* harmony import */ var _core_position_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../core/position.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/core/position.js\");\n/* harmony import */ var _core_range_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../core/range.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/core/range.js\");\n/* harmony import */ var _core_eolCounter_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../core/eolCounter.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/core/eolCounter.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n\n\n/**\n * Represents sparse tokens over a contiguous range of lines.\n */\nclass SparseMultilineTokens {\n static create(startLineNumber, tokens) {\n return new SparseMultilineTokens(startLineNumber, new SparseMultilineTokensStorage(tokens));\n }\n /**\n * (Inclusive) start line number for these tokens.\n */\n get startLineNumber() {\n return this._startLineNumber;\n }\n /**\n * (Inclusive) end line number for these tokens.\n */\n get endLineNumber() {\n return this._endLineNumber;\n }\n constructor(startLineNumber, tokens) {\n this._startLineNumber = startLineNumber;\n this._tokens = tokens;\n this._endLineNumber = this._startLineNumber + this._tokens.getMaxDeltaLine();\n }\n toString() {\n return this._tokens.toString(this._startLineNumber);\n }\n _updateEndLineNumber() {\n this._endLineNumber = this._startLineNumber + this._tokens.getMaxDeltaLine();\n }\n isEmpty() {\n return this._tokens.isEmpty();\n }\n getLineTokens(lineNumber) {\n if (this._startLineNumber <= lineNumber && lineNumber <= this._endLineNumber) {\n return this._tokens.getLineTokens(lineNumber - this._startLineNumber);\n }\n return null;\n }\n getRange() {\n const deltaRange = this._tokens.getRange();\n if (!deltaRange) {\n return deltaRange;\n }\n return new _core_range_js__WEBPACK_IMPORTED_MODULE_1__.Range(this._startLineNumber + deltaRange.startLineNumber, deltaRange.startColumn, this._startLineNumber + deltaRange.endLineNumber, deltaRange.endColumn);\n }\n removeTokens(range) {\n const startLineIndex = range.startLineNumber - this._startLineNumber;\n const endLineIndex = range.endLineNumber - this._startLineNumber;\n this._startLineNumber += this._tokens.removeTokens(startLineIndex, range.startColumn - 1, endLineIndex, range.endColumn - 1);\n this._updateEndLineNumber();\n }\n split(range) {\n // split tokens to two:\n // a) all the tokens before `range`\n // b) all the tokens after `range`\n const startLineIndex = range.startLineNumber - this._startLineNumber;\n const endLineIndex = range.endLineNumber - this._startLineNumber;\n const [a, b, bDeltaLine] = this._tokens.split(startLineIndex, range.startColumn - 1, endLineIndex, range.endColumn - 1);\n return [new SparseMultilineTokens(this._startLineNumber, a), new SparseMultilineTokens(this._startLineNumber + bDeltaLine, b)];\n }\n applyEdit(range, text) {\n const [eolCount, firstLineLength, lastLineLength] = (0,_core_eolCounter_js__WEBPACK_IMPORTED_MODULE_2__.countEOL)(text);\n this.acceptEdit(range, eolCount, firstLineLength, lastLineLength, text.length > 0 ? text.charCodeAt(0) : 0 /* CharCode.Null */);\n }\n acceptEdit(range, eolCount, firstLineLength, lastLineLength, firstCharCode) {\n this._acceptDeleteRange(range);\n this._acceptInsertText(new _core_position_js__WEBPACK_IMPORTED_MODULE_0__.Position(range.startLineNumber, range.startColumn), eolCount, firstLineLength, lastLineLength, firstCharCode);\n this._updateEndLineNumber();\n }\n _acceptDeleteRange(range) {\n if (range.startLineNumber === range.endLineNumber && range.startColumn === range.endColumn) {\n // Nothing to delete\n return;\n }\n const firstLineIndex = range.startLineNumber - this._startLineNumber;\n const lastLineIndex = range.endLineNumber - this._startLineNumber;\n if (lastLineIndex < 0) {\n // this deletion occurs entirely before this block, so we only need to adjust line numbers\n const deletedLinesCount = lastLineIndex - firstLineIndex;\n this._startLineNumber -= deletedLinesCount;\n return;\n }\n const tokenMaxDeltaLine = this._tokens.getMaxDeltaLine();\n if (firstLineIndex >= tokenMaxDeltaLine + 1) {\n // this deletion occurs entirely after this block, so there is nothing to do\n return;\n }\n if (firstLineIndex < 0 && lastLineIndex >= tokenMaxDeltaLine + 1) {\n // this deletion completely encompasses this block\n this._startLineNumber = 0;\n this._tokens.clear();\n return;\n }\n if (firstLineIndex < 0) {\n const deletedBefore = -firstLineIndex;\n this._startLineNumber -= deletedBefore;\n this._tokens.acceptDeleteRange(range.startColumn - 1, 0, 0, lastLineIndex, range.endColumn - 1);\n }\n else {\n this._tokens.acceptDeleteRange(0, firstLineIndex, range.startColumn - 1, lastLineIndex, range.endColumn - 1);\n }\n }\n _acceptInsertText(position, eolCount, firstLineLength, lastLineLength, firstCharCode) {\n if (eolCount === 0 && firstLineLength === 0) {\n // Nothing to insert\n return;\n }\n const lineIndex = position.lineNumber - this._startLineNumber;\n if (lineIndex < 0) {\n // this insertion occurs before this block, so we only need to adjust line numbers\n this._startLineNumber += eolCount;\n return;\n }\n const tokenMaxDeltaLine = this._tokens.getMaxDeltaLine();\n if (lineIndex >= tokenMaxDeltaLine + 1) {\n // this insertion occurs after this block, so there is nothing to do\n return;\n }\n this._tokens.acceptInsertText(lineIndex, position.column - 1, eolCount, firstLineLength, lastLineLength, firstCharCode);\n }\n}\nclass SparseMultilineTokensStorage {\n constructor(tokens) {\n this._tokens = tokens;\n this._tokenCount = tokens.length / 4;\n }\n toString(startLineNumber) {\n const pieces = [];\n for (let i = 0; i < this._tokenCount; i++) {\n pieces.push(`(${this._getDeltaLine(i) + startLineNumber},${this._getStartCharacter(i)}-${this._getEndCharacter(i)})`);\n }\n return `[${pieces.join(',')}]`;\n }\n getMaxDeltaLine() {\n const tokenCount = this._getTokenCount();\n if (tokenCount === 0) {\n return -1;\n }\n return this._getDeltaLine(tokenCount - 1);\n }\n getRange() {\n const tokenCount = this._getTokenCount();\n if (tokenCount === 0) {\n return null;\n }\n const startChar = this._getStartCharacter(0);\n const maxDeltaLine = this._getDeltaLine(tokenCount - 1);\n const endChar = this._getEndCharacter(tokenCount - 1);\n return new _core_range_js__WEBPACK_IMPORTED_MODULE_1__.Range(0, startChar + 1, maxDeltaLine, endChar + 1);\n }\n _getTokenCount() {\n return this._tokenCount;\n }\n _getDeltaLine(tokenIndex) {\n return this._tokens[4 * tokenIndex];\n }\n _getStartCharacter(tokenIndex) {\n return this._tokens[4 * tokenIndex + 1];\n }\n _getEndCharacter(tokenIndex) {\n return this._tokens[4 * tokenIndex + 2];\n }\n isEmpty() {\n return (this._getTokenCount() === 0);\n }\n getLineTokens(deltaLine) {\n let low = 0;\n let high = this._getTokenCount() - 1;\n while (low < high) {\n const mid = low + Math.floor((high - low) / 2);\n const midDeltaLine = this._getDeltaLine(mid);\n if (midDeltaLine < deltaLine) {\n low = mid + 1;\n }\n else if (midDeltaLine > deltaLine) {\n high = mid - 1;\n }\n else {\n let min = mid;\n while (min > low && this._getDeltaLine(min - 1) === deltaLine) {\n min--;\n }\n let max = mid;\n while (max < high && this._getDeltaLine(max + 1) === deltaLine) {\n max++;\n }\n return new SparseLineTokens(this._tokens.subarray(4 * min, 4 * max + 4));\n }\n }\n if (this._getDeltaLine(low) === deltaLine) {\n return new SparseLineTokens(this._tokens.subarray(4 * low, 4 * low + 4));\n }\n return null;\n }\n clear() {\n this._tokenCount = 0;\n }\n removeTokens(startDeltaLine, startChar, endDeltaLine, endChar) {\n const tokens = this._tokens;\n const tokenCount = this._tokenCount;\n let newTokenCount = 0;\n let hasDeletedTokens = false;\n let firstDeltaLine = 0;\n for (let i = 0; i < tokenCount; i++) {\n const srcOffset = 4 * i;\n const tokenDeltaLine = tokens[srcOffset];\n const tokenStartCharacter = tokens[srcOffset + 1];\n const tokenEndCharacter = tokens[srcOffset + 2];\n const tokenMetadata = tokens[srcOffset + 3];\n if ((tokenDeltaLine > startDeltaLine || (tokenDeltaLine === startDeltaLine && tokenEndCharacter >= startChar))\n && (tokenDeltaLine < endDeltaLine || (tokenDeltaLine === endDeltaLine && tokenStartCharacter <= endChar))) {\n hasDeletedTokens = true;\n }\n else {\n if (newTokenCount === 0) {\n firstDeltaLine = tokenDeltaLine;\n }\n if (hasDeletedTokens) {\n // must move the token to the left\n const destOffset = 4 * newTokenCount;\n tokens[destOffset] = tokenDeltaLine - firstDeltaLine;\n tokens[destOffset + 1] = tokenStartCharacter;\n tokens[destOffset + 2] = tokenEndCharacter;\n tokens[destOffset + 3] = tokenMetadata;\n }\n newTokenCount++;\n }\n }\n this._tokenCount = newTokenCount;\n return firstDeltaLine;\n }\n split(startDeltaLine, startChar, endDeltaLine, endChar) {\n const tokens = this._tokens;\n const tokenCount = this._tokenCount;\n const aTokens = [];\n const bTokens = [];\n let destTokens = aTokens;\n let destOffset = 0;\n let destFirstDeltaLine = 0;\n for (let i = 0; i < tokenCount; i++) {\n const srcOffset = 4 * i;\n const tokenDeltaLine = tokens[srcOffset];\n const tokenStartCharacter = tokens[srcOffset + 1];\n const tokenEndCharacter = tokens[srcOffset + 2];\n const tokenMetadata = tokens[srcOffset + 3];\n if ((tokenDeltaLine > startDeltaLine || (tokenDeltaLine === startDeltaLine && tokenEndCharacter >= startChar))) {\n if ((tokenDeltaLine < endDeltaLine || (tokenDeltaLine === endDeltaLine && tokenStartCharacter <= endChar))) {\n // this token is touching the range\n continue;\n }\n else {\n // this token is after the range\n if (destTokens !== bTokens) {\n // this token is the first token after the range\n destTokens = bTokens;\n destOffset = 0;\n destFirstDeltaLine = tokenDeltaLine;\n }\n }\n }\n destTokens[destOffset++] = tokenDeltaLine - destFirstDeltaLine;\n destTokens[destOffset++] = tokenStartCharacter;\n destTokens[destOffset++] = tokenEndCharacter;\n destTokens[destOffset++] = tokenMetadata;\n }\n return [new SparseMultilineTokensStorage(new Uint32Array(aTokens)), new SparseMultilineTokensStorage(new Uint32Array(bTokens)), destFirstDeltaLine];\n }\n acceptDeleteRange(horizontalShiftForFirstLineTokens, startDeltaLine, startCharacter, endDeltaLine, endCharacter) {\n // This is a bit complex, here are the cases I used to think about this:\n //\n // 1. The token starts before the deletion range\n // 1a. The token is completely before the deletion range\n // -----------\n // xxxxxxxxxxx\n // 1b. The token starts before, the deletion range ends after the token\n // -----------\n // xxxxxxxxxxx\n // 1c. The token starts before, the deletion range ends precisely with the token\n // ---------------\n // xxxxxxxx\n // 1d. The token starts before, the deletion range is inside the token\n // ---------------\n // xxxxx\n //\n // 2. The token starts at the same position with the deletion range\n // 2a. The token starts at the same position, and ends inside the deletion range\n // -------\n // xxxxxxxxxxx\n // 2b. The token starts at the same position, and ends at the same position as the deletion range\n // ----------\n // xxxxxxxxxx\n // 2c. The token starts at the same position, and ends after the deletion range\n // -------------\n // xxxxxxx\n //\n // 3. The token starts inside the deletion range\n // 3a. The token is inside the deletion range\n // -------\n // xxxxxxxxxxxxx\n // 3b. The token starts inside the deletion range, and ends at the same position as the deletion range\n // ----------\n // xxxxxxxxxxxxx\n // 3c. The token starts inside the deletion range, and ends after the deletion range\n // ------------\n // xxxxxxxxxxx\n //\n // 4. The token starts after the deletion range\n // -----------\n // xxxxxxxx\n //\n const tokens = this._tokens;\n const tokenCount = this._tokenCount;\n const deletedLineCount = (endDeltaLine - startDeltaLine);\n let newTokenCount = 0;\n let hasDeletedTokens = false;\n for (let i = 0; i < tokenCount; i++) {\n const srcOffset = 4 * i;\n let tokenDeltaLine = tokens[srcOffset];\n let tokenStartCharacter = tokens[srcOffset + 1];\n let tokenEndCharacter = tokens[srcOffset + 2];\n const tokenMetadata = tokens[srcOffset + 3];\n if (tokenDeltaLine < startDeltaLine || (tokenDeltaLine === startDeltaLine && tokenEndCharacter <= startCharacter)) {\n // 1a. The token is completely before the deletion range\n // => nothing to do\n newTokenCount++;\n continue;\n }\n else if (tokenDeltaLine === startDeltaLine && tokenStartCharacter < startCharacter) {\n // 1b, 1c, 1d\n // => the token survives, but it needs to shrink\n if (tokenDeltaLine === endDeltaLine && tokenEndCharacter > endCharacter) {\n // 1d. The token starts before, the deletion range is inside the token\n // => the token shrinks by the deletion character count\n tokenEndCharacter -= (endCharacter - startCharacter);\n }\n else {\n // 1b. The token starts before, the deletion range ends after the token\n // 1c. The token starts before, the deletion range ends precisely with the token\n // => the token shrinks its ending to the deletion start\n tokenEndCharacter = startCharacter;\n }\n }\n else if (tokenDeltaLine === startDeltaLine && tokenStartCharacter === startCharacter) {\n // 2a, 2b, 2c\n if (tokenDeltaLine === endDeltaLine && tokenEndCharacter > endCharacter) {\n // 2c. The token starts at the same position, and ends after the deletion range\n // => the token shrinks by the deletion character count\n tokenEndCharacter -= (endCharacter - startCharacter);\n }\n else {\n // 2a. The token starts at the same position, and ends inside the deletion range\n // 2b. The token starts at the same position, and ends at the same position as the deletion range\n // => the token is deleted\n hasDeletedTokens = true;\n continue;\n }\n }\n else if (tokenDeltaLine < endDeltaLine || (tokenDeltaLine === endDeltaLine && tokenStartCharacter < endCharacter)) {\n // 3a, 3b, 3c\n if (tokenDeltaLine === endDeltaLine && tokenEndCharacter > endCharacter) {\n // 3c. The token starts inside the deletion range, and ends after the deletion range\n // => the token moves to continue right after the deletion\n tokenDeltaLine = startDeltaLine;\n tokenStartCharacter = startCharacter;\n tokenEndCharacter = tokenStartCharacter + (tokenEndCharacter - endCharacter);\n }\n else {\n // 3a. The token is inside the deletion range\n // 3b. The token starts inside the deletion range, and ends at the same position as the deletion range\n // => the token is deleted\n hasDeletedTokens = true;\n continue;\n }\n }\n else if (tokenDeltaLine > endDeltaLine) {\n // 4. (partial) The token starts after the deletion range, on a line below...\n if (deletedLineCount === 0 && !hasDeletedTokens) {\n // early stop, there is no need to walk all the tokens and do nothing...\n newTokenCount = tokenCount;\n break;\n }\n tokenDeltaLine -= deletedLineCount;\n }\n else if (tokenDeltaLine === endDeltaLine && tokenStartCharacter >= endCharacter) {\n // 4. (continued) The token starts after the deletion range, on the last line where a deletion occurs\n if (horizontalShiftForFirstLineTokens && tokenDeltaLine === 0) {\n tokenStartCharacter += horizontalShiftForFirstLineTokens;\n tokenEndCharacter += horizontalShiftForFirstLineTokens;\n }\n tokenDeltaLine -= deletedLineCount;\n tokenStartCharacter -= (endCharacter - startCharacter);\n tokenEndCharacter -= (endCharacter - startCharacter);\n }\n else {\n throw new Error(`Not possible!`);\n }\n const destOffset = 4 * newTokenCount;\n tokens[destOffset] = tokenDeltaLine;\n tokens[destOffset + 1] = tokenStartCharacter;\n tokens[destOffset + 2] = tokenEndCharacter;\n tokens[destOffset + 3] = tokenMetadata;\n newTokenCount++;\n }\n this._tokenCount = newTokenCount;\n }\n acceptInsertText(deltaLine, character, eolCount, firstLineLength, lastLineLength, firstCharCode) {\n // Here are the cases I used to think about this:\n //\n // 1. The token is completely before the insertion point\n // ----------- |\n // 2. The token ends precisely at the insertion point\n // -----------|\n // 3. The token contains the insertion point\n // -----|------\n // 4. The token starts precisely at the insertion point\n // |-----------\n // 5. The token is completely after the insertion point\n // | -----------\n //\n const isInsertingPreciselyOneWordCharacter = (eolCount === 0\n && firstLineLength === 1\n && ((firstCharCode >= 48 /* CharCode.Digit0 */ && firstCharCode <= 57 /* CharCode.Digit9 */)\n || (firstCharCode >= 65 /* CharCode.A */ && firstCharCode <= 90 /* CharCode.Z */)\n || (firstCharCode >= 97 /* CharCode.a */ && firstCharCode <= 122 /* CharCode.z */)));\n const tokens = this._tokens;\n const tokenCount = this._tokenCount;\n for (let i = 0; i < tokenCount; i++) {\n const offset = 4 * i;\n let tokenDeltaLine = tokens[offset];\n let tokenStartCharacter = tokens[offset + 1];\n let tokenEndCharacter = tokens[offset + 2];\n if (tokenDeltaLine < deltaLine || (tokenDeltaLine === deltaLine && tokenEndCharacter < character)) {\n // 1. The token is completely before the insertion point\n // => nothing to do\n continue;\n }\n else if (tokenDeltaLine === deltaLine && tokenEndCharacter === character) {\n // 2. The token ends precisely at the insertion point\n // => expand the end character only if inserting precisely one character that is a word character\n if (isInsertingPreciselyOneWordCharacter) {\n tokenEndCharacter += 1;\n }\n else {\n continue;\n }\n }\n else if (tokenDeltaLine === deltaLine && tokenStartCharacter < character && character < tokenEndCharacter) {\n // 3. The token contains the insertion point\n if (eolCount === 0) {\n // => just expand the end character\n tokenEndCharacter += firstLineLength;\n }\n else {\n // => cut off the token\n tokenEndCharacter = character;\n }\n }\n else {\n // 4. or 5.\n if (tokenDeltaLine === deltaLine && tokenStartCharacter === character) {\n // 4. The token starts precisely at the insertion point\n // => grow the token (by keeping its start constant) only if inserting precisely one character that is a word character\n // => otherwise behave as in case 5.\n if (isInsertingPreciselyOneWordCharacter) {\n continue;\n }\n }\n // => the token must move and keep its size constant\n if (tokenDeltaLine === deltaLine) {\n tokenDeltaLine += eolCount;\n // this token is on the line where the insertion is taking place\n if (eolCount === 0) {\n tokenStartCharacter += firstLineLength;\n tokenEndCharacter += firstLineLength;\n }\n else {\n const tokenLength = tokenEndCharacter - tokenStartCharacter;\n tokenStartCharacter = lastLineLength + (tokenStartCharacter - character);\n tokenEndCharacter = tokenStartCharacter + tokenLength;\n }\n }\n else {\n tokenDeltaLine += eolCount;\n }\n }\n tokens[offset] = tokenDeltaLine;\n tokens[offset + 1] = tokenStartCharacter;\n tokens[offset + 2] = tokenEndCharacter;\n }\n }\n}\nclass SparseLineTokens {\n constructor(tokens) {\n this._tokens = tokens;\n }\n getCount() {\n return this._tokens.length / 4;\n }\n getStartCharacter(tokenIndex) {\n return this._tokens[4 * tokenIndex + 1];\n }\n getEndCharacter(tokenIndex) {\n return this._tokens[4 * tokenIndex + 2];\n }\n getMetadata(tokenIndex) {\n return this._tokens[4 * tokenIndex + 3];\n }\n}\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/common/tokens/sparseMultilineTokens.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/common/tokens/sparseTokensStore.js":
/*!*************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/common/tokens/sparseTokensStore.js ***!
\*************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ SparseTokensStore: () => (/* binding */ SparseTokensStore)\n/* harmony export */ });\n/* harmony import */ var _base_common_arrays_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../base/common/arrays.js */ \"./node_modules/monaco-editor/esm/vs/base/common/arrays.js\");\n/* harmony import */ var _lineTokens_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./lineTokens.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/tokens/lineTokens.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n\n/**\n * Represents sparse tokens in a text model.\n */\nclass SparseTokensStore {\n constructor(languageIdCodec) {\n this._pieces = [];\n this._isComplete = false;\n this._languageIdCodec = languageIdCodec;\n }\n flush() {\n this._pieces = [];\n this._isComplete = false;\n }\n isEmpty() {\n return (this._pieces.length === 0);\n }\n set(pieces, isComplete) {\n this._pieces = pieces || [];\n this._isComplete = isComplete;\n }\n setPartial(_range, pieces) {\n // console.log(`setPartial ${_range} ${pieces.map(p => p.toString()).join(', ')}`);\n let range = _range;\n if (pieces.length > 0) {\n const _firstRange = pieces[0].getRange();\n const _lastRange = pieces[pieces.length - 1].getRange();\n if (!_firstRange || !_lastRange) {\n return _range;\n }\n range = _range.plusRange(_firstRange).plusRange(_lastRange);\n }\n let insertPosition = null;\n for (let i = 0, len = this._pieces.length; i < len; i++) {\n const piece = this._pieces[i];\n if (piece.endLineNumber < range.startLineNumber) {\n // this piece is before the range\n continue;\n }\n if (piece.startLineNumber > range.endLineNumber) {\n // this piece is after the range, so mark the spot before this piece\n // as a good insertion position and stop looping\n insertPosition = insertPosition || { index: i };\n break;\n }\n // this piece might intersect with the range\n piece.removeTokens(range);\n if (piece.isEmpty()) {\n // remove the piece if it became empty\n this._pieces.splice(i, 1);\n i--;\n len--;\n continue;\n }\n if (piece.endLineNumber < range.startLineNumber) {\n // after removal, this piece is before the range\n continue;\n }\n if (piece.startLineNumber > range.endLineNumber) {\n // after removal, this piece is after the range\n insertPosition = insertPosition || { index: i };\n continue;\n }\n // after removal, this piece contains the range\n const [a, b] = piece.split(range);\n if (a.isEmpty()) {\n // this piece is actually after the range\n insertPosition = insertPosition || { index: i };\n continue;\n }\n if (b.isEmpty()) {\n // this piece is actually before the range\n continue;\n }\n this._pieces.splice(i, 1, a, b);\n i++;\n len++;\n insertPosition = insertPosition || { index: i };\n }\n insertPosition = insertPosition || { index: this._pieces.length };\n if (pieces.length > 0) {\n this._pieces = _base_common_arrays_js__WEBPACK_IMPORTED_MODULE_0__.arrayInsert(this._pieces, insertPosition.index, pieces);\n }\n // console.log(`I HAVE ${this._pieces.length} pieces`);\n // console.log(`${this._pieces.map(p => p.toString()).join('\\n')}`);\n return range;\n }\n isComplete() {\n return this._isComplete;\n }\n addSparseTokens(lineNumber, aTokens) {\n if (aTokens.getLineContent().length === 0) {\n // Don't do anything for empty lines\n return aTokens;\n }\n const pieces = this._pieces;\n if (pieces.length === 0) {\n return aTokens;\n }\n const pieceIndex = SparseTokensStore._findFirstPieceWithLine(pieces, lineNumber);\n const bTokens = pieces[pieceIndex].getLineTokens(lineNumber);\n if (!bTokens) {\n return aTokens;\n }\n const aLen = aTokens.getCount();\n const bLen = bTokens.getCount();\n let aIndex = 0;\n const result = [];\n let resultLen = 0;\n let lastEndOffset = 0;\n const emitToken = (endOffset, metadata) => {\n if (endOffset === lastEndOffset) {\n return;\n }\n lastEndOffset = endOffset;\n result[resultLen++] = endOffset;\n result[resultLen++] = metadata;\n };\n for (let bIndex = 0; bIndex < bLen; bIndex++) {\n const bStartCharacter = bTokens.getStartCharacter(bIndex);\n const bEndCharacter = bTokens.getEndCharacter(bIndex);\n const bMetadata = bTokens.getMetadata(bIndex);\n const bMask = (((bMetadata & 1 /* MetadataConsts.SEMANTIC_USE_ITALIC */) ? 2048 /* MetadataConsts.ITALIC_MASK */ : 0)\n | ((bMetadata & 2 /* MetadataConsts.SEMANTIC_USE_BOLD */) ? 4096 /* MetadataConsts.BOLD_MASK */ : 0)\n | ((bMetadata & 4 /* MetadataConsts.SEMANTIC_USE_UNDERLINE */) ? 8192 /* MetadataConsts.UNDERLINE_MASK */ : 0)\n | ((bMetadata & 8 /* MetadataConsts.SEMANTIC_USE_STRIKETHROUGH */) ? 16384 /* MetadataConsts.STRIKETHROUGH_MASK */ : 0)\n | ((bMetadata & 16 /* MetadataConsts.SEMANTIC_USE_FOREGROUND */) ? 16744448 /* MetadataConsts.FOREGROUND_MASK */ : 0)\n | ((bMetadata & 32 /* MetadataConsts.SEMANTIC_USE_BACKGROUND */) ? 4278190080 /* MetadataConsts.BACKGROUND_MASK */ : 0)) >>> 0;\n const aMask = (~bMask) >>> 0;\n // push any token from `a` that is before `b`\n while (aIndex < aLen && aTokens.getEndOffset(aIndex) <= bStartCharacter) {\n emitToken(aTokens.getEndOffset(aIndex), aTokens.getMetadata(aIndex));\n aIndex++;\n }\n // push the token from `a` if it intersects the token from `b`\n if (aIndex < aLen && aTokens.getStartOffset(aIndex) < bStartCharacter) {\n emitToken(bStartCharacter, aTokens.getMetadata(aIndex));\n }\n // skip any tokens from `a` that are contained inside `b`\n while (aIndex < aLen && aTokens.getEndOffset(aIndex) < bEndCharacter) {\n emitToken(aTokens.getEndOffset(aIndex), (aTokens.getMetadata(aIndex) & aMask) | (bMetadata & bMask));\n aIndex++;\n }\n if (aIndex < aLen) {\n emitToken(bEndCharacter, (aTokens.getMetadata(aIndex) & aMask) | (bMetadata & bMask));\n if (aTokens.getEndOffset(aIndex) === bEndCharacter) {\n // `a` ends exactly at the same spot as `b`!\n aIndex++;\n }\n }\n else {\n const aMergeIndex = Math.min(Math.max(0, aIndex - 1), aLen - 1);\n // push the token from `b`\n emitToken(bEndCharacter, (aTokens.getMetadata(aMergeIndex) & aMask) | (bMetadata & bMask));\n }\n }\n // push the remaining tokens from `a`\n while (aIndex < aLen) {\n emitToken(aTokens.getEndOffset(aIndex), aTokens.getMetadata(aIndex));\n aIndex++;\n }\n return new _lineTokens_js__WEBPACK_IMPORTED_MODULE_1__.LineTokens(new Uint32Array(result), aTokens.getLineContent(), this._languageIdCodec);\n }\n static _findFirstPieceWithLine(pieces, lineNumber) {\n let low = 0;\n let high = pieces.length - 1;\n while (low < high) {\n let mid = low + Math.floor((high - low) / 2);\n if (pieces[mid].endLineNumber < lineNumber) {\n low = mid + 1;\n }\n else if (pieces[mid].startLineNumber > lineNumber) {\n high = mid - 1;\n }\n else {\n while (mid > low && pieces[mid - 1].startLineNumber <= lineNumber && lineNumber <= pieces[mid - 1].endLineNumber) {\n mid--;\n }\n return mid;\n }\n }\n return low;\n }\n acceptEdit(range, eolCount, firstLineLength, lastLineLength, firstCharCode) {\n for (const piece of this._pieces) {\n piece.acceptEdit(range, eolCount, firstLineLength, lastLineLength, firstCharCode);\n }\n }\n}\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/common/tokens/sparseTokensStore.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/common/viewEventHandler.js":
/*!*****************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/common/viewEventHandler.js ***!
\*****************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ ViewEventHandler: () => (/* binding */ ViewEventHandler)\n/* harmony export */ });\n/* harmony import */ var _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../base/common/lifecycle.js */ \"./node_modules/monaco-editor/esm/vs/base/common/lifecycle.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\nclass ViewEventHandler extends _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_0__.Disposable {\n constructor() {\n super();\n this._shouldRender = true;\n }\n shouldRender() {\n return this._shouldRender;\n }\n forceShouldRender() {\n this._shouldRender = true;\n }\n setShouldRender() {\n this._shouldRender = true;\n }\n onDidRender() {\n this._shouldRender = false;\n }\n // --- begin event handlers\n onCompositionStart(e) {\n return false;\n }\n onCompositionEnd(e) {\n return false;\n }\n onConfigurationChanged(e) {\n return false;\n }\n onCursorStateChanged(e) {\n return false;\n }\n onDecorationsChanged(e) {\n return false;\n }\n onFlushed(e) {\n return false;\n }\n onFocusChanged(e) {\n return false;\n }\n onLanguageConfigurationChanged(e) {\n return false;\n }\n onLineMappingChanged(e) {\n return false;\n }\n onLinesChanged(e) {\n return false;\n }\n onLinesDeleted(e) {\n return false;\n }\n onLinesInserted(e) {\n return false;\n }\n onRevealRangeRequest(e) {\n return false;\n }\n onScrollChanged(e) {\n return false;\n }\n onThemeChanged(e) {\n return false;\n }\n onTokensChanged(e) {\n return false;\n }\n onTokensColorsChanged(e) {\n return false;\n }\n onZonesChanged(e) {\n return false;\n }\n // --- end event handlers\n handleEvents(events) {\n let shouldRender = false;\n for (let i = 0, len = events.length; i < len; i++) {\n const e = events[i];\n switch (e.type) {\n case 0 /* viewEvents.ViewEventType.ViewCompositionStart */:\n if (this.onCompositionStart(e)) {\n shouldRender = true;\n }\n break;\n case 1 /* viewEvents.ViewEventType.ViewCompositionEnd */:\n if (this.onCompositionEnd(e)) {\n shouldRender = true;\n }\n break;\n case 2 /* viewEvents.ViewEventType.ViewConfigurationChanged */:\n if (this.onConfigurationChanged(e)) {\n shouldRender = true;\n }\n break;\n case 3 /* viewEvents.ViewEventType.ViewCursorStateChanged */:\n if (this.onCursorStateChanged(e)) {\n shouldRender = true;\n }\n break;\n case 4 /* viewEvents.ViewEventType.ViewDecorationsChanged */:\n if (this.onDecorationsChanged(e)) {\n shouldRender = true;\n }\n break;\n case 5 /* viewEvents.ViewEventType.ViewFlushed */:\n if (this.onFlushed(e)) {\n shouldRender = true;\n }\n break;\n case 6 /* viewEvents.ViewEventType.ViewFocusChanged */:\n if (this.onFocusChanged(e)) {\n shouldRender = true;\n }\n break;\n case 7 /* viewEvents.ViewEventType.ViewLanguageConfigurationChanged */:\n if (this.onLanguageConfigurationChanged(e)) {\n shouldRender = true;\n }\n break;\n case 8 /* viewEvents.ViewEventType.ViewLineMappingChanged */:\n if (this.onLineMappingChanged(e)) {\n shouldRender = true;\n }\n break;\n case 9 /* viewEvents.ViewEventType.ViewLinesChanged */:\n if (this.onLinesChanged(e)) {\n shouldRender = true;\n }\n break;\n case 10 /* viewEvents.ViewEventType.ViewLinesDeleted */:\n if (this.onLinesDeleted(e)) {\n shouldRender = true;\n }\n break;\n case 11 /* viewEvents.ViewEventType.ViewLinesInserted */:\n if (this.onLinesInserted(e)) {\n shouldRender = true;\n }\n break;\n case 12 /* viewEvents.ViewEventType.ViewRevealRangeRequest */:\n if (this.onRevealRangeRequest(e)) {\n shouldRender = true;\n }\n break;\n case 13 /* viewEvents.ViewEventType.ViewScrollChanged */:\n if (this.onScrollChanged(e)) {\n shouldRender = true;\n }\n break;\n case 15 /* viewEvents.ViewEventType.ViewTokensChanged */:\n if (this.onTokensChanged(e)) {\n shouldRender = true;\n }\n break;\n case 14 /* viewEvents.ViewEventType.ViewThemeChanged */:\n if (this.onThemeChanged(e)) {\n shouldRender = true;\n }\n break;\n case 16 /* viewEvents.ViewEventType.ViewTokensColorsChanged */:\n if (this.onTokensColorsChanged(e)) {\n shouldRender = true;\n }\n break;\n case 17 /* viewEvents.ViewEventType.ViewZonesChanged */:\n if (this.onZonesChanged(e)) {\n shouldRender = true;\n }\n break;\n default:\n console.info('View received unknown event: ');\n console.info(e);\n }\n }\n if (shouldRender) {\n this._shouldRender = true;\n }\n }\n}\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/common/viewEventHandler.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/common/viewEvents.js":
/*!***********************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/common/viewEvents.js ***!
\***********************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ ViewCompositionEndEvent: () => (/* binding */ ViewCompositionEndEvent),\n/* harmony export */ ViewCompositionStartEvent: () => (/* binding */ ViewCompositionStartEvent),\n/* harmony export */ ViewConfigurationChangedEvent: () => (/* binding */ ViewConfigurationChangedEvent),\n/* harmony export */ ViewCursorStateChangedEvent: () => (/* binding */ ViewCursorStateChangedEvent),\n/* harmony export */ ViewDecorationsChangedEvent: () => (/* binding */ ViewDecorationsChangedEvent),\n/* harmony export */ ViewFlushedEvent: () => (/* binding */ ViewFlushedEvent),\n/* harmony export */ ViewFocusChangedEvent: () => (/* binding */ ViewFocusChangedEvent),\n/* harmony export */ ViewLanguageConfigurationEvent: () => (/* binding */ ViewLanguageConfigurationEvent),\n/* harmony export */ ViewLineMappingChangedEvent: () => (/* binding */ ViewLineMappingChangedEvent),\n/* harmony export */ ViewLinesChangedEvent: () => (/* binding */ ViewLinesChangedEvent),\n/* harmony export */ ViewLinesDeletedEvent: () => (/* binding */ ViewLinesDeletedEvent),\n/* harmony export */ ViewLinesInsertedEvent: () => (/* binding */ ViewLinesInsertedEvent),\n/* harmony export */ ViewRevealRangeRequestEvent: () => (/* binding */ ViewRevealRangeRequestEvent),\n/* harmony export */ ViewScrollChangedEvent: () => (/* binding */ ViewScrollChangedEvent),\n/* harmony export */ ViewThemeChangedEvent: () => (/* binding */ ViewThemeChangedEvent),\n/* harmony export */ ViewTokensChangedEvent: () => (/* binding */ ViewTokensChangedEvent),\n/* harmony export */ ViewTokensColorsChangedEvent: () => (/* binding */ ViewTokensColorsChangedEvent),\n/* harmony export */ ViewZonesChangedEvent: () => (/* binding */ ViewZonesChangedEvent)\n/* harmony export */ });\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\nclass ViewCompositionStartEvent {\n constructor() {\n this.type = 0 /* ViewEventType.ViewCompositionStart */;\n }\n}\nclass ViewCompositionEndEvent {\n constructor() {\n this.type = 1 /* ViewEventType.ViewCompositionEnd */;\n }\n}\nclass ViewConfigurationChangedEvent {\n constructor(source) {\n this.type = 2 /* ViewEventType.ViewConfigurationChanged */;\n this._source = source;\n }\n hasChanged(id) {\n return this._source.hasChanged(id);\n }\n}\nclass ViewCursorStateChangedEvent {\n constructor(selections, modelSelections, reason) {\n this.selections = selections;\n this.modelSelections = modelSelections;\n this.reason = reason;\n this.type = 3 /* ViewEventType.ViewCursorStateChanged */;\n }\n}\nclass ViewDecorationsChangedEvent {\n constructor(source) {\n this.type = 4 /* ViewEventType.ViewDecorationsChanged */;\n if (source) {\n this.affectsMinimap = source.affectsMinimap;\n this.affectsOverviewRuler = source.affectsOverviewRuler;\n this.affectsGlyphMargin = source.affectsGlyphMargin;\n this.affectsLineNumber = source.affectsLineNumber;\n }\n else {\n this.affectsMinimap = true;\n this.affectsOverviewRuler = true;\n this.affectsGlyphMargin = true;\n this.affectsLineNumber = true;\n }\n }\n}\nclass ViewFlushedEvent {\n constructor() {\n this.type = 5 /* ViewEventType.ViewFlushed */;\n // Nothing to do\n }\n}\nclass ViewFocusChangedEvent {\n constructor(isFocused) {\n this.type = 6 /* ViewEventType.ViewFocusChanged */;\n this.isFocused = isFocused;\n }\n}\nclass ViewLanguageConfigurationEvent {\n constructor() {\n this.type = 7 /* ViewEventType.ViewLanguageConfigurationChanged */;\n }\n}\nclass ViewLineMappingChangedEvent {\n constructor() {\n this.type = 8 /* ViewEventType.ViewLineMappingChanged */;\n // Nothing to do\n }\n}\nclass ViewLinesChangedEvent {\n constructor(\n /**\n * The first line that has changed.\n */\n fromLineNumber, \n /**\n * The number of lines that have changed.\n */\n count) {\n this.fromLineNumber = fromLineNumber;\n this.count = count;\n this.type = 9 /* ViewEventType.ViewLinesChanged */;\n }\n}\nclass ViewLinesDeletedEvent {\n constructor(fromLineNumber, toLineNumber) {\n this.type = 10 /* ViewEventType.ViewLinesDeleted */;\n this.fromLineNumber = fromLineNumber;\n this.toLineNumber = toLineNumber;\n }\n}\nclass ViewLinesInsertedEvent {\n constructor(fromLineNumber, toLineNumber) {\n this.type = 11 /* ViewEventType.ViewLinesInserted */;\n this.fromLineNumber = fromLineNumber;\n this.toLineNumber = toLineNumber;\n }\n}\nclass ViewRevealRangeRequestEvent {\n constructor(\n /**\n * Source of the call that caused the event.\n */\n source, \n /**\n * Reduce the revealing to a minimum (e.g. avoid scrolling if the bounding box is visible and near the viewport edge).\n */\n minimalReveal, \n /**\n * Range to be reavealed.\n */\n range, \n /**\n * Selections to be revealed.\n */\n selections, \n /**\n * The vertical reveal strategy.\n */\n verticalType, \n /**\n * If true: there should be a horizontal & vertical revealing.\n * If false: there should be just a vertical revealing.\n */\n revealHorizontal, \n /**\n * The scroll type.\n */\n scrollType) {\n this.source = source;\n this.minimalReveal = minimalReveal;\n this.range = range;\n this.selections = selections;\n this.verticalType = verticalType;\n this.revealHorizontal = revealHorizontal;\n this.scrollType = scrollType;\n this.type = 12 /* ViewEventType.ViewRevealRangeRequest */;\n }\n}\nclass ViewScrollChangedEvent {\n constructor(source) {\n this.type = 13 /* ViewEventType.ViewScrollChanged */;\n this.scrollWidth = source.scrollWidth;\n this.scrollLeft = source.scrollLeft;\n this.scrollHeight = source.scrollHeight;\n this.scrollTop = source.scrollTop;\n this.scrollWidthChanged = source.scrollWidthChanged;\n this.scrollLeftChanged = source.scrollLeftChanged;\n this.scrollHeightChanged = source.scrollHeightChanged;\n this.scrollTopChanged = source.scrollTopChanged;\n }\n}\nclass ViewThemeChangedEvent {\n constructor(theme) {\n this.theme = theme;\n this.type = 14 /* ViewEventType.ViewThemeChanged */;\n }\n}\nclass ViewTokensChangedEvent {\n constructor(ranges) {\n this.type = 15 /* ViewEventType.ViewTokensChanged */;\n this.ranges = ranges;\n }\n}\nclass ViewTokensColorsChangedEvent {\n constructor() {\n this.type = 16 /* ViewEventType.ViewTokensColorsChanged */;\n // Nothing to do\n }\n}\nclass ViewZonesChangedEvent {\n constructor() {\n this.type = 17 /* ViewEventType.ViewZonesChanged */;\n // Nothing to do\n }\n}\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/common/viewEvents.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/common/viewLayout/lineDecorations.js":
/*!***************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/common/viewLayout/lineDecorations.js ***!
\***************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ DecorationSegment: () => (/* binding */ DecorationSegment),\n/* harmony export */ LineDecoration: () => (/* binding */ LineDecoration),\n/* harmony export */ LineDecorationsNormalizer: () => (/* binding */ LineDecorationsNormalizer)\n/* harmony export */ });\n/* harmony import */ var _base_common_strings_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../base/common/strings.js */ \"./node_modules/monaco-editor/esm/vs/base/common/strings.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\nclass LineDecoration {\n constructor(startColumn, endColumn, className, type) {\n this.startColumn = startColumn;\n this.endColumn = endColumn;\n this.className = className;\n this.type = type;\n this._lineDecorationBrand = undefined;\n }\n static _equals(a, b) {\n return (a.startColumn === b.startColumn\n && a.endColumn === b.endColumn\n && a.className === b.className\n && a.type === b.type);\n }\n static equalsArr(a, b) {\n const aLen = a.length;\n const bLen = b.length;\n if (aLen !== bLen) {\n return false;\n }\n for (let i = 0; i < aLen; i++) {\n if (!LineDecoration._equals(a[i], b[i])) {\n return false;\n }\n }\n return true;\n }\n static extractWrapped(arr, startOffset, endOffset) {\n if (arr.length === 0) {\n return arr;\n }\n const startColumn = startOffset + 1;\n const endColumn = endOffset + 1;\n const lineLength = endOffset - startOffset;\n const r = [];\n let rLength = 0;\n for (const dec of arr) {\n if (dec.endColumn <= startColumn || dec.startColumn >= endColumn) {\n continue;\n }\n r[rLength++] = new LineDecoration(Math.max(1, dec.startColumn - startColumn + 1), Math.min(lineLength + 1, dec.endColumn - startColumn + 1), dec.className, dec.type);\n }\n return r;\n }\n static filter(lineDecorations, lineNumber, minLineColumn, maxLineColumn) {\n if (lineDecorations.length === 0) {\n return [];\n }\n const result = [];\n let resultLen = 0;\n for (let i = 0, len = lineDecorations.length; i < len; i++) {\n const d = lineDecorations[i];\n const range = d.range;\n if (range.endLineNumber < lineNumber || range.startLineNumber > lineNumber) {\n // Ignore decorations that sit outside this line\n continue;\n }\n if (range.isEmpty() && (d.type === 0 /* InlineDecorationType.Regular */ || d.type === 3 /* InlineDecorationType.RegularAffectingLetterSpacing */)) {\n // Ignore empty range decorations\n continue;\n }\n const startColumn = (range.startLineNumber === lineNumber ? range.startColumn : minLineColumn);\n const endColumn = (range.endLineNumber === lineNumber ? range.endColumn : maxLineColumn);\n result[resultLen++] = new LineDecoration(startColumn, endColumn, d.inlineClassName, d.type);\n }\n return result;\n }\n static _typeCompare(a, b) {\n const ORDER = [2, 0, 1, 3];\n return ORDER[a] - ORDER[b];\n }\n static compare(a, b) {\n if (a.startColumn !== b.startColumn) {\n return a.startColumn - b.startColumn;\n }\n if (a.endColumn !== b.endColumn) {\n return a.endColumn - b.endColumn;\n }\n const typeCmp = LineDecoration._typeCompare(a.type, b.type);\n if (typeCmp !== 0) {\n return typeCmp;\n }\n if (a.className !== b.className) {\n return a.className < b.className ? -1 : 1;\n }\n return 0;\n }\n}\nclass DecorationSegment {\n constructor(startOffset, endOffset, className, metadata) {\n this.startOffset = startOffset;\n this.endOffset = endOffset;\n this.className = className;\n this.metadata = metadata;\n }\n}\nclass Stack {\n constructor() {\n this.stopOffsets = [];\n this.classNames = [];\n this.metadata = [];\n this.count = 0;\n }\n static _metadata(metadata) {\n let result = 0;\n for (let i = 0, len = metadata.length; i < len; i++) {\n result |= metadata[i];\n }\n return result;\n }\n consumeLowerThan(maxStopOffset, nextStartOffset, result) {\n while (this.count > 0 && this.stopOffsets[0] < maxStopOffset) {\n let i = 0;\n // Take all equal stopping offsets\n while (i + 1 < this.count && this.stopOffsets[i] === this.stopOffsets[i + 1]) {\n i++;\n }\n // Basically we are consuming the first i + 1 elements of the stack\n result.push(new DecorationSegment(nextStartOffset, this.stopOffsets[i], this.classNames.join(' '), Stack._metadata(this.metadata)));\n nextStartOffset = this.stopOffsets[i] + 1;\n // Consume them\n this.stopOffsets.splice(0, i + 1);\n this.classNames.splice(0, i + 1);\n this.metadata.splice(0, i + 1);\n this.count -= (i + 1);\n }\n if (this.count > 0 && nextStartOffset < maxStopOffset) {\n result.push(new DecorationSegment(nextStartOffset, maxStopOffset - 1, this.classNames.join(' '), Stack._metadata(this.metadata)));\n nextStartOffset = maxStopOffset;\n }\n return nextStartOffset;\n }\n insert(stopOffset, className, metadata) {\n if (this.count === 0 || this.stopOffsets[this.count - 1] <= stopOffset) {\n // Insert at the end\n this.stopOffsets.push(stopOffset);\n this.classNames.push(className);\n this.metadata.push(metadata);\n }\n else {\n // Find the insertion position for `stopOffset`\n for (let i = 0; i < this.count; i++) {\n if (this.stopOffsets[i] >= stopOffset) {\n this.stopOffsets.splice(i, 0, stopOffset);\n this.classNames.splice(i, 0, className);\n this.metadata.splice(i, 0, metadata);\n break;\n }\n }\n }\n this.count++;\n return;\n }\n}\nclass LineDecorationsNormalizer {\n /**\n * Normalize line decorations. Overlapping decorations will generate multiple segments\n */\n static normalize(lineContent, lineDecorations) {\n if (lineDecorations.length === 0) {\n return [];\n }\n const result = [];\n const stack = new Stack();\n let nextStartOffset = 0;\n for (let i = 0, len = lineDecorations.length; i < len; i++) {\n const d = lineDecorations[i];\n let startColumn = d.startColumn;\n let endColumn = d.endColumn;\n const className = d.className;\n const metadata = (d.type === 1 /* InlineDecorationType.Before */\n ? 2 /* LinePartMetadata.PSEUDO_BEFORE */\n : d.type === 2 /* InlineDecorationType.After */\n ? 4 /* LinePartMetadata.PSEUDO_AFTER */\n : 0);\n // If the position would end up in the middle of a high-low surrogate pair, we move it to before the pair\n if (startColumn > 1) {\n const charCodeBefore = lineContent.charCodeAt(startColumn - 2);\n if (_base_common_strings_js__WEBPACK_IMPORTED_MODULE_0__.isHighSurrogate(charCodeBefore)) {\n startColumn--;\n }\n }\n if (endColumn > 1) {\n const charCodeBefore = lineContent.charCodeAt(endColumn - 2);\n if (_base_common_strings_js__WEBPACK_IMPORTED_MODULE_0__.isHighSurrogate(charCodeBefore)) {\n endColumn--;\n }\n }\n const currentStartOffset = startColumn - 1;\n const currentEndOffset = endColumn - 2;\n nextStartOffset = stack.consumeLowerThan(currentStartOffset, nextStartOffset, result);\n if (stack.count === 0) {\n nextStartOffset = currentStartOffset;\n }\n stack.insert(currentEndOffset, className, metadata);\n }\n stack.consumeLowerThan(1073741824 /* Constants.MAX_SAFE_SMALL_INTEGER */, nextStartOffset, result);\n return result;\n }\n}\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/common/viewLayout/lineDecorations.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/common/viewLayout/linePart.js":
/*!********************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/common/viewLayout/linePart.js ***!
\********************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ LinePart: () => (/* binding */ LinePart)\n/* harmony export */ });\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\nclass LinePart {\n constructor(\n /**\n * last char index of this token (not inclusive).\n */\n endIndex, type, metadata, containsRTL) {\n this.endIndex = endIndex;\n this.type = type;\n this.metadata = metadata;\n this.containsRTL = containsRTL;\n this._linePartBrand = undefined;\n }\n isWhitespace() {\n return (this.metadata & 1 /* LinePartMetadata.IS_WHITESPACE_MASK */ ? true : false);\n }\n isPseudoAfter() {\n return (this.metadata & 4 /* LinePartMetadata.PSEUDO_AFTER_MASK */ ? true : false);\n }\n}\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/common/viewLayout/linePart.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/common/viewLayout/linesLayout.js":
/*!***********************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/common/viewLayout/linesLayout.js ***!
\***********************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ EditorWhitespace: () => (/* binding */ EditorWhitespace),\n/* harmony export */ LinesLayout: () => (/* binding */ LinesLayout)\n/* harmony export */ });\n/* harmony import */ var _base_common_strings_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../base/common/strings.js */ \"./node_modules/monaco-editor/esm/vs/base/common/strings.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\nclass PendingChanges {\n constructor() {\n this._hasPending = false;\n this._inserts = [];\n this._changes = [];\n this._removes = [];\n }\n insert(x) {\n this._hasPending = true;\n this._inserts.push(x);\n }\n change(x) {\n this._hasPending = true;\n this._changes.push(x);\n }\n remove(x) {\n this._hasPending = true;\n this._removes.push(x);\n }\n mustCommit() {\n return this._hasPending;\n }\n commit(linesLayout) {\n if (!this._hasPending) {\n return;\n }\n const inserts = this._inserts;\n const changes = this._changes;\n const removes = this._removes;\n this._hasPending = false;\n this._inserts = [];\n this._changes = [];\n this._removes = [];\n linesLayout._commitPendingChanges(inserts, changes, removes);\n }\n}\nclass EditorWhitespace {\n constructor(id, afterLineNumber, ordinal, height, minWidth) {\n this.id = id;\n this.afterLineNumber = afterLineNumber;\n this.ordinal = ordinal;\n this.height = height;\n this.minWidth = minWidth;\n this.prefixSum = 0;\n }\n}\n/**\n * Layouting of objects that take vertical space (by having a height) and push down other objects.\n *\n * These objects are basically either text (lines) or spaces between those lines (whitespaces).\n * This provides commodity operations for working with lines that contain whitespace that pushes lines lower (vertically).\n */\nclass LinesLayout {\n constructor(lineCount, lineHeight, paddingTop, paddingBottom) {\n this._instanceId = _base_common_strings_js__WEBPACK_IMPORTED_MODULE_0__.singleLetterHash(++LinesLayout.INSTANCE_COUNT);\n this._pendingChanges = new PendingChanges();\n this._lastWhitespaceId = 0;\n this._arr = [];\n this._prefixSumValidIndex = -1;\n this._minWidth = -1; /* marker for not being computed */\n this._lineCount = lineCount;\n this._lineHeight = lineHeight;\n this._paddingTop = paddingTop;\n this._paddingBottom = paddingBottom;\n }\n /**\n * Find the insertion index for a new value inside a sorted array of values.\n * If the value is already present in the sorted array, the insertion index will be after the already existing value.\n */\n static findInsertionIndex(arr, afterLineNumber, ordinal) {\n let low = 0;\n let high = arr.length;\n while (low < high) {\n const mid = ((low + high) >>> 1);\n if (afterLineNumber === arr[mid].afterLineNumber) {\n if (ordinal < arr[mid].ordinal) {\n high = mid;\n }\n else {\n low = mid + 1;\n }\n }\n else if (afterLineNumber < arr[mid].afterLineNumber) {\n high = mid;\n }\n else {\n low = mid + 1;\n }\n }\n return low;\n }\n /**\n * Change the height of a line in pixels.\n */\n setLineHeight(lineHeight) {\n this._checkPendingChanges();\n this._lineHeight = lineHeight;\n }\n /**\n * Changes the padding used to calculate vertical offsets.\n */\n setPadding(paddingTop, paddingBottom) {\n this._paddingTop = paddingTop;\n this._paddingBottom = paddingBottom;\n }\n /**\n * Set the number of lines.\n *\n * @param lineCount New number of lines.\n */\n onFlushed(lineCount) {\n this._checkPendingChanges();\n this._lineCount = lineCount;\n }\n changeWhitespace(callback) {\n let hadAChange = false;\n try {\n const accessor = {\n insertWhitespace: (afterLineNumber, ordinal, heightInPx, minWidth) => {\n hadAChange = true;\n afterLineNumber = afterLineNumber | 0;\n ordinal = ordinal | 0;\n heightInPx = heightInPx | 0;\n minWidth = minWidth | 0;\n const id = this._instanceId + (++this._lastWhitespaceId);\n this._pendingChanges.insert(new EditorWhitespace(id, afterLineNumber, ordinal, heightInPx, minWidth));\n return id;\n },\n changeOneWhitespace: (id, newAfterLineNumber, newHeight) => {\n hadAChange = true;\n newAfterLineNumber = newAfterLineNumber | 0;\n newHeight = newHeight | 0;\n this._pendingChanges.change({ id, newAfterLineNumber, newHeight });\n },\n removeWhitespace: (id) => {\n hadAChange = true;\n this._pendingChanges.remove({ id });\n }\n };\n callback(accessor);\n }\n finally {\n this._pendingChanges.commit(this);\n }\n return hadAChange;\n }\n _commitPendingChanges(inserts, changes, removes) {\n if (inserts.length > 0 || removes.length > 0) {\n this._minWidth = -1; /* marker for not being computed */\n }\n if (inserts.length + changes.length + removes.length <= 1) {\n // when only one thing happened, handle it \"delicately\"\n for (const insert of inserts) {\n this._insertWhitespace(insert);\n }\n for (const change of changes) {\n this._changeOneWhitespace(change.id, change.newAfterLineNumber, change.newHeight);\n }\n for (const remove of removes) {\n const index = this._findWhitespaceIndex(remove.id);\n if (index === -1) {\n continue;\n }\n this._removeWhitespace(index);\n }\n return;\n }\n // simply rebuild the entire datastructure\n const toRemove = new Set();\n for (const remove of removes) {\n toRemove.add(remove.id);\n }\n const toChange = new Map();\n for (const change of changes) {\n toChange.set(change.id, change);\n }\n const applyRemoveAndChange = (whitespaces) => {\n const result = [];\n for (const whitespace of whitespaces) {\n if (toRemove.has(whitespace.id)) {\n continue;\n }\n if (toChange.has(whitespace.id)) {\n const change = toChange.get(whitespace.id);\n whitespace.afterLineNumber = change.newAfterLineNumber;\n whitespace.height = change.newHeight;\n }\n result.push(whitespace);\n }\n return result;\n };\n const result = applyRemoveAndChange(this._arr).concat(applyRemoveAndChange(inserts));\n result.sort((a, b) => {\n if (a.afterLineNumber === b.afterLineNumber) {\n return a.ordinal - b.ordinal;\n }\n return a.afterLineNumber - b.afterLineNumber;\n });\n this._arr = result;\n this._prefixSumValidIndex = -1;\n }\n _checkPendingChanges() {\n if (this._pendingChanges.mustCommit()) {\n this._pendingChanges.commit(this);\n }\n }\n _insertWhitespace(whitespace) {\n const insertIndex = LinesLayout.findInsertionIndex(this._arr, whitespace.afterLineNumber, whitespace.ordinal);\n this._arr.splice(insertIndex, 0, whitespace);\n this._prefixSumValidIndex = Math.min(this._prefixSumValidIndex, insertIndex - 1);\n }\n _findWhitespaceIndex(id) {\n const arr = this._arr;\n for (let i = 0, len = arr.length; i < len; i++) {\n if (arr[i].id === id) {\n return i;\n }\n }\n return -1;\n }\n _changeOneWhitespace(id, newAfterLineNumber, newHeight) {\n const index = this._findWhitespaceIndex(id);\n if (index === -1) {\n return;\n }\n if (this._arr[index].height !== newHeight) {\n this._arr[index].height = newHeight;\n this._prefixSumValidIndex = Math.min(this._prefixSumValidIndex, index - 1);\n }\n if (this._arr[index].afterLineNumber !== newAfterLineNumber) {\n // `afterLineNumber` changed for this whitespace\n // Record old whitespace\n const whitespace = this._arr[index];\n // Since changing `afterLineNumber` can trigger a reordering, we're gonna remove this whitespace\n this._removeWhitespace(index);\n whitespace.afterLineNumber = newAfterLineNumber;\n // And add it again\n this._insertWhitespace(whitespace);\n }\n }\n _removeWhitespace(removeIndex) {\n this._arr.splice(removeIndex, 1);\n this._prefixSumValidIndex = Math.min(this._prefixSumValidIndex, removeIndex - 1);\n }\n /**\n * Notify the layouter that lines have been deleted (a continuous zone of lines).\n *\n * @param fromLineNumber The line number at which the deletion started, inclusive\n * @param toLineNumber The line number at which the deletion ended, inclusive\n */\n onLinesDeleted(fromLineNumber, toLineNumber) {\n this._checkPendingChanges();\n fromLineNumber = fromLineNumber | 0;\n toLineNumber = toLineNumber | 0;\n this._lineCount -= (toLineNumber - fromLineNumber + 1);\n for (let i = 0, len = this._arr.length; i < len; i++) {\n const afterLineNumber = this._arr[i].afterLineNumber;\n if (fromLineNumber <= afterLineNumber && afterLineNumber <= toLineNumber) {\n // The line this whitespace was after has been deleted\n // => move whitespace to before first deleted line\n this._arr[i].afterLineNumber = fromLineNumber - 1;\n }\n else if (afterLineNumber > toLineNumber) {\n // The line this whitespace was after has been moved up\n // => move whitespace up\n this._arr[i].afterLineNumber -= (toLineNumber - fromLineNumber + 1);\n }\n }\n }\n /**\n * Notify the layouter that lines have been inserted (a continuous zone of lines).\n *\n * @param fromLineNumber The line number at which the insertion started, inclusive\n * @param toLineNumber The line number at which the insertion ended, inclusive.\n */\n onLinesInserted(fromLineNumber, toLineNumber) {\n this._checkPendingChanges();\n fromLineNumber = fromLineNumber | 0;\n toLineNumber = toLineNumber | 0;\n this._lineCount += (toLineNumber - fromLineNumber + 1);\n for (let i = 0, len = this._arr.length; i < len; i++) {\n const afterLineNumber = this._arr[i].afterLineNumber;\n if (fromLineNumber <= afterLineNumber) {\n this._arr[i].afterLineNumber += (toLineNumber - fromLineNumber + 1);\n }\n }\n }\n /**\n * Get the sum of all the whitespaces.\n */\n getWhitespacesTotalHeight() {\n this._checkPendingChanges();\n if (this._arr.length === 0) {\n return 0;\n }\n return this.getWhitespacesAccumulatedHeight(this._arr.length - 1);\n }\n /**\n * Return the sum of the heights of the whitespaces at [0..index].\n * This includes the whitespace at `index`.\n *\n * @param index The index of the whitespace.\n * @return The sum of the heights of all whitespaces before the one at `index`, including the one at `index`.\n */\n getWhitespacesAccumulatedHeight(index) {\n this._checkPendingChanges();\n index = index | 0;\n let startIndex = Math.max(0, this._prefixSumValidIndex + 1);\n if (startIndex === 0) {\n this._arr[0].prefixSum = this._arr[0].height;\n startIndex++;\n }\n for (let i = startIndex; i <= index; i++) {\n this._arr[i].prefixSum = this._arr[i - 1].prefixSum + this._arr[i].height;\n }\n this._prefixSumValidIndex = Math.max(this._prefixSumValidIndex, index);\n return this._arr[index].prefixSum;\n }\n /**\n * Get the sum of heights for all objects.\n *\n * @return The sum of heights for all objects.\n */\n getLinesTotalHeight() {\n this._checkPendingChanges();\n const linesHeight = this._lineHeight * this._lineCount;\n const whitespacesHeight = this.getWhitespacesTotalHeight();\n return linesHeight + whitespacesHeight + this._paddingTop + this._paddingBottom;\n }\n /**\n * Returns the accumulated height of whitespaces before the given line number.\n *\n * @param lineNumber The line number\n */\n getWhitespaceAccumulatedHeightBeforeLineNumber(lineNumber) {\n this._checkPendingChanges();\n lineNumber = lineNumber | 0;\n const lastWhitespaceBeforeLineNumber = this._findLastWhitespaceBeforeLineNumber(lineNumber);\n if (lastWhitespaceBeforeLineNumber === -1) {\n return 0;\n }\n return this.getWhitespacesAccumulatedHeight(lastWhitespaceBeforeLineNumber);\n }\n _findLastWhitespaceBeforeLineNumber(lineNumber) {\n lineNumber = lineNumber | 0;\n // Find the whitespace before line number\n const arr = this._arr;\n let low = 0;\n let high = arr.length - 1;\n while (low <= high) {\n const delta = (high - low) | 0;\n const halfDelta = (delta / 2) | 0;\n const mid = (low + halfDelta) | 0;\n if (arr[mid].afterLineNumber < lineNumber) {\n if (mid + 1 >= arr.length || arr[mid + 1].afterLineNumber >= lineNumber) {\n return mid;\n }\n else {\n low = (mid + 1) | 0;\n }\n }\n else {\n high = (mid - 1) | 0;\n }\n }\n return -1;\n }\n _findFirstWhitespaceAfterLineNumber(lineNumber) {\n lineNumber = lineNumber | 0;\n const lastWhitespaceBeforeLineNumber = this._findLastWhitespaceBeforeLineNumber(lineNumber);\n const firstWhitespaceAfterLineNumber = lastWhitespaceBeforeLineNumber + 1;\n if (firstWhitespaceAfterLineNumber < this._arr.length) {\n return firstWhitespaceAfterLineNumber;\n }\n return -1;\n }\n /**\n * Find the index of the first whitespace which has `afterLineNumber` >= `lineNumber`.\n * @return The index of the first whitespace with `afterLineNumber` >= `lineNumber` or -1 if no whitespace is found.\n */\n getFirstWhitespaceIndexAfterLineNumber(lineNumber) {\n this._checkPendingChanges();\n lineNumber = lineNumber | 0;\n return this._findFirstWhitespaceAfterLineNumber(lineNumber);\n }\n /**\n * Get the vertical offset (the sum of heights for all objects above) a certain line number.\n *\n * @param lineNumber The line number\n * @return The sum of heights for all objects above `lineNumber`.\n */\n getVerticalOffsetForLineNumber(lineNumber, includeViewZones = false) {\n this._checkPendingChanges();\n lineNumber = lineNumber | 0;\n let previousLinesHeight;\n if (lineNumber > 1) {\n previousLinesHeight = this._lineHeight * (lineNumber - 1);\n }\n else {\n previousLinesHeight = 0;\n }\n const previousWhitespacesHeight = this.getWhitespaceAccumulatedHeightBeforeLineNumber(lineNumber - (includeViewZones ? 1 : 0));\n return previousLinesHeight + previousWhitespacesHeight + this._paddingTop;\n }\n /**\n * Get the vertical offset (the sum of heights for all objects above) a certain line number.\n *\n * @param lineNumber The line number\n * @return The sum of heights for all objects above `lineNumber`.\n */\n getVerticalOffsetAfterLineNumber(lineNumber, includeViewZones = false) {\n this._checkPendingChanges();\n lineNumber = lineNumber | 0;\n const previousLinesHeight = this._lineHeight * lineNumber;\n const previousWhitespacesHeight = this.getWhitespaceAccumulatedHeightBeforeLineNumber(lineNumber + (includeViewZones ? 1 : 0));\n return previousLinesHeight + previousWhitespacesHeight + this._paddingTop;\n }\n /**\n * The maximum min width for all whitespaces.\n */\n getWhitespaceMinWidth() {\n this._checkPendingChanges();\n if (this._minWidth === -1) {\n let minWidth = 0;\n for (let i = 0, len = this._arr.length; i < len; i++) {\n minWidth = Math.max(minWidth, this._arr[i].minWidth);\n }\n this._minWidth = minWidth;\n }\n return this._minWidth;\n }\n /**\n * Check if `verticalOffset` is below all lines.\n */\n isAfterLines(verticalOffset) {\n this._checkPendingChanges();\n const totalHeight = this.getLinesTotalHeight();\n return verticalOffset > totalHeight;\n }\n isInTopPadding(verticalOffset) {\n if (this._paddingTop === 0) {\n return false;\n }\n this._checkPendingChanges();\n return (verticalOffset < this._paddingTop);\n }\n isInBottomPadding(verticalOffset) {\n if (this._paddingBottom === 0) {\n return false;\n }\n this._checkPendingChanges();\n const totalHeight = this.getLinesTotalHeight();\n return (verticalOffset >= totalHeight - this._paddingBottom);\n }\n /**\n * Find the first line number that is at or after vertical offset `verticalOffset`.\n * i.e. if getVerticalOffsetForLine(line) is x and getVerticalOffsetForLine(line + 1) is y, then\n * getLineNumberAtOrAfterVerticalOffset(i) = line, x <= i < y.\n *\n * @param verticalOffset The vertical offset to search at.\n * @return The line number at or after vertical offset `verticalOffset`.\n */\n getLineNumberAtOrAfterVerticalOffset(verticalOffset) {\n this._checkPendingChanges();\n verticalOffset = verticalOffset | 0;\n if (verticalOffset < 0) {\n return 1;\n }\n const linesCount = this._lineCount | 0;\n const lineHeight = this._lineHeight;\n let minLineNumber = 1;\n let maxLineNumber = linesCount;\n while (minLineNumber < maxLineNumber) {\n const midLineNumber = ((minLineNumber + maxLineNumber) / 2) | 0;\n const midLineNumberVerticalOffset = this.getVerticalOffsetForLineNumber(midLineNumber) | 0;\n if (verticalOffset >= midLineNumberVerticalOffset + lineHeight) {\n // vertical offset is after mid line number\n minLineNumber = midLineNumber + 1;\n }\n else if (verticalOffset >= midLineNumberVerticalOffset) {\n // Hit\n return midLineNumber;\n }\n else {\n // vertical offset is before mid line number, but mid line number could still be what we're searching for\n maxLineNumber = midLineNumber;\n }\n }\n if (minLineNumber > linesCount) {\n return linesCount;\n }\n return minLineNumber;\n }\n /**\n * Get all the lines and their relative vertical offsets that are positioned between `verticalOffset1` and `verticalOffset2`.\n *\n * @param verticalOffset1 The beginning of the viewport.\n * @param verticalOffset2 The end of the viewport.\n * @return A structure describing the lines positioned between `verticalOffset1` and `verticalOffset2`.\n */\n getLinesViewportData(verticalOffset1, verticalOffset2) {\n this._checkPendingChanges();\n verticalOffset1 = verticalOffset1 | 0;\n verticalOffset2 = verticalOffset2 | 0;\n const lineHeight = this._lineHeight;\n // Find first line number\n // We don't live in a perfect world, so the line number might start before or after verticalOffset1\n const startLineNumber = this.getLineNumberAtOrAfterVerticalOffset(verticalOffset1) | 0;\n const startLineNumberVerticalOffset = this.getVerticalOffsetForLineNumber(startLineNumber) | 0;\n let endLineNumber = this._lineCount | 0;\n // Also keep track of what whitespace we've got\n let whitespaceIndex = this.getFirstWhitespaceIndexAfterLineNumber(startLineNumber) | 0;\n const whitespaceCount = this.getWhitespacesCount() | 0;\n let currentWhitespaceHeight;\n let currentWhitespaceAfterLineNumber;\n if (whitespaceIndex === -1) {\n whitespaceIndex = whitespaceCount;\n currentWhitespaceAfterLineNumber = endLineNumber + 1;\n currentWhitespaceHeight = 0;\n }\n else {\n currentWhitespaceAfterLineNumber = this.getAfterLineNumberForWhitespaceIndex(whitespaceIndex) | 0;\n currentWhitespaceHeight = this.getHeightForWhitespaceIndex(whitespaceIndex) | 0;\n }\n let currentVerticalOffset = startLineNumberVerticalOffset;\n let currentLineRelativeOffset = currentVerticalOffset;\n // IE (all versions) cannot handle units above about 1,533,908 px, so every 500k pixels bring numbers down\n const STEP_SIZE = 500000;\n let bigNumbersDelta = 0;\n if (startLineNumberVerticalOffset >= STEP_SIZE) {\n // Compute a delta that guarantees that lines are positioned at `lineHeight` increments\n bigNumbersDelta = Math.floor(startLineNumberVerticalOffset / STEP_SIZE) * STEP_SIZE;\n bigNumbersDelta = Math.floor(bigNumbersDelta / lineHeight) * lineHeight;\n currentLineRelativeOffset -= bigNumbersDelta;\n }\n const linesOffsets = [];\n const verticalCenter = verticalOffset1 + (verticalOffset2 - verticalOffset1) / 2;\n let centeredLineNumber = -1;\n // Figure out how far the lines go\n for (let lineNumber = startLineNumber; lineNumber <= endLineNumber; lineNumber++) {\n if (centeredLineNumber === -1) {\n const currentLineTop = currentVerticalOffset;\n const currentLineBottom = currentVerticalOffset + lineHeight;\n if ((currentLineTop <= verticalCenter && verticalCenter < currentLineBottom) || currentLineTop > verticalCenter) {\n centeredLineNumber = lineNumber;\n }\n }\n // Count current line height in the vertical offsets\n currentVerticalOffset += lineHeight;\n linesOffsets[lineNumber - startLineNumber] = currentLineRelativeOffset;\n // Next line starts immediately after this one\n currentLineRelativeOffset += lineHeight;\n while (currentWhitespaceAfterLineNumber === lineNumber) {\n // Push down next line with the height of the current whitespace\n currentLineRelativeOffset += currentWhitespaceHeight;\n // Count current whitespace in the vertical offsets\n currentVerticalOffset += currentWhitespaceHeight;\n whitespaceIndex++;\n if (whitespaceIndex >= whitespaceCount) {\n currentWhitespaceAfterLineNumber = endLineNumber + 1;\n }\n else {\n currentWhitespaceAfterLineNumber = this.getAfterLineNumberForWhitespaceIndex(whitespaceIndex) | 0;\n currentWhitespaceHeight = this.getHeightForWhitespaceIndex(whitespaceIndex) | 0;\n }\n }\n if (currentVerticalOffset >= verticalOffset2) {\n // We have covered the entire viewport area, time to stop\n endLineNumber = lineNumber;\n break;\n }\n }\n if (centeredLineNumber === -1) {\n centeredLineNumber = endLineNumber;\n }\n const endLineNumberVerticalOffset = this.getVerticalOffsetForLineNumber(endLineNumber) | 0;\n let completelyVisibleStartLineNumber = startLineNumber;\n let completelyVisibleEndLineNumber = endLineNumber;\n if (completelyVisibleStartLineNumber < completelyVisibleEndLineNumber) {\n if (startLineNumberVerticalOffset < verticalOffset1) {\n completelyVisibleStartLineNumber++;\n }\n }\n if (completelyVisibleStartLineNumber < completelyVisibleEndLineNumber) {\n if (endLineNumberVerticalOffset + lineHeight > verticalOffset2) {\n completelyVisibleEndLineNumber--;\n }\n }\n return {\n bigNumbersDelta: bigNumbersDelta,\n startLineNumber: startLineNumber,\n endLineNumber: endLineNumber,\n relativeVerticalOffset: linesOffsets,\n centeredLineNumber: centeredLineNumber,\n completelyVisibleStartLineNumber: completelyVisibleStartLineNumber,\n completelyVisibleEndLineNumber: completelyVisibleEndLineNumber\n };\n }\n getVerticalOffsetForWhitespaceIndex(whitespaceIndex) {\n this._checkPendingChanges();\n whitespaceIndex = whitespaceIndex | 0;\n const afterLineNumber = this.getAfterLineNumberForWhitespaceIndex(whitespaceIndex);\n let previousLinesHeight;\n if (afterLineNumber >= 1) {\n previousLinesHeight = this._lineHeight * afterLineNumber;\n }\n else {\n previousLinesHeight = 0;\n }\n let previousWhitespacesHeight;\n if (whitespaceIndex > 0) {\n previousWhitespacesHeight = this.getWhitespacesAccumulatedHeight(whitespaceIndex - 1);\n }\n else {\n previousWhitespacesHeight = 0;\n }\n return previousLinesHeight + previousWhitespacesHeight + this._paddingTop;\n }\n getWhitespaceIndexAtOrAfterVerticallOffset(verticalOffset) {\n this._checkPendingChanges();\n verticalOffset = verticalOffset | 0;\n let minWhitespaceIndex = 0;\n let maxWhitespaceIndex = this.getWhitespacesCount() - 1;\n if (maxWhitespaceIndex < 0) {\n return -1;\n }\n // Special case: nothing to be found\n const maxWhitespaceVerticalOffset = this.getVerticalOffsetForWhitespaceIndex(maxWhitespaceIndex);\n const maxWhitespaceHeight = this.getHeightForWhitespaceIndex(maxWhitespaceIndex);\n if (verticalOffset >= maxWhitespaceVerticalOffset + maxWhitespaceHeight) {\n return -1;\n }\n while (minWhitespaceIndex < maxWhitespaceIndex) {\n const midWhitespaceIndex = Math.floor((minWhitespaceIndex + maxWhitespaceIndex) / 2);\n const midWhitespaceVerticalOffset = this.getVerticalOffsetForWhitespaceIndex(midWhitespaceIndex);\n const midWhitespaceHeight = this.getHeightForWhitespaceIndex(midWhitespaceIndex);\n if (verticalOffset >= midWhitespaceVerticalOffset + midWhitespaceHeight) {\n // vertical offset is after whitespace\n minWhitespaceIndex = midWhitespaceIndex + 1;\n }\n else if (verticalOffset >= midWhitespaceVerticalOffset) {\n // Hit\n return midWhitespaceIndex;\n }\n else {\n // vertical offset is before whitespace, but midWhitespaceIndex might still be what we're searching for\n maxWhitespaceIndex = midWhitespaceIndex;\n }\n }\n return minWhitespaceIndex;\n }\n /**\n * Get exactly the whitespace that is layouted at `verticalOffset`.\n *\n * @param verticalOffset The vertical offset.\n * @return Precisely the whitespace that is layouted at `verticaloffset` or null.\n */\n getWhitespaceAtVerticalOffset(verticalOffset) {\n this._checkPendingChanges();\n verticalOffset = verticalOffset | 0;\n const candidateIndex = this.getWhitespaceIndexAtOrAfterVerticallOffset(verticalOffset);\n if (candidateIndex < 0) {\n return null;\n }\n if (candidateIndex >= this.getWhitespacesCount()) {\n return null;\n }\n const candidateTop = this.getVerticalOffsetForWhitespaceIndex(candidateIndex);\n if (candidateTop > verticalOffset) {\n return null;\n }\n const candidateHeight = this.getHeightForWhitespaceIndex(candidateIndex);\n const candidateId = this.getIdForWhitespaceIndex(candidateIndex);\n const candidateAfterLineNumber = this.getAfterLineNumberForWhitespaceIndex(candidateIndex);\n return {\n id: candidateId,\n afterLineNumber: candidateAfterLineNumber,\n verticalOffset: candidateTop,\n height: candidateHeight\n };\n }\n /**\n * Get a list of whitespaces that are positioned between `verticalOffset1` and `verticalOffset2`.\n *\n * @param verticalOffset1 The beginning of the viewport.\n * @param verticalOffset2 The end of the viewport.\n * @return An array with all the whitespaces in the viewport. If no whitespace is in viewport, the array is empty.\n */\n getWhitespaceViewportData(verticalOffset1, verticalOffset2) {\n this._checkPendingChanges();\n verticalOffset1 = verticalOffset1 | 0;\n verticalOffset2 = verticalOffset2 | 0;\n const startIndex = this.getWhitespaceIndexAtOrAfterVerticallOffset(verticalOffset1);\n const endIndex = this.getWhitespacesCount() - 1;\n if (startIndex < 0) {\n return [];\n }\n const result = [];\n for (let i = startIndex; i <= endIndex; i++) {\n const top = this.getVerticalOffsetForWhitespaceIndex(i);\n const height = this.getHeightForWhitespaceIndex(i);\n if (top >= verticalOffset2) {\n break;\n }\n result.push({\n id: this.getIdForWhitespaceIndex(i),\n afterLineNumber: this.getAfterLineNumberForWhitespaceIndex(i),\n verticalOffset: top,\n height: height\n });\n }\n return result;\n }\n /**\n * Get all whitespaces.\n */\n getWhitespaces() {\n this._checkPendingChanges();\n return this._arr.slice(0);\n }\n /**\n * The number of whitespaces.\n */\n getWhitespacesCount() {\n this._checkPendingChanges();\n return this._arr.length;\n }\n /**\n * Get the `id` for whitespace at index `index`.\n *\n * @param index The index of the whitespace.\n * @return `id` of whitespace at `index`.\n */\n getIdForWhitespaceIndex(index) {\n this._checkPendingChanges();\n index = index | 0;\n return this._arr[index].id;\n }\n /**\n * Get the `afterLineNumber` for whitespace at index `index`.\n *\n * @param index The index of the whitespace.\n * @return `afterLineNumber` of whitespace at `index`.\n */\n getAfterLineNumberForWhitespaceIndex(index) {\n this._checkPendingChanges();\n index = index | 0;\n return this._arr[index].afterLineNumber;\n }\n /**\n * Get the `height` for whitespace at index `index`.\n *\n * @param index The index of the whitespace.\n * @return `height` of whitespace at `index`.\n */\n getHeightForWhitespaceIndex(index) {\n this._checkPendingChanges();\n index = index | 0;\n return this._arr[index].height;\n }\n}\nLinesLayout.INSTANCE_COUNT = 0;\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/common/viewLayout/linesLayout.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/common/viewLayout/viewLayout.js":
/*!**********************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/common/viewLayout/viewLayout.js ***!
\**********************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ ViewLayout: () => (/* binding */ ViewLayout)\n/* harmony export */ });\n/* harmony import */ var _base_common_event_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../base/common/event.js */ \"./node_modules/monaco-editor/esm/vs/base/common/event.js\");\n/* harmony import */ var _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../base/common/lifecycle.js */ \"./node_modules/monaco-editor/esm/vs/base/common/lifecycle.js\");\n/* harmony import */ var _base_common_scrollable_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../base/common/scrollable.js */ \"./node_modules/monaco-editor/esm/vs/base/common/scrollable.js\");\n/* harmony import */ var _linesLayout_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./linesLayout.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/viewLayout/linesLayout.js\");\n/* harmony import */ var _viewModel_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../viewModel.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/viewModel.js\");\n/* harmony import */ var _viewModelEventDispatcher_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../viewModelEventDispatcher.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/viewModelEventDispatcher.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n\n\n\n\n\nconst SMOOTH_SCROLLING_TIME = 125;\nclass EditorScrollDimensions {\n constructor(width, contentWidth, height, contentHeight) {\n width = width | 0;\n contentWidth = contentWidth | 0;\n height = height | 0;\n contentHeight = contentHeight | 0;\n if (width < 0) {\n width = 0;\n }\n if (contentWidth < 0) {\n contentWidth = 0;\n }\n if (height < 0) {\n height = 0;\n }\n if (contentHeight < 0) {\n contentHeight = 0;\n }\n this.width = width;\n this.contentWidth = contentWidth;\n this.scrollWidth = Math.max(width, contentWidth);\n this.height = height;\n this.contentHeight = contentHeight;\n this.scrollHeight = Math.max(height, contentHeight);\n }\n equals(other) {\n return (this.width === other.width\n && this.contentWidth === other.contentWidth\n && this.height === other.height\n && this.contentHeight === other.contentHeight);\n }\n}\nclass EditorScrollable extends _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_1__.Disposable {\n constructor(smoothScrollDuration, scheduleAtNextAnimationFrame) {\n super();\n this._onDidContentSizeChange = this._register(new _base_common_event_js__WEBPACK_IMPORTED_MODULE_0__.Emitter());\n this.onDidContentSizeChange = this._onDidContentSizeChange.event;\n this._dimensions = new EditorScrollDimensions(0, 0, 0, 0);\n this._scrollable = this._register(new _base_common_scrollable_js__WEBPACK_IMPORTED_MODULE_2__.Scrollable({\n forceIntegerValues: true,\n smoothScrollDuration,\n scheduleAtNextAnimationFrame\n }));\n this.onDidScroll = this._scrollable.onScroll;\n }\n getScrollable() {\n return this._scrollable;\n }\n setSmoothScrollDuration(smoothScrollDuration) {\n this._scrollable.setSmoothScrollDuration(smoothScrollDuration);\n }\n validateScrollPosition(scrollPosition) {\n return this._scrollable.validateScrollPosition(scrollPosition);\n }\n getScrollDimensions() {\n return this._dimensions;\n }\n setScrollDimensions(dimensions) {\n if (this._dimensions.equals(dimensions)) {\n return;\n }\n const oldDimensions = this._dimensions;\n this._dimensions = dimensions;\n this._scrollable.setScrollDimensions({\n width: dimensions.width,\n scrollWidth: dimensions.scrollWidth,\n height: dimensions.height,\n scrollHeight: dimensions.scrollHeight\n }, true);\n const contentWidthChanged = (oldDimensions.contentWidth !== dimensions.contentWidth);\n const contentHeightChanged = (oldDimensions.contentHeight !== dimensions.contentHeight);\n if (contentWidthChanged || contentHeightChanged) {\n this._onDidContentSizeChange.fire(new _viewModelEventDispatcher_js__WEBPACK_IMPORTED_MODULE_5__.ContentSizeChangedEvent(oldDimensions.contentWidth, oldDimensions.contentHeight, dimensions.contentWidth, dimensions.contentHeight));\n }\n }\n getFutureScrollPosition() {\n return this._scrollable.getFutureScrollPosition();\n }\n getCurrentScrollPosition() {\n return this._scrollable.getCurrentScrollPosition();\n }\n setScrollPositionNow(update) {\n this._scrollable.setScrollPositionNow(update);\n }\n setScrollPositionSmooth(update) {\n this._scrollable.setScrollPositionSmooth(update);\n }\n hasPendingScrollAnimation() {\n return this._scrollable.hasPendingScrollAnimation();\n }\n}\nclass ViewLayout extends _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_1__.Disposable {\n constructor(configuration, lineCount, scheduleAtNextAnimationFrame) {\n super();\n this._configuration = configuration;\n const options = this._configuration.options;\n const layoutInfo = options.get(144 /* EditorOption.layoutInfo */);\n const padding = options.get(84 /* EditorOption.padding */);\n this._linesLayout = new _linesLayout_js__WEBPACK_IMPORTED_MODULE_3__.LinesLayout(lineCount, options.get(67 /* EditorOption.lineHeight */), padding.top, padding.bottom);\n this._maxLineWidth = 0;\n this._overlayWidgetsMinWidth = 0;\n this._scrollable = this._register(new EditorScrollable(0, scheduleAtNextAnimationFrame));\n this._configureSmoothScrollDuration();\n this._scrollable.setScrollDimensions(new EditorScrollDimensions(layoutInfo.contentWidth, 0, layoutInfo.height, 0));\n this.onDidScroll = this._scrollable.onDidScroll;\n this.onDidContentSizeChange = this._scrollable.onDidContentSizeChange;\n this._updateHeight();\n }\n dispose() {\n super.dispose();\n }\n getScrollable() {\n return this._scrollable.getScrollable();\n }\n onHeightMaybeChanged() {\n this._updateHeight();\n }\n _configureSmoothScrollDuration() {\n this._scrollable.setSmoothScrollDuration(this._configuration.options.get(114 /* EditorOption.smoothScrolling */) ? SMOOTH_SCROLLING_TIME : 0);\n }\n // ---- begin view event handlers\n onConfigurationChanged(e) {\n const options = this._configuration.options;\n if (e.hasChanged(67 /* EditorOption.lineHeight */)) {\n this._linesLayout.setLineHeight(options.get(67 /* EditorOption.lineHeight */));\n }\n if (e.hasChanged(84 /* EditorOption.padding */)) {\n const padding = options.get(84 /* EditorOption.padding */);\n this._linesLayout.setPadding(padding.top, padding.bottom);\n }\n if (e.hasChanged(144 /* EditorOption.layoutInfo */)) {\n const layoutInfo = options.get(144 /* EditorOption.layoutInfo */);\n const width = layoutInfo.contentWidth;\n const height = layoutInfo.height;\n const scrollDimensions = this._scrollable.getScrollDimensions();\n const contentWidth = scrollDimensions.contentWidth;\n this._scrollable.setScrollDimensions(new EditorScrollDimensions(width, scrollDimensions.contentWidth, height, this._getContentHeight(width, height, contentWidth)));\n }\n else {\n this._updateHeight();\n }\n if (e.hasChanged(114 /* EditorOption.smoothScrolling */)) {\n this._configureSmoothScrollDuration();\n }\n }\n onFlushed(lineCount) {\n this._linesLayout.onFlushed(lineCount);\n }\n onLinesDeleted(fromLineNumber, toLineNumber) {\n this._linesLayout.onLinesDeleted(fromLineNumber, toLineNumber);\n }\n onLinesInserted(fromLineNumber, toLineNumber) {\n this._linesLayout.onLinesInserted(fromLineNumber, toLineNumber);\n }\n // ---- end view event handlers\n _getHorizontalScrollbarHeight(width, scrollWidth) {\n const options = this._configuration.options;\n const scrollbar = options.get(103 /* EditorOption.scrollbar */);\n if (scrollbar.horizontal === 2 /* ScrollbarVisibility.Hidden */) {\n // horizontal scrollbar not visible\n return 0;\n }\n if (width >= scrollWidth) {\n // horizontal scrollbar not visible\n return 0;\n }\n return scrollbar.horizontalScrollbarSize;\n }\n _getContentHeight(width, height, contentWidth) {\n const options = this._configuration.options;\n let result = this._linesLayout.getLinesTotalHeight();\n if (options.get(105 /* EditorOption.scrollBeyondLastLine */)) {\n result += Math.max(0, height - options.get(67 /* EditorOption.lineHeight */) - options.get(84 /* EditorOption.padding */).bottom);\n }\n else if (!options.get(103 /* EditorOption.scrollbar */).ignoreHorizontalScrollbarInContentHeight) {\n result += this._getHorizontalScrollbarHeight(width, contentWidth);\n }\n return result;\n }\n _updateHeight() {\n const scrollDimensions = this._scrollable.getScrollDimensions();\n const width = scrollDimensions.width;\n const height = scrollDimensions.height;\n const contentWidth = scrollDimensions.contentWidth;\n this._scrollable.setScrollDimensions(new EditorScrollDimensions(width, scrollDimensions.contentWidth, height, this._getContentHeight(width, height, contentWidth)));\n }\n // ---- Layouting logic\n getCurrentViewport() {\n const scrollDimensions = this._scrollable.getScrollDimensions();\n const currentScrollPosition = this._scrollable.getCurrentScrollPosition();\n return new _viewModel_js__WEBPACK_IMPORTED_MODULE_4__.Viewport(currentScrollPosition.scrollTop, currentScrollPosition.scrollLeft, scrollDimensions.width, scrollDimensions.height);\n }\n getFutureViewport() {\n const scrollDimensions = this._scrollable.getScrollDimensions();\n const currentScrollPosition = this._scrollable.getFutureScrollPosition();\n return new _viewModel_js__WEBPACK_IMPORTED_MODULE_4__.Viewport(currentScrollPosition.scrollTop, currentScrollPosition.scrollLeft, scrollDimensions.width, scrollDimensions.height);\n }\n _computeContentWidth() {\n const options = this._configuration.options;\n const maxLineWidth = this._maxLineWidth;\n const wrappingInfo = options.get(145 /* EditorOption.wrappingInfo */);\n const fontInfo = options.get(50 /* EditorOption.fontInfo */);\n const layoutInfo = options.get(144 /* EditorOption.layoutInfo */);\n if (wrappingInfo.isViewportWrapping) {\n const minimap = options.get(73 /* EditorOption.minimap */);\n if (maxLineWidth > layoutInfo.contentWidth + fontInfo.typicalHalfwidthCharacterWidth) {\n // This is a case where viewport wrapping is on, but the line extends above the viewport\n if (minimap.enabled && minimap.side === 'right') {\n // We need to accomodate the scrollbar width\n return maxLineWidth + layoutInfo.verticalScrollbarWidth;\n }\n }\n return maxLineWidth;\n }\n else {\n const extraHorizontalSpace = options.get(104 /* EditorOption.scrollBeyondLastColumn */) * fontInfo.typicalHalfwidthCharacterWidth;\n const whitespaceMinWidth = this._linesLayout.getWhitespaceMinWidth();\n return Math.max(maxLineWidth + extraHorizontalSpace + layoutInfo.verticalScrollbarWidth, whitespaceMinWidth, this._overlayWidgetsMinWidth);\n }\n }\n setMaxLineWidth(maxLineWidth) {\n this._maxLineWidth = maxLineWidth;\n this._updateContentWidth();\n }\n setOverlayWidgetsMinWidth(maxMinWidth) {\n this._overlayWidgetsMinWidth = maxMinWidth;\n this._updateContentWidth();\n }\n _updateContentWidth() {\n const scrollDimensions = this._scrollable.getScrollDimensions();\n this._scrollable.setScrollDimensions(new EditorScrollDimensions(scrollDimensions.width, this._computeContentWidth(), scrollDimensions.height, scrollDimensions.contentHeight));\n // The height might depend on the fact that there is a horizontal scrollbar or not\n this._updateHeight();\n }\n // ---- view state\n saveState() {\n const currentScrollPosition = this._scrollable.getFutureScrollPosition();\n const scrollTop = currentScrollPosition.scrollTop;\n const firstLineNumberInViewport = this._linesLayout.getLineNumberAtOrAfterVerticalOffset(scrollTop);\n const whitespaceAboveFirstLine = this._linesLayout.getWhitespaceAccumulatedHeightBeforeLineNumber(firstLineNumberInViewport);\n return {\n scrollTop: scrollTop,\n scrollTopWithoutViewZones: scrollTop - whitespaceAboveFirstLine,\n scrollLeft: currentScrollPosition.scrollLeft\n };\n }\n // ----\n changeWhitespace(callback) {\n const hadAChange = this._linesLayout.changeWhitespace(callback);\n if (hadAChange) {\n this.onHeightMaybeChanged();\n }\n return hadAChange;\n }\n getVerticalOffsetForLineNumber(lineNumber, includeViewZones = false) {\n return this._linesLayout.getVerticalOffsetForLineNumber(lineNumber, includeViewZones);\n }\n getVerticalOffsetAfterLineNumber(lineNumber, includeViewZones = false) {\n return this._linesLayout.getVerticalOffsetAfterLineNumber(lineNumber, includeViewZones);\n }\n isAfterLines(verticalOffset) {\n return this._linesLayout.isAfterLines(verticalOffset);\n }\n isInTopPadding(verticalOffset) {\n return this._linesLayout.isInTopPadding(verticalOffset);\n }\n isInBottomPadding(verticalOffset) {\n return this._linesLayout.isInBottomPadding(verticalOffset);\n }\n getLineNumberAtVerticalOffset(verticalOffset) {\n return this._linesLayout.getLineNumberAtOrAfterVerticalOffset(verticalOffset);\n }\n getWhitespaceAtVerticalOffset(verticalOffset) {\n return this._linesLayout.getWhitespaceAtVerticalOffset(verticalOffset);\n }\n getLinesViewportData() {\n const visibleBox = this.getCurrentViewport();\n return this._linesLayout.getLinesViewportData(visibleBox.top, visibleBox.top + visibleBox.height);\n }\n getLinesViewportDataAtScrollTop(scrollTop) {\n // do some minimal validations on scrollTop\n const scrollDimensions = this._scrollable.getScrollDimensions();\n if (scrollTop + scrollDimensions.height > scrollDimensions.scrollHeight) {\n scrollTop = scrollDimensions.scrollHeight - scrollDimensions.height;\n }\n if (scrollTop < 0) {\n scrollTop = 0;\n }\n return this._linesLayout.getLinesViewportData(scrollTop, scrollTop + scrollDimensions.height);\n }\n getWhitespaceViewportData() {\n const visibleBox = this.getCurrentViewport();\n return this._linesLayout.getWhitespaceViewportData(visibleBox.top, visibleBox.top + visibleBox.height);\n }\n getWhitespaces() {\n return this._linesLayout.getWhitespaces();\n }\n // ----\n getContentWidth() {\n const scrollDimensions = this._scrollable.getScrollDimensions();\n return scrollDimensions.contentWidth;\n }\n getScrollWidth() {\n const scrollDimensions = this._scrollable.getScrollDimensions();\n return scrollDimensions.scrollWidth;\n }\n getContentHeight() {\n const scrollDimensions = this._scrollable.getScrollDimensions();\n return scrollDimensions.contentHeight;\n }\n getScrollHeight() {\n const scrollDimensions = this._scrollable.getScrollDimensions();\n return scrollDimensions.scrollHeight;\n }\n getCurrentScrollLeft() {\n const currentScrollPosition = this._scrollable.getCurrentScrollPosition();\n return currentScrollPosition.scrollLeft;\n }\n getCurrentScrollTop() {\n const currentScrollPosition = this._scrollable.getCurrentScrollPosition();\n return currentScrollPosition.scrollTop;\n }\n validateScrollPosition(scrollPosition) {\n return this._scrollable.validateScrollPosition(scrollPosition);\n }\n setScrollPosition(position, type) {\n if (type === 1 /* ScrollType.Immediate */) {\n this._scrollable.setScrollPositionNow(position);\n }\n else {\n this._scrollable.setScrollPositionSmooth(position);\n }\n }\n hasPendingScrollAnimation() {\n return this._scrollable.hasPendingScrollAnimation();\n }\n deltaScrollNow(deltaScrollLeft, deltaScrollTop) {\n const currentScrollPosition = this._scrollable.getCurrentScrollPosition();\n this._scrollable.setScrollPositionNow({\n scrollLeft: currentScrollPosition.scrollLeft + deltaScrollLeft,\n scrollTop: currentScrollPosition.scrollTop + deltaScrollTop\n });\n }\n}\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/common/viewLayout/viewLayout.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/common/viewLayout/viewLineRenderer.js":
/*!****************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/common/viewLayout/viewLineRenderer.js ***!
\****************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ CharacterMapping: () => (/* binding */ CharacterMapping),\n/* harmony export */ DomPosition: () => (/* binding */ DomPosition),\n/* harmony export */ LineRange: () => (/* binding */ LineRange),\n/* harmony export */ RenderLineInput: () => (/* binding */ RenderLineInput),\n/* harmony export */ RenderLineOutput: () => (/* binding */ RenderLineOutput),\n/* harmony export */ RenderLineOutput2: () => (/* binding */ RenderLineOutput2),\n/* harmony export */ renderViewLine: () => (/* binding */ renderViewLine),\n/* harmony export */ renderViewLine2: () => (/* binding */ renderViewLine2)\n/* harmony export */ });\n/* harmony import */ var _nls_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../nls.js */ \"./node_modules/monaco-editor/esm/vs/nls.js\");\n/* harmony import */ var _base_common_strings_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../base/common/strings.js */ \"./node_modules/monaco-editor/esm/vs/base/common/strings.js\");\n/* harmony import */ var _core_stringBuilder_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../core/stringBuilder.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/core/stringBuilder.js\");\n/* harmony import */ var _lineDecorations_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./lineDecorations.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/viewLayout/lineDecorations.js\");\n/* harmony import */ var _linePart_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./linePart.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/viewLayout/linePart.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n\n\n\n\nclass LineRange {\n constructor(startIndex, endIndex) {\n this.startOffset = startIndex;\n this.endOffset = endIndex;\n }\n equals(otherLineRange) {\n return this.startOffset === otherLineRange.startOffset\n && this.endOffset === otherLineRange.endOffset;\n }\n}\nclass RenderLineInput {\n constructor(useMonospaceOptimizations, canUseHalfwidthRightwardsArrow, lineContent, continuesWithWrappedLine, isBasicASCII, containsRTL, fauxIndentLength, lineTokens, lineDecorations, tabSize, startVisibleColumn, spaceWidth, middotWidth, wsmiddotWidth, stopRenderingLineAfter, renderWhitespace, renderControlCharacters, fontLigatures, selectionsOnLine) {\n this.useMonospaceOptimizations = useMonospaceOptimizations;\n this.canUseHalfwidthRightwardsArrow = canUseHalfwidthRightwardsArrow;\n this.lineContent = lineContent;\n this.continuesWithWrappedLine = continuesWithWrappedLine;\n this.isBasicASCII = isBasicASCII;\n this.containsRTL = containsRTL;\n this.fauxIndentLength = fauxIndentLength;\n this.lineTokens = lineTokens;\n this.lineDecorations = lineDecorations.sort(_lineDecorations_js__WEBPACK_IMPORTED_MODULE_3__.LineDecoration.compare);\n this.tabSize = tabSize;\n this.startVisibleColumn = startVisibleColumn;\n this.spaceWidth = spaceWidth;\n this.stopRenderingLineAfter = stopRenderingLineAfter;\n this.renderWhitespace = (renderWhitespace === 'all'\n ? 4 /* RenderWhitespace.All */\n : renderWhitespace === 'boundary'\n ? 1 /* RenderWhitespace.Boundary */\n : renderWhitespace === 'selection'\n ? 2 /* RenderWhitespace.Selection */\n : renderWhitespace === 'trailing'\n ? 3 /* RenderWhitespace.Trailing */\n : 0 /* RenderWhitespace.None */);\n this.renderControlCharacters = renderControlCharacters;\n this.fontLigatures = fontLigatures;\n this.selectionsOnLine = selectionsOnLine && selectionsOnLine.sort((a, b) => a.startOffset < b.startOffset ? -1 : 1);\n const wsmiddotDiff = Math.abs(wsmiddotWidth - spaceWidth);\n const middotDiff = Math.abs(middotWidth - spaceWidth);\n if (wsmiddotDiff < middotDiff) {\n this.renderSpaceWidth = wsmiddotWidth;\n this.renderSpaceCharCode = 0x2E31; // U+2E31 - WORD SEPARATOR MIDDLE DOT\n }\n else {\n this.renderSpaceWidth = middotWidth;\n this.renderSpaceCharCode = 0xB7; // U+00B7 - MIDDLE DOT\n }\n }\n sameSelection(otherSelections) {\n if (this.selectionsOnLine === null) {\n return otherSelections === null;\n }\n if (otherSelections === null) {\n return false;\n }\n if (otherSelections.length !== this.selectionsOnLine.length) {\n return false;\n }\n for (let i = 0; i < this.selectionsOnLine.length; i++) {\n if (!this.selectionsOnLine[i].equals(otherSelections[i])) {\n return false;\n }\n }\n return true;\n }\n equals(other) {\n return (this.useMonospaceOptimizations === other.useMonospaceOptimizations\n && this.canUseHalfwidthRightwardsArrow === other.canUseHalfwidthRightwardsArrow\n && this.lineContent === other.lineContent\n && this.continuesWithWrappedLine === other.continuesWithWrappedLine\n && this.isBasicASCII === other.isBasicASCII\n && this.containsRTL === other.containsRTL\n && this.fauxIndentLength === other.fauxIndentLength\n && this.tabSize === other.tabSize\n && this.startVisibleColumn === other.startVisibleColumn\n && this.spaceWidth === other.spaceWidth\n && this.renderSpaceWidth === other.renderSpaceWidth\n && this.renderSpaceCharCode === other.renderSpaceCharCode\n && this.stopRenderingLineAfter === other.stopRenderingLineAfter\n && this.renderWhitespace === other.renderWhitespace\n && this.renderControlCharacters === other.renderControlCharacters\n && this.fontLigatures === other.fontLigatures\n && _lineDecorations_js__WEBPACK_IMPORTED_MODULE_3__.LineDecoration.equalsArr(this.lineDecorations, other.lineDecorations)\n && this.lineTokens.equals(other.lineTokens)\n && this.sameSelection(other.selectionsOnLine));\n }\n}\nclass DomPosition {\n constructor(partIndex, charIndex) {\n this.partIndex = partIndex;\n this.charIndex = charIndex;\n }\n}\n/**\n * Provides a both direction mapping between a line's character and its rendered position.\n */\nclass CharacterMapping {\n static getPartIndex(partData) {\n return (partData & 4294901760 /* CharacterMappingConstants.PART_INDEX_MASK */) >>> 16 /* CharacterMappingConstants.PART_INDEX_OFFSET */;\n }\n static getCharIndex(partData) {\n return (partData & 65535 /* CharacterMappingConstants.CHAR_INDEX_MASK */) >>> 0 /* CharacterMappingConstants.CHAR_INDEX_OFFSET */;\n }\n constructor(length, partCount) {\n this.length = length;\n this._data = new Uint32Array(this.length);\n this._horizontalOffset = new Uint32Array(this.length);\n }\n setColumnInfo(column, partIndex, charIndex, horizontalOffset) {\n const partData = ((partIndex << 16 /* CharacterMappingConstants.PART_INDEX_OFFSET */)\n | (charIndex << 0 /* CharacterMappingConstants.CHAR_INDEX_OFFSET */)) >>> 0;\n this._data[column - 1] = partData;\n this._horizontalOffset[column - 1] = horizontalOffset;\n }\n getHorizontalOffset(column) {\n if (this._horizontalOffset.length === 0) {\n // No characters on this line\n return 0;\n }\n return this._horizontalOffset[column - 1];\n }\n charOffsetToPartData(charOffset) {\n if (this.length === 0) {\n return 0;\n }\n if (charOffset < 0) {\n return this._data[0];\n }\n if (charOffset >= this.length) {\n return this._data[this.length - 1];\n }\n return this._data[charOffset];\n }\n getDomPosition(column) {\n const partData = this.charOffsetToPartData(column - 1);\n const partIndex = CharacterMapping.getPartIndex(partData);\n const charIndex = CharacterMapping.getCharIndex(partData);\n return new DomPosition(partIndex, charIndex);\n }\n getColumn(domPosition, partLength) {\n const charOffset = this.partDataToCharOffset(domPosition.partIndex, partLength, domPosition.charIndex);\n return charOffset + 1;\n }\n partDataToCharOffset(partIndex, partLength, charIndex) {\n if (this.length === 0) {\n return 0;\n }\n const searchEntry = ((partIndex << 16 /* CharacterMappingConstants.PART_INDEX_OFFSET */)\n | (charIndex << 0 /* CharacterMappingConstants.CHAR_INDEX_OFFSET */)) >>> 0;\n let min = 0;\n let max = this.length - 1;\n while (min + 1 < max) {\n const mid = ((min + max) >>> 1);\n const midEntry = this._data[mid];\n if (midEntry === searchEntry) {\n return mid;\n }\n else if (midEntry > searchEntry) {\n max = mid;\n }\n else {\n min = mid;\n }\n }\n if (min === max) {\n return min;\n }\n const minEntry = this._data[min];\n const maxEntry = this._data[max];\n if (minEntry === searchEntry) {\n return min;\n }\n if (maxEntry === searchEntry) {\n return max;\n }\n const minPartIndex = CharacterMapping.getPartIndex(minEntry);\n const minCharIndex = CharacterMapping.getCharIndex(minEntry);\n const maxPartIndex = CharacterMapping.getPartIndex(maxEntry);\n let maxCharIndex;\n if (minPartIndex !== maxPartIndex) {\n // sitting between parts\n maxCharIndex = partLength;\n }\n else {\n maxCharIndex = CharacterMapping.getCharIndex(maxEntry);\n }\n const minEntryDistance = charIndex - minCharIndex;\n const maxEntryDistance = maxCharIndex - charIndex;\n if (minEntryDistance <= maxEntryDistance) {\n return min;\n }\n return max;\n }\n}\nclass RenderLineOutput {\n constructor(characterMapping, containsRTL, containsForeignElements) {\n this._renderLineOutputBrand = undefined;\n this.characterMapping = characterMapping;\n this.containsRTL = containsRTL;\n this.containsForeignElements = containsForeignElements;\n }\n}\nfunction renderViewLine(input, sb) {\n if (input.lineContent.length === 0) {\n if (input.lineDecorations.length > 0) {\n // This line is empty, but it contains inline decorations\n sb.appendString(``);\n let beforeCount = 0;\n let afterCount = 0;\n let containsForeignElements = 0 /* ForeignElementType.None */;\n for (const lineDecoration of input.lineDecorations) {\n if (lineDecoration.type === 1 /* InlineDecorationType.Before */ || lineDecoration.type === 2 /* InlineDecorationType.After */) {\n sb.appendString(``);\n if (lineDecoration.type === 1 /* InlineDecorationType.Before */) {\n containsForeignElements |= 1 /* ForeignElementType.Before */;\n beforeCount++;\n }\n if (lineDecoration.type === 2 /* InlineDecorationType.After */) {\n containsForeignElements |= 2 /* ForeignElementType.After */;\n afterCount++;\n }\n }\n }\n sb.appendString(``);\n const characterMapping = new CharacterMapping(1, beforeCount + afterCount);\n characterMapping.setColumnInfo(1, beforeCount, 0, 0);\n return new RenderLineOutput(characterMapping, false, containsForeignElements);\n }\n // completely empty line\n sb.appendString('');\n return new RenderLineOutput(new CharacterMapping(0, 0), false, 0 /* ForeignElementType.None */);\n }\n return _renderLine(resolveRenderLineInput(input), sb);\n}\nclass RenderLineOutput2 {\n constructor(characterMapping, html, containsRTL, containsForeignElements) {\n this.characterMapping = characterMapping;\n this.html = html;\n this.containsRTL = containsRTL;\n this.containsForeignElements = containsForeignElements;\n }\n}\nfunction renderViewLine2(input) {\n const sb = new _core_stringBuilder_js__WEBPACK_IMPORTED_MODULE_2__.StringBuilder(10000);\n const out = renderViewLine(input, sb);\n return new RenderLineOutput2(out.characterMapping, sb.build(), out.containsRTL, out.containsForeignElements);\n}\nclass ResolvedRenderLineInput {\n constructor(fontIsMonospace, canUseHalfwidthRightwardsArrow, lineContent, len, isOverflowing, overflowingCharCount, parts, containsForeignElements, fauxIndentLength, tabSize, startVisibleColumn, containsRTL, spaceWidth, renderSpaceCharCode, renderWhitespace, renderControlCharacters) {\n this.fontIsMonospace = fontIsMonospace;\n this.canUseHalfwidthRightwardsArrow = canUseHalfwidthRightwardsArrow;\n this.lineContent = lineContent;\n this.len = len;\n this.isOverflowing = isOverflowing;\n this.overflowingCharCount = overflowingCharCount;\n this.parts = parts;\n this.containsForeignElements = containsForeignElements;\n this.fauxIndentLength = fauxIndentLength;\n this.tabSize = tabSize;\n this.startVisibleColumn = startVisibleColumn;\n this.containsRTL = containsRTL;\n this.spaceWidth = spaceWidth;\n this.renderSpaceCharCode = renderSpaceCharCode;\n this.renderWhitespace = renderWhitespace;\n this.renderControlCharacters = renderControlCharacters;\n //\n }\n}\nfunction resolveRenderLineInput(input) {\n const lineContent = input.lineContent;\n let isOverflowing;\n let overflowingCharCount;\n let len;\n if (input.stopRenderingLineAfter !== -1 && input.stopRenderingLineAfter < lineContent.length) {\n isOverflowing = true;\n overflowingCharCount = lineContent.length - input.stopRenderingLineAfter;\n len = input.stopRenderingLineAfter;\n }\n else {\n isOverflowing = false;\n overflowingCharCount = 0;\n len = lineContent.length;\n }\n let tokens = transformAndRemoveOverflowing(lineContent, input.containsRTL, input.lineTokens, input.fauxIndentLength, len);\n if (input.renderControlCharacters && !input.isBasicASCII) {\n // Calling `extractControlCharacters` before adding (possibly empty) line parts\n // for inline decorations. `extractControlCharacters` removes empty line parts.\n tokens = extractControlCharacters(lineContent, tokens);\n }\n if (input.renderWhitespace === 4 /* RenderWhitespace.All */ ||\n input.renderWhitespace === 1 /* RenderWhitespace.Boundary */ ||\n (input.renderWhitespace === 2 /* RenderWhitespace.Selection */ && !!input.selectionsOnLine) ||\n (input.renderWhitespace === 3 /* RenderWhitespace.Trailing */ && !input.continuesWithWrappedLine)) {\n tokens = _applyRenderWhitespace(input, lineContent, len, tokens);\n }\n let containsForeignElements = 0 /* ForeignElementType.None */;\n if (input.lineDecorations.length > 0) {\n for (let i = 0, len = input.lineDecorations.length; i < len; i++) {\n const lineDecoration = input.lineDecorations[i];\n if (lineDecoration.type === 3 /* InlineDecorationType.RegularAffectingLetterSpacing */) {\n // Pretend there are foreign elements... although not 100% accurate.\n containsForeignElements |= 1 /* ForeignElementType.Before */;\n }\n else if (lineDecoration.type === 1 /* InlineDecorationType.Before */) {\n containsForeignElements |= 1 /* ForeignElementType.Before */;\n }\n else if (lineDecoration.type === 2 /* InlineDecorationType.After */) {\n containsForeignElements |= 2 /* ForeignElementType.After */;\n }\n }\n tokens = _applyInlineDecorations(lineContent, len, tokens, input.lineDecorations);\n }\n if (!input.containsRTL) {\n // We can never split RTL text, as it ruins the rendering\n tokens = splitLargeTokens(lineContent, tokens, !input.isBasicASCII || input.fontLigatures);\n }\n return new ResolvedRenderLineInput(input.useMonospaceOptimizations, input.canUseHalfwidthRightwardsArrow, lineContent, len, isOverflowing, overflowingCharCount, tokens, containsForeignElements, input.fauxIndentLength, input.tabSize, input.startVisibleColumn, input.containsRTL, input.spaceWidth, input.renderSpaceCharCode, input.renderWhitespace, input.renderControlCharacters);\n}\n/**\n * In the rendering phase, characters are always looped until token.endIndex.\n * Ensure that all tokens end before `len` and the last one ends precisely at `len`.\n */\nfunction transformAndRemoveOverflowing(lineContent, lineContainsRTL, tokens, fauxIndentLength, len) {\n const result = [];\n let resultLen = 0;\n // The faux indent part of the line should have no token type\n if (fauxIndentLength > 0) {\n result[resultLen++] = new _linePart_js__WEBPACK_IMPORTED_MODULE_4__.LinePart(fauxIndentLength, '', 0, false);\n }\n let startOffset = fauxIndentLength;\n for (let tokenIndex = 0, tokensLen = tokens.getCount(); tokenIndex < tokensLen; tokenIndex++) {\n const endIndex = tokens.getEndOffset(tokenIndex);\n if (endIndex <= fauxIndentLength) {\n // The faux indent part of the line should have no token type\n continue;\n }\n const type = tokens.getClassName(tokenIndex);\n if (endIndex >= len) {\n const tokenContainsRTL = (lineContainsRTL ? _base_common_strings_js__WEBPACK_IMPORTED_MODULE_1__.containsRTL(lineContent.substring(startOffset, len)) : false);\n result[resultLen++] = new _linePart_js__WEBPACK_IMPORTED_MODULE_4__.LinePart(len, type, 0, tokenContainsRTL);\n break;\n }\n const tokenContainsRTL = (lineContainsRTL ? _base_common_strings_js__WEBPACK_IMPORTED_MODULE_1__.containsRTL(lineContent.substring(startOffset, endIndex)) : false);\n result[resultLen++] = new _linePart_js__WEBPACK_IMPORTED_MODULE_4__.LinePart(endIndex, type, 0, tokenContainsRTL);\n startOffset = endIndex;\n }\n return result;\n}\n/**\n * See https://github.com/microsoft/vscode/issues/6885.\n * It appears that having very large spans causes very slow reading of character positions.\n * So here we try to avoid that.\n */\nfunction splitLargeTokens(lineContent, tokens, onlyAtSpaces) {\n let lastTokenEndIndex = 0;\n const result = [];\n let resultLen = 0;\n if (onlyAtSpaces) {\n // Split only at spaces => we need to walk each character\n for (let i = 0, len = tokens.length; i < len; i++) {\n const token = tokens[i];\n const tokenEndIndex = token.endIndex;\n if (lastTokenEndIndex + 50 /* Constants.LongToken */ < tokenEndIndex) {\n const tokenType = token.type;\n const tokenMetadata = token.metadata;\n const tokenContainsRTL = token.containsRTL;\n let lastSpaceOffset = -1;\n let currTokenStart = lastTokenEndIndex;\n for (let j = lastTokenEndIndex; j < tokenEndIndex; j++) {\n if (lineContent.charCodeAt(j) === 32 /* CharCode.Space */) {\n lastSpaceOffset = j;\n }\n if (lastSpaceOffset !== -1 && j - currTokenStart >= 50 /* Constants.LongToken */) {\n // Split at `lastSpaceOffset` + 1\n result[resultLen++] = new _linePart_js__WEBPACK_IMPORTED_MODULE_4__.LinePart(lastSpaceOffset + 1, tokenType, tokenMetadata, tokenContainsRTL);\n currTokenStart = lastSpaceOffset + 1;\n lastSpaceOffset = -1;\n }\n }\n if (currTokenStart !== tokenEndIndex) {\n result[resultLen++] = new _linePart_js__WEBPACK_IMPORTED_MODULE_4__.LinePart(tokenEndIndex, tokenType, tokenMetadata, tokenContainsRTL);\n }\n }\n else {\n result[resultLen++] = token;\n }\n lastTokenEndIndex = tokenEndIndex;\n }\n }\n else {\n // Split anywhere => we don't need to walk each character\n for (let i = 0, len = tokens.length; i < len; i++) {\n const token = tokens[i];\n const tokenEndIndex = token.endIndex;\n const diff = (tokenEndIndex - lastTokenEndIndex);\n if (diff > 50 /* Constants.LongToken */) {\n const tokenType = token.type;\n const tokenMetadata = token.metadata;\n const tokenContainsRTL = token.containsRTL;\n const piecesCount = Math.ceil(diff / 50 /* Constants.LongToken */);\n for (let j = 1; j < piecesCount; j++) {\n const pieceEndIndex = lastTokenEndIndex + (j * 50 /* Constants.LongToken */);\n result[resultLen++] = new _linePart_js__WEBPACK_IMPORTED_MODULE_4__.LinePart(pieceEndIndex, tokenType, tokenMetadata, tokenContainsRTL);\n }\n result[resultLen++] = new _linePart_js__WEBPACK_IMPORTED_MODULE_4__.LinePart(tokenEndIndex, tokenType, tokenMetadata, tokenContainsRTL);\n }\n else {\n result[resultLen++] = token;\n }\n lastTokenEndIndex = tokenEndIndex;\n }\n }\n return result;\n}\nfunction isControlCharacter(charCode) {\n if (charCode < 32) {\n return (charCode !== 9 /* CharCode.Tab */);\n }\n if (charCode === 127) {\n // DEL\n return true;\n }\n if ((charCode >= 0x202A && charCode <= 0x202E)\n || (charCode >= 0x2066 && charCode <= 0x2069)\n || (charCode >= 0x200E && charCode <= 0x200F)\n || charCode === 0x061C) {\n // Unicode Directional Formatting Characters\n // LRE\tU+202A\tLEFT-TO-RIGHT EMBEDDING\n // RLE\tU+202B\tRIGHT-TO-LEFT EMBEDDING\n // PDF\tU+202C\tPOP DIRECTIONAL FORMATTING\n // LRO\tU+202D\tLEFT-TO-RIGHT OVERRIDE\n // RLO\tU+202E\tRIGHT-TO-LEFT OVERRIDE\n // LRI\tU+2066\tLEFT-TO-RIGHT ISOLATE\n // RLI\tU+2067\tRIGHT-TO-LEFT ISOLATE\n // FSI\tU+2068\tFIRST STRONG ISOLATE\n // PDI\tU+2069\tPOP DIRECTIONAL ISOLATE\n // LRM\tU+200E\tLEFT-TO-RIGHT MARK\n // RLM\tU+200F\tRIGHT-TO-LEFT MARK\n // ALM\tU+061C\tARABIC LETTER MARK\n return true;\n }\n return false;\n}\nfunction extractControlCharacters(lineContent, tokens) {\n const result = [];\n let lastLinePart = new _linePart_js__WEBPACK_IMPORTED_MODULE_4__.LinePart(0, '', 0, false);\n let charOffset = 0;\n for (const token of tokens) {\n const tokenEndIndex = token.endIndex;\n for (; charOffset < tokenEndIndex; charOffset++) {\n const charCode = lineContent.charCodeAt(charOffset);\n if (isControlCharacter(charCode)) {\n if (charOffset > lastLinePart.endIndex) {\n // emit previous part if it has text\n lastLinePart = new _linePart_js__WEBPACK_IMPORTED_MODULE_4__.LinePart(charOffset, token.type, token.metadata, token.containsRTL);\n result.push(lastLinePart);\n }\n lastLinePart = new _linePart_js__WEBPACK_IMPORTED_MODULE_4__.LinePart(charOffset + 1, 'mtkcontrol', token.metadata, false);\n result.push(lastLinePart);\n }\n }\n if (charOffset > lastLinePart.endIndex) {\n // emit previous part if it has text\n lastLinePart = new _linePart_js__WEBPACK_IMPORTED_MODULE_4__.LinePart(tokenEndIndex, token.type, token.metadata, token.containsRTL);\n result.push(lastLinePart);\n }\n }\n return result;\n}\n/**\n * Whitespace is rendered by \"replacing\" tokens with a special-purpose `mtkw` type that is later recognized in the rendering phase.\n * Moreover, a token is created for every visual indent because on some fonts the glyphs used for rendering whitespace (→ or ·) do not have the same width as .\n * The rendering phase will generate `style=\"width:...\"` for these tokens.\n */\nfunction _applyRenderWhitespace(input, lineContent, len, tokens) {\n const continuesWithWrappedLine = input.continuesWithWrappedLine;\n const fauxIndentLength = input.fauxIndentLength;\n const tabSize = input.tabSize;\n const startVisibleColumn = input.startVisibleColumn;\n const useMonospaceOptimizations = input.useMonospaceOptimizations;\n const selections = input.selectionsOnLine;\n const onlyBoundary = (input.renderWhitespace === 1 /* RenderWhitespace.Boundary */);\n const onlyTrailing = (input.renderWhitespace === 3 /* RenderWhitespace.Trailing */);\n const generateLinePartForEachWhitespace = (input.renderSpaceWidth !== input.spaceWidth);\n const result = [];\n let resultLen = 0;\n let tokenIndex = 0;\n let tokenType = tokens[tokenIndex].type;\n let tokenContainsRTL = tokens[tokenIndex].containsRTL;\n let tokenEndIndex = tokens[tokenIndex].endIndex;\n const tokensLength = tokens.length;\n let lineIsEmptyOrWhitespace = false;\n let firstNonWhitespaceIndex = _base_common_strings_js__WEBPACK_IMPORTED_MODULE_1__.firstNonWhitespaceIndex(lineContent);\n let lastNonWhitespaceIndex;\n if (firstNonWhitespaceIndex === -1) {\n lineIsEmptyOrWhitespace = true;\n firstNonWhitespaceIndex = len;\n lastNonWhitespaceIndex = len;\n }\n else {\n lastNonWhitespaceIndex = _base_common_strings_js__WEBPACK_IMPORTED_MODULE_1__.lastNonWhitespaceIndex(lineContent);\n }\n let wasInWhitespace = false;\n let currentSelectionIndex = 0;\n let currentSelection = selections && selections[currentSelectionIndex];\n let tmpIndent = startVisibleColumn % tabSize;\n for (let charIndex = fauxIndentLength; charIndex < len; charIndex++) {\n const chCode = lineContent.charCodeAt(charIndex);\n if (currentSelection && charIndex >= currentSelection.endOffset) {\n currentSelectionIndex++;\n currentSelection = selections && selections[currentSelectionIndex];\n }\n let isInWhitespace;\n if (charIndex < firstNonWhitespaceIndex || charIndex > lastNonWhitespaceIndex) {\n // in leading or trailing whitespace\n isInWhitespace = true;\n }\n else if (chCode === 9 /* CharCode.Tab */) {\n // a tab character is rendered both in all and boundary cases\n isInWhitespace = true;\n }\n else if (chCode === 32 /* CharCode.Space */) {\n // hit a space character\n if (onlyBoundary) {\n // rendering only boundary whitespace\n if (wasInWhitespace) {\n isInWhitespace = true;\n }\n else {\n const nextChCode = (charIndex + 1 < len ? lineContent.charCodeAt(charIndex + 1) : 0 /* CharCode.Null */);\n isInWhitespace = (nextChCode === 32 /* CharCode.Space */ || nextChCode === 9 /* CharCode.Tab */);\n }\n }\n else {\n isInWhitespace = true;\n }\n }\n else {\n isInWhitespace = false;\n }\n // If rendering whitespace on selection, check that the charIndex falls within a selection\n if (isInWhitespace && selections) {\n isInWhitespace = !!currentSelection && currentSelection.startOffset <= charIndex && currentSelection.endOffset > charIndex;\n }\n // If rendering only trailing whitespace, check that the charIndex points to trailing whitespace.\n if (isInWhitespace && onlyTrailing) {\n isInWhitespace = lineIsEmptyOrWhitespace || charIndex > lastNonWhitespaceIndex;\n }\n if (isInWhitespace && tokenContainsRTL) {\n // If the token contains RTL text, breaking it up into multiple line parts\n // to render whitespace might affect the browser's bidi layout.\n //\n // We render whitespace in such tokens only if the whitespace\n // is the leading or the trailing whitespace of the line,\n // which doesn't affect the browser's bidi layout.\n if (charIndex >= firstNonWhitespaceIndex && charIndex <= lastNonWhitespaceIndex) {\n isInWhitespace = false;\n }\n }\n if (wasInWhitespace) {\n // was in whitespace token\n if (!isInWhitespace || (!useMonospaceOptimizations && tmpIndent >= tabSize)) {\n // leaving whitespace token or entering a new indent\n if (generateLinePartForEachWhitespace) {\n const lastEndIndex = (resultLen > 0 ? result[resultLen - 1].endIndex : fauxIndentLength);\n for (let i = lastEndIndex + 1; i <= charIndex; i++) {\n result[resultLen++] = new _linePart_js__WEBPACK_IMPORTED_MODULE_4__.LinePart(i, 'mtkw', 1 /* LinePartMetadata.IS_WHITESPACE */, false);\n }\n }\n else {\n result[resultLen++] = new _linePart_js__WEBPACK_IMPORTED_MODULE_4__.LinePart(charIndex, 'mtkw', 1 /* LinePartMetadata.IS_WHITESPACE */, false);\n }\n tmpIndent = tmpIndent % tabSize;\n }\n }\n else {\n // was in regular token\n if (charIndex === tokenEndIndex || (isInWhitespace && charIndex > fauxIndentLength)) {\n result[resultLen++] = new _linePart_js__WEBPACK_IMPORTED_MODULE_4__.LinePart(charIndex, tokenType, 0, tokenContainsRTL);\n tmpIndent = tmpIndent % tabSize;\n }\n }\n if (chCode === 9 /* CharCode.Tab */) {\n tmpIndent = tabSize;\n }\n else if (_base_common_strings_js__WEBPACK_IMPORTED_MODULE_1__.isFullWidthCharacter(chCode)) {\n tmpIndent += 2;\n }\n else {\n tmpIndent++;\n }\n wasInWhitespace = isInWhitespace;\n while (charIndex === tokenEndIndex) {\n tokenIndex++;\n if (tokenIndex < tokensLength) {\n tokenType = tokens[tokenIndex].type;\n tokenContainsRTL = tokens[tokenIndex].containsRTL;\n tokenEndIndex = tokens[tokenIndex].endIndex;\n }\n else {\n break;\n }\n }\n }\n let generateWhitespace = false;\n if (wasInWhitespace) {\n // was in whitespace token\n if (continuesWithWrappedLine && onlyBoundary) {\n const lastCharCode = (len > 0 ? lineContent.charCodeAt(len - 1) : 0 /* CharCode.Null */);\n const prevCharCode = (len > 1 ? lineContent.charCodeAt(len - 2) : 0 /* CharCode.Null */);\n const isSingleTrailingSpace = (lastCharCode === 32 /* CharCode.Space */ && (prevCharCode !== 32 /* CharCode.Space */ && prevCharCode !== 9 /* CharCode.Tab */));\n if (!isSingleTrailingSpace) {\n generateWhitespace = true;\n }\n }\n else {\n generateWhitespace = true;\n }\n }\n if (generateWhitespace) {\n if (generateLinePartForEachWhitespace) {\n const lastEndIndex = (resultLen > 0 ? result[resultLen - 1].endIndex : fauxIndentLength);\n for (let i = lastEndIndex + 1; i <= len; i++) {\n result[resultLen++] = new _linePart_js__WEBPACK_IMPORTED_MODULE_4__.LinePart(i, 'mtkw', 1 /* LinePartMetadata.IS_WHITESPACE */, false);\n }\n }\n else {\n result[resultLen++] = new _linePart_js__WEBPACK_IMPORTED_MODULE_4__.LinePart(len, 'mtkw', 1 /* LinePartMetadata.IS_WHITESPACE */, false);\n }\n }\n else {\n result[resultLen++] = new _linePart_js__WEBPACK_IMPORTED_MODULE_4__.LinePart(len, tokenType, 0, tokenContainsRTL);\n }\n return result;\n}\n/**\n * Inline decorations are \"merged\" on top of tokens.\n * Special care must be taken when multiple inline decorations are at play and they overlap.\n */\nfunction _applyInlineDecorations(lineContent, len, tokens, _lineDecorations) {\n _lineDecorations.sort(_lineDecorations_js__WEBPACK_IMPORTED_MODULE_3__.LineDecoration.compare);\n const lineDecorations = _lineDecorations_js__WEBPACK_IMPORTED_MODULE_3__.LineDecorationsNormalizer.normalize(lineContent, _lineDecorations);\n const lineDecorationsLen = lineDecorations.length;\n let lineDecorationIndex = 0;\n const result = [];\n let resultLen = 0;\n let lastResultEndIndex = 0;\n for (let tokenIndex = 0, len = tokens.length; tokenIndex < len; tokenIndex++) {\n const token = tokens[tokenIndex];\n const tokenEndIndex = token.endIndex;\n const tokenType = token.type;\n const tokenMetadata = token.metadata;\n const tokenContainsRTL = token.containsRTL;\n while (lineDecorationIndex < lineDecorationsLen && lineDecorations[lineDecorationIndex].startOffset < tokenEndIndex) {\n const lineDecoration = lineDecorations[lineDecorationIndex];\n if (lineDecoration.startOffset > lastResultEndIndex) {\n lastResultEndIndex = lineDecoration.startOffset;\n result[resultLen++] = new _linePart_js__WEBPACK_IMPORTED_MODULE_4__.LinePart(lastResultEndIndex, tokenType, tokenMetadata, tokenContainsRTL);\n }\n if (lineDecoration.endOffset + 1 <= tokenEndIndex) {\n // This line decoration ends before this token ends\n lastResultEndIndex = lineDecoration.endOffset + 1;\n result[resultLen++] = new _linePart_js__WEBPACK_IMPORTED_MODULE_4__.LinePart(lastResultEndIndex, tokenType + ' ' + lineDecoration.className, tokenMetadata | lineDecoration.metadata, tokenContainsRTL);\n lineDecorationIndex++;\n }\n else {\n // This line decoration continues on to the next token\n lastResultEndIndex = tokenEndIndex;\n result[resultLen++] = new _linePart_js__WEBPACK_IMPORTED_MODULE_4__.LinePart(lastResultEndIndex, tokenType + ' ' + lineDecoration.className, tokenMetadata | lineDecoration.metadata, tokenContainsRTL);\n break;\n }\n }\n if (tokenEndIndex > lastResultEndIndex) {\n lastResultEndIndex = tokenEndIndex;\n result[resultLen++] = new _linePart_js__WEBPACK_IMPORTED_MODULE_4__.LinePart(lastResultEndIndex, tokenType, tokenMetadata, tokenContainsRTL);\n }\n }\n const lastTokenEndIndex = tokens[tokens.length - 1].endIndex;\n if (lineDecorationIndex < lineDecorationsLen && lineDecorations[lineDecorationIndex].startOffset === lastTokenEndIndex) {\n while (lineDecorationIndex < lineDecorationsLen && lineDecorations[lineDecorationIndex].startOffset === lastTokenEndIndex) {\n const lineDecoration = lineDecorations[lineDecorationIndex];\n result[resultLen++] = new _linePart_js__WEBPACK_IMPORTED_MODULE_4__.LinePart(lastResultEndIndex, lineDecoration.className, lineDecoration.metadata, false);\n lineDecorationIndex++;\n }\n }\n return result;\n}\n/**\n * This function is on purpose not split up into multiple functions to allow runtime type inference (i.e. performance reasons).\n * Notice how all the needed data is fully resolved and passed in (i.e. no other calls).\n */\nfunction _renderLine(input, sb) {\n const fontIsMonospace = input.fontIsMonospace;\n const canUseHalfwidthRightwardsArrow = input.canUseHalfwidthRightwardsArrow;\n const containsForeignElements = input.containsForeignElements;\n const lineContent = input.lineContent;\n const len = input.len;\n const isOverflowing = input.isOverflowing;\n const overflowingCharCount = input.overflowingCharCount;\n const parts = input.parts;\n const fauxIndentLength = input.fauxIndentLength;\n const tabSize = input.tabSize;\n const startVisibleColumn = input.startVisibleColumn;\n const containsRTL = input.containsRTL;\n const spaceWidth = input.spaceWidth;\n const renderSpaceCharCode = input.renderSpaceCharCode;\n const renderWhitespace = input.renderWhitespace;\n const renderControlCharacters = input.renderControlCharacters;\n const characterMapping = new CharacterMapping(len + 1, parts.length);\n let lastCharacterMappingDefined = false;\n let charIndex = 0;\n let visibleColumn = startVisibleColumn;\n let charOffsetInPart = 0; // the character offset in the current part\n let charHorizontalOffset = 0; // the character horizontal position in terms of chars relative to line start\n let partDisplacement = 0;\n if (containsRTL) {\n sb.appendString('');\n }\n else {\n sb.appendString('');\n }\n for (let partIndex = 0, tokensLen = parts.length; partIndex < tokensLen; partIndex++) {\n const part = parts[partIndex];\n const partEndIndex = part.endIndex;\n const partType = part.type;\n const partContainsRTL = part.containsRTL;\n const partRendersWhitespace = (renderWhitespace !== 0 /* RenderWhitespace.None */ && part.isWhitespace());\n const partRendersWhitespaceWithWidth = partRendersWhitespace && !fontIsMonospace && (partType === 'mtkw' /*only whitespace*/ || !containsForeignElements);\n const partIsEmptyAndHasPseudoAfter = (charIndex === partEndIndex && part.isPseudoAfter());\n charOffsetInPart = 0;\n sb.appendString('= fauxIndentLength) {\n _visibleColumn += charWidth;\n }\n }\n }\n if (partRendersWhitespaceWithWidth) {\n sb.appendString(' style=\"width:');\n sb.appendString(String(spaceWidth * partWidth));\n sb.appendString('px\"');\n }\n sb.appendASCIICharCode(62 /* CharCode.GreaterThan */);\n for (; charIndex < partEndIndex; charIndex++) {\n characterMapping.setColumnInfo(charIndex + 1, partIndex - partDisplacement, charOffsetInPart, charHorizontalOffset);\n partDisplacement = 0;\n const charCode = lineContent.charCodeAt(charIndex);\n let producedCharacters;\n let charWidth;\n if (charCode === 9 /* CharCode.Tab */) {\n producedCharacters = (tabSize - (visibleColumn % tabSize)) | 0;\n charWidth = producedCharacters;\n if (!canUseHalfwidthRightwardsArrow || charWidth > 1) {\n sb.appendCharCode(0x2192); // RIGHTWARDS ARROW\n }\n else {\n sb.appendCharCode(0xFFEB); // HALFWIDTH RIGHTWARDS ARROW\n }\n for (let space = 2; space <= charWidth; space++) {\n sb.appendCharCode(0xA0); // \n }\n }\n else { // must be CharCode.Space\n producedCharacters = 2;\n charWidth = 1;\n sb.appendCharCode(renderSpaceCharCode); // · or word separator middle dot\n sb.appendCharCode(0x200C); // ZERO WIDTH NON-JOINER\n }\n charOffsetInPart += producedCharacters;\n charHorizontalOffset += charWidth;\n if (charIndex >= fauxIndentLength) {\n visibleColumn += charWidth;\n }\n }\n }\n else {\n sb.appendASCIICharCode(62 /* CharCode.GreaterThan */);\n for (; charIndex < partEndIndex; charIndex++) {\n characterMapping.setColumnInfo(charIndex + 1, partIndex - partDisplacement, charOffsetInPart, charHorizontalOffset);\n partDisplacement = 0;\n const charCode = lineContent.charCodeAt(charIndex);\n let producedCharacters = 1;\n let charWidth = 1;\n switch (charCode) {\n case 9 /* CharCode.Tab */:\n producedCharacters = (tabSize - (visibleColumn % tabSize));\n charWidth = producedCharacters;\n for (let space = 1; space <= producedCharacters; space++) {\n sb.appendCharCode(0xA0); // \n }\n break;\n case 32 /* CharCode.Space */:\n sb.appendCharCode(0xA0); // \n break;\n case 60 /* CharCode.LessThan */:\n sb.appendString('<');\n break;\n case 62 /* CharCode.GreaterThan */:\n sb.appendString('>');\n break;\n case 38 /* CharCode.Ampersand */:\n sb.appendString('&');\n break;\n case 0 /* CharCode.Null */:\n if (renderControlCharacters) {\n // See https://unicode-table.com/en/blocks/control-pictures/\n sb.appendCharCode(9216);\n }\n else {\n sb.appendString('');\n }\n break;\n case 65279 /* CharCode.UTF8_BOM */:\n case 8232 /* CharCode.LINE_SEPARATOR */:\n case 8233 /* CharCode.PARAGRAPH_SEPARATOR */:\n case 133 /* CharCode.NEXT_LINE */:\n sb.appendCharCode(0xFFFD);\n break;\n default:\n if (_base_common_strings_js__WEBPACK_IMPORTED_MODULE_1__.isFullWidthCharacter(charCode)) {\n charWidth++;\n }\n // See https://unicode-table.com/en/blocks/control-pictures/\n if (renderControlCharacters && charCode < 32) {\n sb.appendCharCode(9216 + charCode);\n }\n else if (renderControlCharacters && charCode === 127) {\n // DEL\n sb.appendCharCode(9249);\n }\n else if (renderControlCharacters && isControlCharacter(charCode)) {\n sb.appendString('[U+');\n sb.appendString(to4CharHex(charCode));\n sb.appendString(']');\n producedCharacters = 8;\n charWidth = producedCharacters;\n }\n else {\n sb.appendCharCode(charCode);\n }\n }\n charOffsetInPart += producedCharacters;\n charHorizontalOffset += charWidth;\n if (charIndex >= fauxIndentLength) {\n visibleColumn += charWidth;\n }\n }\n }\n if (partIsEmptyAndHasPseudoAfter) {\n partDisplacement++;\n }\n else {\n partDisplacement = 0;\n }\n if (charIndex >= len && !lastCharacterMappingDefined && part.isPseudoAfter()) {\n lastCharacterMappingDefined = true;\n characterMapping.setColumnInfo(charIndex + 1, partIndex, charOffsetInPart, charHorizontalOffset);\n }\n sb.appendString('');\n }\n if (!lastCharacterMappingDefined) {\n // When getting client rects for the last character, we will position the\n // text range at the end of the span, insteaf of at the beginning of next span\n characterMapping.setColumnInfo(len + 1, parts.length - 1, charOffsetInPart, charHorizontalOffset);\n }\n if (isOverflowing) {\n sb.appendString('');\n sb.appendString(_nls_js__WEBPACK_IMPORTED_MODULE_0__.localize('showMore', \"Show more ({0})\", renderOverflowingCharCount(overflowingCharCount)));\n sb.appendString('');\n }\n sb.appendString('');\n return new RenderLineOutput(characterMapping, containsRTL, containsForeignElements);\n}\nfunction to4CharHex(n) {\n return n.toString(16).toUpperCase().padStart(4, '0');\n}\nfunction renderOverflowingCharCount(n) {\n if (n < 1024) {\n return _nls_js__WEBPACK_IMPORTED_MODULE_0__.localize('overflow.chars', \"{0} chars\", n);\n }\n if (n < 1024 * 1024) {\n return `${(n / 1024).toFixed(1)} KB`;\n }\n return `${(n / 1024 / 1024).toFixed(1)} MB`;\n}\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/common/viewLayout/viewLineRenderer.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/common/viewLayout/viewLinesViewportData.js":
/*!*********************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/common/viewLayout/viewLinesViewportData.js ***!
\*********************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ ViewportData: () => (/* binding */ ViewportData)\n/* harmony export */ });\n/* harmony import */ var _core_range_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../core/range.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/core/range.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n/**\n * Contains all data needed to render at a specific viewport.\n */\nclass ViewportData {\n constructor(selections, partialData, whitespaceViewportData, model) {\n this.selections = selections;\n this.startLineNumber = partialData.startLineNumber | 0;\n this.endLineNumber = partialData.endLineNumber | 0;\n this.relativeVerticalOffset = partialData.relativeVerticalOffset;\n this.bigNumbersDelta = partialData.bigNumbersDelta | 0;\n this.whitespaceViewportData = whitespaceViewportData;\n this._model = model;\n this.visibleRange = new _core_range_js__WEBPACK_IMPORTED_MODULE_0__.Range(partialData.startLineNumber, this._model.getLineMinColumn(partialData.startLineNumber), partialData.endLineNumber, this._model.getLineMaxColumn(partialData.endLineNumber));\n }\n getViewLineRenderingData(lineNumber) {\n return this._model.getViewportViewLineRenderingData(this.visibleRange, lineNumber);\n }\n getDecorationsInViewport() {\n return this._model.getDecorationsInViewport(this.visibleRange);\n }\n}\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/common/viewLayout/viewLinesViewportData.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/common/viewModel.js":
/*!**********************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/common/viewModel.js ***!
\**********************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ InlineDecoration: () => (/* binding */ InlineDecoration),\n/* harmony export */ MinimapLinesRenderingData: () => (/* binding */ MinimapLinesRenderingData),\n/* harmony export */ OverviewRulerDecorationsGroup: () => (/* binding */ OverviewRulerDecorationsGroup),\n/* harmony export */ SingleLineInlineDecoration: () => (/* binding */ SingleLineInlineDecoration),\n/* harmony export */ ViewLineData: () => (/* binding */ ViewLineData),\n/* harmony export */ ViewLineRenderingData: () => (/* binding */ ViewLineRenderingData),\n/* harmony export */ ViewModelDecoration: () => (/* binding */ ViewModelDecoration),\n/* harmony export */ Viewport: () => (/* binding */ Viewport)\n/* harmony export */ });\n/* harmony import */ var _base_common_arrays_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../base/common/arrays.js */ \"./node_modules/monaco-editor/esm/vs/base/common/arrays.js\");\n/* harmony import */ var _base_common_strings_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../base/common/strings.js */ \"./node_modules/monaco-editor/esm/vs/base/common/strings.js\");\n/* harmony import */ var _core_range_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./core/range.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/core/range.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n\n\nclass Viewport {\n constructor(top, left, width, height) {\n this._viewportBrand = undefined;\n this.top = top | 0;\n this.left = left | 0;\n this.width = width | 0;\n this.height = height | 0;\n }\n}\nclass MinimapLinesRenderingData {\n constructor(tabSize, data) {\n this.tabSize = tabSize;\n this.data = data;\n }\n}\nclass ViewLineData {\n constructor(content, continuesWithWrappedLine, minColumn, maxColumn, startVisibleColumn, tokens, inlineDecorations) {\n this._viewLineDataBrand = undefined;\n this.content = content;\n this.continuesWithWrappedLine = continuesWithWrappedLine;\n this.minColumn = minColumn;\n this.maxColumn = maxColumn;\n this.startVisibleColumn = startVisibleColumn;\n this.tokens = tokens;\n this.inlineDecorations = inlineDecorations;\n }\n}\nclass ViewLineRenderingData {\n constructor(minColumn, maxColumn, content, continuesWithWrappedLine, mightContainRTL, mightContainNonBasicASCII, tokens, inlineDecorations, tabSize, startVisibleColumn) {\n this.minColumn = minColumn;\n this.maxColumn = maxColumn;\n this.content = content;\n this.continuesWithWrappedLine = continuesWithWrappedLine;\n this.isBasicASCII = ViewLineRenderingData.isBasicASCII(content, mightContainNonBasicASCII);\n this.containsRTL = ViewLineRenderingData.containsRTL(content, this.isBasicASCII, mightContainRTL);\n this.tokens = tokens;\n this.inlineDecorations = inlineDecorations;\n this.tabSize = tabSize;\n this.startVisibleColumn = startVisibleColumn;\n }\n static isBasicASCII(lineContent, mightContainNonBasicASCII) {\n if (mightContainNonBasicASCII) {\n return _base_common_strings_js__WEBPACK_IMPORTED_MODULE_1__.isBasicASCII(lineContent);\n }\n return true;\n }\n static containsRTL(lineContent, isBasicASCII, mightContainRTL) {\n if (!isBasicASCII && mightContainRTL) {\n return _base_common_strings_js__WEBPACK_IMPORTED_MODULE_1__.containsRTL(lineContent);\n }\n return false;\n }\n}\nclass InlineDecoration {\n constructor(range, inlineClassName, type) {\n this.range = range;\n this.inlineClassName = inlineClassName;\n this.type = type;\n }\n}\nclass SingleLineInlineDecoration {\n constructor(startOffset, endOffset, inlineClassName, inlineClassNameAffectsLetterSpacing) {\n this.startOffset = startOffset;\n this.endOffset = endOffset;\n this.inlineClassName = inlineClassName;\n this.inlineClassNameAffectsLetterSpacing = inlineClassNameAffectsLetterSpacing;\n }\n toInlineDecoration(lineNumber) {\n return new InlineDecoration(new _core_range_js__WEBPACK_IMPORTED_MODULE_2__.Range(lineNumber, this.startOffset + 1, lineNumber, this.endOffset + 1), this.inlineClassName, this.inlineClassNameAffectsLetterSpacing ? 3 /* InlineDecorationType.RegularAffectingLetterSpacing */ : 0 /* InlineDecorationType.Regular */);\n }\n}\nclass ViewModelDecoration {\n constructor(range, options) {\n this._viewModelDecorationBrand = undefined;\n this.range = range;\n this.options = options;\n }\n}\nclass OverviewRulerDecorationsGroup {\n constructor(color, zIndex, \n /**\n * Decorations are encoded in a number array using the following scheme:\n * - 3*i = lane\n * - 3*i+1 = startLineNumber\n * - 3*i+2 = endLineNumber\n */\n data) {\n this.color = color;\n this.zIndex = zIndex;\n this.data = data;\n }\n static compareByRenderingProps(a, b) {\n if (a.zIndex === b.zIndex) {\n if (a.color < b.color) {\n return -1;\n }\n if (a.color > b.color) {\n return 1;\n }\n return 0;\n }\n return a.zIndex - b.zIndex;\n }\n static equals(a, b) {\n return (a.color === b.color\n && a.zIndex === b.zIndex\n && _base_common_arrays_js__WEBPACK_IMPORTED_MODULE_0__.equals(a.data, b.data));\n }\n static equalsArr(a, b) {\n return _base_common_arrays_js__WEBPACK_IMPORTED_MODULE_0__.equals(a, b, OverviewRulerDecorationsGroup.equals);\n }\n}\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/common/viewModel.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/common/viewModel/glyphLanesModel.js":
/*!**************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/common/viewModel/glyphLanesModel.js ***!
\**************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ GlyphMarginLanesModel: () => (/* binding */ GlyphMarginLanesModel)\n/* harmony export */ });\n/* harmony import */ var _model_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../model.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/model.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\nconst MAX_LANE = _model_js__WEBPACK_IMPORTED_MODULE_0__.GlyphMarginLane.Right;\nclass GlyphMarginLanesModel {\n constructor(maxLine) {\n this.persist = 0;\n this._requiredLanes = 1; // always render at least one lane\n this.lanes = new Uint8Array(Math.ceil(((maxLine + 1) * MAX_LANE) / 8));\n }\n reset(maxLine) {\n const bytes = Math.ceil(((maxLine + 1) * MAX_LANE) / 8);\n if (this.lanes.length < bytes) {\n this.lanes = new Uint8Array(bytes);\n }\n else {\n this.lanes.fill(0);\n }\n this._requiredLanes = 1;\n }\n get requiredLanes() {\n return this._requiredLanes;\n }\n push(lane, range, persist) {\n if (persist) {\n this.persist |= (1 << (lane - 1));\n }\n for (let i = range.startLineNumber; i <= range.endLineNumber; i++) {\n const bit = (MAX_LANE * i) + (lane - 1);\n this.lanes[bit >>> 3] |= (1 << (bit % 8));\n this._requiredLanes = Math.max(this._requiredLanes, this.countAtLine(i));\n }\n }\n getLanesAtLine(lineNumber) {\n const lanes = [];\n let bit = MAX_LANE * lineNumber;\n for (let i = 0; i < MAX_LANE; i++) {\n if (this.persist & (1 << i) || this.lanes[bit >>> 3] & (1 << (bit % 8))) {\n lanes.push(i + 1);\n }\n bit++;\n }\n return lanes.length ? lanes : [_model_js__WEBPACK_IMPORTED_MODULE_0__.GlyphMarginLane.Center];\n }\n countAtLine(lineNumber) {\n let bit = MAX_LANE * lineNumber;\n let count = 0;\n for (let i = 0; i < MAX_LANE; i++) {\n if (this.persist & (1 << i) || this.lanes[bit >>> 3] & (1 << (bit % 8))) {\n count++;\n }\n bit++;\n }\n return count;\n }\n}\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/common/viewModel/glyphLanesModel.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/common/viewModel/minimapTokensColorTracker.js":
/*!************************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/common/viewModel/minimapTokensColorTracker.js ***!
\************************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ MinimapTokensColorTracker: () => (/* binding */ MinimapTokensColorTracker)\n/* harmony export */ });\n/* harmony import */ var _base_common_event_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../base/common/event.js */ \"./node_modules/monaco-editor/esm/vs/base/common/event.js\");\n/* harmony import */ var _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../base/common/lifecycle.js */ \"./node_modules/monaco-editor/esm/vs/base/common/lifecycle.js\");\n/* harmony import */ var _core_rgba_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../core/rgba.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/core/rgba.js\");\n/* harmony import */ var _languages_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../languages.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/languages.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n\n\n\nclass MinimapTokensColorTracker extends _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_1__.Disposable {\n static getInstance() {\n if (!this._INSTANCE) {\n this._INSTANCE = (0,_base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_1__.markAsSingleton)(new MinimapTokensColorTracker());\n }\n return this._INSTANCE;\n }\n constructor() {\n super();\n this._onDidChange = new _base_common_event_js__WEBPACK_IMPORTED_MODULE_0__.Emitter();\n this.onDidChange = this._onDidChange.event;\n this._updateColorMap();\n this._register(_languages_js__WEBPACK_IMPORTED_MODULE_3__.TokenizationRegistry.onDidChange(e => {\n if (e.changedColorMap) {\n this._updateColorMap();\n }\n }));\n }\n _updateColorMap() {\n const colorMap = _languages_js__WEBPACK_IMPORTED_MODULE_3__.TokenizationRegistry.getColorMap();\n if (!colorMap) {\n this._colors = [_core_rgba_js__WEBPACK_IMPORTED_MODULE_2__.RGBA8.Empty];\n this._backgroundIsLight = true;\n return;\n }\n this._colors = [_core_rgba_js__WEBPACK_IMPORTED_MODULE_2__.RGBA8.Empty];\n for (let colorId = 1; colorId < colorMap.length; colorId++) {\n const source = colorMap[colorId].rgba;\n // Use a VM friendly data-type\n this._colors[colorId] = new _core_rgba_js__WEBPACK_IMPORTED_MODULE_2__.RGBA8(source.r, source.g, source.b, Math.round(source.a * 255));\n }\n const backgroundLuminosity = colorMap[2 /* ColorId.DefaultBackground */].getRelativeLuminance();\n this._backgroundIsLight = backgroundLuminosity >= 0.5;\n this._onDidChange.fire(undefined);\n }\n getColor(colorId) {\n if (colorId < 1 || colorId >= this._colors.length) {\n // background color (basically invisible)\n colorId = 2 /* ColorId.DefaultBackground */;\n }\n return this._colors[colorId];\n }\n backgroundIsLight() {\n return this._backgroundIsLight;\n }\n}\nMinimapTokensColorTracker._INSTANCE = null;\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/common/viewModel/minimapTokensColorTracker.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/common/viewModel/modelLineProjection.js":
/*!******************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/common/viewModel/modelLineProjection.js ***!
\******************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ createModelLineProjection: () => (/* binding */ createModelLineProjection)\n/* harmony export */ });\n/* harmony import */ var _tokens_lineTokens_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../tokens/lineTokens.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/tokens/lineTokens.js\");\n/* harmony import */ var _core_position_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../core/position.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/core/position.js\");\n/* harmony import */ var _textModelEvents_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../textModelEvents.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/textModelEvents.js\");\n/* harmony import */ var _viewModel_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../viewModel.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/viewModel.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n\n\n\nfunction createModelLineProjection(lineBreakData, isVisible) {\n if (lineBreakData === null) {\n // No mapping needed\n if (isVisible) {\n return IdentityModelLineProjection.INSTANCE;\n }\n return HiddenModelLineProjection.INSTANCE;\n }\n else {\n return new ModelLineProjection(lineBreakData, isVisible);\n }\n}\n/**\n * This projection is used to\n * * wrap model lines\n * * inject text\n */\nclass ModelLineProjection {\n constructor(lineBreakData, isVisible) {\n this._projectionData = lineBreakData;\n this._isVisible = isVisible;\n }\n isVisible() {\n return this._isVisible;\n }\n setVisible(isVisible) {\n this._isVisible = isVisible;\n return this;\n }\n getProjectionData() {\n return this._projectionData;\n }\n getViewLineCount() {\n if (!this._isVisible) {\n return 0;\n }\n return this._projectionData.getOutputLineCount();\n }\n getViewLineContent(model, modelLineNumber, outputLineIndex) {\n this._assertVisible();\n const startOffsetInInputWithInjections = outputLineIndex > 0 ? this._projectionData.breakOffsets[outputLineIndex - 1] : 0;\n const endOffsetInInputWithInjections = this._projectionData.breakOffsets[outputLineIndex];\n let r;\n if (this._projectionData.injectionOffsets !== null) {\n const injectedTexts = this._projectionData.injectionOffsets.map((offset, idx) => new _textModelEvents_js__WEBPACK_IMPORTED_MODULE_2__.LineInjectedText(0, 0, offset + 1, this._projectionData.injectionOptions[idx], 0));\n const lineWithInjections = _textModelEvents_js__WEBPACK_IMPORTED_MODULE_2__.LineInjectedText.applyInjectedText(model.getLineContent(modelLineNumber), injectedTexts);\n r = lineWithInjections.substring(startOffsetInInputWithInjections, endOffsetInInputWithInjections);\n }\n else {\n r = model.getValueInRange({\n startLineNumber: modelLineNumber,\n startColumn: startOffsetInInputWithInjections + 1,\n endLineNumber: modelLineNumber,\n endColumn: endOffsetInInputWithInjections + 1\n });\n }\n if (outputLineIndex > 0) {\n r = spaces(this._projectionData.wrappedTextIndentLength) + r;\n }\n return r;\n }\n getViewLineLength(model, modelLineNumber, outputLineIndex) {\n this._assertVisible();\n return this._projectionData.getLineLength(outputLineIndex);\n }\n getViewLineMinColumn(_model, _modelLineNumber, outputLineIndex) {\n this._assertVisible();\n return this._projectionData.getMinOutputOffset(outputLineIndex) + 1;\n }\n getViewLineMaxColumn(model, modelLineNumber, outputLineIndex) {\n this._assertVisible();\n return this._projectionData.getMaxOutputOffset(outputLineIndex) + 1;\n }\n /**\n * Try using {@link getViewLinesData} instead.\n */\n getViewLineData(model, modelLineNumber, outputLineIndex) {\n const arr = new Array();\n this.getViewLinesData(model, modelLineNumber, outputLineIndex, 1, 0, [true], arr);\n return arr[0];\n }\n getViewLinesData(model, modelLineNumber, outputLineIdx, lineCount, globalStartIndex, needed, result) {\n this._assertVisible();\n const lineBreakData = this._projectionData;\n const injectionOffsets = lineBreakData.injectionOffsets;\n const injectionOptions = lineBreakData.injectionOptions;\n let inlineDecorationsPerOutputLine = null;\n if (injectionOffsets) {\n inlineDecorationsPerOutputLine = [];\n let totalInjectedTextLengthBefore = 0;\n let currentInjectedOffset = 0;\n for (let outputLineIndex = 0; outputLineIndex < lineBreakData.getOutputLineCount(); outputLineIndex++) {\n const inlineDecorations = new Array();\n inlineDecorationsPerOutputLine[outputLineIndex] = inlineDecorations;\n const lineStartOffsetInInputWithInjections = outputLineIndex > 0 ? lineBreakData.breakOffsets[outputLineIndex - 1] : 0;\n const lineEndOffsetInInputWithInjections = lineBreakData.breakOffsets[outputLineIndex];\n while (currentInjectedOffset < injectionOffsets.length) {\n const length = injectionOptions[currentInjectedOffset].content.length;\n const injectedTextStartOffsetInInputWithInjections = injectionOffsets[currentInjectedOffset] + totalInjectedTextLengthBefore;\n const injectedTextEndOffsetInInputWithInjections = injectedTextStartOffsetInInputWithInjections + length;\n if (injectedTextStartOffsetInInputWithInjections > lineEndOffsetInInputWithInjections) {\n // Injected text only starts in later wrapped lines.\n break;\n }\n if (lineStartOffsetInInputWithInjections < injectedTextEndOffsetInInputWithInjections) {\n // Injected text ends after or in this line (but also starts in or before this line).\n const options = injectionOptions[currentInjectedOffset];\n if (options.inlineClassName) {\n const offset = (outputLineIndex > 0 ? lineBreakData.wrappedTextIndentLength : 0);\n const start = offset + Math.max(injectedTextStartOffsetInInputWithInjections - lineStartOffsetInInputWithInjections, 0);\n const end = offset + Math.min(injectedTextEndOffsetInInputWithInjections - lineStartOffsetInInputWithInjections, lineEndOffsetInInputWithInjections - lineStartOffsetInInputWithInjections);\n if (start !== end) {\n inlineDecorations.push(new _viewModel_js__WEBPACK_IMPORTED_MODULE_3__.SingleLineInlineDecoration(start, end, options.inlineClassName, options.inlineClassNameAffectsLetterSpacing));\n }\n }\n }\n if (injectedTextEndOffsetInInputWithInjections <= lineEndOffsetInInputWithInjections) {\n totalInjectedTextLengthBefore += length;\n currentInjectedOffset++;\n }\n else {\n // injected text breaks into next line, process it again\n break;\n }\n }\n }\n }\n let lineWithInjections;\n if (injectionOffsets) {\n lineWithInjections = model.tokenization.getLineTokens(modelLineNumber).withInserted(injectionOffsets.map((offset, idx) => ({\n offset,\n text: injectionOptions[idx].content,\n tokenMetadata: _tokens_lineTokens_js__WEBPACK_IMPORTED_MODULE_0__.LineTokens.defaultTokenMetadata\n })));\n }\n else {\n lineWithInjections = model.tokenization.getLineTokens(modelLineNumber);\n }\n for (let outputLineIndex = outputLineIdx; outputLineIndex < outputLineIdx + lineCount; outputLineIndex++) {\n const globalIndex = globalStartIndex + outputLineIndex - outputLineIdx;\n if (!needed[globalIndex]) {\n result[globalIndex] = null;\n continue;\n }\n result[globalIndex] = this._getViewLineData(lineWithInjections, inlineDecorationsPerOutputLine ? inlineDecorationsPerOutputLine[outputLineIndex] : null, outputLineIndex);\n }\n }\n _getViewLineData(lineWithInjections, inlineDecorations, outputLineIndex) {\n this._assertVisible();\n const lineBreakData = this._projectionData;\n const deltaStartIndex = (outputLineIndex > 0 ? lineBreakData.wrappedTextIndentLength : 0);\n const lineStartOffsetInInputWithInjections = outputLineIndex > 0 ? lineBreakData.breakOffsets[outputLineIndex - 1] : 0;\n const lineEndOffsetInInputWithInjections = lineBreakData.breakOffsets[outputLineIndex];\n const tokens = lineWithInjections.sliceAndInflate(lineStartOffsetInInputWithInjections, lineEndOffsetInInputWithInjections, deltaStartIndex);\n let lineContent = tokens.getLineContent();\n if (outputLineIndex > 0) {\n lineContent = spaces(lineBreakData.wrappedTextIndentLength) + lineContent;\n }\n const minColumn = this._projectionData.getMinOutputOffset(outputLineIndex) + 1;\n const maxColumn = lineContent.length + 1;\n const continuesWithWrappedLine = (outputLineIndex + 1 < this.getViewLineCount());\n const startVisibleColumn = (outputLineIndex === 0 ? 0 : lineBreakData.breakOffsetsVisibleColumn[outputLineIndex - 1]);\n return new _viewModel_js__WEBPACK_IMPORTED_MODULE_3__.ViewLineData(lineContent, continuesWithWrappedLine, minColumn, maxColumn, startVisibleColumn, tokens, inlineDecorations);\n }\n getModelColumnOfViewPosition(outputLineIndex, outputColumn) {\n this._assertVisible();\n return this._projectionData.translateToInputOffset(outputLineIndex, outputColumn - 1) + 1;\n }\n getViewPositionOfModelPosition(deltaLineNumber, inputColumn, affinity = 2 /* PositionAffinity.None */) {\n this._assertVisible();\n const r = this._projectionData.translateToOutputPosition(inputColumn - 1, affinity);\n return r.toPosition(deltaLineNumber);\n }\n getViewLineNumberOfModelPosition(deltaLineNumber, inputColumn) {\n this._assertVisible();\n const r = this._projectionData.translateToOutputPosition(inputColumn - 1);\n return deltaLineNumber + r.outputLineIndex;\n }\n normalizePosition(outputLineIndex, outputPosition, affinity) {\n const baseViewLineNumber = outputPosition.lineNumber - outputLineIndex;\n const normalizedOutputPosition = this._projectionData.normalizeOutputPosition(outputLineIndex, outputPosition.column - 1, affinity);\n const result = normalizedOutputPosition.toPosition(baseViewLineNumber);\n return result;\n }\n getInjectedTextAt(outputLineIndex, outputColumn) {\n return this._projectionData.getInjectedText(outputLineIndex, outputColumn - 1);\n }\n _assertVisible() {\n if (!this._isVisible) {\n throw new Error('Not supported');\n }\n }\n}\n/**\n * This projection does not change the model line.\n*/\nclass IdentityModelLineProjection {\n constructor() { }\n isVisible() {\n return true;\n }\n setVisible(isVisible) {\n if (isVisible) {\n return this;\n }\n return HiddenModelLineProjection.INSTANCE;\n }\n getProjectionData() {\n return null;\n }\n getViewLineCount() {\n return 1;\n }\n getViewLineContent(model, modelLineNumber, _outputLineIndex) {\n return model.getLineContent(modelLineNumber);\n }\n getViewLineLength(model, modelLineNumber, _outputLineIndex) {\n return model.getLineLength(modelLineNumber);\n }\n getViewLineMinColumn(model, modelLineNumber, _outputLineIndex) {\n return model.getLineMinColumn(modelLineNumber);\n }\n getViewLineMaxColumn(model, modelLineNumber, _outputLineIndex) {\n return model.getLineMaxColumn(modelLineNumber);\n }\n getViewLineData(model, modelLineNumber, _outputLineIndex) {\n const lineTokens = model.tokenization.getLineTokens(modelLineNumber);\n const lineContent = lineTokens.getLineContent();\n return new _viewModel_js__WEBPACK_IMPORTED_MODULE_3__.ViewLineData(lineContent, false, 1, lineContent.length + 1, 0, lineTokens.inflate(), null);\n }\n getViewLinesData(model, modelLineNumber, _fromOuputLineIndex, _toOutputLineIndex, globalStartIndex, needed, result) {\n if (!needed[globalStartIndex]) {\n result[globalStartIndex] = null;\n return;\n }\n result[globalStartIndex] = this.getViewLineData(model, modelLineNumber, 0);\n }\n getModelColumnOfViewPosition(_outputLineIndex, outputColumn) {\n return outputColumn;\n }\n getViewPositionOfModelPosition(deltaLineNumber, inputColumn) {\n return new _core_position_js__WEBPACK_IMPORTED_MODULE_1__.Position(deltaLineNumber, inputColumn);\n }\n getViewLineNumberOfModelPosition(deltaLineNumber, _inputColumn) {\n return deltaLineNumber;\n }\n normalizePosition(outputLineIndex, outputPosition, affinity) {\n return outputPosition;\n }\n getInjectedTextAt(_outputLineIndex, _outputColumn) {\n return null;\n }\n}\nIdentityModelLineProjection.INSTANCE = new IdentityModelLineProjection();\n/**\n * This projection hides the model line.\n */\nclass HiddenModelLineProjection {\n constructor() { }\n isVisible() {\n return false;\n }\n setVisible(isVisible) {\n if (!isVisible) {\n return this;\n }\n return IdentityModelLineProjection.INSTANCE;\n }\n getProjectionData() {\n return null;\n }\n getViewLineCount() {\n return 0;\n }\n getViewLineContent(_model, _modelLineNumber, _outputLineIndex) {\n throw new Error('Not supported');\n }\n getViewLineLength(_model, _modelLineNumber, _outputLineIndex) {\n throw new Error('Not supported');\n }\n getViewLineMinColumn(_model, _modelLineNumber, _outputLineIndex) {\n throw new Error('Not supported');\n }\n getViewLineMaxColumn(_model, _modelLineNumber, _outputLineIndex) {\n throw new Error('Not supported');\n }\n getViewLineData(_model, _modelLineNumber, _outputLineIndex) {\n throw new Error('Not supported');\n }\n getViewLinesData(_model, _modelLineNumber, _fromOuputLineIndex, _toOutputLineIndex, _globalStartIndex, _needed, _result) {\n throw new Error('Not supported');\n }\n getModelColumnOfViewPosition(_outputLineIndex, _outputColumn) {\n throw new Error('Not supported');\n }\n getViewPositionOfModelPosition(_deltaLineNumber, _inputColumn) {\n throw new Error('Not supported');\n }\n getViewLineNumberOfModelPosition(_deltaLineNumber, _inputColumn) {\n throw new Error('Not supported');\n }\n normalizePosition(outputLineIndex, outputPosition, affinity) {\n throw new Error('Not supported');\n }\n getInjectedTextAt(_outputLineIndex, _outputColumn) {\n throw new Error('Not supported');\n }\n}\nHiddenModelLineProjection.INSTANCE = new HiddenModelLineProjection();\nconst _spaces = [''];\nfunction spaces(count) {\n if (count >= _spaces.length) {\n for (let i = 1; i <= count; i++) {\n _spaces[i] = _makeSpaces(i);\n }\n }\n return _spaces[count];\n}\nfunction _makeSpaces(count) {\n return new Array(count + 1).join(' ');\n}\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/common/viewModel/modelLineProjection.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/common/viewModel/monospaceLineBreaksComputer.js":
/*!**************************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/common/viewModel/monospaceLineBreaksComputer.js ***!
\**************************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ MonospaceLineBreaksComputerFactory: () => (/* binding */ MonospaceLineBreaksComputerFactory)\n/* harmony export */ });\n/* harmony import */ var _base_common_strings_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../base/common/strings.js */ \"./node_modules/monaco-editor/esm/vs/base/common/strings.js\");\n/* harmony import */ var _core_characterClassifier_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../core/characterClassifier.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/core/characterClassifier.js\");\n/* harmony import */ var _textModelEvents_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../textModelEvents.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/textModelEvents.js\");\n/* harmony import */ var _modelLineProjectionData_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../modelLineProjectionData.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/modelLineProjectionData.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n\n\n\nclass MonospaceLineBreaksComputerFactory {\n static create(options) {\n return new MonospaceLineBreaksComputerFactory(options.get(133 /* EditorOption.wordWrapBreakBeforeCharacters */), options.get(132 /* EditorOption.wordWrapBreakAfterCharacters */));\n }\n constructor(breakBeforeChars, breakAfterChars) {\n this.classifier = new WrappingCharacterClassifier(breakBeforeChars, breakAfterChars);\n }\n createLineBreaksComputer(fontInfo, tabSize, wrappingColumn, wrappingIndent, wordBreak) {\n const requests = [];\n const injectedTexts = [];\n const previousBreakingData = [];\n return {\n addRequest: (lineText, injectedText, previousLineBreakData) => {\n requests.push(lineText);\n injectedTexts.push(injectedText);\n previousBreakingData.push(previousLineBreakData);\n },\n finalize: () => {\n const columnsForFullWidthChar = fontInfo.typicalFullwidthCharacterWidth / fontInfo.typicalHalfwidthCharacterWidth;\n const result = [];\n for (let i = 0, len = requests.length; i < len; i++) {\n const injectedText = injectedTexts[i];\n const previousLineBreakData = previousBreakingData[i];\n if (previousLineBreakData && !previousLineBreakData.injectionOptions && !injectedText) {\n result[i] = createLineBreaksFromPreviousLineBreaks(this.classifier, previousLineBreakData, requests[i], tabSize, wrappingColumn, columnsForFullWidthChar, wrappingIndent, wordBreak);\n }\n else {\n result[i] = createLineBreaks(this.classifier, requests[i], injectedText, tabSize, wrappingColumn, columnsForFullWidthChar, wrappingIndent, wordBreak);\n }\n }\n arrPool1.length = 0;\n arrPool2.length = 0;\n return result;\n }\n };\n }\n}\nclass WrappingCharacterClassifier extends _core_characterClassifier_js__WEBPACK_IMPORTED_MODULE_1__.CharacterClassifier {\n constructor(BREAK_BEFORE, BREAK_AFTER) {\n super(0 /* CharacterClass.NONE */);\n for (let i = 0; i < BREAK_BEFORE.length; i++) {\n this.set(BREAK_BEFORE.charCodeAt(i), 1 /* CharacterClass.BREAK_BEFORE */);\n }\n for (let i = 0; i < BREAK_AFTER.length; i++) {\n this.set(BREAK_AFTER.charCodeAt(i), 2 /* CharacterClass.BREAK_AFTER */);\n }\n }\n get(charCode) {\n if (charCode >= 0 && charCode < 256) {\n return this._asciiMap[charCode];\n }\n else {\n // Initialize CharacterClass.BREAK_IDEOGRAPHIC for these Unicode ranges:\n // 1. CJK Unified Ideographs (0x4E00 -- 0x9FFF)\n // 2. CJK Unified Ideographs Extension A (0x3400 -- 0x4DBF)\n // 3. Hiragana and Katakana (0x3040 -- 0x30FF)\n if ((charCode >= 0x3040 && charCode <= 0x30FF)\n || (charCode >= 0x3400 && charCode <= 0x4DBF)\n || (charCode >= 0x4E00 && charCode <= 0x9FFF)) {\n return 3 /* CharacterClass.BREAK_IDEOGRAPHIC */;\n }\n return (this._map.get(charCode) || this._defaultValue);\n }\n }\n}\nlet arrPool1 = [];\nlet arrPool2 = [];\nfunction createLineBreaksFromPreviousLineBreaks(classifier, previousBreakingData, lineText, tabSize, firstLineBreakColumn, columnsForFullWidthChar, wrappingIndent, wordBreak) {\n if (firstLineBreakColumn === -1) {\n return null;\n }\n const len = lineText.length;\n if (len <= 1) {\n return null;\n }\n const isKeepAll = (wordBreak === 'keepAll');\n const prevBreakingOffsets = previousBreakingData.breakOffsets;\n const prevBreakingOffsetsVisibleColumn = previousBreakingData.breakOffsetsVisibleColumn;\n const wrappedTextIndentLength = computeWrappedTextIndentLength(lineText, tabSize, firstLineBreakColumn, columnsForFullWidthChar, wrappingIndent);\n const wrappedLineBreakColumn = firstLineBreakColumn - wrappedTextIndentLength;\n const breakingOffsets = arrPool1;\n const breakingOffsetsVisibleColumn = arrPool2;\n let breakingOffsetsCount = 0;\n let lastBreakingOffset = 0;\n let lastBreakingOffsetVisibleColumn = 0;\n let breakingColumn = firstLineBreakColumn;\n const prevLen = prevBreakingOffsets.length;\n let prevIndex = 0;\n if (prevIndex >= 0) {\n let bestDistance = Math.abs(prevBreakingOffsetsVisibleColumn[prevIndex] - breakingColumn);\n while (prevIndex + 1 < prevLen) {\n const distance = Math.abs(prevBreakingOffsetsVisibleColumn[prevIndex + 1] - breakingColumn);\n if (distance >= bestDistance) {\n break;\n }\n bestDistance = distance;\n prevIndex++;\n }\n }\n while (prevIndex < prevLen) {\n // Allow for prevIndex to be -1 (for the case where we hit a tab when walking backwards from the first break)\n let prevBreakOffset = prevIndex < 0 ? 0 : prevBreakingOffsets[prevIndex];\n let prevBreakOffsetVisibleColumn = prevIndex < 0 ? 0 : prevBreakingOffsetsVisibleColumn[prevIndex];\n if (lastBreakingOffset > prevBreakOffset) {\n prevBreakOffset = lastBreakingOffset;\n prevBreakOffsetVisibleColumn = lastBreakingOffsetVisibleColumn;\n }\n let breakOffset = 0;\n let breakOffsetVisibleColumn = 0;\n let forcedBreakOffset = 0;\n let forcedBreakOffsetVisibleColumn = 0;\n // initially, we search as much as possible to the right (if it fits)\n if (prevBreakOffsetVisibleColumn <= breakingColumn) {\n let visibleColumn = prevBreakOffsetVisibleColumn;\n let prevCharCode = prevBreakOffset === 0 ? 0 /* CharCode.Null */ : lineText.charCodeAt(prevBreakOffset - 1);\n let prevCharCodeClass = prevBreakOffset === 0 ? 0 /* CharacterClass.NONE */ : classifier.get(prevCharCode);\n let entireLineFits = true;\n for (let i = prevBreakOffset; i < len; i++) {\n const charStartOffset = i;\n const charCode = lineText.charCodeAt(i);\n let charCodeClass;\n let charWidth;\n if (_base_common_strings_js__WEBPACK_IMPORTED_MODULE_0__.isHighSurrogate(charCode)) {\n // A surrogate pair must always be considered as a single unit, so it is never to be broken\n i++;\n charCodeClass = 0 /* CharacterClass.NONE */;\n charWidth = 2;\n }\n else {\n charCodeClass = classifier.get(charCode);\n charWidth = computeCharWidth(charCode, visibleColumn, tabSize, columnsForFullWidthChar);\n }\n if (charStartOffset > lastBreakingOffset && canBreak(prevCharCode, prevCharCodeClass, charCode, charCodeClass, isKeepAll)) {\n breakOffset = charStartOffset;\n breakOffsetVisibleColumn = visibleColumn;\n }\n visibleColumn += charWidth;\n // check if adding character at `i` will go over the breaking column\n if (visibleColumn > breakingColumn) {\n // We need to break at least before character at `i`:\n if (charStartOffset > lastBreakingOffset) {\n forcedBreakOffset = charStartOffset;\n forcedBreakOffsetVisibleColumn = visibleColumn - charWidth;\n }\n else {\n // we need to advance at least by one character\n forcedBreakOffset = i + 1;\n forcedBreakOffsetVisibleColumn = visibleColumn;\n }\n if (visibleColumn - breakOffsetVisibleColumn > wrappedLineBreakColumn) {\n // Cannot break at `breakOffset` => reset it if it was set\n breakOffset = 0;\n }\n entireLineFits = false;\n break;\n }\n prevCharCode = charCode;\n prevCharCodeClass = charCodeClass;\n }\n if (entireLineFits) {\n // there is no more need to break => stop the outer loop!\n if (breakingOffsetsCount > 0) {\n // Add last segment, no need to assign to `lastBreakingOffset` and `lastBreakingOffsetVisibleColumn`\n breakingOffsets[breakingOffsetsCount] = prevBreakingOffsets[prevBreakingOffsets.length - 1];\n breakingOffsetsVisibleColumn[breakingOffsetsCount] = prevBreakingOffsetsVisibleColumn[prevBreakingOffsets.length - 1];\n breakingOffsetsCount++;\n }\n break;\n }\n }\n if (breakOffset === 0) {\n // must search left\n let visibleColumn = prevBreakOffsetVisibleColumn;\n let charCode = lineText.charCodeAt(prevBreakOffset);\n let charCodeClass = classifier.get(charCode);\n let hitATabCharacter = false;\n for (let i = prevBreakOffset - 1; i >= lastBreakingOffset; i--) {\n const charStartOffset = i + 1;\n const prevCharCode = lineText.charCodeAt(i);\n if (prevCharCode === 9 /* CharCode.Tab */) {\n // cannot determine the width of a tab when going backwards, so we must go forwards\n hitATabCharacter = true;\n break;\n }\n let prevCharCodeClass;\n let prevCharWidth;\n if (_base_common_strings_js__WEBPACK_IMPORTED_MODULE_0__.isLowSurrogate(prevCharCode)) {\n // A surrogate pair must always be considered as a single unit, so it is never to be broken\n i--;\n prevCharCodeClass = 0 /* CharacterClass.NONE */;\n prevCharWidth = 2;\n }\n else {\n prevCharCodeClass = classifier.get(prevCharCode);\n prevCharWidth = (_base_common_strings_js__WEBPACK_IMPORTED_MODULE_0__.isFullWidthCharacter(prevCharCode) ? columnsForFullWidthChar : 1);\n }\n if (visibleColumn <= breakingColumn) {\n if (forcedBreakOffset === 0) {\n forcedBreakOffset = charStartOffset;\n forcedBreakOffsetVisibleColumn = visibleColumn;\n }\n if (visibleColumn <= breakingColumn - wrappedLineBreakColumn) {\n // went too far!\n break;\n }\n if (canBreak(prevCharCode, prevCharCodeClass, charCode, charCodeClass, isKeepAll)) {\n breakOffset = charStartOffset;\n breakOffsetVisibleColumn = visibleColumn;\n break;\n }\n }\n visibleColumn -= prevCharWidth;\n charCode = prevCharCode;\n charCodeClass = prevCharCodeClass;\n }\n if (breakOffset !== 0) {\n const remainingWidthOfNextLine = wrappedLineBreakColumn - (forcedBreakOffsetVisibleColumn - breakOffsetVisibleColumn);\n if (remainingWidthOfNextLine <= tabSize) {\n const charCodeAtForcedBreakOffset = lineText.charCodeAt(forcedBreakOffset);\n let charWidth;\n if (_base_common_strings_js__WEBPACK_IMPORTED_MODULE_0__.isHighSurrogate(charCodeAtForcedBreakOffset)) {\n // A surrogate pair must always be considered as a single unit, so it is never to be broken\n charWidth = 2;\n }\n else {\n charWidth = computeCharWidth(charCodeAtForcedBreakOffset, forcedBreakOffsetVisibleColumn, tabSize, columnsForFullWidthChar);\n }\n if (remainingWidthOfNextLine - charWidth < 0) {\n // it is not worth it to break at breakOffset, it just introduces an extra needless line!\n breakOffset = 0;\n }\n }\n }\n if (hitATabCharacter) {\n // cannot determine the width of a tab when going backwards, so we must go forwards from the previous break\n prevIndex--;\n continue;\n }\n }\n if (breakOffset === 0) {\n // Could not find a good breaking point\n breakOffset = forcedBreakOffset;\n breakOffsetVisibleColumn = forcedBreakOffsetVisibleColumn;\n }\n if (breakOffset <= lastBreakingOffset) {\n // Make sure that we are advancing (at least one character)\n const charCode = lineText.charCodeAt(lastBreakingOffset);\n if (_base_common_strings_js__WEBPACK_IMPORTED_MODULE_0__.isHighSurrogate(charCode)) {\n // A surrogate pair must always be considered as a single unit, so it is never to be broken\n breakOffset = lastBreakingOffset + 2;\n breakOffsetVisibleColumn = lastBreakingOffsetVisibleColumn + 2;\n }\n else {\n breakOffset = lastBreakingOffset + 1;\n breakOffsetVisibleColumn = lastBreakingOffsetVisibleColumn + computeCharWidth(charCode, lastBreakingOffsetVisibleColumn, tabSize, columnsForFullWidthChar);\n }\n }\n lastBreakingOffset = breakOffset;\n breakingOffsets[breakingOffsetsCount] = breakOffset;\n lastBreakingOffsetVisibleColumn = breakOffsetVisibleColumn;\n breakingOffsetsVisibleColumn[breakingOffsetsCount] = breakOffsetVisibleColumn;\n breakingOffsetsCount++;\n breakingColumn = breakOffsetVisibleColumn + wrappedLineBreakColumn;\n while (prevIndex < 0 || (prevIndex < prevLen && prevBreakingOffsetsVisibleColumn[prevIndex] < breakOffsetVisibleColumn)) {\n prevIndex++;\n }\n let bestDistance = Math.abs(prevBreakingOffsetsVisibleColumn[prevIndex] - breakingColumn);\n while (prevIndex + 1 < prevLen) {\n const distance = Math.abs(prevBreakingOffsetsVisibleColumn[prevIndex + 1] - breakingColumn);\n if (distance >= bestDistance) {\n break;\n }\n bestDistance = distance;\n prevIndex++;\n }\n }\n if (breakingOffsetsCount === 0) {\n return null;\n }\n // Doing here some object reuse which ends up helping a huge deal with GC pauses!\n breakingOffsets.length = breakingOffsetsCount;\n breakingOffsetsVisibleColumn.length = breakingOffsetsCount;\n arrPool1 = previousBreakingData.breakOffsets;\n arrPool2 = previousBreakingData.breakOffsetsVisibleColumn;\n previousBreakingData.breakOffsets = breakingOffsets;\n previousBreakingData.breakOffsetsVisibleColumn = breakingOffsetsVisibleColumn;\n previousBreakingData.wrappedTextIndentLength = wrappedTextIndentLength;\n return previousBreakingData;\n}\nfunction createLineBreaks(classifier, _lineText, injectedTexts, tabSize, firstLineBreakColumn, columnsForFullWidthChar, wrappingIndent, wordBreak) {\n const lineText = _textModelEvents_js__WEBPACK_IMPORTED_MODULE_2__.LineInjectedText.applyInjectedText(_lineText, injectedTexts);\n let injectionOptions;\n let injectionOffsets;\n if (injectedTexts && injectedTexts.length > 0) {\n injectionOptions = injectedTexts.map(t => t.options);\n injectionOffsets = injectedTexts.map(text => text.column - 1);\n }\n else {\n injectionOptions = null;\n injectionOffsets = null;\n }\n if (firstLineBreakColumn === -1) {\n if (!injectionOptions) {\n return null;\n }\n // creating a `LineBreakData` with an invalid `breakOffsetsVisibleColumn` is OK\n // because `breakOffsetsVisibleColumn` will never be used because it contains injected text\n return new _modelLineProjectionData_js__WEBPACK_IMPORTED_MODULE_3__.ModelLineProjectionData(injectionOffsets, injectionOptions, [lineText.length], [], 0);\n }\n const len = lineText.length;\n if (len <= 1) {\n if (!injectionOptions) {\n return null;\n }\n // creating a `LineBreakData` with an invalid `breakOffsetsVisibleColumn` is OK\n // because `breakOffsetsVisibleColumn` will never be used because it contains injected text\n return new _modelLineProjectionData_js__WEBPACK_IMPORTED_MODULE_3__.ModelLineProjectionData(injectionOffsets, injectionOptions, [lineText.length], [], 0);\n }\n const isKeepAll = (wordBreak === 'keepAll');\n const wrappedTextIndentLength = computeWrappedTextIndentLength(lineText, tabSize, firstLineBreakColumn, columnsForFullWidthChar, wrappingIndent);\n const wrappedLineBreakColumn = firstLineBreakColumn - wrappedTextIndentLength;\n const breakingOffsets = [];\n const breakingOffsetsVisibleColumn = [];\n let breakingOffsetsCount = 0;\n let breakOffset = 0;\n let breakOffsetVisibleColumn = 0;\n let breakingColumn = firstLineBreakColumn;\n let prevCharCode = lineText.charCodeAt(0);\n let prevCharCodeClass = classifier.get(prevCharCode);\n let visibleColumn = computeCharWidth(prevCharCode, 0, tabSize, columnsForFullWidthChar);\n let startOffset = 1;\n if (_base_common_strings_js__WEBPACK_IMPORTED_MODULE_0__.isHighSurrogate(prevCharCode)) {\n // A surrogate pair must always be considered as a single unit, so it is never to be broken\n visibleColumn += 1;\n prevCharCode = lineText.charCodeAt(1);\n prevCharCodeClass = classifier.get(prevCharCode);\n startOffset++;\n }\n for (let i = startOffset; i < len; i++) {\n const charStartOffset = i;\n const charCode = lineText.charCodeAt(i);\n let charCodeClass;\n let charWidth;\n if (_base_common_strings_js__WEBPACK_IMPORTED_MODULE_0__.isHighSurrogate(charCode)) {\n // A surrogate pair must always be considered as a single unit, so it is never to be broken\n i++;\n charCodeClass = 0 /* CharacterClass.NONE */;\n charWidth = 2;\n }\n else {\n charCodeClass = classifier.get(charCode);\n charWidth = computeCharWidth(charCode, visibleColumn, tabSize, columnsForFullWidthChar);\n }\n if (canBreak(prevCharCode, prevCharCodeClass, charCode, charCodeClass, isKeepAll)) {\n breakOffset = charStartOffset;\n breakOffsetVisibleColumn = visibleColumn;\n }\n visibleColumn += charWidth;\n // check if adding character at `i` will go over the breaking column\n if (visibleColumn > breakingColumn) {\n // We need to break at least before character at `i`:\n if (breakOffset === 0 || visibleColumn - breakOffsetVisibleColumn > wrappedLineBreakColumn) {\n // Cannot break at `breakOffset`, must break at `i`\n breakOffset = charStartOffset;\n breakOffsetVisibleColumn = visibleColumn - charWidth;\n }\n breakingOffsets[breakingOffsetsCount] = breakOffset;\n breakingOffsetsVisibleColumn[breakingOffsetsCount] = breakOffsetVisibleColumn;\n breakingOffsetsCount++;\n breakingColumn = breakOffsetVisibleColumn + wrappedLineBreakColumn;\n breakOffset = 0;\n }\n prevCharCode = charCode;\n prevCharCodeClass = charCodeClass;\n }\n if (breakingOffsetsCount === 0 && (!injectedTexts || injectedTexts.length === 0)) {\n return null;\n }\n // Add last segment\n breakingOffsets[breakingOffsetsCount] = len;\n breakingOffsetsVisibleColumn[breakingOffsetsCount] = visibleColumn;\n return new _modelLineProjectionData_js__WEBPACK_IMPORTED_MODULE_3__.ModelLineProjectionData(injectionOffsets, injectionOptions, breakingOffsets, breakingOffsetsVisibleColumn, wrappedTextIndentLength);\n}\nfunction computeCharWidth(charCode, visibleColumn, tabSize, columnsForFullWidthChar) {\n if (charCode === 9 /* CharCode.Tab */) {\n return (tabSize - (visibleColumn % tabSize));\n }\n if (_base_common_strings_js__WEBPACK_IMPORTED_MODULE_0__.isFullWidthCharacter(charCode)) {\n return columnsForFullWidthChar;\n }\n if (charCode < 32) {\n // when using `editor.renderControlCharacters`, the substitutions are often wide\n return columnsForFullWidthChar;\n }\n return 1;\n}\nfunction tabCharacterWidth(visibleColumn, tabSize) {\n return (tabSize - (visibleColumn % tabSize));\n}\n/**\n * Kinsoku Shori : Don't break after a leading character, like an open bracket\n * Kinsoku Shori : Don't break before a trailing character, like a period\n */\nfunction canBreak(prevCharCode, prevCharCodeClass, charCode, charCodeClass, isKeepAll) {\n return (charCode !== 32 /* CharCode.Space */\n && ((prevCharCodeClass === 2 /* CharacterClass.BREAK_AFTER */ && charCodeClass !== 2 /* CharacterClass.BREAK_AFTER */) // break at the end of multiple BREAK_AFTER\n || (prevCharCodeClass !== 1 /* CharacterClass.BREAK_BEFORE */ && charCodeClass === 1 /* CharacterClass.BREAK_BEFORE */) // break at the start of multiple BREAK_BEFORE\n || (!isKeepAll && prevCharCodeClass === 3 /* CharacterClass.BREAK_IDEOGRAPHIC */ && charCodeClass !== 2 /* CharacterClass.BREAK_AFTER */)\n || (!isKeepAll && charCodeClass === 3 /* CharacterClass.BREAK_IDEOGRAPHIC */ && prevCharCodeClass !== 1 /* CharacterClass.BREAK_BEFORE */)));\n}\nfunction computeWrappedTextIndentLength(lineText, tabSize, firstLineBreakColumn, columnsForFullWidthChar, wrappingIndent) {\n let wrappedTextIndentLength = 0;\n if (wrappingIndent !== 0 /* WrappingIndent.None */) {\n const firstNonWhitespaceIndex = _base_common_strings_js__WEBPACK_IMPORTED_MODULE_0__.firstNonWhitespaceIndex(lineText);\n if (firstNonWhitespaceIndex !== -1) {\n // Track existing indent\n for (let i = 0; i < firstNonWhitespaceIndex; i++) {\n const charWidth = (lineText.charCodeAt(i) === 9 /* CharCode.Tab */ ? tabCharacterWidth(wrappedTextIndentLength, tabSize) : 1);\n wrappedTextIndentLength += charWidth;\n }\n // Increase indent of continuation lines, if desired\n const numberOfAdditionalTabs = (wrappingIndent === 3 /* WrappingIndent.DeepIndent */ ? 2 : wrappingIndent === 2 /* WrappingIndent.Indent */ ? 1 : 0);\n for (let i = 0; i < numberOfAdditionalTabs; i++) {\n const charWidth = tabCharacterWidth(wrappedTextIndentLength, tabSize);\n wrappedTextIndentLength += charWidth;\n }\n // Force sticking to beginning of line if no character would fit except for the indentation\n if (wrappedTextIndentLength + columnsForFullWidthChar > firstLineBreakColumn) {\n wrappedTextIndentLength = 0;\n }\n }\n }\n return wrappedTextIndentLength;\n}\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/common/viewModel/monospaceLineBreaksComputer.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/common/viewModel/overviewZoneManager.js":
/*!******************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/common/viewModel/overviewZoneManager.js ***!
\******************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ ColorZone: () => (/* binding */ ColorZone),\n/* harmony export */ OverviewRulerZone: () => (/* binding */ OverviewRulerZone),\n/* harmony export */ OverviewZoneManager: () => (/* binding */ OverviewZoneManager)\n/* harmony export */ });\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\nclass ColorZone {\n constructor(from, to, colorId) {\n this._colorZoneBrand = undefined;\n this.from = from | 0;\n this.to = to | 0;\n this.colorId = colorId | 0;\n }\n static compare(a, b) {\n if (a.colorId === b.colorId) {\n if (a.from === b.from) {\n return a.to - b.to;\n }\n return a.from - b.from;\n }\n return a.colorId - b.colorId;\n }\n}\n/**\n * A zone in the overview ruler\n */\nclass OverviewRulerZone {\n constructor(startLineNumber, endLineNumber, heightInLines, color) {\n this._overviewRulerZoneBrand = undefined;\n this.startLineNumber = startLineNumber;\n this.endLineNumber = endLineNumber;\n this.heightInLines = heightInLines;\n this.color = color;\n this._colorZone = null;\n }\n static compare(a, b) {\n if (a.color === b.color) {\n if (a.startLineNumber === b.startLineNumber) {\n if (a.heightInLines === b.heightInLines) {\n return a.endLineNumber - b.endLineNumber;\n }\n return a.heightInLines - b.heightInLines;\n }\n return a.startLineNumber - b.startLineNumber;\n }\n return a.color < b.color ? -1 : 1;\n }\n setColorZone(colorZone) {\n this._colorZone = colorZone;\n }\n getColorZones() {\n return this._colorZone;\n }\n}\nclass OverviewZoneManager {\n constructor(getVerticalOffsetForLine) {\n this._getVerticalOffsetForLine = getVerticalOffsetForLine;\n this._zones = [];\n this._colorZonesInvalid = false;\n this._lineHeight = 0;\n this._domWidth = 0;\n this._domHeight = 0;\n this._outerHeight = 0;\n this._pixelRatio = 1;\n this._lastAssignedId = 0;\n this._color2Id = Object.create(null);\n this._id2Color = [];\n }\n getId2Color() {\n return this._id2Color;\n }\n setZones(newZones) {\n this._zones = newZones;\n this._zones.sort(OverviewRulerZone.compare);\n }\n setLineHeight(lineHeight) {\n if (this._lineHeight === lineHeight) {\n return false;\n }\n this._lineHeight = lineHeight;\n this._colorZonesInvalid = true;\n return true;\n }\n setPixelRatio(pixelRatio) {\n this._pixelRatio = pixelRatio;\n this._colorZonesInvalid = true;\n }\n getDOMWidth() {\n return this._domWidth;\n }\n getCanvasWidth() {\n return this._domWidth * this._pixelRatio;\n }\n setDOMWidth(width) {\n if (this._domWidth === width) {\n return false;\n }\n this._domWidth = width;\n this._colorZonesInvalid = true;\n return true;\n }\n getDOMHeight() {\n return this._domHeight;\n }\n getCanvasHeight() {\n return this._domHeight * this._pixelRatio;\n }\n setDOMHeight(height) {\n if (this._domHeight === height) {\n return false;\n }\n this._domHeight = height;\n this._colorZonesInvalid = true;\n return true;\n }\n getOuterHeight() {\n return this._outerHeight;\n }\n setOuterHeight(outerHeight) {\n if (this._outerHeight === outerHeight) {\n return false;\n }\n this._outerHeight = outerHeight;\n this._colorZonesInvalid = true;\n return true;\n }\n resolveColorZones() {\n const colorZonesInvalid = this._colorZonesInvalid;\n const lineHeight = Math.floor(this._lineHeight);\n const totalHeight = Math.floor(this.getCanvasHeight());\n const outerHeight = Math.floor(this._outerHeight);\n const heightRatio = totalHeight / outerHeight;\n const halfMinimumHeight = Math.floor(4 /* Constants.MINIMUM_HEIGHT */ * this._pixelRatio / 2);\n const allColorZones = [];\n for (let i = 0, len = this._zones.length; i < len; i++) {\n const zone = this._zones[i];\n if (!colorZonesInvalid) {\n const colorZone = zone.getColorZones();\n if (colorZone) {\n allColorZones.push(colorZone);\n continue;\n }\n }\n const offset1 = this._getVerticalOffsetForLine(zone.startLineNumber);\n const offset2 = (zone.heightInLines === 0\n ? this._getVerticalOffsetForLine(zone.endLineNumber) + lineHeight\n : offset1 + zone.heightInLines * lineHeight);\n const y1 = Math.floor(heightRatio * offset1);\n const y2 = Math.floor(heightRatio * offset2);\n let ycenter = Math.floor((y1 + y2) / 2);\n let halfHeight = (y2 - ycenter);\n if (halfHeight < halfMinimumHeight) {\n halfHeight = halfMinimumHeight;\n }\n if (ycenter - halfHeight < 0) {\n ycenter = halfHeight;\n }\n if (ycenter + halfHeight > totalHeight) {\n ycenter = totalHeight - halfHeight;\n }\n const color = zone.color;\n let colorId = this._color2Id[color];\n if (!colorId) {\n colorId = (++this._lastAssignedId);\n this._color2Id[color] = colorId;\n this._id2Color[colorId] = color;\n }\n const colorZone = new ColorZone(ycenter - halfHeight, ycenter + halfHeight, colorId);\n zone.setColorZone(colorZone);\n allColorZones.push(colorZone);\n }\n this._colorZonesInvalid = false;\n allColorZones.sort(ColorZone.compare);\n return allColorZones;\n }\n}\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/common/viewModel/overviewZoneManager.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/common/viewModel/viewContext.js":
/*!**********************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/common/viewModel/viewContext.js ***!
\**********************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ ViewContext: () => (/* binding */ ViewContext)\n/* harmony export */ });\n/* harmony import */ var _editorTheme_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../editorTheme.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/editorTheme.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\nclass ViewContext {\n constructor(configuration, theme, model) {\n this.configuration = configuration;\n this.theme = new _editorTheme_js__WEBPACK_IMPORTED_MODULE_0__.EditorTheme(theme);\n this.viewModel = model;\n this.viewLayout = model.viewLayout;\n }\n addEventHandler(eventHandler) {\n this.viewModel.addViewEventHandler(eventHandler);\n }\n removeEventHandler(eventHandler) {\n this.viewModel.removeViewEventHandler(eventHandler);\n }\n}\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/common/viewModel/viewContext.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/common/viewModel/viewModelDecorations.js":
/*!*******************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/common/viewModel/viewModelDecorations.js ***!
\*******************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ ViewModelDecorations: () => (/* binding */ ViewModelDecorations),\n/* harmony export */ isModelDecorationInComment: () => (/* binding */ isModelDecorationInComment),\n/* harmony export */ isModelDecorationInString: () => (/* binding */ isModelDecorationInString),\n/* harmony export */ isModelDecorationVisible: () => (/* binding */ isModelDecorationVisible)\n/* harmony export */ });\n/* harmony import */ var _core_position_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../core/position.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/core/position.js\");\n/* harmony import */ var _core_range_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../core/range.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/core/range.js\");\n/* harmony import */ var _viewModel_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../viewModel.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/viewModel.js\");\n/* harmony import */ var _config_editorOptions_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../config/editorOptions.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/config/editorOptions.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n\n\n\nclass ViewModelDecorations {\n constructor(editorId, model, configuration, linesCollection, coordinatesConverter) {\n this.editorId = editorId;\n this.model = model;\n this.configuration = configuration;\n this._linesCollection = linesCollection;\n this._coordinatesConverter = coordinatesConverter;\n this._decorationsCache = Object.create(null);\n this._cachedModelDecorationsResolver = null;\n this._cachedModelDecorationsResolverViewRange = null;\n }\n _clearCachedModelDecorationsResolver() {\n this._cachedModelDecorationsResolver = null;\n this._cachedModelDecorationsResolverViewRange = null;\n }\n dispose() {\n this._decorationsCache = Object.create(null);\n this._clearCachedModelDecorationsResolver();\n }\n reset() {\n this._decorationsCache = Object.create(null);\n this._clearCachedModelDecorationsResolver();\n }\n onModelDecorationsChanged() {\n this._decorationsCache = Object.create(null);\n this._clearCachedModelDecorationsResolver();\n }\n onLineMappingChanged() {\n this._decorationsCache = Object.create(null);\n this._clearCachedModelDecorationsResolver();\n }\n _getOrCreateViewModelDecoration(modelDecoration) {\n const id = modelDecoration.id;\n let r = this._decorationsCache[id];\n if (!r) {\n const modelRange = modelDecoration.range;\n const options = modelDecoration.options;\n let viewRange;\n if (options.isWholeLine) {\n const start = this._coordinatesConverter.convertModelPositionToViewPosition(new _core_position_js__WEBPACK_IMPORTED_MODULE_0__.Position(modelRange.startLineNumber, 1), 0 /* PositionAffinity.Left */, false, true);\n const end = this._coordinatesConverter.convertModelPositionToViewPosition(new _core_position_js__WEBPACK_IMPORTED_MODULE_0__.Position(modelRange.endLineNumber, this.model.getLineMaxColumn(modelRange.endLineNumber)), 1 /* PositionAffinity.Right */);\n viewRange = new _core_range_js__WEBPACK_IMPORTED_MODULE_1__.Range(start.lineNumber, start.column, end.lineNumber, end.column);\n }\n else {\n // For backwards compatibility reasons, we want injected text before any decoration.\n // Thus, move decorations to the right.\n viewRange = this._coordinatesConverter.convertModelRangeToViewRange(modelRange, 1 /* PositionAffinity.Right */);\n }\n r = new _viewModel_js__WEBPACK_IMPORTED_MODULE_2__.ViewModelDecoration(viewRange, options);\n this._decorationsCache[id] = r;\n }\n return r;\n }\n getMinimapDecorationsInRange(range) {\n return this._getDecorationsInRange(range, true, false).decorations;\n }\n getDecorationsViewportData(viewRange) {\n let cacheIsValid = (this._cachedModelDecorationsResolver !== null);\n cacheIsValid = cacheIsValid && (viewRange.equalsRange(this._cachedModelDecorationsResolverViewRange));\n if (!cacheIsValid) {\n this._cachedModelDecorationsResolver = this._getDecorationsInRange(viewRange, false, false);\n this._cachedModelDecorationsResolverViewRange = viewRange;\n }\n return this._cachedModelDecorationsResolver;\n }\n getInlineDecorationsOnLine(lineNumber, onlyMinimapDecorations = false, onlyMarginDecorations = false) {\n const range = new _core_range_js__WEBPACK_IMPORTED_MODULE_1__.Range(lineNumber, this._linesCollection.getViewLineMinColumn(lineNumber), lineNumber, this._linesCollection.getViewLineMaxColumn(lineNumber));\n return this._getDecorationsInRange(range, onlyMinimapDecorations, onlyMarginDecorations).inlineDecorations[0];\n }\n _getDecorationsInRange(viewRange, onlyMinimapDecorations, onlyMarginDecorations) {\n const modelDecorations = this._linesCollection.getDecorationsInRange(viewRange, this.editorId, (0,_config_editorOptions_js__WEBPACK_IMPORTED_MODULE_3__.filterValidationDecorations)(this.configuration.options), onlyMinimapDecorations, onlyMarginDecorations);\n const startLineNumber = viewRange.startLineNumber;\n const endLineNumber = viewRange.endLineNumber;\n const decorationsInViewport = [];\n let decorationsInViewportLen = 0;\n const inlineDecorations = [];\n for (let j = startLineNumber; j <= endLineNumber; j++) {\n inlineDecorations[j - startLineNumber] = [];\n }\n for (let i = 0, len = modelDecorations.length; i < len; i++) {\n const modelDecoration = modelDecorations[i];\n const decorationOptions = modelDecoration.options;\n if (!isModelDecorationVisible(this.model, modelDecoration)) {\n continue;\n }\n const viewModelDecoration = this._getOrCreateViewModelDecoration(modelDecoration);\n const viewRange = viewModelDecoration.range;\n decorationsInViewport[decorationsInViewportLen++] = viewModelDecoration;\n if (decorationOptions.inlineClassName) {\n const inlineDecoration = new _viewModel_js__WEBPACK_IMPORTED_MODULE_2__.InlineDecoration(viewRange, decorationOptions.inlineClassName, decorationOptions.inlineClassNameAffectsLetterSpacing ? 3 /* InlineDecorationType.RegularAffectingLetterSpacing */ : 0 /* InlineDecorationType.Regular */);\n const intersectedStartLineNumber = Math.max(startLineNumber, viewRange.startLineNumber);\n const intersectedEndLineNumber = Math.min(endLineNumber, viewRange.endLineNumber);\n for (let j = intersectedStartLineNumber; j <= intersectedEndLineNumber; j++) {\n inlineDecorations[j - startLineNumber].push(inlineDecoration);\n }\n }\n if (decorationOptions.beforeContentClassName) {\n if (startLineNumber <= viewRange.startLineNumber && viewRange.startLineNumber <= endLineNumber) {\n const inlineDecoration = new _viewModel_js__WEBPACK_IMPORTED_MODULE_2__.InlineDecoration(new _core_range_js__WEBPACK_IMPORTED_MODULE_1__.Range(viewRange.startLineNumber, viewRange.startColumn, viewRange.startLineNumber, viewRange.startColumn), decorationOptions.beforeContentClassName, 1 /* InlineDecorationType.Before */);\n inlineDecorations[viewRange.startLineNumber - startLineNumber].push(inlineDecoration);\n }\n }\n if (decorationOptions.afterContentClassName) {\n if (startLineNumber <= viewRange.endLineNumber && viewRange.endLineNumber <= endLineNumber) {\n const inlineDecoration = new _viewModel_js__WEBPACK_IMPORTED_MODULE_2__.InlineDecoration(new _core_range_js__WEBPACK_IMPORTED_MODULE_1__.Range(viewRange.endLineNumber, viewRange.endColumn, viewRange.endLineNumber, viewRange.endColumn), decorationOptions.afterContentClassName, 2 /* InlineDecorationType.After */);\n inlineDecorations[viewRange.endLineNumber - startLineNumber].push(inlineDecoration);\n }\n }\n }\n return {\n decorations: decorationsInViewport,\n inlineDecorations: inlineDecorations\n };\n }\n}\nfunction isModelDecorationVisible(model, decoration) {\n if (decoration.options.hideInCommentTokens && isModelDecorationInComment(model, decoration)) {\n return false;\n }\n if (decoration.options.hideInStringTokens && isModelDecorationInString(model, decoration)) {\n return false;\n }\n return true;\n}\nfunction isModelDecorationInComment(model, decoration) {\n return testTokensInRange(model, decoration.range, (tokenType) => tokenType === 1 /* StandardTokenType.Comment */);\n}\nfunction isModelDecorationInString(model, decoration) {\n return testTokensInRange(model, decoration.range, (tokenType) => tokenType === 2 /* StandardTokenType.String */);\n}\n/**\n * Calls the callback for every token that intersects the range.\n * If the callback returns `false`, iteration stops and `false` is returned.\n * Otherwise, `true` is returned.\n */\nfunction testTokensInRange(model, range, callback) {\n for (let lineNumber = range.startLineNumber; lineNumber <= range.endLineNumber; lineNumber++) {\n const lineTokens = model.tokenization.getLineTokens(lineNumber);\n const isFirstLine = lineNumber === range.startLineNumber;\n const isEndLine = lineNumber === range.endLineNumber;\n let tokenIdx = isFirstLine ? lineTokens.findTokenIndexAtOffset(range.startColumn - 1) : 0;\n while (tokenIdx < lineTokens.getCount()) {\n if (isEndLine) {\n const startOffset = lineTokens.getStartOffset(tokenIdx);\n if (startOffset > range.endColumn - 1) {\n break;\n }\n }\n const callbackResult = callback(lineTokens.getStandardTokenType(tokenIdx));\n if (!callbackResult) {\n return false;\n }\n tokenIdx++;\n }\n }\n return true;\n}\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/common/viewModel/viewModelDecorations.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/common/viewModel/viewModelImpl.js":
/*!************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/common/viewModel/viewModelImpl.js ***!
\************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ ViewModel: () => (/* binding */ ViewModel)\n/* harmony export */ });\n/* harmony import */ var _base_common_arrays_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../base/common/arrays.js */ \"./node_modules/monaco-editor/esm/vs/base/common/arrays.js\");\n/* harmony import */ var _base_common_async_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../base/common/async.js */ \"./node_modules/monaco-editor/esm/vs/base/common/async.js\");\n/* harmony import */ var _base_common_color_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../base/common/color.js */ \"./node_modules/monaco-editor/esm/vs/base/common/color.js\");\n/* harmony import */ var _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../../base/common/lifecycle.js */ \"./node_modules/monaco-editor/esm/vs/base/common/lifecycle.js\");\n/* harmony import */ var _base_common_platform_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../../base/common/platform.js */ \"./node_modules/monaco-editor/esm/vs/base/common/platform.js\");\n/* harmony import */ var _base_common_strings_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../../../base/common/strings.js */ \"./node_modules/monaco-editor/esm/vs/base/common/strings.js\");\n/* harmony import */ var _config_editorOptions_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../config/editorOptions.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/config/editorOptions.js\");\n/* harmony import */ var _cursor_cursor_js__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ../cursor/cursor.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/cursor/cursor.js\");\n/* harmony import */ var _cursorCommon_js__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ../cursorCommon.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/cursorCommon.js\");\n/* harmony import */ var _core_position_js__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ../core/position.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/core/position.js\");\n/* harmony import */ var _core_range_js__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! ../core/range.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/core/range.js\");\n/* harmony import */ var _textModelEvents_js__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(/*! ../textModelEvents.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/textModelEvents.js\");\n/* harmony import */ var _languages_js__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(/*! ../languages.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/languages.js\");\n/* harmony import */ var _languages_modesRegistry_js__WEBPACK_IMPORTED_MODULE_13__ = __webpack_require__(/*! ../languages/modesRegistry.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/languages/modesRegistry.js\");\n/* harmony import */ var _languages_textToHtmlTokenizer_js__WEBPACK_IMPORTED_MODULE_14__ = __webpack_require__(/*! ../languages/textToHtmlTokenizer.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/languages/textToHtmlTokenizer.js\");\n/* harmony import */ var _viewEvents_js__WEBPACK_IMPORTED_MODULE_15__ = __webpack_require__(/*! ../viewEvents.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/viewEvents.js\");\n/* harmony import */ var _viewLayout_viewLayout_js__WEBPACK_IMPORTED_MODULE_16__ = __webpack_require__(/*! ../viewLayout/viewLayout.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/viewLayout/viewLayout.js\");\n/* harmony import */ var _minimapTokensColorTracker_js__WEBPACK_IMPORTED_MODULE_17__ = __webpack_require__(/*! ./minimapTokensColorTracker.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/viewModel/minimapTokensColorTracker.js\");\n/* harmony import */ var _viewModel_js__WEBPACK_IMPORTED_MODULE_18__ = __webpack_require__(/*! ../viewModel.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/viewModel.js\");\n/* harmony import */ var _viewModelDecorations_js__WEBPACK_IMPORTED_MODULE_19__ = __webpack_require__(/*! ./viewModelDecorations.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/viewModel/viewModelDecorations.js\");\n/* harmony import */ var _viewModelEventDispatcher_js__WEBPACK_IMPORTED_MODULE_20__ = __webpack_require__(/*! ../viewModelEventDispatcher.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/viewModelEventDispatcher.js\");\n/* harmony import */ var _viewModelLines_js__WEBPACK_IMPORTED_MODULE_21__ = __webpack_require__(/*! ./viewModelLines.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/viewModel/viewModelLines.js\");\n/* harmony import */ var _glyphLanesModel_js__WEBPACK_IMPORTED_MODULE_22__ = __webpack_require__(/*! ./glyphLanesModel.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/viewModel/glyphLanesModel.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nconst USE_IDENTITY_LINES_COLLECTION = true;\nclass ViewModel extends _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_3__.Disposable {\n constructor(editorId, configuration, model, domLineBreaksComputerFactory, monospaceLineBreaksComputerFactory, scheduleAtNextAnimationFrame, languageConfigurationService, _themeService, _attachedView) {\n super();\n this.languageConfigurationService = languageConfigurationService;\n this._themeService = _themeService;\n this._attachedView = _attachedView;\n this.hiddenAreasModel = new HiddenAreasModel();\n this.previousHiddenAreas = [];\n this._editorId = editorId;\n this._configuration = configuration;\n this.model = model;\n this._eventDispatcher = new _viewModelEventDispatcher_js__WEBPACK_IMPORTED_MODULE_20__.ViewModelEventDispatcher();\n this.onEvent = this._eventDispatcher.onEvent;\n this.cursorConfig = new _cursorCommon_js__WEBPACK_IMPORTED_MODULE_8__.CursorConfiguration(this.model.getLanguageId(), this.model.getOptions(), this._configuration, this.languageConfigurationService);\n this._updateConfigurationViewLineCount = this._register(new _base_common_async_js__WEBPACK_IMPORTED_MODULE_1__.RunOnceScheduler(() => this._updateConfigurationViewLineCountNow(), 0));\n this._hasFocus = false;\n this._viewportStart = ViewportStart.create(this.model);\n this.glyphLanes = new _glyphLanesModel_js__WEBPACK_IMPORTED_MODULE_22__.GlyphMarginLanesModel(0);\n if (USE_IDENTITY_LINES_COLLECTION && this.model.isTooLargeForTokenization()) {\n this._lines = new _viewModelLines_js__WEBPACK_IMPORTED_MODULE_21__.ViewModelLinesFromModelAsIs(this.model);\n }\n else {\n const options = this._configuration.options;\n const fontInfo = options.get(50 /* EditorOption.fontInfo */);\n const wrappingStrategy = options.get(138 /* EditorOption.wrappingStrategy */);\n const wrappingInfo = options.get(145 /* EditorOption.wrappingInfo */);\n const wrappingIndent = options.get(137 /* EditorOption.wrappingIndent */);\n const wordBreak = options.get(129 /* EditorOption.wordBreak */);\n this._lines = new _viewModelLines_js__WEBPACK_IMPORTED_MODULE_21__.ViewModelLinesFromProjectedModel(this._editorId, this.model, domLineBreaksComputerFactory, monospaceLineBreaksComputerFactory, fontInfo, this.model.getOptions().tabSize, wrappingStrategy, wrappingInfo.wrappingColumn, wrappingIndent, wordBreak);\n }\n this.coordinatesConverter = this._lines.createCoordinatesConverter();\n this._cursor = this._register(new _cursor_cursor_js__WEBPACK_IMPORTED_MODULE_7__.CursorsController(model, this, this.coordinatesConverter, this.cursorConfig));\n this.viewLayout = this._register(new _viewLayout_viewLayout_js__WEBPACK_IMPORTED_MODULE_16__.ViewLayout(this._configuration, this.getLineCount(), scheduleAtNextAnimationFrame));\n this._register(this.viewLayout.onDidScroll((e) => {\n if (e.scrollTopChanged) {\n this._handleVisibleLinesChanged();\n }\n if (e.scrollTopChanged) {\n this._viewportStart.invalidate();\n }\n this._eventDispatcher.emitSingleViewEvent(new _viewEvents_js__WEBPACK_IMPORTED_MODULE_15__.ViewScrollChangedEvent(e));\n this._eventDispatcher.emitOutgoingEvent(new _viewModelEventDispatcher_js__WEBPACK_IMPORTED_MODULE_20__.ScrollChangedEvent(e.oldScrollWidth, e.oldScrollLeft, e.oldScrollHeight, e.oldScrollTop, e.scrollWidth, e.scrollLeft, e.scrollHeight, e.scrollTop));\n }));\n this._register(this.viewLayout.onDidContentSizeChange((e) => {\n this._eventDispatcher.emitOutgoingEvent(e);\n }));\n this._decorations = new _viewModelDecorations_js__WEBPACK_IMPORTED_MODULE_19__.ViewModelDecorations(this._editorId, this.model, this._configuration, this._lines, this.coordinatesConverter);\n this._registerModelEvents();\n this._register(this._configuration.onDidChangeFast((e) => {\n try {\n const eventsCollector = this._eventDispatcher.beginEmitViewEvents();\n this._onConfigurationChanged(eventsCollector, e);\n }\n finally {\n this._eventDispatcher.endEmitViewEvents();\n }\n }));\n this._register(_minimapTokensColorTracker_js__WEBPACK_IMPORTED_MODULE_17__.MinimapTokensColorTracker.getInstance().onDidChange(() => {\n this._eventDispatcher.emitSingleViewEvent(new _viewEvents_js__WEBPACK_IMPORTED_MODULE_15__.ViewTokensColorsChangedEvent());\n }));\n this._register(this._themeService.onDidColorThemeChange((theme) => {\n this._invalidateDecorationsColorCache();\n this._eventDispatcher.emitSingleViewEvent(new _viewEvents_js__WEBPACK_IMPORTED_MODULE_15__.ViewThemeChangedEvent(theme));\n }));\n this._updateConfigurationViewLineCountNow();\n }\n dispose() {\n // First remove listeners, as disposing the lines might end up sending\n // model decoration changed events ... and we no longer care about them ...\n super.dispose();\n this._decorations.dispose();\n this._lines.dispose();\n this._viewportStart.dispose();\n this._eventDispatcher.dispose();\n }\n createLineBreaksComputer() {\n return this._lines.createLineBreaksComputer();\n }\n addViewEventHandler(eventHandler) {\n this._eventDispatcher.addViewEventHandler(eventHandler);\n }\n removeViewEventHandler(eventHandler) {\n this._eventDispatcher.removeViewEventHandler(eventHandler);\n }\n _updateConfigurationViewLineCountNow() {\n this._configuration.setViewLineCount(this._lines.getViewLineCount());\n }\n getModelVisibleRanges() {\n const linesViewportData = this.viewLayout.getLinesViewportData();\n const viewVisibleRange = new _core_range_js__WEBPACK_IMPORTED_MODULE_10__.Range(linesViewportData.startLineNumber, this.getLineMinColumn(linesViewportData.startLineNumber), linesViewportData.endLineNumber, this.getLineMaxColumn(linesViewportData.endLineNumber));\n const modelVisibleRanges = this._toModelVisibleRanges(viewVisibleRange);\n return modelVisibleRanges;\n }\n visibleLinesStabilized() {\n const modelVisibleRanges = this.getModelVisibleRanges();\n this._attachedView.setVisibleLines(modelVisibleRanges, true);\n }\n _handleVisibleLinesChanged() {\n const modelVisibleRanges = this.getModelVisibleRanges();\n this._attachedView.setVisibleLines(modelVisibleRanges, false);\n }\n setHasFocus(hasFocus) {\n this._hasFocus = hasFocus;\n this._cursor.setHasFocus(hasFocus);\n this._eventDispatcher.emitSingleViewEvent(new _viewEvents_js__WEBPACK_IMPORTED_MODULE_15__.ViewFocusChangedEvent(hasFocus));\n this._eventDispatcher.emitOutgoingEvent(new _viewModelEventDispatcher_js__WEBPACK_IMPORTED_MODULE_20__.FocusChangedEvent(!hasFocus, hasFocus));\n }\n onCompositionStart() {\n this._eventDispatcher.emitSingleViewEvent(new _viewEvents_js__WEBPACK_IMPORTED_MODULE_15__.ViewCompositionStartEvent());\n }\n onCompositionEnd() {\n this._eventDispatcher.emitSingleViewEvent(new _viewEvents_js__WEBPACK_IMPORTED_MODULE_15__.ViewCompositionEndEvent());\n }\n _captureStableViewport() {\n // We might need to restore the current start view range, so save it (if available)\n // But only if the scroll position is not at the top of the file\n if (this._viewportStart.isValid && this.viewLayout.getCurrentScrollTop() > 0) {\n const previousViewportStartViewPosition = new _core_position_js__WEBPACK_IMPORTED_MODULE_9__.Position(this._viewportStart.viewLineNumber, this.getLineMinColumn(this._viewportStart.viewLineNumber));\n const previousViewportStartModelPosition = this.coordinatesConverter.convertViewPositionToModelPosition(previousViewportStartViewPosition);\n return new StableViewport(previousViewportStartModelPosition, this._viewportStart.startLineDelta);\n }\n return new StableViewport(null, 0);\n }\n _onConfigurationChanged(eventsCollector, e) {\n const stableViewport = this._captureStableViewport();\n const options = this._configuration.options;\n const fontInfo = options.get(50 /* EditorOption.fontInfo */);\n const wrappingStrategy = options.get(138 /* EditorOption.wrappingStrategy */);\n const wrappingInfo = options.get(145 /* EditorOption.wrappingInfo */);\n const wrappingIndent = options.get(137 /* EditorOption.wrappingIndent */);\n const wordBreak = options.get(129 /* EditorOption.wordBreak */);\n if (this._lines.setWrappingSettings(fontInfo, wrappingStrategy, wrappingInfo.wrappingColumn, wrappingIndent, wordBreak)) {\n eventsCollector.emitViewEvent(new _viewEvents_js__WEBPACK_IMPORTED_MODULE_15__.ViewFlushedEvent());\n eventsCollector.emitViewEvent(new _viewEvents_js__WEBPACK_IMPORTED_MODULE_15__.ViewLineMappingChangedEvent());\n eventsCollector.emitViewEvent(new _viewEvents_js__WEBPACK_IMPORTED_MODULE_15__.ViewDecorationsChangedEvent(null));\n this._cursor.onLineMappingChanged(eventsCollector);\n this._decorations.onLineMappingChanged();\n this.viewLayout.onFlushed(this.getLineCount());\n this._updateConfigurationViewLineCount.schedule();\n }\n if (e.hasChanged(91 /* EditorOption.readOnly */)) {\n // Must read again all decorations due to readOnly filtering\n this._decorations.reset();\n eventsCollector.emitViewEvent(new _viewEvents_js__WEBPACK_IMPORTED_MODULE_15__.ViewDecorationsChangedEvent(null));\n }\n if (e.hasChanged(98 /* EditorOption.renderValidationDecorations */)) {\n this._decorations.reset();\n eventsCollector.emitViewEvent(new _viewEvents_js__WEBPACK_IMPORTED_MODULE_15__.ViewDecorationsChangedEvent(null));\n }\n eventsCollector.emitViewEvent(new _viewEvents_js__WEBPACK_IMPORTED_MODULE_15__.ViewConfigurationChangedEvent(e));\n this.viewLayout.onConfigurationChanged(e);\n stableViewport.recoverViewportStart(this.coordinatesConverter, this.viewLayout);\n if (_cursorCommon_js__WEBPACK_IMPORTED_MODULE_8__.CursorConfiguration.shouldRecreate(e)) {\n this.cursorConfig = new _cursorCommon_js__WEBPACK_IMPORTED_MODULE_8__.CursorConfiguration(this.model.getLanguageId(), this.model.getOptions(), this._configuration, this.languageConfigurationService);\n this._cursor.updateConfiguration(this.cursorConfig);\n }\n }\n _registerModelEvents() {\n this._register(this.model.onDidChangeContentOrInjectedText((e) => {\n try {\n const eventsCollector = this._eventDispatcher.beginEmitViewEvents();\n let hadOtherModelChange = false;\n let hadModelLineChangeThatChangedLineMapping = false;\n const changes = (e instanceof _textModelEvents_js__WEBPACK_IMPORTED_MODULE_11__.InternalModelContentChangeEvent ? e.rawContentChangedEvent.changes : e.changes);\n const versionId = (e instanceof _textModelEvents_js__WEBPACK_IMPORTED_MODULE_11__.InternalModelContentChangeEvent ? e.rawContentChangedEvent.versionId : null);\n // Do a first pass to compute line mappings, and a second pass to actually interpret them\n const lineBreaksComputer = this._lines.createLineBreaksComputer();\n for (const change of changes) {\n switch (change.changeType) {\n case 4 /* textModelEvents.RawContentChangedType.LinesInserted */: {\n for (let lineIdx = 0; lineIdx < change.detail.length; lineIdx++) {\n const line = change.detail[lineIdx];\n let injectedText = change.injectedTexts[lineIdx];\n if (injectedText) {\n injectedText = injectedText.filter(element => (!element.ownerId || element.ownerId === this._editorId));\n }\n lineBreaksComputer.addRequest(line, injectedText, null);\n }\n break;\n }\n case 2 /* textModelEvents.RawContentChangedType.LineChanged */: {\n let injectedText = null;\n if (change.injectedText) {\n injectedText = change.injectedText.filter(element => (!element.ownerId || element.ownerId === this._editorId));\n }\n lineBreaksComputer.addRequest(change.detail, injectedText, null);\n break;\n }\n }\n }\n const lineBreaks = lineBreaksComputer.finalize();\n const lineBreakQueue = new _base_common_arrays_js__WEBPACK_IMPORTED_MODULE_0__.ArrayQueue(lineBreaks);\n for (const change of changes) {\n switch (change.changeType) {\n case 1 /* textModelEvents.RawContentChangedType.Flush */: {\n this._lines.onModelFlushed();\n eventsCollector.emitViewEvent(new _viewEvents_js__WEBPACK_IMPORTED_MODULE_15__.ViewFlushedEvent());\n this._decorations.reset();\n this.viewLayout.onFlushed(this.getLineCount());\n hadOtherModelChange = true;\n break;\n }\n case 3 /* textModelEvents.RawContentChangedType.LinesDeleted */: {\n const linesDeletedEvent = this._lines.onModelLinesDeleted(versionId, change.fromLineNumber, change.toLineNumber);\n if (linesDeletedEvent !== null) {\n eventsCollector.emitViewEvent(linesDeletedEvent);\n this.viewLayout.onLinesDeleted(linesDeletedEvent.fromLineNumber, linesDeletedEvent.toLineNumber);\n }\n hadOtherModelChange = true;\n break;\n }\n case 4 /* textModelEvents.RawContentChangedType.LinesInserted */: {\n const insertedLineBreaks = lineBreakQueue.takeCount(change.detail.length);\n const linesInsertedEvent = this._lines.onModelLinesInserted(versionId, change.fromLineNumber, change.toLineNumber, insertedLineBreaks);\n if (linesInsertedEvent !== null) {\n eventsCollector.emitViewEvent(linesInsertedEvent);\n this.viewLayout.onLinesInserted(linesInsertedEvent.fromLineNumber, linesInsertedEvent.toLineNumber);\n }\n hadOtherModelChange = true;\n break;\n }\n case 2 /* textModelEvents.RawContentChangedType.LineChanged */: {\n const changedLineBreakData = lineBreakQueue.dequeue();\n const [lineMappingChanged, linesChangedEvent, linesInsertedEvent, linesDeletedEvent] = this._lines.onModelLineChanged(versionId, change.lineNumber, changedLineBreakData);\n hadModelLineChangeThatChangedLineMapping = lineMappingChanged;\n if (linesChangedEvent) {\n eventsCollector.emitViewEvent(linesChangedEvent);\n }\n if (linesInsertedEvent) {\n eventsCollector.emitViewEvent(linesInsertedEvent);\n this.viewLayout.onLinesInserted(linesInsertedEvent.fromLineNumber, linesInsertedEvent.toLineNumber);\n }\n if (linesDeletedEvent) {\n eventsCollector.emitViewEvent(linesDeletedEvent);\n this.viewLayout.onLinesDeleted(linesDeletedEvent.fromLineNumber, linesDeletedEvent.toLineNumber);\n }\n break;\n }\n case 5 /* textModelEvents.RawContentChangedType.EOLChanged */: {\n // Nothing to do. The new version will be accepted below\n break;\n }\n }\n }\n if (versionId !== null) {\n this._lines.acceptVersionId(versionId);\n }\n this.viewLayout.onHeightMaybeChanged();\n if (!hadOtherModelChange && hadModelLineChangeThatChangedLineMapping) {\n eventsCollector.emitViewEvent(new _viewEvents_js__WEBPACK_IMPORTED_MODULE_15__.ViewLineMappingChangedEvent());\n eventsCollector.emitViewEvent(new _viewEvents_js__WEBPACK_IMPORTED_MODULE_15__.ViewDecorationsChangedEvent(null));\n this._cursor.onLineMappingChanged(eventsCollector);\n this._decorations.onLineMappingChanged();\n }\n }\n finally {\n this._eventDispatcher.endEmitViewEvents();\n }\n // Update the configuration and reset the centered view line\n const viewportStartWasValid = this._viewportStart.isValid;\n this._viewportStart.invalidate();\n this._configuration.setModelLineCount(this.model.getLineCount());\n this._updateConfigurationViewLineCountNow();\n // Recover viewport\n if (!this._hasFocus && this.model.getAttachedEditorCount() >= 2 && viewportStartWasValid) {\n const modelRange = this.model._getTrackedRange(this._viewportStart.modelTrackedRange);\n if (modelRange) {\n const viewPosition = this.coordinatesConverter.convertModelPositionToViewPosition(modelRange.getStartPosition());\n const viewPositionTop = this.viewLayout.getVerticalOffsetForLineNumber(viewPosition.lineNumber);\n this.viewLayout.setScrollPosition({ scrollTop: viewPositionTop + this._viewportStart.startLineDelta }, 1 /* ScrollType.Immediate */);\n }\n }\n try {\n const eventsCollector = this._eventDispatcher.beginEmitViewEvents();\n if (e instanceof _textModelEvents_js__WEBPACK_IMPORTED_MODULE_11__.InternalModelContentChangeEvent) {\n eventsCollector.emitOutgoingEvent(new _viewModelEventDispatcher_js__WEBPACK_IMPORTED_MODULE_20__.ModelContentChangedEvent(e.contentChangedEvent));\n }\n this._cursor.onModelContentChanged(eventsCollector, e);\n }\n finally {\n this._eventDispatcher.endEmitViewEvents();\n }\n this._handleVisibleLinesChanged();\n }));\n this._register(this.model.onDidChangeTokens((e) => {\n const viewRanges = [];\n for (let j = 0, lenJ = e.ranges.length; j < lenJ; j++) {\n const modelRange = e.ranges[j];\n const viewStartLineNumber = this.coordinatesConverter.convertModelPositionToViewPosition(new _core_position_js__WEBPACK_IMPORTED_MODULE_9__.Position(modelRange.fromLineNumber, 1)).lineNumber;\n const viewEndLineNumber = this.coordinatesConverter.convertModelPositionToViewPosition(new _core_position_js__WEBPACK_IMPORTED_MODULE_9__.Position(modelRange.toLineNumber, this.model.getLineMaxColumn(modelRange.toLineNumber))).lineNumber;\n viewRanges[j] = {\n fromLineNumber: viewStartLineNumber,\n toLineNumber: viewEndLineNumber\n };\n }\n this._eventDispatcher.emitSingleViewEvent(new _viewEvents_js__WEBPACK_IMPORTED_MODULE_15__.ViewTokensChangedEvent(viewRanges));\n this._eventDispatcher.emitOutgoingEvent(new _viewModelEventDispatcher_js__WEBPACK_IMPORTED_MODULE_20__.ModelTokensChangedEvent(e));\n }));\n this._register(this.model.onDidChangeLanguageConfiguration((e) => {\n this._eventDispatcher.emitSingleViewEvent(new _viewEvents_js__WEBPACK_IMPORTED_MODULE_15__.ViewLanguageConfigurationEvent());\n this.cursorConfig = new _cursorCommon_js__WEBPACK_IMPORTED_MODULE_8__.CursorConfiguration(this.model.getLanguageId(), this.model.getOptions(), this._configuration, this.languageConfigurationService);\n this._cursor.updateConfiguration(this.cursorConfig);\n this._eventDispatcher.emitOutgoingEvent(new _viewModelEventDispatcher_js__WEBPACK_IMPORTED_MODULE_20__.ModelLanguageConfigurationChangedEvent(e));\n }));\n this._register(this.model.onDidChangeLanguage((e) => {\n this.cursorConfig = new _cursorCommon_js__WEBPACK_IMPORTED_MODULE_8__.CursorConfiguration(this.model.getLanguageId(), this.model.getOptions(), this._configuration, this.languageConfigurationService);\n this._cursor.updateConfiguration(this.cursorConfig);\n this._eventDispatcher.emitOutgoingEvent(new _viewModelEventDispatcher_js__WEBPACK_IMPORTED_MODULE_20__.ModelLanguageChangedEvent(e));\n }));\n this._register(this.model.onDidChangeOptions((e) => {\n // A tab size change causes a line mapping changed event => all view parts will repaint OK, no further event needed here\n if (this._lines.setTabSize(this.model.getOptions().tabSize)) {\n try {\n const eventsCollector = this._eventDispatcher.beginEmitViewEvents();\n eventsCollector.emitViewEvent(new _viewEvents_js__WEBPACK_IMPORTED_MODULE_15__.ViewFlushedEvent());\n eventsCollector.emitViewEvent(new _viewEvents_js__WEBPACK_IMPORTED_MODULE_15__.ViewLineMappingChangedEvent());\n eventsCollector.emitViewEvent(new _viewEvents_js__WEBPACK_IMPORTED_MODULE_15__.ViewDecorationsChangedEvent(null));\n this._cursor.onLineMappingChanged(eventsCollector);\n this._decorations.onLineMappingChanged();\n this.viewLayout.onFlushed(this.getLineCount());\n }\n finally {\n this._eventDispatcher.endEmitViewEvents();\n }\n this._updateConfigurationViewLineCount.schedule();\n }\n this.cursorConfig = new _cursorCommon_js__WEBPACK_IMPORTED_MODULE_8__.CursorConfiguration(this.model.getLanguageId(), this.model.getOptions(), this._configuration, this.languageConfigurationService);\n this._cursor.updateConfiguration(this.cursorConfig);\n this._eventDispatcher.emitOutgoingEvent(new _viewModelEventDispatcher_js__WEBPACK_IMPORTED_MODULE_20__.ModelOptionsChangedEvent(e));\n }));\n this._register(this.model.onDidChangeDecorations((e) => {\n this._decorations.onModelDecorationsChanged();\n this._eventDispatcher.emitSingleViewEvent(new _viewEvents_js__WEBPACK_IMPORTED_MODULE_15__.ViewDecorationsChangedEvent(e));\n this._eventDispatcher.emitOutgoingEvent(new _viewModelEventDispatcher_js__WEBPACK_IMPORTED_MODULE_20__.ModelDecorationsChangedEvent(e));\n }));\n }\n setHiddenAreas(ranges, source) {\n var _a;\n this.hiddenAreasModel.setHiddenAreas(source, ranges);\n const mergedRanges = this.hiddenAreasModel.getMergedRanges();\n if (mergedRanges === this.previousHiddenAreas) {\n return;\n }\n this.previousHiddenAreas = mergedRanges;\n const stableViewport = this._captureStableViewport();\n let lineMappingChanged = false;\n try {\n const eventsCollector = this._eventDispatcher.beginEmitViewEvents();\n lineMappingChanged = this._lines.setHiddenAreas(mergedRanges);\n if (lineMappingChanged) {\n eventsCollector.emitViewEvent(new _viewEvents_js__WEBPACK_IMPORTED_MODULE_15__.ViewFlushedEvent());\n eventsCollector.emitViewEvent(new _viewEvents_js__WEBPACK_IMPORTED_MODULE_15__.ViewLineMappingChangedEvent());\n eventsCollector.emitViewEvent(new _viewEvents_js__WEBPACK_IMPORTED_MODULE_15__.ViewDecorationsChangedEvent(null));\n this._cursor.onLineMappingChanged(eventsCollector);\n this._decorations.onLineMappingChanged();\n this.viewLayout.onFlushed(this.getLineCount());\n this.viewLayout.onHeightMaybeChanged();\n }\n const firstModelLineInViewPort = (_a = stableViewport.viewportStartModelPosition) === null || _a === void 0 ? void 0 : _a.lineNumber;\n const firstModelLineIsHidden = firstModelLineInViewPort && mergedRanges.some(range => range.startLineNumber <= firstModelLineInViewPort && firstModelLineInViewPort <= range.endLineNumber);\n if (!firstModelLineIsHidden) {\n stableViewport.recoverViewportStart(this.coordinatesConverter, this.viewLayout);\n }\n }\n finally {\n this._eventDispatcher.endEmitViewEvents();\n }\n this._updateConfigurationViewLineCount.schedule();\n if (lineMappingChanged) {\n this._eventDispatcher.emitOutgoingEvent(new _viewModelEventDispatcher_js__WEBPACK_IMPORTED_MODULE_20__.HiddenAreasChangedEvent());\n }\n }\n getVisibleRangesPlusViewportAboveBelow() {\n const layoutInfo = this._configuration.options.get(144 /* EditorOption.layoutInfo */);\n const lineHeight = this._configuration.options.get(67 /* EditorOption.lineHeight */);\n const linesAround = Math.max(20, Math.round(layoutInfo.height / lineHeight));\n const partialData = this.viewLayout.getLinesViewportData();\n const startViewLineNumber = Math.max(1, partialData.completelyVisibleStartLineNumber - linesAround);\n const endViewLineNumber = Math.min(this.getLineCount(), partialData.completelyVisibleEndLineNumber + linesAround);\n return this._toModelVisibleRanges(new _core_range_js__WEBPACK_IMPORTED_MODULE_10__.Range(startViewLineNumber, this.getLineMinColumn(startViewLineNumber), endViewLineNumber, this.getLineMaxColumn(endViewLineNumber)));\n }\n getVisibleRanges() {\n const visibleViewRange = this.getCompletelyVisibleViewRange();\n return this._toModelVisibleRanges(visibleViewRange);\n }\n getHiddenAreas() {\n return this._lines.getHiddenAreas();\n }\n _toModelVisibleRanges(visibleViewRange) {\n const visibleRange = this.coordinatesConverter.convertViewRangeToModelRange(visibleViewRange);\n const hiddenAreas = this._lines.getHiddenAreas();\n if (hiddenAreas.length === 0) {\n return [visibleRange];\n }\n const result = [];\n let resultLen = 0;\n let startLineNumber = visibleRange.startLineNumber;\n let startColumn = visibleRange.startColumn;\n const endLineNumber = visibleRange.endLineNumber;\n const endColumn = visibleRange.endColumn;\n for (let i = 0, len = hiddenAreas.length; i < len; i++) {\n const hiddenStartLineNumber = hiddenAreas[i].startLineNumber;\n const hiddenEndLineNumber = hiddenAreas[i].endLineNumber;\n if (hiddenEndLineNumber < startLineNumber) {\n continue;\n }\n if (hiddenStartLineNumber > endLineNumber) {\n continue;\n }\n if (startLineNumber < hiddenStartLineNumber) {\n result[resultLen++] = new _core_range_js__WEBPACK_IMPORTED_MODULE_10__.Range(startLineNumber, startColumn, hiddenStartLineNumber - 1, this.model.getLineMaxColumn(hiddenStartLineNumber - 1));\n }\n startLineNumber = hiddenEndLineNumber + 1;\n startColumn = 1;\n }\n if (startLineNumber < endLineNumber || (startLineNumber === endLineNumber && startColumn < endColumn)) {\n result[resultLen++] = new _core_range_js__WEBPACK_IMPORTED_MODULE_10__.Range(startLineNumber, startColumn, endLineNumber, endColumn);\n }\n return result;\n }\n getCompletelyVisibleViewRange() {\n const partialData = this.viewLayout.getLinesViewportData();\n const startViewLineNumber = partialData.completelyVisibleStartLineNumber;\n const endViewLineNumber = partialData.completelyVisibleEndLineNumber;\n return new _core_range_js__WEBPACK_IMPORTED_MODULE_10__.Range(startViewLineNumber, this.getLineMinColumn(startViewLineNumber), endViewLineNumber, this.getLineMaxColumn(endViewLineNumber));\n }\n getCompletelyVisibleViewRangeAtScrollTop(scrollTop) {\n const partialData = this.viewLayout.getLinesViewportDataAtScrollTop(scrollTop);\n const startViewLineNumber = partialData.completelyVisibleStartLineNumber;\n const endViewLineNumber = partialData.completelyVisibleEndLineNumber;\n return new _core_range_js__WEBPACK_IMPORTED_MODULE_10__.Range(startViewLineNumber, this.getLineMinColumn(startViewLineNumber), endViewLineNumber, this.getLineMaxColumn(endViewLineNumber));\n }\n saveState() {\n const compatViewState = this.viewLayout.saveState();\n const scrollTop = compatViewState.scrollTop;\n const firstViewLineNumber = this.viewLayout.getLineNumberAtVerticalOffset(scrollTop);\n const firstPosition = this.coordinatesConverter.convertViewPositionToModelPosition(new _core_position_js__WEBPACK_IMPORTED_MODULE_9__.Position(firstViewLineNumber, this.getLineMinColumn(firstViewLineNumber)));\n const firstPositionDeltaTop = this.viewLayout.getVerticalOffsetForLineNumber(firstViewLineNumber) - scrollTop;\n return {\n scrollLeft: compatViewState.scrollLeft,\n firstPosition: firstPosition,\n firstPositionDeltaTop: firstPositionDeltaTop\n };\n }\n reduceRestoreState(state) {\n if (typeof state.firstPosition === 'undefined') {\n // This is a view state serialized by an older version\n return this._reduceRestoreStateCompatibility(state);\n }\n const modelPosition = this.model.validatePosition(state.firstPosition);\n const viewPosition = this.coordinatesConverter.convertModelPositionToViewPosition(modelPosition);\n const scrollTop = this.viewLayout.getVerticalOffsetForLineNumber(viewPosition.lineNumber) - state.firstPositionDeltaTop;\n return {\n scrollLeft: state.scrollLeft,\n scrollTop: scrollTop\n };\n }\n _reduceRestoreStateCompatibility(state) {\n return {\n scrollLeft: state.scrollLeft,\n scrollTop: state.scrollTopWithoutViewZones\n };\n }\n getTabSize() {\n return this.model.getOptions().tabSize;\n }\n getLineCount() {\n return this._lines.getViewLineCount();\n }\n /**\n * Gives a hint that a lot of requests are about to come in for these line numbers.\n */\n setViewport(startLineNumber, endLineNumber, centeredLineNumber) {\n this._viewportStart.update(this, startLineNumber);\n }\n getActiveIndentGuide(lineNumber, minLineNumber, maxLineNumber) {\n return this._lines.getActiveIndentGuide(lineNumber, minLineNumber, maxLineNumber);\n }\n getLinesIndentGuides(startLineNumber, endLineNumber) {\n return this._lines.getViewLinesIndentGuides(startLineNumber, endLineNumber);\n }\n getBracketGuidesInRangeByLine(startLineNumber, endLineNumber, activePosition, options) {\n return this._lines.getViewLinesBracketGuides(startLineNumber, endLineNumber, activePosition, options);\n }\n getLineContent(lineNumber) {\n return this._lines.getViewLineContent(lineNumber);\n }\n getLineLength(lineNumber) {\n return this._lines.getViewLineLength(lineNumber);\n }\n getLineMinColumn(lineNumber) {\n return this._lines.getViewLineMinColumn(lineNumber);\n }\n getLineMaxColumn(lineNumber) {\n return this._lines.getViewLineMaxColumn(lineNumber);\n }\n getLineFirstNonWhitespaceColumn(lineNumber) {\n const result = _base_common_strings_js__WEBPACK_IMPORTED_MODULE_5__.firstNonWhitespaceIndex(this.getLineContent(lineNumber));\n if (result === -1) {\n return 0;\n }\n return result + 1;\n }\n getLineLastNonWhitespaceColumn(lineNumber) {\n const result = _base_common_strings_js__WEBPACK_IMPORTED_MODULE_5__.lastNonWhitespaceIndex(this.getLineContent(lineNumber));\n if (result === -1) {\n return 0;\n }\n return result + 2;\n }\n getMinimapDecorationsInRange(range) {\n return this._decorations.getMinimapDecorationsInRange(range);\n }\n getDecorationsInViewport(visibleRange) {\n return this._decorations.getDecorationsViewportData(visibleRange).decorations;\n }\n getInjectedTextAt(viewPosition) {\n return this._lines.getInjectedTextAt(viewPosition);\n }\n getViewportViewLineRenderingData(visibleRange, lineNumber) {\n const allInlineDecorations = this._decorations.getDecorationsViewportData(visibleRange).inlineDecorations;\n const inlineDecorations = allInlineDecorations[lineNumber - visibleRange.startLineNumber];\n return this._getViewLineRenderingData(lineNumber, inlineDecorations);\n }\n getViewLineRenderingData(lineNumber) {\n const inlineDecorations = this._decorations.getInlineDecorationsOnLine(lineNumber);\n return this._getViewLineRenderingData(lineNumber, inlineDecorations);\n }\n _getViewLineRenderingData(lineNumber, inlineDecorations) {\n const mightContainRTL = this.model.mightContainRTL();\n const mightContainNonBasicASCII = this.model.mightContainNonBasicASCII();\n const tabSize = this.getTabSize();\n const lineData = this._lines.getViewLineData(lineNumber);\n if (lineData.inlineDecorations) {\n inlineDecorations = [\n ...inlineDecorations,\n ...lineData.inlineDecorations.map(d => d.toInlineDecoration(lineNumber))\n ];\n }\n return new _viewModel_js__WEBPACK_IMPORTED_MODULE_18__.ViewLineRenderingData(lineData.minColumn, lineData.maxColumn, lineData.content, lineData.continuesWithWrappedLine, mightContainRTL, mightContainNonBasicASCII, lineData.tokens, inlineDecorations, tabSize, lineData.startVisibleColumn);\n }\n getViewLineData(lineNumber) {\n return this._lines.getViewLineData(lineNumber);\n }\n getMinimapLinesRenderingData(startLineNumber, endLineNumber, needed) {\n const result = this._lines.getViewLinesData(startLineNumber, endLineNumber, needed);\n return new _viewModel_js__WEBPACK_IMPORTED_MODULE_18__.MinimapLinesRenderingData(this.getTabSize(), result);\n }\n getAllOverviewRulerDecorations(theme) {\n const decorations = this.model.getOverviewRulerDecorations(this._editorId, (0,_config_editorOptions_js__WEBPACK_IMPORTED_MODULE_6__.filterValidationDecorations)(this._configuration.options));\n const result = new OverviewRulerDecorations();\n for (const decoration of decorations) {\n const decorationOptions = decoration.options;\n const opts = decorationOptions.overviewRuler;\n if (!opts) {\n continue;\n }\n const lane = opts.position;\n if (lane === 0) {\n continue;\n }\n const color = opts.getColor(theme.value);\n const viewStartLineNumber = this.coordinatesConverter.getViewLineNumberOfModelPosition(decoration.range.startLineNumber, decoration.range.startColumn);\n const viewEndLineNumber = this.coordinatesConverter.getViewLineNumberOfModelPosition(decoration.range.endLineNumber, decoration.range.endColumn);\n result.accept(color, decorationOptions.zIndex, viewStartLineNumber, viewEndLineNumber, lane);\n }\n return result.asArray;\n }\n _invalidateDecorationsColorCache() {\n const decorations = this.model.getOverviewRulerDecorations();\n for (const decoration of decorations) {\n const opts1 = decoration.options.overviewRuler;\n opts1 === null || opts1 === void 0 ? void 0 : opts1.invalidateCachedColor();\n const opts2 = decoration.options.minimap;\n opts2 === null || opts2 === void 0 ? void 0 : opts2.invalidateCachedColor();\n }\n }\n getValueInRange(range, eol) {\n const modelRange = this.coordinatesConverter.convertViewRangeToModelRange(range);\n return this.model.getValueInRange(modelRange, eol);\n }\n getValueLengthInRange(range, eol) {\n const modelRange = this.coordinatesConverter.convertViewRangeToModelRange(range);\n return this.model.getValueLengthInRange(modelRange, eol);\n }\n modifyPosition(position, offset) {\n const modelPosition = this.coordinatesConverter.convertViewPositionToModelPosition(position);\n const resultModelPosition = this.model.modifyPosition(modelPosition, offset);\n return this.coordinatesConverter.convertModelPositionToViewPosition(resultModelPosition);\n }\n deduceModelPositionRelativeToViewPosition(viewAnchorPosition, deltaOffset, lineFeedCnt) {\n const modelAnchor = this.coordinatesConverter.convertViewPositionToModelPosition(viewAnchorPosition);\n if (this.model.getEOL().length === 2) {\n // This model uses CRLF, so the delta must take that into account\n if (deltaOffset < 0) {\n deltaOffset -= lineFeedCnt;\n }\n else {\n deltaOffset += lineFeedCnt;\n }\n }\n const modelAnchorOffset = this.model.getOffsetAt(modelAnchor);\n const resultOffset = modelAnchorOffset + deltaOffset;\n return this.model.getPositionAt(resultOffset);\n }\n getPlainTextToCopy(modelRanges, emptySelectionClipboard, forceCRLF) {\n const newLineCharacter = forceCRLF ? '\\r\\n' : this.model.getEOL();\n modelRanges = modelRanges.slice(0);\n modelRanges.sort(_core_range_js__WEBPACK_IMPORTED_MODULE_10__.Range.compareRangesUsingStarts);\n let hasEmptyRange = false;\n let hasNonEmptyRange = false;\n for (const range of modelRanges) {\n if (range.isEmpty()) {\n hasEmptyRange = true;\n }\n else {\n hasNonEmptyRange = true;\n }\n }\n if (!hasNonEmptyRange) {\n // all ranges are empty\n if (!emptySelectionClipboard) {\n return '';\n }\n const modelLineNumbers = modelRanges.map((r) => r.startLineNumber);\n let result = '';\n for (let i = 0; i < modelLineNumbers.length; i++) {\n if (i > 0 && modelLineNumbers[i - 1] === modelLineNumbers[i]) {\n continue;\n }\n result += this.model.getLineContent(modelLineNumbers[i]) + newLineCharacter;\n }\n return result;\n }\n if (hasEmptyRange && emptySelectionClipboard) {\n // mixed empty selections and non-empty selections\n const result = [];\n let prevModelLineNumber = 0;\n for (const modelRange of modelRanges) {\n const modelLineNumber = modelRange.startLineNumber;\n if (modelRange.isEmpty()) {\n if (modelLineNumber !== prevModelLineNumber) {\n result.push(this.model.getLineContent(modelLineNumber));\n }\n }\n else {\n result.push(this.model.getValueInRange(modelRange, forceCRLF ? 2 /* EndOfLinePreference.CRLF */ : 0 /* EndOfLinePreference.TextDefined */));\n }\n prevModelLineNumber = modelLineNumber;\n }\n return result.length === 1 ? result[0] : result;\n }\n const result = [];\n for (const modelRange of modelRanges) {\n if (!modelRange.isEmpty()) {\n result.push(this.model.getValueInRange(modelRange, forceCRLF ? 2 /* EndOfLinePreference.CRLF */ : 0 /* EndOfLinePreference.TextDefined */));\n }\n }\n return result.length === 1 ? result[0] : result;\n }\n getRichTextToCopy(modelRanges, emptySelectionClipboard) {\n const languageId = this.model.getLanguageId();\n if (languageId === _languages_modesRegistry_js__WEBPACK_IMPORTED_MODULE_13__.PLAINTEXT_LANGUAGE_ID) {\n return null;\n }\n if (modelRanges.length !== 1) {\n // no multiple selection support at this time\n return null;\n }\n let range = modelRanges[0];\n if (range.isEmpty()) {\n if (!emptySelectionClipboard) {\n // nothing to copy\n return null;\n }\n const lineNumber = range.startLineNumber;\n range = new _core_range_js__WEBPACK_IMPORTED_MODULE_10__.Range(lineNumber, this.model.getLineMinColumn(lineNumber), lineNumber, this.model.getLineMaxColumn(lineNumber));\n }\n const fontInfo = this._configuration.options.get(50 /* EditorOption.fontInfo */);\n const colorMap = this._getColorMap();\n const hasBadChars = (/[:;\\\\\\/<>]/.test(fontInfo.fontFamily));\n const useDefaultFontFamily = (hasBadChars || fontInfo.fontFamily === _config_editorOptions_js__WEBPACK_IMPORTED_MODULE_6__.EDITOR_FONT_DEFAULTS.fontFamily);\n let fontFamily;\n if (useDefaultFontFamily) {\n fontFamily = _config_editorOptions_js__WEBPACK_IMPORTED_MODULE_6__.EDITOR_FONT_DEFAULTS.fontFamily;\n }\n else {\n fontFamily = fontInfo.fontFamily;\n fontFamily = fontFamily.replace(/\"/g, '\\'');\n const hasQuotesOrIsList = /[,']/.test(fontFamily);\n if (!hasQuotesOrIsList) {\n const needsQuotes = /[+ ]/.test(fontFamily);\n if (needsQuotes) {\n fontFamily = `'${fontFamily}'`;\n }\n }\n fontFamily = `${fontFamily}, ${_config_editorOptions_js__WEBPACK_IMPORTED_MODULE_6__.EDITOR_FONT_DEFAULTS.fontFamily}`;\n }\n return {\n mode: languageId,\n html: (``\n + this._getHTMLToCopy(range, colorMap)\n + ' ')\n };\n }\n _getHTMLToCopy(modelRange, colorMap) {\n const startLineNumber = modelRange.startLineNumber;\n const startColumn = modelRange.startColumn;\n const endLineNumber = modelRange.endLineNumber;\n const endColumn = modelRange.endColumn;\n const tabSize = this.getTabSize();\n let result = '';\n for (let lineNumber = startLineNumber; lineNumber <= endLineNumber; lineNumber++) {\n const lineTokens = this.model.tokenization.getLineTokens(lineNumber);\n const lineContent = lineTokens.getLineContent();\n const startOffset = (lineNumber === startLineNumber ? startColumn - 1 : 0);\n const endOffset = (lineNumber === endLineNumber ? endColumn - 1 : lineContent.length);\n if (lineContent === '') {\n result += ' ';\n }\n else {\n result += (0,_languages_textToHtmlTokenizer_js__WEBPACK_IMPORTED_MODULE_14__.tokenizeLineToHTML)(lineContent, lineTokens.inflate(), colorMap, startOffset, endOffset, tabSize, _base_common_platform_js__WEBPACK_IMPORTED_MODULE_4__.isWindows);\n }\n }\n return result;\n }\n _getColorMap() {\n const colorMap = _languages_js__WEBPACK_IMPORTED_MODULE_12__.TokenizationRegistry.getColorMap();\n const result = ['#000000'];\n if (colorMap) {\n for (let i = 1, len = colorMap.length; i < len; i++) {\n result[i] = _base_common_color_js__WEBPACK_IMPORTED_MODULE_2__.Color.Format.CSS.formatHex(colorMap[i]);\n }\n }\n return result;\n }\n //#region cursor operations\n getPrimaryCursorState() {\n return this._cursor.getPrimaryCursorState();\n }\n getLastAddedCursorIndex() {\n return this._cursor.getLastAddedCursorIndex();\n }\n getCursorStates() {\n return this._cursor.getCursorStates();\n }\n setCursorStates(source, reason, states) {\n return this._withViewEventsCollector(eventsCollector => this._cursor.setStates(eventsCollector, source, reason, states));\n }\n getCursorColumnSelectData() {\n return this._cursor.getCursorColumnSelectData();\n }\n getCursorAutoClosedCharacters() {\n return this._cursor.getAutoClosedCharacters();\n }\n setCursorColumnSelectData(columnSelectData) {\n this._cursor.setCursorColumnSelectData(columnSelectData);\n }\n getPrevEditOperationType() {\n return this._cursor.getPrevEditOperationType();\n }\n setPrevEditOperationType(type) {\n this._cursor.setPrevEditOperationType(type);\n }\n getSelection() {\n return this._cursor.getSelection();\n }\n getSelections() {\n return this._cursor.getSelections();\n }\n getPosition() {\n return this._cursor.getPrimaryCursorState().modelState.position;\n }\n setSelections(source, selections, reason = 0 /* CursorChangeReason.NotSet */) {\n this._withViewEventsCollector(eventsCollector => this._cursor.setSelections(eventsCollector, source, selections, reason));\n }\n saveCursorState() {\n return this._cursor.saveState();\n }\n restoreCursorState(states) {\n this._withViewEventsCollector(eventsCollector => this._cursor.restoreState(eventsCollector, states));\n }\n _executeCursorEdit(callback) {\n if (this._cursor.context.cursorConfig.readOnly) {\n // we cannot edit when read only...\n this._eventDispatcher.emitOutgoingEvent(new _viewModelEventDispatcher_js__WEBPACK_IMPORTED_MODULE_20__.ReadOnlyEditAttemptEvent());\n return;\n }\n this._withViewEventsCollector(callback);\n }\n executeEdits(source, edits, cursorStateComputer) {\n this._executeCursorEdit(eventsCollector => this._cursor.executeEdits(eventsCollector, source, edits, cursorStateComputer));\n }\n startComposition() {\n this._executeCursorEdit(eventsCollector => this._cursor.startComposition(eventsCollector));\n }\n endComposition(source) {\n this._executeCursorEdit(eventsCollector => this._cursor.endComposition(eventsCollector, source));\n }\n type(text, source) {\n this._executeCursorEdit(eventsCollector => this._cursor.type(eventsCollector, text, source));\n }\n compositionType(text, replacePrevCharCnt, replaceNextCharCnt, positionDelta, source) {\n this._executeCursorEdit(eventsCollector => this._cursor.compositionType(eventsCollector, text, replacePrevCharCnt, replaceNextCharCnt, positionDelta, source));\n }\n paste(text, pasteOnNewLine, multicursorText, source) {\n this._executeCursorEdit(eventsCollector => this._cursor.paste(eventsCollector, text, pasteOnNewLine, multicursorText, source));\n }\n cut(source) {\n this._executeCursorEdit(eventsCollector => this._cursor.cut(eventsCollector, source));\n }\n executeCommand(command, source) {\n this._executeCursorEdit(eventsCollector => this._cursor.executeCommand(eventsCollector, command, source));\n }\n executeCommands(commands, source) {\n this._executeCursorEdit(eventsCollector => this._cursor.executeCommands(eventsCollector, commands, source));\n }\n revealPrimaryCursor(source, revealHorizontal, minimalReveal = false) {\n this._withViewEventsCollector(eventsCollector => this._cursor.revealPrimary(eventsCollector, source, minimalReveal, 0 /* viewEvents.VerticalRevealType.Simple */, revealHorizontal, 0 /* ScrollType.Smooth */));\n }\n revealTopMostCursor(source) {\n const viewPosition = this._cursor.getTopMostViewPosition();\n const viewRange = new _core_range_js__WEBPACK_IMPORTED_MODULE_10__.Range(viewPosition.lineNumber, viewPosition.column, viewPosition.lineNumber, viewPosition.column);\n this._withViewEventsCollector(eventsCollector => eventsCollector.emitViewEvent(new _viewEvents_js__WEBPACK_IMPORTED_MODULE_15__.ViewRevealRangeRequestEvent(source, false, viewRange, null, 0 /* viewEvents.VerticalRevealType.Simple */, true, 0 /* ScrollType.Smooth */)));\n }\n revealBottomMostCursor(source) {\n const viewPosition = this._cursor.getBottomMostViewPosition();\n const viewRange = new _core_range_js__WEBPACK_IMPORTED_MODULE_10__.Range(viewPosition.lineNumber, viewPosition.column, viewPosition.lineNumber, viewPosition.column);\n this._withViewEventsCollector(eventsCollector => eventsCollector.emitViewEvent(new _viewEvents_js__WEBPACK_IMPORTED_MODULE_15__.ViewRevealRangeRequestEvent(source, false, viewRange, null, 0 /* viewEvents.VerticalRevealType.Simple */, true, 0 /* ScrollType.Smooth */)));\n }\n revealRange(source, revealHorizontal, viewRange, verticalType, scrollType) {\n this._withViewEventsCollector(eventsCollector => eventsCollector.emitViewEvent(new _viewEvents_js__WEBPACK_IMPORTED_MODULE_15__.ViewRevealRangeRequestEvent(source, false, viewRange, null, verticalType, revealHorizontal, scrollType)));\n }\n //#endregion\n //#region viewLayout\n changeWhitespace(callback) {\n const hadAChange = this.viewLayout.changeWhitespace(callback);\n if (hadAChange) {\n this._eventDispatcher.emitSingleViewEvent(new _viewEvents_js__WEBPACK_IMPORTED_MODULE_15__.ViewZonesChangedEvent());\n this._eventDispatcher.emitOutgoingEvent(new _viewModelEventDispatcher_js__WEBPACK_IMPORTED_MODULE_20__.ViewZonesChangedEvent());\n }\n }\n //#endregion\n _withViewEventsCollector(callback) {\n try {\n const eventsCollector = this._eventDispatcher.beginEmitViewEvents();\n return callback(eventsCollector);\n }\n finally {\n this._eventDispatcher.endEmitViewEvents();\n }\n }\n normalizePosition(position, affinity) {\n return this._lines.normalizePosition(position, affinity);\n }\n /**\n * Gets the column at which indentation stops at a given line.\n * @internal\n */\n getLineIndentColumn(lineNumber) {\n return this._lines.getLineIndentColumn(lineNumber);\n }\n}\nclass ViewportStart {\n static create(model) {\n const viewportStartLineTrackedRange = model._setTrackedRange(null, new _core_range_js__WEBPACK_IMPORTED_MODULE_10__.Range(1, 1, 1, 1), 1 /* TrackedRangeStickiness.NeverGrowsWhenTypingAtEdges */);\n return new ViewportStart(model, 1, false, viewportStartLineTrackedRange, 0);\n }\n get viewLineNumber() {\n return this._viewLineNumber;\n }\n get isValid() {\n return this._isValid;\n }\n get modelTrackedRange() {\n return this._modelTrackedRange;\n }\n get startLineDelta() {\n return this._startLineDelta;\n }\n constructor(_model, _viewLineNumber, _isValid, _modelTrackedRange, _startLineDelta) {\n this._model = _model;\n this._viewLineNumber = _viewLineNumber;\n this._isValid = _isValid;\n this._modelTrackedRange = _modelTrackedRange;\n this._startLineDelta = _startLineDelta;\n }\n dispose() {\n this._model._setTrackedRange(this._modelTrackedRange, null, 1 /* TrackedRangeStickiness.NeverGrowsWhenTypingAtEdges */);\n }\n update(viewModel, startLineNumber) {\n const position = viewModel.coordinatesConverter.convertViewPositionToModelPosition(new _core_position_js__WEBPACK_IMPORTED_MODULE_9__.Position(startLineNumber, viewModel.getLineMinColumn(startLineNumber)));\n const viewportStartLineTrackedRange = viewModel.model._setTrackedRange(this._modelTrackedRange, new _core_range_js__WEBPACK_IMPORTED_MODULE_10__.Range(position.lineNumber, position.column, position.lineNumber, position.column), 1 /* TrackedRangeStickiness.NeverGrowsWhenTypingAtEdges */);\n const viewportStartLineTop = viewModel.viewLayout.getVerticalOffsetForLineNumber(startLineNumber);\n const scrollTop = viewModel.viewLayout.getCurrentScrollTop();\n this._viewLineNumber = startLineNumber;\n this._isValid = true;\n this._modelTrackedRange = viewportStartLineTrackedRange;\n this._startLineDelta = scrollTop - viewportStartLineTop;\n }\n invalidate() {\n this._isValid = false;\n }\n}\nclass OverviewRulerDecorations {\n constructor() {\n this._asMap = Object.create(null);\n this.asArray = [];\n }\n accept(color, zIndex, startLineNumber, endLineNumber, lane) {\n const prevGroup = this._asMap[color];\n if (prevGroup) {\n const prevData = prevGroup.data;\n const prevLane = prevData[prevData.length - 3];\n const prevEndLineNumber = prevData[prevData.length - 1];\n if (prevLane === lane && prevEndLineNumber + 1 >= startLineNumber) {\n // merge into prev\n if (endLineNumber > prevEndLineNumber) {\n prevData[prevData.length - 1] = endLineNumber;\n }\n return;\n }\n // push\n prevData.push(lane, startLineNumber, endLineNumber);\n }\n else {\n const group = new _viewModel_js__WEBPACK_IMPORTED_MODULE_18__.OverviewRulerDecorationsGroup(color, zIndex, [lane, startLineNumber, endLineNumber]);\n this._asMap[color] = group;\n this.asArray.push(group);\n }\n }\n}\nclass HiddenAreasModel {\n constructor() {\n this.hiddenAreas = new Map();\n this.shouldRecompute = false;\n this.ranges = [];\n }\n setHiddenAreas(source, ranges) {\n const existing = this.hiddenAreas.get(source);\n if (existing && rangeArraysEqual(existing, ranges)) {\n return;\n }\n this.hiddenAreas.set(source, ranges);\n this.shouldRecompute = true;\n }\n /**\n * The returned array is immutable.\n */\n getMergedRanges() {\n if (!this.shouldRecompute) {\n return this.ranges;\n }\n this.shouldRecompute = false;\n const newRanges = Array.from(this.hiddenAreas.values()).reduce((r, hiddenAreas) => mergeLineRangeArray(r, hiddenAreas), []);\n if (rangeArraysEqual(this.ranges, newRanges)) {\n return this.ranges;\n }\n this.ranges = newRanges;\n return this.ranges;\n }\n}\nfunction mergeLineRangeArray(arr1, arr2) {\n const result = [];\n let i = 0;\n let j = 0;\n while (i < arr1.length && j < arr2.length) {\n const item1 = arr1[i];\n const item2 = arr2[j];\n if (item1.endLineNumber < item2.startLineNumber - 1) {\n result.push(arr1[i++]);\n }\n else if (item2.endLineNumber < item1.startLineNumber - 1) {\n result.push(arr2[j++]);\n }\n else {\n const startLineNumber = Math.min(item1.startLineNumber, item2.startLineNumber);\n const endLineNumber = Math.max(item1.endLineNumber, item2.endLineNumber);\n result.push(new _core_range_js__WEBPACK_IMPORTED_MODULE_10__.Range(startLineNumber, 1, endLineNumber, 1));\n i++;\n j++;\n }\n }\n while (i < arr1.length) {\n result.push(arr1[i++]);\n }\n while (j < arr2.length) {\n result.push(arr2[j++]);\n }\n return result;\n}\nfunction rangeArraysEqual(arr1, arr2) {\n if (arr1.length !== arr2.length) {\n return false;\n }\n for (let i = 0; i < arr1.length; i++) {\n if (!arr1[i].equalsRange(arr2[i])) {\n return false;\n }\n }\n return true;\n}\n/**\n * Maintain a stable viewport by trying to keep the first line in the viewport constant.\n */\nclass StableViewport {\n constructor(viewportStartModelPosition, startLineDelta) {\n this.viewportStartModelPosition = viewportStartModelPosition;\n this.startLineDelta = startLineDelta;\n }\n recoverViewportStart(coordinatesConverter, viewLayout) {\n if (!this.viewportStartModelPosition) {\n return;\n }\n const viewPosition = coordinatesConverter.convertModelPositionToViewPosition(this.viewportStartModelPosition);\n const viewPositionTop = viewLayout.getVerticalOffsetForLineNumber(viewPosition.lineNumber);\n viewLayout.setScrollPosition({ scrollTop: viewPositionTop + this.startLineDelta }, 1 /* ScrollType.Immediate */);\n }\n}\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/common/viewModel/viewModelImpl.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/common/viewModel/viewModelLines.js":
/*!*************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/common/viewModel/viewModelLines.js ***!
\*************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ ViewModelLinesFromModelAsIs: () => (/* binding */ ViewModelLinesFromModelAsIs),\n/* harmony export */ ViewModelLinesFromProjectedModel: () => (/* binding */ ViewModelLinesFromProjectedModel)\n/* harmony export */ });\n/* harmony import */ var _base_common_arrays_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../base/common/arrays.js */ \"./node_modules/monaco-editor/esm/vs/base/common/arrays.js\");\n/* harmony import */ var _core_position_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../core/position.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/core/position.js\");\n/* harmony import */ var _core_range_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../core/range.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/core/range.js\");\n/* harmony import */ var _textModelGuides_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../textModelGuides.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/textModelGuides.js\");\n/* harmony import */ var _model_textModel_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../model/textModel.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/model/textModel.js\");\n/* harmony import */ var _textModelEvents_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../textModelEvents.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/textModelEvents.js\");\n/* harmony import */ var _viewEvents_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../viewEvents.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/viewEvents.js\");\n/* harmony import */ var _modelLineProjection_js__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ./modelLineProjection.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/viewModel/modelLineProjection.js\");\n/* harmony import */ var _model_prefixSumComputer_js__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ../model/prefixSumComputer.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/model/prefixSumComputer.js\");\n/* harmony import */ var _viewModel_js__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ../viewModel.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/viewModel.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n\n\n\n\n\n\n\n\n\nclass ViewModelLinesFromProjectedModel {\n constructor(editorId, model, domLineBreaksComputerFactory, monospaceLineBreaksComputerFactory, fontInfo, tabSize, wrappingStrategy, wrappingColumn, wrappingIndent, wordBreak) {\n this._editorId = editorId;\n this.model = model;\n this._validModelVersionId = -1;\n this._domLineBreaksComputerFactory = domLineBreaksComputerFactory;\n this._monospaceLineBreaksComputerFactory = monospaceLineBreaksComputerFactory;\n this.fontInfo = fontInfo;\n this.tabSize = tabSize;\n this.wrappingStrategy = wrappingStrategy;\n this.wrappingColumn = wrappingColumn;\n this.wrappingIndent = wrappingIndent;\n this.wordBreak = wordBreak;\n this._constructLines(/*resetHiddenAreas*/ true, null);\n }\n dispose() {\n this.hiddenAreasDecorationIds = this.model.deltaDecorations(this.hiddenAreasDecorationIds, []);\n }\n createCoordinatesConverter() {\n return new CoordinatesConverter(this);\n }\n _constructLines(resetHiddenAreas, previousLineBreaks) {\n this.modelLineProjections = [];\n if (resetHiddenAreas) {\n this.hiddenAreasDecorationIds = this.model.deltaDecorations(this.hiddenAreasDecorationIds, []);\n }\n const linesContent = this.model.getLinesContent();\n const injectedTextDecorations = this.model.getInjectedTextDecorations(this._editorId);\n const lineCount = linesContent.length;\n const lineBreaksComputer = this.createLineBreaksComputer();\n const injectedTextQueue = new _base_common_arrays_js__WEBPACK_IMPORTED_MODULE_0__.ArrayQueue(_textModelEvents_js__WEBPACK_IMPORTED_MODULE_5__.LineInjectedText.fromDecorations(injectedTextDecorations));\n for (let i = 0; i < lineCount; i++) {\n const lineInjectedText = injectedTextQueue.takeWhile(t => t.lineNumber === i + 1);\n lineBreaksComputer.addRequest(linesContent[i], lineInjectedText, previousLineBreaks ? previousLineBreaks[i] : null);\n }\n const linesBreaks = lineBreaksComputer.finalize();\n const values = [];\n const hiddenAreas = this.hiddenAreasDecorationIds.map((areaId) => this.model.getDecorationRange(areaId)).sort(_core_range_js__WEBPACK_IMPORTED_MODULE_2__.Range.compareRangesUsingStarts);\n let hiddenAreaStart = 1, hiddenAreaEnd = 0;\n let hiddenAreaIdx = -1;\n let nextLineNumberToUpdateHiddenArea = (hiddenAreaIdx + 1 < hiddenAreas.length) ? hiddenAreaEnd + 1 : lineCount + 2;\n for (let i = 0; i < lineCount; i++) {\n const lineNumber = i + 1;\n if (lineNumber === nextLineNumberToUpdateHiddenArea) {\n hiddenAreaIdx++;\n hiddenAreaStart = hiddenAreas[hiddenAreaIdx].startLineNumber;\n hiddenAreaEnd = hiddenAreas[hiddenAreaIdx].endLineNumber;\n nextLineNumberToUpdateHiddenArea = (hiddenAreaIdx + 1 < hiddenAreas.length) ? hiddenAreaEnd + 1 : lineCount + 2;\n }\n const isInHiddenArea = (lineNumber >= hiddenAreaStart && lineNumber <= hiddenAreaEnd);\n const line = (0,_modelLineProjection_js__WEBPACK_IMPORTED_MODULE_7__.createModelLineProjection)(linesBreaks[i], !isInHiddenArea);\n values[i] = line.getViewLineCount();\n this.modelLineProjections[i] = line;\n }\n this._validModelVersionId = this.model.getVersionId();\n this.projectedModelLineLineCounts = new _model_prefixSumComputer_js__WEBPACK_IMPORTED_MODULE_8__.ConstantTimePrefixSumComputer(values);\n }\n getHiddenAreas() {\n return this.hiddenAreasDecorationIds.map((decId) => this.model.getDecorationRange(decId));\n }\n setHiddenAreas(_ranges) {\n const validatedRanges = _ranges.map(r => this.model.validateRange(r));\n const newRanges = normalizeLineRanges(validatedRanges);\n // TODO@Martin: Please stop calling this method on each model change!\n // This checks if there really was a change\n const oldRanges = this.hiddenAreasDecorationIds.map((areaId) => this.model.getDecorationRange(areaId)).sort(_core_range_js__WEBPACK_IMPORTED_MODULE_2__.Range.compareRangesUsingStarts);\n if (newRanges.length === oldRanges.length) {\n let hasDifference = false;\n for (let i = 0; i < newRanges.length; i++) {\n if (!newRanges[i].equalsRange(oldRanges[i])) {\n hasDifference = true;\n break;\n }\n }\n if (!hasDifference) {\n return false;\n }\n }\n const newDecorations = newRanges.map((r) => ({\n range: r,\n options: _model_textModel_js__WEBPACK_IMPORTED_MODULE_4__.ModelDecorationOptions.EMPTY,\n }));\n this.hiddenAreasDecorationIds = this.model.deltaDecorations(this.hiddenAreasDecorationIds, newDecorations);\n const hiddenAreas = newRanges;\n let hiddenAreaStart = 1, hiddenAreaEnd = 0;\n let hiddenAreaIdx = -1;\n let nextLineNumberToUpdateHiddenArea = (hiddenAreaIdx + 1 < hiddenAreas.length) ? hiddenAreaEnd + 1 : this.modelLineProjections.length + 2;\n let hasVisibleLine = false;\n for (let i = 0; i < this.modelLineProjections.length; i++) {\n const lineNumber = i + 1;\n if (lineNumber === nextLineNumberToUpdateHiddenArea) {\n hiddenAreaIdx++;\n hiddenAreaStart = hiddenAreas[hiddenAreaIdx].startLineNumber;\n hiddenAreaEnd = hiddenAreas[hiddenAreaIdx].endLineNumber;\n nextLineNumberToUpdateHiddenArea = (hiddenAreaIdx + 1 < hiddenAreas.length) ? hiddenAreaEnd + 1 : this.modelLineProjections.length + 2;\n }\n let lineChanged = false;\n if (lineNumber >= hiddenAreaStart && lineNumber <= hiddenAreaEnd) {\n // Line should be hidden\n if (this.modelLineProjections[i].isVisible()) {\n this.modelLineProjections[i] = this.modelLineProjections[i].setVisible(false);\n lineChanged = true;\n }\n }\n else {\n hasVisibleLine = true;\n // Line should be visible\n if (!this.modelLineProjections[i].isVisible()) {\n this.modelLineProjections[i] = this.modelLineProjections[i].setVisible(true);\n lineChanged = true;\n }\n }\n if (lineChanged) {\n const newOutputLineCount = this.modelLineProjections[i].getViewLineCount();\n this.projectedModelLineLineCounts.setValue(i, newOutputLineCount);\n }\n }\n if (!hasVisibleLine) {\n // Cannot have everything be hidden => reveal everything!\n this.setHiddenAreas([]);\n }\n return true;\n }\n modelPositionIsVisible(modelLineNumber, _modelColumn) {\n if (modelLineNumber < 1 || modelLineNumber > this.modelLineProjections.length) {\n // invalid arguments\n return false;\n }\n return this.modelLineProjections[modelLineNumber - 1].isVisible();\n }\n getModelLineViewLineCount(modelLineNumber) {\n if (modelLineNumber < 1 || modelLineNumber > this.modelLineProjections.length) {\n // invalid arguments\n return 1;\n }\n return this.modelLineProjections[modelLineNumber - 1].getViewLineCount();\n }\n setTabSize(newTabSize) {\n if (this.tabSize === newTabSize) {\n return false;\n }\n this.tabSize = newTabSize;\n this._constructLines(/*resetHiddenAreas*/ false, null);\n return true;\n }\n setWrappingSettings(fontInfo, wrappingStrategy, wrappingColumn, wrappingIndent, wordBreak) {\n const equalFontInfo = this.fontInfo.equals(fontInfo);\n const equalWrappingStrategy = (this.wrappingStrategy === wrappingStrategy);\n const equalWrappingColumn = (this.wrappingColumn === wrappingColumn);\n const equalWrappingIndent = (this.wrappingIndent === wrappingIndent);\n const equalWordBreak = (this.wordBreak === wordBreak);\n if (equalFontInfo && equalWrappingStrategy && equalWrappingColumn && equalWrappingIndent && equalWordBreak) {\n return false;\n }\n const onlyWrappingColumnChanged = (equalFontInfo && equalWrappingStrategy && !equalWrappingColumn && equalWrappingIndent && equalWordBreak);\n this.fontInfo = fontInfo;\n this.wrappingStrategy = wrappingStrategy;\n this.wrappingColumn = wrappingColumn;\n this.wrappingIndent = wrappingIndent;\n this.wordBreak = wordBreak;\n let previousLineBreaks = null;\n if (onlyWrappingColumnChanged) {\n previousLineBreaks = [];\n for (let i = 0, len = this.modelLineProjections.length; i < len; i++) {\n previousLineBreaks[i] = this.modelLineProjections[i].getProjectionData();\n }\n }\n this._constructLines(/*resetHiddenAreas*/ false, previousLineBreaks);\n return true;\n }\n createLineBreaksComputer() {\n const lineBreaksComputerFactory = (this.wrappingStrategy === 'advanced'\n ? this._domLineBreaksComputerFactory\n : this._monospaceLineBreaksComputerFactory);\n return lineBreaksComputerFactory.createLineBreaksComputer(this.fontInfo, this.tabSize, this.wrappingColumn, this.wrappingIndent, this.wordBreak);\n }\n onModelFlushed() {\n this._constructLines(/*resetHiddenAreas*/ true, null);\n }\n onModelLinesDeleted(versionId, fromLineNumber, toLineNumber) {\n if (!versionId || versionId <= this._validModelVersionId) {\n // Here we check for versionId in case the lines were reconstructed in the meantime.\n // We don't want to apply stale change events on top of a newer read model state.\n return null;\n }\n const outputFromLineNumber = (fromLineNumber === 1 ? 1 : this.projectedModelLineLineCounts.getPrefixSum(fromLineNumber - 1) + 1);\n const outputToLineNumber = this.projectedModelLineLineCounts.getPrefixSum(toLineNumber);\n this.modelLineProjections.splice(fromLineNumber - 1, toLineNumber - fromLineNumber + 1);\n this.projectedModelLineLineCounts.removeValues(fromLineNumber - 1, toLineNumber - fromLineNumber + 1);\n return new _viewEvents_js__WEBPACK_IMPORTED_MODULE_6__.ViewLinesDeletedEvent(outputFromLineNumber, outputToLineNumber);\n }\n onModelLinesInserted(versionId, fromLineNumber, _toLineNumber, lineBreaks) {\n if (!versionId || versionId <= this._validModelVersionId) {\n // Here we check for versionId in case the lines were reconstructed in the meantime.\n // We don't want to apply stale change events on top of a newer read model state.\n return null;\n }\n // cannot use this.getHiddenAreas() because those decorations have already seen the effect of this model change\n const isInHiddenArea = (fromLineNumber > 2 && !this.modelLineProjections[fromLineNumber - 2].isVisible());\n const outputFromLineNumber = (fromLineNumber === 1 ? 1 : this.projectedModelLineLineCounts.getPrefixSum(fromLineNumber - 1) + 1);\n let totalOutputLineCount = 0;\n const insertLines = [];\n const insertPrefixSumValues = [];\n for (let i = 0, len = lineBreaks.length; i < len; i++) {\n const line = (0,_modelLineProjection_js__WEBPACK_IMPORTED_MODULE_7__.createModelLineProjection)(lineBreaks[i], !isInHiddenArea);\n insertLines.push(line);\n const outputLineCount = line.getViewLineCount();\n totalOutputLineCount += outputLineCount;\n insertPrefixSumValues[i] = outputLineCount;\n }\n // TODO@Alex: use arrays.arrayInsert\n this.modelLineProjections =\n this.modelLineProjections.slice(0, fromLineNumber - 1)\n .concat(insertLines)\n .concat(this.modelLineProjections.slice(fromLineNumber - 1));\n this.projectedModelLineLineCounts.insertValues(fromLineNumber - 1, insertPrefixSumValues);\n return new _viewEvents_js__WEBPACK_IMPORTED_MODULE_6__.ViewLinesInsertedEvent(outputFromLineNumber, outputFromLineNumber + totalOutputLineCount - 1);\n }\n onModelLineChanged(versionId, lineNumber, lineBreakData) {\n if (versionId !== null && versionId <= this._validModelVersionId) {\n // Here we check for versionId in case the lines were reconstructed in the meantime.\n // We don't want to apply stale change events on top of a newer read model state.\n return [false, null, null, null];\n }\n const lineIndex = lineNumber - 1;\n const oldOutputLineCount = this.modelLineProjections[lineIndex].getViewLineCount();\n const isVisible = this.modelLineProjections[lineIndex].isVisible();\n const line = (0,_modelLineProjection_js__WEBPACK_IMPORTED_MODULE_7__.createModelLineProjection)(lineBreakData, isVisible);\n this.modelLineProjections[lineIndex] = line;\n const newOutputLineCount = this.modelLineProjections[lineIndex].getViewLineCount();\n let lineMappingChanged = false;\n let changeFrom = 0;\n let changeTo = -1;\n let insertFrom = 0;\n let insertTo = -1;\n let deleteFrom = 0;\n let deleteTo = -1;\n if (oldOutputLineCount > newOutputLineCount) {\n changeFrom = this.projectedModelLineLineCounts.getPrefixSum(lineNumber - 1) + 1;\n changeTo = changeFrom + newOutputLineCount - 1;\n deleteFrom = changeTo + 1;\n deleteTo = deleteFrom + (oldOutputLineCount - newOutputLineCount) - 1;\n lineMappingChanged = true;\n }\n else if (oldOutputLineCount < newOutputLineCount) {\n changeFrom = this.projectedModelLineLineCounts.getPrefixSum(lineNumber - 1) + 1;\n changeTo = changeFrom + oldOutputLineCount - 1;\n insertFrom = changeTo + 1;\n insertTo = insertFrom + (newOutputLineCount - oldOutputLineCount) - 1;\n lineMappingChanged = true;\n }\n else {\n changeFrom = this.projectedModelLineLineCounts.getPrefixSum(lineNumber - 1) + 1;\n changeTo = changeFrom + newOutputLineCount - 1;\n }\n this.projectedModelLineLineCounts.setValue(lineIndex, newOutputLineCount);\n const viewLinesChangedEvent = (changeFrom <= changeTo ? new _viewEvents_js__WEBPACK_IMPORTED_MODULE_6__.ViewLinesChangedEvent(changeFrom, changeTo - changeFrom + 1) : null);\n const viewLinesInsertedEvent = (insertFrom <= insertTo ? new _viewEvents_js__WEBPACK_IMPORTED_MODULE_6__.ViewLinesInsertedEvent(insertFrom, insertTo) : null);\n const viewLinesDeletedEvent = (deleteFrom <= deleteTo ? new _viewEvents_js__WEBPACK_IMPORTED_MODULE_6__.ViewLinesDeletedEvent(deleteFrom, deleteTo) : null);\n return [lineMappingChanged, viewLinesChangedEvent, viewLinesInsertedEvent, viewLinesDeletedEvent];\n }\n acceptVersionId(versionId) {\n this._validModelVersionId = versionId;\n if (this.modelLineProjections.length === 1 && !this.modelLineProjections[0].isVisible()) {\n // At least one line must be visible => reset hidden areas\n this.setHiddenAreas([]);\n }\n }\n getViewLineCount() {\n return this.projectedModelLineLineCounts.getTotalSum();\n }\n _toValidViewLineNumber(viewLineNumber) {\n if (viewLineNumber < 1) {\n return 1;\n }\n const viewLineCount = this.getViewLineCount();\n if (viewLineNumber > viewLineCount) {\n return viewLineCount;\n }\n return viewLineNumber | 0;\n }\n getActiveIndentGuide(viewLineNumber, minLineNumber, maxLineNumber) {\n viewLineNumber = this._toValidViewLineNumber(viewLineNumber);\n minLineNumber = this._toValidViewLineNumber(minLineNumber);\n maxLineNumber = this._toValidViewLineNumber(maxLineNumber);\n const modelPosition = this.convertViewPositionToModelPosition(viewLineNumber, this.getViewLineMinColumn(viewLineNumber));\n const modelMinPosition = this.convertViewPositionToModelPosition(minLineNumber, this.getViewLineMinColumn(minLineNumber));\n const modelMaxPosition = this.convertViewPositionToModelPosition(maxLineNumber, this.getViewLineMinColumn(maxLineNumber));\n const result = this.model.guides.getActiveIndentGuide(modelPosition.lineNumber, modelMinPosition.lineNumber, modelMaxPosition.lineNumber);\n const viewStartPosition = this.convertModelPositionToViewPosition(result.startLineNumber, 1);\n const viewEndPosition = this.convertModelPositionToViewPosition(result.endLineNumber, this.model.getLineMaxColumn(result.endLineNumber));\n return {\n startLineNumber: viewStartPosition.lineNumber,\n endLineNumber: viewEndPosition.lineNumber,\n indent: result.indent\n };\n }\n // #region ViewLineInfo\n getViewLineInfo(viewLineNumber) {\n viewLineNumber = this._toValidViewLineNumber(viewLineNumber);\n const r = this.projectedModelLineLineCounts.getIndexOf(viewLineNumber - 1);\n const lineIndex = r.index;\n const remainder = r.remainder;\n return new ViewLineInfo(lineIndex + 1, remainder);\n }\n getMinColumnOfViewLine(viewLineInfo) {\n return this.modelLineProjections[viewLineInfo.modelLineNumber - 1].getViewLineMinColumn(this.model, viewLineInfo.modelLineNumber, viewLineInfo.modelLineWrappedLineIdx);\n }\n getMaxColumnOfViewLine(viewLineInfo) {\n return this.modelLineProjections[viewLineInfo.modelLineNumber - 1].getViewLineMaxColumn(this.model, viewLineInfo.modelLineNumber, viewLineInfo.modelLineWrappedLineIdx);\n }\n getModelStartPositionOfViewLine(viewLineInfo) {\n const line = this.modelLineProjections[viewLineInfo.modelLineNumber - 1];\n const minViewColumn = line.getViewLineMinColumn(this.model, viewLineInfo.modelLineNumber, viewLineInfo.modelLineWrappedLineIdx);\n const column = line.getModelColumnOfViewPosition(viewLineInfo.modelLineWrappedLineIdx, minViewColumn);\n return new _core_position_js__WEBPACK_IMPORTED_MODULE_1__.Position(viewLineInfo.modelLineNumber, column);\n }\n getModelEndPositionOfViewLine(viewLineInfo) {\n const line = this.modelLineProjections[viewLineInfo.modelLineNumber - 1];\n const maxViewColumn = line.getViewLineMaxColumn(this.model, viewLineInfo.modelLineNumber, viewLineInfo.modelLineWrappedLineIdx);\n const column = line.getModelColumnOfViewPosition(viewLineInfo.modelLineWrappedLineIdx, maxViewColumn);\n return new _core_position_js__WEBPACK_IMPORTED_MODULE_1__.Position(viewLineInfo.modelLineNumber, column);\n }\n getViewLineInfosGroupedByModelRanges(viewStartLineNumber, viewEndLineNumber) {\n const startViewLine = this.getViewLineInfo(viewStartLineNumber);\n const endViewLine = this.getViewLineInfo(viewEndLineNumber);\n const result = new Array();\n let lastVisibleModelPos = this.getModelStartPositionOfViewLine(startViewLine);\n let viewLines = new Array();\n for (let curModelLine = startViewLine.modelLineNumber; curModelLine <= endViewLine.modelLineNumber; curModelLine++) {\n const line = this.modelLineProjections[curModelLine - 1];\n if (line.isVisible()) {\n const startOffset = curModelLine === startViewLine.modelLineNumber\n ? startViewLine.modelLineWrappedLineIdx\n : 0;\n const endOffset = curModelLine === endViewLine.modelLineNumber\n ? endViewLine.modelLineWrappedLineIdx + 1\n : line.getViewLineCount();\n for (let i = startOffset; i < endOffset; i++) {\n viewLines.push(new ViewLineInfo(curModelLine, i));\n }\n }\n if (!line.isVisible() && lastVisibleModelPos) {\n const lastVisibleModelPos2 = new _core_position_js__WEBPACK_IMPORTED_MODULE_1__.Position(curModelLine - 1, this.model.getLineMaxColumn(curModelLine - 1) + 1);\n const modelRange = _core_range_js__WEBPACK_IMPORTED_MODULE_2__.Range.fromPositions(lastVisibleModelPos, lastVisibleModelPos2);\n result.push(new ViewLineInfoGroupedByModelRange(modelRange, viewLines));\n viewLines = [];\n lastVisibleModelPos = null;\n }\n else if (line.isVisible() && !lastVisibleModelPos) {\n lastVisibleModelPos = new _core_position_js__WEBPACK_IMPORTED_MODULE_1__.Position(curModelLine, 1);\n }\n }\n if (lastVisibleModelPos) {\n const modelRange = _core_range_js__WEBPACK_IMPORTED_MODULE_2__.Range.fromPositions(lastVisibleModelPos, this.getModelEndPositionOfViewLine(endViewLine));\n result.push(new ViewLineInfoGroupedByModelRange(modelRange, viewLines));\n }\n return result;\n }\n // #endregion\n getViewLinesBracketGuides(viewStartLineNumber, viewEndLineNumber, activeViewPosition, options) {\n const modelActivePosition = activeViewPosition ? this.convertViewPositionToModelPosition(activeViewPosition.lineNumber, activeViewPosition.column) : null;\n const resultPerViewLine = [];\n for (const group of this.getViewLineInfosGroupedByModelRanges(viewStartLineNumber, viewEndLineNumber)) {\n const modelRangeStartLineNumber = group.modelRange.startLineNumber;\n const bracketGuidesPerModelLine = this.model.guides.getLinesBracketGuides(modelRangeStartLineNumber, group.modelRange.endLineNumber, modelActivePosition, options);\n for (const viewLineInfo of group.viewLines) {\n const bracketGuides = bracketGuidesPerModelLine[viewLineInfo.modelLineNumber - modelRangeStartLineNumber];\n // visibleColumns stay as they are (this is a bug and needs to be fixed, but it is not a regression)\n // model-columns must be converted to view-model columns.\n const result = bracketGuides.map(g => {\n if (g.forWrappedLinesAfterColumn !== -1) {\n const p = this.modelLineProjections[viewLineInfo.modelLineNumber - 1].getViewPositionOfModelPosition(0, g.forWrappedLinesAfterColumn);\n if (p.lineNumber >= viewLineInfo.modelLineWrappedLineIdx) {\n return undefined;\n }\n }\n if (g.forWrappedLinesBeforeOrAtColumn !== -1) {\n const p = this.modelLineProjections[viewLineInfo.modelLineNumber - 1].getViewPositionOfModelPosition(0, g.forWrappedLinesBeforeOrAtColumn);\n if (p.lineNumber < viewLineInfo.modelLineWrappedLineIdx) {\n return undefined;\n }\n }\n if (!g.horizontalLine) {\n return g;\n }\n let column = -1;\n if (g.column !== -1) {\n const p = this.modelLineProjections[viewLineInfo.modelLineNumber - 1].getViewPositionOfModelPosition(0, g.column);\n if (p.lineNumber === viewLineInfo.modelLineWrappedLineIdx) {\n column = p.column;\n }\n else if (p.lineNumber < viewLineInfo.modelLineWrappedLineIdx) {\n column = this.getMinColumnOfViewLine(viewLineInfo);\n }\n else if (p.lineNumber > viewLineInfo.modelLineWrappedLineIdx) {\n return undefined;\n }\n }\n const viewPosition = this.convertModelPositionToViewPosition(viewLineInfo.modelLineNumber, g.horizontalLine.endColumn);\n const p = this.modelLineProjections[viewLineInfo.modelLineNumber - 1].getViewPositionOfModelPosition(0, g.horizontalLine.endColumn);\n if (p.lineNumber === viewLineInfo.modelLineWrappedLineIdx) {\n return new _textModelGuides_js__WEBPACK_IMPORTED_MODULE_3__.IndentGuide(g.visibleColumn, column, g.className, new _textModelGuides_js__WEBPACK_IMPORTED_MODULE_3__.IndentGuideHorizontalLine(g.horizontalLine.top, viewPosition.column), -1, -1);\n }\n else if (p.lineNumber < viewLineInfo.modelLineWrappedLineIdx) {\n return undefined;\n }\n else {\n if (g.visibleColumn !== -1) {\n // Don't repeat horizontal lines that use visibleColumn for unrelated lines.\n return undefined;\n }\n return new _textModelGuides_js__WEBPACK_IMPORTED_MODULE_3__.IndentGuide(g.visibleColumn, column, g.className, new _textModelGuides_js__WEBPACK_IMPORTED_MODULE_3__.IndentGuideHorizontalLine(g.horizontalLine.top, this.getMaxColumnOfViewLine(viewLineInfo)), -1, -1);\n }\n });\n resultPerViewLine.push(result.filter((r) => !!r));\n }\n }\n return resultPerViewLine;\n }\n getViewLinesIndentGuides(viewStartLineNumber, viewEndLineNumber) {\n // TODO: Use the same code as in `getViewLinesBracketGuides`.\n // Future TODO: Merge with `getViewLinesBracketGuides`.\n // However, this requires more refactoring of indent guides.\n viewStartLineNumber = this._toValidViewLineNumber(viewStartLineNumber);\n viewEndLineNumber = this._toValidViewLineNumber(viewEndLineNumber);\n const modelStart = this.convertViewPositionToModelPosition(viewStartLineNumber, this.getViewLineMinColumn(viewStartLineNumber));\n const modelEnd = this.convertViewPositionToModelPosition(viewEndLineNumber, this.getViewLineMaxColumn(viewEndLineNumber));\n let result = [];\n const resultRepeatCount = [];\n const resultRepeatOption = [];\n const modelStartLineIndex = modelStart.lineNumber - 1;\n const modelEndLineIndex = modelEnd.lineNumber - 1;\n let reqStart = null;\n for (let modelLineIndex = modelStartLineIndex; modelLineIndex <= modelEndLineIndex; modelLineIndex++) {\n const line = this.modelLineProjections[modelLineIndex];\n if (line.isVisible()) {\n const viewLineStartIndex = line.getViewLineNumberOfModelPosition(0, modelLineIndex === modelStartLineIndex ? modelStart.column : 1);\n const viewLineEndIndex = line.getViewLineNumberOfModelPosition(0, this.model.getLineMaxColumn(modelLineIndex + 1));\n const count = viewLineEndIndex - viewLineStartIndex + 1;\n let option = 0 /* IndentGuideRepeatOption.BlockNone */;\n if (count > 1 && line.getViewLineMinColumn(this.model, modelLineIndex + 1, viewLineEndIndex) === 1) {\n // wrapped lines should block indent guides\n option = (viewLineStartIndex === 0 ? 1 /* IndentGuideRepeatOption.BlockSubsequent */ : 2 /* IndentGuideRepeatOption.BlockAll */);\n }\n resultRepeatCount.push(count);\n resultRepeatOption.push(option);\n // merge into previous request\n if (reqStart === null) {\n reqStart = new _core_position_js__WEBPACK_IMPORTED_MODULE_1__.Position(modelLineIndex + 1, 0);\n }\n }\n else {\n // hit invisible line => flush request\n if (reqStart !== null) {\n result = result.concat(this.model.guides.getLinesIndentGuides(reqStart.lineNumber, modelLineIndex));\n reqStart = null;\n }\n }\n }\n if (reqStart !== null) {\n result = result.concat(this.model.guides.getLinesIndentGuides(reqStart.lineNumber, modelEnd.lineNumber));\n reqStart = null;\n }\n const viewLineCount = viewEndLineNumber - viewStartLineNumber + 1;\n const viewIndents = new Array(viewLineCount);\n let currIndex = 0;\n for (let i = 0, len = result.length; i < len; i++) {\n let value = result[i];\n const count = Math.min(viewLineCount - currIndex, resultRepeatCount[i]);\n const option = resultRepeatOption[i];\n let blockAtIndex;\n if (option === 2 /* IndentGuideRepeatOption.BlockAll */) {\n blockAtIndex = 0;\n }\n else if (option === 1 /* IndentGuideRepeatOption.BlockSubsequent */) {\n blockAtIndex = 1;\n }\n else {\n blockAtIndex = count;\n }\n for (let j = 0; j < count; j++) {\n if (j === blockAtIndex) {\n value = 0;\n }\n viewIndents[currIndex++] = value;\n }\n }\n return viewIndents;\n }\n getViewLineContent(viewLineNumber) {\n const info = this.getViewLineInfo(viewLineNumber);\n return this.modelLineProjections[info.modelLineNumber - 1].getViewLineContent(this.model, info.modelLineNumber, info.modelLineWrappedLineIdx);\n }\n getViewLineLength(viewLineNumber) {\n const info = this.getViewLineInfo(viewLineNumber);\n return this.modelLineProjections[info.modelLineNumber - 1].getViewLineLength(this.model, info.modelLineNumber, info.modelLineWrappedLineIdx);\n }\n getViewLineMinColumn(viewLineNumber) {\n const info = this.getViewLineInfo(viewLineNumber);\n return this.modelLineProjections[info.modelLineNumber - 1].getViewLineMinColumn(this.model, info.modelLineNumber, info.modelLineWrappedLineIdx);\n }\n getViewLineMaxColumn(viewLineNumber) {\n const info = this.getViewLineInfo(viewLineNumber);\n return this.modelLineProjections[info.modelLineNumber - 1].getViewLineMaxColumn(this.model, info.modelLineNumber, info.modelLineWrappedLineIdx);\n }\n getViewLineData(viewLineNumber) {\n const info = this.getViewLineInfo(viewLineNumber);\n return this.modelLineProjections[info.modelLineNumber - 1].getViewLineData(this.model, info.modelLineNumber, info.modelLineWrappedLineIdx);\n }\n getViewLinesData(viewStartLineNumber, viewEndLineNumber, needed) {\n viewStartLineNumber = this._toValidViewLineNumber(viewStartLineNumber);\n viewEndLineNumber = this._toValidViewLineNumber(viewEndLineNumber);\n const start = this.projectedModelLineLineCounts.getIndexOf(viewStartLineNumber - 1);\n let viewLineNumber = viewStartLineNumber;\n const startModelLineIndex = start.index;\n const startRemainder = start.remainder;\n const result = [];\n for (let modelLineIndex = startModelLineIndex, len = this.model.getLineCount(); modelLineIndex < len; modelLineIndex++) {\n const line = this.modelLineProjections[modelLineIndex];\n if (!line.isVisible()) {\n continue;\n }\n const fromViewLineIndex = (modelLineIndex === startModelLineIndex ? startRemainder : 0);\n let remainingViewLineCount = line.getViewLineCount() - fromViewLineIndex;\n let lastLine = false;\n if (viewLineNumber + remainingViewLineCount > viewEndLineNumber) {\n lastLine = true;\n remainingViewLineCount = viewEndLineNumber - viewLineNumber + 1;\n }\n line.getViewLinesData(this.model, modelLineIndex + 1, fromViewLineIndex, remainingViewLineCount, viewLineNumber - viewStartLineNumber, needed, result);\n viewLineNumber += remainingViewLineCount;\n if (lastLine) {\n break;\n }\n }\n return result;\n }\n validateViewPosition(viewLineNumber, viewColumn, expectedModelPosition) {\n viewLineNumber = this._toValidViewLineNumber(viewLineNumber);\n const r = this.projectedModelLineLineCounts.getIndexOf(viewLineNumber - 1);\n const lineIndex = r.index;\n const remainder = r.remainder;\n const line = this.modelLineProjections[lineIndex];\n const minColumn = line.getViewLineMinColumn(this.model, lineIndex + 1, remainder);\n const maxColumn = line.getViewLineMaxColumn(this.model, lineIndex + 1, remainder);\n if (viewColumn < minColumn) {\n viewColumn = minColumn;\n }\n if (viewColumn > maxColumn) {\n viewColumn = maxColumn;\n }\n const computedModelColumn = line.getModelColumnOfViewPosition(remainder, viewColumn);\n const computedModelPosition = this.model.validatePosition(new _core_position_js__WEBPACK_IMPORTED_MODULE_1__.Position(lineIndex + 1, computedModelColumn));\n if (computedModelPosition.equals(expectedModelPosition)) {\n return new _core_position_js__WEBPACK_IMPORTED_MODULE_1__.Position(viewLineNumber, viewColumn);\n }\n return this.convertModelPositionToViewPosition(expectedModelPosition.lineNumber, expectedModelPosition.column);\n }\n validateViewRange(viewRange, expectedModelRange) {\n const validViewStart = this.validateViewPosition(viewRange.startLineNumber, viewRange.startColumn, expectedModelRange.getStartPosition());\n const validViewEnd = this.validateViewPosition(viewRange.endLineNumber, viewRange.endColumn, expectedModelRange.getEndPosition());\n return new _core_range_js__WEBPACK_IMPORTED_MODULE_2__.Range(validViewStart.lineNumber, validViewStart.column, validViewEnd.lineNumber, validViewEnd.column);\n }\n convertViewPositionToModelPosition(viewLineNumber, viewColumn) {\n const info = this.getViewLineInfo(viewLineNumber);\n const inputColumn = this.modelLineProjections[info.modelLineNumber - 1].getModelColumnOfViewPosition(info.modelLineWrappedLineIdx, viewColumn);\n // console.log('out -> in ' + viewLineNumber + ',' + viewColumn + ' ===> ' + (lineIndex+1) + ',' + inputColumn);\n return this.model.validatePosition(new _core_position_js__WEBPACK_IMPORTED_MODULE_1__.Position(info.modelLineNumber, inputColumn));\n }\n convertViewRangeToModelRange(viewRange) {\n const start = this.convertViewPositionToModelPosition(viewRange.startLineNumber, viewRange.startColumn);\n const end = this.convertViewPositionToModelPosition(viewRange.endLineNumber, viewRange.endColumn);\n return new _core_range_js__WEBPACK_IMPORTED_MODULE_2__.Range(start.lineNumber, start.column, end.lineNumber, end.column);\n }\n convertModelPositionToViewPosition(_modelLineNumber, _modelColumn, affinity = 2 /* PositionAffinity.None */, allowZeroLineNumber = false, belowHiddenRanges = false) {\n const validPosition = this.model.validatePosition(new _core_position_js__WEBPACK_IMPORTED_MODULE_1__.Position(_modelLineNumber, _modelColumn));\n const inputLineNumber = validPosition.lineNumber;\n const inputColumn = validPosition.column;\n let lineIndex = inputLineNumber - 1, lineIndexChanged = false;\n if (belowHiddenRanges) {\n while (lineIndex < this.modelLineProjections.length && !this.modelLineProjections[lineIndex].isVisible()) {\n lineIndex++;\n lineIndexChanged = true;\n }\n }\n else {\n while (lineIndex > 0 && !this.modelLineProjections[lineIndex].isVisible()) {\n lineIndex--;\n lineIndexChanged = true;\n }\n }\n if (lineIndex === 0 && !this.modelLineProjections[lineIndex].isVisible()) {\n // Could not reach a real line\n // console.log('in -> out ' + inputLineNumber + ',' + inputColumn + ' ===> ' + 1 + ',' + 1);\n // TODO@alexdima@hediet this isn't soo pretty\n return new _core_position_js__WEBPACK_IMPORTED_MODULE_1__.Position(allowZeroLineNumber ? 0 : 1, 1);\n }\n const deltaLineNumber = 1 + this.projectedModelLineLineCounts.getPrefixSum(lineIndex);\n let r;\n if (lineIndexChanged) {\n if (belowHiddenRanges) {\n r = this.modelLineProjections[lineIndex].getViewPositionOfModelPosition(deltaLineNumber, 1, affinity);\n }\n else {\n r = this.modelLineProjections[lineIndex].getViewPositionOfModelPosition(deltaLineNumber, this.model.getLineMaxColumn(lineIndex + 1), affinity);\n }\n }\n else {\n r = this.modelLineProjections[inputLineNumber - 1].getViewPositionOfModelPosition(deltaLineNumber, inputColumn, affinity);\n }\n // console.log('in -> out ' + inputLineNumber + ',' + inputColumn + ' ===> ' + r.lineNumber + ',' + r);\n return r;\n }\n /**\n * @param affinity The affinity in case of an empty range. Has no effect for non-empty ranges.\n */\n convertModelRangeToViewRange(modelRange, affinity = 0 /* PositionAffinity.Left */) {\n if (modelRange.isEmpty()) {\n const start = this.convertModelPositionToViewPosition(modelRange.startLineNumber, modelRange.startColumn, affinity);\n return _core_range_js__WEBPACK_IMPORTED_MODULE_2__.Range.fromPositions(start);\n }\n else {\n const start = this.convertModelPositionToViewPosition(modelRange.startLineNumber, modelRange.startColumn, 1 /* PositionAffinity.Right */);\n const end = this.convertModelPositionToViewPosition(modelRange.endLineNumber, modelRange.endColumn, 0 /* PositionAffinity.Left */);\n return new _core_range_js__WEBPACK_IMPORTED_MODULE_2__.Range(start.lineNumber, start.column, end.lineNumber, end.column);\n }\n }\n getViewLineNumberOfModelPosition(modelLineNumber, modelColumn) {\n let lineIndex = modelLineNumber - 1;\n if (this.modelLineProjections[lineIndex].isVisible()) {\n // this model line is visible\n const deltaLineNumber = 1 + this.projectedModelLineLineCounts.getPrefixSum(lineIndex);\n return this.modelLineProjections[lineIndex].getViewLineNumberOfModelPosition(deltaLineNumber, modelColumn);\n }\n // this model line is not visible\n while (lineIndex > 0 && !this.modelLineProjections[lineIndex].isVisible()) {\n lineIndex--;\n }\n if (lineIndex === 0 && !this.modelLineProjections[lineIndex].isVisible()) {\n // Could not reach a real line\n return 1;\n }\n const deltaLineNumber = 1 + this.projectedModelLineLineCounts.getPrefixSum(lineIndex);\n return this.modelLineProjections[lineIndex].getViewLineNumberOfModelPosition(deltaLineNumber, this.model.getLineMaxColumn(lineIndex + 1));\n }\n getDecorationsInRange(range, ownerId, filterOutValidation, onlyMinimapDecorations, onlyMarginDecorations) {\n const modelStart = this.convertViewPositionToModelPosition(range.startLineNumber, range.startColumn);\n const modelEnd = this.convertViewPositionToModelPosition(range.endLineNumber, range.endColumn);\n if (modelEnd.lineNumber - modelStart.lineNumber <= range.endLineNumber - range.startLineNumber) {\n // most likely there are no hidden lines => fast path\n // fetch decorations from column 1 to cover the case of wrapped lines that have whole line decorations at column 1\n return this.model.getDecorationsInRange(new _core_range_js__WEBPACK_IMPORTED_MODULE_2__.Range(modelStart.lineNumber, 1, modelEnd.lineNumber, modelEnd.column), ownerId, filterOutValidation, onlyMinimapDecorations, onlyMarginDecorations);\n }\n let result = [];\n const modelStartLineIndex = modelStart.lineNumber - 1;\n const modelEndLineIndex = modelEnd.lineNumber - 1;\n let reqStart = null;\n for (let modelLineIndex = modelStartLineIndex; modelLineIndex <= modelEndLineIndex; modelLineIndex++) {\n const line = this.modelLineProjections[modelLineIndex];\n if (line.isVisible()) {\n // merge into previous request\n if (reqStart === null) {\n reqStart = new _core_position_js__WEBPACK_IMPORTED_MODULE_1__.Position(modelLineIndex + 1, modelLineIndex === modelStartLineIndex ? modelStart.column : 1);\n }\n }\n else {\n // hit invisible line => flush request\n if (reqStart !== null) {\n const maxLineColumn = this.model.getLineMaxColumn(modelLineIndex);\n result = result.concat(this.model.getDecorationsInRange(new _core_range_js__WEBPACK_IMPORTED_MODULE_2__.Range(reqStart.lineNumber, reqStart.column, modelLineIndex, maxLineColumn), ownerId, filterOutValidation, onlyMinimapDecorations));\n reqStart = null;\n }\n }\n }\n if (reqStart !== null) {\n result = result.concat(this.model.getDecorationsInRange(new _core_range_js__WEBPACK_IMPORTED_MODULE_2__.Range(reqStart.lineNumber, reqStart.column, modelEnd.lineNumber, modelEnd.column), ownerId, filterOutValidation, onlyMinimapDecorations));\n reqStart = null;\n }\n result.sort((a, b) => {\n const res = _core_range_js__WEBPACK_IMPORTED_MODULE_2__.Range.compareRangesUsingStarts(a.range, b.range);\n if (res === 0) {\n if (a.id < b.id) {\n return -1;\n }\n if (a.id > b.id) {\n return 1;\n }\n return 0;\n }\n return res;\n });\n // Eliminate duplicate decorations that might have intersected our visible ranges multiple times\n const finalResult = [];\n let finalResultLen = 0;\n let prevDecId = null;\n for (const dec of result) {\n const decId = dec.id;\n if (prevDecId === decId) {\n // skip\n continue;\n }\n prevDecId = decId;\n finalResult[finalResultLen++] = dec;\n }\n return finalResult;\n }\n getInjectedTextAt(position) {\n const info = this.getViewLineInfo(position.lineNumber);\n return this.modelLineProjections[info.modelLineNumber - 1].getInjectedTextAt(info.modelLineWrappedLineIdx, position.column);\n }\n normalizePosition(position, affinity) {\n const info = this.getViewLineInfo(position.lineNumber);\n return this.modelLineProjections[info.modelLineNumber - 1].normalizePosition(info.modelLineWrappedLineIdx, position, affinity);\n }\n getLineIndentColumn(lineNumber) {\n const info = this.getViewLineInfo(lineNumber);\n if (info.modelLineWrappedLineIdx === 0) {\n return this.model.getLineIndentColumn(info.modelLineNumber);\n }\n // wrapped lines have no indentation.\n // We deliberately don't handle the case that indentation is wrapped\n // to avoid two view lines reporting indentation for the very same model line.\n return 0;\n }\n}\n/**\n * Overlapping unsorted ranges:\n * [ ) [ ) [ )\n * [ ) [ )\n * ->\n * Non overlapping sorted ranges:\n * [ ) [ ) [ )\n *\n * Note: This function only considers line information! Columns are ignored.\n*/\nfunction normalizeLineRanges(ranges) {\n if (ranges.length === 0) {\n return [];\n }\n const sortedRanges = ranges.slice();\n sortedRanges.sort(_core_range_js__WEBPACK_IMPORTED_MODULE_2__.Range.compareRangesUsingStarts);\n const result = [];\n let currentRangeStart = sortedRanges[0].startLineNumber;\n let currentRangeEnd = sortedRanges[0].endLineNumber;\n for (let i = 1, len = sortedRanges.length; i < len; i++) {\n const range = sortedRanges[i];\n if (range.startLineNumber > currentRangeEnd + 1) {\n result.push(new _core_range_js__WEBPACK_IMPORTED_MODULE_2__.Range(currentRangeStart, 1, currentRangeEnd, 1));\n currentRangeStart = range.startLineNumber;\n currentRangeEnd = range.endLineNumber;\n }\n else if (range.endLineNumber > currentRangeEnd) {\n currentRangeEnd = range.endLineNumber;\n }\n }\n result.push(new _core_range_js__WEBPACK_IMPORTED_MODULE_2__.Range(currentRangeStart, 1, currentRangeEnd, 1));\n return result;\n}\n/**\n * Represents a view line. Can be used to efficiently query more information about it.\n */\nclass ViewLineInfo {\n constructor(modelLineNumber, modelLineWrappedLineIdx) {\n this.modelLineNumber = modelLineNumber;\n this.modelLineWrappedLineIdx = modelLineWrappedLineIdx;\n }\n}\n/**\n * A list of view lines that have a contiguous span in the model.\n*/\nclass ViewLineInfoGroupedByModelRange {\n constructor(modelRange, viewLines) {\n this.modelRange = modelRange;\n this.viewLines = viewLines;\n }\n}\nclass CoordinatesConverter {\n constructor(lines) {\n this._lines = lines;\n }\n // View -> Model conversion and related methods\n convertViewPositionToModelPosition(viewPosition) {\n return this._lines.convertViewPositionToModelPosition(viewPosition.lineNumber, viewPosition.column);\n }\n convertViewRangeToModelRange(viewRange) {\n return this._lines.convertViewRangeToModelRange(viewRange);\n }\n validateViewPosition(viewPosition, expectedModelPosition) {\n return this._lines.validateViewPosition(viewPosition.lineNumber, viewPosition.column, expectedModelPosition);\n }\n validateViewRange(viewRange, expectedModelRange) {\n return this._lines.validateViewRange(viewRange, expectedModelRange);\n }\n // Model -> View conversion and related methods\n convertModelPositionToViewPosition(modelPosition, affinity, allowZero, belowHiddenRanges) {\n return this._lines.convertModelPositionToViewPosition(modelPosition.lineNumber, modelPosition.column, affinity, allowZero, belowHiddenRanges);\n }\n convertModelRangeToViewRange(modelRange, affinity) {\n return this._lines.convertModelRangeToViewRange(modelRange, affinity);\n }\n modelPositionIsVisible(modelPosition) {\n return this._lines.modelPositionIsVisible(modelPosition.lineNumber, modelPosition.column);\n }\n getModelLineViewLineCount(modelLineNumber) {\n return this._lines.getModelLineViewLineCount(modelLineNumber);\n }\n getViewLineNumberOfModelPosition(modelLineNumber, modelColumn) {\n return this._lines.getViewLineNumberOfModelPosition(modelLineNumber, modelColumn);\n }\n}\nclass ViewModelLinesFromModelAsIs {\n constructor(model) {\n this.model = model;\n }\n dispose() {\n }\n createCoordinatesConverter() {\n return new IdentityCoordinatesConverter(this);\n }\n getHiddenAreas() {\n return [];\n }\n setHiddenAreas(_ranges) {\n return false;\n }\n setTabSize(_newTabSize) {\n return false;\n }\n setWrappingSettings(_fontInfo, _wrappingStrategy, _wrappingColumn, _wrappingIndent) {\n return false;\n }\n createLineBreaksComputer() {\n const result = [];\n return {\n addRequest: (lineText, injectedText, previousLineBreakData) => {\n result.push(null);\n },\n finalize: () => {\n return result;\n }\n };\n }\n onModelFlushed() {\n }\n onModelLinesDeleted(_versionId, fromLineNumber, toLineNumber) {\n return new _viewEvents_js__WEBPACK_IMPORTED_MODULE_6__.ViewLinesDeletedEvent(fromLineNumber, toLineNumber);\n }\n onModelLinesInserted(_versionId, fromLineNumber, toLineNumber, lineBreaks) {\n return new _viewEvents_js__WEBPACK_IMPORTED_MODULE_6__.ViewLinesInsertedEvent(fromLineNumber, toLineNumber);\n }\n onModelLineChanged(_versionId, lineNumber, lineBreakData) {\n return [false, new _viewEvents_js__WEBPACK_IMPORTED_MODULE_6__.ViewLinesChangedEvent(lineNumber, 1), null, null];\n }\n acceptVersionId(_versionId) {\n }\n getViewLineCount() {\n return this.model.getLineCount();\n }\n getActiveIndentGuide(viewLineNumber, _minLineNumber, _maxLineNumber) {\n return {\n startLineNumber: viewLineNumber,\n endLineNumber: viewLineNumber,\n indent: 0\n };\n }\n getViewLinesBracketGuides(startLineNumber, endLineNumber, activePosition) {\n return new Array(endLineNumber - startLineNumber + 1).fill([]);\n }\n getViewLinesIndentGuides(viewStartLineNumber, viewEndLineNumber) {\n const viewLineCount = viewEndLineNumber - viewStartLineNumber + 1;\n const result = new Array(viewLineCount);\n for (let i = 0; i < viewLineCount; i++) {\n result[i] = 0;\n }\n return result;\n }\n getViewLineContent(viewLineNumber) {\n return this.model.getLineContent(viewLineNumber);\n }\n getViewLineLength(viewLineNumber) {\n return this.model.getLineLength(viewLineNumber);\n }\n getViewLineMinColumn(viewLineNumber) {\n return this.model.getLineMinColumn(viewLineNumber);\n }\n getViewLineMaxColumn(viewLineNumber) {\n return this.model.getLineMaxColumn(viewLineNumber);\n }\n getViewLineData(viewLineNumber) {\n const lineTokens = this.model.tokenization.getLineTokens(viewLineNumber);\n const lineContent = lineTokens.getLineContent();\n return new _viewModel_js__WEBPACK_IMPORTED_MODULE_9__.ViewLineData(lineContent, false, 1, lineContent.length + 1, 0, lineTokens.inflate(), null);\n }\n getViewLinesData(viewStartLineNumber, viewEndLineNumber, needed) {\n const lineCount = this.model.getLineCount();\n viewStartLineNumber = Math.min(Math.max(1, viewStartLineNumber), lineCount);\n viewEndLineNumber = Math.min(Math.max(1, viewEndLineNumber), lineCount);\n const result = [];\n for (let lineNumber = viewStartLineNumber; lineNumber <= viewEndLineNumber; lineNumber++) {\n const idx = lineNumber - viewStartLineNumber;\n result[idx] = needed[idx] ? this.getViewLineData(lineNumber) : null;\n }\n return result;\n }\n getDecorationsInRange(range, ownerId, filterOutValidation, onlyMinimapDecorations, onlyMarginDecorations) {\n return this.model.getDecorationsInRange(range, ownerId, filterOutValidation, onlyMinimapDecorations, onlyMarginDecorations);\n }\n normalizePosition(position, affinity) {\n return this.model.normalizePosition(position, affinity);\n }\n getLineIndentColumn(lineNumber) {\n return this.model.getLineIndentColumn(lineNumber);\n }\n getInjectedTextAt(position) {\n // Identity lines collection does not support injected text.\n return null;\n }\n}\nclass IdentityCoordinatesConverter {\n constructor(lines) {\n this._lines = lines;\n }\n _validPosition(pos) {\n return this._lines.model.validatePosition(pos);\n }\n _validRange(range) {\n return this._lines.model.validateRange(range);\n }\n // View -> Model conversion and related methods\n convertViewPositionToModelPosition(viewPosition) {\n return this._validPosition(viewPosition);\n }\n convertViewRangeToModelRange(viewRange) {\n return this._validRange(viewRange);\n }\n validateViewPosition(_viewPosition, expectedModelPosition) {\n return this._validPosition(expectedModelPosition);\n }\n validateViewRange(_viewRange, expectedModelRange) {\n return this._validRange(expectedModelRange);\n }\n // Model -> View conversion and related methods\n convertModelPositionToViewPosition(modelPosition) {\n return this._validPosition(modelPosition);\n }\n convertModelRangeToViewRange(modelRange) {\n return this._validRange(modelRange);\n }\n modelPositionIsVisible(modelPosition) {\n const lineCount = this._lines.model.getLineCount();\n if (modelPosition.lineNumber < 1 || modelPosition.lineNumber > lineCount) {\n // invalid arguments\n return false;\n }\n return true;\n }\n getModelLineViewLineCount(modelLineNumber) {\n return 1;\n }\n getViewLineNumberOfModelPosition(modelLineNumber, modelColumn) {\n return modelLineNumber;\n }\n}\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/common/viewModel/viewModelLines.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/common/viewModelEventDispatcher.js":
/*!*************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/common/viewModelEventDispatcher.js ***!
\*************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ ContentSizeChangedEvent: () => (/* binding */ ContentSizeChangedEvent),\n/* harmony export */ CursorStateChangedEvent: () => (/* binding */ CursorStateChangedEvent),\n/* harmony export */ FocusChangedEvent: () => (/* binding */ FocusChangedEvent),\n/* harmony export */ HiddenAreasChangedEvent: () => (/* binding */ HiddenAreasChangedEvent),\n/* harmony export */ ModelContentChangedEvent: () => (/* binding */ ModelContentChangedEvent),\n/* harmony export */ ModelDecorationsChangedEvent: () => (/* binding */ ModelDecorationsChangedEvent),\n/* harmony export */ ModelLanguageChangedEvent: () => (/* binding */ ModelLanguageChangedEvent),\n/* harmony export */ ModelLanguageConfigurationChangedEvent: () => (/* binding */ ModelLanguageConfigurationChangedEvent),\n/* harmony export */ ModelOptionsChangedEvent: () => (/* binding */ ModelOptionsChangedEvent),\n/* harmony export */ ModelTokensChangedEvent: () => (/* binding */ ModelTokensChangedEvent),\n/* harmony export */ ReadOnlyEditAttemptEvent: () => (/* binding */ ReadOnlyEditAttemptEvent),\n/* harmony export */ ScrollChangedEvent: () => (/* binding */ ScrollChangedEvent),\n/* harmony export */ ViewModelEventDispatcher: () => (/* binding */ ViewModelEventDispatcher),\n/* harmony export */ ViewModelEventsCollector: () => (/* binding */ ViewModelEventsCollector),\n/* harmony export */ ViewZonesChangedEvent: () => (/* binding */ ViewZonesChangedEvent)\n/* harmony export */ });\n/* harmony import */ var _base_common_event_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../base/common/event.js */ \"./node_modules/monaco-editor/esm/vs/base/common/event.js\");\n/* harmony import */ var _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../base/common/lifecycle.js */ \"./node_modules/monaco-editor/esm/vs/base/common/lifecycle.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n\nclass ViewModelEventDispatcher extends _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_1__.Disposable {\n constructor() {\n super();\n this._onEvent = this._register(new _base_common_event_js__WEBPACK_IMPORTED_MODULE_0__.Emitter());\n this.onEvent = this._onEvent.event;\n this._eventHandlers = [];\n this._viewEventQueue = null;\n this._isConsumingViewEventQueue = false;\n this._collector = null;\n this._collectorCnt = 0;\n this._outgoingEvents = [];\n }\n emitOutgoingEvent(e) {\n this._addOutgoingEvent(e);\n this._emitOutgoingEvents();\n }\n _addOutgoingEvent(e) {\n for (let i = 0, len = this._outgoingEvents.length; i < len; i++) {\n const mergeResult = (this._outgoingEvents[i].kind === e.kind ? this._outgoingEvents[i].attemptToMerge(e) : null);\n if (mergeResult) {\n this._outgoingEvents[i] = mergeResult;\n return;\n }\n }\n // not merged\n this._outgoingEvents.push(e);\n }\n _emitOutgoingEvents() {\n while (this._outgoingEvents.length > 0) {\n if (this._collector || this._isConsumingViewEventQueue) {\n // right now collecting or emitting view events, so let's postpone emitting\n return;\n }\n const event = this._outgoingEvents.shift();\n if (event.isNoOp()) {\n continue;\n }\n this._onEvent.fire(event);\n }\n }\n addViewEventHandler(eventHandler) {\n for (let i = 0, len = this._eventHandlers.length; i < len; i++) {\n if (this._eventHandlers[i] === eventHandler) {\n console.warn('Detected duplicate listener in ViewEventDispatcher', eventHandler);\n }\n }\n this._eventHandlers.push(eventHandler);\n }\n removeViewEventHandler(eventHandler) {\n for (let i = 0; i < this._eventHandlers.length; i++) {\n if (this._eventHandlers[i] === eventHandler) {\n this._eventHandlers.splice(i, 1);\n break;\n }\n }\n }\n beginEmitViewEvents() {\n this._collectorCnt++;\n if (this._collectorCnt === 1) {\n this._collector = new ViewModelEventsCollector();\n }\n return this._collector;\n }\n endEmitViewEvents() {\n this._collectorCnt--;\n if (this._collectorCnt === 0) {\n const outgoingEvents = this._collector.outgoingEvents;\n const viewEvents = this._collector.viewEvents;\n this._collector = null;\n for (const outgoingEvent of outgoingEvents) {\n this._addOutgoingEvent(outgoingEvent);\n }\n if (viewEvents.length > 0) {\n this._emitMany(viewEvents);\n }\n }\n this._emitOutgoingEvents();\n }\n emitSingleViewEvent(event) {\n try {\n const eventsCollector = this.beginEmitViewEvents();\n eventsCollector.emitViewEvent(event);\n }\n finally {\n this.endEmitViewEvents();\n }\n }\n _emitMany(events) {\n if (this._viewEventQueue) {\n this._viewEventQueue = this._viewEventQueue.concat(events);\n }\n else {\n this._viewEventQueue = events;\n }\n if (!this._isConsumingViewEventQueue) {\n this._consumeViewEventQueue();\n }\n }\n _consumeViewEventQueue() {\n try {\n this._isConsumingViewEventQueue = true;\n this._doConsumeQueue();\n }\n finally {\n this._isConsumingViewEventQueue = false;\n }\n }\n _doConsumeQueue() {\n while (this._viewEventQueue) {\n // Empty event queue, as events might come in while sending these off\n const events = this._viewEventQueue;\n this._viewEventQueue = null;\n // Use a clone of the event handlers list, as they might remove themselves\n const eventHandlers = this._eventHandlers.slice(0);\n for (const eventHandler of eventHandlers) {\n eventHandler.handleEvents(events);\n }\n }\n }\n}\nclass ViewModelEventsCollector {\n constructor() {\n this.viewEvents = [];\n this.outgoingEvents = [];\n }\n emitViewEvent(event) {\n this.viewEvents.push(event);\n }\n emitOutgoingEvent(e) {\n this.outgoingEvents.push(e);\n }\n}\nclass ContentSizeChangedEvent {\n constructor(oldContentWidth, oldContentHeight, contentWidth, contentHeight) {\n this.kind = 0 /* OutgoingViewModelEventKind.ContentSizeChanged */;\n this._oldContentWidth = oldContentWidth;\n this._oldContentHeight = oldContentHeight;\n this.contentWidth = contentWidth;\n this.contentHeight = contentHeight;\n this.contentWidthChanged = (this._oldContentWidth !== this.contentWidth);\n this.contentHeightChanged = (this._oldContentHeight !== this.contentHeight);\n }\n isNoOp() {\n return (!this.contentWidthChanged && !this.contentHeightChanged);\n }\n attemptToMerge(other) {\n if (other.kind !== this.kind) {\n return null;\n }\n return new ContentSizeChangedEvent(this._oldContentWidth, this._oldContentHeight, other.contentWidth, other.contentHeight);\n }\n}\nclass FocusChangedEvent {\n constructor(oldHasFocus, hasFocus) {\n this.kind = 1 /* OutgoingViewModelEventKind.FocusChanged */;\n this.oldHasFocus = oldHasFocus;\n this.hasFocus = hasFocus;\n }\n isNoOp() {\n return (this.oldHasFocus === this.hasFocus);\n }\n attemptToMerge(other) {\n if (other.kind !== this.kind) {\n return null;\n }\n return new FocusChangedEvent(this.oldHasFocus, other.hasFocus);\n }\n}\nclass ScrollChangedEvent {\n constructor(oldScrollWidth, oldScrollLeft, oldScrollHeight, oldScrollTop, scrollWidth, scrollLeft, scrollHeight, scrollTop) {\n this.kind = 2 /* OutgoingViewModelEventKind.ScrollChanged */;\n this._oldScrollWidth = oldScrollWidth;\n this._oldScrollLeft = oldScrollLeft;\n this._oldScrollHeight = oldScrollHeight;\n this._oldScrollTop = oldScrollTop;\n this.scrollWidth = scrollWidth;\n this.scrollLeft = scrollLeft;\n this.scrollHeight = scrollHeight;\n this.scrollTop = scrollTop;\n this.scrollWidthChanged = (this._oldScrollWidth !== this.scrollWidth);\n this.scrollLeftChanged = (this._oldScrollLeft !== this.scrollLeft);\n this.scrollHeightChanged = (this._oldScrollHeight !== this.scrollHeight);\n this.scrollTopChanged = (this._oldScrollTop !== this.scrollTop);\n }\n isNoOp() {\n return (!this.scrollWidthChanged && !this.scrollLeftChanged && !this.scrollHeightChanged && !this.scrollTopChanged);\n }\n attemptToMerge(other) {\n if (other.kind !== this.kind) {\n return null;\n }\n return new ScrollChangedEvent(this._oldScrollWidth, this._oldScrollLeft, this._oldScrollHeight, this._oldScrollTop, other.scrollWidth, other.scrollLeft, other.scrollHeight, other.scrollTop);\n }\n}\nclass ViewZonesChangedEvent {\n constructor() {\n this.kind = 3 /* OutgoingViewModelEventKind.ViewZonesChanged */;\n }\n isNoOp() {\n return false;\n }\n attemptToMerge(other) {\n if (other.kind !== this.kind) {\n return null;\n }\n return this;\n }\n}\nclass HiddenAreasChangedEvent {\n constructor() {\n this.kind = 4 /* OutgoingViewModelEventKind.HiddenAreasChanged */;\n }\n isNoOp() {\n return false;\n }\n attemptToMerge(other) {\n if (other.kind !== this.kind) {\n return null;\n }\n return this;\n }\n}\nclass CursorStateChangedEvent {\n constructor(oldSelections, selections, oldModelVersionId, modelVersionId, source, reason, reachedMaxCursorCount) {\n this.kind = 6 /* OutgoingViewModelEventKind.CursorStateChanged */;\n this.oldSelections = oldSelections;\n this.selections = selections;\n this.oldModelVersionId = oldModelVersionId;\n this.modelVersionId = modelVersionId;\n this.source = source;\n this.reason = reason;\n this.reachedMaxCursorCount = reachedMaxCursorCount;\n }\n static _selectionsAreEqual(a, b) {\n if (!a && !b) {\n return true;\n }\n if (!a || !b) {\n return false;\n }\n const aLen = a.length;\n const bLen = b.length;\n if (aLen !== bLen) {\n return false;\n }\n for (let i = 0; i < aLen; i++) {\n if (!a[i].equalsSelection(b[i])) {\n return false;\n }\n }\n return true;\n }\n isNoOp() {\n return (CursorStateChangedEvent._selectionsAreEqual(this.oldSelections, this.selections)\n && this.oldModelVersionId === this.modelVersionId);\n }\n attemptToMerge(other) {\n if (other.kind !== this.kind) {\n return null;\n }\n return new CursorStateChangedEvent(this.oldSelections, other.selections, this.oldModelVersionId, other.modelVersionId, other.source, other.reason, this.reachedMaxCursorCount || other.reachedMaxCursorCount);\n }\n}\nclass ReadOnlyEditAttemptEvent {\n constructor() {\n this.kind = 5 /* OutgoingViewModelEventKind.ReadOnlyEditAttempt */;\n }\n isNoOp() {\n return false;\n }\n attemptToMerge(other) {\n if (other.kind !== this.kind) {\n return null;\n }\n return this;\n }\n}\nclass ModelDecorationsChangedEvent {\n constructor(event) {\n this.event = event;\n this.kind = 7 /* OutgoingViewModelEventKind.ModelDecorationsChanged */;\n }\n isNoOp() {\n return false;\n }\n attemptToMerge(other) {\n return null;\n }\n}\nclass ModelLanguageChangedEvent {\n constructor(event) {\n this.event = event;\n this.kind = 8 /* OutgoingViewModelEventKind.ModelLanguageChanged */;\n }\n isNoOp() {\n return false;\n }\n attemptToMerge(other) {\n return null;\n }\n}\nclass ModelLanguageConfigurationChangedEvent {\n constructor(event) {\n this.event = event;\n this.kind = 9 /* OutgoingViewModelEventKind.ModelLanguageConfigurationChanged */;\n }\n isNoOp() {\n return false;\n }\n attemptToMerge(other) {\n return null;\n }\n}\nclass ModelContentChangedEvent {\n constructor(event) {\n this.event = event;\n this.kind = 10 /* OutgoingViewModelEventKind.ModelContentChanged */;\n }\n isNoOp() {\n return false;\n }\n attemptToMerge(other) {\n return null;\n }\n}\nclass ModelOptionsChangedEvent {\n constructor(event) {\n this.event = event;\n this.kind = 11 /* OutgoingViewModelEventKind.ModelOptionsChanged */;\n }\n isNoOp() {\n return false;\n }\n attemptToMerge(other) {\n return null;\n }\n}\nclass ModelTokensChangedEvent {\n constructor(event) {\n this.event = event;\n this.kind = 12 /* OutgoingViewModelEventKind.ModelTokensChanged */;\n }\n isNoOp() {\n return false;\n }\n attemptToMerge(other) {\n return null;\n }\n}\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/common/viewModelEventDispatcher.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/contrib/anchorSelect/browser/anchorSelect.js":
/*!***********************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/contrib/anchorSelect/browser/anchorSelect.js ***!
\***********************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ SelectionAnchorSet: () => (/* binding */ SelectionAnchorSet)\n/* harmony export */ });\n/* harmony import */ var _base_browser_ui_aria_aria_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../../base/browser/ui/aria/aria.js */ \"./node_modules/monaco-editor/esm/vs/base/browser/ui/aria/aria.js\");\n/* harmony import */ var _base_common_htmlContent_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../base/common/htmlContent.js */ \"./node_modules/monaco-editor/esm/vs/base/common/htmlContent.js\");\n/* harmony import */ var _base_common_keyCodes_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../../base/common/keyCodes.js */ \"./node_modules/monaco-editor/esm/vs/base/common/keyCodes.js\");\n/* harmony import */ var _anchorSelect_css__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./anchorSelect.css */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/anchorSelect/browser/anchorSelect.css\");\n/* harmony import */ var _browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../../browser/editorExtensions.js */ \"./node_modules/monaco-editor/esm/vs/editor/browser/editorExtensions.js\");\n/* harmony import */ var _common_core_selection_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../../../common/core/selection.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/core/selection.js\");\n/* harmony import */ var _common_editorContextKeys_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../../../common/editorContextKeys.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/editorContextKeys.js\");\n/* harmony import */ var _nls_js__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ../../../../nls.js */ \"./node_modules/monaco-editor/esm/vs/nls.js\");\n/* harmony import */ var _platform_contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ../../../../platform/contextkey/common/contextkey.js */ \"./node_modules/monaco-editor/esm/vs/platform/contextkey/common/contextkey.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\nvar __decorate = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\n return c > 3 && r && Object.defineProperty(target, key, r), r;\n};\nvar __param = (undefined && undefined.__param) || function (paramIndex, decorator) {\n return function (target, key) { decorator(target, key, paramIndex); }\n};\nvar SelectionAnchorController_1;\n\n\n\n\n\n\n\n\n\nconst SelectionAnchorSet = new _platform_contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_8__.RawContextKey('selectionAnchorSet', false);\nlet SelectionAnchorController = SelectionAnchorController_1 = class SelectionAnchorController {\n static get(editor) {\n return editor.getContribution(SelectionAnchorController_1.ID);\n }\n constructor(editor, contextKeyService) {\n this.editor = editor;\n this.selectionAnchorSetContextKey = SelectionAnchorSet.bindTo(contextKeyService);\n this.modelChangeListener = editor.onDidChangeModel(() => this.selectionAnchorSetContextKey.reset());\n }\n setSelectionAnchor() {\n if (this.editor.hasModel()) {\n const position = this.editor.getPosition();\n this.editor.changeDecorations((accessor) => {\n if (this.decorationId) {\n accessor.removeDecoration(this.decorationId);\n }\n this.decorationId = accessor.addDecoration(_common_core_selection_js__WEBPACK_IMPORTED_MODULE_5__.Selection.fromPositions(position, position), {\n description: 'selection-anchor',\n stickiness: 1 /* TrackedRangeStickiness.NeverGrowsWhenTypingAtEdges */,\n hoverMessage: new _base_common_htmlContent_js__WEBPACK_IMPORTED_MODULE_1__.MarkdownString().appendText((0,_nls_js__WEBPACK_IMPORTED_MODULE_7__.localize)('selectionAnchor', \"Selection Anchor\")),\n className: 'selection-anchor'\n });\n });\n this.selectionAnchorSetContextKey.set(!!this.decorationId);\n (0,_base_browser_ui_aria_aria_js__WEBPACK_IMPORTED_MODULE_0__.alert)((0,_nls_js__WEBPACK_IMPORTED_MODULE_7__.localize)('anchorSet', \"Anchor set at {0}:{1}\", position.lineNumber, position.column));\n }\n }\n goToSelectionAnchor() {\n if (this.editor.hasModel() && this.decorationId) {\n const anchorPosition = this.editor.getModel().getDecorationRange(this.decorationId);\n if (anchorPosition) {\n this.editor.setPosition(anchorPosition.getStartPosition());\n }\n }\n }\n selectFromAnchorToCursor() {\n if (this.editor.hasModel() && this.decorationId) {\n const start = this.editor.getModel().getDecorationRange(this.decorationId);\n if (start) {\n const end = this.editor.getPosition();\n this.editor.setSelection(_common_core_selection_js__WEBPACK_IMPORTED_MODULE_5__.Selection.fromPositions(start.getStartPosition(), end));\n this.cancelSelectionAnchor();\n }\n }\n }\n cancelSelectionAnchor() {\n if (this.decorationId) {\n const decorationId = this.decorationId;\n this.editor.changeDecorations((accessor) => {\n accessor.removeDecoration(decorationId);\n this.decorationId = undefined;\n });\n this.selectionAnchorSetContextKey.set(false);\n }\n }\n dispose() {\n this.cancelSelectionAnchor();\n this.modelChangeListener.dispose();\n }\n};\nSelectionAnchorController.ID = 'editor.contrib.selectionAnchorController';\nSelectionAnchorController = SelectionAnchorController_1 = __decorate([\n __param(1, _platform_contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_8__.IContextKeyService)\n], SelectionAnchorController);\nclass SetSelectionAnchor extends _browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_4__.EditorAction {\n constructor() {\n super({\n id: 'editor.action.setSelectionAnchor',\n label: (0,_nls_js__WEBPACK_IMPORTED_MODULE_7__.localize)('setSelectionAnchor', \"Set Selection Anchor\"),\n alias: 'Set Selection Anchor',\n precondition: undefined,\n kbOpts: {\n kbExpr: _common_editorContextKeys_js__WEBPACK_IMPORTED_MODULE_6__.EditorContextKeys.editorTextFocus,\n primary: (0,_base_common_keyCodes_js__WEBPACK_IMPORTED_MODULE_2__.KeyChord)(2048 /* KeyMod.CtrlCmd */ | 41 /* KeyCode.KeyK */, 2048 /* KeyMod.CtrlCmd */ | 32 /* KeyCode.KeyB */),\n weight: 100 /* KeybindingWeight.EditorContrib */\n }\n });\n }\n async run(_accessor, editor) {\n var _a;\n (_a = SelectionAnchorController.get(editor)) === null || _a === void 0 ? void 0 : _a.setSelectionAnchor();\n }\n}\nclass GoToSelectionAnchor extends _browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_4__.EditorAction {\n constructor() {\n super({\n id: 'editor.action.goToSelectionAnchor',\n label: (0,_nls_js__WEBPACK_IMPORTED_MODULE_7__.localize)('goToSelectionAnchor', \"Go to Selection Anchor\"),\n alias: 'Go to Selection Anchor',\n precondition: SelectionAnchorSet,\n });\n }\n async run(_accessor, editor) {\n var _a;\n (_a = SelectionAnchorController.get(editor)) === null || _a === void 0 ? void 0 : _a.goToSelectionAnchor();\n }\n}\nclass SelectFromAnchorToCursor extends _browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_4__.EditorAction {\n constructor() {\n super({\n id: 'editor.action.selectFromAnchorToCursor',\n label: (0,_nls_js__WEBPACK_IMPORTED_MODULE_7__.localize)('selectFromAnchorToCursor', \"Select from Anchor to Cursor\"),\n alias: 'Select from Anchor to Cursor',\n precondition: SelectionAnchorSet,\n kbOpts: {\n kbExpr: _common_editorContextKeys_js__WEBPACK_IMPORTED_MODULE_6__.EditorContextKeys.editorTextFocus,\n primary: (0,_base_common_keyCodes_js__WEBPACK_IMPORTED_MODULE_2__.KeyChord)(2048 /* KeyMod.CtrlCmd */ | 41 /* KeyCode.KeyK */, 2048 /* KeyMod.CtrlCmd */ | 41 /* KeyCode.KeyK */),\n weight: 100 /* KeybindingWeight.EditorContrib */\n }\n });\n }\n async run(_accessor, editor) {\n var _a;\n (_a = SelectionAnchorController.get(editor)) === null || _a === void 0 ? void 0 : _a.selectFromAnchorToCursor();\n }\n}\nclass CancelSelectionAnchor extends _browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_4__.EditorAction {\n constructor() {\n super({\n id: 'editor.action.cancelSelectionAnchor',\n label: (0,_nls_js__WEBPACK_IMPORTED_MODULE_7__.localize)('cancelSelectionAnchor', \"Cancel Selection Anchor\"),\n alias: 'Cancel Selection Anchor',\n precondition: SelectionAnchorSet,\n kbOpts: {\n kbExpr: _common_editorContextKeys_js__WEBPACK_IMPORTED_MODULE_6__.EditorContextKeys.editorTextFocus,\n primary: 9 /* KeyCode.Escape */,\n weight: 100 /* KeybindingWeight.EditorContrib */\n }\n });\n }\n async run(_accessor, editor) {\n var _a;\n (_a = SelectionAnchorController.get(editor)) === null || _a === void 0 ? void 0 : _a.cancelSelectionAnchor();\n }\n}\n(0,_browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_4__.registerEditorContribution)(SelectionAnchorController.ID, SelectionAnchorController, 4 /* EditorContributionInstantiation.Lazy */);\n(0,_browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_4__.registerEditorAction)(SetSelectionAnchor);\n(0,_browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_4__.registerEditorAction)(GoToSelectionAnchor);\n(0,_browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_4__.registerEditorAction)(SelectFromAnchorToCursor);\n(0,_browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_4__.registerEditorAction)(CancelSelectionAnchor);\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/contrib/anchorSelect/browser/anchorSelect.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/contrib/bracketMatching/browser/bracketMatching.js":
/*!*****************************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/contrib/bracketMatching/browser/bracketMatching.js ***!
\*****************************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ BracketMatchingController: () => (/* binding */ BracketMatchingController)\n/* harmony export */ });\n/* harmony import */ var _base_common_async_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../../base/common/async.js */ \"./node_modules/monaco-editor/esm/vs/base/common/async.js\");\n/* harmony import */ var _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../base/common/lifecycle.js */ \"./node_modules/monaco-editor/esm/vs/base/common/lifecycle.js\");\n/* harmony import */ var _bracketMatching_css__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./bracketMatching.css */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/bracketMatching/browser/bracketMatching.css\");\n/* harmony import */ var _browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../../browser/editorExtensions.js */ \"./node_modules/monaco-editor/esm/vs/editor/browser/editorExtensions.js\");\n/* harmony import */ var _common_core_position_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../../common/core/position.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/core/position.js\");\n/* harmony import */ var _common_core_range_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../../../common/core/range.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/core/range.js\");\n/* harmony import */ var _common_core_selection_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../../../common/core/selection.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/core/selection.js\");\n/* harmony import */ var _common_editorContextKeys_js__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ../../../common/editorContextKeys.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/editorContextKeys.js\");\n/* harmony import */ var _common_model_js__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ../../../common/model.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/model.js\");\n/* harmony import */ var _common_model_textModel_js__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ../../../common/model/textModel.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/model/textModel.js\");\n/* harmony import */ var _nls_js__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! ../../../../nls.js */ \"./node_modules/monaco-editor/esm/vs/nls.js\");\n/* harmony import */ var _platform_actions_common_actions_js__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(/*! ../../../../platform/actions/common/actions.js */ \"./node_modules/monaco-editor/esm/vs/platform/actions/common/actions.js\");\n/* harmony import */ var _platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(/*! ../../../../platform/theme/common/colorRegistry.js */ \"./node_modules/monaco-editor/esm/vs/platform/theme/common/colorRegistry.js\");\n/* harmony import */ var _platform_theme_common_themeService_js__WEBPACK_IMPORTED_MODULE_13__ = __webpack_require__(/*! ../../../../platform/theme/common/themeService.js */ \"./node_modules/monaco-editor/esm/vs/platform/theme/common/themeService.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nconst overviewRulerBracketMatchForeground = (0,_platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_12__.registerColor)('editorOverviewRuler.bracketMatchForeground', { dark: '#A0A0A0', light: '#A0A0A0', hcDark: '#A0A0A0', hcLight: '#A0A0A0' }, _nls_js__WEBPACK_IMPORTED_MODULE_10__.localize('overviewRulerBracketMatchForeground', 'Overview ruler marker color for matching brackets.'));\nclass JumpToBracketAction extends _browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_3__.EditorAction {\n constructor() {\n super({\n id: 'editor.action.jumpToBracket',\n label: _nls_js__WEBPACK_IMPORTED_MODULE_10__.localize('smartSelect.jumpBracket', \"Go to Bracket\"),\n alias: 'Go to Bracket',\n precondition: undefined,\n kbOpts: {\n kbExpr: _common_editorContextKeys_js__WEBPACK_IMPORTED_MODULE_7__.EditorContextKeys.editorTextFocus,\n primary: 2048 /* KeyMod.CtrlCmd */ | 1024 /* KeyMod.Shift */ | 93 /* KeyCode.Backslash */,\n weight: 100 /* KeybindingWeight.EditorContrib */\n }\n });\n }\n run(accessor, editor) {\n var _a;\n (_a = BracketMatchingController.get(editor)) === null || _a === void 0 ? void 0 : _a.jumpToBracket();\n }\n}\nclass SelectToBracketAction extends _browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_3__.EditorAction {\n constructor() {\n super({\n id: 'editor.action.selectToBracket',\n label: _nls_js__WEBPACK_IMPORTED_MODULE_10__.localize('smartSelect.selectToBracket', \"Select to Bracket\"),\n alias: 'Select to Bracket',\n precondition: undefined,\n metadata: {\n description: _nls_js__WEBPACK_IMPORTED_MODULE_10__.localize2('smartSelect.selectToBracketDescription', \"Select the text inside and including the brackets or curly braces\"),\n args: [{\n name: 'args',\n schema: {\n type: 'object',\n properties: {\n 'selectBrackets': {\n type: 'boolean',\n default: true\n }\n },\n }\n }]\n }\n });\n }\n run(accessor, editor, args) {\n var _a;\n let selectBrackets = true;\n if (args && args.selectBrackets === false) {\n selectBrackets = false;\n }\n (_a = BracketMatchingController.get(editor)) === null || _a === void 0 ? void 0 : _a.selectToBracket(selectBrackets);\n }\n}\nclass RemoveBracketsAction extends _browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_3__.EditorAction {\n constructor() {\n super({\n id: 'editor.action.removeBrackets',\n label: _nls_js__WEBPACK_IMPORTED_MODULE_10__.localize('smartSelect.removeBrackets', \"Remove Brackets\"),\n alias: 'Remove Brackets',\n precondition: undefined,\n kbOpts: {\n kbExpr: _common_editorContextKeys_js__WEBPACK_IMPORTED_MODULE_7__.EditorContextKeys.editorTextFocus,\n primary: 2048 /* KeyMod.CtrlCmd */ | 512 /* KeyMod.Alt */ | 1 /* KeyCode.Backspace */,\n weight: 100 /* KeybindingWeight.EditorContrib */\n }\n });\n }\n run(accessor, editor) {\n var _a;\n (_a = BracketMatchingController.get(editor)) === null || _a === void 0 ? void 0 : _a.removeBrackets(this.id);\n }\n}\nclass BracketsData {\n constructor(position, brackets, options) {\n this.position = position;\n this.brackets = brackets;\n this.options = options;\n }\n}\nclass BracketMatchingController extends _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_1__.Disposable {\n static get(editor) {\n return editor.getContribution(BracketMatchingController.ID);\n }\n constructor(editor) {\n super();\n this._editor = editor;\n this._lastBracketsData = [];\n this._lastVersionId = 0;\n this._decorations = this._editor.createDecorationsCollection();\n this._updateBracketsSoon = this._register(new _base_common_async_js__WEBPACK_IMPORTED_MODULE_0__.RunOnceScheduler(() => this._updateBrackets(), 50));\n this._matchBrackets = this._editor.getOption(72 /* EditorOption.matchBrackets */);\n this._updateBracketsSoon.schedule();\n this._register(editor.onDidChangeCursorPosition((e) => {\n if (this._matchBrackets === 'never') {\n // Early exit if nothing needs to be done!\n // Leave some form of early exit check here if you wish to continue being a cursor position change listener ;)\n return;\n }\n this._updateBracketsSoon.schedule();\n }));\n this._register(editor.onDidChangeModelContent((e) => {\n this._updateBracketsSoon.schedule();\n }));\n this._register(editor.onDidChangeModel((e) => {\n this._lastBracketsData = [];\n this._updateBracketsSoon.schedule();\n }));\n this._register(editor.onDidChangeModelLanguageConfiguration((e) => {\n this._lastBracketsData = [];\n this._updateBracketsSoon.schedule();\n }));\n this._register(editor.onDidChangeConfiguration((e) => {\n if (e.hasChanged(72 /* EditorOption.matchBrackets */)) {\n this._matchBrackets = this._editor.getOption(72 /* EditorOption.matchBrackets */);\n this._decorations.clear();\n this._lastBracketsData = [];\n this._lastVersionId = 0;\n this._updateBracketsSoon.schedule();\n }\n }));\n this._register(editor.onDidBlurEditorWidget(() => {\n this._updateBracketsSoon.schedule();\n }));\n this._register(editor.onDidFocusEditorWidget(() => {\n this._updateBracketsSoon.schedule();\n }));\n }\n jumpToBracket() {\n if (!this._editor.hasModel()) {\n return;\n }\n const model = this._editor.getModel();\n const newSelections = this._editor.getSelections().map(selection => {\n const position = selection.getStartPosition();\n // find matching brackets if position is on a bracket\n const brackets = model.bracketPairs.matchBracket(position);\n let newCursorPosition = null;\n if (brackets) {\n if (brackets[0].containsPosition(position) && !brackets[1].containsPosition(position)) {\n newCursorPosition = brackets[1].getStartPosition();\n }\n else if (brackets[1].containsPosition(position)) {\n newCursorPosition = brackets[0].getStartPosition();\n }\n }\n else {\n // find the enclosing brackets if the position isn't on a matching bracket\n const enclosingBrackets = model.bracketPairs.findEnclosingBrackets(position);\n if (enclosingBrackets) {\n newCursorPosition = enclosingBrackets[1].getStartPosition();\n }\n else {\n // no enclosing brackets, try the very first next bracket\n const nextBracket = model.bracketPairs.findNextBracket(position);\n if (nextBracket && nextBracket.range) {\n newCursorPosition = nextBracket.range.getStartPosition();\n }\n }\n }\n if (newCursorPosition) {\n return new _common_core_selection_js__WEBPACK_IMPORTED_MODULE_6__.Selection(newCursorPosition.lineNumber, newCursorPosition.column, newCursorPosition.lineNumber, newCursorPosition.column);\n }\n return new _common_core_selection_js__WEBPACK_IMPORTED_MODULE_6__.Selection(position.lineNumber, position.column, position.lineNumber, position.column);\n });\n this._editor.setSelections(newSelections);\n this._editor.revealRange(newSelections[0]);\n }\n selectToBracket(selectBrackets) {\n if (!this._editor.hasModel()) {\n return;\n }\n const model = this._editor.getModel();\n const newSelections = [];\n this._editor.getSelections().forEach(selection => {\n const position = selection.getStartPosition();\n let brackets = model.bracketPairs.matchBracket(position);\n if (!brackets) {\n brackets = model.bracketPairs.findEnclosingBrackets(position);\n if (!brackets) {\n const nextBracket = model.bracketPairs.findNextBracket(position);\n if (nextBracket && nextBracket.range) {\n brackets = model.bracketPairs.matchBracket(nextBracket.range.getStartPosition());\n }\n }\n }\n let selectFrom = null;\n let selectTo = null;\n if (brackets) {\n brackets.sort(_common_core_range_js__WEBPACK_IMPORTED_MODULE_5__.Range.compareRangesUsingStarts);\n const [open, close] = brackets;\n selectFrom = selectBrackets ? open.getStartPosition() : open.getEndPosition();\n selectTo = selectBrackets ? close.getEndPosition() : close.getStartPosition();\n if (close.containsPosition(position)) {\n // select backwards if the cursor was on the closing bracket\n const tmp = selectFrom;\n selectFrom = selectTo;\n selectTo = tmp;\n }\n }\n if (selectFrom && selectTo) {\n newSelections.push(new _common_core_selection_js__WEBPACK_IMPORTED_MODULE_6__.Selection(selectFrom.lineNumber, selectFrom.column, selectTo.lineNumber, selectTo.column));\n }\n });\n if (newSelections.length > 0) {\n this._editor.setSelections(newSelections);\n this._editor.revealRange(newSelections[0]);\n }\n }\n removeBrackets(editSource) {\n if (!this._editor.hasModel()) {\n return;\n }\n const model = this._editor.getModel();\n this._editor.getSelections().forEach((selection) => {\n const position = selection.getPosition();\n let brackets = model.bracketPairs.matchBracket(position);\n if (!brackets) {\n brackets = model.bracketPairs.findEnclosingBrackets(position);\n }\n if (brackets) {\n this._editor.pushUndoStop();\n this._editor.executeEdits(editSource, [\n { range: brackets[0], text: '' },\n { range: brackets[1], text: '' }\n ]);\n this._editor.pushUndoStop();\n }\n });\n }\n _updateBrackets() {\n if (this._matchBrackets === 'never') {\n return;\n }\n this._recomputeBrackets();\n const newDecorations = [];\n let newDecorationsLen = 0;\n for (const bracketData of this._lastBracketsData) {\n const brackets = bracketData.brackets;\n if (brackets) {\n newDecorations[newDecorationsLen++] = { range: brackets[0], options: bracketData.options };\n newDecorations[newDecorationsLen++] = { range: brackets[1], options: bracketData.options };\n }\n }\n this._decorations.set(newDecorations);\n }\n _recomputeBrackets() {\n if (!this._editor.hasModel() || !this._editor.hasWidgetFocus()) {\n // no model or no focus => no brackets!\n this._lastBracketsData = [];\n this._lastVersionId = 0;\n return;\n }\n const selections = this._editor.getSelections();\n if (selections.length > 100) {\n // no bracket matching for high numbers of selections\n this._lastBracketsData = [];\n this._lastVersionId = 0;\n return;\n }\n const model = this._editor.getModel();\n const versionId = model.getVersionId();\n let previousData = [];\n if (this._lastVersionId === versionId) {\n // use the previous data only if the model is at the same version id\n previousData = this._lastBracketsData;\n }\n const positions = [];\n let positionsLen = 0;\n for (let i = 0, len = selections.length; i < len; i++) {\n const selection = selections[i];\n if (selection.isEmpty()) {\n // will bracket match a cursor only if the selection is collapsed\n positions[positionsLen++] = selection.getStartPosition();\n }\n }\n // sort positions for `previousData` cache hits\n if (positions.length > 1) {\n positions.sort(_common_core_position_js__WEBPACK_IMPORTED_MODULE_4__.Position.compare);\n }\n const newData = [];\n let newDataLen = 0;\n let previousIndex = 0;\n const previousLen = previousData.length;\n for (let i = 0, len = positions.length; i < len; i++) {\n const position = positions[i];\n while (previousIndex < previousLen && previousData[previousIndex].position.isBefore(position)) {\n previousIndex++;\n }\n if (previousIndex < previousLen && previousData[previousIndex].position.equals(position)) {\n newData[newDataLen++] = previousData[previousIndex];\n }\n else {\n let brackets = model.bracketPairs.matchBracket(position, 20 /* give at most 20ms to compute */);\n let options = BracketMatchingController._DECORATION_OPTIONS_WITH_OVERVIEW_RULER;\n if (!brackets && this._matchBrackets === 'always') {\n brackets = model.bracketPairs.findEnclosingBrackets(position, 20 /* give at most 20ms to compute */);\n options = BracketMatchingController._DECORATION_OPTIONS_WITHOUT_OVERVIEW_RULER;\n }\n newData[newDataLen++] = new BracketsData(position, brackets, options);\n }\n }\n this._lastBracketsData = newData;\n this._lastVersionId = versionId;\n }\n}\nBracketMatchingController.ID = 'editor.contrib.bracketMatchingController';\nBracketMatchingController._DECORATION_OPTIONS_WITH_OVERVIEW_RULER = _common_model_textModel_js__WEBPACK_IMPORTED_MODULE_9__.ModelDecorationOptions.register({\n description: 'bracket-match-overview',\n stickiness: 1 /* TrackedRangeStickiness.NeverGrowsWhenTypingAtEdges */,\n className: 'bracket-match',\n overviewRuler: {\n color: (0,_platform_theme_common_themeService_js__WEBPACK_IMPORTED_MODULE_13__.themeColorFromId)(overviewRulerBracketMatchForeground),\n position: _common_model_js__WEBPACK_IMPORTED_MODULE_8__.OverviewRulerLane.Center\n }\n});\nBracketMatchingController._DECORATION_OPTIONS_WITHOUT_OVERVIEW_RULER = _common_model_textModel_js__WEBPACK_IMPORTED_MODULE_9__.ModelDecorationOptions.register({\n description: 'bracket-match-no-overview',\n stickiness: 1 /* TrackedRangeStickiness.NeverGrowsWhenTypingAtEdges */,\n className: 'bracket-match'\n});\n(0,_browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_3__.registerEditorContribution)(BracketMatchingController.ID, BracketMatchingController, 1 /* EditorContributionInstantiation.AfterFirstRender */);\n(0,_browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_3__.registerEditorAction)(SelectToBracketAction);\n(0,_browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_3__.registerEditorAction)(JumpToBracketAction);\n(0,_browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_3__.registerEditorAction)(RemoveBracketsAction);\n// Go to menu\n_platform_actions_common_actions_js__WEBPACK_IMPORTED_MODULE_11__.MenuRegistry.appendMenuItem(_platform_actions_common_actions_js__WEBPACK_IMPORTED_MODULE_11__.MenuId.MenubarGoMenu, {\n group: '5_infile_nav',\n command: {\n id: 'editor.action.jumpToBracket',\n title: _nls_js__WEBPACK_IMPORTED_MODULE_10__.localize({ key: 'miGoToBracket', comment: ['&& denotes a mnemonic'] }, \"Go to &&Bracket\")\n },\n order: 2\n});\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/contrib/bracketMatching/browser/bracketMatching.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/contrib/caretOperations/browser/caretOperations.js":
/*!*****************************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/contrib/caretOperations/browser/caretOperations.js ***!
\*****************************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var _browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../browser/editorExtensions.js */ \"./node_modules/monaco-editor/esm/vs/editor/browser/editorExtensions.js\");\n/* harmony import */ var _common_editorContextKeys_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../common/editorContextKeys.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/editorContextKeys.js\");\n/* harmony import */ var _moveCaretCommand_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./moveCaretCommand.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/caretOperations/browser/moveCaretCommand.js\");\n/* harmony import */ var _nls_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../../../nls.js */ \"./node_modules/monaco-editor/esm/vs/nls.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n\n\n\nclass MoveCaretAction extends _browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_0__.EditorAction {\n constructor(left, opts) {\n super(opts);\n this.left = left;\n }\n run(accessor, editor) {\n if (!editor.hasModel()) {\n return;\n }\n const commands = [];\n const selections = editor.getSelections();\n for (const selection of selections) {\n commands.push(new _moveCaretCommand_js__WEBPACK_IMPORTED_MODULE_2__.MoveCaretCommand(selection, this.left));\n }\n editor.pushUndoStop();\n editor.executeCommands(this.id, commands);\n editor.pushUndoStop();\n }\n}\nclass MoveCaretLeftAction extends MoveCaretAction {\n constructor() {\n super(true, {\n id: 'editor.action.moveCarretLeftAction',\n label: _nls_js__WEBPACK_IMPORTED_MODULE_3__.localize('caret.moveLeft', \"Move Selected Text Left\"),\n alias: 'Move Selected Text Left',\n precondition: _common_editorContextKeys_js__WEBPACK_IMPORTED_MODULE_1__.EditorContextKeys.writable\n });\n }\n}\nclass MoveCaretRightAction extends MoveCaretAction {\n constructor() {\n super(false, {\n id: 'editor.action.moveCarretRightAction',\n label: _nls_js__WEBPACK_IMPORTED_MODULE_3__.localize('caret.moveRight', \"Move Selected Text Right\"),\n alias: 'Move Selected Text Right',\n precondition: _common_editorContextKeys_js__WEBPACK_IMPORTED_MODULE_1__.EditorContextKeys.writable\n });\n }\n}\n(0,_browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_0__.registerEditorAction)(MoveCaretLeftAction);\n(0,_browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_0__.registerEditorAction)(MoveCaretRightAction);\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/contrib/caretOperations/browser/caretOperations.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/contrib/caretOperations/browser/moveCaretCommand.js":
/*!******************************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/contrib/caretOperations/browser/moveCaretCommand.js ***!
\******************************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ MoveCaretCommand: () => (/* binding */ MoveCaretCommand)\n/* harmony export */ });\n/* harmony import */ var _common_core_range_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../common/core/range.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/core/range.js\");\n/* harmony import */ var _common_core_selection_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../common/core/selection.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/core/selection.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n\nclass MoveCaretCommand {\n constructor(selection, isMovingLeft) {\n this._selection = selection;\n this._isMovingLeft = isMovingLeft;\n }\n getEditOperations(model, builder) {\n if (this._selection.startLineNumber !== this._selection.endLineNumber || this._selection.isEmpty()) {\n return;\n }\n const lineNumber = this._selection.startLineNumber;\n const startColumn = this._selection.startColumn;\n const endColumn = this._selection.endColumn;\n if (this._isMovingLeft && startColumn === 1) {\n return;\n }\n if (!this._isMovingLeft && endColumn === model.getLineMaxColumn(lineNumber)) {\n return;\n }\n if (this._isMovingLeft) {\n const rangeBefore = new _common_core_range_js__WEBPACK_IMPORTED_MODULE_0__.Range(lineNumber, startColumn - 1, lineNumber, startColumn);\n const charBefore = model.getValueInRange(rangeBefore);\n builder.addEditOperation(rangeBefore, null);\n builder.addEditOperation(new _common_core_range_js__WEBPACK_IMPORTED_MODULE_0__.Range(lineNumber, endColumn, lineNumber, endColumn), charBefore);\n }\n else {\n const rangeAfter = new _common_core_range_js__WEBPACK_IMPORTED_MODULE_0__.Range(lineNumber, endColumn, lineNumber, endColumn + 1);\n const charAfter = model.getValueInRange(rangeAfter);\n builder.addEditOperation(rangeAfter, null);\n builder.addEditOperation(new _common_core_range_js__WEBPACK_IMPORTED_MODULE_0__.Range(lineNumber, startColumn, lineNumber, startColumn), charAfter);\n }\n }\n computeCursorState(model, helper) {\n if (this._isMovingLeft) {\n return new _common_core_selection_js__WEBPACK_IMPORTED_MODULE_1__.Selection(this._selection.startLineNumber, this._selection.startColumn - 1, this._selection.endLineNumber, this._selection.endColumn - 1);\n }\n else {\n return new _common_core_selection_js__WEBPACK_IMPORTED_MODULE_1__.Selection(this._selection.startLineNumber, this._selection.startColumn + 1, this._selection.endLineNumber, this._selection.endColumn + 1);\n }\n }\n}\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/contrib/caretOperations/browser/moveCaretCommand.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/contrib/caretOperations/browser/transpose.js":
/*!***********************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/contrib/caretOperations/browser/transpose.js ***!
\***********************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var _browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../browser/editorExtensions.js */ \"./node_modules/monaco-editor/esm/vs/editor/browser/editorExtensions.js\");\n/* harmony import */ var _common_commands_replaceCommand_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../common/commands/replaceCommand.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/commands/replaceCommand.js\");\n/* harmony import */ var _common_cursor_cursorMoveOperations_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../common/cursor/cursorMoveOperations.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/cursor/cursorMoveOperations.js\");\n/* harmony import */ var _common_core_range_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../../common/core/range.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/core/range.js\");\n/* harmony import */ var _common_editorContextKeys_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../../common/editorContextKeys.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/editorContextKeys.js\");\n/* harmony import */ var _nls_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../../../../nls.js */ \"./node_modules/monaco-editor/esm/vs/nls.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n\n\n\n\n\nclass TransposeLettersAction extends _browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_0__.EditorAction {\n constructor() {\n super({\n id: 'editor.action.transposeLetters',\n label: _nls_js__WEBPACK_IMPORTED_MODULE_5__.localize('transposeLetters.label', \"Transpose Letters\"),\n alias: 'Transpose Letters',\n precondition: _common_editorContextKeys_js__WEBPACK_IMPORTED_MODULE_4__.EditorContextKeys.writable,\n kbOpts: {\n kbExpr: _common_editorContextKeys_js__WEBPACK_IMPORTED_MODULE_4__.EditorContextKeys.textInputFocus,\n primary: 0,\n mac: {\n primary: 256 /* KeyMod.WinCtrl */ | 50 /* KeyCode.KeyT */\n },\n weight: 100 /* KeybindingWeight.EditorContrib */\n }\n });\n }\n run(accessor, editor) {\n if (!editor.hasModel()) {\n return;\n }\n const model = editor.getModel();\n const commands = [];\n const selections = editor.getSelections();\n for (const selection of selections) {\n if (!selection.isEmpty()) {\n continue;\n }\n const lineNumber = selection.startLineNumber;\n const column = selection.startColumn;\n const lastColumn = model.getLineMaxColumn(lineNumber);\n if (lineNumber === 1 && (column === 1 || (column === 2 && lastColumn === 2))) {\n // at beginning of file, nothing to do\n continue;\n }\n // handle special case: when at end of line, transpose left two chars\n // otherwise, transpose left and right chars\n const endPosition = (column === lastColumn) ?\n selection.getPosition() :\n _common_cursor_cursorMoveOperations_js__WEBPACK_IMPORTED_MODULE_2__.MoveOperations.rightPosition(model, selection.getPosition().lineNumber, selection.getPosition().column);\n const middlePosition = _common_cursor_cursorMoveOperations_js__WEBPACK_IMPORTED_MODULE_2__.MoveOperations.leftPosition(model, endPosition);\n const beginPosition = _common_cursor_cursorMoveOperations_js__WEBPACK_IMPORTED_MODULE_2__.MoveOperations.leftPosition(model, middlePosition);\n const leftChar = model.getValueInRange(_common_core_range_js__WEBPACK_IMPORTED_MODULE_3__.Range.fromPositions(beginPosition, middlePosition));\n const rightChar = model.getValueInRange(_common_core_range_js__WEBPACK_IMPORTED_MODULE_3__.Range.fromPositions(middlePosition, endPosition));\n const replaceRange = _common_core_range_js__WEBPACK_IMPORTED_MODULE_3__.Range.fromPositions(beginPosition, endPosition);\n commands.push(new _common_commands_replaceCommand_js__WEBPACK_IMPORTED_MODULE_1__.ReplaceCommand(replaceRange, rightChar + leftChar));\n }\n if (commands.length > 0) {\n editor.pushUndoStop();\n editor.executeCommands(this.id, commands);\n editor.pushUndoStop();\n }\n }\n}\n(0,_browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_0__.registerEditorAction)(TransposeLettersAction);\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/contrib/caretOperations/browser/transpose.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/contrib/clipboard/browser/clipboard.js":
/*!*****************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/contrib/clipboard/browser/clipboard.js ***!
\*****************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ CopyAction: () => (/* binding */ CopyAction),\n/* harmony export */ CutAction: () => (/* binding */ CutAction),\n/* harmony export */ PasteAction: () => (/* binding */ PasteAction)\n/* harmony export */ });\n/* harmony import */ var _base_browser_browser_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../../base/browser/browser.js */ \"./node_modules/monaco-editor/esm/vs/base/browser/browser.js\");\n/* harmony import */ var _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../base/browser/dom.js */ \"./node_modules/monaco-editor/esm/vs/base/browser/dom.js\");\n/* harmony import */ var _base_common_platform_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../../base/common/platform.js */ \"./node_modules/monaco-editor/esm/vs/base/common/platform.js\");\n/* harmony import */ var _browser_controller_textAreaInput_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../../browser/controller/textAreaInput.js */ \"./node_modules/monaco-editor/esm/vs/editor/browser/controller/textAreaInput.js\");\n/* harmony import */ var _browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../../browser/editorExtensions.js */ \"./node_modules/monaco-editor/esm/vs/editor/browser/editorExtensions.js\");\n/* harmony import */ var _browser_services_codeEditorService_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../../../browser/services/codeEditorService.js */ \"./node_modules/monaco-editor/esm/vs/editor/browser/services/codeEditorService.js\");\n/* harmony import */ var _common_editorContextKeys_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../../../common/editorContextKeys.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/editorContextKeys.js\");\n/* harmony import */ var _dropOrPasteInto_browser_copyPasteController_js__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ../../dropOrPasteInto/browser/copyPasteController.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/dropOrPasteInto/browser/copyPasteController.js\");\n/* harmony import */ var _nls_js__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ../../../../nls.js */ \"./node_modules/monaco-editor/esm/vs/nls.js\");\n/* harmony import */ var _platform_actions_common_actions_js__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ../../../../platform/actions/common/actions.js */ \"./node_modules/monaco-editor/esm/vs/platform/actions/common/actions.js\");\n/* harmony import */ var _platform_clipboard_common_clipboardService_js__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! ../../../../platform/clipboard/common/clipboardService.js */ \"./node_modules/monaco-editor/esm/vs/platform/clipboard/common/clipboardService.js\");\n/* harmony import */ var _platform_contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(/*! ../../../../platform/contextkey/common/contextkey.js */ \"./node_modules/monaco-editor/esm/vs/platform/contextkey/common/contextkey.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n\n\n\n\n\n\n\n\n\n\n\nconst CLIPBOARD_CONTEXT_MENU_GROUP = '9_cutcopypaste';\nconst supportsCut = (_base_common_platform_js__WEBPACK_IMPORTED_MODULE_2__.isNative || document.queryCommandSupported('cut'));\nconst supportsCopy = (_base_common_platform_js__WEBPACK_IMPORTED_MODULE_2__.isNative || document.queryCommandSupported('copy'));\n// Firefox only supports navigator.clipboard.readText() in browser extensions.\n// See https://developer.mozilla.org/en-US/docs/Web/API/Clipboard/readText#Browser_compatibility\n// When loading over http, navigator.clipboard can be undefined. See https://github.com/microsoft/monaco-editor/issues/2313\nconst supportsPaste = (typeof navigator.clipboard === 'undefined' || _base_browser_browser_js__WEBPACK_IMPORTED_MODULE_0__.isFirefox) ? document.queryCommandSupported('paste') : true;\nfunction registerCommand(command) {\n command.register();\n return command;\n}\nconst CutAction = supportsCut ? registerCommand(new _browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_4__.MultiCommand({\n id: 'editor.action.clipboardCutAction',\n precondition: undefined,\n kbOpts: (\n // Do not bind cut keybindings in the browser,\n // since browsers do that for us and it avoids security prompts\n _base_common_platform_js__WEBPACK_IMPORTED_MODULE_2__.isNative ? {\n primary: 2048 /* KeyMod.CtrlCmd */ | 54 /* KeyCode.KeyX */,\n win: { primary: 2048 /* KeyMod.CtrlCmd */ | 54 /* KeyCode.KeyX */, secondary: [1024 /* KeyMod.Shift */ | 20 /* KeyCode.Delete */] },\n weight: 100 /* KeybindingWeight.EditorContrib */\n } : undefined),\n menuOpts: [{\n menuId: _platform_actions_common_actions_js__WEBPACK_IMPORTED_MODULE_9__.MenuId.MenubarEditMenu,\n group: '2_ccp',\n title: _nls_js__WEBPACK_IMPORTED_MODULE_8__.localize({ key: 'miCut', comment: ['&& denotes a mnemonic'] }, \"Cu&&t\"),\n order: 1\n }, {\n menuId: _platform_actions_common_actions_js__WEBPACK_IMPORTED_MODULE_9__.MenuId.EditorContext,\n group: CLIPBOARD_CONTEXT_MENU_GROUP,\n title: _nls_js__WEBPACK_IMPORTED_MODULE_8__.localize('actions.clipboard.cutLabel', \"Cut\"),\n when: _common_editorContextKeys_js__WEBPACK_IMPORTED_MODULE_6__.EditorContextKeys.writable,\n order: 1,\n }, {\n menuId: _platform_actions_common_actions_js__WEBPACK_IMPORTED_MODULE_9__.MenuId.CommandPalette,\n group: '',\n title: _nls_js__WEBPACK_IMPORTED_MODULE_8__.localize('actions.clipboard.cutLabel', \"Cut\"),\n order: 1\n }, {\n menuId: _platform_actions_common_actions_js__WEBPACK_IMPORTED_MODULE_9__.MenuId.SimpleEditorContext,\n group: CLIPBOARD_CONTEXT_MENU_GROUP,\n title: _nls_js__WEBPACK_IMPORTED_MODULE_8__.localize('actions.clipboard.cutLabel', \"Cut\"),\n when: _common_editorContextKeys_js__WEBPACK_IMPORTED_MODULE_6__.EditorContextKeys.writable,\n order: 1,\n }]\n})) : undefined;\nconst CopyAction = supportsCopy ? registerCommand(new _browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_4__.MultiCommand({\n id: 'editor.action.clipboardCopyAction',\n precondition: undefined,\n kbOpts: (\n // Do not bind copy keybindings in the browser,\n // since browsers do that for us and it avoids security prompts\n _base_common_platform_js__WEBPACK_IMPORTED_MODULE_2__.isNative ? {\n primary: 2048 /* KeyMod.CtrlCmd */ | 33 /* KeyCode.KeyC */,\n win: { primary: 2048 /* KeyMod.CtrlCmd */ | 33 /* KeyCode.KeyC */, secondary: [2048 /* KeyMod.CtrlCmd */ | 19 /* KeyCode.Insert */] },\n weight: 100 /* KeybindingWeight.EditorContrib */\n } : undefined),\n menuOpts: [{\n menuId: _platform_actions_common_actions_js__WEBPACK_IMPORTED_MODULE_9__.MenuId.MenubarEditMenu,\n group: '2_ccp',\n title: _nls_js__WEBPACK_IMPORTED_MODULE_8__.localize({ key: 'miCopy', comment: ['&& denotes a mnemonic'] }, \"&&Copy\"),\n order: 2\n }, {\n menuId: _platform_actions_common_actions_js__WEBPACK_IMPORTED_MODULE_9__.MenuId.EditorContext,\n group: CLIPBOARD_CONTEXT_MENU_GROUP,\n title: _nls_js__WEBPACK_IMPORTED_MODULE_8__.localize('actions.clipboard.copyLabel', \"Copy\"),\n order: 2,\n }, {\n menuId: _platform_actions_common_actions_js__WEBPACK_IMPORTED_MODULE_9__.MenuId.CommandPalette,\n group: '',\n title: _nls_js__WEBPACK_IMPORTED_MODULE_8__.localize('actions.clipboard.copyLabel', \"Copy\"),\n order: 1\n }, {\n menuId: _platform_actions_common_actions_js__WEBPACK_IMPORTED_MODULE_9__.MenuId.SimpleEditorContext,\n group: CLIPBOARD_CONTEXT_MENU_GROUP,\n title: _nls_js__WEBPACK_IMPORTED_MODULE_8__.localize('actions.clipboard.copyLabel', \"Copy\"),\n order: 2,\n }]\n})) : undefined;\n_platform_actions_common_actions_js__WEBPACK_IMPORTED_MODULE_9__.MenuRegistry.appendMenuItem(_platform_actions_common_actions_js__WEBPACK_IMPORTED_MODULE_9__.MenuId.MenubarEditMenu, { submenu: _platform_actions_common_actions_js__WEBPACK_IMPORTED_MODULE_9__.MenuId.MenubarCopy, title: _nls_js__WEBPACK_IMPORTED_MODULE_8__.localize2('copy as', \"Copy As\"), group: '2_ccp', order: 3 });\n_platform_actions_common_actions_js__WEBPACK_IMPORTED_MODULE_9__.MenuRegistry.appendMenuItem(_platform_actions_common_actions_js__WEBPACK_IMPORTED_MODULE_9__.MenuId.EditorContext, { submenu: _platform_actions_common_actions_js__WEBPACK_IMPORTED_MODULE_9__.MenuId.EditorContextCopy, title: _nls_js__WEBPACK_IMPORTED_MODULE_8__.localize2('copy as', \"Copy As\"), group: CLIPBOARD_CONTEXT_MENU_GROUP, order: 3 });\n_platform_actions_common_actions_js__WEBPACK_IMPORTED_MODULE_9__.MenuRegistry.appendMenuItem(_platform_actions_common_actions_js__WEBPACK_IMPORTED_MODULE_9__.MenuId.EditorContext, { submenu: _platform_actions_common_actions_js__WEBPACK_IMPORTED_MODULE_9__.MenuId.EditorContextShare, title: _nls_js__WEBPACK_IMPORTED_MODULE_8__.localize2('share', \"Share\"), group: '11_share', order: -1, when: _platform_contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_11__.ContextKeyExpr.and(_platform_contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_11__.ContextKeyExpr.notEquals('resourceScheme', 'output'), _common_editorContextKeys_js__WEBPACK_IMPORTED_MODULE_6__.EditorContextKeys.editorTextFocus) });\n_platform_actions_common_actions_js__WEBPACK_IMPORTED_MODULE_9__.MenuRegistry.appendMenuItem(_platform_actions_common_actions_js__WEBPACK_IMPORTED_MODULE_9__.MenuId.EditorTitleContext, { submenu: _platform_actions_common_actions_js__WEBPACK_IMPORTED_MODULE_9__.MenuId.EditorTitleContextShare, title: _nls_js__WEBPACK_IMPORTED_MODULE_8__.localize2('share', \"Share\"), group: '11_share', order: -1 });\n_platform_actions_common_actions_js__WEBPACK_IMPORTED_MODULE_9__.MenuRegistry.appendMenuItem(_platform_actions_common_actions_js__WEBPACK_IMPORTED_MODULE_9__.MenuId.ExplorerContext, { submenu: _platform_actions_common_actions_js__WEBPACK_IMPORTED_MODULE_9__.MenuId.ExplorerContextShare, title: _nls_js__WEBPACK_IMPORTED_MODULE_8__.localize2('share', \"Share\"), group: '11_share', order: -1 });\nconst PasteAction = supportsPaste ? registerCommand(new _browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_4__.MultiCommand({\n id: 'editor.action.clipboardPasteAction',\n precondition: undefined,\n kbOpts: (\n // Do not bind paste keybindings in the browser,\n // since browsers do that for us and it avoids security prompts\n _base_common_platform_js__WEBPACK_IMPORTED_MODULE_2__.isNative ? {\n primary: 2048 /* KeyMod.CtrlCmd */ | 52 /* KeyCode.KeyV */,\n win: { primary: 2048 /* KeyMod.CtrlCmd */ | 52 /* KeyCode.KeyV */, secondary: [1024 /* KeyMod.Shift */ | 19 /* KeyCode.Insert */] },\n linux: { primary: 2048 /* KeyMod.CtrlCmd */ | 52 /* KeyCode.KeyV */, secondary: [1024 /* KeyMod.Shift */ | 19 /* KeyCode.Insert */] },\n weight: 100 /* KeybindingWeight.EditorContrib */\n } : undefined),\n menuOpts: [{\n menuId: _platform_actions_common_actions_js__WEBPACK_IMPORTED_MODULE_9__.MenuId.MenubarEditMenu,\n group: '2_ccp',\n title: _nls_js__WEBPACK_IMPORTED_MODULE_8__.localize({ key: 'miPaste', comment: ['&& denotes a mnemonic'] }, \"&&Paste\"),\n order: 4\n }, {\n menuId: _platform_actions_common_actions_js__WEBPACK_IMPORTED_MODULE_9__.MenuId.EditorContext,\n group: CLIPBOARD_CONTEXT_MENU_GROUP,\n title: _nls_js__WEBPACK_IMPORTED_MODULE_8__.localize('actions.clipboard.pasteLabel', \"Paste\"),\n when: _common_editorContextKeys_js__WEBPACK_IMPORTED_MODULE_6__.EditorContextKeys.writable,\n order: 4,\n }, {\n menuId: _platform_actions_common_actions_js__WEBPACK_IMPORTED_MODULE_9__.MenuId.CommandPalette,\n group: '',\n title: _nls_js__WEBPACK_IMPORTED_MODULE_8__.localize('actions.clipboard.pasteLabel', \"Paste\"),\n order: 1\n }, {\n menuId: _platform_actions_common_actions_js__WEBPACK_IMPORTED_MODULE_9__.MenuId.SimpleEditorContext,\n group: CLIPBOARD_CONTEXT_MENU_GROUP,\n title: _nls_js__WEBPACK_IMPORTED_MODULE_8__.localize('actions.clipboard.pasteLabel', \"Paste\"),\n when: _common_editorContextKeys_js__WEBPACK_IMPORTED_MODULE_6__.EditorContextKeys.writable,\n order: 4,\n }]\n})) : undefined;\nclass ExecCommandCopyWithSyntaxHighlightingAction extends _browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_4__.EditorAction {\n constructor() {\n super({\n id: 'editor.action.clipboardCopyWithSyntaxHighlightingAction',\n label: _nls_js__WEBPACK_IMPORTED_MODULE_8__.localize('actions.clipboard.copyWithSyntaxHighlightingLabel', \"Copy With Syntax Highlighting\"),\n alias: 'Copy With Syntax Highlighting',\n precondition: undefined,\n kbOpts: {\n kbExpr: _common_editorContextKeys_js__WEBPACK_IMPORTED_MODULE_6__.EditorContextKeys.textInputFocus,\n primary: 0,\n weight: 100 /* KeybindingWeight.EditorContrib */\n }\n });\n }\n run(accessor, editor) {\n if (!editor.hasModel()) {\n return;\n }\n const emptySelectionClipboard = editor.getOption(37 /* EditorOption.emptySelectionClipboard */);\n if (!emptySelectionClipboard && editor.getSelection().isEmpty()) {\n return;\n }\n _browser_controller_textAreaInput_js__WEBPACK_IMPORTED_MODULE_3__.CopyOptions.forceCopyWithSyntaxHighlighting = true;\n editor.focus();\n editor.getContainerDomNode().ownerDocument.execCommand('copy');\n _browser_controller_textAreaInput_js__WEBPACK_IMPORTED_MODULE_3__.CopyOptions.forceCopyWithSyntaxHighlighting = false;\n }\n}\nfunction registerExecCommandImpl(target, browserCommand) {\n if (!target) {\n return;\n }\n // 1. handle case when focus is in editor.\n target.addImplementation(10000, 'code-editor', (accessor, args) => {\n // Only if editor text focus (i.e. not if editor has widget focus).\n const focusedEditor = accessor.get(_browser_services_codeEditorService_js__WEBPACK_IMPORTED_MODULE_5__.ICodeEditorService).getFocusedCodeEditor();\n if (focusedEditor && focusedEditor.hasTextFocus()) {\n // Do not execute if there is no selection and empty selection clipboard is off\n const emptySelectionClipboard = focusedEditor.getOption(37 /* EditorOption.emptySelectionClipboard */);\n const selection = focusedEditor.getSelection();\n if (selection && selection.isEmpty() && !emptySelectionClipboard) {\n return true;\n }\n focusedEditor.getContainerDomNode().ownerDocument.execCommand(browserCommand);\n return true;\n }\n return false;\n });\n // 2. (default) handle case when focus is somewhere else.\n target.addImplementation(0, 'generic-dom', (accessor, args) => {\n (0,_base_browser_dom_js__WEBPACK_IMPORTED_MODULE_1__.getActiveDocument)().execCommand(browserCommand);\n return true;\n });\n}\nregisterExecCommandImpl(CutAction, 'cut');\nregisterExecCommandImpl(CopyAction, 'copy');\nif (PasteAction) {\n // 1. Paste: handle case when focus is in editor.\n PasteAction.addImplementation(10000, 'code-editor', (accessor, args) => {\n var _a, _b;\n const codeEditorService = accessor.get(_browser_services_codeEditorService_js__WEBPACK_IMPORTED_MODULE_5__.ICodeEditorService);\n const clipboardService = accessor.get(_platform_clipboard_common_clipboardService_js__WEBPACK_IMPORTED_MODULE_10__.IClipboardService);\n // Only if editor text focus (i.e. not if editor has widget focus).\n const focusedEditor = codeEditorService.getFocusedCodeEditor();\n if (focusedEditor && focusedEditor.hasTextFocus()) {\n const result = focusedEditor.getContainerDomNode().ownerDocument.execCommand('paste');\n if (result) {\n return (_b = (_a = _dropOrPasteInto_browser_copyPasteController_js__WEBPACK_IMPORTED_MODULE_7__.CopyPasteController.get(focusedEditor)) === null || _a === void 0 ? void 0 : _a.finishedPaste()) !== null && _b !== void 0 ? _b : Promise.resolve();\n }\n else if (_base_common_platform_js__WEBPACK_IMPORTED_MODULE_2__.isWeb) {\n // Use the clipboard service if document.execCommand('paste') was not successful\n return (async () => {\n const clipboardText = await clipboardService.readText();\n if (clipboardText !== '') {\n const metadata = _browser_controller_textAreaInput_js__WEBPACK_IMPORTED_MODULE_3__.InMemoryClipboardMetadataManager.INSTANCE.get(clipboardText);\n let pasteOnNewLine = false;\n let multicursorText = null;\n let mode = null;\n if (metadata) {\n pasteOnNewLine = (focusedEditor.getOption(37 /* EditorOption.emptySelectionClipboard */) && !!metadata.isFromEmptySelection);\n multicursorText = (typeof metadata.multicursorText !== 'undefined' ? metadata.multicursorText : null);\n mode = metadata.mode;\n }\n focusedEditor.trigger('keyboard', \"paste\" /* Handler.Paste */, {\n text: clipboardText,\n pasteOnNewLine,\n multicursorText,\n mode\n });\n }\n })();\n }\n return true;\n }\n return false;\n });\n // 2. Paste: (default) handle case when focus is somewhere else.\n PasteAction.addImplementation(0, 'generic-dom', (accessor, args) => {\n (0,_base_browser_dom_js__WEBPACK_IMPORTED_MODULE_1__.getActiveDocument)().execCommand('paste');\n return true;\n });\n}\nif (supportsCopy) {\n (0,_browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_4__.registerEditorAction)(ExecCommandCopyWithSyntaxHighlightingAction);\n}\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/contrib/clipboard/browser/clipboard.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/contrib/codeAction/browser/codeAction.js":
/*!*******************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/contrib/codeAction/browser/codeAction.js ***!
\*******************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ ApplyCodeActionReason: () => (/* binding */ ApplyCodeActionReason),\n/* harmony export */ applyCodeAction: () => (/* binding */ applyCodeAction),\n/* harmony export */ autoFixCommandId: () => (/* binding */ autoFixCommandId),\n/* harmony export */ codeActionCommandId: () => (/* binding */ codeActionCommandId),\n/* harmony export */ fixAllCommandId: () => (/* binding */ fixAllCommandId),\n/* harmony export */ getCodeActions: () => (/* binding */ getCodeActions),\n/* harmony export */ organizeImportsCommandId: () => (/* binding */ organizeImportsCommandId),\n/* harmony export */ quickFixCommandId: () => (/* binding */ quickFixCommandId),\n/* harmony export */ refactorCommandId: () => (/* binding */ refactorCommandId),\n/* harmony export */ sourceActionCommandId: () => (/* binding */ sourceActionCommandId)\n/* harmony export */ });\n/* harmony import */ var _base_common_arrays_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../../base/common/arrays.js */ \"./node_modules/monaco-editor/esm/vs/base/common/arrays.js\");\n/* harmony import */ var _base_common_cancellation_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../base/common/cancellation.js */ \"./node_modules/monaco-editor/esm/vs/base/common/cancellation.js\");\n/* harmony import */ var _base_common_errors_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../../base/common/errors.js */ \"./node_modules/monaco-editor/esm/vs/base/common/errors.js\");\n/* harmony import */ var _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../../../base/common/lifecycle.js */ \"./node_modules/monaco-editor/esm/vs/base/common/lifecycle.js\");\n/* harmony import */ var _base_common_uri_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../../../base/common/uri.js */ \"./node_modules/monaco-editor/esm/vs/base/common/uri.js\");\n/* harmony import */ var _browser_services_bulkEditService_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../../../browser/services/bulkEditService.js */ \"./node_modules/monaco-editor/esm/vs/editor/browser/services/bulkEditService.js\");\n/* harmony import */ var _common_core_range_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../../../common/core/range.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/core/range.js\");\n/* harmony import */ var _common_core_selection_js__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ../../../common/core/selection.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/core/selection.js\");\n/* harmony import */ var _common_services_languageFeatures_js__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ../../../common/services/languageFeatures.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/services/languageFeatures.js\");\n/* harmony import */ var _common_services_model_js__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ../../../common/services/model.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/services/model.js\");\n/* harmony import */ var _editorState_browser_editorState_js__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! ../../editorState/browser/editorState.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/editorState/browser/editorState.js\");\n/* harmony import */ var _nls_js__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(/*! ../../../../nls.js */ \"./node_modules/monaco-editor/esm/vs/nls.js\");\n/* harmony import */ var _platform_commands_common_commands_js__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(/*! ../../../../platform/commands/common/commands.js */ \"./node_modules/monaco-editor/esm/vs/platform/commands/common/commands.js\");\n/* harmony import */ var _platform_notification_common_notification_js__WEBPACK_IMPORTED_MODULE_13__ = __webpack_require__(/*! ../../../../platform/notification/common/notification.js */ \"./node_modules/monaco-editor/esm/vs/platform/notification/common/notification.js\");\n/* harmony import */ var _platform_progress_common_progress_js__WEBPACK_IMPORTED_MODULE_14__ = __webpack_require__(/*! ../../../../platform/progress/common/progress.js */ \"./node_modules/monaco-editor/esm/vs/platform/progress/common/progress.js\");\n/* harmony import */ var _platform_telemetry_common_telemetry_js__WEBPACK_IMPORTED_MODULE_15__ = __webpack_require__(/*! ../../../../platform/telemetry/common/telemetry.js */ \"./node_modules/monaco-editor/esm/vs/platform/telemetry/common/telemetry.js\");\n/* harmony import */ var _common_types_js__WEBPACK_IMPORTED_MODULE_16__ = __webpack_require__(/*! ../common/types.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/codeAction/common/types.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nconst codeActionCommandId = 'editor.action.codeAction';\nconst quickFixCommandId = 'editor.action.quickFix';\nconst autoFixCommandId = 'editor.action.autoFix';\nconst refactorCommandId = 'editor.action.refactor';\nconst sourceActionCommandId = 'editor.action.sourceAction';\nconst organizeImportsCommandId = 'editor.action.organizeImports';\nconst fixAllCommandId = 'editor.action.fixAll';\nclass ManagedCodeActionSet extends _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_3__.Disposable {\n static codeActionsPreferredComparator(a, b) {\n if (a.isPreferred && !b.isPreferred) {\n return -1;\n }\n else if (!a.isPreferred && b.isPreferred) {\n return 1;\n }\n else {\n return 0;\n }\n }\n static codeActionsComparator({ action: a }, { action: b }) {\n if (a.isAI && !b.isAI) {\n return 1;\n }\n else if (!a.isAI && b.isAI) {\n return -1;\n }\n if ((0,_base_common_arrays_js__WEBPACK_IMPORTED_MODULE_0__.isNonEmptyArray)(a.diagnostics)) {\n return (0,_base_common_arrays_js__WEBPACK_IMPORTED_MODULE_0__.isNonEmptyArray)(b.diagnostics) ? ManagedCodeActionSet.codeActionsPreferredComparator(a, b) : -1;\n }\n else if ((0,_base_common_arrays_js__WEBPACK_IMPORTED_MODULE_0__.isNonEmptyArray)(b.diagnostics)) {\n return 1;\n }\n else {\n return ManagedCodeActionSet.codeActionsPreferredComparator(a, b); // both have no diagnostics\n }\n }\n constructor(actions, documentation, disposables) {\n super();\n this.documentation = documentation;\n this._register(disposables);\n this.allActions = [...actions].sort(ManagedCodeActionSet.codeActionsComparator);\n this.validActions = this.allActions.filter(({ action }) => !action.disabled);\n }\n get hasAutoFix() {\n return this.validActions.some(({ action: fix }) => !!fix.kind && _common_types_js__WEBPACK_IMPORTED_MODULE_16__.CodeActionKind.QuickFix.contains(new _common_types_js__WEBPACK_IMPORTED_MODULE_16__.CodeActionKind(fix.kind)) && !!fix.isPreferred);\n }\n get hasAIFix() {\n return this.validActions.some(({ action: fix }) => !!fix.isAI);\n }\n get allAIFixes() {\n return this.validActions.every(({ action: fix }) => !!fix.isAI);\n }\n}\nconst emptyCodeActionsResponse = { actions: [], documentation: undefined };\nasync function getCodeActions(registry, model, rangeOrSelection, trigger, progress, token) {\n var _a;\n const filter = trigger.filter || {};\n const notebookFilter = {\n ...filter,\n excludes: [...(filter.excludes || []), _common_types_js__WEBPACK_IMPORTED_MODULE_16__.CodeActionKind.Notebook],\n };\n const codeActionContext = {\n only: (_a = filter.include) === null || _a === void 0 ? void 0 : _a.value,\n trigger: trigger.type,\n };\n const cts = new _editorState_browser_editorState_js__WEBPACK_IMPORTED_MODULE_10__.TextModelCancellationTokenSource(model, token);\n // if the trigger is auto (autosave, lightbulb, etc), we should exclude notebook codeActions\n const excludeNotebookCodeActions = (trigger.type === 2 /* languages.CodeActionTriggerType.Auto */);\n const providers = getCodeActionProviders(registry, model, (excludeNotebookCodeActions) ? notebookFilter : filter);\n const disposables = new _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_3__.DisposableStore();\n const promises = providers.map(async (provider) => {\n try {\n progress.report(provider);\n const providedCodeActions = await provider.provideCodeActions(model, rangeOrSelection, codeActionContext, cts.token);\n if (providedCodeActions) {\n disposables.add(providedCodeActions);\n }\n if (cts.token.isCancellationRequested) {\n return emptyCodeActionsResponse;\n }\n const filteredActions = ((providedCodeActions === null || providedCodeActions === void 0 ? void 0 : providedCodeActions.actions) || []).filter(action => action && (0,_common_types_js__WEBPACK_IMPORTED_MODULE_16__.filtersAction)(filter, action));\n const documentation = getDocumentationFromProvider(provider, filteredActions, filter.include);\n return {\n actions: filteredActions.map(action => new _common_types_js__WEBPACK_IMPORTED_MODULE_16__.CodeActionItem(action, provider)),\n documentation\n };\n }\n catch (err) {\n if ((0,_base_common_errors_js__WEBPACK_IMPORTED_MODULE_2__.isCancellationError)(err)) {\n throw err;\n }\n (0,_base_common_errors_js__WEBPACK_IMPORTED_MODULE_2__.onUnexpectedExternalError)(err);\n return emptyCodeActionsResponse;\n }\n });\n const listener = registry.onDidChange(() => {\n const newProviders = registry.all(model);\n if (!(0,_base_common_arrays_js__WEBPACK_IMPORTED_MODULE_0__.equals)(newProviders, providers)) {\n cts.cancel();\n }\n });\n try {\n const actions = await Promise.all(promises);\n const allActions = actions.map(x => x.actions).flat();\n const allDocumentation = [\n ...(0,_base_common_arrays_js__WEBPACK_IMPORTED_MODULE_0__.coalesce)(actions.map(x => x.documentation)),\n ...getAdditionalDocumentationForShowingActions(registry, model, trigger, allActions)\n ];\n return new ManagedCodeActionSet(allActions, allDocumentation, disposables);\n }\n finally {\n listener.dispose();\n cts.dispose();\n }\n}\nfunction getCodeActionProviders(registry, model, filter) {\n return registry.all(model)\n // Don't include providers that we know will not return code actions of interest\n .filter(provider => {\n if (!provider.providedCodeActionKinds) {\n // We don't know what type of actions this provider will return.\n return true;\n }\n return provider.providedCodeActionKinds.some(kind => (0,_common_types_js__WEBPACK_IMPORTED_MODULE_16__.mayIncludeActionsOfKind)(filter, new _common_types_js__WEBPACK_IMPORTED_MODULE_16__.CodeActionKind(kind)));\n });\n}\nfunction* getAdditionalDocumentationForShowingActions(registry, model, trigger, actionsToShow) {\n var _a, _b, _c;\n if (model && actionsToShow.length) {\n for (const provider of registry.all(model)) {\n if (provider._getAdditionalMenuItems) {\n yield* (_a = provider._getAdditionalMenuItems) === null || _a === void 0 ? void 0 : _a.call(provider, { trigger: trigger.type, only: (_c = (_b = trigger.filter) === null || _b === void 0 ? void 0 : _b.include) === null || _c === void 0 ? void 0 : _c.value }, actionsToShow.map(item => item.action));\n }\n }\n }\n}\nfunction getDocumentationFromProvider(provider, providedCodeActions, only) {\n if (!provider.documentation) {\n return undefined;\n }\n const documentation = provider.documentation.map(entry => ({ kind: new _common_types_js__WEBPACK_IMPORTED_MODULE_16__.CodeActionKind(entry.kind), command: entry.command }));\n if (only) {\n let currentBest;\n for (const entry of documentation) {\n if (entry.kind.contains(only)) {\n if (!currentBest) {\n currentBest = entry;\n }\n else {\n // Take best match\n if (currentBest.kind.contains(entry.kind)) {\n currentBest = entry;\n }\n }\n }\n }\n if (currentBest) {\n return currentBest === null || currentBest === void 0 ? void 0 : currentBest.command;\n }\n }\n // Otherwise, check to see if any of the provided actions match.\n for (const action of providedCodeActions) {\n if (!action.kind) {\n continue;\n }\n for (const entry of documentation) {\n if (entry.kind.contains(new _common_types_js__WEBPACK_IMPORTED_MODULE_16__.CodeActionKind(action.kind))) {\n return entry.command;\n }\n }\n }\n return undefined;\n}\nvar ApplyCodeActionReason;\n(function (ApplyCodeActionReason) {\n ApplyCodeActionReason[\"OnSave\"] = \"onSave\";\n ApplyCodeActionReason[\"FromProblemsView\"] = \"fromProblemsView\";\n ApplyCodeActionReason[\"FromCodeActions\"] = \"fromCodeActions\";\n ApplyCodeActionReason[\"FromAILightbulb\"] = \"fromAILightbulb\"; // direct invocation when clicking on the AI lightbulb\n})(ApplyCodeActionReason || (ApplyCodeActionReason = {}));\nasync function applyCodeAction(accessor, item, codeActionReason, options, token = _base_common_cancellation_js__WEBPACK_IMPORTED_MODULE_1__.CancellationToken.None) {\n var _a;\n const bulkEditService = accessor.get(_browser_services_bulkEditService_js__WEBPACK_IMPORTED_MODULE_5__.IBulkEditService);\n const commandService = accessor.get(_platform_commands_common_commands_js__WEBPACK_IMPORTED_MODULE_12__.ICommandService);\n const telemetryService = accessor.get(_platform_telemetry_common_telemetry_js__WEBPACK_IMPORTED_MODULE_15__.ITelemetryService);\n const notificationService = accessor.get(_platform_notification_common_notification_js__WEBPACK_IMPORTED_MODULE_13__.INotificationService);\n telemetryService.publicLog2('codeAction.applyCodeAction', {\n codeActionTitle: item.action.title,\n codeActionKind: item.action.kind,\n codeActionIsPreferred: !!item.action.isPreferred,\n reason: codeActionReason,\n });\n await item.resolve(token);\n if (token.isCancellationRequested) {\n return;\n }\n if ((_a = item.action.edit) === null || _a === void 0 ? void 0 : _a.edits.length) {\n const result = await bulkEditService.apply(item.action.edit, {\n editor: options === null || options === void 0 ? void 0 : options.editor,\n label: item.action.title,\n quotableLabel: item.action.title,\n code: 'undoredo.codeAction',\n respectAutoSaveConfig: codeActionReason !== ApplyCodeActionReason.OnSave,\n showPreview: options === null || options === void 0 ? void 0 : options.preview,\n });\n if (!result.isApplied) {\n return;\n }\n }\n if (item.action.command) {\n try {\n await commandService.executeCommand(item.action.command.id, ...(item.action.command.arguments || []));\n }\n catch (err) {\n const message = asMessage(err);\n notificationService.error(typeof message === 'string'\n ? message\n : _nls_js__WEBPACK_IMPORTED_MODULE_11__.localize('applyCodeActionFailed', \"An unknown error occurred while applying the code action\"));\n }\n }\n}\nfunction asMessage(err) {\n if (typeof err === 'string') {\n return err;\n }\n else if (err instanceof Error && typeof err.message === 'string') {\n return err.message;\n }\n else {\n return undefined;\n }\n}\n_platform_commands_common_commands_js__WEBPACK_IMPORTED_MODULE_12__.CommandsRegistry.registerCommand('_executeCodeActionProvider', async function (accessor, resource, rangeOrSelection, kind, itemResolveCount) {\n if (!(resource instanceof _base_common_uri_js__WEBPACK_IMPORTED_MODULE_4__.URI)) {\n throw (0,_base_common_errors_js__WEBPACK_IMPORTED_MODULE_2__.illegalArgument)();\n }\n const { codeActionProvider } = accessor.get(_common_services_languageFeatures_js__WEBPACK_IMPORTED_MODULE_8__.ILanguageFeaturesService);\n const model = accessor.get(_common_services_model_js__WEBPACK_IMPORTED_MODULE_9__.IModelService).getModel(resource);\n if (!model) {\n throw (0,_base_common_errors_js__WEBPACK_IMPORTED_MODULE_2__.illegalArgument)();\n }\n const validatedRangeOrSelection = _common_core_selection_js__WEBPACK_IMPORTED_MODULE_7__.Selection.isISelection(rangeOrSelection)\n ? _common_core_selection_js__WEBPACK_IMPORTED_MODULE_7__.Selection.liftSelection(rangeOrSelection)\n : _common_core_range_js__WEBPACK_IMPORTED_MODULE_6__.Range.isIRange(rangeOrSelection)\n ? model.validateRange(rangeOrSelection)\n : undefined;\n if (!validatedRangeOrSelection) {\n throw (0,_base_common_errors_js__WEBPACK_IMPORTED_MODULE_2__.illegalArgument)();\n }\n const include = typeof kind === 'string' ? new _common_types_js__WEBPACK_IMPORTED_MODULE_16__.CodeActionKind(kind) : undefined;\n const codeActionSet = await getCodeActions(codeActionProvider, model, validatedRangeOrSelection, { type: 1 /* languages.CodeActionTriggerType.Invoke */, triggerAction: _common_types_js__WEBPACK_IMPORTED_MODULE_16__.CodeActionTriggerSource.Default, filter: { includeSourceActions: true, include } }, _platform_progress_common_progress_js__WEBPACK_IMPORTED_MODULE_14__.Progress.None, _base_common_cancellation_js__WEBPACK_IMPORTED_MODULE_1__.CancellationToken.None);\n const resolving = [];\n const resolveCount = Math.min(codeActionSet.validActions.length, typeof itemResolveCount === 'number' ? itemResolveCount : 0);\n for (let i = 0; i < resolveCount; i++) {\n resolving.push(codeActionSet.validActions[i].resolve(_base_common_cancellation_js__WEBPACK_IMPORTED_MODULE_1__.CancellationToken.None));\n }\n try {\n await Promise.all(resolving);\n return codeActionSet.validActions.map(item => item.action);\n }\n finally {\n setTimeout(() => codeActionSet.dispose(), 100);\n }\n});\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/contrib/codeAction/browser/codeAction.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/contrib/codeAction/browser/codeActionCommands.js":
/*!***************************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/contrib/codeAction/browser/codeActionCommands.js ***!
\***************************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ AutoFixAction: () => (/* binding */ AutoFixAction),\n/* harmony export */ CodeActionCommand: () => (/* binding */ CodeActionCommand),\n/* harmony export */ FixAllAction: () => (/* binding */ FixAllAction),\n/* harmony export */ OrganizeImportsAction: () => (/* binding */ OrganizeImportsAction),\n/* harmony export */ QuickFixAction: () => (/* binding */ QuickFixAction),\n/* harmony export */ RefactorAction: () => (/* binding */ RefactorAction),\n/* harmony export */ SourceAction: () => (/* binding */ SourceAction)\n/* harmony export */ });\n/* harmony import */ var _base_common_strings_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../../base/common/strings.js */ \"./node_modules/monaco-editor/esm/vs/base/common/strings.js\");\n/* harmony import */ var _browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../browser/editorExtensions.js */ \"./node_modules/monaco-editor/esm/vs/editor/browser/editorExtensions.js\");\n/* harmony import */ var _common_editorContextKeys_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../common/editorContextKeys.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/editorContextKeys.js\");\n/* harmony import */ var _codeAction_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./codeAction.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/codeAction/browser/codeAction.js\");\n/* harmony import */ var _nls_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../../../nls.js */ \"./node_modules/monaco-editor/esm/vs/nls.js\");\n/* harmony import */ var _platform_contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../../../../platform/contextkey/common/contextkey.js */ \"./node_modules/monaco-editor/esm/vs/platform/contextkey/common/contextkey.js\");\n/* harmony import */ var _common_types_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../common/types.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/codeAction/common/types.js\");\n/* harmony import */ var _codeActionController_js__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ./codeActionController.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/codeAction/browser/codeActionController.js\");\n/* harmony import */ var _codeActionModel_js__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ./codeActionModel.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/codeAction/browser/codeActionModel.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n\n\n\n\n\n\n\n\nfunction contextKeyForSupportedActions(kind) {\n return _platform_contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_5__.ContextKeyExpr.regex(_codeActionModel_js__WEBPACK_IMPORTED_MODULE_8__.SUPPORTED_CODE_ACTIONS.keys()[0], new RegExp('(\\\\s|^)' + (0,_base_common_strings_js__WEBPACK_IMPORTED_MODULE_0__.escapeRegExpCharacters)(kind.value) + '\\\\b'));\n}\nconst argsSchema = {\n type: 'object',\n defaultSnippets: [{ body: { kind: '' } }],\n properties: {\n 'kind': {\n type: 'string',\n description: _nls_js__WEBPACK_IMPORTED_MODULE_4__.localize('args.schema.kind', \"Kind of the code action to run.\"),\n },\n 'apply': {\n type: 'string',\n description: _nls_js__WEBPACK_IMPORTED_MODULE_4__.localize('args.schema.apply', \"Controls when the returned actions are applied.\"),\n default: \"ifSingle\" /* CodeActionAutoApply.IfSingle */,\n enum: [\"first\" /* CodeActionAutoApply.First */, \"ifSingle\" /* CodeActionAutoApply.IfSingle */, \"never\" /* CodeActionAutoApply.Never */],\n enumDescriptions: [\n _nls_js__WEBPACK_IMPORTED_MODULE_4__.localize('args.schema.apply.first', \"Always apply the first returned code action.\"),\n _nls_js__WEBPACK_IMPORTED_MODULE_4__.localize('args.schema.apply.ifSingle', \"Apply the first returned code action if it is the only one.\"),\n _nls_js__WEBPACK_IMPORTED_MODULE_4__.localize('args.schema.apply.never', \"Do not apply the returned code actions.\"),\n ]\n },\n 'preferred': {\n type: 'boolean',\n default: false,\n description: _nls_js__WEBPACK_IMPORTED_MODULE_4__.localize('args.schema.preferred', \"Controls if only preferred code actions should be returned.\"),\n }\n }\n};\nfunction triggerCodeActionsForEditorSelection(editor, notAvailableMessage, filter, autoApply, triggerAction = _common_types_js__WEBPACK_IMPORTED_MODULE_6__.CodeActionTriggerSource.Default) {\n if (editor.hasModel()) {\n const controller = _codeActionController_js__WEBPACK_IMPORTED_MODULE_7__.CodeActionController.get(editor);\n controller === null || controller === void 0 ? void 0 : controller.manualTriggerAtCurrentPosition(notAvailableMessage, triggerAction, filter, autoApply);\n }\n}\nclass QuickFixAction extends _browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_1__.EditorAction {\n constructor() {\n super({\n id: _codeAction_js__WEBPACK_IMPORTED_MODULE_3__.quickFixCommandId,\n label: _nls_js__WEBPACK_IMPORTED_MODULE_4__.localize('quickfix.trigger.label', \"Quick Fix...\"),\n alias: 'Quick Fix...',\n precondition: _platform_contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_5__.ContextKeyExpr.and(_common_editorContextKeys_js__WEBPACK_IMPORTED_MODULE_2__.EditorContextKeys.writable, _common_editorContextKeys_js__WEBPACK_IMPORTED_MODULE_2__.EditorContextKeys.hasCodeActionsProvider),\n kbOpts: {\n kbExpr: _common_editorContextKeys_js__WEBPACK_IMPORTED_MODULE_2__.EditorContextKeys.textInputFocus,\n primary: 2048 /* KeyMod.CtrlCmd */ | 89 /* KeyCode.Period */,\n weight: 100 /* KeybindingWeight.EditorContrib */\n }\n });\n }\n run(_accessor, editor) {\n return triggerCodeActionsForEditorSelection(editor, _nls_js__WEBPACK_IMPORTED_MODULE_4__.localize('editor.action.quickFix.noneMessage', \"No code actions available\"), undefined, undefined, _common_types_js__WEBPACK_IMPORTED_MODULE_6__.CodeActionTriggerSource.QuickFix);\n }\n}\nclass CodeActionCommand extends _browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_1__.EditorCommand {\n constructor() {\n super({\n id: _codeAction_js__WEBPACK_IMPORTED_MODULE_3__.codeActionCommandId,\n precondition: _platform_contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_5__.ContextKeyExpr.and(_common_editorContextKeys_js__WEBPACK_IMPORTED_MODULE_2__.EditorContextKeys.writable, _common_editorContextKeys_js__WEBPACK_IMPORTED_MODULE_2__.EditorContextKeys.hasCodeActionsProvider),\n metadata: {\n description: 'Trigger a code action',\n args: [{ name: 'args', schema: argsSchema, }]\n }\n });\n }\n runEditorCommand(_accessor, editor, userArgs) {\n const args = _common_types_js__WEBPACK_IMPORTED_MODULE_6__.CodeActionCommandArgs.fromUser(userArgs, {\n kind: _common_types_js__WEBPACK_IMPORTED_MODULE_6__.CodeActionKind.Empty,\n apply: \"ifSingle\" /* CodeActionAutoApply.IfSingle */,\n });\n return triggerCodeActionsForEditorSelection(editor, typeof (userArgs === null || userArgs === void 0 ? void 0 : userArgs.kind) === 'string'\n ? args.preferred\n ? _nls_js__WEBPACK_IMPORTED_MODULE_4__.localize('editor.action.codeAction.noneMessage.preferred.kind', \"No preferred code actions for '{0}' available\", userArgs.kind)\n : _nls_js__WEBPACK_IMPORTED_MODULE_4__.localize('editor.action.codeAction.noneMessage.kind', \"No code actions for '{0}' available\", userArgs.kind)\n : args.preferred\n ? _nls_js__WEBPACK_IMPORTED_MODULE_4__.localize('editor.action.codeAction.noneMessage.preferred', \"No preferred code actions available\")\n : _nls_js__WEBPACK_IMPORTED_MODULE_4__.localize('editor.action.codeAction.noneMessage', \"No code actions available\"), {\n include: args.kind,\n includeSourceActions: true,\n onlyIncludePreferredActions: args.preferred,\n }, args.apply);\n }\n}\nclass RefactorAction extends _browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_1__.EditorAction {\n constructor() {\n super({\n id: _codeAction_js__WEBPACK_IMPORTED_MODULE_3__.refactorCommandId,\n label: _nls_js__WEBPACK_IMPORTED_MODULE_4__.localize('refactor.label', \"Refactor...\"),\n alias: 'Refactor...',\n precondition: _platform_contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_5__.ContextKeyExpr.and(_common_editorContextKeys_js__WEBPACK_IMPORTED_MODULE_2__.EditorContextKeys.writable, _common_editorContextKeys_js__WEBPACK_IMPORTED_MODULE_2__.EditorContextKeys.hasCodeActionsProvider),\n kbOpts: {\n kbExpr: _common_editorContextKeys_js__WEBPACK_IMPORTED_MODULE_2__.EditorContextKeys.textInputFocus,\n primary: 2048 /* KeyMod.CtrlCmd */ | 1024 /* KeyMod.Shift */ | 48 /* KeyCode.KeyR */,\n mac: {\n primary: 256 /* KeyMod.WinCtrl */ | 1024 /* KeyMod.Shift */ | 48 /* KeyCode.KeyR */\n },\n weight: 100 /* KeybindingWeight.EditorContrib */\n },\n contextMenuOpts: {\n group: '1_modification',\n order: 2,\n when: _platform_contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_5__.ContextKeyExpr.and(_common_editorContextKeys_js__WEBPACK_IMPORTED_MODULE_2__.EditorContextKeys.writable, contextKeyForSupportedActions(_common_types_js__WEBPACK_IMPORTED_MODULE_6__.CodeActionKind.Refactor)),\n },\n metadata: {\n description: 'Refactor...',\n args: [{ name: 'args', schema: argsSchema }]\n }\n });\n }\n run(_accessor, editor, userArgs) {\n const args = _common_types_js__WEBPACK_IMPORTED_MODULE_6__.CodeActionCommandArgs.fromUser(userArgs, {\n kind: _common_types_js__WEBPACK_IMPORTED_MODULE_6__.CodeActionKind.Refactor,\n apply: \"never\" /* CodeActionAutoApply.Never */\n });\n return triggerCodeActionsForEditorSelection(editor, typeof (userArgs === null || userArgs === void 0 ? void 0 : userArgs.kind) === 'string'\n ? args.preferred\n ? _nls_js__WEBPACK_IMPORTED_MODULE_4__.localize('editor.action.refactor.noneMessage.preferred.kind', \"No preferred refactorings for '{0}' available\", userArgs.kind)\n : _nls_js__WEBPACK_IMPORTED_MODULE_4__.localize('editor.action.refactor.noneMessage.kind', \"No refactorings for '{0}' available\", userArgs.kind)\n : args.preferred\n ? _nls_js__WEBPACK_IMPORTED_MODULE_4__.localize('editor.action.refactor.noneMessage.preferred', \"No preferred refactorings available\")\n : _nls_js__WEBPACK_IMPORTED_MODULE_4__.localize('editor.action.refactor.noneMessage', \"No refactorings available\"), {\n include: _common_types_js__WEBPACK_IMPORTED_MODULE_6__.CodeActionKind.Refactor.contains(args.kind) ? args.kind : _common_types_js__WEBPACK_IMPORTED_MODULE_6__.CodeActionKind.None,\n onlyIncludePreferredActions: args.preferred\n }, args.apply, _common_types_js__WEBPACK_IMPORTED_MODULE_6__.CodeActionTriggerSource.Refactor);\n }\n}\nclass SourceAction extends _browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_1__.EditorAction {\n constructor() {\n super({\n id: _codeAction_js__WEBPACK_IMPORTED_MODULE_3__.sourceActionCommandId,\n label: _nls_js__WEBPACK_IMPORTED_MODULE_4__.localize('source.label', \"Source Action...\"),\n alias: 'Source Action...',\n precondition: _platform_contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_5__.ContextKeyExpr.and(_common_editorContextKeys_js__WEBPACK_IMPORTED_MODULE_2__.EditorContextKeys.writable, _common_editorContextKeys_js__WEBPACK_IMPORTED_MODULE_2__.EditorContextKeys.hasCodeActionsProvider),\n contextMenuOpts: {\n group: '1_modification',\n order: 2.1,\n when: _platform_contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_5__.ContextKeyExpr.and(_common_editorContextKeys_js__WEBPACK_IMPORTED_MODULE_2__.EditorContextKeys.writable, contextKeyForSupportedActions(_common_types_js__WEBPACK_IMPORTED_MODULE_6__.CodeActionKind.Source)),\n },\n metadata: {\n description: 'Source Action...',\n args: [{ name: 'args', schema: argsSchema }]\n }\n });\n }\n run(_accessor, editor, userArgs) {\n const args = _common_types_js__WEBPACK_IMPORTED_MODULE_6__.CodeActionCommandArgs.fromUser(userArgs, {\n kind: _common_types_js__WEBPACK_IMPORTED_MODULE_6__.CodeActionKind.Source,\n apply: \"never\" /* CodeActionAutoApply.Never */\n });\n return triggerCodeActionsForEditorSelection(editor, typeof (userArgs === null || userArgs === void 0 ? void 0 : userArgs.kind) === 'string'\n ? args.preferred\n ? _nls_js__WEBPACK_IMPORTED_MODULE_4__.localize('editor.action.source.noneMessage.preferred.kind', \"No preferred source actions for '{0}' available\", userArgs.kind)\n : _nls_js__WEBPACK_IMPORTED_MODULE_4__.localize('editor.action.source.noneMessage.kind', \"No source actions for '{0}' available\", userArgs.kind)\n : args.preferred\n ? _nls_js__WEBPACK_IMPORTED_MODULE_4__.localize('editor.action.source.noneMessage.preferred', \"No preferred source actions available\")\n : _nls_js__WEBPACK_IMPORTED_MODULE_4__.localize('editor.action.source.noneMessage', \"No source actions available\"), {\n include: _common_types_js__WEBPACK_IMPORTED_MODULE_6__.CodeActionKind.Source.contains(args.kind) ? args.kind : _common_types_js__WEBPACK_IMPORTED_MODULE_6__.CodeActionKind.None,\n includeSourceActions: true,\n onlyIncludePreferredActions: args.preferred,\n }, args.apply, _common_types_js__WEBPACK_IMPORTED_MODULE_6__.CodeActionTriggerSource.SourceAction);\n }\n}\nclass OrganizeImportsAction extends _browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_1__.EditorAction {\n constructor() {\n super({\n id: _codeAction_js__WEBPACK_IMPORTED_MODULE_3__.organizeImportsCommandId,\n label: _nls_js__WEBPACK_IMPORTED_MODULE_4__.localize('organizeImports.label', \"Organize Imports\"),\n alias: 'Organize Imports',\n precondition: _platform_contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_5__.ContextKeyExpr.and(_common_editorContextKeys_js__WEBPACK_IMPORTED_MODULE_2__.EditorContextKeys.writable, contextKeyForSupportedActions(_common_types_js__WEBPACK_IMPORTED_MODULE_6__.CodeActionKind.SourceOrganizeImports)),\n kbOpts: {\n kbExpr: _common_editorContextKeys_js__WEBPACK_IMPORTED_MODULE_2__.EditorContextKeys.textInputFocus,\n primary: 1024 /* KeyMod.Shift */ | 512 /* KeyMod.Alt */ | 45 /* KeyCode.KeyO */,\n weight: 100 /* KeybindingWeight.EditorContrib */\n },\n });\n }\n run(_accessor, editor) {\n return triggerCodeActionsForEditorSelection(editor, _nls_js__WEBPACK_IMPORTED_MODULE_4__.localize('editor.action.organize.noneMessage', \"No organize imports action available\"), { include: _common_types_js__WEBPACK_IMPORTED_MODULE_6__.CodeActionKind.SourceOrganizeImports, includeSourceActions: true }, \"ifSingle\" /* CodeActionAutoApply.IfSingle */, _common_types_js__WEBPACK_IMPORTED_MODULE_6__.CodeActionTriggerSource.OrganizeImports);\n }\n}\nclass FixAllAction extends _browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_1__.EditorAction {\n constructor() {\n super({\n id: _codeAction_js__WEBPACK_IMPORTED_MODULE_3__.fixAllCommandId,\n label: _nls_js__WEBPACK_IMPORTED_MODULE_4__.localize('fixAll.label', \"Fix All\"),\n alias: 'Fix All',\n precondition: _platform_contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_5__.ContextKeyExpr.and(_common_editorContextKeys_js__WEBPACK_IMPORTED_MODULE_2__.EditorContextKeys.writable, contextKeyForSupportedActions(_common_types_js__WEBPACK_IMPORTED_MODULE_6__.CodeActionKind.SourceFixAll))\n });\n }\n run(_accessor, editor) {\n return triggerCodeActionsForEditorSelection(editor, _nls_js__WEBPACK_IMPORTED_MODULE_4__.localize('fixAll.noneMessage', \"No fix all action available\"), { include: _common_types_js__WEBPACK_IMPORTED_MODULE_6__.CodeActionKind.SourceFixAll, includeSourceActions: true }, \"ifSingle\" /* CodeActionAutoApply.IfSingle */, _common_types_js__WEBPACK_IMPORTED_MODULE_6__.CodeActionTriggerSource.FixAll);\n }\n}\nclass AutoFixAction extends _browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_1__.EditorAction {\n constructor() {\n super({\n id: _codeAction_js__WEBPACK_IMPORTED_MODULE_3__.autoFixCommandId,\n label: _nls_js__WEBPACK_IMPORTED_MODULE_4__.localize('autoFix.label', \"Auto Fix...\"),\n alias: 'Auto Fix...',\n precondition: _platform_contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_5__.ContextKeyExpr.and(_common_editorContextKeys_js__WEBPACK_IMPORTED_MODULE_2__.EditorContextKeys.writable, contextKeyForSupportedActions(_common_types_js__WEBPACK_IMPORTED_MODULE_6__.CodeActionKind.QuickFix)),\n kbOpts: {\n kbExpr: _common_editorContextKeys_js__WEBPACK_IMPORTED_MODULE_2__.EditorContextKeys.textInputFocus,\n primary: 512 /* KeyMod.Alt */ | 1024 /* KeyMod.Shift */ | 89 /* KeyCode.Period */,\n mac: {\n primary: 2048 /* KeyMod.CtrlCmd */ | 512 /* KeyMod.Alt */ | 89 /* KeyCode.Period */\n },\n weight: 100 /* KeybindingWeight.EditorContrib */\n }\n });\n }\n run(_accessor, editor) {\n return triggerCodeActionsForEditorSelection(editor, _nls_js__WEBPACK_IMPORTED_MODULE_4__.localize('editor.action.autoFix.noneMessage', \"No auto fixes available\"), {\n include: _common_types_js__WEBPACK_IMPORTED_MODULE_6__.CodeActionKind.QuickFix,\n onlyIncludePreferredActions: true\n }, \"ifSingle\" /* CodeActionAutoApply.IfSingle */, _common_types_js__WEBPACK_IMPORTED_MODULE_6__.CodeActionTriggerSource.AutoFix);\n }\n}\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/contrib/codeAction/browser/codeActionCommands.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/contrib/codeAction/browser/codeActionContributions.js":
/*!********************************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/contrib/codeAction/browser/codeActionContributions.js ***!
\********************************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var _browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../browser/editorExtensions.js */ \"./node_modules/monaco-editor/esm/vs/editor/browser/editorExtensions.js\");\n/* harmony import */ var _common_config_editorConfigurationSchema_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../common/config/editorConfigurationSchema.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/config/editorConfigurationSchema.js\");\n/* harmony import */ var _codeActionCommands_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./codeActionCommands.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/codeAction/browser/codeActionCommands.js\");\n/* harmony import */ var _codeActionController_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./codeActionController.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/codeAction/browser/codeActionController.js\");\n/* harmony import */ var _lightBulbWidget_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./lightBulbWidget.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/codeAction/browser/lightBulbWidget.js\");\n/* harmony import */ var _nls_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../../../../nls.js */ \"./node_modules/monaco-editor/esm/vs/nls.js\");\n/* harmony import */ var _platform_configuration_common_configurationRegistry_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../../../../platform/configuration/common/configurationRegistry.js */ \"./node_modules/monaco-editor/esm/vs/platform/configuration/common/configurationRegistry.js\");\n/* harmony import */ var _platform_registry_common_platform_js__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ../../../../platform/registry/common/platform.js */ \"./node_modules/monaco-editor/esm/vs/platform/registry/common/platform.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n\n\n\n\n\n\n\n(0,_browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_0__.registerEditorContribution)(_codeActionController_js__WEBPACK_IMPORTED_MODULE_3__.CodeActionController.ID, _codeActionController_js__WEBPACK_IMPORTED_MODULE_3__.CodeActionController, 3 /* EditorContributionInstantiation.Eventually */);\n(0,_browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_0__.registerEditorContribution)(_lightBulbWidget_js__WEBPACK_IMPORTED_MODULE_4__.LightBulbWidget.ID, _lightBulbWidget_js__WEBPACK_IMPORTED_MODULE_4__.LightBulbWidget, 4 /* EditorContributionInstantiation.Lazy */);\n(0,_browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_0__.registerEditorAction)(_codeActionCommands_js__WEBPACK_IMPORTED_MODULE_2__.QuickFixAction);\n(0,_browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_0__.registerEditorAction)(_codeActionCommands_js__WEBPACK_IMPORTED_MODULE_2__.RefactorAction);\n(0,_browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_0__.registerEditorAction)(_codeActionCommands_js__WEBPACK_IMPORTED_MODULE_2__.SourceAction);\n(0,_browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_0__.registerEditorAction)(_codeActionCommands_js__WEBPACK_IMPORTED_MODULE_2__.OrganizeImportsAction);\n(0,_browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_0__.registerEditorAction)(_codeActionCommands_js__WEBPACK_IMPORTED_MODULE_2__.AutoFixAction);\n(0,_browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_0__.registerEditorAction)(_codeActionCommands_js__WEBPACK_IMPORTED_MODULE_2__.FixAllAction);\n(0,_browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_0__.registerEditorCommand)(new _codeActionCommands_js__WEBPACK_IMPORTED_MODULE_2__.CodeActionCommand());\n_platform_registry_common_platform_js__WEBPACK_IMPORTED_MODULE_7__.Registry.as(_platform_configuration_common_configurationRegistry_js__WEBPACK_IMPORTED_MODULE_6__.Extensions.Configuration).registerConfiguration({\n ..._common_config_editorConfigurationSchema_js__WEBPACK_IMPORTED_MODULE_1__.editorConfigurationBaseNode,\n properties: {\n 'editor.codeActionWidget.showHeaders': {\n type: 'boolean',\n scope: 5 /* ConfigurationScope.LANGUAGE_OVERRIDABLE */,\n description: _nls_js__WEBPACK_IMPORTED_MODULE_5__.localize('showCodeActionHeaders', \"Enable/disable showing group headers in the Code Action menu.\"),\n default: true,\n },\n }\n});\n_platform_registry_common_platform_js__WEBPACK_IMPORTED_MODULE_7__.Registry.as(_platform_configuration_common_configurationRegistry_js__WEBPACK_IMPORTED_MODULE_6__.Extensions.Configuration).registerConfiguration({\n ..._common_config_editorConfigurationSchema_js__WEBPACK_IMPORTED_MODULE_1__.editorConfigurationBaseNode,\n properties: {\n 'editor.codeActionWidget.includeNearbyQuickFixes': {\n type: 'boolean',\n scope: 5 /* ConfigurationScope.LANGUAGE_OVERRIDABLE */,\n description: _nls_js__WEBPACK_IMPORTED_MODULE_5__.localize('includeNearbyQuickFixes', \"Enable/disable showing nearest Quick Fix within a line when not currently on a diagnostic.\"),\n default: true,\n },\n }\n});\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/contrib/codeAction/browser/codeActionContributions.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/contrib/codeAction/browser/codeActionController.js":
/*!*****************************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/contrib/codeAction/browser/codeActionController.js ***!
\*****************************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ CodeActionController: () => (/* binding */ CodeActionController)\n/* harmony export */ });\n/* harmony import */ var _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../../base/browser/dom.js */ \"./node_modules/monaco-editor/esm/vs/base/browser/dom.js\");\n/* harmony import */ var _base_browser_ui_aria_aria_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../base/browser/ui/aria/aria.js */ \"./node_modules/monaco-editor/esm/vs/base/browser/ui/aria/aria.js\");\n/* harmony import */ var _base_common_errors_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../../base/common/errors.js */ \"./node_modules/monaco-editor/esm/vs/base/common/errors.js\");\n/* harmony import */ var _base_common_lazy_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../../../base/common/lazy.js */ \"./node_modules/monaco-editor/esm/vs/base/common/lazy.js\");\n/* harmony import */ var _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../../../base/common/lifecycle.js */ \"./node_modules/monaco-editor/esm/vs/base/common/lifecycle.js\");\n/* harmony import */ var _common_core_position_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../../../common/core/position.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/core/position.js\");\n/* harmony import */ var _common_model_textModel_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../../../common/model/textModel.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/model/textModel.js\");\n/* harmony import */ var _common_services_languageFeatures_js__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ../../../common/services/languageFeatures.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/services/languageFeatures.js\");\n/* harmony import */ var _codeAction_js__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ./codeAction.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/codeAction/browser/codeAction.js\");\n/* harmony import */ var _codeActionKeybindingResolver_js__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ./codeActionKeybindingResolver.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/codeAction/browser/codeActionKeybindingResolver.js\");\n/* harmony import */ var _codeActionMenu_js__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! ./codeActionMenu.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/codeAction/browser/codeActionMenu.js\");\n/* harmony import */ var _lightBulbWidget_js__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(/*! ./lightBulbWidget.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/codeAction/browser/lightBulbWidget.js\");\n/* harmony import */ var _message_browser_messageController_js__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(/*! ../../message/browser/messageController.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/message/browser/messageController.js\");\n/* harmony import */ var _nls_js__WEBPACK_IMPORTED_MODULE_13__ = __webpack_require__(/*! ../../../../nls.js */ \"./node_modules/monaco-editor/esm/vs/nls.js\");\n/* harmony import */ var _platform_actionWidget_browser_actionWidget_js__WEBPACK_IMPORTED_MODULE_14__ = __webpack_require__(/*! ../../../../platform/actionWidget/browser/actionWidget.js */ \"./node_modules/monaco-editor/esm/vs/platform/actionWidget/browser/actionWidget.js\");\n/* harmony import */ var _platform_commands_common_commands_js__WEBPACK_IMPORTED_MODULE_15__ = __webpack_require__(/*! ../../../../platform/commands/common/commands.js */ \"./node_modules/monaco-editor/esm/vs/platform/commands/common/commands.js\");\n/* harmony import */ var _platform_configuration_common_configuration_js__WEBPACK_IMPORTED_MODULE_16__ = __webpack_require__(/*! ../../../../platform/configuration/common/configuration.js */ \"./node_modules/monaco-editor/esm/vs/platform/configuration/common/configuration.js\");\n/* harmony import */ var _platform_contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_17__ = __webpack_require__(/*! ../../../../platform/contextkey/common/contextkey.js */ \"./node_modules/monaco-editor/esm/vs/platform/contextkey/common/contextkey.js\");\n/* harmony import */ var _platform_instantiation_common_instantiation_js__WEBPACK_IMPORTED_MODULE_18__ = __webpack_require__(/*! ../../../../platform/instantiation/common/instantiation.js */ \"./node_modules/monaco-editor/esm/vs/platform/instantiation/common/instantiation.js\");\n/* harmony import */ var _platform_markers_common_markers_js__WEBPACK_IMPORTED_MODULE_19__ = __webpack_require__(/*! ../../../../platform/markers/common/markers.js */ \"./node_modules/monaco-editor/esm/vs/platform/markers/common/markers.js\");\n/* harmony import */ var _platform_progress_common_progress_js__WEBPACK_IMPORTED_MODULE_20__ = __webpack_require__(/*! ../../../../platform/progress/common/progress.js */ \"./node_modules/monaco-editor/esm/vs/platform/progress/common/progress.js\");\n/* harmony import */ var _platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_21__ = __webpack_require__(/*! ../../../../platform/theme/common/colorRegistry.js */ \"./node_modules/monaco-editor/esm/vs/platform/theme/common/colorRegistry.js\");\n/* harmony import */ var _platform_theme_common_theme_js__WEBPACK_IMPORTED_MODULE_22__ = __webpack_require__(/*! ../../../../platform/theme/common/theme.js */ \"./node_modules/monaco-editor/esm/vs/platform/theme/common/theme.js\");\n/* harmony import */ var _platform_theme_common_themeService_js__WEBPACK_IMPORTED_MODULE_23__ = __webpack_require__(/*! ../../../../platform/theme/common/themeService.js */ \"./node_modules/monaco-editor/esm/vs/platform/theme/common/themeService.js\");\n/* harmony import */ var _common_types_js__WEBPACK_IMPORTED_MODULE_24__ = __webpack_require__(/*! ../common/types.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/codeAction/common/types.js\");\n/* harmony import */ var _codeActionModel_js__WEBPACK_IMPORTED_MODULE_25__ = __webpack_require__(/*! ./codeActionModel.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/codeAction/browser/codeActionModel.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\nvar __decorate = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\n return c > 3 && r && Object.defineProperty(target, key, r), r;\n};\nvar __param = (undefined && undefined.__param) || function (paramIndex, decorator) {\n return function (target, key) { decorator(target, key, paramIndex); }\n};\nvar CodeActionController_1;\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nconst DECORATION_CLASS_NAME = 'quickfix-edit-highlight';\nlet CodeActionController = CodeActionController_1 = class CodeActionController extends _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_4__.Disposable {\n static get(editor) {\n return editor.getContribution(CodeActionController_1.ID);\n }\n constructor(editor, markerService, contextKeyService, instantiationService, languageFeaturesService, progressService, _commandService, _configurationService, _actionWidgetService, _instantiationService) {\n super();\n this._commandService = _commandService;\n this._configurationService = _configurationService;\n this._actionWidgetService = _actionWidgetService;\n this._instantiationService = _instantiationService;\n this._activeCodeActions = this._register(new _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_4__.MutableDisposable());\n this._showDisabled = false;\n this._disposed = false;\n this._editor = editor;\n this._model = this._register(new _codeActionModel_js__WEBPACK_IMPORTED_MODULE_25__.CodeActionModel(this._editor, languageFeaturesService.codeActionProvider, markerService, contextKeyService, progressService, _configurationService));\n this._register(this._model.onDidChangeState(newState => this.update(newState)));\n this._lightBulbWidget = new _base_common_lazy_js__WEBPACK_IMPORTED_MODULE_3__.Lazy(() => {\n const widget = this._editor.getContribution(_lightBulbWidget_js__WEBPACK_IMPORTED_MODULE_11__.LightBulbWidget.ID);\n if (widget) {\n this._register(widget.onClick(e => this.showCodeActionsFromLightbulb(e.actions, e)));\n }\n return widget;\n });\n this._resolver = instantiationService.createInstance(_codeActionKeybindingResolver_js__WEBPACK_IMPORTED_MODULE_9__.CodeActionKeybindingResolver);\n this._register(this._editor.onDidLayoutChange(() => this._actionWidgetService.hide()));\n }\n dispose() {\n this._disposed = true;\n super.dispose();\n }\n async showCodeActionsFromLightbulb(actions, at) {\n if (actions.allAIFixes && actions.validActions.length === 1) {\n const actionItem = actions.validActions[0];\n const command = actionItem.action.command;\n if (command && command.id === 'inlineChat.start') {\n if (command.arguments && command.arguments.length >= 1) {\n command.arguments[0] = { ...command.arguments[0], autoSend: false };\n }\n }\n await this._applyCodeAction(actionItem, false, false, _codeAction_js__WEBPACK_IMPORTED_MODULE_8__.ApplyCodeActionReason.FromAILightbulb);\n return;\n }\n await this.showCodeActionList(actions, at, { includeDisabledActions: false, fromLightbulb: true });\n }\n showCodeActions(_trigger, actions, at) {\n return this.showCodeActionList(actions, at, { includeDisabledActions: false, fromLightbulb: false });\n }\n manualTriggerAtCurrentPosition(notAvailableMessage, triggerAction, filter, autoApply) {\n var _a;\n if (!this._editor.hasModel()) {\n return;\n }\n (_a = _message_browser_messageController_js__WEBPACK_IMPORTED_MODULE_12__.MessageController.get(this._editor)) === null || _a === void 0 ? void 0 : _a.closeMessage();\n const triggerPosition = this._editor.getPosition();\n this._trigger({ type: 1 /* CodeActionTriggerType.Invoke */, triggerAction, filter, autoApply, context: { notAvailableMessage, position: triggerPosition } });\n }\n _trigger(trigger) {\n return this._model.trigger(trigger);\n }\n async _applyCodeAction(action, retrigger, preview, actionReason) {\n try {\n await this._instantiationService.invokeFunction(_codeAction_js__WEBPACK_IMPORTED_MODULE_8__.applyCodeAction, action, actionReason, { preview, editor: this._editor });\n }\n finally {\n if (retrigger) {\n this._trigger({ type: 2 /* CodeActionTriggerType.Auto */, triggerAction: _common_types_js__WEBPACK_IMPORTED_MODULE_24__.CodeActionTriggerSource.QuickFix, filter: {} });\n }\n }\n }\n async update(newState) {\n var _a, _b, _c, _d, _e, _f, _g;\n if (newState.type !== 1 /* CodeActionsState.Type.Triggered */) {\n (_a = this._lightBulbWidget.rawValue) === null || _a === void 0 ? void 0 : _a.hide();\n return;\n }\n let actions;\n try {\n actions = await newState.actions;\n }\n catch (e) {\n (0,_base_common_errors_js__WEBPACK_IMPORTED_MODULE_2__.onUnexpectedError)(e);\n return;\n }\n if (this._disposed) {\n return;\n }\n (_b = this._lightBulbWidget.value) === null || _b === void 0 ? void 0 : _b.update(actions, newState.trigger, newState.position);\n if (newState.trigger.type === 1 /* CodeActionTriggerType.Invoke */) {\n if ((_c = newState.trigger.filter) === null || _c === void 0 ? void 0 : _c.include) { // Triggered for specific scope\n // Check to see if we want to auto apply.\n const validActionToApply = this.tryGetValidActionToApply(newState.trigger, actions);\n if (validActionToApply) {\n try {\n (_d = this._lightBulbWidget.value) === null || _d === void 0 ? void 0 : _d.hide();\n await this._applyCodeAction(validActionToApply, false, false, _codeAction_js__WEBPACK_IMPORTED_MODULE_8__.ApplyCodeActionReason.FromCodeActions);\n }\n finally {\n actions.dispose();\n }\n return;\n }\n // Check to see if there is an action that we would have applied were it not invalid\n if (newState.trigger.context) {\n const invalidAction = this.getInvalidActionThatWouldHaveBeenApplied(newState.trigger, actions);\n if (invalidAction && invalidAction.action.disabled) {\n (_e = _message_browser_messageController_js__WEBPACK_IMPORTED_MODULE_12__.MessageController.get(this._editor)) === null || _e === void 0 ? void 0 : _e.showMessage(invalidAction.action.disabled, newState.trigger.context.position);\n actions.dispose();\n return;\n }\n }\n }\n const includeDisabledActions = !!((_f = newState.trigger.filter) === null || _f === void 0 ? void 0 : _f.include);\n if (newState.trigger.context) {\n if (!actions.allActions.length || !includeDisabledActions && !actions.validActions.length) {\n (_g = _message_browser_messageController_js__WEBPACK_IMPORTED_MODULE_12__.MessageController.get(this._editor)) === null || _g === void 0 ? void 0 : _g.showMessage(newState.trigger.context.notAvailableMessage, newState.trigger.context.position);\n this._activeCodeActions.value = actions;\n actions.dispose();\n return;\n }\n }\n this._activeCodeActions.value = actions;\n this.showCodeActionList(actions, this.toCoords(newState.position), { includeDisabledActions, fromLightbulb: false });\n }\n else {\n // auto magically triggered\n if (this._actionWidgetService.isVisible) {\n // TODO: Figure out if we should update the showing menu?\n actions.dispose();\n }\n else {\n this._activeCodeActions.value = actions;\n }\n }\n }\n getInvalidActionThatWouldHaveBeenApplied(trigger, actions) {\n if (!actions.allActions.length) {\n return undefined;\n }\n if ((trigger.autoApply === \"first\" /* CodeActionAutoApply.First */ && actions.validActions.length === 0)\n || (trigger.autoApply === \"ifSingle\" /* CodeActionAutoApply.IfSingle */ && actions.allActions.length === 1)) {\n return actions.allActions.find(({ action }) => action.disabled);\n }\n return undefined;\n }\n tryGetValidActionToApply(trigger, actions) {\n if (!actions.validActions.length) {\n return undefined;\n }\n if ((trigger.autoApply === \"first\" /* CodeActionAutoApply.First */ && actions.validActions.length > 0)\n || (trigger.autoApply === \"ifSingle\" /* CodeActionAutoApply.IfSingle */ && actions.validActions.length === 1)) {\n return actions.validActions[0];\n }\n return undefined;\n }\n async showCodeActionList(actions, at, options) {\n const currentDecorations = this._editor.createDecorationsCollection();\n const editorDom = this._editor.getDomNode();\n if (!editorDom) {\n return;\n }\n const actionsToShow = options.includeDisabledActions && (this._showDisabled || actions.validActions.length === 0) ? actions.allActions : actions.validActions;\n if (!actionsToShow.length) {\n return;\n }\n const anchor = _common_core_position_js__WEBPACK_IMPORTED_MODULE_5__.Position.isIPosition(at) ? this.toCoords(at) : at;\n const delegate = {\n onSelect: async (action, preview) => {\n this._applyCodeAction(action, /* retrigger */ true, !!preview, _codeAction_js__WEBPACK_IMPORTED_MODULE_8__.ApplyCodeActionReason.FromCodeActions);\n this._actionWidgetService.hide();\n currentDecorations.clear();\n },\n onHide: () => {\n var _a;\n (_a = this._editor) === null || _a === void 0 ? void 0 : _a.focus();\n currentDecorations.clear();\n },\n onHover: async (action, token) => {\n var _a;\n if (token.isCancellationRequested) {\n return;\n }\n return { canPreview: !!((_a = action.action.edit) === null || _a === void 0 ? void 0 : _a.edits.length) };\n },\n onFocus: (action) => {\n var _a, _b;\n if (action && action.action) {\n const ranges = action.action.ranges;\n const diagnostics = action.action.diagnostics;\n currentDecorations.clear();\n if (ranges && ranges.length > 0) {\n // Handles case for `fix all` where there are multiple diagnostics.\n const decorations = (diagnostics && (diagnostics === null || diagnostics === void 0 ? void 0 : diagnostics.length) > 1)\n ? diagnostics.map(diagnostic => ({ range: diagnostic, options: CodeActionController_1.DECORATION }))\n : ranges.map(range => ({ range, options: CodeActionController_1.DECORATION }));\n currentDecorations.set(decorations);\n }\n else if (diagnostics && diagnostics.length > 0) {\n const decorations = diagnostics.map(diagnostic => ({ range: diagnostic, options: CodeActionController_1.DECORATION }));\n currentDecorations.set(decorations);\n const diagnostic = diagnostics[0];\n if (diagnostic.startLineNumber && diagnostic.startColumn) {\n const selectionText = (_b = (_a = this._editor.getModel()) === null || _a === void 0 ? void 0 : _a.getWordAtPosition({ lineNumber: diagnostic.startLineNumber, column: diagnostic.startColumn })) === null || _b === void 0 ? void 0 : _b.word;\n _base_browser_ui_aria_aria_js__WEBPACK_IMPORTED_MODULE_1__.status((0,_nls_js__WEBPACK_IMPORTED_MODULE_13__.localize)('editingNewSelection', \"Context: {0} at line {1} and column {2}.\", selectionText, diagnostic.startLineNumber, diagnostic.startColumn));\n }\n }\n }\n else {\n currentDecorations.clear();\n }\n }\n };\n this._actionWidgetService.show('codeActionWidget', true, (0,_codeActionMenu_js__WEBPACK_IMPORTED_MODULE_10__.toMenuItems)(actionsToShow, this._shouldShowHeaders(), this._resolver.getResolver()), delegate, anchor, editorDom, this._getActionBarActions(actions, at, options));\n }\n toCoords(position) {\n if (!this._editor.hasModel()) {\n return { x: 0, y: 0 };\n }\n this._editor.revealPosition(position, 1 /* ScrollType.Immediate */);\n this._editor.render();\n // Translate to absolute editor position\n const cursorCoords = this._editor.getScrolledVisiblePosition(position);\n const editorCoords = (0,_base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.getDomNodePagePosition)(this._editor.getDomNode());\n const x = editorCoords.left + cursorCoords.left;\n const y = editorCoords.top + cursorCoords.top + cursorCoords.height;\n return { x, y };\n }\n _shouldShowHeaders() {\n var _a;\n const model = (_a = this._editor) === null || _a === void 0 ? void 0 : _a.getModel();\n return this._configurationService.getValue('editor.codeActionWidget.showHeaders', { resource: model === null || model === void 0 ? void 0 : model.uri });\n }\n _getActionBarActions(actions, at, options) {\n if (options.fromLightbulb) {\n return [];\n }\n const resultActions = actions.documentation.map((command) => {\n var _a;\n return ({\n id: command.id,\n label: command.title,\n tooltip: (_a = command.tooltip) !== null && _a !== void 0 ? _a : '',\n class: undefined,\n enabled: true,\n run: () => { var _a; return this._commandService.executeCommand(command.id, ...((_a = command.arguments) !== null && _a !== void 0 ? _a : [])); },\n });\n });\n if (options.includeDisabledActions && actions.validActions.length > 0 && actions.allActions.length !== actions.validActions.length) {\n resultActions.push(this._showDisabled ? {\n id: 'hideMoreActions',\n label: (0,_nls_js__WEBPACK_IMPORTED_MODULE_13__.localize)('hideMoreActions', 'Hide Disabled'),\n enabled: true,\n tooltip: '',\n class: undefined,\n run: () => {\n this._showDisabled = false;\n return this.showCodeActionList(actions, at, options);\n }\n } : {\n id: 'showMoreActions',\n label: (0,_nls_js__WEBPACK_IMPORTED_MODULE_13__.localize)('showMoreActions', 'Show Disabled'),\n enabled: true,\n tooltip: '',\n class: undefined,\n run: () => {\n this._showDisabled = true;\n return this.showCodeActionList(actions, at, options);\n }\n });\n }\n return resultActions;\n }\n};\nCodeActionController.ID = 'editor.contrib.codeActionController';\nCodeActionController.DECORATION = _common_model_textModel_js__WEBPACK_IMPORTED_MODULE_6__.ModelDecorationOptions.register({\n description: 'quickfix-highlight',\n className: DECORATION_CLASS_NAME\n});\nCodeActionController = CodeActionController_1 = __decorate([\n __param(1, _platform_markers_common_markers_js__WEBPACK_IMPORTED_MODULE_19__.IMarkerService),\n __param(2, _platform_contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_17__.IContextKeyService),\n __param(3, _platform_instantiation_common_instantiation_js__WEBPACK_IMPORTED_MODULE_18__.IInstantiationService),\n __param(4, _common_services_languageFeatures_js__WEBPACK_IMPORTED_MODULE_7__.ILanguageFeaturesService),\n __param(5, _platform_progress_common_progress_js__WEBPACK_IMPORTED_MODULE_20__.IEditorProgressService),\n __param(6, _platform_commands_common_commands_js__WEBPACK_IMPORTED_MODULE_15__.ICommandService),\n __param(7, _platform_configuration_common_configuration_js__WEBPACK_IMPORTED_MODULE_16__.IConfigurationService),\n __param(8, _platform_actionWidget_browser_actionWidget_js__WEBPACK_IMPORTED_MODULE_14__.IActionWidgetService),\n __param(9, _platform_instantiation_common_instantiation_js__WEBPACK_IMPORTED_MODULE_18__.IInstantiationService)\n], CodeActionController);\n\n(0,_platform_theme_common_themeService_js__WEBPACK_IMPORTED_MODULE_23__.registerThemingParticipant)((theme, collector) => {\n const addBackgroundColorRule = (selector, color) => {\n if (color) {\n collector.addRule(`.monaco-editor ${selector} { background-color: ${color}; }`);\n }\n };\n addBackgroundColorRule('.quickfix-edit-highlight', theme.getColor(_platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_21__.editorFindMatchHighlight));\n const findMatchHighlightBorder = theme.getColor(_platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_21__.editorFindMatchHighlightBorder);\n if (findMatchHighlightBorder) {\n collector.addRule(`.monaco-editor .quickfix-edit-highlight { border: 1px ${(0,_platform_theme_common_theme_js__WEBPACK_IMPORTED_MODULE_22__.isHighContrast)(theme.type) ? 'dotted' : 'solid'} ${findMatchHighlightBorder}; box-sizing: border-box; }`);\n }\n});\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/contrib/codeAction/browser/codeActionController.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/contrib/codeAction/browser/codeActionKeybindingResolver.js":
/*!*************************************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/contrib/codeAction/browser/codeActionKeybindingResolver.js ***!
\*************************************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ CodeActionKeybindingResolver: () => (/* binding */ CodeActionKeybindingResolver)\n/* harmony export */ });\n/* harmony import */ var _base_common_lazy_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../../base/common/lazy.js */ \"./node_modules/monaco-editor/esm/vs/base/common/lazy.js\");\n/* harmony import */ var _codeAction_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./codeAction.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/codeAction/browser/codeAction.js\");\n/* harmony import */ var _common_types_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../common/types.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/codeAction/common/types.js\");\n/* harmony import */ var _platform_keybinding_common_keybinding_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../../../platform/keybinding/common/keybinding.js */ \"./node_modules/monaco-editor/esm/vs/platform/keybinding/common/keybinding.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\nvar __decorate = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\n return c > 3 && r && Object.defineProperty(target, key, r), r;\n};\nvar __param = (undefined && undefined.__param) || function (paramIndex, decorator) {\n return function (target, key) { decorator(target, key, paramIndex); }\n};\nvar CodeActionKeybindingResolver_1;\n\n\n\n\nlet CodeActionKeybindingResolver = CodeActionKeybindingResolver_1 = class CodeActionKeybindingResolver {\n constructor(keybindingService) {\n this.keybindingService = keybindingService;\n }\n getResolver() {\n // Lazy since we may not actually ever read the value\n const allCodeActionBindings = new _base_common_lazy_js__WEBPACK_IMPORTED_MODULE_0__.Lazy(() => this.keybindingService.getKeybindings()\n .filter(item => CodeActionKeybindingResolver_1.codeActionCommands.indexOf(item.command) >= 0)\n .filter(item => item.resolvedKeybinding)\n .map((item) => {\n // Special case these commands since they come built-in with VS Code and don't use 'commandArgs'\n let commandArgs = item.commandArgs;\n if (item.command === _codeAction_js__WEBPACK_IMPORTED_MODULE_1__.organizeImportsCommandId) {\n commandArgs = { kind: _common_types_js__WEBPACK_IMPORTED_MODULE_2__.CodeActionKind.SourceOrganizeImports.value };\n }\n else if (item.command === _codeAction_js__WEBPACK_IMPORTED_MODULE_1__.fixAllCommandId) {\n commandArgs = { kind: _common_types_js__WEBPACK_IMPORTED_MODULE_2__.CodeActionKind.SourceFixAll.value };\n }\n return {\n resolvedKeybinding: item.resolvedKeybinding,\n ..._common_types_js__WEBPACK_IMPORTED_MODULE_2__.CodeActionCommandArgs.fromUser(commandArgs, {\n kind: _common_types_js__WEBPACK_IMPORTED_MODULE_2__.CodeActionKind.None,\n apply: \"never\" /* CodeActionAutoApply.Never */\n })\n };\n }));\n return (action) => {\n if (action.kind) {\n const binding = this.bestKeybindingForCodeAction(action, allCodeActionBindings.value);\n return binding === null || binding === void 0 ? void 0 : binding.resolvedKeybinding;\n }\n return undefined;\n };\n }\n bestKeybindingForCodeAction(action, candidates) {\n if (!action.kind) {\n return undefined;\n }\n const kind = new _common_types_js__WEBPACK_IMPORTED_MODULE_2__.CodeActionKind(action.kind);\n return candidates\n .filter(candidate => candidate.kind.contains(kind))\n .filter(candidate => {\n if (candidate.preferred) {\n // If the candidate keybinding only applies to preferred actions, the this action must also be preferred\n return action.isPreferred;\n }\n return true;\n })\n .reduceRight((currentBest, candidate) => {\n if (!currentBest) {\n return candidate;\n }\n // Select the more specific binding\n return currentBest.kind.contains(candidate.kind) ? candidate : currentBest;\n }, undefined);\n }\n};\nCodeActionKeybindingResolver.codeActionCommands = [\n _codeAction_js__WEBPACK_IMPORTED_MODULE_1__.refactorCommandId,\n _codeAction_js__WEBPACK_IMPORTED_MODULE_1__.codeActionCommandId,\n _codeAction_js__WEBPACK_IMPORTED_MODULE_1__.sourceActionCommandId,\n _codeAction_js__WEBPACK_IMPORTED_MODULE_1__.organizeImportsCommandId,\n _codeAction_js__WEBPACK_IMPORTED_MODULE_1__.fixAllCommandId\n];\nCodeActionKeybindingResolver = CodeActionKeybindingResolver_1 = __decorate([\n __param(0, _platform_keybinding_common_keybinding_js__WEBPACK_IMPORTED_MODULE_3__.IKeybindingService)\n], CodeActionKeybindingResolver);\n\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/contrib/codeAction/browser/codeActionKeybindingResolver.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/contrib/codeAction/browser/codeActionMenu.js":
/*!***********************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/contrib/codeAction/browser/codeActionMenu.js ***!
\***********************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ toMenuItems: () => (/* binding */ toMenuItems)\n/* harmony export */ });\n/* harmony import */ var _base_browser_ui_codicons_codiconStyles_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../../base/browser/ui/codicons/codiconStyles.js */ \"./node_modules/monaco-editor/esm/vs/base/browser/ui/codicons/codiconStyles.js\");\n/* harmony import */ var _base_common_codicons_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../base/common/codicons.js */ \"./node_modules/monaco-editor/esm/vs/base/common/codicons.js\");\n/* harmony import */ var _common_types_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../common/types.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/codeAction/common/types.js\");\n/* harmony import */ var _symbolIcons_browser_symbolIcons_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../symbolIcons/browser/symbolIcons.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/symbolIcons/browser/symbolIcons.js\");\n/* harmony import */ var _nls_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../../../nls.js */ \"./node_modules/monaco-editor/esm/vs/nls.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n // The codicon symbol styles are defined here and must be loaded\n\n\n // The codicon symbol colors are defined here and must be loaded to get colors\n\nconst uncategorizedCodeActionGroup = Object.freeze({ kind: _common_types_js__WEBPACK_IMPORTED_MODULE_2__.CodeActionKind.Empty, title: (0,_nls_js__WEBPACK_IMPORTED_MODULE_4__.localize)('codeAction.widget.id.more', 'More Actions...') });\nconst codeActionGroups = Object.freeze([\n { kind: _common_types_js__WEBPACK_IMPORTED_MODULE_2__.CodeActionKind.QuickFix, title: (0,_nls_js__WEBPACK_IMPORTED_MODULE_4__.localize)('codeAction.widget.id.quickfix', 'Quick Fix') },\n { kind: _common_types_js__WEBPACK_IMPORTED_MODULE_2__.CodeActionKind.RefactorExtract, title: (0,_nls_js__WEBPACK_IMPORTED_MODULE_4__.localize)('codeAction.widget.id.extract', 'Extract'), icon: _base_common_codicons_js__WEBPACK_IMPORTED_MODULE_1__.Codicon.wrench },\n { kind: _common_types_js__WEBPACK_IMPORTED_MODULE_2__.CodeActionKind.RefactorInline, title: (0,_nls_js__WEBPACK_IMPORTED_MODULE_4__.localize)('codeAction.widget.id.inline', 'Inline'), icon: _base_common_codicons_js__WEBPACK_IMPORTED_MODULE_1__.Codicon.wrench },\n { kind: _common_types_js__WEBPACK_IMPORTED_MODULE_2__.CodeActionKind.RefactorRewrite, title: (0,_nls_js__WEBPACK_IMPORTED_MODULE_4__.localize)('codeAction.widget.id.convert', 'Rewrite'), icon: _base_common_codicons_js__WEBPACK_IMPORTED_MODULE_1__.Codicon.wrench },\n { kind: _common_types_js__WEBPACK_IMPORTED_MODULE_2__.CodeActionKind.RefactorMove, title: (0,_nls_js__WEBPACK_IMPORTED_MODULE_4__.localize)('codeAction.widget.id.move', 'Move'), icon: _base_common_codicons_js__WEBPACK_IMPORTED_MODULE_1__.Codicon.wrench },\n { kind: _common_types_js__WEBPACK_IMPORTED_MODULE_2__.CodeActionKind.SurroundWith, title: (0,_nls_js__WEBPACK_IMPORTED_MODULE_4__.localize)('codeAction.widget.id.surround', 'Surround With'), icon: _base_common_codicons_js__WEBPACK_IMPORTED_MODULE_1__.Codicon.surroundWith },\n { kind: _common_types_js__WEBPACK_IMPORTED_MODULE_2__.CodeActionKind.Source, title: (0,_nls_js__WEBPACK_IMPORTED_MODULE_4__.localize)('codeAction.widget.id.source', 'Source Action'), icon: _base_common_codicons_js__WEBPACK_IMPORTED_MODULE_1__.Codicon.symbolFile },\n uncategorizedCodeActionGroup,\n]);\nfunction toMenuItems(inputCodeActions, showHeaders, keybindingResolver) {\n if (!showHeaders) {\n return inputCodeActions.map((action) => {\n var _a;\n return {\n kind: \"action\" /* ActionListItemKind.Action */,\n item: action,\n group: uncategorizedCodeActionGroup,\n disabled: !!action.action.disabled,\n label: action.action.disabled || action.action.title,\n canPreview: !!((_a = action.action.edit) === null || _a === void 0 ? void 0 : _a.edits.length),\n };\n });\n }\n // Group code actions\n const menuEntries = codeActionGroups.map(group => ({ group, actions: [] }));\n for (const action of inputCodeActions) {\n const kind = action.action.kind ? new _common_types_js__WEBPACK_IMPORTED_MODULE_2__.CodeActionKind(action.action.kind) : _common_types_js__WEBPACK_IMPORTED_MODULE_2__.CodeActionKind.None;\n for (const menuEntry of menuEntries) {\n if (menuEntry.group.kind.contains(kind)) {\n menuEntry.actions.push(action);\n break;\n }\n }\n }\n const allMenuItems = [];\n for (const menuEntry of menuEntries) {\n if (menuEntry.actions.length) {\n allMenuItems.push({ kind: \"header\" /* ActionListItemKind.Header */, group: menuEntry.group });\n for (const action of menuEntry.actions) {\n const group = menuEntry.group;\n allMenuItems.push({\n kind: \"action\" /* ActionListItemKind.Action */,\n item: action,\n group: action.action.isAI ? { title: group.title, kind: group.kind, icon: _base_common_codicons_js__WEBPACK_IMPORTED_MODULE_1__.Codicon.sparkle } : group,\n label: action.action.title,\n disabled: !!action.action.disabled,\n keybinding: keybindingResolver(action.action),\n });\n }\n }\n }\n return allMenuItems;\n}\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/contrib/codeAction/browser/codeActionMenu.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/contrib/codeAction/browser/codeActionModel.js":
/*!************************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/contrib/codeAction/browser/codeActionModel.js ***!
\************************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ APPLY_FIX_ALL_COMMAND_ID: () => (/* binding */ APPLY_FIX_ALL_COMMAND_ID),\n/* harmony export */ CodeActionModel: () => (/* binding */ CodeActionModel),\n/* harmony export */ CodeActionsState: () => (/* binding */ CodeActionsState),\n/* harmony export */ SUPPORTED_CODE_ACTIONS: () => (/* binding */ SUPPORTED_CODE_ACTIONS)\n/* harmony export */ });\n/* harmony import */ var _base_common_async_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../../base/common/async.js */ \"./node_modules/monaco-editor/esm/vs/base/common/async.js\");\n/* harmony import */ var _base_common_errors_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../base/common/errors.js */ \"./node_modules/monaco-editor/esm/vs/base/common/errors.js\");\n/* harmony import */ var _base_common_event_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../../base/common/event.js */ \"./node_modules/monaco-editor/esm/vs/base/common/event.js\");\n/* harmony import */ var _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../../../base/common/lifecycle.js */ \"./node_modules/monaco-editor/esm/vs/base/common/lifecycle.js\");\n/* harmony import */ var _base_common_resources_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../../../base/common/resources.js */ \"./node_modules/monaco-editor/esm/vs/base/common/resources.js\");\n/* harmony import */ var _common_config_editorOptions_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../../../common/config/editorOptions.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/config/editorOptions.js\");\n/* harmony import */ var _common_core_position_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../../../common/core/position.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/core/position.js\");\n/* harmony import */ var _common_core_selection_js__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ../../../common/core/selection.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/core/selection.js\");\n/* harmony import */ var _platform_contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ../../../../platform/contextkey/common/contextkey.js */ \"./node_modules/monaco-editor/esm/vs/platform/contextkey/common/contextkey.js\");\n/* harmony import */ var _platform_progress_common_progress_js__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ../../../../platform/progress/common/progress.js */ \"./node_modules/monaco-editor/esm/vs/platform/progress/common/progress.js\");\n/* harmony import */ var _common_types_js__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! ../common/types.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/codeAction/common/types.js\");\n/* harmony import */ var _codeAction_js__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(/*! ./codeAction.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/codeAction/browser/codeAction.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n\n\n\n\n\n\n\n\n\n\n\nconst SUPPORTED_CODE_ACTIONS = new _platform_contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_8__.RawContextKey('supportedCodeAction', '');\nconst APPLY_FIX_ALL_COMMAND_ID = '_typescript.applyFixAllCodeAction';\nclass CodeActionOracle extends _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_3__.Disposable {\n constructor(_editor, _markerService, _signalChange, _delay = 250) {\n super();\n this._editor = _editor;\n this._markerService = _markerService;\n this._signalChange = _signalChange;\n this._delay = _delay;\n this._autoTriggerTimer = this._register(new _base_common_async_js__WEBPACK_IMPORTED_MODULE_0__.TimeoutTimer());\n this._register(this._markerService.onMarkerChanged(e => this._onMarkerChanges(e)));\n this._register(this._editor.onDidChangeCursorPosition(() => this._tryAutoTrigger()));\n }\n trigger(trigger) {\n const selection = this._getRangeOfSelectionUnlessWhitespaceEnclosed(trigger);\n this._signalChange(selection ? { trigger, selection } : undefined);\n }\n _onMarkerChanges(resources) {\n const model = this._editor.getModel();\n if (model && resources.some(resource => (0,_base_common_resources_js__WEBPACK_IMPORTED_MODULE_4__.isEqual)(resource, model.uri))) {\n this._tryAutoTrigger();\n }\n }\n _tryAutoTrigger() {\n this._autoTriggerTimer.cancelAndSet(() => {\n this.trigger({ type: 2 /* CodeActionTriggerType.Auto */, triggerAction: _common_types_js__WEBPACK_IMPORTED_MODULE_10__.CodeActionTriggerSource.Default });\n }, this._delay);\n }\n _getRangeOfSelectionUnlessWhitespaceEnclosed(trigger) {\n if (!this._editor.hasModel()) {\n return undefined;\n }\n const selection = this._editor.getSelection();\n if (trigger.type === 1 /* CodeActionTriggerType.Invoke */) {\n return selection;\n }\n const enabled = this._editor.getOption(65 /* EditorOption.lightbulb */).enabled;\n if (enabled === _common_config_editorOptions_js__WEBPACK_IMPORTED_MODULE_5__.ShowLightbulbIconMode.Off) {\n return undefined;\n }\n else if (enabled === _common_config_editorOptions_js__WEBPACK_IMPORTED_MODULE_5__.ShowLightbulbIconMode.On) {\n return selection;\n }\n else if (enabled === _common_config_editorOptions_js__WEBPACK_IMPORTED_MODULE_5__.ShowLightbulbIconMode.OnCode) {\n const isSelectionEmpty = selection.isEmpty();\n if (!isSelectionEmpty) {\n return selection;\n }\n const model = this._editor.getModel();\n const { lineNumber, column } = selection.getPosition();\n const line = model.getLineContent(lineNumber);\n if (line.length === 0) {\n // empty line\n return undefined;\n }\n else if (column === 1) {\n // look only right\n if (/\\s/.test(line[0])) {\n return undefined;\n }\n }\n else if (column === model.getLineMaxColumn(lineNumber)) {\n // look only left\n if (/\\s/.test(line[line.length - 1])) {\n return undefined;\n }\n }\n else {\n // look left and right\n if (/\\s/.test(line[column - 2]) && /\\s/.test(line[column - 1])) {\n return undefined;\n }\n }\n }\n return selection;\n }\n}\nvar CodeActionsState;\n(function (CodeActionsState) {\n CodeActionsState.Empty = { type: 0 /* Type.Empty */ };\n class Triggered {\n constructor(trigger, position, _cancellablePromise) {\n this.trigger = trigger;\n this.position = position;\n this._cancellablePromise = _cancellablePromise;\n this.type = 1 /* Type.Triggered */;\n this.actions = _cancellablePromise.catch((e) => {\n if ((0,_base_common_errors_js__WEBPACK_IMPORTED_MODULE_1__.isCancellationError)(e)) {\n return emptyCodeActionSet;\n }\n throw e;\n });\n }\n cancel() {\n this._cancellablePromise.cancel();\n }\n }\n CodeActionsState.Triggered = Triggered;\n})(CodeActionsState || (CodeActionsState = {}));\nconst emptyCodeActionSet = Object.freeze({\n allActions: [],\n validActions: [],\n dispose: () => { },\n documentation: [],\n hasAutoFix: false,\n hasAIFix: false,\n allAIFixes: false,\n});\nclass CodeActionModel extends _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_3__.Disposable {\n constructor(_editor, _registry, _markerService, contextKeyService, _progressService, _configurationService) {\n super();\n this._editor = _editor;\n this._registry = _registry;\n this._markerService = _markerService;\n this._progressService = _progressService;\n this._configurationService = _configurationService;\n this._codeActionOracle = this._register(new _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_3__.MutableDisposable());\n this._state = CodeActionsState.Empty;\n this._onDidChangeState = this._register(new _base_common_event_js__WEBPACK_IMPORTED_MODULE_2__.Emitter());\n this.onDidChangeState = this._onDidChangeState.event;\n this._disposed = false;\n this._supportedCodeActions = SUPPORTED_CODE_ACTIONS.bindTo(contextKeyService);\n this._register(this._editor.onDidChangeModel(() => this._update()));\n this._register(this._editor.onDidChangeModelLanguage(() => this._update()));\n this._register(this._registry.onDidChange(() => this._update()));\n this._register(this._editor.onDidChangeConfiguration((e) => {\n if (e.hasChanged(65 /* EditorOption.lightbulb */)) {\n this._update();\n }\n }));\n this._update();\n }\n dispose() {\n if (this._disposed) {\n return;\n }\n this._disposed = true;\n super.dispose();\n this.setState(CodeActionsState.Empty, true);\n }\n _settingEnabledNearbyQuickfixes() {\n var _a;\n const model = (_a = this._editor) === null || _a === void 0 ? void 0 : _a.getModel();\n return this._configurationService ? this._configurationService.getValue('editor.codeActionWidget.includeNearbyQuickFixes', { resource: model === null || model === void 0 ? void 0 : model.uri }) : false;\n }\n _update() {\n if (this._disposed) {\n return;\n }\n this._codeActionOracle.value = undefined;\n this.setState(CodeActionsState.Empty);\n const model = this._editor.getModel();\n if (model\n && this._registry.has(model)\n && !this._editor.getOption(91 /* EditorOption.readOnly */)) {\n const supportedActions = this._registry.all(model).flatMap(provider => { var _a; return (_a = provider.providedCodeActionKinds) !== null && _a !== void 0 ? _a : []; });\n this._supportedCodeActions.set(supportedActions.join(' '));\n this._codeActionOracle.value = new CodeActionOracle(this._editor, this._markerService, trigger => {\n var _a;\n if (!trigger) {\n this.setState(CodeActionsState.Empty);\n return;\n }\n const startPosition = trigger.selection.getStartPosition();\n const actions = (0,_base_common_async_js__WEBPACK_IMPORTED_MODULE_0__.createCancelablePromise)(async (token) => {\n var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k;\n if (this._settingEnabledNearbyQuickfixes() && trigger.trigger.type === 1 /* CodeActionTriggerType.Invoke */ && (trigger.trigger.triggerAction === _common_types_js__WEBPACK_IMPORTED_MODULE_10__.CodeActionTriggerSource.QuickFix || ((_b = (_a = trigger.trigger.filter) === null || _a === void 0 ? void 0 : _a.include) === null || _b === void 0 ? void 0 : _b.contains(_common_types_js__WEBPACK_IMPORTED_MODULE_10__.CodeActionKind.QuickFix)))) {\n const codeActionSet = await (0,_codeAction_js__WEBPACK_IMPORTED_MODULE_11__.getCodeActions)(this._registry, model, trigger.selection, trigger.trigger, _platform_progress_common_progress_js__WEBPACK_IMPORTED_MODULE_9__.Progress.None, token);\n const allCodeActions = [...codeActionSet.allActions];\n if (token.isCancellationRequested) {\n return emptyCodeActionSet;\n }\n // Search for quickfixes in the curret code action set.\n const foundQuickfix = (_c = codeActionSet.validActions) === null || _c === void 0 ? void 0 : _c.some(action => action.action.kind ? _common_types_js__WEBPACK_IMPORTED_MODULE_10__.CodeActionKind.QuickFix.contains(new _common_types_js__WEBPACK_IMPORTED_MODULE_10__.CodeActionKind(action.action.kind)) : false);\n const allMarkers = this._markerService.read({ resource: model.uri });\n if (foundQuickfix) {\n for (const action of codeActionSet.validActions) {\n if ((_e = (_d = action.action.command) === null || _d === void 0 ? void 0 : _d.arguments) === null || _e === void 0 ? void 0 : _e.some(arg => typeof arg === 'string' && arg.includes(APPLY_FIX_ALL_COMMAND_ID))) {\n action.action.diagnostics = [...allMarkers.filter(marker => marker.relatedInformation)];\n }\n }\n return { validActions: codeActionSet.validActions, allActions: allCodeActions, documentation: codeActionSet.documentation, hasAutoFix: codeActionSet.hasAutoFix, hasAIFix: codeActionSet.hasAIFix, allAIFixes: codeActionSet.allAIFixes, dispose: () => { codeActionSet.dispose(); } };\n }\n else if (!foundQuickfix) {\n // If markers exists, and there are no quickfixes found or length is zero, check for quickfixes on that line.\n if (allMarkers.length > 0) {\n const currPosition = trigger.selection.getPosition();\n let trackedPosition = currPosition;\n let distance = Number.MAX_VALUE;\n const currentActions = [...codeActionSet.validActions];\n for (const marker of allMarkers) {\n const col = marker.endColumn;\n const row = marker.endLineNumber;\n const startRow = marker.startLineNumber;\n // Found quickfix on the same line and check relative distance to other markers\n if ((row === currPosition.lineNumber || startRow === currPosition.lineNumber)) {\n trackedPosition = new _common_core_position_js__WEBPACK_IMPORTED_MODULE_6__.Position(row, col);\n const newCodeActionTrigger = {\n type: trigger.trigger.type,\n triggerAction: trigger.trigger.triggerAction,\n filter: { include: ((_f = trigger.trigger.filter) === null || _f === void 0 ? void 0 : _f.include) ? (_g = trigger.trigger.filter) === null || _g === void 0 ? void 0 : _g.include : _common_types_js__WEBPACK_IMPORTED_MODULE_10__.CodeActionKind.QuickFix },\n autoApply: trigger.trigger.autoApply,\n context: { notAvailableMessage: ((_h = trigger.trigger.context) === null || _h === void 0 ? void 0 : _h.notAvailableMessage) || '', position: trackedPosition }\n };\n const selectionAsPosition = new _common_core_selection_js__WEBPACK_IMPORTED_MODULE_7__.Selection(trackedPosition.lineNumber, trackedPosition.column, trackedPosition.lineNumber, trackedPosition.column);\n const actionsAtMarker = await (0,_codeAction_js__WEBPACK_IMPORTED_MODULE_11__.getCodeActions)(this._registry, model, selectionAsPosition, newCodeActionTrigger, _platform_progress_common_progress_js__WEBPACK_IMPORTED_MODULE_9__.Progress.None, token);\n if (actionsAtMarker.validActions.length !== 0) {\n for (const action of actionsAtMarker.validActions) {\n if ((_k = (_j = action.action.command) === null || _j === void 0 ? void 0 : _j.arguments) === null || _k === void 0 ? void 0 : _k.some(arg => typeof arg === 'string' && arg.includes(APPLY_FIX_ALL_COMMAND_ID))) {\n action.action.diagnostics = [...allMarkers.filter(marker => marker.relatedInformation)];\n }\n }\n if (codeActionSet.allActions.length === 0) {\n allCodeActions.push(...actionsAtMarker.allActions);\n }\n // Already filtered through to only get quickfixes, so no need to filter again.\n if (Math.abs(currPosition.column - col) < distance) {\n currentActions.unshift(...actionsAtMarker.validActions);\n }\n else {\n currentActions.push(...actionsAtMarker.validActions);\n }\n }\n distance = Math.abs(currPosition.column - col);\n }\n }\n const filteredActions = currentActions.filter((action, index, self) => self.findIndex((a) => a.action.title === action.action.title) === index);\n filteredActions.sort((a, b) => {\n if (a.action.isPreferred && !b.action.isPreferred) {\n return -1;\n }\n else if (!a.action.isPreferred && b.action.isPreferred) {\n return 1;\n }\n else if (a.action.isAI && !b.action.isAI) {\n return 1;\n }\n else if (!a.action.isAI && b.action.isAI) {\n return -1;\n }\n else {\n return 0;\n }\n });\n // Only retriggers if actually found quickfix on the same line as cursor\n return { validActions: filteredActions, allActions: allCodeActions, documentation: codeActionSet.documentation, hasAutoFix: codeActionSet.hasAutoFix, hasAIFix: codeActionSet.hasAIFix, allAIFixes: codeActionSet.allAIFixes, dispose: () => { codeActionSet.dispose(); } };\n }\n }\n }\n // temporarilly hiding here as this is enabled/disabled behind a setting.\n return (0,_codeAction_js__WEBPACK_IMPORTED_MODULE_11__.getCodeActions)(this._registry, model, trigger.selection, trigger.trigger, _platform_progress_common_progress_js__WEBPACK_IMPORTED_MODULE_9__.Progress.None, token);\n });\n if (trigger.trigger.type === 1 /* CodeActionTriggerType.Invoke */) {\n (_a = this._progressService) === null || _a === void 0 ? void 0 : _a.showWhile(actions, 250);\n }\n this.setState(new CodeActionsState.Triggered(trigger.trigger, startPosition, actions));\n }, undefined);\n this._codeActionOracle.value.trigger({ type: 2 /* CodeActionTriggerType.Auto */, triggerAction: _common_types_js__WEBPACK_IMPORTED_MODULE_10__.CodeActionTriggerSource.Default });\n }\n else {\n this._supportedCodeActions.reset();\n }\n }\n trigger(trigger) {\n var _a;\n (_a = this._codeActionOracle.value) === null || _a === void 0 ? void 0 : _a.trigger(trigger);\n }\n setState(newState, skipNotify) {\n if (newState === this._state) {\n return;\n }\n // Cancel old request\n if (this._state.type === 1 /* CodeActionsState.Type.Triggered */) {\n this._state.cancel();\n }\n this._state = newState;\n if (!skipNotify && !this._disposed) {\n this._onDidChangeState.fire(newState);\n }\n }\n}\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/contrib/codeAction/browser/codeActionModel.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/contrib/codeAction/browser/lightBulbWidget.js":
/*!************************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/contrib/codeAction/browser/lightBulbWidget.js ***!
\************************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ LightBulbWidget: () => (/* binding */ LightBulbWidget)\n/* harmony export */ });\n/* harmony import */ var _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../../base/browser/dom.js */ \"./node_modules/monaco-editor/esm/vs/base/browser/dom.js\");\n/* harmony import */ var _base_browser_touch_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../base/browser/touch.js */ \"./node_modules/monaco-editor/esm/vs/base/browser/touch.js\");\n/* harmony import */ var _base_common_codicons_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../../base/common/codicons.js */ \"./node_modules/monaco-editor/esm/vs/base/common/codicons.js\");\n/* harmony import */ var _base_common_event_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../../../base/common/event.js */ \"./node_modules/monaco-editor/esm/vs/base/common/event.js\");\n/* harmony import */ var _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../../../base/common/lifecycle.js */ \"./node_modules/monaco-editor/esm/vs/base/common/lifecycle.js\");\n/* harmony import */ var _base_common_themables_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../../../../base/common/themables.js */ \"./node_modules/monaco-editor/esm/vs/base/common/themables.js\");\n/* harmony import */ var _lightBulbWidget_css__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ./lightBulbWidget.css */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/codeAction/browser/lightBulbWidget.css\");\n/* harmony import */ var _common_model_utils_js__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ../../../common/model/utils.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/model/utils.js\");\n/* harmony import */ var _codeAction_js__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ./codeAction.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/codeAction/browser/codeAction.js\");\n/* harmony import */ var _nls_js__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ../../../../nls.js */ \"./node_modules/monaco-editor/esm/vs/nls.js\");\n/* harmony import */ var _platform_commands_common_commands_js__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! ../../../../platform/commands/common/commands.js */ \"./node_modules/monaco-editor/esm/vs/platform/commands/common/commands.js\");\n/* harmony import */ var _platform_keybinding_common_keybinding_js__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(/*! ../../../../platform/keybinding/common/keybinding.js */ \"./node_modules/monaco-editor/esm/vs/platform/keybinding/common/keybinding.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\nvar __decorate = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\n return c > 3 && r && Object.defineProperty(target, key, r), r;\n};\nvar __param = (undefined && undefined.__param) || function (paramIndex, decorator) {\n return function (target, key) { decorator(target, key, paramIndex); }\n};\nvar LightBulbWidget_1;\n\n\n\n\n\n\n\n\n\n\n\n\nvar LightBulbState;\n(function (LightBulbState) {\n LightBulbState.Hidden = { type: 0 /* Type.Hidden */ };\n class Showing {\n constructor(actions, trigger, editorPosition, widgetPosition) {\n this.actions = actions;\n this.trigger = trigger;\n this.editorPosition = editorPosition;\n this.widgetPosition = widgetPosition;\n this.type = 1 /* Type.Showing */;\n }\n }\n LightBulbState.Showing = Showing;\n})(LightBulbState || (LightBulbState = {}));\nlet LightBulbWidget = LightBulbWidget_1 = class LightBulbWidget extends _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_4__.Disposable {\n constructor(_editor, _keybindingService, commandService) {\n super();\n this._editor = _editor;\n this._keybindingService = _keybindingService;\n this._onClick = this._register(new _base_common_event_js__WEBPACK_IMPORTED_MODULE_3__.Emitter());\n this.onClick = this._onClick.event;\n this._state = LightBulbState.Hidden;\n this._iconClasses = [];\n this._domNode = _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.$('div.lightBulbWidget');\n this._register(_base_browser_touch_js__WEBPACK_IMPORTED_MODULE_1__.Gesture.ignoreTarget(this._domNode));\n this._editor.addContentWidget(this);\n this._register(this._editor.onDidChangeModelContent(_ => {\n // cancel when the line in question has been removed\n const editorModel = this._editor.getModel();\n if (this.state.type !== 1 /* LightBulbState.Type.Showing */ || !editorModel || this.state.editorPosition.lineNumber >= editorModel.getLineCount()) {\n this.hide();\n }\n }));\n this._register(_base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.addStandardDisposableGenericMouseDownListener(this._domNode, e => {\n if (this.state.type !== 1 /* LightBulbState.Type.Showing */) {\n return;\n }\n // Make sure that focus / cursor location is not lost when clicking widget icon\n this._editor.focus();\n e.preventDefault();\n // a bit of extra work to make sure the menu\n // doesn't cover the line-text\n const { top, height } = _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.getDomNodePagePosition(this._domNode);\n const lineHeight = this._editor.getOption(67 /* EditorOption.lineHeight */);\n let pad = Math.floor(lineHeight / 3);\n if (this.state.widgetPosition.position !== null && this.state.widgetPosition.position.lineNumber < this.state.editorPosition.lineNumber) {\n pad += lineHeight;\n }\n this._onClick.fire({\n x: e.posx,\n y: top + height + pad,\n actions: this.state.actions,\n trigger: this.state.trigger,\n });\n }));\n this._register(_base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.addDisposableListener(this._domNode, 'mouseenter', (e) => {\n if ((e.buttons & 1) !== 1) {\n return;\n }\n // mouse enters lightbulb while the primary/left button\n // is being pressed -> hide the lightbulb\n this.hide();\n }));\n this._register(_base_common_event_js__WEBPACK_IMPORTED_MODULE_3__.Event.runAndSubscribe(this._keybindingService.onDidUpdateKeybindings, () => {\n var _a, _b, _c, _d;\n this._preferredKbLabel = (_b = (_a = this._keybindingService.lookupKeybinding(_codeAction_js__WEBPACK_IMPORTED_MODULE_8__.autoFixCommandId)) === null || _a === void 0 ? void 0 : _a.getLabel()) !== null && _b !== void 0 ? _b : undefined;\n this._quickFixKbLabel = (_d = (_c = this._keybindingService.lookupKeybinding(_codeAction_js__WEBPACK_IMPORTED_MODULE_8__.quickFixCommandId)) === null || _c === void 0 ? void 0 : _c.getLabel()) !== null && _d !== void 0 ? _d : undefined;\n this._updateLightBulbTitleAndIcon();\n }));\n }\n dispose() {\n super.dispose();\n this._editor.removeContentWidget(this);\n }\n getId() {\n return 'LightBulbWidget';\n }\n getDomNode() {\n return this._domNode;\n }\n getPosition() {\n return this._state.type === 1 /* LightBulbState.Type.Showing */ ? this._state.widgetPosition : null;\n }\n update(actions, trigger, atPosition) {\n if (actions.validActions.length <= 0) {\n return this.hide();\n }\n const options = this._editor.getOptions();\n if (!options.get(65 /* EditorOption.lightbulb */).enabled) {\n return this.hide();\n }\n const model = this._editor.getModel();\n if (!model) {\n return this.hide();\n }\n const { lineNumber, column } = model.validatePosition(atPosition);\n const tabSize = model.getOptions().tabSize;\n const fontInfo = this._editor.getOptions().get(50 /* EditorOption.fontInfo */);\n const lineContent = model.getLineContent(lineNumber);\n const indent = (0,_common_model_utils_js__WEBPACK_IMPORTED_MODULE_7__.computeIndentLevel)(lineContent, tabSize);\n const lineHasSpace = fontInfo.spaceWidth * indent > 22;\n const isFolded = (lineNumber) => {\n return lineNumber > 2 && this._editor.getTopForLineNumber(lineNumber) === this._editor.getTopForLineNumber(lineNumber - 1);\n };\n let effectiveLineNumber = lineNumber;\n let effectiveColumnNumber = 1;\n if (!lineHasSpace) {\n if (lineNumber > 1 && !isFolded(lineNumber - 1)) {\n effectiveLineNumber -= 1;\n }\n else if ((lineNumber < model.getLineCount()) && !isFolded(lineNumber + 1)) {\n effectiveLineNumber += 1;\n }\n else if (column * fontInfo.spaceWidth < 22) {\n // cannot show lightbulb above/below and showing\n // it inline would overlay the cursor...\n return this.hide();\n }\n effectiveColumnNumber = /^\\S\\s*$/.test(model.getLineContent(effectiveLineNumber)) ? 2 : 1;\n }\n this.state = new LightBulbState.Showing(actions, trigger, atPosition, {\n position: { lineNumber: effectiveLineNumber, column: effectiveColumnNumber },\n preference: LightBulbWidget_1._posPref\n });\n this._editor.layoutContentWidget(this);\n }\n hide() {\n if (this.state === LightBulbState.Hidden) {\n return;\n }\n this.state = LightBulbState.Hidden;\n this._editor.layoutContentWidget(this);\n }\n get state() { return this._state; }\n set state(value) {\n this._state = value;\n this._updateLightBulbTitleAndIcon();\n }\n _updateLightBulbTitleAndIcon() {\n this._domNode.classList.remove(...this._iconClasses);\n this._iconClasses = [];\n if (this.state.type !== 1 /* LightBulbState.Type.Showing */) {\n return;\n }\n let icon;\n let autoRun = false;\n if (this.state.actions.allAIFixes) {\n icon = _base_common_codicons_js__WEBPACK_IMPORTED_MODULE_2__.Codicon.sparkleFilled;\n if (this.state.actions.validActions.length === 1) {\n autoRun = true;\n }\n }\n else if (this.state.actions.hasAutoFix) {\n if (this.state.actions.hasAIFix) {\n icon = _base_common_codicons_js__WEBPACK_IMPORTED_MODULE_2__.Codicon.lightbulbSparkleAutofix;\n }\n else {\n icon = _base_common_codicons_js__WEBPACK_IMPORTED_MODULE_2__.Codicon.lightbulbAutofix;\n }\n }\n else if (this.state.actions.hasAIFix) {\n icon = _base_common_codicons_js__WEBPACK_IMPORTED_MODULE_2__.Codicon.lightbulbSparkle;\n }\n else {\n icon = _base_common_codicons_js__WEBPACK_IMPORTED_MODULE_2__.Codicon.lightBulb;\n }\n this._updateLightbulbTitle(this.state.actions.hasAutoFix, autoRun);\n this._iconClasses = _base_common_themables_js__WEBPACK_IMPORTED_MODULE_5__.ThemeIcon.asClassNameArray(icon);\n this._domNode.classList.add(...this._iconClasses);\n }\n _updateLightbulbTitle(autoFix, autoRun) {\n if (this.state.type !== 1 /* LightBulbState.Type.Showing */) {\n return;\n }\n if (autoRun) {\n this.title = _nls_js__WEBPACK_IMPORTED_MODULE_9__.localize('codeActionAutoRun', \"Run: {0}\", this.state.actions.validActions[0].action.title);\n }\n else if (autoFix && this._preferredKbLabel) {\n this.title = _nls_js__WEBPACK_IMPORTED_MODULE_9__.localize('preferredcodeActionWithKb', \"Show Code Actions. Preferred Quick Fix Available ({0})\", this._preferredKbLabel);\n }\n else if (!autoFix && this._quickFixKbLabel) {\n this.title = _nls_js__WEBPACK_IMPORTED_MODULE_9__.localize('codeActionWithKb', \"Show Code Actions ({0})\", this._quickFixKbLabel);\n }\n else if (!autoFix) {\n this.title = _nls_js__WEBPACK_IMPORTED_MODULE_9__.localize('codeAction', \"Show Code Actions\");\n }\n }\n set title(value) {\n this._domNode.title = value;\n }\n};\nLightBulbWidget.ID = 'editor.contrib.lightbulbWidget';\nLightBulbWidget._posPref = [0 /* ContentWidgetPositionPreference.EXACT */];\nLightBulbWidget = LightBulbWidget_1 = __decorate([\n __param(1, _platform_keybinding_common_keybinding_js__WEBPACK_IMPORTED_MODULE_11__.IKeybindingService),\n __param(2, _platform_commands_common_commands_js__WEBPACK_IMPORTED_MODULE_10__.ICommandService)\n], LightBulbWidget);\n\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/contrib/codeAction/browser/lightBulbWidget.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/contrib/codeAction/common/types.js":
/*!*************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/contrib/codeAction/common/types.js ***!
\*************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ CodeActionCommandArgs: () => (/* binding */ CodeActionCommandArgs),\n/* harmony export */ CodeActionItem: () => (/* binding */ CodeActionItem),\n/* harmony export */ CodeActionKind: () => (/* binding */ CodeActionKind),\n/* harmony export */ CodeActionTriggerSource: () => (/* binding */ CodeActionTriggerSource),\n/* harmony export */ filtersAction: () => (/* binding */ filtersAction),\n/* harmony export */ mayIncludeActionsOfKind: () => (/* binding */ mayIncludeActionsOfKind)\n/* harmony export */ });\n/* harmony import */ var _base_common_errors_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../../base/common/errors.js */ \"./node_modules/monaco-editor/esm/vs/base/common/errors.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\nclass CodeActionKind {\n constructor(value) {\n this.value = value;\n }\n equals(other) {\n return this.value === other.value;\n }\n contains(other) {\n return this.equals(other) || this.value === '' || other.value.startsWith(this.value + CodeActionKind.sep);\n }\n intersects(other) {\n return this.contains(other) || other.contains(this);\n }\n append(part) {\n return new CodeActionKind(this.value + CodeActionKind.sep + part);\n }\n}\nCodeActionKind.sep = '.';\nCodeActionKind.None = new CodeActionKind('@@none@@'); // Special code action that contains nothing\nCodeActionKind.Empty = new CodeActionKind('');\nCodeActionKind.QuickFix = new CodeActionKind('quickfix');\nCodeActionKind.Refactor = new CodeActionKind('refactor');\nCodeActionKind.RefactorExtract = CodeActionKind.Refactor.append('extract');\nCodeActionKind.RefactorInline = CodeActionKind.Refactor.append('inline');\nCodeActionKind.RefactorMove = CodeActionKind.Refactor.append('move');\nCodeActionKind.RefactorRewrite = CodeActionKind.Refactor.append('rewrite');\nCodeActionKind.Notebook = new CodeActionKind('notebook');\nCodeActionKind.Source = new CodeActionKind('source');\nCodeActionKind.SourceOrganizeImports = CodeActionKind.Source.append('organizeImports');\nCodeActionKind.SourceFixAll = CodeActionKind.Source.append('fixAll');\nCodeActionKind.SurroundWith = CodeActionKind.Refactor.append('surround');\nvar CodeActionTriggerSource;\n(function (CodeActionTriggerSource) {\n CodeActionTriggerSource[\"Refactor\"] = \"refactor\";\n CodeActionTriggerSource[\"RefactorPreview\"] = \"refactor preview\";\n CodeActionTriggerSource[\"Lightbulb\"] = \"lightbulb\";\n CodeActionTriggerSource[\"Default\"] = \"other (default)\";\n CodeActionTriggerSource[\"SourceAction\"] = \"source action\";\n CodeActionTriggerSource[\"QuickFix\"] = \"quick fix action\";\n CodeActionTriggerSource[\"FixAll\"] = \"fix all\";\n CodeActionTriggerSource[\"OrganizeImports\"] = \"organize imports\";\n CodeActionTriggerSource[\"AutoFix\"] = \"auto fix\";\n CodeActionTriggerSource[\"QuickFixHover\"] = \"quick fix hover window\";\n CodeActionTriggerSource[\"OnSave\"] = \"save participants\";\n CodeActionTriggerSource[\"ProblemsView\"] = \"problems view\";\n})(CodeActionTriggerSource || (CodeActionTriggerSource = {}));\nfunction mayIncludeActionsOfKind(filter, providedKind) {\n // A provided kind may be a subset or superset of our filtered kind.\n if (filter.include && !filter.include.intersects(providedKind)) {\n return false;\n }\n if (filter.excludes) {\n if (filter.excludes.some(exclude => excludesAction(providedKind, exclude, filter.include))) {\n return false;\n }\n }\n // Don't return source actions unless they are explicitly requested\n if (!filter.includeSourceActions && CodeActionKind.Source.contains(providedKind)) {\n return false;\n }\n return true;\n}\nfunction filtersAction(filter, action) {\n const actionKind = action.kind ? new CodeActionKind(action.kind) : undefined;\n // Filter out actions by kind\n if (filter.include) {\n if (!actionKind || !filter.include.contains(actionKind)) {\n return false;\n }\n }\n if (filter.excludes) {\n if (actionKind && filter.excludes.some(exclude => excludesAction(actionKind, exclude, filter.include))) {\n return false;\n }\n }\n // Don't return source actions unless they are explicitly requested\n if (!filter.includeSourceActions) {\n if (actionKind && CodeActionKind.Source.contains(actionKind)) {\n return false;\n }\n }\n if (filter.onlyIncludePreferredActions) {\n if (!action.isPreferred) {\n return false;\n }\n }\n return true;\n}\nfunction excludesAction(providedKind, exclude, include) {\n if (!exclude.contains(providedKind)) {\n return false;\n }\n if (include && exclude.contains(include)) {\n // The include is more specific, don't filter out\n return false;\n }\n return true;\n}\nclass CodeActionCommandArgs {\n static fromUser(arg, defaults) {\n if (!arg || typeof arg !== 'object') {\n return new CodeActionCommandArgs(defaults.kind, defaults.apply, false);\n }\n return new CodeActionCommandArgs(CodeActionCommandArgs.getKindFromUser(arg, defaults.kind), CodeActionCommandArgs.getApplyFromUser(arg, defaults.apply), CodeActionCommandArgs.getPreferredUser(arg));\n }\n static getApplyFromUser(arg, defaultAutoApply) {\n switch (typeof arg.apply === 'string' ? arg.apply.toLowerCase() : '') {\n case 'first': return \"first\" /* CodeActionAutoApply.First */;\n case 'never': return \"never\" /* CodeActionAutoApply.Never */;\n case 'ifsingle': return \"ifSingle\" /* CodeActionAutoApply.IfSingle */;\n default: return defaultAutoApply;\n }\n }\n static getKindFromUser(arg, defaultKind) {\n return typeof arg.kind === 'string'\n ? new CodeActionKind(arg.kind)\n : defaultKind;\n }\n static getPreferredUser(arg) {\n return typeof arg.preferred === 'boolean'\n ? arg.preferred\n : false;\n }\n constructor(kind, apply, preferred) {\n this.kind = kind;\n this.apply = apply;\n this.preferred = preferred;\n }\n}\nclass CodeActionItem {\n constructor(action, provider, highlightRange) {\n this.action = action;\n this.provider = provider;\n this.highlightRange = highlightRange;\n }\n async resolve(token) {\n var _a;\n if (((_a = this.provider) === null || _a === void 0 ? void 0 : _a.resolveCodeAction) && !this.action.edit) {\n let action;\n try {\n action = await this.provider.resolveCodeAction(this.action, token);\n }\n catch (err) {\n (0,_base_common_errors_js__WEBPACK_IMPORTED_MODULE_0__.onUnexpectedExternalError)(err);\n }\n if (action) {\n this.action.edit = action.edit;\n }\n }\n return this;\n }\n}\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/contrib/codeAction/common/types.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/contrib/codelens/browser/codeLensCache.js":
/*!********************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/contrib/codelens/browser/codeLensCache.js ***!
\********************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ CodeLensCache: () => (/* binding */ CodeLensCache),\n/* harmony export */ ICodeLensCache: () => (/* binding */ ICodeLensCache)\n/* harmony export */ });\n/* harmony import */ var _base_common_event_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../../base/common/event.js */ \"./node_modules/monaco-editor/esm/vs/base/common/event.js\");\n/* harmony import */ var _base_common_map_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../base/common/map.js */ \"./node_modules/monaco-editor/esm/vs/base/common/map.js\");\n/* harmony import */ var _common_core_range_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../common/core/range.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/core/range.js\");\n/* harmony import */ var _codelens_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./codelens.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/codelens/browser/codelens.js\");\n/* harmony import */ var _platform_instantiation_common_extensions_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../../../platform/instantiation/common/extensions.js */ \"./node_modules/monaco-editor/esm/vs/platform/instantiation/common/extensions.js\");\n/* harmony import */ var _platform_instantiation_common_instantiation_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../../../../platform/instantiation/common/instantiation.js */ \"./node_modules/monaco-editor/esm/vs/platform/instantiation/common/instantiation.js\");\n/* harmony import */ var _platform_storage_common_storage_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../../../../platform/storage/common/storage.js */ \"./node_modules/monaco-editor/esm/vs/platform/storage/common/storage.js\");\n/* harmony import */ var _base_browser_window_js__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ../../../../base/browser/window.js */ \"./node_modules/monaco-editor/esm/vs/base/browser/window.js\");\n/* harmony import */ var _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ../../../../base/browser/dom.js */ \"./node_modules/monaco-editor/esm/vs/base/browser/dom.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\nvar __decorate = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\n return c > 3 && r && Object.defineProperty(target, key, r), r;\n};\nvar __param = (undefined && undefined.__param) || function (paramIndex, decorator) {\n return function (target, key) { decorator(target, key, paramIndex); }\n};\n\n\n\n\n\n\n\n\n\nconst ICodeLensCache = (0,_platform_instantiation_common_instantiation_js__WEBPACK_IMPORTED_MODULE_5__.createDecorator)('ICodeLensCache');\nclass CacheItem {\n constructor(lineCount, data) {\n this.lineCount = lineCount;\n this.data = data;\n }\n}\nlet CodeLensCache = class CodeLensCache {\n constructor(storageService) {\n this._fakeProvider = new class {\n provideCodeLenses() {\n throw new Error('not supported');\n }\n };\n this._cache = new _base_common_map_js__WEBPACK_IMPORTED_MODULE_1__.LRUCache(20, 0.75);\n // remove old data\n const oldkey = 'codelens/cache';\n (0,_base_browser_dom_js__WEBPACK_IMPORTED_MODULE_8__.runWhenWindowIdle)(_base_browser_window_js__WEBPACK_IMPORTED_MODULE_7__.mainWindow, () => storageService.remove(oldkey, 1 /* StorageScope.WORKSPACE */));\n // restore lens data on start\n const key = 'codelens/cache2';\n const raw = storageService.get(key, 1 /* StorageScope.WORKSPACE */, '{}');\n this._deserialize(raw);\n // store lens data on shutdown\n _base_common_event_js__WEBPACK_IMPORTED_MODULE_0__.Event.once(storageService.onWillSaveState)(e => {\n if (e.reason === _platform_storage_common_storage_js__WEBPACK_IMPORTED_MODULE_6__.WillSaveStateReason.SHUTDOWN) {\n storageService.store(key, this._serialize(), 1 /* StorageScope.WORKSPACE */, 1 /* StorageTarget.MACHINE */);\n }\n });\n }\n put(model, data) {\n // create a copy of the model that is without command-ids\n // but with comand-labels\n const copyItems = data.lenses.map(item => {\n var _a;\n return {\n range: item.symbol.range,\n command: item.symbol.command && { id: '', title: (_a = item.symbol.command) === null || _a === void 0 ? void 0 : _a.title },\n };\n });\n const copyModel = new _codelens_js__WEBPACK_IMPORTED_MODULE_3__.CodeLensModel();\n copyModel.add({ lenses: copyItems, dispose: () => { } }, this._fakeProvider);\n const item = new CacheItem(model.getLineCount(), copyModel);\n this._cache.set(model.uri.toString(), item);\n }\n get(model) {\n const item = this._cache.get(model.uri.toString());\n return item && item.lineCount === model.getLineCount() ? item.data : undefined;\n }\n delete(model) {\n this._cache.delete(model.uri.toString());\n }\n // --- persistence\n _serialize() {\n const data = Object.create(null);\n for (const [key, value] of this._cache) {\n const lines = new Set();\n for (const d of value.data.lenses) {\n lines.add(d.symbol.range.startLineNumber);\n }\n data[key] = {\n lineCount: value.lineCount,\n lines: [...lines.values()]\n };\n }\n return JSON.stringify(data);\n }\n _deserialize(raw) {\n try {\n const data = JSON.parse(raw);\n for (const key in data) {\n const element = data[key];\n const lenses = [];\n for (const line of element.lines) {\n lenses.push({ range: new _common_core_range_js__WEBPACK_IMPORTED_MODULE_2__.Range(line, 1, line, 11) });\n }\n const model = new _codelens_js__WEBPACK_IMPORTED_MODULE_3__.CodeLensModel();\n model.add({ lenses, dispose() { } }, this._fakeProvider);\n this._cache.set(key, new CacheItem(element.lineCount, model));\n }\n }\n catch (_a) {\n // ignore...\n }\n }\n};\nCodeLensCache = __decorate([\n __param(0, _platform_storage_common_storage_js__WEBPACK_IMPORTED_MODULE_6__.IStorageService)\n], CodeLensCache);\n\n(0,_platform_instantiation_common_extensions_js__WEBPACK_IMPORTED_MODULE_4__.registerSingleton)(ICodeLensCache, CodeLensCache, 1 /* InstantiationType.Delayed */);\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/contrib/codelens/browser/codeLensCache.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/contrib/codelens/browser/codelens.js":
/*!***************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/contrib/codelens/browser/codelens.js ***!
\***************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ CodeLensModel: () => (/* binding */ CodeLensModel),\n/* harmony export */ getCodeLensModel: () => (/* binding */ getCodeLensModel)\n/* harmony export */ });\n/* harmony import */ var _base_common_cancellation_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../../base/common/cancellation.js */ \"./node_modules/monaco-editor/esm/vs/base/common/cancellation.js\");\n/* harmony import */ var _base_common_errors_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../base/common/errors.js */ \"./node_modules/monaco-editor/esm/vs/base/common/errors.js\");\n/* harmony import */ var _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../../base/common/lifecycle.js */ \"./node_modules/monaco-editor/esm/vs/base/common/lifecycle.js\");\n/* harmony import */ var _base_common_types_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../../../base/common/types.js */ \"./node_modules/monaco-editor/esm/vs/base/common/types.js\");\n/* harmony import */ var _base_common_uri_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../../../base/common/uri.js */ \"./node_modules/monaco-editor/esm/vs/base/common/uri.js\");\n/* harmony import */ var _common_services_model_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../../../common/services/model.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/services/model.js\");\n/* harmony import */ var _platform_commands_common_commands_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../../../../platform/commands/common/commands.js */ \"./node_modules/monaco-editor/esm/vs/platform/commands/common/commands.js\");\n/* harmony import */ var _common_services_languageFeatures_js__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ../../../common/services/languageFeatures.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/services/languageFeatures.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n\n\n\n\n\n\n\nclass CodeLensModel {\n constructor() {\n this.lenses = [];\n this._disposables = new _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_2__.DisposableStore();\n }\n dispose() {\n this._disposables.dispose();\n }\n get isDisposed() {\n return this._disposables.isDisposed;\n }\n add(list, provider) {\n this._disposables.add(list);\n for (const symbol of list.lenses) {\n this.lenses.push({ symbol, provider });\n }\n }\n}\nasync function getCodeLensModel(registry, model, token) {\n const provider = registry.ordered(model);\n const providerRanks = new Map();\n const result = new CodeLensModel();\n const promises = provider.map(async (provider, i) => {\n providerRanks.set(provider, i);\n try {\n const list = await Promise.resolve(provider.provideCodeLenses(model, token));\n if (list) {\n result.add(list, provider);\n }\n }\n catch (err) {\n (0,_base_common_errors_js__WEBPACK_IMPORTED_MODULE_1__.onUnexpectedExternalError)(err);\n }\n });\n await Promise.all(promises);\n result.lenses = result.lenses.sort((a, b) => {\n // sort by lineNumber, provider-rank, and column\n if (a.symbol.range.startLineNumber < b.symbol.range.startLineNumber) {\n return -1;\n }\n else if (a.symbol.range.startLineNumber > b.symbol.range.startLineNumber) {\n return 1;\n }\n else if ((providerRanks.get(a.provider)) < (providerRanks.get(b.provider))) {\n return -1;\n }\n else if ((providerRanks.get(a.provider)) > (providerRanks.get(b.provider))) {\n return 1;\n }\n else if (a.symbol.range.startColumn < b.symbol.range.startColumn) {\n return -1;\n }\n else if (a.symbol.range.startColumn > b.symbol.range.startColumn) {\n return 1;\n }\n else {\n return 0;\n }\n });\n return result;\n}\n_platform_commands_common_commands_js__WEBPACK_IMPORTED_MODULE_6__.CommandsRegistry.registerCommand('_executeCodeLensProvider', function (accessor, ...args) {\n let [uri, itemResolveCount] = args;\n (0,_base_common_types_js__WEBPACK_IMPORTED_MODULE_3__.assertType)(_base_common_uri_js__WEBPACK_IMPORTED_MODULE_4__.URI.isUri(uri));\n (0,_base_common_types_js__WEBPACK_IMPORTED_MODULE_3__.assertType)(typeof itemResolveCount === 'number' || !itemResolveCount);\n const { codeLensProvider } = accessor.get(_common_services_languageFeatures_js__WEBPACK_IMPORTED_MODULE_7__.ILanguageFeaturesService);\n const model = accessor.get(_common_services_model_js__WEBPACK_IMPORTED_MODULE_5__.IModelService).getModel(uri);\n if (!model) {\n throw (0,_base_common_errors_js__WEBPACK_IMPORTED_MODULE_1__.illegalArgument)();\n }\n const result = [];\n const disposables = new _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_2__.DisposableStore();\n return getCodeLensModel(codeLensProvider, model, _base_common_cancellation_js__WEBPACK_IMPORTED_MODULE_0__.CancellationToken.None).then(value => {\n disposables.add(value);\n const resolve = [];\n for (const item of value.lenses) {\n if (itemResolveCount === undefined || itemResolveCount === null || Boolean(item.symbol.command)) {\n result.push(item.symbol);\n }\n else if (itemResolveCount-- > 0 && item.provider.resolveCodeLens) {\n resolve.push(Promise.resolve(item.provider.resolveCodeLens(model, item.symbol, _base_common_cancellation_js__WEBPACK_IMPORTED_MODULE_0__.CancellationToken.None)).then(symbol => result.push(symbol || item.symbol)));\n }\n }\n return Promise.all(resolve);\n }).then(() => {\n return result;\n }).finally(() => {\n // make sure to return results, then (on next tick)\n // dispose the results\n setTimeout(() => disposables.dispose(), 100);\n });\n});\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/contrib/codelens/browser/codelens.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/contrib/codelens/browser/codelensController.js":
/*!*************************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/contrib/codelens/browser/codelensController.js ***!
\*************************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ CodeLensContribution: () => (/* binding */ CodeLensContribution)\n/* harmony export */ });\n/* harmony import */ var _base_common_async_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../../base/common/async.js */ \"./node_modules/monaco-editor/esm/vs/base/common/async.js\");\n/* harmony import */ var _base_common_errors_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../base/common/errors.js */ \"./node_modules/monaco-editor/esm/vs/base/common/errors.js\");\n/* harmony import */ var _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../../base/common/lifecycle.js */ \"./node_modules/monaco-editor/esm/vs/base/common/lifecycle.js\");\n/* harmony import */ var _browser_stableEditorScroll_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../../browser/stableEditorScroll.js */ \"./node_modules/monaco-editor/esm/vs/editor/browser/stableEditorScroll.js\");\n/* harmony import */ var _browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../../browser/editorExtensions.js */ \"./node_modules/monaco-editor/esm/vs/editor/browser/editorExtensions.js\");\n/* harmony import */ var _common_config_editorOptions_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../../../common/config/editorOptions.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/config/editorOptions.js\");\n/* harmony import */ var _common_editorContextKeys_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../../../common/editorContextKeys.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/editorContextKeys.js\");\n/* harmony import */ var _codelens_js__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ./codelens.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/codelens/browser/codelens.js\");\n/* harmony import */ var _codeLensCache_js__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ./codeLensCache.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/codelens/browser/codeLensCache.js\");\n/* harmony import */ var _codelensWidget_js__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ./codelensWidget.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/codelens/browser/codelensWidget.js\");\n/* harmony import */ var _nls_js__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! ../../../../nls.js */ \"./node_modules/monaco-editor/esm/vs/nls.js\");\n/* harmony import */ var _platform_commands_common_commands_js__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(/*! ../../../../platform/commands/common/commands.js */ \"./node_modules/monaco-editor/esm/vs/platform/commands/common/commands.js\");\n/* harmony import */ var _platform_notification_common_notification_js__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(/*! ../../../../platform/notification/common/notification.js */ \"./node_modules/monaco-editor/esm/vs/platform/notification/common/notification.js\");\n/* harmony import */ var _platform_quickinput_common_quickInput_js__WEBPACK_IMPORTED_MODULE_13__ = __webpack_require__(/*! ../../../../platform/quickinput/common/quickInput.js */ \"./node_modules/monaco-editor/esm/vs/platform/quickinput/common/quickInput.js\");\n/* harmony import */ var _common_services_languageFeatureDebounce_js__WEBPACK_IMPORTED_MODULE_14__ = __webpack_require__(/*! ../../../common/services/languageFeatureDebounce.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/services/languageFeatureDebounce.js\");\n/* harmony import */ var _common_services_languageFeatures_js__WEBPACK_IMPORTED_MODULE_15__ = __webpack_require__(/*! ../../../common/services/languageFeatures.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/services/languageFeatures.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\nvar __decorate = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\n return c > 3 && r && Object.defineProperty(target, key, r), r;\n};\nvar __param = (undefined && undefined.__param) || function (paramIndex, decorator) {\n return function (target, key) { decorator(target, key, paramIndex); }\n};\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlet CodeLensContribution = class CodeLensContribution {\n constructor(_editor, _languageFeaturesService, debounceService, _commandService, _notificationService, _codeLensCache) {\n this._editor = _editor;\n this._languageFeaturesService = _languageFeaturesService;\n this._commandService = _commandService;\n this._notificationService = _notificationService;\n this._codeLensCache = _codeLensCache;\n this._disposables = new _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_2__.DisposableStore();\n this._localToDispose = new _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_2__.DisposableStore();\n this._lenses = [];\n this._oldCodeLensModels = new _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_2__.DisposableStore();\n this._provideCodeLensDebounce = debounceService.for(_languageFeaturesService.codeLensProvider, 'CodeLensProvide', { min: 250 });\n this._resolveCodeLensesDebounce = debounceService.for(_languageFeaturesService.codeLensProvider, 'CodeLensResolve', { min: 250, salt: 'resolve' });\n this._resolveCodeLensesScheduler = new _base_common_async_js__WEBPACK_IMPORTED_MODULE_0__.RunOnceScheduler(() => this._resolveCodeLensesInViewport(), this._resolveCodeLensesDebounce.default());\n this._disposables.add(this._editor.onDidChangeModel(() => this._onModelChange()));\n this._disposables.add(this._editor.onDidChangeModelLanguage(() => this._onModelChange()));\n this._disposables.add(this._editor.onDidChangeConfiguration((e) => {\n if (e.hasChanged(50 /* EditorOption.fontInfo */) || e.hasChanged(19 /* EditorOption.codeLensFontSize */) || e.hasChanged(18 /* EditorOption.codeLensFontFamily */)) {\n this._updateLensStyle();\n }\n if (e.hasChanged(17 /* EditorOption.codeLens */)) {\n this._onModelChange();\n }\n }));\n this._disposables.add(_languageFeaturesService.codeLensProvider.onDidChange(this._onModelChange, this));\n this._onModelChange();\n this._updateLensStyle();\n }\n dispose() {\n var _a;\n this._localDispose();\n this._disposables.dispose();\n this._oldCodeLensModels.dispose();\n (_a = this._currentCodeLensModel) === null || _a === void 0 ? void 0 : _a.dispose();\n }\n _getLayoutInfo() {\n const lineHeightFactor = Math.max(1.3, this._editor.getOption(67 /* EditorOption.lineHeight */) / this._editor.getOption(52 /* EditorOption.fontSize */));\n let fontSize = this._editor.getOption(19 /* EditorOption.codeLensFontSize */);\n if (!fontSize || fontSize < 5) {\n fontSize = (this._editor.getOption(52 /* EditorOption.fontSize */) * .9) | 0;\n }\n return {\n fontSize,\n codeLensHeight: (fontSize * lineHeightFactor) | 0,\n };\n }\n _updateLensStyle() {\n const { codeLensHeight, fontSize } = this._getLayoutInfo();\n const fontFamily = this._editor.getOption(18 /* EditorOption.codeLensFontFamily */);\n const editorFontInfo = this._editor.getOption(50 /* EditorOption.fontInfo */);\n const { style } = this._editor.getContainerDomNode();\n style.setProperty('--vscode-editorCodeLens-lineHeight', `${codeLensHeight}px`);\n style.setProperty('--vscode-editorCodeLens-fontSize', `${fontSize}px`);\n style.setProperty('--vscode-editorCodeLens-fontFeatureSettings', editorFontInfo.fontFeatureSettings);\n if (fontFamily) {\n style.setProperty('--vscode-editorCodeLens-fontFamily', fontFamily);\n style.setProperty('--vscode-editorCodeLens-fontFamilyDefault', _common_config_editorOptions_js__WEBPACK_IMPORTED_MODULE_5__.EDITOR_FONT_DEFAULTS.fontFamily);\n }\n //\n this._editor.changeViewZones(accessor => {\n for (const lens of this._lenses) {\n lens.updateHeight(codeLensHeight, accessor);\n }\n });\n }\n _localDispose() {\n var _a, _b, _c;\n (_a = this._getCodeLensModelPromise) === null || _a === void 0 ? void 0 : _a.cancel();\n this._getCodeLensModelPromise = undefined;\n (_b = this._resolveCodeLensesPromise) === null || _b === void 0 ? void 0 : _b.cancel();\n this._resolveCodeLensesPromise = undefined;\n this._localToDispose.clear();\n this._oldCodeLensModels.clear();\n (_c = this._currentCodeLensModel) === null || _c === void 0 ? void 0 : _c.dispose();\n }\n _onModelChange() {\n this._localDispose();\n const model = this._editor.getModel();\n if (!model) {\n return;\n }\n if (!this._editor.getOption(17 /* EditorOption.codeLens */) || model.isTooLargeForTokenization()) {\n return;\n }\n const cachedLenses = this._codeLensCache.get(model);\n if (cachedLenses) {\n this._renderCodeLensSymbols(cachedLenses);\n }\n if (!this._languageFeaturesService.codeLensProvider.has(model)) {\n // no provider -> return but check with\n // cached lenses. they expire after 30 seconds\n if (cachedLenses) {\n (0,_base_common_async_js__WEBPACK_IMPORTED_MODULE_0__.disposableTimeout)(() => {\n const cachedLensesNow = this._codeLensCache.get(model);\n if (cachedLenses === cachedLensesNow) {\n this._codeLensCache.delete(model);\n this._onModelChange();\n }\n }, 30 * 1000, this._localToDispose);\n }\n return;\n }\n for (const provider of this._languageFeaturesService.codeLensProvider.all(model)) {\n if (typeof provider.onDidChange === 'function') {\n const registration = provider.onDidChange(() => scheduler.schedule());\n this._localToDispose.add(registration);\n }\n }\n const scheduler = new _base_common_async_js__WEBPACK_IMPORTED_MODULE_0__.RunOnceScheduler(() => {\n var _a;\n const t1 = Date.now();\n (_a = this._getCodeLensModelPromise) === null || _a === void 0 ? void 0 : _a.cancel();\n this._getCodeLensModelPromise = (0,_base_common_async_js__WEBPACK_IMPORTED_MODULE_0__.createCancelablePromise)(token => (0,_codelens_js__WEBPACK_IMPORTED_MODULE_7__.getCodeLensModel)(this._languageFeaturesService.codeLensProvider, model, token));\n this._getCodeLensModelPromise.then(result => {\n if (this._currentCodeLensModel) {\n this._oldCodeLensModels.add(this._currentCodeLensModel);\n }\n this._currentCodeLensModel = result;\n // cache model to reduce flicker\n this._codeLensCache.put(model, result);\n // update moving average\n const newDelay = this._provideCodeLensDebounce.update(model, Date.now() - t1);\n scheduler.delay = newDelay;\n // render lenses\n this._renderCodeLensSymbols(result);\n // dom.scheduleAtNextAnimationFrame(() => this._resolveCodeLensesInViewport());\n this._resolveCodeLensesInViewportSoon();\n }, _base_common_errors_js__WEBPACK_IMPORTED_MODULE_1__.onUnexpectedError);\n }, this._provideCodeLensDebounce.get(model));\n this._localToDispose.add(scheduler);\n this._localToDispose.add((0,_base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_2__.toDisposable)(() => this._resolveCodeLensesScheduler.cancel()));\n this._localToDispose.add(this._editor.onDidChangeModelContent(() => {\n var _a;\n this._editor.changeDecorations(decorationsAccessor => {\n this._editor.changeViewZones(viewZonesAccessor => {\n const toDispose = [];\n let lastLensLineNumber = -1;\n this._lenses.forEach((lens) => {\n if (!lens.isValid() || lastLensLineNumber === lens.getLineNumber()) {\n // invalid -> lens collapsed, attach range doesn't exist anymore\n // line_number -> lenses should never be on the same line\n toDispose.push(lens);\n }\n else {\n lens.update(viewZonesAccessor);\n lastLensLineNumber = lens.getLineNumber();\n }\n });\n const helper = new _codelensWidget_js__WEBPACK_IMPORTED_MODULE_9__.CodeLensHelper();\n toDispose.forEach((l) => {\n l.dispose(helper, viewZonesAccessor);\n this._lenses.splice(this._lenses.indexOf(l), 1);\n });\n helper.commit(decorationsAccessor);\n });\n });\n // Ask for all references again\n scheduler.schedule();\n // Cancel pending and active resolve requests\n this._resolveCodeLensesScheduler.cancel();\n (_a = this._resolveCodeLensesPromise) === null || _a === void 0 ? void 0 : _a.cancel();\n this._resolveCodeLensesPromise = undefined;\n }));\n this._localToDispose.add(this._editor.onDidFocusEditorWidget(() => {\n scheduler.schedule();\n }));\n this._localToDispose.add(this._editor.onDidBlurEditorText(() => {\n scheduler.cancel();\n }));\n this._localToDispose.add(this._editor.onDidScrollChange(e => {\n if (e.scrollTopChanged && this._lenses.length > 0) {\n this._resolveCodeLensesInViewportSoon();\n }\n }));\n this._localToDispose.add(this._editor.onDidLayoutChange(() => {\n this._resolveCodeLensesInViewportSoon();\n }));\n this._localToDispose.add((0,_base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_2__.toDisposable)(() => {\n if (this._editor.getModel()) {\n const scrollState = _browser_stableEditorScroll_js__WEBPACK_IMPORTED_MODULE_3__.StableEditorScrollState.capture(this._editor);\n this._editor.changeDecorations(decorationsAccessor => {\n this._editor.changeViewZones(viewZonesAccessor => {\n this._disposeAllLenses(decorationsAccessor, viewZonesAccessor);\n });\n });\n scrollState.restore(this._editor);\n }\n else {\n // No accessors available\n this._disposeAllLenses(undefined, undefined);\n }\n }));\n this._localToDispose.add(this._editor.onMouseDown(e => {\n if (e.target.type !== 9 /* MouseTargetType.CONTENT_WIDGET */) {\n return;\n }\n let target = e.target.element;\n if ((target === null || target === void 0 ? void 0 : target.tagName) === 'SPAN') {\n target = target.parentElement;\n }\n if ((target === null || target === void 0 ? void 0 : target.tagName) === 'A') {\n for (const lens of this._lenses) {\n const command = lens.getCommand(target);\n if (command) {\n this._commandService.executeCommand(command.id, ...(command.arguments || [])).catch(err => this._notificationService.error(err));\n break;\n }\n }\n }\n }));\n scheduler.schedule();\n }\n _disposeAllLenses(decChangeAccessor, viewZoneChangeAccessor) {\n const helper = new _codelensWidget_js__WEBPACK_IMPORTED_MODULE_9__.CodeLensHelper();\n for (const lens of this._lenses) {\n lens.dispose(helper, viewZoneChangeAccessor);\n }\n if (decChangeAccessor) {\n helper.commit(decChangeAccessor);\n }\n this._lenses.length = 0;\n }\n _renderCodeLensSymbols(symbols) {\n if (!this._editor.hasModel()) {\n return;\n }\n const maxLineNumber = this._editor.getModel().getLineCount();\n const groups = [];\n let lastGroup;\n for (const symbol of symbols.lenses) {\n const line = symbol.symbol.range.startLineNumber;\n if (line < 1 || line > maxLineNumber) {\n // invalid code lens\n continue;\n }\n else if (lastGroup && lastGroup[lastGroup.length - 1].symbol.range.startLineNumber === line) {\n // on same line as previous\n lastGroup.push(symbol);\n }\n else {\n // on later line as previous\n lastGroup = [symbol];\n groups.push(lastGroup);\n }\n }\n if (!groups.length && !this._lenses.length) {\n // Nothing to change\n return;\n }\n const scrollState = _browser_stableEditorScroll_js__WEBPACK_IMPORTED_MODULE_3__.StableEditorScrollState.capture(this._editor);\n const layoutInfo = this._getLayoutInfo();\n this._editor.changeDecorations(decorationsAccessor => {\n this._editor.changeViewZones(viewZoneAccessor => {\n const helper = new _codelensWidget_js__WEBPACK_IMPORTED_MODULE_9__.CodeLensHelper();\n let codeLensIndex = 0;\n let groupsIndex = 0;\n while (groupsIndex < groups.length && codeLensIndex < this._lenses.length) {\n const symbolsLineNumber = groups[groupsIndex][0].symbol.range.startLineNumber;\n const codeLensLineNumber = this._lenses[codeLensIndex].getLineNumber();\n if (codeLensLineNumber < symbolsLineNumber) {\n this._lenses[codeLensIndex].dispose(helper, viewZoneAccessor);\n this._lenses.splice(codeLensIndex, 1);\n }\n else if (codeLensLineNumber === symbolsLineNumber) {\n this._lenses[codeLensIndex].updateCodeLensSymbols(groups[groupsIndex], helper);\n groupsIndex++;\n codeLensIndex++;\n }\n else {\n this._lenses.splice(codeLensIndex, 0, new _codelensWidget_js__WEBPACK_IMPORTED_MODULE_9__.CodeLensWidget(groups[groupsIndex], this._editor, helper, viewZoneAccessor, layoutInfo.codeLensHeight, () => this._resolveCodeLensesInViewportSoon()));\n codeLensIndex++;\n groupsIndex++;\n }\n }\n // Delete extra code lenses\n while (codeLensIndex < this._lenses.length) {\n this._lenses[codeLensIndex].dispose(helper, viewZoneAccessor);\n this._lenses.splice(codeLensIndex, 1);\n }\n // Create extra symbols\n while (groupsIndex < groups.length) {\n this._lenses.push(new _codelensWidget_js__WEBPACK_IMPORTED_MODULE_9__.CodeLensWidget(groups[groupsIndex], this._editor, helper, viewZoneAccessor, layoutInfo.codeLensHeight, () => this._resolveCodeLensesInViewportSoon()));\n groupsIndex++;\n }\n helper.commit(decorationsAccessor);\n });\n });\n scrollState.restore(this._editor);\n }\n _resolveCodeLensesInViewportSoon() {\n const model = this._editor.getModel();\n if (model) {\n this._resolveCodeLensesScheduler.schedule();\n }\n }\n _resolveCodeLensesInViewport() {\n var _a;\n (_a = this._resolveCodeLensesPromise) === null || _a === void 0 ? void 0 : _a.cancel();\n this._resolveCodeLensesPromise = undefined;\n const model = this._editor.getModel();\n if (!model) {\n return;\n }\n const toResolve = [];\n const lenses = [];\n this._lenses.forEach((lens) => {\n const request = lens.computeIfNecessary(model);\n if (request) {\n toResolve.push(request);\n lenses.push(lens);\n }\n });\n if (toResolve.length === 0) {\n return;\n }\n const t1 = Date.now();\n const resolvePromise = (0,_base_common_async_js__WEBPACK_IMPORTED_MODULE_0__.createCancelablePromise)(token => {\n const promises = toResolve.map((request, i) => {\n const resolvedSymbols = new Array(request.length);\n const promises = request.map((request, i) => {\n if (!request.symbol.command && typeof request.provider.resolveCodeLens === 'function') {\n return Promise.resolve(request.provider.resolveCodeLens(model, request.symbol, token)).then(symbol => {\n resolvedSymbols[i] = symbol;\n }, _base_common_errors_js__WEBPACK_IMPORTED_MODULE_1__.onUnexpectedExternalError);\n }\n else {\n resolvedSymbols[i] = request.symbol;\n return Promise.resolve(undefined);\n }\n });\n return Promise.all(promises).then(() => {\n if (!token.isCancellationRequested && !lenses[i].isDisposed()) {\n lenses[i].updateCommands(resolvedSymbols);\n }\n });\n });\n return Promise.all(promises);\n });\n this._resolveCodeLensesPromise = resolvePromise;\n this._resolveCodeLensesPromise.then(() => {\n // update moving average\n const newDelay = this._resolveCodeLensesDebounce.update(model, Date.now() - t1);\n this._resolveCodeLensesScheduler.delay = newDelay;\n if (this._currentCodeLensModel) { // update the cached state with new resolved items\n this._codeLensCache.put(model, this._currentCodeLensModel);\n }\n this._oldCodeLensModels.clear(); // dispose old models once we have updated the UI with the current model\n if (resolvePromise === this._resolveCodeLensesPromise) {\n this._resolveCodeLensesPromise = undefined;\n }\n }, err => {\n (0,_base_common_errors_js__WEBPACK_IMPORTED_MODULE_1__.onUnexpectedError)(err); // can also be cancellation!\n if (resolvePromise === this._resolveCodeLensesPromise) {\n this._resolveCodeLensesPromise = undefined;\n }\n });\n }\n async getModel() {\n var _a;\n await this._getCodeLensModelPromise;\n await this._resolveCodeLensesPromise;\n return !((_a = this._currentCodeLensModel) === null || _a === void 0 ? void 0 : _a.isDisposed)\n ? this._currentCodeLensModel\n : undefined;\n }\n};\nCodeLensContribution.ID = 'css.editor.codeLens';\nCodeLensContribution = __decorate([\n __param(1, _common_services_languageFeatures_js__WEBPACK_IMPORTED_MODULE_15__.ILanguageFeaturesService),\n __param(2, _common_services_languageFeatureDebounce_js__WEBPACK_IMPORTED_MODULE_14__.ILanguageFeatureDebounceService),\n __param(3, _platform_commands_common_commands_js__WEBPACK_IMPORTED_MODULE_11__.ICommandService),\n __param(4, _platform_notification_common_notification_js__WEBPACK_IMPORTED_MODULE_12__.INotificationService),\n __param(5, _codeLensCache_js__WEBPACK_IMPORTED_MODULE_8__.ICodeLensCache)\n], CodeLensContribution);\n\n(0,_browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_4__.registerEditorContribution)(CodeLensContribution.ID, CodeLensContribution, 1 /* EditorContributionInstantiation.AfterFirstRender */);\n(0,_browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_4__.registerEditorAction)(class ShowLensesInCurrentLine extends _browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_4__.EditorAction {\n constructor() {\n super({\n id: 'codelens.showLensesInCurrentLine',\n precondition: _common_editorContextKeys_js__WEBPACK_IMPORTED_MODULE_6__.EditorContextKeys.hasCodeLensProvider,\n label: (0,_nls_js__WEBPACK_IMPORTED_MODULE_10__.localize)('showLensOnLine', \"Show CodeLens Commands For Current Line\"),\n alias: 'Show CodeLens Commands For Current Line',\n });\n }\n async run(accessor, editor) {\n if (!editor.hasModel()) {\n return;\n }\n const quickInputService = accessor.get(_platform_quickinput_common_quickInput_js__WEBPACK_IMPORTED_MODULE_13__.IQuickInputService);\n const commandService = accessor.get(_platform_commands_common_commands_js__WEBPACK_IMPORTED_MODULE_11__.ICommandService);\n const notificationService = accessor.get(_platform_notification_common_notification_js__WEBPACK_IMPORTED_MODULE_12__.INotificationService);\n const lineNumber = editor.getSelection().positionLineNumber;\n const codelensController = editor.getContribution(CodeLensContribution.ID);\n if (!codelensController) {\n return;\n }\n const model = await codelensController.getModel();\n if (!model) {\n // nothing\n return;\n }\n const items = [];\n for (const lens of model.lenses) {\n if (lens.symbol.command && lens.symbol.range.startLineNumber === lineNumber) {\n items.push({\n label: lens.symbol.command.title,\n command: lens.symbol.command\n });\n }\n }\n if (items.length === 0) {\n // We dont want an empty picker\n return;\n }\n const item = await quickInputService.pick(items, {\n canPickMany: false,\n placeHolder: (0,_nls_js__WEBPACK_IMPORTED_MODULE_10__.localize)('placeHolder', \"Select a command\")\n });\n if (!item) {\n // Nothing picked\n return;\n }\n let command = item.command;\n if (model.isDisposed) {\n // try to find the same command again in-case the model has been re-created in the meantime\n // this is a best attempt approach which shouldn't be needed because eager model re-creates\n // shouldn't happen due to focus in/out anymore\n const newModel = await codelensController.getModel();\n const newLens = newModel === null || newModel === void 0 ? void 0 : newModel.lenses.find(lens => { var _a; return lens.symbol.range.startLineNumber === lineNumber && ((_a = lens.symbol.command) === null || _a === void 0 ? void 0 : _a.title) === command.title; });\n if (!newLens || !newLens.symbol.command) {\n return;\n }\n command = newLens.symbol.command;\n }\n try {\n await commandService.executeCommand(command.id, ...(command.arguments || []));\n }\n catch (err) {\n notificationService.error(err);\n }\n }\n});\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/contrib/codelens/browser/codelensController.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/contrib/codelens/browser/codelensWidget.js":
/*!*********************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/contrib/codelens/browser/codelensWidget.js ***!
\*********************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ CodeLensHelper: () => (/* binding */ CodeLensHelper),\n/* harmony export */ CodeLensWidget: () => (/* binding */ CodeLensWidget)\n/* harmony export */ });\n/* harmony import */ var _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../../base/browser/dom.js */ \"./node_modules/monaco-editor/esm/vs/base/browser/dom.js\");\n/* harmony import */ var _base_browser_ui_iconLabel_iconLabels_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../base/browser/ui/iconLabel/iconLabels.js */ \"./node_modules/monaco-editor/esm/vs/base/browser/ui/iconLabel/iconLabels.js\");\n/* harmony import */ var _codelensWidget_css__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./codelensWidget.css */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/codelens/browser/codelensWidget.css\");\n/* harmony import */ var _common_core_range_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../../common/core/range.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/core/range.js\");\n/* harmony import */ var _common_model_textModel_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../../common/model/textModel.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/model/textModel.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n\n\n\n\nclass CodeLensViewZone {\n constructor(afterLineNumber, heightInPx, onHeight) {\n /**\n * We want that this view zone, which reserves space for a code lens appears\n * as close as possible to the next line, so we use a very large value here.\n */\n this.afterColumn = 1073741824 /* Constants.MAX_SAFE_SMALL_INTEGER */;\n this.afterLineNumber = afterLineNumber;\n this.heightInPx = heightInPx;\n this._onHeight = onHeight;\n this.suppressMouseDown = true;\n this.domNode = document.createElement('div');\n }\n onComputedHeight(height) {\n if (this._lastHeight === undefined) {\n this._lastHeight = height;\n }\n else if (this._lastHeight !== height) {\n this._lastHeight = height;\n this._onHeight();\n }\n }\n isVisible() {\n return this._lastHeight !== 0\n && this.domNode.hasAttribute('monaco-visible-view-zone');\n }\n}\nclass CodeLensContentWidget {\n constructor(editor, line) {\n // Editor.IContentWidget.allowEditorOverflow\n this.allowEditorOverflow = false;\n this.suppressMouseDown = true;\n this._commands = new Map();\n this._isEmpty = true;\n this._editor = editor;\n this._id = `codelens.widget-${(CodeLensContentWidget._idPool++)}`;\n this.updatePosition(line);\n this._domNode = document.createElement('span');\n this._domNode.className = `codelens-decoration`;\n }\n withCommands(lenses, animate) {\n this._commands.clear();\n const children = [];\n let hasSymbol = false;\n for (let i = 0; i < lenses.length; i++) {\n const lens = lenses[i];\n if (!lens) {\n continue;\n }\n hasSymbol = true;\n if (lens.command) {\n const title = (0,_base_browser_ui_iconLabel_iconLabels_js__WEBPACK_IMPORTED_MODULE_1__.renderLabelWithIcons)(lens.command.title.trim());\n if (lens.command.id) {\n const id = `c${(CodeLensContentWidget._idPool++)}`;\n children.push(_base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.$('a', { id, title: lens.command.tooltip, role: 'button' }, ...title));\n this._commands.set(id, lens.command);\n }\n else {\n children.push(_base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.$('span', { title: lens.command.tooltip }, ...title));\n }\n if (i + 1 < lenses.length) {\n children.push(_base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.$('span', undefined, '\\u00a0|\\u00a0'));\n }\n }\n }\n if (!hasSymbol) {\n // symbols but no commands\n _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.reset(this._domNode, _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.$('span', undefined, 'no commands'));\n }\n else {\n // symbols and commands\n _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.reset(this._domNode, ...children);\n if (this._isEmpty && animate) {\n this._domNode.classList.add('fadein');\n }\n this._isEmpty = false;\n }\n }\n getCommand(link) {\n return link.parentElement === this._domNode\n ? this._commands.get(link.id)\n : undefined;\n }\n getId() {\n return this._id;\n }\n getDomNode() {\n return this._domNode;\n }\n updatePosition(line) {\n const column = this._editor.getModel().getLineFirstNonWhitespaceColumn(line);\n this._widgetPosition = {\n position: { lineNumber: line, column: column },\n preference: [1 /* ContentWidgetPositionPreference.ABOVE */]\n };\n }\n getPosition() {\n return this._widgetPosition || null;\n }\n}\nCodeLensContentWidget._idPool = 0;\nclass CodeLensHelper {\n constructor() {\n this._removeDecorations = [];\n this._addDecorations = [];\n this._addDecorationsCallbacks = [];\n }\n addDecoration(decoration, callback) {\n this._addDecorations.push(decoration);\n this._addDecorationsCallbacks.push(callback);\n }\n removeDecoration(decorationId) {\n this._removeDecorations.push(decorationId);\n }\n commit(changeAccessor) {\n const resultingDecorations = changeAccessor.deltaDecorations(this._removeDecorations, this._addDecorations);\n for (let i = 0, len = resultingDecorations.length; i < len; i++) {\n this._addDecorationsCallbacks[i](resultingDecorations[i]);\n }\n }\n}\nconst codeLensDecorationOptions = _common_model_textModel_js__WEBPACK_IMPORTED_MODULE_4__.ModelDecorationOptions.register({\n collapseOnReplaceEdit: true,\n description: 'codelens'\n});\nclass CodeLensWidget {\n constructor(data, editor, helper, viewZoneChangeAccessor, heightInPx, updateCallback) {\n this._isDisposed = false;\n this._editor = editor;\n this._data = data;\n // create combined range, track all ranges with decorations,\n // check if there is already something to render\n this._decorationIds = [];\n let range;\n const lenses = [];\n this._data.forEach((codeLensData, i) => {\n if (codeLensData.symbol.command) {\n lenses.push(codeLensData.symbol);\n }\n helper.addDecoration({\n range: codeLensData.symbol.range,\n options: codeLensDecorationOptions\n }, id => this._decorationIds[i] = id);\n // the range contains all lenses on this line\n if (!range) {\n range = _common_core_range_js__WEBPACK_IMPORTED_MODULE_3__.Range.lift(codeLensData.symbol.range);\n }\n else {\n range = _common_core_range_js__WEBPACK_IMPORTED_MODULE_3__.Range.plusRange(range, codeLensData.symbol.range);\n }\n });\n this._viewZone = new CodeLensViewZone(range.startLineNumber - 1, heightInPx, updateCallback);\n this._viewZoneId = viewZoneChangeAccessor.addZone(this._viewZone);\n if (lenses.length > 0) {\n this._createContentWidgetIfNecessary();\n this._contentWidget.withCommands(lenses, false);\n }\n }\n _createContentWidgetIfNecessary() {\n if (!this._contentWidget) {\n this._contentWidget = new CodeLensContentWidget(this._editor, this._viewZone.afterLineNumber + 1);\n this._editor.addContentWidget(this._contentWidget);\n }\n else {\n this._editor.layoutContentWidget(this._contentWidget);\n }\n }\n dispose(helper, viewZoneChangeAccessor) {\n this._decorationIds.forEach(helper.removeDecoration, helper);\n this._decorationIds = [];\n viewZoneChangeAccessor === null || viewZoneChangeAccessor === void 0 ? void 0 : viewZoneChangeAccessor.removeZone(this._viewZoneId);\n if (this._contentWidget) {\n this._editor.removeContentWidget(this._contentWidget);\n this._contentWidget = undefined;\n }\n this._isDisposed = true;\n }\n isDisposed() {\n return this._isDisposed;\n }\n isValid() {\n return this._decorationIds.some((id, i) => {\n const range = this._editor.getModel().getDecorationRange(id);\n const symbol = this._data[i].symbol;\n return !!(range && _common_core_range_js__WEBPACK_IMPORTED_MODULE_3__.Range.isEmpty(symbol.range) === range.isEmpty());\n });\n }\n updateCodeLensSymbols(data, helper) {\n this._decorationIds.forEach(helper.removeDecoration, helper);\n this._decorationIds = [];\n this._data = data;\n this._data.forEach((codeLensData, i) => {\n helper.addDecoration({\n range: codeLensData.symbol.range,\n options: codeLensDecorationOptions\n }, id => this._decorationIds[i] = id);\n });\n }\n updateHeight(height, viewZoneChangeAccessor) {\n this._viewZone.heightInPx = height;\n viewZoneChangeAccessor.layoutZone(this._viewZoneId);\n if (this._contentWidget) {\n this._editor.layoutContentWidget(this._contentWidget);\n }\n }\n computeIfNecessary(model) {\n if (!this._viewZone.isVisible()) {\n return null;\n }\n // Read editor current state\n for (let i = 0; i < this._decorationIds.length; i++) {\n const range = model.getDecorationRange(this._decorationIds[i]);\n if (range) {\n this._data[i].symbol.range = range;\n }\n }\n return this._data;\n }\n updateCommands(symbols) {\n this._createContentWidgetIfNecessary();\n this._contentWidget.withCommands(symbols, true);\n for (let i = 0; i < this._data.length; i++) {\n const resolved = symbols[i];\n if (resolved) {\n const { symbol } = this._data[i];\n symbol.command = resolved.command || symbol.command;\n }\n }\n }\n getCommand(link) {\n var _a;\n return (_a = this._contentWidget) === null || _a === void 0 ? void 0 : _a.getCommand(link);\n }\n getLineNumber() {\n const range = this._editor.getModel().getDecorationRange(this._decorationIds[0]);\n if (range) {\n return range.startLineNumber;\n }\n return -1;\n }\n update(viewZoneChangeAccessor) {\n if (this.isValid()) {\n const range = this._editor.getModel().getDecorationRange(this._decorationIds[0]);\n if (range) {\n this._viewZone.afterLineNumber = range.startLineNumber - 1;\n viewZoneChangeAccessor.layoutZone(this._viewZoneId);\n if (this._contentWidget) {\n this._contentWidget.updatePosition(range.startLineNumber);\n this._editor.layoutContentWidget(this._contentWidget);\n }\n }\n }\n }\n}\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/contrib/codelens/browser/codelensWidget.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/contrib/colorPicker/browser/color.js":
/*!***************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/contrib/colorPicker/browser/color.js ***!
\***************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ getColorPresentations: () => (/* binding */ getColorPresentations),\n/* harmony export */ getColors: () => (/* binding */ getColors)\n/* harmony export */ });\n/* harmony import */ var _base_common_cancellation_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../../base/common/cancellation.js */ \"./node_modules/monaco-editor/esm/vs/base/common/cancellation.js\");\n/* harmony import */ var _base_common_errors_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../base/common/errors.js */ \"./node_modules/monaco-editor/esm/vs/base/common/errors.js\");\n/* harmony import */ var _base_common_uri_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../../base/common/uri.js */ \"./node_modules/monaco-editor/esm/vs/base/common/uri.js\");\n/* harmony import */ var _common_core_range_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../../common/core/range.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/core/range.js\");\n/* harmony import */ var _common_services_model_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../../common/services/model.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/services/model.js\");\n/* harmony import */ var _platform_commands_common_commands_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../../../../platform/commands/common/commands.js */ \"./node_modules/monaco-editor/esm/vs/platform/commands/common/commands.js\");\n/* harmony import */ var _common_services_languageFeatures_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../../../common/services/languageFeatures.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/services/languageFeatures.js\");\n/* harmony import */ var _defaultDocumentColorProvider_js__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ./defaultDocumentColorProvider.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/colorPicker/browser/defaultDocumentColorProvider.js\");\n/* harmony import */ var _platform_configuration_common_configuration_js__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ../../../../platform/configuration/common/configuration.js */ \"./node_modules/monaco-editor/esm/vs/platform/configuration/common/configuration.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n\n\n\n\n\n\n\n\nasync function getColors(colorProviderRegistry, model, token, isDefaultColorDecoratorsEnabled = true) {\n return _findColorData(new ColorDataCollector(), colorProviderRegistry, model, token, isDefaultColorDecoratorsEnabled);\n}\nfunction getColorPresentations(model, colorInfo, provider, token) {\n return Promise.resolve(provider.provideColorPresentations(model, colorInfo, token));\n}\nclass ColorDataCollector {\n constructor() { }\n async compute(provider, model, token, colors) {\n const documentColors = await provider.provideDocumentColors(model, token);\n if (Array.isArray(documentColors)) {\n for (const colorInfo of documentColors) {\n colors.push({ colorInfo, provider });\n }\n }\n return Array.isArray(documentColors);\n }\n}\nclass ExtColorDataCollector {\n constructor() { }\n async compute(provider, model, token, colors) {\n const documentColors = await provider.provideDocumentColors(model, token);\n if (Array.isArray(documentColors)) {\n for (const colorInfo of documentColors) {\n colors.push({ range: colorInfo.range, color: [colorInfo.color.red, colorInfo.color.green, colorInfo.color.blue, colorInfo.color.alpha] });\n }\n }\n return Array.isArray(documentColors);\n }\n}\nclass ColorPresentationsCollector {\n constructor(colorInfo) {\n this.colorInfo = colorInfo;\n }\n async compute(provider, model, _token, colors) {\n const documentColors = await provider.provideColorPresentations(model, this.colorInfo, _base_common_cancellation_js__WEBPACK_IMPORTED_MODULE_0__.CancellationToken.None);\n if (Array.isArray(documentColors)) {\n colors.push(...documentColors);\n }\n return Array.isArray(documentColors);\n }\n}\nasync function _findColorData(collector, colorProviderRegistry, model, token, isDefaultColorDecoratorsEnabled) {\n let validDocumentColorProviderFound = false;\n let defaultProvider;\n const colorData = [];\n const documentColorProviders = colorProviderRegistry.ordered(model);\n for (let i = documentColorProviders.length - 1; i >= 0; i--) {\n const provider = documentColorProviders[i];\n if (provider instanceof _defaultDocumentColorProvider_js__WEBPACK_IMPORTED_MODULE_7__.DefaultDocumentColorProvider) {\n defaultProvider = provider;\n }\n else {\n try {\n if (await collector.compute(provider, model, token, colorData)) {\n validDocumentColorProviderFound = true;\n }\n }\n catch (e) {\n (0,_base_common_errors_js__WEBPACK_IMPORTED_MODULE_1__.onUnexpectedExternalError)(e);\n }\n }\n }\n if (validDocumentColorProviderFound) {\n return colorData;\n }\n if (defaultProvider && isDefaultColorDecoratorsEnabled) {\n await collector.compute(defaultProvider, model, token, colorData);\n return colorData;\n }\n return [];\n}\nfunction _setupColorCommand(accessor, resource) {\n const { colorProvider: colorProviderRegistry } = accessor.get(_common_services_languageFeatures_js__WEBPACK_IMPORTED_MODULE_6__.ILanguageFeaturesService);\n const model = accessor.get(_common_services_model_js__WEBPACK_IMPORTED_MODULE_4__.IModelService).getModel(resource);\n if (!model) {\n throw (0,_base_common_errors_js__WEBPACK_IMPORTED_MODULE_1__.illegalArgument)();\n }\n const isDefaultColorDecoratorsEnabled = accessor.get(_platform_configuration_common_configuration_js__WEBPACK_IMPORTED_MODULE_8__.IConfigurationService).getValue('editor.defaultColorDecorators', { resource });\n return { model, colorProviderRegistry, isDefaultColorDecoratorsEnabled };\n}\n_platform_commands_common_commands_js__WEBPACK_IMPORTED_MODULE_5__.CommandsRegistry.registerCommand('_executeDocumentColorProvider', function (accessor, ...args) {\n const [resource] = args;\n if (!(resource instanceof _base_common_uri_js__WEBPACK_IMPORTED_MODULE_2__.URI)) {\n throw (0,_base_common_errors_js__WEBPACK_IMPORTED_MODULE_1__.illegalArgument)();\n }\n const { model, colorProviderRegistry, isDefaultColorDecoratorsEnabled } = _setupColorCommand(accessor, resource);\n return _findColorData(new ExtColorDataCollector(), colorProviderRegistry, model, _base_common_cancellation_js__WEBPACK_IMPORTED_MODULE_0__.CancellationToken.None, isDefaultColorDecoratorsEnabled);\n});\n_platform_commands_common_commands_js__WEBPACK_IMPORTED_MODULE_5__.CommandsRegistry.registerCommand('_executeColorPresentationProvider', function (accessor, ...args) {\n const [color, context] = args;\n const { uri, range } = context;\n if (!(uri instanceof _base_common_uri_js__WEBPACK_IMPORTED_MODULE_2__.URI) || !Array.isArray(color) || color.length !== 4 || !_common_core_range_js__WEBPACK_IMPORTED_MODULE_3__.Range.isIRange(range)) {\n throw (0,_base_common_errors_js__WEBPACK_IMPORTED_MODULE_1__.illegalArgument)();\n }\n const { model, colorProviderRegistry, isDefaultColorDecoratorsEnabled } = _setupColorCommand(accessor, uri);\n const [red, green, blue, alpha] = color;\n return _findColorData(new ColorPresentationsCollector({ range: range, color: { red, green, blue, alpha } }), colorProviderRegistry, model, _base_common_cancellation_js__WEBPACK_IMPORTED_MODULE_0__.CancellationToken.None, isDefaultColorDecoratorsEnabled);\n});\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/contrib/colorPicker/browser/color.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/contrib/colorPicker/browser/colorContributions.js":
/*!****************************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/contrib/colorPicker/browser/colorContributions.js ***!
\****************************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ ColorContribution: () => (/* binding */ ColorContribution)\n/* harmony export */ });\n/* harmony import */ var _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../../base/common/lifecycle.js */ \"./node_modules/monaco-editor/esm/vs/base/common/lifecycle.js\");\n/* harmony import */ var _browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../browser/editorExtensions.js */ \"./node_modules/monaco-editor/esm/vs/editor/browser/editorExtensions.js\");\n/* harmony import */ var _common_core_range_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../common/core/range.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/core/range.js\");\n/* harmony import */ var _colorDetector_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./colorDetector.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/colorPicker/browser/colorDetector.js\");\n/* harmony import */ var _colorHoverParticipant_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./colorHoverParticipant.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/colorPicker/browser/colorHoverParticipant.js\");\n/* harmony import */ var _hover_browser_hover_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../../hover/browser/hover.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/hover/browser/hover.js\");\n/* harmony import */ var _hover_browser_hoverTypes_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../../hover/browser/hoverTypes.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/hover/browser/hoverTypes.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n\n\n\n\n\n\nclass ColorContribution extends _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_0__.Disposable {\n constructor(_editor) {\n super();\n this._editor = _editor;\n this._register(_editor.onMouseDown((e) => this.onMouseDown(e)));\n }\n dispose() {\n super.dispose();\n }\n onMouseDown(mouseEvent) {\n const colorDecoratorsActivatedOn = this._editor.getOption(147 /* EditorOption.colorDecoratorsActivatedOn */);\n if (colorDecoratorsActivatedOn !== 'click' && colorDecoratorsActivatedOn !== 'clickAndHover') {\n return;\n }\n const target = mouseEvent.target;\n if (target.type !== 6 /* MouseTargetType.CONTENT_TEXT */) {\n return;\n }\n if (!target.detail.injectedText) {\n return;\n }\n if (target.detail.injectedText.options.attachedData !== _colorDetector_js__WEBPACK_IMPORTED_MODULE_3__.ColorDecorationInjectedTextMarker) {\n return;\n }\n if (!target.range) {\n return;\n }\n const hoverController = this._editor.getContribution(_hover_browser_hover_js__WEBPACK_IMPORTED_MODULE_5__.HoverController.ID);\n if (!hoverController) {\n return;\n }\n if (!hoverController.isColorPickerVisible) {\n const range = new _common_core_range_js__WEBPACK_IMPORTED_MODULE_2__.Range(target.range.startLineNumber, target.range.startColumn + 1, target.range.endLineNumber, target.range.endColumn + 1);\n hoverController.showContentHover(range, 1 /* HoverStartMode.Immediate */, 0 /* HoverStartSource.Mouse */, false, true);\n }\n }\n}\nColorContribution.ID = 'editor.contrib.colorContribution'; // ms\n(0,_browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_1__.registerEditorContribution)(ColorContribution.ID, ColorContribution, 2 /* EditorContributionInstantiation.BeforeFirstInteraction */);\n_hover_browser_hoverTypes_js__WEBPACK_IMPORTED_MODULE_6__.HoverParticipantRegistry.register(_colorHoverParticipant_js__WEBPACK_IMPORTED_MODULE_4__.ColorHoverParticipant);\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/contrib/colorPicker/browser/colorContributions.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/contrib/colorPicker/browser/colorDetector.js":
/*!***********************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/contrib/colorPicker/browser/colorDetector.js ***!
\***********************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ ColorDecorationInjectedTextMarker: () => (/* binding */ ColorDecorationInjectedTextMarker),\n/* harmony export */ ColorDetector: () => (/* binding */ ColorDetector),\n/* harmony export */ DecoratorLimitReporter: () => (/* binding */ DecoratorLimitReporter)\n/* harmony export */ });\n/* harmony import */ var _base_common_async_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../../base/common/async.js */ \"./node_modules/monaco-editor/esm/vs/base/common/async.js\");\n/* harmony import */ var _base_common_color_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../base/common/color.js */ \"./node_modules/monaco-editor/esm/vs/base/common/color.js\");\n/* harmony import */ var _base_common_errors_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../../base/common/errors.js */ \"./node_modules/monaco-editor/esm/vs/base/common/errors.js\");\n/* harmony import */ var _base_common_event_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../../../base/common/event.js */ \"./node_modules/monaco-editor/esm/vs/base/common/event.js\");\n/* harmony import */ var _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../../../base/common/lifecycle.js */ \"./node_modules/monaco-editor/esm/vs/base/common/lifecycle.js\");\n/* harmony import */ var _base_common_stopwatch_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../../../../base/common/stopwatch.js */ \"./node_modules/monaco-editor/esm/vs/base/common/stopwatch.js\");\n/* harmony import */ var _base_common_strings_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../../../../base/common/strings.js */ \"./node_modules/monaco-editor/esm/vs/base/common/strings.js\");\n/* harmony import */ var _browser_editorDom_js__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ../../../browser/editorDom.js */ \"./node_modules/monaco-editor/esm/vs/editor/browser/editorDom.js\");\n/* harmony import */ var _browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ../../../browser/editorExtensions.js */ \"./node_modules/monaco-editor/esm/vs/editor/browser/editorExtensions.js\");\n/* harmony import */ var _common_core_range_js__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ../../../common/core/range.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/core/range.js\");\n/* harmony import */ var _common_model_textModel_js__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! ../../../common/model/textModel.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/model/textModel.js\");\n/* harmony import */ var _common_services_languageFeatureDebounce_js__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(/*! ../../../common/services/languageFeatureDebounce.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/services/languageFeatureDebounce.js\");\n/* harmony import */ var _common_services_languageFeatures_js__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(/*! ../../../common/services/languageFeatures.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/services/languageFeatures.js\");\n/* harmony import */ var _color_js__WEBPACK_IMPORTED_MODULE_13__ = __webpack_require__(/*! ./color.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/colorPicker/browser/color.js\");\n/* harmony import */ var _platform_configuration_common_configuration_js__WEBPACK_IMPORTED_MODULE_14__ = __webpack_require__(/*! ../../../../platform/configuration/common/configuration.js */ \"./node_modules/monaco-editor/esm/vs/platform/configuration/common/configuration.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\nvar __decorate = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\n return c > 3 && r && Object.defineProperty(target, key, r), r;\n};\nvar __param = (undefined && undefined.__param) || function (paramIndex, decorator) {\n return function (target, key) { decorator(target, key, paramIndex); }\n};\nvar ColorDetector_1;\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nconst ColorDecorationInjectedTextMarker = Object.create({});\nlet ColorDetector = ColorDetector_1 = class ColorDetector extends _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_4__.Disposable {\n constructor(_editor, _configurationService, _languageFeaturesService, languageFeatureDebounceService) {\n super();\n this._editor = _editor;\n this._configurationService = _configurationService;\n this._languageFeaturesService = _languageFeaturesService;\n this._localToDispose = this._register(new _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_4__.DisposableStore());\n this._decorationsIds = [];\n this._colorDatas = new Map();\n this._colorDecoratorIds = this._editor.createDecorationsCollection();\n this._ruleFactory = new _browser_editorDom_js__WEBPACK_IMPORTED_MODULE_7__.DynamicCssRules(this._editor);\n this._decoratorLimitReporter = new DecoratorLimitReporter();\n this._colorDecorationClassRefs = this._register(new _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_4__.DisposableStore());\n this._debounceInformation = languageFeatureDebounceService.for(_languageFeaturesService.colorProvider, 'Document Colors', { min: ColorDetector_1.RECOMPUTE_TIME });\n this._register(_editor.onDidChangeModel(() => {\n this._isColorDecoratorsEnabled = this.isEnabled();\n this.updateColors();\n }));\n this._register(_editor.onDidChangeModelLanguage(() => this.updateColors()));\n this._register(_languageFeaturesService.colorProvider.onDidChange(() => this.updateColors()));\n this._register(_editor.onDidChangeConfiguration((e) => {\n const prevIsEnabled = this._isColorDecoratorsEnabled;\n this._isColorDecoratorsEnabled = this.isEnabled();\n this._isDefaultColorDecoratorsEnabled = this._editor.getOption(146 /* EditorOption.defaultColorDecorators */);\n const updatedColorDecoratorsSetting = prevIsEnabled !== this._isColorDecoratorsEnabled || e.hasChanged(21 /* EditorOption.colorDecoratorsLimit */);\n const updatedDefaultColorDecoratorsSetting = e.hasChanged(146 /* EditorOption.defaultColorDecorators */);\n if (updatedColorDecoratorsSetting || updatedDefaultColorDecoratorsSetting) {\n if (this._isColorDecoratorsEnabled) {\n this.updateColors();\n }\n else {\n this.removeAllDecorations();\n }\n }\n }));\n this._timeoutTimer = null;\n this._computePromise = null;\n this._isColorDecoratorsEnabled = this.isEnabled();\n this._isDefaultColorDecoratorsEnabled = this._editor.getOption(146 /* EditorOption.defaultColorDecorators */);\n this.updateColors();\n }\n isEnabled() {\n const model = this._editor.getModel();\n if (!model) {\n return false;\n }\n const languageId = model.getLanguageId();\n // handle deprecated settings. [languageId].colorDecorators.enable\n const deprecatedConfig = this._configurationService.getValue(languageId);\n if (deprecatedConfig && typeof deprecatedConfig === 'object') {\n const colorDecorators = deprecatedConfig['colorDecorators']; // deprecatedConfig.valueOf('.colorDecorators.enable');\n if (colorDecorators && colorDecorators['enable'] !== undefined && !colorDecorators['enable']) {\n return colorDecorators['enable'];\n }\n }\n return this._editor.getOption(20 /* EditorOption.colorDecorators */);\n }\n static get(editor) {\n return editor.getContribution(this.ID);\n }\n dispose() {\n this.stop();\n this.removeAllDecorations();\n super.dispose();\n }\n updateColors() {\n this.stop();\n if (!this._isColorDecoratorsEnabled) {\n return;\n }\n const model = this._editor.getModel();\n if (!model || !this._languageFeaturesService.colorProvider.has(model)) {\n return;\n }\n this._localToDispose.add(this._editor.onDidChangeModelContent(() => {\n if (!this._timeoutTimer) {\n this._timeoutTimer = new _base_common_async_js__WEBPACK_IMPORTED_MODULE_0__.TimeoutTimer();\n this._timeoutTimer.cancelAndSet(() => {\n this._timeoutTimer = null;\n this.beginCompute();\n }, this._debounceInformation.get(model));\n }\n }));\n this.beginCompute();\n }\n async beginCompute() {\n this._computePromise = (0,_base_common_async_js__WEBPACK_IMPORTED_MODULE_0__.createCancelablePromise)(async (token) => {\n const model = this._editor.getModel();\n if (!model) {\n return [];\n }\n const sw = new _base_common_stopwatch_js__WEBPACK_IMPORTED_MODULE_5__.StopWatch(false);\n const colors = await (0,_color_js__WEBPACK_IMPORTED_MODULE_13__.getColors)(this._languageFeaturesService.colorProvider, model, token, this._isDefaultColorDecoratorsEnabled);\n this._debounceInformation.update(model, sw.elapsed());\n return colors;\n });\n try {\n const colors = await this._computePromise;\n this.updateDecorations(colors);\n this.updateColorDecorators(colors);\n this._computePromise = null;\n }\n catch (e) {\n (0,_base_common_errors_js__WEBPACK_IMPORTED_MODULE_2__.onUnexpectedError)(e);\n }\n }\n stop() {\n if (this._timeoutTimer) {\n this._timeoutTimer.cancel();\n this._timeoutTimer = null;\n }\n if (this._computePromise) {\n this._computePromise.cancel();\n this._computePromise = null;\n }\n this._localToDispose.clear();\n }\n updateDecorations(colorDatas) {\n const decorations = colorDatas.map(c => ({\n range: {\n startLineNumber: c.colorInfo.range.startLineNumber,\n startColumn: c.colorInfo.range.startColumn,\n endLineNumber: c.colorInfo.range.endLineNumber,\n endColumn: c.colorInfo.range.endColumn\n },\n options: _common_model_textModel_js__WEBPACK_IMPORTED_MODULE_10__.ModelDecorationOptions.EMPTY\n }));\n this._editor.changeDecorations((changeAccessor) => {\n this._decorationsIds = changeAccessor.deltaDecorations(this._decorationsIds, decorations);\n this._colorDatas = new Map();\n this._decorationsIds.forEach((id, i) => this._colorDatas.set(id, colorDatas[i]));\n });\n }\n updateColorDecorators(colorData) {\n this._colorDecorationClassRefs.clear();\n const decorations = [];\n const limit = this._editor.getOption(21 /* EditorOption.colorDecoratorsLimit */);\n for (let i = 0; i < colorData.length && decorations.length < limit; i++) {\n const { red, green, blue, alpha } = colorData[i].colorInfo.color;\n const rgba = new _base_common_color_js__WEBPACK_IMPORTED_MODULE_1__.RGBA(Math.round(red * 255), Math.round(green * 255), Math.round(blue * 255), alpha);\n const color = `rgba(${rgba.r}, ${rgba.g}, ${rgba.b}, ${rgba.a})`;\n const ref = this._colorDecorationClassRefs.add(this._ruleFactory.createClassNameRef({\n backgroundColor: color\n }));\n decorations.push({\n range: {\n startLineNumber: colorData[i].colorInfo.range.startLineNumber,\n startColumn: colorData[i].colorInfo.range.startColumn,\n endLineNumber: colorData[i].colorInfo.range.endLineNumber,\n endColumn: colorData[i].colorInfo.range.endColumn\n },\n options: {\n description: 'colorDetector',\n before: {\n content: _base_common_strings_js__WEBPACK_IMPORTED_MODULE_6__.noBreakWhitespace,\n inlineClassName: `${ref.className} colorpicker-color-decoration`,\n inlineClassNameAffectsLetterSpacing: true,\n attachedData: ColorDecorationInjectedTextMarker\n }\n }\n });\n }\n const limited = limit < colorData.length ? limit : false;\n this._decoratorLimitReporter.update(colorData.length, limited);\n this._colorDecoratorIds.set(decorations);\n }\n removeAllDecorations() {\n this._editor.removeDecorations(this._decorationsIds);\n this._decorationsIds = [];\n this._colorDecoratorIds.clear();\n this._colorDecorationClassRefs.clear();\n }\n getColorData(position) {\n const model = this._editor.getModel();\n if (!model) {\n return null;\n }\n const decorations = model\n .getDecorationsInRange(_common_core_range_js__WEBPACK_IMPORTED_MODULE_9__.Range.fromPositions(position, position))\n .filter(d => this._colorDatas.has(d.id));\n if (decorations.length === 0) {\n return null;\n }\n return this._colorDatas.get(decorations[0].id);\n }\n isColorDecoration(decoration) {\n return this._colorDecoratorIds.has(decoration);\n }\n};\nColorDetector.ID = 'editor.contrib.colorDetector';\nColorDetector.RECOMPUTE_TIME = 1000; // ms\nColorDetector = ColorDetector_1 = __decorate([\n __param(1, _platform_configuration_common_configuration_js__WEBPACK_IMPORTED_MODULE_14__.IConfigurationService),\n __param(2, _common_services_languageFeatures_js__WEBPACK_IMPORTED_MODULE_12__.ILanguageFeaturesService),\n __param(3, _common_services_languageFeatureDebounce_js__WEBPACK_IMPORTED_MODULE_11__.ILanguageFeatureDebounceService)\n], ColorDetector);\n\nclass DecoratorLimitReporter {\n constructor() {\n this._onDidChange = new _base_common_event_js__WEBPACK_IMPORTED_MODULE_3__.Emitter();\n this._computed = 0;\n this._limited = false;\n }\n update(computed, limited) {\n if (computed !== this._computed || limited !== this._limited) {\n this._computed = computed;\n this._limited = limited;\n this._onDidChange.fire();\n }\n }\n}\n(0,_browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_8__.registerEditorContribution)(ColorDetector.ID, ColorDetector, 1 /* EditorContributionInstantiation.AfterFirstRender */);\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/contrib/colorPicker/browser/colorDetector.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/contrib/colorPicker/browser/colorHoverParticipant.js":
/*!*******************************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/contrib/colorPicker/browser/colorHoverParticipant.js ***!
\*******************************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ ColorHover: () => (/* binding */ ColorHover),\n/* harmony export */ ColorHoverParticipant: () => (/* binding */ ColorHoverParticipant),\n/* harmony export */ StandaloneColorPickerHover: () => (/* binding */ StandaloneColorPickerHover),\n/* harmony export */ StandaloneColorPickerParticipant: () => (/* binding */ StandaloneColorPickerParticipant)\n/* harmony export */ });\n/* harmony import */ var _base_common_async_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../../base/common/async.js */ \"./node_modules/monaco-editor/esm/vs/base/common/async.js\");\n/* harmony import */ var _base_common_cancellation_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../base/common/cancellation.js */ \"./node_modules/monaco-editor/esm/vs/base/common/cancellation.js\");\n/* harmony import */ var _base_common_color_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../../base/common/color.js */ \"./node_modules/monaco-editor/esm/vs/base/common/color.js\");\n/* harmony import */ var _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../../../base/common/lifecycle.js */ \"./node_modules/monaco-editor/esm/vs/base/common/lifecycle.js\");\n/* harmony import */ var _common_core_range_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../../common/core/range.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/core/range.js\");\n/* harmony import */ var _color_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./color.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/colorPicker/browser/color.js\");\n/* harmony import */ var _colorDetector_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ./colorDetector.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/colorPicker/browser/colorDetector.js\");\n/* harmony import */ var _colorPickerModel_js__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ./colorPickerModel.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/colorPicker/browser/colorPickerModel.js\");\n/* harmony import */ var _colorPickerWidget_js__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ./colorPickerWidget.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/colorPicker/browser/colorPickerWidget.js\");\n/* harmony import */ var _platform_theme_common_themeService_js__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ../../../../platform/theme/common/themeService.js */ \"./node_modules/monaco-editor/esm/vs/platform/theme/common/themeService.js\");\n/* harmony import */ var _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! ../../../../base/browser/dom.js */ \"./node_modules/monaco-editor/esm/vs/base/browser/dom.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\nvar __decorate = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\n return c > 3 && r && Object.defineProperty(target, key, r), r;\n};\nvar __param = (undefined && undefined.__param) || function (paramIndex, decorator) {\n return function (target, key) { decorator(target, key, paramIndex); }\n};\n\n\n\n\n\n\n\n\n\n\n\nclass ColorHover {\n constructor(owner, range, model, provider) {\n this.owner = owner;\n this.range = range;\n this.model = model;\n this.provider = provider;\n /**\n * Force the hover to always be rendered at this specific range,\n * even in the case of multiple hover parts.\n */\n this.forceShowAtRange = true;\n }\n isValidForHoverAnchor(anchor) {\n return (anchor.type === 1 /* HoverAnchorType.Range */\n && this.range.startColumn <= anchor.range.startColumn\n && this.range.endColumn >= anchor.range.endColumn);\n }\n}\nlet ColorHoverParticipant = class ColorHoverParticipant {\n constructor(_editor, _themeService) {\n this._editor = _editor;\n this._themeService = _themeService;\n this.hoverOrdinal = 2;\n }\n computeSync(_anchor, _lineDecorations) {\n return [];\n }\n computeAsync(anchor, lineDecorations, token) {\n return _base_common_async_js__WEBPACK_IMPORTED_MODULE_0__.AsyncIterableObject.fromPromise(this._computeAsync(anchor, lineDecorations, token));\n }\n async _computeAsync(_anchor, lineDecorations, _token) {\n if (!this._editor.hasModel()) {\n return [];\n }\n const colorDetector = _colorDetector_js__WEBPACK_IMPORTED_MODULE_6__.ColorDetector.get(this._editor);\n if (!colorDetector) {\n return [];\n }\n for (const d of lineDecorations) {\n if (!colorDetector.isColorDecoration(d)) {\n continue;\n }\n const colorData = colorDetector.getColorData(d.range.getStartPosition());\n if (colorData) {\n const colorHover = await _createColorHover(this, this._editor.getModel(), colorData.colorInfo, colorData.provider);\n return [colorHover];\n }\n }\n return [];\n }\n renderHoverParts(context, hoverParts) {\n return renderHoverParts(this, this._editor, this._themeService, hoverParts, context);\n }\n};\nColorHoverParticipant = __decorate([\n __param(1, _platform_theme_common_themeService_js__WEBPACK_IMPORTED_MODULE_9__.IThemeService)\n], ColorHoverParticipant);\n\nclass StandaloneColorPickerHover {\n constructor(owner, range, model, provider) {\n this.owner = owner;\n this.range = range;\n this.model = model;\n this.provider = provider;\n }\n}\nlet StandaloneColorPickerParticipant = class StandaloneColorPickerParticipant {\n constructor(_editor, _themeService) {\n this._editor = _editor;\n this._themeService = _themeService;\n this._color = null;\n }\n async createColorHover(defaultColorInfo, defaultColorProvider, colorProviderRegistry) {\n if (!this._editor.hasModel()) {\n return null;\n }\n const colorDetector = _colorDetector_js__WEBPACK_IMPORTED_MODULE_6__.ColorDetector.get(this._editor);\n if (!colorDetector) {\n return null;\n }\n const colors = await (0,_color_js__WEBPACK_IMPORTED_MODULE_5__.getColors)(colorProviderRegistry, this._editor.getModel(), _base_common_cancellation_js__WEBPACK_IMPORTED_MODULE_1__.CancellationToken.None);\n let foundColorInfo = null;\n let foundColorProvider = null;\n for (const colorData of colors) {\n const colorInfo = colorData.colorInfo;\n if (_common_core_range_js__WEBPACK_IMPORTED_MODULE_4__.Range.containsRange(colorInfo.range, defaultColorInfo.range)) {\n foundColorInfo = colorInfo;\n foundColorProvider = colorData.provider;\n }\n }\n const colorInfo = foundColorInfo !== null && foundColorInfo !== void 0 ? foundColorInfo : defaultColorInfo;\n const colorProvider = foundColorProvider !== null && foundColorProvider !== void 0 ? foundColorProvider : defaultColorProvider;\n const foundInEditor = !!foundColorInfo;\n return { colorHover: await _createColorHover(this, this._editor.getModel(), colorInfo, colorProvider), foundInEditor: foundInEditor };\n }\n async updateEditorModel(colorHoverData) {\n if (!this._editor.hasModel()) {\n return;\n }\n const colorPickerModel = colorHoverData.model;\n let range = new _common_core_range_js__WEBPACK_IMPORTED_MODULE_4__.Range(colorHoverData.range.startLineNumber, colorHoverData.range.startColumn, colorHoverData.range.endLineNumber, colorHoverData.range.endColumn);\n if (this._color) {\n await _updateColorPresentations(this._editor.getModel(), colorPickerModel, this._color, range, colorHoverData);\n range = _updateEditorModel(this._editor, range, colorPickerModel);\n }\n }\n renderHoverParts(context, hoverParts) {\n return renderHoverParts(this, this._editor, this._themeService, hoverParts, context);\n }\n set color(color) {\n this._color = color;\n }\n get color() {\n return this._color;\n }\n};\nStandaloneColorPickerParticipant = __decorate([\n __param(1, _platform_theme_common_themeService_js__WEBPACK_IMPORTED_MODULE_9__.IThemeService)\n], StandaloneColorPickerParticipant);\n\nasync function _createColorHover(participant, editorModel, colorInfo, provider) {\n const originalText = editorModel.getValueInRange(colorInfo.range);\n const { red, green, blue, alpha } = colorInfo.color;\n const rgba = new _base_common_color_js__WEBPACK_IMPORTED_MODULE_2__.RGBA(Math.round(red * 255), Math.round(green * 255), Math.round(blue * 255), alpha);\n const color = new _base_common_color_js__WEBPACK_IMPORTED_MODULE_2__.Color(rgba);\n const colorPresentations = await (0,_color_js__WEBPACK_IMPORTED_MODULE_5__.getColorPresentations)(editorModel, colorInfo, provider, _base_common_cancellation_js__WEBPACK_IMPORTED_MODULE_1__.CancellationToken.None);\n const model = new _colorPickerModel_js__WEBPACK_IMPORTED_MODULE_7__.ColorPickerModel(color, [], 0);\n model.colorPresentations = colorPresentations || [];\n model.guessColorPresentation(color, originalText);\n if (participant instanceof ColorHoverParticipant) {\n return new ColorHover(participant, _common_core_range_js__WEBPACK_IMPORTED_MODULE_4__.Range.lift(colorInfo.range), model, provider);\n }\n else {\n return new StandaloneColorPickerHover(participant, _common_core_range_js__WEBPACK_IMPORTED_MODULE_4__.Range.lift(colorInfo.range), model, provider);\n }\n}\nfunction renderHoverParts(participant, editor, themeService, hoverParts, context) {\n if (hoverParts.length === 0 || !editor.hasModel()) {\n return _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_3__.Disposable.None;\n }\n if (context.setMinimumDimensions) {\n const minimumHeight = editor.getOption(67 /* EditorOption.lineHeight */) + 8;\n context.setMinimumDimensions(new _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_10__.Dimension(302, minimumHeight));\n }\n const disposables = new _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_3__.DisposableStore();\n const colorHover = hoverParts[0];\n const editorModel = editor.getModel();\n const model = colorHover.model;\n const widget = disposables.add(new _colorPickerWidget_js__WEBPACK_IMPORTED_MODULE_8__.ColorPickerWidget(context.fragment, model, editor.getOption(142 /* EditorOption.pixelRatio */), themeService, participant instanceof StandaloneColorPickerParticipant));\n context.setColorPicker(widget);\n let editorUpdatedByColorPicker = false;\n let range = new _common_core_range_js__WEBPACK_IMPORTED_MODULE_4__.Range(colorHover.range.startLineNumber, colorHover.range.startColumn, colorHover.range.endLineNumber, colorHover.range.endColumn);\n if (participant instanceof StandaloneColorPickerParticipant) {\n const color = hoverParts[0].model.color;\n participant.color = color;\n _updateColorPresentations(editorModel, model, color, range, colorHover);\n disposables.add(model.onColorFlushed((color) => {\n participant.color = color;\n }));\n }\n else {\n disposables.add(model.onColorFlushed(async (color) => {\n await _updateColorPresentations(editorModel, model, color, range, colorHover);\n editorUpdatedByColorPicker = true;\n range = _updateEditorModel(editor, range, model);\n }));\n }\n disposables.add(model.onDidChangeColor((color) => {\n _updateColorPresentations(editorModel, model, color, range, colorHover);\n }));\n disposables.add(editor.onDidChangeModelContent((e) => {\n if (editorUpdatedByColorPicker) {\n editorUpdatedByColorPicker = false;\n }\n else {\n context.hide();\n editor.focus();\n }\n }));\n return disposables;\n}\nfunction _updateEditorModel(editor, range, model) {\n var _a, _b;\n const textEdits = [];\n const edit = (_a = model.presentation.textEdit) !== null && _a !== void 0 ? _a : { range, text: model.presentation.label, forceMoveMarkers: false };\n textEdits.push(edit);\n if (model.presentation.additionalTextEdits) {\n textEdits.push(...model.presentation.additionalTextEdits);\n }\n const replaceRange = _common_core_range_js__WEBPACK_IMPORTED_MODULE_4__.Range.lift(edit.range);\n const trackedRange = editor.getModel()._setTrackedRange(null, replaceRange, 3 /* TrackedRangeStickiness.GrowsOnlyWhenTypingAfter */);\n editor.executeEdits('colorpicker', textEdits);\n editor.pushUndoStop();\n return (_b = editor.getModel()._getTrackedRange(trackedRange)) !== null && _b !== void 0 ? _b : replaceRange;\n}\nasync function _updateColorPresentations(editorModel, colorPickerModel, color, range, colorHover) {\n const colorPresentations = await (0,_color_js__WEBPACK_IMPORTED_MODULE_5__.getColorPresentations)(editorModel, {\n range: range,\n color: {\n red: color.rgba.r / 255,\n green: color.rgba.g / 255,\n blue: color.rgba.b / 255,\n alpha: color.rgba.a\n }\n }, colorHover.provider, _base_common_cancellation_js__WEBPACK_IMPORTED_MODULE_1__.CancellationToken.None);\n colorPickerModel.colorPresentations = colorPresentations || [];\n}\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/contrib/colorPicker/browser/colorHoverParticipant.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/contrib/colorPicker/browser/colorPickerModel.js":
/*!**************************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/contrib/colorPicker/browser/colorPickerModel.js ***!
\**************************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ ColorPickerModel: () => (/* binding */ ColorPickerModel)\n/* harmony export */ });\n/* harmony import */ var _base_common_event_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../../base/common/event.js */ \"./node_modules/monaco-editor/esm/vs/base/common/event.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\nclass ColorPickerModel {\n get color() {\n return this._color;\n }\n set color(color) {\n if (this._color.equals(color)) {\n return;\n }\n this._color = color;\n this._onDidChangeColor.fire(color);\n }\n get presentation() { return this.colorPresentations[this.presentationIndex]; }\n get colorPresentations() {\n return this._colorPresentations;\n }\n set colorPresentations(colorPresentations) {\n this._colorPresentations = colorPresentations;\n if (this.presentationIndex > colorPresentations.length - 1) {\n this.presentationIndex = 0;\n }\n this._onDidChangePresentation.fire(this.presentation);\n }\n constructor(color, availableColorPresentations, presentationIndex) {\n this.presentationIndex = presentationIndex;\n this._onColorFlushed = new _base_common_event_js__WEBPACK_IMPORTED_MODULE_0__.Emitter();\n this.onColorFlushed = this._onColorFlushed.event;\n this._onDidChangeColor = new _base_common_event_js__WEBPACK_IMPORTED_MODULE_0__.Emitter();\n this.onDidChangeColor = this._onDidChangeColor.event;\n this._onDidChangePresentation = new _base_common_event_js__WEBPACK_IMPORTED_MODULE_0__.Emitter();\n this.onDidChangePresentation = this._onDidChangePresentation.event;\n this.originalColor = color;\n this._color = color;\n this._colorPresentations = availableColorPresentations;\n }\n selectNextColorPresentation() {\n this.presentationIndex = (this.presentationIndex + 1) % this.colorPresentations.length;\n this.flushColor();\n this._onDidChangePresentation.fire(this.presentation);\n }\n guessColorPresentation(color, originalText) {\n let presentationIndex = -1;\n for (let i = 0; i < this.colorPresentations.length; i++) {\n if (originalText.toLowerCase() === this.colorPresentations[i].label) {\n presentationIndex = i;\n break;\n }\n }\n if (presentationIndex === -1) {\n // check which color presentation text has same prefix as original text's prefix\n const originalTextPrefix = originalText.split('(')[0].toLowerCase();\n for (let i = 0; i < this.colorPresentations.length; i++) {\n if (this.colorPresentations[i].label.toLowerCase().startsWith(originalTextPrefix)) {\n presentationIndex = i;\n break;\n }\n }\n }\n if (presentationIndex !== -1 && presentationIndex !== this.presentationIndex) {\n this.presentationIndex = presentationIndex;\n this._onDidChangePresentation.fire(this.presentation);\n }\n }\n flushColor() {\n this._onColorFlushed.fire(this._color);\n }\n}\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/contrib/colorPicker/browser/colorPickerModel.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/contrib/colorPicker/browser/colorPickerWidget.js":
/*!***************************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/contrib/colorPicker/browser/colorPickerWidget.js ***!
\***************************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ ColorPickerBody: () => (/* binding */ ColorPickerBody),\n/* harmony export */ ColorPickerHeader: () => (/* binding */ ColorPickerHeader),\n/* harmony export */ ColorPickerWidget: () => (/* binding */ ColorPickerWidget),\n/* harmony export */ InsertButton: () => (/* binding */ InsertButton)\n/* harmony export */ });\n/* harmony import */ var _base_browser_pixelRatio_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../../base/browser/pixelRatio.js */ \"./node_modules/monaco-editor/esm/vs/base/browser/pixelRatio.js\");\n/* harmony import */ var _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../base/browser/dom.js */ \"./node_modules/monaco-editor/esm/vs/base/browser/dom.js\");\n/* harmony import */ var _base_browser_globalPointerMoveMonitor_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../../base/browser/globalPointerMoveMonitor.js */ \"./node_modules/monaco-editor/esm/vs/base/browser/globalPointerMoveMonitor.js\");\n/* harmony import */ var _base_browser_ui_widget_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../../../base/browser/ui/widget.js */ \"./node_modules/monaco-editor/esm/vs/base/browser/ui/widget.js\");\n/* harmony import */ var _base_common_codicons_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../../../base/common/codicons.js */ \"./node_modules/monaco-editor/esm/vs/base/common/codicons.js\");\n/* harmony import */ var _base_common_color_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../../../../base/common/color.js */ \"./node_modules/monaco-editor/esm/vs/base/common/color.js\");\n/* harmony import */ var _base_common_event_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../../../../base/common/event.js */ \"./node_modules/monaco-editor/esm/vs/base/common/event.js\");\n/* harmony import */ var _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ../../../../base/common/lifecycle.js */ \"./node_modules/monaco-editor/esm/vs/base/common/lifecycle.js\");\n/* harmony import */ var _base_common_themables_js__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ../../../../base/common/themables.js */ \"./node_modules/monaco-editor/esm/vs/base/common/themables.js\");\n/* harmony import */ var _colorPicker_css__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ./colorPicker.css */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/colorPicker/browser/colorPicker.css\");\n/* harmony import */ var _nls_js__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! ../../../../nls.js */ \"./node_modules/monaco-editor/esm/vs/nls.js\");\n/* harmony import */ var _platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(/*! ../../../../platform/theme/common/colorRegistry.js */ \"./node_modules/monaco-editor/esm/vs/platform/theme/common/colorRegistry.js\");\n/* harmony import */ var _platform_theme_common_iconRegistry_js__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(/*! ../../../../platform/theme/common/iconRegistry.js */ \"./node_modules/monaco-editor/esm/vs/platform/theme/common/iconRegistry.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n\n\n\n\n\n\n\n\n\n\n\n\nconst $ = _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_1__.$;\nclass ColorPickerHeader extends _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_7__.Disposable {\n constructor(container, model, themeService, showingStandaloneColorPicker = false) {\n super();\n this.model = model;\n this.showingStandaloneColorPicker = showingStandaloneColorPicker;\n this._closeButton = null;\n this._domNode = $('.colorpicker-header');\n _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_1__.append(container, this._domNode);\n this._pickedColorNode = _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_1__.append(this._domNode, $('.picked-color'));\n _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_1__.append(this._pickedColorNode, $('span.codicon.codicon-color-mode'));\n this._pickedColorPresentation = _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_1__.append(this._pickedColorNode, document.createElement('span'));\n this._pickedColorPresentation.classList.add('picked-color-presentation');\n const tooltip = (0,_nls_js__WEBPACK_IMPORTED_MODULE_10__.localize)('clickToToggleColorOptions', \"Click to toggle color options (rgb/hsl/hex)\");\n this._pickedColorNode.setAttribute('title', tooltip);\n this._originalColorNode = _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_1__.append(this._domNode, $('.original-color'));\n this._originalColorNode.style.backgroundColor = _base_common_color_js__WEBPACK_IMPORTED_MODULE_5__.Color.Format.CSS.format(this.model.originalColor) || '';\n this.backgroundColor = themeService.getColorTheme().getColor(_platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_11__.editorHoverBackground) || _base_common_color_js__WEBPACK_IMPORTED_MODULE_5__.Color.white;\n this._register(themeService.onDidColorThemeChange(theme => {\n this.backgroundColor = theme.getColor(_platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_11__.editorHoverBackground) || _base_common_color_js__WEBPACK_IMPORTED_MODULE_5__.Color.white;\n }));\n this._register(_base_browser_dom_js__WEBPACK_IMPORTED_MODULE_1__.addDisposableListener(this._pickedColorNode, _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_1__.EventType.CLICK, () => this.model.selectNextColorPresentation()));\n this._register(_base_browser_dom_js__WEBPACK_IMPORTED_MODULE_1__.addDisposableListener(this._originalColorNode, _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_1__.EventType.CLICK, () => {\n this.model.color = this.model.originalColor;\n this.model.flushColor();\n }));\n this._register(model.onDidChangeColor(this.onDidChangeColor, this));\n this._register(model.onDidChangePresentation(this.onDidChangePresentation, this));\n this._pickedColorNode.style.backgroundColor = _base_common_color_js__WEBPACK_IMPORTED_MODULE_5__.Color.Format.CSS.format(model.color) || '';\n this._pickedColorNode.classList.toggle('light', model.color.rgba.a < 0.5 ? this.backgroundColor.isLighter() : model.color.isLighter());\n this.onDidChangeColor(this.model.color);\n // When the color picker widget is a standalone color picker widget, then add a close button\n if (this.showingStandaloneColorPicker) {\n this._domNode.classList.add('standalone-colorpicker');\n this._closeButton = this._register(new CloseButton(this._domNode));\n }\n }\n get closeButton() {\n return this._closeButton;\n }\n get pickedColorNode() {\n return this._pickedColorNode;\n }\n get originalColorNode() {\n return this._originalColorNode;\n }\n onDidChangeColor(color) {\n this._pickedColorNode.style.backgroundColor = _base_common_color_js__WEBPACK_IMPORTED_MODULE_5__.Color.Format.CSS.format(color) || '';\n this._pickedColorNode.classList.toggle('light', color.rgba.a < 0.5 ? this.backgroundColor.isLighter() : color.isLighter());\n this.onDidChangePresentation();\n }\n onDidChangePresentation() {\n this._pickedColorPresentation.textContent = this.model.presentation ? this.model.presentation.label : '';\n }\n}\nclass CloseButton extends _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_7__.Disposable {\n constructor(container) {\n super();\n this._onClicked = this._register(new _base_common_event_js__WEBPACK_IMPORTED_MODULE_6__.Emitter());\n this.onClicked = this._onClicked.event;\n this._button = document.createElement('div');\n this._button.classList.add('close-button');\n _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_1__.append(container, this._button);\n const innerDiv = document.createElement('div');\n innerDiv.classList.add('close-button-inner-div');\n _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_1__.append(this._button, innerDiv);\n const closeButton = _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_1__.append(innerDiv, $('.button' + _base_common_themables_js__WEBPACK_IMPORTED_MODULE_8__.ThemeIcon.asCSSSelector((0,_platform_theme_common_iconRegistry_js__WEBPACK_IMPORTED_MODULE_12__.registerIcon)('color-picker-close', _base_common_codicons_js__WEBPACK_IMPORTED_MODULE_4__.Codicon.close, (0,_nls_js__WEBPACK_IMPORTED_MODULE_10__.localize)('closeIcon', 'Icon to close the color picker')))));\n closeButton.classList.add('close-icon');\n this._register(_base_browser_dom_js__WEBPACK_IMPORTED_MODULE_1__.addDisposableListener(this._button, _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_1__.EventType.CLICK, () => {\n this._onClicked.fire();\n }));\n }\n}\nclass ColorPickerBody extends _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_7__.Disposable {\n constructor(container, model, pixelRatio, isStandaloneColorPicker = false) {\n super();\n this.model = model;\n this.pixelRatio = pixelRatio;\n this._insertButton = null;\n this._domNode = $('.colorpicker-body');\n _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_1__.append(container, this._domNode);\n this._saturationBox = new SaturationBox(this._domNode, this.model, this.pixelRatio);\n this._register(this._saturationBox);\n this._register(this._saturationBox.onDidChange(this.onDidSaturationValueChange, this));\n this._register(this._saturationBox.onColorFlushed(this.flushColor, this));\n this._opacityStrip = new OpacityStrip(this._domNode, this.model, isStandaloneColorPicker);\n this._register(this._opacityStrip);\n this._register(this._opacityStrip.onDidChange(this.onDidOpacityChange, this));\n this._register(this._opacityStrip.onColorFlushed(this.flushColor, this));\n this._hueStrip = new HueStrip(this._domNode, this.model, isStandaloneColorPicker);\n this._register(this._hueStrip);\n this._register(this._hueStrip.onDidChange(this.onDidHueChange, this));\n this._register(this._hueStrip.onColorFlushed(this.flushColor, this));\n if (isStandaloneColorPicker) {\n this._insertButton = this._register(new InsertButton(this._domNode));\n this._domNode.classList.add('standalone-colorpicker');\n }\n }\n flushColor() {\n this.model.flushColor();\n }\n onDidSaturationValueChange({ s, v }) {\n const hsva = this.model.color.hsva;\n this.model.color = new _base_common_color_js__WEBPACK_IMPORTED_MODULE_5__.Color(new _base_common_color_js__WEBPACK_IMPORTED_MODULE_5__.HSVA(hsva.h, s, v, hsva.a));\n }\n onDidOpacityChange(a) {\n const hsva = this.model.color.hsva;\n this.model.color = new _base_common_color_js__WEBPACK_IMPORTED_MODULE_5__.Color(new _base_common_color_js__WEBPACK_IMPORTED_MODULE_5__.HSVA(hsva.h, hsva.s, hsva.v, a));\n }\n onDidHueChange(value) {\n const hsva = this.model.color.hsva;\n const h = (1 - value) * 360;\n this.model.color = new _base_common_color_js__WEBPACK_IMPORTED_MODULE_5__.Color(new _base_common_color_js__WEBPACK_IMPORTED_MODULE_5__.HSVA(h === 360 ? 0 : h, hsva.s, hsva.v, hsva.a));\n }\n get domNode() {\n return this._domNode;\n }\n get saturationBox() {\n return this._saturationBox;\n }\n get enterButton() {\n return this._insertButton;\n }\n layout() {\n this._saturationBox.layout();\n this._opacityStrip.layout();\n this._hueStrip.layout();\n }\n}\nclass SaturationBox extends _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_7__.Disposable {\n constructor(container, model, pixelRatio) {\n super();\n this.model = model;\n this.pixelRatio = pixelRatio;\n this._onDidChange = new _base_common_event_js__WEBPACK_IMPORTED_MODULE_6__.Emitter();\n this.onDidChange = this._onDidChange.event;\n this._onColorFlushed = new _base_common_event_js__WEBPACK_IMPORTED_MODULE_6__.Emitter();\n this.onColorFlushed = this._onColorFlushed.event;\n this._domNode = $('.saturation-wrap');\n _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_1__.append(container, this._domNode);\n // Create canvas, draw selected color\n this._canvas = document.createElement('canvas');\n this._canvas.className = 'saturation-box';\n _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_1__.append(this._domNode, this._canvas);\n // Add selection circle\n this.selection = $('.saturation-selection');\n _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_1__.append(this._domNode, this.selection);\n this.layout();\n this._register(_base_browser_dom_js__WEBPACK_IMPORTED_MODULE_1__.addDisposableListener(this._domNode, _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_1__.EventType.POINTER_DOWN, e => this.onPointerDown(e)));\n this._register(this.model.onDidChangeColor(this.onDidChangeColor, this));\n this.monitor = null;\n }\n get domNode() {\n return this._domNode;\n }\n onPointerDown(e) {\n if (!e.target || !(e.target instanceof Element)) {\n return;\n }\n this.monitor = this._register(new _base_browser_globalPointerMoveMonitor_js__WEBPACK_IMPORTED_MODULE_2__.GlobalPointerMoveMonitor());\n const origin = _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_1__.getDomNodePagePosition(this._domNode);\n if (e.target !== this.selection) {\n this.onDidChangePosition(e.offsetX, e.offsetY);\n }\n this.monitor.startMonitoring(e.target, e.pointerId, e.buttons, event => this.onDidChangePosition(event.pageX - origin.left, event.pageY - origin.top), () => null);\n const pointerUpListener = _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_1__.addDisposableListener(e.target.ownerDocument, _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_1__.EventType.POINTER_UP, () => {\n this._onColorFlushed.fire();\n pointerUpListener.dispose();\n if (this.monitor) {\n this.monitor.stopMonitoring(true);\n this.monitor = null;\n }\n }, true);\n }\n onDidChangePosition(left, top) {\n const s = Math.max(0, Math.min(1, left / this.width));\n const v = Math.max(0, Math.min(1, 1 - (top / this.height)));\n this.paintSelection(s, v);\n this._onDidChange.fire({ s, v });\n }\n layout() {\n this.width = this._domNode.offsetWidth;\n this.height = this._domNode.offsetHeight;\n this._canvas.width = this.width * this.pixelRatio;\n this._canvas.height = this.height * this.pixelRatio;\n this.paint();\n const hsva = this.model.color.hsva;\n this.paintSelection(hsva.s, hsva.v);\n }\n paint() {\n const hsva = this.model.color.hsva;\n const saturatedColor = new _base_common_color_js__WEBPACK_IMPORTED_MODULE_5__.Color(new _base_common_color_js__WEBPACK_IMPORTED_MODULE_5__.HSVA(hsva.h, 1, 1, 1));\n const ctx = this._canvas.getContext('2d');\n const whiteGradient = ctx.createLinearGradient(0, 0, this._canvas.width, 0);\n whiteGradient.addColorStop(0, 'rgba(255, 255, 255, 1)');\n whiteGradient.addColorStop(0.5, 'rgba(255, 255, 255, 0.5)');\n whiteGradient.addColorStop(1, 'rgba(255, 255, 255, 0)');\n const blackGradient = ctx.createLinearGradient(0, 0, 0, this._canvas.height);\n blackGradient.addColorStop(0, 'rgba(0, 0, 0, 0)');\n blackGradient.addColorStop(1, 'rgba(0, 0, 0, 1)');\n ctx.rect(0, 0, this._canvas.width, this._canvas.height);\n ctx.fillStyle = _base_common_color_js__WEBPACK_IMPORTED_MODULE_5__.Color.Format.CSS.format(saturatedColor);\n ctx.fill();\n ctx.fillStyle = whiteGradient;\n ctx.fill();\n ctx.fillStyle = blackGradient;\n ctx.fill();\n }\n paintSelection(s, v) {\n this.selection.style.left = `${s * this.width}px`;\n this.selection.style.top = `${this.height - v * this.height}px`;\n }\n onDidChangeColor(color) {\n if (this.monitor && this.monitor.isMonitoring()) {\n return;\n }\n this.paint();\n const hsva = color.hsva;\n this.paintSelection(hsva.s, hsva.v);\n }\n}\nclass Strip extends _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_7__.Disposable {\n constructor(container, model, showingStandaloneColorPicker = false) {\n super();\n this.model = model;\n this._onDidChange = new _base_common_event_js__WEBPACK_IMPORTED_MODULE_6__.Emitter();\n this.onDidChange = this._onDidChange.event;\n this._onColorFlushed = new _base_common_event_js__WEBPACK_IMPORTED_MODULE_6__.Emitter();\n this.onColorFlushed = this._onColorFlushed.event;\n if (showingStandaloneColorPicker) {\n this.domNode = _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_1__.append(container, $('.standalone-strip'));\n this.overlay = _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_1__.append(this.domNode, $('.standalone-overlay'));\n }\n else {\n this.domNode = _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_1__.append(container, $('.strip'));\n this.overlay = _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_1__.append(this.domNode, $('.overlay'));\n }\n this.slider = _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_1__.append(this.domNode, $('.slider'));\n this.slider.style.top = `0px`;\n this._register(_base_browser_dom_js__WEBPACK_IMPORTED_MODULE_1__.addDisposableListener(this.domNode, _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_1__.EventType.POINTER_DOWN, e => this.onPointerDown(e)));\n this._register(model.onDidChangeColor(this.onDidChangeColor, this));\n this.layout();\n }\n layout() {\n this.height = this.domNode.offsetHeight - this.slider.offsetHeight;\n const value = this.getValue(this.model.color);\n this.updateSliderPosition(value);\n }\n onDidChangeColor(color) {\n const value = this.getValue(color);\n this.updateSliderPosition(value);\n }\n onPointerDown(e) {\n if (!e.target || !(e.target instanceof Element)) {\n return;\n }\n const monitor = this._register(new _base_browser_globalPointerMoveMonitor_js__WEBPACK_IMPORTED_MODULE_2__.GlobalPointerMoveMonitor());\n const origin = _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_1__.getDomNodePagePosition(this.domNode);\n this.domNode.classList.add('grabbing');\n if (e.target !== this.slider) {\n this.onDidChangeTop(e.offsetY);\n }\n monitor.startMonitoring(e.target, e.pointerId, e.buttons, event => this.onDidChangeTop(event.pageY - origin.top), () => null);\n const pointerUpListener = _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_1__.addDisposableListener(e.target.ownerDocument, _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_1__.EventType.POINTER_UP, () => {\n this._onColorFlushed.fire();\n pointerUpListener.dispose();\n monitor.stopMonitoring(true);\n this.domNode.classList.remove('grabbing');\n }, true);\n }\n onDidChangeTop(top) {\n const value = Math.max(0, Math.min(1, 1 - (top / this.height)));\n this.updateSliderPosition(value);\n this._onDidChange.fire(value);\n }\n updateSliderPosition(value) {\n this.slider.style.top = `${(1 - value) * this.height}px`;\n }\n}\nclass OpacityStrip extends Strip {\n constructor(container, model, showingStandaloneColorPicker = false) {\n super(container, model, showingStandaloneColorPicker);\n this.domNode.classList.add('opacity-strip');\n this.onDidChangeColor(this.model.color);\n }\n onDidChangeColor(color) {\n super.onDidChangeColor(color);\n const { r, g, b } = color.rgba;\n const opaque = new _base_common_color_js__WEBPACK_IMPORTED_MODULE_5__.Color(new _base_common_color_js__WEBPACK_IMPORTED_MODULE_5__.RGBA(r, g, b, 1));\n const transparent = new _base_common_color_js__WEBPACK_IMPORTED_MODULE_5__.Color(new _base_common_color_js__WEBPACK_IMPORTED_MODULE_5__.RGBA(r, g, b, 0));\n this.overlay.style.background = `linear-gradient(to bottom, ${opaque} 0%, ${transparent} 100%)`;\n }\n getValue(color) {\n return color.hsva.a;\n }\n}\nclass HueStrip extends Strip {\n constructor(container, model, showingStandaloneColorPicker = false) {\n super(container, model, showingStandaloneColorPicker);\n this.domNode.classList.add('hue-strip');\n }\n getValue(color) {\n return 1 - (color.hsva.h / 360);\n }\n}\nclass InsertButton extends _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_7__.Disposable {\n constructor(container) {\n super();\n this._onClicked = this._register(new _base_common_event_js__WEBPACK_IMPORTED_MODULE_6__.Emitter());\n this.onClicked = this._onClicked.event;\n this._button = _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_1__.append(container, document.createElement('button'));\n this._button.classList.add('insert-button');\n this._button.textContent = 'Insert';\n this._register(_base_browser_dom_js__WEBPACK_IMPORTED_MODULE_1__.addDisposableListener(this._button, _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_1__.EventType.CLICK, () => {\n this._onClicked.fire();\n }));\n }\n get button() {\n return this._button;\n }\n}\nclass ColorPickerWidget extends _base_browser_ui_widget_js__WEBPACK_IMPORTED_MODULE_3__.Widget {\n constructor(container, model, pixelRatio, themeService, standaloneColorPicker = false) {\n super();\n this.model = model;\n this.pixelRatio = pixelRatio;\n this._register(_base_browser_pixelRatio_js__WEBPACK_IMPORTED_MODULE_0__.PixelRatio.getInstance(_base_browser_dom_js__WEBPACK_IMPORTED_MODULE_1__.getWindow(container)).onDidChange(() => this.layout()));\n const element = $('.colorpicker-widget');\n container.appendChild(element);\n this.header = this._register(new ColorPickerHeader(element, this.model, themeService, standaloneColorPicker));\n this.body = this._register(new ColorPickerBody(element, this.model, this.pixelRatio, standaloneColorPicker));\n }\n layout() {\n this.body.layout();\n }\n}\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/contrib/colorPicker/browser/colorPickerWidget.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/contrib/colorPicker/browser/defaultDocumentColorProvider.js":
/*!**************************************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/contrib/colorPicker/browser/defaultDocumentColorProvider.js ***!
\**************************************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ DefaultDocumentColorProvider: () => (/* binding */ DefaultDocumentColorProvider)\n/* harmony export */ });\n/* harmony import */ var _base_common_color_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../../base/common/color.js */ \"./node_modules/monaco-editor/esm/vs/base/common/color.js\");\n/* harmony import */ var _browser_services_editorWorkerService_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../browser/services/editorWorkerService.js */ \"./node_modules/monaco-editor/esm/vs/editor/browser/services/editorWorkerService.js\");\n/* harmony import */ var _common_services_model_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../common/services/model.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/services/model.js\");\n/* harmony import */ var _common_languages_languageConfigurationRegistry_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../../common/languages/languageConfigurationRegistry.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/languages/languageConfigurationRegistry.js\");\n/* harmony import */ var _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../../../base/common/lifecycle.js */ \"./node_modules/monaco-editor/esm/vs/base/common/lifecycle.js\");\n/* harmony import */ var _common_services_languageFeatures_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../../../common/services/languageFeatures.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/services/languageFeatures.js\");\n/* harmony import */ var _common_editorFeatures_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../../../common/editorFeatures.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/editorFeatures.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\nvar __decorate = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\n return c > 3 && r && Object.defineProperty(target, key, r), r;\n};\nvar __param = (undefined && undefined.__param) || function (paramIndex, decorator) {\n return function (target, key) { decorator(target, key, paramIndex); }\n};\n\n\n\n\n\n\n\nclass DefaultDocumentColorProvider {\n constructor(modelService, languageConfigurationService) {\n this._editorWorkerClient = new _browser_services_editorWorkerService_js__WEBPACK_IMPORTED_MODULE_1__.EditorWorkerClient(modelService, false, 'editorWorkerService', languageConfigurationService);\n }\n async provideDocumentColors(model, _token) {\n return this._editorWorkerClient.computeDefaultDocumentColors(model.uri);\n }\n provideColorPresentations(_model, colorInfo, _token) {\n const range = colorInfo.range;\n const colorFromInfo = colorInfo.color;\n const alpha = colorFromInfo.alpha;\n const color = new _base_common_color_js__WEBPACK_IMPORTED_MODULE_0__.Color(new _base_common_color_js__WEBPACK_IMPORTED_MODULE_0__.RGBA(Math.round(255 * colorFromInfo.red), Math.round(255 * colorFromInfo.green), Math.round(255 * colorFromInfo.blue), alpha));\n const rgb = alpha ? _base_common_color_js__WEBPACK_IMPORTED_MODULE_0__.Color.Format.CSS.formatRGB(color) : _base_common_color_js__WEBPACK_IMPORTED_MODULE_0__.Color.Format.CSS.formatRGBA(color);\n const hsl = alpha ? _base_common_color_js__WEBPACK_IMPORTED_MODULE_0__.Color.Format.CSS.formatHSL(color) : _base_common_color_js__WEBPACK_IMPORTED_MODULE_0__.Color.Format.CSS.formatHSLA(color);\n const hex = alpha ? _base_common_color_js__WEBPACK_IMPORTED_MODULE_0__.Color.Format.CSS.formatHex(color) : _base_common_color_js__WEBPACK_IMPORTED_MODULE_0__.Color.Format.CSS.formatHexA(color);\n const colorPresentations = [];\n colorPresentations.push({ label: rgb, textEdit: { range: range, text: rgb } });\n colorPresentations.push({ label: hsl, textEdit: { range: range, text: hsl } });\n colorPresentations.push({ label: hex, textEdit: { range: range, text: hex } });\n return colorPresentations;\n }\n}\nlet DefaultDocumentColorProviderFeature = class DefaultDocumentColorProviderFeature extends _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_4__.Disposable {\n constructor(_modelService, _languageConfigurationService, _languageFeaturesService) {\n super();\n this._register(_languageFeaturesService.colorProvider.register('*', new DefaultDocumentColorProvider(_modelService, _languageConfigurationService)));\n }\n};\nDefaultDocumentColorProviderFeature = __decorate([\n __param(0, _common_services_model_js__WEBPACK_IMPORTED_MODULE_2__.IModelService),\n __param(1, _common_languages_languageConfigurationRegistry_js__WEBPACK_IMPORTED_MODULE_3__.ILanguageConfigurationService),\n __param(2, _common_services_languageFeatures_js__WEBPACK_IMPORTED_MODULE_5__.ILanguageFeaturesService)\n], DefaultDocumentColorProviderFeature);\n(0,_common_editorFeatures_js__WEBPACK_IMPORTED_MODULE_6__.registerEditorFeature)(DefaultDocumentColorProviderFeature);\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/contrib/colorPicker/browser/defaultDocumentColorProvider.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/contrib/colorPicker/browser/standaloneColorPickerActions.js":
/*!**************************************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/contrib/colorPicker/browser/standaloneColorPickerActions.js ***!
\**************************************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ ShowOrFocusStandaloneColorPicker: () => (/* binding */ ShowOrFocusStandaloneColorPicker)\n/* harmony export */ });\n/* harmony import */ var _browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../browser/editorExtensions.js */ \"./node_modules/monaco-editor/esm/vs/editor/browser/editorExtensions.js\");\n/* harmony import */ var _nls_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../nls.js */ \"./node_modules/monaco-editor/esm/vs/nls.js\");\n/* harmony import */ var _standaloneColorPickerWidget_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./standaloneColorPickerWidget.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/colorPicker/browser/standaloneColorPickerWidget.js\");\n/* harmony import */ var _common_editorContextKeys_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../../common/editorContextKeys.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/editorContextKeys.js\");\n/* harmony import */ var _platform_actions_common_actions_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../../../platform/actions/common/actions.js */ \"./node_modules/monaco-editor/esm/vs/platform/actions/common/actions.js\");\n/* harmony import */ var _colorPicker_css__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./colorPicker.css */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/colorPicker/browser/colorPicker.css\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n\n\n\n\n\nclass ShowOrFocusStandaloneColorPicker extends _browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_0__.EditorAction2 {\n constructor() {\n super({\n id: 'editor.action.showOrFocusStandaloneColorPicker',\n title: {\n ...(0,_nls_js__WEBPACK_IMPORTED_MODULE_1__.localize2)('showOrFocusStandaloneColorPicker', \"Show or Focus Standalone Color Picker\"),\n mnemonicTitle: (0,_nls_js__WEBPACK_IMPORTED_MODULE_1__.localize)({ key: 'mishowOrFocusStandaloneColorPicker', comment: ['&& denotes a mnemonic'] }, \"&&Show or Focus Standalone Color Picker\"),\n },\n precondition: undefined,\n menu: [\n { id: _platform_actions_common_actions_js__WEBPACK_IMPORTED_MODULE_4__.MenuId.CommandPalette },\n ]\n });\n }\n runEditorCommand(_accessor, editor) {\n var _a;\n (_a = _standaloneColorPickerWidget_js__WEBPACK_IMPORTED_MODULE_2__.StandaloneColorPickerController.get(editor)) === null || _a === void 0 ? void 0 : _a.showOrFocus();\n }\n}\nclass HideStandaloneColorPicker extends _browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_0__.EditorAction {\n constructor() {\n super({\n id: 'editor.action.hideColorPicker',\n label: (0,_nls_js__WEBPACK_IMPORTED_MODULE_1__.localize)({\n key: 'hideColorPicker',\n comment: [\n 'Action that hides the color picker'\n ]\n }, \"Hide the Color Picker\"),\n alias: 'Hide the Color Picker',\n precondition: _common_editorContextKeys_js__WEBPACK_IMPORTED_MODULE_3__.EditorContextKeys.standaloneColorPickerVisible.isEqualTo(true),\n kbOpts: {\n primary: 9 /* KeyCode.Escape */,\n weight: 100 /* KeybindingWeight.EditorContrib */\n }\n });\n }\n run(_accessor, editor) {\n var _a;\n (_a = _standaloneColorPickerWidget_js__WEBPACK_IMPORTED_MODULE_2__.StandaloneColorPickerController.get(editor)) === null || _a === void 0 ? void 0 : _a.hide();\n }\n}\nclass InsertColorWithStandaloneColorPicker extends _browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_0__.EditorAction {\n constructor() {\n super({\n id: 'editor.action.insertColorWithStandaloneColorPicker',\n label: (0,_nls_js__WEBPACK_IMPORTED_MODULE_1__.localize)({\n key: 'insertColorWithStandaloneColorPicker',\n comment: [\n 'Action that inserts color with standalone color picker'\n ]\n }, \"Insert Color with Standalone Color Picker\"),\n alias: 'Insert Color with Standalone Color Picker',\n precondition: _common_editorContextKeys_js__WEBPACK_IMPORTED_MODULE_3__.EditorContextKeys.standaloneColorPickerFocused.isEqualTo(true),\n kbOpts: {\n primary: 3 /* KeyCode.Enter */,\n weight: 100 /* KeybindingWeight.EditorContrib */\n }\n });\n }\n run(_accessor, editor) {\n var _a;\n (_a = _standaloneColorPickerWidget_js__WEBPACK_IMPORTED_MODULE_2__.StandaloneColorPickerController.get(editor)) === null || _a === void 0 ? void 0 : _a.insertColor();\n }\n}\n(0,_browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_0__.registerEditorAction)(HideStandaloneColorPicker);\n(0,_browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_0__.registerEditorAction)(InsertColorWithStandaloneColorPicker);\n(0,_platform_actions_common_actions_js__WEBPACK_IMPORTED_MODULE_4__.registerAction2)(ShowOrFocusStandaloneColorPicker);\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/contrib/colorPicker/browser/standaloneColorPickerActions.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/contrib/colorPicker/browser/standaloneColorPickerWidget.js":
/*!*************************************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/contrib/colorPicker/browser/standaloneColorPickerWidget.js ***!
\*************************************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ StandaloneColorPickerController: () => (/* binding */ StandaloneColorPickerController),\n/* harmony export */ StandaloneColorPickerWidget: () => (/* binding */ StandaloneColorPickerWidget)\n/* harmony export */ });\n/* harmony import */ var _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../../base/common/lifecycle.js */ \"./node_modules/monaco-editor/esm/vs/base/common/lifecycle.js\");\n/* harmony import */ var _colorHoverParticipant_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./colorHoverParticipant.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/colorPicker/browser/colorHoverParticipant.js\");\n/* harmony import */ var _platform_instantiation_common_instantiation_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../../platform/instantiation/common/instantiation.js */ \"./node_modules/monaco-editor/esm/vs/platform/instantiation/common/instantiation.js\");\n/* harmony import */ var _hover_browser_contentHover_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../hover/browser/contentHover.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/hover/browser/contentHover.js\");\n/* harmony import */ var _platform_keybinding_common_keybinding_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../../../platform/keybinding/common/keybinding.js */ \"./node_modules/monaco-editor/esm/vs/platform/keybinding/common/keybinding.js\");\n/* harmony import */ var _base_common_event_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../../../../base/common/event.js */ \"./node_modules/monaco-editor/esm/vs/base/common/event.js\");\n/* harmony import */ var _common_services_languageFeatures_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../../../common/services/languageFeatures.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/services/languageFeatures.js\");\n/* harmony import */ var _browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ../../../browser/editorExtensions.js */ \"./node_modules/monaco-editor/esm/vs/editor/browser/editorExtensions.js\");\n/* harmony import */ var _common_editorContextKeys_js__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ../../../common/editorContextKeys.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/editorContextKeys.js\");\n/* harmony import */ var _platform_contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ../../../../platform/contextkey/common/contextkey.js */ \"./node_modules/monaco-editor/esm/vs/platform/contextkey/common/contextkey.js\");\n/* harmony import */ var _common_services_model_js__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! ../../../common/services/model.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/services/model.js\");\n/* harmony import */ var _common_languages_languageConfigurationRegistry_js__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(/*! ../../../common/languages/languageConfigurationRegistry.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/languages/languageConfigurationRegistry.js\");\n/* harmony import */ var _defaultDocumentColorProvider_js__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(/*! ./defaultDocumentColorProvider.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/colorPicker/browser/defaultDocumentColorProvider.js\");\n/* harmony import */ var _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_13__ = __webpack_require__(/*! ../../../../base/browser/dom.js */ \"./node_modules/monaco-editor/esm/vs/base/browser/dom.js\");\n/* harmony import */ var _colorPicker_css__WEBPACK_IMPORTED_MODULE_14__ = __webpack_require__(/*! ./colorPicker.css */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/colorPicker/browser/colorPicker.css\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\nvar __decorate = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\n return c > 3 && r && Object.defineProperty(target, key, r), r;\n};\nvar __param = (undefined && undefined.__param) || function (paramIndex, decorator) {\n return function (target, key) { decorator(target, key, paramIndex); }\n};\nvar StandaloneColorPickerController_1, StandaloneColorPickerWidget_1;\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlet StandaloneColorPickerController = StandaloneColorPickerController_1 = class StandaloneColorPickerController extends _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_0__.Disposable {\n constructor(_editor, _contextKeyService, _modelService, _keybindingService, _instantiationService, _languageFeatureService, _languageConfigurationService) {\n super();\n this._editor = _editor;\n this._modelService = _modelService;\n this._keybindingService = _keybindingService;\n this._instantiationService = _instantiationService;\n this._languageFeatureService = _languageFeatureService;\n this._languageConfigurationService = _languageConfigurationService;\n this._standaloneColorPickerWidget = null;\n this._standaloneColorPickerVisible = _common_editorContextKeys_js__WEBPACK_IMPORTED_MODULE_8__.EditorContextKeys.standaloneColorPickerVisible.bindTo(_contextKeyService);\n this._standaloneColorPickerFocused = _common_editorContextKeys_js__WEBPACK_IMPORTED_MODULE_8__.EditorContextKeys.standaloneColorPickerFocused.bindTo(_contextKeyService);\n }\n showOrFocus() {\n var _a;\n if (!this._editor.hasModel()) {\n return;\n }\n if (!this._standaloneColorPickerVisible.get()) {\n this._standaloneColorPickerWidget = new StandaloneColorPickerWidget(this._editor, this._standaloneColorPickerVisible, this._standaloneColorPickerFocused, this._instantiationService, this._modelService, this._keybindingService, this._languageFeatureService, this._languageConfigurationService);\n }\n else if (!this._standaloneColorPickerFocused.get()) {\n (_a = this._standaloneColorPickerWidget) === null || _a === void 0 ? void 0 : _a.focus();\n }\n }\n hide() {\n var _a;\n this._standaloneColorPickerFocused.set(false);\n this._standaloneColorPickerVisible.set(false);\n (_a = this._standaloneColorPickerWidget) === null || _a === void 0 ? void 0 : _a.hide();\n this._editor.focus();\n }\n insertColor() {\n var _a;\n (_a = this._standaloneColorPickerWidget) === null || _a === void 0 ? void 0 : _a.updateEditor();\n this.hide();\n }\n static get(editor) {\n return editor.getContribution(StandaloneColorPickerController_1.ID);\n }\n};\nStandaloneColorPickerController.ID = 'editor.contrib.standaloneColorPickerController';\nStandaloneColorPickerController = StandaloneColorPickerController_1 = __decorate([\n __param(1, _platform_contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_9__.IContextKeyService),\n __param(2, _common_services_model_js__WEBPACK_IMPORTED_MODULE_10__.IModelService),\n __param(3, _platform_keybinding_common_keybinding_js__WEBPACK_IMPORTED_MODULE_4__.IKeybindingService),\n __param(4, _platform_instantiation_common_instantiation_js__WEBPACK_IMPORTED_MODULE_2__.IInstantiationService),\n __param(5, _common_services_languageFeatures_js__WEBPACK_IMPORTED_MODULE_6__.ILanguageFeaturesService),\n __param(6, _common_languages_languageConfigurationRegistry_js__WEBPACK_IMPORTED_MODULE_11__.ILanguageConfigurationService)\n], StandaloneColorPickerController);\n\n(0,_browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_7__.registerEditorContribution)(StandaloneColorPickerController.ID, StandaloneColorPickerController, 1 /* EditorContributionInstantiation.AfterFirstRender */);\nconst PADDING = 8;\nconst CLOSE_BUTTON_WIDTH = 22;\nlet StandaloneColorPickerWidget = StandaloneColorPickerWidget_1 = class StandaloneColorPickerWidget extends _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_0__.Disposable {\n constructor(_editor, _standaloneColorPickerVisible, _standaloneColorPickerFocused, _instantiationService, _modelService, _keybindingService, _languageFeaturesService, _languageConfigurationService) {\n var _a;\n super();\n this._editor = _editor;\n this._standaloneColorPickerVisible = _standaloneColorPickerVisible;\n this._standaloneColorPickerFocused = _standaloneColorPickerFocused;\n this._modelService = _modelService;\n this._keybindingService = _keybindingService;\n this._languageFeaturesService = _languageFeaturesService;\n this._languageConfigurationService = _languageConfigurationService;\n this.allowEditorOverflow = true;\n this._position = undefined;\n this._body = document.createElement('div');\n this._colorHover = null;\n this._selectionSetInEditor = false;\n this._onResult = this._register(new _base_common_event_js__WEBPACK_IMPORTED_MODULE_5__.Emitter());\n this.onResult = this._onResult.event;\n this._standaloneColorPickerVisible.set(true);\n this._standaloneColorPickerParticipant = _instantiationService.createInstance(_colorHoverParticipant_js__WEBPACK_IMPORTED_MODULE_1__.StandaloneColorPickerParticipant, this._editor);\n this._position = (_a = this._editor._getViewModel()) === null || _a === void 0 ? void 0 : _a.getPrimaryCursorState().modelState.position;\n const editorSelection = this._editor.getSelection();\n const selection = editorSelection ?\n {\n startLineNumber: editorSelection.startLineNumber,\n startColumn: editorSelection.startColumn,\n endLineNumber: editorSelection.endLineNumber,\n endColumn: editorSelection.endColumn\n } : { startLineNumber: 0, endLineNumber: 0, endColumn: 0, startColumn: 0 };\n const focusTracker = this._register(_base_browser_dom_js__WEBPACK_IMPORTED_MODULE_13__.trackFocus(this._body));\n this._register(focusTracker.onDidBlur(_ => {\n this.hide();\n }));\n this._register(focusTracker.onDidFocus(_ => {\n this.focus();\n }));\n // When the cursor position changes, hide the color picker\n this._register(this._editor.onDidChangeCursorPosition(() => {\n // Do not hide the color picker when the cursor changes position due to the keybindings\n if (!this._selectionSetInEditor) {\n this.hide();\n }\n else {\n this._selectionSetInEditor = false;\n }\n }));\n this._register(this._editor.onMouseMove((e) => {\n var _a;\n const classList = (_a = e.target.element) === null || _a === void 0 ? void 0 : _a.classList;\n if (classList && classList.contains('colorpicker-color-decoration')) {\n this.hide();\n }\n }));\n this._register(this.onResult((result) => {\n this._render(result.value, result.foundInEditor);\n }));\n this._start(selection);\n this._body.style.zIndex = '50';\n this._editor.addContentWidget(this);\n }\n updateEditor() {\n if (this._colorHover) {\n this._standaloneColorPickerParticipant.updateEditorModel(this._colorHover);\n }\n }\n getId() {\n return StandaloneColorPickerWidget_1.ID;\n }\n getDomNode() {\n return this._body;\n }\n getPosition() {\n if (!this._position) {\n return null;\n }\n const positionPreference = this._editor.getOption(60 /* EditorOption.hover */).above;\n return {\n position: this._position,\n secondaryPosition: this._position,\n preference: positionPreference ? [1 /* ContentWidgetPositionPreference.ABOVE */, 2 /* ContentWidgetPositionPreference.BELOW */] : [2 /* ContentWidgetPositionPreference.BELOW */, 1 /* ContentWidgetPositionPreference.ABOVE */],\n positionAffinity: 2 /* PositionAffinity.None */\n };\n }\n hide() {\n this.dispose();\n this._standaloneColorPickerVisible.set(false);\n this._standaloneColorPickerFocused.set(false);\n this._editor.removeContentWidget(this);\n this._editor.focus();\n }\n focus() {\n this._standaloneColorPickerFocused.set(true);\n this._body.focus();\n }\n async _start(selection) {\n const computeAsyncResult = await this._computeAsync(selection);\n if (!computeAsyncResult) {\n return;\n }\n this._onResult.fire(new StandaloneColorPickerResult(computeAsyncResult.result, computeAsyncResult.foundInEditor));\n }\n async _computeAsync(range) {\n if (!this._editor.hasModel()) {\n return null;\n }\n const colorInfo = {\n range: range,\n color: { red: 0, green: 0, blue: 0, alpha: 1 }\n };\n const colorHoverResult = await this._standaloneColorPickerParticipant.createColorHover(colorInfo, new _defaultDocumentColorProvider_js__WEBPACK_IMPORTED_MODULE_12__.DefaultDocumentColorProvider(this._modelService, this._languageConfigurationService), this._languageFeaturesService.colorProvider);\n if (!colorHoverResult) {\n return null;\n }\n return { result: colorHoverResult.colorHover, foundInEditor: colorHoverResult.foundInEditor };\n }\n _render(colorHover, foundInEditor) {\n const fragment = document.createDocumentFragment();\n const statusBar = this._register(new _hover_browser_contentHover_js__WEBPACK_IMPORTED_MODULE_3__.EditorHoverStatusBar(this._keybindingService));\n let colorPickerWidget;\n const context = {\n fragment,\n statusBar,\n setColorPicker: (widget) => colorPickerWidget = widget,\n onContentsChanged: () => { },\n hide: () => this.hide()\n };\n this._colorHover = colorHover;\n this._register(this._standaloneColorPickerParticipant.renderHoverParts(context, [colorHover]));\n if (colorPickerWidget === undefined) {\n return;\n }\n this._body.classList.add('standalone-colorpicker-body');\n this._body.style.maxHeight = Math.max(this._editor.getLayoutInfo().height / 4, 250) + 'px';\n this._body.style.maxWidth = Math.max(this._editor.getLayoutInfo().width * 0.66, 500) + 'px';\n this._body.tabIndex = 0;\n this._body.appendChild(fragment);\n colorPickerWidget.layout();\n const colorPickerBody = colorPickerWidget.body;\n const saturationBoxWidth = colorPickerBody.saturationBox.domNode.clientWidth;\n const widthOfOriginalColorBox = colorPickerBody.domNode.clientWidth - saturationBoxWidth - CLOSE_BUTTON_WIDTH - PADDING;\n const enterButton = colorPickerWidget.body.enterButton;\n enterButton === null || enterButton === void 0 ? void 0 : enterButton.onClicked(() => {\n this.updateEditor();\n this.hide();\n });\n const colorPickerHeader = colorPickerWidget.header;\n const pickedColorNode = colorPickerHeader.pickedColorNode;\n pickedColorNode.style.width = saturationBoxWidth + PADDING + 'px';\n const originalColorNode = colorPickerHeader.originalColorNode;\n originalColorNode.style.width = widthOfOriginalColorBox + 'px';\n const closeButton = colorPickerWidget.header.closeButton;\n closeButton === null || closeButton === void 0 ? void 0 : closeButton.onClicked(() => {\n this.hide();\n });\n // When found in the editor, highlight the selection in the editor\n if (foundInEditor) {\n if (enterButton) {\n enterButton.button.textContent = 'Replace';\n }\n this._selectionSetInEditor = true;\n this._editor.setSelection(colorHover.range);\n }\n this._editor.layoutContentWidget(this);\n }\n};\nStandaloneColorPickerWidget.ID = 'editor.contrib.standaloneColorPickerWidget';\nStandaloneColorPickerWidget = StandaloneColorPickerWidget_1 = __decorate([\n __param(3, _platform_instantiation_common_instantiation_js__WEBPACK_IMPORTED_MODULE_2__.IInstantiationService),\n __param(4, _common_services_model_js__WEBPACK_IMPORTED_MODULE_10__.IModelService),\n __param(5, _platform_keybinding_common_keybinding_js__WEBPACK_IMPORTED_MODULE_4__.IKeybindingService),\n __param(6, _common_services_languageFeatures_js__WEBPACK_IMPORTED_MODULE_6__.ILanguageFeaturesService),\n __param(7, _common_languages_languageConfigurationRegistry_js__WEBPACK_IMPORTED_MODULE_11__.ILanguageConfigurationService)\n], StandaloneColorPickerWidget);\n\nclass StandaloneColorPickerResult {\n // The color picker result consists of: an array of color results and a boolean indicating if the color was found in the editor\n constructor(value, foundInEditor) {\n this.value = value;\n this.foundInEditor = foundInEditor;\n }\n}\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/contrib/colorPicker/browser/standaloneColorPickerWidget.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/contrib/comment/browser/blockCommentCommand.js":
/*!*************************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/contrib/comment/browser/blockCommentCommand.js ***!
\*************************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ BlockCommentCommand: () => (/* binding */ BlockCommentCommand)\n/* harmony export */ });\n/* harmony import */ var _common_core_editOperation_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../common/core/editOperation.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/core/editOperation.js\");\n/* harmony import */ var _common_core_position_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../common/core/position.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/core/position.js\");\n/* harmony import */ var _common_core_range_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../common/core/range.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/core/range.js\");\n/* harmony import */ var _common_core_selection_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../../common/core/selection.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/core/selection.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n\n\n\nclass BlockCommentCommand {\n constructor(selection, insertSpace, languageConfigurationService) {\n this.languageConfigurationService = languageConfigurationService;\n this._selection = selection;\n this._insertSpace = insertSpace;\n this._usedEndToken = null;\n }\n static _haystackHasNeedleAtOffset(haystack, needle, offset) {\n if (offset < 0) {\n return false;\n }\n const needleLength = needle.length;\n const haystackLength = haystack.length;\n if (offset + needleLength > haystackLength) {\n return false;\n }\n for (let i = 0; i < needleLength; i++) {\n const codeA = haystack.charCodeAt(offset + i);\n const codeB = needle.charCodeAt(i);\n if (codeA === codeB) {\n continue;\n }\n if (codeA >= 65 /* CharCode.A */ && codeA <= 90 /* CharCode.Z */ && codeA + 32 === codeB) {\n // codeA is upper-case variant of codeB\n continue;\n }\n if (codeB >= 65 /* CharCode.A */ && codeB <= 90 /* CharCode.Z */ && codeB + 32 === codeA) {\n // codeB is upper-case variant of codeA\n continue;\n }\n return false;\n }\n return true;\n }\n _createOperationsForBlockComment(selection, startToken, endToken, insertSpace, model, builder) {\n const startLineNumber = selection.startLineNumber;\n const startColumn = selection.startColumn;\n const endLineNumber = selection.endLineNumber;\n const endColumn = selection.endColumn;\n const startLineText = model.getLineContent(startLineNumber);\n const endLineText = model.getLineContent(endLineNumber);\n let startTokenIndex = startLineText.lastIndexOf(startToken, startColumn - 1 + startToken.length);\n let endTokenIndex = endLineText.indexOf(endToken, endColumn - 1 - endToken.length);\n if (startTokenIndex !== -1 && endTokenIndex !== -1) {\n if (startLineNumber === endLineNumber) {\n const lineBetweenTokens = startLineText.substring(startTokenIndex + startToken.length, endTokenIndex);\n if (lineBetweenTokens.indexOf(endToken) >= 0) {\n // force to add a block comment\n startTokenIndex = -1;\n endTokenIndex = -1;\n }\n }\n else {\n const startLineAfterStartToken = startLineText.substring(startTokenIndex + startToken.length);\n const endLineBeforeEndToken = endLineText.substring(0, endTokenIndex);\n if (startLineAfterStartToken.indexOf(endToken) >= 0 || endLineBeforeEndToken.indexOf(endToken) >= 0) {\n // force to add a block comment\n startTokenIndex = -1;\n endTokenIndex = -1;\n }\n }\n }\n let ops;\n if (startTokenIndex !== -1 && endTokenIndex !== -1) {\n // Consider spaces as part of the comment tokens\n if (insertSpace && startTokenIndex + startToken.length < startLineText.length && startLineText.charCodeAt(startTokenIndex + startToken.length) === 32 /* CharCode.Space */) {\n // Pretend the start token contains a trailing space\n startToken = startToken + ' ';\n }\n if (insertSpace && endTokenIndex > 0 && endLineText.charCodeAt(endTokenIndex - 1) === 32 /* CharCode.Space */) {\n // Pretend the end token contains a leading space\n endToken = ' ' + endToken;\n endTokenIndex -= 1;\n }\n ops = BlockCommentCommand._createRemoveBlockCommentOperations(new _common_core_range_js__WEBPACK_IMPORTED_MODULE_2__.Range(startLineNumber, startTokenIndex + startToken.length + 1, endLineNumber, endTokenIndex + 1), startToken, endToken);\n }\n else {\n ops = BlockCommentCommand._createAddBlockCommentOperations(selection, startToken, endToken, this._insertSpace);\n this._usedEndToken = ops.length === 1 ? endToken : null;\n }\n for (const op of ops) {\n builder.addTrackedEditOperation(op.range, op.text);\n }\n }\n static _createRemoveBlockCommentOperations(r, startToken, endToken) {\n const res = [];\n if (!_common_core_range_js__WEBPACK_IMPORTED_MODULE_2__.Range.isEmpty(r)) {\n // Remove block comment start\n res.push(_common_core_editOperation_js__WEBPACK_IMPORTED_MODULE_0__.EditOperation.delete(new _common_core_range_js__WEBPACK_IMPORTED_MODULE_2__.Range(r.startLineNumber, r.startColumn - startToken.length, r.startLineNumber, r.startColumn)));\n // Remove block comment end\n res.push(_common_core_editOperation_js__WEBPACK_IMPORTED_MODULE_0__.EditOperation.delete(new _common_core_range_js__WEBPACK_IMPORTED_MODULE_2__.Range(r.endLineNumber, r.endColumn, r.endLineNumber, r.endColumn + endToken.length)));\n }\n else {\n // Remove both continuously\n res.push(_common_core_editOperation_js__WEBPACK_IMPORTED_MODULE_0__.EditOperation.delete(new _common_core_range_js__WEBPACK_IMPORTED_MODULE_2__.Range(r.startLineNumber, r.startColumn - startToken.length, r.endLineNumber, r.endColumn + endToken.length)));\n }\n return res;\n }\n static _createAddBlockCommentOperations(r, startToken, endToken, insertSpace) {\n const res = [];\n if (!_common_core_range_js__WEBPACK_IMPORTED_MODULE_2__.Range.isEmpty(r)) {\n // Insert block comment start\n res.push(_common_core_editOperation_js__WEBPACK_IMPORTED_MODULE_0__.EditOperation.insert(new _common_core_position_js__WEBPACK_IMPORTED_MODULE_1__.Position(r.startLineNumber, r.startColumn), startToken + (insertSpace ? ' ' : '')));\n // Insert block comment end\n res.push(_common_core_editOperation_js__WEBPACK_IMPORTED_MODULE_0__.EditOperation.insert(new _common_core_position_js__WEBPACK_IMPORTED_MODULE_1__.Position(r.endLineNumber, r.endColumn), (insertSpace ? ' ' : '') + endToken));\n }\n else {\n // Insert both continuously\n res.push(_common_core_editOperation_js__WEBPACK_IMPORTED_MODULE_0__.EditOperation.replace(new _common_core_range_js__WEBPACK_IMPORTED_MODULE_2__.Range(r.startLineNumber, r.startColumn, r.endLineNumber, r.endColumn), startToken + ' ' + endToken));\n }\n return res;\n }\n getEditOperations(model, builder) {\n const startLineNumber = this._selection.startLineNumber;\n const startColumn = this._selection.startColumn;\n model.tokenization.tokenizeIfCheap(startLineNumber);\n const languageId = model.getLanguageIdAtPosition(startLineNumber, startColumn);\n const config = this.languageConfigurationService.getLanguageConfiguration(languageId).comments;\n if (!config || !config.blockCommentStartToken || !config.blockCommentEndToken) {\n // Mode does not support block comments\n return;\n }\n this._createOperationsForBlockComment(this._selection, config.blockCommentStartToken, config.blockCommentEndToken, this._insertSpace, model, builder);\n }\n computeCursorState(model, helper) {\n const inverseEditOperations = helper.getInverseEditOperations();\n if (inverseEditOperations.length === 2) {\n const startTokenEditOperation = inverseEditOperations[0];\n const endTokenEditOperation = inverseEditOperations[1];\n return new _common_core_selection_js__WEBPACK_IMPORTED_MODULE_3__.Selection(startTokenEditOperation.range.endLineNumber, startTokenEditOperation.range.endColumn, endTokenEditOperation.range.startLineNumber, endTokenEditOperation.range.startColumn);\n }\n else {\n const srcRange = inverseEditOperations[0].range;\n const deltaColumn = this._usedEndToken ? -this._usedEndToken.length - 1 : 0; // minus 1 space before endToken\n return new _common_core_selection_js__WEBPACK_IMPORTED_MODULE_3__.Selection(srcRange.endLineNumber, srcRange.endColumn + deltaColumn, srcRange.endLineNumber, srcRange.endColumn + deltaColumn);\n }\n }\n}\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/contrib/comment/browser/blockCommentCommand.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/contrib/comment/browser/comment.js":
/*!*************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/contrib/comment/browser/comment.js ***!
\*************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var _base_common_keyCodes_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../../base/common/keyCodes.js */ \"./node_modules/monaco-editor/esm/vs/base/common/keyCodes.js\");\n/* harmony import */ var _browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../browser/editorExtensions.js */ \"./node_modules/monaco-editor/esm/vs/editor/browser/editorExtensions.js\");\n/* harmony import */ var _common_core_range_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../common/core/range.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/core/range.js\");\n/* harmony import */ var _common_editorContextKeys_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../../common/editorContextKeys.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/editorContextKeys.js\");\n/* harmony import */ var _common_languages_languageConfigurationRegistry_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../../common/languages/languageConfigurationRegistry.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/languages/languageConfigurationRegistry.js\");\n/* harmony import */ var _blockCommentCommand_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./blockCommentCommand.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/comment/browser/blockCommentCommand.js\");\n/* harmony import */ var _lineCommentCommand_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ./lineCommentCommand.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/comment/browser/lineCommentCommand.js\");\n/* harmony import */ var _nls_js__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ../../../../nls.js */ \"./node_modules/monaco-editor/esm/vs/nls.js\");\n/* harmony import */ var _platform_actions_common_actions_js__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ../../../../platform/actions/common/actions.js */ \"./node_modules/monaco-editor/esm/vs/platform/actions/common/actions.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n\n\n\n\n\n\n\n\nclass CommentLineAction extends _browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_1__.EditorAction {\n constructor(type, opts) {\n super(opts);\n this._type = type;\n }\n run(accessor, editor) {\n const languageConfigurationService = accessor.get(_common_languages_languageConfigurationRegistry_js__WEBPACK_IMPORTED_MODULE_4__.ILanguageConfigurationService);\n if (!editor.hasModel()) {\n return;\n }\n const model = editor.getModel();\n const commands = [];\n const modelOptions = model.getOptions();\n const commentsOptions = editor.getOption(23 /* EditorOption.comments */);\n const selections = editor.getSelections().map((selection, index) => ({ selection, index, ignoreFirstLine: false }));\n selections.sort((a, b) => _common_core_range_js__WEBPACK_IMPORTED_MODULE_2__.Range.compareRangesUsingStarts(a.selection, b.selection));\n // Remove selections that would result in copying the same line\n let prev = selections[0];\n for (let i = 1; i < selections.length; i++) {\n const curr = selections[i];\n if (prev.selection.endLineNumber === curr.selection.startLineNumber) {\n // these two selections would copy the same line\n if (prev.index < curr.index) {\n // prev wins\n curr.ignoreFirstLine = true;\n }\n else {\n // curr wins\n prev.ignoreFirstLine = true;\n prev = curr;\n }\n }\n }\n for (const selection of selections) {\n commands.push(new _lineCommentCommand_js__WEBPACK_IMPORTED_MODULE_6__.LineCommentCommand(languageConfigurationService, selection.selection, modelOptions.tabSize, this._type, commentsOptions.insertSpace, commentsOptions.ignoreEmptyLines, selection.ignoreFirstLine));\n }\n editor.pushUndoStop();\n editor.executeCommands(this.id, commands);\n editor.pushUndoStop();\n }\n}\nclass ToggleCommentLineAction extends CommentLineAction {\n constructor() {\n super(0 /* Type.Toggle */, {\n id: 'editor.action.commentLine',\n label: _nls_js__WEBPACK_IMPORTED_MODULE_7__.localize('comment.line', \"Toggle Line Comment\"),\n alias: 'Toggle Line Comment',\n precondition: _common_editorContextKeys_js__WEBPACK_IMPORTED_MODULE_3__.EditorContextKeys.writable,\n kbOpts: {\n kbExpr: _common_editorContextKeys_js__WEBPACK_IMPORTED_MODULE_3__.EditorContextKeys.editorTextFocus,\n primary: 2048 /* KeyMod.CtrlCmd */ | 90 /* KeyCode.Slash */,\n weight: 100 /* KeybindingWeight.EditorContrib */\n },\n menuOpts: {\n menuId: _platform_actions_common_actions_js__WEBPACK_IMPORTED_MODULE_8__.MenuId.MenubarEditMenu,\n group: '5_insert',\n title: _nls_js__WEBPACK_IMPORTED_MODULE_7__.localize({ key: 'miToggleLineComment', comment: ['&& denotes a mnemonic'] }, \"&&Toggle Line Comment\"),\n order: 1\n }\n });\n }\n}\nclass AddLineCommentAction extends CommentLineAction {\n constructor() {\n super(1 /* Type.ForceAdd */, {\n id: 'editor.action.addCommentLine',\n label: _nls_js__WEBPACK_IMPORTED_MODULE_7__.localize('comment.line.add', \"Add Line Comment\"),\n alias: 'Add Line Comment',\n precondition: _common_editorContextKeys_js__WEBPACK_IMPORTED_MODULE_3__.EditorContextKeys.writable,\n kbOpts: {\n kbExpr: _common_editorContextKeys_js__WEBPACK_IMPORTED_MODULE_3__.EditorContextKeys.editorTextFocus,\n primary: (0,_base_common_keyCodes_js__WEBPACK_IMPORTED_MODULE_0__.KeyChord)(2048 /* KeyMod.CtrlCmd */ | 41 /* KeyCode.KeyK */, 2048 /* KeyMod.CtrlCmd */ | 33 /* KeyCode.KeyC */),\n weight: 100 /* KeybindingWeight.EditorContrib */\n }\n });\n }\n}\nclass RemoveLineCommentAction extends CommentLineAction {\n constructor() {\n super(2 /* Type.ForceRemove */, {\n id: 'editor.action.removeCommentLine',\n label: _nls_js__WEBPACK_IMPORTED_MODULE_7__.localize('comment.line.remove', \"Remove Line Comment\"),\n alias: 'Remove Line Comment',\n precondition: _common_editorContextKeys_js__WEBPACK_IMPORTED_MODULE_3__.EditorContextKeys.writable,\n kbOpts: {\n kbExpr: _common_editorContextKeys_js__WEBPACK_IMPORTED_MODULE_3__.EditorContextKeys.editorTextFocus,\n primary: (0,_base_common_keyCodes_js__WEBPACK_IMPORTED_MODULE_0__.KeyChord)(2048 /* KeyMod.CtrlCmd */ | 41 /* KeyCode.KeyK */, 2048 /* KeyMod.CtrlCmd */ | 51 /* KeyCode.KeyU */),\n weight: 100 /* KeybindingWeight.EditorContrib */\n }\n });\n }\n}\nclass BlockCommentAction extends _browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_1__.EditorAction {\n constructor() {\n super({\n id: 'editor.action.blockComment',\n label: _nls_js__WEBPACK_IMPORTED_MODULE_7__.localize('comment.block', \"Toggle Block Comment\"),\n alias: 'Toggle Block Comment',\n precondition: _common_editorContextKeys_js__WEBPACK_IMPORTED_MODULE_3__.EditorContextKeys.writable,\n kbOpts: {\n kbExpr: _common_editorContextKeys_js__WEBPACK_IMPORTED_MODULE_3__.EditorContextKeys.editorTextFocus,\n primary: 1024 /* KeyMod.Shift */ | 512 /* KeyMod.Alt */ | 31 /* KeyCode.KeyA */,\n linux: { primary: 2048 /* KeyMod.CtrlCmd */ | 1024 /* KeyMod.Shift */ | 31 /* KeyCode.KeyA */ },\n weight: 100 /* KeybindingWeight.EditorContrib */\n },\n menuOpts: {\n menuId: _platform_actions_common_actions_js__WEBPACK_IMPORTED_MODULE_8__.MenuId.MenubarEditMenu,\n group: '5_insert',\n title: _nls_js__WEBPACK_IMPORTED_MODULE_7__.localize({ key: 'miToggleBlockComment', comment: ['&& denotes a mnemonic'] }, \"Toggle &&Block Comment\"),\n order: 2\n }\n });\n }\n run(accessor, editor) {\n const languageConfigurationService = accessor.get(_common_languages_languageConfigurationRegistry_js__WEBPACK_IMPORTED_MODULE_4__.ILanguageConfigurationService);\n if (!editor.hasModel()) {\n return;\n }\n const commentsOptions = editor.getOption(23 /* EditorOption.comments */);\n const commands = [];\n const selections = editor.getSelections();\n for (const selection of selections) {\n commands.push(new _blockCommentCommand_js__WEBPACK_IMPORTED_MODULE_5__.BlockCommentCommand(selection, commentsOptions.insertSpace, languageConfigurationService));\n }\n editor.pushUndoStop();\n editor.executeCommands(this.id, commands);\n editor.pushUndoStop();\n }\n}\n(0,_browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_1__.registerEditorAction)(ToggleCommentLineAction);\n(0,_browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_1__.registerEditorAction)(AddLineCommentAction);\n(0,_browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_1__.registerEditorAction)(RemoveLineCommentAction);\n(0,_browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_1__.registerEditorAction)(BlockCommentAction);\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/contrib/comment/browser/comment.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/contrib/comment/browser/lineCommentCommand.js":
/*!************************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/contrib/comment/browser/lineCommentCommand.js ***!
\************************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ LineCommentCommand: () => (/* binding */ LineCommentCommand)\n/* harmony export */ });\n/* harmony import */ var _base_common_strings_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../../base/common/strings.js */ \"./node_modules/monaco-editor/esm/vs/base/common/strings.js\");\n/* harmony import */ var _common_core_editOperation_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../common/core/editOperation.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/core/editOperation.js\");\n/* harmony import */ var _common_core_position_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../common/core/position.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/core/position.js\");\n/* harmony import */ var _common_core_range_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../../common/core/range.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/core/range.js\");\n/* harmony import */ var _common_core_selection_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../../common/core/selection.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/core/selection.js\");\n/* harmony import */ var _blockCommentCommand_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./blockCommentCommand.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/comment/browser/blockCommentCommand.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n\n\n\n\n\nclass LineCommentCommand {\n constructor(languageConfigurationService, selection, tabSize, type, insertSpace, ignoreEmptyLines, ignoreFirstLine) {\n this.languageConfigurationService = languageConfigurationService;\n this._selection = selection;\n this._tabSize = tabSize;\n this._type = type;\n this._insertSpace = insertSpace;\n this._selectionId = null;\n this._deltaColumn = 0;\n this._moveEndPositionDown = false;\n this._ignoreEmptyLines = ignoreEmptyLines;\n this._ignoreFirstLine = ignoreFirstLine || false;\n }\n /**\n * Do an initial pass over the lines and gather info about the line comment string.\n * Returns null if any of the lines doesn't support a line comment string.\n */\n static _gatherPreflightCommentStrings(model, startLineNumber, endLineNumber, languageConfigurationService) {\n model.tokenization.tokenizeIfCheap(startLineNumber);\n const languageId = model.getLanguageIdAtPosition(startLineNumber, 1);\n const config = languageConfigurationService.getLanguageConfiguration(languageId).comments;\n const commentStr = (config ? config.lineCommentToken : null);\n if (!commentStr) {\n // Mode does not support line comments\n return null;\n }\n const lines = [];\n for (let i = 0, lineCount = endLineNumber - startLineNumber + 1; i < lineCount; i++) {\n lines[i] = {\n ignore: false,\n commentStr: commentStr,\n commentStrOffset: 0,\n commentStrLength: commentStr.length\n };\n }\n return lines;\n }\n /**\n * Analyze lines and decide which lines are relevant and what the toggle should do.\n * Also, build up several offsets and lengths useful in the generation of editor operations.\n */\n static _analyzeLines(type, insertSpace, model, lines, startLineNumber, ignoreEmptyLines, ignoreFirstLine, languageConfigurationService) {\n let onlyWhitespaceLines = true;\n let shouldRemoveComments;\n if (type === 0 /* Type.Toggle */) {\n shouldRemoveComments = true;\n }\n else if (type === 1 /* Type.ForceAdd */) {\n shouldRemoveComments = false;\n }\n else {\n shouldRemoveComments = true;\n }\n for (let i = 0, lineCount = lines.length; i < lineCount; i++) {\n const lineData = lines[i];\n const lineNumber = startLineNumber + i;\n if (lineNumber === startLineNumber && ignoreFirstLine) {\n // first line ignored\n lineData.ignore = true;\n continue;\n }\n const lineContent = model.getLineContent(lineNumber);\n const lineContentStartOffset = _base_common_strings_js__WEBPACK_IMPORTED_MODULE_0__.firstNonWhitespaceIndex(lineContent);\n if (lineContentStartOffset === -1) {\n // Empty or whitespace only line\n lineData.ignore = ignoreEmptyLines;\n lineData.commentStrOffset = lineContent.length;\n continue;\n }\n onlyWhitespaceLines = false;\n lineData.ignore = false;\n lineData.commentStrOffset = lineContentStartOffset;\n if (shouldRemoveComments && !_blockCommentCommand_js__WEBPACK_IMPORTED_MODULE_5__.BlockCommentCommand._haystackHasNeedleAtOffset(lineContent, lineData.commentStr, lineContentStartOffset)) {\n if (type === 0 /* Type.Toggle */) {\n // Every line so far has been a line comment, but this one is not\n shouldRemoveComments = false;\n }\n else if (type === 1 /* Type.ForceAdd */) {\n // Will not happen\n }\n else {\n lineData.ignore = true;\n }\n }\n if (shouldRemoveComments && insertSpace) {\n // Remove a following space if present\n const commentStrEndOffset = lineContentStartOffset + lineData.commentStrLength;\n if (commentStrEndOffset < lineContent.length && lineContent.charCodeAt(commentStrEndOffset) === 32 /* CharCode.Space */) {\n lineData.commentStrLength += 1;\n }\n }\n }\n if (type === 0 /* Type.Toggle */ && onlyWhitespaceLines) {\n // For only whitespace lines, we insert comments\n shouldRemoveComments = false;\n // Also, no longer ignore them\n for (let i = 0, lineCount = lines.length; i < lineCount; i++) {\n lines[i].ignore = false;\n }\n }\n return {\n supported: true,\n shouldRemoveComments: shouldRemoveComments,\n lines: lines\n };\n }\n /**\n * Analyze all lines and decide exactly what to do => not supported | insert line comments | remove line comments\n */\n static _gatherPreflightData(type, insertSpace, model, startLineNumber, endLineNumber, ignoreEmptyLines, ignoreFirstLine, languageConfigurationService) {\n const lines = LineCommentCommand._gatherPreflightCommentStrings(model, startLineNumber, endLineNumber, languageConfigurationService);\n if (lines === null) {\n return {\n supported: false\n };\n }\n return LineCommentCommand._analyzeLines(type, insertSpace, model, lines, startLineNumber, ignoreEmptyLines, ignoreFirstLine, languageConfigurationService);\n }\n /**\n * Given a successful analysis, execute either insert line comments, either remove line comments\n */\n _executeLineComments(model, builder, data, s) {\n let ops;\n if (data.shouldRemoveComments) {\n ops = LineCommentCommand._createRemoveLineCommentsOperations(data.lines, s.startLineNumber);\n }\n else {\n LineCommentCommand._normalizeInsertionPoint(model, data.lines, s.startLineNumber, this._tabSize);\n ops = this._createAddLineCommentsOperations(data.lines, s.startLineNumber);\n }\n const cursorPosition = new _common_core_position_js__WEBPACK_IMPORTED_MODULE_2__.Position(s.positionLineNumber, s.positionColumn);\n for (let i = 0, len = ops.length; i < len; i++) {\n builder.addEditOperation(ops[i].range, ops[i].text);\n if (_common_core_range_js__WEBPACK_IMPORTED_MODULE_3__.Range.isEmpty(ops[i].range) && _common_core_range_js__WEBPACK_IMPORTED_MODULE_3__.Range.getStartPosition(ops[i].range).equals(cursorPosition)) {\n const lineContent = model.getLineContent(cursorPosition.lineNumber);\n if (lineContent.length + 1 === cursorPosition.column) {\n this._deltaColumn = (ops[i].text || '').length;\n }\n }\n }\n this._selectionId = builder.trackSelection(s);\n }\n _attemptRemoveBlockComment(model, s, startToken, endToken) {\n let startLineNumber = s.startLineNumber;\n let endLineNumber = s.endLineNumber;\n const startTokenAllowedBeforeColumn = endToken.length + Math.max(model.getLineFirstNonWhitespaceColumn(s.startLineNumber), s.startColumn);\n let startTokenIndex = model.getLineContent(startLineNumber).lastIndexOf(startToken, startTokenAllowedBeforeColumn - 1);\n let endTokenIndex = model.getLineContent(endLineNumber).indexOf(endToken, s.endColumn - 1 - startToken.length);\n if (startTokenIndex !== -1 && endTokenIndex === -1) {\n endTokenIndex = model.getLineContent(startLineNumber).indexOf(endToken, startTokenIndex + startToken.length);\n endLineNumber = startLineNumber;\n }\n if (startTokenIndex === -1 && endTokenIndex !== -1) {\n startTokenIndex = model.getLineContent(endLineNumber).lastIndexOf(startToken, endTokenIndex);\n startLineNumber = endLineNumber;\n }\n if (s.isEmpty() && (startTokenIndex === -1 || endTokenIndex === -1)) {\n startTokenIndex = model.getLineContent(startLineNumber).indexOf(startToken);\n if (startTokenIndex !== -1) {\n endTokenIndex = model.getLineContent(startLineNumber).indexOf(endToken, startTokenIndex + startToken.length);\n }\n }\n // We have to adjust to possible inner white space.\n // For Space after startToken, add Space to startToken - range math will work out.\n if (startTokenIndex !== -1 && model.getLineContent(startLineNumber).charCodeAt(startTokenIndex + startToken.length) === 32 /* CharCode.Space */) {\n startToken += ' ';\n }\n // For Space before endToken, add Space before endToken and shift index one left.\n if (endTokenIndex !== -1 && model.getLineContent(endLineNumber).charCodeAt(endTokenIndex - 1) === 32 /* CharCode.Space */) {\n endToken = ' ' + endToken;\n endTokenIndex -= 1;\n }\n if (startTokenIndex !== -1 && endTokenIndex !== -1) {\n return _blockCommentCommand_js__WEBPACK_IMPORTED_MODULE_5__.BlockCommentCommand._createRemoveBlockCommentOperations(new _common_core_range_js__WEBPACK_IMPORTED_MODULE_3__.Range(startLineNumber, startTokenIndex + startToken.length + 1, endLineNumber, endTokenIndex + 1), startToken, endToken);\n }\n return null;\n }\n /**\n * Given an unsuccessful analysis, delegate to the block comment command\n */\n _executeBlockComment(model, builder, s) {\n model.tokenization.tokenizeIfCheap(s.startLineNumber);\n const languageId = model.getLanguageIdAtPosition(s.startLineNumber, 1);\n const config = this.languageConfigurationService.getLanguageConfiguration(languageId).comments;\n if (!config || !config.blockCommentStartToken || !config.blockCommentEndToken) {\n // Mode does not support block comments\n return;\n }\n const startToken = config.blockCommentStartToken;\n const endToken = config.blockCommentEndToken;\n let ops = this._attemptRemoveBlockComment(model, s, startToken, endToken);\n if (!ops) {\n if (s.isEmpty()) {\n const lineContent = model.getLineContent(s.startLineNumber);\n let firstNonWhitespaceIndex = _base_common_strings_js__WEBPACK_IMPORTED_MODULE_0__.firstNonWhitespaceIndex(lineContent);\n if (firstNonWhitespaceIndex === -1) {\n // Line is empty or contains only whitespace\n firstNonWhitespaceIndex = lineContent.length;\n }\n ops = _blockCommentCommand_js__WEBPACK_IMPORTED_MODULE_5__.BlockCommentCommand._createAddBlockCommentOperations(new _common_core_range_js__WEBPACK_IMPORTED_MODULE_3__.Range(s.startLineNumber, firstNonWhitespaceIndex + 1, s.startLineNumber, lineContent.length + 1), startToken, endToken, this._insertSpace);\n }\n else {\n ops = _blockCommentCommand_js__WEBPACK_IMPORTED_MODULE_5__.BlockCommentCommand._createAddBlockCommentOperations(new _common_core_range_js__WEBPACK_IMPORTED_MODULE_3__.Range(s.startLineNumber, model.getLineFirstNonWhitespaceColumn(s.startLineNumber), s.endLineNumber, model.getLineMaxColumn(s.endLineNumber)), startToken, endToken, this._insertSpace);\n }\n if (ops.length === 1) {\n // Leave cursor after token and Space\n this._deltaColumn = startToken.length + 1;\n }\n }\n this._selectionId = builder.trackSelection(s);\n for (const op of ops) {\n builder.addEditOperation(op.range, op.text);\n }\n }\n getEditOperations(model, builder) {\n let s = this._selection;\n this._moveEndPositionDown = false;\n if (s.startLineNumber === s.endLineNumber && this._ignoreFirstLine) {\n builder.addEditOperation(new _common_core_range_js__WEBPACK_IMPORTED_MODULE_3__.Range(s.startLineNumber, model.getLineMaxColumn(s.startLineNumber), s.startLineNumber + 1, 1), s.startLineNumber === model.getLineCount() ? '' : '\\n');\n this._selectionId = builder.trackSelection(s);\n return;\n }\n if (s.startLineNumber < s.endLineNumber && s.endColumn === 1) {\n this._moveEndPositionDown = true;\n s = s.setEndPosition(s.endLineNumber - 1, model.getLineMaxColumn(s.endLineNumber - 1));\n }\n const data = LineCommentCommand._gatherPreflightData(this._type, this._insertSpace, model, s.startLineNumber, s.endLineNumber, this._ignoreEmptyLines, this._ignoreFirstLine, this.languageConfigurationService);\n if (data.supported) {\n return this._executeLineComments(model, builder, data, s);\n }\n return this._executeBlockComment(model, builder, s);\n }\n computeCursorState(model, helper) {\n let result = helper.getTrackedSelection(this._selectionId);\n if (this._moveEndPositionDown) {\n result = result.setEndPosition(result.endLineNumber + 1, 1);\n }\n return new _common_core_selection_js__WEBPACK_IMPORTED_MODULE_4__.Selection(result.selectionStartLineNumber, result.selectionStartColumn + this._deltaColumn, result.positionLineNumber, result.positionColumn + this._deltaColumn);\n }\n /**\n * Generate edit operations in the remove line comment case\n */\n static _createRemoveLineCommentsOperations(lines, startLineNumber) {\n const res = [];\n for (let i = 0, len = lines.length; i < len; i++) {\n const lineData = lines[i];\n if (lineData.ignore) {\n continue;\n }\n res.push(_common_core_editOperation_js__WEBPACK_IMPORTED_MODULE_1__.EditOperation.delete(new _common_core_range_js__WEBPACK_IMPORTED_MODULE_3__.Range(startLineNumber + i, lineData.commentStrOffset + 1, startLineNumber + i, lineData.commentStrOffset + lineData.commentStrLength + 1)));\n }\n return res;\n }\n /**\n * Generate edit operations in the add line comment case\n */\n _createAddLineCommentsOperations(lines, startLineNumber) {\n const res = [];\n const afterCommentStr = this._insertSpace ? ' ' : '';\n for (let i = 0, len = lines.length; i < len; i++) {\n const lineData = lines[i];\n if (lineData.ignore) {\n continue;\n }\n res.push(_common_core_editOperation_js__WEBPACK_IMPORTED_MODULE_1__.EditOperation.insert(new _common_core_position_js__WEBPACK_IMPORTED_MODULE_2__.Position(startLineNumber + i, lineData.commentStrOffset + 1), lineData.commentStr + afterCommentStr));\n }\n return res;\n }\n static nextVisibleColumn(currentVisibleColumn, tabSize, isTab, columnSize) {\n if (isTab) {\n return currentVisibleColumn + (tabSize - (currentVisibleColumn % tabSize));\n }\n return currentVisibleColumn + columnSize;\n }\n /**\n * Adjust insertion points to have them vertically aligned in the add line comment case\n */\n static _normalizeInsertionPoint(model, lines, startLineNumber, tabSize) {\n let minVisibleColumn = 1073741824 /* Constants.MAX_SAFE_SMALL_INTEGER */;\n let j;\n let lenJ;\n for (let i = 0, len = lines.length; i < len; i++) {\n if (lines[i].ignore) {\n continue;\n }\n const lineContent = model.getLineContent(startLineNumber + i);\n let currentVisibleColumn = 0;\n for (let j = 0, lenJ = lines[i].commentStrOffset; currentVisibleColumn < minVisibleColumn && j < lenJ; j++) {\n currentVisibleColumn = LineCommentCommand.nextVisibleColumn(currentVisibleColumn, tabSize, lineContent.charCodeAt(j) === 9 /* CharCode.Tab */, 1);\n }\n if (currentVisibleColumn < minVisibleColumn) {\n minVisibleColumn = currentVisibleColumn;\n }\n }\n minVisibleColumn = Math.floor(minVisibleColumn / tabSize) * tabSize;\n for (let i = 0, len = lines.length; i < len; i++) {\n if (lines[i].ignore) {\n continue;\n }\n const lineContent = model.getLineContent(startLineNumber + i);\n let currentVisibleColumn = 0;\n for (j = 0, lenJ = lines[i].commentStrOffset; currentVisibleColumn < minVisibleColumn && j < lenJ; j++) {\n currentVisibleColumn = LineCommentCommand.nextVisibleColumn(currentVisibleColumn, tabSize, lineContent.charCodeAt(j) === 9 /* CharCode.Tab */, 1);\n }\n if (currentVisibleColumn > minVisibleColumn) {\n lines[i].commentStrOffset = j - 1;\n }\n else {\n lines[i].commentStrOffset = j;\n }\n }\n }\n}\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/contrib/comment/browser/lineCommentCommand.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/contrib/contextmenu/browser/contextmenu.js":
/*!*********************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/contrib/contextmenu/browser/contextmenu.js ***!
\*********************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ ContextMenuController: () => (/* binding */ ContextMenuController)\n/* harmony export */ });\n/* harmony import */ var _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../../base/browser/dom.js */ \"./node_modules/monaco-editor/esm/vs/base/browser/dom.js\");\n/* harmony import */ var _base_browser_ui_actionbar_actionViewItems_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../base/browser/ui/actionbar/actionViewItems.js */ \"./node_modules/monaco-editor/esm/vs/base/browser/ui/actionbar/actionViewItems.js\");\n/* harmony import */ var _base_common_actions_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../../base/common/actions.js */ \"./node_modules/monaco-editor/esm/vs/base/common/actions.js\");\n/* harmony import */ var _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../../../base/common/lifecycle.js */ \"./node_modules/monaco-editor/esm/vs/base/common/lifecycle.js\");\n/* harmony import */ var _base_common_platform_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../../../base/common/platform.js */ \"./node_modules/monaco-editor/esm/vs/base/common/platform.js\");\n/* harmony import */ var _browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../../../browser/editorExtensions.js */ \"./node_modules/monaco-editor/esm/vs/editor/browser/editorExtensions.js\");\n/* harmony import */ var _common_editorContextKeys_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../../../common/editorContextKeys.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/editorContextKeys.js\");\n/* harmony import */ var _nls_js__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ../../../../nls.js */ \"./node_modules/monaco-editor/esm/vs/nls.js\");\n/* harmony import */ var _platform_actions_common_actions_js__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ../../../../platform/actions/common/actions.js */ \"./node_modules/monaco-editor/esm/vs/platform/actions/common/actions.js\");\n/* harmony import */ var _platform_contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ../../../../platform/contextkey/common/contextkey.js */ \"./node_modules/monaco-editor/esm/vs/platform/contextkey/common/contextkey.js\");\n/* harmony import */ var _platform_contextview_browser_contextView_js__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! ../../../../platform/contextview/browser/contextView.js */ \"./node_modules/monaco-editor/esm/vs/platform/contextview/browser/contextView.js\");\n/* harmony import */ var _platform_keybinding_common_keybinding_js__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(/*! ../../../../platform/keybinding/common/keybinding.js */ \"./node_modules/monaco-editor/esm/vs/platform/keybinding/common/keybinding.js\");\n/* harmony import */ var _platform_configuration_common_configuration_js__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(/*! ../../../../platform/configuration/common/configuration.js */ \"./node_modules/monaco-editor/esm/vs/platform/configuration/common/configuration.js\");\n/* harmony import */ var _platform_workspace_common_workspace_js__WEBPACK_IMPORTED_MODULE_13__ = __webpack_require__(/*! ../../../../platform/workspace/common/workspace.js */ \"./node_modules/monaco-editor/esm/vs/platform/workspace/common/workspace.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\nvar __decorate = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\n return c > 3 && r && Object.defineProperty(target, key, r), r;\n};\nvar __param = (undefined && undefined.__param) || function (paramIndex, decorator) {\n return function (target, key) { decorator(target, key, paramIndex); }\n};\nvar ContextMenuController_1;\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlet ContextMenuController = ContextMenuController_1 = class ContextMenuController {\n static get(editor) {\n return editor.getContribution(ContextMenuController_1.ID);\n }\n constructor(editor, _contextMenuService, _contextViewService, _contextKeyService, _keybindingService, _menuService, _configurationService, _workspaceContextService) {\n this._contextMenuService = _contextMenuService;\n this._contextViewService = _contextViewService;\n this._contextKeyService = _contextKeyService;\n this._keybindingService = _keybindingService;\n this._menuService = _menuService;\n this._configurationService = _configurationService;\n this._workspaceContextService = _workspaceContextService;\n this._toDispose = new _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_3__.DisposableStore();\n this._contextMenuIsBeingShownCount = 0;\n this._editor = editor;\n this._toDispose.add(this._editor.onContextMenu((e) => this._onContextMenu(e)));\n this._toDispose.add(this._editor.onMouseWheel((e) => {\n if (this._contextMenuIsBeingShownCount > 0) {\n const view = this._contextViewService.getContextViewElement();\n const target = e.srcElement;\n // Event triggers on shadow root host first\n // Check if the context view is under this host before hiding it #103169\n if (!(target.shadowRoot && _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.getShadowRoot(view) === target.shadowRoot)) {\n this._contextViewService.hideContextView();\n }\n }\n }));\n this._toDispose.add(this._editor.onKeyDown((e) => {\n if (!this._editor.getOption(24 /* EditorOption.contextmenu */)) {\n return; // Context menu is turned off through configuration\n }\n if (e.keyCode === 58 /* KeyCode.ContextMenu */) {\n // Chrome is funny like that\n e.preventDefault();\n e.stopPropagation();\n this.showContextMenu();\n }\n }));\n }\n _onContextMenu(e) {\n if (!this._editor.hasModel()) {\n return;\n }\n if (!this._editor.getOption(24 /* EditorOption.contextmenu */)) {\n this._editor.focus();\n // Ensure the cursor is at the position of the mouse click\n if (e.target.position && !this._editor.getSelection().containsPosition(e.target.position)) {\n this._editor.setPosition(e.target.position);\n }\n return; // Context menu is turned off through configuration\n }\n if (e.target.type === 12 /* MouseTargetType.OVERLAY_WIDGET */) {\n return; // allow native menu on widgets to support right click on input field for example in find\n }\n if (e.target.type === 6 /* MouseTargetType.CONTENT_TEXT */ && e.target.detail.injectedText) {\n return; // allow native menu on injected text\n }\n e.event.preventDefault();\n e.event.stopPropagation();\n if (e.target.type === 11 /* MouseTargetType.SCROLLBAR */) {\n return this._showScrollbarContextMenu(e.event);\n }\n if (e.target.type !== 6 /* MouseTargetType.CONTENT_TEXT */ && e.target.type !== 7 /* MouseTargetType.CONTENT_EMPTY */ && e.target.type !== 1 /* MouseTargetType.TEXTAREA */) {\n return; // only support mouse click into text or native context menu key for now\n }\n // Ensure the editor gets focus if it hasn't, so the right events are being sent to other contributions\n this._editor.focus();\n // Ensure the cursor is at the position of the mouse click\n if (e.target.position) {\n let hasSelectionAtPosition = false;\n for (const selection of this._editor.getSelections()) {\n if (selection.containsPosition(e.target.position)) {\n hasSelectionAtPosition = true;\n break;\n }\n }\n if (!hasSelectionAtPosition) {\n this._editor.setPosition(e.target.position);\n }\n }\n // Unless the user triggerd the context menu through Shift+F10, use the mouse position as menu position\n let anchor = null;\n if (e.target.type !== 1 /* MouseTargetType.TEXTAREA */) {\n anchor = e.event;\n }\n // Show the context menu\n this.showContextMenu(anchor);\n }\n showContextMenu(anchor) {\n if (!this._editor.getOption(24 /* EditorOption.contextmenu */)) {\n return; // Context menu is turned off through configuration\n }\n if (!this._editor.hasModel()) {\n return;\n }\n // Find actions available for menu\n const menuActions = this._getMenuActions(this._editor.getModel(), this._editor.isSimpleWidget ? _platform_actions_common_actions_js__WEBPACK_IMPORTED_MODULE_8__.MenuId.SimpleEditorContext : _platform_actions_common_actions_js__WEBPACK_IMPORTED_MODULE_8__.MenuId.EditorContext);\n // Show menu if we have actions to show\n if (menuActions.length > 0) {\n this._doShowContextMenu(menuActions, anchor);\n }\n }\n _getMenuActions(model, menuId) {\n const result = [];\n // get menu groups\n const menu = this._menuService.createMenu(menuId, this._contextKeyService);\n const groups = menu.getActions({ arg: model.uri });\n menu.dispose();\n // translate them into other actions\n for (const group of groups) {\n const [, actions] = group;\n let addedItems = 0;\n for (const action of actions) {\n if (action instanceof _platform_actions_common_actions_js__WEBPACK_IMPORTED_MODULE_8__.SubmenuItemAction) {\n const subActions = this._getMenuActions(model, action.item.submenu);\n if (subActions.length > 0) {\n result.push(new _base_common_actions_js__WEBPACK_IMPORTED_MODULE_2__.SubmenuAction(action.id, action.label, subActions));\n addedItems++;\n }\n }\n else {\n result.push(action);\n addedItems++;\n }\n }\n if (addedItems) {\n result.push(new _base_common_actions_js__WEBPACK_IMPORTED_MODULE_2__.Separator());\n }\n }\n if (result.length) {\n result.pop(); // remove last separator\n }\n return result;\n }\n _doShowContextMenu(actions, event = null) {\n if (!this._editor.hasModel()) {\n return;\n }\n // Disable hover\n const oldHoverSetting = this._editor.getOption(60 /* EditorOption.hover */);\n this._editor.updateOptions({\n hover: {\n enabled: false\n }\n });\n let anchor = event;\n if (!anchor) {\n // Ensure selection is visible\n this._editor.revealPosition(this._editor.getPosition(), 1 /* ScrollType.Immediate */);\n this._editor.render();\n const cursorCoords = this._editor.getScrolledVisiblePosition(this._editor.getPosition());\n // Translate to absolute editor position\n const editorCoords = _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.getDomNodePagePosition(this._editor.getDomNode());\n const posx = editorCoords.left + cursorCoords.left;\n const posy = editorCoords.top + cursorCoords.top + cursorCoords.height;\n anchor = { x: posx, y: posy };\n }\n const useShadowDOM = this._editor.getOption(127 /* EditorOption.useShadowDOM */) && !_base_common_platform_js__WEBPACK_IMPORTED_MODULE_4__.isIOS; // Do not use shadow dom on IOS #122035\n // Show menu\n this._contextMenuIsBeingShownCount++;\n this._contextMenuService.showContextMenu({\n domForShadowRoot: useShadowDOM ? this._editor.getDomNode() : undefined,\n getAnchor: () => anchor,\n getActions: () => actions,\n getActionViewItem: (action) => {\n const keybinding = this._keybindingFor(action);\n if (keybinding) {\n return new _base_browser_ui_actionbar_actionViewItems_js__WEBPACK_IMPORTED_MODULE_1__.ActionViewItem(action, action, { label: true, keybinding: keybinding.getLabel(), isMenu: true });\n }\n const customActionViewItem = action;\n if (typeof customActionViewItem.getActionViewItem === 'function') {\n return customActionViewItem.getActionViewItem();\n }\n return new _base_browser_ui_actionbar_actionViewItems_js__WEBPACK_IMPORTED_MODULE_1__.ActionViewItem(action, action, { icon: true, label: true, isMenu: true });\n },\n getKeyBinding: (action) => {\n return this._keybindingFor(action);\n },\n onHide: (wasCancelled) => {\n this._contextMenuIsBeingShownCount--;\n this._editor.updateOptions({\n hover: oldHoverSetting\n });\n }\n });\n }\n _showScrollbarContextMenu(anchor) {\n if (!this._editor.hasModel()) {\n return;\n }\n if ((0,_platform_workspace_common_workspace_js__WEBPACK_IMPORTED_MODULE_13__.isStandaloneEditorWorkspace)(this._workspaceContextService.getWorkspace())) {\n // can't update the configuration properly in the standalone editor\n return;\n }\n const minimapOptions = this._editor.getOption(73 /* EditorOption.minimap */);\n let lastId = 0;\n const createAction = (opts) => {\n return {\n id: `menu-action-${++lastId}`,\n label: opts.label,\n tooltip: '',\n class: undefined,\n enabled: (typeof opts.enabled === 'undefined' ? true : opts.enabled),\n checked: opts.checked,\n run: opts.run\n };\n };\n const createSubmenuAction = (label, actions) => {\n return new _base_common_actions_js__WEBPACK_IMPORTED_MODULE_2__.SubmenuAction(`menu-action-${++lastId}`, label, actions, undefined);\n };\n const createEnumAction = (label, enabled, configName, configuredValue, options) => {\n if (!enabled) {\n return createAction({ label, enabled, run: () => { } });\n }\n const createRunner = (value) => {\n return () => {\n this._configurationService.updateValue(configName, value);\n };\n };\n const actions = [];\n for (const option of options) {\n actions.push(createAction({\n label: option.label,\n checked: configuredValue === option.value,\n run: createRunner(option.value)\n }));\n }\n return createSubmenuAction(label, actions);\n };\n const actions = [];\n actions.push(createAction({\n label: _nls_js__WEBPACK_IMPORTED_MODULE_7__.localize('context.minimap.minimap', \"Minimap\"),\n checked: minimapOptions.enabled,\n run: () => {\n this._configurationService.updateValue(`editor.minimap.enabled`, !minimapOptions.enabled);\n }\n }));\n actions.push(new _base_common_actions_js__WEBPACK_IMPORTED_MODULE_2__.Separator());\n actions.push(createAction({\n label: _nls_js__WEBPACK_IMPORTED_MODULE_7__.localize('context.minimap.renderCharacters', \"Render Characters\"),\n enabled: minimapOptions.enabled,\n checked: minimapOptions.renderCharacters,\n run: () => {\n this._configurationService.updateValue(`editor.minimap.renderCharacters`, !minimapOptions.renderCharacters);\n }\n }));\n actions.push(createEnumAction(_nls_js__WEBPACK_IMPORTED_MODULE_7__.localize('context.minimap.size', \"Vertical size\"), minimapOptions.enabled, 'editor.minimap.size', minimapOptions.size, [{\n label: _nls_js__WEBPACK_IMPORTED_MODULE_7__.localize('context.minimap.size.proportional', \"Proportional\"),\n value: 'proportional'\n }, {\n label: _nls_js__WEBPACK_IMPORTED_MODULE_7__.localize('context.minimap.size.fill', \"Fill\"),\n value: 'fill'\n }, {\n label: _nls_js__WEBPACK_IMPORTED_MODULE_7__.localize('context.minimap.size.fit', \"Fit\"),\n value: 'fit'\n }]));\n actions.push(createEnumAction(_nls_js__WEBPACK_IMPORTED_MODULE_7__.localize('context.minimap.slider', \"Slider\"), minimapOptions.enabled, 'editor.minimap.showSlider', minimapOptions.showSlider, [{\n label: _nls_js__WEBPACK_IMPORTED_MODULE_7__.localize('context.minimap.slider.mouseover', \"Mouse Over\"),\n value: 'mouseover'\n }, {\n label: _nls_js__WEBPACK_IMPORTED_MODULE_7__.localize('context.minimap.slider.always', \"Always\"),\n value: 'always'\n }]));\n const useShadowDOM = this._editor.getOption(127 /* EditorOption.useShadowDOM */) && !_base_common_platform_js__WEBPACK_IMPORTED_MODULE_4__.isIOS; // Do not use shadow dom on IOS #122035\n this._contextMenuIsBeingShownCount++;\n this._contextMenuService.showContextMenu({\n domForShadowRoot: useShadowDOM ? this._editor.getDomNode() : undefined,\n getAnchor: () => anchor,\n getActions: () => actions,\n onHide: (wasCancelled) => {\n this._contextMenuIsBeingShownCount--;\n this._editor.focus();\n }\n });\n }\n _keybindingFor(action) {\n return this._keybindingService.lookupKeybinding(action.id);\n }\n dispose() {\n if (this._contextMenuIsBeingShownCount > 0) {\n this._contextViewService.hideContextView();\n }\n this._toDispose.dispose();\n }\n};\nContextMenuController.ID = 'editor.contrib.contextmenu';\nContextMenuController = ContextMenuController_1 = __decorate([\n __param(1, _platform_contextview_browser_contextView_js__WEBPACK_IMPORTED_MODULE_10__.IContextMenuService),\n __param(2, _platform_contextview_browser_contextView_js__WEBPACK_IMPORTED_MODULE_10__.IContextViewService),\n __param(3, _platform_contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_9__.IContextKeyService),\n __param(4, _platform_keybinding_common_keybinding_js__WEBPACK_IMPORTED_MODULE_11__.IKeybindingService),\n __param(5, _platform_actions_common_actions_js__WEBPACK_IMPORTED_MODULE_8__.IMenuService),\n __param(6, _platform_configuration_common_configuration_js__WEBPACK_IMPORTED_MODULE_12__.IConfigurationService),\n __param(7, _platform_workspace_common_workspace_js__WEBPACK_IMPORTED_MODULE_13__.IWorkspaceContextService)\n], ContextMenuController);\n\nclass ShowContextMenu extends _browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_5__.EditorAction {\n constructor() {\n super({\n id: 'editor.action.showContextMenu',\n label: _nls_js__WEBPACK_IMPORTED_MODULE_7__.localize('action.showContextMenu.label', \"Show Editor Context Menu\"),\n alias: 'Show Editor Context Menu',\n precondition: undefined,\n kbOpts: {\n kbExpr: _common_editorContextKeys_js__WEBPACK_IMPORTED_MODULE_6__.EditorContextKeys.textInputFocus,\n primary: 1024 /* KeyMod.Shift */ | 68 /* KeyCode.F10 */,\n weight: 100 /* KeybindingWeight.EditorContrib */\n }\n });\n }\n run(accessor, editor) {\n var _a;\n (_a = ContextMenuController.get(editor)) === null || _a === void 0 ? void 0 : _a.showContextMenu();\n }\n}\n(0,_browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_5__.registerEditorContribution)(ContextMenuController.ID, ContextMenuController, 2 /* EditorContributionInstantiation.BeforeFirstInteraction */);\n(0,_browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_5__.registerEditorAction)(ShowContextMenu);\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/contrib/contextmenu/browser/contextmenu.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/contrib/cursorUndo/browser/cursorUndo.js":
/*!*******************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/contrib/cursorUndo/browser/cursorUndo.js ***!
\*******************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ CursorRedo: () => (/* binding */ CursorRedo),\n/* harmony export */ CursorUndo: () => (/* binding */ CursorUndo),\n/* harmony export */ CursorUndoRedoController: () => (/* binding */ CursorUndoRedoController)\n/* harmony export */ });\n/* harmony import */ var _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../../base/common/lifecycle.js */ \"./node_modules/monaco-editor/esm/vs/base/common/lifecycle.js\");\n/* harmony import */ var _browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../browser/editorExtensions.js */ \"./node_modules/monaco-editor/esm/vs/editor/browser/editorExtensions.js\");\n/* harmony import */ var _common_editorContextKeys_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../common/editorContextKeys.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/editorContextKeys.js\");\n/* harmony import */ var _nls_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../../../nls.js */ \"./node_modules/monaco-editor/esm/vs/nls.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n\n\n\nclass CursorState {\n constructor(selections) {\n this.selections = selections;\n }\n equals(other) {\n const thisLen = this.selections.length;\n const otherLen = other.selections.length;\n if (thisLen !== otherLen) {\n return false;\n }\n for (let i = 0; i < thisLen; i++) {\n if (!this.selections[i].equalsSelection(other.selections[i])) {\n return false;\n }\n }\n return true;\n }\n}\nclass StackElement {\n constructor(cursorState, scrollTop, scrollLeft) {\n this.cursorState = cursorState;\n this.scrollTop = scrollTop;\n this.scrollLeft = scrollLeft;\n }\n}\nclass CursorUndoRedoController extends _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_0__.Disposable {\n static get(editor) {\n return editor.getContribution(CursorUndoRedoController.ID);\n }\n constructor(editor) {\n super();\n this._editor = editor;\n this._isCursorUndoRedo = false;\n this._undoStack = [];\n this._redoStack = [];\n this._register(editor.onDidChangeModel((e) => {\n this._undoStack = [];\n this._redoStack = [];\n }));\n this._register(editor.onDidChangeModelContent((e) => {\n this._undoStack = [];\n this._redoStack = [];\n }));\n this._register(editor.onDidChangeCursorSelection((e) => {\n if (this._isCursorUndoRedo) {\n return;\n }\n if (!e.oldSelections) {\n return;\n }\n if (e.oldModelVersionId !== e.modelVersionId) {\n return;\n }\n const prevState = new CursorState(e.oldSelections);\n const isEqualToLastUndoStack = (this._undoStack.length > 0 && this._undoStack[this._undoStack.length - 1].cursorState.equals(prevState));\n if (!isEqualToLastUndoStack) {\n this._undoStack.push(new StackElement(prevState, editor.getScrollTop(), editor.getScrollLeft()));\n this._redoStack = [];\n if (this._undoStack.length > 50) {\n // keep the cursor undo stack bounded\n this._undoStack.shift();\n }\n }\n }));\n }\n cursorUndo() {\n if (!this._editor.hasModel() || this._undoStack.length === 0) {\n return;\n }\n this._redoStack.push(new StackElement(new CursorState(this._editor.getSelections()), this._editor.getScrollTop(), this._editor.getScrollLeft()));\n this._applyState(this._undoStack.pop());\n }\n cursorRedo() {\n if (!this._editor.hasModel() || this._redoStack.length === 0) {\n return;\n }\n this._undoStack.push(new StackElement(new CursorState(this._editor.getSelections()), this._editor.getScrollTop(), this._editor.getScrollLeft()));\n this._applyState(this._redoStack.pop());\n }\n _applyState(stackElement) {\n this._isCursorUndoRedo = true;\n this._editor.setSelections(stackElement.cursorState.selections);\n this._editor.setScrollPosition({\n scrollTop: stackElement.scrollTop,\n scrollLeft: stackElement.scrollLeft\n });\n this._isCursorUndoRedo = false;\n }\n}\nCursorUndoRedoController.ID = 'editor.contrib.cursorUndoRedoController';\nclass CursorUndo extends _browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_1__.EditorAction {\n constructor() {\n super({\n id: 'cursorUndo',\n label: _nls_js__WEBPACK_IMPORTED_MODULE_3__.localize('cursor.undo', \"Cursor Undo\"),\n alias: 'Cursor Undo',\n precondition: undefined,\n kbOpts: {\n kbExpr: _common_editorContextKeys_js__WEBPACK_IMPORTED_MODULE_2__.EditorContextKeys.textInputFocus,\n primary: 2048 /* KeyMod.CtrlCmd */ | 51 /* KeyCode.KeyU */,\n weight: 100 /* KeybindingWeight.EditorContrib */\n }\n });\n }\n run(accessor, editor, args) {\n var _a;\n (_a = CursorUndoRedoController.get(editor)) === null || _a === void 0 ? void 0 : _a.cursorUndo();\n }\n}\nclass CursorRedo extends _browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_1__.EditorAction {\n constructor() {\n super({\n id: 'cursorRedo',\n label: _nls_js__WEBPACK_IMPORTED_MODULE_3__.localize('cursor.redo', \"Cursor Redo\"),\n alias: 'Cursor Redo',\n precondition: undefined\n });\n }\n run(accessor, editor, args) {\n var _a;\n (_a = CursorUndoRedoController.get(editor)) === null || _a === void 0 ? void 0 : _a.cursorRedo();\n }\n}\n(0,_browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_1__.registerEditorContribution)(CursorUndoRedoController.ID, CursorUndoRedoController, 0 /* EditorContributionInstantiation.Eager */); // eager because it needs to listen to record cursor state ASAP\n(0,_browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_1__.registerEditorAction)(CursorUndo);\n(0,_browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_1__.registerEditorAction)(CursorRedo);\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/contrib/cursorUndo/browser/cursorUndo.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/contrib/diffEditorBreadcrumbs/browser/contribution.js":
/*!********************************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/contrib/diffEditorBreadcrumbs/browser/contribution.js ***!
\********************************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var _base_common_arrays_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../../base/common/arrays.js */ \"./node_modules/monaco-editor/esm/vs/base/common/arrays.js\");\n/* harmony import */ var _base_common_observable_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../base/common/observable.js */ \"./node_modules/monaco-editor/esm/vs/base/common/observable.js\");\n/* harmony import */ var _browser_widget_diffEditor_features_hideUnchangedRegionsFeature_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../browser/widget/diffEditor/features/hideUnchangedRegionsFeature.js */ \"./node_modules/monaco-editor/esm/vs/editor/browser/widget/diffEditor/features/hideUnchangedRegionsFeature.js\");\n/* harmony import */ var _browser_widget_diffEditor_utils_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../../browser/widget/diffEditor/utils.js */ \"./node_modules/monaco-editor/esm/vs/editor/browser/widget/diffEditor/utils.js\");\n/* harmony import */ var _common_services_languageFeatures_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../../common/services/languageFeatures.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/services/languageFeatures.js\");\n/* harmony import */ var _documentSymbols_browser_outlineModel_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../../documentSymbols/browser/outlineModel.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/documentSymbols/browser/outlineModel.js\");\n/* harmony import */ var _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../../../../base/common/lifecycle.js */ \"./node_modules/monaco-editor/esm/vs/base/common/lifecycle.js\");\n/* harmony import */ var _base_common_event_js__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ../../../../base/common/event.js */ \"./node_modules/monaco-editor/esm/vs/base/common/event.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\nvar __decorate = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\n return c > 3 && r && Object.defineProperty(target, key, r), r;\n};\nvar __param = (undefined && undefined.__param) || function (paramIndex, decorator) {\n return function (target, key) { decorator(target, key, paramIndex); }\n};\n\n\n\n\n\n\n\n\nlet DiffEditorBreadcrumbsSource = class DiffEditorBreadcrumbsSource extends _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_6__.Disposable {\n constructor(_textModel, _languageFeaturesService, _outlineModelService) {\n super();\n this._textModel = _textModel;\n this._languageFeaturesService = _languageFeaturesService;\n this._outlineModelService = _outlineModelService;\n this._currentModel = (0,_base_common_observable_js__WEBPACK_IMPORTED_MODULE_1__.observableValue)(this, undefined);\n const documentSymbolProviderChanged = (0,_base_common_observable_js__WEBPACK_IMPORTED_MODULE_1__.observableSignalFromEvent)('documentSymbolProvider.onDidChange', this._languageFeaturesService.documentSymbolProvider.onDidChange);\n const textModelChanged = (0,_base_common_observable_js__WEBPACK_IMPORTED_MODULE_1__.observableSignalFromEvent)('_textModel.onDidChangeContent', _base_common_event_js__WEBPACK_IMPORTED_MODULE_7__.Event.debounce(e => this._textModel.onDidChangeContent(e), () => undefined, 100));\n this._register((0,_base_common_observable_js__WEBPACK_IMPORTED_MODULE_1__.autorunWithStore)(async (reader, store) => {\n documentSymbolProviderChanged.read(reader);\n textModelChanged.read(reader);\n const src = store.add(new _browser_widget_diffEditor_utils_js__WEBPACK_IMPORTED_MODULE_3__.DisposableCancellationTokenSource());\n const model = await this._outlineModelService.getOrCreate(this._textModel, src.token);\n if (store.isDisposed) {\n return;\n }\n this._currentModel.set(model, undefined);\n }));\n }\n getBreadcrumbItems(startRange, reader) {\n const m = this._currentModel.read(reader);\n if (!m) {\n return [];\n }\n const symbols = m.asListOfDocumentSymbols()\n .filter(s => startRange.contains(s.range.startLineNumber) && !startRange.contains(s.range.endLineNumber));\n symbols.sort((0,_base_common_arrays_js__WEBPACK_IMPORTED_MODULE_0__.reverseOrder)((0,_base_common_arrays_js__WEBPACK_IMPORTED_MODULE_0__.compareBy)(s => s.range.endLineNumber - s.range.startLineNumber, _base_common_arrays_js__WEBPACK_IMPORTED_MODULE_0__.numberComparator)));\n return symbols.map(s => ({ name: s.name, kind: s.kind, startLineNumber: s.range.startLineNumber }));\n }\n};\nDiffEditorBreadcrumbsSource = __decorate([\n __param(1, _common_services_languageFeatures_js__WEBPACK_IMPORTED_MODULE_4__.ILanguageFeaturesService),\n __param(2, _documentSymbols_browser_outlineModel_js__WEBPACK_IMPORTED_MODULE_5__.IOutlineModelService)\n], DiffEditorBreadcrumbsSource);\n_browser_widget_diffEditor_features_hideUnchangedRegionsFeature_js__WEBPACK_IMPORTED_MODULE_2__.HideUnchangedRegionsFeature.setBreadcrumbsSourceFactory((textModel, instantiationService) => {\n return instantiationService.createInstance(DiffEditorBreadcrumbsSource, textModel);\n});\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/contrib/diffEditorBreadcrumbs/browser/contribution.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/contrib/dnd/browser/dnd.js":
/*!*****************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/contrib/dnd/browser/dnd.js ***!
\*****************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ DragAndDropController: () => (/* binding */ DragAndDropController)\n/* harmony export */ });\n/* harmony import */ var _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../../base/common/lifecycle.js */ \"./node_modules/monaco-editor/esm/vs/base/common/lifecycle.js\");\n/* harmony import */ var _base_common_platform_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../base/common/platform.js */ \"./node_modules/monaco-editor/esm/vs/base/common/platform.js\");\n/* harmony import */ var _dnd_css__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./dnd.css */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/dnd/browser/dnd.css\");\n/* harmony import */ var _browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../../browser/editorExtensions.js */ \"./node_modules/monaco-editor/esm/vs/editor/browser/editorExtensions.js\");\n/* harmony import */ var _common_core_position_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../../common/core/position.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/core/position.js\");\n/* harmony import */ var _common_core_range_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../../../common/core/range.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/core/range.js\");\n/* harmony import */ var _common_core_selection_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../../../common/core/selection.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/core/selection.js\");\n/* harmony import */ var _common_model_textModel_js__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ../../../common/model/textModel.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/model/textModel.js\");\n/* harmony import */ var _dragAndDropCommand_js__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ./dragAndDropCommand.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/dnd/browser/dragAndDropCommand.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n\n\n\n\n\n\n\n\nfunction hasTriggerModifier(e) {\n if (_base_common_platform_js__WEBPACK_IMPORTED_MODULE_1__.isMacintosh) {\n return e.altKey;\n }\n else {\n return e.ctrlKey;\n }\n}\nclass DragAndDropController extends _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_0__.Disposable {\n constructor(editor) {\n super();\n this._editor = editor;\n this._dndDecorationIds = this._editor.createDecorationsCollection();\n this._register(this._editor.onMouseDown((e) => this._onEditorMouseDown(e)));\n this._register(this._editor.onMouseUp((e) => this._onEditorMouseUp(e)));\n this._register(this._editor.onMouseDrag((e) => this._onEditorMouseDrag(e)));\n this._register(this._editor.onMouseDrop((e) => this._onEditorMouseDrop(e)));\n this._register(this._editor.onMouseDropCanceled(() => this._onEditorMouseDropCanceled()));\n this._register(this._editor.onKeyDown((e) => this.onEditorKeyDown(e)));\n this._register(this._editor.onKeyUp((e) => this.onEditorKeyUp(e)));\n this._register(this._editor.onDidBlurEditorWidget(() => this.onEditorBlur()));\n this._register(this._editor.onDidBlurEditorText(() => this.onEditorBlur()));\n this._mouseDown = false;\n this._modifierPressed = false;\n this._dragSelection = null;\n }\n onEditorBlur() {\n this._removeDecoration();\n this._dragSelection = null;\n this._mouseDown = false;\n this._modifierPressed = false;\n }\n onEditorKeyDown(e) {\n if (!this._editor.getOption(35 /* EditorOption.dragAndDrop */) || this._editor.getOption(22 /* EditorOption.columnSelection */)) {\n return;\n }\n if (hasTriggerModifier(e)) {\n this._modifierPressed = true;\n }\n if (this._mouseDown && hasTriggerModifier(e)) {\n this._editor.updateOptions({\n mouseStyle: 'copy'\n });\n }\n }\n onEditorKeyUp(e) {\n if (!this._editor.getOption(35 /* EditorOption.dragAndDrop */) || this._editor.getOption(22 /* EditorOption.columnSelection */)) {\n return;\n }\n if (hasTriggerModifier(e)) {\n this._modifierPressed = false;\n }\n if (this._mouseDown && e.keyCode === DragAndDropController.TRIGGER_KEY_VALUE) {\n this._editor.updateOptions({\n mouseStyle: 'default'\n });\n }\n }\n _onEditorMouseDown(mouseEvent) {\n this._mouseDown = true;\n }\n _onEditorMouseUp(mouseEvent) {\n this._mouseDown = false;\n // Whenever users release the mouse, the drag and drop operation should finish and the cursor should revert to text.\n this._editor.updateOptions({\n mouseStyle: 'text'\n });\n }\n _onEditorMouseDrag(mouseEvent) {\n const target = mouseEvent.target;\n if (this._dragSelection === null) {\n const selections = this._editor.getSelections() || [];\n const possibleSelections = selections.filter(selection => target.position && selection.containsPosition(target.position));\n if (possibleSelections.length === 1) {\n this._dragSelection = possibleSelections[0];\n }\n else {\n return;\n }\n }\n if (hasTriggerModifier(mouseEvent.event)) {\n this._editor.updateOptions({\n mouseStyle: 'copy'\n });\n }\n else {\n this._editor.updateOptions({\n mouseStyle: 'default'\n });\n }\n if (target.position) {\n if (this._dragSelection.containsPosition(target.position)) {\n this._removeDecoration();\n }\n else {\n this.showAt(target.position);\n }\n }\n }\n _onEditorMouseDropCanceled() {\n this._editor.updateOptions({\n mouseStyle: 'text'\n });\n this._removeDecoration();\n this._dragSelection = null;\n this._mouseDown = false;\n }\n _onEditorMouseDrop(mouseEvent) {\n if (mouseEvent.target && (this._hitContent(mouseEvent.target) || this._hitMargin(mouseEvent.target)) && mouseEvent.target.position) {\n const newCursorPosition = new _common_core_position_js__WEBPACK_IMPORTED_MODULE_4__.Position(mouseEvent.target.position.lineNumber, mouseEvent.target.position.column);\n if (this._dragSelection === null) {\n let newSelections = null;\n if (mouseEvent.event.shiftKey) {\n const primarySelection = this._editor.getSelection();\n if (primarySelection) {\n const { selectionStartLineNumber, selectionStartColumn } = primarySelection;\n newSelections = [new _common_core_selection_js__WEBPACK_IMPORTED_MODULE_6__.Selection(selectionStartLineNumber, selectionStartColumn, newCursorPosition.lineNumber, newCursorPosition.column)];\n }\n }\n else {\n newSelections = (this._editor.getSelections() || []).map(selection => {\n if (selection.containsPosition(newCursorPosition)) {\n return new _common_core_selection_js__WEBPACK_IMPORTED_MODULE_6__.Selection(newCursorPosition.lineNumber, newCursorPosition.column, newCursorPosition.lineNumber, newCursorPosition.column);\n }\n else {\n return selection;\n }\n });\n }\n // Use `mouse` as the source instead of `api` and setting the reason to explicit (to behave like any other mouse operation).\n this._editor.setSelections(newSelections || [], 'mouse', 3 /* CursorChangeReason.Explicit */);\n }\n else if (!this._dragSelection.containsPosition(newCursorPosition) ||\n ((hasTriggerModifier(mouseEvent.event) ||\n this._modifierPressed) && (this._dragSelection.getEndPosition().equals(newCursorPosition) || this._dragSelection.getStartPosition().equals(newCursorPosition)) // we allow users to paste content beside the selection\n )) {\n this._editor.pushUndoStop();\n this._editor.executeCommand(DragAndDropController.ID, new _dragAndDropCommand_js__WEBPACK_IMPORTED_MODULE_8__.DragAndDropCommand(this._dragSelection, newCursorPosition, hasTriggerModifier(mouseEvent.event) || this._modifierPressed));\n this._editor.pushUndoStop();\n }\n }\n this._editor.updateOptions({\n mouseStyle: 'text'\n });\n this._removeDecoration();\n this._dragSelection = null;\n this._mouseDown = false;\n }\n showAt(position) {\n this._dndDecorationIds.set([{\n range: new _common_core_range_js__WEBPACK_IMPORTED_MODULE_5__.Range(position.lineNumber, position.column, position.lineNumber, position.column),\n options: DragAndDropController._DECORATION_OPTIONS\n }]);\n this._editor.revealPosition(position, 1 /* ScrollType.Immediate */);\n }\n _removeDecoration() {\n this._dndDecorationIds.clear();\n }\n _hitContent(target) {\n return target.type === 6 /* MouseTargetType.CONTENT_TEXT */ ||\n target.type === 7 /* MouseTargetType.CONTENT_EMPTY */;\n }\n _hitMargin(target) {\n return target.type === 2 /* MouseTargetType.GUTTER_GLYPH_MARGIN */ ||\n target.type === 3 /* MouseTargetType.GUTTER_LINE_NUMBERS */ ||\n target.type === 4 /* MouseTargetType.GUTTER_LINE_DECORATIONS */;\n }\n dispose() {\n this._removeDecoration();\n this._dragSelection = null;\n this._mouseDown = false;\n this._modifierPressed = false;\n super.dispose();\n }\n}\nDragAndDropController.ID = 'editor.contrib.dragAndDrop';\nDragAndDropController.TRIGGER_KEY_VALUE = _base_common_platform_js__WEBPACK_IMPORTED_MODULE_1__.isMacintosh ? 6 /* KeyCode.Alt */ : 5 /* KeyCode.Ctrl */;\nDragAndDropController._DECORATION_OPTIONS = _common_model_textModel_js__WEBPACK_IMPORTED_MODULE_7__.ModelDecorationOptions.register({\n description: 'dnd-target',\n className: 'dnd-target'\n});\n(0,_browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_3__.registerEditorContribution)(DragAndDropController.ID, DragAndDropController, 2 /* EditorContributionInstantiation.BeforeFirstInteraction */);\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/contrib/dnd/browser/dnd.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/contrib/dnd/browser/dragAndDropCommand.js":
/*!********************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/contrib/dnd/browser/dragAndDropCommand.js ***!
\********************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ DragAndDropCommand: () => (/* binding */ DragAndDropCommand)\n/* harmony export */ });\n/* harmony import */ var _common_core_range_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../common/core/range.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/core/range.js\");\n/* harmony import */ var _common_core_selection_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../common/core/selection.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/core/selection.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n\nclass DragAndDropCommand {\n constructor(selection, targetPosition, copy) {\n this.selection = selection;\n this.targetPosition = targetPosition;\n this.copy = copy;\n this.targetSelection = null;\n }\n getEditOperations(model, builder) {\n const text = model.getValueInRange(this.selection);\n if (!this.copy) {\n builder.addEditOperation(this.selection, null);\n }\n builder.addEditOperation(new _common_core_range_js__WEBPACK_IMPORTED_MODULE_0__.Range(this.targetPosition.lineNumber, this.targetPosition.column, this.targetPosition.lineNumber, this.targetPosition.column), text);\n if (this.selection.containsPosition(this.targetPosition) && !(this.copy && (this.selection.getEndPosition().equals(this.targetPosition) || this.selection.getStartPosition().equals(this.targetPosition)) // we allow users to paste content beside the selection\n )) {\n this.targetSelection = this.selection;\n return;\n }\n if (this.copy) {\n this.targetSelection = new _common_core_selection_js__WEBPACK_IMPORTED_MODULE_1__.Selection(this.targetPosition.lineNumber, this.targetPosition.column, this.selection.endLineNumber - this.selection.startLineNumber + this.targetPosition.lineNumber, this.selection.startLineNumber === this.selection.endLineNumber ?\n this.targetPosition.column + this.selection.endColumn - this.selection.startColumn :\n this.selection.endColumn);\n return;\n }\n if (this.targetPosition.lineNumber > this.selection.endLineNumber) {\n // Drag the selection downwards\n this.targetSelection = new _common_core_selection_js__WEBPACK_IMPORTED_MODULE_1__.Selection(this.targetPosition.lineNumber - this.selection.endLineNumber + this.selection.startLineNumber, this.targetPosition.column, this.targetPosition.lineNumber, this.selection.startLineNumber === this.selection.endLineNumber ?\n this.targetPosition.column + this.selection.endColumn - this.selection.startColumn :\n this.selection.endColumn);\n return;\n }\n if (this.targetPosition.lineNumber < this.selection.endLineNumber) {\n // Drag the selection upwards\n this.targetSelection = new _common_core_selection_js__WEBPACK_IMPORTED_MODULE_1__.Selection(this.targetPosition.lineNumber, this.targetPosition.column, this.targetPosition.lineNumber + this.selection.endLineNumber - this.selection.startLineNumber, this.selection.startLineNumber === this.selection.endLineNumber ?\n this.targetPosition.column + this.selection.endColumn - this.selection.startColumn :\n this.selection.endColumn);\n return;\n }\n // The target position is at the same line as the selection's end position.\n if (this.selection.endColumn <= this.targetPosition.column) {\n // The target position is after the selection's end position\n this.targetSelection = new _common_core_selection_js__WEBPACK_IMPORTED_MODULE_1__.Selection(this.targetPosition.lineNumber - this.selection.endLineNumber + this.selection.startLineNumber, this.selection.startLineNumber === this.selection.endLineNumber ?\n this.targetPosition.column - this.selection.endColumn + this.selection.startColumn :\n this.targetPosition.column - this.selection.endColumn + this.selection.startColumn, this.targetPosition.lineNumber, this.selection.startLineNumber === this.selection.endLineNumber ?\n this.targetPosition.column :\n this.selection.endColumn);\n }\n else {\n // The target position is before the selection's end position. Since the selection doesn't contain the target position, the selection is one-line and target position is before this selection.\n this.targetSelection = new _common_core_selection_js__WEBPACK_IMPORTED_MODULE_1__.Selection(this.targetPosition.lineNumber - this.selection.endLineNumber + this.selection.startLineNumber, this.targetPosition.column, this.targetPosition.lineNumber, this.targetPosition.column + this.selection.endColumn - this.selection.startColumn);\n }\n }\n computeCursorState(model, helper) {\n return this.targetSelection;\n }\n}\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/contrib/dnd/browser/dragAndDropCommand.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/contrib/documentSymbols/browser/documentSymbols.js":
/*!*****************************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/contrib/documentSymbols/browser/documentSymbols.js ***!
\*****************************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var _base_common_cancellation_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../../base/common/cancellation.js */ \"./node_modules/monaco-editor/esm/vs/base/common/cancellation.js\");\n/* harmony import */ var _base_common_types_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../base/common/types.js */ \"./node_modules/monaco-editor/esm/vs/base/common/types.js\");\n/* harmony import */ var _base_common_uri_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../../base/common/uri.js */ \"./node_modules/monaco-editor/esm/vs/base/common/uri.js\");\n/* harmony import */ var _common_services_resolverService_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../../common/services/resolverService.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/services/resolverService.js\");\n/* harmony import */ var _outlineModel_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./outlineModel.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/documentSymbols/browser/outlineModel.js\");\n/* harmony import */ var _platform_commands_common_commands_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../../../../platform/commands/common/commands.js */ \"./node_modules/monaco-editor/esm/vs/platform/commands/common/commands.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n\n\n\n\n\n_platform_commands_common_commands_js__WEBPACK_IMPORTED_MODULE_5__.CommandsRegistry.registerCommand('_executeDocumentSymbolProvider', async function (accessor, ...args) {\n const [resource] = args;\n (0,_base_common_types_js__WEBPACK_IMPORTED_MODULE_1__.assertType)(_base_common_uri_js__WEBPACK_IMPORTED_MODULE_2__.URI.isUri(resource));\n const outlineService = accessor.get(_outlineModel_js__WEBPACK_IMPORTED_MODULE_4__.IOutlineModelService);\n const modelService = accessor.get(_common_services_resolverService_js__WEBPACK_IMPORTED_MODULE_3__.ITextModelService);\n const reference = await modelService.createModelReference(resource);\n try {\n return (await outlineService.getOrCreate(reference.object.textEditorModel, _base_common_cancellation_js__WEBPACK_IMPORTED_MODULE_0__.CancellationToken.None)).getTopLevelSymbols();\n }\n finally {\n reference.dispose();\n }\n});\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/contrib/documentSymbols/browser/documentSymbols.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/contrib/documentSymbols/browser/outlineModel.js":
/*!**************************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/contrib/documentSymbols/browser/outlineModel.js ***!
\**************************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ IOutlineModelService: () => (/* binding */ IOutlineModelService),\n/* harmony export */ OutlineElement: () => (/* binding */ OutlineElement),\n/* harmony export */ OutlineGroup: () => (/* binding */ OutlineGroup),\n/* harmony export */ OutlineModel: () => (/* binding */ OutlineModel),\n/* harmony export */ OutlineModelService: () => (/* binding */ OutlineModelService),\n/* harmony export */ TreeElement: () => (/* binding */ TreeElement)\n/* harmony export */ });\n/* harmony import */ var _base_common_arrays_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../../base/common/arrays.js */ \"./node_modules/monaco-editor/esm/vs/base/common/arrays.js\");\n/* harmony import */ var _base_common_cancellation_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../base/common/cancellation.js */ \"./node_modules/monaco-editor/esm/vs/base/common/cancellation.js\");\n/* harmony import */ var _base_common_errors_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../../base/common/errors.js */ \"./node_modules/monaco-editor/esm/vs/base/common/errors.js\");\n/* harmony import */ var _base_common_iterator_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../../../base/common/iterator.js */ \"./node_modules/monaco-editor/esm/vs/base/common/iterator.js\");\n/* harmony import */ var _base_common_map_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../../../base/common/map.js */ \"./node_modules/monaco-editor/esm/vs/base/common/map.js\");\n/* harmony import */ var _common_core_position_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../../../common/core/position.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/core/position.js\");\n/* harmony import */ var _common_core_range_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../../../common/core/range.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/core/range.js\");\n/* harmony import */ var _common_services_languageFeatureDebounce_js__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ../../../common/services/languageFeatureDebounce.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/services/languageFeatureDebounce.js\");\n/* harmony import */ var _platform_instantiation_common_instantiation_js__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ../../../../platform/instantiation/common/instantiation.js */ \"./node_modules/monaco-editor/esm/vs/platform/instantiation/common/instantiation.js\");\n/* harmony import */ var _platform_instantiation_common_extensions_js__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ../../../../platform/instantiation/common/extensions.js */ \"./node_modules/monaco-editor/esm/vs/platform/instantiation/common/extensions.js\");\n/* harmony import */ var _common_services_model_js__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! ../../../common/services/model.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/services/model.js\");\n/* harmony import */ var _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(/*! ../../../../base/common/lifecycle.js */ \"./node_modules/monaco-editor/esm/vs/base/common/lifecycle.js\");\n/* harmony import */ var _common_services_languageFeatures_js__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(/*! ../../../common/services/languageFeatures.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/services/languageFeatures.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\nvar __decorate = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\n return c > 3 && r && Object.defineProperty(target, key, r), r;\n};\nvar __param = (undefined && undefined.__param) || function (paramIndex, decorator) {\n return function (target, key) { decorator(target, key, paramIndex); }\n};\n\n\n\n\n\n\n\n\n\n\n\n\n\nclass TreeElement {\n remove() {\n var _a;\n (_a = this.parent) === null || _a === void 0 ? void 0 : _a.children.delete(this.id);\n }\n static findId(candidate, container) {\n // complex id-computation which contains the origin/extension,\n // the parent path, and some dedupe logic when names collide\n let candidateId;\n if (typeof candidate === 'string') {\n candidateId = `${container.id}/${candidate}`;\n }\n else {\n candidateId = `${container.id}/${candidate.name}`;\n if (container.children.get(candidateId) !== undefined) {\n candidateId = `${container.id}/${candidate.name}_${candidate.range.startLineNumber}_${candidate.range.startColumn}`;\n }\n }\n let id = candidateId;\n for (let i = 0; container.children.get(id) !== undefined; i++) {\n id = `${candidateId}_${i}`;\n }\n return id;\n }\n static empty(element) {\n return element.children.size === 0;\n }\n}\nclass OutlineElement extends TreeElement {\n constructor(id, parent, symbol) {\n super();\n this.id = id;\n this.parent = parent;\n this.symbol = symbol;\n this.children = new Map();\n }\n}\nclass OutlineGroup extends TreeElement {\n constructor(id, parent, label, order) {\n super();\n this.id = id;\n this.parent = parent;\n this.label = label;\n this.order = order;\n this.children = new Map();\n }\n}\nclass OutlineModel extends TreeElement {\n static create(registry, textModel, token) {\n const cts = new _base_common_cancellation_js__WEBPACK_IMPORTED_MODULE_1__.CancellationTokenSource(token);\n const result = new OutlineModel(textModel.uri);\n const provider = registry.ordered(textModel);\n const promises = provider.map((provider, index) => {\n var _a;\n const id = TreeElement.findId(`provider_${index}`, result);\n const group = new OutlineGroup(id, result, (_a = provider.displayName) !== null && _a !== void 0 ? _a : 'Unknown Outline Provider', index);\n return Promise.resolve(provider.provideDocumentSymbols(textModel, cts.token)).then(result => {\n for (const info of result || []) {\n OutlineModel._makeOutlineElement(info, group);\n }\n return group;\n }, err => {\n (0,_base_common_errors_js__WEBPACK_IMPORTED_MODULE_2__.onUnexpectedExternalError)(err);\n return group;\n }).then(group => {\n if (!TreeElement.empty(group)) {\n result._groups.set(id, group);\n }\n else {\n group.remove();\n }\n });\n });\n const listener = registry.onDidChange(() => {\n const newProvider = registry.ordered(textModel);\n if (!(0,_base_common_arrays_js__WEBPACK_IMPORTED_MODULE_0__.equals)(newProvider, provider)) {\n cts.cancel();\n }\n });\n return Promise.all(promises).then(() => {\n if (cts.token.isCancellationRequested && !token.isCancellationRequested) {\n return OutlineModel.create(registry, textModel, token);\n }\n else {\n return result._compact();\n }\n }).finally(() => {\n cts.dispose();\n listener.dispose();\n cts.dispose();\n });\n }\n static _makeOutlineElement(info, container) {\n const id = TreeElement.findId(info, container);\n const res = new OutlineElement(id, container, info);\n if (info.children) {\n for (const childInfo of info.children) {\n OutlineModel._makeOutlineElement(childInfo, res);\n }\n }\n container.children.set(res.id, res);\n }\n constructor(uri) {\n super();\n this.uri = uri;\n this.id = 'root';\n this.parent = undefined;\n this._groups = new Map();\n this.children = new Map();\n this.id = 'root';\n this.parent = undefined;\n }\n _compact() {\n let count = 0;\n for (const [key, group] of this._groups) {\n if (group.children.size === 0) { // empty\n this._groups.delete(key);\n }\n else {\n count += 1;\n }\n }\n if (count !== 1) {\n //\n this.children = this._groups;\n }\n else {\n // adopt all elements of the first group\n const group = _base_common_iterator_js__WEBPACK_IMPORTED_MODULE_3__.Iterable.first(this._groups.values());\n for (const [, child] of group.children) {\n child.parent = this;\n this.children.set(child.id, child);\n }\n }\n return this;\n }\n getTopLevelSymbols() {\n const roots = [];\n for (const child of this.children.values()) {\n if (child instanceof OutlineElement) {\n roots.push(child.symbol);\n }\n else {\n roots.push(..._base_common_iterator_js__WEBPACK_IMPORTED_MODULE_3__.Iterable.map(child.children.values(), child => child.symbol));\n }\n }\n return roots.sort((a, b) => _common_core_range_js__WEBPACK_IMPORTED_MODULE_6__.Range.compareRangesUsingStarts(a.range, b.range));\n }\n asListOfDocumentSymbols() {\n const roots = this.getTopLevelSymbols();\n const bucket = [];\n OutlineModel._flattenDocumentSymbols(bucket, roots, '');\n return bucket.sort((a, b) => _common_core_position_js__WEBPACK_IMPORTED_MODULE_5__.Position.compare(_common_core_range_js__WEBPACK_IMPORTED_MODULE_6__.Range.getStartPosition(a.range), _common_core_range_js__WEBPACK_IMPORTED_MODULE_6__.Range.getStartPosition(b.range)) || _common_core_position_js__WEBPACK_IMPORTED_MODULE_5__.Position.compare(_common_core_range_js__WEBPACK_IMPORTED_MODULE_6__.Range.getEndPosition(b.range), _common_core_range_js__WEBPACK_IMPORTED_MODULE_6__.Range.getEndPosition(a.range)));\n }\n static _flattenDocumentSymbols(bucket, entries, overrideContainerLabel) {\n for (const entry of entries) {\n bucket.push({\n kind: entry.kind,\n tags: entry.tags,\n name: entry.name,\n detail: entry.detail,\n containerName: entry.containerName || overrideContainerLabel,\n range: entry.range,\n selectionRange: entry.selectionRange,\n children: undefined, // we flatten it...\n });\n // Recurse over children\n if (entry.children) {\n OutlineModel._flattenDocumentSymbols(bucket, entry.children, entry.name);\n }\n }\n }\n}\nconst IOutlineModelService = (0,_platform_instantiation_common_instantiation_js__WEBPACK_IMPORTED_MODULE_8__.createDecorator)('IOutlineModelService');\nlet OutlineModelService = class OutlineModelService {\n constructor(_languageFeaturesService, debounces, modelService) {\n this._languageFeaturesService = _languageFeaturesService;\n this._disposables = new _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_11__.DisposableStore();\n this._cache = new _base_common_map_js__WEBPACK_IMPORTED_MODULE_4__.LRUCache(10, 0.7);\n this._debounceInformation = debounces.for(_languageFeaturesService.documentSymbolProvider, 'DocumentSymbols', { min: 350 });\n // don't cache outline models longer than their text model\n this._disposables.add(modelService.onModelRemoved(textModel => {\n this._cache.delete(textModel.id);\n }));\n }\n dispose() {\n this._disposables.dispose();\n }\n async getOrCreate(textModel, token) {\n const registry = this._languageFeaturesService.documentSymbolProvider;\n const provider = registry.ordered(textModel);\n let data = this._cache.get(textModel.id);\n if (!data || data.versionId !== textModel.getVersionId() || !(0,_base_common_arrays_js__WEBPACK_IMPORTED_MODULE_0__.equals)(data.provider, provider)) {\n const source = new _base_common_cancellation_js__WEBPACK_IMPORTED_MODULE_1__.CancellationTokenSource();\n data = {\n versionId: textModel.getVersionId(),\n provider,\n promiseCnt: 0,\n source,\n promise: OutlineModel.create(registry, textModel, source.token),\n model: undefined,\n };\n this._cache.set(textModel.id, data);\n const now = Date.now();\n data.promise.then(outlineModel => {\n data.model = outlineModel;\n this._debounceInformation.update(textModel, Date.now() - now);\n }).catch(_err => {\n this._cache.delete(textModel.id);\n });\n }\n if (data.model) {\n // resolved -> return data\n return data.model;\n }\n // increase usage counter\n data.promiseCnt += 1;\n const listener = token.onCancellationRequested(() => {\n // last -> cancel provider request, remove cached promise\n if (--data.promiseCnt === 0) {\n data.source.cancel();\n this._cache.delete(textModel.id);\n }\n });\n try {\n return await data.promise;\n }\n finally {\n listener.dispose();\n }\n }\n};\nOutlineModelService = __decorate([\n __param(0, _common_services_languageFeatures_js__WEBPACK_IMPORTED_MODULE_12__.ILanguageFeaturesService),\n __param(1, _common_services_languageFeatureDebounce_js__WEBPACK_IMPORTED_MODULE_7__.ILanguageFeatureDebounceService),\n __param(2, _common_services_model_js__WEBPACK_IMPORTED_MODULE_10__.IModelService)\n], OutlineModelService);\n\n(0,_platform_instantiation_common_extensions_js__WEBPACK_IMPORTED_MODULE_9__.registerSingleton)(IOutlineModelService, OutlineModelService, 1 /* InstantiationType.Delayed */);\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/contrib/documentSymbols/browser/outlineModel.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/contrib/dropOrPasteInto/browser/copyPasteContribution.js":
/*!***********************************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/contrib/dropOrPasteInto/browser/copyPasteContribution.js ***!
\***********************************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var _browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../browser/editorExtensions.js */ \"./node_modules/monaco-editor/esm/vs/editor/browser/editorExtensions.js\");\n/* harmony import */ var _common_editorContextKeys_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../common/editorContextKeys.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/editorContextKeys.js\");\n/* harmony import */ var _common_editorFeatures_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../common/editorFeatures.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/editorFeatures.js\");\n/* harmony import */ var _copyPasteController_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./copyPasteController.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/dropOrPasteInto/browser/copyPasteController.js\");\n/* harmony import */ var _defaultProviders_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./defaultProviders.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/dropOrPasteInto/browser/defaultProviders.js\");\n/* harmony import */ var _nls_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../../../../nls.js */ \"./node_modules/monaco-editor/esm/vs/nls.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n\n\n\n\n\n(0,_browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_0__.registerEditorContribution)(_copyPasteController_js__WEBPACK_IMPORTED_MODULE_3__.CopyPasteController.ID, _copyPasteController_js__WEBPACK_IMPORTED_MODULE_3__.CopyPasteController, 0 /* EditorContributionInstantiation.Eager */); // eager because it listens to events on the container dom node of the editor\n(0,_common_editorFeatures_js__WEBPACK_IMPORTED_MODULE_2__.registerEditorFeature)(_defaultProviders_js__WEBPACK_IMPORTED_MODULE_4__.DefaultPasteProvidersFeature);\n(0,_browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_0__.registerEditorCommand)(new class extends _browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_0__.EditorCommand {\n constructor() {\n super({\n id: _copyPasteController_js__WEBPACK_IMPORTED_MODULE_3__.changePasteTypeCommandId,\n precondition: _copyPasteController_js__WEBPACK_IMPORTED_MODULE_3__.pasteWidgetVisibleCtx,\n kbOpts: {\n weight: 100 /* KeybindingWeight.EditorContrib */,\n primary: 2048 /* KeyMod.CtrlCmd */ | 89 /* KeyCode.Period */,\n }\n });\n }\n runEditorCommand(_accessor, editor, _args) {\n var _a;\n return (_a = _copyPasteController_js__WEBPACK_IMPORTED_MODULE_3__.CopyPasteController.get(editor)) === null || _a === void 0 ? void 0 : _a.changePasteType();\n }\n});\n(0,_browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_0__.registerEditorAction)(class extends _browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_0__.EditorAction {\n constructor() {\n super({\n id: 'editor.action.pasteAs',\n label: _nls_js__WEBPACK_IMPORTED_MODULE_5__.localize('pasteAs', \"Paste As...\"),\n alias: 'Paste As...',\n precondition: _common_editorContextKeys_js__WEBPACK_IMPORTED_MODULE_1__.EditorContextKeys.writable,\n metadata: {\n description: 'Paste as',\n args: [{\n name: 'args',\n schema: {\n type: 'object',\n properties: {\n 'id': {\n type: 'string',\n description: _nls_js__WEBPACK_IMPORTED_MODULE_5__.localize('pasteAs.id', \"The id of the paste edit to try applying. If not provided, the editor will show a picker.\"),\n }\n },\n }\n }]\n }\n });\n }\n run(_accessor, editor, args) {\n var _a;\n const id = typeof (args === null || args === void 0 ? void 0 : args.id) === 'string' ? args.id : undefined;\n return (_a = _copyPasteController_js__WEBPACK_IMPORTED_MODULE_3__.CopyPasteController.get(editor)) === null || _a === void 0 ? void 0 : _a.pasteAs(id);\n }\n});\n(0,_browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_0__.registerEditorAction)(class extends _browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_0__.EditorAction {\n constructor() {\n super({\n id: 'editor.action.pasteAsText',\n label: _nls_js__WEBPACK_IMPORTED_MODULE_5__.localize('pasteAsText', \"Paste as Text\"),\n alias: 'Paste as Text',\n precondition: _common_editorContextKeys_js__WEBPACK_IMPORTED_MODULE_1__.EditorContextKeys.writable,\n });\n }\n run(_accessor, editor, args) {\n var _a;\n return (_a = _copyPasteController_js__WEBPACK_IMPORTED_MODULE_3__.CopyPasteController.get(editor)) === null || _a === void 0 ? void 0 : _a.pasteAs('text');\n }\n});\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/contrib/dropOrPasteInto/browser/copyPasteContribution.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/contrib/dropOrPasteInto/browser/copyPasteController.js":
/*!*********************************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/contrib/dropOrPasteInto/browser/copyPasteController.js ***!
\*********************************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ CopyPasteController: () => (/* binding */ CopyPasteController),\n/* harmony export */ changePasteTypeCommandId: () => (/* binding */ changePasteTypeCommandId),\n/* harmony export */ pasteWidgetVisibleCtx: () => (/* binding */ pasteWidgetVisibleCtx)\n/* harmony export */ });\n/* harmony import */ var _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../../base/browser/dom.js */ \"./node_modules/monaco-editor/esm/vs/base/browser/dom.js\");\n/* harmony import */ var _base_common_arrays_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../base/common/arrays.js */ \"./node_modules/monaco-editor/esm/vs/base/common/arrays.js\");\n/* harmony import */ var _base_common_async_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../../base/common/async.js */ \"./node_modules/monaco-editor/esm/vs/base/common/async.js\");\n/* harmony import */ var _base_common_dataTransfer_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../../../base/common/dataTransfer.js */ \"./node_modules/monaco-editor/esm/vs/base/common/dataTransfer.js\");\n/* harmony import */ var _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../../../base/common/lifecycle.js */ \"./node_modules/monaco-editor/esm/vs/base/common/lifecycle.js\");\n/* harmony import */ var _base_common_mime_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../../../../base/common/mime.js */ \"./node_modules/monaco-editor/esm/vs/base/common/mime.js\");\n/* harmony import */ var _base_common_platform_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../../../../base/common/platform.js */ \"./node_modules/monaco-editor/esm/vs/base/common/platform.js\");\n/* harmony import */ var _base_common_uuid_js__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ../../../../base/common/uuid.js */ \"./node_modules/monaco-editor/esm/vs/base/common/uuid.js\");\n/* harmony import */ var _browser_controller_textAreaInput_js__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ../../../browser/controller/textAreaInput.js */ \"./node_modules/monaco-editor/esm/vs/editor/browser/controller/textAreaInput.js\");\n/* harmony import */ var _browser_dnd_js__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ../../../browser/dnd.js */ \"./node_modules/monaco-editor/esm/vs/editor/browser/dnd.js\");\n/* harmony import */ var _browser_services_bulkEditService_js__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! ../../../browser/services/bulkEditService.js */ \"./node_modules/monaco-editor/esm/vs/editor/browser/services/bulkEditService.js\");\n/* harmony import */ var _common_core_range_js__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(/*! ../../../common/core/range.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/core/range.js\");\n/* harmony import */ var _common_services_languageFeatures_js__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(/*! ../../../common/services/languageFeatures.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/services/languageFeatures.js\");\n/* harmony import */ var _edit_js__WEBPACK_IMPORTED_MODULE_13__ = __webpack_require__(/*! ./edit.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/dropOrPasteInto/browser/edit.js\");\n/* harmony import */ var _editorState_browser_editorState_js__WEBPACK_IMPORTED_MODULE_14__ = __webpack_require__(/*! ../../editorState/browser/editorState.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/editorState/browser/editorState.js\");\n/* harmony import */ var _inlineProgress_browser_inlineProgress_js__WEBPACK_IMPORTED_MODULE_15__ = __webpack_require__(/*! ../../inlineProgress/browser/inlineProgress.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/inlineProgress/browser/inlineProgress.js\");\n/* harmony import */ var _nls_js__WEBPACK_IMPORTED_MODULE_16__ = __webpack_require__(/*! ../../../../nls.js */ \"./node_modules/monaco-editor/esm/vs/nls.js\");\n/* harmony import */ var _platform_clipboard_common_clipboardService_js__WEBPACK_IMPORTED_MODULE_17__ = __webpack_require__(/*! ../../../../platform/clipboard/common/clipboardService.js */ \"./node_modules/monaco-editor/esm/vs/platform/clipboard/common/clipboardService.js\");\n/* harmony import */ var _platform_contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_18__ = __webpack_require__(/*! ../../../../platform/contextkey/common/contextkey.js */ \"./node_modules/monaco-editor/esm/vs/platform/contextkey/common/contextkey.js\");\n/* harmony import */ var _platform_instantiation_common_instantiation_js__WEBPACK_IMPORTED_MODULE_19__ = __webpack_require__(/*! ../../../../platform/instantiation/common/instantiation.js */ \"./node_modules/monaco-editor/esm/vs/platform/instantiation/common/instantiation.js\");\n/* harmony import */ var _platform_progress_common_progress_js__WEBPACK_IMPORTED_MODULE_20__ = __webpack_require__(/*! ../../../../platform/progress/common/progress.js */ \"./node_modules/monaco-editor/esm/vs/platform/progress/common/progress.js\");\n/* harmony import */ var _platform_quickinput_common_quickInput_js__WEBPACK_IMPORTED_MODULE_21__ = __webpack_require__(/*! ../../../../platform/quickinput/common/quickInput.js */ \"./node_modules/monaco-editor/esm/vs/platform/quickinput/common/quickInput.js\");\n/* harmony import */ var _postEditWidget_js__WEBPACK_IMPORTED_MODULE_22__ = __webpack_require__(/*! ./postEditWidget.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/dropOrPasteInto/browser/postEditWidget.js\");\n/* harmony import */ var _message_browser_messageController_js__WEBPACK_IMPORTED_MODULE_23__ = __webpack_require__(/*! ../../message/browser/messageController.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/message/browser/messageController.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\nvar __decorate = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\n return c > 3 && r && Object.defineProperty(target, key, r), r;\n};\nvar __param = (undefined && undefined.__param) || function (paramIndex, decorator) {\n return function (target, key) { decorator(target, key, paramIndex); }\n};\nvar CopyPasteController_1;\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nconst changePasteTypeCommandId = 'editor.changePasteType';\nconst pasteWidgetVisibleCtx = new _platform_contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_18__.RawContextKey('pasteWidgetVisible', false, (0,_nls_js__WEBPACK_IMPORTED_MODULE_16__.localize)('pasteWidgetVisible', \"Whether the paste widget is showing\"));\nconst vscodeClipboardMime = 'application/vnd.code.copyMetadata';\nlet CopyPasteController = CopyPasteController_1 = class CopyPasteController extends _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_4__.Disposable {\n static get(editor) {\n return editor.getContribution(CopyPasteController_1.ID);\n }\n constructor(editor, instantiationService, _bulkEditService, _clipboardService, _languageFeaturesService, _quickInputService, _progressService) {\n super();\n this._bulkEditService = _bulkEditService;\n this._clipboardService = _clipboardService;\n this._languageFeaturesService = _languageFeaturesService;\n this._quickInputService = _quickInputService;\n this._progressService = _progressService;\n this._editor = editor;\n const container = editor.getContainerDomNode();\n this._register((0,_base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.addDisposableListener)(container, 'copy', e => this.handleCopy(e)));\n this._register((0,_base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.addDisposableListener)(container, 'cut', e => this.handleCopy(e)));\n this._register((0,_base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.addDisposableListener)(container, 'paste', e => this.handlePaste(e), true));\n this._pasteProgressManager = this._register(new _inlineProgress_browser_inlineProgress_js__WEBPACK_IMPORTED_MODULE_15__.InlineProgressManager('pasteIntoEditor', editor, instantiationService));\n this._postPasteWidgetManager = this._register(instantiationService.createInstance(_postEditWidget_js__WEBPACK_IMPORTED_MODULE_22__.PostEditWidgetManager, 'pasteIntoEditor', editor, pasteWidgetVisibleCtx, { id: changePasteTypeCommandId, label: (0,_nls_js__WEBPACK_IMPORTED_MODULE_16__.localize)('postPasteWidgetTitle', \"Show paste options...\") }));\n }\n changePasteType() {\n this._postPasteWidgetManager.tryShowSelector();\n }\n pasteAs(preferredId) {\n this._editor.focus();\n try {\n this._pasteAsActionContext = { preferredId };\n (0,_base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.getActiveDocument)().execCommand('paste');\n }\n finally {\n this._pasteAsActionContext = undefined;\n }\n }\n isPasteAsEnabled() {\n return this._editor.getOption(85 /* EditorOption.pasteAs */).enabled\n && !this._editor.getOption(91 /* EditorOption.readOnly */);\n }\n async finishedPaste() {\n await this._currentPasteOperation;\n }\n handleCopy(e) {\n var _a, _b;\n if (!this._editor.hasTextFocus()) {\n return;\n }\n if (_base_common_platform_js__WEBPACK_IMPORTED_MODULE_6__.isWeb) {\n // Explicitly clear the web resources clipboard.\n // This is needed because on web, the browser clipboard is faked out using an in-memory store.\n // This means the resources clipboard is not properly updated when copying from the editor.\n this._clipboardService.writeResources([]);\n }\n if (!e.clipboardData || !this.isPasteAsEnabled()) {\n return;\n }\n const model = this._editor.getModel();\n const selections = this._editor.getSelections();\n if (!model || !(selections === null || selections === void 0 ? void 0 : selections.length)) {\n return;\n }\n const enableEmptySelectionClipboard = this._editor.getOption(37 /* EditorOption.emptySelectionClipboard */);\n let ranges = selections;\n const wasFromEmptySelection = selections.length === 1 && selections[0].isEmpty();\n if (wasFromEmptySelection) {\n if (!enableEmptySelectionClipboard) {\n return;\n }\n ranges = [new _common_core_range_js__WEBPACK_IMPORTED_MODULE_11__.Range(ranges[0].startLineNumber, 1, ranges[0].startLineNumber, 1 + model.getLineLength(ranges[0].startLineNumber))];\n }\n const toCopy = (_a = this._editor._getViewModel()) === null || _a === void 0 ? void 0 : _a.getPlainTextToCopy(selections, enableEmptySelectionClipboard, _base_common_platform_js__WEBPACK_IMPORTED_MODULE_6__.isWindows);\n const multicursorText = Array.isArray(toCopy) ? toCopy : null;\n const defaultPastePayload = {\n multicursorText,\n pasteOnNewLine: wasFromEmptySelection,\n mode: null\n };\n const providers = this._languageFeaturesService.documentPasteEditProvider\n .ordered(model)\n .filter(x => !!x.prepareDocumentPaste);\n if (!providers.length) {\n this.setCopyMetadata(e.clipboardData, { defaultPastePayload });\n return;\n }\n const dataTransfer = (0,_browser_dnd_js__WEBPACK_IMPORTED_MODULE_9__.toVSDataTransfer)(e.clipboardData);\n const providerCopyMimeTypes = providers.flatMap(x => { var _a; return (_a = x.copyMimeTypes) !== null && _a !== void 0 ? _a : []; });\n // Save off a handle pointing to data that VS Code maintains.\n const handle = (0,_base_common_uuid_js__WEBPACK_IMPORTED_MODULE_7__.generateUuid)();\n this.setCopyMetadata(e.clipboardData, {\n id: handle,\n providerCopyMimeTypes,\n defaultPastePayload\n });\n const promise = (0,_base_common_async_js__WEBPACK_IMPORTED_MODULE_2__.createCancelablePromise)(async (token) => {\n const results = (0,_base_common_arrays_js__WEBPACK_IMPORTED_MODULE_1__.coalesce)(await Promise.all(providers.map(async (provider) => {\n try {\n return await provider.prepareDocumentPaste(model, ranges, dataTransfer, token);\n }\n catch (err) {\n console.error(err);\n return undefined;\n }\n })));\n // Values from higher priority providers should overwrite values from lower priority ones.\n // Reverse the array to so that the calls to `replace` below will do this\n results.reverse();\n for (const result of results) {\n for (const [mime, value] of result) {\n dataTransfer.replace(mime, value);\n }\n }\n return dataTransfer;\n });\n (_b = this._currentCopyOperation) === null || _b === void 0 ? void 0 : _b.dataTransferPromise.cancel();\n this._currentCopyOperation = { handle: handle, dataTransferPromise: promise };\n }\n async handlePaste(e) {\n var _a, _b, _c, _d, _e;\n if (!e.clipboardData || !this._editor.hasTextFocus()) {\n return;\n }\n (_a = _message_browser_messageController_js__WEBPACK_IMPORTED_MODULE_23__.MessageController.get(this._editor)) === null || _a === void 0 ? void 0 : _a.closeMessage();\n (_b = this._currentPasteOperation) === null || _b === void 0 ? void 0 : _b.cancel();\n this._currentPasteOperation = undefined;\n const model = this._editor.getModel();\n const selections = this._editor.getSelections();\n if (!(selections === null || selections === void 0 ? void 0 : selections.length) || !model) {\n return;\n }\n if (!this.isPasteAsEnabled()\n && !this._pasteAsActionContext // Still enable if paste as was explicitly requested\n ) {\n return;\n }\n const metadata = this.fetchCopyMetadata(e);\n const dataTransfer = (0,_browser_dnd_js__WEBPACK_IMPORTED_MODULE_9__.toExternalVSDataTransfer)(e.clipboardData);\n dataTransfer.delete(vscodeClipboardMime);\n const allPotentialMimeTypes = [\n ...e.clipboardData.types,\n ...(_c = metadata === null || metadata === void 0 ? void 0 : metadata.providerCopyMimeTypes) !== null && _c !== void 0 ? _c : [],\n // TODO: always adds `uri-list` because this get set if there are resources in the system clipboard.\n // However we can only check the system clipboard async. For this early check, just add it in.\n // We filter providers again once we have the final dataTransfer we will use.\n _base_common_mime_js__WEBPACK_IMPORTED_MODULE_5__.Mimes.uriList,\n ];\n const allProviders = this._languageFeaturesService.documentPasteEditProvider\n .ordered(model)\n .filter(provider => {\n var _a, _b;\n if ((_a = this._pasteAsActionContext) === null || _a === void 0 ? void 0 : _a.preferredId) {\n if (this._pasteAsActionContext.preferredId !== provider.id) {\n return false;\n }\n }\n return (_b = provider.pasteMimeTypes) === null || _b === void 0 ? void 0 : _b.some(type => (0,_base_common_dataTransfer_js__WEBPACK_IMPORTED_MODULE_3__.matchesMimeType)(type, allPotentialMimeTypes));\n });\n if (!allProviders.length) {\n if ((_d = this._pasteAsActionContext) === null || _d === void 0 ? void 0 : _d.preferredId) {\n this.showPasteAsNoEditMessage(selections, (_e = this._pasteAsActionContext) === null || _e === void 0 ? void 0 : _e.preferredId);\n }\n return;\n }\n // Prevent the editor's default paste handler from running.\n // Note that after this point, we are fully responsible for handling paste.\n // If we can't provider a paste for any reason, we need to explicitly delegate pasting back to the editor.\n e.preventDefault();\n e.stopImmediatePropagation();\n if (this._pasteAsActionContext) {\n this.showPasteAsPick(this._pasteAsActionContext.preferredId, allProviders, selections, dataTransfer, metadata, { trigger: 'explicit', only: this._pasteAsActionContext.preferredId });\n }\n else {\n this.doPasteInline(allProviders, selections, dataTransfer, metadata, { trigger: 'implicit' });\n }\n }\n showPasteAsNoEditMessage(selections, editId) {\n var _a;\n (_a = _message_browser_messageController_js__WEBPACK_IMPORTED_MODULE_23__.MessageController.get(this._editor)) === null || _a === void 0 ? void 0 : _a.showMessage((0,_nls_js__WEBPACK_IMPORTED_MODULE_16__.localize)('pasteAsError', \"No paste edits for '{0}' found\", editId), selections[0].getStartPosition());\n }\n doPasteInline(allProviders, selections, dataTransfer, metadata, context) {\n const p = (0,_base_common_async_js__WEBPACK_IMPORTED_MODULE_2__.createCancelablePromise)(async (token) => {\n const editor = this._editor;\n if (!editor.hasModel()) {\n return;\n }\n const model = editor.getModel();\n const tokenSource = new _editorState_browser_editorState_js__WEBPACK_IMPORTED_MODULE_14__.EditorStateCancellationTokenSource(editor, 1 /* CodeEditorStateFlag.Value */ | 2 /* CodeEditorStateFlag.Selection */, undefined, token);\n try {\n await this.mergeInDataFromCopy(dataTransfer, metadata, tokenSource.token);\n if (tokenSource.token.isCancellationRequested) {\n return;\n }\n // Filter out any providers the don't match the full data transfer we will send them.\n const supportedProviders = allProviders.filter(provider => isSupportedPasteProvider(provider, dataTransfer));\n if (!supportedProviders.length\n || (supportedProviders.length === 1 && supportedProviders[0].id === 'text') // Only our default text provider is active\n ) {\n await this.applyDefaultPasteHandler(dataTransfer, metadata, tokenSource.token);\n return;\n }\n const providerEdits = await this.getPasteEdits(supportedProviders, dataTransfer, model, selections, context, tokenSource.token);\n if (tokenSource.token.isCancellationRequested) {\n return;\n }\n // If the only edit returned is a text edit, use the default paste handler\n if (providerEdits.length === 1 && providerEdits[0].providerId === 'text') {\n await this.applyDefaultPasteHandler(dataTransfer, metadata, tokenSource.token);\n return;\n }\n if (providerEdits.length) {\n const canShowWidget = editor.getOption(85 /* EditorOption.pasteAs */).showPasteSelector === 'afterPaste';\n return this._postPasteWidgetManager.applyEditAndShowIfNeeded(selections, { activeEditIndex: 0, allEdits: providerEdits }, canShowWidget, tokenSource.token);\n }\n await this.applyDefaultPasteHandler(dataTransfer, metadata, tokenSource.token);\n }\n finally {\n tokenSource.dispose();\n if (this._currentPasteOperation === p) {\n this._currentPasteOperation = undefined;\n }\n }\n });\n this._pasteProgressManager.showWhile(selections[0].getEndPosition(), (0,_nls_js__WEBPACK_IMPORTED_MODULE_16__.localize)('pasteIntoEditorProgress', \"Running paste handlers. Click to cancel\"), p);\n this._currentPasteOperation = p;\n }\n showPasteAsPick(preferredId, allProviders, selections, dataTransfer, metadata, context) {\n const p = (0,_base_common_async_js__WEBPACK_IMPORTED_MODULE_2__.createCancelablePromise)(async (token) => {\n const editor = this._editor;\n if (!editor.hasModel()) {\n return;\n }\n const model = editor.getModel();\n const tokenSource = new _editorState_browser_editorState_js__WEBPACK_IMPORTED_MODULE_14__.EditorStateCancellationTokenSource(editor, 1 /* CodeEditorStateFlag.Value */ | 2 /* CodeEditorStateFlag.Selection */, undefined, token);\n try {\n await this.mergeInDataFromCopy(dataTransfer, metadata, tokenSource.token);\n if (tokenSource.token.isCancellationRequested) {\n return;\n }\n // Filter out any providers the don't match the full data transfer we will send them.\n let supportedProviders = allProviders.filter(provider => isSupportedPasteProvider(provider, dataTransfer));\n if (preferredId) {\n // We are looking for a specific edit\n supportedProviders = supportedProviders.filter(edit => edit.id === preferredId);\n }\n const providerEdits = await this.getPasteEdits(supportedProviders, dataTransfer, model, selections, context, tokenSource.token);\n if (tokenSource.token.isCancellationRequested) {\n return;\n }\n if (!providerEdits.length) {\n if (context.only) {\n this.showPasteAsNoEditMessage(selections, context.only);\n }\n return;\n }\n let pickedEdit;\n if (preferredId) {\n pickedEdit = providerEdits.at(0);\n }\n else {\n const selected = await this._quickInputService.pick(providerEdits.map((edit) => ({\n label: edit.label,\n description: edit.providerId,\n detail: edit.detail,\n edit,\n })), {\n placeHolder: (0,_nls_js__WEBPACK_IMPORTED_MODULE_16__.localize)('pasteAsPickerPlaceholder', \"Select Paste Action\"),\n });\n pickedEdit = selected === null || selected === void 0 ? void 0 : selected.edit;\n }\n if (!pickedEdit) {\n return;\n }\n const combinedWorkspaceEdit = (0,_edit_js__WEBPACK_IMPORTED_MODULE_13__.createCombinedWorkspaceEdit)(model.uri, selections, pickedEdit);\n await this._bulkEditService.apply(combinedWorkspaceEdit, { editor: this._editor });\n }\n finally {\n tokenSource.dispose();\n if (this._currentPasteOperation === p) {\n this._currentPasteOperation = undefined;\n }\n }\n });\n this._progressService.withProgress({\n location: 10 /* ProgressLocation.Window */,\n title: (0,_nls_js__WEBPACK_IMPORTED_MODULE_16__.localize)('pasteAsProgress', \"Running paste handlers\"),\n }, () => p);\n }\n setCopyMetadata(dataTransfer, metadata) {\n dataTransfer.setData(vscodeClipboardMime, JSON.stringify(metadata));\n }\n fetchCopyMetadata(e) {\n var _a;\n if (!e.clipboardData) {\n return;\n }\n // Prefer using the clipboard data we saved off\n const rawMetadata = e.clipboardData.getData(vscodeClipboardMime);\n if (rawMetadata) {\n try {\n return JSON.parse(rawMetadata);\n }\n catch (_b) {\n return undefined;\n }\n }\n // Otherwise try to extract the generic text editor metadata\n const [_, metadata] = _browser_controller_textAreaInput_js__WEBPACK_IMPORTED_MODULE_8__.ClipboardEventUtils.getTextData(e.clipboardData);\n if (metadata) {\n return {\n defaultPastePayload: {\n mode: metadata.mode,\n multicursorText: (_a = metadata.multicursorText) !== null && _a !== void 0 ? _a : null,\n pasteOnNewLine: !!metadata.isFromEmptySelection,\n },\n };\n }\n return undefined;\n }\n async mergeInDataFromCopy(dataTransfer, metadata, token) {\n var _a;\n if ((metadata === null || metadata === void 0 ? void 0 : metadata.id) && ((_a = this._currentCopyOperation) === null || _a === void 0 ? void 0 : _a.handle) === metadata.id) {\n const toMergeDataTransfer = await this._currentCopyOperation.dataTransferPromise;\n if (token.isCancellationRequested) {\n return;\n }\n for (const [key, value] of toMergeDataTransfer) {\n dataTransfer.replace(key, value);\n }\n }\n if (!dataTransfer.has(_base_common_mime_js__WEBPACK_IMPORTED_MODULE_5__.Mimes.uriList)) {\n const resources = await this._clipboardService.readResources();\n if (token.isCancellationRequested) {\n return;\n }\n if (resources.length) {\n dataTransfer.append(_base_common_mime_js__WEBPACK_IMPORTED_MODULE_5__.Mimes.uriList, (0,_base_common_dataTransfer_js__WEBPACK_IMPORTED_MODULE_3__.createStringDataTransferItem)(_base_common_dataTransfer_js__WEBPACK_IMPORTED_MODULE_3__.UriList.create(resources)));\n }\n }\n }\n async getPasteEdits(providers, dataTransfer, model, selections, context, token) {\n const results = await (0,_base_common_async_js__WEBPACK_IMPORTED_MODULE_2__.raceCancellation)(Promise.all(providers.map(async (provider) => {\n var _a;\n try {\n const edit = await ((_a = provider.provideDocumentPasteEdits) === null || _a === void 0 ? void 0 : _a.call(provider, model, selections, dataTransfer, context, token));\n if (edit) {\n return { ...edit, providerId: provider.id };\n }\n }\n catch (err) {\n console.error(err);\n }\n return undefined;\n })), token);\n const edits = (0,_base_common_arrays_js__WEBPACK_IMPORTED_MODULE_1__.coalesce)(results !== null && results !== void 0 ? results : []);\n return (0,_edit_js__WEBPACK_IMPORTED_MODULE_13__.sortEditsByYieldTo)(edits);\n }\n async applyDefaultPasteHandler(dataTransfer, metadata, token) {\n var _a, _b, _c;\n const textDataTransfer = (_a = dataTransfer.get(_base_common_mime_js__WEBPACK_IMPORTED_MODULE_5__.Mimes.text)) !== null && _a !== void 0 ? _a : dataTransfer.get('text');\n if (!textDataTransfer) {\n return;\n }\n const text = await textDataTransfer.asString();\n if (token.isCancellationRequested) {\n return;\n }\n const payload = {\n text,\n pasteOnNewLine: (_b = metadata === null || metadata === void 0 ? void 0 : metadata.defaultPastePayload.pasteOnNewLine) !== null && _b !== void 0 ? _b : false,\n multicursorText: (_c = metadata === null || metadata === void 0 ? void 0 : metadata.defaultPastePayload.multicursorText) !== null && _c !== void 0 ? _c : null,\n mode: null,\n };\n this._editor.trigger('keyboard', \"paste\" /* Handler.Paste */, payload);\n }\n};\nCopyPasteController.ID = 'editor.contrib.copyPasteActionController';\nCopyPasteController = CopyPasteController_1 = __decorate([\n __param(1, _platform_instantiation_common_instantiation_js__WEBPACK_IMPORTED_MODULE_19__.IInstantiationService),\n __param(2, _browser_services_bulkEditService_js__WEBPACK_IMPORTED_MODULE_10__.IBulkEditService),\n __param(3, _platform_clipboard_common_clipboardService_js__WEBPACK_IMPORTED_MODULE_17__.IClipboardService),\n __param(4, _common_services_languageFeatures_js__WEBPACK_IMPORTED_MODULE_12__.ILanguageFeaturesService),\n __param(5, _platform_quickinput_common_quickInput_js__WEBPACK_IMPORTED_MODULE_21__.IQuickInputService),\n __param(6, _platform_progress_common_progress_js__WEBPACK_IMPORTED_MODULE_20__.IProgressService)\n], CopyPasteController);\n\nfunction isSupportedPasteProvider(provider, dataTransfer) {\n var _a;\n return Boolean((_a = provider.pasteMimeTypes) === null || _a === void 0 ? void 0 : _a.some(type => dataTransfer.matches(type)));\n}\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/contrib/dropOrPasteInto/browser/copyPasteController.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/contrib/dropOrPasteInto/browser/defaultProviders.js":
/*!******************************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/contrib/dropOrPasteInto/browser/defaultProviders.js ***!
\******************************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ DefaultDropProvidersFeature: () => (/* binding */ DefaultDropProvidersFeature),\n/* harmony export */ DefaultPasteProvidersFeature: () => (/* binding */ DefaultPasteProvidersFeature)\n/* harmony export */ });\n/* harmony import */ var _base_common_arrays_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../../base/common/arrays.js */ \"./node_modules/monaco-editor/esm/vs/base/common/arrays.js\");\n/* harmony import */ var _base_common_dataTransfer_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../base/common/dataTransfer.js */ \"./node_modules/monaco-editor/esm/vs/base/common/dataTransfer.js\");\n/* harmony import */ var _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../../base/common/lifecycle.js */ \"./node_modules/monaco-editor/esm/vs/base/common/lifecycle.js\");\n/* harmony import */ var _base_common_mime_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../../../base/common/mime.js */ \"./node_modules/monaco-editor/esm/vs/base/common/mime.js\");\n/* harmony import */ var _base_common_network_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../../../base/common/network.js */ \"./node_modules/monaco-editor/esm/vs/base/common/network.js\");\n/* harmony import */ var _base_common_resources_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../../../../base/common/resources.js */ \"./node_modules/monaco-editor/esm/vs/base/common/resources.js\");\n/* harmony import */ var _base_common_uri_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../../../../base/common/uri.js */ \"./node_modules/monaco-editor/esm/vs/base/common/uri.js\");\n/* harmony import */ var _common_services_languageFeatures_js__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ../../../common/services/languageFeatures.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/services/languageFeatures.js\");\n/* harmony import */ var _nls_js__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ../../../../nls.js */ \"./node_modules/monaco-editor/esm/vs/nls.js\");\n/* harmony import */ var _platform_workspace_common_workspace_js__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ../../../../platform/workspace/common/workspace.js */ \"./node_modules/monaco-editor/esm/vs/platform/workspace/common/workspace.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\nvar __decorate = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\n return c > 3 && r && Object.defineProperty(target, key, r), r;\n};\nvar __param = (undefined && undefined.__param) || function (paramIndex, decorator) {\n return function (target, key) { decorator(target, key, paramIndex); }\n};\n\n\n\n\n\n\n\n\n\n\nconst builtInLabel = (0,_nls_js__WEBPACK_IMPORTED_MODULE_8__.localize)('builtIn', 'Built-in');\nclass SimplePasteAndDropProvider {\n async provideDocumentPasteEdits(_model, _ranges, dataTransfer, context, token) {\n const edit = await this.getEdit(dataTransfer, token);\n return edit ? { insertText: edit.insertText, label: edit.label, detail: edit.detail, handledMimeType: edit.handledMimeType, yieldTo: edit.yieldTo } : undefined;\n }\n async provideDocumentOnDropEdits(_model, _position, dataTransfer, token) {\n const edit = await this.getEdit(dataTransfer, token);\n return edit ? { insertText: edit.insertText, label: edit.label, handledMimeType: edit.handledMimeType, yieldTo: edit.yieldTo } : undefined;\n }\n}\nclass DefaultTextProvider extends SimplePasteAndDropProvider {\n constructor() {\n super(...arguments);\n this.id = 'text';\n this.dropMimeTypes = [_base_common_mime_js__WEBPACK_IMPORTED_MODULE_3__.Mimes.text];\n this.pasteMimeTypes = [_base_common_mime_js__WEBPACK_IMPORTED_MODULE_3__.Mimes.text];\n }\n async getEdit(dataTransfer, _token) {\n const textEntry = dataTransfer.get(_base_common_mime_js__WEBPACK_IMPORTED_MODULE_3__.Mimes.text);\n if (!textEntry) {\n return;\n }\n // Suppress if there's also a uriList entry.\n // Typically the uri-list contains the same text as the text entry so showing both is confusing.\n if (dataTransfer.has(_base_common_mime_js__WEBPACK_IMPORTED_MODULE_3__.Mimes.uriList)) {\n return;\n }\n const insertText = await textEntry.asString();\n return {\n handledMimeType: _base_common_mime_js__WEBPACK_IMPORTED_MODULE_3__.Mimes.text,\n label: (0,_nls_js__WEBPACK_IMPORTED_MODULE_8__.localize)('text.label', \"Insert Plain Text\"),\n detail: builtInLabel,\n insertText\n };\n }\n}\nclass PathProvider extends SimplePasteAndDropProvider {\n constructor() {\n super(...arguments);\n this.id = 'uri';\n this.dropMimeTypes = [_base_common_mime_js__WEBPACK_IMPORTED_MODULE_3__.Mimes.uriList];\n this.pasteMimeTypes = [_base_common_mime_js__WEBPACK_IMPORTED_MODULE_3__.Mimes.uriList];\n }\n async getEdit(dataTransfer, token) {\n const entries = await extractUriList(dataTransfer);\n if (!entries.length || token.isCancellationRequested) {\n return;\n }\n let uriCount = 0;\n const insertText = entries\n .map(({ uri, originalText }) => {\n if (uri.scheme === _base_common_network_js__WEBPACK_IMPORTED_MODULE_4__.Schemas.file) {\n return uri.fsPath;\n }\n else {\n uriCount++;\n return originalText;\n }\n })\n .join(' ');\n let label;\n if (uriCount > 0) {\n // Dropping at least one generic uri (such as https) so use most generic label\n label = entries.length > 1\n ? (0,_nls_js__WEBPACK_IMPORTED_MODULE_8__.localize)('defaultDropProvider.uriList.uris', \"Insert Uris\")\n : (0,_nls_js__WEBPACK_IMPORTED_MODULE_8__.localize)('defaultDropProvider.uriList.uri', \"Insert Uri\");\n }\n else {\n // All the paths are file paths\n label = entries.length > 1\n ? (0,_nls_js__WEBPACK_IMPORTED_MODULE_8__.localize)('defaultDropProvider.uriList.paths', \"Insert Paths\")\n : (0,_nls_js__WEBPACK_IMPORTED_MODULE_8__.localize)('defaultDropProvider.uriList.path', \"Insert Path\");\n }\n return {\n handledMimeType: _base_common_mime_js__WEBPACK_IMPORTED_MODULE_3__.Mimes.uriList,\n insertText,\n label,\n detail: builtInLabel,\n };\n }\n}\nlet RelativePathProvider = class RelativePathProvider extends SimplePasteAndDropProvider {\n constructor(_workspaceContextService) {\n super();\n this._workspaceContextService = _workspaceContextService;\n this.id = 'relativePath';\n this.dropMimeTypes = [_base_common_mime_js__WEBPACK_IMPORTED_MODULE_3__.Mimes.uriList];\n this.pasteMimeTypes = [_base_common_mime_js__WEBPACK_IMPORTED_MODULE_3__.Mimes.uriList];\n }\n async getEdit(dataTransfer, token) {\n const entries = await extractUriList(dataTransfer);\n if (!entries.length || token.isCancellationRequested) {\n return;\n }\n const relativeUris = (0,_base_common_arrays_js__WEBPACK_IMPORTED_MODULE_0__.coalesce)(entries.map(({ uri }) => {\n const root = this._workspaceContextService.getWorkspaceFolder(uri);\n return root ? (0,_base_common_resources_js__WEBPACK_IMPORTED_MODULE_5__.relativePath)(root.uri, uri) : undefined;\n }));\n if (!relativeUris.length) {\n return;\n }\n return {\n handledMimeType: _base_common_mime_js__WEBPACK_IMPORTED_MODULE_3__.Mimes.uriList,\n insertText: relativeUris.join(' '),\n label: entries.length > 1\n ? (0,_nls_js__WEBPACK_IMPORTED_MODULE_8__.localize)('defaultDropProvider.uriList.relativePaths', \"Insert Relative Paths\")\n : (0,_nls_js__WEBPACK_IMPORTED_MODULE_8__.localize)('defaultDropProvider.uriList.relativePath', \"Insert Relative Path\"),\n detail: builtInLabel,\n };\n }\n};\nRelativePathProvider = __decorate([\n __param(0, _platform_workspace_common_workspace_js__WEBPACK_IMPORTED_MODULE_9__.IWorkspaceContextService)\n], RelativePathProvider);\nclass PasteHtmlProvider {\n constructor() {\n this.id = 'html';\n this.pasteMimeTypes = ['text/html'];\n this._yieldTo = [{ mimeType: _base_common_mime_js__WEBPACK_IMPORTED_MODULE_3__.Mimes.text }];\n }\n async provideDocumentPasteEdits(_model, _ranges, dataTransfer, context, token) {\n if (context.trigger !== 'explicit' && context.only !== this.id) {\n return;\n }\n const entry = dataTransfer.get('text/html');\n const htmlText = await (entry === null || entry === void 0 ? void 0 : entry.asString());\n if (!htmlText || token.isCancellationRequested) {\n return;\n }\n return {\n insertText: htmlText,\n yieldTo: this._yieldTo,\n label: (0,_nls_js__WEBPACK_IMPORTED_MODULE_8__.localize)('pasteHtmlLabel', 'Insert HTML'),\n detail: builtInLabel,\n };\n }\n}\nasync function extractUriList(dataTransfer) {\n const urlListEntry = dataTransfer.get(_base_common_mime_js__WEBPACK_IMPORTED_MODULE_3__.Mimes.uriList);\n if (!urlListEntry) {\n return [];\n }\n const strUriList = await urlListEntry.asString();\n const entries = [];\n for (const entry of _base_common_dataTransfer_js__WEBPACK_IMPORTED_MODULE_1__.UriList.parse(strUriList)) {\n try {\n entries.push({ uri: _base_common_uri_js__WEBPACK_IMPORTED_MODULE_6__.URI.parse(entry), originalText: entry });\n }\n catch (_a) {\n // noop\n }\n }\n return entries;\n}\nlet DefaultDropProvidersFeature = class DefaultDropProvidersFeature extends _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_2__.Disposable {\n constructor(languageFeaturesService, workspaceContextService) {\n super();\n this._register(languageFeaturesService.documentOnDropEditProvider.register('*', new DefaultTextProvider()));\n this._register(languageFeaturesService.documentOnDropEditProvider.register('*', new PathProvider()));\n this._register(languageFeaturesService.documentOnDropEditProvider.register('*', new RelativePathProvider(workspaceContextService)));\n }\n};\nDefaultDropProvidersFeature = __decorate([\n __param(0, _common_services_languageFeatures_js__WEBPACK_IMPORTED_MODULE_7__.ILanguageFeaturesService),\n __param(1, _platform_workspace_common_workspace_js__WEBPACK_IMPORTED_MODULE_9__.IWorkspaceContextService)\n], DefaultDropProvidersFeature);\n\nlet DefaultPasteProvidersFeature = class DefaultPasteProvidersFeature extends _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_2__.Disposable {\n constructor(languageFeaturesService, workspaceContextService) {\n super();\n this._register(languageFeaturesService.documentPasteEditProvider.register('*', new DefaultTextProvider()));\n this._register(languageFeaturesService.documentPasteEditProvider.register('*', new PathProvider()));\n this._register(languageFeaturesService.documentPasteEditProvider.register('*', new RelativePathProvider(workspaceContextService)));\n this._register(languageFeaturesService.documentPasteEditProvider.register('*', new PasteHtmlProvider()));\n }\n};\nDefaultPasteProvidersFeature = __decorate([\n __param(0, _common_services_languageFeatures_js__WEBPACK_IMPORTED_MODULE_7__.ILanguageFeaturesService),\n __param(1, _platform_workspace_common_workspace_js__WEBPACK_IMPORTED_MODULE_9__.IWorkspaceContextService)\n], DefaultPasteProvidersFeature);\n\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/contrib/dropOrPasteInto/browser/defaultProviders.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/contrib/dropOrPasteInto/browser/dropIntoEditorContribution.js":
/*!****************************************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/contrib/dropOrPasteInto/browser/dropIntoEditorContribution.js ***!
\****************************************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var _browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../browser/editorExtensions.js */ \"./node_modules/monaco-editor/esm/vs/editor/browser/editorExtensions.js\");\n/* harmony import */ var _common_config_editorConfigurationSchema_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../common/config/editorConfigurationSchema.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/config/editorConfigurationSchema.js\");\n/* harmony import */ var _common_editorFeatures_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../common/editorFeatures.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/editorFeatures.js\");\n/* harmony import */ var _defaultProviders_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./defaultProviders.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/dropOrPasteInto/browser/defaultProviders.js\");\n/* harmony import */ var _nls_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../../../nls.js */ \"./node_modules/monaco-editor/esm/vs/nls.js\");\n/* harmony import */ var _platform_configuration_common_configurationRegistry_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../../../../platform/configuration/common/configurationRegistry.js */ \"./node_modules/monaco-editor/esm/vs/platform/configuration/common/configurationRegistry.js\");\n/* harmony import */ var _platform_registry_common_platform_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../../../../platform/registry/common/platform.js */ \"./node_modules/monaco-editor/esm/vs/platform/registry/common/platform.js\");\n/* harmony import */ var _dropIntoEditorController_js__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ./dropIntoEditorController.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/dropOrPasteInto/browser/dropIntoEditorController.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n\n\n\n\n\n\n\n(0,_browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_0__.registerEditorContribution)(_dropIntoEditorController_js__WEBPACK_IMPORTED_MODULE_7__.DropIntoEditorController.ID, _dropIntoEditorController_js__WEBPACK_IMPORTED_MODULE_7__.DropIntoEditorController, 2 /* EditorContributionInstantiation.BeforeFirstInteraction */);\n(0,_browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_0__.registerEditorCommand)(new class extends _browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_0__.EditorCommand {\n constructor() {\n super({\n id: _dropIntoEditorController_js__WEBPACK_IMPORTED_MODULE_7__.changeDropTypeCommandId,\n precondition: _dropIntoEditorController_js__WEBPACK_IMPORTED_MODULE_7__.dropWidgetVisibleCtx,\n kbOpts: {\n weight: 100 /* KeybindingWeight.EditorContrib */,\n primary: 2048 /* KeyMod.CtrlCmd */ | 89 /* KeyCode.Period */,\n }\n });\n }\n runEditorCommand(_accessor, editor, _args) {\n var _a;\n (_a = _dropIntoEditorController_js__WEBPACK_IMPORTED_MODULE_7__.DropIntoEditorController.get(editor)) === null || _a === void 0 ? void 0 : _a.changeDropType();\n }\n});\n(0,_common_editorFeatures_js__WEBPACK_IMPORTED_MODULE_2__.registerEditorFeature)(_defaultProviders_js__WEBPACK_IMPORTED_MODULE_3__.DefaultDropProvidersFeature);\n_platform_registry_common_platform_js__WEBPACK_IMPORTED_MODULE_6__.Registry.as(_platform_configuration_common_configurationRegistry_js__WEBPACK_IMPORTED_MODULE_5__.Extensions.Configuration).registerConfiguration({\n ..._common_config_editorConfigurationSchema_js__WEBPACK_IMPORTED_MODULE_1__.editorConfigurationBaseNode,\n properties: {\n [_dropIntoEditorController_js__WEBPACK_IMPORTED_MODULE_7__.defaultProviderConfig]: {\n type: 'object',\n scope: 5 /* ConfigurationScope.LANGUAGE_OVERRIDABLE */,\n description: _nls_js__WEBPACK_IMPORTED_MODULE_4__.localize('defaultProviderDescription', \"Configures the default drop provider to use for content of a given mime type.\"),\n default: {},\n additionalProperties: {\n type: 'string',\n },\n },\n }\n});\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/contrib/dropOrPasteInto/browser/dropIntoEditorContribution.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/contrib/dropOrPasteInto/browser/dropIntoEditorController.js":
/*!**************************************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/contrib/dropOrPasteInto/browser/dropIntoEditorController.js ***!
\**************************************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ DropIntoEditorController: () => (/* binding */ DropIntoEditorController),\n/* harmony export */ changeDropTypeCommandId: () => (/* binding */ changeDropTypeCommandId),\n/* harmony export */ defaultProviderConfig: () => (/* binding */ defaultProviderConfig),\n/* harmony export */ dropWidgetVisibleCtx: () => (/* binding */ dropWidgetVisibleCtx)\n/* harmony export */ });\n/* harmony import */ var _base_common_arrays_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../../base/common/arrays.js */ \"./node_modules/monaco-editor/esm/vs/base/common/arrays.js\");\n/* harmony import */ var _base_common_async_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../base/common/async.js */ \"./node_modules/monaco-editor/esm/vs/base/common/async.js\");\n/* harmony import */ var _base_common_dataTransfer_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../../base/common/dataTransfer.js */ \"./node_modules/monaco-editor/esm/vs/base/common/dataTransfer.js\");\n/* harmony import */ var _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../../../base/common/lifecycle.js */ \"./node_modules/monaco-editor/esm/vs/base/common/lifecycle.js\");\n/* harmony import */ var _browser_dnd_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../../browser/dnd.js */ \"./node_modules/monaco-editor/esm/vs/editor/browser/dnd.js\");\n/* harmony import */ var _common_core_range_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../../../common/core/range.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/core/range.js\");\n/* harmony import */ var _common_services_languageFeatures_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../../../common/services/languageFeatures.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/services/languageFeatures.js\");\n/* harmony import */ var _common_services_treeViewsDnd_js__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ../../../common/services/treeViewsDnd.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/services/treeViewsDnd.js\");\n/* harmony import */ var _common_services_treeViewsDndService_js__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ../../../common/services/treeViewsDndService.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/services/treeViewsDndService.js\");\n/* harmony import */ var _editorState_browser_editorState_js__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ../../editorState/browser/editorState.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/editorState/browser/editorState.js\");\n/* harmony import */ var _inlineProgress_browser_inlineProgress_js__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! ../../inlineProgress/browser/inlineProgress.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/inlineProgress/browser/inlineProgress.js\");\n/* harmony import */ var _nls_js__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(/*! ../../../../nls.js */ \"./node_modules/monaco-editor/esm/vs/nls.js\");\n/* harmony import */ var _platform_configuration_common_configuration_js__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(/*! ../../../../platform/configuration/common/configuration.js */ \"./node_modules/monaco-editor/esm/vs/platform/configuration/common/configuration.js\");\n/* harmony import */ var _platform_contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_13__ = __webpack_require__(/*! ../../../../platform/contextkey/common/contextkey.js */ \"./node_modules/monaco-editor/esm/vs/platform/contextkey/common/contextkey.js\");\n/* harmony import */ var _platform_dnd_browser_dnd_js__WEBPACK_IMPORTED_MODULE_14__ = __webpack_require__(/*! ../../../../platform/dnd/browser/dnd.js */ \"./node_modules/monaco-editor/esm/vs/platform/dnd/browser/dnd.js\");\n/* harmony import */ var _platform_instantiation_common_instantiation_js__WEBPACK_IMPORTED_MODULE_15__ = __webpack_require__(/*! ../../../../platform/instantiation/common/instantiation.js */ \"./node_modules/monaco-editor/esm/vs/platform/instantiation/common/instantiation.js\");\n/* harmony import */ var _edit_js__WEBPACK_IMPORTED_MODULE_16__ = __webpack_require__(/*! ./edit.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/dropOrPasteInto/browser/edit.js\");\n/* harmony import */ var _postEditWidget_js__WEBPACK_IMPORTED_MODULE_17__ = __webpack_require__(/*! ./postEditWidget.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/dropOrPasteInto/browser/postEditWidget.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\nvar __decorate = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\n return c > 3 && r && Object.defineProperty(target, key, r), r;\n};\nvar __param = (undefined && undefined.__param) || function (paramIndex, decorator) {\n return function (target, key) { decorator(target, key, paramIndex); }\n};\nvar DropIntoEditorController_1;\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nconst defaultProviderConfig = 'editor.experimental.dropIntoEditor.defaultProvider';\nconst changeDropTypeCommandId = 'editor.changeDropType';\nconst dropWidgetVisibleCtx = new _platform_contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_13__.RawContextKey('dropWidgetVisible', false, (0,_nls_js__WEBPACK_IMPORTED_MODULE_11__.localize)('dropWidgetVisible', \"Whether the drop widget is showing\"));\nlet DropIntoEditorController = DropIntoEditorController_1 = class DropIntoEditorController extends _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_3__.Disposable {\n static get(editor) {\n return editor.getContribution(DropIntoEditorController_1.ID);\n }\n constructor(editor, instantiationService, _configService, _languageFeaturesService, _treeViewsDragAndDropService) {\n super();\n this._configService = _configService;\n this._languageFeaturesService = _languageFeaturesService;\n this._treeViewsDragAndDropService = _treeViewsDragAndDropService;\n this.treeItemsTransfer = _platform_dnd_browser_dnd_js__WEBPACK_IMPORTED_MODULE_14__.LocalSelectionTransfer.getInstance();\n this._dropProgressManager = this._register(instantiationService.createInstance(_inlineProgress_browser_inlineProgress_js__WEBPACK_IMPORTED_MODULE_10__.InlineProgressManager, 'dropIntoEditor', editor));\n this._postDropWidgetManager = this._register(instantiationService.createInstance(_postEditWidget_js__WEBPACK_IMPORTED_MODULE_17__.PostEditWidgetManager, 'dropIntoEditor', editor, dropWidgetVisibleCtx, { id: changeDropTypeCommandId, label: (0,_nls_js__WEBPACK_IMPORTED_MODULE_11__.localize)('postDropWidgetTitle', \"Show drop options...\") }));\n this._register(editor.onDropIntoEditor(e => this.onDropIntoEditor(editor, e.position, e.event)));\n }\n changeDropType() {\n this._postDropWidgetManager.tryShowSelector();\n }\n async onDropIntoEditor(editor, position, dragEvent) {\n var _a;\n if (!dragEvent.dataTransfer || !editor.hasModel()) {\n return;\n }\n (_a = this._currentOperation) === null || _a === void 0 ? void 0 : _a.cancel();\n editor.focus();\n editor.setPosition(position);\n const p = (0,_base_common_async_js__WEBPACK_IMPORTED_MODULE_1__.createCancelablePromise)(async (token) => {\n const tokenSource = new _editorState_browser_editorState_js__WEBPACK_IMPORTED_MODULE_9__.EditorStateCancellationTokenSource(editor, 1 /* CodeEditorStateFlag.Value */, undefined, token);\n try {\n const ourDataTransfer = await this.extractDataTransferData(dragEvent);\n if (ourDataTransfer.size === 0 || tokenSource.token.isCancellationRequested) {\n return;\n }\n const model = editor.getModel();\n if (!model) {\n return;\n }\n const providers = this._languageFeaturesService.documentOnDropEditProvider\n .ordered(model)\n .filter(provider => {\n if (!provider.dropMimeTypes) {\n // Keep all providers that don't specify mime types\n return true;\n }\n return provider.dropMimeTypes.some(mime => ourDataTransfer.matches(mime));\n });\n const edits = await this.getDropEdits(providers, model, position, ourDataTransfer, tokenSource);\n if (tokenSource.token.isCancellationRequested) {\n return;\n }\n if (edits.length) {\n const activeEditIndex = this.getInitialActiveEditIndex(model, edits);\n const canShowWidget = editor.getOption(36 /* EditorOption.dropIntoEditor */).showDropSelector === 'afterDrop';\n // Pass in the parent token here as it tracks cancelling the entire drop operation\n await this._postDropWidgetManager.applyEditAndShowIfNeeded([_common_core_range_js__WEBPACK_IMPORTED_MODULE_5__.Range.fromPositions(position)], { activeEditIndex, allEdits: edits }, canShowWidget, token);\n }\n }\n finally {\n tokenSource.dispose();\n if (this._currentOperation === p) {\n this._currentOperation = undefined;\n }\n }\n });\n this._dropProgressManager.showWhile(position, (0,_nls_js__WEBPACK_IMPORTED_MODULE_11__.localize)('dropIntoEditorProgress', \"Running drop handlers. Click to cancel\"), p);\n this._currentOperation = p;\n }\n async getDropEdits(providers, model, position, dataTransfer, tokenSource) {\n const results = await (0,_base_common_async_js__WEBPACK_IMPORTED_MODULE_1__.raceCancellation)(Promise.all(providers.map(async (provider) => {\n try {\n const edit = await provider.provideDocumentOnDropEdits(model, position, dataTransfer, tokenSource.token);\n if (edit) {\n return { ...edit, providerId: provider.id };\n }\n }\n catch (err) {\n console.error(err);\n }\n return undefined;\n })), tokenSource.token);\n const edits = (0,_base_common_arrays_js__WEBPACK_IMPORTED_MODULE_0__.coalesce)(results !== null && results !== void 0 ? results : []);\n return (0,_edit_js__WEBPACK_IMPORTED_MODULE_16__.sortEditsByYieldTo)(edits);\n }\n getInitialActiveEditIndex(model, edits) {\n const preferredProviders = this._configService.getValue(defaultProviderConfig, { resource: model.uri });\n for (const [configMime, desiredId] of Object.entries(preferredProviders)) {\n const editIndex = edits.findIndex(edit => desiredId === edit.providerId\n && edit.handledMimeType && (0,_base_common_dataTransfer_js__WEBPACK_IMPORTED_MODULE_2__.matchesMimeType)(configMime, [edit.handledMimeType]));\n if (editIndex >= 0) {\n return editIndex;\n }\n }\n return 0;\n }\n async extractDataTransferData(dragEvent) {\n if (!dragEvent.dataTransfer) {\n return new _base_common_dataTransfer_js__WEBPACK_IMPORTED_MODULE_2__.VSDataTransfer();\n }\n const dataTransfer = (0,_browser_dnd_js__WEBPACK_IMPORTED_MODULE_4__.toExternalVSDataTransfer)(dragEvent.dataTransfer);\n if (this.treeItemsTransfer.hasData(_common_services_treeViewsDnd_js__WEBPACK_IMPORTED_MODULE_7__.DraggedTreeItemsIdentifier.prototype)) {\n const data = this.treeItemsTransfer.getData(_common_services_treeViewsDnd_js__WEBPACK_IMPORTED_MODULE_7__.DraggedTreeItemsIdentifier.prototype);\n if (Array.isArray(data)) {\n for (const id of data) {\n const treeDataTransfer = await this._treeViewsDragAndDropService.removeDragOperationTransfer(id.identifier);\n if (treeDataTransfer) {\n for (const [type, value] of treeDataTransfer) {\n dataTransfer.replace(type, value);\n }\n }\n }\n }\n }\n return dataTransfer;\n }\n};\nDropIntoEditorController.ID = 'editor.contrib.dropIntoEditorController';\nDropIntoEditorController = DropIntoEditorController_1 = __decorate([\n __param(1, _platform_instantiation_common_instantiation_js__WEBPACK_IMPORTED_MODULE_15__.IInstantiationService),\n __param(2, _platform_configuration_common_configuration_js__WEBPACK_IMPORTED_MODULE_12__.IConfigurationService),\n __param(3, _common_services_languageFeatures_js__WEBPACK_IMPORTED_MODULE_6__.ILanguageFeaturesService),\n __param(4, _common_services_treeViewsDndService_js__WEBPACK_IMPORTED_MODULE_8__.ITreeViewsDnDService)\n], DropIntoEditorController);\n\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/contrib/dropOrPasteInto/browser/dropIntoEditorController.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/contrib/dropOrPasteInto/browser/edit.js":
/*!******************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/contrib/dropOrPasteInto/browser/edit.js ***!
\******************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ createCombinedWorkspaceEdit: () => (/* binding */ createCombinedWorkspaceEdit),\n/* harmony export */ sortEditsByYieldTo: () => (/* binding */ sortEditsByYieldTo)\n/* harmony export */ });\n/* harmony import */ var _browser_services_bulkEditService_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../browser/services/bulkEditService.js */ \"./node_modules/monaco-editor/esm/vs/editor/browser/services/bulkEditService.js\");\n/* harmony import */ var _snippet_browser_snippetParser_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../snippet/browser/snippetParser.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/snippet/browser/snippetParser.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n\n/**\n * Given a {@link DropOrPasteEdit} and set of ranges, creates a {@link WorkspaceEdit} that applies the insert text from\n * the {@link DropOrPasteEdit} at each range plus any additional edits.\n */\nfunction createCombinedWorkspaceEdit(uri, ranges, edit) {\n var _a, _b, _c, _d;\n // If the edit insert text is empty, skip applying at each range\n if (typeof edit.insertText === 'string' ? edit.insertText === '' : edit.insertText.snippet === '') {\n return {\n edits: (_b = (_a = edit.additionalEdit) === null || _a === void 0 ? void 0 : _a.edits) !== null && _b !== void 0 ? _b : []\n };\n }\n return {\n edits: [\n ...ranges.map(range => new _browser_services_bulkEditService_js__WEBPACK_IMPORTED_MODULE_0__.ResourceTextEdit(uri, { range, text: typeof edit.insertText === 'string' ? _snippet_browser_snippetParser_js__WEBPACK_IMPORTED_MODULE_1__.SnippetParser.escape(edit.insertText) + '$0' : edit.insertText.snippet, insertAsSnippet: true })),\n ...((_d = (_c = edit.additionalEdit) === null || _c === void 0 ? void 0 : _c.edits) !== null && _d !== void 0 ? _d : [])\n ]\n };\n}\nfunction sortEditsByYieldTo(edits) {\n var _a;\n function yieldsTo(yTo, other) {\n return ('providerId' in yTo && yTo.providerId === other.providerId)\n || ('mimeType' in yTo && yTo.mimeType === other.handledMimeType);\n }\n // Build list of nodes each node yields to\n const yieldsToMap = new Map();\n for (const edit of edits) {\n for (const yTo of (_a = edit.yieldTo) !== null && _a !== void 0 ? _a : []) {\n for (const other of edits) {\n if (other === edit) {\n continue;\n }\n if (yieldsTo(yTo, other)) {\n let arr = yieldsToMap.get(edit);\n if (!arr) {\n arr = [];\n yieldsToMap.set(edit, arr);\n }\n arr.push(other);\n }\n }\n }\n }\n if (!yieldsToMap.size) {\n return Array.from(edits);\n }\n // Topological sort\n const visited = new Set();\n const tempStack = [];\n function visit(nodes) {\n if (!nodes.length) {\n return [];\n }\n const node = nodes[0];\n if (tempStack.includes(node)) {\n console.warn(`Yield to cycle detected for ${node.providerId}`);\n return nodes;\n }\n if (visited.has(node)) {\n return visit(nodes.slice(1));\n }\n let pre = [];\n const yTo = yieldsToMap.get(node);\n if (yTo) {\n tempStack.push(node);\n pre = visit(yTo);\n tempStack.pop();\n }\n visited.add(node);\n return [...pre, node, ...visit(nodes.slice(1))];\n }\n return visit(Array.from(edits));\n}\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/contrib/dropOrPasteInto/browser/edit.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/contrib/dropOrPasteInto/browser/postEditWidget.js":
/*!****************************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/contrib/dropOrPasteInto/browser/postEditWidget.js ***!
\****************************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ PostEditWidgetManager: () => (/* binding */ PostEditWidgetManager)\n/* harmony export */ });\n/* harmony import */ var _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../../base/browser/dom.js */ \"./node_modules/monaco-editor/esm/vs/base/browser/dom.js\");\n/* harmony import */ var _base_browser_ui_button_button_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../base/browser/ui/button/button.js */ \"./node_modules/monaco-editor/esm/vs/base/browser/ui/button/button.js\");\n/* harmony import */ var _base_common_actions_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../../base/common/actions.js */ \"./node_modules/monaco-editor/esm/vs/base/common/actions.js\");\n/* harmony import */ var _base_common_event_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../../../base/common/event.js */ \"./node_modules/monaco-editor/esm/vs/base/common/event.js\");\n/* harmony import */ var _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../../../base/common/lifecycle.js */ \"./node_modules/monaco-editor/esm/vs/base/common/lifecycle.js\");\n/* harmony import */ var _postEditWidget_css__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./postEditWidget.css */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/dropOrPasteInto/browser/postEditWidget.css\");\n/* harmony import */ var _browser_services_bulkEditService_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../../../browser/services/bulkEditService.js */ \"./node_modules/monaco-editor/esm/vs/editor/browser/services/bulkEditService.js\");\n/* harmony import */ var _edit_js__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ./edit.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/dropOrPasteInto/browser/edit.js\");\n/* harmony import */ var _platform_contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ../../../../platform/contextkey/common/contextkey.js */ \"./node_modules/monaco-editor/esm/vs/platform/contextkey/common/contextkey.js\");\n/* harmony import */ var _platform_contextview_browser_contextView_js__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ../../../../platform/contextview/browser/contextView.js */ \"./node_modules/monaco-editor/esm/vs/platform/contextview/browser/contextView.js\");\n/* harmony import */ var _platform_instantiation_common_instantiation_js__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! ../../../../platform/instantiation/common/instantiation.js */ \"./node_modules/monaco-editor/esm/vs/platform/instantiation/common/instantiation.js\");\n/* harmony import */ var _platform_keybinding_common_keybinding_js__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(/*! ../../../../platform/keybinding/common/keybinding.js */ \"./node_modules/monaco-editor/esm/vs/platform/keybinding/common/keybinding.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\nvar __decorate = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\n return c > 3 && r && Object.defineProperty(target, key, r), r;\n};\nvar __param = (undefined && undefined.__param) || function (paramIndex, decorator) {\n return function (target, key) { decorator(target, key, paramIndex); }\n};\nvar PostEditWidget_1;\n\n\n\n\n\n\n\n\n\n\n\n\nlet PostEditWidget = PostEditWidget_1 = class PostEditWidget extends _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_4__.Disposable {\n constructor(typeId, editor, visibleContext, showCommand, range, edits, onSelectNewEdit, _contextMenuService, contextKeyService, _keybindingService) {\n super();\n this.typeId = typeId;\n this.editor = editor;\n this.showCommand = showCommand;\n this.range = range;\n this.edits = edits;\n this.onSelectNewEdit = onSelectNewEdit;\n this._contextMenuService = _contextMenuService;\n this._keybindingService = _keybindingService;\n this.allowEditorOverflow = true;\n this.suppressMouseDown = true;\n this.create();\n this.visibleContext = visibleContext.bindTo(contextKeyService);\n this.visibleContext.set(true);\n this._register((0,_base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_4__.toDisposable)(() => this.visibleContext.reset()));\n this.editor.addContentWidget(this);\n this.editor.layoutContentWidget(this);\n this._register((0,_base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_4__.toDisposable)((() => this.editor.removeContentWidget(this))));\n this._register(this.editor.onDidChangeCursorPosition(e => {\n if (!range.containsPosition(e.position)) {\n this.dispose();\n }\n }));\n this._register(_base_common_event_js__WEBPACK_IMPORTED_MODULE_3__.Event.runAndSubscribe(_keybindingService.onDidUpdateKeybindings, () => {\n this._updateButtonTitle();\n }));\n }\n _updateButtonTitle() {\n var _a;\n const binding = (_a = this._keybindingService.lookupKeybinding(this.showCommand.id)) === null || _a === void 0 ? void 0 : _a.getLabel();\n this.button.element.title = this.showCommand.label + (binding ? ` (${binding})` : '');\n }\n create() {\n this.domNode = _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.$('.post-edit-widget');\n this.button = this._register(new _base_browser_ui_button_button_js__WEBPACK_IMPORTED_MODULE_1__.Button(this.domNode, {\n supportIcons: true,\n }));\n this.button.label = '$(insert)';\n this._register(_base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.addDisposableListener(this.domNode, _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.EventType.CLICK, () => this.showSelector()));\n }\n getId() {\n return PostEditWidget_1.baseId + '.' + this.typeId;\n }\n getDomNode() {\n return this.domNode;\n }\n getPosition() {\n return {\n position: this.range.getEndPosition(),\n preference: [2 /* ContentWidgetPositionPreference.BELOW */]\n };\n }\n showSelector() {\n this._contextMenuService.showContextMenu({\n getAnchor: () => {\n const pos = _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.getDomNodePagePosition(this.button.element);\n return { x: pos.left + pos.width, y: pos.top + pos.height };\n },\n getActions: () => {\n return this.edits.allEdits.map((edit, i) => (0,_base_common_actions_js__WEBPACK_IMPORTED_MODULE_2__.toAction)({\n id: '',\n label: edit.label,\n checked: i === this.edits.activeEditIndex,\n run: () => {\n if (i !== this.edits.activeEditIndex) {\n return this.onSelectNewEdit(i);\n }\n },\n }));\n }\n });\n }\n};\nPostEditWidget.baseId = 'editor.widget.postEditWidget';\nPostEditWidget = PostEditWidget_1 = __decorate([\n __param(7, _platform_contextview_browser_contextView_js__WEBPACK_IMPORTED_MODULE_9__.IContextMenuService),\n __param(8, _platform_contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_8__.IContextKeyService),\n __param(9, _platform_keybinding_common_keybinding_js__WEBPACK_IMPORTED_MODULE_11__.IKeybindingService)\n], PostEditWidget);\nlet PostEditWidgetManager = class PostEditWidgetManager extends _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_4__.Disposable {\n constructor(_id, _editor, _visibleContext, _showCommand, _instantiationService, _bulkEditService) {\n super();\n this._id = _id;\n this._editor = _editor;\n this._visibleContext = _visibleContext;\n this._showCommand = _showCommand;\n this._instantiationService = _instantiationService;\n this._bulkEditService = _bulkEditService;\n this._currentWidget = this._register(new _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_4__.MutableDisposable());\n this._register(_base_common_event_js__WEBPACK_IMPORTED_MODULE_3__.Event.any(_editor.onDidChangeModel, _editor.onDidChangeModelContent)(() => this.clear()));\n }\n async applyEditAndShowIfNeeded(ranges, edits, canShowWidget, token) {\n const model = this._editor.getModel();\n if (!model || !ranges.length) {\n return;\n }\n const edit = edits.allEdits[edits.activeEditIndex];\n if (!edit) {\n return;\n }\n const combinedWorkspaceEdit = (0,_edit_js__WEBPACK_IMPORTED_MODULE_7__.createCombinedWorkspaceEdit)(model.uri, ranges, edit);\n // Use a decoration to track edits around the trigger range\n const primaryRange = ranges[0];\n const editTrackingDecoration = model.deltaDecorations([], [{\n range: primaryRange,\n options: { description: 'paste-line-suffix', stickiness: 0 /* TrackedRangeStickiness.AlwaysGrowsWhenTypingAtEdges */ }\n }]);\n let editResult;\n let editRange;\n try {\n editResult = await this._bulkEditService.apply(combinedWorkspaceEdit, { editor: this._editor, token });\n editRange = model.getDecorationRange(editTrackingDecoration[0]);\n }\n finally {\n model.deltaDecorations(editTrackingDecoration, []);\n }\n if (canShowWidget && editResult.isApplied && edits.allEdits.length > 1) {\n this.show(editRange !== null && editRange !== void 0 ? editRange : primaryRange, edits, async (newEditIndex) => {\n const model = this._editor.getModel();\n if (!model) {\n return;\n }\n await model.undo();\n this.applyEditAndShowIfNeeded(ranges, { activeEditIndex: newEditIndex, allEdits: edits.allEdits }, canShowWidget, token);\n });\n }\n }\n show(range, edits, onDidSelectEdit) {\n this.clear();\n if (this._editor.hasModel()) {\n this._currentWidget.value = this._instantiationService.createInstance(PostEditWidget, this._id, this._editor, this._visibleContext, this._showCommand, range, edits, onDidSelectEdit);\n }\n }\n clear() {\n this._currentWidget.clear();\n }\n tryShowSelector() {\n var _a;\n (_a = this._currentWidget.value) === null || _a === void 0 ? void 0 : _a.showSelector();\n }\n};\nPostEditWidgetManager = __decorate([\n __param(4, _platform_instantiation_common_instantiation_js__WEBPACK_IMPORTED_MODULE_10__.IInstantiationService),\n __param(5, _browser_services_bulkEditService_js__WEBPACK_IMPORTED_MODULE_6__.IBulkEditService)\n], PostEditWidgetManager);\n\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/contrib/dropOrPasteInto/browser/postEditWidget.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/contrib/editorState/browser/editorState.js":
/*!*********************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/contrib/editorState/browser/editorState.js ***!
\*********************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ EditorState: () => (/* binding */ EditorState),\n/* harmony export */ EditorStateCancellationTokenSource: () => (/* binding */ EditorStateCancellationTokenSource),\n/* harmony export */ TextModelCancellationTokenSource: () => (/* binding */ TextModelCancellationTokenSource)\n/* harmony export */ });\n/* harmony import */ var _base_common_strings_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../../base/common/strings.js */ \"./node_modules/monaco-editor/esm/vs/base/common/strings.js\");\n/* harmony import */ var _common_core_range_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../common/core/range.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/core/range.js\");\n/* harmony import */ var _base_common_cancellation_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../../base/common/cancellation.js */ \"./node_modules/monaco-editor/esm/vs/base/common/cancellation.js\");\n/* harmony import */ var _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../../../base/common/lifecycle.js */ \"./node_modules/monaco-editor/esm/vs/base/common/lifecycle.js\");\n/* harmony import */ var _keybindingCancellation_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./keybindingCancellation.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/editorState/browser/keybindingCancellation.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n\n\n\n\nclass EditorState {\n constructor(editor, flags) {\n this.flags = flags;\n if ((this.flags & 1 /* CodeEditorStateFlag.Value */) !== 0) {\n const model = editor.getModel();\n this.modelVersionId = model ? _base_common_strings_js__WEBPACK_IMPORTED_MODULE_0__.format('{0}#{1}', model.uri.toString(), model.getVersionId()) : null;\n }\n else {\n this.modelVersionId = null;\n }\n if ((this.flags & 4 /* CodeEditorStateFlag.Position */) !== 0) {\n this.position = editor.getPosition();\n }\n else {\n this.position = null;\n }\n if ((this.flags & 2 /* CodeEditorStateFlag.Selection */) !== 0) {\n this.selection = editor.getSelection();\n }\n else {\n this.selection = null;\n }\n if ((this.flags & 8 /* CodeEditorStateFlag.Scroll */) !== 0) {\n this.scrollLeft = editor.getScrollLeft();\n this.scrollTop = editor.getScrollTop();\n }\n else {\n this.scrollLeft = -1;\n this.scrollTop = -1;\n }\n }\n _equals(other) {\n if (!(other instanceof EditorState)) {\n return false;\n }\n const state = other;\n if (this.modelVersionId !== state.modelVersionId) {\n return false;\n }\n if (this.scrollLeft !== state.scrollLeft || this.scrollTop !== state.scrollTop) {\n return false;\n }\n if (!this.position && state.position || this.position && !state.position || this.position && state.position && !this.position.equals(state.position)) {\n return false;\n }\n if (!this.selection && state.selection || this.selection && !state.selection || this.selection && state.selection && !this.selection.equalsRange(state.selection)) {\n return false;\n }\n return true;\n }\n validate(editor) {\n return this._equals(new EditorState(editor, this.flags));\n }\n}\n/**\n * A cancellation token source that cancels when the editor changes as expressed\n * by the provided flags\n * @param range If provided, changes in position and selection within this range will not trigger cancellation\n */\nclass EditorStateCancellationTokenSource extends _keybindingCancellation_js__WEBPACK_IMPORTED_MODULE_4__.EditorKeybindingCancellationTokenSource {\n constructor(editor, flags, range, parent) {\n super(editor, parent);\n this._listener = new _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_3__.DisposableStore();\n if (flags & 4 /* CodeEditorStateFlag.Position */) {\n this._listener.add(editor.onDidChangeCursorPosition(e => {\n if (!range || !_common_core_range_js__WEBPACK_IMPORTED_MODULE_1__.Range.containsPosition(range, e.position)) {\n this.cancel();\n }\n }));\n }\n if (flags & 2 /* CodeEditorStateFlag.Selection */) {\n this._listener.add(editor.onDidChangeCursorSelection(e => {\n if (!range || !_common_core_range_js__WEBPACK_IMPORTED_MODULE_1__.Range.containsRange(range, e.selection)) {\n this.cancel();\n }\n }));\n }\n if (flags & 8 /* CodeEditorStateFlag.Scroll */) {\n this._listener.add(editor.onDidScrollChange(_ => this.cancel()));\n }\n if (flags & 1 /* CodeEditorStateFlag.Value */) {\n this._listener.add(editor.onDidChangeModel(_ => this.cancel()));\n this._listener.add(editor.onDidChangeModelContent(_ => this.cancel()));\n }\n }\n dispose() {\n this._listener.dispose();\n super.dispose();\n }\n}\n/**\n * A cancellation token source that cancels when the provided model changes\n */\nclass TextModelCancellationTokenSource extends _base_common_cancellation_js__WEBPACK_IMPORTED_MODULE_2__.CancellationTokenSource {\n constructor(model, parent) {\n super(parent);\n this._listener = model.onDidChangeContent(() => this.cancel());\n }\n dispose() {\n this._listener.dispose();\n super.dispose();\n }\n}\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/contrib/editorState/browser/editorState.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/contrib/editorState/browser/keybindingCancellation.js":
/*!********************************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/contrib/editorState/browser/keybindingCancellation.js ***!
\********************************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ EditorKeybindingCancellationTokenSource: () => (/* binding */ EditorKeybindingCancellationTokenSource)\n/* harmony export */ });\n/* harmony import */ var _browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../browser/editorExtensions.js */ \"./node_modules/monaco-editor/esm/vs/editor/browser/editorExtensions.js\");\n/* harmony import */ var _platform_contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../platform/contextkey/common/contextkey.js */ \"./node_modules/monaco-editor/esm/vs/platform/contextkey/common/contextkey.js\");\n/* harmony import */ var _base_common_cancellation_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../../base/common/cancellation.js */ \"./node_modules/monaco-editor/esm/vs/base/common/cancellation.js\");\n/* harmony import */ var _base_common_linkedList_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../../../base/common/linkedList.js */ \"./node_modules/monaco-editor/esm/vs/base/common/linkedList.js\");\n/* harmony import */ var _platform_instantiation_common_instantiation_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../../../platform/instantiation/common/instantiation.js */ \"./node_modules/monaco-editor/esm/vs/platform/instantiation/common/instantiation.js\");\n/* harmony import */ var _platform_instantiation_common_extensions_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../../../../platform/instantiation/common/extensions.js */ \"./node_modules/monaco-editor/esm/vs/platform/instantiation/common/extensions.js\");\n/* harmony import */ var _nls_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../../../../nls.js */ \"./node_modules/monaco-editor/esm/vs/nls.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n\n\n\n\n\n\nconst IEditorCancellationTokens = (0,_platform_instantiation_common_instantiation_js__WEBPACK_IMPORTED_MODULE_4__.createDecorator)('IEditorCancelService');\nconst ctxCancellableOperation = new _platform_contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_1__.RawContextKey('cancellableOperation', false, (0,_nls_js__WEBPACK_IMPORTED_MODULE_6__.localize)('cancellableOperation', 'Whether the editor runs a cancellable operation, e.g. like \\'Peek References\\''));\n(0,_platform_instantiation_common_extensions_js__WEBPACK_IMPORTED_MODULE_5__.registerSingleton)(IEditorCancellationTokens, class {\n constructor() {\n this._tokens = new WeakMap();\n }\n add(editor, cts) {\n let data = this._tokens.get(editor);\n if (!data) {\n data = editor.invokeWithinContext(accessor => {\n const key = ctxCancellableOperation.bindTo(accessor.get(_platform_contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_1__.IContextKeyService));\n const tokens = new _base_common_linkedList_js__WEBPACK_IMPORTED_MODULE_3__.LinkedList();\n return { key, tokens };\n });\n this._tokens.set(editor, data);\n }\n let removeFn;\n data.key.set(true);\n removeFn = data.tokens.push(cts);\n return () => {\n // remove w/o cancellation\n if (removeFn) {\n removeFn();\n data.key.set(!data.tokens.isEmpty());\n removeFn = undefined;\n }\n };\n }\n cancel(editor) {\n const data = this._tokens.get(editor);\n if (!data) {\n return;\n }\n // remove with cancellation\n const cts = data.tokens.pop();\n if (cts) {\n cts.cancel();\n data.key.set(!data.tokens.isEmpty());\n }\n }\n}, 1 /* InstantiationType.Delayed */);\nclass EditorKeybindingCancellationTokenSource extends _base_common_cancellation_js__WEBPACK_IMPORTED_MODULE_2__.CancellationTokenSource {\n constructor(editor, parent) {\n super(parent);\n this.editor = editor;\n this._unregister = editor.invokeWithinContext(accessor => accessor.get(IEditorCancellationTokens).add(editor, this));\n }\n dispose() {\n this._unregister();\n super.dispose();\n }\n}\n(0,_browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_0__.registerEditorCommand)(new class extends _browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_0__.EditorCommand {\n constructor() {\n super({\n id: 'editor.cancelOperation',\n kbOpts: {\n weight: 100 /* KeybindingWeight.EditorContrib */,\n primary: 9 /* KeyCode.Escape */\n },\n precondition: ctxCancellableOperation\n });\n }\n runEditorCommand(accessor, editor) {\n accessor.get(IEditorCancellationTokens).cancel(editor);\n }\n});\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/contrib/editorState/browser/keybindingCancellation.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/contrib/find/browser/findController.js":
/*!*****************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/contrib/find/browser/findController.js ***!
\*****************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ CommonFindController: () => (/* binding */ CommonFindController),\n/* harmony export */ FindController: () => (/* binding */ FindController),\n/* harmony export */ MatchFindAction: () => (/* binding */ MatchFindAction),\n/* harmony export */ MoveToMatchFindAction: () => (/* binding */ MoveToMatchFindAction),\n/* harmony export */ NextMatchFindAction: () => (/* binding */ NextMatchFindAction),\n/* harmony export */ NextSelectionMatchFindAction: () => (/* binding */ NextSelectionMatchFindAction),\n/* harmony export */ PreviousMatchFindAction: () => (/* binding */ PreviousMatchFindAction),\n/* harmony export */ PreviousSelectionMatchFindAction: () => (/* binding */ PreviousSelectionMatchFindAction),\n/* harmony export */ SelectionMatchFindAction: () => (/* binding */ SelectionMatchFindAction),\n/* harmony export */ StartFindAction: () => (/* binding */ StartFindAction),\n/* harmony export */ StartFindReplaceAction: () => (/* binding */ StartFindReplaceAction),\n/* harmony export */ StartFindWithArgsAction: () => (/* binding */ StartFindWithArgsAction),\n/* harmony export */ StartFindWithSelectionAction: () => (/* binding */ StartFindWithSelectionAction),\n/* harmony export */ getSelectionSearchString: () => (/* binding */ getSelectionSearchString)\n/* harmony export */ });\n/* harmony import */ var _base_common_async_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../../base/common/async.js */ \"./node_modules/monaco-editor/esm/vs/base/common/async.js\");\n/* harmony import */ var _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../base/common/lifecycle.js */ \"./node_modules/monaco-editor/esm/vs/base/common/lifecycle.js\");\n/* harmony import */ var _base_common_strings_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../../base/common/strings.js */ \"./node_modules/monaco-editor/esm/vs/base/common/strings.js\");\n/* harmony import */ var _browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../../browser/editorExtensions.js */ \"./node_modules/monaco-editor/esm/vs/editor/browser/editorExtensions.js\");\n/* harmony import */ var _common_core_editorColorRegistry_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../../common/core/editorColorRegistry.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/core/editorColorRegistry.js\");\n/* harmony import */ var _common_editorContextKeys_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../../../common/editorContextKeys.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/editorContextKeys.js\");\n/* harmony import */ var _common_model_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../../../common/model.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/model.js\");\n/* harmony import */ var _findModel_js__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ./findModel.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/find/browser/findModel.js\");\n/* harmony import */ var _findOptionsWidget_js__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ./findOptionsWidget.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/find/browser/findOptionsWidget.js\");\n/* harmony import */ var _findState_js__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ./findState.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/find/browser/findState.js\");\n/* harmony import */ var _findWidget_js__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! ./findWidget.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/find/browser/findWidget.js\");\n/* harmony import */ var _nls_js__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(/*! ../../../../nls.js */ \"./node_modules/monaco-editor/esm/vs/nls.js\");\n/* harmony import */ var _platform_actions_common_actions_js__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(/*! ../../../../platform/actions/common/actions.js */ \"./node_modules/monaco-editor/esm/vs/platform/actions/common/actions.js\");\n/* harmony import */ var _platform_clipboard_common_clipboardService_js__WEBPACK_IMPORTED_MODULE_13__ = __webpack_require__(/*! ../../../../platform/clipboard/common/clipboardService.js */ \"./node_modules/monaco-editor/esm/vs/platform/clipboard/common/clipboardService.js\");\n/* harmony import */ var _platform_contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_14__ = __webpack_require__(/*! ../../../../platform/contextkey/common/contextkey.js */ \"./node_modules/monaco-editor/esm/vs/platform/contextkey/common/contextkey.js\");\n/* harmony import */ var _platform_contextview_browser_contextView_js__WEBPACK_IMPORTED_MODULE_15__ = __webpack_require__(/*! ../../../../platform/contextview/browser/contextView.js */ \"./node_modules/monaco-editor/esm/vs/platform/contextview/browser/contextView.js\");\n/* harmony import */ var _platform_keybinding_common_keybinding_js__WEBPACK_IMPORTED_MODULE_16__ = __webpack_require__(/*! ../../../../platform/keybinding/common/keybinding.js */ \"./node_modules/monaco-editor/esm/vs/platform/keybinding/common/keybinding.js\");\n/* harmony import */ var _platform_notification_common_notification_js__WEBPACK_IMPORTED_MODULE_17__ = __webpack_require__(/*! ../../../../platform/notification/common/notification.js */ \"./node_modules/monaco-editor/esm/vs/platform/notification/common/notification.js\");\n/* harmony import */ var _platform_quickinput_common_quickInput_js__WEBPACK_IMPORTED_MODULE_18__ = __webpack_require__(/*! ../../../../platform/quickinput/common/quickInput.js */ \"./node_modules/monaco-editor/esm/vs/platform/quickinput/common/quickInput.js\");\n/* harmony import */ var _platform_storage_common_storage_js__WEBPACK_IMPORTED_MODULE_19__ = __webpack_require__(/*! ../../../../platform/storage/common/storage.js */ \"./node_modules/monaco-editor/esm/vs/platform/storage/common/storage.js\");\n/* harmony import */ var _platform_theme_common_themeService_js__WEBPACK_IMPORTED_MODULE_20__ = __webpack_require__(/*! ../../../../platform/theme/common/themeService.js */ \"./node_modules/monaco-editor/esm/vs/platform/theme/common/themeService.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\nvar __decorate = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\n return c > 3 && r && Object.defineProperty(target, key, r), r;\n};\nvar __param = (undefined && undefined.__param) || function (paramIndex, decorator) {\n return function (target, key) { decorator(target, key, paramIndex); }\n};\nvar CommonFindController_1;\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nconst SEARCH_STRING_MAX_LENGTH = 524288;\nfunction getSelectionSearchString(editor, seedSearchStringFromSelection = 'single', seedSearchStringFromNonEmptySelection = false) {\n if (!editor.hasModel()) {\n return null;\n }\n const selection = editor.getSelection();\n // if selection spans multiple lines, default search string to empty\n if ((seedSearchStringFromSelection === 'single' && selection.startLineNumber === selection.endLineNumber)\n || seedSearchStringFromSelection === 'multiple') {\n if (selection.isEmpty()) {\n const wordAtPosition = editor.getConfiguredWordAtPosition(selection.getStartPosition());\n if (wordAtPosition && (false === seedSearchStringFromNonEmptySelection)) {\n return wordAtPosition.word;\n }\n }\n else {\n if (editor.getModel().getValueLengthInRange(selection) < SEARCH_STRING_MAX_LENGTH) {\n return editor.getModel().getValueInRange(selection);\n }\n }\n }\n return null;\n}\nlet CommonFindController = CommonFindController_1 = class CommonFindController extends _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_1__.Disposable {\n get editor() {\n return this._editor;\n }\n static get(editor) {\n return editor.getContribution(CommonFindController_1.ID);\n }\n constructor(editor, contextKeyService, storageService, clipboardService, notificationService) {\n super();\n this._editor = editor;\n this._findWidgetVisible = _findModel_js__WEBPACK_IMPORTED_MODULE_7__.CONTEXT_FIND_WIDGET_VISIBLE.bindTo(contextKeyService);\n this._contextKeyService = contextKeyService;\n this._storageService = storageService;\n this._clipboardService = clipboardService;\n this._notificationService = notificationService;\n this._updateHistoryDelayer = new _base_common_async_js__WEBPACK_IMPORTED_MODULE_0__.Delayer(500);\n this._state = this._register(new _findState_js__WEBPACK_IMPORTED_MODULE_9__.FindReplaceState());\n this.loadQueryState();\n this._register(this._state.onFindReplaceStateChange((e) => this._onStateChanged(e)));\n this._model = null;\n this._register(this._editor.onDidChangeModel(() => {\n const shouldRestartFind = (this._editor.getModel() && this._state.isRevealed);\n this.disposeModel();\n this._state.change({\n searchScope: null,\n matchCase: this._storageService.getBoolean('editor.matchCase', 1 /* StorageScope.WORKSPACE */, false),\n wholeWord: this._storageService.getBoolean('editor.wholeWord', 1 /* StorageScope.WORKSPACE */, false),\n isRegex: this._storageService.getBoolean('editor.isRegex', 1 /* StorageScope.WORKSPACE */, false),\n preserveCase: this._storageService.getBoolean('editor.preserveCase', 1 /* StorageScope.WORKSPACE */, false)\n }, false);\n if (shouldRestartFind) {\n this._start({\n forceRevealReplace: false,\n seedSearchStringFromSelection: 'none',\n seedSearchStringFromNonEmptySelection: false,\n seedSearchStringFromGlobalClipboard: false,\n shouldFocus: 0 /* FindStartFocusAction.NoFocusChange */,\n shouldAnimate: false,\n updateSearchScope: false,\n loop: this._editor.getOption(41 /* EditorOption.find */).loop\n });\n }\n }));\n }\n dispose() {\n this.disposeModel();\n super.dispose();\n }\n disposeModel() {\n if (this._model) {\n this._model.dispose();\n this._model = null;\n }\n }\n _onStateChanged(e) {\n this.saveQueryState(e);\n if (e.isRevealed) {\n if (this._state.isRevealed) {\n this._findWidgetVisible.set(true);\n }\n else {\n this._findWidgetVisible.reset();\n this.disposeModel();\n }\n }\n if (e.searchString) {\n this.setGlobalBufferTerm(this._state.searchString);\n }\n }\n saveQueryState(e) {\n if (e.isRegex) {\n this._storageService.store('editor.isRegex', this._state.actualIsRegex, 1 /* StorageScope.WORKSPACE */, 1 /* StorageTarget.MACHINE */);\n }\n if (e.wholeWord) {\n this._storageService.store('editor.wholeWord', this._state.actualWholeWord, 1 /* StorageScope.WORKSPACE */, 1 /* StorageTarget.MACHINE */);\n }\n if (e.matchCase) {\n this._storageService.store('editor.matchCase', this._state.actualMatchCase, 1 /* StorageScope.WORKSPACE */, 1 /* StorageTarget.MACHINE */);\n }\n if (e.preserveCase) {\n this._storageService.store('editor.preserveCase', this._state.actualPreserveCase, 1 /* StorageScope.WORKSPACE */, 1 /* StorageTarget.MACHINE */);\n }\n }\n loadQueryState() {\n this._state.change({\n matchCase: this._storageService.getBoolean('editor.matchCase', 1 /* StorageScope.WORKSPACE */, this._state.matchCase),\n wholeWord: this._storageService.getBoolean('editor.wholeWord', 1 /* StorageScope.WORKSPACE */, this._state.wholeWord),\n isRegex: this._storageService.getBoolean('editor.isRegex', 1 /* StorageScope.WORKSPACE */, this._state.isRegex),\n preserveCase: this._storageService.getBoolean('editor.preserveCase', 1 /* StorageScope.WORKSPACE */, this._state.preserveCase)\n }, false);\n }\n isFindInputFocused() {\n return !!_findModel_js__WEBPACK_IMPORTED_MODULE_7__.CONTEXT_FIND_INPUT_FOCUSED.getValue(this._contextKeyService);\n }\n getState() {\n return this._state;\n }\n closeFindWidget() {\n this._state.change({\n isRevealed: false,\n searchScope: null\n }, false);\n this._editor.focus();\n }\n toggleCaseSensitive() {\n this._state.change({ matchCase: !this._state.matchCase }, false);\n if (!this._state.isRevealed) {\n this.highlightFindOptions();\n }\n }\n toggleWholeWords() {\n this._state.change({ wholeWord: !this._state.wholeWord }, false);\n if (!this._state.isRevealed) {\n this.highlightFindOptions();\n }\n }\n toggleRegex() {\n this._state.change({ isRegex: !this._state.isRegex }, false);\n if (!this._state.isRevealed) {\n this.highlightFindOptions();\n }\n }\n togglePreserveCase() {\n this._state.change({ preserveCase: !this._state.preserveCase }, false);\n if (!this._state.isRevealed) {\n this.highlightFindOptions();\n }\n }\n toggleSearchScope() {\n if (this._state.searchScope) {\n this._state.change({ searchScope: null }, true);\n }\n else {\n if (this._editor.hasModel()) {\n let selections = this._editor.getSelections();\n selections = selections.map(selection => {\n if (selection.endColumn === 1 && selection.endLineNumber > selection.startLineNumber) {\n selection = selection.setEndPosition(selection.endLineNumber - 1, this._editor.getModel().getLineMaxColumn(selection.endLineNumber - 1));\n }\n if (!selection.isEmpty()) {\n return selection;\n }\n return null;\n }).filter((element) => !!element);\n if (selections.length) {\n this._state.change({ searchScope: selections }, true);\n }\n }\n }\n }\n setSearchString(searchString) {\n if (this._state.isRegex) {\n searchString = _base_common_strings_js__WEBPACK_IMPORTED_MODULE_2__.escapeRegExpCharacters(searchString);\n }\n this._state.change({ searchString: searchString }, false);\n }\n highlightFindOptions(ignoreWhenVisible = false) {\n // overwritten in subclass\n }\n async _start(opts, newState) {\n this.disposeModel();\n if (!this._editor.hasModel()) {\n // cannot do anything with an editor that doesn't have a model...\n return;\n }\n const stateChanges = {\n ...newState,\n isRevealed: true\n };\n if (opts.seedSearchStringFromSelection === 'single') {\n const selectionSearchString = getSelectionSearchString(this._editor, opts.seedSearchStringFromSelection, opts.seedSearchStringFromNonEmptySelection);\n if (selectionSearchString) {\n if (this._state.isRegex) {\n stateChanges.searchString = _base_common_strings_js__WEBPACK_IMPORTED_MODULE_2__.escapeRegExpCharacters(selectionSearchString);\n }\n else {\n stateChanges.searchString = selectionSearchString;\n }\n }\n }\n else if (opts.seedSearchStringFromSelection === 'multiple' && !opts.updateSearchScope) {\n const selectionSearchString = getSelectionSearchString(this._editor, opts.seedSearchStringFromSelection);\n if (selectionSearchString) {\n stateChanges.searchString = selectionSearchString;\n }\n }\n if (!stateChanges.searchString && opts.seedSearchStringFromGlobalClipboard) {\n const selectionSearchString = await this.getGlobalBufferTerm();\n if (!this._editor.hasModel()) {\n // the editor has lost its model in the meantime\n return;\n }\n if (selectionSearchString) {\n stateChanges.searchString = selectionSearchString;\n }\n }\n // Overwrite isReplaceRevealed\n if (opts.forceRevealReplace || stateChanges.isReplaceRevealed) {\n stateChanges.isReplaceRevealed = true;\n }\n else if (!this._findWidgetVisible.get()) {\n stateChanges.isReplaceRevealed = false;\n }\n if (opts.updateSearchScope) {\n const currentSelections = this._editor.getSelections();\n if (currentSelections.some(selection => !selection.isEmpty())) {\n stateChanges.searchScope = currentSelections;\n }\n }\n stateChanges.loop = opts.loop;\n this._state.change(stateChanges, false);\n if (!this._model) {\n this._model = new _findModel_js__WEBPACK_IMPORTED_MODULE_7__.FindModelBoundToEditorModel(this._editor, this._state);\n }\n }\n start(opts, newState) {\n return this._start(opts, newState);\n }\n moveToNextMatch() {\n if (this._model) {\n this._model.moveToNextMatch();\n return true;\n }\n return false;\n }\n moveToPrevMatch() {\n if (this._model) {\n this._model.moveToPrevMatch();\n return true;\n }\n return false;\n }\n goToMatch(index) {\n if (this._model) {\n this._model.moveToMatch(index);\n return true;\n }\n return false;\n }\n replace() {\n if (this._model) {\n this._model.replace();\n return true;\n }\n return false;\n }\n replaceAll() {\n var _a;\n if (this._model) {\n if ((_a = this._editor.getModel()) === null || _a === void 0 ? void 0 : _a.isTooLargeForHeapOperation()) {\n this._notificationService.warn(_nls_js__WEBPACK_IMPORTED_MODULE_11__.localize('too.large.for.replaceall', \"The file is too large to perform a replace all operation.\"));\n return false;\n }\n this._model.replaceAll();\n return true;\n }\n return false;\n }\n selectAllMatches() {\n if (this._model) {\n this._model.selectAllMatches();\n this._editor.focus();\n return true;\n }\n return false;\n }\n async getGlobalBufferTerm() {\n if (this._editor.getOption(41 /* EditorOption.find */).globalFindClipboard\n && this._editor.hasModel()\n && !this._editor.getModel().isTooLargeForSyncing()) {\n return this._clipboardService.readFindText();\n }\n return '';\n }\n setGlobalBufferTerm(text) {\n if (this._editor.getOption(41 /* EditorOption.find */).globalFindClipboard\n && this._editor.hasModel()\n && !this._editor.getModel().isTooLargeForSyncing()) {\n // intentionally not awaited\n this._clipboardService.writeFindText(text);\n }\n }\n};\nCommonFindController.ID = 'editor.contrib.findController';\nCommonFindController = CommonFindController_1 = __decorate([\n __param(1, _platform_contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_14__.IContextKeyService),\n __param(2, _platform_storage_common_storage_js__WEBPACK_IMPORTED_MODULE_19__.IStorageService),\n __param(3, _platform_clipboard_common_clipboardService_js__WEBPACK_IMPORTED_MODULE_13__.IClipboardService),\n __param(4, _platform_notification_common_notification_js__WEBPACK_IMPORTED_MODULE_17__.INotificationService)\n], CommonFindController);\n\nlet FindController = class FindController extends CommonFindController {\n constructor(editor, _contextViewService, _contextKeyService, _keybindingService, _themeService, notificationService, _storageService, clipboardService) {\n super(editor, _contextKeyService, _storageService, clipboardService, notificationService);\n this._contextViewService = _contextViewService;\n this._keybindingService = _keybindingService;\n this._themeService = _themeService;\n this._widget = null;\n this._findOptionsWidget = null;\n }\n async _start(opts, newState) {\n if (!this._widget) {\n this._createFindWidget();\n }\n const selection = this._editor.getSelection();\n let updateSearchScope = false;\n switch (this._editor.getOption(41 /* EditorOption.find */).autoFindInSelection) {\n case 'always':\n updateSearchScope = true;\n break;\n case 'never':\n updateSearchScope = false;\n break;\n case 'multiline': {\n const isSelectionMultipleLine = !!selection && selection.startLineNumber !== selection.endLineNumber;\n updateSearchScope = isSelectionMultipleLine;\n break;\n }\n default:\n break;\n }\n opts.updateSearchScope = opts.updateSearchScope || updateSearchScope;\n await super._start(opts, newState);\n if (this._widget) {\n if (opts.shouldFocus === 2 /* FindStartFocusAction.FocusReplaceInput */) {\n this._widget.focusReplaceInput();\n }\n else if (opts.shouldFocus === 1 /* FindStartFocusAction.FocusFindInput */) {\n this._widget.focusFindInput();\n }\n }\n }\n highlightFindOptions(ignoreWhenVisible = false) {\n if (!this._widget) {\n this._createFindWidget();\n }\n if (this._state.isRevealed && !ignoreWhenVisible) {\n this._widget.highlightFindOptions();\n }\n else {\n this._findOptionsWidget.highlightFindOptions();\n }\n }\n _createFindWidget() {\n this._widget = this._register(new _findWidget_js__WEBPACK_IMPORTED_MODULE_10__.FindWidget(this._editor, this, this._state, this._contextViewService, this._keybindingService, this._contextKeyService, this._themeService, this._storageService, this._notificationService));\n this._findOptionsWidget = this._register(new _findOptionsWidget_js__WEBPACK_IMPORTED_MODULE_8__.FindOptionsWidget(this._editor, this._state, this._keybindingService));\n }\n};\nFindController = __decorate([\n __param(1, _platform_contextview_browser_contextView_js__WEBPACK_IMPORTED_MODULE_15__.IContextViewService),\n __param(2, _platform_contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_14__.IContextKeyService),\n __param(3, _platform_keybinding_common_keybinding_js__WEBPACK_IMPORTED_MODULE_16__.IKeybindingService),\n __param(4, _platform_theme_common_themeService_js__WEBPACK_IMPORTED_MODULE_20__.IThemeService),\n __param(5, _platform_notification_common_notification_js__WEBPACK_IMPORTED_MODULE_17__.INotificationService),\n __param(6, _platform_storage_common_storage_js__WEBPACK_IMPORTED_MODULE_19__.IStorageService),\n __param(7, _platform_clipboard_common_clipboardService_js__WEBPACK_IMPORTED_MODULE_13__.IClipboardService)\n], FindController);\n\nconst StartFindAction = (0,_browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_3__.registerMultiEditorAction)(new _browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_3__.MultiEditorAction({\n id: _findModel_js__WEBPACK_IMPORTED_MODULE_7__.FIND_IDS.StartFindAction,\n label: _nls_js__WEBPACK_IMPORTED_MODULE_11__.localize('startFindAction', \"Find\"),\n alias: 'Find',\n precondition: _platform_contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_14__.ContextKeyExpr.or(_common_editorContextKeys_js__WEBPACK_IMPORTED_MODULE_5__.EditorContextKeys.focus, _platform_contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_14__.ContextKeyExpr.has('editorIsOpen')),\n kbOpts: {\n kbExpr: null,\n primary: 2048 /* KeyMod.CtrlCmd */ | 36 /* KeyCode.KeyF */,\n weight: 100 /* KeybindingWeight.EditorContrib */\n },\n menuOpts: {\n menuId: _platform_actions_common_actions_js__WEBPACK_IMPORTED_MODULE_12__.MenuId.MenubarEditMenu,\n group: '3_find',\n title: _nls_js__WEBPACK_IMPORTED_MODULE_11__.localize({ key: 'miFind', comment: ['&& denotes a mnemonic'] }, \"&&Find\"),\n order: 1\n }\n}));\nStartFindAction.addImplementation(0, (accessor, editor, args) => {\n const controller = CommonFindController.get(editor);\n if (!controller) {\n return false;\n }\n return controller.start({\n forceRevealReplace: false,\n seedSearchStringFromSelection: editor.getOption(41 /* EditorOption.find */).seedSearchStringFromSelection !== 'never' ? 'single' : 'none',\n seedSearchStringFromNonEmptySelection: editor.getOption(41 /* EditorOption.find */).seedSearchStringFromSelection === 'selection',\n seedSearchStringFromGlobalClipboard: editor.getOption(41 /* EditorOption.find */).globalFindClipboard,\n shouldFocus: 1 /* FindStartFocusAction.FocusFindInput */,\n shouldAnimate: true,\n updateSearchScope: false,\n loop: editor.getOption(41 /* EditorOption.find */).loop\n });\n});\nconst findArgDescription = {\n description: 'Open a new In-Editor Find Widget.',\n args: [{\n name: 'Open a new In-Editor Find Widget args',\n schema: {\n properties: {\n searchString: { type: 'string' },\n replaceString: { type: 'string' },\n isRegex: { type: 'boolean' },\n matchWholeWord: { type: 'boolean' },\n isCaseSensitive: { type: 'boolean' },\n preserveCase: { type: 'boolean' },\n findInSelection: { type: 'boolean' },\n }\n }\n }]\n};\nclass StartFindWithArgsAction extends _browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_3__.EditorAction {\n constructor() {\n super({\n id: _findModel_js__WEBPACK_IMPORTED_MODULE_7__.FIND_IDS.StartFindWithArgs,\n label: _nls_js__WEBPACK_IMPORTED_MODULE_11__.localize('startFindWithArgsAction', \"Find With Arguments\"),\n alias: 'Find With Arguments',\n precondition: undefined,\n kbOpts: {\n kbExpr: null,\n primary: 0,\n weight: 100 /* KeybindingWeight.EditorContrib */\n },\n metadata: findArgDescription\n });\n }\n async run(accessor, editor, args) {\n const controller = CommonFindController.get(editor);\n if (controller) {\n const newState = args ? {\n searchString: args.searchString,\n replaceString: args.replaceString,\n isReplaceRevealed: args.replaceString !== undefined,\n isRegex: args.isRegex,\n // isRegexOverride: args.regexOverride,\n wholeWord: args.matchWholeWord,\n // wholeWordOverride: args.wholeWordOverride,\n matchCase: args.isCaseSensitive,\n // matchCaseOverride: args.matchCaseOverride,\n preserveCase: args.preserveCase,\n // preserveCaseOverride: args.preserveCaseOverride,\n } : {};\n await controller.start({\n forceRevealReplace: false,\n seedSearchStringFromSelection: (controller.getState().searchString.length === 0) && editor.getOption(41 /* EditorOption.find */).seedSearchStringFromSelection !== 'never' ? 'single' : 'none',\n seedSearchStringFromNonEmptySelection: editor.getOption(41 /* EditorOption.find */).seedSearchStringFromSelection === 'selection',\n seedSearchStringFromGlobalClipboard: true,\n shouldFocus: 1 /* FindStartFocusAction.FocusFindInput */,\n shouldAnimate: true,\n updateSearchScope: (args === null || args === void 0 ? void 0 : args.findInSelection) || false,\n loop: editor.getOption(41 /* EditorOption.find */).loop\n }, newState);\n controller.setGlobalBufferTerm(controller.getState().searchString);\n }\n }\n}\nclass StartFindWithSelectionAction extends _browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_3__.EditorAction {\n constructor() {\n super({\n id: _findModel_js__WEBPACK_IMPORTED_MODULE_7__.FIND_IDS.StartFindWithSelection,\n label: _nls_js__WEBPACK_IMPORTED_MODULE_11__.localize('startFindWithSelectionAction', \"Find With Selection\"),\n alias: 'Find With Selection',\n precondition: undefined,\n kbOpts: {\n kbExpr: null,\n primary: 0,\n mac: {\n primary: 2048 /* KeyMod.CtrlCmd */ | 35 /* KeyCode.KeyE */,\n },\n weight: 100 /* KeybindingWeight.EditorContrib */\n }\n });\n }\n async run(accessor, editor) {\n const controller = CommonFindController.get(editor);\n if (controller) {\n await controller.start({\n forceRevealReplace: false,\n seedSearchStringFromSelection: 'multiple',\n seedSearchStringFromNonEmptySelection: false,\n seedSearchStringFromGlobalClipboard: false,\n shouldFocus: 0 /* FindStartFocusAction.NoFocusChange */,\n shouldAnimate: true,\n updateSearchScope: false,\n loop: editor.getOption(41 /* EditorOption.find */).loop\n });\n controller.setGlobalBufferTerm(controller.getState().searchString);\n }\n }\n}\nclass MatchFindAction extends _browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_3__.EditorAction {\n async run(accessor, editor) {\n const controller = CommonFindController.get(editor);\n if (controller && !this._run(controller)) {\n await controller.start({\n forceRevealReplace: false,\n seedSearchStringFromSelection: (controller.getState().searchString.length === 0) && editor.getOption(41 /* EditorOption.find */).seedSearchStringFromSelection !== 'never' ? 'single' : 'none',\n seedSearchStringFromNonEmptySelection: editor.getOption(41 /* EditorOption.find */).seedSearchStringFromSelection === 'selection',\n seedSearchStringFromGlobalClipboard: true,\n shouldFocus: 0 /* FindStartFocusAction.NoFocusChange */,\n shouldAnimate: true,\n updateSearchScope: false,\n loop: editor.getOption(41 /* EditorOption.find */).loop\n });\n this._run(controller);\n }\n }\n}\nclass NextMatchFindAction extends MatchFindAction {\n constructor() {\n super({\n id: _findModel_js__WEBPACK_IMPORTED_MODULE_7__.FIND_IDS.NextMatchFindAction,\n label: _nls_js__WEBPACK_IMPORTED_MODULE_11__.localize('findNextMatchAction', \"Find Next\"),\n alias: 'Find Next',\n precondition: undefined,\n kbOpts: [{\n kbExpr: _common_editorContextKeys_js__WEBPACK_IMPORTED_MODULE_5__.EditorContextKeys.focus,\n primary: 61 /* KeyCode.F3 */,\n mac: { primary: 2048 /* KeyMod.CtrlCmd */ | 37 /* KeyCode.KeyG */, secondary: [61 /* KeyCode.F3 */] },\n weight: 100 /* KeybindingWeight.EditorContrib */\n }, {\n kbExpr: _platform_contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_14__.ContextKeyExpr.and(_common_editorContextKeys_js__WEBPACK_IMPORTED_MODULE_5__.EditorContextKeys.focus, _findModel_js__WEBPACK_IMPORTED_MODULE_7__.CONTEXT_FIND_INPUT_FOCUSED),\n primary: 3 /* KeyCode.Enter */,\n weight: 100 /* KeybindingWeight.EditorContrib */\n }]\n });\n }\n _run(controller) {\n const result = controller.moveToNextMatch();\n if (result) {\n controller.editor.pushUndoStop();\n return true;\n }\n return false;\n }\n}\nclass PreviousMatchFindAction extends MatchFindAction {\n constructor() {\n super({\n id: _findModel_js__WEBPACK_IMPORTED_MODULE_7__.FIND_IDS.PreviousMatchFindAction,\n label: _nls_js__WEBPACK_IMPORTED_MODULE_11__.localize('findPreviousMatchAction', \"Find Previous\"),\n alias: 'Find Previous',\n precondition: undefined,\n kbOpts: [{\n kbExpr: _common_editorContextKeys_js__WEBPACK_IMPORTED_MODULE_5__.EditorContextKeys.focus,\n primary: 1024 /* KeyMod.Shift */ | 61 /* KeyCode.F3 */,\n mac: { primary: 2048 /* KeyMod.CtrlCmd */ | 1024 /* KeyMod.Shift */ | 37 /* KeyCode.KeyG */, secondary: [1024 /* KeyMod.Shift */ | 61 /* KeyCode.F3 */] },\n weight: 100 /* KeybindingWeight.EditorContrib */\n }, {\n kbExpr: _platform_contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_14__.ContextKeyExpr.and(_common_editorContextKeys_js__WEBPACK_IMPORTED_MODULE_5__.EditorContextKeys.focus, _findModel_js__WEBPACK_IMPORTED_MODULE_7__.CONTEXT_FIND_INPUT_FOCUSED),\n primary: 1024 /* KeyMod.Shift */ | 3 /* KeyCode.Enter */,\n weight: 100 /* KeybindingWeight.EditorContrib */\n }\n ]\n });\n }\n _run(controller) {\n return controller.moveToPrevMatch();\n }\n}\nclass MoveToMatchFindAction extends _browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_3__.EditorAction {\n constructor() {\n super({\n id: _findModel_js__WEBPACK_IMPORTED_MODULE_7__.FIND_IDS.GoToMatchFindAction,\n label: _nls_js__WEBPACK_IMPORTED_MODULE_11__.localize('findMatchAction.goToMatch', \"Go to Match...\"),\n alias: 'Go to Match...',\n precondition: _findModel_js__WEBPACK_IMPORTED_MODULE_7__.CONTEXT_FIND_WIDGET_VISIBLE\n });\n this._highlightDecorations = [];\n }\n run(accessor, editor, args) {\n const controller = CommonFindController.get(editor);\n if (!controller) {\n return;\n }\n const matchesCount = controller.getState().matchesCount;\n if (matchesCount < 1) {\n const notificationService = accessor.get(_platform_notification_common_notification_js__WEBPACK_IMPORTED_MODULE_17__.INotificationService);\n notificationService.notify({\n severity: _platform_notification_common_notification_js__WEBPACK_IMPORTED_MODULE_17__.Severity.Warning,\n message: _nls_js__WEBPACK_IMPORTED_MODULE_11__.localize('findMatchAction.noResults', \"No matches. Try searching for something else.\")\n });\n return;\n }\n const quickInputService = accessor.get(_platform_quickinput_common_quickInput_js__WEBPACK_IMPORTED_MODULE_18__.IQuickInputService);\n const inputBox = quickInputService.createInputBox();\n inputBox.placeholder = _nls_js__WEBPACK_IMPORTED_MODULE_11__.localize('findMatchAction.inputPlaceHolder', \"Type a number to go to a specific match (between 1 and {0})\", matchesCount);\n const toFindMatchIndex = (value) => {\n const index = parseInt(value);\n if (isNaN(index)) {\n return undefined;\n }\n const matchCount = controller.getState().matchesCount;\n if (index > 0 && index <= matchCount) {\n return index - 1; // zero based\n }\n else if (index < 0 && index >= -matchCount) {\n return matchCount + index;\n }\n return undefined;\n };\n const updatePickerAndEditor = (value) => {\n const index = toFindMatchIndex(value);\n if (typeof index === 'number') {\n // valid\n inputBox.validationMessage = undefined;\n controller.goToMatch(index);\n const currentMatch = controller.getState().currentMatch;\n if (currentMatch) {\n this.addDecorations(editor, currentMatch);\n }\n }\n else {\n inputBox.validationMessage = _nls_js__WEBPACK_IMPORTED_MODULE_11__.localize('findMatchAction.inputValidationMessage', \"Please type a number between 1 and {0}\", controller.getState().matchesCount);\n this.clearDecorations(editor);\n }\n };\n inputBox.onDidChangeValue(value => {\n updatePickerAndEditor(value);\n });\n inputBox.onDidAccept(() => {\n const index = toFindMatchIndex(inputBox.value);\n if (typeof index === 'number') {\n controller.goToMatch(index);\n inputBox.hide();\n }\n else {\n inputBox.validationMessage = _nls_js__WEBPACK_IMPORTED_MODULE_11__.localize('findMatchAction.inputValidationMessage', \"Please type a number between 1 and {0}\", controller.getState().matchesCount);\n }\n });\n inputBox.onDidHide(() => {\n this.clearDecorations(editor);\n inputBox.dispose();\n });\n inputBox.show();\n }\n clearDecorations(editor) {\n editor.changeDecorations(changeAccessor => {\n this._highlightDecorations = changeAccessor.deltaDecorations(this._highlightDecorations, []);\n });\n }\n addDecorations(editor, range) {\n editor.changeDecorations(changeAccessor => {\n this._highlightDecorations = changeAccessor.deltaDecorations(this._highlightDecorations, [\n {\n range,\n options: {\n description: 'find-match-quick-access-range-highlight',\n className: 'rangeHighlight',\n isWholeLine: true\n }\n },\n {\n range,\n options: {\n description: 'find-match-quick-access-range-highlight-overview',\n overviewRuler: {\n color: (0,_platform_theme_common_themeService_js__WEBPACK_IMPORTED_MODULE_20__.themeColorFromId)(_common_core_editorColorRegistry_js__WEBPACK_IMPORTED_MODULE_4__.overviewRulerRangeHighlight),\n position: _common_model_js__WEBPACK_IMPORTED_MODULE_6__.OverviewRulerLane.Full\n }\n }\n }\n ]);\n });\n }\n}\nclass SelectionMatchFindAction extends _browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_3__.EditorAction {\n async run(accessor, editor) {\n const controller = CommonFindController.get(editor);\n if (!controller) {\n return;\n }\n const selectionSearchString = getSelectionSearchString(editor, 'single', false);\n if (selectionSearchString) {\n controller.setSearchString(selectionSearchString);\n }\n if (!this._run(controller)) {\n await controller.start({\n forceRevealReplace: false,\n seedSearchStringFromSelection: 'none',\n seedSearchStringFromNonEmptySelection: false,\n seedSearchStringFromGlobalClipboard: false,\n shouldFocus: 0 /* FindStartFocusAction.NoFocusChange */,\n shouldAnimate: true,\n updateSearchScope: false,\n loop: editor.getOption(41 /* EditorOption.find */).loop\n });\n this._run(controller);\n }\n }\n}\nclass NextSelectionMatchFindAction extends SelectionMatchFindAction {\n constructor() {\n super({\n id: _findModel_js__WEBPACK_IMPORTED_MODULE_7__.FIND_IDS.NextSelectionMatchFindAction,\n label: _nls_js__WEBPACK_IMPORTED_MODULE_11__.localize('nextSelectionMatchFindAction', \"Find Next Selection\"),\n alias: 'Find Next Selection',\n precondition: undefined,\n kbOpts: {\n kbExpr: _common_editorContextKeys_js__WEBPACK_IMPORTED_MODULE_5__.EditorContextKeys.focus,\n primary: 2048 /* KeyMod.CtrlCmd */ | 61 /* KeyCode.F3 */,\n weight: 100 /* KeybindingWeight.EditorContrib */\n }\n });\n }\n _run(controller) {\n return controller.moveToNextMatch();\n }\n}\nclass PreviousSelectionMatchFindAction extends SelectionMatchFindAction {\n constructor() {\n super({\n id: _findModel_js__WEBPACK_IMPORTED_MODULE_7__.FIND_IDS.PreviousSelectionMatchFindAction,\n label: _nls_js__WEBPACK_IMPORTED_MODULE_11__.localize('previousSelectionMatchFindAction', \"Find Previous Selection\"),\n alias: 'Find Previous Selection',\n precondition: undefined,\n kbOpts: {\n kbExpr: _common_editorContextKeys_js__WEBPACK_IMPORTED_MODULE_5__.EditorContextKeys.focus,\n primary: 2048 /* KeyMod.CtrlCmd */ | 1024 /* KeyMod.Shift */ | 61 /* KeyCode.F3 */,\n weight: 100 /* KeybindingWeight.EditorContrib */\n }\n });\n }\n _run(controller) {\n return controller.moveToPrevMatch();\n }\n}\nconst StartFindReplaceAction = (0,_browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_3__.registerMultiEditorAction)(new _browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_3__.MultiEditorAction({\n id: _findModel_js__WEBPACK_IMPORTED_MODULE_7__.FIND_IDS.StartFindReplaceAction,\n label: _nls_js__WEBPACK_IMPORTED_MODULE_11__.localize('startReplace', \"Replace\"),\n alias: 'Replace',\n precondition: _platform_contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_14__.ContextKeyExpr.or(_common_editorContextKeys_js__WEBPACK_IMPORTED_MODULE_5__.EditorContextKeys.focus, _platform_contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_14__.ContextKeyExpr.has('editorIsOpen')),\n kbOpts: {\n kbExpr: null,\n primary: 2048 /* KeyMod.CtrlCmd */ | 38 /* KeyCode.KeyH */,\n mac: { primary: 2048 /* KeyMod.CtrlCmd */ | 512 /* KeyMod.Alt */ | 36 /* KeyCode.KeyF */ },\n weight: 100 /* KeybindingWeight.EditorContrib */\n },\n menuOpts: {\n menuId: _platform_actions_common_actions_js__WEBPACK_IMPORTED_MODULE_12__.MenuId.MenubarEditMenu,\n group: '3_find',\n title: _nls_js__WEBPACK_IMPORTED_MODULE_11__.localize({ key: 'miReplace', comment: ['&& denotes a mnemonic'] }, \"&&Replace\"),\n order: 2\n }\n}));\nStartFindReplaceAction.addImplementation(0, (accessor, editor, args) => {\n if (!editor.hasModel() || editor.getOption(91 /* EditorOption.readOnly */)) {\n return false;\n }\n const controller = CommonFindController.get(editor);\n if (!controller) {\n return false;\n }\n const currentSelection = editor.getSelection();\n const findInputFocused = controller.isFindInputFocused();\n // we only seed search string from selection when the current selection is single line and not empty,\n // + the find input is not focused\n const seedSearchStringFromSelection = !currentSelection.isEmpty()\n && currentSelection.startLineNumber === currentSelection.endLineNumber\n && (editor.getOption(41 /* EditorOption.find */).seedSearchStringFromSelection !== 'never')\n && !findInputFocused;\n /*\n * if the existing search string in find widget is empty and we don't seed search string from selection, it means the Find Input is still empty, so we should focus the Find Input instead of Replace Input.\n\n * findInputFocused true -> seedSearchStringFromSelection false, FocusReplaceInput\n * findInputFocused false, seedSearchStringFromSelection true FocusReplaceInput\n * findInputFocused false seedSearchStringFromSelection false FocusFindInput\n */\n const shouldFocus = (findInputFocused || seedSearchStringFromSelection) ?\n 2 /* FindStartFocusAction.FocusReplaceInput */ : 1 /* FindStartFocusAction.FocusFindInput */;\n return controller.start({\n forceRevealReplace: true,\n seedSearchStringFromSelection: seedSearchStringFromSelection ? 'single' : 'none',\n seedSearchStringFromNonEmptySelection: editor.getOption(41 /* EditorOption.find */).seedSearchStringFromSelection === 'selection',\n seedSearchStringFromGlobalClipboard: editor.getOption(41 /* EditorOption.find */).seedSearchStringFromSelection !== 'never',\n shouldFocus: shouldFocus,\n shouldAnimate: true,\n updateSearchScope: false,\n loop: editor.getOption(41 /* EditorOption.find */).loop\n });\n});\n(0,_browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_3__.registerEditorContribution)(CommonFindController.ID, FindController, 0 /* EditorContributionInstantiation.Eager */); // eager because it uses `saveViewState`/`restoreViewState`\n(0,_browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_3__.registerEditorAction)(StartFindWithArgsAction);\n(0,_browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_3__.registerEditorAction)(StartFindWithSelectionAction);\n(0,_browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_3__.registerEditorAction)(NextMatchFindAction);\n(0,_browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_3__.registerEditorAction)(PreviousMatchFindAction);\n(0,_browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_3__.registerEditorAction)(MoveToMatchFindAction);\n(0,_browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_3__.registerEditorAction)(NextSelectionMatchFindAction);\n(0,_browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_3__.registerEditorAction)(PreviousSelectionMatchFindAction);\nconst FindCommand = _browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_3__.EditorCommand.bindToContribution(CommonFindController.get);\n(0,_browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_3__.registerEditorCommand)(new FindCommand({\n id: _findModel_js__WEBPACK_IMPORTED_MODULE_7__.FIND_IDS.CloseFindWidgetCommand,\n precondition: _findModel_js__WEBPACK_IMPORTED_MODULE_7__.CONTEXT_FIND_WIDGET_VISIBLE,\n handler: x => x.closeFindWidget(),\n kbOpts: {\n weight: 100 /* KeybindingWeight.EditorContrib */ + 5,\n kbExpr: _platform_contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_14__.ContextKeyExpr.and(_common_editorContextKeys_js__WEBPACK_IMPORTED_MODULE_5__.EditorContextKeys.focus, _platform_contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_14__.ContextKeyExpr.not('isComposing')),\n primary: 9 /* KeyCode.Escape */,\n secondary: [1024 /* KeyMod.Shift */ | 9 /* KeyCode.Escape */]\n }\n}));\n(0,_browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_3__.registerEditorCommand)(new FindCommand({\n id: _findModel_js__WEBPACK_IMPORTED_MODULE_7__.FIND_IDS.ToggleCaseSensitiveCommand,\n precondition: undefined,\n handler: x => x.toggleCaseSensitive(),\n kbOpts: {\n weight: 100 /* KeybindingWeight.EditorContrib */ + 5,\n kbExpr: _common_editorContextKeys_js__WEBPACK_IMPORTED_MODULE_5__.EditorContextKeys.focus,\n primary: _findModel_js__WEBPACK_IMPORTED_MODULE_7__.ToggleCaseSensitiveKeybinding.primary,\n mac: _findModel_js__WEBPACK_IMPORTED_MODULE_7__.ToggleCaseSensitiveKeybinding.mac,\n win: _findModel_js__WEBPACK_IMPORTED_MODULE_7__.ToggleCaseSensitiveKeybinding.win,\n linux: _findModel_js__WEBPACK_IMPORTED_MODULE_7__.ToggleCaseSensitiveKeybinding.linux\n }\n}));\n(0,_browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_3__.registerEditorCommand)(new FindCommand({\n id: _findModel_js__WEBPACK_IMPORTED_MODULE_7__.FIND_IDS.ToggleWholeWordCommand,\n precondition: undefined,\n handler: x => x.toggleWholeWords(),\n kbOpts: {\n weight: 100 /* KeybindingWeight.EditorContrib */ + 5,\n kbExpr: _common_editorContextKeys_js__WEBPACK_IMPORTED_MODULE_5__.EditorContextKeys.focus,\n primary: _findModel_js__WEBPACK_IMPORTED_MODULE_7__.ToggleWholeWordKeybinding.primary,\n mac: _findModel_js__WEBPACK_IMPORTED_MODULE_7__.ToggleWholeWordKeybinding.mac,\n win: _findModel_js__WEBPACK_IMPORTED_MODULE_7__.ToggleWholeWordKeybinding.win,\n linux: _findModel_js__WEBPACK_IMPORTED_MODULE_7__.ToggleWholeWordKeybinding.linux\n }\n}));\n(0,_browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_3__.registerEditorCommand)(new FindCommand({\n id: _findModel_js__WEBPACK_IMPORTED_MODULE_7__.FIND_IDS.ToggleRegexCommand,\n precondition: undefined,\n handler: x => x.toggleRegex(),\n kbOpts: {\n weight: 100 /* KeybindingWeight.EditorContrib */ + 5,\n kbExpr: _common_editorContextKeys_js__WEBPACK_IMPORTED_MODULE_5__.EditorContextKeys.focus,\n primary: _findModel_js__WEBPACK_IMPORTED_MODULE_7__.ToggleRegexKeybinding.primary,\n mac: _findModel_js__WEBPACK_IMPORTED_MODULE_7__.ToggleRegexKeybinding.mac,\n win: _findModel_js__WEBPACK_IMPORTED_MODULE_7__.ToggleRegexKeybinding.win,\n linux: _findModel_js__WEBPACK_IMPORTED_MODULE_7__.ToggleRegexKeybinding.linux\n }\n}));\n(0,_browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_3__.registerEditorCommand)(new FindCommand({\n id: _findModel_js__WEBPACK_IMPORTED_MODULE_7__.FIND_IDS.ToggleSearchScopeCommand,\n precondition: undefined,\n handler: x => x.toggleSearchScope(),\n kbOpts: {\n weight: 100 /* KeybindingWeight.EditorContrib */ + 5,\n kbExpr: _common_editorContextKeys_js__WEBPACK_IMPORTED_MODULE_5__.EditorContextKeys.focus,\n primary: _findModel_js__WEBPACK_IMPORTED_MODULE_7__.ToggleSearchScopeKeybinding.primary,\n mac: _findModel_js__WEBPACK_IMPORTED_MODULE_7__.ToggleSearchScopeKeybinding.mac,\n win: _findModel_js__WEBPACK_IMPORTED_MODULE_7__.ToggleSearchScopeKeybinding.win,\n linux: _findModel_js__WEBPACK_IMPORTED_MODULE_7__.ToggleSearchScopeKeybinding.linux\n }\n}));\n(0,_browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_3__.registerEditorCommand)(new FindCommand({\n id: _findModel_js__WEBPACK_IMPORTED_MODULE_7__.FIND_IDS.TogglePreserveCaseCommand,\n precondition: undefined,\n handler: x => x.togglePreserveCase(),\n kbOpts: {\n weight: 100 /* KeybindingWeight.EditorContrib */ + 5,\n kbExpr: _common_editorContextKeys_js__WEBPACK_IMPORTED_MODULE_5__.EditorContextKeys.focus,\n primary: _findModel_js__WEBPACK_IMPORTED_MODULE_7__.TogglePreserveCaseKeybinding.primary,\n mac: _findModel_js__WEBPACK_IMPORTED_MODULE_7__.TogglePreserveCaseKeybinding.mac,\n win: _findModel_js__WEBPACK_IMPORTED_MODULE_7__.TogglePreserveCaseKeybinding.win,\n linux: _findModel_js__WEBPACK_IMPORTED_MODULE_7__.TogglePreserveCaseKeybinding.linux\n }\n}));\n(0,_browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_3__.registerEditorCommand)(new FindCommand({\n id: _findModel_js__WEBPACK_IMPORTED_MODULE_7__.FIND_IDS.ReplaceOneAction,\n precondition: _findModel_js__WEBPACK_IMPORTED_MODULE_7__.CONTEXT_FIND_WIDGET_VISIBLE,\n handler: x => x.replace(),\n kbOpts: {\n weight: 100 /* KeybindingWeight.EditorContrib */ + 5,\n kbExpr: _common_editorContextKeys_js__WEBPACK_IMPORTED_MODULE_5__.EditorContextKeys.focus,\n primary: 2048 /* KeyMod.CtrlCmd */ | 1024 /* KeyMod.Shift */ | 22 /* KeyCode.Digit1 */\n }\n}));\n(0,_browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_3__.registerEditorCommand)(new FindCommand({\n id: _findModel_js__WEBPACK_IMPORTED_MODULE_7__.FIND_IDS.ReplaceOneAction,\n precondition: _findModel_js__WEBPACK_IMPORTED_MODULE_7__.CONTEXT_FIND_WIDGET_VISIBLE,\n handler: x => x.replace(),\n kbOpts: {\n weight: 100 /* KeybindingWeight.EditorContrib */ + 5,\n kbExpr: _platform_contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_14__.ContextKeyExpr.and(_common_editorContextKeys_js__WEBPACK_IMPORTED_MODULE_5__.EditorContextKeys.focus, _findModel_js__WEBPACK_IMPORTED_MODULE_7__.CONTEXT_REPLACE_INPUT_FOCUSED),\n primary: 3 /* KeyCode.Enter */\n }\n}));\n(0,_browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_3__.registerEditorCommand)(new FindCommand({\n id: _findModel_js__WEBPACK_IMPORTED_MODULE_7__.FIND_IDS.ReplaceAllAction,\n precondition: _findModel_js__WEBPACK_IMPORTED_MODULE_7__.CONTEXT_FIND_WIDGET_VISIBLE,\n handler: x => x.replaceAll(),\n kbOpts: {\n weight: 100 /* KeybindingWeight.EditorContrib */ + 5,\n kbExpr: _common_editorContextKeys_js__WEBPACK_IMPORTED_MODULE_5__.EditorContextKeys.focus,\n primary: 2048 /* KeyMod.CtrlCmd */ | 512 /* KeyMod.Alt */ | 3 /* KeyCode.Enter */\n }\n}));\n(0,_browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_3__.registerEditorCommand)(new FindCommand({\n id: _findModel_js__WEBPACK_IMPORTED_MODULE_7__.FIND_IDS.ReplaceAllAction,\n precondition: _findModel_js__WEBPACK_IMPORTED_MODULE_7__.CONTEXT_FIND_WIDGET_VISIBLE,\n handler: x => x.replaceAll(),\n kbOpts: {\n weight: 100 /* KeybindingWeight.EditorContrib */ + 5,\n kbExpr: _platform_contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_14__.ContextKeyExpr.and(_common_editorContextKeys_js__WEBPACK_IMPORTED_MODULE_5__.EditorContextKeys.focus, _findModel_js__WEBPACK_IMPORTED_MODULE_7__.CONTEXT_REPLACE_INPUT_FOCUSED),\n primary: undefined,\n mac: {\n primary: 2048 /* KeyMod.CtrlCmd */ | 3 /* KeyCode.Enter */,\n }\n }\n}));\n(0,_browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_3__.registerEditorCommand)(new FindCommand({\n id: _findModel_js__WEBPACK_IMPORTED_MODULE_7__.FIND_IDS.SelectAllMatchesAction,\n precondition: _findModel_js__WEBPACK_IMPORTED_MODULE_7__.CONTEXT_FIND_WIDGET_VISIBLE,\n handler: x => x.selectAllMatches(),\n kbOpts: {\n weight: 100 /* KeybindingWeight.EditorContrib */ + 5,\n kbExpr: _common_editorContextKeys_js__WEBPACK_IMPORTED_MODULE_5__.EditorContextKeys.focus,\n primary: 512 /* KeyMod.Alt */ | 3 /* KeyCode.Enter */\n }\n}));\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/contrib/find/browser/findController.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/contrib/find/browser/findDecorations.js":
/*!******************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/contrib/find/browser/findDecorations.js ***!
\******************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ FindDecorations: () => (/* binding */ FindDecorations)\n/* harmony export */ });\n/* harmony import */ var _common_core_range_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../common/core/range.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/core/range.js\");\n/* harmony import */ var _common_model_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../common/model.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/model.js\");\n/* harmony import */ var _common_model_textModel_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../common/model/textModel.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/model/textModel.js\");\n/* harmony import */ var _platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../../../platform/theme/common/colorRegistry.js */ \"./node_modules/monaco-editor/esm/vs/platform/theme/common/colorRegistry.js\");\n/* harmony import */ var _platform_theme_common_themeService_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../../../platform/theme/common/themeService.js */ \"./node_modules/monaco-editor/esm/vs/platform/theme/common/themeService.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n\n\n\n\nclass FindDecorations {\n constructor(editor) {\n this._editor = editor;\n this._decorations = [];\n this._overviewRulerApproximateDecorations = [];\n this._findScopeDecorationIds = [];\n this._rangeHighlightDecorationId = null;\n this._highlightedDecorationId = null;\n this._startPosition = this._editor.getPosition();\n }\n dispose() {\n this._editor.removeDecorations(this._allDecorations());\n this._decorations = [];\n this._overviewRulerApproximateDecorations = [];\n this._findScopeDecorationIds = [];\n this._rangeHighlightDecorationId = null;\n this._highlightedDecorationId = null;\n }\n reset() {\n this._decorations = [];\n this._overviewRulerApproximateDecorations = [];\n this._findScopeDecorationIds = [];\n this._rangeHighlightDecorationId = null;\n this._highlightedDecorationId = null;\n }\n getCount() {\n return this._decorations.length;\n }\n /** @deprecated use getFindScopes to support multiple selections */\n getFindScope() {\n if (this._findScopeDecorationIds[0]) {\n return this._editor.getModel().getDecorationRange(this._findScopeDecorationIds[0]);\n }\n return null;\n }\n getFindScopes() {\n if (this._findScopeDecorationIds.length) {\n const scopes = this._findScopeDecorationIds.map(findScopeDecorationId => this._editor.getModel().getDecorationRange(findScopeDecorationId)).filter(element => !!element);\n if (scopes.length) {\n return scopes;\n }\n }\n return null;\n }\n getStartPosition() {\n return this._startPosition;\n }\n setStartPosition(newStartPosition) {\n this._startPosition = newStartPosition;\n this.setCurrentFindMatch(null);\n }\n _getDecorationIndex(decorationId) {\n const index = this._decorations.indexOf(decorationId);\n if (index >= 0) {\n return index + 1;\n }\n return 1;\n }\n getDecorationRangeAt(index) {\n const decorationId = index < this._decorations.length ? this._decorations[index] : null;\n if (decorationId) {\n return this._editor.getModel().getDecorationRange(decorationId);\n }\n return null;\n }\n getCurrentMatchesPosition(desiredRange) {\n const candidates = this._editor.getModel().getDecorationsInRange(desiredRange);\n for (const candidate of candidates) {\n const candidateOpts = candidate.options;\n if (candidateOpts === FindDecorations._FIND_MATCH_DECORATION || candidateOpts === FindDecorations._CURRENT_FIND_MATCH_DECORATION) {\n return this._getDecorationIndex(candidate.id);\n }\n }\n // We don't know the current match position, so returns zero to show '?' in find widget\n return 0;\n }\n setCurrentFindMatch(nextMatch) {\n let newCurrentDecorationId = null;\n let matchPosition = 0;\n if (nextMatch) {\n for (let i = 0, len = this._decorations.length; i < len; i++) {\n const range = this._editor.getModel().getDecorationRange(this._decorations[i]);\n if (nextMatch.equalsRange(range)) {\n newCurrentDecorationId = this._decorations[i];\n matchPosition = (i + 1);\n break;\n }\n }\n }\n if (this._highlightedDecorationId !== null || newCurrentDecorationId !== null) {\n this._editor.changeDecorations((changeAccessor) => {\n if (this._highlightedDecorationId !== null) {\n changeAccessor.changeDecorationOptions(this._highlightedDecorationId, FindDecorations._FIND_MATCH_DECORATION);\n this._highlightedDecorationId = null;\n }\n if (newCurrentDecorationId !== null) {\n this._highlightedDecorationId = newCurrentDecorationId;\n changeAccessor.changeDecorationOptions(this._highlightedDecorationId, FindDecorations._CURRENT_FIND_MATCH_DECORATION);\n }\n if (this._rangeHighlightDecorationId !== null) {\n changeAccessor.removeDecoration(this._rangeHighlightDecorationId);\n this._rangeHighlightDecorationId = null;\n }\n if (newCurrentDecorationId !== null) {\n let rng = this._editor.getModel().getDecorationRange(newCurrentDecorationId);\n if (rng.startLineNumber !== rng.endLineNumber && rng.endColumn === 1) {\n const lineBeforeEnd = rng.endLineNumber - 1;\n const lineBeforeEndMaxColumn = this._editor.getModel().getLineMaxColumn(lineBeforeEnd);\n rng = new _common_core_range_js__WEBPACK_IMPORTED_MODULE_0__.Range(rng.startLineNumber, rng.startColumn, lineBeforeEnd, lineBeforeEndMaxColumn);\n }\n this._rangeHighlightDecorationId = changeAccessor.addDecoration(rng, FindDecorations._RANGE_HIGHLIGHT_DECORATION);\n }\n });\n }\n return matchPosition;\n }\n set(findMatches, findScopes) {\n this._editor.changeDecorations((accessor) => {\n let findMatchesOptions = FindDecorations._FIND_MATCH_DECORATION;\n const newOverviewRulerApproximateDecorations = [];\n if (findMatches.length > 1000) {\n // we go into a mode where the overview ruler gets \"approximate\" decorations\n // the reason is that the overview ruler paints all the decorations in the file and we don't want to cause freezes\n findMatchesOptions = FindDecorations._FIND_MATCH_NO_OVERVIEW_DECORATION;\n // approximate a distance in lines where matches should be merged\n const lineCount = this._editor.getModel().getLineCount();\n const height = this._editor.getLayoutInfo().height;\n const approxPixelsPerLine = height / lineCount;\n const mergeLinesDelta = Math.max(2, Math.ceil(3 / approxPixelsPerLine));\n // merge decorations as much as possible\n let prevStartLineNumber = findMatches[0].range.startLineNumber;\n let prevEndLineNumber = findMatches[0].range.endLineNumber;\n for (let i = 1, len = findMatches.length; i < len; i++) {\n const range = findMatches[i].range;\n if (prevEndLineNumber + mergeLinesDelta >= range.startLineNumber) {\n if (range.endLineNumber > prevEndLineNumber) {\n prevEndLineNumber = range.endLineNumber;\n }\n }\n else {\n newOverviewRulerApproximateDecorations.push({\n range: new _common_core_range_js__WEBPACK_IMPORTED_MODULE_0__.Range(prevStartLineNumber, 1, prevEndLineNumber, 1),\n options: FindDecorations._FIND_MATCH_ONLY_OVERVIEW_DECORATION\n });\n prevStartLineNumber = range.startLineNumber;\n prevEndLineNumber = range.endLineNumber;\n }\n }\n newOverviewRulerApproximateDecorations.push({\n range: new _common_core_range_js__WEBPACK_IMPORTED_MODULE_0__.Range(prevStartLineNumber, 1, prevEndLineNumber, 1),\n options: FindDecorations._FIND_MATCH_ONLY_OVERVIEW_DECORATION\n });\n }\n // Find matches\n const newFindMatchesDecorations = new Array(findMatches.length);\n for (let i = 0, len = findMatches.length; i < len; i++) {\n newFindMatchesDecorations[i] = {\n range: findMatches[i].range,\n options: findMatchesOptions\n };\n }\n this._decorations = accessor.deltaDecorations(this._decorations, newFindMatchesDecorations);\n // Overview ruler approximate decorations\n this._overviewRulerApproximateDecorations = accessor.deltaDecorations(this._overviewRulerApproximateDecorations, newOverviewRulerApproximateDecorations);\n // Range highlight\n if (this._rangeHighlightDecorationId) {\n accessor.removeDecoration(this._rangeHighlightDecorationId);\n this._rangeHighlightDecorationId = null;\n }\n // Find scope\n if (this._findScopeDecorationIds.length) {\n this._findScopeDecorationIds.forEach(findScopeDecorationId => accessor.removeDecoration(findScopeDecorationId));\n this._findScopeDecorationIds = [];\n }\n if (findScopes === null || findScopes === void 0 ? void 0 : findScopes.length) {\n this._findScopeDecorationIds = findScopes.map(findScope => accessor.addDecoration(findScope, FindDecorations._FIND_SCOPE_DECORATION));\n }\n });\n }\n matchBeforePosition(position) {\n if (this._decorations.length === 0) {\n return null;\n }\n for (let i = this._decorations.length - 1; i >= 0; i--) {\n const decorationId = this._decorations[i];\n const r = this._editor.getModel().getDecorationRange(decorationId);\n if (!r || r.endLineNumber > position.lineNumber) {\n continue;\n }\n if (r.endLineNumber < position.lineNumber) {\n return r;\n }\n if (r.endColumn > position.column) {\n continue;\n }\n return r;\n }\n return this._editor.getModel().getDecorationRange(this._decorations[this._decorations.length - 1]);\n }\n matchAfterPosition(position) {\n if (this._decorations.length === 0) {\n return null;\n }\n for (let i = 0, len = this._decorations.length; i < len; i++) {\n const decorationId = this._decorations[i];\n const r = this._editor.getModel().getDecorationRange(decorationId);\n if (!r || r.startLineNumber < position.lineNumber) {\n continue;\n }\n if (r.startLineNumber > position.lineNumber) {\n return r;\n }\n if (r.startColumn < position.column) {\n continue;\n }\n return r;\n }\n return this._editor.getModel().getDecorationRange(this._decorations[0]);\n }\n _allDecorations() {\n let result = [];\n result = result.concat(this._decorations);\n result = result.concat(this._overviewRulerApproximateDecorations);\n if (this._findScopeDecorationIds.length) {\n result.push(...this._findScopeDecorationIds);\n }\n if (this._rangeHighlightDecorationId) {\n result.push(this._rangeHighlightDecorationId);\n }\n return result;\n }\n}\nFindDecorations._CURRENT_FIND_MATCH_DECORATION = _common_model_textModel_js__WEBPACK_IMPORTED_MODULE_2__.ModelDecorationOptions.register({\n description: 'current-find-match',\n stickiness: 1 /* TrackedRangeStickiness.NeverGrowsWhenTypingAtEdges */,\n zIndex: 13,\n className: 'currentFindMatch',\n showIfCollapsed: true,\n overviewRuler: {\n color: (0,_platform_theme_common_themeService_js__WEBPACK_IMPORTED_MODULE_4__.themeColorFromId)(_platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_3__.overviewRulerFindMatchForeground),\n position: _common_model_js__WEBPACK_IMPORTED_MODULE_1__.OverviewRulerLane.Center\n },\n minimap: {\n color: (0,_platform_theme_common_themeService_js__WEBPACK_IMPORTED_MODULE_4__.themeColorFromId)(_platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_3__.minimapFindMatch),\n position: _common_model_js__WEBPACK_IMPORTED_MODULE_1__.MinimapPosition.Inline\n }\n});\nFindDecorations._FIND_MATCH_DECORATION = _common_model_textModel_js__WEBPACK_IMPORTED_MODULE_2__.ModelDecorationOptions.register({\n description: 'find-match',\n stickiness: 1 /* TrackedRangeStickiness.NeverGrowsWhenTypingAtEdges */,\n zIndex: 10,\n className: 'findMatch',\n showIfCollapsed: true,\n overviewRuler: {\n color: (0,_platform_theme_common_themeService_js__WEBPACK_IMPORTED_MODULE_4__.themeColorFromId)(_platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_3__.overviewRulerFindMatchForeground),\n position: _common_model_js__WEBPACK_IMPORTED_MODULE_1__.OverviewRulerLane.Center\n },\n minimap: {\n color: (0,_platform_theme_common_themeService_js__WEBPACK_IMPORTED_MODULE_4__.themeColorFromId)(_platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_3__.minimapFindMatch),\n position: _common_model_js__WEBPACK_IMPORTED_MODULE_1__.MinimapPosition.Inline\n }\n});\nFindDecorations._FIND_MATCH_NO_OVERVIEW_DECORATION = _common_model_textModel_js__WEBPACK_IMPORTED_MODULE_2__.ModelDecorationOptions.register({\n description: 'find-match-no-overview',\n stickiness: 1 /* TrackedRangeStickiness.NeverGrowsWhenTypingAtEdges */,\n className: 'findMatch',\n showIfCollapsed: true\n});\nFindDecorations._FIND_MATCH_ONLY_OVERVIEW_DECORATION = _common_model_textModel_js__WEBPACK_IMPORTED_MODULE_2__.ModelDecorationOptions.register({\n description: 'find-match-only-overview',\n stickiness: 1 /* TrackedRangeStickiness.NeverGrowsWhenTypingAtEdges */,\n overviewRuler: {\n color: (0,_platform_theme_common_themeService_js__WEBPACK_IMPORTED_MODULE_4__.themeColorFromId)(_platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_3__.overviewRulerFindMatchForeground),\n position: _common_model_js__WEBPACK_IMPORTED_MODULE_1__.OverviewRulerLane.Center\n }\n});\nFindDecorations._RANGE_HIGHLIGHT_DECORATION = _common_model_textModel_js__WEBPACK_IMPORTED_MODULE_2__.ModelDecorationOptions.register({\n description: 'find-range-highlight',\n stickiness: 1 /* TrackedRangeStickiness.NeverGrowsWhenTypingAtEdges */,\n className: 'rangeHighlight',\n isWholeLine: true\n});\nFindDecorations._FIND_SCOPE_DECORATION = _common_model_textModel_js__WEBPACK_IMPORTED_MODULE_2__.ModelDecorationOptions.register({\n description: 'find-scope',\n className: 'findScope',\n isWholeLine: true\n});\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/contrib/find/browser/findDecorations.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/contrib/find/browser/findModel.js":
/*!************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/contrib/find/browser/findModel.js ***!
\************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ CONTEXT_FIND_INPUT_FOCUSED: () => (/* binding */ CONTEXT_FIND_INPUT_FOCUSED),\n/* harmony export */ CONTEXT_FIND_WIDGET_NOT_VISIBLE: () => (/* binding */ CONTEXT_FIND_WIDGET_NOT_VISIBLE),\n/* harmony export */ CONTEXT_FIND_WIDGET_VISIBLE: () => (/* binding */ CONTEXT_FIND_WIDGET_VISIBLE),\n/* harmony export */ CONTEXT_REPLACE_INPUT_FOCUSED: () => (/* binding */ CONTEXT_REPLACE_INPUT_FOCUSED),\n/* harmony export */ FIND_IDS: () => (/* binding */ FIND_IDS),\n/* harmony export */ FindModelBoundToEditorModel: () => (/* binding */ FindModelBoundToEditorModel),\n/* harmony export */ MATCHES_LIMIT: () => (/* binding */ MATCHES_LIMIT),\n/* harmony export */ ToggleCaseSensitiveKeybinding: () => (/* binding */ ToggleCaseSensitiveKeybinding),\n/* harmony export */ TogglePreserveCaseKeybinding: () => (/* binding */ TogglePreserveCaseKeybinding),\n/* harmony export */ ToggleRegexKeybinding: () => (/* binding */ ToggleRegexKeybinding),\n/* harmony export */ ToggleSearchScopeKeybinding: () => (/* binding */ ToggleSearchScopeKeybinding),\n/* harmony export */ ToggleWholeWordKeybinding: () => (/* binding */ ToggleWholeWordKeybinding)\n/* harmony export */ });\n/* harmony import */ var _base_common_arraysFind_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../../base/common/arraysFind.js */ \"./node_modules/monaco-editor/esm/vs/base/common/arraysFind.js\");\n/* harmony import */ var _base_common_async_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../base/common/async.js */ \"./node_modules/monaco-editor/esm/vs/base/common/async.js\");\n/* harmony import */ var _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../../base/common/lifecycle.js */ \"./node_modules/monaco-editor/esm/vs/base/common/lifecycle.js\");\n/* harmony import */ var _common_commands_replaceCommand_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../../common/commands/replaceCommand.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/commands/replaceCommand.js\");\n/* harmony import */ var _common_core_position_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../../common/core/position.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/core/position.js\");\n/* harmony import */ var _common_core_range_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../../../common/core/range.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/core/range.js\");\n/* harmony import */ var _common_core_selection_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../../../common/core/selection.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/core/selection.js\");\n/* harmony import */ var _common_model_textModelSearch_js__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ../../../common/model/textModelSearch.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/model/textModelSearch.js\");\n/* harmony import */ var _findDecorations_js__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ./findDecorations.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/find/browser/findDecorations.js\");\n/* harmony import */ var _replaceAllCommand_js__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ./replaceAllCommand.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/find/browser/replaceAllCommand.js\");\n/* harmony import */ var _replacePattern_js__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! ./replacePattern.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/find/browser/replacePattern.js\");\n/* harmony import */ var _platform_contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(/*! ../../../../platform/contextkey/common/contextkey.js */ \"./node_modules/monaco-editor/esm/vs/platform/contextkey/common/contextkey.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n\n\n\n\n\n\n\n\n\n\n\nconst CONTEXT_FIND_WIDGET_VISIBLE = new _platform_contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_11__.RawContextKey('findWidgetVisible', false);\nconst CONTEXT_FIND_WIDGET_NOT_VISIBLE = CONTEXT_FIND_WIDGET_VISIBLE.toNegated();\n// Keep ContextKey use of 'Focussed' to not break when clauses\nconst CONTEXT_FIND_INPUT_FOCUSED = new _platform_contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_11__.RawContextKey('findInputFocussed', false);\nconst CONTEXT_REPLACE_INPUT_FOCUSED = new _platform_contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_11__.RawContextKey('replaceInputFocussed', false);\nconst ToggleCaseSensitiveKeybinding = {\n primary: 512 /* KeyMod.Alt */ | 33 /* KeyCode.KeyC */,\n mac: { primary: 2048 /* KeyMod.CtrlCmd */ | 512 /* KeyMod.Alt */ | 33 /* KeyCode.KeyC */ }\n};\nconst ToggleWholeWordKeybinding = {\n primary: 512 /* KeyMod.Alt */ | 53 /* KeyCode.KeyW */,\n mac: { primary: 2048 /* KeyMod.CtrlCmd */ | 512 /* KeyMod.Alt */ | 53 /* KeyCode.KeyW */ }\n};\nconst ToggleRegexKeybinding = {\n primary: 512 /* KeyMod.Alt */ | 48 /* KeyCode.KeyR */,\n mac: { primary: 2048 /* KeyMod.CtrlCmd */ | 512 /* KeyMod.Alt */ | 48 /* KeyCode.KeyR */ }\n};\nconst ToggleSearchScopeKeybinding = {\n primary: 512 /* KeyMod.Alt */ | 42 /* KeyCode.KeyL */,\n mac: { primary: 2048 /* KeyMod.CtrlCmd */ | 512 /* KeyMod.Alt */ | 42 /* KeyCode.KeyL */ }\n};\nconst TogglePreserveCaseKeybinding = {\n primary: 512 /* KeyMod.Alt */ | 46 /* KeyCode.KeyP */,\n mac: { primary: 2048 /* KeyMod.CtrlCmd */ | 512 /* KeyMod.Alt */ | 46 /* KeyCode.KeyP */ }\n};\nconst FIND_IDS = {\n StartFindAction: 'actions.find',\n StartFindWithSelection: 'actions.findWithSelection',\n StartFindWithArgs: 'editor.actions.findWithArgs',\n NextMatchFindAction: 'editor.action.nextMatchFindAction',\n PreviousMatchFindAction: 'editor.action.previousMatchFindAction',\n GoToMatchFindAction: 'editor.action.goToMatchFindAction',\n NextSelectionMatchFindAction: 'editor.action.nextSelectionMatchFindAction',\n PreviousSelectionMatchFindAction: 'editor.action.previousSelectionMatchFindAction',\n StartFindReplaceAction: 'editor.action.startFindReplaceAction',\n CloseFindWidgetCommand: 'closeFindWidget',\n ToggleCaseSensitiveCommand: 'toggleFindCaseSensitive',\n ToggleWholeWordCommand: 'toggleFindWholeWord',\n ToggleRegexCommand: 'toggleFindRegex',\n ToggleSearchScopeCommand: 'toggleFindInSelection',\n TogglePreserveCaseCommand: 'togglePreserveCase',\n ReplaceOneAction: 'editor.action.replaceOne',\n ReplaceAllAction: 'editor.action.replaceAll',\n SelectAllMatchesAction: 'editor.action.selectAllMatches'\n};\nconst MATCHES_LIMIT = 19999;\nconst RESEARCH_DELAY = 240;\nclass FindModelBoundToEditorModel {\n constructor(editor, state) {\n this._toDispose = new _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_2__.DisposableStore();\n this._editor = editor;\n this._state = state;\n this._isDisposed = false;\n this._startSearchingTimer = new _base_common_async_js__WEBPACK_IMPORTED_MODULE_1__.TimeoutTimer();\n this._decorations = new _findDecorations_js__WEBPACK_IMPORTED_MODULE_8__.FindDecorations(editor);\n this._toDispose.add(this._decorations);\n this._updateDecorationsScheduler = new _base_common_async_js__WEBPACK_IMPORTED_MODULE_1__.RunOnceScheduler(() => this.research(false), 100);\n this._toDispose.add(this._updateDecorationsScheduler);\n this._toDispose.add(this._editor.onDidChangeCursorPosition((e) => {\n if (e.reason === 3 /* CursorChangeReason.Explicit */\n || e.reason === 5 /* CursorChangeReason.Undo */\n || e.reason === 6 /* CursorChangeReason.Redo */) {\n this._decorations.setStartPosition(this._editor.getPosition());\n }\n }));\n this._ignoreModelContentChanged = false;\n this._toDispose.add(this._editor.onDidChangeModelContent((e) => {\n if (this._ignoreModelContentChanged) {\n return;\n }\n if (e.isFlush) {\n // a model.setValue() was called\n this._decorations.reset();\n }\n this._decorations.setStartPosition(this._editor.getPosition());\n this._updateDecorationsScheduler.schedule();\n }));\n this._toDispose.add(this._state.onFindReplaceStateChange((e) => this._onStateChanged(e)));\n this.research(false, this._state.searchScope);\n }\n dispose() {\n this._isDisposed = true;\n (0,_base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_2__.dispose)(this._startSearchingTimer);\n this._toDispose.dispose();\n }\n _onStateChanged(e) {\n if (this._isDisposed) {\n // The find model is disposed during a find state changed event\n return;\n }\n if (!this._editor.hasModel()) {\n // The find model will be disposed momentarily\n return;\n }\n if (e.searchString || e.isReplaceRevealed || e.isRegex || e.wholeWord || e.matchCase || e.searchScope) {\n const model = this._editor.getModel();\n if (model.isTooLargeForSyncing()) {\n this._startSearchingTimer.cancel();\n this._startSearchingTimer.setIfNotSet(() => {\n if (e.searchScope) {\n this.research(e.moveCursor, this._state.searchScope);\n }\n else {\n this.research(e.moveCursor);\n }\n }, RESEARCH_DELAY);\n }\n else {\n if (e.searchScope) {\n this.research(e.moveCursor, this._state.searchScope);\n }\n else {\n this.research(e.moveCursor);\n }\n }\n }\n }\n static _getSearchRange(model, findScope) {\n // If we have set now or before a find scope, use it for computing the search range\n if (findScope) {\n return findScope;\n }\n return model.getFullModelRange();\n }\n research(moveCursor, newFindScope) {\n let findScopes = null;\n if (typeof newFindScope !== 'undefined') {\n if (newFindScope !== null) {\n if (!Array.isArray(newFindScope)) {\n findScopes = [newFindScope];\n }\n else {\n findScopes = newFindScope;\n }\n }\n }\n else {\n findScopes = this._decorations.getFindScopes();\n }\n if (findScopes !== null) {\n findScopes = findScopes.map(findScope => {\n if (findScope.startLineNumber !== findScope.endLineNumber) {\n let endLineNumber = findScope.endLineNumber;\n if (findScope.endColumn === 1) {\n endLineNumber = endLineNumber - 1;\n }\n return new _common_core_range_js__WEBPACK_IMPORTED_MODULE_5__.Range(findScope.startLineNumber, 1, endLineNumber, this._editor.getModel().getLineMaxColumn(endLineNumber));\n }\n return findScope;\n });\n }\n const findMatches = this._findMatches(findScopes, false, MATCHES_LIMIT);\n this._decorations.set(findMatches, findScopes);\n const editorSelection = this._editor.getSelection();\n let currentMatchesPosition = this._decorations.getCurrentMatchesPosition(editorSelection);\n if (currentMatchesPosition === 0 && findMatches.length > 0) {\n // current selection is not on top of a match\n // try to find its nearest result from the top of the document\n const matchAfterSelection = (0,_base_common_arraysFind_js__WEBPACK_IMPORTED_MODULE_0__.findFirstIdxMonotonousOrArrLen)(findMatches.map(match => match.range), range => _common_core_range_js__WEBPACK_IMPORTED_MODULE_5__.Range.compareRangesUsingStarts(range, editorSelection) >= 0);\n currentMatchesPosition = matchAfterSelection > 0 ? matchAfterSelection - 1 + 1 /** match position is one based */ : currentMatchesPosition;\n }\n this._state.changeMatchInfo(currentMatchesPosition, this._decorations.getCount(), undefined);\n if (moveCursor && this._editor.getOption(41 /* EditorOption.find */).cursorMoveOnType) {\n this._moveToNextMatch(this._decorations.getStartPosition());\n }\n }\n _hasMatches() {\n return (this._state.matchesCount > 0);\n }\n _cannotFind() {\n if (!this._hasMatches()) {\n const findScope = this._decorations.getFindScope();\n if (findScope) {\n // Reveal the selection so user is reminded that 'selection find' is on.\n this._editor.revealRangeInCenterIfOutsideViewport(findScope, 0 /* ScrollType.Smooth */);\n }\n return true;\n }\n return false;\n }\n _setCurrentFindMatch(match) {\n const matchesPosition = this._decorations.setCurrentFindMatch(match);\n this._state.changeMatchInfo(matchesPosition, this._decorations.getCount(), match);\n this._editor.setSelection(match);\n this._editor.revealRangeInCenterIfOutsideViewport(match, 0 /* ScrollType.Smooth */);\n }\n _prevSearchPosition(before) {\n const isUsingLineStops = this._state.isRegex && (this._state.searchString.indexOf('^') >= 0\n || this._state.searchString.indexOf('$') >= 0);\n let { lineNumber, column } = before;\n const model = this._editor.getModel();\n if (isUsingLineStops || column === 1) {\n if (lineNumber === 1) {\n lineNumber = model.getLineCount();\n }\n else {\n lineNumber--;\n }\n column = model.getLineMaxColumn(lineNumber);\n }\n else {\n column--;\n }\n return new _common_core_position_js__WEBPACK_IMPORTED_MODULE_4__.Position(lineNumber, column);\n }\n _moveToPrevMatch(before, isRecursed = false) {\n if (!this._state.canNavigateBack()) {\n // we are beyond the first matched find result\n // instead of doing nothing, we should refocus the first item\n const nextMatchRange = this._decorations.matchAfterPosition(before);\n if (nextMatchRange) {\n this._setCurrentFindMatch(nextMatchRange);\n }\n return;\n }\n if (this._decorations.getCount() < MATCHES_LIMIT) {\n let prevMatchRange = this._decorations.matchBeforePosition(before);\n if (prevMatchRange && prevMatchRange.isEmpty() && prevMatchRange.getStartPosition().equals(before)) {\n before = this._prevSearchPosition(before);\n prevMatchRange = this._decorations.matchBeforePosition(before);\n }\n if (prevMatchRange) {\n this._setCurrentFindMatch(prevMatchRange);\n }\n return;\n }\n if (this._cannotFind()) {\n return;\n }\n const findScope = this._decorations.getFindScope();\n const searchRange = FindModelBoundToEditorModel._getSearchRange(this._editor.getModel(), findScope);\n // ...(----)...|...\n if (searchRange.getEndPosition().isBefore(before)) {\n before = searchRange.getEndPosition();\n }\n // ...|...(----)...\n if (before.isBefore(searchRange.getStartPosition())) {\n before = searchRange.getEndPosition();\n }\n const { lineNumber, column } = before;\n const model = this._editor.getModel();\n let position = new _common_core_position_js__WEBPACK_IMPORTED_MODULE_4__.Position(lineNumber, column);\n let prevMatch = model.findPreviousMatch(this._state.searchString, position, this._state.isRegex, this._state.matchCase, this._state.wholeWord ? this._editor.getOption(130 /* EditorOption.wordSeparators */) : null, false);\n if (prevMatch && prevMatch.range.isEmpty() && prevMatch.range.getStartPosition().equals(position)) {\n // Looks like we're stuck at this position, unacceptable!\n position = this._prevSearchPosition(position);\n prevMatch = model.findPreviousMatch(this._state.searchString, position, this._state.isRegex, this._state.matchCase, this._state.wholeWord ? this._editor.getOption(130 /* EditorOption.wordSeparators */) : null, false);\n }\n if (!prevMatch) {\n // there is precisely one match and selection is on top of it\n return;\n }\n if (!isRecursed && !searchRange.containsRange(prevMatch.range)) {\n return this._moveToPrevMatch(prevMatch.range.getStartPosition(), true);\n }\n this._setCurrentFindMatch(prevMatch.range);\n }\n moveToPrevMatch() {\n this._moveToPrevMatch(this._editor.getSelection().getStartPosition());\n }\n _nextSearchPosition(after) {\n const isUsingLineStops = this._state.isRegex && (this._state.searchString.indexOf('^') >= 0\n || this._state.searchString.indexOf('$') >= 0);\n let { lineNumber, column } = after;\n const model = this._editor.getModel();\n if (isUsingLineStops || column === model.getLineMaxColumn(lineNumber)) {\n if (lineNumber === model.getLineCount()) {\n lineNumber = 1;\n }\n else {\n lineNumber++;\n }\n column = 1;\n }\n else {\n column++;\n }\n return new _common_core_position_js__WEBPACK_IMPORTED_MODULE_4__.Position(lineNumber, column);\n }\n _moveToNextMatch(after) {\n if (!this._state.canNavigateForward()) {\n // we are beyond the last matched find result\n // instead of doing nothing, we should refocus the last item\n const prevMatchRange = this._decorations.matchBeforePosition(after);\n if (prevMatchRange) {\n this._setCurrentFindMatch(prevMatchRange);\n }\n return;\n }\n if (this._decorations.getCount() < MATCHES_LIMIT) {\n let nextMatchRange = this._decorations.matchAfterPosition(after);\n if (nextMatchRange && nextMatchRange.isEmpty() && nextMatchRange.getStartPosition().equals(after)) {\n // Looks like we're stuck at this position, unacceptable!\n after = this._nextSearchPosition(after);\n nextMatchRange = this._decorations.matchAfterPosition(after);\n }\n if (nextMatchRange) {\n this._setCurrentFindMatch(nextMatchRange);\n }\n return;\n }\n const nextMatch = this._getNextMatch(after, false, true);\n if (nextMatch) {\n this._setCurrentFindMatch(nextMatch.range);\n }\n }\n _getNextMatch(after, captureMatches, forceMove, isRecursed = false) {\n if (this._cannotFind()) {\n return null;\n }\n const findScope = this._decorations.getFindScope();\n const searchRange = FindModelBoundToEditorModel._getSearchRange(this._editor.getModel(), findScope);\n // ...(----)...|...\n if (searchRange.getEndPosition().isBefore(after)) {\n after = searchRange.getStartPosition();\n }\n // ...|...(----)...\n if (after.isBefore(searchRange.getStartPosition())) {\n after = searchRange.getStartPosition();\n }\n const { lineNumber, column } = after;\n const model = this._editor.getModel();\n let position = new _common_core_position_js__WEBPACK_IMPORTED_MODULE_4__.Position(lineNumber, column);\n let nextMatch = model.findNextMatch(this._state.searchString, position, this._state.isRegex, this._state.matchCase, this._state.wholeWord ? this._editor.getOption(130 /* EditorOption.wordSeparators */) : null, captureMatches);\n if (forceMove && nextMatch && nextMatch.range.isEmpty() && nextMatch.range.getStartPosition().equals(position)) {\n // Looks like we're stuck at this position, unacceptable!\n position = this._nextSearchPosition(position);\n nextMatch = model.findNextMatch(this._state.searchString, position, this._state.isRegex, this._state.matchCase, this._state.wholeWord ? this._editor.getOption(130 /* EditorOption.wordSeparators */) : null, captureMatches);\n }\n if (!nextMatch) {\n // there is precisely one match and selection is on top of it\n return null;\n }\n if (!isRecursed && !searchRange.containsRange(nextMatch.range)) {\n return this._getNextMatch(nextMatch.range.getEndPosition(), captureMatches, forceMove, true);\n }\n return nextMatch;\n }\n moveToNextMatch() {\n this._moveToNextMatch(this._editor.getSelection().getEndPosition());\n }\n _moveToMatch(index) {\n const decorationRange = this._decorations.getDecorationRangeAt(index);\n if (decorationRange) {\n this._setCurrentFindMatch(decorationRange);\n }\n }\n moveToMatch(index) {\n this._moveToMatch(index);\n }\n _getReplacePattern() {\n if (this._state.isRegex) {\n return (0,_replacePattern_js__WEBPACK_IMPORTED_MODULE_10__.parseReplaceString)(this._state.replaceString);\n }\n return _replacePattern_js__WEBPACK_IMPORTED_MODULE_10__.ReplacePattern.fromStaticValue(this._state.replaceString);\n }\n replace() {\n if (!this._hasMatches()) {\n return;\n }\n const replacePattern = this._getReplacePattern();\n const selection = this._editor.getSelection();\n const nextMatch = this._getNextMatch(selection.getStartPosition(), true, false);\n if (nextMatch) {\n if (selection.equalsRange(nextMatch.range)) {\n // selection sits on a find match => replace it!\n const replaceString = replacePattern.buildReplaceString(nextMatch.matches, this._state.preserveCase);\n const command = new _common_commands_replaceCommand_js__WEBPACK_IMPORTED_MODULE_3__.ReplaceCommand(selection, replaceString);\n this._executeEditorCommand('replace', command);\n this._decorations.setStartPosition(new _common_core_position_js__WEBPACK_IMPORTED_MODULE_4__.Position(selection.startLineNumber, selection.startColumn + replaceString.length));\n this.research(true);\n }\n else {\n this._decorations.setStartPosition(this._editor.getPosition());\n this._setCurrentFindMatch(nextMatch.range);\n }\n }\n }\n _findMatches(findScopes, captureMatches, limitResultCount) {\n const searchRanges = (findScopes || [null]).map((scope) => FindModelBoundToEditorModel._getSearchRange(this._editor.getModel(), scope));\n return this._editor.getModel().findMatches(this._state.searchString, searchRanges, this._state.isRegex, this._state.matchCase, this._state.wholeWord ? this._editor.getOption(130 /* EditorOption.wordSeparators */) : null, captureMatches, limitResultCount);\n }\n replaceAll() {\n if (!this._hasMatches()) {\n return;\n }\n const findScopes = this._decorations.getFindScopes();\n if (findScopes === null && this._state.matchesCount >= MATCHES_LIMIT) {\n // Doing a replace on the entire file that is over ${MATCHES_LIMIT} matches\n this._largeReplaceAll();\n }\n else {\n this._regularReplaceAll(findScopes);\n }\n this.research(false);\n }\n _largeReplaceAll() {\n const searchParams = new _common_model_textModelSearch_js__WEBPACK_IMPORTED_MODULE_7__.SearchParams(this._state.searchString, this._state.isRegex, this._state.matchCase, this._state.wholeWord ? this._editor.getOption(130 /* EditorOption.wordSeparators */) : null);\n const searchData = searchParams.parseSearchRequest();\n if (!searchData) {\n return;\n }\n let searchRegex = searchData.regex;\n if (!searchRegex.multiline) {\n let mod = 'mu';\n if (searchRegex.ignoreCase) {\n mod += 'i';\n }\n if (searchRegex.global) {\n mod += 'g';\n }\n searchRegex = new RegExp(searchRegex.source, mod);\n }\n const model = this._editor.getModel();\n const modelText = model.getValue(1 /* EndOfLinePreference.LF */);\n const fullModelRange = model.getFullModelRange();\n const replacePattern = this._getReplacePattern();\n let resultText;\n const preserveCase = this._state.preserveCase;\n if (replacePattern.hasReplacementPatterns || preserveCase) {\n resultText = modelText.replace(searchRegex, function () {\n return replacePattern.buildReplaceString(arguments, preserveCase);\n });\n }\n else {\n resultText = modelText.replace(searchRegex, replacePattern.buildReplaceString(null, preserveCase));\n }\n const command = new _common_commands_replaceCommand_js__WEBPACK_IMPORTED_MODULE_3__.ReplaceCommandThatPreservesSelection(fullModelRange, resultText, this._editor.getSelection());\n this._executeEditorCommand('replaceAll', command);\n }\n _regularReplaceAll(findScopes) {\n const replacePattern = this._getReplacePattern();\n // Get all the ranges (even more than the highlighted ones)\n const matches = this._findMatches(findScopes, replacePattern.hasReplacementPatterns || this._state.preserveCase, 1073741824 /* Constants.MAX_SAFE_SMALL_INTEGER */);\n const replaceStrings = [];\n for (let i = 0, len = matches.length; i < len; i++) {\n replaceStrings[i] = replacePattern.buildReplaceString(matches[i].matches, this._state.preserveCase);\n }\n const command = new _replaceAllCommand_js__WEBPACK_IMPORTED_MODULE_9__.ReplaceAllCommand(this._editor.getSelection(), matches.map(m => m.range), replaceStrings);\n this._executeEditorCommand('replaceAll', command);\n }\n selectAllMatches() {\n if (!this._hasMatches()) {\n return;\n }\n const findScopes = this._decorations.getFindScopes();\n // Get all the ranges (even more than the highlighted ones)\n const matches = this._findMatches(findScopes, false, 1073741824 /* Constants.MAX_SAFE_SMALL_INTEGER */);\n let selections = matches.map(m => new _common_core_selection_js__WEBPACK_IMPORTED_MODULE_6__.Selection(m.range.startLineNumber, m.range.startColumn, m.range.endLineNumber, m.range.endColumn));\n // If one of the ranges is the editor selection, then maintain it as primary\n const editorSelection = this._editor.getSelection();\n for (let i = 0, len = selections.length; i < len; i++) {\n const sel = selections[i];\n if (sel.equalsRange(editorSelection)) {\n selections = [editorSelection].concat(selections.slice(0, i)).concat(selections.slice(i + 1));\n break;\n }\n }\n this._editor.setSelections(selections);\n }\n _executeEditorCommand(source, command) {\n try {\n this._ignoreModelContentChanged = true;\n this._editor.pushUndoStop();\n this._editor.executeCommand(source, command);\n this._editor.pushUndoStop();\n }\n finally {\n this._ignoreModelContentChanged = false;\n }\n }\n}\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/contrib/find/browser/findModel.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/contrib/find/browser/findOptionsWidget.js":
/*!********************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/contrib/find/browser/findOptionsWidget.js ***!
\********************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ FindOptionsWidget: () => (/* binding */ FindOptionsWidget)\n/* harmony export */ });\n/* harmony import */ var _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../../base/browser/dom.js */ \"./node_modules/monaco-editor/esm/vs/base/browser/dom.js\");\n/* harmony import */ var _findOptionsWidget_css__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./findOptionsWidget.css */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/find/browser/findOptionsWidget.css\");\n/* harmony import */ var _base_browser_ui_findinput_findInputToggles_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../../base/browser/ui/findinput/findInputToggles.js */ \"./node_modules/monaco-editor/esm/vs/base/browser/ui/findinput/findInputToggles.js\");\n/* harmony import */ var _base_browser_ui_widget_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../../../base/browser/ui/widget.js */ \"./node_modules/monaco-editor/esm/vs/base/browser/ui/widget.js\");\n/* harmony import */ var _base_common_async_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../../../base/common/async.js */ \"./node_modules/monaco-editor/esm/vs/base/common/async.js\");\n/* harmony import */ var _findModel_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./findModel.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/find/browser/findModel.js\");\n/* harmony import */ var _platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../../../../platform/theme/common/colorRegistry.js */ \"./node_modules/monaco-editor/esm/vs/platform/theme/common/colorRegistry.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n\n\n\n\n\n\nclass FindOptionsWidget extends _base_browser_ui_widget_js__WEBPACK_IMPORTED_MODULE_3__.Widget {\n constructor(editor, state, keybindingService) {\n super();\n this._hideSoon = this._register(new _base_common_async_js__WEBPACK_IMPORTED_MODULE_4__.RunOnceScheduler(() => this._hide(), 2000));\n this._isVisible = false;\n this._editor = editor;\n this._state = state;\n this._keybindingService = keybindingService;\n this._domNode = document.createElement('div');\n this._domNode.className = 'findOptionsWidget';\n this._domNode.style.display = 'none';\n this._domNode.style.top = '10px';\n this._domNode.style.zIndex = '12';\n this._domNode.setAttribute('role', 'presentation');\n this._domNode.setAttribute('aria-hidden', 'true');\n const toggleStyles = {\n inputActiveOptionBorder: (0,_platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_6__.asCssVariable)(_platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_6__.inputActiveOptionBorder),\n inputActiveOptionForeground: (0,_platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_6__.asCssVariable)(_platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_6__.inputActiveOptionForeground),\n inputActiveOptionBackground: (0,_platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_6__.asCssVariable)(_platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_6__.inputActiveOptionBackground),\n };\n this.caseSensitive = this._register(new _base_browser_ui_findinput_findInputToggles_js__WEBPACK_IMPORTED_MODULE_2__.CaseSensitiveToggle({\n appendTitle: this._keybindingLabelFor(_findModel_js__WEBPACK_IMPORTED_MODULE_5__.FIND_IDS.ToggleCaseSensitiveCommand),\n isChecked: this._state.matchCase,\n ...toggleStyles\n }));\n this._domNode.appendChild(this.caseSensitive.domNode);\n this._register(this.caseSensitive.onChange(() => {\n this._state.change({\n matchCase: this.caseSensitive.checked\n }, false);\n }));\n this.wholeWords = this._register(new _base_browser_ui_findinput_findInputToggles_js__WEBPACK_IMPORTED_MODULE_2__.WholeWordsToggle({\n appendTitle: this._keybindingLabelFor(_findModel_js__WEBPACK_IMPORTED_MODULE_5__.FIND_IDS.ToggleWholeWordCommand),\n isChecked: this._state.wholeWord,\n ...toggleStyles\n }));\n this._domNode.appendChild(this.wholeWords.domNode);\n this._register(this.wholeWords.onChange(() => {\n this._state.change({\n wholeWord: this.wholeWords.checked\n }, false);\n }));\n this.regex = this._register(new _base_browser_ui_findinput_findInputToggles_js__WEBPACK_IMPORTED_MODULE_2__.RegexToggle({\n appendTitle: this._keybindingLabelFor(_findModel_js__WEBPACK_IMPORTED_MODULE_5__.FIND_IDS.ToggleRegexCommand),\n isChecked: this._state.isRegex,\n ...toggleStyles\n }));\n this._domNode.appendChild(this.regex.domNode);\n this._register(this.regex.onChange(() => {\n this._state.change({\n isRegex: this.regex.checked\n }, false);\n }));\n this._editor.addOverlayWidget(this);\n this._register(this._state.onFindReplaceStateChange((e) => {\n let somethingChanged = false;\n if (e.isRegex) {\n this.regex.checked = this._state.isRegex;\n somethingChanged = true;\n }\n if (e.wholeWord) {\n this.wholeWords.checked = this._state.wholeWord;\n somethingChanged = true;\n }\n if (e.matchCase) {\n this.caseSensitive.checked = this._state.matchCase;\n somethingChanged = true;\n }\n if (!this._state.isRevealed && somethingChanged) {\n this._revealTemporarily();\n }\n }));\n this._register(_base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.addDisposableListener(this._domNode, _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.EventType.MOUSE_LEAVE, (e) => this._onMouseLeave()));\n this._register(_base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.addDisposableListener(this._domNode, 'mouseover', (e) => this._onMouseOver()));\n }\n _keybindingLabelFor(actionId) {\n const kb = this._keybindingService.lookupKeybinding(actionId);\n if (!kb) {\n return '';\n }\n return ` (${kb.getLabel()})`;\n }\n dispose() {\n this._editor.removeOverlayWidget(this);\n super.dispose();\n }\n // ----- IOverlayWidget API\n getId() {\n return FindOptionsWidget.ID;\n }\n getDomNode() {\n return this._domNode;\n }\n getPosition() {\n return {\n preference: 0 /* OverlayWidgetPositionPreference.TOP_RIGHT_CORNER */\n };\n }\n highlightFindOptions() {\n this._revealTemporarily();\n }\n _revealTemporarily() {\n this._show();\n this._hideSoon.schedule();\n }\n _onMouseLeave() {\n this._hideSoon.schedule();\n }\n _onMouseOver() {\n this._hideSoon.cancel();\n }\n _show() {\n if (this._isVisible) {\n return;\n }\n this._isVisible = true;\n this._domNode.style.display = 'block';\n }\n _hide() {\n if (!this._isVisible) {\n return;\n }\n this._isVisible = false;\n this._domNode.style.display = 'none';\n }\n}\nFindOptionsWidget.ID = 'editor.contrib.findOptionsWidget';\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/contrib/find/browser/findOptionsWidget.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/contrib/find/browser/findState.js":
/*!************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/contrib/find/browser/findState.js ***!
\************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ FindReplaceState: () => (/* binding */ FindReplaceState)\n/* harmony export */ });\n/* harmony import */ var _base_common_event_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../../base/common/event.js */ \"./node_modules/monaco-editor/esm/vs/base/common/event.js\");\n/* harmony import */ var _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../base/common/lifecycle.js */ \"./node_modules/monaco-editor/esm/vs/base/common/lifecycle.js\");\n/* harmony import */ var _common_core_range_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../common/core/range.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/core/range.js\");\n/* harmony import */ var _findModel_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./findModel.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/find/browser/findModel.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n\n\n\nfunction effectiveOptionValue(override, value) {\n if (override === 1 /* FindOptionOverride.True */) {\n return true;\n }\n if (override === 2 /* FindOptionOverride.False */) {\n return false;\n }\n return value;\n}\nclass FindReplaceState extends _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_1__.Disposable {\n get searchString() { return this._searchString; }\n get replaceString() { return this._replaceString; }\n get isRevealed() { return this._isRevealed; }\n get isReplaceRevealed() { return this._isReplaceRevealed; }\n get isRegex() { return effectiveOptionValue(this._isRegexOverride, this._isRegex); }\n get wholeWord() { return effectiveOptionValue(this._wholeWordOverride, this._wholeWord); }\n get matchCase() { return effectiveOptionValue(this._matchCaseOverride, this._matchCase); }\n get preserveCase() { return effectiveOptionValue(this._preserveCaseOverride, this._preserveCase); }\n get actualIsRegex() { return this._isRegex; }\n get actualWholeWord() { return this._wholeWord; }\n get actualMatchCase() { return this._matchCase; }\n get actualPreserveCase() { return this._preserveCase; }\n get searchScope() { return this._searchScope; }\n get matchesPosition() { return this._matchesPosition; }\n get matchesCount() { return this._matchesCount; }\n get currentMatch() { return this._currentMatch; }\n constructor() {\n super();\n this._onFindReplaceStateChange = this._register(new _base_common_event_js__WEBPACK_IMPORTED_MODULE_0__.Emitter());\n this.onFindReplaceStateChange = this._onFindReplaceStateChange.event;\n this._searchString = '';\n this._replaceString = '';\n this._isRevealed = false;\n this._isReplaceRevealed = false;\n this._isRegex = false;\n this._isRegexOverride = 0 /* FindOptionOverride.NotSet */;\n this._wholeWord = false;\n this._wholeWordOverride = 0 /* FindOptionOverride.NotSet */;\n this._matchCase = false;\n this._matchCaseOverride = 0 /* FindOptionOverride.NotSet */;\n this._preserveCase = false;\n this._preserveCaseOverride = 0 /* FindOptionOverride.NotSet */;\n this._searchScope = null;\n this._matchesPosition = 0;\n this._matchesCount = 0;\n this._currentMatch = null;\n this._loop = true;\n this._isSearching = false;\n this._filters = null;\n }\n changeMatchInfo(matchesPosition, matchesCount, currentMatch) {\n const changeEvent = {\n moveCursor: false,\n updateHistory: false,\n searchString: false,\n replaceString: false,\n isRevealed: false,\n isReplaceRevealed: false,\n isRegex: false,\n wholeWord: false,\n matchCase: false,\n preserveCase: false,\n searchScope: false,\n matchesPosition: false,\n matchesCount: false,\n currentMatch: false,\n loop: false,\n isSearching: false,\n filters: false\n };\n let somethingChanged = false;\n if (matchesCount === 0) {\n matchesPosition = 0;\n }\n if (matchesPosition > matchesCount) {\n matchesPosition = matchesCount;\n }\n if (this._matchesPosition !== matchesPosition) {\n this._matchesPosition = matchesPosition;\n changeEvent.matchesPosition = true;\n somethingChanged = true;\n }\n if (this._matchesCount !== matchesCount) {\n this._matchesCount = matchesCount;\n changeEvent.matchesCount = true;\n somethingChanged = true;\n }\n if (typeof currentMatch !== 'undefined') {\n if (!_common_core_range_js__WEBPACK_IMPORTED_MODULE_2__.Range.equalsRange(this._currentMatch, currentMatch)) {\n this._currentMatch = currentMatch;\n changeEvent.currentMatch = true;\n somethingChanged = true;\n }\n }\n if (somethingChanged) {\n this._onFindReplaceStateChange.fire(changeEvent);\n }\n }\n change(newState, moveCursor, updateHistory = true) {\n var _a;\n const changeEvent = {\n moveCursor: moveCursor,\n updateHistory: updateHistory,\n searchString: false,\n replaceString: false,\n isRevealed: false,\n isReplaceRevealed: false,\n isRegex: false,\n wholeWord: false,\n matchCase: false,\n preserveCase: false,\n searchScope: false,\n matchesPosition: false,\n matchesCount: false,\n currentMatch: false,\n loop: false,\n isSearching: false,\n filters: false\n };\n let somethingChanged = false;\n const oldEffectiveIsRegex = this.isRegex;\n const oldEffectiveWholeWords = this.wholeWord;\n const oldEffectiveMatchCase = this.matchCase;\n const oldEffectivePreserveCase = this.preserveCase;\n if (typeof newState.searchString !== 'undefined') {\n if (this._searchString !== newState.searchString) {\n this._searchString = newState.searchString;\n changeEvent.searchString = true;\n somethingChanged = true;\n }\n }\n if (typeof newState.replaceString !== 'undefined') {\n if (this._replaceString !== newState.replaceString) {\n this._replaceString = newState.replaceString;\n changeEvent.replaceString = true;\n somethingChanged = true;\n }\n }\n if (typeof newState.isRevealed !== 'undefined') {\n if (this._isRevealed !== newState.isRevealed) {\n this._isRevealed = newState.isRevealed;\n changeEvent.isRevealed = true;\n somethingChanged = true;\n }\n }\n if (typeof newState.isReplaceRevealed !== 'undefined') {\n if (this._isReplaceRevealed !== newState.isReplaceRevealed) {\n this._isReplaceRevealed = newState.isReplaceRevealed;\n changeEvent.isReplaceRevealed = true;\n somethingChanged = true;\n }\n }\n if (typeof newState.isRegex !== 'undefined') {\n this._isRegex = newState.isRegex;\n }\n if (typeof newState.wholeWord !== 'undefined') {\n this._wholeWord = newState.wholeWord;\n }\n if (typeof newState.matchCase !== 'undefined') {\n this._matchCase = newState.matchCase;\n }\n if (typeof newState.preserveCase !== 'undefined') {\n this._preserveCase = newState.preserveCase;\n }\n if (typeof newState.searchScope !== 'undefined') {\n if (!((_a = newState.searchScope) === null || _a === void 0 ? void 0 : _a.every((newSearchScope) => {\n var _a;\n return (_a = this._searchScope) === null || _a === void 0 ? void 0 : _a.some(existingSearchScope => {\n return !_common_core_range_js__WEBPACK_IMPORTED_MODULE_2__.Range.equalsRange(existingSearchScope, newSearchScope);\n });\n }))) {\n this._searchScope = newState.searchScope;\n changeEvent.searchScope = true;\n somethingChanged = true;\n }\n }\n if (typeof newState.loop !== 'undefined') {\n if (this._loop !== newState.loop) {\n this._loop = newState.loop;\n changeEvent.loop = true;\n somethingChanged = true;\n }\n }\n if (typeof newState.isSearching !== 'undefined') {\n if (this._isSearching !== newState.isSearching) {\n this._isSearching = newState.isSearching;\n changeEvent.isSearching = true;\n somethingChanged = true;\n }\n }\n if (typeof newState.filters !== 'undefined') {\n if (this._filters) {\n this._filters.update(newState.filters);\n }\n else {\n this._filters = newState.filters;\n }\n changeEvent.filters = true;\n somethingChanged = true;\n }\n // Overrides get set when they explicitly come in and get reset anytime something else changes\n this._isRegexOverride = (typeof newState.isRegexOverride !== 'undefined' ? newState.isRegexOverride : 0 /* FindOptionOverride.NotSet */);\n this._wholeWordOverride = (typeof newState.wholeWordOverride !== 'undefined' ? newState.wholeWordOverride : 0 /* FindOptionOverride.NotSet */);\n this._matchCaseOverride = (typeof newState.matchCaseOverride !== 'undefined' ? newState.matchCaseOverride : 0 /* FindOptionOverride.NotSet */);\n this._preserveCaseOverride = (typeof newState.preserveCaseOverride !== 'undefined' ? newState.preserveCaseOverride : 0 /* FindOptionOverride.NotSet */);\n if (oldEffectiveIsRegex !== this.isRegex) {\n somethingChanged = true;\n changeEvent.isRegex = true;\n }\n if (oldEffectiveWholeWords !== this.wholeWord) {\n somethingChanged = true;\n changeEvent.wholeWord = true;\n }\n if (oldEffectiveMatchCase !== this.matchCase) {\n somethingChanged = true;\n changeEvent.matchCase = true;\n }\n if (oldEffectivePreserveCase !== this.preserveCase) {\n somethingChanged = true;\n changeEvent.preserveCase = true;\n }\n if (somethingChanged) {\n this._onFindReplaceStateChange.fire(changeEvent);\n }\n }\n canNavigateBack() {\n return this.canNavigateInLoop() || (this.matchesPosition !== 1);\n }\n canNavigateForward() {\n return this.canNavigateInLoop() || (this.matchesPosition < this.matchesCount);\n }\n canNavigateInLoop() {\n return this._loop || (this.matchesCount >= _findModel_js__WEBPACK_IMPORTED_MODULE_3__.MATCHES_LIMIT);\n }\n}\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/contrib/find/browser/findState.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/contrib/find/browser/findWidget.js":
/*!*************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/contrib/find/browser/findWidget.js ***!
\*************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ FindWidget: () => (/* binding */ FindWidget),\n/* harmony export */ FindWidgetViewZone: () => (/* binding */ FindWidgetViewZone),\n/* harmony export */ NLS_MATCHES_LOCATION: () => (/* binding */ NLS_MATCHES_LOCATION),\n/* harmony export */ NLS_NO_RESULTS: () => (/* binding */ NLS_NO_RESULTS),\n/* harmony export */ SimpleButton: () => (/* binding */ SimpleButton),\n/* harmony export */ findNextMatchIcon: () => (/* binding */ findNextMatchIcon),\n/* harmony export */ findPreviousMatchIcon: () => (/* binding */ findPreviousMatchIcon),\n/* harmony export */ findReplaceAllIcon: () => (/* binding */ findReplaceAllIcon),\n/* harmony export */ findReplaceIcon: () => (/* binding */ findReplaceIcon)\n/* harmony export */ });\n/* harmony import */ var _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../../base/browser/dom.js */ \"./node_modules/monaco-editor/esm/vs/base/browser/dom.js\");\n/* harmony import */ var _base_browser_ui_aria_aria_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../base/browser/ui/aria/aria.js */ \"./node_modules/monaco-editor/esm/vs/base/browser/ui/aria/aria.js\");\n/* harmony import */ var _base_browser_ui_toggle_toggle_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../../base/browser/ui/toggle/toggle.js */ \"./node_modules/monaco-editor/esm/vs/base/browser/ui/toggle/toggle.js\");\n/* harmony import */ var _base_browser_ui_sash_sash_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../../../base/browser/ui/sash/sash.js */ \"./node_modules/monaco-editor/esm/vs/base/browser/ui/sash/sash.js\");\n/* harmony import */ var _base_browser_ui_widget_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../../../base/browser/ui/widget.js */ \"./node_modules/monaco-editor/esm/vs/base/browser/ui/widget.js\");\n/* harmony import */ var _base_common_async_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../../../../base/common/async.js */ \"./node_modules/monaco-editor/esm/vs/base/common/async.js\");\n/* harmony import */ var _base_common_codicons_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../../../../base/common/codicons.js */ \"./node_modules/monaco-editor/esm/vs/base/common/codicons.js\");\n/* harmony import */ var _base_common_errors_js__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ../../../../base/common/errors.js */ \"./node_modules/monaco-editor/esm/vs/base/common/errors.js\");\n/* harmony import */ var _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ../../../../base/common/lifecycle.js */ \"./node_modules/monaco-editor/esm/vs/base/common/lifecycle.js\");\n/* harmony import */ var _base_common_platform_js__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ../../../../base/common/platform.js */ \"./node_modules/monaco-editor/esm/vs/base/common/platform.js\");\n/* harmony import */ var _base_common_strings_js__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! ../../../../base/common/strings.js */ \"./node_modules/monaco-editor/esm/vs/base/common/strings.js\");\n/* harmony import */ var _findWidget_css__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(/*! ./findWidget.css */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/find/browser/findWidget.css\");\n/* harmony import */ var _common_core_range_js__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(/*! ../../../common/core/range.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/core/range.js\");\n/* harmony import */ var _findModel_js__WEBPACK_IMPORTED_MODULE_13__ = __webpack_require__(/*! ./findModel.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/find/browser/findModel.js\");\n/* harmony import */ var _nls_js__WEBPACK_IMPORTED_MODULE_14__ = __webpack_require__(/*! ../../../../nls.js */ \"./node_modules/monaco-editor/esm/vs/nls.js\");\n/* harmony import */ var _platform_history_browser_contextScopedHistoryWidget_js__WEBPACK_IMPORTED_MODULE_15__ = __webpack_require__(/*! ../../../../platform/history/browser/contextScopedHistoryWidget.js */ \"./node_modules/monaco-editor/esm/vs/platform/history/browser/contextScopedHistoryWidget.js\");\n/* harmony import */ var _platform_history_browser_historyWidgetKeybindingHint_js__WEBPACK_IMPORTED_MODULE_16__ = __webpack_require__(/*! ../../../../platform/history/browser/historyWidgetKeybindingHint.js */ \"./node_modules/monaco-editor/esm/vs/platform/history/browser/historyWidgetKeybindingHint.js\");\n/* harmony import */ var _platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_17__ = __webpack_require__(/*! ../../../../platform/theme/common/colorRegistry.js */ \"./node_modules/monaco-editor/esm/vs/platform/theme/common/colorRegistry.js\");\n/* harmony import */ var _platform_theme_common_iconRegistry_js__WEBPACK_IMPORTED_MODULE_18__ = __webpack_require__(/*! ../../../../platform/theme/common/iconRegistry.js */ \"./node_modules/monaco-editor/esm/vs/platform/theme/common/iconRegistry.js\");\n/* harmony import */ var _platform_theme_common_themeService_js__WEBPACK_IMPORTED_MODULE_19__ = __webpack_require__(/*! ../../../../platform/theme/common/themeService.js */ \"./node_modules/monaco-editor/esm/vs/platform/theme/common/themeService.js\");\n/* harmony import */ var _base_common_themables_js__WEBPACK_IMPORTED_MODULE_20__ = __webpack_require__(/*! ../../../../base/common/themables.js */ \"./node_modules/monaco-editor/esm/vs/base/common/themables.js\");\n/* harmony import */ var _platform_theme_common_theme_js__WEBPACK_IMPORTED_MODULE_21__ = __webpack_require__(/*! ../../../../platform/theme/common/theme.js */ \"./node_modules/monaco-editor/esm/vs/platform/theme/common/theme.js\");\n/* harmony import */ var _base_common_types_js__WEBPACK_IMPORTED_MODULE_22__ = __webpack_require__(/*! ../../../../base/common/types.js */ \"./node_modules/monaco-editor/esm/vs/base/common/types.js\");\n/* harmony import */ var _platform_theme_browser_defaultStyles_js__WEBPACK_IMPORTED_MODULE_23__ = __webpack_require__(/*! ../../../../platform/theme/browser/defaultStyles.js */ \"./node_modules/monaco-editor/esm/vs/platform/theme/browser/defaultStyles.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nconst findSelectionIcon = (0,_platform_theme_common_iconRegistry_js__WEBPACK_IMPORTED_MODULE_18__.registerIcon)('find-selection', _base_common_codicons_js__WEBPACK_IMPORTED_MODULE_6__.Codicon.selection, _nls_js__WEBPACK_IMPORTED_MODULE_14__.localize('findSelectionIcon', 'Icon for \\'Find in Selection\\' in the editor find widget.'));\nconst findCollapsedIcon = (0,_platform_theme_common_iconRegistry_js__WEBPACK_IMPORTED_MODULE_18__.registerIcon)('find-collapsed', _base_common_codicons_js__WEBPACK_IMPORTED_MODULE_6__.Codicon.chevronRight, _nls_js__WEBPACK_IMPORTED_MODULE_14__.localize('findCollapsedIcon', 'Icon to indicate that the editor find widget is collapsed.'));\nconst findExpandedIcon = (0,_platform_theme_common_iconRegistry_js__WEBPACK_IMPORTED_MODULE_18__.registerIcon)('find-expanded', _base_common_codicons_js__WEBPACK_IMPORTED_MODULE_6__.Codicon.chevronDown, _nls_js__WEBPACK_IMPORTED_MODULE_14__.localize('findExpandedIcon', 'Icon to indicate that the editor find widget is expanded.'));\nconst findReplaceIcon = (0,_platform_theme_common_iconRegistry_js__WEBPACK_IMPORTED_MODULE_18__.registerIcon)('find-replace', _base_common_codicons_js__WEBPACK_IMPORTED_MODULE_6__.Codicon.replace, _nls_js__WEBPACK_IMPORTED_MODULE_14__.localize('findReplaceIcon', 'Icon for \\'Replace\\' in the editor find widget.'));\nconst findReplaceAllIcon = (0,_platform_theme_common_iconRegistry_js__WEBPACK_IMPORTED_MODULE_18__.registerIcon)('find-replace-all', _base_common_codicons_js__WEBPACK_IMPORTED_MODULE_6__.Codicon.replaceAll, _nls_js__WEBPACK_IMPORTED_MODULE_14__.localize('findReplaceAllIcon', 'Icon for \\'Replace All\\' in the editor find widget.'));\nconst findPreviousMatchIcon = (0,_platform_theme_common_iconRegistry_js__WEBPACK_IMPORTED_MODULE_18__.registerIcon)('find-previous-match', _base_common_codicons_js__WEBPACK_IMPORTED_MODULE_6__.Codicon.arrowUp, _nls_js__WEBPACK_IMPORTED_MODULE_14__.localize('findPreviousMatchIcon', 'Icon for \\'Find Previous\\' in the editor find widget.'));\nconst findNextMatchIcon = (0,_platform_theme_common_iconRegistry_js__WEBPACK_IMPORTED_MODULE_18__.registerIcon)('find-next-match', _base_common_codicons_js__WEBPACK_IMPORTED_MODULE_6__.Codicon.arrowDown, _nls_js__WEBPACK_IMPORTED_MODULE_14__.localize('findNextMatchIcon', 'Icon for \\'Find Next\\' in the editor find widget.'));\nconst NLS_FIND_DIALOG_LABEL = _nls_js__WEBPACK_IMPORTED_MODULE_14__.localize('label.findDialog', \"Find / Replace\");\nconst NLS_FIND_INPUT_LABEL = _nls_js__WEBPACK_IMPORTED_MODULE_14__.localize('label.find', \"Find\");\nconst NLS_FIND_INPUT_PLACEHOLDER = _nls_js__WEBPACK_IMPORTED_MODULE_14__.localize('placeholder.find', \"Find\");\nconst NLS_PREVIOUS_MATCH_BTN_LABEL = _nls_js__WEBPACK_IMPORTED_MODULE_14__.localize('label.previousMatchButton', \"Previous Match\");\nconst NLS_NEXT_MATCH_BTN_LABEL = _nls_js__WEBPACK_IMPORTED_MODULE_14__.localize('label.nextMatchButton', \"Next Match\");\nconst NLS_TOGGLE_SELECTION_FIND_TITLE = _nls_js__WEBPACK_IMPORTED_MODULE_14__.localize('label.toggleSelectionFind', \"Find in Selection\");\nconst NLS_CLOSE_BTN_LABEL = _nls_js__WEBPACK_IMPORTED_MODULE_14__.localize('label.closeButton', \"Close\");\nconst NLS_REPLACE_INPUT_LABEL = _nls_js__WEBPACK_IMPORTED_MODULE_14__.localize('label.replace', \"Replace\");\nconst NLS_REPLACE_INPUT_PLACEHOLDER = _nls_js__WEBPACK_IMPORTED_MODULE_14__.localize('placeholder.replace', \"Replace\");\nconst NLS_REPLACE_BTN_LABEL = _nls_js__WEBPACK_IMPORTED_MODULE_14__.localize('label.replaceButton', \"Replace\");\nconst NLS_REPLACE_ALL_BTN_LABEL = _nls_js__WEBPACK_IMPORTED_MODULE_14__.localize('label.replaceAllButton', \"Replace All\");\nconst NLS_TOGGLE_REPLACE_MODE_BTN_LABEL = _nls_js__WEBPACK_IMPORTED_MODULE_14__.localize('label.toggleReplaceButton', \"Toggle Replace\");\nconst NLS_MATCHES_COUNT_LIMIT_TITLE = _nls_js__WEBPACK_IMPORTED_MODULE_14__.localize('title.matchesCountLimit', \"Only the first {0} results are highlighted, but all find operations work on the entire text.\", _findModel_js__WEBPACK_IMPORTED_MODULE_13__.MATCHES_LIMIT);\nconst NLS_MATCHES_LOCATION = _nls_js__WEBPACK_IMPORTED_MODULE_14__.localize('label.matchesLocation', \"{0} of {1}\");\nconst NLS_NO_RESULTS = _nls_js__WEBPACK_IMPORTED_MODULE_14__.localize('label.noResults', \"No results\");\nconst FIND_WIDGET_INITIAL_WIDTH = 419;\nconst PART_WIDTH = 275;\nconst FIND_INPUT_AREA_WIDTH = PART_WIDTH - 54;\nlet MAX_MATCHES_COUNT_WIDTH = 69;\n// let FIND_ALL_CONTROLS_WIDTH = 17/** Find Input margin-left */ + (MAX_MATCHES_COUNT_WIDTH + 3 + 1) /** Match Results */ + 23 /** Button */ * 4 + 2/** sash */;\nconst FIND_INPUT_AREA_HEIGHT = 33; // The height of Find Widget when Replace Input is not visible.\nconst ctrlEnterReplaceAllWarningPromptedKey = 'ctrlEnterReplaceAll.windows.donotask';\nconst ctrlKeyMod = (_base_common_platform_js__WEBPACK_IMPORTED_MODULE_9__.isMacintosh ? 256 /* KeyMod.WinCtrl */ : 2048 /* KeyMod.CtrlCmd */);\nclass FindWidgetViewZone {\n constructor(afterLineNumber) {\n this.afterLineNumber = afterLineNumber;\n this.heightInPx = FIND_INPUT_AREA_HEIGHT;\n this.suppressMouseDown = false;\n this.domNode = document.createElement('div');\n this.domNode.className = 'dock-find-viewzone';\n }\n}\nfunction stopPropagationForMultiLineUpwards(event, value, textarea) {\n const isMultiline = !!value.match(/\\n/);\n if (textarea && isMultiline && textarea.selectionStart > 0) {\n event.stopPropagation();\n return;\n }\n}\nfunction stopPropagationForMultiLineDownwards(event, value, textarea) {\n const isMultiline = !!value.match(/\\n/);\n if (textarea && isMultiline && textarea.selectionEnd < textarea.value.length) {\n event.stopPropagation();\n return;\n }\n}\nclass FindWidget extends _base_browser_ui_widget_js__WEBPACK_IMPORTED_MODULE_4__.Widget {\n constructor(codeEditor, controller, state, contextViewProvider, keybindingService, contextKeyService, themeService, storageService, notificationService) {\n super();\n this._cachedHeight = null;\n this._revealTimeouts = [];\n this._codeEditor = codeEditor;\n this._controller = controller;\n this._state = state;\n this._contextViewProvider = contextViewProvider;\n this._keybindingService = keybindingService;\n this._contextKeyService = contextKeyService;\n this._storageService = storageService;\n this._notificationService = notificationService;\n this._ctrlEnterReplaceAllWarningPrompted = !!storageService.getBoolean(ctrlEnterReplaceAllWarningPromptedKey, 0 /* StorageScope.PROFILE */);\n this._isVisible = false;\n this._isReplaceVisible = false;\n this._ignoreChangeEvent = false;\n this._updateHistoryDelayer = new _base_common_async_js__WEBPACK_IMPORTED_MODULE_5__.Delayer(500);\n this._register((0,_base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_8__.toDisposable)(() => this._updateHistoryDelayer.cancel()));\n this._register(this._state.onFindReplaceStateChange((e) => this._onStateChanged(e)));\n this._buildDomNode();\n this._updateButtons();\n this._tryUpdateWidgetWidth();\n this._findInput.inputBox.layout();\n this._register(this._codeEditor.onDidChangeConfiguration((e) => {\n if (e.hasChanged(91 /* EditorOption.readOnly */)) {\n if (this._codeEditor.getOption(91 /* EditorOption.readOnly */)) {\n // Hide replace part if editor becomes read only\n this._state.change({ isReplaceRevealed: false }, false);\n }\n this._updateButtons();\n }\n if (e.hasChanged(144 /* EditorOption.layoutInfo */)) {\n this._tryUpdateWidgetWidth();\n }\n if (e.hasChanged(2 /* EditorOption.accessibilitySupport */)) {\n this.updateAccessibilitySupport();\n }\n if (e.hasChanged(41 /* EditorOption.find */)) {\n const supportLoop = this._codeEditor.getOption(41 /* EditorOption.find */).loop;\n this._state.change({ loop: supportLoop }, false);\n const addExtraSpaceOnTop = this._codeEditor.getOption(41 /* EditorOption.find */).addExtraSpaceOnTop;\n if (addExtraSpaceOnTop && !this._viewZone) {\n this._viewZone = new FindWidgetViewZone(0);\n this._showViewZone();\n }\n if (!addExtraSpaceOnTop && this._viewZone) {\n this._removeViewZone();\n }\n }\n }));\n this.updateAccessibilitySupport();\n this._register(this._codeEditor.onDidChangeCursorSelection(() => {\n if (this._isVisible) {\n this._updateToggleSelectionFindButton();\n }\n }));\n this._register(this._codeEditor.onDidFocusEditorWidget(async () => {\n if (this._isVisible) {\n const globalBufferTerm = await this._controller.getGlobalBufferTerm();\n if (globalBufferTerm && globalBufferTerm !== this._state.searchString) {\n this._state.change({ searchString: globalBufferTerm }, false);\n this._findInput.select();\n }\n }\n }));\n this._findInputFocused = _findModel_js__WEBPACK_IMPORTED_MODULE_13__.CONTEXT_FIND_INPUT_FOCUSED.bindTo(contextKeyService);\n this._findFocusTracker = this._register(_base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.trackFocus(this._findInput.inputBox.inputElement));\n this._register(this._findFocusTracker.onDidFocus(() => {\n this._findInputFocused.set(true);\n this._updateSearchScope();\n }));\n this._register(this._findFocusTracker.onDidBlur(() => {\n this._findInputFocused.set(false);\n }));\n this._replaceInputFocused = _findModel_js__WEBPACK_IMPORTED_MODULE_13__.CONTEXT_REPLACE_INPUT_FOCUSED.bindTo(contextKeyService);\n this._replaceFocusTracker = this._register(_base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.trackFocus(this._replaceInput.inputBox.inputElement));\n this._register(this._replaceFocusTracker.onDidFocus(() => {\n this._replaceInputFocused.set(true);\n this._updateSearchScope();\n }));\n this._register(this._replaceFocusTracker.onDidBlur(() => {\n this._replaceInputFocused.set(false);\n }));\n this._codeEditor.addOverlayWidget(this);\n if (this._codeEditor.getOption(41 /* EditorOption.find */).addExtraSpaceOnTop) {\n this._viewZone = new FindWidgetViewZone(0); // Put it before the first line then users can scroll beyond the first line.\n }\n this._register(this._codeEditor.onDidChangeModel(() => {\n if (!this._isVisible) {\n return;\n }\n this._viewZoneId = undefined;\n }));\n this._register(this._codeEditor.onDidScrollChange((e) => {\n if (e.scrollTopChanged) {\n this._layoutViewZone();\n return;\n }\n // for other scroll changes, layout the viewzone in next tick to avoid ruining current rendering.\n setTimeout(() => {\n this._layoutViewZone();\n }, 0);\n }));\n }\n // ----- IOverlayWidget API\n getId() {\n return FindWidget.ID;\n }\n getDomNode() {\n return this._domNode;\n }\n getPosition() {\n if (this._isVisible) {\n return {\n preference: 0 /* OverlayWidgetPositionPreference.TOP_RIGHT_CORNER */\n };\n }\n return null;\n }\n // ----- React to state changes\n _onStateChanged(e) {\n if (e.searchString) {\n try {\n this._ignoreChangeEvent = true;\n this._findInput.setValue(this._state.searchString);\n }\n finally {\n this._ignoreChangeEvent = false;\n }\n this._updateButtons();\n }\n if (e.replaceString) {\n this._replaceInput.inputBox.value = this._state.replaceString;\n }\n if (e.isRevealed) {\n if (this._state.isRevealed) {\n this._reveal();\n }\n else {\n this._hide(true);\n }\n }\n if (e.isReplaceRevealed) {\n if (this._state.isReplaceRevealed) {\n if (!this._codeEditor.getOption(91 /* EditorOption.readOnly */) && !this._isReplaceVisible) {\n this._isReplaceVisible = true;\n this._replaceInput.width = _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.getTotalWidth(this._findInput.domNode);\n this._updateButtons();\n this._replaceInput.inputBox.layout();\n }\n }\n else {\n if (this._isReplaceVisible) {\n this._isReplaceVisible = false;\n this._updateButtons();\n }\n }\n }\n if ((e.isRevealed || e.isReplaceRevealed) && (this._state.isRevealed || this._state.isReplaceRevealed)) {\n if (this._tryUpdateHeight()) {\n this._showViewZone();\n }\n }\n if (e.isRegex) {\n this._findInput.setRegex(this._state.isRegex);\n }\n if (e.wholeWord) {\n this._findInput.setWholeWords(this._state.wholeWord);\n }\n if (e.matchCase) {\n this._findInput.setCaseSensitive(this._state.matchCase);\n }\n if (e.preserveCase) {\n this._replaceInput.setPreserveCase(this._state.preserveCase);\n }\n if (e.searchScope) {\n if (this._state.searchScope) {\n this._toggleSelectionFind.checked = true;\n }\n else {\n this._toggleSelectionFind.checked = false;\n }\n this._updateToggleSelectionFindButton();\n }\n if (e.searchString || e.matchesCount || e.matchesPosition) {\n const showRedOutline = (this._state.searchString.length > 0 && this._state.matchesCount === 0);\n this._domNode.classList.toggle('no-results', showRedOutline);\n this._updateMatchesCount();\n this._updateButtons();\n }\n if (e.searchString || e.currentMatch) {\n this._layoutViewZone();\n }\n if (e.updateHistory) {\n this._delayedUpdateHistory();\n }\n if (e.loop) {\n this._updateButtons();\n }\n }\n _delayedUpdateHistory() {\n this._updateHistoryDelayer.trigger(this._updateHistory.bind(this)).then(undefined, _base_common_errors_js__WEBPACK_IMPORTED_MODULE_7__.onUnexpectedError);\n }\n _updateHistory() {\n if (this._state.searchString) {\n this._findInput.inputBox.addToHistory();\n }\n if (this._state.replaceString) {\n this._replaceInput.inputBox.addToHistory();\n }\n }\n _updateMatchesCount() {\n this._matchesCount.style.minWidth = MAX_MATCHES_COUNT_WIDTH + 'px';\n if (this._state.matchesCount >= _findModel_js__WEBPACK_IMPORTED_MODULE_13__.MATCHES_LIMIT) {\n this._matchesCount.title = NLS_MATCHES_COUNT_LIMIT_TITLE;\n }\n else {\n this._matchesCount.title = '';\n }\n // remove previous content\n if (this._matchesCount.firstChild) {\n this._matchesCount.removeChild(this._matchesCount.firstChild);\n }\n let label;\n if (this._state.matchesCount > 0) {\n let matchesCount = String(this._state.matchesCount);\n if (this._state.matchesCount >= _findModel_js__WEBPACK_IMPORTED_MODULE_13__.MATCHES_LIMIT) {\n matchesCount += '+';\n }\n let matchesPosition = String(this._state.matchesPosition);\n if (matchesPosition === '0') {\n matchesPosition = '?';\n }\n label = _base_common_strings_js__WEBPACK_IMPORTED_MODULE_10__.format(NLS_MATCHES_LOCATION, matchesPosition, matchesCount);\n }\n else {\n label = NLS_NO_RESULTS;\n }\n this._matchesCount.appendChild(document.createTextNode(label));\n (0,_base_browser_ui_aria_aria_js__WEBPACK_IMPORTED_MODULE_1__.alert)(this._getAriaLabel(label, this._state.currentMatch, this._state.searchString));\n MAX_MATCHES_COUNT_WIDTH = Math.max(MAX_MATCHES_COUNT_WIDTH, this._matchesCount.clientWidth);\n }\n // ----- actions\n _getAriaLabel(label, currentMatch, searchString) {\n if (label === NLS_NO_RESULTS) {\n return searchString === ''\n ? _nls_js__WEBPACK_IMPORTED_MODULE_14__.localize('ariaSearchNoResultEmpty', \"{0} found\", label)\n : _nls_js__WEBPACK_IMPORTED_MODULE_14__.localize('ariaSearchNoResult', \"{0} found for '{1}'\", label, searchString);\n }\n if (currentMatch) {\n const ariaLabel = _nls_js__WEBPACK_IMPORTED_MODULE_14__.localize('ariaSearchNoResultWithLineNum', \"{0} found for '{1}', at {2}\", label, searchString, currentMatch.startLineNumber + ':' + currentMatch.startColumn);\n const model = this._codeEditor.getModel();\n if (model && (currentMatch.startLineNumber <= model.getLineCount()) && (currentMatch.startLineNumber >= 1)) {\n const lineContent = model.getLineContent(currentMatch.startLineNumber);\n return `${lineContent}, ${ariaLabel}`;\n }\n return ariaLabel;\n }\n return _nls_js__WEBPACK_IMPORTED_MODULE_14__.localize('ariaSearchNoResultWithLineNumNoCurrentMatch', \"{0} found for '{1}'\", label, searchString);\n }\n /**\n * If 'selection find' is ON we should not disable the button (its function is to cancel 'selection find').\n * If 'selection find' is OFF we enable the button only if there is a selection.\n */\n _updateToggleSelectionFindButton() {\n const selection = this._codeEditor.getSelection();\n const isSelection = selection ? (selection.startLineNumber !== selection.endLineNumber || selection.startColumn !== selection.endColumn) : false;\n const isChecked = this._toggleSelectionFind.checked;\n if (this._isVisible && (isChecked || isSelection)) {\n this._toggleSelectionFind.enable();\n }\n else {\n this._toggleSelectionFind.disable();\n }\n }\n _updateButtons() {\n this._findInput.setEnabled(this._isVisible);\n this._replaceInput.setEnabled(this._isVisible && this._isReplaceVisible);\n this._updateToggleSelectionFindButton();\n this._closeBtn.setEnabled(this._isVisible);\n const findInputIsNonEmpty = (this._state.searchString.length > 0);\n const matchesCount = this._state.matchesCount ? true : false;\n this._prevBtn.setEnabled(this._isVisible && findInputIsNonEmpty && matchesCount && this._state.canNavigateBack());\n this._nextBtn.setEnabled(this._isVisible && findInputIsNonEmpty && matchesCount && this._state.canNavigateForward());\n this._replaceBtn.setEnabled(this._isVisible && this._isReplaceVisible && findInputIsNonEmpty);\n this._replaceAllBtn.setEnabled(this._isVisible && this._isReplaceVisible && findInputIsNonEmpty);\n this._domNode.classList.toggle('replaceToggled', this._isReplaceVisible);\n this._toggleReplaceBtn.setExpanded(this._isReplaceVisible);\n const canReplace = !this._codeEditor.getOption(91 /* EditorOption.readOnly */);\n this._toggleReplaceBtn.setEnabled(this._isVisible && canReplace);\n }\n _reveal() {\n this._revealTimeouts.forEach(e => {\n clearTimeout(e);\n });\n this._revealTimeouts = [];\n if (!this._isVisible) {\n this._isVisible = true;\n const selection = this._codeEditor.getSelection();\n switch (this._codeEditor.getOption(41 /* EditorOption.find */).autoFindInSelection) {\n case 'always':\n this._toggleSelectionFind.checked = true;\n break;\n case 'never':\n this._toggleSelectionFind.checked = false;\n break;\n case 'multiline': {\n const isSelectionMultipleLine = !!selection && selection.startLineNumber !== selection.endLineNumber;\n this._toggleSelectionFind.checked = isSelectionMultipleLine;\n break;\n }\n default:\n break;\n }\n this._tryUpdateWidgetWidth();\n this._updateButtons();\n this._revealTimeouts.push(setTimeout(() => {\n this._domNode.classList.add('visible');\n this._domNode.setAttribute('aria-hidden', 'false');\n }, 0));\n // validate query again as it's being dismissed when we hide the find widget.\n this._revealTimeouts.push(setTimeout(() => {\n this._findInput.validate();\n }, 200));\n this._codeEditor.layoutOverlayWidget(this);\n let adjustEditorScrollTop = true;\n if (this._codeEditor.getOption(41 /* EditorOption.find */).seedSearchStringFromSelection && selection) {\n const domNode = this._codeEditor.getDomNode();\n if (domNode) {\n const editorCoords = _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.getDomNodePagePosition(domNode);\n const startCoords = this._codeEditor.getScrolledVisiblePosition(selection.getStartPosition());\n const startLeft = editorCoords.left + (startCoords ? startCoords.left : 0);\n const startTop = startCoords ? startCoords.top : 0;\n if (this._viewZone && startTop < this._viewZone.heightInPx) {\n if (selection.endLineNumber > selection.startLineNumber) {\n adjustEditorScrollTop = false;\n }\n const leftOfFindWidget = _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.getTopLeftOffset(this._domNode).left;\n if (startLeft > leftOfFindWidget) {\n adjustEditorScrollTop = false;\n }\n const endCoords = this._codeEditor.getScrolledVisiblePosition(selection.getEndPosition());\n const endLeft = editorCoords.left + (endCoords ? endCoords.left : 0);\n if (endLeft > leftOfFindWidget) {\n adjustEditorScrollTop = false;\n }\n }\n }\n }\n this._showViewZone(adjustEditorScrollTop);\n }\n }\n _hide(focusTheEditor) {\n this._revealTimeouts.forEach(e => {\n clearTimeout(e);\n });\n this._revealTimeouts = [];\n if (this._isVisible) {\n this._isVisible = false;\n this._updateButtons();\n this._domNode.classList.remove('visible');\n this._domNode.setAttribute('aria-hidden', 'true');\n this._findInput.clearMessage();\n if (focusTheEditor) {\n this._codeEditor.focus();\n }\n this._codeEditor.layoutOverlayWidget(this);\n this._removeViewZone();\n }\n }\n _layoutViewZone(targetScrollTop) {\n const addExtraSpaceOnTop = this._codeEditor.getOption(41 /* EditorOption.find */).addExtraSpaceOnTop;\n if (!addExtraSpaceOnTop) {\n this._removeViewZone();\n return;\n }\n if (!this._isVisible) {\n return;\n }\n const viewZone = this._viewZone;\n if (this._viewZoneId !== undefined || !viewZone) {\n return;\n }\n this._codeEditor.changeViewZones((accessor) => {\n viewZone.heightInPx = this._getHeight();\n this._viewZoneId = accessor.addZone(viewZone);\n // scroll top adjust to make sure the editor doesn't scroll when adding viewzone at the beginning.\n this._codeEditor.setScrollTop(targetScrollTop || this._codeEditor.getScrollTop() + viewZone.heightInPx);\n });\n }\n _showViewZone(adjustScroll = true) {\n if (!this._isVisible) {\n return;\n }\n const addExtraSpaceOnTop = this._codeEditor.getOption(41 /* EditorOption.find */).addExtraSpaceOnTop;\n if (!addExtraSpaceOnTop) {\n return;\n }\n if (this._viewZone === undefined) {\n this._viewZone = new FindWidgetViewZone(0);\n }\n const viewZone = this._viewZone;\n this._codeEditor.changeViewZones((accessor) => {\n if (this._viewZoneId !== undefined) {\n // the view zone already exists, we need to update the height\n const newHeight = this._getHeight();\n if (newHeight === viewZone.heightInPx) {\n return;\n }\n const scrollAdjustment = newHeight - viewZone.heightInPx;\n viewZone.heightInPx = newHeight;\n accessor.layoutZone(this._viewZoneId);\n if (adjustScroll) {\n this._codeEditor.setScrollTop(this._codeEditor.getScrollTop() + scrollAdjustment);\n }\n return;\n }\n else {\n let scrollAdjustment = this._getHeight();\n // if the editor has top padding, factor that into the zone height\n scrollAdjustment -= this._codeEditor.getOption(84 /* EditorOption.padding */).top;\n if (scrollAdjustment <= 0) {\n return;\n }\n viewZone.heightInPx = scrollAdjustment;\n this._viewZoneId = accessor.addZone(viewZone);\n if (adjustScroll) {\n this._codeEditor.setScrollTop(this._codeEditor.getScrollTop() + scrollAdjustment);\n }\n }\n });\n }\n _removeViewZone() {\n this._codeEditor.changeViewZones((accessor) => {\n if (this._viewZoneId !== undefined) {\n accessor.removeZone(this._viewZoneId);\n this._viewZoneId = undefined;\n if (this._viewZone) {\n this._codeEditor.setScrollTop(this._codeEditor.getScrollTop() - this._viewZone.heightInPx);\n this._viewZone = undefined;\n }\n }\n });\n }\n _tryUpdateWidgetWidth() {\n if (!this._isVisible) {\n return;\n }\n if (!this._domNode.isConnected) {\n // the widget is not in the DOM\n return;\n }\n const layoutInfo = this._codeEditor.getLayoutInfo();\n const editorContentWidth = layoutInfo.contentWidth;\n if (editorContentWidth <= 0) {\n // for example, diff view original editor\n this._domNode.classList.add('hiddenEditor');\n return;\n }\n else if (this._domNode.classList.contains('hiddenEditor')) {\n this._domNode.classList.remove('hiddenEditor');\n }\n const editorWidth = layoutInfo.width;\n const minimapWidth = layoutInfo.minimap.minimapWidth;\n let collapsedFindWidget = false;\n let reducedFindWidget = false;\n let narrowFindWidget = false;\n if (this._resized) {\n const widgetWidth = _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.getTotalWidth(this._domNode);\n if (widgetWidth > FIND_WIDGET_INITIAL_WIDTH) {\n // as the widget is resized by users, we may need to change the max width of the widget as the editor width changes.\n this._domNode.style.maxWidth = `${editorWidth - 28 - minimapWidth - 15}px`;\n this._replaceInput.width = _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.getTotalWidth(this._findInput.domNode);\n return;\n }\n }\n if (FIND_WIDGET_INITIAL_WIDTH + 28 + minimapWidth >= editorWidth) {\n reducedFindWidget = true;\n }\n if (FIND_WIDGET_INITIAL_WIDTH + 28 + minimapWidth - MAX_MATCHES_COUNT_WIDTH >= editorWidth) {\n narrowFindWidget = true;\n }\n if (FIND_WIDGET_INITIAL_WIDTH + 28 + minimapWidth - MAX_MATCHES_COUNT_WIDTH >= editorWidth + 50) {\n collapsedFindWidget = true;\n }\n this._domNode.classList.toggle('collapsed-find-widget', collapsedFindWidget);\n this._domNode.classList.toggle('narrow-find-widget', narrowFindWidget);\n this._domNode.classList.toggle('reduced-find-widget', reducedFindWidget);\n if (!narrowFindWidget && !collapsedFindWidget) {\n // the minimal left offset of findwidget is 15px.\n this._domNode.style.maxWidth = `${editorWidth - 28 - minimapWidth - 15}px`;\n }\n this._findInput.layout({ collapsedFindWidget, narrowFindWidget, reducedFindWidget });\n if (this._resized) {\n const findInputWidth = this._findInput.inputBox.element.clientWidth;\n if (findInputWidth > 0) {\n this._replaceInput.width = findInputWidth;\n }\n }\n else if (this._isReplaceVisible) {\n this._replaceInput.width = _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.getTotalWidth(this._findInput.domNode);\n }\n }\n _getHeight() {\n let totalheight = 0;\n // find input margin top\n totalheight += 4;\n // find input height\n totalheight += this._findInput.inputBox.height + 2 /** input box border */;\n if (this._isReplaceVisible) {\n // replace input margin\n totalheight += 4;\n totalheight += this._replaceInput.inputBox.height + 2 /** input box border */;\n }\n // margin bottom\n totalheight += 4;\n return totalheight;\n }\n _tryUpdateHeight() {\n const totalHeight = this._getHeight();\n if (this._cachedHeight !== null && this._cachedHeight === totalHeight) {\n return false;\n }\n this._cachedHeight = totalHeight;\n this._domNode.style.height = `${totalHeight}px`;\n return true;\n }\n // ----- Public\n focusFindInput() {\n this._findInput.select();\n // Edge browser requires focus() in addition to select()\n this._findInput.focus();\n }\n focusReplaceInput() {\n this._replaceInput.select();\n // Edge browser requires focus() in addition to select()\n this._replaceInput.focus();\n }\n highlightFindOptions() {\n this._findInput.highlightFindOptions();\n }\n _updateSearchScope() {\n if (!this._codeEditor.hasModel()) {\n return;\n }\n if (this._toggleSelectionFind.checked) {\n const selections = this._codeEditor.getSelections();\n selections.map(selection => {\n if (selection.endColumn === 1 && selection.endLineNumber > selection.startLineNumber) {\n selection = selection.setEndPosition(selection.endLineNumber - 1, this._codeEditor.getModel().getLineMaxColumn(selection.endLineNumber - 1));\n }\n const currentMatch = this._state.currentMatch;\n if (selection.startLineNumber !== selection.endLineNumber) {\n if (!_common_core_range_js__WEBPACK_IMPORTED_MODULE_12__.Range.equalsRange(selection, currentMatch)) {\n return selection;\n }\n }\n return null;\n }).filter(element => !!element);\n if (selections.length) {\n this._state.change({ searchScope: selections }, true);\n }\n }\n }\n _onFindInputMouseDown(e) {\n // on linux, middle key does pasting.\n if (e.middleButton) {\n e.stopPropagation();\n }\n }\n _onFindInputKeyDown(e) {\n if (e.equals(ctrlKeyMod | 3 /* KeyCode.Enter */)) {\n if (this._keybindingService.dispatchEvent(e, e.target)) {\n e.preventDefault();\n return;\n }\n else {\n this._findInput.inputBox.insertAtCursor('\\n');\n e.preventDefault();\n return;\n }\n }\n if (e.equals(2 /* KeyCode.Tab */)) {\n if (this._isReplaceVisible) {\n this._replaceInput.focus();\n }\n else {\n this._findInput.focusOnCaseSensitive();\n }\n e.preventDefault();\n return;\n }\n if (e.equals(2048 /* KeyMod.CtrlCmd */ | 18 /* KeyCode.DownArrow */)) {\n this._codeEditor.focus();\n e.preventDefault();\n return;\n }\n if (e.equals(16 /* KeyCode.UpArrow */)) {\n return stopPropagationForMultiLineUpwards(e, this._findInput.getValue(), this._findInput.domNode.querySelector('textarea'));\n }\n if (e.equals(18 /* KeyCode.DownArrow */)) {\n return stopPropagationForMultiLineDownwards(e, this._findInput.getValue(), this._findInput.domNode.querySelector('textarea'));\n }\n }\n _onReplaceInputKeyDown(e) {\n if (e.equals(ctrlKeyMod | 3 /* KeyCode.Enter */)) {\n if (this._keybindingService.dispatchEvent(e, e.target)) {\n e.preventDefault();\n return;\n }\n else {\n if (_base_common_platform_js__WEBPACK_IMPORTED_MODULE_9__.isWindows && _base_common_platform_js__WEBPACK_IMPORTED_MODULE_9__.isNative && !this._ctrlEnterReplaceAllWarningPrompted) {\n // this is the first time when users press Ctrl + Enter to replace all\n this._notificationService.info(_nls_js__WEBPACK_IMPORTED_MODULE_14__.localize('ctrlEnter.keybindingChanged', 'Ctrl+Enter now inserts line break instead of replacing all. You can modify the keybinding for editor.action.replaceAll to override this behavior.'));\n this._ctrlEnterReplaceAllWarningPrompted = true;\n this._storageService.store(ctrlEnterReplaceAllWarningPromptedKey, true, 0 /* StorageScope.PROFILE */, 0 /* StorageTarget.USER */);\n }\n this._replaceInput.inputBox.insertAtCursor('\\n');\n e.preventDefault();\n return;\n }\n }\n if (e.equals(2 /* KeyCode.Tab */)) {\n this._findInput.focusOnCaseSensitive();\n e.preventDefault();\n return;\n }\n if (e.equals(1024 /* KeyMod.Shift */ | 2 /* KeyCode.Tab */)) {\n this._findInput.focus();\n e.preventDefault();\n return;\n }\n if (e.equals(2048 /* KeyMod.CtrlCmd */ | 18 /* KeyCode.DownArrow */)) {\n this._codeEditor.focus();\n e.preventDefault();\n return;\n }\n if (e.equals(16 /* KeyCode.UpArrow */)) {\n return stopPropagationForMultiLineUpwards(e, this._replaceInput.inputBox.value, this._replaceInput.inputBox.element.querySelector('textarea'));\n }\n if (e.equals(18 /* KeyCode.DownArrow */)) {\n return stopPropagationForMultiLineDownwards(e, this._replaceInput.inputBox.value, this._replaceInput.inputBox.element.querySelector('textarea'));\n }\n }\n // ----- sash\n getVerticalSashLeft(_sash) {\n return 0;\n }\n // ----- initialization\n _keybindingLabelFor(actionId) {\n const kb = this._keybindingService.lookupKeybinding(actionId);\n if (!kb) {\n return '';\n }\n return ` (${kb.getLabel()})`;\n }\n _buildDomNode() {\n const flexibleHeight = true;\n const flexibleWidth = true;\n // Find input\n this._findInput = this._register(new _platform_history_browser_contextScopedHistoryWidget_js__WEBPACK_IMPORTED_MODULE_15__.ContextScopedFindInput(null, this._contextViewProvider, {\n width: FIND_INPUT_AREA_WIDTH,\n label: NLS_FIND_INPUT_LABEL,\n placeholder: NLS_FIND_INPUT_PLACEHOLDER,\n appendCaseSensitiveLabel: this._keybindingLabelFor(_findModel_js__WEBPACK_IMPORTED_MODULE_13__.FIND_IDS.ToggleCaseSensitiveCommand),\n appendWholeWordsLabel: this._keybindingLabelFor(_findModel_js__WEBPACK_IMPORTED_MODULE_13__.FIND_IDS.ToggleWholeWordCommand),\n appendRegexLabel: this._keybindingLabelFor(_findModel_js__WEBPACK_IMPORTED_MODULE_13__.FIND_IDS.ToggleRegexCommand),\n validation: (value) => {\n if (value.length === 0 || !this._findInput.getRegex()) {\n return null;\n }\n try {\n // use `g` and `u` which are also used by the TextModel search\n new RegExp(value, 'gu');\n return null;\n }\n catch (e) {\n return { content: e.message };\n }\n },\n flexibleHeight,\n flexibleWidth,\n flexibleMaxHeight: 118,\n showCommonFindToggles: true,\n showHistoryHint: () => (0,_platform_history_browser_historyWidgetKeybindingHint_js__WEBPACK_IMPORTED_MODULE_16__.showHistoryKeybindingHint)(this._keybindingService),\n inputBoxStyles: _platform_theme_browser_defaultStyles_js__WEBPACK_IMPORTED_MODULE_23__.defaultInputBoxStyles,\n toggleStyles: _platform_theme_browser_defaultStyles_js__WEBPACK_IMPORTED_MODULE_23__.defaultToggleStyles\n }, this._contextKeyService));\n this._findInput.setRegex(!!this._state.isRegex);\n this._findInput.setCaseSensitive(!!this._state.matchCase);\n this._findInput.setWholeWords(!!this._state.wholeWord);\n this._register(this._findInput.onKeyDown((e) => this._onFindInputKeyDown(e)));\n this._register(this._findInput.inputBox.onDidChange(() => {\n if (this._ignoreChangeEvent) {\n return;\n }\n this._state.change({ searchString: this._findInput.getValue() }, true);\n }));\n this._register(this._findInput.onDidOptionChange(() => {\n this._state.change({\n isRegex: this._findInput.getRegex(),\n wholeWord: this._findInput.getWholeWords(),\n matchCase: this._findInput.getCaseSensitive()\n }, true);\n }));\n this._register(this._findInput.onCaseSensitiveKeyDown((e) => {\n if (e.equals(1024 /* KeyMod.Shift */ | 2 /* KeyCode.Tab */)) {\n if (this._isReplaceVisible) {\n this._replaceInput.focus();\n e.preventDefault();\n }\n }\n }));\n this._register(this._findInput.onRegexKeyDown((e) => {\n if (e.equals(2 /* KeyCode.Tab */)) {\n if (this._isReplaceVisible) {\n this._replaceInput.focusOnPreserve();\n e.preventDefault();\n }\n }\n }));\n this._register(this._findInput.inputBox.onDidHeightChange((e) => {\n if (this._tryUpdateHeight()) {\n this._showViewZone();\n }\n }));\n if (_base_common_platform_js__WEBPACK_IMPORTED_MODULE_9__.isLinux) {\n this._register(this._findInput.onMouseDown((e) => this._onFindInputMouseDown(e)));\n }\n this._matchesCount = document.createElement('div');\n this._matchesCount.className = 'matchesCount';\n this._updateMatchesCount();\n // Previous button\n this._prevBtn = this._register(new SimpleButton({\n label: NLS_PREVIOUS_MATCH_BTN_LABEL + this._keybindingLabelFor(_findModel_js__WEBPACK_IMPORTED_MODULE_13__.FIND_IDS.PreviousMatchFindAction),\n icon: findPreviousMatchIcon,\n onTrigger: () => {\n (0,_base_common_types_js__WEBPACK_IMPORTED_MODULE_22__.assertIsDefined)(this._codeEditor.getAction(_findModel_js__WEBPACK_IMPORTED_MODULE_13__.FIND_IDS.PreviousMatchFindAction)).run().then(undefined, _base_common_errors_js__WEBPACK_IMPORTED_MODULE_7__.onUnexpectedError);\n }\n }));\n // Next button\n this._nextBtn = this._register(new SimpleButton({\n label: NLS_NEXT_MATCH_BTN_LABEL + this._keybindingLabelFor(_findModel_js__WEBPACK_IMPORTED_MODULE_13__.FIND_IDS.NextMatchFindAction),\n icon: findNextMatchIcon,\n onTrigger: () => {\n (0,_base_common_types_js__WEBPACK_IMPORTED_MODULE_22__.assertIsDefined)(this._codeEditor.getAction(_findModel_js__WEBPACK_IMPORTED_MODULE_13__.FIND_IDS.NextMatchFindAction)).run().then(undefined, _base_common_errors_js__WEBPACK_IMPORTED_MODULE_7__.onUnexpectedError);\n }\n }));\n const findPart = document.createElement('div');\n findPart.className = 'find-part';\n findPart.appendChild(this._findInput.domNode);\n const actionsContainer = document.createElement('div');\n actionsContainer.className = 'find-actions';\n findPart.appendChild(actionsContainer);\n actionsContainer.appendChild(this._matchesCount);\n actionsContainer.appendChild(this._prevBtn.domNode);\n actionsContainer.appendChild(this._nextBtn.domNode);\n // Toggle selection button\n this._toggleSelectionFind = this._register(new _base_browser_ui_toggle_toggle_js__WEBPACK_IMPORTED_MODULE_2__.Toggle({\n icon: findSelectionIcon,\n title: NLS_TOGGLE_SELECTION_FIND_TITLE + this._keybindingLabelFor(_findModel_js__WEBPACK_IMPORTED_MODULE_13__.FIND_IDS.ToggleSearchScopeCommand),\n isChecked: false,\n inputActiveOptionBackground: (0,_platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_17__.asCssVariable)(_platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_17__.inputActiveOptionBackground),\n inputActiveOptionBorder: (0,_platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_17__.asCssVariable)(_platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_17__.inputActiveOptionBorder),\n inputActiveOptionForeground: (0,_platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_17__.asCssVariable)(_platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_17__.inputActiveOptionForeground),\n }));\n this._register(this._toggleSelectionFind.onChange(() => {\n if (this._toggleSelectionFind.checked) {\n if (this._codeEditor.hasModel()) {\n let selections = this._codeEditor.getSelections();\n selections = selections.map(selection => {\n if (selection.endColumn === 1 && selection.endLineNumber > selection.startLineNumber) {\n selection = selection.setEndPosition(selection.endLineNumber - 1, this._codeEditor.getModel().getLineMaxColumn(selection.endLineNumber - 1));\n }\n if (!selection.isEmpty()) {\n return selection;\n }\n return null;\n }).filter((element) => !!element);\n if (selections.length) {\n this._state.change({ searchScope: selections }, true);\n }\n }\n }\n else {\n this._state.change({ searchScope: null }, true);\n }\n }));\n actionsContainer.appendChild(this._toggleSelectionFind.domNode);\n // Close button\n this._closeBtn = this._register(new SimpleButton({\n label: NLS_CLOSE_BTN_LABEL + this._keybindingLabelFor(_findModel_js__WEBPACK_IMPORTED_MODULE_13__.FIND_IDS.CloseFindWidgetCommand),\n icon: _platform_theme_common_iconRegistry_js__WEBPACK_IMPORTED_MODULE_18__.widgetClose,\n onTrigger: () => {\n this._state.change({ isRevealed: false, searchScope: null }, false);\n },\n onKeyDown: (e) => {\n if (e.equals(2 /* KeyCode.Tab */)) {\n if (this._isReplaceVisible) {\n if (this._replaceBtn.isEnabled()) {\n this._replaceBtn.focus();\n }\n else {\n this._codeEditor.focus();\n }\n e.preventDefault();\n }\n }\n }\n }));\n // Replace input\n this._replaceInput = this._register(new _platform_history_browser_contextScopedHistoryWidget_js__WEBPACK_IMPORTED_MODULE_15__.ContextScopedReplaceInput(null, undefined, {\n label: NLS_REPLACE_INPUT_LABEL,\n placeholder: NLS_REPLACE_INPUT_PLACEHOLDER,\n appendPreserveCaseLabel: this._keybindingLabelFor(_findModel_js__WEBPACK_IMPORTED_MODULE_13__.FIND_IDS.TogglePreserveCaseCommand),\n history: [],\n flexibleHeight,\n flexibleWidth,\n flexibleMaxHeight: 118,\n showHistoryHint: () => (0,_platform_history_browser_historyWidgetKeybindingHint_js__WEBPACK_IMPORTED_MODULE_16__.showHistoryKeybindingHint)(this._keybindingService),\n inputBoxStyles: _platform_theme_browser_defaultStyles_js__WEBPACK_IMPORTED_MODULE_23__.defaultInputBoxStyles,\n toggleStyles: _platform_theme_browser_defaultStyles_js__WEBPACK_IMPORTED_MODULE_23__.defaultToggleStyles\n }, this._contextKeyService, true));\n this._replaceInput.setPreserveCase(!!this._state.preserveCase);\n this._register(this._replaceInput.onKeyDown((e) => this._onReplaceInputKeyDown(e)));\n this._register(this._replaceInput.inputBox.onDidChange(() => {\n this._state.change({ replaceString: this._replaceInput.inputBox.value }, false);\n }));\n this._register(this._replaceInput.inputBox.onDidHeightChange((e) => {\n if (this._isReplaceVisible && this._tryUpdateHeight()) {\n this._showViewZone();\n }\n }));\n this._register(this._replaceInput.onDidOptionChange(() => {\n this._state.change({\n preserveCase: this._replaceInput.getPreserveCase()\n }, true);\n }));\n this._register(this._replaceInput.onPreserveCaseKeyDown((e) => {\n if (e.equals(2 /* KeyCode.Tab */)) {\n if (this._prevBtn.isEnabled()) {\n this._prevBtn.focus();\n }\n else if (this._nextBtn.isEnabled()) {\n this._nextBtn.focus();\n }\n else if (this._toggleSelectionFind.enabled) {\n this._toggleSelectionFind.focus();\n }\n else if (this._closeBtn.isEnabled()) {\n this._closeBtn.focus();\n }\n e.preventDefault();\n }\n }));\n // Replace one button\n this._replaceBtn = this._register(new SimpleButton({\n label: NLS_REPLACE_BTN_LABEL + this._keybindingLabelFor(_findModel_js__WEBPACK_IMPORTED_MODULE_13__.FIND_IDS.ReplaceOneAction),\n icon: findReplaceIcon,\n onTrigger: () => {\n this._controller.replace();\n },\n onKeyDown: (e) => {\n if (e.equals(1024 /* KeyMod.Shift */ | 2 /* KeyCode.Tab */)) {\n this._closeBtn.focus();\n e.preventDefault();\n }\n }\n }));\n // Replace all button\n this._replaceAllBtn = this._register(new SimpleButton({\n label: NLS_REPLACE_ALL_BTN_LABEL + this._keybindingLabelFor(_findModel_js__WEBPACK_IMPORTED_MODULE_13__.FIND_IDS.ReplaceAllAction),\n icon: findReplaceAllIcon,\n onTrigger: () => {\n this._controller.replaceAll();\n }\n }));\n const replacePart = document.createElement('div');\n replacePart.className = 'replace-part';\n replacePart.appendChild(this._replaceInput.domNode);\n const replaceActionsContainer = document.createElement('div');\n replaceActionsContainer.className = 'replace-actions';\n replacePart.appendChild(replaceActionsContainer);\n replaceActionsContainer.appendChild(this._replaceBtn.domNode);\n replaceActionsContainer.appendChild(this._replaceAllBtn.domNode);\n // Toggle replace button\n this._toggleReplaceBtn = this._register(new SimpleButton({\n label: NLS_TOGGLE_REPLACE_MODE_BTN_LABEL,\n className: 'codicon toggle left',\n onTrigger: () => {\n this._state.change({ isReplaceRevealed: !this._isReplaceVisible }, false);\n if (this._isReplaceVisible) {\n this._replaceInput.width = _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.getTotalWidth(this._findInput.domNode);\n this._replaceInput.inputBox.layout();\n }\n this._showViewZone();\n }\n }));\n this._toggleReplaceBtn.setExpanded(this._isReplaceVisible);\n // Widget\n this._domNode = document.createElement('div');\n this._domNode.className = 'editor-widget find-widget';\n this._domNode.setAttribute('aria-hidden', 'true');\n this._domNode.ariaLabel = NLS_FIND_DIALOG_LABEL;\n this._domNode.role = 'dialog';\n // We need to set this explicitly, otherwise on IE11, the width inheritence of flex doesn't work.\n this._domNode.style.width = `${FIND_WIDGET_INITIAL_WIDTH}px`;\n this._domNode.appendChild(this._toggleReplaceBtn.domNode);\n this._domNode.appendChild(findPart);\n this._domNode.appendChild(this._closeBtn.domNode);\n this._domNode.appendChild(replacePart);\n this._resizeSash = this._register(new _base_browser_ui_sash_sash_js__WEBPACK_IMPORTED_MODULE_3__.Sash(this._domNode, this, { orientation: 0 /* Orientation.VERTICAL */, size: 2 }));\n this._resized = false;\n let originalWidth = FIND_WIDGET_INITIAL_WIDTH;\n this._register(this._resizeSash.onDidStart(() => {\n originalWidth = _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.getTotalWidth(this._domNode);\n }));\n this._register(this._resizeSash.onDidChange((evt) => {\n this._resized = true;\n const width = originalWidth + evt.startX - evt.currentX;\n if (width < FIND_WIDGET_INITIAL_WIDTH) {\n // narrow down the find widget should be handled by CSS.\n return;\n }\n const maxWidth = parseFloat(_base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.getComputedStyle(this._domNode).maxWidth) || 0;\n if (width > maxWidth) {\n return;\n }\n this._domNode.style.width = `${width}px`;\n if (this._isReplaceVisible) {\n this._replaceInput.width = _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.getTotalWidth(this._findInput.domNode);\n }\n this._findInput.inputBox.layout();\n this._tryUpdateHeight();\n }));\n this._register(this._resizeSash.onDidReset(() => {\n // users double click on the sash\n const currentWidth = _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.getTotalWidth(this._domNode);\n if (currentWidth < FIND_WIDGET_INITIAL_WIDTH) {\n // The editor is narrow and the width of the find widget is controlled fully by CSS.\n return;\n }\n let width = FIND_WIDGET_INITIAL_WIDTH;\n if (!this._resized || currentWidth === FIND_WIDGET_INITIAL_WIDTH) {\n // 1. never resized before, double click should maximizes it\n // 2. users resized it already but its width is the same as default\n const layoutInfo = this._codeEditor.getLayoutInfo();\n width = layoutInfo.width - 28 - layoutInfo.minimap.minimapWidth - 15;\n this._resized = true;\n }\n else {\n /**\n * no op, the find widget should be shrinked to its default size.\n */\n }\n this._domNode.style.width = `${width}px`;\n if (this._isReplaceVisible) {\n this._replaceInput.width = _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.getTotalWidth(this._findInput.domNode);\n }\n this._findInput.inputBox.layout();\n }));\n }\n updateAccessibilitySupport() {\n const value = this._codeEditor.getOption(2 /* EditorOption.accessibilitySupport */);\n this._findInput.setFocusInputOnOptionClick(value !== 2 /* AccessibilitySupport.Enabled */);\n }\n}\nFindWidget.ID = 'editor.contrib.findWidget';\nclass SimpleButton extends _base_browser_ui_widget_js__WEBPACK_IMPORTED_MODULE_4__.Widget {\n constructor(opts) {\n super();\n this._opts = opts;\n let className = 'button';\n if (this._opts.className) {\n className = className + ' ' + this._opts.className;\n }\n if (this._opts.icon) {\n className = className + ' ' + _base_common_themables_js__WEBPACK_IMPORTED_MODULE_20__.ThemeIcon.asClassName(this._opts.icon);\n }\n this._domNode = document.createElement('div');\n this._domNode.title = this._opts.label;\n this._domNode.tabIndex = 0;\n this._domNode.className = className;\n this._domNode.setAttribute('role', 'button');\n this._domNode.setAttribute('aria-label', this._opts.label);\n this.onclick(this._domNode, (e) => {\n this._opts.onTrigger();\n e.preventDefault();\n });\n this.onkeydown(this._domNode, (e) => {\n var _a, _b;\n if (e.equals(10 /* KeyCode.Space */) || e.equals(3 /* KeyCode.Enter */)) {\n this._opts.onTrigger();\n e.preventDefault();\n return;\n }\n (_b = (_a = this._opts).onKeyDown) === null || _b === void 0 ? void 0 : _b.call(_a, e);\n });\n }\n get domNode() {\n return this._domNode;\n }\n isEnabled() {\n return (this._domNode.tabIndex >= 0);\n }\n focus() {\n this._domNode.focus();\n }\n setEnabled(enabled) {\n this._domNode.classList.toggle('disabled', !enabled);\n this._domNode.setAttribute('aria-disabled', String(!enabled));\n this._domNode.tabIndex = enabled ? 0 : -1;\n }\n setExpanded(expanded) {\n this._domNode.setAttribute('aria-expanded', String(!!expanded));\n if (expanded) {\n this._domNode.classList.remove(..._base_common_themables_js__WEBPACK_IMPORTED_MODULE_20__.ThemeIcon.asClassNameArray(findCollapsedIcon));\n this._domNode.classList.add(..._base_common_themables_js__WEBPACK_IMPORTED_MODULE_20__.ThemeIcon.asClassNameArray(findExpandedIcon));\n }\n else {\n this._domNode.classList.remove(..._base_common_themables_js__WEBPACK_IMPORTED_MODULE_20__.ThemeIcon.asClassNameArray(findExpandedIcon));\n this._domNode.classList.add(..._base_common_themables_js__WEBPACK_IMPORTED_MODULE_20__.ThemeIcon.asClassNameArray(findCollapsedIcon));\n }\n }\n}\n// theming\n(0,_platform_theme_common_themeService_js__WEBPACK_IMPORTED_MODULE_19__.registerThemingParticipant)((theme, collector) => {\n const findMatchHighlightBorder = theme.getColor(_platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_17__.editorFindMatchHighlightBorder);\n if (findMatchHighlightBorder) {\n collector.addRule(`.monaco-editor .findMatch { border: 1px ${(0,_platform_theme_common_theme_js__WEBPACK_IMPORTED_MODULE_21__.isHighContrast)(theme.type) ? 'dotted' : 'solid'} ${findMatchHighlightBorder}; box-sizing: border-box; }`);\n }\n const findRangeHighlightBorder = theme.getColor(_platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_17__.editorFindRangeHighlightBorder);\n if (findRangeHighlightBorder) {\n collector.addRule(`.monaco-editor .findScope { border: 1px ${(0,_platform_theme_common_theme_js__WEBPACK_IMPORTED_MODULE_21__.isHighContrast)(theme.type) ? 'dashed' : 'solid'} ${findRangeHighlightBorder}; }`);\n }\n const hcBorder = theme.getColor(_platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_17__.contrastBorder);\n if (hcBorder) {\n collector.addRule(`.monaco-editor .find-widget { border: 1px solid ${hcBorder}; }`);\n }\n});\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/contrib/find/browser/findWidget.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/contrib/find/browser/replaceAllCommand.js":
/*!********************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/contrib/find/browser/replaceAllCommand.js ***!
\********************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ ReplaceAllCommand: () => (/* binding */ ReplaceAllCommand)\n/* harmony export */ });\n/* harmony import */ var _common_core_range_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../common/core/range.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/core/range.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\nclass ReplaceAllCommand {\n constructor(editorSelection, ranges, replaceStrings) {\n this._editorSelection = editorSelection;\n this._ranges = ranges;\n this._replaceStrings = replaceStrings;\n this._trackedEditorSelectionId = null;\n }\n getEditOperations(model, builder) {\n if (this._ranges.length > 0) {\n // Collect all edit operations\n const ops = [];\n for (let i = 0; i < this._ranges.length; i++) {\n ops.push({\n range: this._ranges[i],\n text: this._replaceStrings[i]\n });\n }\n // Sort them in ascending order by range starts\n ops.sort((o1, o2) => {\n return _common_core_range_js__WEBPACK_IMPORTED_MODULE_0__.Range.compareRangesUsingStarts(o1.range, o2.range);\n });\n // Merge operations that touch each other\n const resultOps = [];\n let previousOp = ops[0];\n for (let i = 1; i < ops.length; i++) {\n if (previousOp.range.endLineNumber === ops[i].range.startLineNumber && previousOp.range.endColumn === ops[i].range.startColumn) {\n // These operations are one after another and can be merged\n previousOp.range = previousOp.range.plusRange(ops[i].range);\n previousOp.text = previousOp.text + ops[i].text;\n }\n else {\n resultOps.push(previousOp);\n previousOp = ops[i];\n }\n }\n resultOps.push(previousOp);\n for (const op of resultOps) {\n builder.addEditOperation(op.range, op.text);\n }\n }\n this._trackedEditorSelectionId = builder.trackSelection(this._editorSelection);\n }\n computeCursorState(model, helper) {\n return helper.getTrackedSelection(this._trackedEditorSelectionId);\n }\n}\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/contrib/find/browser/replaceAllCommand.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/contrib/find/browser/replacePattern.js":
/*!*****************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/contrib/find/browser/replacePattern.js ***!
\*****************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ ReplacePattern: () => (/* binding */ ReplacePattern),\n/* harmony export */ ReplacePiece: () => (/* binding */ ReplacePiece),\n/* harmony export */ parseReplaceString: () => (/* binding */ parseReplaceString)\n/* harmony export */ });\n/* harmony import */ var _base_common_search_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../../base/common/search.js */ \"./node_modules/monaco-editor/esm/vs/base/common/search.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n/**\n * Assigned when the replace pattern is entirely static.\n */\nclass StaticValueReplacePattern {\n constructor(staticValue) {\n this.staticValue = staticValue;\n this.kind = 0 /* ReplacePatternKind.StaticValue */;\n }\n}\n/**\n * Assigned when the replace pattern has replacement patterns.\n */\nclass DynamicPiecesReplacePattern {\n constructor(pieces) {\n this.pieces = pieces;\n this.kind = 1 /* ReplacePatternKind.DynamicPieces */;\n }\n}\nclass ReplacePattern {\n static fromStaticValue(value) {\n return new ReplacePattern([ReplacePiece.staticValue(value)]);\n }\n get hasReplacementPatterns() {\n return (this._state.kind === 1 /* ReplacePatternKind.DynamicPieces */);\n }\n constructor(pieces) {\n if (!pieces || pieces.length === 0) {\n this._state = new StaticValueReplacePattern('');\n }\n else if (pieces.length === 1 && pieces[0].staticValue !== null) {\n this._state = new StaticValueReplacePattern(pieces[0].staticValue);\n }\n else {\n this._state = new DynamicPiecesReplacePattern(pieces);\n }\n }\n buildReplaceString(matches, preserveCase) {\n if (this._state.kind === 0 /* ReplacePatternKind.StaticValue */) {\n if (preserveCase) {\n return (0,_base_common_search_js__WEBPACK_IMPORTED_MODULE_0__.buildReplaceStringWithCasePreserved)(matches, this._state.staticValue);\n }\n else {\n return this._state.staticValue;\n }\n }\n let result = '';\n for (let i = 0, len = this._state.pieces.length; i < len; i++) {\n const piece = this._state.pieces[i];\n if (piece.staticValue !== null) {\n // static value ReplacePiece\n result += piece.staticValue;\n continue;\n }\n // match index ReplacePiece\n let match = ReplacePattern._substitute(piece.matchIndex, matches);\n if (piece.caseOps !== null && piece.caseOps.length > 0) {\n const repl = [];\n const lenOps = piece.caseOps.length;\n let opIdx = 0;\n for (let idx = 0, len = match.length; idx < len; idx++) {\n if (opIdx >= lenOps) {\n repl.push(match.slice(idx));\n break;\n }\n switch (piece.caseOps[opIdx]) {\n case 'U':\n repl.push(match[idx].toUpperCase());\n break;\n case 'u':\n repl.push(match[idx].toUpperCase());\n opIdx++;\n break;\n case 'L':\n repl.push(match[idx].toLowerCase());\n break;\n case 'l':\n repl.push(match[idx].toLowerCase());\n opIdx++;\n break;\n default:\n repl.push(match[idx]);\n }\n }\n match = repl.join('');\n }\n result += match;\n }\n return result;\n }\n static _substitute(matchIndex, matches) {\n if (matches === null) {\n return '';\n }\n if (matchIndex === 0) {\n return matches[0];\n }\n let remainder = '';\n while (matchIndex > 0) {\n if (matchIndex < matches.length) {\n // A match can be undefined\n const match = (matches[matchIndex] || '');\n return match + remainder;\n }\n remainder = String(matchIndex % 10) + remainder;\n matchIndex = Math.floor(matchIndex / 10);\n }\n return '$' + remainder;\n }\n}\n/**\n * A replace piece can either be a static string or an index to a specific match.\n */\nclass ReplacePiece {\n static staticValue(value) {\n return new ReplacePiece(value, -1, null);\n }\n static caseOps(index, caseOps) {\n return new ReplacePiece(null, index, caseOps);\n }\n constructor(staticValue, matchIndex, caseOps) {\n this.staticValue = staticValue;\n this.matchIndex = matchIndex;\n if (!caseOps || caseOps.length === 0) {\n this.caseOps = null;\n }\n else {\n this.caseOps = caseOps.slice(0);\n }\n }\n}\nclass ReplacePieceBuilder {\n constructor(source) {\n this._source = source;\n this._lastCharIndex = 0;\n this._result = [];\n this._resultLen = 0;\n this._currentStaticPiece = '';\n }\n emitUnchanged(toCharIndex) {\n this._emitStatic(this._source.substring(this._lastCharIndex, toCharIndex));\n this._lastCharIndex = toCharIndex;\n }\n emitStatic(value, toCharIndex) {\n this._emitStatic(value);\n this._lastCharIndex = toCharIndex;\n }\n _emitStatic(value) {\n if (value.length === 0) {\n return;\n }\n this._currentStaticPiece += value;\n }\n emitMatchIndex(index, toCharIndex, caseOps) {\n if (this._currentStaticPiece.length !== 0) {\n this._result[this._resultLen++] = ReplacePiece.staticValue(this._currentStaticPiece);\n this._currentStaticPiece = '';\n }\n this._result[this._resultLen++] = ReplacePiece.caseOps(index, caseOps);\n this._lastCharIndex = toCharIndex;\n }\n finalize() {\n this.emitUnchanged(this._source.length);\n if (this._currentStaticPiece.length !== 0) {\n this._result[this._resultLen++] = ReplacePiece.staticValue(this._currentStaticPiece);\n this._currentStaticPiece = '';\n }\n return new ReplacePattern(this._result);\n }\n}\n/**\n * \\n\t\t\t=> inserts a LF\n * \\t\t\t\t=> inserts a TAB\n * \\\\\t\t\t=> inserts a \"\\\".\n * \\u\t\t\t=> upper-cases one character in a match.\n * \\U\t\t\t=> upper-cases ALL remaining characters in a match.\n * \\l\t\t\t=> lower-cases one character in a match.\n * \\L\t\t\t=> lower-cases ALL remaining characters in a match.\n * $$\t\t\t=> inserts a \"$\".\n * $& and $0\t=> inserts the matched substring.\n * $n\t\t\t=> Where n is a non-negative integer lesser than 100, inserts the nth parenthesized submatch string\n * everything else stays untouched\n *\n * Also see https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/String/replace#Specifying_a_string_as_a_parameter\n */\nfunction parseReplaceString(replaceString) {\n if (!replaceString || replaceString.length === 0) {\n return new ReplacePattern(null);\n }\n const caseOps = [];\n const result = new ReplacePieceBuilder(replaceString);\n for (let i = 0, len = replaceString.length; i < len; i++) {\n const chCode = replaceString.charCodeAt(i);\n if (chCode === 92 /* CharCode.Backslash */) {\n // move to next char\n i++;\n if (i >= len) {\n // string ends with a \\\n break;\n }\n const nextChCode = replaceString.charCodeAt(i);\n // let replaceWithCharacter: string | null = null;\n switch (nextChCode) {\n case 92 /* CharCode.Backslash */:\n // \\\\ => inserts a \"\\\"\n result.emitUnchanged(i - 1);\n result.emitStatic('\\\\', i + 1);\n break;\n case 110 /* CharCode.n */:\n // \\n => inserts a LF\n result.emitUnchanged(i - 1);\n result.emitStatic('\\n', i + 1);\n break;\n case 116 /* CharCode.t */:\n // \\t => inserts a TAB\n result.emitUnchanged(i - 1);\n result.emitStatic('\\t', i + 1);\n break;\n // Case modification of string replacements, patterned after Boost, but only applied\n // to the replacement text, not subsequent content.\n case 117 /* CharCode.u */:\n // \\u => upper-cases one character.\n case 85 /* CharCode.U */:\n // \\U => upper-cases ALL following characters.\n case 108 /* CharCode.l */:\n // \\l => lower-cases one character.\n case 76 /* CharCode.L */:\n // \\L => lower-cases ALL following characters.\n result.emitUnchanged(i - 1);\n result.emitStatic('', i + 1);\n caseOps.push(String.fromCharCode(nextChCode));\n break;\n }\n continue;\n }\n if (chCode === 36 /* CharCode.DollarSign */) {\n // move to next char\n i++;\n if (i >= len) {\n // string ends with a $\n break;\n }\n const nextChCode = replaceString.charCodeAt(i);\n if (nextChCode === 36 /* CharCode.DollarSign */) {\n // $$ => inserts a \"$\"\n result.emitUnchanged(i - 1);\n result.emitStatic('$', i + 1);\n continue;\n }\n if (nextChCode === 48 /* CharCode.Digit0 */ || nextChCode === 38 /* CharCode.Ampersand */) {\n // $& and $0 => inserts the matched substring.\n result.emitUnchanged(i - 1);\n result.emitMatchIndex(0, i + 1, caseOps);\n caseOps.length = 0;\n continue;\n }\n if (49 /* CharCode.Digit1 */ <= nextChCode && nextChCode <= 57 /* CharCode.Digit9 */) {\n // $n\n let matchIndex = nextChCode - 48 /* CharCode.Digit0 */;\n // peek next char to probe for $nn\n if (i + 1 < len) {\n const nextNextChCode = replaceString.charCodeAt(i + 1);\n if (48 /* CharCode.Digit0 */ <= nextNextChCode && nextNextChCode <= 57 /* CharCode.Digit9 */) {\n // $nn\n // move to next char\n i++;\n matchIndex = matchIndex * 10 + (nextNextChCode - 48 /* CharCode.Digit0 */);\n result.emitUnchanged(i - 2);\n result.emitMatchIndex(matchIndex, i + 1, caseOps);\n caseOps.length = 0;\n continue;\n }\n }\n result.emitUnchanged(i - 1);\n result.emitMatchIndex(matchIndex, i + 1, caseOps);\n caseOps.length = 0;\n continue;\n }\n }\n }\n return result.finalize();\n}\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/contrib/find/browser/replacePattern.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/contrib/folding/browser/folding.js":
/*!*************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/contrib/folding/browser/folding.js ***!
\*************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ FoldingController: () => (/* binding */ FoldingController),\n/* harmony export */ RangesLimitReporter: () => (/* binding */ RangesLimitReporter)\n/* harmony export */ });\n/* harmony import */ var _base_common_async_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../../base/common/async.js */ \"./node_modules/monaco-editor/esm/vs/base/common/async.js\");\n/* harmony import */ var _base_common_cancellation_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../base/common/cancellation.js */ \"./node_modules/monaco-editor/esm/vs/base/common/cancellation.js\");\n/* harmony import */ var _base_common_errors_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../../base/common/errors.js */ \"./node_modules/monaco-editor/esm/vs/base/common/errors.js\");\n/* harmony import */ var _base_common_keyCodes_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../../../base/common/keyCodes.js */ \"./node_modules/monaco-editor/esm/vs/base/common/keyCodes.js\");\n/* harmony import */ var _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../../../base/common/lifecycle.js */ \"./node_modules/monaco-editor/esm/vs/base/common/lifecycle.js\");\n/* harmony import */ var _base_common_strings_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../../../../base/common/strings.js */ \"./node_modules/monaco-editor/esm/vs/base/common/strings.js\");\n/* harmony import */ var _base_common_types_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../../../../base/common/types.js */ \"./node_modules/monaco-editor/esm/vs/base/common/types.js\");\n/* harmony import */ var _folding_css__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ./folding.css */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/folding/browser/folding.css\");\n/* harmony import */ var _browser_stableEditorScroll_js__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ../../../browser/stableEditorScroll.js */ \"./node_modules/monaco-editor/esm/vs/editor/browser/stableEditorScroll.js\");\n/* harmony import */ var _browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ../../../browser/editorExtensions.js */ \"./node_modules/monaco-editor/esm/vs/editor/browser/editorExtensions.js\");\n/* harmony import */ var _common_editorContextKeys_js__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! ../../../common/editorContextKeys.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/editorContextKeys.js\");\n/* harmony import */ var _common_languages_js__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(/*! ../../../common/languages.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/languages.js\");\n/* harmony import */ var _common_languages_languageConfigurationRegistry_js__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(/*! ../../../common/languages/languageConfigurationRegistry.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/languages/languageConfigurationRegistry.js\");\n/* harmony import */ var _foldingModel_js__WEBPACK_IMPORTED_MODULE_13__ = __webpack_require__(/*! ./foldingModel.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/folding/browser/foldingModel.js\");\n/* harmony import */ var _hiddenRangeModel_js__WEBPACK_IMPORTED_MODULE_14__ = __webpack_require__(/*! ./hiddenRangeModel.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/folding/browser/hiddenRangeModel.js\");\n/* harmony import */ var _indentRangeProvider_js__WEBPACK_IMPORTED_MODULE_15__ = __webpack_require__(/*! ./indentRangeProvider.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/folding/browser/indentRangeProvider.js\");\n/* harmony import */ var _nls_js__WEBPACK_IMPORTED_MODULE_16__ = __webpack_require__(/*! ../../../../nls.js */ \"./node_modules/monaco-editor/esm/vs/nls.js\");\n/* harmony import */ var _platform_contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_17__ = __webpack_require__(/*! ../../../../platform/contextkey/common/contextkey.js */ \"./node_modules/monaco-editor/esm/vs/platform/contextkey/common/contextkey.js\");\n/* harmony import */ var _foldingDecorations_js__WEBPACK_IMPORTED_MODULE_18__ = __webpack_require__(/*! ./foldingDecorations.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/folding/browser/foldingDecorations.js\");\n/* harmony import */ var _foldingRanges_js__WEBPACK_IMPORTED_MODULE_19__ = __webpack_require__(/*! ./foldingRanges.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/folding/browser/foldingRanges.js\");\n/* harmony import */ var _syntaxRangeProvider_js__WEBPACK_IMPORTED_MODULE_20__ = __webpack_require__(/*! ./syntaxRangeProvider.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/folding/browser/syntaxRangeProvider.js\");\n/* harmony import */ var _platform_notification_common_notification_js__WEBPACK_IMPORTED_MODULE_21__ = __webpack_require__(/*! ../../../../platform/notification/common/notification.js */ \"./node_modules/monaco-editor/esm/vs/platform/notification/common/notification.js\");\n/* harmony import */ var _common_services_languageFeatureDebounce_js__WEBPACK_IMPORTED_MODULE_22__ = __webpack_require__(/*! ../../../common/services/languageFeatureDebounce.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/services/languageFeatureDebounce.js\");\n/* harmony import */ var _base_common_stopwatch_js__WEBPACK_IMPORTED_MODULE_23__ = __webpack_require__(/*! ../../../../base/common/stopwatch.js */ \"./node_modules/monaco-editor/esm/vs/base/common/stopwatch.js\");\n/* harmony import */ var _common_services_languageFeatures_js__WEBPACK_IMPORTED_MODULE_24__ = __webpack_require__(/*! ../../../common/services/languageFeatures.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/services/languageFeatures.js\");\n/* harmony import */ var _base_common_event_js__WEBPACK_IMPORTED_MODULE_25__ = __webpack_require__(/*! ../../../../base/common/event.js */ \"./node_modules/monaco-editor/esm/vs/base/common/event.js\");\n/* harmony import */ var _platform_commands_common_commands_js__WEBPACK_IMPORTED_MODULE_26__ = __webpack_require__(/*! ../../../../platform/commands/common/commands.js */ \"./node_modules/monaco-editor/esm/vs/platform/commands/common/commands.js\");\n/* harmony import */ var _base_common_uri_js__WEBPACK_IMPORTED_MODULE_27__ = __webpack_require__(/*! ../../../../base/common/uri.js */ \"./node_modules/monaco-editor/esm/vs/base/common/uri.js\");\n/* harmony import */ var _common_services_model_js__WEBPACK_IMPORTED_MODULE_28__ = __webpack_require__(/*! ../../../common/services/model.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/services/model.js\");\n/* harmony import */ var _platform_configuration_common_configuration_js__WEBPACK_IMPORTED_MODULE_29__ = __webpack_require__(/*! ../../../../platform/configuration/common/configuration.js */ \"./node_modules/monaco-editor/esm/vs/platform/configuration/common/configuration.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\nvar __decorate = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\n return c > 3 && r && Object.defineProperty(target, key, r), r;\n};\nvar __param = (undefined && undefined.__param) || function (paramIndex, decorator) {\n return function (target, key) { decorator(target, key, paramIndex); }\n};\nvar FoldingController_1;\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nconst CONTEXT_FOLDING_ENABLED = new _platform_contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_17__.RawContextKey('foldingEnabled', false);\nlet FoldingController = FoldingController_1 = class FoldingController extends _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_4__.Disposable {\n static get(editor) {\n return editor.getContribution(FoldingController_1.ID);\n }\n static getFoldingRangeProviders(languageFeaturesService, model) {\n var _a, _b;\n const foldingRangeProviders = languageFeaturesService.foldingRangeProvider.ordered(model);\n return (_b = ((_a = FoldingController_1._foldingRangeSelector) === null || _a === void 0 ? void 0 : _a.call(FoldingController_1, foldingRangeProviders, model))) !== null && _b !== void 0 ? _b : foldingRangeProviders;\n }\n constructor(editor, contextKeyService, languageConfigurationService, notificationService, languageFeatureDebounceService, languageFeaturesService) {\n super();\n this.contextKeyService = contextKeyService;\n this.languageConfigurationService = languageConfigurationService;\n this.languageFeaturesService = languageFeaturesService;\n this.localToDispose = this._register(new _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_4__.DisposableStore());\n this.editor = editor;\n this._foldingLimitReporter = new RangesLimitReporter(editor);\n const options = this.editor.getOptions();\n this._isEnabled = options.get(43 /* EditorOption.folding */);\n this._useFoldingProviders = options.get(44 /* EditorOption.foldingStrategy */) !== 'indentation';\n this._unfoldOnClickAfterEndOfLine = options.get(48 /* EditorOption.unfoldOnClickAfterEndOfLine */);\n this._restoringViewState = false;\n this._currentModelHasFoldedImports = false;\n this._foldingImportsByDefault = options.get(46 /* EditorOption.foldingImportsByDefault */);\n this.updateDebounceInfo = languageFeatureDebounceService.for(languageFeaturesService.foldingRangeProvider, 'Folding', { min: 200 });\n this.foldingModel = null;\n this.hiddenRangeModel = null;\n this.rangeProvider = null;\n this.foldingRegionPromise = null;\n this.foldingModelPromise = null;\n this.updateScheduler = null;\n this.cursorChangedScheduler = null;\n this.mouseDownInfo = null;\n this.foldingDecorationProvider = new _foldingDecorations_js__WEBPACK_IMPORTED_MODULE_18__.FoldingDecorationProvider(editor);\n this.foldingDecorationProvider.showFoldingControls = options.get(110 /* EditorOption.showFoldingControls */);\n this.foldingDecorationProvider.showFoldingHighlights = options.get(45 /* EditorOption.foldingHighlight */);\n this.foldingEnabled = CONTEXT_FOLDING_ENABLED.bindTo(this.contextKeyService);\n this.foldingEnabled.set(this._isEnabled);\n this._register(this.editor.onDidChangeModel(() => this.onModelChanged()));\n this._register(this.editor.onDidChangeConfiguration((e) => {\n if (e.hasChanged(43 /* EditorOption.folding */)) {\n this._isEnabled = this.editor.getOptions().get(43 /* EditorOption.folding */);\n this.foldingEnabled.set(this._isEnabled);\n this.onModelChanged();\n }\n if (e.hasChanged(47 /* EditorOption.foldingMaximumRegions */)) {\n this.onModelChanged();\n }\n if (e.hasChanged(110 /* EditorOption.showFoldingControls */) || e.hasChanged(45 /* EditorOption.foldingHighlight */)) {\n const options = this.editor.getOptions();\n this.foldingDecorationProvider.showFoldingControls = options.get(110 /* EditorOption.showFoldingControls */);\n this.foldingDecorationProvider.showFoldingHighlights = options.get(45 /* EditorOption.foldingHighlight */);\n this.triggerFoldingModelChanged();\n }\n if (e.hasChanged(44 /* EditorOption.foldingStrategy */)) {\n this._useFoldingProviders = this.editor.getOptions().get(44 /* EditorOption.foldingStrategy */) !== 'indentation';\n this.onFoldingStrategyChanged();\n }\n if (e.hasChanged(48 /* EditorOption.unfoldOnClickAfterEndOfLine */)) {\n this._unfoldOnClickAfterEndOfLine = this.editor.getOptions().get(48 /* EditorOption.unfoldOnClickAfterEndOfLine */);\n }\n if (e.hasChanged(46 /* EditorOption.foldingImportsByDefault */)) {\n this._foldingImportsByDefault = this.editor.getOptions().get(46 /* EditorOption.foldingImportsByDefault */);\n }\n }));\n this.onModelChanged();\n }\n /**\n * Store view state.\n */\n saveViewState() {\n const model = this.editor.getModel();\n if (!model || !this._isEnabled || model.isTooLargeForTokenization()) {\n return {};\n }\n if (this.foldingModel) { // disposed ?\n const collapsedRegions = this.foldingModel.getMemento();\n const provider = this.rangeProvider ? this.rangeProvider.id : undefined;\n return { collapsedRegions, lineCount: model.getLineCount(), provider, foldedImports: this._currentModelHasFoldedImports };\n }\n return undefined;\n }\n /**\n * Restore view state.\n */\n restoreViewState(state) {\n const model = this.editor.getModel();\n if (!model || !this._isEnabled || model.isTooLargeForTokenization() || !this.hiddenRangeModel) {\n return;\n }\n if (!state) {\n return;\n }\n this._currentModelHasFoldedImports = !!state.foldedImports;\n if (state.collapsedRegions && state.collapsedRegions.length > 0 && this.foldingModel) {\n this._restoringViewState = true;\n try {\n this.foldingModel.applyMemento(state.collapsedRegions);\n }\n finally {\n this._restoringViewState = false;\n }\n }\n }\n onModelChanged() {\n this.localToDispose.clear();\n const model = this.editor.getModel();\n if (!this._isEnabled || !model || model.isTooLargeForTokenization()) {\n // huge files get no view model, so they cannot support hidden areas\n return;\n }\n this._currentModelHasFoldedImports = false;\n this.foldingModel = new _foldingModel_js__WEBPACK_IMPORTED_MODULE_13__.FoldingModel(model, this.foldingDecorationProvider);\n this.localToDispose.add(this.foldingModel);\n this.hiddenRangeModel = new _hiddenRangeModel_js__WEBPACK_IMPORTED_MODULE_14__.HiddenRangeModel(this.foldingModel);\n this.localToDispose.add(this.hiddenRangeModel);\n this.localToDispose.add(this.hiddenRangeModel.onDidChange(hr => this.onHiddenRangesChanges(hr)));\n this.updateScheduler = new _base_common_async_js__WEBPACK_IMPORTED_MODULE_0__.Delayer(this.updateDebounceInfo.get(model));\n this.cursorChangedScheduler = new _base_common_async_js__WEBPACK_IMPORTED_MODULE_0__.RunOnceScheduler(() => this.revealCursor(), 200);\n this.localToDispose.add(this.cursorChangedScheduler);\n this.localToDispose.add(this.languageFeaturesService.foldingRangeProvider.onDidChange(() => this.onFoldingStrategyChanged()));\n this.localToDispose.add(this.editor.onDidChangeModelLanguageConfiguration(() => this.onFoldingStrategyChanged())); // covers model language changes as well\n this.localToDispose.add(this.editor.onDidChangeModelContent(e => this.onDidChangeModelContent(e)));\n this.localToDispose.add(this.editor.onDidChangeCursorPosition(() => this.onCursorPositionChanged()));\n this.localToDispose.add(this.editor.onMouseDown(e => this.onEditorMouseDown(e)));\n this.localToDispose.add(this.editor.onMouseUp(e => this.onEditorMouseUp(e)));\n this.localToDispose.add({\n dispose: () => {\n var _a, _b;\n if (this.foldingRegionPromise) {\n this.foldingRegionPromise.cancel();\n this.foldingRegionPromise = null;\n }\n (_a = this.updateScheduler) === null || _a === void 0 ? void 0 : _a.cancel();\n this.updateScheduler = null;\n this.foldingModel = null;\n this.foldingModelPromise = null;\n this.hiddenRangeModel = null;\n this.cursorChangedScheduler = null;\n (_b = this.rangeProvider) === null || _b === void 0 ? void 0 : _b.dispose();\n this.rangeProvider = null;\n }\n });\n this.triggerFoldingModelChanged();\n }\n onFoldingStrategyChanged() {\n var _a;\n (_a = this.rangeProvider) === null || _a === void 0 ? void 0 : _a.dispose();\n this.rangeProvider = null;\n this.triggerFoldingModelChanged();\n }\n getRangeProvider(editorModel) {\n if (this.rangeProvider) {\n return this.rangeProvider;\n }\n const indentRangeProvider = new _indentRangeProvider_js__WEBPACK_IMPORTED_MODULE_15__.IndentRangeProvider(editorModel, this.languageConfigurationService, this._foldingLimitReporter);\n this.rangeProvider = indentRangeProvider; // fallback\n if (this._useFoldingProviders && this.foldingModel) {\n const selectedProviders = FoldingController_1.getFoldingRangeProviders(this.languageFeaturesService, editorModel);\n if (selectedProviders.length > 0) {\n this.rangeProvider = new _syntaxRangeProvider_js__WEBPACK_IMPORTED_MODULE_20__.SyntaxRangeProvider(editorModel, selectedProviders, () => this.triggerFoldingModelChanged(), this._foldingLimitReporter, indentRangeProvider);\n }\n }\n return this.rangeProvider;\n }\n getFoldingModel() {\n return this.foldingModelPromise;\n }\n onDidChangeModelContent(e) {\n var _a;\n (_a = this.hiddenRangeModel) === null || _a === void 0 ? void 0 : _a.notifyChangeModelContent(e);\n this.triggerFoldingModelChanged();\n }\n triggerFoldingModelChanged() {\n if (this.updateScheduler) {\n if (this.foldingRegionPromise) {\n this.foldingRegionPromise.cancel();\n this.foldingRegionPromise = null;\n }\n this.foldingModelPromise = this.updateScheduler.trigger(() => {\n const foldingModel = this.foldingModel;\n if (!foldingModel) { // null if editor has been disposed, or folding turned off\n return null;\n }\n const sw = new _base_common_stopwatch_js__WEBPACK_IMPORTED_MODULE_23__.StopWatch();\n const provider = this.getRangeProvider(foldingModel.textModel);\n const foldingRegionPromise = this.foldingRegionPromise = (0,_base_common_async_js__WEBPACK_IMPORTED_MODULE_0__.createCancelablePromise)(token => provider.compute(token));\n return foldingRegionPromise.then(foldingRanges => {\n if (foldingRanges && foldingRegionPromise === this.foldingRegionPromise) { // new request or cancelled in the meantime?\n let scrollState;\n if (this._foldingImportsByDefault && !this._currentModelHasFoldedImports) {\n const hasChanges = foldingRanges.setCollapsedAllOfType(_common_languages_js__WEBPACK_IMPORTED_MODULE_11__.FoldingRangeKind.Imports.value, true);\n if (hasChanges) {\n scrollState = _browser_stableEditorScroll_js__WEBPACK_IMPORTED_MODULE_8__.StableEditorScrollState.capture(this.editor);\n this._currentModelHasFoldedImports = hasChanges;\n }\n }\n // some cursors might have moved into hidden regions, make sure they are in expanded regions\n const selections = this.editor.getSelections();\n const selectionLineNumbers = selections ? selections.map(s => s.startLineNumber) : [];\n foldingModel.update(foldingRanges, selectionLineNumbers);\n scrollState === null || scrollState === void 0 ? void 0 : scrollState.restore(this.editor);\n // update debounce info\n const newValue = this.updateDebounceInfo.update(foldingModel.textModel, sw.elapsed());\n if (this.updateScheduler) {\n this.updateScheduler.defaultDelay = newValue;\n }\n }\n return foldingModel;\n });\n }).then(undefined, (err) => {\n (0,_base_common_errors_js__WEBPACK_IMPORTED_MODULE_2__.onUnexpectedError)(err);\n return null;\n });\n }\n }\n onHiddenRangesChanges(hiddenRanges) {\n if (this.hiddenRangeModel && hiddenRanges.length && !this._restoringViewState) {\n const selections = this.editor.getSelections();\n if (selections) {\n if (this.hiddenRangeModel.adjustSelections(selections)) {\n this.editor.setSelections(selections);\n }\n }\n }\n this.editor.setHiddenAreas(hiddenRanges, this);\n }\n onCursorPositionChanged() {\n if (this.hiddenRangeModel && this.hiddenRangeModel.hasRanges()) {\n this.cursorChangedScheduler.schedule();\n }\n }\n revealCursor() {\n const foldingModel = this.getFoldingModel();\n if (!foldingModel) {\n return;\n }\n foldingModel.then(foldingModel => {\n if (foldingModel) {\n const selections = this.editor.getSelections();\n if (selections && selections.length > 0) {\n const toToggle = [];\n for (const selection of selections) {\n const lineNumber = selection.selectionStartLineNumber;\n if (this.hiddenRangeModel && this.hiddenRangeModel.isHidden(lineNumber)) {\n toToggle.push(...foldingModel.getAllRegionsAtLine(lineNumber, r => r.isCollapsed && lineNumber > r.startLineNumber));\n }\n }\n if (toToggle.length) {\n foldingModel.toggleCollapseState(toToggle);\n this.reveal(selections[0].getPosition());\n }\n }\n }\n }).then(undefined, _base_common_errors_js__WEBPACK_IMPORTED_MODULE_2__.onUnexpectedError);\n }\n onEditorMouseDown(e) {\n this.mouseDownInfo = null;\n if (!this.hiddenRangeModel || !e.target || !e.target.range) {\n return;\n }\n if (!e.event.leftButton && !e.event.middleButton) {\n return;\n }\n const range = e.target.range;\n let iconClicked = false;\n switch (e.target.type) {\n case 4 /* MouseTargetType.GUTTER_LINE_DECORATIONS */: {\n const data = e.target.detail;\n const offsetLeftInGutter = e.target.element.offsetLeft;\n const gutterOffsetX = data.offsetX - offsetLeftInGutter;\n // const gutterOffsetX = data.offsetX - data.glyphMarginWidth - data.lineNumbersWidth - data.glyphMarginLeft;\n // TODO@joao TODO@alex TODO@martin this is such that we don't collide with dirty diff\n if (gutterOffsetX < 4) { // the whitespace between the border and the real folding icon border is 4px\n return;\n }\n iconClicked = true;\n break;\n }\n case 7 /* MouseTargetType.CONTENT_EMPTY */: {\n if (this._unfoldOnClickAfterEndOfLine && this.hiddenRangeModel.hasRanges()) {\n const data = e.target.detail;\n if (!data.isAfterLines) {\n break;\n }\n }\n return;\n }\n case 6 /* MouseTargetType.CONTENT_TEXT */: {\n if (this.hiddenRangeModel.hasRanges()) {\n const model = this.editor.getModel();\n if (model && range.startColumn === model.getLineMaxColumn(range.startLineNumber)) {\n break;\n }\n }\n return;\n }\n default:\n return;\n }\n this.mouseDownInfo = { lineNumber: range.startLineNumber, iconClicked };\n }\n onEditorMouseUp(e) {\n const foldingModel = this.foldingModel;\n if (!foldingModel || !this.mouseDownInfo || !e.target) {\n return;\n }\n const lineNumber = this.mouseDownInfo.lineNumber;\n const iconClicked = this.mouseDownInfo.iconClicked;\n const range = e.target.range;\n if (!range || range.startLineNumber !== lineNumber) {\n return;\n }\n if (iconClicked) {\n if (e.target.type !== 4 /* MouseTargetType.GUTTER_LINE_DECORATIONS */) {\n return;\n }\n }\n else {\n const model = this.editor.getModel();\n if (!model || range.startColumn !== model.getLineMaxColumn(lineNumber)) {\n return;\n }\n }\n const region = foldingModel.getRegionAtLine(lineNumber);\n if (region && region.startLineNumber === lineNumber) {\n const isCollapsed = region.isCollapsed;\n if (iconClicked || isCollapsed) {\n const surrounding = e.event.altKey;\n let toToggle = [];\n if (surrounding) {\n const filter = (otherRegion) => !otherRegion.containedBy(region) && !region.containedBy(otherRegion);\n const toMaybeToggle = foldingModel.getRegionsInside(null, filter);\n for (const r of toMaybeToggle) {\n if (r.isCollapsed) {\n toToggle.push(r);\n }\n }\n // if any surrounding regions are folded, unfold those. Otherwise, fold all surrounding\n if (toToggle.length === 0) {\n toToggle = toMaybeToggle;\n }\n }\n else {\n const recursive = e.event.middleButton || e.event.shiftKey;\n if (recursive) {\n for (const r of foldingModel.getRegionsInside(region)) {\n if (r.isCollapsed === isCollapsed) {\n toToggle.push(r);\n }\n }\n }\n // when recursive, first only collapse all children. If all are already folded or there are no children, also fold parent.\n if (isCollapsed || !recursive || toToggle.length === 0) {\n toToggle.push(region);\n }\n }\n foldingModel.toggleCollapseState(toToggle);\n this.reveal({ lineNumber, column: 1 });\n }\n }\n }\n reveal(position) {\n this.editor.revealPositionInCenterIfOutsideViewport(position, 0 /* ScrollType.Smooth */);\n }\n};\nFoldingController.ID = 'editor.contrib.folding';\nFoldingController = FoldingController_1 = __decorate([\n __param(1, _platform_contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_17__.IContextKeyService),\n __param(2, _common_languages_languageConfigurationRegistry_js__WEBPACK_IMPORTED_MODULE_12__.ILanguageConfigurationService),\n __param(3, _platform_notification_common_notification_js__WEBPACK_IMPORTED_MODULE_21__.INotificationService),\n __param(4, _common_services_languageFeatureDebounce_js__WEBPACK_IMPORTED_MODULE_22__.ILanguageFeatureDebounceService),\n __param(5, _common_services_languageFeatures_js__WEBPACK_IMPORTED_MODULE_24__.ILanguageFeaturesService)\n], FoldingController);\n\nclass RangesLimitReporter {\n constructor(editor) {\n this.editor = editor;\n this._onDidChange = new _base_common_event_js__WEBPACK_IMPORTED_MODULE_25__.Emitter();\n this._computed = 0;\n this._limited = false;\n }\n get limit() {\n return this.editor.getOptions().get(47 /* EditorOption.foldingMaximumRegions */);\n }\n update(computed, limited) {\n if (computed !== this._computed || limited !== this._limited) {\n this._computed = computed;\n this._limited = limited;\n this._onDidChange.fire();\n }\n }\n}\nclass FoldingAction extends _browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_9__.EditorAction {\n runEditorCommand(accessor, editor, args) {\n const languageConfigurationService = accessor.get(_common_languages_languageConfigurationRegistry_js__WEBPACK_IMPORTED_MODULE_12__.ILanguageConfigurationService);\n const foldingController = FoldingController.get(editor);\n if (!foldingController) {\n return;\n }\n const foldingModelPromise = foldingController.getFoldingModel();\n if (foldingModelPromise) {\n this.reportTelemetry(accessor, editor);\n return foldingModelPromise.then(foldingModel => {\n if (foldingModel) {\n this.invoke(foldingController, foldingModel, editor, args, languageConfigurationService);\n const selection = editor.getSelection();\n if (selection) {\n foldingController.reveal(selection.getStartPosition());\n }\n }\n });\n }\n }\n getSelectedLines(editor) {\n const selections = editor.getSelections();\n return selections ? selections.map(s => s.startLineNumber) : [];\n }\n getLineNumbers(args, editor) {\n if (args && args.selectionLines) {\n return args.selectionLines.map(l => l + 1); // to 0-bases line numbers\n }\n return this.getSelectedLines(editor);\n }\n run(_accessor, _editor) {\n }\n}\nfunction foldingArgumentsConstraint(args) {\n if (!_base_common_types_js__WEBPACK_IMPORTED_MODULE_6__.isUndefined(args)) {\n if (!_base_common_types_js__WEBPACK_IMPORTED_MODULE_6__.isObject(args)) {\n return false;\n }\n const foldingArgs = args;\n if (!_base_common_types_js__WEBPACK_IMPORTED_MODULE_6__.isUndefined(foldingArgs.levels) && !_base_common_types_js__WEBPACK_IMPORTED_MODULE_6__.isNumber(foldingArgs.levels)) {\n return false;\n }\n if (!_base_common_types_js__WEBPACK_IMPORTED_MODULE_6__.isUndefined(foldingArgs.direction) && !_base_common_types_js__WEBPACK_IMPORTED_MODULE_6__.isString(foldingArgs.direction)) {\n return false;\n }\n if (!_base_common_types_js__WEBPACK_IMPORTED_MODULE_6__.isUndefined(foldingArgs.selectionLines) && (!Array.isArray(foldingArgs.selectionLines) || !foldingArgs.selectionLines.every(_base_common_types_js__WEBPACK_IMPORTED_MODULE_6__.isNumber))) {\n return false;\n }\n }\n return true;\n}\nclass UnfoldAction extends FoldingAction {\n constructor() {\n super({\n id: 'editor.unfold',\n label: _nls_js__WEBPACK_IMPORTED_MODULE_16__.localize('unfoldAction.label', \"Unfold\"),\n alias: 'Unfold',\n precondition: CONTEXT_FOLDING_ENABLED,\n kbOpts: {\n kbExpr: _common_editorContextKeys_js__WEBPACK_IMPORTED_MODULE_10__.EditorContextKeys.editorTextFocus,\n primary: 2048 /* KeyMod.CtrlCmd */ | 1024 /* KeyMod.Shift */ | 94 /* KeyCode.BracketRight */,\n mac: {\n primary: 2048 /* KeyMod.CtrlCmd */ | 512 /* KeyMod.Alt */ | 94 /* KeyCode.BracketRight */\n },\n weight: 100 /* KeybindingWeight.EditorContrib */\n },\n metadata: {\n description: 'Unfold the content in the editor',\n args: [\n {\n name: 'Unfold editor argument',\n description: `Property-value pairs that can be passed through this argument:\n\t\t\t\t\t\t* 'levels': Number of levels to unfold. If not set, defaults to 1.\n\t\t\t\t\t\t* 'direction': If 'up', unfold given number of levels up otherwise unfolds down.\n\t\t\t\t\t\t* 'selectionLines': Array of the start lines (0-based) of the editor selections to apply the unfold action to. If not set, the active selection(s) will be used.\n\t\t\t\t\t\t`,\n constraint: foldingArgumentsConstraint,\n schema: {\n 'type': 'object',\n 'properties': {\n 'levels': {\n 'type': 'number',\n 'default': 1\n },\n 'direction': {\n 'type': 'string',\n 'enum': ['up', 'down'],\n 'default': 'down'\n },\n 'selectionLines': {\n 'type': 'array',\n 'items': {\n 'type': 'number'\n }\n }\n }\n }\n }\n ]\n }\n });\n }\n invoke(_foldingController, foldingModel, editor, args) {\n const levels = args && args.levels || 1;\n const lineNumbers = this.getLineNumbers(args, editor);\n if (args && args.direction === 'up') {\n (0,_foldingModel_js__WEBPACK_IMPORTED_MODULE_13__.setCollapseStateLevelsUp)(foldingModel, false, levels, lineNumbers);\n }\n else {\n (0,_foldingModel_js__WEBPACK_IMPORTED_MODULE_13__.setCollapseStateLevelsDown)(foldingModel, false, levels, lineNumbers);\n }\n }\n}\nclass UnFoldRecursivelyAction extends FoldingAction {\n constructor() {\n super({\n id: 'editor.unfoldRecursively',\n label: _nls_js__WEBPACK_IMPORTED_MODULE_16__.localize('unFoldRecursivelyAction.label', \"Unfold Recursively\"),\n alias: 'Unfold Recursively',\n precondition: CONTEXT_FOLDING_ENABLED,\n kbOpts: {\n kbExpr: _common_editorContextKeys_js__WEBPACK_IMPORTED_MODULE_10__.EditorContextKeys.editorTextFocus,\n primary: (0,_base_common_keyCodes_js__WEBPACK_IMPORTED_MODULE_3__.KeyChord)(2048 /* KeyMod.CtrlCmd */ | 41 /* KeyCode.KeyK */, 2048 /* KeyMod.CtrlCmd */ | 94 /* KeyCode.BracketRight */),\n weight: 100 /* KeybindingWeight.EditorContrib */\n }\n });\n }\n invoke(_foldingController, foldingModel, editor, _args) {\n (0,_foldingModel_js__WEBPACK_IMPORTED_MODULE_13__.setCollapseStateLevelsDown)(foldingModel, false, Number.MAX_VALUE, this.getSelectedLines(editor));\n }\n}\nclass FoldAction extends FoldingAction {\n constructor() {\n super({\n id: 'editor.fold',\n label: _nls_js__WEBPACK_IMPORTED_MODULE_16__.localize('foldAction.label', \"Fold\"),\n alias: 'Fold',\n precondition: CONTEXT_FOLDING_ENABLED,\n kbOpts: {\n kbExpr: _common_editorContextKeys_js__WEBPACK_IMPORTED_MODULE_10__.EditorContextKeys.editorTextFocus,\n primary: 2048 /* KeyMod.CtrlCmd */ | 1024 /* KeyMod.Shift */ | 92 /* KeyCode.BracketLeft */,\n mac: {\n primary: 2048 /* KeyMod.CtrlCmd */ | 512 /* KeyMod.Alt */ | 92 /* KeyCode.BracketLeft */\n },\n weight: 100 /* KeybindingWeight.EditorContrib */\n },\n metadata: {\n description: 'Fold the content in the editor',\n args: [\n {\n name: 'Fold editor argument',\n description: `Property-value pairs that can be passed through this argument:\n\t\t\t\t\t\t\t* 'levels': Number of levels to fold.\n\t\t\t\t\t\t\t* 'direction': If 'up', folds given number of levels up otherwise folds down.\n\t\t\t\t\t\t\t* 'selectionLines': Array of the start lines (0-based) of the editor selections to apply the fold action to. If not set, the active selection(s) will be used.\n\t\t\t\t\t\t\tIf no levels or direction is set, folds the region at the locations or if already collapsed, the first uncollapsed parent instead.\n\t\t\t\t\t\t`,\n constraint: foldingArgumentsConstraint,\n schema: {\n 'type': 'object',\n 'properties': {\n 'levels': {\n 'type': 'number',\n },\n 'direction': {\n 'type': 'string',\n 'enum': ['up', 'down'],\n },\n 'selectionLines': {\n 'type': 'array',\n 'items': {\n 'type': 'number'\n }\n }\n }\n }\n }\n ]\n }\n });\n }\n invoke(_foldingController, foldingModel, editor, args) {\n const lineNumbers = this.getLineNumbers(args, editor);\n const levels = args && args.levels;\n const direction = args && args.direction;\n if (typeof levels !== 'number' && typeof direction !== 'string') {\n // fold the region at the location or if already collapsed, the first uncollapsed parent instead.\n (0,_foldingModel_js__WEBPACK_IMPORTED_MODULE_13__.setCollapseStateUp)(foldingModel, true, lineNumbers);\n }\n else {\n if (direction === 'up') {\n (0,_foldingModel_js__WEBPACK_IMPORTED_MODULE_13__.setCollapseStateLevelsUp)(foldingModel, true, levels || 1, lineNumbers);\n }\n else {\n (0,_foldingModel_js__WEBPACK_IMPORTED_MODULE_13__.setCollapseStateLevelsDown)(foldingModel, true, levels || 1, lineNumbers);\n }\n }\n }\n}\nclass ToggleFoldAction extends FoldingAction {\n constructor() {\n super({\n id: 'editor.toggleFold',\n label: _nls_js__WEBPACK_IMPORTED_MODULE_16__.localize('toggleFoldAction.label', \"Toggle Fold\"),\n alias: 'Toggle Fold',\n precondition: CONTEXT_FOLDING_ENABLED,\n kbOpts: {\n kbExpr: _common_editorContextKeys_js__WEBPACK_IMPORTED_MODULE_10__.EditorContextKeys.editorTextFocus,\n primary: (0,_base_common_keyCodes_js__WEBPACK_IMPORTED_MODULE_3__.KeyChord)(2048 /* KeyMod.CtrlCmd */ | 41 /* KeyCode.KeyK */, 2048 /* KeyMod.CtrlCmd */ | 42 /* KeyCode.KeyL */),\n weight: 100 /* KeybindingWeight.EditorContrib */\n }\n });\n }\n invoke(_foldingController, foldingModel, editor) {\n const selectedLines = this.getSelectedLines(editor);\n (0,_foldingModel_js__WEBPACK_IMPORTED_MODULE_13__.toggleCollapseState)(foldingModel, 1, selectedLines);\n }\n}\nclass FoldRecursivelyAction extends FoldingAction {\n constructor() {\n super({\n id: 'editor.foldRecursively',\n label: _nls_js__WEBPACK_IMPORTED_MODULE_16__.localize('foldRecursivelyAction.label', \"Fold Recursively\"),\n alias: 'Fold Recursively',\n precondition: CONTEXT_FOLDING_ENABLED,\n kbOpts: {\n kbExpr: _common_editorContextKeys_js__WEBPACK_IMPORTED_MODULE_10__.EditorContextKeys.editorTextFocus,\n primary: (0,_base_common_keyCodes_js__WEBPACK_IMPORTED_MODULE_3__.KeyChord)(2048 /* KeyMod.CtrlCmd */ | 41 /* KeyCode.KeyK */, 2048 /* KeyMod.CtrlCmd */ | 92 /* KeyCode.BracketLeft */),\n weight: 100 /* KeybindingWeight.EditorContrib */\n }\n });\n }\n invoke(_foldingController, foldingModel, editor) {\n const selectedLines = this.getSelectedLines(editor);\n (0,_foldingModel_js__WEBPACK_IMPORTED_MODULE_13__.setCollapseStateLevelsDown)(foldingModel, true, Number.MAX_VALUE, selectedLines);\n }\n}\nclass FoldAllBlockCommentsAction extends FoldingAction {\n constructor() {\n super({\n id: 'editor.foldAllBlockComments',\n label: _nls_js__WEBPACK_IMPORTED_MODULE_16__.localize('foldAllBlockComments.label', \"Fold All Block Comments\"),\n alias: 'Fold All Block Comments',\n precondition: CONTEXT_FOLDING_ENABLED,\n kbOpts: {\n kbExpr: _common_editorContextKeys_js__WEBPACK_IMPORTED_MODULE_10__.EditorContextKeys.editorTextFocus,\n primary: (0,_base_common_keyCodes_js__WEBPACK_IMPORTED_MODULE_3__.KeyChord)(2048 /* KeyMod.CtrlCmd */ | 41 /* KeyCode.KeyK */, 2048 /* KeyMod.CtrlCmd */ | 90 /* KeyCode.Slash */),\n weight: 100 /* KeybindingWeight.EditorContrib */\n }\n });\n }\n invoke(_foldingController, foldingModel, editor, args, languageConfigurationService) {\n if (foldingModel.regions.hasTypes()) {\n (0,_foldingModel_js__WEBPACK_IMPORTED_MODULE_13__.setCollapseStateForType)(foldingModel, _common_languages_js__WEBPACK_IMPORTED_MODULE_11__.FoldingRangeKind.Comment.value, true);\n }\n else {\n const editorModel = editor.getModel();\n if (!editorModel) {\n return;\n }\n const comments = languageConfigurationService.getLanguageConfiguration(editorModel.getLanguageId()).comments;\n if (comments && comments.blockCommentStartToken) {\n const regExp = new RegExp('^\\\\s*' + (0,_base_common_strings_js__WEBPACK_IMPORTED_MODULE_5__.escapeRegExpCharacters)(comments.blockCommentStartToken));\n (0,_foldingModel_js__WEBPACK_IMPORTED_MODULE_13__.setCollapseStateForMatchingLines)(foldingModel, regExp, true);\n }\n }\n }\n}\nclass FoldAllRegionsAction extends FoldingAction {\n constructor() {\n super({\n id: 'editor.foldAllMarkerRegions',\n label: _nls_js__WEBPACK_IMPORTED_MODULE_16__.localize('foldAllMarkerRegions.label', \"Fold All Regions\"),\n alias: 'Fold All Regions',\n precondition: CONTEXT_FOLDING_ENABLED,\n kbOpts: {\n kbExpr: _common_editorContextKeys_js__WEBPACK_IMPORTED_MODULE_10__.EditorContextKeys.editorTextFocus,\n primary: (0,_base_common_keyCodes_js__WEBPACK_IMPORTED_MODULE_3__.KeyChord)(2048 /* KeyMod.CtrlCmd */ | 41 /* KeyCode.KeyK */, 2048 /* KeyMod.CtrlCmd */ | 29 /* KeyCode.Digit8 */),\n weight: 100 /* KeybindingWeight.EditorContrib */\n }\n });\n }\n invoke(_foldingController, foldingModel, editor, args, languageConfigurationService) {\n if (foldingModel.regions.hasTypes()) {\n (0,_foldingModel_js__WEBPACK_IMPORTED_MODULE_13__.setCollapseStateForType)(foldingModel, _common_languages_js__WEBPACK_IMPORTED_MODULE_11__.FoldingRangeKind.Region.value, true);\n }\n else {\n const editorModel = editor.getModel();\n if (!editorModel) {\n return;\n }\n const foldingRules = languageConfigurationService.getLanguageConfiguration(editorModel.getLanguageId()).foldingRules;\n if (foldingRules && foldingRules.markers && foldingRules.markers.start) {\n const regExp = new RegExp(foldingRules.markers.start);\n (0,_foldingModel_js__WEBPACK_IMPORTED_MODULE_13__.setCollapseStateForMatchingLines)(foldingModel, regExp, true);\n }\n }\n }\n}\nclass UnfoldAllRegionsAction extends FoldingAction {\n constructor() {\n super({\n id: 'editor.unfoldAllMarkerRegions',\n label: _nls_js__WEBPACK_IMPORTED_MODULE_16__.localize('unfoldAllMarkerRegions.label', \"Unfold All Regions\"),\n alias: 'Unfold All Regions',\n precondition: CONTEXT_FOLDING_ENABLED,\n kbOpts: {\n kbExpr: _common_editorContextKeys_js__WEBPACK_IMPORTED_MODULE_10__.EditorContextKeys.editorTextFocus,\n primary: (0,_base_common_keyCodes_js__WEBPACK_IMPORTED_MODULE_3__.KeyChord)(2048 /* KeyMod.CtrlCmd */ | 41 /* KeyCode.KeyK */, 2048 /* KeyMod.CtrlCmd */ | 30 /* KeyCode.Digit9 */),\n weight: 100 /* KeybindingWeight.EditorContrib */\n }\n });\n }\n invoke(_foldingController, foldingModel, editor, args, languageConfigurationService) {\n if (foldingModel.regions.hasTypes()) {\n (0,_foldingModel_js__WEBPACK_IMPORTED_MODULE_13__.setCollapseStateForType)(foldingModel, _common_languages_js__WEBPACK_IMPORTED_MODULE_11__.FoldingRangeKind.Region.value, false);\n }\n else {\n const editorModel = editor.getModel();\n if (!editorModel) {\n return;\n }\n const foldingRules = languageConfigurationService.getLanguageConfiguration(editorModel.getLanguageId()).foldingRules;\n if (foldingRules && foldingRules.markers && foldingRules.markers.start) {\n const regExp = new RegExp(foldingRules.markers.start);\n (0,_foldingModel_js__WEBPACK_IMPORTED_MODULE_13__.setCollapseStateForMatchingLines)(foldingModel, regExp, false);\n }\n }\n }\n}\nclass FoldAllExceptAction extends FoldingAction {\n constructor() {\n super({\n id: 'editor.foldAllExcept',\n label: _nls_js__WEBPACK_IMPORTED_MODULE_16__.localize('foldAllExcept.label', \"Fold All Except Selected\"),\n alias: 'Fold All Except Selected',\n precondition: CONTEXT_FOLDING_ENABLED,\n kbOpts: {\n kbExpr: _common_editorContextKeys_js__WEBPACK_IMPORTED_MODULE_10__.EditorContextKeys.editorTextFocus,\n primary: (0,_base_common_keyCodes_js__WEBPACK_IMPORTED_MODULE_3__.KeyChord)(2048 /* KeyMod.CtrlCmd */ | 41 /* KeyCode.KeyK */, 2048 /* KeyMod.CtrlCmd */ | 88 /* KeyCode.Minus */),\n weight: 100 /* KeybindingWeight.EditorContrib */\n }\n });\n }\n invoke(_foldingController, foldingModel, editor) {\n const selectedLines = this.getSelectedLines(editor);\n (0,_foldingModel_js__WEBPACK_IMPORTED_MODULE_13__.setCollapseStateForRest)(foldingModel, true, selectedLines);\n }\n}\nclass UnfoldAllExceptAction extends FoldingAction {\n constructor() {\n super({\n id: 'editor.unfoldAllExcept',\n label: _nls_js__WEBPACK_IMPORTED_MODULE_16__.localize('unfoldAllExcept.label', \"Unfold All Except Selected\"),\n alias: 'Unfold All Except Selected',\n precondition: CONTEXT_FOLDING_ENABLED,\n kbOpts: {\n kbExpr: _common_editorContextKeys_js__WEBPACK_IMPORTED_MODULE_10__.EditorContextKeys.editorTextFocus,\n primary: (0,_base_common_keyCodes_js__WEBPACK_IMPORTED_MODULE_3__.KeyChord)(2048 /* KeyMod.CtrlCmd */ | 41 /* KeyCode.KeyK */, 2048 /* KeyMod.CtrlCmd */ | 86 /* KeyCode.Equal */),\n weight: 100 /* KeybindingWeight.EditorContrib */\n }\n });\n }\n invoke(_foldingController, foldingModel, editor) {\n const selectedLines = this.getSelectedLines(editor);\n (0,_foldingModel_js__WEBPACK_IMPORTED_MODULE_13__.setCollapseStateForRest)(foldingModel, false, selectedLines);\n }\n}\nclass FoldAllAction extends FoldingAction {\n constructor() {\n super({\n id: 'editor.foldAll',\n label: _nls_js__WEBPACK_IMPORTED_MODULE_16__.localize('foldAllAction.label', \"Fold All\"),\n alias: 'Fold All',\n precondition: CONTEXT_FOLDING_ENABLED,\n kbOpts: {\n kbExpr: _common_editorContextKeys_js__WEBPACK_IMPORTED_MODULE_10__.EditorContextKeys.editorTextFocus,\n primary: (0,_base_common_keyCodes_js__WEBPACK_IMPORTED_MODULE_3__.KeyChord)(2048 /* KeyMod.CtrlCmd */ | 41 /* KeyCode.KeyK */, 2048 /* KeyMod.CtrlCmd */ | 21 /* KeyCode.Digit0 */),\n weight: 100 /* KeybindingWeight.EditorContrib */\n }\n });\n }\n invoke(_foldingController, foldingModel, _editor) {\n (0,_foldingModel_js__WEBPACK_IMPORTED_MODULE_13__.setCollapseStateLevelsDown)(foldingModel, true);\n }\n}\nclass UnfoldAllAction extends FoldingAction {\n constructor() {\n super({\n id: 'editor.unfoldAll',\n label: _nls_js__WEBPACK_IMPORTED_MODULE_16__.localize('unfoldAllAction.label', \"Unfold All\"),\n alias: 'Unfold All',\n precondition: CONTEXT_FOLDING_ENABLED,\n kbOpts: {\n kbExpr: _common_editorContextKeys_js__WEBPACK_IMPORTED_MODULE_10__.EditorContextKeys.editorTextFocus,\n primary: (0,_base_common_keyCodes_js__WEBPACK_IMPORTED_MODULE_3__.KeyChord)(2048 /* KeyMod.CtrlCmd */ | 41 /* KeyCode.KeyK */, 2048 /* KeyMod.CtrlCmd */ | 40 /* KeyCode.KeyJ */),\n weight: 100 /* KeybindingWeight.EditorContrib */\n }\n });\n }\n invoke(_foldingController, foldingModel, _editor) {\n (0,_foldingModel_js__WEBPACK_IMPORTED_MODULE_13__.setCollapseStateLevelsDown)(foldingModel, false);\n }\n}\nclass FoldLevelAction extends FoldingAction {\n getFoldingLevel() {\n return parseInt(this.id.substr(FoldLevelAction.ID_PREFIX.length));\n }\n invoke(_foldingController, foldingModel, editor) {\n (0,_foldingModel_js__WEBPACK_IMPORTED_MODULE_13__.setCollapseStateAtLevel)(foldingModel, this.getFoldingLevel(), true, this.getSelectedLines(editor));\n }\n}\nFoldLevelAction.ID_PREFIX = 'editor.foldLevel';\nFoldLevelAction.ID = (level) => FoldLevelAction.ID_PREFIX + level;\n/** Action to go to the parent fold of current line */\nclass GotoParentFoldAction extends FoldingAction {\n constructor() {\n super({\n id: 'editor.gotoParentFold',\n label: _nls_js__WEBPACK_IMPORTED_MODULE_16__.localize('gotoParentFold.label', \"Go to Parent Fold\"),\n alias: 'Go to Parent Fold',\n precondition: CONTEXT_FOLDING_ENABLED,\n kbOpts: {\n kbExpr: _common_editorContextKeys_js__WEBPACK_IMPORTED_MODULE_10__.EditorContextKeys.editorTextFocus,\n weight: 100 /* KeybindingWeight.EditorContrib */\n }\n });\n }\n invoke(_foldingController, foldingModel, editor) {\n const selectedLines = this.getSelectedLines(editor);\n if (selectedLines.length > 0) {\n const startLineNumber = (0,_foldingModel_js__WEBPACK_IMPORTED_MODULE_13__.getParentFoldLine)(selectedLines[0], foldingModel);\n if (startLineNumber !== null) {\n editor.setSelection({\n startLineNumber: startLineNumber,\n startColumn: 1,\n endLineNumber: startLineNumber,\n endColumn: 1\n });\n }\n }\n }\n}\n/** Action to go to the previous fold of current line */\nclass GotoPreviousFoldAction extends FoldingAction {\n constructor() {\n super({\n id: 'editor.gotoPreviousFold',\n label: _nls_js__WEBPACK_IMPORTED_MODULE_16__.localize('gotoPreviousFold.label', \"Go to Previous Folding Range\"),\n alias: 'Go to Previous Folding Range',\n precondition: CONTEXT_FOLDING_ENABLED,\n kbOpts: {\n kbExpr: _common_editorContextKeys_js__WEBPACK_IMPORTED_MODULE_10__.EditorContextKeys.editorTextFocus,\n weight: 100 /* KeybindingWeight.EditorContrib */\n }\n });\n }\n invoke(_foldingController, foldingModel, editor) {\n const selectedLines = this.getSelectedLines(editor);\n if (selectedLines.length > 0) {\n const startLineNumber = (0,_foldingModel_js__WEBPACK_IMPORTED_MODULE_13__.getPreviousFoldLine)(selectedLines[0], foldingModel);\n if (startLineNumber !== null) {\n editor.setSelection({\n startLineNumber: startLineNumber,\n startColumn: 1,\n endLineNumber: startLineNumber,\n endColumn: 1\n });\n }\n }\n }\n}\n/** Action to go to the next fold of current line */\nclass GotoNextFoldAction extends FoldingAction {\n constructor() {\n super({\n id: 'editor.gotoNextFold',\n label: _nls_js__WEBPACK_IMPORTED_MODULE_16__.localize('gotoNextFold.label', \"Go to Next Folding Range\"),\n alias: 'Go to Next Folding Range',\n precondition: CONTEXT_FOLDING_ENABLED,\n kbOpts: {\n kbExpr: _common_editorContextKeys_js__WEBPACK_IMPORTED_MODULE_10__.EditorContextKeys.editorTextFocus,\n weight: 100 /* KeybindingWeight.EditorContrib */\n }\n });\n }\n invoke(_foldingController, foldingModel, editor) {\n const selectedLines = this.getSelectedLines(editor);\n if (selectedLines.length > 0) {\n const startLineNumber = (0,_foldingModel_js__WEBPACK_IMPORTED_MODULE_13__.getNextFoldLine)(selectedLines[0], foldingModel);\n if (startLineNumber !== null) {\n editor.setSelection({\n startLineNumber: startLineNumber,\n startColumn: 1,\n endLineNumber: startLineNumber,\n endColumn: 1\n });\n }\n }\n }\n}\nclass FoldRangeFromSelectionAction extends FoldingAction {\n constructor() {\n super({\n id: 'editor.createFoldingRangeFromSelection',\n label: _nls_js__WEBPACK_IMPORTED_MODULE_16__.localize('createManualFoldRange.label', \"Create Folding Range from Selection\"),\n alias: 'Create Folding Range from Selection',\n precondition: CONTEXT_FOLDING_ENABLED,\n kbOpts: {\n kbExpr: _common_editorContextKeys_js__WEBPACK_IMPORTED_MODULE_10__.EditorContextKeys.editorTextFocus,\n primary: (0,_base_common_keyCodes_js__WEBPACK_IMPORTED_MODULE_3__.KeyChord)(2048 /* KeyMod.CtrlCmd */ | 41 /* KeyCode.KeyK */, 2048 /* KeyMod.CtrlCmd */ | 87 /* KeyCode.Comma */),\n weight: 100 /* KeybindingWeight.EditorContrib */\n }\n });\n }\n invoke(_foldingController, foldingModel, editor) {\n var _a;\n const collapseRanges = [];\n const selections = editor.getSelections();\n if (selections) {\n for (const selection of selections) {\n let endLineNumber = selection.endLineNumber;\n if (selection.endColumn === 1) {\n --endLineNumber;\n }\n if (endLineNumber > selection.startLineNumber) {\n collapseRanges.push({\n startLineNumber: selection.startLineNumber,\n endLineNumber: endLineNumber,\n type: undefined,\n isCollapsed: true,\n source: 1 /* FoldSource.userDefined */\n });\n editor.setSelection({\n startLineNumber: selection.startLineNumber,\n startColumn: 1,\n endLineNumber: selection.startLineNumber,\n endColumn: 1\n });\n }\n }\n if (collapseRanges.length > 0) {\n collapseRanges.sort((a, b) => {\n return a.startLineNumber - b.startLineNumber;\n });\n const newRanges = _foldingRanges_js__WEBPACK_IMPORTED_MODULE_19__.FoldingRegions.sanitizeAndMerge(foldingModel.regions, collapseRanges, (_a = editor.getModel()) === null || _a === void 0 ? void 0 : _a.getLineCount());\n foldingModel.updatePost(_foldingRanges_js__WEBPACK_IMPORTED_MODULE_19__.FoldingRegions.fromFoldRanges(newRanges));\n }\n }\n }\n}\nclass RemoveFoldRangeFromSelectionAction extends FoldingAction {\n constructor() {\n super({\n id: 'editor.removeManualFoldingRanges',\n label: _nls_js__WEBPACK_IMPORTED_MODULE_16__.localize('removeManualFoldingRanges.label', \"Remove Manual Folding Ranges\"),\n alias: 'Remove Manual Folding Ranges',\n precondition: CONTEXT_FOLDING_ENABLED,\n kbOpts: {\n kbExpr: _common_editorContextKeys_js__WEBPACK_IMPORTED_MODULE_10__.EditorContextKeys.editorTextFocus,\n primary: (0,_base_common_keyCodes_js__WEBPACK_IMPORTED_MODULE_3__.KeyChord)(2048 /* KeyMod.CtrlCmd */ | 41 /* KeyCode.KeyK */, 2048 /* KeyMod.CtrlCmd */ | 89 /* KeyCode.Period */),\n weight: 100 /* KeybindingWeight.EditorContrib */\n }\n });\n }\n invoke(foldingController, foldingModel, editor) {\n const selections = editor.getSelections();\n if (selections) {\n const ranges = [];\n for (const selection of selections) {\n const { startLineNumber, endLineNumber } = selection;\n ranges.push(endLineNumber >= startLineNumber ? { startLineNumber, endLineNumber } : { endLineNumber, startLineNumber });\n }\n foldingModel.removeManualRanges(ranges);\n foldingController.triggerFoldingModelChanged();\n }\n }\n}\n(0,_browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_9__.registerEditorContribution)(FoldingController.ID, FoldingController, 0 /* EditorContributionInstantiation.Eager */); // eager because it uses `saveViewState`/`restoreViewState`\n(0,_browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_9__.registerEditorAction)(UnfoldAction);\n(0,_browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_9__.registerEditorAction)(UnFoldRecursivelyAction);\n(0,_browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_9__.registerEditorAction)(FoldAction);\n(0,_browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_9__.registerEditorAction)(FoldRecursivelyAction);\n(0,_browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_9__.registerEditorAction)(FoldAllAction);\n(0,_browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_9__.registerEditorAction)(UnfoldAllAction);\n(0,_browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_9__.registerEditorAction)(FoldAllBlockCommentsAction);\n(0,_browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_9__.registerEditorAction)(FoldAllRegionsAction);\n(0,_browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_9__.registerEditorAction)(UnfoldAllRegionsAction);\n(0,_browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_9__.registerEditorAction)(FoldAllExceptAction);\n(0,_browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_9__.registerEditorAction)(UnfoldAllExceptAction);\n(0,_browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_9__.registerEditorAction)(ToggleFoldAction);\n(0,_browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_9__.registerEditorAction)(GotoParentFoldAction);\n(0,_browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_9__.registerEditorAction)(GotoPreviousFoldAction);\n(0,_browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_9__.registerEditorAction)(GotoNextFoldAction);\n(0,_browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_9__.registerEditorAction)(FoldRangeFromSelectionAction);\n(0,_browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_9__.registerEditorAction)(RemoveFoldRangeFromSelectionAction);\nfor (let i = 1; i <= 7; i++) {\n (0,_browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_9__.registerInstantiatedEditorAction)(new FoldLevelAction({\n id: FoldLevelAction.ID(i),\n label: _nls_js__WEBPACK_IMPORTED_MODULE_16__.localize('foldLevelAction.label', \"Fold Level {0}\", i),\n alias: `Fold Level ${i}`,\n precondition: CONTEXT_FOLDING_ENABLED,\n kbOpts: {\n kbExpr: _common_editorContextKeys_js__WEBPACK_IMPORTED_MODULE_10__.EditorContextKeys.editorTextFocus,\n primary: (0,_base_common_keyCodes_js__WEBPACK_IMPORTED_MODULE_3__.KeyChord)(2048 /* KeyMod.CtrlCmd */ | 41 /* KeyCode.KeyK */, 2048 /* KeyMod.CtrlCmd */ | (21 /* KeyCode.Digit0 */ + i)),\n weight: 100 /* KeybindingWeight.EditorContrib */\n }\n }));\n}\n_platform_commands_common_commands_js__WEBPACK_IMPORTED_MODULE_26__.CommandsRegistry.registerCommand('_executeFoldingRangeProvider', async function (accessor, ...args) {\n const [resource] = args;\n if (!(resource instanceof _base_common_uri_js__WEBPACK_IMPORTED_MODULE_27__.URI)) {\n throw (0,_base_common_errors_js__WEBPACK_IMPORTED_MODULE_2__.illegalArgument)();\n }\n const languageFeaturesService = accessor.get(_common_services_languageFeatures_js__WEBPACK_IMPORTED_MODULE_24__.ILanguageFeaturesService);\n const model = accessor.get(_common_services_model_js__WEBPACK_IMPORTED_MODULE_28__.IModelService).getModel(resource);\n if (!model) {\n throw (0,_base_common_errors_js__WEBPACK_IMPORTED_MODULE_2__.illegalArgument)();\n }\n const configurationService = accessor.get(_platform_configuration_common_configuration_js__WEBPACK_IMPORTED_MODULE_29__.IConfigurationService);\n if (!configurationService.getValue('editor.folding', { resource })) {\n return [];\n }\n const languageConfigurationService = accessor.get(_common_languages_languageConfigurationRegistry_js__WEBPACK_IMPORTED_MODULE_12__.ILanguageConfigurationService);\n const strategy = configurationService.getValue('editor.foldingStrategy', { resource });\n const foldingLimitReporter = {\n get limit() {\n return configurationService.getValue('editor.foldingMaximumRegions', { resource });\n },\n update: (computed, limited) => { }\n };\n const indentRangeProvider = new _indentRangeProvider_js__WEBPACK_IMPORTED_MODULE_15__.IndentRangeProvider(model, languageConfigurationService, foldingLimitReporter);\n let rangeProvider = indentRangeProvider;\n if (strategy !== 'indentation') {\n const providers = FoldingController.getFoldingRangeProviders(languageFeaturesService, model);\n if (providers.length) {\n rangeProvider = new _syntaxRangeProvider_js__WEBPACK_IMPORTED_MODULE_20__.SyntaxRangeProvider(model, providers, () => { }, foldingLimitReporter, indentRangeProvider);\n }\n }\n const ranges = await rangeProvider.compute(_base_common_cancellation_js__WEBPACK_IMPORTED_MODULE_1__.CancellationToken.None);\n const result = [];\n try {\n if (ranges) {\n for (let i = 0; i < ranges.length; i++) {\n const type = ranges.getType(i);\n result.push({ start: ranges.getStartLineNumber(i), end: ranges.getEndLineNumber(i), kind: type ? _common_languages_js__WEBPACK_IMPORTED_MODULE_11__.FoldingRangeKind.fromValue(type) : undefined });\n }\n }\n return result;\n }\n finally {\n rangeProvider.dispose();\n }\n});\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/contrib/folding/browser/folding.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/contrib/folding/browser/foldingDecorations.js":
/*!************************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/contrib/folding/browser/foldingDecorations.js ***!
\************************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ FoldingDecorationProvider: () => (/* binding */ FoldingDecorationProvider),\n/* harmony export */ foldingCollapsedIcon: () => (/* binding */ foldingCollapsedIcon),\n/* harmony export */ foldingExpandedIcon: () => (/* binding */ foldingExpandedIcon),\n/* harmony export */ foldingManualCollapsedIcon: () => (/* binding */ foldingManualCollapsedIcon),\n/* harmony export */ foldingManualExpandedIcon: () => (/* binding */ foldingManualExpandedIcon)\n/* harmony export */ });\n/* harmony import */ var _base_common_codicons_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../../base/common/codicons.js */ \"./node_modules/monaco-editor/esm/vs/base/common/codicons.js\");\n/* harmony import */ var _common_model_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../common/model.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/model.js\");\n/* harmony import */ var _common_model_textModel_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../common/model/textModel.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/model/textModel.js\");\n/* harmony import */ var _nls_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../../../nls.js */ \"./node_modules/monaco-editor/esm/vs/nls.js\");\n/* harmony import */ var _platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../../../platform/theme/common/colorRegistry.js */ \"./node_modules/monaco-editor/esm/vs/platform/theme/common/colorRegistry.js\");\n/* harmony import */ var _platform_theme_common_iconRegistry_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../../../../platform/theme/common/iconRegistry.js */ \"./node_modules/monaco-editor/esm/vs/platform/theme/common/iconRegistry.js\");\n/* harmony import */ var _platform_theme_common_themeService_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../../../../platform/theme/common/themeService.js */ \"./node_modules/monaco-editor/esm/vs/platform/theme/common/themeService.js\");\n/* harmony import */ var _base_common_themables_js__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ../../../../base/common/themables.js */ \"./node_modules/monaco-editor/esm/vs/base/common/themables.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n\n\n\n\n\n\n\nconst foldBackground = (0,_platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_4__.registerColor)('editor.foldBackground', { light: (0,_platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_4__.transparent)(_platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_4__.editorSelectionBackground, 0.3), dark: (0,_platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_4__.transparent)(_platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_4__.editorSelectionBackground, 0.3), hcDark: null, hcLight: null }, (0,_nls_js__WEBPACK_IMPORTED_MODULE_3__.localize)('foldBackgroundBackground', \"Background color behind folded ranges. The color must not be opaque so as not to hide underlying decorations.\"), true);\n(0,_platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_4__.registerColor)('editorGutter.foldingControlForeground', { dark: _platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_4__.iconForeground, light: _platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_4__.iconForeground, hcDark: _platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_4__.iconForeground, hcLight: _platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_4__.iconForeground }, (0,_nls_js__WEBPACK_IMPORTED_MODULE_3__.localize)('editorGutter.foldingControlForeground', 'Color of the folding control in the editor gutter.'));\nconst foldingExpandedIcon = (0,_platform_theme_common_iconRegistry_js__WEBPACK_IMPORTED_MODULE_5__.registerIcon)('folding-expanded', _base_common_codicons_js__WEBPACK_IMPORTED_MODULE_0__.Codicon.chevronDown, (0,_nls_js__WEBPACK_IMPORTED_MODULE_3__.localize)('foldingExpandedIcon', 'Icon for expanded ranges in the editor glyph margin.'));\nconst foldingCollapsedIcon = (0,_platform_theme_common_iconRegistry_js__WEBPACK_IMPORTED_MODULE_5__.registerIcon)('folding-collapsed', _base_common_codicons_js__WEBPACK_IMPORTED_MODULE_0__.Codicon.chevronRight, (0,_nls_js__WEBPACK_IMPORTED_MODULE_3__.localize)('foldingCollapsedIcon', 'Icon for collapsed ranges in the editor glyph margin.'));\nconst foldingManualCollapsedIcon = (0,_platform_theme_common_iconRegistry_js__WEBPACK_IMPORTED_MODULE_5__.registerIcon)('folding-manual-collapsed', foldingCollapsedIcon, (0,_nls_js__WEBPACK_IMPORTED_MODULE_3__.localize)('foldingManualCollapedIcon', 'Icon for manually collapsed ranges in the editor glyph margin.'));\nconst foldingManualExpandedIcon = (0,_platform_theme_common_iconRegistry_js__WEBPACK_IMPORTED_MODULE_5__.registerIcon)('folding-manual-expanded', foldingExpandedIcon, (0,_nls_js__WEBPACK_IMPORTED_MODULE_3__.localize)('foldingManualExpandedIcon', 'Icon for manually expanded ranges in the editor glyph margin.'));\nconst foldedBackgroundMinimap = { color: (0,_platform_theme_common_themeService_js__WEBPACK_IMPORTED_MODULE_6__.themeColorFromId)(foldBackground), position: _common_model_js__WEBPACK_IMPORTED_MODULE_1__.MinimapPosition.Inline };\nconst collapsed = (0,_nls_js__WEBPACK_IMPORTED_MODULE_3__.localize)('linesCollapsed', \"Click to expand the range.\");\nconst expanded = (0,_nls_js__WEBPACK_IMPORTED_MODULE_3__.localize)('linesExpanded', \"Click to collapse the range.\");\nclass FoldingDecorationProvider {\n constructor(editor) {\n this.editor = editor;\n this.showFoldingControls = 'mouseover';\n this.showFoldingHighlights = true;\n }\n getDecorationOption(isCollapsed, isHidden, isManual) {\n if (isHidden) { // is inside another collapsed region\n return FoldingDecorationProvider.HIDDEN_RANGE_DECORATION;\n }\n if (this.showFoldingControls === 'never') {\n if (isCollapsed) {\n return this.showFoldingHighlights ? FoldingDecorationProvider.NO_CONTROLS_COLLAPSED_HIGHLIGHTED_RANGE_DECORATION : FoldingDecorationProvider.NO_CONTROLS_COLLAPSED_RANGE_DECORATION;\n }\n return FoldingDecorationProvider.NO_CONTROLS_EXPANDED_RANGE_DECORATION;\n }\n if (isCollapsed) {\n return isManual ?\n (this.showFoldingHighlights ? FoldingDecorationProvider.MANUALLY_COLLAPSED_HIGHLIGHTED_VISUAL_DECORATION : FoldingDecorationProvider.MANUALLY_COLLAPSED_VISUAL_DECORATION)\n : (this.showFoldingHighlights ? FoldingDecorationProvider.COLLAPSED_HIGHLIGHTED_VISUAL_DECORATION : FoldingDecorationProvider.COLLAPSED_VISUAL_DECORATION);\n }\n else if (this.showFoldingControls === 'mouseover') {\n return isManual ? FoldingDecorationProvider.MANUALLY_EXPANDED_AUTO_HIDE_VISUAL_DECORATION : FoldingDecorationProvider.EXPANDED_AUTO_HIDE_VISUAL_DECORATION;\n }\n else {\n return isManual ? FoldingDecorationProvider.MANUALLY_EXPANDED_VISUAL_DECORATION : FoldingDecorationProvider.EXPANDED_VISUAL_DECORATION;\n }\n }\n changeDecorations(callback) {\n return this.editor.changeDecorations(callback);\n }\n removeDecorations(decorationIds) {\n this.editor.removeDecorations(decorationIds);\n }\n}\nFoldingDecorationProvider.COLLAPSED_VISUAL_DECORATION = _common_model_textModel_js__WEBPACK_IMPORTED_MODULE_2__.ModelDecorationOptions.register({\n description: 'folding-collapsed-visual-decoration',\n stickiness: 0 /* TrackedRangeStickiness.AlwaysGrowsWhenTypingAtEdges */,\n afterContentClassName: 'inline-folded',\n isWholeLine: true,\n linesDecorationsTooltip: collapsed,\n firstLineDecorationClassName: _base_common_themables_js__WEBPACK_IMPORTED_MODULE_7__.ThemeIcon.asClassName(foldingCollapsedIcon),\n});\nFoldingDecorationProvider.COLLAPSED_HIGHLIGHTED_VISUAL_DECORATION = _common_model_textModel_js__WEBPACK_IMPORTED_MODULE_2__.ModelDecorationOptions.register({\n description: 'folding-collapsed-highlighted-visual-decoration',\n stickiness: 0 /* TrackedRangeStickiness.AlwaysGrowsWhenTypingAtEdges */,\n afterContentClassName: 'inline-folded',\n className: 'folded-background',\n minimap: foldedBackgroundMinimap,\n isWholeLine: true,\n linesDecorationsTooltip: collapsed,\n firstLineDecorationClassName: _base_common_themables_js__WEBPACK_IMPORTED_MODULE_7__.ThemeIcon.asClassName(foldingCollapsedIcon)\n});\nFoldingDecorationProvider.MANUALLY_COLLAPSED_VISUAL_DECORATION = _common_model_textModel_js__WEBPACK_IMPORTED_MODULE_2__.ModelDecorationOptions.register({\n description: 'folding-manually-collapsed-visual-decoration',\n stickiness: 0 /* TrackedRangeStickiness.AlwaysGrowsWhenTypingAtEdges */,\n afterContentClassName: 'inline-folded',\n isWholeLine: true,\n linesDecorationsTooltip: collapsed,\n firstLineDecorationClassName: _base_common_themables_js__WEBPACK_IMPORTED_MODULE_7__.ThemeIcon.asClassName(foldingManualCollapsedIcon)\n});\nFoldingDecorationProvider.MANUALLY_COLLAPSED_HIGHLIGHTED_VISUAL_DECORATION = _common_model_textModel_js__WEBPACK_IMPORTED_MODULE_2__.ModelDecorationOptions.register({\n description: 'folding-manually-collapsed-highlighted-visual-decoration',\n stickiness: 0 /* TrackedRangeStickiness.AlwaysGrowsWhenTypingAtEdges */,\n afterContentClassName: 'inline-folded',\n className: 'folded-background',\n minimap: foldedBackgroundMinimap,\n isWholeLine: true,\n linesDecorationsTooltip: collapsed,\n firstLineDecorationClassName: _base_common_themables_js__WEBPACK_IMPORTED_MODULE_7__.ThemeIcon.asClassName(foldingManualCollapsedIcon)\n});\nFoldingDecorationProvider.NO_CONTROLS_COLLAPSED_RANGE_DECORATION = _common_model_textModel_js__WEBPACK_IMPORTED_MODULE_2__.ModelDecorationOptions.register({\n description: 'folding-no-controls-range-decoration',\n stickiness: 0 /* TrackedRangeStickiness.AlwaysGrowsWhenTypingAtEdges */,\n afterContentClassName: 'inline-folded',\n isWholeLine: true,\n linesDecorationsTooltip: collapsed,\n});\nFoldingDecorationProvider.NO_CONTROLS_COLLAPSED_HIGHLIGHTED_RANGE_DECORATION = _common_model_textModel_js__WEBPACK_IMPORTED_MODULE_2__.ModelDecorationOptions.register({\n description: 'folding-no-controls-range-decoration',\n stickiness: 0 /* TrackedRangeStickiness.AlwaysGrowsWhenTypingAtEdges */,\n afterContentClassName: 'inline-folded',\n className: 'folded-background',\n minimap: foldedBackgroundMinimap,\n isWholeLine: true,\n linesDecorationsTooltip: collapsed,\n});\nFoldingDecorationProvider.EXPANDED_VISUAL_DECORATION = _common_model_textModel_js__WEBPACK_IMPORTED_MODULE_2__.ModelDecorationOptions.register({\n description: 'folding-expanded-visual-decoration',\n stickiness: 1 /* TrackedRangeStickiness.NeverGrowsWhenTypingAtEdges */,\n isWholeLine: true,\n firstLineDecorationClassName: 'alwaysShowFoldIcons ' + _base_common_themables_js__WEBPACK_IMPORTED_MODULE_7__.ThemeIcon.asClassName(foldingExpandedIcon),\n linesDecorationsTooltip: expanded,\n});\nFoldingDecorationProvider.EXPANDED_AUTO_HIDE_VISUAL_DECORATION = _common_model_textModel_js__WEBPACK_IMPORTED_MODULE_2__.ModelDecorationOptions.register({\n description: 'folding-expanded-auto-hide-visual-decoration',\n stickiness: 1 /* TrackedRangeStickiness.NeverGrowsWhenTypingAtEdges */,\n isWholeLine: true,\n firstLineDecorationClassName: _base_common_themables_js__WEBPACK_IMPORTED_MODULE_7__.ThemeIcon.asClassName(foldingExpandedIcon),\n linesDecorationsTooltip: expanded,\n});\nFoldingDecorationProvider.MANUALLY_EXPANDED_VISUAL_DECORATION = _common_model_textModel_js__WEBPACK_IMPORTED_MODULE_2__.ModelDecorationOptions.register({\n description: 'folding-manually-expanded-visual-decoration',\n stickiness: 0 /* TrackedRangeStickiness.AlwaysGrowsWhenTypingAtEdges */,\n isWholeLine: true,\n firstLineDecorationClassName: 'alwaysShowFoldIcons ' + _base_common_themables_js__WEBPACK_IMPORTED_MODULE_7__.ThemeIcon.asClassName(foldingManualExpandedIcon),\n linesDecorationsTooltip: expanded,\n});\nFoldingDecorationProvider.MANUALLY_EXPANDED_AUTO_HIDE_VISUAL_DECORATION = _common_model_textModel_js__WEBPACK_IMPORTED_MODULE_2__.ModelDecorationOptions.register({\n description: 'folding-manually-expanded-auto-hide-visual-decoration',\n stickiness: 0 /* TrackedRangeStickiness.AlwaysGrowsWhenTypingAtEdges */,\n isWholeLine: true,\n firstLineDecorationClassName: _base_common_themables_js__WEBPACK_IMPORTED_MODULE_7__.ThemeIcon.asClassName(foldingManualExpandedIcon),\n linesDecorationsTooltip: expanded,\n});\nFoldingDecorationProvider.NO_CONTROLS_EXPANDED_RANGE_DECORATION = _common_model_textModel_js__WEBPACK_IMPORTED_MODULE_2__.ModelDecorationOptions.register({\n description: 'folding-no-controls-range-decoration',\n stickiness: 0 /* TrackedRangeStickiness.AlwaysGrowsWhenTypingAtEdges */,\n isWholeLine: true\n});\nFoldingDecorationProvider.HIDDEN_RANGE_DECORATION = _common_model_textModel_js__WEBPACK_IMPORTED_MODULE_2__.ModelDecorationOptions.register({\n description: 'folding-hidden-range-decoration',\n stickiness: 1 /* TrackedRangeStickiness.NeverGrowsWhenTypingAtEdges */\n});\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/contrib/folding/browser/foldingDecorations.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/contrib/folding/browser/foldingModel.js":
/*!******************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/contrib/folding/browser/foldingModel.js ***!
\******************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ FoldingModel: () => (/* binding */ FoldingModel),\n/* harmony export */ getNextFoldLine: () => (/* binding */ getNextFoldLine),\n/* harmony export */ getParentFoldLine: () => (/* binding */ getParentFoldLine),\n/* harmony export */ getPreviousFoldLine: () => (/* binding */ getPreviousFoldLine),\n/* harmony export */ setCollapseStateAtLevel: () => (/* binding */ setCollapseStateAtLevel),\n/* harmony export */ setCollapseStateForMatchingLines: () => (/* binding */ setCollapseStateForMatchingLines),\n/* harmony export */ setCollapseStateForRest: () => (/* binding */ setCollapseStateForRest),\n/* harmony export */ setCollapseStateForType: () => (/* binding */ setCollapseStateForType),\n/* harmony export */ setCollapseStateLevelsDown: () => (/* binding */ setCollapseStateLevelsDown),\n/* harmony export */ setCollapseStateLevelsUp: () => (/* binding */ setCollapseStateLevelsUp),\n/* harmony export */ setCollapseStateUp: () => (/* binding */ setCollapseStateUp),\n/* harmony export */ toggleCollapseState: () => (/* binding */ toggleCollapseState)\n/* harmony export */ });\n/* harmony import */ var _base_common_event_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../../base/common/event.js */ \"./node_modules/monaco-editor/esm/vs/base/common/event.js\");\n/* harmony import */ var _foldingRanges_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./foldingRanges.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/folding/browser/foldingRanges.js\");\n/* harmony import */ var _base_common_hash_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../../base/common/hash.js */ \"./node_modules/monaco-editor/esm/vs/base/common/hash.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n\n\nclass FoldingModel {\n get regions() { return this._regions; }\n get textModel() { return this._textModel; }\n constructor(textModel, decorationProvider) {\n this._updateEventEmitter = new _base_common_event_js__WEBPACK_IMPORTED_MODULE_0__.Emitter();\n this.onDidChange = this._updateEventEmitter.event;\n this._textModel = textModel;\n this._decorationProvider = decorationProvider;\n this._regions = new _foldingRanges_js__WEBPACK_IMPORTED_MODULE_1__.FoldingRegions(new Uint32Array(0), new Uint32Array(0));\n this._editorDecorationIds = [];\n }\n toggleCollapseState(toggledRegions) {\n if (!toggledRegions.length) {\n return;\n }\n toggledRegions = toggledRegions.sort((r1, r2) => r1.regionIndex - r2.regionIndex);\n const processed = {};\n this._decorationProvider.changeDecorations(accessor => {\n let k = 0; // index from [0 ... this.regions.length]\n let dirtyRegionEndLine = -1; // end of the range where decorations need to be updated\n let lastHiddenLine = -1; // the end of the last hidden lines\n const updateDecorationsUntil = (index) => {\n while (k < index) {\n const endLineNumber = this._regions.getEndLineNumber(k);\n const isCollapsed = this._regions.isCollapsed(k);\n if (endLineNumber <= dirtyRegionEndLine) {\n const isManual = this.regions.getSource(k) !== 0 /* FoldSource.provider */;\n accessor.changeDecorationOptions(this._editorDecorationIds[k], this._decorationProvider.getDecorationOption(isCollapsed, endLineNumber <= lastHiddenLine, isManual));\n }\n if (isCollapsed && endLineNumber > lastHiddenLine) {\n lastHiddenLine = endLineNumber;\n }\n k++;\n }\n };\n for (const region of toggledRegions) {\n const index = region.regionIndex;\n const editorDecorationId = this._editorDecorationIds[index];\n if (editorDecorationId && !processed[editorDecorationId]) {\n processed[editorDecorationId] = true;\n updateDecorationsUntil(index); // update all decorations up to current index using the old dirtyRegionEndLine\n const newCollapseState = !this._regions.isCollapsed(index);\n this._regions.setCollapsed(index, newCollapseState);\n dirtyRegionEndLine = Math.max(dirtyRegionEndLine, this._regions.getEndLineNumber(index));\n }\n }\n updateDecorationsUntil(this._regions.length);\n });\n this._updateEventEmitter.fire({ model: this, collapseStateChanged: toggledRegions });\n }\n removeManualRanges(ranges) {\n const newFoldingRanges = new Array();\n const intersects = (foldRange) => {\n for (const range of ranges) {\n if (!(range.startLineNumber > foldRange.endLineNumber || foldRange.startLineNumber > range.endLineNumber)) {\n return true;\n }\n }\n return false;\n };\n for (let i = 0; i < this._regions.length; i++) {\n const foldRange = this._regions.toFoldRange(i);\n if (foldRange.source === 0 /* FoldSource.provider */ || !intersects(foldRange)) {\n newFoldingRanges.push(foldRange);\n }\n }\n this.updatePost(_foldingRanges_js__WEBPACK_IMPORTED_MODULE_1__.FoldingRegions.fromFoldRanges(newFoldingRanges));\n }\n update(newRegions, blockedLineNumers = []) {\n const foldedOrManualRanges = this._currentFoldedOrManualRanges(blockedLineNumers);\n const newRanges = _foldingRanges_js__WEBPACK_IMPORTED_MODULE_1__.FoldingRegions.sanitizeAndMerge(newRegions, foldedOrManualRanges, this._textModel.getLineCount());\n this.updatePost(_foldingRanges_js__WEBPACK_IMPORTED_MODULE_1__.FoldingRegions.fromFoldRanges(newRanges));\n }\n updatePost(newRegions) {\n const newEditorDecorations = [];\n let lastHiddenLine = -1;\n for (let index = 0, limit = newRegions.length; index < limit; index++) {\n const startLineNumber = newRegions.getStartLineNumber(index);\n const endLineNumber = newRegions.getEndLineNumber(index);\n const isCollapsed = newRegions.isCollapsed(index);\n const isManual = newRegions.getSource(index) !== 0 /* FoldSource.provider */;\n const decorationRange = {\n startLineNumber: startLineNumber,\n startColumn: this._textModel.getLineMaxColumn(startLineNumber),\n endLineNumber: endLineNumber,\n endColumn: this._textModel.getLineMaxColumn(endLineNumber) + 1\n };\n newEditorDecorations.push({ range: decorationRange, options: this._decorationProvider.getDecorationOption(isCollapsed, endLineNumber <= lastHiddenLine, isManual) });\n if (isCollapsed && endLineNumber > lastHiddenLine) {\n lastHiddenLine = endLineNumber;\n }\n }\n this._decorationProvider.changeDecorations(accessor => this._editorDecorationIds = accessor.deltaDecorations(this._editorDecorationIds, newEditorDecorations));\n this._regions = newRegions;\n this._updateEventEmitter.fire({ model: this });\n }\n _currentFoldedOrManualRanges(blockedLineNumers = []) {\n const isBlocked = (startLineNumber, endLineNumber) => {\n for (const blockedLineNumber of blockedLineNumers) {\n if (startLineNumber < blockedLineNumber && blockedLineNumber <= endLineNumber) { // first line is visible\n return true;\n }\n }\n return false;\n };\n const foldedRanges = [];\n for (let i = 0, limit = this._regions.length; i < limit; i++) {\n let isCollapsed = this.regions.isCollapsed(i);\n const source = this.regions.getSource(i);\n if (isCollapsed || source !== 0 /* FoldSource.provider */) {\n const foldRange = this._regions.toFoldRange(i);\n const decRange = this._textModel.getDecorationRange(this._editorDecorationIds[i]);\n if (decRange) {\n if (isCollapsed && isBlocked(decRange.startLineNumber, decRange.endLineNumber)) {\n isCollapsed = false; // uncollapse is the range is blocked\n }\n foldedRanges.push({\n startLineNumber: decRange.startLineNumber,\n endLineNumber: decRange.endLineNumber,\n type: foldRange.type,\n isCollapsed,\n source\n });\n }\n }\n }\n return foldedRanges;\n }\n /**\n * Collapse state memento, for persistence only\n */\n getMemento() {\n const foldedOrManualRanges = this._currentFoldedOrManualRanges();\n const result = [];\n const maxLineNumber = this._textModel.getLineCount();\n for (let i = 0, limit = foldedOrManualRanges.length; i < limit; i++) {\n const range = foldedOrManualRanges[i];\n if (range.startLineNumber >= range.endLineNumber || range.startLineNumber < 1 || range.endLineNumber > maxLineNumber) {\n continue;\n }\n const checksum = this._getLinesChecksum(range.startLineNumber + 1, range.endLineNumber);\n result.push({\n startLineNumber: range.startLineNumber,\n endLineNumber: range.endLineNumber,\n isCollapsed: range.isCollapsed,\n source: range.source,\n checksum: checksum\n });\n }\n return (result.length > 0) ? result : undefined;\n }\n /**\n * Apply persisted state, for persistence only\n */\n applyMemento(state) {\n var _a, _b;\n if (!Array.isArray(state)) {\n return;\n }\n const rangesToRestore = [];\n const maxLineNumber = this._textModel.getLineCount();\n for (const range of state) {\n if (range.startLineNumber >= range.endLineNumber || range.startLineNumber < 1 || range.endLineNumber > maxLineNumber) {\n continue;\n }\n const checksum = this._getLinesChecksum(range.startLineNumber + 1, range.endLineNumber);\n if (!range.checksum || checksum === range.checksum) {\n rangesToRestore.push({\n startLineNumber: range.startLineNumber,\n endLineNumber: range.endLineNumber,\n type: undefined,\n isCollapsed: (_a = range.isCollapsed) !== null && _a !== void 0 ? _a : true,\n source: (_b = range.source) !== null && _b !== void 0 ? _b : 0 /* FoldSource.provider */\n });\n }\n }\n const newRanges = _foldingRanges_js__WEBPACK_IMPORTED_MODULE_1__.FoldingRegions.sanitizeAndMerge(this._regions, rangesToRestore, maxLineNumber);\n this.updatePost(_foldingRanges_js__WEBPACK_IMPORTED_MODULE_1__.FoldingRegions.fromFoldRanges(newRanges));\n }\n _getLinesChecksum(lineNumber1, lineNumber2) {\n const h = (0,_base_common_hash_js__WEBPACK_IMPORTED_MODULE_2__.hash)(this._textModel.getLineContent(lineNumber1)\n + this._textModel.getLineContent(lineNumber2));\n return h % 1000000; // 6 digits is plenty\n }\n dispose() {\n this._decorationProvider.removeDecorations(this._editorDecorationIds);\n }\n getAllRegionsAtLine(lineNumber, filter) {\n const result = [];\n if (this._regions) {\n let index = this._regions.findRange(lineNumber);\n let level = 1;\n while (index >= 0) {\n const current = this._regions.toRegion(index);\n if (!filter || filter(current, level)) {\n result.push(current);\n }\n level++;\n index = current.parentIndex;\n }\n }\n return result;\n }\n getRegionAtLine(lineNumber) {\n if (this._regions) {\n const index = this._regions.findRange(lineNumber);\n if (index >= 0) {\n return this._regions.toRegion(index);\n }\n }\n return null;\n }\n getRegionsInside(region, filter) {\n const result = [];\n const index = region ? region.regionIndex + 1 : 0;\n const endLineNumber = region ? region.endLineNumber : Number.MAX_VALUE;\n if (filter && filter.length === 2) {\n const levelStack = [];\n for (let i = index, len = this._regions.length; i < len; i++) {\n const current = this._regions.toRegion(i);\n if (this._regions.getStartLineNumber(i) < endLineNumber) {\n while (levelStack.length > 0 && !current.containedBy(levelStack[levelStack.length - 1])) {\n levelStack.pop();\n }\n levelStack.push(current);\n if (filter(current, levelStack.length)) {\n result.push(current);\n }\n }\n else {\n break;\n }\n }\n }\n else {\n for (let i = index, len = this._regions.length; i < len; i++) {\n const current = this._regions.toRegion(i);\n if (this._regions.getStartLineNumber(i) < endLineNumber) {\n if (!filter || filter(current)) {\n result.push(current);\n }\n }\n else {\n break;\n }\n }\n }\n return result;\n }\n}\n/**\n * Collapse or expand the regions at the given locations\n * @param levels The number of levels. Use 1 to only impact the regions at the location, use Number.MAX_VALUE for all levels.\n * @param lineNumbers the location of the regions to collapse or expand, or if not set, all regions in the model.\n */\nfunction toggleCollapseState(foldingModel, levels, lineNumbers) {\n const toToggle = [];\n for (const lineNumber of lineNumbers) {\n const region = foldingModel.getRegionAtLine(lineNumber);\n if (region) {\n const doCollapse = !region.isCollapsed;\n toToggle.push(region);\n if (levels > 1) {\n const regionsInside = foldingModel.getRegionsInside(region, (r, level) => r.isCollapsed !== doCollapse && level < levels);\n toToggle.push(...regionsInside);\n }\n }\n }\n foldingModel.toggleCollapseState(toToggle);\n}\n/**\n * Collapse or expand the regions at the given locations including all children.\n * @param doCollapse Whether to collapse or expand\n * @param levels The number of levels. Use 1 to only impact the regions at the location, use Number.MAX_VALUE for all levels.\n * @param lineNumbers the location of the regions to collapse or expand, or if not set, all regions in the model.\n */\nfunction setCollapseStateLevelsDown(foldingModel, doCollapse, levels = Number.MAX_VALUE, lineNumbers) {\n const toToggle = [];\n if (lineNumbers && lineNumbers.length > 0) {\n for (const lineNumber of lineNumbers) {\n const region = foldingModel.getRegionAtLine(lineNumber);\n if (region) {\n if (region.isCollapsed !== doCollapse) {\n toToggle.push(region);\n }\n if (levels > 1) {\n const regionsInside = foldingModel.getRegionsInside(region, (r, level) => r.isCollapsed !== doCollapse && level < levels);\n toToggle.push(...regionsInside);\n }\n }\n }\n }\n else {\n const regionsInside = foldingModel.getRegionsInside(null, (r, level) => r.isCollapsed !== doCollapse && level < levels);\n toToggle.push(...regionsInside);\n }\n foldingModel.toggleCollapseState(toToggle);\n}\n/**\n * Collapse or expand the regions at the given locations including all parents.\n * @param doCollapse Whether to collapse or expand\n * @param levels The number of levels. Use 1 to only impact the regions at the location, use Number.MAX_VALUE for all levels.\n * @param lineNumbers the location of the regions to collapse or expand.\n */\nfunction setCollapseStateLevelsUp(foldingModel, doCollapse, levels, lineNumbers) {\n const toToggle = [];\n for (const lineNumber of lineNumbers) {\n const regions = foldingModel.getAllRegionsAtLine(lineNumber, (region, level) => region.isCollapsed !== doCollapse && level <= levels);\n toToggle.push(...regions);\n }\n foldingModel.toggleCollapseState(toToggle);\n}\n/**\n * Collapse or expand a region at the given locations. If the inner most region is already collapsed/expanded, uses the first parent instead.\n * @param doCollapse Whether to collapse or expand\n * @param lineNumbers the location of the regions to collapse or expand.\n */\nfunction setCollapseStateUp(foldingModel, doCollapse, lineNumbers) {\n const toToggle = [];\n for (const lineNumber of lineNumbers) {\n const regions = foldingModel.getAllRegionsAtLine(lineNumber, (region) => region.isCollapsed !== doCollapse);\n if (regions.length > 0) {\n toToggle.push(regions[0]);\n }\n }\n foldingModel.toggleCollapseState(toToggle);\n}\n/**\n * Folds or unfolds all regions that have a given level, except if they contain one of the blocked lines.\n * @param foldLevel level. Level == 1 is the top level\n * @param doCollapse Whether to collapse or expand\n*/\nfunction setCollapseStateAtLevel(foldingModel, foldLevel, doCollapse, blockedLineNumbers) {\n const filter = (region, level) => level === foldLevel && region.isCollapsed !== doCollapse && !blockedLineNumbers.some(line => region.containsLine(line));\n const toToggle = foldingModel.getRegionsInside(null, filter);\n foldingModel.toggleCollapseState(toToggle);\n}\n/**\n * Folds or unfolds all regions, except if they contain or are contained by a region of one of the blocked lines.\n * @param doCollapse Whether to collapse or expand\n * @param blockedLineNumbers the location of regions to not collapse or expand\n */\nfunction setCollapseStateForRest(foldingModel, doCollapse, blockedLineNumbers) {\n const filteredRegions = [];\n for (const lineNumber of blockedLineNumbers) {\n const regions = foldingModel.getAllRegionsAtLine(lineNumber, undefined);\n if (regions.length > 0) {\n filteredRegions.push(regions[0]);\n }\n }\n const filter = (region) => filteredRegions.every((filteredRegion) => !filteredRegion.containedBy(region) && !region.containedBy(filteredRegion)) && region.isCollapsed !== doCollapse;\n const toToggle = foldingModel.getRegionsInside(null, filter);\n foldingModel.toggleCollapseState(toToggle);\n}\n/**\n * Folds all regions for which the lines start with a given regex\n * @param foldingModel the folding model\n */\nfunction setCollapseStateForMatchingLines(foldingModel, regExp, doCollapse) {\n const editorModel = foldingModel.textModel;\n const regions = foldingModel.regions;\n const toToggle = [];\n for (let i = regions.length - 1; i >= 0; i--) {\n if (doCollapse !== regions.isCollapsed(i)) {\n const startLineNumber = regions.getStartLineNumber(i);\n if (regExp.test(editorModel.getLineContent(startLineNumber))) {\n toToggle.push(regions.toRegion(i));\n }\n }\n }\n foldingModel.toggleCollapseState(toToggle);\n}\n/**\n * Folds all regions of the given type\n * @param foldingModel the folding model\n */\nfunction setCollapseStateForType(foldingModel, type, doCollapse) {\n const regions = foldingModel.regions;\n const toToggle = [];\n for (let i = regions.length - 1; i >= 0; i--) {\n if (doCollapse !== regions.isCollapsed(i) && type === regions.getType(i)) {\n toToggle.push(regions.toRegion(i));\n }\n }\n foldingModel.toggleCollapseState(toToggle);\n}\n/**\n * Get line to go to for parent fold of current line\n * @param lineNumber the current line number\n * @param foldingModel the folding model\n *\n * @return Parent fold start line\n */\nfunction getParentFoldLine(lineNumber, foldingModel) {\n let startLineNumber = null;\n const foldingRegion = foldingModel.getRegionAtLine(lineNumber);\n if (foldingRegion !== null) {\n startLineNumber = foldingRegion.startLineNumber;\n // If current line is not the start of the current fold, go to top line of current fold. If not, go to parent fold\n if (lineNumber === startLineNumber) {\n const parentFoldingIdx = foldingRegion.parentIndex;\n if (parentFoldingIdx !== -1) {\n startLineNumber = foldingModel.regions.getStartLineNumber(parentFoldingIdx);\n }\n else {\n startLineNumber = null;\n }\n }\n }\n return startLineNumber;\n}\n/**\n * Get line to go to for previous fold at the same level of current line\n * @param lineNumber the current line number\n * @param foldingModel the folding model\n *\n * @return Previous fold start line\n */\nfunction getPreviousFoldLine(lineNumber, foldingModel) {\n let foldingRegion = foldingModel.getRegionAtLine(lineNumber);\n // If on the folding range start line, go to previous sibling.\n if (foldingRegion !== null && foldingRegion.startLineNumber === lineNumber) {\n // If current line is not the start of the current fold, go to top line of current fold. If not, go to previous fold.\n if (lineNumber !== foldingRegion.startLineNumber) {\n return foldingRegion.startLineNumber;\n }\n else {\n // Find min line number to stay within parent.\n const expectedParentIndex = foldingRegion.parentIndex;\n let minLineNumber = 0;\n if (expectedParentIndex !== -1) {\n minLineNumber = foldingModel.regions.getStartLineNumber(foldingRegion.parentIndex);\n }\n // Find fold at same level.\n while (foldingRegion !== null) {\n if (foldingRegion.regionIndex > 0) {\n foldingRegion = foldingModel.regions.toRegion(foldingRegion.regionIndex - 1);\n // Keep at same level.\n if (foldingRegion.startLineNumber <= minLineNumber) {\n return null;\n }\n else if (foldingRegion.parentIndex === expectedParentIndex) {\n return foldingRegion.startLineNumber;\n }\n }\n else {\n return null;\n }\n }\n }\n }\n else {\n // Go to last fold that's before the current line.\n if (foldingModel.regions.length > 0) {\n foldingRegion = foldingModel.regions.toRegion(foldingModel.regions.length - 1);\n while (foldingRegion !== null) {\n // Found fold before current line.\n if (foldingRegion.startLineNumber < lineNumber) {\n return foldingRegion.startLineNumber;\n }\n if (foldingRegion.regionIndex > 0) {\n foldingRegion = foldingModel.regions.toRegion(foldingRegion.regionIndex - 1);\n }\n else {\n foldingRegion = null;\n }\n }\n }\n }\n return null;\n}\n/**\n * Get line to go to next fold at the same level of current line\n * @param lineNumber the current line number\n * @param foldingModel the folding model\n *\n * @return Next fold start line\n */\nfunction getNextFoldLine(lineNumber, foldingModel) {\n let foldingRegion = foldingModel.getRegionAtLine(lineNumber);\n // If on the folding range start line, go to next sibling.\n if (foldingRegion !== null && foldingRegion.startLineNumber === lineNumber) {\n // Find max line number to stay within parent.\n const expectedParentIndex = foldingRegion.parentIndex;\n let maxLineNumber = 0;\n if (expectedParentIndex !== -1) {\n maxLineNumber = foldingModel.regions.getEndLineNumber(foldingRegion.parentIndex);\n }\n else if (foldingModel.regions.length === 0) {\n return null;\n }\n else {\n maxLineNumber = foldingModel.regions.getEndLineNumber(foldingModel.regions.length - 1);\n }\n // Find fold at same level.\n while (foldingRegion !== null) {\n if (foldingRegion.regionIndex < foldingModel.regions.length) {\n foldingRegion = foldingModel.regions.toRegion(foldingRegion.regionIndex + 1);\n // Keep at same level.\n if (foldingRegion.startLineNumber >= maxLineNumber) {\n return null;\n }\n else if (foldingRegion.parentIndex === expectedParentIndex) {\n return foldingRegion.startLineNumber;\n }\n }\n else {\n return null;\n }\n }\n }\n else {\n // Go to first fold that's after the current line.\n if (foldingModel.regions.length > 0) {\n foldingRegion = foldingModel.regions.toRegion(0);\n while (foldingRegion !== null) {\n // Found fold after current line.\n if (foldingRegion.startLineNumber > lineNumber) {\n return foldingRegion.startLineNumber;\n }\n if (foldingRegion.regionIndex < foldingModel.regions.length) {\n foldingRegion = foldingModel.regions.toRegion(foldingRegion.regionIndex + 1);\n }\n else {\n foldingRegion = null;\n }\n }\n }\n }\n return null;\n}\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/contrib/folding/browser/foldingModel.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/contrib/folding/browser/foldingRanges.js":
/*!*******************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/contrib/folding/browser/foldingRanges.js ***!
\*******************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ FoldingRegion: () => (/* binding */ FoldingRegion),\n/* harmony export */ FoldingRegions: () => (/* binding */ FoldingRegions),\n/* harmony export */ MAX_FOLDING_REGIONS: () => (/* binding */ MAX_FOLDING_REGIONS),\n/* harmony export */ MAX_LINE_NUMBER: () => (/* binding */ MAX_LINE_NUMBER),\n/* harmony export */ foldSourceAbbr: () => (/* binding */ foldSourceAbbr)\n/* harmony export */ });\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\nconst foldSourceAbbr = {\n [0 /* FoldSource.provider */]: ' ',\n [1 /* FoldSource.userDefined */]: 'u',\n [2 /* FoldSource.recovered */]: 'r',\n};\nconst MAX_FOLDING_REGIONS = 0xFFFF;\nconst MAX_LINE_NUMBER = 0xFFFFFF;\nconst MASK_INDENT = 0xFF000000;\nclass BitField {\n constructor(size) {\n const numWords = Math.ceil(size / 32);\n this._states = new Uint32Array(numWords);\n }\n get(index) {\n const arrayIndex = (index / 32) | 0;\n const bit = index % 32;\n return (this._states[arrayIndex] & (1 << bit)) !== 0;\n }\n set(index, newState) {\n const arrayIndex = (index / 32) | 0;\n const bit = index % 32;\n const value = this._states[arrayIndex];\n if (newState) {\n this._states[arrayIndex] = value | (1 << bit);\n }\n else {\n this._states[arrayIndex] = value & ~(1 << bit);\n }\n }\n}\nclass FoldingRegions {\n constructor(startIndexes, endIndexes, types) {\n if (startIndexes.length !== endIndexes.length || startIndexes.length > MAX_FOLDING_REGIONS) {\n throw new Error('invalid startIndexes or endIndexes size');\n }\n this._startIndexes = startIndexes;\n this._endIndexes = endIndexes;\n this._collapseStates = new BitField(startIndexes.length);\n this._userDefinedStates = new BitField(startIndexes.length);\n this._recoveredStates = new BitField(startIndexes.length);\n this._types = types;\n this._parentsComputed = false;\n }\n ensureParentIndices() {\n if (!this._parentsComputed) {\n this._parentsComputed = true;\n const parentIndexes = [];\n const isInsideLast = (startLineNumber, endLineNumber) => {\n const index = parentIndexes[parentIndexes.length - 1];\n return this.getStartLineNumber(index) <= startLineNumber && this.getEndLineNumber(index) >= endLineNumber;\n };\n for (let i = 0, len = this._startIndexes.length; i < len; i++) {\n const startLineNumber = this._startIndexes[i];\n const endLineNumber = this._endIndexes[i];\n if (startLineNumber > MAX_LINE_NUMBER || endLineNumber > MAX_LINE_NUMBER) {\n throw new Error('startLineNumber or endLineNumber must not exceed ' + MAX_LINE_NUMBER);\n }\n while (parentIndexes.length > 0 && !isInsideLast(startLineNumber, endLineNumber)) {\n parentIndexes.pop();\n }\n const parentIndex = parentIndexes.length > 0 ? parentIndexes[parentIndexes.length - 1] : -1;\n parentIndexes.push(i);\n this._startIndexes[i] = startLineNumber + ((parentIndex & 0xFF) << 24);\n this._endIndexes[i] = endLineNumber + ((parentIndex & 0xFF00) << 16);\n }\n }\n }\n get length() {\n return this._startIndexes.length;\n }\n getStartLineNumber(index) {\n return this._startIndexes[index] & MAX_LINE_NUMBER;\n }\n getEndLineNumber(index) {\n return this._endIndexes[index] & MAX_LINE_NUMBER;\n }\n getType(index) {\n return this._types ? this._types[index] : undefined;\n }\n hasTypes() {\n return !!this._types;\n }\n isCollapsed(index) {\n return this._collapseStates.get(index);\n }\n setCollapsed(index, newState) {\n this._collapseStates.set(index, newState);\n }\n isUserDefined(index) {\n return this._userDefinedStates.get(index);\n }\n setUserDefined(index, newState) {\n return this._userDefinedStates.set(index, newState);\n }\n isRecovered(index) {\n return this._recoveredStates.get(index);\n }\n setRecovered(index, newState) {\n return this._recoveredStates.set(index, newState);\n }\n getSource(index) {\n if (this.isUserDefined(index)) {\n return 1 /* FoldSource.userDefined */;\n }\n else if (this.isRecovered(index)) {\n return 2 /* FoldSource.recovered */;\n }\n return 0 /* FoldSource.provider */;\n }\n setSource(index, source) {\n if (source === 1 /* FoldSource.userDefined */) {\n this.setUserDefined(index, true);\n this.setRecovered(index, false);\n }\n else if (source === 2 /* FoldSource.recovered */) {\n this.setUserDefined(index, false);\n this.setRecovered(index, true);\n }\n else {\n this.setUserDefined(index, false);\n this.setRecovered(index, false);\n }\n }\n setCollapsedAllOfType(type, newState) {\n let hasChanged = false;\n if (this._types) {\n for (let i = 0; i < this._types.length; i++) {\n if (this._types[i] === type) {\n this.setCollapsed(i, newState);\n hasChanged = true;\n }\n }\n }\n return hasChanged;\n }\n toRegion(index) {\n return new FoldingRegion(this, index);\n }\n getParentIndex(index) {\n this.ensureParentIndices();\n const parent = ((this._startIndexes[index] & MASK_INDENT) >>> 24) + ((this._endIndexes[index] & MASK_INDENT) >>> 16);\n if (parent === MAX_FOLDING_REGIONS) {\n return -1;\n }\n return parent;\n }\n contains(index, line) {\n return this.getStartLineNumber(index) <= line && this.getEndLineNumber(index) >= line;\n }\n findIndex(line) {\n let low = 0, high = this._startIndexes.length;\n if (high === 0) {\n return -1; // no children\n }\n while (low < high) {\n const mid = Math.floor((low + high) / 2);\n if (line < this.getStartLineNumber(mid)) {\n high = mid;\n }\n else {\n low = mid + 1;\n }\n }\n return low - 1;\n }\n findRange(line) {\n let index = this.findIndex(line);\n if (index >= 0) {\n const endLineNumber = this.getEndLineNumber(index);\n if (endLineNumber >= line) {\n return index;\n }\n index = this.getParentIndex(index);\n while (index !== -1) {\n if (this.contains(index, line)) {\n return index;\n }\n index = this.getParentIndex(index);\n }\n }\n return -1;\n }\n toString() {\n const res = [];\n for (let i = 0; i < this.length; i++) {\n res[i] = `[${foldSourceAbbr[this.getSource(i)]}${this.isCollapsed(i) ? '+' : '-'}] ${this.getStartLineNumber(i)}/${this.getEndLineNumber(i)}`;\n }\n return res.join(', ');\n }\n toFoldRange(index) {\n return {\n startLineNumber: this._startIndexes[index] & MAX_LINE_NUMBER,\n endLineNumber: this._endIndexes[index] & MAX_LINE_NUMBER,\n type: this._types ? this._types[index] : undefined,\n isCollapsed: this.isCollapsed(index),\n source: this.getSource(index)\n };\n }\n static fromFoldRanges(ranges) {\n const rangesLength = ranges.length;\n const startIndexes = new Uint32Array(rangesLength);\n const endIndexes = new Uint32Array(rangesLength);\n let types = [];\n let gotTypes = false;\n for (let i = 0; i < rangesLength; i++) {\n const range = ranges[i];\n startIndexes[i] = range.startLineNumber;\n endIndexes[i] = range.endLineNumber;\n types.push(range.type);\n if (range.type) {\n gotTypes = true;\n }\n }\n if (!gotTypes) {\n types = undefined;\n }\n const regions = new FoldingRegions(startIndexes, endIndexes, types);\n for (let i = 0; i < rangesLength; i++) {\n if (ranges[i].isCollapsed) {\n regions.setCollapsed(i, true);\n }\n regions.setSource(i, ranges[i].source);\n }\n return regions;\n }\n /**\n * Two inputs, each a FoldingRegions or a FoldRange[], are merged.\n * Each input must be pre-sorted on startLineNumber.\n * The first list is assumed to always include all regions currently defined by range providers.\n * The second list only contains the previously collapsed and all manual ranges.\n * If the line position matches, the range of the new range is taken, and the range is no longer manual\n * When an entry in one list overlaps an entry in the other, the second list's entry \"wins\" and\n * overlapping entries in the first list are discarded.\n * Invalid entries are discarded. An entry is invalid if:\n * \t\tthe start and end line numbers aren't a valid range of line numbers,\n * \t\tit is out of sequence or has the same start line as a preceding entry,\n * \t\tit overlaps a preceding entry and is not fully contained by that entry.\n */\n static sanitizeAndMerge(rangesA, rangesB, maxLineNumber) {\n maxLineNumber = maxLineNumber !== null && maxLineNumber !== void 0 ? maxLineNumber : Number.MAX_VALUE;\n const getIndexedFunction = (r, limit) => {\n return Array.isArray(r)\n ? ((i) => { return (i < limit) ? r[i] : undefined; })\n : ((i) => { return (i < limit) ? r.toFoldRange(i) : undefined; });\n };\n const getA = getIndexedFunction(rangesA, rangesA.length);\n const getB = getIndexedFunction(rangesB, rangesB.length);\n let indexA = 0;\n let indexB = 0;\n let nextA = getA(0);\n let nextB = getB(0);\n const stackedRanges = [];\n let topStackedRange;\n let prevLineNumber = 0;\n const resultRanges = [];\n while (nextA || nextB) {\n let useRange = undefined;\n if (nextB && (!nextA || nextA.startLineNumber >= nextB.startLineNumber)) {\n if (nextA && nextA.startLineNumber === nextB.startLineNumber) {\n if (nextB.source === 1 /* FoldSource.userDefined */) {\n // a user defined range (possibly unfolded)\n useRange = nextB;\n }\n else {\n // a previously folded range or a (possibly unfolded) recovered range\n useRange = nextA;\n useRange.isCollapsed = nextB.isCollapsed && nextA.endLineNumber === nextB.endLineNumber;\n useRange.source = 0 /* FoldSource.provider */;\n }\n nextA = getA(++indexA); // not necessary, just for speed\n }\n else {\n useRange = nextB;\n if (nextB.isCollapsed && nextB.source === 0 /* FoldSource.provider */) {\n // a previously collapsed range\n useRange.source = 2 /* FoldSource.recovered */;\n }\n }\n nextB = getB(++indexB);\n }\n else {\n // nextA is next. The user folded B set takes precedence and we sometimes need to look\n // ahead in it to check for an upcoming conflict.\n let scanIndex = indexB;\n let prescanB = nextB;\n while (true) {\n if (!prescanB || prescanB.startLineNumber > nextA.endLineNumber) {\n useRange = nextA;\n break; // no conflict, use this nextA\n }\n if (prescanB.source === 1 /* FoldSource.userDefined */ && prescanB.endLineNumber > nextA.endLineNumber) {\n // we found a user folded range, it wins\n break; // without setting nextResult, so this nextA gets skipped\n }\n prescanB = getB(++scanIndex);\n }\n nextA = getA(++indexA);\n }\n if (useRange) {\n while (topStackedRange\n && topStackedRange.endLineNumber < useRange.startLineNumber) {\n topStackedRange = stackedRanges.pop();\n }\n if (useRange.endLineNumber > useRange.startLineNumber\n && useRange.startLineNumber > prevLineNumber\n && useRange.endLineNumber <= maxLineNumber\n && (!topStackedRange\n || topStackedRange.endLineNumber >= useRange.endLineNumber)) {\n resultRanges.push(useRange);\n prevLineNumber = useRange.startLineNumber;\n if (topStackedRange) {\n stackedRanges.push(topStackedRange);\n }\n topStackedRange = useRange;\n }\n }\n }\n return resultRanges;\n }\n}\nclass FoldingRegion {\n constructor(ranges, index) {\n this.ranges = ranges;\n this.index = index;\n }\n get startLineNumber() {\n return this.ranges.getStartLineNumber(this.index);\n }\n get endLineNumber() {\n return this.ranges.getEndLineNumber(this.index);\n }\n get regionIndex() {\n return this.index;\n }\n get parentIndex() {\n return this.ranges.getParentIndex(this.index);\n }\n get isCollapsed() {\n return this.ranges.isCollapsed(this.index);\n }\n containedBy(range) {\n return range.startLineNumber <= this.startLineNumber && range.endLineNumber >= this.endLineNumber;\n }\n containsLine(lineNumber) {\n return this.startLineNumber <= lineNumber && lineNumber <= this.endLineNumber;\n }\n}\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/contrib/folding/browser/foldingRanges.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/contrib/folding/browser/hiddenRangeModel.js":
/*!**********************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/contrib/folding/browser/hiddenRangeModel.js ***!
\**********************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ HiddenRangeModel: () => (/* binding */ HiddenRangeModel)\n/* harmony export */ });\n/* harmony import */ var _base_common_arraysFind_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../../base/common/arraysFind.js */ \"./node_modules/monaco-editor/esm/vs/base/common/arraysFind.js\");\n/* harmony import */ var _base_common_event_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../base/common/event.js */ \"./node_modules/monaco-editor/esm/vs/base/common/event.js\");\n/* harmony import */ var _common_core_range_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../common/core/range.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/core/range.js\");\n/* harmony import */ var _common_core_eolCounter_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../../common/core/eolCounter.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/core/eolCounter.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n\n\n\nclass HiddenRangeModel {\n get onDidChange() { return this._updateEventEmitter.event; }\n get hiddenRanges() { return this._hiddenRanges; }\n constructor(model) {\n this._updateEventEmitter = new _base_common_event_js__WEBPACK_IMPORTED_MODULE_1__.Emitter();\n this._hasLineChanges = false;\n this._foldingModel = model;\n this._foldingModelListener = model.onDidChange(_ => this.updateHiddenRanges());\n this._hiddenRanges = [];\n if (model.regions.length) {\n this.updateHiddenRanges();\n }\n }\n notifyChangeModelContent(e) {\n if (this._hiddenRanges.length && !this._hasLineChanges) {\n this._hasLineChanges = e.changes.some(change => {\n return change.range.endLineNumber !== change.range.startLineNumber || (0,_common_core_eolCounter_js__WEBPACK_IMPORTED_MODULE_3__.countEOL)(change.text)[0] !== 0;\n });\n }\n }\n updateHiddenRanges() {\n let updateHiddenAreas = false;\n const newHiddenAreas = [];\n let i = 0; // index into hidden\n let k = 0;\n let lastCollapsedStart = Number.MAX_VALUE;\n let lastCollapsedEnd = -1;\n const ranges = this._foldingModel.regions;\n for (; i < ranges.length; i++) {\n if (!ranges.isCollapsed(i)) {\n continue;\n }\n const startLineNumber = ranges.getStartLineNumber(i) + 1; // the first line is not hidden\n const endLineNumber = ranges.getEndLineNumber(i);\n if (lastCollapsedStart <= startLineNumber && endLineNumber <= lastCollapsedEnd) {\n // ignore ranges contained in collapsed regions\n continue;\n }\n if (!updateHiddenAreas && k < this._hiddenRanges.length && this._hiddenRanges[k].startLineNumber === startLineNumber && this._hiddenRanges[k].endLineNumber === endLineNumber) {\n // reuse the old ranges\n newHiddenAreas.push(this._hiddenRanges[k]);\n k++;\n }\n else {\n updateHiddenAreas = true;\n newHiddenAreas.push(new _common_core_range_js__WEBPACK_IMPORTED_MODULE_2__.Range(startLineNumber, 1, endLineNumber, 1));\n }\n lastCollapsedStart = startLineNumber;\n lastCollapsedEnd = endLineNumber;\n }\n if (this._hasLineChanges || updateHiddenAreas || k < this._hiddenRanges.length) {\n this.applyHiddenRanges(newHiddenAreas);\n }\n }\n applyHiddenRanges(newHiddenAreas) {\n this._hiddenRanges = newHiddenAreas;\n this._hasLineChanges = false;\n this._updateEventEmitter.fire(newHiddenAreas);\n }\n hasRanges() {\n return this._hiddenRanges.length > 0;\n }\n isHidden(line) {\n return findRange(this._hiddenRanges, line) !== null;\n }\n adjustSelections(selections) {\n let hasChanges = false;\n const editorModel = this._foldingModel.textModel;\n let lastRange = null;\n const adjustLine = (line) => {\n if (!lastRange || !isInside(line, lastRange)) {\n lastRange = findRange(this._hiddenRanges, line);\n }\n if (lastRange) {\n return lastRange.startLineNumber - 1;\n }\n return null;\n };\n for (let i = 0, len = selections.length; i < len; i++) {\n let selection = selections[i];\n const adjustedStartLine = adjustLine(selection.startLineNumber);\n if (adjustedStartLine) {\n selection = selection.setStartPosition(adjustedStartLine, editorModel.getLineMaxColumn(adjustedStartLine));\n hasChanges = true;\n }\n const adjustedEndLine = adjustLine(selection.endLineNumber);\n if (adjustedEndLine) {\n selection = selection.setEndPosition(adjustedEndLine, editorModel.getLineMaxColumn(adjustedEndLine));\n hasChanges = true;\n }\n selections[i] = selection;\n }\n return hasChanges;\n }\n dispose() {\n if (this.hiddenRanges.length > 0) {\n this._hiddenRanges = [];\n this._updateEventEmitter.fire(this._hiddenRanges);\n }\n if (this._foldingModelListener) {\n this._foldingModelListener.dispose();\n this._foldingModelListener = null;\n }\n }\n}\nfunction isInside(line, range) {\n return line >= range.startLineNumber && line <= range.endLineNumber;\n}\nfunction findRange(ranges, line) {\n const i = (0,_base_common_arraysFind_js__WEBPACK_IMPORTED_MODULE_0__.findFirstIdxMonotonousOrArrLen)(ranges, r => line < r.startLineNumber) - 1;\n if (i >= 0 && ranges[i].endLineNumber >= line) {\n return ranges[i];\n }\n return null;\n}\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/contrib/folding/browser/hiddenRangeModel.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/contrib/folding/browser/indentRangeProvider.js":
/*!*************************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/contrib/folding/browser/indentRangeProvider.js ***!
\*************************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ IndentRangeProvider: () => (/* binding */ IndentRangeProvider),\n/* harmony export */ RangesCollector: () => (/* binding */ RangesCollector),\n/* harmony export */ computeRanges: () => (/* binding */ computeRanges)\n/* harmony export */ });\n/* harmony import */ var _common_model_utils_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../common/model/utils.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/model/utils.js\");\n/* harmony import */ var _foldingRanges_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./foldingRanges.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/folding/browser/foldingRanges.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n\nconst MAX_FOLDING_REGIONS_FOR_INDENT_DEFAULT = 5000;\nconst ID_INDENT_PROVIDER = 'indent';\nclass IndentRangeProvider {\n constructor(editorModel, languageConfigurationService, foldingRangesLimit) {\n this.editorModel = editorModel;\n this.languageConfigurationService = languageConfigurationService;\n this.foldingRangesLimit = foldingRangesLimit;\n this.id = ID_INDENT_PROVIDER;\n }\n dispose() { }\n compute(cancelationToken) {\n const foldingRules = this.languageConfigurationService.getLanguageConfiguration(this.editorModel.getLanguageId()).foldingRules;\n const offSide = foldingRules && !!foldingRules.offSide;\n const markers = foldingRules && foldingRules.markers;\n return Promise.resolve(computeRanges(this.editorModel, offSide, markers, this.foldingRangesLimit));\n }\n}\n// public only for testing\nclass RangesCollector {\n constructor(foldingRangesLimit) {\n this._startIndexes = [];\n this._endIndexes = [];\n this._indentOccurrences = [];\n this._length = 0;\n this._foldingRangesLimit = foldingRangesLimit;\n }\n insertFirst(startLineNumber, endLineNumber, indent) {\n if (startLineNumber > _foldingRanges_js__WEBPACK_IMPORTED_MODULE_1__.MAX_LINE_NUMBER || endLineNumber > _foldingRanges_js__WEBPACK_IMPORTED_MODULE_1__.MAX_LINE_NUMBER) {\n return;\n }\n const index = this._length;\n this._startIndexes[index] = startLineNumber;\n this._endIndexes[index] = endLineNumber;\n this._length++;\n if (indent < 1000) {\n this._indentOccurrences[indent] = (this._indentOccurrences[indent] || 0) + 1;\n }\n }\n toIndentRanges(model) {\n const limit = this._foldingRangesLimit.limit;\n if (this._length <= limit) {\n this._foldingRangesLimit.update(this._length, false);\n // reverse and create arrays of the exact length\n const startIndexes = new Uint32Array(this._length);\n const endIndexes = new Uint32Array(this._length);\n for (let i = this._length - 1, k = 0; i >= 0; i--, k++) {\n startIndexes[k] = this._startIndexes[i];\n endIndexes[k] = this._endIndexes[i];\n }\n return new _foldingRanges_js__WEBPACK_IMPORTED_MODULE_1__.FoldingRegions(startIndexes, endIndexes);\n }\n else {\n this._foldingRangesLimit.update(this._length, limit);\n let entries = 0;\n let maxIndent = this._indentOccurrences.length;\n for (let i = 0; i < this._indentOccurrences.length; i++) {\n const n = this._indentOccurrences[i];\n if (n) {\n if (n + entries > limit) {\n maxIndent = i;\n break;\n }\n entries += n;\n }\n }\n const tabSize = model.getOptions().tabSize;\n // reverse and create arrays of the exact length\n const startIndexes = new Uint32Array(limit);\n const endIndexes = new Uint32Array(limit);\n for (let i = this._length - 1, k = 0; i >= 0; i--) {\n const startIndex = this._startIndexes[i];\n const lineContent = model.getLineContent(startIndex);\n const indent = (0,_common_model_utils_js__WEBPACK_IMPORTED_MODULE_0__.computeIndentLevel)(lineContent, tabSize);\n if (indent < maxIndent || (indent === maxIndent && entries++ < limit)) {\n startIndexes[k] = startIndex;\n endIndexes[k] = this._endIndexes[i];\n k++;\n }\n }\n return new _foldingRanges_js__WEBPACK_IMPORTED_MODULE_1__.FoldingRegions(startIndexes, endIndexes);\n }\n }\n}\nconst foldingRangesLimitDefault = {\n limit: MAX_FOLDING_REGIONS_FOR_INDENT_DEFAULT,\n update: () => { }\n};\nfunction computeRanges(model, offSide, markers, foldingRangesLimit = foldingRangesLimitDefault) {\n const tabSize = model.getOptions().tabSize;\n const result = new RangesCollector(foldingRangesLimit);\n let pattern = undefined;\n if (markers) {\n pattern = new RegExp(`(${markers.start.source})|(?:${markers.end.source})`);\n }\n const previousRegions = [];\n const line = model.getLineCount() + 1;\n previousRegions.push({ indent: -1, endAbove: line, line }); // sentinel, to make sure there's at least one entry\n for (let line = model.getLineCount(); line > 0; line--) {\n const lineContent = model.getLineContent(line);\n const indent = (0,_common_model_utils_js__WEBPACK_IMPORTED_MODULE_0__.computeIndentLevel)(lineContent, tabSize);\n let previous = previousRegions[previousRegions.length - 1];\n if (indent === -1) {\n if (offSide) {\n // for offSide languages, empty lines are associated to the previous block\n // note: the next block is already written to the results, so this only\n // impacts the end position of the block before\n previous.endAbove = line;\n }\n continue; // only whitespace\n }\n let m;\n if (pattern && (m = lineContent.match(pattern))) {\n // folding pattern match\n if (m[1]) { // start pattern match\n // discard all regions until the folding pattern\n let i = previousRegions.length - 1;\n while (i > 0 && previousRegions[i].indent !== -2) {\n i--;\n }\n if (i > 0) {\n previousRegions.length = i + 1;\n previous = previousRegions[i];\n // new folding range from pattern, includes the end line\n result.insertFirst(line, previous.line, indent);\n previous.line = line;\n previous.indent = indent;\n previous.endAbove = line;\n continue;\n }\n else {\n // no end marker found, treat line as a regular line\n }\n }\n else { // end pattern match\n previousRegions.push({ indent: -2, endAbove: line, line });\n continue;\n }\n }\n if (previous.indent > indent) {\n // discard all regions with larger indent\n do {\n previousRegions.pop();\n previous = previousRegions[previousRegions.length - 1];\n } while (previous.indent > indent);\n // new folding range\n const endLineNumber = previous.endAbove - 1;\n if (endLineNumber - line >= 1) { // needs at east size 1\n result.insertFirst(line, endLineNumber, indent);\n }\n }\n if (previous.indent === indent) {\n previous.endAbove = line;\n }\n else { // previous.indent < indent\n // new region with a bigger indent\n previousRegions.push({ indent, endAbove: line, line });\n }\n }\n return result.toIndentRanges(model);\n}\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/contrib/folding/browser/indentRangeProvider.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/contrib/folding/browser/syntaxRangeProvider.js":
/*!*************************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/contrib/folding/browser/syntaxRangeProvider.js ***!
\*************************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ SyntaxRangeProvider: () => (/* binding */ SyntaxRangeProvider),\n/* harmony export */ sanitizeRanges: () => (/* binding */ sanitizeRanges)\n/* harmony export */ });\n/* harmony import */ var _base_common_errors_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../../base/common/errors.js */ \"./node_modules/monaco-editor/esm/vs/base/common/errors.js\");\n/* harmony import */ var _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../base/common/lifecycle.js */ \"./node_modules/monaco-editor/esm/vs/base/common/lifecycle.js\");\n/* harmony import */ var _foldingRanges_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./foldingRanges.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/folding/browser/foldingRanges.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n\n\nconst foldingContext = {};\nconst ID_SYNTAX_PROVIDER = 'syntax';\nclass SyntaxRangeProvider {\n constructor(editorModel, providers, handleFoldingRangesChange, foldingRangesLimit, fallbackRangeProvider // used when all providers return null\n ) {\n this.editorModel = editorModel;\n this.providers = providers;\n this.handleFoldingRangesChange = handleFoldingRangesChange;\n this.foldingRangesLimit = foldingRangesLimit;\n this.fallbackRangeProvider = fallbackRangeProvider;\n this.id = ID_SYNTAX_PROVIDER;\n this.disposables = new _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_1__.DisposableStore();\n if (fallbackRangeProvider) {\n this.disposables.add(fallbackRangeProvider);\n }\n for (const provider of providers) {\n if (typeof provider.onDidChange === 'function') {\n this.disposables.add(provider.onDidChange(handleFoldingRangesChange));\n }\n }\n }\n compute(cancellationToken) {\n return collectSyntaxRanges(this.providers, this.editorModel, cancellationToken).then(ranges => {\n var _a, _b;\n if (ranges) {\n const res = sanitizeRanges(ranges, this.foldingRangesLimit);\n return res;\n }\n return (_b = (_a = this.fallbackRangeProvider) === null || _a === void 0 ? void 0 : _a.compute(cancellationToken)) !== null && _b !== void 0 ? _b : null;\n });\n }\n dispose() {\n this.disposables.dispose();\n }\n}\nfunction collectSyntaxRanges(providers, model, cancellationToken) {\n let rangeData = null;\n const promises = providers.map((provider, i) => {\n return Promise.resolve(provider.provideFoldingRanges(model, foldingContext, cancellationToken)).then(ranges => {\n if (cancellationToken.isCancellationRequested) {\n return;\n }\n if (Array.isArray(ranges)) {\n if (!Array.isArray(rangeData)) {\n rangeData = [];\n }\n const nLines = model.getLineCount();\n for (const r of ranges) {\n if (r.start > 0 && r.end > r.start && r.end <= nLines) {\n rangeData.push({ start: r.start, end: r.end, rank: i, kind: r.kind });\n }\n }\n }\n }, _base_common_errors_js__WEBPACK_IMPORTED_MODULE_0__.onUnexpectedExternalError);\n });\n return Promise.all(promises).then(_ => {\n return rangeData;\n });\n}\nclass RangesCollector {\n constructor(foldingRangesLimit) {\n this._startIndexes = [];\n this._endIndexes = [];\n this._nestingLevels = [];\n this._nestingLevelCounts = [];\n this._types = [];\n this._length = 0;\n this._foldingRangesLimit = foldingRangesLimit;\n }\n add(startLineNumber, endLineNumber, type, nestingLevel) {\n if (startLineNumber > _foldingRanges_js__WEBPACK_IMPORTED_MODULE_2__.MAX_LINE_NUMBER || endLineNumber > _foldingRanges_js__WEBPACK_IMPORTED_MODULE_2__.MAX_LINE_NUMBER) {\n return;\n }\n const index = this._length;\n this._startIndexes[index] = startLineNumber;\n this._endIndexes[index] = endLineNumber;\n this._nestingLevels[index] = nestingLevel;\n this._types[index] = type;\n this._length++;\n if (nestingLevel < 30) {\n this._nestingLevelCounts[nestingLevel] = (this._nestingLevelCounts[nestingLevel] || 0) + 1;\n }\n }\n toIndentRanges() {\n const limit = this._foldingRangesLimit.limit;\n if (this._length <= limit) {\n this._foldingRangesLimit.update(this._length, false);\n const startIndexes = new Uint32Array(this._length);\n const endIndexes = new Uint32Array(this._length);\n for (let i = 0; i < this._length; i++) {\n startIndexes[i] = this._startIndexes[i];\n endIndexes[i] = this._endIndexes[i];\n }\n return new _foldingRanges_js__WEBPACK_IMPORTED_MODULE_2__.FoldingRegions(startIndexes, endIndexes, this._types);\n }\n else {\n this._foldingRangesLimit.update(this._length, limit);\n let entries = 0;\n let maxLevel = this._nestingLevelCounts.length;\n for (let i = 0; i < this._nestingLevelCounts.length; i++) {\n const n = this._nestingLevelCounts[i];\n if (n) {\n if (n + entries > limit) {\n maxLevel = i;\n break;\n }\n entries += n;\n }\n }\n const startIndexes = new Uint32Array(limit);\n const endIndexes = new Uint32Array(limit);\n const types = [];\n for (let i = 0, k = 0; i < this._length; i++) {\n const level = this._nestingLevels[i];\n if (level < maxLevel || (level === maxLevel && entries++ < limit)) {\n startIndexes[k] = this._startIndexes[i];\n endIndexes[k] = this._endIndexes[i];\n types[k] = this._types[i];\n k++;\n }\n }\n return new _foldingRanges_js__WEBPACK_IMPORTED_MODULE_2__.FoldingRegions(startIndexes, endIndexes, types);\n }\n }\n}\nfunction sanitizeRanges(rangeData, foldingRangesLimit) {\n const sorted = rangeData.sort((d1, d2) => {\n let diff = d1.start - d2.start;\n if (diff === 0) {\n diff = d1.rank - d2.rank;\n }\n return diff;\n });\n const collector = new RangesCollector(foldingRangesLimit);\n let top = undefined;\n const previous = [];\n for (const entry of sorted) {\n if (!top) {\n top = entry;\n collector.add(entry.start, entry.end, entry.kind && entry.kind.value, previous.length);\n }\n else {\n if (entry.start > top.start) {\n if (entry.end <= top.end) {\n previous.push(top);\n top = entry;\n collector.add(entry.start, entry.end, entry.kind && entry.kind.value, previous.length);\n }\n else {\n if (entry.start > top.end) {\n do {\n top = previous.pop();\n } while (top && entry.start > top.end);\n if (top) {\n previous.push(top);\n }\n top = entry;\n }\n collector.add(entry.start, entry.end, entry.kind && entry.kind.value, previous.length);\n }\n }\n }\n }\n return collector.toIndentRanges();\n}\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/contrib/folding/browser/syntaxRangeProvider.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/contrib/fontZoom/browser/fontZoom.js":
/*!***************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/contrib/fontZoom/browser/fontZoom.js ***!
\***************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var _browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../browser/editorExtensions.js */ \"./node_modules/monaco-editor/esm/vs/editor/browser/editorExtensions.js\");\n/* harmony import */ var _common_config_editorZoom_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../common/config/editorZoom.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/config/editorZoom.js\");\n/* harmony import */ var _nls_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../../nls.js */ \"./node_modules/monaco-editor/esm/vs/nls.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n\n\nclass EditorFontZoomIn extends _browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_0__.EditorAction {\n constructor() {\n super({\n id: 'editor.action.fontZoomIn',\n label: _nls_js__WEBPACK_IMPORTED_MODULE_2__.localize('EditorFontZoomIn.label', \"Increase Editor Font Size\"),\n alias: 'Increase Editor Font Size',\n precondition: undefined\n });\n }\n run(accessor, editor) {\n _common_config_editorZoom_js__WEBPACK_IMPORTED_MODULE_1__.EditorZoom.setZoomLevel(_common_config_editorZoom_js__WEBPACK_IMPORTED_MODULE_1__.EditorZoom.getZoomLevel() + 1);\n }\n}\nclass EditorFontZoomOut extends _browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_0__.EditorAction {\n constructor() {\n super({\n id: 'editor.action.fontZoomOut',\n label: _nls_js__WEBPACK_IMPORTED_MODULE_2__.localize('EditorFontZoomOut.label', \"Decrease Editor Font Size\"),\n alias: 'Decrease Editor Font Size',\n precondition: undefined\n });\n }\n run(accessor, editor) {\n _common_config_editorZoom_js__WEBPACK_IMPORTED_MODULE_1__.EditorZoom.setZoomLevel(_common_config_editorZoom_js__WEBPACK_IMPORTED_MODULE_1__.EditorZoom.getZoomLevel() - 1);\n }\n}\nclass EditorFontZoomReset extends _browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_0__.EditorAction {\n constructor() {\n super({\n id: 'editor.action.fontZoomReset',\n label: _nls_js__WEBPACK_IMPORTED_MODULE_2__.localize('EditorFontZoomReset.label', \"Reset Editor Font Size\"),\n alias: 'Reset Editor Font Size',\n precondition: undefined\n });\n }\n run(accessor, editor) {\n _common_config_editorZoom_js__WEBPACK_IMPORTED_MODULE_1__.EditorZoom.setZoomLevel(0);\n }\n}\n(0,_browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_0__.registerEditorAction)(EditorFontZoomIn);\n(0,_browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_0__.registerEditorAction)(EditorFontZoomOut);\n(0,_browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_0__.registerEditorAction)(EditorFontZoomReset);\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/contrib/fontZoom/browser/fontZoom.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/contrib/format/browser/format.js":
/*!***********************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/contrib/format/browser/format.js ***!
\***********************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ FormattingConflicts: () => (/* binding */ FormattingConflicts),\n/* harmony export */ formatDocumentRangesWithProvider: () => (/* binding */ formatDocumentRangesWithProvider),\n/* harmony export */ formatDocumentRangesWithSelectedProvider: () => (/* binding */ formatDocumentRangesWithSelectedProvider),\n/* harmony export */ formatDocumentWithProvider: () => (/* binding */ formatDocumentWithProvider),\n/* harmony export */ formatDocumentWithSelectedProvider: () => (/* binding */ formatDocumentWithSelectedProvider),\n/* harmony export */ getDocumentFormattingEditsUntilResult: () => (/* binding */ getDocumentFormattingEditsUntilResult),\n/* harmony export */ getDocumentRangeFormattingEditsUntilResult: () => (/* binding */ getDocumentRangeFormattingEditsUntilResult),\n/* harmony export */ getOnTypeFormattingEdits: () => (/* binding */ getOnTypeFormattingEdits),\n/* harmony export */ getRealAndSyntheticDocumentFormattersOrdered: () => (/* binding */ getRealAndSyntheticDocumentFormattersOrdered)\n/* harmony export */ });\n/* harmony import */ var _base_common_arrays_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../../base/common/arrays.js */ \"./node_modules/monaco-editor/esm/vs/base/common/arrays.js\");\n/* harmony import */ var _base_common_cancellation_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../base/common/cancellation.js */ \"./node_modules/monaco-editor/esm/vs/base/common/cancellation.js\");\n/* harmony import */ var _base_common_errors_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../../base/common/errors.js */ \"./node_modules/monaco-editor/esm/vs/base/common/errors.js\");\n/* harmony import */ var _base_common_iterator_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../../../base/common/iterator.js */ \"./node_modules/monaco-editor/esm/vs/base/common/iterator.js\");\n/* harmony import */ var _base_common_linkedList_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../../../base/common/linkedList.js */ \"./node_modules/monaco-editor/esm/vs/base/common/linkedList.js\");\n/* harmony import */ var _base_common_types_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../../../../base/common/types.js */ \"./node_modules/monaco-editor/esm/vs/base/common/types.js\");\n/* harmony import */ var _base_common_uri_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../../../../base/common/uri.js */ \"./node_modules/monaco-editor/esm/vs/base/common/uri.js\");\n/* harmony import */ var _editorState_browser_editorState_js__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ../../editorState/browser/editorState.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/editorState/browser/editorState.js\");\n/* harmony import */ var _browser_editorBrowser_js__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ../../../browser/editorBrowser.js */ \"./node_modules/monaco-editor/esm/vs/editor/browser/editorBrowser.js\");\n/* harmony import */ var _common_core_position_js__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ../../../common/core/position.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/core/position.js\");\n/* harmony import */ var _common_core_range_js__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! ../../../common/core/range.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/core/range.js\");\n/* harmony import */ var _common_core_selection_js__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(/*! ../../../common/core/selection.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/core/selection.js\");\n/* harmony import */ var _common_services_editorWorker_js__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(/*! ../../../common/services/editorWorker.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/services/editorWorker.js\");\n/* harmony import */ var _common_services_resolverService_js__WEBPACK_IMPORTED_MODULE_13__ = __webpack_require__(/*! ../../../common/services/resolverService.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/services/resolverService.js\");\n/* harmony import */ var _formattingEdit_js__WEBPACK_IMPORTED_MODULE_14__ = __webpack_require__(/*! ./formattingEdit.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/format/browser/formattingEdit.js\");\n/* harmony import */ var _platform_commands_common_commands_js__WEBPACK_IMPORTED_MODULE_15__ = __webpack_require__(/*! ../../../../platform/commands/common/commands.js */ \"./node_modules/monaco-editor/esm/vs/platform/commands/common/commands.js\");\n/* harmony import */ var _platform_extensions_common_extensions_js__WEBPACK_IMPORTED_MODULE_16__ = __webpack_require__(/*! ../../../../platform/extensions/common/extensions.js */ \"./node_modules/monaco-editor/esm/vs/platform/extensions/common/extensions.js\");\n/* harmony import */ var _platform_instantiation_common_instantiation_js__WEBPACK_IMPORTED_MODULE_17__ = __webpack_require__(/*! ../../../../platform/instantiation/common/instantiation.js */ \"./node_modules/monaco-editor/esm/vs/platform/instantiation/common/instantiation.js\");\n/* harmony import */ var _common_services_languageFeatures_js__WEBPACK_IMPORTED_MODULE_18__ = __webpack_require__(/*! ../../../common/services/languageFeatures.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/services/languageFeatures.js\");\n/* harmony import */ var _platform_log_common_log_js__WEBPACK_IMPORTED_MODULE_19__ = __webpack_require__(/*! ../../../../platform/log/common/log.js */ \"./node_modules/monaco-editor/esm/vs/platform/log/common/log.js\");\n/* harmony import */ var _platform_accessibilitySignal_browser_accessibilitySignalService_js__WEBPACK_IMPORTED_MODULE_20__ = __webpack_require__(/*! ../../../../platform/accessibilitySignal/browser/accessibilitySignalService.js */ \"./node_modules/monaco-editor/esm/vs/platform/accessibilitySignal/browser/accessibilitySignalService.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nfunction getRealAndSyntheticDocumentFormattersOrdered(documentFormattingEditProvider, documentRangeFormattingEditProvider, model) {\n const result = [];\n const seen = new _platform_extensions_common_extensions_js__WEBPACK_IMPORTED_MODULE_16__.ExtensionIdentifierSet();\n // (1) add all document formatter\n const docFormatter = documentFormattingEditProvider.ordered(model);\n for (const formatter of docFormatter) {\n result.push(formatter);\n if (formatter.extensionId) {\n seen.add(formatter.extensionId);\n }\n }\n // (2) add all range formatter as document formatter (unless the same extension already did that)\n const rangeFormatter = documentRangeFormattingEditProvider.ordered(model);\n for (const formatter of rangeFormatter) {\n if (formatter.extensionId) {\n if (seen.has(formatter.extensionId)) {\n continue;\n }\n seen.add(formatter.extensionId);\n }\n result.push({\n displayName: formatter.displayName,\n extensionId: formatter.extensionId,\n provideDocumentFormattingEdits(model, options, token) {\n return formatter.provideDocumentRangeFormattingEdits(model, model.getFullModelRange(), options, token);\n }\n });\n }\n return result;\n}\nclass FormattingConflicts {\n static setFormatterSelector(selector) {\n const remove = FormattingConflicts._selectors.unshift(selector);\n return { dispose: remove };\n }\n static async select(formatter, document, mode, kind) {\n if (formatter.length === 0) {\n return undefined;\n }\n const selector = _base_common_iterator_js__WEBPACK_IMPORTED_MODULE_3__.Iterable.first(FormattingConflicts._selectors);\n if (selector) {\n return await selector(formatter, document, mode, kind);\n }\n return undefined;\n }\n}\nFormattingConflicts._selectors = new _base_common_linkedList_js__WEBPACK_IMPORTED_MODULE_4__.LinkedList();\nasync function formatDocumentRangesWithSelectedProvider(accessor, editorOrModel, rangeOrRanges, mode, progress, token, userGesture) {\n const instaService = accessor.get(_platform_instantiation_common_instantiation_js__WEBPACK_IMPORTED_MODULE_17__.IInstantiationService);\n const { documentRangeFormattingEditProvider: documentRangeFormattingEditProviderRegistry } = accessor.get(_common_services_languageFeatures_js__WEBPACK_IMPORTED_MODULE_18__.ILanguageFeaturesService);\n const model = (0,_browser_editorBrowser_js__WEBPACK_IMPORTED_MODULE_8__.isCodeEditor)(editorOrModel) ? editorOrModel.getModel() : editorOrModel;\n const provider = documentRangeFormattingEditProviderRegistry.ordered(model);\n const selected = await FormattingConflicts.select(provider, model, mode, 2 /* FormattingKind.Selection */);\n if (selected) {\n progress.report(selected);\n await instaService.invokeFunction(formatDocumentRangesWithProvider, selected, editorOrModel, rangeOrRanges, token, userGesture);\n }\n}\nasync function formatDocumentRangesWithProvider(accessor, provider, editorOrModel, rangeOrRanges, token, userGesture) {\n var _a, _b;\n const workerService = accessor.get(_common_services_editorWorker_js__WEBPACK_IMPORTED_MODULE_12__.IEditorWorkerService);\n const logService = accessor.get(_platform_log_common_log_js__WEBPACK_IMPORTED_MODULE_19__.ILogService);\n const accessibilitySignalService = accessor.get(_platform_accessibilitySignal_browser_accessibilitySignalService_js__WEBPACK_IMPORTED_MODULE_20__.IAccessibilitySignalService);\n let model;\n let cts;\n if ((0,_browser_editorBrowser_js__WEBPACK_IMPORTED_MODULE_8__.isCodeEditor)(editorOrModel)) {\n model = editorOrModel.getModel();\n cts = new _editorState_browser_editorState_js__WEBPACK_IMPORTED_MODULE_7__.EditorStateCancellationTokenSource(editorOrModel, 1 /* CodeEditorStateFlag.Value */ | 4 /* CodeEditorStateFlag.Position */, undefined, token);\n }\n else {\n model = editorOrModel;\n cts = new _editorState_browser_editorState_js__WEBPACK_IMPORTED_MODULE_7__.TextModelCancellationTokenSource(editorOrModel, token);\n }\n // make sure that ranges don't overlap nor touch each other\n const ranges = [];\n let len = 0;\n for (const range of (0,_base_common_arrays_js__WEBPACK_IMPORTED_MODULE_0__.asArray)(rangeOrRanges).sort(_common_core_range_js__WEBPACK_IMPORTED_MODULE_10__.Range.compareRangesUsingStarts)) {\n if (len > 0 && _common_core_range_js__WEBPACK_IMPORTED_MODULE_10__.Range.areIntersectingOrTouching(ranges[len - 1], range)) {\n ranges[len - 1] = _common_core_range_js__WEBPACK_IMPORTED_MODULE_10__.Range.fromPositions(ranges[len - 1].getStartPosition(), range.getEndPosition());\n }\n else {\n len = ranges.push(range);\n }\n }\n const computeEdits = async (range) => {\n var _a, _b;\n logService.trace(`[format][provideDocumentRangeFormattingEdits] (request)`, (_a = provider.extensionId) === null || _a === void 0 ? void 0 : _a.value, range);\n const result = (await provider.provideDocumentRangeFormattingEdits(model, range, model.getFormattingOptions(), cts.token)) || [];\n logService.trace(`[format][provideDocumentRangeFormattingEdits] (response)`, (_b = provider.extensionId) === null || _b === void 0 ? void 0 : _b.value, result);\n return result;\n };\n const hasIntersectingEdit = (a, b) => {\n if (!a.length || !b.length) {\n return false;\n }\n // quick exit if the list of ranges are completely unrelated [O(n)]\n const mergedA = a.reduce((acc, val) => { return _common_core_range_js__WEBPACK_IMPORTED_MODULE_10__.Range.plusRange(acc, val.range); }, a[0].range);\n if (!b.some(x => { return _common_core_range_js__WEBPACK_IMPORTED_MODULE_10__.Range.intersectRanges(mergedA, x.range); })) {\n return false;\n }\n // fallback to a complete check [O(n^2)]\n for (const edit of a) {\n for (const otherEdit of b) {\n if (_common_core_range_js__WEBPACK_IMPORTED_MODULE_10__.Range.intersectRanges(edit.range, otherEdit.range)) {\n return true;\n }\n }\n }\n return false;\n };\n const allEdits = [];\n const rawEditsList = [];\n try {\n if (typeof provider.provideDocumentRangesFormattingEdits === 'function') {\n logService.trace(`[format][provideDocumentRangeFormattingEdits] (request)`, (_a = provider.extensionId) === null || _a === void 0 ? void 0 : _a.value, ranges);\n const result = (await provider.provideDocumentRangesFormattingEdits(model, ranges, model.getFormattingOptions(), cts.token)) || [];\n logService.trace(`[format][provideDocumentRangeFormattingEdits] (response)`, (_b = provider.extensionId) === null || _b === void 0 ? void 0 : _b.value, result);\n rawEditsList.push(result);\n }\n else {\n for (const range of ranges) {\n if (cts.token.isCancellationRequested) {\n return true;\n }\n rawEditsList.push(await computeEdits(range));\n }\n for (let i = 0; i < ranges.length; ++i) {\n for (let j = i + 1; j < ranges.length; ++j) {\n if (cts.token.isCancellationRequested) {\n return true;\n }\n if (hasIntersectingEdit(rawEditsList[i], rawEditsList[j])) {\n // Merge ranges i and j into a single range, recompute the associated edits\n const mergedRange = _common_core_range_js__WEBPACK_IMPORTED_MODULE_10__.Range.plusRange(ranges[i], ranges[j]);\n const edits = await computeEdits(mergedRange);\n ranges.splice(j, 1);\n ranges.splice(i, 1);\n ranges.push(mergedRange);\n rawEditsList.splice(j, 1);\n rawEditsList.splice(i, 1);\n rawEditsList.push(edits);\n // Restart scanning\n i = 0;\n j = 0;\n }\n }\n }\n }\n for (const rawEdits of rawEditsList) {\n if (cts.token.isCancellationRequested) {\n return true;\n }\n const minimalEdits = await workerService.computeMoreMinimalEdits(model.uri, rawEdits);\n if (minimalEdits) {\n allEdits.push(...minimalEdits);\n }\n }\n }\n finally {\n cts.dispose();\n }\n if (allEdits.length === 0) {\n return false;\n }\n if ((0,_browser_editorBrowser_js__WEBPACK_IMPORTED_MODULE_8__.isCodeEditor)(editorOrModel)) {\n // use editor to apply edits\n _formattingEdit_js__WEBPACK_IMPORTED_MODULE_14__.FormattingEdit.execute(editorOrModel, allEdits, true);\n editorOrModel.revealPositionInCenterIfOutsideViewport(editorOrModel.getPosition(), 1 /* ScrollType.Immediate */);\n }\n else {\n // use model to apply edits\n const [{ range }] = allEdits;\n const initialSelection = new _common_core_selection_js__WEBPACK_IMPORTED_MODULE_11__.Selection(range.startLineNumber, range.startColumn, range.endLineNumber, range.endColumn);\n model.pushEditOperations([initialSelection], allEdits.map(edit => {\n return {\n text: edit.text,\n range: _common_core_range_js__WEBPACK_IMPORTED_MODULE_10__.Range.lift(edit.range),\n forceMoveMarkers: true\n };\n }), undoEdits => {\n for (const { range } of undoEdits) {\n if (_common_core_range_js__WEBPACK_IMPORTED_MODULE_10__.Range.areIntersectingOrTouching(range, initialSelection)) {\n return [new _common_core_selection_js__WEBPACK_IMPORTED_MODULE_11__.Selection(range.startLineNumber, range.startColumn, range.endLineNumber, range.endColumn)];\n }\n }\n return null;\n });\n }\n accessibilitySignalService.playSignal(_platform_accessibilitySignal_browser_accessibilitySignalService_js__WEBPACK_IMPORTED_MODULE_20__.AccessibilitySignal.format, { userGesture });\n return true;\n}\nasync function formatDocumentWithSelectedProvider(accessor, editorOrModel, mode, progress, token, userGesture) {\n const instaService = accessor.get(_platform_instantiation_common_instantiation_js__WEBPACK_IMPORTED_MODULE_17__.IInstantiationService);\n const languageFeaturesService = accessor.get(_common_services_languageFeatures_js__WEBPACK_IMPORTED_MODULE_18__.ILanguageFeaturesService);\n const model = (0,_browser_editorBrowser_js__WEBPACK_IMPORTED_MODULE_8__.isCodeEditor)(editorOrModel) ? editorOrModel.getModel() : editorOrModel;\n const provider = getRealAndSyntheticDocumentFormattersOrdered(languageFeaturesService.documentFormattingEditProvider, languageFeaturesService.documentRangeFormattingEditProvider, model);\n const selected = await FormattingConflicts.select(provider, model, mode, 1 /* FormattingKind.File */);\n if (selected) {\n progress.report(selected);\n await instaService.invokeFunction(formatDocumentWithProvider, selected, editorOrModel, mode, token, userGesture);\n }\n}\nasync function formatDocumentWithProvider(accessor, provider, editorOrModel, mode, token, userGesture) {\n const workerService = accessor.get(_common_services_editorWorker_js__WEBPACK_IMPORTED_MODULE_12__.IEditorWorkerService);\n const accessibilitySignalService = accessor.get(_platform_accessibilitySignal_browser_accessibilitySignalService_js__WEBPACK_IMPORTED_MODULE_20__.IAccessibilitySignalService);\n let model;\n let cts;\n if ((0,_browser_editorBrowser_js__WEBPACK_IMPORTED_MODULE_8__.isCodeEditor)(editorOrModel)) {\n model = editorOrModel.getModel();\n cts = new _editorState_browser_editorState_js__WEBPACK_IMPORTED_MODULE_7__.EditorStateCancellationTokenSource(editorOrModel, 1 /* CodeEditorStateFlag.Value */ | 4 /* CodeEditorStateFlag.Position */, undefined, token);\n }\n else {\n model = editorOrModel;\n cts = new _editorState_browser_editorState_js__WEBPACK_IMPORTED_MODULE_7__.TextModelCancellationTokenSource(editorOrModel, token);\n }\n let edits;\n try {\n const rawEdits = await provider.provideDocumentFormattingEdits(model, model.getFormattingOptions(), cts.token);\n edits = await workerService.computeMoreMinimalEdits(model.uri, rawEdits);\n if (cts.token.isCancellationRequested) {\n return true;\n }\n }\n finally {\n cts.dispose();\n }\n if (!edits || edits.length === 0) {\n return false;\n }\n if ((0,_browser_editorBrowser_js__WEBPACK_IMPORTED_MODULE_8__.isCodeEditor)(editorOrModel)) {\n // use editor to apply edits\n _formattingEdit_js__WEBPACK_IMPORTED_MODULE_14__.FormattingEdit.execute(editorOrModel, edits, mode !== 2 /* FormattingMode.Silent */);\n if (mode !== 2 /* FormattingMode.Silent */) {\n editorOrModel.revealPositionInCenterIfOutsideViewport(editorOrModel.getPosition(), 1 /* ScrollType.Immediate */);\n }\n }\n else {\n // use model to apply edits\n const [{ range }] = edits;\n const initialSelection = new _common_core_selection_js__WEBPACK_IMPORTED_MODULE_11__.Selection(range.startLineNumber, range.startColumn, range.endLineNumber, range.endColumn);\n model.pushEditOperations([initialSelection], edits.map(edit => {\n return {\n text: edit.text,\n range: _common_core_range_js__WEBPACK_IMPORTED_MODULE_10__.Range.lift(edit.range),\n forceMoveMarkers: true\n };\n }), undoEdits => {\n for (const { range } of undoEdits) {\n if (_common_core_range_js__WEBPACK_IMPORTED_MODULE_10__.Range.areIntersectingOrTouching(range, initialSelection)) {\n return [new _common_core_selection_js__WEBPACK_IMPORTED_MODULE_11__.Selection(range.startLineNumber, range.startColumn, range.endLineNumber, range.endColumn)];\n }\n }\n return null;\n });\n }\n accessibilitySignalService.playSignal(_platform_accessibilitySignal_browser_accessibilitySignalService_js__WEBPACK_IMPORTED_MODULE_20__.AccessibilitySignal.format, { userGesture });\n return true;\n}\nasync function getDocumentRangeFormattingEditsUntilResult(workerService, languageFeaturesService, model, range, options, token) {\n const providers = languageFeaturesService.documentRangeFormattingEditProvider.ordered(model);\n for (const provider of providers) {\n const rawEdits = await Promise.resolve(provider.provideDocumentRangeFormattingEdits(model, range, options, token)).catch(_base_common_errors_js__WEBPACK_IMPORTED_MODULE_2__.onUnexpectedExternalError);\n if ((0,_base_common_arrays_js__WEBPACK_IMPORTED_MODULE_0__.isNonEmptyArray)(rawEdits)) {\n return await workerService.computeMoreMinimalEdits(model.uri, rawEdits);\n }\n }\n return undefined;\n}\nasync function getDocumentFormattingEditsUntilResult(workerService, languageFeaturesService, model, options, token) {\n const providers = getRealAndSyntheticDocumentFormattersOrdered(languageFeaturesService.documentFormattingEditProvider, languageFeaturesService.documentRangeFormattingEditProvider, model);\n for (const provider of providers) {\n const rawEdits = await Promise.resolve(provider.provideDocumentFormattingEdits(model, options, token)).catch(_base_common_errors_js__WEBPACK_IMPORTED_MODULE_2__.onUnexpectedExternalError);\n if ((0,_base_common_arrays_js__WEBPACK_IMPORTED_MODULE_0__.isNonEmptyArray)(rawEdits)) {\n return await workerService.computeMoreMinimalEdits(model.uri, rawEdits);\n }\n }\n return undefined;\n}\nfunction getOnTypeFormattingEdits(workerService, languageFeaturesService, model, position, ch, options, token) {\n const providers = languageFeaturesService.onTypeFormattingEditProvider.ordered(model);\n if (providers.length === 0) {\n return Promise.resolve(undefined);\n }\n if (providers[0].autoFormatTriggerCharacters.indexOf(ch) < 0) {\n return Promise.resolve(undefined);\n }\n return Promise.resolve(providers[0].provideOnTypeFormattingEdits(model, position, ch, options, token)).catch(_base_common_errors_js__WEBPACK_IMPORTED_MODULE_2__.onUnexpectedExternalError).then(edits => {\n return workerService.computeMoreMinimalEdits(model.uri, edits);\n });\n}\n_platform_commands_common_commands_js__WEBPACK_IMPORTED_MODULE_15__.CommandsRegistry.registerCommand('_executeFormatRangeProvider', async function (accessor, ...args) {\n const [resource, range, options] = args;\n (0,_base_common_types_js__WEBPACK_IMPORTED_MODULE_5__.assertType)(_base_common_uri_js__WEBPACK_IMPORTED_MODULE_6__.URI.isUri(resource));\n (0,_base_common_types_js__WEBPACK_IMPORTED_MODULE_5__.assertType)(_common_core_range_js__WEBPACK_IMPORTED_MODULE_10__.Range.isIRange(range));\n const resolverService = accessor.get(_common_services_resolverService_js__WEBPACK_IMPORTED_MODULE_13__.ITextModelService);\n const workerService = accessor.get(_common_services_editorWorker_js__WEBPACK_IMPORTED_MODULE_12__.IEditorWorkerService);\n const languageFeaturesService = accessor.get(_common_services_languageFeatures_js__WEBPACK_IMPORTED_MODULE_18__.ILanguageFeaturesService);\n const reference = await resolverService.createModelReference(resource);\n try {\n return getDocumentRangeFormattingEditsUntilResult(workerService, languageFeaturesService, reference.object.textEditorModel, _common_core_range_js__WEBPACK_IMPORTED_MODULE_10__.Range.lift(range), options, _base_common_cancellation_js__WEBPACK_IMPORTED_MODULE_1__.CancellationToken.None);\n }\n finally {\n reference.dispose();\n }\n});\n_platform_commands_common_commands_js__WEBPACK_IMPORTED_MODULE_15__.CommandsRegistry.registerCommand('_executeFormatDocumentProvider', async function (accessor, ...args) {\n const [resource, options] = args;\n (0,_base_common_types_js__WEBPACK_IMPORTED_MODULE_5__.assertType)(_base_common_uri_js__WEBPACK_IMPORTED_MODULE_6__.URI.isUri(resource));\n const resolverService = accessor.get(_common_services_resolverService_js__WEBPACK_IMPORTED_MODULE_13__.ITextModelService);\n const workerService = accessor.get(_common_services_editorWorker_js__WEBPACK_IMPORTED_MODULE_12__.IEditorWorkerService);\n const languageFeaturesService = accessor.get(_common_services_languageFeatures_js__WEBPACK_IMPORTED_MODULE_18__.ILanguageFeaturesService);\n const reference = await resolverService.createModelReference(resource);\n try {\n return getDocumentFormattingEditsUntilResult(workerService, languageFeaturesService, reference.object.textEditorModel, options, _base_common_cancellation_js__WEBPACK_IMPORTED_MODULE_1__.CancellationToken.None);\n }\n finally {\n reference.dispose();\n }\n});\n_platform_commands_common_commands_js__WEBPACK_IMPORTED_MODULE_15__.CommandsRegistry.registerCommand('_executeFormatOnTypeProvider', async function (accessor, ...args) {\n const [resource, position, ch, options] = args;\n (0,_base_common_types_js__WEBPACK_IMPORTED_MODULE_5__.assertType)(_base_common_uri_js__WEBPACK_IMPORTED_MODULE_6__.URI.isUri(resource));\n (0,_base_common_types_js__WEBPACK_IMPORTED_MODULE_5__.assertType)(_common_core_position_js__WEBPACK_IMPORTED_MODULE_9__.Position.isIPosition(position));\n (0,_base_common_types_js__WEBPACK_IMPORTED_MODULE_5__.assertType)(typeof ch === 'string');\n const resolverService = accessor.get(_common_services_resolverService_js__WEBPACK_IMPORTED_MODULE_13__.ITextModelService);\n const workerService = accessor.get(_common_services_editorWorker_js__WEBPACK_IMPORTED_MODULE_12__.IEditorWorkerService);\n const languageFeaturesService = accessor.get(_common_services_languageFeatures_js__WEBPACK_IMPORTED_MODULE_18__.ILanguageFeaturesService);\n const reference = await resolverService.createModelReference(resource);\n try {\n return getOnTypeFormattingEdits(workerService, languageFeaturesService, reference.object.textEditorModel, _common_core_position_js__WEBPACK_IMPORTED_MODULE_9__.Position.lift(position), ch, options, _base_common_cancellation_js__WEBPACK_IMPORTED_MODULE_1__.CancellationToken.None);\n }\n finally {\n reference.dispose();\n }\n});\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/contrib/format/browser/format.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/contrib/format/browser/formatActions.js":
/*!******************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/contrib/format/browser/formatActions.js ***!
\******************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ FormatOnType: () => (/* binding */ FormatOnType)\n/* harmony export */ });\n/* harmony import */ var _base_common_arrays_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../../base/common/arrays.js */ \"./node_modules/monaco-editor/esm/vs/base/common/arrays.js\");\n/* harmony import */ var _base_common_cancellation_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../base/common/cancellation.js */ \"./node_modules/monaco-editor/esm/vs/base/common/cancellation.js\");\n/* harmony import */ var _base_common_errors_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../../base/common/errors.js */ \"./node_modules/monaco-editor/esm/vs/base/common/errors.js\");\n/* harmony import */ var _base_common_keyCodes_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../../../base/common/keyCodes.js */ \"./node_modules/monaco-editor/esm/vs/base/common/keyCodes.js\");\n/* harmony import */ var _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../../../base/common/lifecycle.js */ \"./node_modules/monaco-editor/esm/vs/base/common/lifecycle.js\");\n/* harmony import */ var _browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../../../browser/editorExtensions.js */ \"./node_modules/monaco-editor/esm/vs/editor/browser/editorExtensions.js\");\n/* harmony import */ var _browser_services_codeEditorService_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../../../browser/services/codeEditorService.js */ \"./node_modules/monaco-editor/esm/vs/editor/browser/services/codeEditorService.js\");\n/* harmony import */ var _common_core_characterClassifier_js__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ../../../common/core/characterClassifier.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/core/characterClassifier.js\");\n/* harmony import */ var _common_core_range_js__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ../../../common/core/range.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/core/range.js\");\n/* harmony import */ var _common_editorContextKeys_js__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ../../../common/editorContextKeys.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/editorContextKeys.js\");\n/* harmony import */ var _common_services_editorWorker_js__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! ../../../common/services/editorWorker.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/services/editorWorker.js\");\n/* harmony import */ var _common_services_languageFeatures_js__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(/*! ../../../common/services/languageFeatures.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/services/languageFeatures.js\");\n/* harmony import */ var _format_js__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(/*! ./format.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/format/browser/format.js\");\n/* harmony import */ var _formattingEdit_js__WEBPACK_IMPORTED_MODULE_13__ = __webpack_require__(/*! ./formattingEdit.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/format/browser/formattingEdit.js\");\n/* harmony import */ var _nls_js__WEBPACK_IMPORTED_MODULE_14__ = __webpack_require__(/*! ../../../../nls.js */ \"./node_modules/monaco-editor/esm/vs/nls.js\");\n/* harmony import */ var _platform_accessibilitySignal_browser_accessibilitySignalService_js__WEBPACK_IMPORTED_MODULE_15__ = __webpack_require__(/*! ../../../../platform/accessibilitySignal/browser/accessibilitySignalService.js */ \"./node_modules/monaco-editor/esm/vs/platform/accessibilitySignal/browser/accessibilitySignalService.js\");\n/* harmony import */ var _platform_commands_common_commands_js__WEBPACK_IMPORTED_MODULE_16__ = __webpack_require__(/*! ../../../../platform/commands/common/commands.js */ \"./node_modules/monaco-editor/esm/vs/platform/commands/common/commands.js\");\n/* harmony import */ var _platform_contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_17__ = __webpack_require__(/*! ../../../../platform/contextkey/common/contextkey.js */ \"./node_modules/monaco-editor/esm/vs/platform/contextkey/common/contextkey.js\");\n/* harmony import */ var _platform_instantiation_common_instantiation_js__WEBPACK_IMPORTED_MODULE_18__ = __webpack_require__(/*! ../../../../platform/instantiation/common/instantiation.js */ \"./node_modules/monaco-editor/esm/vs/platform/instantiation/common/instantiation.js\");\n/* harmony import */ var _platform_progress_common_progress_js__WEBPACK_IMPORTED_MODULE_19__ = __webpack_require__(/*! ../../../../platform/progress/common/progress.js */ \"./node_modules/monaco-editor/esm/vs/platform/progress/common/progress.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\nvar __decorate = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\n return c > 3 && r && Object.defineProperty(target, key, r), r;\n};\nvar __param = (undefined && undefined.__param) || function (paramIndex, decorator) {\n return function (target, key) { decorator(target, key, paramIndex); }\n};\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlet FormatOnType = class FormatOnType {\n constructor(_editor, _languageFeaturesService, _workerService, _accessibilitySignalService) {\n this._editor = _editor;\n this._languageFeaturesService = _languageFeaturesService;\n this._workerService = _workerService;\n this._accessibilitySignalService = _accessibilitySignalService;\n this._disposables = new _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_4__.DisposableStore();\n this._sessionDisposables = new _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_4__.DisposableStore();\n this._disposables.add(_languageFeaturesService.onTypeFormattingEditProvider.onDidChange(this._update, this));\n this._disposables.add(_editor.onDidChangeModel(() => this._update()));\n this._disposables.add(_editor.onDidChangeModelLanguage(() => this._update()));\n this._disposables.add(_editor.onDidChangeConfiguration(e => {\n if (e.hasChanged(56 /* EditorOption.formatOnType */)) {\n this._update();\n }\n }));\n this._update();\n }\n dispose() {\n this._disposables.dispose();\n this._sessionDisposables.dispose();\n }\n _update() {\n // clean up\n this._sessionDisposables.clear();\n // we are disabled\n if (!this._editor.getOption(56 /* EditorOption.formatOnType */)) {\n return;\n }\n // no model\n if (!this._editor.hasModel()) {\n return;\n }\n const model = this._editor.getModel();\n // no support\n const [support] = this._languageFeaturesService.onTypeFormattingEditProvider.ordered(model);\n if (!support || !support.autoFormatTriggerCharacters) {\n return;\n }\n // register typing listeners that will trigger the format\n const triggerChars = new _common_core_characterClassifier_js__WEBPACK_IMPORTED_MODULE_7__.CharacterSet();\n for (const ch of support.autoFormatTriggerCharacters) {\n triggerChars.add(ch.charCodeAt(0));\n }\n this._sessionDisposables.add(this._editor.onDidType((text) => {\n const lastCharCode = text.charCodeAt(text.length - 1);\n if (triggerChars.has(lastCharCode)) {\n this._trigger(String.fromCharCode(lastCharCode));\n }\n }));\n }\n _trigger(ch) {\n if (!this._editor.hasModel()) {\n return;\n }\n if (this._editor.getSelections().length > 1 || !this._editor.getSelection().isEmpty()) {\n return;\n }\n const model = this._editor.getModel();\n const position = this._editor.getPosition();\n const cts = new _base_common_cancellation_js__WEBPACK_IMPORTED_MODULE_1__.CancellationTokenSource();\n // install a listener that checks if edits happens before the\n // position on which we format right now. If so, we won't\n // apply the format edits\n const unbind = this._editor.onDidChangeModelContent((e) => {\n if (e.isFlush) {\n // a model.setValue() was called\n // cancel only once\n cts.cancel();\n unbind.dispose();\n return;\n }\n for (let i = 0, len = e.changes.length; i < len; i++) {\n const change = e.changes[i];\n if (change.range.endLineNumber <= position.lineNumber) {\n // cancel only once\n cts.cancel();\n unbind.dispose();\n return;\n }\n }\n });\n (0,_format_js__WEBPACK_IMPORTED_MODULE_12__.getOnTypeFormattingEdits)(this._workerService, this._languageFeaturesService, model, position, ch, model.getFormattingOptions(), cts.token).then(edits => {\n if (cts.token.isCancellationRequested) {\n return;\n }\n if ((0,_base_common_arrays_js__WEBPACK_IMPORTED_MODULE_0__.isNonEmptyArray)(edits)) {\n this._accessibilitySignalService.playSignal(_platform_accessibilitySignal_browser_accessibilitySignalService_js__WEBPACK_IMPORTED_MODULE_15__.AccessibilitySignal.format, { userGesture: false });\n _formattingEdit_js__WEBPACK_IMPORTED_MODULE_13__.FormattingEdit.execute(this._editor, edits, true);\n }\n }).finally(() => {\n unbind.dispose();\n });\n }\n};\nFormatOnType.ID = 'editor.contrib.autoFormat';\nFormatOnType = __decorate([\n __param(1, _common_services_languageFeatures_js__WEBPACK_IMPORTED_MODULE_11__.ILanguageFeaturesService),\n __param(2, _common_services_editorWorker_js__WEBPACK_IMPORTED_MODULE_10__.IEditorWorkerService),\n __param(3, _platform_accessibilitySignal_browser_accessibilitySignalService_js__WEBPACK_IMPORTED_MODULE_15__.IAccessibilitySignalService)\n], FormatOnType);\n\nlet FormatOnPaste = class FormatOnPaste {\n constructor(editor, _languageFeaturesService, _instantiationService) {\n this.editor = editor;\n this._languageFeaturesService = _languageFeaturesService;\n this._instantiationService = _instantiationService;\n this._callOnDispose = new _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_4__.DisposableStore();\n this._callOnModel = new _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_4__.DisposableStore();\n this._callOnDispose.add(editor.onDidChangeConfiguration(() => this._update()));\n this._callOnDispose.add(editor.onDidChangeModel(() => this._update()));\n this._callOnDispose.add(editor.onDidChangeModelLanguage(() => this._update()));\n this._callOnDispose.add(_languageFeaturesService.documentRangeFormattingEditProvider.onDidChange(this._update, this));\n }\n dispose() {\n this._callOnDispose.dispose();\n this._callOnModel.dispose();\n }\n _update() {\n // clean up\n this._callOnModel.clear();\n // we are disabled\n if (!this.editor.getOption(55 /* EditorOption.formatOnPaste */)) {\n return;\n }\n // no model\n if (!this.editor.hasModel()) {\n return;\n }\n // no formatter\n if (!this._languageFeaturesService.documentRangeFormattingEditProvider.has(this.editor.getModel())) {\n return;\n }\n this._callOnModel.add(this.editor.onDidPaste(({ range }) => this._trigger(range)));\n }\n _trigger(range) {\n if (!this.editor.hasModel()) {\n return;\n }\n if (this.editor.getSelections().length > 1) {\n return;\n }\n this._instantiationService.invokeFunction(_format_js__WEBPACK_IMPORTED_MODULE_12__.formatDocumentRangesWithSelectedProvider, this.editor, range, 2 /* FormattingMode.Silent */, _platform_progress_common_progress_js__WEBPACK_IMPORTED_MODULE_19__.Progress.None, _base_common_cancellation_js__WEBPACK_IMPORTED_MODULE_1__.CancellationToken.None, false).catch(_base_common_errors_js__WEBPACK_IMPORTED_MODULE_2__.onUnexpectedError);\n }\n};\nFormatOnPaste.ID = 'editor.contrib.formatOnPaste';\nFormatOnPaste = __decorate([\n __param(1, _common_services_languageFeatures_js__WEBPACK_IMPORTED_MODULE_11__.ILanguageFeaturesService),\n __param(2, _platform_instantiation_common_instantiation_js__WEBPACK_IMPORTED_MODULE_18__.IInstantiationService)\n], FormatOnPaste);\nclass FormatDocumentAction extends _browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_5__.EditorAction {\n constructor() {\n super({\n id: 'editor.action.formatDocument',\n label: _nls_js__WEBPACK_IMPORTED_MODULE_14__.localize('formatDocument.label', \"Format Document\"),\n alias: 'Format Document',\n precondition: _platform_contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_17__.ContextKeyExpr.and(_common_editorContextKeys_js__WEBPACK_IMPORTED_MODULE_9__.EditorContextKeys.notInCompositeEditor, _common_editorContextKeys_js__WEBPACK_IMPORTED_MODULE_9__.EditorContextKeys.writable, _common_editorContextKeys_js__WEBPACK_IMPORTED_MODULE_9__.EditorContextKeys.hasDocumentFormattingProvider),\n kbOpts: {\n kbExpr: _common_editorContextKeys_js__WEBPACK_IMPORTED_MODULE_9__.EditorContextKeys.editorTextFocus,\n primary: 1024 /* KeyMod.Shift */ | 512 /* KeyMod.Alt */ | 36 /* KeyCode.KeyF */,\n linux: { primary: 2048 /* KeyMod.CtrlCmd */ | 1024 /* KeyMod.Shift */ | 39 /* KeyCode.KeyI */ },\n weight: 100 /* KeybindingWeight.EditorContrib */\n },\n contextMenuOpts: {\n group: '1_modification',\n order: 1.3\n }\n });\n }\n async run(accessor, editor) {\n if (editor.hasModel()) {\n const instaService = accessor.get(_platform_instantiation_common_instantiation_js__WEBPACK_IMPORTED_MODULE_18__.IInstantiationService);\n const progressService = accessor.get(_platform_progress_common_progress_js__WEBPACK_IMPORTED_MODULE_19__.IEditorProgressService);\n await progressService.showWhile(instaService.invokeFunction(_format_js__WEBPACK_IMPORTED_MODULE_12__.formatDocumentWithSelectedProvider, editor, 1 /* FormattingMode.Explicit */, _platform_progress_common_progress_js__WEBPACK_IMPORTED_MODULE_19__.Progress.None, _base_common_cancellation_js__WEBPACK_IMPORTED_MODULE_1__.CancellationToken.None, true), 250);\n }\n }\n}\nclass FormatSelectionAction extends _browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_5__.EditorAction {\n constructor() {\n super({\n id: 'editor.action.formatSelection',\n label: _nls_js__WEBPACK_IMPORTED_MODULE_14__.localize('formatSelection.label', \"Format Selection\"),\n alias: 'Format Selection',\n precondition: _platform_contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_17__.ContextKeyExpr.and(_common_editorContextKeys_js__WEBPACK_IMPORTED_MODULE_9__.EditorContextKeys.writable, _common_editorContextKeys_js__WEBPACK_IMPORTED_MODULE_9__.EditorContextKeys.hasDocumentSelectionFormattingProvider),\n kbOpts: {\n kbExpr: _common_editorContextKeys_js__WEBPACK_IMPORTED_MODULE_9__.EditorContextKeys.editorTextFocus,\n primary: (0,_base_common_keyCodes_js__WEBPACK_IMPORTED_MODULE_3__.KeyChord)(2048 /* KeyMod.CtrlCmd */ | 41 /* KeyCode.KeyK */, 2048 /* KeyMod.CtrlCmd */ | 36 /* KeyCode.KeyF */),\n weight: 100 /* KeybindingWeight.EditorContrib */\n },\n contextMenuOpts: {\n when: _common_editorContextKeys_js__WEBPACK_IMPORTED_MODULE_9__.EditorContextKeys.hasNonEmptySelection,\n group: '1_modification',\n order: 1.31\n }\n });\n }\n async run(accessor, editor) {\n if (!editor.hasModel()) {\n return;\n }\n const instaService = accessor.get(_platform_instantiation_common_instantiation_js__WEBPACK_IMPORTED_MODULE_18__.IInstantiationService);\n const model = editor.getModel();\n const ranges = editor.getSelections().map(range => {\n return range.isEmpty()\n ? new _common_core_range_js__WEBPACK_IMPORTED_MODULE_8__.Range(range.startLineNumber, 1, range.startLineNumber, model.getLineMaxColumn(range.startLineNumber))\n : range;\n });\n const progressService = accessor.get(_platform_progress_common_progress_js__WEBPACK_IMPORTED_MODULE_19__.IEditorProgressService);\n await progressService.showWhile(instaService.invokeFunction(_format_js__WEBPACK_IMPORTED_MODULE_12__.formatDocumentRangesWithSelectedProvider, editor, ranges, 1 /* FormattingMode.Explicit */, _platform_progress_common_progress_js__WEBPACK_IMPORTED_MODULE_19__.Progress.None, _base_common_cancellation_js__WEBPACK_IMPORTED_MODULE_1__.CancellationToken.None, true), 250);\n }\n}\n(0,_browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_5__.registerEditorContribution)(FormatOnType.ID, FormatOnType, 2 /* EditorContributionInstantiation.BeforeFirstInteraction */);\n(0,_browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_5__.registerEditorContribution)(FormatOnPaste.ID, FormatOnPaste, 2 /* EditorContributionInstantiation.BeforeFirstInteraction */);\n(0,_browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_5__.registerEditorAction)(FormatDocumentAction);\n(0,_browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_5__.registerEditorAction)(FormatSelectionAction);\n// this is the old format action that does both (format document OR format selection)\n// and we keep it here such that existing keybinding configurations etc will still work\n_platform_commands_common_commands_js__WEBPACK_IMPORTED_MODULE_16__.CommandsRegistry.registerCommand('editor.action.format', async (accessor) => {\n const editor = accessor.get(_browser_services_codeEditorService_js__WEBPACK_IMPORTED_MODULE_6__.ICodeEditorService).getFocusedCodeEditor();\n if (!editor || !editor.hasModel()) {\n return;\n }\n const commandService = accessor.get(_platform_commands_common_commands_js__WEBPACK_IMPORTED_MODULE_16__.ICommandService);\n if (editor.getSelection().isEmpty()) {\n await commandService.executeCommand('editor.action.formatDocument');\n }\n else {\n await commandService.executeCommand('editor.action.formatSelection');\n }\n});\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/contrib/format/browser/formatActions.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/contrib/format/browser/formattingEdit.js":
/*!*******************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/contrib/format/browser/formattingEdit.js ***!
\*******************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ FormattingEdit: () => (/* binding */ FormattingEdit)\n/* harmony export */ });\n/* harmony import */ var _common_core_editOperation_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../common/core/editOperation.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/core/editOperation.js\");\n/* harmony import */ var _common_core_range_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../common/core/range.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/core/range.js\");\n/* harmony import */ var _browser_stableEditorScroll_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../browser/stableEditorScroll.js */ \"./node_modules/monaco-editor/esm/vs/editor/browser/stableEditorScroll.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n\n\nclass FormattingEdit {\n static _handleEolEdits(editor, edits) {\n let newEol = undefined;\n const singleEdits = [];\n for (const edit of edits) {\n if (typeof edit.eol === 'number') {\n newEol = edit.eol;\n }\n if (edit.range && typeof edit.text === 'string') {\n singleEdits.push(edit);\n }\n }\n if (typeof newEol === 'number') {\n if (editor.hasModel()) {\n editor.getModel().pushEOL(newEol);\n }\n }\n return singleEdits;\n }\n static _isFullModelReplaceEdit(editor, edit) {\n if (!editor.hasModel()) {\n return false;\n }\n const model = editor.getModel();\n const editRange = model.validateRange(edit.range);\n const fullModelRange = model.getFullModelRange();\n return fullModelRange.equalsRange(editRange);\n }\n static execute(editor, _edits, addUndoStops) {\n if (addUndoStops) {\n editor.pushUndoStop();\n }\n const scrollState = _browser_stableEditorScroll_js__WEBPACK_IMPORTED_MODULE_2__.StableEditorScrollState.capture(editor);\n const edits = FormattingEdit._handleEolEdits(editor, _edits);\n if (edits.length === 1 && FormattingEdit._isFullModelReplaceEdit(editor, edits[0])) {\n // We use replace semantics and hope that markers stay put...\n editor.executeEdits('formatEditsCommand', edits.map(edit => _common_core_editOperation_js__WEBPACK_IMPORTED_MODULE_0__.EditOperation.replace(_common_core_range_js__WEBPACK_IMPORTED_MODULE_1__.Range.lift(edit.range), edit.text)));\n }\n else {\n editor.executeEdits('formatEditsCommand', edits.map(edit => _common_core_editOperation_js__WEBPACK_IMPORTED_MODULE_0__.EditOperation.replaceMove(_common_core_range_js__WEBPACK_IMPORTED_MODULE_1__.Range.lift(edit.range), edit.text)));\n }\n if (addUndoStops) {\n editor.pushUndoStop();\n }\n scrollState.restoreRelativeVerticalPositionOfCursor(editor);\n }\n}\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/contrib/format/browser/formattingEdit.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/contrib/gotoError/browser/gotoError.js":
/*!*****************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/contrib/gotoError/browser/gotoError.js ***!
\*****************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ MarkerController: () => (/* binding */ MarkerController),\n/* harmony export */ NextMarkerAction: () => (/* binding */ NextMarkerAction)\n/* harmony export */ });\n/* harmony import */ var _base_common_codicons_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../../base/common/codicons.js */ \"./node_modules/monaco-editor/esm/vs/base/common/codicons.js\");\n/* harmony import */ var _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../base/common/lifecycle.js */ \"./node_modules/monaco-editor/esm/vs/base/common/lifecycle.js\");\n/* harmony import */ var _browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../browser/editorExtensions.js */ \"./node_modules/monaco-editor/esm/vs/editor/browser/editorExtensions.js\");\n/* harmony import */ var _browser_services_codeEditorService_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../../browser/services/codeEditorService.js */ \"./node_modules/monaco-editor/esm/vs/editor/browser/services/codeEditorService.js\");\n/* harmony import */ var _common_core_position_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../../common/core/position.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/core/position.js\");\n/* harmony import */ var _common_core_range_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../../../common/core/range.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/core/range.js\");\n/* harmony import */ var _common_editorContextKeys_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../../../common/editorContextKeys.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/editorContextKeys.js\");\n/* harmony import */ var _markerNavigationService_js__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ./markerNavigationService.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/gotoError/browser/markerNavigationService.js\");\n/* harmony import */ var _nls_js__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ../../../../nls.js */ \"./node_modules/monaco-editor/esm/vs/nls.js\");\n/* harmony import */ var _platform_actions_common_actions_js__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ../../../../platform/actions/common/actions.js */ \"./node_modules/monaco-editor/esm/vs/platform/actions/common/actions.js\");\n/* harmony import */ var _platform_contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! ../../../../platform/contextkey/common/contextkey.js */ \"./node_modules/monaco-editor/esm/vs/platform/contextkey/common/contextkey.js\");\n/* harmony import */ var _platform_instantiation_common_instantiation_js__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(/*! ../../../../platform/instantiation/common/instantiation.js */ \"./node_modules/monaco-editor/esm/vs/platform/instantiation/common/instantiation.js\");\n/* harmony import */ var _platform_theme_common_iconRegistry_js__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(/*! ../../../../platform/theme/common/iconRegistry.js */ \"./node_modules/monaco-editor/esm/vs/platform/theme/common/iconRegistry.js\");\n/* harmony import */ var _gotoErrorWidget_js__WEBPACK_IMPORTED_MODULE_13__ = __webpack_require__(/*! ./gotoErrorWidget.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/gotoError/browser/gotoErrorWidget.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\nvar __decorate = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\n return c > 3 && r && Object.defineProperty(target, key, r), r;\n};\nvar __param = (undefined && undefined.__param) || function (paramIndex, decorator) {\n return function (target, key) { decorator(target, key, paramIndex); }\n};\nvar MarkerController_1;\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlet MarkerController = MarkerController_1 = class MarkerController {\n static get(editor) {\n return editor.getContribution(MarkerController_1.ID);\n }\n constructor(editor, _markerNavigationService, _contextKeyService, _editorService, _instantiationService) {\n this._markerNavigationService = _markerNavigationService;\n this._contextKeyService = _contextKeyService;\n this._editorService = _editorService;\n this._instantiationService = _instantiationService;\n this._sessionDispoables = new _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_1__.DisposableStore();\n this._editor = editor;\n this._widgetVisible = CONTEXT_MARKERS_NAVIGATION_VISIBLE.bindTo(this._contextKeyService);\n }\n dispose() {\n this._cleanUp();\n this._sessionDispoables.dispose();\n }\n _cleanUp() {\n this._widgetVisible.reset();\n this._sessionDispoables.clear();\n this._widget = undefined;\n this._model = undefined;\n }\n _getOrCreateModel(uri) {\n if (this._model && this._model.matches(uri)) {\n return this._model;\n }\n let reusePosition = false;\n if (this._model) {\n reusePosition = true;\n this._cleanUp();\n }\n this._model = this._markerNavigationService.getMarkerList(uri);\n if (reusePosition) {\n this._model.move(true, this._editor.getModel(), this._editor.getPosition());\n }\n this._widget = this._instantiationService.createInstance(_gotoErrorWidget_js__WEBPACK_IMPORTED_MODULE_13__.MarkerNavigationWidget, this._editor);\n this._widget.onDidClose(() => this.close(), this, this._sessionDispoables);\n this._widgetVisible.set(true);\n this._sessionDispoables.add(this._model);\n this._sessionDispoables.add(this._widget);\n // follow cursor\n this._sessionDispoables.add(this._editor.onDidChangeCursorPosition(e => {\n var _a, _b, _c;\n if (!((_a = this._model) === null || _a === void 0 ? void 0 : _a.selected) || !_common_core_range_js__WEBPACK_IMPORTED_MODULE_5__.Range.containsPosition((_b = this._model) === null || _b === void 0 ? void 0 : _b.selected.marker, e.position)) {\n (_c = this._model) === null || _c === void 0 ? void 0 : _c.resetIndex();\n }\n }));\n // update markers\n this._sessionDispoables.add(this._model.onDidChange(() => {\n if (!this._widget || !this._widget.position || !this._model) {\n return;\n }\n const info = this._model.find(this._editor.getModel().uri, this._widget.position);\n if (info) {\n this._widget.updateMarker(info.marker);\n }\n else {\n this._widget.showStale();\n }\n }));\n // open related\n this._sessionDispoables.add(this._widget.onDidSelectRelatedInformation(related => {\n this._editorService.openCodeEditor({\n resource: related.resource,\n options: { pinned: true, revealIfOpened: true, selection: _common_core_range_js__WEBPACK_IMPORTED_MODULE_5__.Range.lift(related).collapseToStart() }\n }, this._editor);\n this.close(false);\n }));\n this._sessionDispoables.add(this._editor.onDidChangeModel(() => this._cleanUp()));\n return this._model;\n }\n close(focusEditor = true) {\n this._cleanUp();\n if (focusEditor) {\n this._editor.focus();\n }\n }\n showAtMarker(marker) {\n if (this._editor.hasModel()) {\n const model = this._getOrCreateModel(this._editor.getModel().uri);\n model.resetIndex();\n model.move(true, this._editor.getModel(), new _common_core_position_js__WEBPACK_IMPORTED_MODULE_4__.Position(marker.startLineNumber, marker.startColumn));\n if (model.selected) {\n this._widget.showAtMarker(model.selected.marker, model.selected.index, model.selected.total);\n }\n }\n }\n async nagivate(next, multiFile) {\n var _a, _b;\n if (this._editor.hasModel()) {\n const model = this._getOrCreateModel(multiFile ? undefined : this._editor.getModel().uri);\n model.move(next, this._editor.getModel(), this._editor.getPosition());\n if (!model.selected) {\n return;\n }\n if (model.selected.marker.resource.toString() !== this._editor.getModel().uri.toString()) {\n // show in different editor\n this._cleanUp();\n const otherEditor = await this._editorService.openCodeEditor({\n resource: model.selected.marker.resource,\n options: { pinned: false, revealIfOpened: true, selectionRevealType: 2 /* TextEditorSelectionRevealType.NearTop */, selection: model.selected.marker }\n }, this._editor);\n if (otherEditor) {\n (_a = MarkerController_1.get(otherEditor)) === null || _a === void 0 ? void 0 : _a.close();\n (_b = MarkerController_1.get(otherEditor)) === null || _b === void 0 ? void 0 : _b.nagivate(next, multiFile);\n }\n }\n else {\n // show in this editor\n this._widget.showAtMarker(model.selected.marker, model.selected.index, model.selected.total);\n }\n }\n }\n};\nMarkerController.ID = 'editor.contrib.markerController';\nMarkerController = MarkerController_1 = __decorate([\n __param(1, _markerNavigationService_js__WEBPACK_IMPORTED_MODULE_7__.IMarkerNavigationService),\n __param(2, _platform_contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_10__.IContextKeyService),\n __param(3, _browser_services_codeEditorService_js__WEBPACK_IMPORTED_MODULE_3__.ICodeEditorService),\n __param(4, _platform_instantiation_common_instantiation_js__WEBPACK_IMPORTED_MODULE_11__.IInstantiationService)\n], MarkerController);\n\nclass MarkerNavigationAction extends _browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_2__.EditorAction {\n constructor(_next, _multiFile, opts) {\n super(opts);\n this._next = _next;\n this._multiFile = _multiFile;\n }\n async run(_accessor, editor) {\n var _a;\n if (editor.hasModel()) {\n (_a = MarkerController.get(editor)) === null || _a === void 0 ? void 0 : _a.nagivate(this._next, this._multiFile);\n }\n }\n}\nclass NextMarkerAction extends MarkerNavigationAction {\n constructor() {\n super(true, false, {\n id: NextMarkerAction.ID,\n label: NextMarkerAction.LABEL,\n alias: 'Go to Next Problem (Error, Warning, Info)',\n precondition: undefined,\n kbOpts: {\n kbExpr: _common_editorContextKeys_js__WEBPACK_IMPORTED_MODULE_6__.EditorContextKeys.focus,\n primary: 512 /* KeyMod.Alt */ | 66 /* KeyCode.F8 */,\n weight: 100 /* KeybindingWeight.EditorContrib */\n },\n menuOpts: {\n menuId: _gotoErrorWidget_js__WEBPACK_IMPORTED_MODULE_13__.MarkerNavigationWidget.TitleMenu,\n title: NextMarkerAction.LABEL,\n icon: (0,_platform_theme_common_iconRegistry_js__WEBPACK_IMPORTED_MODULE_12__.registerIcon)('marker-navigation-next', _base_common_codicons_js__WEBPACK_IMPORTED_MODULE_0__.Codicon.arrowDown, _nls_js__WEBPACK_IMPORTED_MODULE_8__.localize('nextMarkerIcon', 'Icon for goto next marker.')),\n group: 'navigation',\n order: 1\n }\n });\n }\n}\nNextMarkerAction.ID = 'editor.action.marker.next';\nNextMarkerAction.LABEL = _nls_js__WEBPACK_IMPORTED_MODULE_8__.localize('markerAction.next.label', \"Go to Next Problem (Error, Warning, Info)\");\nclass PrevMarkerAction extends MarkerNavigationAction {\n constructor() {\n super(false, false, {\n id: PrevMarkerAction.ID,\n label: PrevMarkerAction.LABEL,\n alias: 'Go to Previous Problem (Error, Warning, Info)',\n precondition: undefined,\n kbOpts: {\n kbExpr: _common_editorContextKeys_js__WEBPACK_IMPORTED_MODULE_6__.EditorContextKeys.focus,\n primary: 1024 /* KeyMod.Shift */ | 512 /* KeyMod.Alt */ | 66 /* KeyCode.F8 */,\n weight: 100 /* KeybindingWeight.EditorContrib */\n },\n menuOpts: {\n menuId: _gotoErrorWidget_js__WEBPACK_IMPORTED_MODULE_13__.MarkerNavigationWidget.TitleMenu,\n title: PrevMarkerAction.LABEL,\n icon: (0,_platform_theme_common_iconRegistry_js__WEBPACK_IMPORTED_MODULE_12__.registerIcon)('marker-navigation-previous', _base_common_codicons_js__WEBPACK_IMPORTED_MODULE_0__.Codicon.arrowUp, _nls_js__WEBPACK_IMPORTED_MODULE_8__.localize('previousMarkerIcon', 'Icon for goto previous marker.')),\n group: 'navigation',\n order: 2\n }\n });\n }\n}\nPrevMarkerAction.ID = 'editor.action.marker.prev';\nPrevMarkerAction.LABEL = _nls_js__WEBPACK_IMPORTED_MODULE_8__.localize('markerAction.previous.label', \"Go to Previous Problem (Error, Warning, Info)\");\nclass NextMarkerInFilesAction extends MarkerNavigationAction {\n constructor() {\n super(true, true, {\n id: 'editor.action.marker.nextInFiles',\n label: _nls_js__WEBPACK_IMPORTED_MODULE_8__.localize('markerAction.nextInFiles.label', \"Go to Next Problem in Files (Error, Warning, Info)\"),\n alias: 'Go to Next Problem in Files (Error, Warning, Info)',\n precondition: undefined,\n kbOpts: {\n kbExpr: _common_editorContextKeys_js__WEBPACK_IMPORTED_MODULE_6__.EditorContextKeys.focus,\n primary: 66 /* KeyCode.F8 */,\n weight: 100 /* KeybindingWeight.EditorContrib */\n },\n menuOpts: {\n menuId: _platform_actions_common_actions_js__WEBPACK_IMPORTED_MODULE_9__.MenuId.MenubarGoMenu,\n title: _nls_js__WEBPACK_IMPORTED_MODULE_8__.localize({ key: 'miGotoNextProblem', comment: ['&& denotes a mnemonic'] }, \"Next &&Problem\"),\n group: '6_problem_nav',\n order: 1\n }\n });\n }\n}\nclass PrevMarkerInFilesAction extends MarkerNavigationAction {\n constructor() {\n super(false, true, {\n id: 'editor.action.marker.prevInFiles',\n label: _nls_js__WEBPACK_IMPORTED_MODULE_8__.localize('markerAction.previousInFiles.label', \"Go to Previous Problem in Files (Error, Warning, Info)\"),\n alias: 'Go to Previous Problem in Files (Error, Warning, Info)',\n precondition: undefined,\n kbOpts: {\n kbExpr: _common_editorContextKeys_js__WEBPACK_IMPORTED_MODULE_6__.EditorContextKeys.focus,\n primary: 1024 /* KeyMod.Shift */ | 66 /* KeyCode.F8 */,\n weight: 100 /* KeybindingWeight.EditorContrib */\n },\n menuOpts: {\n menuId: _platform_actions_common_actions_js__WEBPACK_IMPORTED_MODULE_9__.MenuId.MenubarGoMenu,\n title: _nls_js__WEBPACK_IMPORTED_MODULE_8__.localize({ key: 'miGotoPreviousProblem', comment: ['&& denotes a mnemonic'] }, \"Previous &&Problem\"),\n group: '6_problem_nav',\n order: 2\n }\n });\n }\n}\n(0,_browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_2__.registerEditorContribution)(MarkerController.ID, MarkerController, 4 /* EditorContributionInstantiation.Lazy */);\n(0,_browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_2__.registerEditorAction)(NextMarkerAction);\n(0,_browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_2__.registerEditorAction)(PrevMarkerAction);\n(0,_browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_2__.registerEditorAction)(NextMarkerInFilesAction);\n(0,_browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_2__.registerEditorAction)(PrevMarkerInFilesAction);\nconst CONTEXT_MARKERS_NAVIGATION_VISIBLE = new _platform_contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_10__.RawContextKey('markersNavigationVisible', false);\nconst MarkerCommand = _browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_2__.EditorCommand.bindToContribution(MarkerController.get);\n(0,_browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_2__.registerEditorCommand)(new MarkerCommand({\n id: 'closeMarkersNavigation',\n precondition: CONTEXT_MARKERS_NAVIGATION_VISIBLE,\n handler: x => x.close(),\n kbOpts: {\n weight: 100 /* KeybindingWeight.EditorContrib */ + 50,\n kbExpr: _common_editorContextKeys_js__WEBPACK_IMPORTED_MODULE_6__.EditorContextKeys.focus,\n primary: 9 /* KeyCode.Escape */,\n secondary: [1024 /* KeyMod.Shift */ | 9 /* KeyCode.Escape */]\n }\n}));\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/contrib/gotoError/browser/gotoError.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/contrib/gotoError/browser/gotoErrorWidget.js":
/*!***********************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/contrib/gotoError/browser/gotoErrorWidget.js ***!
\***********************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ MarkerNavigationWidget: () => (/* binding */ MarkerNavigationWidget)\n/* harmony export */ });\n/* harmony import */ var _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../../base/browser/dom.js */ \"./node_modules/monaco-editor/esm/vs/base/browser/dom.js\");\n/* harmony import */ var _base_browser_ui_scrollbar_scrollableElement_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../base/browser/ui/scrollbar/scrollableElement.js */ \"./node_modules/monaco-editor/esm/vs/base/browser/ui/scrollbar/scrollableElement.js\");\n/* harmony import */ var _base_common_arrays_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../../base/common/arrays.js */ \"./node_modules/monaco-editor/esm/vs/base/common/arrays.js\");\n/* harmony import */ var _base_common_color_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../../../base/common/color.js */ \"./node_modules/monaco-editor/esm/vs/base/common/color.js\");\n/* harmony import */ var _base_common_event_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../../../base/common/event.js */ \"./node_modules/monaco-editor/esm/vs/base/common/event.js\");\n/* harmony import */ var _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../../../../base/common/lifecycle.js */ \"./node_modules/monaco-editor/esm/vs/base/common/lifecycle.js\");\n/* harmony import */ var _base_common_resources_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../../../../base/common/resources.js */ \"./node_modules/monaco-editor/esm/vs/base/common/resources.js\");\n/* harmony import */ var _base_common_strings_js__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ../../../../base/common/strings.js */ \"./node_modules/monaco-editor/esm/vs/base/common/strings.js\");\n/* harmony import */ var _media_gotoErrorWidget_css__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ./media/gotoErrorWidget.css */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/gotoError/browser/media/gotoErrorWidget.css\");\n/* harmony import */ var _common_core_range_js__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ../../../common/core/range.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/core/range.js\");\n/* harmony import */ var _peekView_browser_peekView_js__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! ../../peekView/browser/peekView.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/peekView/browser/peekView.js\");\n/* harmony import */ var _nls_js__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(/*! ../../../../nls.js */ \"./node_modules/monaco-editor/esm/vs/nls.js\");\n/* harmony import */ var _platform_actions_browser_menuEntryActionViewItem_js__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(/*! ../../../../platform/actions/browser/menuEntryActionViewItem.js */ \"./node_modules/monaco-editor/esm/vs/platform/actions/browser/menuEntryActionViewItem.js\");\n/* harmony import */ var _platform_actions_common_actions_js__WEBPACK_IMPORTED_MODULE_13__ = __webpack_require__(/*! ../../../../platform/actions/common/actions.js */ \"./node_modules/monaco-editor/esm/vs/platform/actions/common/actions.js\");\n/* harmony import */ var _platform_contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_14__ = __webpack_require__(/*! ../../../../platform/contextkey/common/contextkey.js */ \"./node_modules/monaco-editor/esm/vs/platform/contextkey/common/contextkey.js\");\n/* harmony import */ var _platform_instantiation_common_instantiation_js__WEBPACK_IMPORTED_MODULE_15__ = __webpack_require__(/*! ../../../../platform/instantiation/common/instantiation.js */ \"./node_modules/monaco-editor/esm/vs/platform/instantiation/common/instantiation.js\");\n/* harmony import */ var _platform_label_common_label_js__WEBPACK_IMPORTED_MODULE_16__ = __webpack_require__(/*! ../../../../platform/label/common/label.js */ \"./node_modules/monaco-editor/esm/vs/platform/label/common/label.js\");\n/* harmony import */ var _platform_markers_common_markers_js__WEBPACK_IMPORTED_MODULE_17__ = __webpack_require__(/*! ../../../../platform/markers/common/markers.js */ \"./node_modules/monaco-editor/esm/vs/platform/markers/common/markers.js\");\n/* harmony import */ var _platform_opener_common_opener_js__WEBPACK_IMPORTED_MODULE_18__ = __webpack_require__(/*! ../../../../platform/opener/common/opener.js */ \"./node_modules/monaco-editor/esm/vs/platform/opener/common/opener.js\");\n/* harmony import */ var _platform_severityIcon_browser_severityIcon_js__WEBPACK_IMPORTED_MODULE_19__ = __webpack_require__(/*! ../../../../platform/severityIcon/browser/severityIcon.js */ \"./node_modules/monaco-editor/esm/vs/platform/severityIcon/browser/severityIcon.js\");\n/* harmony import */ var _platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_20__ = __webpack_require__(/*! ../../../../platform/theme/common/colorRegistry.js */ \"./node_modules/monaco-editor/esm/vs/platform/theme/common/colorRegistry.js\");\n/* harmony import */ var _platform_theme_common_themeService_js__WEBPACK_IMPORTED_MODULE_21__ = __webpack_require__(/*! ../../../../platform/theme/common/themeService.js */ \"./node_modules/monaco-editor/esm/vs/platform/theme/common/themeService.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\nvar __decorate = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\n return c > 3 && r && Object.defineProperty(target, key, r), r;\n};\nvar __param = (undefined && undefined.__param) || function (paramIndex, decorator) {\n return function (target, key) { decorator(target, key, paramIndex); }\n};\nvar MarkerNavigationWidget_1;\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nclass MessageWidget {\n constructor(parent, editor, onRelatedInformation, _openerService, _labelService) {\n this._openerService = _openerService;\n this._labelService = _labelService;\n this._lines = 0;\n this._longestLineLength = 0;\n this._relatedDiagnostics = new WeakMap();\n this._disposables = new _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_5__.DisposableStore();\n this._editor = editor;\n const domNode = document.createElement('div');\n domNode.className = 'descriptioncontainer';\n this._messageBlock = document.createElement('div');\n this._messageBlock.classList.add('message');\n this._messageBlock.setAttribute('aria-live', 'assertive');\n this._messageBlock.setAttribute('role', 'alert');\n domNode.appendChild(this._messageBlock);\n this._relatedBlock = document.createElement('div');\n domNode.appendChild(this._relatedBlock);\n this._disposables.add(_base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.addStandardDisposableListener(this._relatedBlock, 'click', event => {\n event.preventDefault();\n const related = this._relatedDiagnostics.get(event.target);\n if (related) {\n onRelatedInformation(related);\n }\n }));\n this._scrollable = new _base_browser_ui_scrollbar_scrollableElement_js__WEBPACK_IMPORTED_MODULE_1__.ScrollableElement(domNode, {\n horizontal: 1 /* ScrollbarVisibility.Auto */,\n vertical: 1 /* ScrollbarVisibility.Auto */,\n useShadows: false,\n horizontalScrollbarSize: 6,\n verticalScrollbarSize: 6\n });\n parent.appendChild(this._scrollable.getDomNode());\n this._disposables.add(this._scrollable.onScroll(e => {\n domNode.style.left = `-${e.scrollLeft}px`;\n domNode.style.top = `-${e.scrollTop}px`;\n }));\n this._disposables.add(this._scrollable);\n }\n dispose() {\n (0,_base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_5__.dispose)(this._disposables);\n }\n update(marker) {\n const { source, message, relatedInformation, code } = marker;\n let sourceAndCodeLength = ((source === null || source === void 0 ? void 0 : source.length) || 0) + '()'.length;\n if (code) {\n if (typeof code === 'string') {\n sourceAndCodeLength += code.length;\n }\n else {\n sourceAndCodeLength += code.value.length;\n }\n }\n const lines = (0,_base_common_strings_js__WEBPACK_IMPORTED_MODULE_7__.splitLines)(message);\n this._lines = lines.length;\n this._longestLineLength = 0;\n for (const line of lines) {\n this._longestLineLength = Math.max(line.length + sourceAndCodeLength, this._longestLineLength);\n }\n _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.clearNode(this._messageBlock);\n this._messageBlock.setAttribute('aria-label', this.getAriaLabel(marker));\n this._editor.applyFontInfo(this._messageBlock);\n let lastLineElement = this._messageBlock;\n for (const line of lines) {\n lastLineElement = document.createElement('div');\n lastLineElement.innerText = line;\n if (line === '') {\n lastLineElement.style.height = this._messageBlock.style.lineHeight;\n }\n this._messageBlock.appendChild(lastLineElement);\n }\n if (source || code) {\n const detailsElement = document.createElement('span');\n detailsElement.classList.add('details');\n lastLineElement.appendChild(detailsElement);\n if (source) {\n const sourceElement = document.createElement('span');\n sourceElement.innerText = source;\n sourceElement.classList.add('source');\n detailsElement.appendChild(sourceElement);\n }\n if (code) {\n if (typeof code === 'string') {\n const codeElement = document.createElement('span');\n codeElement.innerText = `(${code})`;\n codeElement.classList.add('code');\n detailsElement.appendChild(codeElement);\n }\n else {\n this._codeLink = _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.$('a.code-link');\n this._codeLink.setAttribute('href', `${code.target.toString()}`);\n this._codeLink.onclick = (e) => {\n this._openerService.open(code.target, { allowCommands: true });\n e.preventDefault();\n e.stopPropagation();\n };\n const codeElement = _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.append(this._codeLink, _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.$('span'));\n codeElement.innerText = code.value;\n detailsElement.appendChild(this._codeLink);\n }\n }\n }\n _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.clearNode(this._relatedBlock);\n this._editor.applyFontInfo(this._relatedBlock);\n if ((0,_base_common_arrays_js__WEBPACK_IMPORTED_MODULE_2__.isNonEmptyArray)(relatedInformation)) {\n const relatedInformationNode = this._relatedBlock.appendChild(document.createElement('div'));\n relatedInformationNode.style.paddingTop = `${Math.floor(this._editor.getOption(67 /* EditorOption.lineHeight */) * 0.66)}px`;\n this._lines += 1;\n for (const related of relatedInformation) {\n const container = document.createElement('div');\n const relatedResource = document.createElement('a');\n relatedResource.classList.add('filename');\n relatedResource.innerText = `${this._labelService.getUriBasenameLabel(related.resource)}(${related.startLineNumber}, ${related.startColumn}): `;\n relatedResource.title = this._labelService.getUriLabel(related.resource);\n this._relatedDiagnostics.set(relatedResource, related);\n const relatedMessage = document.createElement('span');\n relatedMessage.innerText = related.message;\n container.appendChild(relatedResource);\n container.appendChild(relatedMessage);\n this._lines += 1;\n relatedInformationNode.appendChild(container);\n }\n }\n const fontInfo = this._editor.getOption(50 /* EditorOption.fontInfo */);\n const scrollWidth = Math.ceil(fontInfo.typicalFullwidthCharacterWidth * this._longestLineLength * 0.75);\n const scrollHeight = fontInfo.lineHeight * this._lines;\n this._scrollable.setScrollDimensions({ scrollWidth, scrollHeight });\n }\n layout(height, width) {\n this._scrollable.getDomNode().style.height = `${height}px`;\n this._scrollable.getDomNode().style.width = `${width}px`;\n this._scrollable.setScrollDimensions({ width, height });\n }\n getHeightInLines() {\n return Math.min(17, this._lines);\n }\n getAriaLabel(marker) {\n let severityLabel = '';\n switch (marker.severity) {\n case _platform_markers_common_markers_js__WEBPACK_IMPORTED_MODULE_17__.MarkerSeverity.Error:\n severityLabel = _nls_js__WEBPACK_IMPORTED_MODULE_11__.localize('Error', \"Error\");\n break;\n case _platform_markers_common_markers_js__WEBPACK_IMPORTED_MODULE_17__.MarkerSeverity.Warning:\n severityLabel = _nls_js__WEBPACK_IMPORTED_MODULE_11__.localize('Warning', \"Warning\");\n break;\n case _platform_markers_common_markers_js__WEBPACK_IMPORTED_MODULE_17__.MarkerSeverity.Info:\n severityLabel = _nls_js__WEBPACK_IMPORTED_MODULE_11__.localize('Info', \"Info\");\n break;\n case _platform_markers_common_markers_js__WEBPACK_IMPORTED_MODULE_17__.MarkerSeverity.Hint:\n severityLabel = _nls_js__WEBPACK_IMPORTED_MODULE_11__.localize('Hint', \"Hint\");\n break;\n }\n let ariaLabel = _nls_js__WEBPACK_IMPORTED_MODULE_11__.localize('marker aria', \"{0} at {1}. \", severityLabel, marker.startLineNumber + ':' + marker.startColumn);\n const model = this._editor.getModel();\n if (model && (marker.startLineNumber <= model.getLineCount()) && (marker.startLineNumber >= 1)) {\n const lineContent = model.getLineContent(marker.startLineNumber);\n ariaLabel = `${lineContent}, ${ariaLabel}`;\n }\n return ariaLabel;\n }\n}\nlet MarkerNavigationWidget = MarkerNavigationWidget_1 = class MarkerNavigationWidget extends _peekView_browser_peekView_js__WEBPACK_IMPORTED_MODULE_10__.PeekViewWidget {\n constructor(editor, _themeService, _openerService, _menuService, instantiationService, _contextKeyService, _labelService) {\n super(editor, { showArrow: true, showFrame: true, isAccessible: true, frameWidth: 1 }, instantiationService);\n this._themeService = _themeService;\n this._openerService = _openerService;\n this._menuService = _menuService;\n this._contextKeyService = _contextKeyService;\n this._labelService = _labelService;\n this._callOnDispose = new _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_5__.DisposableStore();\n this._onDidSelectRelatedInformation = new _base_common_event_js__WEBPACK_IMPORTED_MODULE_4__.Emitter();\n this.onDidSelectRelatedInformation = this._onDidSelectRelatedInformation.event;\n this._severity = _platform_markers_common_markers_js__WEBPACK_IMPORTED_MODULE_17__.MarkerSeverity.Warning;\n this._backgroundColor = _base_common_color_js__WEBPACK_IMPORTED_MODULE_3__.Color.white;\n this._applyTheme(_themeService.getColorTheme());\n this._callOnDispose.add(_themeService.onDidColorThemeChange(this._applyTheme.bind(this)));\n this.create();\n }\n _applyTheme(theme) {\n this._backgroundColor = theme.getColor(editorMarkerNavigationBackground);\n let colorId = editorMarkerNavigationError;\n let headerBackground = editorMarkerNavigationErrorHeader;\n if (this._severity === _platform_markers_common_markers_js__WEBPACK_IMPORTED_MODULE_17__.MarkerSeverity.Warning) {\n colorId = editorMarkerNavigationWarning;\n headerBackground = editorMarkerNavigationWarningHeader;\n }\n else if (this._severity === _platform_markers_common_markers_js__WEBPACK_IMPORTED_MODULE_17__.MarkerSeverity.Info) {\n colorId = editorMarkerNavigationInfo;\n headerBackground = editorMarkerNavigationInfoHeader;\n }\n const frameColor = theme.getColor(colorId);\n const headerBg = theme.getColor(headerBackground);\n this.style({\n arrowColor: frameColor,\n frameColor: frameColor,\n headerBackgroundColor: headerBg,\n primaryHeadingColor: theme.getColor(_peekView_browser_peekView_js__WEBPACK_IMPORTED_MODULE_10__.peekViewTitleForeground),\n secondaryHeadingColor: theme.getColor(_peekView_browser_peekView_js__WEBPACK_IMPORTED_MODULE_10__.peekViewTitleInfoForeground)\n }); // style() will trigger _applyStyles\n }\n _applyStyles() {\n if (this._parentContainer) {\n this._parentContainer.style.backgroundColor = this._backgroundColor ? this._backgroundColor.toString() : '';\n }\n super._applyStyles();\n }\n dispose() {\n this._callOnDispose.dispose();\n super.dispose();\n }\n _fillHead(container) {\n super._fillHead(container);\n this._disposables.add(this._actionbarWidget.actionRunner.onWillRun(e => this.editor.focus()));\n const actions = [];\n const menu = this._menuService.createMenu(MarkerNavigationWidget_1.TitleMenu, this._contextKeyService);\n (0,_platform_actions_browser_menuEntryActionViewItem_js__WEBPACK_IMPORTED_MODULE_12__.createAndFillInActionBarActions)(menu, undefined, actions);\n this._actionbarWidget.push(actions, { label: false, icon: true, index: 0 });\n menu.dispose();\n }\n _fillTitleIcon(container) {\n this._icon = _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.append(container, _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.$(''));\n }\n _fillBody(container) {\n this._parentContainer = container;\n container.classList.add('marker-widget');\n this._parentContainer.tabIndex = 0;\n this._parentContainer.setAttribute('role', 'tooltip');\n this._container = document.createElement('div');\n container.appendChild(this._container);\n this._message = new MessageWidget(this._container, this.editor, related => this._onDidSelectRelatedInformation.fire(related), this._openerService, this._labelService);\n this._disposables.add(this._message);\n }\n show() {\n throw new Error('call showAtMarker');\n }\n showAtMarker(marker, markerIdx, markerCount) {\n // update:\n // * title\n // * message\n this._container.classList.remove('stale');\n this._message.update(marker);\n // update frame color (only applied on 'show')\n this._severity = marker.severity;\n this._applyTheme(this._themeService.getColorTheme());\n // show\n const range = _common_core_range_js__WEBPACK_IMPORTED_MODULE_9__.Range.lift(marker);\n const editorPosition = this.editor.getPosition();\n const position = editorPosition && range.containsPosition(editorPosition) ? editorPosition : range.getStartPosition();\n super.show(position, this.computeRequiredHeight());\n const model = this.editor.getModel();\n if (model) {\n const detail = markerCount > 1\n ? _nls_js__WEBPACK_IMPORTED_MODULE_11__.localize('problems', \"{0} of {1} problems\", markerIdx, markerCount)\n : _nls_js__WEBPACK_IMPORTED_MODULE_11__.localize('change', \"{0} of {1} problem\", markerIdx, markerCount);\n this.setTitle((0,_base_common_resources_js__WEBPACK_IMPORTED_MODULE_6__.basename)(model.uri), detail);\n }\n this._icon.className = `codicon ${_platform_severityIcon_browser_severityIcon_js__WEBPACK_IMPORTED_MODULE_19__.SeverityIcon.className(_platform_markers_common_markers_js__WEBPACK_IMPORTED_MODULE_17__.MarkerSeverity.toSeverity(this._severity))}`;\n this.editor.revealPositionNearTop(position, 0 /* ScrollType.Smooth */);\n this.editor.focus();\n }\n updateMarker(marker) {\n this._container.classList.remove('stale');\n this._message.update(marker);\n }\n showStale() {\n this._container.classList.add('stale');\n this._relayout();\n }\n _doLayoutBody(heightInPixel, widthInPixel) {\n super._doLayoutBody(heightInPixel, widthInPixel);\n this._heightInPixel = heightInPixel;\n this._message.layout(heightInPixel, widthInPixel);\n this._container.style.height = `${heightInPixel}px`;\n }\n _onWidth(widthInPixel) {\n this._message.layout(this._heightInPixel, widthInPixel);\n }\n _relayout() {\n super._relayout(this.computeRequiredHeight());\n }\n computeRequiredHeight() {\n return 3 + this._message.getHeightInLines();\n }\n};\nMarkerNavigationWidget.TitleMenu = new _platform_actions_common_actions_js__WEBPACK_IMPORTED_MODULE_13__.MenuId('gotoErrorTitleMenu');\nMarkerNavigationWidget = MarkerNavigationWidget_1 = __decorate([\n __param(1, _platform_theme_common_themeService_js__WEBPACK_IMPORTED_MODULE_21__.IThemeService),\n __param(2, _platform_opener_common_opener_js__WEBPACK_IMPORTED_MODULE_18__.IOpenerService),\n __param(3, _platform_actions_common_actions_js__WEBPACK_IMPORTED_MODULE_13__.IMenuService),\n __param(4, _platform_instantiation_common_instantiation_js__WEBPACK_IMPORTED_MODULE_15__.IInstantiationService),\n __param(5, _platform_contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_14__.IContextKeyService),\n __param(6, _platform_label_common_label_js__WEBPACK_IMPORTED_MODULE_16__.ILabelService)\n], MarkerNavigationWidget);\n\n// theming\nconst errorDefault = (0,_platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_20__.oneOf)(_platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_20__.editorErrorForeground, _platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_20__.editorErrorBorder);\nconst warningDefault = (0,_platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_20__.oneOf)(_platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_20__.editorWarningForeground, _platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_20__.editorWarningBorder);\nconst infoDefault = (0,_platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_20__.oneOf)(_platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_20__.editorInfoForeground, _platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_20__.editorInfoBorder);\nconst editorMarkerNavigationError = (0,_platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_20__.registerColor)('editorMarkerNavigationError.background', { dark: errorDefault, light: errorDefault, hcDark: _platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_20__.contrastBorder, hcLight: _platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_20__.contrastBorder }, _nls_js__WEBPACK_IMPORTED_MODULE_11__.localize('editorMarkerNavigationError', 'Editor marker navigation widget error color.'));\nconst editorMarkerNavigationErrorHeader = (0,_platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_20__.registerColor)('editorMarkerNavigationError.headerBackground', { dark: (0,_platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_20__.transparent)(editorMarkerNavigationError, .1), light: (0,_platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_20__.transparent)(editorMarkerNavigationError, .1), hcDark: null, hcLight: null }, _nls_js__WEBPACK_IMPORTED_MODULE_11__.localize('editorMarkerNavigationErrorHeaderBackground', 'Editor marker navigation widget error heading background.'));\nconst editorMarkerNavigationWarning = (0,_platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_20__.registerColor)('editorMarkerNavigationWarning.background', { dark: warningDefault, light: warningDefault, hcDark: _platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_20__.contrastBorder, hcLight: _platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_20__.contrastBorder }, _nls_js__WEBPACK_IMPORTED_MODULE_11__.localize('editorMarkerNavigationWarning', 'Editor marker navigation widget warning color.'));\nconst editorMarkerNavigationWarningHeader = (0,_platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_20__.registerColor)('editorMarkerNavigationWarning.headerBackground', { dark: (0,_platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_20__.transparent)(editorMarkerNavigationWarning, .1), light: (0,_platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_20__.transparent)(editorMarkerNavigationWarning, .1), hcDark: '#0C141F', hcLight: (0,_platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_20__.transparent)(editorMarkerNavigationWarning, .2) }, _nls_js__WEBPACK_IMPORTED_MODULE_11__.localize('editorMarkerNavigationWarningBackground', 'Editor marker navigation widget warning heading background.'));\nconst editorMarkerNavigationInfo = (0,_platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_20__.registerColor)('editorMarkerNavigationInfo.background', { dark: infoDefault, light: infoDefault, hcDark: _platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_20__.contrastBorder, hcLight: _platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_20__.contrastBorder }, _nls_js__WEBPACK_IMPORTED_MODULE_11__.localize('editorMarkerNavigationInfo', 'Editor marker navigation widget info color.'));\nconst editorMarkerNavigationInfoHeader = (0,_platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_20__.registerColor)('editorMarkerNavigationInfo.headerBackground', { dark: (0,_platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_20__.transparent)(editorMarkerNavigationInfo, .1), light: (0,_platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_20__.transparent)(editorMarkerNavigationInfo, .1), hcDark: null, hcLight: null }, _nls_js__WEBPACK_IMPORTED_MODULE_11__.localize('editorMarkerNavigationInfoHeaderBackground', 'Editor marker navigation widget info heading background.'));\nconst editorMarkerNavigationBackground = (0,_platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_20__.registerColor)('editorMarkerNavigation.background', { dark: _platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_20__.editorBackground, light: _platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_20__.editorBackground, hcDark: _platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_20__.editorBackground, hcLight: _platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_20__.editorBackground }, _nls_js__WEBPACK_IMPORTED_MODULE_11__.localize('editorMarkerNavigationBackground', 'Editor marker navigation widget background.'));\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/contrib/gotoError/browser/gotoErrorWidget.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/contrib/gotoError/browser/markerNavigationService.js":
/*!*******************************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/contrib/gotoError/browser/markerNavigationService.js ***!
\*******************************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ IMarkerNavigationService: () => (/* binding */ IMarkerNavigationService),\n/* harmony export */ MarkerCoordinate: () => (/* binding */ MarkerCoordinate),\n/* harmony export */ MarkerList: () => (/* binding */ MarkerList)\n/* harmony export */ });\n/* harmony import */ var _base_common_arrays_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../../base/common/arrays.js */ \"./node_modules/monaco-editor/esm/vs/base/common/arrays.js\");\n/* harmony import */ var _base_common_event_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../base/common/event.js */ \"./node_modules/monaco-editor/esm/vs/base/common/event.js\");\n/* harmony import */ var _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../../base/common/lifecycle.js */ \"./node_modules/monaco-editor/esm/vs/base/common/lifecycle.js\");\n/* harmony import */ var _base_common_linkedList_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../../../base/common/linkedList.js */ \"./node_modules/monaco-editor/esm/vs/base/common/linkedList.js\");\n/* harmony import */ var _base_common_strings_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../../../base/common/strings.js */ \"./node_modules/monaco-editor/esm/vs/base/common/strings.js\");\n/* harmony import */ var _base_common_uri_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../../../../base/common/uri.js */ \"./node_modules/monaco-editor/esm/vs/base/common/uri.js\");\n/* harmony import */ var _common_core_range_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../../../common/core/range.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/core/range.js\");\n/* harmony import */ var _platform_instantiation_common_extensions_js__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ../../../../platform/instantiation/common/extensions.js */ \"./node_modules/monaco-editor/esm/vs/platform/instantiation/common/extensions.js\");\n/* harmony import */ var _platform_instantiation_common_instantiation_js__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ../../../../platform/instantiation/common/instantiation.js */ \"./node_modules/monaco-editor/esm/vs/platform/instantiation/common/instantiation.js\");\n/* harmony import */ var _platform_markers_common_markers_js__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ../../../../platform/markers/common/markers.js */ \"./node_modules/monaco-editor/esm/vs/platform/markers/common/markers.js\");\n/* harmony import */ var _platform_configuration_common_configuration_js__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! ../../../../platform/configuration/common/configuration.js */ \"./node_modules/monaco-editor/esm/vs/platform/configuration/common/configuration.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\nvar __decorate = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\n return c > 3 && r && Object.defineProperty(target, key, r), r;\n};\nvar __param = (undefined && undefined.__param) || function (paramIndex, decorator) {\n return function (target, key) { decorator(target, key, paramIndex); }\n};\n\n\n\n\n\n\n\n\n\n\n\nclass MarkerCoordinate {\n constructor(marker, index, total) {\n this.marker = marker;\n this.index = index;\n this.total = total;\n }\n}\nlet MarkerList = class MarkerList {\n constructor(resourceFilter, _markerService, _configService) {\n this._markerService = _markerService;\n this._configService = _configService;\n this._onDidChange = new _base_common_event_js__WEBPACK_IMPORTED_MODULE_1__.Emitter();\n this.onDidChange = this._onDidChange.event;\n this._dispoables = new _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_2__.DisposableStore();\n this._markers = [];\n this._nextIdx = -1;\n if (_base_common_uri_js__WEBPACK_IMPORTED_MODULE_5__.URI.isUri(resourceFilter)) {\n this._resourceFilter = uri => uri.toString() === resourceFilter.toString();\n }\n else if (resourceFilter) {\n this._resourceFilter = resourceFilter;\n }\n const compareOrder = this._configService.getValue('problems.sortOrder');\n const compareMarker = (a, b) => {\n let res = (0,_base_common_strings_js__WEBPACK_IMPORTED_MODULE_4__.compare)(a.resource.toString(), b.resource.toString());\n if (res === 0) {\n if (compareOrder === 'position') {\n res = _common_core_range_js__WEBPACK_IMPORTED_MODULE_6__.Range.compareRangesUsingStarts(a, b) || _platform_markers_common_markers_js__WEBPACK_IMPORTED_MODULE_9__.MarkerSeverity.compare(a.severity, b.severity);\n }\n else {\n res = _platform_markers_common_markers_js__WEBPACK_IMPORTED_MODULE_9__.MarkerSeverity.compare(a.severity, b.severity) || _common_core_range_js__WEBPACK_IMPORTED_MODULE_6__.Range.compareRangesUsingStarts(a, b);\n }\n }\n return res;\n };\n const updateMarker = () => {\n this._markers = this._markerService.read({\n resource: _base_common_uri_js__WEBPACK_IMPORTED_MODULE_5__.URI.isUri(resourceFilter) ? resourceFilter : undefined,\n severities: _platform_markers_common_markers_js__WEBPACK_IMPORTED_MODULE_9__.MarkerSeverity.Error | _platform_markers_common_markers_js__WEBPACK_IMPORTED_MODULE_9__.MarkerSeverity.Warning | _platform_markers_common_markers_js__WEBPACK_IMPORTED_MODULE_9__.MarkerSeverity.Info\n });\n if (typeof resourceFilter === 'function') {\n this._markers = this._markers.filter(m => this._resourceFilter(m.resource));\n }\n this._markers.sort(compareMarker);\n };\n updateMarker();\n this._dispoables.add(_markerService.onMarkerChanged(uris => {\n if (!this._resourceFilter || uris.some(uri => this._resourceFilter(uri))) {\n updateMarker();\n this._nextIdx = -1;\n this._onDidChange.fire();\n }\n }));\n }\n dispose() {\n this._dispoables.dispose();\n this._onDidChange.dispose();\n }\n matches(uri) {\n if (!this._resourceFilter && !uri) {\n return true;\n }\n if (!this._resourceFilter || !uri) {\n return false;\n }\n return this._resourceFilter(uri);\n }\n get selected() {\n const marker = this._markers[this._nextIdx];\n return marker && new MarkerCoordinate(marker, this._nextIdx + 1, this._markers.length);\n }\n _initIdx(model, position, fwd) {\n let found = false;\n let idx = this._markers.findIndex(marker => marker.resource.toString() === model.uri.toString());\n if (idx < 0) {\n idx = (0,_base_common_arrays_js__WEBPACK_IMPORTED_MODULE_0__.binarySearch)(this._markers, { resource: model.uri }, (a, b) => (0,_base_common_strings_js__WEBPACK_IMPORTED_MODULE_4__.compare)(a.resource.toString(), b.resource.toString()));\n if (idx < 0) {\n idx = ~idx;\n }\n }\n for (let i = idx; i < this._markers.length; i++) {\n let range = _common_core_range_js__WEBPACK_IMPORTED_MODULE_6__.Range.lift(this._markers[i]);\n if (range.isEmpty()) {\n const word = model.getWordAtPosition(range.getStartPosition());\n if (word) {\n range = new _common_core_range_js__WEBPACK_IMPORTED_MODULE_6__.Range(range.startLineNumber, word.startColumn, range.startLineNumber, word.endColumn);\n }\n }\n if (position && (range.containsPosition(position) || position.isBeforeOrEqual(range.getStartPosition()))) {\n this._nextIdx = i;\n found = true;\n break;\n }\n if (this._markers[i].resource.toString() !== model.uri.toString()) {\n break;\n }\n }\n if (!found) {\n // after the last change\n this._nextIdx = fwd ? 0 : this._markers.length - 1;\n }\n if (this._nextIdx < 0) {\n this._nextIdx = this._markers.length - 1;\n }\n }\n resetIndex() {\n this._nextIdx = -1;\n }\n move(fwd, model, position) {\n if (this._markers.length === 0) {\n return false;\n }\n const oldIdx = this._nextIdx;\n if (this._nextIdx === -1) {\n this._initIdx(model, position, fwd);\n }\n else if (fwd) {\n this._nextIdx = (this._nextIdx + 1) % this._markers.length;\n }\n else if (!fwd) {\n this._nextIdx = (this._nextIdx - 1 + this._markers.length) % this._markers.length;\n }\n if (oldIdx !== this._nextIdx) {\n return true;\n }\n return false;\n }\n find(uri, position) {\n let idx = this._markers.findIndex(marker => marker.resource.toString() === uri.toString());\n if (idx < 0) {\n return undefined;\n }\n for (; idx < this._markers.length; idx++) {\n if (_common_core_range_js__WEBPACK_IMPORTED_MODULE_6__.Range.containsPosition(this._markers[idx], position)) {\n return new MarkerCoordinate(this._markers[idx], idx + 1, this._markers.length);\n }\n }\n return undefined;\n }\n};\nMarkerList = __decorate([\n __param(1, _platform_markers_common_markers_js__WEBPACK_IMPORTED_MODULE_9__.IMarkerService),\n __param(2, _platform_configuration_common_configuration_js__WEBPACK_IMPORTED_MODULE_10__.IConfigurationService)\n], MarkerList);\n\nconst IMarkerNavigationService = (0,_platform_instantiation_common_instantiation_js__WEBPACK_IMPORTED_MODULE_8__.createDecorator)('IMarkerNavigationService');\nlet MarkerNavigationService = class MarkerNavigationService {\n constructor(_markerService, _configService) {\n this._markerService = _markerService;\n this._configService = _configService;\n this._provider = new _base_common_linkedList_js__WEBPACK_IMPORTED_MODULE_3__.LinkedList();\n }\n getMarkerList(resource) {\n for (const provider of this._provider) {\n const result = provider.getMarkerList(resource);\n if (result) {\n return result;\n }\n }\n // default\n return new MarkerList(resource, this._markerService, this._configService);\n }\n};\nMarkerNavigationService = __decorate([\n __param(0, _platform_markers_common_markers_js__WEBPACK_IMPORTED_MODULE_9__.IMarkerService),\n __param(1, _platform_configuration_common_configuration_js__WEBPACK_IMPORTED_MODULE_10__.IConfigurationService)\n], MarkerNavigationService);\n(0,_platform_instantiation_common_extensions_js__WEBPACK_IMPORTED_MODULE_7__.registerSingleton)(IMarkerNavigationService, MarkerNavigationService, 1 /* InstantiationType.Delayed */);\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/contrib/gotoError/browser/markerNavigationService.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/contrib/gotoSymbol/browser/goToCommands.js":
/*!*********************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/contrib/gotoSymbol/browser/goToCommands.js ***!
\*********************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ DefinitionAction: () => (/* binding */ DefinitionAction),\n/* harmony export */ SymbolNavigationAction: () => (/* binding */ SymbolNavigationAction),\n/* harmony export */ SymbolNavigationAnchor: () => (/* binding */ SymbolNavigationAnchor)\n/* harmony export */ });\n/* harmony import */ var _base_browser_ui_aria_aria_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../../base/browser/ui/aria/aria.js */ \"./node_modules/monaco-editor/esm/vs/base/browser/ui/aria/aria.js\");\n/* harmony import */ var _base_common_async_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../base/common/async.js */ \"./node_modules/monaco-editor/esm/vs/base/common/async.js\");\n/* harmony import */ var _base_common_keyCodes_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../../base/common/keyCodes.js */ \"./node_modules/monaco-editor/esm/vs/base/common/keyCodes.js\");\n/* harmony import */ var _base_common_types_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../../../base/common/types.js */ \"./node_modules/monaco-editor/esm/vs/base/common/types.js\");\n/* harmony import */ var _base_common_uri_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../../../base/common/uri.js */ \"./node_modules/monaco-editor/esm/vs/base/common/uri.js\");\n/* harmony import */ var _editorState_browser_editorState_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../../editorState/browser/editorState.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/editorState/browser/editorState.js\");\n/* harmony import */ var _browser_editorBrowser_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../../../browser/editorBrowser.js */ \"./node_modules/monaco-editor/esm/vs/editor/browser/editorBrowser.js\");\n/* harmony import */ var _browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ../../../browser/editorExtensions.js */ \"./node_modules/monaco-editor/esm/vs/editor/browser/editorExtensions.js\");\n/* harmony import */ var _browser_services_codeEditorService_js__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ../../../browser/services/codeEditorService.js */ \"./node_modules/monaco-editor/esm/vs/editor/browser/services/codeEditorService.js\");\n/* harmony import */ var _browser_widget_embeddedCodeEditorWidget_js__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ../../../browser/widget/embeddedCodeEditorWidget.js */ \"./node_modules/monaco-editor/esm/vs/editor/browser/widget/embeddedCodeEditorWidget.js\");\n/* harmony import */ var _common_core_position_js__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! ../../../common/core/position.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/core/position.js\");\n/* harmony import */ var _common_core_range_js__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(/*! ../../../common/core/range.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/core/range.js\");\n/* harmony import */ var _common_editorContextKeys_js__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(/*! ../../../common/editorContextKeys.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/editorContextKeys.js\");\n/* harmony import */ var _common_languages_js__WEBPACK_IMPORTED_MODULE_13__ = __webpack_require__(/*! ../../../common/languages.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/languages.js\");\n/* harmony import */ var _peek_referencesController_js__WEBPACK_IMPORTED_MODULE_14__ = __webpack_require__(/*! ./peek/referencesController.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/gotoSymbol/browser/peek/referencesController.js\");\n/* harmony import */ var _referencesModel_js__WEBPACK_IMPORTED_MODULE_15__ = __webpack_require__(/*! ./referencesModel.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/gotoSymbol/browser/referencesModel.js\");\n/* harmony import */ var _symbolNavigation_js__WEBPACK_IMPORTED_MODULE_16__ = __webpack_require__(/*! ./symbolNavigation.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/gotoSymbol/browser/symbolNavigation.js\");\n/* harmony import */ var _message_browser_messageController_js__WEBPACK_IMPORTED_MODULE_17__ = __webpack_require__(/*! ../../message/browser/messageController.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/message/browser/messageController.js\");\n/* harmony import */ var _peekView_browser_peekView_js__WEBPACK_IMPORTED_MODULE_18__ = __webpack_require__(/*! ../../peekView/browser/peekView.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/peekView/browser/peekView.js\");\n/* harmony import */ var _nls_js__WEBPACK_IMPORTED_MODULE_19__ = __webpack_require__(/*! ../../../../nls.js */ \"./node_modules/monaco-editor/esm/vs/nls.js\");\n/* harmony import */ var _platform_actions_common_actions_js__WEBPACK_IMPORTED_MODULE_20__ = __webpack_require__(/*! ../../../../platform/actions/common/actions.js */ \"./node_modules/monaco-editor/esm/vs/platform/actions/common/actions.js\");\n/* harmony import */ var _platform_commands_common_commands_js__WEBPACK_IMPORTED_MODULE_21__ = __webpack_require__(/*! ../../../../platform/commands/common/commands.js */ \"./node_modules/monaco-editor/esm/vs/platform/commands/common/commands.js\");\n/* harmony import */ var _platform_contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_22__ = __webpack_require__(/*! ../../../../platform/contextkey/common/contextkey.js */ \"./node_modules/monaco-editor/esm/vs/platform/contextkey/common/contextkey.js\");\n/* harmony import */ var _platform_instantiation_common_instantiation_js__WEBPACK_IMPORTED_MODULE_23__ = __webpack_require__(/*! ../../../../platform/instantiation/common/instantiation.js */ \"./node_modules/monaco-editor/esm/vs/platform/instantiation/common/instantiation.js\");\n/* harmony import */ var _platform_notification_common_notification_js__WEBPACK_IMPORTED_MODULE_24__ = __webpack_require__(/*! ../../../../platform/notification/common/notification.js */ \"./node_modules/monaco-editor/esm/vs/platform/notification/common/notification.js\");\n/* harmony import */ var _platform_progress_common_progress_js__WEBPACK_IMPORTED_MODULE_25__ = __webpack_require__(/*! ../../../../platform/progress/common/progress.js */ \"./node_modules/monaco-editor/esm/vs/platform/progress/common/progress.js\");\n/* harmony import */ var _goToSymbol_js__WEBPACK_IMPORTED_MODULE_26__ = __webpack_require__(/*! ./goToSymbol.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/gotoSymbol/browser/goToSymbol.js\");\n/* harmony import */ var _common_services_languageFeatures_js__WEBPACK_IMPORTED_MODULE_27__ = __webpack_require__(/*! ../../../common/services/languageFeatures.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/services/languageFeatures.js\");\n/* harmony import */ var _base_common_iterator_js__WEBPACK_IMPORTED_MODULE_28__ = __webpack_require__(/*! ../../../../base/common/iterator.js */ \"./node_modules/monaco-editor/esm/vs/base/common/iterator.js\");\n/* harmony import */ var _platform_contextkey_common_contextkeys_js__WEBPACK_IMPORTED_MODULE_29__ = __webpack_require__(/*! ../../../../platform/contextkey/common/contextkeys.js */ \"./node_modules/monaco-editor/esm/vs/platform/contextkey/common/contextkeys.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\nvar _a, _b, _c, _d, _e, _f, _g, _h;\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n_platform_actions_common_actions_js__WEBPACK_IMPORTED_MODULE_20__.MenuRegistry.appendMenuItem(_platform_actions_common_actions_js__WEBPACK_IMPORTED_MODULE_20__.MenuId.EditorContext, {\n submenu: _platform_actions_common_actions_js__WEBPACK_IMPORTED_MODULE_20__.MenuId.EditorContextPeek,\n title: _nls_js__WEBPACK_IMPORTED_MODULE_19__.localize('peek.submenu', \"Peek\"),\n group: 'navigation',\n order: 100\n});\nclass SymbolNavigationAnchor {\n static is(thing) {\n if (!thing || typeof thing !== 'object') {\n return false;\n }\n if (thing instanceof SymbolNavigationAnchor) {\n return true;\n }\n if (_common_core_position_js__WEBPACK_IMPORTED_MODULE_10__.Position.isIPosition(thing.position) && thing.model) {\n return true;\n }\n return false;\n }\n constructor(model, position) {\n this.model = model;\n this.position = position;\n }\n}\nclass SymbolNavigationAction extends _browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_7__.EditorAction2 {\n static all() {\n return SymbolNavigationAction._allSymbolNavigationCommands.values();\n }\n static _patchConfig(opts) {\n const result = { ...opts, f1: true };\n // patch context menu when clause\n if (result.menu) {\n for (const item of _base_common_iterator_js__WEBPACK_IMPORTED_MODULE_28__.Iterable.wrap(result.menu)) {\n if (item.id === _platform_actions_common_actions_js__WEBPACK_IMPORTED_MODULE_20__.MenuId.EditorContext || item.id === _platform_actions_common_actions_js__WEBPACK_IMPORTED_MODULE_20__.MenuId.EditorContextPeek) {\n item.when = _platform_contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_22__.ContextKeyExpr.and(opts.precondition, item.when);\n }\n }\n }\n return result;\n }\n constructor(configuration, opts) {\n super(SymbolNavigationAction._patchConfig(opts));\n this.configuration = configuration;\n SymbolNavigationAction._allSymbolNavigationCommands.set(opts.id, this);\n }\n runEditorCommand(accessor, editor, arg, range) {\n if (!editor.hasModel()) {\n return Promise.resolve(undefined);\n }\n const notificationService = accessor.get(_platform_notification_common_notification_js__WEBPACK_IMPORTED_MODULE_24__.INotificationService);\n const editorService = accessor.get(_browser_services_codeEditorService_js__WEBPACK_IMPORTED_MODULE_8__.ICodeEditorService);\n const progressService = accessor.get(_platform_progress_common_progress_js__WEBPACK_IMPORTED_MODULE_25__.IEditorProgressService);\n const symbolNavService = accessor.get(_symbolNavigation_js__WEBPACK_IMPORTED_MODULE_16__.ISymbolNavigationService);\n const languageFeaturesService = accessor.get(_common_services_languageFeatures_js__WEBPACK_IMPORTED_MODULE_27__.ILanguageFeaturesService);\n const instaService = accessor.get(_platform_instantiation_common_instantiation_js__WEBPACK_IMPORTED_MODULE_23__.IInstantiationService);\n const model = editor.getModel();\n const position = editor.getPosition();\n const anchor = SymbolNavigationAnchor.is(arg) ? arg : new SymbolNavigationAnchor(model, position);\n const cts = new _editorState_browser_editorState_js__WEBPACK_IMPORTED_MODULE_5__.EditorStateCancellationTokenSource(editor, 1 /* CodeEditorStateFlag.Value */ | 4 /* CodeEditorStateFlag.Position */);\n const promise = (0,_base_common_async_js__WEBPACK_IMPORTED_MODULE_1__.raceCancellation)(this._getLocationModel(languageFeaturesService, anchor.model, anchor.position, cts.token), cts.token).then(async (references) => {\n var _j;\n if (!references || cts.token.isCancellationRequested) {\n return;\n }\n (0,_base_browser_ui_aria_aria_js__WEBPACK_IMPORTED_MODULE_0__.alert)(references.ariaMessage);\n let altAction;\n if (references.referenceAt(model.uri, position)) {\n const altActionId = this._getAlternativeCommand(editor);\n if (!SymbolNavigationAction._activeAlternativeCommands.has(altActionId) && SymbolNavigationAction._allSymbolNavigationCommands.has(altActionId)) {\n altAction = SymbolNavigationAction._allSymbolNavigationCommands.get(altActionId);\n }\n }\n const referenceCount = references.references.length;\n if (referenceCount === 0) {\n // no result -> show message\n if (!this.configuration.muteMessage) {\n const info = model.getWordAtPosition(position);\n (_j = _message_browser_messageController_js__WEBPACK_IMPORTED_MODULE_17__.MessageController.get(editor)) === null || _j === void 0 ? void 0 : _j.showMessage(this._getNoResultFoundMessage(info), position);\n }\n }\n else if (referenceCount === 1 && altAction) {\n // already at the only result, run alternative\n SymbolNavigationAction._activeAlternativeCommands.add(this.desc.id);\n instaService.invokeFunction((accessor) => altAction.runEditorCommand(accessor, editor, arg, range).finally(() => {\n SymbolNavigationAction._activeAlternativeCommands.delete(this.desc.id);\n }));\n }\n else {\n // normal results handling\n return this._onResult(editorService, symbolNavService, editor, references, range);\n }\n }, (err) => {\n // report an error\n notificationService.error(err);\n }).finally(() => {\n cts.dispose();\n });\n progressService.showWhile(promise, 250);\n return promise;\n }\n async _onResult(editorService, symbolNavService, editor, model, range) {\n const gotoLocation = this._getGoToPreference(editor);\n if (!(editor instanceof _browser_widget_embeddedCodeEditorWidget_js__WEBPACK_IMPORTED_MODULE_9__.EmbeddedCodeEditorWidget) && (this.configuration.openInPeek || (gotoLocation === 'peek' && model.references.length > 1))) {\n this._openInPeek(editor, model, range);\n }\n else {\n const next = model.firstReference();\n const peek = model.references.length > 1 && gotoLocation === 'gotoAndPeek';\n const targetEditor = await this._openReference(editor, editorService, next, this.configuration.openToSide, !peek);\n if (peek && targetEditor) {\n this._openInPeek(targetEditor, model, range);\n }\n else {\n model.dispose();\n }\n // keep remaining locations around when using\n // 'goto'-mode\n if (gotoLocation === 'goto') {\n symbolNavService.put(next);\n }\n }\n }\n async _openReference(editor, editorService, reference, sideBySide, highlight) {\n // range is the target-selection-range when we have one\n // and the fallback is the 'full' range\n let range = undefined;\n if ((0,_common_languages_js__WEBPACK_IMPORTED_MODULE_13__.isLocationLink)(reference)) {\n range = reference.targetSelectionRange;\n }\n if (!range) {\n range = reference.range;\n }\n if (!range) {\n return undefined;\n }\n const targetEditor = await editorService.openCodeEditor({\n resource: reference.uri,\n options: {\n selection: _common_core_range_js__WEBPACK_IMPORTED_MODULE_11__.Range.collapseToStart(range),\n selectionRevealType: 3 /* TextEditorSelectionRevealType.NearTopIfOutsideViewport */,\n selectionSource: \"code.jump\" /* TextEditorSelectionSource.JUMP */\n }\n }, editor, sideBySide);\n if (!targetEditor) {\n return undefined;\n }\n if (highlight) {\n const modelNow = targetEditor.getModel();\n const decorations = targetEditor.createDecorationsCollection([{ range, options: { description: 'symbol-navigate-action-highlight', className: 'symbolHighlight' } }]);\n setTimeout(() => {\n if (targetEditor.getModel() === modelNow) {\n decorations.clear();\n }\n }, 350);\n }\n return targetEditor;\n }\n _openInPeek(target, model, range) {\n const controller = _peek_referencesController_js__WEBPACK_IMPORTED_MODULE_14__.ReferencesController.get(target);\n if (controller && target.hasModel()) {\n controller.toggleWidget(range !== null && range !== void 0 ? range : target.getSelection(), (0,_base_common_async_js__WEBPACK_IMPORTED_MODULE_1__.createCancelablePromise)(_ => Promise.resolve(model)), this.configuration.openInPeek);\n }\n else {\n model.dispose();\n }\n }\n}\nSymbolNavigationAction._allSymbolNavigationCommands = new Map();\nSymbolNavigationAction._activeAlternativeCommands = new Set();\n//#region --- DEFINITION\nclass DefinitionAction extends SymbolNavigationAction {\n async _getLocationModel(languageFeaturesService, model, position, token) {\n return new _referencesModel_js__WEBPACK_IMPORTED_MODULE_15__.ReferencesModel(await (0,_goToSymbol_js__WEBPACK_IMPORTED_MODULE_26__.getDefinitionsAtPosition)(languageFeaturesService.definitionProvider, model, position, token), _nls_js__WEBPACK_IMPORTED_MODULE_19__.localize('def.title', 'Definitions'));\n }\n _getNoResultFoundMessage(info) {\n return info && info.word\n ? _nls_js__WEBPACK_IMPORTED_MODULE_19__.localize('noResultWord', \"No definition found for '{0}'\", info.word)\n : _nls_js__WEBPACK_IMPORTED_MODULE_19__.localize('generic.noResults', \"No definition found\");\n }\n _getAlternativeCommand(editor) {\n return editor.getOption(58 /* EditorOption.gotoLocation */).alternativeDefinitionCommand;\n }\n _getGoToPreference(editor) {\n return editor.getOption(58 /* EditorOption.gotoLocation */).multipleDefinitions;\n }\n}\n(0,_platform_actions_common_actions_js__WEBPACK_IMPORTED_MODULE_20__.registerAction2)((_a = class GoToDefinitionAction extends DefinitionAction {\n constructor() {\n super({\n openToSide: false,\n openInPeek: false,\n muteMessage: false\n }, {\n id: _a.id,\n title: {\n ..._nls_js__WEBPACK_IMPORTED_MODULE_19__.localize2('actions.goToDecl.label', \"Go to Definition\"),\n mnemonicTitle: _nls_js__WEBPACK_IMPORTED_MODULE_19__.localize({ key: 'miGotoDefinition', comment: ['&& denotes a mnemonic'] }, \"Go to &&Definition\"),\n },\n precondition: _common_editorContextKeys_js__WEBPACK_IMPORTED_MODULE_12__.EditorContextKeys.hasDefinitionProvider,\n keybinding: [{\n when: _common_editorContextKeys_js__WEBPACK_IMPORTED_MODULE_12__.EditorContextKeys.editorTextFocus,\n primary: 70 /* KeyCode.F12 */,\n weight: 100 /* KeybindingWeight.EditorContrib */\n }, {\n when: _platform_contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_22__.ContextKeyExpr.and(_common_editorContextKeys_js__WEBPACK_IMPORTED_MODULE_12__.EditorContextKeys.editorTextFocus, _platform_contextkey_common_contextkeys_js__WEBPACK_IMPORTED_MODULE_29__.IsWebContext),\n primary: 2048 /* KeyMod.CtrlCmd */ | 70 /* KeyCode.F12 */,\n weight: 100 /* KeybindingWeight.EditorContrib */\n }],\n menu: [{\n id: _platform_actions_common_actions_js__WEBPACK_IMPORTED_MODULE_20__.MenuId.EditorContext,\n group: 'navigation',\n order: 1.1\n }, {\n id: _platform_actions_common_actions_js__WEBPACK_IMPORTED_MODULE_20__.MenuId.MenubarGoMenu,\n precondition: null,\n group: '4_symbol_nav',\n order: 2,\n }]\n });\n _platform_commands_common_commands_js__WEBPACK_IMPORTED_MODULE_21__.CommandsRegistry.registerCommandAlias('editor.action.goToDeclaration', _a.id);\n }\n },\n _a.id = 'editor.action.revealDefinition',\n _a));\n(0,_platform_actions_common_actions_js__WEBPACK_IMPORTED_MODULE_20__.registerAction2)((_b = class OpenDefinitionToSideAction extends DefinitionAction {\n constructor() {\n super({\n openToSide: true,\n openInPeek: false,\n muteMessage: false\n }, {\n id: _b.id,\n title: _nls_js__WEBPACK_IMPORTED_MODULE_19__.localize2('actions.goToDeclToSide.label', \"Open Definition to the Side\"),\n precondition: _platform_contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_22__.ContextKeyExpr.and(_common_editorContextKeys_js__WEBPACK_IMPORTED_MODULE_12__.EditorContextKeys.hasDefinitionProvider, _common_editorContextKeys_js__WEBPACK_IMPORTED_MODULE_12__.EditorContextKeys.isInEmbeddedEditor.toNegated()),\n keybinding: [{\n when: _common_editorContextKeys_js__WEBPACK_IMPORTED_MODULE_12__.EditorContextKeys.editorTextFocus,\n primary: (0,_base_common_keyCodes_js__WEBPACK_IMPORTED_MODULE_2__.KeyChord)(2048 /* KeyMod.CtrlCmd */ | 41 /* KeyCode.KeyK */, 70 /* KeyCode.F12 */),\n weight: 100 /* KeybindingWeight.EditorContrib */\n }, {\n when: _platform_contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_22__.ContextKeyExpr.and(_common_editorContextKeys_js__WEBPACK_IMPORTED_MODULE_12__.EditorContextKeys.editorTextFocus, _platform_contextkey_common_contextkeys_js__WEBPACK_IMPORTED_MODULE_29__.IsWebContext),\n primary: (0,_base_common_keyCodes_js__WEBPACK_IMPORTED_MODULE_2__.KeyChord)(2048 /* KeyMod.CtrlCmd */ | 41 /* KeyCode.KeyK */, 2048 /* KeyMod.CtrlCmd */ | 70 /* KeyCode.F12 */),\n weight: 100 /* KeybindingWeight.EditorContrib */\n }]\n });\n _platform_commands_common_commands_js__WEBPACK_IMPORTED_MODULE_21__.CommandsRegistry.registerCommandAlias('editor.action.openDeclarationToTheSide', _b.id);\n }\n },\n _b.id = 'editor.action.revealDefinitionAside',\n _b));\n(0,_platform_actions_common_actions_js__WEBPACK_IMPORTED_MODULE_20__.registerAction2)((_c = class PeekDefinitionAction extends DefinitionAction {\n constructor() {\n super({\n openToSide: false,\n openInPeek: true,\n muteMessage: false\n }, {\n id: _c.id,\n title: _nls_js__WEBPACK_IMPORTED_MODULE_19__.localize2('actions.previewDecl.label', \"Peek Definition\"),\n precondition: _platform_contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_22__.ContextKeyExpr.and(_common_editorContextKeys_js__WEBPACK_IMPORTED_MODULE_12__.EditorContextKeys.hasDefinitionProvider, _peekView_browser_peekView_js__WEBPACK_IMPORTED_MODULE_18__.PeekContext.notInPeekEditor, _common_editorContextKeys_js__WEBPACK_IMPORTED_MODULE_12__.EditorContextKeys.isInEmbeddedEditor.toNegated()),\n keybinding: {\n when: _common_editorContextKeys_js__WEBPACK_IMPORTED_MODULE_12__.EditorContextKeys.editorTextFocus,\n primary: 512 /* KeyMod.Alt */ | 70 /* KeyCode.F12 */,\n linux: { primary: 2048 /* KeyMod.CtrlCmd */ | 1024 /* KeyMod.Shift */ | 68 /* KeyCode.F10 */ },\n weight: 100 /* KeybindingWeight.EditorContrib */\n },\n menu: {\n id: _platform_actions_common_actions_js__WEBPACK_IMPORTED_MODULE_20__.MenuId.EditorContextPeek,\n group: 'peek',\n order: 2\n }\n });\n _platform_commands_common_commands_js__WEBPACK_IMPORTED_MODULE_21__.CommandsRegistry.registerCommandAlias('editor.action.previewDeclaration', _c.id);\n }\n },\n _c.id = 'editor.action.peekDefinition',\n _c));\n//#endregion\n//#region --- DECLARATION\nclass DeclarationAction extends SymbolNavigationAction {\n async _getLocationModel(languageFeaturesService, model, position, token) {\n return new _referencesModel_js__WEBPACK_IMPORTED_MODULE_15__.ReferencesModel(await (0,_goToSymbol_js__WEBPACK_IMPORTED_MODULE_26__.getDeclarationsAtPosition)(languageFeaturesService.declarationProvider, model, position, token), _nls_js__WEBPACK_IMPORTED_MODULE_19__.localize('decl.title', 'Declarations'));\n }\n _getNoResultFoundMessage(info) {\n return info && info.word\n ? _nls_js__WEBPACK_IMPORTED_MODULE_19__.localize('decl.noResultWord', \"No declaration found for '{0}'\", info.word)\n : _nls_js__WEBPACK_IMPORTED_MODULE_19__.localize('decl.generic.noResults', \"No declaration found\");\n }\n _getAlternativeCommand(editor) {\n return editor.getOption(58 /* EditorOption.gotoLocation */).alternativeDeclarationCommand;\n }\n _getGoToPreference(editor) {\n return editor.getOption(58 /* EditorOption.gotoLocation */).multipleDeclarations;\n }\n}\n(0,_platform_actions_common_actions_js__WEBPACK_IMPORTED_MODULE_20__.registerAction2)((_d = class GoToDeclarationAction extends DeclarationAction {\n constructor() {\n super({\n openToSide: false,\n openInPeek: false,\n muteMessage: false\n }, {\n id: _d.id,\n title: {\n ..._nls_js__WEBPACK_IMPORTED_MODULE_19__.localize2('actions.goToDeclaration.label', \"Go to Declaration\"),\n mnemonicTitle: _nls_js__WEBPACK_IMPORTED_MODULE_19__.localize({ key: 'miGotoDeclaration', comment: ['&& denotes a mnemonic'] }, \"Go to &&Declaration\"),\n },\n precondition: _platform_contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_22__.ContextKeyExpr.and(_common_editorContextKeys_js__WEBPACK_IMPORTED_MODULE_12__.EditorContextKeys.hasDeclarationProvider, _common_editorContextKeys_js__WEBPACK_IMPORTED_MODULE_12__.EditorContextKeys.isInEmbeddedEditor.toNegated()),\n menu: [{\n id: _platform_actions_common_actions_js__WEBPACK_IMPORTED_MODULE_20__.MenuId.EditorContext,\n group: 'navigation',\n order: 1.3\n }, {\n id: _platform_actions_common_actions_js__WEBPACK_IMPORTED_MODULE_20__.MenuId.MenubarGoMenu,\n precondition: null,\n group: '4_symbol_nav',\n order: 3,\n }],\n });\n }\n _getNoResultFoundMessage(info) {\n return info && info.word\n ? _nls_js__WEBPACK_IMPORTED_MODULE_19__.localize('decl.noResultWord', \"No declaration found for '{0}'\", info.word)\n : _nls_js__WEBPACK_IMPORTED_MODULE_19__.localize('decl.generic.noResults', \"No declaration found\");\n }\n },\n _d.id = 'editor.action.revealDeclaration',\n _d));\n(0,_platform_actions_common_actions_js__WEBPACK_IMPORTED_MODULE_20__.registerAction2)(class PeekDeclarationAction extends DeclarationAction {\n constructor() {\n super({\n openToSide: false,\n openInPeek: true,\n muteMessage: false\n }, {\n id: 'editor.action.peekDeclaration',\n title: _nls_js__WEBPACK_IMPORTED_MODULE_19__.localize2('actions.peekDecl.label', \"Peek Declaration\"),\n precondition: _platform_contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_22__.ContextKeyExpr.and(_common_editorContextKeys_js__WEBPACK_IMPORTED_MODULE_12__.EditorContextKeys.hasDeclarationProvider, _peekView_browser_peekView_js__WEBPACK_IMPORTED_MODULE_18__.PeekContext.notInPeekEditor, _common_editorContextKeys_js__WEBPACK_IMPORTED_MODULE_12__.EditorContextKeys.isInEmbeddedEditor.toNegated()),\n menu: {\n id: _platform_actions_common_actions_js__WEBPACK_IMPORTED_MODULE_20__.MenuId.EditorContextPeek,\n group: 'peek',\n order: 3\n }\n });\n }\n});\n//#endregion\n//#region --- TYPE DEFINITION\nclass TypeDefinitionAction extends SymbolNavigationAction {\n async _getLocationModel(languageFeaturesService, model, position, token) {\n return new _referencesModel_js__WEBPACK_IMPORTED_MODULE_15__.ReferencesModel(await (0,_goToSymbol_js__WEBPACK_IMPORTED_MODULE_26__.getTypeDefinitionsAtPosition)(languageFeaturesService.typeDefinitionProvider, model, position, token), _nls_js__WEBPACK_IMPORTED_MODULE_19__.localize('typedef.title', 'Type Definitions'));\n }\n _getNoResultFoundMessage(info) {\n return info && info.word\n ? _nls_js__WEBPACK_IMPORTED_MODULE_19__.localize('goToTypeDefinition.noResultWord', \"No type definition found for '{0}'\", info.word)\n : _nls_js__WEBPACK_IMPORTED_MODULE_19__.localize('goToTypeDefinition.generic.noResults', \"No type definition found\");\n }\n _getAlternativeCommand(editor) {\n return editor.getOption(58 /* EditorOption.gotoLocation */).alternativeTypeDefinitionCommand;\n }\n _getGoToPreference(editor) {\n return editor.getOption(58 /* EditorOption.gotoLocation */).multipleTypeDefinitions;\n }\n}\n(0,_platform_actions_common_actions_js__WEBPACK_IMPORTED_MODULE_20__.registerAction2)((_e = class GoToTypeDefinitionAction extends TypeDefinitionAction {\n constructor() {\n super({\n openToSide: false,\n openInPeek: false,\n muteMessage: false\n }, {\n id: _e.ID,\n title: {\n ..._nls_js__WEBPACK_IMPORTED_MODULE_19__.localize2('actions.goToTypeDefinition.label', \"Go to Type Definition\"),\n mnemonicTitle: _nls_js__WEBPACK_IMPORTED_MODULE_19__.localize({ key: 'miGotoTypeDefinition', comment: ['&& denotes a mnemonic'] }, \"Go to &&Type Definition\"),\n },\n precondition: _common_editorContextKeys_js__WEBPACK_IMPORTED_MODULE_12__.EditorContextKeys.hasTypeDefinitionProvider,\n keybinding: {\n when: _common_editorContextKeys_js__WEBPACK_IMPORTED_MODULE_12__.EditorContextKeys.editorTextFocus,\n primary: 0,\n weight: 100 /* KeybindingWeight.EditorContrib */\n },\n menu: [{\n id: _platform_actions_common_actions_js__WEBPACK_IMPORTED_MODULE_20__.MenuId.EditorContext,\n group: 'navigation',\n order: 1.4\n }, {\n id: _platform_actions_common_actions_js__WEBPACK_IMPORTED_MODULE_20__.MenuId.MenubarGoMenu,\n precondition: null,\n group: '4_symbol_nav',\n order: 3,\n }]\n });\n }\n },\n _e.ID = 'editor.action.goToTypeDefinition',\n _e));\n(0,_platform_actions_common_actions_js__WEBPACK_IMPORTED_MODULE_20__.registerAction2)((_f = class PeekTypeDefinitionAction extends TypeDefinitionAction {\n constructor() {\n super({\n openToSide: false,\n openInPeek: true,\n muteMessage: false\n }, {\n id: _f.ID,\n title: _nls_js__WEBPACK_IMPORTED_MODULE_19__.localize2('actions.peekTypeDefinition.label', \"Peek Type Definition\"),\n precondition: _platform_contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_22__.ContextKeyExpr.and(_common_editorContextKeys_js__WEBPACK_IMPORTED_MODULE_12__.EditorContextKeys.hasTypeDefinitionProvider, _peekView_browser_peekView_js__WEBPACK_IMPORTED_MODULE_18__.PeekContext.notInPeekEditor, _common_editorContextKeys_js__WEBPACK_IMPORTED_MODULE_12__.EditorContextKeys.isInEmbeddedEditor.toNegated()),\n menu: {\n id: _platform_actions_common_actions_js__WEBPACK_IMPORTED_MODULE_20__.MenuId.EditorContextPeek,\n group: 'peek',\n order: 4\n }\n });\n }\n },\n _f.ID = 'editor.action.peekTypeDefinition',\n _f));\n//#endregion\n//#region --- IMPLEMENTATION\nclass ImplementationAction extends SymbolNavigationAction {\n async _getLocationModel(languageFeaturesService, model, position, token) {\n return new _referencesModel_js__WEBPACK_IMPORTED_MODULE_15__.ReferencesModel(await (0,_goToSymbol_js__WEBPACK_IMPORTED_MODULE_26__.getImplementationsAtPosition)(languageFeaturesService.implementationProvider, model, position, token), _nls_js__WEBPACK_IMPORTED_MODULE_19__.localize('impl.title', 'Implementations'));\n }\n _getNoResultFoundMessage(info) {\n return info && info.word\n ? _nls_js__WEBPACK_IMPORTED_MODULE_19__.localize('goToImplementation.noResultWord', \"No implementation found for '{0}'\", info.word)\n : _nls_js__WEBPACK_IMPORTED_MODULE_19__.localize('goToImplementation.generic.noResults', \"No implementation found\");\n }\n _getAlternativeCommand(editor) {\n return editor.getOption(58 /* EditorOption.gotoLocation */).alternativeImplementationCommand;\n }\n _getGoToPreference(editor) {\n return editor.getOption(58 /* EditorOption.gotoLocation */).multipleImplementations;\n }\n}\n(0,_platform_actions_common_actions_js__WEBPACK_IMPORTED_MODULE_20__.registerAction2)((_g = class GoToImplementationAction extends ImplementationAction {\n constructor() {\n super({\n openToSide: false,\n openInPeek: false,\n muteMessage: false\n }, {\n id: _g.ID,\n title: {\n ..._nls_js__WEBPACK_IMPORTED_MODULE_19__.localize2('actions.goToImplementation.label', \"Go to Implementations\"),\n mnemonicTitle: _nls_js__WEBPACK_IMPORTED_MODULE_19__.localize({ key: 'miGotoImplementation', comment: ['&& denotes a mnemonic'] }, \"Go to &&Implementations\"),\n },\n precondition: _common_editorContextKeys_js__WEBPACK_IMPORTED_MODULE_12__.EditorContextKeys.hasImplementationProvider,\n keybinding: {\n when: _common_editorContextKeys_js__WEBPACK_IMPORTED_MODULE_12__.EditorContextKeys.editorTextFocus,\n primary: 2048 /* KeyMod.CtrlCmd */ | 70 /* KeyCode.F12 */,\n weight: 100 /* KeybindingWeight.EditorContrib */\n },\n menu: [{\n id: _platform_actions_common_actions_js__WEBPACK_IMPORTED_MODULE_20__.MenuId.EditorContext,\n group: 'navigation',\n order: 1.45\n }, {\n id: _platform_actions_common_actions_js__WEBPACK_IMPORTED_MODULE_20__.MenuId.MenubarGoMenu,\n precondition: null,\n group: '4_symbol_nav',\n order: 4,\n }]\n });\n }\n },\n _g.ID = 'editor.action.goToImplementation',\n _g));\n(0,_platform_actions_common_actions_js__WEBPACK_IMPORTED_MODULE_20__.registerAction2)((_h = class PeekImplementationAction extends ImplementationAction {\n constructor() {\n super({\n openToSide: false,\n openInPeek: true,\n muteMessage: false\n }, {\n id: _h.ID,\n title: _nls_js__WEBPACK_IMPORTED_MODULE_19__.localize2('actions.peekImplementation.label', \"Peek Implementations\"),\n precondition: _platform_contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_22__.ContextKeyExpr.and(_common_editorContextKeys_js__WEBPACK_IMPORTED_MODULE_12__.EditorContextKeys.hasImplementationProvider, _peekView_browser_peekView_js__WEBPACK_IMPORTED_MODULE_18__.PeekContext.notInPeekEditor, _common_editorContextKeys_js__WEBPACK_IMPORTED_MODULE_12__.EditorContextKeys.isInEmbeddedEditor.toNegated()),\n keybinding: {\n when: _common_editorContextKeys_js__WEBPACK_IMPORTED_MODULE_12__.EditorContextKeys.editorTextFocus,\n primary: 2048 /* KeyMod.CtrlCmd */ | 1024 /* KeyMod.Shift */ | 70 /* KeyCode.F12 */,\n weight: 100 /* KeybindingWeight.EditorContrib */\n },\n menu: {\n id: _platform_actions_common_actions_js__WEBPACK_IMPORTED_MODULE_20__.MenuId.EditorContextPeek,\n group: 'peek',\n order: 5\n }\n });\n }\n },\n _h.ID = 'editor.action.peekImplementation',\n _h));\n//#endregion\n//#region --- REFERENCES\nclass ReferencesAction extends SymbolNavigationAction {\n _getNoResultFoundMessage(info) {\n return info\n ? _nls_js__WEBPACK_IMPORTED_MODULE_19__.localize('references.no', \"No references found for '{0}'\", info.word)\n : _nls_js__WEBPACK_IMPORTED_MODULE_19__.localize('references.noGeneric', \"No references found\");\n }\n _getAlternativeCommand(editor) {\n return editor.getOption(58 /* EditorOption.gotoLocation */).alternativeReferenceCommand;\n }\n _getGoToPreference(editor) {\n return editor.getOption(58 /* EditorOption.gotoLocation */).multipleReferences;\n }\n}\n(0,_platform_actions_common_actions_js__WEBPACK_IMPORTED_MODULE_20__.registerAction2)(class GoToReferencesAction extends ReferencesAction {\n constructor() {\n super({\n openToSide: false,\n openInPeek: false,\n muteMessage: false\n }, {\n id: 'editor.action.goToReferences',\n title: {\n ..._nls_js__WEBPACK_IMPORTED_MODULE_19__.localize2('goToReferences.label', \"Go to References\"),\n mnemonicTitle: _nls_js__WEBPACK_IMPORTED_MODULE_19__.localize({ key: 'miGotoReference', comment: ['&& denotes a mnemonic'] }, \"Go to &&References\"),\n },\n precondition: _platform_contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_22__.ContextKeyExpr.and(_common_editorContextKeys_js__WEBPACK_IMPORTED_MODULE_12__.EditorContextKeys.hasReferenceProvider, _peekView_browser_peekView_js__WEBPACK_IMPORTED_MODULE_18__.PeekContext.notInPeekEditor, _common_editorContextKeys_js__WEBPACK_IMPORTED_MODULE_12__.EditorContextKeys.isInEmbeddedEditor.toNegated()),\n keybinding: {\n when: _common_editorContextKeys_js__WEBPACK_IMPORTED_MODULE_12__.EditorContextKeys.editorTextFocus,\n primary: 1024 /* KeyMod.Shift */ | 70 /* KeyCode.F12 */,\n weight: 100 /* KeybindingWeight.EditorContrib */\n },\n menu: [{\n id: _platform_actions_common_actions_js__WEBPACK_IMPORTED_MODULE_20__.MenuId.EditorContext,\n group: 'navigation',\n order: 1.45\n }, {\n id: _platform_actions_common_actions_js__WEBPACK_IMPORTED_MODULE_20__.MenuId.MenubarGoMenu,\n precondition: null,\n group: '4_symbol_nav',\n order: 5,\n }]\n });\n }\n async _getLocationModel(languageFeaturesService, model, position, token) {\n return new _referencesModel_js__WEBPACK_IMPORTED_MODULE_15__.ReferencesModel(await (0,_goToSymbol_js__WEBPACK_IMPORTED_MODULE_26__.getReferencesAtPosition)(languageFeaturesService.referenceProvider, model, position, true, token), _nls_js__WEBPACK_IMPORTED_MODULE_19__.localize('ref.title', 'References'));\n }\n});\n(0,_platform_actions_common_actions_js__WEBPACK_IMPORTED_MODULE_20__.registerAction2)(class PeekReferencesAction extends ReferencesAction {\n constructor() {\n super({\n openToSide: false,\n openInPeek: true,\n muteMessage: false\n }, {\n id: 'editor.action.referenceSearch.trigger',\n title: _nls_js__WEBPACK_IMPORTED_MODULE_19__.localize2('references.action.label', \"Peek References\"),\n precondition: _platform_contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_22__.ContextKeyExpr.and(_common_editorContextKeys_js__WEBPACK_IMPORTED_MODULE_12__.EditorContextKeys.hasReferenceProvider, _peekView_browser_peekView_js__WEBPACK_IMPORTED_MODULE_18__.PeekContext.notInPeekEditor, _common_editorContextKeys_js__WEBPACK_IMPORTED_MODULE_12__.EditorContextKeys.isInEmbeddedEditor.toNegated()),\n menu: {\n id: _platform_actions_common_actions_js__WEBPACK_IMPORTED_MODULE_20__.MenuId.EditorContextPeek,\n group: 'peek',\n order: 6\n }\n });\n }\n async _getLocationModel(languageFeaturesService, model, position, token) {\n return new _referencesModel_js__WEBPACK_IMPORTED_MODULE_15__.ReferencesModel(await (0,_goToSymbol_js__WEBPACK_IMPORTED_MODULE_26__.getReferencesAtPosition)(languageFeaturesService.referenceProvider, model, position, false, token), _nls_js__WEBPACK_IMPORTED_MODULE_19__.localize('ref.title', 'References'));\n }\n});\n//#endregion\n//#region --- GENERIC goto symbols command\nclass GenericGoToLocationAction extends SymbolNavigationAction {\n constructor(config, _references, _gotoMultipleBehaviour) {\n super(config, {\n id: 'editor.action.goToLocation',\n title: _nls_js__WEBPACK_IMPORTED_MODULE_19__.localize2('label.generic', \"Go to Any Symbol\"),\n precondition: _platform_contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_22__.ContextKeyExpr.and(_peekView_browser_peekView_js__WEBPACK_IMPORTED_MODULE_18__.PeekContext.notInPeekEditor, _common_editorContextKeys_js__WEBPACK_IMPORTED_MODULE_12__.EditorContextKeys.isInEmbeddedEditor.toNegated()),\n });\n this._references = _references;\n this._gotoMultipleBehaviour = _gotoMultipleBehaviour;\n }\n async _getLocationModel(languageFeaturesService, _model, _position, _token) {\n return new _referencesModel_js__WEBPACK_IMPORTED_MODULE_15__.ReferencesModel(this._references, _nls_js__WEBPACK_IMPORTED_MODULE_19__.localize('generic.title', 'Locations'));\n }\n _getNoResultFoundMessage(info) {\n return info && _nls_js__WEBPACK_IMPORTED_MODULE_19__.localize('generic.noResult', \"No results for '{0}'\", info.word) || '';\n }\n _getGoToPreference(editor) {\n var _j;\n return (_j = this._gotoMultipleBehaviour) !== null && _j !== void 0 ? _j : editor.getOption(58 /* EditorOption.gotoLocation */).multipleReferences;\n }\n _getAlternativeCommand() { return ''; }\n}\n_platform_commands_common_commands_js__WEBPACK_IMPORTED_MODULE_21__.CommandsRegistry.registerCommand({\n id: 'editor.action.goToLocations',\n metadata: {\n description: 'Go to locations from a position in a file',\n args: [\n { name: 'uri', description: 'The text document in which to start', constraint: _base_common_uri_js__WEBPACK_IMPORTED_MODULE_4__.URI },\n { name: 'position', description: 'The position at which to start', constraint: _common_core_position_js__WEBPACK_IMPORTED_MODULE_10__.Position.isIPosition },\n { name: 'locations', description: 'An array of locations.', constraint: Array },\n { name: 'multiple', description: 'Define what to do when having multiple results, either `peek`, `gotoAndPeek`, or `goto`' },\n { name: 'noResultsMessage', description: 'Human readable message that shows when locations is empty.' },\n ]\n },\n handler: async (accessor, resource, position, references, multiple, noResultsMessage, openInPeek) => {\n (0,_base_common_types_js__WEBPACK_IMPORTED_MODULE_3__.assertType)(_base_common_uri_js__WEBPACK_IMPORTED_MODULE_4__.URI.isUri(resource));\n (0,_base_common_types_js__WEBPACK_IMPORTED_MODULE_3__.assertType)(_common_core_position_js__WEBPACK_IMPORTED_MODULE_10__.Position.isIPosition(position));\n (0,_base_common_types_js__WEBPACK_IMPORTED_MODULE_3__.assertType)(Array.isArray(references));\n (0,_base_common_types_js__WEBPACK_IMPORTED_MODULE_3__.assertType)(typeof multiple === 'undefined' || typeof multiple === 'string');\n (0,_base_common_types_js__WEBPACK_IMPORTED_MODULE_3__.assertType)(typeof openInPeek === 'undefined' || typeof openInPeek === 'boolean');\n const editorService = accessor.get(_browser_services_codeEditorService_js__WEBPACK_IMPORTED_MODULE_8__.ICodeEditorService);\n const editor = await editorService.openCodeEditor({ resource }, editorService.getFocusedCodeEditor());\n if ((0,_browser_editorBrowser_js__WEBPACK_IMPORTED_MODULE_6__.isCodeEditor)(editor)) {\n editor.setPosition(position);\n editor.revealPositionInCenterIfOutsideViewport(position, 0 /* ScrollType.Smooth */);\n return editor.invokeWithinContext(accessor => {\n const command = new class extends GenericGoToLocationAction {\n _getNoResultFoundMessage(info) {\n return noResultsMessage || super._getNoResultFoundMessage(info);\n }\n }({\n muteMessage: !Boolean(noResultsMessage),\n openInPeek: Boolean(openInPeek),\n openToSide: false\n }, references, multiple);\n accessor.get(_platform_instantiation_common_instantiation_js__WEBPACK_IMPORTED_MODULE_23__.IInstantiationService).invokeFunction(command.run.bind(command), editor);\n });\n }\n }\n});\n_platform_commands_common_commands_js__WEBPACK_IMPORTED_MODULE_21__.CommandsRegistry.registerCommand({\n id: 'editor.action.peekLocations',\n metadata: {\n description: 'Peek locations from a position in a file',\n args: [\n { name: 'uri', description: 'The text document in which to start', constraint: _base_common_uri_js__WEBPACK_IMPORTED_MODULE_4__.URI },\n { name: 'position', description: 'The position at which to start', constraint: _common_core_position_js__WEBPACK_IMPORTED_MODULE_10__.Position.isIPosition },\n { name: 'locations', description: 'An array of locations.', constraint: Array },\n { name: 'multiple', description: 'Define what to do when having multiple results, either `peek`, `gotoAndPeek`, or `goto`' },\n ]\n },\n handler: async (accessor, resource, position, references, multiple) => {\n accessor.get(_platform_commands_common_commands_js__WEBPACK_IMPORTED_MODULE_21__.ICommandService).executeCommand('editor.action.goToLocations', resource, position, references, multiple, undefined, true);\n }\n});\n//#endregion\n//#region --- REFERENCE search special commands\n_platform_commands_common_commands_js__WEBPACK_IMPORTED_MODULE_21__.CommandsRegistry.registerCommand({\n id: 'editor.action.findReferences',\n handler: (accessor, resource, position) => {\n (0,_base_common_types_js__WEBPACK_IMPORTED_MODULE_3__.assertType)(_base_common_uri_js__WEBPACK_IMPORTED_MODULE_4__.URI.isUri(resource));\n (0,_base_common_types_js__WEBPACK_IMPORTED_MODULE_3__.assertType)(_common_core_position_js__WEBPACK_IMPORTED_MODULE_10__.Position.isIPosition(position));\n const languageFeaturesService = accessor.get(_common_services_languageFeatures_js__WEBPACK_IMPORTED_MODULE_27__.ILanguageFeaturesService);\n const codeEditorService = accessor.get(_browser_services_codeEditorService_js__WEBPACK_IMPORTED_MODULE_8__.ICodeEditorService);\n return codeEditorService.openCodeEditor({ resource }, codeEditorService.getFocusedCodeEditor()).then(control => {\n if (!(0,_browser_editorBrowser_js__WEBPACK_IMPORTED_MODULE_6__.isCodeEditor)(control) || !control.hasModel()) {\n return undefined;\n }\n const controller = _peek_referencesController_js__WEBPACK_IMPORTED_MODULE_14__.ReferencesController.get(control);\n if (!controller) {\n return undefined;\n }\n const references = (0,_base_common_async_js__WEBPACK_IMPORTED_MODULE_1__.createCancelablePromise)(token => (0,_goToSymbol_js__WEBPACK_IMPORTED_MODULE_26__.getReferencesAtPosition)(languageFeaturesService.referenceProvider, control.getModel(), _common_core_position_js__WEBPACK_IMPORTED_MODULE_10__.Position.lift(position), false, token).then(references => new _referencesModel_js__WEBPACK_IMPORTED_MODULE_15__.ReferencesModel(references, _nls_js__WEBPACK_IMPORTED_MODULE_19__.localize('ref.title', 'References'))));\n const range = new _common_core_range_js__WEBPACK_IMPORTED_MODULE_11__.Range(position.lineNumber, position.column, position.lineNumber, position.column);\n return Promise.resolve(controller.toggleWidget(range, references, false));\n });\n }\n});\n// use NEW command\n_platform_commands_common_commands_js__WEBPACK_IMPORTED_MODULE_21__.CommandsRegistry.registerCommandAlias('editor.action.showReferences', 'editor.action.peekLocations');\n//#endregion\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/contrib/gotoSymbol/browser/goToCommands.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/contrib/gotoSymbol/browser/goToSymbol.js":
/*!*******************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/contrib/gotoSymbol/browser/goToSymbol.js ***!
\*******************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ getDeclarationsAtPosition: () => (/* binding */ getDeclarationsAtPosition),\n/* harmony export */ getDefinitionsAtPosition: () => (/* binding */ getDefinitionsAtPosition),\n/* harmony export */ getImplementationsAtPosition: () => (/* binding */ getImplementationsAtPosition),\n/* harmony export */ getReferencesAtPosition: () => (/* binding */ getReferencesAtPosition),\n/* harmony export */ getTypeDefinitionsAtPosition: () => (/* binding */ getTypeDefinitionsAtPosition)\n/* harmony export */ });\n/* harmony import */ var _base_common_arrays_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../../base/common/arrays.js */ \"./node_modules/monaco-editor/esm/vs/base/common/arrays.js\");\n/* harmony import */ var _base_common_cancellation_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../base/common/cancellation.js */ \"./node_modules/monaco-editor/esm/vs/base/common/cancellation.js\");\n/* harmony import */ var _base_common_errors_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../../base/common/errors.js */ \"./node_modules/monaco-editor/esm/vs/base/common/errors.js\");\n/* harmony import */ var _browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../../browser/editorExtensions.js */ \"./node_modules/monaco-editor/esm/vs/editor/browser/editorExtensions.js\");\n/* harmony import */ var _common_services_languageFeatures_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../../common/services/languageFeatures.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/services/languageFeatures.js\");\n/* harmony import */ var _referencesModel_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./referencesModel.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/gotoSymbol/browser/referencesModel.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n\n\n\n\n\nasync function getLocationLinks(model, position, registry, provide) {\n const provider = registry.ordered(model);\n // get results\n const promises = provider.map((provider) => {\n return Promise.resolve(provide(provider, model, position)).then(undefined, err => {\n (0,_base_common_errors_js__WEBPACK_IMPORTED_MODULE_2__.onUnexpectedExternalError)(err);\n return undefined;\n });\n });\n const values = await Promise.all(promises);\n return (0,_base_common_arrays_js__WEBPACK_IMPORTED_MODULE_0__.coalesce)(values.flat());\n}\nfunction getDefinitionsAtPosition(registry, model, position, token) {\n return getLocationLinks(model, position, registry, (provider, model, position) => {\n return provider.provideDefinition(model, position, token);\n });\n}\nfunction getDeclarationsAtPosition(registry, model, position, token) {\n return getLocationLinks(model, position, registry, (provider, model, position) => {\n return provider.provideDeclaration(model, position, token);\n });\n}\nfunction getImplementationsAtPosition(registry, model, position, token) {\n return getLocationLinks(model, position, registry, (provider, model, position) => {\n return provider.provideImplementation(model, position, token);\n });\n}\nfunction getTypeDefinitionsAtPosition(registry, model, position, token) {\n return getLocationLinks(model, position, registry, (provider, model, position) => {\n return provider.provideTypeDefinition(model, position, token);\n });\n}\nfunction getReferencesAtPosition(registry, model, position, compact, token) {\n return getLocationLinks(model, position, registry, async (provider, model, position) => {\n const result = await provider.provideReferences(model, position, { includeDeclaration: true }, token);\n if (!compact || !result || result.length !== 2) {\n return result;\n }\n const resultWithoutDeclaration = await provider.provideReferences(model, position, { includeDeclaration: false }, token);\n if (resultWithoutDeclaration && resultWithoutDeclaration.length === 1) {\n return resultWithoutDeclaration;\n }\n return result;\n });\n}\n// -- API commands ----\nasync function _sortedAndDeduped(callback) {\n const rawLinks = await callback();\n const model = new _referencesModel_js__WEBPACK_IMPORTED_MODULE_5__.ReferencesModel(rawLinks, '');\n const modelLinks = model.references.map(ref => ref.link);\n model.dispose();\n return modelLinks;\n}\n(0,_browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_3__.registerModelAndPositionCommand)('_executeDefinitionProvider', (accessor, model, position) => {\n const languageFeaturesService = accessor.get(_common_services_languageFeatures_js__WEBPACK_IMPORTED_MODULE_4__.ILanguageFeaturesService);\n const promise = getDefinitionsAtPosition(languageFeaturesService.definitionProvider, model, position, _base_common_cancellation_js__WEBPACK_IMPORTED_MODULE_1__.CancellationToken.None);\n return _sortedAndDeduped(() => promise);\n});\n(0,_browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_3__.registerModelAndPositionCommand)('_executeTypeDefinitionProvider', (accessor, model, position) => {\n const languageFeaturesService = accessor.get(_common_services_languageFeatures_js__WEBPACK_IMPORTED_MODULE_4__.ILanguageFeaturesService);\n const promise = getTypeDefinitionsAtPosition(languageFeaturesService.typeDefinitionProvider, model, position, _base_common_cancellation_js__WEBPACK_IMPORTED_MODULE_1__.CancellationToken.None);\n return _sortedAndDeduped(() => promise);\n});\n(0,_browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_3__.registerModelAndPositionCommand)('_executeDeclarationProvider', (accessor, model, position) => {\n const languageFeaturesService = accessor.get(_common_services_languageFeatures_js__WEBPACK_IMPORTED_MODULE_4__.ILanguageFeaturesService);\n const promise = getDeclarationsAtPosition(languageFeaturesService.declarationProvider, model, position, _base_common_cancellation_js__WEBPACK_IMPORTED_MODULE_1__.CancellationToken.None);\n return _sortedAndDeduped(() => promise);\n});\n(0,_browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_3__.registerModelAndPositionCommand)('_executeReferenceProvider', (accessor, model, position) => {\n const languageFeaturesService = accessor.get(_common_services_languageFeatures_js__WEBPACK_IMPORTED_MODULE_4__.ILanguageFeaturesService);\n const promise = getReferencesAtPosition(languageFeaturesService.referenceProvider, model, position, false, _base_common_cancellation_js__WEBPACK_IMPORTED_MODULE_1__.CancellationToken.None);\n return _sortedAndDeduped(() => promise);\n});\n(0,_browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_3__.registerModelAndPositionCommand)('_executeImplementationProvider', (accessor, model, position) => {\n const languageFeaturesService = accessor.get(_common_services_languageFeatures_js__WEBPACK_IMPORTED_MODULE_4__.ILanguageFeaturesService);\n const promise = getImplementationsAtPosition(languageFeaturesService.implementationProvider, model, position, _base_common_cancellation_js__WEBPACK_IMPORTED_MODULE_1__.CancellationToken.None);\n return _sortedAndDeduped(() => promise);\n});\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/contrib/gotoSymbol/browser/goToSymbol.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/contrib/gotoSymbol/browser/link/clickLinkGesture.js":
/*!******************************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/contrib/gotoSymbol/browser/link/clickLinkGesture.js ***!
\******************************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ ClickLinkGesture: () => (/* binding */ ClickLinkGesture),\n/* harmony export */ ClickLinkKeyboardEvent: () => (/* binding */ ClickLinkKeyboardEvent),\n/* harmony export */ ClickLinkMouseEvent: () => (/* binding */ ClickLinkMouseEvent),\n/* harmony export */ ClickLinkOptions: () => (/* binding */ ClickLinkOptions)\n/* harmony export */ });\n/* harmony import */ var _base_common_event_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../../../base/common/event.js */ \"./node_modules/monaco-editor/esm/vs/base/common/event.js\");\n/* harmony import */ var _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../../base/common/lifecycle.js */ \"./node_modules/monaco-editor/esm/vs/base/common/lifecycle.js\");\n/* harmony import */ var _base_common_platform_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../../../base/common/platform.js */ \"./node_modules/monaco-editor/esm/vs/base/common/platform.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n\n\nfunction hasModifier(e, modifier) {\n return !!e[modifier];\n}\n/**\n * An event that encapsulates the various trigger modifiers logic needed for go to definition.\n */\nclass ClickLinkMouseEvent {\n constructor(source, opts) {\n this.target = source.target;\n this.isLeftClick = source.event.leftButton;\n this.isMiddleClick = source.event.middleButton;\n this.isRightClick = source.event.rightButton;\n this.hasTriggerModifier = hasModifier(source.event, opts.triggerModifier);\n this.hasSideBySideModifier = hasModifier(source.event, opts.triggerSideBySideModifier);\n this.isNoneOrSingleMouseDown = (source.event.detail <= 1);\n }\n}\n/**\n * An event that encapsulates the various trigger modifiers logic needed for go to definition.\n */\nclass ClickLinkKeyboardEvent {\n constructor(source, opts) {\n this.keyCodeIsTriggerKey = (source.keyCode === opts.triggerKey);\n this.keyCodeIsSideBySideKey = (source.keyCode === opts.triggerSideBySideKey);\n this.hasTriggerModifier = hasModifier(source, opts.triggerModifier);\n }\n}\nclass ClickLinkOptions {\n constructor(triggerKey, triggerModifier, triggerSideBySideKey, triggerSideBySideModifier) {\n this.triggerKey = triggerKey;\n this.triggerModifier = triggerModifier;\n this.triggerSideBySideKey = triggerSideBySideKey;\n this.triggerSideBySideModifier = triggerSideBySideModifier;\n }\n equals(other) {\n return (this.triggerKey === other.triggerKey\n && this.triggerModifier === other.triggerModifier\n && this.triggerSideBySideKey === other.triggerSideBySideKey\n && this.triggerSideBySideModifier === other.triggerSideBySideModifier);\n }\n}\nfunction createOptions(multiCursorModifier) {\n if (multiCursorModifier === 'altKey') {\n if (_base_common_platform_js__WEBPACK_IMPORTED_MODULE_2__.isMacintosh) {\n return new ClickLinkOptions(57 /* KeyCode.Meta */, 'metaKey', 6 /* KeyCode.Alt */, 'altKey');\n }\n return new ClickLinkOptions(5 /* KeyCode.Ctrl */, 'ctrlKey', 6 /* KeyCode.Alt */, 'altKey');\n }\n if (_base_common_platform_js__WEBPACK_IMPORTED_MODULE_2__.isMacintosh) {\n return new ClickLinkOptions(6 /* KeyCode.Alt */, 'altKey', 57 /* KeyCode.Meta */, 'metaKey');\n }\n return new ClickLinkOptions(6 /* KeyCode.Alt */, 'altKey', 5 /* KeyCode.Ctrl */, 'ctrlKey');\n}\nclass ClickLinkGesture extends _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_1__.Disposable {\n constructor(editor, opts) {\n var _a;\n super();\n this._onMouseMoveOrRelevantKeyDown = this._register(new _base_common_event_js__WEBPACK_IMPORTED_MODULE_0__.Emitter());\n this.onMouseMoveOrRelevantKeyDown = this._onMouseMoveOrRelevantKeyDown.event;\n this._onExecute = this._register(new _base_common_event_js__WEBPACK_IMPORTED_MODULE_0__.Emitter());\n this.onExecute = this._onExecute.event;\n this._onCancel = this._register(new _base_common_event_js__WEBPACK_IMPORTED_MODULE_0__.Emitter());\n this.onCancel = this._onCancel.event;\n this._editor = editor;\n this._extractLineNumberFromMouseEvent = (_a = opts === null || opts === void 0 ? void 0 : opts.extractLineNumberFromMouseEvent) !== null && _a !== void 0 ? _a : ((e) => e.target.position ? e.target.position.lineNumber : 0);\n this._opts = createOptions(this._editor.getOption(78 /* EditorOption.multiCursorModifier */));\n this._lastMouseMoveEvent = null;\n this._hasTriggerKeyOnMouseDown = false;\n this._lineNumberOnMouseDown = 0;\n this._register(this._editor.onDidChangeConfiguration((e) => {\n if (e.hasChanged(78 /* EditorOption.multiCursorModifier */)) {\n const newOpts = createOptions(this._editor.getOption(78 /* EditorOption.multiCursorModifier */));\n if (this._opts.equals(newOpts)) {\n return;\n }\n this._opts = newOpts;\n this._lastMouseMoveEvent = null;\n this._hasTriggerKeyOnMouseDown = false;\n this._lineNumberOnMouseDown = 0;\n this._onCancel.fire();\n }\n }));\n this._register(this._editor.onMouseMove((e) => this._onEditorMouseMove(new ClickLinkMouseEvent(e, this._opts))));\n this._register(this._editor.onMouseDown((e) => this._onEditorMouseDown(new ClickLinkMouseEvent(e, this._opts))));\n this._register(this._editor.onMouseUp((e) => this._onEditorMouseUp(new ClickLinkMouseEvent(e, this._opts))));\n this._register(this._editor.onKeyDown((e) => this._onEditorKeyDown(new ClickLinkKeyboardEvent(e, this._opts))));\n this._register(this._editor.onKeyUp((e) => this._onEditorKeyUp(new ClickLinkKeyboardEvent(e, this._opts))));\n this._register(this._editor.onMouseDrag(() => this._resetHandler()));\n this._register(this._editor.onDidChangeCursorSelection((e) => this._onDidChangeCursorSelection(e)));\n this._register(this._editor.onDidChangeModel((e) => this._resetHandler()));\n this._register(this._editor.onDidChangeModelContent(() => this._resetHandler()));\n this._register(this._editor.onDidScrollChange((e) => {\n if (e.scrollTopChanged || e.scrollLeftChanged) {\n this._resetHandler();\n }\n }));\n }\n _onDidChangeCursorSelection(e) {\n if (e.selection && e.selection.startColumn !== e.selection.endColumn) {\n this._resetHandler(); // immediately stop this feature if the user starts to select (https://github.com/microsoft/vscode/issues/7827)\n }\n }\n _onEditorMouseMove(mouseEvent) {\n this._lastMouseMoveEvent = mouseEvent;\n this._onMouseMoveOrRelevantKeyDown.fire([mouseEvent, null]);\n }\n _onEditorMouseDown(mouseEvent) {\n // We need to record if we had the trigger key on mouse down because someone might select something in the editor\n // holding the mouse down and then while mouse is down start to press Ctrl/Cmd to start a copy operation and then\n // release the mouse button without wanting to do the navigation.\n // With this flag we prevent goto definition if the mouse was down before the trigger key was pressed.\n this._hasTriggerKeyOnMouseDown = mouseEvent.hasTriggerModifier;\n this._lineNumberOnMouseDown = this._extractLineNumberFromMouseEvent(mouseEvent);\n }\n _onEditorMouseUp(mouseEvent) {\n const currentLineNumber = this._extractLineNumberFromMouseEvent(mouseEvent);\n if (this._hasTriggerKeyOnMouseDown && this._lineNumberOnMouseDown && this._lineNumberOnMouseDown === currentLineNumber) {\n this._onExecute.fire(mouseEvent);\n }\n }\n _onEditorKeyDown(e) {\n if (this._lastMouseMoveEvent\n && (e.keyCodeIsTriggerKey // User just pressed Ctrl/Cmd (normal goto definition)\n || (e.keyCodeIsSideBySideKey && e.hasTriggerModifier) // User pressed Ctrl/Cmd+Alt (goto definition to the side)\n )) {\n this._onMouseMoveOrRelevantKeyDown.fire([this._lastMouseMoveEvent, e]);\n }\n else if (e.hasTriggerModifier) {\n this._onCancel.fire(); // remove decorations if user holds another key with ctrl/cmd to prevent accident goto declaration\n }\n }\n _onEditorKeyUp(e) {\n if (e.keyCodeIsTriggerKey) {\n this._onCancel.fire();\n }\n }\n _resetHandler() {\n this._lastMouseMoveEvent = null;\n this._hasTriggerKeyOnMouseDown = false;\n this._onCancel.fire();\n }\n}\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/contrib/gotoSymbol/browser/link/clickLinkGesture.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/contrib/gotoSymbol/browser/link/goToDefinitionAtPosition.js":
/*!**************************************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/contrib/gotoSymbol/browser/link/goToDefinitionAtPosition.js ***!
\**************************************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ GotoDefinitionAtPositionEditorContribution: () => (/* binding */ GotoDefinitionAtPositionEditorContribution)\n/* harmony export */ });\n/* harmony import */ var _base_common_async_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../../../base/common/async.js */ \"./node_modules/monaco-editor/esm/vs/base/common/async.js\");\n/* harmony import */ var _base_common_errors_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../../base/common/errors.js */ \"./node_modules/monaco-editor/esm/vs/base/common/errors.js\");\n/* harmony import */ var _base_common_htmlContent_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../../../base/common/htmlContent.js */ \"./node_modules/monaco-editor/esm/vs/base/common/htmlContent.js\");\n/* harmony import */ var _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../../../../base/common/lifecycle.js */ \"./node_modules/monaco-editor/esm/vs/base/common/lifecycle.js\");\n/* harmony import */ var _goToDefinitionAtPosition_css__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./goToDefinitionAtPosition.css */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/gotoSymbol/browser/link/goToDefinitionAtPosition.css\");\n/* harmony import */ var _editorState_browser_editorState_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../../../editorState/browser/editorState.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/editorState/browser/editorState.js\");\n/* harmony import */ var _browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../../../../browser/editorExtensions.js */ \"./node_modules/monaco-editor/esm/vs/editor/browser/editorExtensions.js\");\n/* harmony import */ var _common_core_range_js__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ../../../../common/core/range.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/core/range.js\");\n/* harmony import */ var _common_languages_language_js__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ../../../../common/languages/language.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/languages/language.js\");\n/* harmony import */ var _common_services_resolverService_js__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ../../../../common/services/resolverService.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/services/resolverService.js\");\n/* harmony import */ var _clickLinkGesture_js__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! ./clickLinkGesture.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/gotoSymbol/browser/link/clickLinkGesture.js\");\n/* harmony import */ var _peekView_browser_peekView_js__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(/*! ../../../peekView/browser/peekView.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/peekView/browser/peekView.js\");\n/* harmony import */ var _nls_js__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(/*! ../../../../../nls.js */ \"./node_modules/monaco-editor/esm/vs/nls.js\");\n/* harmony import */ var _platform_contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_13__ = __webpack_require__(/*! ../../../../../platform/contextkey/common/contextkey.js */ \"./node_modules/monaco-editor/esm/vs/platform/contextkey/common/contextkey.js\");\n/* harmony import */ var _goToCommands_js__WEBPACK_IMPORTED_MODULE_14__ = __webpack_require__(/*! ../goToCommands.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/gotoSymbol/browser/goToCommands.js\");\n/* harmony import */ var _goToSymbol_js__WEBPACK_IMPORTED_MODULE_15__ = __webpack_require__(/*! ../goToSymbol.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/gotoSymbol/browser/goToSymbol.js\");\n/* harmony import */ var _common_services_languageFeatures_js__WEBPACK_IMPORTED_MODULE_16__ = __webpack_require__(/*! ../../../../common/services/languageFeatures.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/services/languageFeatures.js\");\n/* harmony import */ var _common_model_textModel_js__WEBPACK_IMPORTED_MODULE_17__ = __webpack_require__(/*! ../../../../common/model/textModel.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/model/textModel.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\nvar __decorate = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\n return c > 3 && r && Object.defineProperty(target, key, r), r;\n};\nvar __param = (undefined && undefined.__param) || function (paramIndex, decorator) {\n return function (target, key) { decorator(target, key, paramIndex); }\n};\nvar GotoDefinitionAtPositionEditorContribution_1;\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlet GotoDefinitionAtPositionEditorContribution = GotoDefinitionAtPositionEditorContribution_1 = class GotoDefinitionAtPositionEditorContribution {\n constructor(editor, textModelResolverService, languageService, languageFeaturesService) {\n this.textModelResolverService = textModelResolverService;\n this.languageService = languageService;\n this.languageFeaturesService = languageFeaturesService;\n this.toUnhook = new _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_3__.DisposableStore();\n this.toUnhookForKeyboard = new _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_3__.DisposableStore();\n this.currentWordAtPosition = null;\n this.previousPromise = null;\n this.editor = editor;\n this.linkDecorations = this.editor.createDecorationsCollection();\n const linkGesture = new _clickLinkGesture_js__WEBPACK_IMPORTED_MODULE_10__.ClickLinkGesture(editor);\n this.toUnhook.add(linkGesture);\n this.toUnhook.add(linkGesture.onMouseMoveOrRelevantKeyDown(([mouseEvent, keyboardEvent]) => {\n this.startFindDefinitionFromMouse(mouseEvent, keyboardEvent !== null && keyboardEvent !== void 0 ? keyboardEvent : undefined);\n }));\n this.toUnhook.add(linkGesture.onExecute((mouseEvent) => {\n if (this.isEnabled(mouseEvent)) {\n this.gotoDefinition(mouseEvent.target.position, mouseEvent.hasSideBySideModifier)\n .catch((error) => {\n (0,_base_common_errors_js__WEBPACK_IMPORTED_MODULE_1__.onUnexpectedError)(error);\n })\n .finally(() => {\n this.removeLinkDecorations();\n });\n }\n }));\n this.toUnhook.add(linkGesture.onCancel(() => {\n this.removeLinkDecorations();\n this.currentWordAtPosition = null;\n }));\n }\n static get(editor) {\n return editor.getContribution(GotoDefinitionAtPositionEditorContribution_1.ID);\n }\n async startFindDefinitionFromCursor(position) {\n // For issue: https://github.com/microsoft/vscode/issues/46257\n // equivalent to mouse move with meta/ctrl key\n // First find the definition and add decorations\n // to the editor to be shown with the content hover widget\n await this.startFindDefinition(position);\n // Add listeners for editor cursor move and key down events\n // Dismiss the \"extended\" editor decorations when the user hides\n // the hover widget. There is no event for the widget itself so these\n // serve as a best effort. After removing the link decorations, the hover\n // widget is clean and will only show declarations per next request.\n this.toUnhookForKeyboard.add(this.editor.onDidChangeCursorPosition(() => {\n this.currentWordAtPosition = null;\n this.removeLinkDecorations();\n this.toUnhookForKeyboard.clear();\n }));\n this.toUnhookForKeyboard.add(this.editor.onKeyDown((e) => {\n if (e) {\n this.currentWordAtPosition = null;\n this.removeLinkDecorations();\n this.toUnhookForKeyboard.clear();\n }\n }));\n }\n startFindDefinitionFromMouse(mouseEvent, withKey) {\n // check if we are active and on a content widget\n if (mouseEvent.target.type === 9 /* MouseTargetType.CONTENT_WIDGET */ && this.linkDecorations.length > 0) {\n return;\n }\n if (!this.editor.hasModel() || !this.isEnabled(mouseEvent, withKey)) {\n this.currentWordAtPosition = null;\n this.removeLinkDecorations();\n return;\n }\n const position = mouseEvent.target.position;\n this.startFindDefinition(position);\n }\n async startFindDefinition(position) {\n var _a;\n // Dispose listeners for updating decorations when using keyboard to show definition hover\n this.toUnhookForKeyboard.clear();\n // Find word at mouse position\n const word = position ? (_a = this.editor.getModel()) === null || _a === void 0 ? void 0 : _a.getWordAtPosition(position) : null;\n if (!word) {\n this.currentWordAtPosition = null;\n this.removeLinkDecorations();\n return;\n }\n // Return early if word at position is still the same\n if (this.currentWordAtPosition && this.currentWordAtPosition.startColumn === word.startColumn && this.currentWordAtPosition.endColumn === word.endColumn && this.currentWordAtPosition.word === word.word) {\n return;\n }\n this.currentWordAtPosition = word;\n // Find definition and decorate word if found\n const state = new _editorState_browser_editorState_js__WEBPACK_IMPORTED_MODULE_5__.EditorState(this.editor, 4 /* CodeEditorStateFlag.Position */ | 1 /* CodeEditorStateFlag.Value */ | 2 /* CodeEditorStateFlag.Selection */ | 8 /* CodeEditorStateFlag.Scroll */);\n if (this.previousPromise) {\n this.previousPromise.cancel();\n this.previousPromise = null;\n }\n this.previousPromise = (0,_base_common_async_js__WEBPACK_IMPORTED_MODULE_0__.createCancelablePromise)(token => this.findDefinition(position, token));\n let results;\n try {\n results = await this.previousPromise;\n }\n catch (error) {\n (0,_base_common_errors_js__WEBPACK_IMPORTED_MODULE_1__.onUnexpectedError)(error);\n return;\n }\n if (!results || !results.length || !state.validate(this.editor)) {\n this.removeLinkDecorations();\n return;\n }\n const linkRange = results[0].originSelectionRange\n ? _common_core_range_js__WEBPACK_IMPORTED_MODULE_7__.Range.lift(results[0].originSelectionRange)\n : new _common_core_range_js__WEBPACK_IMPORTED_MODULE_7__.Range(position.lineNumber, word.startColumn, position.lineNumber, word.endColumn);\n // Multiple results\n if (results.length > 1) {\n let combinedRange = linkRange;\n for (const { originSelectionRange } of results) {\n if (originSelectionRange) {\n combinedRange = _common_core_range_js__WEBPACK_IMPORTED_MODULE_7__.Range.plusRange(combinedRange, originSelectionRange);\n }\n }\n this.addDecoration(combinedRange, new _base_common_htmlContent_js__WEBPACK_IMPORTED_MODULE_2__.MarkdownString().appendText(_nls_js__WEBPACK_IMPORTED_MODULE_12__.localize('multipleResults', \"Click to show {0} definitions.\", results.length)));\n }\n else {\n // Single result\n const result = results[0];\n if (!result.uri) {\n return;\n }\n this.textModelResolverService.createModelReference(result.uri).then(ref => {\n if (!ref.object || !ref.object.textEditorModel) {\n ref.dispose();\n return;\n }\n const { object: { textEditorModel } } = ref;\n const { startLineNumber } = result.range;\n if (startLineNumber < 1 || startLineNumber > textEditorModel.getLineCount()) {\n // invalid range\n ref.dispose();\n return;\n }\n const previewValue = this.getPreviewValue(textEditorModel, startLineNumber, result);\n const languageId = this.languageService.guessLanguageIdByFilepathOrFirstLine(textEditorModel.uri);\n this.addDecoration(linkRange, previewValue ? new _base_common_htmlContent_js__WEBPACK_IMPORTED_MODULE_2__.MarkdownString().appendCodeblock(languageId ? languageId : '', previewValue) : undefined);\n ref.dispose();\n });\n }\n }\n getPreviewValue(textEditorModel, startLineNumber, result) {\n let rangeToUse = result.range;\n const numberOfLinesInRange = rangeToUse.endLineNumber - rangeToUse.startLineNumber;\n if (numberOfLinesInRange >= GotoDefinitionAtPositionEditorContribution_1.MAX_SOURCE_PREVIEW_LINES) {\n rangeToUse = this.getPreviewRangeBasedOnIndentation(textEditorModel, startLineNumber);\n }\n const previewValue = this.stripIndentationFromPreviewRange(textEditorModel, startLineNumber, rangeToUse);\n return previewValue;\n }\n stripIndentationFromPreviewRange(textEditorModel, startLineNumber, previewRange) {\n const startIndent = textEditorModel.getLineFirstNonWhitespaceColumn(startLineNumber);\n let minIndent = startIndent;\n for (let endLineNumber = startLineNumber + 1; endLineNumber < previewRange.endLineNumber; endLineNumber++) {\n const endIndent = textEditorModel.getLineFirstNonWhitespaceColumn(endLineNumber);\n minIndent = Math.min(minIndent, endIndent);\n }\n const previewValue = textEditorModel.getValueInRange(previewRange).replace(new RegExp(`^\\\\s{${minIndent - 1}}`, 'gm'), '').trim();\n return previewValue;\n }\n getPreviewRangeBasedOnIndentation(textEditorModel, startLineNumber) {\n const startIndent = textEditorModel.getLineFirstNonWhitespaceColumn(startLineNumber);\n const maxLineNumber = Math.min(textEditorModel.getLineCount(), startLineNumber + GotoDefinitionAtPositionEditorContribution_1.MAX_SOURCE_PREVIEW_LINES);\n let endLineNumber = startLineNumber + 1;\n for (; endLineNumber < maxLineNumber; endLineNumber++) {\n const endIndent = textEditorModel.getLineFirstNonWhitespaceColumn(endLineNumber);\n if (startIndent === endIndent) {\n break;\n }\n }\n return new _common_core_range_js__WEBPACK_IMPORTED_MODULE_7__.Range(startLineNumber, 1, endLineNumber + 1, 1);\n }\n addDecoration(range, hoverMessage) {\n const newDecorations = {\n range: range,\n options: {\n description: 'goto-definition-link',\n inlineClassName: 'goto-definition-link',\n hoverMessage\n }\n };\n this.linkDecorations.set([newDecorations]);\n }\n removeLinkDecorations() {\n this.linkDecorations.clear();\n }\n isEnabled(mouseEvent, withKey) {\n var _a;\n return this.editor.hasModel()\n && mouseEvent.isLeftClick\n && mouseEvent.isNoneOrSingleMouseDown\n && mouseEvent.target.type === 6 /* MouseTargetType.CONTENT_TEXT */\n && !(((_a = mouseEvent.target.detail.injectedText) === null || _a === void 0 ? void 0 : _a.options) instanceof _common_model_textModel_js__WEBPACK_IMPORTED_MODULE_17__.ModelDecorationInjectedTextOptions)\n && (mouseEvent.hasTriggerModifier || (withKey ? withKey.keyCodeIsTriggerKey : false))\n && this.languageFeaturesService.definitionProvider.has(this.editor.getModel());\n }\n findDefinition(position, token) {\n const model = this.editor.getModel();\n if (!model) {\n return Promise.resolve(null);\n }\n return (0,_goToSymbol_js__WEBPACK_IMPORTED_MODULE_15__.getDefinitionsAtPosition)(this.languageFeaturesService.definitionProvider, model, position, token);\n }\n gotoDefinition(position, openToSide) {\n this.editor.setPosition(position);\n return this.editor.invokeWithinContext((accessor) => {\n const canPeek = !openToSide && this.editor.getOption(88 /* EditorOption.definitionLinkOpensInPeek */) && !this.isInPeekEditor(accessor);\n const action = new _goToCommands_js__WEBPACK_IMPORTED_MODULE_14__.DefinitionAction({ openToSide, openInPeek: canPeek, muteMessage: true }, { title: { value: '', original: '' }, id: '', precondition: undefined });\n return action.run(accessor);\n });\n }\n isInPeekEditor(accessor) {\n const contextKeyService = accessor.get(_platform_contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_13__.IContextKeyService);\n return _peekView_browser_peekView_js__WEBPACK_IMPORTED_MODULE_11__.PeekContext.inPeekEditor.getValue(contextKeyService);\n }\n dispose() {\n this.toUnhook.dispose();\n this.toUnhookForKeyboard.dispose();\n }\n};\nGotoDefinitionAtPositionEditorContribution.ID = 'editor.contrib.gotodefinitionatposition';\nGotoDefinitionAtPositionEditorContribution.MAX_SOURCE_PREVIEW_LINES = 8;\nGotoDefinitionAtPositionEditorContribution = GotoDefinitionAtPositionEditorContribution_1 = __decorate([\n __param(1, _common_services_resolverService_js__WEBPACK_IMPORTED_MODULE_9__.ITextModelService),\n __param(2, _common_languages_language_js__WEBPACK_IMPORTED_MODULE_8__.ILanguageService),\n __param(3, _common_services_languageFeatures_js__WEBPACK_IMPORTED_MODULE_16__.ILanguageFeaturesService)\n], GotoDefinitionAtPositionEditorContribution);\n\n(0,_browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_6__.registerEditorContribution)(GotoDefinitionAtPositionEditorContribution.ID, GotoDefinitionAtPositionEditorContribution, 2 /* EditorContributionInstantiation.BeforeFirstInteraction */);\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/contrib/gotoSymbol/browser/link/goToDefinitionAtPosition.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/contrib/gotoSymbol/browser/peek/referencesController.js":
/*!**********************************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/contrib/gotoSymbol/browser/peek/referencesController.js ***!
\**********************************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ ReferencesController: () => (/* binding */ ReferencesController),\n/* harmony export */ ctxReferenceSearchVisible: () => (/* binding */ ctxReferenceSearchVisible)\n/* harmony export */ });\n/* harmony import */ var _base_common_async_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../../../base/common/async.js */ \"./node_modules/monaco-editor/esm/vs/base/common/async.js\");\n/* harmony import */ var _base_common_errors_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../../base/common/errors.js */ \"./node_modules/monaco-editor/esm/vs/base/common/errors.js\");\n/* harmony import */ var _base_common_keyCodes_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../../../base/common/keyCodes.js */ \"./node_modules/monaco-editor/esm/vs/base/common/keyCodes.js\");\n/* harmony import */ var _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../../../../base/common/lifecycle.js */ \"./node_modules/monaco-editor/esm/vs/base/common/lifecycle.js\");\n/* harmony import */ var _browser_services_codeEditorService_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../../../browser/services/codeEditorService.js */ \"./node_modules/monaco-editor/esm/vs/editor/browser/services/codeEditorService.js\");\n/* harmony import */ var _common_core_position_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../../../../common/core/position.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/core/position.js\");\n/* harmony import */ var _common_core_range_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../../../../common/core/range.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/core/range.js\");\n/* harmony import */ var _peekView_browser_peekView_js__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ../../../peekView/browser/peekView.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/peekView/browser/peekView.js\");\n/* harmony import */ var _nls_js__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ../../../../../nls.js */ \"./node_modules/monaco-editor/esm/vs/nls.js\");\n/* harmony import */ var _platform_commands_common_commands_js__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ../../../../../platform/commands/common/commands.js */ \"./node_modules/monaco-editor/esm/vs/platform/commands/common/commands.js\");\n/* harmony import */ var _platform_configuration_common_configuration_js__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! ../../../../../platform/configuration/common/configuration.js */ \"./node_modules/monaco-editor/esm/vs/platform/configuration/common/configuration.js\");\n/* harmony import */ var _platform_contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(/*! ../../../../../platform/contextkey/common/contextkey.js */ \"./node_modules/monaco-editor/esm/vs/platform/contextkey/common/contextkey.js\");\n/* harmony import */ var _platform_instantiation_common_instantiation_js__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(/*! ../../../../../platform/instantiation/common/instantiation.js */ \"./node_modules/monaco-editor/esm/vs/platform/instantiation/common/instantiation.js\");\n/* harmony import */ var _platform_keybinding_common_keybindingsRegistry_js__WEBPACK_IMPORTED_MODULE_13__ = __webpack_require__(/*! ../../../../../platform/keybinding/common/keybindingsRegistry.js */ \"./node_modules/monaco-editor/esm/vs/platform/keybinding/common/keybindingsRegistry.js\");\n/* harmony import */ var _platform_list_browser_listService_js__WEBPACK_IMPORTED_MODULE_14__ = __webpack_require__(/*! ../../../../../platform/list/browser/listService.js */ \"./node_modules/monaco-editor/esm/vs/platform/list/browser/listService.js\");\n/* harmony import */ var _platform_notification_common_notification_js__WEBPACK_IMPORTED_MODULE_15__ = __webpack_require__(/*! ../../../../../platform/notification/common/notification.js */ \"./node_modules/monaco-editor/esm/vs/platform/notification/common/notification.js\");\n/* harmony import */ var _platform_storage_common_storage_js__WEBPACK_IMPORTED_MODULE_16__ = __webpack_require__(/*! ../../../../../platform/storage/common/storage.js */ \"./node_modules/monaco-editor/esm/vs/platform/storage/common/storage.js\");\n/* harmony import */ var _referencesModel_js__WEBPACK_IMPORTED_MODULE_17__ = __webpack_require__(/*! ../referencesModel.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/gotoSymbol/browser/referencesModel.js\");\n/* harmony import */ var _referencesWidget_js__WEBPACK_IMPORTED_MODULE_18__ = __webpack_require__(/*! ./referencesWidget.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/gotoSymbol/browser/peek/referencesWidget.js\");\n/* harmony import */ var _common_editorContextKeys_js__WEBPACK_IMPORTED_MODULE_19__ = __webpack_require__(/*! ../../../../common/editorContextKeys.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/editorContextKeys.js\");\n/* harmony import */ var _platform_contextkey_common_contextkeys_js__WEBPACK_IMPORTED_MODULE_20__ = __webpack_require__(/*! ../../../../../platform/contextkey/common/contextkeys.js */ \"./node_modules/monaco-editor/esm/vs/platform/contextkey/common/contextkeys.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\nvar __decorate = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\n return c > 3 && r && Object.defineProperty(target, key, r), r;\n};\nvar __param = (undefined && undefined.__param) || function (paramIndex, decorator) {\n return function (target, key) { decorator(target, key, paramIndex); }\n};\nvar ReferencesController_1;\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nconst ctxReferenceSearchVisible = new _platform_contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_11__.RawContextKey('referenceSearchVisible', false, _nls_js__WEBPACK_IMPORTED_MODULE_8__.localize('referenceSearchVisible', \"Whether reference peek is visible, like 'Peek References' or 'Peek Definition'\"));\nlet ReferencesController = ReferencesController_1 = class ReferencesController {\n static get(editor) {\n return editor.getContribution(ReferencesController_1.ID);\n }\n constructor(_defaultTreeKeyboardSupport, _editor, contextKeyService, _editorService, _notificationService, _instantiationService, _storageService, _configurationService) {\n this._defaultTreeKeyboardSupport = _defaultTreeKeyboardSupport;\n this._editor = _editor;\n this._editorService = _editorService;\n this._notificationService = _notificationService;\n this._instantiationService = _instantiationService;\n this._storageService = _storageService;\n this._configurationService = _configurationService;\n this._disposables = new _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_3__.DisposableStore();\n this._requestIdPool = 0;\n this._ignoreModelChangeEvent = false;\n this._referenceSearchVisible = ctxReferenceSearchVisible.bindTo(contextKeyService);\n }\n dispose() {\n var _a, _b;\n this._referenceSearchVisible.reset();\n this._disposables.dispose();\n (_a = this._widget) === null || _a === void 0 ? void 0 : _a.dispose();\n (_b = this._model) === null || _b === void 0 ? void 0 : _b.dispose();\n this._widget = undefined;\n this._model = undefined;\n }\n toggleWidget(range, modelPromise, peekMode) {\n // close current widget and return early is position didn't change\n let widgetPosition;\n if (this._widget) {\n widgetPosition = this._widget.position;\n }\n this.closeWidget();\n if (!!widgetPosition && range.containsPosition(widgetPosition)) {\n return;\n }\n this._peekMode = peekMode;\n this._referenceSearchVisible.set(true);\n // close the widget on model/mode changes\n this._disposables.add(this._editor.onDidChangeModelLanguage(() => { this.closeWidget(); }));\n this._disposables.add(this._editor.onDidChangeModel(() => {\n if (!this._ignoreModelChangeEvent) {\n this.closeWidget();\n }\n }));\n const storageKey = 'peekViewLayout';\n const data = _referencesWidget_js__WEBPACK_IMPORTED_MODULE_18__.LayoutData.fromJSON(this._storageService.get(storageKey, 0 /* StorageScope.PROFILE */, '{}'));\n this._widget = this._instantiationService.createInstance(_referencesWidget_js__WEBPACK_IMPORTED_MODULE_18__.ReferenceWidget, this._editor, this._defaultTreeKeyboardSupport, data);\n this._widget.setTitle(_nls_js__WEBPACK_IMPORTED_MODULE_8__.localize('labelLoading', \"Loading...\"));\n this._widget.show(range);\n this._disposables.add(this._widget.onDidClose(() => {\n modelPromise.cancel();\n if (this._widget) {\n this._storageService.store(storageKey, JSON.stringify(this._widget.layoutData), 0 /* StorageScope.PROFILE */, 1 /* StorageTarget.MACHINE */);\n this._widget = undefined;\n }\n this.closeWidget();\n }));\n this._disposables.add(this._widget.onDidSelectReference(event => {\n const { element, kind } = event;\n if (!element) {\n return;\n }\n switch (kind) {\n case 'open':\n if (event.source !== 'editor' || !this._configurationService.getValue('editor.stablePeek')) {\n // when stable peek is configured we don't close\n // the peek window on selecting the editor\n this.openReference(element, false, false);\n }\n break;\n case 'side':\n this.openReference(element, true, false);\n break;\n case 'goto':\n if (peekMode) {\n this._gotoReference(element, true);\n }\n else {\n this.openReference(element, false, true);\n }\n break;\n }\n }));\n const requestId = ++this._requestIdPool;\n modelPromise.then(model => {\n var _a;\n // still current request? widget still open?\n if (requestId !== this._requestIdPool || !this._widget) {\n model.dispose();\n return undefined;\n }\n (_a = this._model) === null || _a === void 0 ? void 0 : _a.dispose();\n this._model = model;\n // show widget\n return this._widget.setModel(this._model).then(() => {\n if (this._widget && this._model && this._editor.hasModel()) { // might have been closed\n // set title\n if (!this._model.isEmpty) {\n this._widget.setMetaTitle(_nls_js__WEBPACK_IMPORTED_MODULE_8__.localize('metaTitle.N', \"{0} ({1})\", this._model.title, this._model.references.length));\n }\n else {\n this._widget.setMetaTitle('');\n }\n // set 'best' selection\n const uri = this._editor.getModel().uri;\n const pos = new _common_core_position_js__WEBPACK_IMPORTED_MODULE_5__.Position(range.startLineNumber, range.startColumn);\n const selection = this._model.nearestReference(uri, pos);\n if (selection) {\n return this._widget.setSelection(selection).then(() => {\n if (this._widget && this._editor.getOption(87 /* EditorOption.peekWidgetDefaultFocus */) === 'editor') {\n this._widget.focusOnPreviewEditor();\n }\n });\n }\n }\n return undefined;\n });\n }, error => {\n this._notificationService.error(error);\n });\n }\n changeFocusBetweenPreviewAndReferences() {\n if (!this._widget) {\n // can be called while still resolving...\n return;\n }\n if (this._widget.isPreviewEditorFocused()) {\n this._widget.focusOnReferenceTree();\n }\n else {\n this._widget.focusOnPreviewEditor();\n }\n }\n async goToNextOrPreviousReference(fwd) {\n if (!this._editor.hasModel() || !this._model || !this._widget) {\n // can be called while still resolving...\n return;\n }\n const currentPosition = this._widget.position;\n if (!currentPosition) {\n return;\n }\n const source = this._model.nearestReference(this._editor.getModel().uri, currentPosition);\n if (!source) {\n return;\n }\n const target = this._model.nextOrPreviousReference(source, fwd);\n const editorFocus = this._editor.hasTextFocus();\n const previewEditorFocus = this._widget.isPreviewEditorFocused();\n await this._widget.setSelection(target);\n await this._gotoReference(target, false);\n if (editorFocus) {\n this._editor.focus();\n }\n else if (this._widget && previewEditorFocus) {\n this._widget.focusOnPreviewEditor();\n }\n }\n async revealReference(reference) {\n if (!this._editor.hasModel() || !this._model || !this._widget) {\n // can be called while still resolving...\n return;\n }\n await this._widget.revealReference(reference);\n }\n closeWidget(focusEditor = true) {\n var _a, _b;\n (_a = this._widget) === null || _a === void 0 ? void 0 : _a.dispose();\n (_b = this._model) === null || _b === void 0 ? void 0 : _b.dispose();\n this._referenceSearchVisible.reset();\n this._disposables.clear();\n this._widget = undefined;\n this._model = undefined;\n if (focusEditor) {\n this._editor.focus();\n }\n this._requestIdPool += 1; // Cancel pending requests\n }\n _gotoReference(ref, pinned) {\n var _a;\n (_a = this._widget) === null || _a === void 0 ? void 0 : _a.hide();\n this._ignoreModelChangeEvent = true;\n const range = _common_core_range_js__WEBPACK_IMPORTED_MODULE_6__.Range.lift(ref.range).collapseToStart();\n return this._editorService.openCodeEditor({\n resource: ref.uri,\n options: { selection: range, selectionSource: \"code.jump\" /* TextEditorSelectionSource.JUMP */, pinned }\n }, this._editor).then(openedEditor => {\n var _a;\n this._ignoreModelChangeEvent = false;\n if (!openedEditor || !this._widget) {\n // something went wrong...\n this.closeWidget();\n return;\n }\n if (this._editor === openedEditor) {\n //\n this._widget.show(range);\n this._widget.focusOnReferenceTree();\n }\n else {\n // we opened a different editor instance which means a different controller instance.\n // therefore we stop with this controller and continue with the other\n const other = ReferencesController_1.get(openedEditor);\n const model = this._model.clone();\n this.closeWidget();\n openedEditor.focus();\n other === null || other === void 0 ? void 0 : other.toggleWidget(range, (0,_base_common_async_js__WEBPACK_IMPORTED_MODULE_0__.createCancelablePromise)(_ => Promise.resolve(model)), (_a = this._peekMode) !== null && _a !== void 0 ? _a : false);\n }\n }, (err) => {\n this._ignoreModelChangeEvent = false;\n (0,_base_common_errors_js__WEBPACK_IMPORTED_MODULE_1__.onUnexpectedError)(err);\n });\n }\n openReference(ref, sideBySide, pinned) {\n // clear stage\n if (!sideBySide) {\n this.closeWidget();\n }\n const { uri, range } = ref;\n this._editorService.openCodeEditor({\n resource: uri,\n options: { selection: range, selectionSource: \"code.jump\" /* TextEditorSelectionSource.JUMP */, pinned }\n }, this._editor, sideBySide);\n }\n};\nReferencesController.ID = 'editor.contrib.referencesController';\nReferencesController = ReferencesController_1 = __decorate([\n __param(2, _platform_contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_11__.IContextKeyService),\n __param(3, _browser_services_codeEditorService_js__WEBPACK_IMPORTED_MODULE_4__.ICodeEditorService),\n __param(4, _platform_notification_common_notification_js__WEBPACK_IMPORTED_MODULE_15__.INotificationService),\n __param(5, _platform_instantiation_common_instantiation_js__WEBPACK_IMPORTED_MODULE_12__.IInstantiationService),\n __param(6, _platform_storage_common_storage_js__WEBPACK_IMPORTED_MODULE_16__.IStorageService),\n __param(7, _platform_configuration_common_configuration_js__WEBPACK_IMPORTED_MODULE_10__.IConfigurationService)\n], ReferencesController);\n\nfunction withController(accessor, fn) {\n const outerEditor = (0,_peekView_browser_peekView_js__WEBPACK_IMPORTED_MODULE_7__.getOuterEditor)(accessor);\n if (!outerEditor) {\n return;\n }\n const controller = ReferencesController.get(outerEditor);\n if (controller) {\n fn(controller);\n }\n}\n_platform_keybinding_common_keybindingsRegistry_js__WEBPACK_IMPORTED_MODULE_13__.KeybindingsRegistry.registerCommandAndKeybindingRule({\n id: 'togglePeekWidgetFocus',\n weight: 100 /* KeybindingWeight.EditorContrib */,\n primary: (0,_base_common_keyCodes_js__WEBPACK_IMPORTED_MODULE_2__.KeyChord)(2048 /* KeyMod.CtrlCmd */ | 41 /* KeyCode.KeyK */, 60 /* KeyCode.F2 */),\n when: _platform_contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_11__.ContextKeyExpr.or(ctxReferenceSearchVisible, _peekView_browser_peekView_js__WEBPACK_IMPORTED_MODULE_7__.PeekContext.inPeekEditor),\n handler(accessor) {\n withController(accessor, controller => {\n controller.changeFocusBetweenPreviewAndReferences();\n });\n }\n});\n_platform_keybinding_common_keybindingsRegistry_js__WEBPACK_IMPORTED_MODULE_13__.KeybindingsRegistry.registerCommandAndKeybindingRule({\n id: 'goToNextReference',\n weight: 100 /* KeybindingWeight.EditorContrib */ - 10,\n primary: 62 /* KeyCode.F4 */,\n secondary: [70 /* KeyCode.F12 */],\n when: _platform_contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_11__.ContextKeyExpr.or(ctxReferenceSearchVisible, _peekView_browser_peekView_js__WEBPACK_IMPORTED_MODULE_7__.PeekContext.inPeekEditor),\n handler(accessor) {\n withController(accessor, controller => {\n controller.goToNextOrPreviousReference(true);\n });\n }\n});\n_platform_keybinding_common_keybindingsRegistry_js__WEBPACK_IMPORTED_MODULE_13__.KeybindingsRegistry.registerCommandAndKeybindingRule({\n id: 'goToPreviousReference',\n weight: 100 /* KeybindingWeight.EditorContrib */ - 10,\n primary: 1024 /* KeyMod.Shift */ | 62 /* KeyCode.F4 */,\n secondary: [1024 /* KeyMod.Shift */ | 70 /* KeyCode.F12 */],\n when: _platform_contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_11__.ContextKeyExpr.or(ctxReferenceSearchVisible, _peekView_browser_peekView_js__WEBPACK_IMPORTED_MODULE_7__.PeekContext.inPeekEditor),\n handler(accessor) {\n withController(accessor, controller => {\n controller.goToNextOrPreviousReference(false);\n });\n }\n});\n// commands that aren't needed anymore because there is now ContextKeyExpr.OR\n_platform_commands_common_commands_js__WEBPACK_IMPORTED_MODULE_9__.CommandsRegistry.registerCommandAlias('goToNextReferenceFromEmbeddedEditor', 'goToNextReference');\n_platform_commands_common_commands_js__WEBPACK_IMPORTED_MODULE_9__.CommandsRegistry.registerCommandAlias('goToPreviousReferenceFromEmbeddedEditor', 'goToPreviousReference');\n// close\n_platform_commands_common_commands_js__WEBPACK_IMPORTED_MODULE_9__.CommandsRegistry.registerCommandAlias('closeReferenceSearchEditor', 'closeReferenceSearch');\n_platform_commands_common_commands_js__WEBPACK_IMPORTED_MODULE_9__.CommandsRegistry.registerCommand('closeReferenceSearch', accessor => withController(accessor, controller => controller.closeWidget()));\n_platform_keybinding_common_keybindingsRegistry_js__WEBPACK_IMPORTED_MODULE_13__.KeybindingsRegistry.registerKeybindingRule({\n id: 'closeReferenceSearch',\n weight: 100 /* KeybindingWeight.EditorContrib */ - 101,\n primary: 9 /* KeyCode.Escape */,\n secondary: [1024 /* KeyMod.Shift */ | 9 /* KeyCode.Escape */],\n when: _platform_contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_11__.ContextKeyExpr.and(_peekView_browser_peekView_js__WEBPACK_IMPORTED_MODULE_7__.PeekContext.inPeekEditor, _platform_contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_11__.ContextKeyExpr.not('config.editor.stablePeek'))\n});\n_platform_keybinding_common_keybindingsRegistry_js__WEBPACK_IMPORTED_MODULE_13__.KeybindingsRegistry.registerKeybindingRule({\n id: 'closeReferenceSearch',\n weight: 200 /* KeybindingWeight.WorkbenchContrib */ + 50,\n primary: 9 /* KeyCode.Escape */,\n secondary: [1024 /* KeyMod.Shift */ | 9 /* KeyCode.Escape */],\n when: _platform_contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_11__.ContextKeyExpr.and(ctxReferenceSearchVisible, _platform_contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_11__.ContextKeyExpr.not('config.editor.stablePeek'), _platform_contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_11__.ContextKeyExpr.or(_common_editorContextKeys_js__WEBPACK_IMPORTED_MODULE_19__.EditorContextKeys.editorTextFocus, _platform_contextkey_common_contextkeys_js__WEBPACK_IMPORTED_MODULE_20__.InputFocusedContext.negate()))\n});\n_platform_keybinding_common_keybindingsRegistry_js__WEBPACK_IMPORTED_MODULE_13__.KeybindingsRegistry.registerCommandAndKeybindingRule({\n id: 'revealReference',\n weight: 200 /* KeybindingWeight.WorkbenchContrib */,\n primary: 3 /* KeyCode.Enter */,\n mac: {\n primary: 3 /* KeyCode.Enter */,\n secondary: [2048 /* KeyMod.CtrlCmd */ | 18 /* KeyCode.DownArrow */]\n },\n when: _platform_contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_11__.ContextKeyExpr.and(ctxReferenceSearchVisible, _platform_list_browser_listService_js__WEBPACK_IMPORTED_MODULE_14__.WorkbenchListFocusContextKey, _platform_list_browser_listService_js__WEBPACK_IMPORTED_MODULE_14__.WorkbenchTreeElementCanCollapse.negate(), _platform_list_browser_listService_js__WEBPACK_IMPORTED_MODULE_14__.WorkbenchTreeElementCanExpand.negate()),\n handler(accessor) {\n var _a;\n const listService = accessor.get(_platform_list_browser_listService_js__WEBPACK_IMPORTED_MODULE_14__.IListService);\n const focus = (_a = listService.lastFocusedList) === null || _a === void 0 ? void 0 : _a.getFocus();\n if (Array.isArray(focus) && focus[0] instanceof _referencesModel_js__WEBPACK_IMPORTED_MODULE_17__.OneReference) {\n withController(accessor, controller => controller.revealReference(focus[0]));\n }\n }\n});\n_platform_keybinding_common_keybindingsRegistry_js__WEBPACK_IMPORTED_MODULE_13__.KeybindingsRegistry.registerCommandAndKeybindingRule({\n id: 'openReferenceToSide',\n weight: 100 /* KeybindingWeight.EditorContrib */,\n primary: 2048 /* KeyMod.CtrlCmd */ | 3 /* KeyCode.Enter */,\n mac: {\n primary: 256 /* KeyMod.WinCtrl */ | 3 /* KeyCode.Enter */\n },\n when: _platform_contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_11__.ContextKeyExpr.and(ctxReferenceSearchVisible, _platform_list_browser_listService_js__WEBPACK_IMPORTED_MODULE_14__.WorkbenchListFocusContextKey, _platform_list_browser_listService_js__WEBPACK_IMPORTED_MODULE_14__.WorkbenchTreeElementCanCollapse.negate(), _platform_list_browser_listService_js__WEBPACK_IMPORTED_MODULE_14__.WorkbenchTreeElementCanExpand.negate()),\n handler(accessor) {\n var _a;\n const listService = accessor.get(_platform_list_browser_listService_js__WEBPACK_IMPORTED_MODULE_14__.IListService);\n const focus = (_a = listService.lastFocusedList) === null || _a === void 0 ? void 0 : _a.getFocus();\n if (Array.isArray(focus) && focus[0] instanceof _referencesModel_js__WEBPACK_IMPORTED_MODULE_17__.OneReference) {\n withController(accessor, controller => controller.openReference(focus[0], true, true));\n }\n }\n});\n_platform_commands_common_commands_js__WEBPACK_IMPORTED_MODULE_9__.CommandsRegistry.registerCommand('openReference', (accessor) => {\n var _a;\n const listService = accessor.get(_platform_list_browser_listService_js__WEBPACK_IMPORTED_MODULE_14__.IListService);\n const focus = (_a = listService.lastFocusedList) === null || _a === void 0 ? void 0 : _a.getFocus();\n if (Array.isArray(focus) && focus[0] instanceof _referencesModel_js__WEBPACK_IMPORTED_MODULE_17__.OneReference) {\n withController(accessor, controller => controller.openReference(focus[0], false, true));\n }\n});\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/contrib/gotoSymbol/browser/peek/referencesController.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/contrib/gotoSymbol/browser/peek/referencesTree.js":
/*!****************************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/contrib/gotoSymbol/browser/peek/referencesTree.js ***!
\****************************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ AccessibilityProvider: () => (/* binding */ AccessibilityProvider),\n/* harmony export */ DataSource: () => (/* binding */ DataSource),\n/* harmony export */ Delegate: () => (/* binding */ Delegate),\n/* harmony export */ FileReferencesRenderer: () => (/* binding */ FileReferencesRenderer),\n/* harmony export */ IdentityProvider: () => (/* binding */ IdentityProvider),\n/* harmony export */ OneReferenceRenderer: () => (/* binding */ OneReferenceRenderer),\n/* harmony export */ StringRepresentationProvider: () => (/* binding */ StringRepresentationProvider)\n/* harmony export */ });\n/* harmony import */ var _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../../../base/browser/dom.js */ \"./node_modules/monaco-editor/esm/vs/base/browser/dom.js\");\n/* harmony import */ var _base_browser_ui_countBadge_countBadge_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../../base/browser/ui/countBadge/countBadge.js */ \"./node_modules/monaco-editor/esm/vs/base/browser/ui/countBadge/countBadge.js\");\n/* harmony import */ var _base_browser_ui_highlightedlabel_highlightedLabel_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../../../base/browser/ui/highlightedlabel/highlightedLabel.js */ \"./node_modules/monaco-editor/esm/vs/base/browser/ui/highlightedlabel/highlightedLabel.js\");\n/* harmony import */ var _base_browser_ui_iconLabel_iconLabel_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../../../../base/browser/ui/iconLabel/iconLabel.js */ \"./node_modules/monaco-editor/esm/vs/base/browser/ui/iconLabel/iconLabel.js\");\n/* harmony import */ var _base_common_filters_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../../../../base/common/filters.js */ \"./node_modules/monaco-editor/esm/vs/base/common/filters.js\");\n/* harmony import */ var _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../../../../../base/common/lifecycle.js */ \"./node_modules/monaco-editor/esm/vs/base/common/lifecycle.js\");\n/* harmony import */ var _base_common_resources_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../../../../../base/common/resources.js */ \"./node_modules/monaco-editor/esm/vs/base/common/resources.js\");\n/* harmony import */ var _common_services_resolverService_js__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ../../../../common/services/resolverService.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/services/resolverService.js\");\n/* harmony import */ var _nls_js__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ../../../../../nls.js */ \"./node_modules/monaco-editor/esm/vs/nls.js\");\n/* harmony import */ var _platform_instantiation_common_instantiation_js__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ../../../../../platform/instantiation/common/instantiation.js */ \"./node_modules/monaco-editor/esm/vs/platform/instantiation/common/instantiation.js\");\n/* harmony import */ var _platform_keybinding_common_keybinding_js__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! ../../../../../platform/keybinding/common/keybinding.js */ \"./node_modules/monaco-editor/esm/vs/platform/keybinding/common/keybinding.js\");\n/* harmony import */ var _platform_label_common_label_js__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(/*! ../../../../../platform/label/common/label.js */ \"./node_modules/monaco-editor/esm/vs/platform/label/common/label.js\");\n/* harmony import */ var _platform_theme_browser_defaultStyles_js__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(/*! ../../../../../platform/theme/browser/defaultStyles.js */ \"./node_modules/monaco-editor/esm/vs/platform/theme/browser/defaultStyles.js\");\n/* harmony import */ var _referencesModel_js__WEBPACK_IMPORTED_MODULE_13__ = __webpack_require__(/*! ../referencesModel.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/gotoSymbol/browser/referencesModel.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\nvar __decorate = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\n return c > 3 && r && Object.defineProperty(target, key, r), r;\n};\nvar __param = (undefined && undefined.__param) || function (paramIndex, decorator) {\n return function (target, key) { decorator(target, key, paramIndex); }\n};\nvar FileReferencesRenderer_1;\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlet DataSource = class DataSource {\n constructor(_resolverService) {\n this._resolverService = _resolverService;\n }\n hasChildren(element) {\n if (element instanceof _referencesModel_js__WEBPACK_IMPORTED_MODULE_13__.ReferencesModel) {\n return true;\n }\n if (element instanceof _referencesModel_js__WEBPACK_IMPORTED_MODULE_13__.FileReferences) {\n return true;\n }\n return false;\n }\n getChildren(element) {\n if (element instanceof _referencesModel_js__WEBPACK_IMPORTED_MODULE_13__.ReferencesModel) {\n return element.groups;\n }\n if (element instanceof _referencesModel_js__WEBPACK_IMPORTED_MODULE_13__.FileReferences) {\n return element.resolve(this._resolverService).then(val => {\n // if (element.failure) {\n // \t// refresh the element on failure so that\n // \t// we can update its rendering\n // \treturn tree.refresh(element).then(() => val.children);\n // }\n return val.children;\n });\n }\n throw new Error('bad tree');\n }\n};\nDataSource = __decorate([\n __param(0, _common_services_resolverService_js__WEBPACK_IMPORTED_MODULE_7__.ITextModelService)\n], DataSource);\n\n//#endregion\nclass Delegate {\n getHeight() {\n return 23;\n }\n getTemplateId(element) {\n if (element instanceof _referencesModel_js__WEBPACK_IMPORTED_MODULE_13__.FileReferences) {\n return FileReferencesRenderer.id;\n }\n else {\n return OneReferenceRenderer.id;\n }\n }\n}\nlet StringRepresentationProvider = class StringRepresentationProvider {\n constructor(_keybindingService) {\n this._keybindingService = _keybindingService;\n }\n getKeyboardNavigationLabel(element) {\n var _a;\n if (element instanceof _referencesModel_js__WEBPACK_IMPORTED_MODULE_13__.OneReference) {\n const parts = (_a = element.parent.getPreview(element)) === null || _a === void 0 ? void 0 : _a.preview(element.range);\n if (parts) {\n return parts.value;\n }\n }\n // FileReferences or unresolved OneReference\n return (0,_base_common_resources_js__WEBPACK_IMPORTED_MODULE_6__.basename)(element.uri);\n }\n};\nStringRepresentationProvider = __decorate([\n __param(0, _platform_keybinding_common_keybinding_js__WEBPACK_IMPORTED_MODULE_10__.IKeybindingService)\n], StringRepresentationProvider);\n\nclass IdentityProvider {\n getId(element) {\n return element instanceof _referencesModel_js__WEBPACK_IMPORTED_MODULE_13__.OneReference ? element.id : element.uri;\n }\n}\n//#region render: File\nlet FileReferencesTemplate = class FileReferencesTemplate extends _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_5__.Disposable {\n constructor(container, _labelService) {\n super();\n this._labelService = _labelService;\n const parent = document.createElement('div');\n parent.classList.add('reference-file');\n this.file = this._register(new _base_browser_ui_iconLabel_iconLabel_js__WEBPACK_IMPORTED_MODULE_3__.IconLabel(parent, { supportHighlights: true }));\n this.badge = new _base_browser_ui_countBadge_countBadge_js__WEBPACK_IMPORTED_MODULE_1__.CountBadge(_base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.append(parent, _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.$('.count')), {}, _platform_theme_browser_defaultStyles_js__WEBPACK_IMPORTED_MODULE_12__.defaultCountBadgeStyles);\n container.appendChild(parent);\n }\n set(element, matches) {\n const parent = (0,_base_common_resources_js__WEBPACK_IMPORTED_MODULE_6__.dirname)(element.uri);\n this.file.setLabel(this._labelService.getUriBasenameLabel(element.uri), this._labelService.getUriLabel(parent, { relative: true }), { title: this._labelService.getUriLabel(element.uri), matches });\n const len = element.children.length;\n this.badge.setCount(len);\n if (len > 1) {\n this.badge.setTitleFormat((0,_nls_js__WEBPACK_IMPORTED_MODULE_8__.localize)('referencesCount', \"{0} references\", len));\n }\n else {\n this.badge.setTitleFormat((0,_nls_js__WEBPACK_IMPORTED_MODULE_8__.localize)('referenceCount', \"{0} reference\", len));\n }\n }\n};\nFileReferencesTemplate = __decorate([\n __param(1, _platform_label_common_label_js__WEBPACK_IMPORTED_MODULE_11__.ILabelService)\n], FileReferencesTemplate);\nlet FileReferencesRenderer = FileReferencesRenderer_1 = class FileReferencesRenderer {\n constructor(_instantiationService) {\n this._instantiationService = _instantiationService;\n this.templateId = FileReferencesRenderer_1.id;\n }\n renderTemplate(container) {\n return this._instantiationService.createInstance(FileReferencesTemplate, container);\n }\n renderElement(node, index, template) {\n template.set(node.element, (0,_base_common_filters_js__WEBPACK_IMPORTED_MODULE_4__.createMatches)(node.filterData));\n }\n disposeTemplate(templateData) {\n templateData.dispose();\n }\n};\nFileReferencesRenderer.id = 'FileReferencesRenderer';\nFileReferencesRenderer = FileReferencesRenderer_1 = __decorate([\n __param(0, _platform_instantiation_common_instantiation_js__WEBPACK_IMPORTED_MODULE_9__.IInstantiationService)\n], FileReferencesRenderer);\n\n//#endregion\n//#region render: Reference\nclass OneReferenceTemplate {\n constructor(container) {\n this.label = new _base_browser_ui_highlightedlabel_highlightedLabel_js__WEBPACK_IMPORTED_MODULE_2__.HighlightedLabel(container);\n }\n set(element, score) {\n var _a;\n const preview = (_a = element.parent.getPreview(element)) === null || _a === void 0 ? void 0 : _a.preview(element.range);\n if (!preview || !preview.value) {\n // this means we FAILED to resolve the document or the value is the empty string\n this.label.set(`${(0,_base_common_resources_js__WEBPACK_IMPORTED_MODULE_6__.basename)(element.uri)}:${element.range.startLineNumber + 1}:${element.range.startColumn + 1}`);\n }\n else {\n // render search match as highlight unless\n // we have score, then render the score\n const { value, highlight } = preview;\n if (score && !_base_common_filters_js__WEBPACK_IMPORTED_MODULE_4__.FuzzyScore.isDefault(score)) {\n this.label.element.classList.toggle('referenceMatch', false);\n this.label.set(value, (0,_base_common_filters_js__WEBPACK_IMPORTED_MODULE_4__.createMatches)(score));\n }\n else {\n this.label.element.classList.toggle('referenceMatch', true);\n this.label.set(value, [highlight]);\n }\n }\n }\n}\nclass OneReferenceRenderer {\n constructor() {\n this.templateId = OneReferenceRenderer.id;\n }\n renderTemplate(container) {\n return new OneReferenceTemplate(container);\n }\n renderElement(node, index, templateData) {\n templateData.set(node.element, node.filterData);\n }\n disposeTemplate() {\n }\n}\nOneReferenceRenderer.id = 'OneReferenceRenderer';\n//#endregion\nclass AccessibilityProvider {\n getWidgetAriaLabel() {\n return (0,_nls_js__WEBPACK_IMPORTED_MODULE_8__.localize)('treeAriaLabel', \"References\");\n }\n getAriaLabel(element) {\n return element.ariaMessage;\n }\n}\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/contrib/gotoSymbol/browser/peek/referencesTree.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/contrib/gotoSymbol/browser/peek/referencesWidget.js":
/*!******************************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/contrib/gotoSymbol/browser/peek/referencesWidget.js ***!
\******************************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ LayoutData: () => (/* binding */ LayoutData),\n/* harmony export */ ReferenceWidget: () => (/* binding */ ReferenceWidget)\n/* harmony export */ });\n/* harmony import */ var _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../../../base/browser/dom.js */ \"./node_modules/monaco-editor/esm/vs/base/browser/dom.js\");\n/* harmony import */ var _base_browser_ui_splitview_splitview_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../../base/browser/ui/splitview/splitview.js */ \"./node_modules/monaco-editor/esm/vs/base/browser/ui/splitview/splitview.js\");\n/* harmony import */ var _base_common_color_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../../../base/common/color.js */ \"./node_modules/monaco-editor/esm/vs/base/common/color.js\");\n/* harmony import */ var _base_common_event_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../../../../base/common/event.js */ \"./node_modules/monaco-editor/esm/vs/base/common/event.js\");\n/* harmony import */ var _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../../../../base/common/lifecycle.js */ \"./node_modules/monaco-editor/esm/vs/base/common/lifecycle.js\");\n/* harmony import */ var _base_common_network_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../../../../../base/common/network.js */ \"./node_modules/monaco-editor/esm/vs/base/common/network.js\");\n/* harmony import */ var _base_common_resources_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../../../../../base/common/resources.js */ \"./node_modules/monaco-editor/esm/vs/base/common/resources.js\");\n/* harmony import */ var _referencesWidget_css__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ./referencesWidget.css */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/gotoSymbol/browser/peek/referencesWidget.css\");\n/* harmony import */ var _browser_widget_embeddedCodeEditorWidget_js__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ../../../../browser/widget/embeddedCodeEditorWidget.js */ \"./node_modules/monaco-editor/esm/vs/editor/browser/widget/embeddedCodeEditorWidget.js\");\n/* harmony import */ var _common_core_range_js__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ../../../../common/core/range.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/core/range.js\");\n/* harmony import */ var _common_model_textModel_js__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! ../../../../common/model/textModel.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/model/textModel.js\");\n/* harmony import */ var _common_languages_languageConfigurationRegistry_js__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(/*! ../../../../common/languages/languageConfigurationRegistry.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/languages/languageConfigurationRegistry.js\");\n/* harmony import */ var _common_languages_modesRegistry_js__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(/*! ../../../../common/languages/modesRegistry.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/languages/modesRegistry.js\");\n/* harmony import */ var _common_languages_language_js__WEBPACK_IMPORTED_MODULE_13__ = __webpack_require__(/*! ../../../../common/languages/language.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/languages/language.js\");\n/* harmony import */ var _common_services_resolverService_js__WEBPACK_IMPORTED_MODULE_14__ = __webpack_require__(/*! ../../../../common/services/resolverService.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/services/resolverService.js\");\n/* harmony import */ var _referencesTree_js__WEBPACK_IMPORTED_MODULE_15__ = __webpack_require__(/*! ./referencesTree.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/gotoSymbol/browser/peek/referencesTree.js\");\n/* harmony import */ var _peekView_browser_peekView_js__WEBPACK_IMPORTED_MODULE_16__ = __webpack_require__(/*! ../../../peekView/browser/peekView.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/peekView/browser/peekView.js\");\n/* harmony import */ var _nls_js__WEBPACK_IMPORTED_MODULE_17__ = __webpack_require__(/*! ../../../../../nls.js */ \"./node_modules/monaco-editor/esm/vs/nls.js\");\n/* harmony import */ var _platform_instantiation_common_instantiation_js__WEBPACK_IMPORTED_MODULE_18__ = __webpack_require__(/*! ../../../../../platform/instantiation/common/instantiation.js */ \"./node_modules/monaco-editor/esm/vs/platform/instantiation/common/instantiation.js\");\n/* harmony import */ var _platform_keybinding_common_keybinding_js__WEBPACK_IMPORTED_MODULE_19__ = __webpack_require__(/*! ../../../../../platform/keybinding/common/keybinding.js */ \"./node_modules/monaco-editor/esm/vs/platform/keybinding/common/keybinding.js\");\n/* harmony import */ var _platform_label_common_label_js__WEBPACK_IMPORTED_MODULE_20__ = __webpack_require__(/*! ../../../../../platform/label/common/label.js */ \"./node_modules/monaco-editor/esm/vs/platform/label/common/label.js\");\n/* harmony import */ var _platform_list_browser_listService_js__WEBPACK_IMPORTED_MODULE_21__ = __webpack_require__(/*! ../../../../../platform/list/browser/listService.js */ \"./node_modules/monaco-editor/esm/vs/platform/list/browser/listService.js\");\n/* harmony import */ var _platform_theme_common_themeService_js__WEBPACK_IMPORTED_MODULE_22__ = __webpack_require__(/*! ../../../../../platform/theme/common/themeService.js */ \"./node_modules/monaco-editor/esm/vs/platform/theme/common/themeService.js\");\n/* harmony import */ var _platform_undoRedo_common_undoRedo_js__WEBPACK_IMPORTED_MODULE_23__ = __webpack_require__(/*! ../../../../../platform/undoRedo/common/undoRedo.js */ \"./node_modules/monaco-editor/esm/vs/platform/undoRedo/common/undoRedo.js\");\n/* harmony import */ var _referencesModel_js__WEBPACK_IMPORTED_MODULE_24__ = __webpack_require__(/*! ../referencesModel.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/gotoSymbol/browser/referencesModel.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\nvar __decorate = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\n return c > 3 && r && Object.defineProperty(target, key, r), r;\n};\nvar __param = (undefined && undefined.__param) || function (paramIndex, decorator) {\n return function (target, key) { decorator(target, key, paramIndex); }\n};\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nclass DecorationsManager {\n constructor(_editor, _model) {\n this._editor = _editor;\n this._model = _model;\n this._decorations = new Map();\n this._decorationIgnoreSet = new Set();\n this._callOnDispose = new _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_4__.DisposableStore();\n this._callOnModelChange = new _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_4__.DisposableStore();\n this._callOnDispose.add(this._editor.onDidChangeModel(() => this._onModelChanged()));\n this._onModelChanged();\n }\n dispose() {\n this._callOnModelChange.dispose();\n this._callOnDispose.dispose();\n this.removeDecorations();\n }\n _onModelChanged() {\n this._callOnModelChange.clear();\n const model = this._editor.getModel();\n if (!model) {\n return;\n }\n for (const ref of this._model.references) {\n if (ref.uri.toString() === model.uri.toString()) {\n this._addDecorations(ref.parent);\n return;\n }\n }\n }\n _addDecorations(reference) {\n if (!this._editor.hasModel()) {\n return;\n }\n this._callOnModelChange.add(this._editor.getModel().onDidChangeDecorations(() => this._onDecorationChanged()));\n const newDecorations = [];\n const newDecorationsActualIndex = [];\n for (let i = 0, len = reference.children.length; i < len; i++) {\n const oneReference = reference.children[i];\n if (this._decorationIgnoreSet.has(oneReference.id)) {\n continue;\n }\n if (oneReference.uri.toString() !== this._editor.getModel().uri.toString()) {\n continue;\n }\n newDecorations.push({\n range: oneReference.range,\n options: DecorationsManager.DecorationOptions\n });\n newDecorationsActualIndex.push(i);\n }\n this._editor.changeDecorations((changeAccessor) => {\n const decorations = changeAccessor.deltaDecorations([], newDecorations);\n for (let i = 0; i < decorations.length; i++) {\n this._decorations.set(decorations[i], reference.children[newDecorationsActualIndex[i]]);\n }\n });\n }\n _onDecorationChanged() {\n const toRemove = [];\n const model = this._editor.getModel();\n if (!model) {\n return;\n }\n for (const [decorationId, reference] of this._decorations) {\n const newRange = model.getDecorationRange(decorationId);\n if (!newRange) {\n continue;\n }\n let ignore = false;\n if (_common_core_range_js__WEBPACK_IMPORTED_MODULE_9__.Range.equalsRange(newRange, reference.range)) {\n continue;\n }\n if (_common_core_range_js__WEBPACK_IMPORTED_MODULE_9__.Range.spansMultipleLines(newRange)) {\n ignore = true;\n }\n else {\n const lineLength = reference.range.endColumn - reference.range.startColumn;\n const newLineLength = newRange.endColumn - newRange.startColumn;\n if (lineLength !== newLineLength) {\n ignore = true;\n }\n }\n if (ignore) {\n this._decorationIgnoreSet.add(reference.id);\n toRemove.push(decorationId);\n }\n else {\n reference.range = newRange;\n }\n }\n for (let i = 0, len = toRemove.length; i < len; i++) {\n this._decorations.delete(toRemove[i]);\n }\n this._editor.removeDecorations(toRemove);\n }\n removeDecorations() {\n this._editor.removeDecorations([...this._decorations.keys()]);\n this._decorations.clear();\n }\n}\nDecorationsManager.DecorationOptions = _common_model_textModel_js__WEBPACK_IMPORTED_MODULE_10__.ModelDecorationOptions.register({\n description: 'reference-decoration',\n stickiness: 1 /* TrackedRangeStickiness.NeverGrowsWhenTypingAtEdges */,\n className: 'reference-decoration'\n});\nclass LayoutData {\n constructor() {\n this.ratio = 0.7;\n this.heightInLines = 18;\n }\n static fromJSON(raw) {\n let ratio;\n let heightInLines;\n try {\n const data = JSON.parse(raw);\n ratio = data.ratio;\n heightInLines = data.heightInLines;\n }\n catch (_a) {\n //\n }\n return {\n ratio: ratio || 0.7,\n heightInLines: heightInLines || 18\n };\n }\n}\nclass ReferencesTree extends _platform_list_browser_listService_js__WEBPACK_IMPORTED_MODULE_21__.WorkbenchAsyncDataTree {\n}\n/**\n * ZoneWidget that is shown inside the editor\n */\nlet ReferenceWidget = class ReferenceWidget extends _peekView_browser_peekView_js__WEBPACK_IMPORTED_MODULE_16__.PeekViewWidget {\n constructor(editor, _defaultTreeKeyboardSupport, layoutData, themeService, _textModelResolverService, _instantiationService, _peekViewService, _uriLabel, _undoRedoService, _keybindingService, _languageService, _languageConfigurationService) {\n super(editor, { showFrame: false, showArrow: true, isResizeable: true, isAccessible: true, supportOnTitleClick: true }, _instantiationService);\n this._defaultTreeKeyboardSupport = _defaultTreeKeyboardSupport;\n this.layoutData = layoutData;\n this._textModelResolverService = _textModelResolverService;\n this._instantiationService = _instantiationService;\n this._peekViewService = _peekViewService;\n this._uriLabel = _uriLabel;\n this._undoRedoService = _undoRedoService;\n this._keybindingService = _keybindingService;\n this._languageService = _languageService;\n this._languageConfigurationService = _languageConfigurationService;\n this._disposeOnNewModel = new _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_4__.DisposableStore();\n this._callOnDispose = new _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_4__.DisposableStore();\n this._onDidSelectReference = new _base_common_event_js__WEBPACK_IMPORTED_MODULE_3__.Emitter();\n this.onDidSelectReference = this._onDidSelectReference.event;\n this._dim = new _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.Dimension(0, 0);\n this._applyTheme(themeService.getColorTheme());\n this._callOnDispose.add(themeService.onDidColorThemeChange(this._applyTheme.bind(this)));\n this._peekViewService.addExclusiveWidget(editor, this);\n this.create();\n }\n dispose() {\n this.setModel(undefined);\n this._callOnDispose.dispose();\n this._disposeOnNewModel.dispose();\n (0,_base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_4__.dispose)(this._preview);\n (0,_base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_4__.dispose)(this._previewNotAvailableMessage);\n (0,_base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_4__.dispose)(this._tree);\n (0,_base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_4__.dispose)(this._previewModelReference);\n this._splitView.dispose();\n super.dispose();\n }\n _applyTheme(theme) {\n const borderColor = theme.getColor(_peekView_browser_peekView_js__WEBPACK_IMPORTED_MODULE_16__.peekViewBorder) || _base_common_color_js__WEBPACK_IMPORTED_MODULE_2__.Color.transparent;\n this.style({\n arrowColor: borderColor,\n frameColor: borderColor,\n headerBackgroundColor: theme.getColor(_peekView_browser_peekView_js__WEBPACK_IMPORTED_MODULE_16__.peekViewTitleBackground) || _base_common_color_js__WEBPACK_IMPORTED_MODULE_2__.Color.transparent,\n primaryHeadingColor: theme.getColor(_peekView_browser_peekView_js__WEBPACK_IMPORTED_MODULE_16__.peekViewTitleForeground),\n secondaryHeadingColor: theme.getColor(_peekView_browser_peekView_js__WEBPACK_IMPORTED_MODULE_16__.peekViewTitleInfoForeground)\n });\n }\n show(where) {\n super.show(where, this.layoutData.heightInLines || 18);\n }\n focusOnReferenceTree() {\n this._tree.domFocus();\n }\n focusOnPreviewEditor() {\n this._preview.focus();\n }\n isPreviewEditorFocused() {\n return this._preview.hasTextFocus();\n }\n _onTitleClick(e) {\n if (this._preview && this._preview.getModel()) {\n this._onDidSelectReference.fire({\n element: this._getFocusedReference(),\n kind: e.ctrlKey || e.metaKey || e.altKey ? 'side' : 'open',\n source: 'title'\n });\n }\n }\n _fillBody(containerElement) {\n this.setCssClass('reference-zone-widget');\n // message pane\n this._messageContainer = _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.append(containerElement, _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.$('div.messages'));\n _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.hide(this._messageContainer);\n this._splitView = new _base_browser_ui_splitview_splitview_js__WEBPACK_IMPORTED_MODULE_1__.SplitView(containerElement, { orientation: 1 /* Orientation.HORIZONTAL */ });\n // editor\n this._previewContainer = _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.append(containerElement, _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.$('div.preview.inline'));\n const options = {\n scrollBeyondLastLine: false,\n scrollbar: {\n verticalScrollbarSize: 14,\n horizontal: 'auto',\n useShadows: true,\n verticalHasArrows: false,\n horizontalHasArrows: false,\n alwaysConsumeMouseWheel: true\n },\n overviewRulerLanes: 2,\n fixedOverflowWidgets: true,\n minimap: {\n enabled: false\n }\n };\n this._preview = this._instantiationService.createInstance(_browser_widget_embeddedCodeEditorWidget_js__WEBPACK_IMPORTED_MODULE_8__.EmbeddedCodeEditorWidget, this._previewContainer, options, {}, this.editor);\n _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.hide(this._previewContainer);\n this._previewNotAvailableMessage = new _common_model_textModel_js__WEBPACK_IMPORTED_MODULE_10__.TextModel(_nls_js__WEBPACK_IMPORTED_MODULE_17__.localize('missingPreviewMessage', \"no preview available\"), _common_languages_modesRegistry_js__WEBPACK_IMPORTED_MODULE_12__.PLAINTEXT_LANGUAGE_ID, _common_model_textModel_js__WEBPACK_IMPORTED_MODULE_10__.TextModel.DEFAULT_CREATION_OPTIONS, null, this._undoRedoService, this._languageService, this._languageConfigurationService);\n // tree\n this._treeContainer = _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.append(containerElement, _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.$('div.ref-tree.inline'));\n const treeOptions = {\n keyboardSupport: this._defaultTreeKeyboardSupport,\n accessibilityProvider: new _referencesTree_js__WEBPACK_IMPORTED_MODULE_15__.AccessibilityProvider(),\n keyboardNavigationLabelProvider: this._instantiationService.createInstance(_referencesTree_js__WEBPACK_IMPORTED_MODULE_15__.StringRepresentationProvider),\n identityProvider: new _referencesTree_js__WEBPACK_IMPORTED_MODULE_15__.IdentityProvider(),\n openOnSingleClick: true,\n selectionNavigation: true,\n overrideStyles: {\n listBackground: _peekView_browser_peekView_js__WEBPACK_IMPORTED_MODULE_16__.peekViewResultsBackground\n }\n };\n if (this._defaultTreeKeyboardSupport) {\n // the tree will consume `Escape` and prevent the widget from closing\n this._callOnDispose.add(_base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.addStandardDisposableListener(this._treeContainer, 'keydown', (e) => {\n if (e.equals(9 /* KeyCode.Escape */)) {\n this._keybindingService.dispatchEvent(e, e.target);\n e.stopPropagation();\n }\n }, true));\n }\n this._tree = this._instantiationService.createInstance(ReferencesTree, 'ReferencesWidget', this._treeContainer, new _referencesTree_js__WEBPACK_IMPORTED_MODULE_15__.Delegate(), [\n this._instantiationService.createInstance(_referencesTree_js__WEBPACK_IMPORTED_MODULE_15__.FileReferencesRenderer),\n this._instantiationService.createInstance(_referencesTree_js__WEBPACK_IMPORTED_MODULE_15__.OneReferenceRenderer),\n ], this._instantiationService.createInstance(_referencesTree_js__WEBPACK_IMPORTED_MODULE_15__.DataSource), treeOptions);\n // split stuff\n this._splitView.addView({\n onDidChange: _base_common_event_js__WEBPACK_IMPORTED_MODULE_3__.Event.None,\n element: this._previewContainer,\n minimumSize: 200,\n maximumSize: Number.MAX_VALUE,\n layout: (width) => {\n this._preview.layout({ height: this._dim.height, width });\n }\n }, _base_browser_ui_splitview_splitview_js__WEBPACK_IMPORTED_MODULE_1__.Sizing.Distribute);\n this._splitView.addView({\n onDidChange: _base_common_event_js__WEBPACK_IMPORTED_MODULE_3__.Event.None,\n element: this._treeContainer,\n minimumSize: 100,\n maximumSize: Number.MAX_VALUE,\n layout: (width) => {\n this._treeContainer.style.height = `${this._dim.height}px`;\n this._treeContainer.style.width = `${width}px`;\n this._tree.layout(this._dim.height, width);\n }\n }, _base_browser_ui_splitview_splitview_js__WEBPACK_IMPORTED_MODULE_1__.Sizing.Distribute);\n this._disposables.add(this._splitView.onDidSashChange(() => {\n if (this._dim.width) {\n this.layoutData.ratio = this._splitView.getViewSize(0) / this._dim.width;\n }\n }, undefined));\n // listen on selection and focus\n const onEvent = (element, kind) => {\n if (element instanceof _referencesModel_js__WEBPACK_IMPORTED_MODULE_24__.OneReference) {\n if (kind === 'show') {\n this._revealReference(element, false);\n }\n this._onDidSelectReference.fire({ element, kind, source: 'tree' });\n }\n };\n this._tree.onDidOpen(e => {\n if (e.sideBySide) {\n onEvent(e.element, 'side');\n }\n else if (e.editorOptions.pinned) {\n onEvent(e.element, 'goto');\n }\n else {\n onEvent(e.element, 'show');\n }\n });\n _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.hide(this._treeContainer);\n }\n _onWidth(width) {\n if (this._dim) {\n this._doLayoutBody(this._dim.height, width);\n }\n }\n _doLayoutBody(heightInPixel, widthInPixel) {\n super._doLayoutBody(heightInPixel, widthInPixel);\n this._dim = new _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.Dimension(widthInPixel, heightInPixel);\n this.layoutData.heightInLines = this._viewZone ? this._viewZone.heightInLines : this.layoutData.heightInLines;\n this._splitView.layout(widthInPixel);\n this._splitView.resizeView(0, widthInPixel * this.layoutData.ratio);\n }\n setSelection(selection) {\n return this._revealReference(selection, true).then(() => {\n if (!this._model) {\n // disposed\n return;\n }\n // show in tree\n this._tree.setSelection([selection]);\n this._tree.setFocus([selection]);\n });\n }\n setModel(newModel) {\n // clean up\n this._disposeOnNewModel.clear();\n this._model = newModel;\n if (this._model) {\n return this._onNewModel();\n }\n return Promise.resolve();\n }\n _onNewModel() {\n if (!this._model) {\n return Promise.resolve(undefined);\n }\n if (this._model.isEmpty) {\n this.setTitle('');\n this._messageContainer.innerText = _nls_js__WEBPACK_IMPORTED_MODULE_17__.localize('noResults', \"No results\");\n _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.show(this._messageContainer);\n return Promise.resolve(undefined);\n }\n _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.hide(this._messageContainer);\n this._decorationsManager = new DecorationsManager(this._preview, this._model);\n this._disposeOnNewModel.add(this._decorationsManager);\n // listen on model changes\n this._disposeOnNewModel.add(this._model.onDidChangeReferenceRange(reference => this._tree.rerender(reference)));\n // listen on editor\n this._disposeOnNewModel.add(this._preview.onMouseDown(e => {\n const { event, target } = e;\n if (event.detail !== 2) {\n return;\n }\n const element = this._getFocusedReference();\n if (!element) {\n return;\n }\n this._onDidSelectReference.fire({\n element: { uri: element.uri, range: target.range },\n kind: (event.ctrlKey || event.metaKey || event.altKey) ? 'side' : 'open',\n source: 'editor'\n });\n }));\n // make sure things are rendered\n this.container.classList.add('results-loaded');\n _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.show(this._treeContainer);\n _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.show(this._previewContainer);\n this._splitView.layout(this._dim.width);\n this.focusOnReferenceTree();\n // pick input and a reference to begin with\n return this._tree.setInput(this._model.groups.length === 1 ? this._model.groups[0] : this._model);\n }\n _getFocusedReference() {\n const [element] = this._tree.getFocus();\n if (element instanceof _referencesModel_js__WEBPACK_IMPORTED_MODULE_24__.OneReference) {\n return element;\n }\n else if (element instanceof _referencesModel_js__WEBPACK_IMPORTED_MODULE_24__.FileReferences) {\n if (element.children.length > 0) {\n return element.children[0];\n }\n }\n return undefined;\n }\n async revealReference(reference) {\n await this._revealReference(reference, false);\n this._onDidSelectReference.fire({ element: reference, kind: 'goto', source: 'tree' });\n }\n async _revealReference(reference, revealParent) {\n // check if there is anything to do...\n if (this._revealedReference === reference) {\n return;\n }\n this._revealedReference = reference;\n // Update widget header\n if (reference.uri.scheme !== _base_common_network_js__WEBPACK_IMPORTED_MODULE_5__.Schemas.inMemory) {\n this.setTitle((0,_base_common_resources_js__WEBPACK_IMPORTED_MODULE_6__.basenameOrAuthority)(reference.uri), this._uriLabel.getUriLabel((0,_base_common_resources_js__WEBPACK_IMPORTED_MODULE_6__.dirname)(reference.uri)));\n }\n else {\n this.setTitle(_nls_js__WEBPACK_IMPORTED_MODULE_17__.localize('peekView.alternateTitle', \"References\"));\n }\n const promise = this._textModelResolverService.createModelReference(reference.uri);\n if (this._tree.getInput() === reference.parent) {\n this._tree.reveal(reference);\n }\n else {\n if (revealParent) {\n this._tree.reveal(reference.parent);\n }\n await this._tree.expand(reference.parent);\n this._tree.reveal(reference);\n }\n const ref = await promise;\n if (!this._model) {\n // disposed\n ref.dispose();\n return;\n }\n (0,_base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_4__.dispose)(this._previewModelReference);\n // show in editor\n const model = ref.object;\n if (model) {\n const scrollType = this._preview.getModel() === model.textEditorModel ? 0 /* ScrollType.Smooth */ : 1 /* ScrollType.Immediate */;\n const sel = _common_core_range_js__WEBPACK_IMPORTED_MODULE_9__.Range.lift(reference.range).collapseToStart();\n this._previewModelReference = ref;\n this._preview.setModel(model.textEditorModel);\n this._preview.setSelection(sel);\n this._preview.revealRangeInCenter(sel, scrollType);\n }\n else {\n this._preview.setModel(this._previewNotAvailableMessage);\n ref.dispose();\n }\n }\n};\nReferenceWidget = __decorate([\n __param(3, _platform_theme_common_themeService_js__WEBPACK_IMPORTED_MODULE_22__.IThemeService),\n __param(4, _common_services_resolverService_js__WEBPACK_IMPORTED_MODULE_14__.ITextModelService),\n __param(5, _platform_instantiation_common_instantiation_js__WEBPACK_IMPORTED_MODULE_18__.IInstantiationService),\n __param(6, _peekView_browser_peekView_js__WEBPACK_IMPORTED_MODULE_16__.IPeekViewService),\n __param(7, _platform_label_common_label_js__WEBPACK_IMPORTED_MODULE_20__.ILabelService),\n __param(8, _platform_undoRedo_common_undoRedo_js__WEBPACK_IMPORTED_MODULE_23__.IUndoRedoService),\n __param(9, _platform_keybinding_common_keybinding_js__WEBPACK_IMPORTED_MODULE_19__.IKeybindingService),\n __param(10, _common_languages_language_js__WEBPACK_IMPORTED_MODULE_13__.ILanguageService),\n __param(11, _common_languages_languageConfigurationRegistry_js__WEBPACK_IMPORTED_MODULE_11__.ILanguageConfigurationService)\n], ReferenceWidget);\n\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/contrib/gotoSymbol/browser/peek/referencesWidget.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/contrib/gotoSymbol/browser/referencesModel.js":
/*!************************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/contrib/gotoSymbol/browser/referencesModel.js ***!
\************************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ FilePreview: () => (/* binding */ FilePreview),\n/* harmony export */ FileReferences: () => (/* binding */ FileReferences),\n/* harmony export */ OneReference: () => (/* binding */ OneReference),\n/* harmony export */ ReferencesModel: () => (/* binding */ ReferencesModel)\n/* harmony export */ });\n/* harmony import */ var _base_common_errors_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../../base/common/errors.js */ \"./node_modules/monaco-editor/esm/vs/base/common/errors.js\");\n/* harmony import */ var _base_common_event_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../base/common/event.js */ \"./node_modules/monaco-editor/esm/vs/base/common/event.js\");\n/* harmony import */ var _base_common_idGenerator_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../../base/common/idGenerator.js */ \"./node_modules/monaco-editor/esm/vs/base/common/idGenerator.js\");\n/* harmony import */ var _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../../../base/common/lifecycle.js */ \"./node_modules/monaco-editor/esm/vs/base/common/lifecycle.js\");\n/* harmony import */ var _base_common_map_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../../../base/common/map.js */ \"./node_modules/monaco-editor/esm/vs/base/common/map.js\");\n/* harmony import */ var _base_common_resources_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../../../../base/common/resources.js */ \"./node_modules/monaco-editor/esm/vs/base/common/resources.js\");\n/* harmony import */ var _base_common_strings_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../../../../base/common/strings.js */ \"./node_modules/monaco-editor/esm/vs/base/common/strings.js\");\n/* harmony import */ var _common_core_range_js__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ../../../common/core/range.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/core/range.js\");\n/* harmony import */ var _nls_js__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ../../../../nls.js */ \"./node_modules/monaco-editor/esm/vs/nls.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n\n\n\n\n\n\n\n\nclass OneReference {\n constructor(isProviderFirst, parent, link, _rangeCallback) {\n this.isProviderFirst = isProviderFirst;\n this.parent = parent;\n this.link = link;\n this._rangeCallback = _rangeCallback;\n this.id = _base_common_idGenerator_js__WEBPACK_IMPORTED_MODULE_2__.defaultGenerator.nextId();\n }\n get uri() {\n return this.link.uri;\n }\n get range() {\n var _a, _b;\n return (_b = (_a = this._range) !== null && _a !== void 0 ? _a : this.link.targetSelectionRange) !== null && _b !== void 0 ? _b : this.link.range;\n }\n set range(value) {\n this._range = value;\n this._rangeCallback(this);\n }\n get ariaMessage() {\n var _a;\n const preview = (_a = this.parent.getPreview(this)) === null || _a === void 0 ? void 0 : _a.preview(this.range);\n if (!preview) {\n return (0,_nls_js__WEBPACK_IMPORTED_MODULE_8__.localize)('aria.oneReference', \"in {0} on line {1} at column {2}\", (0,_base_common_resources_js__WEBPACK_IMPORTED_MODULE_5__.basename)(this.uri), this.range.startLineNumber, this.range.startColumn);\n }\n else {\n return (0,_nls_js__WEBPACK_IMPORTED_MODULE_8__.localize)({ key: 'aria.oneReference.preview', comment: ['Placeholders are: 0: filename, 1:line number, 2: column number, 3: preview snippet of source code'] }, \"{0} in {1} on line {2} at column {3}\", preview.value, (0,_base_common_resources_js__WEBPACK_IMPORTED_MODULE_5__.basename)(this.uri), this.range.startLineNumber, this.range.startColumn);\n }\n }\n}\nclass FilePreview {\n constructor(_modelReference) {\n this._modelReference = _modelReference;\n }\n dispose() {\n this._modelReference.dispose();\n }\n preview(range, n = 8) {\n const model = this._modelReference.object.textEditorModel;\n if (!model) {\n return undefined;\n }\n const { startLineNumber, startColumn, endLineNumber, endColumn } = range;\n const word = model.getWordUntilPosition({ lineNumber: startLineNumber, column: startColumn - n });\n const beforeRange = new _common_core_range_js__WEBPACK_IMPORTED_MODULE_7__.Range(startLineNumber, word.startColumn, startLineNumber, startColumn);\n const afterRange = new _common_core_range_js__WEBPACK_IMPORTED_MODULE_7__.Range(endLineNumber, endColumn, endLineNumber, 1073741824 /* Constants.MAX_SAFE_SMALL_INTEGER */);\n const before = model.getValueInRange(beforeRange).replace(/^\\s+/, '');\n const inside = model.getValueInRange(range);\n const after = model.getValueInRange(afterRange).replace(/\\s+$/, '');\n return {\n value: before + inside + after,\n highlight: { start: before.length, end: before.length + inside.length }\n };\n }\n}\nclass FileReferences {\n constructor(parent, uri) {\n this.parent = parent;\n this.uri = uri;\n this.children = [];\n this._previews = new _base_common_map_js__WEBPACK_IMPORTED_MODULE_4__.ResourceMap();\n }\n dispose() {\n (0,_base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_3__.dispose)(this._previews.values());\n this._previews.clear();\n }\n getPreview(child) {\n return this._previews.get(child.uri);\n }\n get ariaMessage() {\n const len = this.children.length;\n if (len === 1) {\n return (0,_nls_js__WEBPACK_IMPORTED_MODULE_8__.localize)('aria.fileReferences.1', \"1 symbol in {0}, full path {1}\", (0,_base_common_resources_js__WEBPACK_IMPORTED_MODULE_5__.basename)(this.uri), this.uri.fsPath);\n }\n else {\n return (0,_nls_js__WEBPACK_IMPORTED_MODULE_8__.localize)('aria.fileReferences.N', \"{0} symbols in {1}, full path {2}\", len, (0,_base_common_resources_js__WEBPACK_IMPORTED_MODULE_5__.basename)(this.uri), this.uri.fsPath);\n }\n }\n async resolve(textModelResolverService) {\n if (this._previews.size !== 0) {\n return this;\n }\n for (const child of this.children) {\n if (this._previews.has(child.uri)) {\n continue;\n }\n try {\n const ref = await textModelResolverService.createModelReference(child.uri);\n this._previews.set(child.uri, new FilePreview(ref));\n }\n catch (err) {\n (0,_base_common_errors_js__WEBPACK_IMPORTED_MODULE_0__.onUnexpectedError)(err);\n }\n }\n return this;\n }\n}\nclass ReferencesModel {\n constructor(links, title) {\n this.groups = [];\n this.references = [];\n this._onDidChangeReferenceRange = new _base_common_event_js__WEBPACK_IMPORTED_MODULE_1__.Emitter();\n this.onDidChangeReferenceRange = this._onDidChangeReferenceRange.event;\n this._links = links;\n this._title = title;\n // grouping and sorting\n const [providersFirst] = links;\n links.sort(ReferencesModel._compareReferences);\n let current;\n for (const link of links) {\n if (!current || !_base_common_resources_js__WEBPACK_IMPORTED_MODULE_5__.extUri.isEqual(current.uri, link.uri, true)) {\n // new group\n current = new FileReferences(this, link.uri);\n this.groups.push(current);\n }\n // append, check for equality first!\n if (current.children.length === 0 || ReferencesModel._compareReferences(link, current.children[current.children.length - 1]) !== 0) {\n const oneRef = new OneReference(providersFirst === link, current, link, ref => this._onDidChangeReferenceRange.fire(ref));\n this.references.push(oneRef);\n current.children.push(oneRef);\n }\n }\n }\n dispose() {\n (0,_base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_3__.dispose)(this.groups);\n this._onDidChangeReferenceRange.dispose();\n this.groups.length = 0;\n }\n clone() {\n return new ReferencesModel(this._links, this._title);\n }\n get title() {\n return this._title;\n }\n get isEmpty() {\n return this.groups.length === 0;\n }\n get ariaMessage() {\n if (this.isEmpty) {\n return (0,_nls_js__WEBPACK_IMPORTED_MODULE_8__.localize)('aria.result.0', \"No results found\");\n }\n else if (this.references.length === 1) {\n return (0,_nls_js__WEBPACK_IMPORTED_MODULE_8__.localize)('aria.result.1', \"Found 1 symbol in {0}\", this.references[0].uri.fsPath);\n }\n else if (this.groups.length === 1) {\n return (0,_nls_js__WEBPACK_IMPORTED_MODULE_8__.localize)('aria.result.n1', \"Found {0} symbols in {1}\", this.references.length, this.groups[0].uri.fsPath);\n }\n else {\n return (0,_nls_js__WEBPACK_IMPORTED_MODULE_8__.localize)('aria.result.nm', \"Found {0} symbols in {1} files\", this.references.length, this.groups.length);\n }\n }\n nextOrPreviousReference(reference, next) {\n const { parent } = reference;\n let idx = parent.children.indexOf(reference);\n const childCount = parent.children.length;\n const groupCount = parent.parent.groups.length;\n if (groupCount === 1 || next && idx + 1 < childCount || !next && idx > 0) {\n // cycling within one file\n if (next) {\n idx = (idx + 1) % childCount;\n }\n else {\n idx = (idx + childCount - 1) % childCount;\n }\n return parent.children[idx];\n }\n idx = parent.parent.groups.indexOf(parent);\n if (next) {\n idx = (idx + 1) % groupCount;\n return parent.parent.groups[idx].children[0];\n }\n else {\n idx = (idx + groupCount - 1) % groupCount;\n return parent.parent.groups[idx].children[parent.parent.groups[idx].children.length - 1];\n }\n }\n nearestReference(resource, position) {\n const nearest = this.references.map((ref, idx) => {\n return {\n idx,\n prefixLen: _base_common_strings_js__WEBPACK_IMPORTED_MODULE_6__.commonPrefixLength(ref.uri.toString(), resource.toString()),\n offsetDist: Math.abs(ref.range.startLineNumber - position.lineNumber) * 100 + Math.abs(ref.range.startColumn - position.column)\n };\n }).sort((a, b) => {\n if (a.prefixLen > b.prefixLen) {\n return -1;\n }\n else if (a.prefixLen < b.prefixLen) {\n return 1;\n }\n else if (a.offsetDist < b.offsetDist) {\n return -1;\n }\n else if (a.offsetDist > b.offsetDist) {\n return 1;\n }\n else {\n return 0;\n }\n })[0];\n if (nearest) {\n return this.references[nearest.idx];\n }\n return undefined;\n }\n referenceAt(resource, position) {\n for (const ref of this.references) {\n if (ref.uri.toString() === resource.toString()) {\n if (_common_core_range_js__WEBPACK_IMPORTED_MODULE_7__.Range.containsPosition(ref.range, position)) {\n return ref;\n }\n }\n }\n return undefined;\n }\n firstReference() {\n for (const ref of this.references) {\n if (ref.isProviderFirst) {\n return ref;\n }\n }\n return this.references[0];\n }\n static _compareReferences(a, b) {\n return _base_common_resources_js__WEBPACK_IMPORTED_MODULE_5__.extUri.compare(a.uri, b.uri) || _common_core_range_js__WEBPACK_IMPORTED_MODULE_7__.Range.compareRangesUsingStarts(a.range, b.range);\n }\n}\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/contrib/gotoSymbol/browser/referencesModel.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/contrib/gotoSymbol/browser/symbolNavigation.js":
/*!*************************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/contrib/gotoSymbol/browser/symbolNavigation.js ***!
\*************************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ ISymbolNavigationService: () => (/* binding */ ISymbolNavigationService),\n/* harmony export */ ctxHasSymbols: () => (/* binding */ ctxHasSymbols)\n/* harmony export */ });\n/* harmony import */ var _base_common_event_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../../base/common/event.js */ \"./node_modules/monaco-editor/esm/vs/base/common/event.js\");\n/* harmony import */ var _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../base/common/lifecycle.js */ \"./node_modules/monaco-editor/esm/vs/base/common/lifecycle.js\");\n/* harmony import */ var _base_common_resources_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../../base/common/resources.js */ \"./node_modules/monaco-editor/esm/vs/base/common/resources.js\");\n/* harmony import */ var _browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../../browser/editorExtensions.js */ \"./node_modules/monaco-editor/esm/vs/editor/browser/editorExtensions.js\");\n/* harmony import */ var _browser_services_codeEditorService_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../../browser/services/codeEditorService.js */ \"./node_modules/monaco-editor/esm/vs/editor/browser/services/codeEditorService.js\");\n/* harmony import */ var _common_core_range_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../../../common/core/range.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/core/range.js\");\n/* harmony import */ var _nls_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../../../../nls.js */ \"./node_modules/monaco-editor/esm/vs/nls.js\");\n/* harmony import */ var _platform_contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ../../../../platform/contextkey/common/contextkey.js */ \"./node_modules/monaco-editor/esm/vs/platform/contextkey/common/contextkey.js\");\n/* harmony import */ var _platform_instantiation_common_extensions_js__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ../../../../platform/instantiation/common/extensions.js */ \"./node_modules/monaco-editor/esm/vs/platform/instantiation/common/extensions.js\");\n/* harmony import */ var _platform_instantiation_common_instantiation_js__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ../../../../platform/instantiation/common/instantiation.js */ \"./node_modules/monaco-editor/esm/vs/platform/instantiation/common/instantiation.js\");\n/* harmony import */ var _platform_keybinding_common_keybinding_js__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! ../../../../platform/keybinding/common/keybinding.js */ \"./node_modules/monaco-editor/esm/vs/platform/keybinding/common/keybinding.js\");\n/* harmony import */ var _platform_keybinding_common_keybindingsRegistry_js__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(/*! ../../../../platform/keybinding/common/keybindingsRegistry.js */ \"./node_modules/monaco-editor/esm/vs/platform/keybinding/common/keybindingsRegistry.js\");\n/* harmony import */ var _platform_notification_common_notification_js__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(/*! ../../../../platform/notification/common/notification.js */ \"./node_modules/monaco-editor/esm/vs/platform/notification/common/notification.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\nvar __decorate = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\n return c > 3 && r && Object.defineProperty(target, key, r), r;\n};\nvar __param = (undefined && undefined.__param) || function (paramIndex, decorator) {\n return function (target, key) { decorator(target, key, paramIndex); }\n};\n\n\n\n\n\n\n\n\n\n\n\n\n\nconst ctxHasSymbols = new _platform_contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_7__.RawContextKey('hasSymbols', false, (0,_nls_js__WEBPACK_IMPORTED_MODULE_6__.localize)('hasSymbols', \"Whether there are symbol locations that can be navigated via keyboard-only.\"));\nconst ISymbolNavigationService = (0,_platform_instantiation_common_instantiation_js__WEBPACK_IMPORTED_MODULE_9__.createDecorator)('ISymbolNavigationService');\nlet SymbolNavigationService = class SymbolNavigationService {\n constructor(contextKeyService, _editorService, _notificationService, _keybindingService) {\n this._editorService = _editorService;\n this._notificationService = _notificationService;\n this._keybindingService = _keybindingService;\n this._currentModel = undefined;\n this._currentIdx = -1;\n this._ignoreEditorChange = false;\n this._ctxHasSymbols = ctxHasSymbols.bindTo(contextKeyService);\n }\n reset() {\n var _a, _b;\n this._ctxHasSymbols.reset();\n (_a = this._currentState) === null || _a === void 0 ? void 0 : _a.dispose();\n (_b = this._currentMessage) === null || _b === void 0 ? void 0 : _b.dispose();\n this._currentModel = undefined;\n this._currentIdx = -1;\n }\n put(anchor) {\n const refModel = anchor.parent.parent;\n if (refModel.references.length <= 1) {\n this.reset();\n return;\n }\n this._currentModel = refModel;\n this._currentIdx = refModel.references.indexOf(anchor);\n this._ctxHasSymbols.set(true);\n this._showMessage();\n const editorState = new EditorState(this._editorService);\n const listener = editorState.onDidChange(_ => {\n if (this._ignoreEditorChange) {\n return;\n }\n const editor = this._editorService.getActiveCodeEditor();\n if (!editor) {\n return;\n }\n const model = editor.getModel();\n const position = editor.getPosition();\n if (!model || !position) {\n return;\n }\n let seenUri = false;\n let seenPosition = false;\n for (const reference of refModel.references) {\n if ((0,_base_common_resources_js__WEBPACK_IMPORTED_MODULE_2__.isEqual)(reference.uri, model.uri)) {\n seenUri = true;\n seenPosition = seenPosition || _common_core_range_js__WEBPACK_IMPORTED_MODULE_5__.Range.containsPosition(reference.range, position);\n }\n else if (seenUri) {\n break;\n }\n }\n if (!seenUri || !seenPosition) {\n this.reset();\n }\n });\n this._currentState = (0,_base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_1__.combinedDisposable)(editorState, listener);\n }\n revealNext(source) {\n if (!this._currentModel) {\n return Promise.resolve();\n }\n // get next result and advance\n this._currentIdx += 1;\n this._currentIdx %= this._currentModel.references.length;\n const reference = this._currentModel.references[this._currentIdx];\n // status\n this._showMessage();\n // open editor, ignore events while that happens\n this._ignoreEditorChange = true;\n return this._editorService.openCodeEditor({\n resource: reference.uri,\n options: {\n selection: _common_core_range_js__WEBPACK_IMPORTED_MODULE_5__.Range.collapseToStart(reference.range),\n selectionRevealType: 3 /* TextEditorSelectionRevealType.NearTopIfOutsideViewport */\n }\n }, source).finally(() => {\n this._ignoreEditorChange = false;\n });\n }\n _showMessage() {\n var _a;\n (_a = this._currentMessage) === null || _a === void 0 ? void 0 : _a.dispose();\n const kb = this._keybindingService.lookupKeybinding('editor.gotoNextSymbolFromResult');\n const message = kb\n ? (0,_nls_js__WEBPACK_IMPORTED_MODULE_6__.localize)('location.kb', \"Symbol {0} of {1}, {2} for next\", this._currentIdx + 1, this._currentModel.references.length, kb.getLabel())\n : (0,_nls_js__WEBPACK_IMPORTED_MODULE_6__.localize)('location', \"Symbol {0} of {1}\", this._currentIdx + 1, this._currentModel.references.length);\n this._currentMessage = this._notificationService.status(message);\n }\n};\nSymbolNavigationService = __decorate([\n __param(0, _platform_contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_7__.IContextKeyService),\n __param(1, _browser_services_codeEditorService_js__WEBPACK_IMPORTED_MODULE_4__.ICodeEditorService),\n __param(2, _platform_notification_common_notification_js__WEBPACK_IMPORTED_MODULE_12__.INotificationService),\n __param(3, _platform_keybinding_common_keybinding_js__WEBPACK_IMPORTED_MODULE_10__.IKeybindingService)\n], SymbolNavigationService);\n(0,_platform_instantiation_common_extensions_js__WEBPACK_IMPORTED_MODULE_8__.registerSingleton)(ISymbolNavigationService, SymbolNavigationService, 1 /* InstantiationType.Delayed */);\n(0,_browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_3__.registerEditorCommand)(new class extends _browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_3__.EditorCommand {\n constructor() {\n super({\n id: 'editor.gotoNextSymbolFromResult',\n precondition: ctxHasSymbols,\n kbOpts: {\n weight: 100 /* KeybindingWeight.EditorContrib */,\n primary: 70 /* KeyCode.F12 */\n }\n });\n }\n runEditorCommand(accessor, editor) {\n return accessor.get(ISymbolNavigationService).revealNext(editor);\n }\n});\n_platform_keybinding_common_keybindingsRegistry_js__WEBPACK_IMPORTED_MODULE_11__.KeybindingsRegistry.registerCommandAndKeybindingRule({\n id: 'editor.gotoNextSymbolFromResult.cancel',\n weight: 100 /* KeybindingWeight.EditorContrib */,\n when: ctxHasSymbols,\n primary: 9 /* KeyCode.Escape */,\n handler(accessor) {\n accessor.get(ISymbolNavigationService).reset();\n }\n});\n//\nlet EditorState = class EditorState {\n constructor(editorService) {\n this._listener = new Map();\n this._disposables = new _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_1__.DisposableStore();\n this._onDidChange = new _base_common_event_js__WEBPACK_IMPORTED_MODULE_0__.Emitter();\n this.onDidChange = this._onDidChange.event;\n this._disposables.add(editorService.onCodeEditorRemove(this._onDidRemoveEditor, this));\n this._disposables.add(editorService.onCodeEditorAdd(this._onDidAddEditor, this));\n editorService.listCodeEditors().forEach(this._onDidAddEditor, this);\n }\n dispose() {\n this._disposables.dispose();\n this._onDidChange.dispose();\n (0,_base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_1__.dispose)(this._listener.values());\n }\n _onDidAddEditor(editor) {\n this._listener.set(editor, (0,_base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_1__.combinedDisposable)(editor.onDidChangeCursorPosition(_ => this._onDidChange.fire({ editor })), editor.onDidChangeModelContent(_ => this._onDidChange.fire({ editor }))));\n }\n _onDidRemoveEditor(editor) {\n var _a;\n (_a = this._listener.get(editor)) === null || _a === void 0 ? void 0 : _a.dispose();\n this._listener.delete(editor);\n }\n};\nEditorState = __decorate([\n __param(0, _browser_services_codeEditorService_js__WEBPACK_IMPORTED_MODULE_4__.ICodeEditorService)\n], EditorState);\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/contrib/gotoSymbol/browser/symbolNavigation.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/contrib/hover/browser/contentHover.js":
/*!****************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/contrib/hover/browser/contentHover.js ***!
\****************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ ContentHoverController: () => (/* binding */ ContentHoverController),\n/* harmony export */ ContentHoverWidget: () => (/* binding */ ContentHoverWidget),\n/* harmony export */ EditorHoverStatusBar: () => (/* binding */ EditorHoverStatusBar)\n/* harmony export */ });\n/* harmony import */ var _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../../base/browser/dom.js */ \"./node_modules/monaco-editor/esm/vs/base/browser/dom.js\");\n/* harmony import */ var _base_browser_ui_hover_hoverWidget_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../base/browser/ui/hover/hoverWidget.js */ \"./node_modules/monaco-editor/esm/vs/base/browser/ui/hover/hoverWidget.js\");\n/* harmony import */ var _base_common_arrays_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../../base/common/arrays.js */ \"./node_modules/monaco-editor/esm/vs/base/common/arrays.js\");\n/* harmony import */ var _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../../../base/common/lifecycle.js */ \"./node_modules/monaco-editor/esm/vs/base/common/lifecycle.js\");\n/* harmony import */ var _common_core_position_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../../common/core/position.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/core/position.js\");\n/* harmony import */ var _common_core_range_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../../../common/core/range.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/core/range.js\");\n/* harmony import */ var _common_model_textModel_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../../../common/model/textModel.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/model/textModel.js\");\n/* harmony import */ var _common_languages_js__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ../../../common/languages.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/languages.js\");\n/* harmony import */ var _hoverOperation_js__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ./hoverOperation.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/hover/browser/hoverOperation.js\");\n/* harmony import */ var _hoverTypes_js__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ./hoverTypes.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/hover/browser/hoverTypes.js\");\n/* harmony import */ var _platform_instantiation_common_instantiation_js__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! ../../../../platform/instantiation/common/instantiation.js */ \"./node_modules/monaco-editor/esm/vs/platform/instantiation/common/instantiation.js\");\n/* harmony import */ var _platform_keybinding_common_keybinding_js__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(/*! ../../../../platform/keybinding/common/keybinding.js */ \"./node_modules/monaco-editor/esm/vs/platform/keybinding/common/keybinding.js\");\n/* harmony import */ var _base_common_async_js__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(/*! ../../../../base/common/async.js */ \"./node_modules/monaco-editor/esm/vs/base/common/async.js\");\n/* harmony import */ var _common_editorContextKeys_js__WEBPACK_IMPORTED_MODULE_13__ = __webpack_require__(/*! ../../../common/editorContextKeys.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/editorContextKeys.js\");\n/* harmony import */ var _platform_contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_14__ = __webpack_require__(/*! ../../../../platform/contextkey/common/contextkey.js */ \"./node_modules/monaco-editor/esm/vs/platform/contextkey/common/contextkey.js\");\n/* harmony import */ var _resizableContentWidget_js__WEBPACK_IMPORTED_MODULE_15__ = __webpack_require__(/*! ./resizableContentWidget.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/hover/browser/resizableContentWidget.js\");\n/* harmony import */ var _platform_configuration_common_configuration_js__WEBPACK_IMPORTED_MODULE_16__ = __webpack_require__(/*! ../../../../platform/configuration/common/configuration.js */ \"./node_modules/monaco-editor/esm/vs/platform/configuration/common/configuration.js\");\n/* harmony import */ var _platform_accessibility_common_accessibility_js__WEBPACK_IMPORTED_MODULE_17__ = __webpack_require__(/*! ../../../../platform/accessibility/common/accessibility.js */ \"./node_modules/monaco-editor/esm/vs/platform/accessibility/common/accessibility.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\nvar __decorate = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\n return c > 3 && r && Object.defineProperty(target, key, r), r;\n};\nvar __param = (undefined && undefined.__param) || function (paramIndex, decorator) {\n return function (target, key) { decorator(target, key, paramIndex); }\n};\nvar ContentHoverController_1, ContentHoverWidget_1;\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nconst $ = _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.$;\nlet ContentHoverController = ContentHoverController_1 = class ContentHoverController extends _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_3__.Disposable {\n constructor(_editor, _instantiationService, _keybindingService) {\n super();\n this._editor = _editor;\n this._instantiationService = _instantiationService;\n this._keybindingService = _keybindingService;\n this._currentResult = null;\n this._widget = this._register(this._instantiationService.createInstance(ContentHoverWidget, this._editor));\n // Instantiate participants and sort them by `hoverOrdinal` which is relevant for rendering order.\n this._participants = [];\n for (const participant of _hoverTypes_js__WEBPACK_IMPORTED_MODULE_9__.HoverParticipantRegistry.getAll()) {\n this._participants.push(this._instantiationService.createInstance(participant, this._editor));\n }\n this._participants.sort((p1, p2) => p1.hoverOrdinal - p2.hoverOrdinal);\n this._computer = new ContentHoverComputer(this._editor, this._participants);\n this._hoverOperation = this._register(new _hoverOperation_js__WEBPACK_IMPORTED_MODULE_8__.HoverOperation(this._editor, this._computer));\n this._register(this._hoverOperation.onResult((result) => {\n if (!this._computer.anchor) {\n // invalid state, ignore result\n return;\n }\n const messages = (result.hasLoadingMessage ? this._addLoadingMessage(result.value) : result.value);\n this._withResult(new HoverResult(this._computer.anchor, messages, result.isComplete));\n }));\n this._register(_base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.addStandardDisposableListener(this._widget.getDomNode(), 'keydown', (e) => {\n if (e.equals(9 /* KeyCode.Escape */)) {\n this.hide();\n }\n }));\n this._register(_common_languages_js__WEBPACK_IMPORTED_MODULE_7__.TokenizationRegistry.onDidChange(() => {\n if (this._widget.position && this._currentResult) {\n this._setCurrentResult(this._currentResult); // render again\n }\n }));\n }\n /**\n * Returns true if the hover shows now or will show.\n */\n _startShowingOrUpdateHover(anchor, mode, source, focus, mouseEvent) {\n if (!this._widget.position || !this._currentResult) {\n // The hover is not visible\n if (anchor) {\n this._startHoverOperationIfNecessary(anchor, mode, source, focus, false);\n return true;\n }\n return false;\n }\n // The hover is currently visible\n const isHoverSticky = this._editor.getOption(60 /* EditorOption.hover */).sticky;\n const isGettingCloser = (isHoverSticky\n && mouseEvent\n && this._widget.isMouseGettingCloser(mouseEvent.event.posx, mouseEvent.event.posy));\n if (isGettingCloser) {\n // The mouse is getting closer to the hover, so we will keep the hover untouched\n // But we will kick off a hover update at the new anchor, insisting on keeping the hover visible.\n if (anchor) {\n this._startHoverOperationIfNecessary(anchor, mode, source, focus, true);\n }\n return true;\n }\n if (!anchor) {\n this._setCurrentResult(null);\n return false;\n }\n if (anchor && this._currentResult.anchor.equals(anchor)) {\n // The widget is currently showing results for the exact same anchor, so no update is needed\n return true;\n }\n if (!anchor.canAdoptVisibleHover(this._currentResult.anchor, this._widget.position)) {\n // The new anchor is not compatible with the previous anchor\n this._setCurrentResult(null);\n this._startHoverOperationIfNecessary(anchor, mode, source, focus, false);\n return true;\n }\n // We aren't getting any closer to the hover, so we will filter existing results\n // and keep those which also apply to the new anchor.\n this._setCurrentResult(this._currentResult.filter(anchor));\n this._startHoverOperationIfNecessary(anchor, mode, source, focus, false);\n return true;\n }\n _startHoverOperationIfNecessary(anchor, mode, source, focus, insistOnKeepingHoverVisible) {\n if (this._computer.anchor && this._computer.anchor.equals(anchor)) {\n // We have to start a hover operation at the exact same anchor as before, so no work is needed\n return;\n }\n this._hoverOperation.cancel();\n this._computer.anchor = anchor;\n this._computer.shouldFocus = focus;\n this._computer.source = source;\n this._computer.insistOnKeepingHoverVisible = insistOnKeepingHoverVisible;\n this._hoverOperation.start(mode);\n }\n _setCurrentResult(hoverResult) {\n if (this._currentResult === hoverResult) {\n // avoid updating the DOM to avoid resetting the user selection\n return;\n }\n if (hoverResult && hoverResult.messages.length === 0) {\n hoverResult = null;\n }\n this._currentResult = hoverResult;\n if (this._currentResult) {\n this._renderMessages(this._currentResult.anchor, this._currentResult.messages);\n }\n else {\n this._widget.hide();\n }\n }\n _addLoadingMessage(result) {\n if (this._computer.anchor) {\n for (const participant of this._participants) {\n if (participant.createLoadingMessage) {\n const loadingMessage = participant.createLoadingMessage(this._computer.anchor);\n if (loadingMessage) {\n return result.slice(0).concat([loadingMessage]);\n }\n }\n }\n }\n return result;\n }\n _withResult(hoverResult) {\n if (this._widget.position && this._currentResult && this._currentResult.isComplete) {\n // The hover is visible with a previous complete result.\n if (!hoverResult.isComplete) {\n // Instead of rendering the new partial result, we wait for the result to be complete.\n return;\n }\n if (this._computer.insistOnKeepingHoverVisible && hoverResult.messages.length === 0) {\n // The hover would now hide normally, so we'll keep the previous messages\n return;\n }\n }\n this._setCurrentResult(hoverResult);\n }\n _renderMessages(anchor, messages) {\n const { showAtPosition, showAtSecondaryPosition, highlightRange } = ContentHoverController_1.computeHoverRanges(this._editor, anchor.range, messages);\n const disposables = new _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_3__.DisposableStore();\n const statusBar = disposables.add(new EditorHoverStatusBar(this._keybindingService));\n const fragment = document.createDocumentFragment();\n let colorPicker = null;\n const context = {\n fragment,\n statusBar,\n setColorPicker: (widget) => colorPicker = widget,\n onContentsChanged: () => this._widget.onContentsChanged(),\n setMinimumDimensions: (dimensions) => this._widget.setMinimumDimensions(dimensions),\n hide: () => this.hide()\n };\n for (const participant of this._participants) {\n const hoverParts = messages.filter(msg => msg.owner === participant);\n if (hoverParts.length > 0) {\n disposables.add(participant.renderHoverParts(context, hoverParts));\n }\n }\n const isBeforeContent = messages.some(m => m.isBeforeContent);\n if (statusBar.hasContent) {\n fragment.appendChild(statusBar.hoverElement);\n }\n if (fragment.hasChildNodes()) {\n if (highlightRange) {\n const highlightDecoration = this._editor.createDecorationsCollection();\n highlightDecoration.set([{\n range: highlightRange,\n options: ContentHoverController_1._DECORATION_OPTIONS\n }]);\n disposables.add((0,_base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_3__.toDisposable)(() => {\n highlightDecoration.clear();\n }));\n }\n this._widget.showAt(fragment, new ContentHoverVisibleData(anchor.initialMousePosX, anchor.initialMousePosY, colorPicker, showAtPosition, showAtSecondaryPosition, this._editor.getOption(60 /* EditorOption.hover */).above, this._computer.shouldFocus, this._computer.source, isBeforeContent, disposables));\n }\n else {\n disposables.dispose();\n }\n }\n static computeHoverRanges(editor, anchorRange, messages) {\n let startColumnBoundary = 1;\n if (editor.hasModel()) {\n // Ensure the range is on the current view line\n const viewModel = editor._getViewModel();\n const coordinatesConverter = viewModel.coordinatesConverter;\n const anchorViewRange = coordinatesConverter.convertModelRangeToViewRange(anchorRange);\n const anchorViewRangeStart = new _common_core_position_js__WEBPACK_IMPORTED_MODULE_4__.Position(anchorViewRange.startLineNumber, viewModel.getLineMinColumn(anchorViewRange.startLineNumber));\n startColumnBoundary = coordinatesConverter.convertViewPositionToModelPosition(anchorViewRangeStart).column;\n }\n // The anchor range is always on a single line\n const anchorLineNumber = anchorRange.startLineNumber;\n let renderStartColumn = anchorRange.startColumn;\n let highlightRange = messages[0].range;\n let forceShowAtRange = null;\n for (const msg of messages) {\n highlightRange = _common_core_range_js__WEBPACK_IMPORTED_MODULE_5__.Range.plusRange(highlightRange, msg.range);\n if (msg.range.startLineNumber === anchorLineNumber && msg.range.endLineNumber === anchorLineNumber) {\n // this message has a range that is completely sitting on the line of the anchor\n renderStartColumn = Math.max(Math.min(renderStartColumn, msg.range.startColumn), startColumnBoundary);\n }\n if (msg.forceShowAtRange) {\n forceShowAtRange = msg.range;\n }\n }\n const showAtPosition = forceShowAtRange ? forceShowAtRange.getStartPosition() : new _common_core_position_js__WEBPACK_IMPORTED_MODULE_4__.Position(anchorLineNumber, anchorRange.startColumn);\n const showAtSecondaryPosition = forceShowAtRange ? forceShowAtRange.getStartPosition() : new _common_core_position_js__WEBPACK_IMPORTED_MODULE_4__.Position(anchorLineNumber, renderStartColumn);\n return {\n showAtPosition,\n showAtSecondaryPosition,\n highlightRange\n };\n }\n /**\n * Returns true if the hover shows now or will show.\n */\n showsOrWillShow(mouseEvent) {\n if (this._widget.isResizing) {\n return true;\n }\n const anchorCandidates = [];\n for (const participant of this._participants) {\n if (participant.suggestHoverAnchor) {\n const anchor = participant.suggestHoverAnchor(mouseEvent);\n if (anchor) {\n anchorCandidates.push(anchor);\n }\n }\n }\n const target = mouseEvent.target;\n if (target.type === 6 /* MouseTargetType.CONTENT_TEXT */) {\n anchorCandidates.push(new _hoverTypes_js__WEBPACK_IMPORTED_MODULE_9__.HoverRangeAnchor(0, target.range, mouseEvent.event.posx, mouseEvent.event.posy));\n }\n if (target.type === 7 /* MouseTargetType.CONTENT_EMPTY */) {\n const epsilon = this._editor.getOption(50 /* EditorOption.fontInfo */).typicalHalfwidthCharacterWidth / 2;\n if (!target.detail.isAfterLines\n && typeof target.detail.horizontalDistanceToText === 'number'\n && target.detail.horizontalDistanceToText < epsilon) {\n // Let hover kick in even when the mouse is technically in the empty area after a line, given the distance is small enough\n anchorCandidates.push(new _hoverTypes_js__WEBPACK_IMPORTED_MODULE_9__.HoverRangeAnchor(0, target.range, mouseEvent.event.posx, mouseEvent.event.posy));\n }\n }\n if (anchorCandidates.length === 0) {\n return this._startShowingOrUpdateHover(null, 0 /* HoverStartMode.Delayed */, 0 /* HoverStartSource.Mouse */, false, mouseEvent);\n }\n anchorCandidates.sort((a, b) => b.priority - a.priority);\n return this._startShowingOrUpdateHover(anchorCandidates[0], 0 /* HoverStartMode.Delayed */, 0 /* HoverStartSource.Mouse */, false, mouseEvent);\n }\n startShowingAtRange(range, mode, source, focus) {\n this._startShowingOrUpdateHover(new _hoverTypes_js__WEBPACK_IMPORTED_MODULE_9__.HoverRangeAnchor(0, range, undefined, undefined), mode, source, focus, null);\n }\n containsNode(node) {\n return (node ? this._widget.getDomNode().contains(node) : false);\n }\n focus() {\n this._widget.focus();\n }\n scrollUp() {\n this._widget.scrollUp();\n }\n scrollDown() {\n this._widget.scrollDown();\n }\n scrollLeft() {\n this._widget.scrollLeft();\n }\n scrollRight() {\n this._widget.scrollRight();\n }\n pageUp() {\n this._widget.pageUp();\n }\n pageDown() {\n this._widget.pageDown();\n }\n goToTop() {\n this._widget.goToTop();\n }\n goToBottom() {\n this._widget.goToBottom();\n }\n hide() {\n this._computer.anchor = null;\n this._hoverOperation.cancel();\n this._setCurrentResult(null);\n }\n get isColorPickerVisible() {\n return this._widget.isColorPickerVisible;\n }\n get isVisibleFromKeyboard() {\n return this._widget.isVisibleFromKeyboard;\n }\n get isVisible() {\n return this._widget.isVisible;\n }\n get isFocused() {\n return this._widget.isFocused;\n }\n get isResizing() {\n return this._widget.isResizing;\n }\n get widget() {\n return this._widget;\n }\n};\nContentHoverController._DECORATION_OPTIONS = _common_model_textModel_js__WEBPACK_IMPORTED_MODULE_6__.ModelDecorationOptions.register({\n description: 'content-hover-highlight',\n className: 'hoverHighlight'\n});\nContentHoverController = ContentHoverController_1 = __decorate([\n __param(1, _platform_instantiation_common_instantiation_js__WEBPACK_IMPORTED_MODULE_10__.IInstantiationService),\n __param(2, _platform_keybinding_common_keybinding_js__WEBPACK_IMPORTED_MODULE_11__.IKeybindingService)\n], ContentHoverController);\n\nclass HoverResult {\n constructor(anchor, messages, isComplete) {\n this.anchor = anchor;\n this.messages = messages;\n this.isComplete = isComplete;\n }\n filter(anchor) {\n const filteredMessages = this.messages.filter((m) => m.isValidForHoverAnchor(anchor));\n if (filteredMessages.length === this.messages.length) {\n return this;\n }\n return new FilteredHoverResult(this, this.anchor, filteredMessages, this.isComplete);\n }\n}\nclass FilteredHoverResult extends HoverResult {\n constructor(original, anchor, messages, isComplete) {\n super(anchor, messages, isComplete);\n this.original = original;\n }\n filter(anchor) {\n return this.original.filter(anchor);\n }\n}\nclass ContentHoverVisibleData {\n constructor(initialMousePosX, initialMousePosY, colorPicker, showAtPosition, showAtSecondaryPosition, preferAbove, stoleFocus, source, isBeforeContent, disposables) {\n this.initialMousePosX = initialMousePosX;\n this.initialMousePosY = initialMousePosY;\n this.colorPicker = colorPicker;\n this.showAtPosition = showAtPosition;\n this.showAtSecondaryPosition = showAtSecondaryPosition;\n this.preferAbove = preferAbove;\n this.stoleFocus = stoleFocus;\n this.source = source;\n this.isBeforeContent = isBeforeContent;\n this.disposables = disposables;\n this.closestMouseDistance = undefined;\n }\n}\nconst HORIZONTAL_SCROLLING_BY = 30;\nconst SCROLLBAR_WIDTH = 10;\nconst CONTAINER_HEIGHT_PADDING = 6;\nlet ContentHoverWidget = ContentHoverWidget_1 = class ContentHoverWidget extends _resizableContentWidget_js__WEBPACK_IMPORTED_MODULE_15__.ResizableContentWidget {\n get isColorPickerVisible() {\n var _a;\n return Boolean((_a = this._visibleData) === null || _a === void 0 ? void 0 : _a.colorPicker);\n }\n get isVisibleFromKeyboard() {\n var _a;\n return (((_a = this._visibleData) === null || _a === void 0 ? void 0 : _a.source) === 1 /* HoverStartSource.Keyboard */);\n }\n get isVisible() {\n var _a;\n return (_a = this._hoverVisibleKey.get()) !== null && _a !== void 0 ? _a : false;\n }\n get isFocused() {\n var _a;\n return (_a = this._hoverFocusedKey.get()) !== null && _a !== void 0 ? _a : false;\n }\n constructor(editor, contextKeyService, _configurationService, _accessibilityService, _keybindingService) {\n const minimumHeight = editor.getOption(67 /* EditorOption.lineHeight */) + 8;\n const minimumWidth = 150;\n const minimumSize = new _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.Dimension(minimumWidth, minimumHeight);\n super(editor, minimumSize);\n this._configurationService = _configurationService;\n this._accessibilityService = _accessibilityService;\n this._keybindingService = _keybindingService;\n this._hover = this._register(new _base_browser_ui_hover_hoverWidget_js__WEBPACK_IMPORTED_MODULE_1__.HoverWidget());\n this._minimumSize = minimumSize;\n this._hoverVisibleKey = _common_editorContextKeys_js__WEBPACK_IMPORTED_MODULE_13__.EditorContextKeys.hoverVisible.bindTo(contextKeyService);\n this._hoverFocusedKey = _common_editorContextKeys_js__WEBPACK_IMPORTED_MODULE_13__.EditorContextKeys.hoverFocused.bindTo(contextKeyService);\n _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.append(this._resizableNode.domNode, this._hover.containerDomNode);\n this._resizableNode.domNode.style.zIndex = '50';\n this._register(this._editor.onDidLayoutChange(() => {\n if (this.isVisible) {\n this._updateMaxDimensions();\n }\n }));\n this._register(this._editor.onDidChangeConfiguration((e) => {\n if (e.hasChanged(50 /* EditorOption.fontInfo */)) {\n this._updateFont();\n }\n }));\n const focusTracker = this._register(_base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.trackFocus(this._resizableNode.domNode));\n this._register(focusTracker.onDidFocus(() => {\n this._hoverFocusedKey.set(true);\n }));\n this._register(focusTracker.onDidBlur(() => {\n this._hoverFocusedKey.set(false);\n }));\n this._setHoverData(undefined);\n this._editor.addContentWidget(this);\n }\n dispose() {\n var _a;\n super.dispose();\n (_a = this._visibleData) === null || _a === void 0 ? void 0 : _a.disposables.dispose();\n this._editor.removeContentWidget(this);\n }\n getId() {\n return ContentHoverWidget_1.ID;\n }\n static _applyDimensions(container, width, height) {\n const transformedWidth = typeof width === 'number' ? `${width}px` : width;\n const transformedHeight = typeof height === 'number' ? `${height}px` : height;\n container.style.width = transformedWidth;\n container.style.height = transformedHeight;\n }\n _setContentsDomNodeDimensions(width, height) {\n const contentsDomNode = this._hover.contentsDomNode;\n return ContentHoverWidget_1._applyDimensions(contentsDomNode, width, height);\n }\n _setContainerDomNodeDimensions(width, height) {\n const containerDomNode = this._hover.containerDomNode;\n return ContentHoverWidget_1._applyDimensions(containerDomNode, width, height);\n }\n _setHoverWidgetDimensions(width, height) {\n this._setContentsDomNodeDimensions(width, height);\n this._setContainerDomNodeDimensions(width, height);\n this._layoutContentWidget();\n }\n static _applyMaxDimensions(container, width, height) {\n const transformedWidth = typeof width === 'number' ? `${width}px` : width;\n const transformedHeight = typeof height === 'number' ? `${height}px` : height;\n container.style.maxWidth = transformedWidth;\n container.style.maxHeight = transformedHeight;\n }\n _setHoverWidgetMaxDimensions(width, height) {\n ContentHoverWidget_1._applyMaxDimensions(this._hover.contentsDomNode, width, height);\n ContentHoverWidget_1._applyMaxDimensions(this._hover.containerDomNode, width, height);\n this._hover.containerDomNode.style.setProperty('--vscode-hover-maxWidth', typeof width === 'number' ? `${width}px` : width);\n this._layoutContentWidget();\n }\n _hasHorizontalScrollbar() {\n const scrollDimensions = this._hover.scrollbar.getScrollDimensions();\n const hasHorizontalScrollbar = scrollDimensions.scrollWidth > scrollDimensions.width;\n return hasHorizontalScrollbar;\n }\n _adjustContentsBottomPadding() {\n const contentsDomNode = this._hover.contentsDomNode;\n const extraBottomPadding = `${this._hover.scrollbar.options.horizontalScrollbarSize}px`;\n if (contentsDomNode.style.paddingBottom !== extraBottomPadding) {\n contentsDomNode.style.paddingBottom = extraBottomPadding;\n }\n }\n _setAdjustedHoverWidgetDimensions(size) {\n this._setHoverWidgetMaxDimensions('none', 'none');\n const width = size.width;\n const height = size.height;\n this._setHoverWidgetDimensions(width, height);\n // measure if widget has horizontal scrollbar after setting the dimensions\n if (this._hasHorizontalScrollbar()) {\n this._adjustContentsBottomPadding();\n this._setContentsDomNodeDimensions(width, height - SCROLLBAR_WIDTH);\n }\n }\n _updateResizableNodeMaxDimensions() {\n var _a, _b;\n const maxRenderingWidth = (_a = this._findMaximumRenderingWidth()) !== null && _a !== void 0 ? _a : Infinity;\n const maxRenderingHeight = (_b = this._findMaximumRenderingHeight()) !== null && _b !== void 0 ? _b : Infinity;\n this._resizableNode.maxSize = new _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.Dimension(maxRenderingWidth, maxRenderingHeight);\n this._setHoverWidgetMaxDimensions(maxRenderingWidth, maxRenderingHeight);\n }\n _resize(size) {\n var _a, _b;\n ContentHoverWidget_1._lastDimensions = new _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.Dimension(size.width, size.height);\n this._setAdjustedHoverWidgetDimensions(size);\n this._resizableNode.layout(size.height, size.width);\n this._updateResizableNodeMaxDimensions();\n this._hover.scrollbar.scanDomNode();\n this._editor.layoutContentWidget(this);\n (_b = (_a = this._visibleData) === null || _a === void 0 ? void 0 : _a.colorPicker) === null || _b === void 0 ? void 0 : _b.layout();\n }\n _findAvailableSpaceVertically() {\n var _a;\n const position = (_a = this._visibleData) === null || _a === void 0 ? void 0 : _a.showAtPosition;\n if (!position) {\n return;\n }\n return this._positionPreference === 1 /* ContentWidgetPositionPreference.ABOVE */ ?\n this._availableVerticalSpaceAbove(position)\n : this._availableVerticalSpaceBelow(position);\n }\n _findMaximumRenderingHeight() {\n const availableSpace = this._findAvailableSpaceVertically();\n if (!availableSpace) {\n return;\n }\n // Padding needed in order to stop the resizing down to a smaller height\n let maximumHeight = CONTAINER_HEIGHT_PADDING;\n Array.from(this._hover.contentsDomNode.children).forEach((hoverPart) => {\n maximumHeight += hoverPart.clientHeight;\n });\n if (this._hasHorizontalScrollbar()) {\n maximumHeight += SCROLLBAR_WIDTH;\n }\n return Math.min(availableSpace, maximumHeight);\n }\n _isHoverTextOverflowing() {\n // To find out if the text is overflowing, we will disable wrapping, check the widths, and then re-enable wrapping\n this._hover.containerDomNode.style.setProperty('--vscode-hover-whiteSpace', 'nowrap');\n this._hover.containerDomNode.style.setProperty('--vscode-hover-sourceWhiteSpace', 'nowrap');\n const overflowing = Array.from(this._hover.contentsDomNode.children).some((hoverElement) => {\n return hoverElement.scrollWidth > hoverElement.clientWidth;\n });\n this._hover.containerDomNode.style.removeProperty('--vscode-hover-whiteSpace');\n this._hover.containerDomNode.style.removeProperty('--vscode-hover-sourceWhiteSpace');\n return overflowing;\n }\n _findMaximumRenderingWidth() {\n if (!this._editor || !this._editor.hasModel()) {\n return;\n }\n const overflowing = this._isHoverTextOverflowing();\n const initialWidth = (typeof this._contentWidth === 'undefined'\n ? 0\n : this._contentWidth - 2 // - 2 for the borders\n );\n if (overflowing || this._hover.containerDomNode.clientWidth < initialWidth) {\n const bodyBoxWidth = _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.getClientArea(this._hover.containerDomNode.ownerDocument.body).width;\n const horizontalPadding = 14;\n return bodyBoxWidth - horizontalPadding;\n }\n else {\n return this._hover.containerDomNode.clientWidth + 2;\n }\n }\n isMouseGettingCloser(posx, posy) {\n if (!this._visibleData) {\n return false;\n }\n if (typeof this._visibleData.initialMousePosX === 'undefined'\n || typeof this._visibleData.initialMousePosY === 'undefined') {\n this._visibleData.initialMousePosX = posx;\n this._visibleData.initialMousePosY = posy;\n return false;\n }\n const widgetRect = _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.getDomNodePagePosition(this.getDomNode());\n if (typeof this._visibleData.closestMouseDistance === 'undefined') {\n this._visibleData.closestMouseDistance = computeDistanceFromPointToRectangle(this._visibleData.initialMousePosX, this._visibleData.initialMousePosY, widgetRect.left, widgetRect.top, widgetRect.width, widgetRect.height);\n }\n const distance = computeDistanceFromPointToRectangle(posx, posy, widgetRect.left, widgetRect.top, widgetRect.width, widgetRect.height);\n if (distance > this._visibleData.closestMouseDistance + 4 /* tolerance of 4 pixels */) {\n // The mouse is getting farther away\n return false;\n }\n this._visibleData.closestMouseDistance = Math.min(this._visibleData.closestMouseDistance, distance);\n return true;\n }\n _setHoverData(hoverData) {\n var _a;\n (_a = this._visibleData) === null || _a === void 0 ? void 0 : _a.disposables.dispose();\n this._visibleData = hoverData;\n this._hoverVisibleKey.set(!!hoverData);\n this._hover.containerDomNode.classList.toggle('hidden', !hoverData);\n }\n _updateFont() {\n const { fontSize, lineHeight } = this._editor.getOption(50 /* EditorOption.fontInfo */);\n const contentsDomNode = this._hover.contentsDomNode;\n contentsDomNode.style.fontSize = `${fontSize}px`;\n contentsDomNode.style.lineHeight = `${lineHeight / fontSize}`;\n const codeClasses = Array.prototype.slice.call(this._hover.contentsDomNode.getElementsByClassName('code'));\n codeClasses.forEach(node => this._editor.applyFontInfo(node));\n }\n _updateContent(node) {\n const contentsDomNode = this._hover.contentsDomNode;\n contentsDomNode.style.paddingBottom = '';\n contentsDomNode.textContent = '';\n contentsDomNode.appendChild(node);\n }\n _layoutContentWidget() {\n this._editor.layoutContentWidget(this);\n this._hover.onContentsChanged();\n }\n _updateMaxDimensions() {\n const height = Math.max(this._editor.getLayoutInfo().height / 4, 250, ContentHoverWidget_1._lastDimensions.height);\n const width = Math.max(this._editor.getLayoutInfo().width * 0.66, 500, ContentHoverWidget_1._lastDimensions.width);\n this._setHoverWidgetMaxDimensions(width, height);\n }\n _render(node, hoverData) {\n this._setHoverData(hoverData);\n this._updateFont();\n this._updateContent(node);\n this._updateMaxDimensions();\n this.onContentsChanged();\n // Simply force a synchronous render on the editor\n // such that the widget does not really render with left = '0px'\n this._editor.render();\n }\n getPosition() {\n var _a;\n if (!this._visibleData) {\n return null;\n }\n return {\n position: this._visibleData.showAtPosition,\n secondaryPosition: this._visibleData.showAtSecondaryPosition,\n positionAffinity: this._visibleData.isBeforeContent ? 3 /* PositionAffinity.LeftOfInjectedText */ : undefined,\n preference: [(_a = this._positionPreference) !== null && _a !== void 0 ? _a : 1 /* ContentWidgetPositionPreference.ABOVE */]\n };\n }\n showAt(node, hoverData) {\n var _a, _b, _c, _d;\n if (!this._editor || !this._editor.hasModel()) {\n return;\n }\n this._render(node, hoverData);\n const widgetHeight = _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.getTotalHeight(this._hover.containerDomNode);\n const widgetPosition = hoverData.showAtPosition;\n this._positionPreference = (_a = this._findPositionPreference(widgetHeight, widgetPosition)) !== null && _a !== void 0 ? _a : 1 /* ContentWidgetPositionPreference.ABOVE */;\n // See https://github.com/microsoft/vscode/issues/140339\n // TODO: Doing a second layout of the hover after force rendering the editor\n this.onContentsChanged();\n if (hoverData.stoleFocus) {\n this._hover.containerDomNode.focus();\n }\n (_b = hoverData.colorPicker) === null || _b === void 0 ? void 0 : _b.layout();\n // The aria label overrides the label, so if we add to it, add the contents of the hover\n const hoverFocused = this._hover.containerDomNode.ownerDocument.activeElement === this._hover.containerDomNode;\n const accessibleViewHint = hoverFocused && (0,_base_browser_ui_hover_hoverWidget_js__WEBPACK_IMPORTED_MODULE_1__.getHoverAccessibleViewHint)(this._configurationService.getValue('accessibility.verbosity.hover') === true && this._accessibilityService.isScreenReaderOptimized(), (_d = (_c = this._keybindingService.lookupKeybinding('editor.action.accessibleView')) === null || _c === void 0 ? void 0 : _c.getAriaLabel()) !== null && _d !== void 0 ? _d : '');\n if (accessibleViewHint) {\n this._hover.contentsDomNode.ariaLabel = this._hover.contentsDomNode.textContent + ', ' + accessibleViewHint;\n }\n }\n hide() {\n if (!this._visibleData) {\n return;\n }\n const stoleFocus = this._visibleData.stoleFocus || this._hoverFocusedKey.get();\n this._setHoverData(undefined);\n this._resizableNode.maxSize = new _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.Dimension(Infinity, Infinity);\n this._resizableNode.clearSashHoverState();\n this._hoverFocusedKey.set(false);\n this._editor.layoutContentWidget(this);\n if (stoleFocus) {\n this._editor.focus();\n }\n }\n _removeConstraintsRenderNormally() {\n // Added because otherwise the initial size of the hover content is smaller than should be\n const layoutInfo = this._editor.getLayoutInfo();\n this._resizableNode.layout(layoutInfo.height, layoutInfo.width);\n this._setHoverWidgetDimensions('auto', 'auto');\n }\n _adjustHoverHeightForScrollbar(height) {\n var _a;\n const containerDomNode = this._hover.containerDomNode;\n const contentsDomNode = this._hover.contentsDomNode;\n const maxRenderingHeight = (_a = this._findMaximumRenderingHeight()) !== null && _a !== void 0 ? _a : Infinity;\n this._setContainerDomNodeDimensions(_base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.getTotalWidth(containerDomNode), Math.min(maxRenderingHeight, height));\n this._setContentsDomNodeDimensions(_base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.getTotalWidth(contentsDomNode), Math.min(maxRenderingHeight, height - SCROLLBAR_WIDTH));\n }\n setMinimumDimensions(dimensions) {\n // We combine the new minimum dimensions with the previous ones\n this._minimumSize = new _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.Dimension(Math.max(this._minimumSize.width, dimensions.width), Math.max(this._minimumSize.height, dimensions.height));\n this._updateMinimumWidth();\n }\n _updateMinimumWidth() {\n const width = (typeof this._contentWidth === 'undefined'\n ? this._minimumSize.width\n : Math.min(this._contentWidth, this._minimumSize.width));\n // We want to avoid that the hover is artificially large, so we use the content width as minimum width\n this._resizableNode.minSize = new _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.Dimension(width, this._minimumSize.height);\n }\n onContentsChanged() {\n var _a;\n this._removeConstraintsRenderNormally();\n const containerDomNode = this._hover.containerDomNode;\n let height = _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.getTotalHeight(containerDomNode);\n let width = _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.getTotalWidth(containerDomNode);\n this._resizableNode.layout(height, width);\n this._setHoverWidgetDimensions(width, height);\n height = _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.getTotalHeight(containerDomNode);\n width = _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.getTotalWidth(containerDomNode);\n this._contentWidth = width;\n this._updateMinimumWidth();\n this._resizableNode.layout(height, width);\n if (this._hasHorizontalScrollbar()) {\n this._adjustContentsBottomPadding();\n this._adjustHoverHeightForScrollbar(height);\n }\n if ((_a = this._visibleData) === null || _a === void 0 ? void 0 : _a.showAtPosition) {\n const widgetHeight = _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.getTotalHeight(this._hover.containerDomNode);\n this._positionPreference = this._findPositionPreference(widgetHeight, this._visibleData.showAtPosition);\n }\n this._layoutContentWidget();\n }\n focus() {\n this._hover.containerDomNode.focus();\n }\n scrollUp() {\n const scrollTop = this._hover.scrollbar.getScrollPosition().scrollTop;\n const fontInfo = this._editor.getOption(50 /* EditorOption.fontInfo */);\n this._hover.scrollbar.setScrollPosition({ scrollTop: scrollTop - fontInfo.lineHeight });\n }\n scrollDown() {\n const scrollTop = this._hover.scrollbar.getScrollPosition().scrollTop;\n const fontInfo = this._editor.getOption(50 /* EditorOption.fontInfo */);\n this._hover.scrollbar.setScrollPosition({ scrollTop: scrollTop + fontInfo.lineHeight });\n }\n scrollLeft() {\n const scrollLeft = this._hover.scrollbar.getScrollPosition().scrollLeft;\n this._hover.scrollbar.setScrollPosition({ scrollLeft: scrollLeft - HORIZONTAL_SCROLLING_BY });\n }\n scrollRight() {\n const scrollLeft = this._hover.scrollbar.getScrollPosition().scrollLeft;\n this._hover.scrollbar.setScrollPosition({ scrollLeft: scrollLeft + HORIZONTAL_SCROLLING_BY });\n }\n pageUp() {\n const scrollTop = this._hover.scrollbar.getScrollPosition().scrollTop;\n const scrollHeight = this._hover.scrollbar.getScrollDimensions().height;\n this._hover.scrollbar.setScrollPosition({ scrollTop: scrollTop - scrollHeight });\n }\n pageDown() {\n const scrollTop = this._hover.scrollbar.getScrollPosition().scrollTop;\n const scrollHeight = this._hover.scrollbar.getScrollDimensions().height;\n this._hover.scrollbar.setScrollPosition({ scrollTop: scrollTop + scrollHeight });\n }\n goToTop() {\n this._hover.scrollbar.setScrollPosition({ scrollTop: 0 });\n }\n goToBottom() {\n this._hover.scrollbar.setScrollPosition({ scrollTop: this._hover.scrollbar.getScrollDimensions().scrollHeight });\n }\n};\nContentHoverWidget.ID = 'editor.contrib.resizableContentHoverWidget';\nContentHoverWidget._lastDimensions = new _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.Dimension(0, 0);\nContentHoverWidget = ContentHoverWidget_1 = __decorate([\n __param(1, _platform_contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_14__.IContextKeyService),\n __param(2, _platform_configuration_common_configuration_js__WEBPACK_IMPORTED_MODULE_16__.IConfigurationService),\n __param(3, _platform_accessibility_common_accessibility_js__WEBPACK_IMPORTED_MODULE_17__.IAccessibilityService),\n __param(4, _platform_keybinding_common_keybinding_js__WEBPACK_IMPORTED_MODULE_11__.IKeybindingService)\n], ContentHoverWidget);\n\nlet EditorHoverStatusBar = class EditorHoverStatusBar extends _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_3__.Disposable {\n get hasContent() {\n return this._hasContent;\n }\n constructor(_keybindingService) {\n super();\n this._keybindingService = _keybindingService;\n this._hasContent = false;\n this.hoverElement = $('div.hover-row.status-bar');\n this.actionsElement = _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.append(this.hoverElement, $('div.actions'));\n }\n addAction(actionOptions) {\n const keybinding = this._keybindingService.lookupKeybinding(actionOptions.commandId);\n const keybindingLabel = keybinding ? keybinding.getLabel() : null;\n this._hasContent = true;\n return this._register(_base_browser_ui_hover_hoverWidget_js__WEBPACK_IMPORTED_MODULE_1__.HoverAction.render(this.actionsElement, actionOptions, keybindingLabel));\n }\n append(element) {\n const result = _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.append(this.actionsElement, element);\n this._hasContent = true;\n return result;\n }\n};\nEditorHoverStatusBar = __decorate([\n __param(0, _platform_keybinding_common_keybinding_js__WEBPACK_IMPORTED_MODULE_11__.IKeybindingService)\n], EditorHoverStatusBar);\n\nclass ContentHoverComputer {\n get anchor() { return this._anchor; }\n set anchor(value) { this._anchor = value; }\n get shouldFocus() { return this._shouldFocus; }\n set shouldFocus(value) { this._shouldFocus = value; }\n get source() { return this._source; }\n set source(value) { this._source = value; }\n get insistOnKeepingHoverVisible() { return this._insistOnKeepingHoverVisible; }\n set insistOnKeepingHoverVisible(value) { this._insistOnKeepingHoverVisible = value; }\n constructor(_editor, _participants) {\n this._editor = _editor;\n this._participants = _participants;\n this._anchor = null;\n this._shouldFocus = false;\n this._source = 0 /* HoverStartSource.Mouse */;\n this._insistOnKeepingHoverVisible = false;\n }\n static _getLineDecorations(editor, anchor) {\n if (anchor.type !== 1 /* HoverAnchorType.Range */ && !anchor.supportsMarkerHover) {\n return [];\n }\n const model = editor.getModel();\n const lineNumber = anchor.range.startLineNumber;\n if (lineNumber > model.getLineCount()) {\n // invalid line\n return [];\n }\n const maxColumn = model.getLineMaxColumn(lineNumber);\n return editor.getLineDecorations(lineNumber).filter((d) => {\n if (d.options.isWholeLine) {\n return true;\n }\n const startColumn = (d.range.startLineNumber === lineNumber) ? d.range.startColumn : 1;\n const endColumn = (d.range.endLineNumber === lineNumber) ? d.range.endColumn : maxColumn;\n if (d.options.showIfCollapsed) {\n // Relax check around `showIfCollapsed` decorations to also include +/- 1 character\n if (startColumn > anchor.range.startColumn + 1 || anchor.range.endColumn - 1 > endColumn) {\n return false;\n }\n }\n else {\n if (startColumn > anchor.range.startColumn || anchor.range.endColumn > endColumn) {\n return false;\n }\n }\n return true;\n });\n }\n computeAsync(token) {\n const anchor = this._anchor;\n if (!this._editor.hasModel() || !anchor) {\n return _base_common_async_js__WEBPACK_IMPORTED_MODULE_12__.AsyncIterableObject.EMPTY;\n }\n const lineDecorations = ContentHoverComputer._getLineDecorations(this._editor, anchor);\n return _base_common_async_js__WEBPACK_IMPORTED_MODULE_12__.AsyncIterableObject.merge(this._participants.map((participant) => {\n if (!participant.computeAsync) {\n return _base_common_async_js__WEBPACK_IMPORTED_MODULE_12__.AsyncIterableObject.EMPTY;\n }\n return participant.computeAsync(anchor, lineDecorations, token);\n }));\n }\n computeSync() {\n if (!this._editor.hasModel() || !this._anchor) {\n return [];\n }\n const lineDecorations = ContentHoverComputer._getLineDecorations(this._editor, this._anchor);\n let result = [];\n for (const participant of this._participants) {\n result = result.concat(participant.computeSync(this._anchor, lineDecorations));\n }\n return (0,_base_common_arrays_js__WEBPACK_IMPORTED_MODULE_2__.coalesce)(result);\n }\n}\nfunction computeDistanceFromPointToRectangle(pointX, pointY, left, top, width, height) {\n const x = (left + width / 2); // x center of rectangle\n const y = (top + height / 2); // y center of rectangle\n const dx = Math.max(Math.abs(pointX - x) - width / 2, 0);\n const dy = Math.max(Math.abs(pointY - y) - height / 2, 0);\n return Math.sqrt(dx * dx + dy * dy);\n}\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/contrib/hover/browser/contentHover.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/contrib/hover/browser/getHover.js":
/*!************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/contrib/hover/browser/getHover.js ***!
\************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ HoverProviderResult: () => (/* binding */ HoverProviderResult),\n/* harmony export */ getHover: () => (/* binding */ getHover),\n/* harmony export */ getHoverPromise: () => (/* binding */ getHoverPromise)\n/* harmony export */ });\n/* harmony import */ var _base_common_async_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../../base/common/async.js */ \"./node_modules/monaco-editor/esm/vs/base/common/async.js\");\n/* harmony import */ var _base_common_cancellation_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../base/common/cancellation.js */ \"./node_modules/monaco-editor/esm/vs/base/common/cancellation.js\");\n/* harmony import */ var _base_common_errors_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../../base/common/errors.js */ \"./node_modules/monaco-editor/esm/vs/base/common/errors.js\");\n/* harmony import */ var _browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../../browser/editorExtensions.js */ \"./node_modules/monaco-editor/esm/vs/editor/browser/editorExtensions.js\");\n/* harmony import */ var _common_services_languageFeatures_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../../common/services/languageFeatures.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/services/languageFeatures.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n\n\n\n\nclass HoverProviderResult {\n constructor(provider, hover, ordinal) {\n this.provider = provider;\n this.hover = hover;\n this.ordinal = ordinal;\n }\n}\nasync function executeProvider(provider, ordinal, model, position, token) {\n try {\n const result = await Promise.resolve(provider.provideHover(model, position, token));\n if (result && isValid(result)) {\n return new HoverProviderResult(provider, result, ordinal);\n }\n }\n catch (err) {\n (0,_base_common_errors_js__WEBPACK_IMPORTED_MODULE_2__.onUnexpectedExternalError)(err);\n }\n return undefined;\n}\nfunction getHover(registry, model, position, token) {\n const providers = registry.ordered(model);\n const promises = providers.map((provider, index) => executeProvider(provider, index, model, position, token));\n return _base_common_async_js__WEBPACK_IMPORTED_MODULE_0__.AsyncIterableObject.fromPromises(promises).coalesce();\n}\nfunction getHoverPromise(registry, model, position, token) {\n return getHover(registry, model, position, token).map(item => item.hover).toPromise();\n}\n(0,_browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_3__.registerModelAndPositionCommand)('_executeHoverProvider', (accessor, model, position) => {\n const languageFeaturesService = accessor.get(_common_services_languageFeatures_js__WEBPACK_IMPORTED_MODULE_4__.ILanguageFeaturesService);\n return getHoverPromise(languageFeaturesService.hoverProvider, model, position, _base_common_cancellation_js__WEBPACK_IMPORTED_MODULE_1__.CancellationToken.None);\n});\nfunction isValid(result) {\n const hasRange = (typeof result.range !== 'undefined');\n const hasHtmlContent = typeof result.contents !== 'undefined' && result.contents && result.contents.length > 0;\n return hasRange && hasHtmlContent;\n}\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/contrib/hover/browser/getHover.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/contrib/hover/browser/hover.js":
/*!*********************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/contrib/hover/browser/hover.js ***!
\*********************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ HoverController: () => (/* binding */ HoverController)\n/* harmony export */ });\n/* harmony import */ var _base_common_keyCodes_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../../base/common/keyCodes.js */ \"./node_modules/monaco-editor/esm/vs/base/common/keyCodes.js\");\n/* harmony import */ var _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../base/common/lifecycle.js */ \"./node_modules/monaco-editor/esm/vs/base/common/lifecycle.js\");\n/* harmony import */ var _browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../browser/editorExtensions.js */ \"./node_modules/monaco-editor/esm/vs/editor/browser/editorExtensions.js\");\n/* harmony import */ var _common_core_range_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../../common/core/range.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/core/range.js\");\n/* harmony import */ var _common_editorContextKeys_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../../common/editorContextKeys.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/editorContextKeys.js\");\n/* harmony import */ var _common_languages_language_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../../../common/languages/language.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/languages/language.js\");\n/* harmony import */ var _gotoSymbol_browser_link_goToDefinitionAtPosition_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../../gotoSymbol/browser/link/goToDefinitionAtPosition.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/gotoSymbol/browser/link/goToDefinitionAtPosition.js\");\n/* harmony import */ var _contentHover_js__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ./contentHover.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/hover/browser/contentHover.js\");\n/* harmony import */ var _marginHover_js__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ./marginHover.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/hover/browser/marginHover.js\");\n/* harmony import */ var _platform_instantiation_common_instantiation_js__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ../../../../platform/instantiation/common/instantiation.js */ \"./node_modules/monaco-editor/esm/vs/platform/instantiation/common/instantiation.js\");\n/* harmony import */ var _platform_opener_common_opener_js__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! ../../../../platform/opener/common/opener.js */ \"./node_modules/monaco-editor/esm/vs/platform/opener/common/opener.js\");\n/* harmony import */ var _platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(/*! ../../../../platform/theme/common/colorRegistry.js */ \"./node_modules/monaco-editor/esm/vs/platform/theme/common/colorRegistry.js\");\n/* harmony import */ var _platform_theme_common_themeService_js__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(/*! ../../../../platform/theme/common/themeService.js */ \"./node_modules/monaco-editor/esm/vs/platform/theme/common/themeService.js\");\n/* harmony import */ var _hoverTypes_js__WEBPACK_IMPORTED_MODULE_13__ = __webpack_require__(/*! ./hoverTypes.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/hover/browser/hoverTypes.js\");\n/* harmony import */ var _markdownHoverParticipant_js__WEBPACK_IMPORTED_MODULE_14__ = __webpack_require__(/*! ./markdownHoverParticipant.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/hover/browser/markdownHoverParticipant.js\");\n/* harmony import */ var _markerHoverParticipant_js__WEBPACK_IMPORTED_MODULE_15__ = __webpack_require__(/*! ./markerHoverParticipant.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/hover/browser/markerHoverParticipant.js\");\n/* harmony import */ var _inlineCompletions_browser_inlineCompletionsHintsWidget_js__WEBPACK_IMPORTED_MODULE_16__ = __webpack_require__(/*! ../../inlineCompletions/browser/inlineCompletionsHintsWidget.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/inlineCompletions/browser/inlineCompletionsHintsWidget.js\");\n/* harmony import */ var _platform_keybinding_common_keybinding_js__WEBPACK_IMPORTED_MODULE_17__ = __webpack_require__(/*! ../../../../platform/keybinding/common/keybinding.js */ \"./node_modules/monaco-editor/esm/vs/platform/keybinding/common/keybinding.js\");\n/* harmony import */ var _base_common_async_js__WEBPACK_IMPORTED_MODULE_18__ = __webpack_require__(/*! ../../../../base/common/async.js */ \"./node_modules/monaco-editor/esm/vs/base/common/async.js\");\n/* harmony import */ var _nls_js__WEBPACK_IMPORTED_MODULE_19__ = __webpack_require__(/*! ../../../../nls.js */ \"./node_modules/monaco-editor/esm/vs/nls.js\");\n/* harmony import */ var _hover_css__WEBPACK_IMPORTED_MODULE_20__ = __webpack_require__(/*! ./hover.css */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/hover/browser/hover.css\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\nvar __decorate = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\n return c > 3 && r && Object.defineProperty(target, key, r), r;\n};\nvar __param = (undefined && undefined.__param) || function (paramIndex, decorator) {\n return function (target, key) { decorator(target, key, paramIndex); }\n};\nvar HoverController_1;\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n// sticky hover widget which doesn't disappear on focus out and such\nconst _sticky = false;\nlet HoverController = HoverController_1 = class HoverController extends _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_1__.Disposable {\n constructor(_editor, _instantiationService, _openerService, _languageService, _keybindingService) {\n super();\n this._editor = _editor;\n this._instantiationService = _instantiationService;\n this._openerService = _openerService;\n this._languageService = _languageService;\n this._keybindingService = _keybindingService;\n this._listenersStore = new _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_1__.DisposableStore();\n this._hoverState = {\n mouseDown: false,\n contentHoverFocused: false,\n activatedByDecoratorClick: false\n };\n this._reactToEditorMouseMoveRunner = this._register(new _base_common_async_js__WEBPACK_IMPORTED_MODULE_18__.RunOnceScheduler(() => this._reactToEditorMouseMove(this._mouseMoveEvent), 0));\n this._hookListeners();\n this._register(this._editor.onDidChangeConfiguration((e) => {\n if (e.hasChanged(60 /* EditorOption.hover */)) {\n this._unhookListeners();\n this._hookListeners();\n }\n }));\n }\n static get(editor) {\n return editor.getContribution(HoverController_1.ID);\n }\n _hookListeners() {\n const hoverOpts = this._editor.getOption(60 /* EditorOption.hover */);\n this._hoverSettings = {\n enabled: hoverOpts.enabled,\n sticky: hoverOpts.sticky,\n hidingDelay: hoverOpts.delay\n };\n if (hoverOpts.enabled) {\n this._listenersStore.add(this._editor.onMouseDown((e) => this._onEditorMouseDown(e)));\n this._listenersStore.add(this._editor.onMouseUp(() => this._onEditorMouseUp()));\n this._listenersStore.add(this._editor.onMouseMove((e) => this._onEditorMouseMove(e)));\n this._listenersStore.add(this._editor.onKeyDown((e) => this._onKeyDown(e)));\n }\n else {\n this._listenersStore.add(this._editor.onMouseMove((e) => this._onEditorMouseMove(e)));\n this._listenersStore.add(this._editor.onKeyDown((e) => this._onKeyDown(e)));\n }\n this._listenersStore.add(this._editor.onMouseLeave((e) => this._onEditorMouseLeave(e)));\n this._listenersStore.add(this._editor.onDidChangeModel(() => {\n this._cancelScheduler();\n this._hideWidgets();\n }));\n this._listenersStore.add(this._editor.onDidChangeModelContent(() => this._cancelScheduler()));\n this._listenersStore.add(this._editor.onDidScrollChange((e) => this._onEditorScrollChanged(e)));\n }\n _unhookListeners() {\n this._listenersStore.clear();\n }\n _cancelScheduler() {\n this._mouseMoveEvent = undefined;\n this._reactToEditorMouseMoveRunner.cancel();\n }\n _onEditorScrollChanged(e) {\n if (e.scrollTopChanged || e.scrollLeftChanged) {\n this._hideWidgets();\n }\n }\n _onEditorMouseDown(mouseEvent) {\n var _a;\n this._hoverState.mouseDown = true;\n const target = mouseEvent.target;\n if (target.type === 9 /* MouseTargetType.CONTENT_WIDGET */ && target.detail === _contentHover_js__WEBPACK_IMPORTED_MODULE_7__.ContentHoverWidget.ID) {\n // mouse down on top of content hover widget\n this._hoverState.contentHoverFocused = true;\n return;\n }\n if (target.type === 12 /* MouseTargetType.OVERLAY_WIDGET */ && target.detail === _marginHover_js__WEBPACK_IMPORTED_MODULE_8__.MarginHoverWidget.ID) {\n // mouse down on top of margin hover widget\n return;\n }\n if (target.type !== 12 /* MouseTargetType.OVERLAY_WIDGET */) {\n this._hoverState.contentHoverFocused = false;\n }\n if ((_a = this._contentWidget) === null || _a === void 0 ? void 0 : _a.widget.isResizing) {\n return;\n }\n this._hideWidgets();\n }\n _onEditorMouseUp() {\n this._hoverState.mouseDown = false;\n }\n _onEditorMouseLeave(mouseEvent) {\n var _a, _b;\n this._cancelScheduler();\n const targetElement = (mouseEvent.event.browserEvent.relatedTarget);\n if (((_a = this._contentWidget) === null || _a === void 0 ? void 0 : _a.widget.isResizing) || ((_b = this._contentWidget) === null || _b === void 0 ? void 0 : _b.containsNode(targetElement))) {\n // When the content widget is resizing\n // When the mouse is inside hover widget\n return;\n }\n if (_sticky) {\n return;\n }\n this._hideWidgets();\n }\n _isMouseOverWidget(mouseEvent) {\n var _a, _b, _c, _d, _e;\n const target = mouseEvent.target;\n const sticky = this._hoverSettings.sticky;\n if (sticky\n && target.type === 9 /* MouseTargetType.CONTENT_WIDGET */\n && target.detail === _contentHover_js__WEBPACK_IMPORTED_MODULE_7__.ContentHoverWidget.ID) {\n // mouse moved on top of content hover widget\n return true;\n }\n if (sticky\n && ((_a = this._contentWidget) === null || _a === void 0 ? void 0 : _a.containsNode((_b = mouseEvent.event.browserEvent.view) === null || _b === void 0 ? void 0 : _b.document.activeElement))\n && !((_d = (_c = mouseEvent.event.browserEvent.view) === null || _c === void 0 ? void 0 : _c.getSelection()) === null || _d === void 0 ? void 0 : _d.isCollapsed)) {\n // selected text within content hover widget\n return true;\n }\n if (!sticky\n && target.type === 9 /* MouseTargetType.CONTENT_WIDGET */\n && target.detail === _contentHover_js__WEBPACK_IMPORTED_MODULE_7__.ContentHoverWidget.ID\n && ((_e = this._contentWidget) === null || _e === void 0 ? void 0 : _e.isColorPickerVisible)) {\n // though the hover is not sticky, the color picker is sticky\n return true;\n }\n if (sticky\n && target.type === 12 /* MouseTargetType.OVERLAY_WIDGET */\n && target.detail === _marginHover_js__WEBPACK_IMPORTED_MODULE_8__.MarginHoverWidget.ID) {\n // mouse moved on top of overlay hover widget\n return true;\n }\n return false;\n }\n _onEditorMouseMove(mouseEvent) {\n var _a, _b, _c, _d;\n this._mouseMoveEvent = mouseEvent;\n if (((_a = this._contentWidget) === null || _a === void 0 ? void 0 : _a.isFocused) || ((_b = this._contentWidget) === null || _b === void 0 ? void 0 : _b.isResizing)) {\n return;\n }\n if (this._hoverState.mouseDown && this._hoverState.contentHoverFocused) {\n return;\n }\n const sticky = this._hoverSettings.sticky;\n if (sticky && ((_c = this._contentWidget) === null || _c === void 0 ? void 0 : _c.isVisibleFromKeyboard)) {\n // Sticky mode is on and the hover has been shown via keyboard\n // so moving the mouse has no effect\n return;\n }\n const mouseIsOverWidget = this._isMouseOverWidget(mouseEvent);\n // If the mouse is over the widget and the hiding timeout is defined, then cancel it\n if (mouseIsOverWidget) {\n this._reactToEditorMouseMoveRunner.cancel();\n return;\n }\n // If the mouse is not over the widget, and if sticky is on,\n // then give it a grace period before reacting to the mouse event\n const hidingDelay = this._hoverSettings.hidingDelay;\n if (((_d = this._contentWidget) === null || _d === void 0 ? void 0 : _d.isVisible) && sticky && hidingDelay > 0) {\n if (!this._reactToEditorMouseMoveRunner.isScheduled()) {\n this._reactToEditorMouseMoveRunner.schedule(hidingDelay);\n }\n return;\n }\n this._reactToEditorMouseMove(mouseEvent);\n }\n _reactToEditorMouseMove(mouseEvent) {\n var _a, _b, _c, _d;\n if (!mouseEvent) {\n return;\n }\n const target = mouseEvent.target;\n const mouseOnDecorator = (_a = target.element) === null || _a === void 0 ? void 0 : _a.classList.contains('colorpicker-color-decoration');\n const decoratorActivatedOn = this._editor.getOption(147 /* EditorOption.colorDecoratorsActivatedOn */);\n const enabled = this._hoverSettings.enabled;\n const activatedByDecoratorClick = this._hoverState.activatedByDecoratorClick;\n if ((mouseOnDecorator && ((decoratorActivatedOn === 'click' && !activatedByDecoratorClick) ||\n (decoratorActivatedOn === 'hover' && !enabled && !_sticky) ||\n (decoratorActivatedOn === 'clickAndHover' && !enabled && !activatedByDecoratorClick))) || (!mouseOnDecorator && !enabled && !activatedByDecoratorClick)) {\n this._hideWidgets();\n return;\n }\n const contentWidget = this._getOrCreateContentWidget();\n if (contentWidget.showsOrWillShow(mouseEvent)) {\n (_b = this._glyphWidget) === null || _b === void 0 ? void 0 : _b.hide();\n return;\n }\n if (target.type === 2 /* MouseTargetType.GUTTER_GLYPH_MARGIN */ && target.position && target.detail.glyphMarginLane) {\n (_c = this._contentWidget) === null || _c === void 0 ? void 0 : _c.hide();\n const glyphWidget = this._getOrCreateGlyphWidget();\n glyphWidget.startShowingAt(target.position.lineNumber, target.detail.glyphMarginLane);\n return;\n }\n if (target.type === 3 /* MouseTargetType.GUTTER_LINE_NUMBERS */ && target.position) {\n (_d = this._contentWidget) === null || _d === void 0 ? void 0 : _d.hide();\n const glyphWidget = this._getOrCreateGlyphWidget();\n glyphWidget.startShowingAt(target.position.lineNumber, 'lineNo');\n return;\n }\n if (_sticky) {\n return;\n }\n this._hideWidgets();\n }\n _onKeyDown(e) {\n var _a;\n if (!this._editor.hasModel()) {\n return;\n }\n const resolvedKeyboardEvent = this._keybindingService.softDispatch(e, this._editor.getDomNode());\n // If the beginning of a multi-chord keybinding is pressed,\n // or the command aims to focus the hover,\n // set the variable to true, otherwise false\n const mightTriggerFocus = (resolvedKeyboardEvent.kind === 1 /* ResultKind.MoreChordsNeeded */ ||\n (resolvedKeyboardEvent.kind === 2 /* ResultKind.KbFound */\n && resolvedKeyboardEvent.commandId === 'editor.action.showHover'\n && ((_a = this._contentWidget) === null || _a === void 0 ? void 0 : _a.isVisible)));\n if (e.keyCode === 5 /* KeyCode.Ctrl */\n || e.keyCode === 6 /* KeyCode.Alt */\n || e.keyCode === 57 /* KeyCode.Meta */\n || e.keyCode === 4 /* KeyCode.Shift */\n || mightTriggerFocus) {\n // Do not hide hover when a modifier key is pressed\n return;\n }\n this._hideWidgets();\n }\n _hideWidgets() {\n var _a, _b, _c;\n if (_sticky) {\n return;\n }\n if ((this._hoverState.mouseDown\n && this._hoverState.contentHoverFocused\n && ((_a = this._contentWidget) === null || _a === void 0 ? void 0 : _a.isColorPickerVisible))\n || _inlineCompletions_browser_inlineCompletionsHintsWidget_js__WEBPACK_IMPORTED_MODULE_16__.InlineSuggestionHintsContentWidget.dropDownVisible) {\n return;\n }\n this._hoverState.activatedByDecoratorClick = false;\n this._hoverState.contentHoverFocused = false;\n (_b = this._glyphWidget) === null || _b === void 0 ? void 0 : _b.hide();\n (_c = this._contentWidget) === null || _c === void 0 ? void 0 : _c.hide();\n }\n _getOrCreateContentWidget() {\n if (!this._contentWidget) {\n this._contentWidget = this._instantiationService.createInstance(_contentHover_js__WEBPACK_IMPORTED_MODULE_7__.ContentHoverController, this._editor);\n }\n return this._contentWidget;\n }\n _getOrCreateGlyphWidget() {\n if (!this._glyphWidget) {\n this._glyphWidget = new _marginHover_js__WEBPACK_IMPORTED_MODULE_8__.MarginHoverWidget(this._editor, this._languageService, this._openerService);\n }\n return this._glyphWidget;\n }\n showContentHover(range, mode, source, focus, activatedByColorDecoratorClick = false) {\n this._hoverState.activatedByDecoratorClick = activatedByColorDecoratorClick;\n this._getOrCreateContentWidget().startShowingAtRange(range, mode, source, focus);\n }\n focus() {\n var _a;\n (_a = this._contentWidget) === null || _a === void 0 ? void 0 : _a.focus();\n }\n scrollUp() {\n var _a;\n (_a = this._contentWidget) === null || _a === void 0 ? void 0 : _a.scrollUp();\n }\n scrollDown() {\n var _a;\n (_a = this._contentWidget) === null || _a === void 0 ? void 0 : _a.scrollDown();\n }\n scrollLeft() {\n var _a;\n (_a = this._contentWidget) === null || _a === void 0 ? void 0 : _a.scrollLeft();\n }\n scrollRight() {\n var _a;\n (_a = this._contentWidget) === null || _a === void 0 ? void 0 : _a.scrollRight();\n }\n pageUp() {\n var _a;\n (_a = this._contentWidget) === null || _a === void 0 ? void 0 : _a.pageUp();\n }\n pageDown() {\n var _a;\n (_a = this._contentWidget) === null || _a === void 0 ? void 0 : _a.pageDown();\n }\n goToTop() {\n var _a;\n (_a = this._contentWidget) === null || _a === void 0 ? void 0 : _a.goToTop();\n }\n goToBottom() {\n var _a;\n (_a = this._contentWidget) === null || _a === void 0 ? void 0 : _a.goToBottom();\n }\n get isColorPickerVisible() {\n var _a;\n return (_a = this._contentWidget) === null || _a === void 0 ? void 0 : _a.isColorPickerVisible;\n }\n get isHoverVisible() {\n var _a;\n return (_a = this._contentWidget) === null || _a === void 0 ? void 0 : _a.isVisible;\n }\n dispose() {\n var _a, _b;\n super.dispose();\n this._unhookListeners();\n this._listenersStore.dispose();\n (_a = this._glyphWidget) === null || _a === void 0 ? void 0 : _a.dispose();\n (_b = this._contentWidget) === null || _b === void 0 ? void 0 : _b.dispose();\n }\n};\nHoverController.ID = 'editor.contrib.hover';\nHoverController = HoverController_1 = __decorate([\n __param(1, _platform_instantiation_common_instantiation_js__WEBPACK_IMPORTED_MODULE_9__.IInstantiationService),\n __param(2, _platform_opener_common_opener_js__WEBPACK_IMPORTED_MODULE_10__.IOpenerService),\n __param(3, _common_languages_language_js__WEBPACK_IMPORTED_MODULE_5__.ILanguageService),\n __param(4, _platform_keybinding_common_keybinding_js__WEBPACK_IMPORTED_MODULE_17__.IKeybindingService)\n], HoverController);\n\nvar HoverFocusBehavior;\n(function (HoverFocusBehavior) {\n HoverFocusBehavior[\"NoAutoFocus\"] = \"noAutoFocus\";\n HoverFocusBehavior[\"FocusIfVisible\"] = \"focusIfVisible\";\n HoverFocusBehavior[\"AutoFocusImmediately\"] = \"autoFocusImmediately\";\n})(HoverFocusBehavior || (HoverFocusBehavior = {}));\nclass ShowOrFocusHoverAction extends _browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_2__.EditorAction {\n constructor() {\n super({\n id: 'editor.action.showHover',\n label: _nls_js__WEBPACK_IMPORTED_MODULE_19__.localize({\n key: 'showOrFocusHover',\n comment: [\n 'Label for action that will trigger the showing/focusing of a hover in the editor.',\n 'If the hover is not visible, it will show the hover.',\n 'This allows for users to show the hover without using the mouse.'\n ]\n }, \"Show or Focus Hover\"),\n metadata: {\n description: `Show or Focus Hover`,\n args: [{\n name: 'args',\n schema: {\n type: 'object',\n properties: {\n 'focus': {\n description: 'Controls if and when the hover should take focus upon being triggered by this action.',\n enum: [HoverFocusBehavior.NoAutoFocus, HoverFocusBehavior.FocusIfVisible, HoverFocusBehavior.AutoFocusImmediately],\n enumDescriptions: [\n _nls_js__WEBPACK_IMPORTED_MODULE_19__.localize('showOrFocusHover.focus.noAutoFocus', 'The hover will not automatically take focus.'),\n _nls_js__WEBPACK_IMPORTED_MODULE_19__.localize('showOrFocusHover.focus.focusIfVisible', 'The hover will take focus only if it is already visible.'),\n _nls_js__WEBPACK_IMPORTED_MODULE_19__.localize('showOrFocusHover.focus.autoFocusImmediately', 'The hover will automatically take focus when it appears.'),\n ],\n default: HoverFocusBehavior.FocusIfVisible,\n }\n },\n }\n }]\n },\n alias: 'Show or Focus Hover',\n precondition: undefined,\n kbOpts: {\n kbExpr: _common_editorContextKeys_js__WEBPACK_IMPORTED_MODULE_4__.EditorContextKeys.editorTextFocus,\n primary: (0,_base_common_keyCodes_js__WEBPACK_IMPORTED_MODULE_0__.KeyChord)(2048 /* KeyMod.CtrlCmd */ | 41 /* KeyCode.KeyK */, 2048 /* KeyMod.CtrlCmd */ | 39 /* KeyCode.KeyI */),\n weight: 100 /* KeybindingWeight.EditorContrib */\n }\n });\n }\n run(accessor, editor, args) {\n if (!editor.hasModel()) {\n return;\n }\n const controller = HoverController.get(editor);\n if (!controller) {\n return;\n }\n const focusArgument = args === null || args === void 0 ? void 0 : args.focus;\n let focusOption = HoverFocusBehavior.FocusIfVisible;\n if (Object.values(HoverFocusBehavior).includes(focusArgument)) {\n focusOption = focusArgument;\n }\n else if (typeof focusArgument === 'boolean' && focusArgument) {\n focusOption = HoverFocusBehavior.AutoFocusImmediately;\n }\n const showContentHover = (focus) => {\n const position = editor.getPosition();\n const range = new _common_core_range_js__WEBPACK_IMPORTED_MODULE_3__.Range(position.lineNumber, position.column, position.lineNumber, position.column);\n controller.showContentHover(range, 1 /* HoverStartMode.Immediate */, 1 /* HoverStartSource.Keyboard */, focus);\n };\n const accessibilitySupportEnabled = editor.getOption(2 /* EditorOption.accessibilitySupport */) === 2 /* AccessibilitySupport.Enabled */;\n if (controller.isHoverVisible) {\n if (focusOption !== HoverFocusBehavior.NoAutoFocus) {\n controller.focus();\n }\n else {\n showContentHover(accessibilitySupportEnabled);\n }\n }\n else {\n showContentHover(accessibilitySupportEnabled || focusOption === HoverFocusBehavior.AutoFocusImmediately);\n }\n }\n}\nclass ShowDefinitionPreviewHoverAction extends _browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_2__.EditorAction {\n constructor() {\n super({\n id: 'editor.action.showDefinitionPreviewHover',\n label: _nls_js__WEBPACK_IMPORTED_MODULE_19__.localize({\n key: 'showDefinitionPreviewHover',\n comment: [\n 'Label for action that will trigger the showing of definition preview hover in the editor.',\n 'This allows for users to show the definition preview hover without using the mouse.'\n ]\n }, \"Show Definition Preview Hover\"),\n alias: 'Show Definition Preview Hover',\n precondition: undefined\n });\n }\n run(accessor, editor) {\n const controller = HoverController.get(editor);\n if (!controller) {\n return;\n }\n const position = editor.getPosition();\n if (!position) {\n return;\n }\n const range = new _common_core_range_js__WEBPACK_IMPORTED_MODULE_3__.Range(position.lineNumber, position.column, position.lineNumber, position.column);\n const goto = _gotoSymbol_browser_link_goToDefinitionAtPosition_js__WEBPACK_IMPORTED_MODULE_6__.GotoDefinitionAtPositionEditorContribution.get(editor);\n if (!goto) {\n return;\n }\n const promise = goto.startFindDefinitionFromCursor(position);\n promise.then(() => {\n controller.showContentHover(range, 1 /* HoverStartMode.Immediate */, 1 /* HoverStartSource.Keyboard */, true);\n });\n }\n}\nclass ScrollUpHoverAction extends _browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_2__.EditorAction {\n constructor() {\n super({\n id: 'editor.action.scrollUpHover',\n label: _nls_js__WEBPACK_IMPORTED_MODULE_19__.localize({\n key: 'scrollUpHover',\n comment: [\n 'Action that allows to scroll up in the hover widget with the up arrow when the hover widget is focused.'\n ]\n }, \"Scroll Up Hover\"),\n alias: 'Scroll Up Hover',\n precondition: _common_editorContextKeys_js__WEBPACK_IMPORTED_MODULE_4__.EditorContextKeys.hoverFocused,\n kbOpts: {\n kbExpr: _common_editorContextKeys_js__WEBPACK_IMPORTED_MODULE_4__.EditorContextKeys.hoverFocused,\n primary: 16 /* KeyCode.UpArrow */,\n weight: 100 /* KeybindingWeight.EditorContrib */\n }\n });\n }\n run(accessor, editor) {\n const controller = HoverController.get(editor);\n if (!controller) {\n return;\n }\n controller.scrollUp();\n }\n}\nclass ScrollDownHoverAction extends _browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_2__.EditorAction {\n constructor() {\n super({\n id: 'editor.action.scrollDownHover',\n label: _nls_js__WEBPACK_IMPORTED_MODULE_19__.localize({\n key: 'scrollDownHover',\n comment: [\n 'Action that allows to scroll down in the hover widget with the up arrow when the hover widget is focused.'\n ]\n }, \"Scroll Down Hover\"),\n alias: 'Scroll Down Hover',\n precondition: _common_editorContextKeys_js__WEBPACK_IMPORTED_MODULE_4__.EditorContextKeys.hoverFocused,\n kbOpts: {\n kbExpr: _common_editorContextKeys_js__WEBPACK_IMPORTED_MODULE_4__.EditorContextKeys.hoverFocused,\n primary: 18 /* KeyCode.DownArrow */,\n weight: 100 /* KeybindingWeight.EditorContrib */\n }\n });\n }\n run(accessor, editor) {\n const controller = HoverController.get(editor);\n if (!controller) {\n return;\n }\n controller.scrollDown();\n }\n}\nclass ScrollLeftHoverAction extends _browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_2__.EditorAction {\n constructor() {\n super({\n id: 'editor.action.scrollLeftHover',\n label: _nls_js__WEBPACK_IMPORTED_MODULE_19__.localize({\n key: 'scrollLeftHover',\n comment: [\n 'Action that allows to scroll left in the hover widget with the left arrow when the hover widget is focused.'\n ]\n }, \"Scroll Left Hover\"),\n alias: 'Scroll Left Hover',\n precondition: _common_editorContextKeys_js__WEBPACK_IMPORTED_MODULE_4__.EditorContextKeys.hoverFocused,\n kbOpts: {\n kbExpr: _common_editorContextKeys_js__WEBPACK_IMPORTED_MODULE_4__.EditorContextKeys.hoverFocused,\n primary: 15 /* KeyCode.LeftArrow */,\n weight: 100 /* KeybindingWeight.EditorContrib */\n }\n });\n }\n run(accessor, editor) {\n const controller = HoverController.get(editor);\n if (!controller) {\n return;\n }\n controller.scrollLeft();\n }\n}\nclass ScrollRightHoverAction extends _browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_2__.EditorAction {\n constructor() {\n super({\n id: 'editor.action.scrollRightHover',\n label: _nls_js__WEBPACK_IMPORTED_MODULE_19__.localize({\n key: 'scrollRightHover',\n comment: [\n 'Action that allows to scroll right in the hover widget with the right arrow when the hover widget is focused.'\n ]\n }, \"Scroll Right Hover\"),\n alias: 'Scroll Right Hover',\n precondition: _common_editorContextKeys_js__WEBPACK_IMPORTED_MODULE_4__.EditorContextKeys.hoverFocused,\n kbOpts: {\n kbExpr: _common_editorContextKeys_js__WEBPACK_IMPORTED_MODULE_4__.EditorContextKeys.hoverFocused,\n primary: 17 /* KeyCode.RightArrow */,\n weight: 100 /* KeybindingWeight.EditorContrib */\n }\n });\n }\n run(accessor, editor) {\n const controller = HoverController.get(editor);\n if (!controller) {\n return;\n }\n controller.scrollRight();\n }\n}\nclass PageUpHoverAction extends _browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_2__.EditorAction {\n constructor() {\n super({\n id: 'editor.action.pageUpHover',\n label: _nls_js__WEBPACK_IMPORTED_MODULE_19__.localize({\n key: 'pageUpHover',\n comment: [\n 'Action that allows to page up in the hover widget with the page up command when the hover widget is focused.'\n ]\n }, \"Page Up Hover\"),\n alias: 'Page Up Hover',\n precondition: _common_editorContextKeys_js__WEBPACK_IMPORTED_MODULE_4__.EditorContextKeys.hoverFocused,\n kbOpts: {\n kbExpr: _common_editorContextKeys_js__WEBPACK_IMPORTED_MODULE_4__.EditorContextKeys.hoverFocused,\n primary: 11 /* KeyCode.PageUp */,\n secondary: [512 /* KeyMod.Alt */ | 16 /* KeyCode.UpArrow */],\n weight: 100 /* KeybindingWeight.EditorContrib */\n }\n });\n }\n run(accessor, editor) {\n const controller = HoverController.get(editor);\n if (!controller) {\n return;\n }\n controller.pageUp();\n }\n}\nclass PageDownHoverAction extends _browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_2__.EditorAction {\n constructor() {\n super({\n id: 'editor.action.pageDownHover',\n label: _nls_js__WEBPACK_IMPORTED_MODULE_19__.localize({\n key: 'pageDownHover',\n comment: [\n 'Action that allows to page down in the hover widget with the page down command when the hover widget is focused.'\n ]\n }, \"Page Down Hover\"),\n alias: 'Page Down Hover',\n precondition: _common_editorContextKeys_js__WEBPACK_IMPORTED_MODULE_4__.EditorContextKeys.hoverFocused,\n kbOpts: {\n kbExpr: _common_editorContextKeys_js__WEBPACK_IMPORTED_MODULE_4__.EditorContextKeys.hoverFocused,\n primary: 12 /* KeyCode.PageDown */,\n secondary: [512 /* KeyMod.Alt */ | 18 /* KeyCode.DownArrow */],\n weight: 100 /* KeybindingWeight.EditorContrib */\n }\n });\n }\n run(accessor, editor) {\n const controller = HoverController.get(editor);\n if (!controller) {\n return;\n }\n controller.pageDown();\n }\n}\nclass GoToTopHoverAction extends _browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_2__.EditorAction {\n constructor() {\n super({\n id: 'editor.action.goToTopHover',\n label: _nls_js__WEBPACK_IMPORTED_MODULE_19__.localize({\n key: 'goToTopHover',\n comment: [\n 'Action that allows to go to the top of the hover widget with the home command when the hover widget is focused.'\n ]\n }, \"Go To Top Hover\"),\n alias: 'Go To Bottom Hover',\n precondition: _common_editorContextKeys_js__WEBPACK_IMPORTED_MODULE_4__.EditorContextKeys.hoverFocused,\n kbOpts: {\n kbExpr: _common_editorContextKeys_js__WEBPACK_IMPORTED_MODULE_4__.EditorContextKeys.hoverFocused,\n primary: 14 /* KeyCode.Home */,\n secondary: [2048 /* KeyMod.CtrlCmd */ | 16 /* KeyCode.UpArrow */],\n weight: 100 /* KeybindingWeight.EditorContrib */\n }\n });\n }\n run(accessor, editor) {\n const controller = HoverController.get(editor);\n if (!controller) {\n return;\n }\n controller.goToTop();\n }\n}\nclass GoToBottomHoverAction extends _browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_2__.EditorAction {\n constructor() {\n super({\n id: 'editor.action.goToBottomHover',\n label: _nls_js__WEBPACK_IMPORTED_MODULE_19__.localize({\n key: 'goToBottomHover',\n comment: [\n 'Action that allows to go to the bottom in the hover widget with the end command when the hover widget is focused.'\n ]\n }, \"Go To Bottom Hover\"),\n alias: 'Go To Bottom Hover',\n precondition: _common_editorContextKeys_js__WEBPACK_IMPORTED_MODULE_4__.EditorContextKeys.hoverFocused,\n kbOpts: {\n kbExpr: _common_editorContextKeys_js__WEBPACK_IMPORTED_MODULE_4__.EditorContextKeys.hoverFocused,\n primary: 13 /* KeyCode.End */,\n secondary: [2048 /* KeyMod.CtrlCmd */ | 18 /* KeyCode.DownArrow */],\n weight: 100 /* KeybindingWeight.EditorContrib */\n }\n });\n }\n run(accessor, editor) {\n const controller = HoverController.get(editor);\n if (!controller) {\n return;\n }\n controller.goToBottom();\n }\n}\n(0,_browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_2__.registerEditorContribution)(HoverController.ID, HoverController, 2 /* EditorContributionInstantiation.BeforeFirstInteraction */);\n(0,_browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_2__.registerEditorAction)(ShowOrFocusHoverAction);\n(0,_browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_2__.registerEditorAction)(ShowDefinitionPreviewHoverAction);\n(0,_browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_2__.registerEditorAction)(ScrollUpHoverAction);\n(0,_browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_2__.registerEditorAction)(ScrollDownHoverAction);\n(0,_browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_2__.registerEditorAction)(ScrollLeftHoverAction);\n(0,_browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_2__.registerEditorAction)(ScrollRightHoverAction);\n(0,_browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_2__.registerEditorAction)(PageUpHoverAction);\n(0,_browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_2__.registerEditorAction)(PageDownHoverAction);\n(0,_browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_2__.registerEditorAction)(GoToTopHoverAction);\n(0,_browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_2__.registerEditorAction)(GoToBottomHoverAction);\n_hoverTypes_js__WEBPACK_IMPORTED_MODULE_13__.HoverParticipantRegistry.register(_markdownHoverParticipant_js__WEBPACK_IMPORTED_MODULE_14__.MarkdownHoverParticipant);\n_hoverTypes_js__WEBPACK_IMPORTED_MODULE_13__.HoverParticipantRegistry.register(_markerHoverParticipant_js__WEBPACK_IMPORTED_MODULE_15__.MarkerHoverParticipant);\n// theming\n(0,_platform_theme_common_themeService_js__WEBPACK_IMPORTED_MODULE_12__.registerThemingParticipant)((theme, collector) => {\n const hoverBorder = theme.getColor(_platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_11__.editorHoverBorder);\n if (hoverBorder) {\n collector.addRule(`.monaco-editor .monaco-hover .hover-row:not(:first-child):not(:empty) { border-top: 1px solid ${hoverBorder.transparent(0.5)}; }`);\n collector.addRule(`.monaco-editor .monaco-hover hr { border-top: 1px solid ${hoverBorder.transparent(0.5)}; }`);\n collector.addRule(`.monaco-editor .monaco-hover hr { border-bottom: 0px solid ${hoverBorder.transparent(0.5)}; }`);\n }\n});\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/contrib/hover/browser/hover.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/contrib/hover/browser/hoverOperation.js":
/*!******************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/contrib/hover/browser/hoverOperation.js ***!
\******************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ HoverOperation: () => (/* binding */ HoverOperation),\n/* harmony export */ HoverResult: () => (/* binding */ HoverResult)\n/* harmony export */ });\n/* harmony import */ var _base_common_async_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../../base/common/async.js */ \"./node_modules/monaco-editor/esm/vs/base/common/async.js\");\n/* harmony import */ var _base_common_errors_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../base/common/errors.js */ \"./node_modules/monaco-editor/esm/vs/base/common/errors.js\");\n/* harmony import */ var _base_common_event_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../../base/common/event.js */ \"./node_modules/monaco-editor/esm/vs/base/common/event.js\");\n/* harmony import */ var _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../../../base/common/lifecycle.js */ \"./node_modules/monaco-editor/esm/vs/base/common/lifecycle.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n\n\n\nclass HoverResult {\n constructor(value, isComplete, hasLoadingMessage) {\n this.value = value;\n this.isComplete = isComplete;\n this.hasLoadingMessage = hasLoadingMessage;\n }\n}\n/**\n * Computing the hover is very fine tuned.\n *\n * Suppose the hover delay is 300ms (the default). Then, when resting the mouse at an anchor:\n * - at 150ms, the async computation is triggered (i.e. semantic hover)\n * - if async results already come in, they are not rendered yet.\n * - at 300ms, the sync computation is triggered (i.e. decorations, markers)\n * - if there are sync or async results, they are rendered.\n * - at 900ms, if the async computation hasn't finished, a \"Loading...\" result is added.\n */\nclass HoverOperation extends _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_3__.Disposable {\n constructor(_editor, _computer) {\n super();\n this._editor = _editor;\n this._computer = _computer;\n this._onResult = this._register(new _base_common_event_js__WEBPACK_IMPORTED_MODULE_2__.Emitter());\n this.onResult = this._onResult.event;\n this._firstWaitScheduler = this._register(new _base_common_async_js__WEBPACK_IMPORTED_MODULE_0__.RunOnceScheduler(() => this._triggerAsyncComputation(), 0));\n this._secondWaitScheduler = this._register(new _base_common_async_js__WEBPACK_IMPORTED_MODULE_0__.RunOnceScheduler(() => this._triggerSyncComputation(), 0));\n this._loadingMessageScheduler = this._register(new _base_common_async_js__WEBPACK_IMPORTED_MODULE_0__.RunOnceScheduler(() => this._triggerLoadingMessage(), 0));\n this._state = 0 /* HoverOperationState.Idle */;\n this._asyncIterable = null;\n this._asyncIterableDone = false;\n this._result = [];\n }\n dispose() {\n if (this._asyncIterable) {\n this._asyncIterable.cancel();\n this._asyncIterable = null;\n }\n super.dispose();\n }\n get _hoverTime() {\n return this._editor.getOption(60 /* EditorOption.hover */).delay;\n }\n get _firstWaitTime() {\n return this._hoverTime / 2;\n }\n get _secondWaitTime() {\n return this._hoverTime - this._firstWaitTime;\n }\n get _loadingMessageTime() {\n return 3 * this._hoverTime;\n }\n _setState(state, fireResult = true) {\n this._state = state;\n if (fireResult) {\n this._fireResult();\n }\n }\n _triggerAsyncComputation() {\n this._setState(2 /* HoverOperationState.SecondWait */);\n this._secondWaitScheduler.schedule(this._secondWaitTime);\n if (this._computer.computeAsync) {\n this._asyncIterableDone = false;\n this._asyncIterable = (0,_base_common_async_js__WEBPACK_IMPORTED_MODULE_0__.createCancelableAsyncIterable)(token => this._computer.computeAsync(token));\n (async () => {\n try {\n for await (const item of this._asyncIterable) {\n if (item) {\n this._result.push(item);\n this._fireResult();\n }\n }\n this._asyncIterableDone = true;\n if (this._state === 3 /* HoverOperationState.WaitingForAsync */ || this._state === 4 /* HoverOperationState.WaitingForAsyncShowingLoading */) {\n this._setState(0 /* HoverOperationState.Idle */);\n }\n }\n catch (e) {\n (0,_base_common_errors_js__WEBPACK_IMPORTED_MODULE_1__.onUnexpectedError)(e);\n }\n })();\n }\n else {\n this._asyncIterableDone = true;\n }\n }\n _triggerSyncComputation() {\n if (this._computer.computeSync) {\n this._result = this._result.concat(this._computer.computeSync());\n }\n this._setState(this._asyncIterableDone ? 0 /* HoverOperationState.Idle */ : 3 /* HoverOperationState.WaitingForAsync */);\n }\n _triggerLoadingMessage() {\n if (this._state === 3 /* HoverOperationState.WaitingForAsync */) {\n this._setState(4 /* HoverOperationState.WaitingForAsyncShowingLoading */);\n }\n }\n _fireResult() {\n if (this._state === 1 /* HoverOperationState.FirstWait */ || this._state === 2 /* HoverOperationState.SecondWait */) {\n // Do not send out results before the hover time\n return;\n }\n const isComplete = (this._state === 0 /* HoverOperationState.Idle */);\n const hasLoadingMessage = (this._state === 4 /* HoverOperationState.WaitingForAsyncShowingLoading */);\n this._onResult.fire(new HoverResult(this._result.slice(0), isComplete, hasLoadingMessage));\n }\n start(mode) {\n if (mode === 0 /* HoverStartMode.Delayed */) {\n if (this._state === 0 /* HoverOperationState.Idle */) {\n this._setState(1 /* HoverOperationState.FirstWait */);\n this._firstWaitScheduler.schedule(this._firstWaitTime);\n this._loadingMessageScheduler.schedule(this._loadingMessageTime);\n }\n }\n else {\n switch (this._state) {\n case 0 /* HoverOperationState.Idle */:\n this._triggerAsyncComputation();\n this._secondWaitScheduler.cancel();\n this._triggerSyncComputation();\n break;\n case 2 /* HoverOperationState.SecondWait */:\n this._secondWaitScheduler.cancel();\n this._triggerSyncComputation();\n break;\n }\n }\n }\n cancel() {\n this._firstWaitScheduler.cancel();\n this._secondWaitScheduler.cancel();\n this._loadingMessageScheduler.cancel();\n if (this._asyncIterable) {\n this._asyncIterable.cancel();\n this._asyncIterable = null;\n }\n this._result = [];\n this._setState(0 /* HoverOperationState.Idle */, false);\n }\n}\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/contrib/hover/browser/hoverOperation.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/contrib/hover/browser/hoverTypes.js":
/*!**************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/contrib/hover/browser/hoverTypes.js ***!
\**************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ HoverForeignElementAnchor: () => (/* binding */ HoverForeignElementAnchor),\n/* harmony export */ HoverParticipantRegistry: () => (/* binding */ HoverParticipantRegistry),\n/* harmony export */ HoverRangeAnchor: () => (/* binding */ HoverRangeAnchor)\n/* harmony export */ });\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\nclass HoverRangeAnchor {\n constructor(priority, range, initialMousePosX, initialMousePosY) {\n this.priority = priority;\n this.range = range;\n this.initialMousePosX = initialMousePosX;\n this.initialMousePosY = initialMousePosY;\n this.type = 1 /* HoverAnchorType.Range */;\n }\n equals(other) {\n return (other.type === 1 /* HoverAnchorType.Range */ && this.range.equalsRange(other.range));\n }\n canAdoptVisibleHover(lastAnchor, showAtPosition) {\n return (lastAnchor.type === 1 /* HoverAnchorType.Range */ && showAtPosition.lineNumber === this.range.startLineNumber);\n }\n}\nclass HoverForeignElementAnchor {\n constructor(priority, owner, range, initialMousePosX, initialMousePosY, supportsMarkerHover) {\n this.priority = priority;\n this.owner = owner;\n this.range = range;\n this.initialMousePosX = initialMousePosX;\n this.initialMousePosY = initialMousePosY;\n this.supportsMarkerHover = supportsMarkerHover;\n this.type = 2 /* HoverAnchorType.ForeignElement */;\n }\n equals(other) {\n return (other.type === 2 /* HoverAnchorType.ForeignElement */ && this.owner === other.owner);\n }\n canAdoptVisibleHover(lastAnchor, showAtPosition) {\n return (lastAnchor.type === 2 /* HoverAnchorType.ForeignElement */ && this.owner === lastAnchor.owner);\n }\n}\nconst HoverParticipantRegistry = (new class HoverParticipantRegistry {\n constructor() {\n this._participants = [];\n }\n register(ctor) {\n this._participants.push(ctor);\n }\n getAll() {\n return this._participants;\n }\n}());\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/contrib/hover/browser/hoverTypes.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/contrib/hover/browser/marginHover.js":
/*!***************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/contrib/hover/browser/marginHover.js ***!
\***************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ MarginHoverWidget: () => (/* binding */ MarginHoverWidget)\n/* harmony export */ });\n/* harmony import */ var _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../../base/browser/dom.js */ \"./node_modules/monaco-editor/esm/vs/base/browser/dom.js\");\n/* harmony import */ var _base_common_arrays_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../base/common/arrays.js */ \"./node_modules/monaco-editor/esm/vs/base/common/arrays.js\");\n/* harmony import */ var _base_common_htmlContent_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../../base/common/htmlContent.js */ \"./node_modules/monaco-editor/esm/vs/base/common/htmlContent.js\");\n/* harmony import */ var _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../../../base/common/lifecycle.js */ \"./node_modules/monaco-editor/esm/vs/base/common/lifecycle.js\");\n/* harmony import */ var _browser_widget_markdownRenderer_browser_markdownRenderer_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../../browser/widget/markdownRenderer/browser/markdownRenderer.js */ \"./node_modules/monaco-editor/esm/vs/editor/browser/widget/markdownRenderer/browser/markdownRenderer.js\");\n/* harmony import */ var _hoverOperation_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./hoverOperation.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/hover/browser/hoverOperation.js\");\n/* harmony import */ var _base_browser_ui_hover_hoverWidget_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../../../../base/browser/ui/hover/hoverWidget.js */ \"./node_modules/monaco-editor/esm/vs/base/browser/ui/hover/hoverWidget.js\");\n/* harmony import */ var _common_model_js__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ../../../common/model.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/model.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n\n\n\n\n\n\n\nconst $ = _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.$;\nclass MarginHoverWidget extends _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_3__.Disposable {\n constructor(editor, languageService, openerService) {\n super();\n this._renderDisposeables = this._register(new _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_3__.DisposableStore());\n this._editor = editor;\n this._isVisible = false;\n this._messages = [];\n this._hover = this._register(new _base_browser_ui_hover_hoverWidget_js__WEBPACK_IMPORTED_MODULE_6__.HoverWidget());\n this._hover.containerDomNode.classList.toggle('hidden', !this._isVisible);\n this._markdownRenderer = this._register(new _browser_widget_markdownRenderer_browser_markdownRenderer_js__WEBPACK_IMPORTED_MODULE_4__.MarkdownRenderer({ editor: this._editor }, languageService, openerService));\n this._computer = new MarginHoverComputer(this._editor);\n this._hoverOperation = this._register(new _hoverOperation_js__WEBPACK_IMPORTED_MODULE_5__.HoverOperation(this._editor, this._computer));\n this._register(this._hoverOperation.onResult((result) => {\n this._withResult(result.value);\n }));\n this._register(this._editor.onDidChangeModelDecorations(() => this._onModelDecorationsChanged()));\n this._register(this._editor.onDidChangeConfiguration((e) => {\n if (e.hasChanged(50 /* EditorOption.fontInfo */)) {\n this._updateFont();\n }\n }));\n this._editor.addOverlayWidget(this);\n }\n dispose() {\n this._editor.removeOverlayWidget(this);\n super.dispose();\n }\n getId() {\n return MarginHoverWidget.ID;\n }\n getDomNode() {\n return this._hover.containerDomNode;\n }\n getPosition() {\n return null;\n }\n _updateFont() {\n const codeClasses = Array.prototype.slice.call(this._hover.contentsDomNode.getElementsByClassName('code'));\n codeClasses.forEach(node => this._editor.applyFontInfo(node));\n }\n _onModelDecorationsChanged() {\n if (this._isVisible) {\n // The decorations have changed and the hover is visible,\n // we need to recompute the displayed text\n this._hoverOperation.cancel();\n this._hoverOperation.start(0 /* HoverStartMode.Delayed */);\n }\n }\n startShowingAt(lineNumber, laneOrLine) {\n if (this._computer.lineNumber === lineNumber && this._computer.lane === laneOrLine) {\n // We have to show the widget at the exact same line number as before, so no work is needed\n return;\n }\n this._hoverOperation.cancel();\n this.hide();\n this._computer.lineNumber = lineNumber;\n this._computer.lane = laneOrLine;\n this._hoverOperation.start(0 /* HoverStartMode.Delayed */);\n }\n hide() {\n this._computer.lineNumber = -1;\n this._hoverOperation.cancel();\n if (!this._isVisible) {\n return;\n }\n this._isVisible = false;\n this._hover.containerDomNode.classList.toggle('hidden', !this._isVisible);\n }\n _withResult(result) {\n this._messages = result;\n if (this._messages.length > 0) {\n this._renderMessages(this._computer.lineNumber, this._messages);\n }\n else {\n this.hide();\n }\n }\n _renderMessages(lineNumber, messages) {\n this._renderDisposeables.clear();\n const fragment = document.createDocumentFragment();\n for (const msg of messages) {\n const markdownHoverElement = $('div.hover-row.markdown-hover');\n const hoverContentsElement = _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.append(markdownHoverElement, $('div.hover-contents'));\n const renderedContents = this._renderDisposeables.add(this._markdownRenderer.render(msg.value));\n hoverContentsElement.appendChild(renderedContents.element);\n fragment.appendChild(markdownHoverElement);\n }\n this._updateContents(fragment);\n this._showAt(lineNumber);\n }\n _updateContents(node) {\n this._hover.contentsDomNode.textContent = '';\n this._hover.contentsDomNode.appendChild(node);\n this._updateFont();\n }\n _showAt(lineNumber) {\n if (!this._isVisible) {\n this._isVisible = true;\n this._hover.containerDomNode.classList.toggle('hidden', !this._isVisible);\n }\n const editorLayout = this._editor.getLayoutInfo();\n const topForLineNumber = this._editor.getTopForLineNumber(lineNumber);\n const editorScrollTop = this._editor.getScrollTop();\n const lineHeight = this._editor.getOption(67 /* EditorOption.lineHeight */);\n const nodeHeight = this._hover.containerDomNode.clientHeight;\n const top = topForLineNumber - editorScrollTop - ((nodeHeight - lineHeight) / 2);\n const left = editorLayout.glyphMarginLeft + editorLayout.glyphMarginWidth + (this._computer.lane === 'lineNo' ? editorLayout.lineNumbersWidth : 0);\n this._hover.containerDomNode.style.left = `${left}px`;\n this._hover.containerDomNode.style.top = `${Math.max(Math.round(top), 0)}px`;\n }\n}\nMarginHoverWidget.ID = 'editor.contrib.modesGlyphHoverWidget';\nclass MarginHoverComputer {\n get lineNumber() {\n return this._lineNumber;\n }\n set lineNumber(value) {\n this._lineNumber = value;\n }\n get lane() {\n return this._laneOrLine;\n }\n set lane(value) {\n this._laneOrLine = value;\n }\n constructor(_editor) {\n this._editor = _editor;\n this._lineNumber = -1;\n this._laneOrLine = _common_model_js__WEBPACK_IMPORTED_MODULE_7__.GlyphMarginLane.Center;\n }\n computeSync() {\n var _a, _b;\n const toHoverMessage = (contents) => {\n return {\n value: contents\n };\n };\n const lineDecorations = this._editor.getLineDecorations(this._lineNumber);\n const result = [];\n const isLineHover = this._laneOrLine === 'lineNo';\n if (!lineDecorations) {\n return result;\n }\n for (const d of lineDecorations) {\n const lane = (_b = (_a = d.options.glyphMargin) === null || _a === void 0 ? void 0 : _a.position) !== null && _b !== void 0 ? _b : _common_model_js__WEBPACK_IMPORTED_MODULE_7__.GlyphMarginLane.Center;\n if (!isLineHover && lane !== this._laneOrLine) {\n continue;\n }\n const hoverMessage = isLineHover ? d.options.lineNumberHoverMessage : d.options.glyphMarginHoverMessage;\n if (!hoverMessage || (0,_base_common_htmlContent_js__WEBPACK_IMPORTED_MODULE_2__.isEmptyMarkdownString)(hoverMessage)) {\n continue;\n }\n result.push(...(0,_base_common_arrays_js__WEBPACK_IMPORTED_MODULE_1__.asArray)(hoverMessage).map(toHoverMessage));\n }\n return result;\n }\n}\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/contrib/hover/browser/marginHover.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/contrib/hover/browser/markdownHoverParticipant.js":
/*!****************************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/contrib/hover/browser/markdownHoverParticipant.js ***!
\****************************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ MarkdownHover: () => (/* binding */ MarkdownHover),\n/* harmony export */ MarkdownHoverParticipant: () => (/* binding */ MarkdownHoverParticipant),\n/* harmony export */ renderMarkdownHovers: () => (/* binding */ renderMarkdownHovers)\n/* harmony export */ });\n/* harmony import */ var _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../../base/browser/dom.js */ \"./node_modules/monaco-editor/esm/vs/base/browser/dom.js\");\n/* harmony import */ var _base_common_arrays_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../base/common/arrays.js */ \"./node_modules/monaco-editor/esm/vs/base/common/arrays.js\");\n/* harmony import */ var _base_common_async_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../../base/common/async.js */ \"./node_modules/monaco-editor/esm/vs/base/common/async.js\");\n/* harmony import */ var _base_common_htmlContent_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../../../base/common/htmlContent.js */ \"./node_modules/monaco-editor/esm/vs/base/common/htmlContent.js\");\n/* harmony import */ var _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../../../base/common/lifecycle.js */ \"./node_modules/monaco-editor/esm/vs/base/common/lifecycle.js\");\n/* harmony import */ var _browser_widget_markdownRenderer_browser_markdownRenderer_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../../../browser/widget/markdownRenderer/browser/markdownRenderer.js */ \"./node_modules/monaco-editor/esm/vs/editor/browser/widget/markdownRenderer/browser/markdownRenderer.js\");\n/* harmony import */ var _common_core_position_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../../../common/core/position.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/core/position.js\");\n/* harmony import */ var _common_core_range_js__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ../../../common/core/range.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/core/range.js\");\n/* harmony import */ var _common_languages_language_js__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ../../../common/languages/language.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/languages/language.js\");\n/* harmony import */ var _getHover_js__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ./getHover.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/hover/browser/getHover.js\");\n/* harmony import */ var _nls_js__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! ../../../../nls.js */ \"./node_modules/monaco-editor/esm/vs/nls.js\");\n/* harmony import */ var _platform_configuration_common_configuration_js__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(/*! ../../../../platform/configuration/common/configuration.js */ \"./node_modules/monaco-editor/esm/vs/platform/configuration/common/configuration.js\");\n/* harmony import */ var _platform_opener_common_opener_js__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(/*! ../../../../platform/opener/common/opener.js */ \"./node_modules/monaco-editor/esm/vs/platform/opener/common/opener.js\");\n/* harmony import */ var _common_services_languageFeatures_js__WEBPACK_IMPORTED_MODULE_13__ = __webpack_require__(/*! ../../../common/services/languageFeatures.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/services/languageFeatures.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\nvar __decorate = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\n return c > 3 && r && Object.defineProperty(target, key, r), r;\n};\nvar __param = (undefined && undefined.__param) || function (paramIndex, decorator) {\n return function (target, key) { decorator(target, key, paramIndex); }\n};\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nconst $ = _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.$;\nclass MarkdownHover {\n constructor(owner, range, contents, isBeforeContent, ordinal) {\n this.owner = owner;\n this.range = range;\n this.contents = contents;\n this.isBeforeContent = isBeforeContent;\n this.ordinal = ordinal;\n }\n isValidForHoverAnchor(anchor) {\n return (anchor.type === 1 /* HoverAnchorType.Range */\n && this.range.startColumn <= anchor.range.startColumn\n && this.range.endColumn >= anchor.range.endColumn);\n }\n}\nlet MarkdownHoverParticipant = class MarkdownHoverParticipant {\n constructor(_editor, _languageService, _openerService, _configurationService, _languageFeaturesService) {\n this._editor = _editor;\n this._languageService = _languageService;\n this._openerService = _openerService;\n this._configurationService = _configurationService;\n this._languageFeaturesService = _languageFeaturesService;\n this.hoverOrdinal = 3;\n }\n createLoadingMessage(anchor) {\n return new MarkdownHover(this, anchor.range, [new _base_common_htmlContent_js__WEBPACK_IMPORTED_MODULE_3__.MarkdownString().appendText(_nls_js__WEBPACK_IMPORTED_MODULE_10__.localize('modesContentHover.loading', \"Loading...\"))], false, 2000);\n }\n computeSync(anchor, lineDecorations) {\n if (!this._editor.hasModel() || anchor.type !== 1 /* HoverAnchorType.Range */) {\n return [];\n }\n const model = this._editor.getModel();\n const lineNumber = anchor.range.startLineNumber;\n const maxColumn = model.getLineMaxColumn(lineNumber);\n const result = [];\n let index = 1000;\n const lineLength = model.getLineLength(lineNumber);\n const languageId = model.getLanguageIdAtPosition(anchor.range.startLineNumber, anchor.range.startColumn);\n const stopRenderingLineAfter = this._editor.getOption(117 /* EditorOption.stopRenderingLineAfter */);\n const maxTokenizationLineLength = this._configurationService.getValue('editor.maxTokenizationLineLength', {\n overrideIdentifier: languageId\n });\n let stopRenderingMessage = false;\n if (stopRenderingLineAfter >= 0 && lineLength > stopRenderingLineAfter && anchor.range.startColumn >= stopRenderingLineAfter) {\n stopRenderingMessage = true;\n result.push(new MarkdownHover(this, anchor.range, [{\n value: _nls_js__WEBPACK_IMPORTED_MODULE_10__.localize('stopped rendering', \"Rendering paused for long line for performance reasons. This can be configured via `editor.stopRenderingLineAfter`.\")\n }], false, index++));\n }\n if (!stopRenderingMessage && typeof maxTokenizationLineLength === 'number' && lineLength >= maxTokenizationLineLength) {\n result.push(new MarkdownHover(this, anchor.range, [{\n value: _nls_js__WEBPACK_IMPORTED_MODULE_10__.localize('too many characters', \"Tokenization is skipped for long lines for performance reasons. This can be configured via `editor.maxTokenizationLineLength`.\")\n }], false, index++));\n }\n let isBeforeContent = false;\n for (const d of lineDecorations) {\n const startColumn = (d.range.startLineNumber === lineNumber) ? d.range.startColumn : 1;\n const endColumn = (d.range.endLineNumber === lineNumber) ? d.range.endColumn : maxColumn;\n const hoverMessage = d.options.hoverMessage;\n if (!hoverMessage || (0,_base_common_htmlContent_js__WEBPACK_IMPORTED_MODULE_3__.isEmptyMarkdownString)(hoverMessage)) {\n continue;\n }\n if (d.options.beforeContentClassName) {\n isBeforeContent = true;\n }\n const range = new _common_core_range_js__WEBPACK_IMPORTED_MODULE_7__.Range(anchor.range.startLineNumber, startColumn, anchor.range.startLineNumber, endColumn);\n result.push(new MarkdownHover(this, range, (0,_base_common_arrays_js__WEBPACK_IMPORTED_MODULE_1__.asArray)(hoverMessage), isBeforeContent, index++));\n }\n return result;\n }\n computeAsync(anchor, lineDecorations, token) {\n if (!this._editor.hasModel() || anchor.type !== 1 /* HoverAnchorType.Range */) {\n return _base_common_async_js__WEBPACK_IMPORTED_MODULE_2__.AsyncIterableObject.EMPTY;\n }\n const model = this._editor.getModel();\n if (!this._languageFeaturesService.hoverProvider.has(model)) {\n return _base_common_async_js__WEBPACK_IMPORTED_MODULE_2__.AsyncIterableObject.EMPTY;\n }\n const position = new _common_core_position_js__WEBPACK_IMPORTED_MODULE_6__.Position(anchor.range.startLineNumber, anchor.range.startColumn);\n return (0,_getHover_js__WEBPACK_IMPORTED_MODULE_9__.getHover)(this._languageFeaturesService.hoverProvider, model, position, token)\n .filter(item => !(0,_base_common_htmlContent_js__WEBPACK_IMPORTED_MODULE_3__.isEmptyMarkdownString)(item.hover.contents))\n .map(item => {\n const rng = item.hover.range ? _common_core_range_js__WEBPACK_IMPORTED_MODULE_7__.Range.lift(item.hover.range) : anchor.range;\n return new MarkdownHover(this, rng, item.hover.contents, false, item.ordinal);\n });\n }\n renderHoverParts(context, hoverParts) {\n return renderMarkdownHovers(context, hoverParts, this._editor, this._languageService, this._openerService);\n }\n};\nMarkdownHoverParticipant = __decorate([\n __param(1, _common_languages_language_js__WEBPACK_IMPORTED_MODULE_8__.ILanguageService),\n __param(2, _platform_opener_common_opener_js__WEBPACK_IMPORTED_MODULE_12__.IOpenerService),\n __param(3, _platform_configuration_common_configuration_js__WEBPACK_IMPORTED_MODULE_11__.IConfigurationService),\n __param(4, _common_services_languageFeatures_js__WEBPACK_IMPORTED_MODULE_13__.ILanguageFeaturesService)\n], MarkdownHoverParticipant);\n\nfunction renderMarkdownHovers(context, hoverParts, editor, languageService, openerService) {\n // Sort hover parts to keep them stable since they might come in async, out-of-order\n hoverParts.sort((a, b) => a.ordinal - b.ordinal);\n const disposables = new _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_4__.DisposableStore();\n for (const hoverPart of hoverParts) {\n for (const contents of hoverPart.contents) {\n if ((0,_base_common_htmlContent_js__WEBPACK_IMPORTED_MODULE_3__.isEmptyMarkdownString)(contents)) {\n continue;\n }\n const markdownHoverElement = $('div.hover-row.markdown-hover');\n const hoverContentsElement = _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.append(markdownHoverElement, $('div.hover-contents'));\n const renderer = disposables.add(new _browser_widget_markdownRenderer_browser_markdownRenderer_js__WEBPACK_IMPORTED_MODULE_5__.MarkdownRenderer({ editor }, languageService, openerService));\n disposables.add(renderer.onDidRenderAsync(() => {\n hoverContentsElement.className = 'hover-contents code-hover-contents';\n context.onContentsChanged();\n }));\n const renderedContents = disposables.add(renderer.render(contents));\n hoverContentsElement.appendChild(renderedContents.element);\n context.fragment.appendChild(markdownHoverElement);\n }\n }\n return disposables;\n}\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/contrib/hover/browser/markdownHoverParticipant.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/contrib/hover/browser/markerHoverParticipant.js":
/*!**************************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/contrib/hover/browser/markerHoverParticipant.js ***!
\**************************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ MarkerHover: () => (/* binding */ MarkerHover),\n/* harmony export */ MarkerHoverParticipant: () => (/* binding */ MarkerHoverParticipant)\n/* harmony export */ });\n/* harmony import */ var _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../../base/browser/dom.js */ \"./node_modules/monaco-editor/esm/vs/base/browser/dom.js\");\n/* harmony import */ var _base_common_arrays_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../base/common/arrays.js */ \"./node_modules/monaco-editor/esm/vs/base/common/arrays.js\");\n/* harmony import */ var _base_common_async_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../../base/common/async.js */ \"./node_modules/monaco-editor/esm/vs/base/common/async.js\");\n/* harmony import */ var _base_common_errors_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../../../base/common/errors.js */ \"./node_modules/monaco-editor/esm/vs/base/common/errors.js\");\n/* harmony import */ var _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../../../base/common/lifecycle.js */ \"./node_modules/monaco-editor/esm/vs/base/common/lifecycle.js\");\n/* harmony import */ var _base_common_resources_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../../../../base/common/resources.js */ \"./node_modules/monaco-editor/esm/vs/base/common/resources.js\");\n/* harmony import */ var _common_core_range_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../../../common/core/range.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/core/range.js\");\n/* harmony import */ var _common_services_languageFeatures_js__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ../../../common/services/languageFeatures.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/services/languageFeatures.js\");\n/* harmony import */ var _common_services_markerDecorations_js__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ../../../common/services/markerDecorations.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/services/markerDecorations.js\");\n/* harmony import */ var _codeAction_browser_codeAction_js__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ../../codeAction/browser/codeAction.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/codeAction/browser/codeAction.js\");\n/* harmony import */ var _codeAction_browser_codeActionController_js__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! ../../codeAction/browser/codeActionController.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/codeAction/browser/codeActionController.js\");\n/* harmony import */ var _codeAction_common_types_js__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(/*! ../../codeAction/common/types.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/codeAction/common/types.js\");\n/* harmony import */ var _gotoError_browser_gotoError_js__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(/*! ../../gotoError/browser/gotoError.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/gotoError/browser/gotoError.js\");\n/* harmony import */ var _nls_js__WEBPACK_IMPORTED_MODULE_13__ = __webpack_require__(/*! ../../../../nls.js */ \"./node_modules/monaco-editor/esm/vs/nls.js\");\n/* harmony import */ var _platform_markers_common_markers_js__WEBPACK_IMPORTED_MODULE_14__ = __webpack_require__(/*! ../../../../platform/markers/common/markers.js */ \"./node_modules/monaco-editor/esm/vs/platform/markers/common/markers.js\");\n/* harmony import */ var _platform_opener_common_opener_js__WEBPACK_IMPORTED_MODULE_15__ = __webpack_require__(/*! ../../../../platform/opener/common/opener.js */ \"./node_modules/monaco-editor/esm/vs/platform/opener/common/opener.js\");\n/* harmony import */ var _platform_progress_common_progress_js__WEBPACK_IMPORTED_MODULE_16__ = __webpack_require__(/*! ../../../../platform/progress/common/progress.js */ \"./node_modules/monaco-editor/esm/vs/platform/progress/common/progress.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\nvar __decorate = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\n return c > 3 && r && Object.defineProperty(target, key, r), r;\n};\nvar __param = (undefined && undefined.__param) || function (paramIndex, decorator) {\n return function (target, key) { decorator(target, key, paramIndex); }\n};\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nconst $ = _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.$;\nclass MarkerHover {\n constructor(owner, range, marker) {\n this.owner = owner;\n this.range = range;\n this.marker = marker;\n }\n isValidForHoverAnchor(anchor) {\n return (anchor.type === 1 /* HoverAnchorType.Range */\n && this.range.startColumn <= anchor.range.startColumn\n && this.range.endColumn >= anchor.range.endColumn);\n }\n}\nconst markerCodeActionTrigger = {\n type: 1 /* CodeActionTriggerType.Invoke */,\n filter: { include: _codeAction_common_types_js__WEBPACK_IMPORTED_MODULE_11__.CodeActionKind.QuickFix },\n triggerAction: _codeAction_common_types_js__WEBPACK_IMPORTED_MODULE_11__.CodeActionTriggerSource.QuickFixHover\n};\nlet MarkerHoverParticipant = class MarkerHoverParticipant {\n constructor(_editor, _markerDecorationsService, _openerService, _languageFeaturesService) {\n this._editor = _editor;\n this._markerDecorationsService = _markerDecorationsService;\n this._openerService = _openerService;\n this._languageFeaturesService = _languageFeaturesService;\n this.hoverOrdinal = 1;\n this.recentMarkerCodeActionsInfo = undefined;\n }\n computeSync(anchor, lineDecorations) {\n if (!this._editor.hasModel() || anchor.type !== 1 /* HoverAnchorType.Range */ && !anchor.supportsMarkerHover) {\n return [];\n }\n const model = this._editor.getModel();\n const lineNumber = anchor.range.startLineNumber;\n const maxColumn = model.getLineMaxColumn(lineNumber);\n const result = [];\n for (const d of lineDecorations) {\n const startColumn = (d.range.startLineNumber === lineNumber) ? d.range.startColumn : 1;\n const endColumn = (d.range.endLineNumber === lineNumber) ? d.range.endColumn : maxColumn;\n const marker = this._markerDecorationsService.getMarker(model.uri, d);\n if (!marker) {\n continue;\n }\n const range = new _common_core_range_js__WEBPACK_IMPORTED_MODULE_6__.Range(anchor.range.startLineNumber, startColumn, anchor.range.startLineNumber, endColumn);\n result.push(new MarkerHover(this, range, marker));\n }\n return result;\n }\n renderHoverParts(context, hoverParts) {\n if (!hoverParts.length) {\n return _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_4__.Disposable.None;\n }\n const disposables = new _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_4__.DisposableStore();\n hoverParts.forEach(msg => context.fragment.appendChild(this.renderMarkerHover(msg, disposables)));\n const markerHoverForStatusbar = hoverParts.length === 1 ? hoverParts[0] : hoverParts.sort((a, b) => _platform_markers_common_markers_js__WEBPACK_IMPORTED_MODULE_14__.MarkerSeverity.compare(a.marker.severity, b.marker.severity))[0];\n this.renderMarkerStatusbar(context, markerHoverForStatusbar, disposables);\n return disposables;\n }\n renderMarkerHover(markerHover, disposables) {\n const hoverElement = $('div.hover-row');\n const markerElement = _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.append(hoverElement, $('div.marker.hover-contents'));\n const { source, message, code, relatedInformation } = markerHover.marker;\n this._editor.applyFontInfo(markerElement);\n const messageElement = _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.append(markerElement, $('span'));\n messageElement.style.whiteSpace = 'pre-wrap';\n messageElement.innerText = message;\n if (source || code) {\n // Code has link\n if (code && typeof code !== 'string') {\n const sourceAndCodeElement = $('span');\n if (source) {\n const sourceElement = _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.append(sourceAndCodeElement, $('span'));\n sourceElement.innerText = source;\n }\n const codeLink = _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.append(sourceAndCodeElement, $('a.code-link'));\n codeLink.setAttribute('href', code.target.toString());\n disposables.add(_base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.addDisposableListener(codeLink, 'click', (e) => {\n this._openerService.open(code.target, { allowCommands: true });\n e.preventDefault();\n e.stopPropagation();\n }));\n const codeElement = _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.append(codeLink, $('span'));\n codeElement.innerText = code.value;\n const detailsElement = _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.append(markerElement, sourceAndCodeElement);\n detailsElement.style.opacity = '0.6';\n detailsElement.style.paddingLeft = '6px';\n }\n else {\n const detailsElement = _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.append(markerElement, $('span'));\n detailsElement.style.opacity = '0.6';\n detailsElement.style.paddingLeft = '6px';\n detailsElement.innerText = source && code ? `${source}(${code})` : source ? source : `(${code})`;\n }\n }\n if ((0,_base_common_arrays_js__WEBPACK_IMPORTED_MODULE_1__.isNonEmptyArray)(relatedInformation)) {\n for (const { message, resource, startLineNumber, startColumn } of relatedInformation) {\n const relatedInfoContainer = _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.append(markerElement, $('div'));\n relatedInfoContainer.style.marginTop = '8px';\n const a = _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.append(relatedInfoContainer, $('a'));\n a.innerText = `${(0,_base_common_resources_js__WEBPACK_IMPORTED_MODULE_5__.basename)(resource)}(${startLineNumber}, ${startColumn}): `;\n a.style.cursor = 'pointer';\n disposables.add(_base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.addDisposableListener(a, 'click', (e) => {\n e.stopPropagation();\n e.preventDefault();\n if (this._openerService) {\n this._openerService.open(resource, {\n fromUserGesture: true,\n editorOptions: { selection: { startLineNumber, startColumn } }\n }).catch(_base_common_errors_js__WEBPACK_IMPORTED_MODULE_3__.onUnexpectedError);\n }\n }));\n const messageElement = _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.append(relatedInfoContainer, $('span'));\n messageElement.innerText = message;\n this._editor.applyFontInfo(messageElement);\n }\n }\n return hoverElement;\n }\n renderMarkerStatusbar(context, markerHover, disposables) {\n if (markerHover.marker.severity === _platform_markers_common_markers_js__WEBPACK_IMPORTED_MODULE_14__.MarkerSeverity.Error || markerHover.marker.severity === _platform_markers_common_markers_js__WEBPACK_IMPORTED_MODULE_14__.MarkerSeverity.Warning || markerHover.marker.severity === _platform_markers_common_markers_js__WEBPACK_IMPORTED_MODULE_14__.MarkerSeverity.Info) {\n const markerController = _gotoError_browser_gotoError_js__WEBPACK_IMPORTED_MODULE_12__.MarkerController.get(this._editor);\n if (markerController) {\n context.statusBar.addAction({\n label: _nls_js__WEBPACK_IMPORTED_MODULE_13__.localize('view problem', \"View Problem\"),\n commandId: _gotoError_browser_gotoError_js__WEBPACK_IMPORTED_MODULE_12__.NextMarkerAction.ID,\n run: () => {\n context.hide();\n markerController.showAtMarker(markerHover.marker);\n this._editor.focus();\n }\n });\n }\n }\n if (!this._editor.getOption(91 /* EditorOption.readOnly */)) {\n const quickfixPlaceholderElement = context.statusBar.append($('div'));\n if (this.recentMarkerCodeActionsInfo) {\n if (_platform_markers_common_markers_js__WEBPACK_IMPORTED_MODULE_14__.IMarkerData.makeKey(this.recentMarkerCodeActionsInfo.marker) === _platform_markers_common_markers_js__WEBPACK_IMPORTED_MODULE_14__.IMarkerData.makeKey(markerHover.marker)) {\n if (!this.recentMarkerCodeActionsInfo.hasCodeActions) {\n quickfixPlaceholderElement.textContent = _nls_js__WEBPACK_IMPORTED_MODULE_13__.localize('noQuickFixes', \"No quick fixes available\");\n }\n }\n else {\n this.recentMarkerCodeActionsInfo = undefined;\n }\n }\n const updatePlaceholderDisposable = this.recentMarkerCodeActionsInfo && !this.recentMarkerCodeActionsInfo.hasCodeActions ? _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_4__.Disposable.None : (0,_base_common_async_js__WEBPACK_IMPORTED_MODULE_2__.disposableTimeout)(() => quickfixPlaceholderElement.textContent = _nls_js__WEBPACK_IMPORTED_MODULE_13__.localize('checkingForQuickFixes', \"Checking for quick fixes...\"), 200, disposables);\n if (!quickfixPlaceholderElement.textContent) {\n // Have some content in here to avoid flickering\n quickfixPlaceholderElement.textContent = String.fromCharCode(0xA0); // \n }\n const codeActionsPromise = this.getCodeActions(markerHover.marker);\n disposables.add((0,_base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_4__.toDisposable)(() => codeActionsPromise.cancel()));\n codeActionsPromise.then(actions => {\n updatePlaceholderDisposable.dispose();\n this.recentMarkerCodeActionsInfo = { marker: markerHover.marker, hasCodeActions: actions.validActions.length > 0 };\n if (!this.recentMarkerCodeActionsInfo.hasCodeActions) {\n actions.dispose();\n quickfixPlaceholderElement.textContent = _nls_js__WEBPACK_IMPORTED_MODULE_13__.localize('noQuickFixes', \"No quick fixes available\");\n return;\n }\n quickfixPlaceholderElement.style.display = 'none';\n let showing = false;\n disposables.add((0,_base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_4__.toDisposable)(() => {\n if (!showing) {\n actions.dispose();\n }\n }));\n context.statusBar.addAction({\n label: _nls_js__WEBPACK_IMPORTED_MODULE_13__.localize('quick fixes', \"Quick Fix...\"),\n commandId: _codeAction_browser_codeAction_js__WEBPACK_IMPORTED_MODULE_9__.quickFixCommandId,\n run: (target) => {\n showing = true;\n const controller = _codeAction_browser_codeActionController_js__WEBPACK_IMPORTED_MODULE_10__.CodeActionController.get(this._editor);\n const elementPosition = _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.getDomNodePagePosition(target);\n // Hide the hover pre-emptively, otherwise the editor can close the code actions\n // context menu as well when using keyboard navigation\n context.hide();\n controller === null || controller === void 0 ? void 0 : controller.showCodeActions(markerCodeActionTrigger, actions, {\n x: elementPosition.left,\n y: elementPosition.top,\n width: elementPosition.width,\n height: elementPosition.height\n });\n }\n });\n }, _base_common_errors_js__WEBPACK_IMPORTED_MODULE_3__.onUnexpectedError);\n }\n }\n getCodeActions(marker) {\n return (0,_base_common_async_js__WEBPACK_IMPORTED_MODULE_2__.createCancelablePromise)(cancellationToken => {\n return (0,_codeAction_browser_codeAction_js__WEBPACK_IMPORTED_MODULE_9__.getCodeActions)(this._languageFeaturesService.codeActionProvider, this._editor.getModel(), new _common_core_range_js__WEBPACK_IMPORTED_MODULE_6__.Range(marker.startLineNumber, marker.startColumn, marker.endLineNumber, marker.endColumn), markerCodeActionTrigger, _platform_progress_common_progress_js__WEBPACK_IMPORTED_MODULE_16__.Progress.None, cancellationToken);\n });\n }\n};\nMarkerHoverParticipant = __decorate([\n __param(1, _common_services_markerDecorations_js__WEBPACK_IMPORTED_MODULE_8__.IMarkerDecorationsService),\n __param(2, _platform_opener_common_opener_js__WEBPACK_IMPORTED_MODULE_15__.IOpenerService),\n __param(3, _common_services_languageFeatures_js__WEBPACK_IMPORTED_MODULE_7__.ILanguageFeaturesService)\n], MarkerHoverParticipant);\n\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/contrib/hover/browser/markerHoverParticipant.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/contrib/hover/browser/resizableContentWidget.js":
/*!**************************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/contrib/hover/browser/resizableContentWidget.js ***!
\**************************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ ResizableContentWidget: () => (/* binding */ ResizableContentWidget)\n/* harmony export */ });\n/* harmony import */ var _base_browser_ui_resizable_resizable_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../../base/browser/ui/resizable/resizable.js */ \"./node_modules/monaco-editor/esm/vs/base/browser/ui/resizable/resizable.js\");\n/* harmony import */ var _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../base/common/lifecycle.js */ \"./node_modules/monaco-editor/esm/vs/base/common/lifecycle.js\");\n/* harmony import */ var _common_core_position_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../common/core/position.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/core/position.js\");\n/* harmony import */ var _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../../../base/browser/dom.js */ \"./node_modules/monaco-editor/esm/vs/base/browser/dom.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n\n\n\nconst TOP_HEIGHT = 30;\nconst BOTTOM_HEIGHT = 24;\nclass ResizableContentWidget extends _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_1__.Disposable {\n constructor(_editor, minimumSize = new _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_3__.Dimension(10, 10)) {\n super();\n this._editor = _editor;\n this.allowEditorOverflow = true;\n this.suppressMouseDown = false;\n this._resizableNode = this._register(new _base_browser_ui_resizable_resizable_js__WEBPACK_IMPORTED_MODULE_0__.ResizableHTMLElement());\n this._contentPosition = null;\n this._isResizing = false;\n this._resizableNode.domNode.style.position = 'absolute';\n this._resizableNode.minSize = _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_3__.Dimension.lift(minimumSize);\n this._resizableNode.layout(minimumSize.height, minimumSize.width);\n this._resizableNode.enableSashes(true, true, true, true);\n this._register(this._resizableNode.onDidResize(e => {\n this._resize(new _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_3__.Dimension(e.dimension.width, e.dimension.height));\n if (e.done) {\n this._isResizing = false;\n }\n }));\n this._register(this._resizableNode.onDidWillResize(() => {\n this._isResizing = true;\n }));\n }\n get isResizing() {\n return this._isResizing;\n }\n getDomNode() {\n return this._resizableNode.domNode;\n }\n getPosition() {\n return this._contentPosition;\n }\n get position() {\n var _a;\n return ((_a = this._contentPosition) === null || _a === void 0 ? void 0 : _a.position) ? _common_core_position_js__WEBPACK_IMPORTED_MODULE_2__.Position.lift(this._contentPosition.position) : undefined;\n }\n _availableVerticalSpaceAbove(position) {\n const editorDomNode = this._editor.getDomNode();\n const mouseBox = this._editor.getScrolledVisiblePosition(position);\n if (!editorDomNode || !mouseBox) {\n return;\n }\n const editorBox = _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_3__.getDomNodePagePosition(editorDomNode);\n return editorBox.top + mouseBox.top - TOP_HEIGHT;\n }\n _availableVerticalSpaceBelow(position) {\n const editorDomNode = this._editor.getDomNode();\n const mouseBox = this._editor.getScrolledVisiblePosition(position);\n if (!editorDomNode || !mouseBox) {\n return;\n }\n const editorBox = _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_3__.getDomNodePagePosition(editorDomNode);\n const bodyBox = _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_3__.getClientArea(editorDomNode.ownerDocument.body);\n const mouseBottom = editorBox.top + mouseBox.top + mouseBox.height;\n return bodyBox.height - mouseBottom - BOTTOM_HEIGHT;\n }\n _findPositionPreference(widgetHeight, showAtPosition) {\n var _a, _b;\n const maxHeightBelow = Math.min((_a = this._availableVerticalSpaceBelow(showAtPosition)) !== null && _a !== void 0 ? _a : Infinity, widgetHeight);\n const maxHeightAbove = Math.min((_b = this._availableVerticalSpaceAbove(showAtPosition)) !== null && _b !== void 0 ? _b : Infinity, widgetHeight);\n const maxHeight = Math.min(Math.max(maxHeightAbove, maxHeightBelow), widgetHeight);\n const height = Math.min(widgetHeight, maxHeight);\n let renderingAbove;\n if (this._editor.getOption(60 /* EditorOption.hover */).above) {\n renderingAbove = height <= maxHeightAbove ? 1 /* ContentWidgetPositionPreference.ABOVE */ : 2 /* ContentWidgetPositionPreference.BELOW */;\n }\n else {\n renderingAbove = height <= maxHeightBelow ? 2 /* ContentWidgetPositionPreference.BELOW */ : 1 /* ContentWidgetPositionPreference.ABOVE */;\n }\n if (renderingAbove === 1 /* ContentWidgetPositionPreference.ABOVE */) {\n this._resizableNode.enableSashes(true, true, false, false);\n }\n else {\n this._resizableNode.enableSashes(false, true, true, false);\n }\n return renderingAbove;\n }\n _resize(dimension) {\n this._resizableNode.layout(dimension.height, dimension.width);\n }\n}\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/contrib/hover/browser/resizableContentWidget.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/contrib/inPlaceReplace/browser/inPlaceReplace.js":
/*!***************************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/contrib/inPlaceReplace/browser/inPlaceReplace.js ***!
\***************************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var _base_common_async_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../../base/common/async.js */ \"./node_modules/monaco-editor/esm/vs/base/common/async.js\");\n/* harmony import */ var _base_common_errors_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../base/common/errors.js */ \"./node_modules/monaco-editor/esm/vs/base/common/errors.js\");\n/* harmony import */ var _editorState_browser_editorState_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../editorState/browser/editorState.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/editorState/browser/editorState.js\");\n/* harmony import */ var _browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../../browser/editorExtensions.js */ \"./node_modules/monaco-editor/esm/vs/editor/browser/editorExtensions.js\");\n/* harmony import */ var _common_core_range_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../../common/core/range.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/core/range.js\");\n/* harmony import */ var _common_core_selection_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../../../common/core/selection.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/core/selection.js\");\n/* harmony import */ var _common_editorContextKeys_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../../../common/editorContextKeys.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/editorContextKeys.js\");\n/* harmony import */ var _common_model_textModel_js__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ../../../common/model/textModel.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/model/textModel.js\");\n/* harmony import */ var _common_services_editorWorker_js__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ../../../common/services/editorWorker.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/services/editorWorker.js\");\n/* harmony import */ var _nls_js__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ../../../../nls.js */ \"./node_modules/monaco-editor/esm/vs/nls.js\");\n/* harmony import */ var _inPlaceReplaceCommand_js__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! ./inPlaceReplaceCommand.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/inPlaceReplace/browser/inPlaceReplaceCommand.js\");\n/* harmony import */ var _inPlaceReplace_css__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(/*! ./inPlaceReplace.css */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/inPlaceReplace/browser/inPlaceReplace.css\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\nvar __decorate = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\n return c > 3 && r && Object.defineProperty(target, key, r), r;\n};\nvar __param = (undefined && undefined.__param) || function (paramIndex, decorator) {\n return function (target, key) { decorator(target, key, paramIndex); }\n};\nvar InPlaceReplaceController_1;\n\n\n\n\n\n\n\n\n\n\n\n\nlet InPlaceReplaceController = InPlaceReplaceController_1 = class InPlaceReplaceController {\n static get(editor) {\n return editor.getContribution(InPlaceReplaceController_1.ID);\n }\n constructor(editor, editorWorkerService) {\n this.editor = editor;\n this.editorWorkerService = editorWorkerService;\n this.decorations = this.editor.createDecorationsCollection();\n }\n dispose() {\n }\n run(source, up) {\n var _a;\n // cancel any pending request\n (_a = this.currentRequest) === null || _a === void 0 ? void 0 : _a.cancel();\n const editorSelection = this.editor.getSelection();\n const model = this.editor.getModel();\n if (!model || !editorSelection) {\n return undefined;\n }\n let selection = editorSelection;\n if (selection.startLineNumber !== selection.endLineNumber) {\n // Can't accept multiline selection\n return undefined;\n }\n const state = new _editorState_browser_editorState_js__WEBPACK_IMPORTED_MODULE_2__.EditorState(this.editor, 1 /* CodeEditorStateFlag.Value */ | 4 /* CodeEditorStateFlag.Position */);\n const modelURI = model.uri;\n if (!this.editorWorkerService.canNavigateValueSet(modelURI)) {\n return Promise.resolve(undefined);\n }\n this.currentRequest = (0,_base_common_async_js__WEBPACK_IMPORTED_MODULE_0__.createCancelablePromise)(token => this.editorWorkerService.navigateValueSet(modelURI, selection, up));\n return this.currentRequest.then(result => {\n var _a;\n if (!result || !result.range || !result.value) {\n // No proper result\n return;\n }\n if (!state.validate(this.editor)) {\n // state has changed\n return;\n }\n // Selection\n const editRange = _common_core_range_js__WEBPACK_IMPORTED_MODULE_4__.Range.lift(result.range);\n let highlightRange = result.range;\n const diff = result.value.length - (selection.endColumn - selection.startColumn);\n // highlight\n highlightRange = {\n startLineNumber: highlightRange.startLineNumber,\n startColumn: highlightRange.startColumn,\n endLineNumber: highlightRange.endLineNumber,\n endColumn: highlightRange.startColumn + result.value.length\n };\n if (diff > 1) {\n selection = new _common_core_selection_js__WEBPACK_IMPORTED_MODULE_5__.Selection(selection.startLineNumber, selection.startColumn, selection.endLineNumber, selection.endColumn + diff - 1);\n }\n // Insert new text\n const command = new _inPlaceReplaceCommand_js__WEBPACK_IMPORTED_MODULE_10__.InPlaceReplaceCommand(editRange, selection, result.value);\n this.editor.pushUndoStop();\n this.editor.executeCommand(source, command);\n this.editor.pushUndoStop();\n // add decoration\n this.decorations.set([{\n range: highlightRange,\n options: InPlaceReplaceController_1.DECORATION\n }]);\n // remove decoration after delay\n (_a = this.decorationRemover) === null || _a === void 0 ? void 0 : _a.cancel();\n this.decorationRemover = (0,_base_common_async_js__WEBPACK_IMPORTED_MODULE_0__.timeout)(350);\n this.decorationRemover.then(() => this.decorations.clear()).catch(_base_common_errors_js__WEBPACK_IMPORTED_MODULE_1__.onUnexpectedError);\n }).catch(_base_common_errors_js__WEBPACK_IMPORTED_MODULE_1__.onUnexpectedError);\n }\n};\nInPlaceReplaceController.ID = 'editor.contrib.inPlaceReplaceController';\nInPlaceReplaceController.DECORATION = _common_model_textModel_js__WEBPACK_IMPORTED_MODULE_7__.ModelDecorationOptions.register({\n description: 'in-place-replace',\n className: 'valueSetReplacement'\n});\nInPlaceReplaceController = InPlaceReplaceController_1 = __decorate([\n __param(1, _common_services_editorWorker_js__WEBPACK_IMPORTED_MODULE_8__.IEditorWorkerService)\n], InPlaceReplaceController);\nclass InPlaceReplaceUp extends _browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_3__.EditorAction {\n constructor() {\n super({\n id: 'editor.action.inPlaceReplace.up',\n label: _nls_js__WEBPACK_IMPORTED_MODULE_9__.localize('InPlaceReplaceAction.previous.label', \"Replace with Previous Value\"),\n alias: 'Replace with Previous Value',\n precondition: _common_editorContextKeys_js__WEBPACK_IMPORTED_MODULE_6__.EditorContextKeys.writable,\n kbOpts: {\n kbExpr: _common_editorContextKeys_js__WEBPACK_IMPORTED_MODULE_6__.EditorContextKeys.editorTextFocus,\n primary: 2048 /* KeyMod.CtrlCmd */ | 1024 /* KeyMod.Shift */ | 87 /* KeyCode.Comma */,\n weight: 100 /* KeybindingWeight.EditorContrib */\n }\n });\n }\n run(accessor, editor) {\n const controller = InPlaceReplaceController.get(editor);\n if (!controller) {\n return Promise.resolve(undefined);\n }\n return controller.run(this.id, false);\n }\n}\nclass InPlaceReplaceDown extends _browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_3__.EditorAction {\n constructor() {\n super({\n id: 'editor.action.inPlaceReplace.down',\n label: _nls_js__WEBPACK_IMPORTED_MODULE_9__.localize('InPlaceReplaceAction.next.label', \"Replace with Next Value\"),\n alias: 'Replace with Next Value',\n precondition: _common_editorContextKeys_js__WEBPACK_IMPORTED_MODULE_6__.EditorContextKeys.writable,\n kbOpts: {\n kbExpr: _common_editorContextKeys_js__WEBPACK_IMPORTED_MODULE_6__.EditorContextKeys.editorTextFocus,\n primary: 2048 /* KeyMod.CtrlCmd */ | 1024 /* KeyMod.Shift */ | 89 /* KeyCode.Period */,\n weight: 100 /* KeybindingWeight.EditorContrib */\n }\n });\n }\n run(accessor, editor) {\n const controller = InPlaceReplaceController.get(editor);\n if (!controller) {\n return Promise.resolve(undefined);\n }\n return controller.run(this.id, true);\n }\n}\n(0,_browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_3__.registerEditorContribution)(InPlaceReplaceController.ID, InPlaceReplaceController, 4 /* EditorContributionInstantiation.Lazy */);\n(0,_browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_3__.registerEditorAction)(InPlaceReplaceUp);\n(0,_browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_3__.registerEditorAction)(InPlaceReplaceDown);\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/contrib/inPlaceReplace/browser/inPlaceReplace.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/contrib/inPlaceReplace/browser/inPlaceReplaceCommand.js":
/*!**********************************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/contrib/inPlaceReplace/browser/inPlaceReplaceCommand.js ***!
\**********************************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ InPlaceReplaceCommand: () => (/* binding */ InPlaceReplaceCommand)\n/* harmony export */ });\n/* harmony import */ var _common_core_selection_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../common/core/selection.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/core/selection.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\nclass InPlaceReplaceCommand {\n constructor(editRange, originalSelection, text) {\n this._editRange = editRange;\n this._originalSelection = originalSelection;\n this._text = text;\n }\n getEditOperations(model, builder) {\n builder.addTrackedEditOperation(this._editRange, this._text);\n }\n computeCursorState(model, helper) {\n const inverseEditOperations = helper.getInverseEditOperations();\n const srcRange = inverseEditOperations[0].range;\n if (!this._originalSelection.isEmpty()) {\n // Preserve selection and extends to typed text\n return new _common_core_selection_js__WEBPACK_IMPORTED_MODULE_0__.Selection(srcRange.endLineNumber, srcRange.endColumn - this._text.length, srcRange.endLineNumber, srcRange.endColumn);\n }\n return new _common_core_selection_js__WEBPACK_IMPORTED_MODULE_0__.Selection(srcRange.endLineNumber, Math.min(this._originalSelection.positionColumn, srcRange.endColumn), srcRange.endLineNumber, Math.min(this._originalSelection.positionColumn, srcRange.endColumn));\n }\n}\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/contrib/inPlaceReplace/browser/inPlaceReplaceCommand.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/contrib/indentation/browser/indentUtils.js":
/*!*********************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/contrib/indentation/browser/indentUtils.js ***!
\*********************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ generateIndent: () => (/* binding */ generateIndent),\n/* harmony export */ getSpaceCnt: () => (/* binding */ getSpaceCnt)\n/* harmony export */ });\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\nfunction getSpaceCnt(str, tabSize) {\n let spacesCnt = 0;\n for (let i = 0; i < str.length; i++) {\n if (str.charAt(i) === '\\t') {\n spacesCnt += tabSize;\n }\n else {\n spacesCnt++;\n }\n }\n return spacesCnt;\n}\nfunction generateIndent(spacesCnt, tabSize, insertSpaces) {\n spacesCnt = spacesCnt < 0 ? 0 : spacesCnt;\n let result = '';\n if (!insertSpaces) {\n const tabsCnt = Math.floor(spacesCnt / tabSize);\n spacesCnt = spacesCnt % tabSize;\n for (let i = 0; i < tabsCnt; i++) {\n result += '\\t';\n }\n }\n for (let i = 0; i < spacesCnt; i++) {\n result += ' ';\n }\n return result;\n}\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/contrib/indentation/browser/indentUtils.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/contrib/indentation/browser/indentation.js":
/*!*********************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/contrib/indentation/browser/indentation.js ***!
\*********************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ AutoIndentOnPaste: () => (/* binding */ AutoIndentOnPaste),\n/* harmony export */ AutoIndentOnPasteCommand: () => (/* binding */ AutoIndentOnPasteCommand),\n/* harmony export */ ChangeIndentationSizeAction: () => (/* binding */ ChangeIndentationSizeAction),\n/* harmony export */ ChangeTabDisplaySize: () => (/* binding */ ChangeTabDisplaySize),\n/* harmony export */ DetectIndentation: () => (/* binding */ DetectIndentation),\n/* harmony export */ IndentUsingSpaces: () => (/* binding */ IndentUsingSpaces),\n/* harmony export */ IndentUsingTabs: () => (/* binding */ IndentUsingTabs),\n/* harmony export */ IndentationToSpacesAction: () => (/* binding */ IndentationToSpacesAction),\n/* harmony export */ IndentationToSpacesCommand: () => (/* binding */ IndentationToSpacesCommand),\n/* harmony export */ IndentationToTabsAction: () => (/* binding */ IndentationToTabsAction),\n/* harmony export */ IndentationToTabsCommand: () => (/* binding */ IndentationToTabsCommand),\n/* harmony export */ ReindentLinesAction: () => (/* binding */ ReindentLinesAction),\n/* harmony export */ ReindentSelectedLinesAction: () => (/* binding */ ReindentSelectedLinesAction),\n/* harmony export */ getReindentEditOperations: () => (/* binding */ getReindentEditOperations)\n/* harmony export */ });\n/* harmony import */ var _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../../base/common/lifecycle.js */ \"./node_modules/monaco-editor/esm/vs/base/common/lifecycle.js\");\n/* harmony import */ var _base_common_strings_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../base/common/strings.js */ \"./node_modules/monaco-editor/esm/vs/base/common/strings.js\");\n/* harmony import */ var _browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../browser/editorExtensions.js */ \"./node_modules/monaco-editor/esm/vs/editor/browser/editorExtensions.js\");\n/* harmony import */ var _common_commands_shiftCommand_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../../common/commands/shiftCommand.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/commands/shiftCommand.js\");\n/* harmony import */ var _common_core_editOperation_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../../common/core/editOperation.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/core/editOperation.js\");\n/* harmony import */ var _common_core_range_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../../../common/core/range.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/core/range.js\");\n/* harmony import */ var _common_core_selection_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../../../common/core/selection.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/core/selection.js\");\n/* harmony import */ var _common_editorContextKeys_js__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ../../../common/editorContextKeys.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/editorContextKeys.js\");\n/* harmony import */ var _common_languages_languageConfigurationRegistry_js__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ../../../common/languages/languageConfigurationRegistry.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/languages/languageConfigurationRegistry.js\");\n/* harmony import */ var _common_services_model_js__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ../../../common/services/model.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/services/model.js\");\n/* harmony import */ var _indentUtils_js__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! ./indentUtils.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/indentation/browser/indentUtils.js\");\n/* harmony import */ var _nls_js__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(/*! ../../../../nls.js */ \"./node_modules/monaco-editor/esm/vs/nls.js\");\n/* harmony import */ var _platform_quickinput_common_quickInput_js__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(/*! ../../../../platform/quickinput/common/quickInput.js */ \"./node_modules/monaco-editor/esm/vs/platform/quickinput/common/quickInput.js\");\n/* harmony import */ var _common_core_indentation_js__WEBPACK_IMPORTED_MODULE_13__ = __webpack_require__(/*! ../../../common/core/indentation.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/core/indentation.js\");\n/* harmony import */ var _common_languages_autoIndent_js__WEBPACK_IMPORTED_MODULE_14__ = __webpack_require__(/*! ../../../common/languages/autoIndent.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/languages/autoIndent.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\nvar __decorate = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\n return c > 3 && r && Object.defineProperty(target, key, r), r;\n};\nvar __param = (undefined && undefined.__param) || function (paramIndex, decorator) {\n return function (target, key) { decorator(target, key, paramIndex); }\n};\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nfunction getReindentEditOperations(model, languageConfigurationService, startLineNumber, endLineNumber, inheritedIndent) {\n if (model.getLineCount() === 1 && model.getLineMaxColumn(1) === 1) {\n // Model is empty\n return [];\n }\n const indentationRules = languageConfigurationService.getLanguageConfiguration(model.getLanguageId()).indentationRules;\n if (!indentationRules) {\n return [];\n }\n endLineNumber = Math.min(endLineNumber, model.getLineCount());\n // Skip `unIndentedLinePattern` lines\n while (startLineNumber <= endLineNumber) {\n if (!indentationRules.unIndentedLinePattern) {\n break;\n }\n const text = model.getLineContent(startLineNumber);\n if (!indentationRules.unIndentedLinePattern.test(text)) {\n break;\n }\n startLineNumber++;\n }\n if (startLineNumber > endLineNumber - 1) {\n return [];\n }\n const { tabSize, indentSize, insertSpaces } = model.getOptions();\n const shiftIndent = (indentation, count) => {\n count = count || 1;\n return _common_commands_shiftCommand_js__WEBPACK_IMPORTED_MODULE_3__.ShiftCommand.shiftIndent(indentation, indentation.length + count, tabSize, indentSize, insertSpaces);\n };\n const unshiftIndent = (indentation, count) => {\n count = count || 1;\n return _common_commands_shiftCommand_js__WEBPACK_IMPORTED_MODULE_3__.ShiftCommand.unshiftIndent(indentation, indentation.length + count, tabSize, indentSize, insertSpaces);\n };\n const indentEdits = [];\n // indentation being passed to lines below\n let globalIndent;\n // Calculate indentation for the first line\n // If there is no passed-in indentation, we use the indentation of the first line as base.\n const currentLineText = model.getLineContent(startLineNumber);\n let adjustedLineContent = currentLineText;\n if (inheritedIndent !== undefined && inheritedIndent !== null) {\n globalIndent = inheritedIndent;\n const oldIndentation = _base_common_strings_js__WEBPACK_IMPORTED_MODULE_1__.getLeadingWhitespace(currentLineText);\n adjustedLineContent = globalIndent + currentLineText.substring(oldIndentation.length);\n if (indentationRules.decreaseIndentPattern && indentationRules.decreaseIndentPattern.test(adjustedLineContent)) {\n globalIndent = unshiftIndent(globalIndent);\n adjustedLineContent = globalIndent + currentLineText.substring(oldIndentation.length);\n }\n if (currentLineText !== adjustedLineContent) {\n indentEdits.push(_common_core_editOperation_js__WEBPACK_IMPORTED_MODULE_4__.EditOperation.replaceMove(new _common_core_selection_js__WEBPACK_IMPORTED_MODULE_6__.Selection(startLineNumber, 1, startLineNumber, oldIndentation.length + 1), (0,_common_core_indentation_js__WEBPACK_IMPORTED_MODULE_13__.normalizeIndentation)(globalIndent, indentSize, insertSpaces)));\n }\n }\n else {\n globalIndent = _base_common_strings_js__WEBPACK_IMPORTED_MODULE_1__.getLeadingWhitespace(currentLineText);\n }\n // idealIndentForNextLine doesn't equal globalIndent when there is a line matching `indentNextLinePattern`.\n let idealIndentForNextLine = globalIndent;\n if (indentationRules.increaseIndentPattern && indentationRules.increaseIndentPattern.test(adjustedLineContent)) {\n idealIndentForNextLine = shiftIndent(idealIndentForNextLine);\n globalIndent = shiftIndent(globalIndent);\n }\n else if (indentationRules.indentNextLinePattern && indentationRules.indentNextLinePattern.test(adjustedLineContent)) {\n idealIndentForNextLine = shiftIndent(idealIndentForNextLine);\n }\n startLineNumber++;\n // Calculate indentation adjustment for all following lines\n for (let lineNumber = startLineNumber; lineNumber <= endLineNumber; lineNumber++) {\n const text = model.getLineContent(lineNumber);\n const oldIndentation = _base_common_strings_js__WEBPACK_IMPORTED_MODULE_1__.getLeadingWhitespace(text);\n const adjustedLineContent = idealIndentForNextLine + text.substring(oldIndentation.length);\n if (indentationRules.decreaseIndentPattern && indentationRules.decreaseIndentPattern.test(adjustedLineContent)) {\n idealIndentForNextLine = unshiftIndent(idealIndentForNextLine);\n globalIndent = unshiftIndent(globalIndent);\n }\n if (oldIndentation !== idealIndentForNextLine) {\n indentEdits.push(_common_core_editOperation_js__WEBPACK_IMPORTED_MODULE_4__.EditOperation.replaceMove(new _common_core_selection_js__WEBPACK_IMPORTED_MODULE_6__.Selection(lineNumber, 1, lineNumber, oldIndentation.length + 1), (0,_common_core_indentation_js__WEBPACK_IMPORTED_MODULE_13__.normalizeIndentation)(idealIndentForNextLine, indentSize, insertSpaces)));\n }\n // calculate idealIndentForNextLine\n if (indentationRules.unIndentedLinePattern && indentationRules.unIndentedLinePattern.test(text)) {\n // In reindent phase, if the line matches `unIndentedLinePattern` we inherit indentation from above lines\n // but don't change globalIndent and idealIndentForNextLine.\n continue;\n }\n else if (indentationRules.increaseIndentPattern && indentationRules.increaseIndentPattern.test(adjustedLineContent)) {\n globalIndent = shiftIndent(globalIndent);\n idealIndentForNextLine = globalIndent;\n }\n else if (indentationRules.indentNextLinePattern && indentationRules.indentNextLinePattern.test(adjustedLineContent)) {\n idealIndentForNextLine = shiftIndent(idealIndentForNextLine);\n }\n else {\n idealIndentForNextLine = globalIndent;\n }\n }\n return indentEdits;\n}\nclass IndentationToSpacesAction extends _browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_2__.EditorAction {\n constructor() {\n super({\n id: IndentationToSpacesAction.ID,\n label: _nls_js__WEBPACK_IMPORTED_MODULE_11__.localize('indentationToSpaces', \"Convert Indentation to Spaces\"),\n alias: 'Convert Indentation to Spaces',\n precondition: _common_editorContextKeys_js__WEBPACK_IMPORTED_MODULE_7__.EditorContextKeys.writable\n });\n }\n run(accessor, editor) {\n const model = editor.getModel();\n if (!model) {\n return;\n }\n const modelOpts = model.getOptions();\n const selection = editor.getSelection();\n if (!selection) {\n return;\n }\n const command = new IndentationToSpacesCommand(selection, modelOpts.tabSize);\n editor.pushUndoStop();\n editor.executeCommands(this.id, [command]);\n editor.pushUndoStop();\n model.updateOptions({\n insertSpaces: true\n });\n }\n}\nIndentationToSpacesAction.ID = 'editor.action.indentationToSpaces';\nclass IndentationToTabsAction extends _browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_2__.EditorAction {\n constructor() {\n super({\n id: IndentationToTabsAction.ID,\n label: _nls_js__WEBPACK_IMPORTED_MODULE_11__.localize('indentationToTabs', \"Convert Indentation to Tabs\"),\n alias: 'Convert Indentation to Tabs',\n precondition: _common_editorContextKeys_js__WEBPACK_IMPORTED_MODULE_7__.EditorContextKeys.writable\n });\n }\n run(accessor, editor) {\n const model = editor.getModel();\n if (!model) {\n return;\n }\n const modelOpts = model.getOptions();\n const selection = editor.getSelection();\n if (!selection) {\n return;\n }\n const command = new IndentationToTabsCommand(selection, modelOpts.tabSize);\n editor.pushUndoStop();\n editor.executeCommands(this.id, [command]);\n editor.pushUndoStop();\n model.updateOptions({\n insertSpaces: false\n });\n }\n}\nIndentationToTabsAction.ID = 'editor.action.indentationToTabs';\nclass ChangeIndentationSizeAction extends _browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_2__.EditorAction {\n constructor(insertSpaces, displaySizeOnly, opts) {\n super(opts);\n this.insertSpaces = insertSpaces;\n this.displaySizeOnly = displaySizeOnly;\n }\n run(accessor, editor) {\n const quickInputService = accessor.get(_platform_quickinput_common_quickInput_js__WEBPACK_IMPORTED_MODULE_12__.IQuickInputService);\n const modelService = accessor.get(_common_services_model_js__WEBPACK_IMPORTED_MODULE_9__.IModelService);\n const model = editor.getModel();\n if (!model) {\n return;\n }\n const creationOpts = modelService.getCreationOptions(model.getLanguageId(), model.uri, model.isForSimpleWidget);\n const modelOpts = model.getOptions();\n const picks = [1, 2, 3, 4, 5, 6, 7, 8].map(n => ({\n id: n.toString(),\n label: n.toString(),\n // add description for tabSize value set in the configuration\n description: (n === creationOpts.tabSize && n === modelOpts.tabSize\n ? _nls_js__WEBPACK_IMPORTED_MODULE_11__.localize('configuredTabSize', \"Configured Tab Size\")\n : n === creationOpts.tabSize\n ? _nls_js__WEBPACK_IMPORTED_MODULE_11__.localize('defaultTabSize', \"Default Tab Size\")\n : n === modelOpts.tabSize\n ? _nls_js__WEBPACK_IMPORTED_MODULE_11__.localize('currentTabSize', \"Current Tab Size\")\n : undefined)\n }));\n // auto focus the tabSize set for the current editor\n const autoFocusIndex = Math.min(model.getOptions().tabSize - 1, 7);\n setTimeout(() => {\n quickInputService.pick(picks, { placeHolder: _nls_js__WEBPACK_IMPORTED_MODULE_11__.localize({ key: 'selectTabWidth', comment: ['Tab corresponds to the tab key'] }, \"Select Tab Size for Current File\"), activeItem: picks[autoFocusIndex] }).then(pick => {\n if (pick) {\n if (model && !model.isDisposed()) {\n const pickedVal = parseInt(pick.label, 10);\n if (this.displaySizeOnly) {\n model.updateOptions({\n tabSize: pickedVal\n });\n }\n else {\n model.updateOptions({\n tabSize: pickedVal,\n indentSize: pickedVal,\n insertSpaces: this.insertSpaces\n });\n }\n }\n }\n });\n }, 50 /* quick input is sensitive to being opened so soon after another */);\n }\n}\nclass IndentUsingTabs extends ChangeIndentationSizeAction {\n constructor() {\n super(false, false, {\n id: IndentUsingTabs.ID,\n label: _nls_js__WEBPACK_IMPORTED_MODULE_11__.localize('indentUsingTabs', \"Indent Using Tabs\"),\n alias: 'Indent Using Tabs',\n precondition: undefined\n });\n }\n}\nIndentUsingTabs.ID = 'editor.action.indentUsingTabs';\nclass IndentUsingSpaces extends ChangeIndentationSizeAction {\n constructor() {\n super(true, false, {\n id: IndentUsingSpaces.ID,\n label: _nls_js__WEBPACK_IMPORTED_MODULE_11__.localize('indentUsingSpaces', \"Indent Using Spaces\"),\n alias: 'Indent Using Spaces',\n precondition: undefined\n });\n }\n}\nIndentUsingSpaces.ID = 'editor.action.indentUsingSpaces';\nclass ChangeTabDisplaySize extends ChangeIndentationSizeAction {\n constructor() {\n super(true, true, {\n id: ChangeTabDisplaySize.ID,\n label: _nls_js__WEBPACK_IMPORTED_MODULE_11__.localize('changeTabDisplaySize', \"Change Tab Display Size\"),\n alias: 'Change Tab Display Size',\n precondition: undefined\n });\n }\n}\nChangeTabDisplaySize.ID = 'editor.action.changeTabDisplaySize';\nclass DetectIndentation extends _browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_2__.EditorAction {\n constructor() {\n super({\n id: DetectIndentation.ID,\n label: _nls_js__WEBPACK_IMPORTED_MODULE_11__.localize('detectIndentation', \"Detect Indentation from Content\"),\n alias: 'Detect Indentation from Content',\n precondition: undefined\n });\n }\n run(accessor, editor) {\n const modelService = accessor.get(_common_services_model_js__WEBPACK_IMPORTED_MODULE_9__.IModelService);\n const model = editor.getModel();\n if (!model) {\n return;\n }\n const creationOpts = modelService.getCreationOptions(model.getLanguageId(), model.uri, model.isForSimpleWidget);\n model.detectIndentation(creationOpts.insertSpaces, creationOpts.tabSize);\n }\n}\nDetectIndentation.ID = 'editor.action.detectIndentation';\nclass ReindentLinesAction extends _browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_2__.EditorAction {\n constructor() {\n super({\n id: 'editor.action.reindentlines',\n label: _nls_js__WEBPACK_IMPORTED_MODULE_11__.localize('editor.reindentlines', \"Reindent Lines\"),\n alias: 'Reindent Lines',\n precondition: _common_editorContextKeys_js__WEBPACK_IMPORTED_MODULE_7__.EditorContextKeys.writable\n });\n }\n run(accessor, editor) {\n const languageConfigurationService = accessor.get(_common_languages_languageConfigurationRegistry_js__WEBPACK_IMPORTED_MODULE_8__.ILanguageConfigurationService);\n const model = editor.getModel();\n if (!model) {\n return;\n }\n const edits = getReindentEditOperations(model, languageConfigurationService, 1, model.getLineCount());\n if (edits.length > 0) {\n editor.pushUndoStop();\n editor.executeEdits(this.id, edits);\n editor.pushUndoStop();\n }\n }\n}\nclass ReindentSelectedLinesAction extends _browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_2__.EditorAction {\n constructor() {\n super({\n id: 'editor.action.reindentselectedlines',\n label: _nls_js__WEBPACK_IMPORTED_MODULE_11__.localize('editor.reindentselectedlines', \"Reindent Selected Lines\"),\n alias: 'Reindent Selected Lines',\n precondition: _common_editorContextKeys_js__WEBPACK_IMPORTED_MODULE_7__.EditorContextKeys.writable\n });\n }\n run(accessor, editor) {\n const languageConfigurationService = accessor.get(_common_languages_languageConfigurationRegistry_js__WEBPACK_IMPORTED_MODULE_8__.ILanguageConfigurationService);\n const model = editor.getModel();\n if (!model) {\n return;\n }\n const selections = editor.getSelections();\n if (selections === null) {\n return;\n }\n const edits = [];\n for (const selection of selections) {\n let startLineNumber = selection.startLineNumber;\n let endLineNumber = selection.endLineNumber;\n if (startLineNumber !== endLineNumber && selection.endColumn === 1) {\n endLineNumber--;\n }\n if (startLineNumber === 1) {\n if (startLineNumber === endLineNumber) {\n continue;\n }\n }\n else {\n startLineNumber--;\n }\n const editOperations = getReindentEditOperations(model, languageConfigurationService, startLineNumber, endLineNumber);\n edits.push(...editOperations);\n }\n if (edits.length > 0) {\n editor.pushUndoStop();\n editor.executeEdits(this.id, edits);\n editor.pushUndoStop();\n }\n }\n}\nclass AutoIndentOnPasteCommand {\n constructor(edits, initialSelection) {\n this._initialSelection = initialSelection;\n this._edits = [];\n this._selectionId = null;\n for (const edit of edits) {\n if (edit.range && typeof edit.text === 'string') {\n this._edits.push(edit);\n }\n }\n }\n getEditOperations(model, builder) {\n for (const edit of this._edits) {\n builder.addEditOperation(_common_core_range_js__WEBPACK_IMPORTED_MODULE_5__.Range.lift(edit.range), edit.text);\n }\n let selectionIsSet = false;\n if (Array.isArray(this._edits) && this._edits.length === 1 && this._initialSelection.isEmpty()) {\n if (this._edits[0].range.startColumn === this._initialSelection.endColumn &&\n this._edits[0].range.startLineNumber === this._initialSelection.endLineNumber) {\n selectionIsSet = true;\n this._selectionId = builder.trackSelection(this._initialSelection, true);\n }\n else if (this._edits[0].range.endColumn === this._initialSelection.startColumn &&\n this._edits[0].range.endLineNumber === this._initialSelection.startLineNumber) {\n selectionIsSet = true;\n this._selectionId = builder.trackSelection(this._initialSelection, false);\n }\n }\n if (!selectionIsSet) {\n this._selectionId = builder.trackSelection(this._initialSelection);\n }\n }\n computeCursorState(model, helper) {\n return helper.getTrackedSelection(this._selectionId);\n }\n}\nlet AutoIndentOnPaste = class AutoIndentOnPaste {\n constructor(editor, _languageConfigurationService) {\n this.editor = editor;\n this._languageConfigurationService = _languageConfigurationService;\n this.callOnDispose = new _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_0__.DisposableStore();\n this.callOnModel = new _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_0__.DisposableStore();\n this.callOnDispose.add(editor.onDidChangeConfiguration(() => this.update()));\n this.callOnDispose.add(editor.onDidChangeModel(() => this.update()));\n this.callOnDispose.add(editor.onDidChangeModelLanguage(() => this.update()));\n }\n update() {\n // clean up\n this.callOnModel.clear();\n // we are disabled\n if (this.editor.getOption(12 /* EditorOption.autoIndent */) < 4 /* EditorAutoIndentStrategy.Full */ || this.editor.getOption(55 /* EditorOption.formatOnPaste */)) {\n return;\n }\n // no model\n if (!this.editor.hasModel()) {\n return;\n }\n this.callOnModel.add(this.editor.onDidPaste(({ range }) => {\n this.trigger(range);\n }));\n }\n trigger(range) {\n const selections = this.editor.getSelections();\n if (selections === null || selections.length > 1) {\n return;\n }\n const model = this.editor.getModel();\n if (!model) {\n return;\n }\n if (!model.tokenization.isCheapToTokenize(range.getStartPosition().lineNumber)) {\n return;\n }\n const autoIndent = this.editor.getOption(12 /* EditorOption.autoIndent */);\n const { tabSize, indentSize, insertSpaces } = model.getOptions();\n const textEdits = [];\n const indentConverter = {\n shiftIndent: (indentation) => {\n return _common_commands_shiftCommand_js__WEBPACK_IMPORTED_MODULE_3__.ShiftCommand.shiftIndent(indentation, indentation.length + 1, tabSize, indentSize, insertSpaces);\n },\n unshiftIndent: (indentation) => {\n return _common_commands_shiftCommand_js__WEBPACK_IMPORTED_MODULE_3__.ShiftCommand.unshiftIndent(indentation, indentation.length + 1, tabSize, indentSize, insertSpaces);\n }\n };\n let startLineNumber = range.startLineNumber;\n while (startLineNumber <= range.endLineNumber) {\n if (this.shouldIgnoreLine(model, startLineNumber)) {\n startLineNumber++;\n continue;\n }\n break;\n }\n if (startLineNumber > range.endLineNumber) {\n return;\n }\n let firstLineText = model.getLineContent(startLineNumber);\n if (!/\\S/.test(firstLineText.substring(0, range.startColumn - 1))) {\n const indentOfFirstLine = (0,_common_languages_autoIndent_js__WEBPACK_IMPORTED_MODULE_14__.getGoodIndentForLine)(autoIndent, model, model.getLanguageId(), startLineNumber, indentConverter, this._languageConfigurationService);\n if (indentOfFirstLine !== null) {\n const oldIndentation = _base_common_strings_js__WEBPACK_IMPORTED_MODULE_1__.getLeadingWhitespace(firstLineText);\n const newSpaceCnt = _indentUtils_js__WEBPACK_IMPORTED_MODULE_10__.getSpaceCnt(indentOfFirstLine, tabSize);\n const oldSpaceCnt = _indentUtils_js__WEBPACK_IMPORTED_MODULE_10__.getSpaceCnt(oldIndentation, tabSize);\n if (newSpaceCnt !== oldSpaceCnt) {\n const newIndent = _indentUtils_js__WEBPACK_IMPORTED_MODULE_10__.generateIndent(newSpaceCnt, tabSize, insertSpaces);\n textEdits.push({\n range: new _common_core_range_js__WEBPACK_IMPORTED_MODULE_5__.Range(startLineNumber, 1, startLineNumber, oldIndentation.length + 1),\n text: newIndent\n });\n firstLineText = newIndent + firstLineText.substr(oldIndentation.length);\n }\n else {\n const indentMetadata = (0,_common_languages_autoIndent_js__WEBPACK_IMPORTED_MODULE_14__.getIndentMetadata)(model, startLineNumber, this._languageConfigurationService);\n if (indentMetadata === 0 || indentMetadata === 8 /* IndentConsts.UNINDENT_MASK */) {\n // we paste content into a line where only contains whitespaces\n // after pasting, the indentation of the first line is already correct\n // the first line doesn't match any indentation rule\n // then no-op.\n return;\n }\n }\n }\n }\n const firstLineNumber = startLineNumber;\n // ignore empty or ignored lines\n while (startLineNumber < range.endLineNumber) {\n if (!/\\S/.test(model.getLineContent(startLineNumber + 1))) {\n startLineNumber++;\n continue;\n }\n break;\n }\n if (startLineNumber !== range.endLineNumber) {\n const virtualModel = {\n tokenization: {\n getLineTokens: (lineNumber) => {\n return model.tokenization.getLineTokens(lineNumber);\n },\n getLanguageId: () => {\n return model.getLanguageId();\n },\n getLanguageIdAtPosition: (lineNumber, column) => {\n return model.getLanguageIdAtPosition(lineNumber, column);\n },\n },\n getLineContent: (lineNumber) => {\n if (lineNumber === firstLineNumber) {\n return firstLineText;\n }\n else {\n return model.getLineContent(lineNumber);\n }\n }\n };\n const indentOfSecondLine = (0,_common_languages_autoIndent_js__WEBPACK_IMPORTED_MODULE_14__.getGoodIndentForLine)(autoIndent, virtualModel, model.getLanguageId(), startLineNumber + 1, indentConverter, this._languageConfigurationService);\n if (indentOfSecondLine !== null) {\n const newSpaceCntOfSecondLine = _indentUtils_js__WEBPACK_IMPORTED_MODULE_10__.getSpaceCnt(indentOfSecondLine, tabSize);\n const oldSpaceCntOfSecondLine = _indentUtils_js__WEBPACK_IMPORTED_MODULE_10__.getSpaceCnt(_base_common_strings_js__WEBPACK_IMPORTED_MODULE_1__.getLeadingWhitespace(model.getLineContent(startLineNumber + 1)), tabSize);\n if (newSpaceCntOfSecondLine !== oldSpaceCntOfSecondLine) {\n const spaceCntOffset = newSpaceCntOfSecondLine - oldSpaceCntOfSecondLine;\n for (let i = startLineNumber + 1; i <= range.endLineNumber; i++) {\n const lineContent = model.getLineContent(i);\n const originalIndent = _base_common_strings_js__WEBPACK_IMPORTED_MODULE_1__.getLeadingWhitespace(lineContent);\n const originalSpacesCnt = _indentUtils_js__WEBPACK_IMPORTED_MODULE_10__.getSpaceCnt(originalIndent, tabSize);\n const newSpacesCnt = originalSpacesCnt + spaceCntOffset;\n const newIndent = _indentUtils_js__WEBPACK_IMPORTED_MODULE_10__.generateIndent(newSpacesCnt, tabSize, insertSpaces);\n if (newIndent !== originalIndent) {\n textEdits.push({\n range: new _common_core_range_js__WEBPACK_IMPORTED_MODULE_5__.Range(i, 1, i, originalIndent.length + 1),\n text: newIndent\n });\n }\n }\n }\n }\n }\n if (textEdits.length > 0) {\n this.editor.pushUndoStop();\n const cmd = new AutoIndentOnPasteCommand(textEdits, this.editor.getSelection());\n this.editor.executeCommand('autoIndentOnPaste', cmd);\n this.editor.pushUndoStop();\n }\n }\n shouldIgnoreLine(model, lineNumber) {\n model.tokenization.forceTokenization(lineNumber);\n const nonWhitespaceColumn = model.getLineFirstNonWhitespaceColumn(lineNumber);\n if (nonWhitespaceColumn === 0) {\n return true;\n }\n const tokens = model.tokenization.getLineTokens(lineNumber);\n if (tokens.getCount() > 0) {\n const firstNonWhitespaceTokenIndex = tokens.findTokenIndexAtOffset(nonWhitespaceColumn);\n if (firstNonWhitespaceTokenIndex >= 0 && tokens.getStandardTokenType(firstNonWhitespaceTokenIndex) === 1 /* StandardTokenType.Comment */) {\n return true;\n }\n }\n return false;\n }\n dispose() {\n this.callOnDispose.dispose();\n this.callOnModel.dispose();\n }\n};\nAutoIndentOnPaste.ID = 'editor.contrib.autoIndentOnPaste';\nAutoIndentOnPaste = __decorate([\n __param(1, _common_languages_languageConfigurationRegistry_js__WEBPACK_IMPORTED_MODULE_8__.ILanguageConfigurationService)\n], AutoIndentOnPaste);\n\nfunction getIndentationEditOperations(model, builder, tabSize, tabsToSpaces) {\n if (model.getLineCount() === 1 && model.getLineMaxColumn(1) === 1) {\n // Model is empty\n return;\n }\n let spaces = '';\n for (let i = 0; i < tabSize; i++) {\n spaces += ' ';\n }\n const spacesRegExp = new RegExp(spaces, 'gi');\n for (let lineNumber = 1, lineCount = model.getLineCount(); lineNumber <= lineCount; lineNumber++) {\n let lastIndentationColumn = model.getLineFirstNonWhitespaceColumn(lineNumber);\n if (lastIndentationColumn === 0) {\n lastIndentationColumn = model.getLineMaxColumn(lineNumber);\n }\n if (lastIndentationColumn === 1) {\n continue;\n }\n const originalIndentationRange = new _common_core_range_js__WEBPACK_IMPORTED_MODULE_5__.Range(lineNumber, 1, lineNumber, lastIndentationColumn);\n const originalIndentation = model.getValueInRange(originalIndentationRange);\n const newIndentation = (tabsToSpaces\n ? originalIndentation.replace(/\\t/ig, spaces)\n : originalIndentation.replace(spacesRegExp, '\\t'));\n builder.addEditOperation(originalIndentationRange, newIndentation);\n }\n}\nclass IndentationToSpacesCommand {\n constructor(selection, tabSize) {\n this.selection = selection;\n this.tabSize = tabSize;\n this.selectionId = null;\n }\n getEditOperations(model, builder) {\n this.selectionId = builder.trackSelection(this.selection);\n getIndentationEditOperations(model, builder, this.tabSize, true);\n }\n computeCursorState(model, helper) {\n return helper.getTrackedSelection(this.selectionId);\n }\n}\nclass IndentationToTabsCommand {\n constructor(selection, tabSize) {\n this.selection = selection;\n this.tabSize = tabSize;\n this.selectionId = null;\n }\n getEditOperations(model, builder) {\n this.selectionId = builder.trackSelection(this.selection);\n getIndentationEditOperations(model, builder, this.tabSize, false);\n }\n computeCursorState(model, helper) {\n return helper.getTrackedSelection(this.selectionId);\n }\n}\n(0,_browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_2__.registerEditorContribution)(AutoIndentOnPaste.ID, AutoIndentOnPaste, 2 /* EditorContributionInstantiation.BeforeFirstInteraction */);\n(0,_browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_2__.registerEditorAction)(IndentationToSpacesAction);\n(0,_browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_2__.registerEditorAction)(IndentationToTabsAction);\n(0,_browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_2__.registerEditorAction)(IndentUsingTabs);\n(0,_browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_2__.registerEditorAction)(IndentUsingSpaces);\n(0,_browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_2__.registerEditorAction)(ChangeTabDisplaySize);\n(0,_browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_2__.registerEditorAction)(DetectIndentation);\n(0,_browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_2__.registerEditorAction)(ReindentLinesAction);\n(0,_browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_2__.registerEditorAction)(ReindentSelectedLinesAction);\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/contrib/indentation/browser/indentation.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/contrib/inlayHints/browser/inlayHints.js":
/*!*******************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/contrib/inlayHints/browser/inlayHints.js ***!
\*******************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ InlayHintAnchor: () => (/* binding */ InlayHintAnchor),\n/* harmony export */ InlayHintItem: () => (/* binding */ InlayHintItem),\n/* harmony export */ InlayHintsFragments: () => (/* binding */ InlayHintsFragments),\n/* harmony export */ asCommandLink: () => (/* binding */ asCommandLink)\n/* harmony export */ });\n/* harmony import */ var _base_common_errors_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../../base/common/errors.js */ \"./node_modules/monaco-editor/esm/vs/base/common/errors.js\");\n/* harmony import */ var _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../base/common/lifecycle.js */ \"./node_modules/monaco-editor/esm/vs/base/common/lifecycle.js\");\n/* harmony import */ var _common_core_position_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../common/core/position.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/core/position.js\");\n/* harmony import */ var _common_core_range_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../../common/core/range.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/core/range.js\");\n/* harmony import */ var _base_common_network_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../../../base/common/network.js */ \"./node_modules/monaco-editor/esm/vs/base/common/network.js\");\n/* harmony import */ var _base_common_uri_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../../../../base/common/uri.js */ \"./node_modules/monaco-editor/esm/vs/base/common/uri.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n\n\n\n\n\nclass InlayHintAnchor {\n constructor(range, direction) {\n this.range = range;\n this.direction = direction;\n }\n}\nclass InlayHintItem {\n constructor(hint, anchor, provider) {\n this.hint = hint;\n this.anchor = anchor;\n this.provider = provider;\n this._isResolved = false;\n }\n with(delta) {\n const result = new InlayHintItem(this.hint, delta.anchor, this.provider);\n result._isResolved = this._isResolved;\n result._currentResolve = this._currentResolve;\n return result;\n }\n async resolve(token) {\n if (typeof this.provider.resolveInlayHint !== 'function') {\n return;\n }\n if (this._currentResolve) {\n // wait for an active resolve operation and try again\n // when that's done.\n await this._currentResolve;\n if (token.isCancellationRequested) {\n return;\n }\n return this.resolve(token);\n }\n if (!this._isResolved) {\n this._currentResolve = this._doResolve(token)\n .finally(() => this._currentResolve = undefined);\n }\n await this._currentResolve;\n }\n async _doResolve(token) {\n var _a, _b, _c;\n try {\n const newHint = await Promise.resolve(this.provider.resolveInlayHint(this.hint, token));\n this.hint.tooltip = (_a = newHint === null || newHint === void 0 ? void 0 : newHint.tooltip) !== null && _a !== void 0 ? _a : this.hint.tooltip;\n this.hint.label = (_b = newHint === null || newHint === void 0 ? void 0 : newHint.label) !== null && _b !== void 0 ? _b : this.hint.label;\n this.hint.textEdits = (_c = newHint === null || newHint === void 0 ? void 0 : newHint.textEdits) !== null && _c !== void 0 ? _c : this.hint.textEdits;\n this._isResolved = true;\n }\n catch (err) {\n (0,_base_common_errors_js__WEBPACK_IMPORTED_MODULE_0__.onUnexpectedExternalError)(err);\n this._isResolved = false;\n }\n }\n}\nclass InlayHintsFragments {\n static async create(registry, model, ranges, token) {\n const data = [];\n const promises = registry.ordered(model).reverse().map(provider => ranges.map(async (range) => {\n try {\n const result = await provider.provideInlayHints(model, range, token);\n if ((result === null || result === void 0 ? void 0 : result.hints.length) || provider.onDidChangeInlayHints) {\n data.push([result !== null && result !== void 0 ? result : InlayHintsFragments._emptyInlayHintList, provider]);\n }\n }\n catch (err) {\n (0,_base_common_errors_js__WEBPACK_IMPORTED_MODULE_0__.onUnexpectedExternalError)(err);\n }\n }));\n await Promise.all(promises.flat());\n if (token.isCancellationRequested || model.isDisposed()) {\n throw new _base_common_errors_js__WEBPACK_IMPORTED_MODULE_0__.CancellationError();\n }\n return new InlayHintsFragments(ranges, data, model);\n }\n constructor(ranges, data, model) {\n this._disposables = new _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_1__.DisposableStore();\n this.ranges = ranges;\n this.provider = new Set();\n const items = [];\n for (const [list, provider] of data) {\n this._disposables.add(list);\n this.provider.add(provider);\n for (const hint of list.hints) {\n // compute the range to which the item should be attached to\n const position = model.validatePosition(hint.position);\n let direction = 'before';\n const wordRange = InlayHintsFragments._getRangeAtPosition(model, position);\n let range;\n if (wordRange.getStartPosition().isBefore(position)) {\n range = _common_core_range_js__WEBPACK_IMPORTED_MODULE_3__.Range.fromPositions(wordRange.getStartPosition(), position);\n direction = 'after';\n }\n else {\n range = _common_core_range_js__WEBPACK_IMPORTED_MODULE_3__.Range.fromPositions(position, wordRange.getEndPosition());\n direction = 'before';\n }\n items.push(new InlayHintItem(hint, new InlayHintAnchor(range, direction), provider));\n }\n }\n this.items = items.sort((a, b) => _common_core_position_js__WEBPACK_IMPORTED_MODULE_2__.Position.compare(a.hint.position, b.hint.position));\n }\n dispose() {\n this._disposables.dispose();\n }\n static _getRangeAtPosition(model, position) {\n const line = position.lineNumber;\n const word = model.getWordAtPosition(position);\n if (word) {\n // always prefer the word range\n return new _common_core_range_js__WEBPACK_IMPORTED_MODULE_3__.Range(line, word.startColumn, line, word.endColumn);\n }\n model.tokenization.tokenizeIfCheap(line);\n const tokens = model.tokenization.getLineTokens(line);\n const offset = position.column - 1;\n const idx = tokens.findTokenIndexAtOffset(offset);\n let start = tokens.getStartOffset(idx);\n let end = tokens.getEndOffset(idx);\n if (end - start === 1) {\n // single character token, when at its end try leading/trailing token instead\n if (start === offset && idx > 1) {\n // leading token\n start = tokens.getStartOffset(idx - 1);\n end = tokens.getEndOffset(idx - 1);\n }\n else if (end === offset && idx < tokens.getCount() - 1) {\n // trailing token\n start = tokens.getStartOffset(idx + 1);\n end = tokens.getEndOffset(idx + 1);\n }\n }\n return new _common_core_range_js__WEBPACK_IMPORTED_MODULE_3__.Range(line, start + 1, line, end + 1);\n }\n}\nInlayHintsFragments._emptyInlayHintList = Object.freeze({ dispose() { }, hints: [] });\nfunction asCommandLink(command) {\n return _base_common_uri_js__WEBPACK_IMPORTED_MODULE_5__.URI.from({\n scheme: _base_common_network_js__WEBPACK_IMPORTED_MODULE_4__.Schemas.command,\n path: command.id,\n query: command.arguments && encodeURIComponent(JSON.stringify(command.arguments))\n }).toString();\n}\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/contrib/inlayHints/browser/inlayHints.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/contrib/inlayHints/browser/inlayHintsContribution.js":
/*!*******************************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/contrib/inlayHints/browser/inlayHintsContribution.js ***!
\*******************************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var _browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../browser/editorExtensions.js */ \"./node_modules/monaco-editor/esm/vs/editor/browser/editorExtensions.js\");\n/* harmony import */ var _hover_browser_hoverTypes_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../hover/browser/hoverTypes.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/hover/browser/hoverTypes.js\");\n/* harmony import */ var _inlayHintsController_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./inlayHintsController.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/inlayHints/browser/inlayHintsController.js\");\n/* harmony import */ var _inlayHintsHover_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./inlayHintsHover.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/inlayHints/browser/inlayHintsHover.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n\n\n\n(0,_browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_0__.registerEditorContribution)(_inlayHintsController_js__WEBPACK_IMPORTED_MODULE_2__.InlayHintsController.ID, _inlayHintsController_js__WEBPACK_IMPORTED_MODULE_2__.InlayHintsController, 1 /* EditorContributionInstantiation.AfterFirstRender */);\n_hover_browser_hoverTypes_js__WEBPACK_IMPORTED_MODULE_1__.HoverParticipantRegistry.register(_inlayHintsHover_js__WEBPACK_IMPORTED_MODULE_3__.InlayHintsHover);\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/contrib/inlayHints/browser/inlayHintsContribution.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/contrib/inlayHints/browser/inlayHintsController.js":
/*!*****************************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/contrib/inlayHints/browser/inlayHintsController.js ***!
\*****************************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ InlayHintsController: () => (/* binding */ InlayHintsController),\n/* harmony export */ RenderedInlayHintLabelPart: () => (/* binding */ RenderedInlayHintLabelPart)\n/* harmony export */ });\n/* harmony import */ var _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../../base/browser/dom.js */ \"./node_modules/monaco-editor/esm/vs/base/browser/dom.js\");\n/* harmony import */ var _base_common_arrays_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../base/common/arrays.js */ \"./node_modules/monaco-editor/esm/vs/base/common/arrays.js\");\n/* harmony import */ var _base_common_async_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../../base/common/async.js */ \"./node_modules/monaco-editor/esm/vs/base/common/async.js\");\n/* harmony import */ var _base_common_cancellation_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../../../base/common/cancellation.js */ \"./node_modules/monaco-editor/esm/vs/base/common/cancellation.js\");\n/* harmony import */ var _base_common_errors_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../../../base/common/errors.js */ \"./node_modules/monaco-editor/esm/vs/base/common/errors.js\");\n/* harmony import */ var _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../../../../base/common/lifecycle.js */ \"./node_modules/monaco-editor/esm/vs/base/common/lifecycle.js\");\n/* harmony import */ var _base_common_map_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../../../../base/common/map.js */ \"./node_modules/monaco-editor/esm/vs/base/common/map.js\");\n/* harmony import */ var _base_common_types_js__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ../../../../base/common/types.js */ \"./node_modules/monaco-editor/esm/vs/base/common/types.js\");\n/* harmony import */ var _base_common_uri_js__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ../../../../base/common/uri.js */ \"./node_modules/monaco-editor/esm/vs/base/common/uri.js\");\n/* harmony import */ var _browser_editorDom_js__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ../../../browser/editorDom.js */ \"./node_modules/monaco-editor/esm/vs/editor/browser/editorDom.js\");\n/* harmony import */ var _browser_stableEditorScroll_js__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! ../../../browser/stableEditorScroll.js */ \"./node_modules/monaco-editor/esm/vs/editor/browser/stableEditorScroll.js\");\n/* harmony import */ var _common_config_editorOptions_js__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(/*! ../../../common/config/editorOptions.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/config/editorOptions.js\");\n/* harmony import */ var _common_core_editOperation_js__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(/*! ../../../common/core/editOperation.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/core/editOperation.js\");\n/* harmony import */ var _common_core_range_js__WEBPACK_IMPORTED_MODULE_13__ = __webpack_require__(/*! ../../../common/core/range.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/core/range.js\");\n/* harmony import */ var _common_languages_js__WEBPACK_IMPORTED_MODULE_14__ = __webpack_require__(/*! ../../../common/languages.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/languages.js\");\n/* harmony import */ var _common_model_js__WEBPACK_IMPORTED_MODULE_15__ = __webpack_require__(/*! ../../../common/model.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/model.js\");\n/* harmony import */ var _common_model_textModel_js__WEBPACK_IMPORTED_MODULE_16__ = __webpack_require__(/*! ../../../common/model/textModel.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/model/textModel.js\");\n/* harmony import */ var _common_services_languageFeatureDebounce_js__WEBPACK_IMPORTED_MODULE_17__ = __webpack_require__(/*! ../../../common/services/languageFeatureDebounce.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/services/languageFeatureDebounce.js\");\n/* harmony import */ var _common_services_languageFeatures_js__WEBPACK_IMPORTED_MODULE_18__ = __webpack_require__(/*! ../../../common/services/languageFeatures.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/services/languageFeatures.js\");\n/* harmony import */ var _common_services_resolverService_js__WEBPACK_IMPORTED_MODULE_19__ = __webpack_require__(/*! ../../../common/services/resolverService.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/services/resolverService.js\");\n/* harmony import */ var _gotoSymbol_browser_link_clickLinkGesture_js__WEBPACK_IMPORTED_MODULE_20__ = __webpack_require__(/*! ../../gotoSymbol/browser/link/clickLinkGesture.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/gotoSymbol/browser/link/clickLinkGesture.js\");\n/* harmony import */ var _inlayHints_js__WEBPACK_IMPORTED_MODULE_21__ = __webpack_require__(/*! ./inlayHints.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/inlayHints/browser/inlayHints.js\");\n/* harmony import */ var _inlayHintsLocations_js__WEBPACK_IMPORTED_MODULE_22__ = __webpack_require__(/*! ./inlayHintsLocations.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/inlayHints/browser/inlayHintsLocations.js\");\n/* harmony import */ var _platform_commands_common_commands_js__WEBPACK_IMPORTED_MODULE_23__ = __webpack_require__(/*! ../../../../platform/commands/common/commands.js */ \"./node_modules/monaco-editor/esm/vs/platform/commands/common/commands.js\");\n/* harmony import */ var _platform_instantiation_common_extensions_js__WEBPACK_IMPORTED_MODULE_24__ = __webpack_require__(/*! ../../../../platform/instantiation/common/extensions.js */ \"./node_modules/monaco-editor/esm/vs/platform/instantiation/common/extensions.js\");\n/* harmony import */ var _platform_instantiation_common_instantiation_js__WEBPACK_IMPORTED_MODULE_25__ = __webpack_require__(/*! ../../../../platform/instantiation/common/instantiation.js */ \"./node_modules/monaco-editor/esm/vs/platform/instantiation/common/instantiation.js\");\n/* harmony import */ var _platform_notification_common_notification_js__WEBPACK_IMPORTED_MODULE_26__ = __webpack_require__(/*! ../../../../platform/notification/common/notification.js */ \"./node_modules/monaco-editor/esm/vs/platform/notification/common/notification.js\");\n/* harmony import */ var _platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_27__ = __webpack_require__(/*! ../../../../platform/theme/common/colorRegistry.js */ \"./node_modules/monaco-editor/esm/vs/platform/theme/common/colorRegistry.js\");\n/* harmony import */ var _platform_theme_common_themeService_js__WEBPACK_IMPORTED_MODULE_28__ = __webpack_require__(/*! ../../../../platform/theme/common/themeService.js */ \"./node_modules/monaco-editor/esm/vs/platform/theme/common/themeService.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\nvar __decorate = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\n return c > 3 && r && Object.defineProperty(target, key, r), r;\n};\nvar __param = (undefined && undefined.__param) || function (paramIndex, decorator) {\n return function (target, key) { decorator(target, key, paramIndex); }\n};\nvar InlayHintsController_1;\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n// --- hint caching service (per session)\nclass InlayHintsCache {\n constructor() {\n this._entries = new _base_common_map_js__WEBPACK_IMPORTED_MODULE_6__.LRUCache(50);\n }\n get(model) {\n const key = InlayHintsCache._key(model);\n return this._entries.get(key);\n }\n set(model, value) {\n const key = InlayHintsCache._key(model);\n this._entries.set(key, value);\n }\n static _key(model) {\n return `${model.uri.toString()}/${model.getVersionId()}`;\n }\n}\nconst IInlayHintsCache = (0,_platform_instantiation_common_instantiation_js__WEBPACK_IMPORTED_MODULE_25__.createDecorator)('IInlayHintsCache');\n(0,_platform_instantiation_common_extensions_js__WEBPACK_IMPORTED_MODULE_24__.registerSingleton)(IInlayHintsCache, InlayHintsCache, 1 /* InstantiationType.Delayed */);\n// --- rendered label\nclass RenderedInlayHintLabelPart {\n constructor(item, index) {\n this.item = item;\n this.index = index;\n }\n get part() {\n const label = this.item.hint.label;\n if (typeof label === 'string') {\n return { label };\n }\n else {\n return label[this.index];\n }\n }\n}\nclass ActiveInlayHintInfo {\n constructor(part, hasTriggerModifier) {\n this.part = part;\n this.hasTriggerModifier = hasTriggerModifier;\n }\n}\n// --- controller\nlet InlayHintsController = InlayHintsController_1 = class InlayHintsController {\n static get(editor) {\n var _a;\n return (_a = editor.getContribution(InlayHintsController_1.ID)) !== null && _a !== void 0 ? _a : undefined;\n }\n constructor(_editor, _languageFeaturesService, _featureDebounce, _inlayHintsCache, _commandService, _notificationService, _instaService) {\n this._editor = _editor;\n this._languageFeaturesService = _languageFeaturesService;\n this._inlayHintsCache = _inlayHintsCache;\n this._commandService = _commandService;\n this._notificationService = _notificationService;\n this._instaService = _instaService;\n this._disposables = new _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_5__.DisposableStore();\n this._sessionDisposables = new _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_5__.DisposableStore();\n this._decorationsMetadata = new Map();\n this._ruleFactory = new _browser_editorDom_js__WEBPACK_IMPORTED_MODULE_9__.DynamicCssRules(this._editor);\n this._activeRenderMode = 0 /* RenderMode.Normal */;\n this._debounceInfo = _featureDebounce.for(_languageFeaturesService.inlayHintsProvider, 'InlayHint', { min: 25 });\n this._disposables.add(_languageFeaturesService.inlayHintsProvider.onDidChange(() => this._update()));\n this._disposables.add(_editor.onDidChangeModel(() => this._update()));\n this._disposables.add(_editor.onDidChangeModelLanguage(() => this._update()));\n this._disposables.add(_editor.onDidChangeConfiguration(e => {\n if (e.hasChanged(140 /* EditorOption.inlayHints */)) {\n this._update();\n }\n }));\n this._update();\n }\n dispose() {\n this._sessionDisposables.dispose();\n this._removeAllDecorations();\n this._disposables.dispose();\n }\n _update() {\n this._sessionDisposables.clear();\n this._removeAllDecorations();\n const options = this._editor.getOption(140 /* EditorOption.inlayHints */);\n if (options.enabled === 'off') {\n return;\n }\n const model = this._editor.getModel();\n if (!model || !this._languageFeaturesService.inlayHintsProvider.has(model)) {\n return;\n }\n if (options.enabled === 'on') {\n // different \"on\" modes: always\n this._activeRenderMode = 0 /* RenderMode.Normal */;\n }\n else {\n // different \"on\" modes: offUnlessPressed, or onUnlessPressed\n let defaultMode;\n let altMode;\n if (options.enabled === 'onUnlessPressed') {\n defaultMode = 0 /* RenderMode.Normal */;\n altMode = 1 /* RenderMode.Invisible */;\n }\n else {\n defaultMode = 1 /* RenderMode.Invisible */;\n altMode = 0 /* RenderMode.Normal */;\n }\n this._activeRenderMode = defaultMode;\n this._sessionDisposables.add(_base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.ModifierKeyEmitter.getInstance().event(e => {\n if (!this._editor.hasModel()) {\n return;\n }\n const newRenderMode = e.altKey && e.ctrlKey && !(e.shiftKey || e.metaKey) ? altMode : defaultMode;\n if (newRenderMode !== this._activeRenderMode) {\n this._activeRenderMode = newRenderMode;\n const model = this._editor.getModel();\n const copies = this._copyInlayHintsWithCurrentAnchor(model);\n this._updateHintsDecorators([model.getFullModelRange()], copies);\n scheduler.schedule(0);\n }\n }));\n }\n // iff possible, quickly update from cache\n const cached = this._inlayHintsCache.get(model);\n if (cached) {\n this._updateHintsDecorators([model.getFullModelRange()], cached);\n }\n this._sessionDisposables.add((0,_base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_5__.toDisposable)(() => {\n // cache items when switching files etc\n if (!model.isDisposed()) {\n this._cacheHintsForFastRestore(model);\n }\n }));\n let cts;\n const watchedProviders = new Set();\n const scheduler = new _base_common_async_js__WEBPACK_IMPORTED_MODULE_2__.RunOnceScheduler(async () => {\n const t1 = Date.now();\n cts === null || cts === void 0 ? void 0 : cts.dispose(true);\n cts = new _base_common_cancellation_js__WEBPACK_IMPORTED_MODULE_3__.CancellationTokenSource();\n const listener = model.onWillDispose(() => cts === null || cts === void 0 ? void 0 : cts.cancel());\n try {\n const myToken = cts.token;\n const inlayHints = await _inlayHints_js__WEBPACK_IMPORTED_MODULE_21__.InlayHintsFragments.create(this._languageFeaturesService.inlayHintsProvider, model, this._getHintsRanges(), myToken);\n scheduler.delay = this._debounceInfo.update(model, Date.now() - t1);\n if (myToken.isCancellationRequested) {\n inlayHints.dispose();\n return;\n }\n // listen to provider changes\n for (const provider of inlayHints.provider) {\n if (typeof provider.onDidChangeInlayHints === 'function' && !watchedProviders.has(provider)) {\n watchedProviders.add(provider);\n this._sessionDisposables.add(provider.onDidChangeInlayHints(() => {\n if (!scheduler.isScheduled()) { // ignore event when request is already scheduled\n scheduler.schedule();\n }\n }));\n }\n }\n this._sessionDisposables.add(inlayHints);\n this._updateHintsDecorators(inlayHints.ranges, inlayHints.items);\n this._cacheHintsForFastRestore(model);\n }\n catch (err) {\n (0,_base_common_errors_js__WEBPACK_IMPORTED_MODULE_4__.onUnexpectedError)(err);\n }\n finally {\n cts.dispose();\n listener.dispose();\n }\n }, this._debounceInfo.get(model));\n this._sessionDisposables.add(scheduler);\n this._sessionDisposables.add((0,_base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_5__.toDisposable)(() => cts === null || cts === void 0 ? void 0 : cts.dispose(true)));\n scheduler.schedule(0);\n this._sessionDisposables.add(this._editor.onDidScrollChange((e) => {\n // update when scroll position changes\n // uses scrollTopChanged has weak heuristic to differenatiate between scrolling due to\n // typing or due to \"actual\" scrolling\n if (e.scrollTopChanged || !scheduler.isScheduled()) {\n scheduler.schedule();\n }\n }));\n this._sessionDisposables.add(this._editor.onDidChangeModelContent((e) => {\n cts === null || cts === void 0 ? void 0 : cts.cancel();\n // update less aggressive when typing\n const delay = Math.max(scheduler.delay, 1250);\n scheduler.schedule(delay);\n }));\n // mouse gestures\n this._sessionDisposables.add(this._installDblClickGesture(() => scheduler.schedule(0)));\n this._sessionDisposables.add(this._installLinkGesture());\n this._sessionDisposables.add(this._installContextMenu());\n }\n _installLinkGesture() {\n const store = new _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_5__.DisposableStore();\n const gesture = store.add(new _gotoSymbol_browser_link_clickLinkGesture_js__WEBPACK_IMPORTED_MODULE_20__.ClickLinkGesture(this._editor));\n // let removeHighlight = () => { };\n const sessionStore = new _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_5__.DisposableStore();\n store.add(sessionStore);\n store.add(gesture.onMouseMoveOrRelevantKeyDown(e => {\n const [mouseEvent] = e;\n const labelPart = this._getInlayHintLabelPart(mouseEvent);\n const model = this._editor.getModel();\n if (!labelPart || !model) {\n sessionStore.clear();\n return;\n }\n // resolve the item\n const cts = new _base_common_cancellation_js__WEBPACK_IMPORTED_MODULE_3__.CancellationTokenSource();\n sessionStore.add((0,_base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_5__.toDisposable)(() => cts.dispose(true)));\n labelPart.item.resolve(cts.token);\n // render link => when the modifier is pressed and when there is a command or location\n this._activeInlayHintPart = labelPart.part.command || labelPart.part.location\n ? new ActiveInlayHintInfo(labelPart, mouseEvent.hasTriggerModifier)\n : undefined;\n const lineNumber = model.validatePosition(labelPart.item.hint.position).lineNumber;\n const range = new _common_core_range_js__WEBPACK_IMPORTED_MODULE_13__.Range(lineNumber, 1, lineNumber, model.getLineMaxColumn(lineNumber));\n const lineHints = this._getInlineHintsForRange(range);\n this._updateHintsDecorators([range], lineHints);\n sessionStore.add((0,_base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_5__.toDisposable)(() => {\n this._activeInlayHintPart = undefined;\n this._updateHintsDecorators([range], lineHints);\n }));\n }));\n store.add(gesture.onCancel(() => sessionStore.clear()));\n store.add(gesture.onExecute(async (e) => {\n const label = this._getInlayHintLabelPart(e);\n if (label) {\n const part = label.part;\n if (part.location) {\n // location -> execute go to def\n this._instaService.invokeFunction(_inlayHintsLocations_js__WEBPACK_IMPORTED_MODULE_22__.goToDefinitionWithLocation, e, this._editor, part.location);\n }\n else if (_common_languages_js__WEBPACK_IMPORTED_MODULE_14__.Command.is(part.command)) {\n // command -> execute it\n await this._invokeCommand(part.command, label.item);\n }\n }\n }));\n return store;\n }\n _getInlineHintsForRange(range) {\n const lineHints = new Set();\n for (const data of this._decorationsMetadata.values()) {\n if (range.containsRange(data.item.anchor.range)) {\n lineHints.add(data.item);\n }\n }\n return Array.from(lineHints);\n }\n _installDblClickGesture(updateInlayHints) {\n return this._editor.onMouseUp(async (e) => {\n if (e.event.detail !== 2) {\n return;\n }\n const part = this._getInlayHintLabelPart(e);\n if (!part) {\n return;\n }\n e.event.preventDefault();\n await part.item.resolve(_base_common_cancellation_js__WEBPACK_IMPORTED_MODULE_3__.CancellationToken.None);\n if ((0,_base_common_arrays_js__WEBPACK_IMPORTED_MODULE_1__.isNonEmptyArray)(part.item.hint.textEdits)) {\n const edits = part.item.hint.textEdits.map(edit => _common_core_editOperation_js__WEBPACK_IMPORTED_MODULE_12__.EditOperation.replace(_common_core_range_js__WEBPACK_IMPORTED_MODULE_13__.Range.lift(edit.range), edit.text));\n this._editor.executeEdits('inlayHint.default', edits);\n updateInlayHints();\n }\n });\n }\n _installContextMenu() {\n return this._editor.onContextMenu(async (e) => {\n if (!(e.event.target instanceof HTMLElement)) {\n return;\n }\n const part = this._getInlayHintLabelPart(e);\n if (part) {\n await this._instaService.invokeFunction(_inlayHintsLocations_js__WEBPACK_IMPORTED_MODULE_22__.showGoToContextMenu, this._editor, e.event.target, part);\n }\n });\n }\n _getInlayHintLabelPart(e) {\n var _a;\n if (e.target.type !== 6 /* MouseTargetType.CONTENT_TEXT */) {\n return undefined;\n }\n const options = (_a = e.target.detail.injectedText) === null || _a === void 0 ? void 0 : _a.options;\n if (options instanceof _common_model_textModel_js__WEBPACK_IMPORTED_MODULE_16__.ModelDecorationInjectedTextOptions && (options === null || options === void 0 ? void 0 : options.attachedData) instanceof RenderedInlayHintLabelPart) {\n return options.attachedData;\n }\n return undefined;\n }\n async _invokeCommand(command, item) {\n var _a;\n try {\n await this._commandService.executeCommand(command.id, ...((_a = command.arguments) !== null && _a !== void 0 ? _a : []));\n }\n catch (err) {\n this._notificationService.notify({\n severity: _platform_notification_common_notification_js__WEBPACK_IMPORTED_MODULE_26__.Severity.Error,\n source: item.provider.displayName,\n message: err\n });\n }\n }\n _cacheHintsForFastRestore(model) {\n const hints = this._copyInlayHintsWithCurrentAnchor(model);\n this._inlayHintsCache.set(model, hints);\n }\n // return inlay hints but with an anchor that reflects \"updates\"\n // that happened after receiving them, e.g adding new lines before a hint\n _copyInlayHintsWithCurrentAnchor(model) {\n const items = new Map();\n for (const [id, obj] of this._decorationsMetadata) {\n if (items.has(obj.item)) {\n // an inlay item can be rendered as multiple decorations\n // but they will all uses the same range\n continue;\n }\n const range = model.getDecorationRange(id);\n if (range) {\n // update range with whatever the editor has tweaked it to\n const anchor = new _inlayHints_js__WEBPACK_IMPORTED_MODULE_21__.InlayHintAnchor(range, obj.item.anchor.direction);\n const copy = obj.item.with({ anchor });\n items.set(obj.item, copy);\n }\n }\n return Array.from(items.values());\n }\n _getHintsRanges() {\n const extra = 30;\n const model = this._editor.getModel();\n const visibleRanges = this._editor.getVisibleRangesPlusViewportAboveBelow();\n const result = [];\n for (const range of visibleRanges.sort(_common_core_range_js__WEBPACK_IMPORTED_MODULE_13__.Range.compareRangesUsingStarts)) {\n const extendedRange = model.validateRange(new _common_core_range_js__WEBPACK_IMPORTED_MODULE_13__.Range(range.startLineNumber - extra, range.startColumn, range.endLineNumber + extra, range.endColumn));\n if (result.length === 0 || !_common_core_range_js__WEBPACK_IMPORTED_MODULE_13__.Range.areIntersectingOrTouching(result[result.length - 1], extendedRange)) {\n result.push(extendedRange);\n }\n else {\n result[result.length - 1] = _common_core_range_js__WEBPACK_IMPORTED_MODULE_13__.Range.plusRange(result[result.length - 1], extendedRange);\n }\n }\n return result;\n }\n _updateHintsDecorators(ranges, items) {\n var _a, _b;\n // utils to collect/create injected text decorations\n const newDecorationsData = [];\n const addInjectedText = (item, ref, content, cursorStops, attachedData) => {\n const opts = {\n content,\n inlineClassNameAffectsLetterSpacing: true,\n inlineClassName: ref.className,\n cursorStops,\n attachedData\n };\n newDecorationsData.push({\n item,\n classNameRef: ref,\n decoration: {\n range: item.anchor.range,\n options: {\n // className: \"rangeHighlight\", // DEBUG highlight to see to what range a hint is attached\n description: 'InlayHint',\n showIfCollapsed: item.anchor.range.isEmpty(), // \"original\" range is empty\n collapseOnReplaceEdit: !item.anchor.range.isEmpty(),\n stickiness: 0 /* TrackedRangeStickiness.AlwaysGrowsWhenTypingAtEdges */,\n [item.anchor.direction]: this._activeRenderMode === 0 /* RenderMode.Normal */ ? opts : undefined\n }\n }\n });\n };\n const addInjectedWhitespace = (item, isLast) => {\n const marginRule = this._ruleFactory.createClassNameRef({\n width: `${(fontSize / 3) | 0}px`,\n display: 'inline-block'\n });\n addInjectedText(item, marginRule, '\\u200a', isLast ? _common_model_js__WEBPACK_IMPORTED_MODULE_15__.InjectedTextCursorStops.Right : _common_model_js__WEBPACK_IMPORTED_MODULE_15__.InjectedTextCursorStops.None);\n };\n //\n const { fontSize, fontFamily, padding, isUniform } = this._getLayoutInfo();\n const fontFamilyVar = '--code-editorInlayHintsFontFamily';\n this._editor.getContainerDomNode().style.setProperty(fontFamilyVar, fontFamily);\n let currentLineInfo = { line: 0, totalLen: 0 };\n for (const item of items) {\n if (currentLineInfo.line !== item.anchor.range.startLineNumber) {\n currentLineInfo = { line: item.anchor.range.startLineNumber, totalLen: 0 };\n }\n if (currentLineInfo.totalLen > InlayHintsController_1._MAX_LABEL_LEN) {\n continue;\n }\n // whitespace leading the actual label\n if (item.hint.paddingLeft) {\n addInjectedWhitespace(item, false);\n }\n // the label with its parts\n const parts = typeof item.hint.label === 'string'\n ? [{ label: item.hint.label }]\n : item.hint.label;\n for (let i = 0; i < parts.length; i++) {\n const part = parts[i];\n const isFirst = i === 0;\n const isLast = i === parts.length - 1;\n const cssProperties = {\n fontSize: `${fontSize}px`,\n fontFamily: `var(${fontFamilyVar}), ${_common_config_editorOptions_js__WEBPACK_IMPORTED_MODULE_11__.EDITOR_FONT_DEFAULTS.fontFamily}`,\n verticalAlign: isUniform ? 'baseline' : 'middle',\n unicodeBidi: 'isolate'\n };\n if ((0,_base_common_arrays_js__WEBPACK_IMPORTED_MODULE_1__.isNonEmptyArray)(item.hint.textEdits)) {\n cssProperties.cursor = 'default';\n }\n this._fillInColors(cssProperties, item.hint);\n if ((part.command || part.location) && ((_a = this._activeInlayHintPart) === null || _a === void 0 ? void 0 : _a.part.item) === item && this._activeInlayHintPart.part.index === i) {\n // active link!\n cssProperties.textDecoration = 'underline';\n if (this._activeInlayHintPart.hasTriggerModifier) {\n cssProperties.color = (0,_platform_theme_common_themeService_js__WEBPACK_IMPORTED_MODULE_28__.themeColorFromId)(_platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_27__.editorActiveLinkForeground);\n cssProperties.cursor = 'pointer';\n }\n }\n if (padding) {\n if (isFirst && isLast) {\n // only element\n cssProperties.padding = `1px ${Math.max(1, fontSize / 4) | 0}px`;\n cssProperties.borderRadius = `${(fontSize / 4) | 0}px`;\n }\n else if (isFirst) {\n // first element\n cssProperties.padding = `1px 0 1px ${Math.max(1, fontSize / 4) | 0}px`;\n cssProperties.borderRadius = `${(fontSize / 4) | 0}px 0 0 ${(fontSize / 4) | 0}px`;\n }\n else if (isLast) {\n // last element\n cssProperties.padding = `1px ${Math.max(1, fontSize / 4) | 0}px 1px 0`;\n cssProperties.borderRadius = `0 ${(fontSize / 4) | 0}px ${(fontSize / 4) | 0}px 0`;\n }\n else {\n cssProperties.padding = `1px 0 1px 0`;\n }\n }\n let textlabel = part.label;\n currentLineInfo.totalLen += textlabel.length;\n let tooLong = false;\n const over = currentLineInfo.totalLen - InlayHintsController_1._MAX_LABEL_LEN;\n if (over > 0) {\n textlabel = textlabel.slice(0, -over) + '…';\n tooLong = true;\n }\n addInjectedText(item, this._ruleFactory.createClassNameRef(cssProperties), fixSpace(textlabel), isLast && !item.hint.paddingRight ? _common_model_js__WEBPACK_IMPORTED_MODULE_15__.InjectedTextCursorStops.Right : _common_model_js__WEBPACK_IMPORTED_MODULE_15__.InjectedTextCursorStops.None, new RenderedInlayHintLabelPart(item, i));\n if (tooLong) {\n break;\n }\n }\n // whitespace trailing the actual label\n if (item.hint.paddingRight) {\n addInjectedWhitespace(item, true);\n }\n if (newDecorationsData.length > InlayHintsController_1._MAX_DECORATORS) {\n break;\n }\n }\n // collect all decoration ids that are affected by the ranges\n // and only update those decorations\n const decorationIdsToReplace = [];\n for (const [id, metadata] of this._decorationsMetadata) {\n const range = (_b = this._editor.getModel()) === null || _b === void 0 ? void 0 : _b.getDecorationRange(id);\n if (range && ranges.some(r => r.containsRange(range))) {\n decorationIdsToReplace.push(id);\n metadata.classNameRef.dispose();\n this._decorationsMetadata.delete(id);\n }\n }\n const scrollState = _browser_stableEditorScroll_js__WEBPACK_IMPORTED_MODULE_10__.StableEditorScrollState.capture(this._editor);\n this._editor.changeDecorations(accessor => {\n const newDecorationIds = accessor.deltaDecorations(decorationIdsToReplace, newDecorationsData.map(d => d.decoration));\n for (let i = 0; i < newDecorationIds.length; i++) {\n const data = newDecorationsData[i];\n this._decorationsMetadata.set(newDecorationIds[i], data);\n }\n });\n scrollState.restore(this._editor);\n }\n _fillInColors(props, hint) {\n if (hint.kind === _common_languages_js__WEBPACK_IMPORTED_MODULE_14__.InlayHintKind.Parameter) {\n props.backgroundColor = (0,_platform_theme_common_themeService_js__WEBPACK_IMPORTED_MODULE_28__.themeColorFromId)(_platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_27__.editorInlayHintParameterBackground);\n props.color = (0,_platform_theme_common_themeService_js__WEBPACK_IMPORTED_MODULE_28__.themeColorFromId)(_platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_27__.editorInlayHintParameterForeground);\n }\n else if (hint.kind === _common_languages_js__WEBPACK_IMPORTED_MODULE_14__.InlayHintKind.Type) {\n props.backgroundColor = (0,_platform_theme_common_themeService_js__WEBPACK_IMPORTED_MODULE_28__.themeColorFromId)(_platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_27__.editorInlayHintTypeBackground);\n props.color = (0,_platform_theme_common_themeService_js__WEBPACK_IMPORTED_MODULE_28__.themeColorFromId)(_platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_27__.editorInlayHintTypeForeground);\n }\n else {\n props.backgroundColor = (0,_platform_theme_common_themeService_js__WEBPACK_IMPORTED_MODULE_28__.themeColorFromId)(_platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_27__.editorInlayHintBackground);\n props.color = (0,_platform_theme_common_themeService_js__WEBPACK_IMPORTED_MODULE_28__.themeColorFromId)(_platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_27__.editorInlayHintForeground);\n }\n }\n _getLayoutInfo() {\n const options = this._editor.getOption(140 /* EditorOption.inlayHints */);\n const padding = options.padding;\n const editorFontSize = this._editor.getOption(52 /* EditorOption.fontSize */);\n const editorFontFamily = this._editor.getOption(49 /* EditorOption.fontFamily */);\n let fontSize = options.fontSize;\n if (!fontSize || fontSize < 5 || fontSize > editorFontSize) {\n fontSize = editorFontSize;\n }\n const fontFamily = options.fontFamily || editorFontFamily;\n const isUniform = !padding\n && fontFamily === editorFontFamily\n && fontSize === editorFontSize;\n return { fontSize, fontFamily, padding, isUniform };\n }\n _removeAllDecorations() {\n this._editor.removeDecorations(Array.from(this._decorationsMetadata.keys()));\n for (const obj of this._decorationsMetadata.values()) {\n obj.classNameRef.dispose();\n }\n this._decorationsMetadata.clear();\n }\n};\nInlayHintsController.ID = 'editor.contrib.InlayHints';\nInlayHintsController._MAX_DECORATORS = 1500;\nInlayHintsController._MAX_LABEL_LEN = 43;\nInlayHintsController = InlayHintsController_1 = __decorate([\n __param(1, _common_services_languageFeatures_js__WEBPACK_IMPORTED_MODULE_18__.ILanguageFeaturesService),\n __param(2, _common_services_languageFeatureDebounce_js__WEBPACK_IMPORTED_MODULE_17__.ILanguageFeatureDebounceService),\n __param(3, IInlayHintsCache),\n __param(4, _platform_commands_common_commands_js__WEBPACK_IMPORTED_MODULE_23__.ICommandService),\n __param(5, _platform_notification_common_notification_js__WEBPACK_IMPORTED_MODULE_26__.INotificationService),\n __param(6, _platform_instantiation_common_instantiation_js__WEBPACK_IMPORTED_MODULE_25__.IInstantiationService)\n], InlayHintsController);\n\n// Prevents the view from potentially visible whitespace\nfunction fixSpace(str) {\n const noBreakWhitespace = '\\xa0';\n return str.replace(/[ \\t]/g, noBreakWhitespace);\n}\n_platform_commands_common_commands_js__WEBPACK_IMPORTED_MODULE_23__.CommandsRegistry.registerCommand('_executeInlayHintProvider', async (accessor, ...args) => {\n const [uri, range] = args;\n (0,_base_common_types_js__WEBPACK_IMPORTED_MODULE_7__.assertType)(_base_common_uri_js__WEBPACK_IMPORTED_MODULE_8__.URI.isUri(uri));\n (0,_base_common_types_js__WEBPACK_IMPORTED_MODULE_7__.assertType)(_common_core_range_js__WEBPACK_IMPORTED_MODULE_13__.Range.isIRange(range));\n const { inlayHintsProvider } = accessor.get(_common_services_languageFeatures_js__WEBPACK_IMPORTED_MODULE_18__.ILanguageFeaturesService);\n const ref = await accessor.get(_common_services_resolverService_js__WEBPACK_IMPORTED_MODULE_19__.ITextModelService).createModelReference(uri);\n try {\n const model = await _inlayHints_js__WEBPACK_IMPORTED_MODULE_21__.InlayHintsFragments.create(inlayHintsProvider, ref.object.textEditorModel, [_common_core_range_js__WEBPACK_IMPORTED_MODULE_13__.Range.lift(range)], _base_common_cancellation_js__WEBPACK_IMPORTED_MODULE_3__.CancellationToken.None);\n const result = model.items.map(i => i.hint);\n setTimeout(() => model.dispose(), 0); // dispose after sending to ext host\n return result;\n }\n finally {\n ref.dispose();\n }\n});\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/contrib/inlayHints/browser/inlayHintsController.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/contrib/inlayHints/browser/inlayHintsHover.js":
/*!************************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/contrib/inlayHints/browser/inlayHintsHover.js ***!
\************************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ InlayHintsHover: () => (/* binding */ InlayHintsHover)\n/* harmony export */ });\n/* harmony import */ var _base_common_async_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../../base/common/async.js */ \"./node_modules/monaco-editor/esm/vs/base/common/async.js\");\n/* harmony import */ var _base_common_htmlContent_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../base/common/htmlContent.js */ \"./node_modules/monaco-editor/esm/vs/base/common/htmlContent.js\");\n/* harmony import */ var _common_core_position_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../common/core/position.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/core/position.js\");\n/* harmony import */ var _common_model_textModel_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../../common/model/textModel.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/model/textModel.js\");\n/* harmony import */ var _hover_browser_hoverTypes_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../hover/browser/hoverTypes.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/hover/browser/hoverTypes.js\");\n/* harmony import */ var _common_languages_language_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../../../common/languages/language.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/languages/language.js\");\n/* harmony import */ var _common_services_resolverService_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../../../common/services/resolverService.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/services/resolverService.js\");\n/* harmony import */ var _hover_browser_getHover_js__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ../../hover/browser/getHover.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/hover/browser/getHover.js\");\n/* harmony import */ var _hover_browser_markdownHoverParticipant_js__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ../../hover/browser/markdownHoverParticipant.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/hover/browser/markdownHoverParticipant.js\");\n/* harmony import */ var _inlayHintsController_js__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ./inlayHintsController.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/inlayHints/browser/inlayHintsController.js\");\n/* harmony import */ var _platform_configuration_common_configuration_js__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! ../../../../platform/configuration/common/configuration.js */ \"./node_modules/monaco-editor/esm/vs/platform/configuration/common/configuration.js\");\n/* harmony import */ var _platform_opener_common_opener_js__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(/*! ../../../../platform/opener/common/opener.js */ \"./node_modules/monaco-editor/esm/vs/platform/opener/common/opener.js\");\n/* harmony import */ var _common_services_languageFeatures_js__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(/*! ../../../common/services/languageFeatures.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/services/languageFeatures.js\");\n/* harmony import */ var _nls_js__WEBPACK_IMPORTED_MODULE_13__ = __webpack_require__(/*! ../../../../nls.js */ \"./node_modules/monaco-editor/esm/vs/nls.js\");\n/* harmony import */ var _base_common_platform_js__WEBPACK_IMPORTED_MODULE_14__ = __webpack_require__(/*! ../../../../base/common/platform.js */ \"./node_modules/monaco-editor/esm/vs/base/common/platform.js\");\n/* harmony import */ var _inlayHints_js__WEBPACK_IMPORTED_MODULE_15__ = __webpack_require__(/*! ./inlayHints.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/inlayHints/browser/inlayHints.js\");\n/* harmony import */ var _base_common_arrays_js__WEBPACK_IMPORTED_MODULE_16__ = __webpack_require__(/*! ../../../../base/common/arrays.js */ \"./node_modules/monaco-editor/esm/vs/base/common/arrays.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\nvar __decorate = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\n return c > 3 && r && Object.defineProperty(target, key, r), r;\n};\nvar __param = (undefined && undefined.__param) || function (paramIndex, decorator) {\n return function (target, key) { decorator(target, key, paramIndex); }\n};\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nclass InlayHintsHoverAnchor extends _hover_browser_hoverTypes_js__WEBPACK_IMPORTED_MODULE_4__.HoverForeignElementAnchor {\n constructor(part, owner, initialMousePosX, initialMousePosY) {\n super(10, owner, part.item.anchor.range, initialMousePosX, initialMousePosY, true);\n this.part = part;\n }\n}\nlet InlayHintsHover = class InlayHintsHover extends _hover_browser_markdownHoverParticipant_js__WEBPACK_IMPORTED_MODULE_8__.MarkdownHoverParticipant {\n constructor(editor, languageService, openerService, configurationService, _resolverService, languageFeaturesService) {\n super(editor, languageService, openerService, configurationService, languageFeaturesService);\n this._resolverService = _resolverService;\n this.hoverOrdinal = 6;\n }\n suggestHoverAnchor(mouseEvent) {\n var _a;\n const controller = _inlayHintsController_js__WEBPACK_IMPORTED_MODULE_9__.InlayHintsController.get(this._editor);\n if (!controller) {\n return null;\n }\n if (mouseEvent.target.type !== 6 /* MouseTargetType.CONTENT_TEXT */) {\n return null;\n }\n const options = (_a = mouseEvent.target.detail.injectedText) === null || _a === void 0 ? void 0 : _a.options;\n if (!(options instanceof _common_model_textModel_js__WEBPACK_IMPORTED_MODULE_3__.ModelDecorationInjectedTextOptions && options.attachedData instanceof _inlayHintsController_js__WEBPACK_IMPORTED_MODULE_9__.RenderedInlayHintLabelPart)) {\n return null;\n }\n return new InlayHintsHoverAnchor(options.attachedData, this, mouseEvent.event.posx, mouseEvent.event.posy);\n }\n computeSync() {\n return [];\n }\n computeAsync(anchor, _lineDecorations, token) {\n if (!(anchor instanceof InlayHintsHoverAnchor)) {\n return _base_common_async_js__WEBPACK_IMPORTED_MODULE_0__.AsyncIterableObject.EMPTY;\n }\n return new _base_common_async_js__WEBPACK_IMPORTED_MODULE_0__.AsyncIterableObject(async (executor) => {\n const { part } = anchor;\n await part.item.resolve(token);\n if (token.isCancellationRequested) {\n return;\n }\n // (1) Inlay Tooltip\n let itemTooltip;\n if (typeof part.item.hint.tooltip === 'string') {\n itemTooltip = new _base_common_htmlContent_js__WEBPACK_IMPORTED_MODULE_1__.MarkdownString().appendText(part.item.hint.tooltip);\n }\n else if (part.item.hint.tooltip) {\n itemTooltip = part.item.hint.tooltip;\n }\n if (itemTooltip) {\n executor.emitOne(new _hover_browser_markdownHoverParticipant_js__WEBPACK_IMPORTED_MODULE_8__.MarkdownHover(this, anchor.range, [itemTooltip], false, 0));\n }\n // (1.2) Inlay dbl-click gesture\n if ((0,_base_common_arrays_js__WEBPACK_IMPORTED_MODULE_16__.isNonEmptyArray)(part.item.hint.textEdits)) {\n executor.emitOne(new _hover_browser_markdownHoverParticipant_js__WEBPACK_IMPORTED_MODULE_8__.MarkdownHover(this, anchor.range, [new _base_common_htmlContent_js__WEBPACK_IMPORTED_MODULE_1__.MarkdownString().appendText((0,_nls_js__WEBPACK_IMPORTED_MODULE_13__.localize)('hint.dbl', \"Double-click to insert\"))], false, 10001));\n }\n // (2) Inlay Label Part Tooltip\n let partTooltip;\n if (typeof part.part.tooltip === 'string') {\n partTooltip = new _base_common_htmlContent_js__WEBPACK_IMPORTED_MODULE_1__.MarkdownString().appendText(part.part.tooltip);\n }\n else if (part.part.tooltip) {\n partTooltip = part.part.tooltip;\n }\n if (partTooltip) {\n executor.emitOne(new _hover_browser_markdownHoverParticipant_js__WEBPACK_IMPORTED_MODULE_8__.MarkdownHover(this, anchor.range, [partTooltip], false, 1));\n }\n // (2.2) Inlay Label Part Help Hover\n if (part.part.location || part.part.command) {\n let linkHint;\n const useMetaKey = this._editor.getOption(78 /* EditorOption.multiCursorModifier */) === 'altKey';\n const kb = useMetaKey\n ? _base_common_platform_js__WEBPACK_IMPORTED_MODULE_14__.isMacintosh\n ? (0,_nls_js__WEBPACK_IMPORTED_MODULE_13__.localize)('links.navigate.kb.meta.mac', \"cmd + click\")\n : (0,_nls_js__WEBPACK_IMPORTED_MODULE_13__.localize)('links.navigate.kb.meta', \"ctrl + click\")\n : _base_common_platform_js__WEBPACK_IMPORTED_MODULE_14__.isMacintosh\n ? (0,_nls_js__WEBPACK_IMPORTED_MODULE_13__.localize)('links.navigate.kb.alt.mac', \"option + click\")\n : (0,_nls_js__WEBPACK_IMPORTED_MODULE_13__.localize)('links.navigate.kb.alt', \"alt + click\");\n if (part.part.location && part.part.command) {\n linkHint = new _base_common_htmlContent_js__WEBPACK_IMPORTED_MODULE_1__.MarkdownString().appendText((0,_nls_js__WEBPACK_IMPORTED_MODULE_13__.localize)('hint.defAndCommand', 'Go to Definition ({0}), right click for more', kb));\n }\n else if (part.part.location) {\n linkHint = new _base_common_htmlContent_js__WEBPACK_IMPORTED_MODULE_1__.MarkdownString().appendText((0,_nls_js__WEBPACK_IMPORTED_MODULE_13__.localize)('hint.def', 'Go to Definition ({0})', kb));\n }\n else if (part.part.command) {\n linkHint = new _base_common_htmlContent_js__WEBPACK_IMPORTED_MODULE_1__.MarkdownString(`[${(0,_nls_js__WEBPACK_IMPORTED_MODULE_13__.localize)('hint.cmd', \"Execute Command\")}](${(0,_inlayHints_js__WEBPACK_IMPORTED_MODULE_15__.asCommandLink)(part.part.command)} \"${part.part.command.title}\") (${kb})`, { isTrusted: true });\n }\n if (linkHint) {\n executor.emitOne(new _hover_browser_markdownHoverParticipant_js__WEBPACK_IMPORTED_MODULE_8__.MarkdownHover(this, anchor.range, [linkHint], false, 10000));\n }\n }\n // (3) Inlay Label Part Location tooltip\n const iterable = await this._resolveInlayHintLabelPartHover(part, token);\n for await (const item of iterable) {\n executor.emitOne(item);\n }\n });\n }\n async _resolveInlayHintLabelPartHover(part, token) {\n if (!part.part.location) {\n return _base_common_async_js__WEBPACK_IMPORTED_MODULE_0__.AsyncIterableObject.EMPTY;\n }\n const { uri, range } = part.part.location;\n const ref = await this._resolverService.createModelReference(uri);\n try {\n const model = ref.object.textEditorModel;\n if (!this._languageFeaturesService.hoverProvider.has(model)) {\n return _base_common_async_js__WEBPACK_IMPORTED_MODULE_0__.AsyncIterableObject.EMPTY;\n }\n return (0,_hover_browser_getHover_js__WEBPACK_IMPORTED_MODULE_7__.getHover)(this._languageFeaturesService.hoverProvider, model, new _common_core_position_js__WEBPACK_IMPORTED_MODULE_2__.Position(range.startLineNumber, range.startColumn), token)\n .filter(item => !(0,_base_common_htmlContent_js__WEBPACK_IMPORTED_MODULE_1__.isEmptyMarkdownString)(item.hover.contents))\n .map(item => new _hover_browser_markdownHoverParticipant_js__WEBPACK_IMPORTED_MODULE_8__.MarkdownHover(this, part.item.anchor.range, item.hover.contents, false, 2 + item.ordinal));\n }\n finally {\n ref.dispose();\n }\n }\n};\nInlayHintsHover = __decorate([\n __param(1, _common_languages_language_js__WEBPACK_IMPORTED_MODULE_5__.ILanguageService),\n __param(2, _platform_opener_common_opener_js__WEBPACK_IMPORTED_MODULE_11__.IOpenerService),\n __param(3, _platform_configuration_common_configuration_js__WEBPACK_IMPORTED_MODULE_10__.IConfigurationService),\n __param(4, _common_services_resolverService_js__WEBPACK_IMPORTED_MODULE_6__.ITextModelService),\n __param(5, _common_services_languageFeatures_js__WEBPACK_IMPORTED_MODULE_12__.ILanguageFeaturesService)\n], InlayHintsHover);\n\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/contrib/inlayHints/browser/inlayHintsHover.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/contrib/inlayHints/browser/inlayHintsLocations.js":
/*!****************************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/contrib/inlayHints/browser/inlayHintsLocations.js ***!
\****************************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ goToDefinitionWithLocation: () => (/* binding */ goToDefinitionWithLocation),\n/* harmony export */ showGoToContextMenu: () => (/* binding */ showGoToContextMenu)\n/* harmony export */ });\n/* harmony import */ var _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../../base/browser/dom.js */ \"./node_modules/monaco-editor/esm/vs/base/browser/dom.js\");\n/* harmony import */ var _base_common_actions_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../base/common/actions.js */ \"./node_modules/monaco-editor/esm/vs/base/common/actions.js\");\n/* harmony import */ var _base_common_cancellation_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../../base/common/cancellation.js */ \"./node_modules/monaco-editor/esm/vs/base/common/cancellation.js\");\n/* harmony import */ var _base_common_uuid_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../../../base/common/uuid.js */ \"./node_modules/monaco-editor/esm/vs/base/common/uuid.js\");\n/* harmony import */ var _common_core_range_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../../common/core/range.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/core/range.js\");\n/* harmony import */ var _common_services_resolverService_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../../../common/services/resolverService.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/services/resolverService.js\");\n/* harmony import */ var _gotoSymbol_browser_goToCommands_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../../gotoSymbol/browser/goToCommands.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/gotoSymbol/browser/goToCommands.js\");\n/* harmony import */ var _peekView_browser_peekView_js__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ../../peekView/browser/peekView.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/peekView/browser/peekView.js\");\n/* harmony import */ var _platform_actions_common_actions_js__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ../../../../platform/actions/common/actions.js */ \"./node_modules/monaco-editor/esm/vs/platform/actions/common/actions.js\");\n/* harmony import */ var _platform_commands_common_commands_js__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ../../../../platform/commands/common/commands.js */ \"./node_modules/monaco-editor/esm/vs/platform/commands/common/commands.js\");\n/* harmony import */ var _platform_contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! ../../../../platform/contextkey/common/contextkey.js */ \"./node_modules/monaco-editor/esm/vs/platform/contextkey/common/contextkey.js\");\n/* harmony import */ var _platform_contextview_browser_contextView_js__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(/*! ../../../../platform/contextview/browser/contextView.js */ \"./node_modules/monaco-editor/esm/vs/platform/contextview/browser/contextView.js\");\n/* harmony import */ var _platform_instantiation_common_instantiation_js__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(/*! ../../../../platform/instantiation/common/instantiation.js */ \"./node_modules/monaco-editor/esm/vs/platform/instantiation/common/instantiation.js\");\n/* harmony import */ var _platform_notification_common_notification_js__WEBPACK_IMPORTED_MODULE_13__ = __webpack_require__(/*! ../../../../platform/notification/common/notification.js */ \"./node_modules/monaco-editor/esm/vs/platform/notification/common/notification.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nasync function showGoToContextMenu(accessor, editor, anchor, part) {\n var _a;\n const resolverService = accessor.get(_common_services_resolverService_js__WEBPACK_IMPORTED_MODULE_5__.ITextModelService);\n const contextMenuService = accessor.get(_platform_contextview_browser_contextView_js__WEBPACK_IMPORTED_MODULE_11__.IContextMenuService);\n const commandService = accessor.get(_platform_commands_common_commands_js__WEBPACK_IMPORTED_MODULE_9__.ICommandService);\n const instaService = accessor.get(_platform_instantiation_common_instantiation_js__WEBPACK_IMPORTED_MODULE_12__.IInstantiationService);\n const notificationService = accessor.get(_platform_notification_common_notification_js__WEBPACK_IMPORTED_MODULE_13__.INotificationService);\n await part.item.resolve(_base_common_cancellation_js__WEBPACK_IMPORTED_MODULE_2__.CancellationToken.None);\n if (!part.part.location) {\n return;\n }\n const location = part.part.location;\n const menuActions = [];\n // from all registered (not active) context menu actions select those\n // that are a symbol navigation actions\n const filter = new Set(_platform_actions_common_actions_js__WEBPACK_IMPORTED_MODULE_8__.MenuRegistry.getMenuItems(_platform_actions_common_actions_js__WEBPACK_IMPORTED_MODULE_8__.MenuId.EditorContext)\n .map(item => (0,_platform_actions_common_actions_js__WEBPACK_IMPORTED_MODULE_8__.isIMenuItem)(item) ? item.command.id : (0,_base_common_uuid_js__WEBPACK_IMPORTED_MODULE_3__.generateUuid)()));\n for (const delegate of _gotoSymbol_browser_goToCommands_js__WEBPACK_IMPORTED_MODULE_6__.SymbolNavigationAction.all()) {\n if (filter.has(delegate.desc.id)) {\n menuActions.push(new _base_common_actions_js__WEBPACK_IMPORTED_MODULE_1__.Action(delegate.desc.id, _platform_actions_common_actions_js__WEBPACK_IMPORTED_MODULE_8__.MenuItemAction.label(delegate.desc, { renderShortTitle: true }), undefined, true, async () => {\n const ref = await resolverService.createModelReference(location.uri);\n try {\n const symbolAnchor = new _gotoSymbol_browser_goToCommands_js__WEBPACK_IMPORTED_MODULE_6__.SymbolNavigationAnchor(ref.object.textEditorModel, _common_core_range_js__WEBPACK_IMPORTED_MODULE_4__.Range.getStartPosition(location.range));\n const range = part.item.anchor.range;\n await instaService.invokeFunction(delegate.runEditorCommand.bind(delegate), editor, symbolAnchor, range);\n }\n finally {\n ref.dispose();\n }\n }));\n }\n }\n if (part.part.command) {\n const { command } = part.part;\n menuActions.push(new _base_common_actions_js__WEBPACK_IMPORTED_MODULE_1__.Separator());\n menuActions.push(new _base_common_actions_js__WEBPACK_IMPORTED_MODULE_1__.Action(command.id, command.title, undefined, true, async () => {\n var _a;\n try {\n await commandService.executeCommand(command.id, ...((_a = command.arguments) !== null && _a !== void 0 ? _a : []));\n }\n catch (err) {\n notificationService.notify({\n severity: _platform_notification_common_notification_js__WEBPACK_IMPORTED_MODULE_13__.Severity.Error,\n source: part.item.provider.displayName,\n message: err\n });\n }\n }));\n }\n // show context menu\n const useShadowDOM = editor.getOption(127 /* EditorOption.useShadowDOM */);\n contextMenuService.showContextMenu({\n domForShadowRoot: useShadowDOM ? (_a = editor.getDomNode()) !== null && _a !== void 0 ? _a : undefined : undefined,\n getAnchor: () => {\n const box = _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.getDomNodePagePosition(anchor);\n return { x: box.left, y: box.top + box.height + 8 };\n },\n getActions: () => menuActions,\n onHide: () => {\n editor.focus();\n },\n autoSelectFirstItem: true,\n });\n}\nasync function goToDefinitionWithLocation(accessor, event, editor, location) {\n const resolverService = accessor.get(_common_services_resolverService_js__WEBPACK_IMPORTED_MODULE_5__.ITextModelService);\n const ref = await resolverService.createModelReference(location.uri);\n await editor.invokeWithinContext(async (accessor) => {\n const openToSide = event.hasSideBySideModifier;\n const contextKeyService = accessor.get(_platform_contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_10__.IContextKeyService);\n const isInPeek = _peekView_browser_peekView_js__WEBPACK_IMPORTED_MODULE_7__.PeekContext.inPeekEditor.getValue(contextKeyService);\n const canPeek = !openToSide && editor.getOption(88 /* EditorOption.definitionLinkOpensInPeek */) && !isInPeek;\n const action = new _gotoSymbol_browser_goToCommands_js__WEBPACK_IMPORTED_MODULE_6__.DefinitionAction({ openToSide, openInPeek: canPeek, muteMessage: true }, { title: { value: '', original: '' }, id: '', precondition: undefined });\n return action.run(accessor, new _gotoSymbol_browser_goToCommands_js__WEBPACK_IMPORTED_MODULE_6__.SymbolNavigationAnchor(ref.object.textEditorModel, _common_core_range_js__WEBPACK_IMPORTED_MODULE_4__.Range.getStartPosition(location.range)), _common_core_range_js__WEBPACK_IMPORTED_MODULE_4__.Range.lift(location.range));\n });\n ref.dispose();\n}\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/contrib/inlayHints/browser/inlayHintsLocations.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/contrib/inlineCompletions/browser/commandIds.js":
/*!**************************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/contrib/inlineCompletions/browser/commandIds.js ***!
\**************************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ inlineSuggestCommitId: () => (/* binding */ inlineSuggestCommitId),\n/* harmony export */ showNextInlineSuggestionActionId: () => (/* binding */ showNextInlineSuggestionActionId),\n/* harmony export */ showPreviousInlineSuggestionActionId: () => (/* binding */ showPreviousInlineSuggestionActionId)\n/* harmony export */ });\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\nconst inlineSuggestCommitId = 'editor.action.inlineSuggest.commit';\nconst showPreviousInlineSuggestionActionId = 'editor.action.inlineSuggest.showPrevious';\nconst showNextInlineSuggestionActionId = 'editor.action.inlineSuggest.showNext';\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/contrib/inlineCompletions/browser/commandIds.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/contrib/inlineCompletions/browser/commands.js":
/*!************************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/contrib/inlineCompletions/browser/commands.js ***!
\************************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ AcceptInlineCompletion: () => (/* binding */ AcceptInlineCompletion),\n/* harmony export */ AcceptNextLineOfInlineCompletion: () => (/* binding */ AcceptNextLineOfInlineCompletion),\n/* harmony export */ AcceptNextWordOfInlineCompletion: () => (/* binding */ AcceptNextWordOfInlineCompletion),\n/* harmony export */ HideInlineCompletion: () => (/* binding */ HideInlineCompletion),\n/* harmony export */ ShowNextInlineSuggestionAction: () => (/* binding */ ShowNextInlineSuggestionAction),\n/* harmony export */ ShowPreviousInlineSuggestionAction: () => (/* binding */ ShowPreviousInlineSuggestionAction),\n/* harmony export */ ToggleAlwaysShowInlineSuggestionToolbar: () => (/* binding */ ToggleAlwaysShowInlineSuggestionToolbar),\n/* harmony export */ TriggerInlineSuggestionAction: () => (/* binding */ TriggerInlineSuggestionAction)\n/* harmony export */ });\n/* harmony import */ var _base_common_observable_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../../base/common/observable.js */ \"./node_modules/monaco-editor/esm/vs/base/common/observable.js\");\n/* harmony import */ var _base_common_observableInternal_base_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../base/common/observableInternal/base.js */ \"./node_modules/monaco-editor/esm/vs/base/common/observableInternal/base.js\");\n/* harmony import */ var _browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../browser/editorExtensions.js */ \"./node_modules/monaco-editor/esm/vs/editor/browser/editorExtensions.js\");\n/* harmony import */ var _common_editorContextKeys_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../../common/editorContextKeys.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/editorContextKeys.js\");\n/* harmony import */ var _commandIds_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./commandIds.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/inlineCompletions/browser/commandIds.js\");\n/* harmony import */ var _inlineCompletionContextKeys_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./inlineCompletionContextKeys.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/inlineCompletions/browser/inlineCompletionContextKeys.js\");\n/* harmony import */ var _inlineCompletionsController_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ./inlineCompletionsController.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/inlineCompletions/browser/inlineCompletionsController.js\");\n/* harmony import */ var _suggest_browser_suggest_js__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ../../suggest/browser/suggest.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/suggest/browser/suggest.js\");\n/* harmony import */ var _nls_js__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ../../../../nls.js */ \"./node_modules/monaco-editor/esm/vs/nls.js\");\n/* harmony import */ var _platform_actions_common_actions_js__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ../../../../platform/actions/common/actions.js */ \"./node_modules/monaco-editor/esm/vs/platform/actions/common/actions.js\");\n/* harmony import */ var _platform_configuration_common_configuration_js__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! ../../../../platform/configuration/common/configuration.js */ \"./node_modules/monaco-editor/esm/vs/platform/configuration/common/configuration.js\");\n/* harmony import */ var _platform_contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(/*! ../../../../platform/contextkey/common/contextkey.js */ \"./node_modules/monaco-editor/esm/vs/platform/contextkey/common/contextkey.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n\n\n\n\n\n\n\n\n\n\n\nclass ShowNextInlineSuggestionAction extends _browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_2__.EditorAction {\n constructor() {\n super({\n id: ShowNextInlineSuggestionAction.ID,\n label: _nls_js__WEBPACK_IMPORTED_MODULE_8__.localize('action.inlineSuggest.showNext', \"Show Next Inline Suggestion\"),\n alias: 'Show Next Inline Suggestion',\n precondition: _platform_contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_11__.ContextKeyExpr.and(_common_editorContextKeys_js__WEBPACK_IMPORTED_MODULE_3__.EditorContextKeys.writable, _inlineCompletionContextKeys_js__WEBPACK_IMPORTED_MODULE_5__.InlineCompletionContextKeys.inlineSuggestionVisible),\n kbOpts: {\n weight: 100,\n primary: 512 /* KeyMod.Alt */ | 94 /* KeyCode.BracketRight */,\n },\n });\n }\n async run(accessor, editor) {\n var _a;\n const controller = _inlineCompletionsController_js__WEBPACK_IMPORTED_MODULE_6__.InlineCompletionsController.get(editor);\n (_a = controller === null || controller === void 0 ? void 0 : controller.model.get()) === null || _a === void 0 ? void 0 : _a.next();\n }\n}\nShowNextInlineSuggestionAction.ID = _commandIds_js__WEBPACK_IMPORTED_MODULE_4__.showNextInlineSuggestionActionId;\nclass ShowPreviousInlineSuggestionAction extends _browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_2__.EditorAction {\n constructor() {\n super({\n id: ShowPreviousInlineSuggestionAction.ID,\n label: _nls_js__WEBPACK_IMPORTED_MODULE_8__.localize('action.inlineSuggest.showPrevious', \"Show Previous Inline Suggestion\"),\n alias: 'Show Previous Inline Suggestion',\n precondition: _platform_contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_11__.ContextKeyExpr.and(_common_editorContextKeys_js__WEBPACK_IMPORTED_MODULE_3__.EditorContextKeys.writable, _inlineCompletionContextKeys_js__WEBPACK_IMPORTED_MODULE_5__.InlineCompletionContextKeys.inlineSuggestionVisible),\n kbOpts: {\n weight: 100,\n primary: 512 /* KeyMod.Alt */ | 92 /* KeyCode.BracketLeft */,\n },\n });\n }\n async run(accessor, editor) {\n var _a;\n const controller = _inlineCompletionsController_js__WEBPACK_IMPORTED_MODULE_6__.InlineCompletionsController.get(editor);\n (_a = controller === null || controller === void 0 ? void 0 : controller.model.get()) === null || _a === void 0 ? void 0 : _a.previous();\n }\n}\nShowPreviousInlineSuggestionAction.ID = _commandIds_js__WEBPACK_IMPORTED_MODULE_4__.showPreviousInlineSuggestionActionId;\nclass TriggerInlineSuggestionAction extends _browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_2__.EditorAction {\n constructor() {\n super({\n id: 'editor.action.inlineSuggest.trigger',\n label: _nls_js__WEBPACK_IMPORTED_MODULE_8__.localize('action.inlineSuggest.trigger', \"Trigger Inline Suggestion\"),\n alias: 'Trigger Inline Suggestion',\n precondition: _common_editorContextKeys_js__WEBPACK_IMPORTED_MODULE_3__.EditorContextKeys.writable\n });\n }\n async run(accessor, editor) {\n const controller = _inlineCompletionsController_js__WEBPACK_IMPORTED_MODULE_6__.InlineCompletionsController.get(editor);\n await (0,_base_common_observableInternal_base_js__WEBPACK_IMPORTED_MODULE_1__.asyncTransaction)(async (tx) => {\n var _a;\n /** @description triggerExplicitly from command */\n await ((_a = controller === null || controller === void 0 ? void 0 : controller.model.get()) === null || _a === void 0 ? void 0 : _a.triggerExplicitly(tx));\n controller === null || controller === void 0 ? void 0 : controller.playAccessibilitySignal(tx);\n });\n }\n}\nclass AcceptNextWordOfInlineCompletion extends _browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_2__.EditorAction {\n constructor() {\n super({\n id: 'editor.action.inlineSuggest.acceptNextWord',\n label: _nls_js__WEBPACK_IMPORTED_MODULE_8__.localize('action.inlineSuggest.acceptNextWord', \"Accept Next Word Of Inline Suggestion\"),\n alias: 'Accept Next Word Of Inline Suggestion',\n precondition: _platform_contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_11__.ContextKeyExpr.and(_common_editorContextKeys_js__WEBPACK_IMPORTED_MODULE_3__.EditorContextKeys.writable, _inlineCompletionContextKeys_js__WEBPACK_IMPORTED_MODULE_5__.InlineCompletionContextKeys.inlineSuggestionVisible),\n kbOpts: {\n weight: 100 /* KeybindingWeight.EditorContrib */ + 1,\n primary: 2048 /* KeyMod.CtrlCmd */ | 17 /* KeyCode.RightArrow */,\n kbExpr: _platform_contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_11__.ContextKeyExpr.and(_common_editorContextKeys_js__WEBPACK_IMPORTED_MODULE_3__.EditorContextKeys.writable, _inlineCompletionContextKeys_js__WEBPACK_IMPORTED_MODULE_5__.InlineCompletionContextKeys.inlineSuggestionVisible),\n },\n menuOpts: [{\n menuId: _platform_actions_common_actions_js__WEBPACK_IMPORTED_MODULE_9__.MenuId.InlineSuggestionToolbar,\n title: _nls_js__WEBPACK_IMPORTED_MODULE_8__.localize('acceptWord', 'Accept Word'),\n group: 'primary',\n order: 2,\n }],\n });\n }\n async run(accessor, editor) {\n var _a;\n const controller = _inlineCompletionsController_js__WEBPACK_IMPORTED_MODULE_6__.InlineCompletionsController.get(editor);\n await ((_a = controller === null || controller === void 0 ? void 0 : controller.model.get()) === null || _a === void 0 ? void 0 : _a.acceptNextWord(controller.editor));\n }\n}\nclass AcceptNextLineOfInlineCompletion extends _browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_2__.EditorAction {\n constructor() {\n super({\n id: 'editor.action.inlineSuggest.acceptNextLine',\n label: _nls_js__WEBPACK_IMPORTED_MODULE_8__.localize('action.inlineSuggest.acceptNextLine', \"Accept Next Line Of Inline Suggestion\"),\n alias: 'Accept Next Line Of Inline Suggestion',\n precondition: _platform_contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_11__.ContextKeyExpr.and(_common_editorContextKeys_js__WEBPACK_IMPORTED_MODULE_3__.EditorContextKeys.writable, _inlineCompletionContextKeys_js__WEBPACK_IMPORTED_MODULE_5__.InlineCompletionContextKeys.inlineSuggestionVisible),\n kbOpts: {\n weight: 100 /* KeybindingWeight.EditorContrib */ + 1,\n },\n menuOpts: [{\n menuId: _platform_actions_common_actions_js__WEBPACK_IMPORTED_MODULE_9__.MenuId.InlineSuggestionToolbar,\n title: _nls_js__WEBPACK_IMPORTED_MODULE_8__.localize('acceptLine', 'Accept Line'),\n group: 'secondary',\n order: 2,\n }],\n });\n }\n async run(accessor, editor) {\n var _a;\n const controller = _inlineCompletionsController_js__WEBPACK_IMPORTED_MODULE_6__.InlineCompletionsController.get(editor);\n await ((_a = controller === null || controller === void 0 ? void 0 : controller.model.get()) === null || _a === void 0 ? void 0 : _a.acceptNextLine(controller.editor));\n }\n}\nclass AcceptInlineCompletion extends _browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_2__.EditorAction {\n constructor() {\n super({\n id: _commandIds_js__WEBPACK_IMPORTED_MODULE_4__.inlineSuggestCommitId,\n label: _nls_js__WEBPACK_IMPORTED_MODULE_8__.localize('action.inlineSuggest.accept', \"Accept Inline Suggestion\"),\n alias: 'Accept Inline Suggestion',\n precondition: _inlineCompletionContextKeys_js__WEBPACK_IMPORTED_MODULE_5__.InlineCompletionContextKeys.inlineSuggestionVisible,\n menuOpts: [{\n menuId: _platform_actions_common_actions_js__WEBPACK_IMPORTED_MODULE_9__.MenuId.InlineSuggestionToolbar,\n title: _nls_js__WEBPACK_IMPORTED_MODULE_8__.localize('accept', \"Accept\"),\n group: 'primary',\n order: 1,\n }],\n kbOpts: {\n primary: 2 /* KeyCode.Tab */,\n weight: 200,\n kbExpr: _platform_contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_11__.ContextKeyExpr.and(_inlineCompletionContextKeys_js__WEBPACK_IMPORTED_MODULE_5__.InlineCompletionContextKeys.inlineSuggestionVisible, _common_editorContextKeys_js__WEBPACK_IMPORTED_MODULE_3__.EditorContextKeys.tabMovesFocus.toNegated(), _inlineCompletionContextKeys_js__WEBPACK_IMPORTED_MODULE_5__.InlineCompletionContextKeys.inlineSuggestionHasIndentationLessThanTabSize, _suggest_browser_suggest_js__WEBPACK_IMPORTED_MODULE_7__.Context.Visible.toNegated(), _common_editorContextKeys_js__WEBPACK_IMPORTED_MODULE_3__.EditorContextKeys.hoverFocused.toNegated()),\n }\n });\n }\n async run(accessor, editor) {\n var _a;\n const controller = _inlineCompletionsController_js__WEBPACK_IMPORTED_MODULE_6__.InlineCompletionsController.get(editor);\n if (controller) {\n (_a = controller.model.get()) === null || _a === void 0 ? void 0 : _a.accept(controller.editor);\n controller.editor.focus();\n }\n }\n}\nclass HideInlineCompletion extends _browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_2__.EditorAction {\n constructor() {\n super({\n id: HideInlineCompletion.ID,\n label: _nls_js__WEBPACK_IMPORTED_MODULE_8__.localize('action.inlineSuggest.hide', \"Hide Inline Suggestion\"),\n alias: 'Hide Inline Suggestion',\n precondition: _inlineCompletionContextKeys_js__WEBPACK_IMPORTED_MODULE_5__.InlineCompletionContextKeys.inlineSuggestionVisible,\n kbOpts: {\n weight: 100,\n primary: 9 /* KeyCode.Escape */,\n }\n });\n }\n async run(accessor, editor) {\n const controller = _inlineCompletionsController_js__WEBPACK_IMPORTED_MODULE_6__.InlineCompletionsController.get(editor);\n (0,_base_common_observable_js__WEBPACK_IMPORTED_MODULE_0__.transaction)(tx => {\n var _a;\n (_a = controller === null || controller === void 0 ? void 0 : controller.model.get()) === null || _a === void 0 ? void 0 : _a.stop(tx);\n });\n }\n}\nHideInlineCompletion.ID = 'editor.action.inlineSuggest.hide';\nclass ToggleAlwaysShowInlineSuggestionToolbar extends _platform_actions_common_actions_js__WEBPACK_IMPORTED_MODULE_9__.Action2 {\n constructor() {\n super({\n id: ToggleAlwaysShowInlineSuggestionToolbar.ID,\n title: _nls_js__WEBPACK_IMPORTED_MODULE_8__.localize('action.inlineSuggest.alwaysShowToolbar', \"Always Show Toolbar\"),\n f1: false,\n precondition: undefined,\n menu: [{\n id: _platform_actions_common_actions_js__WEBPACK_IMPORTED_MODULE_9__.MenuId.InlineSuggestionToolbar,\n group: 'secondary',\n order: 10,\n }],\n toggled: _platform_contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_11__.ContextKeyExpr.equals('config.editor.inlineSuggest.showToolbar', 'always')\n });\n }\n async run(accessor, editor) {\n const configService = accessor.get(_platform_configuration_common_configuration_js__WEBPACK_IMPORTED_MODULE_10__.IConfigurationService);\n const currentValue = configService.getValue('editor.inlineSuggest.showToolbar');\n const newValue = currentValue === 'always' ? 'onHover' : 'always';\n configService.updateValue('editor.inlineSuggest.showToolbar', newValue);\n }\n}\nToggleAlwaysShowInlineSuggestionToolbar.ID = 'editor.action.inlineSuggest.toggleAlwaysShowToolbar';\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/contrib/inlineCompletions/browser/commands.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/contrib/inlineCompletions/browser/ghostText.js":
/*!*************************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/contrib/inlineCompletions/browser/ghostText.js ***!
\*************************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ GhostText: () => (/* binding */ GhostText),\n/* harmony export */ GhostTextPart: () => (/* binding */ GhostTextPart),\n/* harmony export */ GhostTextReplacement: () => (/* binding */ GhostTextReplacement),\n/* harmony export */ ghostTextOrReplacementEquals: () => (/* binding */ ghostTextOrReplacementEquals),\n/* harmony export */ ghostTextsOrReplacementsEqual: () => (/* binding */ ghostTextsOrReplacementsEqual)\n/* harmony export */ });\n/* harmony import */ var _base_common_arrays_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../../base/common/arrays.js */ \"./node_modules/monaco-editor/esm/vs/base/common/arrays.js\");\n/* harmony import */ var _base_common_strings_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../base/common/strings.js */ \"./node_modules/monaco-editor/esm/vs/base/common/strings.js\");\n/* harmony import */ var _utils_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./utils.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/inlineCompletions/browser/utils.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n\n\nclass GhostText {\n constructor(lineNumber, parts) {\n this.lineNumber = lineNumber;\n this.parts = parts;\n }\n equals(other) {\n return this.lineNumber === other.lineNumber &&\n this.parts.length === other.parts.length &&\n this.parts.every((part, index) => part.equals(other.parts[index]));\n }\n renderForScreenReader(lineText) {\n if (this.parts.length === 0) {\n return '';\n }\n const lastPart = this.parts[this.parts.length - 1];\n const cappedLineText = lineText.substr(0, lastPart.column - 1);\n const text = (0,_utils_js__WEBPACK_IMPORTED_MODULE_2__.applyEdits)(cappedLineText, this.parts.map(p => ({\n range: { startLineNumber: 1, endLineNumber: 1, startColumn: p.column, endColumn: p.column },\n text: p.lines.join('\\n')\n })));\n return text.substring(this.parts[0].column - 1);\n }\n isEmpty() {\n return this.parts.every(p => p.lines.length === 0);\n }\n get lineCount() {\n return 1 + this.parts.reduce((r, p) => r + p.lines.length - 1, 0);\n }\n}\nclass GhostTextPart {\n constructor(column, text, \n /**\n * Indicates if this part is a preview of an inline suggestion when a suggestion is previewed.\n */\n preview) {\n this.column = column;\n this.text = text;\n this.preview = preview;\n this.lines = (0,_base_common_strings_js__WEBPACK_IMPORTED_MODULE_1__.splitLines)(this.text);\n }\n ;\n equals(other) {\n return this.column === other.column &&\n this.lines.length === other.lines.length &&\n this.lines.every((line, index) => line === other.lines[index]);\n }\n}\nclass GhostTextReplacement {\n constructor(lineNumber, columnRange, text, additionalReservedLineCount = 0) {\n this.lineNumber = lineNumber;\n this.columnRange = columnRange;\n this.text = text;\n this.additionalReservedLineCount = additionalReservedLineCount;\n this.parts = [\n new GhostTextPart(this.columnRange.endColumnExclusive, this.text, false),\n ];\n this.newLines = (0,_base_common_strings_js__WEBPACK_IMPORTED_MODULE_1__.splitLines)(this.text);\n }\n renderForScreenReader(_lineText) {\n return this.newLines.join('\\n');\n }\n get lineCount() {\n return this.newLines.length;\n }\n isEmpty() {\n return this.parts.every(p => p.lines.length === 0);\n }\n equals(other) {\n return this.lineNumber === other.lineNumber &&\n this.columnRange.equals(other.columnRange) &&\n this.newLines.length === other.newLines.length &&\n this.newLines.every((line, index) => line === other.newLines[index]) &&\n this.additionalReservedLineCount === other.additionalReservedLineCount;\n }\n}\nfunction ghostTextsOrReplacementsEqual(a, b) {\n return (0,_base_common_arrays_js__WEBPACK_IMPORTED_MODULE_0__.equals)(a, b, ghostTextOrReplacementEquals);\n}\nfunction ghostTextOrReplacementEquals(a, b) {\n if (a === b) {\n return true;\n }\n if (!a || !b) {\n return false;\n }\n if (a instanceof GhostText && b instanceof GhostText) {\n return a.equals(b);\n }\n if (a instanceof GhostTextReplacement && b instanceof GhostTextReplacement) {\n return a.equals(b);\n }\n return false;\n}\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/contrib/inlineCompletions/browser/ghostText.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/contrib/inlineCompletions/browser/ghostTextWidget.js":
/*!*******************************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/contrib/inlineCompletions/browser/ghostTextWidget.js ***!
\*******************************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ AdditionalLinesWidget: () => (/* binding */ AdditionalLinesWidget),\n/* harmony export */ GHOST_TEXT_DESCRIPTION: () => (/* binding */ GHOST_TEXT_DESCRIPTION),\n/* harmony export */ GhostTextWidget: () => (/* binding */ GhostTextWidget),\n/* harmony export */ ttPolicy: () => (/* binding */ ttPolicy)\n/* harmony export */ });\n/* harmony import */ var _base_browser_trustedTypes_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../../base/browser/trustedTypes.js */ \"./node_modules/monaco-editor/esm/vs/base/browser/trustedTypes.js\");\n/* harmony import */ var _base_common_event_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../base/common/event.js */ \"./node_modules/monaco-editor/esm/vs/base/common/event.js\");\n/* harmony import */ var _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../../base/common/lifecycle.js */ \"./node_modules/monaco-editor/esm/vs/base/common/lifecycle.js\");\n/* harmony import */ var _base_common_observable_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../../../base/common/observable.js */ \"./node_modules/monaco-editor/esm/vs/base/common/observable.js\");\n/* harmony import */ var _base_common_strings_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../../../base/common/strings.js */ \"./node_modules/monaco-editor/esm/vs/base/common/strings.js\");\n/* harmony import */ var _ghostText_css__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./ghostText.css */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/inlineCompletions/browser/ghostText.css\");\n/* harmony import */ var _browser_config_domFontInfo_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../../../browser/config/domFontInfo.js */ \"./node_modules/monaco-editor/esm/vs/editor/browser/config/domFontInfo.js\");\n/* harmony import */ var _common_config_editorOptions_js__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ../../../common/config/editorOptions.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/config/editorOptions.js\");\n/* harmony import */ var _common_core_position_js__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ../../../common/core/position.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/core/position.js\");\n/* harmony import */ var _common_core_range_js__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ../../../common/core/range.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/core/range.js\");\n/* harmony import */ var _common_core_stringBuilder_js__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! ../../../common/core/stringBuilder.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/core/stringBuilder.js\");\n/* harmony import */ var _common_languages_language_js__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(/*! ../../../common/languages/language.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/languages/language.js\");\n/* harmony import */ var _common_model_js__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(/*! ../../../common/model.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/model.js\");\n/* harmony import */ var _common_tokens_lineTokens_js__WEBPACK_IMPORTED_MODULE_13__ = __webpack_require__(/*! ../../../common/tokens/lineTokens.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/tokens/lineTokens.js\");\n/* harmony import */ var _common_viewLayout_lineDecorations_js__WEBPACK_IMPORTED_MODULE_14__ = __webpack_require__(/*! ../../../common/viewLayout/lineDecorations.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/viewLayout/lineDecorations.js\");\n/* harmony import */ var _common_viewLayout_viewLineRenderer_js__WEBPACK_IMPORTED_MODULE_15__ = __webpack_require__(/*! ../../../common/viewLayout/viewLineRenderer.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/viewLayout/viewLineRenderer.js\");\n/* harmony import */ var _ghostText_js__WEBPACK_IMPORTED_MODULE_16__ = __webpack_require__(/*! ./ghostText.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/inlineCompletions/browser/ghostText.js\");\n/* harmony import */ var _utils_js__WEBPACK_IMPORTED_MODULE_17__ = __webpack_require__(/*! ./utils.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/inlineCompletions/browser/utils.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\nvar __decorate = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\n return c > 3 && r && Object.defineProperty(target, key, r), r;\n};\nvar __param = (undefined && undefined.__param) || function (paramIndex, decorator) {\n return function (target, key) { decorator(target, key, paramIndex); }\n};\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nconst GHOST_TEXT_DESCRIPTION = 'ghost-text';\nlet GhostTextWidget = class GhostTextWidget extends _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_2__.Disposable {\n constructor(editor, model, languageService) {\n super();\n this.editor = editor;\n this.model = model;\n this.languageService = languageService;\n this.isDisposed = (0,_base_common_observable_js__WEBPACK_IMPORTED_MODULE_3__.observableValue)(this, false);\n this.currentTextModel = (0,_base_common_observable_js__WEBPACK_IMPORTED_MODULE_3__.observableFromEvent)(this.editor.onDidChangeModel, () => /** @description editor.model */ this.editor.getModel());\n this.uiState = (0,_base_common_observable_js__WEBPACK_IMPORTED_MODULE_3__.derived)(this, reader => {\n if (this.isDisposed.read(reader)) {\n return undefined;\n }\n const textModel = this.currentTextModel.read(reader);\n if (textModel !== this.model.targetTextModel.read(reader)) {\n return undefined;\n }\n const ghostText = this.model.ghostText.read(reader);\n if (!ghostText) {\n return undefined;\n }\n const replacedRange = ghostText instanceof _ghostText_js__WEBPACK_IMPORTED_MODULE_16__.GhostTextReplacement ? ghostText.columnRange : undefined;\n const inlineTexts = [];\n const additionalLines = [];\n function addToAdditionalLines(lines, className) {\n if (additionalLines.length > 0) {\n const lastLine = additionalLines[additionalLines.length - 1];\n if (className) {\n lastLine.decorations.push(new _common_viewLayout_lineDecorations_js__WEBPACK_IMPORTED_MODULE_14__.LineDecoration(lastLine.content.length + 1, lastLine.content.length + 1 + lines[0].length, className, 0 /* InlineDecorationType.Regular */));\n }\n lastLine.content += lines[0];\n lines = lines.slice(1);\n }\n for (const line of lines) {\n additionalLines.push({\n content: line,\n decorations: className ? [new _common_viewLayout_lineDecorations_js__WEBPACK_IMPORTED_MODULE_14__.LineDecoration(1, line.length + 1, className, 0 /* InlineDecorationType.Regular */)] : []\n });\n }\n }\n const textBufferLine = textModel.getLineContent(ghostText.lineNumber);\n let hiddenTextStartColumn = undefined;\n let lastIdx = 0;\n for (const part of ghostText.parts) {\n let lines = part.lines;\n if (hiddenTextStartColumn === undefined) {\n inlineTexts.push({\n column: part.column,\n text: lines[0],\n preview: part.preview,\n });\n lines = lines.slice(1);\n }\n else {\n addToAdditionalLines([textBufferLine.substring(lastIdx, part.column - 1)], undefined);\n }\n if (lines.length > 0) {\n addToAdditionalLines(lines, GHOST_TEXT_DESCRIPTION);\n if (hiddenTextStartColumn === undefined && part.column <= textBufferLine.length) {\n hiddenTextStartColumn = part.column;\n }\n }\n lastIdx = part.column - 1;\n }\n if (hiddenTextStartColumn !== undefined) {\n addToAdditionalLines([textBufferLine.substring(lastIdx)], undefined);\n }\n const hiddenRange = hiddenTextStartColumn !== undefined ? new _utils_js__WEBPACK_IMPORTED_MODULE_17__.ColumnRange(hiddenTextStartColumn, textBufferLine.length + 1) : undefined;\n return {\n replacedRange,\n inlineTexts,\n additionalLines,\n hiddenRange,\n lineNumber: ghostText.lineNumber,\n additionalReservedLineCount: this.model.minReservedLineCount.read(reader),\n targetTextModel: textModel,\n };\n });\n this.decorations = (0,_base_common_observable_js__WEBPACK_IMPORTED_MODULE_3__.derived)(this, reader => {\n const uiState = this.uiState.read(reader);\n if (!uiState) {\n return [];\n }\n const decorations = [];\n if (uiState.replacedRange) {\n decorations.push({\n range: uiState.replacedRange.toRange(uiState.lineNumber),\n options: { inlineClassName: 'inline-completion-text-to-replace', description: 'GhostTextReplacement' }\n });\n }\n if (uiState.hiddenRange) {\n decorations.push({\n range: uiState.hiddenRange.toRange(uiState.lineNumber),\n options: { inlineClassName: 'ghost-text-hidden', description: 'ghost-text-hidden', }\n });\n }\n for (const p of uiState.inlineTexts) {\n decorations.push({\n range: _common_core_range_js__WEBPACK_IMPORTED_MODULE_9__.Range.fromPositions(new _common_core_position_js__WEBPACK_IMPORTED_MODULE_8__.Position(uiState.lineNumber, p.column)),\n options: {\n description: GHOST_TEXT_DESCRIPTION,\n after: { content: p.text, inlineClassName: p.preview ? 'ghost-text-decoration-preview' : 'ghost-text-decoration', cursorStops: _common_model_js__WEBPACK_IMPORTED_MODULE_12__.InjectedTextCursorStops.Left },\n showIfCollapsed: true,\n }\n });\n }\n return decorations;\n });\n this.additionalLinesWidget = this._register(new AdditionalLinesWidget(this.editor, this.languageService.languageIdCodec, (0,_base_common_observable_js__WEBPACK_IMPORTED_MODULE_3__.derived)(reader => {\n /** @description lines */\n const uiState = this.uiState.read(reader);\n return uiState ? {\n lineNumber: uiState.lineNumber,\n additionalLines: uiState.additionalLines,\n minReservedLineCount: uiState.additionalReservedLineCount,\n targetTextModel: uiState.targetTextModel,\n } : undefined;\n })));\n this._register((0,_base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_2__.toDisposable)(() => { this.isDisposed.set(true, undefined); }));\n this._register((0,_utils_js__WEBPACK_IMPORTED_MODULE_17__.applyObservableDecorations)(this.editor, this.decorations));\n }\n ownsViewZone(viewZoneId) {\n return this.additionalLinesWidget.viewZoneId === viewZoneId;\n }\n};\nGhostTextWidget = __decorate([\n __param(2, _common_languages_language_js__WEBPACK_IMPORTED_MODULE_11__.ILanguageService)\n], GhostTextWidget);\n\nclass AdditionalLinesWidget extends _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_2__.Disposable {\n get viewZoneId() { return this._viewZoneId; }\n constructor(editor, languageIdCodec, lines) {\n super();\n this.editor = editor;\n this.languageIdCodec = languageIdCodec;\n this.lines = lines;\n this._viewZoneId = undefined;\n this.editorOptionsChanged = (0,_base_common_observable_js__WEBPACK_IMPORTED_MODULE_3__.observableSignalFromEvent)('editorOptionChanged', _base_common_event_js__WEBPACK_IMPORTED_MODULE_1__.Event.filter(this.editor.onDidChangeConfiguration, e => e.hasChanged(33 /* EditorOption.disableMonospaceOptimizations */)\n || e.hasChanged(117 /* EditorOption.stopRenderingLineAfter */)\n || e.hasChanged(99 /* EditorOption.renderWhitespace */)\n || e.hasChanged(94 /* EditorOption.renderControlCharacters */)\n || e.hasChanged(51 /* EditorOption.fontLigatures */)\n || e.hasChanged(50 /* EditorOption.fontInfo */)\n || e.hasChanged(67 /* EditorOption.lineHeight */)));\n this._register((0,_base_common_observable_js__WEBPACK_IMPORTED_MODULE_3__.autorun)(reader => {\n /** @description update view zone */\n const lines = this.lines.read(reader);\n this.editorOptionsChanged.read(reader);\n if (lines) {\n this.updateLines(lines.lineNumber, lines.additionalLines, lines.minReservedLineCount);\n }\n else {\n this.clear();\n }\n }));\n }\n dispose() {\n super.dispose();\n this.clear();\n }\n clear() {\n this.editor.changeViewZones((changeAccessor) => {\n if (this._viewZoneId) {\n changeAccessor.removeZone(this._viewZoneId);\n this._viewZoneId = undefined;\n }\n });\n }\n updateLines(lineNumber, additionalLines, minReservedLineCount) {\n const textModel = this.editor.getModel();\n if (!textModel) {\n return;\n }\n const { tabSize } = textModel.getOptions();\n this.editor.changeViewZones((changeAccessor) => {\n if (this._viewZoneId) {\n changeAccessor.removeZone(this._viewZoneId);\n this._viewZoneId = undefined;\n }\n const heightInLines = Math.max(additionalLines.length, minReservedLineCount);\n if (heightInLines > 0) {\n const domNode = document.createElement('div');\n renderLines(domNode, tabSize, additionalLines, this.editor.getOptions(), this.languageIdCodec);\n this._viewZoneId = changeAccessor.addZone({\n afterLineNumber: lineNumber,\n heightInLines: heightInLines,\n domNode,\n afterColumnAffinity: 1 /* PositionAffinity.Right */\n });\n }\n });\n }\n}\nfunction renderLines(domNode, tabSize, lines, opts, languageIdCodec) {\n const disableMonospaceOptimizations = opts.get(33 /* EditorOption.disableMonospaceOptimizations */);\n const stopRenderingLineAfter = opts.get(117 /* EditorOption.stopRenderingLineAfter */);\n // To avoid visual confusion, we don't want to render visible whitespace\n const renderWhitespace = 'none';\n const renderControlCharacters = opts.get(94 /* EditorOption.renderControlCharacters */);\n const fontLigatures = opts.get(51 /* EditorOption.fontLigatures */);\n const fontInfo = opts.get(50 /* EditorOption.fontInfo */);\n const lineHeight = opts.get(67 /* EditorOption.lineHeight */);\n const sb = new _common_core_stringBuilder_js__WEBPACK_IMPORTED_MODULE_10__.StringBuilder(10000);\n sb.appendString('');\n for (let i = 0, len = lines.length; i < len; i++) {\n const lineData = lines[i];\n const line = lineData.content;\n sb.appendString(' ');\n const isBasicASCII = _base_common_strings_js__WEBPACK_IMPORTED_MODULE_4__.isBasicASCII(line);\n const containsRTL = _base_common_strings_js__WEBPACK_IMPORTED_MODULE_4__.containsRTL(line);\n const lineTokens = _common_tokens_lineTokens_js__WEBPACK_IMPORTED_MODULE_13__.LineTokens.createEmpty(line, languageIdCodec);\n (0,_common_viewLayout_viewLineRenderer_js__WEBPACK_IMPORTED_MODULE_15__.renderViewLine)(new _common_viewLayout_viewLineRenderer_js__WEBPACK_IMPORTED_MODULE_15__.RenderLineInput((fontInfo.isMonospace && !disableMonospaceOptimizations), fontInfo.canUseHalfwidthRightwardsArrow, line, false, isBasicASCII, containsRTL, 0, lineTokens, lineData.decorations, tabSize, 0, fontInfo.spaceWidth, fontInfo.middotWidth, fontInfo.wsmiddotWidth, stopRenderingLineAfter, renderWhitespace, renderControlCharacters, fontLigatures !== _common_config_editorOptions_js__WEBPACK_IMPORTED_MODULE_7__.EditorFontLigatures.OFF, null), sb);\n sb.appendString(' ');\n }\n sb.appendString(' ');\n (0,_browser_config_domFontInfo_js__WEBPACK_IMPORTED_MODULE_6__.applyFontInfo)(domNode, fontInfo);\n const html = sb.build();\n const trustedhtml = ttPolicy ? ttPolicy.createHTML(html) : html;\n domNode.innerHTML = trustedhtml;\n}\nconst ttPolicy = (0,_base_browser_trustedTypes_js__WEBPACK_IMPORTED_MODULE_0__.createTrustedTypesPolicy)('editorGhostText', { createHTML: value => value });\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/contrib/inlineCompletions/browser/ghostTextWidget.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/contrib/inlineCompletions/browser/hoverParticipant.js":
/*!********************************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/contrib/inlineCompletions/browser/hoverParticipant.js ***!
\********************************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ InlineCompletionsHover: () => (/* binding */ InlineCompletionsHover),\n/* harmony export */ InlineCompletionsHoverParticipant: () => (/* binding */ InlineCompletionsHoverParticipant)\n/* harmony export */ });\n/* harmony import */ var _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../../base/browser/dom.js */ \"./node_modules/monaco-editor/esm/vs/base/browser/dom.js\");\n/* harmony import */ var _base_common_htmlContent_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../base/common/htmlContent.js */ \"./node_modules/monaco-editor/esm/vs/base/common/htmlContent.js\");\n/* harmony import */ var _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../../base/common/lifecycle.js */ \"./node_modules/monaco-editor/esm/vs/base/common/lifecycle.js\");\n/* harmony import */ var _base_common_observable_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../../../base/common/observable.js */ \"./node_modules/monaco-editor/esm/vs/base/common/observable.js\");\n/* harmony import */ var _common_core_range_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../../common/core/range.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/core/range.js\");\n/* harmony import */ var _common_languages_language_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../../../common/languages/language.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/languages/language.js\");\n/* harmony import */ var _hover_browser_hoverTypes_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../../hover/browser/hoverTypes.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/hover/browser/hoverTypes.js\");\n/* harmony import */ var _inlineCompletionsController_js__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ./inlineCompletionsController.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/inlineCompletions/browser/inlineCompletionsController.js\");\n/* harmony import */ var _inlineCompletionsHintsWidget_js__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ./inlineCompletionsHintsWidget.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/inlineCompletions/browser/inlineCompletionsHintsWidget.js\");\n/* harmony import */ var _browser_widget_markdownRenderer_browser_markdownRenderer_js__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ../../../browser/widget/markdownRenderer/browser/markdownRenderer.js */ \"./node_modules/monaco-editor/esm/vs/editor/browser/widget/markdownRenderer/browser/markdownRenderer.js\");\n/* harmony import */ var _nls_js__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! ../../../../nls.js */ \"./node_modules/monaco-editor/esm/vs/nls.js\");\n/* harmony import */ var _platform_accessibility_common_accessibility_js__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(/*! ../../../../platform/accessibility/common/accessibility.js */ \"./node_modules/monaco-editor/esm/vs/platform/accessibility/common/accessibility.js\");\n/* harmony import */ var _platform_instantiation_common_instantiation_js__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(/*! ../../../../platform/instantiation/common/instantiation.js */ \"./node_modules/monaco-editor/esm/vs/platform/instantiation/common/instantiation.js\");\n/* harmony import */ var _platform_opener_common_opener_js__WEBPACK_IMPORTED_MODULE_13__ = __webpack_require__(/*! ../../../../platform/opener/common/opener.js */ \"./node_modules/monaco-editor/esm/vs/platform/opener/common/opener.js\");\n/* harmony import */ var _platform_telemetry_common_telemetry_js__WEBPACK_IMPORTED_MODULE_14__ = __webpack_require__(/*! ../../../../platform/telemetry/common/telemetry.js */ \"./node_modules/monaco-editor/esm/vs/platform/telemetry/common/telemetry.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\nvar __decorate = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\n return c > 3 && r && Object.defineProperty(target, key, r), r;\n};\nvar __param = (undefined && undefined.__param) || function (paramIndex, decorator) {\n return function (target, key) { decorator(target, key, paramIndex); }\n};\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nclass InlineCompletionsHover {\n constructor(owner, range, controller) {\n this.owner = owner;\n this.range = range;\n this.controller = controller;\n }\n isValidForHoverAnchor(anchor) {\n return (anchor.type === 1 /* HoverAnchorType.Range */\n && this.range.startColumn <= anchor.range.startColumn\n && this.range.endColumn >= anchor.range.endColumn);\n }\n}\nlet InlineCompletionsHoverParticipant = class InlineCompletionsHoverParticipant {\n constructor(_editor, _languageService, _openerService, accessibilityService, _instantiationService, _telemetryService) {\n this._editor = _editor;\n this._languageService = _languageService;\n this._openerService = _openerService;\n this.accessibilityService = accessibilityService;\n this._instantiationService = _instantiationService;\n this._telemetryService = _telemetryService;\n this.hoverOrdinal = 4;\n }\n suggestHoverAnchor(mouseEvent) {\n const controller = _inlineCompletionsController_js__WEBPACK_IMPORTED_MODULE_7__.InlineCompletionsController.get(this._editor);\n if (!controller) {\n return null;\n }\n const target = mouseEvent.target;\n if (target.type === 8 /* MouseTargetType.CONTENT_VIEW_ZONE */) {\n // handle the case where the mouse is over the view zone\n const viewZoneData = target.detail;\n if (controller.shouldShowHoverAtViewZone(viewZoneData.viewZoneId)) {\n return new _hover_browser_hoverTypes_js__WEBPACK_IMPORTED_MODULE_6__.HoverForeignElementAnchor(1000, this, _common_core_range_js__WEBPACK_IMPORTED_MODULE_4__.Range.fromPositions(this._editor.getModel().validatePosition(viewZoneData.positionBefore || viewZoneData.position)), mouseEvent.event.posx, mouseEvent.event.posy, false);\n }\n }\n if (target.type === 7 /* MouseTargetType.CONTENT_EMPTY */) {\n // handle the case where the mouse is over the empty portion of a line following ghost text\n if (controller.shouldShowHoverAt(target.range)) {\n return new _hover_browser_hoverTypes_js__WEBPACK_IMPORTED_MODULE_6__.HoverForeignElementAnchor(1000, this, target.range, mouseEvent.event.posx, mouseEvent.event.posy, false);\n }\n }\n if (target.type === 6 /* MouseTargetType.CONTENT_TEXT */) {\n // handle the case where the mouse is directly over ghost text\n const mightBeForeignElement = target.detail.mightBeForeignElement;\n if (mightBeForeignElement && controller.shouldShowHoverAt(target.range)) {\n return new _hover_browser_hoverTypes_js__WEBPACK_IMPORTED_MODULE_6__.HoverForeignElementAnchor(1000, this, target.range, mouseEvent.event.posx, mouseEvent.event.posy, false);\n }\n }\n return null;\n }\n computeSync(anchor, lineDecorations) {\n if (this._editor.getOption(62 /* EditorOption.inlineSuggest */).showToolbar !== 'onHover') {\n return [];\n }\n const controller = _inlineCompletionsController_js__WEBPACK_IMPORTED_MODULE_7__.InlineCompletionsController.get(this._editor);\n if (controller && controller.shouldShowHoverAt(anchor.range)) {\n return [new InlineCompletionsHover(this, anchor.range, controller)];\n }\n return [];\n }\n renderHoverParts(context, hoverParts) {\n const disposableStore = new _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_2__.DisposableStore();\n const part = hoverParts[0];\n this._telemetryService.publicLog2('inlineCompletionHover.shown');\n if (this.accessibilityService.isScreenReaderOptimized() && !this._editor.getOption(8 /* EditorOption.screenReaderAnnounceInlineSuggestion */)) {\n this.renderScreenReaderText(context, part, disposableStore);\n }\n const model = part.controller.model.get();\n const w = this._instantiationService.createInstance(_inlineCompletionsHintsWidget_js__WEBPACK_IMPORTED_MODULE_8__.InlineSuggestionHintsContentWidget, this._editor, false, (0,_base_common_observable_js__WEBPACK_IMPORTED_MODULE_3__.constObservable)(null), model.selectedInlineCompletionIndex, model.inlineCompletionsCount, model.selectedInlineCompletion.map(v => /** @description commands */ { var _a; /** @description commands */ return (_a = v === null || v === void 0 ? void 0 : v.inlineCompletion.source.inlineCompletions.commands) !== null && _a !== void 0 ? _a : []; }));\n context.fragment.appendChild(w.getDomNode());\n model.triggerExplicitly();\n disposableStore.add(w);\n return disposableStore;\n }\n renderScreenReaderText(context, part, disposableStore) {\n const $ = _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.$;\n const markdownHoverElement = $('div.hover-row.markdown-hover');\n const hoverContentsElement = _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.append(markdownHoverElement, $('div.hover-contents', { ['aria-live']: 'assertive' }));\n const renderer = disposableStore.add(new _browser_widget_markdownRenderer_browser_markdownRenderer_js__WEBPACK_IMPORTED_MODULE_9__.MarkdownRenderer({ editor: this._editor }, this._languageService, this._openerService));\n const render = (code) => {\n disposableStore.add(renderer.onDidRenderAsync(() => {\n hoverContentsElement.className = 'hover-contents code-hover-contents';\n context.onContentsChanged();\n }));\n const inlineSuggestionAvailable = _nls_js__WEBPACK_IMPORTED_MODULE_10__.localize('inlineSuggestionFollows', \"Suggestion:\");\n const renderedContents = disposableStore.add(renderer.render(new _base_common_htmlContent_js__WEBPACK_IMPORTED_MODULE_1__.MarkdownString().appendText(inlineSuggestionAvailable).appendCodeblock('text', code)));\n hoverContentsElement.replaceChildren(renderedContents.element);\n };\n disposableStore.add((0,_base_common_observable_js__WEBPACK_IMPORTED_MODULE_3__.autorun)(reader => {\n var _a;\n /** @description update hover */\n const ghostText = (_a = part.controller.model.read(reader)) === null || _a === void 0 ? void 0 : _a.primaryGhostText.read(reader);\n if (ghostText) {\n const lineText = this._editor.getModel().getLineContent(ghostText.lineNumber);\n render(ghostText.renderForScreenReader(lineText));\n }\n else {\n _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.reset(hoverContentsElement);\n }\n }));\n context.fragment.appendChild(markdownHoverElement);\n }\n};\nInlineCompletionsHoverParticipant = __decorate([\n __param(1, _common_languages_language_js__WEBPACK_IMPORTED_MODULE_5__.ILanguageService),\n __param(2, _platform_opener_common_opener_js__WEBPACK_IMPORTED_MODULE_13__.IOpenerService),\n __param(3, _platform_accessibility_common_accessibility_js__WEBPACK_IMPORTED_MODULE_11__.IAccessibilityService),\n __param(4, _platform_instantiation_common_instantiation_js__WEBPACK_IMPORTED_MODULE_12__.IInstantiationService),\n __param(5, _platform_telemetry_common_telemetry_js__WEBPACK_IMPORTED_MODULE_14__.ITelemetryService)\n], InlineCompletionsHoverParticipant);\n\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/contrib/inlineCompletions/browser/hoverParticipant.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/contrib/inlineCompletions/browser/inlineCompletionContextKeys.js":
/*!*******************************************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/contrib/inlineCompletions/browser/inlineCompletionContextKeys.js ***!
\*******************************************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ InlineCompletionContextKeys: () => (/* binding */ InlineCompletionContextKeys)\n/* harmony export */ });\n/* harmony import */ var _base_common_observable_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../../base/common/observable.js */ \"./node_modules/monaco-editor/esm/vs/base/common/observable.js\");\n/* harmony import */ var _base_common_strings_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../base/common/strings.js */ \"./node_modules/monaco-editor/esm/vs/base/common/strings.js\");\n/* harmony import */ var _common_core_cursorColumns_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../common/core/cursorColumns.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/core/cursorColumns.js\");\n/* harmony import */ var _platform_contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../../../platform/contextkey/common/contextkey.js */ \"./node_modules/monaco-editor/esm/vs/platform/contextkey/common/contextkey.js\");\n/* harmony import */ var _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../../../base/common/lifecycle.js */ \"./node_modules/monaco-editor/esm/vs/base/common/lifecycle.js\");\n/* harmony import */ var _nls_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../../../../nls.js */ \"./node_modules/monaco-editor/esm/vs/nls.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n\n\n\n\n\nclass InlineCompletionContextKeys extends _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_4__.Disposable {\n constructor(contextKeyService, model) {\n super();\n this.contextKeyService = contextKeyService;\n this.model = model;\n this.inlineCompletionVisible = InlineCompletionContextKeys.inlineSuggestionVisible.bindTo(this.contextKeyService);\n this.inlineCompletionSuggestsIndentation = InlineCompletionContextKeys.inlineSuggestionHasIndentation.bindTo(this.contextKeyService);\n this.inlineCompletionSuggestsIndentationLessThanTabSize = InlineCompletionContextKeys.inlineSuggestionHasIndentationLessThanTabSize.bindTo(this.contextKeyService);\n this.suppressSuggestions = InlineCompletionContextKeys.suppressSuggestions.bindTo(this.contextKeyService);\n this._register((0,_base_common_observable_js__WEBPACK_IMPORTED_MODULE_0__.autorun)(reader => {\n /** @description update context key: inlineCompletionVisible, suppressSuggestions */\n const model = this.model.read(reader);\n const state = model === null || model === void 0 ? void 0 : model.state.read(reader);\n const isInlineCompletionVisible = !!(state === null || state === void 0 ? void 0 : state.inlineCompletion) && (state === null || state === void 0 ? void 0 : state.primaryGhostText) !== undefined && !(state === null || state === void 0 ? void 0 : state.primaryGhostText.isEmpty());\n this.inlineCompletionVisible.set(isInlineCompletionVisible);\n if ((state === null || state === void 0 ? void 0 : state.primaryGhostText) && (state === null || state === void 0 ? void 0 : state.inlineCompletion)) {\n this.suppressSuggestions.set(state.inlineCompletion.inlineCompletion.source.inlineCompletions.suppressSuggestions);\n }\n }));\n this._register((0,_base_common_observable_js__WEBPACK_IMPORTED_MODULE_0__.autorun)(reader => {\n /** @description update context key: inlineCompletionSuggestsIndentation, inlineCompletionSuggestsIndentationLessThanTabSize */\n const model = this.model.read(reader);\n let startsWithIndentation = false;\n let startsWithIndentationLessThanTabSize = true;\n const ghostText = model === null || model === void 0 ? void 0 : model.primaryGhostText.read(reader);\n if (!!(model === null || model === void 0 ? void 0 : model.selectedSuggestItem) && ghostText && ghostText.parts.length > 0) {\n const { column, lines } = ghostText.parts[0];\n const firstLine = lines[0];\n const indentationEndColumn = model.textModel.getLineIndentColumn(ghostText.lineNumber);\n const inIndentation = column <= indentationEndColumn;\n if (inIndentation) {\n let firstNonWsIdx = (0,_base_common_strings_js__WEBPACK_IMPORTED_MODULE_1__.firstNonWhitespaceIndex)(firstLine);\n if (firstNonWsIdx === -1) {\n firstNonWsIdx = firstLine.length - 1;\n }\n startsWithIndentation = firstNonWsIdx > 0;\n const tabSize = model.textModel.getOptions().tabSize;\n const visibleColumnIndentation = _common_core_cursorColumns_js__WEBPACK_IMPORTED_MODULE_2__.CursorColumns.visibleColumnFromColumn(firstLine, firstNonWsIdx + 1, tabSize);\n startsWithIndentationLessThanTabSize = visibleColumnIndentation < tabSize;\n }\n }\n this.inlineCompletionSuggestsIndentation.set(startsWithIndentation);\n this.inlineCompletionSuggestsIndentationLessThanTabSize.set(startsWithIndentationLessThanTabSize);\n }));\n }\n}\nInlineCompletionContextKeys.inlineSuggestionVisible = new _platform_contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_3__.RawContextKey('inlineSuggestionVisible', false, (0,_nls_js__WEBPACK_IMPORTED_MODULE_5__.localize)('inlineSuggestionVisible', \"Whether an inline suggestion is visible\"));\nInlineCompletionContextKeys.inlineSuggestionHasIndentation = new _platform_contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_3__.RawContextKey('inlineSuggestionHasIndentation', false, (0,_nls_js__WEBPACK_IMPORTED_MODULE_5__.localize)('inlineSuggestionHasIndentation', \"Whether the inline suggestion starts with whitespace\"));\nInlineCompletionContextKeys.inlineSuggestionHasIndentationLessThanTabSize = new _platform_contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_3__.RawContextKey('inlineSuggestionHasIndentationLessThanTabSize', true, (0,_nls_js__WEBPACK_IMPORTED_MODULE_5__.localize)('inlineSuggestionHasIndentationLessThanTabSize', \"Whether the inline suggestion starts with whitespace that is less than what would be inserted by tab\"));\nInlineCompletionContextKeys.suppressSuggestions = new _platform_contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_3__.RawContextKey('inlineSuggestionSuppressSuggestions', undefined, (0,_nls_js__WEBPACK_IMPORTED_MODULE_5__.localize)('suppressSuggestions', \"Whether suggestions should be suppressed for the current suggestion\"));\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/contrib/inlineCompletions/browser/inlineCompletionContextKeys.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/contrib/inlineCompletions/browser/inlineCompletions.contribution.js":
/*!**********************************************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/contrib/inlineCompletions/browser/inlineCompletions.contribution.js ***!
\**********************************************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var _browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../browser/editorExtensions.js */ \"./node_modules/monaco-editor/esm/vs/editor/browser/editorExtensions.js\");\n/* harmony import */ var _hover_browser_hoverTypes_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../hover/browser/hoverTypes.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/hover/browser/hoverTypes.js\");\n/* harmony import */ var _commands_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./commands.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/inlineCompletions/browser/commands.js\");\n/* harmony import */ var _hoverParticipant_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./hoverParticipant.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/inlineCompletions/browser/hoverParticipant.js\");\n/* harmony import */ var _inlineCompletionsController_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./inlineCompletionsController.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/inlineCompletions/browser/inlineCompletionsController.js\");\n/* harmony import */ var _platform_actions_common_actions_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../../../../platform/actions/common/actions.js */ \"./node_modules/monaco-editor/esm/vs/platform/actions/common/actions.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n\n\n\n\n\n(0,_browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_0__.registerEditorContribution)(_inlineCompletionsController_js__WEBPACK_IMPORTED_MODULE_4__.InlineCompletionsController.ID, _inlineCompletionsController_js__WEBPACK_IMPORTED_MODULE_4__.InlineCompletionsController, 3 /* EditorContributionInstantiation.Eventually */);\n(0,_browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_0__.registerEditorAction)(_commands_js__WEBPACK_IMPORTED_MODULE_2__.TriggerInlineSuggestionAction);\n(0,_browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_0__.registerEditorAction)(_commands_js__WEBPACK_IMPORTED_MODULE_2__.ShowNextInlineSuggestionAction);\n(0,_browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_0__.registerEditorAction)(_commands_js__WEBPACK_IMPORTED_MODULE_2__.ShowPreviousInlineSuggestionAction);\n(0,_browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_0__.registerEditorAction)(_commands_js__WEBPACK_IMPORTED_MODULE_2__.AcceptNextWordOfInlineCompletion);\n(0,_browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_0__.registerEditorAction)(_commands_js__WEBPACK_IMPORTED_MODULE_2__.AcceptNextLineOfInlineCompletion);\n(0,_browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_0__.registerEditorAction)(_commands_js__WEBPACK_IMPORTED_MODULE_2__.AcceptInlineCompletion);\n(0,_browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_0__.registerEditorAction)(_commands_js__WEBPACK_IMPORTED_MODULE_2__.HideInlineCompletion);\n(0,_platform_actions_common_actions_js__WEBPACK_IMPORTED_MODULE_5__.registerAction2)(_commands_js__WEBPACK_IMPORTED_MODULE_2__.ToggleAlwaysShowInlineSuggestionToolbar);\n_hover_browser_hoverTypes_js__WEBPACK_IMPORTED_MODULE_1__.HoverParticipantRegistry.register(_hoverParticipant_js__WEBPACK_IMPORTED_MODULE_3__.InlineCompletionsHoverParticipant);\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/contrib/inlineCompletions/browser/inlineCompletions.contribution.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/contrib/inlineCompletions/browser/inlineCompletionsController.js":
/*!*******************************************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/contrib/inlineCompletions/browser/inlineCompletionsController.js ***!
\*******************************************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ InlineCompletionsController: () => (/* binding */ InlineCompletionsController)\n/* harmony export */ });\n/* harmony import */ var _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../../base/browser/dom.js */ \"./node_modules/monaco-editor/esm/vs/base/browser/dom.js\");\n/* harmony import */ var _base_browser_ui_aria_aria_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../base/browser/ui/aria/aria.js */ \"./node_modules/monaco-editor/esm/vs/base/browser/ui/aria/aria.js\");\n/* harmony import */ var _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../../base/common/lifecycle.js */ \"./node_modules/monaco-editor/esm/vs/base/common/lifecycle.js\");\n/* harmony import */ var _base_common_observable_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../../../base/common/observable.js */ \"./node_modules/monaco-editor/esm/vs/base/common/observable.js\");\n/* harmony import */ var _browser_coreCommands_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../../browser/coreCommands.js */ \"./node_modules/monaco-editor/esm/vs/editor/browser/coreCommands.js\");\n/* harmony import */ var _common_core_position_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../../../common/core/position.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/core/position.js\");\n/* harmony import */ var _common_services_languageFeatureDebounce_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../../../common/services/languageFeatureDebounce.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/services/languageFeatureDebounce.js\");\n/* harmony import */ var _common_services_languageFeatures_js__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ../../../common/services/languageFeatures.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/services/languageFeatures.js\");\n/* harmony import */ var _commandIds_js__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ./commandIds.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/inlineCompletions/browser/commandIds.js\");\n/* harmony import */ var _ghostTextWidget_js__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ./ghostTextWidget.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/inlineCompletions/browser/ghostTextWidget.js\");\n/* harmony import */ var _inlineCompletionContextKeys_js__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! ./inlineCompletionContextKeys.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/inlineCompletions/browser/inlineCompletionContextKeys.js\");\n/* harmony import */ var _inlineCompletionsHintsWidget_js__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(/*! ./inlineCompletionsHintsWidget.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/inlineCompletions/browser/inlineCompletionsHintsWidget.js\");\n/* harmony import */ var _inlineCompletionsModel_js__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(/*! ./inlineCompletionsModel.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/inlineCompletions/browser/inlineCompletionsModel.js\");\n/* harmony import */ var _suggestWidgetInlineCompletionProvider_js__WEBPACK_IMPORTED_MODULE_13__ = __webpack_require__(/*! ./suggestWidgetInlineCompletionProvider.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/inlineCompletions/browser/suggestWidgetInlineCompletionProvider.js\");\n/* harmony import */ var _nls_js__WEBPACK_IMPORTED_MODULE_14__ = __webpack_require__(/*! ../../../../nls.js */ \"./node_modules/monaco-editor/esm/vs/nls.js\");\n/* harmony import */ var _platform_accessibilitySignal_browser_accessibilitySignalService_js__WEBPACK_IMPORTED_MODULE_15__ = __webpack_require__(/*! ../../../../platform/accessibilitySignal/browser/accessibilitySignalService.js */ \"./node_modules/monaco-editor/esm/vs/platform/accessibilitySignal/browser/accessibilitySignalService.js\");\n/* harmony import */ var _platform_commands_common_commands_js__WEBPACK_IMPORTED_MODULE_16__ = __webpack_require__(/*! ../../../../platform/commands/common/commands.js */ \"./node_modules/monaco-editor/esm/vs/platform/commands/common/commands.js\");\n/* harmony import */ var _platform_configuration_common_configuration_js__WEBPACK_IMPORTED_MODULE_17__ = __webpack_require__(/*! ../../../../platform/configuration/common/configuration.js */ \"./node_modules/monaco-editor/esm/vs/platform/configuration/common/configuration.js\");\n/* harmony import */ var _platform_contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_18__ = __webpack_require__(/*! ../../../../platform/contextkey/common/contextkey.js */ \"./node_modules/monaco-editor/esm/vs/platform/contextkey/common/contextkey.js\");\n/* harmony import */ var _platform_instantiation_common_instantiation_js__WEBPACK_IMPORTED_MODULE_19__ = __webpack_require__(/*! ../../../../platform/instantiation/common/instantiation.js */ \"./node_modules/monaco-editor/esm/vs/platform/instantiation/common/instantiation.js\");\n/* harmony import */ var _platform_keybinding_common_keybinding_js__WEBPACK_IMPORTED_MODULE_20__ = __webpack_require__(/*! ../../../../platform/keybinding/common/keybinding.js */ \"./node_modules/monaco-editor/esm/vs/platform/keybinding/common/keybinding.js\");\n/* harmony import */ var _base_common_observableInternal_utils_js__WEBPACK_IMPORTED_MODULE_21__ = __webpack_require__(/*! ../../../../base/common/observableInternal/utils.js */ \"./node_modules/monaco-editor/esm/vs/base/common/observableInternal/utils.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\nvar __decorate = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\n return c > 3 && r && Object.defineProperty(target, key, r), r;\n};\nvar __param = (undefined && undefined.__param) || function (paramIndex, decorator) {\n return function (target, key) { decorator(target, key, paramIndex); }\n};\nvar InlineCompletionsController_1;\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlet InlineCompletionsController = InlineCompletionsController_1 = class InlineCompletionsController extends _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_2__.Disposable {\n static get(editor) {\n return editor.getContribution(InlineCompletionsController_1.ID);\n }\n constructor(editor, _instantiationService, _contextKeyService, _configurationService, _commandService, _debounceService, _languageFeaturesService, _accessibilitySignalService, _keybindingService) {\n super();\n this.editor = editor;\n this._instantiationService = _instantiationService;\n this._contextKeyService = _contextKeyService;\n this._configurationService = _configurationService;\n this._commandService = _commandService;\n this._debounceService = _debounceService;\n this._languageFeaturesService = _languageFeaturesService;\n this._accessibilitySignalService = _accessibilitySignalService;\n this._keybindingService = _keybindingService;\n this.model = this._register((0,_base_common_observable_js__WEBPACK_IMPORTED_MODULE_3__.disposableObservableValue)('inlineCompletionModel', undefined));\n this._textModelVersionId = (0,_base_common_observable_js__WEBPACK_IMPORTED_MODULE_3__.observableValue)(this, -1);\n this._positions = (0,_base_common_observable_js__WEBPACK_IMPORTED_MODULE_3__.observableValue)(this, [new _common_core_position_js__WEBPACK_IMPORTED_MODULE_5__.Position(1, 1)]);\n this._suggestWidgetAdaptor = this._register(new _suggestWidgetInlineCompletionProvider_js__WEBPACK_IMPORTED_MODULE_13__.SuggestWidgetAdaptor(this.editor, () => { var _a, _b; return (_b = (_a = this.model.get()) === null || _a === void 0 ? void 0 : _a.selectedInlineCompletion.get()) === null || _b === void 0 ? void 0 : _b.toSingleTextEdit(undefined); }, (tx) => this.updateObservables(tx, _inlineCompletionsModel_js__WEBPACK_IMPORTED_MODULE_12__.VersionIdChangeReason.Other), (item) => {\n (0,_base_common_observable_js__WEBPACK_IMPORTED_MODULE_3__.transaction)(tx => {\n var _a;\n /** @description InlineCompletionsController.handleSuggestAccepted */\n this.updateObservables(tx, _inlineCompletionsModel_js__WEBPACK_IMPORTED_MODULE_12__.VersionIdChangeReason.Other);\n (_a = this.model.get()) === null || _a === void 0 ? void 0 : _a.handleSuggestAccepted(item);\n });\n }));\n this._enabled = (0,_base_common_observable_js__WEBPACK_IMPORTED_MODULE_3__.observableFromEvent)(this.editor.onDidChangeConfiguration, () => this.editor.getOption(62 /* EditorOption.inlineSuggest */).enabled);\n this._fontFamily = (0,_base_common_observable_js__WEBPACK_IMPORTED_MODULE_3__.observableFromEvent)(this.editor.onDidChangeConfiguration, () => this.editor.getOption(62 /* EditorOption.inlineSuggest */).fontFamily);\n this._ghostTexts = (0,_base_common_observable_js__WEBPACK_IMPORTED_MODULE_3__.derived)(this, (reader) => {\n var _a;\n const model = this.model.read(reader);\n return (_a = model === null || model === void 0 ? void 0 : model.ghostTexts.read(reader)) !== null && _a !== void 0 ? _a : [];\n });\n this._stablizedGhostTexts = convertItemsToStableObservables(this._ghostTexts, this._store);\n this._ghostTextWidgets = (0,_base_common_observableInternal_utils_js__WEBPACK_IMPORTED_MODULE_21__.mapObservableArrayCached)(this, this._stablizedGhostTexts, (ghostText, store) => {\n return store.add(this._instantiationService.createInstance(_ghostTextWidget_js__WEBPACK_IMPORTED_MODULE_9__.GhostTextWidget, this.editor, {\n ghostText: ghostText,\n minReservedLineCount: (0,_base_common_observable_js__WEBPACK_IMPORTED_MODULE_3__.constObservable)(0),\n targetTextModel: this.model.map(v => v === null || v === void 0 ? void 0 : v.textModel),\n }));\n }).recomputeInitiallyAndOnChange(this._store);\n this._debounceValue = this._debounceService.for(this._languageFeaturesService.inlineCompletionsProvider, 'InlineCompletionsDebounce', { min: 50, max: 50 });\n this._playAccessibilitySignal = (0,_base_common_observable_js__WEBPACK_IMPORTED_MODULE_3__.observableSignal)(this);\n this._isReadonly = (0,_base_common_observable_js__WEBPACK_IMPORTED_MODULE_3__.observableFromEvent)(this.editor.onDidChangeConfiguration, () => this.editor.getOption(91 /* EditorOption.readOnly */));\n this._textModel = (0,_base_common_observable_js__WEBPACK_IMPORTED_MODULE_3__.observableFromEvent)(this.editor.onDidChangeModel, () => this.editor.getModel());\n this._textModelIfWritable = (0,_base_common_observable_js__WEBPACK_IMPORTED_MODULE_3__.derived)(reader => this._isReadonly.read(reader) ? undefined : this._textModel.read(reader));\n this._register(new _inlineCompletionContextKeys_js__WEBPACK_IMPORTED_MODULE_10__.InlineCompletionContextKeys(this._contextKeyService, this.model));\n this._register((0,_base_common_observable_js__WEBPACK_IMPORTED_MODULE_3__.autorun)(reader => {\n /** @description InlineCompletionsController.update model */\n const textModel = this._textModelIfWritable.read(reader);\n (0,_base_common_observable_js__WEBPACK_IMPORTED_MODULE_3__.transaction)(tx => {\n /** @description InlineCompletionsController.onDidChangeModel/readonly */\n this.model.set(undefined, tx);\n this.updateObservables(tx, _inlineCompletionsModel_js__WEBPACK_IMPORTED_MODULE_12__.VersionIdChangeReason.Other);\n if (textModel) {\n const model = _instantiationService.createInstance(_inlineCompletionsModel_js__WEBPACK_IMPORTED_MODULE_12__.InlineCompletionsModel, textModel, this._suggestWidgetAdaptor.selectedItem, this._textModelVersionId, this._positions, this._debounceValue, (0,_base_common_observable_js__WEBPACK_IMPORTED_MODULE_3__.observableFromEvent)(editor.onDidChangeConfiguration, () => editor.getOption(118 /* EditorOption.suggest */).preview), (0,_base_common_observable_js__WEBPACK_IMPORTED_MODULE_3__.observableFromEvent)(editor.onDidChangeConfiguration, () => editor.getOption(118 /* EditorOption.suggest */).previewMode), (0,_base_common_observable_js__WEBPACK_IMPORTED_MODULE_3__.observableFromEvent)(editor.onDidChangeConfiguration, () => editor.getOption(62 /* EditorOption.inlineSuggest */).mode), this._enabled);\n this.model.set(model, tx);\n }\n });\n }));\n const styleElement = this._register((0,_base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.createStyleSheet2)());\n this._register((0,_base_common_observable_js__WEBPACK_IMPORTED_MODULE_3__.autorun)(reader => {\n const fontFamily = this._fontFamily.read(reader);\n styleElement.setStyle(fontFamily === '' || fontFamily === 'default' ? `` : `\n.monaco-editor .ghost-text-decoration,\n.monaco-editor .ghost-text-decoration-preview,\n.monaco-editor .ghost-text {\n\tfont-family: ${fontFamily};\n}`);\n }));\n const getReason = (e) => {\n var _a;\n if (e.isUndoing) {\n return _inlineCompletionsModel_js__WEBPACK_IMPORTED_MODULE_12__.VersionIdChangeReason.Undo;\n }\n if (e.isRedoing) {\n return _inlineCompletionsModel_js__WEBPACK_IMPORTED_MODULE_12__.VersionIdChangeReason.Redo;\n }\n if ((_a = this.model.get()) === null || _a === void 0 ? void 0 : _a.isAcceptingPartially) {\n return _inlineCompletionsModel_js__WEBPACK_IMPORTED_MODULE_12__.VersionIdChangeReason.AcceptWord;\n }\n return _inlineCompletionsModel_js__WEBPACK_IMPORTED_MODULE_12__.VersionIdChangeReason.Other;\n };\n this._register(editor.onDidChangeModelContent((e) => (0,_base_common_observable_js__WEBPACK_IMPORTED_MODULE_3__.transaction)(tx => \n /** @description InlineCompletionsController.onDidChangeModelContent */\n this.updateObservables(tx, getReason(e)))));\n this._register(editor.onDidChangeCursorPosition(e => (0,_base_common_observable_js__WEBPACK_IMPORTED_MODULE_3__.transaction)(tx => {\n var _a;\n /** @description InlineCompletionsController.onDidChangeCursorPosition */\n this.updateObservables(tx, _inlineCompletionsModel_js__WEBPACK_IMPORTED_MODULE_12__.VersionIdChangeReason.Other);\n if (e.reason === 3 /* CursorChangeReason.Explicit */ || e.source === 'api') {\n (_a = this.model.get()) === null || _a === void 0 ? void 0 : _a.stop(tx);\n }\n })));\n this._register(editor.onDidType(() => (0,_base_common_observable_js__WEBPACK_IMPORTED_MODULE_3__.transaction)(tx => {\n var _a;\n /** @description InlineCompletionsController.onDidType */\n this.updateObservables(tx, _inlineCompletionsModel_js__WEBPACK_IMPORTED_MODULE_12__.VersionIdChangeReason.Other);\n if (this._enabled.get()) {\n (_a = this.model.get()) === null || _a === void 0 ? void 0 : _a.trigger(tx);\n }\n })));\n this._register(this._commandService.onDidExecuteCommand((e) => {\n // These commands don't trigger onDidType.\n const commands = new Set([\n _browser_coreCommands_js__WEBPACK_IMPORTED_MODULE_4__.CoreEditingCommands.Tab.id,\n _browser_coreCommands_js__WEBPACK_IMPORTED_MODULE_4__.CoreEditingCommands.DeleteLeft.id,\n _browser_coreCommands_js__WEBPACK_IMPORTED_MODULE_4__.CoreEditingCommands.DeleteRight.id,\n _commandIds_js__WEBPACK_IMPORTED_MODULE_8__.inlineSuggestCommitId,\n 'acceptSelectedSuggestion',\n ]);\n if (commands.has(e.commandId) && editor.hasTextFocus() && this._enabled.get()) {\n (0,_base_common_observable_js__WEBPACK_IMPORTED_MODULE_3__.transaction)(tx => {\n var _a;\n /** @description onDidExecuteCommand */\n (_a = this.model.get()) === null || _a === void 0 ? void 0 : _a.trigger(tx);\n });\n }\n }));\n this._register(this.editor.onDidBlurEditorWidget(() => {\n // This is a hidden setting very useful for debugging\n if (this._contextKeyService.getContextKeyValue('accessibleViewIsShown') || this._configurationService.getValue('editor.inlineSuggest.keepOnBlur') ||\n editor.getOption(62 /* EditorOption.inlineSuggest */).keepOnBlur) {\n return;\n }\n if (_inlineCompletionsHintsWidget_js__WEBPACK_IMPORTED_MODULE_11__.InlineSuggestionHintsContentWidget.dropDownVisible) {\n return;\n }\n (0,_base_common_observable_js__WEBPACK_IMPORTED_MODULE_3__.transaction)(tx => {\n var _a;\n /** @description InlineCompletionsController.onDidBlurEditorWidget */\n (_a = this.model.get()) === null || _a === void 0 ? void 0 : _a.stop(tx);\n });\n }));\n this._register((0,_base_common_observable_js__WEBPACK_IMPORTED_MODULE_3__.autorun)(reader => {\n var _a;\n /** @description InlineCompletionsController.forceRenderingAbove */\n const state = (_a = this.model.read(reader)) === null || _a === void 0 ? void 0 : _a.state.read(reader);\n if (state === null || state === void 0 ? void 0 : state.suggestItem) {\n if (state.primaryGhostText.lineCount >= 2) {\n this._suggestWidgetAdaptor.forceRenderingAbove();\n }\n }\n else {\n this._suggestWidgetAdaptor.stopForceRenderingAbove();\n }\n }));\n this._register((0,_base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_2__.toDisposable)(() => {\n this._suggestWidgetAdaptor.stopForceRenderingAbove();\n }));\n let lastInlineCompletionId = undefined;\n this._register((0,_base_common_observable_js__WEBPACK_IMPORTED_MODULE_3__.autorunHandleChanges)({\n handleChange: (context, changeSummary) => {\n if (context.didChange(this._playAccessibilitySignal)) {\n lastInlineCompletionId = undefined;\n }\n return true;\n },\n }, async (reader) => {\n /** @description InlineCompletionsController.playAccessibilitySignalAndReadSuggestion */\n this._playAccessibilitySignal.read(reader);\n const model = this.model.read(reader);\n const state = model === null || model === void 0 ? void 0 : model.state.read(reader);\n if (!model || !state || !state.inlineCompletion) {\n lastInlineCompletionId = undefined;\n return;\n }\n if (state.inlineCompletion.semanticId !== lastInlineCompletionId) {\n lastInlineCompletionId = state.inlineCompletion.semanticId;\n const lineText = model.textModel.getLineContent(state.primaryGhostText.lineNumber);\n this._accessibilitySignalService.playSignal(_platform_accessibilitySignal_browser_accessibilitySignalService_js__WEBPACK_IMPORTED_MODULE_15__.AccessibilitySignal.inlineSuggestion).then(() => {\n if (this.editor.getOption(8 /* EditorOption.screenReaderAnnounceInlineSuggestion */)) {\n this.provideScreenReaderUpdate(state.primaryGhostText.renderForScreenReader(lineText));\n }\n });\n }\n }));\n this._register(new _inlineCompletionsHintsWidget_js__WEBPACK_IMPORTED_MODULE_11__.InlineCompletionsHintsWidget(this.editor, this.model, this._instantiationService));\n this._register(this._configurationService.onDidChangeConfiguration(e => {\n if (e.affectsConfiguration('accessibility.verbosity.inlineCompletions')) {\n this.editor.updateOptions({ inlineCompletionsAccessibilityVerbose: this._configurationService.getValue('accessibility.verbosity.inlineCompletions') });\n }\n }));\n this.editor.updateOptions({ inlineCompletionsAccessibilityVerbose: this._configurationService.getValue('accessibility.verbosity.inlineCompletions') });\n }\n playAccessibilitySignal(tx) {\n this._playAccessibilitySignal.trigger(tx);\n }\n provideScreenReaderUpdate(content) {\n const accessibleViewShowing = this._contextKeyService.getContextKeyValue('accessibleViewIsShown');\n const accessibleViewKeybinding = this._keybindingService.lookupKeybinding('editor.action.accessibleView');\n let hint;\n if (!accessibleViewShowing && accessibleViewKeybinding && this.editor.getOption(148 /* EditorOption.inlineCompletionsAccessibilityVerbose */)) {\n hint = (0,_nls_js__WEBPACK_IMPORTED_MODULE_14__.localize)('showAccessibleViewHint', \"Inspect this in the accessible view ({0})\", accessibleViewKeybinding.getAriaLabel());\n }\n hint ? (0,_base_browser_ui_aria_aria_js__WEBPACK_IMPORTED_MODULE_1__.alert)(content + ', ' + hint) : (0,_base_browser_ui_aria_aria_js__WEBPACK_IMPORTED_MODULE_1__.alert)(content);\n }\n /**\n * Copies over the relevant state from the text model to observables.\n * This solves all kind of eventing issues, as we make sure we always operate on the latest state,\n * regardless of who calls into us.\n */\n updateObservables(tx, changeReason) {\n var _a, _b, _c;\n const newModel = this.editor.getModel();\n this._textModelVersionId.set((_a = newModel === null || newModel === void 0 ? void 0 : newModel.getVersionId()) !== null && _a !== void 0 ? _a : -1, tx, changeReason);\n this._positions.set((_c = (_b = this.editor.getSelections()) === null || _b === void 0 ? void 0 : _b.map(selection => selection.getPosition())) !== null && _c !== void 0 ? _c : [new _common_core_position_js__WEBPACK_IMPORTED_MODULE_5__.Position(1, 1)], tx);\n }\n shouldShowHoverAt(range) {\n var _a;\n const ghostText = (_a = this.model.get()) === null || _a === void 0 ? void 0 : _a.primaryGhostText.get();\n if (ghostText) {\n return ghostText.parts.some(p => range.containsPosition(new _common_core_position_js__WEBPACK_IMPORTED_MODULE_5__.Position(ghostText.lineNumber, p.column)));\n }\n return false;\n }\n shouldShowHoverAtViewZone(viewZoneId) {\n var _a, _b;\n return (_b = (_a = this._ghostTextWidgets.get()[0]) === null || _a === void 0 ? void 0 : _a.ownsViewZone(viewZoneId)) !== null && _b !== void 0 ? _b : false;\n }\n};\nInlineCompletionsController.ID = 'editor.contrib.inlineCompletionsController';\nInlineCompletionsController = InlineCompletionsController_1 = __decorate([\n __param(1, _platform_instantiation_common_instantiation_js__WEBPACK_IMPORTED_MODULE_19__.IInstantiationService),\n __param(2, _platform_contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_18__.IContextKeyService),\n __param(3, _platform_configuration_common_configuration_js__WEBPACK_IMPORTED_MODULE_17__.IConfigurationService),\n __param(4, _platform_commands_common_commands_js__WEBPACK_IMPORTED_MODULE_16__.ICommandService),\n __param(5, _common_services_languageFeatureDebounce_js__WEBPACK_IMPORTED_MODULE_6__.ILanguageFeatureDebounceService),\n __param(6, _common_services_languageFeatures_js__WEBPACK_IMPORTED_MODULE_7__.ILanguageFeaturesService),\n __param(7, _platform_accessibilitySignal_browser_accessibilitySignalService_js__WEBPACK_IMPORTED_MODULE_15__.IAccessibilitySignalService),\n __param(8, _platform_keybinding_common_keybinding_js__WEBPACK_IMPORTED_MODULE_20__.IKeybindingService)\n], InlineCompletionsController);\n\nfunction convertItemsToStableObservables(items, store) {\n const result = (0,_base_common_observable_js__WEBPACK_IMPORTED_MODULE_3__.observableValue)('result', []);\n const innerObservables = [];\n store.add((0,_base_common_observable_js__WEBPACK_IMPORTED_MODULE_3__.autorun)(reader => {\n const itemsValue = items.read(reader);\n (0,_base_common_observable_js__WEBPACK_IMPORTED_MODULE_3__.transaction)(tx => {\n if (itemsValue.length !== innerObservables.length) {\n innerObservables.length = itemsValue.length;\n for (let i = 0; i < innerObservables.length; i++) {\n if (!innerObservables[i]) {\n innerObservables[i] = (0,_base_common_observable_js__WEBPACK_IMPORTED_MODULE_3__.observableValue)('item', itemsValue[i]);\n }\n }\n result.set([...innerObservables], tx);\n }\n innerObservables.forEach((o, i) => o.set(itemsValue[i], tx));\n });\n }));\n return result;\n}\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/contrib/inlineCompletions/browser/inlineCompletionsController.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/contrib/inlineCompletions/browser/inlineCompletionsHintsWidget.js":
/*!********************************************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/contrib/inlineCompletions/browser/inlineCompletionsHintsWidget.js ***!
\********************************************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ CustomizedMenuWorkbenchToolBar: () => (/* binding */ CustomizedMenuWorkbenchToolBar),\n/* harmony export */ InlineCompletionsHintsWidget: () => (/* binding */ InlineCompletionsHintsWidget),\n/* harmony export */ InlineSuggestionHintsContentWidget: () => (/* binding */ InlineSuggestionHintsContentWidget)\n/* harmony export */ });\n/* harmony import */ var _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../../base/browser/dom.js */ \"./node_modules/monaco-editor/esm/vs/base/browser/dom.js\");\n/* harmony import */ var _base_browser_ui_actionbar_actionViewItems_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../base/browser/ui/actionbar/actionViewItems.js */ \"./node_modules/monaco-editor/esm/vs/base/browser/ui/actionbar/actionViewItems.js\");\n/* harmony import */ var _base_browser_ui_keybindingLabel_keybindingLabel_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../../base/browser/ui/keybindingLabel/keybindingLabel.js */ \"./node_modules/monaco-editor/esm/vs/base/browser/ui/keybindingLabel/keybindingLabel.js\");\n/* harmony import */ var _base_common_actions_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../../../base/common/actions.js */ \"./node_modules/monaco-editor/esm/vs/base/common/actions.js\");\n/* harmony import */ var _base_common_arrays_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../../../base/common/arrays.js */ \"./node_modules/monaco-editor/esm/vs/base/common/arrays.js\");\n/* harmony import */ var _base_common_async_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../../../../base/common/async.js */ \"./node_modules/monaco-editor/esm/vs/base/common/async.js\");\n/* harmony import */ var _base_common_codicons_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../../../../base/common/codicons.js */ \"./node_modules/monaco-editor/esm/vs/base/common/codicons.js\");\n/* harmony import */ var _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ../../../../base/common/lifecycle.js */ \"./node_modules/monaco-editor/esm/vs/base/common/lifecycle.js\");\n/* harmony import */ var _base_common_observable_js__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ../../../../base/common/observable.js */ \"./node_modules/monaco-editor/esm/vs/base/common/observable.js\");\n/* harmony import */ var _base_common_platform_js__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ../../../../base/common/platform.js */ \"./node_modules/monaco-editor/esm/vs/base/common/platform.js\");\n/* harmony import */ var _base_common_themables_js__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! ../../../../base/common/themables.js */ \"./node_modules/monaco-editor/esm/vs/base/common/themables.js\");\n/* harmony import */ var _inlineCompletionsHintsWidget_css__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(/*! ./inlineCompletionsHintsWidget.css */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/inlineCompletions/browser/inlineCompletionsHintsWidget.css\");\n/* harmony import */ var _common_core_position_js__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(/*! ../../../common/core/position.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/core/position.js\");\n/* harmony import */ var _common_languages_js__WEBPACK_IMPORTED_MODULE_13__ = __webpack_require__(/*! ../../../common/languages.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/languages.js\");\n/* harmony import */ var _commandIds_js__WEBPACK_IMPORTED_MODULE_14__ = __webpack_require__(/*! ./commandIds.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/inlineCompletions/browser/commandIds.js\");\n/* harmony import */ var _nls_js__WEBPACK_IMPORTED_MODULE_15__ = __webpack_require__(/*! ../../../../nls.js */ \"./node_modules/monaco-editor/esm/vs/nls.js\");\n/* harmony import */ var _platform_actions_browser_menuEntryActionViewItem_js__WEBPACK_IMPORTED_MODULE_16__ = __webpack_require__(/*! ../../../../platform/actions/browser/menuEntryActionViewItem.js */ \"./node_modules/monaco-editor/esm/vs/platform/actions/browser/menuEntryActionViewItem.js\");\n/* harmony import */ var _platform_actions_browser_toolbar_js__WEBPACK_IMPORTED_MODULE_17__ = __webpack_require__(/*! ../../../../platform/actions/browser/toolbar.js */ \"./node_modules/monaco-editor/esm/vs/platform/actions/browser/toolbar.js\");\n/* harmony import */ var _platform_actions_common_actions_js__WEBPACK_IMPORTED_MODULE_18__ = __webpack_require__(/*! ../../../../platform/actions/common/actions.js */ \"./node_modules/monaco-editor/esm/vs/platform/actions/common/actions.js\");\n/* harmony import */ var _platform_commands_common_commands_js__WEBPACK_IMPORTED_MODULE_19__ = __webpack_require__(/*! ../../../../platform/commands/common/commands.js */ \"./node_modules/monaco-editor/esm/vs/platform/commands/common/commands.js\");\n/* harmony import */ var _platform_contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_20__ = __webpack_require__(/*! ../../../../platform/contextkey/common/contextkey.js */ \"./node_modules/monaco-editor/esm/vs/platform/contextkey/common/contextkey.js\");\n/* harmony import */ var _platform_contextview_browser_contextView_js__WEBPACK_IMPORTED_MODULE_21__ = __webpack_require__(/*! ../../../../platform/contextview/browser/contextView.js */ \"./node_modules/monaco-editor/esm/vs/platform/contextview/browser/contextView.js\");\n/* harmony import */ var _platform_instantiation_common_instantiation_js__WEBPACK_IMPORTED_MODULE_22__ = __webpack_require__(/*! ../../../../platform/instantiation/common/instantiation.js */ \"./node_modules/monaco-editor/esm/vs/platform/instantiation/common/instantiation.js\");\n/* harmony import */ var _platform_keybinding_common_keybinding_js__WEBPACK_IMPORTED_MODULE_23__ = __webpack_require__(/*! ../../../../platform/keybinding/common/keybinding.js */ \"./node_modules/monaco-editor/esm/vs/platform/keybinding/common/keybinding.js\");\n/* harmony import */ var _platform_telemetry_common_telemetry_js__WEBPACK_IMPORTED_MODULE_24__ = __webpack_require__(/*! ../../../../platform/telemetry/common/telemetry.js */ \"./node_modules/monaco-editor/esm/vs/platform/telemetry/common/telemetry.js\");\n/* harmony import */ var _platform_theme_common_iconRegistry_js__WEBPACK_IMPORTED_MODULE_25__ = __webpack_require__(/*! ../../../../platform/theme/common/iconRegistry.js */ \"./node_modules/monaco-editor/esm/vs/platform/theme/common/iconRegistry.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\nvar __decorate = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\n return c > 3 && r && Object.defineProperty(target, key, r), r;\n};\nvar __param = (undefined && undefined.__param) || function (paramIndex, decorator) {\n return function (target, key) { decorator(target, key, paramIndex); }\n};\nvar InlineSuggestionHintsContentWidget_1;\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlet InlineCompletionsHintsWidget = class InlineCompletionsHintsWidget extends _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_7__.Disposable {\n constructor(editor, model, instantiationService) {\n super();\n this.editor = editor;\n this.model = model;\n this.instantiationService = instantiationService;\n this.alwaysShowToolbar = (0,_base_common_observable_js__WEBPACK_IMPORTED_MODULE_8__.observableFromEvent)(this.editor.onDidChangeConfiguration, () => this.editor.getOption(62 /* EditorOption.inlineSuggest */).showToolbar === 'always');\n this.sessionPosition = undefined;\n this.position = (0,_base_common_observable_js__WEBPACK_IMPORTED_MODULE_8__.derived)(this, reader => {\n var _a, _b, _c;\n const ghostText = (_a = this.model.read(reader)) === null || _a === void 0 ? void 0 : _a.primaryGhostText.read(reader);\n if (!this.alwaysShowToolbar.read(reader) || !ghostText || ghostText.parts.length === 0) {\n this.sessionPosition = undefined;\n return null;\n }\n const firstColumn = ghostText.parts[0].column;\n if (this.sessionPosition && this.sessionPosition.lineNumber !== ghostText.lineNumber) {\n this.sessionPosition = undefined;\n }\n const position = new _common_core_position_js__WEBPACK_IMPORTED_MODULE_12__.Position(ghostText.lineNumber, Math.min(firstColumn, (_c = (_b = this.sessionPosition) === null || _b === void 0 ? void 0 : _b.column) !== null && _c !== void 0 ? _c : Number.MAX_SAFE_INTEGER));\n this.sessionPosition = position;\n return position;\n });\n this._register((0,_base_common_observable_js__WEBPACK_IMPORTED_MODULE_8__.autorunWithStore)((reader, store) => {\n /** @description setup content widget */\n const model = this.model.read(reader);\n if (!model || !this.alwaysShowToolbar.read(reader)) {\n return;\n }\n const contentWidget = store.add(this.instantiationService.createInstance(InlineSuggestionHintsContentWidget, this.editor, true, this.position, model.selectedInlineCompletionIndex, model.inlineCompletionsCount, model.selectedInlineCompletion.map(v => /** @description commands */ { var _a; /** @description commands */ return (_a = v === null || v === void 0 ? void 0 : v.inlineCompletion.source.inlineCompletions.commands) !== null && _a !== void 0 ? _a : []; })));\n editor.addContentWidget(contentWidget);\n store.add((0,_base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_7__.toDisposable)(() => editor.removeContentWidget(contentWidget)));\n store.add((0,_base_common_observable_js__WEBPACK_IMPORTED_MODULE_8__.autorun)(reader => {\n /** @description request explicit */\n const position = this.position.read(reader);\n if (!position) {\n return;\n }\n if (model.lastTriggerKind.read(reader) !== _common_languages_js__WEBPACK_IMPORTED_MODULE_13__.InlineCompletionTriggerKind.Explicit) {\n model.triggerExplicitly();\n }\n }));\n }));\n }\n};\nInlineCompletionsHintsWidget = __decorate([\n __param(2, _platform_instantiation_common_instantiation_js__WEBPACK_IMPORTED_MODULE_22__.IInstantiationService)\n], InlineCompletionsHintsWidget);\n\nconst inlineSuggestionHintsNextIcon = (0,_platform_theme_common_iconRegistry_js__WEBPACK_IMPORTED_MODULE_25__.registerIcon)('inline-suggestion-hints-next', _base_common_codicons_js__WEBPACK_IMPORTED_MODULE_6__.Codicon.chevronRight, (0,_nls_js__WEBPACK_IMPORTED_MODULE_15__.localize)('parameterHintsNextIcon', 'Icon for show next parameter hint.'));\nconst inlineSuggestionHintsPreviousIcon = (0,_platform_theme_common_iconRegistry_js__WEBPACK_IMPORTED_MODULE_25__.registerIcon)('inline-suggestion-hints-previous', _base_common_codicons_js__WEBPACK_IMPORTED_MODULE_6__.Codicon.chevronLeft, (0,_nls_js__WEBPACK_IMPORTED_MODULE_15__.localize)('parameterHintsPreviousIcon', 'Icon for show previous parameter hint.'));\nlet InlineSuggestionHintsContentWidget = InlineSuggestionHintsContentWidget_1 = class InlineSuggestionHintsContentWidget extends _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_7__.Disposable {\n static get dropDownVisible() { return this._dropDownVisible; }\n createCommandAction(commandId, label, iconClassName) {\n const action = new _base_common_actions_js__WEBPACK_IMPORTED_MODULE_3__.Action(commandId, label, iconClassName, true, () => this._commandService.executeCommand(commandId));\n const kb = this.keybindingService.lookupKeybinding(commandId, this._contextKeyService);\n let tooltip = label;\n if (kb) {\n tooltip = (0,_nls_js__WEBPACK_IMPORTED_MODULE_15__.localize)({ key: 'content', comment: ['A label', 'A keybinding'] }, '{0} ({1})', label, kb.getLabel());\n }\n action.tooltip = tooltip;\n return action;\n }\n constructor(editor, withBorder, _position, _currentSuggestionIdx, _suggestionCount, _extraCommands, _commandService, instantiationService, keybindingService, _contextKeyService, _menuService) {\n super();\n this.editor = editor;\n this.withBorder = withBorder;\n this._position = _position;\n this._currentSuggestionIdx = _currentSuggestionIdx;\n this._suggestionCount = _suggestionCount;\n this._extraCommands = _extraCommands;\n this._commandService = _commandService;\n this.keybindingService = keybindingService;\n this._contextKeyService = _contextKeyService;\n this._menuService = _menuService;\n this.id = `InlineSuggestionHintsContentWidget${InlineSuggestionHintsContentWidget_1.id++}`;\n this.allowEditorOverflow = true;\n this.suppressMouseDown = false;\n this.nodes = (0,_base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.h)('div.inlineSuggestionsHints', { className: this.withBorder ? '.withBorder' : '' }, [\n (0,_base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.h)('div@toolBar'),\n ]);\n this.previousAction = this.createCommandAction(_commandIds_js__WEBPACK_IMPORTED_MODULE_14__.showPreviousInlineSuggestionActionId, (0,_nls_js__WEBPACK_IMPORTED_MODULE_15__.localize)('previous', 'Previous'), _base_common_themables_js__WEBPACK_IMPORTED_MODULE_10__.ThemeIcon.asClassName(inlineSuggestionHintsPreviousIcon));\n this.availableSuggestionCountAction = new _base_common_actions_js__WEBPACK_IMPORTED_MODULE_3__.Action('inlineSuggestionHints.availableSuggestionCount', '', undefined, false);\n this.nextAction = this.createCommandAction(_commandIds_js__WEBPACK_IMPORTED_MODULE_14__.showNextInlineSuggestionActionId, (0,_nls_js__WEBPACK_IMPORTED_MODULE_15__.localize)('next', 'Next'), _base_common_themables_js__WEBPACK_IMPORTED_MODULE_10__.ThemeIcon.asClassName(inlineSuggestionHintsNextIcon));\n // TODO@hediet: deprecate MenuId.InlineCompletionsActions\n this.inlineCompletionsActionsMenus = this._register(this._menuService.createMenu(_platform_actions_common_actions_js__WEBPACK_IMPORTED_MODULE_18__.MenuId.InlineCompletionsActions, this._contextKeyService));\n this.clearAvailableSuggestionCountLabelDebounced = this._register(new _base_common_async_js__WEBPACK_IMPORTED_MODULE_5__.RunOnceScheduler(() => {\n this.availableSuggestionCountAction.label = '';\n }, 100));\n this.disableButtonsDebounced = this._register(new _base_common_async_js__WEBPACK_IMPORTED_MODULE_5__.RunOnceScheduler(() => {\n this.previousAction.enabled = this.nextAction.enabled = false;\n }, 100));\n this.lastCommands = [];\n this.toolBar = this._register(instantiationService.createInstance(CustomizedMenuWorkbenchToolBar, this.nodes.toolBar, _platform_actions_common_actions_js__WEBPACK_IMPORTED_MODULE_18__.MenuId.InlineSuggestionToolbar, {\n menuOptions: { renderShortTitle: true },\n toolbarOptions: { primaryGroup: g => g.startsWith('primary') },\n actionViewItemProvider: (action, options) => {\n if (action instanceof _platform_actions_common_actions_js__WEBPACK_IMPORTED_MODULE_18__.MenuItemAction) {\n return instantiationService.createInstance(StatusBarViewItem, action, undefined);\n }\n if (action === this.availableSuggestionCountAction) {\n const a = new ActionViewItemWithClassName(undefined, action, { label: true, icon: false });\n a.setClass('availableSuggestionCount');\n return a;\n }\n return undefined;\n },\n telemetrySource: 'InlineSuggestionToolbar',\n }));\n this.toolBar.setPrependedPrimaryActions([\n this.previousAction,\n this.availableSuggestionCountAction,\n this.nextAction,\n ]);\n this._register(this.toolBar.onDidChangeDropdownVisibility(e => {\n InlineSuggestionHintsContentWidget_1._dropDownVisible = e;\n }));\n this._register((0,_base_common_observable_js__WEBPACK_IMPORTED_MODULE_8__.autorun)(reader => {\n /** @description update position */\n this._position.read(reader);\n this.editor.layoutContentWidget(this);\n }));\n this._register((0,_base_common_observable_js__WEBPACK_IMPORTED_MODULE_8__.autorun)(reader => {\n /** @description counts */\n const suggestionCount = this._suggestionCount.read(reader);\n const currentSuggestionIdx = this._currentSuggestionIdx.read(reader);\n if (suggestionCount !== undefined) {\n this.clearAvailableSuggestionCountLabelDebounced.cancel();\n this.availableSuggestionCountAction.label = `${currentSuggestionIdx + 1}/${suggestionCount}`;\n }\n else {\n this.clearAvailableSuggestionCountLabelDebounced.schedule();\n }\n if (suggestionCount !== undefined && suggestionCount > 1) {\n this.disableButtonsDebounced.cancel();\n this.previousAction.enabled = this.nextAction.enabled = true;\n }\n else {\n this.disableButtonsDebounced.schedule();\n }\n }));\n this._register((0,_base_common_observable_js__WEBPACK_IMPORTED_MODULE_8__.autorun)(reader => {\n /** @description extra commands */\n const extraCommands = this._extraCommands.read(reader);\n if ((0,_base_common_arrays_js__WEBPACK_IMPORTED_MODULE_4__.equals)(this.lastCommands, extraCommands)) {\n // nothing to update\n return;\n }\n this.lastCommands = extraCommands;\n const extraActions = extraCommands.map(c => ({\n class: undefined,\n id: c.id,\n enabled: true,\n tooltip: c.tooltip || '',\n label: c.title,\n run: (event) => {\n return this._commandService.executeCommand(c.id);\n },\n }));\n for (const [_, group] of this.inlineCompletionsActionsMenus.getActions()) {\n for (const action of group) {\n if (action instanceof _platform_actions_common_actions_js__WEBPACK_IMPORTED_MODULE_18__.MenuItemAction) {\n extraActions.push(action);\n }\n }\n }\n if (extraActions.length > 0) {\n extraActions.unshift(new _base_common_actions_js__WEBPACK_IMPORTED_MODULE_3__.Separator());\n }\n this.toolBar.setAdditionalSecondaryActions(extraActions);\n }));\n }\n getId() { return this.id; }\n getDomNode() {\n return this.nodes.root;\n }\n getPosition() {\n return {\n position: this._position.get(),\n preference: [1 /* ContentWidgetPositionPreference.ABOVE */, 2 /* ContentWidgetPositionPreference.BELOW */],\n positionAffinity: 3 /* PositionAffinity.LeftOfInjectedText */,\n };\n }\n};\nInlineSuggestionHintsContentWidget._dropDownVisible = false;\nInlineSuggestionHintsContentWidget.id = 0;\nInlineSuggestionHintsContentWidget = InlineSuggestionHintsContentWidget_1 = __decorate([\n __param(6, _platform_commands_common_commands_js__WEBPACK_IMPORTED_MODULE_19__.ICommandService),\n __param(7, _platform_instantiation_common_instantiation_js__WEBPACK_IMPORTED_MODULE_22__.IInstantiationService),\n __param(8, _platform_keybinding_common_keybinding_js__WEBPACK_IMPORTED_MODULE_23__.IKeybindingService),\n __param(9, _platform_contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_20__.IContextKeyService),\n __param(10, _platform_actions_common_actions_js__WEBPACK_IMPORTED_MODULE_18__.IMenuService)\n], InlineSuggestionHintsContentWidget);\n\nclass ActionViewItemWithClassName extends _base_browser_ui_actionbar_actionViewItems_js__WEBPACK_IMPORTED_MODULE_1__.ActionViewItem {\n constructor() {\n super(...arguments);\n this._className = undefined;\n }\n setClass(className) {\n this._className = className;\n }\n render(container) {\n super.render(container);\n if (this._className) {\n container.classList.add(this._className);\n }\n }\n updateTooltip() {\n // NOOP, disable tooltip\n }\n}\nclass StatusBarViewItem extends _platform_actions_browser_menuEntryActionViewItem_js__WEBPACK_IMPORTED_MODULE_16__.MenuEntryActionViewItem {\n updateLabel() {\n const kb = this._keybindingService.lookupKeybinding(this._action.id, this._contextKeyService);\n if (!kb) {\n return super.updateLabel();\n }\n if (this.label) {\n const div = (0,_base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.h)('div.keybinding').root;\n const k = new _base_browser_ui_keybindingLabel_keybindingLabel_js__WEBPACK_IMPORTED_MODULE_2__.KeybindingLabel(div, _base_common_platform_js__WEBPACK_IMPORTED_MODULE_9__.OS, { disableTitle: true, ..._base_browser_ui_keybindingLabel_keybindingLabel_js__WEBPACK_IMPORTED_MODULE_2__.unthemedKeybindingLabelOptions });\n k.set(kb);\n this.label.textContent = this._action.label;\n this.label.appendChild(div);\n this.label.classList.add('inlineSuggestionStatusBarItemLabel');\n }\n }\n updateTooltip() {\n // NOOP, disable tooltip\n }\n}\nlet CustomizedMenuWorkbenchToolBar = class CustomizedMenuWorkbenchToolBar extends _platform_actions_browser_toolbar_js__WEBPACK_IMPORTED_MODULE_17__.WorkbenchToolBar {\n constructor(container, menuId, options2, menuService, contextKeyService, contextMenuService, keybindingService, telemetryService) {\n super(container, { resetMenu: menuId, ...options2 }, menuService, contextKeyService, contextMenuService, keybindingService, telemetryService);\n this.menuId = menuId;\n this.options2 = options2;\n this.menuService = menuService;\n this.contextKeyService = contextKeyService;\n this.menu = this._store.add(this.menuService.createMenu(this.menuId, this.contextKeyService, { emitEventsForSubmenuChanges: true }));\n this.additionalActions = [];\n this.prependedPrimaryActions = [];\n this._store.add(this.menu.onDidChange(() => this.updateToolbar()));\n this.updateToolbar();\n }\n updateToolbar() {\n var _a, _b, _c, _d, _e, _f, _g;\n const primary = [];\n const secondary = [];\n (0,_platform_actions_browser_menuEntryActionViewItem_js__WEBPACK_IMPORTED_MODULE_16__.createAndFillInActionBarActions)(this.menu, (_a = this.options2) === null || _a === void 0 ? void 0 : _a.menuOptions, { primary, secondary }, (_c = (_b = this.options2) === null || _b === void 0 ? void 0 : _b.toolbarOptions) === null || _c === void 0 ? void 0 : _c.primaryGroup, (_e = (_d = this.options2) === null || _d === void 0 ? void 0 : _d.toolbarOptions) === null || _e === void 0 ? void 0 : _e.shouldInlineSubmenu, (_g = (_f = this.options2) === null || _f === void 0 ? void 0 : _f.toolbarOptions) === null || _g === void 0 ? void 0 : _g.useSeparatorsInPrimaryActions);\n secondary.push(...this.additionalActions);\n primary.unshift(...this.prependedPrimaryActions);\n this.setActions(primary, secondary);\n }\n setPrependedPrimaryActions(actions) {\n if ((0,_base_common_arrays_js__WEBPACK_IMPORTED_MODULE_4__.equals)(this.prependedPrimaryActions, actions, (a, b) => a === b)) {\n return;\n }\n this.prependedPrimaryActions = actions;\n this.updateToolbar();\n }\n setAdditionalSecondaryActions(actions) {\n if ((0,_base_common_arrays_js__WEBPACK_IMPORTED_MODULE_4__.equals)(this.additionalActions, actions, (a, b) => a === b)) {\n return;\n }\n this.additionalActions = actions;\n this.updateToolbar();\n }\n};\nCustomizedMenuWorkbenchToolBar = __decorate([\n __param(3, _platform_actions_common_actions_js__WEBPACK_IMPORTED_MODULE_18__.IMenuService),\n __param(4, _platform_contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_20__.IContextKeyService),\n __param(5, _platform_contextview_browser_contextView_js__WEBPACK_IMPORTED_MODULE_21__.IContextMenuService),\n __param(6, _platform_keybinding_common_keybinding_js__WEBPACK_IMPORTED_MODULE_23__.IKeybindingService),\n __param(7, _platform_telemetry_common_telemetry_js__WEBPACK_IMPORTED_MODULE_24__.ITelemetryService)\n], CustomizedMenuWorkbenchToolBar);\n\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/contrib/inlineCompletions/browser/inlineCompletionsHintsWidget.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/contrib/inlineCompletions/browser/inlineCompletionsModel.js":
/*!**************************************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/contrib/inlineCompletions/browser/inlineCompletionsModel.js ***!
\**************************************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ InlineCompletionsModel: () => (/* binding */ InlineCompletionsModel),\n/* harmony export */ VersionIdChangeReason: () => (/* binding */ VersionIdChangeReason),\n/* harmony export */ getSecondaryEdits: () => (/* binding */ getSecondaryEdits)\n/* harmony export */ });\n/* harmony import */ var _base_common_arraysFind_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../../base/common/arraysFind.js */ \"./node_modules/monaco-editor/esm/vs/base/common/arraysFind.js\");\n/* harmony import */ var _base_common_errors_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../base/common/errors.js */ \"./node_modules/monaco-editor/esm/vs/base/common/errors.js\");\n/* harmony import */ var _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../../base/common/lifecycle.js */ \"./node_modules/monaco-editor/esm/vs/base/common/lifecycle.js\");\n/* harmony import */ var _base_common_observable_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../../../base/common/observable.js */ \"./node_modules/monaco-editor/esm/vs/base/common/observable.js\");\n/* harmony import */ var _base_common_strings_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../../../base/common/strings.js */ \"./node_modules/monaco-editor/esm/vs/base/common/strings.js\");\n/* harmony import */ var _base_common_types_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../../../../base/common/types.js */ \"./node_modules/monaco-editor/esm/vs/base/common/types.js\");\n/* harmony import */ var _common_core_editOperation_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../../../common/core/editOperation.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/core/editOperation.js\");\n/* harmony import */ var _common_core_position_js__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ../../../common/core/position.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/core/position.js\");\n/* harmony import */ var _common_core_range_js__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ../../../common/core/range.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/core/range.js\");\n/* harmony import */ var _common_core_selection_js__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ../../../common/core/selection.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/core/selection.js\");\n/* harmony import */ var _common_languages_js__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! ../../../common/languages.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/languages.js\");\n/* harmony import */ var _common_languages_languageConfigurationRegistry_js__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(/*! ../../../common/languages/languageConfigurationRegistry.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/languages/languageConfigurationRegistry.js\");\n/* harmony import */ var _ghostText_js__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(/*! ./ghostText.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/inlineCompletions/browser/ghostText.js\");\n/* harmony import */ var _inlineCompletionsSource_js__WEBPACK_IMPORTED_MODULE_13__ = __webpack_require__(/*! ./inlineCompletionsSource.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/inlineCompletions/browser/inlineCompletionsSource.js\");\n/* harmony import */ var _singleTextEdit_js__WEBPACK_IMPORTED_MODULE_14__ = __webpack_require__(/*! ./singleTextEdit.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/inlineCompletions/browser/singleTextEdit.js\");\n/* harmony import */ var _utils_js__WEBPACK_IMPORTED_MODULE_15__ = __webpack_require__(/*! ./utils.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/inlineCompletions/browser/utils.js\");\n/* harmony import */ var _snippet_browser_snippetController2_js__WEBPACK_IMPORTED_MODULE_16__ = __webpack_require__(/*! ../../snippet/browser/snippetController2.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/snippet/browser/snippetController2.js\");\n/* harmony import */ var _platform_commands_common_commands_js__WEBPACK_IMPORTED_MODULE_17__ = __webpack_require__(/*! ../../../../platform/commands/common/commands.js */ \"./node_modules/monaco-editor/esm/vs/platform/commands/common/commands.js\");\n/* harmony import */ var _platform_instantiation_common_instantiation_js__WEBPACK_IMPORTED_MODULE_18__ = __webpack_require__(/*! ../../../../platform/instantiation/common/instantiation.js */ \"./node_modules/monaco-editor/esm/vs/platform/instantiation/common/instantiation.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\nvar __decorate = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\n return c > 3 && r && Object.defineProperty(target, key, r), r;\n};\nvar __param = (undefined && undefined.__param) || function (paramIndex, decorator) {\n return function (target, key) { decorator(target, key, paramIndex); }\n};\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nvar VersionIdChangeReason;\n(function (VersionIdChangeReason) {\n VersionIdChangeReason[VersionIdChangeReason[\"Undo\"] = 0] = \"Undo\";\n VersionIdChangeReason[VersionIdChangeReason[\"Redo\"] = 1] = \"Redo\";\n VersionIdChangeReason[VersionIdChangeReason[\"AcceptWord\"] = 2] = \"AcceptWord\";\n VersionIdChangeReason[VersionIdChangeReason[\"Other\"] = 3] = \"Other\";\n})(VersionIdChangeReason || (VersionIdChangeReason = {}));\nlet InlineCompletionsModel = class InlineCompletionsModel extends _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_2__.Disposable {\n get isAcceptingPartially() { return this._isAcceptingPartially; }\n constructor(textModel, selectedSuggestItem, textModelVersionId, _positions, _debounceValue, _suggestPreviewEnabled, _suggestPreviewMode, _inlineSuggestMode, _enabled, _instantiationService, _commandService, _languageConfigurationService) {\n super();\n this.textModel = textModel;\n this.selectedSuggestItem = selectedSuggestItem;\n this.textModelVersionId = textModelVersionId;\n this._positions = _positions;\n this._debounceValue = _debounceValue;\n this._suggestPreviewEnabled = _suggestPreviewEnabled;\n this._suggestPreviewMode = _suggestPreviewMode;\n this._inlineSuggestMode = _inlineSuggestMode;\n this._enabled = _enabled;\n this._instantiationService = _instantiationService;\n this._commandService = _commandService;\n this._languageConfigurationService = _languageConfigurationService;\n this._source = this._register(this._instantiationService.createInstance(_inlineCompletionsSource_js__WEBPACK_IMPORTED_MODULE_13__.InlineCompletionsSource, this.textModel, this.textModelVersionId, this._debounceValue));\n this._isActive = (0,_base_common_observable_js__WEBPACK_IMPORTED_MODULE_3__.observableValue)(this, false);\n this._forceUpdateSignal = (0,_base_common_observable_js__WEBPACK_IMPORTED_MODULE_3__.observableSignal)('forceUpdate');\n // We use a semantic id to keep the same inline completion selected even if the provider reorders the completions.\n this._selectedInlineCompletionId = (0,_base_common_observable_js__WEBPACK_IMPORTED_MODULE_3__.observableValue)(this, undefined);\n this._primaryPosition = (0,_base_common_observable_js__WEBPACK_IMPORTED_MODULE_3__.derived)(this, reader => { var _a; return (_a = this._positions.read(reader)[0]) !== null && _a !== void 0 ? _a : new _common_core_position_js__WEBPACK_IMPORTED_MODULE_7__.Position(1, 1); });\n this._isAcceptingPartially = false;\n this._preserveCurrentCompletionReasons = new Set([\n VersionIdChangeReason.Redo,\n VersionIdChangeReason.Undo,\n VersionIdChangeReason.AcceptWord,\n ]);\n this._fetchInlineCompletions = (0,_base_common_observable_js__WEBPACK_IMPORTED_MODULE_3__.derivedHandleChanges)({\n owner: this,\n createEmptyChangeSummary: () => ({\n preserveCurrentCompletion: false,\n inlineCompletionTriggerKind: _common_languages_js__WEBPACK_IMPORTED_MODULE_10__.InlineCompletionTriggerKind.Automatic\n }),\n handleChange: (ctx, changeSummary) => {\n /** @description fetch inline completions */\n if (ctx.didChange(this.textModelVersionId) && this._preserveCurrentCompletionReasons.has(ctx.change)) {\n changeSummary.preserveCurrentCompletion = true;\n }\n else if (ctx.didChange(this._forceUpdateSignal)) {\n changeSummary.inlineCompletionTriggerKind = ctx.change;\n }\n return true;\n },\n }, (reader, changeSummary) => {\n this._forceUpdateSignal.read(reader);\n const shouldUpdate = (this._enabled.read(reader) && this.selectedSuggestItem.read(reader)) || this._isActive.read(reader);\n if (!shouldUpdate) {\n this._source.cancelUpdate();\n return undefined;\n }\n this.textModelVersionId.read(reader); // Refetch on text change\n const itemToPreserveCandidate = this.selectedInlineCompletion.get();\n const itemToPreserve = changeSummary.preserveCurrentCompletion || (itemToPreserveCandidate === null || itemToPreserveCandidate === void 0 ? void 0 : itemToPreserveCandidate.forwardStable)\n ? itemToPreserveCandidate : undefined;\n const suggestWidgetInlineCompletions = this._source.suggestWidgetInlineCompletions.get();\n const suggestItem = this.selectedSuggestItem.read(reader);\n if (suggestWidgetInlineCompletions && !suggestItem) {\n const inlineCompletions = this._source.inlineCompletions.get();\n (0,_base_common_observable_js__WEBPACK_IMPORTED_MODULE_3__.transaction)(tx => {\n /** @description Seed inline completions with (newer) suggest widget inline completions */\n if (!inlineCompletions || suggestWidgetInlineCompletions.request.versionId > inlineCompletions.request.versionId) {\n this._source.inlineCompletions.set(suggestWidgetInlineCompletions.clone(), tx);\n }\n this._source.clearSuggestWidgetInlineCompletions(tx);\n });\n }\n const cursorPosition = this._primaryPosition.read(reader);\n const context = {\n triggerKind: changeSummary.inlineCompletionTriggerKind,\n selectedSuggestionInfo: suggestItem === null || suggestItem === void 0 ? void 0 : suggestItem.toSelectedSuggestionInfo(),\n };\n return this._source.fetch(cursorPosition, context, itemToPreserve);\n });\n this._filteredInlineCompletionItems = (0,_base_common_observable_js__WEBPACK_IMPORTED_MODULE_3__.derived)(this, reader => {\n const c = this._source.inlineCompletions.read(reader);\n if (!c) {\n return [];\n }\n const cursorPosition = this._primaryPosition.read(reader);\n const filteredCompletions = c.inlineCompletions.filter(c => c.isVisible(this.textModel, cursorPosition, reader));\n return filteredCompletions;\n });\n this.selectedInlineCompletionIndex = (0,_base_common_observable_js__WEBPACK_IMPORTED_MODULE_3__.derived)(this, (reader) => {\n const selectedInlineCompletionId = this._selectedInlineCompletionId.read(reader);\n const filteredCompletions = this._filteredInlineCompletionItems.read(reader);\n const idx = this._selectedInlineCompletionId === undefined ? -1\n : filteredCompletions.findIndex(v => v.semanticId === selectedInlineCompletionId);\n if (idx === -1) {\n // Reset the selection so that the selection does not jump back when it appears again\n this._selectedInlineCompletionId.set(undefined, undefined);\n return 0;\n }\n return idx;\n });\n this.selectedInlineCompletion = (0,_base_common_observable_js__WEBPACK_IMPORTED_MODULE_3__.derived)(this, (reader) => {\n const filteredCompletions = this._filteredInlineCompletionItems.read(reader);\n const idx = this.selectedInlineCompletionIndex.read(reader);\n return filteredCompletions[idx];\n });\n this.lastTriggerKind = this._source.inlineCompletions.map(this, v => v === null || v === void 0 ? void 0 : v.request.context.triggerKind);\n this.inlineCompletionsCount = (0,_base_common_observable_js__WEBPACK_IMPORTED_MODULE_3__.derived)(this, reader => {\n if (this.lastTriggerKind.read(reader) === _common_languages_js__WEBPACK_IMPORTED_MODULE_10__.InlineCompletionTriggerKind.Explicit) {\n return this._filteredInlineCompletionItems.read(reader).length;\n }\n else {\n return undefined;\n }\n });\n this.state = (0,_base_common_observable_js__WEBPACK_IMPORTED_MODULE_3__.derivedOpts)({\n owner: this,\n equalityComparer: (a, b) => {\n if (!a || !b) {\n return a === b;\n }\n return (0,_ghostText_js__WEBPACK_IMPORTED_MODULE_12__.ghostTextsOrReplacementsEqual)(a.ghostTexts, b.ghostTexts)\n && a.inlineCompletion === b.inlineCompletion\n && a.suggestItem === b.suggestItem;\n }\n }, (reader) => {\n var _a, _b;\n const model = this.textModel;\n const suggestItem = this.selectedSuggestItem.read(reader);\n if (suggestItem) {\n const suggestCompletionEdit = suggestItem.toSingleTextEdit().removeCommonPrefix(model);\n const augmentation = this._computeAugmentation(suggestCompletionEdit, reader);\n const isSuggestionPreviewEnabled = this._suggestPreviewEnabled.read(reader);\n if (!isSuggestionPreviewEnabled && !augmentation) {\n return undefined;\n }\n const fullEdit = (_a = augmentation === null || augmentation === void 0 ? void 0 : augmentation.edit) !== null && _a !== void 0 ? _a : suggestCompletionEdit;\n const fullEditPreviewLength = augmentation ? augmentation.edit.text.length - suggestCompletionEdit.text.length : 0;\n const mode = this._suggestPreviewMode.read(reader);\n const positions = this._positions.read(reader);\n const edits = [fullEdit, ...getSecondaryEdits(this.textModel, positions, fullEdit)];\n const ghostTexts = edits\n .map((edit, idx) => edit.computeGhostText(model, mode, positions[idx], fullEditPreviewLength))\n .filter(_base_common_types_js__WEBPACK_IMPORTED_MODULE_5__.isDefined);\n const primaryGhostText = (_b = ghostTexts[0]) !== null && _b !== void 0 ? _b : new _ghostText_js__WEBPACK_IMPORTED_MODULE_12__.GhostText(fullEdit.range.endLineNumber, []);\n return { edits, primaryGhostText, ghostTexts, inlineCompletion: augmentation === null || augmentation === void 0 ? void 0 : augmentation.completion, suggestItem };\n }\n else {\n if (!this._isActive.read(reader)) {\n return undefined;\n }\n const inlineCompletion = this.selectedInlineCompletion.read(reader);\n if (!inlineCompletion) {\n return undefined;\n }\n const replacement = inlineCompletion.toSingleTextEdit(reader);\n const mode = this._inlineSuggestMode.read(reader);\n const positions = this._positions.read(reader);\n const edits = [replacement, ...getSecondaryEdits(this.textModel, positions, replacement)];\n const ghostTexts = edits\n .map((edit, idx) => edit.computeGhostText(model, mode, positions[idx], 0))\n .filter(_base_common_types_js__WEBPACK_IMPORTED_MODULE_5__.isDefined);\n if (!ghostTexts[0]) {\n return undefined;\n }\n return { edits, primaryGhostText: ghostTexts[0], ghostTexts, inlineCompletion, suggestItem: undefined };\n }\n });\n this.ghostTexts = (0,_base_common_observable_js__WEBPACK_IMPORTED_MODULE_3__.derivedOpts)({\n owner: this,\n equalityComparer: _ghostText_js__WEBPACK_IMPORTED_MODULE_12__.ghostTextsOrReplacementsEqual\n }, reader => {\n const v = this.state.read(reader);\n if (!v) {\n return undefined;\n }\n return v.ghostTexts;\n });\n this.primaryGhostText = (0,_base_common_observable_js__WEBPACK_IMPORTED_MODULE_3__.derivedOpts)({\n owner: this,\n equalityComparer: _ghostText_js__WEBPACK_IMPORTED_MODULE_12__.ghostTextOrReplacementEquals\n }, reader => {\n const v = this.state.read(reader);\n if (!v) {\n return undefined;\n }\n return v === null || v === void 0 ? void 0 : v.primaryGhostText;\n });\n this._register((0,_base_common_observable_js__WEBPACK_IMPORTED_MODULE_3__.recomputeInitiallyAndOnChange)(this._fetchInlineCompletions));\n let lastItem = undefined;\n this._register((0,_base_common_observable_js__WEBPACK_IMPORTED_MODULE_3__.autorun)(reader => {\n var _a, _b;\n /** @description call handleItemDidShow */\n const item = this.state.read(reader);\n const completion = item === null || item === void 0 ? void 0 : item.inlineCompletion;\n if ((completion === null || completion === void 0 ? void 0 : completion.semanticId) !== (lastItem === null || lastItem === void 0 ? void 0 : lastItem.semanticId)) {\n lastItem = completion;\n if (completion) {\n const i = completion.inlineCompletion;\n const src = i.source;\n (_b = (_a = src.provider).handleItemDidShow) === null || _b === void 0 ? void 0 : _b.call(_a, src.inlineCompletions, i.sourceInlineCompletion, i.insertText);\n }\n }\n }));\n }\n async trigger(tx) {\n this._isActive.set(true, tx);\n await this._fetchInlineCompletions.get();\n }\n async triggerExplicitly(tx) {\n (0,_base_common_observable_js__WEBPACK_IMPORTED_MODULE_3__.subtransaction)(tx, tx => {\n this._isActive.set(true, tx);\n this._forceUpdateSignal.trigger(tx, _common_languages_js__WEBPACK_IMPORTED_MODULE_10__.InlineCompletionTriggerKind.Explicit);\n });\n await this._fetchInlineCompletions.get();\n }\n stop(tx) {\n (0,_base_common_observable_js__WEBPACK_IMPORTED_MODULE_3__.subtransaction)(tx, tx => {\n this._isActive.set(false, tx);\n this._source.clear(tx);\n });\n }\n _computeAugmentation(suggestCompletion, reader) {\n const model = this.textModel;\n const suggestWidgetInlineCompletions = this._source.suggestWidgetInlineCompletions.read(reader);\n const candidateInlineCompletions = suggestWidgetInlineCompletions\n ? suggestWidgetInlineCompletions.inlineCompletions\n : [this.selectedInlineCompletion.read(reader)].filter(_base_common_types_js__WEBPACK_IMPORTED_MODULE_5__.isDefined);\n const augmentedCompletion = (0,_base_common_arraysFind_js__WEBPACK_IMPORTED_MODULE_0__.mapFindFirst)(candidateInlineCompletions, completion => {\n let r = completion.toSingleTextEdit(reader);\n r = r.removeCommonPrefix(model, _common_core_range_js__WEBPACK_IMPORTED_MODULE_8__.Range.fromPositions(r.range.getStartPosition(), suggestCompletion.range.getEndPosition()));\n return r.augments(suggestCompletion) ? { completion, edit: r } : undefined;\n });\n return augmentedCompletion;\n }\n async _deltaSelectedInlineCompletionIndex(delta) {\n await this.triggerExplicitly();\n const completions = this._filteredInlineCompletionItems.get() || [];\n if (completions.length > 0) {\n const newIdx = (this.selectedInlineCompletionIndex.get() + delta + completions.length) % completions.length;\n this._selectedInlineCompletionId.set(completions[newIdx].semanticId, undefined);\n }\n else {\n this._selectedInlineCompletionId.set(undefined, undefined);\n }\n }\n async next() {\n await this._deltaSelectedInlineCompletionIndex(1);\n }\n async previous() {\n await this._deltaSelectedInlineCompletionIndex(-1);\n }\n async accept(editor) {\n var _a;\n if (editor.getModel() !== this.textModel) {\n throw new _base_common_errors_js__WEBPACK_IMPORTED_MODULE_1__.BugIndicatingError();\n }\n const state = this.state.get();\n if (!state || state.primaryGhostText.isEmpty() || !state.inlineCompletion) {\n return;\n }\n const completion = state.inlineCompletion.toInlineCompletion(undefined);\n editor.pushUndoStop();\n if (completion.snippetInfo) {\n editor.executeEdits('inlineSuggestion.accept', [\n _common_core_editOperation_js__WEBPACK_IMPORTED_MODULE_6__.EditOperation.replaceMove(completion.range, ''),\n ...completion.additionalTextEdits\n ]);\n editor.setPosition(completion.snippetInfo.range.getStartPosition(), 'inlineCompletionAccept');\n (_a = _snippet_browser_snippetController2_js__WEBPACK_IMPORTED_MODULE_16__.SnippetController2.get(editor)) === null || _a === void 0 ? void 0 : _a.insert(completion.snippetInfo.snippet, { undoStopBefore: false });\n }\n else {\n const edits = state.edits;\n const selections = getEndPositionsAfterApplying(edits).map(p => _common_core_selection_js__WEBPACK_IMPORTED_MODULE_9__.Selection.fromPositions(p));\n editor.executeEdits('inlineSuggestion.accept', [\n ...edits.map(edit => _common_core_editOperation_js__WEBPACK_IMPORTED_MODULE_6__.EditOperation.replaceMove(edit.range, edit.text)),\n ...completion.additionalTextEdits\n ]);\n editor.setSelections(selections, 'inlineCompletionAccept');\n }\n if (completion.command) {\n // Make sure the completion list will not be disposed.\n completion.source.addRef();\n }\n // Reset before invoking the command, since the command might cause a follow up trigger.\n (0,_base_common_observable_js__WEBPACK_IMPORTED_MODULE_3__.transaction)(tx => {\n this._source.clear(tx);\n // Potentially, isActive will get set back to true by the typing or accept inline suggest event\n // if automatic inline suggestions are enabled.\n this._isActive.set(false, tx);\n });\n if (completion.command) {\n await this._commandService\n .executeCommand(completion.command.id, ...(completion.command.arguments || []))\n .then(undefined, _base_common_errors_js__WEBPACK_IMPORTED_MODULE_1__.onUnexpectedExternalError);\n completion.source.removeRef();\n }\n }\n async acceptNextWord(editor) {\n await this._acceptNext(editor, (pos, text) => {\n const langId = this.textModel.getLanguageIdAtPosition(pos.lineNumber, pos.column);\n const config = this._languageConfigurationService.getLanguageConfiguration(langId);\n const wordRegExp = new RegExp(config.wordDefinition.source, config.wordDefinition.flags.replace('g', ''));\n const m1 = text.match(wordRegExp);\n let acceptUntilIndexExclusive = 0;\n if (m1 && m1.index !== undefined) {\n if (m1.index === 0) {\n acceptUntilIndexExclusive = m1[0].length;\n }\n else {\n acceptUntilIndexExclusive = m1.index;\n }\n }\n else {\n acceptUntilIndexExclusive = text.length;\n }\n const wsRegExp = /\\s+/g;\n const m2 = wsRegExp.exec(text);\n if (m2 && m2.index !== undefined) {\n if (m2.index + m2[0].length < acceptUntilIndexExclusive) {\n acceptUntilIndexExclusive = m2.index + m2[0].length;\n }\n }\n return acceptUntilIndexExclusive;\n });\n }\n async acceptNextLine(editor) {\n await this._acceptNext(editor, (pos, text) => {\n const m = text.match(/\\n/);\n if (m && m.index !== undefined) {\n return m.index + 1;\n }\n return text.length;\n });\n }\n async _acceptNext(editor, getAcceptUntilIndex) {\n if (editor.getModel() !== this.textModel) {\n throw new _base_common_errors_js__WEBPACK_IMPORTED_MODULE_1__.BugIndicatingError();\n }\n const state = this.state.get();\n if (!state || state.primaryGhostText.isEmpty() || !state.inlineCompletion) {\n return;\n }\n const ghostText = state.primaryGhostText;\n const completion = state.inlineCompletion.toInlineCompletion(undefined);\n if (completion.snippetInfo || completion.filterText !== completion.insertText) {\n // not in WYSIWYG mode, partial commit might change completion, thus it is not supported\n await this.accept(editor);\n return;\n }\n const firstPart = ghostText.parts[0];\n const ghostTextPos = new _common_core_position_js__WEBPACK_IMPORTED_MODULE_7__.Position(ghostText.lineNumber, firstPart.column);\n const ghostTextVal = firstPart.text;\n const acceptUntilIndexExclusive = getAcceptUntilIndex(ghostTextPos, ghostTextVal);\n if (acceptUntilIndexExclusive === ghostTextVal.length && ghostText.parts.length === 1) {\n this.accept(editor);\n return;\n }\n const partialGhostTextVal = ghostTextVal.substring(0, acceptUntilIndexExclusive);\n const positions = this._positions.get();\n const cursorPosition = positions[0];\n // Executing the edit might free the completion, so we have to hold a reference on it.\n completion.source.addRef();\n try {\n this._isAcceptingPartially = true;\n try {\n editor.pushUndoStop();\n const replaceRange = _common_core_range_js__WEBPACK_IMPORTED_MODULE_8__.Range.fromPositions(cursorPosition, ghostTextPos);\n const newText = editor.getModel().getValueInRange(replaceRange) + partialGhostTextVal;\n const primaryEdit = new _singleTextEdit_js__WEBPACK_IMPORTED_MODULE_14__.SingleTextEdit(replaceRange, newText);\n const edits = [primaryEdit, ...getSecondaryEdits(this.textModel, positions, primaryEdit)];\n const selections = getEndPositionsAfterApplying(edits).map(p => _common_core_selection_js__WEBPACK_IMPORTED_MODULE_9__.Selection.fromPositions(p));\n editor.executeEdits('inlineSuggestion.accept', edits.map(edit => _common_core_editOperation_js__WEBPACK_IMPORTED_MODULE_6__.EditOperation.replaceMove(edit.range, edit.text)));\n editor.setSelections(selections, 'inlineCompletionPartialAccept');\n }\n finally {\n this._isAcceptingPartially = false;\n }\n if (completion.source.provider.handlePartialAccept) {\n const acceptedRange = _common_core_range_js__WEBPACK_IMPORTED_MODULE_8__.Range.fromPositions(completion.range.getStartPosition(), (0,_utils_js__WEBPACK_IMPORTED_MODULE_15__.addPositions)(ghostTextPos, (0,_utils_js__WEBPACK_IMPORTED_MODULE_15__.lengthOfText)(partialGhostTextVal)));\n // This assumes that the inline completion and the model use the same EOL style.\n const text = editor.getModel().getValueInRange(acceptedRange, 1 /* EndOfLinePreference.LF */);\n completion.source.provider.handlePartialAccept(completion.source.inlineCompletions, completion.sourceInlineCompletion, text.length);\n }\n }\n finally {\n completion.source.removeRef();\n }\n }\n handleSuggestAccepted(item) {\n var _a, _b;\n const itemEdit = item.toSingleTextEdit().removeCommonPrefix(this.textModel);\n const augmentedCompletion = this._computeAugmentation(itemEdit, undefined);\n if (!augmentedCompletion) {\n return;\n }\n const inlineCompletion = augmentedCompletion.completion.inlineCompletion;\n (_b = (_a = inlineCompletion.source.provider).handlePartialAccept) === null || _b === void 0 ? void 0 : _b.call(_a, inlineCompletion.source.inlineCompletions, inlineCompletion.sourceInlineCompletion, itemEdit.text.length);\n }\n};\nInlineCompletionsModel = __decorate([\n __param(9, _platform_instantiation_common_instantiation_js__WEBPACK_IMPORTED_MODULE_18__.IInstantiationService),\n __param(10, _platform_commands_common_commands_js__WEBPACK_IMPORTED_MODULE_17__.ICommandService),\n __param(11, _common_languages_languageConfigurationRegistry_js__WEBPACK_IMPORTED_MODULE_11__.ILanguageConfigurationService)\n], InlineCompletionsModel);\n\nfunction getSecondaryEdits(textModel, positions, primaryEdit) {\n if (positions.length === 1) {\n // No secondary cursor positions\n return [];\n }\n const primaryPosition = positions[0];\n const secondaryPositions = positions.slice(1);\n const primaryEditStartPosition = primaryEdit.range.getStartPosition();\n const primaryEditEndPosition = primaryEdit.range.getEndPosition();\n const replacedTextAfterPrimaryCursor = textModel.getValueInRange(_common_core_range_js__WEBPACK_IMPORTED_MODULE_8__.Range.fromPositions(primaryPosition, primaryEditEndPosition));\n const positionWithinTextEdit = (0,_utils_js__WEBPACK_IMPORTED_MODULE_15__.subtractPositions)(primaryPosition, primaryEditStartPosition);\n if (positionWithinTextEdit.lineNumber < 1) {\n (0,_base_common_errors_js__WEBPACK_IMPORTED_MODULE_1__.onUnexpectedError)(new _base_common_errors_js__WEBPACK_IMPORTED_MODULE_1__.BugIndicatingError(`positionWithinTextEdit line number should be bigger than 0.\n\t\t\tInvalid subtraction between ${primaryPosition.toString()} and ${primaryEditStartPosition.toString()}`));\n return [];\n }\n const secondaryEditText = substringPos(primaryEdit.text, positionWithinTextEdit);\n return secondaryPositions.map(pos => {\n const posEnd = (0,_utils_js__WEBPACK_IMPORTED_MODULE_15__.addPositions)((0,_utils_js__WEBPACK_IMPORTED_MODULE_15__.subtractPositions)(pos, primaryEditStartPosition), primaryEditEndPosition);\n const textAfterSecondaryCursor = textModel.getValueInRange(_common_core_range_js__WEBPACK_IMPORTED_MODULE_8__.Range.fromPositions(pos, posEnd));\n const l = (0,_base_common_strings_js__WEBPACK_IMPORTED_MODULE_4__.commonPrefixLength)(replacedTextAfterPrimaryCursor, textAfterSecondaryCursor);\n const range = _common_core_range_js__WEBPACK_IMPORTED_MODULE_8__.Range.fromPositions(pos, pos.delta(0, l));\n return new _singleTextEdit_js__WEBPACK_IMPORTED_MODULE_14__.SingleTextEdit(range, secondaryEditText);\n });\n}\nfunction substringPos(text, pos) {\n let subtext = '';\n const lines = (0,_base_common_strings_js__WEBPACK_IMPORTED_MODULE_4__.splitLinesIncludeSeparators)(text);\n for (let i = pos.lineNumber - 1; i < lines.length; i++) {\n subtext += lines[i].substring(i === pos.lineNumber - 1 ? pos.column - 1 : 0);\n }\n return subtext;\n}\nfunction getEndPositionsAfterApplying(edits) {\n const sortPerm = _utils_js__WEBPACK_IMPORTED_MODULE_15__.Permutation.createSortPermutation(edits, (edit1, edit2) => _common_core_range_js__WEBPACK_IMPORTED_MODULE_8__.Range.compareRangesUsingStarts(edit1.range, edit2.range));\n const sortedNewRanges = (0,_utils_js__WEBPACK_IMPORTED_MODULE_15__.getNewRanges)(sortPerm.apply(edits));\n const newRanges = sortPerm.inverse().apply(sortedNewRanges);\n return newRanges.map(range => range.getEndPosition());\n}\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/contrib/inlineCompletions/browser/inlineCompletionsModel.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/contrib/inlineCompletions/browser/inlineCompletionsSource.js":
/*!***************************************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/contrib/inlineCompletions/browser/inlineCompletionsSource.js ***!
\***************************************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ InlineCompletionWithUpdatedRange: () => (/* binding */ InlineCompletionWithUpdatedRange),\n/* harmony export */ InlineCompletionsSource: () => (/* binding */ InlineCompletionsSource),\n/* harmony export */ UpToDateInlineCompletions: () => (/* binding */ UpToDateInlineCompletions)\n/* harmony export */ });\n/* harmony import */ var _base_common_cancellation_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../../base/common/cancellation.js */ \"./node_modules/monaco-editor/esm/vs/base/common/cancellation.js\");\n/* harmony import */ var _base_common_filters_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../base/common/filters.js */ \"./node_modules/monaco-editor/esm/vs/base/common/filters.js\");\n/* harmony import */ var _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../../base/common/lifecycle.js */ \"./node_modules/monaco-editor/esm/vs/base/common/lifecycle.js\");\n/* harmony import */ var _base_common_observable_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../../../base/common/observable.js */ \"./node_modules/monaco-editor/esm/vs/base/common/observable.js\");\n/* harmony import */ var _common_core_position_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../../common/core/position.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/core/position.js\");\n/* harmony import */ var _common_languages_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../../../common/languages.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/languages.js\");\n/* harmony import */ var _common_languages_languageConfigurationRegistry_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../../../common/languages/languageConfigurationRegistry.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/languages/languageConfigurationRegistry.js\");\n/* harmony import */ var _common_services_languageFeatures_js__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ../../../common/services/languageFeatures.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/services/languageFeatures.js\");\n/* harmony import */ var _provideInlineCompletions_js__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ./provideInlineCompletions.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/inlineCompletions/browser/provideInlineCompletions.js\");\n/* harmony import */ var _singleTextEdit_js__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ./singleTextEdit.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/inlineCompletions/browser/singleTextEdit.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\nvar __decorate = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\n return c > 3 && r && Object.defineProperty(target, key, r), r;\n};\nvar __param = (undefined && undefined.__param) || function (paramIndex, decorator) {\n return function (target, key) { decorator(target, key, paramIndex); }\n};\n\n\n\n\n\n\n\n\n\n\nlet InlineCompletionsSource = class InlineCompletionsSource extends _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_2__.Disposable {\n constructor(textModel, versionId, _debounceValue, languageFeaturesService, languageConfigurationService) {\n super();\n this.textModel = textModel;\n this.versionId = versionId;\n this._debounceValue = _debounceValue;\n this.languageFeaturesService = languageFeaturesService;\n this.languageConfigurationService = languageConfigurationService;\n this._updateOperation = this._register(new _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_2__.MutableDisposable());\n this.inlineCompletions = (0,_base_common_observable_js__WEBPACK_IMPORTED_MODULE_3__.disposableObservableValue)('inlineCompletions', undefined);\n this.suggestWidgetInlineCompletions = (0,_base_common_observable_js__WEBPACK_IMPORTED_MODULE_3__.disposableObservableValue)('suggestWidgetInlineCompletions', undefined);\n this._register(this.textModel.onDidChangeContent(() => {\n this._updateOperation.clear();\n }));\n }\n fetch(position, context, activeInlineCompletion) {\n var _a, _b;\n const request = new UpdateRequest(position, context, this.textModel.getVersionId());\n const target = context.selectedSuggestionInfo ? this.suggestWidgetInlineCompletions : this.inlineCompletions;\n if ((_a = this._updateOperation.value) === null || _a === void 0 ? void 0 : _a.request.satisfies(request)) {\n return this._updateOperation.value.promise;\n }\n else if ((_b = target.get()) === null || _b === void 0 ? void 0 : _b.request.satisfies(request)) {\n return Promise.resolve(true);\n }\n const updateOngoing = !!this._updateOperation.value;\n this._updateOperation.clear();\n const source = new _base_common_cancellation_js__WEBPACK_IMPORTED_MODULE_0__.CancellationTokenSource();\n const promise = (async () => {\n const shouldDebounce = updateOngoing || context.triggerKind === _common_languages_js__WEBPACK_IMPORTED_MODULE_5__.InlineCompletionTriggerKind.Automatic;\n if (shouldDebounce) {\n // This debounces the operation\n await wait(this._debounceValue.get(this.textModel), source.token);\n }\n if (source.token.isCancellationRequested || this.textModel.getVersionId() !== request.versionId) {\n return false;\n }\n const startTime = new Date();\n const updatedCompletions = await (0,_provideInlineCompletions_js__WEBPACK_IMPORTED_MODULE_8__.provideInlineCompletions)(this.languageFeaturesService.inlineCompletionsProvider, position, this.textModel, context, source.token, this.languageConfigurationService);\n if (source.token.isCancellationRequested || this.textModel.getVersionId() !== request.versionId) {\n return false;\n }\n const endTime = new Date();\n this._debounceValue.update(this.textModel, endTime.getTime() - startTime.getTime());\n const completions = new UpToDateInlineCompletions(updatedCompletions, request, this.textModel, this.versionId);\n if (activeInlineCompletion) {\n const asInlineCompletion = activeInlineCompletion.toInlineCompletion(undefined);\n if (activeInlineCompletion.canBeReused(this.textModel, position) && !updatedCompletions.has(asInlineCompletion)) {\n completions.prepend(activeInlineCompletion.inlineCompletion, asInlineCompletion.range, true);\n }\n }\n this._updateOperation.clear();\n (0,_base_common_observable_js__WEBPACK_IMPORTED_MODULE_3__.transaction)(tx => {\n /** @description Update completions with provider result */\n target.set(completions, tx);\n });\n return true;\n })();\n const updateOperation = new UpdateOperation(request, source, promise);\n this._updateOperation.value = updateOperation;\n return promise;\n }\n clear(tx) {\n this._updateOperation.clear();\n this.inlineCompletions.set(undefined, tx);\n this.suggestWidgetInlineCompletions.set(undefined, tx);\n }\n clearSuggestWidgetInlineCompletions(tx) {\n var _a;\n if ((_a = this._updateOperation.value) === null || _a === void 0 ? void 0 : _a.request.context.selectedSuggestionInfo) {\n this._updateOperation.clear();\n }\n this.suggestWidgetInlineCompletions.set(undefined, tx);\n }\n cancelUpdate() {\n this._updateOperation.clear();\n }\n};\nInlineCompletionsSource = __decorate([\n __param(3, _common_services_languageFeatures_js__WEBPACK_IMPORTED_MODULE_7__.ILanguageFeaturesService),\n __param(4, _common_languages_languageConfigurationRegistry_js__WEBPACK_IMPORTED_MODULE_6__.ILanguageConfigurationService)\n], InlineCompletionsSource);\n\nfunction wait(ms, cancellationToken) {\n return new Promise(resolve => {\n let d = undefined;\n const handle = setTimeout(() => {\n if (d) {\n d.dispose();\n }\n resolve();\n }, ms);\n if (cancellationToken) {\n d = cancellationToken.onCancellationRequested(() => {\n clearTimeout(handle);\n if (d) {\n d.dispose();\n }\n resolve();\n });\n }\n });\n}\nclass UpdateRequest {\n constructor(position, context, versionId) {\n this.position = position;\n this.context = context;\n this.versionId = versionId;\n }\n satisfies(other) {\n return this.position.equals(other.position)\n && equals(this.context.selectedSuggestionInfo, other.context.selectedSuggestionInfo, (v1, v2) => v1.equals(v2))\n && (other.context.triggerKind === _common_languages_js__WEBPACK_IMPORTED_MODULE_5__.InlineCompletionTriggerKind.Automatic\n || this.context.triggerKind === _common_languages_js__WEBPACK_IMPORTED_MODULE_5__.InlineCompletionTriggerKind.Explicit)\n && this.versionId === other.versionId;\n }\n}\nfunction equals(v1, v2, equals) {\n if (!v1 || !v2) {\n return v1 === v2;\n }\n return equals(v1, v2);\n}\nclass UpdateOperation {\n constructor(request, cancellationTokenSource, promise) {\n this.request = request;\n this.cancellationTokenSource = cancellationTokenSource;\n this.promise = promise;\n }\n dispose() {\n this.cancellationTokenSource.cancel();\n }\n}\nclass UpToDateInlineCompletions {\n get inlineCompletions() { return this._inlineCompletions; }\n constructor(inlineCompletionProviderResult, request, textModel, versionId) {\n this.inlineCompletionProviderResult = inlineCompletionProviderResult;\n this.request = request;\n this.textModel = textModel;\n this.versionId = versionId;\n this._refCount = 1;\n this._prependedInlineCompletionItems = [];\n this._rangeVersionIdValue = 0;\n this._rangeVersionId = (0,_base_common_observable_js__WEBPACK_IMPORTED_MODULE_3__.derived)(this, reader => {\n this.versionId.read(reader);\n let changed = false;\n for (const i of this._inlineCompletions) {\n changed = changed || i._updateRange(this.textModel);\n }\n if (changed) {\n this._rangeVersionIdValue++;\n }\n return this._rangeVersionIdValue;\n });\n const ids = textModel.deltaDecorations([], inlineCompletionProviderResult.completions.map(i => ({\n range: i.range,\n options: {\n description: 'inline-completion-tracking-range'\n },\n })));\n this._inlineCompletions = inlineCompletionProviderResult.completions.map((i, index) => new InlineCompletionWithUpdatedRange(i, ids[index], this._rangeVersionId));\n }\n clone() {\n this._refCount++;\n return this;\n }\n dispose() {\n this._refCount--;\n if (this._refCount === 0) {\n setTimeout(() => {\n // To fix https://github.com/microsoft/vscode/issues/188348\n if (!this.textModel.isDisposed()) {\n // This is just cleanup. It's ok if it happens with a delay.\n this.textModel.deltaDecorations(this._inlineCompletions.map(i => i.decorationId), []);\n }\n }, 0);\n this.inlineCompletionProviderResult.dispose();\n for (const i of this._prependedInlineCompletionItems) {\n i.source.removeRef();\n }\n }\n }\n prepend(inlineCompletion, range, addRefToSource) {\n if (addRefToSource) {\n inlineCompletion.source.addRef();\n }\n const id = this.textModel.deltaDecorations([], [{\n range,\n options: {\n description: 'inline-completion-tracking-range'\n },\n }])[0];\n this._inlineCompletions.unshift(new InlineCompletionWithUpdatedRange(inlineCompletion, id, this._rangeVersionId, range));\n this._prependedInlineCompletionItems.push(inlineCompletion);\n }\n}\nclass InlineCompletionWithUpdatedRange {\n get forwardStable() {\n var _a;\n return (_a = this.inlineCompletion.source.inlineCompletions.enableForwardStability) !== null && _a !== void 0 ? _a : false;\n }\n constructor(inlineCompletion, decorationId, rangeVersion, initialRange) {\n this.inlineCompletion = inlineCompletion;\n this.decorationId = decorationId;\n this.rangeVersion = rangeVersion;\n this.semanticId = JSON.stringify([\n this.inlineCompletion.filterText,\n this.inlineCompletion.insertText,\n this.inlineCompletion.range.getStartPosition().toString()\n ]);\n this._isValid = true;\n this._updatedRange = initialRange !== null && initialRange !== void 0 ? initialRange : inlineCompletion.range;\n }\n toInlineCompletion(reader) {\n return this.inlineCompletion.withRange(this._getUpdatedRange(reader));\n }\n toSingleTextEdit(reader) {\n return new _singleTextEdit_js__WEBPACK_IMPORTED_MODULE_9__.SingleTextEdit(this._getUpdatedRange(reader), this.inlineCompletion.insertText);\n }\n isVisible(model, cursorPosition, reader) {\n const minimizedReplacement = this._toFilterTextReplacement(reader).removeCommonPrefix(model);\n if (!this._isValid\n || !this.inlineCompletion.range.getStartPosition().equals(this._getUpdatedRange(reader).getStartPosition())\n || cursorPosition.lineNumber !== minimizedReplacement.range.startLineNumber) {\n return false;\n }\n // We might consider comparing by .toLowerText, but this requires GhostTextReplacement\n const originalValue = model.getValueInRange(minimizedReplacement.range, 1 /* EndOfLinePreference.LF */);\n const filterText = minimizedReplacement.text;\n const cursorPosIndex = Math.max(0, cursorPosition.column - minimizedReplacement.range.startColumn);\n let filterTextBefore = filterText.substring(0, cursorPosIndex);\n let filterTextAfter = filterText.substring(cursorPosIndex);\n let originalValueBefore = originalValue.substring(0, cursorPosIndex);\n let originalValueAfter = originalValue.substring(cursorPosIndex);\n const originalValueIndent = model.getLineIndentColumn(minimizedReplacement.range.startLineNumber);\n if (minimizedReplacement.range.startColumn <= originalValueIndent) {\n // Remove indentation\n originalValueBefore = originalValueBefore.trimStart();\n if (originalValueBefore.length === 0) {\n originalValueAfter = originalValueAfter.trimStart();\n }\n filterTextBefore = filterTextBefore.trimStart();\n if (filterTextBefore.length === 0) {\n filterTextAfter = filterTextAfter.trimStart();\n }\n }\n return filterTextBefore.startsWith(originalValueBefore)\n && !!(0,_base_common_filters_js__WEBPACK_IMPORTED_MODULE_1__.matchesSubString)(originalValueAfter, filterTextAfter);\n }\n canBeReused(model, position) {\n const result = this._isValid\n && this._getUpdatedRange(undefined).containsPosition(position)\n && this.isVisible(model, position, undefined)\n && !this._isSmallerThanOriginal(undefined);\n return result;\n }\n _toFilterTextReplacement(reader) {\n return new _singleTextEdit_js__WEBPACK_IMPORTED_MODULE_9__.SingleTextEdit(this._getUpdatedRange(reader), this.inlineCompletion.filterText);\n }\n _isSmallerThanOriginal(reader) {\n return length(this._getUpdatedRange(reader)).isBefore(length(this.inlineCompletion.range));\n }\n _getUpdatedRange(reader) {\n this.rangeVersion.read(reader); // This makes sure all the ranges are updated.\n return this._updatedRange;\n }\n _updateRange(textModel) {\n const range = textModel.getDecorationRange(this.decorationId);\n if (!range) {\n // A setValue call might flush all decorations.\n this._isValid = false;\n return true;\n }\n if (!this._updatedRange.equalsRange(range)) {\n this._updatedRange = range;\n return true;\n }\n return false;\n }\n}\nfunction length(range) {\n if (range.startLineNumber === range.endLineNumber) {\n return new _common_core_position_js__WEBPACK_IMPORTED_MODULE_4__.Position(1, 1 + range.endColumn - range.startColumn);\n }\n else {\n return new _common_core_position_js__WEBPACK_IMPORTED_MODULE_4__.Position(1 + range.endLineNumber - range.startLineNumber, range.endColumn);\n }\n}\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/contrib/inlineCompletions/browser/inlineCompletionsSource.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/contrib/inlineCompletions/browser/provideInlineCompletions.js":
/*!****************************************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/contrib/inlineCompletions/browser/provideInlineCompletions.js ***!
\****************************************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ InlineCompletionItem: () => (/* binding */ InlineCompletionItem),\n/* harmony export */ InlineCompletionList: () => (/* binding */ InlineCompletionList),\n/* harmony export */ InlineCompletionProviderResult: () => (/* binding */ InlineCompletionProviderResult),\n/* harmony export */ provideInlineCompletions: () => (/* binding */ provideInlineCompletions)\n/* harmony export */ });\n/* harmony import */ var _base_common_assert_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../../base/common/assert.js */ \"./node_modules/monaco-editor/esm/vs/base/common/assert.js\");\n/* harmony import */ var _base_common_async_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../base/common/async.js */ \"./node_modules/monaco-editor/esm/vs/base/common/async.js\");\n/* harmony import */ var _base_common_cancellation_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../../base/common/cancellation.js */ \"./node_modules/monaco-editor/esm/vs/base/common/cancellation.js\");\n/* harmony import */ var _base_common_map_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../../../base/common/map.js */ \"./node_modules/monaco-editor/esm/vs/base/common/map.js\");\n/* harmony import */ var _base_common_errors_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../../../base/common/errors.js */ \"./node_modules/monaco-editor/esm/vs/base/common/errors.js\");\n/* harmony import */ var _common_core_range_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../../../common/core/range.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/core/range.js\");\n/* harmony import */ var _common_model_bracketPairsTextModelPart_fixBrackets_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../../../common/model/bracketPairsTextModelPart/fixBrackets.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/model/bracketPairsTextModelPart/fixBrackets.js\");\n/* harmony import */ var _utils_js__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ./utils.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/inlineCompletions/browser/utils.js\");\n/* harmony import */ var _snippet_browser_snippetParser_js__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ../../snippet/browser/snippetParser.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/snippet/browser/snippetParser.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n\n\n\n\n\n\n\n\nasync function provideInlineCompletions(registry, position, model, context, token = _base_common_cancellation_js__WEBPACK_IMPORTED_MODULE_2__.CancellationToken.None, languageConfigurationService) {\n // Important: Don't use position after the await calls, as the model could have been changed in the meantime!\n const defaultReplaceRange = getDefaultRange(position, model);\n const providers = registry.all(model);\n const multiMap = new _base_common_map_js__WEBPACK_IMPORTED_MODULE_3__.SetMap();\n for (const provider of providers) {\n if (provider.groupId) {\n multiMap.add(provider.groupId, provider);\n }\n }\n function getPreferredProviders(provider) {\n if (!provider.yieldsToGroupIds) {\n return [];\n }\n const result = [];\n for (const groupId of provider.yieldsToGroupIds || []) {\n const providers = multiMap.get(groupId);\n for (const p of providers) {\n result.push(p);\n }\n }\n return result;\n }\n const states = new Map();\n const seen = new Set();\n function findPreferredProviderCircle(provider, stack) {\n stack = [...stack, provider];\n if (seen.has(provider)) {\n return stack;\n }\n seen.add(provider);\n try {\n const preferred = getPreferredProviders(provider);\n for (const p of preferred) {\n const c = findPreferredProviderCircle(p, stack);\n if (c) {\n return c;\n }\n }\n }\n finally {\n seen.delete(provider);\n }\n return undefined;\n }\n function processProvider(provider) {\n const state = states.get(provider);\n if (state) {\n return state;\n }\n const circle = findPreferredProviderCircle(provider, []);\n if (circle) {\n (0,_base_common_errors_js__WEBPACK_IMPORTED_MODULE_4__.onUnexpectedExternalError)(new Error(`Inline completions: cyclic yield-to dependency detected. Path: ${circle.map(s => s.toString ? s.toString() : ('' + s)).join(' -> ')}`));\n }\n const deferredPromise = new _base_common_async_js__WEBPACK_IMPORTED_MODULE_1__.DeferredPromise();\n states.set(provider, deferredPromise.p);\n (async () => {\n if (!circle) {\n const preferred = getPreferredProviders(provider);\n for (const p of preferred) {\n const result = await processProvider(p);\n if (result && result.items.length > 0) {\n // Skip provider\n return undefined;\n }\n }\n }\n try {\n const completions = await provider.provideInlineCompletions(model, position, context, token);\n return completions;\n }\n catch (e) {\n (0,_base_common_errors_js__WEBPACK_IMPORTED_MODULE_4__.onUnexpectedExternalError)(e);\n return undefined;\n }\n })().then(c => deferredPromise.complete(c), e => deferredPromise.error(e));\n return deferredPromise.p;\n }\n const providerResults = await Promise.all(providers.map(async (provider) => ({ provider, completions: await processProvider(provider) })));\n const itemsByHash = new Map();\n const lists = [];\n for (const result of providerResults) {\n const completions = result.completions;\n if (!completions) {\n continue;\n }\n const list = new InlineCompletionList(completions, result.provider);\n lists.push(list);\n for (const item of completions.items) {\n const inlineCompletionItem = InlineCompletionItem.from(item, list, defaultReplaceRange, model, languageConfigurationService);\n itemsByHash.set(inlineCompletionItem.hash(), inlineCompletionItem);\n }\n }\n return new InlineCompletionProviderResult(Array.from(itemsByHash.values()), new Set(itemsByHash.keys()), lists);\n}\nclass InlineCompletionProviderResult {\n constructor(\n /**\n * Free of duplicates.\n */\n completions, hashs, providerResults) {\n this.completions = completions;\n this.hashs = hashs;\n this.providerResults = providerResults;\n }\n has(item) {\n return this.hashs.has(item.hash());\n }\n dispose() {\n for (const result of this.providerResults) {\n result.removeRef();\n }\n }\n}\n/**\n * A ref counted pointer to the computed `InlineCompletions` and the `InlineCompletionsProvider` that\n * computed them.\n */\nclass InlineCompletionList {\n constructor(inlineCompletions, provider) {\n this.inlineCompletions = inlineCompletions;\n this.provider = provider;\n this.refCount = 1;\n }\n addRef() {\n this.refCount++;\n }\n removeRef() {\n this.refCount--;\n if (this.refCount === 0) {\n this.provider.freeInlineCompletions(this.inlineCompletions);\n }\n }\n}\nclass InlineCompletionItem {\n static from(inlineCompletion, source, defaultReplaceRange, textModel, languageConfigurationService) {\n let insertText;\n let snippetInfo;\n let range = inlineCompletion.range ? _common_core_range_js__WEBPACK_IMPORTED_MODULE_5__.Range.lift(inlineCompletion.range) : defaultReplaceRange;\n if (typeof inlineCompletion.insertText === 'string') {\n insertText = inlineCompletion.insertText;\n if (languageConfigurationService && inlineCompletion.completeBracketPairs) {\n insertText = closeBrackets(insertText, range.getStartPosition(), textModel, languageConfigurationService);\n // Modify range depending on if brackets are added or removed\n const diff = insertText.length - inlineCompletion.insertText.length;\n if (diff !== 0) {\n range = new _common_core_range_js__WEBPACK_IMPORTED_MODULE_5__.Range(range.startLineNumber, range.startColumn, range.endLineNumber, range.endColumn + diff);\n }\n }\n snippetInfo = undefined;\n }\n else if ('snippet' in inlineCompletion.insertText) {\n const preBracketCompletionLength = inlineCompletion.insertText.snippet.length;\n if (languageConfigurationService && inlineCompletion.completeBracketPairs) {\n inlineCompletion.insertText.snippet = closeBrackets(inlineCompletion.insertText.snippet, range.getStartPosition(), textModel, languageConfigurationService);\n // Modify range depending on if brackets are added or removed\n const diff = inlineCompletion.insertText.snippet.length - preBracketCompletionLength;\n if (diff !== 0) {\n range = new _common_core_range_js__WEBPACK_IMPORTED_MODULE_5__.Range(range.startLineNumber, range.startColumn, range.endLineNumber, range.endColumn + diff);\n }\n }\n const snippet = new _snippet_browser_snippetParser_js__WEBPACK_IMPORTED_MODULE_8__.SnippetParser().parse(inlineCompletion.insertText.snippet);\n if (snippet.children.length === 1 && snippet.children[0] instanceof _snippet_browser_snippetParser_js__WEBPACK_IMPORTED_MODULE_8__.Text) {\n insertText = snippet.children[0].value;\n snippetInfo = undefined;\n }\n else {\n insertText = snippet.toString();\n snippetInfo = {\n snippet: inlineCompletion.insertText.snippet,\n range: range\n };\n }\n }\n else {\n (0,_base_common_assert_js__WEBPACK_IMPORTED_MODULE_0__.assertNever)(inlineCompletion.insertText);\n }\n return new InlineCompletionItem(insertText, inlineCompletion.command, range, insertText, snippetInfo, inlineCompletion.additionalTextEdits || (0,_utils_js__WEBPACK_IMPORTED_MODULE_7__.getReadonlyEmptyArray)(), inlineCompletion, source);\n }\n constructor(filterText, command, range, insertText, snippetInfo, additionalTextEdits, \n /**\n * A reference to the original inline completion this inline completion has been constructed from.\n * Used for event data to ensure referential equality.\n */\n sourceInlineCompletion, \n /**\n * A reference to the original inline completion list this inline completion has been constructed from.\n * Used for event data to ensure referential equality.\n */\n source) {\n this.filterText = filterText;\n this.command = command;\n this.range = range;\n this.insertText = insertText;\n this.snippetInfo = snippetInfo;\n this.additionalTextEdits = additionalTextEdits;\n this.sourceInlineCompletion = sourceInlineCompletion;\n this.source = source;\n filterText = filterText.replace(/\\r\\n|\\r/g, '\\n');\n insertText = filterText.replace(/\\r\\n|\\r/g, '\\n');\n }\n withRange(updatedRange) {\n return new InlineCompletionItem(this.filterText, this.command, updatedRange, this.insertText, this.snippetInfo, this.additionalTextEdits, this.sourceInlineCompletion, this.source);\n }\n hash() {\n return JSON.stringify({ insertText: this.insertText, range: this.range.toString() });\n }\n}\nfunction getDefaultRange(position, model) {\n const word = model.getWordAtPosition(position);\n const maxColumn = model.getLineMaxColumn(position.lineNumber);\n // By default, always replace up until the end of the current line.\n // This default might be subject to change!\n return word\n ? new _common_core_range_js__WEBPACK_IMPORTED_MODULE_5__.Range(position.lineNumber, word.startColumn, position.lineNumber, maxColumn)\n : _common_core_range_js__WEBPACK_IMPORTED_MODULE_5__.Range.fromPositions(position, position.with(undefined, maxColumn));\n}\nfunction closeBrackets(text, position, model, languageConfigurationService) {\n const lineStart = model.getLineContent(position.lineNumber).substring(0, position.column - 1);\n const newLine = lineStart + text;\n const newTokens = model.tokenization.tokenizeLineWithEdit(position, newLine.length - (position.column - 1), text);\n const slicedTokens = newTokens === null || newTokens === void 0 ? void 0 : newTokens.sliceAndInflate(position.column - 1, newLine.length, 0);\n if (!slicedTokens) {\n return text;\n }\n const newText = (0,_common_model_bracketPairsTextModelPart_fixBrackets_js__WEBPACK_IMPORTED_MODULE_6__.fixBracketsInLine)(slicedTokens, languageConfigurationService);\n return newText;\n}\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/contrib/inlineCompletions/browser/provideInlineCompletions.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/contrib/inlineCompletions/browser/singleTextEdit.js":
/*!******************************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/contrib/inlineCompletions/browser/singleTextEdit.js ***!
\******************************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ SingleTextEdit: () => (/* binding */ SingleTextEdit)\n/* harmony export */ });\n/* harmony import */ var _base_common_diff_diff_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../../base/common/diff/diff.js */ \"./node_modules/monaco-editor/esm/vs/base/common/diff/diff.js\");\n/* harmony import */ var _base_common_strings_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../base/common/strings.js */ \"./node_modules/monaco-editor/esm/vs/base/common/strings.js\");\n/* harmony import */ var _common_core_range_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../common/core/range.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/core/range.js\");\n/* harmony import */ var _ghostText_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./ghostText.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/inlineCompletions/browser/ghostText.js\");\n/* harmony import */ var _utils_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./utils.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/inlineCompletions/browser/utils.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n\n\n\n\nclass SingleTextEdit {\n constructor(range, text) {\n this.range = range;\n this.text = text;\n }\n removeCommonPrefix(model, validModelRange) {\n const modelRange = validModelRange ? this.range.intersectRanges(validModelRange) : this.range;\n if (!modelRange) {\n return this;\n }\n const valueToReplace = model.getValueInRange(modelRange, 1 /* EndOfLinePreference.LF */);\n const commonPrefixLen = (0,_base_common_strings_js__WEBPACK_IMPORTED_MODULE_1__.commonPrefixLength)(valueToReplace, this.text);\n const start = (0,_utils_js__WEBPACK_IMPORTED_MODULE_4__.addPositions)(this.range.getStartPosition(), (0,_utils_js__WEBPACK_IMPORTED_MODULE_4__.lengthOfText)(valueToReplace.substring(0, commonPrefixLen)));\n const text = this.text.substring(commonPrefixLen);\n const range = _common_core_range_js__WEBPACK_IMPORTED_MODULE_2__.Range.fromPositions(start, this.range.getEndPosition());\n return new SingleTextEdit(range, text);\n }\n augments(base) {\n // The augmented completion must replace the base range, but can replace even more\n return this.text.startsWith(base.text) && rangeExtends(this.range, base.range);\n }\n /**\n * @param previewSuffixLength Sets where to split `inlineCompletion.text`.\n * \tIf the text is `hello` and the suffix length is 2, the non-preview part is `hel` and the preview-part is `lo`.\n */\n computeGhostText(model, mode, cursorPosition, previewSuffixLength = 0) {\n let edit = this.removeCommonPrefix(model);\n if (edit.range.endLineNumber !== edit.range.startLineNumber) {\n // This edit might span multiple lines, but the first lines must be a common prefix.\n return undefined;\n }\n const sourceLine = model.getLineContent(edit.range.startLineNumber);\n const sourceIndentationLength = (0,_base_common_strings_js__WEBPACK_IMPORTED_MODULE_1__.getLeadingWhitespace)(sourceLine).length;\n const suggestionTouchesIndentation = edit.range.startColumn - 1 <= sourceIndentationLength;\n if (suggestionTouchesIndentation) {\n // source: ··········[······abc]\n // ^^^^^^^^^ inlineCompletion.range\n // ^^^^^^^^^^ ^^^^^^ sourceIndentationLength\n // ^^^^^^ replacedIndentation.length\n // ^^^ rangeThatDoesNotReplaceIndentation\n // inlineCompletion.text: '··foo'\n // ^^ suggestionAddedIndentationLength\n const suggestionAddedIndentationLength = (0,_base_common_strings_js__WEBPACK_IMPORTED_MODULE_1__.getLeadingWhitespace)(edit.text).length;\n const replacedIndentation = sourceLine.substring(edit.range.startColumn - 1, sourceIndentationLength);\n const [startPosition, endPosition] = [edit.range.getStartPosition(), edit.range.getEndPosition()];\n const newStartPosition = startPosition.column + replacedIndentation.length <= endPosition.column\n ? startPosition.delta(0, replacedIndentation.length)\n : endPosition;\n const rangeThatDoesNotReplaceIndentation = _common_core_range_js__WEBPACK_IMPORTED_MODULE_2__.Range.fromPositions(newStartPosition, endPosition);\n const suggestionWithoutIndentationChange = edit.text.startsWith(replacedIndentation)\n // Adds more indentation without changing existing indentation: We can add ghost text for this\n ? edit.text.substring(replacedIndentation.length)\n // Changes or removes existing indentation. Only add ghost text for the non-indentation part.\n : edit.text.substring(suggestionAddedIndentationLength);\n edit = new SingleTextEdit(rangeThatDoesNotReplaceIndentation, suggestionWithoutIndentationChange);\n }\n // This is a single line string\n const valueToBeReplaced = model.getValueInRange(edit.range);\n const changes = cachingDiff(valueToBeReplaced, edit.text);\n if (!changes) {\n // No ghost text in case the diff would be too slow to compute\n return undefined;\n }\n const lineNumber = edit.range.startLineNumber;\n const parts = new Array();\n if (mode === 'prefix') {\n const filteredChanges = changes.filter(c => c.originalLength === 0);\n if (filteredChanges.length > 1 || filteredChanges.length === 1 && filteredChanges[0].originalStart !== valueToBeReplaced.length) {\n // Prefixes only have a single change.\n return undefined;\n }\n }\n const previewStartInCompletionText = edit.text.length - previewSuffixLength;\n for (const c of changes) {\n const insertColumn = edit.range.startColumn + c.originalStart + c.originalLength;\n if (mode === 'subwordSmart' && cursorPosition && cursorPosition.lineNumber === edit.range.startLineNumber && insertColumn < cursorPosition.column) {\n // No ghost text before cursor\n return undefined;\n }\n if (c.originalLength > 0) {\n return undefined;\n }\n if (c.modifiedLength === 0) {\n continue;\n }\n const modifiedEnd = c.modifiedStart + c.modifiedLength;\n const nonPreviewTextEnd = Math.max(c.modifiedStart, Math.min(modifiedEnd, previewStartInCompletionText));\n const nonPreviewText = edit.text.substring(c.modifiedStart, nonPreviewTextEnd);\n const italicText = edit.text.substring(nonPreviewTextEnd, Math.max(c.modifiedStart, modifiedEnd));\n if (nonPreviewText.length > 0) {\n parts.push(new _ghostText_js__WEBPACK_IMPORTED_MODULE_3__.GhostTextPart(insertColumn, nonPreviewText, false));\n }\n if (italicText.length > 0) {\n parts.push(new _ghostText_js__WEBPACK_IMPORTED_MODULE_3__.GhostTextPart(insertColumn, italicText, true));\n }\n }\n return new _ghostText_js__WEBPACK_IMPORTED_MODULE_3__.GhostText(lineNumber, parts);\n }\n}\nfunction rangeExtends(extendingRange, rangeToExtend) {\n return rangeToExtend.getStartPosition().equals(extendingRange.getStartPosition())\n && rangeToExtend.getEndPosition().isBeforeOrEqual(extendingRange.getEndPosition());\n}\nlet lastRequest = undefined;\nfunction cachingDiff(originalValue, newValue) {\n if ((lastRequest === null || lastRequest === void 0 ? void 0 : lastRequest.originalValue) === originalValue && (lastRequest === null || lastRequest === void 0 ? void 0 : lastRequest.newValue) === newValue) {\n return lastRequest === null || lastRequest === void 0 ? void 0 : lastRequest.changes;\n }\n else {\n let changes = smartDiff(originalValue, newValue, true);\n if (changes) {\n const deletedChars = deletedCharacters(changes);\n if (deletedChars > 0) {\n // For performance reasons, don't compute diff if there is nothing to improve\n const newChanges = smartDiff(originalValue, newValue, false);\n if (newChanges && deletedCharacters(newChanges) < deletedChars) {\n // Disabling smartness seems to be better here\n changes = newChanges;\n }\n }\n }\n lastRequest = {\n originalValue,\n newValue,\n changes\n };\n return changes;\n }\n}\nfunction deletedCharacters(changes) {\n let sum = 0;\n for (const c of changes) {\n sum += c.originalLength;\n }\n return sum;\n}\n/**\n * When matching `if ()` with `if (f() = 1) { g(); }`,\n * align it like this: `if ( )`\n * Not like this:\t\t\t `if ( )`\n * Also not like this:\t\t `if ( )`.\n *\n * The parenthesis are preprocessed to ensure that they match correctly.\n */\nfunction smartDiff(originalValue, newValue, smartBracketMatching) {\n if (originalValue.length > 5000 || newValue.length > 5000) {\n // We don't want to work on strings that are too big\n return undefined;\n }\n function getMaxCharCode(val) {\n let maxCharCode = 0;\n for (let i = 0, len = val.length; i < len; i++) {\n const charCode = val.charCodeAt(i);\n if (charCode > maxCharCode) {\n maxCharCode = charCode;\n }\n }\n return maxCharCode;\n }\n const maxCharCode = Math.max(getMaxCharCode(originalValue), getMaxCharCode(newValue));\n function getUniqueCharCode(id) {\n if (id < 0) {\n throw new Error('unexpected');\n }\n return maxCharCode + id + 1;\n }\n function getElements(source) {\n let level = 0;\n let group = 0;\n const characters = new Int32Array(source.length);\n for (let i = 0, len = source.length; i < len; i++) {\n // TODO support more brackets\n if (smartBracketMatching && source[i] === '(') {\n const id = group * 100 + level;\n characters[i] = getUniqueCharCode(2 * id);\n level++;\n }\n else if (smartBracketMatching && source[i] === ')') {\n level = Math.max(level - 1, 0);\n const id = group * 100 + level;\n characters[i] = getUniqueCharCode(2 * id + 1);\n if (level === 0) {\n group++;\n }\n }\n else {\n characters[i] = source.charCodeAt(i);\n }\n }\n return characters;\n }\n const elements1 = getElements(originalValue);\n const elements2 = getElements(newValue);\n return new _base_common_diff_diff_js__WEBPACK_IMPORTED_MODULE_0__.LcsDiff({ getElements: () => elements1 }, { getElements: () => elements2 }).ComputeDiff(false).changes;\n}\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/contrib/inlineCompletions/browser/singleTextEdit.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/contrib/inlineCompletions/browser/suggestWidgetInlineCompletionProvider.js":
/*!*****************************************************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/contrib/inlineCompletions/browser/suggestWidgetInlineCompletionProvider.js ***!
\*****************************************************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ SuggestItemInfo: () => (/* binding */ SuggestItemInfo),\n/* harmony export */ SuggestWidgetAdaptor: () => (/* binding */ SuggestWidgetAdaptor)\n/* harmony export */ });\n/* harmony import */ var _base_common_event_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../../base/common/event.js */ \"./node_modules/monaco-editor/esm/vs/base/common/event.js\");\n/* harmony import */ var _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../base/common/lifecycle.js */ \"./node_modules/monaco-editor/esm/vs/base/common/lifecycle.js\");\n/* harmony import */ var _common_core_position_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../common/core/position.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/core/position.js\");\n/* harmony import */ var _common_core_range_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../../common/core/range.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/core/range.js\");\n/* harmony import */ var _common_languages_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../../common/languages.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/languages.js\");\n/* harmony import */ var _snippet_browser_snippetParser_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../../snippet/browser/snippetParser.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/snippet/browser/snippetParser.js\");\n/* harmony import */ var _snippet_browser_snippetSession_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../../snippet/browser/snippetSession.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/snippet/browser/snippetSession.js\");\n/* harmony import */ var _suggest_browser_suggestController_js__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ../../suggest/browser/suggestController.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/suggest/browser/suggestController.js\");\n/* harmony import */ var _base_common_observable_js__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ../../../../base/common/observable.js */ \"./node_modules/monaco-editor/esm/vs/base/common/observable.js\");\n/* harmony import */ var _singleTextEdit_js__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ./singleTextEdit.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/inlineCompletions/browser/singleTextEdit.js\");\n/* harmony import */ var _base_common_arrays_js__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! ../../../../base/common/arrays.js */ \"./node_modules/monaco-editor/esm/vs/base/common/arrays.js\");\n/* harmony import */ var _base_common_arraysFind_js__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(/*! ../../../../base/common/arraysFind.js */ \"./node_modules/monaco-editor/esm/vs/base/common/arraysFind.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n\n\n\n\n\n\n\n\n\n\n\nclass SuggestWidgetAdaptor extends _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_1__.Disposable {\n get selectedItem() {\n return this._selectedItem;\n }\n constructor(editor, suggestControllerPreselector, checkModelVersion, onWillAccept) {\n super();\n this.editor = editor;\n this.suggestControllerPreselector = suggestControllerPreselector;\n this.checkModelVersion = checkModelVersion;\n this.onWillAccept = onWillAccept;\n this.isSuggestWidgetVisible = false;\n this.isShiftKeyPressed = false;\n this._isActive = false;\n this._currentSuggestItemInfo = undefined;\n this._selectedItem = (0,_base_common_observable_js__WEBPACK_IMPORTED_MODULE_8__.observableValue)(this, undefined);\n // See the command acceptAlternativeSelectedSuggestion that is bound to shift+tab\n this._register(editor.onKeyDown(e => {\n if (e.shiftKey && !this.isShiftKeyPressed) {\n this.isShiftKeyPressed = true;\n this.update(this._isActive);\n }\n }));\n this._register(editor.onKeyUp(e => {\n if (e.shiftKey && this.isShiftKeyPressed) {\n this.isShiftKeyPressed = false;\n this.update(this._isActive);\n }\n }));\n const suggestController = _suggest_browser_suggestController_js__WEBPACK_IMPORTED_MODULE_7__.SuggestController.get(this.editor);\n if (suggestController) {\n this._register(suggestController.registerSelector({\n priority: 100,\n select: (model, pos, suggestItems) => {\n var _a;\n (0,_base_common_observable_js__WEBPACK_IMPORTED_MODULE_8__.transaction)(tx => this.checkModelVersion(tx));\n const textModel = this.editor.getModel();\n if (!textModel) {\n // Should not happen\n return -1;\n }\n const itemToPreselect = (_a = this.suggestControllerPreselector()) === null || _a === void 0 ? void 0 : _a.removeCommonPrefix(textModel);\n if (!itemToPreselect) {\n return -1;\n }\n const position = _common_core_position_js__WEBPACK_IMPORTED_MODULE_2__.Position.lift(pos);\n const candidates = suggestItems\n .map((suggestItem, index) => {\n const suggestItemInfo = SuggestItemInfo.fromSuggestion(suggestController, textModel, position, suggestItem, this.isShiftKeyPressed);\n const suggestItemTextEdit = suggestItemInfo.toSingleTextEdit().removeCommonPrefix(textModel);\n const valid = itemToPreselect.augments(suggestItemTextEdit);\n return { index, valid, prefixLength: suggestItemTextEdit.text.length, suggestItem };\n })\n .filter(item => item && item.valid && item.prefixLength > 0);\n const result = (0,_base_common_arraysFind_js__WEBPACK_IMPORTED_MODULE_11__.findFirstMaxBy)(candidates, (0,_base_common_arrays_js__WEBPACK_IMPORTED_MODULE_10__.compareBy)(s => s.prefixLength, _base_common_arrays_js__WEBPACK_IMPORTED_MODULE_10__.numberComparator));\n return result ? result.index : -1;\n }\n }));\n let isBoundToSuggestWidget = false;\n const bindToSuggestWidget = () => {\n if (isBoundToSuggestWidget) {\n return;\n }\n isBoundToSuggestWidget = true;\n this._register(suggestController.widget.value.onDidShow(() => {\n this.isSuggestWidgetVisible = true;\n this.update(true);\n }));\n this._register(suggestController.widget.value.onDidHide(() => {\n this.isSuggestWidgetVisible = false;\n this.update(false);\n }));\n this._register(suggestController.widget.value.onDidFocus(() => {\n this.isSuggestWidgetVisible = true;\n this.update(true);\n }));\n };\n this._register(_base_common_event_js__WEBPACK_IMPORTED_MODULE_0__.Event.once(suggestController.model.onDidTrigger)(e => {\n bindToSuggestWidget();\n }));\n this._register(suggestController.onWillInsertSuggestItem(e => {\n const position = this.editor.getPosition();\n const model = this.editor.getModel();\n if (!position || !model) {\n return undefined;\n }\n const suggestItemInfo = SuggestItemInfo.fromSuggestion(suggestController, model, position, e.item, this.isShiftKeyPressed);\n this.onWillAccept(suggestItemInfo);\n }));\n }\n this.update(this._isActive);\n }\n update(newActive) {\n const newInlineCompletion = this.getSuggestItemInfo();\n if (this._isActive !== newActive || !suggestItemInfoEquals(this._currentSuggestItemInfo, newInlineCompletion)) {\n this._isActive = newActive;\n this._currentSuggestItemInfo = newInlineCompletion;\n (0,_base_common_observable_js__WEBPACK_IMPORTED_MODULE_8__.transaction)(tx => {\n /** @description Update state from suggest widget */\n this.checkModelVersion(tx);\n this._selectedItem.set(this._isActive ? this._currentSuggestItemInfo : undefined, tx);\n });\n }\n }\n getSuggestItemInfo() {\n const suggestController = _suggest_browser_suggestController_js__WEBPACK_IMPORTED_MODULE_7__.SuggestController.get(this.editor);\n if (!suggestController || !this.isSuggestWidgetVisible) {\n return undefined;\n }\n const focusedItem = suggestController.widget.value.getFocusedItem();\n const position = this.editor.getPosition();\n const model = this.editor.getModel();\n if (!focusedItem || !position || !model) {\n return undefined;\n }\n return SuggestItemInfo.fromSuggestion(suggestController, model, position, focusedItem.item, this.isShiftKeyPressed);\n }\n stopForceRenderingAbove() {\n const suggestController = _suggest_browser_suggestController_js__WEBPACK_IMPORTED_MODULE_7__.SuggestController.get(this.editor);\n suggestController === null || suggestController === void 0 ? void 0 : suggestController.stopForceRenderingAbove();\n }\n forceRenderingAbove() {\n const suggestController = _suggest_browser_suggestController_js__WEBPACK_IMPORTED_MODULE_7__.SuggestController.get(this.editor);\n suggestController === null || suggestController === void 0 ? void 0 : suggestController.forceRenderingAbove();\n }\n}\nclass SuggestItemInfo {\n static fromSuggestion(suggestController, model, position, item, toggleMode) {\n let { insertText } = item.completion;\n let isSnippetText = false;\n if (item.completion.insertTextRules & 4 /* CompletionItemInsertTextRule.InsertAsSnippet */) {\n const snippet = new _snippet_browser_snippetParser_js__WEBPACK_IMPORTED_MODULE_5__.SnippetParser().parse(insertText);\n if (snippet.children.length < 100) {\n // Adjust whitespace is expensive.\n _snippet_browser_snippetSession_js__WEBPACK_IMPORTED_MODULE_6__.SnippetSession.adjustWhitespace(model, position, true, snippet);\n }\n insertText = snippet.toString();\n isSnippetText = true;\n }\n const info = suggestController.getOverwriteInfo(item, toggleMode);\n return new SuggestItemInfo(_common_core_range_js__WEBPACK_IMPORTED_MODULE_3__.Range.fromPositions(position.delta(0, -info.overwriteBefore), position.delta(0, Math.max(info.overwriteAfter, 0))), insertText, item.completion.kind, isSnippetText);\n }\n constructor(range, insertText, completionItemKind, isSnippetText) {\n this.range = range;\n this.insertText = insertText;\n this.completionItemKind = completionItemKind;\n this.isSnippetText = isSnippetText;\n }\n equals(other) {\n return this.range.equalsRange(other.range)\n && this.insertText === other.insertText\n && this.completionItemKind === other.completionItemKind\n && this.isSnippetText === other.isSnippetText;\n }\n toSelectedSuggestionInfo() {\n return new _common_languages_js__WEBPACK_IMPORTED_MODULE_4__.SelectedSuggestionInfo(this.range, this.insertText, this.completionItemKind, this.isSnippetText);\n }\n toSingleTextEdit() {\n return new _singleTextEdit_js__WEBPACK_IMPORTED_MODULE_9__.SingleTextEdit(this.range, this.insertText);\n }\n}\nfunction suggestItemInfoEquals(a, b) {\n if (a === b) {\n return true;\n }\n if (!a || !b) {\n return false;\n }\n return a.equals(b);\n}\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/contrib/inlineCompletions/browser/suggestWidgetInlineCompletionProvider.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/contrib/inlineCompletions/browser/utils.js":
/*!*********************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/contrib/inlineCompletions/browser/utils.js ***!
\*********************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ ColumnRange: () => (/* binding */ ColumnRange),\n/* harmony export */ Permutation: () => (/* binding */ Permutation),\n/* harmony export */ addPositions: () => (/* binding */ addPositions),\n/* harmony export */ applyEdits: () => (/* binding */ applyEdits),\n/* harmony export */ applyObservableDecorations: () => (/* binding */ applyObservableDecorations),\n/* harmony export */ getNewRanges: () => (/* binding */ getNewRanges),\n/* harmony export */ getReadonlyEmptyArray: () => (/* binding */ getReadonlyEmptyArray),\n/* harmony export */ lengthOfText: () => (/* binding */ lengthOfText),\n/* harmony export */ subtractPositions: () => (/* binding */ subtractPositions)\n/* harmony export */ });\n/* harmony import */ var _base_common_errors_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../../base/common/errors.js */ \"./node_modules/monaco-editor/esm/vs/base/common/errors.js\");\n/* harmony import */ var _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../base/common/lifecycle.js */ \"./node_modules/monaco-editor/esm/vs/base/common/lifecycle.js\");\n/* harmony import */ var _base_common_observable_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../../base/common/observable.js */ \"./node_modules/monaco-editor/esm/vs/base/common/observable.js\");\n/* harmony import */ var _common_core_position_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../../common/core/position.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/core/position.js\");\n/* harmony import */ var _common_core_range_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../../common/core/range.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/core/range.js\");\n\n\n\n\n\nfunction applyEdits(text, edits) {\n const transformer = new PositionOffsetTransformer(text);\n const offsetEdits = edits.map(e => {\n const range = _common_core_range_js__WEBPACK_IMPORTED_MODULE_4__.Range.lift(e.range);\n return ({\n startOffset: transformer.getOffset(range.getStartPosition()),\n endOffset: transformer.getOffset(range.getEndPosition()),\n text: e.text\n });\n });\n offsetEdits.sort((a, b) => b.startOffset - a.startOffset);\n for (const edit of offsetEdits) {\n text = text.substring(0, edit.startOffset) + edit.text + text.substring(edit.endOffset);\n }\n return text;\n}\nclass PositionOffsetTransformer {\n constructor(text) {\n this.lineStartOffsetByLineIdx = [];\n this.lineStartOffsetByLineIdx.push(0);\n for (let i = 0; i < text.length; i++) {\n if (text.charAt(i) === '\\n') {\n this.lineStartOffsetByLineIdx.push(i + 1);\n }\n }\n }\n getOffset(position) {\n return this.lineStartOffsetByLineIdx[position.lineNumber - 1] + position.column - 1;\n }\n}\nconst array = [];\nfunction getReadonlyEmptyArray() {\n return array;\n}\nclass ColumnRange {\n constructor(startColumn, endColumnExclusive) {\n this.startColumn = startColumn;\n this.endColumnExclusive = endColumnExclusive;\n if (startColumn > endColumnExclusive) {\n throw new _base_common_errors_js__WEBPACK_IMPORTED_MODULE_0__.BugIndicatingError(`startColumn ${startColumn} cannot be after endColumnExclusive ${endColumnExclusive}`);\n }\n }\n toRange(lineNumber) {\n return new _common_core_range_js__WEBPACK_IMPORTED_MODULE_4__.Range(lineNumber, this.startColumn, lineNumber, this.endColumnExclusive);\n }\n equals(other) {\n return this.startColumn === other.startColumn\n && this.endColumnExclusive === other.endColumnExclusive;\n }\n}\nfunction applyObservableDecorations(editor, decorations) {\n const d = new _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_1__.DisposableStore();\n const decorationsCollection = editor.createDecorationsCollection();\n d.add((0,_base_common_observable_js__WEBPACK_IMPORTED_MODULE_2__.autorunOpts)({ debugName: () => `Apply decorations from ${decorations.debugName}` }, reader => {\n const d = decorations.read(reader);\n decorationsCollection.set(d);\n }));\n d.add({\n dispose: () => {\n decorationsCollection.clear();\n }\n });\n return d;\n}\nfunction addPositions(pos1, pos2) {\n return new _common_core_position_js__WEBPACK_IMPORTED_MODULE_3__.Position(pos1.lineNumber + pos2.lineNumber - 1, pos2.lineNumber === 1 ? pos1.column + pos2.column - 1 : pos2.column);\n}\nfunction subtractPositions(pos1, pos2) {\n return new _common_core_position_js__WEBPACK_IMPORTED_MODULE_3__.Position(pos1.lineNumber - pos2.lineNumber + 1, pos1.lineNumber - pos2.lineNumber === 0 ? pos1.column - pos2.column + 1 : pos1.column);\n}\nfunction lengthOfText(text) {\n let line = 1;\n let column = 1;\n for (const c of text) {\n if (c === '\\n') {\n line++;\n column = 1;\n }\n else {\n column++;\n }\n }\n return new _common_core_position_js__WEBPACK_IMPORTED_MODULE_3__.Position(line, column);\n}\n/**\n * Given some text edits, this function finds the new ranges of the editted text post application of all edits.\n * Assumes that the edit ranges are disjoint and they are sorted in the order of the ranges\n * @param edits edits applied\n * @returns new ranges post edits for every edit\n */\nfunction getNewRanges(edits) {\n var _a;\n const newRanges = [];\n let previousEditEndLineNumber = 0;\n let lineOffset = 0;\n let columnOffset = 0;\n for (const edit of edits) {\n const text = (_a = edit.text) !== null && _a !== void 0 ? _a : '';\n const textLength = lengthOfText(text);\n const newRangeStart = _common_core_position_js__WEBPACK_IMPORTED_MODULE_3__.Position.lift({\n lineNumber: edit.range.startLineNumber + lineOffset,\n column: edit.range.startColumn + (edit.range.startLineNumber === previousEditEndLineNumber ? columnOffset : 0)\n });\n const newRangeEnd = addPositions(newRangeStart, textLength);\n newRanges.push(_common_core_range_js__WEBPACK_IMPORTED_MODULE_4__.Range.fromPositions(newRangeStart, newRangeEnd));\n lineOffset += textLength.lineNumber - edit.range.endLineNumber + edit.range.startLineNumber - 1;\n columnOffset = newRangeEnd.column - edit.range.endColumn;\n previousEditEndLineNumber = edit.range.endLineNumber;\n }\n return newRanges;\n}\nclass Permutation {\n constructor(_indexMap) {\n this._indexMap = _indexMap;\n }\n static createSortPermutation(arr, compareFn) {\n const sortIndices = Array.from(arr.keys()).sort((index1, index2) => compareFn(arr[index1], arr[index2]));\n return new Permutation(sortIndices);\n }\n apply(arr) {\n return arr.map((_, index) => arr[this._indexMap[index]]);\n }\n inverse() {\n const inverseIndexMap = this._indexMap.slice();\n for (let i = 0; i < this._indexMap.length; i++) {\n inverseIndexMap[this._indexMap[i]] = i;\n }\n return new Permutation(inverseIndexMap);\n }\n}\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/contrib/inlineCompletions/browser/utils.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/contrib/inlineEdit/browser/commandIds.js":
/*!*******************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/contrib/inlineEdit/browser/commandIds.js ***!
\*******************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ inlineEditAcceptId: () => (/* binding */ inlineEditAcceptId),\n/* harmony export */ inlineEditJumpBackId: () => (/* binding */ inlineEditJumpBackId),\n/* harmony export */ inlineEditJumpToId: () => (/* binding */ inlineEditJumpToId),\n/* harmony export */ inlineEditRejectId: () => (/* binding */ inlineEditRejectId)\n/* harmony export */ });\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\nconst inlineEditAcceptId = 'editor.action.inlineEdit.accept';\nconst inlineEditRejectId = 'editor.action.inlineEdit.reject';\nconst inlineEditJumpToId = 'editor.action.inlineEdit.jumpTo';\nconst inlineEditJumpBackId = 'editor.action.inlineEdit.jumpBack';\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/contrib/inlineEdit/browser/commandIds.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/contrib/inlineEdit/browser/commands.js":
/*!*****************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/contrib/inlineEdit/browser/commands.js ***!
\*****************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ AcceptInlineEdit: () => (/* binding */ AcceptInlineEdit),\n/* harmony export */ JumpBackInlineEdit: () => (/* binding */ JumpBackInlineEdit),\n/* harmony export */ JumpToInlineEdit: () => (/* binding */ JumpToInlineEdit),\n/* harmony export */ RejectInlineEdit: () => (/* binding */ RejectInlineEdit),\n/* harmony export */ TriggerInlineEdit: () => (/* binding */ TriggerInlineEdit)\n/* harmony export */ });\n/* harmony import */ var _browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../browser/editorExtensions.js */ \"./node_modules/monaco-editor/esm/vs/editor/browser/editorExtensions.js\");\n/* harmony import */ var _common_editorContextKeys_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../common/editorContextKeys.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/editorContextKeys.js\");\n/* harmony import */ var _commandIds_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./commandIds.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/inlineEdit/browser/commandIds.js\");\n/* harmony import */ var _inlineEditController_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./inlineEditController.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/inlineEdit/browser/inlineEditController.js\");\n/* harmony import */ var _platform_actions_common_actions_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../../../platform/actions/common/actions.js */ \"./node_modules/monaco-editor/esm/vs/platform/actions/common/actions.js\");\n/* harmony import */ var _platform_contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../../../../platform/contextkey/common/contextkey.js */ \"./node_modules/monaco-editor/esm/vs/platform/contextkey/common/contextkey.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n\n\n\n\n\nclass AcceptInlineEdit extends _browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_0__.EditorAction {\n constructor() {\n super({\n id: _commandIds_js__WEBPACK_IMPORTED_MODULE_2__.inlineEditAcceptId,\n label: 'Accept Inline Edit',\n alias: 'Accept Inline Edit',\n precondition: _platform_contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_5__.ContextKeyExpr.and(_common_editorContextKeys_js__WEBPACK_IMPORTED_MODULE_1__.EditorContextKeys.writable, _inlineEditController_js__WEBPACK_IMPORTED_MODULE_3__.InlineEditController.inlineEditVisibleContext),\n kbOpts: [\n {\n weight: 100 /* KeybindingWeight.EditorContrib */ + 1,\n primary: 2 /* KeyCode.Tab */,\n kbExpr: _platform_contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_5__.ContextKeyExpr.and(_common_editorContextKeys_js__WEBPACK_IMPORTED_MODULE_1__.EditorContextKeys.writable, _inlineEditController_js__WEBPACK_IMPORTED_MODULE_3__.InlineEditController.inlineEditVisibleContext, _inlineEditController_js__WEBPACK_IMPORTED_MODULE_3__.InlineEditController.cursorAtInlineEditContext)\n }\n ],\n menuOpts: [{\n menuId: _platform_actions_common_actions_js__WEBPACK_IMPORTED_MODULE_4__.MenuId.InlineEditToolbar,\n title: 'Accept',\n group: 'primary',\n order: 1,\n }],\n });\n }\n async run(accessor, editor) {\n const controller = _inlineEditController_js__WEBPACK_IMPORTED_MODULE_3__.InlineEditController.get(editor);\n controller === null || controller === void 0 ? void 0 : controller.accept();\n }\n}\nclass TriggerInlineEdit extends _browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_0__.EditorAction {\n constructor() {\n const activeExpr = _platform_contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_5__.ContextKeyExpr.and(_common_editorContextKeys_js__WEBPACK_IMPORTED_MODULE_1__.EditorContextKeys.writable, _platform_contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_5__.ContextKeyExpr.not(_inlineEditController_js__WEBPACK_IMPORTED_MODULE_3__.InlineEditController.inlineEditVisibleKey));\n super({\n id: 'editor.action.inlineEdit.trigger',\n label: 'Trigger Inline Edit',\n alias: 'Trigger Inline Edit',\n precondition: activeExpr,\n kbOpts: {\n weight: 100 /* KeybindingWeight.EditorContrib */ + 1,\n primary: 2048 /* KeyMod.CtrlCmd */ | 512 /* KeyMod.Alt */ | 86 /* KeyCode.Equal */,\n kbExpr: activeExpr\n },\n });\n }\n async run(accessor, editor) {\n const controller = _inlineEditController_js__WEBPACK_IMPORTED_MODULE_3__.InlineEditController.get(editor);\n controller === null || controller === void 0 ? void 0 : controller.trigger();\n }\n}\nclass JumpToInlineEdit extends _browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_0__.EditorAction {\n constructor() {\n const activeExpr = _platform_contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_5__.ContextKeyExpr.and(_common_editorContextKeys_js__WEBPACK_IMPORTED_MODULE_1__.EditorContextKeys.writable, _inlineEditController_js__WEBPACK_IMPORTED_MODULE_3__.InlineEditController.inlineEditVisibleContext, _platform_contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_5__.ContextKeyExpr.not(_inlineEditController_js__WEBPACK_IMPORTED_MODULE_3__.InlineEditController.cursorAtInlineEditKey));\n super({\n id: _commandIds_js__WEBPACK_IMPORTED_MODULE_2__.inlineEditJumpToId,\n label: 'Jump to Inline Edit',\n alias: 'Jump to Inline Edit',\n precondition: activeExpr,\n kbOpts: {\n weight: 100 /* KeybindingWeight.EditorContrib */ + 1,\n primary: 2048 /* KeyMod.CtrlCmd */ | 512 /* KeyMod.Alt */ | 86 /* KeyCode.Equal */,\n kbExpr: activeExpr\n },\n menuOpts: [{\n menuId: _platform_actions_common_actions_js__WEBPACK_IMPORTED_MODULE_4__.MenuId.InlineEditToolbar,\n title: 'Jump To Edit',\n group: 'primary',\n order: 3,\n when: activeExpr\n }],\n });\n }\n async run(accessor, editor) {\n const controller = _inlineEditController_js__WEBPACK_IMPORTED_MODULE_3__.InlineEditController.get(editor);\n controller === null || controller === void 0 ? void 0 : controller.jumpToCurrent();\n }\n}\nclass JumpBackInlineEdit extends _browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_0__.EditorAction {\n constructor() {\n const activeExpr = _platform_contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_5__.ContextKeyExpr.and(_common_editorContextKeys_js__WEBPACK_IMPORTED_MODULE_1__.EditorContextKeys.writable, _inlineEditController_js__WEBPACK_IMPORTED_MODULE_3__.InlineEditController.cursorAtInlineEditContext);\n super({\n id: _commandIds_js__WEBPACK_IMPORTED_MODULE_2__.inlineEditJumpBackId,\n label: 'Jump Back from Inline Edit',\n alias: 'Jump Back from Inline Edit',\n precondition: activeExpr,\n kbOpts: {\n weight: 100 /* KeybindingWeight.EditorContrib */ + 10,\n primary: 2048 /* KeyMod.CtrlCmd */ | 512 /* KeyMod.Alt */ | 86 /* KeyCode.Equal */,\n kbExpr: activeExpr\n },\n menuOpts: [{\n menuId: _platform_actions_common_actions_js__WEBPACK_IMPORTED_MODULE_4__.MenuId.InlineEditToolbar,\n title: 'Jump Back',\n group: 'primary',\n order: 3,\n when: activeExpr\n }],\n });\n }\n async run(accessor, editor) {\n const controller = _inlineEditController_js__WEBPACK_IMPORTED_MODULE_3__.InlineEditController.get(editor);\n controller === null || controller === void 0 ? void 0 : controller.jumpBack();\n }\n}\nclass RejectInlineEdit extends _browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_0__.EditorAction {\n constructor() {\n const activeExpr = _platform_contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_5__.ContextKeyExpr.and(_common_editorContextKeys_js__WEBPACK_IMPORTED_MODULE_1__.EditorContextKeys.writable, _inlineEditController_js__WEBPACK_IMPORTED_MODULE_3__.InlineEditController.inlineEditVisibleContext);\n super({\n id: _commandIds_js__WEBPACK_IMPORTED_MODULE_2__.inlineEditRejectId,\n label: 'Reject Inline Edit',\n alias: 'Reject Inline Edit',\n precondition: activeExpr,\n kbOpts: {\n weight: 100 /* KeybindingWeight.EditorContrib */,\n primary: 9 /* KeyCode.Escape */,\n kbExpr: activeExpr\n },\n menuOpts: [{\n menuId: _platform_actions_common_actions_js__WEBPACK_IMPORTED_MODULE_4__.MenuId.InlineEditToolbar,\n title: 'Reject',\n group: 'secondary',\n order: 2,\n }],\n });\n }\n async run(accessor, editor) {\n const controller = _inlineEditController_js__WEBPACK_IMPORTED_MODULE_3__.InlineEditController.get(editor);\n controller === null || controller === void 0 ? void 0 : controller.clear();\n }\n}\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/contrib/inlineEdit/browser/commands.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/contrib/inlineEdit/browser/ghostTextWidget.js":
/*!************************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/contrib/inlineEdit/browser/ghostTextWidget.js ***!
\************************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ GhostTextWidget: () => (/* binding */ GhostTextWidget),\n/* harmony export */ INLINE_EDIT_DESCRIPTION: () => (/* binding */ INLINE_EDIT_DESCRIPTION)\n/* harmony export */ });\n/* harmony import */ var _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../../base/common/lifecycle.js */ \"./node_modules/monaco-editor/esm/vs/base/common/lifecycle.js\");\n/* harmony import */ var _base_common_observable_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../base/common/observable.js */ \"./node_modules/monaco-editor/esm/vs/base/common/observable.js\");\n/* harmony import */ var _inlineEdit_css__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./inlineEdit.css */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/inlineEdit/browser/inlineEdit.css\");\n/* harmony import */ var _common_core_position_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../../common/core/position.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/core/position.js\");\n/* harmony import */ var _common_core_range_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../../common/core/range.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/core/range.js\");\n/* harmony import */ var _common_languages_language_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../../../common/languages/language.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/languages/language.js\");\n/* harmony import */ var _common_model_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../../../common/model.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/model.js\");\n/* harmony import */ var _common_viewLayout_lineDecorations_js__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ../../../common/viewLayout/lineDecorations.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/viewLayout/lineDecorations.js\");\n/* harmony import */ var _inlineCompletions_browser_ghostTextWidget_js__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ../../inlineCompletions/browser/ghostTextWidget.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/inlineCompletions/browser/ghostTextWidget.js\");\n/* harmony import */ var _inlineCompletions_browser_utils_js__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ../../inlineCompletions/browser/utils.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/inlineCompletions/browser/utils.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\nvar __decorate = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\n return c > 3 && r && Object.defineProperty(target, key, r), r;\n};\nvar __param = (undefined && undefined.__param) || function (paramIndex, decorator) {\n return function (target, key) { decorator(target, key, paramIndex); }\n};\n\n\n\n\n\n\n\n\n\n\nconst INLINE_EDIT_DESCRIPTION = 'inline-edit';\nlet GhostTextWidget = class GhostTextWidget extends _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_0__.Disposable {\n constructor(editor, model, languageService) {\n super();\n this.editor = editor;\n this.model = model;\n this.languageService = languageService;\n this.isDisposed = (0,_base_common_observable_js__WEBPACK_IMPORTED_MODULE_1__.observableValue)(this, false);\n this.currentTextModel = (0,_base_common_observable_js__WEBPACK_IMPORTED_MODULE_1__.observableFromEvent)(this.editor.onDidChangeModel, () => /** @description editor.model */ this.editor.getModel());\n this.uiState = (0,_base_common_observable_js__WEBPACK_IMPORTED_MODULE_1__.derived)(this, reader => {\n var _a;\n if (this.isDisposed.read(reader)) {\n return undefined;\n }\n const textModel = this.currentTextModel.read(reader);\n if (textModel !== this.model.targetTextModel.read(reader)) {\n return undefined;\n }\n const ghostText = this.model.ghostText.read(reader);\n if (!ghostText) {\n return undefined;\n }\n let range = (_a = this.model.range) === null || _a === void 0 ? void 0 : _a.read(reader);\n //if range is empty, we want to remove it\n if (range && range.startLineNumber === range.endLineNumber && range.startColumn === range.endColumn) {\n range = undefined;\n }\n //check if both range and text are single line - in this case we want to do inline replacement\n //rather than replacing whole lines\n const isSingleLine = (range ? range.startLineNumber === range.endLineNumber : true) && ghostText.parts.length === 1 && ghostText.parts[0].lines.length === 1;\n //check if we're just removing code\n const isPureRemove = ghostText.parts.length === 1 && ghostText.parts[0].lines.every(l => l.length === 0);\n const inlineTexts = [];\n const additionalLines = [];\n function addToAdditionalLines(lines, className) {\n if (additionalLines.length > 0) {\n const lastLine = additionalLines[additionalLines.length - 1];\n if (className) {\n lastLine.decorations.push(new _common_viewLayout_lineDecorations_js__WEBPACK_IMPORTED_MODULE_7__.LineDecoration(lastLine.content.length + 1, lastLine.content.length + 1 + lines[0].length, className, 0 /* InlineDecorationType.Regular */));\n }\n lastLine.content += lines[0];\n lines = lines.slice(1);\n }\n for (const line of lines) {\n additionalLines.push({\n content: line,\n decorations: className ? [new _common_viewLayout_lineDecorations_js__WEBPACK_IMPORTED_MODULE_7__.LineDecoration(1, line.length + 1, className, 0 /* InlineDecorationType.Regular */)] : []\n });\n }\n }\n const textBufferLine = textModel.getLineContent(ghostText.lineNumber);\n let hiddenTextStartColumn = undefined;\n let lastIdx = 0;\n if (!isPureRemove) {\n for (const part of ghostText.parts) {\n let lines = part.lines;\n //If remove range is set, we want to push all new liens to virtual area\n if (range && !isSingleLine) {\n addToAdditionalLines(lines, INLINE_EDIT_DESCRIPTION);\n lines = [];\n }\n if (hiddenTextStartColumn === undefined) {\n inlineTexts.push({\n column: part.column,\n text: lines[0],\n preview: part.preview,\n });\n lines = lines.slice(1);\n }\n else {\n addToAdditionalLines([textBufferLine.substring(lastIdx, part.column - 1)], undefined);\n }\n if (lines.length > 0) {\n addToAdditionalLines(lines, INLINE_EDIT_DESCRIPTION);\n if (hiddenTextStartColumn === undefined && part.column <= textBufferLine.length) {\n hiddenTextStartColumn = part.column;\n }\n }\n lastIdx = part.column - 1;\n }\n if (hiddenTextStartColumn !== undefined) {\n addToAdditionalLines([textBufferLine.substring(lastIdx)], undefined);\n }\n }\n const hiddenRange = hiddenTextStartColumn !== undefined ? new _inlineCompletions_browser_utils_js__WEBPACK_IMPORTED_MODULE_9__.ColumnRange(hiddenTextStartColumn, textBufferLine.length + 1) : undefined;\n const lineNumber = (isSingleLine || !range) ? ghostText.lineNumber : range.endLineNumber - 1;\n return {\n inlineTexts,\n additionalLines,\n hiddenRange,\n lineNumber,\n additionalReservedLineCount: this.model.minReservedLineCount.read(reader),\n targetTextModel: textModel,\n range,\n isSingleLine,\n isPureRemove,\n backgroundColoring: this.model.backgroundColoring.read(reader)\n };\n });\n this.decorations = (0,_base_common_observable_js__WEBPACK_IMPORTED_MODULE_1__.derived)(this, reader => {\n const uiState = this.uiState.read(reader);\n if (!uiState) {\n return [];\n }\n const decorations = [];\n if (uiState.hiddenRange) {\n decorations.push({\n range: uiState.hiddenRange.toRange(uiState.lineNumber),\n options: { inlineClassName: 'inline-edit-hidden', description: 'inline-edit-hidden', }\n });\n }\n if (uiState.range) {\n const ranges = [];\n if (uiState.isSingleLine) {\n ranges.push(uiState.range);\n }\n else if (uiState.isPureRemove) {\n const lines = uiState.range.endLineNumber - uiState.range.startLineNumber;\n for (let i = 0; i < lines; i++) {\n const line = uiState.range.startLineNumber + i;\n const firstNonWhitespace = uiState.targetTextModel.getLineFirstNonWhitespaceColumn(line);\n const lastNonWhitespace = uiState.targetTextModel.getLineLastNonWhitespaceColumn(line);\n const range = new _common_core_range_js__WEBPACK_IMPORTED_MODULE_4__.Range(line, firstNonWhitespace, line, lastNonWhitespace);\n ranges.push(range);\n }\n }\n else {\n const lines = uiState.range.endLineNumber - uiState.range.startLineNumber;\n for (let i = 0; i <= lines; i++) {\n const line = uiState.range.startLineNumber + i;\n const firstNonWhitespace = uiState.targetTextModel.getLineFirstNonWhitespaceColumn(line);\n const lastNonWhitespace = uiState.targetTextModel.getLineLastNonWhitespaceColumn(line);\n const range = new _common_core_range_js__WEBPACK_IMPORTED_MODULE_4__.Range(line, firstNonWhitespace, line, lastNonWhitespace);\n ranges.push(range);\n }\n }\n const className = uiState.backgroundColoring ? 'inline-edit-remove backgroundColoring' : 'inline-edit-remove';\n for (const range of ranges) {\n decorations.push({\n range,\n options: { inlineClassName: className, description: 'inline-edit-remove', }\n });\n }\n }\n for (const p of uiState.inlineTexts) {\n decorations.push({\n range: _common_core_range_js__WEBPACK_IMPORTED_MODULE_4__.Range.fromPositions(new _common_core_position_js__WEBPACK_IMPORTED_MODULE_3__.Position(uiState.lineNumber, p.column)),\n options: {\n description: INLINE_EDIT_DESCRIPTION,\n after: { content: p.text, inlineClassName: p.preview ? 'inline-edit-decoration-preview' : 'inline-edit-decoration', cursorStops: _common_model_js__WEBPACK_IMPORTED_MODULE_6__.InjectedTextCursorStops.Left },\n showIfCollapsed: true,\n }\n });\n }\n return decorations;\n });\n this.additionalLinesWidget = this._register(new _inlineCompletions_browser_ghostTextWidget_js__WEBPACK_IMPORTED_MODULE_8__.AdditionalLinesWidget(this.editor, this.languageService.languageIdCodec, (0,_base_common_observable_js__WEBPACK_IMPORTED_MODULE_1__.derived)(reader => {\n /** @description lines */\n const uiState = this.uiState.read(reader);\n return uiState && !uiState.isPureRemove ? {\n lineNumber: uiState.lineNumber,\n additionalLines: uiState.additionalLines,\n minReservedLineCount: uiState.additionalReservedLineCount,\n targetTextModel: uiState.targetTextModel,\n } : undefined;\n })));\n this._register((0,_base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_0__.toDisposable)(() => { this.isDisposed.set(true, undefined); }));\n this._register((0,_inlineCompletions_browser_utils_js__WEBPACK_IMPORTED_MODULE_9__.applyObservableDecorations)(this.editor, this.decorations));\n }\n ownsViewZone(viewZoneId) {\n return this.additionalLinesWidget.viewZoneId === viewZoneId;\n }\n};\nGhostTextWidget = __decorate([\n __param(2, _common_languages_language_js__WEBPACK_IMPORTED_MODULE_5__.ILanguageService)\n], GhostTextWidget);\n\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/contrib/inlineEdit/browser/ghostTextWidget.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/contrib/inlineEdit/browser/hoverParticipant.js":
/*!*************************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/contrib/inlineEdit/browser/hoverParticipant.js ***!
\*************************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ InlineEditHover: () => (/* binding */ InlineEditHover),\n/* harmony export */ InlineEditHoverParticipant: () => (/* binding */ InlineEditHoverParticipant)\n/* harmony export */ });\n/* harmony import */ var _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../../base/common/lifecycle.js */ \"./node_modules/monaco-editor/esm/vs/base/common/lifecycle.js\");\n/* harmony import */ var _base_common_observable_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../base/common/observable.js */ \"./node_modules/monaco-editor/esm/vs/base/common/observable.js\");\n/* harmony import */ var _hover_browser_hoverTypes_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../hover/browser/hoverTypes.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/hover/browser/hoverTypes.js\");\n/* harmony import */ var _platform_instantiation_common_instantiation_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../../../platform/instantiation/common/instantiation.js */ \"./node_modules/monaco-editor/esm/vs/platform/instantiation/common/instantiation.js\");\n/* harmony import */ var _platform_telemetry_common_telemetry_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../../../platform/telemetry/common/telemetry.js */ \"./node_modules/monaco-editor/esm/vs/platform/telemetry/common/telemetry.js\");\n/* harmony import */ var _inlineEditController_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./inlineEditController.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/inlineEdit/browser/inlineEditController.js\");\n/* harmony import */ var _inlineEditHintsWidget_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ./inlineEditHintsWidget.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/inlineEdit/browser/inlineEditHintsWidget.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\nvar __decorate = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\n return c > 3 && r && Object.defineProperty(target, key, r), r;\n};\nvar __param = (undefined && undefined.__param) || function (paramIndex, decorator) {\n return function (target, key) { decorator(target, key, paramIndex); }\n};\n\n\n\n\n\n\n\nclass InlineEditHover {\n constructor(owner, range, controller) {\n this.owner = owner;\n this.range = range;\n this.controller = controller;\n }\n isValidForHoverAnchor(anchor) {\n return (anchor.type === 1 /* HoverAnchorType.Range */\n && this.range.startColumn <= anchor.range.startColumn\n && this.range.endColumn >= anchor.range.endColumn);\n }\n}\nlet InlineEditHoverParticipant = class InlineEditHoverParticipant {\n constructor(_editor, _instantiationService, _telemetryService) {\n this._editor = _editor;\n this._instantiationService = _instantiationService;\n this._telemetryService = _telemetryService;\n this.hoverOrdinal = 5;\n }\n suggestHoverAnchor(mouseEvent) {\n const controller = _inlineEditController_js__WEBPACK_IMPORTED_MODULE_5__.InlineEditController.get(this._editor);\n if (!controller) {\n return null;\n }\n const target = mouseEvent.target;\n if (target.type === 8 /* MouseTargetType.CONTENT_VIEW_ZONE */) {\n // handle the case where the mouse is over the view zone\n const viewZoneData = target.detail;\n if (controller.shouldShowHoverAtViewZone(viewZoneData.viewZoneId)) {\n // const range = Range.fromPositions(this._editor.getModel()!.validatePosition(viewZoneData.positionBefore || viewZoneData.position));\n const range = target.range;\n return new _hover_browser_hoverTypes_js__WEBPACK_IMPORTED_MODULE_2__.HoverForeignElementAnchor(1000, this, range, mouseEvent.event.posx, mouseEvent.event.posy, false);\n }\n }\n if (target.type === 7 /* MouseTargetType.CONTENT_EMPTY */) {\n // handle the case where the mouse is over the empty portion of a line following ghost text\n if (controller.shouldShowHoverAt(target.range)) {\n return new _hover_browser_hoverTypes_js__WEBPACK_IMPORTED_MODULE_2__.HoverForeignElementAnchor(1000, this, target.range, mouseEvent.event.posx, mouseEvent.event.posy, false);\n }\n }\n if (target.type === 6 /* MouseTargetType.CONTENT_TEXT */) {\n // handle the case where the mouse is directly over ghost text\n const mightBeForeignElement = target.detail.mightBeForeignElement;\n if (mightBeForeignElement && controller.shouldShowHoverAt(target.range)) {\n return new _hover_browser_hoverTypes_js__WEBPACK_IMPORTED_MODULE_2__.HoverForeignElementAnchor(1000, this, target.range, mouseEvent.event.posx, mouseEvent.event.posy, false);\n }\n }\n return null;\n }\n computeSync(anchor, lineDecorations) {\n if (this._editor.getOption(63 /* EditorOption.inlineEdit */).showToolbar !== 'onHover') {\n return [];\n }\n const controller = _inlineEditController_js__WEBPACK_IMPORTED_MODULE_5__.InlineEditController.get(this._editor);\n if (controller && controller.shouldShowHoverAt(anchor.range)) {\n return [new InlineEditHover(this, anchor.range, controller)];\n }\n return [];\n }\n renderHoverParts(context, hoverParts) {\n const disposableStore = new _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_0__.DisposableStore();\n this._telemetryService.publicLog2('inlineEditHover.shown');\n const w = this._instantiationService.createInstance(_inlineEditHintsWidget_js__WEBPACK_IMPORTED_MODULE_6__.InlineEditHintsContentWidget, this._editor, false, (0,_base_common_observable_js__WEBPACK_IMPORTED_MODULE_1__.constObservable)(null));\n context.fragment.appendChild(w.getDomNode());\n disposableStore.add(w);\n return disposableStore;\n }\n};\nInlineEditHoverParticipant = __decorate([\n __param(1, _platform_instantiation_common_instantiation_js__WEBPACK_IMPORTED_MODULE_3__.IInstantiationService),\n __param(2, _platform_telemetry_common_telemetry_js__WEBPACK_IMPORTED_MODULE_4__.ITelemetryService)\n], InlineEditHoverParticipant);\n\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/contrib/inlineEdit/browser/hoverParticipant.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/contrib/inlineEdit/browser/inlineEdit.contribution.js":
/*!********************************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/contrib/inlineEdit/browser/inlineEdit.contribution.js ***!
\********************************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var _browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../browser/editorExtensions.js */ \"./node_modules/monaco-editor/esm/vs/editor/browser/editorExtensions.js\");\n/* harmony import */ var _hover_browser_hoverTypes_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../hover/browser/hoverTypes.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/hover/browser/hoverTypes.js\");\n/* harmony import */ var _commands_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./commands.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/inlineEdit/browser/commands.js\");\n/* harmony import */ var _hoverParticipant_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./hoverParticipant.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/inlineEdit/browser/hoverParticipant.js\");\n/* harmony import */ var _inlineEditController_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./inlineEditController.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/inlineEdit/browser/inlineEditController.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n\n\n\n\n(0,_browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_0__.registerEditorAction)(_commands_js__WEBPACK_IMPORTED_MODULE_2__.AcceptInlineEdit);\n(0,_browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_0__.registerEditorAction)(_commands_js__WEBPACK_IMPORTED_MODULE_2__.RejectInlineEdit);\n(0,_browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_0__.registerEditorAction)(_commands_js__WEBPACK_IMPORTED_MODULE_2__.JumpToInlineEdit);\n(0,_browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_0__.registerEditorAction)(_commands_js__WEBPACK_IMPORTED_MODULE_2__.JumpBackInlineEdit);\n(0,_browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_0__.registerEditorAction)(_commands_js__WEBPACK_IMPORTED_MODULE_2__.TriggerInlineEdit);\n(0,_browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_0__.registerEditorContribution)(_inlineEditController_js__WEBPACK_IMPORTED_MODULE_4__.InlineEditController.ID, _inlineEditController_js__WEBPACK_IMPORTED_MODULE_4__.InlineEditController, 3 /* EditorContributionInstantiation.Eventually */);\n_hover_browser_hoverTypes_js__WEBPACK_IMPORTED_MODULE_1__.HoverParticipantRegistry.register(_hoverParticipant_js__WEBPACK_IMPORTED_MODULE_3__.InlineEditHoverParticipant);\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/contrib/inlineEdit/browser/inlineEdit.contribution.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/contrib/inlineEdit/browser/inlineEditController.js":
/*!*****************************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/contrib/inlineEdit/browser/inlineEditController.js ***!
\*****************************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ InlineEditController: () => (/* binding */ InlineEditController),\n/* harmony export */ InlineEditWidget: () => (/* binding */ InlineEditWidget)\n/* harmony export */ });\n/* harmony import */ var _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../../base/common/lifecycle.js */ \"./node_modules/monaco-editor/esm/vs/base/common/lifecycle.js\");\n/* harmony import */ var _base_common_observable_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../base/common/observable.js */ \"./node_modules/monaco-editor/esm/vs/base/common/observable.js\");\n/* harmony import */ var _common_core_editOperation_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../common/core/editOperation.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/core/editOperation.js\");\n/* harmony import */ var _common_core_position_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../../common/core/position.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/core/position.js\");\n/* harmony import */ var _common_core_range_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../../common/core/range.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/core/range.js\");\n/* harmony import */ var _ghostTextWidget_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./ghostTextWidget.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/inlineEdit/browser/ghostTextWidget.js\");\n/* harmony import */ var _platform_contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../../../../platform/contextkey/common/contextkey.js */ \"./node_modules/monaco-editor/esm/vs/platform/contextkey/common/contextkey.js\");\n/* harmony import */ var _platform_instantiation_common_instantiation_js__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ../../../../platform/instantiation/common/instantiation.js */ \"./node_modules/monaco-editor/esm/vs/platform/instantiation/common/instantiation.js\");\n/* harmony import */ var _common_languages_js__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ../../../common/languages.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/languages.js\");\n/* harmony import */ var _common_services_languageFeatures_js__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ../../../common/services/languageFeatures.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/services/languageFeatures.js\");\n/* harmony import */ var _base_common_cancellation_js__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! ../../../../base/common/cancellation.js */ \"./node_modules/monaco-editor/esm/vs/base/common/cancellation.js\");\n/* harmony import */ var _inlineCompletions_browser_ghostText_js__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(/*! ../../inlineCompletions/browser/ghostText.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/inlineCompletions/browser/ghostText.js\");\n/* harmony import */ var _platform_commands_common_commands_js__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(/*! ../../../../platform/commands/common/commands.js */ \"./node_modules/monaco-editor/esm/vs/platform/commands/common/commands.js\");\n/* harmony import */ var _inlineEditHintsWidget_js__WEBPACK_IMPORTED_MODULE_13__ = __webpack_require__(/*! ./inlineEditHintsWidget.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/inlineEdit/browser/inlineEditHintsWidget.js\");\n/* harmony import */ var _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_14__ = __webpack_require__(/*! ../../../../base/browser/dom.js */ \"./node_modules/monaco-editor/esm/vs/base/browser/dom.js\");\n/* harmony import */ var _platform_configuration_common_configuration_js__WEBPACK_IMPORTED_MODULE_15__ = __webpack_require__(/*! ../../../../platform/configuration/common/configuration.js */ \"./node_modules/monaco-editor/esm/vs/platform/configuration/common/configuration.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\nvar __decorate = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\n return c > 3 && r && Object.defineProperty(target, key, r), r;\n};\nvar __param = (undefined && undefined.__param) || function (paramIndex, decorator) {\n return function (target, key) { decorator(target, key, paramIndex); }\n};\nvar InlineEditController_1;\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nclass InlineEditWidget {\n constructor(widget, edit) {\n this.widget = widget;\n this.edit = edit;\n }\n dispose() {\n this.widget.dispose();\n }\n}\nlet InlineEditController = InlineEditController_1 = class InlineEditController extends _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_0__.Disposable {\n static get(editor) {\n return editor.getContribution(InlineEditController_1.ID);\n }\n constructor(editor, instantiationService, contextKeyService, languageFeaturesService, _commandService, _configurationService) {\n super();\n this.editor = editor;\n this.instantiationService = instantiationService;\n this.contextKeyService = contextKeyService;\n this.languageFeaturesService = languageFeaturesService;\n this._commandService = _commandService;\n this._configurationService = _configurationService;\n this._isVisibleContext = InlineEditController_1.inlineEditVisibleContext.bindTo(this.contextKeyService);\n this._isCursorAtInlineEditContext = InlineEditController_1.cursorAtInlineEditContext.bindTo(this.contextKeyService);\n this._currentEdit = this._register((0,_base_common_observable_js__WEBPACK_IMPORTED_MODULE_1__.disposableObservableValue)(this, undefined));\n this._isAccepting = false;\n this._enabled = (0,_base_common_observable_js__WEBPACK_IMPORTED_MODULE_1__.observableFromEvent)(this.editor.onDidChangeConfiguration, () => this.editor.getOption(63 /* EditorOption.inlineEdit */).enabled);\n this._fontFamily = (0,_base_common_observable_js__WEBPACK_IMPORTED_MODULE_1__.observableFromEvent)(this.editor.onDidChangeConfiguration, () => this.editor.getOption(63 /* EditorOption.inlineEdit */).fontFamily);\n this._backgroundColoring = (0,_base_common_observable_js__WEBPACK_IMPORTED_MODULE_1__.observableFromEvent)(this.editor.onDidChangeConfiguration, () => this.editor.getOption(63 /* EditorOption.inlineEdit */).backgroundColoring);\n //Automatically request inline edit when the content was changed\n //Cancel the previous request if there is one\n //Remove the previous ghost text\n const modelChangedSignal = (0,_base_common_observable_js__WEBPACK_IMPORTED_MODULE_1__.observableSignalFromEvent)('InlineEditController.modelContentChangedSignal', editor.onDidChangeModelContent);\n this._register((0,_base_common_observable_js__WEBPACK_IMPORTED_MODULE_1__.autorun)(reader => {\n /** @description InlineEditController.modelContentChanged model */\n if (!this._enabled.read(reader)) {\n return;\n }\n modelChangedSignal.read(reader);\n this.getInlineEdit(editor, true);\n }));\n //Check if the cursor is at the ghost text\n const cursorPosition = (0,_base_common_observable_js__WEBPACK_IMPORTED_MODULE_1__.observableFromEvent)(editor.onDidChangeCursorPosition, () => editor.getPosition());\n this._register((0,_base_common_observable_js__WEBPACK_IMPORTED_MODULE_1__.autorun)(reader => {\n /** @description InlineEditController.cursorPositionChanged model */\n if (!this._enabled.read(reader)) {\n return;\n }\n const pos = cursorPosition.read(reader);\n if (pos) {\n this.checkCursorPosition(pos);\n }\n }));\n //Perform stuff when the current edit has changed\n this._register((0,_base_common_observable_js__WEBPACK_IMPORTED_MODULE_1__.autorun)((reader) => {\n /** @description InlineEditController.update model */\n const currentEdit = this._currentEdit.read(reader);\n this._isCursorAtInlineEditContext.set(false);\n if (!currentEdit) {\n this._isVisibleContext.set(false);\n return;\n }\n this._isVisibleContext.set(true);\n const pos = editor.getPosition();\n if (pos) {\n this.checkCursorPosition(pos);\n }\n }));\n //Clear suggestions on lost focus\n const editorBlurSingal = (0,_base_common_observable_js__WEBPACK_IMPORTED_MODULE_1__.observableSignalFromEvent)('InlineEditController.editorBlurSignal', editor.onDidBlurEditorWidget);\n this._register((0,_base_common_observable_js__WEBPACK_IMPORTED_MODULE_1__.autorun)(reader => {\n var _a;\n /** @description InlineEditController.editorBlur */\n if (!this._enabled.read(reader)) {\n return;\n }\n editorBlurSingal.read(reader);\n // This is a hidden setting very useful for debugging\n if (this._configurationService.getValue('editor.experimentalInlineEdit.keepOnBlur') || editor.getOption(63 /* EditorOption.inlineEdit */).keepOnBlur) {\n return;\n }\n (_a = this._currentRequestCts) === null || _a === void 0 ? void 0 : _a.dispose();\n this._currentRequestCts = undefined;\n this.clear(false);\n }));\n //Invoke provider on focus\n const editorFocusSignal = (0,_base_common_observable_js__WEBPACK_IMPORTED_MODULE_1__.observableSignalFromEvent)('InlineEditController.editorFocusSignal', editor.onDidFocusEditorText);\n this._register((0,_base_common_observable_js__WEBPACK_IMPORTED_MODULE_1__.autorun)(reader => {\n /** @description InlineEditController.editorFocus */\n if (!this._enabled.read(reader)) {\n return;\n }\n editorFocusSignal.read(reader);\n this.getInlineEdit(editor, true);\n }));\n //handle changes of font setting\n const styleElement = this._register((0,_base_browser_dom_js__WEBPACK_IMPORTED_MODULE_14__.createStyleSheet2)());\n this._register((0,_base_common_observable_js__WEBPACK_IMPORTED_MODULE_1__.autorun)(reader => {\n const fontFamily = this._fontFamily.read(reader);\n styleElement.setStyle(fontFamily === '' || fontFamily === 'default' ? `` : `\n.monaco-editor .inline-edit-decoration,\n.monaco-editor .inline-edit-decoration-preview,\n.monaco-editor .inline-edit {\n\tfont-family: ${fontFamily};\n}`);\n }));\n this._register(new _inlineEditHintsWidget_js__WEBPACK_IMPORTED_MODULE_13__.InlineEditHintsWidget(this.editor, this._currentEdit, this.instantiationService));\n }\n checkCursorPosition(position) {\n var _a;\n if (!this._currentEdit) {\n this._isCursorAtInlineEditContext.set(false);\n return;\n }\n const gt = (_a = this._currentEdit.get()) === null || _a === void 0 ? void 0 : _a.edit;\n if (!gt) {\n this._isCursorAtInlineEditContext.set(false);\n return;\n }\n this._isCursorAtInlineEditContext.set(_common_core_range_js__WEBPACK_IMPORTED_MODULE_4__.Range.containsPosition(gt.range, position));\n }\n validateInlineEdit(editor, edit) {\n var _a, _b;\n //Multiline inline replacing edit must replace whole lines\n if (edit.text.includes('\\n') && edit.range.startLineNumber !== edit.range.endLineNumber && edit.range.startColumn !== edit.range.endColumn) {\n const firstColumn = edit.range.startColumn;\n if (firstColumn !== 1) {\n return false;\n }\n const lastLine = edit.range.endLineNumber;\n const lastColumn = edit.range.endColumn;\n const lineLength = (_b = (_a = editor.getModel()) === null || _a === void 0 ? void 0 : _a.getLineLength(lastLine)) !== null && _b !== void 0 ? _b : 0;\n if (lastColumn !== lineLength + 1) {\n return false;\n }\n }\n return true;\n }\n async fetchInlineEdit(editor, auto) {\n if (this._currentRequestCts) {\n this._currentRequestCts.dispose(true);\n }\n const model = editor.getModel();\n if (!model) {\n return;\n }\n const modelVersion = model.getVersionId();\n const providers = this.languageFeaturesService.inlineEditProvider.all(model);\n if (providers.length === 0) {\n return;\n }\n const provider = providers[0];\n this._currentRequestCts = new _base_common_cancellation_js__WEBPACK_IMPORTED_MODULE_10__.CancellationTokenSource();\n const token = this._currentRequestCts.token;\n const triggerKind = auto ? _common_languages_js__WEBPACK_IMPORTED_MODULE_8__.InlineEditTriggerKind.Automatic : _common_languages_js__WEBPACK_IMPORTED_MODULE_8__.InlineEditTriggerKind.Invoke;\n const shouldDebounce = auto;\n if (shouldDebounce) {\n await wait(50, token);\n }\n if (token.isCancellationRequested || model.isDisposed() || model.getVersionId() !== modelVersion) {\n return;\n }\n const edit = await provider.provideInlineEdit(model, { triggerKind }, token);\n if (!edit) {\n return;\n }\n if (token.isCancellationRequested || model.isDisposed() || model.getVersionId() !== modelVersion) {\n return;\n }\n if (!this.validateInlineEdit(editor, edit)) {\n return;\n }\n return edit;\n }\n async getInlineEdit(editor, auto) {\n var _a;\n this._isCursorAtInlineEditContext.set(false);\n this.clear();\n this._isAccepting = false;\n const edit = await this.fetchInlineEdit(editor, auto);\n if (!edit) {\n return;\n }\n const line = edit.range.endLineNumber;\n const column = edit.range.endColumn;\n const ghostText = new _inlineCompletions_browser_ghostText_js__WEBPACK_IMPORTED_MODULE_11__.GhostText(line, [new _inlineCompletions_browser_ghostText_js__WEBPACK_IMPORTED_MODULE_11__.GhostTextPart(column, edit.text, false)]);\n const instance = this.instantiationService.createInstance(_ghostTextWidget_js__WEBPACK_IMPORTED_MODULE_5__.GhostTextWidget, this.editor, {\n ghostText: (0,_base_common_observable_js__WEBPACK_IMPORTED_MODULE_1__.constObservable)(ghostText),\n minReservedLineCount: (0,_base_common_observable_js__WEBPACK_IMPORTED_MODULE_1__.constObservable)(0),\n targetTextModel: (0,_base_common_observable_js__WEBPACK_IMPORTED_MODULE_1__.constObservable)((_a = this.editor.getModel()) !== null && _a !== void 0 ? _a : undefined),\n range: (0,_base_common_observable_js__WEBPACK_IMPORTED_MODULE_1__.constObservable)(edit.range),\n backgroundColoring: this._backgroundColoring\n });\n this._currentEdit.set(new InlineEditWidget(instance, edit), undefined);\n }\n async trigger() {\n await this.getInlineEdit(this.editor, false);\n }\n async jumpBack() {\n if (!this._jumpBackPosition) {\n return;\n }\n this.editor.setPosition(this._jumpBackPosition);\n //if position is outside viewports, scroll to it\n this.editor.revealPositionInCenterIfOutsideViewport(this._jumpBackPosition);\n }\n accept() {\n var _a;\n this._isAccepting = true;\n const data = (_a = this._currentEdit.get()) === null || _a === void 0 ? void 0 : _a.edit;\n if (!data) {\n return;\n }\n //It should only happen in case of last line suggestion\n let text = data.text;\n if (data.text.startsWith('\\n')) {\n text = data.text.substring(1);\n }\n this.editor.pushUndoStop();\n this.editor.executeEdits('acceptCurrent', [_common_core_editOperation_js__WEBPACK_IMPORTED_MODULE_2__.EditOperation.replace(_common_core_range_js__WEBPACK_IMPORTED_MODULE_4__.Range.lift(data.range), text)]);\n if (data.accepted) {\n this._commandService.executeCommand(data.accepted.id, ...data.accepted.arguments || []);\n }\n this.freeEdit(data);\n this._currentEdit.set(undefined, undefined);\n }\n jumpToCurrent() {\n var _a, _b;\n this._jumpBackPosition = (_a = this.editor.getSelection()) === null || _a === void 0 ? void 0 : _a.getStartPosition();\n const data = (_b = this._currentEdit.get()) === null || _b === void 0 ? void 0 : _b.edit;\n if (!data) {\n return;\n }\n const position = _common_core_position_js__WEBPACK_IMPORTED_MODULE_3__.Position.lift({ lineNumber: data.range.startLineNumber, column: data.range.startColumn });\n this.editor.setPosition(position);\n //if position is outside viewports, scroll to it\n this.editor.revealPositionInCenterIfOutsideViewport(position);\n }\n clear(sendRejection = true) {\n var _a;\n const edit = (_a = this._currentEdit.get()) === null || _a === void 0 ? void 0 : _a.edit;\n if (edit && (edit === null || edit === void 0 ? void 0 : edit.rejected) && !this._isAccepting && sendRejection) {\n this._commandService.executeCommand(edit.rejected.id, ...edit.rejected.arguments || []);\n }\n if (edit) {\n this.freeEdit(edit);\n }\n this._currentEdit.set(undefined, undefined);\n }\n freeEdit(edit) {\n const model = this.editor.getModel();\n if (!model) {\n return;\n }\n const providers = this.languageFeaturesService.inlineEditProvider.all(model);\n if (providers.length === 0) {\n return;\n }\n providers[0].freeInlineEdit(edit);\n }\n shouldShowHoverAt(range) {\n const currentEdit = this._currentEdit.get();\n if (!currentEdit) {\n return false;\n }\n const edit = currentEdit.edit;\n const model = currentEdit.widget.model;\n const overReplaceRange = _common_core_range_js__WEBPACK_IMPORTED_MODULE_4__.Range.containsPosition(edit.range, range.getStartPosition()) || _common_core_range_js__WEBPACK_IMPORTED_MODULE_4__.Range.containsPosition(edit.range, range.getEndPosition());\n if (overReplaceRange) {\n return true;\n }\n const ghostText = model.ghostText.get();\n if (ghostText) {\n return ghostText.parts.some(p => range.containsPosition(new _common_core_position_js__WEBPACK_IMPORTED_MODULE_3__.Position(ghostText.lineNumber, p.column)));\n }\n return false;\n }\n shouldShowHoverAtViewZone(viewZoneId) {\n var _a, _b;\n return (_b = (_a = this._currentEdit.get()) === null || _a === void 0 ? void 0 : _a.widget.ownsViewZone(viewZoneId)) !== null && _b !== void 0 ? _b : false;\n }\n};\nInlineEditController.ID = 'editor.contrib.inlineEditController';\nInlineEditController.inlineEditVisibleKey = 'inlineEditVisible';\nInlineEditController.inlineEditVisibleContext = new _platform_contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_6__.RawContextKey(InlineEditController_1.inlineEditVisibleKey, false);\nInlineEditController.cursorAtInlineEditKey = 'cursorAtInlineEdit';\nInlineEditController.cursorAtInlineEditContext = new _platform_contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_6__.RawContextKey(InlineEditController_1.cursorAtInlineEditKey, false);\nInlineEditController = InlineEditController_1 = __decorate([\n __param(1, _platform_instantiation_common_instantiation_js__WEBPACK_IMPORTED_MODULE_7__.IInstantiationService),\n __param(2, _platform_contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_6__.IContextKeyService),\n __param(3, _common_services_languageFeatures_js__WEBPACK_IMPORTED_MODULE_9__.ILanguageFeaturesService),\n __param(4, _platform_commands_common_commands_js__WEBPACK_IMPORTED_MODULE_12__.ICommandService),\n __param(5, _platform_configuration_common_configuration_js__WEBPACK_IMPORTED_MODULE_15__.IConfigurationService)\n], InlineEditController);\n\nfunction wait(ms, cancellationToken) {\n return new Promise(resolve => {\n let d = undefined;\n const handle = setTimeout(() => {\n if (d) {\n d.dispose();\n }\n resolve();\n }, ms);\n if (cancellationToken) {\n d = cancellationToken.onCancellationRequested(() => {\n clearTimeout(handle);\n if (d) {\n d.dispose();\n }\n resolve();\n });\n }\n });\n}\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/contrib/inlineEdit/browser/inlineEditController.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/contrib/inlineEdit/browser/inlineEditHintsWidget.js":
/*!******************************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/contrib/inlineEdit/browser/inlineEditHintsWidget.js ***!
\******************************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ CustomizedMenuWorkbenchToolBar: () => (/* binding */ CustomizedMenuWorkbenchToolBar),\n/* harmony export */ InlineEditHintsContentWidget: () => (/* binding */ InlineEditHintsContentWidget),\n/* harmony export */ InlineEditHintsWidget: () => (/* binding */ InlineEditHintsWidget)\n/* harmony export */ });\n/* harmony import */ var _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../../base/browser/dom.js */ \"./node_modules/monaco-editor/esm/vs/base/browser/dom.js\");\n/* harmony import */ var _base_browser_ui_keybindingLabel_keybindingLabel_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../base/browser/ui/keybindingLabel/keybindingLabel.js */ \"./node_modules/monaco-editor/esm/vs/base/browser/ui/keybindingLabel/keybindingLabel.js\");\n/* harmony import */ var _base_common_actions_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../../base/common/actions.js */ \"./node_modules/monaco-editor/esm/vs/base/common/actions.js\");\n/* harmony import */ var _base_common_arrays_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../../../base/common/arrays.js */ \"./node_modules/monaco-editor/esm/vs/base/common/arrays.js\");\n/* harmony import */ var _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../../../base/common/lifecycle.js */ \"./node_modules/monaco-editor/esm/vs/base/common/lifecycle.js\");\n/* harmony import */ var _base_common_observable_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../../../../base/common/observable.js */ \"./node_modules/monaco-editor/esm/vs/base/common/observable.js\");\n/* harmony import */ var _base_common_platform_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../../../../base/common/platform.js */ \"./node_modules/monaco-editor/esm/vs/base/common/platform.js\");\n/* harmony import */ var _inlineEditHintsWidget_css__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ./inlineEditHintsWidget.css */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/inlineEdit/browser/inlineEditHintsWidget.css\");\n/* harmony import */ var _common_core_position_js__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ../../../common/core/position.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/core/position.js\");\n/* harmony import */ var _platform_actions_browser_menuEntryActionViewItem_js__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ../../../../platform/actions/browser/menuEntryActionViewItem.js */ \"./node_modules/monaco-editor/esm/vs/platform/actions/browser/menuEntryActionViewItem.js\");\n/* harmony import */ var _platform_actions_browser_toolbar_js__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! ../../../../platform/actions/browser/toolbar.js */ \"./node_modules/monaco-editor/esm/vs/platform/actions/browser/toolbar.js\");\n/* harmony import */ var _platform_actions_common_actions_js__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(/*! ../../../../platform/actions/common/actions.js */ \"./node_modules/monaco-editor/esm/vs/platform/actions/common/actions.js\");\n/* harmony import */ var _platform_contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(/*! ../../../../platform/contextkey/common/contextkey.js */ \"./node_modules/monaco-editor/esm/vs/platform/contextkey/common/contextkey.js\");\n/* harmony import */ var _platform_contextview_browser_contextView_js__WEBPACK_IMPORTED_MODULE_13__ = __webpack_require__(/*! ../../../../platform/contextview/browser/contextView.js */ \"./node_modules/monaco-editor/esm/vs/platform/contextview/browser/contextView.js\");\n/* harmony import */ var _platform_instantiation_common_instantiation_js__WEBPACK_IMPORTED_MODULE_14__ = __webpack_require__(/*! ../../../../platform/instantiation/common/instantiation.js */ \"./node_modules/monaco-editor/esm/vs/platform/instantiation/common/instantiation.js\");\n/* harmony import */ var _platform_keybinding_common_keybinding_js__WEBPACK_IMPORTED_MODULE_15__ = __webpack_require__(/*! ../../../../platform/keybinding/common/keybinding.js */ \"./node_modules/monaco-editor/esm/vs/platform/keybinding/common/keybinding.js\");\n/* harmony import */ var _platform_telemetry_common_telemetry_js__WEBPACK_IMPORTED_MODULE_16__ = __webpack_require__(/*! ../../../../platform/telemetry/common/telemetry.js */ \"./node_modules/monaco-editor/esm/vs/platform/telemetry/common/telemetry.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\nvar __decorate = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\n return c > 3 && r && Object.defineProperty(target, key, r), r;\n};\nvar __param = (undefined && undefined.__param) || function (paramIndex, decorator) {\n return function (target, key) { decorator(target, key, paramIndex); }\n};\nvar InlineEditHintsContentWidget_1;\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlet InlineEditHintsWidget = class InlineEditHintsWidget extends _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_4__.Disposable {\n constructor(editor, model, instantiationService) {\n super();\n this.editor = editor;\n this.model = model;\n this.instantiationService = instantiationService;\n this.alwaysShowToolbar = (0,_base_common_observable_js__WEBPACK_IMPORTED_MODULE_5__.observableFromEvent)(this.editor.onDidChangeConfiguration, () => this.editor.getOption(63 /* EditorOption.inlineEdit */).showToolbar === 'always');\n this.sessionPosition = undefined;\n this.position = (0,_base_common_observable_js__WEBPACK_IMPORTED_MODULE_5__.derived)(this, reader => {\n var _a, _b, _c;\n const ghostText = (_a = this.model.read(reader)) === null || _a === void 0 ? void 0 : _a.widget.model.ghostText.read(reader);\n if (!this.alwaysShowToolbar.read(reader) || !ghostText || ghostText.parts.length === 0) {\n this.sessionPosition = undefined;\n return null;\n }\n const firstColumn = ghostText.parts[0].column;\n if (this.sessionPosition && this.sessionPosition.lineNumber !== ghostText.lineNumber) {\n this.sessionPosition = undefined;\n }\n const position = new _common_core_position_js__WEBPACK_IMPORTED_MODULE_8__.Position(ghostText.lineNumber, Math.min(firstColumn, (_c = (_b = this.sessionPosition) === null || _b === void 0 ? void 0 : _b.column) !== null && _c !== void 0 ? _c : Number.MAX_SAFE_INTEGER));\n this.sessionPosition = position;\n return position;\n });\n this._register((0,_base_common_observable_js__WEBPACK_IMPORTED_MODULE_5__.autorunWithStore)((reader, store) => {\n /** @description setup content widget */\n const model = this.model.read(reader);\n if (!model || !this.alwaysShowToolbar.read(reader)) {\n return;\n }\n const contentWidget = store.add(this.instantiationService.createInstance(InlineEditHintsContentWidget, this.editor, true, this.position));\n editor.addContentWidget(contentWidget);\n store.add((0,_base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_4__.toDisposable)(() => editor.removeContentWidget(contentWidget)));\n }));\n }\n};\nInlineEditHintsWidget = __decorate([\n __param(2, _platform_instantiation_common_instantiation_js__WEBPACK_IMPORTED_MODULE_14__.IInstantiationService)\n], InlineEditHintsWidget);\n\nlet InlineEditHintsContentWidget = InlineEditHintsContentWidget_1 = class InlineEditHintsContentWidget extends _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_4__.Disposable {\n constructor(editor, withBorder, _position, instantiationService, _contextKeyService, _menuService) {\n super();\n this.editor = editor;\n this.withBorder = withBorder;\n this._position = _position;\n this._contextKeyService = _contextKeyService;\n this._menuService = _menuService;\n this.id = `InlineEditHintsContentWidget${InlineEditHintsContentWidget_1.id++}`;\n this.allowEditorOverflow = true;\n this.suppressMouseDown = false;\n this.nodes = (0,_base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.h)('div.inlineEditHints', { className: this.withBorder ? '.withBorder' : '' }, [\n (0,_base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.h)('div@toolBar'),\n ]);\n this.inlineCompletionsActionsMenus = this._register(this._menuService.createMenu(_platform_actions_common_actions_js__WEBPACK_IMPORTED_MODULE_11__.MenuId.InlineEditActions, this._contextKeyService));\n this.toolBar = this._register(instantiationService.createInstance(CustomizedMenuWorkbenchToolBar, this.nodes.toolBar, this.editor, _platform_actions_common_actions_js__WEBPACK_IMPORTED_MODULE_11__.MenuId.InlineEditToolbar, {\n menuOptions: { renderShortTitle: true },\n toolbarOptions: { primaryGroup: g => g.startsWith('primary') },\n actionViewItemProvider: (action, options) => {\n if (action instanceof _platform_actions_common_actions_js__WEBPACK_IMPORTED_MODULE_11__.MenuItemAction) {\n return instantiationService.createInstance(StatusBarViewItem, action, undefined);\n }\n return undefined;\n },\n telemetrySource: 'InlineEditToolbar',\n }));\n this._register(this.toolBar.onDidChangeDropdownVisibility(e => {\n InlineEditHintsContentWidget_1._dropDownVisible = e;\n }));\n this._register((0,_base_common_observable_js__WEBPACK_IMPORTED_MODULE_5__.autorun)(reader => {\n /** @description update position */\n this._position.read(reader);\n this.editor.layoutContentWidget(this);\n }));\n this._register((0,_base_common_observable_js__WEBPACK_IMPORTED_MODULE_5__.autorun)(reader => {\n /** @description actions menu */\n const extraActions = [];\n for (const [_, group] of this.inlineCompletionsActionsMenus.getActions()) {\n for (const action of group) {\n if (action instanceof _platform_actions_common_actions_js__WEBPACK_IMPORTED_MODULE_11__.MenuItemAction) {\n extraActions.push(action);\n }\n }\n }\n if (extraActions.length > 0) {\n extraActions.unshift(new _base_common_actions_js__WEBPACK_IMPORTED_MODULE_2__.Separator());\n }\n this.toolBar.setAdditionalSecondaryActions(extraActions);\n }));\n }\n getId() { return this.id; }\n getDomNode() {\n return this.nodes.root;\n }\n getPosition() {\n return {\n position: this._position.get(),\n preference: [1 /* ContentWidgetPositionPreference.ABOVE */, 2 /* ContentWidgetPositionPreference.BELOW */],\n positionAffinity: 3 /* PositionAffinity.LeftOfInjectedText */,\n };\n }\n};\nInlineEditHintsContentWidget._dropDownVisible = false;\nInlineEditHintsContentWidget.id = 0;\nInlineEditHintsContentWidget = InlineEditHintsContentWidget_1 = __decorate([\n __param(3, _platform_instantiation_common_instantiation_js__WEBPACK_IMPORTED_MODULE_14__.IInstantiationService),\n __param(4, _platform_contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_12__.IContextKeyService),\n __param(5, _platform_actions_common_actions_js__WEBPACK_IMPORTED_MODULE_11__.IMenuService)\n], InlineEditHintsContentWidget);\n\nclass StatusBarViewItem extends _platform_actions_browser_menuEntryActionViewItem_js__WEBPACK_IMPORTED_MODULE_9__.MenuEntryActionViewItem {\n updateLabel() {\n const kb = this._keybindingService.lookupKeybinding(this._action.id, this._contextKeyService);\n if (!kb) {\n return super.updateLabel();\n }\n if (this.label) {\n const div = (0,_base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.h)('div.keybinding').root;\n const k = new _base_browser_ui_keybindingLabel_keybindingLabel_js__WEBPACK_IMPORTED_MODULE_1__.KeybindingLabel(div, _base_common_platform_js__WEBPACK_IMPORTED_MODULE_6__.OS, { disableTitle: true, ..._base_browser_ui_keybindingLabel_keybindingLabel_js__WEBPACK_IMPORTED_MODULE_1__.unthemedKeybindingLabelOptions });\n k.set(kb);\n this.label.textContent = this._action.label;\n this.label.appendChild(div);\n this.label.classList.add('inlineEditStatusBarItemLabel');\n }\n }\n updateTooltip() {\n // NOOP, disable tooltip\n }\n}\nlet CustomizedMenuWorkbenchToolBar = class CustomizedMenuWorkbenchToolBar extends _platform_actions_browser_toolbar_js__WEBPACK_IMPORTED_MODULE_10__.WorkbenchToolBar {\n constructor(container, editor, menuId, options2, menuService, contextKeyService, contextMenuService, keybindingService, telemetryService) {\n super(container, { resetMenu: menuId, ...options2 }, menuService, contextKeyService, contextMenuService, keybindingService, telemetryService);\n this.editor = editor;\n this.menuId = menuId;\n this.options2 = options2;\n this.menuService = menuService;\n this.contextKeyService = contextKeyService;\n this.menu = this._store.add(this.menuService.createMenu(this.menuId, this.contextKeyService, { emitEventsForSubmenuChanges: true }));\n this.additionalActions = [];\n this.prependedPrimaryActions = [];\n this._store.add(this.menu.onDidChange(() => this.updateToolbar()));\n this._store.add(this.editor.onDidChangeCursorPosition(() => this.updateToolbar()));\n this.updateToolbar();\n }\n updateToolbar() {\n var _a, _b, _c, _d, _e, _f, _g;\n const primary = [];\n const secondary = [];\n (0,_platform_actions_browser_menuEntryActionViewItem_js__WEBPACK_IMPORTED_MODULE_9__.createAndFillInActionBarActions)(this.menu, (_a = this.options2) === null || _a === void 0 ? void 0 : _a.menuOptions, { primary, secondary }, (_c = (_b = this.options2) === null || _b === void 0 ? void 0 : _b.toolbarOptions) === null || _c === void 0 ? void 0 : _c.primaryGroup, (_e = (_d = this.options2) === null || _d === void 0 ? void 0 : _d.toolbarOptions) === null || _e === void 0 ? void 0 : _e.shouldInlineSubmenu, (_g = (_f = this.options2) === null || _f === void 0 ? void 0 : _f.toolbarOptions) === null || _g === void 0 ? void 0 : _g.useSeparatorsInPrimaryActions);\n secondary.push(...this.additionalActions);\n primary.unshift(...this.prependedPrimaryActions);\n this.setActions(primary, secondary);\n }\n setAdditionalSecondaryActions(actions) {\n if ((0,_base_common_arrays_js__WEBPACK_IMPORTED_MODULE_3__.equals)(this.additionalActions, actions, (a, b) => a === b)) {\n return;\n }\n this.additionalActions = actions;\n this.updateToolbar();\n }\n};\nCustomizedMenuWorkbenchToolBar = __decorate([\n __param(4, _platform_actions_common_actions_js__WEBPACK_IMPORTED_MODULE_11__.IMenuService),\n __param(5, _platform_contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_12__.IContextKeyService),\n __param(6, _platform_contextview_browser_contextView_js__WEBPACK_IMPORTED_MODULE_13__.IContextMenuService),\n __param(7, _platform_keybinding_common_keybinding_js__WEBPACK_IMPORTED_MODULE_15__.IKeybindingService),\n __param(8, _platform_telemetry_common_telemetry_js__WEBPACK_IMPORTED_MODULE_16__.ITelemetryService)\n], CustomizedMenuWorkbenchToolBar);\n\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/contrib/inlineEdit/browser/inlineEditHintsWidget.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/contrib/inlineProgress/browser/inlineProgress.js":
/*!***************************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/contrib/inlineProgress/browser/inlineProgress.js ***!
\***************************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ InlineProgressManager: () => (/* binding */ InlineProgressManager)\n/* harmony export */ });\n/* harmony import */ var _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../../base/browser/dom.js */ \"./node_modules/monaco-editor/esm/vs/base/browser/dom.js\");\n/* harmony import */ var _base_common_async_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../base/common/async.js */ \"./node_modules/monaco-editor/esm/vs/base/common/async.js\");\n/* harmony import */ var _base_common_codicons_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../../base/common/codicons.js */ \"./node_modules/monaco-editor/esm/vs/base/common/codicons.js\");\n/* harmony import */ var _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../../../base/common/lifecycle.js */ \"./node_modules/monaco-editor/esm/vs/base/common/lifecycle.js\");\n/* harmony import */ var _base_common_strings_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../../../base/common/strings.js */ \"./node_modules/monaco-editor/esm/vs/base/common/strings.js\");\n/* harmony import */ var _base_common_themables_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../../../../base/common/themables.js */ \"./node_modules/monaco-editor/esm/vs/base/common/themables.js\");\n/* harmony import */ var _inlineProgressWidget_css__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ./inlineProgressWidget.css */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/inlineProgress/browser/inlineProgressWidget.css\");\n/* harmony import */ var _common_core_range_js__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ../../../common/core/range.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/core/range.js\");\n/* harmony import */ var _common_model_textModel_js__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ../../../common/model/textModel.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/model/textModel.js\");\n/* harmony import */ var _platform_instantiation_common_instantiation_js__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ../../../../platform/instantiation/common/instantiation.js */ \"./node_modules/monaco-editor/esm/vs/platform/instantiation/common/instantiation.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\nvar __decorate = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\n return c > 3 && r && Object.defineProperty(target, key, r), r;\n};\nvar __param = (undefined && undefined.__param) || function (paramIndex, decorator) {\n return function (target, key) { decorator(target, key, paramIndex); }\n};\n\n\n\n\n\n\n\n\n\n\nconst inlineProgressDecoration = _common_model_textModel_js__WEBPACK_IMPORTED_MODULE_8__.ModelDecorationOptions.register({\n description: 'inline-progress-widget',\n stickiness: 1 /* TrackedRangeStickiness.NeverGrowsWhenTypingAtEdges */,\n showIfCollapsed: true,\n after: {\n content: _base_common_strings_js__WEBPACK_IMPORTED_MODULE_4__.noBreakWhitespace,\n inlineClassName: 'inline-editor-progress-decoration',\n inlineClassNameAffectsLetterSpacing: true,\n }\n});\nclass InlineProgressWidget extends _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_3__.Disposable {\n constructor(typeId, editor, range, title, delegate) {\n super();\n this.typeId = typeId;\n this.editor = editor;\n this.range = range;\n this.delegate = delegate;\n this.allowEditorOverflow = false;\n this.suppressMouseDown = true;\n this.create(title);\n this.editor.addContentWidget(this);\n this.editor.layoutContentWidget(this);\n }\n create(title) {\n this.domNode = _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.$('.inline-progress-widget');\n this.domNode.role = 'button';\n this.domNode.title = title;\n const iconElement = _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.$('span.icon');\n this.domNode.append(iconElement);\n iconElement.classList.add(..._base_common_themables_js__WEBPACK_IMPORTED_MODULE_5__.ThemeIcon.asClassNameArray(_base_common_codicons_js__WEBPACK_IMPORTED_MODULE_2__.Codicon.loading), 'codicon-modifier-spin');\n const updateSize = () => {\n const lineHeight = this.editor.getOption(67 /* EditorOption.lineHeight */);\n this.domNode.style.height = `${lineHeight}px`;\n this.domNode.style.width = `${Math.ceil(0.8 * lineHeight)}px`;\n };\n updateSize();\n this._register(this.editor.onDidChangeConfiguration(c => {\n if (c.hasChanged(52 /* EditorOption.fontSize */) || c.hasChanged(67 /* EditorOption.lineHeight */)) {\n updateSize();\n }\n }));\n this._register(_base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.addDisposableListener(this.domNode, _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.EventType.CLICK, e => {\n this.delegate.cancel();\n }));\n }\n getId() {\n return InlineProgressWidget.baseId + '.' + this.typeId;\n }\n getDomNode() {\n return this.domNode;\n }\n getPosition() {\n return {\n position: { lineNumber: this.range.startLineNumber, column: this.range.startColumn },\n preference: [0 /* ContentWidgetPositionPreference.EXACT */]\n };\n }\n dispose() {\n super.dispose();\n this.editor.removeContentWidget(this);\n }\n}\nInlineProgressWidget.baseId = 'editor.widget.inlineProgressWidget';\nlet InlineProgressManager = class InlineProgressManager extends _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_3__.Disposable {\n constructor(id, _editor, _instantiationService) {\n super();\n this.id = id;\n this._editor = _editor;\n this._instantiationService = _instantiationService;\n /** Delay before showing the progress widget */\n this._showDelay = 500; // ms\n this._showPromise = this._register(new _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_3__.MutableDisposable());\n this._currentWidget = new _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_3__.MutableDisposable();\n this._operationIdPool = 0;\n this._currentDecorations = _editor.createDecorationsCollection();\n }\n async showWhile(position, title, promise) {\n const operationId = this._operationIdPool++;\n this._currentOperation = operationId;\n this.clear();\n this._showPromise.value = (0,_base_common_async_js__WEBPACK_IMPORTED_MODULE_1__.disposableTimeout)(() => {\n const range = _common_core_range_js__WEBPACK_IMPORTED_MODULE_7__.Range.fromPositions(position);\n const decorationIds = this._currentDecorations.set([{\n range: range,\n options: inlineProgressDecoration,\n }]);\n if (decorationIds.length > 0) {\n this._currentWidget.value = this._instantiationService.createInstance(InlineProgressWidget, this.id, this._editor, range, title, promise);\n }\n }, this._showDelay);\n try {\n return await promise;\n }\n finally {\n if (this._currentOperation === operationId) {\n this.clear();\n this._currentOperation = undefined;\n }\n }\n }\n clear() {\n this._showPromise.clear();\n this._currentDecorations.clear();\n this._currentWidget.clear();\n }\n};\nInlineProgressManager = __decorate([\n __param(2, _platform_instantiation_common_instantiation_js__WEBPACK_IMPORTED_MODULE_9__.IInstantiationService)\n], InlineProgressManager);\n\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/contrib/inlineProgress/browser/inlineProgress.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/contrib/lineSelection/browser/lineSelection.js":
/*!*************************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/contrib/lineSelection/browser/lineSelection.js ***!
\*************************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ ExpandLineSelectionAction: () => (/* binding */ ExpandLineSelectionAction)\n/* harmony export */ });\n/* harmony import */ var _browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../browser/editorExtensions.js */ \"./node_modules/monaco-editor/esm/vs/editor/browser/editorExtensions.js\");\n/* harmony import */ var _common_cursor_cursorMoveCommands_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../common/cursor/cursorMoveCommands.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/cursor/cursorMoveCommands.js\");\n/* harmony import */ var _common_editorContextKeys_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../common/editorContextKeys.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/editorContextKeys.js\");\n/* harmony import */ var _nls_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../../../nls.js */ \"./node_modules/monaco-editor/esm/vs/nls.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n\n\n\nclass ExpandLineSelectionAction extends _browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_0__.EditorAction {\n constructor() {\n super({\n id: 'expandLineSelection',\n label: _nls_js__WEBPACK_IMPORTED_MODULE_3__.localize('expandLineSelection', \"Expand Line Selection\"),\n alias: 'Expand Line Selection',\n precondition: undefined,\n kbOpts: {\n weight: 0 /* KeybindingWeight.EditorCore */,\n kbExpr: _common_editorContextKeys_js__WEBPACK_IMPORTED_MODULE_2__.EditorContextKeys.textInputFocus,\n primary: 2048 /* KeyMod.CtrlCmd */ | 42 /* KeyCode.KeyL */\n },\n });\n }\n run(_accessor, editor, args) {\n args = args || {};\n if (!editor.hasModel()) {\n return;\n }\n const viewModel = editor._getViewModel();\n viewModel.model.pushStackElement();\n viewModel.setCursorStates(args.source, 3 /* CursorChangeReason.Explicit */, _common_cursor_cursorMoveCommands_js__WEBPACK_IMPORTED_MODULE_1__.CursorMoveCommands.expandLineSelection(viewModel, viewModel.getCursorStates()));\n viewModel.revealPrimaryCursor(args.source, true);\n }\n}\n(0,_browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_0__.registerEditorAction)(ExpandLineSelectionAction);\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/contrib/lineSelection/browser/lineSelection.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/contrib/linesOperations/browser/copyLinesCommand.js":
/*!******************************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/contrib/linesOperations/browser/copyLinesCommand.js ***!
\******************************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ CopyLinesCommand: () => (/* binding */ CopyLinesCommand)\n/* harmony export */ });\n/* harmony import */ var _common_core_range_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../common/core/range.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/core/range.js\");\n/* harmony import */ var _common_core_selection_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../common/core/selection.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/core/selection.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n\nclass CopyLinesCommand {\n constructor(selection, isCopyingDown, noop) {\n this._selection = selection;\n this._isCopyingDown = isCopyingDown;\n this._noop = noop || false;\n this._selectionDirection = 0 /* SelectionDirection.LTR */;\n this._selectionId = null;\n this._startLineNumberDelta = 0;\n this._endLineNumberDelta = 0;\n }\n getEditOperations(model, builder) {\n let s = this._selection;\n this._startLineNumberDelta = 0;\n this._endLineNumberDelta = 0;\n if (s.startLineNumber < s.endLineNumber && s.endColumn === 1) {\n this._endLineNumberDelta = 1;\n s = s.setEndPosition(s.endLineNumber - 1, model.getLineMaxColumn(s.endLineNumber - 1));\n }\n const sourceLines = [];\n for (let i = s.startLineNumber; i <= s.endLineNumber; i++) {\n sourceLines.push(model.getLineContent(i));\n }\n const sourceText = sourceLines.join('\\n');\n if (sourceText === '') {\n // Duplicating empty line\n if (this._isCopyingDown) {\n this._startLineNumberDelta++;\n this._endLineNumberDelta++;\n }\n }\n if (this._noop) {\n builder.addEditOperation(new _common_core_range_js__WEBPACK_IMPORTED_MODULE_0__.Range(s.endLineNumber, model.getLineMaxColumn(s.endLineNumber), s.endLineNumber + 1, 1), s.endLineNumber === model.getLineCount() ? '' : '\\n');\n }\n else {\n if (!this._isCopyingDown) {\n builder.addEditOperation(new _common_core_range_js__WEBPACK_IMPORTED_MODULE_0__.Range(s.endLineNumber, model.getLineMaxColumn(s.endLineNumber), s.endLineNumber, model.getLineMaxColumn(s.endLineNumber)), '\\n' + sourceText);\n }\n else {\n builder.addEditOperation(new _common_core_range_js__WEBPACK_IMPORTED_MODULE_0__.Range(s.startLineNumber, 1, s.startLineNumber, 1), sourceText + '\\n');\n }\n }\n this._selectionId = builder.trackSelection(s);\n this._selectionDirection = this._selection.getDirection();\n }\n computeCursorState(model, helper) {\n let result = helper.getTrackedSelection(this._selectionId);\n if (this._startLineNumberDelta !== 0 || this._endLineNumberDelta !== 0) {\n let startLineNumber = result.startLineNumber;\n let startColumn = result.startColumn;\n let endLineNumber = result.endLineNumber;\n let endColumn = result.endColumn;\n if (this._startLineNumberDelta !== 0) {\n startLineNumber = startLineNumber + this._startLineNumberDelta;\n startColumn = 1;\n }\n if (this._endLineNumberDelta !== 0) {\n endLineNumber = endLineNumber + this._endLineNumberDelta;\n endColumn = 1;\n }\n result = _common_core_selection_js__WEBPACK_IMPORTED_MODULE_1__.Selection.createWithDirection(startLineNumber, startColumn, endLineNumber, endColumn, this._selectionDirection);\n }\n return result;\n }\n}\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/contrib/linesOperations/browser/copyLinesCommand.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/contrib/linesOperations/browser/linesOperations.js":
/*!*****************************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/contrib/linesOperations/browser/linesOperations.js ***!
\*****************************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ AbstractCaseAction: () => (/* binding */ AbstractCaseAction),\n/* harmony export */ AbstractDeleteAllToBoundaryAction: () => (/* binding */ AbstractDeleteAllToBoundaryAction),\n/* harmony export */ AbstractSortLinesAction: () => (/* binding */ AbstractSortLinesAction),\n/* harmony export */ CamelCaseAction: () => (/* binding */ CamelCaseAction),\n/* harmony export */ DeleteAllLeftAction: () => (/* binding */ DeleteAllLeftAction),\n/* harmony export */ DeleteAllRightAction: () => (/* binding */ DeleteAllRightAction),\n/* harmony export */ DeleteDuplicateLinesAction: () => (/* binding */ DeleteDuplicateLinesAction),\n/* harmony export */ DeleteLinesAction: () => (/* binding */ DeleteLinesAction),\n/* harmony export */ DuplicateSelectionAction: () => (/* binding */ DuplicateSelectionAction),\n/* harmony export */ IndentLinesAction: () => (/* binding */ IndentLinesAction),\n/* harmony export */ InsertLineAfterAction: () => (/* binding */ InsertLineAfterAction),\n/* harmony export */ InsertLineBeforeAction: () => (/* binding */ InsertLineBeforeAction),\n/* harmony export */ JoinLinesAction: () => (/* binding */ JoinLinesAction),\n/* harmony export */ KebabCaseAction: () => (/* binding */ KebabCaseAction),\n/* harmony export */ LowerCaseAction: () => (/* binding */ LowerCaseAction),\n/* harmony export */ SnakeCaseAction: () => (/* binding */ SnakeCaseAction),\n/* harmony export */ SortLinesAscendingAction: () => (/* binding */ SortLinesAscendingAction),\n/* harmony export */ SortLinesDescendingAction: () => (/* binding */ SortLinesDescendingAction),\n/* harmony export */ TitleCaseAction: () => (/* binding */ TitleCaseAction),\n/* harmony export */ TransposeAction: () => (/* binding */ TransposeAction),\n/* harmony export */ TrimTrailingWhitespaceAction: () => (/* binding */ TrimTrailingWhitespaceAction),\n/* harmony export */ UpperCaseAction: () => (/* binding */ UpperCaseAction)\n/* harmony export */ });\n/* harmony import */ var _base_common_keyCodes_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../../base/common/keyCodes.js */ \"./node_modules/monaco-editor/esm/vs/base/common/keyCodes.js\");\n/* harmony import */ var _browser_coreCommands_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../browser/coreCommands.js */ \"./node_modules/monaco-editor/esm/vs/editor/browser/coreCommands.js\");\n/* harmony import */ var _browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../browser/editorExtensions.js */ \"./node_modules/monaco-editor/esm/vs/editor/browser/editorExtensions.js\");\n/* harmony import */ var _common_commands_replaceCommand_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../../common/commands/replaceCommand.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/commands/replaceCommand.js\");\n/* harmony import */ var _common_commands_trimTrailingWhitespaceCommand_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../../common/commands/trimTrailingWhitespaceCommand.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/commands/trimTrailingWhitespaceCommand.js\");\n/* harmony import */ var _common_cursor_cursorTypeOperations_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../../../common/cursor/cursorTypeOperations.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/cursor/cursorTypeOperations.js\");\n/* harmony import */ var _common_core_editOperation_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../../../common/core/editOperation.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/core/editOperation.js\");\n/* harmony import */ var _common_core_position_js__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ../../../common/core/position.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/core/position.js\");\n/* harmony import */ var _common_core_range_js__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ../../../common/core/range.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/core/range.js\");\n/* harmony import */ var _common_core_selection_js__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ../../../common/core/selection.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/core/selection.js\");\n/* harmony import */ var _common_editorContextKeys_js__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! ../../../common/editorContextKeys.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/editorContextKeys.js\");\n/* harmony import */ var _copyLinesCommand_js__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(/*! ./copyLinesCommand.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/linesOperations/browser/copyLinesCommand.js\");\n/* harmony import */ var _moveLinesCommand_js__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(/*! ./moveLinesCommand.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/linesOperations/browser/moveLinesCommand.js\");\n/* harmony import */ var _sortLinesCommand_js__WEBPACK_IMPORTED_MODULE_13__ = __webpack_require__(/*! ./sortLinesCommand.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/linesOperations/browser/sortLinesCommand.js\");\n/* harmony import */ var _nls_js__WEBPACK_IMPORTED_MODULE_14__ = __webpack_require__(/*! ../../../../nls.js */ \"./node_modules/monaco-editor/esm/vs/nls.js\");\n/* harmony import */ var _platform_actions_common_actions_js__WEBPACK_IMPORTED_MODULE_15__ = __webpack_require__(/*! ../../../../platform/actions/common/actions.js */ \"./node_modules/monaco-editor/esm/vs/platform/actions/common/actions.js\");\n/* harmony import */ var _common_languages_languageConfigurationRegistry_js__WEBPACK_IMPORTED_MODULE_16__ = __webpack_require__(/*! ../../../common/languages/languageConfigurationRegistry.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/languages/languageConfigurationRegistry.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n// copy lines\nclass AbstractCopyLinesAction extends _browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_2__.EditorAction {\n constructor(down, opts) {\n super(opts);\n this.down = down;\n }\n run(_accessor, editor) {\n if (!editor.hasModel()) {\n return;\n }\n const selections = editor.getSelections().map((selection, index) => ({ selection, index, ignore: false }));\n selections.sort((a, b) => _common_core_range_js__WEBPACK_IMPORTED_MODULE_8__.Range.compareRangesUsingStarts(a.selection, b.selection));\n // Remove selections that would result in copying the same line\n let prev = selections[0];\n for (let i = 1; i < selections.length; i++) {\n const curr = selections[i];\n if (prev.selection.endLineNumber === curr.selection.startLineNumber) {\n // these two selections would copy the same line\n if (prev.index < curr.index) {\n // prev wins\n curr.ignore = true;\n }\n else {\n // curr wins\n prev.ignore = true;\n prev = curr;\n }\n }\n }\n const commands = [];\n for (const selection of selections) {\n commands.push(new _copyLinesCommand_js__WEBPACK_IMPORTED_MODULE_11__.CopyLinesCommand(selection.selection, this.down, selection.ignore));\n }\n editor.pushUndoStop();\n editor.executeCommands(this.id, commands);\n editor.pushUndoStop();\n }\n}\nclass CopyLinesUpAction extends AbstractCopyLinesAction {\n constructor() {\n super(false, {\n id: 'editor.action.copyLinesUpAction',\n label: _nls_js__WEBPACK_IMPORTED_MODULE_14__.localize('lines.copyUp', \"Copy Line Up\"),\n alias: 'Copy Line Up',\n precondition: _common_editorContextKeys_js__WEBPACK_IMPORTED_MODULE_10__.EditorContextKeys.writable,\n kbOpts: {\n kbExpr: _common_editorContextKeys_js__WEBPACK_IMPORTED_MODULE_10__.EditorContextKeys.editorTextFocus,\n primary: 512 /* KeyMod.Alt */ | 1024 /* KeyMod.Shift */ | 16 /* KeyCode.UpArrow */,\n linux: { primary: 2048 /* KeyMod.CtrlCmd */ | 512 /* KeyMod.Alt */ | 1024 /* KeyMod.Shift */ | 16 /* KeyCode.UpArrow */ },\n weight: 100 /* KeybindingWeight.EditorContrib */\n },\n menuOpts: {\n menuId: _platform_actions_common_actions_js__WEBPACK_IMPORTED_MODULE_15__.MenuId.MenubarSelectionMenu,\n group: '2_line',\n title: _nls_js__WEBPACK_IMPORTED_MODULE_14__.localize({ key: 'miCopyLinesUp', comment: ['&& denotes a mnemonic'] }, \"&&Copy Line Up\"),\n order: 1\n }\n });\n }\n}\nclass CopyLinesDownAction extends AbstractCopyLinesAction {\n constructor() {\n super(true, {\n id: 'editor.action.copyLinesDownAction',\n label: _nls_js__WEBPACK_IMPORTED_MODULE_14__.localize('lines.copyDown', \"Copy Line Down\"),\n alias: 'Copy Line Down',\n precondition: _common_editorContextKeys_js__WEBPACK_IMPORTED_MODULE_10__.EditorContextKeys.writable,\n kbOpts: {\n kbExpr: _common_editorContextKeys_js__WEBPACK_IMPORTED_MODULE_10__.EditorContextKeys.editorTextFocus,\n primary: 512 /* KeyMod.Alt */ | 1024 /* KeyMod.Shift */ | 18 /* KeyCode.DownArrow */,\n linux: { primary: 2048 /* KeyMod.CtrlCmd */ | 512 /* KeyMod.Alt */ | 1024 /* KeyMod.Shift */ | 18 /* KeyCode.DownArrow */ },\n weight: 100 /* KeybindingWeight.EditorContrib */\n },\n menuOpts: {\n menuId: _platform_actions_common_actions_js__WEBPACK_IMPORTED_MODULE_15__.MenuId.MenubarSelectionMenu,\n group: '2_line',\n title: _nls_js__WEBPACK_IMPORTED_MODULE_14__.localize({ key: 'miCopyLinesDown', comment: ['&& denotes a mnemonic'] }, \"Co&&py Line Down\"),\n order: 2\n }\n });\n }\n}\nclass DuplicateSelectionAction extends _browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_2__.EditorAction {\n constructor() {\n super({\n id: 'editor.action.duplicateSelection',\n label: _nls_js__WEBPACK_IMPORTED_MODULE_14__.localize('duplicateSelection', \"Duplicate Selection\"),\n alias: 'Duplicate Selection',\n precondition: _common_editorContextKeys_js__WEBPACK_IMPORTED_MODULE_10__.EditorContextKeys.writable,\n menuOpts: {\n menuId: _platform_actions_common_actions_js__WEBPACK_IMPORTED_MODULE_15__.MenuId.MenubarSelectionMenu,\n group: '2_line',\n title: _nls_js__WEBPACK_IMPORTED_MODULE_14__.localize({ key: 'miDuplicateSelection', comment: ['&& denotes a mnemonic'] }, \"&&Duplicate Selection\"),\n order: 5\n }\n });\n }\n run(accessor, editor, args) {\n if (!editor.hasModel()) {\n return;\n }\n const commands = [];\n const selections = editor.getSelections();\n const model = editor.getModel();\n for (const selection of selections) {\n if (selection.isEmpty()) {\n commands.push(new _copyLinesCommand_js__WEBPACK_IMPORTED_MODULE_11__.CopyLinesCommand(selection, true));\n }\n else {\n const insertSelection = new _common_core_selection_js__WEBPACK_IMPORTED_MODULE_9__.Selection(selection.endLineNumber, selection.endColumn, selection.endLineNumber, selection.endColumn);\n commands.push(new _common_commands_replaceCommand_js__WEBPACK_IMPORTED_MODULE_3__.ReplaceCommandThatSelectsText(insertSelection, model.getValueInRange(selection)));\n }\n }\n editor.pushUndoStop();\n editor.executeCommands(this.id, commands);\n editor.pushUndoStop();\n }\n}\n// move lines\nclass AbstractMoveLinesAction extends _browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_2__.EditorAction {\n constructor(down, opts) {\n super(opts);\n this.down = down;\n }\n run(accessor, editor) {\n const languageConfigurationService = accessor.get(_common_languages_languageConfigurationRegistry_js__WEBPACK_IMPORTED_MODULE_16__.ILanguageConfigurationService);\n const commands = [];\n const selections = editor.getSelections() || [];\n const autoIndent = editor.getOption(12 /* EditorOption.autoIndent */);\n for (const selection of selections) {\n commands.push(new _moveLinesCommand_js__WEBPACK_IMPORTED_MODULE_12__.MoveLinesCommand(selection, this.down, autoIndent, languageConfigurationService));\n }\n editor.pushUndoStop();\n editor.executeCommands(this.id, commands);\n editor.pushUndoStop();\n }\n}\nclass MoveLinesUpAction extends AbstractMoveLinesAction {\n constructor() {\n super(false, {\n id: 'editor.action.moveLinesUpAction',\n label: _nls_js__WEBPACK_IMPORTED_MODULE_14__.localize('lines.moveUp', \"Move Line Up\"),\n alias: 'Move Line Up',\n precondition: _common_editorContextKeys_js__WEBPACK_IMPORTED_MODULE_10__.EditorContextKeys.writable,\n kbOpts: {\n kbExpr: _common_editorContextKeys_js__WEBPACK_IMPORTED_MODULE_10__.EditorContextKeys.editorTextFocus,\n primary: 512 /* KeyMod.Alt */ | 16 /* KeyCode.UpArrow */,\n linux: { primary: 512 /* KeyMod.Alt */ | 16 /* KeyCode.UpArrow */ },\n weight: 100 /* KeybindingWeight.EditorContrib */\n },\n menuOpts: {\n menuId: _platform_actions_common_actions_js__WEBPACK_IMPORTED_MODULE_15__.MenuId.MenubarSelectionMenu,\n group: '2_line',\n title: _nls_js__WEBPACK_IMPORTED_MODULE_14__.localize({ key: 'miMoveLinesUp', comment: ['&& denotes a mnemonic'] }, \"Mo&&ve Line Up\"),\n order: 3\n }\n });\n }\n}\nclass MoveLinesDownAction extends AbstractMoveLinesAction {\n constructor() {\n super(true, {\n id: 'editor.action.moveLinesDownAction',\n label: _nls_js__WEBPACK_IMPORTED_MODULE_14__.localize('lines.moveDown', \"Move Line Down\"),\n alias: 'Move Line Down',\n precondition: _common_editorContextKeys_js__WEBPACK_IMPORTED_MODULE_10__.EditorContextKeys.writable,\n kbOpts: {\n kbExpr: _common_editorContextKeys_js__WEBPACK_IMPORTED_MODULE_10__.EditorContextKeys.editorTextFocus,\n primary: 512 /* KeyMod.Alt */ | 18 /* KeyCode.DownArrow */,\n linux: { primary: 512 /* KeyMod.Alt */ | 18 /* KeyCode.DownArrow */ },\n weight: 100 /* KeybindingWeight.EditorContrib */\n },\n menuOpts: {\n menuId: _platform_actions_common_actions_js__WEBPACK_IMPORTED_MODULE_15__.MenuId.MenubarSelectionMenu,\n group: '2_line',\n title: _nls_js__WEBPACK_IMPORTED_MODULE_14__.localize({ key: 'miMoveLinesDown', comment: ['&& denotes a mnemonic'] }, \"Move &&Line Down\"),\n order: 4\n }\n });\n }\n}\nclass AbstractSortLinesAction extends _browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_2__.EditorAction {\n constructor(descending, opts) {\n super(opts);\n this.descending = descending;\n }\n run(_accessor, editor) {\n const selections = editor.getSelections() || [];\n for (const selection of selections) {\n if (!_sortLinesCommand_js__WEBPACK_IMPORTED_MODULE_13__.SortLinesCommand.canRun(editor.getModel(), selection, this.descending)) {\n return;\n }\n }\n const commands = [];\n for (let i = 0, len = selections.length; i < len; i++) {\n commands[i] = new _sortLinesCommand_js__WEBPACK_IMPORTED_MODULE_13__.SortLinesCommand(selections[i], this.descending);\n }\n editor.pushUndoStop();\n editor.executeCommands(this.id, commands);\n editor.pushUndoStop();\n }\n}\nclass SortLinesAscendingAction extends AbstractSortLinesAction {\n constructor() {\n super(false, {\n id: 'editor.action.sortLinesAscending',\n label: _nls_js__WEBPACK_IMPORTED_MODULE_14__.localize('lines.sortAscending', \"Sort Lines Ascending\"),\n alias: 'Sort Lines Ascending',\n precondition: _common_editorContextKeys_js__WEBPACK_IMPORTED_MODULE_10__.EditorContextKeys.writable\n });\n }\n}\nclass SortLinesDescendingAction extends AbstractSortLinesAction {\n constructor() {\n super(true, {\n id: 'editor.action.sortLinesDescending',\n label: _nls_js__WEBPACK_IMPORTED_MODULE_14__.localize('lines.sortDescending', \"Sort Lines Descending\"),\n alias: 'Sort Lines Descending',\n precondition: _common_editorContextKeys_js__WEBPACK_IMPORTED_MODULE_10__.EditorContextKeys.writable\n });\n }\n}\nclass DeleteDuplicateLinesAction extends _browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_2__.EditorAction {\n constructor() {\n super({\n id: 'editor.action.removeDuplicateLines',\n label: _nls_js__WEBPACK_IMPORTED_MODULE_14__.localize('lines.deleteDuplicates', \"Delete Duplicate Lines\"),\n alias: 'Delete Duplicate Lines',\n precondition: _common_editorContextKeys_js__WEBPACK_IMPORTED_MODULE_10__.EditorContextKeys.writable\n });\n }\n run(_accessor, editor) {\n if (!editor.hasModel()) {\n return;\n }\n const model = editor.getModel();\n if (model.getLineCount() === 1 && model.getLineMaxColumn(1) === 1) {\n return;\n }\n const edits = [];\n const endCursorState = [];\n let linesDeleted = 0;\n for (const selection of editor.getSelections()) {\n const uniqueLines = new Set();\n const lines = [];\n for (let i = selection.startLineNumber; i <= selection.endLineNumber; i++) {\n const line = model.getLineContent(i);\n if (uniqueLines.has(line)) {\n continue;\n }\n lines.push(line);\n uniqueLines.add(line);\n }\n const selectionToReplace = new _common_core_selection_js__WEBPACK_IMPORTED_MODULE_9__.Selection(selection.startLineNumber, 1, selection.endLineNumber, model.getLineMaxColumn(selection.endLineNumber));\n const adjustedSelectionStart = selection.startLineNumber - linesDeleted;\n const finalSelection = new _common_core_selection_js__WEBPACK_IMPORTED_MODULE_9__.Selection(adjustedSelectionStart, 1, adjustedSelectionStart + lines.length - 1, lines[lines.length - 1].length);\n edits.push(_common_core_editOperation_js__WEBPACK_IMPORTED_MODULE_6__.EditOperation.replace(selectionToReplace, lines.join('\\n')));\n endCursorState.push(finalSelection);\n linesDeleted += (selection.endLineNumber - selection.startLineNumber + 1) - lines.length;\n }\n editor.pushUndoStop();\n editor.executeEdits(this.id, edits, endCursorState);\n editor.pushUndoStop();\n }\n}\nclass TrimTrailingWhitespaceAction extends _browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_2__.EditorAction {\n constructor() {\n super({\n id: TrimTrailingWhitespaceAction.ID,\n label: _nls_js__WEBPACK_IMPORTED_MODULE_14__.localize('lines.trimTrailingWhitespace', \"Trim Trailing Whitespace\"),\n alias: 'Trim Trailing Whitespace',\n precondition: _common_editorContextKeys_js__WEBPACK_IMPORTED_MODULE_10__.EditorContextKeys.writable,\n kbOpts: {\n kbExpr: _common_editorContextKeys_js__WEBPACK_IMPORTED_MODULE_10__.EditorContextKeys.editorTextFocus,\n primary: (0,_base_common_keyCodes_js__WEBPACK_IMPORTED_MODULE_0__.KeyChord)(2048 /* KeyMod.CtrlCmd */ | 41 /* KeyCode.KeyK */, 2048 /* KeyMod.CtrlCmd */ | 54 /* KeyCode.KeyX */),\n weight: 100 /* KeybindingWeight.EditorContrib */\n }\n });\n }\n run(_accessor, editor, args) {\n let cursors = [];\n if (args.reason === 'auto-save') {\n // See https://github.com/editorconfig/editorconfig-vscode/issues/47\n // It is very convenient for the editor config extension to invoke this action.\n // So, if we get a reason:'auto-save' passed in, let's preserve cursor positions.\n cursors = (editor.getSelections() || []).map(s => new _common_core_position_js__WEBPACK_IMPORTED_MODULE_7__.Position(s.positionLineNumber, s.positionColumn));\n }\n const selection = editor.getSelection();\n if (selection === null) {\n return;\n }\n const command = new _common_commands_trimTrailingWhitespaceCommand_js__WEBPACK_IMPORTED_MODULE_4__.TrimTrailingWhitespaceCommand(selection, cursors);\n editor.pushUndoStop();\n editor.executeCommands(this.id, [command]);\n editor.pushUndoStop();\n }\n}\nTrimTrailingWhitespaceAction.ID = 'editor.action.trimTrailingWhitespace';\nclass DeleteLinesAction extends _browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_2__.EditorAction {\n constructor() {\n super({\n id: 'editor.action.deleteLines',\n label: _nls_js__WEBPACK_IMPORTED_MODULE_14__.localize('lines.delete', \"Delete Line\"),\n alias: 'Delete Line',\n precondition: _common_editorContextKeys_js__WEBPACK_IMPORTED_MODULE_10__.EditorContextKeys.writable,\n kbOpts: {\n kbExpr: _common_editorContextKeys_js__WEBPACK_IMPORTED_MODULE_10__.EditorContextKeys.textInputFocus,\n primary: 2048 /* KeyMod.CtrlCmd */ | 1024 /* KeyMod.Shift */ | 41 /* KeyCode.KeyK */,\n weight: 100 /* KeybindingWeight.EditorContrib */\n }\n });\n }\n run(_accessor, editor) {\n if (!editor.hasModel()) {\n return;\n }\n const ops = this._getLinesToRemove(editor);\n const model = editor.getModel();\n if (model.getLineCount() === 1 && model.getLineMaxColumn(1) === 1) {\n // Model is empty\n return;\n }\n let linesDeleted = 0;\n const edits = [];\n const cursorState = [];\n for (let i = 0, len = ops.length; i < len; i++) {\n const op = ops[i];\n let startLineNumber = op.startLineNumber;\n let endLineNumber = op.endLineNumber;\n let startColumn = 1;\n let endColumn = model.getLineMaxColumn(endLineNumber);\n if (endLineNumber < model.getLineCount()) {\n endLineNumber += 1;\n endColumn = 1;\n }\n else if (startLineNumber > 1) {\n startLineNumber -= 1;\n startColumn = model.getLineMaxColumn(startLineNumber);\n }\n edits.push(_common_core_editOperation_js__WEBPACK_IMPORTED_MODULE_6__.EditOperation.replace(new _common_core_selection_js__WEBPACK_IMPORTED_MODULE_9__.Selection(startLineNumber, startColumn, endLineNumber, endColumn), ''));\n cursorState.push(new _common_core_selection_js__WEBPACK_IMPORTED_MODULE_9__.Selection(startLineNumber - linesDeleted, op.positionColumn, startLineNumber - linesDeleted, op.positionColumn));\n linesDeleted += (op.endLineNumber - op.startLineNumber + 1);\n }\n editor.pushUndoStop();\n editor.executeEdits(this.id, edits, cursorState);\n editor.pushUndoStop();\n }\n _getLinesToRemove(editor) {\n // Construct delete operations\n const operations = editor.getSelections().map((s) => {\n let endLineNumber = s.endLineNumber;\n if (s.startLineNumber < s.endLineNumber && s.endColumn === 1) {\n endLineNumber -= 1;\n }\n return {\n startLineNumber: s.startLineNumber,\n selectionStartColumn: s.selectionStartColumn,\n endLineNumber: endLineNumber,\n positionColumn: s.positionColumn\n };\n });\n // Sort delete operations\n operations.sort((a, b) => {\n if (a.startLineNumber === b.startLineNumber) {\n return a.endLineNumber - b.endLineNumber;\n }\n return a.startLineNumber - b.startLineNumber;\n });\n // Merge delete operations which are adjacent or overlapping\n const mergedOperations = [];\n let previousOperation = operations[0];\n for (let i = 1; i < operations.length; i++) {\n if (previousOperation.endLineNumber + 1 >= operations[i].startLineNumber) {\n // Merge current operations into the previous one\n previousOperation.endLineNumber = operations[i].endLineNumber;\n }\n else {\n // Push previous operation\n mergedOperations.push(previousOperation);\n previousOperation = operations[i];\n }\n }\n // Push the last operation\n mergedOperations.push(previousOperation);\n return mergedOperations;\n }\n}\nclass IndentLinesAction extends _browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_2__.EditorAction {\n constructor() {\n super({\n id: 'editor.action.indentLines',\n label: _nls_js__WEBPACK_IMPORTED_MODULE_14__.localize('lines.indent', \"Indent Line\"),\n alias: 'Indent Line',\n precondition: _common_editorContextKeys_js__WEBPACK_IMPORTED_MODULE_10__.EditorContextKeys.writable,\n kbOpts: {\n kbExpr: _common_editorContextKeys_js__WEBPACK_IMPORTED_MODULE_10__.EditorContextKeys.editorTextFocus,\n primary: 2048 /* KeyMod.CtrlCmd */ | 94 /* KeyCode.BracketRight */,\n weight: 100 /* KeybindingWeight.EditorContrib */\n }\n });\n }\n run(_accessor, editor) {\n const viewModel = editor._getViewModel();\n if (!viewModel) {\n return;\n }\n editor.pushUndoStop();\n editor.executeCommands(this.id, _common_cursor_cursorTypeOperations_js__WEBPACK_IMPORTED_MODULE_5__.TypeOperations.indent(viewModel.cursorConfig, editor.getModel(), editor.getSelections()));\n editor.pushUndoStop();\n }\n}\nclass OutdentLinesAction extends _browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_2__.EditorAction {\n constructor() {\n super({\n id: 'editor.action.outdentLines',\n label: _nls_js__WEBPACK_IMPORTED_MODULE_14__.localize('lines.outdent', \"Outdent Line\"),\n alias: 'Outdent Line',\n precondition: _common_editorContextKeys_js__WEBPACK_IMPORTED_MODULE_10__.EditorContextKeys.writable,\n kbOpts: {\n kbExpr: _common_editorContextKeys_js__WEBPACK_IMPORTED_MODULE_10__.EditorContextKeys.editorTextFocus,\n primary: 2048 /* KeyMod.CtrlCmd */ | 92 /* KeyCode.BracketLeft */,\n weight: 100 /* KeybindingWeight.EditorContrib */\n }\n });\n }\n run(_accessor, editor) {\n _browser_coreCommands_js__WEBPACK_IMPORTED_MODULE_1__.CoreEditingCommands.Outdent.runEditorCommand(_accessor, editor, null);\n }\n}\nclass InsertLineBeforeAction extends _browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_2__.EditorAction {\n constructor() {\n super({\n id: 'editor.action.insertLineBefore',\n label: _nls_js__WEBPACK_IMPORTED_MODULE_14__.localize('lines.insertBefore', \"Insert Line Above\"),\n alias: 'Insert Line Above',\n precondition: _common_editorContextKeys_js__WEBPACK_IMPORTED_MODULE_10__.EditorContextKeys.writable,\n kbOpts: {\n kbExpr: _common_editorContextKeys_js__WEBPACK_IMPORTED_MODULE_10__.EditorContextKeys.editorTextFocus,\n primary: 2048 /* KeyMod.CtrlCmd */ | 1024 /* KeyMod.Shift */ | 3 /* KeyCode.Enter */,\n weight: 100 /* KeybindingWeight.EditorContrib */\n }\n });\n }\n run(_accessor, editor) {\n const viewModel = editor._getViewModel();\n if (!viewModel) {\n return;\n }\n editor.pushUndoStop();\n editor.executeCommands(this.id, _common_cursor_cursorTypeOperations_js__WEBPACK_IMPORTED_MODULE_5__.TypeOperations.lineInsertBefore(viewModel.cursorConfig, editor.getModel(), editor.getSelections()));\n }\n}\nclass InsertLineAfterAction extends _browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_2__.EditorAction {\n constructor() {\n super({\n id: 'editor.action.insertLineAfter',\n label: _nls_js__WEBPACK_IMPORTED_MODULE_14__.localize('lines.insertAfter', \"Insert Line Below\"),\n alias: 'Insert Line Below',\n precondition: _common_editorContextKeys_js__WEBPACK_IMPORTED_MODULE_10__.EditorContextKeys.writable,\n kbOpts: {\n kbExpr: _common_editorContextKeys_js__WEBPACK_IMPORTED_MODULE_10__.EditorContextKeys.editorTextFocus,\n primary: 2048 /* KeyMod.CtrlCmd */ | 3 /* KeyCode.Enter */,\n weight: 100 /* KeybindingWeight.EditorContrib */\n }\n });\n }\n run(_accessor, editor) {\n const viewModel = editor._getViewModel();\n if (!viewModel) {\n return;\n }\n editor.pushUndoStop();\n editor.executeCommands(this.id, _common_cursor_cursorTypeOperations_js__WEBPACK_IMPORTED_MODULE_5__.TypeOperations.lineInsertAfter(viewModel.cursorConfig, editor.getModel(), editor.getSelections()));\n }\n}\nclass AbstractDeleteAllToBoundaryAction extends _browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_2__.EditorAction {\n run(_accessor, editor) {\n if (!editor.hasModel()) {\n return;\n }\n const primaryCursor = editor.getSelection();\n const rangesToDelete = this._getRangesToDelete(editor);\n // merge overlapping selections\n const effectiveRanges = [];\n for (let i = 0, count = rangesToDelete.length - 1; i < count; i++) {\n const range = rangesToDelete[i];\n const nextRange = rangesToDelete[i + 1];\n if (_common_core_range_js__WEBPACK_IMPORTED_MODULE_8__.Range.intersectRanges(range, nextRange) === null) {\n effectiveRanges.push(range);\n }\n else {\n rangesToDelete[i + 1] = _common_core_range_js__WEBPACK_IMPORTED_MODULE_8__.Range.plusRange(range, nextRange);\n }\n }\n effectiveRanges.push(rangesToDelete[rangesToDelete.length - 1]);\n const endCursorState = this._getEndCursorState(primaryCursor, effectiveRanges);\n const edits = effectiveRanges.map(range => {\n return _common_core_editOperation_js__WEBPACK_IMPORTED_MODULE_6__.EditOperation.replace(range, '');\n });\n editor.pushUndoStop();\n editor.executeEdits(this.id, edits, endCursorState);\n editor.pushUndoStop();\n }\n}\nclass DeleteAllLeftAction extends AbstractDeleteAllToBoundaryAction {\n constructor() {\n super({\n id: 'deleteAllLeft',\n label: _nls_js__WEBPACK_IMPORTED_MODULE_14__.localize('lines.deleteAllLeft', \"Delete All Left\"),\n alias: 'Delete All Left',\n precondition: _common_editorContextKeys_js__WEBPACK_IMPORTED_MODULE_10__.EditorContextKeys.writable,\n kbOpts: {\n kbExpr: _common_editorContextKeys_js__WEBPACK_IMPORTED_MODULE_10__.EditorContextKeys.textInputFocus,\n primary: 0,\n mac: { primary: 2048 /* KeyMod.CtrlCmd */ | 1 /* KeyCode.Backspace */ },\n weight: 100 /* KeybindingWeight.EditorContrib */\n }\n });\n }\n _getEndCursorState(primaryCursor, rangesToDelete) {\n let endPrimaryCursor = null;\n const endCursorState = [];\n let deletedLines = 0;\n rangesToDelete.forEach(range => {\n let endCursor;\n if (range.endColumn === 1 && deletedLines > 0) {\n const newStartLine = range.startLineNumber - deletedLines;\n endCursor = new _common_core_selection_js__WEBPACK_IMPORTED_MODULE_9__.Selection(newStartLine, range.startColumn, newStartLine, range.startColumn);\n }\n else {\n endCursor = new _common_core_selection_js__WEBPACK_IMPORTED_MODULE_9__.Selection(range.startLineNumber, range.startColumn, range.startLineNumber, range.startColumn);\n }\n deletedLines += range.endLineNumber - range.startLineNumber;\n if (range.intersectRanges(primaryCursor)) {\n endPrimaryCursor = endCursor;\n }\n else {\n endCursorState.push(endCursor);\n }\n });\n if (endPrimaryCursor) {\n endCursorState.unshift(endPrimaryCursor);\n }\n return endCursorState;\n }\n _getRangesToDelete(editor) {\n const selections = editor.getSelections();\n if (selections === null) {\n return [];\n }\n let rangesToDelete = selections;\n const model = editor.getModel();\n if (model === null) {\n return [];\n }\n rangesToDelete.sort(_common_core_range_js__WEBPACK_IMPORTED_MODULE_8__.Range.compareRangesUsingStarts);\n rangesToDelete = rangesToDelete.map(selection => {\n if (selection.isEmpty()) {\n if (selection.startColumn === 1) {\n const deleteFromLine = Math.max(1, selection.startLineNumber - 1);\n const deleteFromColumn = selection.startLineNumber === 1 ? 1 : model.getLineLength(deleteFromLine) + 1;\n return new _common_core_range_js__WEBPACK_IMPORTED_MODULE_8__.Range(deleteFromLine, deleteFromColumn, selection.startLineNumber, 1);\n }\n else {\n return new _common_core_range_js__WEBPACK_IMPORTED_MODULE_8__.Range(selection.startLineNumber, 1, selection.startLineNumber, selection.startColumn);\n }\n }\n else {\n return new _common_core_range_js__WEBPACK_IMPORTED_MODULE_8__.Range(selection.startLineNumber, 1, selection.endLineNumber, selection.endColumn);\n }\n });\n return rangesToDelete;\n }\n}\nclass DeleteAllRightAction extends AbstractDeleteAllToBoundaryAction {\n constructor() {\n super({\n id: 'deleteAllRight',\n label: _nls_js__WEBPACK_IMPORTED_MODULE_14__.localize('lines.deleteAllRight', \"Delete All Right\"),\n alias: 'Delete All Right',\n precondition: _common_editorContextKeys_js__WEBPACK_IMPORTED_MODULE_10__.EditorContextKeys.writable,\n kbOpts: {\n kbExpr: _common_editorContextKeys_js__WEBPACK_IMPORTED_MODULE_10__.EditorContextKeys.textInputFocus,\n primary: 0,\n mac: { primary: 256 /* KeyMod.WinCtrl */ | 41 /* KeyCode.KeyK */, secondary: [2048 /* KeyMod.CtrlCmd */ | 20 /* KeyCode.Delete */] },\n weight: 100 /* KeybindingWeight.EditorContrib */\n }\n });\n }\n _getEndCursorState(primaryCursor, rangesToDelete) {\n let endPrimaryCursor = null;\n const endCursorState = [];\n for (let i = 0, len = rangesToDelete.length, offset = 0; i < len; i++) {\n const range = rangesToDelete[i];\n const endCursor = new _common_core_selection_js__WEBPACK_IMPORTED_MODULE_9__.Selection(range.startLineNumber - offset, range.startColumn, range.startLineNumber - offset, range.startColumn);\n if (range.intersectRanges(primaryCursor)) {\n endPrimaryCursor = endCursor;\n }\n else {\n endCursorState.push(endCursor);\n }\n }\n if (endPrimaryCursor) {\n endCursorState.unshift(endPrimaryCursor);\n }\n return endCursorState;\n }\n _getRangesToDelete(editor) {\n const model = editor.getModel();\n if (model === null) {\n return [];\n }\n const selections = editor.getSelections();\n if (selections === null) {\n return [];\n }\n const rangesToDelete = selections.map((sel) => {\n if (sel.isEmpty()) {\n const maxColumn = model.getLineMaxColumn(sel.startLineNumber);\n if (sel.startColumn === maxColumn) {\n return new _common_core_range_js__WEBPACK_IMPORTED_MODULE_8__.Range(sel.startLineNumber, sel.startColumn, sel.startLineNumber + 1, 1);\n }\n else {\n return new _common_core_range_js__WEBPACK_IMPORTED_MODULE_8__.Range(sel.startLineNumber, sel.startColumn, sel.startLineNumber, maxColumn);\n }\n }\n return sel;\n });\n rangesToDelete.sort(_common_core_range_js__WEBPACK_IMPORTED_MODULE_8__.Range.compareRangesUsingStarts);\n return rangesToDelete;\n }\n}\nclass JoinLinesAction extends _browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_2__.EditorAction {\n constructor() {\n super({\n id: 'editor.action.joinLines',\n label: _nls_js__WEBPACK_IMPORTED_MODULE_14__.localize('lines.joinLines', \"Join Lines\"),\n alias: 'Join Lines',\n precondition: _common_editorContextKeys_js__WEBPACK_IMPORTED_MODULE_10__.EditorContextKeys.writable,\n kbOpts: {\n kbExpr: _common_editorContextKeys_js__WEBPACK_IMPORTED_MODULE_10__.EditorContextKeys.editorTextFocus,\n primary: 0,\n mac: { primary: 256 /* KeyMod.WinCtrl */ | 40 /* KeyCode.KeyJ */ },\n weight: 100 /* KeybindingWeight.EditorContrib */\n }\n });\n }\n run(_accessor, editor) {\n const selections = editor.getSelections();\n if (selections === null) {\n return;\n }\n let primaryCursor = editor.getSelection();\n if (primaryCursor === null) {\n return;\n }\n selections.sort(_common_core_range_js__WEBPACK_IMPORTED_MODULE_8__.Range.compareRangesUsingStarts);\n const reducedSelections = [];\n const lastSelection = selections.reduce((previousValue, currentValue) => {\n if (previousValue.isEmpty()) {\n if (previousValue.endLineNumber === currentValue.startLineNumber) {\n if (primaryCursor.equalsSelection(previousValue)) {\n primaryCursor = currentValue;\n }\n return currentValue;\n }\n if (currentValue.startLineNumber > previousValue.endLineNumber + 1) {\n reducedSelections.push(previousValue);\n return currentValue;\n }\n else {\n return new _common_core_selection_js__WEBPACK_IMPORTED_MODULE_9__.Selection(previousValue.startLineNumber, previousValue.startColumn, currentValue.endLineNumber, currentValue.endColumn);\n }\n }\n else {\n if (currentValue.startLineNumber > previousValue.endLineNumber) {\n reducedSelections.push(previousValue);\n return currentValue;\n }\n else {\n return new _common_core_selection_js__WEBPACK_IMPORTED_MODULE_9__.Selection(previousValue.startLineNumber, previousValue.startColumn, currentValue.endLineNumber, currentValue.endColumn);\n }\n }\n });\n reducedSelections.push(lastSelection);\n const model = editor.getModel();\n if (model === null) {\n return;\n }\n const edits = [];\n const endCursorState = [];\n let endPrimaryCursor = primaryCursor;\n let lineOffset = 0;\n for (let i = 0, len = reducedSelections.length; i < len; i++) {\n const selection = reducedSelections[i];\n const startLineNumber = selection.startLineNumber;\n const startColumn = 1;\n let columnDeltaOffset = 0;\n let endLineNumber, endColumn;\n const selectionEndPositionOffset = model.getLineLength(selection.endLineNumber) - selection.endColumn;\n if (selection.isEmpty() || selection.startLineNumber === selection.endLineNumber) {\n const position = selection.getStartPosition();\n if (position.lineNumber < model.getLineCount()) {\n endLineNumber = startLineNumber + 1;\n endColumn = model.getLineMaxColumn(endLineNumber);\n }\n else {\n endLineNumber = position.lineNumber;\n endColumn = model.getLineMaxColumn(position.lineNumber);\n }\n }\n else {\n endLineNumber = selection.endLineNumber;\n endColumn = model.getLineMaxColumn(endLineNumber);\n }\n let trimmedLinesContent = model.getLineContent(startLineNumber);\n for (let i = startLineNumber + 1; i <= endLineNumber; i++) {\n const lineText = model.getLineContent(i);\n const firstNonWhitespaceIdx = model.getLineFirstNonWhitespaceColumn(i);\n if (firstNonWhitespaceIdx >= 1) {\n let insertSpace = true;\n if (trimmedLinesContent === '') {\n insertSpace = false;\n }\n if (insertSpace && (trimmedLinesContent.charAt(trimmedLinesContent.length - 1) === ' ' ||\n trimmedLinesContent.charAt(trimmedLinesContent.length - 1) === '\\t')) {\n insertSpace = false;\n trimmedLinesContent = trimmedLinesContent.replace(/[\\s\\uFEFF\\xA0]+$/g, ' ');\n }\n const lineTextWithoutIndent = lineText.substr(firstNonWhitespaceIdx - 1);\n trimmedLinesContent += (insertSpace ? ' ' : '') + lineTextWithoutIndent;\n if (insertSpace) {\n columnDeltaOffset = lineTextWithoutIndent.length + 1;\n }\n else {\n columnDeltaOffset = lineTextWithoutIndent.length;\n }\n }\n else {\n columnDeltaOffset = 0;\n }\n }\n const deleteSelection = new _common_core_range_js__WEBPACK_IMPORTED_MODULE_8__.Range(startLineNumber, startColumn, endLineNumber, endColumn);\n if (!deleteSelection.isEmpty()) {\n let resultSelection;\n if (selection.isEmpty()) {\n edits.push(_common_core_editOperation_js__WEBPACK_IMPORTED_MODULE_6__.EditOperation.replace(deleteSelection, trimmedLinesContent));\n resultSelection = new _common_core_selection_js__WEBPACK_IMPORTED_MODULE_9__.Selection(deleteSelection.startLineNumber - lineOffset, trimmedLinesContent.length - columnDeltaOffset + 1, startLineNumber - lineOffset, trimmedLinesContent.length - columnDeltaOffset + 1);\n }\n else {\n if (selection.startLineNumber === selection.endLineNumber) {\n edits.push(_common_core_editOperation_js__WEBPACK_IMPORTED_MODULE_6__.EditOperation.replace(deleteSelection, trimmedLinesContent));\n resultSelection = new _common_core_selection_js__WEBPACK_IMPORTED_MODULE_9__.Selection(selection.startLineNumber - lineOffset, selection.startColumn, selection.endLineNumber - lineOffset, selection.endColumn);\n }\n else {\n edits.push(_common_core_editOperation_js__WEBPACK_IMPORTED_MODULE_6__.EditOperation.replace(deleteSelection, trimmedLinesContent));\n resultSelection = new _common_core_selection_js__WEBPACK_IMPORTED_MODULE_9__.Selection(selection.startLineNumber - lineOffset, selection.startColumn, selection.startLineNumber - lineOffset, trimmedLinesContent.length - selectionEndPositionOffset);\n }\n }\n if (_common_core_range_js__WEBPACK_IMPORTED_MODULE_8__.Range.intersectRanges(deleteSelection, primaryCursor) !== null) {\n endPrimaryCursor = resultSelection;\n }\n else {\n endCursorState.push(resultSelection);\n }\n }\n lineOffset += deleteSelection.endLineNumber - deleteSelection.startLineNumber;\n }\n endCursorState.unshift(endPrimaryCursor);\n editor.pushUndoStop();\n editor.executeEdits(this.id, edits, endCursorState);\n editor.pushUndoStop();\n }\n}\nclass TransposeAction extends _browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_2__.EditorAction {\n constructor() {\n super({\n id: 'editor.action.transpose',\n label: _nls_js__WEBPACK_IMPORTED_MODULE_14__.localize('editor.transpose', \"Transpose Characters around the Cursor\"),\n alias: 'Transpose Characters around the Cursor',\n precondition: _common_editorContextKeys_js__WEBPACK_IMPORTED_MODULE_10__.EditorContextKeys.writable\n });\n }\n run(_accessor, editor) {\n const selections = editor.getSelections();\n if (selections === null) {\n return;\n }\n const model = editor.getModel();\n if (model === null) {\n return;\n }\n const commands = [];\n for (let i = 0, len = selections.length; i < len; i++) {\n const selection = selections[i];\n if (!selection.isEmpty()) {\n continue;\n }\n const cursor = selection.getStartPosition();\n const maxColumn = model.getLineMaxColumn(cursor.lineNumber);\n if (cursor.column >= maxColumn) {\n if (cursor.lineNumber === model.getLineCount()) {\n continue;\n }\n // The cursor is at the end of current line and current line is not empty\n // then we transpose the character before the cursor and the line break if there is any following line.\n const deleteSelection = new _common_core_range_js__WEBPACK_IMPORTED_MODULE_8__.Range(cursor.lineNumber, Math.max(1, cursor.column - 1), cursor.lineNumber + 1, 1);\n const chars = model.getValueInRange(deleteSelection).split('').reverse().join('');\n commands.push(new _common_commands_replaceCommand_js__WEBPACK_IMPORTED_MODULE_3__.ReplaceCommand(new _common_core_selection_js__WEBPACK_IMPORTED_MODULE_9__.Selection(cursor.lineNumber, Math.max(1, cursor.column - 1), cursor.lineNumber + 1, 1), chars));\n }\n else {\n const deleteSelection = new _common_core_range_js__WEBPACK_IMPORTED_MODULE_8__.Range(cursor.lineNumber, Math.max(1, cursor.column - 1), cursor.lineNumber, cursor.column + 1);\n const chars = model.getValueInRange(deleteSelection).split('').reverse().join('');\n commands.push(new _common_commands_replaceCommand_js__WEBPACK_IMPORTED_MODULE_3__.ReplaceCommandThatPreservesSelection(deleteSelection, chars, new _common_core_selection_js__WEBPACK_IMPORTED_MODULE_9__.Selection(cursor.lineNumber, cursor.column + 1, cursor.lineNumber, cursor.column + 1)));\n }\n }\n editor.pushUndoStop();\n editor.executeCommands(this.id, commands);\n editor.pushUndoStop();\n }\n}\nclass AbstractCaseAction extends _browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_2__.EditorAction {\n run(_accessor, editor) {\n const selections = editor.getSelections();\n if (selections === null) {\n return;\n }\n const model = editor.getModel();\n if (model === null) {\n return;\n }\n const wordSeparators = editor.getOption(130 /* EditorOption.wordSeparators */);\n const textEdits = [];\n for (const selection of selections) {\n if (selection.isEmpty()) {\n const cursor = selection.getStartPosition();\n const word = editor.getConfiguredWordAtPosition(cursor);\n if (!word) {\n continue;\n }\n const wordRange = new _common_core_range_js__WEBPACK_IMPORTED_MODULE_8__.Range(cursor.lineNumber, word.startColumn, cursor.lineNumber, word.endColumn);\n const text = model.getValueInRange(wordRange);\n textEdits.push(_common_core_editOperation_js__WEBPACK_IMPORTED_MODULE_6__.EditOperation.replace(wordRange, this._modifyText(text, wordSeparators)));\n }\n else {\n const text = model.getValueInRange(selection);\n textEdits.push(_common_core_editOperation_js__WEBPACK_IMPORTED_MODULE_6__.EditOperation.replace(selection, this._modifyText(text, wordSeparators)));\n }\n }\n editor.pushUndoStop();\n editor.executeEdits(this.id, textEdits);\n editor.pushUndoStop();\n }\n}\nclass UpperCaseAction extends AbstractCaseAction {\n constructor() {\n super({\n id: 'editor.action.transformToUppercase',\n label: _nls_js__WEBPACK_IMPORTED_MODULE_14__.localize('editor.transformToUppercase', \"Transform to Uppercase\"),\n alias: 'Transform to Uppercase',\n precondition: _common_editorContextKeys_js__WEBPACK_IMPORTED_MODULE_10__.EditorContextKeys.writable\n });\n }\n _modifyText(text, wordSeparators) {\n return text.toLocaleUpperCase();\n }\n}\nclass LowerCaseAction extends AbstractCaseAction {\n constructor() {\n super({\n id: 'editor.action.transformToLowercase',\n label: _nls_js__WEBPACK_IMPORTED_MODULE_14__.localize('editor.transformToLowercase', \"Transform to Lowercase\"),\n alias: 'Transform to Lowercase',\n precondition: _common_editorContextKeys_js__WEBPACK_IMPORTED_MODULE_10__.EditorContextKeys.writable\n });\n }\n _modifyText(text, wordSeparators) {\n return text.toLocaleLowerCase();\n }\n}\nclass BackwardsCompatibleRegExp {\n constructor(_pattern, _flags) {\n this._pattern = _pattern;\n this._flags = _flags;\n this._actual = null;\n this._evaluated = false;\n }\n get() {\n if (!this._evaluated) {\n this._evaluated = true;\n try {\n this._actual = new RegExp(this._pattern, this._flags);\n }\n catch (err) {\n // this browser does not support this regular expression\n }\n }\n return this._actual;\n }\n isSupported() {\n return (this.get() !== null);\n }\n}\nclass TitleCaseAction extends AbstractCaseAction {\n constructor() {\n super({\n id: 'editor.action.transformToTitlecase',\n label: _nls_js__WEBPACK_IMPORTED_MODULE_14__.localize('editor.transformToTitlecase', \"Transform to Title Case\"),\n alias: 'Transform to Title Case',\n precondition: _common_editorContextKeys_js__WEBPACK_IMPORTED_MODULE_10__.EditorContextKeys.writable\n });\n }\n _modifyText(text, wordSeparators) {\n const titleBoundary = TitleCaseAction.titleBoundary.get();\n if (!titleBoundary) {\n // cannot support this\n return text;\n }\n return text\n .toLocaleLowerCase()\n .replace(titleBoundary, (b) => b.toLocaleUpperCase());\n }\n}\nTitleCaseAction.titleBoundary = new BackwardsCompatibleRegExp('(^|[^\\\\p{L}\\\\p{N}\\']|((^|\\\\P{L})\\'))\\\\p{L}', 'gmu');\nclass SnakeCaseAction extends AbstractCaseAction {\n constructor() {\n super({\n id: 'editor.action.transformToSnakecase',\n label: _nls_js__WEBPACK_IMPORTED_MODULE_14__.localize('editor.transformToSnakecase', \"Transform to Snake Case\"),\n alias: 'Transform to Snake Case',\n precondition: _common_editorContextKeys_js__WEBPACK_IMPORTED_MODULE_10__.EditorContextKeys.writable\n });\n }\n _modifyText(text, wordSeparators) {\n const caseBoundary = SnakeCaseAction.caseBoundary.get();\n const singleLetters = SnakeCaseAction.singleLetters.get();\n if (!caseBoundary || !singleLetters) {\n // cannot support this\n return text;\n }\n return (text\n .replace(caseBoundary, '$1_$2')\n .replace(singleLetters, '$1_$2$3')\n .toLocaleLowerCase());\n }\n}\nSnakeCaseAction.caseBoundary = new BackwardsCompatibleRegExp('(\\\\p{Ll})(\\\\p{Lu})', 'gmu');\nSnakeCaseAction.singleLetters = new BackwardsCompatibleRegExp('(\\\\p{Lu}|\\\\p{N})(\\\\p{Lu})(\\\\p{Ll})', 'gmu');\nclass CamelCaseAction extends AbstractCaseAction {\n constructor() {\n super({\n id: 'editor.action.transformToCamelcase',\n label: _nls_js__WEBPACK_IMPORTED_MODULE_14__.localize('editor.transformToCamelcase', \"Transform to Camel Case\"),\n alias: 'Transform to Camel Case',\n precondition: _common_editorContextKeys_js__WEBPACK_IMPORTED_MODULE_10__.EditorContextKeys.writable\n });\n }\n _modifyText(text, wordSeparators) {\n const wordBoundary = CamelCaseAction.wordBoundary.get();\n if (!wordBoundary) {\n // cannot support this\n return text;\n }\n const words = text.split(wordBoundary);\n const firstWord = words.shift();\n return firstWord + words.map((word) => word.substring(0, 1).toLocaleUpperCase() + word.substring(1))\n .join('');\n }\n}\nCamelCaseAction.wordBoundary = new BackwardsCompatibleRegExp('[_\\\\s-]', 'gm');\nclass KebabCaseAction extends AbstractCaseAction {\n static isSupported() {\n const areAllRegexpsSupported = [\n this.caseBoundary,\n this.singleLetters,\n this.underscoreBoundary,\n ].every((regexp) => regexp.isSupported());\n return areAllRegexpsSupported;\n }\n constructor() {\n super({\n id: 'editor.action.transformToKebabcase',\n label: _nls_js__WEBPACK_IMPORTED_MODULE_14__.localize('editor.transformToKebabcase', 'Transform to Kebab Case'),\n alias: 'Transform to Kebab Case',\n precondition: _common_editorContextKeys_js__WEBPACK_IMPORTED_MODULE_10__.EditorContextKeys.writable\n });\n }\n _modifyText(text, _) {\n const caseBoundary = KebabCaseAction.caseBoundary.get();\n const singleLetters = KebabCaseAction.singleLetters.get();\n const underscoreBoundary = KebabCaseAction.underscoreBoundary.get();\n if (!caseBoundary || !singleLetters || !underscoreBoundary) {\n // one or more regexps aren't supported\n return text;\n }\n return text\n .replace(underscoreBoundary, '$1-$3')\n .replace(caseBoundary, '$1-$2')\n .replace(singleLetters, '$1-$2')\n .toLocaleLowerCase();\n }\n}\nKebabCaseAction.caseBoundary = new BackwardsCompatibleRegExp('(\\\\p{Ll})(\\\\p{Lu})', 'gmu');\nKebabCaseAction.singleLetters = new BackwardsCompatibleRegExp('(\\\\p{Lu}|\\\\p{N})(\\\\p{Lu}\\\\p{Ll})', 'gmu');\nKebabCaseAction.underscoreBoundary = new BackwardsCompatibleRegExp('(\\\\S)(_)(\\\\S)', 'gm');\n(0,_browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_2__.registerEditorAction)(CopyLinesUpAction);\n(0,_browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_2__.registerEditorAction)(CopyLinesDownAction);\n(0,_browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_2__.registerEditorAction)(DuplicateSelectionAction);\n(0,_browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_2__.registerEditorAction)(MoveLinesUpAction);\n(0,_browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_2__.registerEditorAction)(MoveLinesDownAction);\n(0,_browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_2__.registerEditorAction)(SortLinesAscendingAction);\n(0,_browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_2__.registerEditorAction)(SortLinesDescendingAction);\n(0,_browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_2__.registerEditorAction)(DeleteDuplicateLinesAction);\n(0,_browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_2__.registerEditorAction)(TrimTrailingWhitespaceAction);\n(0,_browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_2__.registerEditorAction)(DeleteLinesAction);\n(0,_browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_2__.registerEditorAction)(IndentLinesAction);\n(0,_browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_2__.registerEditorAction)(OutdentLinesAction);\n(0,_browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_2__.registerEditorAction)(InsertLineBeforeAction);\n(0,_browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_2__.registerEditorAction)(InsertLineAfterAction);\n(0,_browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_2__.registerEditorAction)(DeleteAllLeftAction);\n(0,_browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_2__.registerEditorAction)(DeleteAllRightAction);\n(0,_browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_2__.registerEditorAction)(JoinLinesAction);\n(0,_browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_2__.registerEditorAction)(TransposeAction);\n(0,_browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_2__.registerEditorAction)(UpperCaseAction);\n(0,_browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_2__.registerEditorAction)(LowerCaseAction);\nif (SnakeCaseAction.caseBoundary.isSupported() && SnakeCaseAction.singleLetters.isSupported()) {\n (0,_browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_2__.registerEditorAction)(SnakeCaseAction);\n}\nif (CamelCaseAction.wordBoundary.isSupported()) {\n (0,_browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_2__.registerEditorAction)(CamelCaseAction);\n}\nif (TitleCaseAction.titleBoundary.isSupported()) {\n (0,_browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_2__.registerEditorAction)(TitleCaseAction);\n}\nif (KebabCaseAction.isSupported()) {\n (0,_browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_2__.registerEditorAction)(KebabCaseAction);\n}\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/contrib/linesOperations/browser/linesOperations.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/contrib/linesOperations/browser/moveLinesCommand.js":
/*!******************************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/contrib/linesOperations/browser/moveLinesCommand.js ***!
\******************************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ MoveLinesCommand: () => (/* binding */ MoveLinesCommand)\n/* harmony export */ });\n/* harmony import */ var _base_common_strings_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../../base/common/strings.js */ \"./node_modules/monaco-editor/esm/vs/base/common/strings.js\");\n/* harmony import */ var _common_commands_shiftCommand_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../common/commands/shiftCommand.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/commands/shiftCommand.js\");\n/* harmony import */ var _common_core_range_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../common/core/range.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/core/range.js\");\n/* harmony import */ var _common_core_selection_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../../common/core/selection.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/core/selection.js\");\n/* harmony import */ var _common_languages_languageConfiguration_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../../common/languages/languageConfiguration.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/languages/languageConfiguration.js\");\n/* harmony import */ var _common_languages_languageConfigurationRegistry_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../../../common/languages/languageConfigurationRegistry.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/languages/languageConfigurationRegistry.js\");\n/* harmony import */ var _indentation_browser_indentUtils_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../../indentation/browser/indentUtils.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/indentation/browser/indentUtils.js\");\n/* harmony import */ var _common_languages_autoIndent_js__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ../../../common/languages/autoIndent.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/languages/autoIndent.js\");\n/* harmony import */ var _common_languages_enterAction_js__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ../../../common/languages/enterAction.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/languages/enterAction.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\nvar __decorate = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\n return c > 3 && r && Object.defineProperty(target, key, r), r;\n};\nvar __param = (undefined && undefined.__param) || function (paramIndex, decorator) {\n return function (target, key) { decorator(target, key, paramIndex); }\n};\n\n\n\n\n\n\n\n\n\nlet MoveLinesCommand = class MoveLinesCommand {\n constructor(selection, isMovingDown, autoIndent, _languageConfigurationService) {\n this._languageConfigurationService = _languageConfigurationService;\n this._selection = selection;\n this._isMovingDown = isMovingDown;\n this._autoIndent = autoIndent;\n this._selectionId = null;\n this._moveEndLineSelectionShrink = false;\n }\n getEditOperations(model, builder) {\n const modelLineCount = model.getLineCount();\n if (this._isMovingDown && this._selection.endLineNumber === modelLineCount) {\n this._selectionId = builder.trackSelection(this._selection);\n return;\n }\n if (!this._isMovingDown && this._selection.startLineNumber === 1) {\n this._selectionId = builder.trackSelection(this._selection);\n return;\n }\n this._moveEndPositionDown = false;\n let s = this._selection;\n if (s.startLineNumber < s.endLineNumber && s.endColumn === 1) {\n this._moveEndPositionDown = true;\n s = s.setEndPosition(s.endLineNumber - 1, model.getLineMaxColumn(s.endLineNumber - 1));\n }\n const { tabSize, indentSize, insertSpaces } = model.getOptions();\n const indentConverter = this.buildIndentConverter(tabSize, indentSize, insertSpaces);\n const virtualModel = {\n tokenization: {\n getLineTokens: (lineNumber) => {\n return model.tokenization.getLineTokens(lineNumber);\n },\n getLanguageId: () => {\n return model.getLanguageId();\n },\n getLanguageIdAtPosition: (lineNumber, column) => {\n return model.getLanguageIdAtPosition(lineNumber, column);\n },\n },\n getLineContent: null,\n };\n if (s.startLineNumber === s.endLineNumber && model.getLineMaxColumn(s.startLineNumber) === 1) {\n // Current line is empty\n const lineNumber = s.startLineNumber;\n const otherLineNumber = (this._isMovingDown ? lineNumber + 1 : lineNumber - 1);\n if (model.getLineMaxColumn(otherLineNumber) === 1) {\n // Other line number is empty too, so no editing is needed\n // Add a no-op to force running by the model\n builder.addEditOperation(new _common_core_range_js__WEBPACK_IMPORTED_MODULE_2__.Range(1, 1, 1, 1), null);\n }\n else {\n // Type content from other line number on line number\n builder.addEditOperation(new _common_core_range_js__WEBPACK_IMPORTED_MODULE_2__.Range(lineNumber, 1, lineNumber, 1), model.getLineContent(otherLineNumber));\n // Remove content from other line number\n builder.addEditOperation(new _common_core_range_js__WEBPACK_IMPORTED_MODULE_2__.Range(otherLineNumber, 1, otherLineNumber, model.getLineMaxColumn(otherLineNumber)), null);\n }\n // Track selection at the other line number\n s = new _common_core_selection_js__WEBPACK_IMPORTED_MODULE_3__.Selection(otherLineNumber, 1, otherLineNumber, 1);\n }\n else {\n let movingLineNumber;\n let movingLineText;\n if (this._isMovingDown) {\n movingLineNumber = s.endLineNumber + 1;\n movingLineText = model.getLineContent(movingLineNumber);\n // Delete line that needs to be moved\n builder.addEditOperation(new _common_core_range_js__WEBPACK_IMPORTED_MODULE_2__.Range(movingLineNumber - 1, model.getLineMaxColumn(movingLineNumber - 1), movingLineNumber, model.getLineMaxColumn(movingLineNumber)), null);\n let insertingText = movingLineText;\n if (this.shouldAutoIndent(model, s)) {\n const movingLineMatchResult = this.matchEnterRule(model, indentConverter, tabSize, movingLineNumber, s.startLineNumber - 1);\n // if s.startLineNumber - 1 matches onEnter rule, we still honor that.\n if (movingLineMatchResult !== null) {\n const oldIndentation = _base_common_strings_js__WEBPACK_IMPORTED_MODULE_0__.getLeadingWhitespace(model.getLineContent(movingLineNumber));\n const newSpaceCnt = movingLineMatchResult + _indentation_browser_indentUtils_js__WEBPACK_IMPORTED_MODULE_6__.getSpaceCnt(oldIndentation, tabSize);\n const newIndentation = _indentation_browser_indentUtils_js__WEBPACK_IMPORTED_MODULE_6__.generateIndent(newSpaceCnt, tabSize, insertSpaces);\n insertingText = newIndentation + this.trimStart(movingLineText);\n }\n else {\n // no enter rule matches, let's check indentatin rules then.\n virtualModel.getLineContent = (lineNumber) => {\n if (lineNumber === s.startLineNumber) {\n return model.getLineContent(movingLineNumber);\n }\n else {\n return model.getLineContent(lineNumber);\n }\n };\n const indentOfMovingLine = (0,_common_languages_autoIndent_js__WEBPACK_IMPORTED_MODULE_7__.getGoodIndentForLine)(this._autoIndent, virtualModel, model.getLanguageIdAtPosition(movingLineNumber, 1), s.startLineNumber, indentConverter, this._languageConfigurationService);\n if (indentOfMovingLine !== null) {\n const oldIndentation = _base_common_strings_js__WEBPACK_IMPORTED_MODULE_0__.getLeadingWhitespace(model.getLineContent(movingLineNumber));\n const newSpaceCnt = _indentation_browser_indentUtils_js__WEBPACK_IMPORTED_MODULE_6__.getSpaceCnt(indentOfMovingLine, tabSize);\n const oldSpaceCnt = _indentation_browser_indentUtils_js__WEBPACK_IMPORTED_MODULE_6__.getSpaceCnt(oldIndentation, tabSize);\n if (newSpaceCnt !== oldSpaceCnt) {\n const newIndentation = _indentation_browser_indentUtils_js__WEBPACK_IMPORTED_MODULE_6__.generateIndent(newSpaceCnt, tabSize, insertSpaces);\n insertingText = newIndentation + this.trimStart(movingLineText);\n }\n }\n }\n // add edit operations for moving line first to make sure it's executed after we make indentation change\n // to s.startLineNumber\n builder.addEditOperation(new _common_core_range_js__WEBPACK_IMPORTED_MODULE_2__.Range(s.startLineNumber, 1, s.startLineNumber, 1), insertingText + '\\n');\n const ret = this.matchEnterRuleMovingDown(model, indentConverter, tabSize, s.startLineNumber, movingLineNumber, insertingText);\n // check if the line being moved before matches onEnter rules, if so let's adjust the indentation by onEnter rules.\n if (ret !== null) {\n if (ret !== 0) {\n this.getIndentEditsOfMovingBlock(model, builder, s, tabSize, insertSpaces, ret);\n }\n }\n else {\n // it doesn't match onEnter rules, let's check indentation rules then.\n virtualModel.getLineContent = (lineNumber) => {\n if (lineNumber === s.startLineNumber) {\n return insertingText;\n }\n else if (lineNumber >= s.startLineNumber + 1 && lineNumber <= s.endLineNumber + 1) {\n return model.getLineContent(lineNumber - 1);\n }\n else {\n return model.getLineContent(lineNumber);\n }\n };\n const newIndentatOfMovingBlock = (0,_common_languages_autoIndent_js__WEBPACK_IMPORTED_MODULE_7__.getGoodIndentForLine)(this._autoIndent, virtualModel, model.getLanguageIdAtPosition(movingLineNumber, 1), s.startLineNumber + 1, indentConverter, this._languageConfigurationService);\n if (newIndentatOfMovingBlock !== null) {\n const oldIndentation = _base_common_strings_js__WEBPACK_IMPORTED_MODULE_0__.getLeadingWhitespace(model.getLineContent(s.startLineNumber));\n const newSpaceCnt = _indentation_browser_indentUtils_js__WEBPACK_IMPORTED_MODULE_6__.getSpaceCnt(newIndentatOfMovingBlock, tabSize);\n const oldSpaceCnt = _indentation_browser_indentUtils_js__WEBPACK_IMPORTED_MODULE_6__.getSpaceCnt(oldIndentation, tabSize);\n if (newSpaceCnt !== oldSpaceCnt) {\n const spaceCntOffset = newSpaceCnt - oldSpaceCnt;\n this.getIndentEditsOfMovingBlock(model, builder, s, tabSize, insertSpaces, spaceCntOffset);\n }\n }\n }\n }\n else {\n // Insert line that needs to be moved before\n builder.addEditOperation(new _common_core_range_js__WEBPACK_IMPORTED_MODULE_2__.Range(s.startLineNumber, 1, s.startLineNumber, 1), insertingText + '\\n');\n }\n }\n else {\n movingLineNumber = s.startLineNumber - 1;\n movingLineText = model.getLineContent(movingLineNumber);\n // Delete line that needs to be moved\n builder.addEditOperation(new _common_core_range_js__WEBPACK_IMPORTED_MODULE_2__.Range(movingLineNumber, 1, movingLineNumber + 1, 1), null);\n // Insert line that needs to be moved after\n builder.addEditOperation(new _common_core_range_js__WEBPACK_IMPORTED_MODULE_2__.Range(s.endLineNumber, model.getLineMaxColumn(s.endLineNumber), s.endLineNumber, model.getLineMaxColumn(s.endLineNumber)), '\\n' + movingLineText);\n if (this.shouldAutoIndent(model, s)) {\n virtualModel.getLineContent = (lineNumber) => {\n if (lineNumber === movingLineNumber) {\n return model.getLineContent(s.startLineNumber);\n }\n else {\n return model.getLineContent(lineNumber);\n }\n };\n const ret = this.matchEnterRule(model, indentConverter, tabSize, s.startLineNumber, s.startLineNumber - 2);\n // check if s.startLineNumber - 2 matches onEnter rules, if so adjust the moving block by onEnter rules.\n if (ret !== null) {\n if (ret !== 0) {\n this.getIndentEditsOfMovingBlock(model, builder, s, tabSize, insertSpaces, ret);\n }\n }\n else {\n // it doesn't match any onEnter rule, let's check indentation rules then.\n const indentOfFirstLine = (0,_common_languages_autoIndent_js__WEBPACK_IMPORTED_MODULE_7__.getGoodIndentForLine)(this._autoIndent, virtualModel, model.getLanguageIdAtPosition(s.startLineNumber, 1), movingLineNumber, indentConverter, this._languageConfigurationService);\n if (indentOfFirstLine !== null) {\n // adjust the indentation of the moving block\n const oldIndent = _base_common_strings_js__WEBPACK_IMPORTED_MODULE_0__.getLeadingWhitespace(model.getLineContent(s.startLineNumber));\n const newSpaceCnt = _indentation_browser_indentUtils_js__WEBPACK_IMPORTED_MODULE_6__.getSpaceCnt(indentOfFirstLine, tabSize);\n const oldSpaceCnt = _indentation_browser_indentUtils_js__WEBPACK_IMPORTED_MODULE_6__.getSpaceCnt(oldIndent, tabSize);\n if (newSpaceCnt !== oldSpaceCnt) {\n const spaceCntOffset = newSpaceCnt - oldSpaceCnt;\n this.getIndentEditsOfMovingBlock(model, builder, s, tabSize, insertSpaces, spaceCntOffset);\n }\n }\n }\n }\n }\n }\n this._selectionId = builder.trackSelection(s);\n }\n buildIndentConverter(tabSize, indentSize, insertSpaces) {\n return {\n shiftIndent: (indentation) => {\n return _common_commands_shiftCommand_js__WEBPACK_IMPORTED_MODULE_1__.ShiftCommand.shiftIndent(indentation, indentation.length + 1, tabSize, indentSize, insertSpaces);\n },\n unshiftIndent: (indentation) => {\n return _common_commands_shiftCommand_js__WEBPACK_IMPORTED_MODULE_1__.ShiftCommand.unshiftIndent(indentation, indentation.length + 1, tabSize, indentSize, insertSpaces);\n }\n };\n }\n parseEnterResult(model, indentConverter, tabSize, line, enter) {\n if (enter) {\n let enterPrefix = enter.indentation;\n if (enter.indentAction === _common_languages_languageConfiguration_js__WEBPACK_IMPORTED_MODULE_4__.IndentAction.None) {\n enterPrefix = enter.indentation + enter.appendText;\n }\n else if (enter.indentAction === _common_languages_languageConfiguration_js__WEBPACK_IMPORTED_MODULE_4__.IndentAction.Indent) {\n enterPrefix = enter.indentation + enter.appendText;\n }\n else if (enter.indentAction === _common_languages_languageConfiguration_js__WEBPACK_IMPORTED_MODULE_4__.IndentAction.IndentOutdent) {\n enterPrefix = enter.indentation;\n }\n else if (enter.indentAction === _common_languages_languageConfiguration_js__WEBPACK_IMPORTED_MODULE_4__.IndentAction.Outdent) {\n enterPrefix = indentConverter.unshiftIndent(enter.indentation) + enter.appendText;\n }\n const movingLineText = model.getLineContent(line);\n if (this.trimStart(movingLineText).indexOf(this.trimStart(enterPrefix)) >= 0) {\n const oldIndentation = _base_common_strings_js__WEBPACK_IMPORTED_MODULE_0__.getLeadingWhitespace(model.getLineContent(line));\n let newIndentation = _base_common_strings_js__WEBPACK_IMPORTED_MODULE_0__.getLeadingWhitespace(enterPrefix);\n const indentMetadataOfMovelingLine = (0,_common_languages_autoIndent_js__WEBPACK_IMPORTED_MODULE_7__.getIndentMetadata)(model, line, this._languageConfigurationService);\n if (indentMetadataOfMovelingLine !== null && indentMetadataOfMovelingLine & 2 /* IndentConsts.DECREASE_MASK */) {\n newIndentation = indentConverter.unshiftIndent(newIndentation);\n }\n const newSpaceCnt = _indentation_browser_indentUtils_js__WEBPACK_IMPORTED_MODULE_6__.getSpaceCnt(newIndentation, tabSize);\n const oldSpaceCnt = _indentation_browser_indentUtils_js__WEBPACK_IMPORTED_MODULE_6__.getSpaceCnt(oldIndentation, tabSize);\n return newSpaceCnt - oldSpaceCnt;\n }\n }\n return null;\n }\n /**\n *\n * @param model\n * @param indentConverter\n * @param tabSize\n * @param line the line moving down\n * @param futureAboveLineNumber the line which will be at the `line` position\n * @param futureAboveLineText\n */\n matchEnterRuleMovingDown(model, indentConverter, tabSize, line, futureAboveLineNumber, futureAboveLineText) {\n if (_base_common_strings_js__WEBPACK_IMPORTED_MODULE_0__.lastNonWhitespaceIndex(futureAboveLineText) >= 0) {\n // break\n const maxColumn = model.getLineMaxColumn(futureAboveLineNumber);\n const enter = (0,_common_languages_enterAction_js__WEBPACK_IMPORTED_MODULE_8__.getEnterAction)(this._autoIndent, model, new _common_core_range_js__WEBPACK_IMPORTED_MODULE_2__.Range(futureAboveLineNumber, maxColumn, futureAboveLineNumber, maxColumn), this._languageConfigurationService);\n return this.parseEnterResult(model, indentConverter, tabSize, line, enter);\n }\n else {\n // go upwards, starting from `line - 1`\n let validPrecedingLine = line - 1;\n while (validPrecedingLine >= 1) {\n const lineContent = model.getLineContent(validPrecedingLine);\n const nonWhitespaceIdx = _base_common_strings_js__WEBPACK_IMPORTED_MODULE_0__.lastNonWhitespaceIndex(lineContent);\n if (nonWhitespaceIdx >= 0) {\n break;\n }\n validPrecedingLine--;\n }\n if (validPrecedingLine < 1 || line > model.getLineCount()) {\n return null;\n }\n const maxColumn = model.getLineMaxColumn(validPrecedingLine);\n const enter = (0,_common_languages_enterAction_js__WEBPACK_IMPORTED_MODULE_8__.getEnterAction)(this._autoIndent, model, new _common_core_range_js__WEBPACK_IMPORTED_MODULE_2__.Range(validPrecedingLine, maxColumn, validPrecedingLine, maxColumn), this._languageConfigurationService);\n return this.parseEnterResult(model, indentConverter, tabSize, line, enter);\n }\n }\n matchEnterRule(model, indentConverter, tabSize, line, oneLineAbove, previousLineText) {\n let validPrecedingLine = oneLineAbove;\n while (validPrecedingLine >= 1) {\n // ship empty lines as empty lines just inherit indentation\n let lineContent;\n if (validPrecedingLine === oneLineAbove && previousLineText !== undefined) {\n lineContent = previousLineText;\n }\n else {\n lineContent = model.getLineContent(validPrecedingLine);\n }\n const nonWhitespaceIdx = _base_common_strings_js__WEBPACK_IMPORTED_MODULE_0__.lastNonWhitespaceIndex(lineContent);\n if (nonWhitespaceIdx >= 0) {\n break;\n }\n validPrecedingLine--;\n }\n if (validPrecedingLine < 1 || line > model.getLineCount()) {\n return null;\n }\n const maxColumn = model.getLineMaxColumn(validPrecedingLine);\n const enter = (0,_common_languages_enterAction_js__WEBPACK_IMPORTED_MODULE_8__.getEnterAction)(this._autoIndent, model, new _common_core_range_js__WEBPACK_IMPORTED_MODULE_2__.Range(validPrecedingLine, maxColumn, validPrecedingLine, maxColumn), this._languageConfigurationService);\n return this.parseEnterResult(model, indentConverter, tabSize, line, enter);\n }\n trimStart(str) {\n return str.replace(/^\\s+/, '');\n }\n shouldAutoIndent(model, selection) {\n if (this._autoIndent < 4 /* EditorAutoIndentStrategy.Full */) {\n return false;\n }\n // if it's not easy to tokenize, we stop auto indent.\n if (!model.tokenization.isCheapToTokenize(selection.startLineNumber)) {\n return false;\n }\n const languageAtSelectionStart = model.getLanguageIdAtPosition(selection.startLineNumber, 1);\n const languageAtSelectionEnd = model.getLanguageIdAtPosition(selection.endLineNumber, 1);\n if (languageAtSelectionStart !== languageAtSelectionEnd) {\n return false;\n }\n if (this._languageConfigurationService.getLanguageConfiguration(languageAtSelectionStart).indentRulesSupport === null) {\n return false;\n }\n return true;\n }\n getIndentEditsOfMovingBlock(model, builder, s, tabSize, insertSpaces, offset) {\n for (let i = s.startLineNumber; i <= s.endLineNumber; i++) {\n const lineContent = model.getLineContent(i);\n const originalIndent = _base_common_strings_js__WEBPACK_IMPORTED_MODULE_0__.getLeadingWhitespace(lineContent);\n const originalSpacesCnt = _indentation_browser_indentUtils_js__WEBPACK_IMPORTED_MODULE_6__.getSpaceCnt(originalIndent, tabSize);\n const newSpacesCnt = originalSpacesCnt + offset;\n const newIndent = _indentation_browser_indentUtils_js__WEBPACK_IMPORTED_MODULE_6__.generateIndent(newSpacesCnt, tabSize, insertSpaces);\n if (newIndent !== originalIndent) {\n builder.addEditOperation(new _common_core_range_js__WEBPACK_IMPORTED_MODULE_2__.Range(i, 1, i, originalIndent.length + 1), newIndent);\n if (i === s.endLineNumber && s.endColumn <= originalIndent.length + 1 && newIndent === '') {\n // as users select part of the original indent white spaces\n // when we adjust the indentation of endLine, we should adjust the cursor position as well.\n this._moveEndLineSelectionShrink = true;\n }\n }\n }\n }\n computeCursorState(model, helper) {\n let result = helper.getTrackedSelection(this._selectionId);\n if (this._moveEndPositionDown) {\n result = result.setEndPosition(result.endLineNumber + 1, 1);\n }\n if (this._moveEndLineSelectionShrink && result.startLineNumber < result.endLineNumber) {\n result = result.setEndPosition(result.endLineNumber, 2);\n }\n return result;\n }\n};\nMoveLinesCommand = __decorate([\n __param(3, _common_languages_languageConfigurationRegistry_js__WEBPACK_IMPORTED_MODULE_5__.ILanguageConfigurationService)\n], MoveLinesCommand);\n\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/contrib/linesOperations/browser/moveLinesCommand.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/contrib/linesOperations/browser/sortLinesCommand.js":
/*!******************************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/contrib/linesOperations/browser/sortLinesCommand.js ***!
\******************************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ SortLinesCommand: () => (/* binding */ SortLinesCommand)\n/* harmony export */ });\n/* harmony import */ var _common_core_editOperation_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../common/core/editOperation.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/core/editOperation.js\");\n/* harmony import */ var _common_core_range_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../common/core/range.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/core/range.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n\nclass SortLinesCommand {\n static getCollator() {\n if (!SortLinesCommand._COLLATOR) {\n SortLinesCommand._COLLATOR = new Intl.Collator();\n }\n return SortLinesCommand._COLLATOR;\n }\n constructor(selection, descending) {\n this.selection = selection;\n this.descending = descending;\n this.selectionId = null;\n }\n getEditOperations(model, builder) {\n const op = sortLines(model, this.selection, this.descending);\n if (op) {\n builder.addEditOperation(op.range, op.text);\n }\n this.selectionId = builder.trackSelection(this.selection);\n }\n computeCursorState(model, helper) {\n return helper.getTrackedSelection(this.selectionId);\n }\n static canRun(model, selection, descending) {\n if (model === null) {\n return false;\n }\n const data = getSortData(model, selection, descending);\n if (!data) {\n return false;\n }\n for (let i = 0, len = data.before.length; i < len; i++) {\n if (data.before[i] !== data.after[i]) {\n return true;\n }\n }\n return false;\n }\n}\nSortLinesCommand._COLLATOR = null;\nfunction getSortData(model, selection, descending) {\n const startLineNumber = selection.startLineNumber;\n let endLineNumber = selection.endLineNumber;\n if (selection.endColumn === 1) {\n endLineNumber--;\n }\n // Nothing to sort if user didn't select anything.\n if (startLineNumber >= endLineNumber) {\n return null;\n }\n const linesToSort = [];\n // Get the contents of the selection to be sorted.\n for (let lineNumber = startLineNumber; lineNumber <= endLineNumber; lineNumber++) {\n linesToSort.push(model.getLineContent(lineNumber));\n }\n let sorted = linesToSort.slice(0);\n sorted.sort(SortLinesCommand.getCollator().compare);\n // If descending, reverse the order.\n if (descending === true) {\n sorted = sorted.reverse();\n }\n return {\n startLineNumber: startLineNumber,\n endLineNumber: endLineNumber,\n before: linesToSort,\n after: sorted\n };\n}\n/**\n * Generate commands for sorting lines on a model.\n */\nfunction sortLines(model, selection, descending) {\n const data = getSortData(model, selection, descending);\n if (!data) {\n return null;\n }\n return _common_core_editOperation_js__WEBPACK_IMPORTED_MODULE_0__.EditOperation.replace(new _common_core_range_js__WEBPACK_IMPORTED_MODULE_1__.Range(data.startLineNumber, 1, data.endLineNumber, model.getLineMaxColumn(data.endLineNumber)), data.after.join('\\n'));\n}\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/contrib/linesOperations/browser/sortLinesCommand.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/contrib/linkedEditing/browser/linkedEditing.js":
/*!*************************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/contrib/linkedEditing/browser/linkedEditing.js ***!
\*************************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ CONTEXT_ONTYPE_RENAME_INPUT_VISIBLE: () => (/* binding */ CONTEXT_ONTYPE_RENAME_INPUT_VISIBLE),\n/* harmony export */ LinkedEditingAction: () => (/* binding */ LinkedEditingAction),\n/* harmony export */ LinkedEditingContribution: () => (/* binding */ LinkedEditingContribution),\n/* harmony export */ editorLinkedEditingBackground: () => (/* binding */ editorLinkedEditingBackground)\n/* harmony export */ });\n/* harmony import */ var _base_common_arrays_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../../base/common/arrays.js */ \"./node_modules/monaco-editor/esm/vs/base/common/arrays.js\");\n/* harmony import */ var _base_common_async_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../base/common/async.js */ \"./node_modules/monaco-editor/esm/vs/base/common/async.js\");\n/* harmony import */ var _base_common_cancellation_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../../base/common/cancellation.js */ \"./node_modules/monaco-editor/esm/vs/base/common/cancellation.js\");\n/* harmony import */ var _base_common_color_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../../../base/common/color.js */ \"./node_modules/monaco-editor/esm/vs/base/common/color.js\");\n/* harmony import */ var _base_common_errors_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../../../base/common/errors.js */ \"./node_modules/monaco-editor/esm/vs/base/common/errors.js\");\n/* harmony import */ var _base_common_event_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../../../../base/common/event.js */ \"./node_modules/monaco-editor/esm/vs/base/common/event.js\");\n/* harmony import */ var _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../../../../base/common/lifecycle.js */ \"./node_modules/monaco-editor/esm/vs/base/common/lifecycle.js\");\n/* harmony import */ var _base_common_strings_js__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ../../../../base/common/strings.js */ \"./node_modules/monaco-editor/esm/vs/base/common/strings.js\");\n/* harmony import */ var _base_common_uri_js__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ../../../../base/common/uri.js */ \"./node_modules/monaco-editor/esm/vs/base/common/uri.js\");\n/* harmony import */ var _browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ../../../browser/editorExtensions.js */ \"./node_modules/monaco-editor/esm/vs/editor/browser/editorExtensions.js\");\n/* harmony import */ var _browser_services_codeEditorService_js__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! ../../../browser/services/codeEditorService.js */ \"./node_modules/monaco-editor/esm/vs/editor/browser/services/codeEditorService.js\");\n/* harmony import */ var _common_core_position_js__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(/*! ../../../common/core/position.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/core/position.js\");\n/* harmony import */ var _common_core_range_js__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(/*! ../../../common/core/range.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/core/range.js\");\n/* harmony import */ var _common_editorContextKeys_js__WEBPACK_IMPORTED_MODULE_13__ = __webpack_require__(/*! ../../../common/editorContextKeys.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/editorContextKeys.js\");\n/* harmony import */ var _common_model_textModel_js__WEBPACK_IMPORTED_MODULE_14__ = __webpack_require__(/*! ../../../common/model/textModel.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/model/textModel.js\");\n/* harmony import */ var _common_languages_languageConfigurationRegistry_js__WEBPACK_IMPORTED_MODULE_15__ = __webpack_require__(/*! ../../../common/languages/languageConfigurationRegistry.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/languages/languageConfigurationRegistry.js\");\n/* harmony import */ var _nls_js__WEBPACK_IMPORTED_MODULE_16__ = __webpack_require__(/*! ../../../../nls.js */ \"./node_modules/monaco-editor/esm/vs/nls.js\");\n/* harmony import */ var _platform_contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_17__ = __webpack_require__(/*! ../../../../platform/contextkey/common/contextkey.js */ \"./node_modules/monaco-editor/esm/vs/platform/contextkey/common/contextkey.js\");\n/* harmony import */ var _common_services_languageFeatures_js__WEBPACK_IMPORTED_MODULE_18__ = __webpack_require__(/*! ../../../common/services/languageFeatures.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/services/languageFeatures.js\");\n/* harmony import */ var _platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_19__ = __webpack_require__(/*! ../../../../platform/theme/common/colorRegistry.js */ \"./node_modules/monaco-editor/esm/vs/platform/theme/common/colorRegistry.js\");\n/* harmony import */ var _common_services_languageFeatureDebounce_js__WEBPACK_IMPORTED_MODULE_20__ = __webpack_require__(/*! ../../../common/services/languageFeatureDebounce.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/services/languageFeatureDebounce.js\");\n/* harmony import */ var _base_common_stopwatch_js__WEBPACK_IMPORTED_MODULE_21__ = __webpack_require__(/*! ../../../../base/common/stopwatch.js */ \"./node_modules/monaco-editor/esm/vs/base/common/stopwatch.js\");\n/* harmony import */ var _linkedEditing_css__WEBPACK_IMPORTED_MODULE_22__ = __webpack_require__(/*! ./linkedEditing.css */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/linkedEditing/browser/linkedEditing.css\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\nvar __decorate = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\n return c > 3 && r && Object.defineProperty(target, key, r), r;\n};\nvar __param = (undefined && undefined.__param) || function (paramIndex, decorator) {\n return function (target, key) { decorator(target, key, paramIndex); }\n};\nvar LinkedEditingContribution_1;\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nconst CONTEXT_ONTYPE_RENAME_INPUT_VISIBLE = new _platform_contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_17__.RawContextKey('LinkedEditingInputVisible', false);\nconst DECORATION_CLASS_NAME = 'linked-editing-decoration';\nlet LinkedEditingContribution = LinkedEditingContribution_1 = class LinkedEditingContribution extends _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_6__.Disposable {\n static get(editor) {\n return editor.getContribution(LinkedEditingContribution_1.ID);\n }\n constructor(editor, contextKeyService, languageFeaturesService, languageConfigurationService, languageFeatureDebounceService) {\n super();\n this.languageConfigurationService = languageConfigurationService;\n this._syncRangesToken = 0;\n this._localToDispose = this._register(new _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_6__.DisposableStore());\n this._editor = editor;\n this._providers = languageFeaturesService.linkedEditingRangeProvider;\n this._enabled = false;\n this._visibleContextKey = CONTEXT_ONTYPE_RENAME_INPUT_VISIBLE.bindTo(contextKeyService);\n this._debounceInformation = languageFeatureDebounceService.for(this._providers, 'Linked Editing', { max: 200 });\n this._currentDecorations = this._editor.createDecorationsCollection();\n this._languageWordPattern = null;\n this._currentWordPattern = null;\n this._ignoreChangeEvent = false;\n this._localToDispose = this._register(new _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_6__.DisposableStore());\n this._rangeUpdateTriggerPromise = null;\n this._rangeSyncTriggerPromise = null;\n this._currentRequestCts = null;\n this._currentRequestPosition = null;\n this._currentRequestModelVersion = null;\n this._register(this._editor.onDidChangeModel(() => this.reinitialize(true)));\n this._register(this._editor.onDidChangeConfiguration(e => {\n if (e.hasChanged(70 /* EditorOption.linkedEditing */) || e.hasChanged(93 /* EditorOption.renameOnType */)) {\n this.reinitialize(false);\n }\n }));\n this._register(this._providers.onDidChange(() => this.reinitialize(false)));\n this._register(this._editor.onDidChangeModelLanguage(() => this.reinitialize(true)));\n this.reinitialize(true);\n }\n reinitialize(forceRefresh) {\n const model = this._editor.getModel();\n const isEnabled = model !== null && (this._editor.getOption(70 /* EditorOption.linkedEditing */) || this._editor.getOption(93 /* EditorOption.renameOnType */)) && this._providers.has(model);\n if (isEnabled === this._enabled && !forceRefresh) {\n return;\n }\n this._enabled = isEnabled;\n this.clearRanges();\n this._localToDispose.clear();\n if (!isEnabled || model === null) {\n return;\n }\n this._localToDispose.add(_base_common_event_js__WEBPACK_IMPORTED_MODULE_5__.Event.runAndSubscribe(model.onDidChangeLanguageConfiguration, () => {\n this._languageWordPattern = this.languageConfigurationService.getLanguageConfiguration(model.getLanguageId()).getWordDefinition();\n }));\n const rangeUpdateScheduler = new _base_common_async_js__WEBPACK_IMPORTED_MODULE_1__.Delayer(this._debounceInformation.get(model));\n const triggerRangeUpdate = () => {\n var _a;\n this._rangeUpdateTriggerPromise = rangeUpdateScheduler.trigger(() => this.updateRanges(), (_a = this._debounceDuration) !== null && _a !== void 0 ? _a : this._debounceInformation.get(model));\n };\n const rangeSyncScheduler = new _base_common_async_js__WEBPACK_IMPORTED_MODULE_1__.Delayer(0);\n const triggerRangeSync = (token) => {\n this._rangeSyncTriggerPromise = rangeSyncScheduler.trigger(() => this._syncRanges(token));\n };\n this._localToDispose.add(this._editor.onDidChangeCursorPosition(() => {\n triggerRangeUpdate();\n }));\n this._localToDispose.add(this._editor.onDidChangeModelContent((e) => {\n if (!this._ignoreChangeEvent) {\n if (this._currentDecorations.length > 0) {\n const referenceRange = this._currentDecorations.getRange(0);\n if (referenceRange && e.changes.every(c => referenceRange.intersectRanges(c.range))) {\n triggerRangeSync(this._syncRangesToken);\n return;\n }\n }\n }\n triggerRangeUpdate();\n }));\n this._localToDispose.add({\n dispose: () => {\n rangeUpdateScheduler.dispose();\n rangeSyncScheduler.dispose();\n }\n });\n this.updateRanges();\n }\n _syncRanges(token) {\n // delayed invocation, make sure we're still on\n if (!this._editor.hasModel() || token !== this._syncRangesToken || this._currentDecorations.length === 0) {\n // nothing to do\n return;\n }\n const model = this._editor.getModel();\n const referenceRange = this._currentDecorations.getRange(0);\n if (!referenceRange || referenceRange.startLineNumber !== referenceRange.endLineNumber) {\n return this.clearRanges();\n }\n const referenceValue = model.getValueInRange(referenceRange);\n if (this._currentWordPattern) {\n const match = referenceValue.match(this._currentWordPattern);\n const matchLength = match ? match[0].length : 0;\n if (matchLength !== referenceValue.length) {\n return this.clearRanges();\n }\n }\n const edits = [];\n for (let i = 1, len = this._currentDecorations.length; i < len; i++) {\n const mirrorRange = this._currentDecorations.getRange(i);\n if (!mirrorRange) {\n continue;\n }\n if (mirrorRange.startLineNumber !== mirrorRange.endLineNumber) {\n edits.push({\n range: mirrorRange,\n text: referenceValue\n });\n }\n else {\n let oldValue = model.getValueInRange(mirrorRange);\n let newValue = referenceValue;\n let rangeStartColumn = mirrorRange.startColumn;\n let rangeEndColumn = mirrorRange.endColumn;\n const commonPrefixLength = _base_common_strings_js__WEBPACK_IMPORTED_MODULE_7__.commonPrefixLength(oldValue, newValue);\n rangeStartColumn += commonPrefixLength;\n oldValue = oldValue.substr(commonPrefixLength);\n newValue = newValue.substr(commonPrefixLength);\n const commonSuffixLength = _base_common_strings_js__WEBPACK_IMPORTED_MODULE_7__.commonSuffixLength(oldValue, newValue);\n rangeEndColumn -= commonSuffixLength;\n oldValue = oldValue.substr(0, oldValue.length - commonSuffixLength);\n newValue = newValue.substr(0, newValue.length - commonSuffixLength);\n if (rangeStartColumn !== rangeEndColumn || newValue.length !== 0) {\n edits.push({\n range: new _common_core_range_js__WEBPACK_IMPORTED_MODULE_12__.Range(mirrorRange.startLineNumber, rangeStartColumn, mirrorRange.endLineNumber, rangeEndColumn),\n text: newValue\n });\n }\n }\n }\n if (edits.length === 0) {\n return;\n }\n try {\n this._editor.popUndoStop();\n this._ignoreChangeEvent = true;\n const prevEditOperationType = this._editor._getViewModel().getPrevEditOperationType();\n this._editor.executeEdits('linkedEditing', edits);\n this._editor._getViewModel().setPrevEditOperationType(prevEditOperationType);\n }\n finally {\n this._ignoreChangeEvent = false;\n }\n }\n dispose() {\n this.clearRanges();\n super.dispose();\n }\n clearRanges() {\n this._visibleContextKey.set(false);\n this._currentDecorations.clear();\n if (this._currentRequestCts) {\n this._currentRequestCts.cancel();\n this._currentRequestCts = null;\n this._currentRequestPosition = null;\n }\n }\n async updateRanges(force = false) {\n if (!this._editor.hasModel()) {\n this.clearRanges();\n return;\n }\n const position = this._editor.getPosition();\n if (!this._enabled && !force || this._editor.getSelections().length > 1) {\n // disabled or multicursor\n this.clearRanges();\n return;\n }\n const model = this._editor.getModel();\n const modelVersionId = model.getVersionId();\n if (this._currentRequestPosition && this._currentRequestModelVersion === modelVersionId) {\n if (position.equals(this._currentRequestPosition)) {\n return; // same position\n }\n if (this._currentDecorations.length > 0) {\n const range = this._currentDecorations.getRange(0);\n if (range && range.containsPosition(position)) {\n return; // just moving inside the existing primary range\n }\n }\n }\n // Clear existing decorations while we compute new ones\n this.clearRanges();\n this._currentRequestPosition = position;\n this._currentRequestModelVersion = modelVersionId;\n const currentRequestCts = this._currentRequestCts = new _base_common_cancellation_js__WEBPACK_IMPORTED_MODULE_2__.CancellationTokenSource();\n try {\n const sw = new _base_common_stopwatch_js__WEBPACK_IMPORTED_MODULE_21__.StopWatch(false);\n const response = await getLinkedEditingRanges(this._providers, model, position, currentRequestCts.token);\n this._debounceInformation.update(model, sw.elapsed());\n if (currentRequestCts !== this._currentRequestCts) {\n return;\n }\n this._currentRequestCts = null;\n if (modelVersionId !== model.getVersionId()) {\n return;\n }\n let ranges = [];\n if (response === null || response === void 0 ? void 0 : response.ranges) {\n ranges = response.ranges;\n }\n this._currentWordPattern = (response === null || response === void 0 ? void 0 : response.wordPattern) || this._languageWordPattern;\n let foundReferenceRange = false;\n for (let i = 0, len = ranges.length; i < len; i++) {\n if (_common_core_range_js__WEBPACK_IMPORTED_MODULE_12__.Range.containsPosition(ranges[i], position)) {\n foundReferenceRange = true;\n if (i !== 0) {\n const referenceRange = ranges[i];\n ranges.splice(i, 1);\n ranges.unshift(referenceRange);\n }\n break;\n }\n }\n if (!foundReferenceRange) {\n // Cannot do linked editing if the ranges are not where the cursor is...\n this.clearRanges();\n return;\n }\n const decorations = ranges.map(range => ({ range: range, options: LinkedEditingContribution_1.DECORATION }));\n this._visibleContextKey.set(true);\n this._currentDecorations.set(decorations);\n this._syncRangesToken++; // cancel any pending syncRanges call\n }\n catch (err) {\n if (!(0,_base_common_errors_js__WEBPACK_IMPORTED_MODULE_4__.isCancellationError)(err)) {\n (0,_base_common_errors_js__WEBPACK_IMPORTED_MODULE_4__.onUnexpectedError)(err);\n }\n if (this._currentRequestCts === currentRequestCts || !this._currentRequestCts) {\n // stop if we are still the latest request\n this.clearRanges();\n }\n }\n }\n};\nLinkedEditingContribution.ID = 'editor.contrib.linkedEditing';\nLinkedEditingContribution.DECORATION = _common_model_textModel_js__WEBPACK_IMPORTED_MODULE_14__.ModelDecorationOptions.register({\n description: 'linked-editing',\n stickiness: 0 /* TrackedRangeStickiness.AlwaysGrowsWhenTypingAtEdges */,\n className: DECORATION_CLASS_NAME\n});\nLinkedEditingContribution = LinkedEditingContribution_1 = __decorate([\n __param(1, _platform_contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_17__.IContextKeyService),\n __param(2, _common_services_languageFeatures_js__WEBPACK_IMPORTED_MODULE_18__.ILanguageFeaturesService),\n __param(3, _common_languages_languageConfigurationRegistry_js__WEBPACK_IMPORTED_MODULE_15__.ILanguageConfigurationService),\n __param(4, _common_services_languageFeatureDebounce_js__WEBPACK_IMPORTED_MODULE_20__.ILanguageFeatureDebounceService)\n], LinkedEditingContribution);\n\nclass LinkedEditingAction extends _browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_9__.EditorAction {\n constructor() {\n super({\n id: 'editor.action.linkedEditing',\n label: _nls_js__WEBPACK_IMPORTED_MODULE_16__.localize('linkedEditing.label', \"Start Linked Editing\"),\n alias: 'Start Linked Editing',\n precondition: _platform_contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_17__.ContextKeyExpr.and(_common_editorContextKeys_js__WEBPACK_IMPORTED_MODULE_13__.EditorContextKeys.writable, _common_editorContextKeys_js__WEBPACK_IMPORTED_MODULE_13__.EditorContextKeys.hasRenameProvider),\n kbOpts: {\n kbExpr: _common_editorContextKeys_js__WEBPACK_IMPORTED_MODULE_13__.EditorContextKeys.editorTextFocus,\n primary: 2048 /* KeyMod.CtrlCmd */ | 1024 /* KeyMod.Shift */ | 60 /* KeyCode.F2 */,\n weight: 100 /* KeybindingWeight.EditorContrib */\n }\n });\n }\n runCommand(accessor, args) {\n const editorService = accessor.get(_browser_services_codeEditorService_js__WEBPACK_IMPORTED_MODULE_10__.ICodeEditorService);\n const [uri, pos] = Array.isArray(args) && args || [undefined, undefined];\n if (_base_common_uri_js__WEBPACK_IMPORTED_MODULE_8__.URI.isUri(uri) && _common_core_position_js__WEBPACK_IMPORTED_MODULE_11__.Position.isIPosition(pos)) {\n return editorService.openCodeEditor({ resource: uri }, editorService.getActiveCodeEditor()).then(editor => {\n if (!editor) {\n return;\n }\n editor.setPosition(pos);\n editor.invokeWithinContext(accessor => {\n this.reportTelemetry(accessor, editor);\n return this.run(accessor, editor);\n });\n }, _base_common_errors_js__WEBPACK_IMPORTED_MODULE_4__.onUnexpectedError);\n }\n return super.runCommand(accessor, args);\n }\n run(_accessor, editor) {\n const controller = LinkedEditingContribution.get(editor);\n if (controller) {\n return Promise.resolve(controller.updateRanges(true));\n }\n return Promise.resolve();\n }\n}\nconst LinkedEditingCommand = _browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_9__.EditorCommand.bindToContribution(LinkedEditingContribution.get);\n(0,_browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_9__.registerEditorCommand)(new LinkedEditingCommand({\n id: 'cancelLinkedEditingInput',\n precondition: CONTEXT_ONTYPE_RENAME_INPUT_VISIBLE,\n handler: x => x.clearRanges(),\n kbOpts: {\n kbExpr: _common_editorContextKeys_js__WEBPACK_IMPORTED_MODULE_13__.EditorContextKeys.editorTextFocus,\n weight: 100 /* KeybindingWeight.EditorContrib */ + 99,\n primary: 9 /* KeyCode.Escape */,\n secondary: [1024 /* KeyMod.Shift */ | 9 /* KeyCode.Escape */]\n }\n}));\nfunction getLinkedEditingRanges(providers, model, position, token) {\n const orderedByScore = providers.ordered(model);\n // in order of score ask the linked editing range provider\n // until someone response with a good result\n // (good = not null)\n return (0,_base_common_async_js__WEBPACK_IMPORTED_MODULE_1__.first)(orderedByScore.map(provider => async () => {\n try {\n return await provider.provideLinkedEditingRanges(model, position, token);\n }\n catch (e) {\n (0,_base_common_errors_js__WEBPACK_IMPORTED_MODULE_4__.onUnexpectedExternalError)(e);\n return undefined;\n }\n }), result => !!result && _base_common_arrays_js__WEBPACK_IMPORTED_MODULE_0__.isNonEmptyArray(result === null || result === void 0 ? void 0 : result.ranges));\n}\nconst editorLinkedEditingBackground = (0,_platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_19__.registerColor)('editor.linkedEditingBackground', { dark: _base_common_color_js__WEBPACK_IMPORTED_MODULE_3__.Color.fromHex('#f00').transparent(0.3), light: _base_common_color_js__WEBPACK_IMPORTED_MODULE_3__.Color.fromHex('#f00').transparent(0.3), hcDark: _base_common_color_js__WEBPACK_IMPORTED_MODULE_3__.Color.fromHex('#f00').transparent(0.3), hcLight: _base_common_color_js__WEBPACK_IMPORTED_MODULE_3__.Color.white }, _nls_js__WEBPACK_IMPORTED_MODULE_16__.localize('editorLinkedEditingBackground', 'Background color when the editor auto renames on type.'));\n(0,_browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_9__.registerModelAndPositionCommand)('_executeLinkedEditingProvider', (_accessor, model, position) => {\n const { linkedEditingRangeProvider } = _accessor.get(_common_services_languageFeatures_js__WEBPACK_IMPORTED_MODULE_18__.ILanguageFeaturesService);\n return getLinkedEditingRanges(linkedEditingRangeProvider, model, position, _base_common_cancellation_js__WEBPACK_IMPORTED_MODULE_2__.CancellationToken.None);\n});\n(0,_browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_9__.registerEditorContribution)(LinkedEditingContribution.ID, LinkedEditingContribution, 1 /* EditorContributionInstantiation.AfterFirstRender */);\n(0,_browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_9__.registerEditorAction)(LinkedEditingAction);\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/contrib/linkedEditing/browser/linkedEditing.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/contrib/links/browser/getLinks.js":
/*!************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/contrib/links/browser/getLinks.js ***!
\************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ Link: () => (/* binding */ Link),\n/* harmony export */ LinksList: () => (/* binding */ LinksList),\n/* harmony export */ getLinks: () => (/* binding */ getLinks)\n/* harmony export */ });\n/* harmony import */ var _base_common_arrays_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../../base/common/arrays.js */ \"./node_modules/monaco-editor/esm/vs/base/common/arrays.js\");\n/* harmony import */ var _base_common_cancellation_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../base/common/cancellation.js */ \"./node_modules/monaco-editor/esm/vs/base/common/cancellation.js\");\n/* harmony import */ var _base_common_errors_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../../base/common/errors.js */ \"./node_modules/monaco-editor/esm/vs/base/common/errors.js\");\n/* harmony import */ var _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../../../base/common/lifecycle.js */ \"./node_modules/monaco-editor/esm/vs/base/common/lifecycle.js\");\n/* harmony import */ var _base_common_types_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../../../base/common/types.js */ \"./node_modules/monaco-editor/esm/vs/base/common/types.js\");\n/* harmony import */ var _base_common_uri_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../../../../base/common/uri.js */ \"./node_modules/monaco-editor/esm/vs/base/common/uri.js\");\n/* harmony import */ var _common_core_range_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../../../common/core/range.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/core/range.js\");\n/* harmony import */ var _common_services_model_js__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ../../../common/services/model.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/services/model.js\");\n/* harmony import */ var _platform_commands_common_commands_js__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ../../../../platform/commands/common/commands.js */ \"./node_modules/monaco-editor/esm/vs/platform/commands/common/commands.js\");\n/* harmony import */ var _common_services_languageFeatures_js__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ../../../common/services/languageFeatures.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/services/languageFeatures.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n\n\n\n\n\n\n\n\n\nclass Link {\n constructor(link, provider) {\n this._link = link;\n this._provider = provider;\n }\n toJSON() {\n return {\n range: this.range,\n url: this.url,\n tooltip: this.tooltip\n };\n }\n get range() {\n return this._link.range;\n }\n get url() {\n return this._link.url;\n }\n get tooltip() {\n return this._link.tooltip;\n }\n async resolve(token) {\n if (this._link.url) {\n return this._link.url;\n }\n if (typeof this._provider.resolveLink === 'function') {\n return Promise.resolve(this._provider.resolveLink(this._link, token)).then(value => {\n this._link = value || this._link;\n if (this._link.url) {\n // recurse\n return this.resolve(token);\n }\n return Promise.reject(new Error('missing'));\n });\n }\n return Promise.reject(new Error('missing'));\n }\n}\nclass LinksList {\n constructor(tuples) {\n this._disposables = new _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_3__.DisposableStore();\n let links = [];\n for (const [list, provider] of tuples) {\n // merge all links\n const newLinks = list.links.map(link => new Link(link, provider));\n links = LinksList._union(links, newLinks);\n // register disposables\n if ((0,_base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_3__.isDisposable)(list)) {\n this._disposables.add(list);\n }\n }\n this.links = links;\n }\n dispose() {\n this._disposables.dispose();\n this.links.length = 0;\n }\n static _union(oldLinks, newLinks) {\n // reunite oldLinks with newLinks and remove duplicates\n const result = [];\n let oldIndex;\n let oldLen;\n let newIndex;\n let newLen;\n for (oldIndex = 0, newIndex = 0, oldLen = oldLinks.length, newLen = newLinks.length; oldIndex < oldLen && newIndex < newLen;) {\n const oldLink = oldLinks[oldIndex];\n const newLink = newLinks[newIndex];\n if (_common_core_range_js__WEBPACK_IMPORTED_MODULE_6__.Range.areIntersectingOrTouching(oldLink.range, newLink.range)) {\n // Remove the oldLink\n oldIndex++;\n continue;\n }\n const comparisonResult = _common_core_range_js__WEBPACK_IMPORTED_MODULE_6__.Range.compareRangesUsingStarts(oldLink.range, newLink.range);\n if (comparisonResult < 0) {\n // oldLink is before\n result.push(oldLink);\n oldIndex++;\n }\n else {\n // newLink is before\n result.push(newLink);\n newIndex++;\n }\n }\n for (; oldIndex < oldLen; oldIndex++) {\n result.push(oldLinks[oldIndex]);\n }\n for (; newIndex < newLen; newIndex++) {\n result.push(newLinks[newIndex]);\n }\n return result;\n }\n}\nfunction getLinks(providers, model, token) {\n const lists = [];\n // ask all providers for links in parallel\n const promises = providers.ordered(model).reverse().map((provider, i) => {\n return Promise.resolve(provider.provideLinks(model, token)).then(result => {\n if (result) {\n lists[i] = [result, provider];\n }\n }, _base_common_errors_js__WEBPACK_IMPORTED_MODULE_2__.onUnexpectedExternalError);\n });\n return Promise.all(promises).then(() => {\n const result = new LinksList((0,_base_common_arrays_js__WEBPACK_IMPORTED_MODULE_0__.coalesce)(lists));\n if (!token.isCancellationRequested) {\n return result;\n }\n result.dispose();\n return new LinksList([]);\n });\n}\n_platform_commands_common_commands_js__WEBPACK_IMPORTED_MODULE_8__.CommandsRegistry.registerCommand('_executeLinkProvider', async (accessor, ...args) => {\n let [uri, resolveCount] = args;\n (0,_base_common_types_js__WEBPACK_IMPORTED_MODULE_4__.assertType)(uri instanceof _base_common_uri_js__WEBPACK_IMPORTED_MODULE_5__.URI);\n if (typeof resolveCount !== 'number') {\n resolveCount = 0;\n }\n const { linkProvider } = accessor.get(_common_services_languageFeatures_js__WEBPACK_IMPORTED_MODULE_9__.ILanguageFeaturesService);\n const model = accessor.get(_common_services_model_js__WEBPACK_IMPORTED_MODULE_7__.IModelService).getModel(uri);\n if (!model) {\n return [];\n }\n const list = await getLinks(linkProvider, model, _base_common_cancellation_js__WEBPACK_IMPORTED_MODULE_1__.CancellationToken.None);\n if (!list) {\n return [];\n }\n // resolve links\n for (let i = 0; i < Math.min(resolveCount, list.links.length); i++) {\n await list.links[i].resolve(_base_common_cancellation_js__WEBPACK_IMPORTED_MODULE_1__.CancellationToken.None);\n }\n const result = list.links.slice(0);\n list.dispose();\n return result;\n});\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/contrib/links/browser/getLinks.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/contrib/links/browser/links.js":
/*!*********************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/contrib/links/browser/links.js ***!
\*********************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ LinkDetector: () => (/* binding */ LinkDetector)\n/* harmony export */ });\n/* harmony import */ var _base_common_async_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../../base/common/async.js */ \"./node_modules/monaco-editor/esm/vs/base/common/async.js\");\n/* harmony import */ var _base_common_cancellation_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../base/common/cancellation.js */ \"./node_modules/monaco-editor/esm/vs/base/common/cancellation.js\");\n/* harmony import */ var _base_common_errors_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../../base/common/errors.js */ \"./node_modules/monaco-editor/esm/vs/base/common/errors.js\");\n/* harmony import */ var _base_common_htmlContent_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../../../base/common/htmlContent.js */ \"./node_modules/monaco-editor/esm/vs/base/common/htmlContent.js\");\n/* harmony import */ var _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../../../base/common/lifecycle.js */ \"./node_modules/monaco-editor/esm/vs/base/common/lifecycle.js\");\n/* harmony import */ var _base_common_network_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../../../../base/common/network.js */ \"./node_modules/monaco-editor/esm/vs/base/common/network.js\");\n/* harmony import */ var _base_common_platform_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../../../../base/common/platform.js */ \"./node_modules/monaco-editor/esm/vs/base/common/platform.js\");\n/* harmony import */ var _base_common_resources_js__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ../../../../base/common/resources.js */ \"./node_modules/monaco-editor/esm/vs/base/common/resources.js\");\n/* harmony import */ var _base_common_stopwatch_js__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ../../../../base/common/stopwatch.js */ \"./node_modules/monaco-editor/esm/vs/base/common/stopwatch.js\");\n/* harmony import */ var _base_common_uri_js__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ../../../../base/common/uri.js */ \"./node_modules/monaco-editor/esm/vs/base/common/uri.js\");\n/* harmony import */ var _links_css__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! ./links.css */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/links/browser/links.css\");\n/* harmony import */ var _browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(/*! ../../../browser/editorExtensions.js */ \"./node_modules/monaco-editor/esm/vs/editor/browser/editorExtensions.js\");\n/* harmony import */ var _common_model_textModel_js__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(/*! ../../../common/model/textModel.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/model/textModel.js\");\n/* harmony import */ var _common_services_languageFeatureDebounce_js__WEBPACK_IMPORTED_MODULE_13__ = __webpack_require__(/*! ../../../common/services/languageFeatureDebounce.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/services/languageFeatureDebounce.js\");\n/* harmony import */ var _common_services_languageFeatures_js__WEBPACK_IMPORTED_MODULE_14__ = __webpack_require__(/*! ../../../common/services/languageFeatures.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/services/languageFeatures.js\");\n/* harmony import */ var _gotoSymbol_browser_link_clickLinkGesture_js__WEBPACK_IMPORTED_MODULE_15__ = __webpack_require__(/*! ../../gotoSymbol/browser/link/clickLinkGesture.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/gotoSymbol/browser/link/clickLinkGesture.js\");\n/* harmony import */ var _getLinks_js__WEBPACK_IMPORTED_MODULE_16__ = __webpack_require__(/*! ./getLinks.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/links/browser/getLinks.js\");\n/* harmony import */ var _nls_js__WEBPACK_IMPORTED_MODULE_17__ = __webpack_require__(/*! ../../../../nls.js */ \"./node_modules/monaco-editor/esm/vs/nls.js\");\n/* harmony import */ var _platform_notification_common_notification_js__WEBPACK_IMPORTED_MODULE_18__ = __webpack_require__(/*! ../../../../platform/notification/common/notification.js */ \"./node_modules/monaco-editor/esm/vs/platform/notification/common/notification.js\");\n/* harmony import */ var _platform_opener_common_opener_js__WEBPACK_IMPORTED_MODULE_19__ = __webpack_require__(/*! ../../../../platform/opener/common/opener.js */ \"./node_modules/monaco-editor/esm/vs/platform/opener/common/opener.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\nvar __decorate = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\n return c > 3 && r && Object.defineProperty(target, key, r), r;\n};\nvar __param = (undefined && undefined.__param) || function (paramIndex, decorator) {\n return function (target, key) { decorator(target, key, paramIndex); }\n};\nvar LinkDetector_1;\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlet LinkDetector = LinkDetector_1 = class LinkDetector extends _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_4__.Disposable {\n static get(editor) {\n return editor.getContribution(LinkDetector_1.ID);\n }\n constructor(editor, openerService, notificationService, languageFeaturesService, languageFeatureDebounceService) {\n super();\n this.editor = editor;\n this.openerService = openerService;\n this.notificationService = notificationService;\n this.languageFeaturesService = languageFeaturesService;\n this.providers = this.languageFeaturesService.linkProvider;\n this.debounceInformation = languageFeatureDebounceService.for(this.providers, 'Links', { min: 1000, max: 4000 });\n this.computeLinks = this._register(new _base_common_async_js__WEBPACK_IMPORTED_MODULE_0__.RunOnceScheduler(() => this.computeLinksNow(), 1000));\n this.computePromise = null;\n this.activeLinksList = null;\n this.currentOccurrences = {};\n this.activeLinkDecorationId = null;\n const clickLinkGesture = this._register(new _gotoSymbol_browser_link_clickLinkGesture_js__WEBPACK_IMPORTED_MODULE_15__.ClickLinkGesture(editor));\n this._register(clickLinkGesture.onMouseMoveOrRelevantKeyDown(([mouseEvent, keyboardEvent]) => {\n this._onEditorMouseMove(mouseEvent, keyboardEvent);\n }));\n this._register(clickLinkGesture.onExecute((e) => {\n this.onEditorMouseUp(e);\n }));\n this._register(clickLinkGesture.onCancel((e) => {\n this.cleanUpActiveLinkDecoration();\n }));\n this._register(editor.onDidChangeConfiguration((e) => {\n if (!e.hasChanged(71 /* EditorOption.links */)) {\n return;\n }\n // Remove any links (for the getting disabled case)\n this.updateDecorations([]);\n // Stop any computation (for the getting disabled case)\n this.stop();\n // Start computing (for the getting enabled case)\n this.computeLinks.schedule(0);\n }));\n this._register(editor.onDidChangeModelContent((e) => {\n if (!this.editor.hasModel()) {\n return;\n }\n this.computeLinks.schedule(this.debounceInformation.get(this.editor.getModel()));\n }));\n this._register(editor.onDidChangeModel((e) => {\n this.currentOccurrences = {};\n this.activeLinkDecorationId = null;\n this.stop();\n this.computeLinks.schedule(0);\n }));\n this._register(editor.onDidChangeModelLanguage((e) => {\n this.stop();\n this.computeLinks.schedule(0);\n }));\n this._register(this.providers.onDidChange((e) => {\n this.stop();\n this.computeLinks.schedule(0);\n }));\n this.computeLinks.schedule(0);\n }\n async computeLinksNow() {\n if (!this.editor.hasModel() || !this.editor.getOption(71 /* EditorOption.links */)) {\n return;\n }\n const model = this.editor.getModel();\n if (model.isTooLargeForSyncing()) {\n return;\n }\n if (!this.providers.has(model)) {\n return;\n }\n if (this.activeLinksList) {\n this.activeLinksList.dispose();\n this.activeLinksList = null;\n }\n this.computePromise = (0,_base_common_async_js__WEBPACK_IMPORTED_MODULE_0__.createCancelablePromise)(token => (0,_getLinks_js__WEBPACK_IMPORTED_MODULE_16__.getLinks)(this.providers, model, token));\n try {\n const sw = new _base_common_stopwatch_js__WEBPACK_IMPORTED_MODULE_8__.StopWatch(false);\n this.activeLinksList = await this.computePromise;\n this.debounceInformation.update(model, sw.elapsed());\n if (model.isDisposed()) {\n return;\n }\n this.updateDecorations(this.activeLinksList.links);\n }\n catch (err) {\n (0,_base_common_errors_js__WEBPACK_IMPORTED_MODULE_2__.onUnexpectedError)(err);\n }\n finally {\n this.computePromise = null;\n }\n }\n updateDecorations(links) {\n const useMetaKey = (this.editor.getOption(78 /* EditorOption.multiCursorModifier */) === 'altKey');\n const oldDecorations = [];\n const keys = Object.keys(this.currentOccurrences);\n for (const decorationId of keys) {\n const occurence = this.currentOccurrences[decorationId];\n oldDecorations.push(occurence.decorationId);\n }\n const newDecorations = [];\n if (links) {\n // Not sure why this is sometimes null\n for (const link of links) {\n newDecorations.push(LinkOccurrence.decoration(link, useMetaKey));\n }\n }\n this.editor.changeDecorations((changeAccessor) => {\n const decorations = changeAccessor.deltaDecorations(oldDecorations, newDecorations);\n this.currentOccurrences = {};\n this.activeLinkDecorationId = null;\n for (let i = 0, len = decorations.length; i < len; i++) {\n const occurence = new LinkOccurrence(links[i], decorations[i]);\n this.currentOccurrences[occurence.decorationId] = occurence;\n }\n });\n }\n _onEditorMouseMove(mouseEvent, withKey) {\n const useMetaKey = (this.editor.getOption(78 /* EditorOption.multiCursorModifier */) === 'altKey');\n if (this.isEnabled(mouseEvent, withKey)) {\n this.cleanUpActiveLinkDecoration(); // always remove previous link decoration as their can only be one\n const occurrence = this.getLinkOccurrence(mouseEvent.target.position);\n if (occurrence) {\n this.editor.changeDecorations((changeAccessor) => {\n occurrence.activate(changeAccessor, useMetaKey);\n this.activeLinkDecorationId = occurrence.decorationId;\n });\n }\n }\n else {\n this.cleanUpActiveLinkDecoration();\n }\n }\n cleanUpActiveLinkDecoration() {\n const useMetaKey = (this.editor.getOption(78 /* EditorOption.multiCursorModifier */) === 'altKey');\n if (this.activeLinkDecorationId) {\n const occurrence = this.currentOccurrences[this.activeLinkDecorationId];\n if (occurrence) {\n this.editor.changeDecorations((changeAccessor) => {\n occurrence.deactivate(changeAccessor, useMetaKey);\n });\n }\n this.activeLinkDecorationId = null;\n }\n }\n onEditorMouseUp(mouseEvent) {\n if (!this.isEnabled(mouseEvent)) {\n return;\n }\n const occurrence = this.getLinkOccurrence(mouseEvent.target.position);\n if (!occurrence) {\n return;\n }\n this.openLinkOccurrence(occurrence, mouseEvent.hasSideBySideModifier, true /* from user gesture */);\n }\n openLinkOccurrence(occurrence, openToSide, fromUserGesture = false) {\n if (!this.openerService) {\n return;\n }\n const { link } = occurrence;\n link.resolve(_base_common_cancellation_js__WEBPACK_IMPORTED_MODULE_1__.CancellationToken.None).then(uri => {\n // Support for relative file URIs of the shape file://./relativeFile.txt or file:///./relativeFile.txt\n if (typeof uri === 'string' && this.editor.hasModel()) {\n const modelUri = this.editor.getModel().uri;\n if (modelUri.scheme === _base_common_network_js__WEBPACK_IMPORTED_MODULE_5__.Schemas.file && uri.startsWith(`${_base_common_network_js__WEBPACK_IMPORTED_MODULE_5__.Schemas.file}:`)) {\n const parsedUri = _base_common_uri_js__WEBPACK_IMPORTED_MODULE_9__.URI.parse(uri);\n if (parsedUri.scheme === _base_common_network_js__WEBPACK_IMPORTED_MODULE_5__.Schemas.file) {\n const fsPath = _base_common_resources_js__WEBPACK_IMPORTED_MODULE_7__.originalFSPath(parsedUri);\n let relativePath = null;\n if (fsPath.startsWith('/./')) {\n relativePath = `.${fsPath.substr(1)}`;\n }\n else if (fsPath.startsWith('//./')) {\n relativePath = `.${fsPath.substr(2)}`;\n }\n if (relativePath) {\n uri = _base_common_resources_js__WEBPACK_IMPORTED_MODULE_7__.joinPath(modelUri, relativePath);\n }\n }\n }\n }\n return this.openerService.open(uri, { openToSide, fromUserGesture, allowContributedOpeners: true, allowCommands: true, fromWorkspace: true });\n }, err => {\n const messageOrError = err instanceof Error ? err.message : err;\n // different error cases\n if (messageOrError === 'invalid') {\n this.notificationService.warn(_nls_js__WEBPACK_IMPORTED_MODULE_17__.localize('invalid.url', 'Failed to open this link because it is not well-formed: {0}', link.url.toString()));\n }\n else if (messageOrError === 'missing') {\n this.notificationService.warn(_nls_js__WEBPACK_IMPORTED_MODULE_17__.localize('missing.url', 'Failed to open this link because its target is missing.'));\n }\n else {\n (0,_base_common_errors_js__WEBPACK_IMPORTED_MODULE_2__.onUnexpectedError)(err);\n }\n });\n }\n getLinkOccurrence(position) {\n if (!this.editor.hasModel() || !position) {\n return null;\n }\n const decorations = this.editor.getModel().getDecorationsInRange({\n startLineNumber: position.lineNumber,\n startColumn: position.column,\n endLineNumber: position.lineNumber,\n endColumn: position.column\n }, 0, true);\n for (const decoration of decorations) {\n const currentOccurrence = this.currentOccurrences[decoration.id];\n if (currentOccurrence) {\n return currentOccurrence;\n }\n }\n return null;\n }\n isEnabled(mouseEvent, withKey) {\n return Boolean((mouseEvent.target.type === 6 /* MouseTargetType.CONTENT_TEXT */)\n && (mouseEvent.hasTriggerModifier || (withKey && withKey.keyCodeIsTriggerKey)));\n }\n stop() {\n var _a;\n this.computeLinks.cancel();\n if (this.activeLinksList) {\n (_a = this.activeLinksList) === null || _a === void 0 ? void 0 : _a.dispose();\n this.activeLinksList = null;\n }\n if (this.computePromise) {\n this.computePromise.cancel();\n this.computePromise = null;\n }\n }\n dispose() {\n super.dispose();\n this.stop();\n }\n};\nLinkDetector.ID = 'editor.linkDetector';\nLinkDetector = LinkDetector_1 = __decorate([\n __param(1, _platform_opener_common_opener_js__WEBPACK_IMPORTED_MODULE_19__.IOpenerService),\n __param(2, _platform_notification_common_notification_js__WEBPACK_IMPORTED_MODULE_18__.INotificationService),\n __param(3, _common_services_languageFeatures_js__WEBPACK_IMPORTED_MODULE_14__.ILanguageFeaturesService),\n __param(4, _common_services_languageFeatureDebounce_js__WEBPACK_IMPORTED_MODULE_13__.ILanguageFeatureDebounceService)\n], LinkDetector);\n\nconst decoration = {\n general: _common_model_textModel_js__WEBPACK_IMPORTED_MODULE_12__.ModelDecorationOptions.register({\n description: 'detected-link',\n stickiness: 1 /* TrackedRangeStickiness.NeverGrowsWhenTypingAtEdges */,\n collapseOnReplaceEdit: true,\n inlineClassName: 'detected-link'\n }),\n active: _common_model_textModel_js__WEBPACK_IMPORTED_MODULE_12__.ModelDecorationOptions.register({\n description: 'detected-link-active',\n stickiness: 1 /* TrackedRangeStickiness.NeverGrowsWhenTypingAtEdges */,\n collapseOnReplaceEdit: true,\n inlineClassName: 'detected-link-active'\n })\n};\nclass LinkOccurrence {\n static decoration(link, useMetaKey) {\n return {\n range: link.range,\n options: LinkOccurrence._getOptions(link, useMetaKey, false)\n };\n }\n static _getOptions(link, useMetaKey, isActive) {\n const options = { ...(isActive ? decoration.active : decoration.general) };\n options.hoverMessage = getHoverMessage(link, useMetaKey);\n return options;\n }\n constructor(link, decorationId) {\n this.link = link;\n this.decorationId = decorationId;\n }\n activate(changeAccessor, useMetaKey) {\n changeAccessor.changeDecorationOptions(this.decorationId, LinkOccurrence._getOptions(this.link, useMetaKey, true));\n }\n deactivate(changeAccessor, useMetaKey) {\n changeAccessor.changeDecorationOptions(this.decorationId, LinkOccurrence._getOptions(this.link, useMetaKey, false));\n }\n}\nfunction getHoverMessage(link, useMetaKey) {\n const executeCmd = link.url && /^command:/i.test(link.url.toString());\n const label = link.tooltip\n ? link.tooltip\n : executeCmd\n ? _nls_js__WEBPACK_IMPORTED_MODULE_17__.localize('links.navigate.executeCmd', 'Execute command')\n : _nls_js__WEBPACK_IMPORTED_MODULE_17__.localize('links.navigate.follow', 'Follow link');\n const kb = useMetaKey\n ? _base_common_platform_js__WEBPACK_IMPORTED_MODULE_6__.isMacintosh\n ? _nls_js__WEBPACK_IMPORTED_MODULE_17__.localize('links.navigate.kb.meta.mac', \"cmd + click\")\n : _nls_js__WEBPACK_IMPORTED_MODULE_17__.localize('links.navigate.kb.meta', \"ctrl + click\")\n : _base_common_platform_js__WEBPACK_IMPORTED_MODULE_6__.isMacintosh\n ? _nls_js__WEBPACK_IMPORTED_MODULE_17__.localize('links.navigate.kb.alt.mac', \"option + click\")\n : _nls_js__WEBPACK_IMPORTED_MODULE_17__.localize('links.navigate.kb.alt', \"alt + click\");\n if (link.url) {\n let nativeLabel = '';\n if (/^command:/i.test(link.url.toString())) {\n // Don't show complete command arguments in the native tooltip\n const match = link.url.toString().match(/^command:([^?#]+)/);\n if (match) {\n const commandId = match[1];\n nativeLabel = _nls_js__WEBPACK_IMPORTED_MODULE_17__.localize('tooltip.explanation', \"Execute command {0}\", commandId);\n }\n }\n const hoverMessage = new _base_common_htmlContent_js__WEBPACK_IMPORTED_MODULE_3__.MarkdownString('', true)\n .appendLink(link.url.toString(true).replace(/ /g, '%20'), label, nativeLabel)\n .appendMarkdown(` (${kb})`);\n return hoverMessage;\n }\n else {\n return new _base_common_htmlContent_js__WEBPACK_IMPORTED_MODULE_3__.MarkdownString().appendText(`${label} (${kb})`);\n }\n}\nclass OpenLinkAction extends _browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_11__.EditorAction {\n constructor() {\n super({\n id: 'editor.action.openLink',\n label: _nls_js__WEBPACK_IMPORTED_MODULE_17__.localize('label', \"Open Link\"),\n alias: 'Open Link',\n precondition: undefined\n });\n }\n run(accessor, editor) {\n const linkDetector = LinkDetector.get(editor);\n if (!linkDetector) {\n return;\n }\n if (!editor.hasModel()) {\n return;\n }\n const selections = editor.getSelections();\n for (const sel of selections) {\n const link = linkDetector.getLinkOccurrence(sel.getEndPosition());\n if (link) {\n linkDetector.openLinkOccurrence(link, false);\n }\n }\n }\n}\n(0,_browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_11__.registerEditorContribution)(LinkDetector.ID, LinkDetector, 1 /* EditorContributionInstantiation.AfterFirstRender */);\n(0,_browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_11__.registerEditorAction)(OpenLinkAction);\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/contrib/links/browser/links.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/contrib/longLinesHelper/browser/longLinesHelper.js":
/*!*****************************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/contrib/longLinesHelper/browser/longLinesHelper.js ***!
\*****************************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../../base/common/lifecycle.js */ \"./node_modules/monaco-editor/esm/vs/base/common/lifecycle.js\");\n/* harmony import */ var _browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../browser/editorExtensions.js */ \"./node_modules/monaco-editor/esm/vs/editor/browser/editorExtensions.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n\nclass LongLinesHelper extends _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_0__.Disposable {\n constructor(_editor) {\n super();\n this._editor = _editor;\n this._register(this._editor.onMouseDown((e) => {\n const stopRenderingLineAfter = this._editor.getOption(117 /* EditorOption.stopRenderingLineAfter */);\n if (stopRenderingLineAfter >= 0 && e.target.type === 6 /* MouseTargetType.CONTENT_TEXT */ && e.target.position.column >= stopRenderingLineAfter) {\n this._editor.updateOptions({\n stopRenderingLineAfter: -1\n });\n }\n }));\n }\n}\nLongLinesHelper.ID = 'editor.contrib.longLinesHelper';\n(0,_browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_1__.registerEditorContribution)(LongLinesHelper.ID, LongLinesHelper, 2 /* EditorContributionInstantiation.BeforeFirstInteraction */);\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/contrib/longLinesHelper/browser/longLinesHelper.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/contrib/message/browser/messageController.js":
/*!***********************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/contrib/message/browser/messageController.js ***!
\***********************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ MessageController: () => (/* binding */ MessageController)\n/* harmony export */ });\n/* harmony import */ var _base_browser_markdownRenderer_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../../base/browser/markdownRenderer.js */ \"./node_modules/monaco-editor/esm/vs/base/browser/markdownRenderer.js\");\n/* harmony import */ var _base_browser_ui_aria_aria_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../base/browser/ui/aria/aria.js */ \"./node_modules/monaco-editor/esm/vs/base/browser/ui/aria/aria.js\");\n/* harmony import */ var _base_common_event_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../../base/common/event.js */ \"./node_modules/monaco-editor/esm/vs/base/common/event.js\");\n/* harmony import */ var _base_common_htmlContent_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../../../base/common/htmlContent.js */ \"./node_modules/monaco-editor/esm/vs/base/common/htmlContent.js\");\n/* harmony import */ var _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../../../base/common/lifecycle.js */ \"./node_modules/monaco-editor/esm/vs/base/common/lifecycle.js\");\n/* harmony import */ var _messageController_css__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./messageController.css */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/message/browser/messageController.css\");\n/* harmony import */ var _browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../../../browser/editorExtensions.js */ \"./node_modules/monaco-editor/esm/vs/editor/browser/editorExtensions.js\");\n/* harmony import */ var _common_core_range_js__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ../../../common/core/range.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/core/range.js\");\n/* harmony import */ var _browser_widget_markdownRenderer_browser_markdownRenderer_js__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ../../../browser/widget/markdownRenderer/browser/markdownRenderer.js */ \"./node_modules/monaco-editor/esm/vs/editor/browser/widget/markdownRenderer/browser/markdownRenderer.js\");\n/* harmony import */ var _nls_js__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ../../../../nls.js */ \"./node_modules/monaco-editor/esm/vs/nls.js\");\n/* harmony import */ var _platform_contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! ../../../../platform/contextkey/common/contextkey.js */ \"./node_modules/monaco-editor/esm/vs/platform/contextkey/common/contextkey.js\");\n/* harmony import */ var _platform_opener_common_opener_js__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(/*! ../../../../platform/opener/common/opener.js */ \"./node_modules/monaco-editor/esm/vs/platform/opener/common/opener.js\");\n/* harmony import */ var _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(/*! ../../../../base/browser/dom.js */ \"./node_modules/monaco-editor/esm/vs/base/browser/dom.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\nvar __decorate = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\n return c > 3 && r && Object.defineProperty(target, key, r), r;\n};\nvar __param = (undefined && undefined.__param) || function (paramIndex, decorator) {\n return function (target, key) { decorator(target, key, paramIndex); }\n};\nvar MessageController_1;\n\n\n\n\n\n\n\n\n\n\n\n\n\nlet MessageController = MessageController_1 = class MessageController {\n static get(editor) {\n return editor.getContribution(MessageController_1.ID);\n }\n constructor(editor, contextKeyService, _openerService) {\n this._openerService = _openerService;\n this._messageWidget = new _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_4__.MutableDisposable();\n this._messageListeners = new _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_4__.DisposableStore();\n this._mouseOverMessage = false;\n this._editor = editor;\n this._visible = MessageController_1.MESSAGE_VISIBLE.bindTo(contextKeyService);\n }\n dispose() {\n var _a;\n (_a = this._message) === null || _a === void 0 ? void 0 : _a.dispose();\n this._messageListeners.dispose();\n this._messageWidget.dispose();\n this._visible.reset();\n }\n showMessage(message, position) {\n (0,_base_browser_ui_aria_aria_js__WEBPACK_IMPORTED_MODULE_1__.alert)((0,_base_common_htmlContent_js__WEBPACK_IMPORTED_MODULE_3__.isMarkdownString)(message) ? message.value : message);\n this._visible.set(true);\n this._messageWidget.clear();\n this._messageListeners.clear();\n this._message = (0,_base_common_htmlContent_js__WEBPACK_IMPORTED_MODULE_3__.isMarkdownString)(message) ? (0,_base_browser_markdownRenderer_js__WEBPACK_IMPORTED_MODULE_0__.renderMarkdown)(message, {\n actionHandler: {\n callback: (url) => {\n this.closeMessage();\n (0,_browser_widget_markdownRenderer_browser_markdownRenderer_js__WEBPACK_IMPORTED_MODULE_8__.openLinkFromMarkdown)(this._openerService, url, (0,_base_common_htmlContent_js__WEBPACK_IMPORTED_MODULE_3__.isMarkdownString)(message) ? message.isTrusted : undefined);\n },\n disposables: this._messageListeners\n },\n }) : undefined;\n this._messageWidget.value = new MessageWidget(this._editor, position, typeof message === 'string' ? message : this._message.element);\n // close on blur (debounced to allow to tab into the message), cursor, model change, dispose\n this._messageListeners.add(_base_common_event_js__WEBPACK_IMPORTED_MODULE_2__.Event.debounce(this._editor.onDidBlurEditorText, (last, event) => event, 0)(() => {\n if (this._mouseOverMessage) {\n return; // override when mouse over message\n }\n if (this._messageWidget.value && _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_12__.isAncestor(_base_browser_dom_js__WEBPACK_IMPORTED_MODULE_12__.getActiveElement(), this._messageWidget.value.getDomNode())) {\n return; // override when focus is inside the message\n }\n this.closeMessage();\n }));\n this._messageListeners.add(this._editor.onDidChangeCursorPosition(() => this.closeMessage()));\n this._messageListeners.add(this._editor.onDidDispose(() => this.closeMessage()));\n this._messageListeners.add(this._editor.onDidChangeModel(() => this.closeMessage()));\n this._messageListeners.add(_base_browser_dom_js__WEBPACK_IMPORTED_MODULE_12__.addDisposableListener(this._messageWidget.value.getDomNode(), _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_12__.EventType.MOUSE_ENTER, () => this._mouseOverMessage = true, true));\n this._messageListeners.add(_base_browser_dom_js__WEBPACK_IMPORTED_MODULE_12__.addDisposableListener(this._messageWidget.value.getDomNode(), _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_12__.EventType.MOUSE_LEAVE, () => this._mouseOverMessage = false, true));\n // close on mouse move\n let bounds;\n this._messageListeners.add(this._editor.onMouseMove(e => {\n // outside the text area\n if (!e.target.position) {\n return;\n }\n if (!bounds) {\n // define bounding box around position and first mouse occurance\n bounds = new _common_core_range_js__WEBPACK_IMPORTED_MODULE_7__.Range(position.lineNumber - 3, 1, e.target.position.lineNumber + 3, 1);\n }\n else if (!bounds.containsPosition(e.target.position)) {\n // check if position is still in bounds\n this.closeMessage();\n }\n }));\n }\n closeMessage() {\n this._visible.reset();\n this._messageListeners.clear();\n if (this._messageWidget.value) {\n this._messageListeners.add(MessageWidget.fadeOut(this._messageWidget.value));\n }\n }\n};\nMessageController.ID = 'editor.contrib.messageController';\nMessageController.MESSAGE_VISIBLE = new _platform_contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_10__.RawContextKey('messageVisible', false, _nls_js__WEBPACK_IMPORTED_MODULE_9__.localize('messageVisible', 'Whether the editor is currently showing an inline message'));\nMessageController = MessageController_1 = __decorate([\n __param(1, _platform_contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_10__.IContextKeyService),\n __param(2, _platform_opener_common_opener_js__WEBPACK_IMPORTED_MODULE_11__.IOpenerService)\n], MessageController);\n\nconst MessageCommand = _browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_6__.EditorCommand.bindToContribution(MessageController.get);\n(0,_browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_6__.registerEditorCommand)(new MessageCommand({\n id: 'leaveEditorMessage',\n precondition: MessageController.MESSAGE_VISIBLE,\n handler: c => c.closeMessage(),\n kbOpts: {\n weight: 100 /* KeybindingWeight.EditorContrib */ + 30,\n primary: 9 /* KeyCode.Escape */\n }\n}));\nclass MessageWidget {\n static fadeOut(messageWidget) {\n const dispose = () => {\n messageWidget.dispose();\n clearTimeout(handle);\n messageWidget.getDomNode().removeEventListener('animationend', dispose);\n };\n const handle = setTimeout(dispose, 110);\n messageWidget.getDomNode().addEventListener('animationend', dispose);\n messageWidget.getDomNode().classList.add('fadeOut');\n return { dispose };\n }\n constructor(editor, { lineNumber, column }, text) {\n // Editor.IContentWidget.allowEditorOverflow\n this.allowEditorOverflow = true;\n this.suppressMouseDown = false;\n this._editor = editor;\n this._editor.revealLinesInCenterIfOutsideViewport(lineNumber, lineNumber, 0 /* ScrollType.Smooth */);\n this._position = { lineNumber, column };\n this._domNode = document.createElement('div');\n this._domNode.classList.add('monaco-editor-overlaymessage');\n this._domNode.style.marginLeft = '-6px';\n const anchorTop = document.createElement('div');\n anchorTop.classList.add('anchor', 'top');\n this._domNode.appendChild(anchorTop);\n const message = document.createElement('div');\n if (typeof text === 'string') {\n message.classList.add('message');\n message.textContent = text;\n }\n else {\n text.classList.add('message');\n message.appendChild(text);\n }\n this._domNode.appendChild(message);\n const anchorBottom = document.createElement('div');\n anchorBottom.classList.add('anchor', 'below');\n this._domNode.appendChild(anchorBottom);\n this._editor.addContentWidget(this);\n this._domNode.classList.add('fadeIn');\n }\n dispose() {\n this._editor.removeContentWidget(this);\n }\n getId() {\n return 'messageoverlay';\n }\n getDomNode() {\n return this._domNode;\n }\n getPosition() {\n return {\n position: this._position,\n preference: [\n 1 /* ContentWidgetPositionPreference.ABOVE */,\n 2 /* ContentWidgetPositionPreference.BELOW */,\n ],\n positionAffinity: 1 /* PositionAffinity.Right */,\n };\n }\n afterRender(position) {\n this._domNode.classList.toggle('below', position === 2 /* ContentWidgetPositionPreference.BELOW */);\n }\n}\n(0,_browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_6__.registerEditorContribution)(MessageController.ID, MessageController, 4 /* EditorContributionInstantiation.Lazy */);\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/contrib/message/browser/messageController.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/contrib/multicursor/browser/multicursor.js":
/*!*********************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/contrib/multicursor/browser/multicursor.js ***!
\*********************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ AddSelectionToNextFindMatchAction: () => (/* binding */ AddSelectionToNextFindMatchAction),\n/* harmony export */ AddSelectionToPreviousFindMatchAction: () => (/* binding */ AddSelectionToPreviousFindMatchAction),\n/* harmony export */ CompatChangeAll: () => (/* binding */ CompatChangeAll),\n/* harmony export */ FocusNextCursor: () => (/* binding */ FocusNextCursor),\n/* harmony export */ FocusPreviousCursor: () => (/* binding */ FocusPreviousCursor),\n/* harmony export */ InsertCursorAbove: () => (/* binding */ InsertCursorAbove),\n/* harmony export */ InsertCursorBelow: () => (/* binding */ InsertCursorBelow),\n/* harmony export */ MoveSelectionToNextFindMatchAction: () => (/* binding */ MoveSelectionToNextFindMatchAction),\n/* harmony export */ MoveSelectionToPreviousFindMatchAction: () => (/* binding */ MoveSelectionToPreviousFindMatchAction),\n/* harmony export */ MultiCursorSelectionController: () => (/* binding */ MultiCursorSelectionController),\n/* harmony export */ MultiCursorSelectionControllerAction: () => (/* binding */ MultiCursorSelectionControllerAction),\n/* harmony export */ MultiCursorSession: () => (/* binding */ MultiCursorSession),\n/* harmony export */ MultiCursorSessionResult: () => (/* binding */ MultiCursorSessionResult),\n/* harmony export */ SelectHighlightsAction: () => (/* binding */ SelectHighlightsAction),\n/* harmony export */ SelectionHighlighter: () => (/* binding */ SelectionHighlighter)\n/* harmony export */ });\n/* harmony import */ var _base_browser_ui_aria_aria_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../../base/browser/ui/aria/aria.js */ \"./node_modules/monaco-editor/esm/vs/base/browser/ui/aria/aria.js\");\n/* harmony import */ var _base_common_async_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../base/common/async.js */ \"./node_modules/monaco-editor/esm/vs/base/common/async.js\");\n/* harmony import */ var _base_common_keyCodes_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../../base/common/keyCodes.js */ \"./node_modules/monaco-editor/esm/vs/base/common/keyCodes.js\");\n/* harmony import */ var _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../../../base/common/lifecycle.js */ \"./node_modules/monaco-editor/esm/vs/base/common/lifecycle.js\");\n/* harmony import */ var _browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../../browser/editorExtensions.js */ \"./node_modules/monaco-editor/esm/vs/editor/browser/editorExtensions.js\");\n/* harmony import */ var _common_cursor_cursorMoveCommands_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../../../common/cursor/cursorMoveCommands.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/cursor/cursorMoveCommands.js\");\n/* harmony import */ var _common_core_range_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../../../common/core/range.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/core/range.js\");\n/* harmony import */ var _common_core_selection_js__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ../../../common/core/selection.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/core/selection.js\");\n/* harmony import */ var _common_editorContextKeys_js__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ../../../common/editorContextKeys.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/editorContextKeys.js\");\n/* harmony import */ var _find_browser_findController_js__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ../../find/browser/findController.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/find/browser/findController.js\");\n/* harmony import */ var _nls_js__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! ../../../../nls.js */ \"./node_modules/monaco-editor/esm/vs/nls.js\");\n/* harmony import */ var _platform_actions_common_actions_js__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(/*! ../../../../platform/actions/common/actions.js */ \"./node_modules/monaco-editor/esm/vs/platform/actions/common/actions.js\");\n/* harmony import */ var _platform_contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(/*! ../../../../platform/contextkey/common/contextkey.js */ \"./node_modules/monaco-editor/esm/vs/platform/contextkey/common/contextkey.js\");\n/* harmony import */ var _common_services_languageFeatures_js__WEBPACK_IMPORTED_MODULE_13__ = __webpack_require__(/*! ../../../common/services/languageFeatures.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/services/languageFeatures.js\");\n/* harmony import */ var _wordHighlighter_browser_highlightDecorations_js__WEBPACK_IMPORTED_MODULE_14__ = __webpack_require__(/*! ../../wordHighlighter/browser/highlightDecorations.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/wordHighlighter/browser/highlightDecorations.js\");\n/* harmony import */ var _platform_instantiation_common_instantiation_js__WEBPACK_IMPORTED_MODULE_15__ = __webpack_require__(/*! ../../../../platform/instantiation/common/instantiation.js */ \"./node_modules/monaco-editor/esm/vs/platform/instantiation/common/instantiation.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\nvar __decorate = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\n return c > 3 && r && Object.defineProperty(target, key, r), r;\n};\nvar __param = (undefined && undefined.__param) || function (paramIndex, decorator) {\n return function (target, key) { decorator(target, key, paramIndex); }\n};\nvar SelectionHighlighter_1;\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nfunction announceCursorChange(previousCursorState, cursorState) {\n const cursorDiff = cursorState.filter(cs => !previousCursorState.find(pcs => pcs.equals(cs)));\n if (cursorDiff.length >= 1) {\n const cursorPositions = cursorDiff.map(cs => `line ${cs.viewState.position.lineNumber} column ${cs.viewState.position.column}`).join(', ');\n const msg = cursorDiff.length === 1 ? _nls_js__WEBPACK_IMPORTED_MODULE_10__.localize('cursorAdded', \"Cursor added: {0}\", cursorPositions) : _nls_js__WEBPACK_IMPORTED_MODULE_10__.localize('cursorsAdded', \"Cursors added: {0}\", cursorPositions);\n (0,_base_browser_ui_aria_aria_js__WEBPACK_IMPORTED_MODULE_0__.status)(msg);\n }\n}\nclass InsertCursorAbove extends _browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_4__.EditorAction {\n constructor() {\n super({\n id: 'editor.action.insertCursorAbove',\n label: _nls_js__WEBPACK_IMPORTED_MODULE_10__.localize('mutlicursor.insertAbove', \"Add Cursor Above\"),\n alias: 'Add Cursor Above',\n precondition: undefined,\n kbOpts: {\n kbExpr: _common_editorContextKeys_js__WEBPACK_IMPORTED_MODULE_8__.EditorContextKeys.editorTextFocus,\n primary: 2048 /* KeyMod.CtrlCmd */ | 512 /* KeyMod.Alt */ | 16 /* KeyCode.UpArrow */,\n linux: {\n primary: 1024 /* KeyMod.Shift */ | 512 /* KeyMod.Alt */ | 16 /* KeyCode.UpArrow */,\n secondary: [2048 /* KeyMod.CtrlCmd */ | 1024 /* KeyMod.Shift */ | 16 /* KeyCode.UpArrow */]\n },\n weight: 100 /* KeybindingWeight.EditorContrib */\n },\n menuOpts: {\n menuId: _platform_actions_common_actions_js__WEBPACK_IMPORTED_MODULE_11__.MenuId.MenubarSelectionMenu,\n group: '3_multi',\n title: _nls_js__WEBPACK_IMPORTED_MODULE_10__.localize({ key: 'miInsertCursorAbove', comment: ['&& denotes a mnemonic'] }, \"&&Add Cursor Above\"),\n order: 2\n }\n });\n }\n run(accessor, editor, args) {\n if (!editor.hasModel()) {\n return;\n }\n let useLogicalLine = true;\n if (args && args.logicalLine === false) {\n useLogicalLine = false;\n }\n const viewModel = editor._getViewModel();\n if (viewModel.cursorConfig.readOnly) {\n return;\n }\n viewModel.model.pushStackElement();\n const previousCursorState = viewModel.getCursorStates();\n viewModel.setCursorStates(args.source, 3 /* CursorChangeReason.Explicit */, _common_cursor_cursorMoveCommands_js__WEBPACK_IMPORTED_MODULE_5__.CursorMoveCommands.addCursorUp(viewModel, previousCursorState, useLogicalLine));\n viewModel.revealTopMostCursor(args.source);\n announceCursorChange(previousCursorState, viewModel.getCursorStates());\n }\n}\nclass InsertCursorBelow extends _browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_4__.EditorAction {\n constructor() {\n super({\n id: 'editor.action.insertCursorBelow',\n label: _nls_js__WEBPACK_IMPORTED_MODULE_10__.localize('mutlicursor.insertBelow', \"Add Cursor Below\"),\n alias: 'Add Cursor Below',\n precondition: undefined,\n kbOpts: {\n kbExpr: _common_editorContextKeys_js__WEBPACK_IMPORTED_MODULE_8__.EditorContextKeys.editorTextFocus,\n primary: 2048 /* KeyMod.CtrlCmd */ | 512 /* KeyMod.Alt */ | 18 /* KeyCode.DownArrow */,\n linux: {\n primary: 1024 /* KeyMod.Shift */ | 512 /* KeyMod.Alt */ | 18 /* KeyCode.DownArrow */,\n secondary: [2048 /* KeyMod.CtrlCmd */ | 1024 /* KeyMod.Shift */ | 18 /* KeyCode.DownArrow */]\n },\n weight: 100 /* KeybindingWeight.EditorContrib */\n },\n menuOpts: {\n menuId: _platform_actions_common_actions_js__WEBPACK_IMPORTED_MODULE_11__.MenuId.MenubarSelectionMenu,\n group: '3_multi',\n title: _nls_js__WEBPACK_IMPORTED_MODULE_10__.localize({ key: 'miInsertCursorBelow', comment: ['&& denotes a mnemonic'] }, \"A&&dd Cursor Below\"),\n order: 3\n }\n });\n }\n run(accessor, editor, args) {\n if (!editor.hasModel()) {\n return;\n }\n let useLogicalLine = true;\n if (args && args.logicalLine === false) {\n useLogicalLine = false;\n }\n const viewModel = editor._getViewModel();\n if (viewModel.cursorConfig.readOnly) {\n return;\n }\n viewModel.model.pushStackElement();\n const previousCursorState = viewModel.getCursorStates();\n viewModel.setCursorStates(args.source, 3 /* CursorChangeReason.Explicit */, _common_cursor_cursorMoveCommands_js__WEBPACK_IMPORTED_MODULE_5__.CursorMoveCommands.addCursorDown(viewModel, previousCursorState, useLogicalLine));\n viewModel.revealBottomMostCursor(args.source);\n announceCursorChange(previousCursorState, viewModel.getCursorStates());\n }\n}\nclass InsertCursorAtEndOfEachLineSelected extends _browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_4__.EditorAction {\n constructor() {\n super({\n id: 'editor.action.insertCursorAtEndOfEachLineSelected',\n label: _nls_js__WEBPACK_IMPORTED_MODULE_10__.localize('mutlicursor.insertAtEndOfEachLineSelected', \"Add Cursors to Line Ends\"),\n alias: 'Add Cursors to Line Ends',\n precondition: undefined,\n kbOpts: {\n kbExpr: _common_editorContextKeys_js__WEBPACK_IMPORTED_MODULE_8__.EditorContextKeys.editorTextFocus,\n primary: 1024 /* KeyMod.Shift */ | 512 /* KeyMod.Alt */ | 39 /* KeyCode.KeyI */,\n weight: 100 /* KeybindingWeight.EditorContrib */\n },\n menuOpts: {\n menuId: _platform_actions_common_actions_js__WEBPACK_IMPORTED_MODULE_11__.MenuId.MenubarSelectionMenu,\n group: '3_multi',\n title: _nls_js__WEBPACK_IMPORTED_MODULE_10__.localize({ key: 'miInsertCursorAtEndOfEachLineSelected', comment: ['&& denotes a mnemonic'] }, \"Add C&&ursors to Line Ends\"),\n order: 4\n }\n });\n }\n getCursorsForSelection(selection, model, result) {\n if (selection.isEmpty()) {\n return;\n }\n for (let i = selection.startLineNumber; i < selection.endLineNumber; i++) {\n const currentLineMaxColumn = model.getLineMaxColumn(i);\n result.push(new _common_core_selection_js__WEBPACK_IMPORTED_MODULE_7__.Selection(i, currentLineMaxColumn, i, currentLineMaxColumn));\n }\n if (selection.endColumn > 1) {\n result.push(new _common_core_selection_js__WEBPACK_IMPORTED_MODULE_7__.Selection(selection.endLineNumber, selection.endColumn, selection.endLineNumber, selection.endColumn));\n }\n }\n run(accessor, editor) {\n if (!editor.hasModel()) {\n return;\n }\n const model = editor.getModel();\n const selections = editor.getSelections();\n const viewModel = editor._getViewModel();\n const previousCursorState = viewModel.getCursorStates();\n const newSelections = [];\n selections.forEach((sel) => this.getCursorsForSelection(sel, model, newSelections));\n if (newSelections.length > 0) {\n editor.setSelections(newSelections);\n }\n announceCursorChange(previousCursorState, viewModel.getCursorStates());\n }\n}\nclass InsertCursorAtEndOfLineSelected extends _browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_4__.EditorAction {\n constructor() {\n super({\n id: 'editor.action.addCursorsToBottom',\n label: _nls_js__WEBPACK_IMPORTED_MODULE_10__.localize('mutlicursor.addCursorsToBottom', \"Add Cursors To Bottom\"),\n alias: 'Add Cursors To Bottom',\n precondition: undefined\n });\n }\n run(accessor, editor) {\n if (!editor.hasModel()) {\n return;\n }\n const selections = editor.getSelections();\n const lineCount = editor.getModel().getLineCount();\n const newSelections = [];\n for (let i = selections[0].startLineNumber; i <= lineCount; i++) {\n newSelections.push(new _common_core_selection_js__WEBPACK_IMPORTED_MODULE_7__.Selection(i, selections[0].startColumn, i, selections[0].endColumn));\n }\n const viewModel = editor._getViewModel();\n const previousCursorState = viewModel.getCursorStates();\n if (newSelections.length > 0) {\n editor.setSelections(newSelections);\n }\n announceCursorChange(previousCursorState, viewModel.getCursorStates());\n }\n}\nclass InsertCursorAtTopOfLineSelected extends _browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_4__.EditorAction {\n constructor() {\n super({\n id: 'editor.action.addCursorsToTop',\n label: _nls_js__WEBPACK_IMPORTED_MODULE_10__.localize('mutlicursor.addCursorsToTop', \"Add Cursors To Top\"),\n alias: 'Add Cursors To Top',\n precondition: undefined\n });\n }\n run(accessor, editor) {\n if (!editor.hasModel()) {\n return;\n }\n const selections = editor.getSelections();\n const newSelections = [];\n for (let i = selections[0].startLineNumber; i >= 1; i--) {\n newSelections.push(new _common_core_selection_js__WEBPACK_IMPORTED_MODULE_7__.Selection(i, selections[0].startColumn, i, selections[0].endColumn));\n }\n const viewModel = editor._getViewModel();\n const previousCursorState = viewModel.getCursorStates();\n if (newSelections.length > 0) {\n editor.setSelections(newSelections);\n }\n announceCursorChange(previousCursorState, viewModel.getCursorStates());\n }\n}\nclass MultiCursorSessionResult {\n constructor(selections, revealRange, revealScrollType) {\n this.selections = selections;\n this.revealRange = revealRange;\n this.revealScrollType = revealScrollType;\n }\n}\nclass MultiCursorSession {\n static create(editor, findController) {\n if (!editor.hasModel()) {\n return null;\n }\n const findState = findController.getState();\n // Find widget owns entirely what we search for if:\n // - focus is not in the editor (i.e. it is in the find widget)\n // - and the search widget is visible\n // - and the search string is non-empty\n if (!editor.hasTextFocus() && findState.isRevealed && findState.searchString.length > 0) {\n // Find widget owns what is searched for\n return new MultiCursorSession(editor, findController, false, findState.searchString, findState.wholeWord, findState.matchCase, null);\n }\n // Otherwise, the selection gives the search text, and the find widget gives the search settings\n // The exception is the find state disassociation case: when beginning with a single, collapsed selection\n let isDisconnectedFromFindController = false;\n let wholeWord;\n let matchCase;\n const selections = editor.getSelections();\n if (selections.length === 1 && selections[0].isEmpty()) {\n isDisconnectedFromFindController = true;\n wholeWord = true;\n matchCase = true;\n }\n else {\n wholeWord = findState.wholeWord;\n matchCase = findState.matchCase;\n }\n // Selection owns what is searched for\n const s = editor.getSelection();\n let searchText;\n let currentMatch = null;\n if (s.isEmpty()) {\n // selection is empty => expand to current word\n const word = editor.getConfiguredWordAtPosition(s.getStartPosition());\n if (!word) {\n return null;\n }\n searchText = word.word;\n currentMatch = new _common_core_selection_js__WEBPACK_IMPORTED_MODULE_7__.Selection(s.startLineNumber, word.startColumn, s.startLineNumber, word.endColumn);\n }\n else {\n searchText = editor.getModel().getValueInRange(s).replace(/\\r\\n/g, '\\n');\n }\n return new MultiCursorSession(editor, findController, isDisconnectedFromFindController, searchText, wholeWord, matchCase, currentMatch);\n }\n constructor(_editor, findController, isDisconnectedFromFindController, searchText, wholeWord, matchCase, currentMatch) {\n this._editor = _editor;\n this.findController = findController;\n this.isDisconnectedFromFindController = isDisconnectedFromFindController;\n this.searchText = searchText;\n this.wholeWord = wholeWord;\n this.matchCase = matchCase;\n this.currentMatch = currentMatch;\n }\n addSelectionToNextFindMatch() {\n if (!this._editor.hasModel()) {\n return null;\n }\n const nextMatch = this._getNextMatch();\n if (!nextMatch) {\n return null;\n }\n const allSelections = this._editor.getSelections();\n return new MultiCursorSessionResult(allSelections.concat(nextMatch), nextMatch, 0 /* ScrollType.Smooth */);\n }\n moveSelectionToNextFindMatch() {\n if (!this._editor.hasModel()) {\n return null;\n }\n const nextMatch = this._getNextMatch();\n if (!nextMatch) {\n return null;\n }\n const allSelections = this._editor.getSelections();\n return new MultiCursorSessionResult(allSelections.slice(0, allSelections.length - 1).concat(nextMatch), nextMatch, 0 /* ScrollType.Smooth */);\n }\n _getNextMatch() {\n if (!this._editor.hasModel()) {\n return null;\n }\n if (this.currentMatch) {\n const result = this.currentMatch;\n this.currentMatch = null;\n return result;\n }\n this.findController.highlightFindOptions();\n const allSelections = this._editor.getSelections();\n const lastAddedSelection = allSelections[allSelections.length - 1];\n const nextMatch = this._editor.getModel().findNextMatch(this.searchText, lastAddedSelection.getEndPosition(), false, this.matchCase, this.wholeWord ? this._editor.getOption(130 /* EditorOption.wordSeparators */) : null, false);\n if (!nextMatch) {\n return null;\n }\n return new _common_core_selection_js__WEBPACK_IMPORTED_MODULE_7__.Selection(nextMatch.range.startLineNumber, nextMatch.range.startColumn, nextMatch.range.endLineNumber, nextMatch.range.endColumn);\n }\n addSelectionToPreviousFindMatch() {\n if (!this._editor.hasModel()) {\n return null;\n }\n const previousMatch = this._getPreviousMatch();\n if (!previousMatch) {\n return null;\n }\n const allSelections = this._editor.getSelections();\n return new MultiCursorSessionResult(allSelections.concat(previousMatch), previousMatch, 0 /* ScrollType.Smooth */);\n }\n moveSelectionToPreviousFindMatch() {\n if (!this._editor.hasModel()) {\n return null;\n }\n const previousMatch = this._getPreviousMatch();\n if (!previousMatch) {\n return null;\n }\n const allSelections = this._editor.getSelections();\n return new MultiCursorSessionResult(allSelections.slice(0, allSelections.length - 1).concat(previousMatch), previousMatch, 0 /* ScrollType.Smooth */);\n }\n _getPreviousMatch() {\n if (!this._editor.hasModel()) {\n return null;\n }\n if (this.currentMatch) {\n const result = this.currentMatch;\n this.currentMatch = null;\n return result;\n }\n this.findController.highlightFindOptions();\n const allSelections = this._editor.getSelections();\n const lastAddedSelection = allSelections[allSelections.length - 1];\n const previousMatch = this._editor.getModel().findPreviousMatch(this.searchText, lastAddedSelection.getStartPosition(), false, this.matchCase, this.wholeWord ? this._editor.getOption(130 /* EditorOption.wordSeparators */) : null, false);\n if (!previousMatch) {\n return null;\n }\n return new _common_core_selection_js__WEBPACK_IMPORTED_MODULE_7__.Selection(previousMatch.range.startLineNumber, previousMatch.range.startColumn, previousMatch.range.endLineNumber, previousMatch.range.endColumn);\n }\n selectAll(searchScope) {\n if (!this._editor.hasModel()) {\n return [];\n }\n this.findController.highlightFindOptions();\n const editorModel = this._editor.getModel();\n if (searchScope) {\n return editorModel.findMatches(this.searchText, searchScope, false, this.matchCase, this.wholeWord ? this._editor.getOption(130 /* EditorOption.wordSeparators */) : null, false, 1073741824 /* Constants.MAX_SAFE_SMALL_INTEGER */);\n }\n return editorModel.findMatches(this.searchText, true, false, this.matchCase, this.wholeWord ? this._editor.getOption(130 /* EditorOption.wordSeparators */) : null, false, 1073741824 /* Constants.MAX_SAFE_SMALL_INTEGER */);\n }\n}\nclass MultiCursorSelectionController extends _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_3__.Disposable {\n static get(editor) {\n return editor.getContribution(MultiCursorSelectionController.ID);\n }\n constructor(editor) {\n super();\n this._sessionDispose = this._register(new _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_3__.DisposableStore());\n this._editor = editor;\n this._ignoreSelectionChange = false;\n this._session = null;\n }\n dispose() {\n this._endSession();\n super.dispose();\n }\n _beginSessionIfNeeded(findController) {\n if (!this._session) {\n // Create a new session\n const session = MultiCursorSession.create(this._editor, findController);\n if (!session) {\n return;\n }\n this._session = session;\n const newState = { searchString: this._session.searchText };\n if (this._session.isDisconnectedFromFindController) {\n newState.wholeWordOverride = 1 /* FindOptionOverride.True */;\n newState.matchCaseOverride = 1 /* FindOptionOverride.True */;\n newState.isRegexOverride = 2 /* FindOptionOverride.False */;\n }\n findController.getState().change(newState, false);\n this._sessionDispose.add(this._editor.onDidChangeCursorSelection((e) => {\n if (this._ignoreSelectionChange) {\n return;\n }\n this._endSession();\n }));\n this._sessionDispose.add(this._editor.onDidBlurEditorText(() => {\n this._endSession();\n }));\n this._sessionDispose.add(findController.getState().onFindReplaceStateChange((e) => {\n if (e.matchCase || e.wholeWord) {\n this._endSession();\n }\n }));\n }\n }\n _endSession() {\n this._sessionDispose.clear();\n if (this._session && this._session.isDisconnectedFromFindController) {\n const newState = {\n wholeWordOverride: 0 /* FindOptionOverride.NotSet */,\n matchCaseOverride: 0 /* FindOptionOverride.NotSet */,\n isRegexOverride: 0 /* FindOptionOverride.NotSet */,\n };\n this._session.findController.getState().change(newState, false);\n }\n this._session = null;\n }\n _setSelections(selections) {\n this._ignoreSelectionChange = true;\n this._editor.setSelections(selections);\n this._ignoreSelectionChange = false;\n }\n _expandEmptyToWord(model, selection) {\n if (!selection.isEmpty()) {\n return selection;\n }\n const word = this._editor.getConfiguredWordAtPosition(selection.getStartPosition());\n if (!word) {\n return selection;\n }\n return new _common_core_selection_js__WEBPACK_IMPORTED_MODULE_7__.Selection(selection.startLineNumber, word.startColumn, selection.startLineNumber, word.endColumn);\n }\n _applySessionResult(result) {\n if (!result) {\n return;\n }\n this._setSelections(result.selections);\n if (result.revealRange) {\n this._editor.revealRangeInCenterIfOutsideViewport(result.revealRange, result.revealScrollType);\n }\n }\n getSession(findController) {\n return this._session;\n }\n addSelectionToNextFindMatch(findController) {\n if (!this._editor.hasModel()) {\n return;\n }\n if (!this._session) {\n // If there are multiple cursors, handle the case where they do not all select the same text.\n const allSelections = this._editor.getSelections();\n if (allSelections.length > 1) {\n const findState = findController.getState();\n const matchCase = findState.matchCase;\n const selectionsContainSameText = modelRangesContainSameText(this._editor.getModel(), allSelections, matchCase);\n if (!selectionsContainSameText) {\n const model = this._editor.getModel();\n const resultingSelections = [];\n for (let i = 0, len = allSelections.length; i < len; i++) {\n resultingSelections[i] = this._expandEmptyToWord(model, allSelections[i]);\n }\n this._editor.setSelections(resultingSelections);\n return;\n }\n }\n }\n this._beginSessionIfNeeded(findController);\n if (this._session) {\n this._applySessionResult(this._session.addSelectionToNextFindMatch());\n }\n }\n addSelectionToPreviousFindMatch(findController) {\n this._beginSessionIfNeeded(findController);\n if (this._session) {\n this._applySessionResult(this._session.addSelectionToPreviousFindMatch());\n }\n }\n moveSelectionToNextFindMatch(findController) {\n this._beginSessionIfNeeded(findController);\n if (this._session) {\n this._applySessionResult(this._session.moveSelectionToNextFindMatch());\n }\n }\n moveSelectionToPreviousFindMatch(findController) {\n this._beginSessionIfNeeded(findController);\n if (this._session) {\n this._applySessionResult(this._session.moveSelectionToPreviousFindMatch());\n }\n }\n selectAll(findController) {\n if (!this._editor.hasModel()) {\n return;\n }\n let matches = null;\n const findState = findController.getState();\n // Special case: find widget owns entirely what we search for if:\n // - focus is not in the editor (i.e. it is in the find widget)\n // - and the search widget is visible\n // - and the search string is non-empty\n // - and we're searching for a regex\n if (findState.isRevealed && findState.searchString.length > 0 && findState.isRegex) {\n const editorModel = this._editor.getModel();\n if (findState.searchScope) {\n matches = editorModel.findMatches(findState.searchString, findState.searchScope, findState.isRegex, findState.matchCase, findState.wholeWord ? this._editor.getOption(130 /* EditorOption.wordSeparators */) : null, false, 1073741824 /* Constants.MAX_SAFE_SMALL_INTEGER */);\n }\n else {\n matches = editorModel.findMatches(findState.searchString, true, findState.isRegex, findState.matchCase, findState.wholeWord ? this._editor.getOption(130 /* EditorOption.wordSeparators */) : null, false, 1073741824 /* Constants.MAX_SAFE_SMALL_INTEGER */);\n }\n }\n else {\n this._beginSessionIfNeeded(findController);\n if (!this._session) {\n return;\n }\n matches = this._session.selectAll(findState.searchScope);\n }\n if (matches.length > 0) {\n const editorSelection = this._editor.getSelection();\n // Have the primary cursor remain the one where the action was invoked\n for (let i = 0, len = matches.length; i < len; i++) {\n const match = matches[i];\n const intersection = match.range.intersectRanges(editorSelection);\n if (intersection) {\n // bingo!\n matches[i] = matches[0];\n matches[0] = match;\n break;\n }\n }\n this._setSelections(matches.map(m => new _common_core_selection_js__WEBPACK_IMPORTED_MODULE_7__.Selection(m.range.startLineNumber, m.range.startColumn, m.range.endLineNumber, m.range.endColumn)));\n }\n }\n}\nMultiCursorSelectionController.ID = 'editor.contrib.multiCursorController';\nclass MultiCursorSelectionControllerAction extends _browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_4__.EditorAction {\n run(accessor, editor) {\n const multiCursorController = MultiCursorSelectionController.get(editor);\n if (!multiCursorController) {\n return;\n }\n const viewModel = editor._getViewModel();\n if (viewModel) {\n const previousCursorState = viewModel.getCursorStates();\n const findController = _find_browser_findController_js__WEBPACK_IMPORTED_MODULE_9__.CommonFindController.get(editor);\n if (findController) {\n this._run(multiCursorController, findController);\n }\n else {\n const newFindController = accessor.get(_platform_instantiation_common_instantiation_js__WEBPACK_IMPORTED_MODULE_15__.IInstantiationService).createInstance(_find_browser_findController_js__WEBPACK_IMPORTED_MODULE_9__.CommonFindController, editor);\n this._run(multiCursorController, newFindController);\n newFindController.dispose();\n }\n announceCursorChange(previousCursorState, viewModel.getCursorStates());\n }\n }\n}\nclass AddSelectionToNextFindMatchAction extends MultiCursorSelectionControllerAction {\n constructor() {\n super({\n id: 'editor.action.addSelectionToNextFindMatch',\n label: _nls_js__WEBPACK_IMPORTED_MODULE_10__.localize('addSelectionToNextFindMatch', \"Add Selection To Next Find Match\"),\n alias: 'Add Selection To Next Find Match',\n precondition: undefined,\n kbOpts: {\n kbExpr: _common_editorContextKeys_js__WEBPACK_IMPORTED_MODULE_8__.EditorContextKeys.focus,\n primary: 2048 /* KeyMod.CtrlCmd */ | 34 /* KeyCode.KeyD */,\n weight: 100 /* KeybindingWeight.EditorContrib */\n },\n menuOpts: {\n menuId: _platform_actions_common_actions_js__WEBPACK_IMPORTED_MODULE_11__.MenuId.MenubarSelectionMenu,\n group: '3_multi',\n title: _nls_js__WEBPACK_IMPORTED_MODULE_10__.localize({ key: 'miAddSelectionToNextFindMatch', comment: ['&& denotes a mnemonic'] }, \"Add &&Next Occurrence\"),\n order: 5\n }\n });\n }\n _run(multiCursorController, findController) {\n multiCursorController.addSelectionToNextFindMatch(findController);\n }\n}\nclass AddSelectionToPreviousFindMatchAction extends MultiCursorSelectionControllerAction {\n constructor() {\n super({\n id: 'editor.action.addSelectionToPreviousFindMatch',\n label: _nls_js__WEBPACK_IMPORTED_MODULE_10__.localize('addSelectionToPreviousFindMatch', \"Add Selection To Previous Find Match\"),\n alias: 'Add Selection To Previous Find Match',\n precondition: undefined,\n menuOpts: {\n menuId: _platform_actions_common_actions_js__WEBPACK_IMPORTED_MODULE_11__.MenuId.MenubarSelectionMenu,\n group: '3_multi',\n title: _nls_js__WEBPACK_IMPORTED_MODULE_10__.localize({ key: 'miAddSelectionToPreviousFindMatch', comment: ['&& denotes a mnemonic'] }, \"Add P&&revious Occurrence\"),\n order: 6\n }\n });\n }\n _run(multiCursorController, findController) {\n multiCursorController.addSelectionToPreviousFindMatch(findController);\n }\n}\nclass MoveSelectionToNextFindMatchAction extends MultiCursorSelectionControllerAction {\n constructor() {\n super({\n id: 'editor.action.moveSelectionToNextFindMatch',\n label: _nls_js__WEBPACK_IMPORTED_MODULE_10__.localize('moveSelectionToNextFindMatch', \"Move Last Selection To Next Find Match\"),\n alias: 'Move Last Selection To Next Find Match',\n precondition: undefined,\n kbOpts: {\n kbExpr: _common_editorContextKeys_js__WEBPACK_IMPORTED_MODULE_8__.EditorContextKeys.focus,\n primary: (0,_base_common_keyCodes_js__WEBPACK_IMPORTED_MODULE_2__.KeyChord)(2048 /* KeyMod.CtrlCmd */ | 41 /* KeyCode.KeyK */, 2048 /* KeyMod.CtrlCmd */ | 34 /* KeyCode.KeyD */),\n weight: 100 /* KeybindingWeight.EditorContrib */\n }\n });\n }\n _run(multiCursorController, findController) {\n multiCursorController.moveSelectionToNextFindMatch(findController);\n }\n}\nclass MoveSelectionToPreviousFindMatchAction extends MultiCursorSelectionControllerAction {\n constructor() {\n super({\n id: 'editor.action.moveSelectionToPreviousFindMatch',\n label: _nls_js__WEBPACK_IMPORTED_MODULE_10__.localize('moveSelectionToPreviousFindMatch', \"Move Last Selection To Previous Find Match\"),\n alias: 'Move Last Selection To Previous Find Match',\n precondition: undefined\n });\n }\n _run(multiCursorController, findController) {\n multiCursorController.moveSelectionToPreviousFindMatch(findController);\n }\n}\nclass SelectHighlightsAction extends MultiCursorSelectionControllerAction {\n constructor() {\n super({\n id: 'editor.action.selectHighlights',\n label: _nls_js__WEBPACK_IMPORTED_MODULE_10__.localize('selectAllOccurrencesOfFindMatch', \"Select All Occurrences of Find Match\"),\n alias: 'Select All Occurrences of Find Match',\n precondition: undefined,\n kbOpts: {\n kbExpr: _common_editorContextKeys_js__WEBPACK_IMPORTED_MODULE_8__.EditorContextKeys.focus,\n primary: 2048 /* KeyMod.CtrlCmd */ | 1024 /* KeyMod.Shift */ | 42 /* KeyCode.KeyL */,\n weight: 100 /* KeybindingWeight.EditorContrib */\n },\n menuOpts: {\n menuId: _platform_actions_common_actions_js__WEBPACK_IMPORTED_MODULE_11__.MenuId.MenubarSelectionMenu,\n group: '3_multi',\n title: _nls_js__WEBPACK_IMPORTED_MODULE_10__.localize({ key: 'miSelectHighlights', comment: ['&& denotes a mnemonic'] }, \"Select All &&Occurrences\"),\n order: 7\n }\n });\n }\n _run(multiCursorController, findController) {\n multiCursorController.selectAll(findController);\n }\n}\nclass CompatChangeAll extends MultiCursorSelectionControllerAction {\n constructor() {\n super({\n id: 'editor.action.changeAll',\n label: _nls_js__WEBPACK_IMPORTED_MODULE_10__.localize('changeAll.label', \"Change All Occurrences\"),\n alias: 'Change All Occurrences',\n precondition: _platform_contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_12__.ContextKeyExpr.and(_common_editorContextKeys_js__WEBPACK_IMPORTED_MODULE_8__.EditorContextKeys.writable, _common_editorContextKeys_js__WEBPACK_IMPORTED_MODULE_8__.EditorContextKeys.editorTextFocus),\n kbOpts: {\n kbExpr: _common_editorContextKeys_js__WEBPACK_IMPORTED_MODULE_8__.EditorContextKeys.editorTextFocus,\n primary: 2048 /* KeyMod.CtrlCmd */ | 60 /* KeyCode.F2 */,\n weight: 100 /* KeybindingWeight.EditorContrib */\n },\n contextMenuOpts: {\n group: '1_modification',\n order: 1.2\n }\n });\n }\n _run(multiCursorController, findController) {\n multiCursorController.selectAll(findController);\n }\n}\nclass SelectionHighlighterState {\n constructor(_model, _searchText, _matchCase, _wordSeparators, prevState) {\n this._model = _model;\n this._searchText = _searchText;\n this._matchCase = _matchCase;\n this._wordSeparators = _wordSeparators;\n this._modelVersionId = this._model.getVersionId();\n this._cachedFindMatches = null;\n if (prevState\n && this._model === prevState._model\n && this._searchText === prevState._searchText\n && this._matchCase === prevState._matchCase\n && this._wordSeparators === prevState._wordSeparators\n && this._modelVersionId === prevState._modelVersionId) {\n this._cachedFindMatches = prevState._cachedFindMatches;\n }\n }\n findMatches() {\n if (this._cachedFindMatches === null) {\n this._cachedFindMatches = this._model.findMatches(this._searchText, true, false, this._matchCase, this._wordSeparators, false).map(m => m.range);\n this._cachedFindMatches.sort(_common_core_range_js__WEBPACK_IMPORTED_MODULE_6__.Range.compareRangesUsingStarts);\n }\n return this._cachedFindMatches;\n }\n}\nlet SelectionHighlighter = SelectionHighlighter_1 = class SelectionHighlighter extends _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_3__.Disposable {\n constructor(editor, _languageFeaturesService) {\n super();\n this._languageFeaturesService = _languageFeaturesService;\n this.editor = editor;\n this._isEnabled = editor.getOption(108 /* EditorOption.selectionHighlight */);\n this._decorations = editor.createDecorationsCollection();\n this.updateSoon = this._register(new _base_common_async_js__WEBPACK_IMPORTED_MODULE_1__.RunOnceScheduler(() => this._update(), 300));\n this.state = null;\n this._register(editor.onDidChangeConfiguration((e) => {\n this._isEnabled = editor.getOption(108 /* EditorOption.selectionHighlight */);\n }));\n this._register(editor.onDidChangeCursorSelection((e) => {\n if (!this._isEnabled) {\n // Early exit if nothing needs to be done!\n // Leave some form of early exit check here if you wish to continue being a cursor position change listener ;)\n return;\n }\n if (e.selection.isEmpty()) {\n if (e.reason === 3 /* CursorChangeReason.Explicit */) {\n if (this.state) {\n // no longer valid\n this._setState(null);\n }\n this.updateSoon.schedule();\n }\n else {\n this._setState(null);\n }\n }\n else {\n this._update();\n }\n }));\n this._register(editor.onDidChangeModel((e) => {\n this._setState(null);\n }));\n this._register(editor.onDidChangeModelContent((e) => {\n if (this._isEnabled) {\n this.updateSoon.schedule();\n }\n }));\n const findController = _find_browser_findController_js__WEBPACK_IMPORTED_MODULE_9__.CommonFindController.get(editor);\n if (findController) {\n this._register(findController.getState().onFindReplaceStateChange((e) => {\n this._update();\n }));\n }\n this.updateSoon.schedule();\n }\n _update() {\n this._setState(SelectionHighlighter_1._createState(this.state, this._isEnabled, this.editor));\n }\n static _createState(oldState, isEnabled, editor) {\n if (!isEnabled) {\n return null;\n }\n if (!editor.hasModel()) {\n return null;\n }\n const s = editor.getSelection();\n if (s.startLineNumber !== s.endLineNumber) {\n // multiline forbidden for perf reasons\n return null;\n }\n const multiCursorController = MultiCursorSelectionController.get(editor);\n if (!multiCursorController) {\n return null;\n }\n const findController = _find_browser_findController_js__WEBPACK_IMPORTED_MODULE_9__.CommonFindController.get(editor);\n if (!findController) {\n return null;\n }\n let r = multiCursorController.getSession(findController);\n if (!r) {\n const allSelections = editor.getSelections();\n if (allSelections.length > 1) {\n const findState = findController.getState();\n const matchCase = findState.matchCase;\n const selectionsContainSameText = modelRangesContainSameText(editor.getModel(), allSelections, matchCase);\n if (!selectionsContainSameText) {\n return null;\n }\n }\n r = MultiCursorSession.create(editor, findController);\n }\n if (!r) {\n return null;\n }\n if (r.currentMatch) {\n // This is an empty selection\n // Do not interfere with semantic word highlighting in the no selection case\n return null;\n }\n if (/^[ \\t]+$/.test(r.searchText)) {\n // whitespace only selection\n return null;\n }\n if (r.searchText.length > 200) {\n // very long selection\n return null;\n }\n // TODO: better handling of this case\n const findState = findController.getState();\n const caseSensitive = findState.matchCase;\n // Return early if the find widget shows the exact same matches\n if (findState.isRevealed) {\n let findStateSearchString = findState.searchString;\n if (!caseSensitive) {\n findStateSearchString = findStateSearchString.toLowerCase();\n }\n let mySearchString = r.searchText;\n if (!caseSensitive) {\n mySearchString = mySearchString.toLowerCase();\n }\n if (findStateSearchString === mySearchString && r.matchCase === findState.matchCase && r.wholeWord === findState.wholeWord && !findState.isRegex) {\n return null;\n }\n }\n return new SelectionHighlighterState(editor.getModel(), r.searchText, r.matchCase, r.wholeWord ? editor.getOption(130 /* EditorOption.wordSeparators */) : null, oldState);\n }\n _setState(newState) {\n this.state = newState;\n if (!this.state) {\n this._decorations.clear();\n return;\n }\n if (!this.editor.hasModel()) {\n return;\n }\n const model = this.editor.getModel();\n if (model.isTooLargeForTokenization()) {\n // the file is too large, so searching word under cursor in the whole document would be blocking the UI.\n return;\n }\n const allMatches = this.state.findMatches();\n const selections = this.editor.getSelections();\n selections.sort(_common_core_range_js__WEBPACK_IMPORTED_MODULE_6__.Range.compareRangesUsingStarts);\n // do not overlap with selection (issue #64 and #512)\n const matches = [];\n for (let i = 0, j = 0, len = allMatches.length, lenJ = selections.length; i < len;) {\n const match = allMatches[i];\n if (j >= lenJ) {\n // finished all editor selections\n matches.push(match);\n i++;\n }\n else {\n const cmp = _common_core_range_js__WEBPACK_IMPORTED_MODULE_6__.Range.compareRangesUsingStarts(match, selections[j]);\n if (cmp < 0) {\n // match is before sel\n if (selections[j].isEmpty() || !_common_core_range_js__WEBPACK_IMPORTED_MODULE_6__.Range.areIntersecting(match, selections[j])) {\n matches.push(match);\n }\n i++;\n }\n else if (cmp > 0) {\n // sel is before match\n j++;\n }\n else {\n // sel is equal to match\n i++;\n j++;\n }\n }\n }\n const occurrenceHighlighting = this.editor.getOption(81 /* EditorOption.occurrencesHighlight */) !== 'off';\n const hasSemanticHighlights = this._languageFeaturesService.documentHighlightProvider.has(model) && occurrenceHighlighting;\n const decorations = matches.map(r => {\n return {\n range: r,\n options: (0,_wordHighlighter_browser_highlightDecorations_js__WEBPACK_IMPORTED_MODULE_14__.getSelectionHighlightDecorationOptions)(hasSemanticHighlights)\n };\n });\n this._decorations.set(decorations);\n }\n dispose() {\n this._setState(null);\n super.dispose();\n }\n};\nSelectionHighlighter.ID = 'editor.contrib.selectionHighlighter';\nSelectionHighlighter = SelectionHighlighter_1 = __decorate([\n __param(1, _common_services_languageFeatures_js__WEBPACK_IMPORTED_MODULE_13__.ILanguageFeaturesService)\n], SelectionHighlighter);\n\nfunction modelRangesContainSameText(model, ranges, matchCase) {\n const selectedText = getValueInRange(model, ranges[0], !matchCase);\n for (let i = 1, len = ranges.length; i < len; i++) {\n const range = ranges[i];\n if (range.isEmpty()) {\n return false;\n }\n const thisSelectedText = getValueInRange(model, range, !matchCase);\n if (selectedText !== thisSelectedText) {\n return false;\n }\n }\n return true;\n}\nfunction getValueInRange(model, range, toLowerCase) {\n const text = model.getValueInRange(range);\n return (toLowerCase ? text.toLowerCase() : text);\n}\nclass FocusNextCursor extends _browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_4__.EditorAction {\n constructor() {\n super({\n id: 'editor.action.focusNextCursor',\n label: _nls_js__WEBPACK_IMPORTED_MODULE_10__.localize('mutlicursor.focusNextCursor', \"Focus Next Cursor\"),\n metadata: {\n description: _nls_js__WEBPACK_IMPORTED_MODULE_10__.localize('mutlicursor.focusNextCursor.description', \"Focuses the next cursor\"),\n args: [],\n },\n alias: 'Focus Next Cursor',\n precondition: undefined\n });\n }\n run(accessor, editor, args) {\n if (!editor.hasModel()) {\n return;\n }\n const viewModel = editor._getViewModel();\n if (viewModel.cursorConfig.readOnly) {\n return;\n }\n viewModel.model.pushStackElement();\n const previousCursorState = Array.from(viewModel.getCursorStates());\n const firstCursor = previousCursorState.shift();\n if (!firstCursor) {\n return;\n }\n previousCursorState.push(firstCursor);\n viewModel.setCursorStates(args.source, 3 /* CursorChangeReason.Explicit */, previousCursorState);\n viewModel.revealPrimaryCursor(args.source, true);\n announceCursorChange(previousCursorState, viewModel.getCursorStates());\n }\n}\nclass FocusPreviousCursor extends _browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_4__.EditorAction {\n constructor() {\n super({\n id: 'editor.action.focusPreviousCursor',\n label: _nls_js__WEBPACK_IMPORTED_MODULE_10__.localize('mutlicursor.focusPreviousCursor', \"Focus Previous Cursor\"),\n metadata: {\n description: _nls_js__WEBPACK_IMPORTED_MODULE_10__.localize('mutlicursor.focusPreviousCursor.description', \"Focuses the previous cursor\"),\n args: [],\n },\n alias: 'Focus Previous Cursor',\n precondition: undefined\n });\n }\n run(accessor, editor, args) {\n if (!editor.hasModel()) {\n return;\n }\n const viewModel = editor._getViewModel();\n if (viewModel.cursorConfig.readOnly) {\n return;\n }\n viewModel.model.pushStackElement();\n const previousCursorState = Array.from(viewModel.getCursorStates());\n const firstCursor = previousCursorState.pop();\n if (!firstCursor) {\n return;\n }\n previousCursorState.unshift(firstCursor);\n viewModel.setCursorStates(args.source, 3 /* CursorChangeReason.Explicit */, previousCursorState);\n viewModel.revealPrimaryCursor(args.source, true);\n announceCursorChange(previousCursorState, viewModel.getCursorStates());\n }\n}\n(0,_browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_4__.registerEditorContribution)(MultiCursorSelectionController.ID, MultiCursorSelectionController, 4 /* EditorContributionInstantiation.Lazy */);\n(0,_browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_4__.registerEditorContribution)(SelectionHighlighter.ID, SelectionHighlighter, 1 /* EditorContributionInstantiation.AfterFirstRender */);\n(0,_browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_4__.registerEditorAction)(InsertCursorAbove);\n(0,_browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_4__.registerEditorAction)(InsertCursorBelow);\n(0,_browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_4__.registerEditorAction)(InsertCursorAtEndOfEachLineSelected);\n(0,_browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_4__.registerEditorAction)(AddSelectionToNextFindMatchAction);\n(0,_browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_4__.registerEditorAction)(AddSelectionToPreviousFindMatchAction);\n(0,_browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_4__.registerEditorAction)(MoveSelectionToNextFindMatchAction);\n(0,_browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_4__.registerEditorAction)(MoveSelectionToPreviousFindMatchAction);\n(0,_browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_4__.registerEditorAction)(SelectHighlightsAction);\n(0,_browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_4__.registerEditorAction)(CompatChangeAll);\n(0,_browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_4__.registerEditorAction)(InsertCursorAtEndOfLineSelected);\n(0,_browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_4__.registerEditorAction)(InsertCursorAtTopOfLineSelected);\n(0,_browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_4__.registerEditorAction)(FocusNextCursor);\n(0,_browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_4__.registerEditorAction)(FocusPreviousCursor);\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/contrib/multicursor/browser/multicursor.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/contrib/parameterHints/browser/parameterHints.js":
/*!***************************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/contrib/parameterHints/browser/parameterHints.js ***!
\***************************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ ParameterHintsController: () => (/* binding */ ParameterHintsController),\n/* harmony export */ TriggerParameterHintsAction: () => (/* binding */ TriggerParameterHintsAction)\n/* harmony export */ });\n/* harmony import */ var _base_common_lazy_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../../base/common/lazy.js */ \"./node_modules/monaco-editor/esm/vs/base/common/lazy.js\");\n/* harmony import */ var _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../base/common/lifecycle.js */ \"./node_modules/monaco-editor/esm/vs/base/common/lifecycle.js\");\n/* harmony import */ var _browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../browser/editorExtensions.js */ \"./node_modules/monaco-editor/esm/vs/editor/browser/editorExtensions.js\");\n/* harmony import */ var _common_editorContextKeys_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../../common/editorContextKeys.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/editorContextKeys.js\");\n/* harmony import */ var _common_languages_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../../common/languages.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/languages.js\");\n/* harmony import */ var _common_services_languageFeatures_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../../../common/services/languageFeatures.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/services/languageFeatures.js\");\n/* harmony import */ var _parameterHintsModel_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ./parameterHintsModel.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/parameterHints/browser/parameterHintsModel.js\");\n/* harmony import */ var _provideSignatureHelp_js__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ./provideSignatureHelp.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/parameterHints/browser/provideSignatureHelp.js\");\n/* harmony import */ var _nls_js__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ../../../../nls.js */ \"./node_modules/monaco-editor/esm/vs/nls.js\");\n/* harmony import */ var _platform_contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ../../../../platform/contextkey/common/contextkey.js */ \"./node_modules/monaco-editor/esm/vs/platform/contextkey/common/contextkey.js\");\n/* harmony import */ var _platform_instantiation_common_instantiation_js__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! ../../../../platform/instantiation/common/instantiation.js */ \"./node_modules/monaco-editor/esm/vs/platform/instantiation/common/instantiation.js\");\n/* harmony import */ var _parameterHintsWidget_js__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(/*! ./parameterHintsWidget.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/parameterHints/browser/parameterHintsWidget.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\nvar __decorate = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\n return c > 3 && r && Object.defineProperty(target, key, r), r;\n};\nvar __param = (undefined && undefined.__param) || function (paramIndex, decorator) {\n return function (target, key) { decorator(target, key, paramIndex); }\n};\nvar ParameterHintsController_1;\n\n\n\n\n\n\n\n\n\n\n\n\nlet ParameterHintsController = ParameterHintsController_1 = class ParameterHintsController extends _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_1__.Disposable {\n static get(editor) {\n return editor.getContribution(ParameterHintsController_1.ID);\n }\n constructor(editor, instantiationService, languageFeaturesService) {\n super();\n this.editor = editor;\n this.model = this._register(new _parameterHintsModel_js__WEBPACK_IMPORTED_MODULE_6__.ParameterHintsModel(editor, languageFeaturesService.signatureHelpProvider));\n this._register(this.model.onChangedHints(newParameterHints => {\n var _a;\n if (newParameterHints) {\n this.widget.value.show();\n this.widget.value.render(newParameterHints);\n }\n else {\n (_a = this.widget.rawValue) === null || _a === void 0 ? void 0 : _a.hide();\n }\n }));\n this.widget = new _base_common_lazy_js__WEBPACK_IMPORTED_MODULE_0__.Lazy(() => this._register(instantiationService.createInstance(_parameterHintsWidget_js__WEBPACK_IMPORTED_MODULE_11__.ParameterHintsWidget, this.editor, this.model)));\n }\n cancel() {\n this.model.cancel();\n }\n previous() {\n var _a;\n (_a = this.widget.rawValue) === null || _a === void 0 ? void 0 : _a.previous();\n }\n next() {\n var _a;\n (_a = this.widget.rawValue) === null || _a === void 0 ? void 0 : _a.next();\n }\n trigger(context) {\n this.model.trigger(context, 0);\n }\n};\nParameterHintsController.ID = 'editor.controller.parameterHints';\nParameterHintsController = ParameterHintsController_1 = __decorate([\n __param(1, _platform_instantiation_common_instantiation_js__WEBPACK_IMPORTED_MODULE_10__.IInstantiationService),\n __param(2, _common_services_languageFeatures_js__WEBPACK_IMPORTED_MODULE_5__.ILanguageFeaturesService)\n], ParameterHintsController);\n\nclass TriggerParameterHintsAction extends _browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_2__.EditorAction {\n constructor() {\n super({\n id: 'editor.action.triggerParameterHints',\n label: _nls_js__WEBPACK_IMPORTED_MODULE_8__.localize('parameterHints.trigger.label', \"Trigger Parameter Hints\"),\n alias: 'Trigger Parameter Hints',\n precondition: _common_editorContextKeys_js__WEBPACK_IMPORTED_MODULE_3__.EditorContextKeys.hasSignatureHelpProvider,\n kbOpts: {\n kbExpr: _common_editorContextKeys_js__WEBPACK_IMPORTED_MODULE_3__.EditorContextKeys.editorTextFocus,\n primary: 2048 /* KeyMod.CtrlCmd */ | 1024 /* KeyMod.Shift */ | 10 /* KeyCode.Space */,\n weight: 100 /* KeybindingWeight.EditorContrib */\n }\n });\n }\n run(accessor, editor) {\n const controller = ParameterHintsController.get(editor);\n controller === null || controller === void 0 ? void 0 : controller.trigger({\n triggerKind: _common_languages_js__WEBPACK_IMPORTED_MODULE_4__.SignatureHelpTriggerKind.Invoke\n });\n }\n}\n(0,_browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_2__.registerEditorContribution)(ParameterHintsController.ID, ParameterHintsController, 2 /* EditorContributionInstantiation.BeforeFirstInteraction */);\n(0,_browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_2__.registerEditorAction)(TriggerParameterHintsAction);\nconst weight = 100 /* KeybindingWeight.EditorContrib */ + 75;\nconst ParameterHintsCommand = _browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_2__.EditorCommand.bindToContribution(ParameterHintsController.get);\n(0,_browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_2__.registerEditorCommand)(new ParameterHintsCommand({\n id: 'closeParameterHints',\n precondition: _provideSignatureHelp_js__WEBPACK_IMPORTED_MODULE_7__.Context.Visible,\n handler: x => x.cancel(),\n kbOpts: {\n weight: weight,\n kbExpr: _common_editorContextKeys_js__WEBPACK_IMPORTED_MODULE_3__.EditorContextKeys.focus,\n primary: 9 /* KeyCode.Escape */,\n secondary: [1024 /* KeyMod.Shift */ | 9 /* KeyCode.Escape */]\n }\n}));\n(0,_browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_2__.registerEditorCommand)(new ParameterHintsCommand({\n id: 'showPrevParameterHint',\n precondition: _platform_contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_9__.ContextKeyExpr.and(_provideSignatureHelp_js__WEBPACK_IMPORTED_MODULE_7__.Context.Visible, _provideSignatureHelp_js__WEBPACK_IMPORTED_MODULE_7__.Context.MultipleSignatures),\n handler: x => x.previous(),\n kbOpts: {\n weight: weight,\n kbExpr: _common_editorContextKeys_js__WEBPACK_IMPORTED_MODULE_3__.EditorContextKeys.focus,\n primary: 16 /* KeyCode.UpArrow */,\n secondary: [512 /* KeyMod.Alt */ | 16 /* KeyCode.UpArrow */],\n mac: { primary: 16 /* KeyCode.UpArrow */, secondary: [512 /* KeyMod.Alt */ | 16 /* KeyCode.UpArrow */, 256 /* KeyMod.WinCtrl */ | 46 /* KeyCode.KeyP */] }\n }\n}));\n(0,_browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_2__.registerEditorCommand)(new ParameterHintsCommand({\n id: 'showNextParameterHint',\n precondition: _platform_contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_9__.ContextKeyExpr.and(_provideSignatureHelp_js__WEBPACK_IMPORTED_MODULE_7__.Context.Visible, _provideSignatureHelp_js__WEBPACK_IMPORTED_MODULE_7__.Context.MultipleSignatures),\n handler: x => x.next(),\n kbOpts: {\n weight: weight,\n kbExpr: _common_editorContextKeys_js__WEBPACK_IMPORTED_MODULE_3__.EditorContextKeys.focus,\n primary: 18 /* KeyCode.DownArrow */,\n secondary: [512 /* KeyMod.Alt */ | 18 /* KeyCode.DownArrow */],\n mac: { primary: 18 /* KeyCode.DownArrow */, secondary: [512 /* KeyMod.Alt */ | 18 /* KeyCode.DownArrow */, 256 /* KeyMod.WinCtrl */ | 44 /* KeyCode.KeyN */] }\n }\n}));\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/contrib/parameterHints/browser/parameterHints.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/contrib/parameterHints/browser/parameterHintsModel.js":
/*!********************************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/contrib/parameterHints/browser/parameterHintsModel.js ***!
\********************************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ ParameterHintsModel: () => (/* binding */ ParameterHintsModel)\n/* harmony export */ });\n/* harmony import */ var _base_common_async_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../../base/common/async.js */ \"./node_modules/monaco-editor/esm/vs/base/common/async.js\");\n/* harmony import */ var _base_common_errors_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../base/common/errors.js */ \"./node_modules/monaco-editor/esm/vs/base/common/errors.js\");\n/* harmony import */ var _base_common_event_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../../base/common/event.js */ \"./node_modules/monaco-editor/esm/vs/base/common/event.js\");\n/* harmony import */ var _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../../../base/common/lifecycle.js */ \"./node_modules/monaco-editor/esm/vs/base/common/lifecycle.js\");\n/* harmony import */ var _common_core_characterClassifier_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../../common/core/characterClassifier.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/core/characterClassifier.js\");\n/* harmony import */ var _common_languages_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../../../common/languages.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/languages.js\");\n/* harmony import */ var _provideSignatureHelp_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ./provideSignatureHelp.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/parameterHints/browser/provideSignatureHelp.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n\n\n\n\n\n\nvar ParameterHintState;\n(function (ParameterHintState) {\n ParameterHintState.Default = { type: 0 /* Type.Default */ };\n class Pending {\n constructor(request, previouslyActiveHints) {\n this.request = request;\n this.previouslyActiveHints = previouslyActiveHints;\n this.type = 2 /* Type.Pending */;\n }\n }\n ParameterHintState.Pending = Pending;\n class Active {\n constructor(hints) {\n this.hints = hints;\n this.type = 1 /* Type.Active */;\n }\n }\n ParameterHintState.Active = Active;\n})(ParameterHintState || (ParameterHintState = {}));\nclass ParameterHintsModel extends _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_3__.Disposable {\n constructor(editor, providers, delay = ParameterHintsModel.DEFAULT_DELAY) {\n super();\n this._onChangedHints = this._register(new _base_common_event_js__WEBPACK_IMPORTED_MODULE_2__.Emitter());\n this.onChangedHints = this._onChangedHints.event;\n this.triggerOnType = false;\n this._state = ParameterHintState.Default;\n this._pendingTriggers = [];\n this._lastSignatureHelpResult = this._register(new _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_3__.MutableDisposable());\n this.triggerChars = new _common_core_characterClassifier_js__WEBPACK_IMPORTED_MODULE_4__.CharacterSet();\n this.retriggerChars = new _common_core_characterClassifier_js__WEBPACK_IMPORTED_MODULE_4__.CharacterSet();\n this.triggerId = 0;\n this.editor = editor;\n this.providers = providers;\n this.throttledDelayer = new _base_common_async_js__WEBPACK_IMPORTED_MODULE_0__.Delayer(delay);\n this._register(this.editor.onDidBlurEditorWidget(() => this.cancel()));\n this._register(this.editor.onDidChangeConfiguration(() => this.onEditorConfigurationChange()));\n this._register(this.editor.onDidChangeModel(e => this.onModelChanged()));\n this._register(this.editor.onDidChangeModelLanguage(_ => this.onModelChanged()));\n this._register(this.editor.onDidChangeCursorSelection(e => this.onCursorChange(e)));\n this._register(this.editor.onDidChangeModelContent(e => this.onModelContentChange()));\n this._register(this.providers.onDidChange(this.onModelChanged, this));\n this._register(this.editor.onDidType(text => this.onDidType(text)));\n this.onEditorConfigurationChange();\n this.onModelChanged();\n }\n get state() { return this._state; }\n set state(value) {\n if (this._state.type === 2 /* ParameterHintState.Type.Pending */) {\n this._state.request.cancel();\n }\n this._state = value;\n }\n cancel(silent = false) {\n this.state = ParameterHintState.Default;\n this.throttledDelayer.cancel();\n if (!silent) {\n this._onChangedHints.fire(undefined);\n }\n }\n trigger(context, delay) {\n const model = this.editor.getModel();\n if (!model || !this.providers.has(model)) {\n return;\n }\n const triggerId = ++this.triggerId;\n this._pendingTriggers.push(context);\n this.throttledDelayer.trigger(() => {\n return this.doTrigger(triggerId);\n }, delay)\n .catch(_base_common_errors_js__WEBPACK_IMPORTED_MODULE_1__.onUnexpectedError);\n }\n next() {\n if (this.state.type !== 1 /* ParameterHintState.Type.Active */) {\n return;\n }\n const length = this.state.hints.signatures.length;\n const activeSignature = this.state.hints.activeSignature;\n const last = (activeSignature % length) === (length - 1);\n const cycle = this.editor.getOption(86 /* EditorOption.parameterHints */).cycle;\n // If there is only one signature, or we're on last signature of list\n if ((length < 2 || last) && !cycle) {\n this.cancel();\n return;\n }\n this.updateActiveSignature(last && cycle ? 0 : activeSignature + 1);\n }\n previous() {\n if (this.state.type !== 1 /* ParameterHintState.Type.Active */) {\n return;\n }\n const length = this.state.hints.signatures.length;\n const activeSignature = this.state.hints.activeSignature;\n const first = activeSignature === 0;\n const cycle = this.editor.getOption(86 /* EditorOption.parameterHints */).cycle;\n // If there is only one signature, or we're on first signature of list\n if ((length < 2 || first) && !cycle) {\n this.cancel();\n return;\n }\n this.updateActiveSignature(first && cycle ? length - 1 : activeSignature - 1);\n }\n updateActiveSignature(activeSignature) {\n if (this.state.type !== 1 /* ParameterHintState.Type.Active */) {\n return;\n }\n this.state = new ParameterHintState.Active({ ...this.state.hints, activeSignature });\n this._onChangedHints.fire(this.state.hints);\n }\n async doTrigger(triggerId) {\n const isRetrigger = this.state.type === 1 /* ParameterHintState.Type.Active */ || this.state.type === 2 /* ParameterHintState.Type.Pending */;\n const activeSignatureHelp = this.getLastActiveHints();\n this.cancel(true);\n if (this._pendingTriggers.length === 0) {\n return false;\n }\n const context = this._pendingTriggers.reduce(mergeTriggerContexts);\n this._pendingTriggers = [];\n const triggerContext = {\n triggerKind: context.triggerKind,\n triggerCharacter: context.triggerCharacter,\n isRetrigger: isRetrigger,\n activeSignatureHelp: activeSignatureHelp\n };\n if (!this.editor.hasModel()) {\n return false;\n }\n const model = this.editor.getModel();\n const position = this.editor.getPosition();\n this.state = new ParameterHintState.Pending((0,_base_common_async_js__WEBPACK_IMPORTED_MODULE_0__.createCancelablePromise)(token => (0,_provideSignatureHelp_js__WEBPACK_IMPORTED_MODULE_6__.provideSignatureHelp)(this.providers, model, position, triggerContext, token)), activeSignatureHelp);\n try {\n const result = await this.state.request;\n // Check that we are still resolving the correct signature help\n if (triggerId !== this.triggerId) {\n result === null || result === void 0 ? void 0 : result.dispose();\n return false;\n }\n if (!result || !result.value.signatures || result.value.signatures.length === 0) {\n result === null || result === void 0 ? void 0 : result.dispose();\n this._lastSignatureHelpResult.clear();\n this.cancel();\n return false;\n }\n else {\n this.state = new ParameterHintState.Active(result.value);\n this._lastSignatureHelpResult.value = result;\n this._onChangedHints.fire(this.state.hints);\n return true;\n }\n }\n catch (error) {\n if (triggerId === this.triggerId) {\n this.state = ParameterHintState.Default;\n }\n (0,_base_common_errors_js__WEBPACK_IMPORTED_MODULE_1__.onUnexpectedError)(error);\n return false;\n }\n }\n getLastActiveHints() {\n switch (this.state.type) {\n case 1 /* ParameterHintState.Type.Active */: return this.state.hints;\n case 2 /* ParameterHintState.Type.Pending */: return this.state.previouslyActiveHints;\n default: return undefined;\n }\n }\n get isTriggered() {\n return this.state.type === 1 /* ParameterHintState.Type.Active */\n || this.state.type === 2 /* ParameterHintState.Type.Pending */\n || this.throttledDelayer.isTriggered();\n }\n onModelChanged() {\n this.cancel();\n this.triggerChars.clear();\n this.retriggerChars.clear();\n const model = this.editor.getModel();\n if (!model) {\n return;\n }\n for (const support of this.providers.ordered(model)) {\n for (const ch of support.signatureHelpTriggerCharacters || []) {\n if (ch.length) {\n const charCode = ch.charCodeAt(0);\n this.triggerChars.add(charCode);\n // All trigger characters are also considered retrigger characters\n this.retriggerChars.add(charCode);\n }\n }\n for (const ch of support.signatureHelpRetriggerCharacters || []) {\n if (ch.length) {\n this.retriggerChars.add(ch.charCodeAt(0));\n }\n }\n }\n }\n onDidType(text) {\n if (!this.triggerOnType) {\n return;\n }\n const lastCharIndex = text.length - 1;\n const triggerCharCode = text.charCodeAt(lastCharIndex);\n if (this.triggerChars.has(triggerCharCode) || this.isTriggered && this.retriggerChars.has(triggerCharCode)) {\n this.trigger({\n triggerKind: _common_languages_js__WEBPACK_IMPORTED_MODULE_5__.SignatureHelpTriggerKind.TriggerCharacter,\n triggerCharacter: text.charAt(lastCharIndex),\n });\n }\n }\n onCursorChange(e) {\n if (e.source === 'mouse') {\n this.cancel();\n }\n else if (this.isTriggered) {\n this.trigger({ triggerKind: _common_languages_js__WEBPACK_IMPORTED_MODULE_5__.SignatureHelpTriggerKind.ContentChange });\n }\n }\n onModelContentChange() {\n if (this.isTriggered) {\n this.trigger({ triggerKind: _common_languages_js__WEBPACK_IMPORTED_MODULE_5__.SignatureHelpTriggerKind.ContentChange });\n }\n }\n onEditorConfigurationChange() {\n this.triggerOnType = this.editor.getOption(86 /* EditorOption.parameterHints */).enabled;\n if (!this.triggerOnType) {\n this.cancel();\n }\n }\n dispose() {\n this.cancel(true);\n super.dispose();\n }\n}\nParameterHintsModel.DEFAULT_DELAY = 120; // ms\nfunction mergeTriggerContexts(previous, current) {\n switch (current.triggerKind) {\n case _common_languages_js__WEBPACK_IMPORTED_MODULE_5__.SignatureHelpTriggerKind.Invoke:\n // Invoke overrides previous triggers.\n return current;\n case _common_languages_js__WEBPACK_IMPORTED_MODULE_5__.SignatureHelpTriggerKind.ContentChange:\n // Ignore content changes triggers\n return previous;\n case _common_languages_js__WEBPACK_IMPORTED_MODULE_5__.SignatureHelpTriggerKind.TriggerCharacter:\n default:\n return current;\n }\n}\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/contrib/parameterHints/browser/parameterHintsModel.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/contrib/parameterHints/browser/parameterHintsWidget.js":
/*!*********************************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/contrib/parameterHints/browser/parameterHintsWidget.js ***!
\*********************************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ ParameterHintsWidget: () => (/* binding */ ParameterHintsWidget)\n/* harmony export */ });\n/* harmony import */ var _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../../base/browser/dom.js */ \"./node_modules/monaco-editor/esm/vs/base/browser/dom.js\");\n/* harmony import */ var _base_browser_ui_aria_aria_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../base/browser/ui/aria/aria.js */ \"./node_modules/monaco-editor/esm/vs/base/browser/ui/aria/aria.js\");\n/* harmony import */ var _base_browser_ui_scrollbar_scrollableElement_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../../base/browser/ui/scrollbar/scrollableElement.js */ \"./node_modules/monaco-editor/esm/vs/base/browser/ui/scrollbar/scrollableElement.js\");\n/* harmony import */ var _base_common_codicons_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../../../base/common/codicons.js */ \"./node_modules/monaco-editor/esm/vs/base/common/codicons.js\");\n/* harmony import */ var _base_common_event_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../../../base/common/event.js */ \"./node_modules/monaco-editor/esm/vs/base/common/event.js\");\n/* harmony import */ var _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../../../../base/common/lifecycle.js */ \"./node_modules/monaco-editor/esm/vs/base/common/lifecycle.js\");\n/* harmony import */ var _base_common_strings_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../../../../base/common/strings.js */ \"./node_modules/monaco-editor/esm/vs/base/common/strings.js\");\n/* harmony import */ var _base_common_types_js__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ../../../../base/common/types.js */ \"./node_modules/monaco-editor/esm/vs/base/common/types.js\");\n/* harmony import */ var _parameterHints_css__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ./parameterHints.css */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/parameterHints/browser/parameterHints.css\");\n/* harmony import */ var _common_languages_language_js__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ../../../common/languages/language.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/languages/language.js\");\n/* harmony import */ var _browser_widget_markdownRenderer_browser_markdownRenderer_js__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! ../../../browser/widget/markdownRenderer/browser/markdownRenderer.js */ \"./node_modules/monaco-editor/esm/vs/editor/browser/widget/markdownRenderer/browser/markdownRenderer.js\");\n/* harmony import */ var _provideSignatureHelp_js__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(/*! ./provideSignatureHelp.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/parameterHints/browser/provideSignatureHelp.js\");\n/* harmony import */ var _nls_js__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(/*! ../../../../nls.js */ \"./node_modules/monaco-editor/esm/vs/nls.js\");\n/* harmony import */ var _platform_contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_13__ = __webpack_require__(/*! ../../../../platform/contextkey/common/contextkey.js */ \"./node_modules/monaco-editor/esm/vs/platform/contextkey/common/contextkey.js\");\n/* harmony import */ var _platform_opener_common_opener_js__WEBPACK_IMPORTED_MODULE_14__ = __webpack_require__(/*! ../../../../platform/opener/common/opener.js */ \"./node_modules/monaco-editor/esm/vs/platform/opener/common/opener.js\");\n/* harmony import */ var _platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_15__ = __webpack_require__(/*! ../../../../platform/theme/common/colorRegistry.js */ \"./node_modules/monaco-editor/esm/vs/platform/theme/common/colorRegistry.js\");\n/* harmony import */ var _platform_theme_common_iconRegistry_js__WEBPACK_IMPORTED_MODULE_16__ = __webpack_require__(/*! ../../../../platform/theme/common/iconRegistry.js */ \"./node_modules/monaco-editor/esm/vs/platform/theme/common/iconRegistry.js\");\n/* harmony import */ var _base_common_themables_js__WEBPACK_IMPORTED_MODULE_17__ = __webpack_require__(/*! ../../../../base/common/themables.js */ \"./node_modules/monaco-editor/esm/vs/base/common/themables.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\nvar __decorate = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\n return c > 3 && r && Object.defineProperty(target, key, r), r;\n};\nvar __param = (undefined && undefined.__param) || function (paramIndex, decorator) {\n return function (target, key) { decorator(target, key, paramIndex); }\n};\nvar ParameterHintsWidget_1;\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nconst $ = _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.$;\nconst parameterHintsNextIcon = (0,_platform_theme_common_iconRegistry_js__WEBPACK_IMPORTED_MODULE_16__.registerIcon)('parameter-hints-next', _base_common_codicons_js__WEBPACK_IMPORTED_MODULE_3__.Codicon.chevronDown, _nls_js__WEBPACK_IMPORTED_MODULE_12__.localize('parameterHintsNextIcon', 'Icon for show next parameter hint.'));\nconst parameterHintsPreviousIcon = (0,_platform_theme_common_iconRegistry_js__WEBPACK_IMPORTED_MODULE_16__.registerIcon)('parameter-hints-previous', _base_common_codicons_js__WEBPACK_IMPORTED_MODULE_3__.Codicon.chevronUp, _nls_js__WEBPACK_IMPORTED_MODULE_12__.localize('parameterHintsPreviousIcon', 'Icon for show previous parameter hint.'));\nlet ParameterHintsWidget = ParameterHintsWidget_1 = class ParameterHintsWidget extends _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_5__.Disposable {\n constructor(editor, model, contextKeyService, openerService, languageService) {\n super();\n this.editor = editor;\n this.model = model;\n this.renderDisposeables = this._register(new _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_5__.DisposableStore());\n this.visible = false;\n this.announcedLabel = null;\n // Editor.IContentWidget.allowEditorOverflow\n this.allowEditorOverflow = true;\n this.markdownRenderer = this._register(new _browser_widget_markdownRenderer_browser_markdownRenderer_js__WEBPACK_IMPORTED_MODULE_10__.MarkdownRenderer({ editor }, languageService, openerService));\n this.keyVisible = _provideSignatureHelp_js__WEBPACK_IMPORTED_MODULE_11__.Context.Visible.bindTo(contextKeyService);\n this.keyMultipleSignatures = _provideSignatureHelp_js__WEBPACK_IMPORTED_MODULE_11__.Context.MultipleSignatures.bindTo(contextKeyService);\n }\n createParameterHintDOMNodes() {\n const element = $('.editor-widget.parameter-hints-widget');\n const wrapper = _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.append(element, $('.phwrapper'));\n wrapper.tabIndex = -1;\n const controls = _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.append(wrapper, $('.controls'));\n const previous = _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.append(controls, $('.button' + _base_common_themables_js__WEBPACK_IMPORTED_MODULE_17__.ThemeIcon.asCSSSelector(parameterHintsPreviousIcon)));\n const overloads = _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.append(controls, $('.overloads'));\n const next = _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.append(controls, $('.button' + _base_common_themables_js__WEBPACK_IMPORTED_MODULE_17__.ThemeIcon.asCSSSelector(parameterHintsNextIcon)));\n this._register(_base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.addDisposableListener(previous, 'click', e => {\n _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.EventHelper.stop(e);\n this.previous();\n }));\n this._register(_base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.addDisposableListener(next, 'click', e => {\n _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.EventHelper.stop(e);\n this.next();\n }));\n const body = $('.body');\n const scrollbar = new _base_browser_ui_scrollbar_scrollableElement_js__WEBPACK_IMPORTED_MODULE_2__.DomScrollableElement(body, {\n alwaysConsumeMouseWheel: true,\n });\n this._register(scrollbar);\n wrapper.appendChild(scrollbar.getDomNode());\n const signature = _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.append(body, $('.signature'));\n const docs = _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.append(body, $('.docs'));\n element.style.userSelect = 'text';\n this.domNodes = {\n element,\n signature,\n overloads,\n docs,\n scrollbar,\n };\n this.editor.addContentWidget(this);\n this.hide();\n this._register(this.editor.onDidChangeCursorSelection(e => {\n if (this.visible) {\n this.editor.layoutContentWidget(this);\n }\n }));\n const updateFont = () => {\n if (!this.domNodes) {\n return;\n }\n const fontInfo = this.editor.getOption(50 /* EditorOption.fontInfo */);\n this.domNodes.element.style.fontSize = `${fontInfo.fontSize}px`;\n this.domNodes.element.style.lineHeight = `${fontInfo.lineHeight / fontInfo.fontSize}`;\n };\n updateFont();\n this._register(_base_common_event_js__WEBPACK_IMPORTED_MODULE_4__.Event.chain(this.editor.onDidChangeConfiguration.bind(this.editor), $ => $.filter(e => e.hasChanged(50 /* EditorOption.fontInfo */)))(updateFont));\n this._register(this.editor.onDidLayoutChange(e => this.updateMaxHeight()));\n this.updateMaxHeight();\n }\n show() {\n if (this.visible) {\n return;\n }\n if (!this.domNodes) {\n this.createParameterHintDOMNodes();\n }\n this.keyVisible.set(true);\n this.visible = true;\n setTimeout(() => {\n var _a;\n (_a = this.domNodes) === null || _a === void 0 ? void 0 : _a.element.classList.add('visible');\n }, 100);\n this.editor.layoutContentWidget(this);\n }\n hide() {\n var _a;\n this.renderDisposeables.clear();\n if (!this.visible) {\n return;\n }\n this.keyVisible.reset();\n this.visible = false;\n this.announcedLabel = null;\n (_a = this.domNodes) === null || _a === void 0 ? void 0 : _a.element.classList.remove('visible');\n this.editor.layoutContentWidget(this);\n }\n getPosition() {\n if (this.visible) {\n return {\n position: this.editor.getPosition(),\n preference: [1 /* ContentWidgetPositionPreference.ABOVE */, 2 /* ContentWidgetPositionPreference.BELOW */]\n };\n }\n return null;\n }\n render(hints) {\n var _a;\n this.renderDisposeables.clear();\n if (!this.domNodes) {\n return;\n }\n const multiple = hints.signatures.length > 1;\n this.domNodes.element.classList.toggle('multiple', multiple);\n this.keyMultipleSignatures.set(multiple);\n this.domNodes.signature.innerText = '';\n this.domNodes.docs.innerText = '';\n const signature = hints.signatures[hints.activeSignature];\n if (!signature) {\n return;\n }\n const code = _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.append(this.domNodes.signature, $('.code'));\n const fontInfo = this.editor.getOption(50 /* EditorOption.fontInfo */);\n code.style.fontSize = `${fontInfo.fontSize}px`;\n code.style.fontFamily = fontInfo.fontFamily;\n const hasParameters = signature.parameters.length > 0;\n const activeParameterIndex = (_a = signature.activeParameter) !== null && _a !== void 0 ? _a : hints.activeParameter;\n if (!hasParameters) {\n const label = _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.append(code, $('span'));\n label.textContent = signature.label;\n }\n else {\n this.renderParameters(code, signature, activeParameterIndex);\n }\n const activeParameter = signature.parameters[activeParameterIndex];\n if (activeParameter === null || activeParameter === void 0 ? void 0 : activeParameter.documentation) {\n const documentation = $('span.documentation');\n if (typeof activeParameter.documentation === 'string') {\n documentation.textContent = activeParameter.documentation;\n }\n else {\n const renderedContents = this.renderMarkdownDocs(activeParameter.documentation);\n documentation.appendChild(renderedContents.element);\n }\n _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.append(this.domNodes.docs, $('p', {}, documentation));\n }\n if (signature.documentation === undefined) {\n /** no op */\n }\n else if (typeof signature.documentation === 'string') {\n _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.append(this.domNodes.docs, $('p', {}, signature.documentation));\n }\n else {\n const renderedContents = this.renderMarkdownDocs(signature.documentation);\n _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.append(this.domNodes.docs, renderedContents.element);\n }\n const hasDocs = this.hasDocs(signature, activeParameter);\n this.domNodes.signature.classList.toggle('has-docs', hasDocs);\n this.domNodes.docs.classList.toggle('empty', !hasDocs);\n this.domNodes.overloads.textContent =\n String(hints.activeSignature + 1).padStart(hints.signatures.length.toString().length, '0') + '/' + hints.signatures.length;\n if (activeParameter) {\n let labelToAnnounce = '';\n const param = signature.parameters[activeParameterIndex];\n if (Array.isArray(param.label)) {\n labelToAnnounce = signature.label.substring(param.label[0], param.label[1]);\n }\n else {\n labelToAnnounce = param.label;\n }\n if (param.documentation) {\n labelToAnnounce += typeof param.documentation === 'string' ? `, ${param.documentation}` : `, ${param.documentation.value}`;\n }\n if (signature.documentation) {\n labelToAnnounce += typeof signature.documentation === 'string' ? `, ${signature.documentation}` : `, ${signature.documentation.value}`;\n }\n // Select method gets called on every user type while parameter hints are visible.\n // We do not want to spam the user with same announcements, so we only announce if the current parameter changed.\n if (this.announcedLabel !== labelToAnnounce) {\n _base_browser_ui_aria_aria_js__WEBPACK_IMPORTED_MODULE_1__.alert(_nls_js__WEBPACK_IMPORTED_MODULE_12__.localize('hint', \"{0}, hint\", labelToAnnounce));\n this.announcedLabel = labelToAnnounce;\n }\n }\n this.editor.layoutContentWidget(this);\n this.domNodes.scrollbar.scanDomNode();\n }\n renderMarkdownDocs(markdown) {\n const renderedContents = this.renderDisposeables.add(this.markdownRenderer.render(markdown, {\n asyncRenderCallback: () => {\n var _a;\n (_a = this.domNodes) === null || _a === void 0 ? void 0 : _a.scrollbar.scanDomNode();\n }\n }));\n renderedContents.element.classList.add('markdown-docs');\n return renderedContents;\n }\n hasDocs(signature, activeParameter) {\n if (activeParameter && typeof activeParameter.documentation === 'string' && (0,_base_common_types_js__WEBPACK_IMPORTED_MODULE_7__.assertIsDefined)(activeParameter.documentation).length > 0) {\n return true;\n }\n if (activeParameter && typeof activeParameter.documentation === 'object' && (0,_base_common_types_js__WEBPACK_IMPORTED_MODULE_7__.assertIsDefined)(activeParameter.documentation).value.length > 0) {\n return true;\n }\n if (signature.documentation && typeof signature.documentation === 'string' && (0,_base_common_types_js__WEBPACK_IMPORTED_MODULE_7__.assertIsDefined)(signature.documentation).length > 0) {\n return true;\n }\n if (signature.documentation && typeof signature.documentation === 'object' && (0,_base_common_types_js__WEBPACK_IMPORTED_MODULE_7__.assertIsDefined)(signature.documentation.value).length > 0) {\n return true;\n }\n return false;\n }\n renderParameters(parent, signature, activeParameterIndex) {\n const [start, end] = this.getParameterLabelOffsets(signature, activeParameterIndex);\n const beforeSpan = document.createElement('span');\n beforeSpan.textContent = signature.label.substring(0, start);\n const paramSpan = document.createElement('span');\n paramSpan.textContent = signature.label.substring(start, end);\n paramSpan.className = 'parameter active';\n const afterSpan = document.createElement('span');\n afterSpan.textContent = signature.label.substring(end);\n _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.append(parent, beforeSpan, paramSpan, afterSpan);\n }\n getParameterLabelOffsets(signature, paramIdx) {\n const param = signature.parameters[paramIdx];\n if (!param) {\n return [0, 0];\n }\n else if (Array.isArray(param.label)) {\n return param.label;\n }\n else if (!param.label.length) {\n return [0, 0];\n }\n else {\n const regex = new RegExp(`(\\\\W|^)${(0,_base_common_strings_js__WEBPACK_IMPORTED_MODULE_6__.escapeRegExpCharacters)(param.label)}(?=\\\\W|$)`, 'g');\n regex.test(signature.label);\n const idx = regex.lastIndex - param.label.length;\n return idx >= 0\n ? [idx, regex.lastIndex]\n : [0, 0];\n }\n }\n next() {\n this.editor.focus();\n this.model.next();\n }\n previous() {\n this.editor.focus();\n this.model.previous();\n }\n getDomNode() {\n if (!this.domNodes) {\n this.createParameterHintDOMNodes();\n }\n return this.domNodes.element;\n }\n getId() {\n return ParameterHintsWidget_1.ID;\n }\n updateMaxHeight() {\n if (!this.domNodes) {\n return;\n }\n const height = Math.max(this.editor.getLayoutInfo().height / 4, 250);\n const maxHeight = `${height}px`;\n this.domNodes.element.style.maxHeight = maxHeight;\n const wrapper = this.domNodes.element.getElementsByClassName('phwrapper');\n if (wrapper.length) {\n wrapper[0].style.maxHeight = maxHeight;\n }\n }\n};\nParameterHintsWidget.ID = 'editor.widget.parameterHintsWidget';\nParameterHintsWidget = ParameterHintsWidget_1 = __decorate([\n __param(2, _platform_contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_13__.IContextKeyService),\n __param(3, _platform_opener_common_opener_js__WEBPACK_IMPORTED_MODULE_14__.IOpenerService),\n __param(4, _common_languages_language_js__WEBPACK_IMPORTED_MODULE_9__.ILanguageService)\n], ParameterHintsWidget);\n\n(0,_platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_15__.registerColor)('editorHoverWidget.highlightForeground', { dark: _platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_15__.listHighlightForeground, light: _platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_15__.listHighlightForeground, hcDark: _platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_15__.listHighlightForeground, hcLight: _platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_15__.listHighlightForeground }, _nls_js__WEBPACK_IMPORTED_MODULE_12__.localize('editorHoverWidgetHighlightForeground', 'Foreground color of the active item in the parameter hint.'));\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/contrib/parameterHints/browser/parameterHintsWidget.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/contrib/parameterHints/browser/provideSignatureHelp.js":
/*!*********************************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/contrib/parameterHints/browser/provideSignatureHelp.js ***!
\*********************************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ Context: () => (/* binding */ Context),\n/* harmony export */ provideSignatureHelp: () => (/* binding */ provideSignatureHelp)\n/* harmony export */ });\n/* harmony import */ var _base_common_cancellation_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../../base/common/cancellation.js */ \"./node_modules/monaco-editor/esm/vs/base/common/cancellation.js\");\n/* harmony import */ var _base_common_errors_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../base/common/errors.js */ \"./node_modules/monaco-editor/esm/vs/base/common/errors.js\");\n/* harmony import */ var _base_common_types_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../../base/common/types.js */ \"./node_modules/monaco-editor/esm/vs/base/common/types.js\");\n/* harmony import */ var _base_common_uri_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../../../base/common/uri.js */ \"./node_modules/monaco-editor/esm/vs/base/common/uri.js\");\n/* harmony import */ var _common_core_position_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../../common/core/position.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/core/position.js\");\n/* harmony import */ var _common_languages_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../../../common/languages.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/languages.js\");\n/* harmony import */ var _common_services_languageFeatures_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../../../common/services/languageFeatures.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/services/languageFeatures.js\");\n/* harmony import */ var _common_services_resolverService_js__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ../../../common/services/resolverService.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/services/resolverService.js\");\n/* harmony import */ var _platform_commands_common_commands_js__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ../../../../platform/commands/common/commands.js */ \"./node_modules/monaco-editor/esm/vs/platform/commands/common/commands.js\");\n/* harmony import */ var _platform_contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ../../../../platform/contextkey/common/contextkey.js */ \"./node_modules/monaco-editor/esm/vs/platform/contextkey/common/contextkey.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n\n\n\n\n\n\n\n\n\nconst Context = {\n Visible: new _platform_contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_9__.RawContextKey('parameterHintsVisible', false),\n MultipleSignatures: new _platform_contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_9__.RawContextKey('parameterHintsMultipleSignatures', false),\n};\nasync function provideSignatureHelp(registry, model, position, context, token) {\n const supports = registry.ordered(model);\n for (const support of supports) {\n try {\n const result = await support.provideSignatureHelp(model, position, token, context);\n if (result) {\n return result;\n }\n }\n catch (err) {\n (0,_base_common_errors_js__WEBPACK_IMPORTED_MODULE_1__.onUnexpectedExternalError)(err);\n }\n }\n return undefined;\n}\n_platform_commands_common_commands_js__WEBPACK_IMPORTED_MODULE_8__.CommandsRegistry.registerCommand('_executeSignatureHelpProvider', async (accessor, ...args) => {\n const [uri, position, triggerCharacter] = args;\n (0,_base_common_types_js__WEBPACK_IMPORTED_MODULE_2__.assertType)(_base_common_uri_js__WEBPACK_IMPORTED_MODULE_3__.URI.isUri(uri));\n (0,_base_common_types_js__WEBPACK_IMPORTED_MODULE_2__.assertType)(_common_core_position_js__WEBPACK_IMPORTED_MODULE_4__.Position.isIPosition(position));\n (0,_base_common_types_js__WEBPACK_IMPORTED_MODULE_2__.assertType)(typeof triggerCharacter === 'string' || !triggerCharacter);\n const languageFeaturesService = accessor.get(_common_services_languageFeatures_js__WEBPACK_IMPORTED_MODULE_6__.ILanguageFeaturesService);\n const ref = await accessor.get(_common_services_resolverService_js__WEBPACK_IMPORTED_MODULE_7__.ITextModelService).createModelReference(uri);\n try {\n const result = await provideSignatureHelp(languageFeaturesService.signatureHelpProvider, ref.object.textEditorModel, _common_core_position_js__WEBPACK_IMPORTED_MODULE_4__.Position.lift(position), {\n triggerKind: _common_languages_js__WEBPACK_IMPORTED_MODULE_5__.SignatureHelpTriggerKind.Invoke,\n isRetrigger: false,\n triggerCharacter,\n }, _base_common_cancellation_js__WEBPACK_IMPORTED_MODULE_0__.CancellationToken.None);\n if (!result) {\n return undefined;\n }\n setTimeout(() => result.dispose(), 0);\n return result.value;\n }\n finally {\n ref.dispose();\n }\n});\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/contrib/parameterHints/browser/provideSignatureHelp.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/contrib/peekView/browser/peekView.js":
/*!***************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/contrib/peekView/browser/peekView.js ***!
\***************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ IPeekViewService: () => (/* binding */ IPeekViewService),\n/* harmony export */ PeekContext: () => (/* binding */ PeekContext),\n/* harmony export */ PeekViewWidget: () => (/* binding */ PeekViewWidget),\n/* harmony export */ getOuterEditor: () => (/* binding */ getOuterEditor),\n/* harmony export */ peekViewBorder: () => (/* binding */ peekViewBorder),\n/* harmony export */ peekViewEditorBackground: () => (/* binding */ peekViewEditorBackground),\n/* harmony export */ peekViewEditorGutterBackground: () => (/* binding */ peekViewEditorGutterBackground),\n/* harmony export */ peekViewEditorMatchHighlight: () => (/* binding */ peekViewEditorMatchHighlight),\n/* harmony export */ peekViewEditorMatchHighlightBorder: () => (/* binding */ peekViewEditorMatchHighlightBorder),\n/* harmony export */ peekViewEditorStickyScrollBackground: () => (/* binding */ peekViewEditorStickyScrollBackground),\n/* harmony export */ peekViewResultsBackground: () => (/* binding */ peekViewResultsBackground),\n/* harmony export */ peekViewResultsFileForeground: () => (/* binding */ peekViewResultsFileForeground),\n/* harmony export */ peekViewResultsMatchForeground: () => (/* binding */ peekViewResultsMatchForeground),\n/* harmony export */ peekViewResultsMatchHighlight: () => (/* binding */ peekViewResultsMatchHighlight),\n/* harmony export */ peekViewResultsSelectionBackground: () => (/* binding */ peekViewResultsSelectionBackground),\n/* harmony export */ peekViewResultsSelectionForeground: () => (/* binding */ peekViewResultsSelectionForeground),\n/* harmony export */ peekViewTitleBackground: () => (/* binding */ peekViewTitleBackground),\n/* harmony export */ peekViewTitleForeground: () => (/* binding */ peekViewTitleForeground),\n/* harmony export */ peekViewTitleInfoForeground: () => (/* binding */ peekViewTitleInfoForeground)\n/* harmony export */ });\n/* harmony import */ var _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../../base/browser/dom.js */ \"./node_modules/monaco-editor/esm/vs/base/browser/dom.js\");\n/* harmony import */ var _base_browser_ui_actionbar_actionbar_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../base/browser/ui/actionbar/actionbar.js */ \"./node_modules/monaco-editor/esm/vs/base/browser/ui/actionbar/actionbar.js\");\n/* harmony import */ var _base_common_actions_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../../base/common/actions.js */ \"./node_modules/monaco-editor/esm/vs/base/common/actions.js\");\n/* harmony import */ var _base_common_codicons_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../../../base/common/codicons.js */ \"./node_modules/monaco-editor/esm/vs/base/common/codicons.js\");\n/* harmony import */ var _base_common_themables_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../../../base/common/themables.js */ \"./node_modules/monaco-editor/esm/vs/base/common/themables.js\");\n/* harmony import */ var _base_common_color_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../../../../base/common/color.js */ \"./node_modules/monaco-editor/esm/vs/base/common/color.js\");\n/* harmony import */ var _base_common_event_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../../../../base/common/event.js */ \"./node_modules/monaco-editor/esm/vs/base/common/event.js\");\n/* harmony import */ var _base_common_objects_js__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ../../../../base/common/objects.js */ \"./node_modules/monaco-editor/esm/vs/base/common/objects.js\");\n/* harmony import */ var _media_peekViewWidget_css__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ./media/peekViewWidget.css */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/peekView/browser/media/peekViewWidget.css\");\n/* harmony import */ var _browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ../../../browser/editorExtensions.js */ \"./node_modules/monaco-editor/esm/vs/editor/browser/editorExtensions.js\");\n/* harmony import */ var _browser_services_codeEditorService_js__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! ../../../browser/services/codeEditorService.js */ \"./node_modules/monaco-editor/esm/vs/editor/browser/services/codeEditorService.js\");\n/* harmony import */ var _browser_widget_embeddedCodeEditorWidget_js__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(/*! ../../../browser/widget/embeddedCodeEditorWidget.js */ \"./node_modules/monaco-editor/esm/vs/editor/browser/widget/embeddedCodeEditorWidget.js\");\n/* harmony import */ var _zoneWidget_browser_zoneWidget_js__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(/*! ../../zoneWidget/browser/zoneWidget.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/zoneWidget/browser/zoneWidget.js\");\n/* harmony import */ var _nls_js__WEBPACK_IMPORTED_MODULE_13__ = __webpack_require__(/*! ../../../../nls.js */ \"./node_modules/monaco-editor/esm/vs/nls.js\");\n/* harmony import */ var _platform_actions_browser_menuEntryActionViewItem_js__WEBPACK_IMPORTED_MODULE_14__ = __webpack_require__(/*! ../../../../platform/actions/browser/menuEntryActionViewItem.js */ \"./node_modules/monaco-editor/esm/vs/platform/actions/browser/menuEntryActionViewItem.js\");\n/* harmony import */ var _platform_contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_15__ = __webpack_require__(/*! ../../../../platform/contextkey/common/contextkey.js */ \"./node_modules/monaco-editor/esm/vs/platform/contextkey/common/contextkey.js\");\n/* harmony import */ var _platform_instantiation_common_extensions_js__WEBPACK_IMPORTED_MODULE_16__ = __webpack_require__(/*! ../../../../platform/instantiation/common/extensions.js */ \"./node_modules/monaco-editor/esm/vs/platform/instantiation/common/extensions.js\");\n/* harmony import */ var _platform_instantiation_common_instantiation_js__WEBPACK_IMPORTED_MODULE_17__ = __webpack_require__(/*! ../../../../platform/instantiation/common/instantiation.js */ \"./node_modules/monaco-editor/esm/vs/platform/instantiation/common/instantiation.js\");\n/* harmony import */ var _platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_18__ = __webpack_require__(/*! ../../../../platform/theme/common/colorRegistry.js */ \"./node_modules/monaco-editor/esm/vs/platform/theme/common/colorRegistry.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\nvar __decorate = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\n return c > 3 && r && Object.defineProperty(target, key, r), r;\n};\nvar __param = (undefined && undefined.__param) || function (paramIndex, decorator) {\n return function (target, key) { decorator(target, key, paramIndex); }\n};\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nconst IPeekViewService = (0,_platform_instantiation_common_instantiation_js__WEBPACK_IMPORTED_MODULE_17__.createDecorator)('IPeekViewService');\n(0,_platform_instantiation_common_extensions_js__WEBPACK_IMPORTED_MODULE_16__.registerSingleton)(IPeekViewService, class {\n constructor() {\n this._widgets = new Map();\n }\n addExclusiveWidget(editor, widget) {\n const existing = this._widgets.get(editor);\n if (existing) {\n existing.listener.dispose();\n existing.widget.dispose();\n }\n const remove = () => {\n const data = this._widgets.get(editor);\n if (data && data.widget === widget) {\n data.listener.dispose();\n this._widgets.delete(editor);\n }\n };\n this._widgets.set(editor, { widget, listener: widget.onDidClose(remove) });\n }\n}, 1 /* InstantiationType.Delayed */);\nvar PeekContext;\n(function (PeekContext) {\n PeekContext.inPeekEditor = new _platform_contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_15__.RawContextKey('inReferenceSearchEditor', true, _nls_js__WEBPACK_IMPORTED_MODULE_13__.localize('inReferenceSearchEditor', \"Whether the current code editor is embedded inside peek\"));\n PeekContext.notInPeekEditor = PeekContext.inPeekEditor.toNegated();\n})(PeekContext || (PeekContext = {}));\nlet PeekContextController = class PeekContextController {\n constructor(editor, contextKeyService) {\n if (editor instanceof _browser_widget_embeddedCodeEditorWidget_js__WEBPACK_IMPORTED_MODULE_11__.EmbeddedCodeEditorWidget) {\n PeekContext.inPeekEditor.bindTo(contextKeyService);\n }\n }\n dispose() { }\n};\nPeekContextController.ID = 'editor.contrib.referenceController';\nPeekContextController = __decorate([\n __param(1, _platform_contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_15__.IContextKeyService)\n], PeekContextController);\n(0,_browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_9__.registerEditorContribution)(PeekContextController.ID, PeekContextController, 0 /* EditorContributionInstantiation.Eager */); // eager because it needs to define a context key\nfunction getOuterEditor(accessor) {\n const editor = accessor.get(_browser_services_codeEditorService_js__WEBPACK_IMPORTED_MODULE_10__.ICodeEditorService).getFocusedCodeEditor();\n if (editor instanceof _browser_widget_embeddedCodeEditorWidget_js__WEBPACK_IMPORTED_MODULE_11__.EmbeddedCodeEditorWidget) {\n return editor.getParentEditor();\n }\n return editor;\n}\nconst defaultOptions = {\n headerBackgroundColor: _base_common_color_js__WEBPACK_IMPORTED_MODULE_5__.Color.white,\n primaryHeadingColor: _base_common_color_js__WEBPACK_IMPORTED_MODULE_5__.Color.fromHex('#333333'),\n secondaryHeadingColor: _base_common_color_js__WEBPACK_IMPORTED_MODULE_5__.Color.fromHex('#6c6c6cb3')\n};\nlet PeekViewWidget = class PeekViewWidget extends _zoneWidget_browser_zoneWidget_js__WEBPACK_IMPORTED_MODULE_12__.ZoneWidget {\n constructor(editor, options, instantiationService) {\n super(editor, options);\n this.instantiationService = instantiationService;\n this._onDidClose = new _base_common_event_js__WEBPACK_IMPORTED_MODULE_6__.Emitter();\n this.onDidClose = this._onDidClose.event;\n _base_common_objects_js__WEBPACK_IMPORTED_MODULE_7__.mixin(this.options, defaultOptions, false);\n }\n dispose() {\n if (!this.disposed) {\n this.disposed = true; // prevent consumers who dispose on onDidClose from looping\n super.dispose();\n this._onDidClose.fire(this);\n }\n }\n style(styles) {\n const options = this.options;\n if (styles.headerBackgroundColor) {\n options.headerBackgroundColor = styles.headerBackgroundColor;\n }\n if (styles.primaryHeadingColor) {\n options.primaryHeadingColor = styles.primaryHeadingColor;\n }\n if (styles.secondaryHeadingColor) {\n options.secondaryHeadingColor = styles.secondaryHeadingColor;\n }\n super.style(styles);\n }\n _applyStyles() {\n super._applyStyles();\n const options = this.options;\n if (this._headElement && options.headerBackgroundColor) {\n this._headElement.style.backgroundColor = options.headerBackgroundColor.toString();\n }\n if (this._primaryHeading && options.primaryHeadingColor) {\n this._primaryHeading.style.color = options.primaryHeadingColor.toString();\n }\n if (this._secondaryHeading && options.secondaryHeadingColor) {\n this._secondaryHeading.style.color = options.secondaryHeadingColor.toString();\n }\n if (this._bodyElement && options.frameColor) {\n this._bodyElement.style.borderColor = options.frameColor.toString();\n }\n }\n _fillContainer(container) {\n this.setCssClass('peekview-widget');\n this._headElement = _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.$('.head');\n this._bodyElement = _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.$('.body');\n this._fillHead(this._headElement);\n this._fillBody(this._bodyElement);\n container.appendChild(this._headElement);\n container.appendChild(this._bodyElement);\n }\n _fillHead(container, noCloseAction) {\n this._titleElement = _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.$('.peekview-title');\n if (this.options.supportOnTitleClick) {\n this._titleElement.classList.add('clickable');\n _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.addStandardDisposableListener(this._titleElement, 'click', event => this._onTitleClick(event));\n }\n _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.append(this._headElement, this._titleElement);\n this._fillTitleIcon(this._titleElement);\n this._primaryHeading = _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.$('span.filename');\n this._secondaryHeading = _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.$('span.dirname');\n this._metaHeading = _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.$('span.meta');\n _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.append(this._titleElement, this._primaryHeading, this._secondaryHeading, this._metaHeading);\n const actionsContainer = _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.$('.peekview-actions');\n _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.append(this._headElement, actionsContainer);\n const actionBarOptions = this._getActionBarOptions();\n this._actionbarWidget = new _base_browser_ui_actionbar_actionbar_js__WEBPACK_IMPORTED_MODULE_1__.ActionBar(actionsContainer, actionBarOptions);\n this._disposables.add(this._actionbarWidget);\n if (!noCloseAction) {\n this._actionbarWidget.push(new _base_common_actions_js__WEBPACK_IMPORTED_MODULE_2__.Action('peekview.close', _nls_js__WEBPACK_IMPORTED_MODULE_13__.localize('label.close', \"Close\"), _base_common_themables_js__WEBPACK_IMPORTED_MODULE_4__.ThemeIcon.asClassName(_base_common_codicons_js__WEBPACK_IMPORTED_MODULE_3__.Codicon.close), true, () => {\n this.dispose();\n return Promise.resolve();\n }), { label: false, icon: true });\n }\n }\n _fillTitleIcon(container) {\n }\n _getActionBarOptions() {\n return {\n actionViewItemProvider: _platform_actions_browser_menuEntryActionViewItem_js__WEBPACK_IMPORTED_MODULE_14__.createActionViewItem.bind(undefined, this.instantiationService),\n orientation: 0 /* ActionsOrientation.HORIZONTAL */\n };\n }\n _onTitleClick(event) {\n // implement me if supportOnTitleClick option is set\n }\n setTitle(primaryHeading, secondaryHeading) {\n if (this._primaryHeading && this._secondaryHeading) {\n this._primaryHeading.innerText = primaryHeading;\n this._primaryHeading.setAttribute('title', primaryHeading);\n if (secondaryHeading) {\n this._secondaryHeading.innerText = secondaryHeading;\n }\n else {\n _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.clearNode(this._secondaryHeading);\n }\n }\n }\n setMetaTitle(value) {\n if (this._metaHeading) {\n if (value) {\n this._metaHeading.innerText = value;\n _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.show(this._metaHeading);\n }\n else {\n _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.hide(this._metaHeading);\n }\n }\n }\n _doLayout(heightInPixel, widthInPixel) {\n if (!this._isShowing && heightInPixel < 0) {\n // Looks like the view zone got folded away!\n this.dispose();\n return;\n }\n const headHeight = Math.ceil(this.editor.getOption(67 /* EditorOption.lineHeight */) * 1.2);\n const bodyHeight = Math.round(heightInPixel - (headHeight + 2 /* the border-top/bottom width*/));\n this._doLayoutHead(headHeight, widthInPixel);\n this._doLayoutBody(bodyHeight, widthInPixel);\n }\n _doLayoutHead(heightInPixel, widthInPixel) {\n if (this._headElement) {\n this._headElement.style.height = `${heightInPixel}px`;\n this._headElement.style.lineHeight = this._headElement.style.height;\n }\n }\n _doLayoutBody(heightInPixel, widthInPixel) {\n if (this._bodyElement) {\n this._bodyElement.style.height = `${heightInPixel}px`;\n }\n }\n};\nPeekViewWidget = __decorate([\n __param(2, _platform_instantiation_common_instantiation_js__WEBPACK_IMPORTED_MODULE_17__.IInstantiationService)\n], PeekViewWidget);\n\nconst peekViewTitleBackground = (0,_platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_18__.registerColor)('peekViewTitle.background', { dark: '#252526', light: '#F3F3F3', hcDark: _base_common_color_js__WEBPACK_IMPORTED_MODULE_5__.Color.black, hcLight: _base_common_color_js__WEBPACK_IMPORTED_MODULE_5__.Color.white }, _nls_js__WEBPACK_IMPORTED_MODULE_13__.localize('peekViewTitleBackground', 'Background color of the peek view title area.'));\nconst peekViewTitleForeground = (0,_platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_18__.registerColor)('peekViewTitleLabel.foreground', { dark: _base_common_color_js__WEBPACK_IMPORTED_MODULE_5__.Color.white, light: _base_common_color_js__WEBPACK_IMPORTED_MODULE_5__.Color.black, hcDark: _base_common_color_js__WEBPACK_IMPORTED_MODULE_5__.Color.white, hcLight: _platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_18__.editorForeground }, _nls_js__WEBPACK_IMPORTED_MODULE_13__.localize('peekViewTitleForeground', 'Color of the peek view title.'));\nconst peekViewTitleInfoForeground = (0,_platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_18__.registerColor)('peekViewTitleDescription.foreground', { dark: '#ccccccb3', light: '#616161', hcDark: '#FFFFFF99', hcLight: '#292929' }, _nls_js__WEBPACK_IMPORTED_MODULE_13__.localize('peekViewTitleInfoForeground', 'Color of the peek view title info.'));\nconst peekViewBorder = (0,_platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_18__.registerColor)('peekView.border', { dark: _platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_18__.editorInfoForeground, light: _platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_18__.editorInfoForeground, hcDark: _platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_18__.contrastBorder, hcLight: _platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_18__.contrastBorder }, _nls_js__WEBPACK_IMPORTED_MODULE_13__.localize('peekViewBorder', 'Color of the peek view borders and arrow.'));\nconst peekViewResultsBackground = (0,_platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_18__.registerColor)('peekViewResult.background', { dark: '#252526', light: '#F3F3F3', hcDark: _base_common_color_js__WEBPACK_IMPORTED_MODULE_5__.Color.black, hcLight: _base_common_color_js__WEBPACK_IMPORTED_MODULE_5__.Color.white }, _nls_js__WEBPACK_IMPORTED_MODULE_13__.localize('peekViewResultsBackground', 'Background color of the peek view result list.'));\nconst peekViewResultsMatchForeground = (0,_platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_18__.registerColor)('peekViewResult.lineForeground', { dark: '#bbbbbb', light: '#646465', hcDark: _base_common_color_js__WEBPACK_IMPORTED_MODULE_5__.Color.white, hcLight: _platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_18__.editorForeground }, _nls_js__WEBPACK_IMPORTED_MODULE_13__.localize('peekViewResultsMatchForeground', 'Foreground color for line nodes in the peek view result list.'));\nconst peekViewResultsFileForeground = (0,_platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_18__.registerColor)('peekViewResult.fileForeground', { dark: _base_common_color_js__WEBPACK_IMPORTED_MODULE_5__.Color.white, light: '#1E1E1E', hcDark: _base_common_color_js__WEBPACK_IMPORTED_MODULE_5__.Color.white, hcLight: _platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_18__.editorForeground }, _nls_js__WEBPACK_IMPORTED_MODULE_13__.localize('peekViewResultsFileForeground', 'Foreground color for file nodes in the peek view result list.'));\nconst peekViewResultsSelectionBackground = (0,_platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_18__.registerColor)('peekViewResult.selectionBackground', { dark: '#3399ff33', light: '#3399ff33', hcDark: null, hcLight: null }, _nls_js__WEBPACK_IMPORTED_MODULE_13__.localize('peekViewResultsSelectionBackground', 'Background color of the selected entry in the peek view result list.'));\nconst peekViewResultsSelectionForeground = (0,_platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_18__.registerColor)('peekViewResult.selectionForeground', { dark: _base_common_color_js__WEBPACK_IMPORTED_MODULE_5__.Color.white, light: '#6C6C6C', hcDark: _base_common_color_js__WEBPACK_IMPORTED_MODULE_5__.Color.white, hcLight: _platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_18__.editorForeground }, _nls_js__WEBPACK_IMPORTED_MODULE_13__.localize('peekViewResultsSelectionForeground', 'Foreground color of the selected entry in the peek view result list.'));\nconst peekViewEditorBackground = (0,_platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_18__.registerColor)('peekViewEditor.background', { dark: '#001F33', light: '#F2F8FC', hcDark: _base_common_color_js__WEBPACK_IMPORTED_MODULE_5__.Color.black, hcLight: _base_common_color_js__WEBPACK_IMPORTED_MODULE_5__.Color.white }, _nls_js__WEBPACK_IMPORTED_MODULE_13__.localize('peekViewEditorBackground', 'Background color of the peek view editor.'));\nconst peekViewEditorGutterBackground = (0,_platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_18__.registerColor)('peekViewEditorGutter.background', { dark: peekViewEditorBackground, light: peekViewEditorBackground, hcDark: peekViewEditorBackground, hcLight: peekViewEditorBackground }, _nls_js__WEBPACK_IMPORTED_MODULE_13__.localize('peekViewEditorGutterBackground', 'Background color of the gutter in the peek view editor.'));\nconst peekViewEditorStickyScrollBackground = (0,_platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_18__.registerColor)('peekViewEditorStickyScroll.background', { dark: peekViewEditorBackground, light: peekViewEditorBackground, hcDark: peekViewEditorBackground, hcLight: peekViewEditorBackground }, _nls_js__WEBPACK_IMPORTED_MODULE_13__.localize('peekViewEditorStickScrollBackground', 'Background color of sticky scroll in the peek view editor.'));\nconst peekViewResultsMatchHighlight = (0,_platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_18__.registerColor)('peekViewResult.matchHighlightBackground', { dark: '#ea5c004d', light: '#ea5c004d', hcDark: null, hcLight: null }, _nls_js__WEBPACK_IMPORTED_MODULE_13__.localize('peekViewResultsMatchHighlight', 'Match highlight color in the peek view result list.'));\nconst peekViewEditorMatchHighlight = (0,_platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_18__.registerColor)('peekViewEditor.matchHighlightBackground', { dark: '#ff8f0099', light: '#f5d802de', hcDark: null, hcLight: null }, _nls_js__WEBPACK_IMPORTED_MODULE_13__.localize('peekViewEditorMatchHighlight', 'Match highlight color in the peek view editor.'));\nconst peekViewEditorMatchHighlightBorder = (0,_platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_18__.registerColor)('peekViewEditor.matchHighlightBorder', { dark: null, light: null, hcDark: _platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_18__.activeContrastBorder, hcLight: _platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_18__.activeContrastBorder }, _nls_js__WEBPACK_IMPORTED_MODULE_13__.localize('peekViewEditorMatchHighlightBorder', 'Match highlight border in the peek view editor.'));\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/contrib/peekView/browser/peekView.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/contrib/quickAccess/browser/commandsQuickAccess.js":
/*!*****************************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/contrib/quickAccess/browser/commandsQuickAccess.js ***!
\*****************************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ AbstractEditorCommandsQuickAccessProvider: () => (/* binding */ AbstractEditorCommandsQuickAccessProvider)\n/* harmony export */ });\n/* harmony import */ var _base_common_iconLabels_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../../base/common/iconLabels.js */ \"./node_modules/monaco-editor/esm/vs/base/common/iconLabels.js\");\n/* harmony import */ var _platform_quickinput_browser_commandsQuickAccess_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../platform/quickinput/browser/commandsQuickAccess.js */ \"./node_modules/monaco-editor/esm/vs/platform/quickinput/browser/commandsQuickAccess.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n\nclass AbstractEditorCommandsQuickAccessProvider extends _platform_quickinput_browser_commandsQuickAccess_js__WEBPACK_IMPORTED_MODULE_1__.AbstractCommandsQuickAccessProvider {\n constructor(options, instantiationService, keybindingService, commandService, telemetryService, dialogService) {\n super(options, instantiationService, keybindingService, commandService, telemetryService, dialogService);\n }\n getCodeEditorCommandPicks() {\n const activeTextEditorControl = this.activeTextEditorControl;\n if (!activeTextEditorControl) {\n return [];\n }\n const editorCommandPicks = [];\n for (const editorAction of activeTextEditorControl.getSupportedActions()) {\n editorCommandPicks.push({\n commandId: editorAction.id,\n commandAlias: editorAction.alias,\n label: (0,_base_common_iconLabels_js__WEBPACK_IMPORTED_MODULE_0__.stripIcons)(editorAction.label) || editorAction.id,\n });\n }\n return editorCommandPicks;\n }\n}\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/contrib/quickAccess/browser/commandsQuickAccess.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/contrib/quickAccess/browser/editorNavigationQuickAccess.js":
/*!*************************************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/contrib/quickAccess/browser/editorNavigationQuickAccess.js ***!
\*************************************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ AbstractEditorNavigationQuickAccessProvider: () => (/* binding */ AbstractEditorNavigationQuickAccessProvider)\n/* harmony export */ });\n/* harmony import */ var _base_common_functional_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../../base/common/functional.js */ \"./node_modules/monaco-editor/esm/vs/base/common/functional.js\");\n/* harmony import */ var _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../base/common/lifecycle.js */ \"./node_modules/monaco-editor/esm/vs/base/common/lifecycle.js\");\n/* harmony import */ var _browser_editorBrowser_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../browser/editorBrowser.js */ \"./node_modules/monaco-editor/esm/vs/editor/browser/editorBrowser.js\");\n/* harmony import */ var _common_model_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../../common/model.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/model.js\");\n/* harmony import */ var _common_core_editorColorRegistry_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../../common/core/editorColorRegistry.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/core/editorColorRegistry.js\");\n/* harmony import */ var _platform_theme_common_themeService_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../../../../platform/theme/common/themeService.js */ \"./node_modules/monaco-editor/esm/vs/platform/theme/common/themeService.js\");\n/* harmony import */ var _base_browser_ui_aria_aria_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../../../../base/browser/ui/aria/aria.js */ \"./node_modules/monaco-editor/esm/vs/base/browser/ui/aria/aria.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n\n\n\n\n\n\n/**\n * A reusable quick access provider for the editor with support\n * for adding decorations for navigating in the currently active file\n * (for example \"Go to line\", \"Go to symbol\").\n */\nclass AbstractEditorNavigationQuickAccessProvider {\n constructor(options) {\n this.options = options;\n //#endregion\n //#region Decorations Utils\n this.rangeHighlightDecorationId = undefined;\n }\n //#region Provider methods\n provide(picker, token) {\n var _a;\n const disposables = new _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_1__.DisposableStore();\n // Apply options if any\n picker.canAcceptInBackground = !!((_a = this.options) === null || _a === void 0 ? void 0 : _a.canAcceptInBackground);\n // Disable filtering & sorting, we control the results\n picker.matchOnLabel = picker.matchOnDescription = picker.matchOnDetail = picker.sortByLabel = false;\n // Provide based on current active editor\n const pickerDisposable = disposables.add(new _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_1__.MutableDisposable());\n pickerDisposable.value = this.doProvide(picker, token);\n // Re-create whenever the active editor changes\n disposables.add(this.onDidActiveTextEditorControlChange(() => {\n // Clear old\n pickerDisposable.value = undefined;\n // Add new\n pickerDisposable.value = this.doProvide(picker, token);\n }));\n return disposables;\n }\n doProvide(picker, token) {\n var _a;\n const disposables = new _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_1__.DisposableStore();\n // With text control\n const editor = this.activeTextEditorControl;\n if (editor && this.canProvideWithTextEditor(editor)) {\n const context = { editor };\n // Restore any view state if this picker was closed\n // without actually going to a line\n const codeEditor = (0,_browser_editorBrowser_js__WEBPACK_IMPORTED_MODULE_2__.getCodeEditor)(editor);\n if (codeEditor) {\n // Remember view state and update it when the cursor position\n // changes even later because it could be that the user has\n // configured quick access to remain open when focus is lost and\n // we always want to restore the current location.\n let lastKnownEditorViewState = (_a = editor.saveViewState()) !== null && _a !== void 0 ? _a : undefined;\n disposables.add(codeEditor.onDidChangeCursorPosition(() => {\n var _a;\n lastKnownEditorViewState = (_a = editor.saveViewState()) !== null && _a !== void 0 ? _a : undefined;\n }));\n context.restoreViewState = () => {\n if (lastKnownEditorViewState && editor === this.activeTextEditorControl) {\n editor.restoreViewState(lastKnownEditorViewState);\n }\n };\n disposables.add((0,_base_common_functional_js__WEBPACK_IMPORTED_MODULE_0__.createSingleCallFunction)(token.onCancellationRequested)(() => { var _a; return (_a = context.restoreViewState) === null || _a === void 0 ? void 0 : _a.call(context); }));\n }\n // Clean up decorations on dispose\n disposables.add((0,_base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_1__.toDisposable)(() => this.clearDecorations(editor)));\n // Ask subclass for entries\n disposables.add(this.provideWithTextEditor(context, picker, token));\n }\n // Without text control\n else {\n disposables.add(this.provideWithoutTextEditor(picker, token));\n }\n return disposables;\n }\n /**\n * Subclasses to implement if they can operate on the text editor.\n */\n canProvideWithTextEditor(editor) {\n return true;\n }\n gotoLocation({ editor }, options) {\n editor.setSelection(options.range);\n editor.revealRangeInCenter(options.range, 0 /* ScrollType.Smooth */);\n if (!options.preserveFocus) {\n editor.focus();\n }\n const model = editor.getModel();\n if (model && 'getLineContent' in model) {\n (0,_base_browser_ui_aria_aria_js__WEBPACK_IMPORTED_MODULE_6__.status)(`${model.getLineContent(options.range.startLineNumber)}`);\n }\n }\n getModel(editor) {\n var _a;\n return (0,_browser_editorBrowser_js__WEBPACK_IMPORTED_MODULE_2__.isDiffEditor)(editor) ?\n (_a = editor.getModel()) === null || _a === void 0 ? void 0 : _a.modified :\n editor.getModel();\n }\n addDecorations(editor, range) {\n editor.changeDecorations(changeAccessor => {\n // Reset old decorations if any\n const deleteDecorations = [];\n if (this.rangeHighlightDecorationId) {\n deleteDecorations.push(this.rangeHighlightDecorationId.overviewRulerDecorationId);\n deleteDecorations.push(this.rangeHighlightDecorationId.rangeHighlightId);\n this.rangeHighlightDecorationId = undefined;\n }\n // Add new decorations for the range\n const newDecorations = [\n // highlight the entire line on the range\n {\n range,\n options: {\n description: 'quick-access-range-highlight',\n className: 'rangeHighlight',\n isWholeLine: true\n }\n },\n // also add overview ruler highlight\n {\n range,\n options: {\n description: 'quick-access-range-highlight-overview',\n overviewRuler: {\n color: (0,_platform_theme_common_themeService_js__WEBPACK_IMPORTED_MODULE_5__.themeColorFromId)(_common_core_editorColorRegistry_js__WEBPACK_IMPORTED_MODULE_4__.overviewRulerRangeHighlight),\n position: _common_model_js__WEBPACK_IMPORTED_MODULE_3__.OverviewRulerLane.Full\n }\n }\n }\n ];\n const [rangeHighlightId, overviewRulerDecorationId] = changeAccessor.deltaDecorations(deleteDecorations, newDecorations);\n this.rangeHighlightDecorationId = { rangeHighlightId, overviewRulerDecorationId };\n });\n }\n clearDecorations(editor) {\n const rangeHighlightDecorationId = this.rangeHighlightDecorationId;\n if (rangeHighlightDecorationId) {\n editor.changeDecorations(changeAccessor => {\n changeAccessor.deltaDecorations([\n rangeHighlightDecorationId.overviewRulerDecorationId,\n rangeHighlightDecorationId.rangeHighlightId\n ], []);\n });\n this.rangeHighlightDecorationId = undefined;\n }\n }\n}\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/contrib/quickAccess/browser/editorNavigationQuickAccess.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/contrib/quickAccess/browser/gotoLineQuickAccess.js":
/*!*****************************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/contrib/quickAccess/browser/gotoLineQuickAccess.js ***!
\*****************************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ AbstractGotoLineQuickAccessProvider: () => (/* binding */ AbstractGotoLineQuickAccessProvider)\n/* harmony export */ });\n/* harmony import */ var _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../../base/common/lifecycle.js */ \"./node_modules/monaco-editor/esm/vs/base/common/lifecycle.js\");\n/* harmony import */ var _browser_editorBrowser_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../browser/editorBrowser.js */ \"./node_modules/monaco-editor/esm/vs/editor/browser/editorBrowser.js\");\n/* harmony import */ var _editorNavigationQuickAccess_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./editorNavigationQuickAccess.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/quickAccess/browser/editorNavigationQuickAccess.js\");\n/* harmony import */ var _nls_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../../../nls.js */ \"./node_modules/monaco-editor/esm/vs/nls.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n\n\n\nclass AbstractGotoLineQuickAccessProvider extends _editorNavigationQuickAccess_js__WEBPACK_IMPORTED_MODULE_2__.AbstractEditorNavigationQuickAccessProvider {\n constructor() {\n super({ canAcceptInBackground: true });\n }\n provideWithoutTextEditor(picker) {\n const label = (0,_nls_js__WEBPACK_IMPORTED_MODULE_3__.localize)('cannotRunGotoLine', \"Open a text editor first to go to a line.\");\n picker.items = [{ label }];\n picker.ariaLabel = label;\n return _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_0__.Disposable.None;\n }\n provideWithTextEditor(context, picker, token) {\n const editor = context.editor;\n const disposables = new _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_0__.DisposableStore();\n // Goto line once picked\n disposables.add(picker.onDidAccept(event => {\n const [item] = picker.selectedItems;\n if (item) {\n if (!this.isValidLineNumber(editor, item.lineNumber)) {\n return;\n }\n this.gotoLocation(context, { range: this.toRange(item.lineNumber, item.column), keyMods: picker.keyMods, preserveFocus: event.inBackground });\n if (!event.inBackground) {\n picker.hide();\n }\n }\n }));\n // React to picker changes\n const updatePickerAndEditor = () => {\n const position = this.parsePosition(editor, picker.value.trim().substr(AbstractGotoLineQuickAccessProvider.PREFIX.length));\n const label = this.getPickLabel(editor, position.lineNumber, position.column);\n // Picker\n picker.items = [{\n lineNumber: position.lineNumber,\n column: position.column,\n label\n }];\n // ARIA Label\n picker.ariaLabel = label;\n // Clear decorations for invalid range\n if (!this.isValidLineNumber(editor, position.lineNumber)) {\n this.clearDecorations(editor);\n return;\n }\n // Reveal\n const range = this.toRange(position.lineNumber, position.column);\n editor.revealRangeInCenter(range, 0 /* ScrollType.Smooth */);\n // Decorate\n this.addDecorations(editor, range);\n };\n updatePickerAndEditor();\n disposables.add(picker.onDidChangeValue(() => updatePickerAndEditor()));\n // Adjust line number visibility as needed\n const codeEditor = (0,_browser_editorBrowser_js__WEBPACK_IMPORTED_MODULE_1__.getCodeEditor)(editor);\n if (codeEditor) {\n const options = codeEditor.getOptions();\n const lineNumbers = options.get(68 /* EditorOption.lineNumbers */);\n if (lineNumbers.renderType === 2 /* RenderLineNumbersType.Relative */) {\n codeEditor.updateOptions({ lineNumbers: 'on' });\n disposables.add((0,_base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_0__.toDisposable)(() => codeEditor.updateOptions({ lineNumbers: 'relative' })));\n }\n }\n return disposables;\n }\n toRange(lineNumber = 1, column = 1) {\n return {\n startLineNumber: lineNumber,\n startColumn: column,\n endLineNumber: lineNumber,\n endColumn: column\n };\n }\n parsePosition(editor, value) {\n // Support line-col formats of `line,col`, `line:col`, `line#col`\n const numbers = value.split(/,|:|#/).map(part => parseInt(part, 10)).filter(part => !isNaN(part));\n const endLine = this.lineCount(editor) + 1;\n return {\n lineNumber: numbers[0] > 0 ? numbers[0] : endLine + numbers[0],\n column: numbers[1]\n };\n }\n getPickLabel(editor, lineNumber, column) {\n // Location valid: indicate this as picker label\n if (this.isValidLineNumber(editor, lineNumber)) {\n if (this.isValidColumn(editor, lineNumber, column)) {\n return (0,_nls_js__WEBPACK_IMPORTED_MODULE_3__.localize)('gotoLineColumnLabel', \"Go to line {0} and character {1}.\", lineNumber, column);\n }\n return (0,_nls_js__WEBPACK_IMPORTED_MODULE_3__.localize)('gotoLineLabel', \"Go to line {0}.\", lineNumber);\n }\n // Location invalid: show generic label\n const position = editor.getPosition() || { lineNumber: 1, column: 1 };\n const lineCount = this.lineCount(editor);\n if (lineCount > 1) {\n return (0,_nls_js__WEBPACK_IMPORTED_MODULE_3__.localize)('gotoLineLabelEmptyWithLimit', \"Current Line: {0}, Character: {1}. Type a line number between 1 and {2} to navigate to.\", position.lineNumber, position.column, lineCount);\n }\n return (0,_nls_js__WEBPACK_IMPORTED_MODULE_3__.localize)('gotoLineLabelEmpty', \"Current Line: {0}, Character: {1}. Type a line number to navigate to.\", position.lineNumber, position.column);\n }\n isValidLineNumber(editor, lineNumber) {\n if (!lineNumber || typeof lineNumber !== 'number') {\n return false;\n }\n return lineNumber > 0 && lineNumber <= this.lineCount(editor);\n }\n isValidColumn(editor, lineNumber, column) {\n if (!column || typeof column !== 'number') {\n return false;\n }\n const model = this.getModel(editor);\n if (!model) {\n return false;\n }\n const positionCandidate = { lineNumber, column };\n return model.validatePosition(positionCandidate).equals(positionCandidate);\n }\n lineCount(editor) {\n var _a, _b;\n return (_b = (_a = this.getModel(editor)) === null || _a === void 0 ? void 0 : _a.getLineCount()) !== null && _b !== void 0 ? _b : 0;\n }\n}\nAbstractGotoLineQuickAccessProvider.PREFIX = ':';\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/contrib/quickAccess/browser/gotoLineQuickAccess.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/contrib/quickAccess/browser/gotoSymbolQuickAccess.js":
/*!*******************************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/contrib/quickAccess/browser/gotoSymbolQuickAccess.js ***!
\*******************************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ AbstractGotoSymbolQuickAccessProvider: () => (/* binding */ AbstractGotoSymbolQuickAccessProvider)\n/* harmony export */ });\n/* harmony import */ var _base_common_async_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../../base/common/async.js */ \"./node_modules/monaco-editor/esm/vs/base/common/async.js\");\n/* harmony import */ var _base_common_cancellation_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../base/common/cancellation.js */ \"./node_modules/monaco-editor/esm/vs/base/common/cancellation.js\");\n/* harmony import */ var _base_common_codicons_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../../base/common/codicons.js */ \"./node_modules/monaco-editor/esm/vs/base/common/codicons.js\");\n/* harmony import */ var _base_common_themables_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../../../base/common/themables.js */ \"./node_modules/monaco-editor/esm/vs/base/common/themables.js\");\n/* harmony import */ var _base_common_fuzzyScorer_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../../../base/common/fuzzyScorer.js */ \"./node_modules/monaco-editor/esm/vs/base/common/fuzzyScorer.js\");\n/* harmony import */ var _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../../../../base/common/lifecycle.js */ \"./node_modules/monaco-editor/esm/vs/base/common/lifecycle.js\");\n/* harmony import */ var _base_common_strings_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../../../../base/common/strings.js */ \"./node_modules/monaco-editor/esm/vs/base/common/strings.js\");\n/* harmony import */ var _common_core_range_js__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ../../../common/core/range.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/core/range.js\");\n/* harmony import */ var _common_languages_js__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ../../../common/languages.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/languages.js\");\n/* harmony import */ var _documentSymbols_browser_outlineModel_js__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ../../documentSymbols/browser/outlineModel.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/documentSymbols/browser/outlineModel.js\");\n/* harmony import */ var _editorNavigationQuickAccess_js__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! ./editorNavigationQuickAccess.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/quickAccess/browser/editorNavigationQuickAccess.js\");\n/* harmony import */ var _nls_js__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(/*! ../../../../nls.js */ \"./node_modules/monaco-editor/esm/vs/nls.js\");\n/* harmony import */ var _common_services_languageFeatures_js__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(/*! ../../../common/services/languageFeatures.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/services/languageFeatures.js\");\n/* harmony import */ var _base_common_arraysFind_js__WEBPACK_IMPORTED_MODULE_13__ = __webpack_require__(/*! ../../../../base/common/arraysFind.js */ \"./node_modules/monaco-editor/esm/vs/base/common/arraysFind.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\nvar __decorate = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\n return c > 3 && r && Object.defineProperty(target, key, r), r;\n};\nvar __param = (undefined && undefined.__param) || function (paramIndex, decorator) {\n return function (target, key) { decorator(target, key, paramIndex); }\n};\nvar AbstractGotoSymbolQuickAccessProvider_1;\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlet AbstractGotoSymbolQuickAccessProvider = AbstractGotoSymbolQuickAccessProvider_1 = class AbstractGotoSymbolQuickAccessProvider extends _editorNavigationQuickAccess_js__WEBPACK_IMPORTED_MODULE_10__.AbstractEditorNavigationQuickAccessProvider {\n constructor(_languageFeaturesService, _outlineModelService, options = Object.create(null)) {\n super(options);\n this._languageFeaturesService = _languageFeaturesService;\n this._outlineModelService = _outlineModelService;\n this.options = options;\n this.options.canAcceptInBackground = true;\n }\n provideWithoutTextEditor(picker) {\n this.provideLabelPick(picker, (0,_nls_js__WEBPACK_IMPORTED_MODULE_11__.localize)('cannotRunGotoSymbolWithoutEditor', \"To go to a symbol, first open a text editor with symbol information.\"));\n return _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_5__.Disposable.None;\n }\n provideWithTextEditor(context, picker, token) {\n const editor = context.editor;\n const model = this.getModel(editor);\n if (!model) {\n return _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_5__.Disposable.None;\n }\n // Provide symbols from model if available in registry\n if (this._languageFeaturesService.documentSymbolProvider.has(model)) {\n return this.doProvideWithEditorSymbols(context, model, picker, token);\n }\n // Otherwise show an entry for a model without registry\n // But give a chance to resolve the symbols at a later\n // point if possible\n return this.doProvideWithoutEditorSymbols(context, model, picker, token);\n }\n doProvideWithoutEditorSymbols(context, model, picker, token) {\n const disposables = new _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_5__.DisposableStore();\n // Generic pick for not having any symbol information\n this.provideLabelPick(picker, (0,_nls_js__WEBPACK_IMPORTED_MODULE_11__.localize)('cannotRunGotoSymbolWithoutSymbolProvider', \"The active text editor does not provide symbol information.\"));\n // Wait for changes to the registry and see if eventually\n // we do get symbols. This can happen if the picker is opened\n // very early after the model has loaded but before the\n // language registry is ready.\n // https://github.com/microsoft/vscode/issues/70607\n (async () => {\n const result = await this.waitForLanguageSymbolRegistry(model, disposables);\n if (!result || token.isCancellationRequested) {\n return;\n }\n disposables.add(this.doProvideWithEditorSymbols(context, model, picker, token));\n })();\n return disposables;\n }\n provideLabelPick(picker, label) {\n picker.items = [{ label, index: 0, kind: 14 /* SymbolKind.String */ }];\n picker.ariaLabel = label;\n }\n async waitForLanguageSymbolRegistry(model, disposables) {\n if (this._languageFeaturesService.documentSymbolProvider.has(model)) {\n return true;\n }\n const symbolProviderRegistryPromise = new _base_common_async_js__WEBPACK_IMPORTED_MODULE_0__.DeferredPromise();\n // Resolve promise when registry knows model\n const symbolProviderListener = disposables.add(this._languageFeaturesService.documentSymbolProvider.onDidChange(() => {\n if (this._languageFeaturesService.documentSymbolProvider.has(model)) {\n symbolProviderListener.dispose();\n symbolProviderRegistryPromise.complete(true);\n }\n }));\n // Resolve promise when we get disposed too\n disposables.add((0,_base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_5__.toDisposable)(() => symbolProviderRegistryPromise.complete(false)));\n return symbolProviderRegistryPromise.p;\n }\n doProvideWithEditorSymbols(context, model, picker, token) {\n var _a;\n const editor = context.editor;\n const disposables = new _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_5__.DisposableStore();\n // Goto symbol once picked\n disposables.add(picker.onDidAccept(event => {\n const [item] = picker.selectedItems;\n if (item && item.range) {\n this.gotoLocation(context, { range: item.range.selection, keyMods: picker.keyMods, preserveFocus: event.inBackground });\n if (!event.inBackground) {\n picker.hide();\n }\n }\n }));\n // Goto symbol side by side if enabled\n disposables.add(picker.onDidTriggerItemButton(({ item }) => {\n if (item && item.range) {\n this.gotoLocation(context, { range: item.range.selection, keyMods: picker.keyMods, forceSideBySide: true });\n picker.hide();\n }\n }));\n // Resolve symbols from document once and reuse this\n // request for all filtering and typing then on\n const symbolsPromise = this.getDocumentSymbols(model, token);\n // Set initial picks and update on type\n let picksCts = undefined;\n const updatePickerItems = async (positionToEnclose) => {\n // Cancel any previous ask for picks and busy\n picksCts === null || picksCts === void 0 ? void 0 : picksCts.dispose(true);\n picker.busy = false;\n // Create new cancellation source for this run\n picksCts = new _base_common_cancellation_js__WEBPACK_IMPORTED_MODULE_1__.CancellationTokenSource(token);\n // Collect symbol picks\n picker.busy = true;\n try {\n const query = (0,_base_common_fuzzyScorer_js__WEBPACK_IMPORTED_MODULE_4__.prepareQuery)(picker.value.substr(AbstractGotoSymbolQuickAccessProvider_1.PREFIX.length).trim());\n const items = await this.doGetSymbolPicks(symbolsPromise, query, undefined, picksCts.token);\n if (token.isCancellationRequested) {\n return;\n }\n if (items.length > 0) {\n picker.items = items;\n if (positionToEnclose && query.original.length === 0) {\n const candidate = (0,_base_common_arraysFind_js__WEBPACK_IMPORTED_MODULE_13__.findLast)(items, item => Boolean(item.type !== 'separator' && item.range && _common_core_range_js__WEBPACK_IMPORTED_MODULE_7__.Range.containsPosition(item.range.decoration, positionToEnclose)));\n if (candidate) {\n picker.activeItems = [candidate];\n }\n }\n }\n else {\n if (query.original.length > 0) {\n this.provideLabelPick(picker, (0,_nls_js__WEBPACK_IMPORTED_MODULE_11__.localize)('noMatchingSymbolResults', \"No matching editor symbols\"));\n }\n else {\n this.provideLabelPick(picker, (0,_nls_js__WEBPACK_IMPORTED_MODULE_11__.localize)('noSymbolResults', \"No editor symbols\"));\n }\n }\n }\n finally {\n if (!token.isCancellationRequested) {\n picker.busy = false;\n }\n }\n };\n disposables.add(picker.onDidChangeValue(() => updatePickerItems(undefined)));\n updatePickerItems((_a = editor.getSelection()) === null || _a === void 0 ? void 0 : _a.getPosition());\n // Reveal and decorate when active item changes\n disposables.add(picker.onDidChangeActive(() => {\n const [item] = picker.activeItems;\n if (item && item.range) {\n // Reveal\n editor.revealRangeInCenter(item.range.selection, 0 /* ScrollType.Smooth */);\n // Decorate\n this.addDecorations(editor, item.range.decoration);\n }\n }));\n return disposables;\n }\n async doGetSymbolPicks(symbolsPromise, query, options, token) {\n var _a, _b;\n const symbols = await symbolsPromise;\n if (token.isCancellationRequested) {\n return [];\n }\n const filterBySymbolKind = query.original.indexOf(AbstractGotoSymbolQuickAccessProvider_1.SCOPE_PREFIX) === 0;\n const filterPos = filterBySymbolKind ? 1 : 0;\n // Split between symbol and container query\n let symbolQuery;\n let containerQuery;\n if (query.values && query.values.length > 1) {\n symbolQuery = (0,_base_common_fuzzyScorer_js__WEBPACK_IMPORTED_MODULE_4__.pieceToQuery)(query.values[0]); // symbol: only match on first part\n containerQuery = (0,_base_common_fuzzyScorer_js__WEBPACK_IMPORTED_MODULE_4__.pieceToQuery)(query.values.slice(1)); // container: match on all but first parts\n }\n else {\n symbolQuery = query;\n }\n // Convert to symbol picks and apply filtering\n let buttons;\n const openSideBySideDirection = (_b = (_a = this.options) === null || _a === void 0 ? void 0 : _a.openSideBySideDirection) === null || _b === void 0 ? void 0 : _b.call(_a);\n if (openSideBySideDirection) {\n buttons = [{\n iconClass: openSideBySideDirection === 'right' ? _base_common_themables_js__WEBPACK_IMPORTED_MODULE_3__.ThemeIcon.asClassName(_base_common_codicons_js__WEBPACK_IMPORTED_MODULE_2__.Codicon.splitHorizontal) : _base_common_themables_js__WEBPACK_IMPORTED_MODULE_3__.ThemeIcon.asClassName(_base_common_codicons_js__WEBPACK_IMPORTED_MODULE_2__.Codicon.splitVertical),\n tooltip: openSideBySideDirection === 'right' ? (0,_nls_js__WEBPACK_IMPORTED_MODULE_11__.localize)('openToSide', \"Open to the Side\") : (0,_nls_js__WEBPACK_IMPORTED_MODULE_11__.localize)('openToBottom', \"Open to the Bottom\")\n }];\n }\n const filteredSymbolPicks = [];\n for (let index = 0; index < symbols.length; index++) {\n const symbol = symbols[index];\n const symbolLabel = (0,_base_common_strings_js__WEBPACK_IMPORTED_MODULE_6__.trim)(symbol.name);\n const symbolLabelWithIcon = `$(${_common_languages_js__WEBPACK_IMPORTED_MODULE_8__.SymbolKinds.toIcon(symbol.kind).id}) ${symbolLabel}`;\n const symbolLabelIconOffset = symbolLabelWithIcon.length - symbolLabel.length;\n let containerLabel = symbol.containerName;\n if (options === null || options === void 0 ? void 0 : options.extraContainerLabel) {\n if (containerLabel) {\n containerLabel = `${options.extraContainerLabel} • ${containerLabel}`;\n }\n else {\n containerLabel = options.extraContainerLabel;\n }\n }\n let symbolScore = undefined;\n let symbolMatches = undefined;\n let containerScore = undefined;\n let containerMatches = undefined;\n if (query.original.length > filterPos) {\n // First: try to score on the entire query, it is possible that\n // the symbol matches perfectly (e.g. searching for \"change log\"\n // can be a match on a markdown symbol \"change log\"). In that\n // case we want to skip the container query altogether.\n let skipContainerQuery = false;\n if (symbolQuery !== query) {\n [symbolScore, symbolMatches] = (0,_base_common_fuzzyScorer_js__WEBPACK_IMPORTED_MODULE_4__.scoreFuzzy2)(symbolLabelWithIcon, { ...query, values: undefined /* disable multi-query support */ }, filterPos, symbolLabelIconOffset);\n if (typeof symbolScore === 'number') {\n skipContainerQuery = true; // since we consumed the query, skip any container matching\n }\n }\n // Otherwise: score on the symbol query and match on the container later\n if (typeof symbolScore !== 'number') {\n [symbolScore, symbolMatches] = (0,_base_common_fuzzyScorer_js__WEBPACK_IMPORTED_MODULE_4__.scoreFuzzy2)(symbolLabelWithIcon, symbolQuery, filterPos, symbolLabelIconOffset);\n if (typeof symbolScore !== 'number') {\n continue;\n }\n }\n // Score by container if specified\n if (!skipContainerQuery && containerQuery) {\n if (containerLabel && containerQuery.original.length > 0) {\n [containerScore, containerMatches] = (0,_base_common_fuzzyScorer_js__WEBPACK_IMPORTED_MODULE_4__.scoreFuzzy2)(containerLabel, containerQuery);\n }\n if (typeof containerScore !== 'number') {\n continue;\n }\n if (typeof symbolScore === 'number') {\n symbolScore += containerScore; // boost symbolScore by containerScore\n }\n }\n }\n const deprecated = symbol.tags && symbol.tags.indexOf(1 /* SymbolTag.Deprecated */) >= 0;\n filteredSymbolPicks.push({\n index,\n kind: symbol.kind,\n score: symbolScore,\n label: symbolLabelWithIcon,\n ariaLabel: (0,_common_languages_js__WEBPACK_IMPORTED_MODULE_8__.getAriaLabelForSymbol)(symbol.name, symbol.kind),\n description: containerLabel,\n highlights: deprecated ? undefined : {\n label: symbolMatches,\n description: containerMatches\n },\n range: {\n selection: _common_core_range_js__WEBPACK_IMPORTED_MODULE_7__.Range.collapseToStart(symbol.selectionRange),\n decoration: symbol.range\n },\n strikethrough: deprecated,\n buttons\n });\n }\n // Sort by score\n const sortedFilteredSymbolPicks = filteredSymbolPicks.sort((symbolA, symbolB) => filterBySymbolKind ?\n this.compareByKindAndScore(symbolA, symbolB) :\n this.compareByScore(symbolA, symbolB));\n // Add separator for types\n // - @ only total number of symbols\n // - @: grouped by symbol kind\n let symbolPicks = [];\n if (filterBySymbolKind) {\n let lastSymbolKind = undefined;\n let lastSeparator = undefined;\n let lastSymbolKindCounter = 0;\n function updateLastSeparatorLabel() {\n if (lastSeparator && typeof lastSymbolKind === 'number' && lastSymbolKindCounter > 0) {\n lastSeparator.label = (0,_base_common_strings_js__WEBPACK_IMPORTED_MODULE_6__.format)(NLS_SYMBOL_KIND_CACHE[lastSymbolKind] || FALLBACK_NLS_SYMBOL_KIND, lastSymbolKindCounter);\n }\n }\n for (const symbolPick of sortedFilteredSymbolPicks) {\n // Found new kind\n if (lastSymbolKind !== symbolPick.kind) {\n // Update last separator with number of symbols we found for kind\n updateLastSeparatorLabel();\n lastSymbolKind = symbolPick.kind;\n lastSymbolKindCounter = 1;\n // Add new separator for new kind\n lastSeparator = { type: 'separator' };\n symbolPicks.push(lastSeparator);\n }\n // Existing kind, keep counting\n else {\n lastSymbolKindCounter++;\n }\n // Add to final result\n symbolPicks.push(symbolPick);\n }\n // Update last separator with number of symbols we found for kind\n updateLastSeparatorLabel();\n }\n else if (sortedFilteredSymbolPicks.length > 0) {\n symbolPicks = [\n { label: (0,_nls_js__WEBPACK_IMPORTED_MODULE_11__.localize)('symbols', \"symbols ({0})\", filteredSymbolPicks.length), type: 'separator' },\n ...sortedFilteredSymbolPicks\n ];\n }\n return symbolPicks;\n }\n compareByScore(symbolA, symbolB) {\n if (typeof symbolA.score !== 'number' && typeof symbolB.score === 'number') {\n return 1;\n }\n else if (typeof symbolA.score === 'number' && typeof symbolB.score !== 'number') {\n return -1;\n }\n if (typeof symbolA.score === 'number' && typeof symbolB.score === 'number') {\n if (symbolA.score > symbolB.score) {\n return -1;\n }\n else if (symbolA.score < symbolB.score) {\n return 1;\n }\n }\n if (symbolA.index < symbolB.index) {\n return -1;\n }\n else if (symbolA.index > symbolB.index) {\n return 1;\n }\n return 0;\n }\n compareByKindAndScore(symbolA, symbolB) {\n const kindA = NLS_SYMBOL_KIND_CACHE[symbolA.kind] || FALLBACK_NLS_SYMBOL_KIND;\n const kindB = NLS_SYMBOL_KIND_CACHE[symbolB.kind] || FALLBACK_NLS_SYMBOL_KIND;\n // Sort by type first if scoped search\n const result = kindA.localeCompare(kindB);\n if (result === 0) {\n return this.compareByScore(symbolA, symbolB);\n }\n return result;\n }\n async getDocumentSymbols(document, token) {\n const model = await this._outlineModelService.getOrCreate(document, token);\n return token.isCancellationRequested ? [] : model.asListOfDocumentSymbols();\n }\n};\nAbstractGotoSymbolQuickAccessProvider.PREFIX = '@';\nAbstractGotoSymbolQuickAccessProvider.SCOPE_PREFIX = ':';\nAbstractGotoSymbolQuickAccessProvider.PREFIX_BY_CATEGORY = `${AbstractGotoSymbolQuickAccessProvider_1.PREFIX}${AbstractGotoSymbolQuickAccessProvider_1.SCOPE_PREFIX}`;\nAbstractGotoSymbolQuickAccessProvider = AbstractGotoSymbolQuickAccessProvider_1 = __decorate([\n __param(0, _common_services_languageFeatures_js__WEBPACK_IMPORTED_MODULE_12__.ILanguageFeaturesService),\n __param(1, _documentSymbols_browser_outlineModel_js__WEBPACK_IMPORTED_MODULE_9__.IOutlineModelService)\n], AbstractGotoSymbolQuickAccessProvider);\n\n// #region NLS Helpers\nconst FALLBACK_NLS_SYMBOL_KIND = (0,_nls_js__WEBPACK_IMPORTED_MODULE_11__.localize)('property', \"properties ({0})\");\nconst NLS_SYMBOL_KIND_CACHE = {\n [5 /* SymbolKind.Method */]: (0,_nls_js__WEBPACK_IMPORTED_MODULE_11__.localize)('method', \"methods ({0})\"),\n [11 /* SymbolKind.Function */]: (0,_nls_js__WEBPACK_IMPORTED_MODULE_11__.localize)('function', \"functions ({0})\"),\n [8 /* SymbolKind.Constructor */]: (0,_nls_js__WEBPACK_IMPORTED_MODULE_11__.localize)('_constructor', \"constructors ({0})\"),\n [12 /* SymbolKind.Variable */]: (0,_nls_js__WEBPACK_IMPORTED_MODULE_11__.localize)('variable', \"variables ({0})\"),\n [4 /* SymbolKind.Class */]: (0,_nls_js__WEBPACK_IMPORTED_MODULE_11__.localize)('class', \"classes ({0})\"),\n [22 /* SymbolKind.Struct */]: (0,_nls_js__WEBPACK_IMPORTED_MODULE_11__.localize)('struct', \"structs ({0})\"),\n [23 /* SymbolKind.Event */]: (0,_nls_js__WEBPACK_IMPORTED_MODULE_11__.localize)('event', \"events ({0})\"),\n [24 /* SymbolKind.Operator */]: (0,_nls_js__WEBPACK_IMPORTED_MODULE_11__.localize)('operator', \"operators ({0})\"),\n [10 /* SymbolKind.Interface */]: (0,_nls_js__WEBPACK_IMPORTED_MODULE_11__.localize)('interface', \"interfaces ({0})\"),\n [2 /* SymbolKind.Namespace */]: (0,_nls_js__WEBPACK_IMPORTED_MODULE_11__.localize)('namespace', \"namespaces ({0})\"),\n [3 /* SymbolKind.Package */]: (0,_nls_js__WEBPACK_IMPORTED_MODULE_11__.localize)('package', \"packages ({0})\"),\n [25 /* SymbolKind.TypeParameter */]: (0,_nls_js__WEBPACK_IMPORTED_MODULE_11__.localize)('typeParameter', \"type parameters ({0})\"),\n [1 /* SymbolKind.Module */]: (0,_nls_js__WEBPACK_IMPORTED_MODULE_11__.localize)('modules', \"modules ({0})\"),\n [6 /* SymbolKind.Property */]: (0,_nls_js__WEBPACK_IMPORTED_MODULE_11__.localize)('property', \"properties ({0})\"),\n [9 /* SymbolKind.Enum */]: (0,_nls_js__WEBPACK_IMPORTED_MODULE_11__.localize)('enum', \"enumerations ({0})\"),\n [21 /* SymbolKind.EnumMember */]: (0,_nls_js__WEBPACK_IMPORTED_MODULE_11__.localize)('enumMember', \"enumeration members ({0})\"),\n [14 /* SymbolKind.String */]: (0,_nls_js__WEBPACK_IMPORTED_MODULE_11__.localize)('string', \"strings ({0})\"),\n [0 /* SymbolKind.File */]: (0,_nls_js__WEBPACK_IMPORTED_MODULE_11__.localize)('file', \"files ({0})\"),\n [17 /* SymbolKind.Array */]: (0,_nls_js__WEBPACK_IMPORTED_MODULE_11__.localize)('array', \"arrays ({0})\"),\n [15 /* SymbolKind.Number */]: (0,_nls_js__WEBPACK_IMPORTED_MODULE_11__.localize)('number', \"numbers ({0})\"),\n [16 /* SymbolKind.Boolean */]: (0,_nls_js__WEBPACK_IMPORTED_MODULE_11__.localize)('boolean', \"booleans ({0})\"),\n [18 /* SymbolKind.Object */]: (0,_nls_js__WEBPACK_IMPORTED_MODULE_11__.localize)('object', \"objects ({0})\"),\n [19 /* SymbolKind.Key */]: (0,_nls_js__WEBPACK_IMPORTED_MODULE_11__.localize)('key', \"keys ({0})\"),\n [7 /* SymbolKind.Field */]: (0,_nls_js__WEBPACK_IMPORTED_MODULE_11__.localize)('field', \"fields ({0})\"),\n [13 /* SymbolKind.Constant */]: (0,_nls_js__WEBPACK_IMPORTED_MODULE_11__.localize)('constant', \"constants ({0})\")\n};\n//#endregion\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/contrib/quickAccess/browser/gotoSymbolQuickAccess.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/contrib/readOnlyMessage/browser/contribution.js":
/*!**************************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/contrib/readOnlyMessage/browser/contribution.js ***!
\**************************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ ReadOnlyMessageController: () => (/* binding */ ReadOnlyMessageController)\n/* harmony export */ });\n/* harmony import */ var _base_common_htmlContent_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../../base/common/htmlContent.js */ \"./node_modules/monaco-editor/esm/vs/base/common/htmlContent.js\");\n/* harmony import */ var _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../base/common/lifecycle.js */ \"./node_modules/monaco-editor/esm/vs/base/common/lifecycle.js\");\n/* harmony import */ var _browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../browser/editorExtensions.js */ \"./node_modules/monaco-editor/esm/vs/editor/browser/editorExtensions.js\");\n/* harmony import */ var _message_browser_messageController_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../message/browser/messageController.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/message/browser/messageController.js\");\n/* harmony import */ var _nls_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../../../nls.js */ \"./node_modules/monaco-editor/esm/vs/nls.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n\n\n\n\nclass ReadOnlyMessageController extends _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_1__.Disposable {\n constructor(editor) {\n super();\n this.editor = editor;\n this._register(this.editor.onDidAttemptReadOnlyEdit(() => this._onDidAttemptReadOnlyEdit()));\n }\n _onDidAttemptReadOnlyEdit() {\n const messageController = _message_browser_messageController_js__WEBPACK_IMPORTED_MODULE_3__.MessageController.get(this.editor);\n if (messageController && this.editor.hasModel()) {\n let message = this.editor.getOptions().get(92 /* EditorOption.readOnlyMessage */);\n if (!message) {\n if (this.editor.isSimpleWidget) {\n message = new _base_common_htmlContent_js__WEBPACK_IMPORTED_MODULE_0__.MarkdownString(_nls_js__WEBPACK_IMPORTED_MODULE_4__.localize('editor.simple.readonly', \"Cannot edit in read-only input\"));\n }\n else {\n message = new _base_common_htmlContent_js__WEBPACK_IMPORTED_MODULE_0__.MarkdownString(_nls_js__WEBPACK_IMPORTED_MODULE_4__.localize('editor.readonly', \"Cannot edit in read-only editor\"));\n }\n }\n messageController.showMessage(message, this.editor.getPosition());\n }\n }\n}\nReadOnlyMessageController.ID = 'editor.contrib.readOnlyMessageController';\n(0,_browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_2__.registerEditorContribution)(ReadOnlyMessageController.ID, ReadOnlyMessageController, 2 /* EditorContributionInstantiation.BeforeFirstInteraction */);\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/contrib/readOnlyMessage/browser/contribution.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/contrib/rename/browser/rename.js":
/*!***********************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/contrib/rename/browser/rename.js ***!
\***********************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ RenameAction: () => (/* binding */ RenameAction),\n/* harmony export */ rename: () => (/* binding */ rename)\n/* harmony export */ });\n/* harmony import */ var _base_browser_ui_aria_aria_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../../base/browser/ui/aria/aria.js */ \"./node_modules/monaco-editor/esm/vs/base/browser/ui/aria/aria.js\");\n/* harmony import */ var _base_common_async_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../base/common/async.js */ \"./node_modules/monaco-editor/esm/vs/base/common/async.js\");\n/* harmony import */ var _base_common_cancellation_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../../base/common/cancellation.js */ \"./node_modules/monaco-editor/esm/vs/base/common/cancellation.js\");\n/* harmony import */ var _base_common_errors_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../../../base/common/errors.js */ \"./node_modules/monaco-editor/esm/vs/base/common/errors.js\");\n/* harmony import */ var _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../../../base/common/lifecycle.js */ \"./node_modules/monaco-editor/esm/vs/base/common/lifecycle.js\");\n/* harmony import */ var _base_common_types_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../../../../base/common/types.js */ \"./node_modules/monaco-editor/esm/vs/base/common/types.js\");\n/* harmony import */ var _base_common_uri_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../../../../base/common/uri.js */ \"./node_modules/monaco-editor/esm/vs/base/common/uri.js\");\n/* harmony import */ var _browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ../../../browser/editorExtensions.js */ \"./node_modules/monaco-editor/esm/vs/editor/browser/editorExtensions.js\");\n/* harmony import */ var _browser_services_bulkEditService_js__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ../../../browser/services/bulkEditService.js */ \"./node_modules/monaco-editor/esm/vs/editor/browser/services/bulkEditService.js\");\n/* harmony import */ var _browser_services_codeEditorService_js__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ../../../browser/services/codeEditorService.js */ \"./node_modules/monaco-editor/esm/vs/editor/browser/services/codeEditorService.js\");\n/* harmony import */ var _common_core_position_js__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! ../../../common/core/position.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/core/position.js\");\n/* harmony import */ var _common_core_range_js__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(/*! ../../../common/core/range.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/core/range.js\");\n/* harmony import */ var _common_editorContextKeys_js__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(/*! ../../../common/editorContextKeys.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/editorContextKeys.js\");\n/* harmony import */ var _common_services_languageFeatures_js__WEBPACK_IMPORTED_MODULE_13__ = __webpack_require__(/*! ../../../common/services/languageFeatures.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/services/languageFeatures.js\");\n/* harmony import */ var _common_services_textResourceConfiguration_js__WEBPACK_IMPORTED_MODULE_14__ = __webpack_require__(/*! ../../../common/services/textResourceConfiguration.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/services/textResourceConfiguration.js\");\n/* harmony import */ var _editorState_browser_editorState_js__WEBPACK_IMPORTED_MODULE_15__ = __webpack_require__(/*! ../../editorState/browser/editorState.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/editorState/browser/editorState.js\");\n/* harmony import */ var _message_browser_messageController_js__WEBPACK_IMPORTED_MODULE_16__ = __webpack_require__(/*! ../../message/browser/messageController.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/message/browser/messageController.js\");\n/* harmony import */ var _nls_js__WEBPACK_IMPORTED_MODULE_17__ = __webpack_require__(/*! ../../../../nls.js */ \"./node_modules/monaco-editor/esm/vs/nls.js\");\n/* harmony import */ var _platform_actions_common_actions_js__WEBPACK_IMPORTED_MODULE_18__ = __webpack_require__(/*! ../../../../platform/actions/common/actions.js */ \"./node_modules/monaco-editor/esm/vs/platform/actions/common/actions.js\");\n/* harmony import */ var _platform_configuration_common_configurationRegistry_js__WEBPACK_IMPORTED_MODULE_19__ = __webpack_require__(/*! ../../../../platform/configuration/common/configurationRegistry.js */ \"./node_modules/monaco-editor/esm/vs/platform/configuration/common/configurationRegistry.js\");\n/* harmony import */ var _platform_contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_20__ = __webpack_require__(/*! ../../../../platform/contextkey/common/contextkey.js */ \"./node_modules/monaco-editor/esm/vs/platform/contextkey/common/contextkey.js\");\n/* harmony import */ var _platform_instantiation_common_instantiation_js__WEBPACK_IMPORTED_MODULE_21__ = __webpack_require__(/*! ../../../../platform/instantiation/common/instantiation.js */ \"./node_modules/monaco-editor/esm/vs/platform/instantiation/common/instantiation.js\");\n/* harmony import */ var _platform_log_common_log_js__WEBPACK_IMPORTED_MODULE_22__ = __webpack_require__(/*! ../../../../platform/log/common/log.js */ \"./node_modules/monaco-editor/esm/vs/platform/log/common/log.js\");\n/* harmony import */ var _platform_notification_common_notification_js__WEBPACK_IMPORTED_MODULE_23__ = __webpack_require__(/*! ../../../../platform/notification/common/notification.js */ \"./node_modules/monaco-editor/esm/vs/platform/notification/common/notification.js\");\n/* harmony import */ var _platform_progress_common_progress_js__WEBPACK_IMPORTED_MODULE_24__ = __webpack_require__(/*! ../../../../platform/progress/common/progress.js */ \"./node_modules/monaco-editor/esm/vs/platform/progress/common/progress.js\");\n/* harmony import */ var _platform_registry_common_platform_js__WEBPACK_IMPORTED_MODULE_25__ = __webpack_require__(/*! ../../../../platform/registry/common/platform.js */ \"./node_modules/monaco-editor/esm/vs/platform/registry/common/platform.js\");\n/* harmony import */ var _platform_telemetry_common_telemetry_js__WEBPACK_IMPORTED_MODULE_26__ = __webpack_require__(/*! ../../../../platform/telemetry/common/telemetry.js */ \"./node_modules/monaco-editor/esm/vs/platform/telemetry/common/telemetry.js\");\n/* harmony import */ var _renameInputField_js__WEBPACK_IMPORTED_MODULE_27__ = __webpack_require__(/*! ./renameInputField.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/rename/browser/renameInputField.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\nvar __decorate = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\n return c > 3 && r && Object.defineProperty(target, key, r), r;\n};\nvar __param = (undefined && undefined.__param) || function (paramIndex, decorator) {\n return function (target, key) { decorator(target, key, paramIndex); }\n};\nvar RenameController_1;\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nclass RenameSkeleton {\n constructor(model, position, registry) {\n this.model = model;\n this.position = position;\n this._providerRenameIdx = 0;\n this._providers = registry.ordered(model);\n }\n hasProvider() {\n return this._providers.length > 0;\n }\n async resolveRenameLocation(token) {\n const rejects = [];\n for (this._providerRenameIdx = 0; this._providerRenameIdx < this._providers.length; this._providerRenameIdx++) {\n const provider = this._providers[this._providerRenameIdx];\n if (!provider.resolveRenameLocation) {\n break;\n }\n const res = await provider.resolveRenameLocation(this.model, this.position, token);\n if (!res) {\n continue;\n }\n if (res.rejectReason) {\n rejects.push(res.rejectReason);\n continue;\n }\n return res;\n }\n // we are here when no provider prepared a location which means we can\n // just rely on the word under cursor and start with the first provider\n this._providerRenameIdx = 0;\n const word = this.model.getWordAtPosition(this.position);\n if (!word) {\n return {\n range: _common_core_range_js__WEBPACK_IMPORTED_MODULE_11__.Range.fromPositions(this.position),\n text: '',\n rejectReason: rejects.length > 0 ? rejects.join('\\n') : undefined\n };\n }\n return {\n range: new _common_core_range_js__WEBPACK_IMPORTED_MODULE_11__.Range(this.position.lineNumber, word.startColumn, this.position.lineNumber, word.endColumn),\n text: word.word,\n rejectReason: rejects.length > 0 ? rejects.join('\\n') : undefined\n };\n }\n async provideRenameEdits(newName, token) {\n return this._provideRenameEdits(newName, this._providerRenameIdx, [], token);\n }\n async _provideRenameEdits(newName, i, rejects, token) {\n const provider = this._providers[i];\n if (!provider) {\n return {\n edits: [],\n rejectReason: rejects.join('\\n')\n };\n }\n const result = await provider.provideRenameEdits(this.model, this.position, newName, token);\n if (!result) {\n return this._provideRenameEdits(newName, i + 1, rejects.concat(_nls_js__WEBPACK_IMPORTED_MODULE_17__.localize('no result', \"No result.\")), token);\n }\n else if (result.rejectReason) {\n return this._provideRenameEdits(newName, i + 1, rejects.concat(result.rejectReason), token);\n }\n return result;\n }\n}\nasync function rename(registry, model, position, newName) {\n const skeleton = new RenameSkeleton(model, position, registry);\n const loc = await skeleton.resolveRenameLocation(_base_common_cancellation_js__WEBPACK_IMPORTED_MODULE_2__.CancellationToken.None);\n if (loc === null || loc === void 0 ? void 0 : loc.rejectReason) {\n return { edits: [], rejectReason: loc.rejectReason };\n }\n return skeleton.provideRenameEdits(newName, _base_common_cancellation_js__WEBPACK_IMPORTED_MODULE_2__.CancellationToken.None);\n}\n// --- register actions and commands\nlet RenameController = RenameController_1 = class RenameController {\n static get(editor) {\n return editor.getContribution(RenameController_1.ID);\n }\n constructor(editor, _instaService, _notificationService, _bulkEditService, _progressService, _logService, _configService, _languageFeaturesService, _telemetryService) {\n this.editor = editor;\n this._instaService = _instaService;\n this._notificationService = _notificationService;\n this._bulkEditService = _bulkEditService;\n this._progressService = _progressService;\n this._logService = _logService;\n this._configService = _configService;\n this._languageFeaturesService = _languageFeaturesService;\n this._telemetryService = _telemetryService;\n this._disposableStore = new _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_4__.DisposableStore();\n this._cts = new _base_common_cancellation_js__WEBPACK_IMPORTED_MODULE_2__.CancellationTokenSource();\n this._renameInputField = this._disposableStore.add(this._instaService.createInstance(_renameInputField_js__WEBPACK_IMPORTED_MODULE_27__.RenameInputField, this.editor, ['acceptRenameInput', 'acceptRenameInputWithPreview']));\n }\n dispose() {\n this._disposableStore.dispose();\n this._cts.dispose(true);\n }\n async run() {\n var _a, _b;\n const trace = this._logService.trace.bind(this._logService, '[rename]');\n // set up cancellation token to prevent reentrant rename, this\n // is the parent to the resolve- and rename-tokens\n this._cts.dispose(true);\n this._cts = new _base_common_cancellation_js__WEBPACK_IMPORTED_MODULE_2__.CancellationTokenSource();\n if (!this.editor.hasModel()) {\n trace('editor has no model');\n return undefined;\n }\n const position = this.editor.getPosition();\n const skeleton = new RenameSkeleton(this.editor.getModel(), position, this._languageFeaturesService.renameProvider);\n if (!skeleton.hasProvider()) {\n trace('skeleton has no provider');\n return undefined;\n }\n // part 1 - resolve rename location\n const cts1 = new _editorState_browser_editorState_js__WEBPACK_IMPORTED_MODULE_15__.EditorStateCancellationTokenSource(this.editor, 4 /* CodeEditorStateFlag.Position */ | 1 /* CodeEditorStateFlag.Value */, undefined, this._cts.token);\n let loc;\n try {\n trace('resolving rename location');\n const resolveLocationOperation = skeleton.resolveRenameLocation(cts1.token);\n this._progressService.showWhile(resolveLocationOperation, 250);\n loc = await resolveLocationOperation;\n trace('resolved rename location');\n }\n catch (e) {\n trace('resolve rename location failed', JSON.stringify(e, null, '\\t'));\n (_a = _message_browser_messageController_js__WEBPACK_IMPORTED_MODULE_16__.MessageController.get(this.editor)) === null || _a === void 0 ? void 0 : _a.showMessage(e || _nls_js__WEBPACK_IMPORTED_MODULE_17__.localize('resolveRenameLocationFailed', \"An unknown error occurred while resolving rename location\"), position);\n return undefined;\n }\n finally {\n cts1.dispose();\n }\n if (!loc) {\n trace('returning early - no loc');\n return undefined;\n }\n if (loc.rejectReason) {\n trace(`returning early - rejected with reason: ${loc.rejectReason}`, loc.rejectReason);\n (_b = _message_browser_messageController_js__WEBPACK_IMPORTED_MODULE_16__.MessageController.get(this.editor)) === null || _b === void 0 ? void 0 : _b.showMessage(loc.rejectReason, position);\n return undefined;\n }\n if (cts1.token.isCancellationRequested) {\n trace('returning early - cts1 cancelled');\n return undefined;\n }\n // part 2 - do rename at location\n const cts2 = new _editorState_browser_editorState_js__WEBPACK_IMPORTED_MODULE_15__.EditorStateCancellationTokenSource(this.editor, 4 /* CodeEditorStateFlag.Position */ | 1 /* CodeEditorStateFlag.Value */, loc.range, this._cts.token);\n const model = this.editor.getModel(); // @ulugbekna: assumes editor still has a model, otherwise, cts1 should've been cancelled\n const renameCandidatesCts = new _base_common_cancellation_js__WEBPACK_IMPORTED_MODULE_2__.CancellationTokenSource(cts2.token);\n const newSymbolNamesProviders = this._languageFeaturesService.newSymbolNamesProvider.all(model);\n // TODO@ulugbekna: providers should get timeout token (use createTimeoutCancellation(x))\n const newSymbolNameProvidersResults = newSymbolNamesProviders.map(p => p.provideNewSymbolNames(model, loc.range, renameCandidatesCts.token));\n trace(`requested new symbol names from ${newSymbolNamesProviders.length} providers`);\n const selection = this.editor.getSelection();\n let selectionStart = 0;\n let selectionEnd = loc.text.length;\n if (!_common_core_range_js__WEBPACK_IMPORTED_MODULE_11__.Range.isEmpty(selection) && !_common_core_range_js__WEBPACK_IMPORTED_MODULE_11__.Range.spansMultipleLines(selection) && _common_core_range_js__WEBPACK_IMPORTED_MODULE_11__.Range.containsRange(loc.range, selection)) {\n selectionStart = Math.max(0, selection.startColumn - loc.range.startColumn);\n selectionEnd = Math.min(loc.range.endColumn, selection.endColumn) - loc.range.startColumn;\n }\n trace('creating rename input field and awaiting its result');\n const supportPreview = this._bulkEditService.hasPreviewHandler() && this._configService.getValue(this.editor.getModel().uri, 'editor.rename.enablePreview');\n const inputFieldResult = await this._renameInputField.getInput(loc.range, loc.text, selectionStart, selectionEnd, supportPreview, newSymbolNameProvidersResults, renameCandidatesCts);\n trace('received response from rename input field');\n if (newSymbolNamesProviders.length > 0) { // @ulugbekna: we're interested only in telemetry for rename suggestions currently\n this._reportTelemetry(newSymbolNamesProviders.length, model.getLanguageId(), inputFieldResult);\n }\n // no result, only hint to focus the editor or not\n if (typeof inputFieldResult === 'boolean') {\n trace(`returning early - rename input field response - ${inputFieldResult}`);\n if (inputFieldResult) {\n this.editor.focus();\n }\n cts2.dispose();\n return undefined;\n }\n this.editor.focus();\n trace('requesting rename edits');\n const renameOperation = (0,_base_common_async_js__WEBPACK_IMPORTED_MODULE_1__.raceCancellation)(skeleton.provideRenameEdits(inputFieldResult.newName, cts2.token), cts2.token).then(async (renameResult) => {\n if (!renameResult) {\n trace('returning early - no rename edits result');\n return;\n }\n if (!this.editor.hasModel()) {\n trace('returning early - no model after rename edits are provided');\n return;\n }\n if (renameResult.rejectReason) {\n trace(`returning early - rejected with reason: ${renameResult.rejectReason}`);\n this._notificationService.info(renameResult.rejectReason);\n return;\n }\n // collapse selection to active end\n this.editor.setSelection(_common_core_range_js__WEBPACK_IMPORTED_MODULE_11__.Range.fromPositions(this.editor.getSelection().getPosition()));\n trace('applying edits');\n this._bulkEditService.apply(renameResult, {\n editor: this.editor,\n showPreview: inputFieldResult.wantsPreview,\n label: _nls_js__WEBPACK_IMPORTED_MODULE_17__.localize('label', \"Renaming '{0}' to '{1}'\", loc === null || loc === void 0 ? void 0 : loc.text, inputFieldResult.newName),\n code: 'undoredo.rename',\n quotableLabel: _nls_js__WEBPACK_IMPORTED_MODULE_17__.localize('quotableLabel', \"Renaming {0} to {1}\", loc === null || loc === void 0 ? void 0 : loc.text, inputFieldResult.newName),\n respectAutoSaveConfig: true\n }).then(result => {\n trace('edits applied');\n if (result.ariaSummary) {\n (0,_base_browser_ui_aria_aria_js__WEBPACK_IMPORTED_MODULE_0__.alert)(_nls_js__WEBPACK_IMPORTED_MODULE_17__.localize('aria', \"Successfully renamed '{0}' to '{1}'. Summary: {2}\", loc.text, inputFieldResult.newName, result.ariaSummary));\n }\n }).catch(err => {\n trace(`error when applying edits ${JSON.stringify(err, null, '\\t')}`);\n this._notificationService.error(_nls_js__WEBPACK_IMPORTED_MODULE_17__.localize('rename.failedApply', \"Rename failed to apply edits\"));\n this._logService.error(err);\n });\n }, err => {\n trace('error when providing rename edits', JSON.stringify(err, null, '\\t'));\n this._notificationService.error(_nls_js__WEBPACK_IMPORTED_MODULE_17__.localize('rename.failed', \"Rename failed to compute edits\"));\n this._logService.error(err);\n }).finally(() => {\n cts2.dispose();\n });\n trace('returning rename operation');\n this._progressService.showWhile(renameOperation, 250);\n return renameOperation;\n }\n acceptRenameInput(wantsPreview) {\n this._renameInputField.acceptInput(wantsPreview);\n }\n cancelRenameInput() {\n this._renameInputField.cancelInput(true, 'cancelRenameInput command');\n }\n focusNextRenameSuggestion() {\n this._renameInputField.focusNextRenameSuggestion();\n }\n focusPreviousRenameSuggestion() {\n this._renameInputField.focusPreviousRenameSuggestion();\n }\n _reportTelemetry(nRenameSuggestionProviders, languageId, inputFieldResult) {\n const value = typeof inputFieldResult === 'boolean'\n ? {\n kind: 'cancelled',\n languageId,\n nRenameSuggestionProviders,\n }\n : {\n kind: 'accepted',\n languageId,\n nRenameSuggestionProviders,\n source: inputFieldResult.source,\n nRenameSuggestions: inputFieldResult.nRenameSuggestions,\n wantsPreview: inputFieldResult.wantsPreview,\n };\n this._telemetryService.publicLog2('renameInvokedEvent', value);\n }\n};\nRenameController.ID = 'editor.contrib.renameController';\nRenameController = RenameController_1 = __decorate([\n __param(1, _platform_instantiation_common_instantiation_js__WEBPACK_IMPORTED_MODULE_21__.IInstantiationService),\n __param(2, _platform_notification_common_notification_js__WEBPACK_IMPORTED_MODULE_23__.INotificationService),\n __param(3, _browser_services_bulkEditService_js__WEBPACK_IMPORTED_MODULE_8__.IBulkEditService),\n __param(4, _platform_progress_common_progress_js__WEBPACK_IMPORTED_MODULE_24__.IEditorProgressService),\n __param(5, _platform_log_common_log_js__WEBPACK_IMPORTED_MODULE_22__.ILogService),\n __param(6, _common_services_textResourceConfiguration_js__WEBPACK_IMPORTED_MODULE_14__.ITextResourceConfigurationService),\n __param(7, _common_services_languageFeatures_js__WEBPACK_IMPORTED_MODULE_13__.ILanguageFeaturesService),\n __param(8, _platform_telemetry_common_telemetry_js__WEBPACK_IMPORTED_MODULE_26__.ITelemetryService)\n], RenameController);\n// ---- action implementation\nclass RenameAction extends _browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_7__.EditorAction {\n constructor() {\n super({\n id: 'editor.action.rename',\n label: _nls_js__WEBPACK_IMPORTED_MODULE_17__.localize('rename.label', \"Rename Symbol\"),\n alias: 'Rename Symbol',\n precondition: _platform_contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_20__.ContextKeyExpr.and(_common_editorContextKeys_js__WEBPACK_IMPORTED_MODULE_12__.EditorContextKeys.writable, _common_editorContextKeys_js__WEBPACK_IMPORTED_MODULE_12__.EditorContextKeys.hasRenameProvider),\n kbOpts: {\n kbExpr: _common_editorContextKeys_js__WEBPACK_IMPORTED_MODULE_12__.EditorContextKeys.editorTextFocus,\n primary: 60 /* KeyCode.F2 */,\n weight: 100 /* KeybindingWeight.EditorContrib */\n },\n contextMenuOpts: {\n group: '1_modification',\n order: 1.1\n }\n });\n }\n runCommand(accessor, args) {\n const editorService = accessor.get(_browser_services_codeEditorService_js__WEBPACK_IMPORTED_MODULE_9__.ICodeEditorService);\n const [uri, pos] = Array.isArray(args) && args || [undefined, undefined];\n if (_base_common_uri_js__WEBPACK_IMPORTED_MODULE_6__.URI.isUri(uri) && _common_core_position_js__WEBPACK_IMPORTED_MODULE_10__.Position.isIPosition(pos)) {\n return editorService.openCodeEditor({ resource: uri }, editorService.getActiveCodeEditor()).then(editor => {\n if (!editor) {\n return;\n }\n editor.setPosition(pos);\n editor.invokeWithinContext(accessor => {\n this.reportTelemetry(accessor, editor);\n return this.run(accessor, editor);\n });\n }, _base_common_errors_js__WEBPACK_IMPORTED_MODULE_3__.onUnexpectedError);\n }\n return super.runCommand(accessor, args);\n }\n run(accessor, editor) {\n const logService = accessor.get(_platform_log_common_log_js__WEBPACK_IMPORTED_MODULE_22__.ILogService);\n const controller = RenameController.get(editor);\n if (controller) {\n logService.trace('[RenameAction] got controller, running...');\n return controller.run();\n }\n logService.trace('[RenameAction] returning early - controller missing');\n return Promise.resolve();\n }\n}\n(0,_browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_7__.registerEditorContribution)(RenameController.ID, RenameController, 4 /* EditorContributionInstantiation.Lazy */);\n(0,_browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_7__.registerEditorAction)(RenameAction);\nconst RenameCommand = _browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_7__.EditorCommand.bindToContribution(RenameController.get);\n(0,_browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_7__.registerEditorCommand)(new RenameCommand({\n id: 'acceptRenameInput',\n precondition: _renameInputField_js__WEBPACK_IMPORTED_MODULE_27__.CONTEXT_RENAME_INPUT_VISIBLE,\n handler: x => x.acceptRenameInput(false),\n kbOpts: {\n weight: 100 /* KeybindingWeight.EditorContrib */ + 99,\n kbExpr: _platform_contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_20__.ContextKeyExpr.and(_common_editorContextKeys_js__WEBPACK_IMPORTED_MODULE_12__.EditorContextKeys.focus, _platform_contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_20__.ContextKeyExpr.not('isComposing')),\n primary: 3 /* KeyCode.Enter */\n }\n}));\n(0,_browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_7__.registerEditorCommand)(new RenameCommand({\n id: 'acceptRenameInputWithPreview',\n precondition: _platform_contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_20__.ContextKeyExpr.and(_renameInputField_js__WEBPACK_IMPORTED_MODULE_27__.CONTEXT_RENAME_INPUT_VISIBLE, _platform_contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_20__.ContextKeyExpr.has('config.editor.rename.enablePreview')),\n handler: x => x.acceptRenameInput(true),\n kbOpts: {\n weight: 100 /* KeybindingWeight.EditorContrib */ + 99,\n kbExpr: _platform_contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_20__.ContextKeyExpr.and(_common_editorContextKeys_js__WEBPACK_IMPORTED_MODULE_12__.EditorContextKeys.focus, _platform_contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_20__.ContextKeyExpr.not('isComposing')),\n primary: 1024 /* KeyMod.Shift */ + 3 /* KeyCode.Enter */\n }\n}));\n(0,_browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_7__.registerEditorCommand)(new RenameCommand({\n id: 'cancelRenameInput',\n precondition: _renameInputField_js__WEBPACK_IMPORTED_MODULE_27__.CONTEXT_RENAME_INPUT_VISIBLE,\n handler: x => x.cancelRenameInput(),\n kbOpts: {\n weight: 100 /* KeybindingWeight.EditorContrib */ + 99,\n kbExpr: _common_editorContextKeys_js__WEBPACK_IMPORTED_MODULE_12__.EditorContextKeys.focus,\n primary: 9 /* KeyCode.Escape */,\n secondary: [1024 /* KeyMod.Shift */ | 9 /* KeyCode.Escape */]\n }\n}));\n(0,_platform_actions_common_actions_js__WEBPACK_IMPORTED_MODULE_18__.registerAction2)(class FocusNextRenameSuggestion extends _platform_actions_common_actions_js__WEBPACK_IMPORTED_MODULE_18__.Action2 {\n constructor() {\n super({\n id: 'focusNextRenameSuggestion',\n title: {\n ..._nls_js__WEBPACK_IMPORTED_MODULE_17__.localize2('focusNextRenameSuggestion', \"Focus Next Rename Suggestion\"),\n },\n precondition: _renameInputField_js__WEBPACK_IMPORTED_MODULE_27__.CONTEXT_RENAME_INPUT_VISIBLE,\n keybinding: [\n {\n primary: 2 /* KeyCode.Tab */,\n secondary: [18 /* KeyCode.DownArrow */],\n weight: 100 /* KeybindingWeight.EditorContrib */ + 99,\n }\n ]\n });\n }\n run(accessor) {\n const currentEditor = accessor.get(_browser_services_codeEditorService_js__WEBPACK_IMPORTED_MODULE_9__.ICodeEditorService).getFocusedCodeEditor();\n if (!currentEditor) {\n return;\n }\n const controller = RenameController.get(currentEditor);\n if (!controller) {\n return;\n }\n controller.focusNextRenameSuggestion();\n }\n});\n(0,_platform_actions_common_actions_js__WEBPACK_IMPORTED_MODULE_18__.registerAction2)(class FocusPreviousRenameSuggestion extends _platform_actions_common_actions_js__WEBPACK_IMPORTED_MODULE_18__.Action2 {\n constructor() {\n super({\n id: 'focusPreviousRenameSuggestion',\n title: {\n ..._nls_js__WEBPACK_IMPORTED_MODULE_17__.localize2('focusPreviousRenameSuggestion', \"Focus Previous Rename Suggestion\"),\n },\n precondition: _renameInputField_js__WEBPACK_IMPORTED_MODULE_27__.CONTEXT_RENAME_INPUT_VISIBLE,\n keybinding: [\n {\n when: _renameInputField_js__WEBPACK_IMPORTED_MODULE_27__.CONTEXT_RENAME_INPUT_FOCUSED,\n primary: 2 /* KeyCode.Tab */ | 4 /* KeyCode.Shift */,\n weight: 100 /* KeybindingWeight.EditorContrib */ + 99,\n },\n {\n when: _renameInputField_js__WEBPACK_IMPORTED_MODULE_27__.CONTEXT_RENAME_INPUT_FOCUSED.toNegated(),\n primary: 1024 /* KeyMod.Shift */ | 2 /* KeyCode.Tab */,\n secondary: [16 /* KeyCode.UpArrow */],\n weight: 100 /* KeybindingWeight.EditorContrib */ + 99,\n }\n ]\n });\n }\n run(accessor) {\n const currentEditor = accessor.get(_browser_services_codeEditorService_js__WEBPACK_IMPORTED_MODULE_9__.ICodeEditorService).getFocusedCodeEditor();\n if (!currentEditor) {\n return;\n }\n const controller = RenameController.get(currentEditor);\n if (!controller) {\n return;\n }\n controller.focusPreviousRenameSuggestion();\n }\n});\n// ---- api bridge command\n(0,_browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_7__.registerModelAndPositionCommand)('_executeDocumentRenameProvider', function (accessor, model, position, ...args) {\n const [newName] = args;\n (0,_base_common_types_js__WEBPACK_IMPORTED_MODULE_5__.assertType)(typeof newName === 'string');\n const { renameProvider } = accessor.get(_common_services_languageFeatures_js__WEBPACK_IMPORTED_MODULE_13__.ILanguageFeaturesService);\n return rename(renameProvider, model, position, newName);\n});\n(0,_browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_7__.registerModelAndPositionCommand)('_executePrepareRename', async function (accessor, model, position) {\n const { renameProvider } = accessor.get(_common_services_languageFeatures_js__WEBPACK_IMPORTED_MODULE_13__.ILanguageFeaturesService);\n const skeleton = new RenameSkeleton(model, position, renameProvider);\n const loc = await skeleton.resolveRenameLocation(_base_common_cancellation_js__WEBPACK_IMPORTED_MODULE_2__.CancellationToken.None);\n if (loc === null || loc === void 0 ? void 0 : loc.rejectReason) {\n throw new Error(loc.rejectReason);\n }\n return loc;\n});\n//todo@jrieken use editor options world\n_platform_registry_common_platform_js__WEBPACK_IMPORTED_MODULE_25__.Registry.as(_platform_configuration_common_configurationRegistry_js__WEBPACK_IMPORTED_MODULE_19__.Extensions.Configuration).registerConfiguration({\n id: 'editor',\n properties: {\n 'editor.rename.enablePreview': {\n scope: 5 /* ConfigurationScope.LANGUAGE_OVERRIDABLE */,\n description: _nls_js__WEBPACK_IMPORTED_MODULE_17__.localize('enablePreview', \"Enable/disable the ability to preview changes before renaming\"),\n default: true,\n type: 'boolean'\n }\n }\n});\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/contrib/rename/browser/rename.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/contrib/rename/browser/renameInputField.js":
/*!*********************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/contrib/rename/browser/renameInputField.js ***!
\*********************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ CONTEXT_RENAME_INPUT_FOCUSED: () => (/* binding */ CONTEXT_RENAME_INPUT_FOCUSED),\n/* harmony export */ CONTEXT_RENAME_INPUT_VISIBLE: () => (/* binding */ CONTEXT_RENAME_INPUT_VISIBLE),\n/* harmony export */ RenameInputField: () => (/* binding */ RenameInputField)\n/* harmony export */ });\n/* harmony import */ var _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../../base/browser/dom.js */ \"./node_modules/monaco-editor/esm/vs/base/browser/dom.js\");\n/* harmony import */ var _base_browser_ui_aria_aria_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../base/browser/ui/aria/aria.js */ \"./node_modules/monaco-editor/esm/vs/base/browser/ui/aria/aria.js\");\n/* harmony import */ var _base_browser_ui_iconLabel_iconLabels_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../../base/browser/ui/iconLabel/iconLabels.js */ \"./node_modules/monaco-editor/esm/vs/base/browser/ui/iconLabel/iconLabels.js\");\n/* harmony import */ var _base_browser_ui_list_listWidget_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../../../base/browser/ui/list/listWidget.js */ \"./node_modules/monaco-editor/esm/vs/base/browser/ui/list/listWidget.js\");\n/* harmony import */ var _base_common_arrays_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../../../base/common/arrays.js */ \"./node_modules/monaco-editor/esm/vs/base/common/arrays.js\");\n/* harmony import */ var _base_common_async_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../../../../base/common/async.js */ \"./node_modules/monaco-editor/esm/vs/base/common/async.js\");\n/* harmony import */ var _base_common_codicons_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../../../../base/common/codicons.js */ \"./node_modules/monaco-editor/esm/vs/base/common/codicons.js\");\n/* harmony import */ var _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ../../../../base/common/lifecycle.js */ \"./node_modules/monaco-editor/esm/vs/base/common/lifecycle.js\");\n/* harmony import */ var _base_common_types_js__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ../../../../base/common/types.js */ \"./node_modules/monaco-editor/esm/vs/base/common/types.js\");\n/* harmony import */ var _renameInputField_css__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ./renameInputField.css */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/rename/browser/renameInputField.css\");\n/* harmony import */ var _common_core_position_js__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! ../../../common/core/position.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/core/position.js\");\n/* harmony import */ var _common_languages_js__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(/*! ../../../common/languages.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/languages.js\");\n/* harmony import */ var _nls_js__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(/*! ../../../../nls.js */ \"./node_modules/monaco-editor/esm/vs/nls.js\");\n/* harmony import */ var _platform_contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_13__ = __webpack_require__(/*! ../../../../platform/contextkey/common/contextkey.js */ \"./node_modules/monaco-editor/esm/vs/platform/contextkey/common/contextkey.js\");\n/* harmony import */ var _platform_keybinding_common_keybinding_js__WEBPACK_IMPORTED_MODULE_14__ = __webpack_require__(/*! ../../../../platform/keybinding/common/keybinding.js */ \"./node_modules/monaco-editor/esm/vs/platform/keybinding/common/keybinding.js\");\n/* harmony import */ var _platform_log_common_log_js__WEBPACK_IMPORTED_MODULE_15__ = __webpack_require__(/*! ../../../../platform/log/common/log.js */ \"./node_modules/monaco-editor/esm/vs/platform/log/common/log.js\");\n/* harmony import */ var _platform_theme_browser_defaultStyles_js__WEBPACK_IMPORTED_MODULE_16__ = __webpack_require__(/*! ../../../../platform/theme/browser/defaultStyles.js */ \"./node_modules/monaco-editor/esm/vs/platform/theme/browser/defaultStyles.js\");\n/* harmony import */ var _platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_17__ = __webpack_require__(/*! ../../../../platform/theme/common/colorRegistry.js */ \"./node_modules/monaco-editor/esm/vs/platform/theme/common/colorRegistry.js\");\n/* harmony import */ var _platform_theme_common_themeService_js__WEBPACK_IMPORTED_MODULE_18__ = __webpack_require__(/*! ../../../../platform/theme/common/themeService.js */ \"./node_modules/monaco-editor/esm/vs/platform/theme/common/themeService.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\nvar __decorate = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\n return c > 3 && r && Object.defineProperty(target, key, r), r;\n};\nvar __param = (undefined && undefined.__param) || function (paramIndex, decorator) {\n return function (target, key) { decorator(target, key, paramIndex); }\n};\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n/** for debugging */\nconst _sticky = false;\nconst CONTEXT_RENAME_INPUT_VISIBLE = new _platform_contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_13__.RawContextKey('renameInputVisible', false, (0,_nls_js__WEBPACK_IMPORTED_MODULE_12__.localize)('renameInputVisible', \"Whether the rename input widget is visible\"));\nconst CONTEXT_RENAME_INPUT_FOCUSED = new _platform_contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_13__.RawContextKey('renameInputFocused', false, (0,_nls_js__WEBPACK_IMPORTED_MODULE_12__.localize)('renameInputFocused', \"Whether the rename input widget is focused\"));\nlet RenameInputField = class RenameInputField {\n constructor(_editor, _acceptKeybindings, _themeService, _keybindingService, contextKeyService, _logService) {\n this._editor = _editor;\n this._acceptKeybindings = _acceptKeybindings;\n this._themeService = _themeService;\n this._keybindingService = _keybindingService;\n this._logService = _logService;\n this._disposables = new _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_7__.DisposableStore();\n this.allowEditorOverflow = true;\n this._visibleContextKey = CONTEXT_RENAME_INPUT_VISIBLE.bindTo(contextKeyService);\n this._focusedContextKey = CONTEXT_RENAME_INPUT_FOCUSED.bindTo(contextKeyService);\n this._editor.addContentWidget(this);\n this._disposables.add(this._editor.onDidChangeConfiguration(e => {\n if (e.hasChanged(50 /* EditorOption.fontInfo */)) {\n this._updateFont();\n }\n }));\n this._disposables.add(_themeService.onDidColorThemeChange(this._updateStyles, this));\n }\n dispose() {\n this._disposables.dispose();\n this._editor.removeContentWidget(this);\n }\n getId() {\n return '__renameInputWidget';\n }\n getDomNode() {\n if (!this._domNode) {\n this._domNode = document.createElement('div');\n this._domNode.className = 'monaco-editor rename-box';\n this._input = document.createElement('input');\n this._input.className = 'rename-input';\n this._input.type = 'text';\n this._input.setAttribute('aria-label', (0,_nls_js__WEBPACK_IMPORTED_MODULE_12__.localize)('renameAriaLabel', \"Rename input. Type new name and press Enter to commit.\"));\n this._disposables.add((0,_base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.addDisposableListener)(this._input, 'focus', () => { this._focusedContextKey.set(true); }));\n this._disposables.add((0,_base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.addDisposableListener)(this._input, 'blur', () => { this._focusedContextKey.reset(); }));\n this._domNode.appendChild(this._input);\n this._candidatesView = this._disposables.add(new CandidatesView(this._domNode, {\n fontInfo: this._editor.getOption(50 /* EditorOption.fontInfo */),\n onSelectionChange: () => this.acceptInput(false) // we don't allow preview with mouse click for now\n }));\n this._label = document.createElement('div');\n this._label.className = 'rename-label';\n this._domNode.appendChild(this._label);\n this._updateFont();\n this._updateStyles(this._themeService.getColorTheme());\n }\n return this._domNode;\n }\n _updateStyles(theme) {\n var _a, _b, _c, _d;\n if (!this._input || !this._domNode) {\n return;\n }\n const widgetShadowColor = theme.getColor(_platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_17__.widgetShadow);\n const widgetBorderColor = theme.getColor(_platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_17__.widgetBorder);\n this._domNode.style.backgroundColor = String((_a = theme.getColor(_platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_17__.editorWidgetBackground)) !== null && _a !== void 0 ? _a : '');\n this._domNode.style.boxShadow = widgetShadowColor ? ` 0 0 8px 2px ${widgetShadowColor}` : '';\n this._domNode.style.border = widgetBorderColor ? `1px solid ${widgetBorderColor}` : '';\n this._domNode.style.color = String((_b = theme.getColor(_platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_17__.inputForeground)) !== null && _b !== void 0 ? _b : '');\n this._input.style.backgroundColor = String((_c = theme.getColor(_platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_17__.inputBackground)) !== null && _c !== void 0 ? _c : '');\n // this._input.style.color = String(theme.getColor(inputForeground) ?? '');\n const border = theme.getColor(_platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_17__.inputBorder);\n this._input.style.borderWidth = border ? '1px' : '0px';\n this._input.style.borderStyle = border ? 'solid' : 'none';\n this._input.style.borderColor = (_d = border === null || border === void 0 ? void 0 : border.toString()) !== null && _d !== void 0 ? _d : 'none';\n }\n _updateFont() {\n if (!this._input || !this._label || !this._candidatesView) {\n return;\n }\n const fontInfo = this._editor.getOption(50 /* EditorOption.fontInfo */);\n this._input.style.fontFamily = fontInfo.fontFamily;\n this._input.style.fontWeight = fontInfo.fontWeight;\n this._input.style.fontSize = `${fontInfo.fontSize}px`;\n this._candidatesView.updateFont(fontInfo);\n this._label.style.fontSize = `${this._computeLabelFontSize(fontInfo.fontSize)}px`;\n }\n _computeLabelFontSize(editorFontSize) {\n return editorFontSize * 0.8;\n }\n getPosition() {\n if (!this._visible) {\n return null;\n }\n if (!this._editor.hasModel() || // @ulugbekna: shouldn't happen\n !this._editor.getDomNode() // @ulugbekna: can happen during tests based on suggestWidget's similar predicate check\n ) {\n return null;\n }\n const bodyBox = (0,_base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.getClientArea)(this.getDomNode().ownerDocument.body);\n const editorBox = (0,_base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.getDomNodePagePosition)(this._editor.getDomNode());\n const cursorBoxTop = this._getTopForPosition();\n this._nPxAvailableAbove = cursorBoxTop + editorBox.top;\n this._nPxAvailableBelow = bodyBox.height - this._nPxAvailableAbove;\n const lineHeight = this._editor.getOption(67 /* EditorOption.lineHeight */);\n const { totalHeight: candidateViewHeight } = CandidateView.getLayoutInfo({ lineHeight });\n const positionPreference = this._nPxAvailableBelow > candidateViewHeight * 6 /* approximate # of candidates to fit in (inclusive of rename input box & rename label) */\n ? [2 /* ContentWidgetPositionPreference.BELOW */, 1 /* ContentWidgetPositionPreference.ABOVE */]\n : [1 /* ContentWidgetPositionPreference.ABOVE */, 2 /* ContentWidgetPositionPreference.BELOW */];\n return {\n position: this._position,\n preference: positionPreference,\n };\n }\n beforeRender() {\n var _a, _b;\n const [accept, preview] = this._acceptKeybindings;\n this._label.innerText = (0,_nls_js__WEBPACK_IMPORTED_MODULE_12__.localize)({ key: 'label', comment: ['placeholders are keybindings, e.g \"F2 to Rename, Shift+F2 to Preview\"'] }, \"{0} to Rename, {1} to Preview\", (_a = this._keybindingService.lookupKeybinding(accept)) === null || _a === void 0 ? void 0 : _a.getLabel(), (_b = this._keybindingService.lookupKeybinding(preview)) === null || _b === void 0 ? void 0 : _b.getLabel());\n this._domNode.style.minWidth = `200px`; // to prevent from widening when candidates come in\n return null;\n }\n afterRender(position) {\n this._trace('invoking afterRender, position: ', position ? 'not null' : 'null');\n if (position === null) {\n // cancel rename when input widget isn't rendered anymore\n this.cancelInput(true, 'afterRender (because position is null)');\n return;\n }\n if (!this._editor.hasModel() || // shouldn't happen\n !this._editor.getDomNode() // can happen during tests based on suggestWidget's similar predicate check\n ) {\n return;\n }\n (0,_base_common_types_js__WEBPACK_IMPORTED_MODULE_8__.assertType)(this._candidatesView);\n (0,_base_common_types_js__WEBPACK_IMPORTED_MODULE_8__.assertType)(this._nPxAvailableAbove !== undefined);\n (0,_base_common_types_js__WEBPACK_IMPORTED_MODULE_8__.assertType)(this._nPxAvailableBelow !== undefined);\n const inputBoxHeight = (0,_base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.getTotalHeight)(this._input);\n const labelHeight = (0,_base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.getTotalHeight)(this._label);\n let totalHeightAvailable;\n if (position === 2 /* ContentWidgetPositionPreference.BELOW */) {\n totalHeightAvailable = this._nPxAvailableBelow;\n }\n else {\n totalHeightAvailable = this._nPxAvailableAbove;\n }\n this._candidatesView.layout({\n height: totalHeightAvailable - labelHeight - inputBoxHeight,\n width: (0,_base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.getTotalWidth)(this._input),\n });\n }\n acceptInput(wantsPreview) {\n var _a;\n this._trace(`invoking acceptInput`);\n (_a = this._currentAcceptInput) === null || _a === void 0 ? void 0 : _a.call(this, wantsPreview);\n }\n cancelInput(focusEditor, caller) {\n var _a;\n this._trace(`invoking cancelInput, caller: ${caller}, _currentCancelInput: ${this._currentAcceptInput ? 'not undefined' : 'undefined'}`);\n (_a = this._currentCancelInput) === null || _a === void 0 ? void 0 : _a.call(this, focusEditor);\n }\n focusNextRenameSuggestion() {\n var _a;\n (_a = this._candidatesView) === null || _a === void 0 ? void 0 : _a.focusNext();\n }\n focusPreviousRenameSuggestion() {\n var _a;\n if (!((_a = this._candidatesView) === null || _a === void 0 ? void 0 : _a.focusPrevious())) {\n this._input.focus();\n }\n }\n /**\n * @returns a `boolean` standing for `shouldFocusEditor`, if user didn't pick a new name, or a {@link RenameInputFieldResult}\n */\n getInput(where, value, selectionStart, selectionEnd, supportPreview, candidates, cts) {\n this._domNode.classList.toggle('preview', supportPreview);\n this._position = new _common_core_position_js__WEBPACK_IMPORTED_MODULE_10__.Position(where.startLineNumber, where.startColumn);\n this._input.value = value;\n this._input.setAttribute('selectionStart', selectionStart.toString());\n this._input.setAttribute('selectionEnd', selectionEnd.toString());\n this._input.size = Math.max((where.endColumn - where.startColumn) * 1.1, 20); // determines width\n const disposeOnDone = new _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_7__.DisposableStore();\n disposeOnDone.add((0,_base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_7__.toDisposable)(() => cts.dispose(true))); // @ulugbekna: this may result in `this.cancelInput` being called twice, but it should be safe since we set it to undefined after 1st call\n this._updateRenameCandidates(candidates, value, cts.token);\n return new Promise(resolve => {\n this._currentCancelInput = (focusEditor) => {\n var _a;\n this._trace('invoking _currentCancelInput');\n this._currentAcceptInput = undefined;\n this._currentCancelInput = undefined;\n (_a = this._candidatesView) === null || _a === void 0 ? void 0 : _a.clearCandidates();\n resolve(focusEditor);\n return true;\n };\n this._currentAcceptInput = (wantsPreview) => {\n this._trace('invoking _currentAcceptInput');\n (0,_base_common_types_js__WEBPACK_IMPORTED_MODULE_8__.assertType)(this._input !== undefined);\n (0,_base_common_types_js__WEBPACK_IMPORTED_MODULE_8__.assertType)(this._candidatesView !== undefined);\n const nRenameSuggestions = this._candidatesView.nCandidates;\n let newName;\n let source;\n const focusedCandidate = this._candidatesView.focusedCandidate;\n if (focusedCandidate !== undefined) {\n this._trace('using new name from renameSuggestion');\n newName = focusedCandidate;\n source = 'renameSuggestion';\n }\n else {\n this._trace('using new name from inputField');\n newName = this._input.value;\n source = 'inputField';\n }\n if (newName === value || newName.trim().length === 0 /* is just whitespace */) {\n this.cancelInput(true, '_currentAcceptInput (because newName === value || newName.trim().length === 0)');\n return;\n }\n this._currentAcceptInput = undefined;\n this._currentCancelInput = undefined;\n this._candidatesView.clearCandidates();\n resolve({\n newName,\n wantsPreview: supportPreview && wantsPreview,\n source,\n nRenameSuggestions,\n });\n };\n disposeOnDone.add(cts.token.onCancellationRequested(() => this.cancelInput(true, 'cts.token.onCancellationRequested')));\n if (!_sticky) {\n disposeOnDone.add(this._editor.onDidBlurEditorWidget(() => { var _a; return this.cancelInput(!((_a = this._domNode) === null || _a === void 0 ? void 0 : _a.ownerDocument.hasFocus()), 'editor.onDidBlurEditorWidget'); }));\n }\n this._show();\n }).finally(() => {\n disposeOnDone.dispose();\n this._hide();\n });\n }\n _show() {\n this._trace('invoking _show');\n this._editor.revealLineInCenterIfOutsideViewport(this._position.lineNumber, 0 /* ScrollType.Smooth */);\n this._visible = true;\n this._visibleContextKey.set(true);\n this._editor.layoutContentWidget(this);\n setTimeout(() => {\n this._input.focus();\n this._input.setSelectionRange(parseInt(this._input.getAttribute('selectionStart')), parseInt(this._input.getAttribute('selectionEnd')));\n }, 100);\n }\n async _updateRenameCandidates(candidates, currentName, token) {\n const trace = (...args) => this._trace('_updateRenameCandidates', ...args);\n trace('start');\n const namesListResults = await (0,_base_common_async_js__WEBPACK_IMPORTED_MODULE_5__.raceCancellation)(Promise.allSettled(candidates), token);\n if (namesListResults === undefined) {\n trace('returning early - received updateRenameCandidates results - undefined');\n return;\n }\n const newNames = namesListResults.flatMap(namesListResult => namesListResult.status === 'fulfilled' && (0,_base_common_types_js__WEBPACK_IMPORTED_MODULE_8__.isDefined)(namesListResult.value)\n ? namesListResult.value\n : []);\n trace(`received updateRenameCandidates results - total (unfiltered) ${newNames.length} candidates.`);\n // deduplicate and filter out the current value\n const distinctNames = _base_common_arrays_js__WEBPACK_IMPORTED_MODULE_4__.distinct(newNames, v => v.newSymbolName);\n trace(`distinct candidates - ${distinctNames.length} candidates.`);\n const validDistinctNames = distinctNames.filter(({ newSymbolName }) => { var _a; return newSymbolName.trim().length > 0 && newSymbolName !== ((_a = this._input) === null || _a === void 0 ? void 0 : _a.value) && newSymbolName !== currentName; });\n trace(`valid distinct candidates - ${newNames.length} candidates.`);\n if (validDistinctNames.length < 1) {\n trace('returning early - no valid distinct candidates');\n return;\n }\n // show the candidates\n trace('setting candidates');\n this._candidatesView.setCandidates(validDistinctNames);\n // ask editor to re-layout given that the widget is now of a different size after rendering rename candidates\n trace('asking editor to re-layout');\n this._editor.layoutContentWidget(this);\n }\n _hide() {\n this._trace('invoked _hide');\n this._visible = false;\n this._visibleContextKey.reset();\n this._editor.layoutContentWidget(this);\n }\n _getTopForPosition() {\n const visibleRanges = this._editor.getVisibleRanges();\n let firstLineInViewport;\n if (visibleRanges.length > 0) {\n firstLineInViewport = visibleRanges[0].startLineNumber;\n }\n else {\n this._logService.warn('RenameInputField#_getTopForPosition: this should not happen - visibleRanges is empty');\n firstLineInViewport = Math.max(1, this._position.lineNumber - 5); // @ulugbekna: fallback to current line minus 5\n }\n return this._editor.getTopForLineNumber(this._position.lineNumber) - this._editor.getTopForLineNumber(firstLineInViewport);\n }\n _trace(...args) {\n this._logService.trace('RenameInputField', ...args);\n }\n};\nRenameInputField = __decorate([\n __param(2, _platform_theme_common_themeService_js__WEBPACK_IMPORTED_MODULE_18__.IThemeService),\n __param(3, _platform_keybinding_common_keybinding_js__WEBPACK_IMPORTED_MODULE_14__.IKeybindingService),\n __param(4, _platform_contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_13__.IContextKeyService),\n __param(5, _platform_log_common_log_js__WEBPACK_IMPORTED_MODULE_15__.ILogService)\n], RenameInputField);\n\nclass CandidatesView {\n constructor(parent, opts) {\n this._disposables = new _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_7__.DisposableStore();\n this._availableHeight = 0;\n this._minimumWidth = 0;\n this._lineHeight = opts.fontInfo.lineHeight;\n this._typicalHalfwidthCharacterWidth = opts.fontInfo.typicalHalfwidthCharacterWidth;\n this._listContainer = document.createElement('div');\n this._listContainer.style.fontFamily = opts.fontInfo.fontFamily;\n this._listContainer.style.fontWeight = opts.fontInfo.fontWeight;\n this._listContainer.style.fontSize = `${opts.fontInfo.fontSize}px`;\n parent.appendChild(this._listContainer);\n const that = this;\n const virtualDelegate = new class {\n getTemplateId(element) {\n return 'candidate';\n }\n getHeight(element) {\n return that._candidateViewHeight;\n }\n };\n const renderer = new class {\n constructor() {\n this.templateId = 'candidate';\n }\n renderTemplate(container) {\n return new CandidateView(container, { lineHeight: that._lineHeight });\n }\n renderElement(candidate, index, templateData) {\n templateData.model = candidate;\n }\n disposeTemplate(templateData) {\n templateData.dispose();\n }\n };\n this._listWidget = new _base_browser_ui_list_listWidget_js__WEBPACK_IMPORTED_MODULE_3__.List('NewSymbolNameCandidates', this._listContainer, virtualDelegate, [renderer], {\n keyboardSupport: false, // @ulugbekna: because we handle keyboard events through proper commands & keybinding service, see `rename.ts`\n mouseSupport: true,\n multipleSelectionSupport: false,\n });\n this._disposables.add(this._listWidget.onDidChangeSelection(e => {\n if (e.elements.length > 0) {\n opts.onSelectionChange();\n }\n }));\n this._disposables.add(this._listWidget.onDidBlur(e => {\n this._listWidget.setFocus([]);\n }));\n this._listWidget.style(_platform_theme_browser_defaultStyles_js__WEBPACK_IMPORTED_MODULE_16__.defaultListStyles);\n }\n dispose() {\n this._listWidget.dispose();\n this._disposables.dispose();\n }\n // height - max height allowed by parent element\n layout({ height, width }) {\n this._availableHeight = height;\n this._minimumWidth = width;\n }\n setCandidates(candidates) {\n // insert candidates into list widget\n this._listWidget.splice(0, 0, candidates);\n // adjust list widget layout\n const height = this._pickListHeight(candidates.length);\n const width = this._pickListWidth(candidates);\n this._listWidget.layout(height, width);\n // adjust list container layout\n this._listContainer.style.height = `${height}px`;\n this._listContainer.style.width = `${width}px`;\n _base_browser_ui_aria_aria_js__WEBPACK_IMPORTED_MODULE_1__.status((0,_nls_js__WEBPACK_IMPORTED_MODULE_12__.localize)('renameSuggestionsReceivedAria', \"Received {0} rename suggestions\", candidates.length));\n }\n clearCandidates() {\n this._listContainer.style.height = '0px';\n this._listContainer.style.width = '0px';\n this._listWidget.splice(0, this._listWidget.length, []);\n }\n get nCandidates() {\n return this._listWidget.length;\n }\n get focusedCandidate() {\n if (this._listWidget.length === 0) {\n return;\n }\n const selectedElement = this._listWidget.getSelectedElements()[0];\n if (selectedElement !== undefined) {\n return selectedElement.newSymbolName;\n }\n const focusedElement = this._listWidget.getFocusedElements()[0];\n if (focusedElement !== undefined) {\n return focusedElement.newSymbolName;\n }\n return;\n }\n updateFont(fontInfo) {\n this._listContainer.style.fontFamily = fontInfo.fontFamily;\n this._listContainer.style.fontWeight = fontInfo.fontWeight;\n this._listContainer.style.fontSize = `${fontInfo.fontSize}px`;\n this._lineHeight = fontInfo.lineHeight;\n this._listWidget.rerender();\n }\n focusNext() {\n if (this._listWidget.length === 0) {\n return;\n }\n if (this._listWidget.isDOMFocused()) {\n this._listWidget.focusNext();\n }\n else {\n this._listWidget.domFocus();\n this._listWidget.focusFirst();\n }\n this._listWidget.reveal(this._listWidget.getFocus()[0]);\n }\n /**\n * @returns true if focus is moved to previous element\n */\n focusPrevious() {\n if (this._listWidget.length === 0) {\n return false;\n }\n this._listWidget.domFocus();\n const focusedIx = this._listWidget.getFocus()[0];\n if (focusedIx !== 0) {\n this._listWidget.focusPrevious();\n this._listWidget.reveal(this._listWidget.getFocus()[0]);\n }\n return focusedIx > 0;\n }\n get _candidateViewHeight() {\n const { totalHeight } = CandidateView.getLayoutInfo({ lineHeight: this._lineHeight });\n return totalHeight;\n }\n _pickListHeight(nCandidates) {\n const heightToFitAllCandidates = this._candidateViewHeight * nCandidates;\n const MAX_N_CANDIDATES = 7; // @ulugbekna: max # of candidates we want to show at once\n const height = Math.min(heightToFitAllCandidates, this._availableHeight, this._candidateViewHeight * MAX_N_CANDIDATES);\n return height;\n }\n _pickListWidth(candidates) {\n const longestCandidateWidth = Math.ceil(Math.max(...candidates.map(c => c.newSymbolName.length)) * this._typicalHalfwidthCharacterWidth);\n const width = Math.max(this._minimumWidth, 4 /* padding */ + 16 /* sparkle icon */ + 5 /* margin-left */ + longestCandidateWidth + 10 /* (possibly visible) scrollbar width */ // TODO@ulugbekna: approximate calc - clean this up\n );\n return width;\n }\n}\nclass CandidateView {\n constructor(parent, { lineHeight }) {\n this.domNode = document.createElement('div');\n this.domNode.style.display = `flex`;\n this.domNode.style.alignItems = `center`;\n this.domNode.style.height = `${lineHeight}px`;\n this.domNode.style.padding = `${CandidateView._PADDING}px`;\n this._icon = document.createElement('div');\n this._icon.style.display = `flex`;\n this._icon.style.alignItems = `center`;\n this._icon.style.width = this._icon.style.height = `${lineHeight * 0.8}px`;\n this.domNode.appendChild(this._icon);\n this._label = document.createElement('div');\n this._icon.style.display = `flex`;\n this._icon.style.alignItems = `center`;\n this._label.style.marginLeft = '5px';\n this.domNode.appendChild(this._label);\n parent.appendChild(this.domNode);\n }\n set model(value) {\n var _a;\n // @ulugbekna: a hack to always include sparkle for now\n const alwaysIncludeSparkle = true;\n // update icon\n if (alwaysIncludeSparkle || ((_a = value.tags) === null || _a === void 0 ? void 0 : _a.includes(_common_languages_js__WEBPACK_IMPORTED_MODULE_11__.NewSymbolNameTag.AIGenerated))) {\n if (this._icon.children.length === 0) {\n this._icon.appendChild((0,_base_browser_ui_iconLabel_iconLabels_js__WEBPACK_IMPORTED_MODULE_2__.renderIcon)(_base_common_codicons_js__WEBPACK_IMPORTED_MODULE_6__.Codicon.sparkle));\n }\n }\n else {\n if (this._icon.children.length === 1) {\n this._icon.removeChild(this._icon.children[0]);\n }\n }\n this._label.innerText = value.newSymbolName;\n }\n static getLayoutInfo({ lineHeight }) {\n const totalHeight = lineHeight + CandidateView._PADDING * 2 /* top & bottom padding */;\n return { totalHeight };\n }\n dispose() {\n }\n}\n// TODO@ulugbekna: accessibility\nCandidateView._PADDING = 2;\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/contrib/rename/browser/renameInputField.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/contrib/semanticTokens/browser/documentSemanticTokens.js":
/*!***********************************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/contrib/semanticTokens/browser/documentSemanticTokens.js ***!
\***********************************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ DocumentSemanticTokensFeature: () => (/* binding */ DocumentSemanticTokensFeature)\n/* harmony export */ });\n/* harmony import */ var _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../../base/common/lifecycle.js */ \"./node_modules/monaco-editor/esm/vs/base/common/lifecycle.js\");\n/* harmony import */ var _base_common_errors_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../base/common/errors.js */ \"./node_modules/monaco-editor/esm/vs/base/common/errors.js\");\n/* harmony import */ var _common_services_model_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../common/services/model.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/services/model.js\");\n/* harmony import */ var _platform_configuration_common_configuration_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../../../platform/configuration/common/configuration.js */ \"./node_modules/monaco-editor/esm/vs/platform/configuration/common/configuration.js\");\n/* harmony import */ var _base_common_async_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../../../base/common/async.js */ \"./node_modules/monaco-editor/esm/vs/base/common/async.js\");\n/* harmony import */ var _base_common_cancellation_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../../../../base/common/cancellation.js */ \"./node_modules/monaco-editor/esm/vs/base/common/cancellation.js\");\n/* harmony import */ var _platform_theme_common_themeService_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../../../../platform/theme/common/themeService.js */ \"./node_modules/monaco-editor/esm/vs/platform/theme/common/themeService.js\");\n/* harmony import */ var _common_services_semanticTokensProviderStyling_js__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ../../../common/services/semanticTokensProviderStyling.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/services/semanticTokensProviderStyling.js\");\n/* harmony import */ var _common_getSemanticTokens_js__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ../common/getSemanticTokens.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/semanticTokens/common/getSemanticTokens.js\");\n/* harmony import */ var _common_services_languageFeatureDebounce_js__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ../../../common/services/languageFeatureDebounce.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/services/languageFeatureDebounce.js\");\n/* harmony import */ var _base_common_stopwatch_js__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! ../../../../base/common/stopwatch.js */ \"./node_modules/monaco-editor/esm/vs/base/common/stopwatch.js\");\n/* harmony import */ var _common_services_languageFeatures_js__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(/*! ../../../common/services/languageFeatures.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/services/languageFeatures.js\");\n/* harmony import */ var _common_services_semanticTokensStyling_js__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(/*! ../../../common/services/semanticTokensStyling.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/services/semanticTokensStyling.js\");\n/* harmony import */ var _common_editorFeatures_js__WEBPACK_IMPORTED_MODULE_13__ = __webpack_require__(/*! ../../../common/editorFeatures.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/editorFeatures.js\");\n/* harmony import */ var _common_semanticTokensConfig_js__WEBPACK_IMPORTED_MODULE_14__ = __webpack_require__(/*! ../common/semanticTokensConfig.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/semanticTokens/common/semanticTokensConfig.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\nvar __decorate = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\n return c > 3 && r && Object.defineProperty(target, key, r), r;\n};\nvar __param = (undefined && undefined.__param) || function (paramIndex, decorator) {\n return function (target, key) { decorator(target, key, paramIndex); }\n};\nvar ModelSemanticColoring_1;\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlet DocumentSemanticTokensFeature = class DocumentSemanticTokensFeature extends _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_0__.Disposable {\n constructor(semanticTokensStylingService, modelService, themeService, configurationService, languageFeatureDebounceService, languageFeaturesService) {\n super();\n this._watchers = Object.create(null);\n const register = (model) => {\n this._watchers[model.uri.toString()] = new ModelSemanticColoring(model, semanticTokensStylingService, themeService, languageFeatureDebounceService, languageFeaturesService);\n };\n const deregister = (model, modelSemanticColoring) => {\n modelSemanticColoring.dispose();\n delete this._watchers[model.uri.toString()];\n };\n const handleSettingOrThemeChange = () => {\n for (const model of modelService.getModels()) {\n const curr = this._watchers[model.uri.toString()];\n if ((0,_common_semanticTokensConfig_js__WEBPACK_IMPORTED_MODULE_14__.isSemanticColoringEnabled)(model, themeService, configurationService)) {\n if (!curr) {\n register(model);\n }\n }\n else {\n if (curr) {\n deregister(model, curr);\n }\n }\n }\n };\n modelService.getModels().forEach(model => {\n if ((0,_common_semanticTokensConfig_js__WEBPACK_IMPORTED_MODULE_14__.isSemanticColoringEnabled)(model, themeService, configurationService)) {\n register(model);\n }\n });\n this._register(modelService.onModelAdded((model) => {\n if ((0,_common_semanticTokensConfig_js__WEBPACK_IMPORTED_MODULE_14__.isSemanticColoringEnabled)(model, themeService, configurationService)) {\n register(model);\n }\n }));\n this._register(modelService.onModelRemoved((model) => {\n const curr = this._watchers[model.uri.toString()];\n if (curr) {\n deregister(model, curr);\n }\n }));\n this._register(configurationService.onDidChangeConfiguration(e => {\n if (e.affectsConfiguration(_common_semanticTokensConfig_js__WEBPACK_IMPORTED_MODULE_14__.SEMANTIC_HIGHLIGHTING_SETTING_ID)) {\n handleSettingOrThemeChange();\n }\n }));\n this._register(themeService.onDidColorThemeChange(handleSettingOrThemeChange));\n }\n dispose() {\n // Dispose all watchers\n for (const watcher of Object.values(this._watchers)) {\n watcher.dispose();\n }\n super.dispose();\n }\n};\nDocumentSemanticTokensFeature = __decorate([\n __param(0, _common_services_semanticTokensStyling_js__WEBPACK_IMPORTED_MODULE_12__.ISemanticTokensStylingService),\n __param(1, _common_services_model_js__WEBPACK_IMPORTED_MODULE_2__.IModelService),\n __param(2, _platform_theme_common_themeService_js__WEBPACK_IMPORTED_MODULE_6__.IThemeService),\n __param(3, _platform_configuration_common_configuration_js__WEBPACK_IMPORTED_MODULE_3__.IConfigurationService),\n __param(4, _common_services_languageFeatureDebounce_js__WEBPACK_IMPORTED_MODULE_9__.ILanguageFeatureDebounceService),\n __param(5, _common_services_languageFeatures_js__WEBPACK_IMPORTED_MODULE_11__.ILanguageFeaturesService)\n], DocumentSemanticTokensFeature);\n\nlet ModelSemanticColoring = ModelSemanticColoring_1 = class ModelSemanticColoring extends _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_0__.Disposable {\n constructor(model, _semanticTokensStylingService, themeService, languageFeatureDebounceService, languageFeaturesService) {\n super();\n this._semanticTokensStylingService = _semanticTokensStylingService;\n this._isDisposed = false;\n this._model = model;\n this._provider = languageFeaturesService.documentSemanticTokensProvider;\n this._debounceInformation = languageFeatureDebounceService.for(this._provider, 'DocumentSemanticTokens', { min: ModelSemanticColoring_1.REQUEST_MIN_DELAY, max: ModelSemanticColoring_1.REQUEST_MAX_DELAY });\n this._fetchDocumentSemanticTokens = this._register(new _base_common_async_js__WEBPACK_IMPORTED_MODULE_4__.RunOnceScheduler(() => this._fetchDocumentSemanticTokensNow(), ModelSemanticColoring_1.REQUEST_MIN_DELAY));\n this._currentDocumentResponse = null;\n this._currentDocumentRequestCancellationTokenSource = null;\n this._documentProvidersChangeListeners = [];\n this._providersChangedDuringRequest = false;\n this._register(this._model.onDidChangeContent(() => {\n if (!this._fetchDocumentSemanticTokens.isScheduled()) {\n this._fetchDocumentSemanticTokens.schedule(this._debounceInformation.get(this._model));\n }\n }));\n this._register(this._model.onDidChangeAttached(() => {\n if (!this._fetchDocumentSemanticTokens.isScheduled()) {\n this._fetchDocumentSemanticTokens.schedule(this._debounceInformation.get(this._model));\n }\n }));\n this._register(this._model.onDidChangeLanguage(() => {\n // clear any outstanding state\n if (this._currentDocumentResponse) {\n this._currentDocumentResponse.dispose();\n this._currentDocumentResponse = null;\n }\n if (this._currentDocumentRequestCancellationTokenSource) {\n this._currentDocumentRequestCancellationTokenSource.cancel();\n this._currentDocumentRequestCancellationTokenSource = null;\n }\n this._setDocumentSemanticTokens(null, null, null, []);\n this._fetchDocumentSemanticTokens.schedule(0);\n }));\n const bindDocumentChangeListeners = () => {\n (0,_base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_0__.dispose)(this._documentProvidersChangeListeners);\n this._documentProvidersChangeListeners = [];\n for (const provider of this._provider.all(model)) {\n if (typeof provider.onDidChange === 'function') {\n this._documentProvidersChangeListeners.push(provider.onDidChange(() => {\n if (this._currentDocumentRequestCancellationTokenSource) {\n // there is already a request running,\n this._providersChangedDuringRequest = true;\n return;\n }\n this._fetchDocumentSemanticTokens.schedule(0);\n }));\n }\n }\n };\n bindDocumentChangeListeners();\n this._register(this._provider.onDidChange(() => {\n bindDocumentChangeListeners();\n this._fetchDocumentSemanticTokens.schedule(this._debounceInformation.get(this._model));\n }));\n this._register(themeService.onDidColorThemeChange(_ => {\n // clear out existing tokens\n this._setDocumentSemanticTokens(null, null, null, []);\n this._fetchDocumentSemanticTokens.schedule(this._debounceInformation.get(this._model));\n }));\n this._fetchDocumentSemanticTokens.schedule(0);\n }\n dispose() {\n if (this._currentDocumentResponse) {\n this._currentDocumentResponse.dispose();\n this._currentDocumentResponse = null;\n }\n if (this._currentDocumentRequestCancellationTokenSource) {\n this._currentDocumentRequestCancellationTokenSource.cancel();\n this._currentDocumentRequestCancellationTokenSource = null;\n }\n (0,_base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_0__.dispose)(this._documentProvidersChangeListeners);\n this._documentProvidersChangeListeners = [];\n this._setDocumentSemanticTokens(null, null, null, []);\n this._isDisposed = true;\n super.dispose();\n }\n _fetchDocumentSemanticTokensNow() {\n if (this._currentDocumentRequestCancellationTokenSource) {\n // there is already a request running, let it finish...\n return;\n }\n if (!(0,_common_getSemanticTokens_js__WEBPACK_IMPORTED_MODULE_8__.hasDocumentSemanticTokensProvider)(this._provider, this._model)) {\n // there is no provider\n if (this._currentDocumentResponse) {\n // there are semantic tokens set\n this._model.tokenization.setSemanticTokens(null, false);\n }\n return;\n }\n if (!this._model.isAttachedToEditor()) {\n // this document is not visible, there is no need to fetch semantic tokens for it\n return;\n }\n const cancellationTokenSource = new _base_common_cancellation_js__WEBPACK_IMPORTED_MODULE_5__.CancellationTokenSource();\n const lastProvider = this._currentDocumentResponse ? this._currentDocumentResponse.provider : null;\n const lastResultId = this._currentDocumentResponse ? this._currentDocumentResponse.resultId || null : null;\n const request = (0,_common_getSemanticTokens_js__WEBPACK_IMPORTED_MODULE_8__.getDocumentSemanticTokens)(this._provider, this._model, lastProvider, lastResultId, cancellationTokenSource.token);\n this._currentDocumentRequestCancellationTokenSource = cancellationTokenSource;\n this._providersChangedDuringRequest = false;\n const pendingChanges = [];\n const contentChangeListener = this._model.onDidChangeContent((e) => {\n pendingChanges.push(e);\n });\n const sw = new _base_common_stopwatch_js__WEBPACK_IMPORTED_MODULE_10__.StopWatch(false);\n request.then((res) => {\n this._debounceInformation.update(this._model, sw.elapsed());\n this._currentDocumentRequestCancellationTokenSource = null;\n contentChangeListener.dispose();\n if (!res) {\n this._setDocumentSemanticTokens(null, null, null, pendingChanges);\n }\n else {\n const { provider, tokens } = res;\n const styling = this._semanticTokensStylingService.getStyling(provider);\n this._setDocumentSemanticTokens(provider, tokens || null, styling, pendingChanges);\n }\n }, (err) => {\n const isExpectedError = err && (_base_common_errors_js__WEBPACK_IMPORTED_MODULE_1__.isCancellationError(err) || (typeof err.message === 'string' && err.message.indexOf('busy') !== -1));\n if (!isExpectedError) {\n _base_common_errors_js__WEBPACK_IMPORTED_MODULE_1__.onUnexpectedError(err);\n }\n // Semantic tokens eats up all errors and considers errors to mean that the result is temporarily not available\n // The API does not have a special error kind to express this...\n this._currentDocumentRequestCancellationTokenSource = null;\n contentChangeListener.dispose();\n if (pendingChanges.length > 0 || this._providersChangedDuringRequest) {\n // More changes occurred while the request was running\n if (!this._fetchDocumentSemanticTokens.isScheduled()) {\n this._fetchDocumentSemanticTokens.schedule(this._debounceInformation.get(this._model));\n }\n }\n });\n }\n static _copy(src, srcOffset, dest, destOffset, length) {\n // protect against overflows\n length = Math.min(length, dest.length - destOffset, src.length - srcOffset);\n for (let i = 0; i < length; i++) {\n dest[destOffset + i] = src[srcOffset + i];\n }\n }\n _setDocumentSemanticTokens(provider, tokens, styling, pendingChanges) {\n const currentResponse = this._currentDocumentResponse;\n const rescheduleIfNeeded = () => {\n if ((pendingChanges.length > 0 || this._providersChangedDuringRequest) && !this._fetchDocumentSemanticTokens.isScheduled()) {\n this._fetchDocumentSemanticTokens.schedule(this._debounceInformation.get(this._model));\n }\n };\n if (this._currentDocumentResponse) {\n this._currentDocumentResponse.dispose();\n this._currentDocumentResponse = null;\n }\n if (this._isDisposed) {\n // disposed!\n if (provider && tokens) {\n provider.releaseDocumentSemanticTokens(tokens.resultId);\n }\n return;\n }\n if (!provider || !styling) {\n this._model.tokenization.setSemanticTokens(null, false);\n return;\n }\n if (!tokens) {\n this._model.tokenization.setSemanticTokens(null, true);\n rescheduleIfNeeded();\n return;\n }\n if ((0,_common_getSemanticTokens_js__WEBPACK_IMPORTED_MODULE_8__.isSemanticTokensEdits)(tokens)) {\n if (!currentResponse) {\n // not possible!\n this._model.tokenization.setSemanticTokens(null, true);\n return;\n }\n if (tokens.edits.length === 0) {\n // nothing to do!\n tokens = {\n resultId: tokens.resultId,\n data: currentResponse.data\n };\n }\n else {\n let deltaLength = 0;\n for (const edit of tokens.edits) {\n deltaLength += (edit.data ? edit.data.length : 0) - edit.deleteCount;\n }\n const srcData = currentResponse.data;\n const destData = new Uint32Array(srcData.length + deltaLength);\n let srcLastStart = srcData.length;\n let destLastStart = destData.length;\n for (let i = tokens.edits.length - 1; i >= 0; i--) {\n const edit = tokens.edits[i];\n if (edit.start > srcData.length) {\n styling.warnInvalidEditStart(currentResponse.resultId, tokens.resultId, i, edit.start, srcData.length);\n // The edits are invalid and there's no way to recover\n this._model.tokenization.setSemanticTokens(null, true);\n return;\n }\n const copyCount = srcLastStart - (edit.start + edit.deleteCount);\n if (copyCount > 0) {\n ModelSemanticColoring_1._copy(srcData, srcLastStart - copyCount, destData, destLastStart - copyCount, copyCount);\n destLastStart -= copyCount;\n }\n if (edit.data) {\n ModelSemanticColoring_1._copy(edit.data, 0, destData, destLastStart - edit.data.length, edit.data.length);\n destLastStart -= edit.data.length;\n }\n srcLastStart = edit.start;\n }\n if (srcLastStart > 0) {\n ModelSemanticColoring_1._copy(srcData, 0, destData, 0, srcLastStart);\n }\n tokens = {\n resultId: tokens.resultId,\n data: destData\n };\n }\n }\n if ((0,_common_getSemanticTokens_js__WEBPACK_IMPORTED_MODULE_8__.isSemanticTokens)(tokens)) {\n this._currentDocumentResponse = new SemanticTokensResponse(provider, tokens.resultId, tokens.data);\n const result = (0,_common_services_semanticTokensProviderStyling_js__WEBPACK_IMPORTED_MODULE_7__.toMultilineTokens2)(tokens, styling, this._model.getLanguageId());\n // Adjust incoming semantic tokens\n if (pendingChanges.length > 0) {\n // More changes occurred while the request was running\n // We need to:\n // 1. Adjust incoming semantic tokens\n // 2. Request them again\n for (const change of pendingChanges) {\n for (const area of result) {\n for (const singleChange of change.changes) {\n area.applyEdit(singleChange.range, singleChange.text);\n }\n }\n }\n }\n this._model.tokenization.setSemanticTokens(result, true);\n }\n else {\n this._model.tokenization.setSemanticTokens(null, true);\n }\n rescheduleIfNeeded();\n }\n};\nModelSemanticColoring.REQUEST_MIN_DELAY = 300;\nModelSemanticColoring.REQUEST_MAX_DELAY = 2000;\nModelSemanticColoring = ModelSemanticColoring_1 = __decorate([\n __param(1, _common_services_semanticTokensStyling_js__WEBPACK_IMPORTED_MODULE_12__.ISemanticTokensStylingService),\n __param(2, _platform_theme_common_themeService_js__WEBPACK_IMPORTED_MODULE_6__.IThemeService),\n __param(3, _common_services_languageFeatureDebounce_js__WEBPACK_IMPORTED_MODULE_9__.ILanguageFeatureDebounceService),\n __param(4, _common_services_languageFeatures_js__WEBPACK_IMPORTED_MODULE_11__.ILanguageFeaturesService)\n], ModelSemanticColoring);\nclass SemanticTokensResponse {\n constructor(provider, resultId, data) {\n this.provider = provider;\n this.resultId = resultId;\n this.data = data;\n }\n dispose() {\n this.provider.releaseDocumentSemanticTokens(this.resultId);\n }\n}\n(0,_common_editorFeatures_js__WEBPACK_IMPORTED_MODULE_13__.registerEditorFeature)(DocumentSemanticTokensFeature);\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/contrib/semanticTokens/browser/documentSemanticTokens.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/contrib/semanticTokens/browser/viewportSemanticTokens.js":
/*!***********************************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/contrib/semanticTokens/browser/viewportSemanticTokens.js ***!
\***********************************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ ViewportSemanticTokensContribution: () => (/* binding */ ViewportSemanticTokensContribution)\n/* harmony export */ });\n/* harmony import */ var _base_common_async_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../../base/common/async.js */ \"./node_modules/monaco-editor/esm/vs/base/common/async.js\");\n/* harmony import */ var _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../base/common/lifecycle.js */ \"./node_modules/monaco-editor/esm/vs/base/common/lifecycle.js\");\n/* harmony import */ var _browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../browser/editorExtensions.js */ \"./node_modules/monaco-editor/esm/vs/editor/browser/editorExtensions.js\");\n/* harmony import */ var _common_getSemanticTokens_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../common/getSemanticTokens.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/semanticTokens/common/getSemanticTokens.js\");\n/* harmony import */ var _common_semanticTokensConfig_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../common/semanticTokensConfig.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/semanticTokens/common/semanticTokensConfig.js\");\n/* harmony import */ var _common_services_semanticTokensProviderStyling_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../../../common/services/semanticTokensProviderStyling.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/services/semanticTokensProviderStyling.js\");\n/* harmony import */ var _platform_configuration_common_configuration_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../../../../platform/configuration/common/configuration.js */ \"./node_modules/monaco-editor/esm/vs/platform/configuration/common/configuration.js\");\n/* harmony import */ var _platform_theme_common_themeService_js__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ../../../../platform/theme/common/themeService.js */ \"./node_modules/monaco-editor/esm/vs/platform/theme/common/themeService.js\");\n/* harmony import */ var _common_services_languageFeatureDebounce_js__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ../../../common/services/languageFeatureDebounce.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/services/languageFeatureDebounce.js\");\n/* harmony import */ var _base_common_stopwatch_js__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ../../../../base/common/stopwatch.js */ \"./node_modules/monaco-editor/esm/vs/base/common/stopwatch.js\");\n/* harmony import */ var _common_services_languageFeatures_js__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! ../../../common/services/languageFeatures.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/services/languageFeatures.js\");\n/* harmony import */ var _common_services_semanticTokensStyling_js__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(/*! ../../../common/services/semanticTokensStyling.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/services/semanticTokensStyling.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\nvar __decorate = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\n return c > 3 && r && Object.defineProperty(target, key, r), r;\n};\nvar __param = (undefined && undefined.__param) || function (paramIndex, decorator) {\n return function (target, key) { decorator(target, key, paramIndex); }\n};\n\n\n\n\n\n\n\n\n\n\n\n\nlet ViewportSemanticTokensContribution = class ViewportSemanticTokensContribution extends _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_1__.Disposable {\n constructor(editor, _semanticTokensStylingService, _themeService, _configurationService, languageFeatureDebounceService, languageFeaturesService) {\n super();\n this._semanticTokensStylingService = _semanticTokensStylingService;\n this._themeService = _themeService;\n this._configurationService = _configurationService;\n this._editor = editor;\n this._provider = languageFeaturesService.documentRangeSemanticTokensProvider;\n this._debounceInformation = languageFeatureDebounceService.for(this._provider, 'DocumentRangeSemanticTokens', { min: 100, max: 500 });\n this._tokenizeViewport = this._register(new _base_common_async_js__WEBPACK_IMPORTED_MODULE_0__.RunOnceScheduler(() => this._tokenizeViewportNow(), 100));\n this._outstandingRequests = [];\n const scheduleTokenizeViewport = () => {\n if (this._editor.hasModel()) {\n this._tokenizeViewport.schedule(this._debounceInformation.get(this._editor.getModel()));\n }\n };\n this._register(this._editor.onDidScrollChange(() => {\n scheduleTokenizeViewport();\n }));\n this._register(this._editor.onDidChangeModel(() => {\n this._cancelAll();\n scheduleTokenizeViewport();\n }));\n this._register(this._editor.onDidChangeModelContent((e) => {\n this._cancelAll();\n scheduleTokenizeViewport();\n }));\n this._register(this._provider.onDidChange(() => {\n this._cancelAll();\n scheduleTokenizeViewport();\n }));\n this._register(this._configurationService.onDidChangeConfiguration(e => {\n if (e.affectsConfiguration(_common_semanticTokensConfig_js__WEBPACK_IMPORTED_MODULE_4__.SEMANTIC_HIGHLIGHTING_SETTING_ID)) {\n this._cancelAll();\n scheduleTokenizeViewport();\n }\n }));\n this._register(this._themeService.onDidColorThemeChange(() => {\n this._cancelAll();\n scheduleTokenizeViewport();\n }));\n scheduleTokenizeViewport();\n }\n _cancelAll() {\n for (const request of this._outstandingRequests) {\n request.cancel();\n }\n this._outstandingRequests = [];\n }\n _removeOutstandingRequest(req) {\n for (let i = 0, len = this._outstandingRequests.length; i < len; i++) {\n if (this._outstandingRequests[i] === req) {\n this._outstandingRequests.splice(i, 1);\n return;\n }\n }\n }\n _tokenizeViewportNow() {\n if (!this._editor.hasModel()) {\n return;\n }\n const model = this._editor.getModel();\n if (model.tokenization.hasCompleteSemanticTokens()) {\n return;\n }\n if (!(0,_common_semanticTokensConfig_js__WEBPACK_IMPORTED_MODULE_4__.isSemanticColoringEnabled)(model, this._themeService, this._configurationService)) {\n if (model.tokenization.hasSomeSemanticTokens()) {\n model.tokenization.setSemanticTokens(null, false);\n }\n return;\n }\n if (!(0,_common_getSemanticTokens_js__WEBPACK_IMPORTED_MODULE_3__.hasDocumentRangeSemanticTokensProvider)(this._provider, model)) {\n if (model.tokenization.hasSomeSemanticTokens()) {\n model.tokenization.setSemanticTokens(null, false);\n }\n return;\n }\n const visibleRanges = this._editor.getVisibleRangesPlusViewportAboveBelow();\n this._outstandingRequests = this._outstandingRequests.concat(visibleRanges.map(range => this._requestRange(model, range)));\n }\n _requestRange(model, range) {\n const requestVersionId = model.getVersionId();\n const request = (0,_base_common_async_js__WEBPACK_IMPORTED_MODULE_0__.createCancelablePromise)(token => Promise.resolve((0,_common_getSemanticTokens_js__WEBPACK_IMPORTED_MODULE_3__.getDocumentRangeSemanticTokens)(this._provider, model, range, token)));\n const sw = new _base_common_stopwatch_js__WEBPACK_IMPORTED_MODULE_9__.StopWatch(false);\n request.then((r) => {\n this._debounceInformation.update(model, sw.elapsed());\n if (!r || !r.tokens || model.isDisposed() || model.getVersionId() !== requestVersionId) {\n return;\n }\n const { provider, tokens: result } = r;\n const styling = this._semanticTokensStylingService.getStyling(provider);\n model.tokenization.setPartialSemanticTokens(range, (0,_common_services_semanticTokensProviderStyling_js__WEBPACK_IMPORTED_MODULE_5__.toMultilineTokens2)(result, styling, model.getLanguageId()));\n }).then(() => this._removeOutstandingRequest(request), () => this._removeOutstandingRequest(request));\n return request;\n }\n};\nViewportSemanticTokensContribution.ID = 'editor.contrib.viewportSemanticTokens';\nViewportSemanticTokensContribution = __decorate([\n __param(1, _common_services_semanticTokensStyling_js__WEBPACK_IMPORTED_MODULE_11__.ISemanticTokensStylingService),\n __param(2, _platform_theme_common_themeService_js__WEBPACK_IMPORTED_MODULE_7__.IThemeService),\n __param(3, _platform_configuration_common_configuration_js__WEBPACK_IMPORTED_MODULE_6__.IConfigurationService),\n __param(4, _common_services_languageFeatureDebounce_js__WEBPACK_IMPORTED_MODULE_8__.ILanguageFeatureDebounceService),\n __param(5, _common_services_languageFeatures_js__WEBPACK_IMPORTED_MODULE_10__.ILanguageFeaturesService)\n], ViewportSemanticTokensContribution);\n\n(0,_browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_2__.registerEditorContribution)(ViewportSemanticTokensContribution.ID, ViewportSemanticTokensContribution, 1 /* EditorContributionInstantiation.AfterFirstRender */);\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/contrib/semanticTokens/browser/viewportSemanticTokens.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/contrib/semanticTokens/common/getSemanticTokens.js":
/*!*****************************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/contrib/semanticTokens/common/getSemanticTokens.js ***!
\*****************************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ DocumentSemanticTokensResult: () => (/* binding */ DocumentSemanticTokensResult),\n/* harmony export */ getDocumentRangeSemanticTokens: () => (/* binding */ getDocumentRangeSemanticTokens),\n/* harmony export */ getDocumentSemanticTokens: () => (/* binding */ getDocumentSemanticTokens),\n/* harmony export */ hasDocumentRangeSemanticTokensProvider: () => (/* binding */ hasDocumentRangeSemanticTokensProvider),\n/* harmony export */ hasDocumentSemanticTokensProvider: () => (/* binding */ hasDocumentSemanticTokensProvider),\n/* harmony export */ isSemanticTokens: () => (/* binding */ isSemanticTokens),\n/* harmony export */ isSemanticTokensEdits: () => (/* binding */ isSemanticTokensEdits)\n/* harmony export */ });\n/* harmony import */ var _base_common_cancellation_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../../base/common/cancellation.js */ \"./node_modules/monaco-editor/esm/vs/base/common/cancellation.js\");\n/* harmony import */ var _base_common_errors_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../base/common/errors.js */ \"./node_modules/monaco-editor/esm/vs/base/common/errors.js\");\n/* harmony import */ var _base_common_uri_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../../base/common/uri.js */ \"./node_modules/monaco-editor/esm/vs/base/common/uri.js\");\n/* harmony import */ var _common_services_model_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../../common/services/model.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/services/model.js\");\n/* harmony import */ var _platform_commands_common_commands_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../../../platform/commands/common/commands.js */ \"./node_modules/monaco-editor/esm/vs/platform/commands/common/commands.js\");\n/* harmony import */ var _base_common_types_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../../../../base/common/types.js */ \"./node_modules/monaco-editor/esm/vs/base/common/types.js\");\n/* harmony import */ var _common_services_semanticTokensDto_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../../../common/services/semanticTokensDto.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/services/semanticTokensDto.js\");\n/* harmony import */ var _common_core_range_js__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ../../../common/core/range.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/core/range.js\");\n/* harmony import */ var _common_services_languageFeatures_js__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ../../../common/services/languageFeatures.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/services/languageFeatures.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n\n\n\n\n\n\n\n\nfunction isSemanticTokens(v) {\n return v && !!(v.data);\n}\nfunction isSemanticTokensEdits(v) {\n return v && Array.isArray(v.edits);\n}\nclass DocumentSemanticTokensResult {\n constructor(provider, tokens, error) {\n this.provider = provider;\n this.tokens = tokens;\n this.error = error;\n }\n}\nfunction hasDocumentSemanticTokensProvider(registry, model) {\n return registry.has(model);\n}\nfunction getDocumentSemanticTokensProviders(registry, model) {\n const groups = registry.orderedGroups(model);\n return (groups.length > 0 ? groups[0] : []);\n}\nasync function getDocumentSemanticTokens(registry, model, lastProvider, lastResultId, token) {\n const providers = getDocumentSemanticTokensProviders(registry, model);\n // Get tokens from all providers at the same time.\n const results = await Promise.all(providers.map(async (provider) => {\n let result;\n let error = null;\n try {\n result = await provider.provideDocumentSemanticTokens(model, (provider === lastProvider ? lastResultId : null), token);\n }\n catch (err) {\n error = err;\n result = null;\n }\n if (!result || (!isSemanticTokens(result) && !isSemanticTokensEdits(result))) {\n result = null;\n }\n return new DocumentSemanticTokensResult(provider, result, error);\n }));\n // Try to return the first result with actual tokens or\n // the first result which threw an error (!!)\n for (const result of results) {\n if (result.error) {\n throw result.error;\n }\n if (result.tokens) {\n return result;\n }\n }\n // Return the first result, even if it doesn't have tokens\n if (results.length > 0) {\n return results[0];\n }\n return null;\n}\nfunction _getDocumentSemanticTokensProviderHighestGroup(registry, model) {\n const result = registry.orderedGroups(model);\n return (result.length > 0 ? result[0] : null);\n}\nclass DocumentRangeSemanticTokensResult {\n constructor(provider, tokens) {\n this.provider = provider;\n this.tokens = tokens;\n }\n}\nfunction hasDocumentRangeSemanticTokensProvider(providers, model) {\n return providers.has(model);\n}\nfunction getDocumentRangeSemanticTokensProviders(providers, model) {\n const groups = providers.orderedGroups(model);\n return (groups.length > 0 ? groups[0] : []);\n}\nasync function getDocumentRangeSemanticTokens(registry, model, range, token) {\n const providers = getDocumentRangeSemanticTokensProviders(registry, model);\n // Get tokens from all providers at the same time.\n const results = await Promise.all(providers.map(async (provider) => {\n let result;\n try {\n result = await provider.provideDocumentRangeSemanticTokens(model, range, token);\n }\n catch (err) {\n (0,_base_common_errors_js__WEBPACK_IMPORTED_MODULE_1__.onUnexpectedExternalError)(err);\n result = null;\n }\n if (!result || !isSemanticTokens(result)) {\n result = null;\n }\n return new DocumentRangeSemanticTokensResult(provider, result);\n }));\n // Try to return the first result with actual tokens\n for (const result of results) {\n if (result.tokens) {\n return result;\n }\n }\n // Return the first result, even if it doesn't have tokens\n if (results.length > 0) {\n return results[0];\n }\n return null;\n}\n_platform_commands_common_commands_js__WEBPACK_IMPORTED_MODULE_4__.CommandsRegistry.registerCommand('_provideDocumentSemanticTokensLegend', async (accessor, ...args) => {\n const [uri] = args;\n (0,_base_common_types_js__WEBPACK_IMPORTED_MODULE_5__.assertType)(uri instanceof _base_common_uri_js__WEBPACK_IMPORTED_MODULE_2__.URI);\n const model = accessor.get(_common_services_model_js__WEBPACK_IMPORTED_MODULE_3__.IModelService).getModel(uri);\n if (!model) {\n return undefined;\n }\n const { documentSemanticTokensProvider } = accessor.get(_common_services_languageFeatures_js__WEBPACK_IMPORTED_MODULE_8__.ILanguageFeaturesService);\n const providers = _getDocumentSemanticTokensProviderHighestGroup(documentSemanticTokensProvider, model);\n if (!providers) {\n // there is no provider => fall back to a document range semantic tokens provider\n return accessor.get(_platform_commands_common_commands_js__WEBPACK_IMPORTED_MODULE_4__.ICommandService).executeCommand('_provideDocumentRangeSemanticTokensLegend', uri);\n }\n return providers[0].getLegend();\n});\n_platform_commands_common_commands_js__WEBPACK_IMPORTED_MODULE_4__.CommandsRegistry.registerCommand('_provideDocumentSemanticTokens', async (accessor, ...args) => {\n const [uri] = args;\n (0,_base_common_types_js__WEBPACK_IMPORTED_MODULE_5__.assertType)(uri instanceof _base_common_uri_js__WEBPACK_IMPORTED_MODULE_2__.URI);\n const model = accessor.get(_common_services_model_js__WEBPACK_IMPORTED_MODULE_3__.IModelService).getModel(uri);\n if (!model) {\n return undefined;\n }\n const { documentSemanticTokensProvider } = accessor.get(_common_services_languageFeatures_js__WEBPACK_IMPORTED_MODULE_8__.ILanguageFeaturesService);\n if (!hasDocumentSemanticTokensProvider(documentSemanticTokensProvider, model)) {\n // there is no provider => fall back to a document range semantic tokens provider\n return accessor.get(_platform_commands_common_commands_js__WEBPACK_IMPORTED_MODULE_4__.ICommandService).executeCommand('_provideDocumentRangeSemanticTokens', uri, model.getFullModelRange());\n }\n const r = await getDocumentSemanticTokens(documentSemanticTokensProvider, model, null, null, _base_common_cancellation_js__WEBPACK_IMPORTED_MODULE_0__.CancellationToken.None);\n if (!r) {\n return undefined;\n }\n const { provider, tokens } = r;\n if (!tokens || !isSemanticTokens(tokens)) {\n return undefined;\n }\n const buff = (0,_common_services_semanticTokensDto_js__WEBPACK_IMPORTED_MODULE_6__.encodeSemanticTokensDto)({\n id: 0,\n type: 'full',\n data: tokens.data\n });\n if (tokens.resultId) {\n provider.releaseDocumentSemanticTokens(tokens.resultId);\n }\n return buff;\n});\n_platform_commands_common_commands_js__WEBPACK_IMPORTED_MODULE_4__.CommandsRegistry.registerCommand('_provideDocumentRangeSemanticTokensLegend', async (accessor, ...args) => {\n const [uri, range] = args;\n (0,_base_common_types_js__WEBPACK_IMPORTED_MODULE_5__.assertType)(uri instanceof _base_common_uri_js__WEBPACK_IMPORTED_MODULE_2__.URI);\n const model = accessor.get(_common_services_model_js__WEBPACK_IMPORTED_MODULE_3__.IModelService).getModel(uri);\n if (!model) {\n return undefined;\n }\n const { documentRangeSemanticTokensProvider } = accessor.get(_common_services_languageFeatures_js__WEBPACK_IMPORTED_MODULE_8__.ILanguageFeaturesService);\n const providers = getDocumentRangeSemanticTokensProviders(documentRangeSemanticTokensProvider, model);\n if (providers.length === 0) {\n // no providers\n return undefined;\n }\n if (providers.length === 1) {\n // straight forward case, just a single provider\n return providers[0].getLegend();\n }\n if (!range || !_common_core_range_js__WEBPACK_IMPORTED_MODULE_7__.Range.isIRange(range)) {\n // if no range is provided, we cannot support multiple providers\n // as we cannot fall back to the one which would give results\n // => return the first legend for backwards compatibility and print a warning\n console.warn(`provideDocumentRangeSemanticTokensLegend might be out-of-sync with provideDocumentRangeSemanticTokens unless a range argument is passed in`);\n return providers[0].getLegend();\n }\n const result = await getDocumentRangeSemanticTokens(documentRangeSemanticTokensProvider, model, _common_core_range_js__WEBPACK_IMPORTED_MODULE_7__.Range.lift(range), _base_common_cancellation_js__WEBPACK_IMPORTED_MODULE_0__.CancellationToken.None);\n if (!result) {\n return undefined;\n }\n return result.provider.getLegend();\n});\n_platform_commands_common_commands_js__WEBPACK_IMPORTED_MODULE_4__.CommandsRegistry.registerCommand('_provideDocumentRangeSemanticTokens', async (accessor, ...args) => {\n const [uri, range] = args;\n (0,_base_common_types_js__WEBPACK_IMPORTED_MODULE_5__.assertType)(uri instanceof _base_common_uri_js__WEBPACK_IMPORTED_MODULE_2__.URI);\n (0,_base_common_types_js__WEBPACK_IMPORTED_MODULE_5__.assertType)(_common_core_range_js__WEBPACK_IMPORTED_MODULE_7__.Range.isIRange(range));\n const model = accessor.get(_common_services_model_js__WEBPACK_IMPORTED_MODULE_3__.IModelService).getModel(uri);\n if (!model) {\n return undefined;\n }\n const { documentRangeSemanticTokensProvider } = accessor.get(_common_services_languageFeatures_js__WEBPACK_IMPORTED_MODULE_8__.ILanguageFeaturesService);\n const result = await getDocumentRangeSemanticTokens(documentRangeSemanticTokensProvider, model, _common_core_range_js__WEBPACK_IMPORTED_MODULE_7__.Range.lift(range), _base_common_cancellation_js__WEBPACK_IMPORTED_MODULE_0__.CancellationToken.None);\n if (!result || !result.tokens) {\n // there is no provider or it didn't return tokens\n return undefined;\n }\n return (0,_common_services_semanticTokensDto_js__WEBPACK_IMPORTED_MODULE_6__.encodeSemanticTokensDto)({\n id: 0,\n type: 'full',\n data: result.tokens.data\n });\n});\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/contrib/semanticTokens/common/getSemanticTokens.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/contrib/semanticTokens/common/semanticTokensConfig.js":
/*!********************************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/contrib/semanticTokens/common/semanticTokensConfig.js ***!
\********************************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ SEMANTIC_HIGHLIGHTING_SETTING_ID: () => (/* binding */ SEMANTIC_HIGHLIGHTING_SETTING_ID),\n/* harmony export */ isSemanticColoringEnabled: () => (/* binding */ isSemanticColoringEnabled)\n/* harmony export */ });\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\nconst SEMANTIC_HIGHLIGHTING_SETTING_ID = 'editor.semanticHighlighting';\nfunction isSemanticColoringEnabled(model, themeService, configurationService) {\n var _a;\n const setting = (_a = configurationService.getValue(SEMANTIC_HIGHLIGHTING_SETTING_ID, { overrideIdentifier: model.getLanguageId(), resource: model.uri })) === null || _a === void 0 ? void 0 : _a.enabled;\n if (typeof setting === 'boolean') {\n return setting;\n }\n return themeService.getColorTheme().semanticHighlighting;\n}\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/contrib/semanticTokens/common/semanticTokensConfig.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/contrib/smartSelect/browser/bracketSelections.js":
/*!***************************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/contrib/smartSelect/browser/bracketSelections.js ***!
\***************************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ BracketSelectionRangeProvider: () => (/* binding */ BracketSelectionRangeProvider)\n/* harmony export */ });\n/* harmony import */ var _base_common_linkedList_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../../base/common/linkedList.js */ \"./node_modules/monaco-editor/esm/vs/base/common/linkedList.js\");\n/* harmony import */ var _common_core_position_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../common/core/position.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/core/position.js\");\n/* harmony import */ var _common_core_range_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../common/core/range.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/core/range.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n\n\nclass BracketSelectionRangeProvider {\n async provideSelectionRanges(model, positions) {\n const result = [];\n for (const position of positions) {\n const bucket = [];\n result.push(bucket);\n const ranges = new Map();\n await new Promise(resolve => BracketSelectionRangeProvider._bracketsRightYield(resolve, 0, model, position, ranges));\n await new Promise(resolve => BracketSelectionRangeProvider._bracketsLeftYield(resolve, 0, model, position, ranges, bucket));\n }\n return result;\n }\n static _bracketsRightYield(resolve, round, model, pos, ranges) {\n const counts = new Map();\n const t1 = Date.now();\n while (true) {\n if (round >= BracketSelectionRangeProvider._maxRounds) {\n resolve();\n break;\n }\n if (!pos) {\n resolve();\n break;\n }\n const bracket = model.bracketPairs.findNextBracket(pos);\n if (!bracket) {\n resolve();\n break;\n }\n const d = Date.now() - t1;\n if (d > BracketSelectionRangeProvider._maxDuration) {\n setTimeout(() => BracketSelectionRangeProvider._bracketsRightYield(resolve, round + 1, model, pos, ranges));\n break;\n }\n if (bracket.bracketInfo.isOpeningBracket) {\n const key = bracket.bracketInfo.bracketText;\n // wait for closing\n const val = counts.has(key) ? counts.get(key) : 0;\n counts.set(key, val + 1);\n }\n else {\n const key = bracket.bracketInfo.getOpeningBrackets()[0].bracketText;\n // process closing\n let val = counts.has(key) ? counts.get(key) : 0;\n val -= 1;\n counts.set(key, Math.max(0, val));\n if (val < 0) {\n let list = ranges.get(key);\n if (!list) {\n list = new _base_common_linkedList_js__WEBPACK_IMPORTED_MODULE_0__.LinkedList();\n ranges.set(key, list);\n }\n list.push(bracket.range);\n }\n }\n pos = bracket.range.getEndPosition();\n }\n }\n static _bracketsLeftYield(resolve, round, model, pos, ranges, bucket) {\n const counts = new Map();\n const t1 = Date.now();\n while (true) {\n if (round >= BracketSelectionRangeProvider._maxRounds && ranges.size === 0) {\n resolve();\n break;\n }\n if (!pos) {\n resolve();\n break;\n }\n const bracket = model.bracketPairs.findPrevBracket(pos);\n if (!bracket) {\n resolve();\n break;\n }\n const d = Date.now() - t1;\n if (d > BracketSelectionRangeProvider._maxDuration) {\n setTimeout(() => BracketSelectionRangeProvider._bracketsLeftYield(resolve, round + 1, model, pos, ranges, bucket));\n break;\n }\n if (!bracket.bracketInfo.isOpeningBracket) {\n const key = bracket.bracketInfo.getOpeningBrackets()[0].bracketText;\n // wait for opening\n const val = counts.has(key) ? counts.get(key) : 0;\n counts.set(key, val + 1);\n }\n else {\n const key = bracket.bracketInfo.bracketText;\n // opening\n let val = counts.has(key) ? counts.get(key) : 0;\n val -= 1;\n counts.set(key, Math.max(0, val));\n if (val < 0) {\n const list = ranges.get(key);\n if (list) {\n const closing = list.shift();\n if (list.size === 0) {\n ranges.delete(key);\n }\n const innerBracket = _common_core_range_js__WEBPACK_IMPORTED_MODULE_2__.Range.fromPositions(bracket.range.getEndPosition(), closing.getStartPosition());\n const outerBracket = _common_core_range_js__WEBPACK_IMPORTED_MODULE_2__.Range.fromPositions(bracket.range.getStartPosition(), closing.getEndPosition());\n bucket.push({ range: innerBracket });\n bucket.push({ range: outerBracket });\n BracketSelectionRangeProvider._addBracketLeading(model, outerBracket, bucket);\n }\n }\n }\n pos = bracket.range.getStartPosition();\n }\n }\n static _addBracketLeading(model, bracket, bucket) {\n if (bracket.startLineNumber === bracket.endLineNumber) {\n return;\n }\n // xxxxxxxx {\n //\n // }\n const startLine = bracket.startLineNumber;\n const column = model.getLineFirstNonWhitespaceColumn(startLine);\n if (column !== 0 && column !== bracket.startColumn) {\n bucket.push({ range: _common_core_range_js__WEBPACK_IMPORTED_MODULE_2__.Range.fromPositions(new _common_core_position_js__WEBPACK_IMPORTED_MODULE_1__.Position(startLine, column), bracket.getEndPosition()) });\n bucket.push({ range: _common_core_range_js__WEBPACK_IMPORTED_MODULE_2__.Range.fromPositions(new _common_core_position_js__WEBPACK_IMPORTED_MODULE_1__.Position(startLine, 1), bracket.getEndPosition()) });\n }\n // xxxxxxxx\n // {\n //\n // }\n const aboveLine = startLine - 1;\n if (aboveLine > 0) {\n const column = model.getLineFirstNonWhitespaceColumn(aboveLine);\n if (column === bracket.startColumn && column !== model.getLineLastNonWhitespaceColumn(aboveLine)) {\n bucket.push({ range: _common_core_range_js__WEBPACK_IMPORTED_MODULE_2__.Range.fromPositions(new _common_core_position_js__WEBPACK_IMPORTED_MODULE_1__.Position(aboveLine, column), bracket.getEndPosition()) });\n bucket.push({ range: _common_core_range_js__WEBPACK_IMPORTED_MODULE_2__.Range.fromPositions(new _common_core_position_js__WEBPACK_IMPORTED_MODULE_1__.Position(aboveLine, 1), bracket.getEndPosition()) });\n }\n }\n }\n}\nBracketSelectionRangeProvider._maxDuration = 30;\nBracketSelectionRangeProvider._maxRounds = 2;\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/contrib/smartSelect/browser/bracketSelections.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/contrib/smartSelect/browser/smartSelect.js":
/*!*********************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/contrib/smartSelect/browser/smartSelect.js ***!
\*********************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ SmartSelectController: () => (/* binding */ SmartSelectController),\n/* harmony export */ provideSelectionRanges: () => (/* binding */ provideSelectionRanges)\n/* harmony export */ });\n/* harmony import */ var _base_common_arrays_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../../base/common/arrays.js */ \"./node_modules/monaco-editor/esm/vs/base/common/arrays.js\");\n/* harmony import */ var _base_common_cancellation_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../base/common/cancellation.js */ \"./node_modules/monaco-editor/esm/vs/base/common/cancellation.js\");\n/* harmony import */ var _base_common_errors_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../../base/common/errors.js */ \"./node_modules/monaco-editor/esm/vs/base/common/errors.js\");\n/* harmony import */ var _browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../../browser/editorExtensions.js */ \"./node_modules/monaco-editor/esm/vs/editor/browser/editorExtensions.js\");\n/* harmony import */ var _common_core_position_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../../common/core/position.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/core/position.js\");\n/* harmony import */ var _common_core_range_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../../../common/core/range.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/core/range.js\");\n/* harmony import */ var _common_core_selection_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../../../common/core/selection.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/core/selection.js\");\n/* harmony import */ var _common_editorContextKeys_js__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ../../../common/editorContextKeys.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/editorContextKeys.js\");\n/* harmony import */ var _bracketSelections_js__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ./bracketSelections.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/smartSelect/browser/bracketSelections.js\");\n/* harmony import */ var _wordSelections_js__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ./wordSelections.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/smartSelect/browser/wordSelections.js\");\n/* harmony import */ var _nls_js__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! ../../../../nls.js */ \"./node_modules/monaco-editor/esm/vs/nls.js\");\n/* harmony import */ var _platform_actions_common_actions_js__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(/*! ../../../../platform/actions/common/actions.js */ \"./node_modules/monaco-editor/esm/vs/platform/actions/common/actions.js\");\n/* harmony import */ var _platform_commands_common_commands_js__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(/*! ../../../../platform/commands/common/commands.js */ \"./node_modules/monaco-editor/esm/vs/platform/commands/common/commands.js\");\n/* harmony import */ var _common_services_languageFeatures_js__WEBPACK_IMPORTED_MODULE_13__ = __webpack_require__(/*! ../../../common/services/languageFeatures.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/services/languageFeatures.js\");\n/* harmony import */ var _common_services_resolverService_js__WEBPACK_IMPORTED_MODULE_14__ = __webpack_require__(/*! ../../../common/services/resolverService.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/services/resolverService.js\");\n/* harmony import */ var _base_common_types_js__WEBPACK_IMPORTED_MODULE_15__ = __webpack_require__(/*! ../../../../base/common/types.js */ \"./node_modules/monaco-editor/esm/vs/base/common/types.js\");\n/* harmony import */ var _base_common_uri_js__WEBPACK_IMPORTED_MODULE_16__ = __webpack_require__(/*! ../../../../base/common/uri.js */ \"./node_modules/monaco-editor/esm/vs/base/common/uri.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\nvar __decorate = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\n return c > 3 && r && Object.defineProperty(target, key, r), r;\n};\nvar __param = (undefined && undefined.__param) || function (paramIndex, decorator) {\n return function (target, key) { decorator(target, key, paramIndex); }\n};\nvar SmartSelectController_1;\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nclass SelectionRanges {\n constructor(index, ranges) {\n this.index = index;\n this.ranges = ranges;\n }\n mov(fwd) {\n const index = this.index + (fwd ? 1 : -1);\n if (index < 0 || index >= this.ranges.length) {\n return this;\n }\n const res = new SelectionRanges(index, this.ranges);\n if (res.ranges[index].equalsRange(this.ranges[this.index])) {\n // next range equals this range, retry with next-next\n return res.mov(fwd);\n }\n return res;\n }\n}\nlet SmartSelectController = SmartSelectController_1 = class SmartSelectController {\n static get(editor) {\n return editor.getContribution(SmartSelectController_1.ID);\n }\n constructor(_editor, _languageFeaturesService) {\n this._editor = _editor;\n this._languageFeaturesService = _languageFeaturesService;\n this._ignoreSelection = false;\n }\n dispose() {\n var _a;\n (_a = this._selectionListener) === null || _a === void 0 ? void 0 : _a.dispose();\n }\n async run(forward) {\n if (!this._editor.hasModel()) {\n return;\n }\n const selections = this._editor.getSelections();\n const model = this._editor.getModel();\n if (!this._state) {\n await provideSelectionRanges(this._languageFeaturesService.selectionRangeProvider, model, selections.map(s => s.getPosition()), this._editor.getOption(113 /* EditorOption.smartSelect */), _base_common_cancellation_js__WEBPACK_IMPORTED_MODULE_1__.CancellationToken.None).then(ranges => {\n var _a;\n if (!_base_common_arrays_js__WEBPACK_IMPORTED_MODULE_0__.isNonEmptyArray(ranges) || ranges.length !== selections.length) {\n // invalid result\n return;\n }\n if (!this._editor.hasModel() || !_base_common_arrays_js__WEBPACK_IMPORTED_MODULE_0__.equals(this._editor.getSelections(), selections, (a, b) => a.equalsSelection(b))) {\n // invalid editor state\n return;\n }\n for (let i = 0; i < ranges.length; i++) {\n ranges[i] = ranges[i].filter(range => {\n // filter ranges inside the selection\n return range.containsPosition(selections[i].getStartPosition()) && range.containsPosition(selections[i].getEndPosition());\n });\n // prepend current selection\n ranges[i].unshift(selections[i]);\n }\n this._state = ranges.map(ranges => new SelectionRanges(0, ranges));\n // listen to caret move and forget about state\n (_a = this._selectionListener) === null || _a === void 0 ? void 0 : _a.dispose();\n this._selectionListener = this._editor.onDidChangeCursorPosition(() => {\n var _a;\n if (!this._ignoreSelection) {\n (_a = this._selectionListener) === null || _a === void 0 ? void 0 : _a.dispose();\n this._state = undefined;\n }\n });\n });\n }\n if (!this._state) {\n // no state\n return;\n }\n this._state = this._state.map(state => state.mov(forward));\n const newSelections = this._state.map(state => _common_core_selection_js__WEBPACK_IMPORTED_MODULE_6__.Selection.fromPositions(state.ranges[state.index].getStartPosition(), state.ranges[state.index].getEndPosition()));\n this._ignoreSelection = true;\n try {\n this._editor.setSelections(newSelections);\n }\n finally {\n this._ignoreSelection = false;\n }\n }\n};\nSmartSelectController.ID = 'editor.contrib.smartSelectController';\nSmartSelectController = SmartSelectController_1 = __decorate([\n __param(1, _common_services_languageFeatures_js__WEBPACK_IMPORTED_MODULE_13__.ILanguageFeaturesService)\n], SmartSelectController);\n\nclass AbstractSmartSelect extends _browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_3__.EditorAction {\n constructor(forward, opts) {\n super(opts);\n this._forward = forward;\n }\n async run(_accessor, editor) {\n const controller = SmartSelectController.get(editor);\n if (controller) {\n await controller.run(this._forward);\n }\n }\n}\nclass GrowSelectionAction extends AbstractSmartSelect {\n constructor() {\n super(true, {\n id: 'editor.action.smartSelect.expand',\n label: _nls_js__WEBPACK_IMPORTED_MODULE_10__.localize('smartSelect.expand', \"Expand Selection\"),\n alias: 'Expand Selection',\n precondition: undefined,\n kbOpts: {\n kbExpr: _common_editorContextKeys_js__WEBPACK_IMPORTED_MODULE_7__.EditorContextKeys.editorTextFocus,\n primary: 1024 /* KeyMod.Shift */ | 512 /* KeyMod.Alt */ | 17 /* KeyCode.RightArrow */,\n mac: {\n primary: 2048 /* KeyMod.CtrlCmd */ | 256 /* KeyMod.WinCtrl */ | 1024 /* KeyMod.Shift */ | 17 /* KeyCode.RightArrow */,\n secondary: [256 /* KeyMod.WinCtrl */ | 1024 /* KeyMod.Shift */ | 17 /* KeyCode.RightArrow */],\n },\n weight: 100 /* KeybindingWeight.EditorContrib */\n },\n menuOpts: {\n menuId: _platform_actions_common_actions_js__WEBPACK_IMPORTED_MODULE_11__.MenuId.MenubarSelectionMenu,\n group: '1_basic',\n title: _nls_js__WEBPACK_IMPORTED_MODULE_10__.localize({ key: 'miSmartSelectGrow', comment: ['&& denotes a mnemonic'] }, \"&&Expand Selection\"),\n order: 2\n }\n });\n }\n}\n// renamed command id\n_platform_commands_common_commands_js__WEBPACK_IMPORTED_MODULE_12__.CommandsRegistry.registerCommandAlias('editor.action.smartSelect.grow', 'editor.action.smartSelect.expand');\nclass ShrinkSelectionAction extends AbstractSmartSelect {\n constructor() {\n super(false, {\n id: 'editor.action.smartSelect.shrink',\n label: _nls_js__WEBPACK_IMPORTED_MODULE_10__.localize('smartSelect.shrink', \"Shrink Selection\"),\n alias: 'Shrink Selection',\n precondition: undefined,\n kbOpts: {\n kbExpr: _common_editorContextKeys_js__WEBPACK_IMPORTED_MODULE_7__.EditorContextKeys.editorTextFocus,\n primary: 1024 /* KeyMod.Shift */ | 512 /* KeyMod.Alt */ | 15 /* KeyCode.LeftArrow */,\n mac: {\n primary: 2048 /* KeyMod.CtrlCmd */ | 256 /* KeyMod.WinCtrl */ | 1024 /* KeyMod.Shift */ | 15 /* KeyCode.LeftArrow */,\n secondary: [256 /* KeyMod.WinCtrl */ | 1024 /* KeyMod.Shift */ | 15 /* KeyCode.LeftArrow */],\n },\n weight: 100 /* KeybindingWeight.EditorContrib */\n },\n menuOpts: {\n menuId: _platform_actions_common_actions_js__WEBPACK_IMPORTED_MODULE_11__.MenuId.MenubarSelectionMenu,\n group: '1_basic',\n title: _nls_js__WEBPACK_IMPORTED_MODULE_10__.localize({ key: 'miSmartSelectShrink', comment: ['&& denotes a mnemonic'] }, \"&&Shrink Selection\"),\n order: 3\n }\n });\n }\n}\n(0,_browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_3__.registerEditorContribution)(SmartSelectController.ID, SmartSelectController, 4 /* EditorContributionInstantiation.Lazy */);\n(0,_browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_3__.registerEditorAction)(GrowSelectionAction);\n(0,_browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_3__.registerEditorAction)(ShrinkSelectionAction);\nasync function provideSelectionRanges(registry, model, positions, options, token) {\n const providers = registry.all(model)\n .concat(new _wordSelections_js__WEBPACK_IMPORTED_MODULE_9__.WordSelectionRangeProvider(options.selectSubwords)); // ALWAYS have word based selection range\n if (providers.length === 1) {\n // add word selection and bracket selection when no provider exists\n providers.unshift(new _bracketSelections_js__WEBPACK_IMPORTED_MODULE_8__.BracketSelectionRangeProvider());\n }\n const work = [];\n const allRawRanges = [];\n for (const provider of providers) {\n work.push(Promise.resolve(provider.provideSelectionRanges(model, positions, token)).then(allProviderRanges => {\n if (_base_common_arrays_js__WEBPACK_IMPORTED_MODULE_0__.isNonEmptyArray(allProviderRanges) && allProviderRanges.length === positions.length) {\n for (let i = 0; i < positions.length; i++) {\n if (!allRawRanges[i]) {\n allRawRanges[i] = [];\n }\n for (const oneProviderRanges of allProviderRanges[i]) {\n if (_common_core_range_js__WEBPACK_IMPORTED_MODULE_5__.Range.isIRange(oneProviderRanges.range) && _common_core_range_js__WEBPACK_IMPORTED_MODULE_5__.Range.containsPosition(oneProviderRanges.range, positions[i])) {\n allRawRanges[i].push(_common_core_range_js__WEBPACK_IMPORTED_MODULE_5__.Range.lift(oneProviderRanges.range));\n }\n }\n }\n }\n }, _base_common_errors_js__WEBPACK_IMPORTED_MODULE_2__.onUnexpectedExternalError));\n }\n await Promise.all(work);\n return allRawRanges.map(oneRawRanges => {\n if (oneRawRanges.length === 0) {\n return [];\n }\n // sort all by start/end position\n oneRawRanges.sort((a, b) => {\n if (_common_core_position_js__WEBPACK_IMPORTED_MODULE_4__.Position.isBefore(a.getStartPosition(), b.getStartPosition())) {\n return 1;\n }\n else if (_common_core_position_js__WEBPACK_IMPORTED_MODULE_4__.Position.isBefore(b.getStartPosition(), a.getStartPosition())) {\n return -1;\n }\n else if (_common_core_position_js__WEBPACK_IMPORTED_MODULE_4__.Position.isBefore(a.getEndPosition(), b.getEndPosition())) {\n return -1;\n }\n else if (_common_core_position_js__WEBPACK_IMPORTED_MODULE_4__.Position.isBefore(b.getEndPosition(), a.getEndPosition())) {\n return 1;\n }\n else {\n return 0;\n }\n });\n // remove ranges that don't contain the former range or that are equal to the\n // former range\n const oneRanges = [];\n let last;\n for (const range of oneRawRanges) {\n if (!last || (_common_core_range_js__WEBPACK_IMPORTED_MODULE_5__.Range.containsRange(range, last) && !_common_core_range_js__WEBPACK_IMPORTED_MODULE_5__.Range.equalsRange(range, last))) {\n oneRanges.push(range);\n last = range;\n }\n }\n if (!options.selectLeadingAndTrailingWhitespace) {\n return oneRanges;\n }\n // add ranges that expand trivia at line starts and ends whenever a range\n // wraps onto the a new line\n const oneRangesWithTrivia = [oneRanges[0]];\n for (let i = 1; i < oneRanges.length; i++) {\n const prev = oneRanges[i - 1];\n const cur = oneRanges[i];\n if (cur.startLineNumber !== prev.startLineNumber || cur.endLineNumber !== prev.endLineNumber) {\n // add line/block range without leading/failing whitespace\n const rangeNoWhitespace = new _common_core_range_js__WEBPACK_IMPORTED_MODULE_5__.Range(prev.startLineNumber, model.getLineFirstNonWhitespaceColumn(prev.startLineNumber), prev.endLineNumber, model.getLineLastNonWhitespaceColumn(prev.endLineNumber));\n if (rangeNoWhitespace.containsRange(prev) && !rangeNoWhitespace.equalsRange(prev) && cur.containsRange(rangeNoWhitespace) && !cur.equalsRange(rangeNoWhitespace)) {\n oneRangesWithTrivia.push(rangeNoWhitespace);\n }\n // add line/block range\n const rangeFull = new _common_core_range_js__WEBPACK_IMPORTED_MODULE_5__.Range(prev.startLineNumber, 1, prev.endLineNumber, model.getLineMaxColumn(prev.endLineNumber));\n if (rangeFull.containsRange(prev) && !rangeFull.equalsRange(rangeNoWhitespace) && cur.containsRange(rangeFull) && !cur.equalsRange(rangeFull)) {\n oneRangesWithTrivia.push(rangeFull);\n }\n }\n oneRangesWithTrivia.push(cur);\n }\n return oneRangesWithTrivia;\n });\n}\n_platform_commands_common_commands_js__WEBPACK_IMPORTED_MODULE_12__.CommandsRegistry.registerCommand('_executeSelectionRangeProvider', async function (accessor, ...args) {\n const [resource, positions] = args;\n (0,_base_common_types_js__WEBPACK_IMPORTED_MODULE_15__.assertType)(_base_common_uri_js__WEBPACK_IMPORTED_MODULE_16__.URI.isUri(resource));\n const registry = accessor.get(_common_services_languageFeatures_js__WEBPACK_IMPORTED_MODULE_13__.ILanguageFeaturesService).selectionRangeProvider;\n const reference = await accessor.get(_common_services_resolverService_js__WEBPACK_IMPORTED_MODULE_14__.ITextModelService).createModelReference(resource);\n try {\n return provideSelectionRanges(registry, reference.object.textEditorModel, positions, { selectLeadingAndTrailingWhitespace: true, selectSubwords: true }, _base_common_cancellation_js__WEBPACK_IMPORTED_MODULE_1__.CancellationToken.None);\n }\n finally {\n reference.dispose();\n }\n});\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/contrib/smartSelect/browser/smartSelect.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/contrib/smartSelect/browser/wordSelections.js":
/*!************************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/contrib/smartSelect/browser/wordSelections.js ***!
\************************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ WordSelectionRangeProvider: () => (/* binding */ WordSelectionRangeProvider)\n/* harmony export */ });\n/* harmony import */ var _base_common_strings_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../../base/common/strings.js */ \"./node_modules/monaco-editor/esm/vs/base/common/strings.js\");\n/* harmony import */ var _common_core_range_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../common/core/range.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/core/range.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n\nclass WordSelectionRangeProvider {\n constructor(selectSubwords = true) {\n this.selectSubwords = selectSubwords;\n }\n provideSelectionRanges(model, positions) {\n const result = [];\n for (const position of positions) {\n const bucket = [];\n result.push(bucket);\n if (this.selectSubwords) {\n this._addInWordRanges(bucket, model, position);\n }\n this._addWordRanges(bucket, model, position);\n this._addWhitespaceLine(bucket, model, position);\n bucket.push({ range: model.getFullModelRange() });\n }\n return result;\n }\n _addInWordRanges(bucket, model, pos) {\n const obj = model.getWordAtPosition(pos);\n if (!obj) {\n return;\n }\n const { word, startColumn } = obj;\n const offset = pos.column - startColumn;\n let start = offset;\n let end = offset;\n let lastCh = 0;\n // LEFT anchor (start)\n for (; start >= 0; start--) {\n const ch = word.charCodeAt(start);\n if ((start !== offset) && (ch === 95 /* CharCode.Underline */ || ch === 45 /* CharCode.Dash */)) {\n // foo-bar OR foo_bar\n break;\n }\n else if ((0,_base_common_strings_js__WEBPACK_IMPORTED_MODULE_0__.isLowerAsciiLetter)(ch) && (0,_base_common_strings_js__WEBPACK_IMPORTED_MODULE_0__.isUpperAsciiLetter)(lastCh)) {\n // fooBar\n break;\n }\n lastCh = ch;\n }\n start += 1;\n // RIGHT anchor (end)\n for (; end < word.length; end++) {\n const ch = word.charCodeAt(end);\n if ((0,_base_common_strings_js__WEBPACK_IMPORTED_MODULE_0__.isUpperAsciiLetter)(ch) && (0,_base_common_strings_js__WEBPACK_IMPORTED_MODULE_0__.isLowerAsciiLetter)(lastCh)) {\n // fooBar\n break;\n }\n else if (ch === 95 /* CharCode.Underline */ || ch === 45 /* CharCode.Dash */) {\n // foo-bar OR foo_bar\n break;\n }\n lastCh = ch;\n }\n if (start < end) {\n bucket.push({ range: new _common_core_range_js__WEBPACK_IMPORTED_MODULE_1__.Range(pos.lineNumber, startColumn + start, pos.lineNumber, startColumn + end) });\n }\n }\n _addWordRanges(bucket, model, pos) {\n const word = model.getWordAtPosition(pos);\n if (word) {\n bucket.push({ range: new _common_core_range_js__WEBPACK_IMPORTED_MODULE_1__.Range(pos.lineNumber, word.startColumn, pos.lineNumber, word.endColumn) });\n }\n }\n _addWhitespaceLine(bucket, model, pos) {\n if (model.getLineLength(pos.lineNumber) > 0\n && model.getLineFirstNonWhitespaceColumn(pos.lineNumber) === 0\n && model.getLineLastNonWhitespaceColumn(pos.lineNumber) === 0) {\n bucket.push({ range: new _common_core_range_js__WEBPACK_IMPORTED_MODULE_1__.Range(pos.lineNumber, 1, pos.lineNumber, model.getLineMaxColumn(pos.lineNumber)) });\n }\n }\n}\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/contrib/smartSelect/browser/wordSelections.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/contrib/snippet/browser/snippetController2.js":
/*!************************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/contrib/snippet/browser/snippetController2.js ***!
\************************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ SnippetController2: () => (/* binding */ SnippetController2)\n/* harmony export */ });\n/* harmony import */ var _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../../base/common/lifecycle.js */ \"./node_modules/monaco-editor/esm/vs/base/common/lifecycle.js\");\n/* harmony import */ var _base_common_types_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../base/common/types.js */ \"./node_modules/monaco-editor/esm/vs/base/common/types.js\");\n/* harmony import */ var _browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../browser/editorExtensions.js */ \"./node_modules/monaco-editor/esm/vs/editor/browser/editorExtensions.js\");\n/* harmony import */ var _common_core_position_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../../common/core/position.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/core/position.js\");\n/* harmony import */ var _common_editorContextKeys_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../../common/editorContextKeys.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/editorContextKeys.js\");\n/* harmony import */ var _common_languages_languageConfigurationRegistry_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../../../common/languages/languageConfigurationRegistry.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/languages/languageConfigurationRegistry.js\");\n/* harmony import */ var _common_services_languageFeatures_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../../../common/services/languageFeatures.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/services/languageFeatures.js\");\n/* harmony import */ var _suggest_browser_suggest_js__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ../../suggest/browser/suggest.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/suggest/browser/suggest.js\");\n/* harmony import */ var _nls_js__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ../../../../nls.js */ \"./node_modules/monaco-editor/esm/vs/nls.js\");\n/* harmony import */ var _platform_contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ../../../../platform/contextkey/common/contextkey.js */ \"./node_modules/monaco-editor/esm/vs/platform/contextkey/common/contextkey.js\");\n/* harmony import */ var _platform_log_common_log_js__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! ../../../../platform/log/common/log.js */ \"./node_modules/monaco-editor/esm/vs/platform/log/common/log.js\");\n/* harmony import */ var _snippetSession_js__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(/*! ./snippetSession.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/snippet/browser/snippetSession.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\nvar __decorate = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\n return c > 3 && r && Object.defineProperty(target, key, r), r;\n};\nvar __param = (undefined && undefined.__param) || function (paramIndex, decorator) {\n return function (target, key) { decorator(target, key, paramIndex); }\n};\nvar SnippetController2_1;\n\n\n\n\n\n\n\n\n\n\n\n\nconst _defaultOptions = {\n overwriteBefore: 0,\n overwriteAfter: 0,\n undoStopBefore: true,\n undoStopAfter: true,\n adjustWhitespace: true,\n clipboardText: undefined,\n overtypingCapturer: undefined\n};\nlet SnippetController2 = SnippetController2_1 = class SnippetController2 {\n static get(editor) {\n return editor.getContribution(SnippetController2_1.ID);\n }\n constructor(_editor, _logService, _languageFeaturesService, contextKeyService, _languageConfigurationService) {\n this._editor = _editor;\n this._logService = _logService;\n this._languageFeaturesService = _languageFeaturesService;\n this._languageConfigurationService = _languageConfigurationService;\n this._snippetListener = new _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_0__.DisposableStore();\n this._modelVersionId = -1;\n this._inSnippet = SnippetController2_1.InSnippetMode.bindTo(contextKeyService);\n this._hasNextTabstop = SnippetController2_1.HasNextTabstop.bindTo(contextKeyService);\n this._hasPrevTabstop = SnippetController2_1.HasPrevTabstop.bindTo(contextKeyService);\n }\n dispose() {\n var _a;\n this._inSnippet.reset();\n this._hasPrevTabstop.reset();\n this._hasNextTabstop.reset();\n (_a = this._session) === null || _a === void 0 ? void 0 : _a.dispose();\n this._snippetListener.dispose();\n }\n insert(template, opts) {\n // this is here to find out more about the yet-not-understood\n // error that sometimes happens when we fail to inserted a nested\n // snippet\n try {\n this._doInsert(template, typeof opts === 'undefined' ? _defaultOptions : { ..._defaultOptions, ...opts });\n }\n catch (e) {\n this.cancel();\n this._logService.error(e);\n this._logService.error('snippet_error');\n this._logService.error('insert_template=', template);\n this._logService.error('existing_template=', this._session ? this._session._logInfo() : '');\n }\n }\n _doInsert(template, opts) {\n var _a;\n if (!this._editor.hasModel()) {\n return;\n }\n // don't listen while inserting the snippet\n // as that is the inflight state causing cancelation\n this._snippetListener.clear();\n if (opts.undoStopBefore) {\n this._editor.getModel().pushStackElement();\n }\n // don't merge\n if (this._session && typeof template !== 'string') {\n this.cancel();\n }\n if (!this._session) {\n this._modelVersionId = this._editor.getModel().getAlternativeVersionId();\n this._session = new _snippetSession_js__WEBPACK_IMPORTED_MODULE_11__.SnippetSession(this._editor, template, opts, this._languageConfigurationService);\n this._session.insert();\n }\n else {\n (0,_base_common_types_js__WEBPACK_IMPORTED_MODULE_1__.assertType)(typeof template === 'string');\n this._session.merge(template, opts);\n }\n if (opts.undoStopAfter) {\n this._editor.getModel().pushStackElement();\n }\n // regster completion item provider when there is any choice element\n if ((_a = this._session) === null || _a === void 0 ? void 0 : _a.hasChoice) {\n const provider = {\n _debugDisplayName: 'snippetChoiceCompletions',\n provideCompletionItems: (model, position) => {\n if (!this._session || model !== this._editor.getModel() || !_common_core_position_js__WEBPACK_IMPORTED_MODULE_3__.Position.equals(this._editor.getPosition(), position)) {\n return undefined;\n }\n const { activeChoice } = this._session;\n if (!activeChoice || activeChoice.choice.options.length === 0) {\n return undefined;\n }\n const word = model.getValueInRange(activeChoice.range);\n const isAnyOfOptions = Boolean(activeChoice.choice.options.find(o => o.value === word));\n const suggestions = [];\n for (let i = 0; i < activeChoice.choice.options.length; i++) {\n const option = activeChoice.choice.options[i];\n suggestions.push({\n kind: 13 /* CompletionItemKind.Value */,\n label: option.value,\n insertText: option.value,\n sortText: 'a'.repeat(i + 1),\n range: activeChoice.range,\n filterText: isAnyOfOptions ? `${word}_${option.value}` : undefined,\n command: { id: 'jumpToNextSnippetPlaceholder', title: (0,_nls_js__WEBPACK_IMPORTED_MODULE_8__.localize)('next', 'Go to next placeholder...') }\n });\n }\n return { suggestions };\n }\n };\n const model = this._editor.getModel();\n let registration;\n let isRegistered = false;\n const disable = () => {\n registration === null || registration === void 0 ? void 0 : registration.dispose();\n isRegistered = false;\n };\n const enable = () => {\n if (!isRegistered) {\n registration = this._languageFeaturesService.completionProvider.register({\n language: model.getLanguageId(),\n pattern: model.uri.fsPath,\n scheme: model.uri.scheme,\n exclusive: true\n }, provider);\n this._snippetListener.add(registration);\n isRegistered = true;\n }\n };\n this._choiceCompletions = { provider, enable, disable };\n }\n this._updateState();\n this._snippetListener.add(this._editor.onDidChangeModelContent(e => e.isFlush && this.cancel()));\n this._snippetListener.add(this._editor.onDidChangeModel(() => this.cancel()));\n this._snippetListener.add(this._editor.onDidChangeCursorSelection(() => this._updateState()));\n }\n _updateState() {\n if (!this._session || !this._editor.hasModel()) {\n // canceled in the meanwhile\n return;\n }\n if (this._modelVersionId === this._editor.getModel().getAlternativeVersionId()) {\n // undo until the 'before' state happened\n // and makes use cancel snippet mode\n return this.cancel();\n }\n if (!this._session.hasPlaceholder) {\n // don't listen for selection changes and don't\n // update context keys when the snippet is plain text\n return this.cancel();\n }\n if (this._session.isAtLastPlaceholder || !this._session.isSelectionWithinPlaceholders()) {\n this._editor.getModel().pushStackElement();\n return this.cancel();\n }\n this._inSnippet.set(true);\n this._hasPrevTabstop.set(!this._session.isAtFirstPlaceholder);\n this._hasNextTabstop.set(!this._session.isAtLastPlaceholder);\n this._handleChoice();\n }\n _handleChoice() {\n var _a;\n if (!this._session || !this._editor.hasModel()) {\n this._currentChoice = undefined;\n return;\n }\n const { activeChoice } = this._session;\n if (!activeChoice || !this._choiceCompletions) {\n (_a = this._choiceCompletions) === null || _a === void 0 ? void 0 : _a.disable();\n this._currentChoice = undefined;\n return;\n }\n if (this._currentChoice !== activeChoice.choice) {\n this._currentChoice = activeChoice.choice;\n this._choiceCompletions.enable();\n // trigger suggest with the special choice completion provider\n queueMicrotask(() => {\n (0,_suggest_browser_suggest_js__WEBPACK_IMPORTED_MODULE_7__.showSimpleSuggestions)(this._editor, this._choiceCompletions.provider);\n });\n }\n }\n finish() {\n while (this._inSnippet.get()) {\n this.next();\n }\n }\n cancel(resetSelection = false) {\n var _a;\n this._inSnippet.reset();\n this._hasPrevTabstop.reset();\n this._hasNextTabstop.reset();\n this._snippetListener.clear();\n this._currentChoice = undefined;\n (_a = this._session) === null || _a === void 0 ? void 0 : _a.dispose();\n this._session = undefined;\n this._modelVersionId = -1;\n if (resetSelection) {\n // reset selection to the primary cursor when being asked\n // for. this happens when explicitly cancelling snippet mode,\n // e.g. when pressing ESC\n this._editor.setSelections([this._editor.getSelection()]);\n }\n }\n prev() {\n var _a;\n (_a = this._session) === null || _a === void 0 ? void 0 : _a.prev();\n this._updateState();\n }\n next() {\n var _a;\n (_a = this._session) === null || _a === void 0 ? void 0 : _a.next();\n this._updateState();\n }\n isInSnippet() {\n return Boolean(this._inSnippet.get());\n }\n};\nSnippetController2.ID = 'snippetController2';\nSnippetController2.InSnippetMode = new _platform_contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_9__.RawContextKey('inSnippetMode', false, (0,_nls_js__WEBPACK_IMPORTED_MODULE_8__.localize)('inSnippetMode', \"Whether the editor in current in snippet mode\"));\nSnippetController2.HasNextTabstop = new _platform_contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_9__.RawContextKey('hasNextTabstop', false, (0,_nls_js__WEBPACK_IMPORTED_MODULE_8__.localize)('hasNextTabstop', \"Whether there is a next tab stop when in snippet mode\"));\nSnippetController2.HasPrevTabstop = new _platform_contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_9__.RawContextKey('hasPrevTabstop', false, (0,_nls_js__WEBPACK_IMPORTED_MODULE_8__.localize)('hasPrevTabstop', \"Whether there is a previous tab stop when in snippet mode\"));\nSnippetController2 = SnippetController2_1 = __decorate([\n __param(1, _platform_log_common_log_js__WEBPACK_IMPORTED_MODULE_10__.ILogService),\n __param(2, _common_services_languageFeatures_js__WEBPACK_IMPORTED_MODULE_6__.ILanguageFeaturesService),\n __param(3, _platform_contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_9__.IContextKeyService),\n __param(4, _common_languages_languageConfigurationRegistry_js__WEBPACK_IMPORTED_MODULE_5__.ILanguageConfigurationService)\n], SnippetController2);\n\n(0,_browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_2__.registerEditorContribution)(SnippetController2.ID, SnippetController2, 4 /* EditorContributionInstantiation.Lazy */);\nconst CommandCtor = _browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_2__.EditorCommand.bindToContribution(SnippetController2.get);\n(0,_browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_2__.registerEditorCommand)(new CommandCtor({\n id: 'jumpToNextSnippetPlaceholder',\n precondition: _platform_contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_9__.ContextKeyExpr.and(SnippetController2.InSnippetMode, SnippetController2.HasNextTabstop),\n handler: ctrl => ctrl.next(),\n kbOpts: {\n weight: 100 /* KeybindingWeight.EditorContrib */ + 30,\n kbExpr: _common_editorContextKeys_js__WEBPACK_IMPORTED_MODULE_4__.EditorContextKeys.editorTextFocus,\n primary: 2 /* KeyCode.Tab */\n }\n}));\n(0,_browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_2__.registerEditorCommand)(new CommandCtor({\n id: 'jumpToPrevSnippetPlaceholder',\n precondition: _platform_contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_9__.ContextKeyExpr.and(SnippetController2.InSnippetMode, SnippetController2.HasPrevTabstop),\n handler: ctrl => ctrl.prev(),\n kbOpts: {\n weight: 100 /* KeybindingWeight.EditorContrib */ + 30,\n kbExpr: _common_editorContextKeys_js__WEBPACK_IMPORTED_MODULE_4__.EditorContextKeys.editorTextFocus,\n primary: 1024 /* KeyMod.Shift */ | 2 /* KeyCode.Tab */\n }\n}));\n(0,_browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_2__.registerEditorCommand)(new CommandCtor({\n id: 'leaveSnippet',\n precondition: SnippetController2.InSnippetMode,\n handler: ctrl => ctrl.cancel(true),\n kbOpts: {\n weight: 100 /* KeybindingWeight.EditorContrib */ + 30,\n kbExpr: _common_editorContextKeys_js__WEBPACK_IMPORTED_MODULE_4__.EditorContextKeys.editorTextFocus,\n primary: 9 /* KeyCode.Escape */,\n secondary: [1024 /* KeyMod.Shift */ | 9 /* KeyCode.Escape */]\n }\n}));\n(0,_browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_2__.registerEditorCommand)(new CommandCtor({\n id: 'acceptSnippet',\n precondition: SnippetController2.InSnippetMode,\n handler: ctrl => ctrl.finish(),\n // kbOpts: {\n // \tweight: KeybindingWeight.EditorContrib + 30,\n // \tkbExpr: EditorContextKeys.textFocus,\n // \tprimary: KeyCode.Enter,\n // }\n}));\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/contrib/snippet/browser/snippetController2.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/contrib/snippet/browser/snippetParser.js":
/*!*******************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/contrib/snippet/browser/snippetParser.js ***!
\*******************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ Choice: () => (/* binding */ Choice),\n/* harmony export */ FormatString: () => (/* binding */ FormatString),\n/* harmony export */ Marker: () => (/* binding */ Marker),\n/* harmony export */ Placeholder: () => (/* binding */ Placeholder),\n/* harmony export */ Scanner: () => (/* binding */ Scanner),\n/* harmony export */ SnippetParser: () => (/* binding */ SnippetParser),\n/* harmony export */ Text: () => (/* binding */ Text),\n/* harmony export */ TextmateSnippet: () => (/* binding */ TextmateSnippet),\n/* harmony export */ Transform: () => (/* binding */ Transform),\n/* harmony export */ TransformableMarker: () => (/* binding */ TransformableMarker),\n/* harmony export */ Variable: () => (/* binding */ Variable)\n/* harmony export */ });\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\nclass Scanner {\n constructor() {\n this.value = '';\n this.pos = 0;\n }\n static isDigitCharacter(ch) {\n return ch >= 48 /* CharCode.Digit0 */ && ch <= 57 /* CharCode.Digit9 */;\n }\n static isVariableCharacter(ch) {\n return ch === 95 /* CharCode.Underline */\n || (ch >= 97 /* CharCode.a */ && ch <= 122 /* CharCode.z */)\n || (ch >= 65 /* CharCode.A */ && ch <= 90 /* CharCode.Z */);\n }\n text(value) {\n this.value = value;\n this.pos = 0;\n }\n tokenText(token) {\n return this.value.substr(token.pos, token.len);\n }\n next() {\n if (this.pos >= this.value.length) {\n return { type: 14 /* TokenType.EOF */, pos: this.pos, len: 0 };\n }\n const pos = this.pos;\n let len = 0;\n let ch = this.value.charCodeAt(pos);\n let type;\n // static types\n type = Scanner._table[ch];\n if (typeof type === 'number') {\n this.pos += 1;\n return { type, pos, len: 1 };\n }\n // number\n if (Scanner.isDigitCharacter(ch)) {\n type = 8 /* TokenType.Int */;\n do {\n len += 1;\n ch = this.value.charCodeAt(pos + len);\n } while (Scanner.isDigitCharacter(ch));\n this.pos += len;\n return { type, pos, len };\n }\n // variable name\n if (Scanner.isVariableCharacter(ch)) {\n type = 9 /* TokenType.VariableName */;\n do {\n ch = this.value.charCodeAt(pos + (++len));\n } while (Scanner.isVariableCharacter(ch) || Scanner.isDigitCharacter(ch));\n this.pos += len;\n return { type, pos, len };\n }\n // format\n type = 10 /* TokenType.Format */;\n do {\n len += 1;\n ch = this.value.charCodeAt(pos + len);\n } while (!isNaN(ch)\n && typeof Scanner._table[ch] === 'undefined' // not static token\n && !Scanner.isDigitCharacter(ch) // not number\n && !Scanner.isVariableCharacter(ch) // not variable\n );\n this.pos += len;\n return { type, pos, len };\n }\n}\nScanner._table = {\n [36 /* CharCode.DollarSign */]: 0 /* TokenType.Dollar */,\n [58 /* CharCode.Colon */]: 1 /* TokenType.Colon */,\n [44 /* CharCode.Comma */]: 2 /* TokenType.Comma */,\n [123 /* CharCode.OpenCurlyBrace */]: 3 /* TokenType.CurlyOpen */,\n [125 /* CharCode.CloseCurlyBrace */]: 4 /* TokenType.CurlyClose */,\n [92 /* CharCode.Backslash */]: 5 /* TokenType.Backslash */,\n [47 /* CharCode.Slash */]: 6 /* TokenType.Forwardslash */,\n [124 /* CharCode.Pipe */]: 7 /* TokenType.Pipe */,\n [43 /* CharCode.Plus */]: 11 /* TokenType.Plus */,\n [45 /* CharCode.Dash */]: 12 /* TokenType.Dash */,\n [63 /* CharCode.QuestionMark */]: 13 /* TokenType.QuestionMark */,\n};\nclass Marker {\n constructor() {\n this._children = [];\n }\n appendChild(child) {\n if (child instanceof Text && this._children[this._children.length - 1] instanceof Text) {\n // this and previous child are text -> merge them\n this._children[this._children.length - 1].value += child.value;\n }\n else {\n // normal adoption of child\n child.parent = this;\n this._children.push(child);\n }\n return this;\n }\n replace(child, others) {\n const { parent } = child;\n const idx = parent.children.indexOf(child);\n const newChildren = parent.children.slice(0);\n newChildren.splice(idx, 1, ...others);\n parent._children = newChildren;\n (function _fixParent(children, parent) {\n for (const child of children) {\n child.parent = parent;\n _fixParent(child.children, child);\n }\n })(others, parent);\n }\n get children() {\n return this._children;\n }\n get rightMostDescendant() {\n if (this._children.length > 0) {\n return this._children[this._children.length - 1].rightMostDescendant;\n }\n return this;\n }\n get snippet() {\n let candidate = this;\n while (true) {\n if (!candidate) {\n return undefined;\n }\n if (candidate instanceof TextmateSnippet) {\n return candidate;\n }\n candidate = candidate.parent;\n }\n }\n toString() {\n return this.children.reduce((prev, cur) => prev + cur.toString(), '');\n }\n len() {\n return 0;\n }\n}\nclass Text extends Marker {\n constructor(value) {\n super();\n this.value = value;\n }\n toString() {\n return this.value;\n }\n len() {\n return this.value.length;\n }\n clone() {\n return new Text(this.value);\n }\n}\nclass TransformableMarker extends Marker {\n}\nclass Placeholder extends TransformableMarker {\n static compareByIndex(a, b) {\n if (a.index === b.index) {\n return 0;\n }\n else if (a.isFinalTabstop) {\n return 1;\n }\n else if (b.isFinalTabstop) {\n return -1;\n }\n else if (a.index < b.index) {\n return -1;\n }\n else if (a.index > b.index) {\n return 1;\n }\n else {\n return 0;\n }\n }\n constructor(index) {\n super();\n this.index = index;\n }\n get isFinalTabstop() {\n return this.index === 0;\n }\n get choice() {\n return this._children.length === 1 && this._children[0] instanceof Choice\n ? this._children[0]\n : undefined;\n }\n clone() {\n const ret = new Placeholder(this.index);\n if (this.transform) {\n ret.transform = this.transform.clone();\n }\n ret._children = this.children.map(child => child.clone());\n return ret;\n }\n}\nclass Choice extends Marker {\n constructor() {\n super(...arguments);\n this.options = [];\n }\n appendChild(marker) {\n if (marker instanceof Text) {\n marker.parent = this;\n this.options.push(marker);\n }\n return this;\n }\n toString() {\n return this.options[0].value;\n }\n len() {\n return this.options[0].len();\n }\n clone() {\n const ret = new Choice();\n this.options.forEach(ret.appendChild, ret);\n return ret;\n }\n}\nclass Transform extends Marker {\n constructor() {\n super(...arguments);\n this.regexp = new RegExp('');\n }\n resolve(value) {\n const _this = this;\n let didMatch = false;\n let ret = value.replace(this.regexp, function () {\n didMatch = true;\n return _this._replace(Array.prototype.slice.call(arguments, 0, -2));\n });\n // when the regex didn't match and when the transform has\n // else branches, then run those\n if (!didMatch && this._children.some(child => child instanceof FormatString && Boolean(child.elseValue))) {\n ret = this._replace([]);\n }\n return ret;\n }\n _replace(groups) {\n let ret = '';\n for (const marker of this._children) {\n if (marker instanceof FormatString) {\n let value = groups[marker.index] || '';\n value = marker.resolve(value);\n ret += value;\n }\n else {\n ret += marker.toString();\n }\n }\n return ret;\n }\n toString() {\n return '';\n }\n clone() {\n const ret = new Transform();\n ret.regexp = new RegExp(this.regexp.source, '' + (this.regexp.ignoreCase ? 'i' : '') + (this.regexp.global ? 'g' : ''));\n ret._children = this.children.map(child => child.clone());\n return ret;\n }\n}\nclass FormatString extends Marker {\n constructor(index, shorthandName, ifValue, elseValue) {\n super();\n this.index = index;\n this.shorthandName = shorthandName;\n this.ifValue = ifValue;\n this.elseValue = elseValue;\n }\n resolve(value) {\n if (this.shorthandName === 'upcase') {\n return !value ? '' : value.toLocaleUpperCase();\n }\n else if (this.shorthandName === 'downcase') {\n return !value ? '' : value.toLocaleLowerCase();\n }\n else if (this.shorthandName === 'capitalize') {\n return !value ? '' : (value[0].toLocaleUpperCase() + value.substr(1));\n }\n else if (this.shorthandName === 'pascalcase') {\n return !value ? '' : this._toPascalCase(value);\n }\n else if (this.shorthandName === 'camelcase') {\n return !value ? '' : this._toCamelCase(value);\n }\n else if (Boolean(value) && typeof this.ifValue === 'string') {\n return this.ifValue;\n }\n else if (!Boolean(value) && typeof this.elseValue === 'string') {\n return this.elseValue;\n }\n else {\n return value || '';\n }\n }\n _toPascalCase(value) {\n const match = value.match(/[a-z0-9]+/gi);\n if (!match) {\n return value;\n }\n return match.map(word => {\n return word.charAt(0).toUpperCase() + word.substr(1);\n })\n .join('');\n }\n _toCamelCase(value) {\n const match = value.match(/[a-z0-9]+/gi);\n if (!match) {\n return value;\n }\n return match.map((word, index) => {\n if (index === 0) {\n return word.charAt(0).toLowerCase() + word.substr(1);\n }\n return word.charAt(0).toUpperCase() + word.substr(1);\n })\n .join('');\n }\n clone() {\n const ret = new FormatString(this.index, this.shorthandName, this.ifValue, this.elseValue);\n return ret;\n }\n}\nclass Variable extends TransformableMarker {\n constructor(name) {\n super();\n this.name = name;\n }\n resolve(resolver) {\n let value = resolver.resolve(this);\n if (this.transform) {\n value = this.transform.resolve(value || '');\n }\n if (value !== undefined) {\n this._children = [new Text(value)];\n return true;\n }\n return false;\n }\n clone() {\n const ret = new Variable(this.name);\n if (this.transform) {\n ret.transform = this.transform.clone();\n }\n ret._children = this.children.map(child => child.clone());\n return ret;\n }\n}\nfunction walk(marker, visitor) {\n const stack = [...marker];\n while (stack.length > 0) {\n const marker = stack.shift();\n const recurse = visitor(marker);\n if (!recurse) {\n break;\n }\n stack.unshift(...marker.children);\n }\n}\nclass TextmateSnippet extends Marker {\n get placeholderInfo() {\n if (!this._placeholders) {\n // fill in placeholders\n const all = [];\n let last;\n this.walk(function (candidate) {\n if (candidate instanceof Placeholder) {\n all.push(candidate);\n last = !last || last.index < candidate.index ? candidate : last;\n }\n return true;\n });\n this._placeholders = { all, last };\n }\n return this._placeholders;\n }\n get placeholders() {\n const { all } = this.placeholderInfo;\n return all;\n }\n offset(marker) {\n let pos = 0;\n let found = false;\n this.walk(candidate => {\n if (candidate === marker) {\n found = true;\n return false;\n }\n pos += candidate.len();\n return true;\n });\n if (!found) {\n return -1;\n }\n return pos;\n }\n fullLen(marker) {\n let ret = 0;\n walk([marker], marker => {\n ret += marker.len();\n return true;\n });\n return ret;\n }\n enclosingPlaceholders(placeholder) {\n const ret = [];\n let { parent } = placeholder;\n while (parent) {\n if (parent instanceof Placeholder) {\n ret.push(parent);\n }\n parent = parent.parent;\n }\n return ret;\n }\n resolveVariables(resolver) {\n this.walk(candidate => {\n if (candidate instanceof Variable) {\n if (candidate.resolve(resolver)) {\n this._placeholders = undefined;\n }\n }\n return true;\n });\n return this;\n }\n appendChild(child) {\n this._placeholders = undefined;\n return super.appendChild(child);\n }\n replace(child, others) {\n this._placeholders = undefined;\n return super.replace(child, others);\n }\n clone() {\n const ret = new TextmateSnippet();\n this._children = this.children.map(child => child.clone());\n return ret;\n }\n walk(visitor) {\n walk(this.children, visitor);\n }\n}\nclass SnippetParser {\n constructor() {\n this._scanner = new Scanner();\n this._token = { type: 14 /* TokenType.EOF */, pos: 0, len: 0 };\n }\n static escape(value) {\n return value.replace(/\\$|}|\\\\/g, '\\\\$&');\n }\n static guessNeedsClipboard(template) {\n return /\\${?CLIPBOARD/.test(template);\n }\n parse(value, insertFinalTabstop, enforceFinalTabstop) {\n const snippet = new TextmateSnippet();\n this.parseFragment(value, snippet);\n this.ensureFinalTabstop(snippet, enforceFinalTabstop !== null && enforceFinalTabstop !== void 0 ? enforceFinalTabstop : false, insertFinalTabstop !== null && insertFinalTabstop !== void 0 ? insertFinalTabstop : false);\n return snippet;\n }\n parseFragment(value, snippet) {\n const offset = snippet.children.length;\n this._scanner.text(value);\n this._token = this._scanner.next();\n while (this._parse(snippet)) {\n // nothing\n }\n // fill in values for placeholders. the first placeholder of an index\n // that has a value defines the value for all placeholders with that index\n const placeholderDefaultValues = new Map();\n const incompletePlaceholders = [];\n snippet.walk(marker => {\n if (marker instanceof Placeholder) {\n if (marker.isFinalTabstop) {\n placeholderDefaultValues.set(0, undefined);\n }\n else if (!placeholderDefaultValues.has(marker.index) && marker.children.length > 0) {\n placeholderDefaultValues.set(marker.index, marker.children);\n }\n else {\n incompletePlaceholders.push(marker);\n }\n }\n return true;\n });\n const fillInIncompletePlaceholder = (placeholder, stack) => {\n const defaultValues = placeholderDefaultValues.get(placeholder.index);\n if (!defaultValues) {\n return;\n }\n const clone = new Placeholder(placeholder.index);\n clone.transform = placeholder.transform;\n for (const child of defaultValues) {\n const newChild = child.clone();\n clone.appendChild(newChild);\n // \"recurse\" on children that are again placeholders\n if (newChild instanceof Placeholder && placeholderDefaultValues.has(newChild.index) && !stack.has(newChild.index)) {\n stack.add(newChild.index);\n fillInIncompletePlaceholder(newChild, stack);\n stack.delete(newChild.index);\n }\n }\n snippet.replace(placeholder, [clone]);\n };\n const stack = new Set();\n for (const placeholder of incompletePlaceholders) {\n fillInIncompletePlaceholder(placeholder, stack);\n }\n return snippet.children.slice(offset);\n }\n ensureFinalTabstop(snippet, enforceFinalTabstop, insertFinalTabstop) {\n if (enforceFinalTabstop || insertFinalTabstop && snippet.placeholders.length > 0) {\n const finalTabstop = snippet.placeholders.find(p => p.index === 0);\n if (!finalTabstop) {\n // the snippet uses placeholders but has no\n // final tabstop defined -> insert at the end\n snippet.appendChild(new Placeholder(0));\n }\n }\n }\n _accept(type, value) {\n if (type === undefined || this._token.type === type) {\n const ret = !value ? true : this._scanner.tokenText(this._token);\n this._token = this._scanner.next();\n return ret;\n }\n return false;\n }\n _backTo(token) {\n this._scanner.pos = token.pos + token.len;\n this._token = token;\n return false;\n }\n _until(type) {\n const start = this._token;\n while (this._token.type !== type) {\n if (this._token.type === 14 /* TokenType.EOF */) {\n return false;\n }\n else if (this._token.type === 5 /* TokenType.Backslash */) {\n const nextToken = this._scanner.next();\n if (nextToken.type !== 0 /* TokenType.Dollar */\n && nextToken.type !== 4 /* TokenType.CurlyClose */\n && nextToken.type !== 5 /* TokenType.Backslash */) {\n return false;\n }\n }\n this._token = this._scanner.next();\n }\n const value = this._scanner.value.substring(start.pos, this._token.pos).replace(/\\\\(\\$|}|\\\\)/g, '$1');\n this._token = this._scanner.next();\n return value;\n }\n _parse(marker) {\n return this._parseEscaped(marker)\n || this._parseTabstopOrVariableName(marker)\n || this._parseComplexPlaceholder(marker)\n || this._parseComplexVariable(marker)\n || this._parseAnything(marker);\n }\n // \\$, \\\\, \\} -> just text\n _parseEscaped(marker) {\n let value;\n if (value = this._accept(5 /* TokenType.Backslash */, true)) {\n // saw a backslash, append escaped token or that backslash\n value = this._accept(0 /* TokenType.Dollar */, true)\n || this._accept(4 /* TokenType.CurlyClose */, true)\n || this._accept(5 /* TokenType.Backslash */, true)\n || value;\n marker.appendChild(new Text(value));\n return true;\n }\n return false;\n }\n // $foo -> variable, $1 -> tabstop\n _parseTabstopOrVariableName(parent) {\n let value;\n const token = this._token;\n const match = this._accept(0 /* TokenType.Dollar */)\n && (value = this._accept(9 /* TokenType.VariableName */, true) || this._accept(8 /* TokenType.Int */, true));\n if (!match) {\n return this._backTo(token);\n }\n parent.appendChild(/^\\d+$/.test(value)\n ? new Placeholder(Number(value))\n : new Variable(value));\n return true;\n }\n // ${1:}, ${1} -> placeholder\n _parseComplexPlaceholder(parent) {\n let index;\n const token = this._token;\n const match = this._accept(0 /* TokenType.Dollar */)\n && this._accept(3 /* TokenType.CurlyOpen */)\n && (index = this._accept(8 /* TokenType.Int */, true));\n if (!match) {\n return this._backTo(token);\n }\n const placeholder = new Placeholder(Number(index));\n if (this._accept(1 /* TokenType.Colon */)) {\n // ${1:}\n while (true) {\n // ...} -> done\n if (this._accept(4 /* TokenType.CurlyClose */)) {\n parent.appendChild(placeholder);\n return true;\n }\n if (this._parse(placeholder)) {\n continue;\n }\n // fallback\n parent.appendChild(new Text('${' + index + ':'));\n placeholder.children.forEach(parent.appendChild, parent);\n return true;\n }\n }\n else if (placeholder.index > 0 && this._accept(7 /* TokenType.Pipe */)) {\n // ${1|one,two,three|}\n const choice = new Choice();\n while (true) {\n if (this._parseChoiceElement(choice)) {\n if (this._accept(2 /* TokenType.Comma */)) {\n // opt, -> more\n continue;\n }\n if (this._accept(7 /* TokenType.Pipe */)) {\n placeholder.appendChild(choice);\n if (this._accept(4 /* TokenType.CurlyClose */)) {\n // ..|} -> done\n parent.appendChild(placeholder);\n return true;\n }\n }\n }\n this._backTo(token);\n return false;\n }\n }\n else if (this._accept(6 /* TokenType.Forwardslash */)) {\n // ${1///}\n if (this._parseTransform(placeholder)) {\n parent.appendChild(placeholder);\n return true;\n }\n this._backTo(token);\n return false;\n }\n else if (this._accept(4 /* TokenType.CurlyClose */)) {\n // ${1}\n parent.appendChild(placeholder);\n return true;\n }\n else {\n // ${1 <- missing curly or colon\n return this._backTo(token);\n }\n }\n _parseChoiceElement(parent) {\n const token = this._token;\n const values = [];\n while (true) {\n if (this._token.type === 2 /* TokenType.Comma */ || this._token.type === 7 /* TokenType.Pipe */) {\n break;\n }\n let value;\n if (value = this._accept(5 /* TokenType.Backslash */, true)) {\n // \\, \\|, or \\\\\n value = this._accept(2 /* TokenType.Comma */, true)\n || this._accept(7 /* TokenType.Pipe */, true)\n || this._accept(5 /* TokenType.Backslash */, true)\n || value;\n }\n else {\n value = this._accept(undefined, true);\n }\n if (!value) {\n // EOF\n this._backTo(token);\n return false;\n }\n values.push(value);\n }\n if (values.length === 0) {\n this._backTo(token);\n return false;\n }\n parent.appendChild(new Text(values.join('')));\n return true;\n }\n // ${foo:}, ${foo} -> variable\n _parseComplexVariable(parent) {\n let name;\n const token = this._token;\n const match = this._accept(0 /* TokenType.Dollar */)\n && this._accept(3 /* TokenType.CurlyOpen */)\n && (name = this._accept(9 /* TokenType.VariableName */, true));\n if (!match) {\n return this._backTo(token);\n }\n const variable = new Variable(name);\n if (this._accept(1 /* TokenType.Colon */)) {\n // ${foo:}\n while (true) {\n // ...} -> done\n if (this._accept(4 /* TokenType.CurlyClose */)) {\n parent.appendChild(variable);\n return true;\n }\n if (this._parse(variable)) {\n continue;\n }\n // fallback\n parent.appendChild(new Text('${' + name + ':'));\n variable.children.forEach(parent.appendChild, parent);\n return true;\n }\n }\n else if (this._accept(6 /* TokenType.Forwardslash */)) {\n // ${foo///}\n if (this._parseTransform(variable)) {\n parent.appendChild(variable);\n return true;\n }\n this._backTo(token);\n return false;\n }\n else if (this._accept(4 /* TokenType.CurlyClose */)) {\n // ${foo}\n parent.appendChild(variable);\n return true;\n }\n else {\n // ${foo <- missing curly or colon\n return this._backTo(token);\n }\n }\n _parseTransform(parent) {\n // ...//}\n const transform = new Transform();\n let regexValue = '';\n let regexOptions = '';\n // (1) /regex\n while (true) {\n if (this._accept(6 /* TokenType.Forwardslash */)) {\n break;\n }\n let escaped;\n if (escaped = this._accept(5 /* TokenType.Backslash */, true)) {\n escaped = this._accept(6 /* TokenType.Forwardslash */, true) || escaped;\n regexValue += escaped;\n continue;\n }\n if (this._token.type !== 14 /* TokenType.EOF */) {\n regexValue += this._accept(undefined, true);\n continue;\n }\n return false;\n }\n // (2) /format\n while (true) {\n if (this._accept(6 /* TokenType.Forwardslash */)) {\n break;\n }\n let escaped;\n if (escaped = this._accept(5 /* TokenType.Backslash */, true)) {\n escaped = this._accept(5 /* TokenType.Backslash */, true) || this._accept(6 /* TokenType.Forwardslash */, true) || escaped;\n transform.appendChild(new Text(escaped));\n continue;\n }\n if (this._parseFormatString(transform) || this._parseAnything(transform)) {\n continue;\n }\n return false;\n }\n // (3) /option\n while (true) {\n if (this._accept(4 /* TokenType.CurlyClose */)) {\n break;\n }\n if (this._token.type !== 14 /* TokenType.EOF */) {\n regexOptions += this._accept(undefined, true);\n continue;\n }\n return false;\n }\n try {\n transform.regexp = new RegExp(regexValue, regexOptions);\n }\n catch (e) {\n // invalid regexp\n return false;\n }\n parent.transform = transform;\n return true;\n }\n _parseFormatString(parent) {\n const token = this._token;\n if (!this._accept(0 /* TokenType.Dollar */)) {\n return false;\n }\n let complex = false;\n if (this._accept(3 /* TokenType.CurlyOpen */)) {\n complex = true;\n }\n const index = this._accept(8 /* TokenType.Int */, true);\n if (!index) {\n this._backTo(token);\n return false;\n }\n else if (!complex) {\n // $1\n parent.appendChild(new FormatString(Number(index)));\n return true;\n }\n else if (this._accept(4 /* TokenType.CurlyClose */)) {\n // ${1}\n parent.appendChild(new FormatString(Number(index)));\n return true;\n }\n else if (!this._accept(1 /* TokenType.Colon */)) {\n this._backTo(token);\n return false;\n }\n if (this._accept(6 /* TokenType.Forwardslash */)) {\n // ${1:/upcase}\n const shorthand = this._accept(9 /* TokenType.VariableName */, true);\n if (!shorthand || !this._accept(4 /* TokenType.CurlyClose */)) {\n this._backTo(token);\n return false;\n }\n else {\n parent.appendChild(new FormatString(Number(index), shorthand));\n return true;\n }\n }\n else if (this._accept(11 /* TokenType.Plus */)) {\n // ${1:+}\n const ifValue = this._until(4 /* TokenType.CurlyClose */);\n if (ifValue) {\n parent.appendChild(new FormatString(Number(index), undefined, ifValue, undefined));\n return true;\n }\n }\n else if (this._accept(12 /* TokenType.Dash */)) {\n // ${2:-}\n const elseValue = this._until(4 /* TokenType.CurlyClose */);\n if (elseValue) {\n parent.appendChild(new FormatString(Number(index), undefined, undefined, elseValue));\n return true;\n }\n }\n else if (this._accept(13 /* TokenType.QuestionMark */)) {\n // ${2:?:}\n const ifValue = this._until(1 /* TokenType.Colon */);\n if (ifValue) {\n const elseValue = this._until(4 /* TokenType.CurlyClose */);\n if (elseValue) {\n parent.appendChild(new FormatString(Number(index), undefined, ifValue, elseValue));\n return true;\n }\n }\n }\n else {\n // ${1:}\n const elseValue = this._until(4 /* TokenType.CurlyClose */);\n if (elseValue) {\n parent.appendChild(new FormatString(Number(index), undefined, undefined, elseValue));\n return true;\n }\n }\n this._backTo(token);\n return false;\n }\n _parseAnything(marker) {\n if (this._token.type !== 14 /* TokenType.EOF */) {\n marker.appendChild(new Text(this._scanner.tokenText(this._token)));\n this._accept(undefined);\n return true;\n }\n return false;\n }\n}\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/contrib/snippet/browser/snippetParser.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/contrib/snippet/browser/snippetSession.js":
/*!********************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/contrib/snippet/browser/snippetSession.js ***!
\********************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ OneSnippet: () => (/* binding */ OneSnippet),\n/* harmony export */ SnippetSession: () => (/* binding */ SnippetSession)\n/* harmony export */ });\n/* harmony import */ var _base_common_arrays_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../../base/common/arrays.js */ \"./node_modules/monaco-editor/esm/vs/base/common/arrays.js\");\n/* harmony import */ var _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../base/common/lifecycle.js */ \"./node_modules/monaco-editor/esm/vs/base/common/lifecycle.js\");\n/* harmony import */ var _base_common_strings_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../../base/common/strings.js */ \"./node_modules/monaco-editor/esm/vs/base/common/strings.js\");\n/* harmony import */ var _snippetSession_css__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./snippetSession.css */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/snippet/browser/snippetSession.css\");\n/* harmony import */ var _common_core_editOperation_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../../common/core/editOperation.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/core/editOperation.js\");\n/* harmony import */ var _common_core_range_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../../../common/core/range.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/core/range.js\");\n/* harmony import */ var _common_core_selection_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../../../common/core/selection.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/core/selection.js\");\n/* harmony import */ var _common_languages_languageConfigurationRegistry_js__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ../../../common/languages/languageConfigurationRegistry.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/languages/languageConfigurationRegistry.js\");\n/* harmony import */ var _common_model_textModel_js__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ../../../common/model/textModel.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/model/textModel.js\");\n/* harmony import */ var _platform_label_common_label_js__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ../../../../platform/label/common/label.js */ \"./node_modules/monaco-editor/esm/vs/platform/label/common/label.js\");\n/* harmony import */ var _platform_workspace_common_workspace_js__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! ../../../../platform/workspace/common/workspace.js */ \"./node_modules/monaco-editor/esm/vs/platform/workspace/common/workspace.js\");\n/* harmony import */ var _snippetParser_js__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(/*! ./snippetParser.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/snippet/browser/snippetParser.js\");\n/* harmony import */ var _snippetVariables_js__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(/*! ./snippetVariables.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/snippet/browser/snippetVariables.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\nvar __decorate = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\n return c > 3 && r && Object.defineProperty(target, key, r), r;\n};\nvar __param = (undefined && undefined.__param) || function (paramIndex, decorator) {\n return function (target, key) { decorator(target, key, paramIndex); }\n};\nvar SnippetSession_1;\n\n\n\n\n\n\n\n\n\n\n\n\n\nclass OneSnippet {\n constructor(_editor, _snippet, _snippetLineLeadingWhitespace) {\n this._editor = _editor;\n this._snippet = _snippet;\n this._snippetLineLeadingWhitespace = _snippetLineLeadingWhitespace;\n this._offset = -1;\n this._nestingLevel = 1;\n this._placeholderGroups = (0,_base_common_arrays_js__WEBPACK_IMPORTED_MODULE_0__.groupBy)(_snippet.placeholders, _snippetParser_js__WEBPACK_IMPORTED_MODULE_11__.Placeholder.compareByIndex);\n this._placeholderGroupsIdx = -1;\n }\n initialize(textChange) {\n this._offset = textChange.newPosition;\n }\n dispose() {\n if (this._placeholderDecorations) {\n this._editor.removeDecorations([...this._placeholderDecorations.values()]);\n }\n this._placeholderGroups.length = 0;\n }\n _initDecorations() {\n if (this._offset === -1) {\n throw new Error(`Snippet not initialized!`);\n }\n if (this._placeholderDecorations) {\n // already initialized\n return;\n }\n this._placeholderDecorations = new Map();\n const model = this._editor.getModel();\n this._editor.changeDecorations(accessor => {\n // create a decoration for each placeholder\n for (const placeholder of this._snippet.placeholders) {\n const placeholderOffset = this._snippet.offset(placeholder);\n const placeholderLen = this._snippet.fullLen(placeholder);\n const range = _common_core_range_js__WEBPACK_IMPORTED_MODULE_5__.Range.fromPositions(model.getPositionAt(this._offset + placeholderOffset), model.getPositionAt(this._offset + placeholderOffset + placeholderLen));\n const options = placeholder.isFinalTabstop ? OneSnippet._decor.inactiveFinal : OneSnippet._decor.inactive;\n const handle = accessor.addDecoration(range, options);\n this._placeholderDecorations.set(placeholder, handle);\n }\n });\n }\n move(fwd) {\n if (!this._editor.hasModel()) {\n return [];\n }\n this._initDecorations();\n // Transform placeholder text if necessary\n if (this._placeholderGroupsIdx >= 0) {\n const operations = [];\n for (const placeholder of this._placeholderGroups[this._placeholderGroupsIdx]) {\n // Check if the placeholder has a transformation\n if (placeholder.transform) {\n const id = this._placeholderDecorations.get(placeholder);\n const range = this._editor.getModel().getDecorationRange(id);\n const currentValue = this._editor.getModel().getValueInRange(range);\n const transformedValueLines = placeholder.transform.resolve(currentValue).split(/\\r\\n|\\r|\\n/);\n // fix indentation for transformed lines\n for (let i = 1; i < transformedValueLines.length; i++) {\n transformedValueLines[i] = this._editor.getModel().normalizeIndentation(this._snippetLineLeadingWhitespace + transformedValueLines[i]);\n }\n operations.push(_common_core_editOperation_js__WEBPACK_IMPORTED_MODULE_4__.EditOperation.replace(range, transformedValueLines.join(this._editor.getModel().getEOL())));\n }\n }\n if (operations.length > 0) {\n this._editor.executeEdits('snippet.placeholderTransform', operations);\n }\n }\n let couldSkipThisPlaceholder = false;\n if (fwd === true && this._placeholderGroupsIdx < this._placeholderGroups.length - 1) {\n this._placeholderGroupsIdx += 1;\n couldSkipThisPlaceholder = true;\n }\n else if (fwd === false && this._placeholderGroupsIdx > 0) {\n this._placeholderGroupsIdx -= 1;\n couldSkipThisPlaceholder = true;\n }\n else {\n // the selection of the current placeholder might\n // not acurate any more -> simply restore it\n }\n const newSelections = this._editor.getModel().changeDecorations(accessor => {\n const activePlaceholders = new Set();\n // change stickiness to always grow when typing at its edges\n // because these decorations represent the currently active\n // tabstop.\n // Special case #1: reaching the final tabstop\n // Special case #2: placeholders enclosing active placeholders\n const selections = [];\n for (const placeholder of this._placeholderGroups[this._placeholderGroupsIdx]) {\n const id = this._placeholderDecorations.get(placeholder);\n const range = this._editor.getModel().getDecorationRange(id);\n selections.push(new _common_core_selection_js__WEBPACK_IMPORTED_MODULE_6__.Selection(range.startLineNumber, range.startColumn, range.endLineNumber, range.endColumn));\n // consider to skip this placeholder index when the decoration\n // range is empty but when the placeholder wasn't. that's a strong\n // hint that the placeholder has been deleted. (all placeholder must match this)\n couldSkipThisPlaceholder = couldSkipThisPlaceholder && this._hasPlaceholderBeenCollapsed(placeholder);\n accessor.changeDecorationOptions(id, placeholder.isFinalTabstop ? OneSnippet._decor.activeFinal : OneSnippet._decor.active);\n activePlaceholders.add(placeholder);\n for (const enclosingPlaceholder of this._snippet.enclosingPlaceholders(placeholder)) {\n const id = this._placeholderDecorations.get(enclosingPlaceholder);\n accessor.changeDecorationOptions(id, enclosingPlaceholder.isFinalTabstop ? OneSnippet._decor.activeFinal : OneSnippet._decor.active);\n activePlaceholders.add(enclosingPlaceholder);\n }\n }\n // change stickness to never grow when typing at its edges\n // so that in-active tabstops never grow\n for (const [placeholder, id] of this._placeholderDecorations) {\n if (!activePlaceholders.has(placeholder)) {\n accessor.changeDecorationOptions(id, placeholder.isFinalTabstop ? OneSnippet._decor.inactiveFinal : OneSnippet._decor.inactive);\n }\n }\n return selections;\n });\n return !couldSkipThisPlaceholder ? newSelections !== null && newSelections !== void 0 ? newSelections : [] : this.move(fwd);\n }\n _hasPlaceholderBeenCollapsed(placeholder) {\n // A placeholder is empty when it wasn't empty when authored but\n // when its tracking decoration is empty. This also applies to all\n // potential parent placeholders\n let marker = placeholder;\n while (marker) {\n if (marker instanceof _snippetParser_js__WEBPACK_IMPORTED_MODULE_11__.Placeholder) {\n const id = this._placeholderDecorations.get(marker);\n const range = this._editor.getModel().getDecorationRange(id);\n if (range.isEmpty() && marker.toString().length > 0) {\n return true;\n }\n }\n marker = marker.parent;\n }\n return false;\n }\n get isAtFirstPlaceholder() {\n return this._placeholderGroupsIdx <= 0 || this._placeholderGroups.length === 0;\n }\n get isAtLastPlaceholder() {\n return this._placeholderGroupsIdx === this._placeholderGroups.length - 1;\n }\n get hasPlaceholder() {\n return this._snippet.placeholders.length > 0;\n }\n /**\n * A snippet is trivial when it has no placeholder or only a final placeholder at\n * its very end\n */\n get isTrivialSnippet() {\n if (this._snippet.placeholders.length === 0) {\n return true;\n }\n if (this._snippet.placeholders.length === 1) {\n const [placeholder] = this._snippet.placeholders;\n if (placeholder.isFinalTabstop) {\n if (this._snippet.rightMostDescendant === placeholder) {\n return true;\n }\n }\n }\n return false;\n }\n computePossibleSelections() {\n const result = new Map();\n for (const placeholdersWithEqualIndex of this._placeholderGroups) {\n let ranges;\n for (const placeholder of placeholdersWithEqualIndex) {\n if (placeholder.isFinalTabstop) {\n // ignore those\n break;\n }\n if (!ranges) {\n ranges = [];\n result.set(placeholder.index, ranges);\n }\n const id = this._placeholderDecorations.get(placeholder);\n const range = this._editor.getModel().getDecorationRange(id);\n if (!range) {\n // one of the placeholder lost its decoration and\n // therefore we bail out and pretend the placeholder\n // (with its mirrors) doesn't exist anymore.\n result.delete(placeholder.index);\n break;\n }\n ranges.push(range);\n }\n }\n return result;\n }\n get activeChoice() {\n if (!this._placeholderDecorations) {\n return undefined;\n }\n const placeholder = this._placeholderGroups[this._placeholderGroupsIdx][0];\n if (!(placeholder === null || placeholder === void 0 ? void 0 : placeholder.choice)) {\n return undefined;\n }\n const id = this._placeholderDecorations.get(placeholder);\n if (!id) {\n return undefined;\n }\n const range = this._editor.getModel().getDecorationRange(id);\n if (!range) {\n return undefined;\n }\n return { range, choice: placeholder.choice };\n }\n get hasChoice() {\n let result = false;\n this._snippet.walk(marker => {\n result = marker instanceof _snippetParser_js__WEBPACK_IMPORTED_MODULE_11__.Choice;\n return !result;\n });\n return result;\n }\n merge(others) {\n const model = this._editor.getModel();\n this._nestingLevel *= 10;\n this._editor.changeDecorations(accessor => {\n // For each active placeholder take one snippet and merge it\n // in that the placeholder (can be many for `$1foo$1foo`). Because\n // everything is sorted by editor selection we can simply remove\n // elements from the beginning of the array\n for (const placeholder of this._placeholderGroups[this._placeholderGroupsIdx]) {\n const nested = others.shift();\n console.assert(nested._offset !== -1);\n console.assert(!nested._placeholderDecorations);\n // Massage placeholder-indicies of the nested snippet to be\n // sorted right after the insertion point. This ensures we move\n // through the placeholders in the correct order\n const indexLastPlaceholder = nested._snippet.placeholderInfo.last.index;\n for (const nestedPlaceholder of nested._snippet.placeholderInfo.all) {\n if (nestedPlaceholder.isFinalTabstop) {\n nestedPlaceholder.index = placeholder.index + ((indexLastPlaceholder + 1) / this._nestingLevel);\n }\n else {\n nestedPlaceholder.index = placeholder.index + (nestedPlaceholder.index / this._nestingLevel);\n }\n }\n this._snippet.replace(placeholder, nested._snippet.children);\n // Remove the placeholder at which position are inserting\n // the snippet and also remove its decoration.\n const id = this._placeholderDecorations.get(placeholder);\n accessor.removeDecoration(id);\n this._placeholderDecorations.delete(placeholder);\n // For each *new* placeholder we create decoration to monitor\n // how and if it grows/shrinks.\n for (const placeholder of nested._snippet.placeholders) {\n const placeholderOffset = nested._snippet.offset(placeholder);\n const placeholderLen = nested._snippet.fullLen(placeholder);\n const range = _common_core_range_js__WEBPACK_IMPORTED_MODULE_5__.Range.fromPositions(model.getPositionAt(nested._offset + placeholderOffset), model.getPositionAt(nested._offset + placeholderOffset + placeholderLen));\n const handle = accessor.addDecoration(range, OneSnippet._decor.inactive);\n this._placeholderDecorations.set(placeholder, handle);\n }\n }\n // Last, re-create the placeholder groups by sorting placeholders by their index.\n this._placeholderGroups = (0,_base_common_arrays_js__WEBPACK_IMPORTED_MODULE_0__.groupBy)(this._snippet.placeholders, _snippetParser_js__WEBPACK_IMPORTED_MODULE_11__.Placeholder.compareByIndex);\n });\n }\n}\nOneSnippet._decor = {\n active: _common_model_textModel_js__WEBPACK_IMPORTED_MODULE_8__.ModelDecorationOptions.register({ description: 'snippet-placeholder-1', stickiness: 0 /* TrackedRangeStickiness.AlwaysGrowsWhenTypingAtEdges */, className: 'snippet-placeholder' }),\n inactive: _common_model_textModel_js__WEBPACK_IMPORTED_MODULE_8__.ModelDecorationOptions.register({ description: 'snippet-placeholder-2', stickiness: 1 /* TrackedRangeStickiness.NeverGrowsWhenTypingAtEdges */, className: 'snippet-placeholder' }),\n activeFinal: _common_model_textModel_js__WEBPACK_IMPORTED_MODULE_8__.ModelDecorationOptions.register({ description: 'snippet-placeholder-3', stickiness: 1 /* TrackedRangeStickiness.NeverGrowsWhenTypingAtEdges */, className: 'finish-snippet-placeholder' }),\n inactiveFinal: _common_model_textModel_js__WEBPACK_IMPORTED_MODULE_8__.ModelDecorationOptions.register({ description: 'snippet-placeholder-4', stickiness: 1 /* TrackedRangeStickiness.NeverGrowsWhenTypingAtEdges */, className: 'finish-snippet-placeholder' }),\n};\nconst _defaultOptions = {\n overwriteBefore: 0,\n overwriteAfter: 0,\n adjustWhitespace: true,\n clipboardText: undefined,\n overtypingCapturer: undefined\n};\nlet SnippetSession = SnippetSession_1 = class SnippetSession {\n static adjustWhitespace(model, position, adjustIndentation, snippet, filter) {\n const line = model.getLineContent(position.lineNumber);\n const lineLeadingWhitespace = (0,_base_common_strings_js__WEBPACK_IMPORTED_MODULE_2__.getLeadingWhitespace)(line, 0, position.column - 1);\n // the snippet as inserted\n let snippetTextString;\n snippet.walk(marker => {\n // all text elements that are not inside choice\n if (!(marker instanceof _snippetParser_js__WEBPACK_IMPORTED_MODULE_11__.Text) || marker.parent instanceof _snippetParser_js__WEBPACK_IMPORTED_MODULE_11__.Choice) {\n return true;\n }\n // check with filter (iff provided)\n if (filter && !filter.has(marker)) {\n return true;\n }\n const lines = marker.value.split(/\\r\\n|\\r|\\n/);\n if (adjustIndentation) {\n // adjust indentation of snippet test\n // -the snippet-start doesn't get extra-indented (lineLeadingWhitespace), only normalized\n // -all N+1 lines get extra-indented and normalized\n // -the text start get extra-indented and normalized when following a linebreak\n const offset = snippet.offset(marker);\n if (offset === 0) {\n // snippet start\n lines[0] = model.normalizeIndentation(lines[0]);\n }\n else {\n // check if text start is after a linebreak\n snippetTextString = snippetTextString !== null && snippetTextString !== void 0 ? snippetTextString : snippet.toString();\n const prevChar = snippetTextString.charCodeAt(offset - 1);\n if (prevChar === 10 /* CharCode.LineFeed */ || prevChar === 13 /* CharCode.CarriageReturn */) {\n lines[0] = model.normalizeIndentation(lineLeadingWhitespace + lines[0]);\n }\n }\n for (let i = 1; i < lines.length; i++) {\n lines[i] = model.normalizeIndentation(lineLeadingWhitespace + lines[i]);\n }\n }\n const newValue = lines.join(model.getEOL());\n if (newValue !== marker.value) {\n marker.parent.replace(marker, [new _snippetParser_js__WEBPACK_IMPORTED_MODULE_11__.Text(newValue)]);\n snippetTextString = undefined;\n }\n return true;\n });\n return lineLeadingWhitespace;\n }\n static adjustSelection(model, selection, overwriteBefore, overwriteAfter) {\n if (overwriteBefore !== 0 || overwriteAfter !== 0) {\n // overwrite[Before|After] is compute using the position, not the whole\n // selection. therefore we adjust the selection around that position\n const { positionLineNumber, positionColumn } = selection;\n const positionColumnBefore = positionColumn - overwriteBefore;\n const positionColumnAfter = positionColumn + overwriteAfter;\n const range = model.validateRange({\n startLineNumber: positionLineNumber,\n startColumn: positionColumnBefore,\n endLineNumber: positionLineNumber,\n endColumn: positionColumnAfter\n });\n selection = _common_core_selection_js__WEBPACK_IMPORTED_MODULE_6__.Selection.createWithDirection(range.startLineNumber, range.startColumn, range.endLineNumber, range.endColumn, selection.getDirection());\n }\n return selection;\n }\n static createEditsAndSnippetsFromSelections(editor, template, overwriteBefore, overwriteAfter, enforceFinalTabstop, adjustWhitespace, clipboardText, overtypingCapturer, languageConfigurationService) {\n const edits = [];\n const snippets = [];\n if (!editor.hasModel()) {\n return { edits, snippets };\n }\n const model = editor.getModel();\n const workspaceService = editor.invokeWithinContext(accessor => accessor.get(_platform_workspace_common_workspace_js__WEBPACK_IMPORTED_MODULE_10__.IWorkspaceContextService));\n const modelBasedVariableResolver = editor.invokeWithinContext(accessor => new _snippetVariables_js__WEBPACK_IMPORTED_MODULE_12__.ModelBasedVariableResolver(accessor.get(_platform_label_common_label_js__WEBPACK_IMPORTED_MODULE_9__.ILabelService), model));\n const readClipboardText = () => clipboardText;\n // know what text the overwrite[Before|After] extensions\n // of the primary curser have selected because only when\n // secondary selections extend to the same text we can grow them\n const firstBeforeText = model.getValueInRange(SnippetSession_1.adjustSelection(model, editor.getSelection(), overwriteBefore, 0));\n const firstAfterText = model.getValueInRange(SnippetSession_1.adjustSelection(model, editor.getSelection(), 0, overwriteAfter));\n // remember the first non-whitespace column to decide if\n // `keepWhitespace` should be overruled for secondary selections\n const firstLineFirstNonWhitespace = model.getLineFirstNonWhitespaceColumn(editor.getSelection().positionLineNumber);\n // sort selections by their start position but remeber\n // the original index. that allows you to create correct\n // offset-based selection logic without changing the\n // primary selection\n const indexedSelections = editor.getSelections()\n .map((selection, idx) => ({ selection, idx }))\n .sort((a, b) => _common_core_range_js__WEBPACK_IMPORTED_MODULE_5__.Range.compareRangesUsingStarts(a.selection, b.selection));\n for (const { selection, idx } of indexedSelections) {\n // extend selection with the `overwriteBefore` and `overwriteAfter` and then\n // compare if this matches the extensions of the primary selection\n let extensionBefore = SnippetSession_1.adjustSelection(model, selection, overwriteBefore, 0);\n let extensionAfter = SnippetSession_1.adjustSelection(model, selection, 0, overwriteAfter);\n if (firstBeforeText !== model.getValueInRange(extensionBefore)) {\n extensionBefore = selection;\n }\n if (firstAfterText !== model.getValueInRange(extensionAfter)) {\n extensionAfter = selection;\n }\n // merge the before and after selection into one\n const snippetSelection = selection\n .setStartPosition(extensionBefore.startLineNumber, extensionBefore.startColumn)\n .setEndPosition(extensionAfter.endLineNumber, extensionAfter.endColumn);\n const snippet = new _snippetParser_js__WEBPACK_IMPORTED_MODULE_11__.SnippetParser().parse(template, true, enforceFinalTabstop);\n // adjust the template string to match the indentation and\n // whitespace rules of this insert location (can be different for each cursor)\n // happens when being asked for (default) or when this is a secondary\n // cursor and the leading whitespace is different\n const start = snippetSelection.getStartPosition();\n const snippetLineLeadingWhitespace = SnippetSession_1.adjustWhitespace(model, start, adjustWhitespace || (idx > 0 && firstLineFirstNonWhitespace !== model.getLineFirstNonWhitespaceColumn(selection.positionLineNumber)), snippet);\n snippet.resolveVariables(new _snippetVariables_js__WEBPACK_IMPORTED_MODULE_12__.CompositeSnippetVariableResolver([\n modelBasedVariableResolver,\n new _snippetVariables_js__WEBPACK_IMPORTED_MODULE_12__.ClipboardBasedVariableResolver(readClipboardText, idx, indexedSelections.length, editor.getOption(79 /* EditorOption.multiCursorPaste */) === 'spread'),\n new _snippetVariables_js__WEBPACK_IMPORTED_MODULE_12__.SelectionBasedVariableResolver(model, selection, idx, overtypingCapturer),\n new _snippetVariables_js__WEBPACK_IMPORTED_MODULE_12__.CommentBasedVariableResolver(model, selection, languageConfigurationService),\n new _snippetVariables_js__WEBPACK_IMPORTED_MODULE_12__.TimeBasedVariableResolver,\n new _snippetVariables_js__WEBPACK_IMPORTED_MODULE_12__.WorkspaceBasedVariableResolver(workspaceService),\n new _snippetVariables_js__WEBPACK_IMPORTED_MODULE_12__.RandomBasedVariableResolver,\n ]));\n // store snippets with the index of their originating selection.\n // that ensures the primiary cursor stays primary despite not being\n // the one with lowest start position\n edits[idx] = _common_core_editOperation_js__WEBPACK_IMPORTED_MODULE_4__.EditOperation.replace(snippetSelection, snippet.toString());\n edits[idx].identifier = { major: idx, minor: 0 }; // mark the edit so only our undo edits will be used to generate end cursors\n edits[idx]._isTracked = true;\n snippets[idx] = new OneSnippet(editor, snippet, snippetLineLeadingWhitespace);\n }\n return { edits, snippets };\n }\n static createEditsAndSnippetsFromEdits(editor, snippetEdits, enforceFinalTabstop, adjustWhitespace, clipboardText, overtypingCapturer, languageConfigurationService) {\n if (!editor.hasModel() || snippetEdits.length === 0) {\n return { edits: [], snippets: [] };\n }\n const edits = [];\n const model = editor.getModel();\n const parser = new _snippetParser_js__WEBPACK_IMPORTED_MODULE_11__.SnippetParser();\n const snippet = new _snippetParser_js__WEBPACK_IMPORTED_MODULE_11__.TextmateSnippet();\n // snippet variables resolver\n const resolver = new _snippetVariables_js__WEBPACK_IMPORTED_MODULE_12__.CompositeSnippetVariableResolver([\n editor.invokeWithinContext(accessor => new _snippetVariables_js__WEBPACK_IMPORTED_MODULE_12__.ModelBasedVariableResolver(accessor.get(_platform_label_common_label_js__WEBPACK_IMPORTED_MODULE_9__.ILabelService), model)),\n new _snippetVariables_js__WEBPACK_IMPORTED_MODULE_12__.ClipboardBasedVariableResolver(() => clipboardText, 0, editor.getSelections().length, editor.getOption(79 /* EditorOption.multiCursorPaste */) === 'spread'),\n new _snippetVariables_js__WEBPACK_IMPORTED_MODULE_12__.SelectionBasedVariableResolver(model, editor.getSelection(), 0, overtypingCapturer),\n new _snippetVariables_js__WEBPACK_IMPORTED_MODULE_12__.CommentBasedVariableResolver(model, editor.getSelection(), languageConfigurationService),\n new _snippetVariables_js__WEBPACK_IMPORTED_MODULE_12__.TimeBasedVariableResolver,\n new _snippetVariables_js__WEBPACK_IMPORTED_MODULE_12__.WorkspaceBasedVariableResolver(editor.invokeWithinContext(accessor => accessor.get(_platform_workspace_common_workspace_js__WEBPACK_IMPORTED_MODULE_10__.IWorkspaceContextService))),\n new _snippetVariables_js__WEBPACK_IMPORTED_MODULE_12__.RandomBasedVariableResolver,\n ]);\n //\n snippetEdits = snippetEdits.sort((a, b) => _common_core_range_js__WEBPACK_IMPORTED_MODULE_5__.Range.compareRangesUsingStarts(a.range, b.range));\n let offset = 0;\n for (let i = 0; i < snippetEdits.length; i++) {\n const { range, template } = snippetEdits[i];\n // gaps between snippet edits are appended as text nodes. this\n // ensures placeholder-offsets are later correct\n if (i > 0) {\n const lastRange = snippetEdits[i - 1].range;\n const textRange = _common_core_range_js__WEBPACK_IMPORTED_MODULE_5__.Range.fromPositions(lastRange.getEndPosition(), range.getStartPosition());\n const textNode = new _snippetParser_js__WEBPACK_IMPORTED_MODULE_11__.Text(model.getValueInRange(textRange));\n snippet.appendChild(textNode);\n offset += textNode.value.length;\n }\n const newNodes = parser.parseFragment(template, snippet);\n SnippetSession_1.adjustWhitespace(model, range.getStartPosition(), true, snippet, new Set(newNodes));\n snippet.resolveVariables(resolver);\n const snippetText = snippet.toString();\n const snippetFragmentText = snippetText.slice(offset);\n offset = snippetText.length;\n // make edit\n const edit = _common_core_editOperation_js__WEBPACK_IMPORTED_MODULE_4__.EditOperation.replace(range, snippetFragmentText);\n edit.identifier = { major: i, minor: 0 }; // mark the edit so only our undo edits will be used to generate end cursors\n edit._isTracked = true;\n edits.push(edit);\n }\n //\n parser.ensureFinalTabstop(snippet, enforceFinalTabstop, true);\n return {\n edits,\n snippets: [new OneSnippet(editor, snippet, '')]\n };\n }\n constructor(_editor, _template, _options = _defaultOptions, _languageConfigurationService) {\n this._editor = _editor;\n this._template = _template;\n this._options = _options;\n this._languageConfigurationService = _languageConfigurationService;\n this._templateMerges = [];\n this._snippets = [];\n }\n dispose() {\n (0,_base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_1__.dispose)(this._snippets);\n }\n _logInfo() {\n return `template=\"${this._template}\", merged_templates=\"${this._templateMerges.join(' -> ')}\"`;\n }\n insert() {\n if (!this._editor.hasModel()) {\n return;\n }\n // make insert edit and start with first selections\n const { edits, snippets } = typeof this._template === 'string'\n ? SnippetSession_1.createEditsAndSnippetsFromSelections(this._editor, this._template, this._options.overwriteBefore, this._options.overwriteAfter, false, this._options.adjustWhitespace, this._options.clipboardText, this._options.overtypingCapturer, this._languageConfigurationService)\n : SnippetSession_1.createEditsAndSnippetsFromEdits(this._editor, this._template, false, this._options.adjustWhitespace, this._options.clipboardText, this._options.overtypingCapturer, this._languageConfigurationService);\n this._snippets = snippets;\n this._editor.executeEdits('snippet', edits, _undoEdits => {\n // Sometimes, the text buffer will remove automatic whitespace when doing any edits,\n // so we need to look only at the undo edits relevant for us.\n // Our edits have an identifier set so that's how we can distinguish them\n const undoEdits = _undoEdits.filter(edit => !!edit.identifier);\n for (let idx = 0; idx < snippets.length; idx++) {\n snippets[idx].initialize(undoEdits[idx].textChange);\n }\n if (this._snippets[0].hasPlaceholder) {\n return this._move(true);\n }\n else {\n return undoEdits\n .map(edit => _common_core_selection_js__WEBPACK_IMPORTED_MODULE_6__.Selection.fromPositions(edit.range.getEndPosition()));\n }\n });\n this._editor.revealRange(this._editor.getSelections()[0]);\n }\n merge(template, options = _defaultOptions) {\n if (!this._editor.hasModel()) {\n return;\n }\n this._templateMerges.push([this._snippets[0]._nestingLevel, this._snippets[0]._placeholderGroupsIdx, template]);\n const { edits, snippets } = SnippetSession_1.createEditsAndSnippetsFromSelections(this._editor, template, options.overwriteBefore, options.overwriteAfter, true, options.adjustWhitespace, options.clipboardText, options.overtypingCapturer, this._languageConfigurationService);\n this._editor.executeEdits('snippet', edits, _undoEdits => {\n // Sometimes, the text buffer will remove automatic whitespace when doing any edits,\n // so we need to look only at the undo edits relevant for us.\n // Our edits have an identifier set so that's how we can distinguish them\n const undoEdits = _undoEdits.filter(edit => !!edit.identifier);\n for (let idx = 0; idx < snippets.length; idx++) {\n snippets[idx].initialize(undoEdits[idx].textChange);\n }\n // Trivial snippets have no placeholder or are just the final placeholder. That means they\n // are just text insertions and we don't need to merge the nested snippet into the existing\n // snippet\n const isTrivialSnippet = snippets[0].isTrivialSnippet;\n if (!isTrivialSnippet) {\n for (const snippet of this._snippets) {\n snippet.merge(snippets);\n }\n console.assert(snippets.length === 0);\n }\n if (this._snippets[0].hasPlaceholder && !isTrivialSnippet) {\n return this._move(undefined);\n }\n else {\n return undoEdits.map(edit => _common_core_selection_js__WEBPACK_IMPORTED_MODULE_6__.Selection.fromPositions(edit.range.getEndPosition()));\n }\n });\n }\n next() {\n const newSelections = this._move(true);\n this._editor.setSelections(newSelections);\n this._editor.revealPositionInCenterIfOutsideViewport(newSelections[0].getPosition());\n }\n prev() {\n const newSelections = this._move(false);\n this._editor.setSelections(newSelections);\n this._editor.revealPositionInCenterIfOutsideViewport(newSelections[0].getPosition());\n }\n _move(fwd) {\n const selections = [];\n for (const snippet of this._snippets) {\n const oneSelection = snippet.move(fwd);\n selections.push(...oneSelection);\n }\n return selections;\n }\n get isAtFirstPlaceholder() {\n return this._snippets[0].isAtFirstPlaceholder;\n }\n get isAtLastPlaceholder() {\n return this._snippets[0].isAtLastPlaceholder;\n }\n get hasPlaceholder() {\n return this._snippets[0].hasPlaceholder;\n }\n get hasChoice() {\n return this._snippets[0].hasChoice;\n }\n get activeChoice() {\n return this._snippets[0].activeChoice;\n }\n isSelectionWithinPlaceholders() {\n if (!this.hasPlaceholder) {\n return false;\n }\n const selections = this._editor.getSelections();\n if (selections.length < this._snippets.length) {\n // this means we started snippet mode with N\n // selections and have M (N > M) selections.\n // So one snippet is without selection -> cancel\n return false;\n }\n const allPossibleSelections = new Map();\n for (const snippet of this._snippets) {\n const possibleSelections = snippet.computePossibleSelections();\n // for the first snippet find the placeholder (and its ranges)\n // that contain at least one selection. for all remaining snippets\n // the same placeholder (and their ranges) must be used.\n if (allPossibleSelections.size === 0) {\n for (const [index, ranges] of possibleSelections) {\n ranges.sort(_common_core_range_js__WEBPACK_IMPORTED_MODULE_5__.Range.compareRangesUsingStarts);\n for (const selection of selections) {\n if (ranges[0].containsRange(selection)) {\n allPossibleSelections.set(index, []);\n break;\n }\n }\n }\n }\n if (allPossibleSelections.size === 0) {\n // return false if we couldn't associate a selection to\n // this (the first) snippet\n return false;\n }\n // add selections from 'this' snippet so that we know all\n // selections for this placeholder\n allPossibleSelections.forEach((array, index) => {\n array.push(...possibleSelections.get(index));\n });\n }\n // sort selections (and later placeholder-ranges). then walk both\n // arrays and make sure the placeholder-ranges contain the corresponding\n // selection\n selections.sort(_common_core_range_js__WEBPACK_IMPORTED_MODULE_5__.Range.compareRangesUsingStarts);\n for (const [index, ranges] of allPossibleSelections) {\n if (ranges.length !== selections.length) {\n allPossibleSelections.delete(index);\n continue;\n }\n ranges.sort(_common_core_range_js__WEBPACK_IMPORTED_MODULE_5__.Range.compareRangesUsingStarts);\n for (let i = 0; i < ranges.length; i++) {\n if (!ranges[i].containsRange(selections[i])) {\n allPossibleSelections.delete(index);\n continue;\n }\n }\n }\n // from all possible selections we have deleted those\n // that don't match with the current selection. if we don't\n // have any left, we don't have a selection anymore\n return allPossibleSelections.size > 0;\n }\n};\nSnippetSession = SnippetSession_1 = __decorate([\n __param(3, _common_languages_languageConfigurationRegistry_js__WEBPACK_IMPORTED_MODULE_7__.ILanguageConfigurationService)\n], SnippetSession);\n\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/contrib/snippet/browser/snippetSession.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/contrib/snippet/browser/snippetVariables.js":
/*!**********************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/contrib/snippet/browser/snippetVariables.js ***!
\**********************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ ClipboardBasedVariableResolver: () => (/* binding */ ClipboardBasedVariableResolver),\n/* harmony export */ CommentBasedVariableResolver: () => (/* binding */ CommentBasedVariableResolver),\n/* harmony export */ CompositeSnippetVariableResolver: () => (/* binding */ CompositeSnippetVariableResolver),\n/* harmony export */ KnownSnippetVariableNames: () => (/* binding */ KnownSnippetVariableNames),\n/* harmony export */ ModelBasedVariableResolver: () => (/* binding */ ModelBasedVariableResolver),\n/* harmony export */ RandomBasedVariableResolver: () => (/* binding */ RandomBasedVariableResolver),\n/* harmony export */ SelectionBasedVariableResolver: () => (/* binding */ SelectionBasedVariableResolver),\n/* harmony export */ TimeBasedVariableResolver: () => (/* binding */ TimeBasedVariableResolver),\n/* harmony export */ WorkspaceBasedVariableResolver: () => (/* binding */ WorkspaceBasedVariableResolver)\n/* harmony export */ });\n/* harmony import */ var _base_common_labels_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../../base/common/labels.js */ \"./node_modules/monaco-editor/esm/vs/base/common/labels.js\");\n/* harmony import */ var _base_common_path_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../base/common/path.js */ \"./node_modules/monaco-editor/esm/vs/base/common/path.js\");\n/* harmony import */ var _base_common_resources_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../../base/common/resources.js */ \"./node_modules/monaco-editor/esm/vs/base/common/resources.js\");\n/* harmony import */ var _base_common_strings_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../../../base/common/strings.js */ \"./node_modules/monaco-editor/esm/vs/base/common/strings.js\");\n/* harmony import */ var _base_common_uuid_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../../../base/common/uuid.js */ \"./node_modules/monaco-editor/esm/vs/base/common/uuid.js\");\n/* harmony import */ var _common_languages_languageConfigurationRegistry_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../../../common/languages/languageConfigurationRegistry.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/languages/languageConfigurationRegistry.js\");\n/* harmony import */ var _snippetParser_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ./snippetParser.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/snippet/browser/snippetParser.js\");\n/* harmony import */ var _nls_js__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ../../../../nls.js */ \"./node_modules/monaco-editor/esm/vs/nls.js\");\n/* harmony import */ var _platform_workspace_common_workspace_js__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ../../../../platform/workspace/common/workspace.js */ \"./node_modules/monaco-editor/esm/vs/platform/workspace/common/workspace.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\nvar __decorate = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\n return c > 3 && r && Object.defineProperty(target, key, r), r;\n};\nvar __param = (undefined && undefined.__param) || function (paramIndex, decorator) {\n return function (target, key) { decorator(target, key, paramIndex); }\n};\n\n\n\n\n\n\n\n\n\nconst KnownSnippetVariableNames = Object.freeze({\n 'CURRENT_YEAR': true,\n 'CURRENT_YEAR_SHORT': true,\n 'CURRENT_MONTH': true,\n 'CURRENT_DATE': true,\n 'CURRENT_HOUR': true,\n 'CURRENT_MINUTE': true,\n 'CURRENT_SECOND': true,\n 'CURRENT_DAY_NAME': true,\n 'CURRENT_DAY_NAME_SHORT': true,\n 'CURRENT_MONTH_NAME': true,\n 'CURRENT_MONTH_NAME_SHORT': true,\n 'CURRENT_SECONDS_UNIX': true,\n 'CURRENT_TIMEZONE_OFFSET': true,\n 'SELECTION': true,\n 'CLIPBOARD': true,\n 'TM_SELECTED_TEXT': true,\n 'TM_CURRENT_LINE': true,\n 'TM_CURRENT_WORD': true,\n 'TM_LINE_INDEX': true,\n 'TM_LINE_NUMBER': true,\n 'TM_FILENAME': true,\n 'TM_FILENAME_BASE': true,\n 'TM_DIRECTORY': true,\n 'TM_FILEPATH': true,\n 'CURSOR_INDEX': true, // 0-offset\n 'CURSOR_NUMBER': true, // 1-offset\n 'RELATIVE_FILEPATH': true,\n 'BLOCK_COMMENT_START': true,\n 'BLOCK_COMMENT_END': true,\n 'LINE_COMMENT': true,\n 'WORKSPACE_NAME': true,\n 'WORKSPACE_FOLDER': true,\n 'RANDOM': true,\n 'RANDOM_HEX': true,\n 'UUID': true\n});\nclass CompositeSnippetVariableResolver {\n constructor(_delegates) {\n this._delegates = _delegates;\n //\n }\n resolve(variable) {\n for (const delegate of this._delegates) {\n const value = delegate.resolve(variable);\n if (value !== undefined) {\n return value;\n }\n }\n return undefined;\n }\n}\nclass SelectionBasedVariableResolver {\n constructor(_model, _selection, _selectionIdx, _overtypingCapturer) {\n this._model = _model;\n this._selection = _selection;\n this._selectionIdx = _selectionIdx;\n this._overtypingCapturer = _overtypingCapturer;\n //\n }\n resolve(variable) {\n const { name } = variable;\n if (name === 'SELECTION' || name === 'TM_SELECTED_TEXT') {\n let value = this._model.getValueInRange(this._selection) || undefined;\n let isMultiline = this._selection.startLineNumber !== this._selection.endLineNumber;\n // If there was no selected text, try to get last overtyped text\n if (!value && this._overtypingCapturer) {\n const info = this._overtypingCapturer.getLastOvertypedInfo(this._selectionIdx);\n if (info) {\n value = info.value;\n isMultiline = info.multiline;\n }\n }\n if (value && isMultiline && variable.snippet) {\n // Selection is a multiline string which we indentation we now\n // need to adjust. We compare the indentation of this variable\n // with the indentation at the editor position and add potential\n // extra indentation to the value\n const line = this._model.getLineContent(this._selection.startLineNumber);\n const lineLeadingWhitespace = (0,_base_common_strings_js__WEBPACK_IMPORTED_MODULE_3__.getLeadingWhitespace)(line, 0, this._selection.startColumn - 1);\n let varLeadingWhitespace = lineLeadingWhitespace;\n variable.snippet.walk(marker => {\n if (marker === variable) {\n return false;\n }\n if (marker instanceof _snippetParser_js__WEBPACK_IMPORTED_MODULE_6__.Text) {\n varLeadingWhitespace = (0,_base_common_strings_js__WEBPACK_IMPORTED_MODULE_3__.getLeadingWhitespace)((0,_base_common_strings_js__WEBPACK_IMPORTED_MODULE_3__.splitLines)(marker.value).pop());\n }\n return true;\n });\n const whitespaceCommonLength = (0,_base_common_strings_js__WEBPACK_IMPORTED_MODULE_3__.commonPrefixLength)(varLeadingWhitespace, lineLeadingWhitespace);\n value = value.replace(/(\\r\\n|\\r|\\n)(.*)/g, (m, newline, rest) => `${newline}${varLeadingWhitespace.substr(whitespaceCommonLength)}${rest}`);\n }\n return value;\n }\n else if (name === 'TM_CURRENT_LINE') {\n return this._model.getLineContent(this._selection.positionLineNumber);\n }\n else if (name === 'TM_CURRENT_WORD') {\n const info = this._model.getWordAtPosition({\n lineNumber: this._selection.positionLineNumber,\n column: this._selection.positionColumn\n });\n return info && info.word || undefined;\n }\n else if (name === 'TM_LINE_INDEX') {\n return String(this._selection.positionLineNumber - 1);\n }\n else if (name === 'TM_LINE_NUMBER') {\n return String(this._selection.positionLineNumber);\n }\n else if (name === 'CURSOR_INDEX') {\n return String(this._selectionIdx);\n }\n else if (name === 'CURSOR_NUMBER') {\n return String(this._selectionIdx + 1);\n }\n return undefined;\n }\n}\nclass ModelBasedVariableResolver {\n constructor(_labelService, _model) {\n this._labelService = _labelService;\n this._model = _model;\n //\n }\n resolve(variable) {\n const { name } = variable;\n if (name === 'TM_FILENAME') {\n return _base_common_path_js__WEBPACK_IMPORTED_MODULE_1__.basename(this._model.uri.fsPath);\n }\n else if (name === 'TM_FILENAME_BASE') {\n const name = _base_common_path_js__WEBPACK_IMPORTED_MODULE_1__.basename(this._model.uri.fsPath);\n const idx = name.lastIndexOf('.');\n if (idx <= 0) {\n return name;\n }\n else {\n return name.slice(0, idx);\n }\n }\n else if (name === 'TM_DIRECTORY') {\n if (_base_common_path_js__WEBPACK_IMPORTED_MODULE_1__.dirname(this._model.uri.fsPath) === '.') {\n return '';\n }\n return this._labelService.getUriLabel((0,_base_common_resources_js__WEBPACK_IMPORTED_MODULE_2__.dirname)(this._model.uri));\n }\n else if (name === 'TM_FILEPATH') {\n return this._labelService.getUriLabel(this._model.uri);\n }\n else if (name === 'RELATIVE_FILEPATH') {\n return this._labelService.getUriLabel(this._model.uri, { relative: true, noPrefix: true });\n }\n return undefined;\n }\n}\nclass ClipboardBasedVariableResolver {\n constructor(_readClipboardText, _selectionIdx, _selectionCount, _spread) {\n this._readClipboardText = _readClipboardText;\n this._selectionIdx = _selectionIdx;\n this._selectionCount = _selectionCount;\n this._spread = _spread;\n //\n }\n resolve(variable) {\n if (variable.name !== 'CLIPBOARD') {\n return undefined;\n }\n const clipboardText = this._readClipboardText();\n if (!clipboardText) {\n return undefined;\n }\n // `spread` is assigning each cursor a line of the clipboard\n // text whenever there the line count equals the cursor count\n // and when enabled\n if (this._spread) {\n const lines = clipboardText.split(/\\r\\n|\\n|\\r/).filter(s => !(0,_base_common_strings_js__WEBPACK_IMPORTED_MODULE_3__.isFalsyOrWhitespace)(s));\n if (lines.length === this._selectionCount) {\n return lines[this._selectionIdx];\n }\n }\n return clipboardText;\n }\n}\nlet CommentBasedVariableResolver = class CommentBasedVariableResolver {\n constructor(_model, _selection, _languageConfigurationService) {\n this._model = _model;\n this._selection = _selection;\n this._languageConfigurationService = _languageConfigurationService;\n //\n }\n resolve(variable) {\n const { name } = variable;\n const langId = this._model.getLanguageIdAtPosition(this._selection.selectionStartLineNumber, this._selection.selectionStartColumn);\n const config = this._languageConfigurationService.getLanguageConfiguration(langId).comments;\n if (!config) {\n return undefined;\n }\n if (name === 'LINE_COMMENT') {\n return config.lineCommentToken || undefined;\n }\n else if (name === 'BLOCK_COMMENT_START') {\n return config.blockCommentStartToken || undefined;\n }\n else if (name === 'BLOCK_COMMENT_END') {\n return config.blockCommentEndToken || undefined;\n }\n return undefined;\n }\n};\nCommentBasedVariableResolver = __decorate([\n __param(2, _common_languages_languageConfigurationRegistry_js__WEBPACK_IMPORTED_MODULE_5__.ILanguageConfigurationService)\n], CommentBasedVariableResolver);\n\nclass TimeBasedVariableResolver {\n constructor() {\n this._date = new Date();\n }\n resolve(variable) {\n const { name } = variable;\n if (name === 'CURRENT_YEAR') {\n return String(this._date.getFullYear());\n }\n else if (name === 'CURRENT_YEAR_SHORT') {\n return String(this._date.getFullYear()).slice(-2);\n }\n else if (name === 'CURRENT_MONTH') {\n return String(this._date.getMonth().valueOf() + 1).padStart(2, '0');\n }\n else if (name === 'CURRENT_DATE') {\n return String(this._date.getDate().valueOf()).padStart(2, '0');\n }\n else if (name === 'CURRENT_HOUR') {\n return String(this._date.getHours().valueOf()).padStart(2, '0');\n }\n else if (name === 'CURRENT_MINUTE') {\n return String(this._date.getMinutes().valueOf()).padStart(2, '0');\n }\n else if (name === 'CURRENT_SECOND') {\n return String(this._date.getSeconds().valueOf()).padStart(2, '0');\n }\n else if (name === 'CURRENT_DAY_NAME') {\n return TimeBasedVariableResolver.dayNames[this._date.getDay()];\n }\n else if (name === 'CURRENT_DAY_NAME_SHORT') {\n return TimeBasedVariableResolver.dayNamesShort[this._date.getDay()];\n }\n else if (name === 'CURRENT_MONTH_NAME') {\n return TimeBasedVariableResolver.monthNames[this._date.getMonth()];\n }\n else if (name === 'CURRENT_MONTH_NAME_SHORT') {\n return TimeBasedVariableResolver.monthNamesShort[this._date.getMonth()];\n }\n else if (name === 'CURRENT_SECONDS_UNIX') {\n return String(Math.floor(this._date.getTime() / 1000));\n }\n else if (name === 'CURRENT_TIMEZONE_OFFSET') {\n const rawTimeOffset = this._date.getTimezoneOffset();\n const sign = rawTimeOffset > 0 ? '-' : '+';\n const hours = Math.trunc(Math.abs(rawTimeOffset / 60));\n const hoursString = (hours < 10 ? '0' + hours : hours);\n const minutes = Math.abs(rawTimeOffset) - hours * 60;\n const minutesString = (minutes < 10 ? '0' + minutes : minutes);\n return sign + hoursString + ':' + minutesString;\n }\n return undefined;\n }\n}\nTimeBasedVariableResolver.dayNames = [_nls_js__WEBPACK_IMPORTED_MODULE_7__.localize('Sunday', \"Sunday\"), _nls_js__WEBPACK_IMPORTED_MODULE_7__.localize('Monday', \"Monday\"), _nls_js__WEBPACK_IMPORTED_MODULE_7__.localize('Tuesday', \"Tuesday\"), _nls_js__WEBPACK_IMPORTED_MODULE_7__.localize('Wednesday', \"Wednesday\"), _nls_js__WEBPACK_IMPORTED_MODULE_7__.localize('Thursday', \"Thursday\"), _nls_js__WEBPACK_IMPORTED_MODULE_7__.localize('Friday', \"Friday\"), _nls_js__WEBPACK_IMPORTED_MODULE_7__.localize('Saturday', \"Saturday\")];\nTimeBasedVariableResolver.dayNamesShort = [_nls_js__WEBPACK_IMPORTED_MODULE_7__.localize('SundayShort', \"Sun\"), _nls_js__WEBPACK_IMPORTED_MODULE_7__.localize('MondayShort', \"Mon\"), _nls_js__WEBPACK_IMPORTED_MODULE_7__.localize('TuesdayShort', \"Tue\"), _nls_js__WEBPACK_IMPORTED_MODULE_7__.localize('WednesdayShort', \"Wed\"), _nls_js__WEBPACK_IMPORTED_MODULE_7__.localize('ThursdayShort', \"Thu\"), _nls_js__WEBPACK_IMPORTED_MODULE_7__.localize('FridayShort', \"Fri\"), _nls_js__WEBPACK_IMPORTED_MODULE_7__.localize('SaturdayShort', \"Sat\")];\nTimeBasedVariableResolver.monthNames = [_nls_js__WEBPACK_IMPORTED_MODULE_7__.localize('January', \"January\"), _nls_js__WEBPACK_IMPORTED_MODULE_7__.localize('February', \"February\"), _nls_js__WEBPACK_IMPORTED_MODULE_7__.localize('March', \"March\"), _nls_js__WEBPACK_IMPORTED_MODULE_7__.localize('April', \"April\"), _nls_js__WEBPACK_IMPORTED_MODULE_7__.localize('May', \"May\"), _nls_js__WEBPACK_IMPORTED_MODULE_7__.localize('June', \"June\"), _nls_js__WEBPACK_IMPORTED_MODULE_7__.localize('July', \"July\"), _nls_js__WEBPACK_IMPORTED_MODULE_7__.localize('August', \"August\"), _nls_js__WEBPACK_IMPORTED_MODULE_7__.localize('September', \"September\"), _nls_js__WEBPACK_IMPORTED_MODULE_7__.localize('October', \"October\"), _nls_js__WEBPACK_IMPORTED_MODULE_7__.localize('November', \"November\"), _nls_js__WEBPACK_IMPORTED_MODULE_7__.localize('December', \"December\")];\nTimeBasedVariableResolver.monthNamesShort = [_nls_js__WEBPACK_IMPORTED_MODULE_7__.localize('JanuaryShort', \"Jan\"), _nls_js__WEBPACK_IMPORTED_MODULE_7__.localize('FebruaryShort', \"Feb\"), _nls_js__WEBPACK_IMPORTED_MODULE_7__.localize('MarchShort', \"Mar\"), _nls_js__WEBPACK_IMPORTED_MODULE_7__.localize('AprilShort', \"Apr\"), _nls_js__WEBPACK_IMPORTED_MODULE_7__.localize('MayShort', \"May\"), _nls_js__WEBPACK_IMPORTED_MODULE_7__.localize('JuneShort', \"Jun\"), _nls_js__WEBPACK_IMPORTED_MODULE_7__.localize('JulyShort', \"Jul\"), _nls_js__WEBPACK_IMPORTED_MODULE_7__.localize('AugustShort', \"Aug\"), _nls_js__WEBPACK_IMPORTED_MODULE_7__.localize('SeptemberShort', \"Sep\"), _nls_js__WEBPACK_IMPORTED_MODULE_7__.localize('OctoberShort', \"Oct\"), _nls_js__WEBPACK_IMPORTED_MODULE_7__.localize('NovemberShort', \"Nov\"), _nls_js__WEBPACK_IMPORTED_MODULE_7__.localize('DecemberShort', \"Dec\")];\nclass WorkspaceBasedVariableResolver {\n constructor(_workspaceService) {\n this._workspaceService = _workspaceService;\n //\n }\n resolve(variable) {\n if (!this._workspaceService) {\n return undefined;\n }\n const workspaceIdentifier = (0,_platform_workspace_common_workspace_js__WEBPACK_IMPORTED_MODULE_8__.toWorkspaceIdentifier)(this._workspaceService.getWorkspace());\n if ((0,_platform_workspace_common_workspace_js__WEBPACK_IMPORTED_MODULE_8__.isEmptyWorkspaceIdentifier)(workspaceIdentifier)) {\n return undefined;\n }\n if (variable.name === 'WORKSPACE_NAME') {\n return this._resolveWorkspaceName(workspaceIdentifier);\n }\n else if (variable.name === 'WORKSPACE_FOLDER') {\n return this._resoveWorkspacePath(workspaceIdentifier);\n }\n return undefined;\n }\n _resolveWorkspaceName(workspaceIdentifier) {\n if ((0,_platform_workspace_common_workspace_js__WEBPACK_IMPORTED_MODULE_8__.isSingleFolderWorkspaceIdentifier)(workspaceIdentifier)) {\n return _base_common_path_js__WEBPACK_IMPORTED_MODULE_1__.basename(workspaceIdentifier.uri.path);\n }\n let filename = _base_common_path_js__WEBPACK_IMPORTED_MODULE_1__.basename(workspaceIdentifier.configPath.path);\n if (filename.endsWith(_platform_workspace_common_workspace_js__WEBPACK_IMPORTED_MODULE_8__.WORKSPACE_EXTENSION)) {\n filename = filename.substr(0, filename.length - _platform_workspace_common_workspace_js__WEBPACK_IMPORTED_MODULE_8__.WORKSPACE_EXTENSION.length - 1);\n }\n return filename;\n }\n _resoveWorkspacePath(workspaceIdentifier) {\n if ((0,_platform_workspace_common_workspace_js__WEBPACK_IMPORTED_MODULE_8__.isSingleFolderWorkspaceIdentifier)(workspaceIdentifier)) {\n return (0,_base_common_labels_js__WEBPACK_IMPORTED_MODULE_0__.normalizeDriveLetter)(workspaceIdentifier.uri.fsPath);\n }\n const filename = _base_common_path_js__WEBPACK_IMPORTED_MODULE_1__.basename(workspaceIdentifier.configPath.path);\n let folderpath = workspaceIdentifier.configPath.fsPath;\n if (folderpath.endsWith(filename)) {\n folderpath = folderpath.substr(0, folderpath.length - filename.length - 1);\n }\n return (folderpath ? (0,_base_common_labels_js__WEBPACK_IMPORTED_MODULE_0__.normalizeDriveLetter)(folderpath) : '/');\n }\n}\nclass RandomBasedVariableResolver {\n resolve(variable) {\n const { name } = variable;\n if (name === 'RANDOM') {\n return Math.random().toString().slice(-6);\n }\n else if (name === 'RANDOM_HEX') {\n return Math.random().toString(16).slice(-6);\n }\n else if (name === 'UUID') {\n return (0,_base_common_uuid_js__WEBPACK_IMPORTED_MODULE_4__.generateUuid)();\n }\n return undefined;\n }\n}\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/contrib/snippet/browser/snippetVariables.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/contrib/stickyScroll/browser/stickyScrollActions.js":
/*!******************************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/contrib/stickyScroll/browser/stickyScrollActions.js ***!
\******************************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ FocusStickyScroll: () => (/* binding */ FocusStickyScroll),\n/* harmony export */ GoToStickyScrollLine: () => (/* binding */ GoToStickyScrollLine),\n/* harmony export */ SelectEditor: () => (/* binding */ SelectEditor),\n/* harmony export */ SelectNextStickyScrollLine: () => (/* binding */ SelectNextStickyScrollLine),\n/* harmony export */ SelectPreviousStickyScrollLine: () => (/* binding */ SelectPreviousStickyScrollLine),\n/* harmony export */ ToggleStickyScroll: () => (/* binding */ ToggleStickyScroll)\n/* harmony export */ });\n/* harmony import */ var _browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../browser/editorExtensions.js */ \"./node_modules/monaco-editor/esm/vs/editor/browser/editorExtensions.js\");\n/* harmony import */ var _nls_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../nls.js */ \"./node_modules/monaco-editor/esm/vs/nls.js\");\n/* harmony import */ var _platform_action_common_actionCommonCategories_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../../platform/action/common/actionCommonCategories.js */ \"./node_modules/monaco-editor/esm/vs/platform/action/common/actionCommonCategories.js\");\n/* harmony import */ var _platform_actions_common_actions_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../../../platform/actions/common/actions.js */ \"./node_modules/monaco-editor/esm/vs/platform/actions/common/actions.js\");\n/* harmony import */ var _platform_configuration_common_configuration_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../../../platform/configuration/common/configuration.js */ \"./node_modules/monaco-editor/esm/vs/platform/configuration/common/configuration.js\");\n/* harmony import */ var _platform_contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../../../../platform/contextkey/common/contextkey.js */ \"./node_modules/monaco-editor/esm/vs/platform/contextkey/common/contextkey.js\");\n/* harmony import */ var _common_editorContextKeys_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../../../common/editorContextKeys.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/editorContextKeys.js\");\n/* harmony import */ var _stickyScrollController_js__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ./stickyScrollController.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/stickyScroll/browser/stickyScrollController.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n\n\n\n\n\n\n\nclass ToggleStickyScroll extends _platform_actions_common_actions_js__WEBPACK_IMPORTED_MODULE_3__.Action2 {\n constructor() {\n super({\n id: 'editor.action.toggleStickyScroll',\n title: {\n ...(0,_nls_js__WEBPACK_IMPORTED_MODULE_1__.localize2)('toggleEditorStickyScroll', \"Toggle Editor Sticky Scroll\"),\n mnemonicTitle: (0,_nls_js__WEBPACK_IMPORTED_MODULE_1__.localize)({ key: 'mitoggleStickyScroll', comment: ['&& denotes a mnemonic'] }, \"&&Toggle Editor Sticky Scroll\"),\n },\n category: _platform_action_common_actionCommonCategories_js__WEBPACK_IMPORTED_MODULE_2__.Categories.View,\n toggled: {\n condition: _platform_contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_5__.ContextKeyExpr.equals('config.editor.stickyScroll.enabled', true),\n title: (0,_nls_js__WEBPACK_IMPORTED_MODULE_1__.localize)('stickyScroll', \"Sticky Scroll\"),\n mnemonicTitle: (0,_nls_js__WEBPACK_IMPORTED_MODULE_1__.localize)({ key: 'miStickyScroll', comment: ['&& denotes a mnemonic'] }, \"&&Sticky Scroll\"),\n },\n menu: [\n { id: _platform_actions_common_actions_js__WEBPACK_IMPORTED_MODULE_3__.MenuId.CommandPalette },\n { id: _platform_actions_common_actions_js__WEBPACK_IMPORTED_MODULE_3__.MenuId.MenubarAppearanceMenu, group: '4_editor', order: 3 },\n { id: _platform_actions_common_actions_js__WEBPACK_IMPORTED_MODULE_3__.MenuId.StickyScrollContext }\n ]\n });\n }\n async run(accessor) {\n const configurationService = accessor.get(_platform_configuration_common_configuration_js__WEBPACK_IMPORTED_MODULE_4__.IConfigurationService);\n const newValue = !configurationService.getValue('editor.stickyScroll.enabled');\n return configurationService.updateValue('editor.stickyScroll.enabled', newValue);\n }\n}\nconst weight = 100 /* KeybindingWeight.EditorContrib */;\nclass FocusStickyScroll extends _browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_0__.EditorAction2 {\n constructor() {\n super({\n id: 'editor.action.focusStickyScroll',\n title: {\n ...(0,_nls_js__WEBPACK_IMPORTED_MODULE_1__.localize2)('focusStickyScroll', \"Focus Sticky Scroll\"),\n mnemonicTitle: (0,_nls_js__WEBPACK_IMPORTED_MODULE_1__.localize)({ key: 'mifocusStickyScroll', comment: ['&& denotes a mnemonic'] }, \"&&Focus Sticky Scroll\"),\n },\n precondition: _platform_contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_5__.ContextKeyExpr.and(_platform_contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_5__.ContextKeyExpr.has('config.editor.stickyScroll.enabled'), _common_editorContextKeys_js__WEBPACK_IMPORTED_MODULE_6__.EditorContextKeys.stickyScrollVisible),\n menu: [\n { id: _platform_actions_common_actions_js__WEBPACK_IMPORTED_MODULE_3__.MenuId.CommandPalette },\n ]\n });\n }\n runEditorCommand(_accessor, editor) {\n var _a;\n (_a = _stickyScrollController_js__WEBPACK_IMPORTED_MODULE_7__.StickyScrollController.get(editor)) === null || _a === void 0 ? void 0 : _a.focus();\n }\n}\nclass SelectNextStickyScrollLine extends _browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_0__.EditorAction2 {\n constructor() {\n super({\n id: 'editor.action.selectNextStickyScrollLine',\n title: (0,_nls_js__WEBPACK_IMPORTED_MODULE_1__.localize2)('selectNextStickyScrollLine.title', \"Select next sticky scroll line\"),\n precondition: _common_editorContextKeys_js__WEBPACK_IMPORTED_MODULE_6__.EditorContextKeys.stickyScrollFocused.isEqualTo(true),\n keybinding: {\n weight,\n primary: 18 /* KeyCode.DownArrow */\n }\n });\n }\n runEditorCommand(_accessor, editor) {\n var _a;\n (_a = _stickyScrollController_js__WEBPACK_IMPORTED_MODULE_7__.StickyScrollController.get(editor)) === null || _a === void 0 ? void 0 : _a.focusNext();\n }\n}\nclass SelectPreviousStickyScrollLine extends _browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_0__.EditorAction2 {\n constructor() {\n super({\n id: 'editor.action.selectPreviousStickyScrollLine',\n title: (0,_nls_js__WEBPACK_IMPORTED_MODULE_1__.localize2)('selectPreviousStickyScrollLine.title', \"Select previous sticky scroll line\"),\n precondition: _common_editorContextKeys_js__WEBPACK_IMPORTED_MODULE_6__.EditorContextKeys.stickyScrollFocused.isEqualTo(true),\n keybinding: {\n weight,\n primary: 16 /* KeyCode.UpArrow */\n }\n });\n }\n runEditorCommand(_accessor, editor) {\n var _a;\n (_a = _stickyScrollController_js__WEBPACK_IMPORTED_MODULE_7__.StickyScrollController.get(editor)) === null || _a === void 0 ? void 0 : _a.focusPrevious();\n }\n}\nclass GoToStickyScrollLine extends _browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_0__.EditorAction2 {\n constructor() {\n super({\n id: 'editor.action.goToFocusedStickyScrollLine',\n title: (0,_nls_js__WEBPACK_IMPORTED_MODULE_1__.localize2)('goToFocusedStickyScrollLine.title', \"Go to focused sticky scroll line\"),\n precondition: _common_editorContextKeys_js__WEBPACK_IMPORTED_MODULE_6__.EditorContextKeys.stickyScrollFocused.isEqualTo(true),\n keybinding: {\n weight,\n primary: 3 /* KeyCode.Enter */\n }\n });\n }\n runEditorCommand(_accessor, editor) {\n var _a;\n (_a = _stickyScrollController_js__WEBPACK_IMPORTED_MODULE_7__.StickyScrollController.get(editor)) === null || _a === void 0 ? void 0 : _a.goToFocused();\n }\n}\nclass SelectEditor extends _browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_0__.EditorAction2 {\n constructor() {\n super({\n id: 'editor.action.selectEditor',\n title: (0,_nls_js__WEBPACK_IMPORTED_MODULE_1__.localize2)('selectEditor.title', \"Select Editor\"),\n precondition: _common_editorContextKeys_js__WEBPACK_IMPORTED_MODULE_6__.EditorContextKeys.stickyScrollFocused.isEqualTo(true),\n keybinding: {\n weight,\n primary: 9 /* KeyCode.Escape */\n }\n });\n }\n runEditorCommand(_accessor, editor) {\n var _a;\n (_a = _stickyScrollController_js__WEBPACK_IMPORTED_MODULE_7__.StickyScrollController.get(editor)) === null || _a === void 0 ? void 0 : _a.selectEditor();\n }\n}\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/contrib/stickyScroll/browser/stickyScrollActions.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/contrib/stickyScroll/browser/stickyScrollContribution.js":
/*!***********************************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/contrib/stickyScroll/browser/stickyScrollContribution.js ***!
\***********************************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var _browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../browser/editorExtensions.js */ \"./node_modules/monaco-editor/esm/vs/editor/browser/editorExtensions.js\");\n/* harmony import */ var _stickyScrollActions_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./stickyScrollActions.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/stickyScroll/browser/stickyScrollActions.js\");\n/* harmony import */ var _stickyScrollController_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./stickyScrollController.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/stickyScroll/browser/stickyScrollController.js\");\n/* harmony import */ var _platform_actions_common_actions_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../../../platform/actions/common/actions.js */ \"./node_modules/monaco-editor/esm/vs/platform/actions/common/actions.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n\n\n\n(0,_browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_0__.registerEditorContribution)(_stickyScrollController_js__WEBPACK_IMPORTED_MODULE_2__.StickyScrollController.ID, _stickyScrollController_js__WEBPACK_IMPORTED_MODULE_2__.StickyScrollController, 1 /* EditorContributionInstantiation.AfterFirstRender */);\n(0,_platform_actions_common_actions_js__WEBPACK_IMPORTED_MODULE_3__.registerAction2)(_stickyScrollActions_js__WEBPACK_IMPORTED_MODULE_1__.ToggleStickyScroll);\n(0,_platform_actions_common_actions_js__WEBPACK_IMPORTED_MODULE_3__.registerAction2)(_stickyScrollActions_js__WEBPACK_IMPORTED_MODULE_1__.FocusStickyScroll);\n(0,_platform_actions_common_actions_js__WEBPACK_IMPORTED_MODULE_3__.registerAction2)(_stickyScrollActions_js__WEBPACK_IMPORTED_MODULE_1__.SelectPreviousStickyScrollLine);\n(0,_platform_actions_common_actions_js__WEBPACK_IMPORTED_MODULE_3__.registerAction2)(_stickyScrollActions_js__WEBPACK_IMPORTED_MODULE_1__.SelectNextStickyScrollLine);\n(0,_platform_actions_common_actions_js__WEBPACK_IMPORTED_MODULE_3__.registerAction2)(_stickyScrollActions_js__WEBPACK_IMPORTED_MODULE_1__.GoToStickyScrollLine);\n(0,_platform_actions_common_actions_js__WEBPACK_IMPORTED_MODULE_3__.registerAction2)(_stickyScrollActions_js__WEBPACK_IMPORTED_MODULE_1__.SelectEditor);\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/contrib/stickyScroll/browser/stickyScrollContribution.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/contrib/stickyScroll/browser/stickyScrollController.js":
/*!*********************************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/contrib/stickyScroll/browser/stickyScrollController.js ***!
\*********************************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ StickyScrollController: () => (/* binding */ StickyScrollController)\n/* harmony export */ });\n/* harmony import */ var _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../../base/common/lifecycle.js */ \"./node_modules/monaco-editor/esm/vs/base/common/lifecycle.js\");\n/* harmony import */ var _common_services_languageFeatures_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../common/services/languageFeatures.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/services/languageFeatures.js\");\n/* harmony import */ var _stickyScrollWidget_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./stickyScrollWidget.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/stickyScroll/browser/stickyScrollWidget.js\");\n/* harmony import */ var _stickyScrollProvider_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./stickyScrollProvider.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/stickyScroll/browser/stickyScrollProvider.js\");\n/* harmony import */ var _platform_instantiation_common_instantiation_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../../../platform/instantiation/common/instantiation.js */ \"./node_modules/monaco-editor/esm/vs/platform/instantiation/common/instantiation.js\");\n/* harmony import */ var _platform_contextview_browser_contextView_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../../../../platform/contextview/browser/contextView.js */ \"./node_modules/monaco-editor/esm/vs/platform/contextview/browser/contextView.js\");\n/* harmony import */ var _platform_actions_common_actions_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../../../../platform/actions/common/actions.js */ \"./node_modules/monaco-editor/esm/vs/platform/actions/common/actions.js\");\n/* harmony import */ var _platform_contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ../../../../platform/contextkey/common/contextkey.js */ \"./node_modules/monaco-editor/esm/vs/platform/contextkey/common/contextkey.js\");\n/* harmony import */ var _common_editorContextKeys_js__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ../../../common/editorContextKeys.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/editorContextKeys.js\");\n/* harmony import */ var _gotoSymbol_browser_link_clickLinkGesture_js__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ../../gotoSymbol/browser/link/clickLinkGesture.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/gotoSymbol/browser/link/clickLinkGesture.js\");\n/* harmony import */ var _common_core_range_js__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! ../../../common/core/range.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/core/range.js\");\n/* harmony import */ var _gotoSymbol_browser_goToSymbol_js__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(/*! ../../gotoSymbol/browser/goToSymbol.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/gotoSymbol/browser/goToSymbol.js\");\n/* harmony import */ var _inlayHints_browser_inlayHintsLocations_js__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(/*! ../../inlayHints/browser/inlayHintsLocations.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/inlayHints/browser/inlayHintsLocations.js\");\n/* harmony import */ var _common_core_position_js__WEBPACK_IMPORTED_MODULE_13__ = __webpack_require__(/*! ../../../common/core/position.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/core/position.js\");\n/* harmony import */ var _base_common_cancellation_js__WEBPACK_IMPORTED_MODULE_14__ = __webpack_require__(/*! ../../../../base/common/cancellation.js */ \"./node_modules/monaco-editor/esm/vs/base/common/cancellation.js\");\n/* harmony import */ var _common_languages_languageConfigurationRegistry_js__WEBPACK_IMPORTED_MODULE_15__ = __webpack_require__(/*! ../../../common/languages/languageConfigurationRegistry.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/languages/languageConfigurationRegistry.js\");\n/* harmony import */ var _common_services_languageFeatureDebounce_js__WEBPACK_IMPORTED_MODULE_16__ = __webpack_require__(/*! ../../../common/services/languageFeatureDebounce.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/services/languageFeatureDebounce.js\");\n/* harmony import */ var _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_17__ = __webpack_require__(/*! ../../../../base/browser/dom.js */ \"./node_modules/monaco-editor/esm/vs/base/browser/dom.js\");\n/* harmony import */ var _stickyScrollElement_js__WEBPACK_IMPORTED_MODULE_18__ = __webpack_require__(/*! ./stickyScrollElement.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/stickyScroll/browser/stickyScrollElement.js\");\n/* harmony import */ var _base_browser_mouseEvent_js__WEBPACK_IMPORTED_MODULE_19__ = __webpack_require__(/*! ../../../../base/browser/mouseEvent.js */ \"./node_modules/monaco-editor/esm/vs/base/browser/mouseEvent.js\");\n/* harmony import */ var _folding_browser_folding_js__WEBPACK_IMPORTED_MODULE_20__ = __webpack_require__(/*! ../../folding/browser/folding.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/folding/browser/folding.js\");\n/* harmony import */ var _folding_browser_foldingModel_js__WEBPACK_IMPORTED_MODULE_21__ = __webpack_require__(/*! ../../folding/browser/foldingModel.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/folding/browser/foldingModel.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\nvar __decorate = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\n return c > 3 && r && Object.defineProperty(target, key, r), r;\n};\nvar __param = (undefined && undefined.__param) || function (paramIndex, decorator) {\n return function (target, key) { decorator(target, key, paramIndex); }\n};\nvar StickyScrollController_1;\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlet StickyScrollController = StickyScrollController_1 = class StickyScrollController extends _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_0__.Disposable {\n constructor(_editor, _contextMenuService, _languageFeaturesService, _instaService, _languageConfigurationService, _languageFeatureDebounceService, _contextKeyService) {\n super();\n this._editor = _editor;\n this._contextMenuService = _contextMenuService;\n this._languageFeaturesService = _languageFeaturesService;\n this._instaService = _instaService;\n this._contextKeyService = _contextKeyService;\n this._sessionStore = new _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_0__.DisposableStore();\n this._foldingModel = null;\n this._maxStickyLines = Number.MAX_SAFE_INTEGER;\n this._candidateDefinitionsLength = -1;\n this._focusedStickyElementIndex = -1;\n this._enabled = false;\n this._focused = false;\n this._positionRevealed = false;\n this._onMouseDown = false;\n this._endLineNumbers = [];\n this._showEndForLine = null;\n this._stickyScrollWidget = new _stickyScrollWidget_js__WEBPACK_IMPORTED_MODULE_2__.StickyScrollWidget(this._editor);\n this._stickyLineCandidateProvider = new _stickyScrollProvider_js__WEBPACK_IMPORTED_MODULE_3__.StickyLineCandidateProvider(this._editor, _languageFeaturesService, _languageConfigurationService);\n this._register(this._stickyScrollWidget);\n this._register(this._stickyLineCandidateProvider);\n this._widgetState = new _stickyScrollWidget_js__WEBPACK_IMPORTED_MODULE_2__.StickyScrollWidgetState([], [], 0);\n this._onDidResize();\n this._readConfiguration();\n const stickyScrollDomNode = this._stickyScrollWidget.getDomNode();\n this._register(this._editor.onDidChangeConfiguration(e => {\n if (e.hasChanged(115 /* EditorOption.stickyScroll */)\n || e.hasChanged(73 /* EditorOption.minimap */)\n || e.hasChanged(67 /* EditorOption.lineHeight */)\n || e.hasChanged(110 /* EditorOption.showFoldingControls */)) {\n this._readConfiguration();\n }\n }));\n this._register(_base_browser_dom_js__WEBPACK_IMPORTED_MODULE_17__.addDisposableListener(stickyScrollDomNode, _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_17__.EventType.CONTEXT_MENU, async (event) => {\n this._onContextMenu(_base_browser_dom_js__WEBPACK_IMPORTED_MODULE_17__.getWindow(stickyScrollDomNode), event);\n }));\n this._stickyScrollFocusedContextKey = _common_editorContextKeys_js__WEBPACK_IMPORTED_MODULE_8__.EditorContextKeys.stickyScrollFocused.bindTo(this._contextKeyService);\n this._stickyScrollVisibleContextKey = _common_editorContextKeys_js__WEBPACK_IMPORTED_MODULE_8__.EditorContextKeys.stickyScrollVisible.bindTo(this._contextKeyService);\n const focusTracker = this._register(_base_browser_dom_js__WEBPACK_IMPORTED_MODULE_17__.trackFocus(stickyScrollDomNode));\n this._register(focusTracker.onDidBlur(_ => {\n // Suppose that the blurring is caused by scrolling, then keep the focus on the sticky scroll\n // This is determined by the fact that the height of the widget has become zero and there has been no position revealing\n if (this._positionRevealed === false && stickyScrollDomNode.clientHeight === 0) {\n this._focusedStickyElementIndex = -1;\n this.focus();\n }\n // In all other casees, dispose the focus on the sticky scroll\n else {\n this._disposeFocusStickyScrollStore();\n }\n }));\n this._register(focusTracker.onDidFocus(_ => {\n this.focus();\n }));\n this._registerMouseListeners();\n // Suppose that mouse down on the sticky scroll, then do not focus on the sticky scroll because this will be followed by the revealing of a position\n this._register(_base_browser_dom_js__WEBPACK_IMPORTED_MODULE_17__.addDisposableListener(stickyScrollDomNode, _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_17__.EventType.MOUSE_DOWN, (e) => {\n this._onMouseDown = true;\n }));\n }\n static get(editor) {\n return editor.getContribution(StickyScrollController_1.ID);\n }\n _disposeFocusStickyScrollStore() {\n var _a;\n this._stickyScrollFocusedContextKey.set(false);\n (_a = this._focusDisposableStore) === null || _a === void 0 ? void 0 : _a.dispose();\n this._focused = false;\n this._positionRevealed = false;\n this._onMouseDown = false;\n }\n focus() {\n // If the mouse is down, do not focus on the sticky scroll\n if (this._onMouseDown) {\n this._onMouseDown = false;\n this._editor.focus();\n return;\n }\n const focusState = this._stickyScrollFocusedContextKey.get();\n if (focusState === true) {\n return;\n }\n this._focused = true;\n this._focusDisposableStore = new _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_0__.DisposableStore();\n this._stickyScrollFocusedContextKey.set(true);\n this._focusedStickyElementIndex = this._stickyScrollWidget.lineNumbers.length - 1;\n this._stickyScrollWidget.focusLineWithIndex(this._focusedStickyElementIndex);\n }\n focusNext() {\n if (this._focusedStickyElementIndex < this._stickyScrollWidget.lineNumberCount - 1) {\n this._focusNav(true);\n }\n }\n focusPrevious() {\n if (this._focusedStickyElementIndex > 0) {\n this._focusNav(false);\n }\n }\n selectEditor() {\n this._editor.focus();\n }\n // True is next, false is previous\n _focusNav(direction) {\n this._focusedStickyElementIndex = direction ? this._focusedStickyElementIndex + 1 : this._focusedStickyElementIndex - 1;\n this._stickyScrollWidget.focusLineWithIndex(this._focusedStickyElementIndex);\n }\n goToFocused() {\n const lineNumbers = this._stickyScrollWidget.lineNumbers;\n this._disposeFocusStickyScrollStore();\n this._revealPosition({ lineNumber: lineNumbers[this._focusedStickyElementIndex], column: 1 });\n }\n _revealPosition(position) {\n this._reveaInEditor(position, () => this._editor.revealPosition(position));\n }\n _revealLineInCenterIfOutsideViewport(position) {\n this._reveaInEditor(position, () => this._editor.revealLineInCenterIfOutsideViewport(position.lineNumber, 0 /* ScrollType.Smooth */));\n }\n _reveaInEditor(position, revealFunction) {\n if (this._focused) {\n this._disposeFocusStickyScrollStore();\n }\n this._positionRevealed = true;\n revealFunction();\n this._editor.setSelection(_common_core_range_js__WEBPACK_IMPORTED_MODULE_10__.Range.fromPositions(position));\n this._editor.focus();\n }\n _registerMouseListeners() {\n const sessionStore = this._register(new _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_0__.DisposableStore());\n const gesture = this._register(new _gotoSymbol_browser_link_clickLinkGesture_js__WEBPACK_IMPORTED_MODULE_9__.ClickLinkGesture(this._editor, {\n extractLineNumberFromMouseEvent: (e) => {\n const position = this._stickyScrollWidget.getEditorPositionFromNode(e.target.element);\n return position ? position.lineNumber : 0;\n }\n }));\n const getMouseEventTarget = (mouseEvent) => {\n if (!this._editor.hasModel()) {\n return null;\n }\n if (mouseEvent.target.type !== 12 /* MouseTargetType.OVERLAY_WIDGET */ || mouseEvent.target.detail !== this._stickyScrollWidget.getId()) {\n // not hovering over our widget\n return null;\n }\n const mouseTargetElement = mouseEvent.target.element;\n if (!mouseTargetElement || mouseTargetElement.innerText !== mouseTargetElement.innerHTML) {\n // not on a span element rendering text\n return null;\n }\n const position = this._stickyScrollWidget.getEditorPositionFromNode(mouseTargetElement);\n if (!position) {\n // not hovering a sticky scroll line\n return null;\n }\n return {\n range: new _common_core_range_js__WEBPACK_IMPORTED_MODULE_10__.Range(position.lineNumber, position.column, position.lineNumber, position.column + mouseTargetElement.innerText.length),\n textElement: mouseTargetElement\n };\n };\n const stickyScrollWidgetDomNode = this._stickyScrollWidget.getDomNode();\n this._register(_base_browser_dom_js__WEBPACK_IMPORTED_MODULE_17__.addStandardDisposableListener(stickyScrollWidgetDomNode, _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_17__.EventType.CLICK, (mouseEvent) => {\n if (mouseEvent.ctrlKey || mouseEvent.altKey || mouseEvent.metaKey) {\n // modifier pressed\n return;\n }\n if (!mouseEvent.leftButton) {\n // not left click\n return;\n }\n if (mouseEvent.shiftKey) {\n // shift click\n const lineIndex = this._stickyScrollWidget.getLineIndexFromChildDomNode(mouseEvent.target);\n if (lineIndex === null) {\n return;\n }\n const position = new _common_core_position_js__WEBPACK_IMPORTED_MODULE_13__.Position(this._endLineNumbers[lineIndex], 1);\n this._revealLineInCenterIfOutsideViewport(position);\n return;\n }\n const isInFoldingIconDomNode = this._stickyScrollWidget.isInFoldingIconDomNode(mouseEvent.target);\n if (isInFoldingIconDomNode) {\n // clicked on folding icon\n const lineNumber = this._stickyScrollWidget.getLineNumberFromChildDomNode(mouseEvent.target);\n this._toggleFoldingRegionForLine(lineNumber);\n return;\n }\n const isInStickyLine = this._stickyScrollWidget.isInStickyLine(mouseEvent.target);\n if (!isInStickyLine) {\n return;\n }\n // normal click\n let position = this._stickyScrollWidget.getEditorPositionFromNode(mouseEvent.target);\n if (!position) {\n const lineNumber = this._stickyScrollWidget.getLineNumberFromChildDomNode(mouseEvent.target);\n if (lineNumber === null) {\n // not hovering a sticky scroll line\n return;\n }\n position = new _common_core_position_js__WEBPACK_IMPORTED_MODULE_13__.Position(lineNumber, 1);\n }\n this._revealPosition(position);\n }));\n this._register(_base_browser_dom_js__WEBPACK_IMPORTED_MODULE_17__.addStandardDisposableListener(stickyScrollWidgetDomNode, _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_17__.EventType.MOUSE_MOVE, (mouseEvent) => {\n if (mouseEvent.shiftKey) {\n const currentEndForLineIndex = this._stickyScrollWidget.getLineIndexFromChildDomNode(mouseEvent.target);\n if (currentEndForLineIndex === null || this._showEndForLine !== null && this._showEndForLine === currentEndForLineIndex) {\n return;\n }\n this._showEndForLine = currentEndForLineIndex;\n this._renderStickyScroll();\n return;\n }\n if (this._showEndForLine !== null) {\n this._showEndForLine = null;\n this._renderStickyScroll();\n }\n }));\n this._register(_base_browser_dom_js__WEBPACK_IMPORTED_MODULE_17__.addDisposableListener(stickyScrollWidgetDomNode, _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_17__.EventType.MOUSE_LEAVE, (e) => {\n if (this._showEndForLine !== null) {\n this._showEndForLine = null;\n this._renderStickyScroll();\n }\n }));\n this._register(gesture.onMouseMoveOrRelevantKeyDown(([mouseEvent, _keyboardEvent]) => {\n const mouseTarget = getMouseEventTarget(mouseEvent);\n if (!mouseTarget || !mouseEvent.hasTriggerModifier || !this._editor.hasModel()) {\n sessionStore.clear();\n return;\n }\n const { range, textElement } = mouseTarget;\n if (!range.equalsRange(this._stickyRangeProjectedOnEditor)) {\n this._stickyRangeProjectedOnEditor = range;\n sessionStore.clear();\n }\n else if (textElement.style.textDecoration === 'underline') {\n return;\n }\n const cancellationToken = new _base_common_cancellation_js__WEBPACK_IMPORTED_MODULE_14__.CancellationTokenSource();\n sessionStore.add((0,_base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_0__.toDisposable)(() => cancellationToken.dispose(true)));\n let currentHTMLChild;\n (0,_gotoSymbol_browser_goToSymbol_js__WEBPACK_IMPORTED_MODULE_11__.getDefinitionsAtPosition)(this._languageFeaturesService.definitionProvider, this._editor.getModel(), new _common_core_position_js__WEBPACK_IMPORTED_MODULE_13__.Position(range.startLineNumber, range.startColumn + 1), cancellationToken.token).then((candidateDefinitions => {\n if (cancellationToken.token.isCancellationRequested) {\n return;\n }\n if (candidateDefinitions.length !== 0) {\n this._candidateDefinitionsLength = candidateDefinitions.length;\n const childHTML = textElement;\n if (currentHTMLChild !== childHTML) {\n sessionStore.clear();\n currentHTMLChild = childHTML;\n currentHTMLChild.style.textDecoration = 'underline';\n sessionStore.add((0,_base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_0__.toDisposable)(() => {\n currentHTMLChild.style.textDecoration = 'none';\n }));\n }\n else if (!currentHTMLChild) {\n currentHTMLChild = childHTML;\n currentHTMLChild.style.textDecoration = 'underline';\n sessionStore.add((0,_base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_0__.toDisposable)(() => {\n currentHTMLChild.style.textDecoration = 'none';\n }));\n }\n }\n else {\n sessionStore.clear();\n }\n }));\n }));\n this._register(gesture.onCancel(() => {\n sessionStore.clear();\n }));\n this._register(gesture.onExecute(async (e) => {\n if (e.target.type !== 12 /* MouseTargetType.OVERLAY_WIDGET */ || e.target.detail !== this._stickyScrollWidget.getId()) {\n // not hovering over our widget\n return;\n }\n const position = this._stickyScrollWidget.getEditorPositionFromNode(e.target.element);\n if (!position) {\n // not hovering a sticky scroll line\n return;\n }\n if (!this._editor.hasModel() || !this._stickyRangeProjectedOnEditor) {\n return;\n }\n if (this._candidateDefinitionsLength > 1) {\n if (this._focused) {\n this._disposeFocusStickyScrollStore();\n }\n this._revealPosition({ lineNumber: position.lineNumber, column: 1 });\n }\n this._instaService.invokeFunction(_inlayHints_browser_inlayHintsLocations_js__WEBPACK_IMPORTED_MODULE_12__.goToDefinitionWithLocation, e, this._editor, { uri: this._editor.getModel().uri, range: this._stickyRangeProjectedOnEditor });\n }));\n }\n _onContextMenu(targetWindow, e) {\n const event = new _base_browser_mouseEvent_js__WEBPACK_IMPORTED_MODULE_19__.StandardMouseEvent(targetWindow, e);\n this._contextMenuService.showContextMenu({\n menuId: _platform_actions_common_actions_js__WEBPACK_IMPORTED_MODULE_6__.MenuId.StickyScrollContext,\n getAnchor: () => event,\n });\n }\n _toggleFoldingRegionForLine(line) {\n if (!this._foldingModel || line === null) {\n return;\n }\n const stickyLine = this._stickyScrollWidget.getRenderedStickyLine(line);\n const foldingIcon = stickyLine === null || stickyLine === void 0 ? void 0 : stickyLine.foldingIcon;\n if (!foldingIcon) {\n return;\n }\n (0,_folding_browser_foldingModel_js__WEBPACK_IMPORTED_MODULE_21__.toggleCollapseState)(this._foldingModel, Number.MAX_VALUE, [line]);\n foldingIcon.isCollapsed = !foldingIcon.isCollapsed;\n const scrollTop = (foldingIcon.isCollapsed ?\n this._editor.getTopForLineNumber(foldingIcon.foldingEndLine)\n : this._editor.getTopForLineNumber(foldingIcon.foldingStartLine))\n - this._editor.getOption(67 /* EditorOption.lineHeight */) * stickyLine.index + 1;\n this._editor.setScrollTop(scrollTop);\n this._renderStickyScroll(line);\n }\n _readConfiguration() {\n const options = this._editor.getOption(115 /* EditorOption.stickyScroll */);\n if (options.enabled === false) {\n this._editor.removeOverlayWidget(this._stickyScrollWidget);\n this._sessionStore.clear();\n this._enabled = false;\n return;\n }\n else if (options.enabled && !this._enabled) {\n // When sticky scroll was just enabled, add the listeners on the sticky scroll\n this._editor.addOverlayWidget(this._stickyScrollWidget);\n this._sessionStore.add(this._editor.onDidScrollChange((e) => {\n if (e.scrollTopChanged) {\n this._showEndForLine = null;\n this._renderStickyScroll();\n }\n }));\n this._sessionStore.add(this._editor.onDidLayoutChange(() => this._onDidResize()));\n this._sessionStore.add(this._editor.onDidChangeModelTokens((e) => this._onTokensChange(e)));\n this._sessionStore.add(this._stickyLineCandidateProvider.onDidChangeStickyScroll(() => {\n this._showEndForLine = null;\n this._renderStickyScroll();\n }));\n this._enabled = true;\n }\n const lineNumberOption = this._editor.getOption(68 /* EditorOption.lineNumbers */);\n if (lineNumberOption.renderType === 2 /* RenderLineNumbersType.Relative */) {\n this._sessionStore.add(this._editor.onDidChangeCursorPosition(() => {\n this._showEndForLine = null;\n this._renderStickyScroll(0);\n }));\n }\n }\n _needsUpdate(event) {\n const stickyLineNumbers = this._stickyScrollWidget.getCurrentLines();\n for (const stickyLineNumber of stickyLineNumbers) {\n for (const range of event.ranges) {\n if (stickyLineNumber >= range.fromLineNumber && stickyLineNumber <= range.toLineNumber) {\n return true;\n }\n }\n }\n return false;\n }\n _onTokensChange(event) {\n if (this._needsUpdate(event)) {\n // Rebuilding the whole widget from line 0\n this._renderStickyScroll(0);\n }\n }\n _onDidResize() {\n const layoutInfo = this._editor.getLayoutInfo();\n // Make sure sticky scroll doesn't take up more than 25% of the editor\n const theoreticalLines = layoutInfo.height / this._editor.getOption(67 /* EditorOption.lineHeight */);\n this._maxStickyLines = Math.round(theoreticalLines * .25);\n }\n async _renderStickyScroll(rebuildFromLine) {\n var _a, _b;\n const model = this._editor.getModel();\n if (!model || model.isTooLargeForTokenization()) {\n this._foldingModel = null;\n this._stickyScrollWidget.setState(undefined, null);\n return;\n }\n const stickyLineVersion = this._stickyLineCandidateProvider.getVersionId();\n if (stickyLineVersion === undefined || stickyLineVersion === model.getVersionId()) {\n this._foldingModel = (_b = await ((_a = _folding_browser_folding_js__WEBPACK_IMPORTED_MODULE_20__.FoldingController.get(this._editor)) === null || _a === void 0 ? void 0 : _a.getFoldingModel())) !== null && _b !== void 0 ? _b : null;\n this._widgetState = this.findScrollWidgetState();\n this._stickyScrollVisibleContextKey.set(!(this._widgetState.startLineNumbers.length === 0));\n if (!this._focused) {\n this._stickyScrollWidget.setState(this._widgetState, this._foldingModel, rebuildFromLine);\n }\n else {\n // Suppose that previously the sticky scroll widget had height 0, then if there are visible lines, set the last line as focused\n if (this._focusedStickyElementIndex === -1) {\n this._stickyScrollWidget.setState(this._widgetState, this._foldingModel, rebuildFromLine);\n this._focusedStickyElementIndex = this._stickyScrollWidget.lineNumberCount - 1;\n if (this._focusedStickyElementIndex !== -1) {\n this._stickyScrollWidget.focusLineWithIndex(this._focusedStickyElementIndex);\n }\n }\n else {\n const focusedStickyElementLineNumber = this._stickyScrollWidget.lineNumbers[this._focusedStickyElementIndex];\n this._stickyScrollWidget.setState(this._widgetState, this._foldingModel, rebuildFromLine);\n // Suppose that after setting the state, there are no sticky lines, set the focused index to -1\n if (this._stickyScrollWidget.lineNumberCount === 0) {\n this._focusedStickyElementIndex = -1;\n }\n else {\n const previousFocusedLineNumberExists = this._stickyScrollWidget.lineNumbers.includes(focusedStickyElementLineNumber);\n // If the line number is still there, do not change anything\n // If the line number is not there, set the new focused line to be the last line\n if (!previousFocusedLineNumberExists) {\n this._focusedStickyElementIndex = this._stickyScrollWidget.lineNumberCount - 1;\n }\n this._stickyScrollWidget.focusLineWithIndex(this._focusedStickyElementIndex);\n }\n }\n }\n }\n }\n findScrollWidgetState() {\n const lineHeight = this._editor.getOption(67 /* EditorOption.lineHeight */);\n const maxNumberStickyLines = Math.min(this._maxStickyLines, this._editor.getOption(115 /* EditorOption.stickyScroll */).maxLineCount);\n const scrollTop = this._editor.getScrollTop();\n let lastLineRelativePosition = 0;\n const startLineNumbers = [];\n const endLineNumbers = [];\n const arrayVisibleRanges = this._editor.getVisibleRanges();\n if (arrayVisibleRanges.length !== 0) {\n const fullVisibleRange = new _stickyScrollElement_js__WEBPACK_IMPORTED_MODULE_18__.StickyRange(arrayVisibleRanges[0].startLineNumber, arrayVisibleRanges[arrayVisibleRanges.length - 1].endLineNumber);\n const candidateRanges = this._stickyLineCandidateProvider.getCandidateStickyLinesIntersecting(fullVisibleRange);\n for (const range of candidateRanges) {\n const start = range.startLineNumber;\n const end = range.endLineNumber;\n const depth = range.nestingDepth;\n if (end - start > 0) {\n const topOfElementAtDepth = (depth - 1) * lineHeight;\n const bottomOfElementAtDepth = depth * lineHeight;\n const bottomOfBeginningLine = this._editor.getBottomForLineNumber(start) - scrollTop;\n const topOfEndLine = this._editor.getTopForLineNumber(end) - scrollTop;\n const bottomOfEndLine = this._editor.getBottomForLineNumber(end) - scrollTop;\n if (topOfElementAtDepth > topOfEndLine && topOfElementAtDepth <= bottomOfEndLine) {\n startLineNumbers.push(start);\n endLineNumbers.push(end + 1);\n lastLineRelativePosition = bottomOfEndLine - bottomOfElementAtDepth;\n break;\n }\n else if (bottomOfElementAtDepth > bottomOfBeginningLine && bottomOfElementAtDepth <= bottomOfEndLine) {\n startLineNumbers.push(start);\n endLineNumbers.push(end + 1);\n }\n if (startLineNumbers.length === maxNumberStickyLines) {\n break;\n }\n }\n }\n }\n this._endLineNumbers = endLineNumbers;\n return new _stickyScrollWidget_js__WEBPACK_IMPORTED_MODULE_2__.StickyScrollWidgetState(startLineNumbers, endLineNumbers, lastLineRelativePosition, this._showEndForLine);\n }\n dispose() {\n super.dispose();\n this._sessionStore.dispose();\n }\n};\nStickyScrollController.ID = 'store.contrib.stickyScrollController';\nStickyScrollController = StickyScrollController_1 = __decorate([\n __param(1, _platform_contextview_browser_contextView_js__WEBPACK_IMPORTED_MODULE_5__.IContextMenuService),\n __param(2, _common_services_languageFeatures_js__WEBPACK_IMPORTED_MODULE_1__.ILanguageFeaturesService),\n __param(3, _platform_instantiation_common_instantiation_js__WEBPACK_IMPORTED_MODULE_4__.IInstantiationService),\n __param(4, _common_languages_languageConfigurationRegistry_js__WEBPACK_IMPORTED_MODULE_15__.ILanguageConfigurationService),\n __param(5, _common_services_languageFeatureDebounce_js__WEBPACK_IMPORTED_MODULE_16__.ILanguageFeatureDebounceService),\n __param(6, _platform_contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_7__.IContextKeyService)\n], StickyScrollController);\n\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/contrib/stickyScroll/browser/stickyScrollController.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/contrib/stickyScroll/browser/stickyScrollElement.js":
/*!******************************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/contrib/stickyScroll/browser/stickyScrollElement.js ***!
\******************************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ StickyElement: () => (/* binding */ StickyElement),\n/* harmony export */ StickyModel: () => (/* binding */ StickyModel),\n/* harmony export */ StickyRange: () => (/* binding */ StickyRange)\n/* harmony export */ });\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\nclass StickyRange {\n constructor(startLineNumber, endLineNumber) {\n this.startLineNumber = startLineNumber;\n this.endLineNumber = endLineNumber;\n }\n}\nclass StickyElement {\n constructor(\n /**\n * Range of line numbers spanned by the current scope\n */\n range, \n /**\n * Must be sorted by start line number\n */\n children, \n /**\n * Parent sticky outline element\n */\n parent) {\n this.range = range;\n this.children = children;\n this.parent = parent;\n }\n}\nclass StickyModel {\n constructor(uri, version, element, outlineProviderId) {\n this.uri = uri;\n this.version = version;\n this.element = element;\n this.outlineProviderId = outlineProviderId;\n }\n}\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/contrib/stickyScroll/browser/stickyScrollElement.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/contrib/stickyScroll/browser/stickyScrollModelProvider.js":
/*!************************************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/contrib/stickyScroll/browser/stickyScrollModelProvider.js ***!
\************************************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ StickyModelProvider: () => (/* binding */ StickyModelProvider)\n/* harmony export */ });\n/* harmony import */ var _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../../base/common/lifecycle.js */ \"./node_modules/monaco-editor/esm/vs/base/common/lifecycle.js\");\n/* harmony import */ var _common_services_languageFeatures_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../common/services/languageFeatures.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/services/languageFeatures.js\");\n/* harmony import */ var _documentSymbols_browser_outlineModel_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../documentSymbols/browser/outlineModel.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/documentSymbols/browser/outlineModel.js\");\n/* harmony import */ var _base_common_async_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../../../base/common/async.js */ \"./node_modules/monaco-editor/esm/vs/base/common/async.js\");\n/* harmony import */ var _folding_browser_folding_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../folding/browser/folding.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/folding/browser/folding.js\");\n/* harmony import */ var _folding_browser_syntaxRangeProvider_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../../folding/browser/syntaxRangeProvider.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/folding/browser/syntaxRangeProvider.js\");\n/* harmony import */ var _folding_browser_indentRangeProvider_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../../folding/browser/indentRangeProvider.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/folding/browser/indentRangeProvider.js\");\n/* harmony import */ var _common_languages_languageConfigurationRegistry_js__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ../../../common/languages/languageConfigurationRegistry.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/languages/languageConfigurationRegistry.js\");\n/* harmony import */ var _base_common_errors_js__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ../../../../base/common/errors.js */ \"./node_modules/monaco-editor/esm/vs/base/common/errors.js\");\n/* harmony import */ var _stickyScrollElement_js__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ./stickyScrollElement.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/stickyScroll/browser/stickyScrollElement.js\");\n/* harmony import */ var _base_common_iterator_js__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! ../../../../base/common/iterator.js */ \"./node_modules/monaco-editor/esm/vs/base/common/iterator.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\nvar __decorate = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\n return c > 3 && r && Object.defineProperty(target, key, r), r;\n};\nvar __param = (undefined && undefined.__param) || function (paramIndex, decorator) {\n return function (target, key) { decorator(target, key, paramIndex); }\n};\n\n\n\n\n\n\n\n\n\n\n\nvar ModelProvider;\n(function (ModelProvider) {\n ModelProvider[\"OUTLINE_MODEL\"] = \"outlineModel\";\n ModelProvider[\"FOLDING_PROVIDER_MODEL\"] = \"foldingProviderModel\";\n ModelProvider[\"INDENTATION_MODEL\"] = \"indentationModel\";\n})(ModelProvider || (ModelProvider = {}));\nvar Status;\n(function (Status) {\n Status[Status[\"VALID\"] = 0] = \"VALID\";\n Status[Status[\"INVALID\"] = 1] = \"INVALID\";\n Status[Status[\"CANCELED\"] = 2] = \"CANCELED\";\n})(Status || (Status = {}));\nlet StickyModelProvider = class StickyModelProvider extends _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_0__.Disposable {\n constructor(_editor, _languageConfigurationService, _languageFeaturesService, defaultModel) {\n super();\n this._editor = _editor;\n this._languageConfigurationService = _languageConfigurationService;\n this._languageFeaturesService = _languageFeaturesService;\n this._modelProviders = [];\n this._modelPromise = null;\n this._updateScheduler = this._register(new _base_common_async_js__WEBPACK_IMPORTED_MODULE_3__.Delayer(300));\n this._updateOperation = this._register(new _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_0__.DisposableStore());\n const stickyModelFromCandidateOutlineProvider = new StickyModelFromCandidateOutlineProvider(_languageFeaturesService);\n const stickyModelFromSyntaxFoldingProvider = new StickyModelFromCandidateSyntaxFoldingProvider(this._editor, _languageFeaturesService);\n const stickyModelFromIndentationFoldingProvider = new StickyModelFromCandidateIndentationFoldingProvider(this._editor, _languageConfigurationService);\n switch (defaultModel) {\n case ModelProvider.OUTLINE_MODEL:\n this._modelProviders.push(stickyModelFromCandidateOutlineProvider);\n this._modelProviders.push(stickyModelFromSyntaxFoldingProvider);\n this._modelProviders.push(stickyModelFromIndentationFoldingProvider);\n break;\n case ModelProvider.FOLDING_PROVIDER_MODEL:\n this._modelProviders.push(stickyModelFromSyntaxFoldingProvider);\n this._modelProviders.push(stickyModelFromIndentationFoldingProvider);\n break;\n case ModelProvider.INDENTATION_MODEL:\n this._modelProviders.push(stickyModelFromIndentationFoldingProvider);\n break;\n }\n }\n _cancelModelPromise() {\n if (this._modelPromise) {\n this._modelPromise.cancel();\n this._modelPromise = null;\n }\n }\n async update(textModel, textModelVersionId, token) {\n this._updateOperation.clear();\n this._updateOperation.add({\n dispose: () => {\n this._cancelModelPromise();\n this._updateScheduler.cancel();\n }\n });\n this._cancelModelPromise();\n return await this._updateScheduler.trigger(async () => {\n for (const modelProvider of this._modelProviders) {\n const { statusPromise, modelPromise } = modelProvider.computeStickyModel(textModel, textModelVersionId, token);\n this._modelPromise = modelPromise;\n const status = await statusPromise;\n if (this._modelPromise !== modelPromise) {\n return null;\n }\n switch (status) {\n case Status.CANCELED:\n this._updateOperation.clear();\n return null;\n case Status.VALID:\n return modelProvider.stickyModel;\n }\n }\n return null;\n }).catch((error) => {\n (0,_base_common_errors_js__WEBPACK_IMPORTED_MODULE_8__.onUnexpectedError)(error);\n return null;\n });\n }\n};\nStickyModelProvider = __decorate([\n __param(1, _common_languages_languageConfigurationRegistry_js__WEBPACK_IMPORTED_MODULE_7__.ILanguageConfigurationService),\n __param(2, _common_services_languageFeatures_js__WEBPACK_IMPORTED_MODULE_1__.ILanguageFeaturesService)\n], StickyModelProvider);\n\nclass StickyModelCandidateProvider {\n constructor() {\n this._stickyModel = null;\n }\n get stickyModel() {\n return this._stickyModel;\n }\n _invalid() {\n this._stickyModel = null;\n return Status.INVALID;\n }\n computeStickyModel(textModel, modelVersionId, token) {\n if (token.isCancellationRequested || !this.isProviderValid(textModel)) {\n return { statusPromise: this._invalid(), modelPromise: null };\n }\n const providerModelPromise = (0,_base_common_async_js__WEBPACK_IMPORTED_MODULE_3__.createCancelablePromise)(token => this.createModelFromProvider(textModel, modelVersionId, token));\n return {\n statusPromise: providerModelPromise.then(providerModel => {\n if (!this.isModelValid(providerModel)) {\n return this._invalid();\n }\n if (token.isCancellationRequested) {\n return Status.CANCELED;\n }\n this._stickyModel = this.createStickyModel(textModel, modelVersionId, token, providerModel);\n return Status.VALID;\n }).then(undefined, (err) => {\n (0,_base_common_errors_js__WEBPACK_IMPORTED_MODULE_8__.onUnexpectedError)(err);\n return Status.CANCELED;\n }),\n modelPromise: providerModelPromise\n };\n }\n /**\n * Method which checks whether the model returned by the provider is valid and can be used to compute a sticky model.\n * This method by default returns true.\n * @param model model returned by the provider\n * @returns boolean indicating whether the model is valid\n */\n isModelValid(model) {\n return true;\n }\n /**\n * Method which checks whether the provider is valid before applying it to find the provider model.\n * This method by default returns true.\n * @param textModel text-model of the editor\n * @returns boolean indicating whether the provider is valid\n */\n isProviderValid(textModel) {\n return true;\n }\n}\nlet StickyModelFromCandidateOutlineProvider = class StickyModelFromCandidateOutlineProvider extends StickyModelCandidateProvider {\n constructor(_languageFeaturesService) {\n super();\n this._languageFeaturesService = _languageFeaturesService;\n }\n createModelFromProvider(textModel, modelVersionId, token) {\n return _documentSymbols_browser_outlineModel_js__WEBPACK_IMPORTED_MODULE_2__.OutlineModel.create(this._languageFeaturesService.documentSymbolProvider, textModel, token);\n }\n createStickyModel(textModel, modelVersionId, token, model) {\n var _a;\n const { stickyOutlineElement, providerID } = this._stickyModelFromOutlineModel(model, (_a = this._stickyModel) === null || _a === void 0 ? void 0 : _a.outlineProviderId);\n return new _stickyScrollElement_js__WEBPACK_IMPORTED_MODULE_9__.StickyModel(textModel.uri, modelVersionId, stickyOutlineElement, providerID);\n }\n isModelValid(model) {\n return model && model.children.size > 0;\n }\n _stickyModelFromOutlineModel(outlineModel, preferredProvider) {\n let outlineElements;\n // When several possible outline providers\n if (_base_common_iterator_js__WEBPACK_IMPORTED_MODULE_10__.Iterable.first(outlineModel.children.values()) instanceof _documentSymbols_browser_outlineModel_js__WEBPACK_IMPORTED_MODULE_2__.OutlineGroup) {\n const provider = _base_common_iterator_js__WEBPACK_IMPORTED_MODULE_10__.Iterable.find(outlineModel.children.values(), outlineGroupOfModel => outlineGroupOfModel.id === preferredProvider);\n if (provider) {\n outlineElements = provider.children;\n }\n else {\n let tempID = '';\n let maxTotalSumOfRanges = -1;\n let optimalOutlineGroup = undefined;\n for (const [_key, outlineGroup] of outlineModel.children.entries()) {\n const totalSumRanges = this._findSumOfRangesOfGroup(outlineGroup);\n if (totalSumRanges > maxTotalSumOfRanges) {\n optimalOutlineGroup = outlineGroup;\n maxTotalSumOfRanges = totalSumRanges;\n tempID = outlineGroup.id;\n }\n }\n preferredProvider = tempID;\n outlineElements = optimalOutlineGroup.children;\n }\n }\n else {\n outlineElements = outlineModel.children;\n }\n const stickyChildren = [];\n const outlineElementsArray = Array.from(outlineElements.values()).sort((element1, element2) => {\n const range1 = new _stickyScrollElement_js__WEBPACK_IMPORTED_MODULE_9__.StickyRange(element1.symbol.range.startLineNumber, element1.symbol.range.endLineNumber);\n const range2 = new _stickyScrollElement_js__WEBPACK_IMPORTED_MODULE_9__.StickyRange(element2.symbol.range.startLineNumber, element2.symbol.range.endLineNumber);\n return this._comparator(range1, range2);\n });\n for (const outlineElement of outlineElementsArray) {\n stickyChildren.push(this._stickyModelFromOutlineElement(outlineElement, outlineElement.symbol.selectionRange.startLineNumber));\n }\n const stickyOutlineElement = new _stickyScrollElement_js__WEBPACK_IMPORTED_MODULE_9__.StickyElement(undefined, stickyChildren, undefined);\n return {\n stickyOutlineElement: stickyOutlineElement,\n providerID: preferredProvider\n };\n }\n _stickyModelFromOutlineElement(outlineElement, previousStartLine) {\n const children = [];\n for (const child of outlineElement.children.values()) {\n if (child.symbol.selectionRange.startLineNumber !== child.symbol.range.endLineNumber) {\n if (child.symbol.selectionRange.startLineNumber !== previousStartLine) {\n children.push(this._stickyModelFromOutlineElement(child, child.symbol.selectionRange.startLineNumber));\n }\n else {\n for (const subchild of child.children.values()) {\n children.push(this._stickyModelFromOutlineElement(subchild, child.symbol.selectionRange.startLineNumber));\n }\n }\n }\n }\n children.sort((child1, child2) => this._comparator(child1.range, child2.range));\n const range = new _stickyScrollElement_js__WEBPACK_IMPORTED_MODULE_9__.StickyRange(outlineElement.symbol.selectionRange.startLineNumber, outlineElement.symbol.range.endLineNumber);\n return new _stickyScrollElement_js__WEBPACK_IMPORTED_MODULE_9__.StickyElement(range, children, undefined);\n }\n _comparator(range1, range2) {\n if (range1.startLineNumber !== range2.startLineNumber) {\n return range1.startLineNumber - range2.startLineNumber;\n }\n else {\n return range2.endLineNumber - range1.endLineNumber;\n }\n }\n _findSumOfRangesOfGroup(outline) {\n let res = 0;\n for (const child of outline.children.values()) {\n res += this._findSumOfRangesOfGroup(child);\n }\n if (outline instanceof _documentSymbols_browser_outlineModel_js__WEBPACK_IMPORTED_MODULE_2__.OutlineElement) {\n return res + outline.symbol.range.endLineNumber - outline.symbol.selectionRange.startLineNumber;\n }\n else {\n return res;\n }\n }\n};\nStickyModelFromCandidateOutlineProvider = __decorate([\n __param(0, _common_services_languageFeatures_js__WEBPACK_IMPORTED_MODULE_1__.ILanguageFeaturesService)\n], StickyModelFromCandidateOutlineProvider);\nclass StickyModelFromCandidateFoldingProvider extends StickyModelCandidateProvider {\n constructor(editor) {\n super();\n this._foldingLimitReporter = new _folding_browser_folding_js__WEBPACK_IMPORTED_MODULE_4__.RangesLimitReporter(editor);\n }\n createStickyModel(textModel, modelVersionId, token, model) {\n const foldingElement = this._fromFoldingRegions(model);\n return new _stickyScrollElement_js__WEBPACK_IMPORTED_MODULE_9__.StickyModel(textModel.uri, modelVersionId, foldingElement, undefined);\n }\n isModelValid(model) {\n return model !== null;\n }\n _fromFoldingRegions(foldingRegions) {\n const length = foldingRegions.length;\n const orderedStickyElements = [];\n // The root sticky outline element\n const stickyOutlineElement = new _stickyScrollElement_js__WEBPACK_IMPORTED_MODULE_9__.StickyElement(undefined, [], undefined);\n for (let i = 0; i < length; i++) {\n // Finding the parent index of the current range\n const parentIndex = foldingRegions.getParentIndex(i);\n let parentNode;\n if (parentIndex !== -1) {\n // Access the reference of the parent node\n parentNode = orderedStickyElements[parentIndex];\n }\n else {\n // In that case the parent node is the root node\n parentNode = stickyOutlineElement;\n }\n const child = new _stickyScrollElement_js__WEBPACK_IMPORTED_MODULE_9__.StickyElement(new _stickyScrollElement_js__WEBPACK_IMPORTED_MODULE_9__.StickyRange(foldingRegions.getStartLineNumber(i), foldingRegions.getEndLineNumber(i) + 1), [], parentNode);\n parentNode.children.push(child);\n orderedStickyElements.push(child);\n }\n return stickyOutlineElement;\n }\n}\nlet StickyModelFromCandidateIndentationFoldingProvider = class StickyModelFromCandidateIndentationFoldingProvider extends StickyModelFromCandidateFoldingProvider {\n constructor(editor, _languageConfigurationService) {\n super(editor);\n this._languageConfigurationService = _languageConfigurationService;\n }\n createModelFromProvider(textModel, modelVersionId, token) {\n const provider = new _folding_browser_indentRangeProvider_js__WEBPACK_IMPORTED_MODULE_6__.IndentRangeProvider(textModel, this._languageConfigurationService, this._foldingLimitReporter);\n return provider.compute(token);\n }\n};\nStickyModelFromCandidateIndentationFoldingProvider = __decorate([\n __param(1, _common_languages_languageConfigurationRegistry_js__WEBPACK_IMPORTED_MODULE_7__.ILanguageConfigurationService)\n], StickyModelFromCandidateIndentationFoldingProvider);\nlet StickyModelFromCandidateSyntaxFoldingProvider = class StickyModelFromCandidateSyntaxFoldingProvider extends StickyModelFromCandidateFoldingProvider {\n constructor(editor, _languageFeaturesService) {\n super(editor);\n this._languageFeaturesService = _languageFeaturesService;\n }\n isProviderValid(textModel) {\n const selectedProviders = _folding_browser_folding_js__WEBPACK_IMPORTED_MODULE_4__.FoldingController.getFoldingRangeProviders(this._languageFeaturesService, textModel);\n return selectedProviders.length > 0;\n }\n createModelFromProvider(textModel, modelVersionId, token) {\n const selectedProviders = _folding_browser_folding_js__WEBPACK_IMPORTED_MODULE_4__.FoldingController.getFoldingRangeProviders(this._languageFeaturesService, textModel);\n const provider = new _folding_browser_syntaxRangeProvider_js__WEBPACK_IMPORTED_MODULE_5__.SyntaxRangeProvider(textModel, selectedProviders, () => this.createModelFromProvider(textModel, modelVersionId, token), this._foldingLimitReporter, undefined);\n return provider.compute(token);\n }\n};\nStickyModelFromCandidateSyntaxFoldingProvider = __decorate([\n __param(1, _common_services_languageFeatures_js__WEBPACK_IMPORTED_MODULE_1__.ILanguageFeaturesService)\n], StickyModelFromCandidateSyntaxFoldingProvider);\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/contrib/stickyScroll/browser/stickyScrollModelProvider.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/contrib/stickyScroll/browser/stickyScrollProvider.js":
/*!*******************************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/contrib/stickyScroll/browser/stickyScrollProvider.js ***!
\*******************************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ StickyLineCandidate: () => (/* binding */ StickyLineCandidate),\n/* harmony export */ StickyLineCandidateProvider: () => (/* binding */ StickyLineCandidateProvider)\n/* harmony export */ });\n/* harmony import */ var _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../../base/common/lifecycle.js */ \"./node_modules/monaco-editor/esm/vs/base/common/lifecycle.js\");\n/* harmony import */ var _common_services_languageFeatures_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../common/services/languageFeatures.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/services/languageFeatures.js\");\n/* harmony import */ var _base_common_cancellation_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../../base/common/cancellation.js */ \"./node_modules/monaco-editor/esm/vs/base/common/cancellation.js\");\n/* harmony import */ var _base_common_async_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../../../base/common/async.js */ \"./node_modules/monaco-editor/esm/vs/base/common/async.js\");\n/* harmony import */ var _base_common_arrays_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../../../base/common/arrays.js */ \"./node_modules/monaco-editor/esm/vs/base/common/arrays.js\");\n/* harmony import */ var _base_common_event_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../../../../base/common/event.js */ \"./node_modules/monaco-editor/esm/vs/base/common/event.js\");\n/* harmony import */ var _common_languages_languageConfigurationRegistry_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../../../common/languages/languageConfigurationRegistry.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/languages/languageConfigurationRegistry.js\");\n/* harmony import */ var _stickyScrollModelProvider_js__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ./stickyScrollModelProvider.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/stickyScroll/browser/stickyScrollModelProvider.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\nvar __decorate = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\n return c > 3 && r && Object.defineProperty(target, key, r), r;\n};\nvar __param = (undefined && undefined.__param) || function (paramIndex, decorator) {\n return function (target, key) { decorator(target, key, paramIndex); }\n};\n\n\n\n\n\n\n\n\nclass StickyLineCandidate {\n constructor(startLineNumber, endLineNumber, nestingDepth) {\n this.startLineNumber = startLineNumber;\n this.endLineNumber = endLineNumber;\n this.nestingDepth = nestingDepth;\n }\n}\nlet StickyLineCandidateProvider = class StickyLineCandidateProvider extends _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_0__.Disposable {\n constructor(editor, _languageFeaturesService, _languageConfigurationService) {\n super();\n this._languageFeaturesService = _languageFeaturesService;\n this._languageConfigurationService = _languageConfigurationService;\n this._onDidChangeStickyScroll = this._register(new _base_common_event_js__WEBPACK_IMPORTED_MODULE_5__.Emitter());\n this.onDidChangeStickyScroll = this._onDidChangeStickyScroll.event;\n this._options = null;\n this._model = null;\n this._cts = null;\n this._stickyModelProvider = null;\n this._editor = editor;\n this._sessionStore = this._register(new _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_0__.DisposableStore());\n this._updateSoon = this._register(new _base_common_async_js__WEBPACK_IMPORTED_MODULE_3__.RunOnceScheduler(() => this.update(), 50));\n this._register(this._editor.onDidChangeConfiguration(e => {\n if (e.hasChanged(115 /* EditorOption.stickyScroll */)) {\n this.readConfiguration();\n }\n }));\n this.readConfiguration();\n }\n readConfiguration() {\n this._stickyModelProvider = null;\n this._sessionStore.clear();\n this._options = this._editor.getOption(115 /* EditorOption.stickyScroll */);\n if (!this._options.enabled) {\n return;\n }\n this._stickyModelProvider = this._sessionStore.add(new _stickyScrollModelProvider_js__WEBPACK_IMPORTED_MODULE_7__.StickyModelProvider(this._editor, this._languageConfigurationService, this._languageFeaturesService, this._options.defaultModel));\n this._sessionStore.add(this._editor.onDidChangeModel(() => {\n // We should not show an old model for a different file, it will always be wrong.\n // So we clear the model here immediately and then trigger an update.\n this._model = null;\n this._onDidChangeStickyScroll.fire();\n this.update();\n }));\n this._sessionStore.add(this._editor.onDidChangeHiddenAreas(() => this.update()));\n this._sessionStore.add(this._editor.onDidChangeModelContent(() => this._updateSoon.schedule()));\n this._sessionStore.add(this._languageFeaturesService.documentSymbolProvider.onDidChange(() => this.update()));\n this.update();\n }\n getVersionId() {\n var _a;\n return (_a = this._model) === null || _a === void 0 ? void 0 : _a.version;\n }\n async update() {\n var _a;\n (_a = this._cts) === null || _a === void 0 ? void 0 : _a.dispose(true);\n this._cts = new _base_common_cancellation_js__WEBPACK_IMPORTED_MODULE_2__.CancellationTokenSource();\n await this.updateStickyModel(this._cts.token);\n this._onDidChangeStickyScroll.fire();\n }\n async updateStickyModel(token) {\n if (!this._editor.hasModel() || !this._stickyModelProvider || this._editor.getModel().isTooLargeForTokenization()) {\n this._model = null;\n return;\n }\n const textModel = this._editor.getModel();\n const modelVersionId = textModel.getVersionId();\n const model = await this._stickyModelProvider.update(textModel, modelVersionId, token);\n if (token.isCancellationRequested) {\n // the computation was canceled, so do not overwrite the model\n return;\n }\n this._model = model;\n }\n updateIndex(index) {\n if (index === -1) {\n index = 0;\n }\n else if (index < 0) {\n index = -index - 2;\n }\n return index;\n }\n getCandidateStickyLinesIntersectingFromStickyModel(range, outlineModel, result, depth, lastStartLineNumber) {\n if (outlineModel.children.length === 0) {\n return;\n }\n let lastLine = lastStartLineNumber;\n const childrenStartLines = [];\n for (let i = 0; i < outlineModel.children.length; i++) {\n const child = outlineModel.children[i];\n if (child.range) {\n childrenStartLines.push(child.range.startLineNumber);\n }\n }\n const lowerBound = this.updateIndex((0,_base_common_arrays_js__WEBPACK_IMPORTED_MODULE_4__.binarySearch)(childrenStartLines, range.startLineNumber, (a, b) => { return a - b; }));\n const upperBound = this.updateIndex((0,_base_common_arrays_js__WEBPACK_IMPORTED_MODULE_4__.binarySearch)(childrenStartLines, range.startLineNumber + depth, (a, b) => { return a - b; }));\n for (let i = lowerBound; i <= upperBound; i++) {\n const child = outlineModel.children[i];\n if (!child) {\n return;\n }\n if (child.range) {\n const childStartLine = child.range.startLineNumber;\n const childEndLine = child.range.endLineNumber;\n if (range.startLineNumber <= childEndLine + 1 && childStartLine - 1 <= range.endLineNumber && childStartLine !== lastLine) {\n lastLine = childStartLine;\n result.push(new StickyLineCandidate(childStartLine, childEndLine - 1, depth + 1));\n this.getCandidateStickyLinesIntersectingFromStickyModel(range, child, result, depth + 1, childStartLine);\n }\n }\n else {\n this.getCandidateStickyLinesIntersectingFromStickyModel(range, child, result, depth, lastStartLineNumber);\n }\n }\n }\n getCandidateStickyLinesIntersecting(range) {\n var _a, _b;\n if (!((_a = this._model) === null || _a === void 0 ? void 0 : _a.element)) {\n return [];\n }\n let stickyLineCandidates = [];\n this.getCandidateStickyLinesIntersectingFromStickyModel(range, this._model.element, stickyLineCandidates, 0, -1);\n const hiddenRanges = (_b = this._editor._getViewModel()) === null || _b === void 0 ? void 0 : _b.getHiddenAreas();\n if (hiddenRanges) {\n for (const hiddenRange of hiddenRanges) {\n stickyLineCandidates = stickyLineCandidates.filter(stickyLine => !(stickyLine.startLineNumber >= hiddenRange.startLineNumber && stickyLine.endLineNumber <= hiddenRange.endLineNumber + 1));\n }\n }\n return stickyLineCandidates;\n }\n};\nStickyLineCandidateProvider = __decorate([\n __param(1, _common_services_languageFeatures_js__WEBPACK_IMPORTED_MODULE_1__.ILanguageFeaturesService),\n __param(2, _common_languages_languageConfigurationRegistry_js__WEBPACK_IMPORTED_MODULE_6__.ILanguageConfigurationService)\n], StickyLineCandidateProvider);\n\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/contrib/stickyScroll/browser/stickyScrollProvider.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/contrib/stickyScroll/browser/stickyScrollWidget.js":
/*!*****************************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/contrib/stickyScroll/browser/stickyScrollWidget.js ***!
\*****************************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ StickyScrollWidget: () => (/* binding */ StickyScrollWidget),\n/* harmony export */ StickyScrollWidgetState: () => (/* binding */ StickyScrollWidgetState)\n/* harmony export */ });\n/* harmony import */ var _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../../base/browser/dom.js */ \"./node_modules/monaco-editor/esm/vs/base/browser/dom.js\");\n/* harmony import */ var _base_browser_trustedTypes_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../base/browser/trustedTypes.js */ \"./node_modules/monaco-editor/esm/vs/base/browser/trustedTypes.js\");\n/* harmony import */ var _base_common_arrays_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../../base/common/arrays.js */ \"./node_modules/monaco-editor/esm/vs/base/common/arrays.js\");\n/* harmony import */ var _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../../../base/common/lifecycle.js */ \"./node_modules/monaco-editor/esm/vs/base/common/lifecycle.js\");\n/* harmony import */ var _base_common_themables_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../../../base/common/themables.js */ \"./node_modules/monaco-editor/esm/vs/base/common/themables.js\");\n/* harmony import */ var _stickyScroll_css__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./stickyScroll.css */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/stickyScroll/browser/stickyScroll.css\");\n/* harmony import */ var _browser_viewParts_lines_viewLine_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../../../browser/viewParts/lines/viewLine.js */ \"./node_modules/monaco-editor/esm/vs/editor/browser/viewParts/lines/viewLine.js\");\n/* harmony import */ var _browser_widget_embeddedCodeEditorWidget_js__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ../../../browser/widget/embeddedCodeEditorWidget.js */ \"./node_modules/monaco-editor/esm/vs/editor/browser/widget/embeddedCodeEditorWidget.js\");\n/* harmony import */ var _common_core_position_js__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ../../../common/core/position.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/core/position.js\");\n/* harmony import */ var _common_core_stringBuilder_js__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ../../../common/core/stringBuilder.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/core/stringBuilder.js\");\n/* harmony import */ var _common_viewLayout_lineDecorations_js__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! ../../../common/viewLayout/lineDecorations.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/viewLayout/lineDecorations.js\");\n/* harmony import */ var _common_viewLayout_viewLineRenderer_js__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(/*! ../../../common/viewLayout/viewLineRenderer.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/viewLayout/viewLineRenderer.js\");\n/* harmony import */ var _folding_browser_foldingDecorations_js__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(/*! ../../folding/browser/foldingDecorations.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/folding/browser/foldingDecorations.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n\n\n\n\n\n\n\n\n\n\n\n\nclass StickyScrollWidgetState {\n constructor(startLineNumbers, endLineNumbers, lastLineRelativePosition, showEndForLine = null) {\n this.startLineNumbers = startLineNumbers;\n this.endLineNumbers = endLineNumbers;\n this.lastLineRelativePosition = lastLineRelativePosition;\n this.showEndForLine = showEndForLine;\n }\n equals(other) {\n return !!other\n && this.lastLineRelativePosition === other.lastLineRelativePosition\n && this.showEndForLine === other.showEndForLine\n && (0,_base_common_arrays_js__WEBPACK_IMPORTED_MODULE_2__.equals)(this.startLineNumbers, other.startLineNumbers)\n && (0,_base_common_arrays_js__WEBPACK_IMPORTED_MODULE_2__.equals)(this.endLineNumbers, other.endLineNumbers);\n }\n}\nconst _ttPolicy = (0,_base_browser_trustedTypes_js__WEBPACK_IMPORTED_MODULE_1__.createTrustedTypesPolicy)('stickyScrollViewLayer', { createHTML: value => value });\nconst STICKY_INDEX_ATTR = 'data-sticky-line-index';\nconst STICKY_IS_LINE_ATTR = 'data-sticky-is-line';\nconst STICKY_IS_LINE_NUMBER_ATTR = 'data-sticky-is-line-number';\nconst STICKY_IS_FOLDING_ICON_ATTR = 'data-sticky-is-folding-icon';\nclass StickyScrollWidget extends _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_3__.Disposable {\n constructor(_editor) {\n super();\n this._editor = _editor;\n this._foldingIconStore = new _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_3__.DisposableStore();\n this._rootDomNode = document.createElement('div');\n this._lineNumbersDomNode = document.createElement('div');\n this._linesDomNodeScrollable = document.createElement('div');\n this._linesDomNode = document.createElement('div');\n this._lineHeight = this._editor.getOption(67 /* EditorOption.lineHeight */);\n this._renderedStickyLines = [];\n this._lineNumbers = [];\n this._lastLineRelativePosition = 0;\n this._minContentWidthInPx = 0;\n this._isOnGlyphMargin = false;\n this._lineNumbersDomNode.className = 'sticky-widget-line-numbers';\n this._lineNumbersDomNode.setAttribute('role', 'none');\n this._linesDomNode.className = 'sticky-widget-lines';\n this._linesDomNode.setAttribute('role', 'list');\n this._linesDomNodeScrollable.className = 'sticky-widget-lines-scrollable';\n this._linesDomNodeScrollable.appendChild(this._linesDomNode);\n this._rootDomNode.className = 'sticky-widget';\n this._rootDomNode.classList.toggle('peek', _editor instanceof _browser_widget_embeddedCodeEditorWidget_js__WEBPACK_IMPORTED_MODULE_7__.EmbeddedCodeEditorWidget);\n this._rootDomNode.appendChild(this._lineNumbersDomNode);\n this._rootDomNode.appendChild(this._linesDomNodeScrollable);\n const updateScrollLeftPosition = () => {\n this._linesDomNode.style.left = this._editor.getOption(115 /* EditorOption.stickyScroll */).scrollWithEditor ? `-${this._editor.getScrollLeft()}px` : '0px';\n };\n this._register(this._editor.onDidChangeConfiguration((e) => {\n if (e.hasChanged(115 /* EditorOption.stickyScroll */)) {\n updateScrollLeftPosition();\n }\n if (e.hasChanged(67 /* EditorOption.lineHeight */)) {\n this._lineHeight = this._editor.getOption(67 /* EditorOption.lineHeight */);\n }\n }));\n this._register(this._editor.onDidScrollChange((e) => {\n if (e.scrollLeftChanged) {\n updateScrollLeftPosition();\n }\n if (e.scrollWidthChanged) {\n this._updateWidgetWidth();\n }\n }));\n this._register(this._editor.onDidChangeModel(() => {\n updateScrollLeftPosition();\n this._updateWidgetWidth();\n }));\n this._register(this._foldingIconStore);\n updateScrollLeftPosition();\n this._register(this._editor.onDidLayoutChange((e) => {\n this._updateWidgetWidth();\n }));\n this._updateWidgetWidth();\n }\n get lineNumbers() {\n return this._lineNumbers;\n }\n get lineNumberCount() {\n return this._lineNumbers.length;\n }\n getRenderedStickyLine(lineNumber) {\n return this._renderedStickyLines.find(stickyLine => stickyLine.lineNumber === lineNumber);\n }\n getCurrentLines() {\n return this._lineNumbers;\n }\n setState(_state, foldingModel, _rebuildFromLine) {\n if (_rebuildFromLine === undefined &&\n ((!this._previousState && !_state) || (this._previousState && this._previousState.equals(_state)))) {\n return;\n }\n const isWidgetHeightZero = this._isWidgetHeightZero(_state);\n const state = isWidgetHeightZero ? undefined : _state;\n const rebuildFromLine = isWidgetHeightZero ? 0 : this._findLineToRebuildWidgetFrom(_state, _rebuildFromLine);\n this._renderRootNode(state, foldingModel, rebuildFromLine);\n this._previousState = _state;\n }\n _isWidgetHeightZero(state) {\n if (!state) {\n return true;\n }\n const futureWidgetHeight = state.startLineNumbers.length * this._lineHeight + state.lastLineRelativePosition;\n if (futureWidgetHeight > 0) {\n this._lastLineRelativePosition = state.lastLineRelativePosition;\n const lineNumbers = [...state.startLineNumbers];\n if (state.showEndForLine !== null) {\n lineNumbers[state.showEndForLine] = state.endLineNumbers[state.showEndForLine];\n }\n this._lineNumbers = lineNumbers;\n }\n else {\n this._lastLineRelativePosition = 0;\n this._lineNumbers = [];\n }\n return futureWidgetHeight === 0;\n }\n _findLineToRebuildWidgetFrom(state, _rebuildFromLine) {\n if (!state || !this._previousState) {\n return 0;\n }\n if (_rebuildFromLine !== undefined) {\n return _rebuildFromLine;\n }\n const previousState = this._previousState;\n const indexOfLinesAlreadyRendered = state.startLineNumbers.findIndex(startLineNumber => !previousState.startLineNumbers.includes(startLineNumber));\n return (indexOfLinesAlreadyRendered === -1) ? 0 : indexOfLinesAlreadyRendered;\n }\n _updateWidgetWidth() {\n const layoutInfo = this._editor.getLayoutInfo();\n const lineNumbersWidth = layoutInfo.contentLeft;\n this._lineNumbersDomNode.style.width = `${lineNumbersWidth}px`;\n this._linesDomNodeScrollable.style.setProperty('--vscode-editorStickyScroll-scrollableWidth', `${this._editor.getScrollWidth() - layoutInfo.verticalScrollbarWidth}px`);\n this._rootDomNode.style.width = `${layoutInfo.width - layoutInfo.verticalScrollbarWidth}px`;\n }\n _clearStickyLinesFromLine(clearFromLine) {\n this._foldingIconStore.clear();\n // Removing only the lines that need to be rerendered\n for (let i = clearFromLine; i < this._renderedStickyLines.length; i++) {\n const stickyLine = this._renderedStickyLines[i];\n stickyLine.lineNumberDomNode.remove();\n stickyLine.lineDomNode.remove();\n }\n // Keep the lines that need to be updated\n this._renderedStickyLines = this._renderedStickyLines.slice(0, clearFromLine);\n this._rootDomNode.style.display = 'none';\n }\n _useFoldingOpacityTransition(requireTransitions) {\n this._lineNumbersDomNode.style.setProperty('--vscode-editorStickyScroll-foldingOpacityTransition', `opacity ${requireTransitions ? 0.5 : 0}s`);\n }\n _setFoldingIconsVisibility(allVisible) {\n for (const line of this._renderedStickyLines) {\n const foldingIcon = line.foldingIcon;\n if (!foldingIcon) {\n continue;\n }\n foldingIcon.setVisible(allVisible ? true : foldingIcon.isCollapsed);\n }\n }\n async _renderRootNode(state, foldingModel, rebuildFromLine) {\n this._clearStickyLinesFromLine(rebuildFromLine);\n if (!state) {\n return;\n }\n // For existing sticky lines update the top and z-index\n for (const stickyLine of this._renderedStickyLines) {\n this._updateTopAndZIndexOfStickyLine(stickyLine);\n }\n // For new sticky lines\n const layoutInfo = this._editor.getLayoutInfo();\n const linesToRender = this._lineNumbers.slice(rebuildFromLine);\n for (const [index, line] of linesToRender.entries()) {\n const stickyLine = this._renderChildNode(index + rebuildFromLine, line, foldingModel, layoutInfo);\n if (!stickyLine) {\n continue;\n }\n this._linesDomNode.appendChild(stickyLine.lineDomNode);\n this._lineNumbersDomNode.appendChild(stickyLine.lineNumberDomNode);\n this._renderedStickyLines.push(stickyLine);\n }\n if (foldingModel) {\n this._setFoldingHoverListeners();\n this._useFoldingOpacityTransition(!this._isOnGlyphMargin);\n }\n const widgetHeight = this._lineNumbers.length * this._lineHeight + this._lastLineRelativePosition;\n this._rootDomNode.style.display = 'block';\n this._lineNumbersDomNode.style.height = `${widgetHeight}px`;\n this._linesDomNodeScrollable.style.height = `${widgetHeight}px`;\n this._rootDomNode.style.height = `${widgetHeight}px`;\n this._rootDomNode.style.marginLeft = '0px';\n this._minContentWidthInPx = Math.max(...this._renderedStickyLines.map(l => l.scrollWidth)) + layoutInfo.verticalScrollbarWidth;\n this._editor.layoutOverlayWidget(this);\n }\n _setFoldingHoverListeners() {\n const showFoldingControls = this._editor.getOption(110 /* EditorOption.showFoldingControls */);\n if (showFoldingControls !== 'mouseover') {\n return;\n }\n this._foldingIconStore.add(_base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.addDisposableListener(this._lineNumbersDomNode, _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.EventType.MOUSE_ENTER, () => {\n this._isOnGlyphMargin = true;\n this._setFoldingIconsVisibility(true);\n }));\n this._foldingIconStore.add(_base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.addDisposableListener(this._lineNumbersDomNode, _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.EventType.MOUSE_LEAVE, () => {\n this._isOnGlyphMargin = false;\n this._useFoldingOpacityTransition(true);\n this._setFoldingIconsVisibility(false);\n }));\n }\n _renderChildNode(index, line, foldingModel, layoutInfo) {\n const viewModel = this._editor._getViewModel();\n if (!viewModel) {\n return;\n }\n const viewLineNumber = viewModel.coordinatesConverter.convertModelPositionToViewPosition(new _common_core_position_js__WEBPACK_IMPORTED_MODULE_8__.Position(line, 1)).lineNumber;\n const lineRenderingData = viewModel.getViewLineRenderingData(viewLineNumber);\n const lineNumberOption = this._editor.getOption(68 /* EditorOption.lineNumbers */);\n let actualInlineDecorations;\n try {\n actualInlineDecorations = _common_viewLayout_lineDecorations_js__WEBPACK_IMPORTED_MODULE_10__.LineDecoration.filter(lineRenderingData.inlineDecorations, viewLineNumber, lineRenderingData.minColumn, lineRenderingData.maxColumn);\n }\n catch (err) {\n actualInlineDecorations = [];\n }\n const renderLineInput = new _common_viewLayout_viewLineRenderer_js__WEBPACK_IMPORTED_MODULE_11__.RenderLineInput(true, true, lineRenderingData.content, lineRenderingData.continuesWithWrappedLine, lineRenderingData.isBasicASCII, lineRenderingData.containsRTL, 0, lineRenderingData.tokens, actualInlineDecorations, lineRenderingData.tabSize, lineRenderingData.startVisibleColumn, 1, 1, 1, 500, 'none', true, true, null);\n const sb = new _common_core_stringBuilder_js__WEBPACK_IMPORTED_MODULE_9__.StringBuilder(2000);\n const renderOutput = (0,_common_viewLayout_viewLineRenderer_js__WEBPACK_IMPORTED_MODULE_11__.renderViewLine)(renderLineInput, sb);\n let newLine;\n if (_ttPolicy) {\n newLine = _ttPolicy.createHTML(sb.build());\n }\n else {\n newLine = sb.build();\n }\n const lineHTMLNode = document.createElement('span');\n lineHTMLNode.setAttribute(STICKY_INDEX_ATTR, String(index));\n lineHTMLNode.setAttribute(STICKY_IS_LINE_ATTR, '');\n lineHTMLNode.setAttribute('role', 'listitem');\n lineHTMLNode.tabIndex = 0;\n lineHTMLNode.className = 'sticky-line-content';\n lineHTMLNode.classList.add(`stickyLine${line}`);\n lineHTMLNode.style.lineHeight = `${this._lineHeight}px`;\n lineHTMLNode.innerHTML = newLine;\n const lineNumberHTMLNode = document.createElement('span');\n lineNumberHTMLNode.setAttribute(STICKY_INDEX_ATTR, String(index));\n lineNumberHTMLNode.setAttribute(STICKY_IS_LINE_NUMBER_ATTR, '');\n lineNumberHTMLNode.className = 'sticky-line-number';\n lineNumberHTMLNode.style.lineHeight = `${this._lineHeight}px`;\n const lineNumbersWidth = layoutInfo.contentLeft;\n lineNumberHTMLNode.style.width = `${lineNumbersWidth}px`;\n const innerLineNumberHTML = document.createElement('span');\n if (lineNumberOption.renderType === 1 /* RenderLineNumbersType.On */ || lineNumberOption.renderType === 3 /* RenderLineNumbersType.Interval */ && line % 10 === 0) {\n innerLineNumberHTML.innerText = line.toString();\n }\n else if (lineNumberOption.renderType === 2 /* RenderLineNumbersType.Relative */) {\n innerLineNumberHTML.innerText = Math.abs(line - this._editor.getPosition().lineNumber).toString();\n }\n innerLineNumberHTML.className = 'sticky-line-number-inner';\n innerLineNumberHTML.style.lineHeight = `${this._lineHeight}px`;\n innerLineNumberHTML.style.width = `${layoutInfo.lineNumbersWidth}px`;\n innerLineNumberHTML.style.paddingLeft = `${layoutInfo.lineNumbersLeft}px`;\n lineNumberHTMLNode.appendChild(innerLineNumberHTML);\n const foldingIcon = this._renderFoldingIconForLine(foldingModel, line);\n if (foldingIcon) {\n lineNumberHTMLNode.appendChild(foldingIcon.domNode);\n }\n this._editor.applyFontInfo(lineHTMLNode);\n this._editor.applyFontInfo(innerLineNumberHTML);\n lineNumberHTMLNode.style.lineHeight = `${this._lineHeight}px`;\n lineHTMLNode.style.lineHeight = `${this._lineHeight}px`;\n lineNumberHTMLNode.style.height = `${this._lineHeight}px`;\n lineHTMLNode.style.height = `${this._lineHeight}px`;\n const renderedLine = new RenderedStickyLine(index, line, lineHTMLNode, lineNumberHTMLNode, foldingIcon, renderOutput.characterMapping, lineHTMLNode.scrollWidth);\n return this._updateTopAndZIndexOfStickyLine(renderedLine);\n }\n _updateTopAndZIndexOfStickyLine(stickyLine) {\n var _a;\n const index = stickyLine.index;\n const lineHTMLNode = stickyLine.lineDomNode;\n const lineNumberHTMLNode = stickyLine.lineNumberDomNode;\n const isLastLine = index === this._lineNumbers.length - 1;\n const lastLineZIndex = '0';\n const intermediateLineZIndex = '1';\n lineHTMLNode.style.zIndex = isLastLine ? lastLineZIndex : intermediateLineZIndex;\n lineNumberHTMLNode.style.zIndex = isLastLine ? lastLineZIndex : intermediateLineZIndex;\n const lastLineTop = `${index * this._lineHeight + this._lastLineRelativePosition + (((_a = stickyLine.foldingIcon) === null || _a === void 0 ? void 0 : _a.isCollapsed) ? 1 : 0)}px`;\n const intermediateLineTop = `${index * this._lineHeight}px`;\n lineHTMLNode.style.top = isLastLine ? lastLineTop : intermediateLineTop;\n lineNumberHTMLNode.style.top = isLastLine ? lastLineTop : intermediateLineTop;\n return stickyLine;\n }\n _renderFoldingIconForLine(foldingModel, line) {\n const showFoldingControls = this._editor.getOption(110 /* EditorOption.showFoldingControls */);\n if (!foldingModel || showFoldingControls === 'never') {\n return;\n }\n const foldingRegions = foldingModel.regions;\n const indexOfFoldingRegion = foldingRegions.findRange(line);\n const startLineNumber = foldingRegions.getStartLineNumber(indexOfFoldingRegion);\n const isFoldingScope = line === startLineNumber;\n if (!isFoldingScope) {\n return;\n }\n const isCollapsed = foldingRegions.isCollapsed(indexOfFoldingRegion);\n const foldingIcon = new StickyFoldingIcon(isCollapsed, startLineNumber, foldingRegions.getEndLineNumber(indexOfFoldingRegion), this._lineHeight);\n foldingIcon.setVisible(this._isOnGlyphMargin ? true : (isCollapsed || showFoldingControls === 'always'));\n foldingIcon.domNode.setAttribute(STICKY_IS_FOLDING_ICON_ATTR, '');\n return foldingIcon;\n }\n getId() {\n return 'editor.contrib.stickyScrollWidget';\n }\n getDomNode() {\n return this._rootDomNode;\n }\n getPosition() {\n return {\n preference: null\n };\n }\n getMinContentWidthInPx() {\n return this._minContentWidthInPx;\n }\n focusLineWithIndex(index) {\n if (0 <= index && index < this._renderedStickyLines.length) {\n this._renderedStickyLines[index].lineDomNode.focus();\n }\n }\n /**\n * Given a leaf dom node, tries to find the editor position.\n */\n getEditorPositionFromNode(spanDomNode) {\n if (!spanDomNode || spanDomNode.children.length > 0) {\n // This is not a leaf node\n return null;\n }\n const renderedStickyLine = this._getRenderedStickyLineFromChildDomNode(spanDomNode);\n if (!renderedStickyLine) {\n return null;\n }\n const column = (0,_browser_viewParts_lines_viewLine_js__WEBPACK_IMPORTED_MODULE_6__.getColumnOfNodeOffset)(renderedStickyLine.characterMapping, spanDomNode, 0);\n return new _common_core_position_js__WEBPACK_IMPORTED_MODULE_8__.Position(renderedStickyLine.lineNumber, column);\n }\n getLineNumberFromChildDomNode(domNode) {\n var _a, _b;\n return (_b = (_a = this._getRenderedStickyLineFromChildDomNode(domNode)) === null || _a === void 0 ? void 0 : _a.lineNumber) !== null && _b !== void 0 ? _b : null;\n }\n _getRenderedStickyLineFromChildDomNode(domNode) {\n const index = this.getLineIndexFromChildDomNode(domNode);\n if (index === null || index < 0 || index >= this._renderedStickyLines.length) {\n return null;\n }\n return this._renderedStickyLines[index];\n }\n /**\n * Given a child dom node, tries to find the line number attribute that was stored in the node.\n * @returns the attribute value or null if none is found.\n */\n getLineIndexFromChildDomNode(domNode) {\n const lineIndex = this._getAttributeValue(domNode, STICKY_INDEX_ATTR);\n return lineIndex ? parseInt(lineIndex, 10) : null;\n }\n /**\n * Given a child dom node, tries to find if it is (contained in) a sticky line.\n * @returns a boolean.\n */\n isInStickyLine(domNode) {\n const isInLine = this._getAttributeValue(domNode, STICKY_IS_LINE_ATTR);\n return isInLine !== undefined;\n }\n /**\n * Given a child dom node, tries to find if this dom node is (contained in) a sticky folding icon.\n * @returns a boolean.\n */\n isInFoldingIconDomNode(domNode) {\n const isInFoldingIcon = this._getAttributeValue(domNode, STICKY_IS_FOLDING_ICON_ATTR);\n return isInFoldingIcon !== undefined;\n }\n /**\n * Given the dom node, finds if it or its parent sequence contains the given attribute.\n * @returns the attribute value or undefined.\n */\n _getAttributeValue(domNode, attribute) {\n while (domNode && domNode !== this._rootDomNode) {\n const line = domNode.getAttribute(attribute);\n if (line !== null) {\n return line;\n }\n domNode = domNode.parentElement;\n }\n return;\n }\n}\nclass RenderedStickyLine {\n constructor(index, lineNumber, lineDomNode, lineNumberDomNode, foldingIcon, characterMapping, scrollWidth) {\n this.index = index;\n this.lineNumber = lineNumber;\n this.lineDomNode = lineDomNode;\n this.lineNumberDomNode = lineNumberDomNode;\n this.foldingIcon = foldingIcon;\n this.characterMapping = characterMapping;\n this.scrollWidth = scrollWidth;\n }\n}\nclass StickyFoldingIcon {\n constructor(isCollapsed, foldingStartLine, foldingEndLine, dimension) {\n this.isCollapsed = isCollapsed;\n this.foldingStartLine = foldingStartLine;\n this.foldingEndLine = foldingEndLine;\n this.dimension = dimension;\n this.domNode = document.createElement('div');\n this.domNode.style.width = `${dimension}px`;\n this.domNode.style.height = `${dimension}px`;\n this.domNode.className = _base_common_themables_js__WEBPACK_IMPORTED_MODULE_4__.ThemeIcon.asClassName(isCollapsed ? _folding_browser_foldingDecorations_js__WEBPACK_IMPORTED_MODULE_12__.foldingCollapsedIcon : _folding_browser_foldingDecorations_js__WEBPACK_IMPORTED_MODULE_12__.foldingExpandedIcon);\n }\n setVisible(visible) {\n this.domNode.style.cursor = visible ? 'pointer' : 'default';\n this.domNode.style.opacity = visible ? '1' : '0';\n }\n}\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/contrib/stickyScroll/browser/stickyScrollWidget.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/contrib/suggest/browser/completionModel.js":
/*!*********************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/contrib/suggest/browser/completionModel.js ***!
\*********************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ CompletionModel: () => (/* binding */ CompletionModel),\n/* harmony export */ LineContext: () => (/* binding */ LineContext)\n/* harmony export */ });\n/* harmony import */ var _base_common_arrays_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../../base/common/arrays.js */ \"./node_modules/monaco-editor/esm/vs/base/common/arrays.js\");\n/* harmony import */ var _base_common_filters_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../base/common/filters.js */ \"./node_modules/monaco-editor/esm/vs/base/common/filters.js\");\n/* harmony import */ var _base_common_strings_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../../base/common/strings.js */ \"./node_modules/monaco-editor/esm/vs/base/common/strings.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n\n\nclass LineContext {\n constructor(leadingLineContent, characterCountDelta) {\n this.leadingLineContent = leadingLineContent;\n this.characterCountDelta = characterCountDelta;\n }\n}\n/**\n * Sorted, filtered completion view model\n * */\nclass CompletionModel {\n constructor(items, column, lineContext, wordDistance, options, snippetSuggestions, fuzzyScoreOptions = _base_common_filters_js__WEBPACK_IMPORTED_MODULE_1__.FuzzyScoreOptions.default, clipboardText = undefined) {\n this.clipboardText = clipboardText;\n this._snippetCompareFn = CompletionModel._compareCompletionItems;\n this._items = items;\n this._column = column;\n this._wordDistance = wordDistance;\n this._options = options;\n this._refilterKind = 1 /* Refilter.All */;\n this._lineContext = lineContext;\n this._fuzzyScoreOptions = fuzzyScoreOptions;\n if (snippetSuggestions === 'top') {\n this._snippetCompareFn = CompletionModel._compareCompletionItemsSnippetsUp;\n }\n else if (snippetSuggestions === 'bottom') {\n this._snippetCompareFn = CompletionModel._compareCompletionItemsSnippetsDown;\n }\n }\n get lineContext() {\n return this._lineContext;\n }\n set lineContext(value) {\n if (this._lineContext.leadingLineContent !== value.leadingLineContent\n || this._lineContext.characterCountDelta !== value.characterCountDelta) {\n this._refilterKind = this._lineContext.characterCountDelta < value.characterCountDelta && this._filteredItems ? 2 /* Refilter.Incr */ : 1 /* Refilter.All */;\n this._lineContext = value;\n }\n }\n get items() {\n this._ensureCachedState();\n return this._filteredItems;\n }\n getItemsByProvider() {\n this._ensureCachedState();\n return this._itemsByProvider;\n }\n getIncompleteProvider() {\n this._ensureCachedState();\n const result = new Set();\n for (const [provider, items] of this.getItemsByProvider()) {\n if (items.length > 0 && items[0].container.incomplete) {\n result.add(provider);\n }\n }\n return result;\n }\n get stats() {\n this._ensureCachedState();\n return this._stats;\n }\n _ensureCachedState() {\n if (this._refilterKind !== 0 /* Refilter.Nothing */) {\n this._createCachedState();\n }\n }\n _createCachedState() {\n this._itemsByProvider = new Map();\n const labelLengths = [];\n const { leadingLineContent, characterCountDelta } = this._lineContext;\n let word = '';\n let wordLow = '';\n // incrementally filter less\n const source = this._refilterKind === 1 /* Refilter.All */ ? this._items : this._filteredItems;\n const target = [];\n // picks a score function based on the number of\n // items that we have to score/filter and based on the\n // user-configuration\n const scoreFn = (!this._options.filterGraceful || source.length > 2000) ? _base_common_filters_js__WEBPACK_IMPORTED_MODULE_1__.fuzzyScore : _base_common_filters_js__WEBPACK_IMPORTED_MODULE_1__.fuzzyScoreGracefulAggressive;\n for (let i = 0; i < source.length; i++) {\n const item = source[i];\n if (item.isInvalid) {\n continue; // SKIP invalid items\n }\n // keep all items by their provider\n const arr = this._itemsByProvider.get(item.provider);\n if (arr) {\n arr.push(item);\n }\n else {\n this._itemsByProvider.set(item.provider, [item]);\n }\n // 'word' is that remainder of the current line that we\n // filter and score against. In theory each suggestion uses a\n // different word, but in practice not - that's why we cache\n const overwriteBefore = item.position.column - item.editStart.column;\n const wordLen = overwriteBefore + characterCountDelta - (item.position.column - this._column);\n if (word.length !== wordLen) {\n word = wordLen === 0 ? '' : leadingLineContent.slice(-wordLen);\n wordLow = word.toLowerCase();\n }\n // remember the word against which this item was\n // scored\n item.word = word;\n if (wordLen === 0) {\n // when there is nothing to score against, don't\n // event try to do. Use a const rank and rely on\n // the fallback-sort using the initial sort order.\n // use a score of `-100` because that is out of the\n // bound of values `fuzzyScore` will return\n item.score = _base_common_filters_js__WEBPACK_IMPORTED_MODULE_1__.FuzzyScore.Default;\n }\n else {\n // skip word characters that are whitespace until\n // we have hit the replace range (overwriteBefore)\n let wordPos = 0;\n while (wordPos < overwriteBefore) {\n const ch = word.charCodeAt(wordPos);\n if (ch === 32 /* CharCode.Space */ || ch === 9 /* CharCode.Tab */) {\n wordPos += 1;\n }\n else {\n break;\n }\n }\n if (wordPos >= wordLen) {\n // the wordPos at which scoring starts is the whole word\n // and therefore the same rules as not having a word apply\n item.score = _base_common_filters_js__WEBPACK_IMPORTED_MODULE_1__.FuzzyScore.Default;\n }\n else if (typeof item.completion.filterText === 'string') {\n // when there is a `filterText` it must match the `word`.\n // if it matches we check with the label to compute highlights\n // and if that doesn't yield a result we have no highlights,\n // despite having the match\n const match = scoreFn(word, wordLow, wordPos, item.completion.filterText, item.filterTextLow, 0, this._fuzzyScoreOptions);\n if (!match) {\n continue; // NO match\n }\n if ((0,_base_common_strings_js__WEBPACK_IMPORTED_MODULE_2__.compareIgnoreCase)(item.completion.filterText, item.textLabel) === 0) {\n // filterText and label are actually the same -> use good highlights\n item.score = match;\n }\n else {\n // re-run the scorer on the label in the hope of a result BUT use the rank\n // of the filterText-match\n item.score = (0,_base_common_filters_js__WEBPACK_IMPORTED_MODULE_1__.anyScore)(word, wordLow, wordPos, item.textLabel, item.labelLow, 0);\n item.score[0] = match[0]; // use score from filterText\n }\n }\n else {\n // by default match `word` against the `label`\n const match = scoreFn(word, wordLow, wordPos, item.textLabel, item.labelLow, 0, this._fuzzyScoreOptions);\n if (!match) {\n continue; // NO match\n }\n item.score = match;\n }\n }\n item.idx = i;\n item.distance = this._wordDistance.distance(item.position, item.completion);\n target.push(item);\n // update stats\n labelLengths.push(item.textLabel.length);\n }\n this._filteredItems = target.sort(this._snippetCompareFn);\n this._refilterKind = 0 /* Refilter.Nothing */;\n this._stats = {\n pLabelLen: labelLengths.length ?\n (0,_base_common_arrays_js__WEBPACK_IMPORTED_MODULE_0__.quickSelect)(labelLengths.length - .85, labelLengths, (a, b) => a - b)\n : 0\n };\n }\n static _compareCompletionItems(a, b) {\n if (a.score[0] > b.score[0]) {\n return -1;\n }\n else if (a.score[0] < b.score[0]) {\n return 1;\n }\n else if (a.distance < b.distance) {\n return -1;\n }\n else if (a.distance > b.distance) {\n return 1;\n }\n else if (a.idx < b.idx) {\n return -1;\n }\n else if (a.idx > b.idx) {\n return 1;\n }\n else {\n return 0;\n }\n }\n static _compareCompletionItemsSnippetsDown(a, b) {\n if (a.completion.kind !== b.completion.kind) {\n if (a.completion.kind === 27 /* CompletionItemKind.Snippet */) {\n return 1;\n }\n else if (b.completion.kind === 27 /* CompletionItemKind.Snippet */) {\n return -1;\n }\n }\n return CompletionModel._compareCompletionItems(a, b);\n }\n static _compareCompletionItemsSnippetsUp(a, b) {\n if (a.completion.kind !== b.completion.kind) {\n if (a.completion.kind === 27 /* CompletionItemKind.Snippet */) {\n return -1;\n }\n else if (b.completion.kind === 27 /* CompletionItemKind.Snippet */) {\n return 1;\n }\n }\n return CompletionModel._compareCompletionItems(a, b);\n }\n}\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/contrib/suggest/browser/completionModel.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/contrib/suggest/browser/suggest.js":
/*!*************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/contrib/suggest/browser/suggest.js ***!
\*************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ CompletionItem: () => (/* binding */ CompletionItem),\n/* harmony export */ CompletionItemModel: () => (/* binding */ CompletionItemModel),\n/* harmony export */ CompletionOptions: () => (/* binding */ CompletionOptions),\n/* harmony export */ Context: () => (/* binding */ Context),\n/* harmony export */ QuickSuggestionsOptions: () => (/* binding */ QuickSuggestionsOptions),\n/* harmony export */ getSnippetSuggestSupport: () => (/* binding */ getSnippetSuggestSupport),\n/* harmony export */ getSuggestionComparator: () => (/* binding */ getSuggestionComparator),\n/* harmony export */ provideSuggestionItems: () => (/* binding */ provideSuggestionItems),\n/* harmony export */ showSimpleSuggestions: () => (/* binding */ showSimpleSuggestions),\n/* harmony export */ suggestWidgetStatusbarMenu: () => (/* binding */ suggestWidgetStatusbarMenu)\n/* harmony export */ });\n/* harmony import */ var _base_common_cancellation_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../../base/common/cancellation.js */ \"./node_modules/monaco-editor/esm/vs/base/common/cancellation.js\");\n/* harmony import */ var _base_common_errors_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../base/common/errors.js */ \"./node_modules/monaco-editor/esm/vs/base/common/errors.js\");\n/* harmony import */ var _base_common_filters_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../../base/common/filters.js */ \"./node_modules/monaco-editor/esm/vs/base/common/filters.js\");\n/* harmony import */ var _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../../../base/common/lifecycle.js */ \"./node_modules/monaco-editor/esm/vs/base/common/lifecycle.js\");\n/* harmony import */ var _base_common_stopwatch_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../../../base/common/stopwatch.js */ \"./node_modules/monaco-editor/esm/vs/base/common/stopwatch.js\");\n/* harmony import */ var _base_common_types_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../../../../base/common/types.js */ \"./node_modules/monaco-editor/esm/vs/base/common/types.js\");\n/* harmony import */ var _base_common_uri_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../../../../base/common/uri.js */ \"./node_modules/monaco-editor/esm/vs/base/common/uri.js\");\n/* harmony import */ var _common_core_position_js__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ../../../common/core/position.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/core/position.js\");\n/* harmony import */ var _common_core_range_js__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ../../../common/core/range.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/core/range.js\");\n/* harmony import */ var _common_services_resolverService_js__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ../../../common/services/resolverService.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/services/resolverService.js\");\n/* harmony import */ var _snippet_browser_snippetParser_js__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! ../../snippet/browser/snippetParser.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/snippet/browser/snippetParser.js\");\n/* harmony import */ var _nls_js__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(/*! ../../../../nls.js */ \"./node_modules/monaco-editor/esm/vs/nls.js\");\n/* harmony import */ var _platform_actions_common_actions_js__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(/*! ../../../../platform/actions/common/actions.js */ \"./node_modules/monaco-editor/esm/vs/platform/actions/common/actions.js\");\n/* harmony import */ var _platform_commands_common_commands_js__WEBPACK_IMPORTED_MODULE_13__ = __webpack_require__(/*! ../../../../platform/commands/common/commands.js */ \"./node_modules/monaco-editor/esm/vs/platform/commands/common/commands.js\");\n/* harmony import */ var _platform_contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_14__ = __webpack_require__(/*! ../../../../platform/contextkey/common/contextkey.js */ \"./node_modules/monaco-editor/esm/vs/platform/contextkey/common/contextkey.js\");\n/* harmony import */ var _common_services_languageFeatures_js__WEBPACK_IMPORTED_MODULE_15__ = __webpack_require__(/*! ../../../common/services/languageFeatures.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/services/languageFeatures.js\");\n/* harmony import */ var _platform_history_browser_contextScopedHistoryWidget_js__WEBPACK_IMPORTED_MODULE_16__ = __webpack_require__(/*! ../../../../platform/history/browser/contextScopedHistoryWidget.js */ \"./node_modules/monaco-editor/esm/vs/platform/history/browser/contextScopedHistoryWidget.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nconst Context = {\n Visible: _platform_history_browser_contextScopedHistoryWidget_js__WEBPACK_IMPORTED_MODULE_16__.historyNavigationVisible,\n HasFocusedSuggestion: new _platform_contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_14__.RawContextKey('suggestWidgetHasFocusedSuggestion', false, (0,_nls_js__WEBPACK_IMPORTED_MODULE_11__.localize)('suggestWidgetHasSelection', \"Whether any suggestion is focused\")),\n DetailsVisible: new _platform_contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_14__.RawContextKey('suggestWidgetDetailsVisible', false, (0,_nls_js__WEBPACK_IMPORTED_MODULE_11__.localize)('suggestWidgetDetailsVisible', \"Whether suggestion details are visible\")),\n MultipleSuggestions: new _platform_contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_14__.RawContextKey('suggestWidgetMultipleSuggestions', false, (0,_nls_js__WEBPACK_IMPORTED_MODULE_11__.localize)('suggestWidgetMultipleSuggestions', \"Whether there are multiple suggestions to pick from\")),\n MakesTextEdit: new _platform_contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_14__.RawContextKey('suggestionMakesTextEdit', true, (0,_nls_js__WEBPACK_IMPORTED_MODULE_11__.localize)('suggestionMakesTextEdit', \"Whether inserting the current suggestion yields in a change or has everything already been typed\")),\n AcceptSuggestionsOnEnter: new _platform_contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_14__.RawContextKey('acceptSuggestionOnEnter', true, (0,_nls_js__WEBPACK_IMPORTED_MODULE_11__.localize)('acceptSuggestionOnEnter', \"Whether suggestions are inserted when pressing Enter\")),\n HasInsertAndReplaceRange: new _platform_contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_14__.RawContextKey('suggestionHasInsertAndReplaceRange', false, (0,_nls_js__WEBPACK_IMPORTED_MODULE_11__.localize)('suggestionHasInsertAndReplaceRange', \"Whether the current suggestion has insert and replace behaviour\")),\n InsertMode: new _platform_contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_14__.RawContextKey('suggestionInsertMode', undefined, { type: 'string', description: (0,_nls_js__WEBPACK_IMPORTED_MODULE_11__.localize)('suggestionInsertMode', \"Whether the default behaviour is to insert or replace\") }),\n CanResolve: new _platform_contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_14__.RawContextKey('suggestionCanResolve', false, (0,_nls_js__WEBPACK_IMPORTED_MODULE_11__.localize)('suggestionCanResolve', \"Whether the current suggestion supports to resolve further details\")),\n};\nconst suggestWidgetStatusbarMenu = new _platform_actions_common_actions_js__WEBPACK_IMPORTED_MODULE_12__.MenuId('suggestWidgetStatusBar');\nclass CompletionItem {\n constructor(position, completion, container, provider) {\n var _a;\n this.position = position;\n this.completion = completion;\n this.container = container;\n this.provider = provider;\n // validation\n this.isInvalid = false;\n // sorting, filtering\n this.score = _base_common_filters_js__WEBPACK_IMPORTED_MODULE_2__.FuzzyScore.Default;\n this.distance = 0;\n this.textLabel = typeof completion.label === 'string'\n ? completion.label\n : (_a = completion.label) === null || _a === void 0 ? void 0 : _a.label;\n // ensure lower-variants (perf)\n this.labelLow = this.textLabel.toLowerCase();\n // validate label\n this.isInvalid = !this.textLabel;\n this.sortTextLow = completion.sortText && completion.sortText.toLowerCase();\n this.filterTextLow = completion.filterText && completion.filterText.toLowerCase();\n this.extensionId = completion.extensionId;\n // normalize ranges\n if (_common_core_range_js__WEBPACK_IMPORTED_MODULE_8__.Range.isIRange(completion.range)) {\n this.editStart = new _common_core_position_js__WEBPACK_IMPORTED_MODULE_7__.Position(completion.range.startLineNumber, completion.range.startColumn);\n this.editInsertEnd = new _common_core_position_js__WEBPACK_IMPORTED_MODULE_7__.Position(completion.range.endLineNumber, completion.range.endColumn);\n this.editReplaceEnd = new _common_core_position_js__WEBPACK_IMPORTED_MODULE_7__.Position(completion.range.endLineNumber, completion.range.endColumn);\n // validate range\n this.isInvalid = this.isInvalid\n || _common_core_range_js__WEBPACK_IMPORTED_MODULE_8__.Range.spansMultipleLines(completion.range) || completion.range.startLineNumber !== position.lineNumber;\n }\n else {\n this.editStart = new _common_core_position_js__WEBPACK_IMPORTED_MODULE_7__.Position(completion.range.insert.startLineNumber, completion.range.insert.startColumn);\n this.editInsertEnd = new _common_core_position_js__WEBPACK_IMPORTED_MODULE_7__.Position(completion.range.insert.endLineNumber, completion.range.insert.endColumn);\n this.editReplaceEnd = new _common_core_position_js__WEBPACK_IMPORTED_MODULE_7__.Position(completion.range.replace.endLineNumber, completion.range.replace.endColumn);\n // validate ranges\n this.isInvalid = this.isInvalid\n || _common_core_range_js__WEBPACK_IMPORTED_MODULE_8__.Range.spansMultipleLines(completion.range.insert) || _common_core_range_js__WEBPACK_IMPORTED_MODULE_8__.Range.spansMultipleLines(completion.range.replace)\n || completion.range.insert.startLineNumber !== position.lineNumber || completion.range.replace.startLineNumber !== position.lineNumber\n || completion.range.insert.startColumn !== completion.range.replace.startColumn;\n }\n // create the suggestion resolver\n if (typeof provider.resolveCompletionItem !== 'function') {\n this._resolveCache = Promise.resolve();\n this._resolveDuration = 0;\n }\n }\n // ---- resolving\n get isResolved() {\n return this._resolveDuration !== undefined;\n }\n get resolveDuration() {\n return this._resolveDuration !== undefined ? this._resolveDuration : -1;\n }\n async resolve(token) {\n if (!this._resolveCache) {\n const sub = token.onCancellationRequested(() => {\n this._resolveCache = undefined;\n this._resolveDuration = undefined;\n });\n const sw = new _base_common_stopwatch_js__WEBPACK_IMPORTED_MODULE_4__.StopWatch(true);\n this._resolveCache = Promise.resolve(this.provider.resolveCompletionItem(this.completion, token)).then(value => {\n Object.assign(this.completion, value);\n this._resolveDuration = sw.elapsed();\n }, err => {\n if ((0,_base_common_errors_js__WEBPACK_IMPORTED_MODULE_1__.isCancellationError)(err)) {\n // the IPC queue will reject the request with the\n // cancellation error -> reset cached\n this._resolveCache = undefined;\n this._resolveDuration = undefined;\n }\n }).finally(() => {\n sub.dispose();\n });\n }\n return this._resolveCache;\n }\n}\nclass CompletionOptions {\n constructor(snippetSortOrder = 2 /* SnippetSortOrder.Bottom */, kindFilter = new Set(), providerFilter = new Set(), providerItemsToReuse = new Map(), showDeprecated = true) {\n this.snippetSortOrder = snippetSortOrder;\n this.kindFilter = kindFilter;\n this.providerFilter = providerFilter;\n this.providerItemsToReuse = providerItemsToReuse;\n this.showDeprecated = showDeprecated;\n }\n}\nCompletionOptions.default = new CompletionOptions();\nlet _snippetSuggestSupport;\nfunction getSnippetSuggestSupport() {\n return _snippetSuggestSupport;\n}\nclass CompletionItemModel {\n constructor(items, needsClipboard, durations, disposable) {\n this.items = items;\n this.needsClipboard = needsClipboard;\n this.durations = durations;\n this.disposable = disposable;\n }\n}\nasync function provideSuggestionItems(registry, model, position, options = CompletionOptions.default, context = { triggerKind: 0 /* languages.CompletionTriggerKind.Invoke */ }, token = _base_common_cancellation_js__WEBPACK_IMPORTED_MODULE_0__.CancellationToken.None) {\n const sw = new _base_common_stopwatch_js__WEBPACK_IMPORTED_MODULE_4__.StopWatch();\n position = position.clone();\n const word = model.getWordAtPosition(position);\n const defaultReplaceRange = word ? new _common_core_range_js__WEBPACK_IMPORTED_MODULE_8__.Range(position.lineNumber, word.startColumn, position.lineNumber, word.endColumn) : _common_core_range_js__WEBPACK_IMPORTED_MODULE_8__.Range.fromPositions(position);\n const defaultRange = { replace: defaultReplaceRange, insert: defaultReplaceRange.setEndPosition(position.lineNumber, position.column) };\n const result = [];\n const disposables = new _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_3__.DisposableStore();\n const durations = [];\n let needsClipboard = false;\n const onCompletionList = (provider, container, sw) => {\n var _a, _b, _c;\n let didAddResult = false;\n if (!container) {\n return didAddResult;\n }\n for (const suggestion of container.suggestions) {\n if (!options.kindFilter.has(suggestion.kind)) {\n // skip if not showing deprecated suggestions\n if (!options.showDeprecated && ((_a = suggestion === null || suggestion === void 0 ? void 0 : suggestion.tags) === null || _a === void 0 ? void 0 : _a.includes(1 /* languages.CompletionItemTag.Deprecated */))) {\n continue;\n }\n // fill in default range when missing\n if (!suggestion.range) {\n suggestion.range = defaultRange;\n }\n // fill in default sortText when missing\n if (!suggestion.sortText) {\n suggestion.sortText = typeof suggestion.label === 'string' ? suggestion.label : suggestion.label.label;\n }\n if (!needsClipboard && suggestion.insertTextRules && suggestion.insertTextRules & 4 /* languages.CompletionItemInsertTextRule.InsertAsSnippet */) {\n needsClipboard = _snippet_browser_snippetParser_js__WEBPACK_IMPORTED_MODULE_10__.SnippetParser.guessNeedsClipboard(suggestion.insertText);\n }\n result.push(new CompletionItem(position, suggestion, container, provider));\n didAddResult = true;\n }\n }\n if ((0,_base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_3__.isDisposable)(container)) {\n disposables.add(container);\n }\n durations.push({\n providerName: (_b = provider._debugDisplayName) !== null && _b !== void 0 ? _b : 'unknown_provider', elapsedProvider: (_c = container.duration) !== null && _c !== void 0 ? _c : -1, elapsedOverall: sw.elapsed()\n });\n return didAddResult;\n };\n // ask for snippets in parallel to asking \"real\" providers. Only do something if configured to\n // do so - no snippet filter, no special-providers-only request\n const snippetCompletions = (async () => {\n if (!_snippetSuggestSupport || options.kindFilter.has(27 /* languages.CompletionItemKind.Snippet */)) {\n return;\n }\n // we have items from a previous session that we can reuse\n const reuseItems = options.providerItemsToReuse.get(_snippetSuggestSupport);\n if (reuseItems) {\n reuseItems.forEach(item => result.push(item));\n return;\n }\n if (options.providerFilter.size > 0 && !options.providerFilter.has(_snippetSuggestSupport)) {\n return;\n }\n const sw = new _base_common_stopwatch_js__WEBPACK_IMPORTED_MODULE_4__.StopWatch();\n const list = await _snippetSuggestSupport.provideCompletionItems(model, position, context, token);\n onCompletionList(_snippetSuggestSupport, list, sw);\n })();\n // add suggestions from contributed providers - providers are ordered in groups of\n // equal score and once a group produces a result the process stops\n // get provider groups, always add snippet suggestion provider\n for (const providerGroup of registry.orderedGroups(model)) {\n // for each support in the group ask for suggestions\n let didAddResult = false;\n await Promise.all(providerGroup.map(async (provider) => {\n // we have items from a previous session that we can reuse\n if (options.providerItemsToReuse.has(provider)) {\n const items = options.providerItemsToReuse.get(provider);\n items.forEach(item => result.push(item));\n didAddResult = didAddResult || items.length > 0;\n return;\n }\n // check if this provider is filtered out\n if (options.providerFilter.size > 0 && !options.providerFilter.has(provider)) {\n return;\n }\n try {\n const sw = new _base_common_stopwatch_js__WEBPACK_IMPORTED_MODULE_4__.StopWatch();\n const list = await provider.provideCompletionItems(model, position, context, token);\n didAddResult = onCompletionList(provider, list, sw) || didAddResult;\n }\n catch (err) {\n (0,_base_common_errors_js__WEBPACK_IMPORTED_MODULE_1__.onUnexpectedExternalError)(err);\n }\n }));\n if (didAddResult || token.isCancellationRequested) {\n break;\n }\n }\n await snippetCompletions;\n if (token.isCancellationRequested) {\n disposables.dispose();\n return Promise.reject(new _base_common_errors_js__WEBPACK_IMPORTED_MODULE_1__.CancellationError());\n }\n return new CompletionItemModel(result.sort(getSuggestionComparator(options.snippetSortOrder)), needsClipboard, { entries: durations, elapsed: sw.elapsed() }, disposables);\n}\nfunction defaultComparator(a, b) {\n // check with 'sortText'\n if (a.sortTextLow && b.sortTextLow) {\n if (a.sortTextLow < b.sortTextLow) {\n return -1;\n }\n else if (a.sortTextLow > b.sortTextLow) {\n return 1;\n }\n }\n // check with 'label'\n if (a.textLabel < b.textLabel) {\n return -1;\n }\n else if (a.textLabel > b.textLabel) {\n return 1;\n }\n // check with 'type'\n return a.completion.kind - b.completion.kind;\n}\nfunction snippetUpComparator(a, b) {\n if (a.completion.kind !== b.completion.kind) {\n if (a.completion.kind === 27 /* languages.CompletionItemKind.Snippet */) {\n return -1;\n }\n else if (b.completion.kind === 27 /* languages.CompletionItemKind.Snippet */) {\n return 1;\n }\n }\n return defaultComparator(a, b);\n}\nfunction snippetDownComparator(a, b) {\n if (a.completion.kind !== b.completion.kind) {\n if (a.completion.kind === 27 /* languages.CompletionItemKind.Snippet */) {\n return 1;\n }\n else if (b.completion.kind === 27 /* languages.CompletionItemKind.Snippet */) {\n return -1;\n }\n }\n return defaultComparator(a, b);\n}\nconst _snippetComparators = new Map();\n_snippetComparators.set(0 /* SnippetSortOrder.Top */, snippetUpComparator);\n_snippetComparators.set(2 /* SnippetSortOrder.Bottom */, snippetDownComparator);\n_snippetComparators.set(1 /* SnippetSortOrder.Inline */, defaultComparator);\nfunction getSuggestionComparator(snippetConfig) {\n return _snippetComparators.get(snippetConfig);\n}\n_platform_commands_common_commands_js__WEBPACK_IMPORTED_MODULE_13__.CommandsRegistry.registerCommand('_executeCompletionItemProvider', async (accessor, ...args) => {\n const [uri, position, triggerCharacter, maxItemsToResolve] = args;\n (0,_base_common_types_js__WEBPACK_IMPORTED_MODULE_5__.assertType)(_base_common_uri_js__WEBPACK_IMPORTED_MODULE_6__.URI.isUri(uri));\n (0,_base_common_types_js__WEBPACK_IMPORTED_MODULE_5__.assertType)(_common_core_position_js__WEBPACK_IMPORTED_MODULE_7__.Position.isIPosition(position));\n (0,_base_common_types_js__WEBPACK_IMPORTED_MODULE_5__.assertType)(typeof triggerCharacter === 'string' || !triggerCharacter);\n (0,_base_common_types_js__WEBPACK_IMPORTED_MODULE_5__.assertType)(typeof maxItemsToResolve === 'number' || !maxItemsToResolve);\n const { completionProvider } = accessor.get(_common_services_languageFeatures_js__WEBPACK_IMPORTED_MODULE_15__.ILanguageFeaturesService);\n const ref = await accessor.get(_common_services_resolverService_js__WEBPACK_IMPORTED_MODULE_9__.ITextModelService).createModelReference(uri);\n try {\n const result = {\n incomplete: false,\n suggestions: []\n };\n const resolving = [];\n const actualPosition = ref.object.textEditorModel.validatePosition(position);\n const completions = await provideSuggestionItems(completionProvider, ref.object.textEditorModel, actualPosition, undefined, { triggerCharacter: triggerCharacter !== null && triggerCharacter !== void 0 ? triggerCharacter : undefined, triggerKind: triggerCharacter ? 1 /* languages.CompletionTriggerKind.TriggerCharacter */ : 0 /* languages.CompletionTriggerKind.Invoke */ });\n for (const item of completions.items) {\n if (resolving.length < (maxItemsToResolve !== null && maxItemsToResolve !== void 0 ? maxItemsToResolve : 0)) {\n resolving.push(item.resolve(_base_common_cancellation_js__WEBPACK_IMPORTED_MODULE_0__.CancellationToken.None));\n }\n result.incomplete = result.incomplete || item.container.incomplete;\n result.suggestions.push(item.completion);\n }\n try {\n await Promise.all(resolving);\n return result;\n }\n finally {\n setTimeout(() => completions.disposable.dispose(), 100);\n }\n }\n finally {\n ref.dispose();\n }\n});\nfunction showSimpleSuggestions(editor, provider) {\n var _a;\n (_a = editor.getContribution('editor.contrib.suggestController')) === null || _a === void 0 ? void 0 : _a.triggerSuggest(new Set().add(provider), undefined, true);\n}\nclass QuickSuggestionsOptions {\n static isAllOff(config) {\n return config.other === 'off' && config.comments === 'off' && config.strings === 'off';\n }\n static isAllOn(config) {\n return config.other === 'on' && config.comments === 'on' && config.strings === 'on';\n }\n static valueFor(config, tokenType) {\n switch (tokenType) {\n case 1 /* StandardTokenType.Comment */: return config.comments;\n case 2 /* StandardTokenType.String */: return config.strings;\n default: return config.other;\n }\n }\n}\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/contrib/suggest/browser/suggest.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/contrib/suggest/browser/suggestAlternatives.js":
/*!*************************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/contrib/suggest/browser/suggestAlternatives.js ***!
\*************************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ SuggestAlternatives: () => (/* binding */ SuggestAlternatives)\n/* harmony export */ });\n/* harmony import */ var _platform_contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../../platform/contextkey/common/contextkey.js */ \"./node_modules/monaco-editor/esm/vs/platform/contextkey/common/contextkey.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\nvar __decorate = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\n return c > 3 && r && Object.defineProperty(target, key, r), r;\n};\nvar __param = (undefined && undefined.__param) || function (paramIndex, decorator) {\n return function (target, key) { decorator(target, key, paramIndex); }\n};\nvar SuggestAlternatives_1;\n\nlet SuggestAlternatives = SuggestAlternatives_1 = class SuggestAlternatives {\n constructor(_editor, contextKeyService) {\n this._editor = _editor;\n this._index = 0;\n this._ckOtherSuggestions = SuggestAlternatives_1.OtherSuggestions.bindTo(contextKeyService);\n }\n dispose() {\n this.reset();\n }\n reset() {\n var _a;\n this._ckOtherSuggestions.reset();\n (_a = this._listener) === null || _a === void 0 ? void 0 : _a.dispose();\n this._model = undefined;\n this._acceptNext = undefined;\n this._ignore = false;\n }\n set({ model, index }, acceptNext) {\n // no suggestions -> nothing to do\n if (model.items.length === 0) {\n this.reset();\n return;\n }\n // no alternative suggestions -> nothing to do\n const nextIndex = SuggestAlternatives_1._moveIndex(true, model, index);\n if (nextIndex === index) {\n this.reset();\n return;\n }\n this._acceptNext = acceptNext;\n this._model = model;\n this._index = index;\n this._listener = this._editor.onDidChangeCursorPosition(() => {\n if (!this._ignore) {\n this.reset();\n }\n });\n this._ckOtherSuggestions.set(true);\n }\n static _moveIndex(fwd, model, index) {\n let newIndex = index;\n for (let rounds = model.items.length; rounds > 0; rounds--) {\n newIndex = (newIndex + model.items.length + (fwd ? +1 : -1)) % model.items.length;\n if (newIndex === index) {\n break;\n }\n if (!model.items[newIndex].completion.additionalTextEdits) {\n break;\n }\n }\n return newIndex;\n }\n next() {\n this._move(true);\n }\n prev() {\n this._move(false);\n }\n _move(fwd) {\n if (!this._model) {\n // nothing to reason about\n return;\n }\n try {\n this._ignore = true;\n this._index = SuggestAlternatives_1._moveIndex(fwd, this._model, this._index);\n this._acceptNext({ index: this._index, item: this._model.items[this._index], model: this._model });\n }\n finally {\n this._ignore = false;\n }\n }\n};\nSuggestAlternatives.OtherSuggestions = new _platform_contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_0__.RawContextKey('hasOtherSuggestions', false);\nSuggestAlternatives = SuggestAlternatives_1 = __decorate([\n __param(1, _platform_contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_0__.IContextKeyService)\n], SuggestAlternatives);\n\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/contrib/suggest/browser/suggestAlternatives.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/contrib/suggest/browser/suggestCommitCharacters.js":
/*!*****************************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/contrib/suggest/browser/suggestCommitCharacters.js ***!
\*****************************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ CommitCharacterController: () => (/* binding */ CommitCharacterController)\n/* harmony export */ });\n/* harmony import */ var _base_common_arrays_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../../base/common/arrays.js */ \"./node_modules/monaco-editor/esm/vs/base/common/arrays.js\");\n/* harmony import */ var _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../base/common/lifecycle.js */ \"./node_modules/monaco-editor/esm/vs/base/common/lifecycle.js\");\n/* harmony import */ var _common_core_characterClassifier_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../common/core/characterClassifier.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/core/characterClassifier.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n\n\nclass CommitCharacterController {\n constructor(editor, widget, model, accept) {\n this._disposables = new _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_1__.DisposableStore();\n this._disposables.add(model.onDidSuggest(e => {\n if (e.completionModel.items.length === 0) {\n this.reset();\n }\n }));\n this._disposables.add(model.onDidCancel(e => {\n this.reset();\n }));\n this._disposables.add(widget.onDidShow(() => this._onItem(widget.getFocusedItem())));\n this._disposables.add(widget.onDidFocus(this._onItem, this));\n this._disposables.add(widget.onDidHide(this.reset, this));\n this._disposables.add(editor.onWillType(text => {\n if (this._active && !widget.isFrozen() && model.state !== 0 /* State.Idle */) {\n const ch = text.charCodeAt(text.length - 1);\n if (this._active.acceptCharacters.has(ch) && editor.getOption(0 /* EditorOption.acceptSuggestionOnCommitCharacter */)) {\n accept(this._active.item);\n }\n }\n }));\n }\n _onItem(selected) {\n if (!selected || !(0,_base_common_arrays_js__WEBPACK_IMPORTED_MODULE_0__.isNonEmptyArray)(selected.item.completion.commitCharacters)) {\n // no item or no commit characters\n this.reset();\n return;\n }\n if (this._active && this._active.item.item === selected.item) {\n // still the same item\n return;\n }\n // keep item and its commit characters\n const acceptCharacters = new _common_core_characterClassifier_js__WEBPACK_IMPORTED_MODULE_2__.CharacterSet();\n for (const ch of selected.item.completion.commitCharacters) {\n if (ch.length > 0) {\n acceptCharacters.add(ch.charCodeAt(0));\n }\n }\n this._active = { acceptCharacters, item: selected };\n }\n reset() {\n this._active = undefined;\n }\n dispose() {\n this._disposables.dispose();\n }\n}\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/contrib/suggest/browser/suggestCommitCharacters.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/contrib/suggest/browser/suggestController.js":
/*!***********************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/contrib/suggest/browser/suggestController.js ***!
\***********************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ SuggestController: () => (/* binding */ SuggestController),\n/* harmony export */ TriggerSuggestAction: () => (/* binding */ TriggerSuggestAction)\n/* harmony export */ });\n/* harmony import */ var _base_browser_ui_aria_aria_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../../base/browser/ui/aria/aria.js */ \"./node_modules/monaco-editor/esm/vs/base/browser/ui/aria/aria.js\");\n/* harmony import */ var _base_common_arrays_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../base/common/arrays.js */ \"./node_modules/monaco-editor/esm/vs/base/common/arrays.js\");\n/* harmony import */ var _base_common_cancellation_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../../base/common/cancellation.js */ \"./node_modules/monaco-editor/esm/vs/base/common/cancellation.js\");\n/* harmony import */ var _base_common_errors_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../../../base/common/errors.js */ \"./node_modules/monaco-editor/esm/vs/base/common/errors.js\");\n/* harmony import */ var _base_common_event_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../../../base/common/event.js */ \"./node_modules/monaco-editor/esm/vs/base/common/event.js\");\n/* harmony import */ var _base_common_keybindings_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../../../../base/common/keybindings.js */ \"./node_modules/monaco-editor/esm/vs/base/common/keybindings.js\");\n/* harmony import */ var _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../../../../base/common/lifecycle.js */ \"./node_modules/monaco-editor/esm/vs/base/common/lifecycle.js\");\n/* harmony import */ var _base_common_platform_js__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ../../../../base/common/platform.js */ \"./node_modules/monaco-editor/esm/vs/base/common/platform.js\");\n/* harmony import */ var _base_common_stopwatch_js__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ../../../../base/common/stopwatch.js */ \"./node_modules/monaco-editor/esm/vs/base/common/stopwatch.js\");\n/* harmony import */ var _base_common_types_js__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ../../../../base/common/types.js */ \"./node_modules/monaco-editor/esm/vs/base/common/types.js\");\n/* harmony import */ var _browser_stableEditorScroll_js__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! ../../../browser/stableEditorScroll.js */ \"./node_modules/monaco-editor/esm/vs/editor/browser/stableEditorScroll.js\");\n/* harmony import */ var _browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(/*! ../../../browser/editorExtensions.js */ \"./node_modules/monaco-editor/esm/vs/editor/browser/editorExtensions.js\");\n/* harmony import */ var _common_core_editOperation_js__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(/*! ../../../common/core/editOperation.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/core/editOperation.js\");\n/* harmony import */ var _common_core_position_js__WEBPACK_IMPORTED_MODULE_13__ = __webpack_require__(/*! ../../../common/core/position.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/core/position.js\");\n/* harmony import */ var _common_core_range_js__WEBPACK_IMPORTED_MODULE_14__ = __webpack_require__(/*! ../../../common/core/range.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/core/range.js\");\n/* harmony import */ var _common_editorContextKeys_js__WEBPACK_IMPORTED_MODULE_15__ = __webpack_require__(/*! ../../../common/editorContextKeys.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/editorContextKeys.js\");\n/* harmony import */ var _snippet_browser_snippetController2_js__WEBPACK_IMPORTED_MODULE_16__ = __webpack_require__(/*! ../../snippet/browser/snippetController2.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/snippet/browser/snippetController2.js\");\n/* harmony import */ var _snippet_browser_snippetParser_js__WEBPACK_IMPORTED_MODULE_17__ = __webpack_require__(/*! ../../snippet/browser/snippetParser.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/snippet/browser/snippetParser.js\");\n/* harmony import */ var _suggestMemory_js__WEBPACK_IMPORTED_MODULE_18__ = __webpack_require__(/*! ./suggestMemory.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/suggest/browser/suggestMemory.js\");\n/* harmony import */ var _wordContextKey_js__WEBPACK_IMPORTED_MODULE_19__ = __webpack_require__(/*! ./wordContextKey.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/suggest/browser/wordContextKey.js\");\n/* harmony import */ var _nls_js__WEBPACK_IMPORTED_MODULE_20__ = __webpack_require__(/*! ../../../../nls.js */ \"./node_modules/monaco-editor/esm/vs/nls.js\");\n/* harmony import */ var _platform_commands_common_commands_js__WEBPACK_IMPORTED_MODULE_21__ = __webpack_require__(/*! ../../../../platform/commands/common/commands.js */ \"./node_modules/monaco-editor/esm/vs/platform/commands/common/commands.js\");\n/* harmony import */ var _platform_contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_22__ = __webpack_require__(/*! ../../../../platform/contextkey/common/contextkey.js */ \"./node_modules/monaco-editor/esm/vs/platform/contextkey/common/contextkey.js\");\n/* harmony import */ var _platform_instantiation_common_instantiation_js__WEBPACK_IMPORTED_MODULE_23__ = __webpack_require__(/*! ../../../../platform/instantiation/common/instantiation.js */ \"./node_modules/monaco-editor/esm/vs/platform/instantiation/common/instantiation.js\");\n/* harmony import */ var _platform_log_common_log_js__WEBPACK_IMPORTED_MODULE_24__ = __webpack_require__(/*! ../../../../platform/log/common/log.js */ \"./node_modules/monaco-editor/esm/vs/platform/log/common/log.js\");\n/* harmony import */ var _suggest_js__WEBPACK_IMPORTED_MODULE_25__ = __webpack_require__(/*! ./suggest.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/suggest/browser/suggest.js\");\n/* harmony import */ var _suggestAlternatives_js__WEBPACK_IMPORTED_MODULE_26__ = __webpack_require__(/*! ./suggestAlternatives.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/suggest/browser/suggestAlternatives.js\");\n/* harmony import */ var _suggestCommitCharacters_js__WEBPACK_IMPORTED_MODULE_27__ = __webpack_require__(/*! ./suggestCommitCharacters.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/suggest/browser/suggestCommitCharacters.js\");\n/* harmony import */ var _suggestModel_js__WEBPACK_IMPORTED_MODULE_28__ = __webpack_require__(/*! ./suggestModel.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/suggest/browser/suggestModel.js\");\n/* harmony import */ var _suggestOvertypingCapturer_js__WEBPACK_IMPORTED_MODULE_29__ = __webpack_require__(/*! ./suggestOvertypingCapturer.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/suggest/browser/suggestOvertypingCapturer.js\");\n/* harmony import */ var _suggestWidget_js__WEBPACK_IMPORTED_MODULE_30__ = __webpack_require__(/*! ./suggestWidget.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/suggest/browser/suggestWidget.js\");\n/* harmony import */ var _platform_telemetry_common_telemetry_js__WEBPACK_IMPORTED_MODULE_31__ = __webpack_require__(/*! ../../../../platform/telemetry/common/telemetry.js */ \"./node_modules/monaco-editor/esm/vs/platform/telemetry/common/telemetry.js\");\n/* harmony import */ var _base_common_resources_js__WEBPACK_IMPORTED_MODULE_32__ = __webpack_require__(/*! ../../../../base/common/resources.js */ \"./node_modules/monaco-editor/esm/vs/base/common/resources.js\");\n/* harmony import */ var _base_common_hash_js__WEBPACK_IMPORTED_MODULE_33__ = __webpack_require__(/*! ../../../../base/common/hash.js */ \"./node_modules/monaco-editor/esm/vs/base/common/hash.js\");\n/* harmony import */ var _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_34__ = __webpack_require__(/*! ../../../../base/browser/dom.js */ \"./node_modules/monaco-editor/esm/vs/base/browser/dom.js\");\n/* harmony import */ var _common_model_textModel_js__WEBPACK_IMPORTED_MODULE_35__ = __webpack_require__(/*! ../../../common/model/textModel.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/model/textModel.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\nvar __decorate = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\n return c > 3 && r && Object.defineProperty(target, key, r), r;\n};\nvar __param = (undefined && undefined.__param) || function (paramIndex, decorator) {\n return function (target, key) { decorator(target, key, paramIndex); }\n};\nvar SuggestController_1;\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n// sticky suggest widget which doesn't disappear on focus out and such\nconst _sticky = false;\nclass LineSuffix {\n constructor(_model, _position) {\n this._model = _model;\n this._position = _position;\n this._decorationOptions = _common_model_textModel_js__WEBPACK_IMPORTED_MODULE_35__.ModelDecorationOptions.register({\n description: 'suggest-line-suffix',\n stickiness: 1 /* TrackedRangeStickiness.NeverGrowsWhenTypingAtEdges */\n });\n // spy on what's happening right of the cursor. two cases:\n // 1. end of line -> check that it's still end of line\n // 2. mid of line -> add a marker and compute the delta\n const maxColumn = _model.getLineMaxColumn(_position.lineNumber);\n if (maxColumn !== _position.column) {\n const offset = _model.getOffsetAt(_position);\n const end = _model.getPositionAt(offset + 1);\n _model.changeDecorations(accessor => {\n if (this._marker) {\n accessor.removeDecoration(this._marker);\n }\n this._marker = accessor.addDecoration(_common_core_range_js__WEBPACK_IMPORTED_MODULE_14__.Range.fromPositions(_position, end), this._decorationOptions);\n });\n }\n }\n dispose() {\n if (this._marker && !this._model.isDisposed()) {\n this._model.changeDecorations(accessor => {\n accessor.removeDecoration(this._marker);\n this._marker = undefined;\n });\n }\n }\n delta(position) {\n if (this._model.isDisposed() || this._position.lineNumber !== position.lineNumber) {\n // bail out early if things seems fishy\n return 0;\n }\n // read the marker (in case suggest was triggered at line end) or compare\n // the cursor to the line end.\n if (this._marker) {\n const range = this._model.getDecorationRange(this._marker);\n const end = this._model.getOffsetAt(range.getStartPosition());\n return end - this._model.getOffsetAt(position);\n }\n else {\n return this._model.getLineMaxColumn(position.lineNumber) - position.column;\n }\n }\n}\nlet SuggestController = SuggestController_1 = class SuggestController {\n static get(editor) {\n return editor.getContribution(SuggestController_1.ID);\n }\n constructor(editor, _memoryService, _commandService, _contextKeyService, _instantiationService, _logService, _telemetryService) {\n this._memoryService = _memoryService;\n this._commandService = _commandService;\n this._contextKeyService = _contextKeyService;\n this._instantiationService = _instantiationService;\n this._logService = _logService;\n this._telemetryService = _telemetryService;\n this._lineSuffix = new _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_6__.MutableDisposable();\n this._toDispose = new _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_6__.DisposableStore();\n this._selectors = new PriorityRegistry(s => s.priority);\n this._onWillInsertSuggestItem = new _base_common_event_js__WEBPACK_IMPORTED_MODULE_4__.Emitter();\n this.onWillInsertSuggestItem = this._onWillInsertSuggestItem.event;\n this.editor = editor;\n this.model = _instantiationService.createInstance(_suggestModel_js__WEBPACK_IMPORTED_MODULE_28__.SuggestModel, this.editor);\n // default selector\n this._selectors.register({\n priority: 0,\n select: (model, pos, items) => this._memoryService.select(model, pos, items)\n });\n // context key: update insert/replace mode\n const ctxInsertMode = _suggest_js__WEBPACK_IMPORTED_MODULE_25__.Context.InsertMode.bindTo(_contextKeyService);\n ctxInsertMode.set(editor.getOption(118 /* EditorOption.suggest */).insertMode);\n this._toDispose.add(this.model.onDidTrigger(() => ctxInsertMode.set(editor.getOption(118 /* EditorOption.suggest */).insertMode)));\n this.widget = this._toDispose.add(new _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_34__.WindowIdleValue((0,_base_browser_dom_js__WEBPACK_IMPORTED_MODULE_34__.getWindow)(editor.getDomNode()), () => {\n const widget = this._instantiationService.createInstance(_suggestWidget_js__WEBPACK_IMPORTED_MODULE_30__.SuggestWidget, this.editor);\n this._toDispose.add(widget);\n this._toDispose.add(widget.onDidSelect(item => this._insertSuggestion(item, 0 /* InsertFlags.None */), this));\n // Wire up logic to accept a suggestion on certain characters\n const commitCharacterController = new _suggestCommitCharacters_js__WEBPACK_IMPORTED_MODULE_27__.CommitCharacterController(this.editor, widget, this.model, item => this._insertSuggestion(item, 2 /* InsertFlags.NoAfterUndoStop */));\n this._toDispose.add(commitCharacterController);\n // Wire up makes text edit context key\n const ctxMakesTextEdit = _suggest_js__WEBPACK_IMPORTED_MODULE_25__.Context.MakesTextEdit.bindTo(this._contextKeyService);\n const ctxHasInsertAndReplace = _suggest_js__WEBPACK_IMPORTED_MODULE_25__.Context.HasInsertAndReplaceRange.bindTo(this._contextKeyService);\n const ctxCanResolve = _suggest_js__WEBPACK_IMPORTED_MODULE_25__.Context.CanResolve.bindTo(this._contextKeyService);\n this._toDispose.add((0,_base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_6__.toDisposable)(() => {\n ctxMakesTextEdit.reset();\n ctxHasInsertAndReplace.reset();\n ctxCanResolve.reset();\n }));\n this._toDispose.add(widget.onDidFocus(({ item }) => {\n // (ctx: makesTextEdit)\n const position = this.editor.getPosition();\n const startColumn = item.editStart.column;\n const endColumn = position.column;\n let value = true;\n if (this.editor.getOption(1 /* EditorOption.acceptSuggestionOnEnter */) === 'smart'\n && this.model.state === 2 /* State.Auto */\n && !item.completion.additionalTextEdits\n && !(item.completion.insertTextRules & 4 /* CompletionItemInsertTextRule.InsertAsSnippet */)\n && endColumn - startColumn === item.completion.insertText.length) {\n const oldText = this.editor.getModel().getValueInRange({\n startLineNumber: position.lineNumber,\n startColumn,\n endLineNumber: position.lineNumber,\n endColumn\n });\n value = oldText !== item.completion.insertText;\n }\n ctxMakesTextEdit.set(value);\n // (ctx: hasInsertAndReplaceRange)\n ctxHasInsertAndReplace.set(!_common_core_position_js__WEBPACK_IMPORTED_MODULE_13__.Position.equals(item.editInsertEnd, item.editReplaceEnd));\n // (ctx: canResolve)\n ctxCanResolve.set(Boolean(item.provider.resolveCompletionItem) || Boolean(item.completion.documentation) || item.completion.detail !== item.completion.label);\n }));\n this._toDispose.add(widget.onDetailsKeyDown(e => {\n // cmd + c on macOS, ctrl + c on Win / Linux\n if (e.toKeyCodeChord().equals(new _base_common_keybindings_js__WEBPACK_IMPORTED_MODULE_5__.KeyCodeChord(true, false, false, false, 33 /* KeyCode.KeyC */)) ||\n (_base_common_platform_js__WEBPACK_IMPORTED_MODULE_7__.isMacintosh && e.toKeyCodeChord().equals(new _base_common_keybindings_js__WEBPACK_IMPORTED_MODULE_5__.KeyCodeChord(false, false, false, true, 33 /* KeyCode.KeyC */)))) {\n e.stopPropagation();\n return;\n }\n if (!e.toKeyCodeChord().isModifierKey()) {\n this.editor.focus();\n }\n }));\n return widget;\n }));\n // Wire up text overtyping capture\n this._overtypingCapturer = this._toDispose.add(new _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_34__.WindowIdleValue((0,_base_browser_dom_js__WEBPACK_IMPORTED_MODULE_34__.getWindow)(editor.getDomNode()), () => {\n return this._toDispose.add(new _suggestOvertypingCapturer_js__WEBPACK_IMPORTED_MODULE_29__.OvertypingCapturer(this.editor, this.model));\n }));\n this._alternatives = this._toDispose.add(new _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_34__.WindowIdleValue((0,_base_browser_dom_js__WEBPACK_IMPORTED_MODULE_34__.getWindow)(editor.getDomNode()), () => {\n return this._toDispose.add(new _suggestAlternatives_js__WEBPACK_IMPORTED_MODULE_26__.SuggestAlternatives(this.editor, this._contextKeyService));\n }));\n this._toDispose.add(_instantiationService.createInstance(_wordContextKey_js__WEBPACK_IMPORTED_MODULE_19__.WordContextKey, editor));\n this._toDispose.add(this.model.onDidTrigger(e => {\n this.widget.value.showTriggered(e.auto, e.shy ? 250 : 50);\n this._lineSuffix.value = new LineSuffix(this.editor.getModel(), e.position);\n }));\n this._toDispose.add(this.model.onDidSuggest(e => {\n if (e.triggerOptions.shy) {\n return;\n }\n let index = -1;\n for (const selector of this._selectors.itemsOrderedByPriorityDesc) {\n index = selector.select(this.editor.getModel(), this.editor.getPosition(), e.completionModel.items);\n if (index !== -1) {\n break;\n }\n }\n if (index === -1) {\n index = 0;\n }\n if (this.model.state === 0 /* State.Idle */) {\n // selecting an item can \"pump\" out selection/cursor change events\n // which can cancel suggest halfway through this function. therefore\n // we need to check again and bail if the session has been canceled\n return;\n }\n let noFocus = false;\n if (e.triggerOptions.auto) {\n // don't \"focus\" item when configured to do\n const options = this.editor.getOption(118 /* EditorOption.suggest */);\n if (options.selectionMode === 'never' || options.selectionMode === 'always') {\n // simple: always or never\n noFocus = options.selectionMode === 'never';\n }\n else if (options.selectionMode === 'whenTriggerCharacter') {\n // on with trigger character\n noFocus = e.triggerOptions.triggerKind !== 1 /* CompletionTriggerKind.TriggerCharacter */;\n }\n else if (options.selectionMode === 'whenQuickSuggestion') {\n // without trigger character or when refiltering\n noFocus = e.triggerOptions.triggerKind === 1 /* CompletionTriggerKind.TriggerCharacter */ && !e.triggerOptions.refilter;\n }\n }\n this.widget.value.showSuggestions(e.completionModel, index, e.isFrozen, e.triggerOptions.auto, noFocus);\n }));\n this._toDispose.add(this.model.onDidCancel(e => {\n if (!e.retrigger) {\n this.widget.value.hideWidget();\n }\n }));\n this._toDispose.add(this.editor.onDidBlurEditorWidget(() => {\n if (!_sticky) {\n this.model.cancel();\n this.model.clear();\n }\n }));\n // Manage the acceptSuggestionsOnEnter context key\n const acceptSuggestionsOnEnter = _suggest_js__WEBPACK_IMPORTED_MODULE_25__.Context.AcceptSuggestionsOnEnter.bindTo(_contextKeyService);\n const updateFromConfig = () => {\n const acceptSuggestionOnEnter = this.editor.getOption(1 /* EditorOption.acceptSuggestionOnEnter */);\n acceptSuggestionsOnEnter.set(acceptSuggestionOnEnter === 'on' || acceptSuggestionOnEnter === 'smart');\n };\n this._toDispose.add(this.editor.onDidChangeConfiguration(() => updateFromConfig()));\n updateFromConfig();\n }\n dispose() {\n this._alternatives.dispose();\n this._toDispose.dispose();\n this.widget.dispose();\n this.model.dispose();\n this._lineSuffix.dispose();\n this._onWillInsertSuggestItem.dispose();\n }\n _insertSuggestion(event, flags) {\n if (!event || !event.item) {\n this._alternatives.value.reset();\n this.model.cancel();\n this.model.clear();\n return;\n }\n if (!this.editor.hasModel()) {\n return;\n }\n const snippetController = _snippet_browser_snippetController2_js__WEBPACK_IMPORTED_MODULE_16__.SnippetController2.get(this.editor);\n if (!snippetController) {\n return;\n }\n this._onWillInsertSuggestItem.fire({ item: event.item });\n const model = this.editor.getModel();\n const modelVersionNow = model.getAlternativeVersionId();\n const { item } = event;\n //\n const tasks = [];\n const cts = new _base_common_cancellation_js__WEBPACK_IMPORTED_MODULE_2__.CancellationTokenSource();\n // pushing undo stops *before* additional text edits and\n // *after* the main edit\n if (!(flags & 1 /* InsertFlags.NoBeforeUndoStop */)) {\n this.editor.pushUndoStop();\n }\n // compute overwrite[Before|After] deltas BEFORE applying extra edits\n const info = this.getOverwriteInfo(item, Boolean(flags & 8 /* InsertFlags.AlternativeOverwriteConfig */));\n // keep item in memory\n this._memoryService.memorize(model, this.editor.getPosition(), item);\n const isResolved = item.isResolved;\n // telemetry data points: duration of command execution, info about async additional edits (-1=n/a, -2=none, 1=success, 0=failed)\n let _commandExectionDuration = -1;\n let _additionalEditsAppliedAsync = -1;\n if (Array.isArray(item.completion.additionalTextEdits)) {\n // cancel -> stops all listening and closes widget\n this.model.cancel();\n // sync additional edits\n const scrollState = _browser_stableEditorScroll_js__WEBPACK_IMPORTED_MODULE_10__.StableEditorScrollState.capture(this.editor);\n this.editor.executeEdits('suggestController.additionalTextEdits.sync', item.completion.additionalTextEdits.map(edit => {\n let range = _common_core_range_js__WEBPACK_IMPORTED_MODULE_14__.Range.lift(edit.range);\n if (range.startLineNumber === item.position.lineNumber && range.startColumn > item.position.column) {\n // shift additional edit when it is \"after\" the completion insertion position\n const columnDelta = this.editor.getPosition().column - item.position.column;\n const startColumnDelta = columnDelta;\n const endColumnDelta = _common_core_range_js__WEBPACK_IMPORTED_MODULE_14__.Range.spansMultipleLines(range) ? 0 : columnDelta;\n range = new _common_core_range_js__WEBPACK_IMPORTED_MODULE_14__.Range(range.startLineNumber, range.startColumn + startColumnDelta, range.endLineNumber, range.endColumn + endColumnDelta);\n }\n return _common_core_editOperation_js__WEBPACK_IMPORTED_MODULE_12__.EditOperation.replaceMove(range, edit.text);\n }));\n scrollState.restoreRelativeVerticalPositionOfCursor(this.editor);\n }\n else if (!isResolved) {\n // async additional edits\n const sw = new _base_common_stopwatch_js__WEBPACK_IMPORTED_MODULE_8__.StopWatch();\n let position;\n const docListener = model.onDidChangeContent(e => {\n if (e.isFlush) {\n cts.cancel();\n docListener.dispose();\n return;\n }\n for (const change of e.changes) {\n const thisPosition = _common_core_range_js__WEBPACK_IMPORTED_MODULE_14__.Range.getEndPosition(change.range);\n if (!position || _common_core_position_js__WEBPACK_IMPORTED_MODULE_13__.Position.isBefore(thisPosition, position)) {\n position = thisPosition;\n }\n }\n });\n const oldFlags = flags;\n flags |= 2 /* InsertFlags.NoAfterUndoStop */;\n let didType = false;\n const typeListener = this.editor.onWillType(() => {\n typeListener.dispose();\n didType = true;\n if (!(oldFlags & 2 /* InsertFlags.NoAfterUndoStop */)) {\n this.editor.pushUndoStop();\n }\n });\n tasks.push(item.resolve(cts.token).then(() => {\n if (!item.completion.additionalTextEdits || cts.token.isCancellationRequested) {\n return undefined;\n }\n if (position && item.completion.additionalTextEdits.some(edit => _common_core_position_js__WEBPACK_IMPORTED_MODULE_13__.Position.isBefore(position, _common_core_range_js__WEBPACK_IMPORTED_MODULE_14__.Range.getStartPosition(edit.range)))) {\n return false;\n }\n if (didType) {\n this.editor.pushUndoStop();\n }\n const scrollState = _browser_stableEditorScroll_js__WEBPACK_IMPORTED_MODULE_10__.StableEditorScrollState.capture(this.editor);\n this.editor.executeEdits('suggestController.additionalTextEdits.async', item.completion.additionalTextEdits.map(edit => _common_core_editOperation_js__WEBPACK_IMPORTED_MODULE_12__.EditOperation.replaceMove(_common_core_range_js__WEBPACK_IMPORTED_MODULE_14__.Range.lift(edit.range), edit.text)));\n scrollState.restoreRelativeVerticalPositionOfCursor(this.editor);\n if (didType || !(oldFlags & 2 /* InsertFlags.NoAfterUndoStop */)) {\n this.editor.pushUndoStop();\n }\n return true;\n }).then(applied => {\n this._logService.trace('[suggest] async resolving of edits DONE (ms, applied?)', sw.elapsed(), applied);\n _additionalEditsAppliedAsync = applied === true ? 1 : applied === false ? 0 : -2;\n }).finally(() => {\n docListener.dispose();\n typeListener.dispose();\n }));\n }\n let { insertText } = item.completion;\n if (!(item.completion.insertTextRules & 4 /* CompletionItemInsertTextRule.InsertAsSnippet */)) {\n insertText = _snippet_browser_snippetParser_js__WEBPACK_IMPORTED_MODULE_17__.SnippetParser.escape(insertText);\n }\n // cancel -> stops all listening and closes widget\n this.model.cancel();\n snippetController.insert(insertText, {\n overwriteBefore: info.overwriteBefore,\n overwriteAfter: info.overwriteAfter,\n undoStopBefore: false,\n undoStopAfter: false,\n adjustWhitespace: !(item.completion.insertTextRules & 1 /* CompletionItemInsertTextRule.KeepWhitespace */),\n clipboardText: event.model.clipboardText,\n overtypingCapturer: this._overtypingCapturer.value\n });\n if (!(flags & 2 /* InsertFlags.NoAfterUndoStop */)) {\n this.editor.pushUndoStop();\n }\n if (item.completion.command) {\n if (item.completion.command.id === TriggerSuggestAction.id) {\n // retigger\n this.model.trigger({ auto: true, retrigger: true });\n }\n else {\n // exec command, done\n const sw = new _base_common_stopwatch_js__WEBPACK_IMPORTED_MODULE_8__.StopWatch();\n tasks.push(this._commandService.executeCommand(item.completion.command.id, ...(item.completion.command.arguments ? [...item.completion.command.arguments] : [])).catch(e => {\n if (item.completion.extensionId) {\n (0,_base_common_errors_js__WEBPACK_IMPORTED_MODULE_3__.onUnexpectedExternalError)(e);\n }\n else {\n (0,_base_common_errors_js__WEBPACK_IMPORTED_MODULE_3__.onUnexpectedError)(e);\n }\n }).finally(() => {\n _commandExectionDuration = sw.elapsed();\n }));\n }\n }\n if (flags & 4 /* InsertFlags.KeepAlternativeSuggestions */) {\n this._alternatives.value.set(event, next => {\n // cancel resolving of additional edits\n cts.cancel();\n // this is not so pretty. when inserting the 'next'\n // suggestion we undo until we are at the state at\n // which we were before inserting the previous suggestion...\n while (model.canUndo()) {\n if (modelVersionNow !== model.getAlternativeVersionId()) {\n model.undo();\n }\n this._insertSuggestion(next, 1 /* InsertFlags.NoBeforeUndoStop */ | 2 /* InsertFlags.NoAfterUndoStop */ | (flags & 8 /* InsertFlags.AlternativeOverwriteConfig */ ? 8 /* InsertFlags.AlternativeOverwriteConfig */ : 0));\n break;\n }\n });\n }\n this._alertCompletionItem(item);\n // clear only now - after all tasks are done\n Promise.all(tasks).finally(() => {\n this._reportSuggestionAcceptedTelemetry(item, model, isResolved, _commandExectionDuration, _additionalEditsAppliedAsync);\n this.model.clear();\n cts.dispose();\n });\n }\n _reportSuggestionAcceptedTelemetry(item, model, itemResolved, commandExectionDuration, additionalEditsAppliedAsync) {\n var _a, _b, _c;\n if (Math.floor(Math.random() * 100) === 0) {\n // throttle telemetry event because accepting completions happens a lot\n return;\n }\n this._telemetryService.publicLog2('suggest.acceptedSuggestion', {\n extensionId: (_b = (_a = item.extensionId) === null || _a === void 0 ? void 0 : _a.value) !== null && _b !== void 0 ? _b : 'unknown',\n providerId: (_c = item.provider._debugDisplayName) !== null && _c !== void 0 ? _c : 'unknown',\n kind: item.completion.kind,\n basenameHash: (0,_base_common_hash_js__WEBPACK_IMPORTED_MODULE_33__.hash)((0,_base_common_resources_js__WEBPACK_IMPORTED_MODULE_32__.basename)(model.uri)).toString(16),\n languageId: model.getLanguageId(),\n fileExtension: (0,_base_common_resources_js__WEBPACK_IMPORTED_MODULE_32__.extname)(model.uri),\n resolveInfo: !item.provider.resolveCompletionItem ? -1 : itemResolved ? 1 : 0,\n resolveDuration: item.resolveDuration,\n commandDuration: commandExectionDuration,\n additionalEditsAsync: additionalEditsAppliedAsync\n });\n }\n getOverwriteInfo(item, toggleMode) {\n (0,_base_common_types_js__WEBPACK_IMPORTED_MODULE_9__.assertType)(this.editor.hasModel());\n let replace = this.editor.getOption(118 /* EditorOption.suggest */).insertMode === 'replace';\n if (toggleMode) {\n replace = !replace;\n }\n const overwriteBefore = item.position.column - item.editStart.column;\n const overwriteAfter = (replace ? item.editReplaceEnd.column : item.editInsertEnd.column) - item.position.column;\n const columnDelta = this.editor.getPosition().column - item.position.column;\n const suffixDelta = this._lineSuffix.value ? this._lineSuffix.value.delta(this.editor.getPosition()) : 0;\n return {\n overwriteBefore: overwriteBefore + columnDelta,\n overwriteAfter: overwriteAfter + suffixDelta\n };\n }\n _alertCompletionItem(item) {\n if ((0,_base_common_arrays_js__WEBPACK_IMPORTED_MODULE_1__.isNonEmptyArray)(item.completion.additionalTextEdits)) {\n const msg = _nls_js__WEBPACK_IMPORTED_MODULE_20__.localize('aria.alert.snippet', \"Accepting '{0}' made {1} additional edits\", item.textLabel, item.completion.additionalTextEdits.length);\n (0,_base_browser_ui_aria_aria_js__WEBPACK_IMPORTED_MODULE_0__.alert)(msg);\n }\n }\n triggerSuggest(onlyFrom, auto, noFilter) {\n if (this.editor.hasModel()) {\n this.model.trigger({\n auto: auto !== null && auto !== void 0 ? auto : false,\n completionOptions: { providerFilter: onlyFrom, kindFilter: noFilter ? new Set() : undefined }\n });\n this.editor.revealPosition(this.editor.getPosition(), 0 /* ScrollType.Smooth */);\n this.editor.focus();\n }\n }\n triggerSuggestAndAcceptBest(arg) {\n if (!this.editor.hasModel()) {\n return;\n }\n const positionNow = this.editor.getPosition();\n const fallback = () => {\n if (positionNow.equals(this.editor.getPosition())) {\n this._commandService.executeCommand(arg.fallback);\n }\n };\n const makesTextEdit = (item) => {\n if (item.completion.insertTextRules & 4 /* CompletionItemInsertTextRule.InsertAsSnippet */ || item.completion.additionalTextEdits) {\n // snippet, other editor -> makes edit\n return true;\n }\n const position = this.editor.getPosition();\n const startColumn = item.editStart.column;\n const endColumn = position.column;\n if (endColumn - startColumn !== item.completion.insertText.length) {\n // unequal lengths -> makes edit\n return true;\n }\n const textNow = this.editor.getModel().getValueInRange({\n startLineNumber: position.lineNumber,\n startColumn,\n endLineNumber: position.lineNumber,\n endColumn\n });\n // unequal text -> makes edit\n return textNow !== item.completion.insertText;\n };\n _base_common_event_js__WEBPACK_IMPORTED_MODULE_4__.Event.once(this.model.onDidTrigger)(_ => {\n // wait for trigger because only then the cancel-event is trustworthy\n const listener = [];\n _base_common_event_js__WEBPACK_IMPORTED_MODULE_4__.Event.any(this.model.onDidTrigger, this.model.onDidCancel)(() => {\n // retrigger or cancel -> try to type default text\n (0,_base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_6__.dispose)(listener);\n fallback();\n }, undefined, listener);\n this.model.onDidSuggest(({ completionModel }) => {\n (0,_base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_6__.dispose)(listener);\n if (completionModel.items.length === 0) {\n fallback();\n return;\n }\n const index = this._memoryService.select(this.editor.getModel(), this.editor.getPosition(), completionModel.items);\n const item = completionModel.items[index];\n if (!makesTextEdit(item)) {\n fallback();\n return;\n }\n this.editor.pushUndoStop();\n this._insertSuggestion({ index, item, model: completionModel }, 4 /* InsertFlags.KeepAlternativeSuggestions */ | 1 /* InsertFlags.NoBeforeUndoStop */ | 2 /* InsertFlags.NoAfterUndoStop */);\n }, undefined, listener);\n });\n this.model.trigger({ auto: false, shy: true });\n this.editor.revealPosition(positionNow, 0 /* ScrollType.Smooth */);\n this.editor.focus();\n }\n acceptSelectedSuggestion(keepAlternativeSuggestions, alternativeOverwriteConfig) {\n const item = this.widget.value.getFocusedItem();\n let flags = 0;\n if (keepAlternativeSuggestions) {\n flags |= 4 /* InsertFlags.KeepAlternativeSuggestions */;\n }\n if (alternativeOverwriteConfig) {\n flags |= 8 /* InsertFlags.AlternativeOverwriteConfig */;\n }\n this._insertSuggestion(item, flags);\n }\n acceptNextSuggestion() {\n this._alternatives.value.next();\n }\n acceptPrevSuggestion() {\n this._alternatives.value.prev();\n }\n cancelSuggestWidget() {\n this.model.cancel();\n this.model.clear();\n this.widget.value.hideWidget();\n }\n focusSuggestion() {\n this.widget.value.focusSelected();\n }\n selectNextSuggestion() {\n this.widget.value.selectNext();\n }\n selectNextPageSuggestion() {\n this.widget.value.selectNextPage();\n }\n selectLastSuggestion() {\n this.widget.value.selectLast();\n }\n selectPrevSuggestion() {\n this.widget.value.selectPrevious();\n }\n selectPrevPageSuggestion() {\n this.widget.value.selectPreviousPage();\n }\n selectFirstSuggestion() {\n this.widget.value.selectFirst();\n }\n toggleSuggestionDetails() {\n this.widget.value.toggleDetails();\n }\n toggleExplainMode() {\n this.widget.value.toggleExplainMode();\n }\n toggleSuggestionFocus() {\n this.widget.value.toggleDetailsFocus();\n }\n resetWidgetSize() {\n this.widget.value.resetPersistedSize();\n }\n forceRenderingAbove() {\n this.widget.value.forceRenderingAbove();\n }\n stopForceRenderingAbove() {\n if (!this.widget.isInitialized) {\n // This method has no effect if the widget is not initialized yet.\n return;\n }\n this.widget.value.stopForceRenderingAbove();\n }\n registerSelector(selector) {\n return this._selectors.register(selector);\n }\n};\nSuggestController.ID = 'editor.contrib.suggestController';\nSuggestController = SuggestController_1 = __decorate([\n __param(1, _suggestMemory_js__WEBPACK_IMPORTED_MODULE_18__.ISuggestMemoryService),\n __param(2, _platform_commands_common_commands_js__WEBPACK_IMPORTED_MODULE_21__.ICommandService),\n __param(3, _platform_contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_22__.IContextKeyService),\n __param(4, _platform_instantiation_common_instantiation_js__WEBPACK_IMPORTED_MODULE_23__.IInstantiationService),\n __param(5, _platform_log_common_log_js__WEBPACK_IMPORTED_MODULE_24__.ILogService),\n __param(6, _platform_telemetry_common_telemetry_js__WEBPACK_IMPORTED_MODULE_31__.ITelemetryService)\n], SuggestController);\n\nclass PriorityRegistry {\n constructor(prioritySelector) {\n this.prioritySelector = prioritySelector;\n this._items = new Array();\n }\n register(value) {\n if (this._items.indexOf(value) !== -1) {\n throw new Error('Value is already registered');\n }\n this._items.push(value);\n this._items.sort((s1, s2) => this.prioritySelector(s2) - this.prioritySelector(s1));\n return {\n dispose: () => {\n const idx = this._items.indexOf(value);\n if (idx >= 0) {\n this._items.splice(idx, 1);\n }\n }\n };\n }\n get itemsOrderedByPriorityDesc() {\n return this._items;\n }\n}\nclass TriggerSuggestAction extends _browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_11__.EditorAction {\n constructor() {\n super({\n id: TriggerSuggestAction.id,\n label: _nls_js__WEBPACK_IMPORTED_MODULE_20__.localize('suggest.trigger.label', \"Trigger Suggest\"),\n alias: 'Trigger Suggest',\n precondition: _platform_contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_22__.ContextKeyExpr.and(_common_editorContextKeys_js__WEBPACK_IMPORTED_MODULE_15__.EditorContextKeys.writable, _common_editorContextKeys_js__WEBPACK_IMPORTED_MODULE_15__.EditorContextKeys.hasCompletionItemProvider, _suggest_js__WEBPACK_IMPORTED_MODULE_25__.Context.Visible.toNegated()),\n kbOpts: {\n kbExpr: _common_editorContextKeys_js__WEBPACK_IMPORTED_MODULE_15__.EditorContextKeys.textInputFocus,\n primary: 2048 /* KeyMod.CtrlCmd */ | 10 /* KeyCode.Space */,\n secondary: [2048 /* KeyMod.CtrlCmd */ | 39 /* KeyCode.KeyI */],\n mac: { primary: 256 /* KeyMod.WinCtrl */ | 10 /* KeyCode.Space */, secondary: [512 /* KeyMod.Alt */ | 9 /* KeyCode.Escape */, 2048 /* KeyMod.CtrlCmd */ | 39 /* KeyCode.KeyI */] },\n weight: 100 /* KeybindingWeight.EditorContrib */\n }\n });\n }\n run(_accessor, editor, args) {\n const controller = SuggestController.get(editor);\n if (!controller) {\n return;\n }\n let auto;\n if (args && typeof args === 'object') {\n if (args.auto === true) {\n auto = true;\n }\n }\n controller.triggerSuggest(undefined, auto, undefined);\n }\n}\nTriggerSuggestAction.id = 'editor.action.triggerSuggest';\n(0,_browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_11__.registerEditorContribution)(SuggestController.ID, SuggestController, 2 /* EditorContributionInstantiation.BeforeFirstInteraction */);\n(0,_browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_11__.registerEditorAction)(TriggerSuggestAction);\nconst weight = 100 /* KeybindingWeight.EditorContrib */ + 90;\nconst SuggestCommand = _browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_11__.EditorCommand.bindToContribution(SuggestController.get);\n(0,_browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_11__.registerEditorCommand)(new SuggestCommand({\n id: 'acceptSelectedSuggestion',\n precondition: _platform_contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_22__.ContextKeyExpr.and(_suggest_js__WEBPACK_IMPORTED_MODULE_25__.Context.Visible, _suggest_js__WEBPACK_IMPORTED_MODULE_25__.Context.HasFocusedSuggestion),\n handler(x) {\n x.acceptSelectedSuggestion(true, false);\n },\n kbOpts: [{\n // normal tab\n primary: 2 /* KeyCode.Tab */,\n kbExpr: _platform_contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_22__.ContextKeyExpr.and(_suggest_js__WEBPACK_IMPORTED_MODULE_25__.Context.Visible, _common_editorContextKeys_js__WEBPACK_IMPORTED_MODULE_15__.EditorContextKeys.textInputFocus),\n weight,\n }, {\n // accept on enter has special rules\n primary: 3 /* KeyCode.Enter */,\n kbExpr: _platform_contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_22__.ContextKeyExpr.and(_suggest_js__WEBPACK_IMPORTED_MODULE_25__.Context.Visible, _common_editorContextKeys_js__WEBPACK_IMPORTED_MODULE_15__.EditorContextKeys.textInputFocus, _suggest_js__WEBPACK_IMPORTED_MODULE_25__.Context.AcceptSuggestionsOnEnter, _suggest_js__WEBPACK_IMPORTED_MODULE_25__.Context.MakesTextEdit),\n weight,\n }],\n menuOpts: [{\n menuId: _suggest_js__WEBPACK_IMPORTED_MODULE_25__.suggestWidgetStatusbarMenu,\n title: _nls_js__WEBPACK_IMPORTED_MODULE_20__.localize('accept.insert', \"Insert\"),\n group: 'left',\n order: 1,\n when: _suggest_js__WEBPACK_IMPORTED_MODULE_25__.Context.HasInsertAndReplaceRange.toNegated()\n }, {\n menuId: _suggest_js__WEBPACK_IMPORTED_MODULE_25__.suggestWidgetStatusbarMenu,\n title: _nls_js__WEBPACK_IMPORTED_MODULE_20__.localize('accept.insert', \"Insert\"),\n group: 'left',\n order: 1,\n when: _platform_contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_22__.ContextKeyExpr.and(_suggest_js__WEBPACK_IMPORTED_MODULE_25__.Context.HasInsertAndReplaceRange, _suggest_js__WEBPACK_IMPORTED_MODULE_25__.Context.InsertMode.isEqualTo('insert'))\n }, {\n menuId: _suggest_js__WEBPACK_IMPORTED_MODULE_25__.suggestWidgetStatusbarMenu,\n title: _nls_js__WEBPACK_IMPORTED_MODULE_20__.localize('accept.replace', \"Replace\"),\n group: 'left',\n order: 1,\n when: _platform_contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_22__.ContextKeyExpr.and(_suggest_js__WEBPACK_IMPORTED_MODULE_25__.Context.HasInsertAndReplaceRange, _suggest_js__WEBPACK_IMPORTED_MODULE_25__.Context.InsertMode.isEqualTo('replace'))\n }]\n}));\n(0,_browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_11__.registerEditorCommand)(new SuggestCommand({\n id: 'acceptAlternativeSelectedSuggestion',\n precondition: _platform_contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_22__.ContextKeyExpr.and(_suggest_js__WEBPACK_IMPORTED_MODULE_25__.Context.Visible, _common_editorContextKeys_js__WEBPACK_IMPORTED_MODULE_15__.EditorContextKeys.textInputFocus, _suggest_js__WEBPACK_IMPORTED_MODULE_25__.Context.HasFocusedSuggestion),\n kbOpts: {\n weight: weight,\n kbExpr: _common_editorContextKeys_js__WEBPACK_IMPORTED_MODULE_15__.EditorContextKeys.textInputFocus,\n primary: 1024 /* KeyMod.Shift */ | 3 /* KeyCode.Enter */,\n secondary: [1024 /* KeyMod.Shift */ | 2 /* KeyCode.Tab */],\n },\n handler(x) {\n x.acceptSelectedSuggestion(false, true);\n },\n menuOpts: [{\n menuId: _suggest_js__WEBPACK_IMPORTED_MODULE_25__.suggestWidgetStatusbarMenu,\n group: 'left',\n order: 2,\n when: _platform_contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_22__.ContextKeyExpr.and(_suggest_js__WEBPACK_IMPORTED_MODULE_25__.Context.HasInsertAndReplaceRange, _suggest_js__WEBPACK_IMPORTED_MODULE_25__.Context.InsertMode.isEqualTo('insert')),\n title: _nls_js__WEBPACK_IMPORTED_MODULE_20__.localize('accept.replace', \"Replace\")\n }, {\n menuId: _suggest_js__WEBPACK_IMPORTED_MODULE_25__.suggestWidgetStatusbarMenu,\n group: 'left',\n order: 2,\n when: _platform_contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_22__.ContextKeyExpr.and(_suggest_js__WEBPACK_IMPORTED_MODULE_25__.Context.HasInsertAndReplaceRange, _suggest_js__WEBPACK_IMPORTED_MODULE_25__.Context.InsertMode.isEqualTo('replace')),\n title: _nls_js__WEBPACK_IMPORTED_MODULE_20__.localize('accept.insert', \"Insert\")\n }]\n}));\n// continue to support the old command\n_platform_commands_common_commands_js__WEBPACK_IMPORTED_MODULE_21__.CommandsRegistry.registerCommandAlias('acceptSelectedSuggestionOnEnter', 'acceptSelectedSuggestion');\n(0,_browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_11__.registerEditorCommand)(new SuggestCommand({\n id: 'hideSuggestWidget',\n precondition: _suggest_js__WEBPACK_IMPORTED_MODULE_25__.Context.Visible,\n handler: x => x.cancelSuggestWidget(),\n kbOpts: {\n weight: weight,\n kbExpr: _common_editorContextKeys_js__WEBPACK_IMPORTED_MODULE_15__.EditorContextKeys.textInputFocus,\n primary: 9 /* KeyCode.Escape */,\n secondary: [1024 /* KeyMod.Shift */ | 9 /* KeyCode.Escape */]\n }\n}));\n(0,_browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_11__.registerEditorCommand)(new SuggestCommand({\n id: 'selectNextSuggestion',\n precondition: _platform_contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_22__.ContextKeyExpr.and(_suggest_js__WEBPACK_IMPORTED_MODULE_25__.Context.Visible, _platform_contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_22__.ContextKeyExpr.or(_suggest_js__WEBPACK_IMPORTED_MODULE_25__.Context.MultipleSuggestions, _suggest_js__WEBPACK_IMPORTED_MODULE_25__.Context.HasFocusedSuggestion.negate())),\n handler: c => c.selectNextSuggestion(),\n kbOpts: {\n weight: weight,\n kbExpr: _common_editorContextKeys_js__WEBPACK_IMPORTED_MODULE_15__.EditorContextKeys.textInputFocus,\n primary: 18 /* KeyCode.DownArrow */,\n secondary: [2048 /* KeyMod.CtrlCmd */ | 18 /* KeyCode.DownArrow */],\n mac: { primary: 18 /* KeyCode.DownArrow */, secondary: [2048 /* KeyMod.CtrlCmd */ | 18 /* KeyCode.DownArrow */, 256 /* KeyMod.WinCtrl */ | 44 /* KeyCode.KeyN */] }\n }\n}));\n(0,_browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_11__.registerEditorCommand)(new SuggestCommand({\n id: 'selectNextPageSuggestion',\n precondition: _platform_contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_22__.ContextKeyExpr.and(_suggest_js__WEBPACK_IMPORTED_MODULE_25__.Context.Visible, _platform_contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_22__.ContextKeyExpr.or(_suggest_js__WEBPACK_IMPORTED_MODULE_25__.Context.MultipleSuggestions, _suggest_js__WEBPACK_IMPORTED_MODULE_25__.Context.HasFocusedSuggestion.negate())),\n handler: c => c.selectNextPageSuggestion(),\n kbOpts: {\n weight: weight,\n kbExpr: _common_editorContextKeys_js__WEBPACK_IMPORTED_MODULE_15__.EditorContextKeys.textInputFocus,\n primary: 12 /* KeyCode.PageDown */,\n secondary: [2048 /* KeyMod.CtrlCmd */ | 12 /* KeyCode.PageDown */]\n }\n}));\n(0,_browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_11__.registerEditorCommand)(new SuggestCommand({\n id: 'selectLastSuggestion',\n precondition: _platform_contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_22__.ContextKeyExpr.and(_suggest_js__WEBPACK_IMPORTED_MODULE_25__.Context.Visible, _platform_contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_22__.ContextKeyExpr.or(_suggest_js__WEBPACK_IMPORTED_MODULE_25__.Context.MultipleSuggestions, _suggest_js__WEBPACK_IMPORTED_MODULE_25__.Context.HasFocusedSuggestion.negate())),\n handler: c => c.selectLastSuggestion()\n}));\n(0,_browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_11__.registerEditorCommand)(new SuggestCommand({\n id: 'selectPrevSuggestion',\n precondition: _platform_contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_22__.ContextKeyExpr.and(_suggest_js__WEBPACK_IMPORTED_MODULE_25__.Context.Visible, _platform_contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_22__.ContextKeyExpr.or(_suggest_js__WEBPACK_IMPORTED_MODULE_25__.Context.MultipleSuggestions, _suggest_js__WEBPACK_IMPORTED_MODULE_25__.Context.HasFocusedSuggestion.negate())),\n handler: c => c.selectPrevSuggestion(),\n kbOpts: {\n weight: weight,\n kbExpr: _common_editorContextKeys_js__WEBPACK_IMPORTED_MODULE_15__.EditorContextKeys.textInputFocus,\n primary: 16 /* KeyCode.UpArrow */,\n secondary: [2048 /* KeyMod.CtrlCmd */ | 16 /* KeyCode.UpArrow */],\n mac: { primary: 16 /* KeyCode.UpArrow */, secondary: [2048 /* KeyMod.CtrlCmd */ | 16 /* KeyCode.UpArrow */, 256 /* KeyMod.WinCtrl */ | 46 /* KeyCode.KeyP */] }\n }\n}));\n(0,_browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_11__.registerEditorCommand)(new SuggestCommand({\n id: 'selectPrevPageSuggestion',\n precondition: _platform_contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_22__.ContextKeyExpr.and(_suggest_js__WEBPACK_IMPORTED_MODULE_25__.Context.Visible, _platform_contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_22__.ContextKeyExpr.or(_suggest_js__WEBPACK_IMPORTED_MODULE_25__.Context.MultipleSuggestions, _suggest_js__WEBPACK_IMPORTED_MODULE_25__.Context.HasFocusedSuggestion.negate())),\n handler: c => c.selectPrevPageSuggestion(),\n kbOpts: {\n weight: weight,\n kbExpr: _common_editorContextKeys_js__WEBPACK_IMPORTED_MODULE_15__.EditorContextKeys.textInputFocus,\n primary: 11 /* KeyCode.PageUp */,\n secondary: [2048 /* KeyMod.CtrlCmd */ | 11 /* KeyCode.PageUp */]\n }\n}));\n(0,_browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_11__.registerEditorCommand)(new SuggestCommand({\n id: 'selectFirstSuggestion',\n precondition: _platform_contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_22__.ContextKeyExpr.and(_suggest_js__WEBPACK_IMPORTED_MODULE_25__.Context.Visible, _platform_contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_22__.ContextKeyExpr.or(_suggest_js__WEBPACK_IMPORTED_MODULE_25__.Context.MultipleSuggestions, _suggest_js__WEBPACK_IMPORTED_MODULE_25__.Context.HasFocusedSuggestion.negate())),\n handler: c => c.selectFirstSuggestion()\n}));\n(0,_browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_11__.registerEditorCommand)(new SuggestCommand({\n id: 'focusSuggestion',\n precondition: _platform_contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_22__.ContextKeyExpr.and(_suggest_js__WEBPACK_IMPORTED_MODULE_25__.Context.Visible, _suggest_js__WEBPACK_IMPORTED_MODULE_25__.Context.HasFocusedSuggestion.negate()),\n handler: x => x.focusSuggestion(),\n kbOpts: {\n weight: weight,\n kbExpr: _common_editorContextKeys_js__WEBPACK_IMPORTED_MODULE_15__.EditorContextKeys.textInputFocus,\n primary: 2048 /* KeyMod.CtrlCmd */ | 10 /* KeyCode.Space */,\n secondary: [2048 /* KeyMod.CtrlCmd */ | 39 /* KeyCode.KeyI */],\n mac: { primary: 256 /* KeyMod.WinCtrl */ | 10 /* KeyCode.Space */, secondary: [2048 /* KeyMod.CtrlCmd */ | 39 /* KeyCode.KeyI */] }\n },\n}));\n(0,_browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_11__.registerEditorCommand)(new SuggestCommand({\n id: 'focusAndAcceptSuggestion',\n precondition: _platform_contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_22__.ContextKeyExpr.and(_suggest_js__WEBPACK_IMPORTED_MODULE_25__.Context.Visible, _suggest_js__WEBPACK_IMPORTED_MODULE_25__.Context.HasFocusedSuggestion.negate()),\n handler: c => {\n c.focusSuggestion();\n c.acceptSelectedSuggestion(true, false);\n }\n}));\n(0,_browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_11__.registerEditorCommand)(new SuggestCommand({\n id: 'toggleSuggestionDetails',\n precondition: _platform_contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_22__.ContextKeyExpr.and(_suggest_js__WEBPACK_IMPORTED_MODULE_25__.Context.Visible, _suggest_js__WEBPACK_IMPORTED_MODULE_25__.Context.HasFocusedSuggestion),\n handler: x => x.toggleSuggestionDetails(),\n kbOpts: {\n weight: weight,\n kbExpr: _common_editorContextKeys_js__WEBPACK_IMPORTED_MODULE_15__.EditorContextKeys.textInputFocus,\n primary: 2048 /* KeyMod.CtrlCmd */ | 10 /* KeyCode.Space */,\n secondary: [2048 /* KeyMod.CtrlCmd */ | 39 /* KeyCode.KeyI */],\n mac: { primary: 256 /* KeyMod.WinCtrl */ | 10 /* KeyCode.Space */, secondary: [2048 /* KeyMod.CtrlCmd */ | 39 /* KeyCode.KeyI */] }\n },\n menuOpts: [{\n menuId: _suggest_js__WEBPACK_IMPORTED_MODULE_25__.suggestWidgetStatusbarMenu,\n group: 'right',\n order: 1,\n when: _platform_contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_22__.ContextKeyExpr.and(_suggest_js__WEBPACK_IMPORTED_MODULE_25__.Context.DetailsVisible, _suggest_js__WEBPACK_IMPORTED_MODULE_25__.Context.CanResolve),\n title: _nls_js__WEBPACK_IMPORTED_MODULE_20__.localize('detail.more', \"show less\")\n }, {\n menuId: _suggest_js__WEBPACK_IMPORTED_MODULE_25__.suggestWidgetStatusbarMenu,\n group: 'right',\n order: 1,\n when: _platform_contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_22__.ContextKeyExpr.and(_suggest_js__WEBPACK_IMPORTED_MODULE_25__.Context.DetailsVisible.toNegated(), _suggest_js__WEBPACK_IMPORTED_MODULE_25__.Context.CanResolve),\n title: _nls_js__WEBPACK_IMPORTED_MODULE_20__.localize('detail.less', \"show more\")\n }]\n}));\n(0,_browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_11__.registerEditorCommand)(new SuggestCommand({\n id: 'toggleExplainMode',\n precondition: _suggest_js__WEBPACK_IMPORTED_MODULE_25__.Context.Visible,\n handler: x => x.toggleExplainMode(),\n kbOpts: {\n weight: 100 /* KeybindingWeight.EditorContrib */,\n primary: 2048 /* KeyMod.CtrlCmd */ | 90 /* KeyCode.Slash */,\n }\n}));\n(0,_browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_11__.registerEditorCommand)(new SuggestCommand({\n id: 'toggleSuggestionFocus',\n precondition: _suggest_js__WEBPACK_IMPORTED_MODULE_25__.Context.Visible,\n handler: x => x.toggleSuggestionFocus(),\n kbOpts: {\n weight: weight,\n kbExpr: _common_editorContextKeys_js__WEBPACK_IMPORTED_MODULE_15__.EditorContextKeys.textInputFocus,\n primary: 2048 /* KeyMod.CtrlCmd */ | 512 /* KeyMod.Alt */ | 10 /* KeyCode.Space */,\n mac: { primary: 256 /* KeyMod.WinCtrl */ | 512 /* KeyMod.Alt */ | 10 /* KeyCode.Space */ }\n }\n}));\n//#region tab completions\n(0,_browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_11__.registerEditorCommand)(new SuggestCommand({\n id: 'insertBestCompletion',\n precondition: _platform_contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_22__.ContextKeyExpr.and(_common_editorContextKeys_js__WEBPACK_IMPORTED_MODULE_15__.EditorContextKeys.textInputFocus, _platform_contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_22__.ContextKeyExpr.equals('config.editor.tabCompletion', 'on'), _wordContextKey_js__WEBPACK_IMPORTED_MODULE_19__.WordContextKey.AtEnd, _suggest_js__WEBPACK_IMPORTED_MODULE_25__.Context.Visible.toNegated(), _suggestAlternatives_js__WEBPACK_IMPORTED_MODULE_26__.SuggestAlternatives.OtherSuggestions.toNegated(), _snippet_browser_snippetController2_js__WEBPACK_IMPORTED_MODULE_16__.SnippetController2.InSnippetMode.toNegated()),\n handler: (x, arg) => {\n x.triggerSuggestAndAcceptBest((0,_base_common_types_js__WEBPACK_IMPORTED_MODULE_9__.isObject)(arg) ? { fallback: 'tab', ...arg } : { fallback: 'tab' });\n },\n kbOpts: {\n weight,\n primary: 2 /* KeyCode.Tab */\n }\n}));\n(0,_browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_11__.registerEditorCommand)(new SuggestCommand({\n id: 'insertNextSuggestion',\n precondition: _platform_contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_22__.ContextKeyExpr.and(_common_editorContextKeys_js__WEBPACK_IMPORTED_MODULE_15__.EditorContextKeys.textInputFocus, _platform_contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_22__.ContextKeyExpr.equals('config.editor.tabCompletion', 'on'), _suggestAlternatives_js__WEBPACK_IMPORTED_MODULE_26__.SuggestAlternatives.OtherSuggestions, _suggest_js__WEBPACK_IMPORTED_MODULE_25__.Context.Visible.toNegated(), _snippet_browser_snippetController2_js__WEBPACK_IMPORTED_MODULE_16__.SnippetController2.InSnippetMode.toNegated()),\n handler: x => x.acceptNextSuggestion(),\n kbOpts: {\n weight: weight,\n kbExpr: _common_editorContextKeys_js__WEBPACK_IMPORTED_MODULE_15__.EditorContextKeys.textInputFocus,\n primary: 2 /* KeyCode.Tab */\n }\n}));\n(0,_browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_11__.registerEditorCommand)(new SuggestCommand({\n id: 'insertPrevSuggestion',\n precondition: _platform_contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_22__.ContextKeyExpr.and(_common_editorContextKeys_js__WEBPACK_IMPORTED_MODULE_15__.EditorContextKeys.textInputFocus, _platform_contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_22__.ContextKeyExpr.equals('config.editor.tabCompletion', 'on'), _suggestAlternatives_js__WEBPACK_IMPORTED_MODULE_26__.SuggestAlternatives.OtherSuggestions, _suggest_js__WEBPACK_IMPORTED_MODULE_25__.Context.Visible.toNegated(), _snippet_browser_snippetController2_js__WEBPACK_IMPORTED_MODULE_16__.SnippetController2.InSnippetMode.toNegated()),\n handler: x => x.acceptPrevSuggestion(),\n kbOpts: {\n weight: weight,\n kbExpr: _common_editorContextKeys_js__WEBPACK_IMPORTED_MODULE_15__.EditorContextKeys.textInputFocus,\n primary: 1024 /* KeyMod.Shift */ | 2 /* KeyCode.Tab */\n }\n}));\n(0,_browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_11__.registerEditorAction)(class extends _browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_11__.EditorAction {\n constructor() {\n super({\n id: 'editor.action.resetSuggestSize',\n label: _nls_js__WEBPACK_IMPORTED_MODULE_20__.localize('suggest.reset.label', \"Reset Suggest Widget Size\"),\n alias: 'Reset Suggest Widget Size',\n precondition: undefined\n });\n }\n run(_accessor, editor) {\n var _a;\n (_a = SuggestController.get(editor)) === null || _a === void 0 ? void 0 : _a.resetWidgetSize();\n }\n});\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/contrib/suggest/browser/suggestController.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/contrib/suggest/browser/suggestInlineCompletions.js":
/*!******************************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/contrib/suggest/browser/suggestInlineCompletions.js ***!
\******************************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ SuggestInlineCompletions: () => (/* binding */ SuggestInlineCompletions)\n/* harmony export */ });\n/* harmony import */ var _base_common_cancellation_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../../base/common/cancellation.js */ \"./node_modules/monaco-editor/esm/vs/base/common/cancellation.js\");\n/* harmony import */ var _base_common_filters_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../base/common/filters.js */ \"./node_modules/monaco-editor/esm/vs/base/common/filters.js\");\n/* harmony import */ var _base_common_iterator_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../../base/common/iterator.js */ \"./node_modules/monaco-editor/esm/vs/base/common/iterator.js\");\n/* harmony import */ var _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../../../base/common/lifecycle.js */ \"./node_modules/monaco-editor/esm/vs/base/common/lifecycle.js\");\n/* harmony import */ var _browser_services_codeEditorService_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../../browser/services/codeEditorService.js */ \"./node_modules/monaco-editor/esm/vs/editor/browser/services/codeEditorService.js\");\n/* harmony import */ var _common_core_range_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../../../common/core/range.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/core/range.js\");\n/* harmony import */ var _common_editorFeatures_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../../../common/editorFeatures.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/editorFeatures.js\");\n/* harmony import */ var _common_services_languageFeatures_js__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ../../../common/services/languageFeatures.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/services/languageFeatures.js\");\n/* harmony import */ var _completionModel_js__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ./completionModel.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/suggest/browser/completionModel.js\");\n/* harmony import */ var _suggest_js__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ./suggest.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/suggest/browser/suggest.js\");\n/* harmony import */ var _suggestMemory_js__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! ./suggestMemory.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/suggest/browser/suggestMemory.js\");\n/* harmony import */ var _suggestModel_js__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(/*! ./suggestModel.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/suggest/browser/suggestModel.js\");\n/* harmony import */ var _wordDistance_js__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(/*! ./wordDistance.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/suggest/browser/wordDistance.js\");\n/* harmony import */ var _platform_clipboard_common_clipboardService_js__WEBPACK_IMPORTED_MODULE_13__ = __webpack_require__(/*! ../../../../platform/clipboard/common/clipboardService.js */ \"./node_modules/monaco-editor/esm/vs/platform/clipboard/common/clipboardService.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\nvar __decorate = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\n return c > 3 && r && Object.defineProperty(target, key, r), r;\n};\nvar __param = (undefined && undefined.__param) || function (paramIndex, decorator) {\n return function (target, key) { decorator(target, key, paramIndex); }\n};\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nclass SuggestInlineCompletion {\n constructor(range, insertText, filterText, additionalTextEdits, command, completion) {\n this.range = range;\n this.insertText = insertText;\n this.filterText = filterText;\n this.additionalTextEdits = additionalTextEdits;\n this.command = command;\n this.completion = completion;\n }\n}\nlet InlineCompletionResults = class InlineCompletionResults extends _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_3__.RefCountedDisposable {\n constructor(model, line, word, completionModel, completions, _suggestMemoryService) {\n super(completions.disposable);\n this.model = model;\n this.line = line;\n this.word = word;\n this.completionModel = completionModel;\n this._suggestMemoryService = _suggestMemoryService;\n }\n canBeReused(model, line, word) {\n return this.model === model // same model\n && this.line === line\n && this.word.word.length > 0\n && this.word.startColumn === word.startColumn && this.word.endColumn < word.endColumn // same word\n && this.completionModel.getIncompleteProvider().size === 0; // no incomplete results\n }\n get items() {\n var _a;\n const result = [];\n // Split items by preselected index. This ensures the memory-selected item shows first and that better/worst\n // ranked items are before/after\n const { items } = this.completionModel;\n const selectedIndex = this._suggestMemoryService.select(this.model, { lineNumber: this.line, column: this.word.endColumn + this.completionModel.lineContext.characterCountDelta }, items);\n const first = _base_common_iterator_js__WEBPACK_IMPORTED_MODULE_2__.Iterable.slice(items, selectedIndex);\n const second = _base_common_iterator_js__WEBPACK_IMPORTED_MODULE_2__.Iterable.slice(items, 0, selectedIndex);\n let resolveCount = 5;\n for (const item of _base_common_iterator_js__WEBPACK_IMPORTED_MODULE_2__.Iterable.concat(first, second)) {\n if (item.score === _base_common_filters_js__WEBPACK_IMPORTED_MODULE_1__.FuzzyScore.Default) {\n // skip items that have no overlap\n continue;\n }\n const range = new _common_core_range_js__WEBPACK_IMPORTED_MODULE_5__.Range(item.editStart.lineNumber, item.editStart.column, item.editInsertEnd.lineNumber, item.editInsertEnd.column + this.completionModel.lineContext.characterCountDelta // end PLUS character delta\n );\n const insertText = item.completion.insertTextRules && (item.completion.insertTextRules & 4 /* CompletionItemInsertTextRule.InsertAsSnippet */)\n ? { snippet: item.completion.insertText }\n : item.completion.insertText;\n result.push(new SuggestInlineCompletion(range, insertText, (_a = item.filterTextLow) !== null && _a !== void 0 ? _a : item.labelLow, item.completion.additionalTextEdits, item.completion.command, item));\n // resolve the first N suggestions eagerly\n if (resolveCount-- >= 0) {\n item.resolve(_base_common_cancellation_js__WEBPACK_IMPORTED_MODULE_0__.CancellationToken.None);\n }\n }\n return result;\n }\n};\nInlineCompletionResults = __decorate([\n __param(5, _suggestMemory_js__WEBPACK_IMPORTED_MODULE_10__.ISuggestMemoryService)\n], InlineCompletionResults);\nlet SuggestInlineCompletions = class SuggestInlineCompletions extends _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_3__.Disposable {\n constructor(_languageFeatureService, _clipboardService, _suggestMemoryService, _editorService) {\n super();\n this._languageFeatureService = _languageFeatureService;\n this._clipboardService = _clipboardService;\n this._suggestMemoryService = _suggestMemoryService;\n this._editorService = _editorService;\n this._store.add(_languageFeatureService.inlineCompletionsProvider.register('*', this));\n }\n async provideInlineCompletions(model, position, context, token) {\n var _a;\n if (context.selectedSuggestionInfo) {\n return;\n }\n let editor;\n for (const candidate of this._editorService.listCodeEditors()) {\n if (candidate.getModel() === model) {\n editor = candidate;\n break;\n }\n }\n if (!editor) {\n return;\n }\n const config = editor.getOption(89 /* EditorOption.quickSuggestions */);\n if (_suggest_js__WEBPACK_IMPORTED_MODULE_9__.QuickSuggestionsOptions.isAllOff(config)) {\n // quick suggest is off (for this model/language)\n return;\n }\n model.tokenization.tokenizeIfCheap(position.lineNumber);\n const lineTokens = model.tokenization.getLineTokens(position.lineNumber);\n const tokenType = lineTokens.getStandardTokenType(lineTokens.findTokenIndexAtOffset(Math.max(position.column - 1 - 1, 0)));\n if (_suggest_js__WEBPACK_IMPORTED_MODULE_9__.QuickSuggestionsOptions.valueFor(config, tokenType) !== 'inline') {\n // quick suggest is off (for this token)\n return undefined;\n }\n // We consider non-empty leading words and trigger characters. The latter only\n // when no word is being typed (word characters superseed trigger characters)\n let wordInfo = model.getWordAtPosition(position);\n let triggerCharacterInfo;\n if (!(wordInfo === null || wordInfo === void 0 ? void 0 : wordInfo.word)) {\n triggerCharacterInfo = this._getTriggerCharacterInfo(model, position);\n }\n if (!(wordInfo === null || wordInfo === void 0 ? void 0 : wordInfo.word) && !triggerCharacterInfo) {\n // not at word, not a trigger character\n return;\n }\n // ensure that we have word information and that we are at the end of a word\n // otherwise we stop because we don't want to do quick suggestions inside words\n if (!wordInfo) {\n wordInfo = model.getWordUntilPosition(position);\n }\n if (wordInfo.endColumn !== position.column) {\n return;\n }\n let result;\n const leadingLineContents = model.getValueInRange(new _common_core_range_js__WEBPACK_IMPORTED_MODULE_5__.Range(position.lineNumber, 1, position.lineNumber, position.column));\n if (!triggerCharacterInfo && ((_a = this._lastResult) === null || _a === void 0 ? void 0 : _a.canBeReused(model, position.lineNumber, wordInfo))) {\n // reuse a previous result iff possible, only a refilter is needed\n // TODO@jrieken this can be improved further and only incomplete results can be updated\n // console.log(`REUSE with ${wordInfo.word}`);\n const newLineContext = new _completionModel_js__WEBPACK_IMPORTED_MODULE_8__.LineContext(leadingLineContents, position.column - this._lastResult.word.endColumn);\n this._lastResult.completionModel.lineContext = newLineContext;\n this._lastResult.acquire();\n result = this._lastResult;\n }\n else {\n // refesh model is required\n const completions = await (0,_suggest_js__WEBPACK_IMPORTED_MODULE_9__.provideSuggestionItems)(this._languageFeatureService.completionProvider, model, position, new _suggest_js__WEBPACK_IMPORTED_MODULE_9__.CompletionOptions(undefined, _suggestModel_js__WEBPACK_IMPORTED_MODULE_11__.SuggestModel.createSuggestFilter(editor).itemKind, triggerCharacterInfo === null || triggerCharacterInfo === void 0 ? void 0 : triggerCharacterInfo.providers), triggerCharacterInfo && { triggerKind: 1 /* CompletionTriggerKind.TriggerCharacter */, triggerCharacter: triggerCharacterInfo.ch }, token);\n let clipboardText;\n if (completions.needsClipboard) {\n clipboardText = await this._clipboardService.readText();\n }\n const completionModel = new _completionModel_js__WEBPACK_IMPORTED_MODULE_8__.CompletionModel(completions.items, position.column, new _completionModel_js__WEBPACK_IMPORTED_MODULE_8__.LineContext(leadingLineContents, 0), _wordDistance_js__WEBPACK_IMPORTED_MODULE_12__.WordDistance.None, editor.getOption(118 /* EditorOption.suggest */), editor.getOption(112 /* EditorOption.snippetSuggestions */), { boostFullMatch: false, firstMatchCanBeWeak: false }, clipboardText);\n result = new InlineCompletionResults(model, position.lineNumber, wordInfo, completionModel, completions, this._suggestMemoryService);\n }\n this._lastResult = result;\n return result;\n }\n handleItemDidShow(_completions, item) {\n item.completion.resolve(_base_common_cancellation_js__WEBPACK_IMPORTED_MODULE_0__.CancellationToken.None);\n }\n freeInlineCompletions(result) {\n result.release();\n }\n _getTriggerCharacterInfo(model, position) {\n var _a;\n const ch = model.getValueInRange(_common_core_range_js__WEBPACK_IMPORTED_MODULE_5__.Range.fromPositions({ lineNumber: position.lineNumber, column: position.column - 1 }, position));\n const providers = new Set();\n for (const provider of this._languageFeatureService.completionProvider.all(model)) {\n if ((_a = provider.triggerCharacters) === null || _a === void 0 ? void 0 : _a.includes(ch)) {\n providers.add(provider);\n }\n }\n if (providers.size === 0) {\n return undefined;\n }\n return { providers, ch };\n }\n};\nSuggestInlineCompletions = __decorate([\n __param(0, _common_services_languageFeatures_js__WEBPACK_IMPORTED_MODULE_7__.ILanguageFeaturesService),\n __param(1, _platform_clipboard_common_clipboardService_js__WEBPACK_IMPORTED_MODULE_13__.IClipboardService),\n __param(2, _suggestMemory_js__WEBPACK_IMPORTED_MODULE_10__.ISuggestMemoryService),\n __param(3, _browser_services_codeEditorService_js__WEBPACK_IMPORTED_MODULE_4__.ICodeEditorService)\n], SuggestInlineCompletions);\n\n(0,_common_editorFeatures_js__WEBPACK_IMPORTED_MODULE_6__.registerEditorFeature)(SuggestInlineCompletions);\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/contrib/suggest/browser/suggestInlineCompletions.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/contrib/suggest/browser/suggestMemory.js":
/*!*******************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/contrib/suggest/browser/suggestMemory.js ***!
\*******************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ ISuggestMemoryService: () => (/* binding */ ISuggestMemoryService),\n/* harmony export */ LRUMemory: () => (/* binding */ LRUMemory),\n/* harmony export */ Memory: () => (/* binding */ Memory),\n/* harmony export */ NoMemory: () => (/* binding */ NoMemory),\n/* harmony export */ PrefixMemory: () => (/* binding */ PrefixMemory),\n/* harmony export */ SuggestMemoryService: () => (/* binding */ SuggestMemoryService)\n/* harmony export */ });\n/* harmony import */ var _base_common_async_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../../base/common/async.js */ \"./node_modules/monaco-editor/esm/vs/base/common/async.js\");\n/* harmony import */ var _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../base/common/lifecycle.js */ \"./node_modules/monaco-editor/esm/vs/base/common/lifecycle.js\");\n/* harmony import */ var _base_common_map_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../../base/common/map.js */ \"./node_modules/monaco-editor/esm/vs/base/common/map.js\");\n/* harmony import */ var _base_common_ternarySearchTree_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../../../base/common/ternarySearchTree.js */ \"./node_modules/monaco-editor/esm/vs/base/common/ternarySearchTree.js\");\n/* harmony import */ var _common_languages_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../../common/languages.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/languages.js\");\n/* harmony import */ var _platform_configuration_common_configuration_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../../../../platform/configuration/common/configuration.js */ \"./node_modules/monaco-editor/esm/vs/platform/configuration/common/configuration.js\");\n/* harmony import */ var _platform_instantiation_common_extensions_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../../../../platform/instantiation/common/extensions.js */ \"./node_modules/monaco-editor/esm/vs/platform/instantiation/common/extensions.js\");\n/* harmony import */ var _platform_instantiation_common_instantiation_js__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ../../../../platform/instantiation/common/instantiation.js */ \"./node_modules/monaco-editor/esm/vs/platform/instantiation/common/instantiation.js\");\n/* harmony import */ var _platform_storage_common_storage_js__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ../../../../platform/storage/common/storage.js */ \"./node_modules/monaco-editor/esm/vs/platform/storage/common/storage.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\nvar __decorate = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\n return c > 3 && r && Object.defineProperty(target, key, r), r;\n};\nvar __param = (undefined && undefined.__param) || function (paramIndex, decorator) {\n return function (target, key) { decorator(target, key, paramIndex); }\n};\nvar SuggestMemoryService_1;\n\n\n\n\n\n\n\n\n\nclass Memory {\n constructor(name) {\n this.name = name;\n }\n select(model, pos, items) {\n if (items.length === 0) {\n return 0;\n }\n const topScore = items[0].score[0];\n for (let i = 0; i < items.length; i++) {\n const { score, completion: suggestion } = items[i];\n if (score[0] !== topScore) {\n // stop when leaving the group of top matches\n break;\n }\n if (suggestion.preselect) {\n // stop when seeing an auto-select-item\n return i;\n }\n }\n return 0;\n }\n}\nclass NoMemory extends Memory {\n constructor() {\n super('first');\n }\n memorize(model, pos, item) {\n // no-op\n }\n toJSON() {\n return undefined;\n }\n fromJSON() {\n //\n }\n}\nclass LRUMemory extends Memory {\n constructor() {\n super('recentlyUsed');\n this._cache = new _base_common_map_js__WEBPACK_IMPORTED_MODULE_2__.LRUCache(300, 0.66);\n this._seq = 0;\n }\n memorize(model, pos, item) {\n const key = `${model.getLanguageId()}/${item.textLabel}`;\n this._cache.set(key, {\n touch: this._seq++,\n type: item.completion.kind,\n insertText: item.completion.insertText\n });\n }\n select(model, pos, items) {\n if (items.length === 0) {\n return 0;\n }\n const lineSuffix = model.getLineContent(pos.lineNumber).substr(pos.column - 10, pos.column - 1);\n if (/\\s$/.test(lineSuffix)) {\n return super.select(model, pos, items);\n }\n const topScore = items[0].score[0];\n let indexPreselect = -1;\n let indexRecency = -1;\n let seq = -1;\n for (let i = 0; i < items.length; i++) {\n if (items[i].score[0] !== topScore) {\n // consider only top items\n break;\n }\n const key = `${model.getLanguageId()}/${items[i].textLabel}`;\n const item = this._cache.peek(key);\n if (item && item.touch > seq && item.type === items[i].completion.kind && item.insertText === items[i].completion.insertText) {\n seq = item.touch;\n indexRecency = i;\n }\n if (items[i].completion.preselect && indexPreselect === -1) {\n // stop when seeing an auto-select-item\n return indexPreselect = i;\n }\n }\n if (indexRecency !== -1) {\n return indexRecency;\n }\n else if (indexPreselect !== -1) {\n return indexPreselect;\n }\n else {\n return 0;\n }\n }\n toJSON() {\n return this._cache.toJSON();\n }\n fromJSON(data) {\n this._cache.clear();\n const seq = 0;\n for (const [key, value] of data) {\n value.touch = seq;\n value.type = typeof value.type === 'number' ? value.type : _common_languages_js__WEBPACK_IMPORTED_MODULE_4__.CompletionItemKinds.fromString(value.type);\n this._cache.set(key, value);\n }\n this._seq = this._cache.size;\n }\n}\nclass PrefixMemory extends Memory {\n constructor() {\n super('recentlyUsedByPrefix');\n this._trie = _base_common_ternarySearchTree_js__WEBPACK_IMPORTED_MODULE_3__.TernarySearchTree.forStrings();\n this._seq = 0;\n }\n memorize(model, pos, item) {\n const { word } = model.getWordUntilPosition(pos);\n const key = `${model.getLanguageId()}/${word}`;\n this._trie.set(key, {\n type: item.completion.kind,\n insertText: item.completion.insertText,\n touch: this._seq++\n });\n }\n select(model, pos, items) {\n const { word } = model.getWordUntilPosition(pos);\n if (!word) {\n return super.select(model, pos, items);\n }\n const key = `${model.getLanguageId()}/${word}`;\n let item = this._trie.get(key);\n if (!item) {\n item = this._trie.findSubstr(key);\n }\n if (item) {\n for (let i = 0; i < items.length; i++) {\n const { kind, insertText } = items[i].completion;\n if (kind === item.type && insertText === item.insertText) {\n return i;\n }\n }\n }\n return super.select(model, pos, items);\n }\n toJSON() {\n const entries = [];\n this._trie.forEach((value, key) => entries.push([key, value]));\n // sort by last recently used (touch), then\n // take the top 200 item and normalize their\n // touch\n entries\n .sort((a, b) => -(a[1].touch - b[1].touch))\n .forEach((value, i) => value[1].touch = i);\n return entries.slice(0, 200);\n }\n fromJSON(data) {\n this._trie.clear();\n if (data.length > 0) {\n this._seq = data[0][1].touch + 1;\n for (const [key, value] of data) {\n value.type = typeof value.type === 'number' ? value.type : _common_languages_js__WEBPACK_IMPORTED_MODULE_4__.CompletionItemKinds.fromString(value.type);\n this._trie.set(key, value);\n }\n }\n }\n}\nlet SuggestMemoryService = SuggestMemoryService_1 = class SuggestMemoryService {\n constructor(_storageService, _configService) {\n this._storageService = _storageService;\n this._configService = _configService;\n this._disposables = new _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_1__.DisposableStore();\n this._persistSoon = new _base_common_async_js__WEBPACK_IMPORTED_MODULE_0__.RunOnceScheduler(() => this._saveState(), 500);\n this._disposables.add(_storageService.onWillSaveState(e => {\n if (e.reason === _platform_storage_common_storage_js__WEBPACK_IMPORTED_MODULE_8__.WillSaveStateReason.SHUTDOWN) {\n this._saveState();\n }\n }));\n }\n dispose() {\n this._disposables.dispose();\n this._persistSoon.dispose();\n }\n memorize(model, pos, item) {\n this._withStrategy(model, pos).memorize(model, pos, item);\n this._persistSoon.schedule();\n }\n select(model, pos, items) {\n return this._withStrategy(model, pos).select(model, pos, items);\n }\n _withStrategy(model, pos) {\n var _a;\n const mode = this._configService.getValue('editor.suggestSelection', {\n overrideIdentifier: model.getLanguageIdAtPosition(pos.lineNumber, pos.column),\n resource: model.uri\n });\n if (((_a = this._strategy) === null || _a === void 0 ? void 0 : _a.name) !== mode) {\n this._saveState();\n const ctor = SuggestMemoryService_1._strategyCtors.get(mode) || NoMemory;\n this._strategy = new ctor();\n try {\n const share = this._configService.getValue('editor.suggest.shareSuggestSelections');\n const scope = share ? 0 /* StorageScope.PROFILE */ : 1 /* StorageScope.WORKSPACE */;\n const raw = this._storageService.get(`${SuggestMemoryService_1._storagePrefix}/${mode}`, scope);\n if (raw) {\n this._strategy.fromJSON(JSON.parse(raw));\n }\n }\n catch (e) {\n // things can go wrong with JSON...\n }\n }\n return this._strategy;\n }\n _saveState() {\n if (this._strategy) {\n const share = this._configService.getValue('editor.suggest.shareSuggestSelections');\n const scope = share ? 0 /* StorageScope.PROFILE */ : 1 /* StorageScope.WORKSPACE */;\n const raw = JSON.stringify(this._strategy);\n this._storageService.store(`${SuggestMemoryService_1._storagePrefix}/${this._strategy.name}`, raw, scope, 1 /* StorageTarget.MACHINE */);\n }\n }\n};\nSuggestMemoryService._strategyCtors = new Map([\n ['recentlyUsedByPrefix', PrefixMemory],\n ['recentlyUsed', LRUMemory],\n ['first', NoMemory]\n]);\nSuggestMemoryService._storagePrefix = 'suggest/memories';\nSuggestMemoryService = SuggestMemoryService_1 = __decorate([\n __param(0, _platform_storage_common_storage_js__WEBPACK_IMPORTED_MODULE_8__.IStorageService),\n __param(1, _platform_configuration_common_configuration_js__WEBPACK_IMPORTED_MODULE_5__.IConfigurationService)\n], SuggestMemoryService);\n\nconst ISuggestMemoryService = (0,_platform_instantiation_common_instantiation_js__WEBPACK_IMPORTED_MODULE_7__.createDecorator)('ISuggestMemories');\n(0,_platform_instantiation_common_extensions_js__WEBPACK_IMPORTED_MODULE_6__.registerSingleton)(ISuggestMemoryService, SuggestMemoryService, 1 /* InstantiationType.Delayed */);\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/contrib/suggest/browser/suggestMemory.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/contrib/suggest/browser/suggestModel.js":
/*!******************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/contrib/suggest/browser/suggestModel.js ***!
\******************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ LineContext: () => (/* binding */ LineContext),\n/* harmony export */ SuggestModel: () => (/* binding */ SuggestModel)\n/* harmony export */ });\n/* harmony import */ var _base_common_async_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../../base/common/async.js */ \"./node_modules/monaco-editor/esm/vs/base/common/async.js\");\n/* harmony import */ var _base_common_cancellation_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../base/common/cancellation.js */ \"./node_modules/monaco-editor/esm/vs/base/common/cancellation.js\");\n/* harmony import */ var _base_common_errors_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../../base/common/errors.js */ \"./node_modules/monaco-editor/esm/vs/base/common/errors.js\");\n/* harmony import */ var _base_common_event_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../../../base/common/event.js */ \"./node_modules/monaco-editor/esm/vs/base/common/event.js\");\n/* harmony import */ var _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../../../base/common/lifecycle.js */ \"./node_modules/monaco-editor/esm/vs/base/common/lifecycle.js\");\n/* harmony import */ var _base_common_strings_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../../../../base/common/strings.js */ \"./node_modules/monaco-editor/esm/vs/base/common/strings.js\");\n/* harmony import */ var _common_core_selection_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../../../common/core/selection.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/core/selection.js\");\n/* harmony import */ var _common_services_editorWorker_js__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ../../../common/services/editorWorker.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/services/editorWorker.js\");\n/* harmony import */ var _wordDistance_js__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ./wordDistance.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/suggest/browser/wordDistance.js\");\n/* harmony import */ var _platform_clipboard_common_clipboardService_js__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ../../../../platform/clipboard/common/clipboardService.js */ \"./node_modules/monaco-editor/esm/vs/platform/clipboard/common/clipboardService.js\");\n/* harmony import */ var _platform_configuration_common_configuration_js__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! ../../../../platform/configuration/common/configuration.js */ \"./node_modules/monaco-editor/esm/vs/platform/configuration/common/configuration.js\");\n/* harmony import */ var _platform_contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(/*! ../../../../platform/contextkey/common/contextkey.js */ \"./node_modules/monaco-editor/esm/vs/platform/contextkey/common/contextkey.js\");\n/* harmony import */ var _platform_log_common_log_js__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(/*! ../../../../platform/log/common/log.js */ \"./node_modules/monaco-editor/esm/vs/platform/log/common/log.js\");\n/* harmony import */ var _platform_telemetry_common_telemetry_js__WEBPACK_IMPORTED_MODULE_13__ = __webpack_require__(/*! ../../../../platform/telemetry/common/telemetry.js */ \"./node_modules/monaco-editor/esm/vs/platform/telemetry/common/telemetry.js\");\n/* harmony import */ var _completionModel_js__WEBPACK_IMPORTED_MODULE_14__ = __webpack_require__(/*! ./completionModel.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/suggest/browser/completionModel.js\");\n/* harmony import */ var _suggest_js__WEBPACK_IMPORTED_MODULE_15__ = __webpack_require__(/*! ./suggest.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/suggest/browser/suggest.js\");\n/* harmony import */ var _common_services_languageFeatures_js__WEBPACK_IMPORTED_MODULE_16__ = __webpack_require__(/*! ../../../common/services/languageFeatures.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/services/languageFeatures.js\");\n/* harmony import */ var _base_common_filters_js__WEBPACK_IMPORTED_MODULE_17__ = __webpack_require__(/*! ../../../../base/common/filters.js */ \"./node_modules/monaco-editor/esm/vs/base/common/filters.js\");\n/* harmony import */ var _base_common_types_js__WEBPACK_IMPORTED_MODULE_18__ = __webpack_require__(/*! ../../../../base/common/types.js */ \"./node_modules/monaco-editor/esm/vs/base/common/types.js\");\n/* harmony import */ var _inlineCompletions_browser_inlineCompletionContextKeys_js__WEBPACK_IMPORTED_MODULE_19__ = __webpack_require__(/*! ../../inlineCompletions/browser/inlineCompletionContextKeys.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/inlineCompletions/browser/inlineCompletionContextKeys.js\");\n/* harmony import */ var _snippet_browser_snippetController2_js__WEBPACK_IMPORTED_MODULE_20__ = __webpack_require__(/*! ../../snippet/browser/snippetController2.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/snippet/browser/snippetController2.js\");\n/* harmony import */ var _platform_environment_common_environment_js__WEBPACK_IMPORTED_MODULE_21__ = __webpack_require__(/*! ../../../../platform/environment/common/environment.js */ \"./node_modules/monaco-editor/esm/vs/platform/environment/common/environment.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\nvar __decorate = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\n return c > 3 && r && Object.defineProperty(target, key, r), r;\n};\nvar __param = (undefined && undefined.__param) || function (paramIndex, decorator) {\n return function (target, key) { decorator(target, key, paramIndex); }\n};\nvar SuggestModel_1;\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nclass LineContext {\n static shouldAutoTrigger(editor) {\n if (!editor.hasModel()) {\n return false;\n }\n const model = editor.getModel();\n const pos = editor.getPosition();\n model.tokenization.tokenizeIfCheap(pos.lineNumber);\n const word = model.getWordAtPosition(pos);\n if (!word) {\n return false;\n }\n if (word.endColumn !== pos.column &&\n word.startColumn + 1 !== pos.column /* after typing a single character before a word */) {\n return false;\n }\n if (!isNaN(Number(word.word))) {\n return false;\n }\n return true;\n }\n constructor(model, position, triggerOptions) {\n this.leadingLineContent = model.getLineContent(position.lineNumber).substr(0, position.column - 1);\n this.leadingWord = model.getWordUntilPosition(position);\n this.lineNumber = position.lineNumber;\n this.column = position.column;\n this.triggerOptions = triggerOptions;\n }\n}\nfunction canShowQuickSuggest(editor, contextKeyService, configurationService) {\n if (!Boolean(contextKeyService.getContextKeyValue(_inlineCompletions_browser_inlineCompletionContextKeys_js__WEBPACK_IMPORTED_MODULE_19__.InlineCompletionContextKeys.inlineSuggestionVisible.key))) {\n // Allow if there is no inline suggestion.\n return true;\n }\n const suppressSuggestions = contextKeyService.getContextKeyValue(_inlineCompletions_browser_inlineCompletionContextKeys_js__WEBPACK_IMPORTED_MODULE_19__.InlineCompletionContextKeys.suppressSuggestions.key);\n if (suppressSuggestions !== undefined) {\n return !suppressSuggestions;\n }\n return !editor.getOption(62 /* EditorOption.inlineSuggest */).suppressSuggestions;\n}\nfunction canShowSuggestOnTriggerCharacters(editor, contextKeyService, configurationService) {\n if (!Boolean(contextKeyService.getContextKeyValue('inlineSuggestionVisible'))) {\n // Allow if there is no inline suggestion.\n return true;\n }\n const suppressSuggestions = contextKeyService.getContextKeyValue(_inlineCompletions_browser_inlineCompletionContextKeys_js__WEBPACK_IMPORTED_MODULE_19__.InlineCompletionContextKeys.suppressSuggestions.key);\n if (suppressSuggestions !== undefined) {\n return !suppressSuggestions;\n }\n return !editor.getOption(62 /* EditorOption.inlineSuggest */).suppressSuggestions;\n}\nlet SuggestModel = SuggestModel_1 = class SuggestModel {\n constructor(_editor, _editorWorkerService, _clipboardService, _telemetryService, _logService, _contextKeyService, _configurationService, _languageFeaturesService, _envService) {\n this._editor = _editor;\n this._editorWorkerService = _editorWorkerService;\n this._clipboardService = _clipboardService;\n this._telemetryService = _telemetryService;\n this._logService = _logService;\n this._contextKeyService = _contextKeyService;\n this._configurationService = _configurationService;\n this._languageFeaturesService = _languageFeaturesService;\n this._envService = _envService;\n this._toDispose = new _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_4__.DisposableStore();\n this._triggerCharacterListener = new _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_4__.DisposableStore();\n this._triggerQuickSuggest = new _base_common_async_js__WEBPACK_IMPORTED_MODULE_0__.TimeoutTimer();\n this._triggerState = undefined;\n this._completionDisposables = new _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_4__.DisposableStore();\n this._onDidCancel = new _base_common_event_js__WEBPACK_IMPORTED_MODULE_3__.Emitter();\n this._onDidTrigger = new _base_common_event_js__WEBPACK_IMPORTED_MODULE_3__.Emitter();\n this._onDidSuggest = new _base_common_event_js__WEBPACK_IMPORTED_MODULE_3__.Emitter();\n this.onDidCancel = this._onDidCancel.event;\n this.onDidTrigger = this._onDidTrigger.event;\n this.onDidSuggest = this._onDidSuggest.event;\n this._telemetryGate = 0;\n this._currentSelection = this._editor.getSelection() || new _common_core_selection_js__WEBPACK_IMPORTED_MODULE_6__.Selection(1, 1, 1, 1);\n // wire up various listeners\n this._toDispose.add(this._editor.onDidChangeModel(() => {\n this._updateTriggerCharacters();\n this.cancel();\n }));\n this._toDispose.add(this._editor.onDidChangeModelLanguage(() => {\n this._updateTriggerCharacters();\n this.cancel();\n }));\n this._toDispose.add(this._editor.onDidChangeConfiguration(() => {\n this._updateTriggerCharacters();\n }));\n this._toDispose.add(this._languageFeaturesService.completionProvider.onDidChange(() => {\n this._updateTriggerCharacters();\n this._updateActiveSuggestSession();\n }));\n let editorIsComposing = false;\n this._toDispose.add(this._editor.onDidCompositionStart(() => {\n editorIsComposing = true;\n }));\n this._toDispose.add(this._editor.onDidCompositionEnd(() => {\n editorIsComposing = false;\n this._onCompositionEnd();\n }));\n this._toDispose.add(this._editor.onDidChangeCursorSelection(e => {\n // only trigger suggest when the editor isn't composing a character\n if (!editorIsComposing) {\n this._onCursorChange(e);\n }\n }));\n this._toDispose.add(this._editor.onDidChangeModelContent(() => {\n // only filter completions when the editor isn't composing a character\n // allow-any-unicode-next-line\n // e.g. ¨ + u makes ü but just ¨ cannot be used for filtering\n if (!editorIsComposing && this._triggerState !== undefined) {\n this._refilterCompletionItems();\n }\n }));\n this._updateTriggerCharacters();\n }\n dispose() {\n (0,_base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_4__.dispose)(this._triggerCharacterListener);\n (0,_base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_4__.dispose)([this._onDidCancel, this._onDidSuggest, this._onDidTrigger, this._triggerQuickSuggest]);\n this._toDispose.dispose();\n this._completionDisposables.dispose();\n this.cancel();\n }\n _updateTriggerCharacters() {\n this._triggerCharacterListener.clear();\n if (this._editor.getOption(91 /* EditorOption.readOnly */)\n || !this._editor.hasModel()\n || !this._editor.getOption(121 /* EditorOption.suggestOnTriggerCharacters */)) {\n return;\n }\n const supportsByTriggerCharacter = new Map();\n for (const support of this._languageFeaturesService.completionProvider.all(this._editor.getModel())) {\n for (const ch of support.triggerCharacters || []) {\n let set = supportsByTriggerCharacter.get(ch);\n if (!set) {\n set = new Set();\n set.add((0,_suggest_js__WEBPACK_IMPORTED_MODULE_15__.getSnippetSuggestSupport)());\n supportsByTriggerCharacter.set(ch, set);\n }\n set.add(support);\n }\n }\n const checkTriggerCharacter = (text) => {\n var _a;\n if (!canShowSuggestOnTriggerCharacters(this._editor, this._contextKeyService, this._configurationService)) {\n return;\n }\n if (LineContext.shouldAutoTrigger(this._editor)) {\n // don't trigger by trigger characters when this is a case for quick suggest\n return;\n }\n if (!text) {\n // came here from the compositionEnd-event\n const position = this._editor.getPosition();\n const model = this._editor.getModel();\n text = model.getLineContent(position.lineNumber).substr(0, position.column - 1);\n }\n let lastChar = '';\n if ((0,_base_common_strings_js__WEBPACK_IMPORTED_MODULE_5__.isLowSurrogate)(text.charCodeAt(text.length - 1))) {\n if ((0,_base_common_strings_js__WEBPACK_IMPORTED_MODULE_5__.isHighSurrogate)(text.charCodeAt(text.length - 2))) {\n lastChar = text.substr(text.length - 2);\n }\n }\n else {\n lastChar = text.charAt(text.length - 1);\n }\n const supports = supportsByTriggerCharacter.get(lastChar);\n if (supports) {\n // keep existing items that where not computed by the\n // supports/providers that want to trigger now\n const providerItemsToReuse = new Map();\n if (this._completionModel) {\n for (const [provider, items] of this._completionModel.getItemsByProvider()) {\n if (!supports.has(provider)) {\n providerItemsToReuse.set(provider, items);\n }\n }\n }\n this.trigger({\n auto: true,\n triggerKind: 1 /* CompletionTriggerKind.TriggerCharacter */,\n triggerCharacter: lastChar,\n retrigger: Boolean(this._completionModel),\n clipboardText: (_a = this._completionModel) === null || _a === void 0 ? void 0 : _a.clipboardText,\n completionOptions: { providerFilter: supports, providerItemsToReuse }\n });\n }\n };\n this._triggerCharacterListener.add(this._editor.onDidType(checkTriggerCharacter));\n this._triggerCharacterListener.add(this._editor.onDidCompositionEnd(() => checkTriggerCharacter()));\n }\n // --- trigger/retrigger/cancel suggest\n get state() {\n if (!this._triggerState) {\n return 0 /* State.Idle */;\n }\n else if (!this._triggerState.auto) {\n return 1 /* State.Manual */;\n }\n else {\n return 2 /* State.Auto */;\n }\n }\n cancel(retrigger = false) {\n var _a;\n if (this._triggerState !== undefined) {\n this._triggerQuickSuggest.cancel();\n (_a = this._requestToken) === null || _a === void 0 ? void 0 : _a.cancel();\n this._requestToken = undefined;\n this._triggerState = undefined;\n this._completionModel = undefined;\n this._context = undefined;\n this._onDidCancel.fire({ retrigger });\n }\n }\n clear() {\n this._completionDisposables.clear();\n }\n _updateActiveSuggestSession() {\n if (this._triggerState !== undefined) {\n if (!this._editor.hasModel() || !this._languageFeaturesService.completionProvider.has(this._editor.getModel())) {\n this.cancel();\n }\n else {\n this.trigger({ auto: this._triggerState.auto, retrigger: true });\n }\n }\n }\n _onCursorChange(e) {\n if (!this._editor.hasModel()) {\n return;\n }\n const prevSelection = this._currentSelection;\n this._currentSelection = this._editor.getSelection();\n if (!e.selection.isEmpty()\n || (e.reason !== 0 /* CursorChangeReason.NotSet */ && e.reason !== 3 /* CursorChangeReason.Explicit */)\n || (e.source !== 'keyboard' && e.source !== 'deleteLeft')) {\n // Early exit if nothing needs to be done!\n // Leave some form of early exit check here if you wish to continue being a cursor position change listener ;)\n this.cancel();\n return;\n }\n if (this._triggerState === undefined && e.reason === 0 /* CursorChangeReason.NotSet */) {\n if (prevSelection.containsRange(this._currentSelection) || prevSelection.getEndPosition().isBeforeOrEqual(this._currentSelection.getPosition())) {\n // cursor did move RIGHT due to typing -> trigger quick suggest\n this._doTriggerQuickSuggest();\n }\n }\n else if (this._triggerState !== undefined && e.reason === 3 /* CursorChangeReason.Explicit */) {\n // suggest is active and something like cursor keys are used to move\n // the cursor. this means we can refilter at the new position\n this._refilterCompletionItems();\n }\n }\n _onCompositionEnd() {\n // trigger or refilter when composition ends\n if (this._triggerState === undefined) {\n this._doTriggerQuickSuggest();\n }\n else {\n this._refilterCompletionItems();\n }\n }\n _doTriggerQuickSuggest() {\n var _a;\n if (_suggest_js__WEBPACK_IMPORTED_MODULE_15__.QuickSuggestionsOptions.isAllOff(this._editor.getOption(89 /* EditorOption.quickSuggestions */))) {\n // not enabled\n return;\n }\n if (this._editor.getOption(118 /* EditorOption.suggest */).snippetsPreventQuickSuggestions && ((_a = _snippet_browser_snippetController2_js__WEBPACK_IMPORTED_MODULE_20__.SnippetController2.get(this._editor)) === null || _a === void 0 ? void 0 : _a.isInSnippet())) {\n // no quick suggestion when in snippet mode\n return;\n }\n this.cancel();\n this._triggerQuickSuggest.cancelAndSet(() => {\n if (this._triggerState !== undefined) {\n return;\n }\n if (!LineContext.shouldAutoTrigger(this._editor)) {\n return;\n }\n if (!this._editor.hasModel() || !this._editor.hasWidgetFocus()) {\n return;\n }\n const model = this._editor.getModel();\n const pos = this._editor.getPosition();\n // validate enabled now\n const config = this._editor.getOption(89 /* EditorOption.quickSuggestions */);\n if (_suggest_js__WEBPACK_IMPORTED_MODULE_15__.QuickSuggestionsOptions.isAllOff(config)) {\n return;\n }\n if (!_suggest_js__WEBPACK_IMPORTED_MODULE_15__.QuickSuggestionsOptions.isAllOn(config)) {\n // Check the type of the token that triggered this\n model.tokenization.tokenizeIfCheap(pos.lineNumber);\n const lineTokens = model.tokenization.getLineTokens(pos.lineNumber);\n const tokenType = lineTokens.getStandardTokenType(lineTokens.findTokenIndexAtOffset(Math.max(pos.column - 1 - 1, 0)));\n if (_suggest_js__WEBPACK_IMPORTED_MODULE_15__.QuickSuggestionsOptions.valueFor(config, tokenType) !== 'on') {\n return;\n }\n }\n if (!canShowQuickSuggest(this._editor, this._contextKeyService, this._configurationService)) {\n // do not trigger quick suggestions if inline suggestions are shown\n return;\n }\n if (!this._languageFeaturesService.completionProvider.has(model)) {\n return;\n }\n // we made it till here -> trigger now\n this.trigger({ auto: true });\n }, this._editor.getOption(90 /* EditorOption.quickSuggestionsDelay */));\n }\n _refilterCompletionItems() {\n (0,_base_common_types_js__WEBPACK_IMPORTED_MODULE_18__.assertType)(this._editor.hasModel());\n (0,_base_common_types_js__WEBPACK_IMPORTED_MODULE_18__.assertType)(this._triggerState !== undefined);\n const model = this._editor.getModel();\n const position = this._editor.getPosition();\n const ctx = new LineContext(model, position, { ...this._triggerState, refilter: true });\n this._onNewContext(ctx);\n }\n trigger(options) {\n var _a, _b, _c, _d, _e, _f;\n if (!this._editor.hasModel()) {\n return;\n }\n const model = this._editor.getModel();\n const ctx = new LineContext(model, this._editor.getPosition(), options);\n // Cancel previous requests, change state & update UI\n this.cancel(options.retrigger);\n this._triggerState = options;\n this._onDidTrigger.fire({ auto: options.auto, shy: (_a = options.shy) !== null && _a !== void 0 ? _a : false, position: this._editor.getPosition() });\n // Capture context when request was sent\n this._context = ctx;\n // Build context for request\n let suggestCtx = { triggerKind: (_b = options.triggerKind) !== null && _b !== void 0 ? _b : 0 /* CompletionTriggerKind.Invoke */ };\n if (options.triggerCharacter) {\n suggestCtx = {\n triggerKind: 1 /* CompletionTriggerKind.TriggerCharacter */,\n triggerCharacter: options.triggerCharacter\n };\n }\n this._requestToken = new _base_common_cancellation_js__WEBPACK_IMPORTED_MODULE_1__.CancellationTokenSource();\n // kind filter and snippet sort rules\n const snippetSuggestions = this._editor.getOption(112 /* EditorOption.snippetSuggestions */);\n let snippetSortOrder = 1 /* SnippetSortOrder.Inline */;\n switch (snippetSuggestions) {\n case 'top':\n snippetSortOrder = 0 /* SnippetSortOrder.Top */;\n break;\n // \t↓ that's the default anyways...\n // case 'inline':\n // \tsnippetSortOrder = SnippetSortOrder.Inline;\n // \tbreak;\n case 'bottom':\n snippetSortOrder = 2 /* SnippetSortOrder.Bottom */;\n break;\n }\n const { itemKind: itemKindFilter, showDeprecated } = SuggestModel_1.createSuggestFilter(this._editor);\n const completionOptions = new _suggest_js__WEBPACK_IMPORTED_MODULE_15__.CompletionOptions(snippetSortOrder, (_d = (_c = options.completionOptions) === null || _c === void 0 ? void 0 : _c.kindFilter) !== null && _d !== void 0 ? _d : itemKindFilter, (_e = options.completionOptions) === null || _e === void 0 ? void 0 : _e.providerFilter, (_f = options.completionOptions) === null || _f === void 0 ? void 0 : _f.providerItemsToReuse, showDeprecated);\n const wordDistance = _wordDistance_js__WEBPACK_IMPORTED_MODULE_8__.WordDistance.create(this._editorWorkerService, this._editor);\n const completions = (0,_suggest_js__WEBPACK_IMPORTED_MODULE_15__.provideSuggestionItems)(this._languageFeaturesService.completionProvider, model, this._editor.getPosition(), completionOptions, suggestCtx, this._requestToken.token);\n Promise.all([completions, wordDistance]).then(async ([completions, wordDistance]) => {\n var _a;\n (_a = this._requestToken) === null || _a === void 0 ? void 0 : _a.dispose();\n if (!this._editor.hasModel()) {\n return;\n }\n let clipboardText = options === null || options === void 0 ? void 0 : options.clipboardText;\n if (!clipboardText && completions.needsClipboard) {\n clipboardText = await this._clipboardService.readText();\n }\n if (this._triggerState === undefined) {\n return;\n }\n const model = this._editor.getModel();\n // const items = completions.items;\n // if (existing) {\n // \tconst cmpFn = getSuggestionComparator(snippetSortOrder);\n // \titems = items.concat(existing.items).sort(cmpFn);\n // }\n const ctx = new LineContext(model, this._editor.getPosition(), options);\n const fuzzySearchOptions = {\n ..._base_common_filters_js__WEBPACK_IMPORTED_MODULE_17__.FuzzyScoreOptions.default,\n firstMatchCanBeWeak: !this._editor.getOption(118 /* EditorOption.suggest */).matchOnWordStartOnly\n };\n this._completionModel = new _completionModel_js__WEBPACK_IMPORTED_MODULE_14__.CompletionModel(completions.items, this._context.column, {\n leadingLineContent: ctx.leadingLineContent,\n characterCountDelta: ctx.column - this._context.column\n }, wordDistance, this._editor.getOption(118 /* EditorOption.suggest */), this._editor.getOption(112 /* EditorOption.snippetSuggestions */), fuzzySearchOptions, clipboardText);\n // store containers so that they can be disposed later\n this._completionDisposables.add(completions.disposable);\n this._onNewContext(ctx);\n // finally report telemetry about durations\n this._reportDurationsTelemetry(completions.durations);\n // report invalid completions by source\n if (!this._envService.isBuilt || this._envService.isExtensionDevelopment) {\n for (const item of completions.items) {\n if (item.isInvalid) {\n this._logService.warn(`[suggest] did IGNORE invalid completion item from ${item.provider._debugDisplayName}`, item.completion);\n }\n }\n }\n }).catch(_base_common_errors_js__WEBPACK_IMPORTED_MODULE_2__.onUnexpectedError);\n }\n _reportDurationsTelemetry(durations) {\n if (this._telemetryGate++ % 230 !== 0) {\n return;\n }\n setTimeout(() => {\n this._telemetryService.publicLog2('suggest.durations.json', { data: JSON.stringify(durations) });\n this._logService.debug('suggest.durations.json', durations);\n });\n }\n static createSuggestFilter(editor) {\n // kind filter and snippet sort rules\n const result = new Set();\n // snippet setting\n const snippetSuggestions = editor.getOption(112 /* EditorOption.snippetSuggestions */);\n if (snippetSuggestions === 'none') {\n result.add(27 /* CompletionItemKind.Snippet */);\n }\n // type setting\n const suggestOptions = editor.getOption(118 /* EditorOption.suggest */);\n if (!suggestOptions.showMethods) {\n result.add(0 /* CompletionItemKind.Method */);\n }\n if (!suggestOptions.showFunctions) {\n result.add(1 /* CompletionItemKind.Function */);\n }\n if (!suggestOptions.showConstructors) {\n result.add(2 /* CompletionItemKind.Constructor */);\n }\n if (!suggestOptions.showFields) {\n result.add(3 /* CompletionItemKind.Field */);\n }\n if (!suggestOptions.showVariables) {\n result.add(4 /* CompletionItemKind.Variable */);\n }\n if (!suggestOptions.showClasses) {\n result.add(5 /* CompletionItemKind.Class */);\n }\n if (!suggestOptions.showStructs) {\n result.add(6 /* CompletionItemKind.Struct */);\n }\n if (!suggestOptions.showInterfaces) {\n result.add(7 /* CompletionItemKind.Interface */);\n }\n if (!suggestOptions.showModules) {\n result.add(8 /* CompletionItemKind.Module */);\n }\n if (!suggestOptions.showProperties) {\n result.add(9 /* CompletionItemKind.Property */);\n }\n if (!suggestOptions.showEvents) {\n result.add(10 /* CompletionItemKind.Event */);\n }\n if (!suggestOptions.showOperators) {\n result.add(11 /* CompletionItemKind.Operator */);\n }\n if (!suggestOptions.showUnits) {\n result.add(12 /* CompletionItemKind.Unit */);\n }\n if (!suggestOptions.showValues) {\n result.add(13 /* CompletionItemKind.Value */);\n }\n if (!suggestOptions.showConstants) {\n result.add(14 /* CompletionItemKind.Constant */);\n }\n if (!suggestOptions.showEnums) {\n result.add(15 /* CompletionItemKind.Enum */);\n }\n if (!suggestOptions.showEnumMembers) {\n result.add(16 /* CompletionItemKind.EnumMember */);\n }\n if (!suggestOptions.showKeywords) {\n result.add(17 /* CompletionItemKind.Keyword */);\n }\n if (!suggestOptions.showWords) {\n result.add(18 /* CompletionItemKind.Text */);\n }\n if (!suggestOptions.showColors) {\n result.add(19 /* CompletionItemKind.Color */);\n }\n if (!suggestOptions.showFiles) {\n result.add(20 /* CompletionItemKind.File */);\n }\n if (!suggestOptions.showReferences) {\n result.add(21 /* CompletionItemKind.Reference */);\n }\n if (!suggestOptions.showColors) {\n result.add(22 /* CompletionItemKind.Customcolor */);\n }\n if (!suggestOptions.showFolders) {\n result.add(23 /* CompletionItemKind.Folder */);\n }\n if (!suggestOptions.showTypeParameters) {\n result.add(24 /* CompletionItemKind.TypeParameter */);\n }\n if (!suggestOptions.showSnippets) {\n result.add(27 /* CompletionItemKind.Snippet */);\n }\n if (!suggestOptions.showUsers) {\n result.add(25 /* CompletionItemKind.User */);\n }\n if (!suggestOptions.showIssues) {\n result.add(26 /* CompletionItemKind.Issue */);\n }\n return { itemKind: result, showDeprecated: suggestOptions.showDeprecated };\n }\n _onNewContext(ctx) {\n if (!this._context) {\n // happens when 24x7 IntelliSense is enabled and still in its delay\n return;\n }\n if (ctx.lineNumber !== this._context.lineNumber) {\n // e.g. happens when pressing Enter while IntelliSense is computed\n this.cancel();\n return;\n }\n if ((0,_base_common_strings_js__WEBPACK_IMPORTED_MODULE_5__.getLeadingWhitespace)(ctx.leadingLineContent) !== (0,_base_common_strings_js__WEBPACK_IMPORTED_MODULE_5__.getLeadingWhitespace)(this._context.leadingLineContent)) {\n // cancel IntelliSense when line start changes\n // happens when the current word gets outdented\n this.cancel();\n return;\n }\n if (ctx.column < this._context.column) {\n // typed -> moved cursor LEFT -> retrigger if still on a word\n if (ctx.leadingWord.word) {\n this.trigger({ auto: this._context.triggerOptions.auto, retrigger: true });\n }\n else {\n this.cancel();\n }\n return;\n }\n if (!this._completionModel) {\n // happens when IntelliSense is not yet computed\n return;\n }\n if (ctx.leadingWord.word.length !== 0 && ctx.leadingWord.startColumn > this._context.leadingWord.startColumn) {\n // started a new word while IntelliSense shows -> retrigger but reuse all items that we currently have\n const shouldAutoTrigger = LineContext.shouldAutoTrigger(this._editor);\n if (shouldAutoTrigger && this._context) {\n // shouldAutoTrigger forces tokenization, which can cause pending cursor change events to be emitted, which can cause\n // suggestions to be cancelled, which causes `this._context` to be undefined\n const map = this._completionModel.getItemsByProvider();\n this.trigger({\n auto: this._context.triggerOptions.auto,\n retrigger: true,\n clipboardText: this._completionModel.clipboardText,\n completionOptions: { providerItemsToReuse: map }\n });\n }\n return;\n }\n if (ctx.column > this._context.column && this._completionModel.getIncompleteProvider().size > 0 && ctx.leadingWord.word.length !== 0) {\n // typed -> moved cursor RIGHT & incomple model & still on a word -> retrigger\n const providerItemsToReuse = new Map();\n const providerFilter = new Set();\n for (const [provider, items] of this._completionModel.getItemsByProvider()) {\n if (items.length > 0 && items[0].container.incomplete) {\n providerFilter.add(provider);\n }\n else {\n providerItemsToReuse.set(provider, items);\n }\n }\n this.trigger({\n auto: this._context.triggerOptions.auto,\n triggerKind: 2 /* CompletionTriggerKind.TriggerForIncompleteCompletions */,\n retrigger: true,\n clipboardText: this._completionModel.clipboardText,\n completionOptions: { providerFilter, providerItemsToReuse }\n });\n }\n else {\n // typed -> moved cursor RIGHT -> update UI\n const oldLineContext = this._completionModel.lineContext;\n let isFrozen = false;\n this._completionModel.lineContext = {\n leadingLineContent: ctx.leadingLineContent,\n characterCountDelta: ctx.column - this._context.column\n };\n if (this._completionModel.items.length === 0) {\n const shouldAutoTrigger = LineContext.shouldAutoTrigger(this._editor);\n if (!this._context) {\n // shouldAutoTrigger forces tokenization, which can cause pending cursor change events to be emitted, which can cause\n // suggestions to be cancelled, which causes `this._context` to be undefined\n this.cancel();\n return;\n }\n if (shouldAutoTrigger && this._context.leadingWord.endColumn < ctx.leadingWord.startColumn) {\n // retrigger when heading into a new word\n this.trigger({ auto: this._context.triggerOptions.auto, retrigger: true });\n return;\n }\n if (!this._context.triggerOptions.auto) {\n // freeze when IntelliSense was manually requested\n this._completionModel.lineContext = oldLineContext;\n isFrozen = this._completionModel.items.length > 0;\n if (isFrozen && ctx.leadingWord.word.length === 0) {\n // there were results before but now there aren't\n // and also we are not on a word anymore -> cancel\n this.cancel();\n return;\n }\n }\n else {\n // nothing left\n this.cancel();\n return;\n }\n }\n this._onDidSuggest.fire({\n completionModel: this._completionModel,\n triggerOptions: ctx.triggerOptions,\n isFrozen,\n });\n }\n }\n};\nSuggestModel = SuggestModel_1 = __decorate([\n __param(1, _common_services_editorWorker_js__WEBPACK_IMPORTED_MODULE_7__.IEditorWorkerService),\n __param(2, _platform_clipboard_common_clipboardService_js__WEBPACK_IMPORTED_MODULE_9__.IClipboardService),\n __param(3, _platform_telemetry_common_telemetry_js__WEBPACK_IMPORTED_MODULE_13__.ITelemetryService),\n __param(4, _platform_log_common_log_js__WEBPACK_IMPORTED_MODULE_12__.ILogService),\n __param(5, _platform_contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_11__.IContextKeyService),\n __param(6, _platform_configuration_common_configuration_js__WEBPACK_IMPORTED_MODULE_10__.IConfigurationService),\n __param(7, _common_services_languageFeatures_js__WEBPACK_IMPORTED_MODULE_16__.ILanguageFeaturesService),\n __param(8, _platform_environment_common_environment_js__WEBPACK_IMPORTED_MODULE_21__.IEnvironmentService)\n], SuggestModel);\n\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/contrib/suggest/browser/suggestModel.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/contrib/suggest/browser/suggestOvertypingCapturer.js":
/*!*******************************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/contrib/suggest/browser/suggestOvertypingCapturer.js ***!
\*******************************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ OvertypingCapturer: () => (/* binding */ OvertypingCapturer)\n/* harmony export */ });\n/* harmony import */ var _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../../base/common/lifecycle.js */ \"./node_modules/monaco-editor/esm/vs/base/common/lifecycle.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\nclass OvertypingCapturer {\n constructor(editor, suggestModel) {\n this._disposables = new _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_0__.DisposableStore();\n this._lastOvertyped = [];\n this._locked = false;\n this._disposables.add(editor.onWillType(() => {\n if (this._locked || !editor.hasModel()) {\n return;\n }\n const selections = editor.getSelections();\n const selectionsLength = selections.length;\n // Check if it will overtype any selections\n let willOvertype = false;\n for (let i = 0; i < selectionsLength; i++) {\n if (!selections[i].isEmpty()) {\n willOvertype = true;\n break;\n }\n }\n if (!willOvertype) {\n if (this._lastOvertyped.length !== 0) {\n this._lastOvertyped.length = 0;\n }\n return;\n }\n this._lastOvertyped = [];\n const model = editor.getModel();\n for (let i = 0; i < selectionsLength; i++) {\n const selection = selections[i];\n // Check for overtyping capturer restrictions\n if (model.getValueLengthInRange(selection) > OvertypingCapturer._maxSelectionLength) {\n return;\n }\n this._lastOvertyped[i] = { value: model.getValueInRange(selection), multiline: selection.startLineNumber !== selection.endLineNumber };\n }\n }));\n this._disposables.add(suggestModel.onDidTrigger(e => {\n this._locked = true;\n }));\n this._disposables.add(suggestModel.onDidCancel(e => {\n this._locked = false;\n }));\n }\n getLastOvertypedInfo(idx) {\n if (idx >= 0 && idx < this._lastOvertyped.length) {\n return this._lastOvertyped[idx];\n }\n return undefined;\n }\n dispose() {\n this._disposables.dispose();\n }\n}\nOvertypingCapturer._maxSelectionLength = 51200;\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/contrib/suggest/browser/suggestOvertypingCapturer.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/contrib/suggest/browser/suggestWidget.js":
/*!*******************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/contrib/suggest/browser/suggestWidget.js ***!
\*******************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ SuggestContentWidget: () => (/* binding */ SuggestContentWidget),\n/* harmony export */ SuggestWidget: () => (/* binding */ SuggestWidget),\n/* harmony export */ editorSuggestWidgetSelectedBackground: () => (/* binding */ editorSuggestWidgetSelectedBackground)\n/* harmony export */ });\n/* harmony import */ var _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../../base/browser/dom.js */ \"./node_modules/monaco-editor/esm/vs/base/browser/dom.js\");\n/* harmony import */ var _base_browser_ui_codicons_codiconStyles_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../base/browser/ui/codicons/codiconStyles.js */ \"./node_modules/monaco-editor/esm/vs/base/browser/ui/codicons/codiconStyles.js\");\n/* harmony import */ var _base_browser_ui_list_listWidget_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../../base/browser/ui/list/listWidget.js */ \"./node_modules/monaco-editor/esm/vs/base/browser/ui/list/listWidget.js\");\n/* harmony import */ var _base_common_async_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../../../base/common/async.js */ \"./node_modules/monaco-editor/esm/vs/base/common/async.js\");\n/* harmony import */ var _base_common_errors_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../../../base/common/errors.js */ \"./node_modules/monaco-editor/esm/vs/base/common/errors.js\");\n/* harmony import */ var _base_common_event_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../../../../base/common/event.js */ \"./node_modules/monaco-editor/esm/vs/base/common/event.js\");\n/* harmony import */ var _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../../../../base/common/lifecycle.js */ \"./node_modules/monaco-editor/esm/vs/base/common/lifecycle.js\");\n/* harmony import */ var _base_common_numbers_js__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ../../../../base/common/numbers.js */ \"./node_modules/monaco-editor/esm/vs/base/common/numbers.js\");\n/* harmony import */ var _base_common_strings_js__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ../../../../base/common/strings.js */ \"./node_modules/monaco-editor/esm/vs/base/common/strings.js\");\n/* harmony import */ var _media_suggest_css__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ./media/suggest.css */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/suggest/browser/media/suggest.css\");\n/* harmony import */ var _browser_widget_embeddedCodeEditorWidget_js__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! ../../../browser/widget/embeddedCodeEditorWidget.js */ \"./node_modules/monaco-editor/esm/vs/editor/browser/widget/embeddedCodeEditorWidget.js\");\n/* harmony import */ var _suggestWidgetStatus_js__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(/*! ./suggestWidgetStatus.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/suggest/browser/suggestWidgetStatus.js\");\n/* harmony import */ var _symbolIcons_browser_symbolIcons_js__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(/*! ../../symbolIcons/browser/symbolIcons.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/symbolIcons/browser/symbolIcons.js\");\n/* harmony import */ var _nls_js__WEBPACK_IMPORTED_MODULE_13__ = __webpack_require__(/*! ../../../../nls.js */ \"./node_modules/monaco-editor/esm/vs/nls.js\");\n/* harmony import */ var _platform_contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_14__ = __webpack_require__(/*! ../../../../platform/contextkey/common/contextkey.js */ \"./node_modules/monaco-editor/esm/vs/platform/contextkey/common/contextkey.js\");\n/* harmony import */ var _platform_instantiation_common_instantiation_js__WEBPACK_IMPORTED_MODULE_15__ = __webpack_require__(/*! ../../../../platform/instantiation/common/instantiation.js */ \"./node_modules/monaco-editor/esm/vs/platform/instantiation/common/instantiation.js\");\n/* harmony import */ var _platform_storage_common_storage_js__WEBPACK_IMPORTED_MODULE_16__ = __webpack_require__(/*! ../../../../platform/storage/common/storage.js */ \"./node_modules/monaco-editor/esm/vs/platform/storage/common/storage.js\");\n/* harmony import */ var _platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_17__ = __webpack_require__(/*! ../../../../platform/theme/common/colorRegistry.js */ \"./node_modules/monaco-editor/esm/vs/platform/theme/common/colorRegistry.js\");\n/* harmony import */ var _platform_theme_common_theme_js__WEBPACK_IMPORTED_MODULE_18__ = __webpack_require__(/*! ../../../../platform/theme/common/theme.js */ \"./node_modules/monaco-editor/esm/vs/platform/theme/common/theme.js\");\n/* harmony import */ var _platform_theme_common_themeService_js__WEBPACK_IMPORTED_MODULE_19__ = __webpack_require__(/*! ../../../../platform/theme/common/themeService.js */ \"./node_modules/monaco-editor/esm/vs/platform/theme/common/themeService.js\");\n/* harmony import */ var _base_browser_ui_resizable_resizable_js__WEBPACK_IMPORTED_MODULE_20__ = __webpack_require__(/*! ../../../../base/browser/ui/resizable/resizable.js */ \"./node_modules/monaco-editor/esm/vs/base/browser/ui/resizable/resizable.js\");\n/* harmony import */ var _suggest_js__WEBPACK_IMPORTED_MODULE_21__ = __webpack_require__(/*! ./suggest.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/suggest/browser/suggest.js\");\n/* harmony import */ var _suggestWidgetDetails_js__WEBPACK_IMPORTED_MODULE_22__ = __webpack_require__(/*! ./suggestWidgetDetails.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/suggest/browser/suggestWidgetDetails.js\");\n/* harmony import */ var _suggestWidgetRenderer_js__WEBPACK_IMPORTED_MODULE_23__ = __webpack_require__(/*! ./suggestWidgetRenderer.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/suggest/browser/suggestWidgetRenderer.js\");\n/* harmony import */ var _platform_theme_browser_defaultStyles_js__WEBPACK_IMPORTED_MODULE_24__ = __webpack_require__(/*! ../../../../platform/theme/browser/defaultStyles.js */ \"./node_modules/monaco-editor/esm/vs/platform/theme/browser/defaultStyles.js\");\n/* harmony import */ var _base_browser_ui_aria_aria_js__WEBPACK_IMPORTED_MODULE_25__ = __webpack_require__(/*! ../../../../base/browser/ui/aria/aria.js */ \"./node_modules/monaco-editor/esm/vs/base/browser/ui/aria/aria.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\nvar __decorate = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\n return c > 3 && r && Object.defineProperty(target, key, r), r;\n};\nvar __param = (undefined && undefined.__param) || function (paramIndex, decorator) {\n return function (target, key) { decorator(target, key, paramIndex); }\n};\nvar SuggestWidget_1;\n\n // The codicon symbol styles are defined here and must be loaded\n\n\n\n\n\n\n\n\n\n\n // The codicon symbol colors are defined here and must be loaded to get colors\n\n\n\n\n\n\n\n\n\n\n\n\n\n/**\n * Suggest widget colors\n */\n(0,_platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_17__.registerColor)('editorSuggestWidget.background', { dark: _platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_17__.editorWidgetBackground, light: _platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_17__.editorWidgetBackground, hcDark: _platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_17__.editorWidgetBackground, hcLight: _platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_17__.editorWidgetBackground }, _nls_js__WEBPACK_IMPORTED_MODULE_13__.localize('editorSuggestWidgetBackground', 'Background color of the suggest widget.'));\n(0,_platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_17__.registerColor)('editorSuggestWidget.border', { dark: _platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_17__.editorWidgetBorder, light: _platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_17__.editorWidgetBorder, hcDark: _platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_17__.editorWidgetBorder, hcLight: _platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_17__.editorWidgetBorder }, _nls_js__WEBPACK_IMPORTED_MODULE_13__.localize('editorSuggestWidgetBorder', 'Border color of the suggest widget.'));\nconst editorSuggestWidgetForeground = (0,_platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_17__.registerColor)('editorSuggestWidget.foreground', { dark: _platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_17__.editorForeground, light: _platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_17__.editorForeground, hcDark: _platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_17__.editorForeground, hcLight: _platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_17__.editorForeground }, _nls_js__WEBPACK_IMPORTED_MODULE_13__.localize('editorSuggestWidgetForeground', 'Foreground color of the suggest widget.'));\n(0,_platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_17__.registerColor)('editorSuggestWidget.selectedForeground', { dark: _platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_17__.quickInputListFocusForeground, light: _platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_17__.quickInputListFocusForeground, hcDark: _platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_17__.quickInputListFocusForeground, hcLight: _platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_17__.quickInputListFocusForeground }, _nls_js__WEBPACK_IMPORTED_MODULE_13__.localize('editorSuggestWidgetSelectedForeground', 'Foreground color of the selected entry in the suggest widget.'));\n(0,_platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_17__.registerColor)('editorSuggestWidget.selectedIconForeground', { dark: _platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_17__.quickInputListFocusIconForeground, light: _platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_17__.quickInputListFocusIconForeground, hcDark: _platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_17__.quickInputListFocusIconForeground, hcLight: _platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_17__.quickInputListFocusIconForeground }, _nls_js__WEBPACK_IMPORTED_MODULE_13__.localize('editorSuggestWidgetSelectedIconForeground', 'Icon foreground color of the selected entry in the suggest widget.'));\nconst editorSuggestWidgetSelectedBackground = (0,_platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_17__.registerColor)('editorSuggestWidget.selectedBackground', { dark: _platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_17__.quickInputListFocusBackground, light: _platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_17__.quickInputListFocusBackground, hcDark: _platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_17__.quickInputListFocusBackground, hcLight: _platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_17__.quickInputListFocusBackground }, _nls_js__WEBPACK_IMPORTED_MODULE_13__.localize('editorSuggestWidgetSelectedBackground', 'Background color of the selected entry in the suggest widget.'));\n(0,_platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_17__.registerColor)('editorSuggestWidget.highlightForeground', { dark: _platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_17__.listHighlightForeground, light: _platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_17__.listHighlightForeground, hcDark: _platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_17__.listHighlightForeground, hcLight: _platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_17__.listHighlightForeground }, _nls_js__WEBPACK_IMPORTED_MODULE_13__.localize('editorSuggestWidgetHighlightForeground', 'Color of the match highlights in the suggest widget.'));\n(0,_platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_17__.registerColor)('editorSuggestWidget.focusHighlightForeground', { dark: _platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_17__.listFocusHighlightForeground, light: _platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_17__.listFocusHighlightForeground, hcDark: _platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_17__.listFocusHighlightForeground, hcLight: _platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_17__.listFocusHighlightForeground }, _nls_js__WEBPACK_IMPORTED_MODULE_13__.localize('editorSuggestWidgetFocusHighlightForeground', 'Color of the match highlights in the suggest widget when an item is focused.'));\n(0,_platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_17__.registerColor)('editorSuggestWidgetStatus.foreground', { dark: (0,_platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_17__.transparent)(editorSuggestWidgetForeground, .5), light: (0,_platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_17__.transparent)(editorSuggestWidgetForeground, .5), hcDark: (0,_platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_17__.transparent)(editorSuggestWidgetForeground, .5), hcLight: (0,_platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_17__.transparent)(editorSuggestWidgetForeground, .5) }, _nls_js__WEBPACK_IMPORTED_MODULE_13__.localize('editorSuggestWidgetStatusForeground', 'Foreground color of the suggest widget status.'));\nclass PersistedWidgetSize {\n constructor(_service, editor) {\n this._service = _service;\n this._key = `suggestWidget.size/${editor.getEditorType()}/${editor instanceof _browser_widget_embeddedCodeEditorWidget_js__WEBPACK_IMPORTED_MODULE_10__.EmbeddedCodeEditorWidget}`;\n }\n restore() {\n var _a;\n const raw = (_a = this._service.get(this._key, 0 /* StorageScope.PROFILE */)) !== null && _a !== void 0 ? _a : '';\n try {\n const obj = JSON.parse(raw);\n if (_base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.Dimension.is(obj)) {\n return _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.Dimension.lift(obj);\n }\n }\n catch (_b) {\n // ignore\n }\n return undefined;\n }\n store(size) {\n this._service.store(this._key, JSON.stringify(size), 0 /* StorageScope.PROFILE */, 1 /* StorageTarget.MACHINE */);\n }\n reset() {\n this._service.remove(this._key, 0 /* StorageScope.PROFILE */);\n }\n}\nlet SuggestWidget = SuggestWidget_1 = class SuggestWidget {\n constructor(editor, _storageService, _contextKeyService, _themeService, instantiationService) {\n this.editor = editor;\n this._storageService = _storageService;\n this._state = 0 /* State.Hidden */;\n this._isAuto = false;\n this._pendingLayout = new _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_6__.MutableDisposable();\n this._pendingShowDetails = new _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_6__.MutableDisposable();\n this._ignoreFocusEvents = false;\n this._forceRenderingAbove = false;\n this._explainMode = false;\n this._showTimeout = new _base_common_async_js__WEBPACK_IMPORTED_MODULE_3__.TimeoutTimer();\n this._disposables = new _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_6__.DisposableStore();\n this._onDidSelect = new _base_common_event_js__WEBPACK_IMPORTED_MODULE_5__.PauseableEmitter();\n this._onDidFocus = new _base_common_event_js__WEBPACK_IMPORTED_MODULE_5__.PauseableEmitter();\n this._onDidHide = new _base_common_event_js__WEBPACK_IMPORTED_MODULE_5__.Emitter();\n this._onDidShow = new _base_common_event_js__WEBPACK_IMPORTED_MODULE_5__.Emitter();\n this.onDidSelect = this._onDidSelect.event;\n this.onDidFocus = this._onDidFocus.event;\n this.onDidHide = this._onDidHide.event;\n this.onDidShow = this._onDidShow.event;\n this._onDetailsKeydown = new _base_common_event_js__WEBPACK_IMPORTED_MODULE_5__.Emitter();\n this.onDetailsKeyDown = this._onDetailsKeydown.event;\n this.element = new _base_browser_ui_resizable_resizable_js__WEBPACK_IMPORTED_MODULE_20__.ResizableHTMLElement();\n this.element.domNode.classList.add('editor-widget', 'suggest-widget');\n this._contentWidget = new SuggestContentWidget(this, editor);\n this._persistedSize = new PersistedWidgetSize(_storageService, editor);\n class ResizeState {\n constructor(persistedSize, currentSize, persistHeight = false, persistWidth = false) {\n this.persistedSize = persistedSize;\n this.currentSize = currentSize;\n this.persistHeight = persistHeight;\n this.persistWidth = persistWidth;\n }\n }\n let state;\n this._disposables.add(this.element.onDidWillResize(() => {\n this._contentWidget.lockPreference();\n state = new ResizeState(this._persistedSize.restore(), this.element.size);\n }));\n this._disposables.add(this.element.onDidResize(e => {\n var _a, _b, _c, _d;\n this._resize(e.dimension.width, e.dimension.height);\n if (state) {\n state.persistHeight = state.persistHeight || !!e.north || !!e.south;\n state.persistWidth = state.persistWidth || !!e.east || !!e.west;\n }\n if (!e.done) {\n return;\n }\n if (state) {\n // only store width or height value that have changed and also\n // only store changes that are above a certain threshold\n const { itemHeight, defaultSize } = this.getLayoutInfo();\n const threshold = Math.round(itemHeight / 2);\n let { width, height } = this.element.size;\n if (!state.persistHeight || Math.abs(state.currentSize.height - height) <= threshold) {\n height = (_b = (_a = state.persistedSize) === null || _a === void 0 ? void 0 : _a.height) !== null && _b !== void 0 ? _b : defaultSize.height;\n }\n if (!state.persistWidth || Math.abs(state.currentSize.width - width) <= threshold) {\n width = (_d = (_c = state.persistedSize) === null || _c === void 0 ? void 0 : _c.width) !== null && _d !== void 0 ? _d : defaultSize.width;\n }\n this._persistedSize.store(new _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.Dimension(width, height));\n }\n // reset working state\n this._contentWidget.unlockPreference();\n state = undefined;\n }));\n this._messageElement = _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.append(this.element.domNode, _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.$('.message'));\n this._listElement = _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.append(this.element.domNode, _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.$('.tree'));\n const details = this._disposables.add(instantiationService.createInstance(_suggestWidgetDetails_js__WEBPACK_IMPORTED_MODULE_22__.SuggestDetailsWidget, this.editor));\n details.onDidClose(this.toggleDetails, this, this._disposables);\n this._details = new _suggestWidgetDetails_js__WEBPACK_IMPORTED_MODULE_22__.SuggestDetailsOverlay(details, this.editor);\n const applyIconStyle = () => this.element.domNode.classList.toggle('no-icons', !this.editor.getOption(118 /* EditorOption.suggest */).showIcons);\n applyIconStyle();\n const renderer = instantiationService.createInstance(_suggestWidgetRenderer_js__WEBPACK_IMPORTED_MODULE_23__.ItemRenderer, this.editor);\n this._disposables.add(renderer);\n this._disposables.add(renderer.onDidToggleDetails(() => this.toggleDetails()));\n this._list = new _base_browser_ui_list_listWidget_js__WEBPACK_IMPORTED_MODULE_2__.List('SuggestWidget', this._listElement, {\n getHeight: (_element) => this.getLayoutInfo().itemHeight,\n getTemplateId: (_element) => 'suggestion'\n }, [renderer], {\n alwaysConsumeMouseWheel: true,\n useShadows: false,\n mouseSupport: false,\n multipleSelectionSupport: false,\n accessibilityProvider: {\n getRole: () => 'option',\n getWidgetAriaLabel: () => _nls_js__WEBPACK_IMPORTED_MODULE_13__.localize('suggest', \"Suggest\"),\n getWidgetRole: () => 'listbox',\n getAriaLabel: (item) => {\n let label = item.textLabel;\n if (typeof item.completion.label !== 'string') {\n const { detail, description } = item.completion.label;\n if (detail && description) {\n label = _nls_js__WEBPACK_IMPORTED_MODULE_13__.localize('label.full', '{0} {1}, {2}', label, detail, description);\n }\n else if (detail) {\n label = _nls_js__WEBPACK_IMPORTED_MODULE_13__.localize('label.detail', '{0} {1}', label, detail);\n }\n else if (description) {\n label = _nls_js__WEBPACK_IMPORTED_MODULE_13__.localize('label.desc', '{0}, {1}', label, description);\n }\n }\n if (!item.isResolved || !this._isDetailsVisible()) {\n return label;\n }\n const { documentation, detail } = item.completion;\n const docs = _base_common_strings_js__WEBPACK_IMPORTED_MODULE_8__.format('{0}{1}', detail || '', documentation ? (typeof documentation === 'string' ? documentation : documentation.value) : '');\n return _nls_js__WEBPACK_IMPORTED_MODULE_13__.localize('ariaCurrenttSuggestionReadDetails', \"{0}, docs: {1}\", label, docs);\n },\n }\n });\n this._list.style((0,_platform_theme_browser_defaultStyles_js__WEBPACK_IMPORTED_MODULE_24__.getListStyles)({\n listInactiveFocusBackground: editorSuggestWidgetSelectedBackground,\n listInactiveFocusOutline: _platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_17__.activeContrastBorder\n }));\n this._status = instantiationService.createInstance(_suggestWidgetStatus_js__WEBPACK_IMPORTED_MODULE_11__.SuggestWidgetStatus, this.element.domNode, _suggest_js__WEBPACK_IMPORTED_MODULE_21__.suggestWidgetStatusbarMenu);\n const applyStatusBarStyle = () => this.element.domNode.classList.toggle('with-status-bar', this.editor.getOption(118 /* EditorOption.suggest */).showStatusBar);\n applyStatusBarStyle();\n this._disposables.add(_themeService.onDidColorThemeChange(t => this._onThemeChange(t)));\n this._onThemeChange(_themeService.getColorTheme());\n this._disposables.add(this._list.onMouseDown(e => this._onListMouseDownOrTap(e)));\n this._disposables.add(this._list.onTap(e => this._onListMouseDownOrTap(e)));\n this._disposables.add(this._list.onDidChangeSelection(e => this._onListSelection(e)));\n this._disposables.add(this._list.onDidChangeFocus(e => this._onListFocus(e)));\n this._disposables.add(this.editor.onDidChangeCursorSelection(() => this._onCursorSelectionChanged()));\n this._disposables.add(this.editor.onDidChangeConfiguration(e => {\n if (e.hasChanged(118 /* EditorOption.suggest */)) {\n applyStatusBarStyle();\n applyIconStyle();\n }\n if (this._completionModel && (e.hasChanged(50 /* EditorOption.fontInfo */) || e.hasChanged(119 /* EditorOption.suggestFontSize */) || e.hasChanged(120 /* EditorOption.suggestLineHeight */))) {\n this._list.splice(0, this._list.length, this._completionModel.items);\n }\n }));\n this._ctxSuggestWidgetVisible = _suggest_js__WEBPACK_IMPORTED_MODULE_21__.Context.Visible.bindTo(_contextKeyService);\n this._ctxSuggestWidgetDetailsVisible = _suggest_js__WEBPACK_IMPORTED_MODULE_21__.Context.DetailsVisible.bindTo(_contextKeyService);\n this._ctxSuggestWidgetMultipleSuggestions = _suggest_js__WEBPACK_IMPORTED_MODULE_21__.Context.MultipleSuggestions.bindTo(_contextKeyService);\n this._ctxSuggestWidgetHasFocusedSuggestion = _suggest_js__WEBPACK_IMPORTED_MODULE_21__.Context.HasFocusedSuggestion.bindTo(_contextKeyService);\n this._disposables.add(_base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.addStandardDisposableListener(this._details.widget.domNode, 'keydown', e => {\n this._onDetailsKeydown.fire(e);\n }));\n this._disposables.add(this.editor.onMouseDown((e) => this._onEditorMouseDown(e)));\n }\n dispose() {\n var _a;\n this._details.widget.dispose();\n this._details.dispose();\n this._list.dispose();\n this._status.dispose();\n this._disposables.dispose();\n (_a = this._loadingTimeout) === null || _a === void 0 ? void 0 : _a.dispose();\n this._pendingLayout.dispose();\n this._pendingShowDetails.dispose();\n this._showTimeout.dispose();\n this._contentWidget.dispose();\n this.element.dispose();\n }\n _onEditorMouseDown(mouseEvent) {\n if (this._details.widget.domNode.contains(mouseEvent.target.element)) {\n // Clicking inside details\n this._details.widget.domNode.focus();\n }\n else {\n // Clicking outside details and inside suggest\n if (this.element.domNode.contains(mouseEvent.target.element)) {\n this.editor.focus();\n }\n }\n }\n _onCursorSelectionChanged() {\n if (this._state !== 0 /* State.Hidden */) {\n this._contentWidget.layout();\n }\n }\n _onListMouseDownOrTap(e) {\n if (typeof e.element === 'undefined' || typeof e.index === 'undefined') {\n return;\n }\n // prevent stealing browser focus from the editor\n e.browserEvent.preventDefault();\n e.browserEvent.stopPropagation();\n this._select(e.element, e.index);\n }\n _onListSelection(e) {\n if (e.elements.length) {\n this._select(e.elements[0], e.indexes[0]);\n }\n }\n _select(item, index) {\n const completionModel = this._completionModel;\n if (completionModel) {\n this._onDidSelect.fire({ item, index, model: completionModel });\n this.editor.focus();\n }\n }\n _onThemeChange(theme) {\n this._details.widget.borderWidth = (0,_platform_theme_common_theme_js__WEBPACK_IMPORTED_MODULE_18__.isHighContrast)(theme.type) ? 2 : 1;\n }\n _onListFocus(e) {\n var _a;\n if (this._ignoreFocusEvents) {\n return;\n }\n if (!e.elements.length) {\n if (this._currentSuggestionDetails) {\n this._currentSuggestionDetails.cancel();\n this._currentSuggestionDetails = undefined;\n this._focusedItem = undefined;\n }\n this.editor.setAriaOptions({ activeDescendant: undefined });\n this._ctxSuggestWidgetHasFocusedSuggestion.set(false);\n return;\n }\n if (!this._completionModel) {\n return;\n }\n this._ctxSuggestWidgetHasFocusedSuggestion.set(true);\n const item = e.elements[0];\n const index = e.indexes[0];\n if (item !== this._focusedItem) {\n (_a = this._currentSuggestionDetails) === null || _a === void 0 ? void 0 : _a.cancel();\n this._currentSuggestionDetails = undefined;\n this._focusedItem = item;\n this._list.reveal(index);\n this._currentSuggestionDetails = (0,_base_common_async_js__WEBPACK_IMPORTED_MODULE_3__.createCancelablePromise)(async (token) => {\n const loading = (0,_base_common_async_js__WEBPACK_IMPORTED_MODULE_3__.disposableTimeout)(() => {\n if (this._isDetailsVisible()) {\n this.showDetails(true);\n }\n }, 250);\n const sub = token.onCancellationRequested(() => loading.dispose());\n try {\n return await item.resolve(token);\n }\n finally {\n loading.dispose();\n sub.dispose();\n }\n });\n this._currentSuggestionDetails.then(() => {\n if (index >= this._list.length || item !== this._list.element(index)) {\n return;\n }\n // item can have extra information, so re-render\n this._ignoreFocusEvents = true;\n this._list.splice(index, 1, [item]);\n this._list.setFocus([index]);\n this._ignoreFocusEvents = false;\n if (this._isDetailsVisible()) {\n this.showDetails(false);\n }\n else {\n this.element.domNode.classList.remove('docs-side');\n }\n this.editor.setAriaOptions({ activeDescendant: (0,_suggestWidgetRenderer_js__WEBPACK_IMPORTED_MODULE_23__.getAriaId)(index) });\n }).catch(_base_common_errors_js__WEBPACK_IMPORTED_MODULE_4__.onUnexpectedError);\n }\n // emit an event\n this._onDidFocus.fire({ item, index, model: this._completionModel });\n }\n _setState(state) {\n if (this._state === state) {\n return;\n }\n this._state = state;\n this.element.domNode.classList.toggle('frozen', state === 4 /* State.Frozen */);\n this.element.domNode.classList.remove('message');\n switch (state) {\n case 0 /* State.Hidden */:\n _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.hide(this._messageElement, this._listElement, this._status.element);\n this._details.hide(true);\n this._status.hide();\n this._contentWidget.hide();\n this._ctxSuggestWidgetVisible.reset();\n this._ctxSuggestWidgetMultipleSuggestions.reset();\n this._ctxSuggestWidgetHasFocusedSuggestion.reset();\n this._showTimeout.cancel();\n this.element.domNode.classList.remove('visible');\n this._list.splice(0, this._list.length);\n this._focusedItem = undefined;\n this._cappedHeight = undefined;\n this._explainMode = false;\n break;\n case 1 /* State.Loading */:\n this.element.domNode.classList.add('message');\n this._messageElement.textContent = SuggestWidget_1.LOADING_MESSAGE;\n _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.hide(this._listElement, this._status.element);\n _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.show(this._messageElement);\n this._details.hide();\n this._show();\n this._focusedItem = undefined;\n (0,_base_browser_ui_aria_aria_js__WEBPACK_IMPORTED_MODULE_25__.status)(SuggestWidget_1.LOADING_MESSAGE);\n break;\n case 2 /* State.Empty */:\n this.element.domNode.classList.add('message');\n this._messageElement.textContent = SuggestWidget_1.NO_SUGGESTIONS_MESSAGE;\n _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.hide(this._listElement, this._status.element);\n _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.show(this._messageElement);\n this._details.hide();\n this._show();\n this._focusedItem = undefined;\n (0,_base_browser_ui_aria_aria_js__WEBPACK_IMPORTED_MODULE_25__.status)(SuggestWidget_1.NO_SUGGESTIONS_MESSAGE);\n break;\n case 3 /* State.Open */:\n _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.hide(this._messageElement);\n _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.show(this._listElement, this._status.element);\n this._show();\n break;\n case 4 /* State.Frozen */:\n _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.hide(this._messageElement);\n _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.show(this._listElement, this._status.element);\n this._show();\n break;\n case 5 /* State.Details */:\n _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.hide(this._messageElement);\n _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.show(this._listElement, this._status.element);\n this._details.show();\n this._show();\n break;\n }\n }\n _show() {\n this._status.show();\n this._contentWidget.show();\n this._layout(this._persistedSize.restore());\n this._ctxSuggestWidgetVisible.set(true);\n this._showTimeout.cancelAndSet(() => {\n this.element.domNode.classList.add('visible');\n this._onDidShow.fire(this);\n }, 100);\n }\n showTriggered(auto, delay) {\n if (this._state !== 0 /* State.Hidden */) {\n return;\n }\n this._contentWidget.setPosition(this.editor.getPosition());\n this._isAuto = !!auto;\n if (!this._isAuto) {\n this._loadingTimeout = (0,_base_common_async_js__WEBPACK_IMPORTED_MODULE_3__.disposableTimeout)(() => this._setState(1 /* State.Loading */), delay);\n }\n }\n showSuggestions(completionModel, selectionIndex, isFrozen, isAuto, noFocus) {\n var _a, _b;\n this._contentWidget.setPosition(this.editor.getPosition());\n (_a = this._loadingTimeout) === null || _a === void 0 ? void 0 : _a.dispose();\n (_b = this._currentSuggestionDetails) === null || _b === void 0 ? void 0 : _b.cancel();\n this._currentSuggestionDetails = undefined;\n if (this._completionModel !== completionModel) {\n this._completionModel = completionModel;\n }\n if (isFrozen && this._state !== 2 /* State.Empty */ && this._state !== 0 /* State.Hidden */) {\n this._setState(4 /* State.Frozen */);\n return;\n }\n const visibleCount = this._completionModel.items.length;\n const isEmpty = visibleCount === 0;\n this._ctxSuggestWidgetMultipleSuggestions.set(visibleCount > 1);\n if (isEmpty) {\n this._setState(isAuto ? 0 /* State.Hidden */ : 2 /* State.Empty */);\n this._completionModel = undefined;\n return;\n }\n this._focusedItem = undefined;\n // calling list.splice triggers focus event which this widget forwards. That can lead to\n // suggestions being cancelled and the widget being cleared (and hidden). All this happens\n // before revealing and focusing is done which means revealing and focusing will fail when\n // they get run.\n this._onDidFocus.pause();\n this._onDidSelect.pause();\n try {\n this._list.splice(0, this._list.length, this._completionModel.items);\n this._setState(isFrozen ? 4 /* State.Frozen */ : 3 /* State.Open */);\n this._list.reveal(selectionIndex, 0);\n this._list.setFocus(noFocus ? [] : [selectionIndex]);\n }\n finally {\n this._onDidFocus.resume();\n this._onDidSelect.resume();\n }\n this._pendingLayout.value = _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.runAtThisOrScheduleAtNextAnimationFrame(_base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.getWindow(this.element.domNode), () => {\n this._pendingLayout.clear();\n this._layout(this.element.size);\n // Reset focus border\n this._details.widget.domNode.classList.remove('focused');\n });\n }\n focusSelected() {\n if (this._list.length > 0) {\n this._list.setFocus([0]);\n }\n }\n selectNextPage() {\n switch (this._state) {\n case 0 /* State.Hidden */:\n return false;\n case 5 /* State.Details */:\n this._details.widget.pageDown();\n return true;\n case 1 /* State.Loading */:\n return !this._isAuto;\n default:\n this._list.focusNextPage();\n return true;\n }\n }\n selectNext() {\n switch (this._state) {\n case 0 /* State.Hidden */:\n return false;\n case 1 /* State.Loading */:\n return !this._isAuto;\n default:\n this._list.focusNext(1, true);\n return true;\n }\n }\n selectLast() {\n switch (this._state) {\n case 0 /* State.Hidden */:\n return false;\n case 5 /* State.Details */:\n this._details.widget.scrollBottom();\n return true;\n case 1 /* State.Loading */:\n return !this._isAuto;\n default:\n this._list.focusLast();\n return true;\n }\n }\n selectPreviousPage() {\n switch (this._state) {\n case 0 /* State.Hidden */:\n return false;\n case 5 /* State.Details */:\n this._details.widget.pageUp();\n return true;\n case 1 /* State.Loading */:\n return !this._isAuto;\n default:\n this._list.focusPreviousPage();\n return true;\n }\n }\n selectPrevious() {\n switch (this._state) {\n case 0 /* State.Hidden */:\n return false;\n case 1 /* State.Loading */:\n return !this._isAuto;\n default:\n this._list.focusPrevious(1, true);\n return false;\n }\n }\n selectFirst() {\n switch (this._state) {\n case 0 /* State.Hidden */:\n return false;\n case 5 /* State.Details */:\n this._details.widget.scrollTop();\n return true;\n case 1 /* State.Loading */:\n return !this._isAuto;\n default:\n this._list.focusFirst();\n return true;\n }\n }\n getFocusedItem() {\n if (this._state !== 0 /* State.Hidden */\n && this._state !== 2 /* State.Empty */\n && this._state !== 1 /* State.Loading */\n && this._completionModel\n && this._list.getFocus().length > 0) {\n return {\n item: this._list.getFocusedElements()[0],\n index: this._list.getFocus()[0],\n model: this._completionModel\n };\n }\n return undefined;\n }\n toggleDetailsFocus() {\n if (this._state === 5 /* State.Details */) {\n this._setState(3 /* State.Open */);\n this._details.widget.domNode.classList.remove('focused');\n }\n else if (this._state === 3 /* State.Open */ && this._isDetailsVisible()) {\n this._setState(5 /* State.Details */);\n this._details.widget.domNode.classList.add('focused');\n }\n }\n toggleDetails() {\n if (this._isDetailsVisible()) {\n // hide details widget\n this._pendingShowDetails.clear();\n this._ctxSuggestWidgetDetailsVisible.set(false);\n this._setDetailsVisible(false);\n this._details.hide();\n this.element.domNode.classList.remove('shows-details');\n }\n else if (((0,_suggestWidgetDetails_js__WEBPACK_IMPORTED_MODULE_22__.canExpandCompletionItem)(this._list.getFocusedElements()[0]) || this._explainMode) && (this._state === 3 /* State.Open */ || this._state === 5 /* State.Details */ || this._state === 4 /* State.Frozen */)) {\n // show details widget (iff possible)\n this._ctxSuggestWidgetDetailsVisible.set(true);\n this._setDetailsVisible(true);\n this.showDetails(false);\n }\n }\n showDetails(loading) {\n this._pendingShowDetails.value = _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.runAtThisOrScheduleAtNextAnimationFrame(_base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.getWindow(this.element.domNode), () => {\n this._pendingShowDetails.clear();\n this._details.show();\n if (loading) {\n this._details.widget.renderLoading();\n }\n else {\n this._details.widget.renderItem(this._list.getFocusedElements()[0], this._explainMode);\n }\n if (!this._details.widget.isEmpty) {\n this._positionDetails();\n this.element.domNode.classList.add('shows-details');\n }\n else {\n this._details.hide();\n }\n this.editor.focus();\n });\n }\n toggleExplainMode() {\n if (this._list.getFocusedElements()[0]) {\n this._explainMode = !this._explainMode;\n if (!this._isDetailsVisible()) {\n this.toggleDetails();\n }\n else {\n this.showDetails(false);\n }\n }\n }\n resetPersistedSize() {\n this._persistedSize.reset();\n }\n hideWidget() {\n var _a;\n this._pendingLayout.clear();\n this._pendingShowDetails.clear();\n (_a = this._loadingTimeout) === null || _a === void 0 ? void 0 : _a.dispose();\n this._setState(0 /* State.Hidden */);\n this._onDidHide.fire(this);\n this.element.clearSashHoverState();\n // ensure that a reasonable widget height is persisted so that\n // accidential \"resize-to-single-items\" cases aren't happening\n const dim = this._persistedSize.restore();\n const minPersistedHeight = Math.ceil(this.getLayoutInfo().itemHeight * 4.3);\n if (dim && dim.height < minPersistedHeight) {\n this._persistedSize.store(dim.with(undefined, minPersistedHeight));\n }\n }\n isFrozen() {\n return this._state === 4 /* State.Frozen */;\n }\n _afterRender(position) {\n if (position === null) {\n if (this._isDetailsVisible()) {\n this._details.hide(); //todo@jrieken soft-hide\n }\n return;\n }\n if (this._state === 2 /* State.Empty */ || this._state === 1 /* State.Loading */) {\n // no special positioning when widget isn't showing list\n return;\n }\n if (this._isDetailsVisible() && !this._details.widget.isEmpty) {\n this._details.show();\n }\n this._positionDetails();\n }\n _layout(size) {\n var _a, _b, _c;\n if (!this.editor.hasModel()) {\n return;\n }\n if (!this.editor.getDomNode()) {\n // happens when running tests\n return;\n }\n const bodyBox = _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.getClientArea(this.element.domNode.ownerDocument.body);\n const info = this.getLayoutInfo();\n if (!size) {\n size = info.defaultSize;\n }\n let height = size.height;\n let width = size.width;\n // status bar\n this._status.element.style.height = `${info.itemHeight}px`;\n if (this._state === 2 /* State.Empty */ || this._state === 1 /* State.Loading */) {\n // showing a message only\n height = info.itemHeight + info.borderHeight;\n width = info.defaultSize.width / 2;\n this.element.enableSashes(false, false, false, false);\n this.element.minSize = this.element.maxSize = new _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.Dimension(width, height);\n this._contentWidget.setPreference(2 /* ContentWidgetPositionPreference.BELOW */);\n }\n else {\n // showing items\n // width math\n const maxWidth = bodyBox.width - info.borderHeight - 2 * info.horizontalPadding;\n if (width > maxWidth) {\n width = maxWidth;\n }\n const preferredWidth = this._completionModel ? this._completionModel.stats.pLabelLen * info.typicalHalfwidthCharacterWidth : width;\n // height math\n const fullHeight = info.statusBarHeight + this._list.contentHeight + info.borderHeight;\n const minHeight = info.itemHeight + info.statusBarHeight;\n const editorBox = _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.getDomNodePagePosition(this.editor.getDomNode());\n const cursorBox = this.editor.getScrolledVisiblePosition(this.editor.getPosition());\n const cursorBottom = editorBox.top + cursorBox.top + cursorBox.height;\n const maxHeightBelow = Math.min(bodyBox.height - cursorBottom - info.verticalPadding, fullHeight);\n const availableSpaceAbove = editorBox.top + cursorBox.top - info.verticalPadding;\n const maxHeightAbove = Math.min(availableSpaceAbove, fullHeight);\n let maxHeight = Math.min(Math.max(maxHeightAbove, maxHeightBelow) + info.borderHeight, fullHeight);\n if (height === ((_a = this._cappedHeight) === null || _a === void 0 ? void 0 : _a.capped)) {\n // Restore the old (wanted) height when the current\n // height is capped to fit\n height = this._cappedHeight.wanted;\n }\n if (height < minHeight) {\n height = minHeight;\n }\n if (height > maxHeight) {\n height = maxHeight;\n }\n const forceRenderingAboveRequiredSpace = 150;\n if (height > maxHeightBelow || (this._forceRenderingAbove && availableSpaceAbove > forceRenderingAboveRequiredSpace)) {\n this._contentWidget.setPreference(1 /* ContentWidgetPositionPreference.ABOVE */);\n this.element.enableSashes(true, true, false, false);\n maxHeight = maxHeightAbove;\n }\n else {\n this._contentWidget.setPreference(2 /* ContentWidgetPositionPreference.BELOW */);\n this.element.enableSashes(false, true, true, false);\n maxHeight = maxHeightBelow;\n }\n this.element.preferredSize = new _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.Dimension(preferredWidth, info.defaultSize.height);\n this.element.maxSize = new _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.Dimension(maxWidth, maxHeight);\n this.element.minSize = new _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.Dimension(220, minHeight);\n // Know when the height was capped to fit and remember\n // the wanted height for later. This is required when going\n // left to widen suggestions.\n this._cappedHeight = height === fullHeight\n ? { wanted: (_c = (_b = this._cappedHeight) === null || _b === void 0 ? void 0 : _b.wanted) !== null && _c !== void 0 ? _c : size.height, capped: height }\n : undefined;\n }\n this._resize(width, height);\n }\n _resize(width, height) {\n const { width: maxWidth, height: maxHeight } = this.element.maxSize;\n width = Math.min(maxWidth, width);\n height = Math.min(maxHeight, height);\n const { statusBarHeight } = this.getLayoutInfo();\n this._list.layout(height - statusBarHeight, width);\n this._listElement.style.height = `${height - statusBarHeight}px`;\n this.element.layout(height, width);\n this._contentWidget.layout();\n this._positionDetails();\n }\n _positionDetails() {\n var _a;\n if (this._isDetailsVisible()) {\n this._details.placeAtAnchor(this.element.domNode, ((_a = this._contentWidget.getPosition()) === null || _a === void 0 ? void 0 : _a.preference[0]) === 2 /* ContentWidgetPositionPreference.BELOW */);\n }\n }\n getLayoutInfo() {\n const fontInfo = this.editor.getOption(50 /* EditorOption.fontInfo */);\n const itemHeight = (0,_base_common_numbers_js__WEBPACK_IMPORTED_MODULE_7__.clamp)(this.editor.getOption(120 /* EditorOption.suggestLineHeight */) || fontInfo.lineHeight, 8, 1000);\n const statusBarHeight = !this.editor.getOption(118 /* EditorOption.suggest */).showStatusBar || this._state === 2 /* State.Empty */ || this._state === 1 /* State.Loading */ ? 0 : itemHeight;\n const borderWidth = this._details.widget.borderWidth;\n const borderHeight = 2 * borderWidth;\n return {\n itemHeight,\n statusBarHeight,\n borderWidth,\n borderHeight,\n typicalHalfwidthCharacterWidth: fontInfo.typicalHalfwidthCharacterWidth,\n verticalPadding: 22,\n horizontalPadding: 14,\n defaultSize: new _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.Dimension(430, statusBarHeight + 12 * itemHeight + borderHeight)\n };\n }\n _isDetailsVisible() {\n return this._storageService.getBoolean('expandSuggestionDocs', 0 /* StorageScope.PROFILE */, false);\n }\n _setDetailsVisible(value) {\n this._storageService.store('expandSuggestionDocs', value, 0 /* StorageScope.PROFILE */, 0 /* StorageTarget.USER */);\n }\n forceRenderingAbove() {\n if (!this._forceRenderingAbove) {\n this._forceRenderingAbove = true;\n this._layout(this._persistedSize.restore());\n }\n }\n stopForceRenderingAbove() {\n this._forceRenderingAbove = false;\n }\n};\nSuggestWidget.LOADING_MESSAGE = _nls_js__WEBPACK_IMPORTED_MODULE_13__.localize('suggestWidget.loading', \"Loading...\");\nSuggestWidget.NO_SUGGESTIONS_MESSAGE = _nls_js__WEBPACK_IMPORTED_MODULE_13__.localize('suggestWidget.noSuggestions', \"No suggestions.\");\nSuggestWidget = SuggestWidget_1 = __decorate([\n __param(1, _platform_storage_common_storage_js__WEBPACK_IMPORTED_MODULE_16__.IStorageService),\n __param(2, _platform_contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_14__.IContextKeyService),\n __param(3, _platform_theme_common_themeService_js__WEBPACK_IMPORTED_MODULE_19__.IThemeService),\n __param(4, _platform_instantiation_common_instantiation_js__WEBPACK_IMPORTED_MODULE_15__.IInstantiationService)\n], SuggestWidget);\n\nclass SuggestContentWidget {\n constructor(_widget, _editor) {\n this._widget = _widget;\n this._editor = _editor;\n this.allowEditorOverflow = true;\n this.suppressMouseDown = false;\n this._preferenceLocked = false;\n this._added = false;\n this._hidden = false;\n }\n dispose() {\n if (this._added) {\n this._added = false;\n this._editor.removeContentWidget(this);\n }\n }\n getId() {\n return 'editor.widget.suggestWidget';\n }\n getDomNode() {\n return this._widget.element.domNode;\n }\n show() {\n this._hidden = false;\n if (!this._added) {\n this._added = true;\n this._editor.addContentWidget(this);\n }\n }\n hide() {\n if (!this._hidden) {\n this._hidden = true;\n this.layout();\n }\n }\n layout() {\n this._editor.layoutContentWidget(this);\n }\n getPosition() {\n if (this._hidden || !this._position || !this._preference) {\n return null;\n }\n return {\n position: this._position,\n preference: [this._preference]\n };\n }\n beforeRender() {\n const { height, width } = this._widget.element.size;\n const { borderWidth, horizontalPadding } = this._widget.getLayoutInfo();\n return new _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.Dimension(width + 2 * borderWidth + horizontalPadding, height + 2 * borderWidth);\n }\n afterRender(position) {\n this._widget._afterRender(position);\n }\n setPreference(preference) {\n if (!this._preferenceLocked) {\n this._preference = preference;\n }\n }\n lockPreference() {\n this._preferenceLocked = true;\n }\n unlockPreference() {\n this._preferenceLocked = false;\n }\n setPosition(position) {\n this._position = position;\n }\n}\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/contrib/suggest/browser/suggestWidget.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/contrib/suggest/browser/suggestWidgetDetails.js":
/*!**************************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/contrib/suggest/browser/suggestWidgetDetails.js ***!
\**************************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ SuggestDetailsOverlay: () => (/* binding */ SuggestDetailsOverlay),\n/* harmony export */ SuggestDetailsWidget: () => (/* binding */ SuggestDetailsWidget),\n/* harmony export */ canExpandCompletionItem: () => (/* binding */ canExpandCompletionItem)\n/* harmony export */ });\n/* harmony import */ var _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../../base/browser/dom.js */ \"./node_modules/monaco-editor/esm/vs/base/browser/dom.js\");\n/* harmony import */ var _base_browser_ui_scrollbar_scrollableElement_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../base/browser/ui/scrollbar/scrollableElement.js */ \"./node_modules/monaco-editor/esm/vs/base/browser/ui/scrollbar/scrollableElement.js\");\n/* harmony import */ var _base_common_codicons_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../../base/common/codicons.js */ \"./node_modules/monaco-editor/esm/vs/base/common/codicons.js\");\n/* harmony import */ var _base_common_themables_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../../../base/common/themables.js */ \"./node_modules/monaco-editor/esm/vs/base/common/themables.js\");\n/* harmony import */ var _base_common_event_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../../../base/common/event.js */ \"./node_modules/monaco-editor/esm/vs/base/common/event.js\");\n/* harmony import */ var _base_common_htmlContent_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../../../../base/common/htmlContent.js */ \"./node_modules/monaco-editor/esm/vs/base/common/htmlContent.js\");\n/* harmony import */ var _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../../../../base/common/lifecycle.js */ \"./node_modules/monaco-editor/esm/vs/base/common/lifecycle.js\");\n/* harmony import */ var _browser_widget_markdownRenderer_browser_markdownRenderer_js__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ../../../browser/widget/markdownRenderer/browser/markdownRenderer.js */ \"./node_modules/monaco-editor/esm/vs/editor/browser/widget/markdownRenderer/browser/markdownRenderer.js\");\n/* harmony import */ var _base_browser_ui_resizable_resizable_js__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ../../../../base/browser/ui/resizable/resizable.js */ \"./node_modules/monaco-editor/esm/vs/base/browser/ui/resizable/resizable.js\");\n/* harmony import */ var _nls_js__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ../../../../nls.js */ \"./node_modules/monaco-editor/esm/vs/nls.js\");\n/* harmony import */ var _platform_instantiation_common_instantiation_js__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! ../../../../platform/instantiation/common/instantiation.js */ \"./node_modules/monaco-editor/esm/vs/platform/instantiation/common/instantiation.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\nvar __decorate = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\n return c > 3 && r && Object.defineProperty(target, key, r), r;\n};\nvar __param = (undefined && undefined.__param) || function (paramIndex, decorator) {\n return function (target, key) { decorator(target, key, paramIndex); }\n};\n\n\n\n\n\n\n\n\n\n\n\nfunction canExpandCompletionItem(item) {\n return !!item && Boolean(item.completion.documentation || item.completion.detail && item.completion.detail !== item.completion.label);\n}\nlet SuggestDetailsWidget = class SuggestDetailsWidget {\n constructor(_editor, instaService) {\n this._editor = _editor;\n this._onDidClose = new _base_common_event_js__WEBPACK_IMPORTED_MODULE_4__.Emitter();\n this.onDidClose = this._onDidClose.event;\n this._onDidChangeContents = new _base_common_event_js__WEBPACK_IMPORTED_MODULE_4__.Emitter();\n this.onDidChangeContents = this._onDidChangeContents.event;\n this._disposables = new _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_6__.DisposableStore();\n this._renderDisposeable = new _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_6__.DisposableStore();\n this._borderWidth = 1;\n this._size = new _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.Dimension(330, 0);\n this.domNode = _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.$('.suggest-details');\n this.domNode.classList.add('no-docs');\n this._markdownRenderer = instaService.createInstance(_browser_widget_markdownRenderer_browser_markdownRenderer_js__WEBPACK_IMPORTED_MODULE_7__.MarkdownRenderer, { editor: _editor });\n this._body = _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.$('.body');\n this._scrollbar = new _base_browser_ui_scrollbar_scrollableElement_js__WEBPACK_IMPORTED_MODULE_1__.DomScrollableElement(this._body, {\n alwaysConsumeMouseWheel: true,\n });\n _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.append(this.domNode, this._scrollbar.getDomNode());\n this._disposables.add(this._scrollbar);\n this._header = _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.append(this._body, _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.$('.header'));\n this._close = _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.append(this._header, _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.$('span' + _base_common_themables_js__WEBPACK_IMPORTED_MODULE_3__.ThemeIcon.asCSSSelector(_base_common_codicons_js__WEBPACK_IMPORTED_MODULE_2__.Codicon.close)));\n this._close.title = _nls_js__WEBPACK_IMPORTED_MODULE_9__.localize('details.close', \"Close\");\n this._type = _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.append(this._header, _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.$('p.type'));\n this._docs = _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.append(this._body, _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.$('p.docs'));\n this._configureFont();\n this._disposables.add(this._editor.onDidChangeConfiguration(e => {\n if (e.hasChanged(50 /* EditorOption.fontInfo */)) {\n this._configureFont();\n }\n }));\n }\n dispose() {\n this._disposables.dispose();\n this._renderDisposeable.dispose();\n }\n _configureFont() {\n const options = this._editor.getOptions();\n const fontInfo = options.get(50 /* EditorOption.fontInfo */);\n const fontFamily = fontInfo.getMassagedFontFamily();\n const fontSize = options.get(119 /* EditorOption.suggestFontSize */) || fontInfo.fontSize;\n const lineHeight = options.get(120 /* EditorOption.suggestLineHeight */) || fontInfo.lineHeight;\n const fontWeight = fontInfo.fontWeight;\n const fontSizePx = `${fontSize}px`;\n const lineHeightPx = `${lineHeight}px`;\n this.domNode.style.fontSize = fontSizePx;\n this.domNode.style.lineHeight = `${lineHeight / fontSize}`;\n this.domNode.style.fontWeight = fontWeight;\n this.domNode.style.fontFeatureSettings = fontInfo.fontFeatureSettings;\n this._type.style.fontFamily = fontFamily;\n this._close.style.height = lineHeightPx;\n this._close.style.width = lineHeightPx;\n }\n getLayoutInfo() {\n const lineHeight = this._editor.getOption(120 /* EditorOption.suggestLineHeight */) || this._editor.getOption(50 /* EditorOption.fontInfo */).lineHeight;\n const borderWidth = this._borderWidth;\n const borderHeight = borderWidth * 2;\n return {\n lineHeight,\n borderWidth,\n borderHeight,\n verticalPadding: 22,\n horizontalPadding: 14\n };\n }\n renderLoading() {\n this._type.textContent = _nls_js__WEBPACK_IMPORTED_MODULE_9__.localize('loading', \"Loading...\");\n this._docs.textContent = '';\n this.domNode.classList.remove('no-docs', 'no-type');\n this.layout(this.size.width, this.getLayoutInfo().lineHeight * 2);\n this._onDidChangeContents.fire(this);\n }\n renderItem(item, explainMode) {\n var _a, _b;\n this._renderDisposeable.clear();\n let { detail, documentation } = item.completion;\n if (explainMode) {\n let md = '';\n md += `score: ${item.score[0]}\\n`;\n md += `prefix: ${(_a = item.word) !== null && _a !== void 0 ? _a : '(no prefix)'}\\n`;\n md += `word: ${item.completion.filterText ? item.completion.filterText + ' (filterText)' : item.textLabel}\\n`;\n md += `distance: ${item.distance} (localityBonus-setting)\\n`;\n md += `index: ${item.idx}, based on ${item.completion.sortText && `sortText: \"${item.completion.sortText}\"` || 'label'}\\n`;\n md += `commit_chars: ${(_b = item.completion.commitCharacters) === null || _b === void 0 ? void 0 : _b.join('')}\\n`;\n documentation = new _base_common_htmlContent_js__WEBPACK_IMPORTED_MODULE_5__.MarkdownString().appendCodeblock('empty', md);\n detail = `Provider: ${item.provider._debugDisplayName}`;\n }\n if (!explainMode && !canExpandCompletionItem(item)) {\n this.clearContents();\n return;\n }\n this.domNode.classList.remove('no-docs', 'no-type');\n // --- details\n if (detail) {\n const cappedDetail = detail.length > 100000 ? `${detail.substr(0, 100000)}…` : detail;\n this._type.textContent = cappedDetail;\n this._type.title = cappedDetail;\n _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.show(this._type);\n this._type.classList.toggle('auto-wrap', !/\\r?\\n^\\s+/gmi.test(cappedDetail));\n }\n else {\n _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.clearNode(this._type);\n this._type.title = '';\n _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.hide(this._type);\n this.domNode.classList.add('no-type');\n }\n // --- documentation\n _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.clearNode(this._docs);\n if (typeof documentation === 'string') {\n this._docs.classList.remove('markdown-docs');\n this._docs.textContent = documentation;\n }\n else if (documentation) {\n this._docs.classList.add('markdown-docs');\n _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.clearNode(this._docs);\n const renderedContents = this._markdownRenderer.render(documentation);\n this._docs.appendChild(renderedContents.element);\n this._renderDisposeable.add(renderedContents);\n this._renderDisposeable.add(this._markdownRenderer.onDidRenderAsync(() => {\n this.layout(this._size.width, this._type.clientHeight + this._docs.clientHeight);\n this._onDidChangeContents.fire(this);\n }));\n }\n this.domNode.style.userSelect = 'text';\n this.domNode.tabIndex = -1;\n this._close.onmousedown = e => {\n e.preventDefault();\n e.stopPropagation();\n };\n this._close.onclick = e => {\n e.preventDefault();\n e.stopPropagation();\n this._onDidClose.fire();\n };\n this._body.scrollTop = 0;\n this.layout(this._size.width, this._type.clientHeight + this._docs.clientHeight);\n this._onDidChangeContents.fire(this);\n }\n clearContents() {\n this.domNode.classList.add('no-docs');\n this._type.textContent = '';\n this._docs.textContent = '';\n }\n get isEmpty() {\n return this.domNode.classList.contains('no-docs');\n }\n get size() {\n return this._size;\n }\n layout(width, height) {\n const newSize = new _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.Dimension(width, height);\n if (!_base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.Dimension.equals(newSize, this._size)) {\n this._size = newSize;\n _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.size(this.domNode, width, height);\n }\n this._scrollbar.scanDomNode();\n }\n scrollDown(much = 8) {\n this._body.scrollTop += much;\n }\n scrollUp(much = 8) {\n this._body.scrollTop -= much;\n }\n scrollTop() {\n this._body.scrollTop = 0;\n }\n scrollBottom() {\n this._body.scrollTop = this._body.scrollHeight;\n }\n pageDown() {\n this.scrollDown(80);\n }\n pageUp() {\n this.scrollUp(80);\n }\n set borderWidth(width) {\n this._borderWidth = width;\n }\n get borderWidth() {\n return this._borderWidth;\n }\n};\nSuggestDetailsWidget = __decorate([\n __param(1, _platform_instantiation_common_instantiation_js__WEBPACK_IMPORTED_MODULE_10__.IInstantiationService)\n], SuggestDetailsWidget);\n\nclass SuggestDetailsOverlay {\n constructor(widget, _editor) {\n this.widget = widget;\n this._editor = _editor;\n this.allowEditorOverflow = true;\n this._disposables = new _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_6__.DisposableStore();\n this._added = false;\n this._preferAlignAtTop = true;\n this._resizable = new _base_browser_ui_resizable_resizable_js__WEBPACK_IMPORTED_MODULE_8__.ResizableHTMLElement();\n this._resizable.domNode.classList.add('suggest-details-container');\n this._resizable.domNode.appendChild(widget.domNode);\n this._resizable.enableSashes(false, true, true, false);\n let topLeftNow;\n let sizeNow;\n let deltaTop = 0;\n let deltaLeft = 0;\n this._disposables.add(this._resizable.onDidWillResize(() => {\n topLeftNow = this._topLeft;\n sizeNow = this._resizable.size;\n }));\n this._disposables.add(this._resizable.onDidResize(e => {\n if (topLeftNow && sizeNow) {\n this.widget.layout(e.dimension.width, e.dimension.height);\n let updateTopLeft = false;\n if (e.west) {\n deltaLeft = sizeNow.width - e.dimension.width;\n updateTopLeft = true;\n }\n if (e.north) {\n deltaTop = sizeNow.height - e.dimension.height;\n updateTopLeft = true;\n }\n if (updateTopLeft) {\n this._applyTopLeft({\n top: topLeftNow.top + deltaTop,\n left: topLeftNow.left + deltaLeft,\n });\n }\n }\n if (e.done) {\n topLeftNow = undefined;\n sizeNow = undefined;\n deltaTop = 0;\n deltaLeft = 0;\n this._userSize = e.dimension;\n }\n }));\n this._disposables.add(this.widget.onDidChangeContents(() => {\n var _a;\n if (this._anchorBox) {\n this._placeAtAnchor(this._anchorBox, (_a = this._userSize) !== null && _a !== void 0 ? _a : this.widget.size, this._preferAlignAtTop);\n }\n }));\n }\n dispose() {\n this._resizable.dispose();\n this._disposables.dispose();\n this.hide();\n }\n getId() {\n return 'suggest.details';\n }\n getDomNode() {\n return this._resizable.domNode;\n }\n getPosition() {\n return this._topLeft ? { preference: this._topLeft } : null;\n }\n show() {\n if (!this._added) {\n this._editor.addOverlayWidget(this);\n this._added = true;\n }\n }\n hide(sessionEnded = false) {\n this._resizable.clearSashHoverState();\n if (this._added) {\n this._editor.removeOverlayWidget(this);\n this._added = false;\n this._anchorBox = undefined;\n this._topLeft = undefined;\n }\n if (sessionEnded) {\n this._userSize = undefined;\n this.widget.clearContents();\n }\n }\n placeAtAnchor(anchor, preferAlignAtTop) {\n var _a;\n const anchorBox = anchor.getBoundingClientRect();\n this._anchorBox = anchorBox;\n this._preferAlignAtTop = preferAlignAtTop;\n this._placeAtAnchor(this._anchorBox, (_a = this._userSize) !== null && _a !== void 0 ? _a : this.widget.size, preferAlignAtTop);\n }\n _placeAtAnchor(anchorBox, size, preferAlignAtTop) {\n var _a;\n const bodyBox = _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.getClientArea(this.getDomNode().ownerDocument.body);\n const info = this.widget.getLayoutInfo();\n const defaultMinSize = new _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.Dimension(220, 2 * info.lineHeight);\n const defaultTop = anchorBox.top;\n // EAST\n const eastPlacement = (function () {\n const width = bodyBox.width - (anchorBox.left + anchorBox.width + info.borderWidth + info.horizontalPadding);\n const left = -info.borderWidth + anchorBox.left + anchorBox.width;\n const maxSizeTop = new _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.Dimension(width, bodyBox.height - anchorBox.top - info.borderHeight - info.verticalPadding);\n const maxSizeBottom = maxSizeTop.with(undefined, anchorBox.top + anchorBox.height - info.borderHeight - info.verticalPadding);\n return { top: defaultTop, left, fit: width - size.width, maxSizeTop, maxSizeBottom, minSize: defaultMinSize.with(Math.min(width, defaultMinSize.width)) };\n })();\n // WEST\n const westPlacement = (function () {\n const width = anchorBox.left - info.borderWidth - info.horizontalPadding;\n const left = Math.max(info.horizontalPadding, anchorBox.left - size.width - info.borderWidth);\n const maxSizeTop = new _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.Dimension(width, bodyBox.height - anchorBox.top - info.borderHeight - info.verticalPadding);\n const maxSizeBottom = maxSizeTop.with(undefined, anchorBox.top + anchorBox.height - info.borderHeight - info.verticalPadding);\n return { top: defaultTop, left, fit: width - size.width, maxSizeTop, maxSizeBottom, minSize: defaultMinSize.with(Math.min(width, defaultMinSize.width)) };\n })();\n // SOUTH\n const southPacement = (function () {\n const left = anchorBox.left;\n const top = -info.borderWidth + anchorBox.top + anchorBox.height;\n const maxSizeBottom = new _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.Dimension(anchorBox.width - info.borderHeight, bodyBox.height - anchorBox.top - anchorBox.height - info.verticalPadding);\n return { top, left, fit: maxSizeBottom.height - size.height, maxSizeBottom, maxSizeTop: maxSizeBottom, minSize: defaultMinSize.with(maxSizeBottom.width) };\n })();\n // take first placement that fits or the first with \"least bad\" fit\n const placements = [eastPlacement, westPlacement, southPacement];\n const placement = (_a = placements.find(p => p.fit >= 0)) !== null && _a !== void 0 ? _a : placements.sort((a, b) => b.fit - a.fit)[0];\n // top/bottom placement\n const bottom = anchorBox.top + anchorBox.height - info.borderHeight;\n let alignAtTop;\n let height = size.height;\n const maxHeight = Math.max(placement.maxSizeTop.height, placement.maxSizeBottom.height);\n if (height > maxHeight) {\n height = maxHeight;\n }\n let maxSize;\n if (preferAlignAtTop) {\n if (height <= placement.maxSizeTop.height) {\n alignAtTop = true;\n maxSize = placement.maxSizeTop;\n }\n else {\n alignAtTop = false;\n maxSize = placement.maxSizeBottom;\n }\n }\n else {\n if (height <= placement.maxSizeBottom.height) {\n alignAtTop = false;\n maxSize = placement.maxSizeBottom;\n }\n else {\n alignAtTop = true;\n maxSize = placement.maxSizeTop;\n }\n }\n let { top, left } = placement;\n if (!alignAtTop && height > anchorBox.height) {\n top = bottom - height;\n }\n const editorDomNode = this._editor.getDomNode();\n if (editorDomNode) {\n // get bounding rectangle of the suggest widget relative to the editor\n const editorBoundingBox = editorDomNode.getBoundingClientRect();\n top -= editorBoundingBox.top;\n left -= editorBoundingBox.left;\n }\n this._applyTopLeft({ left, top });\n this._resizable.enableSashes(!alignAtTop, placement === eastPlacement, alignAtTop, placement !== eastPlacement);\n this._resizable.minSize = placement.minSize;\n this._resizable.maxSize = maxSize;\n this._resizable.layout(height, Math.min(maxSize.width, size.width));\n this.widget.layout(this._resizable.size.width, this._resizable.size.height);\n }\n _applyTopLeft(topLeft) {\n this._topLeft = topLeft;\n this._editor.layoutOverlayWidget(this);\n }\n}\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/contrib/suggest/browser/suggestWidgetDetails.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/contrib/suggest/browser/suggestWidgetRenderer.js":
/*!***************************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/contrib/suggest/browser/suggestWidgetRenderer.js ***!
\***************************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ ItemRenderer: () => (/* binding */ ItemRenderer),\n/* harmony export */ getAriaId: () => (/* binding */ getAriaId)\n/* harmony export */ });\n/* harmony import */ var _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../../base/browser/dom.js */ \"./node_modules/monaco-editor/esm/vs/base/browser/dom.js\");\n/* harmony import */ var _base_browser_ui_iconLabel_iconLabel_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../base/browser/ui/iconLabel/iconLabel.js */ \"./node_modules/monaco-editor/esm/vs/base/browser/ui/iconLabel/iconLabel.js\");\n/* harmony import */ var _base_common_codicons_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../../base/common/codicons.js */ \"./node_modules/monaco-editor/esm/vs/base/common/codicons.js\");\n/* harmony import */ var _base_common_themables_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../../../base/common/themables.js */ \"./node_modules/monaco-editor/esm/vs/base/common/themables.js\");\n/* harmony import */ var _base_common_event_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../../../base/common/event.js */ \"./node_modules/monaco-editor/esm/vs/base/common/event.js\");\n/* harmony import */ var _base_common_filters_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../../../../base/common/filters.js */ \"./node_modules/monaco-editor/esm/vs/base/common/filters.js\");\n/* harmony import */ var _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../../../../base/common/lifecycle.js */ \"./node_modules/monaco-editor/esm/vs/base/common/lifecycle.js\");\n/* harmony import */ var _base_common_uri_js__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ../../../../base/common/uri.js */ \"./node_modules/monaco-editor/esm/vs/base/common/uri.js\");\n/* harmony import */ var _common_languages_js__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ../../../common/languages.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/languages.js\");\n/* harmony import */ var _common_services_getIconClasses_js__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ../../../common/services/getIconClasses.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/services/getIconClasses.js\");\n/* harmony import */ var _common_services_model_js__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! ../../../common/services/model.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/services/model.js\");\n/* harmony import */ var _common_languages_language_js__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(/*! ../../../common/languages/language.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/languages/language.js\");\n/* harmony import */ var _nls_js__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(/*! ../../../../nls.js */ \"./node_modules/monaco-editor/esm/vs/nls.js\");\n/* harmony import */ var _platform_files_common_files_js__WEBPACK_IMPORTED_MODULE_13__ = __webpack_require__(/*! ../../../../platform/files/common/files.js */ \"./node_modules/monaco-editor/esm/vs/platform/files/common/files.js\");\n/* harmony import */ var _platform_theme_common_iconRegistry_js__WEBPACK_IMPORTED_MODULE_14__ = __webpack_require__(/*! ../../../../platform/theme/common/iconRegistry.js */ \"./node_modules/monaco-editor/esm/vs/platform/theme/common/iconRegistry.js\");\n/* harmony import */ var _platform_theme_common_themeService_js__WEBPACK_IMPORTED_MODULE_15__ = __webpack_require__(/*! ../../../../platform/theme/common/themeService.js */ \"./node_modules/monaco-editor/esm/vs/platform/theme/common/themeService.js\");\n/* harmony import */ var _suggestWidgetDetails_js__WEBPACK_IMPORTED_MODULE_16__ = __webpack_require__(/*! ./suggestWidgetDetails.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/suggest/browser/suggestWidgetDetails.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\nvar __decorate = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\n return c > 3 && r && Object.defineProperty(target, key, r), r;\n};\nvar __param = (undefined && undefined.__param) || function (paramIndex, decorator) {\n return function (target, key) { decorator(target, key, paramIndex); }\n};\nvar _a;\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nfunction getAriaId(index) {\n return `suggest-aria-id:${index}`;\n}\nconst suggestMoreInfoIcon = (0,_platform_theme_common_iconRegistry_js__WEBPACK_IMPORTED_MODULE_14__.registerIcon)('suggest-more-info', _base_common_codicons_js__WEBPACK_IMPORTED_MODULE_2__.Codicon.chevronRight, _nls_js__WEBPACK_IMPORTED_MODULE_12__.localize('suggestMoreInfoIcon', 'Icon for more information in the suggest widget.'));\nconst _completionItemColor = new (_a = class ColorExtractor {\n extract(item, out) {\n if (item.textLabel.match(_a._regexStrict)) {\n out[0] = item.textLabel;\n return true;\n }\n if (item.completion.detail && item.completion.detail.match(_a._regexStrict)) {\n out[0] = item.completion.detail;\n return true;\n }\n if (item.completion.documentation) {\n const value = typeof item.completion.documentation === 'string'\n ? item.completion.documentation\n : item.completion.documentation.value;\n const match = _a._regexRelaxed.exec(value);\n if (match && (match.index === 0 || match.index + match[0].length === value.length)) {\n out[0] = match[0];\n return true;\n }\n }\n return false;\n }\n },\n _a._regexRelaxed = /(#([\\da-fA-F]{3}){1,2}|(rgb|hsl)a\\(\\s*(\\d{1,3}%?\\s*,\\s*){3}(1|0?\\.\\d+)\\)|(rgb|hsl)\\(\\s*\\d{1,3}%?(\\s*,\\s*\\d{1,3}%?){2}\\s*\\))/,\n _a._regexStrict = new RegExp(`^${_a._regexRelaxed.source}$`, 'i'),\n _a);\nlet ItemRenderer = class ItemRenderer {\n constructor(_editor, _modelService, _languageService, _themeService) {\n this._editor = _editor;\n this._modelService = _modelService;\n this._languageService = _languageService;\n this._themeService = _themeService;\n this._onDidToggleDetails = new _base_common_event_js__WEBPACK_IMPORTED_MODULE_4__.Emitter();\n this.onDidToggleDetails = this._onDidToggleDetails.event;\n this.templateId = 'suggestion';\n }\n dispose() {\n this._onDidToggleDetails.dispose();\n }\n renderTemplate(container) {\n const disposables = new _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_6__.DisposableStore();\n const root = container;\n root.classList.add('show-file-icons');\n const icon = (0,_base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.append)(container, (0,_base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.$)('.icon'));\n const colorspan = (0,_base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.append)(icon, (0,_base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.$)('span.colorspan'));\n const text = (0,_base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.append)(container, (0,_base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.$)('.contents'));\n const main = (0,_base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.append)(text, (0,_base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.$)('.main'));\n const iconContainer = (0,_base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.append)(main, (0,_base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.$)('.icon-label.codicon'));\n const left = (0,_base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.append)(main, (0,_base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.$)('span.left'));\n const right = (0,_base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.append)(main, (0,_base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.$)('span.right'));\n const iconLabel = new _base_browser_ui_iconLabel_iconLabel_js__WEBPACK_IMPORTED_MODULE_1__.IconLabel(left, { supportHighlights: true, supportIcons: true });\n disposables.add(iconLabel);\n const parametersLabel = (0,_base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.append)(left, (0,_base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.$)('span.signature-label'));\n const qualifierLabel = (0,_base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.append)(left, (0,_base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.$)('span.qualifier-label'));\n const detailsLabel = (0,_base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.append)(right, (0,_base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.$)('span.details-label'));\n const readMore = (0,_base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.append)(right, (0,_base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.$)('span.readMore' + _base_common_themables_js__WEBPACK_IMPORTED_MODULE_3__.ThemeIcon.asCSSSelector(suggestMoreInfoIcon)));\n readMore.title = _nls_js__WEBPACK_IMPORTED_MODULE_12__.localize('readMore', \"Read More\");\n const configureFont = () => {\n const options = this._editor.getOptions();\n const fontInfo = options.get(50 /* EditorOption.fontInfo */);\n const fontFamily = fontInfo.getMassagedFontFamily();\n const fontFeatureSettings = fontInfo.fontFeatureSettings;\n const fontSize = options.get(119 /* EditorOption.suggestFontSize */) || fontInfo.fontSize;\n const lineHeight = options.get(120 /* EditorOption.suggestLineHeight */) || fontInfo.lineHeight;\n const fontWeight = fontInfo.fontWeight;\n const letterSpacing = fontInfo.letterSpacing;\n const fontSizePx = `${fontSize}px`;\n const lineHeightPx = `${lineHeight}px`;\n const letterSpacingPx = `${letterSpacing}px`;\n root.style.fontSize = fontSizePx;\n root.style.fontWeight = fontWeight;\n root.style.letterSpacing = letterSpacingPx;\n main.style.fontFamily = fontFamily;\n main.style.fontFeatureSettings = fontFeatureSettings;\n main.style.lineHeight = lineHeightPx;\n icon.style.height = lineHeightPx;\n icon.style.width = lineHeightPx;\n readMore.style.height = lineHeightPx;\n readMore.style.width = lineHeightPx;\n };\n return { root, left, right, icon, colorspan, iconLabel, iconContainer, parametersLabel, qualifierLabel, detailsLabel, readMore, disposables, configureFont };\n }\n renderElement(element, index, data) {\n data.configureFont();\n const { completion } = element;\n data.root.id = getAriaId(index);\n data.colorspan.style.backgroundColor = '';\n const labelOptions = {\n labelEscapeNewLines: true,\n matches: (0,_base_common_filters_js__WEBPACK_IMPORTED_MODULE_5__.createMatches)(element.score)\n };\n const color = [];\n if (completion.kind === 19 /* CompletionItemKind.Color */ && _completionItemColor.extract(element, color)) {\n // special logic for 'color' completion items\n data.icon.className = 'icon customcolor';\n data.iconContainer.className = 'icon hide';\n data.colorspan.style.backgroundColor = color[0];\n }\n else if (completion.kind === 20 /* CompletionItemKind.File */ && this._themeService.getFileIconTheme().hasFileIcons) {\n // special logic for 'file' completion items\n data.icon.className = 'icon hide';\n data.iconContainer.className = 'icon hide';\n const labelClasses = (0,_common_services_getIconClasses_js__WEBPACK_IMPORTED_MODULE_9__.getIconClasses)(this._modelService, this._languageService, _base_common_uri_js__WEBPACK_IMPORTED_MODULE_7__.URI.from({ scheme: 'fake', path: element.textLabel }), _platform_files_common_files_js__WEBPACK_IMPORTED_MODULE_13__.FileKind.FILE);\n const detailClasses = (0,_common_services_getIconClasses_js__WEBPACK_IMPORTED_MODULE_9__.getIconClasses)(this._modelService, this._languageService, _base_common_uri_js__WEBPACK_IMPORTED_MODULE_7__.URI.from({ scheme: 'fake', path: completion.detail }), _platform_files_common_files_js__WEBPACK_IMPORTED_MODULE_13__.FileKind.FILE);\n labelOptions.extraClasses = labelClasses.length > detailClasses.length ? labelClasses : detailClasses;\n }\n else if (completion.kind === 23 /* CompletionItemKind.Folder */ && this._themeService.getFileIconTheme().hasFolderIcons) {\n // special logic for 'folder' completion items\n data.icon.className = 'icon hide';\n data.iconContainer.className = 'icon hide';\n labelOptions.extraClasses = [\n (0,_common_services_getIconClasses_js__WEBPACK_IMPORTED_MODULE_9__.getIconClasses)(this._modelService, this._languageService, _base_common_uri_js__WEBPACK_IMPORTED_MODULE_7__.URI.from({ scheme: 'fake', path: element.textLabel }), _platform_files_common_files_js__WEBPACK_IMPORTED_MODULE_13__.FileKind.FOLDER),\n (0,_common_services_getIconClasses_js__WEBPACK_IMPORTED_MODULE_9__.getIconClasses)(this._modelService, this._languageService, _base_common_uri_js__WEBPACK_IMPORTED_MODULE_7__.URI.from({ scheme: 'fake', path: completion.detail }), _platform_files_common_files_js__WEBPACK_IMPORTED_MODULE_13__.FileKind.FOLDER)\n ].flat();\n }\n else {\n // normal icon\n data.icon.className = 'icon hide';\n data.iconContainer.className = '';\n data.iconContainer.classList.add('suggest-icon', ..._base_common_themables_js__WEBPACK_IMPORTED_MODULE_3__.ThemeIcon.asClassNameArray(_common_languages_js__WEBPACK_IMPORTED_MODULE_8__.CompletionItemKinds.toIcon(completion.kind)));\n }\n if (completion.tags && completion.tags.indexOf(1 /* CompletionItemTag.Deprecated */) >= 0) {\n labelOptions.extraClasses = (labelOptions.extraClasses || []).concat(['deprecated']);\n labelOptions.matches = [];\n }\n data.iconLabel.setLabel(element.textLabel, undefined, labelOptions);\n if (typeof completion.label === 'string') {\n data.parametersLabel.textContent = '';\n data.detailsLabel.textContent = stripNewLines(completion.detail || '');\n data.root.classList.add('string-label');\n }\n else {\n data.parametersLabel.textContent = stripNewLines(completion.label.detail || '');\n data.detailsLabel.textContent = stripNewLines(completion.label.description || '');\n data.root.classList.remove('string-label');\n }\n if (this._editor.getOption(118 /* EditorOption.suggest */).showInlineDetails) {\n (0,_base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.show)(data.detailsLabel);\n }\n else {\n (0,_base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.hide)(data.detailsLabel);\n }\n if ((0,_suggestWidgetDetails_js__WEBPACK_IMPORTED_MODULE_16__.canExpandCompletionItem)(element)) {\n data.right.classList.add('can-expand-details');\n (0,_base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.show)(data.readMore);\n data.readMore.onmousedown = e => {\n e.stopPropagation();\n e.preventDefault();\n };\n data.readMore.onclick = e => {\n e.stopPropagation();\n e.preventDefault();\n this._onDidToggleDetails.fire();\n };\n }\n else {\n data.right.classList.remove('can-expand-details');\n (0,_base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.hide)(data.readMore);\n data.readMore.onmousedown = null;\n data.readMore.onclick = null;\n }\n }\n disposeTemplate(templateData) {\n templateData.disposables.dispose();\n }\n};\nItemRenderer = __decorate([\n __param(1, _common_services_model_js__WEBPACK_IMPORTED_MODULE_10__.IModelService),\n __param(2, _common_languages_language_js__WEBPACK_IMPORTED_MODULE_11__.ILanguageService),\n __param(3, _platform_theme_common_themeService_js__WEBPACK_IMPORTED_MODULE_15__.IThemeService)\n], ItemRenderer);\n\nfunction stripNewLines(str) {\n return str.replace(/\\r\\n|\\r|\\n/g, '');\n}\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/contrib/suggest/browser/suggestWidgetRenderer.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/contrib/suggest/browser/suggestWidgetStatus.js":
/*!*************************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/contrib/suggest/browser/suggestWidgetStatus.js ***!
\*************************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ SuggestWidgetStatus: () => (/* binding */ SuggestWidgetStatus)\n/* harmony export */ });\n/* harmony import */ var _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../../base/browser/dom.js */ \"./node_modules/monaco-editor/esm/vs/base/browser/dom.js\");\n/* harmony import */ var _base_browser_ui_actionbar_actionbar_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../base/browser/ui/actionbar/actionbar.js */ \"./node_modules/monaco-editor/esm/vs/base/browser/ui/actionbar/actionbar.js\");\n/* harmony import */ var _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../../base/common/lifecycle.js */ \"./node_modules/monaco-editor/esm/vs/base/common/lifecycle.js\");\n/* harmony import */ var _nls_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../../../nls.js */ \"./node_modules/monaco-editor/esm/vs/nls.js\");\n/* harmony import */ var _platform_actions_browser_menuEntryActionViewItem_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../../../platform/actions/browser/menuEntryActionViewItem.js */ \"./node_modules/monaco-editor/esm/vs/platform/actions/browser/menuEntryActionViewItem.js\");\n/* harmony import */ var _platform_actions_common_actions_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../../../../platform/actions/common/actions.js */ \"./node_modules/monaco-editor/esm/vs/platform/actions/common/actions.js\");\n/* harmony import */ var _platform_contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../../../../platform/contextkey/common/contextkey.js */ \"./node_modules/monaco-editor/esm/vs/platform/contextkey/common/contextkey.js\");\n/* harmony import */ var _platform_instantiation_common_instantiation_js__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ../../../../platform/instantiation/common/instantiation.js */ \"./node_modules/monaco-editor/esm/vs/platform/instantiation/common/instantiation.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\nvar __decorate = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\n return c > 3 && r && Object.defineProperty(target, key, r), r;\n};\nvar __param = (undefined && undefined.__param) || function (paramIndex, decorator) {\n return function (target, key) { decorator(target, key, paramIndex); }\n};\n\n\n\n\n\n\n\n\nclass StatusBarViewItem extends _platform_actions_browser_menuEntryActionViewItem_js__WEBPACK_IMPORTED_MODULE_4__.MenuEntryActionViewItem {\n updateLabel() {\n const kb = this._keybindingService.lookupKeybinding(this._action.id, this._contextKeyService);\n if (!kb) {\n return super.updateLabel();\n }\n if (this.label) {\n this.label.textContent = (0,_nls_js__WEBPACK_IMPORTED_MODULE_3__.localize)({ key: 'content', comment: ['A label', 'A keybinding'] }, '{0} ({1})', this._action.label, StatusBarViewItem.symbolPrintEnter(kb));\n }\n }\n static symbolPrintEnter(kb) {\n var _a;\n return (_a = kb.getLabel()) === null || _a === void 0 ? void 0 : _a.replace(/\\benter\\b/gi, '\\u23CE');\n }\n}\nlet SuggestWidgetStatus = class SuggestWidgetStatus {\n constructor(container, _menuId, instantiationService, _menuService, _contextKeyService) {\n this._menuId = _menuId;\n this._menuService = _menuService;\n this._contextKeyService = _contextKeyService;\n this._menuDisposables = new _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_2__.DisposableStore();\n this.element = _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.append(container, _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.$('.suggest-status-bar'));\n const actionViewItemProvider = (action => {\n return action instanceof _platform_actions_common_actions_js__WEBPACK_IMPORTED_MODULE_5__.MenuItemAction ? instantiationService.createInstance(StatusBarViewItem, action, undefined) : undefined;\n });\n this._leftActions = new _base_browser_ui_actionbar_actionbar_js__WEBPACK_IMPORTED_MODULE_1__.ActionBar(this.element, { actionViewItemProvider });\n this._rightActions = new _base_browser_ui_actionbar_actionbar_js__WEBPACK_IMPORTED_MODULE_1__.ActionBar(this.element, { actionViewItemProvider });\n this._leftActions.domNode.classList.add('left');\n this._rightActions.domNode.classList.add('right');\n }\n dispose() {\n this._menuDisposables.dispose();\n this._leftActions.dispose();\n this._rightActions.dispose();\n this.element.remove();\n }\n show() {\n const menu = this._menuService.createMenu(this._menuId, this._contextKeyService);\n const renderMenu = () => {\n const left = [];\n const right = [];\n for (const [group, actions] of menu.getActions()) {\n if (group === 'left') {\n left.push(...actions);\n }\n else {\n right.push(...actions);\n }\n }\n this._leftActions.clear();\n this._leftActions.push(left);\n this._rightActions.clear();\n this._rightActions.push(right);\n };\n this._menuDisposables.add(menu.onDidChange(() => renderMenu()));\n this._menuDisposables.add(menu);\n }\n hide() {\n this._menuDisposables.clear();\n }\n};\nSuggestWidgetStatus = __decorate([\n __param(2, _platform_instantiation_common_instantiation_js__WEBPACK_IMPORTED_MODULE_7__.IInstantiationService),\n __param(3, _platform_actions_common_actions_js__WEBPACK_IMPORTED_MODULE_5__.IMenuService),\n __param(4, _platform_contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_6__.IContextKeyService)\n], SuggestWidgetStatus);\n\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/contrib/suggest/browser/suggestWidgetStatus.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/contrib/suggest/browser/wordContextKey.js":
/*!********************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/contrib/suggest/browser/wordContextKey.js ***!
\********************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ WordContextKey: () => (/* binding */ WordContextKey)\n/* harmony export */ });\n/* harmony import */ var _platform_contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../../platform/contextkey/common/contextkey.js */ \"./node_modules/monaco-editor/esm/vs/platform/contextkey/common/contextkey.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\nvar __decorate = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\n return c > 3 && r && Object.defineProperty(target, key, r), r;\n};\nvar __param = (undefined && undefined.__param) || function (paramIndex, decorator) {\n return function (target, key) { decorator(target, key, paramIndex); }\n};\nvar WordContextKey_1;\n\nlet WordContextKey = WordContextKey_1 = class WordContextKey {\n constructor(_editor, contextKeyService) {\n this._editor = _editor;\n this._enabled = false;\n this._ckAtEnd = WordContextKey_1.AtEnd.bindTo(contextKeyService);\n this._configListener = this._editor.onDidChangeConfiguration(e => e.hasChanged(123 /* EditorOption.tabCompletion */) && this._update());\n this._update();\n }\n dispose() {\n var _a;\n this._configListener.dispose();\n (_a = this._selectionListener) === null || _a === void 0 ? void 0 : _a.dispose();\n this._ckAtEnd.reset();\n }\n _update() {\n // only update this when tab completions are enabled\n const enabled = this._editor.getOption(123 /* EditorOption.tabCompletion */) === 'on';\n if (this._enabled === enabled) {\n return;\n }\n this._enabled = enabled;\n if (this._enabled) {\n const checkForWordEnd = () => {\n if (!this._editor.hasModel()) {\n this._ckAtEnd.set(false);\n return;\n }\n const model = this._editor.getModel();\n const selection = this._editor.getSelection();\n const word = model.getWordAtPosition(selection.getStartPosition());\n if (!word) {\n this._ckAtEnd.set(false);\n return;\n }\n this._ckAtEnd.set(word.endColumn === selection.getStartPosition().column);\n };\n this._selectionListener = this._editor.onDidChangeCursorSelection(checkForWordEnd);\n checkForWordEnd();\n }\n else if (this._selectionListener) {\n this._ckAtEnd.reset();\n this._selectionListener.dispose();\n this._selectionListener = undefined;\n }\n }\n};\nWordContextKey.AtEnd = new _platform_contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_0__.RawContextKey('atEndOfWord', false);\nWordContextKey = WordContextKey_1 = __decorate([\n __param(1, _platform_contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_0__.IContextKeyService)\n], WordContextKey);\n\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/contrib/suggest/browser/wordContextKey.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/contrib/suggest/browser/wordDistance.js":
/*!******************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/contrib/suggest/browser/wordDistance.js ***!
\******************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ WordDistance: () => (/* binding */ WordDistance)\n/* harmony export */ });\n/* harmony import */ var _base_common_arrays_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../../base/common/arrays.js */ \"./node_modules/monaco-editor/esm/vs/base/common/arrays.js\");\n/* harmony import */ var _common_core_range_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../common/core/range.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/core/range.js\");\n/* harmony import */ var _smartSelect_browser_bracketSelections_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../smartSelect/browser/bracketSelections.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/smartSelect/browser/bracketSelections.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n\n\nclass WordDistance {\n static async create(service, editor) {\n if (!editor.getOption(118 /* EditorOption.suggest */).localityBonus) {\n return WordDistance.None;\n }\n if (!editor.hasModel()) {\n return WordDistance.None;\n }\n const model = editor.getModel();\n const position = editor.getPosition();\n if (!service.canComputeWordRanges(model.uri)) {\n return WordDistance.None;\n }\n const [ranges] = await new _smartSelect_browser_bracketSelections_js__WEBPACK_IMPORTED_MODULE_2__.BracketSelectionRangeProvider().provideSelectionRanges(model, [position]);\n if (ranges.length === 0) {\n return WordDistance.None;\n }\n const wordRanges = await service.computeWordRanges(model.uri, ranges[0].range);\n if (!wordRanges) {\n return WordDistance.None;\n }\n // remove current word\n const wordUntilPos = model.getWordUntilPosition(position);\n delete wordRanges[wordUntilPos.word];\n return new class extends WordDistance {\n distance(anchor, item) {\n if (!position.equals(editor.getPosition())) {\n return 0;\n }\n if (item.kind === 17 /* CompletionItemKind.Keyword */) {\n return 2 << 20;\n }\n const word = typeof item.label === 'string' ? item.label : item.label.label;\n const wordLines = wordRanges[word];\n if ((0,_base_common_arrays_js__WEBPACK_IMPORTED_MODULE_0__.isFalsyOrEmpty)(wordLines)) {\n return 2 << 20;\n }\n const idx = (0,_base_common_arrays_js__WEBPACK_IMPORTED_MODULE_0__.binarySearch)(wordLines, _common_core_range_js__WEBPACK_IMPORTED_MODULE_1__.Range.fromPositions(anchor), _common_core_range_js__WEBPACK_IMPORTED_MODULE_1__.Range.compareRangesUsingStarts);\n const bestWordRange = idx >= 0 ? wordLines[idx] : wordLines[Math.max(0, ~idx - 1)];\n let blockDistance = ranges.length;\n for (const range of ranges) {\n if (!_common_core_range_js__WEBPACK_IMPORTED_MODULE_1__.Range.containsRange(range.range, bestWordRange)) {\n break;\n }\n blockDistance -= 1;\n }\n return blockDistance;\n }\n };\n }\n}\nWordDistance.None = new class extends WordDistance {\n distance() { return 0; }\n};\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/contrib/suggest/browser/wordDistance.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/contrib/symbolIcons/browser/symbolIcons.js":
/*!*********************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/contrib/symbolIcons/browser/symbolIcons.js ***!
\*********************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ SYMBOL_ICON_ARRAY_FOREGROUND: () => (/* binding */ SYMBOL_ICON_ARRAY_FOREGROUND),\n/* harmony export */ SYMBOL_ICON_BOOLEAN_FOREGROUND: () => (/* binding */ SYMBOL_ICON_BOOLEAN_FOREGROUND),\n/* harmony export */ SYMBOL_ICON_CLASS_FOREGROUND: () => (/* binding */ SYMBOL_ICON_CLASS_FOREGROUND),\n/* harmony export */ SYMBOL_ICON_COLOR_FOREGROUND: () => (/* binding */ SYMBOL_ICON_COLOR_FOREGROUND),\n/* harmony export */ SYMBOL_ICON_CONSTANT_FOREGROUND: () => (/* binding */ SYMBOL_ICON_CONSTANT_FOREGROUND),\n/* harmony export */ SYMBOL_ICON_CONSTRUCTOR_FOREGROUND: () => (/* binding */ SYMBOL_ICON_CONSTRUCTOR_FOREGROUND),\n/* harmony export */ SYMBOL_ICON_ENUMERATOR_FOREGROUND: () => (/* binding */ SYMBOL_ICON_ENUMERATOR_FOREGROUND),\n/* harmony export */ SYMBOL_ICON_ENUMERATOR_MEMBER_FOREGROUND: () => (/* binding */ SYMBOL_ICON_ENUMERATOR_MEMBER_FOREGROUND),\n/* harmony export */ SYMBOL_ICON_EVENT_FOREGROUND: () => (/* binding */ SYMBOL_ICON_EVENT_FOREGROUND),\n/* harmony export */ SYMBOL_ICON_FIELD_FOREGROUND: () => (/* binding */ SYMBOL_ICON_FIELD_FOREGROUND),\n/* harmony export */ SYMBOL_ICON_FILE_FOREGROUND: () => (/* binding */ SYMBOL_ICON_FILE_FOREGROUND),\n/* harmony export */ SYMBOL_ICON_FOLDER_FOREGROUND: () => (/* binding */ SYMBOL_ICON_FOLDER_FOREGROUND),\n/* harmony export */ SYMBOL_ICON_FUNCTION_FOREGROUND: () => (/* binding */ SYMBOL_ICON_FUNCTION_FOREGROUND),\n/* harmony export */ SYMBOL_ICON_INTERFACE_FOREGROUND: () => (/* binding */ SYMBOL_ICON_INTERFACE_FOREGROUND),\n/* harmony export */ SYMBOL_ICON_KEYWORD_FOREGROUND: () => (/* binding */ SYMBOL_ICON_KEYWORD_FOREGROUND),\n/* harmony export */ SYMBOL_ICON_KEY_FOREGROUND: () => (/* binding */ SYMBOL_ICON_KEY_FOREGROUND),\n/* harmony export */ SYMBOL_ICON_METHOD_FOREGROUND: () => (/* binding */ SYMBOL_ICON_METHOD_FOREGROUND),\n/* harmony export */ SYMBOL_ICON_MODULE_FOREGROUND: () => (/* binding */ SYMBOL_ICON_MODULE_FOREGROUND),\n/* harmony export */ SYMBOL_ICON_NAMESPACE_FOREGROUND: () => (/* binding */ SYMBOL_ICON_NAMESPACE_FOREGROUND),\n/* harmony export */ SYMBOL_ICON_NULL_FOREGROUND: () => (/* binding */ SYMBOL_ICON_NULL_FOREGROUND),\n/* harmony export */ SYMBOL_ICON_NUMBER_FOREGROUND: () => (/* binding */ SYMBOL_ICON_NUMBER_FOREGROUND),\n/* harmony export */ SYMBOL_ICON_OBJECT_FOREGROUND: () => (/* binding */ SYMBOL_ICON_OBJECT_FOREGROUND),\n/* harmony export */ SYMBOL_ICON_OPERATOR_FOREGROUND: () => (/* binding */ SYMBOL_ICON_OPERATOR_FOREGROUND),\n/* harmony export */ SYMBOL_ICON_PACKAGE_FOREGROUND: () => (/* binding */ SYMBOL_ICON_PACKAGE_FOREGROUND),\n/* harmony export */ SYMBOL_ICON_PROPERTY_FOREGROUND: () => (/* binding */ SYMBOL_ICON_PROPERTY_FOREGROUND),\n/* harmony export */ SYMBOL_ICON_REFERENCE_FOREGROUND: () => (/* binding */ SYMBOL_ICON_REFERENCE_FOREGROUND),\n/* harmony export */ SYMBOL_ICON_SNIPPET_FOREGROUND: () => (/* binding */ SYMBOL_ICON_SNIPPET_FOREGROUND),\n/* harmony export */ SYMBOL_ICON_STRING_FOREGROUND: () => (/* binding */ SYMBOL_ICON_STRING_FOREGROUND),\n/* harmony export */ SYMBOL_ICON_STRUCT_FOREGROUND: () => (/* binding */ SYMBOL_ICON_STRUCT_FOREGROUND),\n/* harmony export */ SYMBOL_ICON_TEXT_FOREGROUND: () => (/* binding */ SYMBOL_ICON_TEXT_FOREGROUND),\n/* harmony export */ SYMBOL_ICON_TYPEPARAMETER_FOREGROUND: () => (/* binding */ SYMBOL_ICON_TYPEPARAMETER_FOREGROUND),\n/* harmony export */ SYMBOL_ICON_UNIT_FOREGROUND: () => (/* binding */ SYMBOL_ICON_UNIT_FOREGROUND),\n/* harmony export */ SYMBOL_ICON_VARIABLE_FOREGROUND: () => (/* binding */ SYMBOL_ICON_VARIABLE_FOREGROUND)\n/* harmony export */ });\n/* harmony import */ var _symbolIcons_css__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./symbolIcons.css */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/symbolIcons/browser/symbolIcons.css\");\n/* harmony import */ var _nls_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../nls.js */ \"./node_modules/monaco-editor/esm/vs/nls.js\");\n/* harmony import */ var _platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../../platform/theme/common/colorRegistry.js */ \"./node_modules/monaco-editor/esm/vs/platform/theme/common/colorRegistry.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n\n\nconst SYMBOL_ICON_ARRAY_FOREGROUND = (0,_platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_2__.registerColor)('symbolIcon.arrayForeground', {\n dark: _platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_2__.foreground,\n light: _platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_2__.foreground,\n hcDark: _platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_2__.foreground,\n hcLight: _platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_2__.foreground,\n}, (0,_nls_js__WEBPACK_IMPORTED_MODULE_1__.localize)('symbolIcon.arrayForeground', 'The foreground color for array symbols. These symbols appear in the outline, breadcrumb, and suggest widget.'));\nconst SYMBOL_ICON_BOOLEAN_FOREGROUND = (0,_platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_2__.registerColor)('symbolIcon.booleanForeground', {\n dark: _platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_2__.foreground,\n light: _platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_2__.foreground,\n hcDark: _platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_2__.foreground,\n hcLight: _platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_2__.foreground,\n}, (0,_nls_js__WEBPACK_IMPORTED_MODULE_1__.localize)('symbolIcon.booleanForeground', 'The foreground color for boolean symbols. These symbols appear in the outline, breadcrumb, and suggest widget.'));\nconst SYMBOL_ICON_CLASS_FOREGROUND = (0,_platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_2__.registerColor)('symbolIcon.classForeground', {\n dark: '#EE9D28',\n light: '#D67E00',\n hcDark: '#EE9D28',\n hcLight: '#D67E00'\n}, (0,_nls_js__WEBPACK_IMPORTED_MODULE_1__.localize)('symbolIcon.classForeground', 'The foreground color for class symbols. These symbols appear in the outline, breadcrumb, and suggest widget.'));\nconst SYMBOL_ICON_COLOR_FOREGROUND = (0,_platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_2__.registerColor)('symbolIcon.colorForeground', {\n dark: _platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_2__.foreground,\n light: _platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_2__.foreground,\n hcDark: _platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_2__.foreground,\n hcLight: _platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_2__.foreground\n}, (0,_nls_js__WEBPACK_IMPORTED_MODULE_1__.localize)('symbolIcon.colorForeground', 'The foreground color for color symbols. These symbols appear in the outline, breadcrumb, and suggest widget.'));\nconst SYMBOL_ICON_CONSTANT_FOREGROUND = (0,_platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_2__.registerColor)('symbolIcon.constantForeground', {\n dark: _platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_2__.foreground,\n light: _platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_2__.foreground,\n hcDark: _platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_2__.foreground,\n hcLight: _platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_2__.foreground\n}, (0,_nls_js__WEBPACK_IMPORTED_MODULE_1__.localize)('symbolIcon.constantForeground', 'The foreground color for constant symbols. These symbols appear in the outline, breadcrumb, and suggest widget.'));\nconst SYMBOL_ICON_CONSTRUCTOR_FOREGROUND = (0,_platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_2__.registerColor)('symbolIcon.constructorForeground', {\n dark: '#B180D7',\n light: '#652D90',\n hcDark: '#B180D7',\n hcLight: '#652D90'\n}, (0,_nls_js__WEBPACK_IMPORTED_MODULE_1__.localize)('symbolIcon.constructorForeground', 'The foreground color for constructor symbols. These symbols appear in the outline, breadcrumb, and suggest widget.'));\nconst SYMBOL_ICON_ENUMERATOR_FOREGROUND = (0,_platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_2__.registerColor)('symbolIcon.enumeratorForeground', {\n dark: '#EE9D28',\n light: '#D67E00',\n hcDark: '#EE9D28',\n hcLight: '#D67E00'\n}, (0,_nls_js__WEBPACK_IMPORTED_MODULE_1__.localize)('symbolIcon.enumeratorForeground', 'The foreground color for enumerator symbols. These symbols appear in the outline, breadcrumb, and suggest widget.'));\nconst SYMBOL_ICON_ENUMERATOR_MEMBER_FOREGROUND = (0,_platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_2__.registerColor)('symbolIcon.enumeratorMemberForeground', {\n dark: '#75BEFF',\n light: '#007ACC',\n hcDark: '#75BEFF',\n hcLight: '#007ACC'\n}, (0,_nls_js__WEBPACK_IMPORTED_MODULE_1__.localize)('symbolIcon.enumeratorMemberForeground', 'The foreground color for enumerator member symbols. These symbols appear in the outline, breadcrumb, and suggest widget.'));\nconst SYMBOL_ICON_EVENT_FOREGROUND = (0,_platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_2__.registerColor)('symbolIcon.eventForeground', {\n dark: '#EE9D28',\n light: '#D67E00',\n hcDark: '#EE9D28',\n hcLight: '#D67E00'\n}, (0,_nls_js__WEBPACK_IMPORTED_MODULE_1__.localize)('symbolIcon.eventForeground', 'The foreground color for event symbols. These symbols appear in the outline, breadcrumb, and suggest widget.'));\nconst SYMBOL_ICON_FIELD_FOREGROUND = (0,_platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_2__.registerColor)('symbolIcon.fieldForeground', {\n dark: '#75BEFF',\n light: '#007ACC',\n hcDark: '#75BEFF',\n hcLight: '#007ACC'\n}, (0,_nls_js__WEBPACK_IMPORTED_MODULE_1__.localize)('symbolIcon.fieldForeground', 'The foreground color for field symbols. These symbols appear in the outline, breadcrumb, and suggest widget.'));\nconst SYMBOL_ICON_FILE_FOREGROUND = (0,_platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_2__.registerColor)('symbolIcon.fileForeground', {\n dark: _platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_2__.foreground,\n light: _platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_2__.foreground,\n hcDark: _platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_2__.foreground,\n hcLight: _platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_2__.foreground\n}, (0,_nls_js__WEBPACK_IMPORTED_MODULE_1__.localize)('symbolIcon.fileForeground', 'The foreground color for file symbols. These symbols appear in the outline, breadcrumb, and suggest widget.'));\nconst SYMBOL_ICON_FOLDER_FOREGROUND = (0,_platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_2__.registerColor)('symbolIcon.folderForeground', {\n dark: _platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_2__.foreground,\n light: _platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_2__.foreground,\n hcDark: _platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_2__.foreground,\n hcLight: _platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_2__.foreground\n}, (0,_nls_js__WEBPACK_IMPORTED_MODULE_1__.localize)('symbolIcon.folderForeground', 'The foreground color for folder symbols. These symbols appear in the outline, breadcrumb, and suggest widget.'));\nconst SYMBOL_ICON_FUNCTION_FOREGROUND = (0,_platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_2__.registerColor)('symbolIcon.functionForeground', {\n dark: '#B180D7',\n light: '#652D90',\n hcDark: '#B180D7',\n hcLight: '#652D90'\n}, (0,_nls_js__WEBPACK_IMPORTED_MODULE_1__.localize)('symbolIcon.functionForeground', 'The foreground color for function symbols. These symbols appear in the outline, breadcrumb, and suggest widget.'));\nconst SYMBOL_ICON_INTERFACE_FOREGROUND = (0,_platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_2__.registerColor)('symbolIcon.interfaceForeground', {\n dark: '#75BEFF',\n light: '#007ACC',\n hcDark: '#75BEFF',\n hcLight: '#007ACC'\n}, (0,_nls_js__WEBPACK_IMPORTED_MODULE_1__.localize)('symbolIcon.interfaceForeground', 'The foreground color for interface symbols. These symbols appear in the outline, breadcrumb, and suggest widget.'));\nconst SYMBOL_ICON_KEY_FOREGROUND = (0,_platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_2__.registerColor)('symbolIcon.keyForeground', {\n dark: _platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_2__.foreground,\n light: _platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_2__.foreground,\n hcDark: _platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_2__.foreground,\n hcLight: _platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_2__.foreground\n}, (0,_nls_js__WEBPACK_IMPORTED_MODULE_1__.localize)('symbolIcon.keyForeground', 'The foreground color for key symbols. These symbols appear in the outline, breadcrumb, and suggest widget.'));\nconst SYMBOL_ICON_KEYWORD_FOREGROUND = (0,_platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_2__.registerColor)('symbolIcon.keywordForeground', {\n dark: _platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_2__.foreground,\n light: _platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_2__.foreground,\n hcDark: _platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_2__.foreground,\n hcLight: _platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_2__.foreground\n}, (0,_nls_js__WEBPACK_IMPORTED_MODULE_1__.localize)('symbolIcon.keywordForeground', 'The foreground color for keyword symbols. These symbols appear in the outline, breadcrumb, and suggest widget.'));\nconst SYMBOL_ICON_METHOD_FOREGROUND = (0,_platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_2__.registerColor)('symbolIcon.methodForeground', {\n dark: '#B180D7',\n light: '#652D90',\n hcDark: '#B180D7',\n hcLight: '#652D90'\n}, (0,_nls_js__WEBPACK_IMPORTED_MODULE_1__.localize)('symbolIcon.methodForeground', 'The foreground color for method symbols. These symbols appear in the outline, breadcrumb, and suggest widget.'));\nconst SYMBOL_ICON_MODULE_FOREGROUND = (0,_platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_2__.registerColor)('symbolIcon.moduleForeground', {\n dark: _platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_2__.foreground,\n light: _platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_2__.foreground,\n hcDark: _platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_2__.foreground,\n hcLight: _platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_2__.foreground\n}, (0,_nls_js__WEBPACK_IMPORTED_MODULE_1__.localize)('symbolIcon.moduleForeground', 'The foreground color for module symbols. These symbols appear in the outline, breadcrumb, and suggest widget.'));\nconst SYMBOL_ICON_NAMESPACE_FOREGROUND = (0,_platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_2__.registerColor)('symbolIcon.namespaceForeground', {\n dark: _platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_2__.foreground,\n light: _platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_2__.foreground,\n hcDark: _platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_2__.foreground,\n hcLight: _platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_2__.foreground\n}, (0,_nls_js__WEBPACK_IMPORTED_MODULE_1__.localize)('symbolIcon.namespaceForeground', 'The foreground color for namespace symbols. These symbols appear in the outline, breadcrumb, and suggest widget.'));\nconst SYMBOL_ICON_NULL_FOREGROUND = (0,_platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_2__.registerColor)('symbolIcon.nullForeground', {\n dark: _platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_2__.foreground,\n light: _platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_2__.foreground,\n hcDark: _platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_2__.foreground,\n hcLight: _platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_2__.foreground\n}, (0,_nls_js__WEBPACK_IMPORTED_MODULE_1__.localize)('symbolIcon.nullForeground', 'The foreground color for null symbols. These symbols appear in the outline, breadcrumb, and suggest widget.'));\nconst SYMBOL_ICON_NUMBER_FOREGROUND = (0,_platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_2__.registerColor)('symbolIcon.numberForeground', {\n dark: _platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_2__.foreground,\n light: _platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_2__.foreground,\n hcDark: _platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_2__.foreground,\n hcLight: _platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_2__.foreground\n}, (0,_nls_js__WEBPACK_IMPORTED_MODULE_1__.localize)('symbolIcon.numberForeground', 'The foreground color for number symbols. These symbols appear in the outline, breadcrumb, and suggest widget.'));\nconst SYMBOL_ICON_OBJECT_FOREGROUND = (0,_platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_2__.registerColor)('symbolIcon.objectForeground', {\n dark: _platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_2__.foreground,\n light: _platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_2__.foreground,\n hcDark: _platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_2__.foreground,\n hcLight: _platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_2__.foreground\n}, (0,_nls_js__WEBPACK_IMPORTED_MODULE_1__.localize)('symbolIcon.objectForeground', 'The foreground color for object symbols. These symbols appear in the outline, breadcrumb, and suggest widget.'));\nconst SYMBOL_ICON_OPERATOR_FOREGROUND = (0,_platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_2__.registerColor)('symbolIcon.operatorForeground', {\n dark: _platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_2__.foreground,\n light: _platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_2__.foreground,\n hcDark: _platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_2__.foreground,\n hcLight: _platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_2__.foreground\n}, (0,_nls_js__WEBPACK_IMPORTED_MODULE_1__.localize)('symbolIcon.operatorForeground', 'The foreground color for operator symbols. These symbols appear in the outline, breadcrumb, and suggest widget.'));\nconst SYMBOL_ICON_PACKAGE_FOREGROUND = (0,_platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_2__.registerColor)('symbolIcon.packageForeground', {\n dark: _platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_2__.foreground,\n light: _platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_2__.foreground,\n hcDark: _platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_2__.foreground,\n hcLight: _platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_2__.foreground\n}, (0,_nls_js__WEBPACK_IMPORTED_MODULE_1__.localize)('symbolIcon.packageForeground', 'The foreground color for package symbols. These symbols appear in the outline, breadcrumb, and suggest widget.'));\nconst SYMBOL_ICON_PROPERTY_FOREGROUND = (0,_platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_2__.registerColor)('symbolIcon.propertyForeground', {\n dark: _platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_2__.foreground,\n light: _platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_2__.foreground,\n hcDark: _platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_2__.foreground,\n hcLight: _platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_2__.foreground\n}, (0,_nls_js__WEBPACK_IMPORTED_MODULE_1__.localize)('symbolIcon.propertyForeground', 'The foreground color for property symbols. These symbols appear in the outline, breadcrumb, and suggest widget.'));\nconst SYMBOL_ICON_REFERENCE_FOREGROUND = (0,_platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_2__.registerColor)('symbolIcon.referenceForeground', {\n dark: _platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_2__.foreground,\n light: _platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_2__.foreground,\n hcDark: _platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_2__.foreground,\n hcLight: _platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_2__.foreground\n}, (0,_nls_js__WEBPACK_IMPORTED_MODULE_1__.localize)('symbolIcon.referenceForeground', 'The foreground color for reference symbols. These symbols appear in the outline, breadcrumb, and suggest widget.'));\nconst SYMBOL_ICON_SNIPPET_FOREGROUND = (0,_platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_2__.registerColor)('symbolIcon.snippetForeground', {\n dark: _platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_2__.foreground,\n light: _platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_2__.foreground,\n hcDark: _platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_2__.foreground,\n hcLight: _platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_2__.foreground\n}, (0,_nls_js__WEBPACK_IMPORTED_MODULE_1__.localize)('symbolIcon.snippetForeground', 'The foreground color for snippet symbols. These symbols appear in the outline, breadcrumb, and suggest widget.'));\nconst SYMBOL_ICON_STRING_FOREGROUND = (0,_platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_2__.registerColor)('symbolIcon.stringForeground', {\n dark: _platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_2__.foreground,\n light: _platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_2__.foreground,\n hcDark: _platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_2__.foreground,\n hcLight: _platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_2__.foreground\n}, (0,_nls_js__WEBPACK_IMPORTED_MODULE_1__.localize)('symbolIcon.stringForeground', 'The foreground color for string symbols. These symbols appear in the outline, breadcrumb, and suggest widget.'));\nconst SYMBOL_ICON_STRUCT_FOREGROUND = (0,_platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_2__.registerColor)('symbolIcon.structForeground', {\n dark: _platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_2__.foreground,\n light: _platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_2__.foreground,\n hcDark: _platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_2__.foreground,\n hcLight: _platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_2__.foreground,\n}, (0,_nls_js__WEBPACK_IMPORTED_MODULE_1__.localize)('symbolIcon.structForeground', 'The foreground color for struct symbols. These symbols appear in the outline, breadcrumb, and suggest widget.'));\nconst SYMBOL_ICON_TEXT_FOREGROUND = (0,_platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_2__.registerColor)('symbolIcon.textForeground', {\n dark: _platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_2__.foreground,\n light: _platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_2__.foreground,\n hcDark: _platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_2__.foreground,\n hcLight: _platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_2__.foreground\n}, (0,_nls_js__WEBPACK_IMPORTED_MODULE_1__.localize)('symbolIcon.textForeground', 'The foreground color for text symbols. These symbols appear in the outline, breadcrumb, and suggest widget.'));\nconst SYMBOL_ICON_TYPEPARAMETER_FOREGROUND = (0,_platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_2__.registerColor)('symbolIcon.typeParameterForeground', {\n dark: _platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_2__.foreground,\n light: _platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_2__.foreground,\n hcDark: _platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_2__.foreground,\n hcLight: _platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_2__.foreground\n}, (0,_nls_js__WEBPACK_IMPORTED_MODULE_1__.localize)('symbolIcon.typeParameterForeground', 'The foreground color for type parameter symbols. These symbols appear in the outline, breadcrumb, and suggest widget.'));\nconst SYMBOL_ICON_UNIT_FOREGROUND = (0,_platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_2__.registerColor)('symbolIcon.unitForeground', {\n dark: _platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_2__.foreground,\n light: _platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_2__.foreground,\n hcDark: _platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_2__.foreground,\n hcLight: _platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_2__.foreground\n}, (0,_nls_js__WEBPACK_IMPORTED_MODULE_1__.localize)('symbolIcon.unitForeground', 'The foreground color for unit symbols. These symbols appear in the outline, breadcrumb, and suggest widget.'));\nconst SYMBOL_ICON_VARIABLE_FOREGROUND = (0,_platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_2__.registerColor)('symbolIcon.variableForeground', {\n dark: '#75BEFF',\n light: '#007ACC',\n hcDark: '#75BEFF',\n hcLight: '#007ACC',\n}, (0,_nls_js__WEBPACK_IMPORTED_MODULE_1__.localize)('symbolIcon.variableForeground', 'The foreground color for variable symbols. These symbols appear in the outline, breadcrumb, and suggest widget.'));\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/contrib/symbolIcons/browser/symbolIcons.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/contrib/toggleTabFocusMode/browser/toggleTabFocusMode.js":
/*!***********************************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/contrib/toggleTabFocusMode/browser/toggleTabFocusMode.js ***!
\***********************************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ ToggleTabFocusModeAction: () => (/* binding */ ToggleTabFocusModeAction)\n/* harmony export */ });\n/* harmony import */ var _base_browser_ui_aria_aria_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../../base/browser/ui/aria/aria.js */ \"./node_modules/monaco-editor/esm/vs/base/browser/ui/aria/aria.js\");\n/* harmony import */ var _browser_config_tabFocus_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../browser/config/tabFocus.js */ \"./node_modules/monaco-editor/esm/vs/editor/browser/config/tabFocus.js\");\n/* harmony import */ var _nls_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../../nls.js */ \"./node_modules/monaco-editor/esm/vs/nls.js\");\n/* harmony import */ var _platform_actions_common_actions_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../../../platform/actions/common/actions.js */ \"./node_modules/monaco-editor/esm/vs/platform/actions/common/actions.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n\n\n\nclass ToggleTabFocusModeAction extends _platform_actions_common_actions_js__WEBPACK_IMPORTED_MODULE_3__.Action2 {\n constructor() {\n super({\n id: ToggleTabFocusModeAction.ID,\n title: _nls_js__WEBPACK_IMPORTED_MODULE_2__.localize2({ key: 'toggle.tabMovesFocus', comment: ['Turn on/off use of tab key for moving focus around VS Code'] }, 'Toggle Tab Key Moves Focus'),\n precondition: undefined,\n keybinding: {\n primary: 2048 /* KeyMod.CtrlCmd */ | 43 /* KeyCode.KeyM */,\n mac: { primary: 256 /* KeyMod.WinCtrl */ | 1024 /* KeyMod.Shift */ | 43 /* KeyCode.KeyM */ },\n weight: 100 /* KeybindingWeight.EditorContrib */\n },\n f1: true\n });\n }\n run() {\n const oldValue = _browser_config_tabFocus_js__WEBPACK_IMPORTED_MODULE_1__.TabFocus.getTabFocusMode();\n const newValue = !oldValue;\n _browser_config_tabFocus_js__WEBPACK_IMPORTED_MODULE_1__.TabFocus.setTabFocusMode(newValue);\n if (newValue) {\n (0,_base_browser_ui_aria_aria_js__WEBPACK_IMPORTED_MODULE_0__.alert)(_nls_js__WEBPACK_IMPORTED_MODULE_2__.localize('toggle.tabMovesFocus.on', \"Pressing Tab will now move focus to the next focusable element\"));\n }\n else {\n (0,_base_browser_ui_aria_aria_js__WEBPACK_IMPORTED_MODULE_0__.alert)(_nls_js__WEBPACK_IMPORTED_MODULE_2__.localize('toggle.tabMovesFocus.off', \"Pressing Tab will now insert the tab character\"));\n }\n }\n}\nToggleTabFocusModeAction.ID = 'editor.action.toggleTabFocusMode';\n(0,_platform_actions_common_actions_js__WEBPACK_IMPORTED_MODULE_3__.registerAction2)(ToggleTabFocusModeAction);\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/contrib/toggleTabFocusMode/browser/toggleTabFocusMode.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/contrib/tokenization/browser/tokenization.js":
/*!***********************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/contrib/tokenization/browser/tokenization.js ***!
\***********************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var _base_common_stopwatch_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../../base/common/stopwatch.js */ \"./node_modules/monaco-editor/esm/vs/base/common/stopwatch.js\");\n/* harmony import */ var _browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../browser/editorExtensions.js */ \"./node_modules/monaco-editor/esm/vs/editor/browser/editorExtensions.js\");\n/* harmony import */ var _nls_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../../nls.js */ \"./node_modules/monaco-editor/esm/vs/nls.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n\n\nclass ForceRetokenizeAction extends _browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_1__.EditorAction {\n constructor() {\n super({\n id: 'editor.action.forceRetokenize',\n label: _nls_js__WEBPACK_IMPORTED_MODULE_2__.localize('forceRetokenize', \"Developer: Force Retokenize\"),\n alias: 'Developer: Force Retokenize',\n precondition: undefined\n });\n }\n run(accessor, editor) {\n if (!editor.hasModel()) {\n return;\n }\n const model = editor.getModel();\n model.tokenization.resetTokenization();\n const sw = new _base_common_stopwatch_js__WEBPACK_IMPORTED_MODULE_0__.StopWatch();\n model.tokenization.forceTokenization(model.getLineCount());\n sw.stop();\n console.log(`tokenization took ${sw.elapsed()}`);\n }\n}\n(0,_browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_1__.registerEditorAction)(ForceRetokenizeAction);\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/contrib/tokenization/browser/tokenization.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/contrib/unicodeHighlighter/browser/bannerController.js":
/*!*********************************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/contrib/unicodeHighlighter/browser/bannerController.js ***!
\*********************************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ BannerController: () => (/* binding */ BannerController)\n/* harmony export */ });\n/* harmony import */ var _bannerController_css__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./bannerController.css */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/unicodeHighlighter/browser/bannerController.css\");\n/* harmony import */ var _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../base/browser/dom.js */ \"./node_modules/monaco-editor/esm/vs/base/browser/dom.js\");\n/* harmony import */ var _base_browser_ui_actionbar_actionbar_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../../base/browser/ui/actionbar/actionbar.js */ \"./node_modules/monaco-editor/esm/vs/base/browser/ui/actionbar/actionbar.js\");\n/* harmony import */ var _base_common_actions_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../../../base/common/actions.js */ \"./node_modules/monaco-editor/esm/vs/base/common/actions.js\");\n/* harmony import */ var _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../../../base/common/lifecycle.js */ \"./node_modules/monaco-editor/esm/vs/base/common/lifecycle.js\");\n/* harmony import */ var _browser_widget_markdownRenderer_browser_markdownRenderer_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../../../browser/widget/markdownRenderer/browser/markdownRenderer.js */ \"./node_modules/monaco-editor/esm/vs/editor/browser/widget/markdownRenderer/browser/markdownRenderer.js\");\n/* harmony import */ var _platform_instantiation_common_instantiation_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../../../../platform/instantiation/common/instantiation.js */ \"./node_modules/monaco-editor/esm/vs/platform/instantiation/common/instantiation.js\");\n/* harmony import */ var _platform_opener_browser_link_js__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ../../../../platform/opener/browser/link.js */ \"./node_modules/monaco-editor/esm/vs/platform/opener/browser/link.js\");\n/* harmony import */ var _platform_theme_common_iconRegistry_js__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ../../../../platform/theme/common/iconRegistry.js */ \"./node_modules/monaco-editor/esm/vs/platform/theme/common/iconRegistry.js\");\n/* harmony import */ var _base_common_themables_js__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ../../../../base/common/themables.js */ \"./node_modules/monaco-editor/esm/vs/base/common/themables.js\");\nvar __decorate = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\n return c > 3 && r && Object.defineProperty(target, key, r), r;\n};\nvar __param = (undefined && undefined.__param) || function (paramIndex, decorator) {\n return function (target, key) { decorator(target, key, paramIndex); }\n};\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n\n\n\n\n\n\n\n\n\nconst BANNER_ELEMENT_HEIGHT = 26;\nlet BannerController = class BannerController extends _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_4__.Disposable {\n constructor(_editor, instantiationService) {\n super();\n this._editor = _editor;\n this.instantiationService = instantiationService;\n this.banner = this._register(this.instantiationService.createInstance(Banner));\n }\n hide() {\n this._editor.setBanner(null, 0);\n this.banner.clear();\n }\n show(item) {\n this.banner.show({\n ...item,\n onClose: () => {\n var _a;\n this.hide();\n (_a = item.onClose) === null || _a === void 0 ? void 0 : _a.call(item);\n }\n });\n this._editor.setBanner(this.banner.element, BANNER_ELEMENT_HEIGHT);\n }\n};\nBannerController = __decorate([\n __param(1, _platform_instantiation_common_instantiation_js__WEBPACK_IMPORTED_MODULE_6__.IInstantiationService)\n], BannerController);\n\n// TODO@hediet: Investigate if this can be reused by the workspace banner (bannerPart.ts).\nlet Banner = class Banner extends _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_4__.Disposable {\n constructor(instantiationService) {\n super();\n this.instantiationService = instantiationService;\n this.markdownRenderer = this.instantiationService.createInstance(_browser_widget_markdownRenderer_browser_markdownRenderer_js__WEBPACK_IMPORTED_MODULE_5__.MarkdownRenderer, {});\n this.element = (0,_base_browser_dom_js__WEBPACK_IMPORTED_MODULE_1__.$)('div.editor-banner');\n this.element.tabIndex = 0;\n }\n getAriaLabel(item) {\n if (item.ariaLabel) {\n return item.ariaLabel;\n }\n if (typeof item.message === 'string') {\n return item.message;\n }\n return undefined;\n }\n getBannerMessage(message) {\n if (typeof message === 'string') {\n const element = (0,_base_browser_dom_js__WEBPACK_IMPORTED_MODULE_1__.$)('span');\n element.innerText = message;\n return element;\n }\n return this.markdownRenderer.render(message).element;\n }\n clear() {\n (0,_base_browser_dom_js__WEBPACK_IMPORTED_MODULE_1__.clearNode)(this.element);\n }\n show(item) {\n // Clear previous item\n (0,_base_browser_dom_js__WEBPACK_IMPORTED_MODULE_1__.clearNode)(this.element);\n // Banner aria label\n const ariaLabel = this.getAriaLabel(item);\n if (ariaLabel) {\n this.element.setAttribute('aria-label', ariaLabel);\n }\n // Icon\n const iconContainer = (0,_base_browser_dom_js__WEBPACK_IMPORTED_MODULE_1__.append)(this.element, (0,_base_browser_dom_js__WEBPACK_IMPORTED_MODULE_1__.$)('div.icon-container'));\n iconContainer.setAttribute('aria-hidden', 'true');\n if (item.icon) {\n iconContainer.appendChild((0,_base_browser_dom_js__WEBPACK_IMPORTED_MODULE_1__.$)(`div${_base_common_themables_js__WEBPACK_IMPORTED_MODULE_9__.ThemeIcon.asCSSSelector(item.icon)}`));\n }\n // Message\n const messageContainer = (0,_base_browser_dom_js__WEBPACK_IMPORTED_MODULE_1__.append)(this.element, (0,_base_browser_dom_js__WEBPACK_IMPORTED_MODULE_1__.$)('div.message-container'));\n messageContainer.setAttribute('aria-hidden', 'true');\n messageContainer.appendChild(this.getBannerMessage(item.message));\n // Message Actions\n this.messageActionsContainer = (0,_base_browser_dom_js__WEBPACK_IMPORTED_MODULE_1__.append)(this.element, (0,_base_browser_dom_js__WEBPACK_IMPORTED_MODULE_1__.$)('div.message-actions-container'));\n if (item.actions) {\n for (const action of item.actions) {\n this._register(this.instantiationService.createInstance(_platform_opener_browser_link_js__WEBPACK_IMPORTED_MODULE_7__.Link, this.messageActionsContainer, { ...action, tabIndex: -1 }, {}));\n }\n }\n // Action\n const actionBarContainer = (0,_base_browser_dom_js__WEBPACK_IMPORTED_MODULE_1__.append)(this.element, (0,_base_browser_dom_js__WEBPACK_IMPORTED_MODULE_1__.$)('div.action-container'));\n this.actionBar = this._register(new _base_browser_ui_actionbar_actionbar_js__WEBPACK_IMPORTED_MODULE_2__.ActionBar(actionBarContainer));\n this.actionBar.push(this._register(new _base_common_actions_js__WEBPACK_IMPORTED_MODULE_3__.Action('banner.close', 'Close Banner', _base_common_themables_js__WEBPACK_IMPORTED_MODULE_9__.ThemeIcon.asClassName(_platform_theme_common_iconRegistry_js__WEBPACK_IMPORTED_MODULE_8__.widgetClose), true, () => {\n if (typeof item.onClose === 'function') {\n item.onClose();\n }\n })), { icon: true, label: false });\n this.actionBar.setFocusable(false);\n }\n};\nBanner = __decorate([\n __param(0, _platform_instantiation_common_instantiation_js__WEBPACK_IMPORTED_MODULE_6__.IInstantiationService)\n], Banner);\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/contrib/unicodeHighlighter/browser/bannerController.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/contrib/unicodeHighlighter/browser/unicodeHighlighter.js":
/*!***********************************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/contrib/unicodeHighlighter/browser/unicodeHighlighter.js ***!
\***********************************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ DisableHighlightingInCommentsAction: () => (/* binding */ DisableHighlightingInCommentsAction),\n/* harmony export */ DisableHighlightingInStringsAction: () => (/* binding */ DisableHighlightingInStringsAction),\n/* harmony export */ DisableHighlightingOfAmbiguousCharactersAction: () => (/* binding */ DisableHighlightingOfAmbiguousCharactersAction),\n/* harmony export */ DisableHighlightingOfInvisibleCharactersAction: () => (/* binding */ DisableHighlightingOfInvisibleCharactersAction),\n/* harmony export */ DisableHighlightingOfNonBasicAsciiCharactersAction: () => (/* binding */ DisableHighlightingOfNonBasicAsciiCharactersAction),\n/* harmony export */ ShowExcludeOptions: () => (/* binding */ ShowExcludeOptions),\n/* harmony export */ UnicodeHighlighter: () => (/* binding */ UnicodeHighlighter),\n/* harmony export */ UnicodeHighlighterHoverParticipant: () => (/* binding */ UnicodeHighlighterHoverParticipant),\n/* harmony export */ warningIcon: () => (/* binding */ warningIcon)\n/* harmony export */ });\n/* harmony import */ var _base_common_async_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../../base/common/async.js */ \"./node_modules/monaco-editor/esm/vs/base/common/async.js\");\n/* harmony import */ var _base_common_codicons_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../base/common/codicons.js */ \"./node_modules/monaco-editor/esm/vs/base/common/codicons.js\");\n/* harmony import */ var _base_common_htmlContent_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../../base/common/htmlContent.js */ \"./node_modules/monaco-editor/esm/vs/base/common/htmlContent.js\");\n/* harmony import */ var _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../../../base/common/lifecycle.js */ \"./node_modules/monaco-editor/esm/vs/base/common/lifecycle.js\");\n/* harmony import */ var _base_common_platform_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../../../base/common/platform.js */ \"./node_modules/monaco-editor/esm/vs/base/common/platform.js\");\n/* harmony import */ var _base_common_strings_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../../../../base/common/strings.js */ \"./node_modules/monaco-editor/esm/vs/base/common/strings.js\");\n/* harmony import */ var _unicodeHighlighter_css__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ./unicodeHighlighter.css */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/unicodeHighlighter/browser/unicodeHighlighter.css\");\n/* harmony import */ var _browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ../../../browser/editorExtensions.js */ \"./node_modules/monaco-editor/esm/vs/editor/browser/editorExtensions.js\");\n/* harmony import */ var _common_config_editorOptions_js__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ../../../common/config/editorOptions.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/config/editorOptions.js\");\n/* harmony import */ var _common_model_textModel_js__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ../../../common/model/textModel.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/model/textModel.js\");\n/* harmony import */ var _common_services_unicodeTextModelHighlighter_js__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! ../../../common/services/unicodeTextModelHighlighter.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/services/unicodeTextModelHighlighter.js\");\n/* harmony import */ var _common_services_editorWorker_js__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(/*! ../../../common/services/editorWorker.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/services/editorWorker.js\");\n/* harmony import */ var _common_languages_language_js__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(/*! ../../../common/languages/language.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/languages/language.js\");\n/* harmony import */ var _common_viewModel_viewModelDecorations_js__WEBPACK_IMPORTED_MODULE_13__ = __webpack_require__(/*! ../../../common/viewModel/viewModelDecorations.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/viewModel/viewModelDecorations.js\");\n/* harmony import */ var _hover_browser_hoverTypes_js__WEBPACK_IMPORTED_MODULE_14__ = __webpack_require__(/*! ../../hover/browser/hoverTypes.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/hover/browser/hoverTypes.js\");\n/* harmony import */ var _hover_browser_markdownHoverParticipant_js__WEBPACK_IMPORTED_MODULE_15__ = __webpack_require__(/*! ../../hover/browser/markdownHoverParticipant.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/hover/browser/markdownHoverParticipant.js\");\n/* harmony import */ var _bannerController_js__WEBPACK_IMPORTED_MODULE_16__ = __webpack_require__(/*! ./bannerController.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/unicodeHighlighter/browser/bannerController.js\");\n/* harmony import */ var _nls_js__WEBPACK_IMPORTED_MODULE_17__ = __webpack_require__(/*! ../../../../nls.js */ \"./node_modules/monaco-editor/esm/vs/nls.js\");\n/* harmony import */ var _platform_configuration_common_configuration_js__WEBPACK_IMPORTED_MODULE_18__ = __webpack_require__(/*! ../../../../platform/configuration/common/configuration.js */ \"./node_modules/monaco-editor/esm/vs/platform/configuration/common/configuration.js\");\n/* harmony import */ var _platform_instantiation_common_instantiation_js__WEBPACK_IMPORTED_MODULE_19__ = __webpack_require__(/*! ../../../../platform/instantiation/common/instantiation.js */ \"./node_modules/monaco-editor/esm/vs/platform/instantiation/common/instantiation.js\");\n/* harmony import */ var _platform_opener_common_opener_js__WEBPACK_IMPORTED_MODULE_20__ = __webpack_require__(/*! ../../../../platform/opener/common/opener.js */ \"./node_modules/monaco-editor/esm/vs/platform/opener/common/opener.js\");\n/* harmony import */ var _platform_quickinput_common_quickInput_js__WEBPACK_IMPORTED_MODULE_21__ = __webpack_require__(/*! ../../../../platform/quickinput/common/quickInput.js */ \"./node_modules/monaco-editor/esm/vs/platform/quickinput/common/quickInput.js\");\n/* harmony import */ var _platform_theme_common_iconRegistry_js__WEBPACK_IMPORTED_MODULE_22__ = __webpack_require__(/*! ../../../../platform/theme/common/iconRegistry.js */ \"./node_modules/monaco-editor/esm/vs/platform/theme/common/iconRegistry.js\");\n/* harmony import */ var _platform_workspace_common_workspaceTrust_js__WEBPACK_IMPORTED_MODULE_23__ = __webpack_require__(/*! ../../../../platform/workspace/common/workspaceTrust.js */ \"./node_modules/monaco-editor/esm/vs/platform/workspace/common/workspaceTrust.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\nvar __decorate = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\n return c > 3 && r && Object.defineProperty(target, key, r), r;\n};\nvar __param = (undefined && undefined.__param) || function (paramIndex, decorator) {\n return function (target, key) { decorator(target, key, paramIndex); }\n};\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nconst warningIcon = (0,_platform_theme_common_iconRegistry_js__WEBPACK_IMPORTED_MODULE_22__.registerIcon)('extensions-warning-message', _base_common_codicons_js__WEBPACK_IMPORTED_MODULE_1__.Codicon.warning, _nls_js__WEBPACK_IMPORTED_MODULE_17__.localize('warningIcon', 'Icon shown with a warning message in the extensions editor.'));\nlet UnicodeHighlighter = class UnicodeHighlighter extends _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_3__.Disposable {\n constructor(_editor, _editorWorkerService, _workspaceTrustService, instantiationService) {\n super();\n this._editor = _editor;\n this._editorWorkerService = _editorWorkerService;\n this._workspaceTrustService = _workspaceTrustService;\n this._highlighter = null;\n this._bannerClosed = false;\n this._updateState = (state) => {\n if (state && state.hasMore) {\n if (this._bannerClosed) {\n return;\n }\n // This document contains many non-basic ASCII characters.\n const max = Math.max(state.ambiguousCharacterCount, state.nonBasicAsciiCharacterCount, state.invisibleCharacterCount);\n let data;\n if (state.nonBasicAsciiCharacterCount >= max) {\n data = {\n message: _nls_js__WEBPACK_IMPORTED_MODULE_17__.localize('unicodeHighlighting.thisDocumentHasManyNonBasicAsciiUnicodeCharacters', 'This document contains many non-basic ASCII unicode characters'),\n command: new DisableHighlightingOfNonBasicAsciiCharactersAction(),\n };\n }\n else if (state.ambiguousCharacterCount >= max) {\n data = {\n message: _nls_js__WEBPACK_IMPORTED_MODULE_17__.localize('unicodeHighlighting.thisDocumentHasManyAmbiguousUnicodeCharacters', 'This document contains many ambiguous unicode characters'),\n command: new DisableHighlightingOfAmbiguousCharactersAction(),\n };\n }\n else if (state.invisibleCharacterCount >= max) {\n data = {\n message: _nls_js__WEBPACK_IMPORTED_MODULE_17__.localize('unicodeHighlighting.thisDocumentHasManyInvisibleUnicodeCharacters', 'This document contains many invisible unicode characters'),\n command: new DisableHighlightingOfInvisibleCharactersAction(),\n };\n }\n else {\n throw new Error('Unreachable');\n }\n this._bannerController.show({\n id: 'unicodeHighlightBanner',\n message: data.message,\n icon: warningIcon,\n actions: [\n {\n label: data.command.shortLabel,\n href: `command:${data.command.id}`\n }\n ],\n onClose: () => {\n this._bannerClosed = true;\n },\n });\n }\n else {\n this._bannerController.hide();\n }\n };\n this._bannerController = this._register(instantiationService.createInstance(_bannerController_js__WEBPACK_IMPORTED_MODULE_16__.BannerController, _editor));\n this._register(this._editor.onDidChangeModel(() => {\n this._bannerClosed = false;\n this._updateHighlighter();\n }));\n this._options = _editor.getOption(125 /* EditorOption.unicodeHighlighting */);\n this._register(_workspaceTrustService.onDidChangeTrust(e => {\n this._updateHighlighter();\n }));\n this._register(_editor.onDidChangeConfiguration(e => {\n if (e.hasChanged(125 /* EditorOption.unicodeHighlighting */)) {\n this._options = _editor.getOption(125 /* EditorOption.unicodeHighlighting */);\n this._updateHighlighter();\n }\n }));\n this._updateHighlighter();\n }\n dispose() {\n if (this._highlighter) {\n this._highlighter.dispose();\n this._highlighter = null;\n }\n super.dispose();\n }\n _updateHighlighter() {\n this._updateState(null);\n if (this._highlighter) {\n this._highlighter.dispose();\n this._highlighter = null;\n }\n if (!this._editor.hasModel()) {\n return;\n }\n const options = resolveOptions(this._workspaceTrustService.isWorkspaceTrusted(), this._options);\n if ([\n options.nonBasicASCII,\n options.ambiguousCharacters,\n options.invisibleCharacters,\n ].every((option) => option === false)) {\n // Don't do anything if the feature is fully disabled\n return;\n }\n const highlightOptions = {\n nonBasicASCII: options.nonBasicASCII,\n ambiguousCharacters: options.ambiguousCharacters,\n invisibleCharacters: options.invisibleCharacters,\n includeComments: options.includeComments,\n includeStrings: options.includeStrings,\n allowedCodePoints: Object.keys(options.allowedCharacters).map(c => c.codePointAt(0)),\n allowedLocales: Object.keys(options.allowedLocales).map(locale => {\n if (locale === '_os') {\n const osLocale = new Intl.NumberFormat().resolvedOptions().locale;\n return osLocale;\n }\n else if (locale === '_vscode') {\n return _base_common_platform_js__WEBPACK_IMPORTED_MODULE_4__.language;\n }\n return locale;\n }),\n };\n if (this._editorWorkerService.canComputeUnicodeHighlights(this._editor.getModel().uri)) {\n this._highlighter = new DocumentUnicodeHighlighter(this._editor, highlightOptions, this._updateState, this._editorWorkerService);\n }\n else {\n this._highlighter = new ViewportUnicodeHighlighter(this._editor, highlightOptions, this._updateState);\n }\n }\n getDecorationInfo(decoration) {\n if (this._highlighter) {\n return this._highlighter.getDecorationInfo(decoration);\n }\n return null;\n }\n};\nUnicodeHighlighter.ID = 'editor.contrib.unicodeHighlighter';\nUnicodeHighlighter = __decorate([\n __param(1, _common_services_editorWorker_js__WEBPACK_IMPORTED_MODULE_11__.IEditorWorkerService),\n __param(2, _platform_workspace_common_workspaceTrust_js__WEBPACK_IMPORTED_MODULE_23__.IWorkspaceTrustManagementService),\n __param(3, _platform_instantiation_common_instantiation_js__WEBPACK_IMPORTED_MODULE_19__.IInstantiationService)\n], UnicodeHighlighter);\n\nfunction resolveOptions(trusted, options) {\n return {\n nonBasicASCII: options.nonBasicASCII === _common_config_editorOptions_js__WEBPACK_IMPORTED_MODULE_8__.inUntrustedWorkspace ? !trusted : options.nonBasicASCII,\n ambiguousCharacters: options.ambiguousCharacters,\n invisibleCharacters: options.invisibleCharacters,\n includeComments: options.includeComments === _common_config_editorOptions_js__WEBPACK_IMPORTED_MODULE_8__.inUntrustedWorkspace ? !trusted : options.includeComments,\n includeStrings: options.includeStrings === _common_config_editorOptions_js__WEBPACK_IMPORTED_MODULE_8__.inUntrustedWorkspace ? !trusted : options.includeStrings,\n allowedCharacters: options.allowedCharacters,\n allowedLocales: options.allowedLocales,\n };\n}\nlet DocumentUnicodeHighlighter = class DocumentUnicodeHighlighter extends _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_3__.Disposable {\n constructor(_editor, _options, _updateState, _editorWorkerService) {\n super();\n this._editor = _editor;\n this._options = _options;\n this._updateState = _updateState;\n this._editorWorkerService = _editorWorkerService;\n this._model = this._editor.getModel();\n this._decorations = this._editor.createDecorationsCollection();\n this._updateSoon = this._register(new _base_common_async_js__WEBPACK_IMPORTED_MODULE_0__.RunOnceScheduler(() => this._update(), 250));\n this._register(this._editor.onDidChangeModelContent(() => {\n this._updateSoon.schedule();\n }));\n this._updateSoon.schedule();\n }\n dispose() {\n this._decorations.clear();\n super.dispose();\n }\n _update() {\n if (this._model.isDisposed()) {\n return;\n }\n if (!this._model.mightContainNonBasicASCII()) {\n this._decorations.clear();\n return;\n }\n const modelVersionId = this._model.getVersionId();\n this._editorWorkerService\n .computedUnicodeHighlights(this._model.uri, this._options)\n .then((info) => {\n if (this._model.isDisposed()) {\n return;\n }\n if (this._model.getVersionId() !== modelVersionId) {\n // model changed in the meantime\n return;\n }\n this._updateState(info);\n const decorations = [];\n if (!info.hasMore) {\n // Don't show decoration if there are too many.\n // In this case, a banner is shown.\n for (const range of info.ranges) {\n decorations.push({\n range: range,\n options: Decorations.instance.getDecorationFromOptions(this._options),\n });\n }\n }\n this._decorations.set(decorations);\n });\n }\n getDecorationInfo(decoration) {\n if (!this._decorations.has(decoration)) {\n return null;\n }\n const model = this._editor.getModel();\n if (!(0,_common_viewModel_viewModelDecorations_js__WEBPACK_IMPORTED_MODULE_13__.isModelDecorationVisible)(model, decoration)) {\n return null;\n }\n const text = model.getValueInRange(decoration.range);\n return {\n reason: computeReason(text, this._options),\n inComment: (0,_common_viewModel_viewModelDecorations_js__WEBPACK_IMPORTED_MODULE_13__.isModelDecorationInComment)(model, decoration),\n inString: (0,_common_viewModel_viewModelDecorations_js__WEBPACK_IMPORTED_MODULE_13__.isModelDecorationInString)(model, decoration),\n };\n }\n};\nDocumentUnicodeHighlighter = __decorate([\n __param(3, _common_services_editorWorker_js__WEBPACK_IMPORTED_MODULE_11__.IEditorWorkerService)\n], DocumentUnicodeHighlighter);\nclass ViewportUnicodeHighlighter extends _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_3__.Disposable {\n constructor(_editor, _options, _updateState) {\n super();\n this._editor = _editor;\n this._options = _options;\n this._updateState = _updateState;\n this._model = this._editor.getModel();\n this._decorations = this._editor.createDecorationsCollection();\n this._updateSoon = this._register(new _base_common_async_js__WEBPACK_IMPORTED_MODULE_0__.RunOnceScheduler(() => this._update(), 250));\n this._register(this._editor.onDidLayoutChange(() => {\n this._updateSoon.schedule();\n }));\n this._register(this._editor.onDidScrollChange(() => {\n this._updateSoon.schedule();\n }));\n this._register(this._editor.onDidChangeHiddenAreas(() => {\n this._updateSoon.schedule();\n }));\n this._register(this._editor.onDidChangeModelContent(() => {\n this._updateSoon.schedule();\n }));\n this._updateSoon.schedule();\n }\n dispose() {\n this._decorations.clear();\n super.dispose();\n }\n _update() {\n if (this._model.isDisposed()) {\n return;\n }\n if (!this._model.mightContainNonBasicASCII()) {\n this._decorations.clear();\n return;\n }\n const ranges = this._editor.getVisibleRanges();\n const decorations = [];\n const totalResult = {\n ranges: [],\n ambiguousCharacterCount: 0,\n invisibleCharacterCount: 0,\n nonBasicAsciiCharacterCount: 0,\n hasMore: false,\n };\n for (const range of ranges) {\n const result = _common_services_unicodeTextModelHighlighter_js__WEBPACK_IMPORTED_MODULE_10__.UnicodeTextModelHighlighter.computeUnicodeHighlights(this._model, this._options, range);\n for (const r of result.ranges) {\n totalResult.ranges.push(r);\n }\n totalResult.ambiguousCharacterCount += totalResult.ambiguousCharacterCount;\n totalResult.invisibleCharacterCount += totalResult.invisibleCharacterCount;\n totalResult.nonBasicAsciiCharacterCount += totalResult.nonBasicAsciiCharacterCount;\n totalResult.hasMore = totalResult.hasMore || result.hasMore;\n }\n if (!totalResult.hasMore) {\n // Don't show decorations if there are too many.\n // A banner will be shown instead.\n for (const range of totalResult.ranges) {\n decorations.push({ range, options: Decorations.instance.getDecorationFromOptions(this._options) });\n }\n }\n this._updateState(totalResult);\n this._decorations.set(decorations);\n }\n getDecorationInfo(decoration) {\n if (!this._decorations.has(decoration)) {\n return null;\n }\n const model = this._editor.getModel();\n const text = model.getValueInRange(decoration.range);\n if (!(0,_common_viewModel_viewModelDecorations_js__WEBPACK_IMPORTED_MODULE_13__.isModelDecorationVisible)(model, decoration)) {\n return null;\n }\n return {\n reason: computeReason(text, this._options),\n inComment: (0,_common_viewModel_viewModelDecorations_js__WEBPACK_IMPORTED_MODULE_13__.isModelDecorationInComment)(model, decoration),\n inString: (0,_common_viewModel_viewModelDecorations_js__WEBPACK_IMPORTED_MODULE_13__.isModelDecorationInString)(model, decoration),\n };\n }\n}\nconst configureUnicodeHighlightOptionsStr = _nls_js__WEBPACK_IMPORTED_MODULE_17__.localize('unicodeHighlight.configureUnicodeHighlightOptions', 'Configure Unicode Highlight Options');\nlet UnicodeHighlighterHoverParticipant = class UnicodeHighlighterHoverParticipant {\n constructor(_editor, _languageService, _openerService) {\n this._editor = _editor;\n this._languageService = _languageService;\n this._openerService = _openerService;\n this.hoverOrdinal = 5;\n }\n computeSync(anchor, lineDecorations) {\n if (!this._editor.hasModel() || anchor.type !== 1 /* HoverAnchorType.Range */) {\n return [];\n }\n const model = this._editor.getModel();\n const unicodeHighlighter = this._editor.getContribution(UnicodeHighlighter.ID);\n if (!unicodeHighlighter) {\n return [];\n }\n const result = [];\n const existedReason = new Set();\n let index = 300;\n for (const d of lineDecorations) {\n const highlightInfo = unicodeHighlighter.getDecorationInfo(d);\n if (!highlightInfo) {\n continue;\n }\n const char = model.getValueInRange(d.range);\n // text refers to a single character.\n const codePoint = char.codePointAt(0);\n const codePointStr = formatCodePointMarkdown(codePoint);\n let reason;\n switch (highlightInfo.reason.kind) {\n case 0 /* UnicodeHighlighterReasonKind.Ambiguous */: {\n if ((0,_base_common_strings_js__WEBPACK_IMPORTED_MODULE_5__.isBasicASCII)(highlightInfo.reason.confusableWith)) {\n reason = _nls_js__WEBPACK_IMPORTED_MODULE_17__.localize('unicodeHighlight.characterIsAmbiguousASCII', 'The character {0} could be confused with the ASCII character {1}, which is more common in source code.', codePointStr, formatCodePointMarkdown(highlightInfo.reason.confusableWith.codePointAt(0)));\n }\n else {\n reason = _nls_js__WEBPACK_IMPORTED_MODULE_17__.localize('unicodeHighlight.characterIsAmbiguous', 'The character {0} could be confused with the character {1}, which is more common in source code.', codePointStr, formatCodePointMarkdown(highlightInfo.reason.confusableWith.codePointAt(0)));\n }\n break;\n }\n case 1 /* UnicodeHighlighterReasonKind.Invisible */:\n reason = _nls_js__WEBPACK_IMPORTED_MODULE_17__.localize('unicodeHighlight.characterIsInvisible', 'The character {0} is invisible.', codePointStr);\n break;\n case 2 /* UnicodeHighlighterReasonKind.NonBasicAscii */:\n reason = _nls_js__WEBPACK_IMPORTED_MODULE_17__.localize('unicodeHighlight.characterIsNonBasicAscii', 'The character {0} is not a basic ASCII character.', codePointStr);\n break;\n }\n if (existedReason.has(reason)) {\n continue;\n }\n existedReason.add(reason);\n const adjustSettingsArgs = {\n codePoint: codePoint,\n reason: highlightInfo.reason,\n inComment: highlightInfo.inComment,\n inString: highlightInfo.inString,\n };\n const adjustSettings = _nls_js__WEBPACK_IMPORTED_MODULE_17__.localize('unicodeHighlight.adjustSettings', 'Adjust settings');\n const uri = `command:${ShowExcludeOptions.ID}?${encodeURIComponent(JSON.stringify(adjustSettingsArgs))}`;\n const markdown = new _base_common_htmlContent_js__WEBPACK_IMPORTED_MODULE_2__.MarkdownString('', true)\n .appendMarkdown(reason)\n .appendText(' ')\n .appendLink(uri, adjustSettings, configureUnicodeHighlightOptionsStr);\n result.push(new _hover_browser_markdownHoverParticipant_js__WEBPACK_IMPORTED_MODULE_15__.MarkdownHover(this, d.range, [markdown], false, index++));\n }\n return result;\n }\n renderHoverParts(context, hoverParts) {\n return (0,_hover_browser_markdownHoverParticipant_js__WEBPACK_IMPORTED_MODULE_15__.renderMarkdownHovers)(context, hoverParts, this._editor, this._languageService, this._openerService);\n }\n};\nUnicodeHighlighterHoverParticipant = __decorate([\n __param(1, _common_languages_language_js__WEBPACK_IMPORTED_MODULE_12__.ILanguageService),\n __param(2, _platform_opener_common_opener_js__WEBPACK_IMPORTED_MODULE_20__.IOpenerService)\n], UnicodeHighlighterHoverParticipant);\n\nfunction codePointToHex(codePoint) {\n return `U+${codePoint.toString(16).padStart(4, '0')}`;\n}\nfunction formatCodePointMarkdown(codePoint) {\n let value = `\\`${codePointToHex(codePoint)}\\``;\n if (!_base_common_strings_js__WEBPACK_IMPORTED_MODULE_5__.InvisibleCharacters.isInvisibleCharacter(codePoint)) {\n // Don't render any control characters or any invisible characters, as they cannot be seen anyways.\n value += ` \"${`${renderCodePointAsInlineCode(codePoint)}`}\"`;\n }\n return value;\n}\nfunction renderCodePointAsInlineCode(codePoint) {\n if (codePoint === 96 /* CharCode.BackTick */) {\n return '`` ` ``';\n }\n return '`' + String.fromCodePoint(codePoint) + '`';\n}\nfunction computeReason(char, options) {\n return _common_services_unicodeTextModelHighlighter_js__WEBPACK_IMPORTED_MODULE_10__.UnicodeTextModelHighlighter.computeUnicodeHighlightReason(char, options);\n}\nclass Decorations {\n constructor() {\n this.map = new Map();\n }\n getDecorationFromOptions(options) {\n return this.getDecoration(!options.includeComments, !options.includeStrings);\n }\n getDecoration(hideInComments, hideInStrings) {\n const key = `${hideInComments}${hideInStrings}`;\n let options = this.map.get(key);\n if (!options) {\n options = _common_model_textModel_js__WEBPACK_IMPORTED_MODULE_9__.ModelDecorationOptions.createDynamic({\n description: 'unicode-highlight',\n stickiness: 1 /* TrackedRangeStickiness.NeverGrowsWhenTypingAtEdges */,\n className: 'unicode-highlight',\n showIfCollapsed: true,\n overviewRuler: null,\n minimap: null,\n hideInCommentTokens: hideInComments,\n hideInStringTokens: hideInStrings,\n });\n this.map.set(key, options);\n }\n return options;\n }\n}\nDecorations.instance = new Decorations();\nclass DisableHighlightingInCommentsAction extends _browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_7__.EditorAction {\n constructor() {\n super({\n id: DisableHighlightingOfAmbiguousCharactersAction.ID,\n label: _nls_js__WEBPACK_IMPORTED_MODULE_17__.localize('action.unicodeHighlight.disableHighlightingInComments', 'Disable highlighting of characters in comments'),\n alias: 'Disable highlighting of characters in comments',\n precondition: undefined\n });\n this.shortLabel = _nls_js__WEBPACK_IMPORTED_MODULE_17__.localize('unicodeHighlight.disableHighlightingInComments.shortLabel', 'Disable Highlight In Comments');\n }\n async run(accessor, editor, args) {\n const configurationService = accessor === null || accessor === void 0 ? void 0 : accessor.get(_platform_configuration_common_configuration_js__WEBPACK_IMPORTED_MODULE_18__.IConfigurationService);\n if (configurationService) {\n this.runAction(configurationService);\n }\n }\n async runAction(configurationService) {\n await configurationService.updateValue(_common_config_editorOptions_js__WEBPACK_IMPORTED_MODULE_8__.unicodeHighlightConfigKeys.includeComments, false, 2 /* ConfigurationTarget.USER */);\n }\n}\nclass DisableHighlightingInStringsAction extends _browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_7__.EditorAction {\n constructor() {\n super({\n id: DisableHighlightingOfAmbiguousCharactersAction.ID,\n label: _nls_js__WEBPACK_IMPORTED_MODULE_17__.localize('action.unicodeHighlight.disableHighlightingInStrings', 'Disable highlighting of characters in strings'),\n alias: 'Disable highlighting of characters in strings',\n precondition: undefined\n });\n this.shortLabel = _nls_js__WEBPACK_IMPORTED_MODULE_17__.localize('unicodeHighlight.disableHighlightingInStrings.shortLabel', 'Disable Highlight In Strings');\n }\n async run(accessor, editor, args) {\n const configurationService = accessor === null || accessor === void 0 ? void 0 : accessor.get(_platform_configuration_common_configuration_js__WEBPACK_IMPORTED_MODULE_18__.IConfigurationService);\n if (configurationService) {\n this.runAction(configurationService);\n }\n }\n async runAction(configurationService) {\n await configurationService.updateValue(_common_config_editorOptions_js__WEBPACK_IMPORTED_MODULE_8__.unicodeHighlightConfigKeys.includeStrings, false, 2 /* ConfigurationTarget.USER */);\n }\n}\nclass DisableHighlightingOfAmbiguousCharactersAction extends _browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_7__.EditorAction {\n constructor() {\n super({\n id: DisableHighlightingOfAmbiguousCharactersAction.ID,\n label: _nls_js__WEBPACK_IMPORTED_MODULE_17__.localize('action.unicodeHighlight.disableHighlightingOfAmbiguousCharacters', 'Disable highlighting of ambiguous characters'),\n alias: 'Disable highlighting of ambiguous characters',\n precondition: undefined\n });\n this.shortLabel = _nls_js__WEBPACK_IMPORTED_MODULE_17__.localize('unicodeHighlight.disableHighlightingOfAmbiguousCharacters.shortLabel', 'Disable Ambiguous Highlight');\n }\n async run(accessor, editor, args) {\n const configurationService = accessor === null || accessor === void 0 ? void 0 : accessor.get(_platform_configuration_common_configuration_js__WEBPACK_IMPORTED_MODULE_18__.IConfigurationService);\n if (configurationService) {\n this.runAction(configurationService);\n }\n }\n async runAction(configurationService) {\n await configurationService.updateValue(_common_config_editorOptions_js__WEBPACK_IMPORTED_MODULE_8__.unicodeHighlightConfigKeys.ambiguousCharacters, false, 2 /* ConfigurationTarget.USER */);\n }\n}\nDisableHighlightingOfAmbiguousCharactersAction.ID = 'editor.action.unicodeHighlight.disableHighlightingOfAmbiguousCharacters';\nclass DisableHighlightingOfInvisibleCharactersAction extends _browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_7__.EditorAction {\n constructor() {\n super({\n id: DisableHighlightingOfInvisibleCharactersAction.ID,\n label: _nls_js__WEBPACK_IMPORTED_MODULE_17__.localize('action.unicodeHighlight.disableHighlightingOfInvisibleCharacters', 'Disable highlighting of invisible characters'),\n alias: 'Disable highlighting of invisible characters',\n precondition: undefined\n });\n this.shortLabel = _nls_js__WEBPACK_IMPORTED_MODULE_17__.localize('unicodeHighlight.disableHighlightingOfInvisibleCharacters.shortLabel', 'Disable Invisible Highlight');\n }\n async run(accessor, editor, args) {\n const configurationService = accessor === null || accessor === void 0 ? void 0 : accessor.get(_platform_configuration_common_configuration_js__WEBPACK_IMPORTED_MODULE_18__.IConfigurationService);\n if (configurationService) {\n this.runAction(configurationService);\n }\n }\n async runAction(configurationService) {\n await configurationService.updateValue(_common_config_editorOptions_js__WEBPACK_IMPORTED_MODULE_8__.unicodeHighlightConfigKeys.invisibleCharacters, false, 2 /* ConfigurationTarget.USER */);\n }\n}\nDisableHighlightingOfInvisibleCharactersAction.ID = 'editor.action.unicodeHighlight.disableHighlightingOfInvisibleCharacters';\nclass DisableHighlightingOfNonBasicAsciiCharactersAction extends _browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_7__.EditorAction {\n constructor() {\n super({\n id: DisableHighlightingOfNonBasicAsciiCharactersAction.ID,\n label: _nls_js__WEBPACK_IMPORTED_MODULE_17__.localize('action.unicodeHighlight.disableHighlightingOfNonBasicAsciiCharacters', 'Disable highlighting of non basic ASCII characters'),\n alias: 'Disable highlighting of non basic ASCII characters',\n precondition: undefined\n });\n this.shortLabel = _nls_js__WEBPACK_IMPORTED_MODULE_17__.localize('unicodeHighlight.disableHighlightingOfNonBasicAsciiCharacters.shortLabel', 'Disable Non ASCII Highlight');\n }\n async run(accessor, editor, args) {\n const configurationService = accessor === null || accessor === void 0 ? void 0 : accessor.get(_platform_configuration_common_configuration_js__WEBPACK_IMPORTED_MODULE_18__.IConfigurationService);\n if (configurationService) {\n this.runAction(configurationService);\n }\n }\n async runAction(configurationService) {\n await configurationService.updateValue(_common_config_editorOptions_js__WEBPACK_IMPORTED_MODULE_8__.unicodeHighlightConfigKeys.nonBasicASCII, false, 2 /* ConfigurationTarget.USER */);\n }\n}\nDisableHighlightingOfNonBasicAsciiCharactersAction.ID = 'editor.action.unicodeHighlight.disableHighlightingOfNonBasicAsciiCharacters';\nclass ShowExcludeOptions extends _browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_7__.EditorAction {\n constructor() {\n super({\n id: ShowExcludeOptions.ID,\n label: _nls_js__WEBPACK_IMPORTED_MODULE_17__.localize('action.unicodeHighlight.showExcludeOptions', \"Show Exclude Options\"),\n alias: 'Show Exclude Options',\n precondition: undefined\n });\n }\n async run(accessor, editor, args) {\n const { codePoint, reason, inString, inComment } = args;\n const char = String.fromCodePoint(codePoint);\n const quickPickService = accessor.get(_platform_quickinput_common_quickInput_js__WEBPACK_IMPORTED_MODULE_21__.IQuickInputService);\n const configurationService = accessor.get(_platform_configuration_common_configuration_js__WEBPACK_IMPORTED_MODULE_18__.IConfigurationService);\n function getExcludeCharFromBeingHighlightedLabel(codePoint) {\n if (_base_common_strings_js__WEBPACK_IMPORTED_MODULE_5__.InvisibleCharacters.isInvisibleCharacter(codePoint)) {\n return _nls_js__WEBPACK_IMPORTED_MODULE_17__.localize('unicodeHighlight.excludeInvisibleCharFromBeingHighlighted', 'Exclude {0} (invisible character) from being highlighted', codePointToHex(codePoint));\n }\n return _nls_js__WEBPACK_IMPORTED_MODULE_17__.localize('unicodeHighlight.excludeCharFromBeingHighlighted', 'Exclude {0} from being highlighted', `${codePointToHex(codePoint)} \"${char}\"`);\n }\n const options = [];\n if (reason.kind === 0 /* UnicodeHighlighterReasonKind.Ambiguous */) {\n for (const locale of reason.notAmbiguousInLocales) {\n options.push({\n label: _nls_js__WEBPACK_IMPORTED_MODULE_17__.localize(\"unicodeHighlight.allowCommonCharactersInLanguage\", \"Allow unicode characters that are more common in the language \\\"{0}\\\".\", locale),\n run: async () => {\n excludeLocaleFromBeingHighlighted(configurationService, [locale]);\n },\n });\n }\n }\n options.push({\n label: getExcludeCharFromBeingHighlightedLabel(codePoint),\n run: () => excludeCharFromBeingHighlighted(configurationService, [codePoint])\n });\n if (inComment) {\n const action = new DisableHighlightingInCommentsAction();\n options.push({ label: action.label, run: async () => action.runAction(configurationService) });\n }\n else if (inString) {\n const action = new DisableHighlightingInStringsAction();\n options.push({ label: action.label, run: async () => action.runAction(configurationService) });\n }\n if (reason.kind === 0 /* UnicodeHighlighterReasonKind.Ambiguous */) {\n const action = new DisableHighlightingOfAmbiguousCharactersAction();\n options.push({ label: action.label, run: async () => action.runAction(configurationService) });\n }\n else if (reason.kind === 1 /* UnicodeHighlighterReasonKind.Invisible */) {\n const action = new DisableHighlightingOfInvisibleCharactersAction();\n options.push({ label: action.label, run: async () => action.runAction(configurationService) });\n }\n else if (reason.kind === 2 /* UnicodeHighlighterReasonKind.NonBasicAscii */) {\n const action = new DisableHighlightingOfNonBasicAsciiCharactersAction();\n options.push({ label: action.label, run: async () => action.runAction(configurationService) });\n }\n else {\n expectNever(reason);\n }\n const result = await quickPickService.pick(options, { title: configureUnicodeHighlightOptionsStr });\n if (result) {\n await result.run();\n }\n }\n}\nShowExcludeOptions.ID = 'editor.action.unicodeHighlight.showExcludeOptions';\nasync function excludeCharFromBeingHighlighted(configurationService, charCodes) {\n const existingValue = configurationService.getValue(_common_config_editorOptions_js__WEBPACK_IMPORTED_MODULE_8__.unicodeHighlightConfigKeys.allowedCharacters);\n let value;\n if ((typeof existingValue === 'object') && existingValue) {\n value = existingValue;\n }\n else {\n value = {};\n }\n for (const charCode of charCodes) {\n value[String.fromCodePoint(charCode)] = true;\n }\n await configurationService.updateValue(_common_config_editorOptions_js__WEBPACK_IMPORTED_MODULE_8__.unicodeHighlightConfigKeys.allowedCharacters, value, 2 /* ConfigurationTarget.USER */);\n}\nasync function excludeLocaleFromBeingHighlighted(configurationService, locales) {\n var _a;\n const existingValue = (_a = configurationService.inspect(_common_config_editorOptions_js__WEBPACK_IMPORTED_MODULE_8__.unicodeHighlightConfigKeys.allowedLocales).user) === null || _a === void 0 ? void 0 : _a.value;\n let value;\n if ((typeof existingValue === 'object') && existingValue) {\n // Copy value, as the existing value is read only\n value = Object.assign({}, existingValue);\n }\n else {\n value = {};\n }\n for (const locale of locales) {\n value[locale] = true;\n }\n await configurationService.updateValue(_common_config_editorOptions_js__WEBPACK_IMPORTED_MODULE_8__.unicodeHighlightConfigKeys.allowedLocales, value, 2 /* ConfigurationTarget.USER */);\n}\nfunction expectNever(value) {\n throw new Error(`Unexpected value: ${value}`);\n}\n(0,_browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_7__.registerEditorAction)(DisableHighlightingOfAmbiguousCharactersAction);\n(0,_browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_7__.registerEditorAction)(DisableHighlightingOfInvisibleCharactersAction);\n(0,_browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_7__.registerEditorAction)(DisableHighlightingOfNonBasicAsciiCharactersAction);\n(0,_browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_7__.registerEditorAction)(ShowExcludeOptions);\n(0,_browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_7__.registerEditorContribution)(UnicodeHighlighter.ID, UnicodeHighlighter, 1 /* EditorContributionInstantiation.AfterFirstRender */);\n_hover_browser_hoverTypes_js__WEBPACK_IMPORTED_MODULE_14__.HoverParticipantRegistry.register(UnicodeHighlighterHoverParticipant);\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/contrib/unicodeHighlighter/browser/unicodeHighlighter.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/contrib/unusualLineTerminators/browser/unusualLineTerminators.js":
/*!*******************************************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/contrib/unusualLineTerminators/browser/unusualLineTerminators.js ***!
\*******************************************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ UnusualLineTerminatorsDetector: () => (/* binding */ UnusualLineTerminatorsDetector)\n/* harmony export */ });\n/* harmony import */ var _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../../base/common/lifecycle.js */ \"./node_modules/monaco-editor/esm/vs/base/common/lifecycle.js\");\n/* harmony import */ var _base_common_resources_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../base/common/resources.js */ \"./node_modules/monaco-editor/esm/vs/base/common/resources.js\");\n/* harmony import */ var _browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../browser/editorExtensions.js */ \"./node_modules/monaco-editor/esm/vs/editor/browser/editorExtensions.js\");\n/* harmony import */ var _browser_services_codeEditorService_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../../browser/services/codeEditorService.js */ \"./node_modules/monaco-editor/esm/vs/editor/browser/services/codeEditorService.js\");\n/* harmony import */ var _nls_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../../../nls.js */ \"./node_modules/monaco-editor/esm/vs/nls.js\");\n/* harmony import */ var _platform_dialogs_common_dialogs_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../../../../platform/dialogs/common/dialogs.js */ \"./node_modules/monaco-editor/esm/vs/platform/dialogs/common/dialogs.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\nvar __decorate = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\n return c > 3 && r && Object.defineProperty(target, key, r), r;\n};\nvar __param = (undefined && undefined.__param) || function (paramIndex, decorator) {\n return function (target, key) { decorator(target, key, paramIndex); }\n};\n\n\n\n\n\n\nconst ignoreUnusualLineTerminators = 'ignoreUnusualLineTerminators';\nfunction writeIgnoreState(codeEditorService, model, state) {\n codeEditorService.setModelProperty(model.uri, ignoreUnusualLineTerminators, state);\n}\nfunction readIgnoreState(codeEditorService, model) {\n return codeEditorService.getModelProperty(model.uri, ignoreUnusualLineTerminators);\n}\nlet UnusualLineTerminatorsDetector = class UnusualLineTerminatorsDetector extends _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_0__.Disposable {\n constructor(_editor, _dialogService, _codeEditorService) {\n super();\n this._editor = _editor;\n this._dialogService = _dialogService;\n this._codeEditorService = _codeEditorService;\n this._isPresentingDialog = false;\n this._config = this._editor.getOption(126 /* EditorOption.unusualLineTerminators */);\n this._register(this._editor.onDidChangeConfiguration((e) => {\n if (e.hasChanged(126 /* EditorOption.unusualLineTerminators */)) {\n this._config = this._editor.getOption(126 /* EditorOption.unusualLineTerminators */);\n this._checkForUnusualLineTerminators();\n }\n }));\n this._register(this._editor.onDidChangeModel(() => {\n this._checkForUnusualLineTerminators();\n }));\n this._register(this._editor.onDidChangeModelContent((e) => {\n if (e.isUndoing) {\n // skip checking in case of undoing\n return;\n }\n this._checkForUnusualLineTerminators();\n }));\n this._checkForUnusualLineTerminators();\n }\n async _checkForUnusualLineTerminators() {\n if (this._config === 'off') {\n return;\n }\n if (!this._editor.hasModel()) {\n return;\n }\n const model = this._editor.getModel();\n if (!model.mightContainUnusualLineTerminators()) {\n return;\n }\n const ignoreState = readIgnoreState(this._codeEditorService, model);\n if (ignoreState === true) {\n // this model should be ignored\n return;\n }\n if (this._editor.getOption(91 /* EditorOption.readOnly */)) {\n // read only editor => sorry!\n return;\n }\n if (this._config === 'auto') {\n // just do it!\n model.removeUnusualLineTerminators(this._editor.getSelections());\n return;\n }\n if (this._isPresentingDialog) {\n // we're currently showing the dialog, which is async.\n // avoid spamming the user\n return;\n }\n let result;\n try {\n this._isPresentingDialog = true;\n result = await this._dialogService.confirm({\n title: _nls_js__WEBPACK_IMPORTED_MODULE_4__.localize('unusualLineTerminators.title', \"Unusual Line Terminators\"),\n message: _nls_js__WEBPACK_IMPORTED_MODULE_4__.localize('unusualLineTerminators.message', \"Detected unusual line terminators\"),\n detail: _nls_js__WEBPACK_IMPORTED_MODULE_4__.localize('unusualLineTerminators.detail', \"The file '{0}' contains one or more unusual line terminator characters, like Line Separator (LS) or Paragraph Separator (PS).\\n\\nIt is recommended to remove them from the file. This can be configured via `editor.unusualLineTerminators`.\", (0,_base_common_resources_js__WEBPACK_IMPORTED_MODULE_1__.basename)(model.uri)),\n primaryButton: _nls_js__WEBPACK_IMPORTED_MODULE_4__.localize({ key: 'unusualLineTerminators.fix', comment: ['&& denotes a mnemonic'] }, \"&&Remove Unusual Line Terminators\"),\n cancelButton: _nls_js__WEBPACK_IMPORTED_MODULE_4__.localize('unusualLineTerminators.ignore', \"Ignore\")\n });\n }\n finally {\n this._isPresentingDialog = false;\n }\n if (!result.confirmed) {\n // this model should be ignored\n writeIgnoreState(this._codeEditorService, model, true);\n return;\n }\n model.removeUnusualLineTerminators(this._editor.getSelections());\n }\n};\nUnusualLineTerminatorsDetector.ID = 'editor.contrib.unusualLineTerminatorsDetector';\nUnusualLineTerminatorsDetector = __decorate([\n __param(1, _platform_dialogs_common_dialogs_js__WEBPACK_IMPORTED_MODULE_5__.IDialogService),\n __param(2, _browser_services_codeEditorService_js__WEBPACK_IMPORTED_MODULE_3__.ICodeEditorService)\n], UnusualLineTerminatorsDetector);\n\n(0,_browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_2__.registerEditorContribution)(UnusualLineTerminatorsDetector.ID, UnusualLineTerminatorsDetector, 1 /* EditorContributionInstantiation.AfterFirstRender */);\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/contrib/unusualLineTerminators/browser/unusualLineTerminators.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/contrib/wordHighlighter/browser/highlightDecorations.js":
/*!**********************************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/contrib/wordHighlighter/browser/highlightDecorations.js ***!
\**********************************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ getHighlightDecorationOptions: () => (/* binding */ getHighlightDecorationOptions),\n/* harmony export */ getSelectionHighlightDecorationOptions: () => (/* binding */ getSelectionHighlightDecorationOptions)\n/* harmony export */ });\n/* harmony import */ var _highlightDecorations_css__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./highlightDecorations.css */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/wordHighlighter/browser/highlightDecorations.css\");\n/* harmony import */ var _common_model_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../common/model.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/model.js\");\n/* harmony import */ var _common_model_textModel_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../common/model/textModel.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/model/textModel.js\");\n/* harmony import */ var _common_languages_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../../common/languages.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/languages.js\");\n/* harmony import */ var _nls_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../../../nls.js */ \"./node_modules/monaco-editor/esm/vs/nls.js\");\n/* harmony import */ var _platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../../../../platform/theme/common/colorRegistry.js */ \"./node_modules/monaco-editor/esm/vs/platform/theme/common/colorRegistry.js\");\n/* harmony import */ var _platform_theme_common_themeService_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../../../../platform/theme/common/themeService.js */ \"./node_modules/monaco-editor/esm/vs/platform/theme/common/themeService.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n\n\n\n\n\n\nconst wordHighlightBackground = (0,_platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_5__.registerColor)('editor.wordHighlightBackground', { dark: '#575757B8', light: '#57575740', hcDark: null, hcLight: null }, _nls_js__WEBPACK_IMPORTED_MODULE_4__.localize('wordHighlight', 'Background color of a symbol during read-access, like reading a variable. The color must not be opaque so as not to hide underlying decorations.'), true);\n(0,_platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_5__.registerColor)('editor.wordHighlightStrongBackground', { dark: '#004972B8', light: '#0e639c40', hcDark: null, hcLight: null }, _nls_js__WEBPACK_IMPORTED_MODULE_4__.localize('wordHighlightStrong', 'Background color of a symbol during write-access, like writing to a variable. The color must not be opaque so as not to hide underlying decorations.'), true);\n(0,_platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_5__.registerColor)('editor.wordHighlightTextBackground', { light: wordHighlightBackground, dark: wordHighlightBackground, hcDark: wordHighlightBackground, hcLight: wordHighlightBackground }, _nls_js__WEBPACK_IMPORTED_MODULE_4__.localize('wordHighlightText', 'Background color of a textual occurrence for a symbol. The color must not be opaque so as not to hide underlying decorations.'), true);\nconst wordHighlightBorder = (0,_platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_5__.registerColor)('editor.wordHighlightBorder', { light: null, dark: null, hcDark: _platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_5__.activeContrastBorder, hcLight: _platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_5__.activeContrastBorder }, _nls_js__WEBPACK_IMPORTED_MODULE_4__.localize('wordHighlightBorder', 'Border color of a symbol during read-access, like reading a variable.'));\n(0,_platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_5__.registerColor)('editor.wordHighlightStrongBorder', { light: null, dark: null, hcDark: _platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_5__.activeContrastBorder, hcLight: _platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_5__.activeContrastBorder }, _nls_js__WEBPACK_IMPORTED_MODULE_4__.localize('wordHighlightStrongBorder', 'Border color of a symbol during write-access, like writing to a variable.'));\n(0,_platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_5__.registerColor)('editor.wordHighlightTextBorder', { light: wordHighlightBorder, dark: wordHighlightBorder, hcDark: wordHighlightBorder, hcLight: wordHighlightBorder }, _nls_js__WEBPACK_IMPORTED_MODULE_4__.localize('wordHighlightTextBorder', \"Border color of a textual occurrence for a symbol.\"));\nconst overviewRulerWordHighlightForeground = (0,_platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_5__.registerColor)('editorOverviewRuler.wordHighlightForeground', { dark: '#A0A0A0CC', light: '#A0A0A0CC', hcDark: '#A0A0A0CC', hcLight: '#A0A0A0CC' }, _nls_js__WEBPACK_IMPORTED_MODULE_4__.localize('overviewRulerWordHighlightForeground', 'Overview ruler marker color for symbol highlights. The color must not be opaque so as not to hide underlying decorations.'), true);\nconst overviewRulerWordHighlightStrongForeground = (0,_platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_5__.registerColor)('editorOverviewRuler.wordHighlightStrongForeground', { dark: '#C0A0C0CC', light: '#C0A0C0CC', hcDark: '#C0A0C0CC', hcLight: '#C0A0C0CC' }, _nls_js__WEBPACK_IMPORTED_MODULE_4__.localize('overviewRulerWordHighlightStrongForeground', 'Overview ruler marker color for write-access symbol highlights. The color must not be opaque so as not to hide underlying decorations.'), true);\nconst overviewRulerWordHighlightTextForeground = (0,_platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_5__.registerColor)('editorOverviewRuler.wordHighlightTextForeground', { dark: _platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_5__.overviewRulerSelectionHighlightForeground, light: _platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_5__.overviewRulerSelectionHighlightForeground, hcDark: _platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_5__.overviewRulerSelectionHighlightForeground, hcLight: _platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_5__.overviewRulerSelectionHighlightForeground }, _nls_js__WEBPACK_IMPORTED_MODULE_4__.localize('overviewRulerWordHighlightTextForeground', 'Overview ruler marker color of a textual occurrence for a symbol. The color must not be opaque so as not to hide underlying decorations.'), true);\nconst _WRITE_OPTIONS = _common_model_textModel_js__WEBPACK_IMPORTED_MODULE_2__.ModelDecorationOptions.register({\n description: 'word-highlight-strong',\n stickiness: 1 /* TrackedRangeStickiness.NeverGrowsWhenTypingAtEdges */,\n className: 'wordHighlightStrong',\n overviewRuler: {\n color: (0,_platform_theme_common_themeService_js__WEBPACK_IMPORTED_MODULE_6__.themeColorFromId)(overviewRulerWordHighlightStrongForeground),\n position: _common_model_js__WEBPACK_IMPORTED_MODULE_1__.OverviewRulerLane.Center\n },\n minimap: {\n color: (0,_platform_theme_common_themeService_js__WEBPACK_IMPORTED_MODULE_6__.themeColorFromId)(_platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_5__.minimapSelectionOccurrenceHighlight),\n position: _common_model_js__WEBPACK_IMPORTED_MODULE_1__.MinimapPosition.Inline\n },\n});\nconst _TEXT_OPTIONS = _common_model_textModel_js__WEBPACK_IMPORTED_MODULE_2__.ModelDecorationOptions.register({\n description: 'word-highlight-text',\n stickiness: 1 /* TrackedRangeStickiness.NeverGrowsWhenTypingAtEdges */,\n className: 'wordHighlightText',\n overviewRuler: {\n color: (0,_platform_theme_common_themeService_js__WEBPACK_IMPORTED_MODULE_6__.themeColorFromId)(overviewRulerWordHighlightTextForeground),\n position: _common_model_js__WEBPACK_IMPORTED_MODULE_1__.OverviewRulerLane.Center\n },\n minimap: {\n color: (0,_platform_theme_common_themeService_js__WEBPACK_IMPORTED_MODULE_6__.themeColorFromId)(_platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_5__.minimapSelectionOccurrenceHighlight),\n position: _common_model_js__WEBPACK_IMPORTED_MODULE_1__.MinimapPosition.Inline\n },\n});\nconst _SELECTION_HIGHLIGHT_OPTIONS = _common_model_textModel_js__WEBPACK_IMPORTED_MODULE_2__.ModelDecorationOptions.register({\n description: 'selection-highlight-overview',\n stickiness: 1 /* TrackedRangeStickiness.NeverGrowsWhenTypingAtEdges */,\n className: 'selectionHighlight',\n overviewRuler: {\n color: (0,_platform_theme_common_themeService_js__WEBPACK_IMPORTED_MODULE_6__.themeColorFromId)(_platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_5__.overviewRulerSelectionHighlightForeground),\n position: _common_model_js__WEBPACK_IMPORTED_MODULE_1__.OverviewRulerLane.Center\n },\n minimap: {\n color: (0,_platform_theme_common_themeService_js__WEBPACK_IMPORTED_MODULE_6__.themeColorFromId)(_platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_5__.minimapSelectionOccurrenceHighlight),\n position: _common_model_js__WEBPACK_IMPORTED_MODULE_1__.MinimapPosition.Inline\n },\n});\nconst _SELECTION_HIGHLIGHT_OPTIONS_NO_OVERVIEW = _common_model_textModel_js__WEBPACK_IMPORTED_MODULE_2__.ModelDecorationOptions.register({\n description: 'selection-highlight',\n stickiness: 1 /* TrackedRangeStickiness.NeverGrowsWhenTypingAtEdges */,\n className: 'selectionHighlight',\n});\nconst _REGULAR_OPTIONS = _common_model_textModel_js__WEBPACK_IMPORTED_MODULE_2__.ModelDecorationOptions.register({\n description: 'word-highlight',\n stickiness: 1 /* TrackedRangeStickiness.NeverGrowsWhenTypingAtEdges */,\n className: 'wordHighlight',\n overviewRuler: {\n color: (0,_platform_theme_common_themeService_js__WEBPACK_IMPORTED_MODULE_6__.themeColorFromId)(overviewRulerWordHighlightForeground),\n position: _common_model_js__WEBPACK_IMPORTED_MODULE_1__.OverviewRulerLane.Center\n },\n minimap: {\n color: (0,_platform_theme_common_themeService_js__WEBPACK_IMPORTED_MODULE_6__.themeColorFromId)(_platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_5__.minimapSelectionOccurrenceHighlight),\n position: _common_model_js__WEBPACK_IMPORTED_MODULE_1__.MinimapPosition.Inline\n },\n});\nfunction getHighlightDecorationOptions(kind) {\n if (kind === _common_languages_js__WEBPACK_IMPORTED_MODULE_3__.DocumentHighlightKind.Write) {\n return _WRITE_OPTIONS;\n }\n else if (kind === _common_languages_js__WEBPACK_IMPORTED_MODULE_3__.DocumentHighlightKind.Text) {\n return _TEXT_OPTIONS;\n }\n else {\n return _REGULAR_OPTIONS;\n }\n}\nfunction getSelectionHighlightDecorationOptions(hasSemanticHighlights) {\n // Show in overviewRuler only if model has no semantic highlighting\n return (hasSemanticHighlights ? _SELECTION_HIGHLIGHT_OPTIONS_NO_OVERVIEW : _SELECTION_HIGHLIGHT_OPTIONS);\n}\n(0,_platform_theme_common_themeService_js__WEBPACK_IMPORTED_MODULE_6__.registerThemingParticipant)((theme, collector) => {\n const selectionHighlight = theme.getColor(_platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_5__.editorSelectionHighlight);\n if (selectionHighlight) {\n collector.addRule(`.monaco-editor .selectionHighlight { background-color: ${selectionHighlight.transparent(0.5)}; }`);\n }\n});\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/contrib/wordHighlighter/browser/highlightDecorations.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/contrib/wordHighlighter/browser/wordHighlighter.js":
/*!*****************************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/contrib/wordHighlighter/browser/wordHighlighter.js ***!
\*****************************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ WordHighlighterContribution: () => (/* binding */ WordHighlighterContribution),\n/* harmony export */ getOccurrencesAcrossMultipleModels: () => (/* binding */ getOccurrencesAcrossMultipleModels),\n/* harmony export */ getOccurrencesAtPosition: () => (/* binding */ getOccurrencesAtPosition)\n/* harmony export */ });\n/* harmony import */ var _nls_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../../nls.js */ \"./node_modules/monaco-editor/esm/vs/nls.js\");\n/* harmony import */ var _base_common_arrays_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../base/common/arrays.js */ \"./node_modules/monaco-editor/esm/vs/base/common/arrays.js\");\n/* harmony import */ var _base_browser_ui_aria_aria_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../../base/browser/ui/aria/aria.js */ \"./node_modules/monaco-editor/esm/vs/base/browser/ui/aria/aria.js\");\n/* harmony import */ var _base_common_async_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../../../base/common/async.js */ \"./node_modules/monaco-editor/esm/vs/base/common/async.js\");\n/* harmony import */ var _base_common_cancellation_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../../../base/common/cancellation.js */ \"./node_modules/monaco-editor/esm/vs/base/common/cancellation.js\");\n/* harmony import */ var _base_common_errors_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../../../../base/common/errors.js */ \"./node_modules/monaco-editor/esm/vs/base/common/errors.js\");\n/* harmony import */ var _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../../../../base/common/lifecycle.js */ \"./node_modules/monaco-editor/esm/vs/base/common/lifecycle.js\");\n/* harmony import */ var _browser_editorBrowser_js__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ../../../browser/editorBrowser.js */ \"./node_modules/monaco-editor/esm/vs/editor/browser/editorBrowser.js\");\n/* harmony import */ var _browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ../../../browser/editorExtensions.js */ \"./node_modules/monaco-editor/esm/vs/editor/browser/editorExtensions.js\");\n/* harmony import */ var _browser_services_codeEditorService_js__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ../../../browser/services/codeEditorService.js */ \"./node_modules/monaco-editor/esm/vs/editor/browser/services/codeEditorService.js\");\n/* harmony import */ var _common_core_range_js__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! ../../../common/core/range.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/core/range.js\");\n/* harmony import */ var _common_editorContextKeys_js__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(/*! ../../../common/editorContextKeys.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/editorContextKeys.js\");\n/* harmony import */ var _common_languages_js__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(/*! ../../../common/languages.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/languages.js\");\n/* harmony import */ var _common_model_js__WEBPACK_IMPORTED_MODULE_13__ = __webpack_require__(/*! ../../../common/model.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/model.js\");\n/* harmony import */ var _common_services_languageFeatures_js__WEBPACK_IMPORTED_MODULE_14__ = __webpack_require__(/*! ../../../common/services/languageFeatures.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/services/languageFeatures.js\");\n/* harmony import */ var _highlightDecorations_js__WEBPACK_IMPORTED_MODULE_15__ = __webpack_require__(/*! ./highlightDecorations.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/wordHighlighter/browser/highlightDecorations.js\");\n/* harmony import */ var _platform_contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_16__ = __webpack_require__(/*! ../../../../platform/contextkey/common/contextkey.js */ \"./node_modules/monaco-editor/esm/vs/platform/contextkey/common/contextkey.js\");\n/* harmony import */ var _base_common_network_js__WEBPACK_IMPORTED_MODULE_17__ = __webpack_require__(/*! ../../../../base/common/network.js */ \"./node_modules/monaco-editor/esm/vs/base/common/network.js\");\n/* harmony import */ var _base_common_map_js__WEBPACK_IMPORTED_MODULE_18__ = __webpack_require__(/*! ../../../../base/common/map.js */ \"./node_modules/monaco-editor/esm/vs/base/common/map.js\");\n/* harmony import */ var _common_languageSelector_js__WEBPACK_IMPORTED_MODULE_19__ = __webpack_require__(/*! ../../../common/languageSelector.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/languageSelector.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\nvar __decorate = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\n return c > 3 && r && Object.defineProperty(target, key, r), r;\n};\nvar __param = (undefined && undefined.__param) || function (paramIndex, decorator) {\n return function (target, key) { decorator(target, key, paramIndex); }\n};\nvar WordHighlighter_1, WordHighlighterContribution_1;\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n// import { TextualMultiDocumentHighlightFeature } from 'vs/editor/contrib/wordHighlighter/browser/textualHighlightProvider';\n// import { registerEditorFeature } from 'vs/editor/common/editorFeatures';\nconst ctxHasWordHighlights = new _platform_contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_16__.RawContextKey('hasWordHighlights', false);\nfunction getOccurrencesAtPosition(registry, model, position, token) {\n const orderedByScore = registry.ordered(model);\n // in order of score ask the occurrences provider\n // until someone response with a good result\n // (good = none empty array)\n return (0,_base_common_async_js__WEBPACK_IMPORTED_MODULE_3__.first)(orderedByScore.map(provider => () => {\n return Promise.resolve(provider.provideDocumentHighlights(model, position, token))\n .then(undefined, _base_common_errors_js__WEBPACK_IMPORTED_MODULE_5__.onUnexpectedExternalError);\n }), _base_common_arrays_js__WEBPACK_IMPORTED_MODULE_1__.isNonEmptyArray).then(result => {\n if (result) {\n const map = new _base_common_map_js__WEBPACK_IMPORTED_MODULE_18__.ResourceMap();\n map.set(model.uri, result);\n return map;\n }\n return new _base_common_map_js__WEBPACK_IMPORTED_MODULE_18__.ResourceMap();\n });\n}\nfunction getOccurrencesAcrossMultipleModels(registry, model, position, wordSeparators, token, otherModels) {\n const orderedByScore = registry.ordered(model);\n // in order of score ask the occurrences provider\n // until someone response with a good result\n // (good = none empty array)\n return (0,_base_common_async_js__WEBPACK_IMPORTED_MODULE_3__.first)(orderedByScore.map(provider => () => {\n const filteredModels = otherModels.filter(otherModel => {\n return (0,_common_model_js__WEBPACK_IMPORTED_MODULE_13__.shouldSynchronizeModel)(otherModel);\n }).filter(otherModel => {\n return (0,_common_languageSelector_js__WEBPACK_IMPORTED_MODULE_19__.score)(provider.selector, otherModel.uri, otherModel.getLanguageId(), true, undefined, undefined) > 0;\n });\n return Promise.resolve(provider.provideMultiDocumentHighlights(model, position, filteredModels, token))\n .then(undefined, _base_common_errors_js__WEBPACK_IMPORTED_MODULE_5__.onUnexpectedExternalError);\n }), (t) => t instanceof _base_common_map_js__WEBPACK_IMPORTED_MODULE_18__.ResourceMap && t.size > 0);\n}\nclass OccurenceAtPositionRequest {\n constructor(_model, _selection, _wordSeparators) {\n this._model = _model;\n this._selection = _selection;\n this._wordSeparators = _wordSeparators;\n this._wordRange = this._getCurrentWordRange(_model, _selection);\n this._result = null;\n }\n get result() {\n if (!this._result) {\n this._result = (0,_base_common_async_js__WEBPACK_IMPORTED_MODULE_3__.createCancelablePromise)(token => this._compute(this._model, this._selection, this._wordSeparators, token));\n }\n return this._result;\n }\n _getCurrentWordRange(model, selection) {\n const word = model.getWordAtPosition(selection.getPosition());\n if (word) {\n return new _common_core_range_js__WEBPACK_IMPORTED_MODULE_10__.Range(selection.startLineNumber, word.startColumn, selection.startLineNumber, word.endColumn);\n }\n return null;\n }\n isValid(model, selection, decorations) {\n const lineNumber = selection.startLineNumber;\n const startColumn = selection.startColumn;\n const endColumn = selection.endColumn;\n const currentWordRange = this._getCurrentWordRange(model, selection);\n let requestIsValid = Boolean(this._wordRange && this._wordRange.equalsRange(currentWordRange));\n // Even if we are on a different word, if that word is in the decorations ranges, the request is still valid\n // (Same symbol)\n for (let i = 0, len = decorations.length; !requestIsValid && i < len; i++) {\n const range = decorations.getRange(i);\n if (range && range.startLineNumber === lineNumber) {\n if (range.startColumn <= startColumn && range.endColumn >= endColumn) {\n requestIsValid = true;\n }\n }\n }\n return requestIsValid;\n }\n cancel() {\n this.result.cancel();\n }\n}\nclass SemanticOccurenceAtPositionRequest extends OccurenceAtPositionRequest {\n constructor(model, selection, wordSeparators, providers) {\n super(model, selection, wordSeparators);\n this._providers = providers;\n }\n _compute(model, selection, wordSeparators, token) {\n return getOccurrencesAtPosition(this._providers, model, selection.getPosition(), token).then(value => {\n if (!value) {\n return new _base_common_map_js__WEBPACK_IMPORTED_MODULE_18__.ResourceMap();\n }\n return value;\n });\n }\n}\nclass MultiModelOccurenceRequest extends OccurenceAtPositionRequest {\n constructor(model, selection, wordSeparators, providers, otherModels) {\n super(model, selection, wordSeparators);\n this._providers = providers;\n this._otherModels = otherModels;\n }\n _compute(model, selection, wordSeparators, token) {\n return getOccurrencesAcrossMultipleModels(this._providers, model, selection.getPosition(), wordSeparators, token, this._otherModels).then(value => {\n if (!value) {\n return new _base_common_map_js__WEBPACK_IMPORTED_MODULE_18__.ResourceMap();\n }\n return value;\n });\n }\n}\nclass TextualOccurenceRequest extends OccurenceAtPositionRequest {\n constructor(model, selection, word, wordSeparators, otherModels) {\n super(model, selection, wordSeparators);\n this._otherModels = otherModels;\n this._selectionIsEmpty = selection.isEmpty();\n this._word = word;\n }\n _compute(model, selection, wordSeparators, token) {\n return (0,_base_common_async_js__WEBPACK_IMPORTED_MODULE_3__.timeout)(250, token).then(() => {\n const result = new _base_common_map_js__WEBPACK_IMPORTED_MODULE_18__.ResourceMap();\n let wordResult;\n if (this._word) {\n wordResult = this._word;\n }\n else {\n wordResult = model.getWordAtPosition(selection.getPosition());\n }\n if (!wordResult) {\n return new _base_common_map_js__WEBPACK_IMPORTED_MODULE_18__.ResourceMap();\n }\n const allModels = [model, ...this._otherModels];\n for (const otherModel of allModels) {\n if (otherModel.isDisposed()) {\n continue;\n }\n const matches = otherModel.findMatches(wordResult.word, true, false, true, wordSeparators, false);\n const highlights = matches.map(m => ({\n range: m.range,\n kind: _common_languages_js__WEBPACK_IMPORTED_MODULE_12__.DocumentHighlightKind.Text\n }));\n if (highlights) {\n result.set(otherModel.uri, highlights);\n }\n }\n return result;\n });\n }\n isValid(model, selection, decorations) {\n const currentSelectionIsEmpty = selection.isEmpty();\n if (this._selectionIsEmpty !== currentSelectionIsEmpty) {\n return false;\n }\n return super.isValid(model, selection, decorations);\n }\n}\nfunction computeOccurencesAtPosition(registry, model, selection, word, wordSeparators) {\n if (registry.has(model)) {\n return new SemanticOccurenceAtPositionRequest(model, selection, wordSeparators, registry);\n }\n return new TextualOccurenceRequest(model, selection, word, wordSeparators, []);\n}\nfunction computeOccurencesMultiModel(registry, model, selection, word, wordSeparators, otherModels) {\n if (registry.has(model)) {\n return new MultiModelOccurenceRequest(model, selection, wordSeparators, registry, otherModels);\n }\n return new TextualOccurenceRequest(model, selection, word, wordSeparators, otherModels);\n}\n(0,_browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_8__.registerModelAndPositionCommand)('_executeDocumentHighlights', async (accessor, model, position) => {\n const languageFeaturesService = accessor.get(_common_services_languageFeatures_js__WEBPACK_IMPORTED_MODULE_14__.ILanguageFeaturesService);\n const map = await getOccurrencesAtPosition(languageFeaturesService.documentHighlightProvider, model, position, _base_common_cancellation_js__WEBPACK_IMPORTED_MODULE_4__.CancellationToken.None);\n return map === null || map === void 0 ? void 0 : map.get(model.uri);\n});\nlet WordHighlighter = WordHighlighter_1 = class WordHighlighter {\n constructor(editor, providers, multiProviders, contextKeyService, codeEditorService) {\n this.toUnhook = new _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_6__.DisposableStore();\n this.workerRequestTokenId = 0;\n this.workerRequestCompleted = false;\n this.workerRequestValue = new _base_common_map_js__WEBPACK_IMPORTED_MODULE_18__.ResourceMap();\n this.lastCursorPositionChangeTime = 0;\n this.renderDecorationsTimer = -1;\n this.editor = editor;\n this.providers = providers;\n this.multiDocumentProviders = multiProviders;\n this.codeEditorService = codeEditorService;\n this._hasWordHighlights = ctxHasWordHighlights.bindTo(contextKeyService);\n this._ignorePositionChangeEvent = false;\n this.occurrencesHighlight = this.editor.getOption(81 /* EditorOption.occurrencesHighlight */);\n this.model = this.editor.getModel();\n this.toUnhook.add(editor.onDidChangeCursorPosition((e) => {\n if (this._ignorePositionChangeEvent) {\n // We are changing the position => ignore this event\n return;\n }\n if (this.occurrencesHighlight === 'off') {\n // Early exit if nothing needs to be done!\n // Leave some form of early exit check here if you wish to continue being a cursor position change listener ;)\n return;\n }\n this._onPositionChanged(e);\n }));\n this.toUnhook.add(editor.onDidFocusEditorText((e) => {\n if (this.occurrencesHighlight === 'off') {\n // Early exit if nothing needs to be done\n return;\n }\n if (!this.workerRequest) {\n this._run();\n }\n }));\n this.toUnhook.add(editor.onDidChangeModelContent((e) => {\n this._stopAll();\n }));\n this.toUnhook.add(editor.onDidChangeModel((e) => {\n if (!e.newModelUrl && e.oldModelUrl) {\n this._stopSingular();\n }\n else {\n if (WordHighlighter_1.query) {\n this._run();\n }\n }\n }));\n this.toUnhook.add(editor.onDidChangeConfiguration((e) => {\n const newValue = this.editor.getOption(81 /* EditorOption.occurrencesHighlight */);\n if (this.occurrencesHighlight !== newValue) {\n this.occurrencesHighlight = newValue;\n this._stopAll();\n }\n }));\n this.decorations = this.editor.createDecorationsCollection();\n this.workerRequestTokenId = 0;\n this.workerRequest = null;\n this.workerRequestCompleted = false;\n this.lastCursorPositionChangeTime = 0;\n this.renderDecorationsTimer = -1;\n // if there is a query already, highlight off that query\n if (WordHighlighter_1.query) {\n this._run();\n }\n }\n hasDecorations() {\n return (this.decorations.length > 0);\n }\n restore() {\n if (this.occurrencesHighlight === 'off') {\n return;\n }\n this._run();\n }\n _getSortedHighlights() {\n return (this.decorations.getRanges()\n .sort(_common_core_range_js__WEBPACK_IMPORTED_MODULE_10__.Range.compareRangesUsingStarts));\n }\n moveNext() {\n const highlights = this._getSortedHighlights();\n const index = highlights.findIndex((range) => range.containsPosition(this.editor.getPosition()));\n const newIndex = ((index + 1) % highlights.length);\n const dest = highlights[newIndex];\n try {\n this._ignorePositionChangeEvent = true;\n this.editor.setPosition(dest.getStartPosition());\n this.editor.revealRangeInCenterIfOutsideViewport(dest);\n const word = this._getWord();\n if (word) {\n const lineContent = this.editor.getModel().getLineContent(dest.startLineNumber);\n (0,_base_browser_ui_aria_aria_js__WEBPACK_IMPORTED_MODULE_2__.alert)(`${lineContent}, ${newIndex + 1} of ${highlights.length} for '${word.word}'`);\n }\n }\n finally {\n this._ignorePositionChangeEvent = false;\n }\n }\n moveBack() {\n const highlights = this._getSortedHighlights();\n const index = highlights.findIndex((range) => range.containsPosition(this.editor.getPosition()));\n const newIndex = ((index - 1 + highlights.length) % highlights.length);\n const dest = highlights[newIndex];\n try {\n this._ignorePositionChangeEvent = true;\n this.editor.setPosition(dest.getStartPosition());\n this.editor.revealRangeInCenterIfOutsideViewport(dest);\n const word = this._getWord();\n if (word) {\n const lineContent = this.editor.getModel().getLineContent(dest.startLineNumber);\n (0,_base_browser_ui_aria_aria_js__WEBPACK_IMPORTED_MODULE_2__.alert)(`${lineContent}, ${newIndex + 1} of ${highlights.length} for '${word.word}'`);\n }\n }\n finally {\n this._ignorePositionChangeEvent = false;\n }\n }\n _removeSingleDecorations() {\n // return if no model\n if (!this.editor.hasModel()) {\n return;\n }\n const currentDecorationIDs = WordHighlighter_1.storedDecorations.get(this.editor.getModel().uri);\n if (!currentDecorationIDs) {\n return;\n }\n this.editor.removeDecorations(currentDecorationIDs);\n WordHighlighter_1.storedDecorations.delete(this.editor.getModel().uri);\n if (this.decorations.length > 0) {\n this.decorations.clear();\n this._hasWordHighlights.set(false);\n }\n }\n _removeAllDecorations() {\n const currentEditors = this.codeEditorService.listCodeEditors();\n const deleteURI = [];\n // iterate over editors and store models in currentModels\n for (const editor of currentEditors) {\n if (!editor.hasModel()) {\n continue;\n }\n const currentDecorationIDs = WordHighlighter_1.storedDecorations.get(editor.getModel().uri);\n if (!currentDecorationIDs) {\n continue;\n }\n editor.removeDecorations(currentDecorationIDs);\n deleteURI.push(editor.getModel().uri);\n const editorHighlighterContrib = WordHighlighterContribution.get(editor);\n if (!(editorHighlighterContrib === null || editorHighlighterContrib === void 0 ? void 0 : editorHighlighterContrib.wordHighlighter)) {\n continue;\n }\n if (editorHighlighterContrib.wordHighlighter.decorations.length > 0) {\n editorHighlighterContrib.wordHighlighter.decorations.clear();\n editorHighlighterContrib.wordHighlighter.workerRequest = null;\n editorHighlighterContrib.wordHighlighter._hasWordHighlights.set(false);\n }\n }\n for (const uri of deleteURI) {\n WordHighlighter_1.storedDecorations.delete(uri);\n }\n }\n _stopSingular() {\n var _a, _b, _c, _d;\n // Remove any existing decorations + a possible query, and re - run to update decorations\n this._removeSingleDecorations();\n if (this.editor.hasTextFocus()) {\n if (((_a = this.editor.getModel()) === null || _a === void 0 ? void 0 : _a.uri.scheme) !== _base_common_network_js__WEBPACK_IMPORTED_MODULE_17__.Schemas.vscodeNotebookCell && ((_c = (_b = WordHighlighter_1.query) === null || _b === void 0 ? void 0 : _b.modelInfo) === null || _c === void 0 ? void 0 : _c.model.uri.scheme) !== _base_common_network_js__WEBPACK_IMPORTED_MODULE_17__.Schemas.vscodeNotebookCell) { // clear query if focused non-nb editor\n WordHighlighter_1.query = null;\n this._run(); // TODO: @Yoyokrazy -- investigate why we need a full rerun here. likely addressed a case/patch in the first iteration of this feature\n }\n else { // remove modelInfo to account for nb cell being disposed\n if ((_d = WordHighlighter_1.query) === null || _d === void 0 ? void 0 : _d.modelInfo) {\n WordHighlighter_1.query.modelInfo = null;\n }\n }\n }\n // Cancel any renderDecorationsTimer\n if (this.renderDecorationsTimer !== -1) {\n clearTimeout(this.renderDecorationsTimer);\n this.renderDecorationsTimer = -1;\n }\n // Cancel any worker request\n if (this.workerRequest !== null) {\n this.workerRequest.cancel();\n this.workerRequest = null;\n }\n // Invalidate any worker request callback\n if (!this.workerRequestCompleted) {\n this.workerRequestTokenId++;\n this.workerRequestCompleted = true;\n }\n }\n _stopAll() {\n // Remove any existing decorations\n // TODO: @Yoyokrazy -- this triggers as notebooks scroll, causing highlights to disappear momentarily.\n // maybe a nb type check?\n this._removeAllDecorations();\n // Cancel any renderDecorationsTimer\n if (this.renderDecorationsTimer !== -1) {\n clearTimeout(this.renderDecorationsTimer);\n this.renderDecorationsTimer = -1;\n }\n // Cancel any worker request\n if (this.workerRequest !== null) {\n this.workerRequest.cancel();\n this.workerRequest = null;\n }\n // Invalidate any worker request callback\n if (!this.workerRequestCompleted) {\n this.workerRequestTokenId++;\n this.workerRequestCompleted = true;\n }\n }\n _onPositionChanged(e) {\n var _a;\n // disabled\n if (this.occurrencesHighlight === 'off') {\n this._stopAll();\n return;\n }\n // ignore typing & other\n // need to check if the model is a notebook cell, should not stop if nb\n if (e.reason !== 3 /* CursorChangeReason.Explicit */ && ((_a = this.editor.getModel()) === null || _a === void 0 ? void 0 : _a.uri.scheme) !== _base_common_network_js__WEBPACK_IMPORTED_MODULE_17__.Schemas.vscodeNotebookCell) {\n this._stopAll();\n return;\n }\n this._run();\n }\n _getWord() {\n const editorSelection = this.editor.getSelection();\n const lineNumber = editorSelection.startLineNumber;\n const startColumn = editorSelection.startColumn;\n if (this.model.isDisposed()) {\n return null;\n }\n return this.model.getWordAtPosition({\n lineNumber: lineNumber,\n column: startColumn\n });\n }\n getOtherModelsToHighlight(model) {\n if (!model) {\n return [];\n }\n // notebook case\n const isNotebookEditor = model.uri.scheme === _base_common_network_js__WEBPACK_IMPORTED_MODULE_17__.Schemas.vscodeNotebookCell;\n if (isNotebookEditor) {\n const currentModels = [];\n const currentEditors = this.codeEditorService.listCodeEditors();\n for (const editor of currentEditors) {\n const tempModel = editor.getModel();\n if (tempModel && tempModel !== model && tempModel.uri.scheme === _base_common_network_js__WEBPACK_IMPORTED_MODULE_17__.Schemas.vscodeNotebookCell) {\n currentModels.push(tempModel);\n }\n }\n return currentModels;\n }\n // inline case\n // ? current works when highlighting outside of an inline diff, highlighting in.\n // ? broken when highlighting within a diff editor. highlighting the main editor does not work\n // ? editor group service could be useful here\n const currentModels = [];\n const currentEditors = this.codeEditorService.listCodeEditors();\n for (const editor of currentEditors) {\n if (!(0,_browser_editorBrowser_js__WEBPACK_IMPORTED_MODULE_7__.isDiffEditor)(editor)) {\n continue;\n }\n const diffModel = editor.getModel();\n if (!diffModel) {\n continue;\n }\n if (model === diffModel.modified) { // embedded inline chat diff would pass this, allowing highlights\n //? currentModels.push(diffModel.original);\n currentModels.push(diffModel.modified);\n }\n }\n if (currentModels.length) { // no matching editors have been found\n return currentModels;\n }\n // multi-doc OFF\n if (this.occurrencesHighlight === 'singleFile') {\n return [];\n }\n // multi-doc ON\n for (const editor of currentEditors) {\n const tempModel = editor.getModel();\n const isValidModel = tempModel && tempModel !== model;\n if (isValidModel) {\n currentModels.push(tempModel);\n }\n }\n return currentModels;\n }\n _run() {\n var _a;\n let workerRequestIsValid;\n const hasTextFocus = this.editor.hasTextFocus();\n if (!hasTextFocus) { // new nb cell scrolled in, didChangeModel fires\n if (!WordHighlighter_1.query) { // no previous query, nothing to highlight off of\n return;\n }\n }\n else { // has text focus\n const editorSelection = this.editor.getSelection();\n // ignore multiline selection\n if (!editorSelection || editorSelection.startLineNumber !== editorSelection.endLineNumber) {\n WordHighlighter_1.query = null;\n this._stopAll();\n return;\n }\n const startColumn = editorSelection.startColumn;\n const endColumn = editorSelection.endColumn;\n const word = this._getWord();\n // The selection must be inside a word or surround one word at most\n if (!word || word.startColumn > startColumn || word.endColumn < endColumn) {\n // no previous query, nothing to highlight\n WordHighlighter_1.query = null;\n this._stopAll();\n return;\n }\n // All the effort below is trying to achieve this:\n // - when cursor is moved to a word, trigger immediately a findOccurrences request\n // - 250ms later after the last cursor move event, render the occurrences\n // - no flickering!\n workerRequestIsValid = (this.workerRequest && this.workerRequest.isValid(this.model, editorSelection, this.decorations));\n WordHighlighter_1.query = {\n modelInfo: {\n model: this.model,\n selection: editorSelection,\n },\n word: word\n };\n }\n // There are 4 cases:\n // a) old workerRequest is valid & completed, renderDecorationsTimer fired\n // b) old workerRequest is valid & completed, renderDecorationsTimer not fired\n // c) old workerRequest is valid, but not completed\n // d) old workerRequest is not valid\n // For a) no action is needed\n // For c), member 'lastCursorPositionChangeTime' will be used when installing the timer so no action is needed\n this.lastCursorPositionChangeTime = (new Date()).getTime();\n if (workerRequestIsValid) {\n if (this.workerRequestCompleted && this.renderDecorationsTimer !== -1) {\n // case b)\n // Delay the firing of renderDecorationsTimer by an extra 250 ms\n clearTimeout(this.renderDecorationsTimer);\n this.renderDecorationsTimer = -1;\n this._beginRenderDecorations();\n }\n }\n else {\n // case d)\n // Stop all previous actions and start fresh\n this._stopAll();\n const myRequestId = ++this.workerRequestTokenId;\n this.workerRequestCompleted = false;\n const otherModelsToHighlight = this.getOtherModelsToHighlight(this.editor.getModel());\n // when reaching here, there are two possible states.\n // \t\t1) we have text focus, and a valid query was updated.\n // \t\t2) we do not have text focus, and a valid query is cached.\n // the query will ALWAYS have the correct data for the current highlight request, so it can always be passed to the workerRequest safely\n if (!WordHighlighter_1.query.modelInfo || WordHighlighter_1.query.modelInfo.model.isDisposed()) {\n return;\n }\n this.workerRequest = this.computeWithModel(WordHighlighter_1.query.modelInfo.model, WordHighlighter_1.query.modelInfo.selection, WordHighlighter_1.query.word, otherModelsToHighlight);\n (_a = this.workerRequest) === null || _a === void 0 ? void 0 : _a.result.then(data => {\n if (myRequestId === this.workerRequestTokenId) {\n this.workerRequestCompleted = true;\n this.workerRequestValue = data || [];\n this._beginRenderDecorations();\n }\n }, _base_common_errors_js__WEBPACK_IMPORTED_MODULE_5__.onUnexpectedError);\n }\n }\n computeWithModel(model, selection, word, otherModels) {\n if (!otherModels.length) {\n return computeOccurencesAtPosition(this.providers, model, selection, word, this.editor.getOption(130 /* EditorOption.wordSeparators */));\n }\n else {\n return computeOccurencesMultiModel(this.multiDocumentProviders, model, selection, word, this.editor.getOption(130 /* EditorOption.wordSeparators */), otherModels);\n }\n }\n _beginRenderDecorations() {\n const currentTime = (new Date()).getTime();\n const minimumRenderTime = this.lastCursorPositionChangeTime + 250;\n if (currentTime >= minimumRenderTime) {\n // Synchronous\n this.renderDecorationsTimer = -1;\n this.renderDecorations();\n }\n else {\n // Asynchronous\n this.renderDecorationsTimer = setTimeout(() => {\n this.renderDecorations();\n }, (minimumRenderTime - currentTime));\n }\n }\n renderDecorations() {\n var _a, _b, _c;\n this.renderDecorationsTimer = -1;\n // create new loop, iterate over current editors using this.codeEditorService.listCodeEditors(),\n // if the URI of that codeEditor is in the map, then add the decorations to the decorations array\n // then set the decorations for the editor\n const currentEditors = this.codeEditorService.listCodeEditors();\n for (const editor of currentEditors) {\n const editorHighlighterContrib = WordHighlighterContribution.get(editor);\n if (!editorHighlighterContrib) {\n continue;\n }\n const newDecorations = [];\n const uri = (_a = editor.getModel()) === null || _a === void 0 ? void 0 : _a.uri;\n if (uri && this.workerRequestValue.has(uri)) {\n const oldDecorationIDs = WordHighlighter_1.storedDecorations.get(uri);\n const newDocumentHighlights = this.workerRequestValue.get(uri);\n if (newDocumentHighlights) {\n for (const highlight of newDocumentHighlights) {\n if (!highlight.range) {\n continue;\n }\n newDecorations.push({\n range: highlight.range,\n options: (0,_highlightDecorations_js__WEBPACK_IMPORTED_MODULE_15__.getHighlightDecorationOptions)(highlight.kind)\n });\n }\n }\n let newDecorationIDs = [];\n editor.changeDecorations((changeAccessor) => {\n newDecorationIDs = changeAccessor.deltaDecorations(oldDecorationIDs !== null && oldDecorationIDs !== void 0 ? oldDecorationIDs : [], newDecorations);\n });\n WordHighlighter_1.storedDecorations = WordHighlighter_1.storedDecorations.set(uri, newDecorationIDs);\n if (newDecorations.length > 0) {\n (_b = editorHighlighterContrib.wordHighlighter) === null || _b === void 0 ? void 0 : _b.decorations.set(newDecorations);\n (_c = editorHighlighterContrib.wordHighlighter) === null || _c === void 0 ? void 0 : _c._hasWordHighlights.set(true);\n }\n }\n }\n }\n dispose() {\n this._stopSingular();\n this.toUnhook.dispose();\n }\n};\nWordHighlighter.storedDecorations = new _base_common_map_js__WEBPACK_IMPORTED_MODULE_18__.ResourceMap();\nWordHighlighter.query = null;\nWordHighlighter = WordHighlighter_1 = __decorate([\n __param(4, _browser_services_codeEditorService_js__WEBPACK_IMPORTED_MODULE_9__.ICodeEditorService)\n], WordHighlighter);\nlet WordHighlighterContribution = WordHighlighterContribution_1 = class WordHighlighterContribution extends _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_6__.Disposable {\n static get(editor) {\n return editor.getContribution(WordHighlighterContribution_1.ID);\n }\n constructor(editor, contextKeyService, languageFeaturesService, codeEditorService) {\n super();\n this._wordHighlighter = null;\n const createWordHighlighterIfPossible = () => {\n if (editor.hasModel() && !editor.getModel().isTooLargeForTokenization()) {\n this._wordHighlighter = new WordHighlighter(editor, languageFeaturesService.documentHighlightProvider, languageFeaturesService.multiDocumentHighlightProvider, contextKeyService, codeEditorService);\n }\n };\n this._register(editor.onDidChangeModel((e) => {\n if (this._wordHighlighter) {\n this._wordHighlighter.dispose();\n this._wordHighlighter = null;\n }\n createWordHighlighterIfPossible();\n }));\n createWordHighlighterIfPossible();\n }\n get wordHighlighter() {\n return this._wordHighlighter;\n }\n saveViewState() {\n if (this._wordHighlighter && this._wordHighlighter.hasDecorations()) {\n return true;\n }\n return false;\n }\n moveNext() {\n var _a;\n (_a = this._wordHighlighter) === null || _a === void 0 ? void 0 : _a.moveNext();\n }\n moveBack() {\n var _a;\n (_a = this._wordHighlighter) === null || _a === void 0 ? void 0 : _a.moveBack();\n }\n restoreViewState(state) {\n if (this._wordHighlighter && state) {\n this._wordHighlighter.restore();\n }\n }\n dispose() {\n if (this._wordHighlighter) {\n this._wordHighlighter.dispose();\n this._wordHighlighter = null;\n }\n super.dispose();\n }\n};\nWordHighlighterContribution.ID = 'editor.contrib.wordHighlighter';\nWordHighlighterContribution = WordHighlighterContribution_1 = __decorate([\n __param(1, _platform_contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_16__.IContextKeyService),\n __param(2, _common_services_languageFeatures_js__WEBPACK_IMPORTED_MODULE_14__.ILanguageFeaturesService),\n __param(3, _browser_services_codeEditorService_js__WEBPACK_IMPORTED_MODULE_9__.ICodeEditorService)\n], WordHighlighterContribution);\n\nclass WordHighlightNavigationAction extends _browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_8__.EditorAction {\n constructor(next, opts) {\n super(opts);\n this._isNext = next;\n }\n run(accessor, editor) {\n const controller = WordHighlighterContribution.get(editor);\n if (!controller) {\n return;\n }\n if (this._isNext) {\n controller.moveNext();\n }\n else {\n controller.moveBack();\n }\n }\n}\nclass NextWordHighlightAction extends WordHighlightNavigationAction {\n constructor() {\n super(true, {\n id: 'editor.action.wordHighlight.next',\n label: _nls_js__WEBPACK_IMPORTED_MODULE_0__.localize('wordHighlight.next.label', \"Go to Next Symbol Highlight\"),\n alias: 'Go to Next Symbol Highlight',\n precondition: ctxHasWordHighlights,\n kbOpts: {\n kbExpr: _common_editorContextKeys_js__WEBPACK_IMPORTED_MODULE_11__.EditorContextKeys.editorTextFocus,\n primary: 65 /* KeyCode.F7 */,\n weight: 100 /* KeybindingWeight.EditorContrib */\n }\n });\n }\n}\nclass PrevWordHighlightAction extends WordHighlightNavigationAction {\n constructor() {\n super(false, {\n id: 'editor.action.wordHighlight.prev',\n label: _nls_js__WEBPACK_IMPORTED_MODULE_0__.localize('wordHighlight.previous.label', \"Go to Previous Symbol Highlight\"),\n alias: 'Go to Previous Symbol Highlight',\n precondition: ctxHasWordHighlights,\n kbOpts: {\n kbExpr: _common_editorContextKeys_js__WEBPACK_IMPORTED_MODULE_11__.EditorContextKeys.editorTextFocus,\n primary: 1024 /* KeyMod.Shift */ | 65 /* KeyCode.F7 */,\n weight: 100 /* KeybindingWeight.EditorContrib */\n }\n });\n }\n}\nclass TriggerWordHighlightAction extends _browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_8__.EditorAction {\n constructor() {\n super({\n id: 'editor.action.wordHighlight.trigger',\n label: _nls_js__WEBPACK_IMPORTED_MODULE_0__.localize('wordHighlight.trigger.label', \"Trigger Symbol Highlight\"),\n alias: 'Trigger Symbol Highlight',\n precondition: ctxHasWordHighlights.toNegated(),\n kbOpts: {\n kbExpr: _common_editorContextKeys_js__WEBPACK_IMPORTED_MODULE_11__.EditorContextKeys.editorTextFocus,\n primary: 0,\n weight: 100 /* KeybindingWeight.EditorContrib */\n }\n });\n }\n run(accessor, editor, args) {\n const controller = WordHighlighterContribution.get(editor);\n if (!controller) {\n return;\n }\n controller.restoreViewState(true);\n }\n}\n(0,_browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_8__.registerEditorContribution)(WordHighlighterContribution.ID, WordHighlighterContribution, 0 /* EditorContributionInstantiation.Eager */); // eager because it uses `saveViewState`/`restoreViewState`\n(0,_browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_8__.registerEditorAction)(NextWordHighlightAction);\n(0,_browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_8__.registerEditorAction)(PrevWordHighlightAction);\n(0,_browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_8__.registerEditorAction)(TriggerWordHighlightAction);\n// registerEditorFeature(TextualMultiDocumentHighlightFeature);\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/contrib/wordHighlighter/browser/wordHighlighter.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/contrib/wordOperations/browser/wordOperations.js":
/*!***************************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/contrib/wordOperations/browser/wordOperations.js ***!
\***************************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ CursorWordAccessibilityLeft: () => (/* binding */ CursorWordAccessibilityLeft),\n/* harmony export */ CursorWordAccessibilityLeftSelect: () => (/* binding */ CursorWordAccessibilityLeftSelect),\n/* harmony export */ CursorWordAccessibilityRight: () => (/* binding */ CursorWordAccessibilityRight),\n/* harmony export */ CursorWordAccessibilityRightSelect: () => (/* binding */ CursorWordAccessibilityRightSelect),\n/* harmony export */ CursorWordEndLeft: () => (/* binding */ CursorWordEndLeft),\n/* harmony export */ CursorWordEndLeftSelect: () => (/* binding */ CursorWordEndLeftSelect),\n/* harmony export */ CursorWordEndRight: () => (/* binding */ CursorWordEndRight),\n/* harmony export */ CursorWordEndRightSelect: () => (/* binding */ CursorWordEndRightSelect),\n/* harmony export */ CursorWordLeft: () => (/* binding */ CursorWordLeft),\n/* harmony export */ CursorWordLeftSelect: () => (/* binding */ CursorWordLeftSelect),\n/* harmony export */ CursorWordRight: () => (/* binding */ CursorWordRight),\n/* harmony export */ CursorWordRightSelect: () => (/* binding */ CursorWordRightSelect),\n/* harmony export */ CursorWordStartLeft: () => (/* binding */ CursorWordStartLeft),\n/* harmony export */ CursorWordStartLeftSelect: () => (/* binding */ CursorWordStartLeftSelect),\n/* harmony export */ CursorWordStartRight: () => (/* binding */ CursorWordStartRight),\n/* harmony export */ CursorWordStartRightSelect: () => (/* binding */ CursorWordStartRightSelect),\n/* harmony export */ DeleteInsideWord: () => (/* binding */ DeleteInsideWord),\n/* harmony export */ DeleteWordCommand: () => (/* binding */ DeleteWordCommand),\n/* harmony export */ DeleteWordEndLeft: () => (/* binding */ DeleteWordEndLeft),\n/* harmony export */ DeleteWordEndRight: () => (/* binding */ DeleteWordEndRight),\n/* harmony export */ DeleteWordLeft: () => (/* binding */ DeleteWordLeft),\n/* harmony export */ DeleteWordLeftCommand: () => (/* binding */ DeleteWordLeftCommand),\n/* harmony export */ DeleteWordRight: () => (/* binding */ DeleteWordRight),\n/* harmony export */ DeleteWordRightCommand: () => (/* binding */ DeleteWordRightCommand),\n/* harmony export */ DeleteWordStartLeft: () => (/* binding */ DeleteWordStartLeft),\n/* harmony export */ DeleteWordStartRight: () => (/* binding */ DeleteWordStartRight),\n/* harmony export */ MoveWordCommand: () => (/* binding */ MoveWordCommand),\n/* harmony export */ WordLeftCommand: () => (/* binding */ WordLeftCommand),\n/* harmony export */ WordRightCommand: () => (/* binding */ WordRightCommand)\n/* harmony export */ });\n/* harmony import */ var _browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../browser/editorExtensions.js */ \"./node_modules/monaco-editor/esm/vs/editor/browser/editorExtensions.js\");\n/* harmony import */ var _common_commands_replaceCommand_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../common/commands/replaceCommand.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/commands/replaceCommand.js\");\n/* harmony import */ var _common_config_editorOptions_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../common/config/editorOptions.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/config/editorOptions.js\");\n/* harmony import */ var _common_cursorCommon_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../../common/cursorCommon.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/cursorCommon.js\");\n/* harmony import */ var _common_cursor_cursorWordOperations_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../../common/cursor/cursorWordOperations.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/cursor/cursorWordOperations.js\");\n/* harmony import */ var _common_core_wordCharacterClassifier_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../../../common/core/wordCharacterClassifier.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/core/wordCharacterClassifier.js\");\n/* harmony import */ var _common_core_position_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../../../common/core/position.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/core/position.js\");\n/* harmony import */ var _common_core_range_js__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ../../../common/core/range.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/core/range.js\");\n/* harmony import */ var _common_core_selection_js__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ../../../common/core/selection.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/core/selection.js\");\n/* harmony import */ var _common_editorContextKeys_js__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ../../../common/editorContextKeys.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/editorContextKeys.js\");\n/* harmony import */ var _common_languages_languageConfigurationRegistry_js__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! ../../../common/languages/languageConfigurationRegistry.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/languages/languageConfigurationRegistry.js\");\n/* harmony import */ var _nls_js__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(/*! ../../../../nls.js */ \"./node_modules/monaco-editor/esm/vs/nls.js\");\n/* harmony import */ var _platform_accessibility_common_accessibility_js__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(/*! ../../../../platform/accessibility/common/accessibility.js */ \"./node_modules/monaco-editor/esm/vs/platform/accessibility/common/accessibility.js\");\n/* harmony import */ var _platform_contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_13__ = __webpack_require__(/*! ../../../../platform/contextkey/common/contextkey.js */ \"./node_modules/monaco-editor/esm/vs/platform/contextkey/common/contextkey.js\");\n/* harmony import */ var _platform_contextkey_common_contextkeys_js__WEBPACK_IMPORTED_MODULE_14__ = __webpack_require__(/*! ../../../../platform/contextkey/common/contextkeys.js */ \"./node_modules/monaco-editor/esm/vs/platform/contextkey/common/contextkeys.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nclass MoveWordCommand extends _browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_0__.EditorCommand {\n constructor(opts) {\n super(opts);\n this._inSelectionMode = opts.inSelectionMode;\n this._wordNavigationType = opts.wordNavigationType;\n }\n runEditorCommand(accessor, editor, args) {\n if (!editor.hasModel()) {\n return;\n }\n const wordSeparators = (0,_common_core_wordCharacterClassifier_js__WEBPACK_IMPORTED_MODULE_5__.getMapForWordSeparators)(editor.getOption(130 /* EditorOption.wordSeparators */));\n const model = editor.getModel();\n const selections = editor.getSelections();\n const result = selections.map((sel) => {\n const inPosition = new _common_core_position_js__WEBPACK_IMPORTED_MODULE_6__.Position(sel.positionLineNumber, sel.positionColumn);\n const outPosition = this._move(wordSeparators, model, inPosition, this._wordNavigationType);\n return this._moveTo(sel, outPosition, this._inSelectionMode);\n });\n model.pushStackElement();\n editor._getViewModel().setCursorStates('moveWordCommand', 3 /* CursorChangeReason.Explicit */, result.map(r => _common_cursorCommon_js__WEBPACK_IMPORTED_MODULE_3__.CursorState.fromModelSelection(r)));\n if (result.length === 1) {\n const pos = new _common_core_position_js__WEBPACK_IMPORTED_MODULE_6__.Position(result[0].positionLineNumber, result[0].positionColumn);\n editor.revealPosition(pos, 0 /* ScrollType.Smooth */);\n }\n }\n _moveTo(from, to, inSelectionMode) {\n if (inSelectionMode) {\n // move just position\n return new _common_core_selection_js__WEBPACK_IMPORTED_MODULE_8__.Selection(from.selectionStartLineNumber, from.selectionStartColumn, to.lineNumber, to.column);\n }\n else {\n // move everything\n return new _common_core_selection_js__WEBPACK_IMPORTED_MODULE_8__.Selection(to.lineNumber, to.column, to.lineNumber, to.column);\n }\n }\n}\nclass WordLeftCommand extends MoveWordCommand {\n _move(wordSeparators, model, position, wordNavigationType) {\n return _common_cursor_cursorWordOperations_js__WEBPACK_IMPORTED_MODULE_4__.WordOperations.moveWordLeft(wordSeparators, model, position, wordNavigationType);\n }\n}\nclass WordRightCommand extends MoveWordCommand {\n _move(wordSeparators, model, position, wordNavigationType) {\n return _common_cursor_cursorWordOperations_js__WEBPACK_IMPORTED_MODULE_4__.WordOperations.moveWordRight(wordSeparators, model, position, wordNavigationType);\n }\n}\nclass CursorWordStartLeft extends WordLeftCommand {\n constructor() {\n super({\n inSelectionMode: false,\n wordNavigationType: 0 /* WordNavigationType.WordStart */,\n id: 'cursorWordStartLeft',\n precondition: undefined\n });\n }\n}\nclass CursorWordEndLeft extends WordLeftCommand {\n constructor() {\n super({\n inSelectionMode: false,\n wordNavigationType: 2 /* WordNavigationType.WordEnd */,\n id: 'cursorWordEndLeft',\n precondition: undefined\n });\n }\n}\nclass CursorWordLeft extends WordLeftCommand {\n constructor() {\n var _a;\n super({\n inSelectionMode: false,\n wordNavigationType: 1 /* WordNavigationType.WordStartFast */,\n id: 'cursorWordLeft',\n precondition: undefined,\n kbOpts: {\n kbExpr: _platform_contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_13__.ContextKeyExpr.and(_common_editorContextKeys_js__WEBPACK_IMPORTED_MODULE_9__.EditorContextKeys.textInputFocus, (_a = _platform_contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_13__.ContextKeyExpr.and(_platform_accessibility_common_accessibility_js__WEBPACK_IMPORTED_MODULE_12__.CONTEXT_ACCESSIBILITY_MODE_ENABLED, _platform_contextkey_common_contextkeys_js__WEBPACK_IMPORTED_MODULE_14__.IsWindowsContext)) === null || _a === void 0 ? void 0 : _a.negate()),\n primary: 2048 /* KeyMod.CtrlCmd */ | 15 /* KeyCode.LeftArrow */,\n mac: { primary: 512 /* KeyMod.Alt */ | 15 /* KeyCode.LeftArrow */ },\n weight: 100 /* KeybindingWeight.EditorContrib */\n }\n });\n }\n}\nclass CursorWordStartLeftSelect extends WordLeftCommand {\n constructor() {\n super({\n inSelectionMode: true,\n wordNavigationType: 0 /* WordNavigationType.WordStart */,\n id: 'cursorWordStartLeftSelect',\n precondition: undefined\n });\n }\n}\nclass CursorWordEndLeftSelect extends WordLeftCommand {\n constructor() {\n super({\n inSelectionMode: true,\n wordNavigationType: 2 /* WordNavigationType.WordEnd */,\n id: 'cursorWordEndLeftSelect',\n precondition: undefined\n });\n }\n}\nclass CursorWordLeftSelect extends WordLeftCommand {\n constructor() {\n var _a;\n super({\n inSelectionMode: true,\n wordNavigationType: 1 /* WordNavigationType.WordStartFast */,\n id: 'cursorWordLeftSelect',\n precondition: undefined,\n kbOpts: {\n kbExpr: _platform_contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_13__.ContextKeyExpr.and(_common_editorContextKeys_js__WEBPACK_IMPORTED_MODULE_9__.EditorContextKeys.textInputFocus, (_a = _platform_contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_13__.ContextKeyExpr.and(_platform_accessibility_common_accessibility_js__WEBPACK_IMPORTED_MODULE_12__.CONTEXT_ACCESSIBILITY_MODE_ENABLED, _platform_contextkey_common_contextkeys_js__WEBPACK_IMPORTED_MODULE_14__.IsWindowsContext)) === null || _a === void 0 ? void 0 : _a.negate()),\n primary: 2048 /* KeyMod.CtrlCmd */ | 1024 /* KeyMod.Shift */ | 15 /* KeyCode.LeftArrow */,\n mac: { primary: 512 /* KeyMod.Alt */ | 1024 /* KeyMod.Shift */ | 15 /* KeyCode.LeftArrow */ },\n weight: 100 /* KeybindingWeight.EditorContrib */\n }\n });\n }\n}\n// Accessibility navigation commands should only be enabled on windows since they are tuned to what NVDA expects\nclass CursorWordAccessibilityLeft extends WordLeftCommand {\n constructor() {\n super({\n inSelectionMode: false,\n wordNavigationType: 3 /* WordNavigationType.WordAccessibility */,\n id: 'cursorWordAccessibilityLeft',\n precondition: undefined\n });\n }\n _move(_, model, position, wordNavigationType) {\n return super._move((0,_common_core_wordCharacterClassifier_js__WEBPACK_IMPORTED_MODULE_5__.getMapForWordSeparators)(_common_config_editorOptions_js__WEBPACK_IMPORTED_MODULE_2__.EditorOptions.wordSeparators.defaultValue), model, position, wordNavigationType);\n }\n}\nclass CursorWordAccessibilityLeftSelect extends WordLeftCommand {\n constructor() {\n super({\n inSelectionMode: true,\n wordNavigationType: 3 /* WordNavigationType.WordAccessibility */,\n id: 'cursorWordAccessibilityLeftSelect',\n precondition: undefined\n });\n }\n _move(_, model, position, wordNavigationType) {\n return super._move((0,_common_core_wordCharacterClassifier_js__WEBPACK_IMPORTED_MODULE_5__.getMapForWordSeparators)(_common_config_editorOptions_js__WEBPACK_IMPORTED_MODULE_2__.EditorOptions.wordSeparators.defaultValue), model, position, wordNavigationType);\n }\n}\nclass CursorWordStartRight extends WordRightCommand {\n constructor() {\n super({\n inSelectionMode: false,\n wordNavigationType: 0 /* WordNavigationType.WordStart */,\n id: 'cursorWordStartRight',\n precondition: undefined\n });\n }\n}\nclass CursorWordEndRight extends WordRightCommand {\n constructor() {\n var _a;\n super({\n inSelectionMode: false,\n wordNavigationType: 2 /* WordNavigationType.WordEnd */,\n id: 'cursorWordEndRight',\n precondition: undefined,\n kbOpts: {\n kbExpr: _platform_contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_13__.ContextKeyExpr.and(_common_editorContextKeys_js__WEBPACK_IMPORTED_MODULE_9__.EditorContextKeys.textInputFocus, (_a = _platform_contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_13__.ContextKeyExpr.and(_platform_accessibility_common_accessibility_js__WEBPACK_IMPORTED_MODULE_12__.CONTEXT_ACCESSIBILITY_MODE_ENABLED, _platform_contextkey_common_contextkeys_js__WEBPACK_IMPORTED_MODULE_14__.IsWindowsContext)) === null || _a === void 0 ? void 0 : _a.negate()),\n primary: 2048 /* KeyMod.CtrlCmd */ | 17 /* KeyCode.RightArrow */,\n mac: { primary: 512 /* KeyMod.Alt */ | 17 /* KeyCode.RightArrow */ },\n weight: 100 /* KeybindingWeight.EditorContrib */\n }\n });\n }\n}\nclass CursorWordRight extends WordRightCommand {\n constructor() {\n super({\n inSelectionMode: false,\n wordNavigationType: 2 /* WordNavigationType.WordEnd */,\n id: 'cursorWordRight',\n precondition: undefined\n });\n }\n}\nclass CursorWordStartRightSelect extends WordRightCommand {\n constructor() {\n super({\n inSelectionMode: true,\n wordNavigationType: 0 /* WordNavigationType.WordStart */,\n id: 'cursorWordStartRightSelect',\n precondition: undefined\n });\n }\n}\nclass CursorWordEndRightSelect extends WordRightCommand {\n constructor() {\n var _a;\n super({\n inSelectionMode: true,\n wordNavigationType: 2 /* WordNavigationType.WordEnd */,\n id: 'cursorWordEndRightSelect',\n precondition: undefined,\n kbOpts: {\n kbExpr: _platform_contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_13__.ContextKeyExpr.and(_common_editorContextKeys_js__WEBPACK_IMPORTED_MODULE_9__.EditorContextKeys.textInputFocus, (_a = _platform_contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_13__.ContextKeyExpr.and(_platform_accessibility_common_accessibility_js__WEBPACK_IMPORTED_MODULE_12__.CONTEXT_ACCESSIBILITY_MODE_ENABLED, _platform_contextkey_common_contextkeys_js__WEBPACK_IMPORTED_MODULE_14__.IsWindowsContext)) === null || _a === void 0 ? void 0 : _a.negate()),\n primary: 2048 /* KeyMod.CtrlCmd */ | 1024 /* KeyMod.Shift */ | 17 /* KeyCode.RightArrow */,\n mac: { primary: 512 /* KeyMod.Alt */ | 1024 /* KeyMod.Shift */ | 17 /* KeyCode.RightArrow */ },\n weight: 100 /* KeybindingWeight.EditorContrib */\n }\n });\n }\n}\nclass CursorWordRightSelect extends WordRightCommand {\n constructor() {\n super({\n inSelectionMode: true,\n wordNavigationType: 2 /* WordNavigationType.WordEnd */,\n id: 'cursorWordRightSelect',\n precondition: undefined\n });\n }\n}\nclass CursorWordAccessibilityRight extends WordRightCommand {\n constructor() {\n super({\n inSelectionMode: false,\n wordNavigationType: 3 /* WordNavigationType.WordAccessibility */,\n id: 'cursorWordAccessibilityRight',\n precondition: undefined\n });\n }\n _move(_, model, position, wordNavigationType) {\n return super._move((0,_common_core_wordCharacterClassifier_js__WEBPACK_IMPORTED_MODULE_5__.getMapForWordSeparators)(_common_config_editorOptions_js__WEBPACK_IMPORTED_MODULE_2__.EditorOptions.wordSeparators.defaultValue), model, position, wordNavigationType);\n }\n}\nclass CursorWordAccessibilityRightSelect extends WordRightCommand {\n constructor() {\n super({\n inSelectionMode: true,\n wordNavigationType: 3 /* WordNavigationType.WordAccessibility */,\n id: 'cursorWordAccessibilityRightSelect',\n precondition: undefined\n });\n }\n _move(_, model, position, wordNavigationType) {\n return super._move((0,_common_core_wordCharacterClassifier_js__WEBPACK_IMPORTED_MODULE_5__.getMapForWordSeparators)(_common_config_editorOptions_js__WEBPACK_IMPORTED_MODULE_2__.EditorOptions.wordSeparators.defaultValue), model, position, wordNavigationType);\n }\n}\nclass DeleteWordCommand extends _browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_0__.EditorCommand {\n constructor(opts) {\n super(opts);\n this._whitespaceHeuristics = opts.whitespaceHeuristics;\n this._wordNavigationType = opts.wordNavigationType;\n }\n runEditorCommand(accessor, editor, args) {\n const languageConfigurationService = accessor.get(_common_languages_languageConfigurationRegistry_js__WEBPACK_IMPORTED_MODULE_10__.ILanguageConfigurationService);\n if (!editor.hasModel()) {\n return;\n }\n const wordSeparators = (0,_common_core_wordCharacterClassifier_js__WEBPACK_IMPORTED_MODULE_5__.getMapForWordSeparators)(editor.getOption(130 /* EditorOption.wordSeparators */));\n const model = editor.getModel();\n const selections = editor.getSelections();\n const autoClosingBrackets = editor.getOption(6 /* EditorOption.autoClosingBrackets */);\n const autoClosingQuotes = editor.getOption(11 /* EditorOption.autoClosingQuotes */);\n const autoClosingPairs = languageConfigurationService.getLanguageConfiguration(model.getLanguageId()).getAutoClosingPairs();\n const viewModel = editor._getViewModel();\n const commands = selections.map((sel) => {\n const deleteRange = this._delete({\n wordSeparators,\n model,\n selection: sel,\n whitespaceHeuristics: this._whitespaceHeuristics,\n autoClosingDelete: editor.getOption(9 /* EditorOption.autoClosingDelete */),\n autoClosingBrackets,\n autoClosingQuotes,\n autoClosingPairs,\n autoClosedCharacters: viewModel.getCursorAutoClosedCharacters()\n }, this._wordNavigationType);\n return new _common_commands_replaceCommand_js__WEBPACK_IMPORTED_MODULE_1__.ReplaceCommand(deleteRange, '');\n });\n editor.pushUndoStop();\n editor.executeCommands(this.id, commands);\n editor.pushUndoStop();\n }\n}\nclass DeleteWordLeftCommand extends DeleteWordCommand {\n _delete(ctx, wordNavigationType) {\n const r = _common_cursor_cursorWordOperations_js__WEBPACK_IMPORTED_MODULE_4__.WordOperations.deleteWordLeft(ctx, wordNavigationType);\n if (r) {\n return r;\n }\n return new _common_core_range_js__WEBPACK_IMPORTED_MODULE_7__.Range(1, 1, 1, 1);\n }\n}\nclass DeleteWordRightCommand extends DeleteWordCommand {\n _delete(ctx, wordNavigationType) {\n const r = _common_cursor_cursorWordOperations_js__WEBPACK_IMPORTED_MODULE_4__.WordOperations.deleteWordRight(ctx, wordNavigationType);\n if (r) {\n return r;\n }\n const lineCount = ctx.model.getLineCount();\n const maxColumn = ctx.model.getLineMaxColumn(lineCount);\n return new _common_core_range_js__WEBPACK_IMPORTED_MODULE_7__.Range(lineCount, maxColumn, lineCount, maxColumn);\n }\n}\nclass DeleteWordStartLeft extends DeleteWordLeftCommand {\n constructor() {\n super({\n whitespaceHeuristics: false,\n wordNavigationType: 0 /* WordNavigationType.WordStart */,\n id: 'deleteWordStartLeft',\n precondition: _common_editorContextKeys_js__WEBPACK_IMPORTED_MODULE_9__.EditorContextKeys.writable\n });\n }\n}\nclass DeleteWordEndLeft extends DeleteWordLeftCommand {\n constructor() {\n super({\n whitespaceHeuristics: false,\n wordNavigationType: 2 /* WordNavigationType.WordEnd */,\n id: 'deleteWordEndLeft',\n precondition: _common_editorContextKeys_js__WEBPACK_IMPORTED_MODULE_9__.EditorContextKeys.writable\n });\n }\n}\nclass DeleteWordLeft extends DeleteWordLeftCommand {\n constructor() {\n super({\n whitespaceHeuristics: true,\n wordNavigationType: 0 /* WordNavigationType.WordStart */,\n id: 'deleteWordLeft',\n precondition: _common_editorContextKeys_js__WEBPACK_IMPORTED_MODULE_9__.EditorContextKeys.writable,\n kbOpts: {\n kbExpr: _common_editorContextKeys_js__WEBPACK_IMPORTED_MODULE_9__.EditorContextKeys.textInputFocus,\n primary: 2048 /* KeyMod.CtrlCmd */ | 1 /* KeyCode.Backspace */,\n mac: { primary: 512 /* KeyMod.Alt */ | 1 /* KeyCode.Backspace */ },\n weight: 100 /* KeybindingWeight.EditorContrib */\n }\n });\n }\n}\nclass DeleteWordStartRight extends DeleteWordRightCommand {\n constructor() {\n super({\n whitespaceHeuristics: false,\n wordNavigationType: 0 /* WordNavigationType.WordStart */,\n id: 'deleteWordStartRight',\n precondition: _common_editorContextKeys_js__WEBPACK_IMPORTED_MODULE_9__.EditorContextKeys.writable\n });\n }\n}\nclass DeleteWordEndRight extends DeleteWordRightCommand {\n constructor() {\n super({\n whitespaceHeuristics: false,\n wordNavigationType: 2 /* WordNavigationType.WordEnd */,\n id: 'deleteWordEndRight',\n precondition: _common_editorContextKeys_js__WEBPACK_IMPORTED_MODULE_9__.EditorContextKeys.writable\n });\n }\n}\nclass DeleteWordRight extends DeleteWordRightCommand {\n constructor() {\n super({\n whitespaceHeuristics: true,\n wordNavigationType: 2 /* WordNavigationType.WordEnd */,\n id: 'deleteWordRight',\n precondition: _common_editorContextKeys_js__WEBPACK_IMPORTED_MODULE_9__.EditorContextKeys.writable,\n kbOpts: {\n kbExpr: _common_editorContextKeys_js__WEBPACK_IMPORTED_MODULE_9__.EditorContextKeys.textInputFocus,\n primary: 2048 /* KeyMod.CtrlCmd */ | 20 /* KeyCode.Delete */,\n mac: { primary: 512 /* KeyMod.Alt */ | 20 /* KeyCode.Delete */ },\n weight: 100 /* KeybindingWeight.EditorContrib */\n }\n });\n }\n}\nclass DeleteInsideWord extends _browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_0__.EditorAction {\n constructor() {\n super({\n id: 'deleteInsideWord',\n precondition: _common_editorContextKeys_js__WEBPACK_IMPORTED_MODULE_9__.EditorContextKeys.writable,\n label: _nls_js__WEBPACK_IMPORTED_MODULE_11__.localize('deleteInsideWord', \"Delete Word\"),\n alias: 'Delete Word'\n });\n }\n run(accessor, editor, args) {\n if (!editor.hasModel()) {\n return;\n }\n const wordSeparators = (0,_common_core_wordCharacterClassifier_js__WEBPACK_IMPORTED_MODULE_5__.getMapForWordSeparators)(editor.getOption(130 /* EditorOption.wordSeparators */));\n const model = editor.getModel();\n const selections = editor.getSelections();\n const commands = selections.map((sel) => {\n const deleteRange = _common_cursor_cursorWordOperations_js__WEBPACK_IMPORTED_MODULE_4__.WordOperations.deleteInsideWord(wordSeparators, model, sel);\n return new _common_commands_replaceCommand_js__WEBPACK_IMPORTED_MODULE_1__.ReplaceCommand(deleteRange, '');\n });\n editor.pushUndoStop();\n editor.executeCommands(this.id, commands);\n editor.pushUndoStop();\n }\n}\n(0,_browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_0__.registerEditorCommand)(new CursorWordStartLeft());\n(0,_browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_0__.registerEditorCommand)(new CursorWordEndLeft());\n(0,_browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_0__.registerEditorCommand)(new CursorWordLeft());\n(0,_browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_0__.registerEditorCommand)(new CursorWordStartLeftSelect());\n(0,_browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_0__.registerEditorCommand)(new CursorWordEndLeftSelect());\n(0,_browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_0__.registerEditorCommand)(new CursorWordLeftSelect());\n(0,_browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_0__.registerEditorCommand)(new CursorWordStartRight());\n(0,_browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_0__.registerEditorCommand)(new CursorWordEndRight());\n(0,_browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_0__.registerEditorCommand)(new CursorWordRight());\n(0,_browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_0__.registerEditorCommand)(new CursorWordStartRightSelect());\n(0,_browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_0__.registerEditorCommand)(new CursorWordEndRightSelect());\n(0,_browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_0__.registerEditorCommand)(new CursorWordRightSelect());\n(0,_browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_0__.registerEditorCommand)(new CursorWordAccessibilityLeft());\n(0,_browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_0__.registerEditorCommand)(new CursorWordAccessibilityLeftSelect());\n(0,_browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_0__.registerEditorCommand)(new CursorWordAccessibilityRight());\n(0,_browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_0__.registerEditorCommand)(new CursorWordAccessibilityRightSelect());\n(0,_browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_0__.registerEditorCommand)(new DeleteWordStartLeft());\n(0,_browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_0__.registerEditorCommand)(new DeleteWordEndLeft());\n(0,_browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_0__.registerEditorCommand)(new DeleteWordLeft());\n(0,_browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_0__.registerEditorCommand)(new DeleteWordStartRight());\n(0,_browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_0__.registerEditorCommand)(new DeleteWordEndRight());\n(0,_browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_0__.registerEditorCommand)(new DeleteWordRight());\n(0,_browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_0__.registerEditorAction)(DeleteInsideWord);\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/contrib/wordOperations/browser/wordOperations.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/contrib/wordPartOperations/browser/wordPartOperations.js":
/*!***********************************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/contrib/wordPartOperations/browser/wordPartOperations.js ***!
\***********************************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ CursorWordPartLeft: () => (/* binding */ CursorWordPartLeft),\n/* harmony export */ CursorWordPartLeftSelect: () => (/* binding */ CursorWordPartLeftSelect),\n/* harmony export */ CursorWordPartRight: () => (/* binding */ CursorWordPartRight),\n/* harmony export */ CursorWordPartRightSelect: () => (/* binding */ CursorWordPartRightSelect),\n/* harmony export */ DeleteWordPartLeft: () => (/* binding */ DeleteWordPartLeft),\n/* harmony export */ DeleteWordPartRight: () => (/* binding */ DeleteWordPartRight),\n/* harmony export */ WordPartLeftCommand: () => (/* binding */ WordPartLeftCommand),\n/* harmony export */ WordPartRightCommand: () => (/* binding */ WordPartRightCommand)\n/* harmony export */ });\n/* harmony import */ var _browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../browser/editorExtensions.js */ \"./node_modules/monaco-editor/esm/vs/editor/browser/editorExtensions.js\");\n/* harmony import */ var _common_cursor_cursorWordOperations_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../common/cursor/cursorWordOperations.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/cursor/cursorWordOperations.js\");\n/* harmony import */ var _common_core_range_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../common/core/range.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/core/range.js\");\n/* harmony import */ var _common_editorContextKeys_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../../common/editorContextKeys.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/editorContextKeys.js\");\n/* harmony import */ var _wordOperations_browser_wordOperations_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../wordOperations/browser/wordOperations.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/wordOperations/browser/wordOperations.js\");\n/* harmony import */ var _platform_commands_common_commands_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../../../../platform/commands/common/commands.js */ \"./node_modules/monaco-editor/esm/vs/platform/commands/common/commands.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n\n\n\n\n\nclass DeleteWordPartLeft extends _wordOperations_browser_wordOperations_js__WEBPACK_IMPORTED_MODULE_4__.DeleteWordCommand {\n constructor() {\n super({\n whitespaceHeuristics: true,\n wordNavigationType: 0 /* WordNavigationType.WordStart */,\n id: 'deleteWordPartLeft',\n precondition: _common_editorContextKeys_js__WEBPACK_IMPORTED_MODULE_3__.EditorContextKeys.writable,\n kbOpts: {\n kbExpr: _common_editorContextKeys_js__WEBPACK_IMPORTED_MODULE_3__.EditorContextKeys.textInputFocus,\n primary: 0,\n mac: { primary: 256 /* KeyMod.WinCtrl */ | 512 /* KeyMod.Alt */ | 1 /* KeyCode.Backspace */ },\n weight: 100 /* KeybindingWeight.EditorContrib */\n }\n });\n }\n _delete(ctx, wordNavigationType) {\n const r = _common_cursor_cursorWordOperations_js__WEBPACK_IMPORTED_MODULE_1__.WordPartOperations.deleteWordPartLeft(ctx);\n if (r) {\n return r;\n }\n return new _common_core_range_js__WEBPACK_IMPORTED_MODULE_2__.Range(1, 1, 1, 1);\n }\n}\nclass DeleteWordPartRight extends _wordOperations_browser_wordOperations_js__WEBPACK_IMPORTED_MODULE_4__.DeleteWordCommand {\n constructor() {\n super({\n whitespaceHeuristics: true,\n wordNavigationType: 2 /* WordNavigationType.WordEnd */,\n id: 'deleteWordPartRight',\n precondition: _common_editorContextKeys_js__WEBPACK_IMPORTED_MODULE_3__.EditorContextKeys.writable,\n kbOpts: {\n kbExpr: _common_editorContextKeys_js__WEBPACK_IMPORTED_MODULE_3__.EditorContextKeys.textInputFocus,\n primary: 0,\n mac: { primary: 256 /* KeyMod.WinCtrl */ | 512 /* KeyMod.Alt */ | 20 /* KeyCode.Delete */ },\n weight: 100 /* KeybindingWeight.EditorContrib */\n }\n });\n }\n _delete(ctx, wordNavigationType) {\n const r = _common_cursor_cursorWordOperations_js__WEBPACK_IMPORTED_MODULE_1__.WordPartOperations.deleteWordPartRight(ctx);\n if (r) {\n return r;\n }\n const lineCount = ctx.model.getLineCount();\n const maxColumn = ctx.model.getLineMaxColumn(lineCount);\n return new _common_core_range_js__WEBPACK_IMPORTED_MODULE_2__.Range(lineCount, maxColumn, lineCount, maxColumn);\n }\n}\nclass WordPartLeftCommand extends _wordOperations_browser_wordOperations_js__WEBPACK_IMPORTED_MODULE_4__.MoveWordCommand {\n _move(wordSeparators, model, position, wordNavigationType) {\n return _common_cursor_cursorWordOperations_js__WEBPACK_IMPORTED_MODULE_1__.WordPartOperations.moveWordPartLeft(wordSeparators, model, position);\n }\n}\nclass CursorWordPartLeft extends WordPartLeftCommand {\n constructor() {\n super({\n inSelectionMode: false,\n wordNavigationType: 0 /* WordNavigationType.WordStart */,\n id: 'cursorWordPartLeft',\n precondition: undefined,\n kbOpts: {\n kbExpr: _common_editorContextKeys_js__WEBPACK_IMPORTED_MODULE_3__.EditorContextKeys.textInputFocus,\n primary: 0,\n mac: { primary: 256 /* KeyMod.WinCtrl */ | 512 /* KeyMod.Alt */ | 15 /* KeyCode.LeftArrow */ },\n weight: 100 /* KeybindingWeight.EditorContrib */\n }\n });\n }\n}\n// Register previous id for compatibility purposes\n_platform_commands_common_commands_js__WEBPACK_IMPORTED_MODULE_5__.CommandsRegistry.registerCommandAlias('cursorWordPartStartLeft', 'cursorWordPartLeft');\nclass CursorWordPartLeftSelect extends WordPartLeftCommand {\n constructor() {\n super({\n inSelectionMode: true,\n wordNavigationType: 0 /* WordNavigationType.WordStart */,\n id: 'cursorWordPartLeftSelect',\n precondition: undefined,\n kbOpts: {\n kbExpr: _common_editorContextKeys_js__WEBPACK_IMPORTED_MODULE_3__.EditorContextKeys.textInputFocus,\n primary: 0,\n mac: { primary: 256 /* KeyMod.WinCtrl */ | 512 /* KeyMod.Alt */ | 1024 /* KeyMod.Shift */ | 15 /* KeyCode.LeftArrow */ },\n weight: 100 /* KeybindingWeight.EditorContrib */\n }\n });\n }\n}\n// Register previous id for compatibility purposes\n_platform_commands_common_commands_js__WEBPACK_IMPORTED_MODULE_5__.CommandsRegistry.registerCommandAlias('cursorWordPartStartLeftSelect', 'cursorWordPartLeftSelect');\nclass WordPartRightCommand extends _wordOperations_browser_wordOperations_js__WEBPACK_IMPORTED_MODULE_4__.MoveWordCommand {\n _move(wordSeparators, model, position, wordNavigationType) {\n return _common_cursor_cursorWordOperations_js__WEBPACK_IMPORTED_MODULE_1__.WordPartOperations.moveWordPartRight(wordSeparators, model, position);\n }\n}\nclass CursorWordPartRight extends WordPartRightCommand {\n constructor() {\n super({\n inSelectionMode: false,\n wordNavigationType: 2 /* WordNavigationType.WordEnd */,\n id: 'cursorWordPartRight',\n precondition: undefined,\n kbOpts: {\n kbExpr: _common_editorContextKeys_js__WEBPACK_IMPORTED_MODULE_3__.EditorContextKeys.textInputFocus,\n primary: 0,\n mac: { primary: 256 /* KeyMod.WinCtrl */ | 512 /* KeyMod.Alt */ | 17 /* KeyCode.RightArrow */ },\n weight: 100 /* KeybindingWeight.EditorContrib */\n }\n });\n }\n}\nclass CursorWordPartRightSelect extends WordPartRightCommand {\n constructor() {\n super({\n inSelectionMode: true,\n wordNavigationType: 2 /* WordNavigationType.WordEnd */,\n id: 'cursorWordPartRightSelect',\n precondition: undefined,\n kbOpts: {\n kbExpr: _common_editorContextKeys_js__WEBPACK_IMPORTED_MODULE_3__.EditorContextKeys.textInputFocus,\n primary: 0,\n mac: { primary: 256 /* KeyMod.WinCtrl */ | 512 /* KeyMod.Alt */ | 1024 /* KeyMod.Shift */ | 17 /* KeyCode.RightArrow */ },\n weight: 100 /* KeybindingWeight.EditorContrib */\n }\n });\n }\n}\n(0,_browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_0__.registerEditorCommand)(new DeleteWordPartLeft());\n(0,_browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_0__.registerEditorCommand)(new DeleteWordPartRight());\n(0,_browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_0__.registerEditorCommand)(new CursorWordPartLeft());\n(0,_browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_0__.registerEditorCommand)(new CursorWordPartLeftSelect());\n(0,_browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_0__.registerEditorCommand)(new CursorWordPartRight());\n(0,_browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_0__.registerEditorCommand)(new CursorWordPartRightSelect());\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/contrib/wordPartOperations/browser/wordPartOperations.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/contrib/zoneWidget/browser/zoneWidget.js":
/*!*******************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/contrib/zoneWidget/browser/zoneWidget.js ***!
\*******************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ OverlayWidgetDelegate: () => (/* binding */ OverlayWidgetDelegate),\n/* harmony export */ ZoneWidget: () => (/* binding */ ZoneWidget)\n/* harmony export */ });\n/* harmony import */ var _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../../base/browser/dom.js */ \"./node_modules/monaco-editor/esm/vs/base/browser/dom.js\");\n/* harmony import */ var _base_browser_ui_sash_sash_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../base/browser/ui/sash/sash.js */ \"./node_modules/monaco-editor/esm/vs/base/browser/ui/sash/sash.js\");\n/* harmony import */ var _base_common_color_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../../base/common/color.js */ \"./node_modules/monaco-editor/esm/vs/base/common/color.js\");\n/* harmony import */ var _base_common_idGenerator_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../../../base/common/idGenerator.js */ \"./node_modules/monaco-editor/esm/vs/base/common/idGenerator.js\");\n/* harmony import */ var _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../../../base/common/lifecycle.js */ \"./node_modules/monaco-editor/esm/vs/base/common/lifecycle.js\");\n/* harmony import */ var _base_common_objects_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../../../../base/common/objects.js */ \"./node_modules/monaco-editor/esm/vs/base/common/objects.js\");\n/* harmony import */ var _zoneWidget_css__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ./zoneWidget.css */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/zoneWidget/browser/zoneWidget.css\");\n/* harmony import */ var _common_core_range_js__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ../../../common/core/range.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/core/range.js\");\n/* harmony import */ var _common_model_textModel_js__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ../../../common/model/textModel.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/model/textModel.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n\n\n\n\n\n\n\n\nconst defaultColor = new _base_common_color_js__WEBPACK_IMPORTED_MODULE_2__.Color(new _base_common_color_js__WEBPACK_IMPORTED_MODULE_2__.RGBA(0, 122, 204));\nconst defaultOptions = {\n showArrow: true,\n showFrame: true,\n className: '',\n frameColor: defaultColor,\n arrowColor: defaultColor,\n keepEditorSelection: false\n};\nconst WIDGET_ID = 'vs.editor.contrib.zoneWidget';\nclass ViewZoneDelegate {\n constructor(domNode, afterLineNumber, afterColumn, heightInLines, onDomNodeTop, onComputedHeight, showInHiddenAreas, ordinal) {\n this.id = ''; // A valid zone id should be greater than 0\n this.domNode = domNode;\n this.afterLineNumber = afterLineNumber;\n this.afterColumn = afterColumn;\n this.heightInLines = heightInLines;\n this.showInHiddenAreas = showInHiddenAreas;\n this.ordinal = ordinal;\n this._onDomNodeTop = onDomNodeTop;\n this._onComputedHeight = onComputedHeight;\n }\n onDomNodeTop(top) {\n this._onDomNodeTop(top);\n }\n onComputedHeight(height) {\n this._onComputedHeight(height);\n }\n}\nclass OverlayWidgetDelegate {\n constructor(id, domNode) {\n this._id = id;\n this._domNode = domNode;\n }\n getId() {\n return this._id;\n }\n getDomNode() {\n return this._domNode;\n }\n getPosition() {\n return null;\n }\n}\nclass Arrow {\n constructor(_editor) {\n this._editor = _editor;\n this._ruleName = Arrow._IdGenerator.nextId();\n this._decorations = this._editor.createDecorationsCollection();\n this._color = null;\n this._height = -1;\n }\n dispose() {\n this.hide();\n _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.removeCSSRulesContainingSelector(this._ruleName);\n }\n set color(value) {\n if (this._color !== value) {\n this._color = value;\n this._updateStyle();\n }\n }\n set height(value) {\n if (this._height !== value) {\n this._height = value;\n this._updateStyle();\n }\n }\n _updateStyle() {\n _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.removeCSSRulesContainingSelector(this._ruleName);\n _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.createCSSRule(`.monaco-editor ${this._ruleName}`, `border-style: solid; border-color: transparent; border-bottom-color: ${this._color}; border-width: ${this._height}px; bottom: -${this._height}px; margin-left: -${this._height}px; `);\n }\n show(where) {\n if (where.column === 1) {\n // the arrow isn't pretty at column 1 and we need to push it out a little\n where = { lineNumber: where.lineNumber, column: 2 };\n }\n this._decorations.set([{\n range: _common_core_range_js__WEBPACK_IMPORTED_MODULE_7__.Range.fromPositions(where),\n options: {\n description: 'zone-widget-arrow',\n className: this._ruleName,\n stickiness: 1 /* TrackedRangeStickiness.NeverGrowsWhenTypingAtEdges */\n }\n }]);\n }\n hide() {\n this._decorations.clear();\n }\n}\nArrow._IdGenerator = new _base_common_idGenerator_js__WEBPACK_IMPORTED_MODULE_3__.IdGenerator('.arrow-decoration-');\nclass ZoneWidget {\n constructor(editor, options = {}) {\n this._arrow = null;\n this._overlayWidget = null;\n this._resizeSash = null;\n this._viewZone = null;\n this._disposables = new _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_4__.DisposableStore();\n this.container = null;\n this._isShowing = false;\n this.editor = editor;\n this._positionMarkerId = this.editor.createDecorationsCollection();\n this.options = _base_common_objects_js__WEBPACK_IMPORTED_MODULE_5__.deepClone(options);\n _base_common_objects_js__WEBPACK_IMPORTED_MODULE_5__.mixin(this.options, defaultOptions, false);\n this.domNode = document.createElement('div');\n if (!this.options.isAccessible) {\n this.domNode.setAttribute('aria-hidden', 'true');\n this.domNode.setAttribute('role', 'presentation');\n }\n this._disposables.add(this.editor.onDidLayoutChange((info) => {\n const width = this._getWidth(info);\n this.domNode.style.width = width + 'px';\n this.domNode.style.left = this._getLeft(info) + 'px';\n this._onWidth(width);\n }));\n }\n dispose() {\n if (this._overlayWidget) {\n this.editor.removeOverlayWidget(this._overlayWidget);\n this._overlayWidget = null;\n }\n if (this._viewZone) {\n this.editor.changeViewZones(accessor => {\n if (this._viewZone) {\n accessor.removeZone(this._viewZone.id);\n }\n this._viewZone = null;\n });\n }\n this._positionMarkerId.clear();\n this._disposables.dispose();\n }\n create() {\n this.domNode.classList.add('zone-widget');\n if (this.options.className) {\n this.domNode.classList.add(this.options.className);\n }\n this.container = document.createElement('div');\n this.container.classList.add('zone-widget-container');\n this.domNode.appendChild(this.container);\n if (this.options.showArrow) {\n this._arrow = new Arrow(this.editor);\n this._disposables.add(this._arrow);\n }\n this._fillContainer(this.container);\n this._initSash();\n this._applyStyles();\n }\n style(styles) {\n if (styles.frameColor) {\n this.options.frameColor = styles.frameColor;\n }\n if (styles.arrowColor) {\n this.options.arrowColor = styles.arrowColor;\n }\n this._applyStyles();\n }\n _applyStyles() {\n if (this.container && this.options.frameColor) {\n const frameColor = this.options.frameColor.toString();\n this.container.style.borderTopColor = frameColor;\n this.container.style.borderBottomColor = frameColor;\n }\n if (this._arrow && this.options.arrowColor) {\n const arrowColor = this.options.arrowColor.toString();\n this._arrow.color = arrowColor;\n }\n }\n _getWidth(info) {\n return info.width - info.minimap.minimapWidth - info.verticalScrollbarWidth;\n }\n _getLeft(info) {\n // If minimap is to the left, we move beyond it\n if (info.minimap.minimapWidth > 0 && info.minimap.minimapLeft === 0) {\n return info.minimap.minimapWidth;\n }\n return 0;\n }\n _onViewZoneTop(top) {\n this.domNode.style.top = top + 'px';\n }\n _onViewZoneHeight(height) {\n var _a;\n this.domNode.style.height = `${height}px`;\n if (this.container) {\n const containerHeight = height - this._decoratingElementsHeight();\n this.container.style.height = `${containerHeight}px`;\n const layoutInfo = this.editor.getLayoutInfo();\n this._doLayout(containerHeight, this._getWidth(layoutInfo));\n }\n (_a = this._resizeSash) === null || _a === void 0 ? void 0 : _a.layout();\n }\n get position() {\n const range = this._positionMarkerId.getRange(0);\n if (!range) {\n return undefined;\n }\n return range.getStartPosition();\n }\n show(rangeOrPos, heightInLines) {\n const range = _common_core_range_js__WEBPACK_IMPORTED_MODULE_7__.Range.isIRange(rangeOrPos) ? _common_core_range_js__WEBPACK_IMPORTED_MODULE_7__.Range.lift(rangeOrPos) : _common_core_range_js__WEBPACK_IMPORTED_MODULE_7__.Range.fromPositions(rangeOrPos);\n this._isShowing = true;\n this._showImpl(range, heightInLines);\n this._isShowing = false;\n this._positionMarkerId.set([{ range, options: _common_model_textModel_js__WEBPACK_IMPORTED_MODULE_8__.ModelDecorationOptions.EMPTY }]);\n }\n hide() {\n var _a;\n if (this._viewZone) {\n this.editor.changeViewZones(accessor => {\n if (this._viewZone) {\n accessor.removeZone(this._viewZone.id);\n }\n });\n this._viewZone = null;\n }\n if (this._overlayWidget) {\n this.editor.removeOverlayWidget(this._overlayWidget);\n this._overlayWidget = null;\n }\n (_a = this._arrow) === null || _a === void 0 ? void 0 : _a.hide();\n this._positionMarkerId.clear();\n }\n _decoratingElementsHeight() {\n const lineHeight = this.editor.getOption(67 /* EditorOption.lineHeight */);\n let result = 0;\n if (this.options.showArrow) {\n const arrowHeight = Math.round(lineHeight / 3);\n result += 2 * arrowHeight;\n }\n if (this.options.showFrame) {\n const frameThickness = Math.round(lineHeight / 9);\n result += 2 * frameThickness;\n }\n return result;\n }\n _showImpl(where, heightInLines) {\n const position = where.getStartPosition();\n const layoutInfo = this.editor.getLayoutInfo();\n const width = this._getWidth(layoutInfo);\n this.domNode.style.width = `${width}px`;\n this.domNode.style.left = this._getLeft(layoutInfo) + 'px';\n // Render the widget as zone (rendering) and widget (lifecycle)\n const viewZoneDomNode = document.createElement('div');\n viewZoneDomNode.style.overflow = 'hidden';\n const lineHeight = this.editor.getOption(67 /* EditorOption.lineHeight */);\n // adjust heightInLines to viewport\n if (!this.options.allowUnlimitedHeight) {\n const maxHeightInLines = Math.max(12, (this.editor.getLayoutInfo().height / lineHeight) * 0.8);\n heightInLines = Math.min(heightInLines, maxHeightInLines);\n }\n let arrowHeight = 0;\n let frameThickness = 0;\n // Render the arrow one 1/3 of an editor line height\n if (this._arrow && this.options.showArrow) {\n arrowHeight = Math.round(lineHeight / 3);\n this._arrow.height = arrowHeight;\n this._arrow.show(position);\n }\n // Render the frame as 1/9 of an editor line height\n if (this.options.showFrame) {\n frameThickness = Math.round(lineHeight / 9);\n }\n // insert zone widget\n this.editor.changeViewZones((accessor) => {\n if (this._viewZone) {\n accessor.removeZone(this._viewZone.id);\n }\n if (this._overlayWidget) {\n this.editor.removeOverlayWidget(this._overlayWidget);\n this._overlayWidget = null;\n }\n this.domNode.style.top = '-1000px';\n this._viewZone = new ViewZoneDelegate(viewZoneDomNode, position.lineNumber, position.column, heightInLines, (top) => this._onViewZoneTop(top), (height) => this._onViewZoneHeight(height), this.options.showInHiddenAreas, this.options.ordinal);\n this._viewZone.id = accessor.addZone(this._viewZone);\n this._overlayWidget = new OverlayWidgetDelegate(WIDGET_ID + this._viewZone.id, this.domNode);\n this.editor.addOverlayWidget(this._overlayWidget);\n });\n if (this.container && this.options.showFrame) {\n const width = this.options.frameWidth ? this.options.frameWidth : frameThickness;\n this.container.style.borderTopWidth = width + 'px';\n this.container.style.borderBottomWidth = width + 'px';\n }\n const containerHeight = heightInLines * lineHeight - this._decoratingElementsHeight();\n if (this.container) {\n this.container.style.top = arrowHeight + 'px';\n this.container.style.height = containerHeight + 'px';\n this.container.style.overflow = 'hidden';\n }\n this._doLayout(containerHeight, width);\n if (!this.options.keepEditorSelection) {\n this.editor.setSelection(where);\n }\n const model = this.editor.getModel();\n if (model) {\n const range = model.validateRange(new _common_core_range_js__WEBPACK_IMPORTED_MODULE_7__.Range(where.startLineNumber, 1, where.endLineNumber + 1, 1));\n this.revealRange(range, range.startLineNumber === model.getLineCount());\n }\n }\n revealRange(range, isLastLine) {\n if (isLastLine) {\n this.editor.revealLineNearTop(range.endLineNumber, 0 /* ScrollType.Smooth */);\n }\n else {\n this.editor.revealRange(range, 0 /* ScrollType.Smooth */);\n }\n }\n setCssClass(className, classToReplace) {\n if (!this.container) {\n return;\n }\n if (classToReplace) {\n this.container.classList.remove(classToReplace);\n }\n this.container.classList.add(className);\n }\n _onWidth(widthInPixel) {\n // implement in subclass\n }\n _doLayout(heightInPixel, widthInPixel) {\n // implement in subclass\n }\n _relayout(newHeightInLines) {\n if (this._viewZone && this._viewZone.heightInLines !== newHeightInLines) {\n this.editor.changeViewZones(accessor => {\n if (this._viewZone) {\n this._viewZone.heightInLines = newHeightInLines;\n accessor.layoutZone(this._viewZone.id);\n }\n });\n }\n }\n // --- sash\n _initSash() {\n if (this._resizeSash) {\n return;\n }\n this._resizeSash = this._disposables.add(new _base_browser_ui_sash_sash_js__WEBPACK_IMPORTED_MODULE_1__.Sash(this.domNode, this, { orientation: 1 /* Orientation.HORIZONTAL */ }));\n if (!this.options.isResizeable) {\n this._resizeSash.state = 0 /* SashState.Disabled */;\n }\n let data;\n this._disposables.add(this._resizeSash.onDidStart((e) => {\n if (this._viewZone) {\n data = {\n startY: e.startY,\n heightInLines: this._viewZone.heightInLines,\n };\n }\n }));\n this._disposables.add(this._resizeSash.onDidEnd(() => {\n data = undefined;\n }));\n this._disposables.add(this._resizeSash.onDidChange((evt) => {\n if (data) {\n const lineDelta = (evt.currentY - data.startY) / this.editor.getOption(67 /* EditorOption.lineHeight */);\n const roundedLineDelta = lineDelta < 0 ? Math.ceil(lineDelta) : Math.floor(lineDelta);\n const newHeightInLines = data.heightInLines + roundedLineDelta;\n if (newHeightInLines > 5 && newHeightInLines < 35) {\n this._relayout(newHeightInLines);\n }\n }\n }));\n }\n getHorizontalSashLeft() {\n return 0;\n }\n getHorizontalSashTop() {\n return (this.domNode.style.height === null ? 0 : parseInt(this.domNode.style.height)) - (this._decoratingElementsHeight() / 2);\n }\n getHorizontalSashWidth() {\n const layoutInfo = this.editor.getLayoutInfo();\n return layoutInfo.width - layoutInfo.minimap.minimapWidth;\n }\n}\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/contrib/zoneWidget/browser/zoneWidget.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/edcore.main.js":
/*!*****************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/edcore.main.js ***!
\*****************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ CancellationTokenSource: () => (/* reexport safe */ _editor_api_js__WEBPACK_IMPORTED_MODULE_9__.CancellationTokenSource),\n/* harmony export */ Emitter: () => (/* reexport safe */ _editor_api_js__WEBPACK_IMPORTED_MODULE_9__.Emitter),\n/* harmony export */ KeyCode: () => (/* reexport safe */ _editor_api_js__WEBPACK_IMPORTED_MODULE_9__.KeyCode),\n/* harmony export */ KeyMod: () => (/* reexport safe */ _editor_api_js__WEBPACK_IMPORTED_MODULE_9__.KeyMod),\n/* harmony export */ MarkerSeverity: () => (/* reexport safe */ _editor_api_js__WEBPACK_IMPORTED_MODULE_9__.MarkerSeverity),\n/* harmony export */ MarkerTag: () => (/* reexport safe */ _editor_api_js__WEBPACK_IMPORTED_MODULE_9__.MarkerTag),\n/* harmony export */ Position: () => (/* reexport safe */ _editor_api_js__WEBPACK_IMPORTED_MODULE_9__.Position),\n/* harmony export */ Range: () => (/* reexport safe */ _editor_api_js__WEBPACK_IMPORTED_MODULE_9__.Range),\n/* harmony export */ Selection: () => (/* reexport safe */ _editor_api_js__WEBPACK_IMPORTED_MODULE_9__.Selection),\n/* harmony export */ SelectionDirection: () => (/* reexport safe */ _editor_api_js__WEBPACK_IMPORTED_MODULE_9__.SelectionDirection),\n/* harmony export */ Token: () => (/* reexport safe */ _editor_api_js__WEBPACK_IMPORTED_MODULE_9__.Token),\n/* harmony export */ Uri: () => (/* reexport safe */ _editor_api_js__WEBPACK_IMPORTED_MODULE_9__.Uri),\n/* harmony export */ editor: () => (/* reexport safe */ _editor_api_js__WEBPACK_IMPORTED_MODULE_9__.editor),\n/* harmony export */ languages: () => (/* reexport safe */ _editor_api_js__WEBPACK_IMPORTED_MODULE_9__.languages)\n/* harmony export */ });\n/* harmony import */ var _editor_all_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./editor.all.js */ \"./node_modules/monaco-editor/esm/vs/editor/editor.all.js\");\n/* harmony import */ var _standalone_browser_iPadShowKeyboard_iPadShowKeyboard_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./standalone/browser/iPadShowKeyboard/iPadShowKeyboard.js */ \"./node_modules/monaco-editor/esm/vs/editor/standalone/browser/iPadShowKeyboard/iPadShowKeyboard.js\");\n/* harmony import */ var _standalone_browser_inspectTokens_inspectTokens_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./standalone/browser/inspectTokens/inspectTokens.js */ \"./node_modules/monaco-editor/esm/vs/editor/standalone/browser/inspectTokens/inspectTokens.js\");\n/* harmony import */ var _standalone_browser_quickAccess_standaloneHelpQuickAccess_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./standalone/browser/quickAccess/standaloneHelpQuickAccess.js */ \"./node_modules/monaco-editor/esm/vs/editor/standalone/browser/quickAccess/standaloneHelpQuickAccess.js\");\n/* harmony import */ var _standalone_browser_quickAccess_standaloneGotoLineQuickAccess_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./standalone/browser/quickAccess/standaloneGotoLineQuickAccess.js */ \"./node_modules/monaco-editor/esm/vs/editor/standalone/browser/quickAccess/standaloneGotoLineQuickAccess.js\");\n/* harmony import */ var _standalone_browser_quickAccess_standaloneGotoSymbolQuickAccess_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./standalone/browser/quickAccess/standaloneGotoSymbolQuickAccess.js */ \"./node_modules/monaco-editor/esm/vs/editor/standalone/browser/quickAccess/standaloneGotoSymbolQuickAccess.js\");\n/* harmony import */ var _standalone_browser_quickAccess_standaloneCommandsQuickAccess_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ./standalone/browser/quickAccess/standaloneCommandsQuickAccess.js */ \"./node_modules/monaco-editor/esm/vs/editor/standalone/browser/quickAccess/standaloneCommandsQuickAccess.js\");\n/* harmony import */ var _standalone_browser_referenceSearch_standaloneReferenceSearch_js__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ./standalone/browser/referenceSearch/standaloneReferenceSearch.js */ \"./node_modules/monaco-editor/esm/vs/editor/standalone/browser/referenceSearch/standaloneReferenceSearch.js\");\n/* harmony import */ var _standalone_browser_toggleHighContrast_toggleHighContrast_js__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ./standalone/browser/toggleHighContrast/toggleHighContrast.js */ \"./node_modules/monaco-editor/esm/vs/editor/standalone/browser/toggleHighContrast/toggleHighContrast.js\");\n/* harmony import */ var _editor_api_js__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ./editor.api.js */ \"include-loader!./node_modules/monaco-editor/esm/vs/editor/editor.api.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n\n\n\n\n\n\n\n\n\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/edcore.main.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/editor.all.js":
/*!****************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/editor.all.js ***!
\****************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var _browser_coreCommands_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./browser/coreCommands.js */ \"./node_modules/monaco-editor/esm/vs/editor/browser/coreCommands.js\");\n/* harmony import */ var _browser_widget_codeEditorWidget_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./browser/widget/codeEditorWidget.js */ \"./node_modules/monaco-editor/esm/vs/editor/browser/widget/codeEditorWidget.js\");\n/* harmony import */ var _browser_widget_diffEditor_diffEditor_contribution_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./browser/widget/diffEditor/diffEditor.contribution.js */ \"./node_modules/monaco-editor/esm/vs/editor/browser/widget/diffEditor/diffEditor.contribution.js\");\n/* harmony import */ var _contrib_anchorSelect_browser_anchorSelect_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./contrib/anchorSelect/browser/anchorSelect.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/anchorSelect/browser/anchorSelect.js\");\n/* harmony import */ var _contrib_bracketMatching_browser_bracketMatching_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./contrib/bracketMatching/browser/bracketMatching.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/bracketMatching/browser/bracketMatching.js\");\n/* harmony import */ var _contrib_caretOperations_browser_caretOperations_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./contrib/caretOperations/browser/caretOperations.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/caretOperations/browser/caretOperations.js\");\n/* harmony import */ var _contrib_caretOperations_browser_transpose_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ./contrib/caretOperations/browser/transpose.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/caretOperations/browser/transpose.js\");\n/* harmony import */ var _contrib_clipboard_browser_clipboard_js__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ./contrib/clipboard/browser/clipboard.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/clipboard/browser/clipboard.js\");\n/* harmony import */ var _contrib_codeAction_browser_codeActionContributions_js__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ./contrib/codeAction/browser/codeActionContributions.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/codeAction/browser/codeActionContributions.js\");\n/* harmony import */ var _contrib_codelens_browser_codelensController_js__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ./contrib/codelens/browser/codelensController.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/codelens/browser/codelensController.js\");\n/* harmony import */ var _contrib_colorPicker_browser_colorContributions_js__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! ./contrib/colorPicker/browser/colorContributions.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/colorPicker/browser/colorContributions.js\");\n/* harmony import */ var _contrib_colorPicker_browser_standaloneColorPickerActions_js__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(/*! ./contrib/colorPicker/browser/standaloneColorPickerActions.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/colorPicker/browser/standaloneColorPickerActions.js\");\n/* harmony import */ var _contrib_comment_browser_comment_js__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(/*! ./contrib/comment/browser/comment.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/comment/browser/comment.js\");\n/* harmony import */ var _contrib_contextmenu_browser_contextmenu_js__WEBPACK_IMPORTED_MODULE_13__ = __webpack_require__(/*! ./contrib/contextmenu/browser/contextmenu.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/contextmenu/browser/contextmenu.js\");\n/* harmony import */ var _contrib_cursorUndo_browser_cursorUndo_js__WEBPACK_IMPORTED_MODULE_14__ = __webpack_require__(/*! ./contrib/cursorUndo/browser/cursorUndo.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/cursorUndo/browser/cursorUndo.js\");\n/* harmony import */ var _contrib_dnd_browser_dnd_js__WEBPACK_IMPORTED_MODULE_15__ = __webpack_require__(/*! ./contrib/dnd/browser/dnd.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/dnd/browser/dnd.js\");\n/* harmony import */ var _contrib_dropOrPasteInto_browser_copyPasteContribution_js__WEBPACK_IMPORTED_MODULE_16__ = __webpack_require__(/*! ./contrib/dropOrPasteInto/browser/copyPasteContribution.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/dropOrPasteInto/browser/copyPasteContribution.js\");\n/* harmony import */ var _contrib_dropOrPasteInto_browser_dropIntoEditorContribution_js__WEBPACK_IMPORTED_MODULE_17__ = __webpack_require__(/*! ./contrib/dropOrPasteInto/browser/dropIntoEditorContribution.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/dropOrPasteInto/browser/dropIntoEditorContribution.js\");\n/* harmony import */ var _contrib_find_browser_findController_js__WEBPACK_IMPORTED_MODULE_18__ = __webpack_require__(/*! ./contrib/find/browser/findController.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/find/browser/findController.js\");\n/* harmony import */ var _contrib_folding_browser_folding_js__WEBPACK_IMPORTED_MODULE_19__ = __webpack_require__(/*! ./contrib/folding/browser/folding.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/folding/browser/folding.js\");\n/* harmony import */ var _contrib_fontZoom_browser_fontZoom_js__WEBPACK_IMPORTED_MODULE_20__ = __webpack_require__(/*! ./contrib/fontZoom/browser/fontZoom.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/fontZoom/browser/fontZoom.js\");\n/* harmony import */ var _contrib_format_browser_formatActions_js__WEBPACK_IMPORTED_MODULE_21__ = __webpack_require__(/*! ./contrib/format/browser/formatActions.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/format/browser/formatActions.js\");\n/* harmony import */ var _contrib_documentSymbols_browser_documentSymbols_js__WEBPACK_IMPORTED_MODULE_22__ = __webpack_require__(/*! ./contrib/documentSymbols/browser/documentSymbols.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/documentSymbols/browser/documentSymbols.js\");\n/* harmony import */ var _contrib_inlineCompletions_browser_inlineCompletions_contribution_js__WEBPACK_IMPORTED_MODULE_23__ = __webpack_require__(/*! ./contrib/inlineCompletions/browser/inlineCompletions.contribution.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/inlineCompletions/browser/inlineCompletions.contribution.js\");\n/* harmony import */ var _contrib_inlineProgress_browser_inlineProgress_js__WEBPACK_IMPORTED_MODULE_24__ = __webpack_require__(/*! ./contrib/inlineProgress/browser/inlineProgress.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/inlineProgress/browser/inlineProgress.js\");\n/* harmony import */ var _contrib_gotoSymbol_browser_goToCommands_js__WEBPACK_IMPORTED_MODULE_25__ = __webpack_require__(/*! ./contrib/gotoSymbol/browser/goToCommands.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/gotoSymbol/browser/goToCommands.js\");\n/* harmony import */ var _contrib_gotoSymbol_browser_link_goToDefinitionAtPosition_js__WEBPACK_IMPORTED_MODULE_26__ = __webpack_require__(/*! ./contrib/gotoSymbol/browser/link/goToDefinitionAtPosition.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/gotoSymbol/browser/link/goToDefinitionAtPosition.js\");\n/* harmony import */ var _contrib_gotoError_browser_gotoError_js__WEBPACK_IMPORTED_MODULE_27__ = __webpack_require__(/*! ./contrib/gotoError/browser/gotoError.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/gotoError/browser/gotoError.js\");\n/* harmony import */ var _contrib_hover_browser_hover_js__WEBPACK_IMPORTED_MODULE_28__ = __webpack_require__(/*! ./contrib/hover/browser/hover.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/hover/browser/hover.js\");\n/* harmony import */ var _contrib_indentation_browser_indentation_js__WEBPACK_IMPORTED_MODULE_29__ = __webpack_require__(/*! ./contrib/indentation/browser/indentation.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/indentation/browser/indentation.js\");\n/* harmony import */ var _contrib_inlayHints_browser_inlayHintsContribution_js__WEBPACK_IMPORTED_MODULE_30__ = __webpack_require__(/*! ./contrib/inlayHints/browser/inlayHintsContribution.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/inlayHints/browser/inlayHintsContribution.js\");\n/* harmony import */ var _contrib_inPlaceReplace_browser_inPlaceReplace_js__WEBPACK_IMPORTED_MODULE_31__ = __webpack_require__(/*! ./contrib/inPlaceReplace/browser/inPlaceReplace.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/inPlaceReplace/browser/inPlaceReplace.js\");\n/* harmony import */ var _contrib_lineSelection_browser_lineSelection_js__WEBPACK_IMPORTED_MODULE_32__ = __webpack_require__(/*! ./contrib/lineSelection/browser/lineSelection.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/lineSelection/browser/lineSelection.js\");\n/* harmony import */ var _contrib_linesOperations_browser_linesOperations_js__WEBPACK_IMPORTED_MODULE_33__ = __webpack_require__(/*! ./contrib/linesOperations/browser/linesOperations.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/linesOperations/browser/linesOperations.js\");\n/* harmony import */ var _contrib_linkedEditing_browser_linkedEditing_js__WEBPACK_IMPORTED_MODULE_34__ = __webpack_require__(/*! ./contrib/linkedEditing/browser/linkedEditing.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/linkedEditing/browser/linkedEditing.js\");\n/* harmony import */ var _contrib_links_browser_links_js__WEBPACK_IMPORTED_MODULE_35__ = __webpack_require__(/*! ./contrib/links/browser/links.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/links/browser/links.js\");\n/* harmony import */ var _contrib_longLinesHelper_browser_longLinesHelper_js__WEBPACK_IMPORTED_MODULE_36__ = __webpack_require__(/*! ./contrib/longLinesHelper/browser/longLinesHelper.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/longLinesHelper/browser/longLinesHelper.js\");\n/* harmony import */ var _contrib_multicursor_browser_multicursor_js__WEBPACK_IMPORTED_MODULE_37__ = __webpack_require__(/*! ./contrib/multicursor/browser/multicursor.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/multicursor/browser/multicursor.js\");\n/* harmony import */ var _contrib_inlineEdit_browser_inlineEdit_contribution_js__WEBPACK_IMPORTED_MODULE_38__ = __webpack_require__(/*! ./contrib/inlineEdit/browser/inlineEdit.contribution.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/inlineEdit/browser/inlineEdit.contribution.js\");\n/* harmony import */ var _contrib_parameterHints_browser_parameterHints_js__WEBPACK_IMPORTED_MODULE_39__ = __webpack_require__(/*! ./contrib/parameterHints/browser/parameterHints.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/parameterHints/browser/parameterHints.js\");\n/* harmony import */ var _contrib_rename_browser_rename_js__WEBPACK_IMPORTED_MODULE_40__ = __webpack_require__(/*! ./contrib/rename/browser/rename.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/rename/browser/rename.js\");\n/* harmony import */ var _contrib_semanticTokens_browser_documentSemanticTokens_js__WEBPACK_IMPORTED_MODULE_41__ = __webpack_require__(/*! ./contrib/semanticTokens/browser/documentSemanticTokens.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/semanticTokens/browser/documentSemanticTokens.js\");\n/* harmony import */ var _contrib_semanticTokens_browser_viewportSemanticTokens_js__WEBPACK_IMPORTED_MODULE_42__ = __webpack_require__(/*! ./contrib/semanticTokens/browser/viewportSemanticTokens.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/semanticTokens/browser/viewportSemanticTokens.js\");\n/* harmony import */ var _contrib_smartSelect_browser_smartSelect_js__WEBPACK_IMPORTED_MODULE_43__ = __webpack_require__(/*! ./contrib/smartSelect/browser/smartSelect.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/smartSelect/browser/smartSelect.js\");\n/* harmony import */ var _contrib_snippet_browser_snippetController2_js__WEBPACK_IMPORTED_MODULE_44__ = __webpack_require__(/*! ./contrib/snippet/browser/snippetController2.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/snippet/browser/snippetController2.js\");\n/* harmony import */ var _contrib_stickyScroll_browser_stickyScrollContribution_js__WEBPACK_IMPORTED_MODULE_45__ = __webpack_require__(/*! ./contrib/stickyScroll/browser/stickyScrollContribution.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/stickyScroll/browser/stickyScrollContribution.js\");\n/* harmony import */ var _contrib_suggest_browser_suggestController_js__WEBPACK_IMPORTED_MODULE_46__ = __webpack_require__(/*! ./contrib/suggest/browser/suggestController.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/suggest/browser/suggestController.js\");\n/* harmony import */ var _contrib_suggest_browser_suggestInlineCompletions_js__WEBPACK_IMPORTED_MODULE_47__ = __webpack_require__(/*! ./contrib/suggest/browser/suggestInlineCompletions.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/suggest/browser/suggestInlineCompletions.js\");\n/* harmony import */ var _contrib_tokenization_browser_tokenization_js__WEBPACK_IMPORTED_MODULE_48__ = __webpack_require__(/*! ./contrib/tokenization/browser/tokenization.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/tokenization/browser/tokenization.js\");\n/* harmony import */ var _contrib_toggleTabFocusMode_browser_toggleTabFocusMode_js__WEBPACK_IMPORTED_MODULE_49__ = __webpack_require__(/*! ./contrib/toggleTabFocusMode/browser/toggleTabFocusMode.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/toggleTabFocusMode/browser/toggleTabFocusMode.js\");\n/* harmony import */ var _contrib_unicodeHighlighter_browser_unicodeHighlighter_js__WEBPACK_IMPORTED_MODULE_50__ = __webpack_require__(/*! ./contrib/unicodeHighlighter/browser/unicodeHighlighter.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/unicodeHighlighter/browser/unicodeHighlighter.js\");\n/* harmony import */ var _contrib_unusualLineTerminators_browser_unusualLineTerminators_js__WEBPACK_IMPORTED_MODULE_51__ = __webpack_require__(/*! ./contrib/unusualLineTerminators/browser/unusualLineTerminators.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/unusualLineTerminators/browser/unusualLineTerminators.js\");\n/* harmony import */ var _contrib_wordHighlighter_browser_wordHighlighter_js__WEBPACK_IMPORTED_MODULE_52__ = __webpack_require__(/*! ./contrib/wordHighlighter/browser/wordHighlighter.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/wordHighlighter/browser/wordHighlighter.js\");\n/* harmony import */ var _contrib_wordOperations_browser_wordOperations_js__WEBPACK_IMPORTED_MODULE_53__ = __webpack_require__(/*! ./contrib/wordOperations/browser/wordOperations.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/wordOperations/browser/wordOperations.js\");\n/* harmony import */ var _contrib_wordPartOperations_browser_wordPartOperations_js__WEBPACK_IMPORTED_MODULE_54__ = __webpack_require__(/*! ./contrib/wordPartOperations/browser/wordPartOperations.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/wordPartOperations/browser/wordPartOperations.js\");\n/* harmony import */ var _contrib_readOnlyMessage_browser_contribution_js__WEBPACK_IMPORTED_MODULE_55__ = __webpack_require__(/*! ./contrib/readOnlyMessage/browser/contribution.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/readOnlyMessage/browser/contribution.js\");\n/* harmony import */ var _contrib_diffEditorBreadcrumbs_browser_contribution_js__WEBPACK_IMPORTED_MODULE_56__ = __webpack_require__(/*! ./contrib/diffEditorBreadcrumbs/browser/contribution.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/diffEditorBreadcrumbs/browser/contribution.js\");\n/* harmony import */ var _common_standaloneStrings_js__WEBPACK_IMPORTED_MODULE_57__ = __webpack_require__(/*! ./common/standaloneStrings.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/standaloneStrings.js\");\n/* harmony import */ var _base_browser_ui_codicons_codiconStyles_js__WEBPACK_IMPORTED_MODULE_58__ = __webpack_require__(/*! ../base/browser/ui/codicons/codiconStyles.js */ \"./node_modules/monaco-editor/esm/vs/base/browser/ui/codicons/codiconStyles.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n// Load up these strings even in VSCode, even if they are not used\n// in order to get them translated\n\n // The codicons are defined here and must be loaded\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/editor.all.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/editor.api.js":
/*!****************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/editor.api.js ***!
\****************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ CancellationTokenSource: () => (/* binding */ CancellationTokenSource),\n/* harmony export */ Emitter: () => (/* binding */ Emitter),\n/* harmony export */ KeyCode: () => (/* binding */ KeyCode),\n/* harmony export */ KeyMod: () => (/* binding */ KeyMod),\n/* harmony export */ MarkerSeverity: () => (/* binding */ MarkerSeverity),\n/* harmony export */ MarkerTag: () => (/* binding */ MarkerTag),\n/* harmony export */ Position: () => (/* binding */ Position),\n/* harmony export */ Range: () => (/* binding */ Range),\n/* harmony export */ Selection: () => (/* binding */ Selection),\n/* harmony export */ SelectionDirection: () => (/* binding */ SelectionDirection),\n/* harmony export */ Token: () => (/* binding */ Token),\n/* harmony export */ Uri: () => (/* binding */ Uri),\n/* harmony export */ editor: () => (/* binding */ editor),\n/* harmony export */ languages: () => (/* binding */ languages)\n/* harmony export */ });\n/* harmony import */ var _common_config_editorOptions_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./common/config/editorOptions.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/config/editorOptions.js\");\n/* harmony import */ var _common_services_editorBaseApi_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./common/services/editorBaseApi.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/services/editorBaseApi.js\");\n/* harmony import */ var _standalone_browser_standaloneEditor_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./standalone/browser/standaloneEditor.js */ \"./node_modules/monaco-editor/esm/vs/editor/standalone/browser/standaloneEditor.js\");\n/* harmony import */ var _standalone_browser_standaloneLanguages_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./standalone/browser/standaloneLanguages.js */ \"./node_modules/monaco-editor/esm/vs/editor/standalone/browser/standaloneLanguages.js\");\n/* harmony import */ var _contrib_format_browser_format_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./contrib/format/browser/format.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/format/browser/format.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n\n\n\n\n// Set defaults for standalone editor\n_common_config_editorOptions_js__WEBPACK_IMPORTED_MODULE_0__.EditorOptions.wrappingIndent.defaultValue = 0 /* WrappingIndent.None */;\n_common_config_editorOptions_js__WEBPACK_IMPORTED_MODULE_0__.EditorOptions.glyphMargin.defaultValue = false;\n_common_config_editorOptions_js__WEBPACK_IMPORTED_MODULE_0__.EditorOptions.autoIndent.defaultValue = 3 /* EditorAutoIndentStrategy.Advanced */;\n_common_config_editorOptions_js__WEBPACK_IMPORTED_MODULE_0__.EditorOptions.overviewRulerLanes.defaultValue = 2;\n// We need to register a formatter selector which simply picks the first available formatter.\n// See https://github.com/microsoft/monaco-editor/issues/2327\n_contrib_format_browser_format_js__WEBPACK_IMPORTED_MODULE_4__.FormattingConflicts.setFormatterSelector((formatter, document, mode) => Promise.resolve(formatter[0]));\nconst api = (0,_common_services_editorBaseApi_js__WEBPACK_IMPORTED_MODULE_1__.createMonacoBaseAPI)();\napi.editor = (0,_standalone_browser_standaloneEditor_js__WEBPACK_IMPORTED_MODULE_2__.createMonacoEditorAPI)();\napi.languages = (0,_standalone_browser_standaloneLanguages_js__WEBPACK_IMPORTED_MODULE_3__.createMonacoLanguagesAPI)();\nconst CancellationTokenSource = api.CancellationTokenSource;\nconst Emitter = api.Emitter;\nconst KeyCode = api.KeyCode;\nconst KeyMod = api.KeyMod;\nconst Position = api.Position;\nconst Range = api.Range;\nconst Selection = api.Selection;\nconst SelectionDirection = api.SelectionDirection;\nconst MarkerSeverity = api.MarkerSeverity;\nconst MarkerTag = api.MarkerTag;\nconst Uri = api.Uri;\nconst Token = api.Token;\nconst editor = api.editor;\nconst languages = api.languages;\nconst monacoEnvironment = globalThis.MonacoEnvironment;\nif ((monacoEnvironment === null || monacoEnvironment === void 0 ? void 0 : monacoEnvironment.globalAPI) || (typeof define === 'function' && __webpack_require__.amdO)) {\n globalThis.monaco = api;\n}\nif (typeof globalThis.require !== 'undefined' && typeof globalThis.require.config === 'function') {\n globalThis.require.config({\n ignoreDuplicateModules: [\n 'vscode-languageserver-types',\n 'vscode-languageserver-types/main',\n 'vscode-languageserver-textdocument',\n 'vscode-languageserver-textdocument/main',\n 'vscode-nls',\n 'vscode-nls/vscode-nls',\n 'jsonc-parser',\n 'jsonc-parser/main',\n 'vscode-uri',\n 'vscode-uri/index',\n 'vs/basic-languages/typescript/typescript'\n ]\n });\n}\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/editor.api.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/editor.main.js":
/*!*****************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/editor.main.js ***!
\*****************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ CancellationTokenSource: () => (/* reexport safe */ _edcore_main__WEBPACK_IMPORTED_MODULE_5__.CancellationTokenSource),\n/* harmony export */ Emitter: () => (/* reexport safe */ _edcore_main__WEBPACK_IMPORTED_MODULE_5__.Emitter),\n/* harmony export */ KeyCode: () => (/* reexport safe */ _edcore_main__WEBPACK_IMPORTED_MODULE_5__.KeyCode),\n/* harmony export */ KeyMod: () => (/* reexport safe */ _edcore_main__WEBPACK_IMPORTED_MODULE_5__.KeyMod),\n/* harmony export */ MarkerSeverity: () => (/* reexport safe */ _edcore_main__WEBPACK_IMPORTED_MODULE_5__.MarkerSeverity),\n/* harmony export */ MarkerTag: () => (/* reexport safe */ _edcore_main__WEBPACK_IMPORTED_MODULE_5__.MarkerTag),\n/* harmony export */ Position: () => (/* reexport safe */ _edcore_main__WEBPACK_IMPORTED_MODULE_5__.Position),\n/* harmony export */ Range: () => (/* reexport safe */ _edcore_main__WEBPACK_IMPORTED_MODULE_5__.Range),\n/* harmony export */ Selection: () => (/* reexport safe */ _edcore_main__WEBPACK_IMPORTED_MODULE_5__.Selection),\n/* harmony export */ SelectionDirection: () => (/* reexport safe */ _edcore_main__WEBPACK_IMPORTED_MODULE_5__.SelectionDirection),\n/* harmony export */ Token: () => (/* reexport safe */ _edcore_main__WEBPACK_IMPORTED_MODULE_5__.Token),\n/* harmony export */ Uri: () => (/* reexport safe */ _edcore_main__WEBPACK_IMPORTED_MODULE_5__.Uri),\n/* harmony export */ editor: () => (/* reexport safe */ _edcore_main__WEBPACK_IMPORTED_MODULE_5__.editor),\n/* harmony export */ languages: () => (/* reexport safe */ _edcore_main__WEBPACK_IMPORTED_MODULE_5__.languages)\n/* harmony export */ });\n/* harmony import */ var _basic_languages_monaco_contribution__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../basic-languages/monaco.contribution */ \"./node_modules/monaco-editor/esm/vs/basic-languages/monaco.contribution.js\");\n/* harmony import */ var _language_css_monaco_contribution__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../language/css/monaco.contribution */ \"./node_modules/monaco-editor/esm/vs/language/css/monaco.contribution.js\");\n/* harmony import */ var _language_html_monaco_contribution__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../language/html/monaco.contribution */ \"./node_modules/monaco-editor/esm/vs/language/html/monaco.contribution.js\");\n/* harmony import */ var _language_json_monaco_contribution__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../language/json/monaco.contribution */ \"./node_modules/monaco-editor/esm/vs/language/json/monaco.contribution.js\");\n/* harmony import */ var _language_typescript_monaco_contribution__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../language/typescript/monaco.contribution */ \"./node_modules/monaco-editor/esm/vs/language/typescript/monaco.contribution.js\");\n/* harmony import */ var _edcore_main__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./edcore.main */ \"./node_modules/monaco-editor/esm/vs/editor/edcore.main.js\");\n\n\n\n\n\n\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/editor.main.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/standalone/browser/colorizer.js":
/*!**********************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/standalone/browser/colorizer.js ***!
\**********************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ Colorizer: () => (/* binding */ Colorizer)\n/* harmony export */ });\n/* harmony import */ var _base_browser_trustedTypes_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../base/browser/trustedTypes.js */ \"./node_modules/monaco-editor/esm/vs/base/browser/trustedTypes.js\");\n/* harmony import */ var _base_common_strings_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../base/common/strings.js */ \"./node_modules/monaco-editor/esm/vs/base/common/strings.js\");\n/* harmony import */ var _common_languages_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../common/languages.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/languages.js\");\n/* harmony import */ var _common_tokens_lineTokens_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../common/tokens/lineTokens.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/tokens/lineTokens.js\");\n/* harmony import */ var _common_viewLayout_viewLineRenderer_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../common/viewLayout/viewLineRenderer.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/viewLayout/viewLineRenderer.js\");\n/* harmony import */ var _common_viewModel_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../../common/viewModel.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/viewModel.js\");\n/* harmony import */ var _common_monarch_monarchLexer_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../common/monarch/monarchLexer.js */ \"./node_modules/monaco-editor/esm/vs/editor/standalone/common/monarch/monarchLexer.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n\n\n\n\n\n\nconst ttPolicy = (0,_base_browser_trustedTypes_js__WEBPACK_IMPORTED_MODULE_0__.createTrustedTypesPolicy)('standaloneColorizer', { createHTML: value => value });\nclass Colorizer {\n static colorizeElement(themeService, languageService, domNode, options) {\n options = options || {};\n const theme = options.theme || 'vs';\n const mimeType = options.mimeType || domNode.getAttribute('lang') || domNode.getAttribute('data-lang');\n if (!mimeType) {\n console.error('Mode not detected');\n return Promise.resolve();\n }\n const languageId = languageService.getLanguageIdByMimeType(mimeType) || mimeType;\n themeService.setTheme(theme);\n const text = domNode.firstChild ? domNode.firstChild.nodeValue : '';\n domNode.className += ' ' + theme;\n const render = (str) => {\n var _a;\n const trustedhtml = (_a = ttPolicy === null || ttPolicy === void 0 ? void 0 : ttPolicy.createHTML(str)) !== null && _a !== void 0 ? _a : str;\n domNode.innerHTML = trustedhtml;\n };\n return this.colorize(languageService, text || '', languageId, options).then(render, (err) => console.error(err));\n }\n static async colorize(languageService, text, languageId, options) {\n const languageIdCodec = languageService.languageIdCodec;\n let tabSize = 4;\n if (options && typeof options.tabSize === 'number') {\n tabSize = options.tabSize;\n }\n if (_base_common_strings_js__WEBPACK_IMPORTED_MODULE_1__.startsWithUTF8BOM(text)) {\n text = text.substr(1);\n }\n const lines = _base_common_strings_js__WEBPACK_IMPORTED_MODULE_1__.splitLines(text);\n if (!languageService.isRegisteredLanguageId(languageId)) {\n return _fakeColorize(lines, tabSize, languageIdCodec);\n }\n const tokenizationSupport = await _common_languages_js__WEBPACK_IMPORTED_MODULE_2__.TokenizationRegistry.getOrCreate(languageId);\n if (tokenizationSupport) {\n return _colorize(lines, tabSize, tokenizationSupport, languageIdCodec);\n }\n return _fakeColorize(lines, tabSize, languageIdCodec);\n }\n static colorizeLine(line, mightContainNonBasicASCII, mightContainRTL, tokens, tabSize = 4) {\n const isBasicASCII = _common_viewModel_js__WEBPACK_IMPORTED_MODULE_5__.ViewLineRenderingData.isBasicASCII(line, mightContainNonBasicASCII);\n const containsRTL = _common_viewModel_js__WEBPACK_IMPORTED_MODULE_5__.ViewLineRenderingData.containsRTL(line, isBasicASCII, mightContainRTL);\n const renderResult = (0,_common_viewLayout_viewLineRenderer_js__WEBPACK_IMPORTED_MODULE_4__.renderViewLine2)(new _common_viewLayout_viewLineRenderer_js__WEBPACK_IMPORTED_MODULE_4__.RenderLineInput(false, true, line, false, isBasicASCII, containsRTL, 0, tokens, [], tabSize, 0, 0, 0, 0, -1, 'none', false, false, null));\n return renderResult.html;\n }\n static colorizeModelLine(model, lineNumber, tabSize = 4) {\n const content = model.getLineContent(lineNumber);\n model.tokenization.forceTokenization(lineNumber);\n const tokens = model.tokenization.getLineTokens(lineNumber);\n const inflatedTokens = tokens.inflate();\n return this.colorizeLine(content, model.mightContainNonBasicASCII(), model.mightContainRTL(), inflatedTokens, tabSize);\n }\n}\nfunction _colorize(lines, tabSize, tokenizationSupport, languageIdCodec) {\n return new Promise((c, e) => {\n const execute = () => {\n const result = _actualColorize(lines, tabSize, tokenizationSupport, languageIdCodec);\n if (tokenizationSupport instanceof _common_monarch_monarchLexer_js__WEBPACK_IMPORTED_MODULE_6__.MonarchTokenizer) {\n const status = tokenizationSupport.getLoadStatus();\n if (status.loaded === false) {\n status.promise.then(execute, e);\n return;\n }\n }\n c(result);\n };\n execute();\n });\n}\nfunction _fakeColorize(lines, tabSize, languageIdCodec) {\n let html = [];\n const defaultMetadata = ((0 /* FontStyle.None */ << 11 /* MetadataConsts.FONT_STYLE_OFFSET */)\n | (1 /* ColorId.DefaultForeground */ << 15 /* MetadataConsts.FOREGROUND_OFFSET */)\n | (2 /* ColorId.DefaultBackground */ << 24 /* MetadataConsts.BACKGROUND_OFFSET */)) >>> 0;\n const tokens = new Uint32Array(2);\n tokens[0] = 0;\n tokens[1] = defaultMetadata;\n for (let i = 0, length = lines.length; i < length; i++) {\n const line = lines[i];\n tokens[0] = line.length;\n const lineTokens = new _common_tokens_lineTokens_js__WEBPACK_IMPORTED_MODULE_3__.LineTokens(tokens, line, languageIdCodec);\n const isBasicASCII = _common_viewModel_js__WEBPACK_IMPORTED_MODULE_5__.ViewLineRenderingData.isBasicASCII(line, /* check for basic ASCII */ true);\n const containsRTL = _common_viewModel_js__WEBPACK_IMPORTED_MODULE_5__.ViewLineRenderingData.containsRTL(line, isBasicASCII, /* check for RTL */ true);\n const renderResult = (0,_common_viewLayout_viewLineRenderer_js__WEBPACK_IMPORTED_MODULE_4__.renderViewLine2)(new _common_viewLayout_viewLineRenderer_js__WEBPACK_IMPORTED_MODULE_4__.RenderLineInput(false, true, line, false, isBasicASCII, containsRTL, 0, lineTokens, [], tabSize, 0, 0, 0, 0, -1, 'none', false, false, null));\n html = html.concat(renderResult.html);\n html.push(' ');\n }\n return html.join('');\n}\nfunction _actualColorize(lines, tabSize, tokenizationSupport, languageIdCodec) {\n let html = [];\n let state = tokenizationSupport.getInitialState();\n for (let i = 0, length = lines.length; i < length; i++) {\n const line = lines[i];\n const tokenizeResult = tokenizationSupport.tokenizeEncoded(line, true, state);\n _common_tokens_lineTokens_js__WEBPACK_IMPORTED_MODULE_3__.LineTokens.convertToEndOffset(tokenizeResult.tokens, line.length);\n const lineTokens = new _common_tokens_lineTokens_js__WEBPACK_IMPORTED_MODULE_3__.LineTokens(tokenizeResult.tokens, line, languageIdCodec);\n const isBasicASCII = _common_viewModel_js__WEBPACK_IMPORTED_MODULE_5__.ViewLineRenderingData.isBasicASCII(line, /* check for basic ASCII */ true);\n const containsRTL = _common_viewModel_js__WEBPACK_IMPORTED_MODULE_5__.ViewLineRenderingData.containsRTL(line, isBasicASCII, /* check for RTL */ true);\n const renderResult = (0,_common_viewLayout_viewLineRenderer_js__WEBPACK_IMPORTED_MODULE_4__.renderViewLine2)(new _common_viewLayout_viewLineRenderer_js__WEBPACK_IMPORTED_MODULE_4__.RenderLineInput(false, true, line, false, isBasicASCII, containsRTL, 0, lineTokens.inflate(), [], tabSize, 0, 0, 0, 0, -1, 'none', false, false, null));\n html = html.concat(renderResult.html);\n html.push(' ');\n state = tokenizeResult.endState;\n }\n return html.join('');\n}\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/standalone/browser/colorizer.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/standalone/browser/iPadShowKeyboard/iPadShowKeyboard.js":
/*!**********************************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/standalone/browser/iPadShowKeyboard/iPadShowKeyboard.js ***!
\**********************************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ IPadShowKeyboard: () => (/* binding */ IPadShowKeyboard)\n/* harmony export */ });\n/* harmony import */ var _iPadShowKeyboard_css__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./iPadShowKeyboard.css */ \"./node_modules/monaco-editor/esm/vs/editor/standalone/browser/iPadShowKeyboard/iPadShowKeyboard.css\");\n/* harmony import */ var _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../base/browser/dom.js */ \"./node_modules/monaco-editor/esm/vs/base/browser/dom.js\");\n/* harmony import */ var _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../../base/common/lifecycle.js */ \"./node_modules/monaco-editor/esm/vs/base/common/lifecycle.js\");\n/* harmony import */ var _browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../../browser/editorExtensions.js */ \"./node_modules/monaco-editor/esm/vs/editor/browser/editorExtensions.js\");\n/* harmony import */ var _base_common_platform_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../../../base/common/platform.js */ \"./node_modules/monaco-editor/esm/vs/base/common/platform.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n\n\n\n\nclass IPadShowKeyboard extends _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_2__.Disposable {\n constructor(editor) {\n super();\n this.editor = editor;\n this.widget = null;\n if (_base_common_platform_js__WEBPACK_IMPORTED_MODULE_4__.isIOS) {\n this._register(editor.onDidChangeConfiguration(() => this.update()));\n this.update();\n }\n }\n update() {\n const shouldHaveWidget = (!this.editor.getOption(91 /* EditorOption.readOnly */));\n if (!this.widget && shouldHaveWidget) {\n this.widget = new ShowKeyboardWidget(this.editor);\n }\n else if (this.widget && !shouldHaveWidget) {\n this.widget.dispose();\n this.widget = null;\n }\n }\n dispose() {\n super.dispose();\n if (this.widget) {\n this.widget.dispose();\n this.widget = null;\n }\n }\n}\nIPadShowKeyboard.ID = 'editor.contrib.iPadShowKeyboard';\nclass ShowKeyboardWidget extends _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_2__.Disposable {\n constructor(editor) {\n super();\n this.editor = editor;\n this._domNode = document.createElement('textarea');\n this._domNode.className = 'iPadShowKeyboard';\n this._register(_base_browser_dom_js__WEBPACK_IMPORTED_MODULE_1__.addDisposableListener(this._domNode, 'touchstart', (e) => {\n this.editor.focus();\n }));\n this._register(_base_browser_dom_js__WEBPACK_IMPORTED_MODULE_1__.addDisposableListener(this._domNode, 'focus', (e) => {\n this.editor.focus();\n }));\n this.editor.addOverlayWidget(this);\n }\n dispose() {\n this.editor.removeOverlayWidget(this);\n super.dispose();\n }\n // ----- IOverlayWidget API\n getId() {\n return ShowKeyboardWidget.ID;\n }\n getDomNode() {\n return this._domNode;\n }\n getPosition() {\n return {\n preference: 1 /* OverlayWidgetPositionPreference.BOTTOM_RIGHT_CORNER */\n };\n }\n}\nShowKeyboardWidget.ID = 'editor.contrib.ShowKeyboardWidget';\n(0,_browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_3__.registerEditorContribution)(IPadShowKeyboard.ID, IPadShowKeyboard, 3 /* EditorContributionInstantiation.Eventually */);\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/standalone/browser/iPadShowKeyboard/iPadShowKeyboard.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/standalone/browser/inspectTokens/inspectTokens.js":
/*!****************************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/standalone/browser/inspectTokens/inspectTokens.js ***!
\****************************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var _inspectTokens_css__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./inspectTokens.css */ \"./node_modules/monaco-editor/esm/vs/editor/standalone/browser/inspectTokens/inspectTokens.css\");\n/* harmony import */ var _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../base/browser/dom.js */ \"./node_modules/monaco-editor/esm/vs/base/browser/dom.js\");\n/* harmony import */ var _base_common_color_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../../base/common/color.js */ \"./node_modules/monaco-editor/esm/vs/base/common/color.js\");\n/* harmony import */ var _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../../../base/common/lifecycle.js */ \"./node_modules/monaco-editor/esm/vs/base/common/lifecycle.js\");\n/* harmony import */ var _browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../../browser/editorExtensions.js */ \"./node_modules/monaco-editor/esm/vs/editor/browser/editorExtensions.js\");\n/* harmony import */ var _common_languages_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../../../common/languages.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/languages.js\");\n/* harmony import */ var _common_encodedTokenAttributes_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../../../common/encodedTokenAttributes.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/encodedTokenAttributes.js\");\n/* harmony import */ var _common_languages_nullTokenize_js__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ../../../common/languages/nullTokenize.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/languages/nullTokenize.js\");\n/* harmony import */ var _common_languages_language_js__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ../../../common/languages/language.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/languages/language.js\");\n/* harmony import */ var _common_standaloneTheme_js__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ../../common/standaloneTheme.js */ \"./node_modules/monaco-editor/esm/vs/editor/standalone/common/standaloneTheme.js\");\n/* harmony import */ var _common_standaloneStrings_js__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! ../../../common/standaloneStrings.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/standaloneStrings.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\nvar __decorate = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\n return c > 3 && r && Object.defineProperty(target, key, r), r;\n};\nvar __param = (undefined && undefined.__param) || function (paramIndex, decorator) {\n return function (target, key) { decorator(target, key, paramIndex); }\n};\nvar InspectTokensController_1;\n\n\n\n\n\n\n\n\n\n\n\nlet InspectTokensController = InspectTokensController_1 = class InspectTokensController extends _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_3__.Disposable {\n static get(editor) {\n return editor.getContribution(InspectTokensController_1.ID);\n }\n constructor(editor, standaloneColorService, languageService) {\n super();\n this._editor = editor;\n this._languageService = languageService;\n this._widget = null;\n this._register(this._editor.onDidChangeModel((e) => this.stop()));\n this._register(this._editor.onDidChangeModelLanguage((e) => this.stop()));\n this._register(_common_languages_js__WEBPACK_IMPORTED_MODULE_5__.TokenizationRegistry.onDidChange((e) => this.stop()));\n this._register(this._editor.onKeyUp((e) => e.keyCode === 9 /* KeyCode.Escape */ && this.stop()));\n }\n dispose() {\n this.stop();\n super.dispose();\n }\n launch() {\n if (this._widget) {\n return;\n }\n if (!this._editor.hasModel()) {\n return;\n }\n this._widget = new InspectTokensWidget(this._editor, this._languageService);\n }\n stop() {\n if (this._widget) {\n this._widget.dispose();\n this._widget = null;\n }\n }\n};\nInspectTokensController.ID = 'editor.contrib.inspectTokens';\nInspectTokensController = InspectTokensController_1 = __decorate([\n __param(1, _common_standaloneTheme_js__WEBPACK_IMPORTED_MODULE_9__.IStandaloneThemeService),\n __param(2, _common_languages_language_js__WEBPACK_IMPORTED_MODULE_8__.ILanguageService)\n], InspectTokensController);\nclass InspectTokens extends _browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_4__.EditorAction {\n constructor() {\n super({\n id: 'editor.action.inspectTokens',\n label: _common_standaloneStrings_js__WEBPACK_IMPORTED_MODULE_10__.InspectTokensNLS.inspectTokensAction,\n alias: 'Developer: Inspect Tokens',\n precondition: undefined\n });\n }\n run(accessor, editor) {\n const controller = InspectTokensController.get(editor);\n controller === null || controller === void 0 ? void 0 : controller.launch();\n }\n}\nfunction renderTokenText(tokenText) {\n let result = '';\n for (let charIndex = 0, len = tokenText.length; charIndex < len; charIndex++) {\n const charCode = tokenText.charCodeAt(charIndex);\n switch (charCode) {\n case 9 /* CharCode.Tab */:\n result += '\\u2192'; // →\n break;\n case 32 /* CharCode.Space */:\n result += '\\u00B7'; // ·\n break;\n default:\n result += String.fromCharCode(charCode);\n }\n }\n return result;\n}\nfunction getSafeTokenizationSupport(languageIdCodec, languageId) {\n const tokenizationSupport = _common_languages_js__WEBPACK_IMPORTED_MODULE_5__.TokenizationRegistry.get(languageId);\n if (tokenizationSupport) {\n return tokenizationSupport;\n }\n const encodedLanguageId = languageIdCodec.encodeLanguageId(languageId);\n return {\n getInitialState: () => _common_languages_nullTokenize_js__WEBPACK_IMPORTED_MODULE_7__.NullState,\n tokenize: (line, hasEOL, state) => (0,_common_languages_nullTokenize_js__WEBPACK_IMPORTED_MODULE_7__.nullTokenize)(languageId, state),\n tokenizeEncoded: (line, hasEOL, state) => (0,_common_languages_nullTokenize_js__WEBPACK_IMPORTED_MODULE_7__.nullTokenizeEncoded)(encodedLanguageId, state)\n };\n}\nclass InspectTokensWidget extends _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_3__.Disposable {\n constructor(editor, languageService) {\n super();\n // Editor.IContentWidget.allowEditorOverflow\n this.allowEditorOverflow = true;\n this._editor = editor;\n this._languageService = languageService;\n this._model = this._editor.getModel();\n this._domNode = document.createElement('div');\n this._domNode.className = 'tokens-inspect-widget';\n this._tokenizationSupport = getSafeTokenizationSupport(this._languageService.languageIdCodec, this._model.getLanguageId());\n this._compute(this._editor.getPosition());\n this._register(this._editor.onDidChangeCursorPosition((e) => this._compute(this._editor.getPosition())));\n this._editor.addContentWidget(this);\n }\n dispose() {\n this._editor.removeContentWidget(this);\n super.dispose();\n }\n getId() {\n return InspectTokensWidget._ID;\n }\n _compute(position) {\n const data = this._getTokensAtLine(position.lineNumber);\n let token1Index = 0;\n for (let i = data.tokens1.length - 1; i >= 0; i--) {\n const t = data.tokens1[i];\n if (position.column - 1 >= t.offset) {\n token1Index = i;\n break;\n }\n }\n let token2Index = 0;\n for (let i = (data.tokens2.length >>> 1); i >= 0; i--) {\n if (position.column - 1 >= data.tokens2[(i << 1)]) {\n token2Index = i;\n break;\n }\n }\n const lineContent = this._model.getLineContent(position.lineNumber);\n let tokenText = '';\n if (token1Index < data.tokens1.length) {\n const tokenStartIndex = data.tokens1[token1Index].offset;\n const tokenEndIndex = token1Index + 1 < data.tokens1.length ? data.tokens1[token1Index + 1].offset : lineContent.length;\n tokenText = lineContent.substring(tokenStartIndex, tokenEndIndex);\n }\n (0,_base_browser_dom_js__WEBPACK_IMPORTED_MODULE_1__.reset)(this._domNode, (0,_base_browser_dom_js__WEBPACK_IMPORTED_MODULE_1__.$)('h2.tm-token', undefined, renderTokenText(tokenText), (0,_base_browser_dom_js__WEBPACK_IMPORTED_MODULE_1__.$)('span.tm-token-length', undefined, `${tokenText.length} ${tokenText.length === 1 ? 'char' : 'chars'}`)));\n (0,_base_browser_dom_js__WEBPACK_IMPORTED_MODULE_1__.append)(this._domNode, (0,_base_browser_dom_js__WEBPACK_IMPORTED_MODULE_1__.$)('hr.tokens-inspect-separator', { 'style': 'clear:both' }));\n const metadata = (token2Index << 1) + 1 < data.tokens2.length ? this._decodeMetadata(data.tokens2[(token2Index << 1) + 1]) : null;\n (0,_base_browser_dom_js__WEBPACK_IMPORTED_MODULE_1__.append)(this._domNode, (0,_base_browser_dom_js__WEBPACK_IMPORTED_MODULE_1__.$)('table.tm-metadata-table', undefined, (0,_base_browser_dom_js__WEBPACK_IMPORTED_MODULE_1__.$)('tbody', undefined, (0,_base_browser_dom_js__WEBPACK_IMPORTED_MODULE_1__.$)('tr', undefined, (0,_base_browser_dom_js__WEBPACK_IMPORTED_MODULE_1__.$)('td.tm-metadata-key', undefined, 'language'), (0,_base_browser_dom_js__WEBPACK_IMPORTED_MODULE_1__.$)('td.tm-metadata-value', undefined, `${metadata ? metadata.languageId : '-?-'}`)), (0,_base_browser_dom_js__WEBPACK_IMPORTED_MODULE_1__.$)('tr', undefined, (0,_base_browser_dom_js__WEBPACK_IMPORTED_MODULE_1__.$)('td.tm-metadata-key', undefined, 'token type'), (0,_base_browser_dom_js__WEBPACK_IMPORTED_MODULE_1__.$)('td.tm-metadata-value', undefined, `${metadata ? this._tokenTypeToString(metadata.tokenType) : '-?-'}`)), (0,_base_browser_dom_js__WEBPACK_IMPORTED_MODULE_1__.$)('tr', undefined, (0,_base_browser_dom_js__WEBPACK_IMPORTED_MODULE_1__.$)('td.tm-metadata-key', undefined, 'font style'), (0,_base_browser_dom_js__WEBPACK_IMPORTED_MODULE_1__.$)('td.tm-metadata-value', undefined, `${metadata ? this._fontStyleToString(metadata.fontStyle) : '-?-'}`)), (0,_base_browser_dom_js__WEBPACK_IMPORTED_MODULE_1__.$)('tr', undefined, (0,_base_browser_dom_js__WEBPACK_IMPORTED_MODULE_1__.$)('td.tm-metadata-key', undefined, 'foreground'), (0,_base_browser_dom_js__WEBPACK_IMPORTED_MODULE_1__.$)('td.tm-metadata-value', undefined, `${metadata ? _base_common_color_js__WEBPACK_IMPORTED_MODULE_2__.Color.Format.CSS.formatHex(metadata.foreground) : '-?-'}`)), (0,_base_browser_dom_js__WEBPACK_IMPORTED_MODULE_1__.$)('tr', undefined, (0,_base_browser_dom_js__WEBPACK_IMPORTED_MODULE_1__.$)('td.tm-metadata-key', undefined, 'background'), (0,_base_browser_dom_js__WEBPACK_IMPORTED_MODULE_1__.$)('td.tm-metadata-value', undefined, `${metadata ? _base_common_color_js__WEBPACK_IMPORTED_MODULE_2__.Color.Format.CSS.formatHex(metadata.background) : '-?-'}`)))));\n (0,_base_browser_dom_js__WEBPACK_IMPORTED_MODULE_1__.append)(this._domNode, (0,_base_browser_dom_js__WEBPACK_IMPORTED_MODULE_1__.$)('hr.tokens-inspect-separator'));\n if (token1Index < data.tokens1.length) {\n (0,_base_browser_dom_js__WEBPACK_IMPORTED_MODULE_1__.append)(this._domNode, (0,_base_browser_dom_js__WEBPACK_IMPORTED_MODULE_1__.$)('span.tm-token-type', undefined, data.tokens1[token1Index].type));\n }\n this._editor.layoutContentWidget(this);\n }\n _decodeMetadata(metadata) {\n const colorMap = _common_languages_js__WEBPACK_IMPORTED_MODULE_5__.TokenizationRegistry.getColorMap();\n const languageId = _common_encodedTokenAttributes_js__WEBPACK_IMPORTED_MODULE_6__.TokenMetadata.getLanguageId(metadata);\n const tokenType = _common_encodedTokenAttributes_js__WEBPACK_IMPORTED_MODULE_6__.TokenMetadata.getTokenType(metadata);\n const fontStyle = _common_encodedTokenAttributes_js__WEBPACK_IMPORTED_MODULE_6__.TokenMetadata.getFontStyle(metadata);\n const foreground = _common_encodedTokenAttributes_js__WEBPACK_IMPORTED_MODULE_6__.TokenMetadata.getForeground(metadata);\n const background = _common_encodedTokenAttributes_js__WEBPACK_IMPORTED_MODULE_6__.TokenMetadata.getBackground(metadata);\n return {\n languageId: this._languageService.languageIdCodec.decodeLanguageId(languageId),\n tokenType: tokenType,\n fontStyle: fontStyle,\n foreground: colorMap[foreground],\n background: colorMap[background]\n };\n }\n _tokenTypeToString(tokenType) {\n switch (tokenType) {\n case 0 /* StandardTokenType.Other */: return 'Other';\n case 1 /* StandardTokenType.Comment */: return 'Comment';\n case 2 /* StandardTokenType.String */: return 'String';\n case 3 /* StandardTokenType.RegEx */: return 'RegEx';\n default: return '??';\n }\n }\n _fontStyleToString(fontStyle) {\n let r = '';\n if (fontStyle & 1 /* FontStyle.Italic */) {\n r += 'italic ';\n }\n if (fontStyle & 2 /* FontStyle.Bold */) {\n r += 'bold ';\n }\n if (fontStyle & 4 /* FontStyle.Underline */) {\n r += 'underline ';\n }\n if (fontStyle & 8 /* FontStyle.Strikethrough */) {\n r += 'strikethrough ';\n }\n if (r.length === 0) {\n r = '---';\n }\n return r;\n }\n _getTokensAtLine(lineNumber) {\n const stateBeforeLine = this._getStateBeforeLine(lineNumber);\n const tokenizationResult1 = this._tokenizationSupport.tokenize(this._model.getLineContent(lineNumber), true, stateBeforeLine);\n const tokenizationResult2 = this._tokenizationSupport.tokenizeEncoded(this._model.getLineContent(lineNumber), true, stateBeforeLine);\n return {\n startState: stateBeforeLine,\n tokens1: tokenizationResult1.tokens,\n tokens2: tokenizationResult2.tokens,\n endState: tokenizationResult1.endState\n };\n }\n _getStateBeforeLine(lineNumber) {\n let state = this._tokenizationSupport.getInitialState();\n for (let i = 1; i < lineNumber; i++) {\n const tokenizationResult = this._tokenizationSupport.tokenize(this._model.getLineContent(i), true, state);\n state = tokenizationResult.endState;\n }\n return state;\n }\n getDomNode() {\n return this._domNode;\n }\n getPosition() {\n return {\n position: this._editor.getPosition(),\n preference: [2 /* ContentWidgetPositionPreference.BELOW */, 1 /* ContentWidgetPositionPreference.ABOVE */]\n };\n }\n}\nInspectTokensWidget._ID = 'editor.contrib.inspectTokensWidget';\n(0,_browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_4__.registerEditorContribution)(InspectTokensController.ID, InspectTokensController, 4 /* EditorContributionInstantiation.Lazy */);\n(0,_browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_4__.registerEditorAction)(InspectTokens);\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/standalone/browser/inspectTokens/inspectTokens.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/standalone/browser/quickAccess/standaloneCommandsQuickAccess.js":
/*!******************************************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/standalone/browser/quickAccess/standaloneCommandsQuickAccess.js ***!
\******************************************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ GotoLineAction: () => (/* binding */ GotoLineAction),\n/* harmony export */ StandaloneCommandsQuickAccessProvider: () => (/* binding */ StandaloneCommandsQuickAccessProvider)\n/* harmony export */ });\n/* harmony import */ var _platform_registry_common_platform_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../../platform/registry/common/platform.js */ \"./node_modules/monaco-editor/esm/vs/platform/registry/common/platform.js\");\n/* harmony import */ var _platform_quickinput_common_quickAccess_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../platform/quickinput/common/quickAccess.js */ \"./node_modules/monaco-editor/esm/vs/platform/quickinput/common/quickAccess.js\");\n/* harmony import */ var _common_standaloneStrings_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../common/standaloneStrings.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/standaloneStrings.js\");\n/* harmony import */ var _browser_services_codeEditorService_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../../browser/services/codeEditorService.js */ \"./node_modules/monaco-editor/esm/vs/editor/browser/services/codeEditorService.js\");\n/* harmony import */ var _contrib_quickAccess_browser_commandsQuickAccess_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../../contrib/quickAccess/browser/commandsQuickAccess.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/quickAccess/browser/commandsQuickAccess.js\");\n/* harmony import */ var _platform_instantiation_common_instantiation_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../../../../platform/instantiation/common/instantiation.js */ \"./node_modules/monaco-editor/esm/vs/platform/instantiation/common/instantiation.js\");\n/* harmony import */ var _platform_keybinding_common_keybinding_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../../../../platform/keybinding/common/keybinding.js */ \"./node_modules/monaco-editor/esm/vs/platform/keybinding/common/keybinding.js\");\n/* harmony import */ var _platform_commands_common_commands_js__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ../../../../platform/commands/common/commands.js */ \"./node_modules/monaco-editor/esm/vs/platform/commands/common/commands.js\");\n/* harmony import */ var _platform_telemetry_common_telemetry_js__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ../../../../platform/telemetry/common/telemetry.js */ \"./node_modules/monaco-editor/esm/vs/platform/telemetry/common/telemetry.js\");\n/* harmony import */ var _platform_dialogs_common_dialogs_js__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ../../../../platform/dialogs/common/dialogs.js */ \"./node_modules/monaco-editor/esm/vs/platform/dialogs/common/dialogs.js\");\n/* harmony import */ var _browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! ../../../browser/editorExtensions.js */ \"./node_modules/monaco-editor/esm/vs/editor/browser/editorExtensions.js\");\n/* harmony import */ var _common_editorContextKeys_js__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(/*! ../../../common/editorContextKeys.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/editorContextKeys.js\");\n/* harmony import */ var _platform_quickinput_common_quickInput_js__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(/*! ../../../../platform/quickinput/common/quickInput.js */ \"./node_modules/monaco-editor/esm/vs/platform/quickinput/common/quickInput.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\nvar __decorate = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\n return c > 3 && r && Object.defineProperty(target, key, r), r;\n};\nvar __param = (undefined && undefined.__param) || function (paramIndex, decorator) {\n return function (target, key) { decorator(target, key, paramIndex); }\n};\n\n\n\n\n\n\n\n\n\n\n\n\n\nlet StandaloneCommandsQuickAccessProvider = class StandaloneCommandsQuickAccessProvider extends _contrib_quickAccess_browser_commandsQuickAccess_js__WEBPACK_IMPORTED_MODULE_4__.AbstractEditorCommandsQuickAccessProvider {\n get activeTextEditorControl() { var _a; return (_a = this.codeEditorService.getFocusedCodeEditor()) !== null && _a !== void 0 ? _a : undefined; }\n constructor(instantiationService, codeEditorService, keybindingService, commandService, telemetryService, dialogService) {\n super({ showAlias: false }, instantiationService, keybindingService, commandService, telemetryService, dialogService);\n this.codeEditorService = codeEditorService;\n }\n async getCommandPicks() {\n return this.getCodeEditorCommandPicks();\n }\n hasAdditionalCommandPicks() {\n return false;\n }\n async getAdditionalCommandPicks() {\n return [];\n }\n};\nStandaloneCommandsQuickAccessProvider = __decorate([\n __param(0, _platform_instantiation_common_instantiation_js__WEBPACK_IMPORTED_MODULE_5__.IInstantiationService),\n __param(1, _browser_services_codeEditorService_js__WEBPACK_IMPORTED_MODULE_3__.ICodeEditorService),\n __param(2, _platform_keybinding_common_keybinding_js__WEBPACK_IMPORTED_MODULE_6__.IKeybindingService),\n __param(3, _platform_commands_common_commands_js__WEBPACK_IMPORTED_MODULE_7__.ICommandService),\n __param(4, _platform_telemetry_common_telemetry_js__WEBPACK_IMPORTED_MODULE_8__.ITelemetryService),\n __param(5, _platform_dialogs_common_dialogs_js__WEBPACK_IMPORTED_MODULE_9__.IDialogService)\n], StandaloneCommandsQuickAccessProvider);\n\nclass GotoLineAction extends _browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_10__.EditorAction {\n constructor() {\n super({\n id: GotoLineAction.ID,\n label: _common_standaloneStrings_js__WEBPACK_IMPORTED_MODULE_2__.QuickCommandNLS.quickCommandActionLabel,\n alias: 'Command Palette',\n precondition: undefined,\n kbOpts: {\n kbExpr: _common_editorContextKeys_js__WEBPACK_IMPORTED_MODULE_11__.EditorContextKeys.focus,\n primary: 59 /* KeyCode.F1 */,\n weight: 100 /* KeybindingWeight.EditorContrib */\n },\n contextMenuOpts: {\n group: 'z_commands',\n order: 1\n }\n });\n }\n run(accessor) {\n accessor.get(_platform_quickinput_common_quickInput_js__WEBPACK_IMPORTED_MODULE_12__.IQuickInputService).quickAccess.show(StandaloneCommandsQuickAccessProvider.PREFIX);\n }\n}\nGotoLineAction.ID = 'editor.action.quickCommand';\n(0,_browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_10__.registerEditorAction)(GotoLineAction);\n_platform_registry_common_platform_js__WEBPACK_IMPORTED_MODULE_0__.Registry.as(_platform_quickinput_common_quickAccess_js__WEBPACK_IMPORTED_MODULE_1__.Extensions.Quickaccess).registerQuickAccessProvider({\n ctor: StandaloneCommandsQuickAccessProvider,\n prefix: StandaloneCommandsQuickAccessProvider.PREFIX,\n helpEntries: [{ description: _common_standaloneStrings_js__WEBPACK_IMPORTED_MODULE_2__.QuickCommandNLS.quickCommandHelp, commandId: GotoLineAction.ID }]\n});\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/standalone/browser/quickAccess/standaloneCommandsQuickAccess.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/standalone/browser/quickAccess/standaloneGotoLineQuickAccess.js":
/*!******************************************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/standalone/browser/quickAccess/standaloneGotoLineQuickAccess.js ***!
\******************************************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ GotoLineAction: () => (/* binding */ GotoLineAction),\n/* harmony export */ StandaloneGotoLineQuickAccessProvider: () => (/* binding */ StandaloneGotoLineQuickAccessProvider)\n/* harmony export */ });\n/* harmony import */ var _contrib_quickAccess_browser_gotoLineQuickAccess_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../contrib/quickAccess/browser/gotoLineQuickAccess.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/quickAccess/browser/gotoLineQuickAccess.js\");\n/* harmony import */ var _platform_registry_common_platform_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../platform/registry/common/platform.js */ \"./node_modules/monaco-editor/esm/vs/platform/registry/common/platform.js\");\n/* harmony import */ var _platform_quickinput_common_quickAccess_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../../platform/quickinput/common/quickAccess.js */ \"./node_modules/monaco-editor/esm/vs/platform/quickinput/common/quickAccess.js\");\n/* harmony import */ var _browser_services_codeEditorService_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../../browser/services/codeEditorService.js */ \"./node_modules/monaco-editor/esm/vs/editor/browser/services/codeEditorService.js\");\n/* harmony import */ var _common_standaloneStrings_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../../common/standaloneStrings.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/standaloneStrings.js\");\n/* harmony import */ var _base_common_event_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../../../../base/common/event.js */ \"./node_modules/monaco-editor/esm/vs/base/common/event.js\");\n/* harmony import */ var _browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../../../browser/editorExtensions.js */ \"./node_modules/monaco-editor/esm/vs/editor/browser/editorExtensions.js\");\n/* harmony import */ var _common_editorContextKeys_js__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ../../../common/editorContextKeys.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/editorContextKeys.js\");\n/* harmony import */ var _platform_quickinput_common_quickInput_js__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ../../../../platform/quickinput/common/quickInput.js */ \"./node_modules/monaco-editor/esm/vs/platform/quickinput/common/quickInput.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\nvar __decorate = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\n return c > 3 && r && Object.defineProperty(target, key, r), r;\n};\nvar __param = (undefined && undefined.__param) || function (paramIndex, decorator) {\n return function (target, key) { decorator(target, key, paramIndex); }\n};\n\n\n\n\n\n\n\n\n\nlet StandaloneGotoLineQuickAccessProvider = class StandaloneGotoLineQuickAccessProvider extends _contrib_quickAccess_browser_gotoLineQuickAccess_js__WEBPACK_IMPORTED_MODULE_0__.AbstractGotoLineQuickAccessProvider {\n constructor(editorService) {\n super();\n this.editorService = editorService;\n this.onDidActiveTextEditorControlChange = _base_common_event_js__WEBPACK_IMPORTED_MODULE_5__.Event.None;\n }\n get activeTextEditorControl() {\n var _a;\n return (_a = this.editorService.getFocusedCodeEditor()) !== null && _a !== void 0 ? _a : undefined;\n }\n};\nStandaloneGotoLineQuickAccessProvider = __decorate([\n __param(0, _browser_services_codeEditorService_js__WEBPACK_IMPORTED_MODULE_3__.ICodeEditorService)\n], StandaloneGotoLineQuickAccessProvider);\n\nclass GotoLineAction extends _browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_6__.EditorAction {\n constructor() {\n super({\n id: GotoLineAction.ID,\n label: _common_standaloneStrings_js__WEBPACK_IMPORTED_MODULE_4__.GoToLineNLS.gotoLineActionLabel,\n alias: 'Go to Line/Column...',\n precondition: undefined,\n kbOpts: {\n kbExpr: _common_editorContextKeys_js__WEBPACK_IMPORTED_MODULE_7__.EditorContextKeys.focus,\n primary: 2048 /* KeyMod.CtrlCmd */ | 37 /* KeyCode.KeyG */,\n mac: { primary: 256 /* KeyMod.WinCtrl */ | 37 /* KeyCode.KeyG */ },\n weight: 100 /* KeybindingWeight.EditorContrib */\n }\n });\n }\n run(accessor) {\n accessor.get(_platform_quickinput_common_quickInput_js__WEBPACK_IMPORTED_MODULE_8__.IQuickInputService).quickAccess.show(StandaloneGotoLineQuickAccessProvider.PREFIX);\n }\n}\nGotoLineAction.ID = 'editor.action.gotoLine';\n(0,_browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_6__.registerEditorAction)(GotoLineAction);\n_platform_registry_common_platform_js__WEBPACK_IMPORTED_MODULE_1__.Registry.as(_platform_quickinput_common_quickAccess_js__WEBPACK_IMPORTED_MODULE_2__.Extensions.Quickaccess).registerQuickAccessProvider({\n ctor: StandaloneGotoLineQuickAccessProvider,\n prefix: StandaloneGotoLineQuickAccessProvider.PREFIX,\n helpEntries: [{ description: _common_standaloneStrings_js__WEBPACK_IMPORTED_MODULE_4__.GoToLineNLS.gotoLineActionLabel, commandId: GotoLineAction.ID }]\n});\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/standalone/browser/quickAccess/standaloneGotoLineQuickAccess.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/standalone/browser/quickAccess/standaloneGotoSymbolQuickAccess.js":
/*!********************************************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/standalone/browser/quickAccess/standaloneGotoSymbolQuickAccess.js ***!
\********************************************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ GotoSymbolAction: () => (/* binding */ GotoSymbolAction),\n/* harmony export */ StandaloneGotoSymbolQuickAccessProvider: () => (/* binding */ StandaloneGotoSymbolQuickAccessProvider)\n/* harmony export */ });\n/* harmony import */ var _base_browser_ui_codicons_codiconStyles_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../../base/browser/ui/codicons/codiconStyles.js */ \"./node_modules/monaco-editor/esm/vs/base/browser/ui/codicons/codiconStyles.js\");\n/* harmony import */ var _contrib_symbolIcons_browser_symbolIcons_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../contrib/symbolIcons/browser/symbolIcons.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/symbolIcons/browser/symbolIcons.js\");\n/* harmony import */ var _contrib_quickAccess_browser_gotoSymbolQuickAccess_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../contrib/quickAccess/browser/gotoSymbolQuickAccess.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/quickAccess/browser/gotoSymbolQuickAccess.js\");\n/* harmony import */ var _platform_registry_common_platform_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../../../platform/registry/common/platform.js */ \"./node_modules/monaco-editor/esm/vs/platform/registry/common/platform.js\");\n/* harmony import */ var _platform_quickinput_common_quickAccess_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../../../platform/quickinput/common/quickAccess.js */ \"./node_modules/monaco-editor/esm/vs/platform/quickinput/common/quickAccess.js\");\n/* harmony import */ var _browser_services_codeEditorService_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../../../browser/services/codeEditorService.js */ \"./node_modules/monaco-editor/esm/vs/editor/browser/services/codeEditorService.js\");\n/* harmony import */ var _common_standaloneStrings_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../../../common/standaloneStrings.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/standaloneStrings.js\");\n/* harmony import */ var _base_common_event_js__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ../../../../base/common/event.js */ \"./node_modules/monaco-editor/esm/vs/base/common/event.js\");\n/* harmony import */ var _browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ../../../browser/editorExtensions.js */ \"./node_modules/monaco-editor/esm/vs/editor/browser/editorExtensions.js\");\n/* harmony import */ var _common_editorContextKeys_js__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ../../../common/editorContextKeys.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/editorContextKeys.js\");\n/* harmony import */ var _platform_quickinput_common_quickInput_js__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! ../../../../platform/quickinput/common/quickInput.js */ \"./node_modules/monaco-editor/esm/vs/platform/quickinput/common/quickInput.js\");\n/* harmony import */ var _contrib_documentSymbols_browser_outlineModel_js__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(/*! ../../../contrib/documentSymbols/browser/outlineModel.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/documentSymbols/browser/outlineModel.js\");\n/* harmony import */ var _common_services_languageFeatures_js__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(/*! ../../../common/services/languageFeatures.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/services/languageFeatures.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\nvar __decorate = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\n return c > 3 && r && Object.defineProperty(target, key, r), r;\n};\nvar __param = (undefined && undefined.__param) || function (paramIndex, decorator) {\n return function (target, key) { decorator(target, key, paramIndex); }\n};\n // The codicon symbol styles are defined here and must be loaded\n // The codicon symbol colors are defined here and must be loaded to get colors\n\n\n\n\n\n\n\n\n\n\n\nlet StandaloneGotoSymbolQuickAccessProvider = class StandaloneGotoSymbolQuickAccessProvider extends _contrib_quickAccess_browser_gotoSymbolQuickAccess_js__WEBPACK_IMPORTED_MODULE_2__.AbstractGotoSymbolQuickAccessProvider {\n constructor(editorService, languageFeaturesService, outlineModelService) {\n super(languageFeaturesService, outlineModelService);\n this.editorService = editorService;\n this.onDidActiveTextEditorControlChange = _base_common_event_js__WEBPACK_IMPORTED_MODULE_7__.Event.None;\n }\n get activeTextEditorControl() {\n var _a;\n return (_a = this.editorService.getFocusedCodeEditor()) !== null && _a !== void 0 ? _a : undefined;\n }\n};\nStandaloneGotoSymbolQuickAccessProvider = __decorate([\n __param(0, _browser_services_codeEditorService_js__WEBPACK_IMPORTED_MODULE_5__.ICodeEditorService),\n __param(1, _common_services_languageFeatures_js__WEBPACK_IMPORTED_MODULE_12__.ILanguageFeaturesService),\n __param(2, _contrib_documentSymbols_browser_outlineModel_js__WEBPACK_IMPORTED_MODULE_11__.IOutlineModelService)\n], StandaloneGotoSymbolQuickAccessProvider);\n\nclass GotoSymbolAction extends _browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_8__.EditorAction {\n constructor() {\n super({\n id: GotoSymbolAction.ID,\n label: _common_standaloneStrings_js__WEBPACK_IMPORTED_MODULE_6__.QuickOutlineNLS.quickOutlineActionLabel,\n alias: 'Go to Symbol...',\n precondition: _common_editorContextKeys_js__WEBPACK_IMPORTED_MODULE_9__.EditorContextKeys.hasDocumentSymbolProvider,\n kbOpts: {\n kbExpr: _common_editorContextKeys_js__WEBPACK_IMPORTED_MODULE_9__.EditorContextKeys.focus,\n primary: 2048 /* KeyMod.CtrlCmd */ | 1024 /* KeyMod.Shift */ | 45 /* KeyCode.KeyO */,\n weight: 100 /* KeybindingWeight.EditorContrib */\n },\n contextMenuOpts: {\n group: 'navigation',\n order: 3\n }\n });\n }\n run(accessor) {\n accessor.get(_platform_quickinput_common_quickInput_js__WEBPACK_IMPORTED_MODULE_10__.IQuickInputService).quickAccess.show(_contrib_quickAccess_browser_gotoSymbolQuickAccess_js__WEBPACK_IMPORTED_MODULE_2__.AbstractGotoSymbolQuickAccessProvider.PREFIX, { itemActivation: _platform_quickinput_common_quickInput_js__WEBPACK_IMPORTED_MODULE_10__.ItemActivation.NONE });\n }\n}\nGotoSymbolAction.ID = 'editor.action.quickOutline';\n(0,_browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_8__.registerEditorAction)(GotoSymbolAction);\n_platform_registry_common_platform_js__WEBPACK_IMPORTED_MODULE_3__.Registry.as(_platform_quickinput_common_quickAccess_js__WEBPACK_IMPORTED_MODULE_4__.Extensions.Quickaccess).registerQuickAccessProvider({\n ctor: StandaloneGotoSymbolQuickAccessProvider,\n prefix: _contrib_quickAccess_browser_gotoSymbolQuickAccess_js__WEBPACK_IMPORTED_MODULE_2__.AbstractGotoSymbolQuickAccessProvider.PREFIX,\n helpEntries: [\n { description: _common_standaloneStrings_js__WEBPACK_IMPORTED_MODULE_6__.QuickOutlineNLS.quickOutlineActionLabel, prefix: _contrib_quickAccess_browser_gotoSymbolQuickAccess_js__WEBPACK_IMPORTED_MODULE_2__.AbstractGotoSymbolQuickAccessProvider.PREFIX, commandId: GotoSymbolAction.ID },\n { description: _common_standaloneStrings_js__WEBPACK_IMPORTED_MODULE_6__.QuickOutlineNLS.quickOutlineByCategoryActionLabel, prefix: _contrib_quickAccess_browser_gotoSymbolQuickAccess_js__WEBPACK_IMPORTED_MODULE_2__.AbstractGotoSymbolQuickAccessProvider.PREFIX_BY_CATEGORY }\n ]\n});\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/standalone/browser/quickAccess/standaloneGotoSymbolQuickAccess.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/standalone/browser/quickAccess/standaloneHelpQuickAccess.js":
/*!**************************************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/standalone/browser/quickAccess/standaloneHelpQuickAccess.js ***!
\**************************************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var _platform_registry_common_platform_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../../platform/registry/common/platform.js */ \"./node_modules/monaco-editor/esm/vs/platform/registry/common/platform.js\");\n/* harmony import */ var _platform_quickinput_common_quickAccess_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../platform/quickinput/common/quickAccess.js */ \"./node_modules/monaco-editor/esm/vs/platform/quickinput/common/quickAccess.js\");\n/* harmony import */ var _common_standaloneStrings_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../common/standaloneStrings.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/standaloneStrings.js\");\n/* harmony import */ var _platform_quickinput_browser_helpQuickAccess_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../../../platform/quickinput/browser/helpQuickAccess.js */ \"./node_modules/monaco-editor/esm/vs/platform/quickinput/browser/helpQuickAccess.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n\n\n\n_platform_registry_common_platform_js__WEBPACK_IMPORTED_MODULE_0__.Registry.as(_platform_quickinput_common_quickAccess_js__WEBPACK_IMPORTED_MODULE_1__.Extensions.Quickaccess).registerQuickAccessProvider({\n ctor: _platform_quickinput_browser_helpQuickAccess_js__WEBPACK_IMPORTED_MODULE_3__.HelpQuickAccessProvider,\n prefix: '',\n helpEntries: [{ description: _common_standaloneStrings_js__WEBPACK_IMPORTED_MODULE_2__.QuickHelpNLS.helpQuickAccessActionLabel }]\n});\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/standalone/browser/quickAccess/standaloneHelpQuickAccess.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/standalone/browser/quickInput/standaloneQuickInputService.js":
/*!***************************************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/standalone/browser/quickInput/standaloneQuickInputService.js ***!
\***************************************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ QuickInputEditorContribution: () => (/* binding */ QuickInputEditorContribution),\n/* harmony export */ QuickInputEditorWidget: () => (/* binding */ QuickInputEditorWidget),\n/* harmony export */ StandaloneQuickInputService: () => (/* binding */ StandaloneQuickInputService)\n/* harmony export */ });\n/* harmony import */ var _standaloneQuickInput_css__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./standaloneQuickInput.css */ \"./node_modules/monaco-editor/esm/vs/editor/standalone/browser/quickInput/standaloneQuickInput.css\");\n/* harmony import */ var _base_common_event_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../base/common/event.js */ \"./node_modules/monaco-editor/esm/vs/base/common/event.js\");\n/* harmony import */ var _browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../browser/editorExtensions.js */ \"./node_modules/monaco-editor/esm/vs/editor/browser/editorExtensions.js\");\n/* harmony import */ var _platform_theme_common_themeService_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../../../platform/theme/common/themeService.js */ \"./node_modules/monaco-editor/esm/vs/platform/theme/common/themeService.js\");\n/* harmony import */ var _base_common_cancellation_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../../../base/common/cancellation.js */ \"./node_modules/monaco-editor/esm/vs/base/common/cancellation.js\");\n/* harmony import */ var _platform_instantiation_common_instantiation_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../../../../platform/instantiation/common/instantiation.js */ \"./node_modules/monaco-editor/esm/vs/platform/instantiation/common/instantiation.js\");\n/* harmony import */ var _platform_contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../../../../platform/contextkey/common/contextkey.js */ \"./node_modules/monaco-editor/esm/vs/platform/contextkey/common/contextkey.js\");\n/* harmony import */ var _standaloneLayoutService_js__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ../standaloneLayoutService.js */ \"./node_modules/monaco-editor/esm/vs/editor/standalone/browser/standaloneLayoutService.js\");\n/* harmony import */ var _browser_services_codeEditorService_js__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ../../../browser/services/codeEditorService.js */ \"./node_modules/monaco-editor/esm/vs/editor/browser/services/codeEditorService.js\");\n/* harmony import */ var _platform_quickinput_browser_quickInputService_js__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ../../../../platform/quickinput/browser/quickInputService.js */ \"./node_modules/monaco-editor/esm/vs/platform/quickinput/browser/quickInputService.js\");\n/* harmony import */ var _base_common_functional_js__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! ../../../../base/common/functional.js */ \"./node_modules/monaco-editor/esm/vs/base/common/functional.js\");\n/* harmony import */ var _platform_configuration_common_configuration_js__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(/*! ../../../../platform/configuration/common/configuration.js */ \"./node_modules/monaco-editor/esm/vs/platform/configuration/common/configuration.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\nvar __decorate = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\n return c > 3 && r && Object.defineProperty(target, key, r), r;\n};\nvar __param = (undefined && undefined.__param) || function (paramIndex, decorator) {\n return function (target, key) { decorator(target, key, paramIndex); }\n};\n\n\n\n\n\n\n\n\n\n\n\n\nlet EditorScopedQuickInputService = class EditorScopedQuickInputService extends _platform_quickinput_browser_quickInputService_js__WEBPACK_IMPORTED_MODULE_9__.QuickInputService {\n constructor(editor, instantiationService, contextKeyService, themeService, codeEditorService, configurationService) {\n super(instantiationService, contextKeyService, themeService, new _standaloneLayoutService_js__WEBPACK_IMPORTED_MODULE_7__.EditorScopedLayoutService(editor.getContainerDomNode(), codeEditorService), configurationService);\n this.host = undefined;\n // Use the passed in code editor as host for the quick input widget\n const contribution = QuickInputEditorContribution.get(editor);\n if (contribution) {\n const widget = contribution.widget;\n this.host = {\n _serviceBrand: undefined,\n get mainContainer() { return widget.getDomNode(); },\n getContainer() { return widget.getDomNode(); },\n get containers() { return [widget.getDomNode()]; },\n get activeContainer() { return widget.getDomNode(); },\n get mainContainerDimension() { return editor.getLayoutInfo(); },\n get activeContainerDimension() { return editor.getLayoutInfo(); },\n get onDidLayoutMainContainer() { return editor.onDidLayoutChange; },\n get onDidLayoutActiveContainer() { return editor.onDidLayoutChange; },\n get onDidLayoutContainer() { return _base_common_event_js__WEBPACK_IMPORTED_MODULE_1__.Event.map(editor.onDidLayoutChange, dimension => ({ container: widget.getDomNode(), dimension })); },\n get onDidChangeActiveContainer() { return _base_common_event_js__WEBPACK_IMPORTED_MODULE_1__.Event.None; },\n get onDidAddContainer() { return _base_common_event_js__WEBPACK_IMPORTED_MODULE_1__.Event.None; },\n get whenActiveContainerStylesLoaded() { return Promise.resolve(); },\n get mainContainerOffset() { return { top: 0, quickPickTop: 0 }; },\n get activeContainerOffset() { return { top: 0, quickPickTop: 0 }; },\n focus: () => editor.focus()\n };\n }\n else {\n this.host = undefined;\n }\n }\n createController() {\n return super.createController(this.host);\n }\n};\nEditorScopedQuickInputService = __decorate([\n __param(1, _platform_instantiation_common_instantiation_js__WEBPACK_IMPORTED_MODULE_5__.IInstantiationService),\n __param(2, _platform_contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_6__.IContextKeyService),\n __param(3, _platform_theme_common_themeService_js__WEBPACK_IMPORTED_MODULE_3__.IThemeService),\n __param(4, _browser_services_codeEditorService_js__WEBPACK_IMPORTED_MODULE_8__.ICodeEditorService),\n __param(5, _platform_configuration_common_configuration_js__WEBPACK_IMPORTED_MODULE_11__.IConfigurationService)\n], EditorScopedQuickInputService);\nlet StandaloneQuickInputService = class StandaloneQuickInputService {\n get activeService() {\n const editor = this.codeEditorService.getFocusedCodeEditor();\n if (!editor) {\n throw new Error('Quick input service needs a focused editor to work.');\n }\n // Find the quick input implementation for the focused\n // editor or create it lazily if not yet created\n let quickInputService = this.mapEditorToService.get(editor);\n if (!quickInputService) {\n const newQuickInputService = quickInputService = this.instantiationService.createInstance(EditorScopedQuickInputService, editor);\n this.mapEditorToService.set(editor, quickInputService);\n (0,_base_common_functional_js__WEBPACK_IMPORTED_MODULE_10__.createSingleCallFunction)(editor.onDidDispose)(() => {\n newQuickInputService.dispose();\n this.mapEditorToService.delete(editor);\n });\n }\n return quickInputService;\n }\n get quickAccess() { return this.activeService.quickAccess; }\n constructor(instantiationService, codeEditorService) {\n this.instantiationService = instantiationService;\n this.codeEditorService = codeEditorService;\n this.mapEditorToService = new Map();\n }\n pick(picks, options = {}, token = _base_common_cancellation_js__WEBPACK_IMPORTED_MODULE_4__.CancellationToken.None) {\n return this.activeService /* TS fail */.pick(picks, options, token);\n }\n createQuickPick() {\n return this.activeService.createQuickPick();\n }\n createInputBox() {\n return this.activeService.createInputBox();\n }\n};\nStandaloneQuickInputService = __decorate([\n __param(0, _platform_instantiation_common_instantiation_js__WEBPACK_IMPORTED_MODULE_5__.IInstantiationService),\n __param(1, _browser_services_codeEditorService_js__WEBPACK_IMPORTED_MODULE_8__.ICodeEditorService)\n], StandaloneQuickInputService);\n\nclass QuickInputEditorContribution {\n static get(editor) {\n return editor.getContribution(QuickInputEditorContribution.ID);\n }\n constructor(editor) {\n this.editor = editor;\n this.widget = new QuickInputEditorWidget(this.editor);\n }\n dispose() {\n this.widget.dispose();\n }\n}\nQuickInputEditorContribution.ID = 'editor.controller.quickInput';\nclass QuickInputEditorWidget {\n constructor(codeEditor) {\n this.codeEditor = codeEditor;\n this.domNode = document.createElement('div');\n this.codeEditor.addOverlayWidget(this);\n }\n getId() {\n return QuickInputEditorWidget.ID;\n }\n getDomNode() {\n return this.domNode;\n }\n getPosition() {\n return { preference: 2 /* OverlayWidgetPositionPreference.TOP_CENTER */ };\n }\n dispose() {\n this.codeEditor.removeOverlayWidget(this);\n }\n}\nQuickInputEditorWidget.ID = 'editor.contrib.quickInputWidget';\n(0,_browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_2__.registerEditorContribution)(QuickInputEditorContribution.ID, QuickInputEditorContribution, 4 /* EditorContributionInstantiation.Lazy */);\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/standalone/browser/quickInput/standaloneQuickInputService.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/standalone/browser/referenceSearch/standaloneReferenceSearch.js":
/*!******************************************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/standalone/browser/referenceSearch/standaloneReferenceSearch.js ***!
\******************************************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ StandaloneReferencesController: () => (/* binding */ StandaloneReferencesController)\n/* harmony export */ });\n/* harmony import */ var _browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../browser/editorExtensions.js */ \"./node_modules/monaco-editor/esm/vs/editor/browser/editorExtensions.js\");\n/* harmony import */ var _browser_services_codeEditorService_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../browser/services/codeEditorService.js */ \"./node_modules/monaco-editor/esm/vs/editor/browser/services/codeEditorService.js\");\n/* harmony import */ var _contrib_gotoSymbol_browser_peek_referencesController_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../contrib/gotoSymbol/browser/peek/referencesController.js */ \"./node_modules/monaco-editor/esm/vs/editor/contrib/gotoSymbol/browser/peek/referencesController.js\");\n/* harmony import */ var _platform_configuration_common_configuration_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../../../platform/configuration/common/configuration.js */ \"./node_modules/monaco-editor/esm/vs/platform/configuration/common/configuration.js\");\n/* harmony import */ var _platform_contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../../../platform/contextkey/common/contextkey.js */ \"./node_modules/monaco-editor/esm/vs/platform/contextkey/common/contextkey.js\");\n/* harmony import */ var _platform_instantiation_common_instantiation_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../../../../platform/instantiation/common/instantiation.js */ \"./node_modules/monaco-editor/esm/vs/platform/instantiation/common/instantiation.js\");\n/* harmony import */ var _platform_notification_common_notification_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../../../../platform/notification/common/notification.js */ \"./node_modules/monaco-editor/esm/vs/platform/notification/common/notification.js\");\n/* harmony import */ var _platform_storage_common_storage_js__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ../../../../platform/storage/common/storage.js */ \"./node_modules/monaco-editor/esm/vs/platform/storage/common/storage.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\nvar __decorate = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\n return c > 3 && r && Object.defineProperty(target, key, r), r;\n};\nvar __param = (undefined && undefined.__param) || function (paramIndex, decorator) {\n return function (target, key) { decorator(target, key, paramIndex); }\n};\n\n\n\n\n\n\n\n\nlet StandaloneReferencesController = class StandaloneReferencesController extends _contrib_gotoSymbol_browser_peek_referencesController_js__WEBPACK_IMPORTED_MODULE_2__.ReferencesController {\n constructor(editor, contextKeyService, editorService, notificationService, instantiationService, storageService, configurationService) {\n super(true, editor, contextKeyService, editorService, notificationService, instantiationService, storageService, configurationService);\n }\n};\nStandaloneReferencesController = __decorate([\n __param(1, _platform_contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_4__.IContextKeyService),\n __param(2, _browser_services_codeEditorService_js__WEBPACK_IMPORTED_MODULE_1__.ICodeEditorService),\n __param(3, _platform_notification_common_notification_js__WEBPACK_IMPORTED_MODULE_6__.INotificationService),\n __param(4, _platform_instantiation_common_instantiation_js__WEBPACK_IMPORTED_MODULE_5__.IInstantiationService),\n __param(5, _platform_storage_common_storage_js__WEBPACK_IMPORTED_MODULE_7__.IStorageService),\n __param(6, _platform_configuration_common_configuration_js__WEBPACK_IMPORTED_MODULE_3__.IConfigurationService)\n], StandaloneReferencesController);\n\n(0,_browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_0__.registerEditorContribution)(_contrib_gotoSymbol_browser_peek_referencesController_js__WEBPACK_IMPORTED_MODULE_2__.ReferencesController.ID, StandaloneReferencesController, 4 /* EditorContributionInstantiation.Lazy */);\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/standalone/browser/referenceSearch/standaloneReferenceSearch.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/standalone/browser/standaloneCodeEditor.js":
/*!*********************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/standalone/browser/standaloneCodeEditor.js ***!
\*********************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ StandaloneCodeEditor: () => (/* binding */ StandaloneCodeEditor),\n/* harmony export */ StandaloneDiffEditor2: () => (/* binding */ StandaloneDiffEditor2),\n/* harmony export */ StandaloneEditor: () => (/* binding */ StandaloneEditor),\n/* harmony export */ createTextModel: () => (/* binding */ createTextModel)\n/* harmony export */ });\n/* harmony import */ var _base_browser_ui_aria_aria_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../base/browser/ui/aria/aria.js */ \"./node_modules/monaco-editor/esm/vs/base/browser/ui/aria/aria.js\");\n/* harmony import */ var _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../base/common/lifecycle.js */ \"./node_modules/monaco-editor/esm/vs/base/common/lifecycle.js\");\n/* harmony import */ var _browser_services_codeEditorService_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../browser/services/codeEditorService.js */ \"./node_modules/monaco-editor/esm/vs/editor/browser/services/codeEditorService.js\");\n/* harmony import */ var _browser_widget_codeEditorWidget_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../browser/widget/codeEditorWidget.js */ \"./node_modules/monaco-editor/esm/vs/editor/browser/widget/codeEditorWidget.js\");\n/* harmony import */ var _common_editorAction_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../common/editorAction.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/editorAction.js\");\n/* harmony import */ var _standaloneServices_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./standaloneServices.js */ \"./node_modules/monaco-editor/esm/vs/editor/standalone/browser/standaloneServices.js\");\n/* harmony import */ var _common_standaloneTheme_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../common/standaloneTheme.js */ \"./node_modules/monaco-editor/esm/vs/editor/standalone/common/standaloneTheme.js\");\n/* harmony import */ var _platform_actions_common_actions_js__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ../../../platform/actions/common/actions.js */ \"./node_modules/monaco-editor/esm/vs/platform/actions/common/actions.js\");\n/* harmony import */ var _platform_commands_common_commands_js__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ../../../platform/commands/common/commands.js */ \"./node_modules/monaco-editor/esm/vs/platform/commands/common/commands.js\");\n/* harmony import */ var _platform_configuration_common_configuration_js__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ../../../platform/configuration/common/configuration.js */ \"./node_modules/monaco-editor/esm/vs/platform/configuration/common/configuration.js\");\n/* harmony import */ var _platform_contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! ../../../platform/contextkey/common/contextkey.js */ \"./node_modules/monaco-editor/esm/vs/platform/contextkey/common/contextkey.js\");\n/* harmony import */ var _platform_contextview_browser_contextView_js__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(/*! ../../../platform/contextview/browser/contextView.js */ \"./node_modules/monaco-editor/esm/vs/platform/contextview/browser/contextView.js\");\n/* harmony import */ var _platform_instantiation_common_instantiation_js__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(/*! ../../../platform/instantiation/common/instantiation.js */ \"./node_modules/monaco-editor/esm/vs/platform/instantiation/common/instantiation.js\");\n/* harmony import */ var _platform_keybinding_common_keybinding_js__WEBPACK_IMPORTED_MODULE_13__ = __webpack_require__(/*! ../../../platform/keybinding/common/keybinding.js */ \"./node_modules/monaco-editor/esm/vs/platform/keybinding/common/keybinding.js\");\n/* harmony import */ var _platform_notification_common_notification_js__WEBPACK_IMPORTED_MODULE_14__ = __webpack_require__(/*! ../../../platform/notification/common/notification.js */ \"./node_modules/monaco-editor/esm/vs/platform/notification/common/notification.js\");\n/* harmony import */ var _platform_theme_common_themeService_js__WEBPACK_IMPORTED_MODULE_15__ = __webpack_require__(/*! ../../../platform/theme/common/themeService.js */ \"./node_modules/monaco-editor/esm/vs/platform/theme/common/themeService.js\");\n/* harmony import */ var _platform_accessibility_common_accessibility_js__WEBPACK_IMPORTED_MODULE_16__ = __webpack_require__(/*! ../../../platform/accessibility/common/accessibility.js */ \"./node_modules/monaco-editor/esm/vs/platform/accessibility/common/accessibility.js\");\n/* harmony import */ var _common_standaloneStrings_js__WEBPACK_IMPORTED_MODULE_17__ = __webpack_require__(/*! ../../common/standaloneStrings.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/standaloneStrings.js\");\n/* harmony import */ var _platform_clipboard_common_clipboardService_js__WEBPACK_IMPORTED_MODULE_18__ = __webpack_require__(/*! ../../../platform/clipboard/common/clipboardService.js */ \"./node_modules/monaco-editor/esm/vs/platform/clipboard/common/clipboardService.js\");\n/* harmony import */ var _platform_progress_common_progress_js__WEBPACK_IMPORTED_MODULE_19__ = __webpack_require__(/*! ../../../platform/progress/common/progress.js */ \"./node_modules/monaco-editor/esm/vs/platform/progress/common/progress.js\");\n/* harmony import */ var _common_services_model_js__WEBPACK_IMPORTED_MODULE_20__ = __webpack_require__(/*! ../../common/services/model.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/services/model.js\");\n/* harmony import */ var _common_languages_language_js__WEBPACK_IMPORTED_MODULE_21__ = __webpack_require__(/*! ../../common/languages/language.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/languages/language.js\");\n/* harmony import */ var _standaloneCodeEditorService_js__WEBPACK_IMPORTED_MODULE_22__ = __webpack_require__(/*! ./standaloneCodeEditorService.js */ \"./node_modules/monaco-editor/esm/vs/editor/standalone/browser/standaloneCodeEditorService.js\");\n/* harmony import */ var _common_languages_modesRegistry_js__WEBPACK_IMPORTED_MODULE_23__ = __webpack_require__(/*! ../../common/languages/modesRegistry.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/languages/modesRegistry.js\");\n/* harmony import */ var _common_languages_languageConfigurationRegistry_js__WEBPACK_IMPORTED_MODULE_24__ = __webpack_require__(/*! ../../common/languages/languageConfigurationRegistry.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/languages/languageConfigurationRegistry.js\");\n/* harmony import */ var _common_services_languageFeatures_js__WEBPACK_IMPORTED_MODULE_25__ = __webpack_require__(/*! ../../common/services/languageFeatures.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/services/languageFeatures.js\");\n/* harmony import */ var _browser_widget_diffEditor_diffEditorWidget_js__WEBPACK_IMPORTED_MODULE_26__ = __webpack_require__(/*! ../../browser/widget/diffEditor/diffEditorWidget.js */ \"./node_modules/monaco-editor/esm/vs/editor/browser/widget/diffEditor/diffEditorWidget.js\");\n/* harmony import */ var _platform_accessibilitySignal_browser_accessibilitySignalService_js__WEBPACK_IMPORTED_MODULE_27__ = __webpack_require__(/*! ../../../platform/accessibilitySignal/browser/accessibilitySignalService.js */ \"./node_modules/monaco-editor/esm/vs/platform/accessibilitySignal/browser/accessibilitySignalService.js\");\n/* harmony import */ var _base_browser_window_js__WEBPACK_IMPORTED_MODULE_28__ = __webpack_require__(/*! ../../../base/browser/window.js */ \"./node_modules/monaco-editor/esm/vs/base/browser/window.js\");\n/* harmony import */ var _base_browser_ui_hover_hoverDelegate_js__WEBPACK_IMPORTED_MODULE_29__ = __webpack_require__(/*! ../../../base/browser/ui/hover/hoverDelegate.js */ \"./node_modules/monaco-editor/esm/vs/base/browser/ui/hover/hoverDelegate.js\");\n/* harmony import */ var _platform_hover_browser_hover_js__WEBPACK_IMPORTED_MODULE_30__ = __webpack_require__(/*! ../../../platform/hover/browser/hover.js */ \"./node_modules/monaco-editor/esm/vs/platform/hover/browser/hover.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\nvar __decorate = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\n return c > 3 && r && Object.defineProperty(target, key, r), r;\n};\nvar __param = (undefined && undefined.__param) || function (paramIndex, decorator) {\n return function (target, key) { decorator(target, key, paramIndex); }\n};\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlet LAST_GENERATED_COMMAND_ID = 0;\nlet ariaDomNodeCreated = false;\n/**\n * Create ARIA dom node inside parent,\n * or only for the first editor instantiation inside document.body.\n * @param parent container element for ARIA dom node\n */\nfunction createAriaDomNode(parent) {\n if (!parent) {\n if (ariaDomNodeCreated) {\n return;\n }\n ariaDomNodeCreated = true;\n }\n _base_browser_ui_aria_aria_js__WEBPACK_IMPORTED_MODULE_0__.setARIAContainer(parent || _base_browser_window_js__WEBPACK_IMPORTED_MODULE_28__.mainWindow.document.body);\n}\n/**\n * A code editor to be used both by the standalone editor and the standalone diff editor.\n */\nlet StandaloneCodeEditor = class StandaloneCodeEditor extends _browser_widget_codeEditorWidget_js__WEBPACK_IMPORTED_MODULE_3__.CodeEditorWidget {\n constructor(domElement, _options, instantiationService, codeEditorService, commandService, contextKeyService, keybindingService, themeService, notificationService, accessibilityService, languageConfigurationService, languageFeaturesService) {\n const options = { ..._options };\n options.ariaLabel = options.ariaLabel || _common_standaloneStrings_js__WEBPACK_IMPORTED_MODULE_17__.StandaloneCodeEditorNLS.editorViewAccessibleLabel;\n options.ariaLabel = options.ariaLabel + ';' + (_common_standaloneStrings_js__WEBPACK_IMPORTED_MODULE_17__.StandaloneCodeEditorNLS.accessibilityHelpMessage);\n super(domElement, options, {}, instantiationService, codeEditorService, commandService, contextKeyService, themeService, notificationService, accessibilityService, languageConfigurationService, languageFeaturesService);\n if (keybindingService instanceof _standaloneServices_js__WEBPACK_IMPORTED_MODULE_5__.StandaloneKeybindingService) {\n this._standaloneKeybindingService = keybindingService;\n }\n else {\n this._standaloneKeybindingService = null;\n }\n createAriaDomNode(options.ariaContainerElement);\n (0,_base_browser_ui_hover_hoverDelegate_js__WEBPACK_IMPORTED_MODULE_29__.setHoverDelegateFactory)((placement, enableInstantHover) => instantiationService.createInstance(_platform_hover_browser_hover_js__WEBPACK_IMPORTED_MODULE_30__.WorkbenchHoverDelegate, placement, enableInstantHover, {}));\n }\n addCommand(keybinding, handler, context) {\n if (!this._standaloneKeybindingService) {\n console.warn('Cannot add command because the editor is configured with an unrecognized KeybindingService');\n return null;\n }\n const commandId = 'DYNAMIC_' + (++LAST_GENERATED_COMMAND_ID);\n const whenExpression = _platform_contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_10__.ContextKeyExpr.deserialize(context);\n this._standaloneKeybindingService.addDynamicKeybinding(commandId, keybinding, handler, whenExpression);\n return commandId;\n }\n createContextKey(key, defaultValue) {\n return this._contextKeyService.createKey(key, defaultValue);\n }\n addAction(_descriptor) {\n if ((typeof _descriptor.id !== 'string') || (typeof _descriptor.label !== 'string') || (typeof _descriptor.run !== 'function')) {\n throw new Error('Invalid action descriptor, `id`, `label` and `run` are required properties!');\n }\n if (!this._standaloneKeybindingService) {\n console.warn('Cannot add keybinding because the editor is configured with an unrecognized KeybindingService');\n return _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_1__.Disposable.None;\n }\n // Read descriptor options\n const id = _descriptor.id;\n const label = _descriptor.label;\n const precondition = _platform_contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_10__.ContextKeyExpr.and(_platform_contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_10__.ContextKeyExpr.equals('editorId', this.getId()), _platform_contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_10__.ContextKeyExpr.deserialize(_descriptor.precondition));\n const keybindings = _descriptor.keybindings;\n const keybindingsWhen = _platform_contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_10__.ContextKeyExpr.and(precondition, _platform_contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_10__.ContextKeyExpr.deserialize(_descriptor.keybindingContext));\n const contextMenuGroupId = _descriptor.contextMenuGroupId || null;\n const contextMenuOrder = _descriptor.contextMenuOrder || 0;\n const run = (_accessor, ...args) => {\n return Promise.resolve(_descriptor.run(this, ...args));\n };\n const toDispose = new _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_1__.DisposableStore();\n // Generate a unique id to allow the same descriptor.id across multiple editor instances\n const uniqueId = this.getId() + ':' + id;\n // Register the command\n toDispose.add(_platform_commands_common_commands_js__WEBPACK_IMPORTED_MODULE_8__.CommandsRegistry.registerCommand(uniqueId, run));\n // Register the context menu item\n if (contextMenuGroupId) {\n const menuItem = {\n command: {\n id: uniqueId,\n title: label\n },\n when: precondition,\n group: contextMenuGroupId,\n order: contextMenuOrder\n };\n toDispose.add(_platform_actions_common_actions_js__WEBPACK_IMPORTED_MODULE_7__.MenuRegistry.appendMenuItem(_platform_actions_common_actions_js__WEBPACK_IMPORTED_MODULE_7__.MenuId.EditorContext, menuItem));\n }\n // Register the keybindings\n if (Array.isArray(keybindings)) {\n for (const kb of keybindings) {\n toDispose.add(this._standaloneKeybindingService.addDynamicKeybinding(uniqueId, kb, run, keybindingsWhen));\n }\n }\n // Finally, register an internal editor action\n const internalAction = new _common_editorAction_js__WEBPACK_IMPORTED_MODULE_4__.InternalEditorAction(uniqueId, label, label, undefined, precondition, (...args) => Promise.resolve(_descriptor.run(this, ...args)), this._contextKeyService);\n // Store it under the original id, such that trigger with the original id will work\n this._actions.set(id, internalAction);\n toDispose.add((0,_base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_1__.toDisposable)(() => {\n this._actions.delete(id);\n }));\n return toDispose;\n }\n _triggerCommand(handlerId, payload) {\n if (this._codeEditorService instanceof _standaloneCodeEditorService_js__WEBPACK_IMPORTED_MODULE_22__.StandaloneCodeEditorService) {\n // Help commands find this editor as the active editor\n try {\n this._codeEditorService.setActiveCodeEditor(this);\n super._triggerCommand(handlerId, payload);\n }\n finally {\n this._codeEditorService.setActiveCodeEditor(null);\n }\n }\n else {\n super._triggerCommand(handlerId, payload);\n }\n }\n};\nStandaloneCodeEditor = __decorate([\n __param(2, _platform_instantiation_common_instantiation_js__WEBPACK_IMPORTED_MODULE_12__.IInstantiationService),\n __param(3, _browser_services_codeEditorService_js__WEBPACK_IMPORTED_MODULE_2__.ICodeEditorService),\n __param(4, _platform_commands_common_commands_js__WEBPACK_IMPORTED_MODULE_8__.ICommandService),\n __param(5, _platform_contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_10__.IContextKeyService),\n __param(6, _platform_keybinding_common_keybinding_js__WEBPACK_IMPORTED_MODULE_13__.IKeybindingService),\n __param(7, _platform_theme_common_themeService_js__WEBPACK_IMPORTED_MODULE_15__.IThemeService),\n __param(8, _platform_notification_common_notification_js__WEBPACK_IMPORTED_MODULE_14__.INotificationService),\n __param(9, _platform_accessibility_common_accessibility_js__WEBPACK_IMPORTED_MODULE_16__.IAccessibilityService),\n __param(10, _common_languages_languageConfigurationRegistry_js__WEBPACK_IMPORTED_MODULE_24__.ILanguageConfigurationService),\n __param(11, _common_services_languageFeatures_js__WEBPACK_IMPORTED_MODULE_25__.ILanguageFeaturesService)\n], StandaloneCodeEditor);\n\nlet StandaloneEditor = class StandaloneEditor extends StandaloneCodeEditor {\n constructor(domElement, _options, instantiationService, codeEditorService, commandService, contextKeyService, keybindingService, themeService, notificationService, configurationService, accessibilityService, modelService, languageService, languageConfigurationService, languageFeaturesService) {\n const options = { ..._options };\n (0,_standaloneServices_js__WEBPACK_IMPORTED_MODULE_5__.updateConfigurationService)(configurationService, options, false);\n const themeDomRegistration = themeService.registerEditorContainer(domElement);\n if (typeof options.theme === 'string') {\n themeService.setTheme(options.theme);\n }\n if (typeof options.autoDetectHighContrast !== 'undefined') {\n themeService.setAutoDetectHighContrast(Boolean(options.autoDetectHighContrast));\n }\n const _model = options.model;\n delete options.model;\n super(domElement, options, instantiationService, codeEditorService, commandService, contextKeyService, keybindingService, themeService, notificationService, accessibilityService, languageConfigurationService, languageFeaturesService);\n this._configurationService = configurationService;\n this._standaloneThemeService = themeService;\n this._register(themeDomRegistration);\n let model;\n if (typeof _model === 'undefined') {\n const languageId = languageService.getLanguageIdByMimeType(options.language) || options.language || _common_languages_modesRegistry_js__WEBPACK_IMPORTED_MODULE_23__.PLAINTEXT_LANGUAGE_ID;\n model = createTextModel(modelService, languageService, options.value || '', languageId, undefined);\n this._ownsModel = true;\n }\n else {\n model = _model;\n this._ownsModel = false;\n }\n this._attachModel(model);\n if (model) {\n const e = {\n oldModelUrl: null,\n newModelUrl: model.uri\n };\n this._onDidChangeModel.fire(e);\n }\n }\n dispose() {\n super.dispose();\n }\n updateOptions(newOptions) {\n (0,_standaloneServices_js__WEBPACK_IMPORTED_MODULE_5__.updateConfigurationService)(this._configurationService, newOptions, false);\n if (typeof newOptions.theme === 'string') {\n this._standaloneThemeService.setTheme(newOptions.theme);\n }\n if (typeof newOptions.autoDetectHighContrast !== 'undefined') {\n this._standaloneThemeService.setAutoDetectHighContrast(Boolean(newOptions.autoDetectHighContrast));\n }\n super.updateOptions(newOptions);\n }\n _postDetachModelCleanup(detachedModel) {\n super._postDetachModelCleanup(detachedModel);\n if (detachedModel && this._ownsModel) {\n detachedModel.dispose();\n this._ownsModel = false;\n }\n }\n};\nStandaloneEditor = __decorate([\n __param(2, _platform_instantiation_common_instantiation_js__WEBPACK_IMPORTED_MODULE_12__.IInstantiationService),\n __param(3, _browser_services_codeEditorService_js__WEBPACK_IMPORTED_MODULE_2__.ICodeEditorService),\n __param(4, _platform_commands_common_commands_js__WEBPACK_IMPORTED_MODULE_8__.ICommandService),\n __param(5, _platform_contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_10__.IContextKeyService),\n __param(6, _platform_keybinding_common_keybinding_js__WEBPACK_IMPORTED_MODULE_13__.IKeybindingService),\n __param(7, _common_standaloneTheme_js__WEBPACK_IMPORTED_MODULE_6__.IStandaloneThemeService),\n __param(8, _platform_notification_common_notification_js__WEBPACK_IMPORTED_MODULE_14__.INotificationService),\n __param(9, _platform_configuration_common_configuration_js__WEBPACK_IMPORTED_MODULE_9__.IConfigurationService),\n __param(10, _platform_accessibility_common_accessibility_js__WEBPACK_IMPORTED_MODULE_16__.IAccessibilityService),\n __param(11, _common_services_model_js__WEBPACK_IMPORTED_MODULE_20__.IModelService),\n __param(12, _common_languages_language_js__WEBPACK_IMPORTED_MODULE_21__.ILanguageService),\n __param(13, _common_languages_languageConfigurationRegistry_js__WEBPACK_IMPORTED_MODULE_24__.ILanguageConfigurationService),\n __param(14, _common_services_languageFeatures_js__WEBPACK_IMPORTED_MODULE_25__.ILanguageFeaturesService)\n], StandaloneEditor);\n\nlet StandaloneDiffEditor2 = class StandaloneDiffEditor2 extends _browser_widget_diffEditor_diffEditorWidget_js__WEBPACK_IMPORTED_MODULE_26__.DiffEditorWidget {\n constructor(domElement, _options, instantiationService, contextKeyService, codeEditorService, themeService, notificationService, configurationService, contextMenuService, editorProgressService, clipboardService, accessibilitySignalService) {\n const options = { ..._options };\n (0,_standaloneServices_js__WEBPACK_IMPORTED_MODULE_5__.updateConfigurationService)(configurationService, options, true);\n const themeDomRegistration = themeService.registerEditorContainer(domElement);\n if (typeof options.theme === 'string') {\n themeService.setTheme(options.theme);\n }\n if (typeof options.autoDetectHighContrast !== 'undefined') {\n themeService.setAutoDetectHighContrast(Boolean(options.autoDetectHighContrast));\n }\n super(domElement, options, {}, contextKeyService, instantiationService, codeEditorService, accessibilitySignalService, editorProgressService);\n this._configurationService = configurationService;\n this._standaloneThemeService = themeService;\n this._register(themeDomRegistration);\n }\n dispose() {\n super.dispose();\n }\n updateOptions(newOptions) {\n (0,_standaloneServices_js__WEBPACK_IMPORTED_MODULE_5__.updateConfigurationService)(this._configurationService, newOptions, true);\n if (typeof newOptions.theme === 'string') {\n this._standaloneThemeService.setTheme(newOptions.theme);\n }\n if (typeof newOptions.autoDetectHighContrast !== 'undefined') {\n this._standaloneThemeService.setAutoDetectHighContrast(Boolean(newOptions.autoDetectHighContrast));\n }\n super.updateOptions(newOptions);\n }\n _createInnerEditor(instantiationService, container, options) {\n return instantiationService.createInstance(StandaloneCodeEditor, container, options);\n }\n getOriginalEditor() {\n return super.getOriginalEditor();\n }\n getModifiedEditor() {\n return super.getModifiedEditor();\n }\n addCommand(keybinding, handler, context) {\n return this.getModifiedEditor().addCommand(keybinding, handler, context);\n }\n createContextKey(key, defaultValue) {\n return this.getModifiedEditor().createContextKey(key, defaultValue);\n }\n addAction(descriptor) {\n return this.getModifiedEditor().addAction(descriptor);\n }\n};\nStandaloneDiffEditor2 = __decorate([\n __param(2, _platform_instantiation_common_instantiation_js__WEBPACK_IMPORTED_MODULE_12__.IInstantiationService),\n __param(3, _platform_contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_10__.IContextKeyService),\n __param(4, _browser_services_codeEditorService_js__WEBPACK_IMPORTED_MODULE_2__.ICodeEditorService),\n __param(5, _common_standaloneTheme_js__WEBPACK_IMPORTED_MODULE_6__.IStandaloneThemeService),\n __param(6, _platform_notification_common_notification_js__WEBPACK_IMPORTED_MODULE_14__.INotificationService),\n __param(7, _platform_configuration_common_configuration_js__WEBPACK_IMPORTED_MODULE_9__.IConfigurationService),\n __param(8, _platform_contextview_browser_contextView_js__WEBPACK_IMPORTED_MODULE_11__.IContextMenuService),\n __param(9, _platform_progress_common_progress_js__WEBPACK_IMPORTED_MODULE_19__.IEditorProgressService),\n __param(10, _platform_clipboard_common_clipboardService_js__WEBPACK_IMPORTED_MODULE_18__.IClipboardService),\n __param(11, _platform_accessibilitySignal_browser_accessibilitySignalService_js__WEBPACK_IMPORTED_MODULE_27__.IAccessibilitySignalService)\n], StandaloneDiffEditor2);\n\n/**\n * @internal\n */\nfunction createTextModel(modelService, languageService, value, languageId, uri) {\n value = value || '';\n if (!languageId) {\n const firstLF = value.indexOf('\\n');\n let firstLine = value;\n if (firstLF !== -1) {\n firstLine = value.substring(0, firstLF);\n }\n return doCreateModel(modelService, value, languageService.createByFilepathOrFirstLine(uri || null, firstLine), uri);\n }\n return doCreateModel(modelService, value, languageService.createById(languageId), uri);\n}\n/**\n * @internal\n */\nfunction doCreateModel(modelService, value, languageSelection, uri) {\n return modelService.createModel(value, languageSelection, uri);\n}\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/standalone/browser/standaloneCodeEditor.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/standalone/browser/standaloneCodeEditorService.js":
/*!****************************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/standalone/browser/standaloneCodeEditorService.js ***!
\****************************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ StandaloneCodeEditorService: () => (/* binding */ StandaloneCodeEditorService)\n/* harmony export */ });\n/* harmony import */ var _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../base/browser/dom.js */ \"./node_modules/monaco-editor/esm/vs/base/browser/dom.js\");\n/* harmony import */ var _base_common_network_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../base/common/network.js */ \"./node_modules/monaco-editor/esm/vs/base/common/network.js\");\n/* harmony import */ var _browser_services_abstractCodeEditorService_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../browser/services/abstractCodeEditorService.js */ \"./node_modules/monaco-editor/esm/vs/editor/browser/services/abstractCodeEditorService.js\");\n/* harmony import */ var _browser_services_codeEditorService_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../browser/services/codeEditorService.js */ \"./node_modules/monaco-editor/esm/vs/editor/browser/services/codeEditorService.js\");\n/* harmony import */ var _platform_contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../../platform/contextkey/common/contextkey.js */ \"./node_modules/monaco-editor/esm/vs/platform/contextkey/common/contextkey.js\");\n/* harmony import */ var _platform_instantiation_common_extensions_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../../../platform/instantiation/common/extensions.js */ \"./node_modules/monaco-editor/esm/vs/platform/instantiation/common/extensions.js\");\n/* harmony import */ var _platform_theme_common_themeService_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../../../platform/theme/common/themeService.js */ \"./node_modules/monaco-editor/esm/vs/platform/theme/common/themeService.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\nvar __decorate = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\n return c > 3 && r && Object.defineProperty(target, key, r), r;\n};\nvar __param = (undefined && undefined.__param) || function (paramIndex, decorator) {\n return function (target, key) { decorator(target, key, paramIndex); }\n};\n\n\n\n\n\n\n\nlet StandaloneCodeEditorService = class StandaloneCodeEditorService extends _browser_services_abstractCodeEditorService_js__WEBPACK_IMPORTED_MODULE_2__.AbstractCodeEditorService {\n constructor(contextKeyService, themeService) {\n super(themeService);\n this._register(this.onCodeEditorAdd(() => this._checkContextKey()));\n this._register(this.onCodeEditorRemove(() => this._checkContextKey()));\n this._editorIsOpen = contextKeyService.createKey('editorIsOpen', false);\n this._activeCodeEditor = null;\n this._register(this.registerCodeEditorOpenHandler(async (input, source, sideBySide) => {\n if (!source) {\n return null;\n }\n return this.doOpenEditor(source, input);\n }));\n }\n _checkContextKey() {\n let hasCodeEditor = false;\n for (const editor of this.listCodeEditors()) {\n if (!editor.isSimpleWidget) {\n hasCodeEditor = true;\n break;\n }\n }\n this._editorIsOpen.set(hasCodeEditor);\n }\n setActiveCodeEditor(activeCodeEditor) {\n this._activeCodeEditor = activeCodeEditor;\n }\n getActiveCodeEditor() {\n return this._activeCodeEditor;\n }\n doOpenEditor(editor, input) {\n const model = this.findModel(editor, input.resource);\n if (!model) {\n if (input.resource) {\n const schema = input.resource.scheme;\n if (schema === _base_common_network_js__WEBPACK_IMPORTED_MODULE_1__.Schemas.http || schema === _base_common_network_js__WEBPACK_IMPORTED_MODULE_1__.Schemas.https) {\n // This is a fully qualified http or https URL\n (0,_base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.windowOpenNoOpener)(input.resource.toString());\n return editor;\n }\n }\n return null;\n }\n const selection = (input.options ? input.options.selection : null);\n if (selection) {\n if (typeof selection.endLineNumber === 'number' && typeof selection.endColumn === 'number') {\n editor.setSelection(selection);\n editor.revealRangeInCenter(selection, 1 /* ScrollType.Immediate */);\n }\n else {\n const pos = {\n lineNumber: selection.startLineNumber,\n column: selection.startColumn\n };\n editor.setPosition(pos);\n editor.revealPositionInCenter(pos, 1 /* ScrollType.Immediate */);\n }\n }\n return editor;\n }\n findModel(editor, resource) {\n const model = editor.getModel();\n if (model && model.uri.toString() !== resource.toString()) {\n return null;\n }\n return model;\n }\n};\nStandaloneCodeEditorService = __decorate([\n __param(0, _platform_contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_4__.IContextKeyService),\n __param(1, _platform_theme_common_themeService_js__WEBPACK_IMPORTED_MODULE_6__.IThemeService)\n], StandaloneCodeEditorService);\n\n(0,_platform_instantiation_common_extensions_js__WEBPACK_IMPORTED_MODULE_5__.registerSingleton)(_browser_services_codeEditorService_js__WEBPACK_IMPORTED_MODULE_3__.ICodeEditorService, StandaloneCodeEditorService, 0 /* InstantiationType.Eager */);\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/standalone/browser/standaloneCodeEditorService.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/standalone/browser/standaloneEditor.js":
/*!*****************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/standalone/browser/standaloneEditor.js ***!
\*****************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ addCommand: () => (/* binding */ addCommand),\n/* harmony export */ addEditorAction: () => (/* binding */ addEditorAction),\n/* harmony export */ addKeybindingRule: () => (/* binding */ addKeybindingRule),\n/* harmony export */ addKeybindingRules: () => (/* binding */ addKeybindingRules),\n/* harmony export */ colorize: () => (/* binding */ colorize),\n/* harmony export */ colorizeElement: () => (/* binding */ colorizeElement),\n/* harmony export */ colorizeModelLine: () => (/* binding */ colorizeModelLine),\n/* harmony export */ create: () => (/* binding */ create),\n/* harmony export */ createDiffEditor: () => (/* binding */ createDiffEditor),\n/* harmony export */ createModel: () => (/* binding */ createModel),\n/* harmony export */ createMonacoEditorAPI: () => (/* binding */ createMonacoEditorAPI),\n/* harmony export */ createMultiFileDiffEditor: () => (/* binding */ createMultiFileDiffEditor),\n/* harmony export */ createWebWorker: () => (/* binding */ createWebWorker),\n/* harmony export */ defineTheme: () => (/* binding */ defineTheme),\n/* harmony export */ getDiffEditors: () => (/* binding */ getDiffEditors),\n/* harmony export */ getEditors: () => (/* binding */ getEditors),\n/* harmony export */ getModel: () => (/* binding */ getModel),\n/* harmony export */ getModelMarkers: () => (/* binding */ getModelMarkers),\n/* harmony export */ getModels: () => (/* binding */ getModels),\n/* harmony export */ onDidChangeMarkers: () => (/* binding */ onDidChangeMarkers),\n/* harmony export */ onDidChangeModelLanguage: () => (/* binding */ onDidChangeModelLanguage),\n/* harmony export */ onDidCreateDiffEditor: () => (/* binding */ onDidCreateDiffEditor),\n/* harmony export */ onDidCreateEditor: () => (/* binding */ onDidCreateEditor),\n/* harmony export */ onDidCreateModel: () => (/* binding */ onDidCreateModel),\n/* harmony export */ onWillDisposeModel: () => (/* binding */ onWillDisposeModel),\n/* harmony export */ registerCommand: () => (/* binding */ registerCommand),\n/* harmony export */ registerEditorOpener: () => (/* binding */ registerEditorOpener),\n/* harmony export */ registerLinkOpener: () => (/* binding */ registerLinkOpener),\n/* harmony export */ remeasureFonts: () => (/* binding */ remeasureFonts),\n/* harmony export */ removeAllMarkers: () => (/* binding */ removeAllMarkers),\n/* harmony export */ setModelLanguage: () => (/* binding */ setModelLanguage),\n/* harmony export */ setModelMarkers: () => (/* binding */ setModelMarkers),\n/* harmony export */ setTheme: () => (/* binding */ setTheme),\n/* harmony export */ tokenize: () => (/* binding */ tokenize)\n/* harmony export */ });\n/* harmony import */ var _base_browser_window_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../base/browser/window.js */ \"./node_modules/monaco-editor/esm/vs/base/browser/window.js\");\n/* harmony import */ var _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../base/common/lifecycle.js */ \"./node_modules/monaco-editor/esm/vs/base/common/lifecycle.js\");\n/* harmony import */ var _base_common_strings_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../base/common/strings.js */ \"./node_modules/monaco-editor/esm/vs/base/common/strings.js\");\n/* harmony import */ var _base_common_uri_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../../base/common/uri.js */ \"./node_modules/monaco-editor/esm/vs/base/common/uri.js\");\n/* harmony import */ var _standalone_tokens_css__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./standalone-tokens.css */ \"./node_modules/monaco-editor/esm/vs/editor/standalone/browser/standalone-tokens.css\");\n/* harmony import */ var _browser_config_fontMeasurements_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../../browser/config/fontMeasurements.js */ \"./node_modules/monaco-editor/esm/vs/editor/browser/config/fontMeasurements.js\");\n/* harmony import */ var _browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../../browser/editorExtensions.js */ \"./node_modules/monaco-editor/esm/vs/editor/browser/editorExtensions.js\");\n/* harmony import */ var _browser_services_codeEditorService_js__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ../../browser/services/codeEditorService.js */ \"./node_modules/monaco-editor/esm/vs/editor/browser/services/codeEditorService.js\");\n/* harmony import */ var _browser_services_webWorker_js__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ../../browser/services/webWorker.js */ \"./node_modules/monaco-editor/esm/vs/editor/browser/services/webWorker.js\");\n/* harmony import */ var _common_config_editorOptions_js__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ../../common/config/editorOptions.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/config/editorOptions.js\");\n/* harmony import */ var _common_config_editorZoom_js__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! ../../common/config/editorZoom.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/config/editorZoom.js\");\n/* harmony import */ var _common_config_fontInfo_js__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(/*! ../../common/config/fontInfo.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/config/fontInfo.js\");\n/* harmony import */ var _common_editorCommon_js__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(/*! ../../common/editorCommon.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/editorCommon.js\");\n/* harmony import */ var _common_languages_js__WEBPACK_IMPORTED_MODULE_13__ = __webpack_require__(/*! ../../common/languages.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/languages.js\");\n/* harmony import */ var _common_languages_language_js__WEBPACK_IMPORTED_MODULE_14__ = __webpack_require__(/*! ../../common/languages/language.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/languages/language.js\");\n/* harmony import */ var _common_languages_languageConfigurationRegistry_js__WEBPACK_IMPORTED_MODULE_15__ = __webpack_require__(/*! ../../common/languages/languageConfigurationRegistry.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/languages/languageConfigurationRegistry.js\");\n/* harmony import */ var _common_languages_modesRegistry_js__WEBPACK_IMPORTED_MODULE_16__ = __webpack_require__(/*! ../../common/languages/modesRegistry.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/languages/modesRegistry.js\");\n/* harmony import */ var _common_languages_nullTokenize_js__WEBPACK_IMPORTED_MODULE_17__ = __webpack_require__(/*! ../../common/languages/nullTokenize.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/languages/nullTokenize.js\");\n/* harmony import */ var _common_model_js__WEBPACK_IMPORTED_MODULE_18__ = __webpack_require__(/*! ../../common/model.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/model.js\");\n/* harmony import */ var _common_services_model_js__WEBPACK_IMPORTED_MODULE_19__ = __webpack_require__(/*! ../../common/services/model.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/services/model.js\");\n/* harmony import */ var _common_standalone_standaloneEnums_js__WEBPACK_IMPORTED_MODULE_20__ = __webpack_require__(/*! ../../common/standalone/standaloneEnums.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/standalone/standaloneEnums.js\");\n/* harmony import */ var _colorizer_js__WEBPACK_IMPORTED_MODULE_21__ = __webpack_require__(/*! ./colorizer.js */ \"./node_modules/monaco-editor/esm/vs/editor/standalone/browser/colorizer.js\");\n/* harmony import */ var _standaloneCodeEditor_js__WEBPACK_IMPORTED_MODULE_22__ = __webpack_require__(/*! ./standaloneCodeEditor.js */ \"./node_modules/monaco-editor/esm/vs/editor/standalone/browser/standaloneCodeEditor.js\");\n/* harmony import */ var _standaloneServices_js__WEBPACK_IMPORTED_MODULE_23__ = __webpack_require__(/*! ./standaloneServices.js */ \"./node_modules/monaco-editor/esm/vs/editor/standalone/browser/standaloneServices.js\");\n/* harmony import */ var _common_standaloneTheme_js__WEBPACK_IMPORTED_MODULE_24__ = __webpack_require__(/*! ../common/standaloneTheme.js */ \"./node_modules/monaco-editor/esm/vs/editor/standalone/common/standaloneTheme.js\");\n/* harmony import */ var _platform_actions_common_actions_js__WEBPACK_IMPORTED_MODULE_25__ = __webpack_require__(/*! ../../../platform/actions/common/actions.js */ \"./node_modules/monaco-editor/esm/vs/platform/actions/common/actions.js\");\n/* harmony import */ var _platform_commands_common_commands_js__WEBPACK_IMPORTED_MODULE_26__ = __webpack_require__(/*! ../../../platform/commands/common/commands.js */ \"./node_modules/monaco-editor/esm/vs/platform/commands/common/commands.js\");\n/* harmony import */ var _platform_contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_27__ = __webpack_require__(/*! ../../../platform/contextkey/common/contextkey.js */ \"./node_modules/monaco-editor/esm/vs/platform/contextkey/common/contextkey.js\");\n/* harmony import */ var _platform_keybinding_common_keybinding_js__WEBPACK_IMPORTED_MODULE_28__ = __webpack_require__(/*! ../../../platform/keybinding/common/keybinding.js */ \"./node_modules/monaco-editor/esm/vs/platform/keybinding/common/keybinding.js\");\n/* harmony import */ var _platform_markers_common_markers_js__WEBPACK_IMPORTED_MODULE_29__ = __webpack_require__(/*! ../../../platform/markers/common/markers.js */ \"./node_modules/monaco-editor/esm/vs/platform/markers/common/markers.js\");\n/* harmony import */ var _platform_opener_common_opener_js__WEBPACK_IMPORTED_MODULE_30__ = __webpack_require__(/*! ../../../platform/opener/common/opener.js */ \"./node_modules/monaco-editor/esm/vs/platform/opener/common/opener.js\");\n/* harmony import */ var _browser_widget_multiDiffEditorWidget_multiDiffEditorWidget_js__WEBPACK_IMPORTED_MODULE_31__ = __webpack_require__(/*! ../../browser/widget/multiDiffEditorWidget/multiDiffEditorWidget.js */ \"./node_modules/monaco-editor/esm/vs/editor/browser/widget/multiDiffEditorWidget/multiDiffEditorWidget.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n/**\n * Create a new editor under `domElement`.\n * `domElement` should be empty (not contain other dom nodes).\n * The editor will read the size of `domElement`.\n */\nfunction create(domElement, options, override) {\n const instantiationService = _standaloneServices_js__WEBPACK_IMPORTED_MODULE_23__.StandaloneServices.initialize(override || {});\n return instantiationService.createInstance(_standaloneCodeEditor_js__WEBPACK_IMPORTED_MODULE_22__.StandaloneEditor, domElement, options);\n}\n/**\n * Emitted when an editor is created.\n * Creating a diff editor might cause this listener to be invoked with the two editors.\n * @event\n */\nfunction onDidCreateEditor(listener) {\n const codeEditorService = _standaloneServices_js__WEBPACK_IMPORTED_MODULE_23__.StandaloneServices.get(_browser_services_codeEditorService_js__WEBPACK_IMPORTED_MODULE_7__.ICodeEditorService);\n return codeEditorService.onCodeEditorAdd((editor) => {\n listener(editor);\n });\n}\n/**\n * Emitted when an diff editor is created.\n * @event\n */\nfunction onDidCreateDiffEditor(listener) {\n const codeEditorService = _standaloneServices_js__WEBPACK_IMPORTED_MODULE_23__.StandaloneServices.get(_browser_services_codeEditorService_js__WEBPACK_IMPORTED_MODULE_7__.ICodeEditorService);\n return codeEditorService.onDiffEditorAdd((editor) => {\n listener(editor);\n });\n}\n/**\n * Get all the created editors.\n */\nfunction getEditors() {\n const codeEditorService = _standaloneServices_js__WEBPACK_IMPORTED_MODULE_23__.StandaloneServices.get(_browser_services_codeEditorService_js__WEBPACK_IMPORTED_MODULE_7__.ICodeEditorService);\n return codeEditorService.listCodeEditors();\n}\n/**\n * Get all the created diff editors.\n */\nfunction getDiffEditors() {\n const codeEditorService = _standaloneServices_js__WEBPACK_IMPORTED_MODULE_23__.StandaloneServices.get(_browser_services_codeEditorService_js__WEBPACK_IMPORTED_MODULE_7__.ICodeEditorService);\n return codeEditorService.listDiffEditors();\n}\n/**\n * Create a new diff editor under `domElement`.\n * `domElement` should be empty (not contain other dom nodes).\n * The editor will read the size of `domElement`.\n */\nfunction createDiffEditor(domElement, options, override) {\n const instantiationService = _standaloneServices_js__WEBPACK_IMPORTED_MODULE_23__.StandaloneServices.initialize(override || {});\n return instantiationService.createInstance(_standaloneCodeEditor_js__WEBPACK_IMPORTED_MODULE_22__.StandaloneDiffEditor2, domElement, options);\n}\nfunction createMultiFileDiffEditor(domElement, override) {\n const instantiationService = _standaloneServices_js__WEBPACK_IMPORTED_MODULE_23__.StandaloneServices.initialize(override || {});\n return new _browser_widget_multiDiffEditorWidget_multiDiffEditorWidget_js__WEBPACK_IMPORTED_MODULE_31__.MultiDiffEditorWidget(domElement, {}, instantiationService);\n}\n/**\n * Add a command.\n */\nfunction addCommand(descriptor) {\n if ((typeof descriptor.id !== 'string') || (typeof descriptor.run !== 'function')) {\n throw new Error('Invalid command descriptor, `id` and `run` are required properties!');\n }\n return _platform_commands_common_commands_js__WEBPACK_IMPORTED_MODULE_26__.CommandsRegistry.registerCommand(descriptor.id, descriptor.run);\n}\n/**\n * Add an action to all editors.\n */\nfunction addEditorAction(descriptor) {\n if ((typeof descriptor.id !== 'string') || (typeof descriptor.label !== 'string') || (typeof descriptor.run !== 'function')) {\n throw new Error('Invalid action descriptor, `id`, `label` and `run` are required properties!');\n }\n const precondition = _platform_contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_27__.ContextKeyExpr.deserialize(descriptor.precondition);\n const run = (accessor, ...args) => {\n return _browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_6__.EditorCommand.runEditorCommand(accessor, args, precondition, (accessor, editor, args) => Promise.resolve(descriptor.run(editor, ...args)));\n };\n const toDispose = new _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_1__.DisposableStore();\n // Register the command\n toDispose.add(_platform_commands_common_commands_js__WEBPACK_IMPORTED_MODULE_26__.CommandsRegistry.registerCommand(descriptor.id, run));\n // Register the context menu item\n if (descriptor.contextMenuGroupId) {\n const menuItem = {\n command: {\n id: descriptor.id,\n title: descriptor.label\n },\n when: precondition,\n group: descriptor.contextMenuGroupId,\n order: descriptor.contextMenuOrder || 0\n };\n toDispose.add(_platform_actions_common_actions_js__WEBPACK_IMPORTED_MODULE_25__.MenuRegistry.appendMenuItem(_platform_actions_common_actions_js__WEBPACK_IMPORTED_MODULE_25__.MenuId.EditorContext, menuItem));\n }\n // Register the keybindings\n if (Array.isArray(descriptor.keybindings)) {\n const keybindingService = _standaloneServices_js__WEBPACK_IMPORTED_MODULE_23__.StandaloneServices.get(_platform_keybinding_common_keybinding_js__WEBPACK_IMPORTED_MODULE_28__.IKeybindingService);\n if (!(keybindingService instanceof _standaloneServices_js__WEBPACK_IMPORTED_MODULE_23__.StandaloneKeybindingService)) {\n console.warn('Cannot add keybinding because the editor is configured with an unrecognized KeybindingService');\n }\n else {\n const keybindingsWhen = _platform_contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_27__.ContextKeyExpr.and(precondition, _platform_contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_27__.ContextKeyExpr.deserialize(descriptor.keybindingContext));\n toDispose.add(keybindingService.addDynamicKeybindings(descriptor.keybindings.map((keybinding) => {\n return {\n keybinding,\n command: descriptor.id,\n when: keybindingsWhen\n };\n })));\n }\n }\n return toDispose;\n}\n/**\n * Add a keybinding rule.\n */\nfunction addKeybindingRule(rule) {\n return addKeybindingRules([rule]);\n}\n/**\n * Add keybinding rules.\n */\nfunction addKeybindingRules(rules) {\n const keybindingService = _standaloneServices_js__WEBPACK_IMPORTED_MODULE_23__.StandaloneServices.get(_platform_keybinding_common_keybinding_js__WEBPACK_IMPORTED_MODULE_28__.IKeybindingService);\n if (!(keybindingService instanceof _standaloneServices_js__WEBPACK_IMPORTED_MODULE_23__.StandaloneKeybindingService)) {\n console.warn('Cannot add keybinding because the editor is configured with an unrecognized KeybindingService');\n return _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_1__.Disposable.None;\n }\n return keybindingService.addDynamicKeybindings(rules.map((rule) => {\n return {\n keybinding: rule.keybinding,\n command: rule.command,\n commandArgs: rule.commandArgs,\n when: _platform_contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_27__.ContextKeyExpr.deserialize(rule.when),\n };\n }));\n}\n/**\n * Create a new editor model.\n * You can specify the language that should be set for this model or let the language be inferred from the `uri`.\n */\nfunction createModel(value, language, uri) {\n const languageService = _standaloneServices_js__WEBPACK_IMPORTED_MODULE_23__.StandaloneServices.get(_common_languages_language_js__WEBPACK_IMPORTED_MODULE_14__.ILanguageService);\n const languageId = languageService.getLanguageIdByMimeType(language) || language;\n return (0,_standaloneCodeEditor_js__WEBPACK_IMPORTED_MODULE_22__.createTextModel)(_standaloneServices_js__WEBPACK_IMPORTED_MODULE_23__.StandaloneServices.get(_common_services_model_js__WEBPACK_IMPORTED_MODULE_19__.IModelService), languageService, value, languageId, uri);\n}\n/**\n * Change the language for a model.\n */\nfunction setModelLanguage(model, mimeTypeOrLanguageId) {\n const languageService = _standaloneServices_js__WEBPACK_IMPORTED_MODULE_23__.StandaloneServices.get(_common_languages_language_js__WEBPACK_IMPORTED_MODULE_14__.ILanguageService);\n const languageId = languageService.getLanguageIdByMimeType(mimeTypeOrLanguageId) || mimeTypeOrLanguageId || _common_languages_modesRegistry_js__WEBPACK_IMPORTED_MODULE_16__.PLAINTEXT_LANGUAGE_ID;\n model.setLanguage(languageService.createById(languageId));\n}\n/**\n * Set the markers for a model.\n */\nfunction setModelMarkers(model, owner, markers) {\n if (model) {\n const markerService = _standaloneServices_js__WEBPACK_IMPORTED_MODULE_23__.StandaloneServices.get(_platform_markers_common_markers_js__WEBPACK_IMPORTED_MODULE_29__.IMarkerService);\n markerService.changeOne(owner, model.uri, markers);\n }\n}\n/**\n * Remove all markers of an owner.\n */\nfunction removeAllMarkers(owner) {\n const markerService = _standaloneServices_js__WEBPACK_IMPORTED_MODULE_23__.StandaloneServices.get(_platform_markers_common_markers_js__WEBPACK_IMPORTED_MODULE_29__.IMarkerService);\n markerService.changeAll(owner, []);\n}\n/**\n * Get markers for owner and/or resource\n *\n * @returns list of markers\n */\nfunction getModelMarkers(filter) {\n const markerService = _standaloneServices_js__WEBPACK_IMPORTED_MODULE_23__.StandaloneServices.get(_platform_markers_common_markers_js__WEBPACK_IMPORTED_MODULE_29__.IMarkerService);\n return markerService.read(filter);\n}\n/**\n * Emitted when markers change for a model.\n * @event\n */\nfunction onDidChangeMarkers(listener) {\n const markerService = _standaloneServices_js__WEBPACK_IMPORTED_MODULE_23__.StandaloneServices.get(_platform_markers_common_markers_js__WEBPACK_IMPORTED_MODULE_29__.IMarkerService);\n return markerService.onMarkerChanged(listener);\n}\n/**\n * Get the model that has `uri` if it exists.\n */\nfunction getModel(uri) {\n const modelService = _standaloneServices_js__WEBPACK_IMPORTED_MODULE_23__.StandaloneServices.get(_common_services_model_js__WEBPACK_IMPORTED_MODULE_19__.IModelService);\n return modelService.getModel(uri);\n}\n/**\n * Get all the created models.\n */\nfunction getModels() {\n const modelService = _standaloneServices_js__WEBPACK_IMPORTED_MODULE_23__.StandaloneServices.get(_common_services_model_js__WEBPACK_IMPORTED_MODULE_19__.IModelService);\n return modelService.getModels();\n}\n/**\n * Emitted when a model is created.\n * @event\n */\nfunction onDidCreateModel(listener) {\n const modelService = _standaloneServices_js__WEBPACK_IMPORTED_MODULE_23__.StandaloneServices.get(_common_services_model_js__WEBPACK_IMPORTED_MODULE_19__.IModelService);\n return modelService.onModelAdded(listener);\n}\n/**\n * Emitted right before a model is disposed.\n * @event\n */\nfunction onWillDisposeModel(listener) {\n const modelService = _standaloneServices_js__WEBPACK_IMPORTED_MODULE_23__.StandaloneServices.get(_common_services_model_js__WEBPACK_IMPORTED_MODULE_19__.IModelService);\n return modelService.onModelRemoved(listener);\n}\n/**\n * Emitted when a different language is set to a model.\n * @event\n */\nfunction onDidChangeModelLanguage(listener) {\n const modelService = _standaloneServices_js__WEBPACK_IMPORTED_MODULE_23__.StandaloneServices.get(_common_services_model_js__WEBPACK_IMPORTED_MODULE_19__.IModelService);\n return modelService.onModelLanguageChanged((e) => {\n listener({\n model: e.model,\n oldLanguage: e.oldLanguageId\n });\n });\n}\n/**\n * Create a new web worker that has model syncing capabilities built in.\n * Specify an AMD module to load that will `create` an object that will be proxied.\n */\nfunction createWebWorker(opts) {\n return (0,_browser_services_webWorker_js__WEBPACK_IMPORTED_MODULE_8__.createWebWorker)(_standaloneServices_js__WEBPACK_IMPORTED_MODULE_23__.StandaloneServices.get(_common_services_model_js__WEBPACK_IMPORTED_MODULE_19__.IModelService), _standaloneServices_js__WEBPACK_IMPORTED_MODULE_23__.StandaloneServices.get(_common_languages_languageConfigurationRegistry_js__WEBPACK_IMPORTED_MODULE_15__.ILanguageConfigurationService), opts);\n}\n/**\n * Colorize the contents of `domNode` using attribute `data-lang`.\n */\nfunction colorizeElement(domNode, options) {\n const languageService = _standaloneServices_js__WEBPACK_IMPORTED_MODULE_23__.StandaloneServices.get(_common_languages_language_js__WEBPACK_IMPORTED_MODULE_14__.ILanguageService);\n const themeService = _standaloneServices_js__WEBPACK_IMPORTED_MODULE_23__.StandaloneServices.get(_common_standaloneTheme_js__WEBPACK_IMPORTED_MODULE_24__.IStandaloneThemeService);\n return _colorizer_js__WEBPACK_IMPORTED_MODULE_21__.Colorizer.colorizeElement(themeService, languageService, domNode, options).then(() => {\n themeService.registerEditorContainer(domNode);\n });\n}\n/**\n * Colorize `text` using language `languageId`.\n */\nfunction colorize(text, languageId, options) {\n const languageService = _standaloneServices_js__WEBPACK_IMPORTED_MODULE_23__.StandaloneServices.get(_common_languages_language_js__WEBPACK_IMPORTED_MODULE_14__.ILanguageService);\n const themeService = _standaloneServices_js__WEBPACK_IMPORTED_MODULE_23__.StandaloneServices.get(_common_standaloneTheme_js__WEBPACK_IMPORTED_MODULE_24__.IStandaloneThemeService);\n themeService.registerEditorContainer(_base_browser_window_js__WEBPACK_IMPORTED_MODULE_0__.mainWindow.document.body);\n return _colorizer_js__WEBPACK_IMPORTED_MODULE_21__.Colorizer.colorize(languageService, text, languageId, options);\n}\n/**\n * Colorize a line in a model.\n */\nfunction colorizeModelLine(model, lineNumber, tabSize = 4) {\n const themeService = _standaloneServices_js__WEBPACK_IMPORTED_MODULE_23__.StandaloneServices.get(_common_standaloneTheme_js__WEBPACK_IMPORTED_MODULE_24__.IStandaloneThemeService);\n themeService.registerEditorContainer(_base_browser_window_js__WEBPACK_IMPORTED_MODULE_0__.mainWindow.document.body);\n return _colorizer_js__WEBPACK_IMPORTED_MODULE_21__.Colorizer.colorizeModelLine(model, lineNumber, tabSize);\n}\n/**\n * @internal\n */\nfunction getSafeTokenizationSupport(language) {\n const tokenizationSupport = _common_languages_js__WEBPACK_IMPORTED_MODULE_13__.TokenizationRegistry.get(language);\n if (tokenizationSupport) {\n return tokenizationSupport;\n }\n return {\n getInitialState: () => _common_languages_nullTokenize_js__WEBPACK_IMPORTED_MODULE_17__.NullState,\n tokenize: (line, hasEOL, state) => (0,_common_languages_nullTokenize_js__WEBPACK_IMPORTED_MODULE_17__.nullTokenize)(language, state)\n };\n}\n/**\n * Tokenize `text` using language `languageId`\n */\nfunction tokenize(text, languageId) {\n // Needed in order to get the mode registered for subsequent look-ups\n _common_languages_js__WEBPACK_IMPORTED_MODULE_13__.TokenizationRegistry.getOrCreate(languageId);\n const tokenizationSupport = getSafeTokenizationSupport(languageId);\n const lines = (0,_base_common_strings_js__WEBPACK_IMPORTED_MODULE_2__.splitLines)(text);\n const result = [];\n let state = tokenizationSupport.getInitialState();\n for (let i = 0, len = lines.length; i < len; i++) {\n const line = lines[i];\n const tokenizationResult = tokenizationSupport.tokenize(line, true, state);\n result[i] = tokenizationResult.tokens;\n state = tokenizationResult.endState;\n }\n return result;\n}\n/**\n * Define a new theme or update an existing theme.\n */\nfunction defineTheme(themeName, themeData) {\n const standaloneThemeService = _standaloneServices_js__WEBPACK_IMPORTED_MODULE_23__.StandaloneServices.get(_common_standaloneTheme_js__WEBPACK_IMPORTED_MODULE_24__.IStandaloneThemeService);\n standaloneThemeService.defineTheme(themeName, themeData);\n}\n/**\n * Switches to a theme.\n */\nfunction setTheme(themeName) {\n const standaloneThemeService = _standaloneServices_js__WEBPACK_IMPORTED_MODULE_23__.StandaloneServices.get(_common_standaloneTheme_js__WEBPACK_IMPORTED_MODULE_24__.IStandaloneThemeService);\n standaloneThemeService.setTheme(themeName);\n}\n/**\n * Clears all cached font measurements and triggers re-measurement.\n */\nfunction remeasureFonts() {\n _browser_config_fontMeasurements_js__WEBPACK_IMPORTED_MODULE_5__.FontMeasurements.clearAllFontInfos();\n}\n/**\n * Register a command.\n */\nfunction registerCommand(id, handler) {\n return _platform_commands_common_commands_js__WEBPACK_IMPORTED_MODULE_26__.CommandsRegistry.registerCommand({ id, handler });\n}\n/**\n * Registers a handler that is called when a link is opened in any editor. The handler callback should return `true` if the link was handled and `false` otherwise.\n * The handler that was registered last will be called first when a link is opened.\n *\n * Returns a disposable that can unregister the opener again.\n */\nfunction registerLinkOpener(opener) {\n const openerService = _standaloneServices_js__WEBPACK_IMPORTED_MODULE_23__.StandaloneServices.get(_platform_opener_common_opener_js__WEBPACK_IMPORTED_MODULE_30__.IOpenerService);\n return openerService.registerOpener({\n async open(resource) {\n if (typeof resource === 'string') {\n resource = _base_common_uri_js__WEBPACK_IMPORTED_MODULE_3__.URI.parse(resource);\n }\n return opener.open(resource);\n }\n });\n}\n/**\n * Registers a handler that is called when a resource other than the current model should be opened in the editor (e.g. \"go to definition\").\n * The handler callback should return `true` if the request was handled and `false` otherwise.\n *\n * Returns a disposable that can unregister the opener again.\n *\n * If no handler is registered the default behavior is to do nothing for models other than the currently attached one.\n */\nfunction registerEditorOpener(opener) {\n const codeEditorService = _standaloneServices_js__WEBPACK_IMPORTED_MODULE_23__.StandaloneServices.get(_browser_services_codeEditorService_js__WEBPACK_IMPORTED_MODULE_7__.ICodeEditorService);\n return codeEditorService.registerCodeEditorOpenHandler(async (input, source, sideBySide) => {\n var _a;\n if (!source) {\n return null;\n }\n const selection = (_a = input.options) === null || _a === void 0 ? void 0 : _a.selection;\n let selectionOrPosition;\n if (selection && typeof selection.endLineNumber === 'number' && typeof selection.endColumn === 'number') {\n selectionOrPosition = selection;\n }\n else if (selection) {\n selectionOrPosition = { lineNumber: selection.startLineNumber, column: selection.startColumn };\n }\n if (await opener.openCodeEditor(source, input.resource, selectionOrPosition)) {\n return source; // return source editor to indicate that this handler has successfully handled the opening\n }\n return null; // fallback to other registered handlers\n });\n}\n/**\n * @internal\n */\nfunction createMonacoEditorAPI() {\n return {\n // methods\n create: create,\n getEditors: getEditors,\n getDiffEditors: getDiffEditors,\n onDidCreateEditor: onDidCreateEditor,\n onDidCreateDiffEditor: onDidCreateDiffEditor,\n createDiffEditor: createDiffEditor,\n addCommand: addCommand,\n addEditorAction: addEditorAction,\n addKeybindingRule: addKeybindingRule,\n addKeybindingRules: addKeybindingRules,\n createModel: createModel,\n setModelLanguage: setModelLanguage,\n setModelMarkers: setModelMarkers,\n getModelMarkers: getModelMarkers,\n removeAllMarkers: removeAllMarkers,\n onDidChangeMarkers: onDidChangeMarkers,\n getModels: getModels,\n getModel: getModel,\n onDidCreateModel: onDidCreateModel,\n onWillDisposeModel: onWillDisposeModel,\n onDidChangeModelLanguage: onDidChangeModelLanguage,\n createWebWorker: createWebWorker,\n colorizeElement: colorizeElement,\n colorize: colorize,\n colorizeModelLine: colorizeModelLine,\n tokenize: tokenize,\n defineTheme: defineTheme,\n setTheme: setTheme,\n remeasureFonts: remeasureFonts,\n registerCommand: registerCommand,\n registerLinkOpener: registerLinkOpener,\n registerEditorOpener: registerEditorOpener,\n // enums\n AccessibilitySupport: _common_standalone_standaloneEnums_js__WEBPACK_IMPORTED_MODULE_20__.AccessibilitySupport,\n ContentWidgetPositionPreference: _common_standalone_standaloneEnums_js__WEBPACK_IMPORTED_MODULE_20__.ContentWidgetPositionPreference,\n CursorChangeReason: _common_standalone_standaloneEnums_js__WEBPACK_IMPORTED_MODULE_20__.CursorChangeReason,\n DefaultEndOfLine: _common_standalone_standaloneEnums_js__WEBPACK_IMPORTED_MODULE_20__.DefaultEndOfLine,\n EditorAutoIndentStrategy: _common_standalone_standaloneEnums_js__WEBPACK_IMPORTED_MODULE_20__.EditorAutoIndentStrategy,\n EditorOption: _common_standalone_standaloneEnums_js__WEBPACK_IMPORTED_MODULE_20__.EditorOption,\n EndOfLinePreference: _common_standalone_standaloneEnums_js__WEBPACK_IMPORTED_MODULE_20__.EndOfLinePreference,\n EndOfLineSequence: _common_standalone_standaloneEnums_js__WEBPACK_IMPORTED_MODULE_20__.EndOfLineSequence,\n MinimapPosition: _common_standalone_standaloneEnums_js__WEBPACK_IMPORTED_MODULE_20__.MinimapPosition,\n MouseTargetType: _common_standalone_standaloneEnums_js__WEBPACK_IMPORTED_MODULE_20__.MouseTargetType,\n OverlayWidgetPositionPreference: _common_standalone_standaloneEnums_js__WEBPACK_IMPORTED_MODULE_20__.OverlayWidgetPositionPreference,\n OverviewRulerLane: _common_standalone_standaloneEnums_js__WEBPACK_IMPORTED_MODULE_20__.OverviewRulerLane,\n GlyphMarginLane: _common_standalone_standaloneEnums_js__WEBPACK_IMPORTED_MODULE_20__.GlyphMarginLane,\n RenderLineNumbersType: _common_standalone_standaloneEnums_js__WEBPACK_IMPORTED_MODULE_20__.RenderLineNumbersType,\n RenderMinimap: _common_standalone_standaloneEnums_js__WEBPACK_IMPORTED_MODULE_20__.RenderMinimap,\n ScrollbarVisibility: _common_standalone_standaloneEnums_js__WEBPACK_IMPORTED_MODULE_20__.ScrollbarVisibility,\n ScrollType: _common_standalone_standaloneEnums_js__WEBPACK_IMPORTED_MODULE_20__.ScrollType,\n TextEditorCursorBlinkingStyle: _common_standalone_standaloneEnums_js__WEBPACK_IMPORTED_MODULE_20__.TextEditorCursorBlinkingStyle,\n TextEditorCursorStyle: _common_standalone_standaloneEnums_js__WEBPACK_IMPORTED_MODULE_20__.TextEditorCursorStyle,\n TrackedRangeStickiness: _common_standalone_standaloneEnums_js__WEBPACK_IMPORTED_MODULE_20__.TrackedRangeStickiness,\n WrappingIndent: _common_standalone_standaloneEnums_js__WEBPACK_IMPORTED_MODULE_20__.WrappingIndent,\n InjectedTextCursorStops: _common_standalone_standaloneEnums_js__WEBPACK_IMPORTED_MODULE_20__.InjectedTextCursorStops,\n PositionAffinity: _common_standalone_standaloneEnums_js__WEBPACK_IMPORTED_MODULE_20__.PositionAffinity,\n ShowLightbulbIconMode: _common_standalone_standaloneEnums_js__WEBPACK_IMPORTED_MODULE_20__.ShowLightbulbIconMode,\n // classes\n ConfigurationChangedEvent: _common_config_editorOptions_js__WEBPACK_IMPORTED_MODULE_9__.ConfigurationChangedEvent,\n BareFontInfo: _common_config_fontInfo_js__WEBPACK_IMPORTED_MODULE_11__.BareFontInfo,\n FontInfo: _common_config_fontInfo_js__WEBPACK_IMPORTED_MODULE_11__.FontInfo,\n TextModelResolvedOptions: _common_model_js__WEBPACK_IMPORTED_MODULE_18__.TextModelResolvedOptions,\n FindMatch: _common_model_js__WEBPACK_IMPORTED_MODULE_18__.FindMatch,\n ApplyUpdateResult: _common_config_editorOptions_js__WEBPACK_IMPORTED_MODULE_9__.ApplyUpdateResult,\n EditorZoom: _common_config_editorZoom_js__WEBPACK_IMPORTED_MODULE_10__.EditorZoom,\n createMultiFileDiffEditor: createMultiFileDiffEditor,\n // vars\n EditorType: _common_editorCommon_js__WEBPACK_IMPORTED_MODULE_12__.EditorType,\n EditorOptions: _common_config_editorOptions_js__WEBPACK_IMPORTED_MODULE_9__.EditorOptions\n };\n}\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/standalone/browser/standaloneEditor.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/standalone/browser/standaloneLanguages.js":
/*!********************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/standalone/browser/standaloneLanguages.js ***!
\********************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ EncodedTokenizationSupportAdapter: () => (/* binding */ EncodedTokenizationSupportAdapter),\n/* harmony export */ TokenizationSupportAdapter: () => (/* binding */ TokenizationSupportAdapter),\n/* harmony export */ createMonacoLanguagesAPI: () => (/* binding */ createMonacoLanguagesAPI),\n/* harmony export */ getEncodedLanguageId: () => (/* binding */ getEncodedLanguageId),\n/* harmony export */ getLanguages: () => (/* binding */ getLanguages),\n/* harmony export */ onLanguage: () => (/* binding */ onLanguage),\n/* harmony export */ onLanguageEncountered: () => (/* binding */ onLanguageEncountered),\n/* harmony export */ register: () => (/* binding */ register),\n/* harmony export */ registerCodeActionProvider: () => (/* binding */ registerCodeActionProvider),\n/* harmony export */ registerCodeLensProvider: () => (/* binding */ registerCodeLensProvider),\n/* harmony export */ registerColorProvider: () => (/* binding */ registerColorProvider),\n/* harmony export */ registerCompletionItemProvider: () => (/* binding */ registerCompletionItemProvider),\n/* harmony export */ registerDeclarationProvider: () => (/* binding */ registerDeclarationProvider),\n/* harmony export */ registerDefinitionProvider: () => (/* binding */ registerDefinitionProvider),\n/* harmony export */ registerDocumentFormattingEditProvider: () => (/* binding */ registerDocumentFormattingEditProvider),\n/* harmony export */ registerDocumentHighlightProvider: () => (/* binding */ registerDocumentHighlightProvider),\n/* harmony export */ registerDocumentRangeFormattingEditProvider: () => (/* binding */ registerDocumentRangeFormattingEditProvider),\n/* harmony export */ registerDocumentRangeSemanticTokensProvider: () => (/* binding */ registerDocumentRangeSemanticTokensProvider),\n/* harmony export */ registerDocumentSemanticTokensProvider: () => (/* binding */ registerDocumentSemanticTokensProvider),\n/* harmony export */ registerDocumentSymbolProvider: () => (/* binding */ registerDocumentSymbolProvider),\n/* harmony export */ registerFoldingRangeProvider: () => (/* binding */ registerFoldingRangeProvider),\n/* harmony export */ registerHoverProvider: () => (/* binding */ registerHoverProvider),\n/* harmony export */ registerImplementationProvider: () => (/* binding */ registerImplementationProvider),\n/* harmony export */ registerInlayHintsProvider: () => (/* binding */ registerInlayHintsProvider),\n/* harmony export */ registerInlineCompletionsProvider: () => (/* binding */ registerInlineCompletionsProvider),\n/* harmony export */ registerInlineEditProvider: () => (/* binding */ registerInlineEditProvider),\n/* harmony export */ registerLinkProvider: () => (/* binding */ registerLinkProvider),\n/* harmony export */ registerLinkedEditingRangeProvider: () => (/* binding */ registerLinkedEditingRangeProvider),\n/* harmony export */ registerNewSymbolNameProvider: () => (/* binding */ registerNewSymbolNameProvider),\n/* harmony export */ registerOnTypeFormattingEditProvider: () => (/* binding */ registerOnTypeFormattingEditProvider),\n/* harmony export */ registerReferenceProvider: () => (/* binding */ registerReferenceProvider),\n/* harmony export */ registerRenameProvider: () => (/* binding */ registerRenameProvider),\n/* harmony export */ registerSelectionRangeProvider: () => (/* binding */ registerSelectionRangeProvider),\n/* harmony export */ registerSignatureHelpProvider: () => (/* binding */ registerSignatureHelpProvider),\n/* harmony export */ registerTokensProviderFactory: () => (/* binding */ registerTokensProviderFactory),\n/* harmony export */ registerTypeDefinitionProvider: () => (/* binding */ registerTypeDefinitionProvider),\n/* harmony export */ setColorMap: () => (/* binding */ setColorMap),\n/* harmony export */ setLanguageConfiguration: () => (/* binding */ setLanguageConfiguration),\n/* harmony export */ setMonarchTokensProvider: () => (/* binding */ setMonarchTokensProvider),\n/* harmony export */ setTokensProvider: () => (/* binding */ setTokensProvider)\n/* harmony export */ });\n/* harmony import */ var _base_common_color_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../base/common/color.js */ \"./node_modules/monaco-editor/esm/vs/base/common/color.js\");\n/* harmony import */ var _common_core_range_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../common/core/range.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/core/range.js\");\n/* harmony import */ var _common_languages_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../common/languages.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/languages.js\");\n/* harmony import */ var _common_languages_languageConfigurationRegistry_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../common/languages/languageConfigurationRegistry.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/languages/languageConfigurationRegistry.js\");\n/* harmony import */ var _common_languages_modesRegistry_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../common/languages/modesRegistry.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/languages/modesRegistry.js\");\n/* harmony import */ var _common_languages_language_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../../common/languages/language.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/languages/language.js\");\n/* harmony import */ var _common_standalone_standaloneEnums_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../../common/standalone/standaloneEnums.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/standalone/standaloneEnums.js\");\n/* harmony import */ var _standaloneServices_js__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ./standaloneServices.js */ \"./node_modules/monaco-editor/esm/vs/editor/standalone/browser/standaloneServices.js\");\n/* harmony import */ var _common_monarch_monarchCompile_js__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ../common/monarch/monarchCompile.js */ \"./node_modules/monaco-editor/esm/vs/editor/standalone/common/monarch/monarchCompile.js\");\n/* harmony import */ var _common_monarch_monarchLexer_js__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ../common/monarch/monarchLexer.js */ \"./node_modules/monaco-editor/esm/vs/editor/standalone/common/monarch/monarchLexer.js\");\n/* harmony import */ var _common_standaloneTheme_js__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! ../common/standaloneTheme.js */ \"./node_modules/monaco-editor/esm/vs/editor/standalone/common/standaloneTheme.js\");\n/* harmony import */ var _platform_markers_common_markers_js__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(/*! ../../../platform/markers/common/markers.js */ \"./node_modules/monaco-editor/esm/vs/platform/markers/common/markers.js\");\n/* harmony import */ var _common_services_languageFeatures_js__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(/*! ../../common/services/languageFeatures.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/services/languageFeatures.js\");\n/* harmony import */ var _platform_configuration_common_configuration_js__WEBPACK_IMPORTED_MODULE_13__ = __webpack_require__(/*! ../../../platform/configuration/common/configuration.js */ \"./node_modules/monaco-editor/esm/vs/platform/configuration/common/configuration.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n/**\n * Register information about a new language.\n */\nfunction register(language) {\n // Intentionally using the `ModesRegistry` here to avoid\n // instantiating services too quickly in the standalone editor.\n _common_languages_modesRegistry_js__WEBPACK_IMPORTED_MODULE_4__.ModesRegistry.registerLanguage(language);\n}\n/**\n * Get the information of all the registered languages.\n */\nfunction getLanguages() {\n let result = [];\n result = result.concat(_common_languages_modesRegistry_js__WEBPACK_IMPORTED_MODULE_4__.ModesRegistry.getLanguages());\n return result;\n}\nfunction getEncodedLanguageId(languageId) {\n const languageService = _standaloneServices_js__WEBPACK_IMPORTED_MODULE_7__.StandaloneServices.get(_common_languages_language_js__WEBPACK_IMPORTED_MODULE_5__.ILanguageService);\n return languageService.languageIdCodec.encodeLanguageId(languageId);\n}\n/**\n * An event emitted when a language is associated for the first time with a text model.\n * @event\n */\nfunction onLanguage(languageId, callback) {\n return _standaloneServices_js__WEBPACK_IMPORTED_MODULE_7__.StandaloneServices.withServices(() => {\n const languageService = _standaloneServices_js__WEBPACK_IMPORTED_MODULE_7__.StandaloneServices.get(_common_languages_language_js__WEBPACK_IMPORTED_MODULE_5__.ILanguageService);\n const disposable = languageService.onDidRequestRichLanguageFeatures((encounteredLanguageId) => {\n if (encounteredLanguageId === languageId) {\n // stop listening\n disposable.dispose();\n // invoke actual listener\n callback();\n }\n });\n return disposable;\n });\n}\n/**\n * An event emitted when a language is associated for the first time with a text model or\n * when a language is encountered during the tokenization of another language.\n * @event\n */\nfunction onLanguageEncountered(languageId, callback) {\n return _standaloneServices_js__WEBPACK_IMPORTED_MODULE_7__.StandaloneServices.withServices(() => {\n const languageService = _standaloneServices_js__WEBPACK_IMPORTED_MODULE_7__.StandaloneServices.get(_common_languages_language_js__WEBPACK_IMPORTED_MODULE_5__.ILanguageService);\n const disposable = languageService.onDidRequestBasicLanguageFeatures((encounteredLanguageId) => {\n if (encounteredLanguageId === languageId) {\n // stop listening\n disposable.dispose();\n // invoke actual listener\n callback();\n }\n });\n return disposable;\n });\n}\n/**\n * Set the editing configuration for a language.\n */\nfunction setLanguageConfiguration(languageId, configuration) {\n const languageService = _standaloneServices_js__WEBPACK_IMPORTED_MODULE_7__.StandaloneServices.get(_common_languages_language_js__WEBPACK_IMPORTED_MODULE_5__.ILanguageService);\n if (!languageService.isRegisteredLanguageId(languageId)) {\n throw new Error(`Cannot set configuration for unknown language ${languageId}`);\n }\n const languageConfigurationService = _standaloneServices_js__WEBPACK_IMPORTED_MODULE_7__.StandaloneServices.get(_common_languages_languageConfigurationRegistry_js__WEBPACK_IMPORTED_MODULE_3__.ILanguageConfigurationService);\n return languageConfigurationService.register(languageId, configuration, 100);\n}\n/**\n * @internal\n */\nclass EncodedTokenizationSupportAdapter {\n constructor(languageId, actual) {\n this._languageId = languageId;\n this._actual = actual;\n }\n dispose() {\n // NOOP\n }\n getInitialState() {\n return this._actual.getInitialState();\n }\n tokenize(line, hasEOL, state) {\n if (typeof this._actual.tokenize === 'function') {\n return TokenizationSupportAdapter.adaptTokenize(this._languageId, this._actual, line, state);\n }\n throw new Error('Not supported!');\n }\n tokenizeEncoded(line, hasEOL, state) {\n const result = this._actual.tokenizeEncoded(line, state);\n return new _common_languages_js__WEBPACK_IMPORTED_MODULE_2__.EncodedTokenizationResult(result.tokens, result.endState);\n }\n}\n/**\n * @internal\n */\nclass TokenizationSupportAdapter {\n constructor(_languageId, _actual, _languageService, _standaloneThemeService) {\n this._languageId = _languageId;\n this._actual = _actual;\n this._languageService = _languageService;\n this._standaloneThemeService = _standaloneThemeService;\n }\n dispose() {\n // NOOP\n }\n getInitialState() {\n return this._actual.getInitialState();\n }\n static _toClassicTokens(tokens, language) {\n const result = [];\n let previousStartIndex = 0;\n for (let i = 0, len = tokens.length; i < len; i++) {\n const t = tokens[i];\n let startIndex = t.startIndex;\n // Prevent issues stemming from a buggy external tokenizer.\n if (i === 0) {\n // Force first token to start at first index!\n startIndex = 0;\n }\n else if (startIndex < previousStartIndex) {\n // Force tokens to be after one another!\n startIndex = previousStartIndex;\n }\n result[i] = new _common_languages_js__WEBPACK_IMPORTED_MODULE_2__.Token(startIndex, t.scopes, language);\n previousStartIndex = startIndex;\n }\n return result;\n }\n static adaptTokenize(language, actual, line, state) {\n const actualResult = actual.tokenize(line, state);\n const tokens = TokenizationSupportAdapter._toClassicTokens(actualResult.tokens, language);\n let endState;\n // try to save an object if possible\n if (actualResult.endState.equals(state)) {\n endState = state;\n }\n else {\n endState = actualResult.endState;\n }\n return new _common_languages_js__WEBPACK_IMPORTED_MODULE_2__.TokenizationResult(tokens, endState);\n }\n tokenize(line, hasEOL, state) {\n return TokenizationSupportAdapter.adaptTokenize(this._languageId, this._actual, line, state);\n }\n _toBinaryTokens(languageIdCodec, tokens) {\n const languageId = languageIdCodec.encodeLanguageId(this._languageId);\n const tokenTheme = this._standaloneThemeService.getColorTheme().tokenTheme;\n const result = [];\n let resultLen = 0;\n let previousStartIndex = 0;\n for (let i = 0, len = tokens.length; i < len; i++) {\n const t = tokens[i];\n const metadata = tokenTheme.match(languageId, t.scopes) | 1024 /* MetadataConsts.BALANCED_BRACKETS_MASK */;\n if (resultLen > 0 && result[resultLen - 1] === metadata) {\n // same metadata\n continue;\n }\n let startIndex = t.startIndex;\n // Prevent issues stemming from a buggy external tokenizer.\n if (i === 0) {\n // Force first token to start at first index!\n startIndex = 0;\n }\n else if (startIndex < previousStartIndex) {\n // Force tokens to be after one another!\n startIndex = previousStartIndex;\n }\n result[resultLen++] = startIndex;\n result[resultLen++] = metadata;\n previousStartIndex = startIndex;\n }\n const actualResult = new Uint32Array(resultLen);\n for (let i = 0; i < resultLen; i++) {\n actualResult[i] = result[i];\n }\n return actualResult;\n }\n tokenizeEncoded(line, hasEOL, state) {\n const actualResult = this._actual.tokenize(line, state);\n const tokens = this._toBinaryTokens(this._languageService.languageIdCodec, actualResult.tokens);\n let endState;\n // try to save an object if possible\n if (actualResult.endState.equals(state)) {\n endState = state;\n }\n else {\n endState = actualResult.endState;\n }\n return new _common_languages_js__WEBPACK_IMPORTED_MODULE_2__.EncodedTokenizationResult(tokens, endState);\n }\n}\nfunction isATokensProvider(provider) {\n return (typeof provider.getInitialState === 'function');\n}\nfunction isEncodedTokensProvider(provider) {\n return 'tokenizeEncoded' in provider;\n}\nfunction isThenable(obj) {\n return obj && typeof obj.then === 'function';\n}\n/**\n * Change the color map that is used for token colors.\n * Supported formats (hex): #RRGGBB, $RRGGBBAA, #RGB, #RGBA\n */\nfunction setColorMap(colorMap) {\n const standaloneThemeService = _standaloneServices_js__WEBPACK_IMPORTED_MODULE_7__.StandaloneServices.get(_common_standaloneTheme_js__WEBPACK_IMPORTED_MODULE_10__.IStandaloneThemeService);\n if (colorMap) {\n const result = [null];\n for (let i = 1, len = colorMap.length; i < len; i++) {\n result[i] = _base_common_color_js__WEBPACK_IMPORTED_MODULE_0__.Color.fromHex(colorMap[i]);\n }\n standaloneThemeService.setColorMapOverride(result);\n }\n else {\n standaloneThemeService.setColorMapOverride(null);\n }\n}\n/**\n * @internal\n */\nfunction createTokenizationSupportAdapter(languageId, provider) {\n if (isEncodedTokensProvider(provider)) {\n return new EncodedTokenizationSupportAdapter(languageId, provider);\n }\n else {\n return new TokenizationSupportAdapter(languageId, provider, _standaloneServices_js__WEBPACK_IMPORTED_MODULE_7__.StandaloneServices.get(_common_languages_language_js__WEBPACK_IMPORTED_MODULE_5__.ILanguageService), _standaloneServices_js__WEBPACK_IMPORTED_MODULE_7__.StandaloneServices.get(_common_standaloneTheme_js__WEBPACK_IMPORTED_MODULE_10__.IStandaloneThemeService));\n }\n}\n/**\n * Register a tokens provider factory for a language. This tokenizer will be exclusive with a tokenizer\n * set using `setTokensProvider` or one created using `setMonarchTokensProvider`, but will work together\n * with a tokens provider set using `registerDocumentSemanticTokensProvider` or `registerDocumentRangeSemanticTokensProvider`.\n */\nfunction registerTokensProviderFactory(languageId, factory) {\n const adaptedFactory = new _common_languages_js__WEBPACK_IMPORTED_MODULE_2__.LazyTokenizationSupport(async () => {\n const result = await Promise.resolve(factory.create());\n if (!result) {\n return null;\n }\n if (isATokensProvider(result)) {\n return createTokenizationSupportAdapter(languageId, result);\n }\n return new _common_monarch_monarchLexer_js__WEBPACK_IMPORTED_MODULE_9__.MonarchTokenizer(_standaloneServices_js__WEBPACK_IMPORTED_MODULE_7__.StandaloneServices.get(_common_languages_language_js__WEBPACK_IMPORTED_MODULE_5__.ILanguageService), _standaloneServices_js__WEBPACK_IMPORTED_MODULE_7__.StandaloneServices.get(_common_standaloneTheme_js__WEBPACK_IMPORTED_MODULE_10__.IStandaloneThemeService), languageId, (0,_common_monarch_monarchCompile_js__WEBPACK_IMPORTED_MODULE_8__.compile)(languageId, result), _standaloneServices_js__WEBPACK_IMPORTED_MODULE_7__.StandaloneServices.get(_platform_configuration_common_configuration_js__WEBPACK_IMPORTED_MODULE_13__.IConfigurationService));\n });\n return _common_languages_js__WEBPACK_IMPORTED_MODULE_2__.TokenizationRegistry.registerFactory(languageId, adaptedFactory);\n}\n/**\n * Set the tokens provider for a language (manual implementation). This tokenizer will be exclusive\n * with a tokenizer created using `setMonarchTokensProvider`, or with `registerTokensProviderFactory`,\n * but will work together with a tokens provider set using `registerDocumentSemanticTokensProvider`\n * or `registerDocumentRangeSemanticTokensProvider`.\n */\nfunction setTokensProvider(languageId, provider) {\n const languageService = _standaloneServices_js__WEBPACK_IMPORTED_MODULE_7__.StandaloneServices.get(_common_languages_language_js__WEBPACK_IMPORTED_MODULE_5__.ILanguageService);\n if (!languageService.isRegisteredLanguageId(languageId)) {\n throw new Error(`Cannot set tokens provider for unknown language ${languageId}`);\n }\n if (isThenable(provider)) {\n return registerTokensProviderFactory(languageId, { create: () => provider });\n }\n return _common_languages_js__WEBPACK_IMPORTED_MODULE_2__.TokenizationRegistry.register(languageId, createTokenizationSupportAdapter(languageId, provider));\n}\n/**\n * Set the tokens provider for a language (monarch implementation). This tokenizer will be exclusive\n * with a tokenizer set using `setTokensProvider`, or with `registerTokensProviderFactory`, but will\n * work together with a tokens provider set using `registerDocumentSemanticTokensProvider` or\n * `registerDocumentRangeSemanticTokensProvider`.\n */\nfunction setMonarchTokensProvider(languageId, languageDef) {\n const create = (languageDef) => {\n return new _common_monarch_monarchLexer_js__WEBPACK_IMPORTED_MODULE_9__.MonarchTokenizer(_standaloneServices_js__WEBPACK_IMPORTED_MODULE_7__.StandaloneServices.get(_common_languages_language_js__WEBPACK_IMPORTED_MODULE_5__.ILanguageService), _standaloneServices_js__WEBPACK_IMPORTED_MODULE_7__.StandaloneServices.get(_common_standaloneTheme_js__WEBPACK_IMPORTED_MODULE_10__.IStandaloneThemeService), languageId, (0,_common_monarch_monarchCompile_js__WEBPACK_IMPORTED_MODULE_8__.compile)(languageId, languageDef), _standaloneServices_js__WEBPACK_IMPORTED_MODULE_7__.StandaloneServices.get(_platform_configuration_common_configuration_js__WEBPACK_IMPORTED_MODULE_13__.IConfigurationService));\n };\n if (isThenable(languageDef)) {\n return registerTokensProviderFactory(languageId, { create: () => languageDef });\n }\n return _common_languages_js__WEBPACK_IMPORTED_MODULE_2__.TokenizationRegistry.register(languageId, create(languageDef));\n}\n/**\n * Register a reference provider (used by e.g. reference search).\n */\nfunction registerReferenceProvider(languageSelector, provider) {\n const languageFeaturesService = _standaloneServices_js__WEBPACK_IMPORTED_MODULE_7__.StandaloneServices.get(_common_services_languageFeatures_js__WEBPACK_IMPORTED_MODULE_12__.ILanguageFeaturesService);\n return languageFeaturesService.referenceProvider.register(languageSelector, provider);\n}\n/**\n * Register a rename provider (used by e.g. rename symbol).\n */\nfunction registerRenameProvider(languageSelector, provider) {\n const languageFeaturesService = _standaloneServices_js__WEBPACK_IMPORTED_MODULE_7__.StandaloneServices.get(_common_services_languageFeatures_js__WEBPACK_IMPORTED_MODULE_12__.ILanguageFeaturesService);\n return languageFeaturesService.renameProvider.register(languageSelector, provider);\n}\n/**\n * Register a new symbol-name provider (e.g., when a symbol is being renamed, show new possible symbol-names)\n */\nfunction registerNewSymbolNameProvider(languageSelector, provider) {\n const languageFeaturesService = _standaloneServices_js__WEBPACK_IMPORTED_MODULE_7__.StandaloneServices.get(_common_services_languageFeatures_js__WEBPACK_IMPORTED_MODULE_12__.ILanguageFeaturesService);\n return languageFeaturesService.newSymbolNamesProvider.register(languageSelector, provider);\n}\n/**\n * Register a signature help provider (used by e.g. parameter hints).\n */\nfunction registerSignatureHelpProvider(languageSelector, provider) {\n const languageFeaturesService = _standaloneServices_js__WEBPACK_IMPORTED_MODULE_7__.StandaloneServices.get(_common_services_languageFeatures_js__WEBPACK_IMPORTED_MODULE_12__.ILanguageFeaturesService);\n return languageFeaturesService.signatureHelpProvider.register(languageSelector, provider);\n}\n/**\n * Register a hover provider (used by e.g. editor hover).\n */\nfunction registerHoverProvider(languageSelector, provider) {\n const languageFeaturesService = _standaloneServices_js__WEBPACK_IMPORTED_MODULE_7__.StandaloneServices.get(_common_services_languageFeatures_js__WEBPACK_IMPORTED_MODULE_12__.ILanguageFeaturesService);\n return languageFeaturesService.hoverProvider.register(languageSelector, {\n provideHover: (model, position, token) => {\n const word = model.getWordAtPosition(position);\n return Promise.resolve(provider.provideHover(model, position, token)).then((value) => {\n if (!value) {\n return undefined;\n }\n if (!value.range && word) {\n value.range = new _common_core_range_js__WEBPACK_IMPORTED_MODULE_1__.Range(position.lineNumber, word.startColumn, position.lineNumber, word.endColumn);\n }\n if (!value.range) {\n value.range = new _common_core_range_js__WEBPACK_IMPORTED_MODULE_1__.Range(position.lineNumber, position.column, position.lineNumber, position.column);\n }\n return value;\n });\n }\n });\n}\n/**\n * Register a document symbol provider (used by e.g. outline).\n */\nfunction registerDocumentSymbolProvider(languageSelector, provider) {\n const languageFeaturesService = _standaloneServices_js__WEBPACK_IMPORTED_MODULE_7__.StandaloneServices.get(_common_services_languageFeatures_js__WEBPACK_IMPORTED_MODULE_12__.ILanguageFeaturesService);\n return languageFeaturesService.documentSymbolProvider.register(languageSelector, provider);\n}\n/**\n * Register a document highlight provider (used by e.g. highlight occurrences).\n */\nfunction registerDocumentHighlightProvider(languageSelector, provider) {\n const languageFeaturesService = _standaloneServices_js__WEBPACK_IMPORTED_MODULE_7__.StandaloneServices.get(_common_services_languageFeatures_js__WEBPACK_IMPORTED_MODULE_12__.ILanguageFeaturesService);\n return languageFeaturesService.documentHighlightProvider.register(languageSelector, provider);\n}\n/**\n * Register an linked editing range provider.\n */\nfunction registerLinkedEditingRangeProvider(languageSelector, provider) {\n const languageFeaturesService = _standaloneServices_js__WEBPACK_IMPORTED_MODULE_7__.StandaloneServices.get(_common_services_languageFeatures_js__WEBPACK_IMPORTED_MODULE_12__.ILanguageFeaturesService);\n return languageFeaturesService.linkedEditingRangeProvider.register(languageSelector, provider);\n}\n/**\n * Register a definition provider (used by e.g. go to definition).\n */\nfunction registerDefinitionProvider(languageSelector, provider) {\n const languageFeaturesService = _standaloneServices_js__WEBPACK_IMPORTED_MODULE_7__.StandaloneServices.get(_common_services_languageFeatures_js__WEBPACK_IMPORTED_MODULE_12__.ILanguageFeaturesService);\n return languageFeaturesService.definitionProvider.register(languageSelector, provider);\n}\n/**\n * Register a implementation provider (used by e.g. go to implementation).\n */\nfunction registerImplementationProvider(languageSelector, provider) {\n const languageFeaturesService = _standaloneServices_js__WEBPACK_IMPORTED_MODULE_7__.StandaloneServices.get(_common_services_languageFeatures_js__WEBPACK_IMPORTED_MODULE_12__.ILanguageFeaturesService);\n return languageFeaturesService.implementationProvider.register(languageSelector, provider);\n}\n/**\n * Register a type definition provider (used by e.g. go to type definition).\n */\nfunction registerTypeDefinitionProvider(languageSelector, provider) {\n const languageFeaturesService = _standaloneServices_js__WEBPACK_IMPORTED_MODULE_7__.StandaloneServices.get(_common_services_languageFeatures_js__WEBPACK_IMPORTED_MODULE_12__.ILanguageFeaturesService);\n return languageFeaturesService.typeDefinitionProvider.register(languageSelector, provider);\n}\n/**\n * Register a code lens provider (used by e.g. inline code lenses).\n */\nfunction registerCodeLensProvider(languageSelector, provider) {\n const languageFeaturesService = _standaloneServices_js__WEBPACK_IMPORTED_MODULE_7__.StandaloneServices.get(_common_services_languageFeatures_js__WEBPACK_IMPORTED_MODULE_12__.ILanguageFeaturesService);\n return languageFeaturesService.codeLensProvider.register(languageSelector, provider);\n}\n/**\n * Register a code action provider (used by e.g. quick fix).\n */\nfunction registerCodeActionProvider(languageSelector, provider, metadata) {\n const languageFeaturesService = _standaloneServices_js__WEBPACK_IMPORTED_MODULE_7__.StandaloneServices.get(_common_services_languageFeatures_js__WEBPACK_IMPORTED_MODULE_12__.ILanguageFeaturesService);\n return languageFeaturesService.codeActionProvider.register(languageSelector, {\n providedCodeActionKinds: metadata === null || metadata === void 0 ? void 0 : metadata.providedCodeActionKinds,\n documentation: metadata === null || metadata === void 0 ? void 0 : metadata.documentation,\n provideCodeActions: (model, range, context, token) => {\n const markerService = _standaloneServices_js__WEBPACK_IMPORTED_MODULE_7__.StandaloneServices.get(_platform_markers_common_markers_js__WEBPACK_IMPORTED_MODULE_11__.IMarkerService);\n const markers = markerService.read({ resource: model.uri }).filter(m => {\n return _common_core_range_js__WEBPACK_IMPORTED_MODULE_1__.Range.areIntersectingOrTouching(m, range);\n });\n return provider.provideCodeActions(model, range, { markers, only: context.only, trigger: context.trigger }, token);\n },\n resolveCodeAction: provider.resolveCodeAction\n });\n}\n/**\n * Register a formatter that can handle only entire models.\n */\nfunction registerDocumentFormattingEditProvider(languageSelector, provider) {\n const languageFeaturesService = _standaloneServices_js__WEBPACK_IMPORTED_MODULE_7__.StandaloneServices.get(_common_services_languageFeatures_js__WEBPACK_IMPORTED_MODULE_12__.ILanguageFeaturesService);\n return languageFeaturesService.documentFormattingEditProvider.register(languageSelector, provider);\n}\n/**\n * Register a formatter that can handle a range inside a model.\n */\nfunction registerDocumentRangeFormattingEditProvider(languageSelector, provider) {\n const languageFeaturesService = _standaloneServices_js__WEBPACK_IMPORTED_MODULE_7__.StandaloneServices.get(_common_services_languageFeatures_js__WEBPACK_IMPORTED_MODULE_12__.ILanguageFeaturesService);\n return languageFeaturesService.documentRangeFormattingEditProvider.register(languageSelector, provider);\n}\n/**\n * Register a formatter than can do formatting as the user types.\n */\nfunction registerOnTypeFormattingEditProvider(languageSelector, provider) {\n const languageFeaturesService = _standaloneServices_js__WEBPACK_IMPORTED_MODULE_7__.StandaloneServices.get(_common_services_languageFeatures_js__WEBPACK_IMPORTED_MODULE_12__.ILanguageFeaturesService);\n return languageFeaturesService.onTypeFormattingEditProvider.register(languageSelector, provider);\n}\n/**\n * Register a link provider that can find links in text.\n */\nfunction registerLinkProvider(languageSelector, provider) {\n const languageFeaturesService = _standaloneServices_js__WEBPACK_IMPORTED_MODULE_7__.StandaloneServices.get(_common_services_languageFeatures_js__WEBPACK_IMPORTED_MODULE_12__.ILanguageFeaturesService);\n return languageFeaturesService.linkProvider.register(languageSelector, provider);\n}\n/**\n * Register a completion item provider (use by e.g. suggestions).\n */\nfunction registerCompletionItemProvider(languageSelector, provider) {\n const languageFeaturesService = _standaloneServices_js__WEBPACK_IMPORTED_MODULE_7__.StandaloneServices.get(_common_services_languageFeatures_js__WEBPACK_IMPORTED_MODULE_12__.ILanguageFeaturesService);\n return languageFeaturesService.completionProvider.register(languageSelector, provider);\n}\n/**\n * Register a document color provider (used by Color Picker, Color Decorator).\n */\nfunction registerColorProvider(languageSelector, provider) {\n const languageFeaturesService = _standaloneServices_js__WEBPACK_IMPORTED_MODULE_7__.StandaloneServices.get(_common_services_languageFeatures_js__WEBPACK_IMPORTED_MODULE_12__.ILanguageFeaturesService);\n return languageFeaturesService.colorProvider.register(languageSelector, provider);\n}\n/**\n * Register a folding range provider\n */\nfunction registerFoldingRangeProvider(languageSelector, provider) {\n const languageFeaturesService = _standaloneServices_js__WEBPACK_IMPORTED_MODULE_7__.StandaloneServices.get(_common_services_languageFeatures_js__WEBPACK_IMPORTED_MODULE_12__.ILanguageFeaturesService);\n return languageFeaturesService.foldingRangeProvider.register(languageSelector, provider);\n}\n/**\n * Register a declaration provider\n */\nfunction registerDeclarationProvider(languageSelector, provider) {\n const languageFeaturesService = _standaloneServices_js__WEBPACK_IMPORTED_MODULE_7__.StandaloneServices.get(_common_services_languageFeatures_js__WEBPACK_IMPORTED_MODULE_12__.ILanguageFeaturesService);\n return languageFeaturesService.declarationProvider.register(languageSelector, provider);\n}\n/**\n * Register a selection range provider\n */\nfunction registerSelectionRangeProvider(languageSelector, provider) {\n const languageFeaturesService = _standaloneServices_js__WEBPACK_IMPORTED_MODULE_7__.StandaloneServices.get(_common_services_languageFeatures_js__WEBPACK_IMPORTED_MODULE_12__.ILanguageFeaturesService);\n return languageFeaturesService.selectionRangeProvider.register(languageSelector, provider);\n}\n/**\n * Register a document semantic tokens provider. A semantic tokens provider will complement and enhance a\n * simple top-down tokenizer. Simple top-down tokenizers can be set either via `setMonarchTokensProvider`\n * or `setTokensProvider`.\n *\n * For the best user experience, register both a semantic tokens provider and a top-down tokenizer.\n */\nfunction registerDocumentSemanticTokensProvider(languageSelector, provider) {\n const languageFeaturesService = _standaloneServices_js__WEBPACK_IMPORTED_MODULE_7__.StandaloneServices.get(_common_services_languageFeatures_js__WEBPACK_IMPORTED_MODULE_12__.ILanguageFeaturesService);\n return languageFeaturesService.documentSemanticTokensProvider.register(languageSelector, provider);\n}\n/**\n * Register a document range semantic tokens provider. A semantic tokens provider will complement and enhance a\n * simple top-down tokenizer. Simple top-down tokenizers can be set either via `setMonarchTokensProvider`\n * or `setTokensProvider`.\n *\n * For the best user experience, register both a semantic tokens provider and a top-down tokenizer.\n */\nfunction registerDocumentRangeSemanticTokensProvider(languageSelector, provider) {\n const languageFeaturesService = _standaloneServices_js__WEBPACK_IMPORTED_MODULE_7__.StandaloneServices.get(_common_services_languageFeatures_js__WEBPACK_IMPORTED_MODULE_12__.ILanguageFeaturesService);\n return languageFeaturesService.documentRangeSemanticTokensProvider.register(languageSelector, provider);\n}\n/**\n * Register an inline completions provider.\n */\nfunction registerInlineCompletionsProvider(languageSelector, provider) {\n const languageFeaturesService = _standaloneServices_js__WEBPACK_IMPORTED_MODULE_7__.StandaloneServices.get(_common_services_languageFeatures_js__WEBPACK_IMPORTED_MODULE_12__.ILanguageFeaturesService);\n return languageFeaturesService.inlineCompletionsProvider.register(languageSelector, provider);\n}\nfunction registerInlineEditProvider(languageSelector, provider) {\n const languageFeaturesService = _standaloneServices_js__WEBPACK_IMPORTED_MODULE_7__.StandaloneServices.get(_common_services_languageFeatures_js__WEBPACK_IMPORTED_MODULE_12__.ILanguageFeaturesService);\n return languageFeaturesService.inlineEditProvider.register(languageSelector, provider);\n}\n/**\n * Register an inlay hints provider.\n */\nfunction registerInlayHintsProvider(languageSelector, provider) {\n const languageFeaturesService = _standaloneServices_js__WEBPACK_IMPORTED_MODULE_7__.StandaloneServices.get(_common_services_languageFeatures_js__WEBPACK_IMPORTED_MODULE_12__.ILanguageFeaturesService);\n return languageFeaturesService.inlayHintsProvider.register(languageSelector, provider);\n}\n/**\n * @internal\n */\nfunction createMonacoLanguagesAPI() {\n return {\n register: register,\n getLanguages: getLanguages,\n onLanguage: onLanguage,\n onLanguageEncountered: onLanguageEncountered,\n getEncodedLanguageId: getEncodedLanguageId,\n // provider methods\n setLanguageConfiguration: setLanguageConfiguration,\n setColorMap: setColorMap,\n registerTokensProviderFactory: registerTokensProviderFactory,\n setTokensProvider: setTokensProvider,\n setMonarchTokensProvider: setMonarchTokensProvider,\n registerReferenceProvider: registerReferenceProvider,\n registerRenameProvider: registerRenameProvider,\n registerNewSymbolNameProvider: registerNewSymbolNameProvider,\n registerCompletionItemProvider: registerCompletionItemProvider,\n registerSignatureHelpProvider: registerSignatureHelpProvider,\n registerHoverProvider: registerHoverProvider,\n registerDocumentSymbolProvider: registerDocumentSymbolProvider,\n registerDocumentHighlightProvider: registerDocumentHighlightProvider,\n registerLinkedEditingRangeProvider: registerLinkedEditingRangeProvider,\n registerDefinitionProvider: registerDefinitionProvider,\n registerImplementationProvider: registerImplementationProvider,\n registerTypeDefinitionProvider: registerTypeDefinitionProvider,\n registerCodeLensProvider: registerCodeLensProvider,\n registerCodeActionProvider: registerCodeActionProvider,\n registerDocumentFormattingEditProvider: registerDocumentFormattingEditProvider,\n registerDocumentRangeFormattingEditProvider: registerDocumentRangeFormattingEditProvider,\n registerOnTypeFormattingEditProvider: registerOnTypeFormattingEditProvider,\n registerLinkProvider: registerLinkProvider,\n registerColorProvider: registerColorProvider,\n registerFoldingRangeProvider: registerFoldingRangeProvider,\n registerDeclarationProvider: registerDeclarationProvider,\n registerSelectionRangeProvider: registerSelectionRangeProvider,\n registerDocumentSemanticTokensProvider: registerDocumentSemanticTokensProvider,\n registerDocumentRangeSemanticTokensProvider: registerDocumentRangeSemanticTokensProvider,\n registerInlineCompletionsProvider: registerInlineCompletionsProvider,\n registerInlineEditProvider: registerInlineEditProvider,\n registerInlayHintsProvider: registerInlayHintsProvider,\n // enums\n DocumentHighlightKind: _common_standalone_standaloneEnums_js__WEBPACK_IMPORTED_MODULE_6__.DocumentHighlightKind,\n CompletionItemKind: _common_standalone_standaloneEnums_js__WEBPACK_IMPORTED_MODULE_6__.CompletionItemKind,\n CompletionItemTag: _common_standalone_standaloneEnums_js__WEBPACK_IMPORTED_MODULE_6__.CompletionItemTag,\n CompletionItemInsertTextRule: _common_standalone_standaloneEnums_js__WEBPACK_IMPORTED_MODULE_6__.CompletionItemInsertTextRule,\n SymbolKind: _common_standalone_standaloneEnums_js__WEBPACK_IMPORTED_MODULE_6__.SymbolKind,\n SymbolTag: _common_standalone_standaloneEnums_js__WEBPACK_IMPORTED_MODULE_6__.SymbolTag,\n IndentAction: _common_standalone_standaloneEnums_js__WEBPACK_IMPORTED_MODULE_6__.IndentAction,\n CompletionTriggerKind: _common_standalone_standaloneEnums_js__WEBPACK_IMPORTED_MODULE_6__.CompletionTriggerKind,\n SignatureHelpTriggerKind: _common_standalone_standaloneEnums_js__WEBPACK_IMPORTED_MODULE_6__.SignatureHelpTriggerKind,\n InlayHintKind: _common_standalone_standaloneEnums_js__WEBPACK_IMPORTED_MODULE_6__.InlayHintKind,\n InlineCompletionTriggerKind: _common_standalone_standaloneEnums_js__WEBPACK_IMPORTED_MODULE_6__.InlineCompletionTriggerKind,\n InlineEditTriggerKind: _common_standalone_standaloneEnums_js__WEBPACK_IMPORTED_MODULE_6__.InlineEditTriggerKind,\n CodeActionTriggerType: _common_standalone_standaloneEnums_js__WEBPACK_IMPORTED_MODULE_6__.CodeActionTriggerType,\n NewSymbolNameTag: _common_standalone_standaloneEnums_js__WEBPACK_IMPORTED_MODULE_6__.NewSymbolNameTag,\n // classes\n FoldingRangeKind: _common_languages_js__WEBPACK_IMPORTED_MODULE_2__.FoldingRangeKind,\n SelectedSuggestionInfo: _common_languages_js__WEBPACK_IMPORTED_MODULE_2__.SelectedSuggestionInfo,\n };\n}\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/standalone/browser/standaloneLanguages.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/standalone/browser/standaloneLayoutService.js":
/*!************************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/standalone/browser/standaloneLayoutService.js ***!
\************************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ EditorScopedLayoutService: () => (/* binding */ EditorScopedLayoutService)\n/* harmony export */ });\n/* harmony import */ var _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../base/browser/dom.js */ \"./node_modules/monaco-editor/esm/vs/base/browser/dom.js\");\n/* harmony import */ var _base_browser_window_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../base/browser/window.js */ \"./node_modules/monaco-editor/esm/vs/base/browser/window.js\");\n/* harmony import */ var _base_common_arrays_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../base/common/arrays.js */ \"./node_modules/monaco-editor/esm/vs/base/common/arrays.js\");\n/* harmony import */ var _base_common_event_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../../base/common/event.js */ \"./node_modules/monaco-editor/esm/vs/base/common/event.js\");\n/* harmony import */ var _browser_services_codeEditorService_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../browser/services/codeEditorService.js */ \"./node_modules/monaco-editor/esm/vs/editor/browser/services/codeEditorService.js\");\n/* harmony import */ var _platform_instantiation_common_extensions_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../../../platform/instantiation/common/extensions.js */ \"./node_modules/monaco-editor/esm/vs/platform/instantiation/common/extensions.js\");\n/* harmony import */ var _platform_layout_browser_layoutService_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../../../platform/layout/browser/layoutService.js */ \"./node_modules/monaco-editor/esm/vs/platform/layout/browser/layoutService.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\nvar __decorate = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\n return c > 3 && r && Object.defineProperty(target, key, r), r;\n};\nvar __param = (undefined && undefined.__param) || function (paramIndex, decorator) {\n return function (target, key) { decorator(target, key, paramIndex); }\n};\n\n\n\n\n\n\n\nlet StandaloneLayoutService = class StandaloneLayoutService {\n get mainContainer() {\n var _a, _b;\n return (_b = (_a = (0,_base_common_arrays_js__WEBPACK_IMPORTED_MODULE_2__.firstOrDefault)(this._codeEditorService.listCodeEditors())) === null || _a === void 0 ? void 0 : _a.getContainerDomNode()) !== null && _b !== void 0 ? _b : _base_browser_window_js__WEBPACK_IMPORTED_MODULE_1__.mainWindow.document.body;\n }\n get activeContainer() {\n var _a, _b;\n const activeCodeEditor = (_a = this._codeEditorService.getFocusedCodeEditor()) !== null && _a !== void 0 ? _a : this._codeEditorService.getActiveCodeEditor();\n return (_b = activeCodeEditor === null || activeCodeEditor === void 0 ? void 0 : activeCodeEditor.getContainerDomNode()) !== null && _b !== void 0 ? _b : this.mainContainer;\n }\n get mainContainerDimension() {\n return _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.getClientArea(this.mainContainer);\n }\n get activeContainerDimension() {\n return _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.getClientArea(this.activeContainer);\n }\n get containers() {\n return (0,_base_common_arrays_js__WEBPACK_IMPORTED_MODULE_2__.coalesce)(this._codeEditorService.listCodeEditors().map(codeEditor => codeEditor.getContainerDomNode()));\n }\n getContainer() {\n return this.activeContainer;\n }\n focus() {\n var _a;\n (_a = this._codeEditorService.getFocusedCodeEditor()) === null || _a === void 0 ? void 0 : _a.focus();\n }\n constructor(_codeEditorService) {\n this._codeEditorService = _codeEditorService;\n this.onDidLayoutMainContainer = _base_common_event_js__WEBPACK_IMPORTED_MODULE_3__.Event.None;\n this.onDidLayoutActiveContainer = _base_common_event_js__WEBPACK_IMPORTED_MODULE_3__.Event.None;\n this.onDidLayoutContainer = _base_common_event_js__WEBPACK_IMPORTED_MODULE_3__.Event.None;\n this.onDidChangeActiveContainer = _base_common_event_js__WEBPACK_IMPORTED_MODULE_3__.Event.None;\n this.onDidAddContainer = _base_common_event_js__WEBPACK_IMPORTED_MODULE_3__.Event.None;\n this.whenActiveContainerStylesLoaded = Promise.resolve();\n this.mainContainerOffset = { top: 0, quickPickTop: 0 };\n this.activeContainerOffset = { top: 0, quickPickTop: 0 };\n }\n};\nStandaloneLayoutService = __decorate([\n __param(0, _browser_services_codeEditorService_js__WEBPACK_IMPORTED_MODULE_4__.ICodeEditorService)\n], StandaloneLayoutService);\nlet EditorScopedLayoutService = class EditorScopedLayoutService extends StandaloneLayoutService {\n get mainContainer() {\n return this._container;\n }\n constructor(_container, codeEditorService) {\n super(codeEditorService);\n this._container = _container;\n }\n};\nEditorScopedLayoutService = __decorate([\n __param(1, _browser_services_codeEditorService_js__WEBPACK_IMPORTED_MODULE_4__.ICodeEditorService)\n], EditorScopedLayoutService);\n\n(0,_platform_instantiation_common_extensions_js__WEBPACK_IMPORTED_MODULE_5__.registerSingleton)(_platform_layout_browser_layoutService_js__WEBPACK_IMPORTED_MODULE_6__.ILayoutService, StandaloneLayoutService, 1 /* InstantiationType.Delayed */);\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/standalone/browser/standaloneLayoutService.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/standalone/browser/standaloneServices.js":
/*!*******************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/standalone/browser/standaloneServices.js ***!
\*******************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ StandaloneCommandService: () => (/* binding */ StandaloneCommandService),\n/* harmony export */ StandaloneConfigurationService: () => (/* binding */ StandaloneConfigurationService),\n/* harmony export */ StandaloneKeybindingService: () => (/* binding */ StandaloneKeybindingService),\n/* harmony export */ StandaloneNotificationService: () => (/* binding */ StandaloneNotificationService),\n/* harmony export */ StandaloneServices: () => (/* binding */ StandaloneServices),\n/* harmony export */ updateConfigurationService: () => (/* binding */ updateConfigurationService)\n/* harmony export */ });\n/* harmony import */ var _common_languages_languageConfigurationRegistry_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../common/languages/languageConfigurationRegistry.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/languages/languageConfigurationRegistry.js\");\n/* harmony import */ var _standaloneCodeEditorService_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./standaloneCodeEditorService.js */ \"./node_modules/monaco-editor/esm/vs/editor/standalone/browser/standaloneCodeEditorService.js\");\n/* harmony import */ var _standaloneLayoutService_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./standaloneLayoutService.js */ \"./node_modules/monaco-editor/esm/vs/editor/standalone/browser/standaloneLayoutService.js\");\n/* harmony import */ var _platform_undoRedo_common_undoRedoService_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../../platform/undoRedo/common/undoRedoService.js */ \"./node_modules/monaco-editor/esm/vs/platform/undoRedo/common/undoRedoService.js\");\n/* harmony import */ var _common_services_languageFeatureDebounce_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../common/services/languageFeatureDebounce.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/services/languageFeatureDebounce.js\");\n/* harmony import */ var _common_services_semanticTokensStylingService_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../../common/services/semanticTokensStylingService.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/services/semanticTokensStylingService.js\");\n/* harmony import */ var _common_services_languageFeaturesService_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../../common/services/languageFeaturesService.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/services/languageFeaturesService.js\");\n/* harmony import */ var _browser_services_hoverService_js__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ../../browser/services/hoverService.js */ \"./node_modules/monaco-editor/esm/vs/editor/browser/services/hoverService.js\");\n/* harmony import */ var _base_common_strings_js__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ../../../base/common/strings.js */ \"./node_modules/monaco-editor/esm/vs/base/common/strings.js\");\n/* harmony import */ var _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ../../../base/browser/dom.js */ \"./node_modules/monaco-editor/esm/vs/base/browser/dom.js\");\n/* harmony import */ var _base_browser_keyboardEvent_js__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! ../../../base/browser/keyboardEvent.js */ \"./node_modules/monaco-editor/esm/vs/base/browser/keyboardEvent.js\");\n/* harmony import */ var _base_common_event_js__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(/*! ../../../base/common/event.js */ \"./node_modules/monaco-editor/esm/vs/base/common/event.js\");\n/* harmony import */ var _base_common_keybindings_js__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(/*! ../../../base/common/keybindings.js */ \"./node_modules/monaco-editor/esm/vs/base/common/keybindings.js\");\n/* harmony import */ var _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_13__ = __webpack_require__(/*! ../../../base/common/lifecycle.js */ \"./node_modules/monaco-editor/esm/vs/base/common/lifecycle.js\");\n/* harmony import */ var _base_common_platform_js__WEBPACK_IMPORTED_MODULE_14__ = __webpack_require__(/*! ../../../base/common/platform.js */ \"./node_modules/monaco-editor/esm/vs/base/common/platform.js\");\n/* harmony import */ var _base_common_severity_js__WEBPACK_IMPORTED_MODULE_15__ = __webpack_require__(/*! ../../../base/common/severity.js */ \"./node_modules/monaco-editor/esm/vs/base/common/severity.js\");\n/* harmony import */ var _base_common_uri_js__WEBPACK_IMPORTED_MODULE_16__ = __webpack_require__(/*! ../../../base/common/uri.js */ \"./node_modules/monaco-editor/esm/vs/base/common/uri.js\");\n/* harmony import */ var _browser_services_bulkEditService_js__WEBPACK_IMPORTED_MODULE_17__ = __webpack_require__(/*! ../../browser/services/bulkEditService.js */ \"./node_modules/monaco-editor/esm/vs/editor/browser/services/bulkEditService.js\");\n/* harmony import */ var _common_config_editorConfigurationSchema_js__WEBPACK_IMPORTED_MODULE_18__ = __webpack_require__(/*! ../../common/config/editorConfigurationSchema.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/config/editorConfigurationSchema.js\");\n/* harmony import */ var _common_core_editOperation_js__WEBPACK_IMPORTED_MODULE_19__ = __webpack_require__(/*! ../../common/core/editOperation.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/core/editOperation.js\");\n/* harmony import */ var _common_core_position_js__WEBPACK_IMPORTED_MODULE_20__ = __webpack_require__(/*! ../../common/core/position.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/core/position.js\");\n/* harmony import */ var _common_core_range_js__WEBPACK_IMPORTED_MODULE_21__ = __webpack_require__(/*! ../../common/core/range.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/core/range.js\");\n/* harmony import */ var _common_services_model_js__WEBPACK_IMPORTED_MODULE_22__ = __webpack_require__(/*! ../../common/services/model.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/services/model.js\");\n/* harmony import */ var _common_services_resolverService_js__WEBPACK_IMPORTED_MODULE_23__ = __webpack_require__(/*! ../../common/services/resolverService.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/services/resolverService.js\");\n/* harmony import */ var _common_services_textResourceConfiguration_js__WEBPACK_IMPORTED_MODULE_24__ = __webpack_require__(/*! ../../common/services/textResourceConfiguration.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/services/textResourceConfiguration.js\");\n/* harmony import */ var _platform_commands_common_commands_js__WEBPACK_IMPORTED_MODULE_25__ = __webpack_require__(/*! ../../../platform/commands/common/commands.js */ \"./node_modules/monaco-editor/esm/vs/platform/commands/common/commands.js\");\n/* harmony import */ var _platform_configuration_common_configuration_js__WEBPACK_IMPORTED_MODULE_26__ = __webpack_require__(/*! ../../../platform/configuration/common/configuration.js */ \"./node_modules/monaco-editor/esm/vs/platform/configuration/common/configuration.js\");\n/* harmony import */ var _platform_configuration_common_configurationModels_js__WEBPACK_IMPORTED_MODULE_27__ = __webpack_require__(/*! ../../../platform/configuration/common/configurationModels.js */ \"./node_modules/monaco-editor/esm/vs/platform/configuration/common/configurationModels.js\");\n/* harmony import */ var _platform_contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_28__ = __webpack_require__(/*! ../../../platform/contextkey/common/contextkey.js */ \"./node_modules/monaco-editor/esm/vs/platform/contextkey/common/contextkey.js\");\n/* harmony import */ var _platform_dialogs_common_dialogs_js__WEBPACK_IMPORTED_MODULE_29__ = __webpack_require__(/*! ../../../platform/dialogs/common/dialogs.js */ \"./node_modules/monaco-editor/esm/vs/platform/dialogs/common/dialogs.js\");\n/* harmony import */ var _platform_instantiation_common_instantiation_js__WEBPACK_IMPORTED_MODULE_30__ = __webpack_require__(/*! ../../../platform/instantiation/common/instantiation.js */ \"./node_modules/monaco-editor/esm/vs/platform/instantiation/common/instantiation.js\");\n/* harmony import */ var _platform_keybinding_common_abstractKeybindingService_js__WEBPACK_IMPORTED_MODULE_31__ = __webpack_require__(/*! ../../../platform/keybinding/common/abstractKeybindingService.js */ \"./node_modules/monaco-editor/esm/vs/platform/keybinding/common/abstractKeybindingService.js\");\n/* harmony import */ var _platform_keybinding_common_keybinding_js__WEBPACK_IMPORTED_MODULE_32__ = __webpack_require__(/*! ../../../platform/keybinding/common/keybinding.js */ \"./node_modules/monaco-editor/esm/vs/platform/keybinding/common/keybinding.js\");\n/* harmony import */ var _platform_keybinding_common_keybindingResolver_js__WEBPACK_IMPORTED_MODULE_33__ = __webpack_require__(/*! ../../../platform/keybinding/common/keybindingResolver.js */ \"./node_modules/monaco-editor/esm/vs/platform/keybinding/common/keybindingResolver.js\");\n/* harmony import */ var _platform_keybinding_common_keybindingsRegistry_js__WEBPACK_IMPORTED_MODULE_34__ = __webpack_require__(/*! ../../../platform/keybinding/common/keybindingsRegistry.js */ \"./node_modules/monaco-editor/esm/vs/platform/keybinding/common/keybindingsRegistry.js\");\n/* harmony import */ var _platform_keybinding_common_resolvedKeybindingItem_js__WEBPACK_IMPORTED_MODULE_35__ = __webpack_require__(/*! ../../../platform/keybinding/common/resolvedKeybindingItem.js */ \"./node_modules/monaco-editor/esm/vs/platform/keybinding/common/resolvedKeybindingItem.js\");\n/* harmony import */ var _platform_keybinding_common_usLayoutResolvedKeybinding_js__WEBPACK_IMPORTED_MODULE_36__ = __webpack_require__(/*! ../../../platform/keybinding/common/usLayoutResolvedKeybinding.js */ \"./node_modules/monaco-editor/esm/vs/platform/keybinding/common/usLayoutResolvedKeybinding.js\");\n/* harmony import */ var _platform_label_common_label_js__WEBPACK_IMPORTED_MODULE_37__ = __webpack_require__(/*! ../../../platform/label/common/label.js */ \"./node_modules/monaco-editor/esm/vs/platform/label/common/label.js\");\n/* harmony import */ var _platform_notification_common_notification_js__WEBPACK_IMPORTED_MODULE_38__ = __webpack_require__(/*! ../../../platform/notification/common/notification.js */ \"./node_modules/monaco-editor/esm/vs/platform/notification/common/notification.js\");\n/* harmony import */ var _platform_progress_common_progress_js__WEBPACK_IMPORTED_MODULE_39__ = __webpack_require__(/*! ../../../platform/progress/common/progress.js */ \"./node_modules/monaco-editor/esm/vs/platform/progress/common/progress.js\");\n/* harmony import */ var _platform_telemetry_common_telemetry_js__WEBPACK_IMPORTED_MODULE_40__ = __webpack_require__(/*! ../../../platform/telemetry/common/telemetry.js */ \"./node_modules/monaco-editor/esm/vs/platform/telemetry/common/telemetry.js\");\n/* harmony import */ var _platform_workspace_common_workspace_js__WEBPACK_IMPORTED_MODULE_41__ = __webpack_require__(/*! ../../../platform/workspace/common/workspace.js */ \"./node_modules/monaco-editor/esm/vs/platform/workspace/common/workspace.js\");\n/* harmony import */ var _platform_layout_browser_layoutService_js__WEBPACK_IMPORTED_MODULE_42__ = __webpack_require__(/*! ../../../platform/layout/browser/layoutService.js */ \"./node_modules/monaco-editor/esm/vs/platform/layout/browser/layoutService.js\");\n/* harmony import */ var _common_standaloneStrings_js__WEBPACK_IMPORTED_MODULE_43__ = __webpack_require__(/*! ../../common/standaloneStrings.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/standaloneStrings.js\");\n/* harmony import */ var _base_common_resources_js__WEBPACK_IMPORTED_MODULE_44__ = __webpack_require__(/*! ../../../base/common/resources.js */ \"./node_modules/monaco-editor/esm/vs/base/common/resources.js\");\n/* harmony import */ var _browser_services_codeEditorService_js__WEBPACK_IMPORTED_MODULE_45__ = __webpack_require__(/*! ../../browser/services/codeEditorService.js */ \"./node_modules/monaco-editor/esm/vs/editor/browser/services/codeEditorService.js\");\n/* harmony import */ var _platform_log_common_log_js__WEBPACK_IMPORTED_MODULE_46__ = __webpack_require__(/*! ../../../platform/log/common/log.js */ \"./node_modules/monaco-editor/esm/vs/platform/log/common/log.js\");\n/* harmony import */ var _platform_workspace_common_workspaceTrust_js__WEBPACK_IMPORTED_MODULE_47__ = __webpack_require__(/*! ../../../platform/workspace/common/workspaceTrust.js */ \"./node_modules/monaco-editor/esm/vs/platform/workspace/common/workspaceTrust.js\");\n/* harmony import */ var _platform_contextview_browser_contextView_js__WEBPACK_IMPORTED_MODULE_48__ = __webpack_require__(/*! ../../../platform/contextview/browser/contextView.js */ \"./node_modules/monaco-editor/esm/vs/platform/contextview/browser/contextView.js\");\n/* harmony import */ var _platform_contextview_browser_contextViewService_js__WEBPACK_IMPORTED_MODULE_49__ = __webpack_require__(/*! ../../../platform/contextview/browser/contextViewService.js */ \"./node_modules/monaco-editor/esm/vs/platform/contextview/browser/contextViewService.js\");\n/* harmony import */ var _common_services_languageService_js__WEBPACK_IMPORTED_MODULE_50__ = __webpack_require__(/*! ../../common/services/languageService.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/services/languageService.js\");\n/* harmony import */ var _platform_contextview_browser_contextMenuService_js__WEBPACK_IMPORTED_MODULE_51__ = __webpack_require__(/*! ../../../platform/contextview/browser/contextMenuService.js */ \"./node_modules/monaco-editor/esm/vs/platform/contextview/browser/contextMenuService.js\");\n/* harmony import */ var _platform_instantiation_common_extensions_js__WEBPACK_IMPORTED_MODULE_52__ = __webpack_require__(/*! ../../../platform/instantiation/common/extensions.js */ \"./node_modules/monaco-editor/esm/vs/platform/instantiation/common/extensions.js\");\n/* harmony import */ var _browser_services_openerService_js__WEBPACK_IMPORTED_MODULE_53__ = __webpack_require__(/*! ../../browser/services/openerService.js */ \"./node_modules/monaco-editor/esm/vs/editor/browser/services/openerService.js\");\n/* harmony import */ var _common_services_editorWorker_js__WEBPACK_IMPORTED_MODULE_54__ = __webpack_require__(/*! ../../common/services/editorWorker.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/services/editorWorker.js\");\n/* harmony import */ var _browser_services_editorWorkerService_js__WEBPACK_IMPORTED_MODULE_55__ = __webpack_require__(/*! ../../browser/services/editorWorkerService.js */ \"./node_modules/monaco-editor/esm/vs/editor/browser/services/editorWorkerService.js\");\n/* harmony import */ var _common_languages_language_js__WEBPACK_IMPORTED_MODULE_56__ = __webpack_require__(/*! ../../common/languages/language.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/languages/language.js\");\n/* harmony import */ var _common_services_markerDecorationsService_js__WEBPACK_IMPORTED_MODULE_57__ = __webpack_require__(/*! ../../common/services/markerDecorationsService.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/services/markerDecorationsService.js\");\n/* harmony import */ var _common_services_markerDecorations_js__WEBPACK_IMPORTED_MODULE_58__ = __webpack_require__(/*! ../../common/services/markerDecorations.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/services/markerDecorations.js\");\n/* harmony import */ var _common_services_modelService_js__WEBPACK_IMPORTED_MODULE_59__ = __webpack_require__(/*! ../../common/services/modelService.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/services/modelService.js\");\n/* harmony import */ var _quickInput_standaloneQuickInputService_js__WEBPACK_IMPORTED_MODULE_60__ = __webpack_require__(/*! ./quickInput/standaloneQuickInputService.js */ \"./node_modules/monaco-editor/esm/vs/editor/standalone/browser/quickInput/standaloneQuickInputService.js\");\n/* harmony import */ var _standaloneThemeService_js__WEBPACK_IMPORTED_MODULE_61__ = __webpack_require__(/*! ./standaloneThemeService.js */ \"./node_modules/monaco-editor/esm/vs/editor/standalone/browser/standaloneThemeService.js\");\n/* harmony import */ var _common_standaloneTheme_js__WEBPACK_IMPORTED_MODULE_62__ = __webpack_require__(/*! ../common/standaloneTheme.js */ \"./node_modules/monaco-editor/esm/vs/editor/standalone/common/standaloneTheme.js\");\n/* harmony import */ var _platform_accessibility_browser_accessibilityService_js__WEBPACK_IMPORTED_MODULE_63__ = __webpack_require__(/*! ../../../platform/accessibility/browser/accessibilityService.js */ \"./node_modules/monaco-editor/esm/vs/platform/accessibility/browser/accessibilityService.js\");\n/* harmony import */ var _platform_accessibility_common_accessibility_js__WEBPACK_IMPORTED_MODULE_64__ = __webpack_require__(/*! ../../../platform/accessibility/common/accessibility.js */ \"./node_modules/monaco-editor/esm/vs/platform/accessibility/common/accessibility.js\");\n/* harmony import */ var _platform_actions_common_actions_js__WEBPACK_IMPORTED_MODULE_65__ = __webpack_require__(/*! ../../../platform/actions/common/actions.js */ \"./node_modules/monaco-editor/esm/vs/platform/actions/common/actions.js\");\n/* harmony import */ var _platform_actions_common_menuService_js__WEBPACK_IMPORTED_MODULE_66__ = __webpack_require__(/*! ../../../platform/actions/common/menuService.js */ \"./node_modules/monaco-editor/esm/vs/platform/actions/common/menuService.js\");\n/* harmony import */ var _platform_clipboard_browser_clipboardService_js__WEBPACK_IMPORTED_MODULE_67__ = __webpack_require__(/*! ../../../platform/clipboard/browser/clipboardService.js */ \"./node_modules/monaco-editor/esm/vs/platform/clipboard/browser/clipboardService.js\");\n/* harmony import */ var _platform_clipboard_common_clipboardService_js__WEBPACK_IMPORTED_MODULE_68__ = __webpack_require__(/*! ../../../platform/clipboard/common/clipboardService.js */ \"./node_modules/monaco-editor/esm/vs/platform/clipboard/common/clipboardService.js\");\n/* harmony import */ var _platform_contextkey_browser_contextKeyService_js__WEBPACK_IMPORTED_MODULE_69__ = __webpack_require__(/*! ../../../platform/contextkey/browser/contextKeyService.js */ \"./node_modules/monaco-editor/esm/vs/platform/contextkey/browser/contextKeyService.js\");\n/* harmony import */ var _platform_instantiation_common_descriptors_js__WEBPACK_IMPORTED_MODULE_70__ = __webpack_require__(/*! ../../../platform/instantiation/common/descriptors.js */ \"./node_modules/monaco-editor/esm/vs/platform/instantiation/common/descriptors.js\");\n/* harmony import */ var _platform_instantiation_common_instantiationService_js__WEBPACK_IMPORTED_MODULE_71__ = __webpack_require__(/*! ../../../platform/instantiation/common/instantiationService.js */ \"./node_modules/monaco-editor/esm/vs/platform/instantiation/common/instantiationService.js\");\n/* harmony import */ var _platform_instantiation_common_serviceCollection_js__WEBPACK_IMPORTED_MODULE_72__ = __webpack_require__(/*! ../../../platform/instantiation/common/serviceCollection.js */ \"./node_modules/monaco-editor/esm/vs/platform/instantiation/common/serviceCollection.js\");\n/* harmony import */ var _platform_list_browser_listService_js__WEBPACK_IMPORTED_MODULE_73__ = __webpack_require__(/*! ../../../platform/list/browser/listService.js */ \"./node_modules/monaco-editor/esm/vs/platform/list/browser/listService.js\");\n/* harmony import */ var _platform_markers_common_markers_js__WEBPACK_IMPORTED_MODULE_74__ = __webpack_require__(/*! ../../../platform/markers/common/markers.js */ \"./node_modules/monaco-editor/esm/vs/platform/markers/common/markers.js\");\n/* harmony import */ var _platform_markers_common_markerService_js__WEBPACK_IMPORTED_MODULE_75__ = __webpack_require__(/*! ../../../platform/markers/common/markerService.js */ \"./node_modules/monaco-editor/esm/vs/platform/markers/common/markerService.js\");\n/* harmony import */ var _platform_opener_common_opener_js__WEBPACK_IMPORTED_MODULE_76__ = __webpack_require__(/*! ../../../platform/opener/common/opener.js */ \"./node_modules/monaco-editor/esm/vs/platform/opener/common/opener.js\");\n/* harmony import */ var _platform_quickinput_common_quickInput_js__WEBPACK_IMPORTED_MODULE_77__ = __webpack_require__(/*! ../../../platform/quickinput/common/quickInput.js */ \"./node_modules/monaco-editor/esm/vs/platform/quickinput/common/quickInput.js\");\n/* harmony import */ var _platform_storage_common_storage_js__WEBPACK_IMPORTED_MODULE_78__ = __webpack_require__(/*! ../../../platform/storage/common/storage.js */ \"./node_modules/monaco-editor/esm/vs/platform/storage/common/storage.js\");\n/* harmony import */ var _platform_configuration_common_configurations_js__WEBPACK_IMPORTED_MODULE_79__ = __webpack_require__(/*! ../../../platform/configuration/common/configurations.js */ \"./node_modules/monaco-editor/esm/vs/platform/configuration/common/configurations.js\");\n/* harmony import */ var _platform_accessibilitySignal_browser_accessibilitySignalService_js__WEBPACK_IMPORTED_MODULE_80__ = __webpack_require__(/*! ../../../platform/accessibilitySignal/browser/accessibilitySignalService.js */ \"./node_modules/monaco-editor/esm/vs/platform/accessibilitySignal/browser/accessibilitySignalService.js\");\n/* harmony import */ var _platform_log_common_logService_js__WEBPACK_IMPORTED_MODULE_81__ = __webpack_require__(/*! ../../../platform/log/common/logService.js */ \"./node_modules/monaco-editor/esm/vs/platform/log/common/logService.js\");\n/* harmony import */ var _common_editorFeatures_js__WEBPACK_IMPORTED_MODULE_82__ = __webpack_require__(/*! ../../common/editorFeatures.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/editorFeatures.js\");\n/* harmony import */ var _base_common_errors_js__WEBPACK_IMPORTED_MODULE_83__ = __webpack_require__(/*! ../../../base/common/errors.js */ \"./node_modules/monaco-editor/esm/vs/base/common/errors.js\");\n/* harmony import */ var _platform_environment_common_environment_js__WEBPACK_IMPORTED_MODULE_84__ = __webpack_require__(/*! ../../../platform/environment/common/environment.js */ \"./node_modules/monaco-editor/esm/vs/platform/environment/common/environment.js\");\n/* harmony import */ var _base_browser_window_js__WEBPACK_IMPORTED_MODULE_85__ = __webpack_require__(/*! ../../../base/browser/window.js */ \"./node_modules/monaco-editor/esm/vs/base/browser/window.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\nvar __decorate = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\n return c > 3 && r && Object.defineProperty(target, key, r), r;\n};\nvar __param = (undefined && undefined.__param) || function (paramIndex, decorator) {\n return function (target, key) { decorator(target, key, paramIndex); }\n};\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nclass SimpleModel {\n constructor(model) {\n this.disposed = false;\n this.model = model;\n this._onWillDispose = new _base_common_event_js__WEBPACK_IMPORTED_MODULE_11__.Emitter();\n }\n get textEditorModel() {\n return this.model;\n }\n dispose() {\n this.disposed = true;\n this._onWillDispose.fire();\n }\n}\nlet StandaloneTextModelService = class StandaloneTextModelService {\n constructor(modelService) {\n this.modelService = modelService;\n }\n createModelReference(resource) {\n const model = this.modelService.getModel(resource);\n if (!model) {\n return Promise.reject(new Error(`Model not found`));\n }\n return Promise.resolve(new _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_13__.ImmortalReference(new SimpleModel(model)));\n }\n};\nStandaloneTextModelService = __decorate([\n __param(0, _common_services_model_js__WEBPACK_IMPORTED_MODULE_22__.IModelService)\n], StandaloneTextModelService);\nclass StandaloneEditorProgressService {\n show() {\n return StandaloneEditorProgressService.NULL_PROGRESS_RUNNER;\n }\n async showWhile(promise, delay) {\n await promise;\n }\n}\nStandaloneEditorProgressService.NULL_PROGRESS_RUNNER = {\n done: () => { },\n total: () => { },\n worked: () => { }\n};\nclass StandaloneProgressService {\n withProgress(_options, task, onDidCancel) {\n return task({\n report: () => { },\n });\n }\n}\nclass StandaloneEnvironmentService {\n constructor() {\n this.isExtensionDevelopment = false;\n this.isBuilt = false;\n }\n}\nclass StandaloneDialogService {\n async confirm(confirmation) {\n const confirmed = this.doConfirm(confirmation.message, confirmation.detail);\n return {\n confirmed,\n checkboxChecked: false // unsupported\n };\n }\n doConfirm(message, detail) {\n let messageText = message;\n if (detail) {\n messageText = messageText + '\\n\\n' + detail;\n }\n return _base_browser_window_js__WEBPACK_IMPORTED_MODULE_85__.mainWindow.confirm(messageText);\n }\n async prompt(prompt) {\n var _a, _b;\n let result = undefined;\n const confirmed = this.doConfirm(prompt.message, prompt.detail);\n if (confirmed) {\n const promptButtons = [...((_a = prompt.buttons) !== null && _a !== void 0 ? _a : [])];\n if (prompt.cancelButton && typeof prompt.cancelButton !== 'string' && typeof prompt.cancelButton !== 'boolean') {\n promptButtons.push(prompt.cancelButton);\n }\n result = await ((_b = promptButtons[0]) === null || _b === void 0 ? void 0 : _b.run({ checkboxChecked: false }));\n }\n return { result };\n }\n async error(message, detail) {\n await this.prompt({ type: _base_common_severity_js__WEBPACK_IMPORTED_MODULE_15__[\"default\"].Error, message, detail });\n }\n}\nclass StandaloneNotificationService {\n info(message) {\n return this.notify({ severity: _base_common_severity_js__WEBPACK_IMPORTED_MODULE_15__[\"default\"].Info, message });\n }\n warn(message) {\n return this.notify({ severity: _base_common_severity_js__WEBPACK_IMPORTED_MODULE_15__[\"default\"].Warning, message });\n }\n error(error) {\n return this.notify({ severity: _base_common_severity_js__WEBPACK_IMPORTED_MODULE_15__[\"default\"].Error, message: error });\n }\n notify(notification) {\n switch (notification.severity) {\n case _base_common_severity_js__WEBPACK_IMPORTED_MODULE_15__[\"default\"].Error:\n console.error(notification.message);\n break;\n case _base_common_severity_js__WEBPACK_IMPORTED_MODULE_15__[\"default\"].Warning:\n console.warn(notification.message);\n break;\n default:\n console.log(notification.message);\n break;\n }\n return StandaloneNotificationService.NO_OP;\n }\n prompt(severity, message, choices, options) {\n return StandaloneNotificationService.NO_OP;\n }\n status(message, options) {\n return _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_13__.Disposable.None;\n }\n}\nStandaloneNotificationService.NO_OP = new _platform_notification_common_notification_js__WEBPACK_IMPORTED_MODULE_38__.NoOpNotification();\nlet StandaloneCommandService = class StandaloneCommandService {\n constructor(instantiationService) {\n this._onWillExecuteCommand = new _base_common_event_js__WEBPACK_IMPORTED_MODULE_11__.Emitter();\n this._onDidExecuteCommand = new _base_common_event_js__WEBPACK_IMPORTED_MODULE_11__.Emitter();\n this.onDidExecuteCommand = this._onDidExecuteCommand.event;\n this._instantiationService = instantiationService;\n }\n executeCommand(id, ...args) {\n const command = _platform_commands_common_commands_js__WEBPACK_IMPORTED_MODULE_25__.CommandsRegistry.getCommand(id);\n if (!command) {\n return Promise.reject(new Error(`command '${id}' not found`));\n }\n try {\n this._onWillExecuteCommand.fire({ commandId: id, args });\n const result = this._instantiationService.invokeFunction.apply(this._instantiationService, [command.handler, ...args]);\n this._onDidExecuteCommand.fire({ commandId: id, args });\n return Promise.resolve(result);\n }\n catch (err) {\n return Promise.reject(err);\n }\n }\n};\nStandaloneCommandService = __decorate([\n __param(0, _platform_instantiation_common_instantiation_js__WEBPACK_IMPORTED_MODULE_30__.IInstantiationService)\n], StandaloneCommandService);\n\nlet StandaloneKeybindingService = class StandaloneKeybindingService extends _platform_keybinding_common_abstractKeybindingService_js__WEBPACK_IMPORTED_MODULE_31__.AbstractKeybindingService {\n constructor(contextKeyService, commandService, telemetryService, notificationService, logService, codeEditorService) {\n super(contextKeyService, commandService, telemetryService, notificationService, logService);\n this._cachedResolver = null;\n this._dynamicKeybindings = [];\n this._domNodeListeners = [];\n const addContainer = (domNode) => {\n const disposables = new _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_13__.DisposableStore();\n // for standard keybindings\n disposables.add(_base_browser_dom_js__WEBPACK_IMPORTED_MODULE_9__.addDisposableListener(domNode, _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_9__.EventType.KEY_DOWN, (e) => {\n const keyEvent = new _base_browser_keyboardEvent_js__WEBPACK_IMPORTED_MODULE_10__.StandardKeyboardEvent(e);\n const shouldPreventDefault = this._dispatch(keyEvent, keyEvent.target);\n if (shouldPreventDefault) {\n keyEvent.preventDefault();\n keyEvent.stopPropagation();\n }\n }));\n // for single modifier chord keybindings (e.g. shift shift)\n disposables.add(_base_browser_dom_js__WEBPACK_IMPORTED_MODULE_9__.addDisposableListener(domNode, _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_9__.EventType.KEY_UP, (e) => {\n const keyEvent = new _base_browser_keyboardEvent_js__WEBPACK_IMPORTED_MODULE_10__.StandardKeyboardEvent(e);\n const shouldPreventDefault = this._singleModifierDispatch(keyEvent, keyEvent.target);\n if (shouldPreventDefault) {\n keyEvent.preventDefault();\n }\n }));\n this._domNodeListeners.push(new DomNodeListeners(domNode, disposables));\n };\n const removeContainer = (domNode) => {\n for (let i = 0; i < this._domNodeListeners.length; i++) {\n const domNodeListeners = this._domNodeListeners[i];\n if (domNodeListeners.domNode === domNode) {\n this._domNodeListeners.splice(i, 1);\n domNodeListeners.dispose();\n }\n }\n };\n const addCodeEditor = (codeEditor) => {\n if (codeEditor.getOption(61 /* EditorOption.inDiffEditor */)) {\n return;\n }\n addContainer(codeEditor.getContainerDomNode());\n };\n const removeCodeEditor = (codeEditor) => {\n if (codeEditor.getOption(61 /* EditorOption.inDiffEditor */)) {\n return;\n }\n removeContainer(codeEditor.getContainerDomNode());\n };\n this._register(codeEditorService.onCodeEditorAdd(addCodeEditor));\n this._register(codeEditorService.onCodeEditorRemove(removeCodeEditor));\n codeEditorService.listCodeEditors().forEach(addCodeEditor);\n const addDiffEditor = (diffEditor) => {\n addContainer(diffEditor.getContainerDomNode());\n };\n const removeDiffEditor = (diffEditor) => {\n removeContainer(diffEditor.getContainerDomNode());\n };\n this._register(codeEditorService.onDiffEditorAdd(addDiffEditor));\n this._register(codeEditorService.onDiffEditorRemove(removeDiffEditor));\n codeEditorService.listDiffEditors().forEach(addDiffEditor);\n }\n addDynamicKeybinding(command, keybinding, handler, when) {\n return (0,_base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_13__.combinedDisposable)(_platform_commands_common_commands_js__WEBPACK_IMPORTED_MODULE_25__.CommandsRegistry.registerCommand(command, handler), this.addDynamicKeybindings([{\n keybinding,\n command,\n when\n }]));\n }\n addDynamicKeybindings(rules) {\n const entries = rules.map((rule) => {\n var _a;\n const keybinding = (0,_base_common_keybindings_js__WEBPACK_IMPORTED_MODULE_12__.decodeKeybinding)(rule.keybinding, _base_common_platform_js__WEBPACK_IMPORTED_MODULE_14__.OS);\n return {\n keybinding,\n command: (_a = rule.command) !== null && _a !== void 0 ? _a : null,\n commandArgs: rule.commandArgs,\n when: rule.when,\n weight1: 1000,\n weight2: 0,\n extensionId: null,\n isBuiltinExtension: false\n };\n });\n this._dynamicKeybindings = this._dynamicKeybindings.concat(entries);\n this.updateResolver();\n return (0,_base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_13__.toDisposable)(() => {\n // Search the first entry and remove them all since they will be contiguous\n for (let i = 0; i < this._dynamicKeybindings.length; i++) {\n if (this._dynamicKeybindings[i] === entries[0]) {\n this._dynamicKeybindings.splice(i, entries.length);\n this.updateResolver();\n return;\n }\n }\n });\n }\n updateResolver() {\n this._cachedResolver = null;\n this._onDidUpdateKeybindings.fire();\n }\n _getResolver() {\n if (!this._cachedResolver) {\n const defaults = this._toNormalizedKeybindingItems(_platform_keybinding_common_keybindingsRegistry_js__WEBPACK_IMPORTED_MODULE_34__.KeybindingsRegistry.getDefaultKeybindings(), true);\n const overrides = this._toNormalizedKeybindingItems(this._dynamicKeybindings, false);\n this._cachedResolver = new _platform_keybinding_common_keybindingResolver_js__WEBPACK_IMPORTED_MODULE_33__.KeybindingResolver(defaults, overrides, (str) => this._log(str));\n }\n return this._cachedResolver;\n }\n _documentHasFocus() {\n return _base_browser_window_js__WEBPACK_IMPORTED_MODULE_85__.mainWindow.document.hasFocus();\n }\n _toNormalizedKeybindingItems(items, isDefault) {\n const result = [];\n let resultLen = 0;\n for (const item of items) {\n const when = item.when || undefined;\n const keybinding = item.keybinding;\n if (!keybinding) {\n // This might be a removal keybinding item in user settings => accept it\n result[resultLen++] = new _platform_keybinding_common_resolvedKeybindingItem_js__WEBPACK_IMPORTED_MODULE_35__.ResolvedKeybindingItem(undefined, item.command, item.commandArgs, when, isDefault, null, false);\n }\n else {\n const resolvedKeybindings = _platform_keybinding_common_usLayoutResolvedKeybinding_js__WEBPACK_IMPORTED_MODULE_36__.USLayoutResolvedKeybinding.resolveKeybinding(keybinding, _base_common_platform_js__WEBPACK_IMPORTED_MODULE_14__.OS);\n for (const resolvedKeybinding of resolvedKeybindings) {\n result[resultLen++] = new _platform_keybinding_common_resolvedKeybindingItem_js__WEBPACK_IMPORTED_MODULE_35__.ResolvedKeybindingItem(resolvedKeybinding, item.command, item.commandArgs, when, isDefault, null, false);\n }\n }\n }\n return result;\n }\n resolveKeyboardEvent(keyboardEvent) {\n const chord = new _base_common_keybindings_js__WEBPACK_IMPORTED_MODULE_12__.KeyCodeChord(keyboardEvent.ctrlKey, keyboardEvent.shiftKey, keyboardEvent.altKey, keyboardEvent.metaKey, keyboardEvent.keyCode);\n return new _platform_keybinding_common_usLayoutResolvedKeybinding_js__WEBPACK_IMPORTED_MODULE_36__.USLayoutResolvedKeybinding([chord], _base_common_platform_js__WEBPACK_IMPORTED_MODULE_14__.OS);\n }\n};\nStandaloneKeybindingService = __decorate([\n __param(0, _platform_contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_28__.IContextKeyService),\n __param(1, _platform_commands_common_commands_js__WEBPACK_IMPORTED_MODULE_25__.ICommandService),\n __param(2, _platform_telemetry_common_telemetry_js__WEBPACK_IMPORTED_MODULE_40__.ITelemetryService),\n __param(3, _platform_notification_common_notification_js__WEBPACK_IMPORTED_MODULE_38__.INotificationService),\n __param(4, _platform_log_common_log_js__WEBPACK_IMPORTED_MODULE_46__.ILogService),\n __param(5, _browser_services_codeEditorService_js__WEBPACK_IMPORTED_MODULE_45__.ICodeEditorService)\n], StandaloneKeybindingService);\n\nclass DomNodeListeners extends _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_13__.Disposable {\n constructor(domNode, disposables) {\n super();\n this.domNode = domNode;\n this._register(disposables);\n }\n}\nfunction isConfigurationOverrides(thing) {\n return thing\n && typeof thing === 'object'\n && (!thing.overrideIdentifier || typeof thing.overrideIdentifier === 'string')\n && (!thing.resource || thing.resource instanceof _base_common_uri_js__WEBPACK_IMPORTED_MODULE_16__.URI);\n}\nclass StandaloneConfigurationService {\n constructor() {\n this._onDidChangeConfiguration = new _base_common_event_js__WEBPACK_IMPORTED_MODULE_11__.Emitter();\n this.onDidChangeConfiguration = this._onDidChangeConfiguration.event;\n const defaultConfiguration = new _platform_configuration_common_configurations_js__WEBPACK_IMPORTED_MODULE_79__.DefaultConfiguration();\n this._configuration = new _platform_configuration_common_configurationModels_js__WEBPACK_IMPORTED_MODULE_27__.Configuration(defaultConfiguration.reload(), new _platform_configuration_common_configurationModels_js__WEBPACK_IMPORTED_MODULE_27__.ConfigurationModel(), new _platform_configuration_common_configurationModels_js__WEBPACK_IMPORTED_MODULE_27__.ConfigurationModel(), new _platform_configuration_common_configurationModels_js__WEBPACK_IMPORTED_MODULE_27__.ConfigurationModel());\n defaultConfiguration.dispose();\n }\n getValue(arg1, arg2) {\n const section = typeof arg1 === 'string' ? arg1 : undefined;\n const overrides = isConfigurationOverrides(arg1) ? arg1 : isConfigurationOverrides(arg2) ? arg2 : {};\n return this._configuration.getValue(section, overrides, undefined);\n }\n updateValues(values) {\n const previous = { data: this._configuration.toData() };\n const changedKeys = [];\n for (const entry of values) {\n const [key, value] = entry;\n if (this.getValue(key) === value) {\n continue;\n }\n this._configuration.updateValue(key, value);\n changedKeys.push(key);\n }\n if (changedKeys.length > 0) {\n const configurationChangeEvent = new _platform_configuration_common_configurationModels_js__WEBPACK_IMPORTED_MODULE_27__.ConfigurationChangeEvent({ keys: changedKeys, overrides: [] }, previous, this._configuration);\n configurationChangeEvent.source = 8 /* ConfigurationTarget.MEMORY */;\n this._onDidChangeConfiguration.fire(configurationChangeEvent);\n }\n return Promise.resolve();\n }\n updateValue(key, value, arg3, arg4) {\n return this.updateValues([[key, value]]);\n }\n inspect(key, options = {}) {\n return this._configuration.inspect(key, options, undefined);\n }\n}\nlet StandaloneResourceConfigurationService = class StandaloneResourceConfigurationService {\n constructor(configurationService, modelService, languageService) {\n this.configurationService = configurationService;\n this.modelService = modelService;\n this.languageService = languageService;\n this._onDidChangeConfiguration = new _base_common_event_js__WEBPACK_IMPORTED_MODULE_11__.Emitter();\n this.configurationService.onDidChangeConfiguration((e) => {\n this._onDidChangeConfiguration.fire({ affectedKeys: e.affectedKeys, affectsConfiguration: (resource, configuration) => e.affectsConfiguration(configuration) });\n });\n }\n getValue(resource, arg2, arg3) {\n const position = _common_core_position_js__WEBPACK_IMPORTED_MODULE_20__.Position.isIPosition(arg2) ? arg2 : null;\n const section = position ? (typeof arg3 === 'string' ? arg3 : undefined) : (typeof arg2 === 'string' ? arg2 : undefined);\n const language = resource ? this.getLanguage(resource, position) : undefined;\n if (typeof section === 'undefined') {\n return this.configurationService.getValue({\n resource,\n overrideIdentifier: language\n });\n }\n return this.configurationService.getValue(section, {\n resource,\n overrideIdentifier: language\n });\n }\n getLanguage(resource, position) {\n const model = this.modelService.getModel(resource);\n if (model) {\n return position ? model.getLanguageIdAtPosition(position.lineNumber, position.column) : model.getLanguageId();\n }\n return this.languageService.guessLanguageIdByFilepathOrFirstLine(resource);\n }\n};\nStandaloneResourceConfigurationService = __decorate([\n __param(0, _platform_configuration_common_configuration_js__WEBPACK_IMPORTED_MODULE_26__.IConfigurationService),\n __param(1, _common_services_model_js__WEBPACK_IMPORTED_MODULE_22__.IModelService),\n __param(2, _common_languages_language_js__WEBPACK_IMPORTED_MODULE_56__.ILanguageService)\n], StandaloneResourceConfigurationService);\nlet StandaloneResourcePropertiesService = class StandaloneResourcePropertiesService {\n constructor(configurationService) {\n this.configurationService = configurationService;\n }\n getEOL(resource, language) {\n const eol = this.configurationService.getValue('files.eol', { overrideIdentifier: language, resource });\n if (eol && typeof eol === 'string' && eol !== 'auto') {\n return eol;\n }\n return (_base_common_platform_js__WEBPACK_IMPORTED_MODULE_14__.isLinux || _base_common_platform_js__WEBPACK_IMPORTED_MODULE_14__.isMacintosh) ? '\\n' : '\\r\\n';\n }\n};\nStandaloneResourcePropertiesService = __decorate([\n __param(0, _platform_configuration_common_configuration_js__WEBPACK_IMPORTED_MODULE_26__.IConfigurationService)\n], StandaloneResourcePropertiesService);\nclass StandaloneTelemetryService {\n publicLog2() { }\n}\nclass StandaloneWorkspaceContextService {\n constructor() {\n const resource = _base_common_uri_js__WEBPACK_IMPORTED_MODULE_16__.URI.from({ scheme: StandaloneWorkspaceContextService.SCHEME, authority: 'model', path: '/' });\n this.workspace = { id: _platform_workspace_common_workspace_js__WEBPACK_IMPORTED_MODULE_41__.STANDALONE_EDITOR_WORKSPACE_ID, folders: [new _platform_workspace_common_workspace_js__WEBPACK_IMPORTED_MODULE_41__.WorkspaceFolder({ uri: resource, name: '', index: 0 })] };\n }\n getWorkspace() {\n return this.workspace;\n }\n getWorkspaceFolder(resource) {\n return resource && resource.scheme === StandaloneWorkspaceContextService.SCHEME ? this.workspace.folders[0] : null;\n }\n}\nStandaloneWorkspaceContextService.SCHEME = 'inmemory';\nfunction updateConfigurationService(configurationService, source, isDiffEditor) {\n if (!source) {\n return;\n }\n if (!(configurationService instanceof StandaloneConfigurationService)) {\n return;\n }\n const toUpdate = [];\n Object.keys(source).forEach((key) => {\n if ((0,_common_config_editorConfigurationSchema_js__WEBPACK_IMPORTED_MODULE_18__.isEditorConfigurationKey)(key)) {\n toUpdate.push([`editor.${key}`, source[key]]);\n }\n if (isDiffEditor && (0,_common_config_editorConfigurationSchema_js__WEBPACK_IMPORTED_MODULE_18__.isDiffEditorConfigurationKey)(key)) {\n toUpdate.push([`diffEditor.${key}`, source[key]]);\n }\n });\n if (toUpdate.length > 0) {\n configurationService.updateValues(toUpdate);\n }\n}\nlet StandaloneBulkEditService = class StandaloneBulkEditService {\n constructor(_modelService) {\n this._modelService = _modelService;\n //\n }\n hasPreviewHandler() {\n return false;\n }\n async apply(editsIn, _options) {\n const edits = Array.isArray(editsIn) ? editsIn : _browser_services_bulkEditService_js__WEBPACK_IMPORTED_MODULE_17__.ResourceEdit.convert(editsIn);\n const textEdits = new Map();\n for (const edit of edits) {\n if (!(edit instanceof _browser_services_bulkEditService_js__WEBPACK_IMPORTED_MODULE_17__.ResourceTextEdit)) {\n throw new Error('bad edit - only text edits are supported');\n }\n const model = this._modelService.getModel(edit.resource);\n if (!model) {\n throw new Error('bad edit - model not found');\n }\n if (typeof edit.versionId === 'number' && model.getVersionId() !== edit.versionId) {\n throw new Error('bad state - model changed in the meantime');\n }\n let array = textEdits.get(model);\n if (!array) {\n array = [];\n textEdits.set(model, array);\n }\n array.push(_common_core_editOperation_js__WEBPACK_IMPORTED_MODULE_19__.EditOperation.replaceMove(_common_core_range_js__WEBPACK_IMPORTED_MODULE_21__.Range.lift(edit.textEdit.range), edit.textEdit.text));\n }\n let totalEdits = 0;\n let totalFiles = 0;\n for (const [model, edits] of textEdits) {\n model.pushStackElement();\n model.pushEditOperations([], edits, () => []);\n model.pushStackElement();\n totalFiles += 1;\n totalEdits += edits.length;\n }\n return {\n ariaSummary: _base_common_strings_js__WEBPACK_IMPORTED_MODULE_8__.format(_common_standaloneStrings_js__WEBPACK_IMPORTED_MODULE_43__.StandaloneServicesNLS.bulkEditServiceSummary, totalEdits, totalFiles),\n isApplied: totalEdits > 0\n };\n }\n};\nStandaloneBulkEditService = __decorate([\n __param(0, _common_services_model_js__WEBPACK_IMPORTED_MODULE_22__.IModelService)\n], StandaloneBulkEditService);\nclass StandaloneUriLabelService {\n getUriLabel(resource, options) {\n if (resource.scheme === 'file') {\n return resource.fsPath;\n }\n return resource.path;\n }\n getUriBasenameLabel(resource) {\n return (0,_base_common_resources_js__WEBPACK_IMPORTED_MODULE_44__.basename)(resource);\n }\n}\nlet StandaloneContextViewService = class StandaloneContextViewService extends _platform_contextview_browser_contextViewService_js__WEBPACK_IMPORTED_MODULE_49__.ContextViewService {\n constructor(layoutService, _codeEditorService) {\n super(layoutService);\n this._codeEditorService = _codeEditorService;\n }\n showContextView(delegate, container, shadowRoot) {\n if (!container) {\n const codeEditor = this._codeEditorService.getFocusedCodeEditor() || this._codeEditorService.getActiveCodeEditor();\n if (codeEditor) {\n container = codeEditor.getContainerDomNode();\n }\n }\n return super.showContextView(delegate, container, shadowRoot);\n }\n};\nStandaloneContextViewService = __decorate([\n __param(0, _platform_layout_browser_layoutService_js__WEBPACK_IMPORTED_MODULE_42__.ILayoutService),\n __param(1, _browser_services_codeEditorService_js__WEBPACK_IMPORTED_MODULE_45__.ICodeEditorService)\n], StandaloneContextViewService);\nclass StandaloneWorkspaceTrustManagementService {\n constructor() {\n this._neverEmitter = new _base_common_event_js__WEBPACK_IMPORTED_MODULE_11__.Emitter();\n this.onDidChangeTrust = this._neverEmitter.event;\n }\n isWorkspaceTrusted() {\n return true;\n }\n}\nclass StandaloneLanguageService extends _common_services_languageService_js__WEBPACK_IMPORTED_MODULE_50__.LanguageService {\n constructor() {\n super();\n }\n}\nclass StandaloneLogService extends _platform_log_common_logService_js__WEBPACK_IMPORTED_MODULE_81__.LogService {\n constructor() {\n super(new _platform_log_common_log_js__WEBPACK_IMPORTED_MODULE_46__.ConsoleLogger());\n }\n}\nlet StandaloneContextMenuService = class StandaloneContextMenuService extends _platform_contextview_browser_contextMenuService_js__WEBPACK_IMPORTED_MODULE_51__.ContextMenuService {\n constructor(telemetryService, notificationService, contextViewService, keybindingService, menuService, contextKeyService) {\n super(telemetryService, notificationService, contextViewService, keybindingService, menuService, contextKeyService);\n this.configure({ blockMouse: false }); // we do not want that in the standalone editor\n }\n};\nStandaloneContextMenuService = __decorate([\n __param(0, _platform_telemetry_common_telemetry_js__WEBPACK_IMPORTED_MODULE_40__.ITelemetryService),\n __param(1, _platform_notification_common_notification_js__WEBPACK_IMPORTED_MODULE_38__.INotificationService),\n __param(2, _platform_contextview_browser_contextView_js__WEBPACK_IMPORTED_MODULE_48__.IContextViewService),\n __param(3, _platform_keybinding_common_keybinding_js__WEBPACK_IMPORTED_MODULE_32__.IKeybindingService),\n __param(4, _platform_actions_common_actions_js__WEBPACK_IMPORTED_MODULE_65__.IMenuService),\n __param(5, _platform_contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_28__.IContextKeyService)\n], StandaloneContextMenuService);\nclass StandaloneAccessbilitySignalService {\n async playSignal(cue, options) {\n }\n}\n(0,_platform_instantiation_common_extensions_js__WEBPACK_IMPORTED_MODULE_52__.registerSingleton)(_platform_configuration_common_configuration_js__WEBPACK_IMPORTED_MODULE_26__.IConfigurationService, StandaloneConfigurationService, 0 /* InstantiationType.Eager */);\n(0,_platform_instantiation_common_extensions_js__WEBPACK_IMPORTED_MODULE_52__.registerSingleton)(_common_services_textResourceConfiguration_js__WEBPACK_IMPORTED_MODULE_24__.ITextResourceConfigurationService, StandaloneResourceConfigurationService, 0 /* InstantiationType.Eager */);\n(0,_platform_instantiation_common_extensions_js__WEBPACK_IMPORTED_MODULE_52__.registerSingleton)(_common_services_textResourceConfiguration_js__WEBPACK_IMPORTED_MODULE_24__.ITextResourcePropertiesService, StandaloneResourcePropertiesService, 0 /* InstantiationType.Eager */);\n(0,_platform_instantiation_common_extensions_js__WEBPACK_IMPORTED_MODULE_52__.registerSingleton)(_platform_workspace_common_workspace_js__WEBPACK_IMPORTED_MODULE_41__.IWorkspaceContextService, StandaloneWorkspaceContextService, 0 /* InstantiationType.Eager */);\n(0,_platform_instantiation_common_extensions_js__WEBPACK_IMPORTED_MODULE_52__.registerSingleton)(_platform_label_common_label_js__WEBPACK_IMPORTED_MODULE_37__.ILabelService, StandaloneUriLabelService, 0 /* InstantiationType.Eager */);\n(0,_platform_instantiation_common_extensions_js__WEBPACK_IMPORTED_MODULE_52__.registerSingleton)(_platform_telemetry_common_telemetry_js__WEBPACK_IMPORTED_MODULE_40__.ITelemetryService, StandaloneTelemetryService, 0 /* InstantiationType.Eager */);\n(0,_platform_instantiation_common_extensions_js__WEBPACK_IMPORTED_MODULE_52__.registerSingleton)(_platform_dialogs_common_dialogs_js__WEBPACK_IMPORTED_MODULE_29__.IDialogService, StandaloneDialogService, 0 /* InstantiationType.Eager */);\n(0,_platform_instantiation_common_extensions_js__WEBPACK_IMPORTED_MODULE_52__.registerSingleton)(_platform_environment_common_environment_js__WEBPACK_IMPORTED_MODULE_84__.IEnvironmentService, StandaloneEnvironmentService, 0 /* InstantiationType.Eager */);\n(0,_platform_instantiation_common_extensions_js__WEBPACK_IMPORTED_MODULE_52__.registerSingleton)(_platform_notification_common_notification_js__WEBPACK_IMPORTED_MODULE_38__.INotificationService, StandaloneNotificationService, 0 /* InstantiationType.Eager */);\n(0,_platform_instantiation_common_extensions_js__WEBPACK_IMPORTED_MODULE_52__.registerSingleton)(_platform_markers_common_markers_js__WEBPACK_IMPORTED_MODULE_74__.IMarkerService, _platform_markers_common_markerService_js__WEBPACK_IMPORTED_MODULE_75__.MarkerService, 0 /* InstantiationType.Eager */);\n(0,_platform_instantiation_common_extensions_js__WEBPACK_IMPORTED_MODULE_52__.registerSingleton)(_common_languages_language_js__WEBPACK_IMPORTED_MODULE_56__.ILanguageService, StandaloneLanguageService, 0 /* InstantiationType.Eager */);\n(0,_platform_instantiation_common_extensions_js__WEBPACK_IMPORTED_MODULE_52__.registerSingleton)(_common_standaloneTheme_js__WEBPACK_IMPORTED_MODULE_62__.IStandaloneThemeService, _standaloneThemeService_js__WEBPACK_IMPORTED_MODULE_61__.StandaloneThemeService, 0 /* InstantiationType.Eager */);\n(0,_platform_instantiation_common_extensions_js__WEBPACK_IMPORTED_MODULE_52__.registerSingleton)(_platform_log_common_log_js__WEBPACK_IMPORTED_MODULE_46__.ILogService, StandaloneLogService, 0 /* InstantiationType.Eager */);\n(0,_platform_instantiation_common_extensions_js__WEBPACK_IMPORTED_MODULE_52__.registerSingleton)(_common_services_model_js__WEBPACK_IMPORTED_MODULE_22__.IModelService, _common_services_modelService_js__WEBPACK_IMPORTED_MODULE_59__.ModelService, 0 /* InstantiationType.Eager */);\n(0,_platform_instantiation_common_extensions_js__WEBPACK_IMPORTED_MODULE_52__.registerSingleton)(_common_services_markerDecorations_js__WEBPACK_IMPORTED_MODULE_58__.IMarkerDecorationsService, _common_services_markerDecorationsService_js__WEBPACK_IMPORTED_MODULE_57__.MarkerDecorationsService, 0 /* InstantiationType.Eager */);\n(0,_platform_instantiation_common_extensions_js__WEBPACK_IMPORTED_MODULE_52__.registerSingleton)(_platform_contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_28__.IContextKeyService, _platform_contextkey_browser_contextKeyService_js__WEBPACK_IMPORTED_MODULE_69__.ContextKeyService, 0 /* InstantiationType.Eager */);\n(0,_platform_instantiation_common_extensions_js__WEBPACK_IMPORTED_MODULE_52__.registerSingleton)(_platform_progress_common_progress_js__WEBPACK_IMPORTED_MODULE_39__.IProgressService, StandaloneProgressService, 0 /* InstantiationType.Eager */);\n(0,_platform_instantiation_common_extensions_js__WEBPACK_IMPORTED_MODULE_52__.registerSingleton)(_platform_progress_common_progress_js__WEBPACK_IMPORTED_MODULE_39__.IEditorProgressService, StandaloneEditorProgressService, 0 /* InstantiationType.Eager */);\n(0,_platform_instantiation_common_extensions_js__WEBPACK_IMPORTED_MODULE_52__.registerSingleton)(_platform_storage_common_storage_js__WEBPACK_IMPORTED_MODULE_78__.IStorageService, _platform_storage_common_storage_js__WEBPACK_IMPORTED_MODULE_78__.InMemoryStorageService, 0 /* InstantiationType.Eager */);\n(0,_platform_instantiation_common_extensions_js__WEBPACK_IMPORTED_MODULE_52__.registerSingleton)(_common_services_editorWorker_js__WEBPACK_IMPORTED_MODULE_54__.IEditorWorkerService, _browser_services_editorWorkerService_js__WEBPACK_IMPORTED_MODULE_55__.EditorWorkerService, 0 /* InstantiationType.Eager */);\n(0,_platform_instantiation_common_extensions_js__WEBPACK_IMPORTED_MODULE_52__.registerSingleton)(_browser_services_bulkEditService_js__WEBPACK_IMPORTED_MODULE_17__.IBulkEditService, StandaloneBulkEditService, 0 /* InstantiationType.Eager */);\n(0,_platform_instantiation_common_extensions_js__WEBPACK_IMPORTED_MODULE_52__.registerSingleton)(_platform_workspace_common_workspaceTrust_js__WEBPACK_IMPORTED_MODULE_47__.IWorkspaceTrustManagementService, StandaloneWorkspaceTrustManagementService, 0 /* InstantiationType.Eager */);\n(0,_platform_instantiation_common_extensions_js__WEBPACK_IMPORTED_MODULE_52__.registerSingleton)(_common_services_resolverService_js__WEBPACK_IMPORTED_MODULE_23__.ITextModelService, StandaloneTextModelService, 0 /* InstantiationType.Eager */);\n(0,_platform_instantiation_common_extensions_js__WEBPACK_IMPORTED_MODULE_52__.registerSingleton)(_platform_accessibility_common_accessibility_js__WEBPACK_IMPORTED_MODULE_64__.IAccessibilityService, _platform_accessibility_browser_accessibilityService_js__WEBPACK_IMPORTED_MODULE_63__.AccessibilityService, 0 /* InstantiationType.Eager */);\n(0,_platform_instantiation_common_extensions_js__WEBPACK_IMPORTED_MODULE_52__.registerSingleton)(_platform_list_browser_listService_js__WEBPACK_IMPORTED_MODULE_73__.IListService, _platform_list_browser_listService_js__WEBPACK_IMPORTED_MODULE_73__.ListService, 0 /* InstantiationType.Eager */);\n(0,_platform_instantiation_common_extensions_js__WEBPACK_IMPORTED_MODULE_52__.registerSingleton)(_platform_commands_common_commands_js__WEBPACK_IMPORTED_MODULE_25__.ICommandService, StandaloneCommandService, 0 /* InstantiationType.Eager */);\n(0,_platform_instantiation_common_extensions_js__WEBPACK_IMPORTED_MODULE_52__.registerSingleton)(_platform_keybinding_common_keybinding_js__WEBPACK_IMPORTED_MODULE_32__.IKeybindingService, StandaloneKeybindingService, 0 /* InstantiationType.Eager */);\n(0,_platform_instantiation_common_extensions_js__WEBPACK_IMPORTED_MODULE_52__.registerSingleton)(_platform_quickinput_common_quickInput_js__WEBPACK_IMPORTED_MODULE_77__.IQuickInputService, _quickInput_standaloneQuickInputService_js__WEBPACK_IMPORTED_MODULE_60__.StandaloneQuickInputService, 0 /* InstantiationType.Eager */);\n(0,_platform_instantiation_common_extensions_js__WEBPACK_IMPORTED_MODULE_52__.registerSingleton)(_platform_contextview_browser_contextView_js__WEBPACK_IMPORTED_MODULE_48__.IContextViewService, StandaloneContextViewService, 0 /* InstantiationType.Eager */);\n(0,_platform_instantiation_common_extensions_js__WEBPACK_IMPORTED_MODULE_52__.registerSingleton)(_platform_opener_common_opener_js__WEBPACK_IMPORTED_MODULE_76__.IOpenerService, _browser_services_openerService_js__WEBPACK_IMPORTED_MODULE_53__.OpenerService, 0 /* InstantiationType.Eager */);\n(0,_platform_instantiation_common_extensions_js__WEBPACK_IMPORTED_MODULE_52__.registerSingleton)(_platform_clipboard_common_clipboardService_js__WEBPACK_IMPORTED_MODULE_68__.IClipboardService, _platform_clipboard_browser_clipboardService_js__WEBPACK_IMPORTED_MODULE_67__.BrowserClipboardService, 0 /* InstantiationType.Eager */);\n(0,_platform_instantiation_common_extensions_js__WEBPACK_IMPORTED_MODULE_52__.registerSingleton)(_platform_contextview_browser_contextView_js__WEBPACK_IMPORTED_MODULE_48__.IContextMenuService, StandaloneContextMenuService, 0 /* InstantiationType.Eager */);\n(0,_platform_instantiation_common_extensions_js__WEBPACK_IMPORTED_MODULE_52__.registerSingleton)(_platform_actions_common_actions_js__WEBPACK_IMPORTED_MODULE_65__.IMenuService, _platform_actions_common_menuService_js__WEBPACK_IMPORTED_MODULE_66__.MenuService, 0 /* InstantiationType.Eager */);\n(0,_platform_instantiation_common_extensions_js__WEBPACK_IMPORTED_MODULE_52__.registerSingleton)(_platform_accessibilitySignal_browser_accessibilitySignalService_js__WEBPACK_IMPORTED_MODULE_80__.IAccessibilitySignalService, StandaloneAccessbilitySignalService, 0 /* InstantiationType.Eager */);\n/**\n * We don't want to eagerly instantiate services because embedders get a one time chance\n * to override services when they create the first editor.\n */\nvar StandaloneServices;\n(function (StandaloneServices) {\n const serviceCollection = new _platform_instantiation_common_serviceCollection_js__WEBPACK_IMPORTED_MODULE_72__.ServiceCollection();\n for (const [id, descriptor] of (0,_platform_instantiation_common_extensions_js__WEBPACK_IMPORTED_MODULE_52__.getSingletonServiceDescriptors)()) {\n serviceCollection.set(id, descriptor);\n }\n const instantiationService = new _platform_instantiation_common_instantiationService_js__WEBPACK_IMPORTED_MODULE_71__.InstantiationService(serviceCollection, true);\n serviceCollection.set(_platform_instantiation_common_instantiation_js__WEBPACK_IMPORTED_MODULE_30__.IInstantiationService, instantiationService);\n function get(serviceId) {\n if (!initialized) {\n initialize({});\n }\n const r = serviceCollection.get(serviceId);\n if (!r) {\n throw new Error('Missing service ' + serviceId);\n }\n if (r instanceof _platform_instantiation_common_descriptors_js__WEBPACK_IMPORTED_MODULE_70__.SyncDescriptor) {\n return instantiationService.invokeFunction((accessor) => accessor.get(serviceId));\n }\n else {\n return r;\n }\n }\n StandaloneServices.get = get;\n let initialized = false;\n const onDidInitialize = new _base_common_event_js__WEBPACK_IMPORTED_MODULE_11__.Emitter();\n function initialize(overrides) {\n if (initialized) {\n return instantiationService;\n }\n initialized = true;\n // Add singletons that were registered after this module loaded\n for (const [id, descriptor] of (0,_platform_instantiation_common_extensions_js__WEBPACK_IMPORTED_MODULE_52__.getSingletonServiceDescriptors)()) {\n if (!serviceCollection.get(id)) {\n serviceCollection.set(id, descriptor);\n }\n }\n // Initialize the service collection with the overrides, but only if the\n // service was not instantiated in the meantime.\n for (const serviceId in overrides) {\n if (overrides.hasOwnProperty(serviceId)) {\n const serviceIdentifier = (0,_platform_instantiation_common_instantiation_js__WEBPACK_IMPORTED_MODULE_30__.createDecorator)(serviceId);\n const r = serviceCollection.get(serviceIdentifier);\n if (r instanceof _platform_instantiation_common_descriptors_js__WEBPACK_IMPORTED_MODULE_70__.SyncDescriptor) {\n serviceCollection.set(serviceIdentifier, overrides[serviceId]);\n }\n }\n }\n // Instantiate all editor features\n const editorFeatures = (0,_common_editorFeatures_js__WEBPACK_IMPORTED_MODULE_82__.getEditorFeatures)();\n for (const feature of editorFeatures) {\n try {\n instantiationService.createInstance(feature);\n }\n catch (err) {\n (0,_base_common_errors_js__WEBPACK_IMPORTED_MODULE_83__.onUnexpectedError)(err);\n }\n }\n onDidInitialize.fire();\n return instantiationService;\n }\n StandaloneServices.initialize = initialize;\n /**\n * Executes callback once services are initialized.\n */\n function withServices(callback) {\n if (initialized) {\n return callback();\n }\n const disposable = new _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_13__.DisposableStore();\n const listener = disposable.add(onDidInitialize.event(() => {\n listener.dispose();\n disposable.add(callback());\n }));\n return disposable;\n }\n StandaloneServices.withServices = withServices;\n})(StandaloneServices || (StandaloneServices = {}));\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/standalone/browser/standaloneServices.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/standalone/browser/standaloneThemeService.js":
/*!***********************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/standalone/browser/standaloneThemeService.js ***!
\***********************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ HC_BLACK_THEME_NAME: () => (/* binding */ HC_BLACK_THEME_NAME),\n/* harmony export */ HC_LIGHT_THEME_NAME: () => (/* binding */ HC_LIGHT_THEME_NAME),\n/* harmony export */ StandaloneThemeService: () => (/* binding */ StandaloneThemeService),\n/* harmony export */ VS_DARK_THEME_NAME: () => (/* binding */ VS_DARK_THEME_NAME),\n/* harmony export */ VS_LIGHT_THEME_NAME: () => (/* binding */ VS_LIGHT_THEME_NAME)\n/* harmony export */ });\n/* harmony import */ var _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../base/browser/dom.js */ \"./node_modules/monaco-editor/esm/vs/base/browser/dom.js\");\n/* harmony import */ var _base_browser_browser_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../base/browser/browser.js */ \"./node_modules/monaco-editor/esm/vs/base/browser/browser.js\");\n/* harmony import */ var _base_common_color_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../base/common/color.js */ \"./node_modules/monaco-editor/esm/vs/base/common/color.js\");\n/* harmony import */ var _base_common_event_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../../base/common/event.js */ \"./node_modules/monaco-editor/esm/vs/base/common/event.js\");\n/* harmony import */ var _common_languages_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../common/languages.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/languages.js\");\n/* harmony import */ var _common_encodedTokenAttributes_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../../common/encodedTokenAttributes.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/encodedTokenAttributes.js\");\n/* harmony import */ var _common_languages_supports_tokenization_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../../common/languages/supports/tokenization.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/languages/supports/tokenization.js\");\n/* harmony import */ var _common_themes_js__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ../common/themes.js */ \"./node_modules/monaco-editor/esm/vs/editor/standalone/common/themes.js\");\n/* harmony import */ var _platform_registry_common_platform_js__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ../../../platform/registry/common/platform.js */ \"./node_modules/monaco-editor/esm/vs/platform/registry/common/platform.js\");\n/* harmony import */ var _platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ../../../platform/theme/common/colorRegistry.js */ \"./node_modules/monaco-editor/esm/vs/platform/theme/common/colorRegistry.js\");\n/* harmony import */ var _platform_theme_common_themeService_js__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! ../../../platform/theme/common/themeService.js */ \"./node_modules/monaco-editor/esm/vs/platform/theme/common/themeService.js\");\n/* harmony import */ var _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(/*! ../../../base/common/lifecycle.js */ \"./node_modules/monaco-editor/esm/vs/base/common/lifecycle.js\");\n/* harmony import */ var _platform_theme_common_theme_js__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(/*! ../../../platform/theme/common/theme.js */ \"./node_modules/monaco-editor/esm/vs/platform/theme/common/theme.js\");\n/* harmony import */ var _platform_theme_browser_iconsStyleSheet_js__WEBPACK_IMPORTED_MODULE_13__ = __webpack_require__(/*! ../../../platform/theme/browser/iconsStyleSheet.js */ \"./node_modules/monaco-editor/esm/vs/platform/theme/browser/iconsStyleSheet.js\");\n/* harmony import */ var _base_browser_window_js__WEBPACK_IMPORTED_MODULE_14__ = __webpack_require__(/*! ../../../base/browser/window.js */ \"./node_modules/monaco-editor/esm/vs/base/browser/window.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nconst VS_LIGHT_THEME_NAME = 'vs';\nconst VS_DARK_THEME_NAME = 'vs-dark';\nconst HC_BLACK_THEME_NAME = 'hc-black';\nconst HC_LIGHT_THEME_NAME = 'hc-light';\nconst colorRegistry = _platform_registry_common_platform_js__WEBPACK_IMPORTED_MODULE_8__.Registry.as(_platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_9__.Extensions.ColorContribution);\nconst themingRegistry = _platform_registry_common_platform_js__WEBPACK_IMPORTED_MODULE_8__.Registry.as(_platform_theme_common_themeService_js__WEBPACK_IMPORTED_MODULE_10__.Extensions.ThemingContribution);\nclass StandaloneTheme {\n constructor(name, standaloneThemeData) {\n this.semanticHighlighting = false;\n this.themeData = standaloneThemeData;\n const base = standaloneThemeData.base;\n if (name.length > 0) {\n if (isBuiltinTheme(name)) {\n this.id = name;\n }\n else {\n this.id = base + ' ' + name;\n }\n this.themeName = name;\n }\n else {\n this.id = base;\n this.themeName = base;\n }\n this.colors = null;\n this.defaultColors = Object.create(null);\n this._tokenTheme = null;\n }\n get base() {\n return this.themeData.base;\n }\n notifyBaseUpdated() {\n if (this.themeData.inherit) {\n this.colors = null;\n this._tokenTheme = null;\n }\n }\n getColors() {\n if (!this.colors) {\n const colors = new Map();\n for (const id in this.themeData.colors) {\n colors.set(id, _base_common_color_js__WEBPACK_IMPORTED_MODULE_2__.Color.fromHex(this.themeData.colors[id]));\n }\n if (this.themeData.inherit) {\n const baseData = getBuiltinRules(this.themeData.base);\n for (const id in baseData.colors) {\n if (!colors.has(id)) {\n colors.set(id, _base_common_color_js__WEBPACK_IMPORTED_MODULE_2__.Color.fromHex(baseData.colors[id]));\n }\n }\n }\n this.colors = colors;\n }\n return this.colors;\n }\n getColor(colorId, useDefault) {\n const color = this.getColors().get(colorId);\n if (color) {\n return color;\n }\n if (useDefault !== false) {\n return this.getDefault(colorId);\n }\n return undefined;\n }\n getDefault(colorId) {\n let color = this.defaultColors[colorId];\n if (color) {\n return color;\n }\n color = colorRegistry.resolveDefaultColor(colorId, this);\n this.defaultColors[colorId] = color;\n return color;\n }\n defines(colorId) {\n return this.getColors().has(colorId);\n }\n get type() {\n switch (this.base) {\n case VS_LIGHT_THEME_NAME: return _platform_theme_common_theme_js__WEBPACK_IMPORTED_MODULE_12__.ColorScheme.LIGHT;\n case HC_BLACK_THEME_NAME: return _platform_theme_common_theme_js__WEBPACK_IMPORTED_MODULE_12__.ColorScheme.HIGH_CONTRAST_DARK;\n case HC_LIGHT_THEME_NAME: return _platform_theme_common_theme_js__WEBPACK_IMPORTED_MODULE_12__.ColorScheme.HIGH_CONTRAST_LIGHT;\n default: return _platform_theme_common_theme_js__WEBPACK_IMPORTED_MODULE_12__.ColorScheme.DARK;\n }\n }\n get tokenTheme() {\n if (!this._tokenTheme) {\n let rules = [];\n let encodedTokensColors = [];\n if (this.themeData.inherit) {\n const baseData = getBuiltinRules(this.themeData.base);\n rules = baseData.rules;\n if (baseData.encodedTokensColors) {\n encodedTokensColors = baseData.encodedTokensColors;\n }\n }\n // Pick up default colors from `editor.foreground` and `editor.background` if available\n const editorForeground = this.themeData.colors['editor.foreground'];\n const editorBackground = this.themeData.colors['editor.background'];\n if (editorForeground || editorBackground) {\n const rule = { token: '' };\n if (editorForeground) {\n rule.foreground = editorForeground;\n }\n if (editorBackground) {\n rule.background = editorBackground;\n }\n rules.push(rule);\n }\n rules = rules.concat(this.themeData.rules);\n if (this.themeData.encodedTokensColors) {\n encodedTokensColors = this.themeData.encodedTokensColors;\n }\n this._tokenTheme = _common_languages_supports_tokenization_js__WEBPACK_IMPORTED_MODULE_6__.TokenTheme.createFromRawTokenTheme(rules, encodedTokensColors);\n }\n return this._tokenTheme;\n }\n getTokenStyleMetadata(type, modifiers, modelLanguage) {\n // use theme rules match\n const style = this.tokenTheme._match([type].concat(modifiers).join('.'));\n const metadata = style.metadata;\n const foreground = _common_encodedTokenAttributes_js__WEBPACK_IMPORTED_MODULE_5__.TokenMetadata.getForeground(metadata);\n const fontStyle = _common_encodedTokenAttributes_js__WEBPACK_IMPORTED_MODULE_5__.TokenMetadata.getFontStyle(metadata);\n return {\n foreground: foreground,\n italic: Boolean(fontStyle & 1 /* FontStyle.Italic */),\n bold: Boolean(fontStyle & 2 /* FontStyle.Bold */),\n underline: Boolean(fontStyle & 4 /* FontStyle.Underline */),\n strikethrough: Boolean(fontStyle & 8 /* FontStyle.Strikethrough */)\n };\n }\n}\nfunction isBuiltinTheme(themeName) {\n return (themeName === VS_LIGHT_THEME_NAME\n || themeName === VS_DARK_THEME_NAME\n || themeName === HC_BLACK_THEME_NAME\n || themeName === HC_LIGHT_THEME_NAME);\n}\nfunction getBuiltinRules(builtinTheme) {\n switch (builtinTheme) {\n case VS_LIGHT_THEME_NAME:\n return _common_themes_js__WEBPACK_IMPORTED_MODULE_7__.vs;\n case VS_DARK_THEME_NAME:\n return _common_themes_js__WEBPACK_IMPORTED_MODULE_7__.vs_dark;\n case HC_BLACK_THEME_NAME:\n return _common_themes_js__WEBPACK_IMPORTED_MODULE_7__.hc_black;\n case HC_LIGHT_THEME_NAME:\n return _common_themes_js__WEBPACK_IMPORTED_MODULE_7__.hc_light;\n }\n}\nfunction newBuiltInTheme(builtinTheme) {\n const themeData = getBuiltinRules(builtinTheme);\n return new StandaloneTheme(builtinTheme, themeData);\n}\nclass StandaloneThemeService extends _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_11__.Disposable {\n constructor() {\n super();\n this._onColorThemeChange = this._register(new _base_common_event_js__WEBPACK_IMPORTED_MODULE_3__.Emitter());\n this.onDidColorThemeChange = this._onColorThemeChange.event;\n this._onProductIconThemeChange = this._register(new _base_common_event_js__WEBPACK_IMPORTED_MODULE_3__.Emitter());\n this.onDidProductIconThemeChange = this._onProductIconThemeChange.event;\n this._environment = Object.create(null);\n this._builtInProductIconTheme = new _platform_theme_browser_iconsStyleSheet_js__WEBPACK_IMPORTED_MODULE_13__.UnthemedProductIconTheme();\n this._autoDetectHighContrast = true;\n this._knownThemes = new Map();\n this._knownThemes.set(VS_LIGHT_THEME_NAME, newBuiltInTheme(VS_LIGHT_THEME_NAME));\n this._knownThemes.set(VS_DARK_THEME_NAME, newBuiltInTheme(VS_DARK_THEME_NAME));\n this._knownThemes.set(HC_BLACK_THEME_NAME, newBuiltInTheme(HC_BLACK_THEME_NAME));\n this._knownThemes.set(HC_LIGHT_THEME_NAME, newBuiltInTheme(HC_LIGHT_THEME_NAME));\n const iconsStyleSheet = this._register((0,_platform_theme_browser_iconsStyleSheet_js__WEBPACK_IMPORTED_MODULE_13__.getIconsStyleSheet)(this));\n this._codiconCSS = iconsStyleSheet.getCSS();\n this._themeCSS = '';\n this._allCSS = `${this._codiconCSS}\\n${this._themeCSS}`;\n this._globalStyleElement = null;\n this._styleElements = [];\n this._colorMapOverride = null;\n this.setTheme(VS_LIGHT_THEME_NAME);\n this._onOSSchemeChanged();\n this._register(iconsStyleSheet.onDidChange(() => {\n this._codiconCSS = iconsStyleSheet.getCSS();\n this._updateCSS();\n }));\n (0,_base_browser_browser_js__WEBPACK_IMPORTED_MODULE_1__.addMatchMediaChangeListener)(_base_browser_window_js__WEBPACK_IMPORTED_MODULE_14__.mainWindow, '(forced-colors: active)', () => {\n this._onOSSchemeChanged();\n });\n }\n registerEditorContainer(domNode) {\n if (_base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.isInShadowDOM(domNode)) {\n return this._registerShadowDomContainer(domNode);\n }\n return this._registerRegularEditorContainer();\n }\n _registerRegularEditorContainer() {\n if (!this._globalStyleElement) {\n this._globalStyleElement = _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.createStyleSheet(undefined, style => {\n style.className = 'monaco-colors';\n style.textContent = this._allCSS;\n });\n this._styleElements.push(this._globalStyleElement);\n }\n return _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_11__.Disposable.None;\n }\n _registerShadowDomContainer(domNode) {\n const styleElement = _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.createStyleSheet(domNode, style => {\n style.className = 'monaco-colors';\n style.textContent = this._allCSS;\n });\n this._styleElements.push(styleElement);\n return {\n dispose: () => {\n for (let i = 0; i < this._styleElements.length; i++) {\n if (this._styleElements[i] === styleElement) {\n this._styleElements.splice(i, 1);\n return;\n }\n }\n }\n };\n }\n defineTheme(themeName, themeData) {\n if (!/^[a-z0-9\\-]+$/i.test(themeName)) {\n throw new Error('Illegal theme name!');\n }\n if (!isBuiltinTheme(themeData.base) && !isBuiltinTheme(themeName)) {\n throw new Error('Illegal theme base!');\n }\n // set or replace theme\n this._knownThemes.set(themeName, new StandaloneTheme(themeName, themeData));\n if (isBuiltinTheme(themeName)) {\n this._knownThemes.forEach(theme => {\n if (theme.base === themeName) {\n theme.notifyBaseUpdated();\n }\n });\n }\n if (this._theme.themeName === themeName) {\n this.setTheme(themeName); // refresh theme\n }\n }\n getColorTheme() {\n return this._theme;\n }\n setColorMapOverride(colorMapOverride) {\n this._colorMapOverride = colorMapOverride;\n this._updateThemeOrColorMap();\n }\n setTheme(themeName) {\n let theme;\n if (this._knownThemes.has(themeName)) {\n theme = this._knownThemes.get(themeName);\n }\n else {\n theme = this._knownThemes.get(VS_LIGHT_THEME_NAME);\n }\n this._updateActualTheme(theme);\n }\n _updateActualTheme(desiredTheme) {\n if (!desiredTheme || this._theme === desiredTheme) {\n // Nothing to do\n return;\n }\n this._theme = desiredTheme;\n this._updateThemeOrColorMap();\n }\n _onOSSchemeChanged() {\n if (this._autoDetectHighContrast) {\n const wantsHighContrast = _base_browser_window_js__WEBPACK_IMPORTED_MODULE_14__.mainWindow.matchMedia(`(forced-colors: active)`).matches;\n if (wantsHighContrast !== (0,_platform_theme_common_theme_js__WEBPACK_IMPORTED_MODULE_12__.isHighContrast)(this._theme.type)) {\n // switch to high contrast or non-high contrast but stick to dark or light\n let newThemeName;\n if ((0,_platform_theme_common_theme_js__WEBPACK_IMPORTED_MODULE_12__.isDark)(this._theme.type)) {\n newThemeName = wantsHighContrast ? HC_BLACK_THEME_NAME : VS_DARK_THEME_NAME;\n }\n else {\n newThemeName = wantsHighContrast ? HC_LIGHT_THEME_NAME : VS_LIGHT_THEME_NAME;\n }\n this._updateActualTheme(this._knownThemes.get(newThemeName));\n }\n }\n }\n setAutoDetectHighContrast(autoDetectHighContrast) {\n this._autoDetectHighContrast = autoDetectHighContrast;\n this._onOSSchemeChanged();\n }\n _updateThemeOrColorMap() {\n const cssRules = [];\n const hasRule = {};\n const ruleCollector = {\n addRule: (rule) => {\n if (!hasRule[rule]) {\n cssRules.push(rule);\n hasRule[rule] = true;\n }\n }\n };\n themingRegistry.getThemingParticipants().forEach(p => p(this._theme, ruleCollector, this._environment));\n const colorVariables = [];\n for (const item of colorRegistry.getColors()) {\n const color = this._theme.getColor(item.id, true);\n if (color) {\n colorVariables.push(`${(0,_platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_9__.asCssVariableName)(item.id)}: ${color.toString()};`);\n }\n }\n ruleCollector.addRule(`.monaco-editor, .monaco-diff-editor, .monaco-component { ${colorVariables.join('\\n')} }`);\n const colorMap = this._colorMapOverride || this._theme.tokenTheme.getColorMap();\n ruleCollector.addRule((0,_common_languages_supports_tokenization_js__WEBPACK_IMPORTED_MODULE_6__.generateTokensCSSForColorMap)(colorMap));\n this._themeCSS = cssRules.join('\\n');\n this._updateCSS();\n _common_languages_js__WEBPACK_IMPORTED_MODULE_4__.TokenizationRegistry.setColorMap(colorMap);\n this._onColorThemeChange.fire(this._theme);\n }\n _updateCSS() {\n this._allCSS = `${this._codiconCSS}\\n${this._themeCSS}`;\n this._styleElements.forEach(styleElement => styleElement.textContent = this._allCSS);\n }\n getFileIconTheme() {\n return {\n hasFileIcons: false,\n hasFolderIcons: false,\n hidesExplorerArrows: false\n };\n }\n getProductIconTheme() {\n return this._builtInProductIconTheme;\n }\n}\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/standalone/browser/standaloneThemeService.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/standalone/browser/toggleHighContrast/toggleHighContrast.js":
/*!**************************************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/standalone/browser/toggleHighContrast/toggleHighContrast.js ***!
\**************************************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var _browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../browser/editorExtensions.js */ \"./node_modules/monaco-editor/esm/vs/editor/browser/editorExtensions.js\");\n/* harmony import */ var _common_standaloneTheme_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../common/standaloneTheme.js */ \"./node_modules/monaco-editor/esm/vs/editor/standalone/common/standaloneTheme.js\");\n/* harmony import */ var _common_standaloneStrings_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../common/standaloneStrings.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/standaloneStrings.js\");\n/* harmony import */ var _platform_theme_common_theme_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../../../platform/theme/common/theme.js */ \"./node_modules/monaco-editor/esm/vs/platform/theme/common/theme.js\");\n/* harmony import */ var _standaloneThemeService_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../standaloneThemeService.js */ \"./node_modules/monaco-editor/esm/vs/editor/standalone/browser/standaloneThemeService.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n\n\n\n\nclass ToggleHighContrast extends _browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_0__.EditorAction {\n constructor() {\n super({\n id: 'editor.action.toggleHighContrast',\n label: _common_standaloneStrings_js__WEBPACK_IMPORTED_MODULE_2__.ToggleHighContrastNLS.toggleHighContrast,\n alias: 'Toggle High Contrast Theme',\n precondition: undefined\n });\n this._originalThemeName = null;\n }\n run(accessor, editor) {\n const standaloneThemeService = accessor.get(_common_standaloneTheme_js__WEBPACK_IMPORTED_MODULE_1__.IStandaloneThemeService);\n const currentTheme = standaloneThemeService.getColorTheme();\n if ((0,_platform_theme_common_theme_js__WEBPACK_IMPORTED_MODULE_3__.isHighContrast)(currentTheme.type)) {\n // We must toggle back to the integrator's theme\n standaloneThemeService.setTheme(this._originalThemeName || ((0,_platform_theme_common_theme_js__WEBPACK_IMPORTED_MODULE_3__.isDark)(currentTheme.type) ? _standaloneThemeService_js__WEBPACK_IMPORTED_MODULE_4__.VS_DARK_THEME_NAME : _standaloneThemeService_js__WEBPACK_IMPORTED_MODULE_4__.VS_LIGHT_THEME_NAME));\n this._originalThemeName = null;\n }\n else {\n standaloneThemeService.setTheme((0,_platform_theme_common_theme_js__WEBPACK_IMPORTED_MODULE_3__.isDark)(currentTheme.type) ? _standaloneThemeService_js__WEBPACK_IMPORTED_MODULE_4__.HC_BLACK_THEME_NAME : _standaloneThemeService_js__WEBPACK_IMPORTED_MODULE_4__.HC_LIGHT_THEME_NAME);\n this._originalThemeName = currentTheme.themeName;\n }\n }\n}\n(0,_browser_editorExtensions_js__WEBPACK_IMPORTED_MODULE_0__.registerEditorAction)(ToggleHighContrast);\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/standalone/browser/toggleHighContrast/toggleHighContrast.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/standalone/common/monarch/monarchCommon.js":
/*!*********************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/standalone/common/monarch/monarchCommon.js ***!
\*********************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ createError: () => (/* binding */ createError),\n/* harmony export */ empty: () => (/* binding */ empty),\n/* harmony export */ findRules: () => (/* binding */ findRules),\n/* harmony export */ fixCase: () => (/* binding */ fixCase),\n/* harmony export */ isFuzzyAction: () => (/* binding */ isFuzzyAction),\n/* harmony export */ isFuzzyActionArr: () => (/* binding */ isFuzzyActionArr),\n/* harmony export */ isIAction: () => (/* binding */ isIAction),\n/* harmony export */ isString: () => (/* binding */ isString),\n/* harmony export */ log: () => (/* binding */ log),\n/* harmony export */ sanitize: () => (/* binding */ sanitize),\n/* harmony export */ stateExists: () => (/* binding */ stateExists),\n/* harmony export */ substituteMatches: () => (/* binding */ substituteMatches)\n/* harmony export */ });\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\nfunction isFuzzyActionArr(what) {\n return (Array.isArray(what));\n}\nfunction isFuzzyAction(what) {\n return !isFuzzyActionArr(what);\n}\nfunction isString(what) {\n return (typeof what === 'string');\n}\nfunction isIAction(what) {\n return !isString(what);\n}\n// Small helper functions\n/**\n * Is a string null, undefined, or empty?\n */\nfunction empty(s) {\n return (s ? false : true);\n}\n/**\n * Puts a string to lower case if 'ignoreCase' is set.\n */\nfunction fixCase(lexer, str) {\n return (lexer.ignoreCase && str ? str.toLowerCase() : str);\n}\n/**\n * Ensures there are no bad characters in a CSS token class.\n */\nfunction sanitize(s) {\n return s.replace(/[&<>'\"_]/g, '-'); // used on all output token CSS classes\n}\n// Logging\n/**\n * Logs a message.\n */\nfunction log(lexer, msg) {\n console.log(`${lexer.languageId}: ${msg}`);\n}\n// Throwing errors\nfunction createError(lexer, msg) {\n return new Error(`${lexer.languageId}: ${msg}`);\n}\n// Helper functions for rule finding and substitution\n/**\n * substituteMatches is used on lexer strings and can substitutes predefined patterns:\n * \t\t$$ => $\n * \t\t$# => id\n * \t\t$n => matched entry n\n * \t\t@attr => contents of lexer[attr]\n *\n * See documentation for more info\n */\nfunction substituteMatches(lexer, str, id, matches, state) {\n const re = /\\$((\\$)|(#)|(\\d\\d?)|[sS](\\d\\d?)|@(\\w+))/g;\n let stateMatches = null;\n return str.replace(re, function (full, sub, dollar, hash, n, s, attr, ofs, total) {\n if (!empty(dollar)) {\n return '$'; // $$\n }\n if (!empty(hash)) {\n return fixCase(lexer, id); // default $#\n }\n if (!empty(n) && n < matches.length) {\n return fixCase(lexer, matches[n]); // $n\n }\n if (!empty(attr) && lexer && typeof (lexer[attr]) === 'string') {\n return lexer[attr]; //@attribute\n }\n if (stateMatches === null) { // split state on demand\n stateMatches = state.split('.');\n stateMatches.unshift(state);\n }\n if (!empty(s) && s < stateMatches.length) {\n return fixCase(lexer, stateMatches[s]); //$Sn\n }\n return '';\n });\n}\n/**\n * Find the tokenizer rules for a specific state (i.e. next action)\n */\nfunction findRules(lexer, inState) {\n let state = inState;\n while (state && state.length > 0) {\n const rules = lexer.tokenizer[state];\n if (rules) {\n return rules;\n }\n const idx = state.lastIndexOf('.');\n if (idx < 0) {\n state = null; // no further parent\n }\n else {\n state = state.substr(0, idx);\n }\n }\n return null;\n}\n/**\n * Is a certain state defined? In contrast to 'findRules' this works on a ILexerMin.\n * This is used during compilation where we may know the defined states\n * but not yet whether the corresponding rules are correct.\n */\nfunction stateExists(lexer, inState) {\n let state = inState;\n while (state && state.length > 0) {\n const exist = lexer.stateNames[state];\n if (exist) {\n return true;\n }\n const idx = state.lastIndexOf('.');\n if (idx < 0) {\n state = null; // no further parent\n }\n else {\n state = state.substr(0, idx);\n }\n }\n return false;\n}\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/standalone/common/monarch/monarchCommon.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/standalone/common/monarch/monarchCompile.js":
/*!**********************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/standalone/common/monarch/monarchCompile.js ***!
\**********************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ compile: () => (/* binding */ compile)\n/* harmony export */ });\n/* harmony import */ var _monarchCommon_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./monarchCommon.js */ \"./node_modules/monaco-editor/esm/vs/editor/standalone/common/monarch/monarchCommon.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n/*\n * This module only exports 'compile' which compiles a JSON language definition\n * into a typed and checked ILexer definition.\n */\n\n/*\n * Type helpers\n *\n * Note: this is just for sanity checks on the JSON description which is\n * helpful for the programmer. No checks are done anymore once the lexer is\n * already 'compiled and checked'.\n *\n */\nfunction isArrayOf(elemType, obj) {\n if (!obj) {\n return false;\n }\n if (!(Array.isArray(obj))) {\n return false;\n }\n for (const el of obj) {\n if (!(elemType(el))) {\n return false;\n }\n }\n return true;\n}\nfunction bool(prop, defValue) {\n if (typeof prop === 'boolean') {\n return prop;\n }\n return defValue;\n}\nfunction string(prop, defValue) {\n if (typeof (prop) === 'string') {\n return prop;\n }\n return defValue;\n}\nfunction arrayToHash(array) {\n const result = {};\n for (const e of array) {\n result[e] = true;\n }\n return result;\n}\nfunction createKeywordMatcher(arr, caseInsensitive = false) {\n if (caseInsensitive) {\n arr = arr.map(function (x) { return x.toLowerCase(); });\n }\n const hash = arrayToHash(arr);\n if (caseInsensitive) {\n return function (word) {\n return hash[word.toLowerCase()] !== undefined && hash.hasOwnProperty(word.toLowerCase());\n };\n }\n else {\n return function (word) {\n return hash[word] !== undefined && hash.hasOwnProperty(word);\n };\n }\n}\n// Lexer helpers\n/**\n * Compiles a regular expression string, adding the 'i' flag if 'ignoreCase' is set, and the 'u' flag if 'unicode' is set.\n * Also replaces @\\w+ or sequences with the content of the specified attribute\n * @\\w+ replacement can be avoided by escaping `@` signs with another `@` sign.\n * @example /@attr/ will be replaced with the value of lexer[attr]\n * @example /@@text/ will not be replaced and will become /@text/.\n */\nfunction compileRegExp(lexer, str) {\n // @@ must be interpreted as a literal @, so we replace all occurences of @@ with a placeholder character\n str = str.replace(/@@/g, `\\x01`);\n let n = 0;\n let hadExpansion;\n do {\n hadExpansion = false;\n str = str.replace(/@(\\w+)/g, function (s, attr) {\n hadExpansion = true;\n let sub = '';\n if (typeof (lexer[attr]) === 'string') {\n sub = lexer[attr];\n }\n else if (lexer[attr] && lexer[attr] instanceof RegExp) {\n sub = lexer[attr].source;\n }\n else {\n if (lexer[attr] === undefined) {\n throw _monarchCommon_js__WEBPACK_IMPORTED_MODULE_0__.createError(lexer, 'language definition does not contain attribute \\'' + attr + '\\', used at: ' + str);\n }\n else {\n throw _monarchCommon_js__WEBPACK_IMPORTED_MODULE_0__.createError(lexer, 'attribute reference \\'' + attr + '\\' must be a string, used at: ' + str);\n }\n }\n return (_monarchCommon_js__WEBPACK_IMPORTED_MODULE_0__.empty(sub) ? '' : '(?:' + sub + ')');\n });\n n++;\n } while (hadExpansion && n < 5);\n // handle escaped @@\n str = str.replace(/\\x01/g, '@');\n const flags = (lexer.ignoreCase ? 'i' : '') + (lexer.unicode ? 'u' : '');\n return new RegExp(str, flags);\n}\n/**\n * Compiles guard functions for case matches.\n * This compiles 'cases' attributes into efficient match functions.\n *\n */\nfunction selectScrutinee(id, matches, state, num) {\n if (num < 0) {\n return id;\n }\n if (num < matches.length) {\n return matches[num];\n }\n if (num >= 100) {\n num = num - 100;\n const parts = state.split('.');\n parts.unshift(state);\n if (num < parts.length) {\n return parts[num];\n }\n }\n return null;\n}\nfunction createGuard(lexer, ruleName, tkey, val) {\n // get the scrutinee and pattern\n let scrut = -1; // -1: $!, 0-99: $n, 100+n: $Sn\n let oppat = tkey;\n let matches = tkey.match(/^\\$(([sS]?)(\\d\\d?)|#)(.*)$/);\n if (matches) {\n if (matches[3]) { // if digits\n scrut = parseInt(matches[3]);\n if (matches[2]) {\n scrut = scrut + 100; // if [sS] present\n }\n }\n oppat = matches[4];\n }\n // get operator\n let op = '~';\n let pat = oppat;\n if (!oppat || oppat.length === 0) {\n op = '!=';\n pat = '';\n }\n else if (/^\\w*$/.test(pat)) { // just a word\n op = '==';\n }\n else {\n matches = oppat.match(/^(@|!@|~|!~|==|!=)(.*)$/);\n if (matches) {\n op = matches[1];\n pat = matches[2];\n }\n }\n // set the tester function\n let tester;\n // special case a regexp that matches just words\n if ((op === '~' || op === '!~') && /^(\\w|\\|)*$/.test(pat)) {\n const inWords = createKeywordMatcher(pat.split('|'), lexer.ignoreCase);\n tester = function (s) { return (op === '~' ? inWords(s) : !inWords(s)); };\n }\n else if (op === '@' || op === '!@') {\n const words = lexer[pat];\n if (!words) {\n throw _monarchCommon_js__WEBPACK_IMPORTED_MODULE_0__.createError(lexer, 'the @ match target \\'' + pat + '\\' is not defined, in rule: ' + ruleName);\n }\n if (!(isArrayOf(function (elem) { return (typeof (elem) === 'string'); }, words))) {\n throw _monarchCommon_js__WEBPACK_IMPORTED_MODULE_0__.createError(lexer, 'the @ match target \\'' + pat + '\\' must be an array of strings, in rule: ' + ruleName);\n }\n const inWords = createKeywordMatcher(words, lexer.ignoreCase);\n tester = function (s) { return (op === '@' ? inWords(s) : !inWords(s)); };\n }\n else if (op === '~' || op === '!~') {\n if (pat.indexOf('$') < 0) {\n // precompile regular expression\n const re = compileRegExp(lexer, '^' + pat + '$');\n tester = function (s) { return (op === '~' ? re.test(s) : !re.test(s)); };\n }\n else {\n tester = function (s, id, matches, state) {\n const re = compileRegExp(lexer, '^' + _monarchCommon_js__WEBPACK_IMPORTED_MODULE_0__.substituteMatches(lexer, pat, id, matches, state) + '$');\n return re.test(s);\n };\n }\n }\n else { // if (op==='==' || op==='!=') {\n if (pat.indexOf('$') < 0) {\n const patx = _monarchCommon_js__WEBPACK_IMPORTED_MODULE_0__.fixCase(lexer, pat);\n tester = function (s) { return (op === '==' ? s === patx : s !== patx); };\n }\n else {\n const patx = _monarchCommon_js__WEBPACK_IMPORTED_MODULE_0__.fixCase(lexer, pat);\n tester = function (s, id, matches, state, eos) {\n const patexp = _monarchCommon_js__WEBPACK_IMPORTED_MODULE_0__.substituteMatches(lexer, patx, id, matches, state);\n return (op === '==' ? s === patexp : s !== patexp);\n };\n }\n }\n // return the branch object\n if (scrut === -1) {\n return {\n name: tkey, value: val, test: function (id, matches, state, eos) {\n return tester(id, id, matches, state, eos);\n }\n };\n }\n else {\n return {\n name: tkey, value: val, test: function (id, matches, state, eos) {\n const scrutinee = selectScrutinee(id, matches, state, scrut);\n return tester(!scrutinee ? '' : scrutinee, id, matches, state, eos);\n }\n };\n }\n}\n/**\n * Compiles an action: i.e. optimize regular expressions and case matches\n * and do many sanity checks.\n *\n * This is called only during compilation but if the lexer definition\n * contains user functions as actions (which is usually not allowed), then this\n * may be called during lexing. It is important therefore to compile common cases efficiently\n */\nfunction compileAction(lexer, ruleName, action) {\n if (!action) {\n return { token: '' };\n }\n else if (typeof (action) === 'string') {\n return action; // { token: action };\n }\n else if (action.token || action.token === '') {\n if (typeof (action.token) !== 'string') {\n throw _monarchCommon_js__WEBPACK_IMPORTED_MODULE_0__.createError(lexer, 'a \\'token\\' attribute must be of type string, in rule: ' + ruleName);\n }\n else {\n // only copy specific typed fields (only happens once during compile Lexer)\n const newAction = { token: action.token };\n if (action.token.indexOf('$') >= 0) {\n newAction.tokenSubst = true;\n }\n if (typeof (action.bracket) === 'string') {\n if (action.bracket === '@open') {\n newAction.bracket = 1 /* monarchCommon.MonarchBracket.Open */;\n }\n else if (action.bracket === '@close') {\n newAction.bracket = -1 /* monarchCommon.MonarchBracket.Close */;\n }\n else {\n throw _monarchCommon_js__WEBPACK_IMPORTED_MODULE_0__.createError(lexer, 'a \\'bracket\\' attribute must be either \\'@open\\' or \\'@close\\', in rule: ' + ruleName);\n }\n }\n if (action.next) {\n if (typeof (action.next) !== 'string') {\n throw _monarchCommon_js__WEBPACK_IMPORTED_MODULE_0__.createError(lexer, 'the next state must be a string value in rule: ' + ruleName);\n }\n else {\n let next = action.next;\n if (!/^(@pop|@push|@popall)$/.test(next)) {\n if (next[0] === '@') {\n next = next.substr(1); // peel off starting @ sign\n }\n if (next.indexOf('$') < 0) { // no dollar substitution, we can check if the state exists\n if (!_monarchCommon_js__WEBPACK_IMPORTED_MODULE_0__.stateExists(lexer, _monarchCommon_js__WEBPACK_IMPORTED_MODULE_0__.substituteMatches(lexer, next, '', [], ''))) {\n throw _monarchCommon_js__WEBPACK_IMPORTED_MODULE_0__.createError(lexer, 'the next state \\'' + action.next + '\\' is not defined in rule: ' + ruleName);\n }\n }\n }\n newAction.next = next;\n }\n }\n if (typeof (action.goBack) === 'number') {\n newAction.goBack = action.goBack;\n }\n if (typeof (action.switchTo) === 'string') {\n newAction.switchTo = action.switchTo;\n }\n if (typeof (action.log) === 'string') {\n newAction.log = action.log;\n }\n if (typeof (action.nextEmbedded) === 'string') {\n newAction.nextEmbedded = action.nextEmbedded;\n lexer.usesEmbedded = true;\n }\n return newAction;\n }\n }\n else if (Array.isArray(action)) {\n const results = [];\n for (let i = 0, len = action.length; i < len; i++) {\n results[i] = compileAction(lexer, ruleName, action[i]);\n }\n return { group: results };\n }\n else if (action.cases) {\n // build an array of test cases\n const cases = [];\n // for each case, push a test function and result value\n for (const tkey in action.cases) {\n if (action.cases.hasOwnProperty(tkey)) {\n const val = compileAction(lexer, ruleName, action.cases[tkey]);\n // what kind of case\n if (tkey === '@default' || tkey === '@' || tkey === '') {\n cases.push({ test: undefined, value: val, name: tkey });\n }\n else if (tkey === '@eos') {\n cases.push({ test: function (id, matches, state, eos) { return eos; }, value: val, name: tkey });\n }\n else {\n cases.push(createGuard(lexer, ruleName, tkey, val)); // call separate function to avoid local variable capture\n }\n }\n }\n // create a matching function\n const def = lexer.defaultToken;\n return {\n test: function (id, matches, state, eos) {\n for (const _case of cases) {\n const didmatch = (!_case.test || _case.test(id, matches, state, eos));\n if (didmatch) {\n return _case.value;\n }\n }\n return def;\n }\n };\n }\n else {\n throw _monarchCommon_js__WEBPACK_IMPORTED_MODULE_0__.createError(lexer, 'an action must be a string, an object with a \\'token\\' or \\'cases\\' attribute, or an array of actions; in rule: ' + ruleName);\n }\n}\n/**\n * Helper class for creating matching rules\n */\nclass Rule {\n constructor(name) {\n this.regex = new RegExp('');\n this.action = { token: '' };\n this.matchOnlyAtLineStart = false;\n this.name = '';\n this.name = name;\n }\n setRegex(lexer, re) {\n let sregex;\n if (typeof (re) === 'string') {\n sregex = re;\n }\n else if (re instanceof RegExp) {\n sregex = re.source;\n }\n else {\n throw _monarchCommon_js__WEBPACK_IMPORTED_MODULE_0__.createError(lexer, 'rules must start with a match string or regular expression: ' + this.name);\n }\n this.matchOnlyAtLineStart = (sregex.length > 0 && sregex[0] === '^');\n this.name = this.name + ': ' + sregex;\n this.regex = compileRegExp(lexer, '^(?:' + (this.matchOnlyAtLineStart ? sregex.substr(1) : sregex) + ')');\n }\n setAction(lexer, act) {\n this.action = compileAction(lexer, this.name, act);\n }\n}\n/**\n * Compiles a json description function into json where all regular expressions,\n * case matches etc, are compiled and all include rules are expanded.\n * We also compile the bracket definitions, supply defaults, and do many sanity checks.\n * If the 'jsonStrict' parameter is 'false', we allow at certain locations\n * regular expression objects and functions that get called during lexing.\n * (Currently we have no samples that need this so perhaps we should always have\n * jsonStrict to true).\n */\nfunction compile(languageId, json) {\n if (!json || typeof (json) !== 'object') {\n throw new Error('Monarch: expecting a language definition object');\n }\n // Create our lexer\n const lexer = {};\n lexer.languageId = languageId;\n lexer.includeLF = bool(json.includeLF, false);\n lexer.noThrow = false; // raise exceptions during compilation\n lexer.maxStack = 100;\n // Set standard fields: be defensive about types\n lexer.start = (typeof json.start === 'string' ? json.start : null);\n lexer.ignoreCase = bool(json.ignoreCase, false);\n lexer.unicode = bool(json.unicode, false);\n lexer.tokenPostfix = string(json.tokenPostfix, '.' + lexer.languageId);\n lexer.defaultToken = string(json.defaultToken, 'source');\n lexer.usesEmbedded = false; // becomes true if we find a nextEmbedded action\n // For calling compileAction later on\n const lexerMin = json;\n lexerMin.languageId = languageId;\n lexerMin.includeLF = lexer.includeLF;\n lexerMin.ignoreCase = lexer.ignoreCase;\n lexerMin.unicode = lexer.unicode;\n lexerMin.noThrow = lexer.noThrow;\n lexerMin.usesEmbedded = lexer.usesEmbedded;\n lexerMin.stateNames = json.tokenizer;\n lexerMin.defaultToken = lexer.defaultToken;\n // Compile an array of rules into newrules where RegExp objects are created.\n function addRules(state, newrules, rules) {\n for (const rule of rules) {\n let include = rule.include;\n if (include) {\n if (typeof (include) !== 'string') {\n throw _monarchCommon_js__WEBPACK_IMPORTED_MODULE_0__.createError(lexer, 'an \\'include\\' attribute must be a string at: ' + state);\n }\n if (include[0] === '@') {\n include = include.substr(1); // peel off starting @\n }\n if (!json.tokenizer[include]) {\n throw _monarchCommon_js__WEBPACK_IMPORTED_MODULE_0__.createError(lexer, 'include target \\'' + include + '\\' is not defined at: ' + state);\n }\n addRules(state + '.' + include, newrules, json.tokenizer[include]);\n }\n else {\n const newrule = new Rule(state);\n // Set up new rule attributes\n if (Array.isArray(rule) && rule.length >= 1 && rule.length <= 3) {\n newrule.setRegex(lexerMin, rule[0]);\n if (rule.length >= 3) {\n if (typeof (rule[1]) === 'string') {\n newrule.setAction(lexerMin, { token: rule[1], next: rule[2] });\n }\n else if (typeof (rule[1]) === 'object') {\n const rule1 = rule[1];\n rule1.next = rule[2];\n newrule.setAction(lexerMin, rule1);\n }\n else {\n throw _monarchCommon_js__WEBPACK_IMPORTED_MODULE_0__.createError(lexer, 'a next state as the last element of a rule can only be given if the action is either an object or a string, at: ' + state);\n }\n }\n else {\n newrule.setAction(lexerMin, rule[1]);\n }\n }\n else {\n if (!rule.regex) {\n throw _monarchCommon_js__WEBPACK_IMPORTED_MODULE_0__.createError(lexer, 'a rule must either be an array, or an object with a \\'regex\\' or \\'include\\' field at: ' + state);\n }\n if (rule.name) {\n if (typeof rule.name === 'string') {\n newrule.name = rule.name;\n }\n }\n if (rule.matchOnlyAtStart) {\n newrule.matchOnlyAtLineStart = bool(rule.matchOnlyAtLineStart, false);\n }\n newrule.setRegex(lexerMin, rule.regex);\n newrule.setAction(lexerMin, rule.action);\n }\n newrules.push(newrule);\n }\n }\n }\n // compile the tokenizer rules\n if (!json.tokenizer || typeof (json.tokenizer) !== 'object') {\n throw _monarchCommon_js__WEBPACK_IMPORTED_MODULE_0__.createError(lexer, 'a language definition must define the \\'tokenizer\\' attribute as an object');\n }\n lexer.tokenizer = [];\n for (const key in json.tokenizer) {\n if (json.tokenizer.hasOwnProperty(key)) {\n if (!lexer.start) {\n lexer.start = key;\n }\n const rules = json.tokenizer[key];\n lexer.tokenizer[key] = new Array();\n addRules('tokenizer.' + key, lexer.tokenizer[key], rules);\n }\n }\n lexer.usesEmbedded = lexerMin.usesEmbedded; // can be set during compileAction\n // Set simple brackets\n if (json.brackets) {\n if (!(Array.isArray(json.brackets))) {\n throw _monarchCommon_js__WEBPACK_IMPORTED_MODULE_0__.createError(lexer, 'the \\'brackets\\' attribute must be defined as an array');\n }\n }\n else {\n json.brackets = [\n { open: '{', close: '}', token: 'delimiter.curly' },\n { open: '[', close: ']', token: 'delimiter.square' },\n { open: '(', close: ')', token: 'delimiter.parenthesis' },\n { open: '<', close: '>', token: 'delimiter.angle' }\n ];\n }\n const brackets = [];\n for (const el of json.brackets) {\n let desc = el;\n if (desc && Array.isArray(desc) && desc.length === 3) {\n desc = { token: desc[2], open: desc[0], close: desc[1] };\n }\n if (desc.open === desc.close) {\n throw _monarchCommon_js__WEBPACK_IMPORTED_MODULE_0__.createError(lexer, 'open and close brackets in a \\'brackets\\' attribute must be different: ' + desc.open +\n '\\n hint: use the \\'bracket\\' attribute if matching on equal brackets is required.');\n }\n if (typeof desc.open === 'string' && typeof desc.token === 'string' && typeof desc.close === 'string') {\n brackets.push({\n token: desc.token + lexer.tokenPostfix,\n open: _monarchCommon_js__WEBPACK_IMPORTED_MODULE_0__.fixCase(lexer, desc.open),\n close: _monarchCommon_js__WEBPACK_IMPORTED_MODULE_0__.fixCase(lexer, desc.close)\n });\n }\n else {\n throw _monarchCommon_js__WEBPACK_IMPORTED_MODULE_0__.createError(lexer, 'every element in the \\'brackets\\' array must be a \\'{open,close,token}\\' object or array');\n }\n }\n lexer.brackets = brackets;\n // Disable throw so the syntax highlighter goes, no matter what\n lexer.noThrow = true;\n return lexer;\n}\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/standalone/common/monarch/monarchCompile.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/standalone/common/monarch/monarchLexer.js":
/*!********************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/standalone/common/monarch/monarchLexer.js ***!
\********************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ MonarchTokenizer: () => (/* binding */ MonarchTokenizer)\n/* harmony export */ });\n/* harmony import */ var _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../../base/common/lifecycle.js */ \"./node_modules/monaco-editor/esm/vs/base/common/lifecycle.js\");\n/* harmony import */ var _common_languages_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../common/languages.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/languages.js\");\n/* harmony import */ var _common_languages_nullTokenize_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../common/languages/nullTokenize.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/languages/nullTokenize.js\");\n/* harmony import */ var _monarchCommon_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./monarchCommon.js */ \"./node_modules/monaco-editor/esm/vs/editor/standalone/common/monarch/monarchCommon.js\");\n/* harmony import */ var _platform_configuration_common_configuration_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../../../platform/configuration/common/configuration.js */ \"./node_modules/monaco-editor/esm/vs/platform/configuration/common/configuration.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\nvar __decorate = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\n return c > 3 && r && Object.defineProperty(target, key, r), r;\n};\nvar __param = (undefined && undefined.__param) || function (paramIndex, decorator) {\n return function (target, key) { decorator(target, key, paramIndex); }\n};\nvar MonarchTokenizer_1;\n/**\n * Create a syntax highighter with a fully declarative JSON style lexer description\n * using regular expressions.\n */\n\n\n\n\n\nconst CACHE_STACK_DEPTH = 5;\n/**\n * Reuse the same stack elements up to a certain depth.\n */\nclass MonarchStackElementFactory {\n static create(parent, state) {\n return this._INSTANCE.create(parent, state);\n }\n constructor(maxCacheDepth) {\n this._maxCacheDepth = maxCacheDepth;\n this._entries = Object.create(null);\n }\n create(parent, state) {\n if (parent !== null && parent.depth >= this._maxCacheDepth) {\n // no caching above a certain depth\n return new MonarchStackElement(parent, state);\n }\n let stackElementId = MonarchStackElement.getStackElementId(parent);\n if (stackElementId.length > 0) {\n stackElementId += '|';\n }\n stackElementId += state;\n let result = this._entries[stackElementId];\n if (result) {\n return result;\n }\n result = new MonarchStackElement(parent, state);\n this._entries[stackElementId] = result;\n return result;\n }\n}\nMonarchStackElementFactory._INSTANCE = new MonarchStackElementFactory(CACHE_STACK_DEPTH);\nclass MonarchStackElement {\n constructor(parent, state) {\n this.parent = parent;\n this.state = state;\n this.depth = (this.parent ? this.parent.depth : 0) + 1;\n }\n static getStackElementId(element) {\n let result = '';\n while (element !== null) {\n if (result.length > 0) {\n result += '|';\n }\n result += element.state;\n element = element.parent;\n }\n return result;\n }\n static _equals(a, b) {\n while (a !== null && b !== null) {\n if (a === b) {\n return true;\n }\n if (a.state !== b.state) {\n return false;\n }\n a = a.parent;\n b = b.parent;\n }\n if (a === null && b === null) {\n return true;\n }\n return false;\n }\n equals(other) {\n return MonarchStackElement._equals(this, other);\n }\n push(state) {\n return MonarchStackElementFactory.create(this, state);\n }\n pop() {\n return this.parent;\n }\n popall() {\n let result = this;\n while (result.parent) {\n result = result.parent;\n }\n return result;\n }\n switchTo(state) {\n return MonarchStackElementFactory.create(this.parent, state);\n }\n}\nclass EmbeddedLanguageData {\n constructor(languageId, state) {\n this.languageId = languageId;\n this.state = state;\n }\n equals(other) {\n return (this.languageId === other.languageId\n && this.state.equals(other.state));\n }\n clone() {\n const stateClone = this.state.clone();\n // save an object\n if (stateClone === this.state) {\n return this;\n }\n return new EmbeddedLanguageData(this.languageId, this.state);\n }\n}\n/**\n * Reuse the same line states up to a certain depth.\n */\nclass MonarchLineStateFactory {\n static create(stack, embeddedLanguageData) {\n return this._INSTANCE.create(stack, embeddedLanguageData);\n }\n constructor(maxCacheDepth) {\n this._maxCacheDepth = maxCacheDepth;\n this._entries = Object.create(null);\n }\n create(stack, embeddedLanguageData) {\n if (embeddedLanguageData !== null) {\n // no caching when embedding\n return new MonarchLineState(stack, embeddedLanguageData);\n }\n if (stack !== null && stack.depth >= this._maxCacheDepth) {\n // no caching above a certain depth\n return new MonarchLineState(stack, embeddedLanguageData);\n }\n const stackElementId = MonarchStackElement.getStackElementId(stack);\n let result = this._entries[stackElementId];\n if (result) {\n return result;\n }\n result = new MonarchLineState(stack, null);\n this._entries[stackElementId] = result;\n return result;\n }\n}\nMonarchLineStateFactory._INSTANCE = new MonarchLineStateFactory(CACHE_STACK_DEPTH);\nclass MonarchLineState {\n constructor(stack, embeddedLanguageData) {\n this.stack = stack;\n this.embeddedLanguageData = embeddedLanguageData;\n }\n clone() {\n const embeddedlanguageDataClone = this.embeddedLanguageData ? this.embeddedLanguageData.clone() : null;\n // save an object\n if (embeddedlanguageDataClone === this.embeddedLanguageData) {\n return this;\n }\n return MonarchLineStateFactory.create(this.stack, this.embeddedLanguageData);\n }\n equals(other) {\n if (!(other instanceof MonarchLineState)) {\n return false;\n }\n if (!this.stack.equals(other.stack)) {\n return false;\n }\n if (this.embeddedLanguageData === null && other.embeddedLanguageData === null) {\n return true;\n }\n if (this.embeddedLanguageData === null || other.embeddedLanguageData === null) {\n return false;\n }\n return this.embeddedLanguageData.equals(other.embeddedLanguageData);\n }\n}\nclass MonarchClassicTokensCollector {\n constructor() {\n this._tokens = [];\n this._languageId = null;\n this._lastTokenType = null;\n this._lastTokenLanguage = null;\n }\n enterLanguage(languageId) {\n this._languageId = languageId;\n }\n emit(startOffset, type) {\n if (this._lastTokenType === type && this._lastTokenLanguage === this._languageId) {\n return;\n }\n this._lastTokenType = type;\n this._lastTokenLanguage = this._languageId;\n this._tokens.push(new _common_languages_js__WEBPACK_IMPORTED_MODULE_1__.Token(startOffset, type, this._languageId));\n }\n nestedLanguageTokenize(embeddedLanguageLine, hasEOL, embeddedLanguageData, offsetDelta) {\n const nestedLanguageId = embeddedLanguageData.languageId;\n const embeddedModeState = embeddedLanguageData.state;\n const nestedLanguageTokenizationSupport = _common_languages_js__WEBPACK_IMPORTED_MODULE_1__.TokenizationRegistry.get(nestedLanguageId);\n if (!nestedLanguageTokenizationSupport) {\n this.enterLanguage(nestedLanguageId);\n this.emit(offsetDelta, '');\n return embeddedModeState;\n }\n const nestedResult = nestedLanguageTokenizationSupport.tokenize(embeddedLanguageLine, hasEOL, embeddedModeState);\n if (offsetDelta !== 0) {\n for (const token of nestedResult.tokens) {\n this._tokens.push(new _common_languages_js__WEBPACK_IMPORTED_MODULE_1__.Token(token.offset + offsetDelta, token.type, token.language));\n }\n }\n else {\n this._tokens = this._tokens.concat(nestedResult.tokens);\n }\n this._lastTokenType = null;\n this._lastTokenLanguage = null;\n this._languageId = null;\n return nestedResult.endState;\n }\n finalize(endState) {\n return new _common_languages_js__WEBPACK_IMPORTED_MODULE_1__.TokenizationResult(this._tokens, endState);\n }\n}\nclass MonarchModernTokensCollector {\n constructor(languageService, theme) {\n this._languageService = languageService;\n this._theme = theme;\n this._prependTokens = null;\n this._tokens = [];\n this._currentLanguageId = 0 /* LanguageId.Null */;\n this._lastTokenMetadata = 0;\n }\n enterLanguage(languageId) {\n this._currentLanguageId = this._languageService.languageIdCodec.encodeLanguageId(languageId);\n }\n emit(startOffset, type) {\n const metadata = this._theme.match(this._currentLanguageId, type) | 1024 /* MetadataConsts.BALANCED_BRACKETS_MASK */;\n if (this._lastTokenMetadata === metadata) {\n return;\n }\n this._lastTokenMetadata = metadata;\n this._tokens.push(startOffset);\n this._tokens.push(metadata);\n }\n static _merge(a, b, c) {\n const aLen = (a !== null ? a.length : 0);\n const bLen = b.length;\n const cLen = (c !== null ? c.length : 0);\n if (aLen === 0 && bLen === 0 && cLen === 0) {\n return new Uint32Array(0);\n }\n if (aLen === 0 && bLen === 0) {\n return c;\n }\n if (bLen === 0 && cLen === 0) {\n return a;\n }\n const result = new Uint32Array(aLen + bLen + cLen);\n if (a !== null) {\n result.set(a);\n }\n for (let i = 0; i < bLen; i++) {\n result[aLen + i] = b[i];\n }\n if (c !== null) {\n result.set(c, aLen + bLen);\n }\n return result;\n }\n nestedLanguageTokenize(embeddedLanguageLine, hasEOL, embeddedLanguageData, offsetDelta) {\n const nestedLanguageId = embeddedLanguageData.languageId;\n const embeddedModeState = embeddedLanguageData.state;\n const nestedLanguageTokenizationSupport = _common_languages_js__WEBPACK_IMPORTED_MODULE_1__.TokenizationRegistry.get(nestedLanguageId);\n if (!nestedLanguageTokenizationSupport) {\n this.enterLanguage(nestedLanguageId);\n this.emit(offsetDelta, '');\n return embeddedModeState;\n }\n const nestedResult = nestedLanguageTokenizationSupport.tokenizeEncoded(embeddedLanguageLine, hasEOL, embeddedModeState);\n if (offsetDelta !== 0) {\n for (let i = 0, len = nestedResult.tokens.length; i < len; i += 2) {\n nestedResult.tokens[i] += offsetDelta;\n }\n }\n this._prependTokens = MonarchModernTokensCollector._merge(this._prependTokens, this._tokens, nestedResult.tokens);\n this._tokens = [];\n this._currentLanguageId = 0;\n this._lastTokenMetadata = 0;\n return nestedResult.endState;\n }\n finalize(endState) {\n return new _common_languages_js__WEBPACK_IMPORTED_MODULE_1__.EncodedTokenizationResult(MonarchModernTokensCollector._merge(this._prependTokens, this._tokens, null), endState);\n }\n}\nlet MonarchTokenizer = MonarchTokenizer_1 = class MonarchTokenizer extends _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_0__.Disposable {\n constructor(languageService, standaloneThemeService, languageId, lexer, _configurationService) {\n super();\n this._configurationService = _configurationService;\n this._languageService = languageService;\n this._standaloneThemeService = standaloneThemeService;\n this._languageId = languageId;\n this._lexer = lexer;\n this._embeddedLanguages = Object.create(null);\n this.embeddedLoaded = Promise.resolve(undefined);\n // Set up listening for embedded modes\n let emitting = false;\n this._register(_common_languages_js__WEBPACK_IMPORTED_MODULE_1__.TokenizationRegistry.onDidChange((e) => {\n if (emitting) {\n return;\n }\n let isOneOfMyEmbeddedModes = false;\n for (let i = 0, len = e.changedLanguages.length; i < len; i++) {\n const language = e.changedLanguages[i];\n if (this._embeddedLanguages[language]) {\n isOneOfMyEmbeddedModes = true;\n break;\n }\n }\n if (isOneOfMyEmbeddedModes) {\n emitting = true;\n _common_languages_js__WEBPACK_IMPORTED_MODULE_1__.TokenizationRegistry.handleChange([this._languageId]);\n emitting = false;\n }\n }));\n this._maxTokenizationLineLength = this._configurationService.getValue('editor.maxTokenizationLineLength', {\n overrideIdentifier: this._languageId\n });\n this._register(this._configurationService.onDidChangeConfiguration(e => {\n if (e.affectsConfiguration('editor.maxTokenizationLineLength')) {\n this._maxTokenizationLineLength = this._configurationService.getValue('editor.maxTokenizationLineLength', {\n overrideIdentifier: this._languageId\n });\n }\n }));\n }\n getLoadStatus() {\n const promises = [];\n for (const nestedLanguageId in this._embeddedLanguages) {\n const tokenizationSupport = _common_languages_js__WEBPACK_IMPORTED_MODULE_1__.TokenizationRegistry.get(nestedLanguageId);\n if (tokenizationSupport) {\n // The nested language is already loaded\n if (tokenizationSupport instanceof MonarchTokenizer_1) {\n const nestedModeStatus = tokenizationSupport.getLoadStatus();\n if (nestedModeStatus.loaded === false) {\n promises.push(nestedModeStatus.promise);\n }\n }\n continue;\n }\n if (!_common_languages_js__WEBPACK_IMPORTED_MODULE_1__.TokenizationRegistry.isResolved(nestedLanguageId)) {\n // The nested language is in the process of being loaded\n promises.push(_common_languages_js__WEBPACK_IMPORTED_MODULE_1__.TokenizationRegistry.getOrCreate(nestedLanguageId));\n }\n }\n if (promises.length === 0) {\n return {\n loaded: true\n };\n }\n return {\n loaded: false,\n promise: Promise.all(promises).then(_ => undefined)\n };\n }\n getInitialState() {\n const rootState = MonarchStackElementFactory.create(null, this._lexer.start);\n return MonarchLineStateFactory.create(rootState, null);\n }\n tokenize(line, hasEOL, lineState) {\n if (line.length >= this._maxTokenizationLineLength) {\n return (0,_common_languages_nullTokenize_js__WEBPACK_IMPORTED_MODULE_2__.nullTokenize)(this._languageId, lineState);\n }\n const tokensCollector = new MonarchClassicTokensCollector();\n const endLineState = this._tokenize(line, hasEOL, lineState, tokensCollector);\n return tokensCollector.finalize(endLineState);\n }\n tokenizeEncoded(line, hasEOL, lineState) {\n if (line.length >= this._maxTokenizationLineLength) {\n return (0,_common_languages_nullTokenize_js__WEBPACK_IMPORTED_MODULE_2__.nullTokenizeEncoded)(this._languageService.languageIdCodec.encodeLanguageId(this._languageId), lineState);\n }\n const tokensCollector = new MonarchModernTokensCollector(this._languageService, this._standaloneThemeService.getColorTheme().tokenTheme);\n const endLineState = this._tokenize(line, hasEOL, lineState, tokensCollector);\n return tokensCollector.finalize(endLineState);\n }\n _tokenize(line, hasEOL, lineState, collector) {\n if (lineState.embeddedLanguageData) {\n return this._nestedTokenize(line, hasEOL, lineState, 0, collector);\n }\n else {\n return this._myTokenize(line, hasEOL, lineState, 0, collector);\n }\n }\n _findLeavingNestedLanguageOffset(line, state) {\n let rules = this._lexer.tokenizer[state.stack.state];\n if (!rules) {\n rules = _monarchCommon_js__WEBPACK_IMPORTED_MODULE_3__.findRules(this._lexer, state.stack.state); // do parent matching\n if (!rules) {\n throw _monarchCommon_js__WEBPACK_IMPORTED_MODULE_3__.createError(this._lexer, 'tokenizer state is not defined: ' + state.stack.state);\n }\n }\n let popOffset = -1;\n let hasEmbeddedPopRule = false;\n for (const rule of rules) {\n if (!_monarchCommon_js__WEBPACK_IMPORTED_MODULE_3__.isIAction(rule.action) || rule.action.nextEmbedded !== '@pop') {\n continue;\n }\n hasEmbeddedPopRule = true;\n let regex = rule.regex;\n const regexSource = rule.regex.source;\n if (regexSource.substr(0, 4) === '^(?:' && regexSource.substr(regexSource.length - 1, 1) === ')') {\n const flags = (regex.ignoreCase ? 'i' : '') + (regex.unicode ? 'u' : '');\n regex = new RegExp(regexSource.substr(4, regexSource.length - 5), flags);\n }\n const result = line.search(regex);\n if (result === -1 || (result !== 0 && rule.matchOnlyAtLineStart)) {\n continue;\n }\n if (popOffset === -1 || result < popOffset) {\n popOffset = result;\n }\n }\n if (!hasEmbeddedPopRule) {\n throw _monarchCommon_js__WEBPACK_IMPORTED_MODULE_3__.createError(this._lexer, 'no rule containing nextEmbedded: \"@pop\" in tokenizer embedded state: ' + state.stack.state);\n }\n return popOffset;\n }\n _nestedTokenize(line, hasEOL, lineState, offsetDelta, tokensCollector) {\n const popOffset = this._findLeavingNestedLanguageOffset(line, lineState);\n if (popOffset === -1) {\n // tokenization will not leave nested language\n const nestedEndState = tokensCollector.nestedLanguageTokenize(line, hasEOL, lineState.embeddedLanguageData, offsetDelta);\n return MonarchLineStateFactory.create(lineState.stack, new EmbeddedLanguageData(lineState.embeddedLanguageData.languageId, nestedEndState));\n }\n const nestedLanguageLine = line.substring(0, popOffset);\n if (nestedLanguageLine.length > 0) {\n // tokenize with the nested language\n tokensCollector.nestedLanguageTokenize(nestedLanguageLine, false, lineState.embeddedLanguageData, offsetDelta);\n }\n const restOfTheLine = line.substring(popOffset);\n return this._myTokenize(restOfTheLine, hasEOL, lineState, offsetDelta + popOffset, tokensCollector);\n }\n _safeRuleName(rule) {\n if (rule) {\n return rule.name;\n }\n return '(unknown)';\n }\n _myTokenize(lineWithoutLF, hasEOL, lineState, offsetDelta, tokensCollector) {\n tokensCollector.enterLanguage(this._languageId);\n const lineWithoutLFLength = lineWithoutLF.length;\n const line = (hasEOL && this._lexer.includeLF ? lineWithoutLF + '\\n' : lineWithoutLF);\n const lineLength = line.length;\n let embeddedLanguageData = lineState.embeddedLanguageData;\n let stack = lineState.stack;\n let pos = 0;\n let groupMatching = null;\n // See https://github.com/microsoft/monaco-editor/issues/1235\n // Evaluate rules at least once for an empty line\n let forceEvaluation = true;\n while (forceEvaluation || pos < lineLength) {\n const pos0 = pos;\n const stackLen0 = stack.depth;\n const groupLen0 = groupMatching ? groupMatching.groups.length : 0;\n const state = stack.state;\n let matches = null;\n let matched = null;\n let action = null;\n let rule = null;\n let enteringEmbeddedLanguage = null;\n // check if we need to process group matches first\n if (groupMatching) {\n matches = groupMatching.matches;\n const groupEntry = groupMatching.groups.shift();\n matched = groupEntry.matched;\n action = groupEntry.action;\n rule = groupMatching.rule;\n // cleanup if necessary\n if (groupMatching.groups.length === 0) {\n groupMatching = null;\n }\n }\n else {\n // otherwise we match on the token stream\n if (!forceEvaluation && pos >= lineLength) {\n // nothing to do\n break;\n }\n forceEvaluation = false;\n // get the rules for this state\n let rules = this._lexer.tokenizer[state];\n if (!rules) {\n rules = _monarchCommon_js__WEBPACK_IMPORTED_MODULE_3__.findRules(this._lexer, state); // do parent matching\n if (!rules) {\n throw _monarchCommon_js__WEBPACK_IMPORTED_MODULE_3__.createError(this._lexer, 'tokenizer state is not defined: ' + state);\n }\n }\n // try each rule until we match\n const restOfLine = line.substr(pos);\n for (const rule of rules) {\n if (pos === 0 || !rule.matchOnlyAtLineStart) {\n matches = restOfLine.match(rule.regex);\n if (matches) {\n matched = matches[0];\n action = rule.action;\n break;\n }\n }\n }\n }\n // We matched 'rule' with 'matches' and 'action'\n if (!matches) {\n matches = [''];\n matched = '';\n }\n if (!action) {\n // bad: we didn't match anything, and there is no action to take\n // we need to advance the stream or we get progress trouble\n if (pos < lineLength) {\n matches = [line.charAt(pos)];\n matched = matches[0];\n }\n action = this._lexer.defaultToken;\n }\n if (matched === null) {\n // should never happen, needed for strict null checking\n break;\n }\n // advance stream\n pos += matched.length;\n // maybe call action function (used for 'cases')\n while (_monarchCommon_js__WEBPACK_IMPORTED_MODULE_3__.isFuzzyAction(action) && _monarchCommon_js__WEBPACK_IMPORTED_MODULE_3__.isIAction(action) && action.test) {\n action = action.test(matched, matches, state, pos === lineLength);\n }\n let result = null;\n // set the result: either a string or an array of actions\n if (typeof action === 'string' || Array.isArray(action)) {\n result = action;\n }\n else if (action.group) {\n result = action.group;\n }\n else if (action.token !== null && action.token !== undefined) {\n // do $n replacements?\n if (action.tokenSubst) {\n result = _monarchCommon_js__WEBPACK_IMPORTED_MODULE_3__.substituteMatches(this._lexer, action.token, matched, matches, state);\n }\n else {\n result = action.token;\n }\n // enter embedded language?\n if (action.nextEmbedded) {\n if (action.nextEmbedded === '@pop') {\n if (!embeddedLanguageData) {\n throw _monarchCommon_js__WEBPACK_IMPORTED_MODULE_3__.createError(this._lexer, 'cannot pop embedded language if not inside one');\n }\n embeddedLanguageData = null;\n }\n else if (embeddedLanguageData) {\n throw _monarchCommon_js__WEBPACK_IMPORTED_MODULE_3__.createError(this._lexer, 'cannot enter embedded language from within an embedded language');\n }\n else {\n enteringEmbeddedLanguage = _monarchCommon_js__WEBPACK_IMPORTED_MODULE_3__.substituteMatches(this._lexer, action.nextEmbedded, matched, matches, state);\n }\n }\n // state transformations\n if (action.goBack) { // back up the stream..\n pos = Math.max(0, pos - action.goBack);\n }\n if (action.switchTo && typeof action.switchTo === 'string') {\n let nextState = _monarchCommon_js__WEBPACK_IMPORTED_MODULE_3__.substituteMatches(this._lexer, action.switchTo, matched, matches, state); // switch state without a push...\n if (nextState[0] === '@') {\n nextState = nextState.substr(1); // peel off starting '@'\n }\n if (!_monarchCommon_js__WEBPACK_IMPORTED_MODULE_3__.findRules(this._lexer, nextState)) {\n throw _monarchCommon_js__WEBPACK_IMPORTED_MODULE_3__.createError(this._lexer, 'trying to switch to a state \\'' + nextState + '\\' that is undefined in rule: ' + this._safeRuleName(rule));\n }\n else {\n stack = stack.switchTo(nextState);\n }\n }\n else if (action.transform && typeof action.transform === 'function') {\n throw _monarchCommon_js__WEBPACK_IMPORTED_MODULE_3__.createError(this._lexer, 'action.transform not supported');\n }\n else if (action.next) {\n if (action.next === '@push') {\n if (stack.depth >= this._lexer.maxStack) {\n throw _monarchCommon_js__WEBPACK_IMPORTED_MODULE_3__.createError(this._lexer, 'maximum tokenizer stack size reached: [' +\n stack.state + ',' + stack.parent.state + ',...]');\n }\n else {\n stack = stack.push(state);\n }\n }\n else if (action.next === '@pop') {\n if (stack.depth <= 1) {\n throw _monarchCommon_js__WEBPACK_IMPORTED_MODULE_3__.createError(this._lexer, 'trying to pop an empty stack in rule: ' + this._safeRuleName(rule));\n }\n else {\n stack = stack.pop();\n }\n }\n else if (action.next === '@popall') {\n stack = stack.popall();\n }\n else {\n let nextState = _monarchCommon_js__WEBPACK_IMPORTED_MODULE_3__.substituteMatches(this._lexer, action.next, matched, matches, state);\n if (nextState[0] === '@') {\n nextState = nextState.substr(1); // peel off starting '@'\n }\n if (!_monarchCommon_js__WEBPACK_IMPORTED_MODULE_3__.findRules(this._lexer, nextState)) {\n throw _monarchCommon_js__WEBPACK_IMPORTED_MODULE_3__.createError(this._lexer, 'trying to set a next state \\'' + nextState + '\\' that is undefined in rule: ' + this._safeRuleName(rule));\n }\n else {\n stack = stack.push(nextState);\n }\n }\n }\n if (action.log && typeof (action.log) === 'string') {\n _monarchCommon_js__WEBPACK_IMPORTED_MODULE_3__.log(this._lexer, this._lexer.languageId + ': ' + _monarchCommon_js__WEBPACK_IMPORTED_MODULE_3__.substituteMatches(this._lexer, action.log, matched, matches, state));\n }\n }\n // check result\n if (result === null) {\n throw _monarchCommon_js__WEBPACK_IMPORTED_MODULE_3__.createError(this._lexer, 'lexer rule has no well-defined action in rule: ' + this._safeRuleName(rule));\n }\n const computeNewStateForEmbeddedLanguage = (enteringEmbeddedLanguage) => {\n // support language names, mime types, and language ids\n const languageId = (this._languageService.getLanguageIdByLanguageName(enteringEmbeddedLanguage)\n || this._languageService.getLanguageIdByMimeType(enteringEmbeddedLanguage)\n || enteringEmbeddedLanguage);\n const embeddedLanguageData = this._getNestedEmbeddedLanguageData(languageId);\n if (pos < lineLength) {\n // there is content from the embedded language on this line\n const restOfLine = lineWithoutLF.substr(pos);\n return this._nestedTokenize(restOfLine, hasEOL, MonarchLineStateFactory.create(stack, embeddedLanguageData), offsetDelta + pos, tokensCollector);\n }\n else {\n return MonarchLineStateFactory.create(stack, embeddedLanguageData);\n }\n };\n // is the result a group match?\n if (Array.isArray(result)) {\n if (groupMatching && groupMatching.groups.length > 0) {\n throw _monarchCommon_js__WEBPACK_IMPORTED_MODULE_3__.createError(this._lexer, 'groups cannot be nested: ' + this._safeRuleName(rule));\n }\n if (matches.length !== result.length + 1) {\n throw _monarchCommon_js__WEBPACK_IMPORTED_MODULE_3__.createError(this._lexer, 'matched number of groups does not match the number of actions in rule: ' + this._safeRuleName(rule));\n }\n let totalLen = 0;\n for (let i = 1; i < matches.length; i++) {\n totalLen += matches[i].length;\n }\n if (totalLen !== matched.length) {\n throw _monarchCommon_js__WEBPACK_IMPORTED_MODULE_3__.createError(this._lexer, 'with groups, all characters should be matched in consecutive groups in rule: ' + this._safeRuleName(rule));\n }\n groupMatching = {\n rule: rule,\n matches: matches,\n groups: []\n };\n for (let i = 0; i < result.length; i++) {\n groupMatching.groups[i] = {\n action: result[i],\n matched: matches[i + 1]\n };\n }\n pos -= matched.length;\n // call recursively to initiate first result match\n continue;\n }\n else {\n // regular result\n // check for '@rematch'\n if (result === '@rematch') {\n pos -= matched.length;\n matched = ''; // better set the next state too..\n matches = null;\n result = '';\n // Even though `@rematch` was specified, if `nextEmbedded` also specified,\n // a state transition should occur.\n if (enteringEmbeddedLanguage !== null) {\n return computeNewStateForEmbeddedLanguage(enteringEmbeddedLanguage);\n }\n }\n // check progress\n if (matched.length === 0) {\n if (lineLength === 0 || stackLen0 !== stack.depth || state !== stack.state || (!groupMatching ? 0 : groupMatching.groups.length) !== groupLen0) {\n continue;\n }\n else {\n throw _monarchCommon_js__WEBPACK_IMPORTED_MODULE_3__.createError(this._lexer, 'no progress in tokenizer in rule: ' + this._safeRuleName(rule));\n }\n }\n // return the result (and check for brace matching)\n // todo: for efficiency we could pre-sanitize tokenPostfix and substitutions\n let tokenType = null;\n if (_monarchCommon_js__WEBPACK_IMPORTED_MODULE_3__.isString(result) && result.indexOf('@brackets') === 0) {\n const rest = result.substr('@brackets'.length);\n const bracket = findBracket(this._lexer, matched);\n if (!bracket) {\n throw _monarchCommon_js__WEBPACK_IMPORTED_MODULE_3__.createError(this._lexer, '@brackets token returned but no bracket defined as: ' + matched);\n }\n tokenType = _monarchCommon_js__WEBPACK_IMPORTED_MODULE_3__.sanitize(bracket.token + rest);\n }\n else {\n const token = (result === '' ? '' : result + this._lexer.tokenPostfix);\n tokenType = _monarchCommon_js__WEBPACK_IMPORTED_MODULE_3__.sanitize(token);\n }\n if (pos0 < lineWithoutLFLength) {\n tokensCollector.emit(pos0 + offsetDelta, tokenType);\n }\n }\n if (enteringEmbeddedLanguage !== null) {\n return computeNewStateForEmbeddedLanguage(enteringEmbeddedLanguage);\n }\n }\n return MonarchLineStateFactory.create(stack, embeddedLanguageData);\n }\n _getNestedEmbeddedLanguageData(languageId) {\n if (!this._languageService.isRegisteredLanguageId(languageId)) {\n return new EmbeddedLanguageData(languageId, _common_languages_nullTokenize_js__WEBPACK_IMPORTED_MODULE_2__.NullState);\n }\n if (languageId !== this._languageId) {\n // Fire language loading event\n this._languageService.requestBasicLanguageFeatures(languageId);\n _common_languages_js__WEBPACK_IMPORTED_MODULE_1__.TokenizationRegistry.getOrCreate(languageId);\n this._embeddedLanguages[languageId] = true;\n }\n const tokenizationSupport = _common_languages_js__WEBPACK_IMPORTED_MODULE_1__.TokenizationRegistry.get(languageId);\n if (tokenizationSupport) {\n return new EmbeddedLanguageData(languageId, tokenizationSupport.getInitialState());\n }\n return new EmbeddedLanguageData(languageId, _common_languages_nullTokenize_js__WEBPACK_IMPORTED_MODULE_2__.NullState);\n }\n};\nMonarchTokenizer = MonarchTokenizer_1 = __decorate([\n __param(4, _platform_configuration_common_configuration_js__WEBPACK_IMPORTED_MODULE_4__.IConfigurationService)\n], MonarchTokenizer);\n\n/**\n * Searches for a bracket in the 'brackets' attribute that matches the input.\n */\nfunction findBracket(lexer, matched) {\n if (!matched) {\n return null;\n }\n matched = _monarchCommon_js__WEBPACK_IMPORTED_MODULE_3__.fixCase(lexer, matched);\n const brackets = lexer.brackets;\n for (const bracket of brackets) {\n if (bracket.open === matched) {\n return { token: bracket.token, bracketType: 1 /* monarchCommon.MonarchBracket.Open */ };\n }\n else if (bracket.close === matched) {\n return { token: bracket.token, bracketType: -1 /* monarchCommon.MonarchBracket.Close */ };\n }\n }\n return null;\n}\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/standalone/common/monarch/monarchLexer.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/standalone/common/standaloneTheme.js":
/*!***************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/standalone/common/standaloneTheme.js ***!
\***************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ IStandaloneThemeService: () => (/* binding */ IStandaloneThemeService)\n/* harmony export */ });\n/* harmony import */ var _platform_instantiation_common_instantiation_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../platform/instantiation/common/instantiation.js */ \"./node_modules/monaco-editor/esm/vs/platform/instantiation/common/instantiation.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\nconst IStandaloneThemeService = (0,_platform_instantiation_common_instantiation_js__WEBPACK_IMPORTED_MODULE_0__.createDecorator)('themeService');\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/standalone/common/standaloneTheme.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/editor/standalone/common/themes.js":
/*!******************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/editor/standalone/common/themes.js ***!
\******************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ hc_black: () => (/* binding */ hc_black),\n/* harmony export */ hc_light: () => (/* binding */ hc_light),\n/* harmony export */ vs: () => (/* binding */ vs),\n/* harmony export */ vs_dark: () => (/* binding */ vs_dark)\n/* harmony export */ });\n/* harmony import */ var _common_core_editorColorRegistry_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../common/core/editorColorRegistry.js */ \"./node_modules/monaco-editor/esm/vs/editor/common/core/editorColorRegistry.js\");\n/* harmony import */ var _platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../platform/theme/common/colorRegistry.js */ \"./node_modules/monaco-editor/esm/vs/platform/theme/common/colorRegistry.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n\n/* -------------------------------- Begin vs theme -------------------------------- */\nconst vs = {\n base: 'vs',\n inherit: false,\n rules: [\n { token: '', foreground: '000000', background: 'fffffe' },\n { token: 'invalid', foreground: 'cd3131' },\n { token: 'emphasis', fontStyle: 'italic' },\n { token: 'strong', fontStyle: 'bold' },\n { token: 'variable', foreground: '001188' },\n { token: 'variable.predefined', foreground: '4864AA' },\n { token: 'constant', foreground: 'dd0000' },\n { token: 'comment', foreground: '008000' },\n { token: 'number', foreground: '098658' },\n { token: 'number.hex', foreground: '3030c0' },\n { token: 'regexp', foreground: '800000' },\n { token: 'annotation', foreground: '808080' },\n { token: 'type', foreground: '008080' },\n { token: 'delimiter', foreground: '000000' },\n { token: 'delimiter.html', foreground: '383838' },\n { token: 'delimiter.xml', foreground: '0000FF' },\n { token: 'tag', foreground: '800000' },\n { token: 'tag.id.pug', foreground: '4F76AC' },\n { token: 'tag.class.pug', foreground: '4F76AC' },\n { token: 'meta.scss', foreground: '800000' },\n { token: 'metatag', foreground: 'e00000' },\n { token: 'metatag.content.html', foreground: 'FF0000' },\n { token: 'metatag.html', foreground: '808080' },\n { token: 'metatag.xml', foreground: '808080' },\n { token: 'metatag.php', fontStyle: 'bold' },\n { token: 'key', foreground: '863B00' },\n { token: 'string.key.json', foreground: 'A31515' },\n { token: 'string.value.json', foreground: '0451A5' },\n { token: 'attribute.name', foreground: 'FF0000' },\n { token: 'attribute.value', foreground: '0451A5' },\n { token: 'attribute.value.number', foreground: '098658' },\n { token: 'attribute.value.unit', foreground: '098658' },\n { token: 'attribute.value.html', foreground: '0000FF' },\n { token: 'attribute.value.xml', foreground: '0000FF' },\n { token: 'string', foreground: 'A31515' },\n { token: 'string.html', foreground: '0000FF' },\n { token: 'string.sql', foreground: 'FF0000' },\n { token: 'string.yaml', foreground: '0451A5' },\n { token: 'keyword', foreground: '0000FF' },\n { token: 'keyword.json', foreground: '0451A5' },\n { token: 'keyword.flow', foreground: 'AF00DB' },\n { token: 'keyword.flow.scss', foreground: '0000FF' },\n { token: 'operator.scss', foreground: '666666' },\n { token: 'operator.sql', foreground: '778899' },\n { token: 'operator.swift', foreground: '666666' },\n { token: 'predefined.sql', foreground: 'C700C7' },\n ],\n colors: {\n [_platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_1__.editorBackground]: '#FFFFFE',\n [_platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_1__.editorForeground]: '#000000',\n [_platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_1__.editorInactiveSelection]: '#E5EBF1',\n [_common_core_editorColorRegistry_js__WEBPACK_IMPORTED_MODULE_0__.editorIndentGuide1]: '#D3D3D3',\n [_common_core_editorColorRegistry_js__WEBPACK_IMPORTED_MODULE_0__.editorActiveIndentGuide1]: '#939393',\n [_platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_1__.editorSelectionHighlight]: '#ADD6FF4D'\n }\n};\n/* -------------------------------- End vs theme -------------------------------- */\n/* -------------------------------- Begin vs-dark theme -------------------------------- */\nconst vs_dark = {\n base: 'vs-dark',\n inherit: false,\n rules: [\n { token: '', foreground: 'D4D4D4', background: '1E1E1E' },\n { token: 'invalid', foreground: 'f44747' },\n { token: 'emphasis', fontStyle: 'italic' },\n { token: 'strong', fontStyle: 'bold' },\n { token: 'variable', foreground: '74B0DF' },\n { token: 'variable.predefined', foreground: '4864AA' },\n { token: 'variable.parameter', foreground: '9CDCFE' },\n { token: 'constant', foreground: '569CD6' },\n { token: 'comment', foreground: '608B4E' },\n { token: 'number', foreground: 'B5CEA8' },\n { token: 'number.hex', foreground: '5BB498' },\n { token: 'regexp', foreground: 'B46695' },\n { token: 'annotation', foreground: 'cc6666' },\n { token: 'type', foreground: '3DC9B0' },\n { token: 'delimiter', foreground: 'DCDCDC' },\n { token: 'delimiter.html', foreground: '808080' },\n { token: 'delimiter.xml', foreground: '808080' },\n { token: 'tag', foreground: '569CD6' },\n { token: 'tag.id.pug', foreground: '4F76AC' },\n { token: 'tag.class.pug', foreground: '4F76AC' },\n { token: 'meta.scss', foreground: 'A79873' },\n { token: 'meta.tag', foreground: 'CE9178' },\n { token: 'metatag', foreground: 'DD6A6F' },\n { token: 'metatag.content.html', foreground: '9CDCFE' },\n { token: 'metatag.html', foreground: '569CD6' },\n { token: 'metatag.xml', foreground: '569CD6' },\n { token: 'metatag.php', fontStyle: 'bold' },\n { token: 'key', foreground: '9CDCFE' },\n { token: 'string.key.json', foreground: '9CDCFE' },\n { token: 'string.value.json', foreground: 'CE9178' },\n { token: 'attribute.name', foreground: '9CDCFE' },\n { token: 'attribute.value', foreground: 'CE9178' },\n { token: 'attribute.value.number.css', foreground: 'B5CEA8' },\n { token: 'attribute.value.unit.css', foreground: 'B5CEA8' },\n { token: 'attribute.value.hex.css', foreground: 'D4D4D4' },\n { token: 'string', foreground: 'CE9178' },\n { token: 'string.sql', foreground: 'FF0000' },\n { token: 'keyword', foreground: '569CD6' },\n { token: 'keyword.flow', foreground: 'C586C0' },\n { token: 'keyword.json', foreground: 'CE9178' },\n { token: 'keyword.flow.scss', foreground: '569CD6' },\n { token: 'operator.scss', foreground: '909090' },\n { token: 'operator.sql', foreground: '778899' },\n { token: 'operator.swift', foreground: '909090' },\n { token: 'predefined.sql', foreground: 'FF00FF' },\n ],\n colors: {\n [_platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_1__.editorBackground]: '#1E1E1E',\n [_platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_1__.editorForeground]: '#D4D4D4',\n [_platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_1__.editorInactiveSelection]: '#3A3D41',\n [_common_core_editorColorRegistry_js__WEBPACK_IMPORTED_MODULE_0__.editorIndentGuide1]: '#404040',\n [_common_core_editorColorRegistry_js__WEBPACK_IMPORTED_MODULE_0__.editorActiveIndentGuide1]: '#707070',\n [_platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_1__.editorSelectionHighlight]: '#ADD6FF26'\n }\n};\n/* -------------------------------- End vs-dark theme -------------------------------- */\n/* -------------------------------- Begin hc-black theme -------------------------------- */\nconst hc_black = {\n base: 'hc-black',\n inherit: false,\n rules: [\n { token: '', foreground: 'FFFFFF', background: '000000' },\n { token: 'invalid', foreground: 'f44747' },\n { token: 'emphasis', fontStyle: 'italic' },\n { token: 'strong', fontStyle: 'bold' },\n { token: 'variable', foreground: '1AEBFF' },\n { token: 'variable.parameter', foreground: '9CDCFE' },\n { token: 'constant', foreground: '569CD6' },\n { token: 'comment', foreground: '608B4E' },\n { token: 'number', foreground: 'FFFFFF' },\n { token: 'regexp', foreground: 'C0C0C0' },\n { token: 'annotation', foreground: '569CD6' },\n { token: 'type', foreground: '3DC9B0' },\n { token: 'delimiter', foreground: 'FFFF00' },\n { token: 'delimiter.html', foreground: 'FFFF00' },\n { token: 'tag', foreground: '569CD6' },\n { token: 'tag.id.pug', foreground: '4F76AC' },\n { token: 'tag.class.pug', foreground: '4F76AC' },\n { token: 'meta', foreground: 'D4D4D4' },\n { token: 'meta.tag', foreground: 'CE9178' },\n { token: 'metatag', foreground: '569CD6' },\n { token: 'metatag.content.html', foreground: '1AEBFF' },\n { token: 'metatag.html', foreground: '569CD6' },\n { token: 'metatag.xml', foreground: '569CD6' },\n { token: 'metatag.php', fontStyle: 'bold' },\n { token: 'key', foreground: '9CDCFE' },\n { token: 'string.key', foreground: '9CDCFE' },\n { token: 'string.value', foreground: 'CE9178' },\n { token: 'attribute.name', foreground: '569CD6' },\n { token: 'attribute.value', foreground: '3FF23F' },\n { token: 'string', foreground: 'CE9178' },\n { token: 'string.sql', foreground: 'FF0000' },\n { token: 'keyword', foreground: '569CD6' },\n { token: 'keyword.flow', foreground: 'C586C0' },\n { token: 'operator.sql', foreground: '778899' },\n { token: 'operator.swift', foreground: '909090' },\n { token: 'predefined.sql', foreground: 'FF00FF' },\n ],\n colors: {\n [_platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_1__.editorBackground]: '#000000',\n [_platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_1__.editorForeground]: '#FFFFFF',\n [_common_core_editorColorRegistry_js__WEBPACK_IMPORTED_MODULE_0__.editorIndentGuide1]: '#FFFFFF',\n [_common_core_editorColorRegistry_js__WEBPACK_IMPORTED_MODULE_0__.editorActiveIndentGuide1]: '#FFFFFF',\n }\n};\n/* -------------------------------- End hc-black theme -------------------------------- */\n/* -------------------------------- Begin hc-light theme -------------------------------- */\nconst hc_light = {\n base: 'hc-light',\n inherit: false,\n rules: [\n { token: '', foreground: '292929', background: 'FFFFFF' },\n { token: 'invalid', foreground: 'B5200D' },\n { token: 'emphasis', fontStyle: 'italic' },\n { token: 'strong', fontStyle: 'bold' },\n { token: 'variable', foreground: '264F70' },\n { token: 'variable.predefined', foreground: '4864AA' },\n { token: 'constant', foreground: 'dd0000' },\n { token: 'comment', foreground: '008000' },\n { token: 'number', foreground: '098658' },\n { token: 'number.hex', foreground: '3030c0' },\n { token: 'regexp', foreground: '800000' },\n { token: 'annotation', foreground: '808080' },\n { token: 'type', foreground: '008080' },\n { token: 'delimiter', foreground: '000000' },\n { token: 'delimiter.html', foreground: '383838' },\n { token: 'tag', foreground: '800000' },\n { token: 'tag.id.pug', foreground: '4F76AC' },\n { token: 'tag.class.pug', foreground: '4F76AC' },\n { token: 'meta.scss', foreground: '800000' },\n { token: 'metatag', foreground: 'e00000' },\n { token: 'metatag.content.html', foreground: 'B5200D' },\n { token: 'metatag.html', foreground: '808080' },\n { token: 'metatag.xml', foreground: '808080' },\n { token: 'metatag.php', fontStyle: 'bold' },\n { token: 'key', foreground: '863B00' },\n { token: 'string.key.json', foreground: 'A31515' },\n { token: 'string.value.json', foreground: '0451A5' },\n { token: 'attribute.name', foreground: '264F78' },\n { token: 'attribute.value', foreground: '0451A5' },\n { token: 'string', foreground: 'A31515' },\n { token: 'string.sql', foreground: 'B5200D' },\n { token: 'keyword', foreground: '0000FF' },\n { token: 'keyword.flow', foreground: 'AF00DB' },\n { token: 'operator.sql', foreground: '778899' },\n { token: 'operator.swift', foreground: '666666' },\n { token: 'predefined.sql', foreground: 'C700C7' },\n ],\n colors: {\n [_platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_1__.editorBackground]: '#FFFFFF',\n [_platform_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_1__.editorForeground]: '#292929',\n [_common_core_editorColorRegistry_js__WEBPACK_IMPORTED_MODULE_0__.editorIndentGuide1]: '#292929',\n [_common_core_editorColorRegistry_js__WEBPACK_IMPORTED_MODULE_0__.editorActiveIndentGuide1]: '#292929',\n }\n};\n/* -------------------------------- End hc-light theme -------------------------------- */\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/editor/standalone/common/themes.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/language/css/monaco.contribution.js":
/*!*******************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/language/css/monaco.contribution.js ***!
\*******************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ cssDefaults: () => (/* binding */ cssDefaults),\n/* harmony export */ lessDefaults: () => (/* binding */ lessDefaults),\n/* harmony export */ scssDefaults: () => (/* binding */ scssDefaults)\n/* harmony export */ });\n/* harmony import */ var _editor_editor_api_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../editor/editor.api.js */ \"include-loader!./node_modules/monaco-editor/esm/vs/editor/editor.api.js\");\n\n/*!-----------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Version: 0.47.0(69991d66135e4a1fc1cf0b1ac4ad25d429866a0d)\n * Released under the MIT license\n * https://github.com/microsoft/monaco-editor/blob/main/LICENSE.txt\n *-----------------------------------------------------------------------------*/\n\nvar __defProp = Object.defineProperty;\nvar __getOwnPropDesc = Object.getOwnPropertyDescriptor;\nvar __getOwnPropNames = Object.getOwnPropertyNames;\nvar __hasOwnProp = Object.prototype.hasOwnProperty;\nvar __copyProps = (to, from, except, desc) => {\n if (from && typeof from === \"object\" || typeof from === \"function\") {\n for (let key of __getOwnPropNames(from))\n if (!__hasOwnProp.call(to, key) && key !== except)\n __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });\n }\n return to;\n};\nvar __reExport = (target, mod, secondTarget) => (__copyProps(target, mod, \"default\"), secondTarget && __copyProps(secondTarget, mod, \"default\"));\n\n// src/fillers/monaco-editor-core.ts\nvar monaco_editor_core_exports = {};\n__reExport(monaco_editor_core_exports, _editor_editor_api_js__WEBPACK_IMPORTED_MODULE_0__);\n\n\n// src/language/css/monaco.contribution.ts\nvar LanguageServiceDefaultsImpl = class {\n constructor(languageId, options, modeConfiguration) {\n this._onDidChange = new monaco_editor_core_exports.Emitter();\n this._languageId = languageId;\n this.setOptions(options);\n this.setModeConfiguration(modeConfiguration);\n }\n get onDidChange() {\n return this._onDidChange.event;\n }\n get languageId() {\n return this._languageId;\n }\n get modeConfiguration() {\n return this._modeConfiguration;\n }\n get diagnosticsOptions() {\n return this.options;\n }\n get options() {\n return this._options;\n }\n setOptions(options) {\n this._options = options || /* @__PURE__ */ Object.create(null);\n this._onDidChange.fire(this);\n }\n setDiagnosticsOptions(options) {\n this.setOptions(options);\n }\n setModeConfiguration(modeConfiguration) {\n this._modeConfiguration = modeConfiguration || /* @__PURE__ */ Object.create(null);\n this._onDidChange.fire(this);\n }\n};\nvar optionsDefault = {\n validate: true,\n lint: {\n compatibleVendorPrefixes: \"ignore\",\n vendorPrefix: \"warning\",\n duplicateProperties: \"warning\",\n emptyRules: \"warning\",\n importStatement: \"ignore\",\n boxModel: \"ignore\",\n universalSelector: \"ignore\",\n zeroUnits: \"ignore\",\n fontFaceProperties: \"warning\",\n hexColorLength: \"error\",\n argumentsInColorFunction: \"error\",\n unknownProperties: \"warning\",\n ieHack: \"ignore\",\n unknownVendorSpecificProperties: \"ignore\",\n propertyIgnoredDueToDisplay: \"warning\",\n important: \"ignore\",\n float: \"ignore\",\n idSelector: \"ignore\"\n },\n data: { useDefaultDataProvider: true },\n format: {\n newlineBetweenSelectors: true,\n newlineBetweenRules: true,\n spaceAroundSelectorSeparator: false,\n braceStyle: \"collapse\",\n maxPreserveNewLines: void 0,\n preserveNewLines: true\n }\n};\nvar modeConfigurationDefault = {\n completionItems: true,\n hovers: true,\n documentSymbols: true,\n definitions: true,\n references: true,\n documentHighlights: true,\n rename: true,\n colors: true,\n foldingRanges: true,\n diagnostics: true,\n selectionRanges: true,\n documentFormattingEdits: true,\n documentRangeFormattingEdits: true\n};\nvar cssDefaults = new LanguageServiceDefaultsImpl(\n \"css\",\n optionsDefault,\n modeConfigurationDefault\n);\nvar scssDefaults = new LanguageServiceDefaultsImpl(\n \"scss\",\n optionsDefault,\n modeConfigurationDefault\n);\nvar lessDefaults = new LanguageServiceDefaultsImpl(\n \"less\",\n optionsDefault,\n modeConfigurationDefault\n);\nmonaco_editor_core_exports.languages.css = { cssDefaults, lessDefaults, scssDefaults };\nfunction getMode() {\n if (false) {} else {\n return __webpack_require__.e(/*! import() */ \"vendors-node_modules_monaco-editor_esm_vs_language_css_cssMode_js\").then(__webpack_require__.bind(__webpack_require__, /*! ./cssMode.js */ \"./node_modules/monaco-editor/esm/vs/language/css/cssMode.js\"));\n }\n}\nmonaco_editor_core_exports.languages.onLanguage(\"less\", () => {\n getMode().then((mode) => mode.setupMode(lessDefaults));\n});\nmonaco_editor_core_exports.languages.onLanguage(\"scss\", () => {\n getMode().then((mode) => mode.setupMode(scssDefaults));\n});\nmonaco_editor_core_exports.languages.onLanguage(\"css\", () => {\n getMode().then((mode) => mode.setupMode(cssDefaults));\n});\n\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/language/css/monaco.contribution.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/language/html/monaco.contribution.js":
/*!********************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/language/html/monaco.contribution.js ***!
\********************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ handlebarDefaults: () => (/* binding */ handlebarDefaults),\n/* harmony export */ handlebarLanguageService: () => (/* binding */ handlebarLanguageService),\n/* harmony export */ htmlDefaults: () => (/* binding */ htmlDefaults),\n/* harmony export */ htmlLanguageService: () => (/* binding */ htmlLanguageService),\n/* harmony export */ razorDefaults: () => (/* binding */ razorDefaults),\n/* harmony export */ razorLanguageService: () => (/* binding */ razorLanguageService),\n/* harmony export */ registerHTMLLanguageService: () => (/* binding */ registerHTMLLanguageService)\n/* harmony export */ });\n/* harmony import */ var _editor_editor_api_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../editor/editor.api.js */ \"include-loader!./node_modules/monaco-editor/esm/vs/editor/editor.api.js\");\n\n/*!-----------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Version: 0.47.0(69991d66135e4a1fc1cf0b1ac4ad25d429866a0d)\n * Released under the MIT license\n * https://github.com/microsoft/monaco-editor/blob/main/LICENSE.txt\n *-----------------------------------------------------------------------------*/\n\nvar __defProp = Object.defineProperty;\nvar __getOwnPropDesc = Object.getOwnPropertyDescriptor;\nvar __getOwnPropNames = Object.getOwnPropertyNames;\nvar __hasOwnProp = Object.prototype.hasOwnProperty;\nvar __copyProps = (to, from, except, desc) => {\n if (from && typeof from === \"object\" || typeof from === \"function\") {\n for (let key of __getOwnPropNames(from))\n if (!__hasOwnProp.call(to, key) && key !== except)\n __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });\n }\n return to;\n};\nvar __reExport = (target, mod, secondTarget) => (__copyProps(target, mod, \"default\"), secondTarget && __copyProps(secondTarget, mod, \"default\"));\n\n// src/fillers/monaco-editor-core.ts\nvar monaco_editor_core_exports = {};\n__reExport(monaco_editor_core_exports, _editor_editor_api_js__WEBPACK_IMPORTED_MODULE_0__);\n\n\n// src/language/html/monaco.contribution.ts\nvar LanguageServiceDefaultsImpl = class {\n constructor(languageId, options, modeConfiguration) {\n this._onDidChange = new monaco_editor_core_exports.Emitter();\n this._languageId = languageId;\n this.setOptions(options);\n this.setModeConfiguration(modeConfiguration);\n }\n get onDidChange() {\n return this._onDidChange.event;\n }\n get languageId() {\n return this._languageId;\n }\n get options() {\n return this._options;\n }\n get modeConfiguration() {\n return this._modeConfiguration;\n }\n setOptions(options) {\n this._options = options || /* @__PURE__ */ Object.create(null);\n this._onDidChange.fire(this);\n }\n setModeConfiguration(modeConfiguration) {\n this._modeConfiguration = modeConfiguration || /* @__PURE__ */ Object.create(null);\n this._onDidChange.fire(this);\n }\n};\nvar formatDefaults = {\n tabSize: 4,\n insertSpaces: false,\n wrapLineLength: 120,\n unformatted: 'default\": \"a, abbr, acronym, b, bdo, big, br, button, cite, code, dfn, em, i, img, input, kbd, label, map, object, q, samp, select, small, span, strong, sub, sup, textarea, tt, var',\n contentUnformatted: \"pre\",\n indentInnerHtml: false,\n preserveNewLines: true,\n maxPreserveNewLines: void 0,\n indentHandlebars: false,\n endWithNewline: false,\n extraLiners: \"head, body, /html\",\n wrapAttributes: \"auto\"\n};\nvar optionsDefault = {\n format: formatDefaults,\n suggest: {},\n data: { useDefaultDataProvider: true }\n};\nfunction getConfigurationDefault(languageId) {\n return {\n completionItems: true,\n hovers: true,\n documentSymbols: true,\n links: true,\n documentHighlights: true,\n rename: true,\n colors: true,\n foldingRanges: true,\n selectionRanges: true,\n diagnostics: languageId === htmlLanguageId,\n // turned off for Razor and Handlebar\n documentFormattingEdits: languageId === htmlLanguageId,\n // turned off for Razor and Handlebar\n documentRangeFormattingEdits: languageId === htmlLanguageId\n // turned off for Razor and Handlebar\n };\n}\nvar htmlLanguageId = \"html\";\nvar handlebarsLanguageId = \"handlebars\";\nvar razorLanguageId = \"razor\";\nvar htmlLanguageService = registerHTMLLanguageService(\n htmlLanguageId,\n optionsDefault,\n getConfigurationDefault(htmlLanguageId)\n);\nvar htmlDefaults = htmlLanguageService.defaults;\nvar handlebarLanguageService = registerHTMLLanguageService(\n handlebarsLanguageId,\n optionsDefault,\n getConfigurationDefault(handlebarsLanguageId)\n);\nvar handlebarDefaults = handlebarLanguageService.defaults;\nvar razorLanguageService = registerHTMLLanguageService(\n razorLanguageId,\n optionsDefault,\n getConfigurationDefault(razorLanguageId)\n);\nvar razorDefaults = razorLanguageService.defaults;\nmonaco_editor_core_exports.languages.html = {\n htmlDefaults,\n razorDefaults,\n handlebarDefaults,\n htmlLanguageService,\n handlebarLanguageService,\n razorLanguageService,\n registerHTMLLanguageService\n};\nfunction getMode() {\n if (false) {} else {\n return __webpack_require__.e(/*! import() */ \"vendors-node_modules_monaco-editor_esm_vs_language_html_htmlMode_js\").then(__webpack_require__.bind(__webpack_require__, /*! ./htmlMode.js */ \"./node_modules/monaco-editor/esm/vs/language/html/htmlMode.js\"));\n }\n}\nfunction registerHTMLLanguageService(languageId, options = optionsDefault, modeConfiguration = getConfigurationDefault(languageId)) {\n const defaults = new LanguageServiceDefaultsImpl(languageId, options, modeConfiguration);\n let mode;\n const onLanguageListener = monaco_editor_core_exports.languages.onLanguage(languageId, async () => {\n mode = (await getMode()).setupMode(defaults);\n });\n return {\n defaults,\n dispose() {\n onLanguageListener.dispose();\n mode?.dispose();\n mode = void 0;\n }\n };\n}\n\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/language/html/monaco.contribution.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/language/json/monaco.contribution.js":
/*!********************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/language/json/monaco.contribution.js ***!
\********************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ getWorker: () => (/* binding */ getWorker),\n/* harmony export */ jsonDefaults: () => (/* binding */ jsonDefaults)\n/* harmony export */ });\n/* harmony import */ var _editor_editor_api_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../editor/editor.api.js */ \"include-loader!./node_modules/monaco-editor/esm/vs/editor/editor.api.js\");\n\n/*!-----------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Version: 0.47.0(69991d66135e4a1fc1cf0b1ac4ad25d429866a0d)\n * Released under the MIT license\n * https://github.com/microsoft/monaco-editor/blob/main/LICENSE.txt\n *-----------------------------------------------------------------------------*/\n\n\n// src/language/json/monaco.contribution.ts\n\nvar LanguageServiceDefaultsImpl = class {\n constructor(languageId, diagnosticsOptions, modeConfiguration) {\n this._onDidChange = new _editor_editor_api_js__WEBPACK_IMPORTED_MODULE_0__.Emitter();\n this._languageId = languageId;\n this.setDiagnosticsOptions(diagnosticsOptions);\n this.setModeConfiguration(modeConfiguration);\n }\n get onDidChange() {\n return this._onDidChange.event;\n }\n get languageId() {\n return this._languageId;\n }\n get modeConfiguration() {\n return this._modeConfiguration;\n }\n get diagnosticsOptions() {\n return this._diagnosticsOptions;\n }\n setDiagnosticsOptions(options) {\n this._diagnosticsOptions = options || /* @__PURE__ */ Object.create(null);\n this._onDidChange.fire(this);\n }\n setModeConfiguration(modeConfiguration) {\n this._modeConfiguration = modeConfiguration || /* @__PURE__ */ Object.create(null);\n this._onDidChange.fire(this);\n }\n};\nvar diagnosticDefault = {\n validate: true,\n allowComments: true,\n schemas: [],\n enableSchemaRequest: false,\n schemaRequest: \"warning\",\n schemaValidation: \"warning\",\n comments: \"error\",\n trailingCommas: \"error\"\n};\nvar modeConfigurationDefault = {\n documentFormattingEdits: true,\n documentRangeFormattingEdits: true,\n completionItems: true,\n hovers: true,\n documentSymbols: true,\n tokens: true,\n colors: true,\n foldingRanges: true,\n diagnostics: true,\n selectionRanges: true\n};\nvar jsonDefaults = new LanguageServiceDefaultsImpl(\n \"json\",\n diagnosticDefault,\n modeConfigurationDefault\n);\nvar getWorker = () => getMode().then((mode) => mode.getWorker());\n_editor_editor_api_js__WEBPACK_IMPORTED_MODULE_0__.languages.json = { jsonDefaults, getWorker };\nfunction getMode() {\n if (false) {} else {\n return __webpack_require__.e(/*! import() */ \"vendors-node_modules_monaco-editor_esm_vs_language_json_jsonMode_js\").then(__webpack_require__.bind(__webpack_require__, /*! ./jsonMode.js */ \"./node_modules/monaco-editor/esm/vs/language/json/jsonMode.js\"));\n }\n}\n_editor_editor_api_js__WEBPACK_IMPORTED_MODULE_0__.languages.register({\n id: \"json\",\n extensions: [\".json\", \".bowerrc\", \".jshintrc\", \".jscsrc\", \".eslintrc\", \".babelrc\", \".har\"],\n aliases: [\"JSON\", \"json\"],\n mimetypes: [\"application/json\"]\n});\n_editor_editor_api_js__WEBPACK_IMPORTED_MODULE_0__.languages.onLanguage(\"json\", () => {\n getMode().then((mode) => mode.setupMode(jsonDefaults));\n});\n\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/language/json/monaco.contribution.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/language/typescript/monaco.contribution.js":
/*!**************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/language/typescript/monaco.contribution.js ***!
\**************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ JsxEmit: () => (/* binding */ JsxEmit),\n/* harmony export */ ModuleKind: () => (/* binding */ ModuleKind),\n/* harmony export */ ModuleResolutionKind: () => (/* binding */ ModuleResolutionKind),\n/* harmony export */ NewLineKind: () => (/* binding */ NewLineKind),\n/* harmony export */ ScriptTarget: () => (/* binding */ ScriptTarget),\n/* harmony export */ getJavaScriptWorker: () => (/* binding */ getJavaScriptWorker),\n/* harmony export */ getTypeScriptWorker: () => (/* binding */ getTypeScriptWorker),\n/* harmony export */ javascriptDefaults: () => (/* binding */ javascriptDefaults),\n/* harmony export */ typescriptDefaults: () => (/* binding */ typescriptDefaults),\n/* harmony export */ typescriptVersion: () => (/* binding */ typescriptVersion2)\n/* harmony export */ });\n/* harmony import */ var _editor_editor_api_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../editor/editor.api.js */ \"include-loader!./node_modules/monaco-editor/esm/vs/editor/editor.api.js\");\n\n/*!-----------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Version: 0.47.0(69991d66135e4a1fc1cf0b1ac4ad25d429866a0d)\n * Released under the MIT license\n * https://github.com/microsoft/monaco-editor/blob/main/LICENSE.txt\n *-----------------------------------------------------------------------------*/\n\nvar __defProp = Object.defineProperty;\nvar __getOwnPropDesc = Object.getOwnPropertyDescriptor;\nvar __getOwnPropNames = Object.getOwnPropertyNames;\nvar __hasOwnProp = Object.prototype.hasOwnProperty;\nvar __copyProps = (to, from, except, desc) => {\n if (from && typeof from === \"object\" || typeof from === \"function\") {\n for (let key of __getOwnPropNames(from))\n if (!__hasOwnProp.call(to, key) && key !== except)\n __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });\n }\n return to;\n};\nvar __reExport = (target, mod, secondTarget) => (__copyProps(target, mod, \"default\"), secondTarget && __copyProps(secondTarget, mod, \"default\"));\n\n// src/language/typescript/lib/typescriptServicesMetadata.ts\nvar typescriptVersion = \"5.0.2\";\n\n// src/fillers/monaco-editor-core.ts\nvar monaco_editor_core_exports = {};\n__reExport(monaco_editor_core_exports, _editor_editor_api_js__WEBPACK_IMPORTED_MODULE_0__);\n\n\n// src/language/typescript/monaco.contribution.ts\nvar ModuleKind = /* @__PURE__ */ ((ModuleKind2) => {\n ModuleKind2[ModuleKind2[\"None\"] = 0] = \"None\";\n ModuleKind2[ModuleKind2[\"CommonJS\"] = 1] = \"CommonJS\";\n ModuleKind2[ModuleKind2[\"AMD\"] = 2] = \"AMD\";\n ModuleKind2[ModuleKind2[\"UMD\"] = 3] = \"UMD\";\n ModuleKind2[ModuleKind2[\"System\"] = 4] = \"System\";\n ModuleKind2[ModuleKind2[\"ES2015\"] = 5] = \"ES2015\";\n ModuleKind2[ModuleKind2[\"ESNext\"] = 99] = \"ESNext\";\n return ModuleKind2;\n})(ModuleKind || {});\nvar JsxEmit = /* @__PURE__ */ ((JsxEmit2) => {\n JsxEmit2[JsxEmit2[\"None\"] = 0] = \"None\";\n JsxEmit2[JsxEmit2[\"Preserve\"] = 1] = \"Preserve\";\n JsxEmit2[JsxEmit2[\"React\"] = 2] = \"React\";\n JsxEmit2[JsxEmit2[\"ReactNative\"] = 3] = \"ReactNative\";\n JsxEmit2[JsxEmit2[\"ReactJSX\"] = 4] = \"ReactJSX\";\n JsxEmit2[JsxEmit2[\"ReactJSXDev\"] = 5] = \"ReactJSXDev\";\n return JsxEmit2;\n})(JsxEmit || {});\nvar NewLineKind = /* @__PURE__ */ ((NewLineKind2) => {\n NewLineKind2[NewLineKind2[\"CarriageReturnLineFeed\"] = 0] = \"CarriageReturnLineFeed\";\n NewLineKind2[NewLineKind2[\"LineFeed\"] = 1] = \"LineFeed\";\n return NewLineKind2;\n})(NewLineKind || {});\nvar ScriptTarget = /* @__PURE__ */ ((ScriptTarget2) => {\n ScriptTarget2[ScriptTarget2[\"ES3\"] = 0] = \"ES3\";\n ScriptTarget2[ScriptTarget2[\"ES5\"] = 1] = \"ES5\";\n ScriptTarget2[ScriptTarget2[\"ES2015\"] = 2] = \"ES2015\";\n ScriptTarget2[ScriptTarget2[\"ES2016\"] = 3] = \"ES2016\";\n ScriptTarget2[ScriptTarget2[\"ES2017\"] = 4] = \"ES2017\";\n ScriptTarget2[ScriptTarget2[\"ES2018\"] = 5] = \"ES2018\";\n ScriptTarget2[ScriptTarget2[\"ES2019\"] = 6] = \"ES2019\";\n ScriptTarget2[ScriptTarget2[\"ES2020\"] = 7] = \"ES2020\";\n ScriptTarget2[ScriptTarget2[\"ESNext\"] = 99] = \"ESNext\";\n ScriptTarget2[ScriptTarget2[\"JSON\"] = 100] = \"JSON\";\n ScriptTarget2[ScriptTarget2[\"Latest\"] = 99 /* ESNext */] = \"Latest\";\n return ScriptTarget2;\n})(ScriptTarget || {});\nvar ModuleResolutionKind = /* @__PURE__ */ ((ModuleResolutionKind2) => {\n ModuleResolutionKind2[ModuleResolutionKind2[\"Classic\"] = 1] = \"Classic\";\n ModuleResolutionKind2[ModuleResolutionKind2[\"NodeJs\"] = 2] = \"NodeJs\";\n return ModuleResolutionKind2;\n})(ModuleResolutionKind || {});\nvar LanguageServiceDefaultsImpl = class {\n constructor(compilerOptions, diagnosticsOptions, workerOptions, inlayHintsOptions, modeConfiguration) {\n this._onDidChange = new monaco_editor_core_exports.Emitter();\n this._onDidExtraLibsChange = new monaco_editor_core_exports.Emitter();\n this._extraLibs = /* @__PURE__ */ Object.create(null);\n this._removedExtraLibs = /* @__PURE__ */ Object.create(null);\n this._eagerModelSync = false;\n this.setCompilerOptions(compilerOptions);\n this.setDiagnosticsOptions(diagnosticsOptions);\n this.setWorkerOptions(workerOptions);\n this.setInlayHintsOptions(inlayHintsOptions);\n this.setModeConfiguration(modeConfiguration);\n this._onDidExtraLibsChangeTimeout = -1;\n }\n get onDidChange() {\n return this._onDidChange.event;\n }\n get onDidExtraLibsChange() {\n return this._onDidExtraLibsChange.event;\n }\n get modeConfiguration() {\n return this._modeConfiguration;\n }\n get workerOptions() {\n return this._workerOptions;\n }\n get inlayHintsOptions() {\n return this._inlayHintsOptions;\n }\n getExtraLibs() {\n return this._extraLibs;\n }\n addExtraLib(content, _filePath) {\n let filePath;\n if (typeof _filePath === \"undefined\") {\n filePath = `ts:extralib-${Math.random().toString(36).substring(2, 15)}`;\n } else {\n filePath = _filePath;\n }\n if (this._extraLibs[filePath] && this._extraLibs[filePath].content === content) {\n return {\n dispose: () => {\n }\n };\n }\n let myVersion = 1;\n if (this._removedExtraLibs[filePath]) {\n myVersion = this._removedExtraLibs[filePath] + 1;\n }\n if (this._extraLibs[filePath]) {\n myVersion = this._extraLibs[filePath].version + 1;\n }\n this._extraLibs[filePath] = {\n content,\n version: myVersion\n };\n this._fireOnDidExtraLibsChangeSoon();\n return {\n dispose: () => {\n let extraLib = this._extraLibs[filePath];\n if (!extraLib) {\n return;\n }\n if (extraLib.version !== myVersion) {\n return;\n }\n delete this._extraLibs[filePath];\n this._removedExtraLibs[filePath] = myVersion;\n this._fireOnDidExtraLibsChangeSoon();\n }\n };\n }\n setExtraLibs(libs) {\n for (const filePath in this._extraLibs) {\n this._removedExtraLibs[filePath] = this._extraLibs[filePath].version;\n }\n this._extraLibs = /* @__PURE__ */ Object.create(null);\n if (libs && libs.length > 0) {\n for (const lib of libs) {\n const filePath = lib.filePath || `ts:extralib-${Math.random().toString(36).substring(2, 15)}`;\n const content = lib.content;\n let myVersion = 1;\n if (this._removedExtraLibs[filePath]) {\n myVersion = this._removedExtraLibs[filePath] + 1;\n }\n this._extraLibs[filePath] = {\n content,\n version: myVersion\n };\n }\n }\n this._fireOnDidExtraLibsChangeSoon();\n }\n _fireOnDidExtraLibsChangeSoon() {\n if (this._onDidExtraLibsChangeTimeout !== -1) {\n return;\n }\n this._onDidExtraLibsChangeTimeout = window.setTimeout(() => {\n this._onDidExtraLibsChangeTimeout = -1;\n this._onDidExtraLibsChange.fire(void 0);\n }, 0);\n }\n getCompilerOptions() {\n return this._compilerOptions;\n }\n setCompilerOptions(options) {\n this._compilerOptions = options || /* @__PURE__ */ Object.create(null);\n this._onDidChange.fire(void 0);\n }\n getDiagnosticsOptions() {\n return this._diagnosticsOptions;\n }\n setDiagnosticsOptions(options) {\n this._diagnosticsOptions = options || /* @__PURE__ */ Object.create(null);\n this._onDidChange.fire(void 0);\n }\n setWorkerOptions(options) {\n this._workerOptions = options || /* @__PURE__ */ Object.create(null);\n this._onDidChange.fire(void 0);\n }\n setInlayHintsOptions(options) {\n this._inlayHintsOptions = options || /* @__PURE__ */ Object.create(null);\n this._onDidChange.fire(void 0);\n }\n setMaximumWorkerIdleTime(value) {\n }\n setEagerModelSync(value) {\n this._eagerModelSync = value;\n }\n getEagerModelSync() {\n return this._eagerModelSync;\n }\n setModeConfiguration(modeConfiguration) {\n this._modeConfiguration = modeConfiguration || /* @__PURE__ */ Object.create(null);\n this._onDidChange.fire(void 0);\n }\n};\nvar typescriptVersion2 = typescriptVersion;\nvar modeConfigurationDefault = {\n completionItems: true,\n hovers: true,\n documentSymbols: true,\n definitions: true,\n references: true,\n documentHighlights: true,\n rename: true,\n diagnostics: true,\n documentRangeFormattingEdits: true,\n signatureHelp: true,\n onTypeFormattingEdits: true,\n codeActions: true,\n inlayHints: true\n};\nvar typescriptDefaults = new LanguageServiceDefaultsImpl(\n { allowNonTsExtensions: true, target: 99 /* Latest */ },\n { noSemanticValidation: false, noSyntaxValidation: false, onlyVisible: false },\n {},\n {},\n modeConfigurationDefault\n);\nvar javascriptDefaults = new LanguageServiceDefaultsImpl(\n { allowNonTsExtensions: true, allowJs: true, target: 99 /* Latest */ },\n { noSemanticValidation: true, noSyntaxValidation: false, onlyVisible: false },\n {},\n {},\n modeConfigurationDefault\n);\nvar getTypeScriptWorker = () => {\n return getMode().then((mode) => mode.getTypeScriptWorker());\n};\nvar getJavaScriptWorker = () => {\n return getMode().then((mode) => mode.getJavaScriptWorker());\n};\nmonaco_editor_core_exports.languages.typescript = {\n ModuleKind,\n JsxEmit,\n NewLineKind,\n ScriptTarget,\n ModuleResolutionKind,\n typescriptVersion: typescriptVersion2,\n typescriptDefaults,\n javascriptDefaults,\n getTypeScriptWorker,\n getJavaScriptWorker\n};\nfunction getMode() {\n if (false) {} else {\n return __webpack_require__.e(/*! import() */ \"vendors-node_modules_monaco-editor_esm_vs_language_typescript_tsMode_js\").then(__webpack_require__.bind(__webpack_require__, /*! ./tsMode.js */ \"./node_modules/monaco-editor/esm/vs/language/typescript/tsMode.js\"));\n }\n}\nmonaco_editor_core_exports.languages.onLanguage(\"typescript\", () => {\n return getMode().then((mode) => mode.setupTypeScript(typescriptDefaults));\n});\nmonaco_editor_core_exports.languages.onLanguage(\"javascript\", () => {\n return getMode().then((mode) => mode.setupJavaScript(javascriptDefaults));\n});\n\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/language/typescript/monaco.contribution.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/nls.js":
/*!**************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/nls.js ***!
\**************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ create: () => (/* binding */ create),\n/* harmony export */ getConfiguredDefaultLocale: () => (/* binding */ getConfiguredDefaultLocale),\n/* harmony export */ load: () => (/* binding */ load),\n/* harmony export */ localize: () => (/* binding */ localize),\n/* harmony export */ localize2: () => (/* binding */ localize2),\n/* harmony export */ setPseudoTranslation: () => (/* binding */ setPseudoTranslation)\n/* harmony export */ });\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\nlet isPseudo = (typeof document !== 'undefined' && document.location && document.location.hash.indexOf('pseudo=true') >= 0);\nconst DEFAULT_TAG = 'i-default';\nfunction _format(message, args) {\n let result;\n if (args.length === 0) {\n result = message;\n }\n else {\n result = message.replace(/\\{(\\d+)\\}/g, (match, rest) => {\n const index = rest[0];\n const arg = args[index];\n let result = match;\n if (typeof arg === 'string') {\n result = arg;\n }\n else if (typeof arg === 'number' || typeof arg === 'boolean' || arg === void 0 || arg === null) {\n result = String(arg);\n }\n return result;\n });\n }\n if (isPseudo) {\n // FF3B and FF3D is the Unicode zenkaku representation for [ and ]\n result = '\\uFF3B' + result.replace(/[aouei]/g, '$&$&') + '\\uFF3D';\n }\n return result;\n}\nfunction findLanguageForModule(config, name) {\n let result = config[name];\n if (result) {\n return result;\n }\n result = config['*'];\n if (result) {\n return result;\n }\n return null;\n}\nfunction endWithSlash(path) {\n if (path.charAt(path.length - 1) === '/') {\n return path;\n }\n return path + '/';\n}\nasync function getMessagesFromTranslationsService(translationServiceUrl, language, name) {\n const url = endWithSlash(translationServiceUrl) + endWithSlash(language) + 'vscode/' + endWithSlash(name);\n const res = await fetch(url);\n if (res.ok) {\n const messages = await res.json();\n return messages;\n }\n throw new Error(`${res.status} - ${res.statusText}`);\n}\nfunction createScopedLocalize(scope) {\n return function (idx, defaultValue) {\n const restArgs = Array.prototype.slice.call(arguments, 2);\n return _format(scope[idx], restArgs);\n };\n}\nfunction createScopedLocalize2(scope) {\n return (idx, defaultValue, ...args) => ({\n value: _format(scope[idx], args),\n original: _format(defaultValue, args)\n });\n}\n/**\n * @skipMangle\n */\nfunction localize(data, message, ...args) {\n return _format(message, args);\n}\n/**\n * @skipMangle\n */\nfunction localize2(data, message, ...args) {\n const original = _format(message, args);\n return {\n value: original,\n original\n };\n}\n/**\n * @skipMangle\n */\nfunction getConfiguredDefaultLocale(_) {\n // This returns undefined because this implementation isn't used and is overwritten by the loader\n // when loaded.\n return undefined;\n}\n/**\n * @skipMangle\n */\nfunction setPseudoTranslation(value) {\n isPseudo = value;\n}\n/**\n * Invoked in a built product at run-time\n * @skipMangle\n */\nfunction create(key, data) {\n var _a;\n return {\n localize: createScopedLocalize(data[key]),\n localize2: createScopedLocalize2(data[key]),\n getConfiguredDefaultLocale: (_a = data.getConfiguredDefaultLocale) !== null && _a !== void 0 ? _a : ((_) => undefined)\n };\n}\n/**\n * Invoked by the loader at run-time\n * @skipMangle\n */\nfunction load(name, req, load, config) {\n var _a;\n const pluginConfig = (_a = config['vs/nls']) !== null && _a !== void 0 ? _a : {};\n if (!name || name.length === 0) {\n // TODO: We need to give back the mangled names here\n return load({\n localize: localize,\n localize2: localize2,\n getConfiguredDefaultLocale: () => { var _a; return (_a = pluginConfig.availableLanguages) === null || _a === void 0 ? void 0 : _a['*']; }\n });\n }\n const language = pluginConfig.availableLanguages ? findLanguageForModule(pluginConfig.availableLanguages, name) : null;\n const useDefaultLanguage = language === null || language === DEFAULT_TAG;\n let suffix = '.nls';\n if (!useDefaultLanguage) {\n suffix = suffix + '.' + language;\n }\n const messagesLoaded = (messages) => {\n if (Array.isArray(messages)) {\n messages.localize = createScopedLocalize(messages);\n messages.localize2 = createScopedLocalize2(messages);\n }\n else {\n messages.localize = createScopedLocalize(messages[name]);\n messages.localize2 = createScopedLocalize2(messages[name]);\n }\n messages.getConfiguredDefaultLocale = () => { var _a; return (_a = pluginConfig.availableLanguages) === null || _a === void 0 ? void 0 : _a['*']; };\n load(messages);\n };\n if (typeof pluginConfig.loadBundle === 'function') {\n pluginConfig.loadBundle(name, language, (err, messages) => {\n // We have an error. Load the English default strings to not fail\n if (err) {\n req([name + '.nls'], messagesLoaded);\n }\n else {\n messagesLoaded(messages);\n }\n });\n }\n else if (pluginConfig.translationServiceUrl && !useDefaultLanguage) {\n (async () => {\n var _a;\n try {\n const messages = await getMessagesFromTranslationsService(pluginConfig.translationServiceUrl, language, name);\n return messagesLoaded(messages);\n }\n catch (err) {\n // Language is already as generic as it gets, so require default messages\n if (!language.includes('-')) {\n console.error(err);\n return req([name + '.nls'], messagesLoaded);\n }\n try {\n // Since there is a dash, the language configured is a specific sub-language of the same generic language.\n // Since we were unable to load the specific language, try to load the generic language. Ex. we failed to find a\n // Swiss German (de-CH), so try to load the generic German (de) messages instead.\n const genericLanguage = language.split('-')[0];\n const messages = await getMessagesFromTranslationsService(pluginConfig.translationServiceUrl, genericLanguage, name);\n // We got some messages, so we configure the configuration to use the generic language for this session.\n (_a = pluginConfig.availableLanguages) !== null && _a !== void 0 ? _a : (pluginConfig.availableLanguages = {});\n pluginConfig.availableLanguages['*'] = genericLanguage;\n return messagesLoaded(messages);\n }\n catch (err) {\n console.error(err);\n return req([name + '.nls'], messagesLoaded);\n }\n }\n })();\n }\n else {\n req([name + suffix], messagesLoaded, (err) => {\n if (suffix === '.nls') {\n console.error('Failed trying to load default language strings', err);\n return;\n }\n console.error(`Failed to load message bundle for language ${language}. Falling back to the default language:`, err);\n req([name + '.nls'], messagesLoaded);\n });\n }\n}\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/nls.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/platform/accessibility/browser/accessibilityService.js":
/*!**************************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/platform/accessibility/browser/accessibilityService.js ***!
\**************************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ AccessibilityService: () => (/* binding */ AccessibilityService)\n/* harmony export */ });\n/* harmony import */ var _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../base/browser/dom.js */ \"./node_modules/monaco-editor/esm/vs/base/browser/dom.js\");\n/* harmony import */ var _base_browser_window_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../base/browser/window.js */ \"./node_modules/monaco-editor/esm/vs/base/browser/window.js\");\n/* harmony import */ var _base_common_event_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../base/common/event.js */ \"./node_modules/monaco-editor/esm/vs/base/common/event.js\");\n/* harmony import */ var _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../../base/common/lifecycle.js */ \"./node_modules/monaco-editor/esm/vs/base/common/lifecycle.js\");\n/* harmony import */ var _common_accessibility_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../common/accessibility.js */ \"./node_modules/monaco-editor/esm/vs/platform/accessibility/common/accessibility.js\");\n/* harmony import */ var _configuration_common_configuration_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../../configuration/common/configuration.js */ \"./node_modules/monaco-editor/esm/vs/platform/configuration/common/configuration.js\");\n/* harmony import */ var _contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../../contextkey/common/contextkey.js */ \"./node_modules/monaco-editor/esm/vs/platform/contextkey/common/contextkey.js\");\n/* harmony import */ var _layout_browser_layoutService_js__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ../../layout/browser/layoutService.js */ \"./node_modules/monaco-editor/esm/vs/platform/layout/browser/layoutService.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\nvar __decorate = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\n return c > 3 && r && Object.defineProperty(target, key, r), r;\n};\nvar __param = (undefined && undefined.__param) || function (paramIndex, decorator) {\n return function (target, key) { decorator(target, key, paramIndex); }\n};\n\n\n\n\n\n\n\n\nlet AccessibilityService = class AccessibilityService extends _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_3__.Disposable {\n constructor(_contextKeyService, _layoutService, _configurationService) {\n super();\n this._contextKeyService = _contextKeyService;\n this._layoutService = _layoutService;\n this._configurationService = _configurationService;\n this._accessibilitySupport = 0 /* AccessibilitySupport.Unknown */;\n this._onDidChangeScreenReaderOptimized = new _base_common_event_js__WEBPACK_IMPORTED_MODULE_2__.Emitter();\n this._onDidChangeReducedMotion = new _base_common_event_js__WEBPACK_IMPORTED_MODULE_2__.Emitter();\n this._accessibilityModeEnabledContext = _common_accessibility_js__WEBPACK_IMPORTED_MODULE_4__.CONTEXT_ACCESSIBILITY_MODE_ENABLED.bindTo(this._contextKeyService);\n const updateContextKey = () => this._accessibilityModeEnabledContext.set(this.isScreenReaderOptimized());\n this._register(this._configurationService.onDidChangeConfiguration(e => {\n if (e.affectsConfiguration('editor.accessibilitySupport')) {\n updateContextKey();\n this._onDidChangeScreenReaderOptimized.fire();\n }\n if (e.affectsConfiguration('workbench.reduceMotion')) {\n this._configMotionReduced = this._configurationService.getValue('workbench.reduceMotion');\n this._onDidChangeReducedMotion.fire();\n }\n }));\n updateContextKey();\n this._register(this.onDidChangeScreenReaderOptimized(() => updateContextKey()));\n const reduceMotionMatcher = _base_browser_window_js__WEBPACK_IMPORTED_MODULE_1__.mainWindow.matchMedia(`(prefers-reduced-motion: reduce)`);\n this._systemMotionReduced = reduceMotionMatcher.matches;\n this._configMotionReduced = this._configurationService.getValue('workbench.reduceMotion');\n this.initReducedMotionListeners(reduceMotionMatcher);\n }\n initReducedMotionListeners(reduceMotionMatcher) {\n this._register((0,_base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.addDisposableListener)(reduceMotionMatcher, 'change', () => {\n this._systemMotionReduced = reduceMotionMatcher.matches;\n if (this._configMotionReduced === 'auto') {\n this._onDidChangeReducedMotion.fire();\n }\n }));\n const updateRootClasses = () => {\n const reduce = this.isMotionReduced();\n this._layoutService.mainContainer.classList.toggle('reduce-motion', reduce);\n this._layoutService.mainContainer.classList.toggle('enable-motion', !reduce);\n };\n updateRootClasses();\n this._register(this.onDidChangeReducedMotion(() => updateRootClasses()));\n }\n get onDidChangeScreenReaderOptimized() {\n return this._onDidChangeScreenReaderOptimized.event;\n }\n isScreenReaderOptimized() {\n const config = this._configurationService.getValue('editor.accessibilitySupport');\n return config === 'on' || (config === 'auto' && this._accessibilitySupport === 2 /* AccessibilitySupport.Enabled */);\n }\n get onDidChangeReducedMotion() {\n return this._onDidChangeReducedMotion.event;\n }\n isMotionReduced() {\n const config = this._configMotionReduced;\n return config === 'on' || (config === 'auto' && this._systemMotionReduced);\n }\n getAccessibilitySupport() {\n return this._accessibilitySupport;\n }\n};\nAccessibilityService = __decorate([\n __param(0, _contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_6__.IContextKeyService),\n __param(1, _layout_browser_layoutService_js__WEBPACK_IMPORTED_MODULE_7__.ILayoutService),\n __param(2, _configuration_common_configuration_js__WEBPACK_IMPORTED_MODULE_5__.IConfigurationService)\n], AccessibilityService);\n\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/platform/accessibility/browser/accessibilityService.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/platform/accessibility/common/accessibility.js":
/*!******************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/platform/accessibility/common/accessibility.js ***!
\******************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ CONTEXT_ACCESSIBILITY_MODE_ENABLED: () => (/* binding */ CONTEXT_ACCESSIBILITY_MODE_ENABLED),\n/* harmony export */ IAccessibilityService: () => (/* binding */ IAccessibilityService)\n/* harmony export */ });\n/* harmony import */ var _contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../contextkey/common/contextkey.js */ \"./node_modules/monaco-editor/esm/vs/platform/contextkey/common/contextkey.js\");\n/* harmony import */ var _instantiation_common_instantiation_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../instantiation/common/instantiation.js */ \"./node_modules/monaco-editor/esm/vs/platform/instantiation/common/instantiation.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n\nconst IAccessibilityService = (0,_instantiation_common_instantiation_js__WEBPACK_IMPORTED_MODULE_1__.createDecorator)('accessibilityService');\nconst CONTEXT_ACCESSIBILITY_MODE_ENABLED = new _contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_0__.RawContextKey('accessibilityModeEnabled', false);\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/platform/accessibility/common/accessibility.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/platform/accessibilitySignal/browser/accessibilitySignalService.js":
/*!**************************************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/platform/accessibilitySignal/browser/accessibilitySignalService.js ***!
\**************************************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ AccessibilitySignal: () => (/* binding */ AccessibilitySignal),\n/* harmony export */ IAccessibilitySignalService: () => (/* binding */ IAccessibilitySignalService),\n/* harmony export */ Sound: () => (/* binding */ Sound),\n/* harmony export */ SoundSource: () => (/* binding */ SoundSource)\n/* harmony export */ });\n/* harmony import */ var _instantiation_common_instantiation_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../instantiation/common/instantiation.js */ \"./node_modules/monaco-editor/esm/vs/platform/instantiation/common/instantiation.js\");\n/* harmony import */ var _nls_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../nls.js */ \"./node_modules/monaco-editor/esm/vs/nls.js\");\n\n\nconst IAccessibilitySignalService = (0,_instantiation_common_instantiation_js__WEBPACK_IMPORTED_MODULE_0__.createDecorator)('accessibilitySignalService');\n/**\n * Corresponds to the audio files in ./media.\n*/\nclass Sound {\n static register(options) {\n const sound = new Sound(options.fileName);\n return sound;\n }\n constructor(fileName) {\n this.fileName = fileName;\n }\n}\nSound.error = Sound.register({ fileName: 'error.mp3' });\nSound.warning = Sound.register({ fileName: 'warning.mp3' });\nSound.foldedArea = Sound.register({ fileName: 'foldedAreas.mp3' });\nSound.break = Sound.register({ fileName: 'break.mp3' });\nSound.quickFixes = Sound.register({ fileName: 'quickFixes.mp3' });\nSound.taskCompleted = Sound.register({ fileName: 'taskCompleted.mp3' });\nSound.taskFailed = Sound.register({ fileName: 'taskFailed.mp3' });\nSound.terminalBell = Sound.register({ fileName: 'terminalBell.mp3' });\nSound.diffLineInserted = Sound.register({ fileName: 'diffLineInserted.mp3' });\nSound.diffLineDeleted = Sound.register({ fileName: 'diffLineDeleted.mp3' });\nSound.diffLineModified = Sound.register({ fileName: 'diffLineModified.mp3' });\nSound.chatRequestSent = Sound.register({ fileName: 'chatRequestSent.mp3' });\nSound.chatResponsePending = Sound.register({ fileName: 'chatResponsePending.mp3' });\nSound.chatResponseReceived1 = Sound.register({ fileName: 'chatResponseReceived1.mp3' });\nSound.chatResponseReceived2 = Sound.register({ fileName: 'chatResponseReceived2.mp3' });\nSound.chatResponseReceived3 = Sound.register({ fileName: 'chatResponseReceived3.mp3' });\nSound.chatResponseReceived4 = Sound.register({ fileName: 'chatResponseReceived4.mp3' });\nSound.clear = Sound.register({ fileName: 'clear.mp3' });\nSound.save = Sound.register({ fileName: 'save.mp3' });\nSound.format = Sound.register({ fileName: 'format.mp3' });\nclass SoundSource {\n constructor(randomOneOf) {\n this.randomOneOf = randomOneOf;\n }\n}\nclass AccessibilitySignal {\n static register(options) {\n const soundSource = new SoundSource('randomOneOf' in options.sound ? options.sound.randomOneOf : [options.sound]);\n const signal = new AccessibilitySignal(soundSource, options.name, options.legacySoundSettingsKey, options.settingsKey, options.legacyAnnouncementSettingsKey, options.announcementMessage);\n AccessibilitySignal._signals.add(signal);\n return signal;\n }\n constructor(sound, name, legacySoundSettingsKey, settingsKey, legacyAnnouncementSettingsKey, announcementMessage) {\n this.sound = sound;\n this.name = name;\n this.legacySoundSettingsKey = legacySoundSettingsKey;\n this.settingsKey = settingsKey;\n this.legacyAnnouncementSettingsKey = legacyAnnouncementSettingsKey;\n this.announcementMessage = announcementMessage;\n }\n}\nAccessibilitySignal._signals = new Set();\nAccessibilitySignal.error = AccessibilitySignal.register({\n name: (0,_nls_js__WEBPACK_IMPORTED_MODULE_1__.localize)('accessibilitySignals.lineHasError.name', 'Error on Line'),\n sound: Sound.error,\n legacySoundSettingsKey: 'audioCues.lineHasError',\n legacyAnnouncementSettingsKey: \"accessibility.alert.error\" /* AccessibilityAlertSettingId.Error */,\n announcementMessage: (0,_nls_js__WEBPACK_IMPORTED_MODULE_1__.localize)('accessibility.signals.lineHasError', 'Error'),\n settingsKey: 'accessibility.signals.lineHasError'\n});\nAccessibilitySignal.warning = AccessibilitySignal.register({\n name: (0,_nls_js__WEBPACK_IMPORTED_MODULE_1__.localize)('accessibilitySignals.lineHasWarning.name', 'Warning on Line'),\n sound: Sound.warning,\n legacySoundSettingsKey: 'audioCues.lineHasWarning',\n legacyAnnouncementSettingsKey: \"accessibility.alert.warning\" /* AccessibilityAlertSettingId.Warning */,\n announcementMessage: (0,_nls_js__WEBPACK_IMPORTED_MODULE_1__.localize)('accessibility.signals.lineHasWarning', 'Warning'),\n settingsKey: 'accessibility.signals.lineHasWarning'\n});\nAccessibilitySignal.foldedArea = AccessibilitySignal.register({\n name: (0,_nls_js__WEBPACK_IMPORTED_MODULE_1__.localize)('accessibilitySignals.lineHasFoldedArea.name', 'Folded Area on Line'),\n sound: Sound.foldedArea,\n legacySoundSettingsKey: 'audioCues.lineHasFoldedArea',\n legacyAnnouncementSettingsKey: \"accessibility.alert.foldedArea\" /* AccessibilityAlertSettingId.FoldedArea */,\n announcementMessage: (0,_nls_js__WEBPACK_IMPORTED_MODULE_1__.localize)('accessibility.signals.lineHasFoldedArea', 'Folded'),\n settingsKey: 'accessibility.signals.lineHasFoldedArea'\n});\nAccessibilitySignal.break = AccessibilitySignal.register({\n name: (0,_nls_js__WEBPACK_IMPORTED_MODULE_1__.localize)('accessibilitySignals.lineHasBreakpoint.name', 'Breakpoint on Line'),\n sound: Sound.break,\n legacySoundSettingsKey: 'audioCues.lineHasBreakpoint',\n legacyAnnouncementSettingsKey: \"accessibility.alert.breakpoint\" /* AccessibilityAlertSettingId.Breakpoint */,\n announcementMessage: (0,_nls_js__WEBPACK_IMPORTED_MODULE_1__.localize)('accessibility.signals.lineHasBreakpoint', 'Breakpoint'),\n settingsKey: 'accessibility.signals.lineHasBreakpoint'\n});\nAccessibilitySignal.inlineSuggestion = AccessibilitySignal.register({\n name: (0,_nls_js__WEBPACK_IMPORTED_MODULE_1__.localize)('accessibilitySignals.lineHasInlineSuggestion.name', 'Inline Suggestion on Line'),\n sound: Sound.quickFixes,\n legacySoundSettingsKey: 'audioCues.lineHasInlineSuggestion',\n settingsKey: 'accessibility.signals.lineHasInlineSuggestion'\n});\nAccessibilitySignal.terminalQuickFix = AccessibilitySignal.register({\n name: (0,_nls_js__WEBPACK_IMPORTED_MODULE_1__.localize)('accessibilitySignals.terminalQuickFix.name', 'Terminal Quick Fix'),\n sound: Sound.quickFixes,\n legacySoundSettingsKey: 'audioCues.terminalQuickFix',\n legacyAnnouncementSettingsKey: \"accessibility.alert.terminalQuickFix\" /* AccessibilityAlertSettingId.TerminalQuickFix */,\n announcementMessage: (0,_nls_js__WEBPACK_IMPORTED_MODULE_1__.localize)('accessibility.signals.terminalQuickFix', 'Quick Fix'),\n settingsKey: 'accessibility.signals.terminalQuickFix'\n});\nAccessibilitySignal.onDebugBreak = AccessibilitySignal.register({\n name: (0,_nls_js__WEBPACK_IMPORTED_MODULE_1__.localize)('accessibilitySignals.onDebugBreak.name', 'Debugger Stopped on Breakpoint'),\n sound: Sound.break,\n legacySoundSettingsKey: 'audioCues.onDebugBreak',\n legacyAnnouncementSettingsKey: \"accessibility.alert.onDebugBreak\" /* AccessibilityAlertSettingId.OnDebugBreak */,\n announcementMessage: (0,_nls_js__WEBPACK_IMPORTED_MODULE_1__.localize)('accessibility.signals.onDebugBreak', 'Breakpoint'),\n settingsKey: 'accessibility.signals.onDebugBreak'\n});\nAccessibilitySignal.noInlayHints = AccessibilitySignal.register({\n name: (0,_nls_js__WEBPACK_IMPORTED_MODULE_1__.localize)('accessibilitySignals.noInlayHints', 'No Inlay Hints on Line'),\n sound: Sound.error,\n legacySoundSettingsKey: 'audioCues.noInlayHints',\n legacyAnnouncementSettingsKey: \"accessibility.alert.noInlayHints\" /* AccessibilityAlertSettingId.NoInlayHints */,\n announcementMessage: (0,_nls_js__WEBPACK_IMPORTED_MODULE_1__.localize)('accessibility.signals.noInlayHints', 'No Inlay Hints'),\n settingsKey: 'accessibility.signals.noInlayHints'\n});\nAccessibilitySignal.taskCompleted = AccessibilitySignal.register({\n name: (0,_nls_js__WEBPACK_IMPORTED_MODULE_1__.localize)('accessibilitySignals.taskCompleted', 'Task Completed'),\n sound: Sound.taskCompleted,\n legacySoundSettingsKey: 'audioCues.taskCompleted',\n legacyAnnouncementSettingsKey: \"accessibility.alert.taskCompleted\" /* AccessibilityAlertSettingId.TaskCompleted */,\n announcementMessage: (0,_nls_js__WEBPACK_IMPORTED_MODULE_1__.localize)('accessibility.signals.taskCompleted', 'Task Completed'),\n settingsKey: 'accessibility.signals.taskCompleted'\n});\nAccessibilitySignal.taskFailed = AccessibilitySignal.register({\n name: (0,_nls_js__WEBPACK_IMPORTED_MODULE_1__.localize)('accessibilitySignals.taskFailed', 'Task Failed'),\n sound: Sound.taskFailed,\n legacySoundSettingsKey: 'audioCues.taskFailed',\n legacyAnnouncementSettingsKey: \"accessibility.alert.taskFailed\" /* AccessibilityAlertSettingId.TaskFailed */,\n announcementMessage: (0,_nls_js__WEBPACK_IMPORTED_MODULE_1__.localize)('accessibility.signals.taskFailed', 'Task Failed'),\n settingsKey: 'accessibility.signals.taskFailed'\n});\nAccessibilitySignal.terminalCommandFailed = AccessibilitySignal.register({\n name: (0,_nls_js__WEBPACK_IMPORTED_MODULE_1__.localize)('accessibilitySignals.terminalCommandFailed', 'Terminal Command Failed'),\n sound: Sound.error,\n legacySoundSettingsKey: 'audioCues.terminalCommandFailed',\n legacyAnnouncementSettingsKey: \"accessibility.alert.terminalCommandFailed\" /* AccessibilityAlertSettingId.TerminalCommandFailed */,\n announcementMessage: (0,_nls_js__WEBPACK_IMPORTED_MODULE_1__.localize)('accessibility.signals.terminalCommandFailed', 'Command Failed'),\n settingsKey: 'accessibility.signals.terminalCommandFailed'\n});\nAccessibilitySignal.terminalBell = AccessibilitySignal.register({\n name: (0,_nls_js__WEBPACK_IMPORTED_MODULE_1__.localize)('accessibilitySignals.terminalBell', 'Terminal Bell'),\n sound: Sound.terminalBell,\n legacySoundSettingsKey: 'audioCues.terminalBell',\n legacyAnnouncementSettingsKey: \"accessibility.alert.terminalBell\" /* AccessibilityAlertSettingId.TerminalBell */,\n announcementMessage: (0,_nls_js__WEBPACK_IMPORTED_MODULE_1__.localize)('accessibility.signals.terminalBell', 'Terminal Bell'),\n settingsKey: 'accessibility.signals.terminalBell'\n});\nAccessibilitySignal.notebookCellCompleted = AccessibilitySignal.register({\n name: (0,_nls_js__WEBPACK_IMPORTED_MODULE_1__.localize)('accessibilitySignals.notebookCellCompleted', 'Notebook Cell Completed'),\n sound: Sound.taskCompleted,\n legacySoundSettingsKey: 'audioCues.notebookCellCompleted',\n legacyAnnouncementSettingsKey: \"accessibility.alert.notebookCellCompleted\" /* AccessibilityAlertSettingId.NotebookCellCompleted */,\n announcementMessage: (0,_nls_js__WEBPACK_IMPORTED_MODULE_1__.localize)('accessibility.signals.notebookCellCompleted', 'Notebook Cell Completed'),\n settingsKey: 'accessibility.signals.notebookCellCompleted'\n});\nAccessibilitySignal.notebookCellFailed = AccessibilitySignal.register({\n name: (0,_nls_js__WEBPACK_IMPORTED_MODULE_1__.localize)('accessibilitySignals.notebookCellFailed', 'Notebook Cell Failed'),\n sound: Sound.taskFailed,\n legacySoundSettingsKey: 'audioCues.notebookCellFailed',\n legacyAnnouncementSettingsKey: \"accessibility.alert.notebookCellFailed\" /* AccessibilityAlertSettingId.NotebookCellFailed */,\n announcementMessage: (0,_nls_js__WEBPACK_IMPORTED_MODULE_1__.localize)('accessibility.signals.notebookCellFailed', 'Notebook Cell Failed'),\n settingsKey: 'accessibility.signals.notebookCellFailed'\n});\nAccessibilitySignal.diffLineInserted = AccessibilitySignal.register({\n name: (0,_nls_js__WEBPACK_IMPORTED_MODULE_1__.localize)('accessibilitySignals.diffLineInserted', 'Diff Line Inserted'),\n sound: Sound.diffLineInserted,\n legacySoundSettingsKey: 'audioCues.diffLineInserted',\n settingsKey: 'accessibility.signals.diffLineInserted'\n});\nAccessibilitySignal.diffLineDeleted = AccessibilitySignal.register({\n name: (0,_nls_js__WEBPACK_IMPORTED_MODULE_1__.localize)('accessibilitySignals.diffLineDeleted', 'Diff Line Deleted'),\n sound: Sound.diffLineDeleted,\n legacySoundSettingsKey: 'audioCues.diffLineDeleted',\n settingsKey: 'accessibility.signals.diffLineDeleted'\n});\nAccessibilitySignal.diffLineModified = AccessibilitySignal.register({\n name: (0,_nls_js__WEBPACK_IMPORTED_MODULE_1__.localize)('accessibilitySignals.diffLineModified', 'Diff Line Modified'),\n sound: Sound.diffLineModified,\n legacySoundSettingsKey: 'audioCues.diffLineModified',\n settingsKey: 'accessibility.signals.diffLineModified'\n});\nAccessibilitySignal.chatRequestSent = AccessibilitySignal.register({\n name: (0,_nls_js__WEBPACK_IMPORTED_MODULE_1__.localize)('accessibilitySignals.chatRequestSent', 'Chat Request Sent'),\n sound: Sound.chatRequestSent,\n legacySoundSettingsKey: 'audioCues.chatRequestSent',\n legacyAnnouncementSettingsKey: \"accessibility.alert.chatRequestSent\" /* AccessibilityAlertSettingId.ChatRequestSent */,\n announcementMessage: (0,_nls_js__WEBPACK_IMPORTED_MODULE_1__.localize)('accessibility.signals.chatRequestSent', 'Chat Request Sent'),\n settingsKey: 'accessibility.signals.chatRequestSent'\n});\nAccessibilitySignal.chatResponseReceived = AccessibilitySignal.register({\n name: (0,_nls_js__WEBPACK_IMPORTED_MODULE_1__.localize)('accessibilitySignals.chatResponseReceived', 'Chat Response Received'),\n legacySoundSettingsKey: 'audioCues.chatResponseReceived',\n sound: {\n randomOneOf: [\n Sound.chatResponseReceived1,\n Sound.chatResponseReceived2,\n Sound.chatResponseReceived3,\n Sound.chatResponseReceived4\n ]\n },\n settingsKey: 'accessibility.signals.chatResponseReceived'\n});\nAccessibilitySignal.chatResponsePending = AccessibilitySignal.register({\n name: (0,_nls_js__WEBPACK_IMPORTED_MODULE_1__.localize)('accessibilitySignals.chatResponsePending', 'Chat Response Pending'),\n sound: Sound.chatResponsePending,\n legacySoundSettingsKey: 'audioCues.chatResponsePending',\n legacyAnnouncementSettingsKey: \"accessibility.alert.chatResponsePending\" /* AccessibilityAlertSettingId.ChatResponsePending */,\n announcementMessage: (0,_nls_js__WEBPACK_IMPORTED_MODULE_1__.localize)('accessibility.signals.chatResponsePending', 'Chat Response Pending'),\n settingsKey: 'accessibility.signals.chatResponsePending'\n});\nAccessibilitySignal.clear = AccessibilitySignal.register({\n name: (0,_nls_js__WEBPACK_IMPORTED_MODULE_1__.localize)('accessibilitySignals.clear', 'Clear'),\n sound: Sound.clear,\n legacySoundSettingsKey: 'audioCues.clear',\n legacyAnnouncementSettingsKey: \"accessibility.alert.clear\" /* AccessibilityAlertSettingId.Clear */,\n announcementMessage: (0,_nls_js__WEBPACK_IMPORTED_MODULE_1__.localize)('accessibility.signals.clear', 'Clear'),\n settingsKey: 'accessibility.signals.clear'\n});\nAccessibilitySignal.save = AccessibilitySignal.register({\n name: (0,_nls_js__WEBPACK_IMPORTED_MODULE_1__.localize)('accessibilitySignals.save', 'Save'),\n sound: Sound.save,\n legacySoundSettingsKey: 'audioCues.save',\n legacyAnnouncementSettingsKey: \"accessibility.alert.save\" /* AccessibilityAlertSettingId.Save */,\n announcementMessage: (0,_nls_js__WEBPACK_IMPORTED_MODULE_1__.localize)('accessibility.signals.save', 'Save'),\n settingsKey: 'accessibility.signals.save'\n});\nAccessibilitySignal.format = AccessibilitySignal.register({\n name: (0,_nls_js__WEBPACK_IMPORTED_MODULE_1__.localize)('accessibilitySignals.format', 'Format'),\n sound: Sound.format,\n legacySoundSettingsKey: 'audioCues.format',\n legacyAnnouncementSettingsKey: \"accessibility.alert.format\" /* AccessibilityAlertSettingId.Format */,\n announcementMessage: (0,_nls_js__WEBPACK_IMPORTED_MODULE_1__.localize)('accessibility.signals.format', 'Format'),\n settingsKey: 'accessibility.signals.format'\n});\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/platform/accessibilitySignal/browser/accessibilitySignalService.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/platform/action/common/action.js":
/*!****************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/platform/action/common/action.js ***!
\****************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ isICommandActionToggleInfo: () => (/* binding */ isICommandActionToggleInfo)\n/* harmony export */ });\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\nfunction isICommandActionToggleInfo(thing) {\n return thing ? thing.condition !== undefined : false;\n}\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/platform/action/common/action.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/platform/action/common/actionCommonCategories.js":
/*!********************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/platform/action/common/actionCommonCategories.js ***!
\********************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ Categories: () => (/* binding */ Categories)\n/* harmony export */ });\n/* harmony import */ var _nls_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../nls.js */ \"./node_modules/monaco-editor/esm/vs/nls.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\nconst Categories = Object.freeze({\n View: (0,_nls_js__WEBPACK_IMPORTED_MODULE_0__.localize2)('view', 'View'),\n Help: (0,_nls_js__WEBPACK_IMPORTED_MODULE_0__.localize2)('help', 'Help'),\n Test: (0,_nls_js__WEBPACK_IMPORTED_MODULE_0__.localize2)('test', 'Test'),\n File: (0,_nls_js__WEBPACK_IMPORTED_MODULE_0__.localize2)('file', 'File'),\n Preferences: (0,_nls_js__WEBPACK_IMPORTED_MODULE_0__.localize2)('preferences', 'Preferences'),\n Developer: (0,_nls_js__WEBPACK_IMPORTED_MODULE_0__.localize2)({ key: 'developer', comment: ['A developer on Code itself or someone diagnosing issues in Code'] }, \"Developer\"),\n});\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/platform/action/common/actionCommonCategories.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/platform/actionWidget/browser/actionList.js":
/*!***************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/platform/actionWidget/browser/actionList.js ***!
\***************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ ActionList: () => (/* binding */ ActionList),\n/* harmony export */ acceptSelectedActionCommand: () => (/* binding */ acceptSelectedActionCommand),\n/* harmony export */ previewSelectedActionCommand: () => (/* binding */ previewSelectedActionCommand)\n/* harmony export */ });\n/* harmony import */ var _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../base/browser/dom.js */ \"./node_modules/monaco-editor/esm/vs/base/browser/dom.js\");\n/* harmony import */ var _base_browser_ui_keybindingLabel_keybindingLabel_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../base/browser/ui/keybindingLabel/keybindingLabel.js */ \"./node_modules/monaco-editor/esm/vs/base/browser/ui/keybindingLabel/keybindingLabel.js\");\n/* harmony import */ var _base_browser_ui_list_listWidget_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../base/browser/ui/list/listWidget.js */ \"./node_modules/monaco-editor/esm/vs/base/browser/ui/list/listWidget.js\");\n/* harmony import */ var _base_common_cancellation_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../../base/common/cancellation.js */ \"./node_modules/monaco-editor/esm/vs/base/common/cancellation.js\");\n/* harmony import */ var _base_common_codicons_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../../base/common/codicons.js */ \"./node_modules/monaco-editor/esm/vs/base/common/codicons.js\");\n/* harmony import */ var _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../../../base/common/lifecycle.js */ \"./node_modules/monaco-editor/esm/vs/base/common/lifecycle.js\");\n/* harmony import */ var _base_common_platform_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../../../base/common/platform.js */ \"./node_modules/monaco-editor/esm/vs/base/common/platform.js\");\n/* harmony import */ var _base_common_themables_js__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ../../../base/common/themables.js */ \"./node_modules/monaco-editor/esm/vs/base/common/themables.js\");\n/* harmony import */ var _actionWidget_css__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ./actionWidget.css */ \"./node_modules/monaco-editor/esm/vs/platform/actionWidget/browser/actionWidget.css\");\n/* harmony import */ var _nls_js__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ../../../nls.js */ \"./node_modules/monaco-editor/esm/vs/nls.js\");\n/* harmony import */ var _contextview_browser_contextView_js__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! ../../contextview/browser/contextView.js */ \"./node_modules/monaco-editor/esm/vs/platform/contextview/browser/contextView.js\");\n/* harmony import */ var _keybinding_common_keybinding_js__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(/*! ../../keybinding/common/keybinding.js */ \"./node_modules/monaco-editor/esm/vs/platform/keybinding/common/keybinding.js\");\n/* harmony import */ var _theme_browser_defaultStyles_js__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(/*! ../../theme/browser/defaultStyles.js */ \"./node_modules/monaco-editor/esm/vs/platform/theme/browser/defaultStyles.js\");\n/* harmony import */ var _theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_13__ = __webpack_require__(/*! ../../theme/common/colorRegistry.js */ \"./node_modules/monaco-editor/esm/vs/platform/theme/common/colorRegistry.js\");\nvar __decorate = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\n return c > 3 && r && Object.defineProperty(target, key, r), r;\n};\nvar __param = (undefined && undefined.__param) || function (paramIndex, decorator) {\n return function (target, key) { decorator(target, key, paramIndex); }\n};\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nconst acceptSelectedActionCommand = 'acceptSelectedCodeAction';\nconst previewSelectedActionCommand = 'previewSelectedCodeAction';\nclass HeaderRenderer {\n get templateId() { return \"header\" /* ActionListItemKind.Header */; }\n renderTemplate(container) {\n container.classList.add('group-header');\n const text = document.createElement('span');\n container.append(text);\n return { container, text };\n }\n renderElement(element, _index, templateData) {\n var _a, _b;\n templateData.text.textContent = (_b = (_a = element.group) === null || _a === void 0 ? void 0 : _a.title) !== null && _b !== void 0 ? _b : '';\n }\n disposeTemplate(_templateData) {\n // noop\n }\n}\nlet ActionItemRenderer = class ActionItemRenderer {\n get templateId() { return \"action\" /* ActionListItemKind.Action */; }\n constructor(_supportsPreview, _keybindingService) {\n this._supportsPreview = _supportsPreview;\n this._keybindingService = _keybindingService;\n }\n renderTemplate(container) {\n container.classList.add(this.templateId);\n const icon = document.createElement('div');\n icon.className = 'icon';\n container.append(icon);\n const text = document.createElement('span');\n text.className = 'title';\n container.append(text);\n const keybinding = new _base_browser_ui_keybindingLabel_keybindingLabel_js__WEBPACK_IMPORTED_MODULE_1__.KeybindingLabel(container, _base_common_platform_js__WEBPACK_IMPORTED_MODULE_6__.OS);\n return { container, icon, text, keybinding };\n }\n renderElement(element, _index, data) {\n var _a, _b, _c;\n if ((_a = element.group) === null || _a === void 0 ? void 0 : _a.icon) {\n data.icon.className = _base_common_themables_js__WEBPACK_IMPORTED_MODULE_7__.ThemeIcon.asClassName(element.group.icon);\n if (element.group.icon.color) {\n data.icon.style.color = (0,_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_13__.asCssVariable)(element.group.icon.color.id);\n }\n }\n else {\n data.icon.className = _base_common_themables_js__WEBPACK_IMPORTED_MODULE_7__.ThemeIcon.asClassName(_base_common_codicons_js__WEBPACK_IMPORTED_MODULE_4__.Codicon.lightBulb);\n data.icon.style.color = 'var(--vscode-editorLightBulb-foreground)';\n }\n if (!element.item || !element.label) {\n return;\n }\n data.text.textContent = stripNewlines(element.label);\n data.keybinding.set(element.keybinding);\n _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.setVisibility(!!element.keybinding, data.keybinding.element);\n const actionTitle = (_b = this._keybindingService.lookupKeybinding(acceptSelectedActionCommand)) === null || _b === void 0 ? void 0 : _b.getLabel();\n const previewTitle = (_c = this._keybindingService.lookupKeybinding(previewSelectedActionCommand)) === null || _c === void 0 ? void 0 : _c.getLabel();\n data.container.classList.toggle('option-disabled', element.disabled);\n if (element.disabled) {\n data.container.title = element.label;\n }\n else if (actionTitle && previewTitle) {\n if (this._supportsPreview && element.canPreview) {\n data.container.title = (0,_nls_js__WEBPACK_IMPORTED_MODULE_9__.localize)({ key: 'label-preview', comment: ['placeholders are keybindings, e.g \"F2 to apply, Shift+F2 to preview\"'] }, \"{0} to apply, {1} to preview\", actionTitle, previewTitle);\n }\n else {\n data.container.title = (0,_nls_js__WEBPACK_IMPORTED_MODULE_9__.localize)({ key: 'label', comment: ['placeholder is a keybinding, e.g \"F2 to apply\"'] }, \"{0} to apply\", actionTitle);\n }\n }\n else {\n data.container.title = '';\n }\n }\n disposeTemplate(_templateData) {\n // noop\n }\n};\nActionItemRenderer = __decorate([\n __param(1, _keybinding_common_keybinding_js__WEBPACK_IMPORTED_MODULE_11__.IKeybindingService)\n], ActionItemRenderer);\nclass AcceptSelectedEvent extends UIEvent {\n constructor() { super('acceptSelectedAction'); }\n}\nclass PreviewSelectedEvent extends UIEvent {\n constructor() { super('previewSelectedAction'); }\n}\nfunction getKeyboardNavigationLabel(item) {\n // Filter out header vs. action\n if (item.kind === 'action') {\n return item.label;\n }\n return undefined;\n}\nlet ActionList = class ActionList extends _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_5__.Disposable {\n constructor(user, preview, items, _delegate, _contextViewService, _keybindingService) {\n super();\n this._delegate = _delegate;\n this._contextViewService = _contextViewService;\n this._keybindingService = _keybindingService;\n this._actionLineHeight = 24;\n this._headerLineHeight = 26;\n this.cts = this._register(new _base_common_cancellation_js__WEBPACK_IMPORTED_MODULE_3__.CancellationTokenSource());\n this.domNode = document.createElement('div');\n this.domNode.classList.add('actionList');\n const virtualDelegate = {\n getHeight: element => element.kind === \"header\" /* ActionListItemKind.Header */ ? this._headerLineHeight : this._actionLineHeight,\n getTemplateId: element => element.kind\n };\n this._list = this._register(new _base_browser_ui_list_listWidget_js__WEBPACK_IMPORTED_MODULE_2__.List(user, this.domNode, virtualDelegate, [\n new ActionItemRenderer(preview, this._keybindingService),\n new HeaderRenderer(),\n ], {\n keyboardSupport: false,\n typeNavigationEnabled: true,\n keyboardNavigationLabelProvider: { getKeyboardNavigationLabel },\n accessibilityProvider: {\n getAriaLabel: element => {\n if (element.kind === \"action\" /* ActionListItemKind.Action */) {\n let label = element.label ? stripNewlines(element === null || element === void 0 ? void 0 : element.label) : '';\n if (element.disabled) {\n label = (0,_nls_js__WEBPACK_IMPORTED_MODULE_9__.localize)({ key: 'customQuickFixWidget.labels', comment: [`Action widget labels for accessibility.`] }, \"{0}, Disabled Reason: {1}\", label, element.disabled);\n }\n return label;\n }\n return null;\n },\n getWidgetAriaLabel: () => (0,_nls_js__WEBPACK_IMPORTED_MODULE_9__.localize)({ key: 'customQuickFixWidget', comment: [`An action widget option`] }, \"Action Widget\"),\n getRole: (e) => e.kind === \"action\" /* ActionListItemKind.Action */ ? 'option' : 'separator',\n getWidgetRole: () => 'listbox',\n },\n }));\n this._list.style(_theme_browser_defaultStyles_js__WEBPACK_IMPORTED_MODULE_12__.defaultListStyles);\n this._register(this._list.onMouseClick(e => this.onListClick(e)));\n this._register(this._list.onMouseOver(e => this.onListHover(e)));\n this._register(this._list.onDidChangeFocus(() => this.onFocus()));\n this._register(this._list.onDidChangeSelection(e => this.onListSelection(e)));\n this._allMenuItems = items;\n this._list.splice(0, this._list.length, this._allMenuItems);\n if (this._list.length) {\n this.focusNext();\n }\n }\n focusCondition(element) {\n return !element.disabled && element.kind === \"action\" /* ActionListItemKind.Action */;\n }\n hide(didCancel) {\n this._delegate.onHide(didCancel);\n this.cts.cancel();\n this._contextViewService.hideContextView();\n }\n layout(minWidth) {\n // Updating list height, depending on how many separators and headers there are.\n const numHeaders = this._allMenuItems.filter(item => item.kind === 'header').length;\n const itemsHeight = this._allMenuItems.length * this._actionLineHeight;\n const heightWithHeaders = itemsHeight + numHeaders * this._headerLineHeight - numHeaders * this._actionLineHeight;\n this._list.layout(heightWithHeaders);\n let maxWidth = minWidth;\n if (this._allMenuItems.length >= 50) {\n maxWidth = 380;\n }\n else {\n // For finding width dynamically (not using resize observer)\n const itemWidths = this._allMenuItems.map((_, index) => {\n const element = this.domNode.ownerDocument.getElementById(this._list.getElementID(index));\n if (element) {\n element.style.width = 'auto';\n const width = element.getBoundingClientRect().width;\n element.style.width = '';\n return width;\n }\n return 0;\n });\n // resize observer - can be used in the future since list widget supports dynamic height but not width\n maxWidth = Math.max(...itemWidths, minWidth);\n }\n const maxVhPrecentage = 0.7;\n const height = Math.min(heightWithHeaders, this.domNode.ownerDocument.body.clientHeight * maxVhPrecentage);\n this._list.layout(height, maxWidth);\n this.domNode.style.height = `${height}px`;\n this._list.domFocus();\n return maxWidth;\n }\n focusPrevious() {\n this._list.focusPrevious(1, true, undefined, this.focusCondition);\n }\n focusNext() {\n this._list.focusNext(1, true, undefined, this.focusCondition);\n }\n acceptSelected(preview) {\n const focused = this._list.getFocus();\n if (focused.length === 0) {\n return;\n }\n const focusIndex = focused[0];\n const element = this._list.element(focusIndex);\n if (!this.focusCondition(element)) {\n return;\n }\n const event = preview ? new PreviewSelectedEvent() : new AcceptSelectedEvent();\n this._list.setSelection([focusIndex], event);\n }\n onListSelection(e) {\n if (!e.elements.length) {\n return;\n }\n const element = e.elements[0];\n if (element.item && this.focusCondition(element)) {\n this._delegate.onSelect(element.item, e.browserEvent instanceof PreviewSelectedEvent);\n }\n else {\n this._list.setSelection([]);\n }\n }\n onFocus() {\n var _a, _b;\n const focused = this._list.getFocus();\n if (focused.length === 0) {\n return;\n }\n const focusIndex = focused[0];\n const element = this._list.element(focusIndex);\n (_b = (_a = this._delegate).onFocus) === null || _b === void 0 ? void 0 : _b.call(_a, element.item);\n }\n async onListHover(e) {\n const element = e.element;\n if (element && element.item && this.focusCondition(element)) {\n if (this._delegate.onHover && !element.disabled && element.kind === \"action\" /* ActionListItemKind.Action */) {\n const result = await this._delegate.onHover(element.item, this.cts.token);\n element.canPreview = result ? result.canPreview : undefined;\n }\n if (e.index) {\n this._list.splice(e.index, 1, [element]);\n }\n }\n this._list.setFocus(typeof e.index === 'number' ? [e.index] : []);\n }\n onListClick(e) {\n if (e.element && this.focusCondition(e.element)) {\n this._list.setFocus([]);\n }\n }\n};\nActionList = __decorate([\n __param(4, _contextview_browser_contextView_js__WEBPACK_IMPORTED_MODULE_10__.IContextViewService),\n __param(5, _keybinding_common_keybinding_js__WEBPACK_IMPORTED_MODULE_11__.IKeybindingService)\n], ActionList);\n\nfunction stripNewlines(str) {\n return str.replace(/\\r\\n|\\r|\\n/g, ' ');\n}\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/platform/actionWidget/browser/actionList.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/platform/actionWidget/browser/actionWidget.js":
/*!*****************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/platform/actionWidget/browser/actionWidget.js ***!
\*****************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ IActionWidgetService: () => (/* binding */ IActionWidgetService)\n/* harmony export */ });\n/* harmony import */ var _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../base/browser/dom.js */ \"./node_modules/monaco-editor/esm/vs/base/browser/dom.js\");\n/* harmony import */ var _base_browser_ui_actionbar_actionbar_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../base/browser/ui/actionbar/actionbar.js */ \"./node_modules/monaco-editor/esm/vs/base/browser/ui/actionbar/actionbar.js\");\n/* harmony import */ var _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../base/common/lifecycle.js */ \"./node_modules/monaco-editor/esm/vs/base/common/lifecycle.js\");\n/* harmony import */ var _actionWidget_css__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./actionWidget.css */ \"./node_modules/monaco-editor/esm/vs/platform/actionWidget/browser/actionWidget.css\");\n/* harmony import */ var _nls_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../../nls.js */ \"./node_modules/monaco-editor/esm/vs/nls.js\");\n/* harmony import */ var _actionList_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./actionList.js */ \"./node_modules/monaco-editor/esm/vs/platform/actionWidget/browser/actionList.js\");\n/* harmony import */ var _actions_common_actions_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../../actions/common/actions.js */ \"./node_modules/monaco-editor/esm/vs/platform/actions/common/actions.js\");\n/* harmony import */ var _contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ../../contextkey/common/contextkey.js */ \"./node_modules/monaco-editor/esm/vs/platform/contextkey/common/contextkey.js\");\n/* harmony import */ var _contextview_browser_contextView_js__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ../../contextview/browser/contextView.js */ \"./node_modules/monaco-editor/esm/vs/platform/contextview/browser/contextView.js\");\n/* harmony import */ var _instantiation_common_extensions_js__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ../../instantiation/common/extensions.js */ \"./node_modules/monaco-editor/esm/vs/platform/instantiation/common/extensions.js\");\n/* harmony import */ var _instantiation_common_instantiation_js__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! ../../instantiation/common/instantiation.js */ \"./node_modules/monaco-editor/esm/vs/platform/instantiation/common/instantiation.js\");\n/* harmony import */ var _theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(/*! ../../theme/common/colorRegistry.js */ \"./node_modules/monaco-editor/esm/vs/platform/theme/common/colorRegistry.js\");\nvar __decorate = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\n return c > 3 && r && Object.defineProperty(target, key, r), r;\n};\nvar __param = (undefined && undefined.__param) || function (paramIndex, decorator) {\n return function (target, key) { decorator(target, key, paramIndex); }\n};\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n\n\n\n\n\n\n\n\n\n\n\n(0,_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_11__.registerColor)('actionBar.toggledBackground', { dark: _theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_11__.inputActiveOptionBackground, light: _theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_11__.inputActiveOptionBackground, hcDark: _theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_11__.inputActiveOptionBackground, hcLight: _theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_11__.inputActiveOptionBackground, }, (0,_nls_js__WEBPACK_IMPORTED_MODULE_4__.localize)('actionBar.toggledBackground', 'Background color for toggled action items in action bar.'));\nconst ActionWidgetContextKeys = {\n Visible: new _contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_7__.RawContextKey('codeActionMenuVisible', false, (0,_nls_js__WEBPACK_IMPORTED_MODULE_4__.localize)('codeActionMenuVisible', \"Whether the action widget list is visible\"))\n};\nconst IActionWidgetService = (0,_instantiation_common_instantiation_js__WEBPACK_IMPORTED_MODULE_10__.createDecorator)('actionWidgetService');\nlet ActionWidgetService = class ActionWidgetService extends _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_2__.Disposable {\n get isVisible() {\n return ActionWidgetContextKeys.Visible.getValue(this._contextKeyService) || false;\n }\n constructor(_contextViewService, _contextKeyService, _instantiationService) {\n super();\n this._contextViewService = _contextViewService;\n this._contextKeyService = _contextKeyService;\n this._instantiationService = _instantiationService;\n this._list = this._register(new _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_2__.MutableDisposable());\n }\n show(user, supportsPreview, items, delegate, anchor, container, actionBarActions) {\n const visibleContext = ActionWidgetContextKeys.Visible.bindTo(this._contextKeyService);\n const list = this._instantiationService.createInstance(_actionList_js__WEBPACK_IMPORTED_MODULE_5__.ActionList, user, supportsPreview, items, delegate);\n this._contextViewService.showContextView({\n getAnchor: () => anchor,\n render: (container) => {\n visibleContext.set(true);\n return this._renderWidget(container, list, actionBarActions !== null && actionBarActions !== void 0 ? actionBarActions : []);\n },\n onHide: (didCancel) => {\n visibleContext.reset();\n this._onWidgetClosed(didCancel);\n },\n }, container, false);\n }\n acceptSelected(preview) {\n var _a;\n (_a = this._list.value) === null || _a === void 0 ? void 0 : _a.acceptSelected(preview);\n }\n focusPrevious() {\n var _a, _b;\n (_b = (_a = this._list) === null || _a === void 0 ? void 0 : _a.value) === null || _b === void 0 ? void 0 : _b.focusPrevious();\n }\n focusNext() {\n var _a, _b;\n (_b = (_a = this._list) === null || _a === void 0 ? void 0 : _a.value) === null || _b === void 0 ? void 0 : _b.focusNext();\n }\n hide() {\n var _a;\n (_a = this._list.value) === null || _a === void 0 ? void 0 : _a.hide();\n this._list.clear();\n }\n _renderWidget(element, list, actionBarActions) {\n var _a;\n const widget = document.createElement('div');\n widget.classList.add('action-widget');\n element.appendChild(widget);\n this._list.value = list;\n if (this._list.value) {\n widget.appendChild(this._list.value.domNode);\n }\n else {\n throw new Error('List has no value');\n }\n const renderDisposables = new _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_2__.DisposableStore();\n // Invisible div to block mouse interaction in the rest of the UI\n const menuBlock = document.createElement('div');\n const block = element.appendChild(menuBlock);\n block.classList.add('context-view-block');\n renderDisposables.add(_base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.addDisposableListener(block, _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.EventType.MOUSE_DOWN, e => e.stopPropagation()));\n // Invisible div to block mouse interaction with the menu\n const pointerBlockDiv = document.createElement('div');\n const pointerBlock = element.appendChild(pointerBlockDiv);\n pointerBlock.classList.add('context-view-pointerBlock');\n // Removes block on click INSIDE widget or ANY mouse movement\n renderDisposables.add(_base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.addDisposableListener(pointerBlock, _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.EventType.POINTER_MOVE, () => pointerBlock.remove()));\n renderDisposables.add(_base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.addDisposableListener(pointerBlock, _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.EventType.MOUSE_DOWN, () => pointerBlock.remove()));\n // Action bar\n let actionBarWidth = 0;\n if (actionBarActions.length) {\n const actionBar = this._createActionBar('.action-widget-action-bar', actionBarActions);\n if (actionBar) {\n widget.appendChild(actionBar.getContainer().parentElement);\n renderDisposables.add(actionBar);\n actionBarWidth = actionBar.getContainer().offsetWidth;\n }\n }\n const width = (_a = this._list.value) === null || _a === void 0 ? void 0 : _a.layout(actionBarWidth);\n widget.style.width = `${width}px`;\n const focusTracker = renderDisposables.add(_base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.trackFocus(element));\n renderDisposables.add(focusTracker.onDidBlur(() => this.hide()));\n return renderDisposables;\n }\n _createActionBar(className, actions) {\n if (!actions.length) {\n return undefined;\n }\n const container = _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.$(className);\n const actionBar = new _base_browser_ui_actionbar_actionbar_js__WEBPACK_IMPORTED_MODULE_1__.ActionBar(container);\n actionBar.push(actions, { icon: false, label: true });\n return actionBar;\n }\n _onWidgetClosed(didCancel) {\n var _a;\n (_a = this._list.value) === null || _a === void 0 ? void 0 : _a.hide(didCancel);\n }\n};\nActionWidgetService = __decorate([\n __param(0, _contextview_browser_contextView_js__WEBPACK_IMPORTED_MODULE_8__.IContextViewService),\n __param(1, _contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_7__.IContextKeyService),\n __param(2, _instantiation_common_instantiation_js__WEBPACK_IMPORTED_MODULE_10__.IInstantiationService)\n], ActionWidgetService);\n(0,_instantiation_common_extensions_js__WEBPACK_IMPORTED_MODULE_9__.registerSingleton)(IActionWidgetService, ActionWidgetService, 1 /* InstantiationType.Delayed */);\nconst weight = 100 /* KeybindingWeight.EditorContrib */ + 1000;\n(0,_actions_common_actions_js__WEBPACK_IMPORTED_MODULE_6__.registerAction2)(class extends _actions_common_actions_js__WEBPACK_IMPORTED_MODULE_6__.Action2 {\n constructor() {\n super({\n id: 'hideCodeActionWidget',\n title: (0,_nls_js__WEBPACK_IMPORTED_MODULE_4__.localize2)('hideCodeActionWidget.title', \"Hide action widget\"),\n precondition: ActionWidgetContextKeys.Visible,\n keybinding: {\n weight,\n primary: 9 /* KeyCode.Escape */,\n secondary: [1024 /* KeyMod.Shift */ | 9 /* KeyCode.Escape */]\n },\n });\n }\n run(accessor) {\n accessor.get(IActionWidgetService).hide();\n }\n});\n(0,_actions_common_actions_js__WEBPACK_IMPORTED_MODULE_6__.registerAction2)(class extends _actions_common_actions_js__WEBPACK_IMPORTED_MODULE_6__.Action2 {\n constructor() {\n super({\n id: 'selectPrevCodeAction',\n title: (0,_nls_js__WEBPACK_IMPORTED_MODULE_4__.localize2)('selectPrevCodeAction.title', \"Select previous action\"),\n precondition: ActionWidgetContextKeys.Visible,\n keybinding: {\n weight,\n primary: 16 /* KeyCode.UpArrow */,\n secondary: [2048 /* KeyMod.CtrlCmd */ | 16 /* KeyCode.UpArrow */],\n mac: { primary: 16 /* KeyCode.UpArrow */, secondary: [2048 /* KeyMod.CtrlCmd */ | 16 /* KeyCode.UpArrow */, 256 /* KeyMod.WinCtrl */ | 46 /* KeyCode.KeyP */] },\n }\n });\n }\n run(accessor) {\n const widgetService = accessor.get(IActionWidgetService);\n if (widgetService instanceof ActionWidgetService) {\n widgetService.focusPrevious();\n }\n }\n});\n(0,_actions_common_actions_js__WEBPACK_IMPORTED_MODULE_6__.registerAction2)(class extends _actions_common_actions_js__WEBPACK_IMPORTED_MODULE_6__.Action2 {\n constructor() {\n super({\n id: 'selectNextCodeAction',\n title: (0,_nls_js__WEBPACK_IMPORTED_MODULE_4__.localize2)('selectNextCodeAction.title', \"Select next action\"),\n precondition: ActionWidgetContextKeys.Visible,\n keybinding: {\n weight,\n primary: 18 /* KeyCode.DownArrow */,\n secondary: [2048 /* KeyMod.CtrlCmd */ | 18 /* KeyCode.DownArrow */],\n mac: { primary: 18 /* KeyCode.DownArrow */, secondary: [2048 /* KeyMod.CtrlCmd */ | 18 /* KeyCode.DownArrow */, 256 /* KeyMod.WinCtrl */ | 44 /* KeyCode.KeyN */] }\n }\n });\n }\n run(accessor) {\n const widgetService = accessor.get(IActionWidgetService);\n if (widgetService instanceof ActionWidgetService) {\n widgetService.focusNext();\n }\n }\n});\n(0,_actions_common_actions_js__WEBPACK_IMPORTED_MODULE_6__.registerAction2)(class extends _actions_common_actions_js__WEBPACK_IMPORTED_MODULE_6__.Action2 {\n constructor() {\n super({\n id: _actionList_js__WEBPACK_IMPORTED_MODULE_5__.acceptSelectedActionCommand,\n title: (0,_nls_js__WEBPACK_IMPORTED_MODULE_4__.localize2)('acceptSelected.title', \"Accept selected action\"),\n precondition: ActionWidgetContextKeys.Visible,\n keybinding: {\n weight,\n primary: 3 /* KeyCode.Enter */,\n secondary: [2048 /* KeyMod.CtrlCmd */ | 89 /* KeyCode.Period */],\n }\n });\n }\n run(accessor) {\n const widgetService = accessor.get(IActionWidgetService);\n if (widgetService instanceof ActionWidgetService) {\n widgetService.acceptSelected();\n }\n }\n});\n(0,_actions_common_actions_js__WEBPACK_IMPORTED_MODULE_6__.registerAction2)(class extends _actions_common_actions_js__WEBPACK_IMPORTED_MODULE_6__.Action2 {\n constructor() {\n super({\n id: _actionList_js__WEBPACK_IMPORTED_MODULE_5__.previewSelectedActionCommand,\n title: (0,_nls_js__WEBPACK_IMPORTED_MODULE_4__.localize2)('previewSelected.title', \"Preview selected action\"),\n precondition: ActionWidgetContextKeys.Visible,\n keybinding: {\n weight,\n primary: 2048 /* KeyMod.CtrlCmd */ | 3 /* KeyCode.Enter */,\n }\n });\n }\n run(accessor) {\n const widgetService = accessor.get(IActionWidgetService);\n if (widgetService instanceof ActionWidgetService) {\n widgetService.acceptSelected(true);\n }\n }\n});\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/platform/actionWidget/browser/actionWidget.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/platform/actions/browser/menuEntryActionViewItem.js":
/*!***********************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/platform/actions/browser/menuEntryActionViewItem.js ***!
\***********************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ DropdownWithDefaultActionViewItem: () => (/* binding */ DropdownWithDefaultActionViewItem),\n/* harmony export */ MenuEntryActionViewItem: () => (/* binding */ MenuEntryActionViewItem),\n/* harmony export */ SubmenuEntryActionViewItem: () => (/* binding */ SubmenuEntryActionViewItem),\n/* harmony export */ createActionViewItem: () => (/* binding */ createActionViewItem),\n/* harmony export */ createAndFillInActionBarActions: () => (/* binding */ createAndFillInActionBarActions),\n/* harmony export */ createAndFillInContextMenuActions: () => (/* binding */ createAndFillInContextMenuActions)\n/* harmony export */ });\n/* harmony import */ var _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../base/browser/dom.js */ \"./node_modules/monaco-editor/esm/vs/base/browser/dom.js\");\n/* harmony import */ var _base_browser_keyboardEvent_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../base/browser/keyboardEvent.js */ \"./node_modules/monaco-editor/esm/vs/base/browser/keyboardEvent.js\");\n/* harmony import */ var _base_browser_ui_actionbar_actionViewItems_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../base/browser/ui/actionbar/actionViewItems.js */ \"./node_modules/monaco-editor/esm/vs/base/browser/ui/actionbar/actionViewItems.js\");\n/* harmony import */ var _base_browser_ui_dropdown_dropdownActionViewItem_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../../base/browser/ui/dropdown/dropdownActionViewItem.js */ \"./node_modules/monaco-editor/esm/vs/base/browser/ui/dropdown/dropdownActionViewItem.js\");\n/* harmony import */ var _base_common_actions_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../../base/common/actions.js */ \"./node_modules/monaco-editor/esm/vs/base/common/actions.js\");\n/* harmony import */ var _base_common_keybindingLabels_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../../../base/common/keybindingLabels.js */ \"./node_modules/monaco-editor/esm/vs/base/common/keybindingLabels.js\");\n/* harmony import */ var _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../../../base/common/lifecycle.js */ \"./node_modules/monaco-editor/esm/vs/base/common/lifecycle.js\");\n/* harmony import */ var _base_common_platform_js__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ../../../base/common/platform.js */ \"./node_modules/monaco-editor/esm/vs/base/common/platform.js\");\n/* harmony import */ var _menuEntryActionViewItem_css__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ./menuEntryActionViewItem.css */ \"./node_modules/monaco-editor/esm/vs/platform/actions/browser/menuEntryActionViewItem.css\");\n/* harmony import */ var _nls_js__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ../../../nls.js */ \"./node_modules/monaco-editor/esm/vs/nls.js\");\n/* harmony import */ var _common_actions_js__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! ../common/actions.js */ \"./node_modules/monaco-editor/esm/vs/platform/actions/common/actions.js\");\n/* harmony import */ var _action_common_action_js__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(/*! ../../action/common/action.js */ \"./node_modules/monaco-editor/esm/vs/platform/action/common/action.js\");\n/* harmony import */ var _contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(/*! ../../contextkey/common/contextkey.js */ \"./node_modules/monaco-editor/esm/vs/platform/contextkey/common/contextkey.js\");\n/* harmony import */ var _contextview_browser_contextView_js__WEBPACK_IMPORTED_MODULE_13__ = __webpack_require__(/*! ../../contextview/browser/contextView.js */ \"./node_modules/monaco-editor/esm/vs/platform/contextview/browser/contextView.js\");\n/* harmony import */ var _instantiation_common_instantiation_js__WEBPACK_IMPORTED_MODULE_14__ = __webpack_require__(/*! ../../instantiation/common/instantiation.js */ \"./node_modules/monaco-editor/esm/vs/platform/instantiation/common/instantiation.js\");\n/* harmony import */ var _keybinding_common_keybinding_js__WEBPACK_IMPORTED_MODULE_15__ = __webpack_require__(/*! ../../keybinding/common/keybinding.js */ \"./node_modules/monaco-editor/esm/vs/platform/keybinding/common/keybinding.js\");\n/* harmony import */ var _notification_common_notification_js__WEBPACK_IMPORTED_MODULE_16__ = __webpack_require__(/*! ../../notification/common/notification.js */ \"./node_modules/monaco-editor/esm/vs/platform/notification/common/notification.js\");\n/* harmony import */ var _storage_common_storage_js__WEBPACK_IMPORTED_MODULE_17__ = __webpack_require__(/*! ../../storage/common/storage.js */ \"./node_modules/monaco-editor/esm/vs/platform/storage/common/storage.js\");\n/* harmony import */ var _theme_common_themeService_js__WEBPACK_IMPORTED_MODULE_18__ = __webpack_require__(/*! ../../theme/common/themeService.js */ \"./node_modules/monaco-editor/esm/vs/platform/theme/common/themeService.js\");\n/* harmony import */ var _base_common_themables_js__WEBPACK_IMPORTED_MODULE_19__ = __webpack_require__(/*! ../../../base/common/themables.js */ \"./node_modules/monaco-editor/esm/vs/base/common/themables.js\");\n/* harmony import */ var _theme_common_theme_js__WEBPACK_IMPORTED_MODULE_20__ = __webpack_require__(/*! ../../theme/common/theme.js */ \"./node_modules/monaco-editor/esm/vs/platform/theme/common/theme.js\");\n/* harmony import */ var _base_common_types_js__WEBPACK_IMPORTED_MODULE_21__ = __webpack_require__(/*! ../../../base/common/types.js */ \"./node_modules/monaco-editor/esm/vs/base/common/types.js\");\n/* harmony import */ var _theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_22__ = __webpack_require__(/*! ../../theme/common/colorRegistry.js */ \"./node_modules/monaco-editor/esm/vs/platform/theme/common/colorRegistry.js\");\n/* harmony import */ var _theme_browser_defaultStyles_js__WEBPACK_IMPORTED_MODULE_23__ = __webpack_require__(/*! ../../theme/browser/defaultStyles.js */ \"./node_modules/monaco-editor/esm/vs/platform/theme/browser/defaultStyles.js\");\n/* harmony import */ var _accessibility_common_accessibility_js__WEBPACK_IMPORTED_MODULE_24__ = __webpack_require__(/*! ../../accessibility/common/accessibility.js */ \"./node_modules/monaco-editor/esm/vs/platform/accessibility/common/accessibility.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\nvar __decorate = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\n return c > 3 && r && Object.defineProperty(target, key, r), r;\n};\nvar __param = (undefined && undefined.__param) || function (paramIndex, decorator) {\n return function (target, key) { decorator(target, key, paramIndex); }\n};\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nfunction createAndFillInContextMenuActions(menu, options, target, primaryGroup) {\n const groups = menu.getActions(options);\n const modifierKeyEmitter = _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.ModifierKeyEmitter.getInstance();\n const useAlternativeActions = modifierKeyEmitter.keyStatus.altKey || ((_base_common_platform_js__WEBPACK_IMPORTED_MODULE_7__.isWindows || _base_common_platform_js__WEBPACK_IMPORTED_MODULE_7__.isLinux) && modifierKeyEmitter.keyStatus.shiftKey);\n fillInActions(groups, target, useAlternativeActions, primaryGroup ? actionGroup => actionGroup === primaryGroup : actionGroup => actionGroup === 'navigation');\n}\nfunction createAndFillInActionBarActions(menu, options, target, primaryGroup, shouldInlineSubmenu, useSeparatorsInPrimaryActions) {\n const groups = menu.getActions(options);\n const isPrimaryAction = typeof primaryGroup === 'string' ? (actionGroup) => actionGroup === primaryGroup : primaryGroup;\n // Action bars handle alternative actions on their own so the alternative actions should be ignored\n fillInActions(groups, target, false, isPrimaryAction, shouldInlineSubmenu, useSeparatorsInPrimaryActions);\n}\nfunction fillInActions(groups, target, useAlternativeActions, isPrimaryAction = actionGroup => actionGroup === 'navigation', shouldInlineSubmenu = () => false, useSeparatorsInPrimaryActions = false) {\n let primaryBucket;\n let secondaryBucket;\n if (Array.isArray(target)) {\n primaryBucket = target;\n secondaryBucket = target;\n }\n else {\n primaryBucket = target.primary;\n secondaryBucket = target.secondary;\n }\n const submenuInfo = new Set();\n for (const [group, actions] of groups) {\n let target;\n if (isPrimaryAction(group)) {\n target = primaryBucket;\n if (target.length > 0 && useSeparatorsInPrimaryActions) {\n target.push(new _base_common_actions_js__WEBPACK_IMPORTED_MODULE_4__.Separator());\n }\n }\n else {\n target = secondaryBucket;\n if (target.length > 0) {\n target.push(new _base_common_actions_js__WEBPACK_IMPORTED_MODULE_4__.Separator());\n }\n }\n for (let action of actions) {\n if (useAlternativeActions) {\n action = action instanceof _common_actions_js__WEBPACK_IMPORTED_MODULE_10__.MenuItemAction && action.alt ? action.alt : action;\n }\n const newLen = target.push(action);\n // keep submenu info for later inlining\n if (action instanceof _base_common_actions_js__WEBPACK_IMPORTED_MODULE_4__.SubmenuAction) {\n submenuInfo.add({ group, action, index: newLen - 1 });\n }\n }\n }\n // ask the outside if submenu should be inlined or not. only ask when\n // there would be enough space\n for (const { group, action, index } of submenuInfo) {\n const target = isPrimaryAction(group) ? primaryBucket : secondaryBucket;\n // inlining submenus with length 0 or 1 is easy,\n // larger submenus need to be checked with the overall limit\n const submenuActions = action.actions;\n if (shouldInlineSubmenu(action, group, target.length)) {\n target.splice(index, 1, ...submenuActions);\n }\n }\n}\nlet MenuEntryActionViewItem = class MenuEntryActionViewItem extends _base_browser_ui_actionbar_actionViewItems_js__WEBPACK_IMPORTED_MODULE_2__.ActionViewItem {\n constructor(action, options, _keybindingService, _notificationService, _contextKeyService, _themeService, _contextMenuService, _accessibilityService) {\n super(undefined, action, { icon: !!(action.class || action.item.icon), label: !action.class && !action.item.icon, draggable: options === null || options === void 0 ? void 0 : options.draggable, keybinding: options === null || options === void 0 ? void 0 : options.keybinding, hoverDelegate: options === null || options === void 0 ? void 0 : options.hoverDelegate });\n this._keybindingService = _keybindingService;\n this._notificationService = _notificationService;\n this._contextKeyService = _contextKeyService;\n this._themeService = _themeService;\n this._contextMenuService = _contextMenuService;\n this._accessibilityService = _accessibilityService;\n this._wantsAltCommand = false;\n this._itemClassDispose = this._register(new _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_6__.MutableDisposable());\n this._altKey = _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.ModifierKeyEmitter.getInstance();\n }\n get _menuItemAction() {\n return this._action;\n }\n get _commandAction() {\n return this._wantsAltCommand && this._menuItemAction.alt || this._menuItemAction;\n }\n async onClick(event) {\n event.preventDefault();\n event.stopPropagation();\n try {\n await this.actionRunner.run(this._commandAction, this._context);\n }\n catch (err) {\n this._notificationService.error(err);\n }\n }\n render(container) {\n super.render(container);\n container.classList.add('menu-entry');\n if (this.options.icon) {\n this._updateItemClass(this._menuItemAction.item);\n }\n if (this._menuItemAction.alt) {\n let isMouseOver = false;\n const updateAltState = () => {\n var _a;\n const wantsAltCommand = !!((_a = this._menuItemAction.alt) === null || _a === void 0 ? void 0 : _a.enabled) &&\n (!this._accessibilityService.isMotionReduced() || isMouseOver) && (this._altKey.keyStatus.altKey ||\n (this._altKey.keyStatus.shiftKey && isMouseOver));\n if (wantsAltCommand !== this._wantsAltCommand) {\n this._wantsAltCommand = wantsAltCommand;\n this.updateLabel();\n this.updateTooltip();\n this.updateClass();\n }\n };\n this._register(this._altKey.event(updateAltState));\n this._register((0,_base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.addDisposableListener)(container, 'mouseleave', _ => {\n isMouseOver = false;\n updateAltState();\n }));\n this._register((0,_base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.addDisposableListener)(container, 'mouseenter', _ => {\n isMouseOver = true;\n updateAltState();\n }));\n updateAltState();\n }\n }\n updateLabel() {\n if (this.options.label && this.label) {\n this.label.textContent = this._commandAction.label;\n }\n }\n getTooltip() {\n var _a;\n const keybinding = this._keybindingService.lookupKeybinding(this._commandAction.id, this._contextKeyService);\n const keybindingLabel = keybinding && keybinding.getLabel();\n const tooltip = this._commandAction.tooltip || this._commandAction.label;\n let title = keybindingLabel\n ? (0,_nls_js__WEBPACK_IMPORTED_MODULE_9__.localize)('titleAndKb', \"{0} ({1})\", tooltip, keybindingLabel)\n : tooltip;\n if (!this._wantsAltCommand && ((_a = this._menuItemAction.alt) === null || _a === void 0 ? void 0 : _a.enabled)) {\n const altTooltip = this._menuItemAction.alt.tooltip || this._menuItemAction.alt.label;\n const altKeybinding = this._keybindingService.lookupKeybinding(this._menuItemAction.alt.id, this._contextKeyService);\n const altKeybindingLabel = altKeybinding && altKeybinding.getLabel();\n const altTitleSection = altKeybindingLabel\n ? (0,_nls_js__WEBPACK_IMPORTED_MODULE_9__.localize)('titleAndKb', \"{0} ({1})\", altTooltip, altKeybindingLabel)\n : altTooltip;\n title = (0,_nls_js__WEBPACK_IMPORTED_MODULE_9__.localize)('titleAndKbAndAlt', \"{0}\\n[{1}] {2}\", title, _base_common_keybindingLabels_js__WEBPACK_IMPORTED_MODULE_5__.UILabelProvider.modifierLabels[_base_common_platform_js__WEBPACK_IMPORTED_MODULE_7__.OS].altKey, altTitleSection);\n }\n return title;\n }\n updateClass() {\n if (this.options.icon) {\n if (this._commandAction !== this._menuItemAction) {\n if (this._menuItemAction.alt) {\n this._updateItemClass(this._menuItemAction.alt.item);\n }\n }\n else {\n this._updateItemClass(this._menuItemAction.item);\n }\n }\n }\n _updateItemClass(item) {\n this._itemClassDispose.value = undefined;\n const { element, label } = this;\n if (!element || !label) {\n return;\n }\n const icon = this._commandAction.checked && (0,_action_common_action_js__WEBPACK_IMPORTED_MODULE_11__.isICommandActionToggleInfo)(item.toggled) && item.toggled.icon ? item.toggled.icon : item.icon;\n if (!icon) {\n return;\n }\n if (_base_common_themables_js__WEBPACK_IMPORTED_MODULE_19__.ThemeIcon.isThemeIcon(icon)) {\n // theme icons\n const iconClasses = _base_common_themables_js__WEBPACK_IMPORTED_MODULE_19__.ThemeIcon.asClassNameArray(icon);\n label.classList.add(...iconClasses);\n this._itemClassDispose.value = (0,_base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_6__.toDisposable)(() => {\n label.classList.remove(...iconClasses);\n });\n }\n else {\n // icon path/url\n label.style.backgroundImage = ((0,_theme_common_theme_js__WEBPACK_IMPORTED_MODULE_20__.isDark)(this._themeService.getColorTheme().type)\n ? (0,_base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.asCSSUrl)(icon.dark)\n : (0,_base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.asCSSUrl)(icon.light));\n label.classList.add('icon');\n this._itemClassDispose.value = (0,_base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_6__.combinedDisposable)((0,_base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_6__.toDisposable)(() => {\n label.style.backgroundImage = '';\n label.classList.remove('icon');\n }), this._themeService.onDidColorThemeChange(() => {\n // refresh when the theme changes in case we go between dark <-> light\n this.updateClass();\n }));\n }\n }\n};\nMenuEntryActionViewItem = __decorate([\n __param(2, _keybinding_common_keybinding_js__WEBPACK_IMPORTED_MODULE_15__.IKeybindingService),\n __param(3, _notification_common_notification_js__WEBPACK_IMPORTED_MODULE_16__.INotificationService),\n __param(4, _contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_12__.IContextKeyService),\n __param(5, _theme_common_themeService_js__WEBPACK_IMPORTED_MODULE_18__.IThemeService),\n __param(6, _contextview_browser_contextView_js__WEBPACK_IMPORTED_MODULE_13__.IContextMenuService),\n __param(7, _accessibility_common_accessibility_js__WEBPACK_IMPORTED_MODULE_24__.IAccessibilityService)\n], MenuEntryActionViewItem);\n\nlet SubmenuEntryActionViewItem = class SubmenuEntryActionViewItem extends _base_browser_ui_dropdown_dropdownActionViewItem_js__WEBPACK_IMPORTED_MODULE_3__.DropdownMenuActionViewItem {\n constructor(action, options, _keybindingService, _contextMenuService, _themeService) {\n var _a, _b, _c;\n const dropdownOptions = {\n ...options,\n menuAsChild: (_a = options === null || options === void 0 ? void 0 : options.menuAsChild) !== null && _a !== void 0 ? _a : false,\n classNames: (_b = options === null || options === void 0 ? void 0 : options.classNames) !== null && _b !== void 0 ? _b : (_base_common_themables_js__WEBPACK_IMPORTED_MODULE_19__.ThemeIcon.isThemeIcon(action.item.icon) ? _base_common_themables_js__WEBPACK_IMPORTED_MODULE_19__.ThemeIcon.asClassName(action.item.icon) : undefined),\n keybindingProvider: (_c = options === null || options === void 0 ? void 0 : options.keybindingProvider) !== null && _c !== void 0 ? _c : (action => _keybindingService.lookupKeybinding(action.id))\n };\n super(action, { getActions: () => action.actions }, _contextMenuService, dropdownOptions);\n this._keybindingService = _keybindingService;\n this._contextMenuService = _contextMenuService;\n this._themeService = _themeService;\n }\n render(container) {\n super.render(container);\n (0,_base_common_types_js__WEBPACK_IMPORTED_MODULE_21__.assertType)(this.element);\n container.classList.add('menu-entry');\n const action = this._action;\n const { icon } = action.item;\n if (icon && !_base_common_themables_js__WEBPACK_IMPORTED_MODULE_19__.ThemeIcon.isThemeIcon(icon)) {\n this.element.classList.add('icon');\n const setBackgroundImage = () => {\n if (this.element) {\n this.element.style.backgroundImage = ((0,_theme_common_theme_js__WEBPACK_IMPORTED_MODULE_20__.isDark)(this._themeService.getColorTheme().type)\n ? (0,_base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.asCSSUrl)(icon.dark)\n : (0,_base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.asCSSUrl)(icon.light));\n }\n };\n setBackgroundImage();\n this._register(this._themeService.onDidColorThemeChange(() => {\n // refresh when the theme changes in case we go between dark <-> light\n setBackgroundImage();\n }));\n }\n }\n};\nSubmenuEntryActionViewItem = __decorate([\n __param(2, _keybinding_common_keybinding_js__WEBPACK_IMPORTED_MODULE_15__.IKeybindingService),\n __param(3, _contextview_browser_contextView_js__WEBPACK_IMPORTED_MODULE_13__.IContextMenuService),\n __param(4, _theme_common_themeService_js__WEBPACK_IMPORTED_MODULE_18__.IThemeService)\n], SubmenuEntryActionViewItem);\n\nlet DropdownWithDefaultActionViewItem = class DropdownWithDefaultActionViewItem extends _base_browser_ui_actionbar_actionViewItems_js__WEBPACK_IMPORTED_MODULE_2__.BaseActionViewItem {\n constructor(submenuAction, options, _keybindingService, _notificationService, _contextMenuService, _menuService, _instaService, _storageService) {\n var _a, _b, _c;\n super(null, submenuAction);\n this._keybindingService = _keybindingService;\n this._notificationService = _notificationService;\n this._contextMenuService = _contextMenuService;\n this._menuService = _menuService;\n this._instaService = _instaService;\n this._storageService = _storageService;\n this._container = null;\n this._options = options;\n this._storageKey = `${submenuAction.item.submenu.id}_lastActionId`;\n // determine default action\n let defaultAction;\n const defaultActionId = (options === null || options === void 0 ? void 0 : options.persistLastActionId) ? _storageService.get(this._storageKey, 1 /* StorageScope.WORKSPACE */) : undefined;\n if (defaultActionId) {\n defaultAction = submenuAction.actions.find(a => defaultActionId === a.id);\n }\n if (!defaultAction) {\n defaultAction = submenuAction.actions[0];\n }\n this._defaultAction = this._instaService.createInstance(MenuEntryActionViewItem, defaultAction, { keybinding: this._getDefaultActionKeybindingLabel(defaultAction) });\n const dropdownOptions = {\n keybindingProvider: action => this._keybindingService.lookupKeybinding(action.id),\n ...options,\n menuAsChild: (_a = options === null || options === void 0 ? void 0 : options.menuAsChild) !== null && _a !== void 0 ? _a : true,\n classNames: (_b = options === null || options === void 0 ? void 0 : options.classNames) !== null && _b !== void 0 ? _b : ['codicon', 'codicon-chevron-down'],\n actionRunner: (_c = options === null || options === void 0 ? void 0 : options.actionRunner) !== null && _c !== void 0 ? _c : new _base_common_actions_js__WEBPACK_IMPORTED_MODULE_4__.ActionRunner(),\n };\n this._dropdown = new _base_browser_ui_dropdown_dropdownActionViewItem_js__WEBPACK_IMPORTED_MODULE_3__.DropdownMenuActionViewItem(submenuAction, submenuAction.actions, this._contextMenuService, dropdownOptions);\n this._register(this._dropdown.actionRunner.onDidRun((e) => {\n if (e.action instanceof _common_actions_js__WEBPACK_IMPORTED_MODULE_10__.MenuItemAction) {\n this.update(e.action);\n }\n }));\n }\n update(lastAction) {\n var _a;\n if ((_a = this._options) === null || _a === void 0 ? void 0 : _a.persistLastActionId) {\n this._storageService.store(this._storageKey, lastAction.id, 1 /* StorageScope.WORKSPACE */, 1 /* StorageTarget.MACHINE */);\n }\n this._defaultAction.dispose();\n this._defaultAction = this._instaService.createInstance(MenuEntryActionViewItem, lastAction, { keybinding: this._getDefaultActionKeybindingLabel(lastAction) });\n this._defaultAction.actionRunner = new class extends _base_common_actions_js__WEBPACK_IMPORTED_MODULE_4__.ActionRunner {\n async runAction(action, context) {\n await action.run(undefined);\n }\n }();\n if (this._container) {\n this._defaultAction.render((0,_base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.prepend)(this._container, (0,_base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.$)('.action-container')));\n }\n }\n _getDefaultActionKeybindingLabel(defaultAction) {\n var _a;\n let defaultActionKeybinding;\n if ((_a = this._options) === null || _a === void 0 ? void 0 : _a.renderKeybindingWithDefaultActionLabel) {\n const kb = this._keybindingService.lookupKeybinding(defaultAction.id);\n if (kb) {\n defaultActionKeybinding = `(${kb.getLabel()})`;\n }\n }\n return defaultActionKeybinding;\n }\n setActionContext(newContext) {\n super.setActionContext(newContext);\n this._defaultAction.setActionContext(newContext);\n this._dropdown.setActionContext(newContext);\n }\n render(container) {\n this._container = container;\n super.render(this._container);\n this._container.classList.add('monaco-dropdown-with-default');\n const primaryContainer = (0,_base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.$)('.action-container');\n this._defaultAction.render((0,_base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.append)(this._container, primaryContainer));\n this._register((0,_base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.addDisposableListener)(primaryContainer, _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.EventType.KEY_DOWN, (e) => {\n const event = new _base_browser_keyboardEvent_js__WEBPACK_IMPORTED_MODULE_1__.StandardKeyboardEvent(e);\n if (event.equals(17 /* KeyCode.RightArrow */)) {\n this._defaultAction.element.tabIndex = -1;\n this._dropdown.focus();\n event.stopPropagation();\n }\n }));\n const dropdownContainer = (0,_base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.$)('.dropdown-action-container');\n this._dropdown.render((0,_base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.append)(this._container, dropdownContainer));\n this._register((0,_base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.addDisposableListener)(dropdownContainer, _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.EventType.KEY_DOWN, (e) => {\n var _a;\n const event = new _base_browser_keyboardEvent_js__WEBPACK_IMPORTED_MODULE_1__.StandardKeyboardEvent(e);\n if (event.equals(15 /* KeyCode.LeftArrow */)) {\n this._defaultAction.element.tabIndex = 0;\n this._dropdown.setFocusable(false);\n (_a = this._defaultAction.element) === null || _a === void 0 ? void 0 : _a.focus();\n event.stopPropagation();\n }\n }));\n }\n focus(fromRight) {\n if (fromRight) {\n this._dropdown.focus();\n }\n else {\n this._defaultAction.element.tabIndex = 0;\n this._defaultAction.element.focus();\n }\n }\n blur() {\n this._defaultAction.element.tabIndex = -1;\n this._dropdown.blur();\n this._container.blur();\n }\n setFocusable(focusable) {\n if (focusable) {\n this._defaultAction.element.tabIndex = 0;\n }\n else {\n this._defaultAction.element.tabIndex = -1;\n this._dropdown.setFocusable(false);\n }\n }\n dispose() {\n this._defaultAction.dispose();\n this._dropdown.dispose();\n super.dispose();\n }\n};\nDropdownWithDefaultActionViewItem = __decorate([\n __param(2, _keybinding_common_keybinding_js__WEBPACK_IMPORTED_MODULE_15__.IKeybindingService),\n __param(3, _notification_common_notification_js__WEBPACK_IMPORTED_MODULE_16__.INotificationService),\n __param(4, _contextview_browser_contextView_js__WEBPACK_IMPORTED_MODULE_13__.IContextMenuService),\n __param(5, _common_actions_js__WEBPACK_IMPORTED_MODULE_10__.IMenuService),\n __param(6, _instantiation_common_instantiation_js__WEBPACK_IMPORTED_MODULE_14__.IInstantiationService),\n __param(7, _storage_common_storage_js__WEBPACK_IMPORTED_MODULE_17__.IStorageService)\n], DropdownWithDefaultActionViewItem);\n\nlet SubmenuEntrySelectActionViewItem = class SubmenuEntrySelectActionViewItem extends _base_browser_ui_actionbar_actionViewItems_js__WEBPACK_IMPORTED_MODULE_2__.SelectActionViewItem {\n constructor(action, contextViewService) {\n super(null, action, action.actions.map(a => ({\n text: a.id === _base_common_actions_js__WEBPACK_IMPORTED_MODULE_4__.Separator.ID ? '\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500' : a.label,\n isDisabled: !a.enabled,\n })), 0, contextViewService, _theme_browser_defaultStyles_js__WEBPACK_IMPORTED_MODULE_23__.defaultSelectBoxStyles, { ariaLabel: action.tooltip, optionsAsChildren: true });\n this.select(Math.max(0, action.actions.findIndex(a => a.checked)));\n }\n render(container) {\n super.render(container);\n container.style.borderColor = (0,_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_22__.asCssVariable)(_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_22__.selectBorder);\n }\n runAction(option, index) {\n const action = this.action.actions[index];\n if (action) {\n this.actionRunner.run(action);\n }\n }\n};\nSubmenuEntrySelectActionViewItem = __decorate([\n __param(1, _contextview_browser_contextView_js__WEBPACK_IMPORTED_MODULE_13__.IContextViewService)\n], SubmenuEntrySelectActionViewItem);\n/**\n * Creates action view items for menu actions or submenu actions.\n */\nfunction createActionViewItem(instaService, action, options) {\n if (action instanceof _common_actions_js__WEBPACK_IMPORTED_MODULE_10__.MenuItemAction) {\n return instaService.createInstance(MenuEntryActionViewItem, action, options);\n }\n else if (action instanceof _common_actions_js__WEBPACK_IMPORTED_MODULE_10__.SubmenuItemAction) {\n if (action.item.isSelection) {\n return instaService.createInstance(SubmenuEntrySelectActionViewItem, action);\n }\n else {\n if (action.item.rememberDefaultAction) {\n return instaService.createInstance(DropdownWithDefaultActionViewItem, action, { ...options, persistLastActionId: true });\n }\n else {\n return instaService.createInstance(SubmenuEntryActionViewItem, action, options);\n }\n }\n }\n else {\n return undefined;\n }\n}\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/platform/actions/browser/menuEntryActionViewItem.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/platform/actions/browser/toolbar.js":
/*!*******************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/platform/actions/browser/toolbar.js ***!
\*******************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ MenuWorkbenchToolBar: () => (/* binding */ MenuWorkbenchToolBar),\n/* harmony export */ WorkbenchToolBar: () => (/* binding */ WorkbenchToolBar)\n/* harmony export */ });\n/* harmony import */ var _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../base/browser/dom.js */ \"./node_modules/monaco-editor/esm/vs/base/browser/dom.js\");\n/* harmony import */ var _base_browser_mouseEvent_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../base/browser/mouseEvent.js */ \"./node_modules/monaco-editor/esm/vs/base/browser/mouseEvent.js\");\n/* harmony import */ var _base_browser_ui_toolbar_toolbar_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../base/browser/ui/toolbar/toolbar.js */ \"./node_modules/monaco-editor/esm/vs/base/browser/ui/toolbar/toolbar.js\");\n/* harmony import */ var _base_common_actions_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../../base/common/actions.js */ \"./node_modules/monaco-editor/esm/vs/base/common/actions.js\");\n/* harmony import */ var _base_common_arrays_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../../base/common/arrays.js */ \"./node_modules/monaco-editor/esm/vs/base/common/arrays.js\");\n/* harmony import */ var _base_common_collections_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../../../base/common/collections.js */ \"./node_modules/monaco-editor/esm/vs/base/common/collections.js\");\n/* harmony import */ var _base_common_errors_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../../../base/common/errors.js */ \"./node_modules/monaco-editor/esm/vs/base/common/errors.js\");\n/* harmony import */ var _base_common_event_js__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ../../../base/common/event.js */ \"./node_modules/monaco-editor/esm/vs/base/common/event.js\");\n/* harmony import */ var _base_common_iterator_js__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ../../../base/common/iterator.js */ \"./node_modules/monaco-editor/esm/vs/base/common/iterator.js\");\n/* harmony import */ var _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ../../../base/common/lifecycle.js */ \"./node_modules/monaco-editor/esm/vs/base/common/lifecycle.js\");\n/* harmony import */ var _nls_js__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! ../../../nls.js */ \"./node_modules/monaco-editor/esm/vs/nls.js\");\n/* harmony import */ var _menuEntryActionViewItem_js__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(/*! ./menuEntryActionViewItem.js */ \"./node_modules/monaco-editor/esm/vs/platform/actions/browser/menuEntryActionViewItem.js\");\n/* harmony import */ var _common_actions_js__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(/*! ../common/actions.js */ \"./node_modules/monaco-editor/esm/vs/platform/actions/common/actions.js\");\n/* harmony import */ var _contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_13__ = __webpack_require__(/*! ../../contextkey/common/contextkey.js */ \"./node_modules/monaco-editor/esm/vs/platform/contextkey/common/contextkey.js\");\n/* harmony import */ var _contextview_browser_contextView_js__WEBPACK_IMPORTED_MODULE_14__ = __webpack_require__(/*! ../../contextview/browser/contextView.js */ \"./node_modules/monaco-editor/esm/vs/platform/contextview/browser/contextView.js\");\n/* harmony import */ var _keybinding_common_keybinding_js__WEBPACK_IMPORTED_MODULE_15__ = __webpack_require__(/*! ../../keybinding/common/keybinding.js */ \"./node_modules/monaco-editor/esm/vs/platform/keybinding/common/keybinding.js\");\n/* harmony import */ var _telemetry_common_telemetry_js__WEBPACK_IMPORTED_MODULE_16__ = __webpack_require__(/*! ../../telemetry/common/telemetry.js */ \"./node_modules/monaco-editor/esm/vs/platform/telemetry/common/telemetry.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\nvar __decorate = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\n return c > 3 && r && Object.defineProperty(target, key, r), r;\n};\nvar __param = (undefined && undefined.__param) || function (paramIndex, decorator) {\n return function (target, key) { decorator(target, key, paramIndex); }\n};\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n/**\n * The `WorkbenchToolBar` does\n * - support hiding of menu items\n * - lookup keybindings for each actions automatically\n * - send `workbenchActionExecuted`-events for each action\n *\n * See {@link MenuWorkbenchToolBar} for a toolbar that is backed by a menu.\n */\nlet WorkbenchToolBar = class WorkbenchToolBar extends _base_browser_ui_toolbar_toolbar_js__WEBPACK_IMPORTED_MODULE_2__.ToolBar {\n constructor(container, _options, _menuService, _contextKeyService, _contextMenuService, keybindingService, telemetryService) {\n super(container, _contextMenuService, {\n // defaults\n getKeyBinding: (action) => { var _a; return (_a = keybindingService.lookupKeybinding(action.id)) !== null && _a !== void 0 ? _a : undefined; },\n // options (override defaults)\n ..._options,\n // mandatory (overide options)\n allowContextMenu: true,\n skipTelemetry: typeof (_options === null || _options === void 0 ? void 0 : _options.telemetrySource) === 'string',\n });\n this._options = _options;\n this._menuService = _menuService;\n this._contextKeyService = _contextKeyService;\n this._contextMenuService = _contextMenuService;\n this._sessionDisposables = this._store.add(new _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_9__.DisposableStore());\n // telemetry logic\n const telemetrySource = _options === null || _options === void 0 ? void 0 : _options.telemetrySource;\n if (telemetrySource) {\n this._store.add(this.actionBar.onDidRun(e => telemetryService.publicLog2('workbenchActionExecuted', { id: e.action.id, from: telemetrySource })));\n }\n }\n setActions(_primary, _secondary = [], menuIds) {\n var _a, _b, _c;\n this._sessionDisposables.clear();\n const primary = _primary.slice(); // for hiding and overflow we set some items to undefined\n const secondary = _secondary.slice();\n const toggleActions = [];\n let toggleActionsCheckedCount = 0;\n const extraSecondary = [];\n let someAreHidden = false;\n // unless disabled, move all hidden items to secondary group or ignore them\n if (((_a = this._options) === null || _a === void 0 ? void 0 : _a.hiddenItemStrategy) !== -1 /* HiddenItemStrategy.NoHide */) {\n for (let i = 0; i < primary.length; i++) {\n const action = primary[i];\n if (!(action instanceof _common_actions_js__WEBPACK_IMPORTED_MODULE_12__.MenuItemAction) && !(action instanceof _common_actions_js__WEBPACK_IMPORTED_MODULE_12__.SubmenuItemAction)) {\n // console.warn(`Action ${action.id}/${action.label} is not a MenuItemAction`);\n continue;\n }\n if (!action.hideActions) {\n continue;\n }\n // collect all toggle actions\n toggleActions.push(action.hideActions.toggle);\n if (action.hideActions.toggle.checked) {\n toggleActionsCheckedCount++;\n }\n // hidden items move into overflow or ignore\n if (action.hideActions.isHidden) {\n someAreHidden = true;\n primary[i] = undefined;\n if (((_b = this._options) === null || _b === void 0 ? void 0 : _b.hiddenItemStrategy) !== 0 /* HiddenItemStrategy.Ignore */) {\n extraSecondary[i] = action;\n }\n }\n }\n }\n // count for max\n if (((_c = this._options) === null || _c === void 0 ? void 0 : _c.overflowBehavior) !== undefined) {\n const exemptedIds = (0,_base_common_collections_js__WEBPACK_IMPORTED_MODULE_5__.intersection)(new Set(this._options.overflowBehavior.exempted), _base_common_iterator_js__WEBPACK_IMPORTED_MODULE_8__.Iterable.map(primary, a => a === null || a === void 0 ? void 0 : a.id));\n const maxItems = this._options.overflowBehavior.maxItems - exemptedIds.size;\n let count = 0;\n for (let i = 0; i < primary.length; i++) {\n const action = primary[i];\n if (!action) {\n continue;\n }\n count++;\n if (exemptedIds.has(action.id)) {\n continue;\n }\n if (count >= maxItems) {\n primary[i] = undefined;\n extraSecondary[i] = action;\n }\n }\n }\n // coalesce turns Array into IAction[]\n (0,_base_common_arrays_js__WEBPACK_IMPORTED_MODULE_4__.coalesceInPlace)(primary);\n (0,_base_common_arrays_js__WEBPACK_IMPORTED_MODULE_4__.coalesceInPlace)(extraSecondary);\n super.setActions(primary, _base_common_actions_js__WEBPACK_IMPORTED_MODULE_3__.Separator.join(extraSecondary, secondary));\n // add context menu for toggle actions\n if (toggleActions.length > 0) {\n this._sessionDisposables.add((0,_base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.addDisposableListener)(this.getElement(), 'contextmenu', e => {\n var _a, _b, _c, _d, _e;\n const event = new _base_browser_mouseEvent_js__WEBPACK_IMPORTED_MODULE_1__.StandardMouseEvent((0,_base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.getWindow)(this.getElement()), e);\n const action = this.getItemAction(event.target);\n if (!(action)) {\n return;\n }\n event.preventDefault();\n event.stopPropagation();\n let noHide = false;\n // last item cannot be hidden when using ignore strategy\n if (toggleActionsCheckedCount === 1 && ((_a = this._options) === null || _a === void 0 ? void 0 : _a.hiddenItemStrategy) === 0 /* HiddenItemStrategy.Ignore */) {\n noHide = true;\n for (let i = 0; i < toggleActions.length; i++) {\n if (toggleActions[i].checked) {\n toggleActions[i] = (0,_base_common_actions_js__WEBPACK_IMPORTED_MODULE_3__.toAction)({\n id: action.id,\n label: action.label,\n checked: true,\n enabled: false,\n run() { }\n });\n break; // there is only one\n }\n }\n }\n // add \"hide foo\" actions\n let hideAction;\n if (!noHide && (action instanceof _common_actions_js__WEBPACK_IMPORTED_MODULE_12__.MenuItemAction || action instanceof _common_actions_js__WEBPACK_IMPORTED_MODULE_12__.SubmenuItemAction)) {\n if (!action.hideActions) {\n // no context menu for MenuItemAction instances that support no hiding\n // those are fake actions and need to be cleaned up\n return;\n }\n hideAction = action.hideActions.hide;\n }\n else {\n hideAction = (0,_base_common_actions_js__WEBPACK_IMPORTED_MODULE_3__.toAction)({\n id: 'label',\n label: (0,_nls_js__WEBPACK_IMPORTED_MODULE_10__.localize)('hide', \"Hide\"),\n enabled: false,\n run() { }\n });\n }\n const actions = _base_common_actions_js__WEBPACK_IMPORTED_MODULE_3__.Separator.join([hideAction], toggleActions);\n // add \"Reset Menu\" action\n if (((_b = this._options) === null || _b === void 0 ? void 0 : _b.resetMenu) && !menuIds) {\n menuIds = [this._options.resetMenu];\n }\n if (someAreHidden && menuIds) {\n actions.push(new _base_common_actions_js__WEBPACK_IMPORTED_MODULE_3__.Separator());\n actions.push((0,_base_common_actions_js__WEBPACK_IMPORTED_MODULE_3__.toAction)({\n id: 'resetThisMenu',\n label: (0,_nls_js__WEBPACK_IMPORTED_MODULE_10__.localize)('resetThisMenu', \"Reset Menu\"),\n run: () => this._menuService.resetHiddenStates(menuIds)\n }));\n }\n this._contextMenuService.showContextMenu({\n getAnchor: () => event,\n getActions: () => actions,\n // add context menu actions (iff appicable)\n menuId: (_c = this._options) === null || _c === void 0 ? void 0 : _c.contextMenu,\n menuActionOptions: { renderShortTitle: true, ...(_d = this._options) === null || _d === void 0 ? void 0 : _d.menuOptions },\n skipTelemetry: typeof ((_e = this._options) === null || _e === void 0 ? void 0 : _e.telemetrySource) === 'string',\n contextKeyService: this._contextKeyService,\n });\n }));\n }\n }\n};\nWorkbenchToolBar = __decorate([\n __param(2, _common_actions_js__WEBPACK_IMPORTED_MODULE_12__.IMenuService),\n __param(3, _contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_13__.IContextKeyService),\n __param(4, _contextview_browser_contextView_js__WEBPACK_IMPORTED_MODULE_14__.IContextMenuService),\n __param(5, _keybinding_common_keybinding_js__WEBPACK_IMPORTED_MODULE_15__.IKeybindingService),\n __param(6, _telemetry_common_telemetry_js__WEBPACK_IMPORTED_MODULE_16__.ITelemetryService)\n], WorkbenchToolBar);\n\n/**\n * A {@link WorkbenchToolBar workbench toolbar} that is purely driven from a {@link MenuId menu}-identifier.\n *\n * *Note* that Manual updates via `setActions` are NOT supported.\n */\nlet MenuWorkbenchToolBar = class MenuWorkbenchToolBar extends WorkbenchToolBar {\n constructor(container, menuId, options, menuService, contextKeyService, contextMenuService, keybindingService, telemetryService) {\n super(container, { resetMenu: menuId, ...options }, menuService, contextKeyService, contextMenuService, keybindingService, telemetryService);\n this._onDidChangeMenuItems = this._store.add(new _base_common_event_js__WEBPACK_IMPORTED_MODULE_7__.Emitter());\n // update logic\n const menu = this._store.add(menuService.createMenu(menuId, contextKeyService, { emitEventsForSubmenuChanges: true }));\n const updateToolbar = () => {\n var _a, _b, _c;\n const primary = [];\n const secondary = [];\n (0,_menuEntryActionViewItem_js__WEBPACK_IMPORTED_MODULE_11__.createAndFillInActionBarActions)(menu, options === null || options === void 0 ? void 0 : options.menuOptions, { primary, secondary }, (_a = options === null || options === void 0 ? void 0 : options.toolbarOptions) === null || _a === void 0 ? void 0 : _a.primaryGroup, (_b = options === null || options === void 0 ? void 0 : options.toolbarOptions) === null || _b === void 0 ? void 0 : _b.shouldInlineSubmenu, (_c = options === null || options === void 0 ? void 0 : options.toolbarOptions) === null || _c === void 0 ? void 0 : _c.useSeparatorsInPrimaryActions);\n container.classList.toggle('has-no-actions', primary.length === 0 && secondary.length === 0);\n super.setActions(primary, secondary);\n };\n this._store.add(menu.onDidChange(() => {\n updateToolbar();\n this._onDidChangeMenuItems.fire(this);\n }));\n updateToolbar();\n }\n /**\n * @deprecated The WorkbenchToolBar does not support this method because it works with menus.\n */\n setActions() {\n throw new _base_common_errors_js__WEBPACK_IMPORTED_MODULE_6__.BugIndicatingError('This toolbar is populated from a menu.');\n }\n};\nMenuWorkbenchToolBar = __decorate([\n __param(3, _common_actions_js__WEBPACK_IMPORTED_MODULE_12__.IMenuService),\n __param(4, _contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_13__.IContextKeyService),\n __param(5, _contextview_browser_contextView_js__WEBPACK_IMPORTED_MODULE_14__.IContextMenuService),\n __param(6, _keybinding_common_keybinding_js__WEBPACK_IMPORTED_MODULE_15__.IKeybindingService),\n __param(7, _telemetry_common_telemetry_js__WEBPACK_IMPORTED_MODULE_16__.ITelemetryService)\n], MenuWorkbenchToolBar);\n\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/platform/actions/browser/toolbar.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/platform/actions/common/actions.js":
/*!******************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/platform/actions/common/actions.js ***!
\******************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ Action2: () => (/* binding */ Action2),\n/* harmony export */ IMenuService: () => (/* binding */ IMenuService),\n/* harmony export */ MenuId: () => (/* binding */ MenuId),\n/* harmony export */ MenuItemAction: () => (/* binding */ MenuItemAction),\n/* harmony export */ MenuRegistry: () => (/* binding */ MenuRegistry),\n/* harmony export */ SubmenuItemAction: () => (/* binding */ SubmenuItemAction),\n/* harmony export */ isIMenuItem: () => (/* binding */ isIMenuItem),\n/* harmony export */ isISubmenuItem: () => (/* binding */ isISubmenuItem),\n/* harmony export */ registerAction2: () => (/* binding */ registerAction2)\n/* harmony export */ });\n/* harmony import */ var _base_common_actions_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../base/common/actions.js */ \"./node_modules/monaco-editor/esm/vs/base/common/actions.js\");\n/* harmony import */ var _base_common_themables_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../base/common/themables.js */ \"./node_modules/monaco-editor/esm/vs/base/common/themables.js\");\n/* harmony import */ var _base_common_event_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../base/common/event.js */ \"./node_modules/monaco-editor/esm/vs/base/common/event.js\");\n/* harmony import */ var _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../../base/common/lifecycle.js */ \"./node_modules/monaco-editor/esm/vs/base/common/lifecycle.js\");\n/* harmony import */ var _base_common_linkedList_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../../base/common/linkedList.js */ \"./node_modules/monaco-editor/esm/vs/base/common/linkedList.js\");\n/* harmony import */ var _commands_common_commands_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../../commands/common/commands.js */ \"./node_modules/monaco-editor/esm/vs/platform/commands/common/commands.js\");\n/* harmony import */ var _contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../../contextkey/common/contextkey.js */ \"./node_modules/monaco-editor/esm/vs/platform/contextkey/common/contextkey.js\");\n/* harmony import */ var _instantiation_common_instantiation_js__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ../../instantiation/common/instantiation.js */ \"./node_modules/monaco-editor/esm/vs/platform/instantiation/common/instantiation.js\");\n/* harmony import */ var _keybinding_common_keybindingsRegistry_js__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ../../keybinding/common/keybindingsRegistry.js */ \"./node_modules/monaco-editor/esm/vs/platform/keybinding/common/keybindingsRegistry.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\nvar __decorate = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\n return c > 3 && r && Object.defineProperty(target, key, r), r;\n};\nvar __param = (undefined && undefined.__param) || function (paramIndex, decorator) {\n return function (target, key) { decorator(target, key, paramIndex); }\n};\nvar MenuItemAction_1;\n\n\n\n\n\n\n\n\n\nfunction isIMenuItem(item) {\n return item.command !== undefined;\n}\nfunction isISubmenuItem(item) {\n return item.submenu !== undefined;\n}\nclass MenuId {\n /**\n * Create a new `MenuId` with the unique identifier. Will throw if a menu\n * with the identifier already exists, use `MenuId.for(ident)` or a unique\n * identifier\n */\n constructor(identifier) {\n if (MenuId._instances.has(identifier)) {\n throw new TypeError(`MenuId with identifier '${identifier}' already exists. Use MenuId.for(ident) or a unique identifier`);\n }\n MenuId._instances.set(identifier, this);\n this.id = identifier;\n }\n}\nMenuId._instances = new Map();\nMenuId.CommandPalette = new MenuId('CommandPalette');\nMenuId.DebugBreakpointsContext = new MenuId('DebugBreakpointsContext');\nMenuId.DebugCallStackContext = new MenuId('DebugCallStackContext');\nMenuId.DebugConsoleContext = new MenuId('DebugConsoleContext');\nMenuId.DebugVariablesContext = new MenuId('DebugVariablesContext');\nMenuId.NotebookVariablesContext = new MenuId('NotebookVariablesContext');\nMenuId.DebugHoverContext = new MenuId('DebugHoverContext');\nMenuId.DebugWatchContext = new MenuId('DebugWatchContext');\nMenuId.DebugToolBar = new MenuId('DebugToolBar');\nMenuId.DebugToolBarStop = new MenuId('DebugToolBarStop');\nMenuId.EditorContext = new MenuId('EditorContext');\nMenuId.SimpleEditorContext = new MenuId('SimpleEditorContext');\nMenuId.EditorContent = new MenuId('EditorContent');\nMenuId.EditorLineNumberContext = new MenuId('EditorLineNumberContext');\nMenuId.EditorContextCopy = new MenuId('EditorContextCopy');\nMenuId.EditorContextPeek = new MenuId('EditorContextPeek');\nMenuId.EditorContextShare = new MenuId('EditorContextShare');\nMenuId.EditorTitle = new MenuId('EditorTitle');\nMenuId.EditorTitleRun = new MenuId('EditorTitleRun');\nMenuId.EditorTitleContext = new MenuId('EditorTitleContext');\nMenuId.EditorTitleContextShare = new MenuId('EditorTitleContextShare');\nMenuId.EmptyEditorGroup = new MenuId('EmptyEditorGroup');\nMenuId.EmptyEditorGroupContext = new MenuId('EmptyEditorGroupContext');\nMenuId.EditorTabsBarContext = new MenuId('EditorTabsBarContext');\nMenuId.EditorTabsBarShowTabsSubmenu = new MenuId('EditorTabsBarShowTabsSubmenu');\nMenuId.EditorTabsBarShowTabsZenModeSubmenu = new MenuId('EditorTabsBarShowTabsZenModeSubmenu');\nMenuId.EditorActionsPositionSubmenu = new MenuId('EditorActionsPositionSubmenu');\nMenuId.ExplorerContext = new MenuId('ExplorerContext');\nMenuId.ExplorerContextShare = new MenuId('ExplorerContextShare');\nMenuId.ExtensionContext = new MenuId('ExtensionContext');\nMenuId.GlobalActivity = new MenuId('GlobalActivity');\nMenuId.CommandCenter = new MenuId('CommandCenter');\nMenuId.CommandCenterCenter = new MenuId('CommandCenterCenter');\nMenuId.LayoutControlMenuSubmenu = new MenuId('LayoutControlMenuSubmenu');\nMenuId.LayoutControlMenu = new MenuId('LayoutControlMenu');\nMenuId.MenubarMainMenu = new MenuId('MenubarMainMenu');\nMenuId.MenubarAppearanceMenu = new MenuId('MenubarAppearanceMenu');\nMenuId.MenubarDebugMenu = new MenuId('MenubarDebugMenu');\nMenuId.MenubarEditMenu = new MenuId('MenubarEditMenu');\nMenuId.MenubarCopy = new MenuId('MenubarCopy');\nMenuId.MenubarFileMenu = new MenuId('MenubarFileMenu');\nMenuId.MenubarGoMenu = new MenuId('MenubarGoMenu');\nMenuId.MenubarHelpMenu = new MenuId('MenubarHelpMenu');\nMenuId.MenubarLayoutMenu = new MenuId('MenubarLayoutMenu');\nMenuId.MenubarNewBreakpointMenu = new MenuId('MenubarNewBreakpointMenu');\nMenuId.PanelAlignmentMenu = new MenuId('PanelAlignmentMenu');\nMenuId.PanelPositionMenu = new MenuId('PanelPositionMenu');\nMenuId.ActivityBarPositionMenu = new MenuId('ActivityBarPositionMenu');\nMenuId.MenubarPreferencesMenu = new MenuId('MenubarPreferencesMenu');\nMenuId.MenubarRecentMenu = new MenuId('MenubarRecentMenu');\nMenuId.MenubarSelectionMenu = new MenuId('MenubarSelectionMenu');\nMenuId.MenubarShare = new MenuId('MenubarShare');\nMenuId.MenubarSwitchEditorMenu = new MenuId('MenubarSwitchEditorMenu');\nMenuId.MenubarSwitchGroupMenu = new MenuId('MenubarSwitchGroupMenu');\nMenuId.MenubarTerminalMenu = new MenuId('MenubarTerminalMenu');\nMenuId.MenubarViewMenu = new MenuId('MenubarViewMenu');\nMenuId.MenubarHomeMenu = new MenuId('MenubarHomeMenu');\nMenuId.OpenEditorsContext = new MenuId('OpenEditorsContext');\nMenuId.OpenEditorsContextShare = new MenuId('OpenEditorsContextShare');\nMenuId.ProblemsPanelContext = new MenuId('ProblemsPanelContext');\nMenuId.SCMInputBox = new MenuId('SCMInputBox');\nMenuId.SCMChangesSeparator = new MenuId('SCMChangesSeparator');\nMenuId.SCMIncomingChanges = new MenuId('SCMIncomingChanges');\nMenuId.SCMIncomingChangesContext = new MenuId('SCMIncomingChangesContext');\nMenuId.SCMIncomingChangesSetting = new MenuId('SCMIncomingChangesSetting');\nMenuId.SCMOutgoingChanges = new MenuId('SCMOutgoingChanges');\nMenuId.SCMOutgoingChangesContext = new MenuId('SCMOutgoingChangesContext');\nMenuId.SCMOutgoingChangesSetting = new MenuId('SCMOutgoingChangesSetting');\nMenuId.SCMIncomingChangesAllChangesContext = new MenuId('SCMIncomingChangesAllChangesContext');\nMenuId.SCMIncomingChangesHistoryItemContext = new MenuId('SCMIncomingChangesHistoryItemContext');\nMenuId.SCMOutgoingChangesAllChangesContext = new MenuId('SCMOutgoingChangesAllChangesContext');\nMenuId.SCMOutgoingChangesHistoryItemContext = new MenuId('SCMOutgoingChangesHistoryItemContext');\nMenuId.SCMChangeContext = new MenuId('SCMChangeContext');\nMenuId.SCMResourceContext = new MenuId('SCMResourceContext');\nMenuId.SCMResourceContextShare = new MenuId('SCMResourceContextShare');\nMenuId.SCMResourceFolderContext = new MenuId('SCMResourceFolderContext');\nMenuId.SCMResourceGroupContext = new MenuId('SCMResourceGroupContext');\nMenuId.SCMSourceControl = new MenuId('SCMSourceControl');\nMenuId.SCMSourceControlInline = new MenuId('SCMSourceControlInline');\nMenuId.SCMSourceControlTitle = new MenuId('SCMSourceControlTitle');\nMenuId.SCMTitle = new MenuId('SCMTitle');\nMenuId.SearchContext = new MenuId('SearchContext');\nMenuId.SearchActionMenu = new MenuId('SearchActionContext');\nMenuId.StatusBarWindowIndicatorMenu = new MenuId('StatusBarWindowIndicatorMenu');\nMenuId.StatusBarRemoteIndicatorMenu = new MenuId('StatusBarRemoteIndicatorMenu');\nMenuId.StickyScrollContext = new MenuId('StickyScrollContext');\nMenuId.TestItem = new MenuId('TestItem');\nMenuId.TestItemGutter = new MenuId('TestItemGutter');\nMenuId.TestMessageContext = new MenuId('TestMessageContext');\nMenuId.TestMessageContent = new MenuId('TestMessageContent');\nMenuId.TestPeekElement = new MenuId('TestPeekElement');\nMenuId.TestPeekTitle = new MenuId('TestPeekTitle');\nMenuId.TouchBarContext = new MenuId('TouchBarContext');\nMenuId.TitleBarContext = new MenuId('TitleBarContext');\nMenuId.TitleBarTitleContext = new MenuId('TitleBarTitleContext');\nMenuId.TunnelContext = new MenuId('TunnelContext');\nMenuId.TunnelPrivacy = new MenuId('TunnelPrivacy');\nMenuId.TunnelProtocol = new MenuId('TunnelProtocol');\nMenuId.TunnelPortInline = new MenuId('TunnelInline');\nMenuId.TunnelTitle = new MenuId('TunnelTitle');\nMenuId.TunnelLocalAddressInline = new MenuId('TunnelLocalAddressInline');\nMenuId.TunnelOriginInline = new MenuId('TunnelOriginInline');\nMenuId.ViewItemContext = new MenuId('ViewItemContext');\nMenuId.ViewContainerTitle = new MenuId('ViewContainerTitle');\nMenuId.ViewContainerTitleContext = new MenuId('ViewContainerTitleContext');\nMenuId.ViewTitle = new MenuId('ViewTitle');\nMenuId.ViewTitleContext = new MenuId('ViewTitleContext');\nMenuId.CommentEditorActions = new MenuId('CommentEditorActions');\nMenuId.CommentThreadTitle = new MenuId('CommentThreadTitle');\nMenuId.CommentThreadActions = new MenuId('CommentThreadActions');\nMenuId.CommentThreadAdditionalActions = new MenuId('CommentThreadAdditionalActions');\nMenuId.CommentThreadTitleContext = new MenuId('CommentThreadTitleContext');\nMenuId.CommentThreadCommentContext = new MenuId('CommentThreadCommentContext');\nMenuId.CommentTitle = new MenuId('CommentTitle');\nMenuId.CommentActions = new MenuId('CommentActions');\nMenuId.InteractiveToolbar = new MenuId('InteractiveToolbar');\nMenuId.InteractiveCellTitle = new MenuId('InteractiveCellTitle');\nMenuId.InteractiveCellDelete = new MenuId('InteractiveCellDelete');\nMenuId.InteractiveCellExecute = new MenuId('InteractiveCellExecute');\nMenuId.InteractiveInputExecute = new MenuId('InteractiveInputExecute');\nMenuId.IssueReporter = new MenuId('IssueReporter');\nMenuId.NotebookToolbar = new MenuId('NotebookToolbar');\nMenuId.NotebookStickyScrollContext = new MenuId('NotebookStickyScrollContext');\nMenuId.NotebookCellTitle = new MenuId('NotebookCellTitle');\nMenuId.NotebookCellDelete = new MenuId('NotebookCellDelete');\nMenuId.NotebookCellInsert = new MenuId('NotebookCellInsert');\nMenuId.NotebookCellBetween = new MenuId('NotebookCellBetween');\nMenuId.NotebookCellListTop = new MenuId('NotebookCellTop');\nMenuId.NotebookCellExecute = new MenuId('NotebookCellExecute');\nMenuId.NotebookCellExecuteGoTo = new MenuId('NotebookCellExecuteGoTo');\nMenuId.NotebookCellExecutePrimary = new MenuId('NotebookCellExecutePrimary');\nMenuId.NotebookDiffCellInputTitle = new MenuId('NotebookDiffCellInputTitle');\nMenuId.NotebookDiffCellMetadataTitle = new MenuId('NotebookDiffCellMetadataTitle');\nMenuId.NotebookDiffCellOutputsTitle = new MenuId('NotebookDiffCellOutputsTitle');\nMenuId.NotebookOutputToolbar = new MenuId('NotebookOutputToolbar');\nMenuId.NotebookEditorLayoutConfigure = new MenuId('NotebookEditorLayoutConfigure');\nMenuId.NotebookKernelSource = new MenuId('NotebookKernelSource');\nMenuId.BulkEditTitle = new MenuId('BulkEditTitle');\nMenuId.BulkEditContext = new MenuId('BulkEditContext');\nMenuId.TimelineItemContext = new MenuId('TimelineItemContext');\nMenuId.TimelineTitle = new MenuId('TimelineTitle');\nMenuId.TimelineTitleContext = new MenuId('TimelineTitleContext');\nMenuId.TimelineFilterSubMenu = new MenuId('TimelineFilterSubMenu');\nMenuId.AccountsContext = new MenuId('AccountsContext');\nMenuId.SidebarTitle = new MenuId('SidebarTitle');\nMenuId.PanelTitle = new MenuId('PanelTitle');\nMenuId.AuxiliaryBarTitle = new MenuId('AuxiliaryBarTitle');\nMenuId.TerminalInstanceContext = new MenuId('TerminalInstanceContext');\nMenuId.TerminalEditorInstanceContext = new MenuId('TerminalEditorInstanceContext');\nMenuId.TerminalNewDropdownContext = new MenuId('TerminalNewDropdownContext');\nMenuId.TerminalTabContext = new MenuId('TerminalTabContext');\nMenuId.TerminalTabEmptyAreaContext = new MenuId('TerminalTabEmptyAreaContext');\nMenuId.TerminalStickyScrollContext = new MenuId('TerminalStickyScrollContext');\nMenuId.WebviewContext = new MenuId('WebviewContext');\nMenuId.InlineCompletionsActions = new MenuId('InlineCompletionsActions');\nMenuId.InlineEditActions = new MenuId('InlineEditActions');\nMenuId.NewFile = new MenuId('NewFile');\nMenuId.MergeInput1Toolbar = new MenuId('MergeToolbar1Toolbar');\nMenuId.MergeInput2Toolbar = new MenuId('MergeToolbar2Toolbar');\nMenuId.MergeBaseToolbar = new MenuId('MergeBaseToolbar');\nMenuId.MergeInputResultToolbar = new MenuId('MergeToolbarResultToolbar');\nMenuId.InlineSuggestionToolbar = new MenuId('InlineSuggestionToolbar');\nMenuId.InlineEditToolbar = new MenuId('InlineEditToolbar');\nMenuId.ChatContext = new MenuId('ChatContext');\nMenuId.ChatCodeBlock = new MenuId('ChatCodeblock');\nMenuId.ChatMessageTitle = new MenuId('ChatMessageTitle');\nMenuId.ChatExecute = new MenuId('ChatExecute');\nMenuId.ChatInputSide = new MenuId('ChatInputSide');\nMenuId.AccessibleView = new MenuId('AccessibleView');\nMenuId.MultiDiffEditorFileToolbar = new MenuId('MultiDiffEditorFileToolbar');\nconst IMenuService = (0,_instantiation_common_instantiation_js__WEBPACK_IMPORTED_MODULE_7__.createDecorator)('menuService');\nclass MenuRegistryChangeEvent {\n static for(id) {\n let value = this._all.get(id);\n if (!value) {\n value = new MenuRegistryChangeEvent(id);\n this._all.set(id, value);\n }\n return value;\n }\n static merge(events) {\n const ids = new Set();\n for (const item of events) {\n if (item instanceof MenuRegistryChangeEvent) {\n ids.add(item.id);\n }\n }\n return ids;\n }\n constructor(id) {\n this.id = id;\n this.has = candidate => candidate === id;\n }\n}\nMenuRegistryChangeEvent._all = new Map();\nconst MenuRegistry = new class {\n constructor() {\n this._commands = new Map();\n this._menuItems = new Map();\n this._onDidChangeMenu = new _base_common_event_js__WEBPACK_IMPORTED_MODULE_2__.MicrotaskEmitter({\n merge: MenuRegistryChangeEvent.merge\n });\n this.onDidChangeMenu = this._onDidChangeMenu.event;\n }\n addCommand(command) {\n this._commands.set(command.id, command);\n this._onDidChangeMenu.fire(MenuRegistryChangeEvent.for(MenuId.CommandPalette));\n return (0,_base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_3__.toDisposable)(() => {\n if (this._commands.delete(command.id)) {\n this._onDidChangeMenu.fire(MenuRegistryChangeEvent.for(MenuId.CommandPalette));\n }\n });\n }\n getCommand(id) {\n return this._commands.get(id);\n }\n getCommands() {\n const map = new Map();\n this._commands.forEach((value, key) => map.set(key, value));\n return map;\n }\n appendMenuItem(id, item) {\n let list = this._menuItems.get(id);\n if (!list) {\n list = new _base_common_linkedList_js__WEBPACK_IMPORTED_MODULE_4__.LinkedList();\n this._menuItems.set(id, list);\n }\n const rm = list.push(item);\n this._onDidChangeMenu.fire(MenuRegistryChangeEvent.for(id));\n return (0,_base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_3__.toDisposable)(() => {\n rm();\n this._onDidChangeMenu.fire(MenuRegistryChangeEvent.for(id));\n });\n }\n appendMenuItems(items) {\n const result = new _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_3__.DisposableStore();\n for (const { id, item } of items) {\n result.add(this.appendMenuItem(id, item));\n }\n return result;\n }\n getMenuItems(id) {\n let result;\n if (this._menuItems.has(id)) {\n result = [...this._menuItems.get(id)];\n }\n else {\n result = [];\n }\n if (id === MenuId.CommandPalette) {\n // CommandPalette is special because it shows\n // all commands by default\n this._appendImplicitItems(result);\n }\n return result;\n }\n _appendImplicitItems(result) {\n const set = new Set();\n for (const item of result) {\n if (isIMenuItem(item)) {\n set.add(item.command.id);\n if (item.alt) {\n set.add(item.alt.id);\n }\n }\n }\n this._commands.forEach((command, id) => {\n if (!set.has(id)) {\n result.push({ command });\n }\n });\n }\n};\nclass SubmenuItemAction extends _base_common_actions_js__WEBPACK_IMPORTED_MODULE_0__.SubmenuAction {\n constructor(item, hideActions, actions) {\n super(`submenuitem.${item.submenu.id}`, typeof item.title === 'string' ? item.title : item.title.value, actions, 'submenu');\n this.item = item;\n this.hideActions = hideActions;\n }\n}\n// implements IAction, does NOT extend Action, so that no one\n// subscribes to events of Action or modified properties\nlet MenuItemAction = MenuItemAction_1 = class MenuItemAction {\n static label(action, options) {\n return (options === null || options === void 0 ? void 0 : options.renderShortTitle) && action.shortTitle\n ? (typeof action.shortTitle === 'string' ? action.shortTitle : action.shortTitle.value)\n : (typeof action.title === 'string' ? action.title : action.title.value);\n }\n constructor(item, alt, options, hideActions, contextKeyService, _commandService) {\n var _a, _b;\n this.hideActions = hideActions;\n this._commandService = _commandService;\n this.id = item.id;\n this.label = MenuItemAction_1.label(item, options);\n this.tooltip = (_b = (typeof item.tooltip === 'string' ? item.tooltip : (_a = item.tooltip) === null || _a === void 0 ? void 0 : _a.value)) !== null && _b !== void 0 ? _b : '';\n this.enabled = !item.precondition || contextKeyService.contextMatchesRules(item.precondition);\n this.checked = undefined;\n let icon;\n if (item.toggled) {\n const toggled = (item.toggled.condition ? item.toggled : { condition: item.toggled });\n this.checked = contextKeyService.contextMatchesRules(toggled.condition);\n if (this.checked && toggled.tooltip) {\n this.tooltip = typeof toggled.tooltip === 'string' ? toggled.tooltip : toggled.tooltip.value;\n }\n if (this.checked && _base_common_themables_js__WEBPACK_IMPORTED_MODULE_1__.ThemeIcon.isThemeIcon(toggled.icon)) {\n icon = toggled.icon;\n }\n if (this.checked && toggled.title) {\n this.label = typeof toggled.title === 'string' ? toggled.title : toggled.title.value;\n }\n }\n if (!icon) {\n icon = _base_common_themables_js__WEBPACK_IMPORTED_MODULE_1__.ThemeIcon.isThemeIcon(item.icon) ? item.icon : undefined;\n }\n this.item = item;\n this.alt = alt ? new MenuItemAction_1(alt, undefined, options, hideActions, contextKeyService, _commandService) : undefined;\n this._options = options;\n this.class = icon && _base_common_themables_js__WEBPACK_IMPORTED_MODULE_1__.ThemeIcon.asClassName(icon);\n }\n run(...args) {\n var _a, _b;\n let runArgs = [];\n if ((_a = this._options) === null || _a === void 0 ? void 0 : _a.arg) {\n runArgs = [...runArgs, this._options.arg];\n }\n if ((_b = this._options) === null || _b === void 0 ? void 0 : _b.shouldForwardArgs) {\n runArgs = [...runArgs, ...args];\n }\n return this._commandService.executeCommand(this.id, ...runArgs);\n }\n};\nMenuItemAction = MenuItemAction_1 = __decorate([\n __param(4, _contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_6__.IContextKeyService),\n __param(5, _commands_common_commands_js__WEBPACK_IMPORTED_MODULE_5__.ICommandService)\n], MenuItemAction);\n\nclass Action2 {\n constructor(desc) {\n this.desc = desc;\n }\n}\nfunction registerAction2(ctor) {\n const disposables = new _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_3__.DisposableStore();\n const action = new ctor();\n const { f1, menu, keybinding, ...command } = action.desc;\n if (_commands_common_commands_js__WEBPACK_IMPORTED_MODULE_5__.CommandsRegistry.getCommand(command.id)) {\n throw new Error(`Cannot register two commands with the same id: ${command.id}`);\n }\n // command\n disposables.add(_commands_common_commands_js__WEBPACK_IMPORTED_MODULE_5__.CommandsRegistry.registerCommand({\n id: command.id,\n handler: (accessor, ...args) => action.run(accessor, ...args),\n metadata: command.metadata,\n }));\n // menu\n if (Array.isArray(menu)) {\n for (const item of menu) {\n disposables.add(MenuRegistry.appendMenuItem(item.id, { command: { ...command, precondition: item.precondition === null ? undefined : command.precondition }, ...item }));\n }\n }\n else if (menu) {\n disposables.add(MenuRegistry.appendMenuItem(menu.id, { command: { ...command, precondition: menu.precondition === null ? undefined : command.precondition }, ...menu }));\n }\n if (f1) {\n disposables.add(MenuRegistry.appendMenuItem(MenuId.CommandPalette, { command, when: command.precondition }));\n disposables.add(MenuRegistry.addCommand(command));\n }\n // keybinding\n if (Array.isArray(keybinding)) {\n for (const item of keybinding) {\n disposables.add(_keybinding_common_keybindingsRegistry_js__WEBPACK_IMPORTED_MODULE_8__.KeybindingsRegistry.registerKeybindingRule({\n ...item,\n id: command.id,\n when: command.precondition ? _contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_6__.ContextKeyExpr.and(command.precondition, item.when) : item.when\n }));\n }\n }\n else if (keybinding) {\n disposables.add(_keybinding_common_keybindingsRegistry_js__WEBPACK_IMPORTED_MODULE_8__.KeybindingsRegistry.registerKeybindingRule({\n ...keybinding,\n id: command.id,\n when: command.precondition ? _contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_6__.ContextKeyExpr.and(command.precondition, keybinding.when) : keybinding.when\n }));\n }\n return disposables;\n}\n//#endregion\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/platform/actions/common/actions.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/platform/actions/common/menuService.js":
/*!**********************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/platform/actions/common/menuService.js ***!
\**********************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ MenuService: () => (/* binding */ MenuService)\n/* harmony export */ });\n/* harmony import */ var _base_common_async_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../base/common/async.js */ \"./node_modules/monaco-editor/esm/vs/base/common/async.js\");\n/* harmony import */ var _base_common_event_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../base/common/event.js */ \"./node_modules/monaco-editor/esm/vs/base/common/event.js\");\n/* harmony import */ var _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../base/common/lifecycle.js */ \"./node_modules/monaco-editor/esm/vs/base/common/lifecycle.js\");\n/* harmony import */ var _actions_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./actions.js */ \"./node_modules/monaco-editor/esm/vs/platform/actions/common/actions.js\");\n/* harmony import */ var _commands_common_commands_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../commands/common/commands.js */ \"./node_modules/monaco-editor/esm/vs/platform/commands/common/commands.js\");\n/* harmony import */ var _contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../../contextkey/common/contextkey.js */ \"./node_modules/monaco-editor/esm/vs/platform/contextkey/common/contextkey.js\");\n/* harmony import */ var _base_common_actions_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../../../base/common/actions.js */ \"./node_modules/monaco-editor/esm/vs/base/common/actions.js\");\n/* harmony import */ var _storage_common_storage_js__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ../../storage/common/storage.js */ \"./node_modules/monaco-editor/esm/vs/platform/storage/common/storage.js\");\n/* harmony import */ var _base_common_arrays_js__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ../../../base/common/arrays.js */ \"./node_modules/monaco-editor/esm/vs/base/common/arrays.js\");\n/* harmony import */ var _nls_js__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ../../../nls.js */ \"./node_modules/monaco-editor/esm/vs/nls.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\nvar __decorate = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\n return c > 3 && r && Object.defineProperty(target, key, r), r;\n};\nvar __param = (undefined && undefined.__param) || function (paramIndex, decorator) {\n return function (target, key) { decorator(target, key, paramIndex); }\n};\nvar PersistedMenuHideState_1, MenuInfo_1;\n\n\n\n\n\n\n\n\n\n\nlet MenuService = class MenuService {\n constructor(_commandService, storageService) {\n this._commandService = _commandService;\n this._hiddenStates = new PersistedMenuHideState(storageService);\n }\n createMenu(id, contextKeyService, options) {\n return new MenuImpl(id, this._hiddenStates, { emitEventsForSubmenuChanges: false, eventDebounceDelay: 50, ...options }, this._commandService, contextKeyService);\n }\n resetHiddenStates(ids) {\n this._hiddenStates.reset(ids);\n }\n};\nMenuService = __decorate([\n __param(0, _commands_common_commands_js__WEBPACK_IMPORTED_MODULE_4__.ICommandService),\n __param(1, _storage_common_storage_js__WEBPACK_IMPORTED_MODULE_7__.IStorageService)\n], MenuService);\n\nlet PersistedMenuHideState = PersistedMenuHideState_1 = class PersistedMenuHideState {\n constructor(_storageService) {\n this._storageService = _storageService;\n this._disposables = new _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_2__.DisposableStore();\n this._onDidChange = new _base_common_event_js__WEBPACK_IMPORTED_MODULE_1__.Emitter();\n this.onDidChange = this._onDidChange.event;\n this._ignoreChangeEvent = false;\n this._hiddenByDefaultCache = new Map();\n try {\n const raw = _storageService.get(PersistedMenuHideState_1._key, 0 /* StorageScope.PROFILE */, '{}');\n this._data = JSON.parse(raw);\n }\n catch (err) {\n this._data = Object.create(null);\n }\n this._disposables.add(_storageService.onDidChangeValue(0 /* StorageScope.PROFILE */, PersistedMenuHideState_1._key, this._disposables)(() => {\n if (!this._ignoreChangeEvent) {\n try {\n const raw = _storageService.get(PersistedMenuHideState_1._key, 0 /* StorageScope.PROFILE */, '{}');\n this._data = JSON.parse(raw);\n }\n catch (err) {\n console.log('FAILED to read storage after UPDATE', err);\n }\n }\n this._onDidChange.fire();\n }));\n }\n dispose() {\n this._onDidChange.dispose();\n this._disposables.dispose();\n }\n _isHiddenByDefault(menu, commandId) {\n var _a;\n return (_a = this._hiddenByDefaultCache.get(`${menu.id}/${commandId}`)) !== null && _a !== void 0 ? _a : false;\n }\n setDefaultState(menu, commandId, hidden) {\n this._hiddenByDefaultCache.set(`${menu.id}/${commandId}`, hidden);\n }\n isHidden(menu, commandId) {\n var _a, _b;\n const hiddenByDefault = this._isHiddenByDefault(menu, commandId);\n const state = (_b = (_a = this._data[menu.id]) === null || _a === void 0 ? void 0 : _a.includes(commandId)) !== null && _b !== void 0 ? _b : false;\n return hiddenByDefault ? !state : state;\n }\n updateHidden(menu, commandId, hidden) {\n const hiddenByDefault = this._isHiddenByDefault(menu, commandId);\n if (hiddenByDefault) {\n hidden = !hidden;\n }\n const entries = this._data[menu.id];\n if (!hidden) {\n // remove and cleanup\n if (entries) {\n const idx = entries.indexOf(commandId);\n if (idx >= 0) {\n (0,_base_common_arrays_js__WEBPACK_IMPORTED_MODULE_8__.removeFastWithoutKeepingOrder)(entries, idx);\n }\n if (entries.length === 0) {\n delete this._data[menu.id];\n }\n }\n }\n else {\n // add unless already added\n if (!entries) {\n this._data[menu.id] = [commandId];\n }\n else {\n const idx = entries.indexOf(commandId);\n if (idx < 0) {\n entries.push(commandId);\n }\n }\n }\n this._persist();\n }\n reset(menus) {\n if (menus === undefined) {\n // reset all\n this._data = Object.create(null);\n this._persist();\n }\n else {\n // reset only for a specific menu\n for (const { id } of menus) {\n if (this._data[id]) {\n delete this._data[id];\n }\n }\n this._persist();\n }\n }\n _persist() {\n try {\n this._ignoreChangeEvent = true;\n const raw = JSON.stringify(this._data);\n this._storageService.store(PersistedMenuHideState_1._key, raw, 0 /* StorageScope.PROFILE */, 0 /* StorageTarget.USER */);\n }\n finally {\n this._ignoreChangeEvent = false;\n }\n }\n};\nPersistedMenuHideState._key = 'menu.hiddenCommands';\nPersistedMenuHideState = PersistedMenuHideState_1 = __decorate([\n __param(0, _storage_common_storage_js__WEBPACK_IMPORTED_MODULE_7__.IStorageService)\n], PersistedMenuHideState);\nlet MenuInfo = MenuInfo_1 = class MenuInfo {\n constructor(_id, _hiddenStates, _collectContextKeysForSubmenus, _commandService, _contextKeyService) {\n this._id = _id;\n this._hiddenStates = _hiddenStates;\n this._collectContextKeysForSubmenus = _collectContextKeysForSubmenus;\n this._commandService = _commandService;\n this._contextKeyService = _contextKeyService;\n this._menuGroups = [];\n this._structureContextKeys = new Set();\n this._preconditionContextKeys = new Set();\n this._toggledContextKeys = new Set();\n this.refresh();\n }\n get structureContextKeys() {\n return this._structureContextKeys;\n }\n get preconditionContextKeys() {\n return this._preconditionContextKeys;\n }\n get toggledContextKeys() {\n return this._toggledContextKeys;\n }\n refresh() {\n // reset\n this._menuGroups.length = 0;\n this._structureContextKeys.clear();\n this._preconditionContextKeys.clear();\n this._toggledContextKeys.clear();\n const menuItems = _actions_js__WEBPACK_IMPORTED_MODULE_3__.MenuRegistry.getMenuItems(this._id);\n let group;\n menuItems.sort(MenuInfo_1._compareMenuItems);\n for (const item of menuItems) {\n // group by groupId\n const groupName = item.group || '';\n if (!group || group[0] !== groupName) {\n group = [groupName, []];\n this._menuGroups.push(group);\n }\n group[1].push(item);\n // keep keys for eventing\n this._collectContextKeys(item);\n }\n }\n _collectContextKeys(item) {\n MenuInfo_1._fillInKbExprKeys(item.when, this._structureContextKeys);\n if ((0,_actions_js__WEBPACK_IMPORTED_MODULE_3__.isIMenuItem)(item)) {\n // keep precondition keys for event if applicable\n if (item.command.precondition) {\n MenuInfo_1._fillInKbExprKeys(item.command.precondition, this._preconditionContextKeys);\n }\n // keep toggled keys for event if applicable\n if (item.command.toggled) {\n const toggledExpression = item.command.toggled.condition || item.command.toggled;\n MenuInfo_1._fillInKbExprKeys(toggledExpression, this._toggledContextKeys);\n }\n }\n else if (this._collectContextKeysForSubmenus) {\n // recursively collect context keys from submenus so that this\n // menu fires events when context key changes affect submenus\n _actions_js__WEBPACK_IMPORTED_MODULE_3__.MenuRegistry.getMenuItems(item.submenu).forEach(this._collectContextKeys, this);\n }\n }\n createActionGroups(options) {\n const result = [];\n for (const group of this._menuGroups) {\n const [id, items] = group;\n const activeActions = [];\n for (const item of items) {\n if (this._contextKeyService.contextMatchesRules(item.when)) {\n const isMenuItem = (0,_actions_js__WEBPACK_IMPORTED_MODULE_3__.isIMenuItem)(item);\n if (isMenuItem) {\n this._hiddenStates.setDefaultState(this._id, item.command.id, !!item.isHiddenByDefault);\n }\n const menuHide = createMenuHide(this._id, isMenuItem ? item.command : item, this._hiddenStates);\n if (isMenuItem) {\n // MenuItemAction\n activeActions.push(new _actions_js__WEBPACK_IMPORTED_MODULE_3__.MenuItemAction(item.command, item.alt, options, menuHide, this._contextKeyService, this._commandService));\n }\n else {\n // SubmenuItemAction\n const groups = new MenuInfo_1(item.submenu, this._hiddenStates, this._collectContextKeysForSubmenus, this._commandService, this._contextKeyService).createActionGroups(options);\n const submenuActions = _base_common_actions_js__WEBPACK_IMPORTED_MODULE_6__.Separator.join(...groups.map(g => g[1]));\n if (submenuActions.length > 0) {\n activeActions.push(new _actions_js__WEBPACK_IMPORTED_MODULE_3__.SubmenuItemAction(item, menuHide, submenuActions));\n }\n }\n }\n }\n if (activeActions.length > 0) {\n result.push([id, activeActions]);\n }\n }\n return result;\n }\n static _fillInKbExprKeys(exp, set) {\n if (exp) {\n for (const key of exp.keys()) {\n set.add(key);\n }\n }\n }\n static _compareMenuItems(a, b) {\n const aGroup = a.group;\n const bGroup = b.group;\n if (aGroup !== bGroup) {\n // Falsy groups come last\n if (!aGroup) {\n return 1;\n }\n else if (!bGroup) {\n return -1;\n }\n // 'navigation' group comes first\n if (aGroup === 'navigation') {\n return -1;\n }\n else if (bGroup === 'navigation') {\n return 1;\n }\n // lexical sort for groups\n const value = aGroup.localeCompare(bGroup);\n if (value !== 0) {\n return value;\n }\n }\n // sort on priority - default is 0\n const aPrio = a.order || 0;\n const bPrio = b.order || 0;\n if (aPrio < bPrio) {\n return -1;\n }\n else if (aPrio > bPrio) {\n return 1;\n }\n // sort on titles\n return MenuInfo_1._compareTitles((0,_actions_js__WEBPACK_IMPORTED_MODULE_3__.isIMenuItem)(a) ? a.command.title : a.title, (0,_actions_js__WEBPACK_IMPORTED_MODULE_3__.isIMenuItem)(b) ? b.command.title : b.title);\n }\n static _compareTitles(a, b) {\n const aStr = typeof a === 'string' ? a : a.original;\n const bStr = typeof b === 'string' ? b : b.original;\n return aStr.localeCompare(bStr);\n }\n};\nMenuInfo = MenuInfo_1 = __decorate([\n __param(3, _commands_common_commands_js__WEBPACK_IMPORTED_MODULE_4__.ICommandService),\n __param(4, _contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_5__.IContextKeyService)\n], MenuInfo);\nlet MenuImpl = class MenuImpl {\n constructor(id, hiddenStates, options, commandService, contextKeyService) {\n this._disposables = new _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_2__.DisposableStore();\n this._menuInfo = new MenuInfo(id, hiddenStates, options.emitEventsForSubmenuChanges, commandService, contextKeyService);\n // Rebuild this menu whenever the menu registry reports an event for this MenuId.\n // This usually happen while code and extensions are loaded and affects the over\n // structure of the menu\n const rebuildMenuSoon = new _base_common_async_js__WEBPACK_IMPORTED_MODULE_0__.RunOnceScheduler(() => {\n this._menuInfo.refresh();\n this._onDidChange.fire({ menu: this, isStructuralChange: true, isEnablementChange: true, isToggleChange: true });\n }, options.eventDebounceDelay);\n this._disposables.add(rebuildMenuSoon);\n this._disposables.add(_actions_js__WEBPACK_IMPORTED_MODULE_3__.MenuRegistry.onDidChangeMenu(e => {\n if (e.has(id)) {\n rebuildMenuSoon.schedule();\n }\n }));\n // When context keys or storage state changes we need to check if the menu also has changed. However,\n // we only do that when someone listens on this menu because (1) these events are\n // firing often and (2) menu are often leaked\n const lazyListener = this._disposables.add(new _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_2__.DisposableStore());\n const merge = (events) => {\n let isStructuralChange = false;\n let isEnablementChange = false;\n let isToggleChange = false;\n for (const item of events) {\n isStructuralChange = isStructuralChange || item.isStructuralChange;\n isEnablementChange = isEnablementChange || item.isEnablementChange;\n isToggleChange = isToggleChange || item.isToggleChange;\n if (isStructuralChange && isEnablementChange && isToggleChange) {\n // everything is TRUE, no need to continue iterating\n break;\n }\n }\n return { menu: this, isStructuralChange, isEnablementChange, isToggleChange };\n };\n const startLazyListener = () => {\n lazyListener.add(contextKeyService.onDidChangeContext(e => {\n const isStructuralChange = e.affectsSome(this._menuInfo.structureContextKeys);\n const isEnablementChange = e.affectsSome(this._menuInfo.preconditionContextKeys);\n const isToggleChange = e.affectsSome(this._menuInfo.toggledContextKeys);\n if (isStructuralChange || isEnablementChange || isToggleChange) {\n this._onDidChange.fire({ menu: this, isStructuralChange, isEnablementChange, isToggleChange });\n }\n }));\n lazyListener.add(hiddenStates.onDidChange(e => {\n this._onDidChange.fire({ menu: this, isStructuralChange: true, isEnablementChange: false, isToggleChange: false });\n }));\n };\n this._onDidChange = new _base_common_event_js__WEBPACK_IMPORTED_MODULE_1__.DebounceEmitter({\n // start/stop context key listener\n onWillAddFirstListener: startLazyListener,\n onDidRemoveLastListener: lazyListener.clear.bind(lazyListener),\n delay: options.eventDebounceDelay,\n merge\n });\n this.onDidChange = this._onDidChange.event;\n }\n getActions(options) {\n return this._menuInfo.createActionGroups(options);\n }\n dispose() {\n this._disposables.dispose();\n this._onDidChange.dispose();\n }\n};\nMenuImpl = __decorate([\n __param(3, _commands_common_commands_js__WEBPACK_IMPORTED_MODULE_4__.ICommandService),\n __param(4, _contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_5__.IContextKeyService)\n], MenuImpl);\nfunction createMenuHide(menu, command, states) {\n const id = (0,_actions_js__WEBPACK_IMPORTED_MODULE_3__.isISubmenuItem)(command) ? command.submenu.id : command.id;\n const title = typeof command.title === 'string' ? command.title : command.title.value;\n const hide = (0,_base_common_actions_js__WEBPACK_IMPORTED_MODULE_6__.toAction)({\n id: `hide/${menu.id}/${id}`,\n label: (0,_nls_js__WEBPACK_IMPORTED_MODULE_9__.localize)('hide.label', 'Hide \\'{0}\\'', title),\n run() { states.updateHidden(menu, id, true); }\n });\n const toggle = (0,_base_common_actions_js__WEBPACK_IMPORTED_MODULE_6__.toAction)({\n id: `toggle/${menu.id}/${id}`,\n label: title,\n get checked() { return !states.isHidden(menu, id); },\n run() { states.updateHidden(menu, id, !!this.checked); }\n });\n return {\n hide,\n toggle,\n get isHidden() { return !toggle.checked; },\n };\n}\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/platform/actions/common/menuService.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/platform/clipboard/browser/clipboardService.js":
/*!******************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/platform/clipboard/browser/clipboardService.js ***!
\******************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ BrowserClipboardService: () => (/* binding */ BrowserClipboardService)\n/* harmony export */ });\n/* harmony import */ var _base_browser_browser_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../base/browser/browser.js */ \"./node_modules/monaco-editor/esm/vs/base/browser/browser.js\");\n/* harmony import */ var _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../base/browser/dom.js */ \"./node_modules/monaco-editor/esm/vs/base/browser/dom.js\");\n/* harmony import */ var _base_browser_window_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../base/browser/window.js */ \"./node_modules/monaco-editor/esm/vs/base/browser/window.js\");\n/* harmony import */ var _base_common_async_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../../base/common/async.js */ \"./node_modules/monaco-editor/esm/vs/base/common/async.js\");\n/* harmony import */ var _base_common_event_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../../base/common/event.js */ \"./node_modules/monaco-editor/esm/vs/base/common/event.js\");\n/* harmony import */ var _base_common_hash_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../../../base/common/hash.js */ \"./node_modules/monaco-editor/esm/vs/base/common/hash.js\");\n/* harmony import */ var _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../../../base/common/lifecycle.js */ \"./node_modules/monaco-editor/esm/vs/base/common/lifecycle.js\");\n/* harmony import */ var _layout_browser_layoutService_js__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ../../layout/browser/layoutService.js */ \"./node_modules/monaco-editor/esm/vs/platform/layout/browser/layoutService.js\");\n/* harmony import */ var _log_common_log_js__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ../../log/common/log.js */ \"./node_modules/monaco-editor/esm/vs/platform/log/common/log.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\nvar __decorate = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\n return c > 3 && r && Object.defineProperty(target, key, r), r;\n};\nvar __param = (undefined && undefined.__param) || function (paramIndex, decorator) {\n return function (target, key) { decorator(target, key, paramIndex); }\n};\nvar BrowserClipboardService_1;\n\n\n\n\n\n\n\n\n\nlet BrowserClipboardService = BrowserClipboardService_1 = class BrowserClipboardService extends _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_6__.Disposable {\n constructor(layoutService, logService) {\n super();\n this.layoutService = layoutService;\n this.logService = logService;\n this.mapTextToType = new Map(); // unsupported in web (only in-memory)\n this.findText = ''; // unsupported in web (only in-memory)\n this.resources = []; // unsupported in web (only in-memory)\n this.resourcesStateHash = undefined;\n if (_base_browser_browser_js__WEBPACK_IMPORTED_MODULE_0__.isSafari || _base_browser_browser_js__WEBPACK_IMPORTED_MODULE_0__.isWebkitWebView) {\n this.installWebKitWriteTextWorkaround();\n }\n // Keep track of copy operations to reset our set of\n // copied resources: since we keep resources in memory\n // and not in the clipboard, we have to invalidate\n // that state when the user copies other data.\n this._register(_base_common_event_js__WEBPACK_IMPORTED_MODULE_4__.Event.runAndSubscribe(_base_browser_dom_js__WEBPACK_IMPORTED_MODULE_1__.onDidRegisterWindow, ({ window, disposables }) => {\n disposables.add((0,_base_browser_dom_js__WEBPACK_IMPORTED_MODULE_1__.addDisposableListener)(window.document, 'copy', () => this.clearResources()));\n }, { window: _base_browser_window_js__WEBPACK_IMPORTED_MODULE_2__.mainWindow, disposables: this._store }));\n }\n // In Safari, it has the following note:\n //\n // \"The request to write to the clipboard must be triggered during a user gesture.\n // A call to clipboard.write or clipboard.writeText outside the scope of a user\n // gesture(such as \"click\" or \"touch\" event handlers) will result in the immediate\n // rejection of the promise returned by the API call.\"\n // From: https://webkit.org/blog/10855/async-clipboard-api/\n //\n // Since extensions run in a web worker, and handle gestures in an asynchronous way,\n // they are not classified by Safari as \"in response to a user gesture\" and will reject.\n //\n // This function sets up some handlers to work around that behavior.\n installWebKitWriteTextWorkaround() {\n const handler = () => {\n const currentWritePromise = new _base_common_async_js__WEBPACK_IMPORTED_MODULE_3__.DeferredPromise();\n // Cancel the previous promise since we just created a new one in response to this new event\n if (this.webKitPendingClipboardWritePromise && !this.webKitPendingClipboardWritePromise.isSettled) {\n this.webKitPendingClipboardWritePromise.cancel();\n }\n this.webKitPendingClipboardWritePromise = currentWritePromise;\n // The ctor of ClipboardItem allows you to pass in a promise that will resolve to a string.\n // This allows us to pass in a Promise that will either be cancelled by another event or\n // resolved with the contents of the first call to this.writeText.\n // see https://developer.mozilla.org/en-US/docs/Web/API/ClipboardItem/ClipboardItem#parameters\n navigator.clipboard.write([new ClipboardItem({\n 'text/plain': currentWritePromise.p,\n })]).catch(async (err) => {\n if (!(err instanceof Error) || err.name !== 'NotAllowedError' || !currentWritePromise.isRejected) {\n this.logService.error(err);\n }\n });\n };\n this._register(_base_common_event_js__WEBPACK_IMPORTED_MODULE_4__.Event.runAndSubscribe(this.layoutService.onDidAddContainer, ({ container, disposables }) => {\n disposables.add((0,_base_browser_dom_js__WEBPACK_IMPORTED_MODULE_1__.addDisposableListener)(container, 'click', handler));\n disposables.add((0,_base_browser_dom_js__WEBPACK_IMPORTED_MODULE_1__.addDisposableListener)(container, 'keydown', handler));\n }, { container: this.layoutService.mainContainer, disposables: this._store }));\n }\n async writeText(text, type) {\n // Clear resources given we are writing text\n this.writeResources([]);\n // With type: only in-memory is supported\n if (type) {\n this.mapTextToType.set(type, text);\n return;\n }\n if (this.webKitPendingClipboardWritePromise) {\n // For Safari, we complete this Promise which allows the call to `navigator.clipboard.write()`\n // above to resolve and successfully copy to the clipboard. If we let this continue, Safari\n // would throw an error because this call stack doesn't appear to originate from a user gesture.\n return this.webKitPendingClipboardWritePromise.complete(text);\n }\n // Guard access to navigator.clipboard with try/catch\n // as we have seen DOMExceptions in certain browsers\n // due to security policies.\n try {\n return await navigator.clipboard.writeText(text);\n }\n catch (error) {\n console.error(error);\n }\n // Fallback to textarea and execCommand solution\n this.fallbackWriteText(text);\n }\n fallbackWriteText(text) {\n const activeDocument = (0,_base_browser_dom_js__WEBPACK_IMPORTED_MODULE_1__.getActiveDocument)();\n const activeElement = activeDocument.activeElement;\n const textArea = activeDocument.body.appendChild((0,_base_browser_dom_js__WEBPACK_IMPORTED_MODULE_1__.$)('textarea', { 'aria-hidden': true }));\n textArea.style.height = '1px';\n textArea.style.width = '1px';\n textArea.style.position = 'absolute';\n textArea.value = text;\n textArea.focus();\n textArea.select();\n activeDocument.execCommand('copy');\n if (activeElement instanceof HTMLElement) {\n activeElement.focus();\n }\n activeDocument.body.removeChild(textArea);\n }\n async readText(type) {\n // With type: only in-memory is supported\n if (type) {\n return this.mapTextToType.get(type) || '';\n }\n // Guard access to navigator.clipboard with try/catch\n // as we have seen DOMExceptions in certain browsers\n // due to security policies.\n try {\n return await navigator.clipboard.readText();\n }\n catch (error) {\n console.error(error);\n }\n return '';\n }\n async readFindText() {\n return this.findText;\n }\n async writeFindText(text) {\n this.findText = text;\n }\n async writeResources(resources) {\n if (resources.length === 0) {\n this.clearResources();\n }\n else {\n this.resources = resources;\n this.resourcesStateHash = await this.computeResourcesStateHash();\n }\n }\n async readResources() {\n const resourcesStateHash = await this.computeResourcesStateHash();\n if (this.resourcesStateHash !== resourcesStateHash) {\n this.clearResources(); // state mismatch, resources no longer valid\n }\n return this.resources;\n }\n async computeResourcesStateHash() {\n if (this.resources.length === 0) {\n return undefined; // no resources, no hash needed\n }\n // Resources clipboard is managed in-memory only and thus\n // fails to invalidate when clipboard data is changing.\n // As such, we compute the hash of the current clipboard\n // and use that to later validate the resources clipboard.\n const clipboardText = await this.readText();\n return (0,_base_common_hash_js__WEBPACK_IMPORTED_MODULE_5__.hash)(clipboardText.substring(0, BrowserClipboardService_1.MAX_RESOURCE_STATE_SOURCE_LENGTH));\n }\n clearResources() {\n this.resources = [];\n this.resourcesStateHash = undefined;\n }\n};\nBrowserClipboardService.MAX_RESOURCE_STATE_SOURCE_LENGTH = 1000;\nBrowserClipboardService = BrowserClipboardService_1 = __decorate([\n __param(0, _layout_browser_layoutService_js__WEBPACK_IMPORTED_MODULE_7__.ILayoutService),\n __param(1, _log_common_log_js__WEBPACK_IMPORTED_MODULE_8__.ILogService)\n], BrowserClipboardService);\n\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/platform/clipboard/browser/clipboardService.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/platform/clipboard/common/clipboardService.js":
/*!*****************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/platform/clipboard/common/clipboardService.js ***!
\*****************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ IClipboardService: () => (/* binding */ IClipboardService)\n/* harmony export */ });\n/* harmony import */ var _instantiation_common_instantiation_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../instantiation/common/instantiation.js */ \"./node_modules/monaco-editor/esm/vs/platform/instantiation/common/instantiation.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\nconst IClipboardService = (0,_instantiation_common_instantiation_js__WEBPACK_IMPORTED_MODULE_0__.createDecorator)('clipboardService');\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/platform/clipboard/common/clipboardService.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/platform/commands/common/commands.js":
/*!********************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/platform/commands/common/commands.js ***!
\********************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ CommandsRegistry: () => (/* binding */ CommandsRegistry),\n/* harmony export */ ICommandService: () => (/* binding */ ICommandService)\n/* harmony export */ });\n/* harmony import */ var _base_common_event_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../base/common/event.js */ \"./node_modules/monaco-editor/esm/vs/base/common/event.js\");\n/* harmony import */ var _base_common_iterator_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../base/common/iterator.js */ \"./node_modules/monaco-editor/esm/vs/base/common/iterator.js\");\n/* harmony import */ var _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../base/common/lifecycle.js */ \"./node_modules/monaco-editor/esm/vs/base/common/lifecycle.js\");\n/* harmony import */ var _base_common_linkedList_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../../base/common/linkedList.js */ \"./node_modules/monaco-editor/esm/vs/base/common/linkedList.js\");\n/* harmony import */ var _base_common_types_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../../base/common/types.js */ \"./node_modules/monaco-editor/esm/vs/base/common/types.js\");\n/* harmony import */ var _instantiation_common_instantiation_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../../instantiation/common/instantiation.js */ \"./node_modules/monaco-editor/esm/vs/platform/instantiation/common/instantiation.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n\n\n\n\n\nconst ICommandService = (0,_instantiation_common_instantiation_js__WEBPACK_IMPORTED_MODULE_5__.createDecorator)('commandService');\nconst CommandsRegistry = new class {\n constructor() {\n this._commands = new Map();\n this._onDidRegisterCommand = new _base_common_event_js__WEBPACK_IMPORTED_MODULE_0__.Emitter();\n this.onDidRegisterCommand = this._onDidRegisterCommand.event;\n }\n registerCommand(idOrCommand, handler) {\n if (!idOrCommand) {\n throw new Error(`invalid command`);\n }\n if (typeof idOrCommand === 'string') {\n if (!handler) {\n throw new Error(`invalid command`);\n }\n return this.registerCommand({ id: idOrCommand, handler });\n }\n // add argument validation if rich command metadata is provided\n if (idOrCommand.metadata && Array.isArray(idOrCommand.metadata.args)) {\n const constraints = [];\n for (const arg of idOrCommand.metadata.args) {\n constraints.push(arg.constraint);\n }\n const actualHandler = idOrCommand.handler;\n idOrCommand.handler = function (accessor, ...args) {\n (0,_base_common_types_js__WEBPACK_IMPORTED_MODULE_4__.validateConstraints)(args, constraints);\n return actualHandler(accessor, ...args);\n };\n }\n // find a place to store the command\n const { id } = idOrCommand;\n let commands = this._commands.get(id);\n if (!commands) {\n commands = new _base_common_linkedList_js__WEBPACK_IMPORTED_MODULE_3__.LinkedList();\n this._commands.set(id, commands);\n }\n const removeFn = commands.unshift(idOrCommand);\n const ret = (0,_base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_2__.toDisposable)(() => {\n removeFn();\n const command = this._commands.get(id);\n if (command === null || command === void 0 ? void 0 : command.isEmpty()) {\n this._commands.delete(id);\n }\n });\n // tell the world about this command\n this._onDidRegisterCommand.fire(id);\n return ret;\n }\n registerCommandAlias(oldId, newId) {\n return CommandsRegistry.registerCommand(oldId, (accessor, ...args) => accessor.get(ICommandService).executeCommand(newId, ...args));\n }\n getCommand(id) {\n const list = this._commands.get(id);\n if (!list || list.isEmpty()) {\n return undefined;\n }\n return _base_common_iterator_js__WEBPACK_IMPORTED_MODULE_1__.Iterable.first(list);\n }\n getCommands() {\n const result = new Map();\n for (const key of this._commands.keys()) {\n const command = this.getCommand(key);\n if (command) {\n result.set(key, command);\n }\n }\n return result;\n }\n};\nCommandsRegistry.registerCommand('noop', () => { });\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/platform/commands/common/commands.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/platform/configuration/common/configuration.js":
/*!******************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/platform/configuration/common/configuration.js ***!
\******************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ IConfigurationService: () => (/* binding */ IConfigurationService),\n/* harmony export */ addToValueTree: () => (/* binding */ addToValueTree),\n/* harmony export */ getConfigurationValue: () => (/* binding */ getConfigurationValue),\n/* harmony export */ getLanguageTagSettingPlainKey: () => (/* binding */ getLanguageTagSettingPlainKey),\n/* harmony export */ removeFromValueTree: () => (/* binding */ removeFromValueTree),\n/* harmony export */ toValuesTree: () => (/* binding */ toValuesTree)\n/* harmony export */ });\n/* harmony import */ var _instantiation_common_instantiation_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../instantiation/common/instantiation.js */ \"./node_modules/monaco-editor/esm/vs/platform/instantiation/common/instantiation.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\nconst IConfigurationService = (0,_instantiation_common_instantiation_js__WEBPACK_IMPORTED_MODULE_0__.createDecorator)('configurationService');\nfunction toValuesTree(properties, conflictReporter) {\n const root = Object.create(null);\n for (const key in properties) {\n addToValueTree(root, key, properties[key], conflictReporter);\n }\n return root;\n}\nfunction addToValueTree(settingsTreeRoot, key, value, conflictReporter) {\n const segments = key.split('.');\n const last = segments.pop();\n let curr = settingsTreeRoot;\n for (let i = 0; i < segments.length; i++) {\n const s = segments[i];\n let obj = curr[s];\n switch (typeof obj) {\n case 'undefined':\n obj = curr[s] = Object.create(null);\n break;\n case 'object':\n break;\n default:\n conflictReporter(`Ignoring ${key} as ${segments.slice(0, i + 1).join('.')} is ${JSON.stringify(obj)}`);\n return;\n }\n curr = obj;\n }\n if (typeof curr === 'object' && curr !== null) {\n try {\n curr[last] = value; // workaround https://github.com/microsoft/vscode/issues/13606\n }\n catch (e) {\n conflictReporter(`Ignoring ${key} as ${segments.join('.')} is ${JSON.stringify(curr)}`);\n }\n }\n else {\n conflictReporter(`Ignoring ${key} as ${segments.join('.')} is ${JSON.stringify(curr)}`);\n }\n}\nfunction removeFromValueTree(valueTree, key) {\n const segments = key.split('.');\n doRemoveFromValueTree(valueTree, segments);\n}\nfunction doRemoveFromValueTree(valueTree, segments) {\n const first = segments.shift();\n if (segments.length === 0) {\n // Reached last segment\n delete valueTree[first];\n return;\n }\n if (Object.keys(valueTree).indexOf(first) !== -1) {\n const value = valueTree[first];\n if (typeof value === 'object' && !Array.isArray(value)) {\n doRemoveFromValueTree(value, segments);\n if (Object.keys(value).length === 0) {\n delete valueTree[first];\n }\n }\n }\n}\n/**\n * A helper function to get the configuration value with a specific settings path (e.g. config.some.setting)\n */\nfunction getConfigurationValue(config, settingPath, defaultValue) {\n function accessSetting(config, path) {\n let current = config;\n for (const component of path) {\n if (typeof current !== 'object' || current === null) {\n return undefined;\n }\n current = current[component];\n }\n return current;\n }\n const path = settingPath.split('.');\n const result = accessSetting(config, path);\n return typeof result === 'undefined' ? defaultValue : result;\n}\nfunction getLanguageTagSettingPlainKey(settingKey) {\n return settingKey.replace(/[\\[\\]]/g, '');\n}\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/platform/configuration/common/configuration.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/platform/configuration/common/configurationModels.js":
/*!************************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/platform/configuration/common/configurationModels.js ***!
\************************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ Configuration: () => (/* binding */ Configuration),\n/* harmony export */ ConfigurationChangeEvent: () => (/* binding */ ConfigurationChangeEvent),\n/* harmony export */ ConfigurationModel: () => (/* binding */ ConfigurationModel),\n/* harmony export */ ConfigurationModelParser: () => (/* binding */ ConfigurationModelParser)\n/* harmony export */ });\n/* harmony import */ var _base_common_arrays_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../base/common/arrays.js */ \"./node_modules/monaco-editor/esm/vs/base/common/arrays.js\");\n/* harmony import */ var _base_common_map_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../base/common/map.js */ \"./node_modules/monaco-editor/esm/vs/base/common/map.js\");\n/* harmony import */ var _base_common_objects_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../base/common/objects.js */ \"./node_modules/monaco-editor/esm/vs/base/common/objects.js\");\n/* harmony import */ var _base_common_types_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../../base/common/types.js */ \"./node_modules/monaco-editor/esm/vs/base/common/types.js\");\n/* harmony import */ var _base_common_uri_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../../base/common/uri.js */ \"./node_modules/monaco-editor/esm/vs/base/common/uri.js\");\n/* harmony import */ var _configuration_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./configuration.js */ \"./node_modules/monaco-editor/esm/vs/platform/configuration/common/configuration.js\");\n/* harmony import */ var _configurationRegistry_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ./configurationRegistry.js */ \"./node_modules/monaco-editor/esm/vs/platform/configuration/common/configurationRegistry.js\");\n/* harmony import */ var _registry_common_platform_js__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ../../registry/common/platform.js */ \"./node_modules/monaco-editor/esm/vs/platform/registry/common/platform.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n\n\n\n\n\n\n\nfunction freeze(data) {\n return Object.isFrozen(data) ? data : _base_common_objects_js__WEBPACK_IMPORTED_MODULE_2__.deepFreeze(data);\n}\nclass ConfigurationModel {\n constructor(_contents = {}, _keys = [], _overrides = [], raw) {\n this._contents = _contents;\n this._keys = _keys;\n this._overrides = _overrides;\n this.raw = raw;\n this.overrideConfigurations = new Map();\n }\n get rawConfiguration() {\n var _a;\n if (!this._rawConfiguration) {\n if ((_a = this.raw) === null || _a === void 0 ? void 0 : _a.length) {\n const rawConfigurationModels = this.raw.map(raw => {\n if (raw instanceof ConfigurationModel) {\n return raw;\n }\n const parser = new ConfigurationModelParser('');\n parser.parseRaw(raw);\n return parser.configurationModel;\n });\n this._rawConfiguration = rawConfigurationModels.reduce((previous, current) => current === previous ? current : previous.merge(current), rawConfigurationModels[0]);\n }\n else {\n // raw is same as current\n this._rawConfiguration = this;\n }\n }\n return this._rawConfiguration;\n }\n get contents() {\n return this._contents;\n }\n get overrides() {\n return this._overrides;\n }\n get keys() {\n return this._keys;\n }\n isEmpty() {\n return this._keys.length === 0 && Object.keys(this._contents).length === 0 && this._overrides.length === 0;\n }\n getValue(section) {\n return section ? (0,_configuration_js__WEBPACK_IMPORTED_MODULE_5__.getConfigurationValue)(this.contents, section) : this.contents;\n }\n inspect(section, overrideIdentifier) {\n const that = this;\n return {\n get value() {\n return freeze(that.rawConfiguration.getValue(section));\n },\n get override() {\n return overrideIdentifier ? freeze(that.rawConfiguration.getOverrideValue(section, overrideIdentifier)) : undefined;\n },\n get merged() {\n return freeze(overrideIdentifier ? that.rawConfiguration.override(overrideIdentifier).getValue(section) : that.rawConfiguration.getValue(section));\n },\n get overrides() {\n const overrides = [];\n for (const { contents, identifiers, keys } of that.rawConfiguration.overrides) {\n const value = new ConfigurationModel(contents, keys).getValue(section);\n if (value !== undefined) {\n overrides.push({ identifiers, value });\n }\n }\n return overrides.length ? freeze(overrides) : undefined;\n }\n };\n }\n getOverrideValue(section, overrideIdentifier) {\n const overrideContents = this.getContentsForOverrideIdentifer(overrideIdentifier);\n return overrideContents\n ? section ? (0,_configuration_js__WEBPACK_IMPORTED_MODULE_5__.getConfigurationValue)(overrideContents, section) : overrideContents\n : undefined;\n }\n override(identifier) {\n let overrideConfigurationModel = this.overrideConfigurations.get(identifier);\n if (!overrideConfigurationModel) {\n overrideConfigurationModel = this.createOverrideConfigurationModel(identifier);\n this.overrideConfigurations.set(identifier, overrideConfigurationModel);\n }\n return overrideConfigurationModel;\n }\n merge(...others) {\n var _a, _b;\n const contents = _base_common_objects_js__WEBPACK_IMPORTED_MODULE_2__.deepClone(this.contents);\n const overrides = _base_common_objects_js__WEBPACK_IMPORTED_MODULE_2__.deepClone(this.overrides);\n const keys = [...this.keys];\n const raws = ((_a = this.raw) === null || _a === void 0 ? void 0 : _a.length) ? [...this.raw] : [this];\n for (const other of others) {\n raws.push(...(((_b = other.raw) === null || _b === void 0 ? void 0 : _b.length) ? other.raw : [other]));\n if (other.isEmpty()) {\n continue;\n }\n this.mergeContents(contents, other.contents);\n for (const otherOverride of other.overrides) {\n const [override] = overrides.filter(o => _base_common_arrays_js__WEBPACK_IMPORTED_MODULE_0__.equals(o.identifiers, otherOverride.identifiers));\n if (override) {\n this.mergeContents(override.contents, otherOverride.contents);\n override.keys.push(...otherOverride.keys);\n override.keys = _base_common_arrays_js__WEBPACK_IMPORTED_MODULE_0__.distinct(override.keys);\n }\n else {\n overrides.push(_base_common_objects_js__WEBPACK_IMPORTED_MODULE_2__.deepClone(otherOverride));\n }\n }\n for (const key of other.keys) {\n if (keys.indexOf(key) === -1) {\n keys.push(key);\n }\n }\n }\n return new ConfigurationModel(contents, keys, overrides, raws.every(raw => raw instanceof ConfigurationModel) ? undefined : raws);\n }\n createOverrideConfigurationModel(identifier) {\n const overrideContents = this.getContentsForOverrideIdentifer(identifier);\n if (!overrideContents || typeof overrideContents !== 'object' || !Object.keys(overrideContents).length) {\n // If there are no valid overrides, return self\n return this;\n }\n const contents = {};\n for (const key of _base_common_arrays_js__WEBPACK_IMPORTED_MODULE_0__.distinct([...Object.keys(this.contents), ...Object.keys(overrideContents)])) {\n let contentsForKey = this.contents[key];\n const overrideContentsForKey = overrideContents[key];\n // If there are override contents for the key, clone and merge otherwise use base contents\n if (overrideContentsForKey) {\n // Clone and merge only if base contents and override contents are of type object otherwise just override\n if (typeof contentsForKey === 'object' && typeof overrideContentsForKey === 'object') {\n contentsForKey = _base_common_objects_js__WEBPACK_IMPORTED_MODULE_2__.deepClone(contentsForKey);\n this.mergeContents(contentsForKey, overrideContentsForKey);\n }\n else {\n contentsForKey = overrideContentsForKey;\n }\n }\n contents[key] = contentsForKey;\n }\n return new ConfigurationModel(contents, this.keys, this.overrides);\n }\n mergeContents(source, target) {\n for (const key of Object.keys(target)) {\n if (key in source) {\n if (_base_common_types_js__WEBPACK_IMPORTED_MODULE_3__.isObject(source[key]) && _base_common_types_js__WEBPACK_IMPORTED_MODULE_3__.isObject(target[key])) {\n this.mergeContents(source[key], target[key]);\n continue;\n }\n }\n source[key] = _base_common_objects_js__WEBPACK_IMPORTED_MODULE_2__.deepClone(target[key]);\n }\n }\n getContentsForOverrideIdentifer(identifier) {\n let contentsForIdentifierOnly = null;\n let contents = null;\n const mergeContents = (contentsToMerge) => {\n if (contentsToMerge) {\n if (contents) {\n this.mergeContents(contents, contentsToMerge);\n }\n else {\n contents = _base_common_objects_js__WEBPACK_IMPORTED_MODULE_2__.deepClone(contentsToMerge);\n }\n }\n };\n for (const override of this.overrides) {\n if (override.identifiers.length === 1 && override.identifiers[0] === identifier) {\n contentsForIdentifierOnly = override.contents;\n }\n else if (override.identifiers.includes(identifier)) {\n mergeContents(override.contents);\n }\n }\n // Merge contents of the identifier only at the end to take precedence.\n mergeContents(contentsForIdentifierOnly);\n return contents;\n }\n toJSON() {\n return {\n contents: this.contents,\n overrides: this.overrides,\n keys: this.keys\n };\n }\n // Update methods\n addValue(key, value) {\n this.updateValue(key, value, true);\n }\n setValue(key, value) {\n this.updateValue(key, value, false);\n }\n removeValue(key) {\n const index = this.keys.indexOf(key);\n if (index === -1) {\n return;\n }\n this.keys.splice(index, 1);\n (0,_configuration_js__WEBPACK_IMPORTED_MODULE_5__.removeFromValueTree)(this.contents, key);\n if (_configurationRegistry_js__WEBPACK_IMPORTED_MODULE_6__.OVERRIDE_PROPERTY_REGEX.test(key)) {\n this.overrides.splice(this.overrides.findIndex(o => _base_common_arrays_js__WEBPACK_IMPORTED_MODULE_0__.equals(o.identifiers, (0,_configurationRegistry_js__WEBPACK_IMPORTED_MODULE_6__.overrideIdentifiersFromKey)(key))), 1);\n }\n }\n updateValue(key, value, add) {\n (0,_configuration_js__WEBPACK_IMPORTED_MODULE_5__.addToValueTree)(this.contents, key, value, e => console.error(e));\n add = add || this.keys.indexOf(key) === -1;\n if (add) {\n this.keys.push(key);\n }\n if (_configurationRegistry_js__WEBPACK_IMPORTED_MODULE_6__.OVERRIDE_PROPERTY_REGEX.test(key)) {\n this.overrides.push({\n identifiers: (0,_configurationRegistry_js__WEBPACK_IMPORTED_MODULE_6__.overrideIdentifiersFromKey)(key),\n keys: Object.keys(this.contents[key]),\n contents: (0,_configuration_js__WEBPACK_IMPORTED_MODULE_5__.toValuesTree)(this.contents[key], message => console.error(message)),\n });\n }\n }\n}\nclass ConfigurationModelParser {\n constructor(_name) {\n this._name = _name;\n this._raw = null;\n this._configurationModel = null;\n this._restrictedConfigurations = [];\n }\n get configurationModel() {\n return this._configurationModel || new ConfigurationModel();\n }\n parseRaw(raw, options) {\n this._raw = raw;\n const { contents, keys, overrides, restricted, hasExcludedProperties } = this.doParseRaw(raw, options);\n this._configurationModel = new ConfigurationModel(contents, keys, overrides, hasExcludedProperties ? [raw] : undefined /* raw has not changed */);\n this._restrictedConfigurations = restricted || [];\n }\n doParseRaw(raw, options) {\n const configurationProperties = _registry_common_platform_js__WEBPACK_IMPORTED_MODULE_7__.Registry.as(_configurationRegistry_js__WEBPACK_IMPORTED_MODULE_6__.Extensions.Configuration).getConfigurationProperties();\n const filtered = this.filter(raw, configurationProperties, true, options);\n raw = filtered.raw;\n const contents = (0,_configuration_js__WEBPACK_IMPORTED_MODULE_5__.toValuesTree)(raw, message => console.error(`Conflict in settings file ${this._name}: ${message}`));\n const keys = Object.keys(raw);\n const overrides = this.toOverrides(raw, message => console.error(`Conflict in settings file ${this._name}: ${message}`));\n return { contents, keys, overrides, restricted: filtered.restricted, hasExcludedProperties: filtered.hasExcludedProperties };\n }\n filter(properties, configurationProperties, filterOverriddenProperties, options) {\n var _a, _b, _c;\n let hasExcludedProperties = false;\n if (!(options === null || options === void 0 ? void 0 : options.scopes) && !(options === null || options === void 0 ? void 0 : options.skipRestricted) && !((_a = options === null || options === void 0 ? void 0 : options.exclude) === null || _a === void 0 ? void 0 : _a.length)) {\n return { raw: properties, restricted: [], hasExcludedProperties };\n }\n const raw = {};\n const restricted = [];\n for (const key in properties) {\n if (_configurationRegistry_js__WEBPACK_IMPORTED_MODULE_6__.OVERRIDE_PROPERTY_REGEX.test(key) && filterOverriddenProperties) {\n const result = this.filter(properties[key], configurationProperties, false, options);\n raw[key] = result.raw;\n hasExcludedProperties = hasExcludedProperties || result.hasExcludedProperties;\n restricted.push(...result.restricted);\n }\n else {\n const propertySchema = configurationProperties[key];\n const scope = propertySchema ? typeof propertySchema.scope !== 'undefined' ? propertySchema.scope : 3 /* ConfigurationScope.WINDOW */ : undefined;\n if (propertySchema === null || propertySchema === void 0 ? void 0 : propertySchema.restricted) {\n restricted.push(key);\n }\n if (!((_b = options.exclude) === null || _b === void 0 ? void 0 : _b.includes(key)) /* Check exclude */\n && (((_c = options.include) === null || _c === void 0 ? void 0 : _c.includes(key) /* Check include */)\n || ((scope === undefined || options.scopes === undefined || options.scopes.includes(scope)) /* Check scopes */\n && !(options.skipRestricted && (propertySchema === null || propertySchema === void 0 ? void 0 : propertySchema.restricted))))) /* Check restricted */ {\n raw[key] = properties[key];\n }\n else {\n hasExcludedProperties = true;\n }\n }\n }\n return { raw, restricted, hasExcludedProperties };\n }\n toOverrides(raw, conflictReporter) {\n const overrides = [];\n for (const key of Object.keys(raw)) {\n if (_configurationRegistry_js__WEBPACK_IMPORTED_MODULE_6__.OVERRIDE_PROPERTY_REGEX.test(key)) {\n const overrideRaw = {};\n for (const keyInOverrideRaw in raw[key]) {\n overrideRaw[keyInOverrideRaw] = raw[key][keyInOverrideRaw];\n }\n overrides.push({\n identifiers: (0,_configurationRegistry_js__WEBPACK_IMPORTED_MODULE_6__.overrideIdentifiersFromKey)(key),\n keys: Object.keys(overrideRaw),\n contents: (0,_configuration_js__WEBPACK_IMPORTED_MODULE_5__.toValuesTree)(overrideRaw, conflictReporter)\n });\n }\n }\n return overrides;\n }\n}\nclass ConfigurationInspectValue {\n constructor(key, overrides, _value, overrideIdentifiers, defaultConfiguration, policyConfiguration, applicationConfiguration, userConfiguration, localUserConfiguration, remoteUserConfiguration, workspaceConfiguration, folderConfigurationModel, memoryConfigurationModel) {\n this.key = key;\n this.overrides = overrides;\n this._value = _value;\n this.overrideIdentifiers = overrideIdentifiers;\n this.defaultConfiguration = defaultConfiguration;\n this.policyConfiguration = policyConfiguration;\n this.applicationConfiguration = applicationConfiguration;\n this.userConfiguration = userConfiguration;\n this.localUserConfiguration = localUserConfiguration;\n this.remoteUserConfiguration = remoteUserConfiguration;\n this.workspaceConfiguration = workspaceConfiguration;\n this.folderConfigurationModel = folderConfigurationModel;\n this.memoryConfigurationModel = memoryConfigurationModel;\n }\n toInspectValue(inspectValue) {\n return (inspectValue === null || inspectValue === void 0 ? void 0 : inspectValue.value) !== undefined || (inspectValue === null || inspectValue === void 0 ? void 0 : inspectValue.override) !== undefined || (inspectValue === null || inspectValue === void 0 ? void 0 : inspectValue.overrides) !== undefined ? inspectValue : undefined;\n }\n get userInspectValue() {\n if (!this._userInspectValue) {\n this._userInspectValue = this.userConfiguration.inspect(this.key, this.overrides.overrideIdentifier);\n }\n return this._userInspectValue;\n }\n get user() {\n return this.toInspectValue(this.userInspectValue);\n }\n}\nclass Configuration {\n constructor(_defaultConfiguration, _policyConfiguration, _applicationConfiguration, _localUserConfiguration, _remoteUserConfiguration = new ConfigurationModel(), _workspaceConfiguration = new ConfigurationModel(), _folderConfigurations = new _base_common_map_js__WEBPACK_IMPORTED_MODULE_1__.ResourceMap(), _memoryConfiguration = new ConfigurationModel(), _memoryConfigurationByResource = new _base_common_map_js__WEBPACK_IMPORTED_MODULE_1__.ResourceMap()) {\n this._defaultConfiguration = _defaultConfiguration;\n this._policyConfiguration = _policyConfiguration;\n this._applicationConfiguration = _applicationConfiguration;\n this._localUserConfiguration = _localUserConfiguration;\n this._remoteUserConfiguration = _remoteUserConfiguration;\n this._workspaceConfiguration = _workspaceConfiguration;\n this._folderConfigurations = _folderConfigurations;\n this._memoryConfiguration = _memoryConfiguration;\n this._memoryConfigurationByResource = _memoryConfigurationByResource;\n this._workspaceConsolidatedConfiguration = null;\n this._foldersConsolidatedConfigurations = new _base_common_map_js__WEBPACK_IMPORTED_MODULE_1__.ResourceMap();\n this._userConfiguration = null;\n }\n getValue(section, overrides, workspace) {\n const consolidateConfigurationModel = this.getConsolidatedConfigurationModel(section, overrides, workspace);\n return consolidateConfigurationModel.getValue(section);\n }\n updateValue(key, value, overrides = {}) {\n let memoryConfiguration;\n if (overrides.resource) {\n memoryConfiguration = this._memoryConfigurationByResource.get(overrides.resource);\n if (!memoryConfiguration) {\n memoryConfiguration = new ConfigurationModel();\n this._memoryConfigurationByResource.set(overrides.resource, memoryConfiguration);\n }\n }\n else {\n memoryConfiguration = this._memoryConfiguration;\n }\n if (value === undefined) {\n memoryConfiguration.removeValue(key);\n }\n else {\n memoryConfiguration.setValue(key, value);\n }\n if (!overrides.resource) {\n this._workspaceConsolidatedConfiguration = null;\n }\n }\n inspect(key, overrides, workspace) {\n const consolidateConfigurationModel = this.getConsolidatedConfigurationModel(key, overrides, workspace);\n const folderConfigurationModel = this.getFolderConfigurationModelForResource(overrides.resource, workspace);\n const memoryConfigurationModel = overrides.resource ? this._memoryConfigurationByResource.get(overrides.resource) || this._memoryConfiguration : this._memoryConfiguration;\n const overrideIdentifiers = new Set();\n for (const override of consolidateConfigurationModel.overrides) {\n for (const overrideIdentifier of override.identifiers) {\n if (consolidateConfigurationModel.getOverrideValue(key, overrideIdentifier) !== undefined) {\n overrideIdentifiers.add(overrideIdentifier);\n }\n }\n }\n return new ConfigurationInspectValue(key, overrides, consolidateConfigurationModel.getValue(key), overrideIdentifiers.size ? [...overrideIdentifiers] : undefined, this._defaultConfiguration, this._policyConfiguration.isEmpty() ? undefined : this._policyConfiguration, this.applicationConfiguration.isEmpty() ? undefined : this.applicationConfiguration, this.userConfiguration, this.localUserConfiguration, this.remoteUserConfiguration, workspace ? this._workspaceConfiguration : undefined, folderConfigurationModel ? folderConfigurationModel : undefined, memoryConfigurationModel);\n }\n get applicationConfiguration() {\n return this._applicationConfiguration;\n }\n get userConfiguration() {\n if (!this._userConfiguration) {\n this._userConfiguration = this._remoteUserConfiguration.isEmpty() ? this._localUserConfiguration : this._localUserConfiguration.merge(this._remoteUserConfiguration);\n }\n return this._userConfiguration;\n }\n get localUserConfiguration() {\n return this._localUserConfiguration;\n }\n get remoteUserConfiguration() {\n return this._remoteUserConfiguration;\n }\n getConsolidatedConfigurationModel(section, overrides, workspace) {\n let configurationModel = this.getConsolidatedConfigurationModelForResource(overrides, workspace);\n if (overrides.overrideIdentifier) {\n configurationModel = configurationModel.override(overrides.overrideIdentifier);\n }\n if (!this._policyConfiguration.isEmpty() && this._policyConfiguration.getValue(section) !== undefined) {\n configurationModel = configurationModel.merge(this._policyConfiguration);\n }\n return configurationModel;\n }\n getConsolidatedConfigurationModelForResource({ resource }, workspace) {\n let consolidateConfiguration = this.getWorkspaceConsolidatedConfiguration();\n if (workspace && resource) {\n const root = workspace.getFolder(resource);\n if (root) {\n consolidateConfiguration = this.getFolderConsolidatedConfiguration(root.uri) || consolidateConfiguration;\n }\n const memoryConfigurationForResource = this._memoryConfigurationByResource.get(resource);\n if (memoryConfigurationForResource) {\n consolidateConfiguration = consolidateConfiguration.merge(memoryConfigurationForResource);\n }\n }\n return consolidateConfiguration;\n }\n getWorkspaceConsolidatedConfiguration() {\n if (!this._workspaceConsolidatedConfiguration) {\n this._workspaceConsolidatedConfiguration = this._defaultConfiguration.merge(this.applicationConfiguration, this.userConfiguration, this._workspaceConfiguration, this._memoryConfiguration);\n }\n return this._workspaceConsolidatedConfiguration;\n }\n getFolderConsolidatedConfiguration(folder) {\n let folderConsolidatedConfiguration = this._foldersConsolidatedConfigurations.get(folder);\n if (!folderConsolidatedConfiguration) {\n const workspaceConsolidateConfiguration = this.getWorkspaceConsolidatedConfiguration();\n const folderConfiguration = this._folderConfigurations.get(folder);\n if (folderConfiguration) {\n folderConsolidatedConfiguration = workspaceConsolidateConfiguration.merge(folderConfiguration);\n this._foldersConsolidatedConfigurations.set(folder, folderConsolidatedConfiguration);\n }\n else {\n folderConsolidatedConfiguration = workspaceConsolidateConfiguration;\n }\n }\n return folderConsolidatedConfiguration;\n }\n getFolderConfigurationModelForResource(resource, workspace) {\n if (workspace && resource) {\n const root = workspace.getFolder(resource);\n if (root) {\n return this._folderConfigurations.get(root.uri);\n }\n }\n return undefined;\n }\n toData() {\n return {\n defaults: {\n contents: this._defaultConfiguration.contents,\n overrides: this._defaultConfiguration.overrides,\n keys: this._defaultConfiguration.keys\n },\n policy: {\n contents: this._policyConfiguration.contents,\n overrides: this._policyConfiguration.overrides,\n keys: this._policyConfiguration.keys\n },\n application: {\n contents: this.applicationConfiguration.contents,\n overrides: this.applicationConfiguration.overrides,\n keys: this.applicationConfiguration.keys\n },\n user: {\n contents: this.userConfiguration.contents,\n overrides: this.userConfiguration.overrides,\n keys: this.userConfiguration.keys\n },\n workspace: {\n contents: this._workspaceConfiguration.contents,\n overrides: this._workspaceConfiguration.overrides,\n keys: this._workspaceConfiguration.keys\n },\n folders: [...this._folderConfigurations.keys()].reduce((result, folder) => {\n const { contents, overrides, keys } = this._folderConfigurations.get(folder);\n result.push([folder, { contents, overrides, keys }]);\n return result;\n }, [])\n };\n }\n static parse(data) {\n const defaultConfiguration = this.parseConfigurationModel(data.defaults);\n const policyConfiguration = this.parseConfigurationModel(data.policy);\n const applicationConfiguration = this.parseConfigurationModel(data.application);\n const userConfiguration = this.parseConfigurationModel(data.user);\n const workspaceConfiguration = this.parseConfigurationModel(data.workspace);\n const folders = data.folders.reduce((result, value) => {\n result.set(_base_common_uri_js__WEBPACK_IMPORTED_MODULE_4__.URI.revive(value[0]), this.parseConfigurationModel(value[1]));\n return result;\n }, new _base_common_map_js__WEBPACK_IMPORTED_MODULE_1__.ResourceMap());\n return new Configuration(defaultConfiguration, policyConfiguration, applicationConfiguration, userConfiguration, new ConfigurationModel(), workspaceConfiguration, folders, new ConfigurationModel(), new _base_common_map_js__WEBPACK_IMPORTED_MODULE_1__.ResourceMap());\n }\n static parseConfigurationModel(model) {\n return new ConfigurationModel(model.contents, model.keys, model.overrides);\n }\n}\nclass ConfigurationChangeEvent {\n constructor(change, previous, currentConfiguraiton, currentWorkspace) {\n this.change = change;\n this.previous = previous;\n this.currentConfiguraiton = currentConfiguraiton;\n this.currentWorkspace = currentWorkspace;\n this._marker = '\\n';\n this._markerCode1 = this._marker.charCodeAt(0);\n this._markerCode2 = '.'.charCodeAt(0);\n this.affectedKeys = new Set();\n this._previousConfiguration = undefined;\n for (const key of change.keys) {\n this.affectedKeys.add(key);\n }\n for (const [, keys] of change.overrides) {\n for (const key of keys) {\n this.affectedKeys.add(key);\n }\n }\n // Example: '\\nfoo.bar\\nabc.def\\n'\n this._affectsConfigStr = this._marker;\n for (const key of this.affectedKeys) {\n this._affectsConfigStr += key + this._marker;\n }\n }\n get previousConfiguration() {\n if (!this._previousConfiguration && this.previous) {\n this._previousConfiguration = Configuration.parse(this.previous.data);\n }\n return this._previousConfiguration;\n }\n affectsConfiguration(section, overrides) {\n var _a;\n // we have one large string with all keys that have changed. we pad (marker) the section\n // and check that either find it padded or before a segment character\n const needle = this._marker + section;\n const idx = this._affectsConfigStr.indexOf(needle);\n if (idx < 0) {\n // NOT: (marker + section)\n return false;\n }\n const pos = idx + needle.length;\n if (pos >= this._affectsConfigStr.length) {\n return false;\n }\n const code = this._affectsConfigStr.charCodeAt(pos);\n if (code !== this._markerCode1 && code !== this._markerCode2) {\n // NOT: section + (marker | segment)\n return false;\n }\n if (overrides) {\n const value1 = this.previousConfiguration ? this.previousConfiguration.getValue(section, overrides, (_a = this.previous) === null || _a === void 0 ? void 0 : _a.workspace) : undefined;\n const value2 = this.currentConfiguraiton.getValue(section, overrides, this.currentWorkspace);\n return !_base_common_objects_js__WEBPACK_IMPORTED_MODULE_2__.equals(value1, value2);\n }\n return true;\n }\n}\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/platform/configuration/common/configurationModels.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/platform/configuration/common/configurationRegistry.js":
/*!**************************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/platform/configuration/common/configurationRegistry.js ***!
\**************************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ Extensions: () => (/* binding */ Extensions),\n/* harmony export */ OVERRIDE_PROPERTY_PATTERN: () => (/* binding */ OVERRIDE_PROPERTY_PATTERN),\n/* harmony export */ OVERRIDE_PROPERTY_REGEX: () => (/* binding */ OVERRIDE_PROPERTY_REGEX),\n/* harmony export */ allSettings: () => (/* binding */ allSettings),\n/* harmony export */ applicationSettings: () => (/* binding */ applicationSettings),\n/* harmony export */ getDefaultValue: () => (/* binding */ getDefaultValue),\n/* harmony export */ machineOverridableSettings: () => (/* binding */ machineOverridableSettings),\n/* harmony export */ machineSettings: () => (/* binding */ machineSettings),\n/* harmony export */ overrideIdentifiersFromKey: () => (/* binding */ overrideIdentifiersFromKey),\n/* harmony export */ resourceLanguageSettingsSchemaId: () => (/* binding */ resourceLanguageSettingsSchemaId),\n/* harmony export */ resourceSettings: () => (/* binding */ resourceSettings),\n/* harmony export */ validateProperty: () => (/* binding */ validateProperty),\n/* harmony export */ windowSettings: () => (/* binding */ windowSettings)\n/* harmony export */ });\n/* harmony import */ var _base_common_arrays_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../base/common/arrays.js */ \"./node_modules/monaco-editor/esm/vs/base/common/arrays.js\");\n/* harmony import */ var _base_common_event_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../base/common/event.js */ \"./node_modules/monaco-editor/esm/vs/base/common/event.js\");\n/* harmony import */ var _base_common_types_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../base/common/types.js */ \"./node_modules/monaco-editor/esm/vs/base/common/types.js\");\n/* harmony import */ var _nls_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../../nls.js */ \"./node_modules/monaco-editor/esm/vs/nls.js\");\n/* harmony import */ var _configuration_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./configuration.js */ \"./node_modules/monaco-editor/esm/vs/platform/configuration/common/configuration.js\");\n/* harmony import */ var _jsonschemas_common_jsonContributionRegistry_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../../jsonschemas/common/jsonContributionRegistry.js */ \"./node_modules/monaco-editor/esm/vs/platform/jsonschemas/common/jsonContributionRegistry.js\");\n/* harmony import */ var _registry_common_platform_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../../registry/common/platform.js */ \"./node_modules/monaco-editor/esm/vs/platform/registry/common/platform.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n\n\n\n\n\n\nconst Extensions = {\n Configuration: 'base.contributions.configuration'\n};\nconst allSettings = { properties: {}, patternProperties: {} };\nconst applicationSettings = { properties: {}, patternProperties: {} };\nconst machineSettings = { properties: {}, patternProperties: {} };\nconst machineOverridableSettings = { properties: {}, patternProperties: {} };\nconst windowSettings = { properties: {}, patternProperties: {} };\nconst resourceSettings = { properties: {}, patternProperties: {} };\nconst resourceLanguageSettingsSchemaId = 'vscode://schemas/settings/resourceLanguage';\nconst contributionRegistry = _registry_common_platform_js__WEBPACK_IMPORTED_MODULE_6__.Registry.as(_jsonschemas_common_jsonContributionRegistry_js__WEBPACK_IMPORTED_MODULE_5__.Extensions.JSONContribution);\nclass ConfigurationRegistry {\n constructor() {\n this.overrideIdentifiers = new Set();\n this._onDidSchemaChange = new _base_common_event_js__WEBPACK_IMPORTED_MODULE_1__.Emitter();\n this._onDidUpdateConfiguration = new _base_common_event_js__WEBPACK_IMPORTED_MODULE_1__.Emitter();\n this.configurationDefaultsOverrides = new Map();\n this.defaultLanguageConfigurationOverridesNode = {\n id: 'defaultOverrides',\n title: _nls_js__WEBPACK_IMPORTED_MODULE_3__.localize('defaultLanguageConfigurationOverrides.title', \"Default Language Configuration Overrides\"),\n properties: {}\n };\n this.configurationContributors = [this.defaultLanguageConfigurationOverridesNode];\n this.resourceLanguageSettingsSchema = {\n properties: {},\n patternProperties: {},\n additionalProperties: true,\n allowTrailingCommas: true,\n allowComments: true\n };\n this.configurationProperties = {};\n this.policyConfigurations = new Map();\n this.excludedConfigurationProperties = {};\n contributionRegistry.registerSchema(resourceLanguageSettingsSchemaId, this.resourceLanguageSettingsSchema);\n this.registerOverridePropertyPatternKey();\n }\n registerConfiguration(configuration, validate = true) {\n this.registerConfigurations([configuration], validate);\n }\n registerConfigurations(configurations, validate = true) {\n const properties = new Set();\n this.doRegisterConfigurations(configurations, validate, properties);\n contributionRegistry.registerSchema(resourceLanguageSettingsSchemaId, this.resourceLanguageSettingsSchema);\n this._onDidSchemaChange.fire();\n this._onDidUpdateConfiguration.fire({ properties });\n }\n registerDefaultConfigurations(configurationDefaults) {\n const properties = new Set();\n this.doRegisterDefaultConfigurations(configurationDefaults, properties);\n this._onDidSchemaChange.fire();\n this._onDidUpdateConfiguration.fire({ properties, defaultsOverrides: true });\n }\n doRegisterDefaultConfigurations(configurationDefaults, bucket) {\n var _a;\n const overrideIdentifiers = [];\n for (const { overrides, source } of configurationDefaults) {\n for (const key in overrides) {\n bucket.add(key);\n if (OVERRIDE_PROPERTY_REGEX.test(key)) {\n const configurationDefaultOverride = this.configurationDefaultsOverrides.get(key);\n const valuesSources = (_a = configurationDefaultOverride === null || configurationDefaultOverride === void 0 ? void 0 : configurationDefaultOverride.valuesSources) !== null && _a !== void 0 ? _a : new Map();\n if (source) {\n for (const configuration of Object.keys(overrides[key])) {\n valuesSources.set(configuration, source);\n }\n }\n const defaultValue = { ...((configurationDefaultOverride === null || configurationDefaultOverride === void 0 ? void 0 : configurationDefaultOverride.value) || {}), ...overrides[key] };\n this.configurationDefaultsOverrides.set(key, { source, value: defaultValue, valuesSources });\n const plainKey = (0,_configuration_js__WEBPACK_IMPORTED_MODULE_4__.getLanguageTagSettingPlainKey)(key);\n const property = {\n type: 'object',\n default: defaultValue,\n description: _nls_js__WEBPACK_IMPORTED_MODULE_3__.localize('defaultLanguageConfiguration.description', \"Configure settings to be overridden for the {0} language.\", plainKey),\n $ref: resourceLanguageSettingsSchemaId,\n defaultDefaultValue: defaultValue,\n source: _base_common_types_js__WEBPACK_IMPORTED_MODULE_2__.isString(source) ? undefined : source,\n defaultValueSource: source\n };\n overrideIdentifiers.push(...overrideIdentifiersFromKey(key));\n this.configurationProperties[key] = property;\n this.defaultLanguageConfigurationOverridesNode.properties[key] = property;\n }\n else {\n this.configurationDefaultsOverrides.set(key, { value: overrides[key], source });\n const property = this.configurationProperties[key];\n if (property) {\n this.updatePropertyDefaultValue(key, property);\n this.updateSchema(key, property);\n }\n }\n }\n }\n this.doRegisterOverrideIdentifiers(overrideIdentifiers);\n }\n registerOverrideIdentifiers(overrideIdentifiers) {\n this.doRegisterOverrideIdentifiers(overrideIdentifiers);\n this._onDidSchemaChange.fire();\n }\n doRegisterOverrideIdentifiers(overrideIdentifiers) {\n for (const overrideIdentifier of overrideIdentifiers) {\n this.overrideIdentifiers.add(overrideIdentifier);\n }\n this.updateOverridePropertyPatternKey();\n }\n doRegisterConfigurations(configurations, validate, bucket) {\n configurations.forEach(configuration => {\n this.validateAndRegisterProperties(configuration, validate, configuration.extensionInfo, configuration.restrictedProperties, undefined, bucket);\n this.configurationContributors.push(configuration);\n this.registerJSONConfiguration(configuration);\n });\n }\n validateAndRegisterProperties(configuration, validate = true, extensionInfo, restrictedProperties, scope = 3 /* ConfigurationScope.WINDOW */, bucket) {\n var _a;\n scope = _base_common_types_js__WEBPACK_IMPORTED_MODULE_2__.isUndefinedOrNull(configuration.scope) ? scope : configuration.scope;\n const properties = configuration.properties;\n if (properties) {\n for (const key in properties) {\n const property = properties[key];\n if (validate && validateProperty(key, property)) {\n delete properties[key];\n continue;\n }\n property.source = extensionInfo;\n // update default value\n property.defaultDefaultValue = properties[key].default;\n this.updatePropertyDefaultValue(key, property);\n // update scope\n if (OVERRIDE_PROPERTY_REGEX.test(key)) {\n property.scope = undefined; // No scope for overridable properties `[${identifier}]`\n }\n else {\n property.scope = _base_common_types_js__WEBPACK_IMPORTED_MODULE_2__.isUndefinedOrNull(property.scope) ? scope : property.scope;\n property.restricted = _base_common_types_js__WEBPACK_IMPORTED_MODULE_2__.isUndefinedOrNull(property.restricted) ? !!(restrictedProperties === null || restrictedProperties === void 0 ? void 0 : restrictedProperties.includes(key)) : property.restricted;\n }\n // Add to properties maps\n // Property is included by default if 'included' is unspecified\n if (properties[key].hasOwnProperty('included') && !properties[key].included) {\n this.excludedConfigurationProperties[key] = properties[key];\n delete properties[key];\n continue;\n }\n else {\n this.configurationProperties[key] = properties[key];\n if ((_a = properties[key].policy) === null || _a === void 0 ? void 0 : _a.name) {\n this.policyConfigurations.set(properties[key].policy.name, key);\n }\n }\n if (!properties[key].deprecationMessage && properties[key].markdownDeprecationMessage) {\n // If not set, default deprecationMessage to the markdown source\n properties[key].deprecationMessage = properties[key].markdownDeprecationMessage;\n }\n bucket.add(key);\n }\n }\n const subNodes = configuration.allOf;\n if (subNodes) {\n for (const node of subNodes) {\n this.validateAndRegisterProperties(node, validate, extensionInfo, restrictedProperties, scope, bucket);\n }\n }\n }\n getConfigurationProperties() {\n return this.configurationProperties;\n }\n getPolicyConfigurations() {\n return this.policyConfigurations;\n }\n registerJSONConfiguration(configuration) {\n const register = (configuration) => {\n const properties = configuration.properties;\n if (properties) {\n for (const key in properties) {\n this.updateSchema(key, properties[key]);\n }\n }\n const subNodes = configuration.allOf;\n subNodes === null || subNodes === void 0 ? void 0 : subNodes.forEach(register);\n };\n register(configuration);\n }\n updateSchema(key, property) {\n allSettings.properties[key] = property;\n switch (property.scope) {\n case 1 /* ConfigurationScope.APPLICATION */:\n applicationSettings.properties[key] = property;\n break;\n case 2 /* ConfigurationScope.MACHINE */:\n machineSettings.properties[key] = property;\n break;\n case 6 /* ConfigurationScope.MACHINE_OVERRIDABLE */:\n machineOverridableSettings.properties[key] = property;\n break;\n case 3 /* ConfigurationScope.WINDOW */:\n windowSettings.properties[key] = property;\n break;\n case 4 /* ConfigurationScope.RESOURCE */:\n resourceSettings.properties[key] = property;\n break;\n case 5 /* ConfigurationScope.LANGUAGE_OVERRIDABLE */:\n resourceSettings.properties[key] = property;\n this.resourceLanguageSettingsSchema.properties[key] = property;\n break;\n }\n }\n updateOverridePropertyPatternKey() {\n for (const overrideIdentifier of this.overrideIdentifiers.values()) {\n const overrideIdentifierProperty = `[${overrideIdentifier}]`;\n const resourceLanguagePropertiesSchema = {\n type: 'object',\n description: _nls_js__WEBPACK_IMPORTED_MODULE_3__.localize('overrideSettings.defaultDescription', \"Configure editor settings to be overridden for a language.\"),\n errorMessage: _nls_js__WEBPACK_IMPORTED_MODULE_3__.localize('overrideSettings.errorMessage', \"This setting does not support per-language configuration.\"),\n $ref: resourceLanguageSettingsSchemaId,\n };\n this.updatePropertyDefaultValue(overrideIdentifierProperty, resourceLanguagePropertiesSchema);\n allSettings.properties[overrideIdentifierProperty] = resourceLanguagePropertiesSchema;\n applicationSettings.properties[overrideIdentifierProperty] = resourceLanguagePropertiesSchema;\n machineSettings.properties[overrideIdentifierProperty] = resourceLanguagePropertiesSchema;\n machineOverridableSettings.properties[overrideIdentifierProperty] = resourceLanguagePropertiesSchema;\n windowSettings.properties[overrideIdentifierProperty] = resourceLanguagePropertiesSchema;\n resourceSettings.properties[overrideIdentifierProperty] = resourceLanguagePropertiesSchema;\n }\n }\n registerOverridePropertyPatternKey() {\n const resourceLanguagePropertiesSchema = {\n type: 'object',\n description: _nls_js__WEBPACK_IMPORTED_MODULE_3__.localize('overrideSettings.defaultDescription', \"Configure editor settings to be overridden for a language.\"),\n errorMessage: _nls_js__WEBPACK_IMPORTED_MODULE_3__.localize('overrideSettings.errorMessage', \"This setting does not support per-language configuration.\"),\n $ref: resourceLanguageSettingsSchemaId,\n };\n allSettings.patternProperties[OVERRIDE_PROPERTY_PATTERN] = resourceLanguagePropertiesSchema;\n applicationSettings.patternProperties[OVERRIDE_PROPERTY_PATTERN] = resourceLanguagePropertiesSchema;\n machineSettings.patternProperties[OVERRIDE_PROPERTY_PATTERN] = resourceLanguagePropertiesSchema;\n machineOverridableSettings.patternProperties[OVERRIDE_PROPERTY_PATTERN] = resourceLanguagePropertiesSchema;\n windowSettings.patternProperties[OVERRIDE_PROPERTY_PATTERN] = resourceLanguagePropertiesSchema;\n resourceSettings.patternProperties[OVERRIDE_PROPERTY_PATTERN] = resourceLanguagePropertiesSchema;\n this._onDidSchemaChange.fire();\n }\n updatePropertyDefaultValue(key, property) {\n const configurationdefaultOverride = this.configurationDefaultsOverrides.get(key);\n let defaultValue = configurationdefaultOverride === null || configurationdefaultOverride === void 0 ? void 0 : configurationdefaultOverride.value;\n let defaultSource = configurationdefaultOverride === null || configurationdefaultOverride === void 0 ? void 0 : configurationdefaultOverride.source;\n if (_base_common_types_js__WEBPACK_IMPORTED_MODULE_2__.isUndefined(defaultValue)) {\n defaultValue = property.defaultDefaultValue;\n defaultSource = undefined;\n }\n if (_base_common_types_js__WEBPACK_IMPORTED_MODULE_2__.isUndefined(defaultValue)) {\n defaultValue = getDefaultValue(property.type);\n }\n property.default = defaultValue;\n property.defaultValueSource = defaultSource;\n }\n}\nconst OVERRIDE_IDENTIFIER_PATTERN = `\\\\[([^\\\\]]+)\\\\]`;\nconst OVERRIDE_IDENTIFIER_REGEX = new RegExp(OVERRIDE_IDENTIFIER_PATTERN, 'g');\nconst OVERRIDE_PROPERTY_PATTERN = `^(${OVERRIDE_IDENTIFIER_PATTERN})+$`;\nconst OVERRIDE_PROPERTY_REGEX = new RegExp(OVERRIDE_PROPERTY_PATTERN);\nfunction overrideIdentifiersFromKey(key) {\n const identifiers = [];\n if (OVERRIDE_PROPERTY_REGEX.test(key)) {\n let matches = OVERRIDE_IDENTIFIER_REGEX.exec(key);\n while (matches === null || matches === void 0 ? void 0 : matches.length) {\n const identifier = matches[1].trim();\n if (identifier) {\n identifiers.push(identifier);\n }\n matches = OVERRIDE_IDENTIFIER_REGEX.exec(key);\n }\n }\n return (0,_base_common_arrays_js__WEBPACK_IMPORTED_MODULE_0__.distinct)(identifiers);\n}\nfunction getDefaultValue(type) {\n const t = Array.isArray(type) ? type[0] : type;\n switch (t) {\n case 'boolean':\n return false;\n case 'integer':\n case 'number':\n return 0;\n case 'string':\n return '';\n case 'array':\n return [];\n case 'object':\n return {};\n default:\n return null;\n }\n}\nconst configurationRegistry = new ConfigurationRegistry();\n_registry_common_platform_js__WEBPACK_IMPORTED_MODULE_6__.Registry.add(Extensions.Configuration, configurationRegistry);\nfunction validateProperty(property, schema) {\n var _a, _b, _c, _d;\n if (!property.trim()) {\n return _nls_js__WEBPACK_IMPORTED_MODULE_3__.localize('config.property.empty', \"Cannot register an empty property\");\n }\n if (OVERRIDE_PROPERTY_REGEX.test(property)) {\n return _nls_js__WEBPACK_IMPORTED_MODULE_3__.localize('config.property.languageDefault', \"Cannot register '{0}'. This matches property pattern '\\\\\\\\[.*\\\\\\\\]$' for describing language specific editor settings. Use 'configurationDefaults' contribution.\", property);\n }\n if (configurationRegistry.getConfigurationProperties()[property] !== undefined) {\n return _nls_js__WEBPACK_IMPORTED_MODULE_3__.localize('config.property.duplicate', \"Cannot register '{0}'. This property is already registered.\", property);\n }\n if (((_a = schema.policy) === null || _a === void 0 ? void 0 : _a.name) && configurationRegistry.getPolicyConfigurations().get((_b = schema.policy) === null || _b === void 0 ? void 0 : _b.name) !== undefined) {\n return _nls_js__WEBPACK_IMPORTED_MODULE_3__.localize('config.policy.duplicate', \"Cannot register '{0}'. The associated policy {1} is already registered with {2}.\", property, (_c = schema.policy) === null || _c === void 0 ? void 0 : _c.name, configurationRegistry.getPolicyConfigurations().get((_d = schema.policy) === null || _d === void 0 ? void 0 : _d.name));\n }\n return null;\n}\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/platform/configuration/common/configurationRegistry.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/platform/configuration/common/configurations.js":
/*!*******************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/platform/configuration/common/configurations.js ***!
\*******************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ DefaultConfiguration: () => (/* binding */ DefaultConfiguration)\n/* harmony export */ });\n/* harmony import */ var _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../base/common/lifecycle.js */ \"./node_modules/monaco-editor/esm/vs/base/common/lifecycle.js\");\n/* harmony import */ var _configurationModels_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./configurationModels.js */ \"./node_modules/monaco-editor/esm/vs/platform/configuration/common/configurationModels.js\");\n/* harmony import */ var _configurationRegistry_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./configurationRegistry.js */ \"./node_modules/monaco-editor/esm/vs/platform/configuration/common/configurationRegistry.js\");\n/* harmony import */ var _registry_common_platform_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../registry/common/platform.js */ \"./node_modules/monaco-editor/esm/vs/platform/registry/common/platform.js\");\n\n\n\n\nclass DefaultConfiguration extends _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_0__.Disposable {\n constructor() {\n super(...arguments);\n this._configurationModel = new _configurationModels_js__WEBPACK_IMPORTED_MODULE_1__.ConfigurationModel();\n }\n get configurationModel() {\n return this._configurationModel;\n }\n reload() {\n this.resetConfigurationModel();\n return this.configurationModel;\n }\n getConfigurationDefaultOverrides() {\n return {};\n }\n resetConfigurationModel() {\n this._configurationModel = new _configurationModels_js__WEBPACK_IMPORTED_MODULE_1__.ConfigurationModel();\n const properties = _registry_common_platform_js__WEBPACK_IMPORTED_MODULE_3__.Registry.as(_configurationRegistry_js__WEBPACK_IMPORTED_MODULE_2__.Extensions.Configuration).getConfigurationProperties();\n this.updateConfigurationModel(Object.keys(properties), properties);\n }\n updateConfigurationModel(properties, configurationProperties) {\n const configurationDefaultsOverrides = this.getConfigurationDefaultOverrides();\n for (const key of properties) {\n const defaultOverrideValue = configurationDefaultsOverrides[key];\n const propertySchema = configurationProperties[key];\n if (defaultOverrideValue !== undefined) {\n this._configurationModel.addValue(key, defaultOverrideValue);\n }\n else if (propertySchema) {\n this._configurationModel.addValue(key, propertySchema.default);\n }\n else {\n this._configurationModel.removeValue(key);\n }\n }\n }\n}\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/platform/configuration/common/configurations.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/platform/contextkey/browser/contextKeyService.js":
/*!********************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/platform/contextkey/browser/contextKeyService.js ***!
\********************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ AbstractContextKeyService: () => (/* binding */ AbstractContextKeyService),\n/* harmony export */ Context: () => (/* binding */ Context),\n/* harmony export */ ContextKeyService: () => (/* binding */ ContextKeyService),\n/* harmony export */ setContext: () => (/* binding */ setContext)\n/* harmony export */ });\n/* harmony import */ var _base_common_event_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../base/common/event.js */ \"./node_modules/monaco-editor/esm/vs/base/common/event.js\");\n/* harmony import */ var _base_common_iterator_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../base/common/iterator.js */ \"./node_modules/monaco-editor/esm/vs/base/common/iterator.js\");\n/* harmony import */ var _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../base/common/lifecycle.js */ \"./node_modules/monaco-editor/esm/vs/base/common/lifecycle.js\");\n/* harmony import */ var _base_common_objects_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../../base/common/objects.js */ \"./node_modules/monaco-editor/esm/vs/base/common/objects.js\");\n/* harmony import */ var _base_common_ternarySearchTree_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../../base/common/ternarySearchTree.js */ \"./node_modules/monaco-editor/esm/vs/base/common/ternarySearchTree.js\");\n/* harmony import */ var _base_common_uri_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../../../base/common/uri.js */ \"./node_modules/monaco-editor/esm/vs/base/common/uri.js\");\n/* harmony import */ var _nls_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../../../nls.js */ \"./node_modules/monaco-editor/esm/vs/nls.js\");\n/* harmony import */ var _commands_common_commands_js__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ../../commands/common/commands.js */ \"./node_modules/monaco-editor/esm/vs/platform/commands/common/commands.js\");\n/* harmony import */ var _configuration_common_configuration_js__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ../../configuration/common/configuration.js */ \"./node_modules/monaco-editor/esm/vs/platform/configuration/common/configuration.js\");\n/* harmony import */ var _common_contextkey_js__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ../common/contextkey.js */ \"./node_modules/monaco-editor/esm/vs/platform/contextkey/common/contextkey.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\nvar __decorate = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\n return c > 3 && r && Object.defineProperty(target, key, r), r;\n};\nvar __param = (undefined && undefined.__param) || function (paramIndex, decorator) {\n return function (target, key) { decorator(target, key, paramIndex); }\n};\n\n\n\n\n\n\n\n\n\n\nconst KEYBINDING_CONTEXT_ATTR = 'data-keybinding-context';\nclass Context {\n constructor(id, parent) {\n this._id = id;\n this._parent = parent;\n this._value = Object.create(null);\n this._value['_contextId'] = id;\n }\n get value() {\n return { ...this._value };\n }\n setValue(key, value) {\n // console.log('SET ' + key + ' = ' + value + ' ON ' + this._id);\n if (this._value[key] !== value) {\n this._value[key] = value;\n return true;\n }\n return false;\n }\n removeValue(key) {\n // console.log('REMOVE ' + key + ' FROM ' + this._id);\n if (key in this._value) {\n delete this._value[key];\n return true;\n }\n return false;\n }\n getValue(key) {\n const ret = this._value[key];\n if (typeof ret === 'undefined' && this._parent) {\n return this._parent.getValue(key);\n }\n return ret;\n }\n}\nclass NullContext extends Context {\n constructor() {\n super(-1, null);\n }\n setValue(key, value) {\n return false;\n }\n removeValue(key) {\n return false;\n }\n getValue(key) {\n return undefined;\n }\n}\nNullContext.INSTANCE = new NullContext();\nclass ConfigAwareContextValuesContainer extends Context {\n constructor(id, _configurationService, emitter) {\n super(id, null);\n this._configurationService = _configurationService;\n this._values = _base_common_ternarySearchTree_js__WEBPACK_IMPORTED_MODULE_4__.TernarySearchTree.forConfigKeys();\n this._listener = this._configurationService.onDidChangeConfiguration(event => {\n if (event.source === 7 /* ConfigurationTarget.DEFAULT */) {\n // new setting, reset everything\n const allKeys = Array.from(this._values, ([k]) => k);\n this._values.clear();\n emitter.fire(new ArrayContextKeyChangeEvent(allKeys));\n }\n else {\n const changedKeys = [];\n for (const configKey of event.affectedKeys) {\n const contextKey = `config.${configKey}`;\n const cachedItems = this._values.findSuperstr(contextKey);\n if (cachedItems !== undefined) {\n changedKeys.push(..._base_common_iterator_js__WEBPACK_IMPORTED_MODULE_1__.Iterable.map(cachedItems, ([key]) => key));\n this._values.deleteSuperstr(contextKey);\n }\n if (this._values.has(contextKey)) {\n changedKeys.push(contextKey);\n this._values.delete(contextKey);\n }\n }\n emitter.fire(new ArrayContextKeyChangeEvent(changedKeys));\n }\n });\n }\n dispose() {\n this._listener.dispose();\n }\n getValue(key) {\n if (key.indexOf(ConfigAwareContextValuesContainer._keyPrefix) !== 0) {\n return super.getValue(key);\n }\n if (this._values.has(key)) {\n return this._values.get(key);\n }\n const configKey = key.substr(ConfigAwareContextValuesContainer._keyPrefix.length);\n const configValue = this._configurationService.getValue(configKey);\n let value = undefined;\n switch (typeof configValue) {\n case 'number':\n case 'boolean':\n case 'string':\n value = configValue;\n break;\n default:\n if (Array.isArray(configValue)) {\n value = JSON.stringify(configValue);\n }\n else {\n value = configValue;\n }\n }\n this._values.set(key, value);\n return value;\n }\n setValue(key, value) {\n return super.setValue(key, value);\n }\n removeValue(key) {\n return super.removeValue(key);\n }\n}\nConfigAwareContextValuesContainer._keyPrefix = 'config.';\nclass ContextKey {\n constructor(service, key, defaultValue) {\n this._service = service;\n this._key = key;\n this._defaultValue = defaultValue;\n this.reset();\n }\n set(value) {\n this._service.setContext(this._key, value);\n }\n reset() {\n if (typeof this._defaultValue === 'undefined') {\n this._service.removeContext(this._key);\n }\n else {\n this._service.setContext(this._key, this._defaultValue);\n }\n }\n get() {\n return this._service.getContextKeyValue(this._key);\n }\n}\nclass SimpleContextKeyChangeEvent {\n constructor(key) {\n this.key = key;\n }\n affectsSome(keys) {\n return keys.has(this.key);\n }\n allKeysContainedIn(keys) {\n return this.affectsSome(keys);\n }\n}\nclass ArrayContextKeyChangeEvent {\n constructor(keys) {\n this.keys = keys;\n }\n affectsSome(keys) {\n for (const key of this.keys) {\n if (keys.has(key)) {\n return true;\n }\n }\n return false;\n }\n allKeysContainedIn(keys) {\n return this.keys.every(key => keys.has(key));\n }\n}\nclass CompositeContextKeyChangeEvent {\n constructor(events) {\n this.events = events;\n }\n affectsSome(keys) {\n for (const e of this.events) {\n if (e.affectsSome(keys)) {\n return true;\n }\n }\n return false;\n }\n allKeysContainedIn(keys) {\n return this.events.every(evt => evt.allKeysContainedIn(keys));\n }\n}\nfunction allEventKeysInContext(event, context) {\n return event.allKeysContainedIn(new Set(Object.keys(context)));\n}\nclass AbstractContextKeyService extends _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_2__.Disposable {\n constructor(myContextId) {\n super();\n this._onDidChangeContext = this._register(new _base_common_event_js__WEBPACK_IMPORTED_MODULE_0__.PauseableEmitter({ merge: input => new CompositeContextKeyChangeEvent(input) }));\n this.onDidChangeContext = this._onDidChangeContext.event;\n this._isDisposed = false;\n this._myContextId = myContextId;\n }\n createKey(key, defaultValue) {\n if (this._isDisposed) {\n throw new Error(`AbstractContextKeyService has been disposed`);\n }\n return new ContextKey(this, key, defaultValue);\n }\n bufferChangeEvents(callback) {\n this._onDidChangeContext.pause();\n try {\n callback();\n }\n finally {\n this._onDidChangeContext.resume();\n }\n }\n createScoped(domNode) {\n if (this._isDisposed) {\n throw new Error(`AbstractContextKeyService has been disposed`);\n }\n return new ScopedContextKeyService(this, domNode);\n }\n contextMatchesRules(rules) {\n if (this._isDisposed) {\n throw new Error(`AbstractContextKeyService has been disposed`);\n }\n const context = this.getContextValuesContainer(this._myContextId);\n const result = (rules ? rules.evaluate(context) : true);\n // console.group(rules.serialize() + ' -> ' + result);\n // rules.keys().forEach(key => { console.log(key, ctx[key]); });\n // console.groupEnd();\n return result;\n }\n getContextKeyValue(key) {\n if (this._isDisposed) {\n return undefined;\n }\n return this.getContextValuesContainer(this._myContextId).getValue(key);\n }\n setContext(key, value) {\n if (this._isDisposed) {\n return;\n }\n const myContext = this.getContextValuesContainer(this._myContextId);\n if (!myContext) {\n return;\n }\n if (myContext.setValue(key, value)) {\n this._onDidChangeContext.fire(new SimpleContextKeyChangeEvent(key));\n }\n }\n removeContext(key) {\n if (this._isDisposed) {\n return;\n }\n if (this.getContextValuesContainer(this._myContextId).removeValue(key)) {\n this._onDidChangeContext.fire(new SimpleContextKeyChangeEvent(key));\n }\n }\n getContext(target) {\n if (this._isDisposed) {\n return NullContext.INSTANCE;\n }\n return this.getContextValuesContainer(findContextAttr(target));\n }\n dispose() {\n super.dispose();\n this._isDisposed = true;\n }\n}\nlet ContextKeyService = class ContextKeyService extends AbstractContextKeyService {\n constructor(configurationService) {\n super(0);\n this._contexts = new Map();\n this._lastContextId = 0;\n const myContext = this._register(new ConfigAwareContextValuesContainer(this._myContextId, configurationService, this._onDidChangeContext));\n this._contexts.set(this._myContextId, myContext);\n // Uncomment this to see the contexts continuously logged\n // let lastLoggedValue: string | null = null;\n // setInterval(() => {\n // \tlet values = Object.keys(this._contexts).map((key) => this._contexts[key]);\n // \tlet logValue = values.map(v => JSON.stringify(v._value, null, '\\t')).join('\\n');\n // \tif (lastLoggedValue !== logValue) {\n // \t\tlastLoggedValue = logValue;\n // \t\tconsole.log(lastLoggedValue);\n // \t}\n // }, 2000);\n }\n getContextValuesContainer(contextId) {\n if (this._isDisposed) {\n return NullContext.INSTANCE;\n }\n return this._contexts.get(contextId) || NullContext.INSTANCE;\n }\n createChildContext(parentContextId = this._myContextId) {\n if (this._isDisposed) {\n throw new Error(`ContextKeyService has been disposed`);\n }\n const id = (++this._lastContextId);\n this._contexts.set(id, new Context(id, this.getContextValuesContainer(parentContextId)));\n return id;\n }\n disposeContext(contextId) {\n if (!this._isDisposed) {\n this._contexts.delete(contextId);\n }\n }\n};\nContextKeyService = __decorate([\n __param(0, _configuration_common_configuration_js__WEBPACK_IMPORTED_MODULE_8__.IConfigurationService)\n], ContextKeyService);\n\nclass ScopedContextKeyService extends AbstractContextKeyService {\n constructor(parent, domNode) {\n super(parent.createChildContext());\n this._parentChangeListener = this._register(new _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_2__.MutableDisposable());\n this._parent = parent;\n this._updateParentChangeListener();\n this._domNode = domNode;\n if (this._domNode.hasAttribute(KEYBINDING_CONTEXT_ATTR)) {\n let extraInfo = '';\n if (this._domNode.classList) {\n extraInfo = Array.from(this._domNode.classList.values()).join(', ');\n }\n console.error(`Element already has context attribute${extraInfo ? ': ' + extraInfo : ''}`);\n }\n this._domNode.setAttribute(KEYBINDING_CONTEXT_ATTR, String(this._myContextId));\n }\n _updateParentChangeListener() {\n // Forward parent events to this listener. Parent will change.\n this._parentChangeListener.value = this._parent.onDidChangeContext(e => {\n const thisContainer = this._parent.getContextValuesContainer(this._myContextId);\n const thisContextValues = thisContainer.value;\n if (!allEventKeysInContext(e, thisContextValues)) {\n this._onDidChangeContext.fire(e);\n }\n });\n }\n dispose() {\n if (this._isDisposed) {\n return;\n }\n this._parent.disposeContext(this._myContextId);\n this._domNode.removeAttribute(KEYBINDING_CONTEXT_ATTR);\n super.dispose();\n }\n getContextValuesContainer(contextId) {\n if (this._isDisposed) {\n return NullContext.INSTANCE;\n }\n return this._parent.getContextValuesContainer(contextId);\n }\n createChildContext(parentContextId = this._myContextId) {\n if (this._isDisposed) {\n throw new Error(`ScopedContextKeyService has been disposed`);\n }\n return this._parent.createChildContext(parentContextId);\n }\n disposeContext(contextId) {\n if (this._isDisposed) {\n return;\n }\n this._parent.disposeContext(contextId);\n }\n}\nfunction findContextAttr(domNode) {\n while (domNode) {\n if (domNode.hasAttribute(KEYBINDING_CONTEXT_ATTR)) {\n const attr = domNode.getAttribute(KEYBINDING_CONTEXT_ATTR);\n if (attr) {\n return parseInt(attr, 10);\n }\n return NaN;\n }\n domNode = domNode.parentElement;\n }\n return 0;\n}\nfunction setContext(accessor, contextKey, contextValue) {\n const contextKeyService = accessor.get(_common_contextkey_js__WEBPACK_IMPORTED_MODULE_9__.IContextKeyService);\n contextKeyService.createKey(String(contextKey), stringifyURIs(contextValue));\n}\nfunction stringifyURIs(contextValue) {\n return (0,_base_common_objects_js__WEBPACK_IMPORTED_MODULE_3__.cloneAndChange)(contextValue, (obj) => {\n if (typeof obj === 'object' && obj.$mid === 1 /* MarshalledId.Uri */) {\n return _base_common_uri_js__WEBPACK_IMPORTED_MODULE_5__.URI.revive(obj).toString();\n }\n if (obj instanceof _base_common_uri_js__WEBPACK_IMPORTED_MODULE_5__.URI) {\n return obj.toString();\n }\n return undefined;\n });\n}\n_commands_common_commands_js__WEBPACK_IMPORTED_MODULE_7__.CommandsRegistry.registerCommand('_setContext', setContext);\n_commands_common_commands_js__WEBPACK_IMPORTED_MODULE_7__.CommandsRegistry.registerCommand({\n id: 'getContextKeyInfo',\n handler() {\n return [..._common_contextkey_js__WEBPACK_IMPORTED_MODULE_9__.RawContextKey.all()].sort((a, b) => a.key.localeCompare(b.key));\n },\n metadata: {\n description: (0,_nls_js__WEBPACK_IMPORTED_MODULE_6__.localize)('getContextKeyInfo', \"A command that returns information about context keys\"),\n args: []\n }\n});\n_commands_common_commands_js__WEBPACK_IMPORTED_MODULE_7__.CommandsRegistry.registerCommand('_generateContextKeyInfo', function () {\n const result = [];\n const seen = new Set();\n for (const info of _common_contextkey_js__WEBPACK_IMPORTED_MODULE_9__.RawContextKey.all()) {\n if (!seen.has(info.key)) {\n seen.add(info.key);\n result.push(info);\n }\n }\n result.sort((a, b) => a.key.localeCompare(b.key));\n console.log(JSON.stringify(result, undefined, 2));\n});\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/platform/contextkey/browser/contextKeyService.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/platform/contextkey/common/contextkey.js":
/*!************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/platform/contextkey/common/contextkey.js ***!
\************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ ContextKeyAndExpr: () => (/* binding */ ContextKeyAndExpr),\n/* harmony export */ ContextKeyDefinedExpr: () => (/* binding */ ContextKeyDefinedExpr),\n/* harmony export */ ContextKeyEqualsExpr: () => (/* binding */ ContextKeyEqualsExpr),\n/* harmony export */ ContextKeyExpr: () => (/* binding */ ContextKeyExpr),\n/* harmony export */ ContextKeyFalseExpr: () => (/* binding */ ContextKeyFalseExpr),\n/* harmony export */ ContextKeyGreaterEqualsExpr: () => (/* binding */ ContextKeyGreaterEqualsExpr),\n/* harmony export */ ContextKeyGreaterExpr: () => (/* binding */ ContextKeyGreaterExpr),\n/* harmony export */ ContextKeyInExpr: () => (/* binding */ ContextKeyInExpr),\n/* harmony export */ ContextKeyNotEqualsExpr: () => (/* binding */ ContextKeyNotEqualsExpr),\n/* harmony export */ ContextKeyNotExpr: () => (/* binding */ ContextKeyNotExpr),\n/* harmony export */ ContextKeyNotInExpr: () => (/* binding */ ContextKeyNotInExpr),\n/* harmony export */ ContextKeyNotRegexExpr: () => (/* binding */ ContextKeyNotRegexExpr),\n/* harmony export */ ContextKeyOrExpr: () => (/* binding */ ContextKeyOrExpr),\n/* harmony export */ ContextKeyRegexExpr: () => (/* binding */ ContextKeyRegexExpr),\n/* harmony export */ ContextKeySmallerEqualsExpr: () => (/* binding */ ContextKeySmallerEqualsExpr),\n/* harmony export */ ContextKeySmallerExpr: () => (/* binding */ ContextKeySmallerExpr),\n/* harmony export */ ContextKeyTrueExpr: () => (/* binding */ ContextKeyTrueExpr),\n/* harmony export */ IContextKeyService: () => (/* binding */ IContextKeyService),\n/* harmony export */ Parser: () => (/* binding */ Parser),\n/* harmony export */ RawContextKey: () => (/* binding */ RawContextKey),\n/* harmony export */ expressionsAreEqualWithConstantSubstitution: () => (/* binding */ expressionsAreEqualWithConstantSubstitution),\n/* harmony export */ implies: () => (/* binding */ implies)\n/* harmony export */ });\n/* harmony import */ var _base_common_platform_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../base/common/platform.js */ \"./node_modules/monaco-editor/esm/vs/base/common/platform.js\");\n/* harmony import */ var _base_common_strings_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../base/common/strings.js */ \"./node_modules/monaco-editor/esm/vs/base/common/strings.js\");\n/* harmony import */ var _scanner_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./scanner.js */ \"./node_modules/monaco-editor/esm/vs/platform/contextkey/common/scanner.js\");\n/* harmony import */ var _instantiation_common_instantiation_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../instantiation/common/instantiation.js */ \"./node_modules/monaco-editor/esm/vs/platform/instantiation/common/instantiation.js\");\n/* harmony import */ var _nls_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../../nls.js */ \"./node_modules/monaco-editor/esm/vs/nls.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n\n\n\n\nconst CONSTANT_VALUES = new Map();\nCONSTANT_VALUES.set('false', false);\nCONSTANT_VALUES.set('true', true);\nCONSTANT_VALUES.set('isMac', _base_common_platform_js__WEBPACK_IMPORTED_MODULE_0__.isMacintosh);\nCONSTANT_VALUES.set('isLinux', _base_common_platform_js__WEBPACK_IMPORTED_MODULE_0__.isLinux);\nCONSTANT_VALUES.set('isWindows', _base_common_platform_js__WEBPACK_IMPORTED_MODULE_0__.isWindows);\nCONSTANT_VALUES.set('isWeb', _base_common_platform_js__WEBPACK_IMPORTED_MODULE_0__.isWeb);\nCONSTANT_VALUES.set('isMacNative', _base_common_platform_js__WEBPACK_IMPORTED_MODULE_0__.isMacintosh && !_base_common_platform_js__WEBPACK_IMPORTED_MODULE_0__.isWeb);\nCONSTANT_VALUES.set('isEdge', _base_common_platform_js__WEBPACK_IMPORTED_MODULE_0__.isEdge);\nCONSTANT_VALUES.set('isFirefox', _base_common_platform_js__WEBPACK_IMPORTED_MODULE_0__.isFirefox);\nCONSTANT_VALUES.set('isChrome', _base_common_platform_js__WEBPACK_IMPORTED_MODULE_0__.isChrome);\nCONSTANT_VALUES.set('isSafari', _base_common_platform_js__WEBPACK_IMPORTED_MODULE_0__.isSafari);\nconst hasOwnProperty = Object.prototype.hasOwnProperty;\nconst defaultConfig = {\n regexParsingWithErrorRecovery: true\n};\nconst errorEmptyString = (0,_nls_js__WEBPACK_IMPORTED_MODULE_4__.localize)('contextkey.parser.error.emptyString', \"Empty context key expression\");\nconst hintEmptyString = (0,_nls_js__WEBPACK_IMPORTED_MODULE_4__.localize)('contextkey.parser.error.emptyString.hint', \"Did you forget to write an expression? You can also put 'false' or 'true' to always evaluate to false or true, respectively.\");\nconst errorNoInAfterNot = (0,_nls_js__WEBPACK_IMPORTED_MODULE_4__.localize)('contextkey.parser.error.noInAfterNot', \"'in' after 'not'.\");\nconst errorClosingParenthesis = (0,_nls_js__WEBPACK_IMPORTED_MODULE_4__.localize)('contextkey.parser.error.closingParenthesis', \"closing parenthesis ')'\");\nconst errorUnexpectedToken = (0,_nls_js__WEBPACK_IMPORTED_MODULE_4__.localize)('contextkey.parser.error.unexpectedToken', \"Unexpected token\");\nconst hintUnexpectedToken = (0,_nls_js__WEBPACK_IMPORTED_MODULE_4__.localize)('contextkey.parser.error.unexpectedToken.hint', \"Did you forget to put && or || before the token?\");\nconst errorUnexpectedEOF = (0,_nls_js__WEBPACK_IMPORTED_MODULE_4__.localize)('contextkey.parser.error.unexpectedEOF', \"Unexpected end of expression\");\nconst hintUnexpectedEOF = (0,_nls_js__WEBPACK_IMPORTED_MODULE_4__.localize)('contextkey.parser.error.unexpectedEOF.hint', \"Did you forget to put a context key?\");\n/**\n * A parser for context key expressions.\n *\n * Example:\n * ```ts\n * const parser = new Parser();\n * const expr = parser.parse('foo == \"bar\" && baz == true');\n *\n * if (expr === undefined) {\n * \t// there were lexing or parsing errors\n * \t// process lexing errors with `parser.lexingErrors`\n * // process parsing errors with `parser.parsingErrors`\n * } else {\n * \t// expr is a valid expression\n * }\n * ```\n */\nclass Parser {\n constructor(_config = defaultConfig) {\n this._config = _config;\n // lifetime note: `_scanner` lives as long as the parser does, i.e., is not reset between calls to `parse`\n this._scanner = new _scanner_js__WEBPACK_IMPORTED_MODULE_2__.Scanner();\n // lifetime note: `_tokens`, `_current`, and `_parsingErrors` must be reset between calls to `parse`\n this._tokens = [];\n this._current = 0; // invariant: 0 <= this._current < this._tokens.length ; any incrementation of this value must first call `_isAtEnd`\n this._parsingErrors = [];\n this._flagsGYRe = /g|y/g;\n }\n /**\n * Parse a context key expression.\n *\n * @param input the expression to parse\n * @returns the parsed expression or `undefined` if there's an error - call `lexingErrors` and `parsingErrors` to see the errors\n */\n parse(input) {\n if (input === '') {\n this._parsingErrors.push({ message: errorEmptyString, offset: 0, lexeme: '', additionalInfo: hintEmptyString });\n return undefined;\n }\n this._tokens = this._scanner.reset(input).scan();\n // @ulugbekna: we do not stop parsing if there are lexing errors to be able to reconstruct regexes with unescaped slashes; TODO@ulugbekna: make this respect config option for recovery\n this._current = 0;\n this._parsingErrors = [];\n try {\n const expr = this._expr();\n if (!this._isAtEnd()) {\n const peek = this._peek();\n const additionalInfo = peek.type === 17 /* TokenType.Str */ ? hintUnexpectedToken : undefined;\n this._parsingErrors.push({ message: errorUnexpectedToken, offset: peek.offset, lexeme: _scanner_js__WEBPACK_IMPORTED_MODULE_2__.Scanner.getLexeme(peek), additionalInfo });\n throw Parser._parseError;\n }\n return expr;\n }\n catch (e) {\n if (!(e === Parser._parseError)) {\n throw e;\n }\n return undefined;\n }\n }\n _expr() {\n return this._or();\n }\n _or() {\n const expr = [this._and()];\n while (this._matchOne(16 /* TokenType.Or */)) {\n const right = this._and();\n expr.push(right);\n }\n return expr.length === 1 ? expr[0] : ContextKeyExpr.or(...expr);\n }\n _and() {\n const expr = [this._term()];\n while (this._matchOne(15 /* TokenType.And */)) {\n const right = this._term();\n expr.push(right);\n }\n return expr.length === 1 ? expr[0] : ContextKeyExpr.and(...expr);\n }\n _term() {\n if (this._matchOne(2 /* TokenType.Neg */)) {\n const peek = this._peek();\n switch (peek.type) {\n case 11 /* TokenType.True */:\n this._advance();\n return ContextKeyFalseExpr.INSTANCE;\n case 12 /* TokenType.False */:\n this._advance();\n return ContextKeyTrueExpr.INSTANCE;\n case 0 /* TokenType.LParen */: {\n this._advance();\n const expr = this._expr();\n this._consume(1 /* TokenType.RParen */, errorClosingParenthesis);\n return expr === null || expr === void 0 ? void 0 : expr.negate();\n }\n case 17 /* TokenType.Str */:\n this._advance();\n return ContextKeyNotExpr.create(peek.lexeme);\n default:\n throw this._errExpectedButGot(`KEY | true | false | '(' expression ')'`, peek);\n }\n }\n return this._primary();\n }\n _primary() {\n const peek = this._peek();\n switch (peek.type) {\n case 11 /* TokenType.True */:\n this._advance();\n return ContextKeyExpr.true();\n case 12 /* TokenType.False */:\n this._advance();\n return ContextKeyExpr.false();\n case 0 /* TokenType.LParen */: {\n this._advance();\n const expr = this._expr();\n this._consume(1 /* TokenType.RParen */, errorClosingParenthesis);\n return expr;\n }\n case 17 /* TokenType.Str */: {\n // KEY\n const key = peek.lexeme;\n this._advance();\n // =~ regex\n if (this._matchOne(9 /* TokenType.RegexOp */)) {\n // @ulugbekna: we need to reconstruct the regex from the tokens because some extensions use unescaped slashes in regexes\n const expr = this._peek();\n if (!this._config.regexParsingWithErrorRecovery) {\n this._advance();\n if (expr.type !== 10 /* TokenType.RegexStr */) {\n throw this._errExpectedButGot(`REGEX`, expr);\n }\n const regexLexeme = expr.lexeme;\n const closingSlashIndex = regexLexeme.lastIndexOf('/');\n const flags = closingSlashIndex === regexLexeme.length - 1 ? undefined : this._removeFlagsGY(regexLexeme.substring(closingSlashIndex + 1));\n let regexp;\n try {\n regexp = new RegExp(regexLexeme.substring(1, closingSlashIndex), flags);\n }\n catch (e) {\n throw this._errExpectedButGot(`REGEX`, expr);\n }\n return ContextKeyRegexExpr.create(key, regexp);\n }\n switch (expr.type) {\n case 10 /* TokenType.RegexStr */:\n case 19 /* TokenType.Error */: { // also handle an ErrorToken in case of smth such as /(/file)/\n const lexemeReconstruction = [expr.lexeme]; // /REGEX/ or /REGEX/FLAGS\n this._advance();\n let followingToken = this._peek();\n let parenBalance = 0;\n for (let i = 0; i < expr.lexeme.length; i++) {\n if (expr.lexeme.charCodeAt(i) === 40 /* CharCode.OpenParen */) {\n parenBalance++;\n }\n else if (expr.lexeme.charCodeAt(i) === 41 /* CharCode.CloseParen */) {\n parenBalance--;\n }\n }\n while (!this._isAtEnd() && followingToken.type !== 15 /* TokenType.And */ && followingToken.type !== 16 /* TokenType.Or */) {\n switch (followingToken.type) {\n case 0 /* TokenType.LParen */:\n parenBalance++;\n break;\n case 1 /* TokenType.RParen */:\n parenBalance--;\n break;\n case 10 /* TokenType.RegexStr */:\n case 18 /* TokenType.QuotedStr */:\n for (let i = 0; i < followingToken.lexeme.length; i++) {\n if (followingToken.lexeme.charCodeAt(i) === 40 /* CharCode.OpenParen */) {\n parenBalance++;\n }\n else if (expr.lexeme.charCodeAt(i) === 41 /* CharCode.CloseParen */) {\n parenBalance--;\n }\n }\n }\n if (parenBalance < 0) {\n break;\n }\n lexemeReconstruction.push(_scanner_js__WEBPACK_IMPORTED_MODULE_2__.Scanner.getLexeme(followingToken));\n this._advance();\n followingToken = this._peek();\n }\n const regexLexeme = lexemeReconstruction.join('');\n const closingSlashIndex = regexLexeme.lastIndexOf('/');\n const flags = closingSlashIndex === regexLexeme.length - 1 ? undefined : this._removeFlagsGY(regexLexeme.substring(closingSlashIndex + 1));\n let regexp;\n try {\n regexp = new RegExp(regexLexeme.substring(1, closingSlashIndex), flags);\n }\n catch (e) {\n throw this._errExpectedButGot(`REGEX`, expr);\n }\n return ContextKeyExpr.regex(key, regexp);\n }\n case 18 /* TokenType.QuotedStr */: {\n const serializedValue = expr.lexeme;\n this._advance();\n // replicate old regex parsing behavior\n let regex = null;\n if (!(0,_base_common_strings_js__WEBPACK_IMPORTED_MODULE_1__.isFalsyOrWhitespace)(serializedValue)) {\n const start = serializedValue.indexOf('/');\n const end = serializedValue.lastIndexOf('/');\n if (start !== end && start >= 0) {\n const value = serializedValue.slice(start + 1, end);\n const caseIgnoreFlag = serializedValue[end + 1] === 'i' ? 'i' : '';\n try {\n regex = new RegExp(value, caseIgnoreFlag);\n }\n catch (_e) {\n throw this._errExpectedButGot(`REGEX`, expr);\n }\n }\n }\n if (regex === null) {\n throw this._errExpectedButGot('REGEX', expr);\n }\n return ContextKeyRegexExpr.create(key, regex);\n }\n default:\n throw this._errExpectedButGot('REGEX', this._peek());\n }\n }\n // [ 'not' 'in' value ]\n if (this._matchOne(14 /* TokenType.Not */)) {\n this._consume(13 /* TokenType.In */, errorNoInAfterNot);\n const right = this._value();\n return ContextKeyExpr.notIn(key, right);\n }\n // [ ('==' | '!=' | '<' | '<=' | '>' | '>=' | 'in') value ]\n const maybeOp = this._peek().type;\n switch (maybeOp) {\n case 3 /* TokenType.Eq */: {\n this._advance();\n const right = this._value();\n if (this._previous().type === 18 /* TokenType.QuotedStr */) { // to preserve old parser behavior: \"foo == 'true'\" is preserved as \"foo == 'true'\", but \"foo == true\" is optimized as \"foo\"\n return ContextKeyExpr.equals(key, right);\n }\n switch (right) {\n case 'true':\n return ContextKeyExpr.has(key);\n case 'false':\n return ContextKeyExpr.not(key);\n default:\n return ContextKeyExpr.equals(key, right);\n }\n }\n case 4 /* TokenType.NotEq */: {\n this._advance();\n const right = this._value();\n if (this._previous().type === 18 /* TokenType.QuotedStr */) { // same as above with \"foo != 'true'\"\n return ContextKeyExpr.notEquals(key, right);\n }\n switch (right) {\n case 'true':\n return ContextKeyExpr.not(key);\n case 'false':\n return ContextKeyExpr.has(key);\n default:\n return ContextKeyExpr.notEquals(key, right);\n }\n }\n // TODO: ContextKeyExpr.smaller(key, right) accepts only `number` as `right` AND during eval of this node, we just eval to `false` if `right` is not a number\n // consequently, package.json linter should _warn_ the user if they're passing undesired things to ops\n case 5 /* TokenType.Lt */:\n this._advance();\n return ContextKeySmallerExpr.create(key, this._value());\n case 6 /* TokenType.LtEq */:\n this._advance();\n return ContextKeySmallerEqualsExpr.create(key, this._value());\n case 7 /* TokenType.Gt */:\n this._advance();\n return ContextKeyGreaterExpr.create(key, this._value());\n case 8 /* TokenType.GtEq */:\n this._advance();\n return ContextKeyGreaterEqualsExpr.create(key, this._value());\n case 13 /* TokenType.In */:\n this._advance();\n return ContextKeyExpr.in(key, this._value());\n default:\n return ContextKeyExpr.has(key);\n }\n }\n case 20 /* TokenType.EOF */:\n this._parsingErrors.push({ message: errorUnexpectedEOF, offset: peek.offset, lexeme: '', additionalInfo: hintUnexpectedEOF });\n throw Parser._parseError;\n default:\n throw this._errExpectedButGot(`true | false | KEY \\n\\t| KEY '=~' REGEX \\n\\t| KEY ('==' | '!=' | '<' | '<=' | '>' | '>=' | 'in' | 'not' 'in') value`, this._peek());\n }\n }\n _value() {\n const token = this._peek();\n switch (token.type) {\n case 17 /* TokenType.Str */:\n case 18 /* TokenType.QuotedStr */:\n this._advance();\n return token.lexeme;\n case 11 /* TokenType.True */:\n this._advance();\n return 'true';\n case 12 /* TokenType.False */:\n this._advance();\n return 'false';\n case 13 /* TokenType.In */: // we support `in` as a value, e.g., \"when\": \"languageId == in\" - exists in existing extensions\n this._advance();\n return 'in';\n default:\n // this allows \"when\": \"foo == \" which's used by existing extensions\n // we do not call `_advance` on purpose - we don't want to eat unintended tokens\n return '';\n }\n }\n _removeFlagsGY(flags) {\n return flags.replaceAll(this._flagsGYRe, '');\n }\n // careful: this can throw if current token is the initial one (ie index = 0)\n _previous() {\n return this._tokens[this._current - 1];\n }\n _matchOne(token) {\n if (this._check(token)) {\n this._advance();\n return true;\n }\n return false;\n }\n _advance() {\n if (!this._isAtEnd()) {\n this._current++;\n }\n return this._previous();\n }\n _consume(type, message) {\n if (this._check(type)) {\n return this._advance();\n }\n throw this._errExpectedButGot(message, this._peek());\n }\n _errExpectedButGot(expected, got, additionalInfo) {\n const message = (0,_nls_js__WEBPACK_IMPORTED_MODULE_4__.localize)('contextkey.parser.error.expectedButGot', \"Expected: {0}\\nReceived: '{1}'.\", expected, _scanner_js__WEBPACK_IMPORTED_MODULE_2__.Scanner.getLexeme(got));\n const offset = got.offset;\n const lexeme = _scanner_js__WEBPACK_IMPORTED_MODULE_2__.Scanner.getLexeme(got);\n this._parsingErrors.push({ message, offset, lexeme, additionalInfo });\n return Parser._parseError;\n }\n _check(type) {\n return this._peek().type === type;\n }\n _peek() {\n return this._tokens[this._current];\n }\n _isAtEnd() {\n return this._peek().type === 20 /* TokenType.EOF */;\n }\n}\n// Note: this doesn't produce an exact syntax tree but a normalized one\n// ContextKeyExpression's that we use as AST nodes do not expose constructors that do not normalize\nParser._parseError = new Error();\nclass ContextKeyExpr {\n static false() {\n return ContextKeyFalseExpr.INSTANCE;\n }\n static true() {\n return ContextKeyTrueExpr.INSTANCE;\n }\n static has(key) {\n return ContextKeyDefinedExpr.create(key);\n }\n static equals(key, value) {\n return ContextKeyEqualsExpr.create(key, value);\n }\n static notEquals(key, value) {\n return ContextKeyNotEqualsExpr.create(key, value);\n }\n static regex(key, value) {\n return ContextKeyRegexExpr.create(key, value);\n }\n static in(key, value) {\n return ContextKeyInExpr.create(key, value);\n }\n static notIn(key, value) {\n return ContextKeyNotInExpr.create(key, value);\n }\n static not(key) {\n return ContextKeyNotExpr.create(key);\n }\n static and(...expr) {\n return ContextKeyAndExpr.create(expr, null, true);\n }\n static or(...expr) {\n return ContextKeyOrExpr.create(expr, null, true);\n }\n static deserialize(serialized) {\n if (serialized === undefined || serialized === null) { // an empty string needs to be handled by the parser to get a corresponding parsing error reported\n return undefined;\n }\n const expr = this._parser.parse(serialized);\n return expr;\n }\n}\nContextKeyExpr._parser = new Parser({ regexParsingWithErrorRecovery: false });\nfunction expressionsAreEqualWithConstantSubstitution(a, b) {\n const aExpr = a ? a.substituteConstants() : undefined;\n const bExpr = b ? b.substituteConstants() : undefined;\n if (!aExpr && !bExpr) {\n return true;\n }\n if (!aExpr || !bExpr) {\n return false;\n }\n return aExpr.equals(bExpr);\n}\nfunction cmp(a, b) {\n return a.cmp(b);\n}\nclass ContextKeyFalseExpr {\n constructor() {\n this.type = 0 /* ContextKeyExprType.False */;\n }\n cmp(other) {\n return this.type - other.type;\n }\n equals(other) {\n return (other.type === this.type);\n }\n substituteConstants() {\n return this;\n }\n evaluate(context) {\n return false;\n }\n serialize() {\n return 'false';\n }\n keys() {\n return [];\n }\n negate() {\n return ContextKeyTrueExpr.INSTANCE;\n }\n}\nContextKeyFalseExpr.INSTANCE = new ContextKeyFalseExpr();\nclass ContextKeyTrueExpr {\n constructor() {\n this.type = 1 /* ContextKeyExprType.True */;\n }\n cmp(other) {\n return this.type - other.type;\n }\n equals(other) {\n return (other.type === this.type);\n }\n substituteConstants() {\n return this;\n }\n evaluate(context) {\n return true;\n }\n serialize() {\n return 'true';\n }\n keys() {\n return [];\n }\n negate() {\n return ContextKeyFalseExpr.INSTANCE;\n }\n}\nContextKeyTrueExpr.INSTANCE = new ContextKeyTrueExpr();\nclass ContextKeyDefinedExpr {\n static create(key, negated = null) {\n const constantValue = CONSTANT_VALUES.get(key);\n if (typeof constantValue === 'boolean') {\n return constantValue ? ContextKeyTrueExpr.INSTANCE : ContextKeyFalseExpr.INSTANCE;\n }\n return new ContextKeyDefinedExpr(key, negated);\n }\n constructor(key, negated) {\n this.key = key;\n this.negated = negated;\n this.type = 2 /* ContextKeyExprType.Defined */;\n }\n cmp(other) {\n if (other.type !== this.type) {\n return this.type - other.type;\n }\n return cmp1(this.key, other.key);\n }\n equals(other) {\n if (other.type === this.type) {\n return (this.key === other.key);\n }\n return false;\n }\n substituteConstants() {\n const constantValue = CONSTANT_VALUES.get(this.key);\n if (typeof constantValue === 'boolean') {\n return constantValue ? ContextKeyTrueExpr.INSTANCE : ContextKeyFalseExpr.INSTANCE;\n }\n return this;\n }\n evaluate(context) {\n return (!!context.getValue(this.key));\n }\n serialize() {\n return this.key;\n }\n keys() {\n return [this.key];\n }\n negate() {\n if (!this.negated) {\n this.negated = ContextKeyNotExpr.create(this.key, this);\n }\n return this.negated;\n }\n}\nclass ContextKeyEqualsExpr {\n static create(key, value, negated = null) {\n if (typeof value === 'boolean') {\n return (value ? ContextKeyDefinedExpr.create(key, negated) : ContextKeyNotExpr.create(key, negated));\n }\n const constantValue = CONSTANT_VALUES.get(key);\n if (typeof constantValue === 'boolean') {\n const trueValue = constantValue ? 'true' : 'false';\n return (value === trueValue ? ContextKeyTrueExpr.INSTANCE : ContextKeyFalseExpr.INSTANCE);\n }\n return new ContextKeyEqualsExpr(key, value, negated);\n }\n constructor(key, value, negated) {\n this.key = key;\n this.value = value;\n this.negated = negated;\n this.type = 4 /* ContextKeyExprType.Equals */;\n }\n cmp(other) {\n if (other.type !== this.type) {\n return this.type - other.type;\n }\n return cmp2(this.key, this.value, other.key, other.value);\n }\n equals(other) {\n if (other.type === this.type) {\n return (this.key === other.key && this.value === other.value);\n }\n return false;\n }\n substituteConstants() {\n const constantValue = CONSTANT_VALUES.get(this.key);\n if (typeof constantValue === 'boolean') {\n const trueValue = constantValue ? 'true' : 'false';\n return (this.value === trueValue ? ContextKeyTrueExpr.INSTANCE : ContextKeyFalseExpr.INSTANCE);\n }\n return this;\n }\n evaluate(context) {\n // Intentional ==\n // eslint-disable-next-line eqeqeq\n return (context.getValue(this.key) == this.value);\n }\n serialize() {\n return `${this.key} == '${this.value}'`;\n }\n keys() {\n return [this.key];\n }\n negate() {\n if (!this.negated) {\n this.negated = ContextKeyNotEqualsExpr.create(this.key, this.value, this);\n }\n return this.negated;\n }\n}\nclass ContextKeyInExpr {\n static create(key, valueKey) {\n return new ContextKeyInExpr(key, valueKey);\n }\n constructor(key, valueKey) {\n this.key = key;\n this.valueKey = valueKey;\n this.type = 10 /* ContextKeyExprType.In */;\n this.negated = null;\n }\n cmp(other) {\n if (other.type !== this.type) {\n return this.type - other.type;\n }\n return cmp2(this.key, this.valueKey, other.key, other.valueKey);\n }\n equals(other) {\n if (other.type === this.type) {\n return (this.key === other.key && this.valueKey === other.valueKey);\n }\n return false;\n }\n substituteConstants() {\n return this;\n }\n evaluate(context) {\n const source = context.getValue(this.valueKey);\n const item = context.getValue(this.key);\n if (Array.isArray(source)) {\n return source.includes(item);\n }\n if (typeof item === 'string' && typeof source === 'object' && source !== null) {\n return hasOwnProperty.call(source, item);\n }\n return false;\n }\n serialize() {\n return `${this.key} in '${this.valueKey}'`;\n }\n keys() {\n return [this.key, this.valueKey];\n }\n negate() {\n if (!this.negated) {\n this.negated = ContextKeyNotInExpr.create(this.key, this.valueKey);\n }\n return this.negated;\n }\n}\nclass ContextKeyNotInExpr {\n static create(key, valueKey) {\n return new ContextKeyNotInExpr(key, valueKey);\n }\n constructor(key, valueKey) {\n this.key = key;\n this.valueKey = valueKey;\n this.type = 11 /* ContextKeyExprType.NotIn */;\n this._negated = ContextKeyInExpr.create(key, valueKey);\n }\n cmp(other) {\n if (other.type !== this.type) {\n return this.type - other.type;\n }\n return this._negated.cmp(other._negated);\n }\n equals(other) {\n if (other.type === this.type) {\n return this._negated.equals(other._negated);\n }\n return false;\n }\n substituteConstants() {\n return this;\n }\n evaluate(context) {\n return !this._negated.evaluate(context);\n }\n serialize() {\n return `${this.key} not in '${this.valueKey}'`;\n }\n keys() {\n return this._negated.keys();\n }\n negate() {\n return this._negated;\n }\n}\nclass ContextKeyNotEqualsExpr {\n static create(key, value, negated = null) {\n if (typeof value === 'boolean') {\n if (value) {\n return ContextKeyNotExpr.create(key, negated);\n }\n return ContextKeyDefinedExpr.create(key, negated);\n }\n const constantValue = CONSTANT_VALUES.get(key);\n if (typeof constantValue === 'boolean') {\n const falseValue = constantValue ? 'true' : 'false';\n return (value === falseValue ? ContextKeyFalseExpr.INSTANCE : ContextKeyTrueExpr.INSTANCE);\n }\n return new ContextKeyNotEqualsExpr(key, value, negated);\n }\n constructor(key, value, negated) {\n this.key = key;\n this.value = value;\n this.negated = negated;\n this.type = 5 /* ContextKeyExprType.NotEquals */;\n }\n cmp(other) {\n if (other.type !== this.type) {\n return this.type - other.type;\n }\n return cmp2(this.key, this.value, other.key, other.value);\n }\n equals(other) {\n if (other.type === this.type) {\n return (this.key === other.key && this.value === other.value);\n }\n return false;\n }\n substituteConstants() {\n const constantValue = CONSTANT_VALUES.get(this.key);\n if (typeof constantValue === 'boolean') {\n const falseValue = constantValue ? 'true' : 'false';\n return (this.value === falseValue ? ContextKeyFalseExpr.INSTANCE : ContextKeyTrueExpr.INSTANCE);\n }\n return this;\n }\n evaluate(context) {\n // Intentional !=\n // eslint-disable-next-line eqeqeq\n return (context.getValue(this.key) != this.value);\n }\n serialize() {\n return `${this.key} != '${this.value}'`;\n }\n keys() {\n return [this.key];\n }\n negate() {\n if (!this.negated) {\n this.negated = ContextKeyEqualsExpr.create(this.key, this.value, this);\n }\n return this.negated;\n }\n}\nclass ContextKeyNotExpr {\n static create(key, negated = null) {\n const constantValue = CONSTANT_VALUES.get(key);\n if (typeof constantValue === 'boolean') {\n return (constantValue ? ContextKeyFalseExpr.INSTANCE : ContextKeyTrueExpr.INSTANCE);\n }\n return new ContextKeyNotExpr(key, negated);\n }\n constructor(key, negated) {\n this.key = key;\n this.negated = negated;\n this.type = 3 /* ContextKeyExprType.Not */;\n }\n cmp(other) {\n if (other.type !== this.type) {\n return this.type - other.type;\n }\n return cmp1(this.key, other.key);\n }\n equals(other) {\n if (other.type === this.type) {\n return (this.key === other.key);\n }\n return false;\n }\n substituteConstants() {\n const constantValue = CONSTANT_VALUES.get(this.key);\n if (typeof constantValue === 'boolean') {\n return (constantValue ? ContextKeyFalseExpr.INSTANCE : ContextKeyTrueExpr.INSTANCE);\n }\n return this;\n }\n evaluate(context) {\n return (!context.getValue(this.key));\n }\n serialize() {\n return `!${this.key}`;\n }\n keys() {\n return [this.key];\n }\n negate() {\n if (!this.negated) {\n this.negated = ContextKeyDefinedExpr.create(this.key, this);\n }\n return this.negated;\n }\n}\nfunction withFloatOrStr(value, callback) {\n if (typeof value === 'string') {\n const n = parseFloat(value);\n if (!isNaN(n)) {\n value = n;\n }\n }\n if (typeof value === 'string' || typeof value === 'number') {\n return callback(value);\n }\n return ContextKeyFalseExpr.INSTANCE;\n}\nclass ContextKeyGreaterExpr {\n static create(key, _value, negated = null) {\n return withFloatOrStr(_value, (value) => new ContextKeyGreaterExpr(key, value, negated));\n }\n constructor(key, value, negated) {\n this.key = key;\n this.value = value;\n this.negated = negated;\n this.type = 12 /* ContextKeyExprType.Greater */;\n }\n cmp(other) {\n if (other.type !== this.type) {\n return this.type - other.type;\n }\n return cmp2(this.key, this.value, other.key, other.value);\n }\n equals(other) {\n if (other.type === this.type) {\n return (this.key === other.key && this.value === other.value);\n }\n return false;\n }\n substituteConstants() {\n return this;\n }\n evaluate(context) {\n if (typeof this.value === 'string') {\n return false;\n }\n return (parseFloat(context.getValue(this.key)) > this.value);\n }\n serialize() {\n return `${this.key} > ${this.value}`;\n }\n keys() {\n return [this.key];\n }\n negate() {\n if (!this.negated) {\n this.negated = ContextKeySmallerEqualsExpr.create(this.key, this.value, this);\n }\n return this.negated;\n }\n}\nclass ContextKeyGreaterEqualsExpr {\n static create(key, _value, negated = null) {\n return withFloatOrStr(_value, (value) => new ContextKeyGreaterEqualsExpr(key, value, negated));\n }\n constructor(key, value, negated) {\n this.key = key;\n this.value = value;\n this.negated = negated;\n this.type = 13 /* ContextKeyExprType.GreaterEquals */;\n }\n cmp(other) {\n if (other.type !== this.type) {\n return this.type - other.type;\n }\n return cmp2(this.key, this.value, other.key, other.value);\n }\n equals(other) {\n if (other.type === this.type) {\n return (this.key === other.key && this.value === other.value);\n }\n return false;\n }\n substituteConstants() {\n return this;\n }\n evaluate(context) {\n if (typeof this.value === 'string') {\n return false;\n }\n return (parseFloat(context.getValue(this.key)) >= this.value);\n }\n serialize() {\n return `${this.key} >= ${this.value}`;\n }\n keys() {\n return [this.key];\n }\n negate() {\n if (!this.negated) {\n this.negated = ContextKeySmallerExpr.create(this.key, this.value, this);\n }\n return this.negated;\n }\n}\nclass ContextKeySmallerExpr {\n static create(key, _value, negated = null) {\n return withFloatOrStr(_value, (value) => new ContextKeySmallerExpr(key, value, negated));\n }\n constructor(key, value, negated) {\n this.key = key;\n this.value = value;\n this.negated = negated;\n this.type = 14 /* ContextKeyExprType.Smaller */;\n }\n cmp(other) {\n if (other.type !== this.type) {\n return this.type - other.type;\n }\n return cmp2(this.key, this.value, other.key, other.value);\n }\n equals(other) {\n if (other.type === this.type) {\n return (this.key === other.key && this.value === other.value);\n }\n return false;\n }\n substituteConstants() {\n return this;\n }\n evaluate(context) {\n if (typeof this.value === 'string') {\n return false;\n }\n return (parseFloat(context.getValue(this.key)) < this.value);\n }\n serialize() {\n return `${this.key} < ${this.value}`;\n }\n keys() {\n return [this.key];\n }\n negate() {\n if (!this.negated) {\n this.negated = ContextKeyGreaterEqualsExpr.create(this.key, this.value, this);\n }\n return this.negated;\n }\n}\nclass ContextKeySmallerEqualsExpr {\n static create(key, _value, negated = null) {\n return withFloatOrStr(_value, (value) => new ContextKeySmallerEqualsExpr(key, value, negated));\n }\n constructor(key, value, negated) {\n this.key = key;\n this.value = value;\n this.negated = negated;\n this.type = 15 /* ContextKeyExprType.SmallerEquals */;\n }\n cmp(other) {\n if (other.type !== this.type) {\n return this.type - other.type;\n }\n return cmp2(this.key, this.value, other.key, other.value);\n }\n equals(other) {\n if (other.type === this.type) {\n return (this.key === other.key && this.value === other.value);\n }\n return false;\n }\n substituteConstants() {\n return this;\n }\n evaluate(context) {\n if (typeof this.value === 'string') {\n return false;\n }\n return (parseFloat(context.getValue(this.key)) <= this.value);\n }\n serialize() {\n return `${this.key} <= ${this.value}`;\n }\n keys() {\n return [this.key];\n }\n negate() {\n if (!this.negated) {\n this.negated = ContextKeyGreaterExpr.create(this.key, this.value, this);\n }\n return this.negated;\n }\n}\nclass ContextKeyRegexExpr {\n static create(key, regexp) {\n return new ContextKeyRegexExpr(key, regexp);\n }\n constructor(key, regexp) {\n this.key = key;\n this.regexp = regexp;\n this.type = 7 /* ContextKeyExprType.Regex */;\n this.negated = null;\n //\n }\n cmp(other) {\n if (other.type !== this.type) {\n return this.type - other.type;\n }\n if (this.key < other.key) {\n return -1;\n }\n if (this.key > other.key) {\n return 1;\n }\n const thisSource = this.regexp ? this.regexp.source : '';\n const otherSource = other.regexp ? other.regexp.source : '';\n if (thisSource < otherSource) {\n return -1;\n }\n if (thisSource > otherSource) {\n return 1;\n }\n return 0;\n }\n equals(other) {\n if (other.type === this.type) {\n const thisSource = this.regexp ? this.regexp.source : '';\n const otherSource = other.regexp ? other.regexp.source : '';\n return (this.key === other.key && thisSource === otherSource);\n }\n return false;\n }\n substituteConstants() {\n return this;\n }\n evaluate(context) {\n const value = context.getValue(this.key);\n return this.regexp ? this.regexp.test(value) : false;\n }\n serialize() {\n const value = this.regexp\n ? `/${this.regexp.source}/${this.regexp.flags}`\n : '/invalid/';\n return `${this.key} =~ ${value}`;\n }\n keys() {\n return [this.key];\n }\n negate() {\n if (!this.negated) {\n this.negated = ContextKeyNotRegexExpr.create(this);\n }\n return this.negated;\n }\n}\nclass ContextKeyNotRegexExpr {\n static create(actual) {\n return new ContextKeyNotRegexExpr(actual);\n }\n constructor(_actual) {\n this._actual = _actual;\n this.type = 8 /* ContextKeyExprType.NotRegex */;\n //\n }\n cmp(other) {\n if (other.type !== this.type) {\n return this.type - other.type;\n }\n return this._actual.cmp(other._actual);\n }\n equals(other) {\n if (other.type === this.type) {\n return this._actual.equals(other._actual);\n }\n return false;\n }\n substituteConstants() {\n return this;\n }\n evaluate(context) {\n return !this._actual.evaluate(context);\n }\n serialize() {\n return `!(${this._actual.serialize()})`;\n }\n keys() {\n return this._actual.keys();\n }\n negate() {\n return this._actual;\n }\n}\n/**\n * @returns the same instance if nothing changed.\n */\nfunction eliminateConstantsInArray(arr) {\n // Allocate array only if there is a difference\n let newArr = null;\n for (let i = 0, len = arr.length; i < len; i++) {\n const newExpr = arr[i].substituteConstants();\n if (arr[i] !== newExpr) {\n // something has changed!\n // allocate array on first difference\n if (newArr === null) {\n newArr = [];\n for (let j = 0; j < i; j++) {\n newArr[j] = arr[j];\n }\n }\n }\n if (newArr !== null) {\n newArr[i] = newExpr;\n }\n }\n if (newArr === null) {\n return arr;\n }\n return newArr;\n}\nclass ContextKeyAndExpr {\n static create(_expr, negated, extraRedundantCheck) {\n return ContextKeyAndExpr._normalizeArr(_expr, negated, extraRedundantCheck);\n }\n constructor(expr, negated) {\n this.expr = expr;\n this.negated = negated;\n this.type = 6 /* ContextKeyExprType.And */;\n }\n cmp(other) {\n if (other.type !== this.type) {\n return this.type - other.type;\n }\n if (this.expr.length < other.expr.length) {\n return -1;\n }\n if (this.expr.length > other.expr.length) {\n return 1;\n }\n for (let i = 0, len = this.expr.length; i < len; i++) {\n const r = cmp(this.expr[i], other.expr[i]);\n if (r !== 0) {\n return r;\n }\n }\n return 0;\n }\n equals(other) {\n if (other.type === this.type) {\n if (this.expr.length !== other.expr.length) {\n return false;\n }\n for (let i = 0, len = this.expr.length; i < len; i++) {\n if (!this.expr[i].equals(other.expr[i])) {\n return false;\n }\n }\n return true;\n }\n return false;\n }\n substituteConstants() {\n const exprArr = eliminateConstantsInArray(this.expr);\n if (exprArr === this.expr) {\n // no change\n return this;\n }\n return ContextKeyAndExpr.create(exprArr, this.negated, false);\n }\n evaluate(context) {\n for (let i = 0, len = this.expr.length; i < len; i++) {\n if (!this.expr[i].evaluate(context)) {\n return false;\n }\n }\n return true;\n }\n static _normalizeArr(arr, negated, extraRedundantCheck) {\n const expr = [];\n let hasTrue = false;\n for (const e of arr) {\n if (!e) {\n continue;\n }\n if (e.type === 1 /* ContextKeyExprType.True */) {\n // anything && true ==> anything\n hasTrue = true;\n continue;\n }\n if (e.type === 0 /* ContextKeyExprType.False */) {\n // anything && false ==> false\n return ContextKeyFalseExpr.INSTANCE;\n }\n if (e.type === 6 /* ContextKeyExprType.And */) {\n expr.push(...e.expr);\n continue;\n }\n expr.push(e);\n }\n if (expr.length === 0 && hasTrue) {\n return ContextKeyTrueExpr.INSTANCE;\n }\n if (expr.length === 0) {\n return undefined;\n }\n if (expr.length === 1) {\n return expr[0];\n }\n expr.sort(cmp);\n // eliminate duplicate terms\n for (let i = 1; i < expr.length; i++) {\n if (expr[i - 1].equals(expr[i])) {\n expr.splice(i, 1);\n i--;\n }\n }\n if (expr.length === 1) {\n return expr[0];\n }\n // We must distribute any OR expression because we don't support parens\n // OR extensions will be at the end (due to sorting rules)\n while (expr.length > 1) {\n const lastElement = expr[expr.length - 1];\n if (lastElement.type !== 9 /* ContextKeyExprType.Or */) {\n break;\n }\n // pop the last element\n expr.pop();\n // pop the second to last element\n const secondToLastElement = expr.pop();\n const isFinished = (expr.length === 0);\n // distribute `lastElement` over `secondToLastElement`\n const resultElement = ContextKeyOrExpr.create(lastElement.expr.map(el => ContextKeyAndExpr.create([el, secondToLastElement], null, extraRedundantCheck)), null, isFinished);\n if (resultElement) {\n expr.push(resultElement);\n expr.sort(cmp);\n }\n }\n if (expr.length === 1) {\n return expr[0];\n }\n // resolve false AND expressions\n if (extraRedundantCheck) {\n for (let i = 0; i < expr.length; i++) {\n for (let j = i + 1; j < expr.length; j++) {\n if (expr[i].negate().equals(expr[j])) {\n // A && !A case\n return ContextKeyFalseExpr.INSTANCE;\n }\n }\n }\n if (expr.length === 1) {\n return expr[0];\n }\n }\n return new ContextKeyAndExpr(expr, negated);\n }\n serialize() {\n return this.expr.map(e => e.serialize()).join(' && ');\n }\n keys() {\n const result = [];\n for (const expr of this.expr) {\n result.push(...expr.keys());\n }\n return result;\n }\n negate() {\n if (!this.negated) {\n const result = [];\n for (const expr of this.expr) {\n result.push(expr.negate());\n }\n this.negated = ContextKeyOrExpr.create(result, this, true);\n }\n return this.negated;\n }\n}\nclass ContextKeyOrExpr {\n static create(_expr, negated, extraRedundantCheck) {\n return ContextKeyOrExpr._normalizeArr(_expr, negated, extraRedundantCheck);\n }\n constructor(expr, negated) {\n this.expr = expr;\n this.negated = negated;\n this.type = 9 /* ContextKeyExprType.Or */;\n }\n cmp(other) {\n if (other.type !== this.type) {\n return this.type - other.type;\n }\n if (this.expr.length < other.expr.length) {\n return -1;\n }\n if (this.expr.length > other.expr.length) {\n return 1;\n }\n for (let i = 0, len = this.expr.length; i < len; i++) {\n const r = cmp(this.expr[i], other.expr[i]);\n if (r !== 0) {\n return r;\n }\n }\n return 0;\n }\n equals(other) {\n if (other.type === this.type) {\n if (this.expr.length !== other.expr.length) {\n return false;\n }\n for (let i = 0, len = this.expr.length; i < len; i++) {\n if (!this.expr[i].equals(other.expr[i])) {\n return false;\n }\n }\n return true;\n }\n return false;\n }\n substituteConstants() {\n const exprArr = eliminateConstantsInArray(this.expr);\n if (exprArr === this.expr) {\n // no change\n return this;\n }\n return ContextKeyOrExpr.create(exprArr, this.negated, false);\n }\n evaluate(context) {\n for (let i = 0, len = this.expr.length; i < len; i++) {\n if (this.expr[i].evaluate(context)) {\n return true;\n }\n }\n return false;\n }\n static _normalizeArr(arr, negated, extraRedundantCheck) {\n let expr = [];\n let hasFalse = false;\n if (arr) {\n for (let i = 0, len = arr.length; i < len; i++) {\n const e = arr[i];\n if (!e) {\n continue;\n }\n if (e.type === 0 /* ContextKeyExprType.False */) {\n // anything || false ==> anything\n hasFalse = true;\n continue;\n }\n if (e.type === 1 /* ContextKeyExprType.True */) {\n // anything || true ==> true\n return ContextKeyTrueExpr.INSTANCE;\n }\n if (e.type === 9 /* ContextKeyExprType.Or */) {\n expr = expr.concat(e.expr);\n continue;\n }\n expr.push(e);\n }\n if (expr.length === 0 && hasFalse) {\n return ContextKeyFalseExpr.INSTANCE;\n }\n expr.sort(cmp);\n }\n if (expr.length === 0) {\n return undefined;\n }\n if (expr.length === 1) {\n return expr[0];\n }\n // eliminate duplicate terms\n for (let i = 1; i < expr.length; i++) {\n if (expr[i - 1].equals(expr[i])) {\n expr.splice(i, 1);\n i--;\n }\n }\n if (expr.length === 1) {\n return expr[0];\n }\n // resolve true OR expressions\n if (extraRedundantCheck) {\n for (let i = 0; i < expr.length; i++) {\n for (let j = i + 1; j < expr.length; j++) {\n if (expr[i].negate().equals(expr[j])) {\n // A || !A case\n return ContextKeyTrueExpr.INSTANCE;\n }\n }\n }\n if (expr.length === 1) {\n return expr[0];\n }\n }\n return new ContextKeyOrExpr(expr, negated);\n }\n serialize() {\n return this.expr.map(e => e.serialize()).join(' || ');\n }\n keys() {\n const result = [];\n for (const expr of this.expr) {\n result.push(...expr.keys());\n }\n return result;\n }\n negate() {\n if (!this.negated) {\n const result = [];\n for (const expr of this.expr) {\n result.push(expr.negate());\n }\n // We don't support parens, so here we distribute the AND over the OR terminals\n // We always take the first 2 AND pairs and distribute them\n while (result.length > 1) {\n const LEFT = result.shift();\n const RIGHT = result.shift();\n const all = [];\n for (const left of getTerminals(LEFT)) {\n for (const right of getTerminals(RIGHT)) {\n all.push(ContextKeyAndExpr.create([left, right], null, false));\n }\n }\n result.unshift(ContextKeyOrExpr.create(all, null, false));\n }\n this.negated = ContextKeyOrExpr.create(result, this, true);\n }\n return this.negated;\n }\n}\nclass RawContextKey extends ContextKeyDefinedExpr {\n static all() {\n return RawContextKey._info.values();\n }\n constructor(key, defaultValue, metaOrHide) {\n super(key, null);\n this._defaultValue = defaultValue;\n // collect all context keys into a central place\n if (typeof metaOrHide === 'object') {\n RawContextKey._info.push({ ...metaOrHide, key });\n }\n else if (metaOrHide !== true) {\n RawContextKey._info.push({ key, description: metaOrHide, type: defaultValue !== null && defaultValue !== undefined ? typeof defaultValue : undefined });\n }\n }\n bindTo(target) {\n return target.createKey(this.key, this._defaultValue);\n }\n getValue(target) {\n return target.getContextKeyValue(this.key);\n }\n toNegated() {\n return this.negate();\n }\n isEqualTo(value) {\n return ContextKeyEqualsExpr.create(this.key, value);\n }\n}\nRawContextKey._info = [];\nconst IContextKeyService = (0,_instantiation_common_instantiation_js__WEBPACK_IMPORTED_MODULE_3__.createDecorator)('contextKeyService');\nfunction cmp1(key1, key2) {\n if (key1 < key2) {\n return -1;\n }\n if (key1 > key2) {\n return 1;\n }\n return 0;\n}\nfunction cmp2(key1, value1, key2, value2) {\n if (key1 < key2) {\n return -1;\n }\n if (key1 > key2) {\n return 1;\n }\n if (value1 < value2) {\n return -1;\n }\n if (value1 > value2) {\n return 1;\n }\n return 0;\n}\n/**\n * Returns true if it is provable `p` implies `q`.\n */\nfunction implies(p, q) {\n if (p.type === 0 /* ContextKeyExprType.False */ || q.type === 1 /* ContextKeyExprType.True */) {\n // false implies anything\n // anything implies true\n return true;\n }\n if (p.type === 9 /* ContextKeyExprType.Or */) {\n if (q.type === 9 /* ContextKeyExprType.Or */) {\n // `a || b || c` can only imply something like `a || b || c || d`\n return allElementsIncluded(p.expr, q.expr);\n }\n return false;\n }\n if (q.type === 9 /* ContextKeyExprType.Or */) {\n for (const element of q.expr) {\n if (implies(p, element)) {\n return true;\n }\n }\n return false;\n }\n if (p.type === 6 /* ContextKeyExprType.And */) {\n if (q.type === 6 /* ContextKeyExprType.And */) {\n // `a && b && c` implies `a && c`\n return allElementsIncluded(q.expr, p.expr);\n }\n for (const element of p.expr) {\n if (implies(element, q)) {\n return true;\n }\n }\n return false;\n }\n return p.equals(q);\n}\n/**\n * Returns true if all elements in `p` are also present in `q`.\n * The two arrays are assumed to be sorted\n */\nfunction allElementsIncluded(p, q) {\n let pIndex = 0;\n let qIndex = 0;\n while (pIndex < p.length && qIndex < q.length) {\n const cmp = p[pIndex].cmp(q[qIndex]);\n if (cmp < 0) {\n // an element from `p` is missing from `q`\n return false;\n }\n else if (cmp === 0) {\n pIndex++;\n qIndex++;\n }\n else {\n qIndex++;\n }\n }\n return (pIndex === p.length);\n}\nfunction getTerminals(node) {\n if (node.type === 9 /* ContextKeyExprType.Or */) {\n return node.expr;\n }\n return [node];\n}\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/platform/contextkey/common/contextkey.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/platform/contextkey/common/contextkeys.js":
/*!*************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/platform/contextkey/common/contextkeys.js ***!
\*************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ InputFocusedContext: () => (/* binding */ InputFocusedContext),\n/* harmony export */ InputFocusedContextKey: () => (/* binding */ InputFocusedContextKey),\n/* harmony export */ IsDevelopmentContext: () => (/* binding */ IsDevelopmentContext),\n/* harmony export */ IsIOSContext: () => (/* binding */ IsIOSContext),\n/* harmony export */ IsLinuxContext: () => (/* binding */ IsLinuxContext),\n/* harmony export */ IsMacContext: () => (/* binding */ IsMacContext),\n/* harmony export */ IsMacNativeContext: () => (/* binding */ IsMacNativeContext),\n/* harmony export */ IsMobileContext: () => (/* binding */ IsMobileContext),\n/* harmony export */ IsWebContext: () => (/* binding */ IsWebContext),\n/* harmony export */ IsWindowsContext: () => (/* binding */ IsWindowsContext),\n/* harmony export */ ProductQualityContext: () => (/* binding */ ProductQualityContext)\n/* harmony export */ });\n/* harmony import */ var _base_common_platform_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../base/common/platform.js */ \"./node_modules/monaco-editor/esm/vs/base/common/platform.js\");\n/* harmony import */ var _nls_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../nls.js */ \"./node_modules/monaco-editor/esm/vs/nls.js\");\n/* harmony import */ var _contextkey_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./contextkey.js */ \"./node_modules/monaco-editor/esm/vs/platform/contextkey/common/contextkey.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n\n\nconst IsMacContext = new _contextkey_js__WEBPACK_IMPORTED_MODULE_2__.RawContextKey('isMac', _base_common_platform_js__WEBPACK_IMPORTED_MODULE_0__.isMacintosh, (0,_nls_js__WEBPACK_IMPORTED_MODULE_1__.localize)('isMac', \"Whether the operating system is macOS\"));\nconst IsLinuxContext = new _contextkey_js__WEBPACK_IMPORTED_MODULE_2__.RawContextKey('isLinux', _base_common_platform_js__WEBPACK_IMPORTED_MODULE_0__.isLinux, (0,_nls_js__WEBPACK_IMPORTED_MODULE_1__.localize)('isLinux', \"Whether the operating system is Linux\"));\nconst IsWindowsContext = new _contextkey_js__WEBPACK_IMPORTED_MODULE_2__.RawContextKey('isWindows', _base_common_platform_js__WEBPACK_IMPORTED_MODULE_0__.isWindows, (0,_nls_js__WEBPACK_IMPORTED_MODULE_1__.localize)('isWindows', \"Whether the operating system is Windows\"));\nconst IsWebContext = new _contextkey_js__WEBPACK_IMPORTED_MODULE_2__.RawContextKey('isWeb', _base_common_platform_js__WEBPACK_IMPORTED_MODULE_0__.isWeb, (0,_nls_js__WEBPACK_IMPORTED_MODULE_1__.localize)('isWeb', \"Whether the platform is a web browser\"));\nconst IsMacNativeContext = new _contextkey_js__WEBPACK_IMPORTED_MODULE_2__.RawContextKey('isMacNative', _base_common_platform_js__WEBPACK_IMPORTED_MODULE_0__.isMacintosh && !_base_common_platform_js__WEBPACK_IMPORTED_MODULE_0__.isWeb, (0,_nls_js__WEBPACK_IMPORTED_MODULE_1__.localize)('isMacNative', \"Whether the operating system is macOS on a non-browser platform\"));\nconst IsIOSContext = new _contextkey_js__WEBPACK_IMPORTED_MODULE_2__.RawContextKey('isIOS', _base_common_platform_js__WEBPACK_IMPORTED_MODULE_0__.isIOS, (0,_nls_js__WEBPACK_IMPORTED_MODULE_1__.localize)('isIOS', \"Whether the operating system is iOS\"));\nconst IsMobileContext = new _contextkey_js__WEBPACK_IMPORTED_MODULE_2__.RawContextKey('isMobile', _base_common_platform_js__WEBPACK_IMPORTED_MODULE_0__.isMobile, (0,_nls_js__WEBPACK_IMPORTED_MODULE_1__.localize)('isMobile', \"Whether the platform is a mobile web browser\"));\nconst IsDevelopmentContext = new _contextkey_js__WEBPACK_IMPORTED_MODULE_2__.RawContextKey('isDevelopment', false, true);\nconst ProductQualityContext = new _contextkey_js__WEBPACK_IMPORTED_MODULE_2__.RawContextKey('productQualityType', '', (0,_nls_js__WEBPACK_IMPORTED_MODULE_1__.localize)('productQualityType', \"Quality type of VS Code\"));\nconst InputFocusedContextKey = 'inputFocus';\nconst InputFocusedContext = new _contextkey_js__WEBPACK_IMPORTED_MODULE_2__.RawContextKey(InputFocusedContextKey, false, (0,_nls_js__WEBPACK_IMPORTED_MODULE_1__.localize)('inputFocus', \"Whether keyboard focus is inside an input box\"));\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/platform/contextkey/common/contextkeys.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/platform/contextkey/common/scanner.js":
/*!*********************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/platform/contextkey/common/scanner.js ***!
\*********************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ Scanner: () => (/* binding */ Scanner)\n/* harmony export */ });\n/* harmony import */ var _base_common_errors_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../base/common/errors.js */ \"./node_modules/monaco-editor/esm/vs/base/common/errors.js\");\n/* harmony import */ var _nls_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../nls.js */ \"./node_modules/monaco-editor/esm/vs/nls.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n\nfunction hintDidYouMean(...meant) {\n switch (meant.length) {\n case 1:\n return (0,_nls_js__WEBPACK_IMPORTED_MODULE_1__.localize)('contextkey.scanner.hint.didYouMean1', \"Did you mean {0}?\", meant[0]);\n case 2:\n return (0,_nls_js__WEBPACK_IMPORTED_MODULE_1__.localize)('contextkey.scanner.hint.didYouMean2', \"Did you mean {0} or {1}?\", meant[0], meant[1]);\n case 3:\n return (0,_nls_js__WEBPACK_IMPORTED_MODULE_1__.localize)('contextkey.scanner.hint.didYouMean3', \"Did you mean {0}, {1} or {2}?\", meant[0], meant[1], meant[2]);\n default: // we just don't expect that many\n return undefined;\n }\n}\nconst hintDidYouForgetToOpenOrCloseQuote = (0,_nls_js__WEBPACK_IMPORTED_MODULE_1__.localize)('contextkey.scanner.hint.didYouForgetToOpenOrCloseQuote', \"Did you forget to open or close the quote?\");\nconst hintDidYouForgetToEscapeSlash = (0,_nls_js__WEBPACK_IMPORTED_MODULE_1__.localize)('contextkey.scanner.hint.didYouForgetToEscapeSlash', \"Did you forget to escape the '/' (slash) character? Put two backslashes before it to escape, e.g., '\\\\\\\\/\\'.\");\n/**\n * A simple scanner for context keys.\n *\n * Example:\n *\n * ```ts\n * const scanner = new Scanner().reset('resourceFileName =~ /docker/ && !config.docker.enabled');\n * const tokens = [...scanner];\n * if (scanner.errorTokens.length > 0) {\n * scanner.errorTokens.forEach(err => console.error(`Unexpected token at ${err.offset}: ${err.lexeme}\\nHint: ${err.additional}`));\n * } else {\n * // process tokens\n * }\n * ```\n */\nclass Scanner {\n constructor() {\n this._input = '';\n this._start = 0;\n this._current = 0;\n this._tokens = [];\n this._errors = [];\n // u - unicode, y - sticky // TODO@ulugbekna: we accept double quotes as part of the string rather than as a delimiter (to preserve old parser's behavior)\n this.stringRe = /[a-zA-Z0-9_<>\\-\\./\\\\:\\*\\?\\+\\[\\]\\^,#@;\"%\\$\\p{L}-]+/uy;\n }\n static getLexeme(token) {\n switch (token.type) {\n case 0 /* TokenType.LParen */:\n return '(';\n case 1 /* TokenType.RParen */:\n return ')';\n case 2 /* TokenType.Neg */:\n return '!';\n case 3 /* TokenType.Eq */:\n return token.isTripleEq ? '===' : '==';\n case 4 /* TokenType.NotEq */:\n return token.isTripleEq ? '!==' : '!=';\n case 5 /* TokenType.Lt */:\n return '<';\n case 6 /* TokenType.LtEq */:\n return '<=';\n case 7 /* TokenType.Gt */:\n return '>=';\n case 8 /* TokenType.GtEq */:\n return '>=';\n case 9 /* TokenType.RegexOp */:\n return '=~';\n case 10 /* TokenType.RegexStr */:\n return token.lexeme;\n case 11 /* TokenType.True */:\n return 'true';\n case 12 /* TokenType.False */:\n return 'false';\n case 13 /* TokenType.In */:\n return 'in';\n case 14 /* TokenType.Not */:\n return 'not';\n case 15 /* TokenType.And */:\n return '&&';\n case 16 /* TokenType.Or */:\n return '||';\n case 17 /* TokenType.Str */:\n return token.lexeme;\n case 18 /* TokenType.QuotedStr */:\n return token.lexeme;\n case 19 /* TokenType.Error */:\n return token.lexeme;\n case 20 /* TokenType.EOF */:\n return 'EOF';\n default:\n throw (0,_base_common_errors_js__WEBPACK_IMPORTED_MODULE_0__.illegalState)(`unhandled token type: ${JSON.stringify(token)}; have you forgotten to add a case?`);\n }\n }\n reset(value) {\n this._input = value;\n this._start = 0;\n this._current = 0;\n this._tokens = [];\n this._errors = [];\n return this;\n }\n scan() {\n while (!this._isAtEnd()) {\n this._start = this._current;\n const ch = this._advance();\n switch (ch) {\n case 40 /* CharCode.OpenParen */:\n this._addToken(0 /* TokenType.LParen */);\n break;\n case 41 /* CharCode.CloseParen */:\n this._addToken(1 /* TokenType.RParen */);\n break;\n case 33 /* CharCode.ExclamationMark */:\n if (this._match(61 /* CharCode.Equals */)) {\n const isTripleEq = this._match(61 /* CharCode.Equals */); // eat last `=` if `!==`\n this._tokens.push({ type: 4 /* TokenType.NotEq */, offset: this._start, isTripleEq });\n }\n else {\n this._addToken(2 /* TokenType.Neg */);\n }\n break;\n case 39 /* CharCode.SingleQuote */:\n this._quotedString();\n break;\n case 47 /* CharCode.Slash */:\n this._regex();\n break;\n case 61 /* CharCode.Equals */:\n if (this._match(61 /* CharCode.Equals */)) { // support `==`\n const isTripleEq = this._match(61 /* CharCode.Equals */); // eat last `=` if `===`\n this._tokens.push({ type: 3 /* TokenType.Eq */, offset: this._start, isTripleEq });\n }\n else if (this._match(126 /* CharCode.Tilde */)) {\n this._addToken(9 /* TokenType.RegexOp */);\n }\n else {\n this._error(hintDidYouMean('==', '=~'));\n }\n break;\n case 60 /* CharCode.LessThan */:\n this._addToken(this._match(61 /* CharCode.Equals */) ? 6 /* TokenType.LtEq */ : 5 /* TokenType.Lt */);\n break;\n case 62 /* CharCode.GreaterThan */:\n this._addToken(this._match(61 /* CharCode.Equals */) ? 8 /* TokenType.GtEq */ : 7 /* TokenType.Gt */);\n break;\n case 38 /* CharCode.Ampersand */:\n if (this._match(38 /* CharCode.Ampersand */)) {\n this._addToken(15 /* TokenType.And */);\n }\n else {\n this._error(hintDidYouMean('&&'));\n }\n break;\n case 124 /* CharCode.Pipe */:\n if (this._match(124 /* CharCode.Pipe */)) {\n this._addToken(16 /* TokenType.Or */);\n }\n else {\n this._error(hintDidYouMean('||'));\n }\n break;\n // TODO@ulugbekna: 1) rewrite using a regex 2) reconsider what characters are considered whitespace, including unicode, nbsp, etc.\n case 32 /* CharCode.Space */:\n case 13 /* CharCode.CarriageReturn */:\n case 9 /* CharCode.Tab */:\n case 10 /* CharCode.LineFeed */:\n case 160 /* CharCode.NoBreakSpace */: //  \n break;\n default:\n this._string();\n }\n }\n this._start = this._current;\n this._addToken(20 /* TokenType.EOF */);\n return Array.from(this._tokens);\n }\n _match(expected) {\n if (this._isAtEnd()) {\n return false;\n }\n if (this._input.charCodeAt(this._current) !== expected) {\n return false;\n }\n this._current++;\n return true;\n }\n _advance() {\n return this._input.charCodeAt(this._current++);\n }\n _peek() {\n return this._isAtEnd() ? 0 /* CharCode.Null */ : this._input.charCodeAt(this._current);\n }\n _addToken(type) {\n this._tokens.push({ type, offset: this._start });\n }\n _error(additional) {\n const offset = this._start;\n const lexeme = this._input.substring(this._start, this._current);\n const errToken = { type: 19 /* TokenType.Error */, offset: this._start, lexeme };\n this._errors.push({ offset, lexeme, additionalInfo: additional });\n this._tokens.push(errToken);\n }\n _string() {\n this.stringRe.lastIndex = this._start;\n const match = this.stringRe.exec(this._input);\n if (match) {\n this._current = this._start + match[0].length;\n const lexeme = this._input.substring(this._start, this._current);\n const keyword = Scanner._keywords.get(lexeme);\n if (keyword) {\n this._addToken(keyword);\n }\n else {\n this._tokens.push({ type: 17 /* TokenType.Str */, lexeme, offset: this._start });\n }\n }\n }\n // captures the lexeme without the leading and trailing '\n _quotedString() {\n while (this._peek() !== 39 /* CharCode.SingleQuote */ && !this._isAtEnd()) { // TODO@ulugbekna: add support for escaping ' ?\n this._advance();\n }\n if (this._isAtEnd()) {\n this._error(hintDidYouForgetToOpenOrCloseQuote);\n return;\n }\n // consume the closing '\n this._advance();\n this._tokens.push({ type: 18 /* TokenType.QuotedStr */, lexeme: this._input.substring(this._start + 1, this._current - 1), offset: this._start + 1 });\n }\n /*\n * Lexing a regex expression: /.../[igsmyu]*\n * Based on https://github.com/microsoft/TypeScript/blob/9247ef115e617805983740ba795d7a8164babf89/src/compiler/scanner.ts#L2129-L2181\n *\n * Note that we want slashes within a regex to be escaped, e.g., /file:\\\\/\\\\/\\\\// should match `file:///`\n */\n _regex() {\n let p = this._current;\n let inEscape = false;\n let inCharacterClass = false;\n while (true) {\n if (p >= this._input.length) {\n this._current = p;\n this._error(hintDidYouForgetToEscapeSlash);\n return;\n }\n const ch = this._input.charCodeAt(p);\n if (inEscape) { // parsing an escape character\n inEscape = false;\n }\n else if (ch === 47 /* CharCode.Slash */ && !inCharacterClass) { // end of regex\n p++;\n break;\n }\n else if (ch === 91 /* CharCode.OpenSquareBracket */) {\n inCharacterClass = true;\n }\n else if (ch === 92 /* CharCode.Backslash */) {\n inEscape = true;\n }\n else if (ch === 93 /* CharCode.CloseSquareBracket */) {\n inCharacterClass = false;\n }\n p++;\n }\n // Consume flags // TODO@ulugbekna: use regex instead\n while (p < this._input.length && Scanner._regexFlags.has(this._input.charCodeAt(p))) {\n p++;\n }\n this._current = p;\n const lexeme = this._input.substring(this._start, this._current);\n this._tokens.push({ type: 10 /* TokenType.RegexStr */, lexeme, offset: this._start });\n }\n _isAtEnd() {\n return this._current >= this._input.length;\n }\n}\nScanner._regexFlags = new Set(['i', 'g', 's', 'm', 'y', 'u'].map(ch => ch.charCodeAt(0)));\nScanner._keywords = new Map([\n ['not', 14 /* TokenType.Not */],\n ['in', 13 /* TokenType.In */],\n ['false', 12 /* TokenType.False */],\n ['true', 11 /* TokenType.True */],\n]);\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/platform/contextkey/common/scanner.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/platform/contextview/browser/contextMenuHandler.js":
/*!**********************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/platform/contextview/browser/contextMenuHandler.js ***!
\**********************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ ContextMenuHandler: () => (/* binding */ ContextMenuHandler)\n/* harmony export */ });\n/* harmony import */ var _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../base/browser/dom.js */ \"./node_modules/monaco-editor/esm/vs/base/browser/dom.js\");\n/* harmony import */ var _base_browser_mouseEvent_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../base/browser/mouseEvent.js */ \"./node_modules/monaco-editor/esm/vs/base/browser/mouseEvent.js\");\n/* harmony import */ var _base_browser_ui_menu_menu_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../base/browser/ui/menu/menu.js */ \"./node_modules/monaco-editor/esm/vs/base/browser/ui/menu/menu.js\");\n/* harmony import */ var _base_common_actions_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../../base/common/actions.js */ \"./node_modules/monaco-editor/esm/vs/base/common/actions.js\");\n/* harmony import */ var _base_common_errors_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../../base/common/errors.js */ \"./node_modules/monaco-editor/esm/vs/base/common/errors.js\");\n/* harmony import */ var _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../../../base/common/lifecycle.js */ \"./node_modules/monaco-editor/esm/vs/base/common/lifecycle.js\");\n/* harmony import */ var _theme_browser_defaultStyles_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../../theme/browser/defaultStyles.js */ \"./node_modules/monaco-editor/esm/vs/platform/theme/browser/defaultStyles.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n\n\n\n\n\n\nclass ContextMenuHandler {\n constructor(contextViewService, telemetryService, notificationService, keybindingService) {\n this.contextViewService = contextViewService;\n this.telemetryService = telemetryService;\n this.notificationService = notificationService;\n this.keybindingService = keybindingService;\n this.focusToReturn = null;\n this.lastContainer = null;\n this.block = null;\n this.blockDisposable = null;\n this.options = { blockMouse: true };\n }\n configure(options) {\n this.options = options;\n }\n showContextMenu(delegate) {\n const actions = delegate.getActions();\n if (!actions.length) {\n return; // Don't render an empty context menu\n }\n this.focusToReturn = (0,_base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.getActiveElement)();\n let menu;\n const shadowRootElement = delegate.domForShadowRoot instanceof HTMLElement ? delegate.domForShadowRoot : undefined;\n this.contextViewService.showContextView({\n getAnchor: () => delegate.getAnchor(),\n canRelayout: false,\n anchorAlignment: delegate.anchorAlignment,\n anchorAxisAlignment: delegate.anchorAxisAlignment,\n render: (container) => {\n var _a;\n this.lastContainer = container;\n const className = delegate.getMenuClassName ? delegate.getMenuClassName() : '';\n if (className) {\n container.className += ' ' + className;\n }\n // Render invisible div to block mouse interaction in the rest of the UI\n if (this.options.blockMouse) {\n this.block = container.appendChild((0,_base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.$)('.context-view-block'));\n this.block.style.position = 'fixed';\n this.block.style.cursor = 'initial';\n this.block.style.left = '0';\n this.block.style.top = '0';\n this.block.style.width = '100%';\n this.block.style.height = '100%';\n this.block.style.zIndex = '-1';\n (_a = this.blockDisposable) === null || _a === void 0 ? void 0 : _a.dispose();\n this.blockDisposable = (0,_base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.addDisposableListener)(this.block, _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.EventType.MOUSE_DOWN, e => e.stopPropagation());\n }\n const menuDisposables = new _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_5__.DisposableStore();\n const actionRunner = delegate.actionRunner || new _base_common_actions_js__WEBPACK_IMPORTED_MODULE_3__.ActionRunner();\n actionRunner.onWillRun(evt => this.onActionRun(evt, !delegate.skipTelemetry), this, menuDisposables);\n actionRunner.onDidRun(this.onDidActionRun, this, menuDisposables);\n menu = new _base_browser_ui_menu_menu_js__WEBPACK_IMPORTED_MODULE_2__.Menu(container, actions, {\n actionViewItemProvider: delegate.getActionViewItem,\n context: delegate.getActionsContext ? delegate.getActionsContext() : null,\n actionRunner,\n getKeyBinding: delegate.getKeyBinding ? delegate.getKeyBinding : action => this.keybindingService.lookupKeybinding(action.id)\n }, _theme_browser_defaultStyles_js__WEBPACK_IMPORTED_MODULE_6__.defaultMenuStyles);\n menu.onDidCancel(() => this.contextViewService.hideContextView(true), null, menuDisposables);\n menu.onDidBlur(() => this.contextViewService.hideContextView(true), null, menuDisposables);\n const targetWindow = (0,_base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.getWindow)(container);\n menuDisposables.add((0,_base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.addDisposableListener)(targetWindow, _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.EventType.BLUR, () => this.contextViewService.hideContextView(true)));\n menuDisposables.add((0,_base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.addDisposableListener)(targetWindow, _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.EventType.MOUSE_DOWN, (e) => {\n if (e.defaultPrevented) {\n return;\n }\n const event = new _base_browser_mouseEvent_js__WEBPACK_IMPORTED_MODULE_1__.StandardMouseEvent(targetWindow, e);\n let element = event.target;\n // Don't do anything as we are likely creating a context menu\n if (event.rightButton) {\n return;\n }\n while (element) {\n if (element === container) {\n return;\n }\n element = element.parentElement;\n }\n this.contextViewService.hideContextView(true);\n }));\n return (0,_base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_5__.combinedDisposable)(menuDisposables, menu);\n },\n focus: () => {\n menu === null || menu === void 0 ? void 0 : menu.focus(!!delegate.autoSelectFirstItem);\n },\n onHide: (didCancel) => {\n var _a, _b, _c;\n (_a = delegate.onHide) === null || _a === void 0 ? void 0 : _a.call(delegate, !!didCancel);\n if (this.block) {\n this.block.remove();\n this.block = null;\n }\n (_b = this.blockDisposable) === null || _b === void 0 ? void 0 : _b.dispose();\n this.blockDisposable = null;\n if (!!this.lastContainer && ((0,_base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.getActiveElement)() === this.lastContainer || (0,_base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.isAncestor)((0,_base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.getActiveElement)(), this.lastContainer))) {\n (_c = this.focusToReturn) === null || _c === void 0 ? void 0 : _c.focus();\n }\n this.lastContainer = null;\n }\n }, shadowRootElement, !!shadowRootElement);\n }\n onActionRun(e, logTelemetry) {\n if (logTelemetry) {\n this.telemetryService.publicLog2('workbenchActionExecuted', { id: e.action.id, from: 'contextMenu' });\n }\n this.contextViewService.hideContextView(false);\n }\n onDidActionRun(e) {\n if (e.error && !(0,_base_common_errors_js__WEBPACK_IMPORTED_MODULE_4__.isCancellationError)(e.error)) {\n this.notificationService.error(e.error);\n }\n }\n}\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/platform/contextview/browser/contextMenuHandler.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/platform/contextview/browser/contextMenuService.js":
/*!**********************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/platform/contextview/browser/contextMenuService.js ***!
\**********************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ ContextMenuMenuDelegate: () => (/* binding */ ContextMenuMenuDelegate),\n/* harmony export */ ContextMenuService: () => (/* binding */ ContextMenuService)\n/* harmony export */ });\n/* harmony import */ var _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../base/browser/dom.js */ \"./node_modules/monaco-editor/esm/vs/base/browser/dom.js\");\n/* harmony import */ var _base_common_actions_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../base/common/actions.js */ \"./node_modules/monaco-editor/esm/vs/base/common/actions.js\");\n/* harmony import */ var _base_common_event_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../base/common/event.js */ \"./node_modules/monaco-editor/esm/vs/base/common/event.js\");\n/* harmony import */ var _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../../base/common/lifecycle.js */ \"./node_modules/monaco-editor/esm/vs/base/common/lifecycle.js\");\n/* harmony import */ var _actions_browser_menuEntryActionViewItem_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../actions/browser/menuEntryActionViewItem.js */ \"./node_modules/monaco-editor/esm/vs/platform/actions/browser/menuEntryActionViewItem.js\");\n/* harmony import */ var _actions_common_actions_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../../actions/common/actions.js */ \"./node_modules/monaco-editor/esm/vs/platform/actions/common/actions.js\");\n/* harmony import */ var _contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../../contextkey/common/contextkey.js */ \"./node_modules/monaco-editor/esm/vs/platform/contextkey/common/contextkey.js\");\n/* harmony import */ var _keybinding_common_keybinding_js__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ../../keybinding/common/keybinding.js */ \"./node_modules/monaco-editor/esm/vs/platform/keybinding/common/keybinding.js\");\n/* harmony import */ var _notification_common_notification_js__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ../../notification/common/notification.js */ \"./node_modules/monaco-editor/esm/vs/platform/notification/common/notification.js\");\n/* harmony import */ var _telemetry_common_telemetry_js__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ../../telemetry/common/telemetry.js */ \"./node_modules/monaco-editor/esm/vs/platform/telemetry/common/telemetry.js\");\n/* harmony import */ var _contextMenuHandler_js__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! ./contextMenuHandler.js */ \"./node_modules/monaco-editor/esm/vs/platform/contextview/browser/contextMenuHandler.js\");\n/* harmony import */ var _contextView_js__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(/*! ./contextView.js */ \"./node_modules/monaco-editor/esm/vs/platform/contextview/browser/contextView.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\nvar __decorate = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\n return c > 3 && r && Object.defineProperty(target, key, r), r;\n};\nvar __param = (undefined && undefined.__param) || function (paramIndex, decorator) {\n return function (target, key) { decorator(target, key, paramIndex); }\n};\n\n\n\n\n\n\n\n\n\n\n\n\nlet ContextMenuService = class ContextMenuService extends _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_3__.Disposable {\n get contextMenuHandler() {\n if (!this._contextMenuHandler) {\n this._contextMenuHandler = new _contextMenuHandler_js__WEBPACK_IMPORTED_MODULE_10__.ContextMenuHandler(this.contextViewService, this.telemetryService, this.notificationService, this.keybindingService);\n }\n return this._contextMenuHandler;\n }\n constructor(telemetryService, notificationService, contextViewService, keybindingService, menuService, contextKeyService) {\n super();\n this.telemetryService = telemetryService;\n this.notificationService = notificationService;\n this.contextViewService = contextViewService;\n this.keybindingService = keybindingService;\n this.menuService = menuService;\n this.contextKeyService = contextKeyService;\n this._contextMenuHandler = undefined;\n this._onDidShowContextMenu = this._store.add(new _base_common_event_js__WEBPACK_IMPORTED_MODULE_2__.Emitter());\n this.onDidShowContextMenu = this._onDidShowContextMenu.event;\n this._onDidHideContextMenu = this._store.add(new _base_common_event_js__WEBPACK_IMPORTED_MODULE_2__.Emitter());\n }\n configure(options) {\n this.contextMenuHandler.configure(options);\n }\n // ContextMenu\n showContextMenu(delegate) {\n delegate = ContextMenuMenuDelegate.transform(delegate, this.menuService, this.contextKeyService);\n this.contextMenuHandler.showContextMenu({\n ...delegate,\n onHide: (didCancel) => {\n var _a;\n (_a = delegate.onHide) === null || _a === void 0 ? void 0 : _a.call(delegate, didCancel);\n this._onDidHideContextMenu.fire();\n }\n });\n _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.ModifierKeyEmitter.getInstance().resetKeyStatus();\n this._onDidShowContextMenu.fire();\n }\n};\nContextMenuService = __decorate([\n __param(0, _telemetry_common_telemetry_js__WEBPACK_IMPORTED_MODULE_9__.ITelemetryService),\n __param(1, _notification_common_notification_js__WEBPACK_IMPORTED_MODULE_8__.INotificationService),\n __param(2, _contextView_js__WEBPACK_IMPORTED_MODULE_11__.IContextViewService),\n __param(3, _keybinding_common_keybinding_js__WEBPACK_IMPORTED_MODULE_7__.IKeybindingService),\n __param(4, _actions_common_actions_js__WEBPACK_IMPORTED_MODULE_5__.IMenuService),\n __param(5, _contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_6__.IContextKeyService)\n], ContextMenuService);\n\nvar ContextMenuMenuDelegate;\n(function (ContextMenuMenuDelegate) {\n function is(thing) {\n return thing && thing.menuId instanceof _actions_common_actions_js__WEBPACK_IMPORTED_MODULE_5__.MenuId;\n }\n function transform(delegate, menuService, globalContextKeyService) {\n if (!is(delegate)) {\n return delegate;\n }\n const { menuId, menuActionOptions, contextKeyService } = delegate;\n return {\n ...delegate,\n getActions: () => {\n const target = [];\n if (menuId) {\n const menu = menuService.createMenu(menuId, contextKeyService !== null && contextKeyService !== void 0 ? contextKeyService : globalContextKeyService);\n (0,_actions_browser_menuEntryActionViewItem_js__WEBPACK_IMPORTED_MODULE_4__.createAndFillInContextMenuActions)(menu, menuActionOptions, target);\n menu.dispose();\n }\n if (!delegate.getActions) {\n return target;\n }\n else {\n return _base_common_actions_js__WEBPACK_IMPORTED_MODULE_1__.Separator.join(delegate.getActions(), target);\n }\n }\n };\n }\n ContextMenuMenuDelegate.transform = transform;\n})(ContextMenuMenuDelegate || (ContextMenuMenuDelegate = {}));\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/platform/contextview/browser/contextMenuService.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/platform/contextview/browser/contextView.js":
/*!***************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/platform/contextview/browser/contextView.js ***!
\***************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ IContextMenuService: () => (/* binding */ IContextMenuService),\n/* harmony export */ IContextViewService: () => (/* binding */ IContextViewService)\n/* harmony export */ });\n/* harmony import */ var _instantiation_common_instantiation_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../instantiation/common/instantiation.js */ \"./node_modules/monaco-editor/esm/vs/platform/instantiation/common/instantiation.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\nconst IContextViewService = (0,_instantiation_common_instantiation_js__WEBPACK_IMPORTED_MODULE_0__.createDecorator)('contextViewService');\nconst IContextMenuService = (0,_instantiation_common_instantiation_js__WEBPACK_IMPORTED_MODULE_0__.createDecorator)('contextMenuService');\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/platform/contextview/browser/contextView.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/platform/contextview/browser/contextViewService.js":
/*!**********************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/platform/contextview/browser/contextViewService.js ***!
\**********************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ ContextViewService: () => (/* binding */ ContextViewService)\n/* harmony export */ });\n/* harmony import */ var _base_browser_ui_contextview_contextview_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../base/browser/ui/contextview/contextview.js */ \"./node_modules/monaco-editor/esm/vs/base/browser/ui/contextview/contextview.js\");\n/* harmony import */ var _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../base/common/lifecycle.js */ \"./node_modules/monaco-editor/esm/vs/base/common/lifecycle.js\");\n/* harmony import */ var _layout_browser_layoutService_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../layout/browser/layoutService.js */ \"./node_modules/monaco-editor/esm/vs/platform/layout/browser/layoutService.js\");\n/* harmony import */ var _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../../base/browser/dom.js */ \"./node_modules/monaco-editor/esm/vs/base/browser/dom.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\nvar __decorate = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\n return c > 3 && r && Object.defineProperty(target, key, r), r;\n};\nvar __param = (undefined && undefined.__param) || function (paramIndex, decorator) {\n return function (target, key) { decorator(target, key, paramIndex); }\n};\n\n\n\n\nlet ContextViewService = class ContextViewService extends _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_1__.Disposable {\n constructor(layoutService) {\n super();\n this.layoutService = layoutService;\n this.currentViewDisposable = _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_1__.Disposable.None;\n this.contextView = this._register(new _base_browser_ui_contextview_contextview_js__WEBPACK_IMPORTED_MODULE_0__.ContextView(this.layoutService.mainContainer, 1 /* ContextViewDOMPosition.ABSOLUTE */));\n this.layout();\n this._register(layoutService.onDidLayoutContainer(() => this.layout()));\n }\n // ContextView\n showContextView(delegate, container, shadowRoot) {\n let domPosition;\n if (container) {\n if (container === this.layoutService.getContainer((0,_base_browser_dom_js__WEBPACK_IMPORTED_MODULE_3__.getWindow)(container))) {\n domPosition = 1 /* ContextViewDOMPosition.ABSOLUTE */;\n }\n else if (shadowRoot) {\n domPosition = 3 /* ContextViewDOMPosition.FIXED_SHADOW */;\n }\n else {\n domPosition = 2 /* ContextViewDOMPosition.FIXED */;\n }\n }\n else {\n domPosition = 1 /* ContextViewDOMPosition.ABSOLUTE */;\n }\n this.contextView.setContainer(container !== null && container !== void 0 ? container : this.layoutService.activeContainer, domPosition);\n this.contextView.show(delegate);\n const disposable = (0,_base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_1__.toDisposable)(() => {\n if (this.currentViewDisposable === disposable) {\n this.hideContextView();\n }\n });\n this.currentViewDisposable = disposable;\n return disposable;\n }\n getContextViewElement() {\n return this.contextView.getViewElement();\n }\n layout() {\n this.contextView.layout();\n }\n hideContextView(data) {\n this.contextView.hide(data);\n }\n dispose() {\n super.dispose();\n this.currentViewDisposable.dispose();\n this.currentViewDisposable = _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_1__.Disposable.None;\n }\n};\nContextViewService = __decorate([\n __param(0, _layout_browser_layoutService_js__WEBPACK_IMPORTED_MODULE_2__.ILayoutService)\n], ContextViewService);\n\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/platform/contextview/browser/contextViewService.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/platform/dialogs/common/dialogs.js":
/*!******************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/platform/dialogs/common/dialogs.js ***!
\******************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ IDialogService: () => (/* binding */ IDialogService)\n/* harmony export */ });\n/* harmony import */ var _instantiation_common_instantiation_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../instantiation/common/instantiation.js */ \"./node_modules/monaco-editor/esm/vs/platform/instantiation/common/instantiation.js\");\n\nconst IDialogService = (0,_instantiation_common_instantiation_js__WEBPACK_IMPORTED_MODULE_0__.createDecorator)('dialogService');\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/platform/dialogs/common/dialogs.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/platform/dnd/browser/dnd.js":
/*!***********************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/platform/dnd/browser/dnd.js ***!
\***********************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ CodeDataTransfers: () => (/* binding */ CodeDataTransfers),\n/* harmony export */ Extensions: () => (/* binding */ Extensions),\n/* harmony export */ LocalSelectionTransfer: () => (/* binding */ LocalSelectionTransfer)\n/* harmony export */ });\n/* harmony import */ var _registry_common_platform_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../registry/common/platform.js */ \"./node_modules/monaco-editor/esm/vs/platform/registry/common/platform.js\");\n\n//#region Editor / Resources DND\nconst CodeDataTransfers = {\n EDITORS: 'CodeEditors',\n FILES: 'CodeFiles'\n};\nclass DragAndDropContributionRegistry {\n}\nconst Extensions = {\n DragAndDropContribution: 'workbench.contributions.dragAndDrop'\n};\n_registry_common_platform_js__WEBPACK_IMPORTED_MODULE_0__.Registry.add(Extensions.DragAndDropContribution, new DragAndDropContributionRegistry());\n//#endregion\n//#region DND Utilities\n/**\n * A singleton to store transfer data during drag & drop operations that are only valid within the application.\n */\nclass LocalSelectionTransfer {\n constructor() {\n // protect against external instantiation\n }\n static getInstance() {\n return LocalSelectionTransfer.INSTANCE;\n }\n hasData(proto) {\n return proto && proto === this.proto;\n }\n getData(proto) {\n if (this.hasData(proto)) {\n return this.data;\n }\n return undefined;\n }\n}\nLocalSelectionTransfer.INSTANCE = new LocalSelectionTransfer();\n//#endregion\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/platform/dnd/browser/dnd.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/platform/editor/common/editor.js":
/*!****************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/platform/editor/common/editor.js ***!
\****************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ EditorOpenSource: () => (/* binding */ EditorOpenSource)\n/* harmony export */ });\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\nvar EditorOpenSource;\n(function (EditorOpenSource) {\n /**\n * Default: the editor is opening via a programmatic call\n * to the editor service API.\n */\n EditorOpenSource[EditorOpenSource[\"API\"] = 0] = \"API\";\n /**\n * Indicates that a user action triggered the opening, e.g.\n * via mouse or keyboard use.\n */\n EditorOpenSource[EditorOpenSource[\"USER\"] = 1] = \"USER\";\n})(EditorOpenSource || (EditorOpenSource = {}));\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/platform/editor/common/editor.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/platform/environment/common/environment.js":
/*!**************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/platform/environment/common/environment.js ***!
\**************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ IEnvironmentService: () => (/* binding */ IEnvironmentService)\n/* harmony export */ });\n/* harmony import */ var _instantiation_common_instantiation_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../instantiation/common/instantiation.js */ \"./node_modules/monaco-editor/esm/vs/platform/instantiation/common/instantiation.js\");\n\nconst IEnvironmentService = (0,_instantiation_common_instantiation_js__WEBPACK_IMPORTED_MODULE_0__.createDecorator)('environmentService');\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/platform/environment/common/environment.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/platform/extensions/common/extensions.js":
/*!************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/platform/extensions/common/extensions.js ***!
\************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ ExtensionIdentifier: () => (/* binding */ ExtensionIdentifier),\n/* harmony export */ ExtensionIdentifierSet: () => (/* binding */ ExtensionIdentifierSet)\n/* harmony export */ });\n/**\n * **!Do not construct directly!**\n *\n * **!Only static methods because it gets serialized!**\n *\n * This represents the \"canonical\" version for an extension identifier. Extension ids\n * have to be case-insensitive (due to the marketplace), but we must ensure case\n * preservation because the extension API is already public at this time.\n *\n * For example, given an extension with the publisher `\"Hello\"` and the name `\"World\"`,\n * its canonical extension identifier is `\"Hello.World\"`. This extension could be\n * referenced in some other extension's dependencies using the string `\"hello.world\"`.\n *\n * To make matters more complicated, an extension can optionally have an UUID. When two\n * extensions have the same UUID, they are considered equal even if their identifier is different.\n */\nclass ExtensionIdentifier {\n constructor(value) {\n this.value = value;\n this._lower = value.toLowerCase();\n }\n /**\n * Gives the value by which to index (for equality).\n */\n static toKey(id) {\n if (typeof id === 'string') {\n return id.toLowerCase();\n }\n return id._lower;\n }\n}\nclass ExtensionIdentifierSet {\n constructor(iterable) {\n this._set = new Set();\n if (iterable) {\n for (const value of iterable) {\n this.add(value);\n }\n }\n }\n add(id) {\n this._set.add(ExtensionIdentifier.toKey(id));\n }\n has(id) {\n return this._set.has(ExtensionIdentifier.toKey(id));\n }\n}\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/platform/extensions/common/extensions.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/platform/files/common/files.js":
/*!**************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/platform/files/common/files.js ***!
\**************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ FileKind: () => (/* binding */ FileKind)\n/* harmony export */ });\n//#endregion\n//#region Utilities\nvar FileKind;\n(function (FileKind) {\n FileKind[FileKind[\"FILE\"] = 0] = \"FILE\";\n FileKind[FileKind[\"FOLDER\"] = 1] = \"FOLDER\";\n FileKind[FileKind[\"ROOT_FOLDER\"] = 2] = \"ROOT_FOLDER\";\n})(FileKind || (FileKind = {}));\n//#endregion\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/platform/files/common/files.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/platform/history/browser/contextScopedHistoryWidget.js":
/*!**************************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/platform/history/browser/contextScopedHistoryWidget.js ***!
\**************************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ ContextScopedFindInput: () => (/* binding */ ContextScopedFindInput),\n/* harmony export */ ContextScopedReplaceInput: () => (/* binding */ ContextScopedReplaceInput),\n/* harmony export */ historyNavigationVisible: () => (/* binding */ historyNavigationVisible),\n/* harmony export */ registerAndCreateHistoryNavigationContext: () => (/* binding */ registerAndCreateHistoryNavigationContext)\n/* harmony export */ });\n/* harmony import */ var _base_browser_ui_findinput_findInput_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../base/browser/ui/findinput/findInput.js */ \"./node_modules/monaco-editor/esm/vs/base/browser/ui/findinput/findInput.js\");\n/* harmony import */ var _base_browser_ui_findinput_replaceInput_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../base/browser/ui/findinput/replaceInput.js */ \"./node_modules/monaco-editor/esm/vs/base/browser/ui/findinput/replaceInput.js\");\n/* harmony import */ var _contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../contextkey/common/contextkey.js */ \"./node_modules/monaco-editor/esm/vs/platform/contextkey/common/contextkey.js\");\n/* harmony import */ var _keybinding_common_keybindingsRegistry_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../keybinding/common/keybindingsRegistry.js */ \"./node_modules/monaco-editor/esm/vs/platform/keybinding/common/keybindingsRegistry.js\");\n/* harmony import */ var _nls_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../../nls.js */ \"./node_modules/monaco-editor/esm/vs/nls.js\");\n/* harmony import */ var _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../../../base/common/lifecycle.js */ \"./node_modules/monaco-editor/esm/vs/base/common/lifecycle.js\");\n/* harmony import */ var _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../../../base/browser/dom.js */ \"./node_modules/monaco-editor/esm/vs/base/browser/dom.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\nvar __decorate = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\n return c > 3 && r && Object.defineProperty(target, key, r), r;\n};\nvar __param = (undefined && undefined.__param) || function (paramIndex, decorator) {\n return function (target, key) { decorator(target, key, paramIndex); }\n};\n\n\n\n\n\n\n\nconst historyNavigationVisible = new _contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_2__.RawContextKey('suggestWidgetVisible', false, (0,_nls_js__WEBPACK_IMPORTED_MODULE_4__.localize)('suggestWidgetVisible', \"Whether suggestion are visible\"));\nconst HistoryNavigationWidgetFocusContext = 'historyNavigationWidgetFocus';\nconst HistoryNavigationForwardsEnablementContext = 'historyNavigationForwardsEnabled';\nconst HistoryNavigationBackwardsEnablementContext = 'historyNavigationBackwardsEnabled';\nlet lastFocusedWidget = undefined;\nconst widgets = [];\nfunction registerAndCreateHistoryNavigationContext(scopedContextKeyService, widget) {\n if (widgets.includes(widget)) {\n throw new Error('Cannot register the same widget multiple times');\n }\n widgets.push(widget);\n const disposableStore = new _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_5__.DisposableStore();\n const historyNavigationWidgetFocus = new _contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_2__.RawContextKey(HistoryNavigationWidgetFocusContext, false).bindTo(scopedContextKeyService);\n const historyNavigationForwardsEnablement = new _contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_2__.RawContextKey(HistoryNavigationForwardsEnablementContext, true).bindTo(scopedContextKeyService);\n const historyNavigationBackwardsEnablement = new _contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_2__.RawContextKey(HistoryNavigationBackwardsEnablementContext, true).bindTo(scopedContextKeyService);\n const onDidFocus = () => {\n historyNavigationWidgetFocus.set(true);\n lastFocusedWidget = widget;\n };\n const onDidBlur = () => {\n historyNavigationWidgetFocus.set(false);\n if (lastFocusedWidget === widget) {\n lastFocusedWidget = undefined;\n }\n };\n // Check for currently being focused\n if ((0,_base_browser_dom_js__WEBPACK_IMPORTED_MODULE_6__.isActiveElement)(widget.element)) {\n onDidFocus();\n }\n disposableStore.add(widget.onDidFocus(() => onDidFocus()));\n disposableStore.add(widget.onDidBlur(() => onDidBlur()));\n disposableStore.add((0,_base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_5__.toDisposable)(() => {\n widgets.splice(widgets.indexOf(widget), 1);\n onDidBlur();\n }));\n return {\n historyNavigationForwardsEnablement,\n historyNavigationBackwardsEnablement,\n dispose() {\n disposableStore.dispose();\n }\n };\n}\nlet ContextScopedFindInput = class ContextScopedFindInput extends _base_browser_ui_findinput_findInput_js__WEBPACK_IMPORTED_MODULE_0__.FindInput {\n constructor(container, contextViewProvider, options, contextKeyService) {\n super(container, contextViewProvider, options);\n const scopedContextKeyService = this._register(contextKeyService.createScoped(this.inputBox.element));\n this._register(registerAndCreateHistoryNavigationContext(scopedContextKeyService, this.inputBox));\n }\n};\nContextScopedFindInput = __decorate([\n __param(3, _contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_2__.IContextKeyService)\n], ContextScopedFindInput);\n\nlet ContextScopedReplaceInput = class ContextScopedReplaceInput extends _base_browser_ui_findinput_replaceInput_js__WEBPACK_IMPORTED_MODULE_1__.ReplaceInput {\n constructor(container, contextViewProvider, options, contextKeyService, showReplaceOptions = false) {\n super(container, contextViewProvider, showReplaceOptions, options);\n const scopedContextKeyService = this._register(contextKeyService.createScoped(this.inputBox.element));\n this._register(registerAndCreateHistoryNavigationContext(scopedContextKeyService, this.inputBox));\n }\n};\nContextScopedReplaceInput = __decorate([\n __param(3, _contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_2__.IContextKeyService)\n], ContextScopedReplaceInput);\n\n_keybinding_common_keybindingsRegistry_js__WEBPACK_IMPORTED_MODULE_3__.KeybindingsRegistry.registerCommandAndKeybindingRule({\n id: 'history.showPrevious',\n weight: 200 /* KeybindingWeight.WorkbenchContrib */,\n when: _contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_2__.ContextKeyExpr.and(_contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_2__.ContextKeyExpr.has(HistoryNavigationWidgetFocusContext), _contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_2__.ContextKeyExpr.equals(HistoryNavigationBackwardsEnablementContext, true), _contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_2__.ContextKeyExpr.not('isComposing'), historyNavigationVisible.isEqualTo(false)),\n primary: 16 /* KeyCode.UpArrow */,\n secondary: [512 /* KeyMod.Alt */ | 16 /* KeyCode.UpArrow */],\n handler: (accessor) => {\n lastFocusedWidget === null || lastFocusedWidget === void 0 ? void 0 : lastFocusedWidget.showPreviousValue();\n }\n});\n_keybinding_common_keybindingsRegistry_js__WEBPACK_IMPORTED_MODULE_3__.KeybindingsRegistry.registerCommandAndKeybindingRule({\n id: 'history.showNext',\n weight: 200 /* KeybindingWeight.WorkbenchContrib */,\n when: _contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_2__.ContextKeyExpr.and(_contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_2__.ContextKeyExpr.has(HistoryNavigationWidgetFocusContext), _contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_2__.ContextKeyExpr.equals(HistoryNavigationForwardsEnablementContext, true), _contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_2__.ContextKeyExpr.not('isComposing'), historyNavigationVisible.isEqualTo(false)),\n primary: 18 /* KeyCode.DownArrow */,\n secondary: [512 /* KeyMod.Alt */ | 18 /* KeyCode.DownArrow */],\n handler: (accessor) => {\n lastFocusedWidget === null || lastFocusedWidget === void 0 ? void 0 : lastFocusedWidget.showNextValue();\n }\n});\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/platform/history/browser/contextScopedHistoryWidget.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/platform/history/browser/historyWidgetKeybindingHint.js":
/*!***************************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/platform/history/browser/historyWidgetKeybindingHint.js ***!
\***************************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ showHistoryKeybindingHint: () => (/* binding */ showHistoryKeybindingHint)\n/* harmony export */ });\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\nfunction showHistoryKeybindingHint(keybindingService) {\n var _a, _b;\n return ((_a = keybindingService.lookupKeybinding('history.showPrevious')) === null || _a === void 0 ? void 0 : _a.getElectronAccelerator()) === 'Up' && ((_b = keybindingService.lookupKeybinding('history.showNext')) === null || _b === void 0 ? void 0 : _b.getElectronAccelerator()) === 'Down';\n}\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/platform/history/browser/historyWidgetKeybindingHint.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/platform/hover/browser/hover.js":
/*!***************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/platform/hover/browser/hover.js ***!
\***************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ IHoverService: () => (/* binding */ IHoverService),\n/* harmony export */ WorkbenchHoverDelegate: () => (/* binding */ WorkbenchHoverDelegate),\n/* harmony export */ nativeHoverDelegate: () => (/* binding */ nativeHoverDelegate)\n/* harmony export */ });\n/* harmony import */ var _instantiation_common_instantiation_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../instantiation/common/instantiation.js */ \"./node_modules/monaco-editor/esm/vs/platform/instantiation/common/instantiation.js\");\n/* harmony import */ var _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../base/common/lifecycle.js */ \"./node_modules/monaco-editor/esm/vs/base/common/lifecycle.js\");\n/* harmony import */ var _configuration_common_configuration_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../configuration/common/configuration.js */ \"./node_modules/monaco-editor/esm/vs/platform/configuration/common/configuration.js\");\n/* harmony import */ var _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../../base/browser/dom.js */ \"./node_modules/monaco-editor/esm/vs/base/browser/dom.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\nvar __decorate = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\n return c > 3 && r && Object.defineProperty(target, key, r), r;\n};\nvar __param = (undefined && undefined.__param) || function (paramIndex, decorator) {\n return function (target, key) { decorator(target, key, paramIndex); }\n};\n\n\n\n\nconst IHoverService = (0,_instantiation_common_instantiation_js__WEBPACK_IMPORTED_MODULE_0__.createDecorator)('hoverService');\nlet WorkbenchHoverDelegate = class WorkbenchHoverDelegate extends _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_1__.Disposable {\n get delay() {\n if (this.instantHover && Date.now() - this.lastHoverHideTime < this.timeLimit) {\n return 0; // show instantly when a hover was recently shown\n }\n return this._delay;\n }\n constructor(placement, instantHover, overrideOptions = {}, configurationService, hoverService) {\n super();\n this.placement = placement;\n this.instantHover = instantHover;\n this.overrideOptions = overrideOptions;\n this.configurationService = configurationService;\n this.hoverService = hoverService;\n this.lastHoverHideTime = Number.MAX_VALUE;\n this.timeLimit = 200;\n this.hoverDisposables = this._register(new _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_1__.DisposableStore());\n this._delay = this.configurationService.getValue('workbench.hover.delay');\n this._register(this.configurationService.onDidChangeConfiguration(e => {\n if (e.affectsConfiguration('workbench.hover.delay')) {\n this._delay = this.configurationService.getValue('workbench.hover.delay');\n }\n }));\n }\n showHover(options, focus) {\n const overrideOptions = typeof this.overrideOptions === 'function' ? this.overrideOptions(options, focus) : this.overrideOptions;\n // close hover on escape\n this.hoverDisposables.clear();\n const targets = options.target instanceof HTMLElement ? [options.target] : options.target.targetElements;\n for (const target of targets) {\n this.hoverDisposables.add((0,_base_browser_dom_js__WEBPACK_IMPORTED_MODULE_3__.addStandardDisposableListener)(target, 'keydown', (e) => {\n if (e.equals(9 /* KeyCode.Escape */)) {\n this.hoverService.hideHover();\n }\n }));\n }\n return this.hoverService.showHover({\n ...options,\n persistence: {\n hideOnHover: true\n },\n ...overrideOptions\n }, focus);\n }\n onDidHideHover() {\n this.hoverDisposables.clear();\n if (this.instantHover) {\n this.lastHoverHideTime = Date.now();\n }\n }\n};\nWorkbenchHoverDelegate = __decorate([\n __param(3, _configuration_common_configuration_js__WEBPACK_IMPORTED_MODULE_2__.IConfigurationService),\n __param(4, IHoverService)\n], WorkbenchHoverDelegate);\n\n// TODO@benibenj remove this, only temp fix for contextviews\nconst nativeHoverDelegate = {\n showHover: function () {\n throw new Error('Native hover function not implemented.');\n },\n delay: 0,\n showNativeHover: true\n};\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/platform/hover/browser/hover.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/platform/instantiation/common/descriptors.js":
/*!****************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/platform/instantiation/common/descriptors.js ***!
\****************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ SyncDescriptor: () => (/* binding */ SyncDescriptor)\n/* harmony export */ });\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\nclass SyncDescriptor {\n constructor(ctor, staticArguments = [], supportsDelayedInstantiation = false) {\n this.ctor = ctor;\n this.staticArguments = staticArguments;\n this.supportsDelayedInstantiation = supportsDelayedInstantiation;\n }\n}\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/platform/instantiation/common/descriptors.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/platform/instantiation/common/extensions.js":
/*!***************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/platform/instantiation/common/extensions.js ***!
\***************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ getSingletonServiceDescriptors: () => (/* binding */ getSingletonServiceDescriptors),\n/* harmony export */ registerSingleton: () => (/* binding */ registerSingleton)\n/* harmony export */ });\n/* harmony import */ var _descriptors_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./descriptors.js */ \"./node_modules/monaco-editor/esm/vs/platform/instantiation/common/descriptors.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\nconst _registry = [];\nfunction registerSingleton(id, ctorOrDescriptor, supportsDelayedInstantiation) {\n if (!(ctorOrDescriptor instanceof _descriptors_js__WEBPACK_IMPORTED_MODULE_0__.SyncDescriptor)) {\n ctorOrDescriptor = new _descriptors_js__WEBPACK_IMPORTED_MODULE_0__.SyncDescriptor(ctorOrDescriptor, [], Boolean(supportsDelayedInstantiation));\n }\n _registry.push([id, ctorOrDescriptor]);\n}\nfunction getSingletonServiceDescriptors() {\n return _registry;\n}\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/platform/instantiation/common/extensions.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/platform/instantiation/common/graph.js":
/*!**********************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/platform/instantiation/common/graph.js ***!
\**********************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ Graph: () => (/* binding */ Graph),\n/* harmony export */ Node: () => (/* binding */ Node)\n/* harmony export */ });\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\nclass Node {\n constructor(key, data) {\n this.key = key;\n this.data = data;\n this.incoming = new Map();\n this.outgoing = new Map();\n }\n}\nclass Graph {\n constructor(_hashFn) {\n this._hashFn = _hashFn;\n this._nodes = new Map();\n // empty\n }\n roots() {\n const ret = [];\n for (const node of this._nodes.values()) {\n if (node.outgoing.size === 0) {\n ret.push(node);\n }\n }\n return ret;\n }\n insertEdge(from, to) {\n const fromNode = this.lookupOrInsertNode(from);\n const toNode = this.lookupOrInsertNode(to);\n fromNode.outgoing.set(toNode.key, toNode);\n toNode.incoming.set(fromNode.key, fromNode);\n }\n removeNode(data) {\n const key = this._hashFn(data);\n this._nodes.delete(key);\n for (const node of this._nodes.values()) {\n node.outgoing.delete(key);\n node.incoming.delete(key);\n }\n }\n lookupOrInsertNode(data) {\n const key = this._hashFn(data);\n let node = this._nodes.get(key);\n if (!node) {\n node = new Node(key, data);\n this._nodes.set(key, node);\n }\n return node;\n }\n isEmpty() {\n return this._nodes.size === 0;\n }\n toString() {\n const data = [];\n for (const [key, value] of this._nodes) {\n data.push(`${key}\\n\\t(-> incoming)[${[...value.incoming.keys()].join(', ')}]\\n\\t(outgoing ->)[${[...value.outgoing.keys()].join(',')}]\\n`);\n }\n return data.join('\\n');\n }\n /**\n * This is brute force and slow and **only** be used\n * to trouble shoot.\n */\n findCycleSlow() {\n for (const [id, node] of this._nodes) {\n const seen = new Set([id]);\n const res = this._findCycle(node, seen);\n if (res) {\n return res;\n }\n }\n return undefined;\n }\n _findCycle(node, seen) {\n for (const [id, outgoing] of node.outgoing) {\n if (seen.has(id)) {\n return [...seen, id].join(' -> ');\n }\n seen.add(id);\n const value = this._findCycle(outgoing, seen);\n if (value) {\n return value;\n }\n seen.delete(id);\n }\n return undefined;\n }\n}\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/platform/instantiation/common/graph.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/platform/instantiation/common/instantiation.js":
/*!******************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/platform/instantiation/common/instantiation.js ***!
\******************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ IInstantiationService: () => (/* binding */ IInstantiationService),\n/* harmony export */ _util: () => (/* binding */ _util),\n/* harmony export */ createDecorator: () => (/* binding */ createDecorator)\n/* harmony export */ });\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n// ------ internal util\nvar _util;\n(function (_util) {\n _util.serviceIds = new Map();\n _util.DI_TARGET = '$di$target';\n _util.DI_DEPENDENCIES = '$di$dependencies';\n function getServiceDependencies(ctor) {\n return ctor[_util.DI_DEPENDENCIES] || [];\n }\n _util.getServiceDependencies = getServiceDependencies;\n})(_util || (_util = {}));\nconst IInstantiationService = createDecorator('instantiationService');\nfunction storeServiceDependency(id, target, index) {\n if (target[_util.DI_TARGET] === target) {\n target[_util.DI_DEPENDENCIES].push({ id, index });\n }\n else {\n target[_util.DI_DEPENDENCIES] = [{ id, index }];\n target[_util.DI_TARGET] = target;\n }\n}\n/**\n * The *only* valid way to create a {{ServiceIdentifier}}.\n */\nfunction createDecorator(serviceId) {\n if (_util.serviceIds.has(serviceId)) {\n return _util.serviceIds.get(serviceId);\n }\n const id = function (target, key, index) {\n if (arguments.length !== 3) {\n throw new Error('@IServiceName-decorator can only be used to decorate a parameter');\n }\n storeServiceDependency(id, target, index);\n };\n id.toString = () => serviceId;\n _util.serviceIds.set(serviceId, id);\n return id;\n}\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/platform/instantiation/common/instantiation.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/platform/instantiation/common/instantiationService.js":
/*!*************************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/platform/instantiation/common/instantiationService.js ***!
\*************************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ InstantiationService: () => (/* binding */ InstantiationService),\n/* harmony export */ Trace: () => (/* binding */ Trace)\n/* harmony export */ });\n/* harmony import */ var _base_common_async_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../base/common/async.js */ \"./node_modules/monaco-editor/esm/vs/base/common/async.js\");\n/* harmony import */ var _base_common_errors_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../base/common/errors.js */ \"./node_modules/monaco-editor/esm/vs/base/common/errors.js\");\n/* harmony import */ var _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../base/common/lifecycle.js */ \"./node_modules/monaco-editor/esm/vs/base/common/lifecycle.js\");\n/* harmony import */ var _descriptors_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./descriptors.js */ \"./node_modules/monaco-editor/esm/vs/platform/instantiation/common/descriptors.js\");\n/* harmony import */ var _graph_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./graph.js */ \"./node_modules/monaco-editor/esm/vs/platform/instantiation/common/graph.js\");\n/* harmony import */ var _instantiation_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./instantiation.js */ \"./node_modules/monaco-editor/esm/vs/platform/instantiation/common/instantiation.js\");\n/* harmony import */ var _serviceCollection_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ./serviceCollection.js */ \"./node_modules/monaco-editor/esm/vs/platform/instantiation/common/serviceCollection.js\");\n/* harmony import */ var _base_common_linkedList_js__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ../../../base/common/linkedList.js */ \"./node_modules/monaco-editor/esm/vs/base/common/linkedList.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n\n\n\n\n\n\n\n// TRACING\nconst _enableAllTracing = false;\nclass CyclicDependencyError extends Error {\n constructor(graph) {\n var _a;\n super('cyclic dependency between services');\n this.message = (_a = graph.findCycleSlow()) !== null && _a !== void 0 ? _a : `UNABLE to detect cycle, dumping graph: \\n${graph.toString()}`;\n }\n}\nclass InstantiationService {\n constructor(_services = new _serviceCollection_js__WEBPACK_IMPORTED_MODULE_6__.ServiceCollection(), _strict = false, _parent, _enableTracing = _enableAllTracing) {\n var _a;\n this._services = _services;\n this._strict = _strict;\n this._parent = _parent;\n this._enableTracing = _enableTracing;\n this._activeInstantiations = new Set();\n this._services.set(_instantiation_js__WEBPACK_IMPORTED_MODULE_5__.IInstantiationService, this);\n this._globalGraph = _enableTracing ? (_a = _parent === null || _parent === void 0 ? void 0 : _parent._globalGraph) !== null && _a !== void 0 ? _a : new _graph_js__WEBPACK_IMPORTED_MODULE_4__.Graph(e => e) : undefined;\n }\n createChild(services) {\n return new InstantiationService(services, this._strict, this, this._enableTracing);\n }\n invokeFunction(fn, ...args) {\n const _trace = Trace.traceInvocation(this._enableTracing, fn);\n let _done = false;\n try {\n const accessor = {\n get: (id) => {\n if (_done) {\n throw (0,_base_common_errors_js__WEBPACK_IMPORTED_MODULE_1__.illegalState)('service accessor is only valid during the invocation of its target method');\n }\n const result = this._getOrCreateServiceInstance(id, _trace);\n if (!result) {\n throw new Error(`[invokeFunction] unknown service '${id}'`);\n }\n return result;\n }\n };\n return fn(accessor, ...args);\n }\n finally {\n _done = true;\n _trace.stop();\n }\n }\n createInstance(ctorOrDescriptor, ...rest) {\n let _trace;\n let result;\n if (ctorOrDescriptor instanceof _descriptors_js__WEBPACK_IMPORTED_MODULE_3__.SyncDescriptor) {\n _trace = Trace.traceCreation(this._enableTracing, ctorOrDescriptor.ctor);\n result = this._createInstance(ctorOrDescriptor.ctor, ctorOrDescriptor.staticArguments.concat(rest), _trace);\n }\n else {\n _trace = Trace.traceCreation(this._enableTracing, ctorOrDescriptor);\n result = this._createInstance(ctorOrDescriptor, rest, _trace);\n }\n _trace.stop();\n return result;\n }\n _createInstance(ctor, args = [], _trace) {\n // arguments defined by service decorators\n const serviceDependencies = _instantiation_js__WEBPACK_IMPORTED_MODULE_5__._util.getServiceDependencies(ctor).sort((a, b) => a.index - b.index);\n const serviceArgs = [];\n for (const dependency of serviceDependencies) {\n const service = this._getOrCreateServiceInstance(dependency.id, _trace);\n if (!service) {\n this._throwIfStrict(`[createInstance] ${ctor.name} depends on UNKNOWN service ${dependency.id}.`, false);\n }\n serviceArgs.push(service);\n }\n const firstServiceArgPos = serviceDependencies.length > 0 ? serviceDependencies[0].index : args.length;\n // check for argument mismatches, adjust static args if needed\n if (args.length !== firstServiceArgPos) {\n console.trace(`[createInstance] First service dependency of ${ctor.name} at position ${firstServiceArgPos + 1} conflicts with ${args.length} static arguments`);\n const delta = firstServiceArgPos - args.length;\n if (delta > 0) {\n args = args.concat(new Array(delta));\n }\n else {\n args = args.slice(0, firstServiceArgPos);\n }\n }\n // now create the instance\n return Reflect.construct(ctor, args.concat(serviceArgs));\n }\n _setServiceInstance(id, instance) {\n if (this._services.get(id) instanceof _descriptors_js__WEBPACK_IMPORTED_MODULE_3__.SyncDescriptor) {\n this._services.set(id, instance);\n }\n else if (this._parent) {\n this._parent._setServiceInstance(id, instance);\n }\n else {\n throw new Error('illegalState - setting UNKNOWN service instance');\n }\n }\n _getServiceInstanceOrDescriptor(id) {\n const instanceOrDesc = this._services.get(id);\n if (!instanceOrDesc && this._parent) {\n return this._parent._getServiceInstanceOrDescriptor(id);\n }\n else {\n return instanceOrDesc;\n }\n }\n _getOrCreateServiceInstance(id, _trace) {\n if (this._globalGraph && this._globalGraphImplicitDependency) {\n this._globalGraph.insertEdge(this._globalGraphImplicitDependency, String(id));\n }\n const thing = this._getServiceInstanceOrDescriptor(id);\n if (thing instanceof _descriptors_js__WEBPACK_IMPORTED_MODULE_3__.SyncDescriptor) {\n return this._safeCreateAndCacheServiceInstance(id, thing, _trace.branch(id, true));\n }\n else {\n _trace.branch(id, false);\n return thing;\n }\n }\n _safeCreateAndCacheServiceInstance(id, desc, _trace) {\n if (this._activeInstantiations.has(id)) {\n throw new Error(`illegal state - RECURSIVELY instantiating service '${id}'`);\n }\n this._activeInstantiations.add(id);\n try {\n return this._createAndCacheServiceInstance(id, desc, _trace);\n }\n finally {\n this._activeInstantiations.delete(id);\n }\n }\n _createAndCacheServiceInstance(id, desc, _trace) {\n var _a;\n const graph = new _graph_js__WEBPACK_IMPORTED_MODULE_4__.Graph(data => data.id.toString());\n let cycleCount = 0;\n const stack = [{ id, desc, _trace }];\n while (stack.length) {\n const item = stack.pop();\n graph.lookupOrInsertNode(item);\n // a weak but working heuristic for cycle checks\n if (cycleCount++ > 1000) {\n throw new CyclicDependencyError(graph);\n }\n // check all dependencies for existence and if they need to be created first\n for (const dependency of _instantiation_js__WEBPACK_IMPORTED_MODULE_5__._util.getServiceDependencies(item.desc.ctor)) {\n const instanceOrDesc = this._getServiceInstanceOrDescriptor(dependency.id);\n if (!instanceOrDesc) {\n this._throwIfStrict(`[createInstance] ${id} depends on ${dependency.id} which is NOT registered.`, true);\n }\n // take note of all service dependencies\n (_a = this._globalGraph) === null || _a === void 0 ? void 0 : _a.insertEdge(String(item.id), String(dependency.id));\n if (instanceOrDesc instanceof _descriptors_js__WEBPACK_IMPORTED_MODULE_3__.SyncDescriptor) {\n const d = { id: dependency.id, desc: instanceOrDesc, _trace: item._trace.branch(dependency.id, true) };\n graph.insertEdge(item, d);\n stack.push(d);\n }\n }\n }\n while (true) {\n const roots = graph.roots();\n // if there is no more roots but still\n // nodes in the graph we have a cycle\n if (roots.length === 0) {\n if (!graph.isEmpty()) {\n throw new CyclicDependencyError(graph);\n }\n break;\n }\n for (const { data } of roots) {\n // Repeat the check for this still being a service sync descriptor. That's because\n // instantiating a dependency might have side-effect and recursively trigger instantiation\n // so that some dependencies are now fullfilled already.\n const instanceOrDesc = this._getServiceInstanceOrDescriptor(data.id);\n if (instanceOrDesc instanceof _descriptors_js__WEBPACK_IMPORTED_MODULE_3__.SyncDescriptor) {\n // create instance and overwrite the service collections\n const instance = this._createServiceInstanceWithOwner(data.id, data.desc.ctor, data.desc.staticArguments, data.desc.supportsDelayedInstantiation, data._trace);\n this._setServiceInstance(data.id, instance);\n }\n graph.removeNode(data);\n }\n }\n return this._getServiceInstanceOrDescriptor(id);\n }\n _createServiceInstanceWithOwner(id, ctor, args = [], supportsDelayedInstantiation, _trace) {\n if (this._services.get(id) instanceof _descriptors_js__WEBPACK_IMPORTED_MODULE_3__.SyncDescriptor) {\n return this._createServiceInstance(id, ctor, args, supportsDelayedInstantiation, _trace);\n }\n else if (this._parent) {\n return this._parent._createServiceInstanceWithOwner(id, ctor, args, supportsDelayedInstantiation, _trace);\n }\n else {\n throw new Error(`illegalState - creating UNKNOWN service instance ${ctor.name}`);\n }\n }\n _createServiceInstance(id, ctor, args = [], supportsDelayedInstantiation, _trace) {\n if (!supportsDelayedInstantiation) {\n // eager instantiation\n return this._createInstance(ctor, args, _trace);\n }\n else {\n const child = new InstantiationService(undefined, this._strict, this, this._enableTracing);\n child._globalGraphImplicitDependency = String(id);\n // Return a proxy object that's backed by an idle value. That\n // strategy is to instantiate services in our idle time or when actually\n // needed but not when injected into a consumer\n // return \"empty events\" when the service isn't instantiated yet\n const earlyListeners = new Map();\n const idle = new _base_common_async_js__WEBPACK_IMPORTED_MODULE_0__.GlobalIdleValue(() => {\n const result = child._createInstance(ctor, args, _trace);\n // early listeners that we kept are now being subscribed to\n // the real service\n for (const [key, values] of earlyListeners) {\n const candidate = result[key];\n if (typeof candidate === 'function') {\n for (const value of values) {\n value.disposable = candidate.apply(result, value.listener);\n }\n }\n }\n earlyListeners.clear();\n return result;\n });\n return new Proxy(Object.create(null), {\n get(target, key) {\n if (!idle.isInitialized) {\n // looks like an event\n if (typeof key === 'string' && (key.startsWith('onDid') || key.startsWith('onWill'))) {\n let list = earlyListeners.get(key);\n if (!list) {\n list = new _base_common_linkedList_js__WEBPACK_IMPORTED_MODULE_7__.LinkedList();\n earlyListeners.set(key, list);\n }\n const event = (callback, thisArg, disposables) => {\n if (idle.isInitialized) {\n return idle.value[key](callback, thisArg, disposables);\n }\n else {\n const entry = { listener: [callback, thisArg, disposables], disposable: undefined };\n const rm = list.push(entry);\n const result = (0,_base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_2__.toDisposable)(() => {\n var _a;\n rm();\n (_a = entry.disposable) === null || _a === void 0 ? void 0 : _a.dispose();\n });\n return result;\n }\n };\n return event;\n }\n }\n // value already exists\n if (key in target) {\n return target[key];\n }\n // create value\n const obj = idle.value;\n let prop = obj[key];\n if (typeof prop !== 'function') {\n return prop;\n }\n prop = prop.bind(obj);\n target[key] = prop;\n return prop;\n },\n set(_target, p, value) {\n idle.value[p] = value;\n return true;\n },\n getPrototypeOf(_target) {\n return ctor.prototype;\n }\n });\n }\n }\n _throwIfStrict(msg, printWarning) {\n if (printWarning) {\n console.warn(msg);\n }\n if (this._strict) {\n throw new Error(msg);\n }\n }\n}\nclass Trace {\n static traceInvocation(_enableTracing, ctor) {\n return !_enableTracing ? Trace._None : new Trace(2 /* TraceType.Invocation */, ctor.name || new Error().stack.split('\\n').slice(3, 4).join('\\n'));\n }\n static traceCreation(_enableTracing, ctor) {\n return !_enableTracing ? Trace._None : new Trace(1 /* TraceType.Creation */, ctor.name);\n }\n constructor(type, name) {\n this.type = type;\n this.name = name;\n this._start = Date.now();\n this._dep = [];\n }\n branch(id, first) {\n const child = new Trace(3 /* TraceType.Branch */, id.toString());\n this._dep.push([id, first, child]);\n return child;\n }\n stop() {\n const dur = Date.now() - this._start;\n Trace._totals += dur;\n let causedCreation = false;\n function printChild(n, trace) {\n const res = [];\n const prefix = new Array(n + 1).join('\\t');\n for (const [id, first, child] of trace._dep) {\n if (first && child) {\n causedCreation = true;\n res.push(`${prefix}CREATES -> ${id}`);\n const nested = printChild(n + 1, child);\n if (nested) {\n res.push(nested);\n }\n }\n else {\n res.push(`${prefix}uses -> ${id}`);\n }\n }\n return res.join('\\n');\n }\n const lines = [\n `${this.type === 1 /* TraceType.Creation */ ? 'CREATE' : 'CALL'} ${this.name}`,\n `${printChild(1, this)}`,\n `DONE, took ${dur.toFixed(2)}ms (grand total ${Trace._totals.toFixed(2)}ms)`\n ];\n if (dur > 2 || causedCreation) {\n Trace.all.add(lines.join('\\n'));\n }\n }\n}\nTrace.all = new Set();\nTrace._None = new class extends Trace {\n constructor() { super(0 /* TraceType.None */, null); }\n stop() { }\n branch() { return this; }\n};\nTrace._totals = 0;\n//#endregion\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/platform/instantiation/common/instantiationService.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/platform/instantiation/common/serviceCollection.js":
/*!**********************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/platform/instantiation/common/serviceCollection.js ***!
\**********************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ ServiceCollection: () => (/* binding */ ServiceCollection)\n/* harmony export */ });\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\nclass ServiceCollection {\n constructor(...entries) {\n this._entries = new Map();\n for (const [id, service] of entries) {\n this.set(id, service);\n }\n }\n set(id, instanceOrDescriptor) {\n const result = this._entries.get(id);\n this._entries.set(id, instanceOrDescriptor);\n return result;\n }\n get(id) {\n return this._entries.get(id);\n }\n}\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/platform/instantiation/common/serviceCollection.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/platform/jsonschemas/common/jsonContributionRegistry.js":
/*!***************************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/platform/jsonschemas/common/jsonContributionRegistry.js ***!
\***************************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ Extensions: () => (/* binding */ Extensions)\n/* harmony export */ });\n/* harmony import */ var _base_common_event_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../base/common/event.js */ \"./node_modules/monaco-editor/esm/vs/base/common/event.js\");\n/* harmony import */ var _registry_common_platform_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../registry/common/platform.js */ \"./node_modules/monaco-editor/esm/vs/platform/registry/common/platform.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n\nconst Extensions = {\n JSONContribution: 'base.contributions.json'\n};\nfunction normalizeId(id) {\n if (id.length > 0 && id.charAt(id.length - 1) === '#') {\n return id.substring(0, id.length - 1);\n }\n return id;\n}\nclass JSONContributionRegistry {\n constructor() {\n this._onDidChangeSchema = new _base_common_event_js__WEBPACK_IMPORTED_MODULE_0__.Emitter();\n this.schemasById = {};\n }\n registerSchema(uri, unresolvedSchemaContent) {\n this.schemasById[normalizeId(uri)] = unresolvedSchemaContent;\n this._onDidChangeSchema.fire(uri);\n }\n notifySchemaChanged(uri) {\n this._onDidChangeSchema.fire(uri);\n }\n}\nconst jsonContributionRegistry = new JSONContributionRegistry();\n_registry_common_platform_js__WEBPACK_IMPORTED_MODULE_1__.Registry.add(Extensions.JSONContribution, jsonContributionRegistry);\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/platform/jsonschemas/common/jsonContributionRegistry.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/platform/keybinding/common/abstractKeybindingService.js":
/*!***************************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/platform/keybinding/common/abstractKeybindingService.js ***!
\***************************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ AbstractKeybindingService: () => (/* binding */ AbstractKeybindingService)\n/* harmony export */ });\n/* harmony import */ var _base_common_async_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../base/common/async.js */ \"./node_modules/monaco-editor/esm/vs/base/common/async.js\");\n/* harmony import */ var _base_common_errors_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../base/common/errors.js */ \"./node_modules/monaco-editor/esm/vs/base/common/errors.js\");\n/* harmony import */ var _base_common_event_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../base/common/event.js */ \"./node_modules/monaco-editor/esm/vs/base/common/event.js\");\n/* harmony import */ var _base_common_ime_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../../base/common/ime.js */ \"./node_modules/monaco-editor/esm/vs/base/common/ime.js\");\n/* harmony import */ var _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../../base/common/lifecycle.js */ \"./node_modules/monaco-editor/esm/vs/base/common/lifecycle.js\");\n/* harmony import */ var _nls_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../../../nls.js */ \"./node_modules/monaco-editor/esm/vs/nls.js\");\n/* harmony import */ var _keybindingResolver_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ./keybindingResolver.js */ \"./node_modules/monaco-editor/esm/vs/platform/keybinding/common/keybindingResolver.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n\n\n\n\n\n\nconst HIGH_FREQ_COMMANDS = /^(cursor|delete|undo|redo|tab|editor\\.action\\.clipboard)/;\nclass AbstractKeybindingService extends _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_4__.Disposable {\n get onDidUpdateKeybindings() {\n return this._onDidUpdateKeybindings ? this._onDidUpdateKeybindings.event : _base_common_event_js__WEBPACK_IMPORTED_MODULE_2__.Event.None; // Sinon stubbing walks properties on prototype\n }\n get inChordMode() {\n return this._currentChords.length > 0;\n }\n constructor(_contextKeyService, _commandService, _telemetryService, _notificationService, _logService) {\n super();\n this._contextKeyService = _contextKeyService;\n this._commandService = _commandService;\n this._telemetryService = _telemetryService;\n this._notificationService = _notificationService;\n this._logService = _logService;\n this._onDidUpdateKeybindings = this._register(new _base_common_event_js__WEBPACK_IMPORTED_MODULE_2__.Emitter());\n this._currentChords = [];\n this._currentChordChecker = new _base_common_async_js__WEBPACK_IMPORTED_MODULE_0__.IntervalTimer();\n this._currentChordStatusMessage = null;\n this._ignoreSingleModifiers = KeybindingModifierSet.EMPTY;\n this._currentSingleModifier = null;\n this._currentSingleModifierClearTimeout = new _base_common_async_js__WEBPACK_IMPORTED_MODULE_0__.TimeoutTimer();\n this._currentlyDispatchingCommandId = null;\n this._logging = false;\n }\n dispose() {\n super.dispose();\n }\n _log(str) {\n if (this._logging) {\n this._logService.info(`[KeybindingService]: ${str}`);\n }\n }\n getKeybindings() {\n return this._getResolver().getKeybindings();\n }\n lookupKeybinding(commandId, context) {\n const result = this._getResolver().lookupPrimaryKeybinding(commandId, context || this._contextKeyService);\n if (!result) {\n return undefined;\n }\n return result.resolvedKeybinding;\n }\n dispatchEvent(e, target) {\n return this._dispatch(e, target);\n }\n // TODO@ulugbekna: update namings to align with `_doDispatch`\n // TODO@ulugbekna: this fn doesn't seem to take into account single-modifier keybindings, eg `shift shift`\n softDispatch(e, target) {\n this._log(`/ Soft dispatching keyboard event`);\n const keybinding = this.resolveKeyboardEvent(e);\n if (keybinding.hasMultipleChords()) {\n console.warn('keyboard event should not be mapped to multiple chords');\n return _keybindingResolver_js__WEBPACK_IMPORTED_MODULE_6__.NoMatchingKb;\n }\n const [firstChord,] = keybinding.getDispatchChords();\n if (firstChord === null) {\n // cannot be dispatched, probably only modifier keys\n this._log(`\\\\ Keyboard event cannot be dispatched`);\n return _keybindingResolver_js__WEBPACK_IMPORTED_MODULE_6__.NoMatchingKb;\n }\n const contextValue = this._contextKeyService.getContext(target);\n const currentChords = this._currentChords.map((({ keypress }) => keypress));\n return this._getResolver().resolve(contextValue, currentChords, firstChord);\n }\n _scheduleLeaveChordMode() {\n const chordLastInteractedTime = Date.now();\n this._currentChordChecker.cancelAndSet(() => {\n if (!this._documentHasFocus()) {\n // Focus has been lost => leave chord mode\n this._leaveChordMode();\n return;\n }\n if (Date.now() - chordLastInteractedTime > 5000) {\n // 5 seconds elapsed => leave chord mode\n this._leaveChordMode();\n }\n }, 500);\n }\n _expectAnotherChord(firstChord, keypressLabel) {\n this._currentChords.push({ keypress: firstChord, label: keypressLabel });\n switch (this._currentChords.length) {\n case 0:\n throw (0,_base_common_errors_js__WEBPACK_IMPORTED_MODULE_1__.illegalState)('impossible');\n case 1:\n // TODO@ulugbekna: revise this message and the one below (at least, fix terminology)\n this._currentChordStatusMessage = this._notificationService.status(_nls_js__WEBPACK_IMPORTED_MODULE_5__.localize('first.chord', \"({0}) was pressed. Waiting for second key of chord...\", keypressLabel));\n break;\n default: {\n const fullKeypressLabel = this._currentChords.map(({ label }) => label).join(', ');\n this._currentChordStatusMessage = this._notificationService.status(_nls_js__WEBPACK_IMPORTED_MODULE_5__.localize('next.chord', \"({0}) was pressed. Waiting for next key of chord...\", fullKeypressLabel));\n }\n }\n this._scheduleLeaveChordMode();\n if (_base_common_ime_js__WEBPACK_IMPORTED_MODULE_3__.IME.enabled) {\n _base_common_ime_js__WEBPACK_IMPORTED_MODULE_3__.IME.disable();\n }\n }\n _leaveChordMode() {\n if (this._currentChordStatusMessage) {\n this._currentChordStatusMessage.dispose();\n this._currentChordStatusMessage = null;\n }\n this._currentChordChecker.cancel();\n this._currentChords = [];\n _base_common_ime_js__WEBPACK_IMPORTED_MODULE_3__.IME.enable();\n }\n _dispatch(e, target) {\n return this._doDispatch(this.resolveKeyboardEvent(e), target, /*isSingleModiferChord*/ false);\n }\n _singleModifierDispatch(e, target) {\n const keybinding = this.resolveKeyboardEvent(e);\n const [singleModifier,] = keybinding.getSingleModifierDispatchChords();\n if (singleModifier) {\n if (this._ignoreSingleModifiers.has(singleModifier)) {\n this._log(`+ Ignoring single modifier ${singleModifier} due to it being pressed together with other keys.`);\n this._ignoreSingleModifiers = KeybindingModifierSet.EMPTY;\n this._currentSingleModifierClearTimeout.cancel();\n this._currentSingleModifier = null;\n return false;\n }\n this._ignoreSingleModifiers = KeybindingModifierSet.EMPTY;\n if (this._currentSingleModifier === null) {\n // we have a valid `singleModifier`, store it for the next keyup, but clear it in 300ms\n this._log(`+ Storing single modifier for possible chord ${singleModifier}.`);\n this._currentSingleModifier = singleModifier;\n this._currentSingleModifierClearTimeout.cancelAndSet(() => {\n this._log(`+ Clearing single modifier due to 300ms elapsed.`);\n this._currentSingleModifier = null;\n }, 300);\n return false;\n }\n if (singleModifier === this._currentSingleModifier) {\n // bingo!\n this._log(`/ Dispatching single modifier chord ${singleModifier} ${singleModifier}`);\n this._currentSingleModifierClearTimeout.cancel();\n this._currentSingleModifier = null;\n return this._doDispatch(keybinding, target, /*isSingleModiferChord*/ true);\n }\n this._log(`+ Clearing single modifier due to modifier mismatch: ${this._currentSingleModifier} ${singleModifier}`);\n this._currentSingleModifierClearTimeout.cancel();\n this._currentSingleModifier = null;\n return false;\n }\n // When pressing a modifier and holding it pressed with any other modifier or key combination,\n // the pressed modifiers should no longer be considered for single modifier dispatch.\n const [firstChord,] = keybinding.getChords();\n this._ignoreSingleModifiers = new KeybindingModifierSet(firstChord);\n if (this._currentSingleModifier !== null) {\n this._log(`+ Clearing single modifier due to other key up.`);\n }\n this._currentSingleModifierClearTimeout.cancel();\n this._currentSingleModifier = null;\n return false;\n }\n _doDispatch(userKeypress, target, isSingleModiferChord = false) {\n var _a;\n let shouldPreventDefault = false;\n if (userKeypress.hasMultipleChords()) { // warn - because user can press a single chord at a time\n console.warn('Unexpected keyboard event mapped to multiple chords');\n return false;\n }\n let userPressedChord = null;\n let currentChords = null;\n if (isSingleModiferChord) {\n // The keybinding is the second keypress of a single modifier chord, e.g. \"shift shift\".\n // A single modifier can only occur when the same modifier is pressed in short sequence,\n // hence we disregard `_currentChord` and use the same modifier instead.\n const [dispatchKeyname,] = userKeypress.getSingleModifierDispatchChords();\n userPressedChord = dispatchKeyname;\n currentChords = dispatchKeyname ? [dispatchKeyname] : []; // TODO@ulugbekna: in the `else` case we assign an empty array - make sure `resolve` can handle an empty array well\n }\n else {\n [userPressedChord,] = userKeypress.getDispatchChords();\n currentChords = this._currentChords.map(({ keypress }) => keypress);\n }\n if (userPressedChord === null) {\n this._log(`\\\\ Keyboard event cannot be dispatched in keydown phase.`);\n // cannot be dispatched, probably only modifier keys\n return shouldPreventDefault;\n }\n const contextValue = this._contextKeyService.getContext(target);\n const keypressLabel = userKeypress.getLabel();\n const resolveResult = this._getResolver().resolve(contextValue, currentChords, userPressedChord);\n switch (resolveResult.kind) {\n case 0 /* ResultKind.NoMatchingKb */: {\n this._logService.trace('KeybindingService#dispatch', keypressLabel, `[ No matching keybinding ]`);\n if (this.inChordMode) {\n const currentChordsLabel = this._currentChords.map(({ label }) => label).join(', ');\n this._log(`+ Leaving multi-chord mode: Nothing bound to \"${currentChordsLabel}, ${keypressLabel}\".`);\n this._notificationService.status(_nls_js__WEBPACK_IMPORTED_MODULE_5__.localize('missing.chord', \"The key combination ({0}, {1}) is not a command.\", currentChordsLabel, keypressLabel), { hideAfter: 10 * 1000 /* 10s */ });\n this._leaveChordMode();\n shouldPreventDefault = true;\n }\n return shouldPreventDefault;\n }\n case 1 /* ResultKind.MoreChordsNeeded */: {\n this._logService.trace('KeybindingService#dispatch', keypressLabel, `[ Several keybindings match - more chords needed ]`);\n shouldPreventDefault = true;\n this._expectAnotherChord(userPressedChord, keypressLabel);\n this._log(this._currentChords.length === 1 ? `+ Entering multi-chord mode...` : `+ Continuing multi-chord mode...`);\n return shouldPreventDefault;\n }\n case 2 /* ResultKind.KbFound */: {\n this._logService.trace('KeybindingService#dispatch', keypressLabel, `[ Will dispatch command ${resolveResult.commandId} ]`);\n if (resolveResult.commandId === null || resolveResult.commandId === '') {\n if (this.inChordMode) {\n const currentChordsLabel = this._currentChords.map(({ label }) => label).join(', ');\n this._log(`+ Leaving chord mode: Nothing bound to \"${currentChordsLabel}, ${keypressLabel}\".`);\n this._notificationService.status(_nls_js__WEBPACK_IMPORTED_MODULE_5__.localize('missing.chord', \"The key combination ({0}, {1}) is not a command.\", currentChordsLabel, keypressLabel), { hideAfter: 10 * 1000 /* 10s */ });\n this._leaveChordMode();\n shouldPreventDefault = true;\n }\n }\n else {\n if (this.inChordMode) {\n this._leaveChordMode();\n }\n if (!resolveResult.isBubble) {\n shouldPreventDefault = true;\n }\n this._log(`+ Invoking command ${resolveResult.commandId}.`);\n this._currentlyDispatchingCommandId = resolveResult.commandId;\n try {\n if (typeof resolveResult.commandArgs === 'undefined') {\n this._commandService.executeCommand(resolveResult.commandId).then(undefined, err => this._notificationService.warn(err));\n }\n else {\n this._commandService.executeCommand(resolveResult.commandId, resolveResult.commandArgs).then(undefined, err => this._notificationService.warn(err));\n }\n }\n finally {\n this._currentlyDispatchingCommandId = null;\n }\n if (!HIGH_FREQ_COMMANDS.test(resolveResult.commandId)) {\n this._telemetryService.publicLog2('workbenchActionExecuted', { id: resolveResult.commandId, from: 'keybinding', detail: (_a = userKeypress.getUserSettingsLabel()) !== null && _a !== void 0 ? _a : undefined });\n }\n }\n return shouldPreventDefault;\n }\n }\n }\n mightProducePrintableCharacter(event) {\n if (event.ctrlKey || event.metaKey) {\n // ignore ctrl/cmd-combination but not shift/alt-combinatios\n return false;\n }\n // weak check for certain ranges. this is properly implemented in a subclass\n // with access to the KeyboardMapperFactory.\n if ((event.keyCode >= 31 /* KeyCode.KeyA */ && event.keyCode <= 56 /* KeyCode.KeyZ */)\n || (event.keyCode >= 21 /* KeyCode.Digit0 */ && event.keyCode <= 30 /* KeyCode.Digit9 */)) {\n return true;\n }\n return false;\n }\n}\nclass KeybindingModifierSet {\n constructor(source) {\n this._ctrlKey = source ? source.ctrlKey : false;\n this._shiftKey = source ? source.shiftKey : false;\n this._altKey = source ? source.altKey : false;\n this._metaKey = source ? source.metaKey : false;\n }\n has(modifier) {\n switch (modifier) {\n case 'ctrl': return this._ctrlKey;\n case 'shift': return this._shiftKey;\n case 'alt': return this._altKey;\n case 'meta': return this._metaKey;\n }\n }\n}\nKeybindingModifierSet.EMPTY = new KeybindingModifierSet(null);\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/platform/keybinding/common/abstractKeybindingService.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/platform/keybinding/common/baseResolvedKeybinding.js":
/*!************************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/platform/keybinding/common/baseResolvedKeybinding.js ***!
\************************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ BaseResolvedKeybinding: () => (/* binding */ BaseResolvedKeybinding)\n/* harmony export */ });\n/* harmony import */ var _base_common_errors_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../base/common/errors.js */ \"./node_modules/monaco-editor/esm/vs/base/common/errors.js\");\n/* harmony import */ var _base_common_keybindingLabels_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../base/common/keybindingLabels.js */ \"./node_modules/monaco-editor/esm/vs/base/common/keybindingLabels.js\");\n/* harmony import */ var _base_common_keybindings_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../base/common/keybindings.js */ \"./node_modules/monaco-editor/esm/vs/base/common/keybindings.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n\n\nclass BaseResolvedKeybinding extends _base_common_keybindings_js__WEBPACK_IMPORTED_MODULE_2__.ResolvedKeybinding {\n constructor(os, chords) {\n super();\n if (chords.length === 0) {\n throw (0,_base_common_errors_js__WEBPACK_IMPORTED_MODULE_0__.illegalArgument)(`chords`);\n }\n this._os = os;\n this._chords = chords;\n }\n getLabel() {\n return _base_common_keybindingLabels_js__WEBPACK_IMPORTED_MODULE_1__.UILabelProvider.toLabel(this._os, this._chords, (keybinding) => this._getLabel(keybinding));\n }\n getAriaLabel() {\n return _base_common_keybindingLabels_js__WEBPACK_IMPORTED_MODULE_1__.AriaLabelProvider.toLabel(this._os, this._chords, (keybinding) => this._getAriaLabel(keybinding));\n }\n getElectronAccelerator() {\n if (this._chords.length > 1) {\n // [Electron Accelerators] Electron cannot handle chords\n return null;\n }\n if (this._chords[0].isDuplicateModifierCase()) {\n // [Electron Accelerators] Electron cannot handle modifier only keybindings\n // e.g. \"shift shift\"\n return null;\n }\n return _base_common_keybindingLabels_js__WEBPACK_IMPORTED_MODULE_1__.ElectronAcceleratorLabelProvider.toLabel(this._os, this._chords, (keybinding) => this._getElectronAccelerator(keybinding));\n }\n getUserSettingsLabel() {\n return _base_common_keybindingLabels_js__WEBPACK_IMPORTED_MODULE_1__.UserSettingsLabelProvider.toLabel(this._os, this._chords, (keybinding) => this._getUserSettingsLabel(keybinding));\n }\n hasMultipleChords() {\n return (this._chords.length > 1);\n }\n getChords() {\n return this._chords.map((keybinding) => this._getChord(keybinding));\n }\n _getChord(keybinding) {\n return new _base_common_keybindings_js__WEBPACK_IMPORTED_MODULE_2__.ResolvedChord(keybinding.ctrlKey, keybinding.shiftKey, keybinding.altKey, keybinding.metaKey, this._getLabel(keybinding), this._getAriaLabel(keybinding));\n }\n getDispatchChords() {\n return this._chords.map((keybinding) => this._getChordDispatch(keybinding));\n }\n getSingleModifierDispatchChords() {\n return this._chords.map((keybinding) => this._getSingleModifierChordDispatch(keybinding));\n }\n}\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/platform/keybinding/common/baseResolvedKeybinding.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/platform/keybinding/common/keybinding.js":
/*!************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/platform/keybinding/common/keybinding.js ***!
\************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ IKeybindingService: () => (/* binding */ IKeybindingService)\n/* harmony export */ });\n/* harmony import */ var _instantiation_common_instantiation_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../instantiation/common/instantiation.js */ \"./node_modules/monaco-editor/esm/vs/platform/instantiation/common/instantiation.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\nconst IKeybindingService = (0,_instantiation_common_instantiation_js__WEBPACK_IMPORTED_MODULE_0__.createDecorator)('keybindingService');\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/platform/keybinding/common/keybinding.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/platform/keybinding/common/keybindingResolver.js":
/*!********************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/platform/keybinding/common/keybindingResolver.js ***!
\********************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ KeybindingResolver: () => (/* binding */ KeybindingResolver),\n/* harmony export */ NoMatchingKb: () => (/* binding */ NoMatchingKb)\n/* harmony export */ });\n/* harmony import */ var _contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../contextkey/common/contextkey.js */ \"./node_modules/monaco-editor/esm/vs/platform/contextkey/common/contextkey.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n// util definitions to make working with the above types easier within this module:\nconst NoMatchingKb = { kind: 0 /* ResultKind.NoMatchingKb */ };\nconst MoreChordsNeeded = { kind: 1 /* ResultKind.MoreChordsNeeded */ };\nfunction KbFound(commandId, commandArgs, isBubble) {\n return { kind: 2 /* ResultKind.KbFound */, commandId, commandArgs, isBubble };\n}\n//#endregion\n/**\n * Stores mappings from keybindings to commands and from commands to keybindings.\n * Given a sequence of chords, `resolve`s which keybinding it matches\n */\nclass KeybindingResolver {\n constructor(\n /** built-in and extension-provided keybindings */\n defaultKeybindings, \n /** user's keybindings */\n overrides, log) {\n var _a;\n this._log = log;\n this._defaultKeybindings = defaultKeybindings;\n this._defaultBoundCommands = new Map();\n for (const defaultKeybinding of defaultKeybindings) {\n const command = defaultKeybinding.command;\n if (command && command.charAt(0) !== '-') {\n this._defaultBoundCommands.set(command, true);\n }\n }\n this._map = new Map();\n this._lookupMap = new Map();\n this._keybindings = KeybindingResolver.handleRemovals([].concat(defaultKeybindings).concat(overrides));\n for (let i = 0, len = this._keybindings.length; i < len; i++) {\n const k = this._keybindings[i];\n if (k.chords.length === 0) {\n // unbound\n continue;\n }\n // substitute with constants that are registered after startup - https://github.com/microsoft/vscode/issues/174218#issuecomment-1437972127\n const when = (_a = k.when) === null || _a === void 0 ? void 0 : _a.substituteConstants();\n if (when && when.type === 0 /* ContextKeyExprType.False */) {\n // when condition is false\n continue;\n }\n this._addKeyPress(k.chords[0], k);\n }\n }\n static _isTargetedForRemoval(defaultKb, keypress, when) {\n if (keypress) {\n for (let i = 0; i < keypress.length; i++) {\n if (keypress[i] !== defaultKb.chords[i]) {\n return false;\n }\n }\n }\n // `true` means always, as does `undefined`\n // so we will treat `true` === `undefined`\n if (when && when.type !== 1 /* ContextKeyExprType.True */) {\n if (!defaultKb.when) {\n return false;\n }\n if (!(0,_contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_0__.expressionsAreEqualWithConstantSubstitution)(when, defaultKb.when)) {\n return false;\n }\n }\n return true;\n }\n /**\n * Looks for rules containing \"-commandId\" and removes them.\n */\n static handleRemovals(rules) {\n // Do a first pass and construct a hash-map for removals\n const removals = new Map();\n for (let i = 0, len = rules.length; i < len; i++) {\n const rule = rules[i];\n if (rule.command && rule.command.charAt(0) === '-') {\n const command = rule.command.substring(1);\n if (!removals.has(command)) {\n removals.set(command, [rule]);\n }\n else {\n removals.get(command).push(rule);\n }\n }\n }\n if (removals.size === 0) {\n // There are no removals\n return rules;\n }\n // Do a second pass and keep only non-removed keybindings\n const result = [];\n for (let i = 0, len = rules.length; i < len; i++) {\n const rule = rules[i];\n if (!rule.command || rule.command.length === 0) {\n result.push(rule);\n continue;\n }\n if (rule.command.charAt(0) === '-') {\n continue;\n }\n const commandRemovals = removals.get(rule.command);\n if (!commandRemovals || !rule.isDefault) {\n result.push(rule);\n continue;\n }\n let isRemoved = false;\n for (const commandRemoval of commandRemovals) {\n const when = commandRemoval.when;\n if (this._isTargetedForRemoval(rule, commandRemoval.chords, when)) {\n isRemoved = true;\n break;\n }\n }\n if (!isRemoved) {\n result.push(rule);\n continue;\n }\n }\n return result;\n }\n _addKeyPress(keypress, item) {\n const conflicts = this._map.get(keypress);\n if (typeof conflicts === 'undefined') {\n // There is no conflict so far\n this._map.set(keypress, [item]);\n this._addToLookupMap(item);\n return;\n }\n for (let i = conflicts.length - 1; i >= 0; i--) {\n const conflict = conflicts[i];\n if (conflict.command === item.command) {\n continue;\n }\n // Test if the shorter keybinding is a prefix of the longer one.\n // If the shorter keybinding is a prefix, it effectively will shadow the longer one and is considered a conflict.\n let isShorterKbPrefix = true;\n for (let i = 1; i < conflict.chords.length && i < item.chords.length; i++) {\n if (conflict.chords[i] !== item.chords[i]) {\n // The ith step does not conflict\n isShorterKbPrefix = false;\n break;\n }\n }\n if (!isShorterKbPrefix) {\n continue;\n }\n if (KeybindingResolver.whenIsEntirelyIncluded(conflict.when, item.when)) {\n // `item` completely overwrites `conflict`\n // Remove conflict from the lookupMap\n this._removeFromLookupMap(conflict);\n }\n }\n conflicts.push(item);\n this._addToLookupMap(item);\n }\n _addToLookupMap(item) {\n if (!item.command) {\n return;\n }\n let arr = this._lookupMap.get(item.command);\n if (typeof arr === 'undefined') {\n arr = [item];\n this._lookupMap.set(item.command, arr);\n }\n else {\n arr.push(item);\n }\n }\n _removeFromLookupMap(item) {\n if (!item.command) {\n return;\n }\n const arr = this._lookupMap.get(item.command);\n if (typeof arr === 'undefined') {\n return;\n }\n for (let i = 0, len = arr.length; i < len; i++) {\n if (arr[i] === item) {\n arr.splice(i, 1);\n return;\n }\n }\n }\n /**\n * Returns true if it is provable `a` implies `b`.\n */\n static whenIsEntirelyIncluded(a, b) {\n if (!b || b.type === 1 /* ContextKeyExprType.True */) {\n return true;\n }\n if (!a || a.type === 1 /* ContextKeyExprType.True */) {\n return false;\n }\n return (0,_contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_0__.implies)(a, b);\n }\n getKeybindings() {\n return this._keybindings;\n }\n lookupPrimaryKeybinding(commandId, context) {\n const items = this._lookupMap.get(commandId);\n if (typeof items === 'undefined' || items.length === 0) {\n return null;\n }\n if (items.length === 1) {\n return items[0];\n }\n for (let i = items.length - 1; i >= 0; i--) {\n const item = items[i];\n if (context.contextMatchesRules(item.when)) {\n return item;\n }\n }\n return items[items.length - 1];\n }\n /**\n * Looks up a keybinding trigged as a result of pressing a sequence of chords - `[...currentChords, keypress]`\n *\n * Example: resolving 3 chords pressed sequentially - `cmd+k cmd+p cmd+i`:\n * \t`currentChords = [ 'cmd+k' , 'cmd+p' ]` and `keypress = `cmd+i` - last pressed chord\n */\n resolve(context, currentChords, keypress) {\n const pressedChords = [...currentChords, keypress];\n this._log(`| Resolving ${pressedChords}`);\n const kbCandidates = this._map.get(pressedChords[0]);\n if (kbCandidates === undefined) {\n // No bindings with such 0-th chord\n this._log(`\\\\ No keybinding entries.`);\n return NoMatchingKb;\n }\n let lookupMap = null;\n if (pressedChords.length < 2) {\n lookupMap = kbCandidates;\n }\n else {\n // Fetch all chord bindings for `currentChords`\n lookupMap = [];\n for (let i = 0, len = kbCandidates.length; i < len; i++) {\n const candidate = kbCandidates[i];\n if (pressedChords.length > candidate.chords.length) { // # of pressed chords can't be less than # of chords in a keybinding to invoke\n continue;\n }\n let prefixMatches = true;\n for (let i = 1; i < pressedChords.length; i++) {\n if (candidate.chords[i] !== pressedChords[i]) {\n prefixMatches = false;\n break;\n }\n }\n if (prefixMatches) {\n lookupMap.push(candidate);\n }\n }\n }\n // check there's a keybinding with a matching when clause\n const result = this._findCommand(context, lookupMap);\n if (!result) {\n this._log(`\\\\ From ${lookupMap.length} keybinding entries, no when clauses matched the context.`);\n return NoMatchingKb;\n }\n // check we got all chords necessary to be sure a particular keybinding needs to be invoked\n if (pressedChords.length < result.chords.length) {\n // The chord sequence is not complete\n this._log(`\\\\ From ${lookupMap.length} keybinding entries, awaiting ${result.chords.length - pressedChords.length} more chord(s), when: ${printWhenExplanation(result.when)}, source: ${printSourceExplanation(result)}.`);\n return MoreChordsNeeded;\n }\n this._log(`\\\\ From ${lookupMap.length} keybinding entries, matched ${result.command}, when: ${printWhenExplanation(result.when)}, source: ${printSourceExplanation(result)}.`);\n return KbFound(result.command, result.commandArgs, result.bubble);\n }\n _findCommand(context, matches) {\n for (let i = matches.length - 1; i >= 0; i--) {\n const k = matches[i];\n if (!KeybindingResolver._contextMatchesRules(context, k.when)) {\n continue;\n }\n return k;\n }\n return null;\n }\n static _contextMatchesRules(context, rules) {\n if (!rules) {\n return true;\n }\n return rules.evaluate(context);\n }\n}\nfunction printWhenExplanation(when) {\n if (!when) {\n return `no when condition`;\n }\n return `${when.serialize()}`;\n}\nfunction printSourceExplanation(kb) {\n return (kb.extensionId\n ? (kb.isBuiltinExtension ? `built-in extension ${kb.extensionId}` : `user extension ${kb.extensionId}`)\n : (kb.isDefault ? `built-in` : `user`));\n}\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/platform/keybinding/common/keybindingResolver.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/platform/keybinding/common/keybindingsRegistry.js":
/*!*********************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/platform/keybinding/common/keybindingsRegistry.js ***!
\*********************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ Extensions: () => (/* binding */ Extensions),\n/* harmony export */ KeybindingsRegistry: () => (/* binding */ KeybindingsRegistry)\n/* harmony export */ });\n/* harmony import */ var _base_common_keybindings_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../base/common/keybindings.js */ \"./node_modules/monaco-editor/esm/vs/base/common/keybindings.js\");\n/* harmony import */ var _base_common_platform_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../base/common/platform.js */ \"./node_modules/monaco-editor/esm/vs/base/common/platform.js\");\n/* harmony import */ var _commands_common_commands_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../commands/common/commands.js */ \"./node_modules/monaco-editor/esm/vs/platform/commands/common/commands.js\");\n/* harmony import */ var _registry_common_platform_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../registry/common/platform.js */ \"./node_modules/monaco-editor/esm/vs/platform/registry/common/platform.js\");\n/* harmony import */ var _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../../base/common/lifecycle.js */ \"./node_modules/monaco-editor/esm/vs/base/common/lifecycle.js\");\n/* harmony import */ var _base_common_linkedList_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../../../base/common/linkedList.js */ \"./node_modules/monaco-editor/esm/vs/base/common/linkedList.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n\n\n\n\n\n/**\n * Stores all built-in and extension-provided keybindings (but not ones that user defines themselves)\n */\nclass KeybindingsRegistryImpl {\n constructor() {\n this._coreKeybindings = new _base_common_linkedList_js__WEBPACK_IMPORTED_MODULE_5__.LinkedList();\n this._extensionKeybindings = [];\n this._cachedMergedKeybindings = null;\n }\n /**\n * Take current platform into account and reduce to primary & secondary.\n */\n static bindToCurrentPlatform(kb) {\n if (_base_common_platform_js__WEBPACK_IMPORTED_MODULE_1__.OS === 1 /* OperatingSystem.Windows */) {\n if (kb && kb.win) {\n return kb.win;\n }\n }\n else if (_base_common_platform_js__WEBPACK_IMPORTED_MODULE_1__.OS === 2 /* OperatingSystem.Macintosh */) {\n if (kb && kb.mac) {\n return kb.mac;\n }\n }\n else {\n if (kb && kb.linux) {\n return kb.linux;\n }\n }\n return kb;\n }\n registerKeybindingRule(rule) {\n const actualKb = KeybindingsRegistryImpl.bindToCurrentPlatform(rule);\n const result = new _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_4__.DisposableStore();\n if (actualKb && actualKb.primary) {\n const kk = (0,_base_common_keybindings_js__WEBPACK_IMPORTED_MODULE_0__.decodeKeybinding)(actualKb.primary, _base_common_platform_js__WEBPACK_IMPORTED_MODULE_1__.OS);\n if (kk) {\n result.add(this._registerDefaultKeybinding(kk, rule.id, rule.args, rule.weight, 0, rule.when));\n }\n }\n if (actualKb && Array.isArray(actualKb.secondary)) {\n for (let i = 0, len = actualKb.secondary.length; i < len; i++) {\n const k = actualKb.secondary[i];\n const kk = (0,_base_common_keybindings_js__WEBPACK_IMPORTED_MODULE_0__.decodeKeybinding)(k, _base_common_platform_js__WEBPACK_IMPORTED_MODULE_1__.OS);\n if (kk) {\n result.add(this._registerDefaultKeybinding(kk, rule.id, rule.args, rule.weight, -i - 1, rule.when));\n }\n }\n }\n return result;\n }\n registerCommandAndKeybindingRule(desc) {\n return (0,_base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_4__.combinedDisposable)(this.registerKeybindingRule(desc), _commands_common_commands_js__WEBPACK_IMPORTED_MODULE_2__.CommandsRegistry.registerCommand(desc));\n }\n _registerDefaultKeybinding(keybinding, commandId, commandArgs, weight1, weight2, when) {\n const remove = this._coreKeybindings.push({\n keybinding: keybinding,\n command: commandId,\n commandArgs: commandArgs,\n when: when,\n weight1: weight1,\n weight2: weight2,\n extensionId: null,\n isBuiltinExtension: false\n });\n this._cachedMergedKeybindings = null;\n return (0,_base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_4__.toDisposable)(() => {\n remove();\n this._cachedMergedKeybindings = null;\n });\n }\n getDefaultKeybindings() {\n if (!this._cachedMergedKeybindings) {\n this._cachedMergedKeybindings = Array.from(this._coreKeybindings).concat(this._extensionKeybindings);\n this._cachedMergedKeybindings.sort(sorter);\n }\n return this._cachedMergedKeybindings.slice(0);\n }\n}\nconst KeybindingsRegistry = new KeybindingsRegistryImpl();\n// Define extension point ids\nconst Extensions = {\n EditorModes: 'platform.keybindingsRegistry'\n};\n_registry_common_platform_js__WEBPACK_IMPORTED_MODULE_3__.Registry.add(Extensions.EditorModes, KeybindingsRegistry);\nfunction sorter(a, b) {\n if (a.weight1 !== b.weight1) {\n return a.weight1 - b.weight1;\n }\n if (a.command && b.command) {\n if (a.command < b.command) {\n return -1;\n }\n if (a.command > b.command) {\n return 1;\n }\n }\n return a.weight2 - b.weight2;\n}\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/platform/keybinding/common/keybindingsRegistry.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/platform/keybinding/common/resolvedKeybindingItem.js":
/*!************************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/platform/keybinding/common/resolvedKeybindingItem.js ***!
\************************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ ResolvedKeybindingItem: () => (/* binding */ ResolvedKeybindingItem),\n/* harmony export */ toEmptyArrayIfContainsNull: () => (/* binding */ toEmptyArrayIfContainsNull)\n/* harmony export */ });\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\nclass ResolvedKeybindingItem {\n constructor(resolvedKeybinding, command, commandArgs, when, isDefault, extensionId, isBuiltinExtension) {\n this._resolvedKeybindingItemBrand = undefined;\n this.resolvedKeybinding = resolvedKeybinding;\n this.chords = resolvedKeybinding ? toEmptyArrayIfContainsNull(resolvedKeybinding.getDispatchChords()) : [];\n if (resolvedKeybinding && this.chords.length === 0) {\n // handle possible single modifier chord keybindings\n this.chords = toEmptyArrayIfContainsNull(resolvedKeybinding.getSingleModifierDispatchChords());\n }\n this.bubble = (command ? command.charCodeAt(0) === 94 /* CharCode.Caret */ : false);\n this.command = this.bubble ? command.substr(1) : command;\n this.commandArgs = commandArgs;\n this.when = when;\n this.isDefault = isDefault;\n this.extensionId = extensionId;\n this.isBuiltinExtension = isBuiltinExtension;\n }\n}\nfunction toEmptyArrayIfContainsNull(arr) {\n const result = [];\n for (let i = 0, len = arr.length; i < len; i++) {\n const element = arr[i];\n if (!element) {\n return [];\n }\n result.push(element);\n }\n return result;\n}\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/platform/keybinding/common/resolvedKeybindingItem.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/platform/keybinding/common/usLayoutResolvedKeybinding.js":
/*!****************************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/platform/keybinding/common/usLayoutResolvedKeybinding.js ***!
\****************************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ USLayoutResolvedKeybinding: () => (/* binding */ USLayoutResolvedKeybinding)\n/* harmony export */ });\n/* harmony import */ var _base_common_keyCodes_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../base/common/keyCodes.js */ \"./node_modules/monaco-editor/esm/vs/base/common/keyCodes.js\");\n/* harmony import */ var _base_common_keybindings_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../base/common/keybindings.js */ \"./node_modules/monaco-editor/esm/vs/base/common/keybindings.js\");\n/* harmony import */ var _baseResolvedKeybinding_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./baseResolvedKeybinding.js */ \"./node_modules/monaco-editor/esm/vs/platform/keybinding/common/baseResolvedKeybinding.js\");\n/* harmony import */ var _resolvedKeybindingItem_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./resolvedKeybindingItem.js */ \"./node_modules/monaco-editor/esm/vs/platform/keybinding/common/resolvedKeybindingItem.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n\n\n\n/**\n * Do not instantiate. Use KeybindingService to get a ResolvedKeybinding seeded with information about the current kb layout.\n */\nclass USLayoutResolvedKeybinding extends _baseResolvedKeybinding_js__WEBPACK_IMPORTED_MODULE_2__.BaseResolvedKeybinding {\n constructor(chords, os) {\n super(os, chords);\n }\n _keyCodeToUILabel(keyCode) {\n if (this._os === 2 /* OperatingSystem.Macintosh */) {\n switch (keyCode) {\n case 15 /* KeyCode.LeftArrow */:\n return '←';\n case 16 /* KeyCode.UpArrow */:\n return '↑';\n case 17 /* KeyCode.RightArrow */:\n return '→';\n case 18 /* KeyCode.DownArrow */:\n return '↓';\n }\n }\n return _base_common_keyCodes_js__WEBPACK_IMPORTED_MODULE_0__.KeyCodeUtils.toString(keyCode);\n }\n _getLabel(chord) {\n if (chord.isDuplicateModifierCase()) {\n return '';\n }\n return this._keyCodeToUILabel(chord.keyCode);\n }\n _getAriaLabel(chord) {\n if (chord.isDuplicateModifierCase()) {\n return '';\n }\n return _base_common_keyCodes_js__WEBPACK_IMPORTED_MODULE_0__.KeyCodeUtils.toString(chord.keyCode);\n }\n _getElectronAccelerator(chord) {\n return _base_common_keyCodes_js__WEBPACK_IMPORTED_MODULE_0__.KeyCodeUtils.toElectronAccelerator(chord.keyCode);\n }\n _getUserSettingsLabel(chord) {\n if (chord.isDuplicateModifierCase()) {\n return '';\n }\n const result = _base_common_keyCodes_js__WEBPACK_IMPORTED_MODULE_0__.KeyCodeUtils.toUserSettingsUS(chord.keyCode);\n return (result ? result.toLowerCase() : result);\n }\n _getChordDispatch(chord) {\n return USLayoutResolvedKeybinding.getDispatchStr(chord);\n }\n static getDispatchStr(chord) {\n if (chord.isModifierKey()) {\n return null;\n }\n let result = '';\n if (chord.ctrlKey) {\n result += 'ctrl+';\n }\n if (chord.shiftKey) {\n result += 'shift+';\n }\n if (chord.altKey) {\n result += 'alt+';\n }\n if (chord.metaKey) {\n result += 'meta+';\n }\n result += _base_common_keyCodes_js__WEBPACK_IMPORTED_MODULE_0__.KeyCodeUtils.toString(chord.keyCode);\n return result;\n }\n _getSingleModifierChordDispatch(keybinding) {\n if (keybinding.keyCode === 5 /* KeyCode.Ctrl */ && !keybinding.shiftKey && !keybinding.altKey && !keybinding.metaKey) {\n return 'ctrl';\n }\n if (keybinding.keyCode === 4 /* KeyCode.Shift */ && !keybinding.ctrlKey && !keybinding.altKey && !keybinding.metaKey) {\n return 'shift';\n }\n if (keybinding.keyCode === 6 /* KeyCode.Alt */ && !keybinding.ctrlKey && !keybinding.shiftKey && !keybinding.metaKey) {\n return 'alt';\n }\n if (keybinding.keyCode === 57 /* KeyCode.Meta */ && !keybinding.ctrlKey && !keybinding.shiftKey && !keybinding.altKey) {\n return 'meta';\n }\n return null;\n }\n /**\n * *NOTE*: Check return value for `KeyCode.Unknown`.\n */\n static _scanCodeToKeyCode(scanCode) {\n const immutableKeyCode = _base_common_keyCodes_js__WEBPACK_IMPORTED_MODULE_0__.IMMUTABLE_CODE_TO_KEY_CODE[scanCode];\n if (immutableKeyCode !== -1 /* KeyCode.DependsOnKbLayout */) {\n return immutableKeyCode;\n }\n switch (scanCode) {\n case 10 /* ScanCode.KeyA */: return 31 /* KeyCode.KeyA */;\n case 11 /* ScanCode.KeyB */: return 32 /* KeyCode.KeyB */;\n case 12 /* ScanCode.KeyC */: return 33 /* KeyCode.KeyC */;\n case 13 /* ScanCode.KeyD */: return 34 /* KeyCode.KeyD */;\n case 14 /* ScanCode.KeyE */: return 35 /* KeyCode.KeyE */;\n case 15 /* ScanCode.KeyF */: return 36 /* KeyCode.KeyF */;\n case 16 /* ScanCode.KeyG */: return 37 /* KeyCode.KeyG */;\n case 17 /* ScanCode.KeyH */: return 38 /* KeyCode.KeyH */;\n case 18 /* ScanCode.KeyI */: return 39 /* KeyCode.KeyI */;\n case 19 /* ScanCode.KeyJ */: return 40 /* KeyCode.KeyJ */;\n case 20 /* ScanCode.KeyK */: return 41 /* KeyCode.KeyK */;\n case 21 /* ScanCode.KeyL */: return 42 /* KeyCode.KeyL */;\n case 22 /* ScanCode.KeyM */: return 43 /* KeyCode.KeyM */;\n case 23 /* ScanCode.KeyN */: return 44 /* KeyCode.KeyN */;\n case 24 /* ScanCode.KeyO */: return 45 /* KeyCode.KeyO */;\n case 25 /* ScanCode.KeyP */: return 46 /* KeyCode.KeyP */;\n case 26 /* ScanCode.KeyQ */: return 47 /* KeyCode.KeyQ */;\n case 27 /* ScanCode.KeyR */: return 48 /* KeyCode.KeyR */;\n case 28 /* ScanCode.KeyS */: return 49 /* KeyCode.KeyS */;\n case 29 /* ScanCode.KeyT */: return 50 /* KeyCode.KeyT */;\n case 30 /* ScanCode.KeyU */: return 51 /* KeyCode.KeyU */;\n case 31 /* ScanCode.KeyV */: return 52 /* KeyCode.KeyV */;\n case 32 /* ScanCode.KeyW */: return 53 /* KeyCode.KeyW */;\n case 33 /* ScanCode.KeyX */: return 54 /* KeyCode.KeyX */;\n case 34 /* ScanCode.KeyY */: return 55 /* KeyCode.KeyY */;\n case 35 /* ScanCode.KeyZ */: return 56 /* KeyCode.KeyZ */;\n case 36 /* ScanCode.Digit1 */: return 22 /* KeyCode.Digit1 */;\n case 37 /* ScanCode.Digit2 */: return 23 /* KeyCode.Digit2 */;\n case 38 /* ScanCode.Digit3 */: return 24 /* KeyCode.Digit3 */;\n case 39 /* ScanCode.Digit4 */: return 25 /* KeyCode.Digit4 */;\n case 40 /* ScanCode.Digit5 */: return 26 /* KeyCode.Digit5 */;\n case 41 /* ScanCode.Digit6 */: return 27 /* KeyCode.Digit6 */;\n case 42 /* ScanCode.Digit7 */: return 28 /* KeyCode.Digit7 */;\n case 43 /* ScanCode.Digit8 */: return 29 /* KeyCode.Digit8 */;\n case 44 /* ScanCode.Digit9 */: return 30 /* KeyCode.Digit9 */;\n case 45 /* ScanCode.Digit0 */: return 21 /* KeyCode.Digit0 */;\n case 51 /* ScanCode.Minus */: return 88 /* KeyCode.Minus */;\n case 52 /* ScanCode.Equal */: return 86 /* KeyCode.Equal */;\n case 53 /* ScanCode.BracketLeft */: return 92 /* KeyCode.BracketLeft */;\n case 54 /* ScanCode.BracketRight */: return 94 /* KeyCode.BracketRight */;\n case 55 /* ScanCode.Backslash */: return 93 /* KeyCode.Backslash */;\n case 56 /* ScanCode.IntlHash */: return 0 /* KeyCode.Unknown */; // missing\n case 57 /* ScanCode.Semicolon */: return 85 /* KeyCode.Semicolon */;\n case 58 /* ScanCode.Quote */: return 95 /* KeyCode.Quote */;\n case 59 /* ScanCode.Backquote */: return 91 /* KeyCode.Backquote */;\n case 60 /* ScanCode.Comma */: return 87 /* KeyCode.Comma */;\n case 61 /* ScanCode.Period */: return 89 /* KeyCode.Period */;\n case 62 /* ScanCode.Slash */: return 90 /* KeyCode.Slash */;\n case 106 /* ScanCode.IntlBackslash */: return 97 /* KeyCode.IntlBackslash */;\n }\n return 0 /* KeyCode.Unknown */;\n }\n static _toKeyCodeChord(chord) {\n if (!chord) {\n return null;\n }\n if (chord instanceof _base_common_keybindings_js__WEBPACK_IMPORTED_MODULE_1__.KeyCodeChord) {\n return chord;\n }\n const keyCode = this._scanCodeToKeyCode(chord.scanCode);\n if (keyCode === 0 /* KeyCode.Unknown */) {\n return null;\n }\n return new _base_common_keybindings_js__WEBPACK_IMPORTED_MODULE_1__.KeyCodeChord(chord.ctrlKey, chord.shiftKey, chord.altKey, chord.metaKey, keyCode);\n }\n static resolveKeybinding(keybinding, os) {\n const chords = (0,_resolvedKeybindingItem_js__WEBPACK_IMPORTED_MODULE_3__.toEmptyArrayIfContainsNull)(keybinding.chords.map(chord => this._toKeyCodeChord(chord)));\n if (chords.length > 0) {\n return [new USLayoutResolvedKeybinding(chords, os)];\n }\n return [];\n }\n}\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/platform/keybinding/common/usLayoutResolvedKeybinding.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/platform/label/common/label.js":
/*!**************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/platform/label/common/label.js ***!
\**************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ ILabelService: () => (/* binding */ ILabelService)\n/* harmony export */ });\n/* harmony import */ var _instantiation_common_instantiation_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../instantiation/common/instantiation.js */ \"./node_modules/monaco-editor/esm/vs/platform/instantiation/common/instantiation.js\");\n\nconst ILabelService = (0,_instantiation_common_instantiation_js__WEBPACK_IMPORTED_MODULE_0__.createDecorator)('labelService');\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/platform/label/common/label.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/platform/layout/browser/layoutService.js":
/*!************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/platform/layout/browser/layoutService.js ***!
\************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ ILayoutService: () => (/* binding */ ILayoutService)\n/* harmony export */ });\n/* harmony import */ var _instantiation_common_instantiation_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../instantiation/common/instantiation.js */ \"./node_modules/monaco-editor/esm/vs/platform/instantiation/common/instantiation.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\nconst ILayoutService = (0,_instantiation_common_instantiation_js__WEBPACK_IMPORTED_MODULE_0__.createDecorator)('layoutService');\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/platform/layout/browser/layoutService.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/platform/list/browser/listService.js":
/*!********************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/platform/list/browser/listService.js ***!
\********************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ IListService: () => (/* binding */ IListService),\n/* harmony export */ ListService: () => (/* binding */ ListService),\n/* harmony export */ RawWorkbenchListFocusContextKey: () => (/* binding */ RawWorkbenchListFocusContextKey),\n/* harmony export */ RawWorkbenchListScrollAtBoundaryContextKey: () => (/* binding */ RawWorkbenchListScrollAtBoundaryContextKey),\n/* harmony export */ WorkbenchAsyncDataTree: () => (/* binding */ WorkbenchAsyncDataTree),\n/* harmony export */ WorkbenchCompressibleAsyncDataTree: () => (/* binding */ WorkbenchCompressibleAsyncDataTree),\n/* harmony export */ WorkbenchCompressibleObjectTree: () => (/* binding */ WorkbenchCompressibleObjectTree),\n/* harmony export */ WorkbenchDataTree: () => (/* binding */ WorkbenchDataTree),\n/* harmony export */ WorkbenchList: () => (/* binding */ WorkbenchList),\n/* harmony export */ WorkbenchListDoubleSelection: () => (/* binding */ WorkbenchListDoubleSelection),\n/* harmony export */ WorkbenchListFocusContextKey: () => (/* binding */ WorkbenchListFocusContextKey),\n/* harmony export */ WorkbenchListHasSelectionOrFocus: () => (/* binding */ WorkbenchListHasSelectionOrFocus),\n/* harmony export */ WorkbenchListMultiSelection: () => (/* binding */ WorkbenchListMultiSelection),\n/* harmony export */ WorkbenchListScrollAtBottomContextKey: () => (/* binding */ WorkbenchListScrollAtBottomContextKey),\n/* harmony export */ WorkbenchListScrollAtTopContextKey: () => (/* binding */ WorkbenchListScrollAtTopContextKey),\n/* harmony export */ WorkbenchListSelectionNavigation: () => (/* binding */ WorkbenchListSelectionNavigation),\n/* harmony export */ WorkbenchListSupportsFind: () => (/* binding */ WorkbenchListSupportsFind),\n/* harmony export */ WorkbenchListSupportsMultiSelectContextKey: () => (/* binding */ WorkbenchListSupportsMultiSelectContextKey),\n/* harmony export */ WorkbenchObjectTree: () => (/* binding */ WorkbenchObjectTree),\n/* harmony export */ WorkbenchPagedList: () => (/* binding */ WorkbenchPagedList),\n/* harmony export */ WorkbenchTable: () => (/* binding */ WorkbenchTable),\n/* harmony export */ WorkbenchTreeElementCanCollapse: () => (/* binding */ WorkbenchTreeElementCanCollapse),\n/* harmony export */ WorkbenchTreeElementCanExpand: () => (/* binding */ WorkbenchTreeElementCanExpand),\n/* harmony export */ WorkbenchTreeElementHasChild: () => (/* binding */ WorkbenchTreeElementHasChild),\n/* harmony export */ WorkbenchTreeElementHasParent: () => (/* binding */ WorkbenchTreeElementHasParent),\n/* harmony export */ WorkbenchTreeFindOpen: () => (/* binding */ WorkbenchTreeFindOpen),\n/* harmony export */ WorkbenchTreeStickyScrollFocused: () => (/* binding */ WorkbenchTreeStickyScrollFocused)\n/* harmony export */ });\n/* harmony import */ var _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../base/browser/dom.js */ \"./node_modules/monaco-editor/esm/vs/base/browser/dom.js\");\n/* harmony import */ var _base_browser_ui_list_listPaging_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../base/browser/ui/list/listPaging.js */ \"./node_modules/monaco-editor/esm/vs/base/browser/ui/list/listPaging.js\");\n/* harmony import */ var _base_browser_ui_list_listWidget_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../base/browser/ui/list/listWidget.js */ \"./node_modules/monaco-editor/esm/vs/base/browser/ui/list/listWidget.js\");\n/* harmony import */ var _base_browser_ui_table_tableWidget_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../../base/browser/ui/table/tableWidget.js */ \"./node_modules/monaco-editor/esm/vs/base/browser/ui/table/tableWidget.js\");\n/* harmony import */ var _base_browser_ui_tree_abstractTree_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../../base/browser/ui/tree/abstractTree.js */ \"./node_modules/monaco-editor/esm/vs/base/browser/ui/tree/abstractTree.js\");\n/* harmony import */ var _base_browser_ui_tree_asyncDataTree_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../../../base/browser/ui/tree/asyncDataTree.js */ \"./node_modules/monaco-editor/esm/vs/base/browser/ui/tree/asyncDataTree.js\");\n/* harmony import */ var _base_browser_ui_tree_dataTree_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../../../base/browser/ui/tree/dataTree.js */ \"./node_modules/monaco-editor/esm/vs/base/browser/ui/tree/dataTree.js\");\n/* harmony import */ var _base_browser_ui_tree_objectTree_js__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ../../../base/browser/ui/tree/objectTree.js */ \"./node_modules/monaco-editor/esm/vs/base/browser/ui/tree/objectTree.js\");\n/* harmony import */ var _base_common_event_js__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ../../../base/common/event.js */ \"./node_modules/monaco-editor/esm/vs/base/common/event.js\");\n/* harmony import */ var _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ../../../base/common/lifecycle.js */ \"./node_modules/monaco-editor/esm/vs/base/common/lifecycle.js\");\n/* harmony import */ var _nls_js__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! ../../../nls.js */ \"./node_modules/monaco-editor/esm/vs/nls.js\");\n/* harmony import */ var _configuration_common_configuration_js__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(/*! ../../configuration/common/configuration.js */ \"./node_modules/monaco-editor/esm/vs/platform/configuration/common/configuration.js\");\n/* harmony import */ var _configuration_common_configurationRegistry_js__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(/*! ../../configuration/common/configurationRegistry.js */ \"./node_modules/monaco-editor/esm/vs/platform/configuration/common/configurationRegistry.js\");\n/* harmony import */ var _contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_13__ = __webpack_require__(/*! ../../contextkey/common/contextkey.js */ \"./node_modules/monaco-editor/esm/vs/platform/contextkey/common/contextkey.js\");\n/* harmony import */ var _contextkey_common_contextkeys_js__WEBPACK_IMPORTED_MODULE_14__ = __webpack_require__(/*! ../../contextkey/common/contextkeys.js */ \"./node_modules/monaco-editor/esm/vs/platform/contextkey/common/contextkeys.js\");\n/* harmony import */ var _contextview_browser_contextView_js__WEBPACK_IMPORTED_MODULE_15__ = __webpack_require__(/*! ../../contextview/browser/contextView.js */ \"./node_modules/monaco-editor/esm/vs/platform/contextview/browser/contextView.js\");\n/* harmony import */ var _instantiation_common_instantiation_js__WEBPACK_IMPORTED_MODULE_16__ = __webpack_require__(/*! ../../instantiation/common/instantiation.js */ \"./node_modules/monaco-editor/esm/vs/platform/instantiation/common/instantiation.js\");\n/* harmony import */ var _keybinding_common_keybinding_js__WEBPACK_IMPORTED_MODULE_17__ = __webpack_require__(/*! ../../keybinding/common/keybinding.js */ \"./node_modules/monaco-editor/esm/vs/platform/keybinding/common/keybinding.js\");\n/* harmony import */ var _registry_common_platform_js__WEBPACK_IMPORTED_MODULE_18__ = __webpack_require__(/*! ../../registry/common/platform.js */ \"./node_modules/monaco-editor/esm/vs/platform/registry/common/platform.js\");\n/* harmony import */ var _theme_browser_defaultStyles_js__WEBPACK_IMPORTED_MODULE_19__ = __webpack_require__(/*! ../../theme/browser/defaultStyles.js */ \"./node_modules/monaco-editor/esm/vs/platform/theme/browser/defaultStyles.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\nvar __decorate = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\n return c > 3 && r && Object.defineProperty(target, key, r), r;\n};\nvar __param = (undefined && undefined.__param) || function (paramIndex, decorator) {\n return function (target, key) { decorator(target, key, paramIndex); }\n};\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nconst IListService = (0,_instantiation_common_instantiation_js__WEBPACK_IMPORTED_MODULE_16__.createDecorator)('listService');\nclass ListService {\n get lastFocusedList() {\n return this._lastFocusedWidget;\n }\n constructor() {\n this.disposables = new _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_9__.DisposableStore();\n this.lists = [];\n this._lastFocusedWidget = undefined;\n this._hasCreatedStyleController = false;\n }\n setLastFocusedList(widget) {\n var _a, _b;\n if (widget === this._lastFocusedWidget) {\n return;\n }\n (_a = this._lastFocusedWidget) === null || _a === void 0 ? void 0 : _a.getHTMLElement().classList.remove('last-focused');\n this._lastFocusedWidget = widget;\n (_b = this._lastFocusedWidget) === null || _b === void 0 ? void 0 : _b.getHTMLElement().classList.add('last-focused');\n }\n register(widget, extraContextKeys) {\n if (!this._hasCreatedStyleController) {\n this._hasCreatedStyleController = true;\n // create a shared default tree style sheet for performance reasons\n const styleController = new _base_browser_ui_list_listWidget_js__WEBPACK_IMPORTED_MODULE_2__.DefaultStyleController((0,_base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.createStyleSheet)(), '');\n styleController.style(_theme_browser_defaultStyles_js__WEBPACK_IMPORTED_MODULE_19__.defaultListStyles);\n }\n if (this.lists.some(l => l.widget === widget)) {\n throw new Error('Cannot register the same widget multiple times');\n }\n // Keep in our lists list\n const registeredList = { widget, extraContextKeys };\n this.lists.push(registeredList);\n // Check for currently being focused\n if ((0,_base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.isActiveElement)(widget.getHTMLElement())) {\n this.setLastFocusedList(widget);\n }\n return (0,_base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_9__.combinedDisposable)(widget.onDidFocus(() => this.setLastFocusedList(widget)), (0,_base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_9__.toDisposable)(() => this.lists.splice(this.lists.indexOf(registeredList), 1)), widget.onDidDispose(() => {\n this.lists = this.lists.filter(l => l !== registeredList);\n if (this._lastFocusedWidget === widget) {\n this.setLastFocusedList(undefined);\n }\n }));\n }\n dispose() {\n this.disposables.dispose();\n }\n}\nconst RawWorkbenchListScrollAtBoundaryContextKey = new _contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_13__.RawContextKey('listScrollAtBoundary', 'none');\nconst WorkbenchListScrollAtTopContextKey = _contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_13__.ContextKeyExpr.or(RawWorkbenchListScrollAtBoundaryContextKey.isEqualTo('top'), RawWorkbenchListScrollAtBoundaryContextKey.isEqualTo('both'));\nconst WorkbenchListScrollAtBottomContextKey = _contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_13__.ContextKeyExpr.or(RawWorkbenchListScrollAtBoundaryContextKey.isEqualTo('bottom'), RawWorkbenchListScrollAtBoundaryContextKey.isEqualTo('both'));\nconst RawWorkbenchListFocusContextKey = new _contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_13__.RawContextKey('listFocus', true);\nconst WorkbenchTreeStickyScrollFocused = new _contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_13__.RawContextKey('treestickyScrollFocused', false);\nconst WorkbenchListSupportsMultiSelectContextKey = new _contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_13__.RawContextKey('listSupportsMultiselect', true);\nconst WorkbenchListFocusContextKey = _contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_13__.ContextKeyExpr.and(RawWorkbenchListFocusContextKey, _contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_13__.ContextKeyExpr.not(_contextkey_common_contextkeys_js__WEBPACK_IMPORTED_MODULE_14__.InputFocusedContextKey), WorkbenchTreeStickyScrollFocused.negate());\nconst WorkbenchListHasSelectionOrFocus = new _contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_13__.RawContextKey('listHasSelectionOrFocus', false);\nconst WorkbenchListDoubleSelection = new _contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_13__.RawContextKey('listDoubleSelection', false);\nconst WorkbenchListMultiSelection = new _contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_13__.RawContextKey('listMultiSelection', false);\nconst WorkbenchListSelectionNavigation = new _contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_13__.RawContextKey('listSelectionNavigation', false);\nconst WorkbenchListSupportsFind = new _contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_13__.RawContextKey('listSupportsFind', true);\nconst WorkbenchTreeElementCanCollapse = new _contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_13__.RawContextKey('treeElementCanCollapse', false);\nconst WorkbenchTreeElementHasParent = new _contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_13__.RawContextKey('treeElementHasParent', false);\nconst WorkbenchTreeElementCanExpand = new _contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_13__.RawContextKey('treeElementCanExpand', false);\nconst WorkbenchTreeElementHasChild = new _contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_13__.RawContextKey('treeElementHasChild', false);\nconst WorkbenchTreeFindOpen = new _contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_13__.RawContextKey('treeFindOpen', false);\nconst WorkbenchListTypeNavigationModeKey = 'listTypeNavigationMode';\n/**\n * @deprecated in favor of WorkbenchListTypeNavigationModeKey\n */\nconst WorkbenchListAutomaticKeyboardNavigationLegacyKey = 'listAutomaticKeyboardNavigation';\nfunction createScopedContextKeyService(contextKeyService, widget) {\n const result = contextKeyService.createScoped(widget.getHTMLElement());\n RawWorkbenchListFocusContextKey.bindTo(result);\n return result;\n}\nfunction createScrollObserver(contextKeyService, widget) {\n const listScrollAt = RawWorkbenchListScrollAtBoundaryContextKey.bindTo(contextKeyService);\n const update = () => {\n const atTop = widget.scrollTop === 0;\n // We need a threshold `1` since scrollHeight is rounded.\n // https://developer.mozilla.org/en-US/docs/Web/API/Element/scrollHeight#determine_if_an_element_has_been_totally_scrolled\n const atBottom = widget.scrollHeight - widget.renderHeight - widget.scrollTop < 1;\n if (atTop && atBottom) {\n listScrollAt.set('both');\n }\n else if (atTop) {\n listScrollAt.set('top');\n }\n else if (atBottom) {\n listScrollAt.set('bottom');\n }\n else {\n listScrollAt.set('none');\n }\n };\n update();\n return widget.onDidScroll(update);\n}\nconst multiSelectModifierSettingKey = 'workbench.list.multiSelectModifier';\nconst openModeSettingKey = 'workbench.list.openMode';\nconst horizontalScrollingKey = 'workbench.list.horizontalScrolling';\nconst defaultFindModeSettingKey = 'workbench.list.defaultFindMode';\nconst typeNavigationModeSettingKey = 'workbench.list.typeNavigationMode';\n/** @deprecated in favor of `workbench.list.defaultFindMode` and `workbench.list.typeNavigationMode` */\nconst keyboardNavigationSettingKey = 'workbench.list.keyboardNavigation';\nconst scrollByPageKey = 'workbench.list.scrollByPage';\nconst defaultFindMatchTypeSettingKey = 'workbench.list.defaultFindMatchType';\nconst treeIndentKey = 'workbench.tree.indent';\nconst treeRenderIndentGuidesKey = 'workbench.tree.renderIndentGuides';\nconst listSmoothScrolling = 'workbench.list.smoothScrolling';\nconst mouseWheelScrollSensitivityKey = 'workbench.list.mouseWheelScrollSensitivity';\nconst fastScrollSensitivityKey = 'workbench.list.fastScrollSensitivity';\nconst treeExpandMode = 'workbench.tree.expandMode';\nconst treeStickyScroll = 'workbench.tree.enableStickyScroll';\nconst treeStickyScrollMaxElements = 'workbench.tree.stickyScrollMaxItemCount';\nfunction useAltAsMultipleSelectionModifier(configurationService) {\n return configurationService.getValue(multiSelectModifierSettingKey) === 'alt';\n}\nclass MultipleSelectionController extends _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_9__.Disposable {\n constructor(configurationService) {\n super();\n this.configurationService = configurationService;\n this.useAltAsMultipleSelectionModifier = useAltAsMultipleSelectionModifier(configurationService);\n this.registerListeners();\n }\n registerListeners() {\n this._register(this.configurationService.onDidChangeConfiguration(e => {\n if (e.affectsConfiguration(multiSelectModifierSettingKey)) {\n this.useAltAsMultipleSelectionModifier = useAltAsMultipleSelectionModifier(this.configurationService);\n }\n }));\n }\n isSelectionSingleChangeEvent(event) {\n if (this.useAltAsMultipleSelectionModifier) {\n return event.browserEvent.altKey;\n }\n return (0,_base_browser_ui_list_listWidget_js__WEBPACK_IMPORTED_MODULE_2__.isSelectionSingleChangeEvent)(event);\n }\n isSelectionRangeChangeEvent(event) {\n return (0,_base_browser_ui_list_listWidget_js__WEBPACK_IMPORTED_MODULE_2__.isSelectionRangeChangeEvent)(event);\n }\n}\nfunction toWorkbenchListOptions(accessor, options) {\n var _a;\n const configurationService = accessor.get(_configuration_common_configuration_js__WEBPACK_IMPORTED_MODULE_11__.IConfigurationService);\n const keybindingService = accessor.get(_keybinding_common_keybinding_js__WEBPACK_IMPORTED_MODULE_17__.IKeybindingService);\n const disposables = new _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_9__.DisposableStore();\n const result = {\n ...options,\n keyboardNavigationDelegate: { mightProducePrintableCharacter(e) { return keybindingService.mightProducePrintableCharacter(e); } },\n smoothScrolling: Boolean(configurationService.getValue(listSmoothScrolling)),\n mouseWheelScrollSensitivity: configurationService.getValue(mouseWheelScrollSensitivityKey),\n fastScrollSensitivity: configurationService.getValue(fastScrollSensitivityKey),\n multipleSelectionController: (_a = options.multipleSelectionController) !== null && _a !== void 0 ? _a : disposables.add(new MultipleSelectionController(configurationService)),\n keyboardNavigationEventFilter: createKeyboardNavigationEventFilter(keybindingService),\n scrollByPage: Boolean(configurationService.getValue(scrollByPageKey))\n };\n return [result, disposables];\n}\nlet WorkbenchList = class WorkbenchList extends _base_browser_ui_list_listWidget_js__WEBPACK_IMPORTED_MODULE_2__.List {\n constructor(user, container, delegate, renderers, options, contextKeyService, listService, configurationService, instantiationService) {\n const horizontalScrolling = typeof options.horizontalScrolling !== 'undefined' ? options.horizontalScrolling : Boolean(configurationService.getValue(horizontalScrollingKey));\n const [workbenchListOptions, workbenchListOptionsDisposable] = instantiationService.invokeFunction(toWorkbenchListOptions, options);\n super(user, container, delegate, renderers, {\n keyboardSupport: false,\n ...workbenchListOptions,\n horizontalScrolling,\n });\n this.disposables.add(workbenchListOptionsDisposable);\n this.contextKeyService = createScopedContextKeyService(contextKeyService, this);\n this.disposables.add(createScrollObserver(this.contextKeyService, this));\n this.listSupportsMultiSelect = WorkbenchListSupportsMultiSelectContextKey.bindTo(this.contextKeyService);\n this.listSupportsMultiSelect.set(options.multipleSelectionSupport !== false);\n const listSelectionNavigation = WorkbenchListSelectionNavigation.bindTo(this.contextKeyService);\n listSelectionNavigation.set(Boolean(options.selectionNavigation));\n this.listHasSelectionOrFocus = WorkbenchListHasSelectionOrFocus.bindTo(this.contextKeyService);\n this.listDoubleSelection = WorkbenchListDoubleSelection.bindTo(this.contextKeyService);\n this.listMultiSelection = WorkbenchListMultiSelection.bindTo(this.contextKeyService);\n this.horizontalScrolling = options.horizontalScrolling;\n this._useAltAsMultipleSelectionModifier = useAltAsMultipleSelectionModifier(configurationService);\n this.disposables.add(this.contextKeyService);\n this.disposables.add(listService.register(this));\n this.updateStyles(options.overrideStyles);\n this.disposables.add(this.onDidChangeSelection(() => {\n const selection = this.getSelection();\n const focus = this.getFocus();\n this.contextKeyService.bufferChangeEvents(() => {\n this.listHasSelectionOrFocus.set(selection.length > 0 || focus.length > 0);\n this.listMultiSelection.set(selection.length > 1);\n this.listDoubleSelection.set(selection.length === 2);\n });\n }));\n this.disposables.add(this.onDidChangeFocus(() => {\n const selection = this.getSelection();\n const focus = this.getFocus();\n this.listHasSelectionOrFocus.set(selection.length > 0 || focus.length > 0);\n }));\n this.disposables.add(configurationService.onDidChangeConfiguration(e => {\n if (e.affectsConfiguration(multiSelectModifierSettingKey)) {\n this._useAltAsMultipleSelectionModifier = useAltAsMultipleSelectionModifier(configurationService);\n }\n let options = {};\n if (e.affectsConfiguration(horizontalScrollingKey) && this.horizontalScrolling === undefined) {\n const horizontalScrolling = Boolean(configurationService.getValue(horizontalScrollingKey));\n options = { ...options, horizontalScrolling };\n }\n if (e.affectsConfiguration(scrollByPageKey)) {\n const scrollByPage = Boolean(configurationService.getValue(scrollByPageKey));\n options = { ...options, scrollByPage };\n }\n if (e.affectsConfiguration(listSmoothScrolling)) {\n const smoothScrolling = Boolean(configurationService.getValue(listSmoothScrolling));\n options = { ...options, smoothScrolling };\n }\n if (e.affectsConfiguration(mouseWheelScrollSensitivityKey)) {\n const mouseWheelScrollSensitivity = configurationService.getValue(mouseWheelScrollSensitivityKey);\n options = { ...options, mouseWheelScrollSensitivity };\n }\n if (e.affectsConfiguration(fastScrollSensitivityKey)) {\n const fastScrollSensitivity = configurationService.getValue(fastScrollSensitivityKey);\n options = { ...options, fastScrollSensitivity };\n }\n if (Object.keys(options).length > 0) {\n this.updateOptions(options);\n }\n }));\n this.navigator = new ListResourceNavigator(this, { configurationService, ...options });\n this.disposables.add(this.navigator);\n }\n updateOptions(options) {\n super.updateOptions(options);\n if (options.overrideStyles !== undefined) {\n this.updateStyles(options.overrideStyles);\n }\n if (options.multipleSelectionSupport !== undefined) {\n this.listSupportsMultiSelect.set(!!options.multipleSelectionSupport);\n }\n }\n updateStyles(styles) {\n this.style(styles ? (0,_theme_browser_defaultStyles_js__WEBPACK_IMPORTED_MODULE_19__.getListStyles)(styles) : _theme_browser_defaultStyles_js__WEBPACK_IMPORTED_MODULE_19__.defaultListStyles);\n }\n};\nWorkbenchList = __decorate([\n __param(5, _contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_13__.IContextKeyService),\n __param(6, IListService),\n __param(7, _configuration_common_configuration_js__WEBPACK_IMPORTED_MODULE_11__.IConfigurationService),\n __param(8, _instantiation_common_instantiation_js__WEBPACK_IMPORTED_MODULE_16__.IInstantiationService)\n], WorkbenchList);\n\nlet WorkbenchPagedList = class WorkbenchPagedList extends _base_browser_ui_list_listPaging_js__WEBPACK_IMPORTED_MODULE_1__.PagedList {\n constructor(user, container, delegate, renderers, options, contextKeyService, listService, configurationService, instantiationService) {\n const horizontalScrolling = typeof options.horizontalScrolling !== 'undefined' ? options.horizontalScrolling : Boolean(configurationService.getValue(horizontalScrollingKey));\n const [workbenchListOptions, workbenchListOptionsDisposable] = instantiationService.invokeFunction(toWorkbenchListOptions, options);\n super(user, container, delegate, renderers, {\n keyboardSupport: false,\n ...workbenchListOptions,\n horizontalScrolling,\n });\n this.disposables = new _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_9__.DisposableStore();\n this.disposables.add(workbenchListOptionsDisposable);\n this.contextKeyService = createScopedContextKeyService(contextKeyService, this);\n this.disposables.add(createScrollObserver(this.contextKeyService, this.widget));\n this.horizontalScrolling = options.horizontalScrolling;\n this.listSupportsMultiSelect = WorkbenchListSupportsMultiSelectContextKey.bindTo(this.contextKeyService);\n this.listSupportsMultiSelect.set(options.multipleSelectionSupport !== false);\n const listSelectionNavigation = WorkbenchListSelectionNavigation.bindTo(this.contextKeyService);\n listSelectionNavigation.set(Boolean(options.selectionNavigation));\n this._useAltAsMultipleSelectionModifier = useAltAsMultipleSelectionModifier(configurationService);\n this.disposables.add(this.contextKeyService);\n this.disposables.add(listService.register(this));\n this.updateStyles(options.overrideStyles);\n this.disposables.add(configurationService.onDidChangeConfiguration(e => {\n if (e.affectsConfiguration(multiSelectModifierSettingKey)) {\n this._useAltAsMultipleSelectionModifier = useAltAsMultipleSelectionModifier(configurationService);\n }\n let options = {};\n if (e.affectsConfiguration(horizontalScrollingKey) && this.horizontalScrolling === undefined) {\n const horizontalScrolling = Boolean(configurationService.getValue(horizontalScrollingKey));\n options = { ...options, horizontalScrolling };\n }\n if (e.affectsConfiguration(scrollByPageKey)) {\n const scrollByPage = Boolean(configurationService.getValue(scrollByPageKey));\n options = { ...options, scrollByPage };\n }\n if (e.affectsConfiguration(listSmoothScrolling)) {\n const smoothScrolling = Boolean(configurationService.getValue(listSmoothScrolling));\n options = { ...options, smoothScrolling };\n }\n if (e.affectsConfiguration(mouseWheelScrollSensitivityKey)) {\n const mouseWheelScrollSensitivity = configurationService.getValue(mouseWheelScrollSensitivityKey);\n options = { ...options, mouseWheelScrollSensitivity };\n }\n if (e.affectsConfiguration(fastScrollSensitivityKey)) {\n const fastScrollSensitivity = configurationService.getValue(fastScrollSensitivityKey);\n options = { ...options, fastScrollSensitivity };\n }\n if (Object.keys(options).length > 0) {\n this.updateOptions(options);\n }\n }));\n this.navigator = new ListResourceNavigator(this, { configurationService, ...options });\n this.disposables.add(this.navigator);\n }\n updateOptions(options) {\n super.updateOptions(options);\n if (options.overrideStyles !== undefined) {\n this.updateStyles(options.overrideStyles);\n }\n if (options.multipleSelectionSupport !== undefined) {\n this.listSupportsMultiSelect.set(!!options.multipleSelectionSupport);\n }\n }\n updateStyles(styles) {\n this.style(styles ? (0,_theme_browser_defaultStyles_js__WEBPACK_IMPORTED_MODULE_19__.getListStyles)(styles) : _theme_browser_defaultStyles_js__WEBPACK_IMPORTED_MODULE_19__.defaultListStyles);\n }\n dispose() {\n this.disposables.dispose();\n super.dispose();\n }\n};\nWorkbenchPagedList = __decorate([\n __param(5, _contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_13__.IContextKeyService),\n __param(6, IListService),\n __param(7, _configuration_common_configuration_js__WEBPACK_IMPORTED_MODULE_11__.IConfigurationService),\n __param(8, _instantiation_common_instantiation_js__WEBPACK_IMPORTED_MODULE_16__.IInstantiationService)\n], WorkbenchPagedList);\n\nlet WorkbenchTable = class WorkbenchTable extends _base_browser_ui_table_tableWidget_js__WEBPACK_IMPORTED_MODULE_3__.Table {\n constructor(user, container, delegate, columns, renderers, options, contextKeyService, listService, configurationService, instantiationService) {\n const horizontalScrolling = typeof options.horizontalScrolling !== 'undefined' ? options.horizontalScrolling : Boolean(configurationService.getValue(horizontalScrollingKey));\n const [workbenchListOptions, workbenchListOptionsDisposable] = instantiationService.invokeFunction(toWorkbenchListOptions, options);\n super(user, container, delegate, columns, renderers, {\n keyboardSupport: false,\n ...workbenchListOptions,\n horizontalScrolling,\n });\n this.disposables.add(workbenchListOptionsDisposable);\n this.contextKeyService = createScopedContextKeyService(contextKeyService, this);\n this.disposables.add(createScrollObserver(this.contextKeyService, this));\n this.listSupportsMultiSelect = WorkbenchListSupportsMultiSelectContextKey.bindTo(this.contextKeyService);\n this.listSupportsMultiSelect.set(options.multipleSelectionSupport !== false);\n const listSelectionNavigation = WorkbenchListSelectionNavigation.bindTo(this.contextKeyService);\n listSelectionNavigation.set(Boolean(options.selectionNavigation));\n this.listHasSelectionOrFocus = WorkbenchListHasSelectionOrFocus.bindTo(this.contextKeyService);\n this.listDoubleSelection = WorkbenchListDoubleSelection.bindTo(this.contextKeyService);\n this.listMultiSelection = WorkbenchListMultiSelection.bindTo(this.contextKeyService);\n this.horizontalScrolling = options.horizontalScrolling;\n this._useAltAsMultipleSelectionModifier = useAltAsMultipleSelectionModifier(configurationService);\n this.disposables.add(this.contextKeyService);\n this.disposables.add(listService.register(this));\n this.updateStyles(options.overrideStyles);\n this.disposables.add(this.onDidChangeSelection(() => {\n const selection = this.getSelection();\n const focus = this.getFocus();\n this.contextKeyService.bufferChangeEvents(() => {\n this.listHasSelectionOrFocus.set(selection.length > 0 || focus.length > 0);\n this.listMultiSelection.set(selection.length > 1);\n this.listDoubleSelection.set(selection.length === 2);\n });\n }));\n this.disposables.add(this.onDidChangeFocus(() => {\n const selection = this.getSelection();\n const focus = this.getFocus();\n this.listHasSelectionOrFocus.set(selection.length > 0 || focus.length > 0);\n }));\n this.disposables.add(configurationService.onDidChangeConfiguration(e => {\n if (e.affectsConfiguration(multiSelectModifierSettingKey)) {\n this._useAltAsMultipleSelectionModifier = useAltAsMultipleSelectionModifier(configurationService);\n }\n let options = {};\n if (e.affectsConfiguration(horizontalScrollingKey) && this.horizontalScrolling === undefined) {\n const horizontalScrolling = Boolean(configurationService.getValue(horizontalScrollingKey));\n options = { ...options, horizontalScrolling };\n }\n if (e.affectsConfiguration(scrollByPageKey)) {\n const scrollByPage = Boolean(configurationService.getValue(scrollByPageKey));\n options = { ...options, scrollByPage };\n }\n if (e.affectsConfiguration(listSmoothScrolling)) {\n const smoothScrolling = Boolean(configurationService.getValue(listSmoothScrolling));\n options = { ...options, smoothScrolling };\n }\n if (e.affectsConfiguration(mouseWheelScrollSensitivityKey)) {\n const mouseWheelScrollSensitivity = configurationService.getValue(mouseWheelScrollSensitivityKey);\n options = { ...options, mouseWheelScrollSensitivity };\n }\n if (e.affectsConfiguration(fastScrollSensitivityKey)) {\n const fastScrollSensitivity = configurationService.getValue(fastScrollSensitivityKey);\n options = { ...options, fastScrollSensitivity };\n }\n if (Object.keys(options).length > 0) {\n this.updateOptions(options);\n }\n }));\n this.navigator = new TableResourceNavigator(this, { configurationService, ...options });\n this.disposables.add(this.navigator);\n }\n updateOptions(options) {\n super.updateOptions(options);\n if (options.overrideStyles !== undefined) {\n this.updateStyles(options.overrideStyles);\n }\n if (options.multipleSelectionSupport !== undefined) {\n this.listSupportsMultiSelect.set(!!options.multipleSelectionSupport);\n }\n }\n updateStyles(styles) {\n this.style(styles ? (0,_theme_browser_defaultStyles_js__WEBPACK_IMPORTED_MODULE_19__.getListStyles)(styles) : _theme_browser_defaultStyles_js__WEBPACK_IMPORTED_MODULE_19__.defaultListStyles);\n }\n dispose() {\n this.disposables.dispose();\n super.dispose();\n }\n};\nWorkbenchTable = __decorate([\n __param(6, _contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_13__.IContextKeyService),\n __param(7, IListService),\n __param(8, _configuration_common_configuration_js__WEBPACK_IMPORTED_MODULE_11__.IConfigurationService),\n __param(9, _instantiation_common_instantiation_js__WEBPACK_IMPORTED_MODULE_16__.IInstantiationService)\n], WorkbenchTable);\n\nclass ResourceNavigator extends _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_9__.Disposable {\n constructor(widget, options) {\n var _a;\n super();\n this.widget = widget;\n this._onDidOpen = this._register(new _base_common_event_js__WEBPACK_IMPORTED_MODULE_8__.Emitter());\n this.onDidOpen = this._onDidOpen.event;\n this._register(_base_common_event_js__WEBPACK_IMPORTED_MODULE_8__.Event.filter(this.widget.onDidChangeSelection, e => (0,_base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.isKeyboardEvent)(e.browserEvent))(e => this.onSelectionFromKeyboard(e)));\n this._register(this.widget.onPointer((e) => this.onPointer(e.element, e.browserEvent)));\n this._register(this.widget.onMouseDblClick((e) => this.onMouseDblClick(e.element, e.browserEvent)));\n if (typeof (options === null || options === void 0 ? void 0 : options.openOnSingleClick) !== 'boolean' && (options === null || options === void 0 ? void 0 : options.configurationService)) {\n this.openOnSingleClick = (options === null || options === void 0 ? void 0 : options.configurationService.getValue(openModeSettingKey)) !== 'doubleClick';\n this._register(options === null || options === void 0 ? void 0 : options.configurationService.onDidChangeConfiguration(e => {\n if (e.affectsConfiguration(openModeSettingKey)) {\n this.openOnSingleClick = (options === null || options === void 0 ? void 0 : options.configurationService.getValue(openModeSettingKey)) !== 'doubleClick';\n }\n }));\n }\n else {\n this.openOnSingleClick = (_a = options === null || options === void 0 ? void 0 : options.openOnSingleClick) !== null && _a !== void 0 ? _a : true;\n }\n }\n onSelectionFromKeyboard(event) {\n if (event.elements.length !== 1) {\n return;\n }\n const selectionKeyboardEvent = event.browserEvent;\n const preserveFocus = typeof selectionKeyboardEvent.preserveFocus === 'boolean' ? selectionKeyboardEvent.preserveFocus : true;\n const pinned = typeof selectionKeyboardEvent.pinned === 'boolean' ? selectionKeyboardEvent.pinned : !preserveFocus;\n const sideBySide = false;\n this._open(this.getSelectedElement(), preserveFocus, pinned, sideBySide, event.browserEvent);\n }\n onPointer(element, browserEvent) {\n if (!this.openOnSingleClick) {\n return;\n }\n const isDoubleClick = browserEvent.detail === 2;\n if (isDoubleClick) {\n return;\n }\n const isMiddleClick = browserEvent.button === 1;\n const preserveFocus = true;\n const pinned = isMiddleClick;\n const sideBySide = browserEvent.ctrlKey || browserEvent.metaKey || browserEvent.altKey;\n this._open(element, preserveFocus, pinned, sideBySide, browserEvent);\n }\n onMouseDblClick(element, browserEvent) {\n if (!browserEvent) {\n return;\n }\n // copied from AbstractTree\n const target = browserEvent.target;\n const onTwistie = target.classList.contains('monaco-tl-twistie')\n || (target.classList.contains('monaco-icon-label') && target.classList.contains('folder-icon') && browserEvent.offsetX < 16);\n if (onTwistie) {\n return;\n }\n const preserveFocus = false;\n const pinned = true;\n const sideBySide = (browserEvent.ctrlKey || browserEvent.metaKey || browserEvent.altKey);\n this._open(element, preserveFocus, pinned, sideBySide, browserEvent);\n }\n _open(element, preserveFocus, pinned, sideBySide, browserEvent) {\n if (!element) {\n return;\n }\n this._onDidOpen.fire({\n editorOptions: {\n preserveFocus,\n pinned,\n revealIfVisible: true\n },\n sideBySide,\n element,\n browserEvent\n });\n }\n}\nclass ListResourceNavigator extends ResourceNavigator {\n constructor(widget, options) {\n super(widget, options);\n this.widget = widget;\n }\n getSelectedElement() {\n return this.widget.getSelectedElements()[0];\n }\n}\nclass TableResourceNavigator extends ResourceNavigator {\n constructor(widget, options) {\n super(widget, options);\n }\n getSelectedElement() {\n return this.widget.getSelectedElements()[0];\n }\n}\nclass TreeResourceNavigator extends ResourceNavigator {\n constructor(widget, options) {\n super(widget, options);\n }\n getSelectedElement() {\n var _a;\n return (_a = this.widget.getSelection()[0]) !== null && _a !== void 0 ? _a : undefined;\n }\n}\nfunction createKeyboardNavigationEventFilter(keybindingService) {\n let inMultiChord = false;\n return event => {\n if (event.toKeyCodeChord().isModifierKey()) {\n return false;\n }\n if (inMultiChord) {\n inMultiChord = false;\n return false;\n }\n const result = keybindingService.softDispatch(event, event.target);\n if (result.kind === 1 /* ResultKind.MoreChordsNeeded */) {\n inMultiChord = true;\n return false;\n }\n inMultiChord = false;\n return result.kind === 0 /* ResultKind.NoMatchingKb */;\n };\n}\nlet WorkbenchObjectTree = class WorkbenchObjectTree extends _base_browser_ui_tree_objectTree_js__WEBPACK_IMPORTED_MODULE_7__.ObjectTree {\n constructor(user, container, delegate, renderers, options, instantiationService, contextKeyService, listService, configurationService) {\n const { options: treeOptions, getTypeNavigationMode, disposable } = instantiationService.invokeFunction(workbenchTreeDataPreamble, options);\n super(user, container, delegate, renderers, treeOptions);\n this.disposables.add(disposable);\n this.internals = new WorkbenchTreeInternals(this, options, getTypeNavigationMode, options.overrideStyles, contextKeyService, listService, configurationService);\n this.disposables.add(this.internals);\n }\n updateOptions(options) {\n super.updateOptions(options);\n this.internals.updateOptions(options);\n }\n};\nWorkbenchObjectTree = __decorate([\n __param(5, _instantiation_common_instantiation_js__WEBPACK_IMPORTED_MODULE_16__.IInstantiationService),\n __param(6, _contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_13__.IContextKeyService),\n __param(7, IListService),\n __param(8, _configuration_common_configuration_js__WEBPACK_IMPORTED_MODULE_11__.IConfigurationService)\n], WorkbenchObjectTree);\n\nlet WorkbenchCompressibleObjectTree = class WorkbenchCompressibleObjectTree extends _base_browser_ui_tree_objectTree_js__WEBPACK_IMPORTED_MODULE_7__.CompressibleObjectTree {\n constructor(user, container, delegate, renderers, options, instantiationService, contextKeyService, listService, configurationService) {\n const { options: treeOptions, getTypeNavigationMode, disposable } = instantiationService.invokeFunction(workbenchTreeDataPreamble, options);\n super(user, container, delegate, renderers, treeOptions);\n this.disposables.add(disposable);\n this.internals = new WorkbenchTreeInternals(this, options, getTypeNavigationMode, options.overrideStyles, contextKeyService, listService, configurationService);\n this.disposables.add(this.internals);\n }\n updateOptions(options = {}) {\n super.updateOptions(options);\n if (options.overrideStyles) {\n this.internals.updateStyleOverrides(options.overrideStyles);\n }\n this.internals.updateOptions(options);\n }\n};\nWorkbenchCompressibleObjectTree = __decorate([\n __param(5, _instantiation_common_instantiation_js__WEBPACK_IMPORTED_MODULE_16__.IInstantiationService),\n __param(6, _contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_13__.IContextKeyService),\n __param(7, IListService),\n __param(8, _configuration_common_configuration_js__WEBPACK_IMPORTED_MODULE_11__.IConfigurationService)\n], WorkbenchCompressibleObjectTree);\n\nlet WorkbenchDataTree = class WorkbenchDataTree extends _base_browser_ui_tree_dataTree_js__WEBPACK_IMPORTED_MODULE_6__.DataTree {\n constructor(user, container, delegate, renderers, dataSource, options, instantiationService, contextKeyService, listService, configurationService) {\n const { options: treeOptions, getTypeNavigationMode, disposable } = instantiationService.invokeFunction(workbenchTreeDataPreamble, options);\n super(user, container, delegate, renderers, dataSource, treeOptions);\n this.disposables.add(disposable);\n this.internals = new WorkbenchTreeInternals(this, options, getTypeNavigationMode, options.overrideStyles, contextKeyService, listService, configurationService);\n this.disposables.add(this.internals);\n }\n updateOptions(options = {}) {\n super.updateOptions(options);\n if (options.overrideStyles !== undefined) {\n this.internals.updateStyleOverrides(options.overrideStyles);\n }\n this.internals.updateOptions(options);\n }\n};\nWorkbenchDataTree = __decorate([\n __param(6, _instantiation_common_instantiation_js__WEBPACK_IMPORTED_MODULE_16__.IInstantiationService),\n __param(7, _contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_13__.IContextKeyService),\n __param(8, IListService),\n __param(9, _configuration_common_configuration_js__WEBPACK_IMPORTED_MODULE_11__.IConfigurationService)\n], WorkbenchDataTree);\n\nlet WorkbenchAsyncDataTree = class WorkbenchAsyncDataTree extends _base_browser_ui_tree_asyncDataTree_js__WEBPACK_IMPORTED_MODULE_5__.AsyncDataTree {\n get onDidOpen() { return this.internals.onDidOpen; }\n constructor(user, container, delegate, renderers, dataSource, options, instantiationService, contextKeyService, listService, configurationService) {\n const { options: treeOptions, getTypeNavigationMode, disposable } = instantiationService.invokeFunction(workbenchTreeDataPreamble, options);\n super(user, container, delegate, renderers, dataSource, treeOptions);\n this.disposables.add(disposable);\n this.internals = new WorkbenchTreeInternals(this, options, getTypeNavigationMode, options.overrideStyles, contextKeyService, listService, configurationService);\n this.disposables.add(this.internals);\n }\n updateOptions(options = {}) {\n super.updateOptions(options);\n if (options.overrideStyles) {\n this.internals.updateStyleOverrides(options.overrideStyles);\n }\n this.internals.updateOptions(options);\n }\n};\nWorkbenchAsyncDataTree = __decorate([\n __param(6, _instantiation_common_instantiation_js__WEBPACK_IMPORTED_MODULE_16__.IInstantiationService),\n __param(7, _contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_13__.IContextKeyService),\n __param(8, IListService),\n __param(9, _configuration_common_configuration_js__WEBPACK_IMPORTED_MODULE_11__.IConfigurationService)\n], WorkbenchAsyncDataTree);\n\nlet WorkbenchCompressibleAsyncDataTree = class WorkbenchCompressibleAsyncDataTree extends _base_browser_ui_tree_asyncDataTree_js__WEBPACK_IMPORTED_MODULE_5__.CompressibleAsyncDataTree {\n constructor(user, container, virtualDelegate, compressionDelegate, renderers, dataSource, options, instantiationService, contextKeyService, listService, configurationService) {\n const { options: treeOptions, getTypeNavigationMode, disposable } = instantiationService.invokeFunction(workbenchTreeDataPreamble, options);\n super(user, container, virtualDelegate, compressionDelegate, renderers, dataSource, treeOptions);\n this.disposables.add(disposable);\n this.internals = new WorkbenchTreeInternals(this, options, getTypeNavigationMode, options.overrideStyles, contextKeyService, listService, configurationService);\n this.disposables.add(this.internals);\n }\n updateOptions(options) {\n super.updateOptions(options);\n this.internals.updateOptions(options);\n }\n};\nWorkbenchCompressibleAsyncDataTree = __decorate([\n __param(7, _instantiation_common_instantiation_js__WEBPACK_IMPORTED_MODULE_16__.IInstantiationService),\n __param(8, _contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_13__.IContextKeyService),\n __param(9, IListService),\n __param(10, _configuration_common_configuration_js__WEBPACK_IMPORTED_MODULE_11__.IConfigurationService)\n], WorkbenchCompressibleAsyncDataTree);\n\nfunction getDefaultTreeFindMode(configurationService) {\n const value = configurationService.getValue(defaultFindModeSettingKey);\n if (value === 'highlight') {\n return _base_browser_ui_tree_abstractTree_js__WEBPACK_IMPORTED_MODULE_4__.TreeFindMode.Highlight;\n }\n else if (value === 'filter') {\n return _base_browser_ui_tree_abstractTree_js__WEBPACK_IMPORTED_MODULE_4__.TreeFindMode.Filter;\n }\n const deprecatedValue = configurationService.getValue(keyboardNavigationSettingKey);\n if (deprecatedValue === 'simple' || deprecatedValue === 'highlight') {\n return _base_browser_ui_tree_abstractTree_js__WEBPACK_IMPORTED_MODULE_4__.TreeFindMode.Highlight;\n }\n else if (deprecatedValue === 'filter') {\n return _base_browser_ui_tree_abstractTree_js__WEBPACK_IMPORTED_MODULE_4__.TreeFindMode.Filter;\n }\n return undefined;\n}\nfunction getDefaultTreeFindMatchType(configurationService) {\n const value = configurationService.getValue(defaultFindMatchTypeSettingKey);\n if (value === 'fuzzy') {\n return _base_browser_ui_tree_abstractTree_js__WEBPACK_IMPORTED_MODULE_4__.TreeFindMatchType.Fuzzy;\n }\n else if (value === 'contiguous') {\n return _base_browser_ui_tree_abstractTree_js__WEBPACK_IMPORTED_MODULE_4__.TreeFindMatchType.Contiguous;\n }\n return undefined;\n}\nfunction workbenchTreeDataPreamble(accessor, options) {\n var _a;\n const configurationService = accessor.get(_configuration_common_configuration_js__WEBPACK_IMPORTED_MODULE_11__.IConfigurationService);\n const contextViewService = accessor.get(_contextview_browser_contextView_js__WEBPACK_IMPORTED_MODULE_15__.IContextViewService);\n const contextKeyService = accessor.get(_contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_13__.IContextKeyService);\n const instantiationService = accessor.get(_instantiation_common_instantiation_js__WEBPACK_IMPORTED_MODULE_16__.IInstantiationService);\n const getTypeNavigationMode = () => {\n // give priority to the context key value to specify a value\n const modeString = contextKeyService.getContextKeyValue(WorkbenchListTypeNavigationModeKey);\n if (modeString === 'automatic') {\n return _base_browser_ui_list_listWidget_js__WEBPACK_IMPORTED_MODULE_2__.TypeNavigationMode.Automatic;\n }\n else if (modeString === 'trigger') {\n return _base_browser_ui_list_listWidget_js__WEBPACK_IMPORTED_MODULE_2__.TypeNavigationMode.Trigger;\n }\n // also check the deprecated context key to set the mode to 'trigger'\n const modeBoolean = contextKeyService.getContextKeyValue(WorkbenchListAutomaticKeyboardNavigationLegacyKey);\n if (modeBoolean === false) {\n return _base_browser_ui_list_listWidget_js__WEBPACK_IMPORTED_MODULE_2__.TypeNavigationMode.Trigger;\n }\n // finally, check the setting\n const configString = configurationService.getValue(typeNavigationModeSettingKey);\n if (configString === 'automatic') {\n return _base_browser_ui_list_listWidget_js__WEBPACK_IMPORTED_MODULE_2__.TypeNavigationMode.Automatic;\n }\n else if (configString === 'trigger') {\n return _base_browser_ui_list_listWidget_js__WEBPACK_IMPORTED_MODULE_2__.TypeNavigationMode.Trigger;\n }\n return undefined;\n };\n const horizontalScrolling = options.horizontalScrolling !== undefined ? options.horizontalScrolling : Boolean(configurationService.getValue(horizontalScrollingKey));\n const [workbenchListOptions, disposable] = instantiationService.invokeFunction(toWorkbenchListOptions, options);\n const paddingBottom = options.paddingBottom;\n const renderIndentGuides = options.renderIndentGuides !== undefined ? options.renderIndentGuides : configurationService.getValue(treeRenderIndentGuidesKey);\n return {\n getTypeNavigationMode,\n disposable,\n options: {\n // ...options, // TODO@Joao why is this not splatted here?\n keyboardSupport: false,\n ...workbenchListOptions,\n indent: typeof configurationService.getValue(treeIndentKey) === 'number' ? configurationService.getValue(treeIndentKey) : undefined,\n renderIndentGuides,\n smoothScrolling: Boolean(configurationService.getValue(listSmoothScrolling)),\n defaultFindMode: getDefaultTreeFindMode(configurationService),\n defaultFindMatchType: getDefaultTreeFindMatchType(configurationService),\n horizontalScrolling,\n scrollByPage: Boolean(configurationService.getValue(scrollByPageKey)),\n paddingBottom: paddingBottom,\n hideTwistiesOfChildlessElements: options.hideTwistiesOfChildlessElements,\n expandOnlyOnTwistieClick: (_a = options.expandOnlyOnTwistieClick) !== null && _a !== void 0 ? _a : (configurationService.getValue(treeExpandMode) === 'doubleClick'),\n contextViewProvider: contextViewService,\n findWidgetStyles: _theme_browser_defaultStyles_js__WEBPACK_IMPORTED_MODULE_19__.defaultFindWidgetStyles,\n enableStickyScroll: Boolean(configurationService.getValue(treeStickyScroll)),\n stickyScrollMaxItemCount: Number(configurationService.getValue(treeStickyScrollMaxElements)),\n }\n };\n}\nlet WorkbenchTreeInternals = class WorkbenchTreeInternals {\n get onDidOpen() { return this.navigator.onDidOpen; }\n constructor(tree, options, getTypeNavigationMode, overrideStyles, contextKeyService, listService, configurationService) {\n var _a;\n this.tree = tree;\n this.disposables = [];\n this.contextKeyService = createScopedContextKeyService(contextKeyService, tree);\n this.disposables.push(createScrollObserver(this.contextKeyService, tree));\n this.listSupportsMultiSelect = WorkbenchListSupportsMultiSelectContextKey.bindTo(this.contextKeyService);\n this.listSupportsMultiSelect.set(options.multipleSelectionSupport !== false);\n const listSelectionNavigation = WorkbenchListSelectionNavigation.bindTo(this.contextKeyService);\n listSelectionNavigation.set(Boolean(options.selectionNavigation));\n this.listSupportFindWidget = WorkbenchListSupportsFind.bindTo(this.contextKeyService);\n this.listSupportFindWidget.set((_a = options.findWidgetEnabled) !== null && _a !== void 0 ? _a : true);\n this.hasSelectionOrFocus = WorkbenchListHasSelectionOrFocus.bindTo(this.contextKeyService);\n this.hasDoubleSelection = WorkbenchListDoubleSelection.bindTo(this.contextKeyService);\n this.hasMultiSelection = WorkbenchListMultiSelection.bindTo(this.contextKeyService);\n this.treeElementCanCollapse = WorkbenchTreeElementCanCollapse.bindTo(this.contextKeyService);\n this.treeElementHasParent = WorkbenchTreeElementHasParent.bindTo(this.contextKeyService);\n this.treeElementCanExpand = WorkbenchTreeElementCanExpand.bindTo(this.contextKeyService);\n this.treeElementHasChild = WorkbenchTreeElementHasChild.bindTo(this.contextKeyService);\n this.treeFindOpen = WorkbenchTreeFindOpen.bindTo(this.contextKeyService);\n this.treeStickyScrollFocused = WorkbenchTreeStickyScrollFocused.bindTo(this.contextKeyService);\n this._useAltAsMultipleSelectionModifier = useAltAsMultipleSelectionModifier(configurationService);\n this.updateStyleOverrides(overrideStyles);\n const updateCollapseContextKeys = () => {\n const focus = tree.getFocus()[0];\n if (!focus) {\n return;\n }\n const node = tree.getNode(focus);\n this.treeElementCanCollapse.set(node.collapsible && !node.collapsed);\n this.treeElementHasParent.set(!!tree.getParentElement(focus));\n this.treeElementCanExpand.set(node.collapsible && node.collapsed);\n this.treeElementHasChild.set(!!tree.getFirstElementChild(focus));\n };\n const interestingContextKeys = new Set();\n interestingContextKeys.add(WorkbenchListTypeNavigationModeKey);\n interestingContextKeys.add(WorkbenchListAutomaticKeyboardNavigationLegacyKey);\n this.disposables.push(this.contextKeyService, listService.register(tree), tree.onDidChangeSelection(() => {\n const selection = tree.getSelection();\n const focus = tree.getFocus();\n this.contextKeyService.bufferChangeEvents(() => {\n this.hasSelectionOrFocus.set(selection.length > 0 || focus.length > 0);\n this.hasMultiSelection.set(selection.length > 1);\n this.hasDoubleSelection.set(selection.length === 2);\n });\n }), tree.onDidChangeFocus(() => {\n const selection = tree.getSelection();\n const focus = tree.getFocus();\n this.hasSelectionOrFocus.set(selection.length > 0 || focus.length > 0);\n updateCollapseContextKeys();\n }), tree.onDidChangeCollapseState(updateCollapseContextKeys), tree.onDidChangeModel(updateCollapseContextKeys), tree.onDidChangeFindOpenState(enabled => this.treeFindOpen.set(enabled)), tree.onDidChangeStickyScrollFocused(focused => this.treeStickyScrollFocused.set(focused)), configurationService.onDidChangeConfiguration(e => {\n let newOptions = {};\n if (e.affectsConfiguration(multiSelectModifierSettingKey)) {\n this._useAltAsMultipleSelectionModifier = useAltAsMultipleSelectionModifier(configurationService);\n }\n if (e.affectsConfiguration(treeIndentKey)) {\n const indent = configurationService.getValue(treeIndentKey);\n newOptions = { ...newOptions, indent };\n }\n if (e.affectsConfiguration(treeRenderIndentGuidesKey) && options.renderIndentGuides === undefined) {\n const renderIndentGuides = configurationService.getValue(treeRenderIndentGuidesKey);\n newOptions = { ...newOptions, renderIndentGuides };\n }\n if (e.affectsConfiguration(listSmoothScrolling)) {\n const smoothScrolling = Boolean(configurationService.getValue(listSmoothScrolling));\n newOptions = { ...newOptions, smoothScrolling };\n }\n if (e.affectsConfiguration(defaultFindModeSettingKey) || e.affectsConfiguration(keyboardNavigationSettingKey)) {\n const defaultFindMode = getDefaultTreeFindMode(configurationService);\n newOptions = { ...newOptions, defaultFindMode };\n }\n if (e.affectsConfiguration(typeNavigationModeSettingKey) || e.affectsConfiguration(keyboardNavigationSettingKey)) {\n const typeNavigationMode = getTypeNavigationMode();\n newOptions = { ...newOptions, typeNavigationMode };\n }\n if (e.affectsConfiguration(defaultFindMatchTypeSettingKey)) {\n const defaultFindMatchType = getDefaultTreeFindMatchType(configurationService);\n newOptions = { ...newOptions, defaultFindMatchType };\n }\n if (e.affectsConfiguration(horizontalScrollingKey) && options.horizontalScrolling === undefined) {\n const horizontalScrolling = Boolean(configurationService.getValue(horizontalScrollingKey));\n newOptions = { ...newOptions, horizontalScrolling };\n }\n if (e.affectsConfiguration(scrollByPageKey)) {\n const scrollByPage = Boolean(configurationService.getValue(scrollByPageKey));\n newOptions = { ...newOptions, scrollByPage };\n }\n if (e.affectsConfiguration(treeExpandMode) && options.expandOnlyOnTwistieClick === undefined) {\n newOptions = { ...newOptions, expandOnlyOnTwistieClick: configurationService.getValue(treeExpandMode) === 'doubleClick' };\n }\n if (e.affectsConfiguration(treeStickyScroll)) {\n const enableStickyScroll = configurationService.getValue(treeStickyScroll);\n newOptions = { ...newOptions, enableStickyScroll };\n }\n if (e.affectsConfiguration(treeStickyScrollMaxElements)) {\n const stickyScrollMaxItemCount = Math.max(1, configurationService.getValue(treeStickyScrollMaxElements));\n newOptions = { ...newOptions, stickyScrollMaxItemCount };\n }\n if (e.affectsConfiguration(mouseWheelScrollSensitivityKey)) {\n const mouseWheelScrollSensitivity = configurationService.getValue(mouseWheelScrollSensitivityKey);\n newOptions = { ...newOptions, mouseWheelScrollSensitivity };\n }\n if (e.affectsConfiguration(fastScrollSensitivityKey)) {\n const fastScrollSensitivity = configurationService.getValue(fastScrollSensitivityKey);\n newOptions = { ...newOptions, fastScrollSensitivity };\n }\n if (Object.keys(newOptions).length > 0) {\n tree.updateOptions(newOptions);\n }\n }), this.contextKeyService.onDidChangeContext(e => {\n if (e.affectsSome(interestingContextKeys)) {\n tree.updateOptions({ typeNavigationMode: getTypeNavigationMode() });\n }\n }));\n this.navigator = new TreeResourceNavigator(tree, { configurationService, ...options });\n this.disposables.push(this.navigator);\n }\n updateOptions(options) {\n if (options.multipleSelectionSupport !== undefined) {\n this.listSupportsMultiSelect.set(!!options.multipleSelectionSupport);\n }\n }\n updateStyleOverrides(overrideStyles) {\n this.tree.style(overrideStyles ? (0,_theme_browser_defaultStyles_js__WEBPACK_IMPORTED_MODULE_19__.getListStyles)(overrideStyles) : _theme_browser_defaultStyles_js__WEBPACK_IMPORTED_MODULE_19__.defaultListStyles);\n }\n dispose() {\n this.disposables = (0,_base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_9__.dispose)(this.disposables);\n }\n};\nWorkbenchTreeInternals = __decorate([\n __param(4, _contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_13__.IContextKeyService),\n __param(5, IListService),\n __param(6, _configuration_common_configuration_js__WEBPACK_IMPORTED_MODULE_11__.IConfigurationService)\n], WorkbenchTreeInternals);\nconst configurationRegistry = _registry_common_platform_js__WEBPACK_IMPORTED_MODULE_18__.Registry.as(_configuration_common_configurationRegistry_js__WEBPACK_IMPORTED_MODULE_12__.Extensions.Configuration);\nconfigurationRegistry.registerConfiguration({\n id: 'workbench',\n order: 7,\n title: (0,_nls_js__WEBPACK_IMPORTED_MODULE_10__.localize)('workbenchConfigurationTitle', \"Workbench\"),\n type: 'object',\n properties: {\n [multiSelectModifierSettingKey]: {\n type: 'string',\n enum: ['ctrlCmd', 'alt'],\n markdownEnumDescriptions: [\n (0,_nls_js__WEBPACK_IMPORTED_MODULE_10__.localize)('multiSelectModifier.ctrlCmd', \"Maps to `Control` on Windows and Linux and to `Command` on macOS.\"),\n (0,_nls_js__WEBPACK_IMPORTED_MODULE_10__.localize)('multiSelectModifier.alt', \"Maps to `Alt` on Windows and Linux and to `Option` on macOS.\")\n ],\n default: 'ctrlCmd',\n description: (0,_nls_js__WEBPACK_IMPORTED_MODULE_10__.localize)({\n key: 'multiSelectModifier',\n comment: [\n '- `ctrlCmd` refers to a value the setting can take and should not be localized.',\n '- `Control` and `Command` refer to the modifier keys Ctrl or Cmd on the keyboard and can be localized.'\n ]\n }, \"The modifier to be used to add an item in trees and lists to a multi-selection with the mouse (for example in the explorer, open editors and scm view). The 'Open to Side' mouse gestures - if supported - will adapt such that they do not conflict with the multiselect modifier.\")\n },\n [openModeSettingKey]: {\n type: 'string',\n enum: ['singleClick', 'doubleClick'],\n default: 'singleClick',\n description: (0,_nls_js__WEBPACK_IMPORTED_MODULE_10__.localize)({\n key: 'openModeModifier',\n comment: ['`singleClick` and `doubleClick` refers to a value the setting can take and should not be localized.']\n }, \"Controls how to open items in trees and lists using the mouse (if supported). Note that some trees and lists might choose to ignore this setting if it is not applicable.\")\n },\n [horizontalScrollingKey]: {\n type: 'boolean',\n default: false,\n description: (0,_nls_js__WEBPACK_IMPORTED_MODULE_10__.localize)('horizontalScrolling setting', \"Controls whether lists and trees support horizontal scrolling in the workbench. Warning: turning on this setting has a performance implication.\")\n },\n [scrollByPageKey]: {\n type: 'boolean',\n default: false,\n description: (0,_nls_js__WEBPACK_IMPORTED_MODULE_10__.localize)('list.scrollByPage', \"Controls whether clicks in the scrollbar scroll page by page.\")\n },\n [treeIndentKey]: {\n type: 'number',\n default: 8,\n minimum: 4,\n maximum: 40,\n description: (0,_nls_js__WEBPACK_IMPORTED_MODULE_10__.localize)('tree indent setting', \"Controls tree indentation in pixels.\")\n },\n [treeRenderIndentGuidesKey]: {\n type: 'string',\n enum: ['none', 'onHover', 'always'],\n default: 'onHover',\n description: (0,_nls_js__WEBPACK_IMPORTED_MODULE_10__.localize)('render tree indent guides', \"Controls whether the tree should render indent guides.\")\n },\n [listSmoothScrolling]: {\n type: 'boolean',\n default: false,\n description: (0,_nls_js__WEBPACK_IMPORTED_MODULE_10__.localize)('list smoothScrolling setting', \"Controls whether lists and trees have smooth scrolling.\"),\n },\n [mouseWheelScrollSensitivityKey]: {\n type: 'number',\n default: 1,\n markdownDescription: (0,_nls_js__WEBPACK_IMPORTED_MODULE_10__.localize)('Mouse Wheel Scroll Sensitivity', \"A multiplier to be used on the `deltaX` and `deltaY` of mouse wheel scroll events.\")\n },\n [fastScrollSensitivityKey]: {\n type: 'number',\n default: 5,\n markdownDescription: (0,_nls_js__WEBPACK_IMPORTED_MODULE_10__.localize)('Fast Scroll Sensitivity', \"Scrolling speed multiplier when pressing `Alt`.\")\n },\n [defaultFindModeSettingKey]: {\n type: 'string',\n enum: ['highlight', 'filter'],\n enumDescriptions: [\n (0,_nls_js__WEBPACK_IMPORTED_MODULE_10__.localize)('defaultFindModeSettingKey.highlight', \"Highlight elements when searching. Further up and down navigation will traverse only the highlighted elements.\"),\n (0,_nls_js__WEBPACK_IMPORTED_MODULE_10__.localize)('defaultFindModeSettingKey.filter', \"Filter elements when searching.\")\n ],\n default: 'highlight',\n description: (0,_nls_js__WEBPACK_IMPORTED_MODULE_10__.localize)('defaultFindModeSettingKey', \"Controls the default find mode for lists and trees in the workbench.\")\n },\n [keyboardNavigationSettingKey]: {\n type: 'string',\n enum: ['simple', 'highlight', 'filter'],\n enumDescriptions: [\n (0,_nls_js__WEBPACK_IMPORTED_MODULE_10__.localize)('keyboardNavigationSettingKey.simple', \"Simple keyboard navigation focuses elements which match the keyboard input. Matching is done only on prefixes.\"),\n (0,_nls_js__WEBPACK_IMPORTED_MODULE_10__.localize)('keyboardNavigationSettingKey.highlight', \"Highlight keyboard navigation highlights elements which match the keyboard input. Further up and down navigation will traverse only the highlighted elements.\"),\n (0,_nls_js__WEBPACK_IMPORTED_MODULE_10__.localize)('keyboardNavigationSettingKey.filter', \"Filter keyboard navigation will filter out and hide all the elements which do not match the keyboard input.\")\n ],\n default: 'highlight',\n description: (0,_nls_js__WEBPACK_IMPORTED_MODULE_10__.localize)('keyboardNavigationSettingKey', \"Controls the keyboard navigation style for lists and trees in the workbench. Can be simple, highlight and filter.\"),\n deprecated: true,\n deprecationMessage: (0,_nls_js__WEBPACK_IMPORTED_MODULE_10__.localize)('keyboardNavigationSettingKeyDeprecated', \"Please use 'workbench.list.defaultFindMode' and\t'workbench.list.typeNavigationMode' instead.\")\n },\n [defaultFindMatchTypeSettingKey]: {\n type: 'string',\n enum: ['fuzzy', 'contiguous'],\n enumDescriptions: [\n (0,_nls_js__WEBPACK_IMPORTED_MODULE_10__.localize)('defaultFindMatchTypeSettingKey.fuzzy', \"Use fuzzy matching when searching.\"),\n (0,_nls_js__WEBPACK_IMPORTED_MODULE_10__.localize)('defaultFindMatchTypeSettingKey.contiguous', \"Use contiguous matching when searching.\")\n ],\n default: 'fuzzy',\n description: (0,_nls_js__WEBPACK_IMPORTED_MODULE_10__.localize)('defaultFindMatchTypeSettingKey', \"Controls the type of matching used when searching lists and trees in the workbench.\")\n },\n [treeExpandMode]: {\n type: 'string',\n enum: ['singleClick', 'doubleClick'],\n default: 'singleClick',\n description: (0,_nls_js__WEBPACK_IMPORTED_MODULE_10__.localize)('expand mode', \"Controls how tree folders are expanded when clicking the folder names. Note that some trees and lists might choose to ignore this setting if it is not applicable.\"),\n },\n [treeStickyScroll]: {\n type: 'boolean',\n default: true,\n description: (0,_nls_js__WEBPACK_IMPORTED_MODULE_10__.localize)('sticky scroll', \"Controls whether sticky scrolling is enabled in trees.\"),\n },\n [treeStickyScrollMaxElements]: {\n type: 'number',\n minimum: 1,\n default: 7,\n markdownDescription: (0,_nls_js__WEBPACK_IMPORTED_MODULE_10__.localize)('sticky scroll maximum items', \"Controls the number of sticky elements displayed in the tree when `#workbench.tree.enableStickyScroll#` is enabled.\"),\n },\n [typeNavigationModeSettingKey]: {\n type: 'string',\n enum: ['automatic', 'trigger'],\n default: 'automatic',\n markdownDescription: (0,_nls_js__WEBPACK_IMPORTED_MODULE_10__.localize)('typeNavigationMode2', \"Controls how type navigation works in lists and trees in the workbench. When set to `trigger`, type navigation begins once the `list.triggerTypeNavigation` command is run.\"),\n }\n }\n});\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/platform/list/browser/listService.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/platform/log/common/log.js":
/*!**********************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/platform/log/common/log.js ***!
\**********************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ AbstractLogger: () => (/* binding */ AbstractLogger),\n/* harmony export */ CONTEXT_LOG_LEVEL: () => (/* binding */ CONTEXT_LOG_LEVEL),\n/* harmony export */ ConsoleLogger: () => (/* binding */ ConsoleLogger),\n/* harmony export */ DEFAULT_LOG_LEVEL: () => (/* binding */ DEFAULT_LOG_LEVEL),\n/* harmony export */ ILogService: () => (/* binding */ ILogService),\n/* harmony export */ LogLevel: () => (/* binding */ LogLevel),\n/* harmony export */ LogLevelToString: () => (/* binding */ LogLevelToString),\n/* harmony export */ MultiplexLogger: () => (/* binding */ MultiplexLogger)\n/* harmony export */ });\n/* harmony import */ var _base_common_event_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../base/common/event.js */ \"./node_modules/monaco-editor/esm/vs/base/common/event.js\");\n/* harmony import */ var _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../base/common/lifecycle.js */ \"./node_modules/monaco-editor/esm/vs/base/common/lifecycle.js\");\n/* harmony import */ var _contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../contextkey/common/contextkey.js */ \"./node_modules/monaco-editor/esm/vs/platform/contextkey/common/contextkey.js\");\n/* harmony import */ var _instantiation_common_instantiation_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../instantiation/common/instantiation.js */ \"./node_modules/monaco-editor/esm/vs/platform/instantiation/common/instantiation.js\");\n\n\n\n\nconst ILogService = (0,_instantiation_common_instantiation_js__WEBPACK_IMPORTED_MODULE_3__.createDecorator)('logService');\nvar LogLevel;\n(function (LogLevel) {\n LogLevel[LogLevel[\"Off\"] = 0] = \"Off\";\n LogLevel[LogLevel[\"Trace\"] = 1] = \"Trace\";\n LogLevel[LogLevel[\"Debug\"] = 2] = \"Debug\";\n LogLevel[LogLevel[\"Info\"] = 3] = \"Info\";\n LogLevel[LogLevel[\"Warning\"] = 4] = \"Warning\";\n LogLevel[LogLevel[\"Error\"] = 5] = \"Error\";\n})(LogLevel || (LogLevel = {}));\nconst DEFAULT_LOG_LEVEL = LogLevel.Info;\nclass AbstractLogger extends _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_1__.Disposable {\n constructor() {\n super(...arguments);\n this.level = DEFAULT_LOG_LEVEL;\n this._onDidChangeLogLevel = this._register(new _base_common_event_js__WEBPACK_IMPORTED_MODULE_0__.Emitter());\n this.onDidChangeLogLevel = this._onDidChangeLogLevel.event;\n }\n setLevel(level) {\n if (this.level !== level) {\n this.level = level;\n this._onDidChangeLogLevel.fire(this.level);\n }\n }\n getLevel() {\n return this.level;\n }\n checkLogLevel(level) {\n return this.level !== LogLevel.Off && this.level <= level;\n }\n}\nclass ConsoleLogger extends AbstractLogger {\n constructor(logLevel = DEFAULT_LOG_LEVEL, useColors = true) {\n super();\n this.useColors = useColors;\n this.setLevel(logLevel);\n }\n trace(message, ...args) {\n if (this.checkLogLevel(LogLevel.Trace)) {\n if (this.useColors) {\n console.log('%cTRACE', 'color: #888', message, ...args);\n }\n else {\n console.log(message, ...args);\n }\n }\n }\n debug(message, ...args) {\n if (this.checkLogLevel(LogLevel.Debug)) {\n if (this.useColors) {\n console.log('%cDEBUG', 'background: #eee; color: #888', message, ...args);\n }\n else {\n console.log(message, ...args);\n }\n }\n }\n info(message, ...args) {\n if (this.checkLogLevel(LogLevel.Info)) {\n if (this.useColors) {\n console.log('%c INFO', 'color: #33f', message, ...args);\n }\n else {\n console.log(message, ...args);\n }\n }\n }\n warn(message, ...args) {\n if (this.checkLogLevel(LogLevel.Warning)) {\n if (this.useColors) {\n console.log('%c WARN', 'color: #993', message, ...args);\n }\n else {\n console.log(message, ...args);\n }\n }\n }\n error(message, ...args) {\n if (this.checkLogLevel(LogLevel.Error)) {\n if (this.useColors) {\n console.log('%c ERR', 'color: #f33', message, ...args);\n }\n else {\n console.error(message, ...args);\n }\n }\n }\n}\nclass MultiplexLogger extends AbstractLogger {\n constructor(loggers) {\n super();\n this.loggers = loggers;\n if (loggers.length) {\n this.setLevel(loggers[0].getLevel());\n }\n }\n setLevel(level) {\n for (const logger of this.loggers) {\n logger.setLevel(level);\n }\n super.setLevel(level);\n }\n trace(message, ...args) {\n for (const logger of this.loggers) {\n logger.trace(message, ...args);\n }\n }\n debug(message, ...args) {\n for (const logger of this.loggers) {\n logger.debug(message, ...args);\n }\n }\n info(message, ...args) {\n for (const logger of this.loggers) {\n logger.info(message, ...args);\n }\n }\n warn(message, ...args) {\n for (const logger of this.loggers) {\n logger.warn(message, ...args);\n }\n }\n error(message, ...args) {\n for (const logger of this.loggers) {\n logger.error(message, ...args);\n }\n }\n dispose() {\n for (const logger of this.loggers) {\n logger.dispose();\n }\n super.dispose();\n }\n}\nfunction LogLevelToString(logLevel) {\n switch (logLevel) {\n case LogLevel.Trace: return 'trace';\n case LogLevel.Debug: return 'debug';\n case LogLevel.Info: return 'info';\n case LogLevel.Warning: return 'warn';\n case LogLevel.Error: return 'error';\n case LogLevel.Off: return 'off';\n }\n}\n// Contexts\nconst CONTEXT_LOG_LEVEL = new _contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_2__.RawContextKey('logLevel', LogLevelToString(LogLevel.Info));\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/platform/log/common/log.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/platform/log/common/logService.js":
/*!*****************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/platform/log/common/logService.js ***!
\*****************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ LogService: () => (/* binding */ LogService)\n/* harmony export */ });\n/* harmony import */ var _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../base/common/lifecycle.js */ \"./node_modules/monaco-editor/esm/vs/base/common/lifecycle.js\");\n/* harmony import */ var _log_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./log.js */ \"./node_modules/monaco-editor/esm/vs/platform/log/common/log.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n\nclass LogService extends _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_0__.Disposable {\n constructor(primaryLogger, otherLoggers = []) {\n super();\n this.logger = new _log_js__WEBPACK_IMPORTED_MODULE_1__.MultiplexLogger([primaryLogger, ...otherLoggers]);\n this._register(primaryLogger.onDidChangeLogLevel(level => this.setLevel(level)));\n }\n get onDidChangeLogLevel() {\n return this.logger.onDidChangeLogLevel;\n }\n setLevel(level) {\n this.logger.setLevel(level);\n }\n getLevel() {\n return this.logger.getLevel();\n }\n trace(message, ...args) {\n this.logger.trace(message, ...args);\n }\n debug(message, ...args) {\n this.logger.debug(message, ...args);\n }\n info(message, ...args) {\n this.logger.info(message, ...args);\n }\n warn(message, ...args) {\n this.logger.warn(message, ...args);\n }\n error(message, ...args) {\n this.logger.error(message, ...args);\n }\n}\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/platform/log/common/logService.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/platform/markers/common/markerService.js":
/*!************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/platform/markers/common/markerService.js ***!
\************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ MarkerService: () => (/* binding */ MarkerService),\n/* harmony export */ unsupportedSchemas: () => (/* binding */ unsupportedSchemas)\n/* harmony export */ });\n/* harmony import */ var _base_common_arrays_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../base/common/arrays.js */ \"./node_modules/monaco-editor/esm/vs/base/common/arrays.js\");\n/* harmony import */ var _base_common_event_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../base/common/event.js */ \"./node_modules/monaco-editor/esm/vs/base/common/event.js\");\n/* harmony import */ var _base_common_iterator_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../base/common/iterator.js */ \"./node_modules/monaco-editor/esm/vs/base/common/iterator.js\");\n/* harmony import */ var _base_common_map_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../../base/common/map.js */ \"./node_modules/monaco-editor/esm/vs/base/common/map.js\");\n/* harmony import */ var _base_common_network_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../../base/common/network.js */ \"./node_modules/monaco-editor/esm/vs/base/common/network.js\");\n/* harmony import */ var _base_common_uri_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../../../base/common/uri.js */ \"./node_modules/monaco-editor/esm/vs/base/common/uri.js\");\n/* harmony import */ var _markers_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ./markers.js */ \"./node_modules/monaco-editor/esm/vs/platform/markers/common/markers.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n\n\n\n\n\n\nconst unsupportedSchemas = new Set([_base_common_network_js__WEBPACK_IMPORTED_MODULE_4__.Schemas.inMemory, _base_common_network_js__WEBPACK_IMPORTED_MODULE_4__.Schemas.vscodeSourceControl, _base_common_network_js__WEBPACK_IMPORTED_MODULE_4__.Schemas.walkThrough, _base_common_network_js__WEBPACK_IMPORTED_MODULE_4__.Schemas.walkThroughSnippet]);\nclass DoubleResourceMap {\n constructor() {\n this._byResource = new _base_common_map_js__WEBPACK_IMPORTED_MODULE_3__.ResourceMap();\n this._byOwner = new Map();\n }\n set(resource, owner, value) {\n let ownerMap = this._byResource.get(resource);\n if (!ownerMap) {\n ownerMap = new Map();\n this._byResource.set(resource, ownerMap);\n }\n ownerMap.set(owner, value);\n let resourceMap = this._byOwner.get(owner);\n if (!resourceMap) {\n resourceMap = new _base_common_map_js__WEBPACK_IMPORTED_MODULE_3__.ResourceMap();\n this._byOwner.set(owner, resourceMap);\n }\n resourceMap.set(resource, value);\n }\n get(resource, owner) {\n const ownerMap = this._byResource.get(resource);\n return ownerMap === null || ownerMap === void 0 ? void 0 : ownerMap.get(owner);\n }\n delete(resource, owner) {\n let removedA = false;\n let removedB = false;\n const ownerMap = this._byResource.get(resource);\n if (ownerMap) {\n removedA = ownerMap.delete(owner);\n }\n const resourceMap = this._byOwner.get(owner);\n if (resourceMap) {\n removedB = resourceMap.delete(resource);\n }\n if (removedA !== removedB) {\n throw new Error('illegal state');\n }\n return removedA && removedB;\n }\n values(key) {\n var _a, _b, _c, _d;\n if (typeof key === 'string') {\n return (_b = (_a = this._byOwner.get(key)) === null || _a === void 0 ? void 0 : _a.values()) !== null && _b !== void 0 ? _b : _base_common_iterator_js__WEBPACK_IMPORTED_MODULE_2__.Iterable.empty();\n }\n if (_base_common_uri_js__WEBPACK_IMPORTED_MODULE_5__.URI.isUri(key)) {\n return (_d = (_c = this._byResource.get(key)) === null || _c === void 0 ? void 0 : _c.values()) !== null && _d !== void 0 ? _d : _base_common_iterator_js__WEBPACK_IMPORTED_MODULE_2__.Iterable.empty();\n }\n return _base_common_iterator_js__WEBPACK_IMPORTED_MODULE_2__.Iterable.map(_base_common_iterator_js__WEBPACK_IMPORTED_MODULE_2__.Iterable.concat(...this._byOwner.values()), map => map[1]);\n }\n}\nclass MarkerStats {\n constructor(service) {\n this.errors = 0;\n this.infos = 0;\n this.warnings = 0;\n this.unknowns = 0;\n this._data = new _base_common_map_js__WEBPACK_IMPORTED_MODULE_3__.ResourceMap();\n this._service = service;\n this._subscription = service.onMarkerChanged(this._update, this);\n }\n dispose() {\n this._subscription.dispose();\n }\n _update(resources) {\n for (const resource of resources) {\n const oldStats = this._data.get(resource);\n if (oldStats) {\n this._substract(oldStats);\n }\n const newStats = this._resourceStats(resource);\n this._add(newStats);\n this._data.set(resource, newStats);\n }\n }\n _resourceStats(resource) {\n const result = { errors: 0, warnings: 0, infos: 0, unknowns: 0 };\n // TODO this is a hack\n if (unsupportedSchemas.has(resource.scheme)) {\n return result;\n }\n for (const { severity } of this._service.read({ resource })) {\n if (severity === _markers_js__WEBPACK_IMPORTED_MODULE_6__.MarkerSeverity.Error) {\n result.errors += 1;\n }\n else if (severity === _markers_js__WEBPACK_IMPORTED_MODULE_6__.MarkerSeverity.Warning) {\n result.warnings += 1;\n }\n else if (severity === _markers_js__WEBPACK_IMPORTED_MODULE_6__.MarkerSeverity.Info) {\n result.infos += 1;\n }\n else {\n result.unknowns += 1;\n }\n }\n return result;\n }\n _substract(op) {\n this.errors -= op.errors;\n this.warnings -= op.warnings;\n this.infos -= op.infos;\n this.unknowns -= op.unknowns;\n }\n _add(op) {\n this.errors += op.errors;\n this.warnings += op.warnings;\n this.infos += op.infos;\n this.unknowns += op.unknowns;\n }\n}\nclass MarkerService {\n constructor() {\n this._onMarkerChanged = new _base_common_event_js__WEBPACK_IMPORTED_MODULE_1__.DebounceEmitter({\n delay: 0,\n merge: MarkerService._merge\n });\n this.onMarkerChanged = this._onMarkerChanged.event;\n this._data = new DoubleResourceMap();\n this._stats = new MarkerStats(this);\n }\n dispose() {\n this._stats.dispose();\n this._onMarkerChanged.dispose();\n }\n remove(owner, resources) {\n for (const resource of resources || []) {\n this.changeOne(owner, resource, []);\n }\n }\n changeOne(owner, resource, markerData) {\n if ((0,_base_common_arrays_js__WEBPACK_IMPORTED_MODULE_0__.isFalsyOrEmpty)(markerData)) {\n // remove marker for this (owner,resource)-tuple\n const removed = this._data.delete(resource, owner);\n if (removed) {\n this._onMarkerChanged.fire([resource]);\n }\n }\n else {\n // insert marker for this (owner,resource)-tuple\n const markers = [];\n for (const data of markerData) {\n const marker = MarkerService._toMarker(owner, resource, data);\n if (marker) {\n markers.push(marker);\n }\n }\n this._data.set(resource, owner, markers);\n this._onMarkerChanged.fire([resource]);\n }\n }\n static _toMarker(owner, resource, data) {\n let { code, severity, message, source, startLineNumber, startColumn, endLineNumber, endColumn, relatedInformation, tags, } = data;\n if (!message) {\n return undefined;\n }\n // santize data\n startLineNumber = startLineNumber > 0 ? startLineNumber : 1;\n startColumn = startColumn > 0 ? startColumn : 1;\n endLineNumber = endLineNumber >= startLineNumber ? endLineNumber : startLineNumber;\n endColumn = endColumn > 0 ? endColumn : startColumn;\n return {\n resource,\n owner,\n code,\n severity,\n message,\n source,\n startLineNumber,\n startColumn,\n endLineNumber,\n endColumn,\n relatedInformation,\n tags,\n };\n }\n changeAll(owner, data) {\n const changes = [];\n // remove old marker\n const existing = this._data.values(owner);\n if (existing) {\n for (const data of existing) {\n const first = _base_common_iterator_js__WEBPACK_IMPORTED_MODULE_2__.Iterable.first(data);\n if (first) {\n changes.push(first.resource);\n this._data.delete(first.resource, owner);\n }\n }\n }\n // add new markers\n if ((0,_base_common_arrays_js__WEBPACK_IMPORTED_MODULE_0__.isNonEmptyArray)(data)) {\n // group by resource\n const groups = new _base_common_map_js__WEBPACK_IMPORTED_MODULE_3__.ResourceMap();\n for (const { resource, marker: markerData } of data) {\n const marker = MarkerService._toMarker(owner, resource, markerData);\n if (!marker) {\n // filter bad markers\n continue;\n }\n const array = groups.get(resource);\n if (!array) {\n groups.set(resource, [marker]);\n changes.push(resource);\n }\n else {\n array.push(marker);\n }\n }\n // insert all\n for (const [resource, value] of groups) {\n this._data.set(resource, owner, value);\n }\n }\n if (changes.length > 0) {\n this._onMarkerChanged.fire(changes);\n }\n }\n read(filter = Object.create(null)) {\n let { owner, resource, severities, take } = filter;\n if (!take || take < 0) {\n take = -1;\n }\n if (owner && resource) {\n // exactly one owner AND resource\n const data = this._data.get(resource, owner);\n if (!data) {\n return [];\n }\n else {\n const result = [];\n for (const marker of data) {\n if (MarkerService._accept(marker, severities)) {\n const newLen = result.push(marker);\n if (take > 0 && newLen === take) {\n break;\n }\n }\n }\n return result;\n }\n }\n else if (!owner && !resource) {\n // all\n const result = [];\n for (const markers of this._data.values()) {\n for (const data of markers) {\n if (MarkerService._accept(data, severities)) {\n const newLen = result.push(data);\n if (take > 0 && newLen === take) {\n return result;\n }\n }\n }\n }\n return result;\n }\n else {\n // of one resource OR owner\n const iterable = this._data.values(resource !== null && resource !== void 0 ? resource : owner);\n const result = [];\n for (const markers of iterable) {\n for (const data of markers) {\n if (MarkerService._accept(data, severities)) {\n const newLen = result.push(data);\n if (take > 0 && newLen === take) {\n return result;\n }\n }\n }\n }\n return result;\n }\n }\n static _accept(marker, severities) {\n return severities === undefined || (severities & marker.severity) === marker.severity;\n }\n // --- event debounce logic\n static _merge(all) {\n const set = new _base_common_map_js__WEBPACK_IMPORTED_MODULE_3__.ResourceMap();\n for (const array of all) {\n for (const item of array) {\n set.set(item, true);\n }\n }\n return Array.from(set.keys());\n }\n}\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/platform/markers/common/markerService.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/platform/markers/common/markers.js":
/*!******************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/platform/markers/common/markers.js ***!
\******************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ IMarkerData: () => (/* binding */ IMarkerData),\n/* harmony export */ IMarkerService: () => (/* binding */ IMarkerService),\n/* harmony export */ MarkerSeverity: () => (/* binding */ MarkerSeverity)\n/* harmony export */ });\n/* harmony import */ var _base_common_severity_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../base/common/severity.js */ \"./node_modules/monaco-editor/esm/vs/base/common/severity.js\");\n/* harmony import */ var _nls_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../nls.js */ \"./node_modules/monaco-editor/esm/vs/nls.js\");\n/* harmony import */ var _instantiation_common_instantiation_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../instantiation/common/instantiation.js */ \"./node_modules/monaco-editor/esm/vs/platform/instantiation/common/instantiation.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n\n\nvar MarkerSeverity;\n(function (MarkerSeverity) {\n MarkerSeverity[MarkerSeverity[\"Hint\"] = 1] = \"Hint\";\n MarkerSeverity[MarkerSeverity[\"Info\"] = 2] = \"Info\";\n MarkerSeverity[MarkerSeverity[\"Warning\"] = 4] = \"Warning\";\n MarkerSeverity[MarkerSeverity[\"Error\"] = 8] = \"Error\";\n})(MarkerSeverity || (MarkerSeverity = {}));\n(function (MarkerSeverity) {\n function compare(a, b) {\n return b - a;\n }\n MarkerSeverity.compare = compare;\n const _displayStrings = Object.create(null);\n _displayStrings[MarkerSeverity.Error] = (0,_nls_js__WEBPACK_IMPORTED_MODULE_1__.localize)('sev.error', \"Error\");\n _displayStrings[MarkerSeverity.Warning] = (0,_nls_js__WEBPACK_IMPORTED_MODULE_1__.localize)('sev.warning', \"Warning\");\n _displayStrings[MarkerSeverity.Info] = (0,_nls_js__WEBPACK_IMPORTED_MODULE_1__.localize)('sev.info', \"Info\");\n function toString(a) {\n return _displayStrings[a] || '';\n }\n MarkerSeverity.toString = toString;\n function fromSeverity(severity) {\n switch (severity) {\n case _base_common_severity_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"].Error: return MarkerSeverity.Error;\n case _base_common_severity_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"].Warning: return MarkerSeverity.Warning;\n case _base_common_severity_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"].Info: return MarkerSeverity.Info;\n case _base_common_severity_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"].Ignore: return MarkerSeverity.Hint;\n }\n }\n MarkerSeverity.fromSeverity = fromSeverity;\n function toSeverity(severity) {\n switch (severity) {\n case MarkerSeverity.Error: return _base_common_severity_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"].Error;\n case MarkerSeverity.Warning: return _base_common_severity_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"].Warning;\n case MarkerSeverity.Info: return _base_common_severity_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"].Info;\n case MarkerSeverity.Hint: return _base_common_severity_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"].Ignore;\n }\n }\n MarkerSeverity.toSeverity = toSeverity;\n})(MarkerSeverity || (MarkerSeverity = {}));\nvar IMarkerData;\n(function (IMarkerData) {\n const emptyString = '';\n function makeKey(markerData) {\n return makeKeyOptionalMessage(markerData, true);\n }\n IMarkerData.makeKey = makeKey;\n function makeKeyOptionalMessage(markerData, useMessage) {\n const result = [emptyString];\n if (markerData.source) {\n result.push(markerData.source.replace('¦', '\\\\¦'));\n }\n else {\n result.push(emptyString);\n }\n if (markerData.code) {\n if (typeof markerData.code === 'string') {\n result.push(markerData.code.replace('¦', '\\\\¦'));\n }\n else {\n result.push(markerData.code.value.replace('¦', '\\\\¦'));\n }\n }\n else {\n result.push(emptyString);\n }\n if (markerData.severity !== undefined && markerData.severity !== null) {\n result.push(MarkerSeverity.toString(markerData.severity));\n }\n else {\n result.push(emptyString);\n }\n // Modifed to not include the message as part of the marker key to work around\n // https://github.com/microsoft/vscode/issues/77475\n if (markerData.message && useMessage) {\n result.push(markerData.message.replace('¦', '\\\\¦'));\n }\n else {\n result.push(emptyString);\n }\n if (markerData.startLineNumber !== undefined && markerData.startLineNumber !== null) {\n result.push(markerData.startLineNumber.toString());\n }\n else {\n result.push(emptyString);\n }\n if (markerData.startColumn !== undefined && markerData.startColumn !== null) {\n result.push(markerData.startColumn.toString());\n }\n else {\n result.push(emptyString);\n }\n if (markerData.endLineNumber !== undefined && markerData.endLineNumber !== null) {\n result.push(markerData.endLineNumber.toString());\n }\n else {\n result.push(emptyString);\n }\n if (markerData.endColumn !== undefined && markerData.endColumn !== null) {\n result.push(markerData.endColumn.toString());\n }\n else {\n result.push(emptyString);\n }\n result.push(emptyString);\n return result.join('¦');\n }\n IMarkerData.makeKeyOptionalMessage = makeKeyOptionalMessage;\n})(IMarkerData || (IMarkerData = {}));\nconst IMarkerService = (0,_instantiation_common_instantiation_js__WEBPACK_IMPORTED_MODULE_2__.createDecorator)('markerService');\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/platform/markers/common/markers.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/platform/notification/common/notification.js":
/*!****************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/platform/notification/common/notification.js ***!
\****************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ INotificationService: () => (/* binding */ INotificationService),\n/* harmony export */ NoOpNotification: () => (/* binding */ NoOpNotification),\n/* harmony export */ Severity: () => (/* binding */ Severity)\n/* harmony export */ });\n/* harmony import */ var _base_common_severity_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../base/common/severity.js */ \"./node_modules/monaco-editor/esm/vs/base/common/severity.js\");\n/* harmony import */ var _instantiation_common_instantiation_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../instantiation/common/instantiation.js */ \"./node_modules/monaco-editor/esm/vs/platform/instantiation/common/instantiation.js\");\n\n\nvar Severity = _base_common_severity_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"];\nconst INotificationService = (0,_instantiation_common_instantiation_js__WEBPACK_IMPORTED_MODULE_1__.createDecorator)('notificationService');\nclass NoOpNotification {\n}\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/platform/notification/common/notification.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/platform/opener/browser/link.js":
/*!***************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/platform/opener/browser/link.js ***!
\***************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ Link: () => (/* binding */ Link)\n/* harmony export */ });\n/* harmony import */ var _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../base/browser/dom.js */ \"./node_modules/monaco-editor/esm/vs/base/browser/dom.js\");\n/* harmony import */ var _base_browser_event_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../base/browser/event.js */ \"./node_modules/monaco-editor/esm/vs/base/browser/event.js\");\n/* harmony import */ var _base_browser_keyboardEvent_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../base/browser/keyboardEvent.js */ \"./node_modules/monaco-editor/esm/vs/base/browser/keyboardEvent.js\");\n/* harmony import */ var _base_browser_touch_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../../base/browser/touch.js */ \"./node_modules/monaco-editor/esm/vs/base/browser/touch.js\");\n/* harmony import */ var _base_common_event_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../../base/common/event.js */ \"./node_modules/monaco-editor/esm/vs/base/common/event.js\");\n/* harmony import */ var _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../../../base/common/lifecycle.js */ \"./node_modules/monaco-editor/esm/vs/base/common/lifecycle.js\");\n/* harmony import */ var _common_opener_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../common/opener.js */ \"./node_modules/monaco-editor/esm/vs/platform/opener/common/opener.js\");\n/* harmony import */ var _link_css__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ./link.css */ \"./node_modules/monaco-editor/esm/vs/platform/opener/browser/link.css\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\nvar __decorate = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\n return c > 3 && r && Object.defineProperty(target, key, r), r;\n};\nvar __param = (undefined && undefined.__param) || function (paramIndex, decorator) {\n return function (target, key) { decorator(target, key, paramIndex); }\n};\n\n\n\n\n\n\n\n\nlet Link = class Link extends _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_5__.Disposable {\n get enabled() {\n return this._enabled;\n }\n set enabled(enabled) {\n if (enabled) {\n this.el.setAttribute('aria-disabled', 'false');\n this.el.tabIndex = 0;\n this.el.style.pointerEvents = 'auto';\n this.el.style.opacity = '1';\n this.el.style.cursor = 'pointer';\n this._enabled = false;\n }\n else {\n this.el.setAttribute('aria-disabled', 'true');\n this.el.tabIndex = -1;\n this.el.style.pointerEvents = 'none';\n this.el.style.opacity = '0.4';\n this.el.style.cursor = 'default';\n this._enabled = true;\n }\n this._enabled = enabled;\n }\n constructor(container, _link, options = {}, openerService) {\n var _a;\n super();\n this._link = _link;\n this._enabled = true;\n this.el = (0,_base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.append)(container, (0,_base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.$)('a.monaco-link', {\n tabIndex: (_a = _link.tabIndex) !== null && _a !== void 0 ? _a : 0,\n href: _link.href,\n title: _link.title\n }, _link.label));\n this.el.setAttribute('role', 'button');\n const onClickEmitter = this._register(new _base_browser_event_js__WEBPACK_IMPORTED_MODULE_1__.DomEmitter(this.el, 'click'));\n const onKeyPress = this._register(new _base_browser_event_js__WEBPACK_IMPORTED_MODULE_1__.DomEmitter(this.el, 'keypress'));\n const onEnterPress = _base_common_event_js__WEBPACK_IMPORTED_MODULE_4__.Event.chain(onKeyPress.event, $ => $.map(e => new _base_browser_keyboardEvent_js__WEBPACK_IMPORTED_MODULE_2__.StandardKeyboardEvent(e))\n .filter(e => e.keyCode === 3 /* KeyCode.Enter */));\n const onTap = this._register(new _base_browser_event_js__WEBPACK_IMPORTED_MODULE_1__.DomEmitter(this.el, _base_browser_touch_js__WEBPACK_IMPORTED_MODULE_3__.EventType.Tap)).event;\n this._register(_base_browser_touch_js__WEBPACK_IMPORTED_MODULE_3__.Gesture.addTarget(this.el));\n const onOpen = _base_common_event_js__WEBPACK_IMPORTED_MODULE_4__.Event.any(onClickEmitter.event, onEnterPress, onTap);\n this._register(onOpen(e => {\n if (!this.enabled) {\n return;\n }\n _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.EventHelper.stop(e, true);\n if (options === null || options === void 0 ? void 0 : options.opener) {\n options.opener(this._link.href);\n }\n else {\n openerService.open(this._link.href, { allowCommands: true });\n }\n }));\n this.enabled = true;\n }\n};\nLink = __decorate([\n __param(3, _common_opener_js__WEBPACK_IMPORTED_MODULE_6__.IOpenerService)\n], Link);\n\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/platform/opener/browser/link.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/platform/opener/common/opener.js":
/*!****************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/platform/opener/common/opener.js ***!
\****************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ IOpenerService: () => (/* binding */ IOpenerService),\n/* harmony export */ extractSelection: () => (/* binding */ extractSelection)\n/* harmony export */ });\n/* harmony import */ var _instantiation_common_instantiation_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../instantiation/common/instantiation.js */ \"./node_modules/monaco-editor/esm/vs/platform/instantiation/common/instantiation.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\nconst IOpenerService = (0,_instantiation_common_instantiation_js__WEBPACK_IMPORTED_MODULE_0__.createDecorator)('openerService');\n/**\n * file:///some/file.js#73\n * file:///some/file.js#L73\n * file:///some/file.js#73,84\n * file:///some/file.js#L73,84\n * file:///some/file.js#73-83\n * file:///some/file.js#L73-L83\n * file:///some/file.js#73,84-83,52\n * file:///some/file.js#L73,84-L83,52\n */\nfunction extractSelection(uri) {\n let selection = undefined;\n const match = /^L?(\\d+)(?:,(\\d+))?(-L?(\\d+)(?:,(\\d+))?)?/.exec(uri.fragment);\n if (match) {\n selection = {\n startLineNumber: parseInt(match[1]),\n startColumn: match[2] ? parseInt(match[2]) : 1,\n endLineNumber: match[4] ? parseInt(match[4]) : undefined,\n endColumn: match[4] ? (match[5] ? parseInt(match[5]) : 1) : undefined\n };\n uri = uri.with({ fragment: '' });\n }\n return { selection, uri };\n}\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/platform/opener/common/opener.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/platform/progress/common/progress.js":
/*!********************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/platform/progress/common/progress.js ***!
\********************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ IEditorProgressService: () => (/* binding */ IEditorProgressService),\n/* harmony export */ IProgressService: () => (/* binding */ IProgressService),\n/* harmony export */ Progress: () => (/* binding */ Progress),\n/* harmony export */ emptyProgressRunner: () => (/* binding */ emptyProgressRunner)\n/* harmony export */ });\n/* harmony import */ var _instantiation_common_instantiation_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../instantiation/common/instantiation.js */ \"./node_modules/monaco-editor/esm/vs/platform/instantiation/common/instantiation.js\");\n\nconst IProgressService = (0,_instantiation_common_instantiation_js__WEBPACK_IMPORTED_MODULE_0__.createDecorator)('progressService');\nconst emptyProgressRunner = Object.freeze({\n total() { },\n worked() { },\n done() { }\n});\nclass Progress {\n constructor(callback) {\n this.callback = callback;\n }\n report(item) {\n this._value = item;\n this.callback(this._value);\n }\n}\nProgress.None = Object.freeze({ report() { } });\nconst IEditorProgressService = (0,_instantiation_common_instantiation_js__WEBPACK_IMPORTED_MODULE_0__.createDecorator)('editorProgressService');\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/platform/progress/common/progress.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/platform/quickinput/browser/commandsQuickAccess.js":
/*!**********************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/platform/quickinput/browser/commandsQuickAccess.js ***!
\**********************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ AbstractCommandsQuickAccessProvider: () => (/* binding */ AbstractCommandsQuickAccessProvider),\n/* harmony export */ CommandsHistory: () => (/* binding */ CommandsHistory)\n/* harmony export */ });\n/* harmony import */ var _base_common_errorMessage_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../base/common/errorMessage.js */ \"./node_modules/monaco-editor/esm/vs/base/common/errorMessage.js\");\n/* harmony import */ var _base_common_errors_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../base/common/errors.js */ \"./node_modules/monaco-editor/esm/vs/base/common/errors.js\");\n/* harmony import */ var _base_common_filters_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../base/common/filters.js */ \"./node_modules/monaco-editor/esm/vs/base/common/filters.js\");\n/* harmony import */ var _base_common_functional_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../../base/common/functional.js */ \"./node_modules/monaco-editor/esm/vs/base/common/functional.js\");\n/* harmony import */ var _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../../base/common/lifecycle.js */ \"./node_modules/monaco-editor/esm/vs/base/common/lifecycle.js\");\n/* harmony import */ var _base_common_map_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../../../base/common/map.js */ \"./node_modules/monaco-editor/esm/vs/base/common/map.js\");\n/* harmony import */ var _base_common_tfIdf_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../../../base/common/tfIdf.js */ \"./node_modules/monaco-editor/esm/vs/base/common/tfIdf.js\");\n/* harmony import */ var _nls_js__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ../../../nls.js */ \"./node_modules/monaco-editor/esm/vs/nls.js\");\n/* harmony import */ var _commands_common_commands_js__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ../../commands/common/commands.js */ \"./node_modules/monaco-editor/esm/vs/platform/commands/common/commands.js\");\n/* harmony import */ var _configuration_common_configuration_js__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ../../configuration/common/configuration.js */ \"./node_modules/monaco-editor/esm/vs/platform/configuration/common/configuration.js\");\n/* harmony import */ var _dialogs_common_dialogs_js__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! ../../dialogs/common/dialogs.js */ \"./node_modules/monaco-editor/esm/vs/platform/dialogs/common/dialogs.js\");\n/* harmony import */ var _instantiation_common_instantiation_js__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(/*! ../../instantiation/common/instantiation.js */ \"./node_modules/monaco-editor/esm/vs/platform/instantiation/common/instantiation.js\");\n/* harmony import */ var _keybinding_common_keybinding_js__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(/*! ../../keybinding/common/keybinding.js */ \"./node_modules/monaco-editor/esm/vs/platform/keybinding/common/keybinding.js\");\n/* harmony import */ var _pickerQuickAccess_js__WEBPACK_IMPORTED_MODULE_13__ = __webpack_require__(/*! ./pickerQuickAccess.js */ \"./node_modules/monaco-editor/esm/vs/platform/quickinput/browser/pickerQuickAccess.js\");\n/* harmony import */ var _storage_common_storage_js__WEBPACK_IMPORTED_MODULE_14__ = __webpack_require__(/*! ../../storage/common/storage.js */ \"./node_modules/monaco-editor/esm/vs/platform/storage/common/storage.js\");\n/* harmony import */ var _telemetry_common_telemetry_js__WEBPACK_IMPORTED_MODULE_15__ = __webpack_require__(/*! ../../telemetry/common/telemetry.js */ \"./node_modules/monaco-editor/esm/vs/platform/telemetry/common/telemetry.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\nvar __decorate = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\n return c > 3 && r && Object.defineProperty(target, key, r), r;\n};\nvar __param = (undefined && undefined.__param) || function (paramIndex, decorator) {\n return function (target, key) { decorator(target, key, paramIndex); }\n};\nvar AbstractCommandsQuickAccessProvider_1, CommandsHistory_1;\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlet AbstractCommandsQuickAccessProvider = AbstractCommandsQuickAccessProvider_1 = class AbstractCommandsQuickAccessProvider extends _pickerQuickAccess_js__WEBPACK_IMPORTED_MODULE_13__.PickerQuickAccessProvider {\n constructor(options, instantiationService, keybindingService, commandService, telemetryService, dialogService) {\n super(AbstractCommandsQuickAccessProvider_1.PREFIX, options);\n this.instantiationService = instantiationService;\n this.keybindingService = keybindingService;\n this.commandService = commandService;\n this.telemetryService = telemetryService;\n this.dialogService = dialogService;\n this.commandsHistory = this._register(this.instantiationService.createInstance(CommandsHistory));\n this.options = options;\n }\n async _getPicks(filter, _disposables, token, runOptions) {\n var _a, _b, _c, _d;\n // Ask subclass for all command picks\n const allCommandPicks = await this.getCommandPicks(token);\n if (token.isCancellationRequested) {\n return [];\n }\n const runTfidf = (0,_base_common_functional_js__WEBPACK_IMPORTED_MODULE_3__.createSingleCallFunction)(() => {\n const tfidf = new _base_common_tfIdf_js__WEBPACK_IMPORTED_MODULE_6__.TfIdfCalculator();\n tfidf.updateDocuments(allCommandPicks.map(commandPick => ({\n key: commandPick.commandId,\n textChunks: [this.getTfIdfChunk(commandPick)]\n })));\n const result = tfidf.calculateScores(filter, token);\n return (0,_base_common_tfIdf_js__WEBPACK_IMPORTED_MODULE_6__.normalizeTfIdfScores)(result)\n .filter(score => score.score > AbstractCommandsQuickAccessProvider_1.TFIDF_THRESHOLD)\n .slice(0, AbstractCommandsQuickAccessProvider_1.TFIDF_MAX_RESULTS);\n });\n // Filter\n const filteredCommandPicks = [];\n for (const commandPick of allCommandPicks) {\n const labelHighlights = (_a = AbstractCommandsQuickAccessProvider_1.WORD_FILTER(filter, commandPick.label)) !== null && _a !== void 0 ? _a : undefined;\n const aliasHighlights = commandPick.commandAlias ? (_b = AbstractCommandsQuickAccessProvider_1.WORD_FILTER(filter, commandPick.commandAlias)) !== null && _b !== void 0 ? _b : undefined : undefined;\n // Add if matching in label or alias\n if (labelHighlights || aliasHighlights) {\n commandPick.highlights = {\n label: labelHighlights,\n detail: this.options.showAlias ? aliasHighlights : undefined\n };\n filteredCommandPicks.push(commandPick);\n }\n // Also add if we have a 100% command ID match\n else if (filter === commandPick.commandId) {\n filteredCommandPicks.push(commandPick);\n }\n // Handle tf-idf scoring for the rest if there's a filter\n else if (filter.length >= 3) {\n const tfidf = runTfidf();\n if (token.isCancellationRequested) {\n return [];\n }\n // Add if we have a tf-idf score\n const tfidfScore = tfidf.find(score => score.key === commandPick.commandId);\n if (tfidfScore) {\n commandPick.tfIdfScore = tfidfScore.score;\n filteredCommandPicks.push(commandPick);\n }\n }\n }\n // Add description to commands that have duplicate labels\n const mapLabelToCommand = new Map();\n for (const commandPick of filteredCommandPicks) {\n const existingCommandForLabel = mapLabelToCommand.get(commandPick.label);\n if (existingCommandForLabel) {\n commandPick.description = commandPick.commandId;\n existingCommandForLabel.description = existingCommandForLabel.commandId;\n }\n else {\n mapLabelToCommand.set(commandPick.label, commandPick);\n }\n }\n // Sort by MRU order and fallback to name otherwise\n filteredCommandPicks.sort((commandPickA, commandPickB) => {\n // If a result came from tf-idf, we want to put that towards the bottom\n if (commandPickA.tfIdfScore && commandPickB.tfIdfScore) {\n if (commandPickA.tfIdfScore === commandPickB.tfIdfScore) {\n return commandPickA.label.localeCompare(commandPickB.label); // prefer lexicographically smaller command\n }\n return commandPickB.tfIdfScore - commandPickA.tfIdfScore; // prefer higher tf-idf score\n }\n else if (commandPickA.tfIdfScore) {\n return 1; // first command has a score but other doesn't so other wins\n }\n else if (commandPickB.tfIdfScore) {\n return -1; // other command has a score but first doesn't so first wins\n }\n const commandACounter = this.commandsHistory.peek(commandPickA.commandId);\n const commandBCounter = this.commandsHistory.peek(commandPickB.commandId);\n if (commandACounter && commandBCounter) {\n return commandACounter > commandBCounter ? -1 : 1; // use more recently used command before older\n }\n if (commandACounter) {\n return -1; // first command was used, so it wins over the non used one\n }\n if (commandBCounter) {\n return 1; // other command was used so it wins over the command\n }\n if (this.options.suggestedCommandIds) {\n const commandASuggestion = this.options.suggestedCommandIds.has(commandPickA.commandId);\n const commandBSuggestion = this.options.suggestedCommandIds.has(commandPickB.commandId);\n if (commandASuggestion && commandBSuggestion) {\n return 0; // honor the order of the array\n }\n if (commandASuggestion) {\n return -1; // first command was suggested, so it wins over the non suggested one\n }\n if (commandBSuggestion) {\n return 1; // other command was suggested so it wins over the command\n }\n }\n // both commands were never used, so we sort by name\n return commandPickA.label.localeCompare(commandPickB.label);\n });\n const commandPicks = [];\n let addOtherSeparator = false;\n let addSuggestedSeparator = true;\n let addCommonlyUsedSeparator = !!this.options.suggestedCommandIds;\n for (let i = 0; i < filteredCommandPicks.length; i++) {\n const commandPick = filteredCommandPicks[i];\n // Separator: recently used\n if (i === 0 && this.commandsHistory.peek(commandPick.commandId)) {\n commandPicks.push({ type: 'separator', label: (0,_nls_js__WEBPACK_IMPORTED_MODULE_7__.localize)('recentlyUsed', \"recently used\") });\n addOtherSeparator = true;\n }\n if (addSuggestedSeparator && commandPick.tfIdfScore !== undefined) {\n commandPicks.push({ type: 'separator', label: (0,_nls_js__WEBPACK_IMPORTED_MODULE_7__.localize)('suggested', \"similar commands\") });\n addSuggestedSeparator = false;\n }\n // Separator: commonly used\n if (addCommonlyUsedSeparator && commandPick.tfIdfScore === undefined && !this.commandsHistory.peek(commandPick.commandId) && ((_c = this.options.suggestedCommandIds) === null || _c === void 0 ? void 0 : _c.has(commandPick.commandId))) {\n commandPicks.push({ type: 'separator', label: (0,_nls_js__WEBPACK_IMPORTED_MODULE_7__.localize)('commonlyUsed', \"commonly used\") });\n addOtherSeparator = true;\n addCommonlyUsedSeparator = false;\n }\n // Separator: other commands\n if (addOtherSeparator && commandPick.tfIdfScore === undefined && !this.commandsHistory.peek(commandPick.commandId) && !((_d = this.options.suggestedCommandIds) === null || _d === void 0 ? void 0 : _d.has(commandPick.commandId))) {\n commandPicks.push({ type: 'separator', label: (0,_nls_js__WEBPACK_IMPORTED_MODULE_7__.localize)('morecCommands', \"other commands\") });\n addOtherSeparator = false;\n }\n // Command\n commandPicks.push(this.toCommandPick(commandPick, runOptions));\n }\n if (!this.hasAdditionalCommandPicks(filter, token)) {\n return commandPicks;\n }\n return {\n picks: commandPicks,\n additionalPicks: (async () => {\n var _a;\n const additionalCommandPicks = await this.getAdditionalCommandPicks(allCommandPicks, filteredCommandPicks, filter, token);\n if (token.isCancellationRequested) {\n return [];\n }\n const commandPicks = additionalCommandPicks.map(commandPick => this.toCommandPick(commandPick, runOptions));\n // Basically, if we haven't already added a separator, we add one before the additional picks so long\n // as one hasn't been added to the start of the array.\n if (addSuggestedSeparator && ((_a = commandPicks[0]) === null || _a === void 0 ? void 0 : _a.type) !== 'separator') {\n commandPicks.unshift({ type: 'separator', label: (0,_nls_js__WEBPACK_IMPORTED_MODULE_7__.localize)('suggested', \"similar commands\") });\n }\n return commandPicks;\n })()\n };\n }\n toCommandPick(commandPick, runOptions) {\n if (commandPick.type === 'separator') {\n return commandPick;\n }\n const keybinding = this.keybindingService.lookupKeybinding(commandPick.commandId);\n const ariaLabel = keybinding ?\n (0,_nls_js__WEBPACK_IMPORTED_MODULE_7__.localize)('commandPickAriaLabelWithKeybinding', \"{0}, {1}\", commandPick.label, keybinding.getAriaLabel()) :\n commandPick.label;\n return {\n ...commandPick,\n ariaLabel,\n detail: this.options.showAlias && commandPick.commandAlias !== commandPick.label ? commandPick.commandAlias : undefined,\n keybinding,\n accept: async () => {\n var _a, _b;\n // Add to history\n this.commandsHistory.push(commandPick.commandId);\n // Telementry\n this.telemetryService.publicLog2('workbenchActionExecuted', {\n id: commandPick.commandId,\n from: (_a = runOptions === null || runOptions === void 0 ? void 0 : runOptions.from) !== null && _a !== void 0 ? _a : 'quick open'\n });\n // Run\n try {\n ((_b = commandPick.args) === null || _b === void 0 ? void 0 : _b.length)\n ? await this.commandService.executeCommand(commandPick.commandId, ...commandPick.args)\n : await this.commandService.executeCommand(commandPick.commandId);\n }\n catch (error) {\n if (!(0,_base_common_errors_js__WEBPACK_IMPORTED_MODULE_1__.isCancellationError)(error)) {\n this.dialogService.error((0,_nls_js__WEBPACK_IMPORTED_MODULE_7__.localize)('canNotRun', \"Command '{0}' resulted in an error\", commandPick.label), (0,_base_common_errorMessage_js__WEBPACK_IMPORTED_MODULE_0__.toErrorMessage)(error));\n }\n }\n }\n };\n }\n // TF-IDF string to be indexed\n getTfIdfChunk({ label, commandAlias, commandDescription }) {\n let chunk = label;\n if (commandAlias && commandAlias !== label) {\n chunk += ` - ${commandAlias}`;\n }\n if (commandDescription && commandDescription.value !== label) {\n // If the original is the same as the value, don't add it\n chunk += ` - ${commandDescription.value === commandDescription.original ? commandDescription.value : `${commandDescription.value} (${commandDescription.original})`}`;\n }\n return chunk;\n }\n};\nAbstractCommandsQuickAccessProvider.PREFIX = '>';\nAbstractCommandsQuickAccessProvider.TFIDF_THRESHOLD = 0.5;\nAbstractCommandsQuickAccessProvider.TFIDF_MAX_RESULTS = 5;\nAbstractCommandsQuickAccessProvider.WORD_FILTER = (0,_base_common_filters_js__WEBPACK_IMPORTED_MODULE_2__.or)(_base_common_filters_js__WEBPACK_IMPORTED_MODULE_2__.matchesPrefix, _base_common_filters_js__WEBPACK_IMPORTED_MODULE_2__.matchesWords, _base_common_filters_js__WEBPACK_IMPORTED_MODULE_2__.matchesContiguousSubString);\nAbstractCommandsQuickAccessProvider = AbstractCommandsQuickAccessProvider_1 = __decorate([\n __param(1, _instantiation_common_instantiation_js__WEBPACK_IMPORTED_MODULE_11__.IInstantiationService),\n __param(2, _keybinding_common_keybinding_js__WEBPACK_IMPORTED_MODULE_12__.IKeybindingService),\n __param(3, _commands_common_commands_js__WEBPACK_IMPORTED_MODULE_8__.ICommandService),\n __param(4, _telemetry_common_telemetry_js__WEBPACK_IMPORTED_MODULE_15__.ITelemetryService),\n __param(5, _dialogs_common_dialogs_js__WEBPACK_IMPORTED_MODULE_10__.IDialogService)\n], AbstractCommandsQuickAccessProvider);\n\nlet CommandsHistory = CommandsHistory_1 = class CommandsHistory extends _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_4__.Disposable {\n constructor(storageService, configurationService) {\n super();\n this.storageService = storageService;\n this.configurationService = configurationService;\n this.configuredCommandsHistoryLength = 0;\n this.updateConfiguration();\n this.load();\n this.registerListeners();\n }\n registerListeners() {\n this._register(this.configurationService.onDidChangeConfiguration(e => this.updateConfiguration(e)));\n this._register(this.storageService.onWillSaveState(e => {\n if (e.reason === _storage_common_storage_js__WEBPACK_IMPORTED_MODULE_14__.WillSaveStateReason.SHUTDOWN) {\n // Commands history is very dynamic and so we limit impact\n // on storage to only save on shutdown. This helps reduce\n // the overhead of syncing this data across machines.\n this.saveState();\n }\n }));\n }\n updateConfiguration(e) {\n if (e && !e.affectsConfiguration('workbench.commandPalette.history')) {\n return;\n }\n this.configuredCommandsHistoryLength = CommandsHistory_1.getConfiguredCommandHistoryLength(this.configurationService);\n if (CommandsHistory_1.cache && CommandsHistory_1.cache.limit !== this.configuredCommandsHistoryLength) {\n CommandsHistory_1.cache.limit = this.configuredCommandsHistoryLength;\n CommandsHistory_1.hasChanges = true;\n }\n }\n load() {\n const raw = this.storageService.get(CommandsHistory_1.PREF_KEY_CACHE, 0 /* StorageScope.PROFILE */);\n let serializedCache;\n if (raw) {\n try {\n serializedCache = JSON.parse(raw);\n }\n catch (error) {\n // invalid data\n }\n }\n const cache = CommandsHistory_1.cache = new _base_common_map_js__WEBPACK_IMPORTED_MODULE_5__.LRUCache(this.configuredCommandsHistoryLength, 1);\n if (serializedCache) {\n let entries;\n if (serializedCache.usesLRU) {\n entries = serializedCache.entries;\n }\n else {\n entries = serializedCache.entries.sort((a, b) => a.value - b.value);\n }\n entries.forEach(entry => cache.set(entry.key, entry.value));\n }\n CommandsHistory_1.counter = this.storageService.getNumber(CommandsHistory_1.PREF_KEY_COUNTER, 0 /* StorageScope.PROFILE */, CommandsHistory_1.counter);\n }\n push(commandId) {\n if (!CommandsHistory_1.cache) {\n return;\n }\n CommandsHistory_1.cache.set(commandId, CommandsHistory_1.counter++); // set counter to command\n CommandsHistory_1.hasChanges = true;\n }\n peek(commandId) {\n var _a;\n return (_a = CommandsHistory_1.cache) === null || _a === void 0 ? void 0 : _a.peek(commandId);\n }\n saveState() {\n if (!CommandsHistory_1.cache) {\n return;\n }\n if (!CommandsHistory_1.hasChanges) {\n return;\n }\n const serializedCache = { usesLRU: true, entries: [] };\n CommandsHistory_1.cache.forEach((value, key) => serializedCache.entries.push({ key, value }));\n this.storageService.store(CommandsHistory_1.PREF_KEY_CACHE, JSON.stringify(serializedCache), 0 /* StorageScope.PROFILE */, 0 /* StorageTarget.USER */);\n this.storageService.store(CommandsHistory_1.PREF_KEY_COUNTER, CommandsHistory_1.counter, 0 /* StorageScope.PROFILE */, 0 /* StorageTarget.USER */);\n CommandsHistory_1.hasChanges = false;\n }\n static getConfiguredCommandHistoryLength(configurationService) {\n var _a, _b;\n const config = configurationService.getValue();\n const configuredCommandHistoryLength = (_b = (_a = config.workbench) === null || _a === void 0 ? void 0 : _a.commandPalette) === null || _b === void 0 ? void 0 : _b.history;\n if (typeof configuredCommandHistoryLength === 'number') {\n return configuredCommandHistoryLength;\n }\n return CommandsHistory_1.DEFAULT_COMMANDS_HISTORY_LENGTH;\n }\n};\nCommandsHistory.DEFAULT_COMMANDS_HISTORY_LENGTH = 50;\nCommandsHistory.PREF_KEY_CACHE = 'commandPalette.mru.cache';\nCommandsHistory.PREF_KEY_COUNTER = 'commandPalette.mru.counter';\nCommandsHistory.counter = 1;\nCommandsHistory.hasChanges = false;\nCommandsHistory = CommandsHistory_1 = __decorate([\n __param(0, _storage_common_storage_js__WEBPACK_IMPORTED_MODULE_14__.IStorageService),\n __param(1, _configuration_common_configuration_js__WEBPACK_IMPORTED_MODULE_9__.IConfigurationService)\n], CommandsHistory);\n\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/platform/quickinput/browser/commandsQuickAccess.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/platform/quickinput/browser/helpQuickAccess.js":
/*!******************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/platform/quickinput/browser/helpQuickAccess.js ***!
\******************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ HelpQuickAccessProvider: () => (/* binding */ HelpQuickAccessProvider)\n/* harmony export */ });\n/* harmony import */ var _nls_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../nls.js */ \"./node_modules/monaco-editor/esm/vs/nls.js\");\n/* harmony import */ var _registry_common_platform_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../registry/common/platform.js */ \"./node_modules/monaco-editor/esm/vs/platform/registry/common/platform.js\");\n/* harmony import */ var _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../base/common/lifecycle.js */ \"./node_modules/monaco-editor/esm/vs/base/common/lifecycle.js\");\n/* harmony import */ var _keybinding_common_keybinding_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../keybinding/common/keybinding.js */ \"./node_modules/monaco-editor/esm/vs/platform/keybinding/common/keybinding.js\");\n/* harmony import */ var _common_quickAccess_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../common/quickAccess.js */ \"./node_modules/monaco-editor/esm/vs/platform/quickinput/common/quickAccess.js\");\n/* harmony import */ var _common_quickInput_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../common/quickInput.js */ \"./node_modules/monaco-editor/esm/vs/platform/quickinput/common/quickInput.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\nvar __decorate = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\n return c > 3 && r && Object.defineProperty(target, key, r), r;\n};\nvar __param = (undefined && undefined.__param) || function (paramIndex, decorator) {\n return function (target, key) { decorator(target, key, paramIndex); }\n};\nvar HelpQuickAccessProvider_1;\n\n\n\n\n\n\nlet HelpQuickAccessProvider = HelpQuickAccessProvider_1 = class HelpQuickAccessProvider {\n constructor(quickInputService, keybindingService) {\n this.quickInputService = quickInputService;\n this.keybindingService = keybindingService;\n this.registry = _registry_common_platform_js__WEBPACK_IMPORTED_MODULE_1__.Registry.as(_common_quickAccess_js__WEBPACK_IMPORTED_MODULE_4__.Extensions.Quickaccess);\n }\n provide(picker) {\n const disposables = new _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_2__.DisposableStore();\n // Open a picker with the selected value if picked\n disposables.add(picker.onDidAccept(() => {\n const [item] = picker.selectedItems;\n if (item) {\n this.quickInputService.quickAccess.show(item.prefix, { preserveValue: true });\n }\n }));\n // Also open a picker when we detect the user typed the exact\n // name of a provider (e.g. `?term` for terminals)\n disposables.add(picker.onDidChangeValue(value => {\n const providerDescriptor = this.registry.getQuickAccessProvider(value.substr(HelpQuickAccessProvider_1.PREFIX.length));\n if (providerDescriptor && providerDescriptor.prefix && providerDescriptor.prefix !== HelpQuickAccessProvider_1.PREFIX) {\n this.quickInputService.quickAccess.show(providerDescriptor.prefix, { preserveValue: true });\n }\n }));\n // Fill in all providers\n picker.items = this.getQuickAccessProviders().filter(p => p.prefix !== HelpQuickAccessProvider_1.PREFIX);\n return disposables;\n }\n getQuickAccessProviders() {\n const providers = this.registry\n .getQuickAccessProviders()\n .sort((providerA, providerB) => providerA.prefix.localeCompare(providerB.prefix))\n .flatMap(provider => this.createPicks(provider));\n return providers;\n }\n createPicks(provider) {\n return provider.helpEntries.map(helpEntry => {\n const prefix = helpEntry.prefix || provider.prefix;\n const label = prefix || '\\u2026' /* ... */;\n return {\n prefix,\n label,\n keybinding: helpEntry.commandId ? this.keybindingService.lookupKeybinding(helpEntry.commandId) : undefined,\n ariaLabel: (0,_nls_js__WEBPACK_IMPORTED_MODULE_0__.localize)('helpPickAriaLabel', \"{0}, {1}\", label, helpEntry.description),\n description: helpEntry.description\n };\n });\n }\n};\nHelpQuickAccessProvider.PREFIX = '?';\nHelpQuickAccessProvider = HelpQuickAccessProvider_1 = __decorate([\n __param(0, _common_quickInput_js__WEBPACK_IMPORTED_MODULE_5__.IQuickInputService),\n __param(1, _keybinding_common_keybinding_js__WEBPACK_IMPORTED_MODULE_3__.IKeybindingService)\n], HelpQuickAccessProvider);\n\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/platform/quickinput/browser/helpQuickAccess.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/platform/quickinput/browser/pickerQuickAccess.js":
/*!********************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/platform/quickinput/browser/pickerQuickAccess.js ***!
\********************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ PickerQuickAccessProvider: () => (/* binding */ PickerQuickAccessProvider),\n/* harmony export */ TriggerAction: () => (/* binding */ TriggerAction)\n/* harmony export */ });\n/* harmony import */ var _base_common_async_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../base/common/async.js */ \"./node_modules/monaco-editor/esm/vs/base/common/async.js\");\n/* harmony import */ var _base_common_cancellation_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../base/common/cancellation.js */ \"./node_modules/monaco-editor/esm/vs/base/common/cancellation.js\");\n/* harmony import */ var _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../base/common/lifecycle.js */ \"./node_modules/monaco-editor/esm/vs/base/common/lifecycle.js\");\n/* harmony import */ var _base_common_types_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../../base/common/types.js */ \"./node_modules/monaco-editor/esm/vs/base/common/types.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n\n\n\nvar TriggerAction;\n(function (TriggerAction) {\n /**\n * Do nothing after the button was clicked.\n */\n TriggerAction[TriggerAction[\"NO_ACTION\"] = 0] = \"NO_ACTION\";\n /**\n * Close the picker.\n */\n TriggerAction[TriggerAction[\"CLOSE_PICKER\"] = 1] = \"CLOSE_PICKER\";\n /**\n * Update the results of the picker.\n */\n TriggerAction[TriggerAction[\"REFRESH_PICKER\"] = 2] = \"REFRESH_PICKER\";\n /**\n * Remove the item from the picker.\n */\n TriggerAction[TriggerAction[\"REMOVE_ITEM\"] = 3] = \"REMOVE_ITEM\";\n})(TriggerAction || (TriggerAction = {}));\nfunction isPicksWithActive(obj) {\n const candidate = obj;\n return Array.isArray(candidate.items);\n}\nfunction isFastAndSlowPicks(obj) {\n const candidate = obj;\n return !!candidate.picks && candidate.additionalPicks instanceof Promise;\n}\nclass PickerQuickAccessProvider extends _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_2__.Disposable {\n constructor(prefix, options) {\n super();\n this.prefix = prefix;\n this.options = options;\n }\n provide(picker, token, runOptions) {\n var _a;\n const disposables = new _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_2__.DisposableStore();\n // Apply options if any\n picker.canAcceptInBackground = !!((_a = this.options) === null || _a === void 0 ? void 0 : _a.canAcceptInBackground);\n // Disable filtering & sorting, we control the results\n picker.matchOnLabel = picker.matchOnDescription = picker.matchOnDetail = picker.sortByLabel = false;\n // Set initial picks and update on type\n let picksCts = undefined;\n const picksDisposable = disposables.add(new _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_2__.MutableDisposable());\n const updatePickerItems = async () => {\n var _a;\n const picksDisposables = picksDisposable.value = new _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_2__.DisposableStore();\n // Cancel any previous ask for picks and busy\n picksCts === null || picksCts === void 0 ? void 0 : picksCts.dispose(true);\n picker.busy = false;\n // Create new cancellation source for this run\n picksCts = new _base_common_cancellation_js__WEBPACK_IMPORTED_MODULE_1__.CancellationTokenSource(token);\n // Collect picks and support both long running and short or combined\n const picksToken = picksCts.token;\n let picksFilter = picker.value.substring(this.prefix.length);\n if (!((_a = this.options) === null || _a === void 0 ? void 0 : _a.shouldSkipTrimPickFilter)) {\n picksFilter = picksFilter.trim();\n }\n const providedPicks = this._getPicks(picksFilter, picksDisposables, picksToken, runOptions);\n const applyPicks = (picks, skipEmpty) => {\n var _a;\n let items;\n let activeItem = undefined;\n if (isPicksWithActive(picks)) {\n items = picks.items;\n activeItem = picks.active;\n }\n else {\n items = picks;\n }\n if (items.length === 0) {\n if (skipEmpty) {\n return false;\n }\n // We show the no results pick if we have no input to prevent completely empty pickers #172613\n if ((picksFilter.length > 0 || picker.hideInput) && ((_a = this.options) === null || _a === void 0 ? void 0 : _a.noResultsPick)) {\n if ((0,_base_common_types_js__WEBPACK_IMPORTED_MODULE_3__.isFunction)(this.options.noResultsPick)) {\n items = [this.options.noResultsPick(picksFilter)];\n }\n else {\n items = [this.options.noResultsPick];\n }\n }\n }\n picker.items = items;\n if (activeItem) {\n picker.activeItems = [activeItem];\n }\n return true;\n };\n const applyFastAndSlowPicks = async (fastAndSlowPicks) => {\n let fastPicksApplied = false;\n let slowPicksApplied = false;\n await Promise.all([\n // Fast Picks: if `mergeDelay` is configured, in order to reduce\n // amount of flicker, we race against the slow picks over some delay\n // and then set the fast picks.\n // If the slow picks are faster, we reduce the flicker by only\n // setting the items once.\n (async () => {\n if (typeof fastAndSlowPicks.mergeDelay === 'number') {\n await (0,_base_common_async_js__WEBPACK_IMPORTED_MODULE_0__.timeout)(fastAndSlowPicks.mergeDelay);\n if (picksToken.isCancellationRequested) {\n return;\n }\n }\n if (!slowPicksApplied) {\n fastPicksApplied = applyPicks(fastAndSlowPicks.picks, true /* skip over empty to reduce flicker */);\n }\n })(),\n // Slow Picks: we await the slow picks and then set them at\n // once together with the fast picks, but only if we actually\n // have additional results.\n (async () => {\n picker.busy = true;\n try {\n const awaitedAdditionalPicks = await fastAndSlowPicks.additionalPicks;\n if (picksToken.isCancellationRequested) {\n return;\n }\n let picks;\n let activePick = undefined;\n if (isPicksWithActive(fastAndSlowPicks.picks)) {\n picks = fastAndSlowPicks.picks.items;\n activePick = fastAndSlowPicks.picks.active;\n }\n else {\n picks = fastAndSlowPicks.picks;\n }\n let additionalPicks;\n let additionalActivePick = undefined;\n if (isPicksWithActive(awaitedAdditionalPicks)) {\n additionalPicks = awaitedAdditionalPicks.items;\n additionalActivePick = awaitedAdditionalPicks.active;\n }\n else {\n additionalPicks = awaitedAdditionalPicks;\n }\n if (additionalPicks.length > 0 || !fastPicksApplied) {\n // If we do not have any activePick or additionalActivePick\n // we try to preserve the currently active pick from the\n // fast results. This fixes an issue where the user might\n // have made a pick active before the additional results\n // kick in.\n // See https://github.com/microsoft/vscode/issues/102480\n let fallbackActivePick = undefined;\n if (!activePick && !additionalActivePick) {\n const fallbackActivePickCandidate = picker.activeItems[0];\n if (fallbackActivePickCandidate && picks.indexOf(fallbackActivePickCandidate) !== -1) {\n fallbackActivePick = fallbackActivePickCandidate;\n }\n }\n applyPicks({\n items: [...picks, ...additionalPicks],\n active: activePick || additionalActivePick || fallbackActivePick\n });\n }\n }\n finally {\n if (!picksToken.isCancellationRequested) {\n picker.busy = false;\n }\n slowPicksApplied = true;\n }\n })()\n ]);\n };\n // No Picks\n if (providedPicks === null) {\n // Ignore\n }\n // Fast and Slow Picks\n else if (isFastAndSlowPicks(providedPicks)) {\n await applyFastAndSlowPicks(providedPicks);\n }\n // Fast Picks\n else if (!(providedPicks instanceof Promise)) {\n applyPicks(providedPicks);\n }\n // Slow Picks\n else {\n picker.busy = true;\n try {\n const awaitedPicks = await providedPicks;\n if (picksToken.isCancellationRequested) {\n return;\n }\n if (isFastAndSlowPicks(awaitedPicks)) {\n await applyFastAndSlowPicks(awaitedPicks);\n }\n else {\n applyPicks(awaitedPicks);\n }\n }\n finally {\n if (!picksToken.isCancellationRequested) {\n picker.busy = false;\n }\n }\n }\n };\n disposables.add(picker.onDidChangeValue(() => updatePickerItems()));\n updatePickerItems();\n // Accept the pick on accept and hide picker\n disposables.add(picker.onDidAccept(event => {\n const [item] = picker.selectedItems;\n if (typeof (item === null || item === void 0 ? void 0 : item.accept) === 'function') {\n if (!event.inBackground) {\n picker.hide(); // hide picker unless we accept in background\n }\n item.accept(picker.keyMods, event);\n }\n }));\n // Trigger the pick with button index if button triggered\n disposables.add(picker.onDidTriggerItemButton(async ({ button, item }) => {\n var _a, _b;\n if (typeof item.trigger === 'function') {\n const buttonIndex = (_b = (_a = item.buttons) === null || _a === void 0 ? void 0 : _a.indexOf(button)) !== null && _b !== void 0 ? _b : -1;\n if (buttonIndex >= 0) {\n const result = item.trigger(buttonIndex, picker.keyMods);\n const action = (typeof result === 'number') ? result : await result;\n if (token.isCancellationRequested) {\n return;\n }\n switch (action) {\n case TriggerAction.NO_ACTION:\n break;\n case TriggerAction.CLOSE_PICKER:\n picker.hide();\n break;\n case TriggerAction.REFRESH_PICKER:\n updatePickerItems();\n break;\n case TriggerAction.REMOVE_ITEM: {\n const index = picker.items.indexOf(item);\n if (index !== -1) {\n const items = picker.items.slice();\n const removed = items.splice(index, 1);\n const activeItems = picker.activeItems.filter(activeItem => activeItem !== removed[0]);\n const keepScrollPositionBefore = picker.keepScrollPosition;\n picker.keepScrollPosition = true;\n picker.items = items;\n if (activeItems) {\n picker.activeItems = activeItems;\n }\n picker.keepScrollPosition = keepScrollPositionBefore;\n }\n break;\n }\n }\n }\n }\n }));\n return disposables;\n }\n}\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/platform/quickinput/browser/pickerQuickAccess.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/platform/quickinput/browser/quickAccess.js":
/*!**************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/platform/quickinput/browser/quickAccess.js ***!
\**************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ QuickAccessController: () => (/* binding */ QuickAccessController)\n/* harmony export */ });\n/* harmony import */ var _base_common_async_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../base/common/async.js */ \"./node_modules/monaco-editor/esm/vs/base/common/async.js\");\n/* harmony import */ var _base_common_cancellation_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../base/common/cancellation.js */ \"./node_modules/monaco-editor/esm/vs/base/common/cancellation.js\");\n/* harmony import */ var _base_common_event_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../base/common/event.js */ \"./node_modules/monaco-editor/esm/vs/base/common/event.js\");\n/* harmony import */ var _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../../base/common/lifecycle.js */ \"./node_modules/monaco-editor/esm/vs/base/common/lifecycle.js\");\n/* harmony import */ var _instantiation_common_instantiation_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../instantiation/common/instantiation.js */ \"./node_modules/monaco-editor/esm/vs/platform/instantiation/common/instantiation.js\");\n/* harmony import */ var _common_quickAccess_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../common/quickAccess.js */ \"./node_modules/monaco-editor/esm/vs/platform/quickinput/common/quickAccess.js\");\n/* harmony import */ var _common_quickInput_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../common/quickInput.js */ \"./node_modules/monaco-editor/esm/vs/platform/quickinput/common/quickInput.js\");\n/* harmony import */ var _registry_common_platform_js__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ../../registry/common/platform.js */ \"./node_modules/monaco-editor/esm/vs/platform/registry/common/platform.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\nvar __decorate = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\n return c > 3 && r && Object.defineProperty(target, key, r), r;\n};\nvar __param = (undefined && undefined.__param) || function (paramIndex, decorator) {\n return function (target, key) { decorator(target, key, paramIndex); }\n};\n\n\n\n\n\n\n\n\nlet QuickAccessController = class QuickAccessController extends _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_3__.Disposable {\n constructor(quickInputService, instantiationService) {\n super();\n this.quickInputService = quickInputService;\n this.instantiationService = instantiationService;\n this.registry = _registry_common_platform_js__WEBPACK_IMPORTED_MODULE_7__.Registry.as(_common_quickAccess_js__WEBPACK_IMPORTED_MODULE_5__.Extensions.Quickaccess);\n this.mapProviderToDescriptor = new Map();\n this.lastAcceptedPickerValues = new Map();\n this.visibleQuickAccess = undefined;\n }\n show(value = '', options) {\n this.doShowOrPick(value, false, options);\n }\n doShowOrPick(value, pick, options) {\n var _a;\n // Find provider for the value to show\n const [provider, descriptor] = this.getOrInstantiateProvider(value);\n // Return early if quick access is already showing on that same prefix\n const visibleQuickAccess = this.visibleQuickAccess;\n const visibleDescriptor = visibleQuickAccess === null || visibleQuickAccess === void 0 ? void 0 : visibleQuickAccess.descriptor;\n if (visibleQuickAccess && descriptor && visibleDescriptor === descriptor) {\n // Apply value only if it is more specific than the prefix\n // from the provider and we are not instructed to preserve\n if (value !== descriptor.prefix && !(options === null || options === void 0 ? void 0 : options.preserveValue)) {\n visibleQuickAccess.picker.value = value;\n }\n // Always adjust selection\n this.adjustValueSelection(visibleQuickAccess.picker, descriptor, options);\n return;\n }\n // Rewrite the filter value based on certain rules unless disabled\n if (descriptor && !(options === null || options === void 0 ? void 0 : options.preserveValue)) {\n let newValue = undefined;\n // If we have a visible provider with a value, take it's filter value but\n // rewrite to new provider prefix in case they differ\n if (visibleQuickAccess && visibleDescriptor && visibleDescriptor !== descriptor) {\n const newValueCandidateWithoutPrefix = visibleQuickAccess.value.substr(visibleDescriptor.prefix.length);\n if (newValueCandidateWithoutPrefix) {\n newValue = `${descriptor.prefix}${newValueCandidateWithoutPrefix}`;\n }\n }\n // Otherwise, take a default value as instructed\n if (!newValue) {\n const defaultFilterValue = provider === null || provider === void 0 ? void 0 : provider.defaultFilterValue;\n if (defaultFilterValue === _common_quickAccess_js__WEBPACK_IMPORTED_MODULE_5__.DefaultQuickAccessFilterValue.LAST) {\n newValue = this.lastAcceptedPickerValues.get(descriptor);\n }\n else if (typeof defaultFilterValue === 'string') {\n newValue = `${descriptor.prefix}${defaultFilterValue}`;\n }\n }\n if (typeof newValue === 'string') {\n value = newValue;\n }\n }\n // Create a picker for the provider to use with the initial value\n // and adjust the filtering to exclude the prefix from filtering\n const disposables = new _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_3__.DisposableStore();\n const picker = disposables.add(this.quickInputService.createQuickPick());\n picker.value = value;\n this.adjustValueSelection(picker, descriptor, options);\n picker.placeholder = descriptor === null || descriptor === void 0 ? void 0 : descriptor.placeholder;\n picker.quickNavigate = options === null || options === void 0 ? void 0 : options.quickNavigateConfiguration;\n picker.hideInput = !!picker.quickNavigate && !visibleQuickAccess; // only hide input if there was no picker opened already\n if (typeof (options === null || options === void 0 ? void 0 : options.itemActivation) === 'number' || (options === null || options === void 0 ? void 0 : options.quickNavigateConfiguration)) {\n picker.itemActivation = (_a = options === null || options === void 0 ? void 0 : options.itemActivation) !== null && _a !== void 0 ? _a : _common_quickInput_js__WEBPACK_IMPORTED_MODULE_6__.ItemActivation.SECOND /* quick nav is always second */;\n }\n picker.contextKey = descriptor === null || descriptor === void 0 ? void 0 : descriptor.contextKey;\n picker.filterValue = (value) => value.substring(descriptor ? descriptor.prefix.length : 0);\n // Pick mode: setup a promise that can be resolved\n // with the selected items and prevent execution\n let pickPromise = undefined;\n if (pick) {\n pickPromise = new _base_common_async_js__WEBPACK_IMPORTED_MODULE_0__.DeferredPromise();\n disposables.add(_base_common_event_js__WEBPACK_IMPORTED_MODULE_2__.Event.once(picker.onWillAccept)(e => {\n e.veto();\n picker.hide();\n }));\n }\n // Register listeners\n disposables.add(this.registerPickerListeners(picker, provider, descriptor, value, options === null || options === void 0 ? void 0 : options.providerOptions));\n // Ask provider to fill the picker as needed if we have one\n // and pass over a cancellation token that will indicate when\n // the picker is hiding without a pick being made.\n const cts = disposables.add(new _base_common_cancellation_js__WEBPACK_IMPORTED_MODULE_1__.CancellationTokenSource());\n if (provider) {\n disposables.add(provider.provide(picker, cts.token, options === null || options === void 0 ? void 0 : options.providerOptions));\n }\n // Finally, trigger disposal and cancellation when the picker\n // hides depending on items selected or not.\n _base_common_event_js__WEBPACK_IMPORTED_MODULE_2__.Event.once(picker.onDidHide)(() => {\n if (picker.selectedItems.length === 0) {\n cts.cancel();\n }\n // Start to dispose once picker hides\n disposables.dispose();\n // Resolve pick promise with selected items\n pickPromise === null || pickPromise === void 0 ? void 0 : pickPromise.complete(picker.selectedItems.slice(0));\n });\n // Finally, show the picker. This is important because a provider\n // may not call this and then our disposables would leak that rely\n // on the onDidHide event.\n picker.show();\n // Pick mode: return with promise\n if (pick) {\n return pickPromise === null || pickPromise === void 0 ? void 0 : pickPromise.p;\n }\n }\n adjustValueSelection(picker, descriptor, options) {\n var _a;\n let valueSelection;\n // Preserve: just always put the cursor at the end\n if (options === null || options === void 0 ? void 0 : options.preserveValue) {\n valueSelection = [picker.value.length, picker.value.length];\n }\n // Otherwise: select the value up until the prefix\n else {\n valueSelection = [(_a = descriptor === null || descriptor === void 0 ? void 0 : descriptor.prefix.length) !== null && _a !== void 0 ? _a : 0, picker.value.length];\n }\n picker.valueSelection = valueSelection;\n }\n registerPickerListeners(picker, provider, descriptor, value, providerOptions) {\n const disposables = new _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_3__.DisposableStore();\n // Remember as last visible picker and clean up once picker get's disposed\n const visibleQuickAccess = this.visibleQuickAccess = { picker, descriptor, value };\n disposables.add((0,_base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_3__.toDisposable)(() => {\n if (visibleQuickAccess === this.visibleQuickAccess) {\n this.visibleQuickAccess = undefined;\n }\n }));\n // Whenever the value changes, check if the provider has\n // changed and if so - re-create the picker from the beginning\n disposables.add(picker.onDidChangeValue(value => {\n const [providerForValue] = this.getOrInstantiateProvider(value);\n if (providerForValue !== provider) {\n this.show(value, {\n // do not rewrite value from user typing!\n preserveValue: true,\n // persist the value of the providerOptions from the original showing\n providerOptions\n });\n }\n else {\n visibleQuickAccess.value = value; // remember the value in our visible one\n }\n }));\n // Remember picker input for future use when accepting\n if (descriptor) {\n disposables.add(picker.onDidAccept(() => {\n this.lastAcceptedPickerValues.set(descriptor, picker.value);\n }));\n }\n return disposables;\n }\n getOrInstantiateProvider(value) {\n const providerDescriptor = this.registry.getQuickAccessProvider(value);\n if (!providerDescriptor) {\n return [undefined, undefined];\n }\n let provider = this.mapProviderToDescriptor.get(providerDescriptor);\n if (!provider) {\n provider = this.instantiationService.createInstance(providerDescriptor.ctor);\n this.mapProviderToDescriptor.set(providerDescriptor, provider);\n }\n return [provider, providerDescriptor];\n }\n};\nQuickAccessController = __decorate([\n __param(0, _common_quickInput_js__WEBPACK_IMPORTED_MODULE_6__.IQuickInputService),\n __param(1, _instantiation_common_instantiation_js__WEBPACK_IMPORTED_MODULE_4__.IInstantiationService)\n], QuickAccessController);\n\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/platform/quickinput/browser/quickAccess.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/platform/quickinput/browser/quickInput.js":
/*!*************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/platform/quickinput/browser/quickInput.js ***!
\*************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ InputBox: () => (/* binding */ InputBox),\n/* harmony export */ QuickInputHoverDelegate: () => (/* binding */ QuickInputHoverDelegate),\n/* harmony export */ QuickPick: () => (/* binding */ QuickPick),\n/* harmony export */ backButton: () => (/* binding */ backButton)\n/* harmony export */ });\n/* harmony import */ var _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../base/browser/dom.js */ \"./node_modules/monaco-editor/esm/vs/base/browser/dom.js\");\n/* harmony import */ var _base_browser_keyboardEvent_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../base/browser/keyboardEvent.js */ \"./node_modules/monaco-editor/esm/vs/base/browser/keyboardEvent.js\");\n/* harmony import */ var _base_browser_ui_toggle_toggle_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../base/browser/ui/toggle/toggle.js */ \"./node_modules/monaco-editor/esm/vs/base/browser/ui/toggle/toggle.js\");\n/* harmony import */ var _base_common_arrays_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../../base/common/arrays.js */ \"./node_modules/monaco-editor/esm/vs/base/common/arrays.js\");\n/* harmony import */ var _base_common_async_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../../base/common/async.js */ \"./node_modules/monaco-editor/esm/vs/base/common/async.js\");\n/* harmony import */ var _base_common_codicons_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../../../base/common/codicons.js */ \"./node_modules/monaco-editor/esm/vs/base/common/codicons.js\");\n/* harmony import */ var _base_common_event_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../../../base/common/event.js */ \"./node_modules/monaco-editor/esm/vs/base/common/event.js\");\n/* harmony import */ var _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ../../../base/common/lifecycle.js */ \"./node_modules/monaco-editor/esm/vs/base/common/lifecycle.js\");\n/* harmony import */ var _base_common_platform_js__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ../../../base/common/platform.js */ \"./node_modules/monaco-editor/esm/vs/base/common/platform.js\");\n/* harmony import */ var _base_common_severity_js__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ../../../base/common/severity.js */ \"./node_modules/monaco-editor/esm/vs/base/common/severity.js\");\n/* harmony import */ var _base_common_themables_js__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! ../../../base/common/themables.js */ \"./node_modules/monaco-editor/esm/vs/base/common/themables.js\");\n/* harmony import */ var _media_quickInput_css__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(/*! ./media/quickInput.css */ \"./node_modules/monaco-editor/esm/vs/platform/quickinput/browser/media/quickInput.css\");\n/* harmony import */ var _nls_js__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(/*! ../../../nls.js */ \"./node_modules/monaco-editor/esm/vs/nls.js\");\n/* harmony import */ var _common_quickInput_js__WEBPACK_IMPORTED_MODULE_13__ = __webpack_require__(/*! ../common/quickInput.js */ \"./node_modules/monaco-editor/esm/vs/platform/quickinput/common/quickInput.js\");\n/* harmony import */ var _quickInputList_js__WEBPACK_IMPORTED_MODULE_14__ = __webpack_require__(/*! ./quickInputList.js */ \"./node_modules/monaco-editor/esm/vs/platform/quickinput/browser/quickInputList.js\");\n/* harmony import */ var _quickInputUtils_js__WEBPACK_IMPORTED_MODULE_15__ = __webpack_require__(/*! ./quickInputUtils.js */ \"./node_modules/monaco-editor/esm/vs/platform/quickinput/browser/quickInputUtils.js\");\n/* harmony import */ var _configuration_common_configuration_js__WEBPACK_IMPORTED_MODULE_16__ = __webpack_require__(/*! ../../configuration/common/configuration.js */ \"./node_modules/monaco-editor/esm/vs/platform/configuration/common/configuration.js\");\n/* harmony import */ var _hover_browser_hover_js__WEBPACK_IMPORTED_MODULE_17__ = __webpack_require__(/*! ../../hover/browser/hover.js */ \"./node_modules/monaco-editor/esm/vs/platform/hover/browser/hover.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\nvar __decorate = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\n return c > 3 && r && Object.defineProperty(target, key, r), r;\n};\nvar __param = (undefined && undefined.__param) || function (paramIndex, decorator) {\n return function (target, key) { decorator(target, key, paramIndex); }\n};\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nconst backButton = {\n iconClass: _base_common_themables_js__WEBPACK_IMPORTED_MODULE_10__.ThemeIcon.asClassName(_base_common_codicons_js__WEBPACK_IMPORTED_MODULE_5__.Codicon.quickInputBack),\n tooltip: (0,_nls_js__WEBPACK_IMPORTED_MODULE_12__.localize)('quickInput.back', \"Back\"),\n handle: -1 // TODO\n};\nclass QuickInput extends _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_7__.Disposable {\n constructor(ui) {\n super();\n this.ui = ui;\n this._widgetUpdated = false;\n this.visible = false;\n this._enabled = true;\n this._busy = false;\n this._ignoreFocusOut = false;\n this._buttons = [];\n this.buttonsUpdated = false;\n this._toggles = [];\n this.togglesUpdated = false;\n this.noValidationMessage = QuickInput.noPromptMessage;\n this._severity = _base_common_severity_js__WEBPACK_IMPORTED_MODULE_9__[\"default\"].Ignore;\n this.onDidTriggerButtonEmitter = this._register(new _base_common_event_js__WEBPACK_IMPORTED_MODULE_6__.Emitter());\n this.onDidHideEmitter = this._register(new _base_common_event_js__WEBPACK_IMPORTED_MODULE_6__.Emitter());\n this.onDisposeEmitter = this._register(new _base_common_event_js__WEBPACK_IMPORTED_MODULE_6__.Emitter());\n this.visibleDisposables = this._register(new _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_7__.DisposableStore());\n this.onDidHide = this.onDidHideEmitter.event;\n }\n get title() {\n return this._title;\n }\n set title(title) {\n this._title = title;\n this.update();\n }\n get description() {\n return this._description;\n }\n set description(description) {\n this._description = description;\n this.update();\n }\n get step() {\n return this._steps;\n }\n set step(step) {\n this._steps = step;\n this.update();\n }\n get totalSteps() {\n return this._totalSteps;\n }\n set totalSteps(totalSteps) {\n this._totalSteps = totalSteps;\n this.update();\n }\n get enabled() {\n return this._enabled;\n }\n set enabled(enabled) {\n this._enabled = enabled;\n this.update();\n }\n get contextKey() {\n return this._contextKey;\n }\n set contextKey(contextKey) {\n this._contextKey = contextKey;\n this.update();\n }\n get busy() {\n return this._busy;\n }\n set busy(busy) {\n this._busy = busy;\n this.update();\n }\n get ignoreFocusOut() {\n return this._ignoreFocusOut;\n }\n set ignoreFocusOut(ignoreFocusOut) {\n const shouldUpdate = this._ignoreFocusOut !== ignoreFocusOut && !_base_common_platform_js__WEBPACK_IMPORTED_MODULE_8__.isIOS;\n this._ignoreFocusOut = ignoreFocusOut && !_base_common_platform_js__WEBPACK_IMPORTED_MODULE_8__.isIOS;\n if (shouldUpdate) {\n this.update();\n }\n }\n get buttons() {\n return this._buttons;\n }\n set buttons(buttons) {\n this._buttons = buttons;\n this.buttonsUpdated = true;\n this.update();\n }\n get toggles() {\n return this._toggles;\n }\n set toggles(toggles) {\n this._toggles = toggles !== null && toggles !== void 0 ? toggles : [];\n this.togglesUpdated = true;\n this.update();\n }\n get validationMessage() {\n return this._validationMessage;\n }\n set validationMessage(validationMessage) {\n this._validationMessage = validationMessage;\n this.update();\n }\n get severity() {\n return this._severity;\n }\n set severity(severity) {\n this._severity = severity;\n this.update();\n }\n show() {\n if (this.visible) {\n return;\n }\n this.visibleDisposables.add(this.ui.onDidTriggerButton(button => {\n if (this.buttons.indexOf(button) !== -1) {\n this.onDidTriggerButtonEmitter.fire(button);\n }\n }));\n this.ui.show(this);\n // update properties in the controller that get reset in the ui.show() call\n this.visible = true;\n // This ensures the message/prompt gets rendered\n this._lastValidationMessage = undefined;\n // This ensures the input box has the right severity applied\n this._lastSeverity = undefined;\n if (this.buttons.length) {\n // if there are buttons, the ui.show() clears them out of the UI so we should\n // rerender them.\n this.buttonsUpdated = true;\n }\n if (this.toggles.length) {\n // if there are toggles, the ui.show() clears them out of the UI so we should\n // rerender them.\n this.togglesUpdated = true;\n }\n this.update();\n }\n hide() {\n if (!this.visible) {\n return;\n }\n this.ui.hide();\n }\n didHide(reason = _common_quickInput_js__WEBPACK_IMPORTED_MODULE_13__.QuickInputHideReason.Other) {\n this.visible = false;\n this.visibleDisposables.clear();\n this.onDidHideEmitter.fire({ reason });\n }\n update() {\n var _a, _b;\n if (!this.visible) {\n return;\n }\n const title = this.getTitle();\n if (title && this.ui.title.textContent !== title) {\n this.ui.title.textContent = title;\n }\n else if (!title && this.ui.title.innerHTML !== ' ') {\n this.ui.title.innerText = '\\u00a0';\n }\n const description = this.getDescription();\n if (this.ui.description1.textContent !== description) {\n this.ui.description1.textContent = description;\n }\n if (this.ui.description2.textContent !== description) {\n this.ui.description2.textContent = description;\n }\n if (this._widgetUpdated) {\n this._widgetUpdated = false;\n if (this._widget) {\n _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.reset(this.ui.widget, this._widget);\n }\n else {\n _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.reset(this.ui.widget);\n }\n }\n if (this.busy && !this.busyDelay) {\n this.busyDelay = new _base_common_async_js__WEBPACK_IMPORTED_MODULE_4__.TimeoutTimer();\n this.busyDelay.setIfNotSet(() => {\n if (this.visible) {\n this.ui.progressBar.infinite();\n }\n }, 800);\n }\n if (!this.busy && this.busyDelay) {\n this.ui.progressBar.stop();\n this.busyDelay.cancel();\n this.busyDelay = undefined;\n }\n if (this.buttonsUpdated) {\n this.buttonsUpdated = false;\n this.ui.leftActionBar.clear();\n const leftButtons = this.buttons\n .filter(button => button === backButton)\n .map((button, index) => (0,_quickInputUtils_js__WEBPACK_IMPORTED_MODULE_15__.quickInputButtonToAction)(button, `id-${index}`, async () => this.onDidTriggerButtonEmitter.fire(button)));\n this.ui.leftActionBar.push(leftButtons, { icon: true, label: false });\n this.ui.rightActionBar.clear();\n const rightButtons = this.buttons\n .filter(button => button !== backButton)\n .map((button, index) => (0,_quickInputUtils_js__WEBPACK_IMPORTED_MODULE_15__.quickInputButtonToAction)(button, `id-${index}`, async () => this.onDidTriggerButtonEmitter.fire(button)));\n this.ui.rightActionBar.push(rightButtons, { icon: true, label: false });\n }\n if (this.togglesUpdated) {\n this.togglesUpdated = false;\n // HACK: Filter out toggles here that are not concrete Toggle objects. This is to workaround\n // a layering issue as quick input's interface is in common but Toggle is in browser and\n // it requires a HTMLElement on its interface\n const concreteToggles = (_b = (_a = this.toggles) === null || _a === void 0 ? void 0 : _a.filter(opts => opts instanceof _base_browser_ui_toggle_toggle_js__WEBPACK_IMPORTED_MODULE_2__.Toggle)) !== null && _b !== void 0 ? _b : [];\n this.ui.inputBox.toggles = concreteToggles;\n }\n this.ui.ignoreFocusOut = this.ignoreFocusOut;\n this.ui.setEnabled(this.enabled);\n this.ui.setContextKey(this.contextKey);\n const validationMessage = this.validationMessage || this.noValidationMessage;\n if (this._lastValidationMessage !== validationMessage) {\n this._lastValidationMessage = validationMessage;\n _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.reset(this.ui.message);\n (0,_quickInputUtils_js__WEBPACK_IMPORTED_MODULE_15__.renderQuickInputDescription)(validationMessage, this.ui.message, {\n callback: (content) => {\n this.ui.linkOpenerDelegate(content);\n },\n disposables: this.visibleDisposables,\n });\n }\n if (this._lastSeverity !== this.severity) {\n this._lastSeverity = this.severity;\n this.showMessageDecoration(this.severity);\n }\n }\n getTitle() {\n if (this.title && this.step) {\n return `${this.title} (${this.getSteps()})`;\n }\n if (this.title) {\n return this.title;\n }\n if (this.step) {\n return this.getSteps();\n }\n return '';\n }\n getDescription() {\n return this.description || '';\n }\n getSteps() {\n if (this.step && this.totalSteps) {\n return (0,_nls_js__WEBPACK_IMPORTED_MODULE_12__.localize)('quickInput.steps', \"{0}/{1}\", this.step, this.totalSteps);\n }\n if (this.step) {\n return String(this.step);\n }\n return '';\n }\n showMessageDecoration(severity) {\n this.ui.inputBox.showDecoration(severity);\n if (severity !== _base_common_severity_js__WEBPACK_IMPORTED_MODULE_9__[\"default\"].Ignore) {\n const styles = this.ui.inputBox.stylesForType(severity);\n this.ui.message.style.color = styles.foreground ? `${styles.foreground}` : '';\n this.ui.message.style.backgroundColor = styles.background ? `${styles.background}` : '';\n this.ui.message.style.border = styles.border ? `1px solid ${styles.border}` : '';\n this.ui.message.style.marginBottom = '-2px';\n }\n else {\n this.ui.message.style.color = '';\n this.ui.message.style.backgroundColor = '';\n this.ui.message.style.border = '';\n this.ui.message.style.marginBottom = '';\n }\n }\n dispose() {\n this.hide();\n this.onDisposeEmitter.fire();\n super.dispose();\n }\n}\nQuickInput.noPromptMessage = (0,_nls_js__WEBPACK_IMPORTED_MODULE_12__.localize)('inputModeEntry', \"Press 'Enter' to confirm your input or 'Escape' to cancel\");\nclass QuickPick extends QuickInput {\n constructor() {\n super(...arguments);\n this._value = '';\n this.onDidChangeValueEmitter = this._register(new _base_common_event_js__WEBPACK_IMPORTED_MODULE_6__.Emitter());\n this.onWillAcceptEmitter = this._register(new _base_common_event_js__WEBPACK_IMPORTED_MODULE_6__.Emitter());\n this.onDidAcceptEmitter = this._register(new _base_common_event_js__WEBPACK_IMPORTED_MODULE_6__.Emitter());\n this.onDidCustomEmitter = this._register(new _base_common_event_js__WEBPACK_IMPORTED_MODULE_6__.Emitter());\n this._items = [];\n this.itemsUpdated = false;\n this._canSelectMany = false;\n this._canAcceptInBackground = false;\n this._matchOnDescription = false;\n this._matchOnDetail = false;\n this._matchOnLabel = true;\n this._matchOnLabelMode = 'fuzzy';\n this._sortByLabel = true;\n this._keepScrollPosition = false;\n this._itemActivation = _common_quickInput_js__WEBPACK_IMPORTED_MODULE_13__.ItemActivation.FIRST;\n this._activeItems = [];\n this.activeItemsUpdated = false;\n this.activeItemsToConfirm = [];\n this.onDidChangeActiveEmitter = this._register(new _base_common_event_js__WEBPACK_IMPORTED_MODULE_6__.Emitter());\n this._selectedItems = [];\n this.selectedItemsUpdated = false;\n this.selectedItemsToConfirm = [];\n this.onDidChangeSelectionEmitter = this._register(new _base_common_event_js__WEBPACK_IMPORTED_MODULE_6__.Emitter());\n this.onDidTriggerItemButtonEmitter = this._register(new _base_common_event_js__WEBPACK_IMPORTED_MODULE_6__.Emitter());\n this.onDidTriggerSeparatorButtonEmitter = this._register(new _base_common_event_js__WEBPACK_IMPORTED_MODULE_6__.Emitter());\n this.valueSelectionUpdated = true;\n this._ok = 'default';\n this._customButton = false;\n this.filterValue = (value) => value;\n this.onDidChangeValue = this.onDidChangeValueEmitter.event;\n this.onWillAccept = this.onWillAcceptEmitter.event;\n this.onDidAccept = this.onDidAcceptEmitter.event;\n this.onDidChangeActive = this.onDidChangeActiveEmitter.event;\n this.onDidChangeSelection = this.onDidChangeSelectionEmitter.event;\n this.onDidTriggerItemButton = this.onDidTriggerItemButtonEmitter.event;\n this.onDidTriggerSeparatorButton = this.onDidTriggerSeparatorButtonEmitter.event;\n }\n get quickNavigate() {\n return this._quickNavigate;\n }\n set quickNavigate(quickNavigate) {\n this._quickNavigate = quickNavigate;\n this.update();\n }\n get value() {\n return this._value;\n }\n set value(value) {\n this.doSetValue(value);\n }\n doSetValue(value, skipUpdate) {\n if (this._value !== value) {\n this._value = value;\n if (!skipUpdate) {\n this.update();\n }\n if (this.visible) {\n const didFilter = this.ui.list.filter(this.filterValue(this._value));\n if (didFilter) {\n this.trySelectFirst();\n }\n }\n this.onDidChangeValueEmitter.fire(this._value);\n }\n }\n set ariaLabel(ariaLabel) {\n this._ariaLabel = ariaLabel;\n this.update();\n }\n get ariaLabel() {\n return this._ariaLabel;\n }\n get placeholder() {\n return this._placeholder;\n }\n set placeholder(placeholder) {\n this._placeholder = placeholder;\n this.update();\n }\n get items() {\n return this._items;\n }\n get scrollTop() {\n return this.ui.list.scrollTop;\n }\n set scrollTop(scrollTop) {\n this.ui.list.scrollTop = scrollTop;\n }\n set items(items) {\n this._items = items;\n this.itemsUpdated = true;\n this.update();\n }\n get canSelectMany() {\n return this._canSelectMany;\n }\n set canSelectMany(canSelectMany) {\n this._canSelectMany = canSelectMany;\n this.update();\n }\n get canAcceptInBackground() {\n return this._canAcceptInBackground;\n }\n set canAcceptInBackground(canAcceptInBackground) {\n this._canAcceptInBackground = canAcceptInBackground;\n }\n get matchOnDescription() {\n return this._matchOnDescription;\n }\n set matchOnDescription(matchOnDescription) {\n this._matchOnDescription = matchOnDescription;\n this.update();\n }\n get matchOnDetail() {\n return this._matchOnDetail;\n }\n set matchOnDetail(matchOnDetail) {\n this._matchOnDetail = matchOnDetail;\n this.update();\n }\n get matchOnLabel() {\n return this._matchOnLabel;\n }\n set matchOnLabel(matchOnLabel) {\n this._matchOnLabel = matchOnLabel;\n this.update();\n }\n get matchOnLabelMode() {\n return this._matchOnLabelMode;\n }\n set matchOnLabelMode(matchOnLabelMode) {\n this._matchOnLabelMode = matchOnLabelMode;\n this.update();\n }\n get sortByLabel() {\n return this._sortByLabel;\n }\n set sortByLabel(sortByLabel) {\n this._sortByLabel = sortByLabel;\n this.update();\n }\n get keepScrollPosition() {\n return this._keepScrollPosition;\n }\n set keepScrollPosition(keepScrollPosition) {\n this._keepScrollPosition = keepScrollPosition;\n }\n get itemActivation() {\n return this._itemActivation;\n }\n set itemActivation(itemActivation) {\n this._itemActivation = itemActivation;\n }\n get activeItems() {\n return this._activeItems;\n }\n set activeItems(activeItems) {\n this._activeItems = activeItems;\n this.activeItemsUpdated = true;\n this.update();\n }\n get selectedItems() {\n return this._selectedItems;\n }\n set selectedItems(selectedItems) {\n this._selectedItems = selectedItems;\n this.selectedItemsUpdated = true;\n this.update();\n }\n get keyMods() {\n if (this._quickNavigate) {\n // Disable keyMods when quick navigate is enabled\n // because in this model the interaction is purely\n // keyboard driven and Ctrl/Alt are typically\n // pressed and hold during this interaction.\n return _common_quickInput_js__WEBPACK_IMPORTED_MODULE_13__.NO_KEY_MODS;\n }\n return this.ui.keyMods;\n }\n set valueSelection(valueSelection) {\n this._valueSelection = valueSelection;\n this.valueSelectionUpdated = true;\n this.update();\n }\n get customButton() {\n return this._customButton;\n }\n set customButton(showCustomButton) {\n this._customButton = showCustomButton;\n this.update();\n }\n get customLabel() {\n return this._customButtonLabel;\n }\n set customLabel(label) {\n this._customButtonLabel = label;\n this.update();\n }\n get customHover() {\n return this._customButtonHover;\n }\n set customHover(hover) {\n this._customButtonHover = hover;\n this.update();\n }\n get ok() {\n return this._ok;\n }\n set ok(showOkButton) {\n this._ok = showOkButton;\n this.update();\n }\n get hideInput() {\n return !!this._hideInput;\n }\n set hideInput(hideInput) {\n this._hideInput = hideInput;\n this.update();\n }\n trySelectFirst() {\n if (!this.canSelectMany) {\n this.ui.list.focus(_quickInputList_js__WEBPACK_IMPORTED_MODULE_14__.QuickInputListFocus.First);\n }\n }\n show() {\n if (!this.visible) {\n this.visibleDisposables.add(this.ui.inputBox.onDidChange(value => {\n this.doSetValue(value, true /* skip update since this originates from the UI */);\n }));\n this.visibleDisposables.add((this._hideInput ? this.ui.list : this.ui.inputBox).onKeyDown((event) => {\n switch (event.keyCode) {\n case 18 /* KeyCode.DownArrow */:\n this.ui.list.focus(_quickInputList_js__WEBPACK_IMPORTED_MODULE_14__.QuickInputListFocus.Next);\n if (this.canSelectMany) {\n this.ui.list.domFocus();\n }\n _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.EventHelper.stop(event, true);\n break;\n case 16 /* KeyCode.UpArrow */:\n if (this.ui.list.getFocusedElements().length) {\n this.ui.list.focus(_quickInputList_js__WEBPACK_IMPORTED_MODULE_14__.QuickInputListFocus.Previous);\n }\n else {\n this.ui.list.focus(_quickInputList_js__WEBPACK_IMPORTED_MODULE_14__.QuickInputListFocus.Last);\n }\n if (this.canSelectMany) {\n this.ui.list.domFocus();\n }\n _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.EventHelper.stop(event, true);\n break;\n case 12 /* KeyCode.PageDown */:\n this.ui.list.focus(_quickInputList_js__WEBPACK_IMPORTED_MODULE_14__.QuickInputListFocus.NextPage);\n if (this.canSelectMany) {\n this.ui.list.domFocus();\n }\n _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.EventHelper.stop(event, true);\n break;\n case 11 /* KeyCode.PageUp */:\n this.ui.list.focus(_quickInputList_js__WEBPACK_IMPORTED_MODULE_14__.QuickInputListFocus.PreviousPage);\n if (this.canSelectMany) {\n this.ui.list.domFocus();\n }\n _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.EventHelper.stop(event, true);\n break;\n case 17 /* KeyCode.RightArrow */:\n if (!this._canAcceptInBackground) {\n return; // needs to be enabled\n }\n if (!this.ui.inputBox.isSelectionAtEnd()) {\n return; // ensure input box selection at end\n }\n if (this.activeItems[0]) {\n this._selectedItems = [this.activeItems[0]];\n this.onDidChangeSelectionEmitter.fire(this.selectedItems);\n this.handleAccept(true);\n }\n break;\n case 14 /* KeyCode.Home */:\n if ((event.ctrlKey || event.metaKey) && !event.shiftKey && !event.altKey) {\n this.ui.list.focus(_quickInputList_js__WEBPACK_IMPORTED_MODULE_14__.QuickInputListFocus.First);\n _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.EventHelper.stop(event, true);\n }\n break;\n case 13 /* KeyCode.End */:\n if ((event.ctrlKey || event.metaKey) && !event.shiftKey && !event.altKey) {\n this.ui.list.focus(_quickInputList_js__WEBPACK_IMPORTED_MODULE_14__.QuickInputListFocus.Last);\n _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.EventHelper.stop(event, true);\n }\n break;\n }\n }));\n this.visibleDisposables.add(this.ui.onDidAccept(() => {\n if (this.canSelectMany) {\n // if there are no checked elements, it means that an onDidChangeSelection never fired to overwrite\n // `_selectedItems`. In that case, we should emit one with an empty array to ensure that\n // `.selectedItems` is up to date.\n if (!this.ui.list.getCheckedElements().length) {\n this._selectedItems = [];\n this.onDidChangeSelectionEmitter.fire(this.selectedItems);\n }\n }\n else if (this.activeItems[0]) {\n // For single-select, we set `selectedItems` to the item that was accepted.\n this._selectedItems = [this.activeItems[0]];\n this.onDidChangeSelectionEmitter.fire(this.selectedItems);\n }\n this.handleAccept(false);\n }));\n this.visibleDisposables.add(this.ui.onDidCustom(() => {\n this.onDidCustomEmitter.fire();\n }));\n this.visibleDisposables.add(this.ui.list.onDidChangeFocus(focusedItems => {\n if (this.activeItemsUpdated) {\n return; // Expect another event.\n }\n if (this.activeItemsToConfirm !== this._activeItems && (0,_base_common_arrays_js__WEBPACK_IMPORTED_MODULE_3__.equals)(focusedItems, this._activeItems, (a, b) => a === b)) {\n return;\n }\n this._activeItems = focusedItems;\n this.onDidChangeActiveEmitter.fire(focusedItems);\n }));\n this.visibleDisposables.add(this.ui.list.onDidChangeSelection(({ items: selectedItems, event }) => {\n if (this.canSelectMany) {\n if (selectedItems.length) {\n this.ui.list.setSelectedElements([]);\n }\n return;\n }\n if (this.selectedItemsToConfirm !== this._selectedItems && (0,_base_common_arrays_js__WEBPACK_IMPORTED_MODULE_3__.equals)(selectedItems, this._selectedItems, (a, b) => a === b)) {\n return;\n }\n this._selectedItems = selectedItems;\n this.onDidChangeSelectionEmitter.fire(selectedItems);\n if (selectedItems.length) {\n this.handleAccept(_base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.isMouseEvent(event) && event.button === 1 /* mouse middle click */);\n }\n }));\n this.visibleDisposables.add(this.ui.list.onChangedCheckedElements(checkedItems => {\n if (!this.canSelectMany) {\n return;\n }\n if (this.selectedItemsToConfirm !== this._selectedItems && (0,_base_common_arrays_js__WEBPACK_IMPORTED_MODULE_3__.equals)(checkedItems, this._selectedItems, (a, b) => a === b)) {\n return;\n }\n this._selectedItems = checkedItems;\n this.onDidChangeSelectionEmitter.fire(checkedItems);\n }));\n this.visibleDisposables.add(this.ui.list.onButtonTriggered(event => this.onDidTriggerItemButtonEmitter.fire(event)));\n this.visibleDisposables.add(this.ui.list.onSeparatorButtonTriggered(event => this.onDidTriggerSeparatorButtonEmitter.fire(event)));\n this.visibleDisposables.add(this.registerQuickNavigation());\n this.valueSelectionUpdated = true;\n }\n super.show(); // TODO: Why have show() bubble up while update() trickles down?\n }\n handleAccept(inBackground) {\n // Figure out veto via `onWillAccept` event\n let veto = false;\n this.onWillAcceptEmitter.fire({ veto: () => veto = true });\n // Continue with `onDidAccept` if no veto\n if (!veto) {\n this.onDidAcceptEmitter.fire({ inBackground });\n }\n }\n registerQuickNavigation() {\n return _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.addDisposableListener(this.ui.container, _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.EventType.KEY_UP, e => {\n if (this.canSelectMany || !this._quickNavigate) {\n return;\n }\n const keyboardEvent = new _base_browser_keyboardEvent_js__WEBPACK_IMPORTED_MODULE_1__.StandardKeyboardEvent(e);\n const keyCode = keyboardEvent.keyCode;\n // Select element when keys are pressed that signal it\n const quickNavKeys = this._quickNavigate.keybindings;\n const wasTriggerKeyPressed = quickNavKeys.some(k => {\n const chords = k.getChords();\n if (chords.length > 1) {\n return false;\n }\n if (chords[0].shiftKey && keyCode === 4 /* KeyCode.Shift */) {\n if (keyboardEvent.ctrlKey || keyboardEvent.altKey || keyboardEvent.metaKey) {\n return false; // this is an optimistic check for the shift key being used to navigate back in quick input\n }\n return true;\n }\n if (chords[0].altKey && keyCode === 6 /* KeyCode.Alt */) {\n return true;\n }\n if (chords[0].ctrlKey && keyCode === 5 /* KeyCode.Ctrl */) {\n return true;\n }\n if (chords[0].metaKey && keyCode === 57 /* KeyCode.Meta */) {\n return true;\n }\n return false;\n });\n if (wasTriggerKeyPressed) {\n if (this.activeItems[0]) {\n this._selectedItems = [this.activeItems[0]];\n this.onDidChangeSelectionEmitter.fire(this.selectedItems);\n this.handleAccept(false);\n }\n // Unset quick navigate after press. It is only valid once\n // and should not result in any behaviour change afterwards\n // if the picker remains open because there was no active item\n this._quickNavigate = undefined;\n }\n });\n }\n update() {\n if (!this.visible) {\n return;\n }\n // store the scrollTop before it is reset\n const scrollTopBefore = this.keepScrollPosition ? this.scrollTop : 0;\n const hasDescription = !!this.description;\n const visibilities = {\n title: !!this.title || !!this.step || !!this.buttons.length,\n description: hasDescription,\n checkAll: this.canSelectMany && !this._hideCheckAll,\n checkBox: this.canSelectMany,\n inputBox: !this._hideInput,\n progressBar: !this._hideInput || hasDescription,\n visibleCount: true,\n count: this.canSelectMany && !this._hideCountBadge,\n ok: this.ok === 'default' ? this.canSelectMany : this.ok,\n list: true,\n message: !!this.validationMessage,\n customButton: this.customButton\n };\n this.ui.setVisibilities(visibilities);\n super.update();\n if (this.ui.inputBox.value !== this.value) {\n this.ui.inputBox.value = this.value;\n }\n if (this.valueSelectionUpdated) {\n this.valueSelectionUpdated = false;\n this.ui.inputBox.select(this._valueSelection && { start: this._valueSelection[0], end: this._valueSelection[1] });\n }\n if (this.ui.inputBox.placeholder !== (this.placeholder || '')) {\n this.ui.inputBox.placeholder = (this.placeholder || '');\n }\n let ariaLabel = this.ariaLabel;\n // Only set aria label to the input box placeholder if we actually have an input box.\n if (!ariaLabel && visibilities.inputBox) {\n ariaLabel = this.placeholder || QuickPick.DEFAULT_ARIA_LABEL;\n // If we have a title, include it in the aria label.\n if (this.title) {\n ariaLabel += ` - ${this.title}`;\n }\n }\n if (this.ui.list.ariaLabel !== ariaLabel) {\n this.ui.list.ariaLabel = ariaLabel !== null && ariaLabel !== void 0 ? ariaLabel : null;\n }\n this.ui.list.matchOnDescription = this.matchOnDescription;\n this.ui.list.matchOnDetail = this.matchOnDetail;\n this.ui.list.matchOnLabel = this.matchOnLabel;\n this.ui.list.matchOnLabelMode = this.matchOnLabelMode;\n this.ui.list.sortByLabel = this.sortByLabel;\n if (this.itemsUpdated) {\n this.itemsUpdated = false;\n this.ui.list.setElements(this.items);\n this.ui.list.filter(this.filterValue(this.ui.inputBox.value));\n this.ui.checkAll.checked = this.ui.list.getAllVisibleChecked();\n this.ui.visibleCount.setCount(this.ui.list.getVisibleCount());\n this.ui.count.setCount(this.ui.list.getCheckedCount());\n switch (this._itemActivation) {\n case _common_quickInput_js__WEBPACK_IMPORTED_MODULE_13__.ItemActivation.NONE:\n this._itemActivation = _common_quickInput_js__WEBPACK_IMPORTED_MODULE_13__.ItemActivation.FIRST; // only valid once, then unset\n break;\n case _common_quickInput_js__WEBPACK_IMPORTED_MODULE_13__.ItemActivation.SECOND:\n this.ui.list.focus(_quickInputList_js__WEBPACK_IMPORTED_MODULE_14__.QuickInputListFocus.Second);\n this._itemActivation = _common_quickInput_js__WEBPACK_IMPORTED_MODULE_13__.ItemActivation.FIRST; // only valid once, then unset\n break;\n case _common_quickInput_js__WEBPACK_IMPORTED_MODULE_13__.ItemActivation.LAST:\n this.ui.list.focus(_quickInputList_js__WEBPACK_IMPORTED_MODULE_14__.QuickInputListFocus.Last);\n this._itemActivation = _common_quickInput_js__WEBPACK_IMPORTED_MODULE_13__.ItemActivation.FIRST; // only valid once, then unset\n break;\n default:\n this.trySelectFirst();\n break;\n }\n }\n if (this.ui.container.classList.contains('show-checkboxes') !== !!this.canSelectMany) {\n if (this.canSelectMany) {\n this.ui.list.clearFocus();\n }\n else {\n this.trySelectFirst();\n }\n }\n if (this.activeItemsUpdated) {\n this.activeItemsUpdated = false;\n this.activeItemsToConfirm = this._activeItems;\n this.ui.list.setFocusedElements(this.activeItems);\n if (this.activeItemsToConfirm === this._activeItems) {\n this.activeItemsToConfirm = null;\n }\n }\n if (this.selectedItemsUpdated) {\n this.selectedItemsUpdated = false;\n this.selectedItemsToConfirm = this._selectedItems;\n if (this.canSelectMany) {\n this.ui.list.setCheckedElements(this.selectedItems);\n }\n else {\n this.ui.list.setSelectedElements(this.selectedItems);\n }\n if (this.selectedItemsToConfirm === this._selectedItems) {\n this.selectedItemsToConfirm = null;\n }\n }\n this.ui.customButton.label = this.customLabel || '';\n this.ui.customButton.element.title = this.customHover || '';\n if (!visibilities.inputBox) {\n // we need to move focus into the tree to detect keybindings\n // properly when the input box is not visible (quick nav)\n this.ui.list.domFocus();\n // Focus the first element in the list if multiselect is enabled\n if (this.canSelectMany) {\n this.ui.list.focus(_quickInputList_js__WEBPACK_IMPORTED_MODULE_14__.QuickInputListFocus.First);\n }\n }\n // Set the scroll position to what it was before updating the items\n if (this.keepScrollPosition) {\n this.scrollTop = scrollTopBefore;\n }\n }\n}\nQuickPick.DEFAULT_ARIA_LABEL = (0,_nls_js__WEBPACK_IMPORTED_MODULE_12__.localize)('quickInputBox.ariaLabel', \"Type to narrow down results.\");\nclass InputBox extends QuickInput {\n constructor() {\n super(...arguments);\n this._value = '';\n this.valueSelectionUpdated = true;\n this._password = false;\n this.onDidValueChangeEmitter = this._register(new _base_common_event_js__WEBPACK_IMPORTED_MODULE_6__.Emitter());\n this.onDidAcceptEmitter = this._register(new _base_common_event_js__WEBPACK_IMPORTED_MODULE_6__.Emitter());\n this.onDidChangeValue = this.onDidValueChangeEmitter.event;\n this.onDidAccept = this.onDidAcceptEmitter.event;\n }\n get value() {\n return this._value;\n }\n set value(value) {\n this._value = value || '';\n this.update();\n }\n get placeholder() {\n return this._placeholder;\n }\n set placeholder(placeholder) {\n this._placeholder = placeholder;\n this.update();\n }\n get password() {\n return this._password;\n }\n set password(password) {\n this._password = password;\n this.update();\n }\n show() {\n if (!this.visible) {\n this.visibleDisposables.add(this.ui.inputBox.onDidChange(value => {\n if (value === this.value) {\n return;\n }\n this._value = value;\n this.onDidValueChangeEmitter.fire(value);\n }));\n this.visibleDisposables.add(this.ui.onDidAccept(() => this.onDidAcceptEmitter.fire()));\n this.valueSelectionUpdated = true;\n }\n super.show();\n }\n update() {\n if (!this.visible) {\n return;\n }\n this.ui.container.classList.remove('hidden-input');\n const visibilities = {\n title: !!this.title || !!this.step || !!this.buttons.length,\n description: !!this.description || !!this.step,\n inputBox: true,\n message: true,\n progressBar: true\n };\n this.ui.setVisibilities(visibilities);\n super.update();\n if (this.ui.inputBox.value !== this.value) {\n this.ui.inputBox.value = this.value;\n }\n if (this.valueSelectionUpdated) {\n this.valueSelectionUpdated = false;\n this.ui.inputBox.select(this._valueSelection && { start: this._valueSelection[0], end: this._valueSelection[1] });\n }\n if (this.ui.inputBox.placeholder !== (this.placeholder || '')) {\n this.ui.inputBox.placeholder = (this.placeholder || '');\n }\n if (this.ui.inputBox.password !== this.password) {\n this.ui.inputBox.password = this.password;\n }\n }\n}\nlet QuickInputHoverDelegate = class QuickInputHoverDelegate extends _hover_browser_hover_js__WEBPACK_IMPORTED_MODULE_17__.WorkbenchHoverDelegate {\n constructor(configurationService, hoverService) {\n super('element', false, (options) => this.getOverrideOptions(options), configurationService, hoverService);\n }\n getOverrideOptions(options) {\n var _a;\n // Only show the hover hint if the content is of a decent size\n const showHoverHint = (options.content instanceof HTMLElement\n ? (_a = options.content.textContent) !== null && _a !== void 0 ? _a : ''\n : typeof options.content === 'string'\n ? options.content\n : options.content.value).includes('\\n');\n return {\n persistence: {\n hideOnKeyDown: false,\n },\n appearance: {\n showHoverHint,\n skipFadeInAnimation: true,\n },\n };\n }\n};\nQuickInputHoverDelegate = __decorate([\n __param(0, _configuration_common_configuration_js__WEBPACK_IMPORTED_MODULE_16__.IConfigurationService),\n __param(1, _hover_browser_hover_js__WEBPACK_IMPORTED_MODULE_17__.IHoverService)\n], QuickInputHoverDelegate);\n\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/platform/quickinput/browser/quickInput.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/platform/quickinput/browser/quickInputBox.js":
/*!****************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/platform/quickinput/browser/quickInputBox.js ***!
\****************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ QuickInputBox: () => (/* binding */ QuickInputBox)\n/* harmony export */ });\n/* harmony import */ var _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../base/browser/dom.js */ \"./node_modules/monaco-editor/esm/vs/base/browser/dom.js\");\n/* harmony import */ var _base_browser_ui_findinput_findInput_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../base/browser/ui/findinput/findInput.js */ \"./node_modules/monaco-editor/esm/vs/base/browser/ui/findinput/findInput.js\");\n/* harmony import */ var _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../base/common/lifecycle.js */ \"./node_modules/monaco-editor/esm/vs/base/common/lifecycle.js\");\n/* harmony import */ var _base_common_severity_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../../base/common/severity.js */ \"./node_modules/monaco-editor/esm/vs/base/common/severity.js\");\n/* harmony import */ var _media_quickInput_css__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./media/quickInput.css */ \"./node_modules/monaco-editor/esm/vs/platform/quickinput/browser/media/quickInput.css\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n\n\n\n\nconst $ = _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.$;\nclass QuickInputBox extends _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_2__.Disposable {\n constructor(parent, inputBoxStyles, toggleStyles) {\n super();\n this.parent = parent;\n this.onKeyDown = (handler) => {\n return _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.addStandardDisposableListener(this.findInput.inputBox.inputElement, _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.EventType.KEY_DOWN, handler);\n };\n this.onDidChange = (handler) => {\n return this.findInput.onDidChange(handler);\n };\n this.container = _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.append(this.parent, $('.quick-input-box'));\n this.findInput = this._register(new _base_browser_ui_findinput_findInput_js__WEBPACK_IMPORTED_MODULE_1__.FindInput(this.container, undefined, { label: '', inputBoxStyles, toggleStyles }));\n const input = this.findInput.inputBox.inputElement;\n input.role = 'combobox';\n input.ariaHasPopup = 'menu';\n input.ariaAutoComplete = 'list';\n input.ariaExpanded = 'true';\n }\n get value() {\n return this.findInput.getValue();\n }\n set value(value) {\n this.findInput.setValue(value);\n }\n select(range = null) {\n this.findInput.inputBox.select(range);\n }\n isSelectionAtEnd() {\n return this.findInput.inputBox.isSelectionAtEnd();\n }\n get placeholder() {\n return this.findInput.inputBox.inputElement.getAttribute('placeholder') || '';\n }\n set placeholder(placeholder) {\n this.findInput.inputBox.setPlaceHolder(placeholder);\n }\n get password() {\n return this.findInput.inputBox.inputElement.type === 'password';\n }\n set password(password) {\n this.findInput.inputBox.inputElement.type = password ? 'password' : 'text';\n }\n set enabled(enabled) {\n // We can't disable the input box because it is still used for\n // navigating the list. Instead, we disable the list and the OK\n // so that nothing can be selected.\n // TODO: should this be what we do for all find inputs? Or maybe some _other_ API\n // on findInput to change it to readonly?\n this.findInput.inputBox.inputElement.toggleAttribute('readonly', !enabled);\n // TODO: styles of the quick pick need to be moved to the CSS instead of being in line\n // so things like this can be done in CSS\n // this.findInput.inputBox.inputElement.classList.toggle('disabled', !enabled);\n }\n set toggles(toggles) {\n this.findInput.setAdditionalToggles(toggles);\n }\n setAttribute(name, value) {\n this.findInput.inputBox.inputElement.setAttribute(name, value);\n }\n showDecoration(decoration) {\n if (decoration === _base_common_severity_js__WEBPACK_IMPORTED_MODULE_3__[\"default\"].Ignore) {\n this.findInput.clearMessage();\n }\n else {\n this.findInput.showMessage({ type: decoration === _base_common_severity_js__WEBPACK_IMPORTED_MODULE_3__[\"default\"].Info ? 1 /* MessageType.INFO */ : decoration === _base_common_severity_js__WEBPACK_IMPORTED_MODULE_3__[\"default\"].Warning ? 2 /* MessageType.WARNING */ : 3 /* MessageType.ERROR */, content: '' });\n }\n }\n stylesForType(decoration) {\n return this.findInput.inputBox.stylesForType(decoration === _base_common_severity_js__WEBPACK_IMPORTED_MODULE_3__[\"default\"].Info ? 1 /* MessageType.INFO */ : decoration === _base_common_severity_js__WEBPACK_IMPORTED_MODULE_3__[\"default\"].Warning ? 2 /* MessageType.WARNING */ : 3 /* MessageType.ERROR */);\n }\n setFocus() {\n this.findInput.focus();\n }\n layout() {\n this.findInput.inputBox.layout();\n }\n}\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/platform/quickinput/browser/quickInputBox.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/platform/quickinput/browser/quickInputController.js":
/*!***********************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/platform/quickinput/browser/quickInputController.js ***!
\***********************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ QuickInputController: () => (/* binding */ QuickInputController)\n/* harmony export */ });\n/* harmony import */ var _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../base/browser/dom.js */ \"./node_modules/monaco-editor/esm/vs/base/browser/dom.js\");\n/* harmony import */ var _base_browser_ui_actionbar_actionbar_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../base/browser/ui/actionbar/actionbar.js */ \"./node_modules/monaco-editor/esm/vs/base/browser/ui/actionbar/actionbar.js\");\n/* harmony import */ var _base_browser_ui_button_button_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../base/browser/ui/button/button.js */ \"./node_modules/monaco-editor/esm/vs/base/browser/ui/button/button.js\");\n/* harmony import */ var _base_browser_ui_countBadge_countBadge_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../../base/browser/ui/countBadge/countBadge.js */ \"./node_modules/monaco-editor/esm/vs/base/browser/ui/countBadge/countBadge.js\");\n/* harmony import */ var _base_browser_ui_progressbar_progressbar_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../../base/browser/ui/progressbar/progressbar.js */ \"./node_modules/monaco-editor/esm/vs/base/browser/ui/progressbar/progressbar.js\");\n/* harmony import */ var _base_common_cancellation_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../../../base/common/cancellation.js */ \"./node_modules/monaco-editor/esm/vs/base/common/cancellation.js\");\n/* harmony import */ var _base_common_event_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../../../base/common/event.js */ \"./node_modules/monaco-editor/esm/vs/base/common/event.js\");\n/* harmony import */ var _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ../../../base/common/lifecycle.js */ \"./node_modules/monaco-editor/esm/vs/base/common/lifecycle.js\");\n/* harmony import */ var _base_common_severity_js__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ../../../base/common/severity.js */ \"./node_modules/monaco-editor/esm/vs/base/common/severity.js\");\n/* harmony import */ var _nls_js__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ../../../nls.js */ \"./node_modules/monaco-editor/esm/vs/nls.js\");\n/* harmony import */ var _common_quickInput_js__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! ../common/quickInput.js */ \"./node_modules/monaco-editor/esm/vs/platform/quickinput/common/quickInput.js\");\n/* harmony import */ var _quickInputBox_js__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(/*! ./quickInputBox.js */ \"./node_modules/monaco-editor/esm/vs/platform/quickinput/browser/quickInputBox.js\");\n/* harmony import */ var _quickInputList_js__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(/*! ./quickInputList.js */ \"./node_modules/monaco-editor/esm/vs/platform/quickinput/browser/quickInputList.js\");\n/* harmony import */ var _quickInput_js__WEBPACK_IMPORTED_MODULE_13__ = __webpack_require__(/*! ./quickInput.js */ \"./node_modules/monaco-editor/esm/vs/platform/quickinput/browser/quickInput.js\");\n/* harmony import */ var _base_browser_window_js__WEBPACK_IMPORTED_MODULE_14__ = __webpack_require__(/*! ../../../base/browser/window.js */ \"./node_modules/monaco-editor/esm/vs/base/browser/window.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nconst $ = _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.$;\nclass QuickInputController extends _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_7__.Disposable {\n get container() { return this._container; }\n constructor(options, themeService, layoutService) {\n super();\n this.options = options;\n this.themeService = themeService;\n this.layoutService = layoutService;\n this.enabled = true;\n this.onDidAcceptEmitter = this._register(new _base_common_event_js__WEBPACK_IMPORTED_MODULE_6__.Emitter());\n this.onDidCustomEmitter = this._register(new _base_common_event_js__WEBPACK_IMPORTED_MODULE_6__.Emitter());\n this.onDidTriggerButtonEmitter = this._register(new _base_common_event_js__WEBPACK_IMPORTED_MODULE_6__.Emitter());\n this.keyMods = { ctrlCmd: false, alt: false };\n this.controller = null;\n this.onShowEmitter = this._register(new _base_common_event_js__WEBPACK_IMPORTED_MODULE_6__.Emitter());\n this.onShow = this.onShowEmitter.event;\n this.onHideEmitter = this._register(new _base_common_event_js__WEBPACK_IMPORTED_MODULE_6__.Emitter());\n this.onHide = this.onHideEmitter.event;\n this.idPrefix = options.idPrefix;\n this._container = options.container;\n this.styles = options.styles;\n this._register(_base_common_event_js__WEBPACK_IMPORTED_MODULE_6__.Event.runAndSubscribe(_base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.onDidRegisterWindow, ({ window, disposables }) => this.registerKeyModsListeners(window, disposables), { window: _base_browser_window_js__WEBPACK_IMPORTED_MODULE_14__.mainWindow, disposables: this._store }));\n this._register(_base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.onWillUnregisterWindow(window => {\n if (this.ui && _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.getWindow(this.ui.container) === window) {\n // The window this quick input is contained in is about to\n // close, so we have to make sure to reparent it back to an\n // existing parent to not loose functionality.\n // (https://github.com/microsoft/vscode/issues/195870)\n this.reparentUI(this.layoutService.mainContainer);\n this.layout(this.layoutService.mainContainerDimension, this.layoutService.mainContainerOffset.quickPickTop);\n }\n }));\n }\n registerKeyModsListeners(window, disposables) {\n const listener = (e) => {\n this.keyMods.ctrlCmd = e.ctrlKey || e.metaKey;\n this.keyMods.alt = e.altKey;\n };\n for (const event of [_base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.EventType.KEY_DOWN, _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.EventType.KEY_UP, _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.EventType.MOUSE_DOWN]) {\n disposables.add(_base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.addDisposableListener(window, event, listener, true));\n }\n }\n getUI(showInActiveContainer) {\n if (this.ui) {\n // In order to support aux windows, re-parent the controller\n // if the original event is from a different document\n if (showInActiveContainer) {\n if (_base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.getWindow(this._container) !== _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.getWindow(this.layoutService.activeContainer)) {\n this.reparentUI(this.layoutService.activeContainer);\n this.layout(this.layoutService.activeContainerDimension, this.layoutService.activeContainerOffset.quickPickTop);\n }\n }\n return this.ui;\n }\n const container = _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.append(this._container, $('.quick-input-widget.show-file-icons'));\n container.tabIndex = -1;\n container.style.display = 'none';\n const styleSheet = _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.createStyleSheet(container);\n const titleBar = _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.append(container, $('.quick-input-titlebar'));\n const leftActionBar = this._register(new _base_browser_ui_actionbar_actionbar_js__WEBPACK_IMPORTED_MODULE_1__.ActionBar(titleBar, { hoverDelegate: this.options.hoverDelegate }));\n leftActionBar.domNode.classList.add('quick-input-left-action-bar');\n const title = _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.append(titleBar, $('.quick-input-title'));\n const rightActionBar = this._register(new _base_browser_ui_actionbar_actionbar_js__WEBPACK_IMPORTED_MODULE_1__.ActionBar(titleBar, { hoverDelegate: this.options.hoverDelegate }));\n rightActionBar.domNode.classList.add('quick-input-right-action-bar');\n const headerContainer = _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.append(container, $('.quick-input-header'));\n const checkAll = _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.append(headerContainer, $('input.quick-input-check-all'));\n checkAll.type = 'checkbox';\n checkAll.setAttribute('aria-label', (0,_nls_js__WEBPACK_IMPORTED_MODULE_9__.localize)('quickInput.checkAll', \"Toggle all checkboxes\"));\n this._register(_base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.addStandardDisposableListener(checkAll, _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.EventType.CHANGE, e => {\n const checked = checkAll.checked;\n list.setAllVisibleChecked(checked);\n }));\n this._register(_base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.addDisposableListener(checkAll, _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.EventType.CLICK, e => {\n if (e.x || e.y) { // Avoid 'click' triggered by 'space'...\n inputBox.setFocus();\n }\n }));\n const description2 = _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.append(headerContainer, $('.quick-input-description'));\n const inputContainer = _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.append(headerContainer, $('.quick-input-and-message'));\n const filterContainer = _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.append(inputContainer, $('.quick-input-filter'));\n const inputBox = this._register(new _quickInputBox_js__WEBPACK_IMPORTED_MODULE_11__.QuickInputBox(filterContainer, this.styles.inputBox, this.styles.toggle));\n inputBox.setAttribute('aria-describedby', `${this.idPrefix}message`);\n const visibleCountContainer = _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.append(filterContainer, $('.quick-input-visible-count'));\n visibleCountContainer.setAttribute('aria-live', 'polite');\n visibleCountContainer.setAttribute('aria-atomic', 'true');\n const visibleCount = new _base_browser_ui_countBadge_countBadge_js__WEBPACK_IMPORTED_MODULE_3__.CountBadge(visibleCountContainer, { countFormat: (0,_nls_js__WEBPACK_IMPORTED_MODULE_9__.localize)({ key: 'quickInput.visibleCount', comment: ['This tells the user how many items are shown in a list of items to select from. The items can be anything. Currently not visible, but read by screen readers.'] }, \"{0} Results\") }, this.styles.countBadge);\n const countContainer = _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.append(filterContainer, $('.quick-input-count'));\n countContainer.setAttribute('aria-live', 'polite');\n const count = new _base_browser_ui_countBadge_countBadge_js__WEBPACK_IMPORTED_MODULE_3__.CountBadge(countContainer, { countFormat: (0,_nls_js__WEBPACK_IMPORTED_MODULE_9__.localize)({ key: 'quickInput.countSelected', comment: ['This tells the user how many items are selected in a list of items to select from. The items can be anything.'] }, \"{0} Selected\") }, this.styles.countBadge);\n const okContainer = _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.append(headerContainer, $('.quick-input-action'));\n const ok = this._register(new _base_browser_ui_button_button_js__WEBPACK_IMPORTED_MODULE_2__.Button(okContainer, this.styles.button));\n ok.label = (0,_nls_js__WEBPACK_IMPORTED_MODULE_9__.localize)('ok', \"OK\");\n this._register(ok.onDidClick(e => {\n this.onDidAcceptEmitter.fire();\n }));\n const customButtonContainer = _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.append(headerContainer, $('.quick-input-action'));\n const customButton = this._register(new _base_browser_ui_button_button_js__WEBPACK_IMPORTED_MODULE_2__.Button(customButtonContainer, { ...this.styles.button, supportIcons: true }));\n customButton.label = (0,_nls_js__WEBPACK_IMPORTED_MODULE_9__.localize)('custom', \"Custom\");\n this._register(customButton.onDidClick(e => {\n this.onDidCustomEmitter.fire();\n }));\n const message = _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.append(inputContainer, $(`#${this.idPrefix}message.quick-input-message`));\n const progressBar = this._register(new _base_browser_ui_progressbar_progressbar_js__WEBPACK_IMPORTED_MODULE_4__.ProgressBar(container, this.styles.progressBar));\n progressBar.getContainer().classList.add('quick-input-progress');\n const widget = _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.append(container, $('.quick-input-html-widget'));\n widget.tabIndex = -1;\n const description1 = _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.append(container, $('.quick-input-description'));\n const listId = this.idPrefix + 'list';\n const list = this._register(new _quickInputList_js__WEBPACK_IMPORTED_MODULE_12__.QuickInputList(container, listId, this.options, this.themeService));\n inputBox.setAttribute('aria-controls', listId);\n this._register(list.onDidChangeFocus(() => {\n var _a;\n inputBox.setAttribute('aria-activedescendant', (_a = list.getActiveDescendant()) !== null && _a !== void 0 ? _a : '');\n }));\n this._register(list.onChangedAllVisibleChecked(checked => {\n checkAll.checked = checked;\n }));\n this._register(list.onChangedVisibleCount(c => {\n visibleCount.setCount(c);\n }));\n this._register(list.onChangedCheckedCount(c => {\n count.setCount(c);\n }));\n this._register(list.onLeave(() => {\n // Defer to avoid the input field reacting to the triggering key.\n // TODO@TylerLeonhardt https://github.com/microsoft/vscode/issues/203675\n setTimeout(() => {\n if (!this.controller) {\n return;\n }\n inputBox.setFocus();\n if (this.controller instanceof _quickInput_js__WEBPACK_IMPORTED_MODULE_13__.QuickPick && this.controller.canSelectMany) {\n list.clearFocus();\n }\n }, 0);\n }));\n const focusTracker = _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.trackFocus(container);\n this._register(focusTracker);\n this._register(_base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.addDisposableListener(container, _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.EventType.FOCUS, e => {\n // Ignore focus events within container\n if (_base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.isAncestor(e.relatedTarget, container)) {\n return;\n }\n this.previousFocusElement = e.relatedTarget instanceof HTMLElement ? e.relatedTarget : undefined;\n }, true));\n this._register(focusTracker.onDidBlur(() => {\n if (!this.getUI().ignoreFocusOut && !this.options.ignoreFocusOut()) {\n this.hide(_common_quickInput_js__WEBPACK_IMPORTED_MODULE_10__.QuickInputHideReason.Blur);\n }\n this.previousFocusElement = undefined;\n }));\n this._register(_base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.addDisposableListener(container, _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.EventType.FOCUS, (e) => {\n inputBox.setFocus();\n }));\n // TODO: Turn into commands instead of handling KEY_DOWN\n this._register(_base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.addStandardDisposableListener(container, _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.EventType.KEY_DOWN, (event) => {\n if (_base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.isAncestor(event.target, widget)) {\n return; // Ignore event if target is inside widget to allow the widget to handle the event.\n }\n switch (event.keyCode) {\n case 3 /* KeyCode.Enter */:\n _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.EventHelper.stop(event, true);\n if (this.enabled) {\n this.onDidAcceptEmitter.fire();\n }\n break;\n case 9 /* KeyCode.Escape */:\n _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.EventHelper.stop(event, true);\n this.hide(_common_quickInput_js__WEBPACK_IMPORTED_MODULE_10__.QuickInputHideReason.Gesture);\n break;\n case 2 /* KeyCode.Tab */:\n if (!event.altKey && !event.ctrlKey && !event.metaKey) {\n // detect only visible actions\n const selectors = [\n '.quick-input-list .monaco-action-bar .always-visible',\n '.quick-input-list-entry:hover .monaco-action-bar',\n '.monaco-list-row.focused .monaco-action-bar'\n ];\n if (container.classList.contains('show-checkboxes')) {\n selectors.push('input');\n }\n else {\n selectors.push('input[type=text]');\n }\n if (this.getUI().list.isDisplayed()) {\n selectors.push('.monaco-list');\n }\n // focus links if there are any\n if (this.getUI().message) {\n selectors.push('.quick-input-message a');\n }\n if (this.getUI().widget) {\n if (_base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.isAncestor(event.target, this.getUI().widget)) {\n // let the widget control tab\n break;\n }\n selectors.push('.quick-input-html-widget');\n }\n const stops = container.querySelectorAll(selectors.join(', '));\n if (event.shiftKey && event.target === stops[0]) {\n // Clear the focus from the list in order to allow\n // screen readers to read operations in the input box.\n _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.EventHelper.stop(event, true);\n list.clearFocus();\n }\n else if (!event.shiftKey && _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.isAncestor(event.target, stops[stops.length - 1])) {\n _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.EventHelper.stop(event, true);\n stops[0].focus();\n }\n }\n break;\n case 10 /* KeyCode.Space */:\n if (event.ctrlKey) {\n _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.EventHelper.stop(event, true);\n this.getUI().list.toggleHover();\n }\n break;\n }\n }));\n this.ui = {\n container,\n styleSheet,\n leftActionBar,\n titleBar,\n title,\n description1,\n description2,\n widget,\n rightActionBar,\n checkAll,\n inputContainer,\n filterContainer,\n inputBox,\n visibleCountContainer,\n visibleCount,\n countContainer,\n count,\n okContainer,\n ok,\n message,\n customButtonContainer,\n customButton,\n list,\n progressBar,\n onDidAccept: this.onDidAcceptEmitter.event,\n onDidCustom: this.onDidCustomEmitter.event,\n onDidTriggerButton: this.onDidTriggerButtonEmitter.event,\n ignoreFocusOut: false,\n keyMods: this.keyMods,\n show: controller => this.show(controller),\n hide: () => this.hide(),\n setVisibilities: visibilities => this.setVisibilities(visibilities),\n setEnabled: enabled => this.setEnabled(enabled),\n setContextKey: contextKey => this.options.setContextKey(contextKey),\n linkOpenerDelegate: content => this.options.linkOpenerDelegate(content)\n };\n this.updateStyles();\n return this.ui;\n }\n reparentUI(container) {\n if (this.ui) {\n this._container = container;\n _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.append(this._container, this.ui.container);\n }\n }\n pick(picks, options = {}, token = _base_common_cancellation_js__WEBPACK_IMPORTED_MODULE_5__.CancellationToken.None) {\n return new Promise((doResolve, reject) => {\n let resolve = (result) => {\n var _a;\n resolve = doResolve;\n (_a = options.onKeyMods) === null || _a === void 0 ? void 0 : _a.call(options, input.keyMods);\n doResolve(result);\n };\n if (token.isCancellationRequested) {\n resolve(undefined);\n return;\n }\n const input = this.createQuickPick();\n let activeItem;\n const disposables = [\n input,\n input.onDidAccept(() => {\n if (input.canSelectMany) {\n resolve(input.selectedItems.slice());\n input.hide();\n }\n else {\n const result = input.activeItems[0];\n if (result) {\n resolve(result);\n input.hide();\n }\n }\n }),\n input.onDidChangeActive(items => {\n const focused = items[0];\n if (focused && options.onDidFocus) {\n options.onDidFocus(focused);\n }\n }),\n input.onDidChangeSelection(items => {\n if (!input.canSelectMany) {\n const result = items[0];\n if (result) {\n resolve(result);\n input.hide();\n }\n }\n }),\n input.onDidTriggerItemButton(event => options.onDidTriggerItemButton && options.onDidTriggerItemButton({\n ...event,\n removeItem: () => {\n const index = input.items.indexOf(event.item);\n if (index !== -1) {\n const items = input.items.slice();\n const removed = items.splice(index, 1);\n const activeItems = input.activeItems.filter(activeItem => activeItem !== removed[0]);\n const keepScrollPositionBefore = input.keepScrollPosition;\n input.keepScrollPosition = true;\n input.items = items;\n if (activeItems) {\n input.activeItems = activeItems;\n }\n input.keepScrollPosition = keepScrollPositionBefore;\n }\n }\n })),\n input.onDidTriggerSeparatorButton(event => { var _a; return (_a = options.onDidTriggerSeparatorButton) === null || _a === void 0 ? void 0 : _a.call(options, event); }),\n input.onDidChangeValue(value => {\n if (activeItem && !value && (input.activeItems.length !== 1 || input.activeItems[0] !== activeItem)) {\n input.activeItems = [activeItem];\n }\n }),\n token.onCancellationRequested(() => {\n input.hide();\n }),\n input.onDidHide(() => {\n (0,_base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_7__.dispose)(disposables);\n resolve(undefined);\n }),\n ];\n input.title = options.title;\n input.canSelectMany = !!options.canPickMany;\n input.placeholder = options.placeHolder;\n input.ignoreFocusOut = !!options.ignoreFocusLost;\n input.matchOnDescription = !!options.matchOnDescription;\n input.matchOnDetail = !!options.matchOnDetail;\n input.matchOnLabel = (options.matchOnLabel === undefined) || options.matchOnLabel; // default to true\n input.quickNavigate = options.quickNavigate;\n input.hideInput = !!options.hideInput;\n input.contextKey = options.contextKey;\n input.busy = true;\n Promise.all([picks, options.activeItem])\n .then(([items, _activeItem]) => {\n activeItem = _activeItem;\n input.busy = false;\n input.items = items;\n if (input.canSelectMany) {\n input.selectedItems = items.filter(item => item.type !== 'separator' && item.picked);\n }\n if (activeItem) {\n input.activeItems = [activeItem];\n }\n });\n input.show();\n Promise.resolve(picks).then(undefined, err => {\n reject(err);\n input.hide();\n });\n });\n }\n createQuickPick() {\n const ui = this.getUI(true);\n return new _quickInput_js__WEBPACK_IMPORTED_MODULE_13__.QuickPick(ui);\n }\n createInputBox() {\n const ui = this.getUI(true);\n return new _quickInput_js__WEBPACK_IMPORTED_MODULE_13__.InputBox(ui);\n }\n show(controller) {\n const ui = this.getUI(true);\n this.onShowEmitter.fire();\n const oldController = this.controller;\n this.controller = controller;\n oldController === null || oldController === void 0 ? void 0 : oldController.didHide();\n this.setEnabled(true);\n ui.leftActionBar.clear();\n ui.title.textContent = '';\n ui.description1.textContent = '';\n ui.description2.textContent = '';\n _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.reset(ui.widget);\n ui.rightActionBar.clear();\n ui.checkAll.checked = false;\n // ui.inputBox.value = ''; Avoid triggering an event.\n ui.inputBox.placeholder = '';\n ui.inputBox.password = false;\n ui.inputBox.showDecoration(_base_common_severity_js__WEBPACK_IMPORTED_MODULE_8__[\"default\"].Ignore);\n ui.visibleCount.setCount(0);\n ui.count.setCount(0);\n _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.reset(ui.message);\n ui.progressBar.stop();\n ui.list.setElements([]);\n ui.list.matchOnDescription = false;\n ui.list.matchOnDetail = false;\n ui.list.matchOnLabel = true;\n ui.list.sortByLabel = true;\n ui.ignoreFocusOut = false;\n ui.inputBox.toggles = undefined;\n const backKeybindingLabel = this.options.backKeybindingLabel();\n _quickInput_js__WEBPACK_IMPORTED_MODULE_13__.backButton.tooltip = backKeybindingLabel ? (0,_nls_js__WEBPACK_IMPORTED_MODULE_9__.localize)('quickInput.backWithKeybinding', \"Back ({0})\", backKeybindingLabel) : (0,_nls_js__WEBPACK_IMPORTED_MODULE_9__.localize)('quickInput.back', \"Back\");\n ui.container.style.display = '';\n this.updateLayout();\n ui.inputBox.setFocus();\n }\n isVisible() {\n return !!this.ui && this.ui.container.style.display !== 'none';\n }\n setVisibilities(visibilities) {\n const ui = this.getUI();\n ui.title.style.display = visibilities.title ? '' : 'none';\n ui.description1.style.display = visibilities.description && (visibilities.inputBox || visibilities.checkAll) ? '' : 'none';\n ui.description2.style.display = visibilities.description && !(visibilities.inputBox || visibilities.checkAll) ? '' : 'none';\n ui.checkAll.style.display = visibilities.checkAll ? '' : 'none';\n ui.inputContainer.style.display = visibilities.inputBox ? '' : 'none';\n ui.filterContainer.style.display = visibilities.inputBox ? '' : 'none';\n ui.visibleCountContainer.style.display = visibilities.visibleCount ? '' : 'none';\n ui.countContainer.style.display = visibilities.count ? '' : 'none';\n ui.okContainer.style.display = visibilities.ok ? '' : 'none';\n ui.customButtonContainer.style.display = visibilities.customButton ? '' : 'none';\n ui.message.style.display = visibilities.message ? '' : 'none';\n ui.progressBar.getContainer().style.display = visibilities.progressBar ? '' : 'none';\n ui.list.display(!!visibilities.list);\n ui.container.classList.toggle('show-checkboxes', !!visibilities.checkBox);\n ui.container.classList.toggle('hidden-input', !visibilities.inputBox && !visibilities.description);\n this.updateLayout(); // TODO\n }\n setEnabled(enabled) {\n if (enabled !== this.enabled) {\n this.enabled = enabled;\n for (const item of this.getUI().leftActionBar.viewItems) {\n item.action.enabled = enabled;\n }\n for (const item of this.getUI().rightActionBar.viewItems) {\n item.action.enabled = enabled;\n }\n this.getUI().checkAll.disabled = !enabled;\n this.getUI().inputBox.enabled = enabled;\n this.getUI().ok.enabled = enabled;\n this.getUI().list.enabled = enabled;\n }\n }\n hide(reason) {\n var _a, _b;\n const controller = this.controller;\n if (!controller) {\n return;\n }\n const container = (_a = this.ui) === null || _a === void 0 ? void 0 : _a.container;\n const focusChanged = container && !_base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.isAncestorOfActiveElement(container);\n this.controller = null;\n this.onHideEmitter.fire();\n if (container) {\n container.style.display = 'none';\n }\n if (!focusChanged) {\n let currentElement = this.previousFocusElement;\n while (currentElement && !currentElement.offsetParent) {\n currentElement = (_b = currentElement.parentElement) !== null && _b !== void 0 ? _b : undefined;\n }\n if (currentElement === null || currentElement === void 0 ? void 0 : currentElement.offsetParent) {\n currentElement.focus();\n this.previousFocusElement = undefined;\n }\n else {\n this.options.returnFocus();\n }\n }\n controller.didHide(reason);\n }\n layout(dimension, titleBarOffset) {\n this.dimension = dimension;\n this.titleBarOffset = titleBarOffset;\n this.updateLayout();\n }\n updateLayout() {\n if (this.ui && this.isVisible()) {\n this.ui.container.style.top = `${this.titleBarOffset}px`;\n const style = this.ui.container.style;\n const width = Math.min(this.dimension.width * 0.62 /* golden cut */, QuickInputController.MAX_WIDTH);\n style.width = width + 'px';\n style.marginLeft = '-' + (width / 2) + 'px';\n this.ui.inputBox.layout();\n this.ui.list.layout(this.dimension && this.dimension.height * 0.4);\n }\n }\n applyStyles(styles) {\n this.styles = styles;\n this.updateStyles();\n }\n updateStyles() {\n if (this.ui) {\n const { quickInputTitleBackground, quickInputBackground, quickInputForeground, widgetBorder, widgetShadow, } = this.styles.widget;\n this.ui.titleBar.style.backgroundColor = quickInputTitleBackground !== null && quickInputTitleBackground !== void 0 ? quickInputTitleBackground : '';\n this.ui.container.style.backgroundColor = quickInputBackground !== null && quickInputBackground !== void 0 ? quickInputBackground : '';\n this.ui.container.style.color = quickInputForeground !== null && quickInputForeground !== void 0 ? quickInputForeground : '';\n this.ui.container.style.border = widgetBorder ? `1px solid ${widgetBorder}` : '';\n this.ui.container.style.boxShadow = widgetShadow ? `0 0 8px 2px ${widgetShadow}` : '';\n this.ui.list.style(this.styles.list);\n const content = [];\n if (this.styles.pickerGroup.pickerGroupBorder) {\n content.push(`.quick-input-list .quick-input-list-entry { border-top-color: ${this.styles.pickerGroup.pickerGroupBorder}; }`);\n }\n if (this.styles.pickerGroup.pickerGroupForeground) {\n content.push(`.quick-input-list .quick-input-list-separator { color: ${this.styles.pickerGroup.pickerGroupForeground}; }`);\n }\n if (this.styles.pickerGroup.pickerGroupForeground) {\n content.push(`.quick-input-list .quick-input-list-separator-as-item { color: var(--vscode-descriptionForeground); }`);\n }\n if (this.styles.keybindingLabel.keybindingLabelBackground ||\n this.styles.keybindingLabel.keybindingLabelBorder ||\n this.styles.keybindingLabel.keybindingLabelBottomBorder ||\n this.styles.keybindingLabel.keybindingLabelShadow ||\n this.styles.keybindingLabel.keybindingLabelForeground) {\n content.push('.quick-input-list .monaco-keybinding > .monaco-keybinding-key {');\n if (this.styles.keybindingLabel.keybindingLabelBackground) {\n content.push(`background-color: ${this.styles.keybindingLabel.keybindingLabelBackground};`);\n }\n if (this.styles.keybindingLabel.keybindingLabelBorder) {\n // Order matters here. `border-color` must come before `border-bottom-color`.\n content.push(`border-color: ${this.styles.keybindingLabel.keybindingLabelBorder};`);\n }\n if (this.styles.keybindingLabel.keybindingLabelBottomBorder) {\n content.push(`border-bottom-color: ${this.styles.keybindingLabel.keybindingLabelBottomBorder};`);\n }\n if (this.styles.keybindingLabel.keybindingLabelShadow) {\n content.push(`box-shadow: inset 0 -1px 0 ${this.styles.keybindingLabel.keybindingLabelShadow};`);\n }\n if (this.styles.keybindingLabel.keybindingLabelForeground) {\n content.push(`color: ${this.styles.keybindingLabel.keybindingLabelForeground};`);\n }\n content.push('}');\n }\n const newStyles = content.join('\\n');\n if (newStyles !== this.ui.styleSheet.textContent) {\n this.ui.styleSheet.textContent = newStyles;\n }\n }\n }\n}\nQuickInputController.MAX_WIDTH = 600; // Max total width of quick input widget\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/platform/quickinput/browser/quickInputController.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/platform/quickinput/browser/quickInputList.js":
/*!*****************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/platform/quickinput/browser/quickInputList.js ***!
\*****************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ QuickInputList: () => (/* binding */ QuickInputList),\n/* harmony export */ QuickInputListFocus: () => (/* binding */ QuickInputListFocus)\n/* harmony export */ });\n/* harmony import */ var _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../base/browser/dom.js */ \"./node_modules/monaco-editor/esm/vs/base/browser/dom.js\");\n/* harmony import */ var _base_browser_keyboardEvent_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../base/browser/keyboardEvent.js */ \"./node_modules/monaco-editor/esm/vs/base/browser/keyboardEvent.js\");\n/* harmony import */ var _base_browser_ui_actionbar_actionbar_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../base/browser/ui/actionbar/actionbar.js */ \"./node_modules/monaco-editor/esm/vs/base/browser/ui/actionbar/actionbar.js\");\n/* harmony import */ var _base_browser_ui_iconLabel_iconLabel_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../../base/browser/ui/iconLabel/iconLabel.js */ \"./node_modules/monaco-editor/esm/vs/base/browser/ui/iconLabel/iconLabel.js\");\n/* harmony import */ var _base_browser_ui_keybindingLabel_keybindingLabel_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../../base/browser/ui/keybindingLabel/keybindingLabel.js */ \"./node_modules/monaco-editor/esm/vs/base/browser/ui/keybindingLabel/keybindingLabel.js\");\n/* harmony import */ var _base_common_arrays_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../../../base/common/arrays.js */ \"./node_modules/monaco-editor/esm/vs/base/common/arrays.js\");\n/* harmony import */ var _base_common_async_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../../../base/common/async.js */ \"./node_modules/monaco-editor/esm/vs/base/common/async.js\");\n/* harmony import */ var _base_common_comparers_js__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ../../../base/common/comparers.js */ \"./node_modules/monaco-editor/esm/vs/base/common/comparers.js\");\n/* harmony import */ var _base_common_decorators_js__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ../../../base/common/decorators.js */ \"./node_modules/monaco-editor/esm/vs/base/common/decorators.js\");\n/* harmony import */ var _base_common_errors_js__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ../../../base/common/errors.js */ \"./node_modules/monaco-editor/esm/vs/base/common/errors.js\");\n/* harmony import */ var _base_common_event_js__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! ../../../base/common/event.js */ \"./node_modules/monaco-editor/esm/vs/base/common/event.js\");\n/* harmony import */ var _base_common_iconLabels_js__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(/*! ../../../base/common/iconLabels.js */ \"./node_modules/monaco-editor/esm/vs/base/common/iconLabels.js\");\n/* harmony import */ var _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(/*! ../../../base/common/lifecycle.js */ \"./node_modules/monaco-editor/esm/vs/base/common/lifecycle.js\");\n/* harmony import */ var _base_common_platform_js__WEBPACK_IMPORTED_MODULE_13__ = __webpack_require__(/*! ../../../base/common/platform.js */ \"./node_modules/monaco-editor/esm/vs/base/common/platform.js\");\n/* harmony import */ var _base_common_strings_js__WEBPACK_IMPORTED_MODULE_14__ = __webpack_require__(/*! ../../../base/common/strings.js */ \"./node_modules/monaco-editor/esm/vs/base/common/strings.js\");\n/* harmony import */ var _media_quickInput_css__WEBPACK_IMPORTED_MODULE_15__ = __webpack_require__(/*! ./media/quickInput.css */ \"./node_modules/monaco-editor/esm/vs/platform/quickinput/browser/media/quickInput.css\");\n/* harmony import */ var _nls_js__WEBPACK_IMPORTED_MODULE_16__ = __webpack_require__(/*! ../../../nls.js */ \"./node_modules/monaco-editor/esm/vs/nls.js\");\n/* harmony import */ var _quickInputUtils_js__WEBPACK_IMPORTED_MODULE_17__ = __webpack_require__(/*! ./quickInputUtils.js */ \"./node_modules/monaco-editor/esm/vs/platform/quickinput/browser/quickInputUtils.js\");\n/* harmony import */ var _base_common_lazy_js__WEBPACK_IMPORTED_MODULE_18__ = __webpack_require__(/*! ../../../base/common/lazy.js */ \"./node_modules/monaco-editor/esm/vs/base/common/lazy.js\");\n/* harmony import */ var _base_common_uri_js__WEBPACK_IMPORTED_MODULE_19__ = __webpack_require__(/*! ../../../base/common/uri.js */ \"./node_modules/monaco-editor/esm/vs/base/common/uri.js\");\n/* harmony import */ var _theme_common_theme_js__WEBPACK_IMPORTED_MODULE_20__ = __webpack_require__(/*! ../../theme/common/theme.js */ \"./node_modules/monaco-editor/esm/vs/platform/theme/common/theme.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\nvar __decorate = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\n return c > 3 && r && Object.defineProperty(target, key, r), r;\n};\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nconst $ = _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.$;\nclass ListElement {\n constructor(mainItem, previous, index, hasCheckbox, fireButtonTriggered, fireSeparatorButtonTriggered, onCheckedEmitter) {\n var _a, _b, _c;\n // state will get updated later\n this._checked = false;\n this._hidden = false;\n this.hasCheckbox = hasCheckbox;\n this.index = index;\n this.fireButtonTriggered = fireButtonTriggered;\n this.fireSeparatorButtonTriggered = fireSeparatorButtonTriggered;\n this._onChecked = onCheckedEmitter;\n this.onChecked = hasCheckbox\n ? _base_common_event_js__WEBPACK_IMPORTED_MODULE_10__.Event.map(_base_common_event_js__WEBPACK_IMPORTED_MODULE_10__.Event.filter(this._onChecked.event, e => e.listElement === this), e => e.checked)\n : _base_common_event_js__WEBPACK_IMPORTED_MODULE_10__.Event.None;\n if (mainItem.type === 'separator') {\n this._separator = mainItem;\n }\n else {\n this.item = mainItem;\n if (previous && previous.type === 'separator' && !previous.buttons) {\n this._separator = previous;\n }\n this.saneDescription = this.item.description;\n this.saneDetail = this.item.detail;\n this._labelHighlights = (_a = this.item.highlights) === null || _a === void 0 ? void 0 : _a.label;\n this._descriptionHighlights = (_b = this.item.highlights) === null || _b === void 0 ? void 0 : _b.description;\n this._detailHighlights = (_c = this.item.highlights) === null || _c === void 0 ? void 0 : _c.detail;\n this.saneTooltip = this.item.tooltip;\n }\n this._init = new _base_common_lazy_js__WEBPACK_IMPORTED_MODULE_18__.Lazy(() => {\n var _a;\n const saneLabel = (_a = mainItem.label) !== null && _a !== void 0 ? _a : '';\n const saneSortLabel = (0,_base_common_iconLabels_js__WEBPACK_IMPORTED_MODULE_11__.parseLabelWithIcons)(saneLabel).text.trim();\n const saneAriaLabel = mainItem.ariaLabel || [saneLabel, this.saneDescription, this.saneDetail]\n .map(s => (0,_base_common_iconLabels_js__WEBPACK_IMPORTED_MODULE_11__.getCodiconAriaLabel)(s))\n .filter(s => !!s)\n .join(', ');\n return {\n saneLabel,\n saneSortLabel,\n saneAriaLabel\n };\n });\n }\n // #region Lazy Getters\n get saneLabel() {\n return this._init.value.saneLabel;\n }\n get saneSortLabel() {\n return this._init.value.saneSortLabel;\n }\n get saneAriaLabel() {\n return this._init.value.saneAriaLabel;\n }\n // #endregion\n // #region Getters and Setters\n get element() {\n return this._element;\n }\n set element(value) {\n this._element = value;\n }\n get hidden() {\n return this._hidden;\n }\n set hidden(value) {\n this._hidden = value;\n }\n get checked() {\n return this._checked;\n }\n set checked(value) {\n if (value !== this._checked) {\n this._checked = value;\n this._onChecked.fire({ listElement: this, checked: value });\n }\n }\n get separator() {\n return this._separator;\n }\n set separator(value) {\n this._separator = value;\n }\n get labelHighlights() {\n return this._labelHighlights;\n }\n set labelHighlights(value) {\n this._labelHighlights = value;\n }\n get descriptionHighlights() {\n return this._descriptionHighlights;\n }\n set descriptionHighlights(value) {\n this._descriptionHighlights = value;\n }\n get detailHighlights() {\n return this._detailHighlights;\n }\n set detailHighlights(value) {\n this._detailHighlights = value;\n }\n}\nclass ListElementRenderer {\n constructor(themeService, hoverDelegate) {\n this.themeService = themeService;\n this.hoverDelegate = hoverDelegate;\n }\n get templateId() {\n return ListElementRenderer.ID;\n }\n renderTemplate(container) {\n const data = Object.create(null);\n data.toDisposeElement = [];\n data.toDisposeTemplate = [];\n data.entry = _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.append(container, $('.quick-input-list-entry'));\n // Checkbox\n const label = _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.append(data.entry, $('label.quick-input-list-label'));\n data.toDisposeTemplate.push(_base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.addStandardDisposableListener(label, _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.EventType.CLICK, e => {\n if (!data.checkbox.offsetParent) { // If checkbox not visible:\n e.preventDefault(); // Prevent toggle of checkbox when it is immediately shown afterwards. #91740\n }\n }));\n data.checkbox = _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.append(label, $('input.quick-input-list-checkbox'));\n data.checkbox.type = 'checkbox';\n data.toDisposeTemplate.push(_base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.addStandardDisposableListener(data.checkbox, _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.EventType.CHANGE, e => {\n data.element.checked = data.checkbox.checked;\n }));\n // Rows\n const rows = _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.append(label, $('.quick-input-list-rows'));\n const row1 = _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.append(rows, $('.quick-input-list-row'));\n const row2 = _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.append(rows, $('.quick-input-list-row'));\n // Label\n data.label = new _base_browser_ui_iconLabel_iconLabel_js__WEBPACK_IMPORTED_MODULE_3__.IconLabel(row1, { supportHighlights: true, supportDescriptionHighlights: true, supportIcons: true, hoverDelegate: this.hoverDelegate });\n data.toDisposeTemplate.push(data.label);\n data.icon = _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.prepend(data.label.element, $('.quick-input-list-icon'));\n // Keybinding\n const keybindingContainer = _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.append(row1, $('.quick-input-list-entry-keybinding'));\n data.keybinding = new _base_browser_ui_keybindingLabel_keybindingLabel_js__WEBPACK_IMPORTED_MODULE_4__.KeybindingLabel(keybindingContainer, _base_common_platform_js__WEBPACK_IMPORTED_MODULE_13__.OS);\n // Detail\n const detailContainer = _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.append(row2, $('.quick-input-list-label-meta'));\n data.detail = new _base_browser_ui_iconLabel_iconLabel_js__WEBPACK_IMPORTED_MODULE_3__.IconLabel(detailContainer, { supportHighlights: true, supportIcons: true, hoverDelegate: this.hoverDelegate });\n data.toDisposeTemplate.push(data.detail);\n // Separator\n data.separator = _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.append(data.entry, $('.quick-input-list-separator'));\n // Actions\n data.actionBar = new _base_browser_ui_actionbar_actionbar_js__WEBPACK_IMPORTED_MODULE_2__.ActionBar(data.entry, this.hoverDelegate ? { hoverDelegate: this.hoverDelegate } : undefined);\n data.actionBar.domNode.classList.add('quick-input-list-entry-action-bar');\n data.toDisposeTemplate.push(data.actionBar);\n return data;\n }\n renderElement(element, index, data) {\n var _a, _b, _c, _d;\n data.element = element;\n element.element = (_a = data.entry) !== null && _a !== void 0 ? _a : undefined;\n const mainItem = element.item ? element.item : element.separator;\n data.checkbox.checked = element.checked;\n data.toDisposeElement.push(element.onChecked(checked => data.checkbox.checked = checked));\n const { labelHighlights, descriptionHighlights, detailHighlights } = element;\n if ((_b = element.item) === null || _b === void 0 ? void 0 : _b.iconPath) {\n const icon = (0,_theme_common_theme_js__WEBPACK_IMPORTED_MODULE_20__.isDark)(this.themeService.getColorTheme().type) ? element.item.iconPath.dark : ((_c = element.item.iconPath.light) !== null && _c !== void 0 ? _c : element.item.iconPath.dark);\n const iconUrl = _base_common_uri_js__WEBPACK_IMPORTED_MODULE_19__.URI.revive(icon);\n data.icon.className = 'quick-input-list-icon';\n data.icon.style.backgroundImage = _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.asCSSUrl(iconUrl);\n }\n else {\n data.icon.style.backgroundImage = '';\n data.icon.className = ((_d = element.item) === null || _d === void 0 ? void 0 : _d.iconClass) ? `quick-input-list-icon ${element.item.iconClass}` : '';\n }\n // Label\n let descriptionTitle;\n // if we have a tooltip, that will be the hover,\n // with the saneDescription as fallback if it\n // is defined\n if (!element.saneTooltip && element.saneDescription) {\n descriptionTitle = {\n markdown: {\n value: element.saneDescription,\n supportThemeIcons: true\n },\n markdownNotSupportedFallback: element.saneDescription\n };\n }\n const options = {\n matches: labelHighlights || [],\n // If we have a tooltip, we want that to be shown and not any other hover\n descriptionTitle,\n descriptionMatches: descriptionHighlights || [],\n labelEscapeNewLines: true\n };\n if (mainItem.type !== 'separator') {\n options.extraClasses = mainItem.iconClasses;\n options.italic = mainItem.italic;\n options.strikethrough = mainItem.strikethrough;\n data.entry.classList.remove('quick-input-list-separator-as-item');\n }\n else {\n data.entry.classList.add('quick-input-list-separator-as-item');\n }\n data.label.setLabel(element.saneLabel, element.saneDescription, options);\n // Keybinding\n data.keybinding.set(mainItem.type === 'separator' ? undefined : mainItem.keybinding);\n // Detail\n if (element.saneDetail) {\n let title;\n // If we have a tooltip, we want that to be shown and not any other hover\n if (!element.saneTooltip) {\n title = {\n markdown: {\n value: element.saneDetail,\n supportThemeIcons: true\n },\n markdownNotSupportedFallback: element.saneDetail\n };\n }\n data.detail.element.style.display = '';\n data.detail.setLabel(element.saneDetail, undefined, {\n matches: detailHighlights,\n title,\n labelEscapeNewLines: true\n });\n }\n else {\n data.detail.element.style.display = 'none';\n }\n // Separator\n if (element.item && element.separator && element.separator.label) {\n data.separator.textContent = element.separator.label;\n data.separator.style.display = '';\n }\n else {\n data.separator.style.display = 'none';\n }\n data.entry.classList.toggle('quick-input-list-separator-border', !!element.separator);\n // Actions\n const buttons = mainItem.buttons;\n if (buttons && buttons.length) {\n data.actionBar.push(buttons.map((button, index) => (0,_quickInputUtils_js__WEBPACK_IMPORTED_MODULE_17__.quickInputButtonToAction)(button, `id-${index}`, () => mainItem.type !== 'separator'\n ? element.fireButtonTriggered({ button, item: mainItem })\n : element.fireSeparatorButtonTriggered({ button, separator: mainItem }))), { icon: true, label: false });\n data.entry.classList.add('has-actions');\n }\n else {\n data.entry.classList.remove('has-actions');\n }\n }\n disposeElement(element, index, data) {\n data.toDisposeElement = (0,_base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_12__.dispose)(data.toDisposeElement);\n data.actionBar.clear();\n }\n disposeTemplate(data) {\n data.toDisposeElement = (0,_base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_12__.dispose)(data.toDisposeElement);\n data.toDisposeTemplate = (0,_base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_12__.dispose)(data.toDisposeTemplate);\n }\n}\nListElementRenderer.ID = 'listelement';\nclass ListElementDelegate {\n getHeight(element) {\n if (!element.item) {\n // must be a separator\n return 24;\n }\n return element.saneDetail ? 44 : 22;\n }\n getTemplateId(element) {\n return ListElementRenderer.ID;\n }\n}\nvar QuickInputListFocus;\n(function (QuickInputListFocus) {\n QuickInputListFocus[QuickInputListFocus[\"First\"] = 1] = \"First\";\n QuickInputListFocus[QuickInputListFocus[\"Second\"] = 2] = \"Second\";\n QuickInputListFocus[QuickInputListFocus[\"Last\"] = 3] = \"Last\";\n QuickInputListFocus[QuickInputListFocus[\"Next\"] = 4] = \"Next\";\n QuickInputListFocus[QuickInputListFocus[\"Previous\"] = 5] = \"Previous\";\n QuickInputListFocus[QuickInputListFocus[\"NextPage\"] = 6] = \"NextPage\";\n QuickInputListFocus[QuickInputListFocus[\"PreviousPage\"] = 7] = \"PreviousPage\";\n})(QuickInputListFocus || (QuickInputListFocus = {}));\nclass QuickInputList {\n constructor(parent, id, options, themeService) {\n this.parent = parent;\n this.options = options;\n this.inputElements = [];\n this.elements = [];\n this.elementsToIndexes = new Map();\n this.matchOnDescription = false;\n this.matchOnDetail = false;\n this.matchOnLabel = true;\n this.matchOnLabelMode = 'fuzzy';\n this.sortByLabel = true;\n this._onChangedAllVisibleChecked = new _base_common_event_js__WEBPACK_IMPORTED_MODULE_10__.Emitter();\n this.onChangedAllVisibleChecked = this._onChangedAllVisibleChecked.event;\n this._onChangedCheckedCount = new _base_common_event_js__WEBPACK_IMPORTED_MODULE_10__.Emitter();\n this.onChangedCheckedCount = this._onChangedCheckedCount.event;\n this._onChangedVisibleCount = new _base_common_event_js__WEBPACK_IMPORTED_MODULE_10__.Emitter();\n this.onChangedVisibleCount = this._onChangedVisibleCount.event;\n this._onChangedCheckedElements = new _base_common_event_js__WEBPACK_IMPORTED_MODULE_10__.Emitter();\n this.onChangedCheckedElements = this._onChangedCheckedElements.event;\n this._onButtonTriggered = new _base_common_event_js__WEBPACK_IMPORTED_MODULE_10__.Emitter();\n this.onButtonTriggered = this._onButtonTriggered.event;\n this._onSeparatorButtonTriggered = new _base_common_event_js__WEBPACK_IMPORTED_MODULE_10__.Emitter();\n this.onSeparatorButtonTriggered = this._onSeparatorButtonTriggered.event;\n this._onKeyDown = new _base_common_event_js__WEBPACK_IMPORTED_MODULE_10__.Emitter();\n this.onKeyDown = this._onKeyDown.event;\n this._onLeave = new _base_common_event_js__WEBPACK_IMPORTED_MODULE_10__.Emitter();\n this.onLeave = this._onLeave.event;\n this._listElementChecked = new _base_common_event_js__WEBPACK_IMPORTED_MODULE_10__.Emitter();\n this._fireCheckedEvents = true;\n this.elementDisposables = [];\n this.disposables = [];\n this.id = id;\n this.container = _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.append(this.parent, $('.quick-input-list'));\n const delegate = new ListElementDelegate();\n const accessibilityProvider = new QuickInputAccessibilityProvider();\n this.list = options.createList('QuickInput', this.container, delegate, [new ListElementRenderer(themeService, options.hoverDelegate)], {\n identityProvider: {\n getId: element => {\n var _a, _b, _c, _d, _e, _f, _g, _h;\n // always prefer item over separator because if item is defined, it must be the main item type\n // always prefer a defined id if one was specified and use label as a fallback\n return (_h = (_f = (_d = (_b = (_a = element.item) === null || _a === void 0 ? void 0 : _a.id) !== null && _b !== void 0 ? _b : (_c = element.item) === null || _c === void 0 ? void 0 : _c.label) !== null && _d !== void 0 ? _d : (_e = element.separator) === null || _e === void 0 ? void 0 : _e.id) !== null && _f !== void 0 ? _f : (_g = element.separator) === null || _g === void 0 ? void 0 : _g.label) !== null && _h !== void 0 ? _h : '';\n }\n },\n setRowLineHeight: false,\n multipleSelectionSupport: false,\n horizontalScrolling: false,\n accessibilityProvider\n });\n this.list.getHTMLElement().id = id;\n this.disposables.push(this.list);\n this.disposables.push(this.list.onKeyDown(e => {\n const event = new _base_browser_keyboardEvent_js__WEBPACK_IMPORTED_MODULE_1__.StandardKeyboardEvent(e);\n switch (event.keyCode) {\n case 10 /* KeyCode.Space */:\n this.toggleCheckbox();\n break;\n case 31 /* KeyCode.KeyA */:\n if (_base_common_platform_js__WEBPACK_IMPORTED_MODULE_13__.isMacintosh ? e.metaKey : e.ctrlKey) {\n this.list.setFocus((0,_base_common_arrays_js__WEBPACK_IMPORTED_MODULE_5__.range)(this.list.length));\n }\n break;\n case 16 /* KeyCode.UpArrow */: {\n const focus1 = this.list.getFocus();\n if (focus1.length === 1 && focus1[0] === 0) {\n this._onLeave.fire();\n }\n break;\n }\n case 18 /* KeyCode.DownArrow */: {\n const focus2 = this.list.getFocus();\n if (focus2.length === 1 && focus2[0] === this.list.length - 1) {\n this._onLeave.fire();\n }\n break;\n }\n }\n this._onKeyDown.fire(event);\n }));\n this.disposables.push(this.list.onMouseDown(e => {\n if (e.browserEvent.button !== 2) {\n // Works around / fixes #64350.\n e.browserEvent.preventDefault();\n }\n }));\n this.disposables.push(_base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.addDisposableListener(this.container, _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.EventType.CLICK, e => {\n if (e.x || e.y) { // Avoid 'click' triggered by 'space' on checkbox.\n this._onLeave.fire();\n }\n }));\n this.disposables.push(this.list.onMouseMiddleClick(e => {\n this._onLeave.fire();\n }));\n this.disposables.push(this.list.onContextMenu(e => {\n if (typeof e.index === 'number') {\n e.browserEvent.preventDefault();\n // we want to treat a context menu event as\n // a gesture to open the item at the index\n // since we do not have any context menu\n // this enables for example macOS to Ctrl-\n // click on an item to open it.\n this.list.setSelection([e.index]);\n }\n }));\n const delayer = new _base_common_async_js__WEBPACK_IMPORTED_MODULE_6__.ThrottledDelayer(options.hoverDelegate.delay);\n // onMouseOver triggers every time a new element has been moused over\n // even if it's on the same list item.\n this.disposables.push(this.list.onMouseOver(async (e) => {\n var _a;\n // If we hover over an anchor element, we don't want to show the hover because\n // the anchor may have a tooltip that we want to show instead.\n if (e.browserEvent.target instanceof HTMLAnchorElement) {\n delayer.cancel();\n return;\n }\n if (\n // anchors are an exception as called out above so we skip them here\n !(e.browserEvent.relatedTarget instanceof HTMLAnchorElement) &&\n // check if the mouse is still over the same element\n _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.isAncestor(e.browserEvent.relatedTarget, (_a = e.element) === null || _a === void 0 ? void 0 : _a.element)) {\n return;\n }\n try {\n await delayer.trigger(async () => {\n if (e.element) {\n this.showHover(e.element);\n }\n });\n }\n catch (e) {\n // Ignore cancellation errors due to mouse out\n if (!(0,_base_common_errors_js__WEBPACK_IMPORTED_MODULE_9__.isCancellationError)(e)) {\n throw e;\n }\n }\n }));\n this.disposables.push(this.list.onMouseOut(e => {\n var _a;\n // onMouseOut triggers every time a new element has been moused over\n // even if it's on the same list item. We only want one event, so we\n // check if the mouse is still over the same element.\n if (_base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.isAncestor(e.browserEvent.relatedTarget, (_a = e.element) === null || _a === void 0 ? void 0 : _a.element)) {\n return;\n }\n delayer.cancel();\n }));\n this.disposables.push(delayer);\n this.disposables.push(this._listElementChecked.event(_ => this.fireCheckedEvents()));\n this.disposables.push(this._onChangedAllVisibleChecked, this._onChangedCheckedCount, this._onChangedVisibleCount, this._onChangedCheckedElements, this._onButtonTriggered, this._onSeparatorButtonTriggered, this._onLeave, this._onKeyDown);\n }\n get onDidChangeFocus() {\n return _base_common_event_js__WEBPACK_IMPORTED_MODULE_10__.Event.map(this.list.onDidChangeFocus, e => e.elements.map(e => e.item));\n }\n get onDidChangeSelection() {\n return _base_common_event_js__WEBPACK_IMPORTED_MODULE_10__.Event.map(this.list.onDidChangeSelection, e => ({ items: e.elements.map(e => e.item), event: e.browserEvent }));\n }\n get scrollTop() {\n return this.list.scrollTop;\n }\n set scrollTop(scrollTop) {\n this.list.scrollTop = scrollTop;\n }\n get ariaLabel() {\n return this.list.getHTMLElement().ariaLabel;\n }\n set ariaLabel(label) {\n this.list.getHTMLElement().ariaLabel = label;\n }\n getAllVisibleChecked() {\n return this.allVisibleChecked(this.elements, false);\n }\n allVisibleChecked(elements, whenNoneVisible = true) {\n for (let i = 0, n = elements.length; i < n; i++) {\n const element = elements[i];\n if (!element.hidden) {\n if (!element.checked) {\n return false;\n }\n else {\n whenNoneVisible = true;\n }\n }\n }\n return whenNoneVisible;\n }\n getCheckedCount() {\n let count = 0;\n const elements = this.elements;\n for (let i = 0, n = elements.length; i < n; i++) {\n if (elements[i].checked) {\n count++;\n }\n }\n return count;\n }\n getVisibleCount() {\n let count = 0;\n const elements = this.elements;\n for (let i = 0, n = elements.length; i < n; i++) {\n if (!elements[i].hidden) {\n count++;\n }\n }\n return count;\n }\n setAllVisibleChecked(checked) {\n try {\n this._fireCheckedEvents = false;\n this.elements.forEach(element => {\n if (!element.hidden) {\n element.checked = checked;\n }\n });\n }\n finally {\n this._fireCheckedEvents = true;\n this.fireCheckedEvents();\n }\n }\n setElements(inputElements) {\n this.elementDisposables = (0,_base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_12__.dispose)(this.elementDisposables);\n const fireButtonTriggered = (event) => this.fireButtonTriggered(event);\n const fireSeparatorButtonTriggered = (event) => this.fireSeparatorButtonTriggered(event);\n this.inputElements = inputElements;\n const elementsToIndexes = new Map();\n const hasCheckbox = this.parent.classList.contains('show-checkboxes');\n this.elements = inputElements.reduce((result, item, index) => {\n var _a;\n const previous = index > 0 ? inputElements[index - 1] : undefined;\n if (item.type === 'separator') {\n if (!item.buttons) {\n // This separator will be rendered as a part of the list item\n return result;\n }\n }\n const element = new ListElement(item, previous, index, hasCheckbox, fireButtonTriggered, fireSeparatorButtonTriggered, this._listElementChecked);\n const resultIndex = result.length;\n result.push(element);\n elementsToIndexes.set((_a = element.item) !== null && _a !== void 0 ? _a : element.separator, resultIndex);\n return result;\n }, []);\n this.elementsToIndexes = elementsToIndexes;\n this.list.splice(0, this.list.length); // Clear focus and selection first, sending the events when the list is empty.\n this.list.splice(0, this.list.length, this.elements);\n this._onChangedVisibleCount.fire(this.elements.length);\n }\n getFocusedElements() {\n return this.list.getFocusedElements()\n .map(e => e.item);\n }\n setFocusedElements(items) {\n this.list.setFocus(items\n .filter(item => this.elementsToIndexes.has(item))\n .map(item => this.elementsToIndexes.get(item)));\n if (items.length > 0) {\n const focused = this.list.getFocus()[0];\n if (typeof focused === 'number') {\n this.list.reveal(focused);\n }\n }\n }\n getActiveDescendant() {\n return this.list.getHTMLElement().getAttribute('aria-activedescendant');\n }\n setSelectedElements(items) {\n this.list.setSelection(items\n .filter(item => this.elementsToIndexes.has(item))\n .map(item => this.elementsToIndexes.get(item)));\n }\n getCheckedElements() {\n return this.elements.filter(e => e.checked)\n .map(e => e.item)\n .filter(e => !!e);\n }\n setCheckedElements(items) {\n try {\n this._fireCheckedEvents = false;\n const checked = new Set();\n for (const item of items) {\n checked.add(item);\n }\n for (const element of this.elements) {\n element.checked = checked.has(element.item);\n }\n }\n finally {\n this._fireCheckedEvents = true;\n this.fireCheckedEvents();\n }\n }\n set enabled(value) {\n this.list.getHTMLElement().style.pointerEvents = value ? '' : 'none';\n }\n focus(what) {\n if (!this.list.length) {\n return;\n }\n if (what === QuickInputListFocus.Second && this.list.length < 2) {\n what = QuickInputListFocus.First;\n }\n switch (what) {\n case QuickInputListFocus.First:\n this.list.scrollTop = 0;\n this.list.focusFirst(undefined, (e) => !!e.item);\n break;\n case QuickInputListFocus.Second:\n this.list.scrollTop = 0;\n this.list.focusNth(1, undefined, (e) => !!e.item);\n break;\n case QuickInputListFocus.Last:\n this.list.scrollTop = this.list.scrollHeight;\n this.list.focusLast(undefined, (e) => !!e.item);\n break;\n case QuickInputListFocus.Next: {\n this.list.focusNext(undefined, true, undefined, (e) => !!e.item);\n const index = this.list.getFocus()[0];\n if (index !== 0 && !this.elements[index - 1].item && this.list.firstVisibleIndex > index - 1) {\n this.list.reveal(index - 1);\n }\n break;\n }\n case QuickInputListFocus.Previous: {\n this.list.focusPrevious(undefined, true, undefined, (e) => !!e.item);\n const index = this.list.getFocus()[0];\n if (index !== 0 && !this.elements[index - 1].item && this.list.firstVisibleIndex > index - 1) {\n this.list.reveal(index - 1);\n }\n break;\n }\n case QuickInputListFocus.NextPage:\n this.list.focusNextPage(undefined, (e) => !!e.item);\n break;\n case QuickInputListFocus.PreviousPage:\n this.list.focusPreviousPage(undefined, (e) => !!e.item);\n break;\n }\n const focused = this.list.getFocus()[0];\n if (typeof focused === 'number') {\n this.list.reveal(focused);\n }\n }\n clearFocus() {\n this.list.setFocus([]);\n }\n domFocus() {\n this.list.domFocus();\n }\n /**\n * Disposes of the hover and shows a new one for the given index if it has a tooltip.\n * @param element The element to show the hover for\n */\n showHover(element) {\n var _a, _b, _c;\n if (this._lastHover && !this._lastHover.isDisposed) {\n (_b = (_a = this.options.hoverDelegate).onDidHideHover) === null || _b === void 0 ? void 0 : _b.call(_a);\n (_c = this._lastHover) === null || _c === void 0 ? void 0 : _c.dispose();\n }\n if (!element.element || !element.saneTooltip) {\n return;\n }\n this._lastHover = this.options.hoverDelegate.showHover({\n content: element.saneTooltip,\n target: element.element,\n linkHandler: (url) => {\n this.options.linkOpenerDelegate(url);\n },\n appearance: {\n showPointer: true,\n },\n container: this.container,\n position: {\n hoverPosition: 1 /* HoverPosition.RIGHT */\n }\n }, false);\n }\n layout(maxHeight) {\n this.list.getHTMLElement().style.maxHeight = maxHeight ? `${\n // Make sure height aligns with list item heights\n Math.floor(maxHeight / 44) * 44\n // Add some extra height so that it's clear there's more to scroll\n + 6}px` : '';\n this.list.layout();\n }\n filter(query) {\n if (!(this.sortByLabel || this.matchOnLabel || this.matchOnDescription || this.matchOnDetail)) {\n this.list.layout();\n return false;\n }\n const queryWithWhitespace = query;\n query = query.trim();\n // Reset filtering\n if (!query || !(this.matchOnLabel || this.matchOnDescription || this.matchOnDetail)) {\n this.elements.forEach(element => {\n element.labelHighlights = undefined;\n element.descriptionHighlights = undefined;\n element.detailHighlights = undefined;\n element.hidden = false;\n const previous = element.index && this.inputElements[element.index - 1];\n if (element.item) {\n element.separator = previous && previous.type === 'separator' && !previous.buttons ? previous : undefined;\n }\n });\n }\n // Filter by value (since we support icons in labels, use $(..) aware fuzzy matching)\n else {\n let currentSeparator;\n this.elements.forEach(element => {\n var _a, _b, _c, _d;\n let labelHighlights;\n if (this.matchOnLabelMode === 'fuzzy') {\n labelHighlights = this.matchOnLabel ? (_a = (0,_base_common_iconLabels_js__WEBPACK_IMPORTED_MODULE_11__.matchesFuzzyIconAware)(query, (0,_base_common_iconLabels_js__WEBPACK_IMPORTED_MODULE_11__.parseLabelWithIcons)(element.saneLabel))) !== null && _a !== void 0 ? _a : undefined : undefined;\n }\n else {\n labelHighlights = this.matchOnLabel ? (_b = matchesContiguousIconAware(queryWithWhitespace, (0,_base_common_iconLabels_js__WEBPACK_IMPORTED_MODULE_11__.parseLabelWithIcons)(element.saneLabel))) !== null && _b !== void 0 ? _b : undefined : undefined;\n }\n const descriptionHighlights = this.matchOnDescription ? (_c = (0,_base_common_iconLabels_js__WEBPACK_IMPORTED_MODULE_11__.matchesFuzzyIconAware)(query, (0,_base_common_iconLabels_js__WEBPACK_IMPORTED_MODULE_11__.parseLabelWithIcons)(element.saneDescription || ''))) !== null && _c !== void 0 ? _c : undefined : undefined;\n const detailHighlights = this.matchOnDetail ? (_d = (0,_base_common_iconLabels_js__WEBPACK_IMPORTED_MODULE_11__.matchesFuzzyIconAware)(query, (0,_base_common_iconLabels_js__WEBPACK_IMPORTED_MODULE_11__.parseLabelWithIcons)(element.saneDetail || ''))) !== null && _d !== void 0 ? _d : undefined : undefined;\n if (labelHighlights || descriptionHighlights || detailHighlights) {\n element.labelHighlights = labelHighlights;\n element.descriptionHighlights = descriptionHighlights;\n element.detailHighlights = detailHighlights;\n element.hidden = false;\n }\n else {\n element.labelHighlights = undefined;\n element.descriptionHighlights = undefined;\n element.detailHighlights = undefined;\n element.hidden = element.item ? !element.item.alwaysShow : true;\n }\n // Ensure separators are filtered out first before deciding if we need to bring them back\n if (element.item) {\n element.separator = undefined;\n }\n else if (element.separator) {\n element.hidden = true;\n }\n // we can show the separator unless the list gets sorted by match\n if (!this.sortByLabel) {\n const previous = element.index && this.inputElements[element.index - 1];\n currentSeparator = previous && previous.type === 'separator' ? previous : currentSeparator;\n if (currentSeparator && !element.hidden) {\n element.separator = currentSeparator;\n currentSeparator = undefined;\n }\n }\n });\n }\n const shownElements = this.elements.filter(element => !element.hidden);\n // Sort by value\n if (this.sortByLabel && query) {\n const normalizedSearchValue = query.toLowerCase();\n shownElements.sort((a, b) => {\n return compareEntries(a, b, normalizedSearchValue);\n });\n }\n this.elementsToIndexes = shownElements.reduce((map, element, index) => {\n var _a;\n map.set((_a = element.item) !== null && _a !== void 0 ? _a : element.separator, index);\n return map;\n }, new Map());\n this.list.splice(0, this.list.length, shownElements);\n this.list.setFocus([]);\n this.list.layout();\n this._onChangedAllVisibleChecked.fire(this.getAllVisibleChecked());\n this._onChangedVisibleCount.fire(shownElements.length);\n return true;\n }\n toggleCheckbox() {\n try {\n this._fireCheckedEvents = false;\n const elements = this.list.getFocusedElements();\n const allChecked = this.allVisibleChecked(elements);\n for (const element of elements) {\n element.checked = !allChecked;\n }\n }\n finally {\n this._fireCheckedEvents = true;\n this.fireCheckedEvents();\n }\n }\n display(display) {\n this.container.style.display = display ? '' : 'none';\n }\n isDisplayed() {\n return this.container.style.display !== 'none';\n }\n dispose() {\n this.elementDisposables = (0,_base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_12__.dispose)(this.elementDisposables);\n this.disposables = (0,_base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_12__.dispose)(this.disposables);\n }\n fireCheckedEvents() {\n if (this._fireCheckedEvents) {\n this._onChangedAllVisibleChecked.fire(this.getAllVisibleChecked());\n this._onChangedCheckedCount.fire(this.getCheckedCount());\n this._onChangedCheckedElements.fire(this.getCheckedElements());\n }\n }\n fireButtonTriggered(event) {\n this._onButtonTriggered.fire(event);\n }\n fireSeparatorButtonTriggered(event) {\n this._onSeparatorButtonTriggered.fire(event);\n }\n style(styles) {\n this.list.style(styles);\n }\n toggleHover() {\n const element = this.list.getFocusedElements()[0];\n if (!(element === null || element === void 0 ? void 0 : element.saneTooltip)) {\n return;\n }\n // if there's a hover already, hide it (toggle off)\n if (this._lastHover && !this._lastHover.isDisposed) {\n this._lastHover.dispose();\n return;\n }\n // If there is no hover, show it (toggle on)\n const focused = this.list.getFocusedElements()[0];\n if (!focused) {\n return;\n }\n this.showHover(focused);\n const store = new _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_12__.DisposableStore();\n store.add(this.list.onDidChangeFocus(e => {\n if (e.indexes.length) {\n this.showHover(e.elements[0]);\n }\n }));\n if (this._lastHover) {\n store.add(this._lastHover);\n }\n this._toggleHover = store;\n this.elementDisposables.push(this._toggleHover);\n }\n}\n__decorate([\n _base_common_decorators_js__WEBPACK_IMPORTED_MODULE_8__.memoize\n], QuickInputList.prototype, \"onDidChangeFocus\", null);\n__decorate([\n _base_common_decorators_js__WEBPACK_IMPORTED_MODULE_8__.memoize\n], QuickInputList.prototype, \"onDidChangeSelection\", null);\nfunction matchesContiguousIconAware(query, target) {\n const { text, iconOffsets } = target;\n // Return early if there are no icon markers in the word to match against\n if (!iconOffsets || iconOffsets.length === 0) {\n return matchesContiguous(query, text);\n }\n // Trim the word to match against because it could have leading\n // whitespace now if the word started with an icon\n const wordToMatchAgainstWithoutIconsTrimmed = (0,_base_common_strings_js__WEBPACK_IMPORTED_MODULE_14__.ltrim)(text, ' ');\n const leadingWhitespaceOffset = text.length - wordToMatchAgainstWithoutIconsTrimmed.length;\n // match on value without icon\n const matches = matchesContiguous(query, wordToMatchAgainstWithoutIconsTrimmed);\n // Map matches back to offsets with icon and trimming\n if (matches) {\n for (const match of matches) {\n const iconOffset = iconOffsets[match.start + leadingWhitespaceOffset] /* icon offsets at index */ + leadingWhitespaceOffset /* overall leading whitespace offset */;\n match.start += iconOffset;\n match.end += iconOffset;\n }\n }\n return matches;\n}\nfunction matchesContiguous(word, wordToMatchAgainst) {\n const matchIndex = wordToMatchAgainst.toLowerCase().indexOf(word.toLowerCase());\n if (matchIndex !== -1) {\n return [{ start: matchIndex, end: matchIndex + word.length }];\n }\n return null;\n}\nfunction compareEntries(elementA, elementB, lookFor) {\n const labelHighlightsA = elementA.labelHighlights || [];\n const labelHighlightsB = elementB.labelHighlights || [];\n if (labelHighlightsA.length && !labelHighlightsB.length) {\n return -1;\n }\n if (!labelHighlightsA.length && labelHighlightsB.length) {\n return 1;\n }\n if (labelHighlightsA.length === 0 && labelHighlightsB.length === 0) {\n return 0;\n }\n return (0,_base_common_comparers_js__WEBPACK_IMPORTED_MODULE_7__.compareAnything)(elementA.saneSortLabel, elementB.saneSortLabel, lookFor);\n}\nclass QuickInputAccessibilityProvider {\n getWidgetAriaLabel() {\n return (0,_nls_js__WEBPACK_IMPORTED_MODULE_16__.localize)('quickInput', \"Quick Input\");\n }\n getAriaLabel(element) {\n var _a;\n return ((_a = element.separator) === null || _a === void 0 ? void 0 : _a.label)\n ? `${element.saneAriaLabel}, ${element.separator.label}`\n : element.saneAriaLabel;\n }\n getWidgetRole() {\n return 'listbox';\n }\n getRole(element) {\n return element.hasCheckbox ? 'checkbox' : 'option';\n }\n isChecked(element) {\n if (!element.hasCheckbox) {\n return undefined;\n }\n return {\n value: element.checked,\n onDidChange: element.onChecked\n };\n }\n}\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/platform/quickinput/browser/quickInputList.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/platform/quickinput/browser/quickInputService.js":
/*!********************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/platform/quickinput/browser/quickInputService.js ***!
\********************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ QuickInputService: () => (/* binding */ QuickInputService)\n/* harmony export */ });\n/* harmony import */ var _base_common_cancellation_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../base/common/cancellation.js */ \"./node_modules/monaco-editor/esm/vs/base/common/cancellation.js\");\n/* harmony import */ var _base_common_event_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../base/common/event.js */ \"./node_modules/monaco-editor/esm/vs/base/common/event.js\");\n/* harmony import */ var _contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../contextkey/common/contextkey.js */ \"./node_modules/monaco-editor/esm/vs/platform/contextkey/common/contextkey.js\");\n/* harmony import */ var _instantiation_common_instantiation_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../instantiation/common/instantiation.js */ \"./node_modules/monaco-editor/esm/vs/platform/instantiation/common/instantiation.js\");\n/* harmony import */ var _layout_browser_layoutService_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../layout/browser/layoutService.js */ \"./node_modules/monaco-editor/esm/vs/platform/layout/browser/layoutService.js\");\n/* harmony import */ var _list_browser_listService_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../../list/browser/listService.js */ \"./node_modules/monaco-editor/esm/vs/platform/list/browser/listService.js\");\n/* harmony import */ var _opener_common_opener_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../../opener/common/opener.js */ \"./node_modules/monaco-editor/esm/vs/platform/opener/common/opener.js\");\n/* harmony import */ var _quickAccess_js__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ./quickAccess.js */ \"./node_modules/monaco-editor/esm/vs/platform/quickinput/browser/quickAccess.js\");\n/* harmony import */ var _theme_browser_defaultStyles_js__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ../../theme/browser/defaultStyles.js */ \"./node_modules/monaco-editor/esm/vs/platform/theme/browser/defaultStyles.js\");\n/* harmony import */ var _theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ../../theme/common/colorRegistry.js */ \"./node_modules/monaco-editor/esm/vs/platform/theme/common/colorRegistry.js\");\n/* harmony import */ var _theme_common_themeService_js__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! ../../theme/common/themeService.js */ \"./node_modules/monaco-editor/esm/vs/platform/theme/common/themeService.js\");\n/* harmony import */ var _quickInput_js__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(/*! ./quickInput.js */ \"./node_modules/monaco-editor/esm/vs/platform/quickinput/browser/quickInput.js\");\n/* harmony import */ var _quickInputController_js__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(/*! ./quickInputController.js */ \"./node_modules/monaco-editor/esm/vs/platform/quickinput/browser/quickInputController.js\");\n/* harmony import */ var _configuration_common_configuration_js__WEBPACK_IMPORTED_MODULE_13__ = __webpack_require__(/*! ../../configuration/common/configuration.js */ \"./node_modules/monaco-editor/esm/vs/platform/configuration/common/configuration.js\");\n/* harmony import */ var _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_14__ = __webpack_require__(/*! ../../../base/browser/dom.js */ \"./node_modules/monaco-editor/esm/vs/base/browser/dom.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\nvar __decorate = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\n return c > 3 && r && Object.defineProperty(target, key, r), r;\n};\nvar __param = (undefined && undefined.__param) || function (paramIndex, decorator) {\n return function (target, key) { decorator(target, key, paramIndex); }\n};\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlet QuickInputService = class QuickInputService extends _theme_common_themeService_js__WEBPACK_IMPORTED_MODULE_10__.Themable {\n get controller() {\n if (!this._controller) {\n this._controller = this._register(this.createController());\n }\n return this._controller;\n }\n get hasController() { return !!this._controller; }\n get quickAccess() {\n if (!this._quickAccess) {\n this._quickAccess = this._register(this.instantiationService.createInstance(_quickAccess_js__WEBPACK_IMPORTED_MODULE_7__.QuickAccessController));\n }\n return this._quickAccess;\n }\n constructor(instantiationService, contextKeyService, themeService, layoutService, configurationService) {\n super(themeService);\n this.instantiationService = instantiationService;\n this.contextKeyService = contextKeyService;\n this.layoutService = layoutService;\n this.configurationService = configurationService;\n this._onShow = this._register(new _base_common_event_js__WEBPACK_IMPORTED_MODULE_1__.Emitter());\n this._onHide = this._register(new _base_common_event_js__WEBPACK_IMPORTED_MODULE_1__.Emitter());\n this.contexts = new Map();\n }\n createController(host = this.layoutService, options) {\n const defaultOptions = {\n idPrefix: 'quickInput_',\n container: host.activeContainer,\n ignoreFocusOut: () => false,\n backKeybindingLabel: () => undefined,\n setContextKey: (id) => this.setContextKey(id),\n linkOpenerDelegate: (content) => {\n // HACK: https://github.com/microsoft/vscode/issues/173691\n this.instantiationService.invokeFunction(accessor => {\n const openerService = accessor.get(_opener_common_opener_js__WEBPACK_IMPORTED_MODULE_6__.IOpenerService);\n openerService.open(content, { allowCommands: true, fromUserGesture: true });\n });\n },\n returnFocus: () => host.focus(),\n createList: (user, container, delegate, renderers, options) => this.instantiationService.createInstance(_list_browser_listService_js__WEBPACK_IMPORTED_MODULE_5__.WorkbenchList, user, container, delegate, renderers, options),\n styles: this.computeStyles(),\n hoverDelegate: this._register(this.instantiationService.createInstance(_quickInput_js__WEBPACK_IMPORTED_MODULE_11__.QuickInputHoverDelegate))\n };\n const controller = this._register(new _quickInputController_js__WEBPACK_IMPORTED_MODULE_12__.QuickInputController({\n ...defaultOptions,\n ...options\n }, this.themeService, this.layoutService));\n controller.layout(host.activeContainerDimension, host.activeContainerOffset.quickPickTop);\n // Layout changes\n this._register(host.onDidLayoutActiveContainer(dimension => {\n if ((0,_base_browser_dom_js__WEBPACK_IMPORTED_MODULE_14__.getWindow)(host.activeContainer) === (0,_base_browser_dom_js__WEBPACK_IMPORTED_MODULE_14__.getWindow)(controller.container)) {\n controller.layout(dimension, host.activeContainerOffset.quickPickTop);\n }\n }));\n this._register(host.onDidChangeActiveContainer(() => {\n if (controller.isVisible()) {\n return;\n }\n controller.layout(host.activeContainerDimension, host.activeContainerOffset.quickPickTop);\n }));\n // Context keys\n this._register(controller.onShow(() => {\n this.resetContextKeys();\n this._onShow.fire();\n }));\n this._register(controller.onHide(() => {\n this.resetContextKeys();\n this._onHide.fire();\n }));\n return controller;\n }\n setContextKey(id) {\n let key;\n if (id) {\n key = this.contexts.get(id);\n if (!key) {\n key = new _contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_2__.RawContextKey(id, false)\n .bindTo(this.contextKeyService);\n this.contexts.set(id, key);\n }\n }\n if (key && key.get()) {\n return; // already active context\n }\n this.resetContextKeys();\n key === null || key === void 0 ? void 0 : key.set(true);\n }\n resetContextKeys() {\n this.contexts.forEach(context => {\n if (context.get()) {\n context.reset();\n }\n });\n }\n pick(picks, options = {}, token = _base_common_cancellation_js__WEBPACK_IMPORTED_MODULE_0__.CancellationToken.None) {\n return this.controller.pick(picks, options, token);\n }\n createQuickPick() {\n return this.controller.createQuickPick();\n }\n createInputBox() {\n return this.controller.createInputBox();\n }\n updateStyles() {\n if (this.hasController) {\n this.controller.applyStyles(this.computeStyles());\n }\n }\n computeStyles() {\n return {\n widget: {\n quickInputBackground: (0,_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_9__.asCssVariable)(_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_9__.quickInputBackground),\n quickInputForeground: (0,_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_9__.asCssVariable)(_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_9__.quickInputForeground),\n quickInputTitleBackground: (0,_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_9__.asCssVariable)(_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_9__.quickInputTitleBackground),\n widgetBorder: (0,_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_9__.asCssVariable)(_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_9__.widgetBorder),\n widgetShadow: (0,_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_9__.asCssVariable)(_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_9__.widgetShadow),\n },\n inputBox: _theme_browser_defaultStyles_js__WEBPACK_IMPORTED_MODULE_8__.defaultInputBoxStyles,\n toggle: _theme_browser_defaultStyles_js__WEBPACK_IMPORTED_MODULE_8__.defaultToggleStyles,\n countBadge: _theme_browser_defaultStyles_js__WEBPACK_IMPORTED_MODULE_8__.defaultCountBadgeStyles,\n button: _theme_browser_defaultStyles_js__WEBPACK_IMPORTED_MODULE_8__.defaultButtonStyles,\n progressBar: _theme_browser_defaultStyles_js__WEBPACK_IMPORTED_MODULE_8__.defaultProgressBarStyles,\n keybindingLabel: _theme_browser_defaultStyles_js__WEBPACK_IMPORTED_MODULE_8__.defaultKeybindingLabelStyles,\n list: (0,_theme_browser_defaultStyles_js__WEBPACK_IMPORTED_MODULE_8__.getListStyles)({\n listBackground: _theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_9__.quickInputBackground,\n listFocusBackground: _theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_9__.quickInputListFocusBackground,\n listFocusForeground: _theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_9__.quickInputListFocusForeground,\n // Look like focused when inactive.\n listInactiveFocusForeground: _theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_9__.quickInputListFocusForeground,\n listInactiveSelectionIconForeground: _theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_9__.quickInputListFocusIconForeground,\n listInactiveFocusBackground: _theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_9__.quickInputListFocusBackground,\n listFocusOutline: _theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_9__.activeContrastBorder,\n listInactiveFocusOutline: _theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_9__.activeContrastBorder,\n }),\n pickerGroup: {\n pickerGroupBorder: (0,_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_9__.asCssVariable)(_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_9__.pickerGroupBorder),\n pickerGroupForeground: (0,_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_9__.asCssVariable)(_theme_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_9__.pickerGroupForeground),\n }\n };\n }\n};\nQuickInputService = __decorate([\n __param(0, _instantiation_common_instantiation_js__WEBPACK_IMPORTED_MODULE_3__.IInstantiationService),\n __param(1, _contextkey_common_contextkey_js__WEBPACK_IMPORTED_MODULE_2__.IContextKeyService),\n __param(2, _theme_common_themeService_js__WEBPACK_IMPORTED_MODULE_10__.IThemeService),\n __param(3, _layout_browser_layoutService_js__WEBPACK_IMPORTED_MODULE_4__.ILayoutService),\n __param(4, _configuration_common_configuration_js__WEBPACK_IMPORTED_MODULE_13__.IConfigurationService)\n], QuickInputService);\n\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/platform/quickinput/browser/quickInputService.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/platform/quickinput/browser/quickInputUtils.js":
/*!******************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/platform/quickinput/browser/quickInputUtils.js ***!
\******************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ quickInputButtonToAction: () => (/* binding */ quickInputButtonToAction),\n/* harmony export */ renderQuickInputDescription: () => (/* binding */ renderQuickInputDescription)\n/* harmony export */ });\n/* harmony import */ var _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../base/browser/dom.js */ \"./node_modules/monaco-editor/esm/vs/base/browser/dom.js\");\n/* harmony import */ var _base_browser_event_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../base/browser/event.js */ \"./node_modules/monaco-editor/esm/vs/base/browser/event.js\");\n/* harmony import */ var _base_common_event_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../base/common/event.js */ \"./node_modules/monaco-editor/esm/vs/base/common/event.js\");\n/* harmony import */ var _base_browser_keyboardEvent_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../../base/browser/keyboardEvent.js */ \"./node_modules/monaco-editor/esm/vs/base/browser/keyboardEvent.js\");\n/* harmony import */ var _base_browser_touch_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../../base/browser/touch.js */ \"./node_modules/monaco-editor/esm/vs/base/browser/touch.js\");\n/* harmony import */ var _base_browser_ui_iconLabel_iconLabels_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../../../base/browser/ui/iconLabel/iconLabels.js */ \"./node_modules/monaco-editor/esm/vs/base/browser/ui/iconLabel/iconLabels.js\");\n/* harmony import */ var _base_common_idGenerator_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../../../base/common/idGenerator.js */ \"./node_modules/monaco-editor/esm/vs/base/common/idGenerator.js\");\n/* harmony import */ var _base_common_linkedText_js__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ../../../base/common/linkedText.js */ \"./node_modules/monaco-editor/esm/vs/base/common/linkedText.js\");\n/* harmony import */ var _media_quickInput_css__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ./media/quickInput.css */ \"./node_modules/monaco-editor/esm/vs/platform/quickinput/browser/media/quickInput.css\");\n/* harmony import */ var _nls_js__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ../../../nls.js */ \"./node_modules/monaco-editor/esm/vs/nls.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n\n\n\n\n\n\n\n\n\nconst iconPathToClass = {};\nconst iconClassGenerator = new _base_common_idGenerator_js__WEBPACK_IMPORTED_MODULE_6__.IdGenerator('quick-input-button-icon-');\nfunction getIconClass(iconPath) {\n if (!iconPath) {\n return undefined;\n }\n let iconClass;\n const key = iconPath.dark.toString();\n if (iconPathToClass[key]) {\n iconClass = iconPathToClass[key];\n }\n else {\n iconClass = iconClassGenerator.nextId();\n _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.createCSSRule(`.${iconClass}, .hc-light .${iconClass}`, `background-image: ${_base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.asCSSUrl(iconPath.light || iconPath.dark)}`);\n _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.createCSSRule(`.vs-dark .${iconClass}, .hc-black .${iconClass}`, `background-image: ${_base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.asCSSUrl(iconPath.dark)}`);\n iconPathToClass[key] = iconClass;\n }\n return iconClass;\n}\nfunction quickInputButtonToAction(button, id, run) {\n let cssClasses = button.iconClass || getIconClass(button.iconPath);\n if (button.alwaysVisible) {\n cssClasses = cssClasses ? `${cssClasses} always-visible` : 'always-visible';\n }\n return {\n id,\n label: '',\n tooltip: button.tooltip || '',\n class: cssClasses,\n enabled: true,\n run\n };\n}\nfunction renderQuickInputDescription(description, container, actionHandler) {\n _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.reset(container);\n const parsed = (0,_base_common_linkedText_js__WEBPACK_IMPORTED_MODULE_7__.parseLinkedText)(description);\n let tabIndex = 0;\n for (const node of parsed.nodes) {\n if (typeof node === 'string') {\n container.append(...(0,_base_browser_ui_iconLabel_iconLabels_js__WEBPACK_IMPORTED_MODULE_5__.renderLabelWithIcons)(node));\n }\n else {\n let title = node.title;\n if (!title && node.href.startsWith('command:')) {\n title = (0,_nls_js__WEBPACK_IMPORTED_MODULE_9__.localize)('executeCommand', \"Click to execute command '{0}'\", node.href.substring('command:'.length));\n }\n else if (!title) {\n title = node.href;\n }\n const anchor = _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.$('a', { href: node.href, title, tabIndex: tabIndex++ }, node.label);\n anchor.style.textDecoration = 'underline';\n const handleOpen = (e) => {\n if (_base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.isEventLike(e)) {\n _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.EventHelper.stop(e, true);\n }\n actionHandler.callback(node.href);\n };\n const onClick = actionHandler.disposables.add(new _base_browser_event_js__WEBPACK_IMPORTED_MODULE_1__.DomEmitter(anchor, _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.EventType.CLICK)).event;\n const onKeydown = actionHandler.disposables.add(new _base_browser_event_js__WEBPACK_IMPORTED_MODULE_1__.DomEmitter(anchor, _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.EventType.KEY_DOWN)).event;\n const onSpaceOrEnter = _base_common_event_js__WEBPACK_IMPORTED_MODULE_2__.Event.chain(onKeydown, $ => $.filter(e => {\n const event = new _base_browser_keyboardEvent_js__WEBPACK_IMPORTED_MODULE_3__.StandardKeyboardEvent(e);\n return event.equals(10 /* KeyCode.Space */) || event.equals(3 /* KeyCode.Enter */);\n }));\n actionHandler.disposables.add(_base_browser_touch_js__WEBPACK_IMPORTED_MODULE_4__.Gesture.addTarget(anchor));\n const onTap = actionHandler.disposables.add(new _base_browser_event_js__WEBPACK_IMPORTED_MODULE_1__.DomEmitter(anchor, _base_browser_touch_js__WEBPACK_IMPORTED_MODULE_4__.EventType.Tap)).event;\n _base_common_event_js__WEBPACK_IMPORTED_MODULE_2__.Event.any(onClick, onTap, onSpaceOrEnter)(handleOpen, null, actionHandler.disposables);\n container.appendChild(anchor);\n }\n }\n}\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/platform/quickinput/browser/quickInputUtils.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/platform/quickinput/common/quickAccess.js":
/*!*************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/platform/quickinput/common/quickAccess.js ***!
\*************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ DefaultQuickAccessFilterValue: () => (/* binding */ DefaultQuickAccessFilterValue),\n/* harmony export */ Extensions: () => (/* binding */ Extensions),\n/* harmony export */ QuickAccessRegistry: () => (/* binding */ QuickAccessRegistry)\n/* harmony export */ });\n/* harmony import */ var _base_common_arrays_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../base/common/arrays.js */ \"./node_modules/monaco-editor/esm/vs/base/common/arrays.js\");\n/* harmony import */ var _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../base/common/lifecycle.js */ \"./node_modules/monaco-editor/esm/vs/base/common/lifecycle.js\");\n/* harmony import */ var _registry_common_platform_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../registry/common/platform.js */ \"./node_modules/monaco-editor/esm/vs/platform/registry/common/platform.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n\n\nvar DefaultQuickAccessFilterValue;\n(function (DefaultQuickAccessFilterValue) {\n /**\n * Keep the value as it is given to quick access.\n */\n DefaultQuickAccessFilterValue[DefaultQuickAccessFilterValue[\"PRESERVE\"] = 0] = \"PRESERVE\";\n /**\n * Use the value that was used last time something was accepted from the picker.\n */\n DefaultQuickAccessFilterValue[DefaultQuickAccessFilterValue[\"LAST\"] = 1] = \"LAST\";\n})(DefaultQuickAccessFilterValue || (DefaultQuickAccessFilterValue = {}));\nconst Extensions = {\n Quickaccess: 'workbench.contributions.quickaccess'\n};\nclass QuickAccessRegistry {\n constructor() {\n this.providers = [];\n this.defaultProvider = undefined;\n }\n registerQuickAccessProvider(provider) {\n // Extract the default provider when no prefix is present\n if (provider.prefix.length === 0) {\n this.defaultProvider = provider;\n }\n else {\n this.providers.push(provider);\n }\n // sort the providers by decreasing prefix length, such that longer\n // prefixes take priority: 'ext' vs 'ext install' - the latter should win\n this.providers.sort((providerA, providerB) => providerB.prefix.length - providerA.prefix.length);\n return (0,_base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_1__.toDisposable)(() => {\n this.providers.splice(this.providers.indexOf(provider), 1);\n if (this.defaultProvider === provider) {\n this.defaultProvider = undefined;\n }\n });\n }\n getQuickAccessProviders() {\n return (0,_base_common_arrays_js__WEBPACK_IMPORTED_MODULE_0__.coalesce)([this.defaultProvider, ...this.providers]);\n }\n getQuickAccessProvider(prefix) {\n const result = prefix ? (this.providers.find(provider => prefix.startsWith(provider.prefix)) || undefined) : undefined;\n return result || this.defaultProvider;\n }\n}\n_registry_common_platform_js__WEBPACK_IMPORTED_MODULE_2__.Registry.add(Extensions.Quickaccess, new QuickAccessRegistry());\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/platform/quickinput/common/quickAccess.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/platform/quickinput/common/quickInput.js":
/*!************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/platform/quickinput/common/quickInput.js ***!
\************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ IQuickInputService: () => (/* binding */ IQuickInputService),\n/* harmony export */ ItemActivation: () => (/* binding */ ItemActivation),\n/* harmony export */ NO_KEY_MODS: () => (/* binding */ NO_KEY_MODS),\n/* harmony export */ QuickInputHideReason: () => (/* binding */ QuickInputHideReason),\n/* harmony export */ QuickPickItemScorerAccessor: () => (/* binding */ QuickPickItemScorerAccessor),\n/* harmony export */ quickPickItemScorerAccessor: () => (/* binding */ quickPickItemScorerAccessor)\n/* harmony export */ });\n/* harmony import */ var _instantiation_common_instantiation_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../instantiation/common/instantiation.js */ \"./node_modules/monaco-editor/esm/vs/platform/instantiation/common/instantiation.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\nconst NO_KEY_MODS = { ctrlCmd: false, alt: false };\nvar QuickInputHideReason;\n(function (QuickInputHideReason) {\n /**\n * Focus moved away from the quick input.\n */\n QuickInputHideReason[QuickInputHideReason[\"Blur\"] = 1] = \"Blur\";\n /**\n * An explicit user gesture, e.g. pressing Escape key.\n */\n QuickInputHideReason[QuickInputHideReason[\"Gesture\"] = 2] = \"Gesture\";\n /**\n * Anything else.\n */\n QuickInputHideReason[QuickInputHideReason[\"Other\"] = 3] = \"Other\";\n})(QuickInputHideReason || (QuickInputHideReason = {}));\n/**\n * Represents the activation behavior for items in a quick input. This means which item will be\n * \"active\" (aka focused).\n */\nvar ItemActivation;\n(function (ItemActivation) {\n /**\n * No item will be active.\n */\n ItemActivation[ItemActivation[\"NONE\"] = 0] = \"NONE\";\n /**\n * First item will be active.\n */\n ItemActivation[ItemActivation[\"FIRST\"] = 1] = \"FIRST\";\n /**\n * Second item will be active.\n */\n ItemActivation[ItemActivation[\"SECOND\"] = 2] = \"SECOND\";\n /**\n * Last item will be active.\n */\n ItemActivation[ItemActivation[\"LAST\"] = 3] = \"LAST\";\n})(ItemActivation || (ItemActivation = {}));\nclass QuickPickItemScorerAccessor {\n constructor(options) {\n this.options = options;\n }\n}\nconst quickPickItemScorerAccessor = new QuickPickItemScorerAccessor();\n//#endregion\nconst IQuickInputService = (0,_instantiation_common_instantiation_js__WEBPACK_IMPORTED_MODULE_0__.createDecorator)('quickInputService');\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/platform/quickinput/common/quickInput.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/platform/registry/common/platform.js":
/*!********************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/platform/registry/common/platform.js ***!
\********************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ Registry: () => (/* binding */ Registry)\n/* harmony export */ });\n/* harmony import */ var _base_common_assert_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../base/common/assert.js */ \"./node_modules/monaco-editor/esm/vs/base/common/assert.js\");\n/* harmony import */ var _base_common_types_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../base/common/types.js */ \"./node_modules/monaco-editor/esm/vs/base/common/types.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n\nclass RegistryImpl {\n constructor() {\n this.data = new Map();\n }\n add(id, data) {\n _base_common_assert_js__WEBPACK_IMPORTED_MODULE_0__.ok(_base_common_types_js__WEBPACK_IMPORTED_MODULE_1__.isString(id));\n _base_common_assert_js__WEBPACK_IMPORTED_MODULE_0__.ok(_base_common_types_js__WEBPACK_IMPORTED_MODULE_1__.isObject(data));\n _base_common_assert_js__WEBPACK_IMPORTED_MODULE_0__.ok(!this.data.has(id), 'There is already an extension with this id');\n this.data.set(id, data);\n }\n as(id) {\n return this.data.get(id) || null;\n }\n}\nconst Registry = new RegistryImpl();\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/platform/registry/common/platform.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/platform/severityIcon/browser/severityIcon.js":
/*!*****************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/platform/severityIcon/browser/severityIcon.js ***!
\*****************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ SeverityIcon: () => (/* binding */ SeverityIcon)\n/* harmony export */ });\n/* harmony import */ var _media_severityIcon_css__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./media/severityIcon.css */ \"./node_modules/monaco-editor/esm/vs/platform/severityIcon/browser/media/severityIcon.css\");\n/* harmony import */ var _base_common_codicons_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../base/common/codicons.js */ \"./node_modules/monaco-editor/esm/vs/base/common/codicons.js\");\n/* harmony import */ var _base_common_themables_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../base/common/themables.js */ \"./node_modules/monaco-editor/esm/vs/base/common/themables.js\");\n/* harmony import */ var _base_common_severity_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../../base/common/severity.js */ \"./node_modules/monaco-editor/esm/vs/base/common/severity.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n\n\n\nvar SeverityIcon;\n(function (SeverityIcon) {\n function className(severity) {\n switch (severity) {\n case _base_common_severity_js__WEBPACK_IMPORTED_MODULE_3__[\"default\"].Ignore:\n return 'severity-ignore ' + _base_common_themables_js__WEBPACK_IMPORTED_MODULE_2__.ThemeIcon.asClassName(_base_common_codicons_js__WEBPACK_IMPORTED_MODULE_1__.Codicon.info);\n case _base_common_severity_js__WEBPACK_IMPORTED_MODULE_3__[\"default\"].Info:\n return _base_common_themables_js__WEBPACK_IMPORTED_MODULE_2__.ThemeIcon.asClassName(_base_common_codicons_js__WEBPACK_IMPORTED_MODULE_1__.Codicon.info);\n case _base_common_severity_js__WEBPACK_IMPORTED_MODULE_3__[\"default\"].Warning:\n return _base_common_themables_js__WEBPACK_IMPORTED_MODULE_2__.ThemeIcon.asClassName(_base_common_codicons_js__WEBPACK_IMPORTED_MODULE_1__.Codicon.warning);\n case _base_common_severity_js__WEBPACK_IMPORTED_MODULE_3__[\"default\"].Error:\n return _base_common_themables_js__WEBPACK_IMPORTED_MODULE_2__.ThemeIcon.asClassName(_base_common_codicons_js__WEBPACK_IMPORTED_MODULE_1__.Codicon.error);\n default:\n return '';\n }\n }\n SeverityIcon.className = className;\n})(SeverityIcon || (SeverityIcon = {}));\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/platform/severityIcon/browser/severityIcon.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/platform/storage/common/storage.js":
/*!******************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/platform/storage/common/storage.js ***!
\******************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ AbstractStorageService: () => (/* binding */ AbstractStorageService),\n/* harmony export */ IStorageService: () => (/* binding */ IStorageService),\n/* harmony export */ InMemoryStorageService: () => (/* binding */ InMemoryStorageService),\n/* harmony export */ TARGET_KEY: () => (/* binding */ TARGET_KEY),\n/* harmony export */ WillSaveStateReason: () => (/* binding */ WillSaveStateReason),\n/* harmony export */ loadKeyTargets: () => (/* binding */ loadKeyTargets)\n/* harmony export */ });\n/* harmony import */ var _base_common_event_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../base/common/event.js */ \"./node_modules/monaco-editor/esm/vs/base/common/event.js\");\n/* harmony import */ var _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../base/common/lifecycle.js */ \"./node_modules/monaco-editor/esm/vs/base/common/lifecycle.js\");\n/* harmony import */ var _base_common_types_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../base/common/types.js */ \"./node_modules/monaco-editor/esm/vs/base/common/types.js\");\n/* harmony import */ var _base_parts_storage_common_storage_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../../base/parts/storage/common/storage.js */ \"./node_modules/monaco-editor/esm/vs/base/parts/storage/common/storage.js\");\n/* harmony import */ var _instantiation_common_instantiation_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../instantiation/common/instantiation.js */ \"./node_modules/monaco-editor/esm/vs/platform/instantiation/common/instantiation.js\");\n\n\n\n\n\nconst TARGET_KEY = '__$__targetStorageMarker';\nconst IStorageService = (0,_instantiation_common_instantiation_js__WEBPACK_IMPORTED_MODULE_4__.createDecorator)('storageService');\nvar WillSaveStateReason;\n(function (WillSaveStateReason) {\n /**\n * No specific reason to save state.\n */\n WillSaveStateReason[WillSaveStateReason[\"NONE\"] = 0] = \"NONE\";\n /**\n * A hint that the workbench is about to shutdown.\n */\n WillSaveStateReason[WillSaveStateReason[\"SHUTDOWN\"] = 1] = \"SHUTDOWN\";\n})(WillSaveStateReason || (WillSaveStateReason = {}));\nfunction loadKeyTargets(storage) {\n const keysRaw = storage.get(TARGET_KEY);\n if (keysRaw) {\n try {\n return JSON.parse(keysRaw);\n }\n catch (error) {\n // Fail gracefully\n }\n }\n return Object.create(null);\n}\nclass AbstractStorageService extends _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_1__.Disposable {\n constructor(options = { flushInterval: AbstractStorageService.DEFAULT_FLUSH_INTERVAL }) {\n super();\n this.options = options;\n this._onDidChangeValue = this._register(new _base_common_event_js__WEBPACK_IMPORTED_MODULE_0__.PauseableEmitter());\n this._onDidChangeTarget = this._register(new _base_common_event_js__WEBPACK_IMPORTED_MODULE_0__.PauseableEmitter());\n this._onWillSaveState = this._register(new _base_common_event_js__WEBPACK_IMPORTED_MODULE_0__.Emitter());\n this.onWillSaveState = this._onWillSaveState.event;\n this._workspaceKeyTargets = undefined;\n this._profileKeyTargets = undefined;\n this._applicationKeyTargets = undefined;\n }\n onDidChangeValue(scope, key, disposable) {\n return _base_common_event_js__WEBPACK_IMPORTED_MODULE_0__.Event.filter(this._onDidChangeValue.event, e => e.scope === scope && (key === undefined || e.key === key), disposable);\n }\n emitDidChangeValue(scope, event) {\n const { key, external } = event;\n // Specially handle `TARGET_KEY`\n if (key === TARGET_KEY) {\n // Clear our cached version which is now out of date\n switch (scope) {\n case -1 /* StorageScope.APPLICATION */:\n this._applicationKeyTargets = undefined;\n break;\n case 0 /* StorageScope.PROFILE */:\n this._profileKeyTargets = undefined;\n break;\n case 1 /* StorageScope.WORKSPACE */:\n this._workspaceKeyTargets = undefined;\n break;\n }\n // Emit as `didChangeTarget` event\n this._onDidChangeTarget.fire({ scope });\n }\n // Emit any other key to outside\n else {\n this._onDidChangeValue.fire({ scope, key, target: this.getKeyTargets(scope)[key], external });\n }\n }\n get(key, scope, fallbackValue) {\n var _a;\n return (_a = this.getStorage(scope)) === null || _a === void 0 ? void 0 : _a.get(key, fallbackValue);\n }\n getBoolean(key, scope, fallbackValue) {\n var _a;\n return (_a = this.getStorage(scope)) === null || _a === void 0 ? void 0 : _a.getBoolean(key, fallbackValue);\n }\n getNumber(key, scope, fallbackValue) {\n var _a;\n return (_a = this.getStorage(scope)) === null || _a === void 0 ? void 0 : _a.getNumber(key, fallbackValue);\n }\n store(key, value, scope, target, external = false) {\n // We remove the key for undefined/null values\n if ((0,_base_common_types_js__WEBPACK_IMPORTED_MODULE_2__.isUndefinedOrNull)(value)) {\n this.remove(key, scope, external);\n return;\n }\n // Update our datastructures but send events only after\n this.withPausedEmitters(() => {\n var _a;\n // Update key-target map\n this.updateKeyTarget(key, scope, target);\n // Store actual value\n (_a = this.getStorage(scope)) === null || _a === void 0 ? void 0 : _a.set(key, value, external);\n });\n }\n remove(key, scope, external = false) {\n // Update our datastructures but send events only after\n this.withPausedEmitters(() => {\n var _a;\n // Update key-target map\n this.updateKeyTarget(key, scope, undefined);\n // Remove actual key\n (_a = this.getStorage(scope)) === null || _a === void 0 ? void 0 : _a.delete(key, external);\n });\n }\n withPausedEmitters(fn) {\n // Pause emitters\n this._onDidChangeValue.pause();\n this._onDidChangeTarget.pause();\n try {\n fn();\n }\n finally {\n // Resume emitters\n this._onDidChangeValue.resume();\n this._onDidChangeTarget.resume();\n }\n }\n updateKeyTarget(key, scope, target, external = false) {\n var _a, _b;\n // Add\n const keyTargets = this.getKeyTargets(scope);\n if (typeof target === 'number') {\n if (keyTargets[key] !== target) {\n keyTargets[key] = target;\n (_a = this.getStorage(scope)) === null || _a === void 0 ? void 0 : _a.set(TARGET_KEY, JSON.stringify(keyTargets), external);\n }\n }\n // Remove\n else {\n if (typeof keyTargets[key] === 'number') {\n delete keyTargets[key];\n (_b = this.getStorage(scope)) === null || _b === void 0 ? void 0 : _b.set(TARGET_KEY, JSON.stringify(keyTargets), external);\n }\n }\n }\n get workspaceKeyTargets() {\n if (!this._workspaceKeyTargets) {\n this._workspaceKeyTargets = this.loadKeyTargets(1 /* StorageScope.WORKSPACE */);\n }\n return this._workspaceKeyTargets;\n }\n get profileKeyTargets() {\n if (!this._profileKeyTargets) {\n this._profileKeyTargets = this.loadKeyTargets(0 /* StorageScope.PROFILE */);\n }\n return this._profileKeyTargets;\n }\n get applicationKeyTargets() {\n if (!this._applicationKeyTargets) {\n this._applicationKeyTargets = this.loadKeyTargets(-1 /* StorageScope.APPLICATION */);\n }\n return this._applicationKeyTargets;\n }\n getKeyTargets(scope) {\n switch (scope) {\n case -1 /* StorageScope.APPLICATION */:\n return this.applicationKeyTargets;\n case 0 /* StorageScope.PROFILE */:\n return this.profileKeyTargets;\n default:\n return this.workspaceKeyTargets;\n }\n }\n loadKeyTargets(scope) {\n const storage = this.getStorage(scope);\n return storage ? loadKeyTargets(storage) : Object.create(null);\n }\n}\nAbstractStorageService.DEFAULT_FLUSH_INTERVAL = 60 * 1000; // every minute\nclass InMemoryStorageService extends AbstractStorageService {\n constructor() {\n super();\n this.applicationStorage = this._register(new _base_parts_storage_common_storage_js__WEBPACK_IMPORTED_MODULE_3__.Storage(new _base_parts_storage_common_storage_js__WEBPACK_IMPORTED_MODULE_3__.InMemoryStorageDatabase(), { hint: _base_parts_storage_common_storage_js__WEBPACK_IMPORTED_MODULE_3__.StorageHint.STORAGE_IN_MEMORY }));\n this.profileStorage = this._register(new _base_parts_storage_common_storage_js__WEBPACK_IMPORTED_MODULE_3__.Storage(new _base_parts_storage_common_storage_js__WEBPACK_IMPORTED_MODULE_3__.InMemoryStorageDatabase(), { hint: _base_parts_storage_common_storage_js__WEBPACK_IMPORTED_MODULE_3__.StorageHint.STORAGE_IN_MEMORY }));\n this.workspaceStorage = this._register(new _base_parts_storage_common_storage_js__WEBPACK_IMPORTED_MODULE_3__.Storage(new _base_parts_storage_common_storage_js__WEBPACK_IMPORTED_MODULE_3__.InMemoryStorageDatabase(), { hint: _base_parts_storage_common_storage_js__WEBPACK_IMPORTED_MODULE_3__.StorageHint.STORAGE_IN_MEMORY }));\n this._register(this.workspaceStorage.onDidChangeStorage(e => this.emitDidChangeValue(1 /* StorageScope.WORKSPACE */, e)));\n this._register(this.profileStorage.onDidChangeStorage(e => this.emitDidChangeValue(0 /* StorageScope.PROFILE */, e)));\n this._register(this.applicationStorage.onDidChangeStorage(e => this.emitDidChangeValue(-1 /* StorageScope.APPLICATION */, e)));\n }\n getStorage(scope) {\n switch (scope) {\n case -1 /* StorageScope.APPLICATION */:\n return this.applicationStorage;\n case 0 /* StorageScope.PROFILE */:\n return this.profileStorage;\n default:\n return this.workspaceStorage;\n }\n }\n}\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/platform/storage/common/storage.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/platform/telemetry/common/telemetry.js":
/*!**********************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/platform/telemetry/common/telemetry.js ***!
\**********************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ ITelemetryService: () => (/* binding */ ITelemetryService)\n/* harmony export */ });\n/* harmony import */ var _instantiation_common_instantiation_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../instantiation/common/instantiation.js */ \"./node_modules/monaco-editor/esm/vs/platform/instantiation/common/instantiation.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\nconst ITelemetryService = (0,_instantiation_common_instantiation_js__WEBPACK_IMPORTED_MODULE_0__.createDecorator)('telemetryService');\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/platform/telemetry/common/telemetry.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/platform/theme/browser/defaultStyles.js":
/*!***********************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/platform/theme/browser/defaultStyles.js ***!
\***********************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ defaultBreadcrumbsWidgetStyles: () => (/* binding */ defaultBreadcrumbsWidgetStyles),\n/* harmony export */ defaultButtonStyles: () => (/* binding */ defaultButtonStyles),\n/* harmony export */ defaultCheckboxStyles: () => (/* binding */ defaultCheckboxStyles),\n/* harmony export */ defaultCountBadgeStyles: () => (/* binding */ defaultCountBadgeStyles),\n/* harmony export */ defaultDialogStyles: () => (/* binding */ defaultDialogStyles),\n/* harmony export */ defaultFindWidgetStyles: () => (/* binding */ defaultFindWidgetStyles),\n/* harmony export */ defaultInputBoxStyles: () => (/* binding */ defaultInputBoxStyles),\n/* harmony export */ defaultKeybindingLabelStyles: () => (/* binding */ defaultKeybindingLabelStyles),\n/* harmony export */ defaultListStyles: () => (/* binding */ defaultListStyles),\n/* harmony export */ defaultMenuStyles: () => (/* binding */ defaultMenuStyles),\n/* harmony export */ defaultProgressBarStyles: () => (/* binding */ defaultProgressBarStyles),\n/* harmony export */ defaultSelectBoxStyles: () => (/* binding */ defaultSelectBoxStyles),\n/* harmony export */ defaultToggleStyles: () => (/* binding */ defaultToggleStyles),\n/* harmony export */ getListStyles: () => (/* binding */ getListStyles)\n/* harmony export */ });\n/* harmony import */ var _common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../common/colorRegistry.js */ \"./node_modules/monaco-editor/esm/vs/platform/theme/common/colorRegistry.js\");\n/* harmony import */ var _base_common_color_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../base/common/color.js */ \"./node_modules/monaco-editor/esm/vs/base/common/color.js\");\n\n\nfunction overrideStyles(override, styles) {\n const result = { ...styles };\n for (const key in override) {\n const val = override[key];\n result[key] = val !== undefined ? (0,_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_0__.asCssVariable)(val) : undefined;\n }\n return result;\n}\nconst defaultKeybindingLabelStyles = {\n keybindingLabelBackground: (0,_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_0__.asCssVariable)(_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_0__.keybindingLabelBackground),\n keybindingLabelForeground: (0,_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_0__.asCssVariable)(_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_0__.keybindingLabelForeground),\n keybindingLabelBorder: (0,_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_0__.asCssVariable)(_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_0__.keybindingLabelBorder),\n keybindingLabelBottomBorder: (0,_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_0__.asCssVariable)(_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_0__.keybindingLabelBottomBorder),\n keybindingLabelShadow: (0,_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_0__.asCssVariable)(_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_0__.widgetShadow)\n};\nconst defaultButtonStyles = {\n buttonForeground: (0,_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_0__.asCssVariable)(_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_0__.buttonForeground),\n buttonSeparator: (0,_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_0__.asCssVariable)(_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_0__.buttonSeparator),\n buttonBackground: (0,_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_0__.asCssVariable)(_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_0__.buttonBackground),\n buttonHoverBackground: (0,_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_0__.asCssVariable)(_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_0__.buttonHoverBackground),\n buttonSecondaryForeground: (0,_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_0__.asCssVariable)(_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_0__.buttonSecondaryForeground),\n buttonSecondaryBackground: (0,_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_0__.asCssVariable)(_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_0__.buttonSecondaryBackground),\n buttonSecondaryHoverBackground: (0,_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_0__.asCssVariable)(_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_0__.buttonSecondaryHoverBackground),\n buttonBorder: (0,_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_0__.asCssVariable)(_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_0__.buttonBorder),\n};\nconst defaultProgressBarStyles = {\n progressBarBackground: (0,_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_0__.asCssVariable)(_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_0__.progressBarBackground)\n};\nconst defaultToggleStyles = {\n inputActiveOptionBorder: (0,_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_0__.asCssVariable)(_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_0__.inputActiveOptionBorder),\n inputActiveOptionForeground: (0,_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_0__.asCssVariable)(_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_0__.inputActiveOptionForeground),\n inputActiveOptionBackground: (0,_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_0__.asCssVariable)(_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_0__.inputActiveOptionBackground)\n};\nconst defaultCheckboxStyles = {\n checkboxBackground: (0,_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_0__.asCssVariable)(_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_0__.checkboxBackground),\n checkboxBorder: (0,_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_0__.asCssVariable)(_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_0__.checkboxBorder),\n checkboxForeground: (0,_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_0__.asCssVariable)(_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_0__.checkboxForeground)\n};\nconst defaultDialogStyles = {\n dialogBackground: (0,_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_0__.asCssVariable)(_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_0__.editorWidgetBackground),\n dialogForeground: (0,_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_0__.asCssVariable)(_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_0__.editorWidgetForeground),\n dialogShadow: (0,_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_0__.asCssVariable)(_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_0__.widgetShadow),\n dialogBorder: (0,_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_0__.asCssVariable)(_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_0__.contrastBorder),\n errorIconForeground: (0,_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_0__.asCssVariable)(_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_0__.problemsErrorIconForeground),\n warningIconForeground: (0,_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_0__.asCssVariable)(_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_0__.problemsWarningIconForeground),\n infoIconForeground: (0,_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_0__.asCssVariable)(_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_0__.problemsInfoIconForeground),\n textLinkForeground: (0,_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_0__.asCssVariable)(_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_0__.textLinkForeground)\n};\nconst defaultInputBoxStyles = {\n inputBackground: (0,_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_0__.asCssVariable)(_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_0__.inputBackground),\n inputForeground: (0,_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_0__.asCssVariable)(_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_0__.inputForeground),\n inputBorder: (0,_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_0__.asCssVariable)(_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_0__.inputBorder),\n inputValidationInfoBorder: (0,_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_0__.asCssVariable)(_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_0__.inputValidationInfoBorder),\n inputValidationInfoBackground: (0,_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_0__.asCssVariable)(_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_0__.inputValidationInfoBackground),\n inputValidationInfoForeground: (0,_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_0__.asCssVariable)(_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_0__.inputValidationInfoForeground),\n inputValidationWarningBorder: (0,_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_0__.asCssVariable)(_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_0__.inputValidationWarningBorder),\n inputValidationWarningBackground: (0,_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_0__.asCssVariable)(_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_0__.inputValidationWarningBackground),\n inputValidationWarningForeground: (0,_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_0__.asCssVariable)(_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_0__.inputValidationWarningForeground),\n inputValidationErrorBorder: (0,_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_0__.asCssVariable)(_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_0__.inputValidationErrorBorder),\n inputValidationErrorBackground: (0,_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_0__.asCssVariable)(_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_0__.inputValidationErrorBackground),\n inputValidationErrorForeground: (0,_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_0__.asCssVariable)(_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_0__.inputValidationErrorForeground)\n};\nconst defaultFindWidgetStyles = {\n listFilterWidgetBackground: (0,_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_0__.asCssVariable)(_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_0__.listFilterWidgetBackground),\n listFilterWidgetOutline: (0,_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_0__.asCssVariable)(_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_0__.listFilterWidgetOutline),\n listFilterWidgetNoMatchesOutline: (0,_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_0__.asCssVariable)(_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_0__.listFilterWidgetNoMatchesOutline),\n listFilterWidgetShadow: (0,_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_0__.asCssVariable)(_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_0__.listFilterWidgetShadow),\n inputBoxStyles: defaultInputBoxStyles,\n toggleStyles: defaultToggleStyles\n};\nconst defaultCountBadgeStyles = {\n badgeBackground: (0,_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_0__.asCssVariable)(_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_0__.badgeBackground),\n badgeForeground: (0,_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_0__.asCssVariable)(_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_0__.badgeForeground),\n badgeBorder: (0,_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_0__.asCssVariable)(_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_0__.contrastBorder)\n};\nconst defaultBreadcrumbsWidgetStyles = {\n breadcrumbsBackground: (0,_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_0__.asCssVariable)(_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_0__.breadcrumbsBackground),\n breadcrumbsForeground: (0,_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_0__.asCssVariable)(_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_0__.breadcrumbsForeground),\n breadcrumbsHoverForeground: (0,_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_0__.asCssVariable)(_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_0__.breadcrumbsFocusForeground),\n breadcrumbsFocusForeground: (0,_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_0__.asCssVariable)(_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_0__.breadcrumbsFocusForeground),\n breadcrumbsFocusAndSelectionForeground: (0,_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_0__.asCssVariable)(_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_0__.breadcrumbsActiveSelectionForeground)\n};\nconst defaultListStyles = {\n listBackground: undefined,\n listInactiveFocusForeground: undefined,\n listFocusBackground: (0,_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_0__.asCssVariable)(_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_0__.listFocusBackground),\n listFocusForeground: (0,_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_0__.asCssVariable)(_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_0__.listFocusForeground),\n listFocusOutline: (0,_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_0__.asCssVariable)(_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_0__.listFocusOutline),\n listActiveSelectionBackground: (0,_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_0__.asCssVariable)(_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_0__.listActiveSelectionBackground),\n listActiveSelectionForeground: (0,_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_0__.asCssVariable)(_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_0__.listActiveSelectionForeground),\n listActiveSelectionIconForeground: (0,_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_0__.asCssVariable)(_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_0__.listActiveSelectionIconForeground),\n listFocusAndSelectionOutline: (0,_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_0__.asCssVariable)(_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_0__.listFocusAndSelectionOutline),\n listFocusAndSelectionBackground: (0,_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_0__.asCssVariable)(_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_0__.listActiveSelectionBackground),\n listFocusAndSelectionForeground: (0,_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_0__.asCssVariable)(_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_0__.listActiveSelectionForeground),\n listInactiveSelectionBackground: (0,_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_0__.asCssVariable)(_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_0__.listInactiveSelectionBackground),\n listInactiveSelectionIconForeground: (0,_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_0__.asCssVariable)(_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_0__.listInactiveSelectionIconForeground),\n listInactiveSelectionForeground: (0,_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_0__.asCssVariable)(_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_0__.listInactiveSelectionForeground),\n listInactiveFocusBackground: (0,_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_0__.asCssVariable)(_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_0__.listInactiveFocusBackground),\n listInactiveFocusOutline: (0,_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_0__.asCssVariable)(_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_0__.listInactiveFocusOutline),\n listHoverBackground: (0,_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_0__.asCssVariable)(_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_0__.listHoverBackground),\n listHoverForeground: (0,_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_0__.asCssVariable)(_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_0__.listHoverForeground),\n listDropOverBackground: (0,_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_0__.asCssVariable)(_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_0__.listDropOverBackground),\n listDropBetweenBackground: (0,_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_0__.asCssVariable)(_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_0__.listDropBetweenBackground),\n listSelectionOutline: (0,_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_0__.asCssVariable)(_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_0__.activeContrastBorder),\n listHoverOutline: (0,_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_0__.asCssVariable)(_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_0__.activeContrastBorder),\n treeIndentGuidesStroke: (0,_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_0__.asCssVariable)(_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_0__.treeIndentGuidesStroke),\n treeInactiveIndentGuidesStroke: (0,_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_0__.asCssVariable)(_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_0__.treeInactiveIndentGuidesStroke),\n tableColumnsBorder: (0,_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_0__.asCssVariable)(_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_0__.tableColumnsBorder),\n tableOddRowsBackgroundColor: (0,_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_0__.asCssVariable)(_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_0__.tableOddRowsBackgroundColor),\n};\nfunction getListStyles(override) {\n return overrideStyles(override, defaultListStyles);\n}\nconst defaultSelectBoxStyles = {\n selectBackground: (0,_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_0__.asCssVariable)(_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_0__.selectBackground),\n selectListBackground: (0,_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_0__.asCssVariable)(_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_0__.selectListBackground),\n selectForeground: (0,_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_0__.asCssVariable)(_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_0__.selectForeground),\n decoratorRightForeground: (0,_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_0__.asCssVariable)(_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_0__.pickerGroupForeground),\n selectBorder: (0,_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_0__.asCssVariable)(_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_0__.selectBorder),\n focusBorder: (0,_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_0__.asCssVariable)(_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_0__.focusBorder),\n listFocusBackground: (0,_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_0__.asCssVariable)(_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_0__.quickInputListFocusBackground),\n listInactiveSelectionIconForeground: (0,_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_0__.asCssVariable)(_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_0__.quickInputListFocusIconForeground),\n listFocusForeground: (0,_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_0__.asCssVariable)(_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_0__.quickInputListFocusForeground),\n listFocusOutline: (0,_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_0__.asCssVariableWithDefault)(_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_0__.activeContrastBorder, _base_common_color_js__WEBPACK_IMPORTED_MODULE_1__.Color.transparent.toString()),\n listHoverBackground: (0,_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_0__.asCssVariable)(_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_0__.listHoverBackground),\n listHoverForeground: (0,_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_0__.asCssVariable)(_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_0__.listHoverForeground),\n listHoverOutline: (0,_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_0__.asCssVariable)(_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_0__.activeContrastBorder),\n selectListBorder: (0,_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_0__.asCssVariable)(_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_0__.editorWidgetBorder),\n listBackground: undefined,\n listActiveSelectionBackground: undefined,\n listActiveSelectionForeground: undefined,\n listActiveSelectionIconForeground: undefined,\n listFocusAndSelectionBackground: undefined,\n listDropOverBackground: undefined,\n listDropBetweenBackground: undefined,\n listInactiveSelectionBackground: undefined,\n listInactiveSelectionForeground: undefined,\n listInactiveFocusBackground: undefined,\n listInactiveFocusOutline: undefined,\n listSelectionOutline: undefined,\n listFocusAndSelectionForeground: undefined,\n listFocusAndSelectionOutline: undefined,\n listInactiveFocusForeground: undefined,\n tableColumnsBorder: undefined,\n tableOddRowsBackgroundColor: undefined,\n treeIndentGuidesStroke: undefined,\n treeInactiveIndentGuidesStroke: undefined,\n};\nconst defaultMenuStyles = {\n shadowColor: (0,_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_0__.asCssVariable)(_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_0__.widgetShadow),\n borderColor: (0,_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_0__.asCssVariable)(_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_0__.menuBorder),\n foregroundColor: (0,_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_0__.asCssVariable)(_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_0__.menuForeground),\n backgroundColor: (0,_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_0__.asCssVariable)(_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_0__.menuBackground),\n selectionForegroundColor: (0,_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_0__.asCssVariable)(_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_0__.menuSelectionForeground),\n selectionBackgroundColor: (0,_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_0__.asCssVariable)(_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_0__.menuSelectionBackground),\n selectionBorderColor: (0,_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_0__.asCssVariable)(_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_0__.menuSelectionBorder),\n separatorColor: (0,_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_0__.asCssVariable)(_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_0__.menuSeparatorBackground),\n scrollbarShadow: (0,_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_0__.asCssVariable)(_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_0__.scrollbarShadow),\n scrollbarSliderBackground: (0,_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_0__.asCssVariable)(_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_0__.scrollbarSliderBackground),\n scrollbarSliderHoverBackground: (0,_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_0__.asCssVariable)(_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_0__.scrollbarSliderHoverBackground),\n scrollbarSliderActiveBackground: (0,_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_0__.asCssVariable)(_common_colorRegistry_js__WEBPACK_IMPORTED_MODULE_0__.scrollbarSliderActiveBackground)\n};\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/platform/theme/browser/defaultStyles.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/platform/theme/browser/iconsStyleSheet.js":
/*!*************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/platform/theme/browser/iconsStyleSheet.js ***!
\*************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ UnthemedProductIconTheme: () => (/* binding */ UnthemedProductIconTheme),\n/* harmony export */ getIconsStyleSheet: () => (/* binding */ getIconsStyleSheet)\n/* harmony export */ });\n/* harmony import */ var _base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../base/browser/dom.js */ \"./node_modules/monaco-editor/esm/vs/base/browser/dom.js\");\n/* harmony import */ var _base_common_event_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../base/common/event.js */ \"./node_modules/monaco-editor/esm/vs/base/common/event.js\");\n/* harmony import */ var _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../base/common/lifecycle.js */ \"./node_modules/monaco-editor/esm/vs/base/common/lifecycle.js\");\n/* harmony import */ var _base_common_themables_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../../base/common/themables.js */ \"./node_modules/monaco-editor/esm/vs/base/common/themables.js\");\n/* harmony import */ var _common_iconRegistry_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../common/iconRegistry.js */ \"./node_modules/monaco-editor/esm/vs/platform/theme/common/iconRegistry.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n\n\n\n\nfunction getIconsStyleSheet(themeService) {\n const disposable = new _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_2__.DisposableStore();\n const onDidChangeEmmiter = disposable.add(new _base_common_event_js__WEBPACK_IMPORTED_MODULE_1__.Emitter());\n const iconRegistry = (0,_common_iconRegistry_js__WEBPACK_IMPORTED_MODULE_4__.getIconRegistry)();\n disposable.add(iconRegistry.onDidChange(() => onDidChangeEmmiter.fire()));\n if (themeService) {\n disposable.add(themeService.onDidProductIconThemeChange(() => onDidChangeEmmiter.fire()));\n }\n return {\n dispose: () => disposable.dispose(),\n onDidChange: onDidChangeEmmiter.event,\n getCSS() {\n const productIconTheme = themeService ? themeService.getProductIconTheme() : new UnthemedProductIconTheme();\n const usedFontIds = {};\n const formatIconRule = (contribution) => {\n const definition = productIconTheme.getIcon(contribution);\n if (!definition) {\n return undefined;\n }\n const fontContribution = definition.font;\n if (fontContribution) {\n usedFontIds[fontContribution.id] = fontContribution.definition;\n return `.codicon-${contribution.id}:before { content: '${definition.fontCharacter}'; font-family: ${(0,_base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.asCSSPropertyValue)(fontContribution.id)}; }`;\n }\n // default font (codicon)\n return `.codicon-${contribution.id}:before { content: '${definition.fontCharacter}'; }`;\n };\n const rules = [];\n for (const contribution of iconRegistry.getIcons()) {\n const rule = formatIconRule(contribution);\n if (rule) {\n rules.push(rule);\n }\n }\n for (const id in usedFontIds) {\n const definition = usedFontIds[id];\n const fontWeight = definition.weight ? `font-weight: ${definition.weight};` : '';\n const fontStyle = definition.style ? `font-style: ${definition.style};` : '';\n const src = definition.src.map(l => `${(0,_base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.asCSSUrl)(l.location)} format('${l.format}')`).join(', ');\n rules.push(`@font-face { src: ${src}; font-family: ${(0,_base_browser_dom_js__WEBPACK_IMPORTED_MODULE_0__.asCSSPropertyValue)(id)};${fontWeight}${fontStyle} font-display: block; }`);\n }\n return rules.join('\\n');\n }\n };\n}\nclass UnthemedProductIconTheme {\n getIcon(contribution) {\n const iconRegistry = (0,_common_iconRegistry_js__WEBPACK_IMPORTED_MODULE_4__.getIconRegistry)();\n let definition = contribution.defaults;\n while (_base_common_themables_js__WEBPACK_IMPORTED_MODULE_3__.ThemeIcon.isThemeIcon(definition)) {\n const c = iconRegistry.getIcon(definition.id);\n if (!c) {\n return undefined;\n }\n definition = c.defaults;\n }\n return definition;\n }\n}\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/platform/theme/browser/iconsStyleSheet.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/platform/theme/common/colorRegistry.js":
/*!**********************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/platform/theme/common/colorRegistry.js ***!
\**********************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ Extensions: () => (/* binding */ Extensions),\n/* harmony export */ _deprecatedQuickInputListFocusBackground: () => (/* binding */ _deprecatedQuickInputListFocusBackground),\n/* harmony export */ activeContrastBorder: () => (/* binding */ activeContrastBorder),\n/* harmony export */ asCssVariable: () => (/* binding */ asCssVariable),\n/* harmony export */ asCssVariableName: () => (/* binding */ asCssVariableName),\n/* harmony export */ asCssVariableWithDefault: () => (/* binding */ asCssVariableWithDefault),\n/* harmony export */ badgeBackground: () => (/* binding */ badgeBackground),\n/* harmony export */ badgeForeground: () => (/* binding */ badgeForeground),\n/* harmony export */ breadcrumbsActiveSelectionForeground: () => (/* binding */ breadcrumbsActiveSelectionForeground),\n/* harmony export */ breadcrumbsBackground: () => (/* binding */ breadcrumbsBackground),\n/* harmony export */ breadcrumbsFocusForeground: () => (/* binding */ breadcrumbsFocusForeground),\n/* harmony export */ breadcrumbsForeground: () => (/* binding */ breadcrumbsForeground),\n/* harmony export */ breadcrumbsPickerBackground: () => (/* binding */ breadcrumbsPickerBackground),\n/* harmony export */ buttonBackground: () => (/* binding */ buttonBackground),\n/* harmony export */ buttonBorder: () => (/* binding */ buttonBorder),\n/* harmony export */ buttonForeground: () => (/* binding */ buttonForeground),\n/* harmony export */ buttonHoverBackground: () => (/* binding */ buttonHoverBackground),\n/* harmony export */ buttonSecondaryBackground: () => (/* binding */ buttonSecondaryBackground),\n/* harmony export */ buttonSecondaryForeground: () => (/* binding */ buttonSecondaryForeground),\n/* harmony export */ buttonSecondaryHoverBackground: () => (/* binding */ buttonSecondaryHoverBackground),\n/* harmony export */ buttonSeparator: () => (/* binding */ buttonSeparator),\n/* harmony export */ chartsBlue: () => (/* binding */ chartsBlue),\n/* harmony export */ chartsForeground: () => (/* binding */ chartsForeground),\n/* harmony export */ chartsGreen: () => (/* binding */ chartsGreen),\n/* harmony export */ chartsLines: () => (/* binding */ chartsLines),\n/* harmony export */ chartsOrange: () => (/* binding */ chartsOrange),\n/* harmony export */ chartsPurple: () => (/* binding */ chartsPurple),\n/* harmony export */ chartsRed: () => (/* binding */ chartsRed),\n/* harmony export */ chartsYellow: () => (/* binding */ chartsYellow),\n/* harmony export */ checkboxBackground: () => (/* binding */ checkboxBackground),\n/* harmony export */ checkboxBorder: () => (/* binding */ checkboxBorder),\n/* harmony export */ checkboxForeground: () => (/* binding */ checkboxForeground),\n/* harmony export */ checkboxSelectBackground: () => (/* binding */ checkboxSelectBackground),\n/* harmony export */ checkboxSelectBorder: () => (/* binding */ checkboxSelectBorder),\n/* harmony export */ contrastBorder: () => (/* binding */ contrastBorder),\n/* harmony export */ darken: () => (/* binding */ darken),\n/* harmony export */ defaultInsertColor: () => (/* binding */ defaultInsertColor),\n/* harmony export */ defaultRemoveColor: () => (/* binding */ defaultRemoveColor),\n/* harmony export */ descriptionForeground: () => (/* binding */ descriptionForeground),\n/* harmony export */ diffBorder: () => (/* binding */ diffBorder),\n/* harmony export */ diffDiagonalFill: () => (/* binding */ diffDiagonalFill),\n/* harmony export */ diffInserted: () => (/* binding */ diffInserted),\n/* harmony export */ diffInsertedLine: () => (/* binding */ diffInsertedLine),\n/* harmony export */ diffInsertedLineGutter: () => (/* binding */ diffInsertedLineGutter),\n/* harmony export */ diffInsertedOutline: () => (/* binding */ diffInsertedOutline),\n/* harmony export */ diffOverviewRulerInserted: () => (/* binding */ diffOverviewRulerInserted),\n/* harmony export */ diffOverviewRulerRemoved: () => (/* binding */ diffOverviewRulerRemoved),\n/* harmony export */ diffRemoved: () => (/* binding */ diffRemoved),\n/* harmony export */ diffRemovedLine: () => (/* binding */ diffRemovedLine),\n/* harmony export */ diffRemovedLineGutter: () => (/* binding */ diffRemovedLineGutter),\n/* harmony export */ diffRemovedOutline: () => (/* binding */ diffRemovedOutline),\n/* harmony export */ diffUnchangedRegionBackground: () => (/* binding */ diffUnchangedRegionBackground),\n/* harmony export */ diffUnchangedRegionForeground: () => (/* binding */ diffUnchangedRegionForeground),\n/* harmony export */ diffUnchangedTextBackground: () => (/* binding */ diffUnchangedTextBackground),\n/* harmony export */ disabledForeground: () => (/* binding */ disabledForeground),\n/* harmony export */ editorActiveLinkForeground: () => (/* binding */ editorActiveLinkForeground),\n/* harmony export */ editorBackground: () => (/* binding */ editorBackground),\n/* harmony export */ editorErrorBackground: () => (/* binding */ editorErrorBackground),\n/* harmony export */ editorErrorBorder: () => (/* binding */ editorErrorBorder),\n/* harmony export */ editorErrorForeground: () => (/* binding */ editorErrorForeground),\n/* harmony export */ editorFindMatch: () => (/* binding */ editorFindMatch),\n/* harmony export */ editorFindMatchBorder: () => (/* binding */ editorFindMatchBorder),\n/* harmony export */ editorFindMatchHighlight: () => (/* binding */ editorFindMatchHighlight),\n/* harmony export */ editorFindMatchHighlightBorder: () => (/* binding */ editorFindMatchHighlightBorder),\n/* harmony export */ editorFindRangeHighlight: () => (/* binding */ editorFindRangeHighlight),\n/* harmony export */ editorFindRangeHighlightBorder: () => (/* binding */ editorFindRangeHighlightBorder),\n/* harmony export */ editorForeground: () => (/* binding */ editorForeground),\n/* harmony export */ editorHintBorder: () => (/* binding */ editorHintBorder),\n/* harmony export */ editorHintForeground: () => (/* binding */ editorHintForeground),\n/* harmony export */ editorHoverBackground: () => (/* binding */ editorHoverBackground),\n/* harmony export */ editorHoverBorder: () => (/* binding */ editorHoverBorder),\n/* harmony export */ editorHoverForeground: () => (/* binding */ editorHoverForeground),\n/* harmony export */ editorHoverHighlight: () => (/* binding */ editorHoverHighlight),\n/* harmony export */ editorHoverStatusBarBackground: () => (/* binding */ editorHoverStatusBarBackground),\n/* harmony export */ editorInactiveSelection: () => (/* binding */ editorInactiveSelection),\n/* harmony export */ editorInfoBackground: () => (/* binding */ editorInfoBackground),\n/* harmony export */ editorInfoBorder: () => (/* binding */ editorInfoBorder),\n/* harmony export */ editorInfoForeground: () => (/* binding */ editorInfoForeground),\n/* harmony export */ editorInlayHintBackground: () => (/* binding */ editorInlayHintBackground),\n/* harmony export */ editorInlayHintForeground: () => (/* binding */ editorInlayHintForeground),\n/* harmony export */ editorInlayHintParameterBackground: () => (/* binding */ editorInlayHintParameterBackground),\n/* harmony export */ editorInlayHintParameterForeground: () => (/* binding */ editorInlayHintParameterForeground),\n/* harmony export */ editorInlayHintTypeBackground: () => (/* binding */ editorInlayHintTypeBackground),\n/* harmony export */ editorInlayHintTypeForeground: () => (/* binding */ editorInlayHintTypeForeground),\n/* harmony export */ editorLightBulbAiForeground: () => (/* binding */ editorLightBulbAiForeground),\n/* harmony export */ editorLightBulbAutoFixForeground: () => (/* binding */ editorLightBulbAutoFixForeground),\n/* harmony export */ editorLightBulbForeground: () => (/* binding */ editorLightBulbForeground),\n/* harmony export */ editorSelectionBackground: () => (/* binding */ editorSelectionBackground),\n/* harmony export */ editorSelectionForeground: () => (/* binding */ editorSelectionForeground),\n/* harmony export */ editorSelectionHighlight: () => (/* binding */ editorSelectionHighlight),\n/* harmony export */ editorSelectionHighlightBorder: () => (/* binding */ editorSelectionHighlightBorder),\n/* harmony export */ editorStickyScrollBackground: () => (/* binding */ editorStickyScrollBackground),\n/* harmony export */ editorStickyScrollBorder: () => (/* binding */ editorStickyScrollBorder),\n/* harmony export */ editorStickyScrollHoverBackground: () => (/* binding */ editorStickyScrollHoverBackground),\n/* harmony export */ editorStickyScrollShadow: () => (/* binding */ editorStickyScrollShadow),\n/* harmony export */ editorWarningBackground: () => (/* binding */ editorWarningBackground),\n/* harmony export */ editorWarningBorder: () => (/* binding */ editorWarningBorder),\n/* harmony export */ editorWarningForeground: () => (/* binding */ editorWarningForeground),\n/* harmony export */ editorWidgetBackground: () => (/* binding */ editorWidgetBackground),\n/* harmony export */ editorWidgetBorder: () => (/* binding */ editorWidgetBorder),\n/* harmony export */ editorWidgetForeground: () => (/* binding */ editorWidgetForeground),\n/* harmony export */ editorWidgetResizeBorder: () => (/* binding */ editorWidgetResizeBorder),\n/* harmony export */ errorForeground: () => (/* binding */ errorForeground),\n/* harmony export */ executeTransform: () => (/* binding */ executeTransform),\n/* harmony export */ focusBorder: () => (/* binding */ focusBorder),\n/* harmony export */ foreground: () => (/* binding */ foreground),\n/* harmony export */ iconForeground: () => (/* binding */ iconForeground),\n/* harmony export */ ifDefinedThenElse: () => (/* binding */ ifDefinedThenElse),\n/* harmony export */ inputActiveOptionBackground: () => (/* binding */ inputActiveOptionBackground),\n/* harmony export */ inputActiveOptionBorder: () => (/* binding */ inputActiveOptionBorder),\n/* harmony export */ inputActiveOptionForeground: () => (/* binding */ inputActiveOptionForeground),\n/* harmony export */ inputActiveOptionHoverBackground: () => (/* binding */ inputActiveOptionHoverBackground),\n/* harmony export */ inputBackground: () => (/* binding */ inputBackground),\n/* harmony export */ inputBorder: () => (/* binding */ inputBorder),\n/* harmony export */ inputForeground: () => (/* binding */ inputForeground),\n/* harmony export */ inputPlaceholderForeground: () => (/* binding */ inputPlaceholderForeground),\n/* harmony export */ inputValidationErrorBackground: () => (/* binding */ inputValidationErrorBackground),\n/* harmony export */ inputValidationErrorBorder: () => (/* binding */ inputValidationErrorBorder),\n/* harmony export */ inputValidationErrorForeground: () => (/* binding */ inputValidationErrorForeground),\n/* harmony export */ inputValidationInfoBackground: () => (/* binding */ inputValidationInfoBackground),\n/* harmony export */ inputValidationInfoBorder: () => (/* binding */ inputValidationInfoBorder),\n/* harmony export */ inputValidationInfoForeground: () => (/* binding */ inputValidationInfoForeground),\n/* harmony export */ inputValidationWarningBackground: () => (/* binding */ inputValidationWarningBackground),\n/* harmony export */ inputValidationWarningBorder: () => (/* binding */ inputValidationWarningBorder),\n/* harmony export */ inputValidationWarningForeground: () => (/* binding */ inputValidationWarningForeground),\n/* harmony export */ keybindingLabelBackground: () => (/* binding */ keybindingLabelBackground),\n/* harmony export */ keybindingLabelBorder: () => (/* binding */ keybindingLabelBorder),\n/* harmony export */ keybindingLabelBottomBorder: () => (/* binding */ keybindingLabelBottomBorder),\n/* harmony export */ keybindingLabelForeground: () => (/* binding */ keybindingLabelForeground),\n/* harmony export */ lighten: () => (/* binding */ lighten),\n/* harmony export */ listActiveSelectionBackground: () => (/* binding */ listActiveSelectionBackground),\n/* harmony export */ listActiveSelectionForeground: () => (/* binding */ listActiveSelectionForeground),\n/* harmony export */ listActiveSelectionIconForeground: () => (/* binding */ listActiveSelectionIconForeground),\n/* harmony export */ listDeemphasizedForeground: () => (/* binding */ listDeemphasizedForeground),\n/* harmony export */ listDropBetweenBackground: () => (/* binding */ listDropBetweenBackground),\n/* harmony export */ listDropOverBackground: () => (/* binding */ listDropOverBackground),\n/* harmony export */ listErrorForeground: () => (/* binding */ listErrorForeground),\n/* harmony export */ listFilterMatchHighlight: () => (/* binding */ listFilterMatchHighlight),\n/* harmony export */ listFilterMatchHighlightBorder: () => (/* binding */ listFilterMatchHighlightBorder),\n/* harmony export */ listFilterWidgetBackground: () => (/* binding */ listFilterWidgetBackground),\n/* harmony export */ listFilterWidgetNoMatchesOutline: () => (/* binding */ listFilterWidgetNoMatchesOutline),\n/* harmony export */ listFilterWidgetOutline: () => (/* binding */ listFilterWidgetOutline),\n/* harmony export */ listFilterWidgetShadow: () => (/* binding */ listFilterWidgetShadow),\n/* harmony export */ listFocusAndSelectionOutline: () => (/* binding */ listFocusAndSelectionOutline),\n/* harmony export */ listFocusBackground: () => (/* binding */ listFocusBackground),\n/* harmony export */ listFocusForeground: () => (/* binding */ listFocusForeground),\n/* harmony export */ listFocusHighlightForeground: () => (/* binding */ listFocusHighlightForeground),\n/* harmony export */ listFocusOutline: () => (/* binding */ listFocusOutline),\n/* harmony export */ listHighlightForeground: () => (/* binding */ listHighlightForeground),\n/* harmony export */ listHoverBackground: () => (/* binding */ listHoverBackground),\n/* harmony export */ listHoverForeground: () => (/* binding */ listHoverForeground),\n/* harmony export */ listInactiveFocusBackground: () => (/* binding */ listInactiveFocusBackground),\n/* harmony export */ listInactiveFocusOutline: () => (/* binding */ listInactiveFocusOutline),\n/* harmony export */ listInactiveSelectionBackground: () => (/* binding */ listInactiveSelectionBackground),\n/* harmony export */ listInactiveSelectionForeground: () => (/* binding */ listInactiveSelectionForeground),\n/* harmony export */ listInactiveSelectionIconForeground: () => (/* binding */ listInactiveSelectionIconForeground),\n/* harmony export */ listInvalidItemForeground: () => (/* binding */ listInvalidItemForeground),\n/* harmony export */ listWarningForeground: () => (/* binding */ listWarningForeground),\n/* harmony export */ menuBackground: () => (/* binding */ menuBackground),\n/* harmony export */ menuBorder: () => (/* binding */ menuBorder),\n/* harmony export */ menuForeground: () => (/* binding */ menuForeground),\n/* harmony export */ menuSelectionBackground: () => (/* binding */ menuSelectionBackground),\n/* harmony export */ menuSelectionBorder: () => (/* binding */ menuSelectionBorder),\n/* harmony export */ menuSelectionForeground: () => (/* binding */ menuSelectionForeground),\n/* harmony export */ menuSeparatorBackground: () => (/* binding */ menuSeparatorBackground),\n/* harmony export */ mergeBorder: () => (/* binding */ mergeBorder),\n/* harmony export */ mergeCommonContentBackground: () => (/* binding */ mergeCommonContentBackground),\n/* harmony export */ mergeCommonHeaderBackground: () => (/* binding */ mergeCommonHeaderBackground),\n/* harmony export */ mergeCurrentContentBackground: () => (/* binding */ mergeCurrentContentBackground),\n/* harmony export */ mergeCurrentHeaderBackground: () => (/* binding */ mergeCurrentHeaderBackground),\n/* harmony export */ mergeIncomingContentBackground: () => (/* binding */ mergeIncomingContentBackground),\n/* harmony export */ mergeIncomingHeaderBackground: () => (/* binding */ mergeIncomingHeaderBackground),\n/* harmony export */ minimapBackground: () => (/* binding */ minimapBackground),\n/* harmony export */ minimapError: () => (/* binding */ minimapError),\n/* harmony export */ minimapFindMatch: () => (/* binding */ minimapFindMatch),\n/* harmony export */ minimapForegroundOpacity: () => (/* binding */ minimapForegroundOpacity),\n/* harmony export */ minimapInfo: () => (/* binding */ minimapInfo),\n/* harmony export */ minimapSelection: () => (/* binding */ minimapSelection),\n/* harmony export */ minimapSelectionOccurrenceHighlight: () => (/* binding */ minimapSelectionOccurrenceHighlight),\n/* harmony export */ minimapSliderActiveBackground: () => (/* binding */ minimapSliderActiveBackground),\n/* harmony export */ minimapSliderBackground: () => (/* binding */ minimapSliderBackground),\n/* harmony export */ minimapSliderHoverBackground: () => (/* binding */ minimapSliderHoverBackground),\n/* harmony export */ minimapWarning: () => (/* binding */ minimapWarning),\n/* harmony export */ oneOf: () => (/* binding */ oneOf),\n/* harmony export */ overviewRulerCommonContentForeground: () => (/* binding */ overviewRulerCommonContentForeground),\n/* harmony export */ overviewRulerCurrentContentForeground: () => (/* binding */ overviewRulerCurrentContentForeground),\n/* harmony export */ overviewRulerFindMatchForeground: () => (/* binding */ overviewRulerFindMatchForeground),\n/* harmony export */ overviewRulerIncomingContentForeground: () => (/* binding */ overviewRulerIncomingContentForeground),\n/* harmony export */ overviewRulerSelectionHighlightForeground: () => (/* binding */ overviewRulerSelectionHighlightForeground),\n/* harmony export */ pickerGroupBorder: () => (/* binding */ pickerGroupBorder),\n/* harmony export */ pickerGroupForeground: () => (/* binding */ pickerGroupForeground),\n/* harmony export */ problemsErrorIconForeground: () => (/* binding */ problemsErrorIconForeground),\n/* harmony export */ problemsInfoIconForeground: () => (/* binding */ problemsInfoIconForeground),\n/* harmony export */ problemsWarningIconForeground: () => (/* binding */ problemsWarningIconForeground),\n/* harmony export */ progressBarBackground: () => (/* binding */ progressBarBackground),\n/* harmony export */ quickInputBackground: () => (/* binding */ quickInputBackground),\n/* harmony export */ quickInputForeground: () => (/* binding */ quickInputForeground),\n/* harmony export */ quickInputListFocusBackground: () => (/* binding */ quickInputListFocusBackground),\n/* harmony export */ quickInputListFocusForeground: () => (/* binding */ quickInputListFocusForeground),\n/* harmony export */ quickInputListFocusIconForeground: () => (/* binding */ quickInputListFocusIconForeground),\n/* harmony export */ quickInputTitleBackground: () => (/* binding */ quickInputTitleBackground),\n/* harmony export */ registerColor: () => (/* binding */ registerColor),\n/* harmony export */ resolveColorValue: () => (/* binding */ resolveColorValue),\n/* harmony export */ sashHoverBorder: () => (/* binding */ sashHoverBorder),\n/* harmony export */ scrollbarShadow: () => (/* binding */ scrollbarShadow),\n/* harmony export */ scrollbarSliderActiveBackground: () => (/* binding */ scrollbarSliderActiveBackground),\n/* harmony export */ scrollbarSliderBackground: () => (/* binding */ scrollbarSliderBackground),\n/* harmony export */ scrollbarSliderHoverBackground: () => (/* binding */ scrollbarSliderHoverBackground),\n/* harmony export */ searchEditorFindMatch: () => (/* binding */ searchEditorFindMatch),\n/* harmony export */ searchEditorFindMatchBorder: () => (/* binding */ searchEditorFindMatchBorder),\n/* harmony export */ searchResultsInfoForeground: () => (/* binding */ searchResultsInfoForeground),\n/* harmony export */ selectBackground: () => (/* binding */ selectBackground),\n/* harmony export */ selectBorder: () => (/* binding */ selectBorder),\n/* harmony export */ selectForeground: () => (/* binding */ selectForeground),\n/* harmony export */ selectListBackground: () => (/* binding */ selectListBackground),\n/* harmony export */ selectionBackground: () => (/* binding */ selectionBackground),\n/* harmony export */ snippetFinalTabstopHighlightBackground: () => (/* binding */ snippetFinalTabstopHighlightBackground),\n/* harmony export */ snippetFinalTabstopHighlightBorder: () => (/* binding */ snippetFinalTabstopHighlightBorder),\n/* harmony export */ snippetTabstopHighlightBackground: () => (/* binding */ snippetTabstopHighlightBackground),\n/* harmony export */ snippetTabstopHighlightBorder: () => (/* binding */ snippetTabstopHighlightBorder),\n/* harmony export */ tableColumnsBorder: () => (/* binding */ tableColumnsBorder),\n/* harmony export */ tableOddRowsBackgroundColor: () => (/* binding */ tableOddRowsBackgroundColor),\n/* harmony export */ textBlockQuoteBackground: () => (/* binding */ textBlockQuoteBackground),\n/* harmony export */ textBlockQuoteBorder: () => (/* binding */ textBlockQuoteBorder),\n/* harmony export */ textCodeBlockBackground: () => (/* binding */ textCodeBlockBackground),\n/* harmony export */ textLinkActiveForeground: () => (/* binding */ textLinkActiveForeground),\n/* harmony export */ textLinkForeground: () => (/* binding */ textLinkForeground),\n/* harmony export */ textPreformatBackground: () => (/* binding */ textPreformatBackground),\n/* harmony export */ textPreformatForeground: () => (/* binding */ textPreformatForeground),\n/* harmony export */ textSeparatorForeground: () => (/* binding */ textSeparatorForeground),\n/* harmony export */ toolbarActiveBackground: () => (/* binding */ toolbarActiveBackground),\n/* harmony export */ toolbarHoverBackground: () => (/* binding */ toolbarHoverBackground),\n/* harmony export */ toolbarHoverOutline: () => (/* binding */ toolbarHoverOutline),\n/* harmony export */ transparent: () => (/* binding */ transparent),\n/* harmony export */ treeInactiveIndentGuidesStroke: () => (/* binding */ treeInactiveIndentGuidesStroke),\n/* harmony export */ treeIndentGuidesStroke: () => (/* binding */ treeIndentGuidesStroke),\n/* harmony export */ widgetBorder: () => (/* binding */ widgetBorder),\n/* harmony export */ widgetShadow: () => (/* binding */ widgetShadow),\n/* harmony export */ workbenchColorsSchemaId: () => (/* binding */ workbenchColorsSchemaId)\n/* harmony export */ });\n/* harmony import */ var _base_common_assert_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../base/common/assert.js */ \"./node_modules/monaco-editor/esm/vs/base/common/assert.js\");\n/* harmony import */ var _base_common_async_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../base/common/async.js */ \"./node_modules/monaco-editor/esm/vs/base/common/async.js\");\n/* harmony import */ var _base_common_color_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../base/common/color.js */ \"./node_modules/monaco-editor/esm/vs/base/common/color.js\");\n/* harmony import */ var _base_common_event_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../../base/common/event.js */ \"./node_modules/monaco-editor/esm/vs/base/common/event.js\");\n/* harmony import */ var _nls_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../../nls.js */ \"./node_modules/monaco-editor/esm/vs/nls.js\");\n/* harmony import */ var _jsonschemas_common_jsonContributionRegistry_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../../jsonschemas/common/jsonContributionRegistry.js */ \"./node_modules/monaco-editor/esm/vs/platform/jsonschemas/common/jsonContributionRegistry.js\");\n/* harmony import */ var _registry_common_platform_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../../registry/common/platform.js */ \"./node_modules/monaco-editor/esm/vs/platform/registry/common/platform.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n\n\n\n\n\n\n/**\n * Returns the css variable name for the given color identifier. Dots (`.`) are replaced with hyphens (`-`) and\n * everything is prefixed with `--vscode-`.\n *\n * @sample `editorSuggestWidget.background` is `--vscode-editorSuggestWidget-background`.\n */\nfunction asCssVariableName(colorIdent) {\n return `--vscode-${colorIdent.replace(/\\./g, '-')}`;\n}\nfunction asCssVariable(color) {\n return `var(${asCssVariableName(color)})`;\n}\nfunction asCssVariableWithDefault(color, defaultCssValue) {\n return `var(${asCssVariableName(color)}, ${defaultCssValue})`;\n}\n// color registry\nconst Extensions = {\n ColorContribution: 'base.contributions.colors'\n};\nclass ColorRegistry {\n constructor() {\n this._onDidChangeSchema = new _base_common_event_js__WEBPACK_IMPORTED_MODULE_3__.Emitter();\n this.onDidChangeSchema = this._onDidChangeSchema.event;\n this.colorSchema = { type: 'object', properties: {} };\n this.colorReferenceSchema = { type: 'string', enum: [], enumDescriptions: [] };\n this.colorsById = {};\n }\n registerColor(id, defaults, description, needsTransparency = false, deprecationMessage) {\n const colorContribution = { id, description, defaults, needsTransparency, deprecationMessage };\n this.colorsById[id] = colorContribution;\n const propertySchema = { type: 'string', description, format: 'color-hex', defaultSnippets: [{ body: '${1:#ff0000}' }] };\n if (deprecationMessage) {\n propertySchema.deprecationMessage = deprecationMessage;\n }\n if (needsTransparency) {\n propertySchema.pattern = '^#(?:(?[0-9a-fA-f]{3}[0-9a-eA-E])|(?:[0-9a-fA-F]{6}(?:(?![fF]{2})(?:[0-9a-fA-F]{2}))))?$';\n propertySchema.patternErrorMessage = 'This color must be transparent or it will obscure content';\n }\n this.colorSchema.properties[id] = propertySchema;\n this.colorReferenceSchema.enum.push(id);\n this.colorReferenceSchema.enumDescriptions.push(description);\n this._onDidChangeSchema.fire();\n return id;\n }\n getColors() {\n return Object.keys(this.colorsById).map(id => this.colorsById[id]);\n }\n resolveDefaultColor(id, theme) {\n const colorDesc = this.colorsById[id];\n if (colorDesc && colorDesc.defaults) {\n const colorValue = colorDesc.defaults[theme.type];\n return resolveColorValue(colorValue, theme);\n }\n return undefined;\n }\n getColorSchema() {\n return this.colorSchema;\n }\n toString() {\n const sorter = (a, b) => {\n const cat1 = a.indexOf('.') === -1 ? 0 : 1;\n const cat2 = b.indexOf('.') === -1 ? 0 : 1;\n if (cat1 !== cat2) {\n return cat1 - cat2;\n }\n return a.localeCompare(b);\n };\n return Object.keys(this.colorsById).sort(sorter).map(k => `- \\`${k}\\`: ${this.colorsById[k].description}`).join('\\n');\n }\n}\nconst colorRegistry = new ColorRegistry();\n_registry_common_platform_js__WEBPACK_IMPORTED_MODULE_6__.Registry.add(Extensions.ColorContribution, colorRegistry);\nfunction registerColor(id, defaults, description, needsTransparency, deprecationMessage) {\n return colorRegistry.registerColor(id, defaults, description, needsTransparency, deprecationMessage);\n}\n// ----- base colors\nconst foreground = registerColor('foreground', { dark: '#CCCCCC', light: '#616161', hcDark: '#FFFFFF', hcLight: '#292929' }, _nls_js__WEBPACK_IMPORTED_MODULE_4__.localize('foreground', \"Overall foreground color. This color is only used if not overridden by a component.\"));\nconst disabledForeground = registerColor('disabledForeground', { dark: '#CCCCCC80', light: '#61616180', hcDark: '#A5A5A5', hcLight: '#7F7F7F' }, _nls_js__WEBPACK_IMPORTED_MODULE_4__.localize('disabledForeground', \"Overall foreground for disabled elements. This color is only used if not overridden by a component.\"));\nconst errorForeground = registerColor('errorForeground', { dark: '#F48771', light: '#A1260D', hcDark: '#F48771', hcLight: '#B5200D' }, _nls_js__WEBPACK_IMPORTED_MODULE_4__.localize('errorForeground', \"Overall foreground color for error messages. This color is only used if not overridden by a component.\"));\nconst descriptionForeground = registerColor('descriptionForeground', { light: '#717171', dark: transparent(foreground, 0.7), hcDark: transparent(foreground, 0.7), hcLight: transparent(foreground, 0.7) }, _nls_js__WEBPACK_IMPORTED_MODULE_4__.localize('descriptionForeground', \"Foreground color for description text providing additional information, for example for a label.\"));\nconst iconForeground = registerColor('icon.foreground', { dark: '#C5C5C5', light: '#424242', hcDark: '#FFFFFF', hcLight: '#292929' }, _nls_js__WEBPACK_IMPORTED_MODULE_4__.localize('iconForeground', \"The default color for icons in the workbench.\"));\nconst focusBorder = registerColor('focusBorder', { dark: '#007FD4', light: '#0090F1', hcDark: '#F38518', hcLight: '#006BBD' }, _nls_js__WEBPACK_IMPORTED_MODULE_4__.localize('focusBorder', \"Overall border color for focused elements. This color is only used if not overridden by a component.\"));\nconst contrastBorder = registerColor('contrastBorder', { light: null, dark: null, hcDark: '#6FC3DF', hcLight: '#0F4A85' }, _nls_js__WEBPACK_IMPORTED_MODULE_4__.localize('contrastBorder', \"An extra border around elements to separate them from others for greater contrast.\"));\nconst activeContrastBorder = registerColor('contrastActiveBorder', { light: null, dark: null, hcDark: focusBorder, hcLight: focusBorder }, _nls_js__WEBPACK_IMPORTED_MODULE_4__.localize('activeContrastBorder', \"An extra border around active elements to separate them from others for greater contrast.\"));\nconst selectionBackground = registerColor('selection.background', { light: null, dark: null, hcDark: null, hcLight: null }, _nls_js__WEBPACK_IMPORTED_MODULE_4__.localize('selectionBackground', \"The background color of text selections in the workbench (e.g. for input fields or text areas). Note that this does not apply to selections within the editor.\"));\n// ------ text colors\nconst textSeparatorForeground = registerColor('textSeparator.foreground', { light: '#0000002e', dark: '#ffffff2e', hcDark: _base_common_color_js__WEBPACK_IMPORTED_MODULE_2__.Color.black, hcLight: '#292929' }, _nls_js__WEBPACK_IMPORTED_MODULE_4__.localize('textSeparatorForeground', \"Color for text separators.\"));\nconst textLinkForeground = registerColor('textLink.foreground', { light: '#006AB1', dark: '#3794FF', hcDark: '#21A6FF', hcLight: '#0F4A85' }, _nls_js__WEBPACK_IMPORTED_MODULE_4__.localize('textLinkForeground', \"Foreground color for links in text.\"));\nconst textLinkActiveForeground = registerColor('textLink.activeForeground', { light: '#006AB1', dark: '#3794FF', hcDark: '#21A6FF', hcLight: '#0F4A85' }, _nls_js__WEBPACK_IMPORTED_MODULE_4__.localize('textLinkActiveForeground', \"Foreground color for links in text when clicked on and on mouse hover.\"));\nconst textPreformatForeground = registerColor('textPreformat.foreground', { light: '#A31515', dark: '#D7BA7D', hcDark: '#000000', hcLight: '#FFFFFF' }, _nls_js__WEBPACK_IMPORTED_MODULE_4__.localize('textPreformatForeground', \"Foreground color for preformatted text segments.\"));\nconst textPreformatBackground = registerColor('textPreformat.background', { light: '#0000001A', dark: '#FFFFFF1A', hcDark: '#FFFFFF', hcLight: '#09345f' }, _nls_js__WEBPACK_IMPORTED_MODULE_4__.localize('textPreformatBackground', \"Background color for preformatted text segments.\"));\nconst textBlockQuoteBackground = registerColor('textBlockQuote.background', { light: '#f2f2f2', dark: '#222222', hcDark: null, hcLight: '#F2F2F2' }, _nls_js__WEBPACK_IMPORTED_MODULE_4__.localize('textBlockQuoteBackground', \"Background color for block quotes in text.\"));\nconst textBlockQuoteBorder = registerColor('textBlockQuote.border', { light: '#007acc80', dark: '#007acc80', hcDark: _base_common_color_js__WEBPACK_IMPORTED_MODULE_2__.Color.white, hcLight: '#292929' }, _nls_js__WEBPACK_IMPORTED_MODULE_4__.localize('textBlockQuoteBorder', \"Border color for block quotes in text.\"));\nconst textCodeBlockBackground = registerColor('textCodeBlock.background', { light: '#dcdcdc66', dark: '#0a0a0a66', hcDark: _base_common_color_js__WEBPACK_IMPORTED_MODULE_2__.Color.black, hcLight: '#F2F2F2' }, _nls_js__WEBPACK_IMPORTED_MODULE_4__.localize('textCodeBlockBackground', \"Background color for code blocks in text.\"));\n// ----- widgets\nconst widgetShadow = registerColor('widget.shadow', { dark: transparent(_base_common_color_js__WEBPACK_IMPORTED_MODULE_2__.Color.black, .36), light: transparent(_base_common_color_js__WEBPACK_IMPORTED_MODULE_2__.Color.black, .16), hcDark: null, hcLight: null }, _nls_js__WEBPACK_IMPORTED_MODULE_4__.localize('widgetShadow', 'Shadow color of widgets such as find/replace inside the editor.'));\nconst widgetBorder = registerColor('widget.border', { dark: null, light: null, hcDark: contrastBorder, hcLight: contrastBorder }, _nls_js__WEBPACK_IMPORTED_MODULE_4__.localize('widgetBorder', 'Border color of widgets such as find/replace inside the editor.'));\nconst inputBackground = registerColor('input.background', { dark: '#3C3C3C', light: _base_common_color_js__WEBPACK_IMPORTED_MODULE_2__.Color.white, hcDark: _base_common_color_js__WEBPACK_IMPORTED_MODULE_2__.Color.black, hcLight: _base_common_color_js__WEBPACK_IMPORTED_MODULE_2__.Color.white }, _nls_js__WEBPACK_IMPORTED_MODULE_4__.localize('inputBoxBackground', \"Input box background.\"));\nconst inputForeground = registerColor('input.foreground', { dark: foreground, light: foreground, hcDark: foreground, hcLight: foreground }, _nls_js__WEBPACK_IMPORTED_MODULE_4__.localize('inputBoxForeground', \"Input box foreground.\"));\nconst inputBorder = registerColor('input.border', { dark: null, light: null, hcDark: contrastBorder, hcLight: contrastBorder }, _nls_js__WEBPACK_IMPORTED_MODULE_4__.localize('inputBoxBorder', \"Input box border.\"));\nconst inputActiveOptionBorder = registerColor('inputOption.activeBorder', { dark: '#007ACC', light: '#007ACC', hcDark: contrastBorder, hcLight: contrastBorder }, _nls_js__WEBPACK_IMPORTED_MODULE_4__.localize('inputBoxActiveOptionBorder', \"Border color of activated options in input fields.\"));\nconst inputActiveOptionHoverBackground = registerColor('inputOption.hoverBackground', { dark: '#5a5d5e80', light: '#b8b8b850', hcDark: null, hcLight: null }, _nls_js__WEBPACK_IMPORTED_MODULE_4__.localize('inputOption.hoverBackground', \"Background color of activated options in input fields.\"));\nconst inputActiveOptionBackground = registerColor('inputOption.activeBackground', { dark: transparent(focusBorder, 0.4), light: transparent(focusBorder, 0.2), hcDark: _base_common_color_js__WEBPACK_IMPORTED_MODULE_2__.Color.transparent, hcLight: _base_common_color_js__WEBPACK_IMPORTED_MODULE_2__.Color.transparent }, _nls_js__WEBPACK_IMPORTED_MODULE_4__.localize('inputOption.activeBackground', \"Background hover color of options in input fields.\"));\nconst inputActiveOptionForeground = registerColor('inputOption.activeForeground', { dark: _base_common_color_js__WEBPACK_IMPORTED_MODULE_2__.Color.white, light: _base_common_color_js__WEBPACK_IMPORTED_MODULE_2__.Color.black, hcDark: foreground, hcLight: foreground }, _nls_js__WEBPACK_IMPORTED_MODULE_4__.localize('inputOption.activeForeground', \"Foreground color of activated options in input fields.\"));\nconst inputPlaceholderForeground = registerColor('input.placeholderForeground', { light: transparent(foreground, 0.5), dark: transparent(foreground, 0.5), hcDark: transparent(foreground, 0.7), hcLight: transparent(foreground, 0.7) }, _nls_js__WEBPACK_IMPORTED_MODULE_4__.localize('inputPlaceholderForeground', \"Input box foreground color for placeholder text.\"));\nconst inputValidationInfoBackground = registerColor('inputValidation.infoBackground', { dark: '#063B49', light: '#D6ECF2', hcDark: _base_common_color_js__WEBPACK_IMPORTED_MODULE_2__.Color.black, hcLight: _base_common_color_js__WEBPACK_IMPORTED_MODULE_2__.Color.white }, _nls_js__WEBPACK_IMPORTED_MODULE_4__.localize('inputValidationInfoBackground', \"Input validation background color for information severity.\"));\nconst inputValidationInfoForeground = registerColor('inputValidation.infoForeground', { dark: null, light: null, hcDark: null, hcLight: foreground }, _nls_js__WEBPACK_IMPORTED_MODULE_4__.localize('inputValidationInfoForeground', \"Input validation foreground color for information severity.\"));\nconst inputValidationInfoBorder = registerColor('inputValidation.infoBorder', { dark: '#007acc', light: '#007acc', hcDark: contrastBorder, hcLight: contrastBorder }, _nls_js__WEBPACK_IMPORTED_MODULE_4__.localize('inputValidationInfoBorder', \"Input validation border color for information severity.\"));\nconst inputValidationWarningBackground = registerColor('inputValidation.warningBackground', { dark: '#352A05', light: '#F6F5D2', hcDark: _base_common_color_js__WEBPACK_IMPORTED_MODULE_2__.Color.black, hcLight: _base_common_color_js__WEBPACK_IMPORTED_MODULE_2__.Color.white }, _nls_js__WEBPACK_IMPORTED_MODULE_4__.localize('inputValidationWarningBackground', \"Input validation background color for warning severity.\"));\nconst inputValidationWarningForeground = registerColor('inputValidation.warningForeground', { dark: null, light: null, hcDark: null, hcLight: foreground }, _nls_js__WEBPACK_IMPORTED_MODULE_4__.localize('inputValidationWarningForeground', \"Input validation foreground color for warning severity.\"));\nconst inputValidationWarningBorder = registerColor('inputValidation.warningBorder', { dark: '#B89500', light: '#B89500', hcDark: contrastBorder, hcLight: contrastBorder }, _nls_js__WEBPACK_IMPORTED_MODULE_4__.localize('inputValidationWarningBorder', \"Input validation border color for warning severity.\"));\nconst inputValidationErrorBackground = registerColor('inputValidation.errorBackground', { dark: '#5A1D1D', light: '#F2DEDE', hcDark: _base_common_color_js__WEBPACK_IMPORTED_MODULE_2__.Color.black, hcLight: _base_common_color_js__WEBPACK_IMPORTED_MODULE_2__.Color.white }, _nls_js__WEBPACK_IMPORTED_MODULE_4__.localize('inputValidationErrorBackground', \"Input validation background color for error severity.\"));\nconst inputValidationErrorForeground = registerColor('inputValidation.errorForeground', { dark: null, light: null, hcDark: null, hcLight: foreground }, _nls_js__WEBPACK_IMPORTED_MODULE_4__.localize('inputValidationErrorForeground', \"Input validation foreground color for error severity.\"));\nconst inputValidationErrorBorder = registerColor('inputValidation.errorBorder', { dark: '#BE1100', light: '#BE1100', hcDark: contrastBorder, hcLight: contrastBorder }, _nls_js__WEBPACK_IMPORTED_MODULE_4__.localize('inputValidationErrorBorder', \"Input validation border color for error severity.\"));\nconst selectBackground = registerColor('dropdown.background', { dark: '#3C3C3C', light: _base_common_color_js__WEBPACK_IMPORTED_MODULE_2__.Color.white, hcDark: _base_common_color_js__WEBPACK_IMPORTED_MODULE_2__.Color.black, hcLight: _base_common_color_js__WEBPACK_IMPORTED_MODULE_2__.Color.white }, _nls_js__WEBPACK_IMPORTED_MODULE_4__.localize('dropdownBackground', \"Dropdown background.\"));\nconst selectListBackground = registerColor('dropdown.listBackground', { dark: null, light: null, hcDark: _base_common_color_js__WEBPACK_IMPORTED_MODULE_2__.Color.black, hcLight: _base_common_color_js__WEBPACK_IMPORTED_MODULE_2__.Color.white }, _nls_js__WEBPACK_IMPORTED_MODULE_4__.localize('dropdownListBackground', \"Dropdown list background.\"));\nconst selectForeground = registerColor('dropdown.foreground', { dark: '#F0F0F0', light: foreground, hcDark: _base_common_color_js__WEBPACK_IMPORTED_MODULE_2__.Color.white, hcLight: foreground }, _nls_js__WEBPACK_IMPORTED_MODULE_4__.localize('dropdownForeground', \"Dropdown foreground.\"));\nconst selectBorder = registerColor('dropdown.border', { dark: selectBackground, light: '#CECECE', hcDark: contrastBorder, hcLight: contrastBorder }, _nls_js__WEBPACK_IMPORTED_MODULE_4__.localize('dropdownBorder', \"Dropdown border.\"));\nconst buttonForeground = registerColor('button.foreground', { dark: _base_common_color_js__WEBPACK_IMPORTED_MODULE_2__.Color.white, light: _base_common_color_js__WEBPACK_IMPORTED_MODULE_2__.Color.white, hcDark: _base_common_color_js__WEBPACK_IMPORTED_MODULE_2__.Color.white, hcLight: _base_common_color_js__WEBPACK_IMPORTED_MODULE_2__.Color.white }, _nls_js__WEBPACK_IMPORTED_MODULE_4__.localize('buttonForeground', \"Button foreground color.\"));\nconst buttonSeparator = registerColor('button.separator', { dark: transparent(buttonForeground, .4), light: transparent(buttonForeground, .4), hcDark: transparent(buttonForeground, .4), hcLight: transparent(buttonForeground, .4) }, _nls_js__WEBPACK_IMPORTED_MODULE_4__.localize('buttonSeparator', \"Button separator color.\"));\nconst buttonBackground = registerColor('button.background', { dark: '#0E639C', light: '#007ACC', hcDark: null, hcLight: '#0F4A85' }, _nls_js__WEBPACK_IMPORTED_MODULE_4__.localize('buttonBackground', \"Button background color.\"));\nconst buttonHoverBackground = registerColor('button.hoverBackground', { dark: lighten(buttonBackground, 0.2), light: darken(buttonBackground, 0.2), hcDark: buttonBackground, hcLight: buttonBackground }, _nls_js__WEBPACK_IMPORTED_MODULE_4__.localize('buttonHoverBackground', \"Button background color when hovering.\"));\nconst buttonBorder = registerColor('button.border', { dark: contrastBorder, light: contrastBorder, hcDark: contrastBorder, hcLight: contrastBorder }, _nls_js__WEBPACK_IMPORTED_MODULE_4__.localize('buttonBorder', \"Button border color.\"));\nconst buttonSecondaryForeground = registerColor('button.secondaryForeground', { dark: _base_common_color_js__WEBPACK_IMPORTED_MODULE_2__.Color.white, light: _base_common_color_js__WEBPACK_IMPORTED_MODULE_2__.Color.white, hcDark: _base_common_color_js__WEBPACK_IMPORTED_MODULE_2__.Color.white, hcLight: foreground }, _nls_js__WEBPACK_IMPORTED_MODULE_4__.localize('buttonSecondaryForeground', \"Secondary button foreground color.\"));\nconst buttonSecondaryBackground = registerColor('button.secondaryBackground', { dark: '#3A3D41', light: '#5F6A79', hcDark: null, hcLight: _base_common_color_js__WEBPACK_IMPORTED_MODULE_2__.Color.white }, _nls_js__WEBPACK_IMPORTED_MODULE_4__.localize('buttonSecondaryBackground', \"Secondary button background color.\"));\nconst buttonSecondaryHoverBackground = registerColor('button.secondaryHoverBackground', { dark: lighten(buttonSecondaryBackground, 0.2), light: darken(buttonSecondaryBackground, 0.2), hcDark: null, hcLight: null }, _nls_js__WEBPACK_IMPORTED_MODULE_4__.localize('buttonSecondaryHoverBackground', \"Secondary button background color when hovering.\"));\nconst badgeBackground = registerColor('badge.background', { dark: '#4D4D4D', light: '#C4C4C4', hcDark: _base_common_color_js__WEBPACK_IMPORTED_MODULE_2__.Color.black, hcLight: '#0F4A85' }, _nls_js__WEBPACK_IMPORTED_MODULE_4__.localize('badgeBackground', \"Badge background color. Badges are small information labels, e.g. for search results count.\"));\nconst badgeForeground = registerColor('badge.foreground', { dark: _base_common_color_js__WEBPACK_IMPORTED_MODULE_2__.Color.white, light: '#333', hcDark: _base_common_color_js__WEBPACK_IMPORTED_MODULE_2__.Color.white, hcLight: _base_common_color_js__WEBPACK_IMPORTED_MODULE_2__.Color.white }, _nls_js__WEBPACK_IMPORTED_MODULE_4__.localize('badgeForeground', \"Badge foreground color. Badges are small information labels, e.g. for search results count.\"));\nconst scrollbarShadow = registerColor('scrollbar.shadow', { dark: '#000000', light: '#DDDDDD', hcDark: null, hcLight: null }, _nls_js__WEBPACK_IMPORTED_MODULE_4__.localize('scrollbarShadow', \"Scrollbar shadow to indicate that the view is scrolled.\"));\nconst scrollbarSliderBackground = registerColor('scrollbarSlider.background', { dark: _base_common_color_js__WEBPACK_IMPORTED_MODULE_2__.Color.fromHex('#797979').transparent(0.4), light: _base_common_color_js__WEBPACK_IMPORTED_MODULE_2__.Color.fromHex('#646464').transparent(0.4), hcDark: transparent(contrastBorder, 0.6), hcLight: transparent(contrastBorder, 0.4) }, _nls_js__WEBPACK_IMPORTED_MODULE_4__.localize('scrollbarSliderBackground', \"Scrollbar slider background color.\"));\nconst scrollbarSliderHoverBackground = registerColor('scrollbarSlider.hoverBackground', { dark: _base_common_color_js__WEBPACK_IMPORTED_MODULE_2__.Color.fromHex('#646464').transparent(0.7), light: _base_common_color_js__WEBPACK_IMPORTED_MODULE_2__.Color.fromHex('#646464').transparent(0.7), hcDark: transparent(contrastBorder, 0.8), hcLight: transparent(contrastBorder, 0.8) }, _nls_js__WEBPACK_IMPORTED_MODULE_4__.localize('scrollbarSliderHoverBackground', \"Scrollbar slider background color when hovering.\"));\nconst scrollbarSliderActiveBackground = registerColor('scrollbarSlider.activeBackground', { dark: _base_common_color_js__WEBPACK_IMPORTED_MODULE_2__.Color.fromHex('#BFBFBF').transparent(0.4), light: _base_common_color_js__WEBPACK_IMPORTED_MODULE_2__.Color.fromHex('#000000').transparent(0.6), hcDark: contrastBorder, hcLight: contrastBorder }, _nls_js__WEBPACK_IMPORTED_MODULE_4__.localize('scrollbarSliderActiveBackground', \"Scrollbar slider background color when clicked on.\"));\nconst progressBarBackground = registerColor('progressBar.background', { dark: _base_common_color_js__WEBPACK_IMPORTED_MODULE_2__.Color.fromHex('#0E70C0'), light: _base_common_color_js__WEBPACK_IMPORTED_MODULE_2__.Color.fromHex('#0E70C0'), hcDark: contrastBorder, hcLight: contrastBorder }, _nls_js__WEBPACK_IMPORTED_MODULE_4__.localize('progressBarBackground', \"Background color of the progress bar that can show for long running operations.\"));\nconst editorErrorBackground = registerColor('editorError.background', { dark: null, light: null, hcDark: null, hcLight: null }, _nls_js__WEBPACK_IMPORTED_MODULE_4__.localize('editorError.background', 'Background color of error text in the editor. The color must not be opaque so as not to hide underlying decorations.'), true);\nconst editorErrorForeground = registerColor('editorError.foreground', { dark: '#F14C4C', light: '#E51400', hcDark: '#F48771', hcLight: '#B5200D' }, _nls_js__WEBPACK_IMPORTED_MODULE_4__.localize('editorError.foreground', 'Foreground color of error squigglies in the editor.'));\nconst editorErrorBorder = registerColor('editorError.border', { dark: null, light: null, hcDark: _base_common_color_js__WEBPACK_IMPORTED_MODULE_2__.Color.fromHex('#E47777').transparent(0.8), hcLight: '#B5200D' }, _nls_js__WEBPACK_IMPORTED_MODULE_4__.localize('errorBorder', 'If set, color of double underlines for errors in the editor.'));\nconst editorWarningBackground = registerColor('editorWarning.background', { dark: null, light: null, hcDark: null, hcLight: null }, _nls_js__WEBPACK_IMPORTED_MODULE_4__.localize('editorWarning.background', 'Background color of warning text in the editor. The color must not be opaque so as not to hide underlying decorations.'), true);\nconst editorWarningForeground = registerColor('editorWarning.foreground', { dark: '#CCA700', light: '#BF8803', hcDark: '#FFD370', hcLight: '#895503' }, _nls_js__WEBPACK_IMPORTED_MODULE_4__.localize('editorWarning.foreground', 'Foreground color of warning squigglies in the editor.'));\nconst editorWarningBorder = registerColor('editorWarning.border', { dark: null, light: null, hcDark: _base_common_color_js__WEBPACK_IMPORTED_MODULE_2__.Color.fromHex('#FFCC00').transparent(0.8), hcLight: _base_common_color_js__WEBPACK_IMPORTED_MODULE_2__.Color.fromHex('#FFCC00').transparent(0.8) }, _nls_js__WEBPACK_IMPORTED_MODULE_4__.localize('warningBorder', 'If set, color of double underlines for warnings in the editor.'));\nconst editorInfoBackground = registerColor('editorInfo.background', { dark: null, light: null, hcDark: null, hcLight: null }, _nls_js__WEBPACK_IMPORTED_MODULE_4__.localize('editorInfo.background', 'Background color of info text in the editor. The color must not be opaque so as not to hide underlying decorations.'), true);\nconst editorInfoForeground = registerColor('editorInfo.foreground', { dark: '#3794FF', light: '#1a85ff', hcDark: '#3794FF', hcLight: '#1a85ff' }, _nls_js__WEBPACK_IMPORTED_MODULE_4__.localize('editorInfo.foreground', 'Foreground color of info squigglies in the editor.'));\nconst editorInfoBorder = registerColor('editorInfo.border', { dark: null, light: null, hcDark: _base_common_color_js__WEBPACK_IMPORTED_MODULE_2__.Color.fromHex('#3794FF').transparent(0.8), hcLight: '#292929' }, _nls_js__WEBPACK_IMPORTED_MODULE_4__.localize('infoBorder', 'If set, color of double underlines for infos in the editor.'));\nconst editorHintForeground = registerColor('editorHint.foreground', { dark: _base_common_color_js__WEBPACK_IMPORTED_MODULE_2__.Color.fromHex('#eeeeee').transparent(0.7), light: '#6c6c6c', hcDark: null, hcLight: null }, _nls_js__WEBPACK_IMPORTED_MODULE_4__.localize('editorHint.foreground', 'Foreground color of hint squigglies in the editor.'));\nconst editorHintBorder = registerColor('editorHint.border', { dark: null, light: null, hcDark: _base_common_color_js__WEBPACK_IMPORTED_MODULE_2__.Color.fromHex('#eeeeee').transparent(0.8), hcLight: '#292929' }, _nls_js__WEBPACK_IMPORTED_MODULE_4__.localize('hintBorder', 'If set, color of double underlines for hints in the editor.'));\nconst sashHoverBorder = registerColor('sash.hoverBorder', { dark: focusBorder, light: focusBorder, hcDark: focusBorder, hcLight: focusBorder }, _nls_js__WEBPACK_IMPORTED_MODULE_4__.localize('sashActiveBorder', \"Border color of active sashes.\"));\n/**\n * Editor background color.\n */\nconst editorBackground = registerColor('editor.background', { light: '#ffffff', dark: '#1E1E1E', hcDark: _base_common_color_js__WEBPACK_IMPORTED_MODULE_2__.Color.black, hcLight: _base_common_color_js__WEBPACK_IMPORTED_MODULE_2__.Color.white }, _nls_js__WEBPACK_IMPORTED_MODULE_4__.localize('editorBackground', \"Editor background color.\"));\n/**\n * Editor foreground color.\n */\nconst editorForeground = registerColor('editor.foreground', { light: '#333333', dark: '#BBBBBB', hcDark: _base_common_color_js__WEBPACK_IMPORTED_MODULE_2__.Color.white, hcLight: foreground }, _nls_js__WEBPACK_IMPORTED_MODULE_4__.localize('editorForeground', \"Editor default foreground color.\"));\n/**\n * Sticky scroll\n */\nconst editorStickyScrollBackground = registerColor('editorStickyScroll.background', { light: editorBackground, dark: editorBackground, hcDark: editorBackground, hcLight: editorBackground }, _nls_js__WEBPACK_IMPORTED_MODULE_4__.localize('editorStickyScrollBackground', \"Background color of sticky scroll in the editor\"));\nconst editorStickyScrollHoverBackground = registerColor('editorStickyScrollHover.background', { dark: '#2A2D2E', light: '#F0F0F0', hcDark: null, hcLight: _base_common_color_js__WEBPACK_IMPORTED_MODULE_2__.Color.fromHex('#0F4A85').transparent(0.1) }, _nls_js__WEBPACK_IMPORTED_MODULE_4__.localize('editorStickyScrollHoverBackground', \"Background color of sticky scroll on hover in the editor\"));\nconst editorStickyScrollBorder = registerColor('editorStickyScroll.border', { dark: null, light: null, hcDark: contrastBorder, hcLight: contrastBorder }, _nls_js__WEBPACK_IMPORTED_MODULE_4__.localize('editorStickyScrollBorder', \"Border color of sticky scroll in the editor\"));\nconst editorStickyScrollShadow = registerColor('editorStickyScroll.shadow', { dark: scrollbarShadow, light: scrollbarShadow, hcDark: scrollbarShadow, hcLight: scrollbarShadow }, _nls_js__WEBPACK_IMPORTED_MODULE_4__.localize('editorStickyScrollShadow', \" Shadow color of sticky scroll in the editor\"));\n/**\n * Editor widgets\n */\nconst editorWidgetBackground = registerColor('editorWidget.background', { dark: '#252526', light: '#F3F3F3', hcDark: '#0C141F', hcLight: _base_common_color_js__WEBPACK_IMPORTED_MODULE_2__.Color.white }, _nls_js__WEBPACK_IMPORTED_MODULE_4__.localize('editorWidgetBackground', 'Background color of editor widgets, such as find/replace.'));\nconst editorWidgetForeground = registerColor('editorWidget.foreground', { dark: foreground, light: foreground, hcDark: foreground, hcLight: foreground }, _nls_js__WEBPACK_IMPORTED_MODULE_4__.localize('editorWidgetForeground', 'Foreground color of editor widgets, such as find/replace.'));\nconst editorWidgetBorder = registerColor('editorWidget.border', { dark: '#454545', light: '#C8C8C8', hcDark: contrastBorder, hcLight: contrastBorder }, _nls_js__WEBPACK_IMPORTED_MODULE_4__.localize('editorWidgetBorder', 'Border color of editor widgets. The color is only used if the widget chooses to have a border and if the color is not overridden by a widget.'));\nconst editorWidgetResizeBorder = registerColor('editorWidget.resizeBorder', { light: null, dark: null, hcDark: null, hcLight: null }, _nls_js__WEBPACK_IMPORTED_MODULE_4__.localize('editorWidgetResizeBorder', \"Border color of the resize bar of editor widgets. The color is only used if the widget chooses to have a resize border and if the color is not overridden by a widget.\"));\n/**\n * Quick pick widget\n */\nconst quickInputBackground = registerColor('quickInput.background', { dark: editorWidgetBackground, light: editorWidgetBackground, hcDark: editorWidgetBackground, hcLight: editorWidgetBackground }, _nls_js__WEBPACK_IMPORTED_MODULE_4__.localize('pickerBackground', \"Quick picker background color. The quick picker widget is the container for pickers like the command palette.\"));\nconst quickInputForeground = registerColor('quickInput.foreground', { dark: editorWidgetForeground, light: editorWidgetForeground, hcDark: editorWidgetForeground, hcLight: editorWidgetForeground }, _nls_js__WEBPACK_IMPORTED_MODULE_4__.localize('pickerForeground', \"Quick picker foreground color. The quick picker widget is the container for pickers like the command palette.\"));\nconst quickInputTitleBackground = registerColor('quickInputTitle.background', { dark: new _base_common_color_js__WEBPACK_IMPORTED_MODULE_2__.Color(new _base_common_color_js__WEBPACK_IMPORTED_MODULE_2__.RGBA(255, 255, 255, 0.105)), light: new _base_common_color_js__WEBPACK_IMPORTED_MODULE_2__.Color(new _base_common_color_js__WEBPACK_IMPORTED_MODULE_2__.RGBA(0, 0, 0, 0.06)), hcDark: '#000000', hcLight: _base_common_color_js__WEBPACK_IMPORTED_MODULE_2__.Color.white }, _nls_js__WEBPACK_IMPORTED_MODULE_4__.localize('pickerTitleBackground', \"Quick picker title background color. The quick picker widget is the container for pickers like the command palette.\"));\nconst pickerGroupForeground = registerColor('pickerGroup.foreground', { dark: '#3794FF', light: '#0066BF', hcDark: _base_common_color_js__WEBPACK_IMPORTED_MODULE_2__.Color.white, hcLight: '#0F4A85' }, _nls_js__WEBPACK_IMPORTED_MODULE_4__.localize('pickerGroupForeground', \"Quick picker color for grouping labels.\"));\nconst pickerGroupBorder = registerColor('pickerGroup.border', { dark: '#3F3F46', light: '#CCCEDB', hcDark: _base_common_color_js__WEBPACK_IMPORTED_MODULE_2__.Color.white, hcLight: '#0F4A85' }, _nls_js__WEBPACK_IMPORTED_MODULE_4__.localize('pickerGroupBorder', \"Quick picker color for grouping borders.\"));\n/**\n * Keybinding label\n */\nconst keybindingLabelBackground = registerColor('keybindingLabel.background', { dark: new _base_common_color_js__WEBPACK_IMPORTED_MODULE_2__.Color(new _base_common_color_js__WEBPACK_IMPORTED_MODULE_2__.RGBA(128, 128, 128, 0.17)), light: new _base_common_color_js__WEBPACK_IMPORTED_MODULE_2__.Color(new _base_common_color_js__WEBPACK_IMPORTED_MODULE_2__.RGBA(221, 221, 221, 0.4)), hcDark: _base_common_color_js__WEBPACK_IMPORTED_MODULE_2__.Color.transparent, hcLight: _base_common_color_js__WEBPACK_IMPORTED_MODULE_2__.Color.transparent }, _nls_js__WEBPACK_IMPORTED_MODULE_4__.localize('keybindingLabelBackground', \"Keybinding label background color. The keybinding label is used to represent a keyboard shortcut.\"));\nconst keybindingLabelForeground = registerColor('keybindingLabel.foreground', { dark: _base_common_color_js__WEBPACK_IMPORTED_MODULE_2__.Color.fromHex('#CCCCCC'), light: _base_common_color_js__WEBPACK_IMPORTED_MODULE_2__.Color.fromHex('#555555'), hcDark: _base_common_color_js__WEBPACK_IMPORTED_MODULE_2__.Color.white, hcLight: foreground }, _nls_js__WEBPACK_IMPORTED_MODULE_4__.localize('keybindingLabelForeground', \"Keybinding label foreground color. The keybinding label is used to represent a keyboard shortcut.\"));\nconst keybindingLabelBorder = registerColor('keybindingLabel.border', { dark: new _base_common_color_js__WEBPACK_IMPORTED_MODULE_2__.Color(new _base_common_color_js__WEBPACK_IMPORTED_MODULE_2__.RGBA(51, 51, 51, 0.6)), light: new _base_common_color_js__WEBPACK_IMPORTED_MODULE_2__.Color(new _base_common_color_js__WEBPACK_IMPORTED_MODULE_2__.RGBA(204, 204, 204, 0.4)), hcDark: new _base_common_color_js__WEBPACK_IMPORTED_MODULE_2__.Color(new _base_common_color_js__WEBPACK_IMPORTED_MODULE_2__.RGBA(111, 195, 223)), hcLight: contrastBorder }, _nls_js__WEBPACK_IMPORTED_MODULE_4__.localize('keybindingLabelBorder', \"Keybinding label border color. The keybinding label is used to represent a keyboard shortcut.\"));\nconst keybindingLabelBottomBorder = registerColor('keybindingLabel.bottomBorder', { dark: new _base_common_color_js__WEBPACK_IMPORTED_MODULE_2__.Color(new _base_common_color_js__WEBPACK_IMPORTED_MODULE_2__.RGBA(68, 68, 68, 0.6)), light: new _base_common_color_js__WEBPACK_IMPORTED_MODULE_2__.Color(new _base_common_color_js__WEBPACK_IMPORTED_MODULE_2__.RGBA(187, 187, 187, 0.4)), hcDark: new _base_common_color_js__WEBPACK_IMPORTED_MODULE_2__.Color(new _base_common_color_js__WEBPACK_IMPORTED_MODULE_2__.RGBA(111, 195, 223)), hcLight: foreground }, _nls_js__WEBPACK_IMPORTED_MODULE_4__.localize('keybindingLabelBottomBorder', \"Keybinding label border bottom color. The keybinding label is used to represent a keyboard shortcut.\"));\n/**\n * Editor selection colors.\n */\nconst editorSelectionBackground = registerColor('editor.selectionBackground', { light: '#ADD6FF', dark: '#264F78', hcDark: '#f3f518', hcLight: '#0F4A85' }, _nls_js__WEBPACK_IMPORTED_MODULE_4__.localize('editorSelectionBackground', \"Color of the editor selection.\"));\nconst editorSelectionForeground = registerColor('editor.selectionForeground', { light: null, dark: null, hcDark: '#000000', hcLight: _base_common_color_js__WEBPACK_IMPORTED_MODULE_2__.Color.white }, _nls_js__WEBPACK_IMPORTED_MODULE_4__.localize('editorSelectionForeground', \"Color of the selected text for high contrast.\"));\nconst editorInactiveSelection = registerColor('editor.inactiveSelectionBackground', { light: transparent(editorSelectionBackground, 0.5), dark: transparent(editorSelectionBackground, 0.5), hcDark: transparent(editorSelectionBackground, 0.7), hcLight: transparent(editorSelectionBackground, 0.5) }, _nls_js__WEBPACK_IMPORTED_MODULE_4__.localize('editorInactiveSelection', \"Color of the selection in an inactive editor. The color must not be opaque so as not to hide underlying decorations.\"), true);\nconst editorSelectionHighlight = registerColor('editor.selectionHighlightBackground', { light: lessProminent(editorSelectionBackground, editorBackground, 0.3, 0.6), dark: lessProminent(editorSelectionBackground, editorBackground, 0.3, 0.6), hcDark: null, hcLight: null }, _nls_js__WEBPACK_IMPORTED_MODULE_4__.localize('editorSelectionHighlight', 'Color for regions with the same content as the selection. The color must not be opaque so as not to hide underlying decorations.'), true);\nconst editorSelectionHighlightBorder = registerColor('editor.selectionHighlightBorder', { light: null, dark: null, hcDark: activeContrastBorder, hcLight: activeContrastBorder }, _nls_js__WEBPACK_IMPORTED_MODULE_4__.localize('editorSelectionHighlightBorder', \"Border color for regions with the same content as the selection.\"));\n/**\n * Editor find match colors.\n */\nconst editorFindMatch = registerColor('editor.findMatchBackground', { light: '#A8AC94', dark: '#515C6A', hcDark: null, hcLight: null }, _nls_js__WEBPACK_IMPORTED_MODULE_4__.localize('editorFindMatch', \"Color of the current search match.\"));\nconst editorFindMatchHighlight = registerColor('editor.findMatchHighlightBackground', { light: '#EA5C0055', dark: '#EA5C0055', hcDark: null, hcLight: null }, _nls_js__WEBPACK_IMPORTED_MODULE_4__.localize('findMatchHighlight', \"Color of the other search matches. The color must not be opaque so as not to hide underlying decorations.\"), true);\nconst editorFindRangeHighlight = registerColor('editor.findRangeHighlightBackground', { dark: '#3a3d4166', light: '#b4b4b44d', hcDark: null, hcLight: null }, _nls_js__WEBPACK_IMPORTED_MODULE_4__.localize('findRangeHighlight', \"Color of the range limiting the search. The color must not be opaque so as not to hide underlying decorations.\"), true);\nconst editorFindMatchBorder = registerColor('editor.findMatchBorder', { light: null, dark: null, hcDark: activeContrastBorder, hcLight: activeContrastBorder }, _nls_js__WEBPACK_IMPORTED_MODULE_4__.localize('editorFindMatchBorder', \"Border color of the current search match.\"));\nconst editorFindMatchHighlightBorder = registerColor('editor.findMatchHighlightBorder', { light: null, dark: null, hcDark: activeContrastBorder, hcLight: activeContrastBorder }, _nls_js__WEBPACK_IMPORTED_MODULE_4__.localize('findMatchHighlightBorder', \"Border color of the other search matches.\"));\nconst editorFindRangeHighlightBorder = registerColor('editor.findRangeHighlightBorder', { dark: null, light: null, hcDark: transparent(activeContrastBorder, 0.4), hcLight: transparent(activeContrastBorder, 0.4) }, _nls_js__WEBPACK_IMPORTED_MODULE_4__.localize('findRangeHighlightBorder', \"Border color of the range limiting the search. The color must not be opaque so as not to hide underlying decorations.\"), true);\n/**\n * Search Editor query match colors.\n *\n * Distinct from normal editor find match to allow for better differentiation\n */\nconst searchEditorFindMatch = registerColor('searchEditor.findMatchBackground', { light: transparent(editorFindMatchHighlight, 0.66), dark: transparent(editorFindMatchHighlight, 0.66), hcDark: editorFindMatchHighlight, hcLight: editorFindMatchHighlight }, _nls_js__WEBPACK_IMPORTED_MODULE_4__.localize('searchEditor.queryMatch', \"Color of the Search Editor query matches.\"));\nconst searchEditorFindMatchBorder = registerColor('searchEditor.findMatchBorder', { light: transparent(editorFindMatchHighlightBorder, 0.66), dark: transparent(editorFindMatchHighlightBorder, 0.66), hcDark: editorFindMatchHighlightBorder, hcLight: editorFindMatchHighlightBorder }, _nls_js__WEBPACK_IMPORTED_MODULE_4__.localize('searchEditor.editorFindMatchBorder', \"Border color of the Search Editor query matches.\"));\n/**\n * Search Viewlet colors.\n */\nconst searchResultsInfoForeground = registerColor('search.resultsInfoForeground', { light: foreground, dark: transparent(foreground, 0.65), hcDark: foreground, hcLight: foreground }, _nls_js__WEBPACK_IMPORTED_MODULE_4__.localize('search.resultsInfoForeground', \"Color of the text in the search viewlet's completion message.\"));\n/**\n * Editor hover\n */\nconst editorHoverHighlight = registerColor('editor.hoverHighlightBackground', { light: '#ADD6FF26', dark: '#264f7840', hcDark: '#ADD6FF26', hcLight: null }, _nls_js__WEBPACK_IMPORTED_MODULE_4__.localize('hoverHighlight', 'Highlight below the word for which a hover is shown. The color must not be opaque so as not to hide underlying decorations.'), true);\nconst editorHoverBackground = registerColor('editorHoverWidget.background', { light: editorWidgetBackground, dark: editorWidgetBackground, hcDark: editorWidgetBackground, hcLight: editorWidgetBackground }, _nls_js__WEBPACK_IMPORTED_MODULE_4__.localize('hoverBackground', 'Background color of the editor hover.'));\nconst editorHoverForeground = registerColor('editorHoverWidget.foreground', { light: editorWidgetForeground, dark: editorWidgetForeground, hcDark: editorWidgetForeground, hcLight: editorWidgetForeground }, _nls_js__WEBPACK_IMPORTED_MODULE_4__.localize('hoverForeground', 'Foreground color of the editor hover.'));\nconst editorHoverBorder = registerColor('editorHoverWidget.border', { light: editorWidgetBorder, dark: editorWidgetBorder, hcDark: editorWidgetBorder, hcLight: editorWidgetBorder }, _nls_js__WEBPACK_IMPORTED_MODULE_4__.localize('hoverBorder', 'Border color of the editor hover.'));\nconst editorHoverStatusBarBackground = registerColor('editorHoverWidget.statusBarBackground', { dark: lighten(editorHoverBackground, 0.2), light: darken(editorHoverBackground, 0.05), hcDark: editorWidgetBackground, hcLight: editorWidgetBackground }, _nls_js__WEBPACK_IMPORTED_MODULE_4__.localize('statusBarBackground', \"Background color of the editor hover status bar.\"));\n/**\n * Editor link colors\n */\nconst editorActiveLinkForeground = registerColor('editorLink.activeForeground', { dark: '#4E94CE', light: _base_common_color_js__WEBPACK_IMPORTED_MODULE_2__.Color.blue, hcDark: _base_common_color_js__WEBPACK_IMPORTED_MODULE_2__.Color.cyan, hcLight: '#292929' }, _nls_js__WEBPACK_IMPORTED_MODULE_4__.localize('activeLinkForeground', 'Color of active links.'));\n/**\n * Inline hints\n */\nconst editorInlayHintForeground = registerColor('editorInlayHint.foreground', { dark: '#969696', light: '#969696', hcDark: _base_common_color_js__WEBPACK_IMPORTED_MODULE_2__.Color.white, hcLight: _base_common_color_js__WEBPACK_IMPORTED_MODULE_2__.Color.black }, _nls_js__WEBPACK_IMPORTED_MODULE_4__.localize('editorInlayHintForeground', 'Foreground color of inline hints'));\nconst editorInlayHintBackground = registerColor('editorInlayHint.background', { dark: transparent(badgeBackground, .10), light: transparent(badgeBackground, .10), hcDark: transparent(_base_common_color_js__WEBPACK_IMPORTED_MODULE_2__.Color.white, .10), hcLight: transparent(badgeBackground, .10) }, _nls_js__WEBPACK_IMPORTED_MODULE_4__.localize('editorInlayHintBackground', 'Background color of inline hints'));\nconst editorInlayHintTypeForeground = registerColor('editorInlayHint.typeForeground', { dark: editorInlayHintForeground, light: editorInlayHintForeground, hcDark: editorInlayHintForeground, hcLight: editorInlayHintForeground }, _nls_js__WEBPACK_IMPORTED_MODULE_4__.localize('editorInlayHintForegroundTypes', 'Foreground color of inline hints for types'));\nconst editorInlayHintTypeBackground = registerColor('editorInlayHint.typeBackground', { dark: editorInlayHintBackground, light: editorInlayHintBackground, hcDark: editorInlayHintBackground, hcLight: editorInlayHintBackground }, _nls_js__WEBPACK_IMPORTED_MODULE_4__.localize('editorInlayHintBackgroundTypes', 'Background color of inline hints for types'));\nconst editorInlayHintParameterForeground = registerColor('editorInlayHint.parameterForeground', { dark: editorInlayHintForeground, light: editorInlayHintForeground, hcDark: editorInlayHintForeground, hcLight: editorInlayHintForeground }, _nls_js__WEBPACK_IMPORTED_MODULE_4__.localize('editorInlayHintForegroundParameter', 'Foreground color of inline hints for parameters'));\nconst editorInlayHintParameterBackground = registerColor('editorInlayHint.parameterBackground', { dark: editorInlayHintBackground, light: editorInlayHintBackground, hcDark: editorInlayHintBackground, hcLight: editorInlayHintBackground }, _nls_js__WEBPACK_IMPORTED_MODULE_4__.localize('editorInlayHintBackgroundParameter', 'Background color of inline hints for parameters'));\n/**\n * Editor lightbulb icon colors\n */\nconst editorLightBulbForeground = registerColor('editorLightBulb.foreground', { dark: '#FFCC00', light: '#DDB100', hcDark: '#FFCC00', hcLight: '#007ACC' }, _nls_js__WEBPACK_IMPORTED_MODULE_4__.localize('editorLightBulbForeground', \"The color used for the lightbulb actions icon.\"));\nconst editorLightBulbAutoFixForeground = registerColor('editorLightBulbAutoFix.foreground', { dark: '#75BEFF', light: '#007ACC', hcDark: '#75BEFF', hcLight: '#007ACC' }, _nls_js__WEBPACK_IMPORTED_MODULE_4__.localize('editorLightBulbAutoFixForeground', \"The color used for the lightbulb auto fix actions icon.\"));\nconst editorLightBulbAiForeground = registerColor('editorLightBulbAi.foreground', { dark: editorLightBulbForeground, light: editorLightBulbForeground, hcDark: editorLightBulbForeground, hcLight: editorLightBulbForeground }, _nls_js__WEBPACK_IMPORTED_MODULE_4__.localize('editorLightBulbAiForeground', \"The color used for the lightbulb AI icon.\"));\n/**\n * Diff Editor Colors\n */\nconst defaultInsertColor = new _base_common_color_js__WEBPACK_IMPORTED_MODULE_2__.Color(new _base_common_color_js__WEBPACK_IMPORTED_MODULE_2__.RGBA(155, 185, 85, .2));\nconst defaultRemoveColor = new _base_common_color_js__WEBPACK_IMPORTED_MODULE_2__.Color(new _base_common_color_js__WEBPACK_IMPORTED_MODULE_2__.RGBA(255, 0, 0, .2));\nconst diffInserted = registerColor('diffEditor.insertedTextBackground', { dark: '#9ccc2c33', light: '#9ccc2c40', hcDark: null, hcLight: null }, _nls_js__WEBPACK_IMPORTED_MODULE_4__.localize('diffEditorInserted', 'Background color for text that got inserted. The color must not be opaque so as not to hide underlying decorations.'), true);\nconst diffRemoved = registerColor('diffEditor.removedTextBackground', { dark: '#ff000033', light: '#ff000033', hcDark: null, hcLight: null }, _nls_js__WEBPACK_IMPORTED_MODULE_4__.localize('diffEditorRemoved', 'Background color for text that got removed. The color must not be opaque so as not to hide underlying decorations.'), true);\nconst diffInsertedLine = registerColor('diffEditor.insertedLineBackground', { dark: defaultInsertColor, light: defaultInsertColor, hcDark: null, hcLight: null }, _nls_js__WEBPACK_IMPORTED_MODULE_4__.localize('diffEditorInsertedLines', 'Background color for lines that got inserted. The color must not be opaque so as not to hide underlying decorations.'), true);\nconst diffRemovedLine = registerColor('diffEditor.removedLineBackground', { dark: defaultRemoveColor, light: defaultRemoveColor, hcDark: null, hcLight: null }, _nls_js__WEBPACK_IMPORTED_MODULE_4__.localize('diffEditorRemovedLines', 'Background color for lines that got removed. The color must not be opaque so as not to hide underlying decorations.'), true);\nconst diffInsertedLineGutter = registerColor('diffEditorGutter.insertedLineBackground', { dark: null, light: null, hcDark: null, hcLight: null }, _nls_js__WEBPACK_IMPORTED_MODULE_4__.localize('diffEditorInsertedLineGutter', 'Background color for the margin where lines got inserted.'));\nconst diffRemovedLineGutter = registerColor('diffEditorGutter.removedLineBackground', { dark: null, light: null, hcDark: null, hcLight: null }, _nls_js__WEBPACK_IMPORTED_MODULE_4__.localize('diffEditorRemovedLineGutter', 'Background color for the margin where lines got removed.'));\nconst diffOverviewRulerInserted = registerColor('diffEditorOverview.insertedForeground', { dark: null, light: null, hcDark: null, hcLight: null }, _nls_js__WEBPACK_IMPORTED_MODULE_4__.localize('diffEditorOverviewInserted', 'Diff overview ruler foreground for inserted content.'));\nconst diffOverviewRulerRemoved = registerColor('diffEditorOverview.removedForeground', { dark: null, light: null, hcDark: null, hcLight: null }, _nls_js__WEBPACK_IMPORTED_MODULE_4__.localize('diffEditorOverviewRemoved', 'Diff overview ruler foreground for removed content.'));\nconst diffInsertedOutline = registerColor('diffEditor.insertedTextBorder', { dark: null, light: null, hcDark: '#33ff2eff', hcLight: '#374E06' }, _nls_js__WEBPACK_IMPORTED_MODULE_4__.localize('diffEditorInsertedOutline', 'Outline color for the text that got inserted.'));\nconst diffRemovedOutline = registerColor('diffEditor.removedTextBorder', { dark: null, light: null, hcDark: '#FF008F', hcLight: '#AD0707' }, _nls_js__WEBPACK_IMPORTED_MODULE_4__.localize('diffEditorRemovedOutline', 'Outline color for text that got removed.'));\nconst diffBorder = registerColor('diffEditor.border', { dark: null, light: null, hcDark: contrastBorder, hcLight: contrastBorder }, _nls_js__WEBPACK_IMPORTED_MODULE_4__.localize('diffEditorBorder', 'Border color between the two text editors.'));\nconst diffDiagonalFill = registerColor('diffEditor.diagonalFill', { dark: '#cccccc33', light: '#22222233', hcDark: null, hcLight: null }, _nls_js__WEBPACK_IMPORTED_MODULE_4__.localize('diffDiagonalFill', \"Color of the diff editor's diagonal fill. The diagonal fill is used in side-by-side diff views.\"));\nconst diffUnchangedRegionBackground = registerColor('diffEditor.unchangedRegionBackground', { dark: 'sideBar.background', light: 'sideBar.background', hcDark: 'sideBar.background', hcLight: 'sideBar.background' }, _nls_js__WEBPACK_IMPORTED_MODULE_4__.localize('diffEditor.unchangedRegionBackground', \"The background color of unchanged blocks in the diff editor.\"));\nconst diffUnchangedRegionForeground = registerColor('diffEditor.unchangedRegionForeground', { dark: 'foreground', light: 'foreground', hcDark: 'foreground', hcLight: 'foreground' }, _nls_js__WEBPACK_IMPORTED_MODULE_4__.localize('diffEditor.unchangedRegionForeground', \"The foreground color of unchanged blocks in the diff editor.\"));\nconst diffUnchangedTextBackground = registerColor('diffEditor.unchangedCodeBackground', { dark: '#74747429', light: '#b8b8b829', hcDark: null, hcLight: null }, _nls_js__WEBPACK_IMPORTED_MODULE_4__.localize('diffEditor.unchangedCodeBackground', \"The background color of unchanged code in the diff editor.\"));\n/**\n * List and tree colors\n */\nconst listFocusBackground = registerColor('list.focusBackground', { dark: null, light: null, hcDark: null, hcLight: null }, _nls_js__WEBPACK_IMPORTED_MODULE_4__.localize('listFocusBackground', \"List/Tree background color for the focused item when the list/tree is active. An active list/tree has keyboard focus, an inactive does not.\"));\nconst listFocusForeground = registerColor('list.focusForeground', { dark: null, light: null, hcDark: null, hcLight: null }, _nls_js__WEBPACK_IMPORTED_MODULE_4__.localize('listFocusForeground', \"List/Tree foreground color for the focused item when the list/tree is active. An active list/tree has keyboard focus, an inactive does not.\"));\nconst listFocusOutline = registerColor('list.focusOutline', { dark: focusBorder, light: focusBorder, hcDark: activeContrastBorder, hcLight: activeContrastBorder }, _nls_js__WEBPACK_IMPORTED_MODULE_4__.localize('listFocusOutline', \"List/Tree outline color for the focused item when the list/tree is active. An active list/tree has keyboard focus, an inactive does not.\"));\nconst listFocusAndSelectionOutline = registerColor('list.focusAndSelectionOutline', { dark: null, light: null, hcDark: null, hcLight: null }, _nls_js__WEBPACK_IMPORTED_MODULE_4__.localize('listFocusAndSelectionOutline', \"List/Tree outline color for the focused item when the list/tree is active and selected. An active list/tree has keyboard focus, an inactive does not.\"));\nconst listActiveSelectionBackground = registerColor('list.activeSelectionBackground', { dark: '#04395E', light: '#0060C0', hcDark: null, hcLight: _base_common_color_js__WEBPACK_IMPORTED_MODULE_2__.Color.fromHex('#0F4A85').transparent(0.1) }, _nls_js__WEBPACK_IMPORTED_MODULE_4__.localize('listActiveSelectionBackground', \"List/Tree background color for the selected item when the list/tree is active. An active list/tree has keyboard focus, an inactive does not.\"));\nconst listActiveSelectionForeground = registerColor('list.activeSelectionForeground', { dark: _base_common_color_js__WEBPACK_IMPORTED_MODULE_2__.Color.white, light: _base_common_color_js__WEBPACK_IMPORTED_MODULE_2__.Color.white, hcDark: null, hcLight: null }, _nls_js__WEBPACK_IMPORTED_MODULE_4__.localize('listActiveSelectionForeground', \"List/Tree foreground color for the selected item when the list/tree is active. An active list/tree has keyboard focus, an inactive does not.\"));\nconst listActiveSelectionIconForeground = registerColor('list.activeSelectionIconForeground', { dark: null, light: null, hcDark: null, hcLight: null }, _nls_js__WEBPACK_IMPORTED_MODULE_4__.localize('listActiveSelectionIconForeground', \"List/Tree icon foreground color for the selected item when the list/tree is active. An active list/tree has keyboard focus, an inactive does not.\"));\nconst listInactiveSelectionBackground = registerColor('list.inactiveSelectionBackground', { dark: '#37373D', light: '#E4E6F1', hcDark: null, hcLight: _base_common_color_js__WEBPACK_IMPORTED_MODULE_2__.Color.fromHex('#0F4A85').transparent(0.1) }, _nls_js__WEBPACK_IMPORTED_MODULE_4__.localize('listInactiveSelectionBackground', \"List/Tree background color for the selected item when the list/tree is inactive. An active list/tree has keyboard focus, an inactive does not.\"));\nconst listInactiveSelectionForeground = registerColor('list.inactiveSelectionForeground', { dark: null, light: null, hcDark: null, hcLight: null }, _nls_js__WEBPACK_IMPORTED_MODULE_4__.localize('listInactiveSelectionForeground', \"List/Tree foreground color for the selected item when the list/tree is inactive. An active list/tree has keyboard focus, an inactive does not.\"));\nconst listInactiveSelectionIconForeground = registerColor('list.inactiveSelectionIconForeground', { dark: null, light: null, hcDark: null, hcLight: null }, _nls_js__WEBPACK_IMPORTED_MODULE_4__.localize('listInactiveSelectionIconForeground', \"List/Tree icon foreground color for the selected item when the list/tree is inactive. An active list/tree has keyboard focus, an inactive does not.\"));\nconst listInactiveFocusBackground = registerColor('list.inactiveFocusBackground', { dark: null, light: null, hcDark: null, hcLight: null }, _nls_js__WEBPACK_IMPORTED_MODULE_4__.localize('listInactiveFocusBackground', \"List/Tree background color for the focused item when the list/tree is inactive. An active list/tree has keyboard focus, an inactive does not.\"));\nconst listInactiveFocusOutline = registerColor('list.inactiveFocusOutline', { dark: null, light: null, hcDark: null, hcLight: null }, _nls_js__WEBPACK_IMPORTED_MODULE_4__.localize('listInactiveFocusOutline', \"List/Tree outline color for the focused item when the list/tree is inactive. An active list/tree has keyboard focus, an inactive does not.\"));\nconst listHoverBackground = registerColor('list.hoverBackground', { dark: '#2A2D2E', light: '#F0F0F0', hcDark: _base_common_color_js__WEBPACK_IMPORTED_MODULE_2__.Color.white.transparent(0.1), hcLight: _base_common_color_js__WEBPACK_IMPORTED_MODULE_2__.Color.fromHex('#0F4A85').transparent(0.1) }, _nls_js__WEBPACK_IMPORTED_MODULE_4__.localize('listHoverBackground', \"List/Tree background when hovering over items using the mouse.\"));\nconst listHoverForeground = registerColor('list.hoverForeground', { dark: null, light: null, hcDark: null, hcLight: null }, _nls_js__WEBPACK_IMPORTED_MODULE_4__.localize('listHoverForeground', \"List/Tree foreground when hovering over items using the mouse.\"));\nconst listDropOverBackground = registerColor('list.dropBackground', { dark: '#062F4A', light: '#D6EBFF', hcDark: null, hcLight: null }, _nls_js__WEBPACK_IMPORTED_MODULE_4__.localize('listDropBackground', \"List/Tree drag and drop background when moving items over other items when using the mouse.\"));\nconst listDropBetweenBackground = registerColor('list.dropBetweenBackground', { dark: iconForeground, light: iconForeground, hcDark: null, hcLight: null }, _nls_js__WEBPACK_IMPORTED_MODULE_4__.localize('listDropBetweenBackground', \"List/Tree drag and drop border color when moving items between items when using the mouse.\"));\nconst listHighlightForeground = registerColor('list.highlightForeground', { dark: '#2AAAFF', light: '#0066BF', hcDark: focusBorder, hcLight: focusBorder }, _nls_js__WEBPACK_IMPORTED_MODULE_4__.localize('highlight', 'List/Tree foreground color of the match highlights when searching inside the list/tree.'));\nconst listFocusHighlightForeground = registerColor('list.focusHighlightForeground', { dark: listHighlightForeground, light: ifDefinedThenElse(listActiveSelectionBackground, listHighlightForeground, '#BBE7FF'), hcDark: listHighlightForeground, hcLight: listHighlightForeground }, _nls_js__WEBPACK_IMPORTED_MODULE_4__.localize('listFocusHighlightForeground', 'List/Tree foreground color of the match highlights on actively focused items when searching inside the list/tree.'));\nconst listInvalidItemForeground = registerColor('list.invalidItemForeground', { dark: '#B89500', light: '#B89500', hcDark: '#B89500', hcLight: '#B5200D' }, _nls_js__WEBPACK_IMPORTED_MODULE_4__.localize('invalidItemForeground', 'List/Tree foreground color for invalid items, for example an unresolved root in explorer.'));\nconst listErrorForeground = registerColor('list.errorForeground', { dark: '#F88070', light: '#B01011', hcDark: null, hcLight: null }, _nls_js__WEBPACK_IMPORTED_MODULE_4__.localize('listErrorForeground', 'Foreground color of list items containing errors.'));\nconst listWarningForeground = registerColor('list.warningForeground', { dark: '#CCA700', light: '#855F00', hcDark: null, hcLight: null }, _nls_js__WEBPACK_IMPORTED_MODULE_4__.localize('listWarningForeground', 'Foreground color of list items containing warnings.'));\nconst listFilterWidgetBackground = registerColor('listFilterWidget.background', { light: darken(editorWidgetBackground, 0), dark: lighten(editorWidgetBackground, 0), hcDark: editorWidgetBackground, hcLight: editorWidgetBackground }, _nls_js__WEBPACK_IMPORTED_MODULE_4__.localize('listFilterWidgetBackground', 'Background color of the type filter widget in lists and trees.'));\nconst listFilterWidgetOutline = registerColor('listFilterWidget.outline', { dark: _base_common_color_js__WEBPACK_IMPORTED_MODULE_2__.Color.transparent, light: _base_common_color_js__WEBPACK_IMPORTED_MODULE_2__.Color.transparent, hcDark: '#f38518', hcLight: '#007ACC' }, _nls_js__WEBPACK_IMPORTED_MODULE_4__.localize('listFilterWidgetOutline', 'Outline color of the type filter widget in lists and trees.'));\nconst listFilterWidgetNoMatchesOutline = registerColor('listFilterWidget.noMatchesOutline', { dark: '#BE1100', light: '#BE1100', hcDark: contrastBorder, hcLight: contrastBorder }, _nls_js__WEBPACK_IMPORTED_MODULE_4__.localize('listFilterWidgetNoMatchesOutline', 'Outline color of the type filter widget in lists and trees, when there are no matches.'));\nconst listFilterWidgetShadow = registerColor('listFilterWidget.shadow', { dark: widgetShadow, light: widgetShadow, hcDark: widgetShadow, hcLight: widgetShadow }, _nls_js__WEBPACK_IMPORTED_MODULE_4__.localize('listFilterWidgetShadow', 'Shadow color of the type filter widget in lists and trees.'));\nconst listFilterMatchHighlight = registerColor('list.filterMatchBackground', { dark: editorFindMatchHighlight, light: editorFindMatchHighlight, hcDark: null, hcLight: null }, _nls_js__WEBPACK_IMPORTED_MODULE_4__.localize('listFilterMatchHighlight', 'Background color of the filtered match.'));\nconst listFilterMatchHighlightBorder = registerColor('list.filterMatchBorder', { dark: editorFindMatchHighlightBorder, light: editorFindMatchHighlightBorder, hcDark: contrastBorder, hcLight: activeContrastBorder }, _nls_js__WEBPACK_IMPORTED_MODULE_4__.localize('listFilterMatchHighlightBorder', 'Border color of the filtered match.'));\nconst treeIndentGuidesStroke = registerColor('tree.indentGuidesStroke', { dark: '#585858', light: '#a9a9a9', hcDark: '#a9a9a9', hcLight: '#a5a5a5' }, _nls_js__WEBPACK_IMPORTED_MODULE_4__.localize('treeIndentGuidesStroke', \"Tree stroke color for the indentation guides.\"));\nconst treeInactiveIndentGuidesStroke = registerColor('tree.inactiveIndentGuidesStroke', { dark: transparent(treeIndentGuidesStroke, 0.4), light: transparent(treeIndentGuidesStroke, 0.4), hcDark: transparent(treeIndentGuidesStroke, 0.4), hcLight: transparent(treeIndentGuidesStroke, 0.4) }, _nls_js__WEBPACK_IMPORTED_MODULE_4__.localize('treeInactiveIndentGuidesStroke', \"Tree stroke color for the indentation guides that are not active.\"));\nconst tableColumnsBorder = registerColor('tree.tableColumnsBorder', { dark: '#CCCCCC20', light: '#61616120', hcDark: null, hcLight: null }, _nls_js__WEBPACK_IMPORTED_MODULE_4__.localize('tableColumnsBorder', \"Table border color between columns.\"));\nconst tableOddRowsBackgroundColor = registerColor('tree.tableOddRowsBackground', { dark: transparent(foreground, 0.04), light: transparent(foreground, 0.04), hcDark: null, hcLight: null }, _nls_js__WEBPACK_IMPORTED_MODULE_4__.localize('tableOddRowsBackgroundColor', \"Background color for odd table rows.\"));\nconst listDeemphasizedForeground = registerColor('list.deemphasizedForeground', { dark: '#8C8C8C', light: '#8E8E90', hcDark: '#A7A8A9', hcLight: '#666666' }, _nls_js__WEBPACK_IMPORTED_MODULE_4__.localize('listDeemphasizedForeground', \"List/Tree foreground color for items that are deemphasized. \"));\n/**\n * Checkboxes\n */\nconst checkboxBackground = registerColor('checkbox.background', { dark: selectBackground, light: selectBackground, hcDark: selectBackground, hcLight: selectBackground }, _nls_js__WEBPACK_IMPORTED_MODULE_4__.localize('checkbox.background', \"Background color of checkbox widget.\"));\nconst checkboxSelectBackground = registerColor('checkbox.selectBackground', { dark: editorWidgetBackground, light: editorWidgetBackground, hcDark: editorWidgetBackground, hcLight: editorWidgetBackground }, _nls_js__WEBPACK_IMPORTED_MODULE_4__.localize('checkbox.select.background', \"Background color of checkbox widget when the element it's in is selected.\"));\nconst checkboxForeground = registerColor('checkbox.foreground', { dark: selectForeground, light: selectForeground, hcDark: selectForeground, hcLight: selectForeground }, _nls_js__WEBPACK_IMPORTED_MODULE_4__.localize('checkbox.foreground', \"Foreground color of checkbox widget.\"));\nconst checkboxBorder = registerColor('checkbox.border', { dark: selectBorder, light: selectBorder, hcDark: selectBorder, hcLight: selectBorder }, _nls_js__WEBPACK_IMPORTED_MODULE_4__.localize('checkbox.border', \"Border color of checkbox widget.\"));\nconst checkboxSelectBorder = registerColor('checkbox.selectBorder', { dark: iconForeground, light: iconForeground, hcDark: iconForeground, hcLight: iconForeground }, _nls_js__WEBPACK_IMPORTED_MODULE_4__.localize('checkbox.select.border', \"Border color of checkbox widget when the element it's in is selected.\"));\n/**\n * Quick pick widget (dependent on List and tree colors)\n */\nconst _deprecatedQuickInputListFocusBackground = registerColor('quickInput.list.focusBackground', { dark: null, light: null, hcDark: null, hcLight: null }, '', undefined, _nls_js__WEBPACK_IMPORTED_MODULE_4__.localize('quickInput.list.focusBackground deprecation', \"Please use quickInputList.focusBackground instead\"));\nconst quickInputListFocusForeground = registerColor('quickInputList.focusForeground', { dark: listActiveSelectionForeground, light: listActiveSelectionForeground, hcDark: listActiveSelectionForeground, hcLight: listActiveSelectionForeground }, _nls_js__WEBPACK_IMPORTED_MODULE_4__.localize('quickInput.listFocusForeground', \"Quick picker foreground color for the focused item.\"));\nconst quickInputListFocusIconForeground = registerColor('quickInputList.focusIconForeground', { dark: listActiveSelectionIconForeground, light: listActiveSelectionIconForeground, hcDark: listActiveSelectionIconForeground, hcLight: listActiveSelectionIconForeground }, _nls_js__WEBPACK_IMPORTED_MODULE_4__.localize('quickInput.listFocusIconForeground', \"Quick picker icon foreground color for the focused item.\"));\nconst quickInputListFocusBackground = registerColor('quickInputList.focusBackground', { dark: oneOf(_deprecatedQuickInputListFocusBackground, listActiveSelectionBackground), light: oneOf(_deprecatedQuickInputListFocusBackground, listActiveSelectionBackground), hcDark: null, hcLight: null }, _nls_js__WEBPACK_IMPORTED_MODULE_4__.localize('quickInput.listFocusBackground', \"Quick picker background color for the focused item.\"));\n/**\n * Menu colors\n */\nconst menuBorder = registerColor('menu.border', { dark: null, light: null, hcDark: contrastBorder, hcLight: contrastBorder }, _nls_js__WEBPACK_IMPORTED_MODULE_4__.localize('menuBorder', \"Border color of menus.\"));\nconst menuForeground = registerColor('menu.foreground', { dark: selectForeground, light: selectForeground, hcDark: selectForeground, hcLight: selectForeground }, _nls_js__WEBPACK_IMPORTED_MODULE_4__.localize('menuForeground', \"Foreground color of menu items.\"));\nconst menuBackground = registerColor('menu.background', { dark: selectBackground, light: selectBackground, hcDark: selectBackground, hcLight: selectBackground }, _nls_js__WEBPACK_IMPORTED_MODULE_4__.localize('menuBackground', \"Background color of menu items.\"));\nconst menuSelectionForeground = registerColor('menu.selectionForeground', { dark: listActiveSelectionForeground, light: listActiveSelectionForeground, hcDark: listActiveSelectionForeground, hcLight: listActiveSelectionForeground }, _nls_js__WEBPACK_IMPORTED_MODULE_4__.localize('menuSelectionForeground', \"Foreground color of the selected menu item in menus.\"));\nconst menuSelectionBackground = registerColor('menu.selectionBackground', { dark: listActiveSelectionBackground, light: listActiveSelectionBackground, hcDark: listActiveSelectionBackground, hcLight: listActiveSelectionBackground }, _nls_js__WEBPACK_IMPORTED_MODULE_4__.localize('menuSelectionBackground', \"Background color of the selected menu item in menus.\"));\nconst menuSelectionBorder = registerColor('menu.selectionBorder', { dark: null, light: null, hcDark: activeContrastBorder, hcLight: activeContrastBorder }, _nls_js__WEBPACK_IMPORTED_MODULE_4__.localize('menuSelectionBorder', \"Border color of the selected menu item in menus.\"));\nconst menuSeparatorBackground = registerColor('menu.separatorBackground', { dark: '#606060', light: '#D4D4D4', hcDark: contrastBorder, hcLight: contrastBorder }, _nls_js__WEBPACK_IMPORTED_MODULE_4__.localize('menuSeparatorBackground', \"Color of a separator menu item in menus.\"));\n/**\n * Toolbar colors\n */\nconst toolbarHoverBackground = registerColor('toolbar.hoverBackground', { dark: '#5a5d5e50', light: '#b8b8b850', hcDark: null, hcLight: null }, _nls_js__WEBPACK_IMPORTED_MODULE_4__.localize('toolbarHoverBackground', \"Toolbar background when hovering over actions using the mouse\"));\nconst toolbarHoverOutline = registerColor('toolbar.hoverOutline', { dark: null, light: null, hcDark: activeContrastBorder, hcLight: activeContrastBorder }, _nls_js__WEBPACK_IMPORTED_MODULE_4__.localize('toolbarHoverOutline', \"Toolbar outline when hovering over actions using the mouse\"));\nconst toolbarActiveBackground = registerColor('toolbar.activeBackground', { dark: lighten(toolbarHoverBackground, 0.1), light: darken(toolbarHoverBackground, 0.1), hcDark: null, hcLight: null }, _nls_js__WEBPACK_IMPORTED_MODULE_4__.localize('toolbarActiveBackground', \"Toolbar background when holding the mouse over actions\"));\n/**\n * Snippet placeholder colors\n */\nconst snippetTabstopHighlightBackground = registerColor('editor.snippetTabstopHighlightBackground', { dark: new _base_common_color_js__WEBPACK_IMPORTED_MODULE_2__.Color(new _base_common_color_js__WEBPACK_IMPORTED_MODULE_2__.RGBA(124, 124, 124, 0.3)), light: new _base_common_color_js__WEBPACK_IMPORTED_MODULE_2__.Color(new _base_common_color_js__WEBPACK_IMPORTED_MODULE_2__.RGBA(10, 50, 100, 0.2)), hcDark: new _base_common_color_js__WEBPACK_IMPORTED_MODULE_2__.Color(new _base_common_color_js__WEBPACK_IMPORTED_MODULE_2__.RGBA(124, 124, 124, 0.3)), hcLight: new _base_common_color_js__WEBPACK_IMPORTED_MODULE_2__.Color(new _base_common_color_js__WEBPACK_IMPORTED_MODULE_2__.RGBA(10, 50, 100, 0.2)) }, _nls_js__WEBPACK_IMPORTED_MODULE_4__.localize('snippetTabstopHighlightBackground', \"Highlight background color of a snippet tabstop.\"));\nconst snippetTabstopHighlightBorder = registerColor('editor.snippetTabstopHighlightBorder', { dark: null, light: null, hcDark: null, hcLight: null }, _nls_js__WEBPACK_IMPORTED_MODULE_4__.localize('snippetTabstopHighlightBorder', \"Highlight border color of a snippet tabstop.\"));\nconst snippetFinalTabstopHighlightBackground = registerColor('editor.snippetFinalTabstopHighlightBackground', { dark: null, light: null, hcDark: null, hcLight: null }, _nls_js__WEBPACK_IMPORTED_MODULE_4__.localize('snippetFinalTabstopHighlightBackground', \"Highlight background color of the final tabstop of a snippet.\"));\nconst snippetFinalTabstopHighlightBorder = registerColor('editor.snippetFinalTabstopHighlightBorder', { dark: '#525252', light: new _base_common_color_js__WEBPACK_IMPORTED_MODULE_2__.Color(new _base_common_color_js__WEBPACK_IMPORTED_MODULE_2__.RGBA(10, 50, 100, 0.5)), hcDark: '#525252', hcLight: '#292929' }, _nls_js__WEBPACK_IMPORTED_MODULE_4__.localize('snippetFinalTabstopHighlightBorder', \"Highlight border color of the final tabstop of a snippet.\"));\n/**\n * Breadcrumb colors\n */\nconst breadcrumbsForeground = registerColor('breadcrumb.foreground', { light: transparent(foreground, 0.8), dark: transparent(foreground, 0.8), hcDark: transparent(foreground, 0.8), hcLight: transparent(foreground, 0.8) }, _nls_js__WEBPACK_IMPORTED_MODULE_4__.localize('breadcrumbsFocusForeground', \"Color of focused breadcrumb items.\"));\nconst breadcrumbsBackground = registerColor('breadcrumb.background', { light: editorBackground, dark: editorBackground, hcDark: editorBackground, hcLight: editorBackground }, _nls_js__WEBPACK_IMPORTED_MODULE_4__.localize('breadcrumbsBackground', \"Background color of breadcrumb items.\"));\nconst breadcrumbsFocusForeground = registerColor('breadcrumb.focusForeground', { light: darken(foreground, 0.2), dark: lighten(foreground, 0.1), hcDark: lighten(foreground, 0.1), hcLight: lighten(foreground, 0.1) }, _nls_js__WEBPACK_IMPORTED_MODULE_4__.localize('breadcrumbsFocusForeground', \"Color of focused breadcrumb items.\"));\nconst breadcrumbsActiveSelectionForeground = registerColor('breadcrumb.activeSelectionForeground', { light: darken(foreground, 0.2), dark: lighten(foreground, 0.1), hcDark: lighten(foreground, 0.1), hcLight: lighten(foreground, 0.1) }, _nls_js__WEBPACK_IMPORTED_MODULE_4__.localize('breadcrumbsSelectedForeground', \"Color of selected breadcrumb items.\"));\nconst breadcrumbsPickerBackground = registerColor('breadcrumbPicker.background', { light: editorWidgetBackground, dark: editorWidgetBackground, hcDark: editorWidgetBackground, hcLight: editorWidgetBackground }, _nls_js__WEBPACK_IMPORTED_MODULE_4__.localize('breadcrumbsSelectedBackground', \"Background color of breadcrumb item picker.\"));\n/**\n * Merge-conflict colors\n */\nconst headerTransparency = 0.5;\nconst currentBaseColor = _base_common_color_js__WEBPACK_IMPORTED_MODULE_2__.Color.fromHex('#40C8AE').transparent(headerTransparency);\nconst incomingBaseColor = _base_common_color_js__WEBPACK_IMPORTED_MODULE_2__.Color.fromHex('#40A6FF').transparent(headerTransparency);\nconst commonBaseColor = _base_common_color_js__WEBPACK_IMPORTED_MODULE_2__.Color.fromHex('#606060').transparent(0.4);\nconst contentTransparency = 0.4;\nconst rulerTransparency = 1;\nconst mergeCurrentHeaderBackground = registerColor('merge.currentHeaderBackground', { dark: currentBaseColor, light: currentBaseColor, hcDark: null, hcLight: null }, _nls_js__WEBPACK_IMPORTED_MODULE_4__.localize('mergeCurrentHeaderBackground', 'Current header background in inline merge-conflicts. The color must not be opaque so as not to hide underlying decorations.'), true);\nconst mergeCurrentContentBackground = registerColor('merge.currentContentBackground', { dark: transparent(mergeCurrentHeaderBackground, contentTransparency), light: transparent(mergeCurrentHeaderBackground, contentTransparency), hcDark: transparent(mergeCurrentHeaderBackground, contentTransparency), hcLight: transparent(mergeCurrentHeaderBackground, contentTransparency) }, _nls_js__WEBPACK_IMPORTED_MODULE_4__.localize('mergeCurrentContentBackground', 'Current content background in inline merge-conflicts. The color must not be opaque so as not to hide underlying decorations.'), true);\nconst mergeIncomingHeaderBackground = registerColor('merge.incomingHeaderBackground', { dark: incomingBaseColor, light: incomingBaseColor, hcDark: null, hcLight: null }, _nls_js__WEBPACK_IMPORTED_MODULE_4__.localize('mergeIncomingHeaderBackground', 'Incoming header background in inline merge-conflicts. The color must not be opaque so as not to hide underlying decorations.'), true);\nconst mergeIncomingContentBackground = registerColor('merge.incomingContentBackground', { dark: transparent(mergeIncomingHeaderBackground, contentTransparency), light: transparent(mergeIncomingHeaderBackground, contentTransparency), hcDark: transparent(mergeIncomingHeaderBackground, contentTransparency), hcLight: transparent(mergeIncomingHeaderBackground, contentTransparency) }, _nls_js__WEBPACK_IMPORTED_MODULE_4__.localize('mergeIncomingContentBackground', 'Incoming content background in inline merge-conflicts. The color must not be opaque so as not to hide underlying decorations.'), true);\nconst mergeCommonHeaderBackground = registerColor('merge.commonHeaderBackground', { dark: commonBaseColor, light: commonBaseColor, hcDark: null, hcLight: null }, _nls_js__WEBPACK_IMPORTED_MODULE_4__.localize('mergeCommonHeaderBackground', 'Common ancestor header background in inline merge-conflicts. The color must not be opaque so as not to hide underlying decorations.'), true);\nconst mergeCommonContentBackground = registerColor('merge.commonContentBackground', { dark: transparent(mergeCommonHeaderBackground, contentTransparency), light: transparent(mergeCommonHeaderBackground, contentTransparency), hcDark: transparent(mergeCommonHeaderBackground, contentTransparency), hcLight: transparent(mergeCommonHeaderBackground, contentTransparency) }, _nls_js__WEBPACK_IMPORTED_MODULE_4__.localize('mergeCommonContentBackground', 'Common ancestor content background in inline merge-conflicts. The color must not be opaque so as not to hide underlying decorations.'), true);\nconst mergeBorder = registerColor('merge.border', { dark: null, light: null, hcDark: '#C3DF6F', hcLight: '#007ACC' }, _nls_js__WEBPACK_IMPORTED_MODULE_4__.localize('mergeBorder', 'Border color on headers and the splitter in inline merge-conflicts.'));\nconst overviewRulerCurrentContentForeground = registerColor('editorOverviewRuler.currentContentForeground', { dark: transparent(mergeCurrentHeaderBackground, rulerTransparency), light: transparent(mergeCurrentHeaderBackground, rulerTransparency), hcDark: mergeBorder, hcLight: mergeBorder }, _nls_js__WEBPACK_IMPORTED_MODULE_4__.localize('overviewRulerCurrentContentForeground', 'Current overview ruler foreground for inline merge-conflicts.'));\nconst overviewRulerIncomingContentForeground = registerColor('editorOverviewRuler.incomingContentForeground', { dark: transparent(mergeIncomingHeaderBackground, rulerTransparency), light: transparent(mergeIncomingHeaderBackground, rulerTransparency), hcDark: mergeBorder, hcLight: mergeBorder }, _nls_js__WEBPACK_IMPORTED_MODULE_4__.localize('overviewRulerIncomingContentForeground', 'Incoming overview ruler foreground for inline merge-conflicts.'));\nconst overviewRulerCommonContentForeground = registerColor('editorOverviewRuler.commonContentForeground', { dark: transparent(mergeCommonHeaderBackground, rulerTransparency), light: transparent(mergeCommonHeaderBackground, rulerTransparency), hcDark: mergeBorder, hcLight: mergeBorder }, _nls_js__WEBPACK_IMPORTED_MODULE_4__.localize('overviewRulerCommonContentForeground', 'Common ancestor overview ruler foreground for inline merge-conflicts.'));\nconst overviewRulerFindMatchForeground = registerColor('editorOverviewRuler.findMatchForeground', { dark: '#d186167e', light: '#d186167e', hcDark: '#AB5A00', hcLight: '' }, _nls_js__WEBPACK_IMPORTED_MODULE_4__.localize('overviewRulerFindMatchForeground', 'Overview ruler marker color for find matches. The color must not be opaque so as not to hide underlying decorations.'), true);\nconst overviewRulerSelectionHighlightForeground = registerColor('editorOverviewRuler.selectionHighlightForeground', { dark: '#A0A0A0CC', light: '#A0A0A0CC', hcDark: '#A0A0A0CC', hcLight: '#A0A0A0CC' }, _nls_js__WEBPACK_IMPORTED_MODULE_4__.localize('overviewRulerSelectionHighlightForeground', 'Overview ruler marker color for selection highlights. The color must not be opaque so as not to hide underlying decorations.'), true);\nconst minimapFindMatch = registerColor('minimap.findMatchHighlight', { light: '#d18616', dark: '#d18616', hcDark: '#AB5A00', hcLight: '#0F4A85' }, _nls_js__WEBPACK_IMPORTED_MODULE_4__.localize('minimapFindMatchHighlight', 'Minimap marker color for find matches.'), true);\nconst minimapSelectionOccurrenceHighlight = registerColor('minimap.selectionOccurrenceHighlight', { light: '#c9c9c9', dark: '#676767', hcDark: '#ffffff', hcLight: '#0F4A85' }, _nls_js__WEBPACK_IMPORTED_MODULE_4__.localize('minimapSelectionOccurrenceHighlight', 'Minimap marker color for repeating editor selections.'), true);\nconst minimapSelection = registerColor('minimap.selectionHighlight', { light: '#ADD6FF', dark: '#264F78', hcDark: '#ffffff', hcLight: '#0F4A85' }, _nls_js__WEBPACK_IMPORTED_MODULE_4__.localize('minimapSelectionHighlight', 'Minimap marker color for the editor selection.'), true);\nconst minimapInfo = registerColor('minimap.infoHighlight', { dark: editorInfoForeground, light: editorInfoForeground, hcDark: editorInfoBorder, hcLight: editorInfoBorder }, _nls_js__WEBPACK_IMPORTED_MODULE_4__.localize('minimapInfo', 'Minimap marker color for infos.'));\nconst minimapWarning = registerColor('minimap.warningHighlight', { dark: editorWarningForeground, light: editorWarningForeground, hcDark: editorWarningBorder, hcLight: editorWarningBorder }, _nls_js__WEBPACK_IMPORTED_MODULE_4__.localize('overviewRuleWarning', 'Minimap marker color for warnings.'));\nconst minimapError = registerColor('minimap.errorHighlight', { dark: new _base_common_color_js__WEBPACK_IMPORTED_MODULE_2__.Color(new _base_common_color_js__WEBPACK_IMPORTED_MODULE_2__.RGBA(255, 18, 18, 0.7)), light: new _base_common_color_js__WEBPACK_IMPORTED_MODULE_2__.Color(new _base_common_color_js__WEBPACK_IMPORTED_MODULE_2__.RGBA(255, 18, 18, 0.7)), hcDark: new _base_common_color_js__WEBPACK_IMPORTED_MODULE_2__.Color(new _base_common_color_js__WEBPACK_IMPORTED_MODULE_2__.RGBA(255, 50, 50, 1)), hcLight: '#B5200D' }, _nls_js__WEBPACK_IMPORTED_MODULE_4__.localize('minimapError', 'Minimap marker color for errors.'));\nconst minimapBackground = registerColor('minimap.background', { dark: null, light: null, hcDark: null, hcLight: null }, _nls_js__WEBPACK_IMPORTED_MODULE_4__.localize('minimapBackground', \"Minimap background color.\"));\nconst minimapForegroundOpacity = registerColor('minimap.foregroundOpacity', { dark: _base_common_color_js__WEBPACK_IMPORTED_MODULE_2__.Color.fromHex('#000f'), light: _base_common_color_js__WEBPACK_IMPORTED_MODULE_2__.Color.fromHex('#000f'), hcDark: _base_common_color_js__WEBPACK_IMPORTED_MODULE_2__.Color.fromHex('#000f'), hcLight: _base_common_color_js__WEBPACK_IMPORTED_MODULE_2__.Color.fromHex('#000f') }, _nls_js__WEBPACK_IMPORTED_MODULE_4__.localize('minimapForegroundOpacity', 'Opacity of foreground elements rendered in the minimap. For example, \"#000000c0\" will render the elements with 75% opacity.'));\nconst minimapSliderBackground = registerColor('minimapSlider.background', { light: transparent(scrollbarSliderBackground, 0.5), dark: transparent(scrollbarSliderBackground, 0.5), hcDark: transparent(scrollbarSliderBackground, 0.5), hcLight: transparent(scrollbarSliderBackground, 0.5) }, _nls_js__WEBPACK_IMPORTED_MODULE_4__.localize('minimapSliderBackground', \"Minimap slider background color.\"));\nconst minimapSliderHoverBackground = registerColor('minimapSlider.hoverBackground', { light: transparent(scrollbarSliderHoverBackground, 0.5), dark: transparent(scrollbarSliderHoverBackground, 0.5), hcDark: transparent(scrollbarSliderHoverBackground, 0.5), hcLight: transparent(scrollbarSliderHoverBackground, 0.5) }, _nls_js__WEBPACK_IMPORTED_MODULE_4__.localize('minimapSliderHoverBackground', \"Minimap slider background color when hovering.\"));\nconst minimapSliderActiveBackground = registerColor('minimapSlider.activeBackground', { light: transparent(scrollbarSliderActiveBackground, 0.5), dark: transparent(scrollbarSliderActiveBackground, 0.5), hcDark: transparent(scrollbarSliderActiveBackground, 0.5), hcLight: transparent(scrollbarSliderActiveBackground, 0.5) }, _nls_js__WEBPACK_IMPORTED_MODULE_4__.localize('minimapSliderActiveBackground', \"Minimap slider background color when clicked on.\"));\nconst problemsErrorIconForeground = registerColor('problemsErrorIcon.foreground', { dark: editorErrorForeground, light: editorErrorForeground, hcDark: editorErrorForeground, hcLight: editorErrorForeground }, _nls_js__WEBPACK_IMPORTED_MODULE_4__.localize('problemsErrorIconForeground', \"The color used for the problems error icon.\"));\nconst problemsWarningIconForeground = registerColor('problemsWarningIcon.foreground', { dark: editorWarningForeground, light: editorWarningForeground, hcDark: editorWarningForeground, hcLight: editorWarningForeground }, _nls_js__WEBPACK_IMPORTED_MODULE_4__.localize('problemsWarningIconForeground', \"The color used for the problems warning icon.\"));\nconst problemsInfoIconForeground = registerColor('problemsInfoIcon.foreground', { dark: editorInfoForeground, light: editorInfoForeground, hcDark: editorInfoForeground, hcLight: editorInfoForeground }, _nls_js__WEBPACK_IMPORTED_MODULE_4__.localize('problemsInfoIconForeground', \"The color used for the problems info icon.\"));\n/**\n * Chart colors\n */\nconst chartsForeground = registerColor('charts.foreground', { dark: foreground, light: foreground, hcDark: foreground, hcLight: foreground }, _nls_js__WEBPACK_IMPORTED_MODULE_4__.localize('chartsForeground', \"The foreground color used in charts.\"));\nconst chartsLines = registerColor('charts.lines', { dark: transparent(foreground, .5), light: transparent(foreground, .5), hcDark: transparent(foreground, .5), hcLight: transparent(foreground, .5) }, _nls_js__WEBPACK_IMPORTED_MODULE_4__.localize('chartsLines', \"The color used for horizontal lines in charts.\"));\nconst chartsRed = registerColor('charts.red', { dark: editorErrorForeground, light: editorErrorForeground, hcDark: editorErrorForeground, hcLight: editorErrorForeground }, _nls_js__WEBPACK_IMPORTED_MODULE_4__.localize('chartsRed', \"The red color used in chart visualizations.\"));\nconst chartsBlue = registerColor('charts.blue', { dark: editorInfoForeground, light: editorInfoForeground, hcDark: editorInfoForeground, hcLight: editorInfoForeground }, _nls_js__WEBPACK_IMPORTED_MODULE_4__.localize('chartsBlue', \"The blue color used in chart visualizations.\"));\nconst chartsYellow = registerColor('charts.yellow', { dark: editorWarningForeground, light: editorWarningForeground, hcDark: editorWarningForeground, hcLight: editorWarningForeground }, _nls_js__WEBPACK_IMPORTED_MODULE_4__.localize('chartsYellow', \"The yellow color used in chart visualizations.\"));\nconst chartsOrange = registerColor('charts.orange', { dark: minimapFindMatch, light: minimapFindMatch, hcDark: minimapFindMatch, hcLight: minimapFindMatch }, _nls_js__WEBPACK_IMPORTED_MODULE_4__.localize('chartsOrange', \"The orange color used in chart visualizations.\"));\nconst chartsGreen = registerColor('charts.green', { dark: '#89D185', light: '#388A34', hcDark: '#89D185', hcLight: '#374e06' }, _nls_js__WEBPACK_IMPORTED_MODULE_4__.localize('chartsGreen', \"The green color used in chart visualizations.\"));\nconst chartsPurple = registerColor('charts.purple', { dark: '#B180D7', light: '#652D90', hcDark: '#B180D7', hcLight: '#652D90' }, _nls_js__WEBPACK_IMPORTED_MODULE_4__.localize('chartsPurple', \"The purple color used in chart visualizations.\"));\n// ----- color functions\nfunction executeTransform(transform, theme) {\n var _a, _b, _c, _d;\n switch (transform.op) {\n case 0 /* ColorTransformType.Darken */:\n return (_a = resolveColorValue(transform.value, theme)) === null || _a === void 0 ? void 0 : _a.darken(transform.factor);\n case 1 /* ColorTransformType.Lighten */:\n return (_b = resolveColorValue(transform.value, theme)) === null || _b === void 0 ? void 0 : _b.lighten(transform.factor);\n case 2 /* ColorTransformType.Transparent */:\n return (_c = resolveColorValue(transform.value, theme)) === null || _c === void 0 ? void 0 : _c.transparent(transform.factor);\n case 3 /* ColorTransformType.Opaque */: {\n const backgroundColor = resolveColorValue(transform.background, theme);\n if (!backgroundColor) {\n return resolveColorValue(transform.value, theme);\n }\n return (_d = resolveColorValue(transform.value, theme)) === null || _d === void 0 ? void 0 : _d.makeOpaque(backgroundColor);\n }\n case 4 /* ColorTransformType.OneOf */:\n for (const candidate of transform.values) {\n const color = resolveColorValue(candidate, theme);\n if (color) {\n return color;\n }\n }\n return undefined;\n case 6 /* ColorTransformType.IfDefinedThenElse */:\n return resolveColorValue(theme.defines(transform.if) ? transform.then : transform.else, theme);\n case 5 /* ColorTransformType.LessProminent */: {\n const from = resolveColorValue(transform.value, theme);\n if (!from) {\n return undefined;\n }\n const backgroundColor = resolveColorValue(transform.background, theme);\n if (!backgroundColor) {\n return from.transparent(transform.factor * transform.transparency);\n }\n return from.isDarkerThan(backgroundColor)\n ? _base_common_color_js__WEBPACK_IMPORTED_MODULE_2__.Color.getLighterColor(from, backgroundColor, transform.factor).transparent(transform.transparency)\n : _base_common_color_js__WEBPACK_IMPORTED_MODULE_2__.Color.getDarkerColor(from, backgroundColor, transform.factor).transparent(transform.transparency);\n }\n default:\n throw (0,_base_common_assert_js__WEBPACK_IMPORTED_MODULE_0__.assertNever)(transform);\n }\n}\nfunction darken(colorValue, factor) {\n return { op: 0 /* ColorTransformType.Darken */, value: colorValue, factor };\n}\nfunction lighten(colorValue, factor) {\n return { op: 1 /* ColorTransformType.Lighten */, value: colorValue, factor };\n}\nfunction transparent(colorValue, factor) {\n return { op: 2 /* ColorTransformType.Transparent */, value: colorValue, factor };\n}\nfunction oneOf(...colorValues) {\n return { op: 4 /* ColorTransformType.OneOf */, values: colorValues };\n}\nfunction ifDefinedThenElse(ifArg, thenArg, elseArg) {\n return { op: 6 /* ColorTransformType.IfDefinedThenElse */, if: ifArg, then: thenArg, else: elseArg };\n}\nfunction lessProminent(colorValue, backgroundColorValue, factor, transparency) {\n return { op: 5 /* ColorTransformType.LessProminent */, value: colorValue, background: backgroundColorValue, factor, transparency };\n}\n// ----- implementation\n/**\n * @param colorValue Resolve a color value in the context of a theme\n */\nfunction resolveColorValue(colorValue, theme) {\n if (colorValue === null) {\n return undefined;\n }\n else if (typeof colorValue === 'string') {\n if (colorValue[0] === '#') {\n return _base_common_color_js__WEBPACK_IMPORTED_MODULE_2__.Color.fromHex(colorValue);\n }\n return theme.getColor(colorValue);\n }\n else if (colorValue instanceof _base_common_color_js__WEBPACK_IMPORTED_MODULE_2__.Color) {\n return colorValue;\n }\n else if (typeof colorValue === 'object') {\n return executeTransform(colorValue, theme);\n }\n return undefined;\n}\nconst workbenchColorsSchemaId = 'vscode://schemas/workbench-colors';\nconst schemaRegistry = _registry_common_platform_js__WEBPACK_IMPORTED_MODULE_6__.Registry.as(_jsonschemas_common_jsonContributionRegistry_js__WEBPACK_IMPORTED_MODULE_5__.Extensions.JSONContribution);\nschemaRegistry.registerSchema(workbenchColorsSchemaId, colorRegistry.getColorSchema());\nconst delayer = new _base_common_async_js__WEBPACK_IMPORTED_MODULE_1__.RunOnceScheduler(() => schemaRegistry.notifySchemaChanged(workbenchColorsSchemaId), 200);\ncolorRegistry.onDidChangeSchema(() => {\n if (!delayer.isScheduled()) {\n delayer.schedule();\n }\n});\n// setTimeout(_ => console.log(colorRegistry.toString()), 5000);\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/platform/theme/common/colorRegistry.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/platform/theme/common/iconRegistry.js":
/*!*********************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/platform/theme/common/iconRegistry.js ***!
\*********************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ Extensions: () => (/* binding */ Extensions),\n/* harmony export */ IconContribution: () => (/* binding */ IconContribution),\n/* harmony export */ IconFontDefinition: () => (/* binding */ IconFontDefinition),\n/* harmony export */ getIconRegistry: () => (/* binding */ getIconRegistry),\n/* harmony export */ gotoNextLocation: () => (/* binding */ gotoNextLocation),\n/* harmony export */ gotoPreviousLocation: () => (/* binding */ gotoPreviousLocation),\n/* harmony export */ iconsSchemaId: () => (/* binding */ iconsSchemaId),\n/* harmony export */ registerIcon: () => (/* binding */ registerIcon),\n/* harmony export */ spinningLoading: () => (/* binding */ spinningLoading),\n/* harmony export */ syncing: () => (/* binding */ syncing),\n/* harmony export */ widgetClose: () => (/* binding */ widgetClose)\n/* harmony export */ });\n/* harmony import */ var _base_common_async_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../base/common/async.js */ \"./node_modules/monaco-editor/esm/vs/base/common/async.js\");\n/* harmony import */ var _base_common_codicons_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../base/common/codicons.js */ \"./node_modules/monaco-editor/esm/vs/base/common/codicons.js\");\n/* harmony import */ var _base_common_themables_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../base/common/themables.js */ \"./node_modules/monaco-editor/esm/vs/base/common/themables.js\");\n/* harmony import */ var _base_common_event_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../../base/common/event.js */ \"./node_modules/monaco-editor/esm/vs/base/common/event.js\");\n/* harmony import */ var _base_common_types_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../../base/common/types.js */ \"./node_modules/monaco-editor/esm/vs/base/common/types.js\");\n/* harmony import */ var _base_common_uri_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../../../base/common/uri.js */ \"./node_modules/monaco-editor/esm/vs/base/common/uri.js\");\n/* harmony import */ var _nls_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../../../nls.js */ \"./node_modules/monaco-editor/esm/vs/nls.js\");\n/* harmony import */ var _jsonschemas_common_jsonContributionRegistry_js__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ../../jsonschemas/common/jsonContributionRegistry.js */ \"./node_modules/monaco-editor/esm/vs/platform/jsonschemas/common/jsonContributionRegistry.js\");\n/* harmony import */ var _registry_common_platform_js__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ../../registry/common/platform.js */ \"./node_modules/monaco-editor/esm/vs/platform/registry/common/platform.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n\n\n\n\n\n\n\n\n// ------ API types\n// icon registry\nconst Extensions = {\n IconContribution: 'base.contributions.icons'\n};\nvar IconContribution;\n(function (IconContribution) {\n function getDefinition(contribution, registry) {\n let definition = contribution.defaults;\n while (_base_common_themables_js__WEBPACK_IMPORTED_MODULE_2__.ThemeIcon.isThemeIcon(definition)) {\n const c = iconRegistry.getIcon(definition.id);\n if (!c) {\n return undefined;\n }\n definition = c.defaults;\n }\n return definition;\n }\n IconContribution.getDefinition = getDefinition;\n})(IconContribution || (IconContribution = {}));\nvar IconFontDefinition;\n(function (IconFontDefinition) {\n function toJSONObject(iconFont) {\n return {\n weight: iconFont.weight,\n style: iconFont.style,\n src: iconFont.src.map(s => ({ format: s.format, location: s.location.toString() }))\n };\n }\n IconFontDefinition.toJSONObject = toJSONObject;\n function fromJSONObject(json) {\n const stringOrUndef = (s) => (0,_base_common_types_js__WEBPACK_IMPORTED_MODULE_4__.isString)(s) ? s : undefined;\n if (json && Array.isArray(json.src) && json.src.every((s) => (0,_base_common_types_js__WEBPACK_IMPORTED_MODULE_4__.isString)(s.format) && (0,_base_common_types_js__WEBPACK_IMPORTED_MODULE_4__.isString)(s.location))) {\n return {\n weight: stringOrUndef(json.weight),\n style: stringOrUndef(json.style),\n src: json.src.map((s) => ({ format: s.format, location: _base_common_uri_js__WEBPACK_IMPORTED_MODULE_5__.URI.parse(s.location) }))\n };\n }\n return undefined;\n }\n IconFontDefinition.fromJSONObject = fromJSONObject;\n})(IconFontDefinition || (IconFontDefinition = {}));\nclass IconRegistry {\n constructor() {\n this._onDidChange = new _base_common_event_js__WEBPACK_IMPORTED_MODULE_3__.Emitter();\n this.onDidChange = this._onDidChange.event;\n this.iconSchema = {\n definitions: {\n icons: {\n type: 'object',\n properties: {\n fontId: { type: 'string', description: (0,_nls_js__WEBPACK_IMPORTED_MODULE_6__.localize)('iconDefinition.fontId', 'The id of the font to use. If not set, the font that is defined first is used.') },\n fontCharacter: { type: 'string', description: (0,_nls_js__WEBPACK_IMPORTED_MODULE_6__.localize)('iconDefinition.fontCharacter', 'The font character associated with the icon definition.') }\n },\n additionalProperties: false,\n defaultSnippets: [{ body: { fontCharacter: '\\\\\\\\e030' } }]\n }\n },\n type: 'object',\n properties: {}\n };\n this.iconReferenceSchema = { type: 'string', pattern: `^${_base_common_themables_js__WEBPACK_IMPORTED_MODULE_2__.ThemeIcon.iconNameExpression}$`, enum: [], enumDescriptions: [] };\n this.iconsById = {};\n this.iconFontsById = {};\n }\n registerIcon(id, defaults, description, deprecationMessage) {\n const existing = this.iconsById[id];\n if (existing) {\n if (description && !existing.description) {\n existing.description = description;\n this.iconSchema.properties[id].markdownDescription = `${description} $(${id})`;\n const enumIndex = this.iconReferenceSchema.enum.indexOf(id);\n if (enumIndex !== -1) {\n this.iconReferenceSchema.enumDescriptions[enumIndex] = description;\n }\n this._onDidChange.fire();\n }\n return existing;\n }\n const iconContribution = { id, description, defaults, deprecationMessage };\n this.iconsById[id] = iconContribution;\n const propertySchema = { $ref: '#/definitions/icons' };\n if (deprecationMessage) {\n propertySchema.deprecationMessage = deprecationMessage;\n }\n if (description) {\n propertySchema.markdownDescription = `${description}: $(${id})`;\n }\n this.iconSchema.properties[id] = propertySchema;\n this.iconReferenceSchema.enum.push(id);\n this.iconReferenceSchema.enumDescriptions.push(description || '');\n this._onDidChange.fire();\n return { id };\n }\n getIcons() {\n return Object.keys(this.iconsById).map(id => this.iconsById[id]);\n }\n getIcon(id) {\n return this.iconsById[id];\n }\n getIconSchema() {\n return this.iconSchema;\n }\n toString() {\n const sorter = (i1, i2) => {\n return i1.id.localeCompare(i2.id);\n };\n const classNames = (i) => {\n while (_base_common_themables_js__WEBPACK_IMPORTED_MODULE_2__.ThemeIcon.isThemeIcon(i.defaults)) {\n i = this.iconsById[i.defaults.id];\n }\n return `codicon codicon-${i ? i.id : ''}`;\n };\n const reference = [];\n reference.push(`| preview | identifier | default codicon ID | description`);\n reference.push(`| ----------- | --------------------------------- | --------------------------------- | --------------------------------- |`);\n const contributions = Object.keys(this.iconsById).map(key => this.iconsById[key]);\n for (const i of contributions.filter(i => !!i.description).sort(sorter)) {\n reference.push(`||${i.id}|${_base_common_themables_js__WEBPACK_IMPORTED_MODULE_2__.ThemeIcon.isThemeIcon(i.defaults) ? i.defaults.id : i.id}|${i.description || ''}|`);\n }\n reference.push(`| preview | identifier `);\n reference.push(`| ----------- | --------------------------------- |`);\n for (const i of contributions.filter(i => !_base_common_themables_js__WEBPACK_IMPORTED_MODULE_2__.ThemeIcon.isThemeIcon(i.defaults)).sort(sorter)) {\n reference.push(`||${i.id}|`);\n }\n return reference.join('\\n');\n }\n}\nconst iconRegistry = new IconRegistry();\n_registry_common_platform_js__WEBPACK_IMPORTED_MODULE_8__.Registry.add(Extensions.IconContribution, iconRegistry);\nfunction registerIcon(id, defaults, description, deprecationMessage) {\n return iconRegistry.registerIcon(id, defaults, description, deprecationMessage);\n}\nfunction getIconRegistry() {\n return iconRegistry;\n}\nfunction initialize() {\n const codiconFontCharacters = (0,_base_common_codicons_js__WEBPACK_IMPORTED_MODULE_1__.getCodiconFontCharacters)();\n for (const icon in codiconFontCharacters) {\n const fontCharacter = '\\\\' + codiconFontCharacters[icon].toString(16);\n iconRegistry.registerIcon(icon, { fontCharacter });\n }\n}\ninitialize();\nconst iconsSchemaId = 'vscode://schemas/icons';\nconst schemaRegistry = _registry_common_platform_js__WEBPACK_IMPORTED_MODULE_8__.Registry.as(_jsonschemas_common_jsonContributionRegistry_js__WEBPACK_IMPORTED_MODULE_7__.Extensions.JSONContribution);\nschemaRegistry.registerSchema(iconsSchemaId, iconRegistry.getIconSchema());\nconst delayer = new _base_common_async_js__WEBPACK_IMPORTED_MODULE_0__.RunOnceScheduler(() => schemaRegistry.notifySchemaChanged(iconsSchemaId), 200);\niconRegistry.onDidChange(() => {\n if (!delayer.isScheduled()) {\n delayer.schedule();\n }\n});\n//setTimeout(_ => console.log(iconRegistry.toString()), 5000);\n// common icons\nconst widgetClose = registerIcon('widget-close', _base_common_codicons_js__WEBPACK_IMPORTED_MODULE_1__.Codicon.close, (0,_nls_js__WEBPACK_IMPORTED_MODULE_6__.localize)('widgetClose', 'Icon for the close action in widgets.'));\nconst gotoPreviousLocation = registerIcon('goto-previous-location', _base_common_codicons_js__WEBPACK_IMPORTED_MODULE_1__.Codicon.arrowUp, (0,_nls_js__WEBPACK_IMPORTED_MODULE_6__.localize)('previousChangeIcon', 'Icon for goto previous editor location.'));\nconst gotoNextLocation = registerIcon('goto-next-location', _base_common_codicons_js__WEBPACK_IMPORTED_MODULE_1__.Codicon.arrowDown, (0,_nls_js__WEBPACK_IMPORTED_MODULE_6__.localize)('nextChangeIcon', 'Icon for goto next editor location.'));\nconst syncing = _base_common_themables_js__WEBPACK_IMPORTED_MODULE_2__.ThemeIcon.modify(_base_common_codicons_js__WEBPACK_IMPORTED_MODULE_1__.Codicon.sync, 'spin');\nconst spinningLoading = _base_common_themables_js__WEBPACK_IMPORTED_MODULE_2__.ThemeIcon.modify(_base_common_codicons_js__WEBPACK_IMPORTED_MODULE_1__.Codicon.loading, 'spin');\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/platform/theme/common/iconRegistry.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/platform/theme/common/theme.js":
/*!**************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/platform/theme/common/theme.js ***!
\**************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ ColorScheme: () => (/* binding */ ColorScheme),\n/* harmony export */ isDark: () => (/* binding */ isDark),\n/* harmony export */ isHighContrast: () => (/* binding */ isHighContrast)\n/* harmony export */ });\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n/**\n * Color scheme used by the OS and by color themes.\n */\nvar ColorScheme;\n(function (ColorScheme) {\n ColorScheme[\"DARK\"] = \"dark\";\n ColorScheme[\"LIGHT\"] = \"light\";\n ColorScheme[\"HIGH_CONTRAST_DARK\"] = \"hcDark\";\n ColorScheme[\"HIGH_CONTRAST_LIGHT\"] = \"hcLight\";\n})(ColorScheme || (ColorScheme = {}));\nfunction isHighContrast(scheme) {\n return scheme === ColorScheme.HIGH_CONTRAST_DARK || scheme === ColorScheme.HIGH_CONTRAST_LIGHT;\n}\nfunction isDark(scheme) {\n return scheme === ColorScheme.DARK || scheme === ColorScheme.HIGH_CONTRAST_DARK;\n}\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/platform/theme/common/theme.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/platform/theme/common/themeService.js":
/*!*********************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/platform/theme/common/themeService.js ***!
\*********************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ Extensions: () => (/* binding */ Extensions),\n/* harmony export */ IThemeService: () => (/* binding */ IThemeService),\n/* harmony export */ Themable: () => (/* binding */ Themable),\n/* harmony export */ getThemeTypeSelector: () => (/* binding */ getThemeTypeSelector),\n/* harmony export */ registerThemingParticipant: () => (/* binding */ registerThemingParticipant),\n/* harmony export */ themeColorFromId: () => (/* binding */ themeColorFromId)\n/* harmony export */ });\n/* harmony import */ var _base_common_event_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../base/common/event.js */ \"./node_modules/monaco-editor/esm/vs/base/common/event.js\");\n/* harmony import */ var _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../base/common/lifecycle.js */ \"./node_modules/monaco-editor/esm/vs/base/common/lifecycle.js\");\n/* harmony import */ var _instantiation_common_instantiation_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../instantiation/common/instantiation.js */ \"./node_modules/monaco-editor/esm/vs/platform/instantiation/common/instantiation.js\");\n/* harmony import */ var _registry_common_platform_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../registry/common/platform.js */ \"./node_modules/monaco-editor/esm/vs/platform/registry/common/platform.js\");\n/* harmony import */ var _theme_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./theme.js */ \"./node_modules/monaco-editor/esm/vs/platform/theme/common/theme.js\");\n\n\n\n\n\nconst IThemeService = (0,_instantiation_common_instantiation_js__WEBPACK_IMPORTED_MODULE_2__.createDecorator)('themeService');\nfunction themeColorFromId(id) {\n return { id };\n}\nfunction getThemeTypeSelector(type) {\n switch (type) {\n case _theme_js__WEBPACK_IMPORTED_MODULE_4__.ColorScheme.DARK: return 'vs-dark';\n case _theme_js__WEBPACK_IMPORTED_MODULE_4__.ColorScheme.HIGH_CONTRAST_DARK: return 'hc-black';\n case _theme_js__WEBPACK_IMPORTED_MODULE_4__.ColorScheme.HIGH_CONTRAST_LIGHT: return 'hc-light';\n default: return 'vs';\n }\n}\n// static theming participant\nconst Extensions = {\n ThemingContribution: 'base.contributions.theming'\n};\nclass ThemingRegistry {\n constructor() {\n this.themingParticipants = [];\n this.themingParticipants = [];\n this.onThemingParticipantAddedEmitter = new _base_common_event_js__WEBPACK_IMPORTED_MODULE_0__.Emitter();\n }\n onColorThemeChange(participant) {\n this.themingParticipants.push(participant);\n this.onThemingParticipantAddedEmitter.fire(participant);\n return (0,_base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_1__.toDisposable)(() => {\n const idx = this.themingParticipants.indexOf(participant);\n this.themingParticipants.splice(idx, 1);\n });\n }\n getThemingParticipants() {\n return this.themingParticipants;\n }\n}\nconst themingRegistry = new ThemingRegistry();\n_registry_common_platform_js__WEBPACK_IMPORTED_MODULE_3__.Registry.add(Extensions.ThemingContribution, themingRegistry);\nfunction registerThemingParticipant(participant) {\n return themingRegistry.onColorThemeChange(participant);\n}\n/**\n * Utility base class for all themable components.\n */\nclass Themable extends _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_1__.Disposable {\n constructor(themeService) {\n super();\n this.themeService = themeService;\n this.theme = themeService.getColorTheme();\n // Hook up to theme changes\n this._register(this.themeService.onDidColorThemeChange(theme => this.onThemeChange(theme)));\n }\n onThemeChange(theme) {\n this.theme = theme;\n this.updateStyles();\n }\n updateStyles() {\n // Subclasses to override\n }\n}\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/platform/theme/common/themeService.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/platform/undoRedo/common/undoRedo.js":
/*!********************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/platform/undoRedo/common/undoRedo.js ***!
\********************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ IUndoRedoService: () => (/* binding */ IUndoRedoService),\n/* harmony export */ ResourceEditStackSnapshot: () => (/* binding */ ResourceEditStackSnapshot),\n/* harmony export */ UndoRedoGroup: () => (/* binding */ UndoRedoGroup),\n/* harmony export */ UndoRedoSource: () => (/* binding */ UndoRedoSource)\n/* harmony export */ });\n/* harmony import */ var _instantiation_common_instantiation_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../instantiation/common/instantiation.js */ \"./node_modules/monaco-editor/esm/vs/platform/instantiation/common/instantiation.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\nconst IUndoRedoService = (0,_instantiation_common_instantiation_js__WEBPACK_IMPORTED_MODULE_0__.createDecorator)('undoRedoService');\nclass ResourceEditStackSnapshot {\n constructor(resource, elements) {\n this.resource = resource;\n this.elements = elements;\n }\n}\nclass UndoRedoGroup {\n constructor() {\n this.id = UndoRedoGroup._ID++;\n this.order = 1;\n }\n nextOrder() {\n if (this.id === 0) {\n return 0;\n }\n return this.order++;\n }\n}\nUndoRedoGroup._ID = 0;\nUndoRedoGroup.None = new UndoRedoGroup();\nclass UndoRedoSource {\n constructor() {\n this.id = UndoRedoSource._ID++;\n this.order = 1;\n }\n nextOrder() {\n if (this.id === 0) {\n return 0;\n }\n return this.order++;\n }\n}\nUndoRedoSource._ID = 0;\nUndoRedoSource.None = new UndoRedoSource();\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/platform/undoRedo/common/undoRedo.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/platform/undoRedo/common/undoRedoService.js":
/*!***************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/platform/undoRedo/common/undoRedoService.js ***!
\***************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ UndoRedoService: () => (/* binding */ UndoRedoService)\n/* harmony export */ });\n/* harmony import */ var _base_common_errors_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../base/common/errors.js */ \"./node_modules/monaco-editor/esm/vs/base/common/errors.js\");\n/* harmony import */ var _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../base/common/lifecycle.js */ \"./node_modules/monaco-editor/esm/vs/base/common/lifecycle.js\");\n/* harmony import */ var _base_common_network_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../base/common/network.js */ \"./node_modules/monaco-editor/esm/vs/base/common/network.js\");\n/* harmony import */ var _base_common_severity_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../../base/common/severity.js */ \"./node_modules/monaco-editor/esm/vs/base/common/severity.js\");\n/* harmony import */ var _nls_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../../nls.js */ \"./node_modules/monaco-editor/esm/vs/nls.js\");\n/* harmony import */ var _dialogs_common_dialogs_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../../dialogs/common/dialogs.js */ \"./node_modules/monaco-editor/esm/vs/platform/dialogs/common/dialogs.js\");\n/* harmony import */ var _instantiation_common_extensions_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../../instantiation/common/extensions.js */ \"./node_modules/monaco-editor/esm/vs/platform/instantiation/common/extensions.js\");\n/* harmony import */ var _notification_common_notification_js__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ../../notification/common/notification.js */ \"./node_modules/monaco-editor/esm/vs/platform/notification/common/notification.js\");\n/* harmony import */ var _undoRedo_js__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ./undoRedo.js */ \"./node_modules/monaco-editor/esm/vs/platform/undoRedo/common/undoRedo.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\nvar __decorate = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\n return c > 3 && r && Object.defineProperty(target, key, r), r;\n};\nvar __param = (undefined && undefined.__param) || function (paramIndex, decorator) {\n return function (target, key) { decorator(target, key, paramIndex); }\n};\n\n\n\n\n\n\n\n\n\nconst DEBUG = false;\nfunction getResourceLabel(resource) {\n return resource.scheme === _base_common_network_js__WEBPACK_IMPORTED_MODULE_2__.Schemas.file ? resource.fsPath : resource.path;\n}\nlet stackElementCounter = 0;\nclass ResourceStackElement {\n constructor(actual, resourceLabel, strResource, groupId, groupOrder, sourceId, sourceOrder) {\n this.id = (++stackElementCounter);\n this.type = 0 /* UndoRedoElementType.Resource */;\n this.actual = actual;\n this.label = actual.label;\n this.confirmBeforeUndo = actual.confirmBeforeUndo || false;\n this.resourceLabel = resourceLabel;\n this.strResource = strResource;\n this.resourceLabels = [this.resourceLabel];\n this.strResources = [this.strResource];\n this.groupId = groupId;\n this.groupOrder = groupOrder;\n this.sourceId = sourceId;\n this.sourceOrder = sourceOrder;\n this.isValid = true;\n }\n setValid(isValid) {\n this.isValid = isValid;\n }\n toString() {\n return `[id:${this.id}] [group:${this.groupId}] [${this.isValid ? ' VALID' : 'INVALID'}] ${this.actual.constructor.name} - ${this.actual}`;\n }\n}\nclass ResourceReasonPair {\n constructor(resourceLabel, reason) {\n this.resourceLabel = resourceLabel;\n this.reason = reason;\n }\n}\nclass RemovedResources {\n constructor() {\n this.elements = new Map();\n }\n createMessage() {\n const externalRemoval = [];\n const noParallelUniverses = [];\n for (const [, element] of this.elements) {\n const dest = (element.reason === 0 /* RemovedResourceReason.ExternalRemoval */\n ? externalRemoval\n : noParallelUniverses);\n dest.push(element.resourceLabel);\n }\n const messages = [];\n if (externalRemoval.length > 0) {\n messages.push(_nls_js__WEBPACK_IMPORTED_MODULE_4__.localize({ key: 'externalRemoval', comment: ['{0} is a list of filenames'] }, \"The following files have been closed and modified on disk: {0}.\", externalRemoval.join(', ')));\n }\n if (noParallelUniverses.length > 0) {\n messages.push(_nls_js__WEBPACK_IMPORTED_MODULE_4__.localize({ key: 'noParallelUniverses', comment: ['{0} is a list of filenames'] }, \"The following files have been modified in an incompatible way: {0}.\", noParallelUniverses.join(', ')));\n }\n return messages.join('\\n');\n }\n get size() {\n return this.elements.size;\n }\n has(strResource) {\n return this.elements.has(strResource);\n }\n set(strResource, value) {\n this.elements.set(strResource, value);\n }\n delete(strResource) {\n return this.elements.delete(strResource);\n }\n}\nclass WorkspaceStackElement {\n constructor(actual, resourceLabels, strResources, groupId, groupOrder, sourceId, sourceOrder) {\n this.id = (++stackElementCounter);\n this.type = 1 /* UndoRedoElementType.Workspace */;\n this.actual = actual;\n this.label = actual.label;\n this.confirmBeforeUndo = actual.confirmBeforeUndo || false;\n this.resourceLabels = resourceLabels;\n this.strResources = strResources;\n this.groupId = groupId;\n this.groupOrder = groupOrder;\n this.sourceId = sourceId;\n this.sourceOrder = sourceOrder;\n this.removedResources = null;\n this.invalidatedResources = null;\n }\n canSplit() {\n return (typeof this.actual.split === 'function');\n }\n removeResource(resourceLabel, strResource, reason) {\n if (!this.removedResources) {\n this.removedResources = new RemovedResources();\n }\n if (!this.removedResources.has(strResource)) {\n this.removedResources.set(strResource, new ResourceReasonPair(resourceLabel, reason));\n }\n }\n setValid(resourceLabel, strResource, isValid) {\n if (isValid) {\n if (this.invalidatedResources) {\n this.invalidatedResources.delete(strResource);\n if (this.invalidatedResources.size === 0) {\n this.invalidatedResources = null;\n }\n }\n }\n else {\n if (!this.invalidatedResources) {\n this.invalidatedResources = new RemovedResources();\n }\n if (!this.invalidatedResources.has(strResource)) {\n this.invalidatedResources.set(strResource, new ResourceReasonPair(resourceLabel, 0 /* RemovedResourceReason.ExternalRemoval */));\n }\n }\n }\n toString() {\n return `[id:${this.id}] [group:${this.groupId}] [${this.invalidatedResources ? 'INVALID' : ' VALID'}] ${this.actual.constructor.name} - ${this.actual}`;\n }\n}\nclass ResourceEditStack {\n constructor(resourceLabel, strResource) {\n this.resourceLabel = resourceLabel;\n this.strResource = strResource;\n this._past = [];\n this._future = [];\n this.locked = false;\n this.versionId = 1;\n }\n dispose() {\n for (const element of this._past) {\n if (element.type === 1 /* UndoRedoElementType.Workspace */) {\n element.removeResource(this.resourceLabel, this.strResource, 0 /* RemovedResourceReason.ExternalRemoval */);\n }\n }\n for (const element of this._future) {\n if (element.type === 1 /* UndoRedoElementType.Workspace */) {\n element.removeResource(this.resourceLabel, this.strResource, 0 /* RemovedResourceReason.ExternalRemoval */);\n }\n }\n this.versionId++;\n }\n toString() {\n const result = [];\n result.push(`* ${this.strResource}:`);\n for (let i = 0; i < this._past.length; i++) {\n result.push(` * [UNDO] ${this._past[i]}`);\n }\n for (let i = this._future.length - 1; i >= 0; i--) {\n result.push(` * [REDO] ${this._future[i]}`);\n }\n return result.join('\\n');\n }\n flushAllElements() {\n this._past = [];\n this._future = [];\n this.versionId++;\n }\n _setElementValidFlag(element, isValid) {\n if (element.type === 1 /* UndoRedoElementType.Workspace */) {\n element.setValid(this.resourceLabel, this.strResource, isValid);\n }\n else {\n element.setValid(isValid);\n }\n }\n setElementsValidFlag(isValid, filter) {\n for (const element of this._past) {\n if (filter(element.actual)) {\n this._setElementValidFlag(element, isValid);\n }\n }\n for (const element of this._future) {\n if (filter(element.actual)) {\n this._setElementValidFlag(element, isValid);\n }\n }\n }\n pushElement(element) {\n // remove the future\n for (const futureElement of this._future) {\n if (futureElement.type === 1 /* UndoRedoElementType.Workspace */) {\n futureElement.removeResource(this.resourceLabel, this.strResource, 1 /* RemovedResourceReason.NoParallelUniverses */);\n }\n }\n this._future = [];\n this._past.push(element);\n this.versionId++;\n }\n createSnapshot(resource) {\n const elements = [];\n for (let i = 0, len = this._past.length; i < len; i++) {\n elements.push(this._past[i].id);\n }\n for (let i = this._future.length - 1; i >= 0; i--) {\n elements.push(this._future[i].id);\n }\n return new _undoRedo_js__WEBPACK_IMPORTED_MODULE_8__.ResourceEditStackSnapshot(resource, elements);\n }\n restoreSnapshot(snapshot) {\n const snapshotLength = snapshot.elements.length;\n let isOK = true;\n let snapshotIndex = 0;\n let removePastAfter = -1;\n for (let i = 0, len = this._past.length; i < len; i++, snapshotIndex++) {\n const element = this._past[i];\n if (isOK && (snapshotIndex >= snapshotLength || element.id !== snapshot.elements[snapshotIndex])) {\n isOK = false;\n removePastAfter = 0;\n }\n if (!isOK && element.type === 1 /* UndoRedoElementType.Workspace */) {\n element.removeResource(this.resourceLabel, this.strResource, 0 /* RemovedResourceReason.ExternalRemoval */);\n }\n }\n let removeFutureBefore = -1;\n for (let i = this._future.length - 1; i >= 0; i--, snapshotIndex++) {\n const element = this._future[i];\n if (isOK && (snapshotIndex >= snapshotLength || element.id !== snapshot.elements[snapshotIndex])) {\n isOK = false;\n removeFutureBefore = i;\n }\n if (!isOK && element.type === 1 /* UndoRedoElementType.Workspace */) {\n element.removeResource(this.resourceLabel, this.strResource, 0 /* RemovedResourceReason.ExternalRemoval */);\n }\n }\n if (removePastAfter !== -1) {\n this._past = this._past.slice(0, removePastAfter);\n }\n if (removeFutureBefore !== -1) {\n this._future = this._future.slice(removeFutureBefore + 1);\n }\n this.versionId++;\n }\n getElements() {\n const past = [];\n const future = [];\n for (const element of this._past) {\n past.push(element.actual);\n }\n for (const element of this._future) {\n future.push(element.actual);\n }\n return { past, future };\n }\n getClosestPastElement() {\n if (this._past.length === 0) {\n return null;\n }\n return this._past[this._past.length - 1];\n }\n getSecondClosestPastElement() {\n if (this._past.length < 2) {\n return null;\n }\n return this._past[this._past.length - 2];\n }\n getClosestFutureElement() {\n if (this._future.length === 0) {\n return null;\n }\n return this._future[this._future.length - 1];\n }\n hasPastElements() {\n return (this._past.length > 0);\n }\n hasFutureElements() {\n return (this._future.length > 0);\n }\n splitPastWorkspaceElement(toRemove, individualMap) {\n for (let j = this._past.length - 1; j >= 0; j--) {\n if (this._past[j] === toRemove) {\n if (individualMap.has(this.strResource)) {\n // gets replaced\n this._past[j] = individualMap.get(this.strResource);\n }\n else {\n // gets deleted\n this._past.splice(j, 1);\n }\n break;\n }\n }\n this.versionId++;\n }\n splitFutureWorkspaceElement(toRemove, individualMap) {\n for (let j = this._future.length - 1; j >= 0; j--) {\n if (this._future[j] === toRemove) {\n if (individualMap.has(this.strResource)) {\n // gets replaced\n this._future[j] = individualMap.get(this.strResource);\n }\n else {\n // gets deleted\n this._future.splice(j, 1);\n }\n break;\n }\n }\n this.versionId++;\n }\n moveBackward(element) {\n this._past.pop();\n this._future.push(element);\n this.versionId++;\n }\n moveForward(element) {\n this._future.pop();\n this._past.push(element);\n this.versionId++;\n }\n}\nclass EditStackSnapshot {\n constructor(editStacks) {\n this.editStacks = editStacks;\n this._versionIds = [];\n for (let i = 0, len = this.editStacks.length; i < len; i++) {\n this._versionIds[i] = this.editStacks[i].versionId;\n }\n }\n isValid() {\n for (let i = 0, len = this.editStacks.length; i < len; i++) {\n if (this._versionIds[i] !== this.editStacks[i].versionId) {\n return false;\n }\n }\n return true;\n }\n}\nconst missingEditStack = new ResourceEditStack('', '');\nmissingEditStack.locked = true;\nlet UndoRedoService = class UndoRedoService {\n constructor(_dialogService, _notificationService) {\n this._dialogService = _dialogService;\n this._notificationService = _notificationService;\n this._editStacks = new Map();\n this._uriComparisonKeyComputers = [];\n }\n getUriComparisonKey(resource) {\n for (const uriComparisonKeyComputer of this._uriComparisonKeyComputers) {\n if (uriComparisonKeyComputer[0] === resource.scheme) {\n return uriComparisonKeyComputer[1].getComparisonKey(resource);\n }\n }\n return resource.toString();\n }\n _print(label) {\n console.log(`------------------------------------`);\n console.log(`AFTER ${label}: `);\n const str = [];\n for (const element of this._editStacks) {\n str.push(element[1].toString());\n }\n console.log(str.join('\\n'));\n }\n pushElement(element, group = _undoRedo_js__WEBPACK_IMPORTED_MODULE_8__.UndoRedoGroup.None, source = _undoRedo_js__WEBPACK_IMPORTED_MODULE_8__.UndoRedoSource.None) {\n if (element.type === 0 /* UndoRedoElementType.Resource */) {\n const resourceLabel = getResourceLabel(element.resource);\n const strResource = this.getUriComparisonKey(element.resource);\n this._pushElement(new ResourceStackElement(element, resourceLabel, strResource, group.id, group.nextOrder(), source.id, source.nextOrder()));\n }\n else {\n const seen = new Set();\n const resourceLabels = [];\n const strResources = [];\n for (const resource of element.resources) {\n const resourceLabel = getResourceLabel(resource);\n const strResource = this.getUriComparisonKey(resource);\n if (seen.has(strResource)) {\n continue;\n }\n seen.add(strResource);\n resourceLabels.push(resourceLabel);\n strResources.push(strResource);\n }\n if (resourceLabels.length === 1) {\n this._pushElement(new ResourceStackElement(element, resourceLabels[0], strResources[0], group.id, group.nextOrder(), source.id, source.nextOrder()));\n }\n else {\n this._pushElement(new WorkspaceStackElement(element, resourceLabels, strResources, group.id, group.nextOrder(), source.id, source.nextOrder()));\n }\n }\n if (DEBUG) {\n this._print('pushElement');\n }\n }\n _pushElement(element) {\n for (let i = 0, len = element.strResources.length; i < len; i++) {\n const resourceLabel = element.resourceLabels[i];\n const strResource = element.strResources[i];\n let editStack;\n if (this._editStacks.has(strResource)) {\n editStack = this._editStacks.get(strResource);\n }\n else {\n editStack = new ResourceEditStack(resourceLabel, strResource);\n this._editStacks.set(strResource, editStack);\n }\n editStack.pushElement(element);\n }\n }\n getLastElement(resource) {\n const strResource = this.getUriComparisonKey(resource);\n if (this._editStacks.has(strResource)) {\n const editStack = this._editStacks.get(strResource);\n if (editStack.hasFutureElements()) {\n return null;\n }\n const closestPastElement = editStack.getClosestPastElement();\n return closestPastElement ? closestPastElement.actual : null;\n }\n return null;\n }\n _splitPastWorkspaceElement(toRemove, ignoreResources) {\n const individualArr = toRemove.actual.split();\n const individualMap = new Map();\n for (const _element of individualArr) {\n const resourceLabel = getResourceLabel(_element.resource);\n const strResource = this.getUriComparisonKey(_element.resource);\n const element = new ResourceStackElement(_element, resourceLabel, strResource, 0, 0, 0, 0);\n individualMap.set(element.strResource, element);\n }\n for (const strResource of toRemove.strResources) {\n if (ignoreResources && ignoreResources.has(strResource)) {\n continue;\n }\n const editStack = this._editStacks.get(strResource);\n editStack.splitPastWorkspaceElement(toRemove, individualMap);\n }\n }\n _splitFutureWorkspaceElement(toRemove, ignoreResources) {\n const individualArr = toRemove.actual.split();\n const individualMap = new Map();\n for (const _element of individualArr) {\n const resourceLabel = getResourceLabel(_element.resource);\n const strResource = this.getUriComparisonKey(_element.resource);\n const element = new ResourceStackElement(_element, resourceLabel, strResource, 0, 0, 0, 0);\n individualMap.set(element.strResource, element);\n }\n for (const strResource of toRemove.strResources) {\n if (ignoreResources && ignoreResources.has(strResource)) {\n continue;\n }\n const editStack = this._editStacks.get(strResource);\n editStack.splitFutureWorkspaceElement(toRemove, individualMap);\n }\n }\n removeElements(resource) {\n const strResource = typeof resource === 'string' ? resource : this.getUriComparisonKey(resource);\n if (this._editStacks.has(strResource)) {\n const editStack = this._editStacks.get(strResource);\n editStack.dispose();\n this._editStacks.delete(strResource);\n }\n if (DEBUG) {\n this._print('removeElements');\n }\n }\n setElementsValidFlag(resource, isValid, filter) {\n const strResource = this.getUriComparisonKey(resource);\n if (this._editStacks.has(strResource)) {\n const editStack = this._editStacks.get(strResource);\n editStack.setElementsValidFlag(isValid, filter);\n }\n if (DEBUG) {\n this._print('setElementsValidFlag');\n }\n }\n createSnapshot(resource) {\n const strResource = this.getUriComparisonKey(resource);\n if (this._editStacks.has(strResource)) {\n const editStack = this._editStacks.get(strResource);\n return editStack.createSnapshot(resource);\n }\n return new _undoRedo_js__WEBPACK_IMPORTED_MODULE_8__.ResourceEditStackSnapshot(resource, []);\n }\n restoreSnapshot(snapshot) {\n const strResource = this.getUriComparisonKey(snapshot.resource);\n if (this._editStacks.has(strResource)) {\n const editStack = this._editStacks.get(strResource);\n editStack.restoreSnapshot(snapshot);\n if (!editStack.hasPastElements() && !editStack.hasFutureElements()) {\n // the edit stack is now empty, just remove it entirely\n editStack.dispose();\n this._editStacks.delete(strResource);\n }\n }\n if (DEBUG) {\n this._print('restoreSnapshot');\n }\n }\n getElements(resource) {\n const strResource = this.getUriComparisonKey(resource);\n if (this._editStacks.has(strResource)) {\n const editStack = this._editStacks.get(strResource);\n return editStack.getElements();\n }\n return { past: [], future: [] };\n }\n _findClosestUndoElementWithSource(sourceId) {\n if (!sourceId) {\n return [null, null];\n }\n // find an element with the sourceId and with the highest sourceOrder ready to be undone\n let matchedElement = null;\n let matchedStrResource = null;\n for (const [strResource, editStack] of this._editStacks) {\n const candidate = editStack.getClosestPastElement();\n if (!candidate) {\n continue;\n }\n if (candidate.sourceId === sourceId) {\n if (!matchedElement || candidate.sourceOrder > matchedElement.sourceOrder) {\n matchedElement = candidate;\n matchedStrResource = strResource;\n }\n }\n }\n return [matchedElement, matchedStrResource];\n }\n canUndo(resourceOrSource) {\n if (resourceOrSource instanceof _undoRedo_js__WEBPACK_IMPORTED_MODULE_8__.UndoRedoSource) {\n const [, matchedStrResource] = this._findClosestUndoElementWithSource(resourceOrSource.id);\n return matchedStrResource ? true : false;\n }\n const strResource = this.getUriComparisonKey(resourceOrSource);\n if (this._editStacks.has(strResource)) {\n const editStack = this._editStacks.get(strResource);\n return editStack.hasPastElements();\n }\n return false;\n }\n _onError(err, element) {\n (0,_base_common_errors_js__WEBPACK_IMPORTED_MODULE_0__.onUnexpectedError)(err);\n // An error occurred while undoing or redoing => drop the undo/redo stack for all affected resources\n for (const strResource of element.strResources) {\n this.removeElements(strResource);\n }\n this._notificationService.error(err);\n }\n _acquireLocks(editStackSnapshot) {\n // first, check if all locks can be acquired\n for (const editStack of editStackSnapshot.editStacks) {\n if (editStack.locked) {\n throw new Error('Cannot acquire edit stack lock');\n }\n }\n // can acquire all locks\n for (const editStack of editStackSnapshot.editStacks) {\n editStack.locked = true;\n }\n return () => {\n // release all locks\n for (const editStack of editStackSnapshot.editStacks) {\n editStack.locked = false;\n }\n };\n }\n _safeInvokeWithLocks(element, invoke, editStackSnapshot, cleanup, continuation) {\n const releaseLocks = this._acquireLocks(editStackSnapshot);\n let result;\n try {\n result = invoke();\n }\n catch (err) {\n releaseLocks();\n cleanup.dispose();\n return this._onError(err, element);\n }\n if (result) {\n // result is Promise\n return result.then(() => {\n releaseLocks();\n cleanup.dispose();\n return continuation();\n }, (err) => {\n releaseLocks();\n cleanup.dispose();\n return this._onError(err, element);\n });\n }\n else {\n // result is void\n releaseLocks();\n cleanup.dispose();\n return continuation();\n }\n }\n async _invokeWorkspacePrepare(element) {\n if (typeof element.actual.prepareUndoRedo === 'undefined') {\n return _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_1__.Disposable.None;\n }\n const result = element.actual.prepareUndoRedo();\n if (typeof result === 'undefined') {\n return _base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_1__.Disposable.None;\n }\n return result;\n }\n _invokeResourcePrepare(element, callback) {\n if (element.actual.type !== 1 /* UndoRedoElementType.Workspace */ || typeof element.actual.prepareUndoRedo === 'undefined') {\n // no preparation needed\n return callback(_base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_1__.Disposable.None);\n }\n const r = element.actual.prepareUndoRedo();\n if (!r) {\n // nothing to clean up\n return callback(_base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_1__.Disposable.None);\n }\n if ((0,_base_common_lifecycle_js__WEBPACK_IMPORTED_MODULE_1__.isDisposable)(r)) {\n return callback(r);\n }\n return r.then((disposable) => {\n return callback(disposable);\n });\n }\n _getAffectedEditStacks(element) {\n const affectedEditStacks = [];\n for (const strResource of element.strResources) {\n affectedEditStacks.push(this._editStacks.get(strResource) || missingEditStack);\n }\n return new EditStackSnapshot(affectedEditStacks);\n }\n _tryToSplitAndUndo(strResource, element, ignoreResources, message) {\n if (element.canSplit()) {\n this._splitPastWorkspaceElement(element, ignoreResources);\n this._notificationService.warn(message);\n return new WorkspaceVerificationError(this._undo(strResource, 0, true));\n }\n else {\n // Cannot safely split this workspace element => flush all undo/redo stacks\n for (const strResource of element.strResources) {\n this.removeElements(strResource);\n }\n this._notificationService.warn(message);\n return new WorkspaceVerificationError();\n }\n }\n _checkWorkspaceUndo(strResource, element, editStackSnapshot, checkInvalidatedResources) {\n if (element.removedResources) {\n return this._tryToSplitAndUndo(strResource, element, element.removedResources, _nls_js__WEBPACK_IMPORTED_MODULE_4__.localize({ key: 'cannotWorkspaceUndo', comment: ['{0} is a label for an operation. {1} is another message.'] }, \"Could not undo '{0}' across all files. {1}\", element.label, element.removedResources.createMessage()));\n }\n if (checkInvalidatedResources && element.invalidatedResources) {\n return this._tryToSplitAndUndo(strResource, element, element.invalidatedResources, _nls_js__WEBPACK_IMPORTED_MODULE_4__.localize({ key: 'cannotWorkspaceUndo', comment: ['{0} is a label for an operation. {1} is another message.'] }, \"Could not undo '{0}' across all files. {1}\", element.label, element.invalidatedResources.createMessage()));\n }\n // this must be the last past element in all the impacted resources!\n const cannotUndoDueToResources = [];\n for (const editStack of editStackSnapshot.editStacks) {\n if (editStack.getClosestPastElement() !== element) {\n cannotUndoDueToResources.push(editStack.resourceLabel);\n }\n }\n if (cannotUndoDueToResources.length > 0) {\n return this._tryToSplitAndUndo(strResource, element, null, _nls_js__WEBPACK_IMPORTED_MODULE_4__.localize({ key: 'cannotWorkspaceUndoDueToChanges', comment: ['{0} is a label for an operation. {1} is a list of filenames.'] }, \"Could not undo '{0}' across all files because changes were made to {1}\", element.label, cannotUndoDueToResources.join(', ')));\n }\n const cannotLockDueToResources = [];\n for (const editStack of editStackSnapshot.editStacks) {\n if (editStack.locked) {\n cannotLockDueToResources.push(editStack.resourceLabel);\n }\n }\n if (cannotLockDueToResources.length > 0) {\n return this._tryToSplitAndUndo(strResource, element, null, _nls_js__WEBPACK_IMPORTED_MODULE_4__.localize({ key: 'cannotWorkspaceUndoDueToInProgressUndoRedo', comment: ['{0} is a label for an operation. {1} is a list of filenames.'] }, \"Could not undo '{0}' across all files because there is already an undo or redo operation running on {1}\", element.label, cannotLockDueToResources.join(', ')));\n }\n // check if new stack elements were added in the meantime...\n if (!editStackSnapshot.isValid()) {\n return this._tryToSplitAndUndo(strResource, element, null, _nls_js__WEBPACK_IMPORTED_MODULE_4__.localize({ key: 'cannotWorkspaceUndoDueToInMeantimeUndoRedo', comment: ['{0} is a label for an operation. {1} is a list of filenames.'] }, \"Could not undo '{0}' across all files because an undo or redo operation occurred in the meantime\", element.label));\n }\n return null;\n }\n _workspaceUndo(strResource, element, undoConfirmed) {\n const affectedEditStacks = this._getAffectedEditStacks(element);\n const verificationError = this._checkWorkspaceUndo(strResource, element, affectedEditStacks, /*invalidated resources will be checked after the prepare call*/ false);\n if (verificationError) {\n return verificationError.returnValue;\n }\n return this._confirmAndExecuteWorkspaceUndo(strResource, element, affectedEditStacks, undoConfirmed);\n }\n _isPartOfUndoGroup(element) {\n if (!element.groupId) {\n return false;\n }\n // check that there is at least another element with the same groupId ready to be undone\n for (const [, editStack] of this._editStacks) {\n const pastElement = editStack.getClosestPastElement();\n if (!pastElement) {\n continue;\n }\n if (pastElement === element) {\n const secondPastElement = editStack.getSecondClosestPastElement();\n if (secondPastElement && secondPastElement.groupId === element.groupId) {\n // there is another element with the same group id in the same stack!\n return true;\n }\n }\n if (pastElement.groupId === element.groupId) {\n // there is another element with the same group id in another stack!\n return true;\n }\n }\n return false;\n }\n async _confirmAndExecuteWorkspaceUndo(strResource, element, editStackSnapshot, undoConfirmed) {\n if (element.canSplit() && !this._isPartOfUndoGroup(element)) {\n // this element can be split\n let UndoChoice;\n (function (UndoChoice) {\n UndoChoice[UndoChoice[\"All\"] = 0] = \"All\";\n UndoChoice[UndoChoice[\"This\"] = 1] = \"This\";\n UndoChoice[UndoChoice[\"Cancel\"] = 2] = \"Cancel\";\n })(UndoChoice || (UndoChoice = {}));\n const { result } = await this._dialogService.prompt({\n type: _base_common_severity_js__WEBPACK_IMPORTED_MODULE_3__[\"default\"].Info,\n message: _nls_js__WEBPACK_IMPORTED_MODULE_4__.localize('confirmWorkspace', \"Would you like to undo '{0}' across all files?\", element.label),\n buttons: [\n {\n label: _nls_js__WEBPACK_IMPORTED_MODULE_4__.localize({ key: 'ok', comment: ['{0} denotes a number that is > 1, && denotes a mnemonic'] }, \"&&Undo in {0} Files\", editStackSnapshot.editStacks.length),\n run: () => UndoChoice.All\n },\n {\n label: _nls_js__WEBPACK_IMPORTED_MODULE_4__.localize({ key: 'nok', comment: ['&& denotes a mnemonic'] }, \"Undo this &&File\"),\n run: () => UndoChoice.This\n }\n ],\n cancelButton: {\n run: () => UndoChoice.Cancel\n }\n });\n if (result === UndoChoice.Cancel) {\n // choice: cancel\n return;\n }\n if (result === UndoChoice.This) {\n // choice: undo this file\n this._splitPastWorkspaceElement(element, null);\n return this._undo(strResource, 0, true);\n }\n // choice: undo in all files\n // At this point, it is possible that the element has been made invalid in the meantime (due to the confirmation await)\n const verificationError1 = this._checkWorkspaceUndo(strResource, element, editStackSnapshot, /*invalidated resources will be checked after the prepare call*/ false);\n if (verificationError1) {\n return verificationError1.returnValue;\n }\n undoConfirmed = true;\n }\n // prepare\n let cleanup;\n try {\n cleanup = await this._invokeWorkspacePrepare(element);\n }\n catch (err) {\n return this._onError(err, element);\n }\n // At this point, it is possible that the element has been made invalid in the meantime (due to the prepare await)\n const verificationError2 = this._checkWorkspaceUndo(strResource, element, editStackSnapshot, /*now also check that there are no more invalidated resources*/ true);\n if (verificationError2) {\n cleanup.dispose();\n return verificationError2.returnValue;\n }\n for (const editStack of editStackSnapshot.editStacks) {\n editStack.moveBackward(element);\n }\n return this._safeInvokeWithLocks(element, () => element.actual.undo(), editStackSnapshot, cleanup, () => this._continueUndoInGroup(element.groupId, undoConfirmed));\n }\n _resourceUndo(editStack, element, undoConfirmed) {\n if (!element.isValid) {\n // invalid element => immediately flush edit stack!\n editStack.flushAllElements();\n return;\n }\n if (editStack.locked) {\n const message = _nls_js__WEBPACK_IMPORTED_MODULE_4__.localize({ key: 'cannotResourceUndoDueToInProgressUndoRedo', comment: ['{0} is a label for an operation.'] }, \"Could not undo '{0}' because there is already an undo or redo operation running.\", element.label);\n this._notificationService.warn(message);\n return;\n }\n return this._invokeResourcePrepare(element, (cleanup) => {\n editStack.moveBackward(element);\n return this._safeInvokeWithLocks(element, () => element.actual.undo(), new EditStackSnapshot([editStack]), cleanup, () => this._continueUndoInGroup(element.groupId, undoConfirmed));\n });\n }\n _findClosestUndoElementInGroup(groupId) {\n if (!groupId) {\n return [null, null];\n }\n // find another element with the same groupId and with the highest groupOrder ready to be undone\n let matchedElement = null;\n let matchedStrResource = null;\n for (const [strResource, editStack] of this._editStacks) {\n const candidate = editStack.getClosestPastElement();\n if (!candidate) {\n continue;\n }\n if (candidate.groupId === groupId) {\n if (!matchedElement || candidate.groupOrder > matchedElement.groupOrder) {\n matchedElement = candidate;\n matchedStrResource = strResource;\n }\n }\n }\n return [matchedElement, matchedStrResource];\n }\n _continueUndoInGroup(groupId, undoConfirmed) {\n if (!groupId) {\n return;\n }\n const [, matchedStrResource] = this._findClosestUndoElementInGroup(groupId);\n if (matchedStrResource) {\n return this._undo(matchedStrResource, 0, undoConfirmed);\n }\n }\n undo(resourceOrSource) {\n if (resourceOrSource instanceof _undoRedo_js__WEBPACK_IMPORTED_MODULE_8__.UndoRedoSource) {\n const [, matchedStrResource] = this._findClosestUndoElementWithSource(resourceOrSource.id);\n return matchedStrResource ? this._undo(matchedStrResource, resourceOrSource.id, false) : undefined;\n }\n if (typeof resourceOrSource === 'string') {\n return this._undo(resourceOrSource, 0, false);\n }\n return this._undo(this.getUriComparisonKey(resourceOrSource), 0, false);\n }\n _undo(strResource, sourceId = 0, undoConfirmed) {\n if (!this._editStacks.has(strResource)) {\n return;\n }\n const editStack = this._editStacks.get(strResource);\n const element = editStack.getClosestPastElement();\n if (!element) {\n return;\n }\n if (element.groupId) {\n // this element is a part of a group, we need to make sure undoing in a group is in order\n const [matchedElement, matchedStrResource] = this._findClosestUndoElementInGroup(element.groupId);\n if (element !== matchedElement && matchedStrResource) {\n // there is an element in the same group that should be undone before this one\n return this._undo(matchedStrResource, sourceId, undoConfirmed);\n }\n }\n const shouldPromptForConfirmation = (element.sourceId !== sourceId || element.confirmBeforeUndo);\n if (shouldPromptForConfirmation && !undoConfirmed) {\n // Hit a different source or the element asks for prompt before undo, prompt for confirmation\n return this._confirmAndContinueUndo(strResource, sourceId, element);\n }\n try {\n if (element.type === 1 /* UndoRedoElementType.Workspace */) {\n return this._workspaceUndo(strResource, element, undoConfirmed);\n }\n else {\n return this._resourceUndo(editStack, element, undoConfirmed);\n }\n }\n finally {\n if (DEBUG) {\n this._print('undo');\n }\n }\n }\n async _confirmAndContinueUndo(strResource, sourceId, element) {\n const result = await this._dialogService.confirm({\n message: _nls_js__WEBPACK_IMPORTED_MODULE_4__.localize('confirmDifferentSource', \"Would you like to undo '{0}'?\", element.label),\n primaryButton: _nls_js__WEBPACK_IMPORTED_MODULE_4__.localize({ key: 'confirmDifferentSource.yes', comment: ['&& denotes a mnemonic'] }, \"&&Yes\"),\n cancelButton: _nls_js__WEBPACK_IMPORTED_MODULE_4__.localize('confirmDifferentSource.no', \"No\")\n });\n if (!result.confirmed) {\n return;\n }\n return this._undo(strResource, sourceId, true);\n }\n _findClosestRedoElementWithSource(sourceId) {\n if (!sourceId) {\n return [null, null];\n }\n // find an element with sourceId and with the lowest sourceOrder ready to be redone\n let matchedElement = null;\n let matchedStrResource = null;\n for (const [strResource, editStack] of this._editStacks) {\n const candidate = editStack.getClosestFutureElement();\n if (!candidate) {\n continue;\n }\n if (candidate.sourceId === sourceId) {\n if (!matchedElement || candidate.sourceOrder < matchedElement.sourceOrder) {\n matchedElement = candidate;\n matchedStrResource = strResource;\n }\n }\n }\n return [matchedElement, matchedStrResource];\n }\n canRedo(resourceOrSource) {\n if (resourceOrSource instanceof _undoRedo_js__WEBPACK_IMPORTED_MODULE_8__.UndoRedoSource) {\n const [, matchedStrResource] = this._findClosestRedoElementWithSource(resourceOrSource.id);\n return matchedStrResource ? true : false;\n }\n const strResource = this.getUriComparisonKey(resourceOrSource);\n if (this._editStacks.has(strResource)) {\n const editStack = this._editStacks.get(strResource);\n return editStack.hasFutureElements();\n }\n return false;\n }\n _tryToSplitAndRedo(strResource, element, ignoreResources, message) {\n if (element.canSplit()) {\n this._splitFutureWorkspaceElement(element, ignoreResources);\n this._notificationService.warn(message);\n return new WorkspaceVerificationError(this._redo(strResource));\n }\n else {\n // Cannot safely split this workspace element => flush all undo/redo stacks\n for (const strResource of element.strResources) {\n this.removeElements(strResource);\n }\n this._notificationService.warn(message);\n return new WorkspaceVerificationError();\n }\n }\n _checkWorkspaceRedo(strResource, element, editStackSnapshot, checkInvalidatedResources) {\n if (element.removedResources) {\n return this._tryToSplitAndRedo(strResource, element, element.removedResources, _nls_js__WEBPACK_IMPORTED_MODULE_4__.localize({ key: 'cannotWorkspaceRedo', comment: ['{0} is a label for an operation. {1} is another message.'] }, \"Could not redo '{0}' across all files. {1}\", element.label, element.removedResources.createMessage()));\n }\n if (checkInvalidatedResources && element.invalidatedResources) {\n return this._tryToSplitAndRedo(strResource, element, element.invalidatedResources, _nls_js__WEBPACK_IMPORTED_MODULE_4__.localize({ key: 'cannotWorkspaceRedo', comment: ['{0} is a label for an operation. {1} is another message.'] }, \"Could not redo '{0}' across all files. {1}\", element.label, element.invalidatedResources.createMessage()));\n }\n // this must be the last future element in all the impacted resources!\n const cannotRedoDueToResources = [];\n for (const editStack of editStackSnapshot.editStacks) {\n if (editStack.getClosestFutureElement() !== element) {\n cannotRedoDueToResources.push(editStack.resourceLabel);\n }\n }\n if (cannotRedoDueToResources.length > 0) {\n return this._tryToSplitAndRedo(strResource, element, null, _nls_js__WEBPACK_IMPORTED_MODULE_4__.localize({ key: 'cannotWorkspaceRedoDueToChanges', comment: ['{0} is a label for an operation. {1} is a list of filenames.'] }, \"Could not redo '{0}' across all files because changes were made to {1}\", element.label, cannotRedoDueToResources.join(', ')));\n }\n const cannotLockDueToResources = [];\n for (const editStack of editStackSnapshot.editStacks) {\n if (editStack.locked) {\n cannotLockDueToResources.push(editStack.resourceLabel);\n }\n }\n if (cannotLockDueToResources.length > 0) {\n return this._tryToSplitAndRedo(strResource, element, null, _nls_js__WEBPACK_IMPORTED_MODULE_4__.localize({ key: 'cannotWorkspaceRedoDueToInProgressUndoRedo', comment: ['{0} is a label for an operation. {1} is a list of filenames.'] }, \"Could not redo '{0}' across all files because there is already an undo or redo operation running on {1}\", element.label, cannotLockDueToResources.join(', ')));\n }\n // check if new stack elements were added in the meantime...\n if (!editStackSnapshot.isValid()) {\n return this._tryToSplitAndRedo(strResource, element, null, _nls_js__WEBPACK_IMPORTED_MODULE_4__.localize({ key: 'cannotWorkspaceRedoDueToInMeantimeUndoRedo', comment: ['{0} is a label for an operation. {1} is a list of filenames.'] }, \"Could not redo '{0}' across all files because an undo or redo operation occurred in the meantime\", element.label));\n }\n return null;\n }\n _workspaceRedo(strResource, element) {\n const affectedEditStacks = this._getAffectedEditStacks(element);\n const verificationError = this._checkWorkspaceRedo(strResource, element, affectedEditStacks, /*invalidated resources will be checked after the prepare call*/ false);\n if (verificationError) {\n return verificationError.returnValue;\n }\n return this._executeWorkspaceRedo(strResource, element, affectedEditStacks);\n }\n async _executeWorkspaceRedo(strResource, element, editStackSnapshot) {\n // prepare\n let cleanup;\n try {\n cleanup = await this._invokeWorkspacePrepare(element);\n }\n catch (err) {\n return this._onError(err, element);\n }\n // At this point, it is possible that the element has been made invalid in the meantime (due to the prepare await)\n const verificationError = this._checkWorkspaceRedo(strResource, element, editStackSnapshot, /*now also check that there are no more invalidated resources*/ true);\n if (verificationError) {\n cleanup.dispose();\n return verificationError.returnValue;\n }\n for (const editStack of editStackSnapshot.editStacks) {\n editStack.moveForward(element);\n }\n return this._safeInvokeWithLocks(element, () => element.actual.redo(), editStackSnapshot, cleanup, () => this._continueRedoInGroup(element.groupId));\n }\n _resourceRedo(editStack, element) {\n if (!element.isValid) {\n // invalid element => immediately flush edit stack!\n editStack.flushAllElements();\n return;\n }\n if (editStack.locked) {\n const message = _nls_js__WEBPACK_IMPORTED_MODULE_4__.localize({ key: 'cannotResourceRedoDueToInProgressUndoRedo', comment: ['{0} is a label for an operation.'] }, \"Could not redo '{0}' because there is already an undo or redo operation running.\", element.label);\n this._notificationService.warn(message);\n return;\n }\n return this._invokeResourcePrepare(element, (cleanup) => {\n editStack.moveForward(element);\n return this._safeInvokeWithLocks(element, () => element.actual.redo(), new EditStackSnapshot([editStack]), cleanup, () => this._continueRedoInGroup(element.groupId));\n });\n }\n _findClosestRedoElementInGroup(groupId) {\n if (!groupId) {\n return [null, null];\n }\n // find another element with the same groupId and with the lowest groupOrder ready to be redone\n let matchedElement = null;\n let matchedStrResource = null;\n for (const [strResource, editStack] of this._editStacks) {\n const candidate = editStack.getClosestFutureElement();\n if (!candidate) {\n continue;\n }\n if (candidate.groupId === groupId) {\n if (!matchedElement || candidate.groupOrder < matchedElement.groupOrder) {\n matchedElement = candidate;\n matchedStrResource = strResource;\n }\n }\n }\n return [matchedElement, matchedStrResource];\n }\n _continueRedoInGroup(groupId) {\n if (!groupId) {\n return;\n }\n const [, matchedStrResource] = this._findClosestRedoElementInGroup(groupId);\n if (matchedStrResource) {\n return this._redo(matchedStrResource);\n }\n }\n redo(resourceOrSource) {\n if (resourceOrSource instanceof _undoRedo_js__WEBPACK_IMPORTED_MODULE_8__.UndoRedoSource) {\n const [, matchedStrResource] = this._findClosestRedoElementWithSource(resourceOrSource.id);\n return matchedStrResource ? this._redo(matchedStrResource) : undefined;\n }\n if (typeof resourceOrSource === 'string') {\n return this._redo(resourceOrSource);\n }\n return this._redo(this.getUriComparisonKey(resourceOrSource));\n }\n _redo(strResource) {\n if (!this._editStacks.has(strResource)) {\n return;\n }\n const editStack = this._editStacks.get(strResource);\n const element = editStack.getClosestFutureElement();\n if (!element) {\n return;\n }\n if (element.groupId) {\n // this element is a part of a group, we need to make sure redoing in a group is in order\n const [matchedElement, matchedStrResource] = this._findClosestRedoElementInGroup(element.groupId);\n if (element !== matchedElement && matchedStrResource) {\n // there is an element in the same group that should be redone before this one\n return this._redo(matchedStrResource);\n }\n }\n try {\n if (element.type === 1 /* UndoRedoElementType.Workspace */) {\n return this._workspaceRedo(strResource, element);\n }\n else {\n return this._resourceRedo(editStack, element);\n }\n }\n finally {\n if (DEBUG) {\n this._print('redo');\n }\n }\n }\n};\nUndoRedoService = __decorate([\n __param(0, _dialogs_common_dialogs_js__WEBPACK_IMPORTED_MODULE_5__.IDialogService),\n __param(1, _notification_common_notification_js__WEBPACK_IMPORTED_MODULE_7__.INotificationService)\n], UndoRedoService);\n\nclass WorkspaceVerificationError {\n constructor(returnValue) {\n this.returnValue = returnValue;\n }\n}\n(0,_instantiation_common_extensions_js__WEBPACK_IMPORTED_MODULE_6__.registerSingleton)(_undoRedo_js__WEBPACK_IMPORTED_MODULE_8__.IUndoRedoService, UndoRedoService, 1 /* InstantiationType.Delayed */);\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/platform/undoRedo/common/undoRedoService.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/platform/workspace/common/workspace.js":
/*!**********************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/platform/workspace/common/workspace.js ***!
\**********************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ EXTENSION_DEVELOPMENT_EMPTY_WINDOW_WORKSPACE: () => (/* binding */ EXTENSION_DEVELOPMENT_EMPTY_WINDOW_WORKSPACE),\n/* harmony export */ IWorkspaceContextService: () => (/* binding */ IWorkspaceContextService),\n/* harmony export */ STANDALONE_EDITOR_WORKSPACE_ID: () => (/* binding */ STANDALONE_EDITOR_WORKSPACE_ID),\n/* harmony export */ UNKNOWN_EMPTY_WINDOW_WORKSPACE: () => (/* binding */ UNKNOWN_EMPTY_WINDOW_WORKSPACE),\n/* harmony export */ WORKSPACE_EXTENSION: () => (/* binding */ WORKSPACE_EXTENSION),\n/* harmony export */ WORKSPACE_FILTER: () => (/* binding */ WORKSPACE_FILTER),\n/* harmony export */ Workspace: () => (/* binding */ Workspace),\n/* harmony export */ WorkspaceFolder: () => (/* binding */ WorkspaceFolder),\n/* harmony export */ isEmptyWorkspaceIdentifier: () => (/* binding */ isEmptyWorkspaceIdentifier),\n/* harmony export */ isSingleFolderWorkspaceIdentifier: () => (/* binding */ isSingleFolderWorkspaceIdentifier),\n/* harmony export */ isStandaloneEditorWorkspace: () => (/* binding */ isStandaloneEditorWorkspace),\n/* harmony export */ isWorkspaceIdentifier: () => (/* binding */ isWorkspaceIdentifier),\n/* harmony export */ toWorkspaceIdentifier: () => (/* binding */ toWorkspaceIdentifier)\n/* harmony export */ });\n/* harmony import */ var _nls_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../nls.js */ \"./node_modules/monaco-editor/esm/vs/nls.js\");\n/* harmony import */ var _base_common_path_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../base/common/path.js */ \"./node_modules/monaco-editor/esm/vs/base/common/path.js\");\n/* harmony import */ var _base_common_ternarySearchTree_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../base/common/ternarySearchTree.js */ \"./node_modules/monaco-editor/esm/vs/base/common/ternarySearchTree.js\");\n/* harmony import */ var _base_common_uri_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../../base/common/uri.js */ \"./node_modules/monaco-editor/esm/vs/base/common/uri.js\");\n/* harmony import */ var _instantiation_common_instantiation_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../instantiation/common/instantiation.js */ \"./node_modules/monaco-editor/esm/vs/platform/instantiation/common/instantiation.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n\n\n\n\nconst IWorkspaceContextService = (0,_instantiation_common_instantiation_js__WEBPACK_IMPORTED_MODULE_4__.createDecorator)('contextService');\nfunction isSingleFolderWorkspaceIdentifier(obj) {\n const singleFolderIdentifier = obj;\n return typeof (singleFolderIdentifier === null || singleFolderIdentifier === void 0 ? void 0 : singleFolderIdentifier.id) === 'string' && _base_common_uri_js__WEBPACK_IMPORTED_MODULE_3__.URI.isUri(singleFolderIdentifier.uri);\n}\nfunction isEmptyWorkspaceIdentifier(obj) {\n const emptyWorkspaceIdentifier = obj;\n return typeof (emptyWorkspaceIdentifier === null || emptyWorkspaceIdentifier === void 0 ? void 0 : emptyWorkspaceIdentifier.id) === 'string'\n && !isSingleFolderWorkspaceIdentifier(obj)\n && !isWorkspaceIdentifier(obj);\n}\nconst EXTENSION_DEVELOPMENT_EMPTY_WINDOW_WORKSPACE = { id: 'ext-dev' };\nconst UNKNOWN_EMPTY_WINDOW_WORKSPACE = { id: 'empty-window' };\nfunction toWorkspaceIdentifier(arg0, isExtensionDevelopment) {\n // Empty workspace\n if (typeof arg0 === 'string' || typeof arg0 === 'undefined') {\n // With a backupPath, the basename is the empty workspace identifier\n if (typeof arg0 === 'string') {\n return {\n id: (0,_base_common_path_js__WEBPACK_IMPORTED_MODULE_1__.basename)(arg0)\n };\n }\n // Extension development empty windows have backups disabled\n // so we return a constant workspace identifier for extension\n // authors to allow to restore their workspace state even then.\n if (isExtensionDevelopment) {\n return EXTENSION_DEVELOPMENT_EMPTY_WINDOW_WORKSPACE;\n }\n return UNKNOWN_EMPTY_WINDOW_WORKSPACE;\n }\n // Multi root\n const workspace = arg0;\n if (workspace.configuration) {\n return {\n id: workspace.id,\n configPath: workspace.configuration\n };\n }\n // Single folder\n if (workspace.folders.length === 1) {\n return {\n id: workspace.id,\n uri: workspace.folders[0].uri\n };\n }\n // Empty window\n return {\n id: workspace.id\n };\n}\nfunction isWorkspaceIdentifier(obj) {\n const workspaceIdentifier = obj;\n return typeof (workspaceIdentifier === null || workspaceIdentifier === void 0 ? void 0 : workspaceIdentifier.id) === 'string' && _base_common_uri_js__WEBPACK_IMPORTED_MODULE_3__.URI.isUri(workspaceIdentifier.configPath);\n}\nclass Workspace {\n constructor(_id, folders, _transient, _configuration, _ignorePathCasing) {\n this._id = _id;\n this._transient = _transient;\n this._configuration = _configuration;\n this._ignorePathCasing = _ignorePathCasing;\n this._foldersMap = _base_common_ternarySearchTree_js__WEBPACK_IMPORTED_MODULE_2__.TernarySearchTree.forUris(this._ignorePathCasing, () => true);\n this.folders = folders;\n }\n get folders() {\n return this._folders;\n }\n set folders(folders) {\n this._folders = folders;\n this.updateFoldersMap();\n }\n get id() {\n return this._id;\n }\n get transient() {\n return this._transient;\n }\n get configuration() {\n return this._configuration;\n }\n set configuration(configuration) {\n this._configuration = configuration;\n }\n getFolder(resource) {\n if (!resource) {\n return null;\n }\n return this._foldersMap.findSubstr(resource) || null;\n }\n updateFoldersMap() {\n this._foldersMap = _base_common_ternarySearchTree_js__WEBPACK_IMPORTED_MODULE_2__.TernarySearchTree.forUris(this._ignorePathCasing, () => true);\n for (const folder of this.folders) {\n this._foldersMap.set(folder.uri, folder);\n }\n }\n toJSON() {\n return { id: this.id, folders: this.folders, transient: this.transient, configuration: this.configuration };\n }\n}\nclass WorkspaceFolder {\n constructor(data, \n /**\n * Provides access to the original metadata for this workspace\n * folder. This can be different from the metadata provided in\n * this class:\n * - raw paths can be relative\n * - raw paths are not normalized\n */\n raw) {\n this.raw = raw;\n this.uri = data.uri;\n this.index = data.index;\n this.name = data.name;\n }\n toJSON() {\n return { uri: this.uri, name: this.name, index: this.index };\n }\n}\nconst WORKSPACE_EXTENSION = 'code-workspace';\nconst WORKSPACE_FILTER = [{ name: (0,_nls_js__WEBPACK_IMPORTED_MODULE_0__.localize)('codeWorkspace', \"Code Workspace\"), extensions: [WORKSPACE_EXTENSION] }];\nconst STANDALONE_EDITOR_WORKSPACE_ID = '4064f6ec-cb38-4ad0-af64-ee6467e63c82';\nfunction isStandaloneEditorWorkspace(workspace) {\n return workspace.id === STANDALONE_EDITOR_WORKSPACE_ID;\n}\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/platform/workspace/common/workspace.js?");
/***/ }),
/***/ "./node_modules/monaco-editor/esm/vs/platform/workspace/common/workspaceTrust.js":
/*!***************************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/platform/workspace/common/workspaceTrust.js ***!
\***************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ IWorkspaceTrustManagementService: () => (/* binding */ IWorkspaceTrustManagementService)\n/* harmony export */ });\n/* harmony import */ var _instantiation_common_instantiation_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../instantiation/common/instantiation.js */ \"./node_modules/monaco-editor/esm/vs/platform/instantiation/common/instantiation.js\");\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\nconst IWorkspaceTrustManagementService = (0,_instantiation_common_instantiation_js__WEBPACK_IMPORTED_MODULE_0__.createDecorator)('workspaceTrustManagementService');\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/monaco-editor/esm/vs/platform/workspace/common/workspaceTrust.js?");
/***/ }),
/***/ "./node_modules/ms/index.js":
/*!**********************************!*\
!*** ./node_modules/ms/index.js ***!
\**********************************/
/***/ ((module) => {
eval("/**\n * Helpers.\n */\n\nvar s = 1000;\nvar m = s * 60;\nvar h = m * 60;\nvar d = h * 24;\nvar w = d * 7;\nvar y = d * 365.25;\n\n/**\n * Parse or format the given `val`.\n *\n * Options:\n *\n * - `long` verbose formatting [false]\n *\n * @param {String|Number} val\n * @param {Object} [options]\n * @throws {Error} throw an error if val is not a non-empty string or a number\n * @return {String|Number}\n * @api public\n */\n\nmodule.exports = function(val, options) {\n options = options || {};\n var type = typeof val;\n if (type === 'string' && val.length > 0) {\n return parse(val);\n } else if (type === 'number' && isFinite(val)) {\n return options.long ? fmtLong(val) : fmtShort(val);\n }\n throw new Error(\n 'val is not a non-empty string or a valid number. val=' +\n JSON.stringify(val)\n );\n};\n\n/**\n * Parse the given `str` and return milliseconds.\n *\n * @param {String} str\n * @return {Number}\n * @api private\n */\n\nfunction parse(str) {\n str = String(str);\n if (str.length > 100) {\n return;\n }\n var match = /^(-?(?:\\d+)?\\.?\\d+) *(milliseconds?|msecs?|ms|seconds?|secs?|s|minutes?|mins?|m|hours?|hrs?|h|days?|d|weeks?|w|years?|yrs?|y)?$/i.exec(\n str\n );\n if (!match) {\n return;\n }\n var n = parseFloat(match[1]);\n var type = (match[2] || 'ms').toLowerCase();\n switch (type) {\n case 'years':\n case 'year':\n case 'yrs':\n case 'yr':\n case 'y':\n return n * y;\n case 'weeks':\n case 'week':\n case 'w':\n return n * w;\n case 'days':\n case 'day':\n case 'd':\n return n * d;\n case 'hours':\n case 'hour':\n case 'hrs':\n case 'hr':\n case 'h':\n return n * h;\n case 'minutes':\n case 'minute':\n case 'mins':\n case 'min':\n case 'm':\n return n * m;\n case 'seconds':\n case 'second':\n case 'secs':\n case 'sec':\n case 's':\n return n * s;\n case 'milliseconds':\n case 'millisecond':\n case 'msecs':\n case 'msec':\n case 'ms':\n return n;\n default:\n return undefined;\n }\n}\n\n/**\n * Short format for `ms`.\n *\n * @param {Number} ms\n * @return {String}\n * @api private\n */\n\nfunction fmtShort(ms) {\n var msAbs = Math.abs(ms);\n if (msAbs >= d) {\n return Math.round(ms / d) + 'd';\n }\n if (msAbs >= h) {\n return Math.round(ms / h) + 'h';\n }\n if (msAbs >= m) {\n return Math.round(ms / m) + 'm';\n }\n if (msAbs >= s) {\n return Math.round(ms / s) + 's';\n }\n return ms + 'ms';\n}\n\n/**\n * Long format for `ms`.\n *\n * @param {Number} ms\n * @return {String}\n * @api private\n */\n\nfunction fmtLong(ms) {\n var msAbs = Math.abs(ms);\n if (msAbs >= d) {\n return plural(ms, msAbs, d, 'day');\n }\n if (msAbs >= h) {\n return plural(ms, msAbs, h, 'hour');\n }\n if (msAbs >= m) {\n return plural(ms, msAbs, m, 'minute');\n }\n if (msAbs >= s) {\n return plural(ms, msAbs, s, 'second');\n }\n return ms + ' ms';\n}\n\n/**\n * Pluralization helper.\n */\n\nfunction plural(ms, msAbs, n, name) {\n var isPlural = msAbs >= n * 1.5;\n return Math.round(ms / n) + ' ' + name + (isPlural ? 's' : '');\n}\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/ms/index.js?");
/***/ }),
/***/ "./node_modules/querystringify/index.js":
/*!**********************************************!*\
!*** ./node_modules/querystringify/index.js ***!
\**********************************************/
/***/ ((__unused_webpack_module, exports) => {
"use strict";
eval("\n\nvar has = Object.prototype.hasOwnProperty\n , undef;\n\n/**\n * Decode a URI encoded string.\n *\n * @param {String} input The URI encoded string.\n * @returns {String|Null} The decoded string.\n * @api private\n */\nfunction decode(input) {\n try {\n return decodeURIComponent(input.replace(/\\+/g, ' '));\n } catch (e) {\n return null;\n }\n}\n\n/**\n * Attempts to encode a given input.\n *\n * @param {String} input The string that needs to be encoded.\n * @returns {String|Null} The encoded string.\n * @api private\n */\nfunction encode(input) {\n try {\n return encodeURIComponent(input);\n } catch (e) {\n return null;\n }\n}\n\n/**\n * Simple query string parser.\n *\n * @param {String} query The query string that needs to be parsed.\n * @returns {Object}\n * @api public\n */\nfunction querystring(query) {\n var parser = /([^=?#&]+)=?([^&]*)/g\n , result = {}\n , part;\n\n while (part = parser.exec(query)) {\n var key = decode(part[1])\n , value = decode(part[2]);\n\n //\n // Prevent overriding of existing properties. This ensures that build-in\n // methods like `toString` or __proto__ are not overriden by malicious\n // querystrings.\n //\n // In the case if failed decoding, we want to omit the key/value pairs\n // from the result.\n //\n if (key === null || value === null || key in result) continue;\n result[key] = value;\n }\n\n return result;\n}\n\n/**\n * Transform a query string to an object.\n *\n * @param {Object} obj Object that should be transformed.\n * @param {String} prefix Optional prefix.\n * @returns {String}\n * @api public\n */\nfunction querystringify(obj, prefix) {\n prefix = prefix || '';\n\n var pairs = []\n , value\n , key;\n\n //\n // Optionally prefix with a '?' if needed\n //\n if ('string' !== typeof prefix) prefix = '?';\n\n for (key in obj) {\n if (has.call(obj, key)) {\n value = obj[key];\n\n //\n // Edge cases where we actually want to encode the value to an empty\n // string instead of the stringified value.\n //\n if (!value && (value === null || value === undef || isNaN(value))) {\n value = '';\n }\n\n key = encode(key);\n value = encode(value);\n\n //\n // If we failed to encode the strings, we should bail out as we don't\n // want to add invalid strings to the query.\n //\n if (key === null || value === null) continue;\n pairs.push(key +'='+ value);\n }\n }\n\n return pairs.length ? prefix + pairs.join('&') : '';\n}\n\n//\n// Expose the module.\n//\nexports.stringify = querystringify;\nexports.parse = querystring;\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/querystringify/index.js?");
/***/ }),
/***/ "./node_modules/requires-port/index.js":
/*!*********************************************!*\
!*** ./node_modules/requires-port/index.js ***!
\*********************************************/
/***/ ((module) => {
"use strict";
eval("\n\n/**\n * Check if we're required to add a port number.\n *\n * @see https://url.spec.whatwg.org/#default-port\n * @param {Number|String} port Port number we need to check\n * @param {String} protocol Protocol we need to check against.\n * @returns {Boolean} Is it a default port for the given protocol\n * @api private\n */\nmodule.exports = function required(port, protocol) {\n protocol = protocol.split(':')[0];\n port = +port;\n\n if (!port) return false;\n\n switch (protocol) {\n case 'http':\n case 'ws':\n return port !== 80;\n\n case 'https':\n case 'wss':\n return port !== 443;\n\n case 'ftp':\n return port !== 21;\n\n case 'gopher':\n return port !== 70;\n\n case 'file':\n return false;\n }\n\n return port !== 0;\n};\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/requires-port/index.js?");
/***/ }),
/***/ "./node_modules/sockjs-client/lib/entry.js":
/*!*************************************************!*\
!*** ./node_modules/sockjs-client/lib/entry.js ***!
\*************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {
"use strict";
eval("\n\nvar transportList = __webpack_require__(/*! ./transport-list */ \"./node_modules/sockjs-client/lib/transport-list.js\");\n\nmodule.exports = __webpack_require__(/*! ./main */ \"./node_modules/sockjs-client/lib/main.js\")(transportList);\n\n// TODO can't get rid of this until all servers do\nif ('_sockjs_onload' in __webpack_require__.g) {\n setTimeout(__webpack_require__.g._sockjs_onload, 1);\n}\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/sockjs-client/lib/entry.js?");
/***/ }),
/***/ "./node_modules/sockjs-client/lib/event/close.js":
/*!*******************************************************!*\
!*** ./node_modules/sockjs-client/lib/event/close.js ***!
\*******************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {
"use strict";
eval("\n\nvar inherits = __webpack_require__(/*! inherits */ \"./node_modules/inherits/inherits_browser.js\")\n , Event = __webpack_require__(/*! ./event */ \"./node_modules/sockjs-client/lib/event/event.js\")\n ;\n\nfunction CloseEvent() {\n Event.call(this);\n this.initEvent('close', false, false);\n this.wasClean = false;\n this.code = 0;\n this.reason = '';\n}\n\ninherits(CloseEvent, Event);\n\nmodule.exports = CloseEvent;\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/sockjs-client/lib/event/close.js?");
/***/ }),
/***/ "./node_modules/sockjs-client/lib/event/emitter.js":
/*!*********************************************************!*\
!*** ./node_modules/sockjs-client/lib/event/emitter.js ***!
\*********************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {
"use strict";
eval("\n\nvar inherits = __webpack_require__(/*! inherits */ \"./node_modules/inherits/inherits_browser.js\")\n , EventTarget = __webpack_require__(/*! ./eventtarget */ \"./node_modules/sockjs-client/lib/event/eventtarget.js\")\n ;\n\nfunction EventEmitter() {\n EventTarget.call(this);\n}\n\ninherits(EventEmitter, EventTarget);\n\nEventEmitter.prototype.removeAllListeners = function(type) {\n if (type) {\n delete this._listeners[type];\n } else {\n this._listeners = {};\n }\n};\n\nEventEmitter.prototype.once = function(type, listener) {\n var self = this\n , fired = false;\n\n function g() {\n self.removeListener(type, g);\n\n if (!fired) {\n fired = true;\n listener.apply(this, arguments);\n }\n }\n\n this.on(type, g);\n};\n\nEventEmitter.prototype.emit = function() {\n var type = arguments[0];\n var listeners = this._listeners[type];\n if (!listeners) {\n return;\n }\n // equivalent of Array.prototype.slice.call(arguments, 1);\n var l = arguments.length;\n var args = new Array(l - 1);\n for (var ai = 1; ai < l; ai++) {\n args[ai - 1] = arguments[ai];\n }\n for (var i = 0; i < listeners.length; i++) {\n listeners[i].apply(this, args);\n }\n};\n\nEventEmitter.prototype.on = EventEmitter.prototype.addListener = EventTarget.prototype.addEventListener;\nEventEmitter.prototype.removeListener = EventTarget.prototype.removeEventListener;\n\nmodule.exports.EventEmitter = EventEmitter;\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/sockjs-client/lib/event/emitter.js?");
/***/ }),
/***/ "./node_modules/sockjs-client/lib/event/event.js":
/*!*******************************************************!*\
!*** ./node_modules/sockjs-client/lib/event/event.js ***!
\*******************************************************/
/***/ ((module) => {
"use strict";
eval("\n\nfunction Event(eventType) {\n this.type = eventType;\n}\n\nEvent.prototype.initEvent = function(eventType, canBubble, cancelable) {\n this.type = eventType;\n this.bubbles = canBubble;\n this.cancelable = cancelable;\n this.timeStamp = +new Date();\n return this;\n};\n\nEvent.prototype.stopPropagation = function() {};\nEvent.prototype.preventDefault = function() {};\n\nEvent.CAPTURING_PHASE = 1;\nEvent.AT_TARGET = 2;\nEvent.BUBBLING_PHASE = 3;\n\nmodule.exports = Event;\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/sockjs-client/lib/event/event.js?");
/***/ }),
/***/ "./node_modules/sockjs-client/lib/event/eventtarget.js":
/*!*************************************************************!*\
!*** ./node_modules/sockjs-client/lib/event/eventtarget.js ***!
\*************************************************************/
/***/ ((module) => {
"use strict";
eval("\n\n/* Simplified implementation of DOM2 EventTarget.\n * http://www.w3.org/TR/DOM-Level-2-Events/events.html#Events-EventTarget\n */\n\nfunction EventTarget() {\n this._listeners = {};\n}\n\nEventTarget.prototype.addEventListener = function(eventType, listener) {\n if (!(eventType in this._listeners)) {\n this._listeners[eventType] = [];\n }\n var arr = this._listeners[eventType];\n // #4\n if (arr.indexOf(listener) === -1) {\n // Make a copy so as not to interfere with a current dispatchEvent.\n arr = arr.concat([listener]);\n }\n this._listeners[eventType] = arr;\n};\n\nEventTarget.prototype.removeEventListener = function(eventType, listener) {\n var arr = this._listeners[eventType];\n if (!arr) {\n return;\n }\n var idx = arr.indexOf(listener);\n if (idx !== -1) {\n if (arr.length > 1) {\n // Make a copy so as not to interfere with a current dispatchEvent.\n this._listeners[eventType] = arr.slice(0, idx).concat(arr.slice(idx + 1));\n } else {\n delete this._listeners[eventType];\n }\n return;\n }\n};\n\nEventTarget.prototype.dispatchEvent = function() {\n var event = arguments[0];\n var t = event.type;\n // equivalent of Array.prototype.slice.call(arguments, 0);\n var args = arguments.length === 1 ? [event] : Array.apply(null, arguments);\n // TODO: This doesn't match the real behavior; per spec, onfoo get\n // their place in line from the /first/ time they're set from\n // non-null. Although WebKit bumps it to the end every time it's\n // set.\n if (this['on' + t]) {\n this['on' + t].apply(this, args);\n }\n if (t in this._listeners) {\n // Grab a reference to the listeners list. removeEventListener may alter the list.\n var listeners = this._listeners[t];\n for (var i = 0; i < listeners.length; i++) {\n listeners[i].apply(this, args);\n }\n }\n};\n\nmodule.exports = EventTarget;\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/sockjs-client/lib/event/eventtarget.js?");
/***/ }),
/***/ "./node_modules/sockjs-client/lib/event/trans-message.js":
/*!***************************************************************!*\
!*** ./node_modules/sockjs-client/lib/event/trans-message.js ***!
\***************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {
"use strict";
eval("\n\nvar inherits = __webpack_require__(/*! inherits */ \"./node_modules/inherits/inherits_browser.js\")\n , Event = __webpack_require__(/*! ./event */ \"./node_modules/sockjs-client/lib/event/event.js\")\n ;\n\nfunction TransportMessageEvent(data) {\n Event.call(this);\n this.initEvent('message', false, false);\n this.data = data;\n}\n\ninherits(TransportMessageEvent, Event);\n\nmodule.exports = TransportMessageEvent;\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/sockjs-client/lib/event/trans-message.js?");
/***/ }),
/***/ "./node_modules/sockjs-client/lib/facade.js":
/*!**************************************************!*\
!*** ./node_modules/sockjs-client/lib/facade.js ***!
\**************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {
"use strict";
eval("\n\nvar iframeUtils = __webpack_require__(/*! ./utils/iframe */ \"./node_modules/sockjs-client/lib/utils/iframe.js\")\n ;\n\nfunction FacadeJS(transport) {\n this._transport = transport;\n transport.on('message', this._transportMessage.bind(this));\n transport.on('close', this._transportClose.bind(this));\n}\n\nFacadeJS.prototype._transportClose = function(code, reason) {\n iframeUtils.postMessage('c', JSON.stringify([code, reason]));\n};\nFacadeJS.prototype._transportMessage = function(frame) {\n iframeUtils.postMessage('t', frame);\n};\nFacadeJS.prototype._send = function(data) {\n this._transport.send(data);\n};\nFacadeJS.prototype._close = function() {\n this._transport.close();\n this._transport.removeAllListeners();\n};\n\nmodule.exports = FacadeJS;\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/sockjs-client/lib/facade.js?");
/***/ }),
/***/ "./node_modules/sockjs-client/lib/iframe-bootstrap.js":
/*!************************************************************!*\
!*** ./node_modules/sockjs-client/lib/iframe-bootstrap.js ***!
\************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {
"use strict";
eval("\n\nvar urlUtils = __webpack_require__(/*! ./utils/url */ \"./node_modules/sockjs-client/lib/utils/url.js\")\n , eventUtils = __webpack_require__(/*! ./utils/event */ \"./node_modules/sockjs-client/lib/utils/event.js\")\n , FacadeJS = __webpack_require__(/*! ./facade */ \"./node_modules/sockjs-client/lib/facade.js\")\n , InfoIframeReceiver = __webpack_require__(/*! ./info-iframe-receiver */ \"./node_modules/sockjs-client/lib/info-iframe-receiver.js\")\n , iframeUtils = __webpack_require__(/*! ./utils/iframe */ \"./node_modules/sockjs-client/lib/utils/iframe.js\")\n , loc = __webpack_require__(/*! ./location */ \"./node_modules/sockjs-client/lib/location.js\")\n ;\n\nvar debug = function() {};\nif (true) {\n debug = __webpack_require__(/*! debug */ \"./node_modules/sockjs-client/node_modules/debug/src/browser.js\")('sockjs-client:iframe-bootstrap');\n}\n\nmodule.exports = function(SockJS, availableTransports) {\n var transportMap = {};\n availableTransports.forEach(function(at) {\n if (at.facadeTransport) {\n transportMap[at.facadeTransport.transportName] = at.facadeTransport;\n }\n });\n\n // hard-coded for the info iframe\n // TODO see if we can make this more dynamic\n transportMap[InfoIframeReceiver.transportName] = InfoIframeReceiver;\n var parentOrigin;\n\n /* eslint-disable camelcase */\n SockJS.bootstrap_iframe = function() {\n /* eslint-enable camelcase */\n var facade;\n iframeUtils.currentWindowId = loc.hash.slice(1);\n var onMessage = function(e) {\n if (e.source !== parent) {\n return;\n }\n if (typeof parentOrigin === 'undefined') {\n parentOrigin = e.origin;\n }\n if (e.origin !== parentOrigin) {\n return;\n }\n\n var iframeMessage;\n try {\n iframeMessage = JSON.parse(e.data);\n } catch (ignored) {\n debug('bad json', e.data);\n return;\n }\n\n if (iframeMessage.windowId !== iframeUtils.currentWindowId) {\n return;\n }\n switch (iframeMessage.type) {\n case 's':\n var p;\n try {\n p = JSON.parse(iframeMessage.data);\n } catch (ignored) {\n debug('bad json', iframeMessage.data);\n break;\n }\n var version = p[0];\n var transport = p[1];\n var transUrl = p[2];\n var baseUrl = p[3];\n debug(version, transport, transUrl, baseUrl);\n // change this to semver logic\n if (version !== SockJS.version) {\n throw new Error('Incompatible SockJS! Main site uses:' +\n ' \"' + version + '\", the iframe:' +\n ' \"' + SockJS.version + '\".');\n }\n\n if (!urlUtils.isOriginEqual(transUrl, loc.href) ||\n !urlUtils.isOriginEqual(baseUrl, loc.href)) {\n throw new Error('Can\\'t connect to different domain from within an ' +\n 'iframe. (' + loc.href + ', ' + transUrl + ', ' + baseUrl + ')');\n }\n facade = new FacadeJS(new transportMap[transport](transUrl, baseUrl));\n break;\n case 'm':\n facade._send(iframeMessage.data);\n break;\n case 'c':\n if (facade) {\n facade._close();\n }\n facade = null;\n break;\n }\n };\n\n eventUtils.attachEvent('message', onMessage);\n\n // Start\n iframeUtils.postMessage('s');\n };\n};\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/sockjs-client/lib/iframe-bootstrap.js?");
/***/ }),
/***/ "./node_modules/sockjs-client/lib/info-ajax.js":
/*!*****************************************************!*\
!*** ./node_modules/sockjs-client/lib/info-ajax.js ***!
\*****************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {
"use strict";
eval("\n\nvar EventEmitter = (__webpack_require__(/*! events */ \"./node_modules/sockjs-client/lib/event/emitter.js\").EventEmitter)\n , inherits = __webpack_require__(/*! inherits */ \"./node_modules/inherits/inherits_browser.js\")\n , objectUtils = __webpack_require__(/*! ./utils/object */ \"./node_modules/sockjs-client/lib/utils/object.js\")\n ;\n\nvar debug = function() {};\nif (true) {\n debug = __webpack_require__(/*! debug */ \"./node_modules/sockjs-client/node_modules/debug/src/browser.js\")('sockjs-client:info-ajax');\n}\n\nfunction InfoAjax(url, AjaxObject) {\n EventEmitter.call(this);\n\n var self = this;\n var t0 = +new Date();\n this.xo = new AjaxObject('GET', url);\n\n this.xo.once('finish', function(status, text) {\n var info, rtt;\n if (status === 200) {\n rtt = (+new Date()) - t0;\n if (text) {\n try {\n info = JSON.parse(text);\n } catch (e) {\n debug('bad json', text);\n }\n }\n\n if (!objectUtils.isObject(info)) {\n info = {};\n }\n }\n self.emit('finish', info, rtt);\n self.removeAllListeners();\n });\n}\n\ninherits(InfoAjax, EventEmitter);\n\nInfoAjax.prototype.close = function() {\n this.removeAllListeners();\n this.xo.close();\n};\n\nmodule.exports = InfoAjax;\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/sockjs-client/lib/info-ajax.js?");
/***/ }),
/***/ "./node_modules/sockjs-client/lib/info-iframe-receiver.js":
/*!****************************************************************!*\
!*** ./node_modules/sockjs-client/lib/info-iframe-receiver.js ***!
\****************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {
"use strict";
eval("\n\nvar inherits = __webpack_require__(/*! inherits */ \"./node_modules/inherits/inherits_browser.js\")\n , EventEmitter = (__webpack_require__(/*! events */ \"./node_modules/sockjs-client/lib/event/emitter.js\").EventEmitter)\n , XHRLocalObject = __webpack_require__(/*! ./transport/sender/xhr-local */ \"./node_modules/sockjs-client/lib/transport/sender/xhr-local.js\")\n , InfoAjax = __webpack_require__(/*! ./info-ajax */ \"./node_modules/sockjs-client/lib/info-ajax.js\")\n ;\n\nfunction InfoReceiverIframe(transUrl) {\n var self = this;\n EventEmitter.call(this);\n\n this.ir = new InfoAjax(transUrl, XHRLocalObject);\n this.ir.once('finish', function(info, rtt) {\n self.ir = null;\n self.emit('message', JSON.stringify([info, rtt]));\n });\n}\n\ninherits(InfoReceiverIframe, EventEmitter);\n\nInfoReceiverIframe.transportName = 'iframe-info-receiver';\n\nInfoReceiverIframe.prototype.close = function() {\n if (this.ir) {\n this.ir.close();\n this.ir = null;\n }\n this.removeAllListeners();\n};\n\nmodule.exports = InfoReceiverIframe;\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/sockjs-client/lib/info-iframe-receiver.js?");
/***/ }),
/***/ "./node_modules/sockjs-client/lib/info-iframe.js":
/*!*******************************************************!*\
!*** ./node_modules/sockjs-client/lib/info-iframe.js ***!
\*******************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {
"use strict";
eval("\n\nvar EventEmitter = (__webpack_require__(/*! events */ \"./node_modules/sockjs-client/lib/event/emitter.js\").EventEmitter)\n , inherits = __webpack_require__(/*! inherits */ \"./node_modules/inherits/inherits_browser.js\")\n , utils = __webpack_require__(/*! ./utils/event */ \"./node_modules/sockjs-client/lib/utils/event.js\")\n , IframeTransport = __webpack_require__(/*! ./transport/iframe */ \"./node_modules/sockjs-client/lib/transport/iframe.js\")\n , InfoReceiverIframe = __webpack_require__(/*! ./info-iframe-receiver */ \"./node_modules/sockjs-client/lib/info-iframe-receiver.js\")\n ;\n\nvar debug = function() {};\nif (true) {\n debug = __webpack_require__(/*! debug */ \"./node_modules/sockjs-client/node_modules/debug/src/browser.js\")('sockjs-client:info-iframe');\n}\n\nfunction InfoIframe(baseUrl, url) {\n var self = this;\n EventEmitter.call(this);\n\n var go = function() {\n var ifr = self.ifr = new IframeTransport(InfoReceiverIframe.transportName, url, baseUrl);\n\n ifr.once('message', function(msg) {\n if (msg) {\n var d;\n try {\n d = JSON.parse(msg);\n } catch (e) {\n debug('bad json', msg);\n self.emit('finish');\n self.close();\n return;\n }\n\n var info = d[0], rtt = d[1];\n self.emit('finish', info, rtt);\n }\n self.close();\n });\n\n ifr.once('close', function() {\n self.emit('finish');\n self.close();\n });\n };\n\n // TODO this seems the same as the 'needBody' from transports\n if (!__webpack_require__.g.document.body) {\n utils.attachEvent('load', go);\n } else {\n go();\n }\n}\n\ninherits(InfoIframe, EventEmitter);\n\nInfoIframe.enabled = function() {\n return IframeTransport.enabled();\n};\n\nInfoIframe.prototype.close = function() {\n if (this.ifr) {\n this.ifr.close();\n }\n this.removeAllListeners();\n this.ifr = null;\n};\n\nmodule.exports = InfoIframe;\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/sockjs-client/lib/info-iframe.js?");
/***/ }),
/***/ "./node_modules/sockjs-client/lib/info-receiver.js":
/*!*********************************************************!*\
!*** ./node_modules/sockjs-client/lib/info-receiver.js ***!
\*********************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {
"use strict";
eval("\n\nvar EventEmitter = (__webpack_require__(/*! events */ \"./node_modules/sockjs-client/lib/event/emitter.js\").EventEmitter)\n , inherits = __webpack_require__(/*! inherits */ \"./node_modules/inherits/inherits_browser.js\")\n , urlUtils = __webpack_require__(/*! ./utils/url */ \"./node_modules/sockjs-client/lib/utils/url.js\")\n , XDR = __webpack_require__(/*! ./transport/sender/xdr */ \"./node_modules/sockjs-client/lib/transport/sender/xdr.js\")\n , XHRCors = __webpack_require__(/*! ./transport/sender/xhr-cors */ \"./node_modules/sockjs-client/lib/transport/sender/xhr-cors.js\")\n , XHRLocal = __webpack_require__(/*! ./transport/sender/xhr-local */ \"./node_modules/sockjs-client/lib/transport/sender/xhr-local.js\")\n , XHRFake = __webpack_require__(/*! ./transport/sender/xhr-fake */ \"./node_modules/sockjs-client/lib/transport/sender/xhr-fake.js\")\n , InfoIframe = __webpack_require__(/*! ./info-iframe */ \"./node_modules/sockjs-client/lib/info-iframe.js\")\n , InfoAjax = __webpack_require__(/*! ./info-ajax */ \"./node_modules/sockjs-client/lib/info-ajax.js\")\n ;\n\nvar debug = function() {};\nif (true) {\n debug = __webpack_require__(/*! debug */ \"./node_modules/sockjs-client/node_modules/debug/src/browser.js\")('sockjs-client:info-receiver');\n}\n\nfunction InfoReceiver(baseUrl, urlInfo) {\n debug(baseUrl);\n var self = this;\n EventEmitter.call(this);\n\n setTimeout(function() {\n self.doXhr(baseUrl, urlInfo);\n }, 0);\n}\n\ninherits(InfoReceiver, EventEmitter);\n\n// TODO this is currently ignoring the list of available transports and the whitelist\n\nInfoReceiver._getReceiver = function(baseUrl, url, urlInfo) {\n // determine method of CORS support (if needed)\n if (urlInfo.sameOrigin) {\n return new InfoAjax(url, XHRLocal);\n }\n if (XHRCors.enabled) {\n return new InfoAjax(url, XHRCors);\n }\n if (XDR.enabled && urlInfo.sameScheme) {\n return new InfoAjax(url, XDR);\n }\n if (InfoIframe.enabled()) {\n return new InfoIframe(baseUrl, url);\n }\n return new InfoAjax(url, XHRFake);\n};\n\nInfoReceiver.prototype.doXhr = function(baseUrl, urlInfo) {\n var self = this\n , url = urlUtils.addPath(baseUrl, '/info')\n ;\n debug('doXhr', url);\n\n this.xo = InfoReceiver._getReceiver(baseUrl, url, urlInfo);\n\n this.timeoutRef = setTimeout(function() {\n debug('timeout');\n self._cleanup(false);\n self.emit('finish');\n }, InfoReceiver.timeout);\n\n this.xo.once('finish', function(info, rtt) {\n debug('finish', info, rtt);\n self._cleanup(true);\n self.emit('finish', info, rtt);\n });\n};\n\nInfoReceiver.prototype._cleanup = function(wasClean) {\n debug('_cleanup');\n clearTimeout(this.timeoutRef);\n this.timeoutRef = null;\n if (!wasClean && this.xo) {\n this.xo.close();\n }\n this.xo = null;\n};\n\nInfoReceiver.prototype.close = function() {\n debug('close');\n this.removeAllListeners();\n this._cleanup(false);\n};\n\nInfoReceiver.timeout = 8000;\n\nmodule.exports = InfoReceiver;\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/sockjs-client/lib/info-receiver.js?");
/***/ }),
/***/ "./node_modules/sockjs-client/lib/location.js":
/*!****************************************************!*\
!*** ./node_modules/sockjs-client/lib/location.js ***!
\****************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {
"use strict";
eval("\n\nmodule.exports = __webpack_require__.g.location || {\n origin: 'http://localhost:80'\n, protocol: 'http:'\n, host: 'localhost'\n, port: 80\n, href: 'http://localhost/'\n, hash: ''\n};\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/sockjs-client/lib/location.js?");
/***/ }),
/***/ "./node_modules/sockjs-client/lib/main.js":
/*!************************************************!*\
!*** ./node_modules/sockjs-client/lib/main.js ***!
\************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {
"use strict";
eval("\n\n__webpack_require__(/*! ./shims */ \"./node_modules/sockjs-client/lib/shims.js\");\n\nvar URL = __webpack_require__(/*! url-parse */ \"./node_modules/url-parse/index.js\")\n , inherits = __webpack_require__(/*! inherits */ \"./node_modules/inherits/inherits_browser.js\")\n , random = __webpack_require__(/*! ./utils/random */ \"./node_modules/sockjs-client/lib/utils/random.js\")\n , escape = __webpack_require__(/*! ./utils/escape */ \"./node_modules/sockjs-client/lib/utils/escape.js\")\n , urlUtils = __webpack_require__(/*! ./utils/url */ \"./node_modules/sockjs-client/lib/utils/url.js\")\n , eventUtils = __webpack_require__(/*! ./utils/event */ \"./node_modules/sockjs-client/lib/utils/event.js\")\n , transport = __webpack_require__(/*! ./utils/transport */ \"./node_modules/sockjs-client/lib/utils/transport.js\")\n , objectUtils = __webpack_require__(/*! ./utils/object */ \"./node_modules/sockjs-client/lib/utils/object.js\")\n , browser = __webpack_require__(/*! ./utils/browser */ \"./node_modules/sockjs-client/lib/utils/browser.js\")\n , log = __webpack_require__(/*! ./utils/log */ \"./node_modules/sockjs-client/lib/utils/log.js\")\n , Event = __webpack_require__(/*! ./event/event */ \"./node_modules/sockjs-client/lib/event/event.js\")\n , EventTarget = __webpack_require__(/*! ./event/eventtarget */ \"./node_modules/sockjs-client/lib/event/eventtarget.js\")\n , loc = __webpack_require__(/*! ./location */ \"./node_modules/sockjs-client/lib/location.js\")\n , CloseEvent = __webpack_require__(/*! ./event/close */ \"./node_modules/sockjs-client/lib/event/close.js\")\n , TransportMessageEvent = __webpack_require__(/*! ./event/trans-message */ \"./node_modules/sockjs-client/lib/event/trans-message.js\")\n , InfoReceiver = __webpack_require__(/*! ./info-receiver */ \"./node_modules/sockjs-client/lib/info-receiver.js\")\n ;\n\nvar debug = function() {};\nif (true) {\n debug = __webpack_require__(/*! debug */ \"./node_modules/sockjs-client/node_modules/debug/src/browser.js\")('sockjs-client:main');\n}\n\nvar transports;\n\n// follow constructor steps defined at http://dev.w3.org/html5/websockets/#the-websocket-interface\nfunction SockJS(url, protocols, options) {\n if (!(this instanceof SockJS)) {\n return new SockJS(url, protocols, options);\n }\n if (arguments.length < 1) {\n throw new TypeError(\"Failed to construct 'SockJS: 1 argument required, but only 0 present\");\n }\n EventTarget.call(this);\n\n this.readyState = SockJS.CONNECTING;\n this.extensions = '';\n this.protocol = '';\n\n // non-standard extension\n options = options || {};\n if (options.protocols_whitelist) {\n log.warn(\"'protocols_whitelist' is DEPRECATED. Use 'transports' instead.\");\n }\n this._transportsWhitelist = options.transports;\n this._transportOptions = options.transportOptions || {};\n this._timeout = options.timeout || 0;\n\n var sessionId = options.sessionId || 8;\n if (typeof sessionId === 'function') {\n this._generateSessionId = sessionId;\n } else if (typeof sessionId === 'number') {\n this._generateSessionId = function() {\n return random.string(sessionId);\n };\n } else {\n throw new TypeError('If sessionId is used in the options, it needs to be a number or a function.');\n }\n\n this._server = options.server || random.numberString(1000);\n\n // Step 1 of WS spec - parse and validate the url. Issue #8\n var parsedUrl = new URL(url);\n if (!parsedUrl.host || !parsedUrl.protocol) {\n throw new SyntaxError(\"The URL '\" + url + \"' is invalid\");\n } else if (parsedUrl.hash) {\n throw new SyntaxError('The URL must not contain a fragment');\n } else if (parsedUrl.protocol !== 'http:' && parsedUrl.protocol !== 'https:') {\n throw new SyntaxError(\"The URL's scheme must be either 'http:' or 'https:'. '\" + parsedUrl.protocol + \"' is not allowed.\");\n }\n\n var secure = parsedUrl.protocol === 'https:';\n // Step 2 - don't allow secure origin with an insecure protocol\n if (loc.protocol === 'https:' && !secure) {\n // exception is 127.0.0.0/8 and ::1 urls\n if (!urlUtils.isLoopbackAddr(parsedUrl.hostname)) {\n throw new Error('SecurityError: An insecure SockJS connection may not be initiated from a page loaded over HTTPS');\n }\n }\n\n // Step 3 - check port access - no need here\n // Step 4 - parse protocols argument\n if (!protocols) {\n protocols = [];\n } else if (!Array.isArray(protocols)) {\n protocols = [protocols];\n }\n\n // Step 5 - check protocols argument\n var sortedProtocols = protocols.sort();\n sortedProtocols.forEach(function(proto, i) {\n if (!proto) {\n throw new SyntaxError(\"The protocols entry '\" + proto + \"' is invalid.\");\n }\n if (i < (sortedProtocols.length - 1) && proto === sortedProtocols[i + 1]) {\n throw new SyntaxError(\"The protocols entry '\" + proto + \"' is duplicated.\");\n }\n });\n\n // Step 6 - convert origin\n var o = urlUtils.getOrigin(loc.href);\n this._origin = o ? o.toLowerCase() : null;\n\n // remove the trailing slash\n parsedUrl.set('pathname', parsedUrl.pathname.replace(/\\/+$/, ''));\n\n // store the sanitized url\n this.url = parsedUrl.href;\n debug('using url', this.url);\n\n // Step 7 - start connection in background\n // obtain server info\n // http://sockjs.github.io/sockjs-protocol/sockjs-protocol-0.3.3.html#section-26\n this._urlInfo = {\n nullOrigin: !browser.hasDomain()\n , sameOrigin: urlUtils.isOriginEqual(this.url, loc.href)\n , sameScheme: urlUtils.isSchemeEqual(this.url, loc.href)\n };\n\n this._ir = new InfoReceiver(this.url, this._urlInfo);\n this._ir.once('finish', this._receiveInfo.bind(this));\n}\n\ninherits(SockJS, EventTarget);\n\nfunction userSetCode(code) {\n return code === 1000 || (code >= 3000 && code <= 4999);\n}\n\nSockJS.prototype.close = function(code, reason) {\n // Step 1\n if (code && !userSetCode(code)) {\n throw new Error('InvalidAccessError: Invalid code');\n }\n // Step 2.4 states the max is 123 bytes, but we are just checking length\n if (reason && reason.length > 123) {\n throw new SyntaxError('reason argument has an invalid length');\n }\n\n // Step 3.1\n if (this.readyState === SockJS.CLOSING || this.readyState === SockJS.CLOSED) {\n return;\n }\n\n // TODO look at docs to determine how to set this\n var wasClean = true;\n this._close(code || 1000, reason || 'Normal closure', wasClean);\n};\n\nSockJS.prototype.send = function(data) {\n // #13 - convert anything non-string to string\n // TODO this currently turns objects into [object Object]\n if (typeof data !== 'string') {\n data = '' + data;\n }\n if (this.readyState === SockJS.CONNECTING) {\n throw new Error('InvalidStateError: The connection has not been established yet');\n }\n if (this.readyState !== SockJS.OPEN) {\n return;\n }\n this._transport.send(escape.quote(data));\n};\n\nSockJS.version = __webpack_require__(/*! ./version */ \"./node_modules/sockjs-client/lib/version.js\");\n\nSockJS.CONNECTING = 0;\nSockJS.OPEN = 1;\nSockJS.CLOSING = 2;\nSockJS.CLOSED = 3;\n\nSockJS.prototype._receiveInfo = function(info, rtt) {\n debug('_receiveInfo', rtt);\n this._ir = null;\n if (!info) {\n this._close(1002, 'Cannot connect to server');\n return;\n }\n\n // establish a round-trip timeout (RTO) based on the\n // round-trip time (RTT)\n this._rto = this.countRTO(rtt);\n // allow server to override url used for the actual transport\n this._transUrl = info.base_url ? info.base_url : this.url;\n info = objectUtils.extend(info, this._urlInfo);\n debug('info', info);\n // determine list of desired and supported transports\n var enabledTransports = transports.filterToEnabled(this._transportsWhitelist, info);\n this._transports = enabledTransports.main;\n debug(this._transports.length + ' enabled transports');\n\n this._connect();\n};\n\nSockJS.prototype._connect = function() {\n for (var Transport = this._transports.shift(); Transport; Transport = this._transports.shift()) {\n debug('attempt', Transport.transportName);\n if (Transport.needBody) {\n if (!__webpack_require__.g.document.body ||\n (typeof __webpack_require__.g.document.readyState !== 'undefined' &&\n __webpack_require__.g.document.readyState !== 'complete' &&\n __webpack_require__.g.document.readyState !== 'interactive')) {\n debug('waiting for body');\n this._transports.unshift(Transport);\n eventUtils.attachEvent('load', this._connect.bind(this));\n return;\n }\n }\n\n // calculate timeout based on RTO and round trips. Default to 5s\n var timeoutMs = Math.max(this._timeout, (this._rto * Transport.roundTrips) || 5000);\n this._transportTimeoutId = setTimeout(this._transportTimeout.bind(this), timeoutMs);\n debug('using timeout', timeoutMs);\n\n var transportUrl = urlUtils.addPath(this._transUrl, '/' + this._server + '/' + this._generateSessionId());\n var options = this._transportOptions[Transport.transportName];\n debug('transport url', transportUrl);\n var transportObj = new Transport(transportUrl, this._transUrl, options);\n transportObj.on('message', this._transportMessage.bind(this));\n transportObj.once('close', this._transportClose.bind(this));\n transportObj.transportName = Transport.transportName;\n this._transport = transportObj;\n\n return;\n }\n this._close(2000, 'All transports failed', false);\n};\n\nSockJS.prototype._transportTimeout = function() {\n debug('_transportTimeout');\n if (this.readyState === SockJS.CONNECTING) {\n if (this._transport) {\n this._transport.close();\n }\n\n this._transportClose(2007, 'Transport timed out');\n }\n};\n\nSockJS.prototype._transportMessage = function(msg) {\n debug('_transportMessage', msg);\n var self = this\n , type = msg.slice(0, 1)\n , content = msg.slice(1)\n , payload\n ;\n\n // first check for messages that don't need a payload\n switch (type) {\n case 'o':\n this._open();\n return;\n case 'h':\n this.dispatchEvent(new Event('heartbeat'));\n debug('heartbeat', this.transport);\n return;\n }\n\n if (content) {\n try {\n payload = JSON.parse(content);\n } catch (e) {\n debug('bad json', content);\n }\n }\n\n if (typeof payload === 'undefined') {\n debug('empty payload', content);\n return;\n }\n\n switch (type) {\n case 'a':\n if (Array.isArray(payload)) {\n payload.forEach(function(p) {\n debug('message', self.transport, p);\n self.dispatchEvent(new TransportMessageEvent(p));\n });\n }\n break;\n case 'm':\n debug('message', this.transport, payload);\n this.dispatchEvent(new TransportMessageEvent(payload));\n break;\n case 'c':\n if (Array.isArray(payload) && payload.length === 2) {\n this._close(payload[0], payload[1], true);\n }\n break;\n }\n};\n\nSockJS.prototype._transportClose = function(code, reason) {\n debug('_transportClose', this.transport, code, reason);\n if (this._transport) {\n this._transport.removeAllListeners();\n this._transport = null;\n this.transport = null;\n }\n\n if (!userSetCode(code) && code !== 2000 && this.readyState === SockJS.CONNECTING) {\n this._connect();\n return;\n }\n\n this._close(code, reason);\n};\n\nSockJS.prototype._open = function() {\n debug('_open', this._transport && this._transport.transportName, this.readyState);\n if (this.readyState === SockJS.CONNECTING) {\n if (this._transportTimeoutId) {\n clearTimeout(this._transportTimeoutId);\n this._transportTimeoutId = null;\n }\n this.readyState = SockJS.OPEN;\n this.transport = this._transport.transportName;\n this.dispatchEvent(new Event('open'));\n debug('connected', this.transport);\n } else {\n // The server might have been restarted, and lost track of our\n // connection.\n this._close(1006, 'Server lost session');\n }\n};\n\nSockJS.prototype._close = function(code, reason, wasClean) {\n debug('_close', this.transport, code, reason, wasClean, this.readyState);\n var forceFail = false;\n\n if (this._ir) {\n forceFail = true;\n this._ir.close();\n this._ir = null;\n }\n if (this._transport) {\n this._transport.close();\n this._transport = null;\n this.transport = null;\n }\n\n if (this.readyState === SockJS.CLOSED) {\n throw new Error('InvalidStateError: SockJS has already been closed');\n }\n\n this.readyState = SockJS.CLOSING;\n setTimeout(function() {\n this.readyState = SockJS.CLOSED;\n\n if (forceFail) {\n this.dispatchEvent(new Event('error'));\n }\n\n var e = new CloseEvent('close');\n e.wasClean = wasClean || false;\n e.code = code || 1000;\n e.reason = reason;\n\n this.dispatchEvent(e);\n this.onmessage = this.onclose = this.onerror = null;\n debug('disconnected');\n }.bind(this), 0);\n};\n\n// See: http://www.erg.abdn.ac.uk/~gerrit/dccp/notes/ccid2/rto_estimator/\n// and RFC 2988.\nSockJS.prototype.countRTO = function(rtt) {\n // In a local environment, when using IE8/9 and the `jsonp-polling`\n // transport the time needed to establish a connection (the time that pass\n // from the opening of the transport to the call of `_dispatchOpen`) is\n // around 200msec (the lower bound used in the article above) and this\n // causes spurious timeouts. For this reason we calculate a value slightly\n // larger than that used in the article.\n if (rtt > 100) {\n return 4 * rtt; // rto > 400msec\n }\n return 300 + rtt; // 300msec < rto <= 400msec\n};\n\nmodule.exports = function(availableTransports) {\n transports = transport(availableTransports);\n __webpack_require__(/*! ./iframe-bootstrap */ \"./node_modules/sockjs-client/lib/iframe-bootstrap.js\")(SockJS, availableTransports);\n return SockJS;\n};\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/sockjs-client/lib/main.js?");
/***/ }),
/***/ "./node_modules/sockjs-client/lib/shims.js":
/*!*************************************************!*\
!*** ./node_modules/sockjs-client/lib/shims.js ***!
\*************************************************/
/***/ (() => {
"use strict";
eval("/* eslint-disable */\n/* jscs: disable */\n\n\n// pulled specific shims from https://github.com/es-shims/es5-shim\n\nvar ArrayPrototype = Array.prototype;\nvar ObjectPrototype = Object.prototype;\nvar FunctionPrototype = Function.prototype;\nvar StringPrototype = String.prototype;\nvar array_slice = ArrayPrototype.slice;\n\nvar _toString = ObjectPrototype.toString;\nvar isFunction = function (val) {\n return ObjectPrototype.toString.call(val) === '[object Function]';\n};\nvar isArray = function isArray(obj) {\n return _toString.call(obj) === '[object Array]';\n};\nvar isString = function isString(obj) {\n return _toString.call(obj) === '[object String]';\n};\n\nvar supportsDescriptors = Object.defineProperty && (function () {\n try {\n Object.defineProperty({}, 'x', {});\n return true;\n } catch (e) { /* this is ES3 */\n return false;\n }\n}());\n\n// Define configurable, writable and non-enumerable props\n// if they don't exist.\nvar defineProperty;\nif (supportsDescriptors) {\n defineProperty = function (object, name, method, forceAssign) {\n if (!forceAssign && (name in object)) { return; }\n Object.defineProperty(object, name, {\n configurable: true,\n enumerable: false,\n writable: true,\n value: method\n });\n };\n} else {\n defineProperty = function (object, name, method, forceAssign) {\n if (!forceAssign && (name in object)) { return; }\n object[name] = method;\n };\n}\nvar defineProperties = function (object, map, forceAssign) {\n for (var name in map) {\n if (ObjectPrototype.hasOwnProperty.call(map, name)) {\n defineProperty(object, name, map[name], forceAssign);\n }\n }\n};\n\nvar toObject = function (o) {\n if (o == null) { // this matches both null and undefined\n throw new TypeError(\"can't convert \" + o + ' to object');\n }\n return Object(o);\n};\n\n//\n// Util\n// ======\n//\n\n// ES5 9.4\n// http://es5.github.com/#x9.4\n// http://jsperf.com/to-integer\n\nfunction toInteger(num) {\n var n = +num;\n if (n !== n) { // isNaN\n n = 0;\n } else if (n !== 0 && n !== (1 / 0) && n !== -(1 / 0)) {\n n = (n > 0 || -1) * Math.floor(Math.abs(n));\n }\n return n;\n}\n\nfunction ToUint32(x) {\n return x >>> 0;\n}\n\n//\n// Function\n// ========\n//\n\n// ES-5 15.3.4.5\n// http://es5.github.com/#x15.3.4.5\n\nfunction Empty() {}\n\ndefineProperties(FunctionPrototype, {\n bind: function bind(that) { // .length is 1\n // 1. Let Target be the this value.\n var target = this;\n // 2. If IsCallable(Target) is false, throw a TypeError exception.\n if (!isFunction(target)) {\n throw new TypeError('Function.prototype.bind called on incompatible ' + target);\n }\n // 3. Let A be a new (possibly empty) internal list of all of the\n // argument values provided after thisArg (arg1, arg2 etc), in order.\n // XXX slicedArgs will stand in for \"A\" if used\n var args = array_slice.call(arguments, 1); // for normal call\n // 4. Let F be a new native ECMAScript object.\n // 11. Set the [[Prototype]] internal property of F to the standard\n // built-in Function prototype object as specified in 15.3.3.1.\n // 12. Set the [[Call]] internal property of F as described in\n // 15.3.4.5.1.\n // 13. Set the [[Construct]] internal property of F as described in\n // 15.3.4.5.2.\n // 14. Set the [[HasInstance]] internal property of F as described in\n // 15.3.4.5.3.\n var binder = function () {\n\n if (this instanceof bound) {\n // 15.3.4.5.2 [[Construct]]\n // When the [[Construct]] internal method of a function object,\n // F that was created using the bind function is called with a\n // list of arguments ExtraArgs, the following steps are taken:\n // 1. Let target be the value of F's [[TargetFunction]]\n // internal property.\n // 2. If target has no [[Construct]] internal method, a\n // TypeError exception is thrown.\n // 3. Let boundArgs be the value of F's [[BoundArgs]] internal\n // property.\n // 4. Let args be a new list containing the same values as the\n // list boundArgs in the same order followed by the same\n // values as the list ExtraArgs in the same order.\n // 5. Return the result of calling the [[Construct]] internal\n // method of target providing args as the arguments.\n\n var result = target.apply(\n this,\n args.concat(array_slice.call(arguments))\n );\n if (Object(result) === result) {\n return result;\n }\n return this;\n\n } else {\n // 15.3.4.5.1 [[Call]]\n // When the [[Call]] internal method of a function object, F,\n // which was created using the bind function is called with a\n // this value and a list of arguments ExtraArgs, the following\n // steps are taken:\n // 1. Let boundArgs be the value of F's [[BoundArgs]] internal\n // property.\n // 2. Let boundThis be the value of F's [[BoundThis]] internal\n // property.\n // 3. Let target be the value of F's [[TargetFunction]] internal\n // property.\n // 4. Let args be a new list containing the same values as the\n // list boundArgs in the same order followed by the same\n // values as the list ExtraArgs in the same order.\n // 5. Return the result of calling the [[Call]] internal method\n // of target providing boundThis as the this value and\n // providing args as the arguments.\n\n // equiv: target.call(this, ...boundArgs, ...args)\n return target.apply(\n that,\n args.concat(array_slice.call(arguments))\n );\n\n }\n\n };\n\n // 15. If the [[Class]] internal property of Target is \"Function\", then\n // a. Let L be the length property of Target minus the length of A.\n // b. Set the length own property of F to either 0 or L, whichever is\n // larger.\n // 16. Else set the length own property of F to 0.\n\n var boundLength = Math.max(0, target.length - args.length);\n\n // 17. Set the attributes of the length own property of F to the values\n // specified in 15.3.5.1.\n var boundArgs = [];\n for (var i = 0; i < boundLength; i++) {\n boundArgs.push('$' + i);\n }\n\n // XXX Build a dynamic function with desired amount of arguments is the only\n // way to set the length property of a function.\n // In environments where Content Security Policies enabled (Chrome extensions,\n // for ex.) all use of eval or Function costructor throws an exception.\n // However in all of these environments Function.prototype.bind exists\n // and so this code will never be executed.\n var bound = Function('binder', 'return function (' + boundArgs.join(',') + '){ return binder.apply(this, arguments); }')(binder);\n\n if (target.prototype) {\n Empty.prototype = target.prototype;\n bound.prototype = new Empty();\n // Clean up dangling references.\n Empty.prototype = null;\n }\n\n // TODO\n // 18. Set the [[Extensible]] internal property of F to true.\n\n // TODO\n // 19. Let thrower be the [[ThrowTypeError]] function Object (13.2.3).\n // 20. Call the [[DefineOwnProperty]] internal method of F with\n // arguments \"caller\", PropertyDescriptor {[[Get]]: thrower, [[Set]]:\n // thrower, [[Enumerable]]: false, [[Configurable]]: false}, and\n // false.\n // 21. Call the [[DefineOwnProperty]] internal method of F with\n // arguments \"arguments\", PropertyDescriptor {[[Get]]: thrower,\n // [[Set]]: thrower, [[Enumerable]]: false, [[Configurable]]: false},\n // and false.\n\n // TODO\n // NOTE Function objects created using Function.prototype.bind do not\n // have a prototype property or the [[Code]], [[FormalParameters]], and\n // [[Scope]] internal properties.\n // XXX can't delete prototype in pure-js.\n\n // 22. Return F.\n return bound;\n }\n});\n\n//\n// Array\n// =====\n//\n\n// ES5 15.4.3.2\n// http://es5.github.com/#x15.4.3.2\n// https://developer.mozilla.org/en/JavaScript/Reference/Global_Objects/Array/isArray\ndefineProperties(Array, { isArray: isArray });\n\n\nvar boxedString = Object('a');\nvar splitString = boxedString[0] !== 'a' || !(0 in boxedString);\n\nvar properlyBoxesContext = function properlyBoxed(method) {\n // Check node 0.6.21 bug where third parameter is not boxed\n var properlyBoxesNonStrict = true;\n var properlyBoxesStrict = true;\n if (method) {\n method.call('foo', function (_, __, context) {\n if (typeof context !== 'object') { properlyBoxesNonStrict = false; }\n });\n\n method.call([1], function () {\n 'use strict';\n properlyBoxesStrict = typeof this === 'string';\n }, 'x');\n }\n return !!method && properlyBoxesNonStrict && properlyBoxesStrict;\n};\n\ndefineProperties(ArrayPrototype, {\n forEach: function forEach(fun /*, thisp*/) {\n var object = toObject(this),\n self = splitString && isString(this) ? this.split('') : object,\n thisp = arguments[1],\n i = -1,\n length = self.length >>> 0;\n\n // If no callback function or if callback is not a callable function\n if (!isFunction(fun)) {\n throw new TypeError(); // TODO message\n }\n\n while (++i < length) {\n if (i in self) {\n // Invoke the callback function with call, passing arguments:\n // context, property value, property key, thisArg object\n // context\n fun.call(thisp, self[i], i, object);\n }\n }\n }\n}, !properlyBoxesContext(ArrayPrototype.forEach));\n\n// ES5 15.4.4.14\n// http://es5.github.com/#x15.4.4.14\n// https://developer.mozilla.org/en/JavaScript/Reference/Global_Objects/Array/indexOf\nvar hasFirefox2IndexOfBug = Array.prototype.indexOf && [0, 1].indexOf(1, 2) !== -1;\ndefineProperties(ArrayPrototype, {\n indexOf: function indexOf(sought /*, fromIndex */ ) {\n var self = splitString && isString(this) ? this.split('') : toObject(this),\n length = self.length >>> 0;\n\n if (!length) {\n return -1;\n }\n\n var i = 0;\n if (arguments.length > 1) {\n i = toInteger(arguments[1]);\n }\n\n // handle negative indices\n i = i >= 0 ? i : Math.max(0, length + i);\n for (; i < length; i++) {\n if (i in self && self[i] === sought) {\n return i;\n }\n }\n return -1;\n }\n}, hasFirefox2IndexOfBug);\n\n//\n// String\n// ======\n//\n\n// ES5 15.5.4.14\n// http://es5.github.com/#x15.5.4.14\n\n// [bugfix, IE lt 9, firefox 4, Konqueror, Opera, obscure browsers]\n// Many browsers do not split properly with regular expressions or they\n// do not perform the split correctly under obscure conditions.\n// See http://blog.stevenlevithan.com/archives/cross-browser-split\n// I've tested in many browsers and this seems to cover the deviant ones:\n// 'ab'.split(/(?:ab)*/) should be [\"\", \"\"], not [\"\"]\n// '.'.split(/(.?)(.?)/) should be [\"\", \".\", \"\", \"\"], not [\"\", \"\"]\n// 'tesst'.split(/(s)*/) should be [\"t\", undefined, \"e\", \"s\", \"t\"], not\n// [undefined, \"t\", undefined, \"e\", ...]\n// ''.split(/.?/) should be [], not [\"\"]\n// '.'.split(/()()/) should be [\".\"], not [\"\", \"\", \".\"]\n\nvar string_split = StringPrototype.split;\nif (\n 'ab'.split(/(?:ab)*/).length !== 2 ||\n '.'.split(/(.?)(.?)/).length !== 4 ||\n 'tesst'.split(/(s)*/)[1] === 't' ||\n 'test'.split(/(?:)/, -1).length !== 4 ||\n ''.split(/.?/).length ||\n '.'.split(/()()/).length > 1\n) {\n (function () {\n var compliantExecNpcg = /()??/.exec('')[1] === void 0; // NPCG: nonparticipating capturing group\n\n StringPrototype.split = function (separator, limit) {\n var string = this;\n if (separator === void 0 && limit === 0) {\n return [];\n }\n\n // If `separator` is not a regex, use native split\n if (_toString.call(separator) !== '[object RegExp]') {\n return string_split.call(this, separator, limit);\n }\n\n var output = [],\n flags = (separator.ignoreCase ? 'i' : '') +\n (separator.multiline ? 'm' : '') +\n (separator.extended ? 'x' : '') + // Proposed for ES6\n (separator.sticky ? 'y' : ''), // Firefox 3+\n lastLastIndex = 0,\n // Make `global` and avoid `lastIndex` issues by working with a copy\n separator2, match, lastIndex, lastLength;\n separator = new RegExp(separator.source, flags + 'g');\n string += ''; // Type-convert\n if (!compliantExecNpcg) {\n // Doesn't need flags gy, but they don't hurt\n separator2 = new RegExp('^' + separator.source + '$(?!\\\\s)', flags);\n }\n /* Values for `limit`, per the spec:\n * If undefined: 4294967295 // Math.pow(2, 32) - 1\n * If 0, Infinity, or NaN: 0\n * If positive number: limit = Math.floor(limit); if (limit > 4294967295) limit -= 4294967296;\n * If negative number: 4294967296 - Math.floor(Math.abs(limit))\n * If other: Type-convert, then use the above rules\n */\n limit = limit === void 0 ?\n -1 >>> 0 : // Math.pow(2, 32) - 1\n ToUint32(limit);\n while (match = separator.exec(string)) {\n // `separator.lastIndex` is not reliable cross-browser\n lastIndex = match.index + match[0].length;\n if (lastIndex > lastLastIndex) {\n output.push(string.slice(lastLastIndex, match.index));\n // Fix browsers whose `exec` methods don't consistently return `undefined` for\n // nonparticipating capturing groups\n if (!compliantExecNpcg && match.length > 1) {\n match[0].replace(separator2, function () {\n for (var i = 1; i < arguments.length - 2; i++) {\n if (arguments[i] === void 0) {\n match[i] = void 0;\n }\n }\n });\n }\n if (match.length > 1 && match.index < string.length) {\n ArrayPrototype.push.apply(output, match.slice(1));\n }\n lastLength = match[0].length;\n lastLastIndex = lastIndex;\n if (output.length >= limit) {\n break;\n }\n }\n if (separator.lastIndex === match.index) {\n separator.lastIndex++; // Avoid an infinite loop\n }\n }\n if (lastLastIndex === string.length) {\n if (lastLength || !separator.test('')) {\n output.push('');\n }\n } else {\n output.push(string.slice(lastLastIndex));\n }\n return output.length > limit ? output.slice(0, limit) : output;\n };\n }());\n\n// [bugfix, chrome]\n// If separator is undefined, then the result array contains just one String,\n// which is the this value (converted to a String). If limit is not undefined,\n// then the output array is truncated so that it contains no more than limit\n// elements.\n// \"0\".split(undefined, 0) -> []\n} else if ('0'.split(void 0, 0).length) {\n StringPrototype.split = function split(separator, limit) {\n if (separator === void 0 && limit === 0) { return []; }\n return string_split.call(this, separator, limit);\n };\n}\n\n// ECMA-262, 3rd B.2.3\n// Not an ECMAScript standard, although ECMAScript 3rd Edition has a\n// non-normative section suggesting uniform semantics and it should be\n// normalized across all browsers\n// [bugfix, IE lt 9] IE < 9 substr() with negative value not working in IE\nvar string_substr = StringPrototype.substr;\nvar hasNegativeSubstrBug = ''.substr && '0b'.substr(-1) !== 'b';\ndefineProperties(StringPrototype, {\n substr: function substr(start, length) {\n return string_substr.call(\n this,\n start < 0 ? ((start = this.length + start) < 0 ? 0 : start) : start,\n length\n );\n }\n}, hasNegativeSubstrBug);\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/sockjs-client/lib/shims.js?");
/***/ }),
/***/ "./node_modules/sockjs-client/lib/transport-list.js":
/*!**********************************************************!*\
!*** ./node_modules/sockjs-client/lib/transport-list.js ***!
\**********************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {
"use strict";
eval("\n\nmodule.exports = [\n // streaming transports\n __webpack_require__(/*! ./transport/websocket */ \"./node_modules/sockjs-client/lib/transport/websocket.js\")\n, __webpack_require__(/*! ./transport/xhr-streaming */ \"./node_modules/sockjs-client/lib/transport/xhr-streaming.js\")\n, __webpack_require__(/*! ./transport/xdr-streaming */ \"./node_modules/sockjs-client/lib/transport/xdr-streaming.js\")\n, __webpack_require__(/*! ./transport/eventsource */ \"./node_modules/sockjs-client/lib/transport/eventsource.js\")\n, __webpack_require__(/*! ./transport/lib/iframe-wrap */ \"./node_modules/sockjs-client/lib/transport/lib/iframe-wrap.js\")(__webpack_require__(/*! ./transport/eventsource */ \"./node_modules/sockjs-client/lib/transport/eventsource.js\"))\n\n // polling transports\n, __webpack_require__(/*! ./transport/htmlfile */ \"./node_modules/sockjs-client/lib/transport/htmlfile.js\")\n, __webpack_require__(/*! ./transport/lib/iframe-wrap */ \"./node_modules/sockjs-client/lib/transport/lib/iframe-wrap.js\")(__webpack_require__(/*! ./transport/htmlfile */ \"./node_modules/sockjs-client/lib/transport/htmlfile.js\"))\n, __webpack_require__(/*! ./transport/xhr-polling */ \"./node_modules/sockjs-client/lib/transport/xhr-polling.js\")\n, __webpack_require__(/*! ./transport/xdr-polling */ \"./node_modules/sockjs-client/lib/transport/xdr-polling.js\")\n, __webpack_require__(/*! ./transport/lib/iframe-wrap */ \"./node_modules/sockjs-client/lib/transport/lib/iframe-wrap.js\")(__webpack_require__(/*! ./transport/xhr-polling */ \"./node_modules/sockjs-client/lib/transport/xhr-polling.js\"))\n, __webpack_require__(/*! ./transport/jsonp-polling */ \"./node_modules/sockjs-client/lib/transport/jsonp-polling.js\")\n];\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/sockjs-client/lib/transport-list.js?");
/***/ }),
/***/ "./node_modules/sockjs-client/lib/transport/browser/abstract-xhr.js":
/*!**************************************************************************!*\
!*** ./node_modules/sockjs-client/lib/transport/browser/abstract-xhr.js ***!
\**************************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {
"use strict";
eval("\n\nvar EventEmitter = (__webpack_require__(/*! events */ \"./node_modules/sockjs-client/lib/event/emitter.js\").EventEmitter)\n , inherits = __webpack_require__(/*! inherits */ \"./node_modules/inherits/inherits_browser.js\")\n , utils = __webpack_require__(/*! ../../utils/event */ \"./node_modules/sockjs-client/lib/utils/event.js\")\n , urlUtils = __webpack_require__(/*! ../../utils/url */ \"./node_modules/sockjs-client/lib/utils/url.js\")\n , XHR = __webpack_require__.g.XMLHttpRequest\n ;\n\nvar debug = function() {};\nif (true) {\n debug = __webpack_require__(/*! debug */ \"./node_modules/sockjs-client/node_modules/debug/src/browser.js\")('sockjs-client:browser:xhr');\n}\n\nfunction AbstractXHRObject(method, url, payload, opts) {\n debug(method, url);\n var self = this;\n EventEmitter.call(this);\n\n setTimeout(function () {\n self._start(method, url, payload, opts);\n }, 0);\n}\n\ninherits(AbstractXHRObject, EventEmitter);\n\nAbstractXHRObject.prototype._start = function(method, url, payload, opts) {\n var self = this;\n\n try {\n this.xhr = new XHR();\n } catch (x) {\n // intentionally empty\n }\n\n if (!this.xhr) {\n debug('no xhr');\n this.emit('finish', 0, 'no xhr support');\n this._cleanup();\n return;\n }\n\n // several browsers cache POSTs\n url = urlUtils.addQuery(url, 't=' + (+new Date()));\n\n // Explorer tends to keep connection open, even after the\n // tab gets closed: http://bugs.jquery.com/ticket/5280\n this.unloadRef = utils.unloadAdd(function() {\n debug('unload cleanup');\n self._cleanup(true);\n });\n try {\n this.xhr.open(method, url, true);\n if (this.timeout && 'timeout' in this.xhr) {\n this.xhr.timeout = this.timeout;\n this.xhr.ontimeout = function() {\n debug('xhr timeout');\n self.emit('finish', 0, '');\n self._cleanup(false);\n };\n }\n } catch (e) {\n debug('exception', e);\n // IE raises an exception on wrong port.\n this.emit('finish', 0, '');\n this._cleanup(false);\n return;\n }\n\n if ((!opts || !opts.noCredentials) && AbstractXHRObject.supportsCORS) {\n debug('withCredentials');\n // Mozilla docs says https://developer.mozilla.org/en/XMLHttpRequest :\n // \"This never affects same-site requests.\"\n\n this.xhr.withCredentials = true;\n }\n if (opts && opts.headers) {\n for (var key in opts.headers) {\n this.xhr.setRequestHeader(key, opts.headers[key]);\n }\n }\n\n this.xhr.onreadystatechange = function() {\n if (self.xhr) {\n var x = self.xhr;\n var text, status;\n debug('readyState', x.readyState);\n switch (x.readyState) {\n case 3:\n // IE doesn't like peeking into responseText or status\n // on Microsoft.XMLHTTP and readystate=3\n try {\n status = x.status;\n text = x.responseText;\n } catch (e) {\n // intentionally empty\n }\n debug('status', status);\n // IE returns 1223 for 204: http://bugs.jquery.com/ticket/1450\n if (status === 1223) {\n status = 204;\n }\n\n // IE does return readystate == 3 for 404 answers.\n if (status === 200 && text && text.length > 0) {\n debug('chunk');\n self.emit('chunk', status, text);\n }\n break;\n case 4:\n status = x.status;\n debug('status', status);\n // IE returns 1223 for 204: http://bugs.jquery.com/ticket/1450\n if (status === 1223) {\n status = 204;\n }\n // IE returns this for a bad port\n // http://msdn.microsoft.com/en-us/library/windows/desktop/aa383770(v=vs.85).aspx\n if (status === 12005 || status === 12029) {\n status = 0;\n }\n\n debug('finish', status, x.responseText);\n self.emit('finish', status, x.responseText);\n self._cleanup(false);\n break;\n }\n }\n };\n\n try {\n self.xhr.send(payload);\n } catch (e) {\n self.emit('finish', 0, '');\n self._cleanup(false);\n }\n};\n\nAbstractXHRObject.prototype._cleanup = function(abort) {\n debug('cleanup');\n if (!this.xhr) {\n return;\n }\n this.removeAllListeners();\n utils.unloadDel(this.unloadRef);\n\n // IE needs this field to be a function\n this.xhr.onreadystatechange = function() {};\n if (this.xhr.ontimeout) {\n this.xhr.ontimeout = null;\n }\n\n if (abort) {\n try {\n this.xhr.abort();\n } catch (x) {\n // intentionally empty\n }\n }\n this.unloadRef = this.xhr = null;\n};\n\nAbstractXHRObject.prototype.close = function() {\n debug('close');\n this._cleanup(true);\n};\n\nAbstractXHRObject.enabled = !!XHR;\n// override XMLHttpRequest for IE6/7\n// obfuscate to avoid firewalls\nvar axo = ['Active'].concat('Object').join('X');\nif (!AbstractXHRObject.enabled && (axo in __webpack_require__.g)) {\n debug('overriding xmlhttprequest');\n XHR = function() {\n try {\n return new __webpack_require__.g[axo]('Microsoft.XMLHTTP');\n } catch (e) {\n return null;\n }\n };\n AbstractXHRObject.enabled = !!new XHR();\n}\n\nvar cors = false;\ntry {\n cors = 'withCredentials' in new XHR();\n} catch (ignored) {\n // intentionally empty\n}\n\nAbstractXHRObject.supportsCORS = cors;\n\nmodule.exports = AbstractXHRObject;\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/sockjs-client/lib/transport/browser/abstract-xhr.js?");
/***/ }),
/***/ "./node_modules/sockjs-client/lib/transport/browser/eventsource.js":
/*!*************************************************************************!*\
!*** ./node_modules/sockjs-client/lib/transport/browser/eventsource.js ***!
\*************************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {
eval("module.exports = __webpack_require__.g.EventSource;\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/sockjs-client/lib/transport/browser/eventsource.js?");
/***/ }),
/***/ "./node_modules/sockjs-client/lib/transport/browser/websocket.js":
/*!***********************************************************************!*\
!*** ./node_modules/sockjs-client/lib/transport/browser/websocket.js ***!
\***********************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {
"use strict";
eval("\n\nvar Driver = __webpack_require__.g.WebSocket || __webpack_require__.g.MozWebSocket;\nif (Driver) {\n\tmodule.exports = function WebSocketBrowserDriver(url) {\n\t\treturn new Driver(url);\n\t};\n} else {\n\tmodule.exports = undefined;\n}\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/sockjs-client/lib/transport/browser/websocket.js?");
/***/ }),
/***/ "./node_modules/sockjs-client/lib/transport/eventsource.js":
/*!*****************************************************************!*\
!*** ./node_modules/sockjs-client/lib/transport/eventsource.js ***!
\*****************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {
"use strict";
eval("\n\nvar inherits = __webpack_require__(/*! inherits */ \"./node_modules/inherits/inherits_browser.js\")\n , AjaxBasedTransport = __webpack_require__(/*! ./lib/ajax-based */ \"./node_modules/sockjs-client/lib/transport/lib/ajax-based.js\")\n , EventSourceReceiver = __webpack_require__(/*! ./receiver/eventsource */ \"./node_modules/sockjs-client/lib/transport/receiver/eventsource.js\")\n , XHRCorsObject = __webpack_require__(/*! ./sender/xhr-cors */ \"./node_modules/sockjs-client/lib/transport/sender/xhr-cors.js\")\n , EventSourceDriver = __webpack_require__(/*! eventsource */ \"./node_modules/sockjs-client/lib/transport/browser/eventsource.js\")\n ;\n\nfunction EventSourceTransport(transUrl) {\n if (!EventSourceTransport.enabled()) {\n throw new Error('Transport created when disabled');\n }\n\n AjaxBasedTransport.call(this, transUrl, '/eventsource', EventSourceReceiver, XHRCorsObject);\n}\n\ninherits(EventSourceTransport, AjaxBasedTransport);\n\nEventSourceTransport.enabled = function() {\n return !!EventSourceDriver;\n};\n\nEventSourceTransport.transportName = 'eventsource';\nEventSourceTransport.roundTrips = 2;\n\nmodule.exports = EventSourceTransport;\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/sockjs-client/lib/transport/eventsource.js?");
/***/ }),
/***/ "./node_modules/sockjs-client/lib/transport/htmlfile.js":
/*!**************************************************************!*\
!*** ./node_modules/sockjs-client/lib/transport/htmlfile.js ***!
\**************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {
"use strict";
eval("\n\nvar inherits = __webpack_require__(/*! inherits */ \"./node_modules/inherits/inherits_browser.js\")\n , HtmlfileReceiver = __webpack_require__(/*! ./receiver/htmlfile */ \"./node_modules/sockjs-client/lib/transport/receiver/htmlfile.js\")\n , XHRLocalObject = __webpack_require__(/*! ./sender/xhr-local */ \"./node_modules/sockjs-client/lib/transport/sender/xhr-local.js\")\n , AjaxBasedTransport = __webpack_require__(/*! ./lib/ajax-based */ \"./node_modules/sockjs-client/lib/transport/lib/ajax-based.js\")\n ;\n\nfunction HtmlFileTransport(transUrl) {\n if (!HtmlfileReceiver.enabled) {\n throw new Error('Transport created when disabled');\n }\n AjaxBasedTransport.call(this, transUrl, '/htmlfile', HtmlfileReceiver, XHRLocalObject);\n}\n\ninherits(HtmlFileTransport, AjaxBasedTransport);\n\nHtmlFileTransport.enabled = function(info) {\n return HtmlfileReceiver.enabled && info.sameOrigin;\n};\n\nHtmlFileTransport.transportName = 'htmlfile';\nHtmlFileTransport.roundTrips = 2;\n\nmodule.exports = HtmlFileTransport;\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/sockjs-client/lib/transport/htmlfile.js?");
/***/ }),
/***/ "./node_modules/sockjs-client/lib/transport/iframe.js":
/*!************************************************************!*\
!*** ./node_modules/sockjs-client/lib/transport/iframe.js ***!
\************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {
"use strict";
eval("\n\n// Few cool transports do work only for same-origin. In order to make\n// them work cross-domain we shall use iframe, served from the\n// remote domain. New browsers have capabilities to communicate with\n// cross domain iframe using postMessage(). In IE it was implemented\n// from IE 8+, but of course, IE got some details wrong:\n// http://msdn.microsoft.com/en-us/library/cc197015(v=VS.85).aspx\n// http://stevesouders.com/misc/test-postmessage.php\n\nvar inherits = __webpack_require__(/*! inherits */ \"./node_modules/inherits/inherits_browser.js\")\n , EventEmitter = (__webpack_require__(/*! events */ \"./node_modules/sockjs-client/lib/event/emitter.js\").EventEmitter)\n , version = __webpack_require__(/*! ../version */ \"./node_modules/sockjs-client/lib/version.js\")\n , urlUtils = __webpack_require__(/*! ../utils/url */ \"./node_modules/sockjs-client/lib/utils/url.js\")\n , iframeUtils = __webpack_require__(/*! ../utils/iframe */ \"./node_modules/sockjs-client/lib/utils/iframe.js\")\n , eventUtils = __webpack_require__(/*! ../utils/event */ \"./node_modules/sockjs-client/lib/utils/event.js\")\n , random = __webpack_require__(/*! ../utils/random */ \"./node_modules/sockjs-client/lib/utils/random.js\")\n ;\n\nvar debug = function() {};\nif (true) {\n debug = __webpack_require__(/*! debug */ \"./node_modules/sockjs-client/node_modules/debug/src/browser.js\")('sockjs-client:transport:iframe');\n}\n\nfunction IframeTransport(transport, transUrl, baseUrl) {\n if (!IframeTransport.enabled()) {\n throw new Error('Transport created when disabled');\n }\n EventEmitter.call(this);\n\n var self = this;\n this.origin = urlUtils.getOrigin(baseUrl);\n this.baseUrl = baseUrl;\n this.transUrl = transUrl;\n this.transport = transport;\n this.windowId = random.string(8);\n\n var iframeUrl = urlUtils.addPath(baseUrl, '/iframe.html') + '#' + this.windowId;\n debug(transport, transUrl, iframeUrl);\n\n this.iframeObj = iframeUtils.createIframe(iframeUrl, function(r) {\n debug('err callback');\n self.emit('close', 1006, 'Unable to load an iframe (' + r + ')');\n self.close();\n });\n\n this.onmessageCallback = this._message.bind(this);\n eventUtils.attachEvent('message', this.onmessageCallback);\n}\n\ninherits(IframeTransport, EventEmitter);\n\nIframeTransport.prototype.close = function() {\n debug('close');\n this.removeAllListeners();\n if (this.iframeObj) {\n eventUtils.detachEvent('message', this.onmessageCallback);\n try {\n // When the iframe is not loaded, IE raises an exception\n // on 'contentWindow'.\n this.postMessage('c');\n } catch (x) {\n // intentionally empty\n }\n this.iframeObj.cleanup();\n this.iframeObj = null;\n this.onmessageCallback = this.iframeObj = null;\n }\n};\n\nIframeTransport.prototype._message = function(e) {\n debug('message', e.data);\n if (!urlUtils.isOriginEqual(e.origin, this.origin)) {\n debug('not same origin', e.origin, this.origin);\n return;\n }\n\n var iframeMessage;\n try {\n iframeMessage = JSON.parse(e.data);\n } catch (ignored) {\n debug('bad json', e.data);\n return;\n }\n\n if (iframeMessage.windowId !== this.windowId) {\n debug('mismatched window id', iframeMessage.windowId, this.windowId);\n return;\n }\n\n switch (iframeMessage.type) {\n case 's':\n this.iframeObj.loaded();\n // window global dependency\n this.postMessage('s', JSON.stringify([\n version\n , this.transport\n , this.transUrl\n , this.baseUrl\n ]));\n break;\n case 't':\n this.emit('message', iframeMessage.data);\n break;\n case 'c':\n var cdata;\n try {\n cdata = JSON.parse(iframeMessage.data);\n } catch (ignored) {\n debug('bad json', iframeMessage.data);\n return;\n }\n this.emit('close', cdata[0], cdata[1]);\n this.close();\n break;\n }\n};\n\nIframeTransport.prototype.postMessage = function(type, data) {\n debug('postMessage', type, data);\n this.iframeObj.post(JSON.stringify({\n windowId: this.windowId\n , type: type\n , data: data || ''\n }), this.origin);\n};\n\nIframeTransport.prototype.send = function(message) {\n debug('send', message);\n this.postMessage('m', message);\n};\n\nIframeTransport.enabled = function() {\n return iframeUtils.iframeEnabled;\n};\n\nIframeTransport.transportName = 'iframe';\nIframeTransport.roundTrips = 2;\n\nmodule.exports = IframeTransport;\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/sockjs-client/lib/transport/iframe.js?");
/***/ }),
/***/ "./node_modules/sockjs-client/lib/transport/jsonp-polling.js":
/*!*******************************************************************!*\
!*** ./node_modules/sockjs-client/lib/transport/jsonp-polling.js ***!
\*******************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {
"use strict";
eval("\n\n// The simplest and most robust transport, using the well-know cross\n// domain hack - JSONP. This transport is quite inefficient - one\n// message could use up to one http request. But at least it works almost\n// everywhere.\n// Known limitations:\n// o you will get a spinning cursor\n// o for Konqueror a dumb timer is needed to detect errors\n\nvar inherits = __webpack_require__(/*! inherits */ \"./node_modules/inherits/inherits_browser.js\")\n , SenderReceiver = __webpack_require__(/*! ./lib/sender-receiver */ \"./node_modules/sockjs-client/lib/transport/lib/sender-receiver.js\")\n , JsonpReceiver = __webpack_require__(/*! ./receiver/jsonp */ \"./node_modules/sockjs-client/lib/transport/receiver/jsonp.js\")\n , jsonpSender = __webpack_require__(/*! ./sender/jsonp */ \"./node_modules/sockjs-client/lib/transport/sender/jsonp.js\")\n ;\n\nfunction JsonPTransport(transUrl) {\n if (!JsonPTransport.enabled()) {\n throw new Error('Transport created when disabled');\n }\n SenderReceiver.call(this, transUrl, '/jsonp', jsonpSender, JsonpReceiver);\n}\n\ninherits(JsonPTransport, SenderReceiver);\n\nJsonPTransport.enabled = function() {\n return !!__webpack_require__.g.document;\n};\n\nJsonPTransport.transportName = 'jsonp-polling';\nJsonPTransport.roundTrips = 1;\nJsonPTransport.needBody = true;\n\nmodule.exports = JsonPTransport;\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/sockjs-client/lib/transport/jsonp-polling.js?");
/***/ }),
/***/ "./node_modules/sockjs-client/lib/transport/lib/ajax-based.js":
/*!********************************************************************!*\
!*** ./node_modules/sockjs-client/lib/transport/lib/ajax-based.js ***!
\********************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {
"use strict";
eval("\n\nvar inherits = __webpack_require__(/*! inherits */ \"./node_modules/inherits/inherits_browser.js\")\n , urlUtils = __webpack_require__(/*! ../../utils/url */ \"./node_modules/sockjs-client/lib/utils/url.js\")\n , SenderReceiver = __webpack_require__(/*! ./sender-receiver */ \"./node_modules/sockjs-client/lib/transport/lib/sender-receiver.js\")\n ;\n\nvar debug = function() {};\nif (true) {\n debug = __webpack_require__(/*! debug */ \"./node_modules/sockjs-client/node_modules/debug/src/browser.js\")('sockjs-client:ajax-based');\n}\n\nfunction createAjaxSender(AjaxObject) {\n return function(url, payload, callback) {\n debug('create ajax sender', url, payload);\n var opt = {};\n if (typeof payload === 'string') {\n opt.headers = {'Content-type': 'text/plain'};\n }\n var ajaxUrl = urlUtils.addPath(url, '/xhr_send');\n var xo = new AjaxObject('POST', ajaxUrl, payload, opt);\n xo.once('finish', function(status) {\n debug('finish', status);\n xo = null;\n\n if (status !== 200 && status !== 204) {\n return callback(new Error('http status ' + status));\n }\n callback();\n });\n return function() {\n debug('abort');\n xo.close();\n xo = null;\n\n var err = new Error('Aborted');\n err.code = 1000;\n callback(err);\n };\n };\n}\n\nfunction AjaxBasedTransport(transUrl, urlSuffix, Receiver, AjaxObject) {\n SenderReceiver.call(this, transUrl, urlSuffix, createAjaxSender(AjaxObject), Receiver, AjaxObject);\n}\n\ninherits(AjaxBasedTransport, SenderReceiver);\n\nmodule.exports = AjaxBasedTransport;\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/sockjs-client/lib/transport/lib/ajax-based.js?");
/***/ }),
/***/ "./node_modules/sockjs-client/lib/transport/lib/buffered-sender.js":
/*!*************************************************************************!*\
!*** ./node_modules/sockjs-client/lib/transport/lib/buffered-sender.js ***!
\*************************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {
"use strict";
eval("\n\nvar inherits = __webpack_require__(/*! inherits */ \"./node_modules/inherits/inherits_browser.js\")\n , EventEmitter = (__webpack_require__(/*! events */ \"./node_modules/sockjs-client/lib/event/emitter.js\").EventEmitter)\n ;\n\nvar debug = function() {};\nif (true) {\n debug = __webpack_require__(/*! debug */ \"./node_modules/sockjs-client/node_modules/debug/src/browser.js\")('sockjs-client:buffered-sender');\n}\n\nfunction BufferedSender(url, sender) {\n debug(url);\n EventEmitter.call(this);\n this.sendBuffer = [];\n this.sender = sender;\n this.url = url;\n}\n\ninherits(BufferedSender, EventEmitter);\n\nBufferedSender.prototype.send = function(message) {\n debug('send', message);\n this.sendBuffer.push(message);\n if (!this.sendStop) {\n this.sendSchedule();\n }\n};\n\n// For polling transports in a situation when in the message callback,\n// new message is being send. If the sending connection was started\n// before receiving one, it is possible to saturate the network and\n// timeout due to the lack of receiving socket. To avoid that we delay\n// sending messages by some small time, in order to let receiving\n// connection be started beforehand. This is only a halfmeasure and\n// does not fix the big problem, but it does make the tests go more\n// stable on slow networks.\nBufferedSender.prototype.sendScheduleWait = function() {\n debug('sendScheduleWait');\n var self = this;\n var tref;\n this.sendStop = function() {\n debug('sendStop');\n self.sendStop = null;\n clearTimeout(tref);\n };\n tref = setTimeout(function() {\n debug('timeout');\n self.sendStop = null;\n self.sendSchedule();\n }, 25);\n};\n\nBufferedSender.prototype.sendSchedule = function() {\n debug('sendSchedule', this.sendBuffer.length);\n var self = this;\n if (this.sendBuffer.length > 0) {\n var payload = '[' + this.sendBuffer.join(',') + ']';\n this.sendStop = this.sender(this.url, payload, function(err) {\n self.sendStop = null;\n if (err) {\n debug('error', err);\n self.emit('close', err.code || 1006, 'Sending error: ' + err);\n self.close();\n } else {\n self.sendScheduleWait();\n }\n });\n this.sendBuffer = [];\n }\n};\n\nBufferedSender.prototype._cleanup = function() {\n debug('_cleanup');\n this.removeAllListeners();\n};\n\nBufferedSender.prototype.close = function() {\n debug('close');\n this._cleanup();\n if (this.sendStop) {\n this.sendStop();\n this.sendStop = null;\n }\n};\n\nmodule.exports = BufferedSender;\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/sockjs-client/lib/transport/lib/buffered-sender.js?");
/***/ }),
/***/ "./node_modules/sockjs-client/lib/transport/lib/iframe-wrap.js":
/*!*********************************************************************!*\
!*** ./node_modules/sockjs-client/lib/transport/lib/iframe-wrap.js ***!
\*********************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {
"use strict";
eval("\n\nvar inherits = __webpack_require__(/*! inherits */ \"./node_modules/inherits/inherits_browser.js\")\n , IframeTransport = __webpack_require__(/*! ../iframe */ \"./node_modules/sockjs-client/lib/transport/iframe.js\")\n , objectUtils = __webpack_require__(/*! ../../utils/object */ \"./node_modules/sockjs-client/lib/utils/object.js\")\n ;\n\nmodule.exports = function(transport) {\n\n function IframeWrapTransport(transUrl, baseUrl) {\n IframeTransport.call(this, transport.transportName, transUrl, baseUrl);\n }\n\n inherits(IframeWrapTransport, IframeTransport);\n\n IframeWrapTransport.enabled = function(url, info) {\n if (!__webpack_require__.g.document) {\n return false;\n }\n\n var iframeInfo = objectUtils.extend({}, info);\n iframeInfo.sameOrigin = true;\n return transport.enabled(iframeInfo) && IframeTransport.enabled();\n };\n\n IframeWrapTransport.transportName = 'iframe-' + transport.transportName;\n IframeWrapTransport.needBody = true;\n IframeWrapTransport.roundTrips = IframeTransport.roundTrips + transport.roundTrips - 1; // html, javascript (2) + transport - no CORS (1)\n\n IframeWrapTransport.facadeTransport = transport;\n\n return IframeWrapTransport;\n};\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/sockjs-client/lib/transport/lib/iframe-wrap.js?");
/***/ }),
/***/ "./node_modules/sockjs-client/lib/transport/lib/polling.js":
/*!*****************************************************************!*\
!*** ./node_modules/sockjs-client/lib/transport/lib/polling.js ***!
\*****************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {
"use strict";
eval("\n\nvar inherits = __webpack_require__(/*! inherits */ \"./node_modules/inherits/inherits_browser.js\")\n , EventEmitter = (__webpack_require__(/*! events */ \"./node_modules/sockjs-client/lib/event/emitter.js\").EventEmitter)\n ;\n\nvar debug = function() {};\nif (true) {\n debug = __webpack_require__(/*! debug */ \"./node_modules/sockjs-client/node_modules/debug/src/browser.js\")('sockjs-client:polling');\n}\n\nfunction Polling(Receiver, receiveUrl, AjaxObject) {\n debug(receiveUrl);\n EventEmitter.call(this);\n this.Receiver = Receiver;\n this.receiveUrl = receiveUrl;\n this.AjaxObject = AjaxObject;\n this._scheduleReceiver();\n}\n\ninherits(Polling, EventEmitter);\n\nPolling.prototype._scheduleReceiver = function() {\n debug('_scheduleReceiver');\n var self = this;\n var poll = this.poll = new this.Receiver(this.receiveUrl, this.AjaxObject);\n\n poll.on('message', function(msg) {\n debug('message', msg);\n self.emit('message', msg);\n });\n\n poll.once('close', function(code, reason) {\n debug('close', code, reason, self.pollIsClosing);\n self.poll = poll = null;\n\n if (!self.pollIsClosing) {\n if (reason === 'network') {\n self._scheduleReceiver();\n } else {\n self.emit('close', code || 1006, reason);\n self.removeAllListeners();\n }\n }\n });\n};\n\nPolling.prototype.abort = function() {\n debug('abort');\n this.removeAllListeners();\n this.pollIsClosing = true;\n if (this.poll) {\n this.poll.abort();\n }\n};\n\nmodule.exports = Polling;\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/sockjs-client/lib/transport/lib/polling.js?");
/***/ }),
/***/ "./node_modules/sockjs-client/lib/transport/lib/sender-receiver.js":
/*!*************************************************************************!*\
!*** ./node_modules/sockjs-client/lib/transport/lib/sender-receiver.js ***!
\*************************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {
"use strict";
eval("\n\nvar inherits = __webpack_require__(/*! inherits */ \"./node_modules/inherits/inherits_browser.js\")\n , urlUtils = __webpack_require__(/*! ../../utils/url */ \"./node_modules/sockjs-client/lib/utils/url.js\")\n , BufferedSender = __webpack_require__(/*! ./buffered-sender */ \"./node_modules/sockjs-client/lib/transport/lib/buffered-sender.js\")\n , Polling = __webpack_require__(/*! ./polling */ \"./node_modules/sockjs-client/lib/transport/lib/polling.js\")\n ;\n\nvar debug = function() {};\nif (true) {\n debug = __webpack_require__(/*! debug */ \"./node_modules/sockjs-client/node_modules/debug/src/browser.js\")('sockjs-client:sender-receiver');\n}\n\nfunction SenderReceiver(transUrl, urlSuffix, senderFunc, Receiver, AjaxObject) {\n var pollUrl = urlUtils.addPath(transUrl, urlSuffix);\n debug(pollUrl);\n var self = this;\n BufferedSender.call(this, transUrl, senderFunc);\n\n this.poll = new Polling(Receiver, pollUrl, AjaxObject);\n this.poll.on('message', function(msg) {\n debug('poll message', msg);\n self.emit('message', msg);\n });\n this.poll.once('close', function(code, reason) {\n debug('poll close', code, reason);\n self.poll = null;\n self.emit('close', code, reason);\n self.close();\n });\n}\n\ninherits(SenderReceiver, BufferedSender);\n\nSenderReceiver.prototype.close = function() {\n BufferedSender.prototype.close.call(this);\n debug('close');\n this.removeAllListeners();\n if (this.poll) {\n this.poll.abort();\n this.poll = null;\n }\n};\n\nmodule.exports = SenderReceiver;\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/sockjs-client/lib/transport/lib/sender-receiver.js?");
/***/ }),
/***/ "./node_modules/sockjs-client/lib/transport/receiver/eventsource.js":
/*!**************************************************************************!*\
!*** ./node_modules/sockjs-client/lib/transport/receiver/eventsource.js ***!
\**************************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {
"use strict";
eval("\n\nvar inherits = __webpack_require__(/*! inherits */ \"./node_modules/inherits/inherits_browser.js\")\n , EventEmitter = (__webpack_require__(/*! events */ \"./node_modules/sockjs-client/lib/event/emitter.js\").EventEmitter)\n , EventSourceDriver = __webpack_require__(/*! eventsource */ \"./node_modules/sockjs-client/lib/transport/browser/eventsource.js\")\n ;\n\nvar debug = function() {};\nif (true) {\n debug = __webpack_require__(/*! debug */ \"./node_modules/sockjs-client/node_modules/debug/src/browser.js\")('sockjs-client:receiver:eventsource');\n}\n\nfunction EventSourceReceiver(url) {\n debug(url);\n EventEmitter.call(this);\n\n var self = this;\n var es = this.es = new EventSourceDriver(url);\n es.onmessage = function(e) {\n debug('message', e.data);\n self.emit('message', decodeURI(e.data));\n };\n es.onerror = function(e) {\n debug('error', es.readyState, e);\n // ES on reconnection has readyState = 0 or 1.\n // on network error it's CLOSED = 2\n var reason = (es.readyState !== 2 ? 'network' : 'permanent');\n self._cleanup();\n self._close(reason);\n };\n}\n\ninherits(EventSourceReceiver, EventEmitter);\n\nEventSourceReceiver.prototype.abort = function() {\n debug('abort');\n this._cleanup();\n this._close('user');\n};\n\nEventSourceReceiver.prototype._cleanup = function() {\n debug('cleanup');\n var es = this.es;\n if (es) {\n es.onmessage = es.onerror = null;\n es.close();\n this.es = null;\n }\n};\n\nEventSourceReceiver.prototype._close = function(reason) {\n debug('close', reason);\n var self = this;\n // Safari and chrome < 15 crash if we close window before\n // waiting for ES cleanup. See:\n // https://code.google.com/p/chromium/issues/detail?id=89155\n setTimeout(function() {\n self.emit('close', null, reason);\n self.removeAllListeners();\n }, 200);\n};\n\nmodule.exports = EventSourceReceiver;\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/sockjs-client/lib/transport/receiver/eventsource.js?");
/***/ }),
/***/ "./node_modules/sockjs-client/lib/transport/receiver/htmlfile.js":
/*!***********************************************************************!*\
!*** ./node_modules/sockjs-client/lib/transport/receiver/htmlfile.js ***!
\***********************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {
"use strict";
eval("\n\nvar inherits = __webpack_require__(/*! inherits */ \"./node_modules/inherits/inherits_browser.js\")\n , iframeUtils = __webpack_require__(/*! ../../utils/iframe */ \"./node_modules/sockjs-client/lib/utils/iframe.js\")\n , urlUtils = __webpack_require__(/*! ../../utils/url */ \"./node_modules/sockjs-client/lib/utils/url.js\")\n , EventEmitter = (__webpack_require__(/*! events */ \"./node_modules/sockjs-client/lib/event/emitter.js\").EventEmitter)\n , random = __webpack_require__(/*! ../../utils/random */ \"./node_modules/sockjs-client/lib/utils/random.js\")\n ;\n\nvar debug = function() {};\nif (true) {\n debug = __webpack_require__(/*! debug */ \"./node_modules/sockjs-client/node_modules/debug/src/browser.js\")('sockjs-client:receiver:htmlfile');\n}\n\nfunction HtmlfileReceiver(url) {\n debug(url);\n EventEmitter.call(this);\n var self = this;\n iframeUtils.polluteGlobalNamespace();\n\n this.id = 'a' + random.string(6);\n url = urlUtils.addQuery(url, 'c=' + decodeURIComponent(iframeUtils.WPrefix + '.' + this.id));\n\n debug('using htmlfile', HtmlfileReceiver.htmlfileEnabled);\n var constructFunc = HtmlfileReceiver.htmlfileEnabled ?\n iframeUtils.createHtmlfile : iframeUtils.createIframe;\n\n __webpack_require__.g[iframeUtils.WPrefix][this.id] = {\n start: function() {\n debug('start');\n self.iframeObj.loaded();\n }\n , message: function(data) {\n debug('message', data);\n self.emit('message', data);\n }\n , stop: function() {\n debug('stop');\n self._cleanup();\n self._close('network');\n }\n };\n this.iframeObj = constructFunc(url, function() {\n debug('callback');\n self._cleanup();\n self._close('permanent');\n });\n}\n\ninherits(HtmlfileReceiver, EventEmitter);\n\nHtmlfileReceiver.prototype.abort = function() {\n debug('abort');\n this._cleanup();\n this._close('user');\n};\n\nHtmlfileReceiver.prototype._cleanup = function() {\n debug('_cleanup');\n if (this.iframeObj) {\n this.iframeObj.cleanup();\n this.iframeObj = null;\n }\n delete __webpack_require__.g[iframeUtils.WPrefix][this.id];\n};\n\nHtmlfileReceiver.prototype._close = function(reason) {\n debug('_close', reason);\n this.emit('close', null, reason);\n this.removeAllListeners();\n};\n\nHtmlfileReceiver.htmlfileEnabled = false;\n\n// obfuscate to avoid firewalls\nvar axo = ['Active'].concat('Object').join('X');\nif (axo in __webpack_require__.g) {\n try {\n HtmlfileReceiver.htmlfileEnabled = !!new __webpack_require__.g[axo]('htmlfile');\n } catch (x) {\n // intentionally empty\n }\n}\n\nHtmlfileReceiver.enabled = HtmlfileReceiver.htmlfileEnabled || iframeUtils.iframeEnabled;\n\nmodule.exports = HtmlfileReceiver;\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/sockjs-client/lib/transport/receiver/htmlfile.js?");
/***/ }),
/***/ "./node_modules/sockjs-client/lib/transport/receiver/jsonp.js":
/*!********************************************************************!*\
!*** ./node_modules/sockjs-client/lib/transport/receiver/jsonp.js ***!
\********************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {
"use strict";
eval("\n\nvar utils = __webpack_require__(/*! ../../utils/iframe */ \"./node_modules/sockjs-client/lib/utils/iframe.js\")\n , random = __webpack_require__(/*! ../../utils/random */ \"./node_modules/sockjs-client/lib/utils/random.js\")\n , browser = __webpack_require__(/*! ../../utils/browser */ \"./node_modules/sockjs-client/lib/utils/browser.js\")\n , urlUtils = __webpack_require__(/*! ../../utils/url */ \"./node_modules/sockjs-client/lib/utils/url.js\")\n , inherits = __webpack_require__(/*! inherits */ \"./node_modules/inherits/inherits_browser.js\")\n , EventEmitter = (__webpack_require__(/*! events */ \"./node_modules/sockjs-client/lib/event/emitter.js\").EventEmitter)\n ;\n\nvar debug = function() {};\nif (true) {\n debug = __webpack_require__(/*! debug */ \"./node_modules/sockjs-client/node_modules/debug/src/browser.js\")('sockjs-client:receiver:jsonp');\n}\n\nfunction JsonpReceiver(url) {\n debug(url);\n var self = this;\n EventEmitter.call(this);\n\n utils.polluteGlobalNamespace();\n\n this.id = 'a' + random.string(6);\n var urlWithId = urlUtils.addQuery(url, 'c=' + encodeURIComponent(utils.WPrefix + '.' + this.id));\n\n __webpack_require__.g[utils.WPrefix][this.id] = this._callback.bind(this);\n this._createScript(urlWithId);\n\n // Fallback mostly for Konqueror - stupid timer, 35 seconds shall be plenty.\n this.timeoutId = setTimeout(function() {\n debug('timeout');\n self._abort(new Error('JSONP script loaded abnormally (timeout)'));\n }, JsonpReceiver.timeout);\n}\n\ninherits(JsonpReceiver, EventEmitter);\n\nJsonpReceiver.prototype.abort = function() {\n debug('abort');\n if (__webpack_require__.g[utils.WPrefix][this.id]) {\n var err = new Error('JSONP user aborted read');\n err.code = 1000;\n this._abort(err);\n }\n};\n\nJsonpReceiver.timeout = 35000;\nJsonpReceiver.scriptErrorTimeout = 1000;\n\nJsonpReceiver.prototype._callback = function(data) {\n debug('_callback', data);\n this._cleanup();\n\n if (this.aborting) {\n return;\n }\n\n if (data) {\n debug('message', data);\n this.emit('message', data);\n }\n this.emit('close', null, 'network');\n this.removeAllListeners();\n};\n\nJsonpReceiver.prototype._abort = function(err) {\n debug('_abort', err);\n this._cleanup();\n this.aborting = true;\n this.emit('close', err.code, err.message);\n this.removeAllListeners();\n};\n\nJsonpReceiver.prototype._cleanup = function() {\n debug('_cleanup');\n clearTimeout(this.timeoutId);\n if (this.script2) {\n this.script2.parentNode.removeChild(this.script2);\n this.script2 = null;\n }\n if (this.script) {\n var script = this.script;\n // Unfortunately, you can't really abort script loading of\n // the script.\n script.parentNode.removeChild(script);\n script.onreadystatechange = script.onerror =\n script.onload = script.onclick = null;\n this.script = null;\n }\n delete __webpack_require__.g[utils.WPrefix][this.id];\n};\n\nJsonpReceiver.prototype._scriptError = function() {\n debug('_scriptError');\n var self = this;\n if (this.errorTimer) {\n return;\n }\n\n this.errorTimer = setTimeout(function() {\n if (!self.loadedOkay) {\n self._abort(new Error('JSONP script loaded abnormally (onerror)'));\n }\n }, JsonpReceiver.scriptErrorTimeout);\n};\n\nJsonpReceiver.prototype._createScript = function(url) {\n debug('_createScript', url);\n var self = this;\n var script = this.script = __webpack_require__.g.document.createElement('script');\n var script2; // Opera synchronous load trick.\n\n script.id = 'a' + random.string(8);\n script.src = url;\n script.type = 'text/javascript';\n script.charset = 'UTF-8';\n script.onerror = this._scriptError.bind(this);\n script.onload = function() {\n debug('onload');\n self._abort(new Error('JSONP script loaded abnormally (onload)'));\n };\n\n // IE9 fires 'error' event after onreadystatechange or before, in random order.\n // Use loadedOkay to determine if actually errored\n script.onreadystatechange = function() {\n debug('onreadystatechange', script.readyState);\n if (/loaded|closed/.test(script.readyState)) {\n if (script && script.htmlFor && script.onclick) {\n self.loadedOkay = true;\n try {\n // In IE, actually execute the script.\n script.onclick();\n } catch (x) {\n // intentionally empty\n }\n }\n if (script) {\n self._abort(new Error('JSONP script loaded abnormally (onreadystatechange)'));\n }\n }\n };\n // IE: event/htmlFor/onclick trick.\n // One can't rely on proper order for onreadystatechange. In order to\n // make sure, set a 'htmlFor' and 'event' properties, so that\n // script code will be installed as 'onclick' handler for the\n // script object. Later, onreadystatechange, manually execute this\n // code. FF and Chrome doesn't work with 'event' and 'htmlFor'\n // set. For reference see:\n // http://jaubourg.net/2010/07/loading-script-as-onclick-handler-of.html\n // Also, read on that about script ordering:\n // http://wiki.whatwg.org/wiki/Dynamic_Script_Execution_Order\n if (typeof script.async === 'undefined' && __webpack_require__.g.document.attachEvent) {\n // According to mozilla docs, in recent browsers script.async defaults\n // to 'true', so we may use it to detect a good browser:\n // https://developer.mozilla.org/en/HTML/Element/script\n if (!browser.isOpera()) {\n // Naively assume we're in IE\n try {\n script.htmlFor = script.id;\n script.event = 'onclick';\n } catch (x) {\n // intentionally empty\n }\n script.async = true;\n } else {\n // Opera, second sync script hack\n script2 = this.script2 = __webpack_require__.g.document.createElement('script');\n script2.text = \"try{var a = document.getElementById('\" + script.id + \"'); if(a)a.onerror();}catch(x){};\";\n script.async = script2.async = false;\n }\n }\n if (typeof script.async !== 'undefined') {\n script.async = true;\n }\n\n var head = __webpack_require__.g.document.getElementsByTagName('head')[0];\n head.insertBefore(script, head.firstChild);\n if (script2) {\n head.insertBefore(script2, head.firstChild);\n }\n};\n\nmodule.exports = JsonpReceiver;\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/sockjs-client/lib/transport/receiver/jsonp.js?");
/***/ }),
/***/ "./node_modules/sockjs-client/lib/transport/receiver/xhr.js":
/*!******************************************************************!*\
!*** ./node_modules/sockjs-client/lib/transport/receiver/xhr.js ***!
\******************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {
"use strict";
eval("\n\nvar inherits = __webpack_require__(/*! inherits */ \"./node_modules/inherits/inherits_browser.js\")\n , EventEmitter = (__webpack_require__(/*! events */ \"./node_modules/sockjs-client/lib/event/emitter.js\").EventEmitter)\n ;\n\nvar debug = function() {};\nif (true) {\n debug = __webpack_require__(/*! debug */ \"./node_modules/sockjs-client/node_modules/debug/src/browser.js\")('sockjs-client:receiver:xhr');\n}\n\nfunction XhrReceiver(url, AjaxObject) {\n debug(url);\n EventEmitter.call(this);\n var self = this;\n\n this.bufferPosition = 0;\n\n this.xo = new AjaxObject('POST', url, null);\n this.xo.on('chunk', this._chunkHandler.bind(this));\n this.xo.once('finish', function(status, text) {\n debug('finish', status, text);\n self._chunkHandler(status, text);\n self.xo = null;\n var reason = status === 200 ? 'network' : 'permanent';\n debug('close', reason);\n self.emit('close', null, reason);\n self._cleanup();\n });\n}\n\ninherits(XhrReceiver, EventEmitter);\n\nXhrReceiver.prototype._chunkHandler = function(status, text) {\n debug('_chunkHandler', status);\n if (status !== 200 || !text) {\n return;\n }\n\n for (var idx = -1; ; this.bufferPosition += idx + 1) {\n var buf = text.slice(this.bufferPosition);\n idx = buf.indexOf('\\n');\n if (idx === -1) {\n break;\n }\n var msg = buf.slice(0, idx);\n if (msg) {\n debug('message', msg);\n this.emit('message', msg);\n }\n }\n};\n\nXhrReceiver.prototype._cleanup = function() {\n debug('_cleanup');\n this.removeAllListeners();\n};\n\nXhrReceiver.prototype.abort = function() {\n debug('abort');\n if (this.xo) {\n this.xo.close();\n debug('close');\n this.emit('close', null, 'user');\n this.xo = null;\n }\n this._cleanup();\n};\n\nmodule.exports = XhrReceiver;\n\n\n//# sourceURL=webpack://APITestManager/./node_modules/sockjs-client/lib/transport/receiver/xhr.js?");
/***/ }),
/***/ "./node_modules/sockjs-client/lib/transport/sender/jsonp.js":
/*!******************************************************************!*\
!*** ./node_modules/sockjs-client/lib/transport/sender/jsonp.js ***!
\******************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {
"use strict";
eval("\n\nvar random = __webpack_require__(/*! ../../utils/random */ \"./node_modules/sockjs-client/lib/utils/random.js\")\n , urlUtils = __webpack_require__(/*! ../../utils/url */ \"./node_modules/sockjs-client/lib/utils/url.js\")\n ;\n\nvar debug = function() {};\nif (true) {\n debug = __webpack_require__(/*! debug */ \"./node_modules/sockjs-client/node_modules/debug/src/browser.js\")('sockjs-client:sender:jsonp');\n}\n\nvar form, area;\n\nfunction createIframe(id) {\n debug('createIframe', id);\n try {\n // ie6 dynamic iframes with target=\"\" support (thanks Chris Lambacher)\n return __webpack_require__.g.document.createElement(' | | |