UNPKG

vue-renderer-markdown-monaco

Version:

A Vue 3 component that renders Markdown string content as HTML, supporting custom components and advanced markdown features.

17 lines (13 loc) 24.2 kB
"use strict";var Z=Object.defineProperty,ee=Object.defineProperties;var te=Object.getOwnPropertyDescriptors;var O=Object.getOwnPropertySymbols;var se=Object.prototype.hasOwnProperty,re=Object.prototype.propertyIsEnumerable;var P=(e,t,s)=>t in e?Z(e,t,{enumerable:!0,configurable:!0,writable:!0,value:s}):e[t]=s,L=(e,t)=>{for(var s in t||(t={}))se.call(t,s)&&P(e,s,t[s]);if(O)for(var s of O(t))re.call(t,s)&&P(e,s,t[s]);return e},I=(e,t)=>ee(e,te(t));var b=(e,t,s)=>new Promise((o,n)=>{var l=c=>{try{r(s.next(c))}catch(g){n(g)}},u=c=>{try{r(s.throw(c))}catch(g){n(g)}},r=c=>c.done?o(c.value):Promise.resolve(c.value).then(l,u);r((s=s.apply(e,t)).next())});Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const N=require("./exports-BkJLj-K4.cjs");/*!----------------------------------------------------------------------------- * Copyright (c) Microsoft Corporation. All rights reserved. * Version: 0.52.2(404545bded1df6ffa41ea0af4e8ddb219018c6c1) * Released under the MIT license * https://github.com/microsoft/monaco-editor/blob/main/LICENSE.txt *-----------------------------------------------------------------------------*/var ie=Object.defineProperty,ne=Object.getOwnPropertyDescriptor,ae=Object.getOwnPropertyNames,oe=Object.prototype.hasOwnProperty,ce=(e,t,s,o)=>{if(t&&typeof t=="object"||typeof t=="function")for(let n of ae(t))!oe.call(e,n)&&n!==s&&ie(e,n,{get:()=>t[n],enumerable:!(o=ne(t,n))||o.enumerable});return e},le=(e,t,s)=>(ce(e,t,"default"),s),a={};le(a,N.monaco_editor_core_star);var M=class{constructor(e,t){this._modeId=e,this._defaults=t,this._worker=null,this._client=null,this._configChangeListener=this._defaults.onDidChange(()=>this._stopWorker()),this._updateExtraLibsToken=0,this._extraLibsChangeListener=this._defaults.onDidExtraLibsChange(()=>this._updateExtraLibs())}dispose(){this._configChangeListener.dispose(),this._extraLibsChangeListener.dispose(),this._stopWorker()}_stopWorker(){this._worker&&(this._worker.dispose(),this._worker=null),this._client=null}_updateExtraLibs(){return b(this,null,function*(){if(!this._worker)return;const e=++this._updateExtraLibsToken,t=yield this._worker.getProxy();this._updateExtraLibsToken===e&&t.updateExtraLibs(this._defaults.getExtraLibs())})}_getClient(){return this._client||(this._client=b(this,null,function*(){return this._worker=a.editor.createWebWorker({moduleId:"vs/language/typescript/tsWorker",label:this._modeId,keepIdleModels:!0,createData:{compilerOptions:this._defaults.getCompilerOptions(),extraLibs:this._defaults.getExtraLibs(),customWorkerPath:this._defaults.workerOptions.customWorkerPath,inlayHintsOptions:this._defaults.inlayHintsOptions}}),this._defaults.getEagerModelSync()?yield this._worker.withSyncedResources(a.editor.getModels().filter(e=>e.getLanguageId()===this._modeId).map(e=>e.uri)):yield this._worker.getProxy()})),this._client}getLanguageServiceWorker(...e){return b(this,null,function*(){const t=yield this._getClient();return this._worker&&(yield this._worker.withSyncedResources(e)),t})}},i={};i["lib.d.ts"]=!0;i["lib.decorators.d.ts"]=!0;i["lib.decorators.legacy.d.ts"]=!0;i["lib.dom.asynciterable.d.ts"]=!0;i["lib.dom.d.ts"]=!0;i["lib.dom.iterable.d.ts"]=!0;i["lib.es2015.collection.d.ts"]=!0;i["lib.es2015.core.d.ts"]=!0;i["lib.es2015.d.ts"]=!0;i["lib.es2015.generator.d.ts"]=!0;i["lib.es2015.iterable.d.ts"]=!0;i["lib.es2015.promise.d.ts"]=!0;i["lib.es2015.proxy.d.ts"]=!0;i["lib.es2015.reflect.d.ts"]=!0;i["lib.es2015.symbol.d.ts"]=!0;i["lib.es2015.symbol.wellknown.d.ts"]=!0;i["lib.es2016.array.include.d.ts"]=!0;i["lib.es2016.d.ts"]=!0;i["lib.es2016.full.d.ts"]=!0;i["lib.es2016.intl.d.ts"]=!0;i["lib.es2017.d.ts"]=!0;i["lib.es2017.date.d.ts"]=!0;i["lib.es2017.full.d.ts"]=!0;i["lib.es2017.intl.d.ts"]=!0;i["lib.es2017.object.d.ts"]=!0;i["lib.es2017.sharedmemory.d.ts"]=!0;i["lib.es2017.string.d.ts"]=!0;i["lib.es2017.typedarrays.d.ts"]=!0;i["lib.es2018.asyncgenerator.d.ts"]=!0;i["lib.es2018.asynciterable.d.ts"]=!0;i["lib.es2018.d.ts"]=!0;i["lib.es2018.full.d.ts"]=!0;i["lib.es2018.intl.d.ts"]=!0;i["lib.es2018.promise.d.ts"]=!0;i["lib.es2018.regexp.d.ts"]=!0;i["lib.es2019.array.d.ts"]=!0;i["lib.es2019.d.ts"]=!0;i["lib.es2019.full.d.ts"]=!0;i["lib.es2019.intl.d.ts"]=!0;i["lib.es2019.object.d.ts"]=!0;i["lib.es2019.string.d.ts"]=!0;i["lib.es2019.symbol.d.ts"]=!0;i["lib.es2020.bigint.d.ts"]=!0;i["lib.es2020.d.ts"]=!0;i["lib.es2020.date.d.ts"]=!0;i["lib.es2020.full.d.ts"]=!0;i["lib.es2020.intl.d.ts"]=!0;i["lib.es2020.number.d.ts"]=!0;i["lib.es2020.promise.d.ts"]=!0;i["lib.es2020.sharedmemory.d.ts"]=!0;i["lib.es2020.string.d.ts"]=!0;i["lib.es2020.symbol.wellknown.d.ts"]=!0;i["lib.es2021.d.ts"]=!0;i["lib.es2021.full.d.ts"]=!0;i["lib.es2021.intl.d.ts"]=!0;i["lib.es2021.promise.d.ts"]=!0;i["lib.es2021.string.d.ts"]=!0;i["lib.es2021.weakref.d.ts"]=!0;i["lib.es2022.array.d.ts"]=!0;i["lib.es2022.d.ts"]=!0;i["lib.es2022.error.d.ts"]=!0;i["lib.es2022.full.d.ts"]=!0;i["lib.es2022.intl.d.ts"]=!0;i["lib.es2022.object.d.ts"]=!0;i["lib.es2022.regexp.d.ts"]=!0;i["lib.es2022.sharedmemory.d.ts"]=!0;i["lib.es2022.string.d.ts"]=!0;i["lib.es2023.array.d.ts"]=!0;i["lib.es2023.collection.d.ts"]=!0;i["lib.es2023.d.ts"]=!0;i["lib.es2023.full.d.ts"]=!0;i["lib.es5.d.ts"]=!0;i["lib.es6.d.ts"]=!0;i["lib.esnext.collection.d.ts"]=!0;i["lib.esnext.d.ts"]=!0;i["lib.esnext.decorators.d.ts"]=!0;i["lib.esnext.disposable.d.ts"]=!0;i["lib.esnext.full.d.ts"]=!0;i["lib.esnext.intl.d.ts"]=!0;i["lib.esnext.object.d.ts"]=!0;i["lib.esnext.promise.d.ts"]=!0;i["lib.scripthost.d.ts"]=!0;i["lib.webworker.asynciterable.d.ts"]=!0;i["lib.webworker.d.ts"]=!0;i["lib.webworker.importscripts.d.ts"]=!0;i["lib.webworker.iterable.d.ts"]=!0;function D(e,t,s=0){if(typeof e=="string")return e;if(e===void 0)return"";let o="";if(s){o+=t;for(let n=0;n<s;n++)o+=" "}if(o+=e.messageText,s++,e.next)for(const n of e.next)o+=D(n,t,s);return o}function w(e){return e?e.map(t=>t.text).join(""):""}var _=class{constructor(e){this._worker=e}_textSpanToRange(e,t){let s=e.getPositionAt(t.start),o=e.getPositionAt(t.start+t.length),{lineNumber:n,column:l}=s,{lineNumber:u,column:r}=o;return{startLineNumber:n,startColumn:l,endLineNumber:u,endColumn:r}}},R=class{constructor(e){this._worker=e,this._libFiles={},this._hasFetchedLibFiles=!1,this._fetchLibFilesPromise=null}isLibFile(e){return e&&e.path.indexOf("/lib.")===0?!!i[e.path.slice(1)]:!1}getOrCreateModel(e){const t=a.Uri.parse(e),s=a.editor.getModel(t);if(s)return s;if(this.isLibFile(t)&&this._hasFetchedLibFiles)return a.editor.createModel(this._libFiles[t.path.slice(1)],"typescript",t);const o=N.typescriptDefaults.getExtraLibs()[e];return o?a.editor.createModel(o.content,"typescript",t):null}_containsLibFile(e){for(let t of e)if(this.isLibFile(t))return!0;return!1}fetchLibFilesIfNecessary(e){return b(this,null,function*(){this._containsLibFile(e)&&(yield this._fetchLibFiles())})}_fetchLibFiles(){return this._fetchLibFilesPromise||(this._fetchLibFilesPromise=this._worker().then(e=>e.getLibFiles()).then(e=>{this._hasFetchedLibFiles=!0,this._libFiles=e})),this._fetchLibFilesPromise}},K=class extends _{constructor(e,t,s,o){super(o),this._libFiles=e,this._defaults=t,this._selector=s,this._disposables=[],this._listener=Object.create(null);const n=r=>{if(r.getLanguageId()!==s)return;const c=()=>{const{onlyVisible:h}=this._defaults.getDiagnosticsOptions();h?r.isAttachedToEditor()&&this._doValidate(r):this._doValidate(r)};let g;const d=r.onDidChangeContent(()=>{clearTimeout(g),g=window.setTimeout(c,500)}),m=r.onDidChangeAttached(()=>{const{onlyVisible:h}=this._defaults.getDiagnosticsOptions();h&&(r.isAttachedToEditor()?c():a.editor.setModelMarkers(r,this._selector,[]))});this._listener[r.uri.toString()]={dispose(){d.dispose(),m.dispose(),clearTimeout(g)}},c()},l=r=>{a.editor.setModelMarkers(r,this._selector,[]);const c=r.uri.toString();this._listener[c]&&(this._listener[c].dispose(),delete this._listener[c])};this._disposables.push(a.editor.onDidCreateModel(r=>n(r))),this._disposables.push(a.editor.onWillDisposeModel(l)),this._disposables.push(a.editor.onDidChangeModelLanguage(r=>{l(r.model),n(r.model)})),this._disposables.push({dispose(){for(const r of a.editor.getModels())l(r)}});const u=()=>{for(const r of a.editor.getModels())l(r),n(r)};this._disposables.push(this._defaults.onDidChange(u)),this._disposables.push(this._defaults.onDidExtraLibsChange(u)),a.editor.getModels().forEach(r=>n(r))}dispose(){this._disposables.forEach(e=>e&&e.dispose()),this._disposables=[]}_doValidate(e){return b(this,null,function*(){const t=yield this._worker(e.uri);if(e.isDisposed())return;const s=[],{noSyntaxValidation:o,noSemanticValidation:n,noSuggestionDiagnostics:l}=this._defaults.getDiagnosticsOptions();o||s.push(t.getSyntacticDiagnostics(e.uri.toString())),n||s.push(t.getSemanticDiagnostics(e.uri.toString())),l||s.push(t.getSuggestionDiagnostics(e.uri.toString()));const u=yield Promise.all(s);if(!u||e.isDisposed())return;const r=u.reduce((g,d)=>d.concat(g),[]).filter(g=>(this._defaults.getDiagnosticsOptions().diagnosticCodesToIgnore||[]).indexOf(g.code)===-1),c=r.map(g=>g.relatedInformation||[]).reduce((g,d)=>d.concat(g),[]).map(g=>g.file?a.Uri.parse(g.file.fileName):null);yield this._libFiles.fetchLibFilesIfNecessary(c),!e.isDisposed()&&a.editor.setModelMarkers(e,this._selector,r.map(g=>this._convertDiagnostics(e,g)))})}_convertDiagnostics(e,t){const s=t.start||0,o=t.length||1,{lineNumber:n,column:l}=e.getPositionAt(s),{lineNumber:u,column:r}=e.getPositionAt(s+o),c=[];return t.reportsUnnecessary&&c.push(a.MarkerTag.Unnecessary),t.reportsDeprecated&&c.push(a.MarkerTag.Deprecated),{severity:this._tsDiagnosticCategoryToMarkerSeverity(t.category),startLineNumber:n,startColumn:l,endLineNumber:u,endColumn:r,message:D(t.messageText,` `),code:t.code.toString(),tags:c,relatedInformation:this._convertRelatedInformation(e,t.relatedInformation)}}_convertRelatedInformation(e,t){if(!t)return[];const s=[];return t.forEach(o=>{let n=e;if(o.file&&(n=this._libFiles.getOrCreateModel(o.file.fileName)),!n)return;const l=o.start||0,u=o.length||1,{lineNumber:r,column:c}=n.getPositionAt(l),{lineNumber:g,column:d}=n.getPositionAt(l+u);s.push({resource:n.uri,startLineNumber:r,startColumn:c,endLineNumber:g,endColumn:d,message:D(o.messageText,` `)})}),s}_tsDiagnosticCategoryToMarkerSeverity(e){switch(e){case 1:return a.MarkerSeverity.Error;case 3:return a.MarkerSeverity.Info;case 0:return a.MarkerSeverity.Warning;case 2:return a.MarkerSeverity.Hint}return a.MarkerSeverity.Info}},H=class C extends _{get triggerCharacters(){return["."]}provideCompletionItems(t,s,o,n){return b(this,null,function*(){const l=t.getWordUntilPosition(s),u=new a.Range(s.lineNumber,l.startColumn,s.lineNumber,l.endColumn),r=t.uri,c=t.getOffsetAt(s),g=yield this._worker(r);if(t.isDisposed())return;const d=yield g.getCompletionsAtPosition(r.toString(),c);return!d||t.isDisposed()?void 0:{suggestions:d.entries.map(h=>{let k=u;if(h.replacementSpan){const v=t.getPositionAt(h.replacementSpan.start),A=t.getPositionAt(h.replacementSpan.start+h.replacementSpan.length);k=new a.Range(v.lineNumber,v.column,A.lineNumber,A.column)}const x=[];return h.kindModifiers!==void 0&&h.kindModifiers.indexOf("deprecated")!==-1&&x.push(a.languages.CompletionItemTag.Deprecated),{uri:r,position:s,offset:c,range:k,label:h.name,insertText:h.name,sortText:h.sortText,kind:C.convertKind(h.kind),tags:x}})}})}resolveCompletionItem(t,s){return b(this,null,function*(){const o=t,n=o.uri,l=o.position,u=o.offset,c=yield(yield this._worker(n)).getCompletionEntryDetails(n.toString(),u,o.label);return c?{uri:n,position:l,label:c.name,kind:C.convertKind(c.kind),detail:w(c.displayParts),documentation:{value:C.createDocumentationString(c)}}:o})}static convertKind(t){switch(t){case f.primitiveType:case f.keyword:return a.languages.CompletionItemKind.Keyword;case f.variable:case f.localVariable:return a.languages.CompletionItemKind.Variable;case f.memberVariable:case f.memberGetAccessor:case f.memberSetAccessor:return a.languages.CompletionItemKind.Field;case f.function:case f.memberFunction:case f.constructSignature:case f.callSignature:case f.indexSignature:return a.languages.CompletionItemKind.Function;case f.enum:return a.languages.CompletionItemKind.Enum;case f.module:return a.languages.CompletionItemKind.Module;case f.class:return a.languages.CompletionItemKind.Class;case f.interface:return a.languages.CompletionItemKind.Interface;case f.warning:return a.languages.CompletionItemKind.File}return a.languages.CompletionItemKind.Property}static createDocumentationString(t){let s=w(t.documentation);if(t.tags)for(const o of t.tags)s+=` ${E(o)}`;return s}};function E(e){let t=`*@${e.name}*`;if(e.name==="param"&&e.text){const[s,...o]=e.text;t+=`\`${s.text}\``,o.length>0&&(t+=` — ${o.map(n=>n.text).join(" ")}`)}else Array.isArray(e.text)?t+=` — ${e.text.map(s=>s.text).join(" ")}`:e.text&&(t+=` — ${e.text}`);return t}var W=class V extends _{constructor(){super(...arguments),this.signatureHelpTriggerCharacters=["(",","]}static _toSignatureHelpTriggerReason(t){switch(t.triggerKind){case a.languages.SignatureHelpTriggerKind.TriggerCharacter:return t.triggerCharacter?t.isRetrigger?{kind:"retrigger",triggerCharacter:t.triggerCharacter}:{kind:"characterTyped",triggerCharacter:t.triggerCharacter}:{kind:"invoked"};case a.languages.SignatureHelpTriggerKind.ContentChange:return t.isRetrigger?{kind:"retrigger"}:{kind:"invoked"};case a.languages.SignatureHelpTriggerKind.Invoke:default:return{kind:"invoked"}}}provideSignatureHelp(t,s,o,n){return b(this,null,function*(){const l=t.uri,u=t.getOffsetAt(s),r=yield this._worker(l);if(t.isDisposed())return;const c=yield r.getSignatureHelpItems(l.toString(),u,{triggerReason:V._toSignatureHelpTriggerReason(n)});if(!c||t.isDisposed())return;const g={activeSignature:c.selectedItemIndex,activeParameter:c.argumentIndex,signatures:[]};return c.items.forEach(d=>{const m={label:"",parameters:[]};m.documentation={value:w(d.documentation)},m.label+=w(d.prefixDisplayParts),d.parameters.forEach((h,k,x)=>{const v=w(h.displayParts),A={label:v,documentation:{value:w(h.documentation)}};m.label+=v,m.parameters.push(A),k<x.length-1&&(m.label+=w(d.separatorDisplayParts))}),m.label+=w(d.suffixDisplayParts),g.signatures.push(m)}),{value:g,dispose(){}}})}},j=class extends _{provideHover(e,t,s){return b(this,null,function*(){const o=e.uri,n=e.getOffsetAt(t),l=yield this._worker(o);if(e.isDisposed())return;const u=yield l.getQuickInfoAtPosition(o.toString(),n);if(!u||e.isDisposed())return;const r=w(u.documentation),c=u.tags?u.tags.map(d=>E(d)).join(` `):"",g=w(u.displayParts);return{range:this._textSpanToRange(e,u.textSpan),contents:[{value:"```typescript\n"+g+"\n```\n"},{value:r+(c?` `+c:"")}]}})}},B=class extends _{provideDocumentHighlights(e,t,s){return b(this,null,function*(){const o=e.uri,n=e.getOffsetAt(t),l=yield this._worker(o);if(e.isDisposed())return;const u=yield l.getDocumentHighlights(o.toString(),n,[o.toString()]);if(!(!u||e.isDisposed()))return u.flatMap(r=>r.highlightSpans.map(c=>({range:this._textSpanToRange(e,c.textSpan),kind:c.kind==="writtenReference"?a.languages.DocumentHighlightKind.Write:a.languages.DocumentHighlightKind.Text})))})}},U=class extends _{constructor(e,t){super(t),this._libFiles=e}provideDefinition(e,t,s){return b(this,null,function*(){const o=e.uri,n=e.getOffsetAt(t),l=yield this._worker(o);if(e.isDisposed())return;const u=yield l.getDefinitionAtPosition(o.toString(),n);if(!u||e.isDisposed()||(yield this._libFiles.fetchLibFilesIfNecessary(u.map(c=>a.Uri.parse(c.fileName))),e.isDisposed()))return;const r=[];for(let c of u){const g=this._libFiles.getOrCreateModel(c.fileName);g&&r.push({uri:g.uri,range:this._textSpanToRange(g,c.textSpan)})}return r})}},$=class extends _{constructor(e,t){super(t),this._libFiles=e}provideReferences(e,t,s,o){return b(this,null,function*(){const n=e.uri,l=e.getOffsetAt(t),u=yield this._worker(n);if(e.isDisposed())return;const r=yield u.getReferencesAtPosition(n.toString(),l);if(!r||e.isDisposed()||(yield this._libFiles.fetchLibFilesIfNecessary(r.map(g=>a.Uri.parse(g.fileName))),e.isDisposed()))return;const c=[];for(let g of r){const d=this._libFiles.getOrCreateModel(g.fileName);d&&c.push({uri:d.uri,range:this._textSpanToRange(d,g.textSpan)})}return c})}},z=class extends _{provideDocumentSymbols(e,t){return b(this,null,function*(){const s=e.uri,o=yield this._worker(s);if(e.isDisposed())return;const n=yield o.getNavigationTree(s.toString());if(!n||e.isDisposed())return;const l=(r,c)=>{var d;return{name:r.text,detail:"",kind:y[r.kind]||a.languages.SymbolKind.Variable,range:this._textSpanToRange(e,r.spans[0]),selectionRange:this._textSpanToRange(e,r.spans[0]),tags:[],children:(d=r.childItems)==null?void 0:d.map(m=>l(m,r.text)),containerName:c}};return n.childItems?n.childItems.map(r=>l(r)):[]})}},p,f=(p=class{},p.unknown="",p.keyword="keyword",p.script="script",p.module="module",p.class="class",p.interface="interface",p.type="type",p.enum="enum",p.variable="var",p.localVariable="local var",p.function="function",p.localFunction="local function",p.memberFunction="method",p.memberGetAccessor="getter",p.memberSetAccessor="setter",p.memberVariable="property",p.constructorImplementation="constructor",p.callSignature="call",p.indexSignature="index",p.constructSignature="construct",p.parameter="parameter",p.typeParameter="type parameter",p.primitiveType="primitive type",p.label="label",p.alias="alias",p.const="const",p.let="let",p.warning="warning",p),y=Object.create(null);y[f.module]=a.languages.SymbolKind.Module;y[f.class]=a.languages.SymbolKind.Class;y[f.enum]=a.languages.SymbolKind.Enum;y[f.interface]=a.languages.SymbolKind.Interface;y[f.memberFunction]=a.languages.SymbolKind.Method;y[f.memberVariable]=a.languages.SymbolKind.Property;y[f.memberGetAccessor]=a.languages.SymbolKind.Property;y[f.memberSetAccessor]=a.languages.SymbolKind.Property;y[f.variable]=a.languages.SymbolKind.Variable;y[f.const]=a.languages.SymbolKind.Variable;y[f.localVariable]=a.languages.SymbolKind.Variable;y[f.variable]=a.languages.SymbolKind.Variable;y[f.function]=a.languages.SymbolKind.Function;y[f.localFunction]=a.languages.SymbolKind.Function;var S=class extends _{static _convertOptions(e){return{ConvertTabsToSpaces:e.insertSpaces,TabSize:e.tabSize,IndentSize:e.tabSize,IndentStyle:2,NewLineCharacter:` `,InsertSpaceAfterCommaDelimiter:!0,InsertSpaceAfterSemicolonInForStatements:!0,InsertSpaceBeforeAndAfterBinaryOperators:!0,InsertSpaceAfterKeywordsInControlFlowStatements:!0,InsertSpaceAfterFunctionKeywordForAnonymousFunctions:!0,InsertSpaceAfterOpeningAndBeforeClosingNonemptyParenthesis:!1,InsertSpaceAfterOpeningAndBeforeClosingNonemptyBrackets:!1,InsertSpaceAfterOpeningAndBeforeClosingTemplateStringBraces:!1,PlaceOpenBraceOnNewLineForControlBlocks:!1,PlaceOpenBraceOnNewLineForFunctions:!1}}_convertTextChanges(e,t){return{text:t.newText,range:this._textSpanToRange(e,t.span)}}},J=class extends S{constructor(){super(...arguments),this.canFormatMultipleRanges=!1}provideDocumentRangeFormattingEdits(e,t,s,o){return b(this,null,function*(){const n=e.uri,l=e.getOffsetAt({lineNumber:t.startLineNumber,column:t.startColumn}),u=e.getOffsetAt({lineNumber:t.endLineNumber,column:t.endColumn}),r=yield this._worker(n);if(e.isDisposed())return;const c=yield r.getFormattingEditsForRange(n.toString(),l,u,S._convertOptions(s));if(!(!c||e.isDisposed()))return c.map(g=>this._convertTextChanges(e,g))})}},G=class extends S{get autoFormatTriggerCharacters(){return[";","}",` `]}provideOnTypeFormattingEdits(e,t,s,o,n){return b(this,null,function*(){const l=e.uri,u=e.getOffsetAt(t),r=yield this._worker(l);if(e.isDisposed())return;const c=yield r.getFormattingEditsAfterKeystroke(l.toString(),u,s,S._convertOptions(o));if(!(!c||e.isDisposed()))return c.map(g=>this._convertTextChanges(e,g))})}},Q=class extends S{provideCodeActions(e,t,s,o){return b(this,null,function*(){const n=e.uri,l=e.getOffsetAt({lineNumber:t.startLineNumber,column:t.startColumn}),u=e.getOffsetAt({lineNumber:t.endLineNumber,column:t.endColumn}),r=S._convertOptions(e.getOptions()),c=s.markers.filter(h=>h.code).map(h=>h.code).map(Number),g=yield this._worker(n);if(e.isDisposed())return;const d=yield g.getCodeFixesAtPosition(n.toString(),l,u,c,r);return!d||e.isDisposed()?{actions:[],dispose:()=>{}}:{actions:d.filter(h=>h.changes.filter(k=>k.isNewFile).length===0).map(h=>this._tsCodeFixActionToMonacoCodeAction(e,s,h)),dispose:()=>{}}})}_tsCodeFixActionToMonacoCodeAction(e,t,s){const o=[];for(const l of s.changes)for(const u of l.textChanges)o.push({resource:e.uri,versionId:void 0,textEdit:{range:this._textSpanToRange(e,u.span),text:u.newText}});return{title:s.description,edit:{edits:o},diagnostics:t.markers,kind:"quickfix"}}},q=class extends _{constructor(e,t){super(t),this._libFiles=e}provideRenameEdits(e,t,s,o){return b(this,null,function*(){const n=e.uri,l=n.toString(),u=e.getOffsetAt(t),r=yield this._worker(n);if(e.isDisposed())return;const c=yield r.getRenameInfo(l,u,{allowRenameOfImportPath:!1});if(c.canRename===!1)return{edits:[],rejectReason:c.localizedErrorMessage};if(c.fileToRename!==void 0)throw new Error("Renaming files is not supported.");const g=yield r.findRenameLocations(l,u,!1,!1,!1);if(!g||e.isDisposed())return;const d=[];for(const m of g){const h=this._libFiles.getOrCreateModel(m.fileName);if(h)d.push({resource:h.uri,versionId:void 0,textEdit:{range:this._textSpanToRange(h,m.textSpan),text:s}});else throw new Error(`Unknown file ${m.fileName}.`)}return{edits:d}})}},X=class extends _{provideInlayHints(e,t,s){return b(this,null,function*(){const o=e.uri,n=o.toString(),l=e.getOffsetAt({lineNumber:t.startLineNumber,column:t.startColumn}),u=e.getOffsetAt({lineNumber:t.endLineNumber,column:t.endColumn}),r=yield this._worker(o);return e.isDisposed()?null:{hints:(yield r.provideInlayHints(n,l,u)).map(d=>I(L({},d),{label:d.text,position:e.getPositionAt(d.position),kind:this._convertHintKind(d.kind)})),dispose:()=>{}}})}_convertHintKind(e){switch(e){case"Parameter":return a.languages.InlayHintKind.Parameter;case"Type":return a.languages.InlayHintKind.Type;default:return a.languages.InlayHintKind.Type}}},F,T;function ue(e){T=Y(e,"typescript")}function ge(e){F=Y(e,"javascript")}function de(){return new Promise((e,t)=>{if(!F)return t("JavaScript not registered!");e(F)})}function pe(){return new Promise((e,t)=>{if(!T)return t("TypeScript not registered!");e(T)})}function Y(e,t){const s=[],o=new M(t,e),n=(...r)=>o.getLanguageServiceWorker(...r),l=new R(n);function u(){const{modeConfiguration:r}=e;fe(s),r.completionItems&&s.push(a.languages.registerCompletionItemProvider(t,new H(n))),r.signatureHelp&&s.push(a.languages.registerSignatureHelpProvider(t,new W(n))),r.hovers&&s.push(a.languages.registerHoverProvider(t,new j(n))),r.documentHighlights&&s.push(a.languages.registerDocumentHighlightProvider(t,new B(n))),r.definitions&&s.push(a.languages.registerDefinitionProvider(t,new U(l,n))),r.references&&s.push(a.languages.registerReferenceProvider(t,new $(l,n))),r.documentSymbols&&s.push(a.languages.registerDocumentSymbolProvider(t,new z(n))),r.rename&&s.push(a.languages.registerRenameProvider(t,new q(l,n))),r.documentRangeFormattingEdits&&s.push(a.languages.registerDocumentRangeFormattingEditProvider(t,new J(n))),r.onTypeFormattingEdits&&s.push(a.languages.registerOnTypeFormattingEditProvider(t,new G(n))),r.codeActions&&s.push(a.languages.registerCodeActionProvider(t,new Q(n))),r.inlayHints&&s.push(a.languages.registerInlayHintsProvider(t,new X(n))),r.diagnostics&&s.push(new K(l,e,t,n))}return u(),n}function fe(e){for(;e.length;)e.pop().dispose()}exports.Adapter=_;exports.CodeActionAdaptor=Q;exports.DefinitionAdapter=U;exports.DiagnosticsAdapter=K;exports.DocumentHighlightAdapter=B;exports.FormatAdapter=J;exports.FormatHelper=S;exports.FormatOnTypeAdapter=G;exports.InlayHintsAdapter=X;exports.Kind=f;exports.LibFiles=R;exports.OutlineAdapter=z;exports.QuickInfoAdapter=j;exports.ReferenceAdapter=$;exports.RenameAdapter=q;exports.SignatureHelpAdapter=W;exports.SuggestAdapter=H;exports.WorkerManager=M;exports.flattenDiagnosticMessageText=D;exports.getJavaScriptWorker=de;exports.getTypeScriptWorker=pe;exports.setupJavaScript=ge;exports.setupTypeScript=ue;