markstream-vue2 0.0.46-beta.1 → 0.0.46
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/index.cjs +1 -1
- package/dist/index.css +1 -1
- package/dist/index.js +249 -23
- package/dist/index.px.css +1 -1
- package/dist/index.tailwind.css +1 -1
- package/dist/tailwind.ts +1 -1
- package/dist/types/components/PreCodeNode/PreCodeNode.vue.d.ts +2 -0
- package/dist/types/types/component-props.d.ts +2 -0
- package/package.json +3 -3
- package/dist/chunks/cssMode-2f534f78.cjs +0 -1
- package/dist/chunks/cssMode-3f97e3da.js +0 -206
- package/dist/chunks/htmlMode-341fd8a0.cjs +0 -1
- package/dist/chunks/htmlMode-980b2a3d.js +0 -222
- package/dist/chunks/index.legacy-1f634d9d.js +0 -199274
- package/dist/chunks/index.legacy-b598deaf.cjs +0 -1
- package/dist/chunks/jsonMode-9ba44ad3.js +0 -921
- package/dist/chunks/jsonMode-d32122b2.cjs +0 -1
- package/dist/chunks/lspLanguageFeatures-7b72a0c0.cjs +0 -1
- package/dist/chunks/lspLanguageFeatures-8d6ce48e.js +0 -1842
- package/dist/chunks/tsMode-eb76a00c.js +0 -1337
- package/dist/chunks/tsMode-fbe6879d.cjs +0 -1
- package/dist/chunks/workers-ac3ab4dd.cjs +0 -1
- package/dist/chunks/workers-c9c93e2c.js +0 -71
- package/dist/workers/css.worker.js +0 -1
- package/dist/workers/html.worker.js +0 -1
- package/dist/workers/json.worker.js +0 -1
- package/dist/workers/ts.worker.js +0 -6
package/dist/tailwind.ts
CHANGED
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
export const safeList = `
|
|
1
|
+
export const safeList = `admonition is-dark admonition-header [_setup.iconMap[_setup.props.node.kind] admonition-icon admonition-title admonition-toggle show v-show !collapsed admonition-content component copy f9c1d6b9 stream-markdown-parser vue-demi auto [] code-pre-fallback container code-block-container my-4 rounded-lg border overflow-hidden shadow-sm border-gray-700/30 bg-gray-900 border-gray-200 bg-white is-plain-text code-block-header flex justify-between items-center px-4 py-2.5 border-b border-gray-400/5 space-x-2 flex-1 icon-slot h-4 w-4 flex-shrink-0 text-sm font-medium font-mono truncate header-right code-action-btn p-2 text-xs rounded-md transition-colors hover:bg-[var(--vscode-editor-selectionBackground)] mouseenter focus w-3 h-3 none currentColor round m9 click m14 evenodd !isCollapsed code-editor-layer codeEditor code-editor-container code-height-placeholder"] visible hidden void code-editor-fallback-surface !stream loading code-loading-placeholder loading-skeleton skeleton-line short sr-only polite status b3974933 dl definition-list entry.className entry.key entry.nodes b089ea12 emoji-node de55dc97 checkbox-node checkbox-input checkbox checked d2-block-container text-gray-100 text-gray-900 d2-block-header gap-x-2 gap-x-1 p-0.5 bg-gray-700 bg-gray-100 mode-btn px-2 py-1 rounded is-active preview source d2-action-btn bodyRef d2-block-body d2-source py-4 d2-code d2-error mt-2 d2-render d2-svg pb-3 fdf24c90 footnote-node leading-relaxed border-t border-[var(--footnote-border,#eaecef)] pt-2 heading-node child heading ffb7cf51 emphasis-node emphasis hard-break footnote-anchor hover:underline cursor-pointer dynamic html-inline-node text innerHTML e6ed4c9f footnote-reference footnote-link mark highlight-node highlight structured htmlRef html-block-node html-block-node__placeholder html-block-node__placeholder-bar w-4/5 w-2/3 node inline text-[85%] px-1 py-0.5 bg-[hsl(var(--secondary))] whitespace-normal break-words max-w-full before:content-[''] after:content-[''] inline-code-stream-delta [_setup.streamedDeltaClass] transition img-switch out-in image image-node__img h-auto transition-opacity duration-200 ease-in-out image-node__img--inline opacity-0 opacity-100 ?? lazy eager async placeholder placeholder-layer placeholder-layer--inline inline-flex justify-center gap-2 rounded-full border-2 border-solid border-current border-t-transparent animate-spin whitespace-nowrap text-gray-500 [_vm._v(_vm._s(_vm.node.raw))])]] error image-node__error image-node__error--inline py-2 text-red-500 list-item pl-1.5 my-2 containerEl math-block text-center overflow-x-auto relative min-h-[40px] math-block__content math-block__fallback math-loading-overlay math-loading-spinner anchorEl link-node noopener noreferrer link-text link-loading items-baseline gap-1.5 link-text-wrapper leading-[normal] link-loading-indicator list-node list-disc item index insert-node insert ab1ec9bc is-rendering pending infographic-block-header bg-gray-800 bg-gray-50 [_vm.$slots["header-left"] [_vm._t("header-left")] my-0 text-gray-400 text-gray-600 [_vm._t("header-center")] px-2.5 bg-gray-600 text-gray-200 text-gray-700 hover:text-gray-200 hover:text-gray-700 m16 [_vm._t("header-right")] opacity-50 cursor-not-allowed m7 p-4 whitespace-pre-wrap text-gray-300 absolute top-2 right-2 z-10 backdrop-blur hover:bg-gray-700 hover:bg-gray-200"] in m21 out zoom infographic-preview min-h-[360px] transition-all duration-100 block inset-0 cursor-grab infographicContainer w-full min-h-full markstream-vue infographic-dialog fixed z-50 bg-black/70 dialog-panel h-full max-h-full shadow-lg top-6 right-6 modalContent math-inline-wrapper math-inline math-inline--fallback math-inline__loading math-inline__spinner isLoading d2f0cfa6 paragraph-node codeBlockContent code-block-content rendererTarget code-block-render code-fallback-plain stream fbed7233 mermaid-block-header space-x-1 modeContainerRef mermaidContainer transition-[height] duration-150 ease-out mermaidContent markstream-vue2 mermaid-dialog markstream-pre--line-numbers markstream-pre--diff-preview markstream-pre--diff-inline markstream-pre__diff-code no pane.key markstream-pre__diff-pane line.key markstream-pre__diff-line markstream-pre__diff-rail markstream-pre__diff-number markstream-pre__diff-content markstream-pre__diff-content-inner textContent strikethrough-node strikethrough strong-node custom-id af3ce037 reference-node bg-[hsl(var(--muted))] px-1.5 mx-0.5 hover:bg-[hsl(var(--secondary))] mouseEnter mouseleave mouseLeave subscript-node subscript-child [_setup.nodeComponents[child.type] child.raw superscript-node superscript-child ef2512b4 table-node-wrapper tableRef my-8 table-node col border-[var(--table-border,#cbd5e1)] font-semibold p-[calc(4/7*1em)] right text-right cell.align center text-left cell.children table-node__resize-handle columns and pointerdown table-node-fade table-node__loading table-node__spinner text-node text-node-center text-node-stream-delta e8e0f51e hr-node tooltip ready z-[9999] inline-block text-base px-3 shadow-md pointer-events-none tooltip-element text-white border-gray-700 border"] vmr-container is common alias note markdown-renderer legacy-nodes-renderer item.renderKey node-slot item.index item.node.type node-content item.node item.node.loading item.indexKey dt definition-term dd definition-desc number top navigator.clipboard typeof navigator.clipboard.writeText href name xlink:href markstream-d2-root-svg string not instance.render instance missing object render returned empty window.requestAnimationFrame to smooth previewCode touchstart passive boolean preview-code plaintext line-info legacy off never background diff single [markstream-vue2] stream-monaco blocks will use basic enhanced editor theme provided themes array initialize window.getComputedStyle side-by-side div:first-child markstream-inline-fold-proxy aria-label codicon codicon-unfold event.key mousedown keydown up down post dark night moon black dracula mocha frappe macchiato palenight ocean poimandres monokai laserwave tokyo slack-dark rose-pine github-dark material-theme one-dark catppuccin-mocha catppuccin-frappe catppuccin-macchiato light latte dawn lotus explicit fontSize lineHeight paddingBottom paddingTop tabSize on same resize markstreamHtmlPolicy safe escape markstream-core markstreamFade markstreamTextStreamState raw index-key inline-code-stream-delta--a inline-code-stream-delta--b load primary failed fallback event.clientY pointermove mousemove infinite openModal element found transform ease fullscreen library p-4">Failed instanceof error.message infographic-action-btn hover:bg-gray-200 $$ paragraph custom-html-tags html_block child.type html_inline hunk context removed added markstream-pre__diff-pane--inline original markstream-pre__diff-pane--original modified markstream-pre__diff-pane--modified vitesse-dark vitesse-light lang darkBg display shiki shiki-fallback [MarkdownCodeBlockNode] dispose data-markstream-code-theme even stale stream-markdown stream-markdown.createShikiStreamRenderer available requires with ignoring using default language register configured retrying without overflow-y"] overflow-x"] toggleMode strict loose mermaid configure abort timed error?.message gantt viewBox width height get [data-mermaid-wrapper] open-modal toggle-mode transitionend retry mermaid-action-btn pointerup pointercancel markstreamStreamVersion text-node-stream-delta--a text-node-stream-delta--b handleArtifactClick markstreamTypewriter legacy-renderer langs unknown node.type code_block infographic d2 d2lang list containerRef mouseout fade handle-artifact-click item.bindings node-spacer node-placeholder typewriterCursorRef typewriter-cursor html-preview-frame__backdrop html-preview-frame html-preview-frame__header html-preview-frame__title html-preview-frame__dot html-preview-frame__label html-preview-frame__close html-preview-frame__iframe no-referrer srcdoc unknown-node htmlPreviewSandbox contains both allow-scripts this only fully trusted content served an isolated en utf-8 viewport content="width=device-width initial-scale=1 e.key rootRef portal-root mouseover show-tooltips markstreamSmoothStreaming markstreamShowTooltips globalThis.process globalThis.process?.env?.NODE_ENV test reverse scroll too-many-targets console viewportPriority virtualization peer dependencies are back inline-code rendering enable full features please install this.isDark mermaid-preview-area preformatted list_item definition_list footnote [data-node-index] math_block [data-node-type="code_block"] [data-node-type="admonition"] [data-node-type="table"] [data-node-type="math_block"] [data-node-type="html_block"] [data-node-type="image"]`
|
|
2
2
|
module.exports = safeList;
|
|
3
3
|
export default safeList;
|
|
@@ -1,5 +1,7 @@
|
|
|
1
1
|
interface PreCodeNodeProps {
|
|
2
2
|
node: any;
|
|
3
|
+
showLineNumbers?: boolean;
|
|
4
|
+
diffInline?: boolean;
|
|
3
5
|
}
|
|
4
6
|
declare const _default: import('vue-demi').DefineComponent<__VLS_TypePropsToOption<PreCodeNodeProps>, {}, {}, {}, {}, import('vue-demi').ComponentOptionsMixin, import('vue-demi').ComponentOptionsMixin, {}, string, Readonly<import('vue-demi').ExtractPropTypes<__VLS_TypePropsToOption<PreCodeNodeProps>>>, {}>;
|
|
5
7
|
export default _default;
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "markstream-vue2",
|
|
3
3
|
"type": "module",
|
|
4
|
-
"version": "0.0.46
|
|
4
|
+
"version": "0.0.46",
|
|
5
5
|
"description": "Vue 2 Markdown renderer optimized for large documents with progressive Mermaid rendering, streaming diff code blocks, and fast real-time preview. Perfect for documentation sites, AI chat interfaces, and content management systems.",
|
|
6
6
|
"author": "Simon He",
|
|
7
7
|
"license": "MIT",
|
|
@@ -118,8 +118,8 @@
|
|
|
118
118
|
"dependencies": {
|
|
119
119
|
"@floating-ui/dom": "^1.7.6",
|
|
120
120
|
"vue-demi": "^0.14.10",
|
|
121
|
-
"
|
|
122
|
-
"
|
|
121
|
+
"markstream-core": "1.0.3",
|
|
122
|
+
"stream-markdown-parser": "1.0.5"
|
|
123
123
|
},
|
|
124
124
|
"devDependencies": {
|
|
125
125
|
"@vitejs/plugin-vue2": "^2.3.4",
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("./workers-ac3ab4dd.cjs"),t=require("./lspLanguageFeatures-7b72a0c0.cjs"),r=require("./index.legacy-b598deaf.cjs");require("shiki");class o{constructor(e){this._defaults=e,this._worker=null,this._client=null,this._idleCheckInterval=window.setInterval(()=>this._checkIfIdle(),3e4),this._lastUsedTime=0,this._configChangeListener=this._defaults.onDidChange(()=>this._stopWorker())}_stopWorker(){this._worker&&(this._worker.dispose(),this._worker=null),this._client=null}dispose(){clearInterval(this._idleCheckInterval),this._configChangeListener.dispose(),this._stopWorker()}_checkIfIdle(){this._worker&&Date.now()-this._lastUsedTime>12e4&&this._stopWorker()}_getClient(){return this._lastUsedTime=Date.now(),this._client||(this._worker=e.createWebWorker({moduleId:"vs/language/css/cssWorker",createWorker:()=>new Worker(new URL("/workers/css.worker.js",self.location),{type:"module"}),label:this._defaults.languageId,createData:{options:this._defaults.options,languageId:this._defaults.languageId}}),this._client=this._worker.getProxy()),this._client}getLanguageServiceWorker(...e){let t;return this._getClient().then(e=>{t=e}).then(t=>{if(this._worker)return this._worker.withSyncedResources(e)}).then(e=>t)}}function n(e){return{dispose:()=>i(e)}}function i(e){for(;e.length;)e.pop().dispose()}exports.CompletionAdapter=t.CompletionAdapter,exports.DefinitionAdapter=t.DefinitionAdapter,exports.DiagnosticsAdapter=t.DiagnosticsAdapter,exports.DocumentColorAdapter=t.DocumentColorAdapter,exports.DocumentFormattingEditProvider=t.DocumentFormattingEditProvider,exports.DocumentHighlightAdapter=t.DocumentHighlightAdapter,exports.DocumentLinkAdapter=t.DocumentLinkAdapter,exports.DocumentRangeFormattingEditProvider=t.DocumentRangeFormattingEditProvider,exports.DocumentSymbolAdapter=t.DocumentSymbolAdapter,exports.FoldingRangeAdapter=t.FoldingRangeAdapter,exports.HoverAdapter=t.HoverAdapter,exports.ReferenceAdapter=t.ReferenceAdapter,exports.RenameAdapter=t.RenameAdapter,exports.SelectionRangeAdapter=t.SelectionRangeAdapter,exports.fromPosition=t.fromPosition,exports.fromRange=t.fromRange,exports.toRange=t.toRange,exports.toTextEdit=t.toTextEdit,exports.WorkerManager=o,exports.setupMode=function(e){const s=[],a=[],g=new o(e);s.push(g);const d=(...e)=>g.getLanguageServiceWorker(...e);return function(){const{languageId:o,modeConfiguration:n}=e;i(a),n.completionItems&&a.push(r.languages.registerCompletionItemProvider(o,new t.CompletionAdapter(d,["/","-",":"]))),n.hovers&&a.push(r.languages.registerHoverProvider(o,new t.HoverAdapter(d))),n.documentHighlights&&a.push(r.languages.registerDocumentHighlightProvider(o,new t.DocumentHighlightAdapter(d))),n.definitions&&a.push(r.languages.registerDefinitionProvider(o,new t.DefinitionAdapter(d))),n.references&&a.push(r.languages.registerReferenceProvider(o,new t.ReferenceAdapter(d))),n.documentSymbols&&a.push(r.languages.registerDocumentSymbolProvider(o,new t.DocumentSymbolAdapter(d))),n.rename&&a.push(r.languages.registerRenameProvider(o,new t.RenameAdapter(d))),n.colors&&a.push(r.languages.registerColorProvider(o,new t.DocumentColorAdapter(d))),n.foldingRanges&&a.push(r.languages.registerFoldingRangeProvider(o,new t.FoldingRangeAdapter(d))),n.diagnostics&&a.push(new t.DiagnosticsAdapter(o,d,e.onDidChange)),n.selectionRanges&&a.push(r.languages.registerSelectionRangeProvider(o,new t.SelectionRangeAdapter(d))),n.documentFormattingEdits&&a.push(r.languages.registerDocumentFormattingEditProvider(o,new t.DocumentFormattingEditProvider(d))),n.documentRangeFormattingEdits&&a.push(r.languages.registerDocumentRangeFormattingEditProvider(o,new t.DocumentRangeFormattingEditProvider(d)))}(),s.push(n(a)),n(s)};
|
|
@@ -1,206 +0,0 @@
|
|
|
1
|
-
import { c as createWebWorker } from "./workers-c9c93e2c.js";
|
|
2
|
-
import { C as CompletionAdapter, H as HoverAdapter, f as DocumentHighlightAdapter, e as DefinitionAdapter, R as ReferenceAdapter, b as DocumentSymbolAdapter, h as RenameAdapter, c as DocumentColorAdapter, F as FoldingRangeAdapter, d as DiagnosticsAdapter, S as SelectionRangeAdapter, D as DocumentFormattingEditProvider, a as DocumentRangeFormattingEditProvider } from "./lspLanguageFeatures-8d6ce48e.js";
|
|
3
|
-
import { g, i, j, t, k } from "./lspLanguageFeatures-8d6ce48e.js";
|
|
4
|
-
import { l as languages } from "./index.legacy-1f634d9d.js";
|
|
5
|
-
import "shiki";
|
|
6
|
-
const STOP_WHEN_IDLE_FOR = 2 * 60 * 1e3;
|
|
7
|
-
class WorkerManager {
|
|
8
|
-
constructor(defaults) {
|
|
9
|
-
this._defaults = defaults;
|
|
10
|
-
this._worker = null;
|
|
11
|
-
this._client = null;
|
|
12
|
-
this._idleCheckInterval = window.setInterval(() => this._checkIfIdle(), 30 * 1e3);
|
|
13
|
-
this._lastUsedTime = 0;
|
|
14
|
-
this._configChangeListener = this._defaults.onDidChange(() => this._stopWorker());
|
|
15
|
-
}
|
|
16
|
-
_stopWorker() {
|
|
17
|
-
if (this._worker) {
|
|
18
|
-
this._worker.dispose();
|
|
19
|
-
this._worker = null;
|
|
20
|
-
}
|
|
21
|
-
this._client = null;
|
|
22
|
-
}
|
|
23
|
-
dispose() {
|
|
24
|
-
clearInterval(this._idleCheckInterval);
|
|
25
|
-
this._configChangeListener.dispose();
|
|
26
|
-
this._stopWorker();
|
|
27
|
-
}
|
|
28
|
-
_checkIfIdle() {
|
|
29
|
-
if (!this._worker) {
|
|
30
|
-
return;
|
|
31
|
-
}
|
|
32
|
-
let timePassedSinceLastUsed = Date.now() - this._lastUsedTime;
|
|
33
|
-
if (timePassedSinceLastUsed > STOP_WHEN_IDLE_FOR) {
|
|
34
|
-
this._stopWorker();
|
|
35
|
-
}
|
|
36
|
-
}
|
|
37
|
-
_getClient() {
|
|
38
|
-
this._lastUsedTime = Date.now();
|
|
39
|
-
if (!this._client) {
|
|
40
|
-
this._worker = createWebWorker({
|
|
41
|
-
// module that exports the create() method and returns a `CSSWorker` instance
|
|
42
|
-
moduleId: "vs/language/css/cssWorker",
|
|
43
|
-
createWorker: () => new Worker(new URL("/workers/css.worker.js", self.location), { type: "module" }),
|
|
44
|
-
label: this._defaults.languageId,
|
|
45
|
-
// passed in to the create() method
|
|
46
|
-
createData: {
|
|
47
|
-
options: this._defaults.options,
|
|
48
|
-
languageId: this._defaults.languageId
|
|
49
|
-
}
|
|
50
|
-
});
|
|
51
|
-
this._client = this._worker.getProxy();
|
|
52
|
-
}
|
|
53
|
-
return this._client;
|
|
54
|
-
}
|
|
55
|
-
getLanguageServiceWorker(...resources) {
|
|
56
|
-
let _client;
|
|
57
|
-
return this._getClient().then((client) => {
|
|
58
|
-
_client = client;
|
|
59
|
-
}).then((_) => {
|
|
60
|
-
if (this._worker) {
|
|
61
|
-
return this._worker.withSyncedResources(resources);
|
|
62
|
-
}
|
|
63
|
-
}).then((_) => _client);
|
|
64
|
-
}
|
|
65
|
-
}
|
|
66
|
-
function setupMode(defaults) {
|
|
67
|
-
const disposables = [];
|
|
68
|
-
const providers = [];
|
|
69
|
-
const client = new WorkerManager(defaults);
|
|
70
|
-
disposables.push(client);
|
|
71
|
-
const worker = (...uris) => {
|
|
72
|
-
return client.getLanguageServiceWorker(...uris);
|
|
73
|
-
};
|
|
74
|
-
function registerProviders() {
|
|
75
|
-
const { languageId, modeConfiguration } = defaults;
|
|
76
|
-
disposeAll(providers);
|
|
77
|
-
if (modeConfiguration.completionItems) {
|
|
78
|
-
providers.push(
|
|
79
|
-
languages.registerCompletionItemProvider(
|
|
80
|
-
languageId,
|
|
81
|
-
new CompletionAdapter(worker, ["/", "-", ":"])
|
|
82
|
-
)
|
|
83
|
-
);
|
|
84
|
-
}
|
|
85
|
-
if (modeConfiguration.hovers) {
|
|
86
|
-
providers.push(
|
|
87
|
-
languages.registerHoverProvider(languageId, new HoverAdapter(worker))
|
|
88
|
-
);
|
|
89
|
-
}
|
|
90
|
-
if (modeConfiguration.documentHighlights) {
|
|
91
|
-
providers.push(
|
|
92
|
-
languages.registerDocumentHighlightProvider(
|
|
93
|
-
languageId,
|
|
94
|
-
new DocumentHighlightAdapter(worker)
|
|
95
|
-
)
|
|
96
|
-
);
|
|
97
|
-
}
|
|
98
|
-
if (modeConfiguration.definitions) {
|
|
99
|
-
providers.push(
|
|
100
|
-
languages.registerDefinitionProvider(
|
|
101
|
-
languageId,
|
|
102
|
-
new DefinitionAdapter(worker)
|
|
103
|
-
)
|
|
104
|
-
);
|
|
105
|
-
}
|
|
106
|
-
if (modeConfiguration.references) {
|
|
107
|
-
providers.push(
|
|
108
|
-
languages.registerReferenceProvider(
|
|
109
|
-
languageId,
|
|
110
|
-
new ReferenceAdapter(worker)
|
|
111
|
-
)
|
|
112
|
-
);
|
|
113
|
-
}
|
|
114
|
-
if (modeConfiguration.documentSymbols) {
|
|
115
|
-
providers.push(
|
|
116
|
-
languages.registerDocumentSymbolProvider(
|
|
117
|
-
languageId,
|
|
118
|
-
new DocumentSymbolAdapter(worker)
|
|
119
|
-
)
|
|
120
|
-
);
|
|
121
|
-
}
|
|
122
|
-
if (modeConfiguration.rename) {
|
|
123
|
-
providers.push(
|
|
124
|
-
languages.registerRenameProvider(languageId, new RenameAdapter(worker))
|
|
125
|
-
);
|
|
126
|
-
}
|
|
127
|
-
if (modeConfiguration.colors) {
|
|
128
|
-
providers.push(
|
|
129
|
-
languages.registerColorProvider(
|
|
130
|
-
languageId,
|
|
131
|
-
new DocumentColorAdapter(worker)
|
|
132
|
-
)
|
|
133
|
-
);
|
|
134
|
-
}
|
|
135
|
-
if (modeConfiguration.foldingRanges) {
|
|
136
|
-
providers.push(
|
|
137
|
-
languages.registerFoldingRangeProvider(
|
|
138
|
-
languageId,
|
|
139
|
-
new FoldingRangeAdapter(worker)
|
|
140
|
-
)
|
|
141
|
-
);
|
|
142
|
-
}
|
|
143
|
-
if (modeConfiguration.diagnostics) {
|
|
144
|
-
providers.push(
|
|
145
|
-
new DiagnosticsAdapter(languageId, worker, defaults.onDidChange)
|
|
146
|
-
);
|
|
147
|
-
}
|
|
148
|
-
if (modeConfiguration.selectionRanges) {
|
|
149
|
-
providers.push(
|
|
150
|
-
languages.registerSelectionRangeProvider(
|
|
151
|
-
languageId,
|
|
152
|
-
new SelectionRangeAdapter(worker)
|
|
153
|
-
)
|
|
154
|
-
);
|
|
155
|
-
}
|
|
156
|
-
if (modeConfiguration.documentFormattingEdits) {
|
|
157
|
-
providers.push(
|
|
158
|
-
languages.registerDocumentFormattingEditProvider(
|
|
159
|
-
languageId,
|
|
160
|
-
new DocumentFormattingEditProvider(worker)
|
|
161
|
-
)
|
|
162
|
-
);
|
|
163
|
-
}
|
|
164
|
-
if (modeConfiguration.documentRangeFormattingEdits) {
|
|
165
|
-
providers.push(
|
|
166
|
-
languages.registerDocumentRangeFormattingEditProvider(
|
|
167
|
-
languageId,
|
|
168
|
-
new DocumentRangeFormattingEditProvider(worker)
|
|
169
|
-
)
|
|
170
|
-
);
|
|
171
|
-
}
|
|
172
|
-
}
|
|
173
|
-
registerProviders();
|
|
174
|
-
disposables.push(asDisposable(providers));
|
|
175
|
-
return asDisposable(disposables);
|
|
176
|
-
}
|
|
177
|
-
function asDisposable(disposables) {
|
|
178
|
-
return { dispose: () => disposeAll(disposables) };
|
|
179
|
-
}
|
|
180
|
-
function disposeAll(disposables) {
|
|
181
|
-
while (disposables.length) {
|
|
182
|
-
disposables.pop().dispose();
|
|
183
|
-
}
|
|
184
|
-
}
|
|
185
|
-
export {
|
|
186
|
-
CompletionAdapter,
|
|
187
|
-
DefinitionAdapter,
|
|
188
|
-
DiagnosticsAdapter,
|
|
189
|
-
DocumentColorAdapter,
|
|
190
|
-
DocumentFormattingEditProvider,
|
|
191
|
-
DocumentHighlightAdapter,
|
|
192
|
-
g as DocumentLinkAdapter,
|
|
193
|
-
DocumentRangeFormattingEditProvider,
|
|
194
|
-
DocumentSymbolAdapter,
|
|
195
|
-
FoldingRangeAdapter,
|
|
196
|
-
HoverAdapter,
|
|
197
|
-
ReferenceAdapter,
|
|
198
|
-
RenameAdapter,
|
|
199
|
-
SelectionRangeAdapter,
|
|
200
|
-
WorkerManager,
|
|
201
|
-
i as fromPosition,
|
|
202
|
-
j as fromRange,
|
|
203
|
-
setupMode,
|
|
204
|
-
t as toRange,
|
|
205
|
-
k as toTextEdit
|
|
206
|
-
};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("./workers-ac3ab4dd.cjs"),t=require("./lspLanguageFeatures-7b72a0c0.cjs"),r=require("./index.legacy-b598deaf.cjs");require("shiki");class n{constructor(e){this._defaults=e,this._worker=null,this._client=null,this._idleCheckInterval=window.setInterval(()=>this._checkIfIdle(),3e4),this._lastUsedTime=0,this._configChangeListener=this._defaults.onDidChange(()=>this._stopWorker())}_stopWorker(){this._worker&&(this._worker.dispose(),this._worker=null),this._client=null}dispose(){clearInterval(this._idleCheckInterval),this._configChangeListener.dispose(),this._stopWorker()}_checkIfIdle(){this._worker&&Date.now()-this._lastUsedTime>12e4&&this._stopWorker()}_getClient(){return this._lastUsedTime=Date.now(),this._client||(this._worker=e.createWebWorker({moduleId:"vs/language/html/htmlWorker",createWorker:()=>new Worker(new URL("/workers/html.worker.js",self.location),{type:"module"}),createData:{languageSettings:this._defaults.options,languageId:this._defaults.languageId},label:this._defaults.languageId}),this._client=this._worker.getProxy()),this._client}getLanguageServiceWorker(...e){let t;return this._getClient().then(e=>{t=e}).then(t=>{if(this._worker)return this._worker.withSyncedResources(e)}).then(e=>t)}}class o extends t.CompletionAdapter{constructor(e){super(e,[".",":","<",'"',"=","/"])}}function i(e){return{dispose:()=>a(e)}}function a(e){for(;e.length;)e.pop().dispose()}exports.CompletionAdapter=t.CompletionAdapter,exports.DefinitionAdapter=t.DefinitionAdapter,exports.DiagnosticsAdapter=t.DiagnosticsAdapter,exports.DocumentColorAdapter=t.DocumentColorAdapter,exports.DocumentFormattingEditProvider=t.DocumentFormattingEditProvider,exports.DocumentHighlightAdapter=t.DocumentHighlightAdapter,exports.DocumentLinkAdapter=t.DocumentLinkAdapter,exports.DocumentRangeFormattingEditProvider=t.DocumentRangeFormattingEditProvider,exports.DocumentSymbolAdapter=t.DocumentSymbolAdapter,exports.FoldingRangeAdapter=t.FoldingRangeAdapter,exports.HoverAdapter=t.HoverAdapter,exports.ReferenceAdapter=t.ReferenceAdapter,exports.RenameAdapter=t.RenameAdapter,exports.SelectionRangeAdapter=t.SelectionRangeAdapter,exports.fromPosition=t.fromPosition,exports.fromRange=t.fromRange,exports.toRange=t.toRange,exports.toTextEdit=t.toTextEdit,exports.WorkerManager=n,exports.setupMode=function(e){const s=[],g=[],d=new n(e);s.push(d);const l=(...e)=>d.getLanguageServiceWorker(...e);return function(){const{languageId:n,modeConfiguration:i}=e;a(g),i.completionItems&&g.push(r.languages.registerCompletionItemProvider(n,new o(l))),i.hovers&&g.push(r.languages.registerHoverProvider(n,new t.HoverAdapter(l))),i.documentHighlights&&g.push(r.languages.registerDocumentHighlightProvider(n,new t.DocumentHighlightAdapter(l))),i.links&&g.push(r.languages.registerLinkProvider(n,new t.DocumentLinkAdapter(l))),i.documentSymbols&&g.push(r.languages.registerDocumentSymbolProvider(n,new t.DocumentSymbolAdapter(l))),i.rename&&g.push(r.languages.registerRenameProvider(n,new t.RenameAdapter(l))),i.foldingRanges&&g.push(r.languages.registerFoldingRangeProvider(n,new t.FoldingRangeAdapter(l))),i.selectionRanges&&g.push(r.languages.registerSelectionRangeProvider(n,new t.SelectionRangeAdapter(l))),i.documentFormattingEdits&&g.push(r.languages.registerDocumentFormattingEditProvider(n,new t.DocumentFormattingEditProvider(l))),i.documentRangeFormattingEdits&&g.push(r.languages.registerDocumentRangeFormattingEditProvider(n,new t.DocumentRangeFormattingEditProvider(l)))}(),s.push(i(g)),i(s)},exports.setupMode1=function(e){const i=new n(e),a=(...e)=>i.getLanguageServiceWorker(...e);let s=e.languageId;r.languages.registerCompletionItemProvider(s,new o(a)),r.languages.registerHoverProvider(s,new t.HoverAdapter(a)),r.languages.registerDocumentHighlightProvider(s,new t.DocumentHighlightAdapter(a)),r.languages.registerLinkProvider(s,new t.DocumentLinkAdapter(a)),r.languages.registerFoldingRangeProvider(s,new t.FoldingRangeAdapter(a)),r.languages.registerDocumentSymbolProvider(s,new t.DocumentSymbolAdapter(a)),r.languages.registerSelectionRangeProvider(s,new t.SelectionRangeAdapter(a)),r.languages.registerRenameProvider(s,new t.RenameAdapter(a)),"html"===s&&(r.languages.registerDocumentFormattingEditProvider(s,new t.DocumentFormattingEditProvider(a)),r.languages.registerDocumentRangeFormattingEditProvider(s,new t.DocumentRangeFormattingEditProvider(a)))};
|
|
@@ -1,222 +0,0 @@
|
|
|
1
|
-
import { c as createWebWorker } from "./workers-c9c93e2c.js";
|
|
2
|
-
import { H as HoverAdapter, f as DocumentHighlightAdapter, g as DocumentLinkAdapter, F as FoldingRangeAdapter, b as DocumentSymbolAdapter, S as SelectionRangeAdapter, h as RenameAdapter, D as DocumentFormattingEditProvider, a as DocumentRangeFormattingEditProvider, C as CompletionAdapter } from "./lspLanguageFeatures-8d6ce48e.js";
|
|
3
|
-
import { e, d, c, R, i, j, t, k } from "./lspLanguageFeatures-8d6ce48e.js";
|
|
4
|
-
import { l as languages } from "./index.legacy-1f634d9d.js";
|
|
5
|
-
import "shiki";
|
|
6
|
-
const STOP_WHEN_IDLE_FOR = 2 * 60 * 1e3;
|
|
7
|
-
class WorkerManager {
|
|
8
|
-
constructor(defaults) {
|
|
9
|
-
this._defaults = defaults;
|
|
10
|
-
this._worker = null;
|
|
11
|
-
this._client = null;
|
|
12
|
-
this._idleCheckInterval = window.setInterval(() => this._checkIfIdle(), 30 * 1e3);
|
|
13
|
-
this._lastUsedTime = 0;
|
|
14
|
-
this._configChangeListener = this._defaults.onDidChange(() => this._stopWorker());
|
|
15
|
-
}
|
|
16
|
-
_stopWorker() {
|
|
17
|
-
if (this._worker) {
|
|
18
|
-
this._worker.dispose();
|
|
19
|
-
this._worker = null;
|
|
20
|
-
}
|
|
21
|
-
this._client = null;
|
|
22
|
-
}
|
|
23
|
-
dispose() {
|
|
24
|
-
clearInterval(this._idleCheckInterval);
|
|
25
|
-
this._configChangeListener.dispose();
|
|
26
|
-
this._stopWorker();
|
|
27
|
-
}
|
|
28
|
-
_checkIfIdle() {
|
|
29
|
-
if (!this._worker) {
|
|
30
|
-
return;
|
|
31
|
-
}
|
|
32
|
-
let timePassedSinceLastUsed = Date.now() - this._lastUsedTime;
|
|
33
|
-
if (timePassedSinceLastUsed > STOP_WHEN_IDLE_FOR) {
|
|
34
|
-
this._stopWorker();
|
|
35
|
-
}
|
|
36
|
-
}
|
|
37
|
-
_getClient() {
|
|
38
|
-
this._lastUsedTime = Date.now();
|
|
39
|
-
if (!this._client) {
|
|
40
|
-
this._worker = createWebWorker({
|
|
41
|
-
// module that exports the create() method and returns a `HTMLWorker` instance
|
|
42
|
-
moduleId: "vs/language/html/htmlWorker",
|
|
43
|
-
createWorker: () => new Worker(new URL("/workers/html.worker.js", self.location), { type: "module" }),
|
|
44
|
-
// passed in to the create() method
|
|
45
|
-
createData: {
|
|
46
|
-
languageSettings: this._defaults.options,
|
|
47
|
-
languageId: this._defaults.languageId
|
|
48
|
-
},
|
|
49
|
-
label: this._defaults.languageId
|
|
50
|
-
});
|
|
51
|
-
this._client = this._worker.getProxy();
|
|
52
|
-
}
|
|
53
|
-
return this._client;
|
|
54
|
-
}
|
|
55
|
-
getLanguageServiceWorker(...resources) {
|
|
56
|
-
let _client;
|
|
57
|
-
return this._getClient().then((client) => {
|
|
58
|
-
_client = client;
|
|
59
|
-
}).then((_) => {
|
|
60
|
-
if (this._worker) {
|
|
61
|
-
return this._worker.withSyncedResources(resources);
|
|
62
|
-
}
|
|
63
|
-
}).then((_) => _client);
|
|
64
|
-
}
|
|
65
|
-
}
|
|
66
|
-
class HTMLCompletionAdapter extends CompletionAdapter {
|
|
67
|
-
constructor(worker) {
|
|
68
|
-
super(worker, [".", ":", "<", '"', "=", "/"]);
|
|
69
|
-
}
|
|
70
|
-
}
|
|
71
|
-
function setupMode1(defaults) {
|
|
72
|
-
const client = new WorkerManager(defaults);
|
|
73
|
-
const worker = (...uris) => {
|
|
74
|
-
return client.getLanguageServiceWorker(...uris);
|
|
75
|
-
};
|
|
76
|
-
let languageId = defaults.languageId;
|
|
77
|
-
languages.registerCompletionItemProvider(languageId, new HTMLCompletionAdapter(worker));
|
|
78
|
-
languages.registerHoverProvider(languageId, new HoverAdapter(worker));
|
|
79
|
-
languages.registerDocumentHighlightProvider(
|
|
80
|
-
languageId,
|
|
81
|
-
new DocumentHighlightAdapter(worker)
|
|
82
|
-
);
|
|
83
|
-
languages.registerLinkProvider(languageId, new DocumentLinkAdapter(worker));
|
|
84
|
-
languages.registerFoldingRangeProvider(
|
|
85
|
-
languageId,
|
|
86
|
-
new FoldingRangeAdapter(worker)
|
|
87
|
-
);
|
|
88
|
-
languages.registerDocumentSymbolProvider(
|
|
89
|
-
languageId,
|
|
90
|
-
new DocumentSymbolAdapter(worker)
|
|
91
|
-
);
|
|
92
|
-
languages.registerSelectionRangeProvider(
|
|
93
|
-
languageId,
|
|
94
|
-
new SelectionRangeAdapter(worker)
|
|
95
|
-
);
|
|
96
|
-
languages.registerRenameProvider(languageId, new RenameAdapter(worker));
|
|
97
|
-
if (languageId === "html") {
|
|
98
|
-
languages.registerDocumentFormattingEditProvider(
|
|
99
|
-
languageId,
|
|
100
|
-
new DocumentFormattingEditProvider(worker)
|
|
101
|
-
);
|
|
102
|
-
languages.registerDocumentRangeFormattingEditProvider(
|
|
103
|
-
languageId,
|
|
104
|
-
new DocumentRangeFormattingEditProvider(worker)
|
|
105
|
-
);
|
|
106
|
-
}
|
|
107
|
-
}
|
|
108
|
-
function setupMode(defaults) {
|
|
109
|
-
const disposables = [];
|
|
110
|
-
const providers = [];
|
|
111
|
-
const client = new WorkerManager(defaults);
|
|
112
|
-
disposables.push(client);
|
|
113
|
-
const worker = (...uris) => {
|
|
114
|
-
return client.getLanguageServiceWorker(...uris);
|
|
115
|
-
};
|
|
116
|
-
function registerProviders() {
|
|
117
|
-
const { languageId, modeConfiguration } = defaults;
|
|
118
|
-
disposeAll(providers);
|
|
119
|
-
if (modeConfiguration.completionItems) {
|
|
120
|
-
providers.push(
|
|
121
|
-
languages.registerCompletionItemProvider(languageId, new HTMLCompletionAdapter(worker))
|
|
122
|
-
);
|
|
123
|
-
}
|
|
124
|
-
if (modeConfiguration.hovers) {
|
|
125
|
-
providers.push(
|
|
126
|
-
languages.registerHoverProvider(languageId, new HoverAdapter(worker))
|
|
127
|
-
);
|
|
128
|
-
}
|
|
129
|
-
if (modeConfiguration.documentHighlights) {
|
|
130
|
-
providers.push(
|
|
131
|
-
languages.registerDocumentHighlightProvider(
|
|
132
|
-
languageId,
|
|
133
|
-
new DocumentHighlightAdapter(worker)
|
|
134
|
-
)
|
|
135
|
-
);
|
|
136
|
-
}
|
|
137
|
-
if (modeConfiguration.links) {
|
|
138
|
-
providers.push(
|
|
139
|
-
languages.registerLinkProvider(languageId, new DocumentLinkAdapter(worker))
|
|
140
|
-
);
|
|
141
|
-
}
|
|
142
|
-
if (modeConfiguration.documentSymbols) {
|
|
143
|
-
providers.push(
|
|
144
|
-
languages.registerDocumentSymbolProvider(
|
|
145
|
-
languageId,
|
|
146
|
-
new DocumentSymbolAdapter(worker)
|
|
147
|
-
)
|
|
148
|
-
);
|
|
149
|
-
}
|
|
150
|
-
if (modeConfiguration.rename) {
|
|
151
|
-
providers.push(
|
|
152
|
-
languages.registerRenameProvider(languageId, new RenameAdapter(worker))
|
|
153
|
-
);
|
|
154
|
-
}
|
|
155
|
-
if (modeConfiguration.foldingRanges) {
|
|
156
|
-
providers.push(
|
|
157
|
-
languages.registerFoldingRangeProvider(
|
|
158
|
-
languageId,
|
|
159
|
-
new FoldingRangeAdapter(worker)
|
|
160
|
-
)
|
|
161
|
-
);
|
|
162
|
-
}
|
|
163
|
-
if (modeConfiguration.selectionRanges) {
|
|
164
|
-
providers.push(
|
|
165
|
-
languages.registerSelectionRangeProvider(
|
|
166
|
-
languageId,
|
|
167
|
-
new SelectionRangeAdapter(worker)
|
|
168
|
-
)
|
|
169
|
-
);
|
|
170
|
-
}
|
|
171
|
-
if (modeConfiguration.documentFormattingEdits) {
|
|
172
|
-
providers.push(
|
|
173
|
-
languages.registerDocumentFormattingEditProvider(
|
|
174
|
-
languageId,
|
|
175
|
-
new DocumentFormattingEditProvider(worker)
|
|
176
|
-
)
|
|
177
|
-
);
|
|
178
|
-
}
|
|
179
|
-
if (modeConfiguration.documentRangeFormattingEdits) {
|
|
180
|
-
providers.push(
|
|
181
|
-
languages.registerDocumentRangeFormattingEditProvider(
|
|
182
|
-
languageId,
|
|
183
|
-
new DocumentRangeFormattingEditProvider(worker)
|
|
184
|
-
)
|
|
185
|
-
);
|
|
186
|
-
}
|
|
187
|
-
}
|
|
188
|
-
registerProviders();
|
|
189
|
-
disposables.push(asDisposable(providers));
|
|
190
|
-
return asDisposable(disposables);
|
|
191
|
-
}
|
|
192
|
-
function asDisposable(disposables) {
|
|
193
|
-
return { dispose: () => disposeAll(disposables) };
|
|
194
|
-
}
|
|
195
|
-
function disposeAll(disposables) {
|
|
196
|
-
while (disposables.length) {
|
|
197
|
-
disposables.pop().dispose();
|
|
198
|
-
}
|
|
199
|
-
}
|
|
200
|
-
export {
|
|
201
|
-
CompletionAdapter,
|
|
202
|
-
e as DefinitionAdapter,
|
|
203
|
-
d as DiagnosticsAdapter,
|
|
204
|
-
c as DocumentColorAdapter,
|
|
205
|
-
DocumentFormattingEditProvider,
|
|
206
|
-
DocumentHighlightAdapter,
|
|
207
|
-
DocumentLinkAdapter,
|
|
208
|
-
DocumentRangeFormattingEditProvider,
|
|
209
|
-
DocumentSymbolAdapter,
|
|
210
|
-
FoldingRangeAdapter,
|
|
211
|
-
HoverAdapter,
|
|
212
|
-
R as ReferenceAdapter,
|
|
213
|
-
RenameAdapter,
|
|
214
|
-
SelectionRangeAdapter,
|
|
215
|
-
WorkerManager,
|
|
216
|
-
i as fromPosition,
|
|
217
|
-
j as fromRange,
|
|
218
|
-
setupMode,
|
|
219
|
-
setupMode1,
|
|
220
|
-
t as toRange,
|
|
221
|
-
k as toTextEdit
|
|
222
|
-
};
|