@inspectr/ui 1.8.0 → 1.8.2

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.
Files changed (90) hide show
  1. package/dist/abap-Bs8kvjsq.js +1398 -0
  2. package/dist/apex-Dspwrl5m.js +326 -0
  3. package/dist/azcli-k1BiOau1.js +68 -0
  4. package/dist/bat-BIP72KWc.js +100 -0
  5. package/dist/bicep-VhQeYhS3.js +102 -0
  6. package/dist/cameligo-DnuAXtHg.js +174 -0
  7. package/dist/clojure-BAuDPsal.js +761 -0
  8. package/dist/coffee-BV06qSnj.js +232 -0
  9. package/dist/cpp-Cz8Jeyrf.js +389 -0
  10. package/dist/csharp-F6hhlXFb.js +326 -0
  11. package/dist/csp-KzlEHCyI.js +53 -0
  12. package/dist/css-e4FKntZ3.js +187 -0
  13. package/dist/cssMode-CCxwJWiv.js +1571 -0
  14. package/dist/cypher-CpvDGKRr.js +263 -0
  15. package/dist/dart-DdHeFWR0.js +281 -0
  16. package/dist/dockerfile-aoNXDcio.js +130 -0
  17. package/dist/ecl-C4Q0DYuA.js +456 -0
  18. package/dist/editor.main-CP-oXbVe.js +110802 -0
  19. package/dist/elixir-C9X42b0T.js +569 -0
  20. package/dist/flow9-Bff42pfB.js +142 -0
  21. package/dist/freemarker2-BZveqxNO.js +989 -0
  22. package/dist/fsharp-C6vPAsHG.js +217 -0
  23. package/dist/go-DEr8zx9f.js +218 -0
  24. package/dist/graphql-BiNBBRFh.js +151 -0
  25. package/dist/handlebars-DFLvXTZ8.js +419 -0
  26. package/dist/hcl-2T9lKuFg.js +183 -0
  27. package/dist/html-DxXqfwFE.js +308 -0
  28. package/dist/htmlMode-C9gIo-LK.js +1581 -0
  29. package/dist/ini-CZGtssYM.js +71 -0
  30. package/dist/inspectr-ui.es.js +14597 -14415
  31. package/dist/inspectr-ui.umd.js +1180 -125
  32. package/dist/java-B260NeH3.js +232 -0
  33. package/dist/javascript-CYYD6pGr.js +70 -0
  34. package/dist/jsonMode-jVbIoPc6.js +1996 -0
  35. package/dist/julia-kuNLM9c5.js +511 -0
  36. package/dist/kotlin-Bz6kAefA.js +253 -0
  37. package/dist/less-AZUtS89I.js +162 -0
  38. package/dist/lexon-BcmgnyRb.js +157 -0
  39. package/dist/liquid-PYsubg5u.js +240 -0
  40. package/dist/lua-Dz1RbATg.js +162 -0
  41. package/dist/m3-CIMooLFn.js +210 -0
  42. package/dist/markdown-C1BsCK9P.js +229 -0
  43. package/dist/mdx-DRJsmowz.js +165 -0
  44. package/dist/mips-BovsnfLQ.js +198 -0
  45. package/dist/msdax-CiRB2ZB-.js +375 -0
  46. package/dist/mysql-BwdpPE19.js +878 -0
  47. package/dist/objective-c-D4nfHfso.js +183 -0
  48. package/dist/pascal--j5-PYtz.js +251 -0
  49. package/dist/pascaligo-C7TcJxNL.js +164 -0
  50. package/dist/perl-BzEWqUb5.js +626 -0
  51. package/dist/pgsql-B_KZ0mGX.js +851 -0
  52. package/dist/php-A19QHzQV.js +500 -0
  53. package/dist/pla-COeKY1hA.js +137 -0
  54. package/dist/postiats-BfMp7zJL.js +907 -0
  55. package/dist/powerquery-B0TS_5Gb.js +890 -0
  56. package/dist/powershell-5jSbKdYB.js +239 -0
  57. package/dist/protobuf-YgnOutn3.js +420 -0
  58. package/dist/pug-DLej6kn5.js +402 -0
  59. package/dist/python-M8MItOfu.js +301 -0
  60. package/dist/qsharp-AhjqtSHB.js +301 -0
  61. package/dist/r-D-F4P80w.js +243 -0
  62. package/dist/razor-CkROrZip.js +550 -0
  63. package/dist/redis-hwwIlMnV.js +302 -0
  64. package/dist/redshift-Bcm_kjEG.js +809 -0
  65. package/dist/restructuredtext-CrdzfPP-.js +174 -0
  66. package/dist/ruby-QC2UNm1s.js +511 -0
  67. package/dist/rust-5aqiQ3L5.js +343 -0
  68. package/dist/sb-B1g1ZfLJ.js +115 -0
  69. package/dist/scala-C2U4R5Gb.js +370 -0
  70. package/dist/scheme-DeFRbslr.js +108 -0
  71. package/dist/scss-RSTCiCmI.js +262 -0
  72. package/dist/shell-BpF-iNu8.js +221 -0
  73. package/dist/solidity-C00r2mbQ.js +1367 -0
  74. package/dist/sophia-DVW5ZKDB.js +199 -0
  75. package/dist/sparql-B0nmpxeX.js +201 -0
  76. package/dist/sql-CJwKPERn.js +853 -0
  77. package/dist/st-DPlKG5DT.js +416 -0
  78. package/dist/swift-YZBAbVHV.js +309 -0
  79. package/dist/systemverilog-CDQSaH63.js +576 -0
  80. package/dist/tcl-Dlu8sp6Q.js +232 -0
  81. package/dist/tsMode-D1me_v4f.js +886 -0
  82. package/dist/twig-C5TO7-kw.js +392 -0
  83. package/dist/typescript-D8U3Pc3R.js +343 -0
  84. package/dist/typespec-BsmjDEu7.js +117 -0
  85. package/dist/ui.css +1 -1
  86. package/dist/vb-ChHvIDrk.js +372 -0
  87. package/dist/wgsl-XEp1ju8c.js +439 -0
  88. package/dist/xml-CTIvZv70.js +95 -0
  89. package/dist/yaml-BgbINe9U.js +206 -0
  90. package/package.json +3 -1
