catproxy
Version:
a node proxy or host change tools
7 lines • 16.2 kB
JavaScript
/*!-----------------------------------------------------------------------------
* Copyright (c) Microsoft Corporation. All rights reserved.
* monaco-html version: 1.1.0(79ec6c68417f91dfc31b66e71900dc7741769abb)
* Released under the MIT license
* https://github.com/Microsoft/monaco-html/blob/master/LICENSE.md
*-----------------------------------------------------------------------------*/
!function(e){if("object"==typeof module&&"object"==typeof module.exports){var t=e(require,exports);void 0!==t&&(module.exports=t)}else"function"==typeof define&&define.amd&&define("vs/language/html/workerManager",["require","exports"],e)}(function(e,t){function n(e){var t,n,i=new r(function(e,r){t=e,n=r},function(){});return e.then(t,n),i}var r=monaco.Promise,i=12e4,o=function(){function e(e){var t=this;this._defaults=e,this._worker=null,this._idleCheckInterval=setInterval(function(){return t._checkIfIdle()},3e4),this._lastUsedTime=0,this._configChangeListener=this._defaults.onDidChange(function(){return t._stopWorker()})}return e.prototype._stopWorker=function(){this._worker&&(this._worker.dispose(),this._worker=null),this._client=null},e.prototype.dispose=function(){clearInterval(this._idleCheckInterval),this._configChangeListener.dispose(),this._stopWorker()},e.prototype._checkIfIdle=function(){if(this._worker){var e=Date.now()-this._lastUsedTime;e>i&&this._stopWorker()}},e.prototype._getClient=function(){return this._lastUsedTime=Date.now(),this._client||(this._worker=monaco.editor.createWebWorker({moduleId:"vs/language/html/htmlWorker",createData:{languageSettings:this._defaults.options,languageId:this._defaults.languageId},label:this._defaults.languageId}),this._client=this._worker.getProxy()),this._client},e.prototype.getLanguageServiceWorker=function(){for(var e=this,t=[],r=0;r<arguments.length;r++)t[r-0]=arguments[r];var i;return n(this._getClient().then(function(e){i=e}).then(function(n){return e._worker.withSyncedResources(t)}).then(function(e){return i}))},e}();t.WorkerManager=o}),function(e){if("object"==typeof module&&"object"==typeof module.exports){var t=e(require,exports);void 0!==t&&(module.exports=t)}else"function"==typeof define&&define.amd&&define("vscode-languageserver-types/main",["require","exports"],e)}(function(e,t){var n;!function(e){function t(e,t){return{line:e,character:t}}function n(e){var t=e;return I.defined(t)&&I.number(t.line)&&I.number(t.character)}e.create=t,e.is=n}(n=t.Position||(t.Position={}));var r;!function(e){function t(e,t,r,i){if(I.number(e)&&I.number(t)&&I.number(r)&&I.number(i))return{start:n.create(e,t),end:n.create(r,i)};if(n.is(e)&&n.is(t))return{start:e,end:t};throw new Error("Range#create called with invalid arguments["+e+", "+t+", "+r+", "+i+"]")}function r(e){var t=e;return I.defined(t)&&n.is(t.start)&&n.is(t.end)}e.create=t,e.is=r}(r=t.Range||(t.Range={}));var i;!function(e){function t(e,t){return{uri:e,range:t}}function n(e){var t=e;return I.defined(t)&&r.is(t.range)&&(I.string(t.uri)||I.undefined(t.uri))}e.create=t,e.is=n}(i=t.Location||(t.Location={}));var o;!function(e){function t(e,t,n,r,i){var o={range:e,message:t};return I.defined(n)&&(o.severity=n),I.defined(r)&&(o.code=r),I.defined(i)&&(o.source=i),o}function n(e){var t=e;return I.defined(t)&&r.is(t.range)&&I.string(t.message)&&(I.number(t.severity)||I.undefined(t.severity))&&(I.number(t.code)||I.string(t.code)||I.undefined(t.code))&&(I.string(t.source)||I.undefined(t.source))}e.create=t,e.is=n}(o=t.Diagnostic||(t.Diagnostic={}));var u;!function(e){function t(e,t){for(var n=[],r=2;r<arguments.length;r++)n[r-2]=arguments[r];var i={title:e,command:t};return I.defined(n)&&n.length>0&&(i.arguments=n),i}function n(e){var t=e;return I.defined(t)&&I.string(t.title)&&I.string(t.title)}e.create=t,e.is=n}(u=t.Command||(t.Command={}));var a;!function(e){function t(e,t){return{range:e,newText:t}}function n(e,t){return{range:{start:e,end:e},newText:t}}function r(e){return{range:e,newText:""}}e.replace=t,e.insert=n,e.del=r}(a=t.TextEdit||(t.TextEdit={}));var c=function(){function e(){this.workspaceEdit={changes:Object.create(null)},this.textEditChanges=Object.create(null)}return Object.defineProperty(e.prototype,"edit",{get:function(){return this.workspaceEdit},enumerable:!0,configurable:!0}),e.prototype.getTextEditChange=function(e){var t=function(){function e(e){this.edits=e}return e.prototype.insert=function(e,t){this.edits.push(a.insert(e,t))},e.prototype.replace=function(e,t){this.edits.push(a.replace(e,t))},e.prototype["delete"]=function(e){this.edits.push(a.del(e))},e.prototype.all=function(){return this.edits},e.prototype.clear=function(){this.edits.splice(0,this.edits.length)},e}(),n=this.textEditChanges[e];if(!n){var r=[];this.workspaceEdit.changes[e]=r,n=new t(r),this.textEditChanges[e]=n}return n},e}();t.WorkspaceChange=c;var s;!function(e){function t(e){return{uri:e}}function n(e){var t=e;return I.defined(t)&&I.string(t.uri)}e.create=t,e.is=n}(s=t.TextDocumentIdentifier||(t.TextDocumentIdentifier={}));var f;!function(e){function t(e,t){return{uri:e,version:t}}function n(e){var t=e;return I.defined(t)&&I.string(t.uri)&&I.number(t.version)}e.create=t,e.is=n}(f=t.VersionedTextDocumentIdentifier||(t.VersionedTextDocumentIdentifier={}));var d;!function(e){function t(e,t,n,r){return{uri:e,languageId:t,version:n,text:r}}function n(e){var t=e;return I.defined(t)&&I.string(t.uri)&&I.string(t.languageId)&&I.number(t.version)&&I.string(t.text)}e.create=t,e.is=n}(d=t.TextDocumentItem||(t.TextDocumentItem={}));var l;!function(e){function t(e){return{label:e}}e.create=t}(l=t.CompletionItem||(t.CompletionItem={}));var g;!function(e){function t(e,t){return{items:e?e:[],isIncomplete:!!t}}e.create=t}(g=t.CompletionList||(t.CompletionList={}));var h;!function(e){function t(e){return e.replace(/[\\`*_{}[\]()#+\-.!]/g,"\\$&")}e.fromPlainText=t}(h=t.MarkedString||(t.MarkedString={}));var p;!function(e){function t(e,t){return t?{label:e,documentation:t}:{label:e}}e.create=t}(p=t.ParameterInformation||(t.ParameterInformation={}));var m;!function(e){function t(e,t){for(var n=[],r=2;r<arguments.length;r++)n[r-2]=arguments[r];var i={label:e};return I.defined(t)&&(i.documentation=t),I.defined(n)?i.parameters=n:i.parameters=[],i}e.create=t}(m=t.SignatureInformation||(t.SignatureInformation={}));var v;!function(e){function t(e,t){var n={range:e};return I.number(t)&&(n.kind=t),n}e.create=t}(v=t.DocumentHighlight||(t.DocumentHighlight={}));var _;!function(e){function t(e,t,n,r,i){var o={name:e,kind:t,location:{uri:r,range:n}};return i&&(o.containerName=i),o}e.create=t}(_=t.SymbolInformation||(t.SymbolInformation={}));var y;!function(e){function t(e){return{diagnostics:e}}function n(e){var t=e;return I.defined(t)&&I.typedArray(t.diagnostics,o.is)}e.create=t,e.is=n}(y=t.CodeActionContext||(t.CodeActionContext={}));var b;!function(e){function t(e,t){var n={range:e};return I.defined(t)&&(n.data=t),n}function n(e){var t=e;return I.defined(t)&&r.is(t.range)&&(I.undefined(t.command)||u.is(t.command))}e.create=t,e.is=n}(b=t.CodeLens||(t.CodeLens={}));var k;!function(e){function t(e,t){return{tabSize:e,insertSpaces:t}}function n(e){var t=e;return I.defined(t)&&I.number(t.tabSize)&&I["boolean"](t.insertSpaces)}e.create=t,e.is=n}(k=t.FormattingOptions||(t.FormattingOptions={}));var x=function(){function e(){}return e}();t.DocumentLink=x;var x;!function(e){function t(e,t){return{range:e,target:t}}function n(e){var t=e;return I.defined(t)&&r.is(t.range)&&(I.undefined(t.target)||I.string(t.target))}e.create=t,e.is=n}(x=t.DocumentLink||(t.DocumentLink={}));var w;!function(e){function t(e,t,n,r){return new C(e,t,n,r)}function n(e){var t=e;return!!(I.defined(t)&&I.string(t.uri)&&(I.undefined(t.languageId)||I.string(t.languageId))&&I.number(t.lineCount)&&I.func(t.getText)&&I.func(t.positionAt)&&I.func(t.offsetAt))}e.create=t,e.is=n}(w=t.TextDocument||(t.TextDocument={}));var I,C=function(){function e(e,t,n,r){this._uri=e,this._languageId=t,this._version=n,this._content=r,this._lineOffsets=null}return Object.defineProperty(e.prototype,"uri",{get:function(){return this._uri},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"languageId",{get:function(){return this._languageId},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"version",{get:function(){return this._version},enumerable:!0,configurable:!0}),e.prototype.getText=function(){return this._content},e.prototype.update=function(e,t){this._content=e.text,this._version=t,this._lineOffsets=null},e.prototype.getLineOffsets=function(){if(null===this._lineOffsets){for(var e=[],t=this._content,n=!0,r=0;r<t.length;r++){n&&(e.push(r),n=!1);var i=t.charAt(r);n="\r"===i||"\n"===i,"\r"===i&&r+1<t.length&&"\n"===t.charAt(r+1)&&r++}n&&t.length>0&&e.push(t.length),this._lineOffsets=e}return this._lineOffsets},e.prototype.positionAt=function(e){e=Math.max(Math.min(e,this._content.length),0);var t=this.getLineOffsets(),r=0,i=t.length;if(0===i)return n.create(0,e);for(;r<i;){var o=Math.floor((r+i)/2);t[o]>e?i=o:r=o+1}var u=r-1;return n.create(u,e-t[u])},e.prototype.offsetAt=function(e){var t=this.getLineOffsets();if(e.line>=t.length)return this._content.length;if(e.line<0)return 0;var n=t[e.line],r=e.line+1<t.length?t[e.line+1]:this._content.length;return Math.max(Math.min(n+e.character,r),n)},Object.defineProperty(e.prototype,"lineCount",{get:function(){return this.getLineOffsets().length},enumerable:!0,configurable:!0}),e}();!function(e){function t(e){return"undefined"!=typeof e}function n(e){return"undefined"==typeof e}function r(e){return e===!0||e===!1}function i(e){return"[object String]"===c.call(e)}function o(e){return"[object Number]"===c.call(e)}function u(e){return"[object Function]"===c.call(e)}function a(e,t){return Array.isArray(e)&&e.every(t)}var c=Object.prototype.toString;e.defined=t,e.undefined=n,e["boolean"]=r,e.string=i,e.number=o,e.func=u,e.typedArray=a}(I||(I={}))}),define("vscode-languageserver-types",["vscode-languageserver-types/main"],function(e){return e}),function(e){if("object"==typeof module&&"object"==typeof module.exports){var t=e(require,exports);void 0!==t&&(module.exports=t)}else"function"==typeof define&&define.amd&&define("vs/language/html/languageFeatures",["require","exports","vscode-languageserver-types"],e)}(function(e,t){function n(e){switch(e){case 1:return monaco.Severity.Error;case 2:return monaco.Severity.Warning;case 3:case 4:default:return monaco.Severity.Info}}function r(e,t){var r="number"==typeof t.code?String(t.code):t.code;return{severity:n(t.severity),startLineNumber:t.range.start.line+1,startColumn:t.range.start.character+1,endLineNumber:t.range.end.line+1,endColumn:t.range.end.character+1,message:t.message,code:r,source:t.source}}function i(e){if(e)return{character:e.column-1,line:e.lineNumber-1}}function o(e){if(e)return{start:i(e.getStartPosition()),end:i(e.getEndPosition())}}function u(e){if(e)return new l(e.start.line+1,e.start.character+1,e.end.line+1,e.end.character+1)}function a(e){var t=monaco.languages.CompletionItemKind;switch(e){case 1:return t.Text;case 2:return t.Method;case 3:return t.Function;case 4:return t.Constructor;case 5:return t.Field;case 6:return t.Variable;case 7:return t.Class;case 8:return t.Interface;case 9:return t.Module;case 10:return t.Property;case 11:return t.Unit;case 12:return t.Value;case 13:return t.Enum;case 14:return t.Keyword;case 15:return t.Snippet;case 16:return t.Color;case 17:return t.File;case 18:return t.Reference}return t.Property}function c(e){if(e)return{range:u(e.range),text:e.newText}}function s(e){var t=monaco.languages.DocumentHighlightKind;switch(e){case 2:return t.Read;case 3:return t.Write;case 1:return t.Text}return t.Text}function f(e){return{tabSize:e.tabSize,insertSpaces:e.insertSpaces}}function d(e,t){return t.cancel&&e.onCancellationRequested(function(){return t.cancel()}),t}var l=(e("vscode-languageserver-types"),monaco.Uri,monaco.Range),g=function(){function e(e,t){var n=this;this._languageId=e,this._worker=t,this._disposables=[],this._listener=Object.create(null);var r=function(e){var t=e.getModeId();if(t===n._languageId){var r;n._listener[e.uri.toString()]=e.onDidChangeContent(function(){clearTimeout(r),r=setTimeout(function(){return n._doValidate(e.uri,t)},500)}),n._doValidate(e.uri,t)}},i=function(e){monaco.editor.setModelMarkers(e,n._languageId,[]),delete n._listener[e.uri.toString()]};this._disposables.push(monaco.editor.onDidCreateModel(r)),this._disposables.push(monaco.editor.onWillDisposeModel(function(e){i(e)})),this._disposables.push(monaco.editor.onDidChangeModelLanguage(function(e){i(e.model),r(e.model)})),this._disposables.push({dispose:function(){for(var e in n._listener)n._listener[e].dispose()}}),monaco.editor.getModels().forEach(r)}return e.prototype.dispose=function(){this._disposables.forEach(function(e){return e&&e.dispose()}),this._disposables=[]},e.prototype._doValidate=function(e,t){this._worker(e).then(function(n){return n.doValidation(e.toString()).then(function(n){var i=n.map(function(t){return r(e,t)});monaco.editor.setModelMarkers(monaco.editor.getModel(e),t,i)})}).then(void 0,function(e){console.error(e)})},e}();t.DiagnostcsAdapter=g;var h=function(){function e(e){this._worker=e}return Object.defineProperty(e.prototype,"triggerCharacters",{get:function(){return[".",":","<",'"',"=","/"]},enumerable:!0,configurable:!0}),e.prototype.provideCompletionItems=function(e,t,n){var r=(e.getWordUntilPosition(t),e.uri);return d(n,this._worker(r).then(function(e){return e.doComplete(r.toString(),i(t)).then(function(e){if(e){var t=e.items.map(function(e){return{label:e.label,insertText:e.insertText,sortText:e.sortText,filterText:e.filterText,documentation:e.documentation,detail:e.detail,kind:a(e.kind),textEdit:c(e.textEdit)}});return{isIncomplete:e.isIncomplete,items:t}}})}))},e}();t.CompletionAdapter=h;var p=function(){function e(e){this._worker=e}return e.prototype.provideDocumentHighlights=function(e,t,n){var r=e.uri;return d(n,this._worker(r).then(function(e){return e.findDocumentHighlights(r.toString(),i(t))}).then(function(e){if(e)return e.map(function(e){return{range:u(e.range),kind:s(e.kind)}})}))},e}();t.DocumentHighlightAdapter=p;var m=function(){function e(e){this._worker=e}return e.prototype.provideLinks=function(e,t){var n=e.uri;return d(t,this._worker(n).then(function(e){return e.findDocumentLinks(n.toString(),null)}).then(function(e){if(e)return e.map(function(e){return{range:u(e.range),url:e.target}})}))},e}();t.DocumentLinkAdapter=m;var v=function(){function e(e){this._worker=e}return e.prototype.provideDocumentFormattingEdits=function(e,t,n){var r=e.uri;return d(n,this._worker(r).then(function(e){return e.format(r.toString(),null,f(t)).then(function(e){if(e&&0!==e.length)return e.map(c)})}))},e}();t.DocumentFormattingEditProvider=v;var _=function(){function e(e){this._worker=e}return e.prototype.provideDocumentRangeFormattingEdits=function(e,t,n,r){var i=e.uri;return d(r,this._worker(i).then(function(e){return e.format(i.toString(),o(t),f(n)).then(function(e){if(e&&0!==e.length)return e.map(c)})}))},e}();t.DocumentRangeFormattingEditProvider=_}),function(e){if("object"==typeof module&&"object"==typeof module.exports){var t=e(require,exports);void 0!==t&&(module.exports=t)}else"function"==typeof define&&define.amd&&define("vs/language/html/htmlMode",["require","exports","./workerManager","./languageFeatures"],e)}(function(e,t){function n(e){var t=[],n=new r.WorkerManager(e);t.push(n);var o=function(){for(var e=[],t=0;t<arguments.length;t++)e[t-0]=arguments[t];return n.getLanguageServiceWorker.apply(n,e)},u=e.languageId;t.push(monaco.languages.registerCompletionItemProvider(u,new i.CompletionAdapter(o))),t.push(monaco.languages.registerDocumentHighlightProvider(u,new i.DocumentHighlightAdapter(o))),t.push(monaco.languages.registerLinkProvider(u,new i.DocumentLinkAdapter(o))),"html"===u&&(t.push(monaco.languages.registerDocumentFormattingEditProvider(u,new i.DocumentFormattingEditProvider(o))),t.push(monaco.languages.registerDocumentRangeFormattingEditProvider(u,new i.DocumentRangeFormattingEditProvider(o))),t.push(new i.DiagnostcsAdapter(u,o)))}var r=e("./workerManager"),i=e("./languageFeatures");t.setupMode=n});