@@ -0,0 +1,886 @@
1
+ import { t as O, m as I } from "./editor.main-CP-oXbVe.js";
2
+ var N = Object.defineProperty, M = Object.getOwnPropertyDescriptor, R = Object.getOwnPropertyNames, K = Object.prototype.hasOwnProperty, E = (e, t, i, o) => {
3
+ if (t && typeof t == "object" || typeof t == "function")
4
+ for (let n of R(t))
5
+ !K.call(e, n) && n !== i && N(e, n, { get: () => t[n], enumerable: !(o = M(t, n)) || o.enumerable });
6
+ return e;
7
+ }, H = (e, t, i) => (E(e, t, "default"), i), a = {};
8
+ H(a, I);
9
+ var V = class {
10
+ constructor(e, t) {
11
+ 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(
12
+ () => this._updateExtraLibs()
13
+ );
14
+ }
15
+ dispose() {
16
+ this._configChangeListener.dispose(), this._extraLibsChangeListener.dispose(), this._stopWorker();
17
+ }
18
+ _stopWorker() {
19
+ this._worker && (this._worker.dispose(), this._worker = null), this._client = null;
20
+ }
21
+ async _updateExtraLibs() {
22
+ if (!this._worker)
23
+ return;
24
+ const e = ++this._updateExtraLibsToken, t = await this._worker.getProxy();
25
+ this._updateExtraLibsToken === e && t.updateExtraLibs(this._defaults.getExtraLibs());
26
+ }
27
+ _getClient() {
28
+ return this._client || (this._client = (async () => (this._worker = a.editor.createWebWorker({
29
+ // module that exports the create() method and returns a `TypeScriptWorker` instance
30
+ moduleId: "vs/language/typescript/tsWorker",
31
+ label: this._modeId,
32
+ keepIdleModels: !0,
33
+ // passed in to the create() method
34
+ createData: {
35
+ compilerOptions: this._defaults.getCompilerOptions(),
36
+ extraLibs: this._defaults.getExtraLibs(),
37
+ customWorkerPath: this._defaults.workerOptions.customWorkerPath,
38
+ inlayHintsOptions: this._defaults.inlayHintsOptions
39
+ }
40
+ }), this._defaults.getEagerModelSync() ? await this._worker.withSyncedResources(
41
+ a.editor.getModels().filter((e) => e.getLanguageId() === this._modeId).map((e) => e.uri)
42
+ ) : await this._worker.getProxy()))()), this._client;
43
+ }
44
+ async getLanguageServiceWorker(...e) {
45
+ const t = await this._getClient();
46
+ return this._worker && await this._worker.withSyncedResources(e), t;
47
+ }
48
+ }, r = {};
49
+ r["lib.d.ts"] = !0;
50
+ r["lib.decorators.d.ts"] = !0;
51
+ r["lib.decorators.legacy.d.ts"] = !0;
52
+ r["lib.dom.asynciterable.d.ts"] = !0;
53
+ r["lib.dom.d.ts"] = !0;
54
+ r["lib.dom.iterable.d.ts"] = !0;
55
+ r["lib.es2015.collection.d.ts"] = !0;
56
+ r["lib.es2015.core.d.ts"] = !0;
57
+ r["lib.es2015.d.ts"] = !0;
58
+ r["lib.es2015.generator.d.ts"] = !0;
59
+ r["lib.es2015.iterable.d.ts"] = !0;
60
+ r["lib.es2015.promise.d.ts"] = !0;
61
+ r["lib.es2015.proxy.d.ts"] = !0;
62
+ r["lib.es2015.reflect.d.ts"] = !0;
63
+ r["lib.es2015.symbol.d.ts"] = !0;
64
+ r["lib.es2015.symbol.wellknown.d.ts"] = !0;
65
+ r["lib.es2016.array.include.d.ts"] = !0;
66
+ r["lib.es2016.d.ts"] = !0;
67
+ r["lib.es2016.full.d.ts"] = !0;
68
+ r["lib.es2016.intl.d.ts"] = !0;
69
+ r["lib.es2017.d.ts"] = !0;
70
+ r["lib.es2017.date.d.ts"] = !0;
71
+ r["lib.es2017.full.d.ts"] = !0;
72
+ r["lib.es2017.intl.d.ts"] = !0;
73
+ r["lib.es2017.object.d.ts"] = !0;
74
+ r["lib.es2017.sharedmemory.d.ts"] = !0;
75
+ r["lib.es2017.string.d.ts"] = !0;
76
+ r["lib.es2017.typedarrays.d.ts"] = !0;
77
+ r["lib.es2018.asyncgenerator.d.ts"] = !0;
78
+ r["lib.es2018.asynciterable.d.ts"] = !0;
79
+ r["lib.es2018.d.ts"] = !0;
80
+ r["lib.es2018.full.d.ts"] = !0;
81
+ r["lib.es2018.intl.d.ts"] = !0;
82
+ r["lib.es2018.promise.d.ts"] = !0;
83
+ r["lib.es2018.regexp.d.ts"] = !0;
84
+ r["lib.es2019.array.d.ts"] = !0;
85
+ r["lib.es2019.d.ts"] = !0;
86
+ r["lib.es2019.full.d.ts"] = !0;
87
+ r["lib.es2019.intl.d.ts"] = !0;
88
+ r["lib.es2019.object.d.ts"] = !0;
89
+ r["lib.es2019.string.d.ts"] = !0;
90
+ r["lib.es2019.symbol.d.ts"] = !0;
91
+ r["lib.es2020.bigint.d.ts"] = !0;
92
+ r["lib.es2020.d.ts"] = !0;
93
+ r["lib.es2020.date.d.ts"] = !0;
94
+ r["lib.es2020.full.d.ts"] = !0;
95
+ r["lib.es2020.intl.d.ts"] = !0;
96
+ r["lib.es2020.number.d.ts"] = !0;
97
+ r["lib.es2020.promise.d.ts"] = !0;
98
+ r["lib.es2020.sharedmemory.d.ts"] = !0;
99
+ r["lib.es2020.string.d.ts"] = !0;
100
+ r["lib.es2020.symbol.wellknown.d.ts"] = !0;
101
+ r["lib.es2021.d.ts"] = !0;
102
+ r["lib.es2021.full.d.ts"] = !0;
103
+ r["lib.es2021.intl.d.ts"] = !0;
104
+ r["lib.es2021.promise.d.ts"] = !0;
105
+ r["lib.es2021.string.d.ts"] = !0;
106
+ r["lib.es2021.weakref.d.ts"] = !0;
107
+ r["lib.es2022.array.d.ts"] = !0;
108
+ r["lib.es2022.d.ts"] = !0;
109
+ r["lib.es2022.error.d.ts"] = !0;
110
+ r["lib.es2022.full.d.ts"] = !0;
111
+ r["lib.es2022.intl.d.ts"] = !0;
112
+ r["lib.es2022.object.d.ts"] = !0;
113
+ r["lib.es2022.regexp.d.ts"] = !0;
114
+ r["lib.es2022.sharedmemory.d.ts"] = !0;
115
+ r["lib.es2022.string.d.ts"] = !0;
116
+ r["lib.es2023.array.d.ts"] = !0;
117
+ r["lib.es2023.collection.d.ts"] = !0;
118
+ r["lib.es2023.d.ts"] = !0;
119
+ r["lib.es2023.full.d.ts"] = !0;
120
+ r["lib.es5.d.ts"] = !0;
121
+ r["lib.es6.d.ts"] = !0;
122
+ r["lib.esnext.collection.d.ts"] = !0;
123
+ r["lib.esnext.d.ts"] = !0;
124
+ r["lib.esnext.decorators.d.ts"] = !0;
125
+ r["lib.esnext.disposable.d.ts"] = !0;
126
+ r["lib.esnext.full.d.ts"] = !0;
127
+ r["lib.esnext.intl.d.ts"] = !0;
128
+ r["lib.esnext.object.d.ts"] = !0;
129
+ r["lib.esnext.promise.d.ts"] = !0;
130
+ r["lib.scripthost.d.ts"] = !0;
131
+ r["lib.webworker.asynciterable.d.ts"] = !0;
132
+ r["lib.webworker.d.ts"] = !0;
133
+ r["lib.webworker.importscripts.d.ts"] = !0;
134
+ r["lib.webworker.iterable.d.ts"] = !0;
135
+ function D(e, t, i = 0) {
136
+ if (typeof e == "string")
137
+ return e;
138
+ if (e === void 0)
139
+ return "";
140
+ let o = "";
141
+ if (i) {
142
+ o += t;
143
+ for (let n = 0; n < i; n++)
144
+ o += " ";
145
+ }
146
+ if (o += e.messageText, i++, e.next)
147
+ for (const n of e.next)
148
+ o += D(n, t, i);
149
+ return o;
150
+ }
151
+ function w(e) {
152
+ return e ? e.map((t) => t.text).join("") : "";
153
+ }
154
+ var _ = class {
155
+ constructor(e) {
156
+ this._worker = e;
157
+ }
158
+ // protected _positionToOffset(model: editor.ITextModel, position: monaco.IPosition): number {
159
+ // return model.getOffsetAt(position);
160
+ // }
161
+ // protected _offsetToPosition(model: editor.ITextModel, offset: number): monaco.IPosition {
162
+ // return model.getPositionAt(offset);
163
+ // }
164
+ _textSpanToRange(e, t) {
165
+ let i = e.getPositionAt(t.start), o = e.getPositionAt(t.start + t.length), { lineNumber: n, column: c } = i, { lineNumber: u, column: s } = o;
166
+ return { startLineNumber: n, startColumn: c, endLineNumber: u, endColumn: s };
167
+ }
168
+ }, W = class {
169
+ constructor(e) {
170
+ this._worker = e, this._libFiles = {}, this._hasFetchedLibFiles = !1, this._fetchLibFilesPromise = null;
171
+ }
172
+ isLibFile(e) {
173
+ return e && e.path.indexOf("/lib.") === 0 ? !!r[e.path.slice(1)] : !1;
174
+ }
175
+ getOrCreateModel(e) {
176
+ const t = a.Uri.parse(e), i = a.editor.getModel(t);
177
+ if (i)
178
+ return i;
179
+ if (this.isLibFile(t) && this._hasFetchedLibFiles)
180
+ return a.editor.createModel(this._libFiles[t.path.slice(1)], "typescript", t);
181
+ const o = O.getExtraLibs()[e];
182
+ return o ? a.editor.createModel(o.content, "typescript", t) : null;
183
+ }
184
+ _containsLibFile(e) {
185
+ for (let t of e)
186
+ if (this.isLibFile(t))
187
+ return !0;
188
+ return !1;
189
+ }
190
+ async fetchLibFilesIfNecessary(e) {
191
+ this._containsLibFile(e) && await this._fetchLibFiles();
192
+ }
193
+ _fetchLibFiles() {
194
+ return this._fetchLibFilesPromise || (this._fetchLibFilesPromise = this._worker().then((e) => e.getLibFiles()).then((e) => {
195
+ this._hasFetchedLibFiles = !0, this._libFiles = e;
196
+ })), this._fetchLibFilesPromise;
197
+ }
198
+ }, j = class extends _ {
199
+ constructor(e, t, i, o) {
200
+ super(o), this._libFiles = e, this._defaults = t, this._selector = i, this._disposables = [], this._listener = /* @__PURE__ */ Object.create(null);
201
+ const n = (s) => {
202
+ if (s.getLanguageId() !== i)
203
+ return;
204
+ const l = () => {
205
+ const { onlyVisible: h } = this._defaults.getDiagnosticsOptions();
206
+ h ? s.isAttachedToEditor() && this._doValidate(s) : this._doValidate(s);
207
+ };
208
+ let g;
209
+ const d = s.onDidChangeContent(() => {
210
+ clearTimeout(g), g = window.setTimeout(l, 500);
211
+ }), b = s.onDidChangeAttached(() => {
212
+ const { onlyVisible: h } = this._defaults.getDiagnosticsOptions();
213
+ h && (s.isAttachedToEditor() ? l() : a.editor.setModelMarkers(s, this._selector, []));
214
+ });
215
+ this._listener[s.uri.toString()] = {
216
+ dispose() {
217
+ d.dispose(), b.dispose(), clearTimeout(g);
218
+ }
219
+ }, l();
220
+ }, c = (s) => {
221
+ a.editor.setModelMarkers(s, this._selector, []);
222
+ const l = s.uri.toString();
223
+ this._listener[l] && (this._listener[l].dispose(), delete this._listener[l]);
224
+ };
225
+ this._disposables.push(
226
+ a.editor.onDidCreateModel((s) => n(s))
227
+ ), this._disposables.push(a.editor.onWillDisposeModel(c)), this._disposables.push(
228
+ a.editor.onDidChangeModelLanguage((s) => {
229
+ c(s.model), n(s.model);
230
+ })
231
+ ), this._disposables.push({
232
+ dispose() {
233
+ for (const s of a.editor.getModels())
234
+ c(s);
235
+ }
236
+ });
237
+ const u = () => {
238
+ for (const s of a.editor.getModels())
239
+ c(s), n(s);
240
+ };
241
+ this._disposables.push(this._defaults.onDidChange(u)), this._disposables.push(this._defaults.onDidExtraLibsChange(u)), a.editor.getModels().forEach((s) => n(s));
242
+ }
243
+ dispose() {
244
+ this._disposables.forEach((e) => e && e.dispose()), this._disposables = [];
245
+ }
246
+ async _doValidate(e) {
247
+ const t = await this._worker(e.uri);
248
+ if (e.isDisposed())
249
+ return;
250
+ const i = [], { noSyntaxValidation: o, noSemanticValidation: n, noSuggestionDiagnostics: c } = this._defaults.getDiagnosticsOptions();
251
+ o || i.push(t.getSyntacticDiagnostics(e.uri.toString())), n || i.push(t.getSemanticDiagnostics(e.uri.toString())), c || i.push(t.getSuggestionDiagnostics(e.uri.toString()));
252
+ const u = await Promise.all(i);
253
+ if (!u || e.isDisposed())
254
+ return;
255
+ const s = u.reduce((g, d) => d.concat(g), []).filter(
256
+ (g) => (this._defaults.getDiagnosticsOptions().diagnosticCodesToIgnore || []).indexOf(g.code) === -1
257
+ ), l = s.map((g) => g.relatedInformation || []).reduce((g, d) => d.concat(g), []).map(
258
+ (g) => g.file ? a.Uri.parse(g.file.fileName) : null
259
+ );
260
+ await this._libFiles.fetchLibFilesIfNecessary(l), !e.isDisposed() && a.editor.setModelMarkers(
261
+ e,
262
+ this._selector,
263
+ s.map((g) => this._convertDiagnostics(e, g))
264
+ );
265
+ }
266
+ _convertDiagnostics(e, t) {
267
+ const i = t.start || 0, o = t.length || 1, { lineNumber: n, column: c } = e.getPositionAt(i), { lineNumber: u, column: s } = e.getPositionAt(
268
+ i + o
269
+ ), l = [];
270
+ return t.reportsUnnecessary && l.push(a.MarkerTag.Unnecessary), t.reportsDeprecated && l.push(a.MarkerTag.Deprecated), {
271
+ severity: this._tsDiagnosticCategoryToMarkerSeverity(t.category),
272
+ startLineNumber: n,
273
+ startColumn: c,
274
+ endLineNumber: u,
275
+ endColumn: s,
276
+ message: D(t.messageText, `
277
+ `),
278
+ code: t.code.toString(),
279
+ tags: l,
280
+ relatedInformation: this._convertRelatedInformation(e, t.relatedInformation)
281
+ };
282
+ }
283
+ _convertRelatedInformation(e, t) {
284
+ if (!t)
285
+ return [];
286
+ const i = [];
287
+ return t.forEach((o) => {
288
+ let n = e;
289
+ if (o.file && (n = this._libFiles.getOrCreateModel(o.file.fileName)), !n)
290
+ return;
291
+ const c = o.start || 0, u = o.length || 1, { lineNumber: s, column: l } = n.getPositionAt(c), { lineNumber: g, column: d } = n.getPositionAt(
292
+ c + u
293
+ );
294
+ i.push({
295
+ resource: n.uri,
296
+ startLineNumber: s,
297
+ startColumn: l,
298
+ endLineNumber: g,
299
+ endColumn: d,
300
+ message: D(o.messageText, `
301
+ `)
302
+ });
303
+ }), i;
304
+ }
305
+ _tsDiagnosticCategoryToMarkerSeverity(e) {
306
+ switch (e) {
307
+ case 1:
308
+ return a.MarkerSeverity.Error;
309
+ case 3:
310
+ return a.MarkerSeverity.Info;
311
+ case 0:
312
+ return a.MarkerSeverity.Warning;
313
+ case 2:
314
+ return a.MarkerSeverity.Hint;
315
+ }
316
+ return a.MarkerSeverity.Info;
317
+ }
318
+ }, B = class C extends _ {
319
+ get triggerCharacters() {
320
+ return ["."];
321
+ }
322
+ async provideCompletionItems(t, i, o, n) {
323
+ const c = t.getWordUntilPosition(i), u = new a.Range(
324
+ i.lineNumber,
325
+ c.startColumn,
326
+ i.lineNumber,
327
+ c.endColumn
328
+ ), s = t.uri, l = t.getOffsetAt(i), g = await this._worker(s);
329
+ if (t.isDisposed())
330
+ return;
331
+ const d = await g.getCompletionsAtPosition(s.toString(), l);
332
+ return !d || t.isDisposed() ? void 0 : {
333
+ suggestions: d.entries.map((h) => {
334
+ let y = u;
335
+ if (h.replacementSpan) {
336
+ const S = t.getPositionAt(h.replacementSpan.start), x = t.getPositionAt(h.replacementSpan.start + h.replacementSpan.length);
337
+ y = new a.Range(S.lineNumber, S.column, x.lineNumber, x.column);
338
+ }
339
+ const v = [];
340
+ return h.kindModifiers !== void 0 && h.kindModifiers.indexOf("deprecated") !== -1 && v.push(a.languages.CompletionItemTag.Deprecated), {
341
+ uri: s,
342
+ position: i,
343
+ offset: l,
344
+ range: y,
345
+ label: h.name,
346
+ insertText: h.name,
347
+ sortText: h.sortText,
348
+ kind: C.convertKind(h.kind),
349
+ tags: v
350
+ };
351
+ })
352
+ };
353
+ }
354
+ async resolveCompletionItem(t, i) {
355
+ const o = t, n = o.uri, c = o.position, u = o.offset, l = await (await this._worker(n)).getCompletionEntryDetails(
356
+ n.toString(),
357
+ u,
358
+ o.label
359
+ );
360
+ return l ? {
361
+ uri: n,
362
+ position: c,
363
+ label: l.name,
364
+ kind: C.convertKind(l.kind),
365
+ detail: w(l.displayParts),
366
+ documentation: {
367
+ value: C.createDocumentationString(l)
368
+ }
369
+ } : o;
370
+ }
371
+ static convertKind(t) {
372
+ switch (t) {
373
+ case f.primitiveType:
374
+ case f.keyword:
375
+ return a.languages.CompletionItemKind.Keyword;
376
+ case f.variable:
377
+ case f.localVariable:
378
+ return a.languages.CompletionItemKind.Variable;
379
+ case f.memberVariable:
380
+ case f.memberGetAccessor:
381
+ case f.memberSetAccessor:
382
+ return a.languages.CompletionItemKind.Field;
383
+ case f.function:
384
+ case f.memberFunction:
385
+ case f.constructSignature:
386
+ case f.callSignature:
387
+ case f.indexSignature:
388
+ return a.languages.CompletionItemKind.Function;
389
+ case f.enum:
390
+ return a.languages.CompletionItemKind.Enum;
391
+ case f.module:
392
+ return a.languages.CompletionItemKind.Module;
393
+ case f.class:
394
+ return a.languages.CompletionItemKind.Class;
395
+ case f.interface:
396
+ return a.languages.CompletionItemKind.Interface;
397
+ case f.warning:
398
+ return a.languages.CompletionItemKind.File;
399
+ }
400
+ return a.languages.CompletionItemKind.Property;
401
+ }
402
+ static createDocumentationString(t) {
403
+ let i = w(t.documentation);
404
+ if (t.tags)
405
+ for (const o of t.tags)
406
+ i += `
407
+
408
+ ${T(o)}`;
409
+ return i;
410
+ }
411
+ };
412
+ function T(e) {
413
+ let t = `*@${e.name}*`;
414
+ if (e.name === "param" && e.text) {
415
+ const [i, ...o] = e.text;
416
+ t += `\`${i.text}\``, o.length > 0 && (t += ` — ${o.map((n) => n.text).join(" ")}`);
417
+ } else Array.isArray(e.text) ? t += ` — ${e.text.map((i) => i.text).join(" ")}` : e.text && (t += ` — ${e.text}`);
418
+ return t;
419
+ }
420
+ var U = class P extends _ {
421
+ constructor() {
422
+ super(...arguments), this.signatureHelpTriggerCharacters = ["(", ","];
423
+ }
424
+ static _toSignatureHelpTriggerReason(t) {
425
+ switch (t.triggerKind) {
426
+ case a.languages.SignatureHelpTriggerKind.TriggerCharacter:
427
+ return t.triggerCharacter ? t.isRetrigger ? { kind: "retrigger", triggerCharacter: t.triggerCharacter } : { kind: "characterTyped", triggerCharacter: t.triggerCharacter } : { kind: "invoked" };
428
+ case a.languages.SignatureHelpTriggerKind.ContentChange:
429
+ return t.isRetrigger ? { kind: "retrigger" } : { kind: "invoked" };
430
+ case a.languages.SignatureHelpTriggerKind.Invoke:
431
+ default:
432
+ return { kind: "invoked" };
433
+ }
434
+ }
435
+ async provideSignatureHelp(t, i, o, n) {
436
+ const c = t.uri, u = t.getOffsetAt(i), s = await this._worker(c);
437
+ if (t.isDisposed())
438
+ return;
439
+ const l = await s.getSignatureHelpItems(c.toString(), u, {
440
+ triggerReason: P._toSignatureHelpTriggerReason(n)
441
+ });
442
+ if (!l || t.isDisposed())
443
+ return;
444
+ const g = {
445
+ activeSignature: l.selectedItemIndex,
446
+ activeParameter: l.argumentIndex,
447
+ signatures: []
448
+ };
449
+ return l.items.forEach((d) => {
450
+ const b = {
451
+ label: "",
452
+ parameters: []
453
+ };
454
+ b.documentation = {
455
+ value: w(d.documentation)
456
+ }, b.label += w(d.prefixDisplayParts), d.parameters.forEach((h, y, v) => {
457
+ const S = w(h.displayParts), x = {
458
+ label: S,
459
+ documentation: {
460
+ value: w(h.documentation)
461
+ }
462
+ };
463
+ b.label += S, b.parameters.push(x), y < v.length - 1 && (b.label += w(d.separatorDisplayParts));
464
+ }), b.label += w(d.suffixDisplayParts), g.signatures.push(b);
465
+ }), {
466
+ value: g,
467
+ dispose() {
468
+ }
469
+ };
470
+ }
471
+ }, $ = class extends _ {
472
+ async provideHover(e, t, i) {
473
+ const o = e.uri, n = e.getOffsetAt(t), c = await this._worker(o);
474
+ if (e.isDisposed())
475
+ return;
476
+ const u = await c.getQuickInfoAtPosition(o.toString(), n);
477
+ if (!u || e.isDisposed())
478
+ return;
479
+ const s = w(u.documentation), l = u.tags ? u.tags.map((d) => T(d)).join(`
480
+
481
+ `) : "", g = w(u.displayParts);
482
+ return {
483
+ range: this._textSpanToRange(e, u.textSpan),
484
+ contents: [
485
+ {
486
+ value: "```typescript\n" + g + "\n```\n"
487
+ },
488
+ {
489
+ value: s + (l ? `
490
+
491
+ ` + l : "")
492
+ }
493
+ ]
494
+ };
495
+ }
496
+ }, z = class extends _ {
497
+ async provideDocumentHighlights(e, t, i) {
498
+ const o = e.uri, n = e.getOffsetAt(t), c = await this._worker(o);
499
+ if (e.isDisposed())
500
+ return;
501
+ const u = await c.getDocumentHighlights(o.toString(), n, [
502
+ o.toString()
503
+ ]);
504
+ if (!(!u || e.isDisposed()))
505
+ return u.flatMap((s) => s.highlightSpans.map((l) => ({
506
+ range: this._textSpanToRange(e, l.textSpan),
507
+ kind: l.kind === "writtenReference" ? a.languages.DocumentHighlightKind.Write : a.languages.DocumentHighlightKind.Text
508
+ })));
509
+ }
510
+ }, G = class extends _ {
511
+ constructor(e, t) {
512
+ super(t), this._libFiles = e;
513
+ }
514
+ async provideDefinition(e, t, i) {
515
+ const o = e.uri, n = e.getOffsetAt(t), c = await this._worker(o);
516
+ if (e.isDisposed())
517
+ return;
518
+ const u = await c.getDefinitionAtPosition(o.toString(), n);
519
+ if (!u || e.isDisposed() || (await this._libFiles.fetchLibFilesIfNecessary(
520
+ u.map((l) => a.Uri.parse(l.fileName))
521
+ ), e.isDisposed()))
522
+ return;
523
+ const s = [];
524
+ for (let l of u) {
525
+ const g = this._libFiles.getOrCreateModel(l.fileName);
526
+ g && s.push({
527
+ uri: g.uri,
528
+ range: this._textSpanToRange(g, l.textSpan)
529
+ });
530
+ }
531
+ return s;
532
+ }
533
+ }, J = class extends _ {
534
+ constructor(e, t) {
535
+ super(t), this._libFiles = e;
536
+ }
537
+ async provideReferences(e, t, i, o) {
538
+ const n = e.uri, c = e.getOffsetAt(t), u = await this._worker(n);
539
+ if (e.isDisposed())
540
+ return;
541
+ const s = await u.getReferencesAtPosition(n.toString(), c);
542
+ if (!s || e.isDisposed() || (await this._libFiles.fetchLibFilesIfNecessary(
543
+ s.map((g) => a.Uri.parse(g.fileName))
544
+ ), e.isDisposed()))
545
+ return;
546
+ const l = [];
547
+ for (let g of s) {
548
+ const d = this._libFiles.getOrCreateModel(g.fileName);
549
+ d && l.push({
550
+ uri: d.uri,
551
+ range: this._textSpanToRange(d, g.textSpan)
552
+ });
553
+ }
554
+ return l;
555
+ }
556
+ }, Q = class extends _ {
557
+ async provideDocumentSymbols(e, t) {
558
+ const i = e.uri, o = await this._worker(i);
559
+ if (e.isDisposed())
560
+ return;
561
+ const n = await o.getNavigationTree(i.toString());
562
+ if (!n || e.isDisposed())
563
+ return;
564
+ const c = (s, l) => ({
565
+ name: s.text,
566
+ detail: "",
567
+ kind: m[s.kind] || a.languages.SymbolKind.Variable,
568
+ range: this._textSpanToRange(e, s.spans[0]),
569
+ selectionRange: this._textSpanToRange(e, s.spans[0]),
570
+ tags: [],
571
+ children: s.childItems?.map((d) => c(d, s.text)),
572
+ containerName: l
573
+ });
574
+ return n.childItems ? n.childItems.map((s) => c(s)) : [];
575
+ }
576
+ }, p, f = (p = class {
577
+ }, 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), m = /* @__PURE__ */ Object.create(null);
578
+ m[f.module] = a.languages.SymbolKind.Module;
579
+ m[f.class] = a.languages.SymbolKind.Class;
580
+ m[f.enum] = a.languages.SymbolKind.Enum;
581
+ m[f.interface] = a.languages.SymbolKind.Interface;
582
+ m[f.memberFunction] = a.languages.SymbolKind.Method;
583
+ m[f.memberVariable] = a.languages.SymbolKind.Property;
584
+ m[f.memberGetAccessor] = a.languages.SymbolKind.Property;
585
+ m[f.memberSetAccessor] = a.languages.SymbolKind.Property;
586
+ m[f.variable] = a.languages.SymbolKind.Variable;
587
+ m[f.const] = a.languages.SymbolKind.Variable;
588
+ m[f.localVariable] = a.languages.SymbolKind.Variable;
589
+ m[f.variable] = a.languages.SymbolKind.Variable;
590
+ m[f.function] = a.languages.SymbolKind.Function;
591
+ m[f.localFunction] = a.languages.SymbolKind.Function;
592
+ var k = class extends _ {
593
+ static _convertOptions(e) {
594
+ return {
595
+ ConvertTabsToSpaces: e.insertSpaces,
596
+ TabSize: e.tabSize,
597
+ IndentSize: e.tabSize,
598
+ IndentStyle: 2,
599
+ NewLineCharacter: `
600
+ `,
601
+ InsertSpaceAfterCommaDelimiter: !0,
602
+ InsertSpaceAfterSemicolonInForStatements: !0,
603
+ InsertSpaceBeforeAndAfterBinaryOperators: !0,
604
+ InsertSpaceAfterKeywordsInControlFlowStatements: !0,
605
+ InsertSpaceAfterFunctionKeywordForAnonymousFunctions: !0,
606
+ InsertSpaceAfterOpeningAndBeforeClosingNonemptyParenthesis: !1,
607
+ InsertSpaceAfterOpeningAndBeforeClosingNonemptyBrackets: !1,
608
+ InsertSpaceAfterOpeningAndBeforeClosingTemplateStringBraces: !1,
609
+ PlaceOpenBraceOnNewLineForControlBlocks: !1,
610
+ PlaceOpenBraceOnNewLineForFunctions: !1
611
+ };
612
+ }
613
+ _convertTextChanges(e, t) {
614
+ return {
615
+ text: t.newText,
616
+ range: this._textSpanToRange(e, t.span)
617
+ };
618
+ }
619
+ }, q = class extends k {
620
+ constructor() {
621
+ super(...arguments), this.canFormatMultipleRanges = !1;
622
+ }
623
+ async provideDocumentRangeFormattingEdits(e, t, i, o) {
624
+ const n = e.uri, c = e.getOffsetAt({
625
+ lineNumber: t.startLineNumber,
626
+ column: t.startColumn
627
+ }), u = e.getOffsetAt({
628
+ lineNumber: t.endLineNumber,
629
+ column: t.endColumn
630
+ }), s = await this._worker(n);
631
+ if (e.isDisposed())
632
+ return;
633
+ const l = await s.getFormattingEditsForRange(
634
+ n.toString(),
635
+ c,
636
+ u,
637
+ k._convertOptions(i)
638
+ );
639
+ if (!(!l || e.isDisposed()))
640
+ return l.map((g) => this._convertTextChanges(e, g));
641
+ }
642
+ }, X = class extends k {
643
+ get autoFormatTriggerCharacters() {
644
+ return [";", "}", `
645
+ `];
646
+ }
647
+ async provideOnTypeFormattingEdits(e, t, i, o, n) {
648
+ const c = e.uri, u = e.getOffsetAt(t), s = await this._worker(c);
649
+ if (e.isDisposed())
650
+ return;
651
+ const l = await s.getFormattingEditsAfterKeystroke(
652
+ c.toString(),
653
+ u,
654
+ i,
655
+ k._convertOptions(o)
656
+ );
657
+ if (!(!l || e.isDisposed()))
658
+ return l.map((g) => this._convertTextChanges(e, g));
659
+ }
660
+ }, Y = class extends k {
661
+ async provideCodeActions(e, t, i, o) {
662
+ const n = e.uri, c = e.getOffsetAt({
663
+ lineNumber: t.startLineNumber,
664
+ column: t.startColumn
665
+ }), u = e.getOffsetAt({
666
+ lineNumber: t.endLineNumber,
667
+ column: t.endColumn
668
+ }), s = k._convertOptions(e.getOptions()), l = i.markers.filter((h) => h.code).map((h) => h.code).map(Number), g = await this._worker(n);
669
+ if (e.isDisposed())
670
+ return;
671
+ const d = await g.getCodeFixesAtPosition(
672
+ n.toString(),
673
+ c,
674
+ u,
675
+ l,
676
+ s
677
+ );
678
+ return !d || e.isDisposed() ? { actions: [], dispose: () => {
679
+ } } : {
680
+ actions: d.filter((h) => h.changes.filter((y) => y.isNewFile).length === 0).map((h) => this._tsCodeFixActionToMonacoCodeAction(e, i, h)),
681
+ dispose: () => {
682
+ }
683
+ };
684
+ }
685
+ _tsCodeFixActionToMonacoCodeAction(e, t, i) {
686
+ const o = [];
687
+ for (const c of i.changes)
688
+ for (const u of c.textChanges)
689
+ o.push({
690
+ resource: e.uri,
691
+ versionId: void 0,
692
+ textEdit: {
693
+ range: this._textSpanToRange(e, u.span),
694
+ text: u.newText
695
+ }
696
+ });
697
+ return {
698
+ title: i.description,
699
+ edit: { edits: o },
700
+ diagnostics: t.markers,
701
+ kind: "quickfix"
702
+ };
703
+ }
704
+ }, Z = class extends _ {
705
+ constructor(e, t) {
706
+ super(t), this._libFiles = e;
707
+ }
708
+ async provideRenameEdits(e, t, i, o) {
709
+ const n = e.uri, c = n.toString(), u = e.getOffsetAt(t), s = await this._worker(n);
710
+ if (e.isDisposed())
711
+ return;
712
+ const l = await s.getRenameInfo(c, u, {
713
+ allowRenameOfImportPath: !1
714
+ });
715
+ if (l.canRename === !1)
716
+ return {
717
+ edits: [],
718
+ rejectReason: l.localizedErrorMessage
719
+ };
720
+ if (l.fileToRename !== void 0)
721
+ throw new Error("Renaming files is not supported.");
722
+ const g = await s.findRenameLocations(
723
+ c,
724
+ u,
725
+ /*strings*/
726
+ !1,
727
+ /*comments*/
728
+ !1,
729
+ /*prefixAndSuffix*/
730
+ !1
731
+ );
732
+ if (!g || e.isDisposed())
733
+ return;
734
+ const d = [];
735
+ for (const b of g) {
736
+ const h = this._libFiles.getOrCreateModel(b.fileName);
737
+ if (h)
738
+ d.push({
739
+ resource: h.uri,
740
+ versionId: void 0,
741
+ textEdit: {
742
+ range: this._textSpanToRange(h, b.textSpan),
743
+ text: i
744
+ }
745
+ });
746
+ else
747
+ throw new Error(`Unknown file ${b.fileName}.`);
748
+ }
749
+ return { edits: d };
750
+ }
751
+ }, ee = class extends _ {
752
+ async provideInlayHints(e, t, i) {
753
+ const o = e.uri, n = o.toString(), c = e.getOffsetAt({
754
+ lineNumber: t.startLineNumber,
755
+ column: t.startColumn
756
+ }), u = e.getOffsetAt({
757
+ lineNumber: t.endLineNumber,
758
+ column: t.endColumn
759
+ }), s = await this._worker(o);
760
+ return e.isDisposed() ? null : { hints: (await s.provideInlayHints(n, c, u)).map((d) => ({
761
+ ...d,
762
+ label: d.text,
763
+ position: e.getPositionAt(d.position),
764
+ kind: this._convertHintKind(d.kind)
765
+ })), dispose: () => {
766
+ } };
767
+ }
768
+ _convertHintKind(e) {
769
+ switch (e) {
770
+ case "Parameter":
771
+ return a.languages.InlayHintKind.Parameter;
772
+ case "Type":
773
+ return a.languages.InlayHintKind.Type;
774
+ default:
775
+ return a.languages.InlayHintKind.Type;
776
+ }
777
+ }
778
+ }, A, F;
779
+ function re(e) {
780
+ F = L(e, "typescript");
781
+ }
782
+ function ie(e) {
783
+ A = L(e, "javascript");
784
+ }
785
+ function ne() {
786
+ return new Promise((e, t) => {
787
+ if (!A)
788
+ return t("JavaScript not registered!");
789
+ e(A);
790
+ });
791
+ }
792
+ function ae() {
793
+ return new Promise((e, t) => {
794
+ if (!F)
795
+ return t("TypeScript not registered!");
796
+ e(F);
797
+ });
798
+ }
799
+ function L(e, t) {
800
+ const i = [], o = new V(t, e), n = (...s) => o.getLanguageServiceWorker(...s), c = new W(n);
801
+ function u() {
802
+ const { modeConfiguration: s } = e;
803
+ te(i), s.completionItems && i.push(
804
+ a.languages.registerCompletionItemProvider(
805
+ t,
806
+ new B(n)
807
+ )
808
+ ), s.signatureHelp && i.push(
809
+ a.languages.registerSignatureHelpProvider(
810
+ t,
811
+ new U(n)
812
+ )
813
+ ), s.hovers && i.push(
814
+ a.languages.registerHoverProvider(t, new $(n))
815
+ ), s.documentHighlights && i.push(
816
+ a.languages.registerDocumentHighlightProvider(
817
+ t,
818
+ new z(n)
819
+ )
820
+ ), s.definitions && i.push(
821
+ a.languages.registerDefinitionProvider(
822
+ t,
823
+ new G(c, n)
824
+ )
825
+ ), s.references && i.push(
826
+ a.languages.registerReferenceProvider(
827
+ t,
828
+ new J(c, n)
829
+ )
830
+ ), s.documentSymbols && i.push(
831
+ a.languages.registerDocumentSymbolProvider(
832
+ t,
833
+ new Q(n)
834
+ )
835
+ ), s.rename && i.push(
836
+ a.languages.registerRenameProvider(
837
+ t,
838
+ new Z(c, n)
839
+ )
840
+ ), s.documentRangeFormattingEdits && i.push(
841
+ a.languages.registerDocumentRangeFormattingEditProvider(
842
+ t,
843
+ new q(n)
844
+ )
845
+ ), s.onTypeFormattingEdits && i.push(
846
+ a.languages.registerOnTypeFormattingEditProvider(
847
+ t,
848
+ new X(n)
849
+ )
850
+ ), s.codeActions && i.push(
851
+ a.languages.registerCodeActionProvider(t, new Y(n))
852
+ ), s.inlayHints && i.push(
853
+ a.languages.registerInlayHintsProvider(t, new ee(n))
854
+ ), s.diagnostics && i.push(new j(c, e, t, n));
855
+ }
856
+ return u(), n;
857
+ }
858
+ function te(e) {
859
+ for (; e.length; )
860
+ e.pop().dispose();
861
+ }
862
+ export {
863
+ _ as Adapter,
864
+ Y as CodeActionAdaptor,
865
+ G as DefinitionAdapter,
866
+ j as DiagnosticsAdapter,
867
+ z as DocumentHighlightAdapter,
868
+ q as FormatAdapter,
869
+ k as FormatHelper,
870
+ X as FormatOnTypeAdapter,
871
+ ee as InlayHintsAdapter,
872
+ f as Kind,
873
+ W as LibFiles,
874
+ Q as OutlineAdapter,
875
+ $ as QuickInfoAdapter,
876
+ J as ReferenceAdapter,
877
+ Z as RenameAdapter,
878
+ U as SignatureHelpAdapter,
879
+ B as SuggestAdapter,
880
+ V as WorkerManager,
881
+ D as flattenDiagnosticMessageText,
882
+ ne as getJavaScriptWorker,
883
+ ae as getTypeScriptWorker,
884
+ ie as setupJavaScript,
885
+ re as setupTypeScript
886
+ };