@gql.tada/cli-utils 1.2.0 → 1.2.1-canary-e42804ea2a1e64b58239cd45b152b047b9afcd17

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 (34) hide show
  1. package/CHANGELOG.md +11 -0
  2. package/dist/chunks/index-chunk.js +1050 -558
  3. package/dist/chunks/index-chunk.js.map +1 -1
  4. package/dist/chunks/index-chunk.mjs +919 -425
  5. package/dist/chunks/index-chunk.mjs.map +1 -1
  6. package/dist/chunks/svelte-chunk.js +53 -51
  7. package/dist/chunks/svelte-chunk.js.map +1 -1
  8. package/dist/chunks/svelte-chunk.mjs +58 -56
  9. package/dist/chunks/svelte-chunk.mjs.map +1 -1
  10. package/dist/chunks/thread-chunk.js +97 -130
  11. package/dist/chunks/thread-chunk.js.map +1 -1
  12. package/dist/chunks/thread-chunk.mjs +94 -106
  13. package/dist/chunks/thread-chunk.mjs.map +1 -1
  14. package/dist/chunks/thread-chunk2.js +46 -82
  15. package/dist/chunks/thread-chunk2.js.map +1 -1
  16. package/dist/chunks/thread-chunk2.mjs +44 -59
  17. package/dist/chunks/thread-chunk2.mjs.map +1 -1
  18. package/dist/chunks/thread-chunk3.js +45 -50
  19. package/dist/chunks/thread-chunk3.js.map +1 -1
  20. package/dist/chunks/thread-chunk3.mjs +45 -50
  21. package/dist/chunks/thread-chunk3.mjs.map +1 -1
  22. package/dist/chunks/vue-chunk.js +18 -15
  23. package/dist/chunks/vue-chunk.js.map +1 -1
  24. package/dist/chunks/vue-chunk.mjs +18 -15
  25. package/dist/chunks/vue-chunk.mjs.map +1 -1
  26. package/dist/gql-tada-cli.js +58 -49
  27. package/dist/gql-tada-cli.js.map +1 -1
  28. package/dist/gql-tada-cli.mjs +656 -647
  29. package/dist/gql-tada-cli.mjs.map +1 -1
  30. package/package.json +2 -3
  31. package/dist/chunks/project-chunk.js +0 -63
  32. package/dist/chunks/project-chunk.js.map +0 -1
  33. package/dist/chunks/project-chunk.mjs +0 -65
  34. package/dist/chunks/project-chunk.mjs.map +0 -1
@@ -1,6 +1,8 @@
1
- var e = require("svelte2tsx");
1
+ var e = require("typescript");
2
2
 
3
- var t = {
3
+ var t = require("svelte2tsx");
4
+
5
+ var r = {
4
6
  exports: {}
5
7
  };
6
8
 
@@ -107,21 +109,21 @@ var t = {
107
109
  var o = s.subarray(0, i);
108
110
  var l = 0;
109
111
  var c = "";
110
- for (var g = 0; g < e.length; g++) {
111
- var u = e[g];
112
- if (g > 0) {
112
+ for (var u = 0; u < e.length; u++) {
113
+ var g = e[u];
114
+ if (u > 0) {
113
115
  if (l === a) {
114
116
  c += f.decode(s);
115
117
  l = 0;
116
118
  }
117
119
  s[l++] = r;
118
120
  }
119
- if (0 === u.length) {
121
+ if (0 === g.length) {
120
122
  continue;
121
123
  }
122
124
  n[0] = 0;
123
- for (var h = 0; h < u.length; h++) {
124
- var v = u[h];
125
+ for (var h = 0; h < g.length; h++) {
126
+ var v = g[h];
125
127
  if (l > i) {
126
128
  c += f.decode(o);
127
129
  s.copyWithin(0, i, l);
@@ -164,9 +166,9 @@ var t = {
164
166
  Object.defineProperty(e, "__esModule", {
165
167
  value: !0
166
168
  });
167
- }(t.exports);
169
+ }(r.exports);
168
170
 
169
- var r = t.exports;
171
+ var n = r.exports;
170
172
 
171
173
  class FullTextDocument {
172
174
  constructor(e, t, r, n) {
@@ -205,7 +207,7 @@ class FullTextDocument {
205
207
  var f = this._lineOffsets;
206
208
  var l = computeLineOffsets(r.text, !1, a);
207
209
  if (o - s === l.length) {
208
- for (var c = 0, g = l.length; c < g; c++) {
210
+ for (var c = 0, u = l.length; c < u; c++) {
209
211
  f[c + s + 1] = l[c];
210
212
  }
211
213
  } else if (l.length < 1e4) {
@@ -213,10 +215,10 @@ class FullTextDocument {
213
215
  } else {
214
216
  this._lineOffsets = f = f.slice(0, s + 1).concat(l, f.slice(o + 1));
215
217
  }
216
- var u = r.text.length - (i - a);
217
- if (0 !== u) {
218
+ var g = r.text.length - (i - a);
219
+ if (0 !== g) {
218
220
  for (var h = s + 1 + l.length, v = f.length; h < v; h++) {
219
- f[h] = f[h] + u;
221
+ f[h] = f[h] + g;
220
222
  }
221
223
  }
222
224
  } else if (FullTextDocument.isFull(r)) {
@@ -279,7 +281,7 @@ class FullTextDocument {
279
281
  }
280
282
  }
281
283
 
282
- var n;
284
+ var a;
283
285
 
284
286
  !function(e) {
285
287
  e.create = function create(e, t, r, n) {
@@ -319,7 +321,7 @@ var n;
319
321
  i.push(r.substr(a));
320
322
  return i.join("");
321
323
  };
322
- }(n || (n = {}));
324
+ }(a || (a = {}));
323
325
 
324
326
  function mergeSort(e, t) {
325
327
  if (e.length <= 1) {
@@ -386,12 +388,12 @@ function getWellformedEdit(e) {
386
388
  return e;
387
389
  }
388
390
 
389
- exports.createVirtualCode = (t, a, i) => {
390
- var s = a.getText(0, a.getLength());
391
- var o;
391
+ exports.transform = r => {
392
+ var i = r.getFullText();
393
+ var s;
392
394
  try {
393
- o = e.svelte2tsx(s, {
394
- filename: t,
395
+ s = t.svelte2tsx(i, {
396
+ filename: r.fileName,
395
397
  isTsFile: !0,
396
398
  emitOnTemplateError: !0,
397
399
  mode: "ts"
@@ -399,40 +401,40 @@ exports.createVirtualCode = (t, a, i) => {
399
401
  } catch (e) {
400
402
  return;
401
403
  }
402
- var f = r.decode(o.map.mappings);
403
- var l = n.create("", "svelte", 0, s);
404
- var c = n.create("", "typescript", 0, o.code);
405
- var g = [];
404
+ var o = n.decode(s.map.mappings);
405
+ var f = a.create("", "svelte", 0, i);
406
+ var l = a.create("", "typescript", 0, s.code);
407
+ var c = [];
406
408
  var u;
407
- for (var h = 0; h < f.length; h++) {
408
- for (var v of f[h]) {
409
- var d = c.offsetAt({
410
- line: h,
411
- character: v[0]
409
+ for (var g = 0; g < o.length; g++) {
410
+ for (var h of o[g]) {
411
+ var v = l.offsetAt({
412
+ line: g,
413
+ character: h[0]
412
414
  });
413
415
  if (u) {
414
- var p = d - u.genOffset;
415
- var m = s.substring(u.sourceOffset, u.sourceOffset + p);
416
- var O = o.code.substring(u.genOffset, u.genOffset + p);
417
- if (m !== O) {
418
- p = 0;
419
- for (var x = 0; x < d - u.genOffset; x++) {
420
- if (m[x] === O[x]) {
421
- p = x + 1;
416
+ var d = v - u.genOffset;
417
+ var p = i.substring(u.sourceOffset, u.sourceOffset + d);
418
+ var m = s.code.substring(u.genOffset, u.genOffset + d);
419
+ if (p !== m) {
420
+ d = 0;
421
+ for (var O = 0; O < v - u.genOffset; O++) {
422
+ if (p[O] === m[O]) {
423
+ d = O + 1;
422
424
  } else {
423
425
  break;
424
426
  }
425
427
  }
426
428
  }
427
- if (p > 0) {
428
- var _ = g.length ? g[g.length - 1] : void 0;
429
- if (_ && _.generatedOffsets[0] + _.lengths[0] === u.genOffset && _.sourceOffsets[0] + _.lengths[0] === u.sourceOffset) {
430
- _.lengths[0] += p;
429
+ if (d > 0) {
430
+ var x = c.length ? c[c.length - 1] : void 0;
431
+ if (x && x.generatedOffsets[0] + x.lengths[0] === u.genOffset && x.sourceOffsets[0] + x.lengths[0] === u.sourceOffset) {
432
+ x.lengths[0] += d;
431
433
  } else {
432
- g.push({
434
+ c.push({
433
435
  sourceOffsets: [ u.sourceOffset ],
434
436
  generatedOffsets: [ u.genOffset ],
435
- lengths: [ p ],
437
+ lengths: [ d ],
436
438
  data: {
437
439
  verification: !0,
438
440
  completion: !0,
@@ -446,12 +448,12 @@ exports.createVirtualCode = (t, a, i) => {
446
448
  }
447
449
  u = void 0;
448
450
  }
449
- if (void 0 !== v[2] && void 0 !== v[3]) {
451
+ if (void 0 !== h[2] && void 0 !== h[3]) {
450
452
  u = {
451
- genOffset: d,
452
- sourceOffset: l.offsetAt({
453
- line: v[2],
454
- character: v[3]
453
+ genOffset: v,
454
+ sourceOffset: f.offsetAt({
455
+ line: h[2],
456
+ character: h[3]
455
457
  })
456
458
  };
457
459
  }
@@ -460,8 +462,8 @@ exports.createVirtualCode = (t, a, i) => {
460
462
  return {
461
463
  id: "ts",
462
464
  languageId: "typescript",
463
- snapshot: i.ScriptSnapshot.fromString(o.code),
464
- mappings: g,
465
+ snapshot: e.ScriptSnapshot.fromString(s.code),
466
+ mappings: c,
465
467
  embeddedCodes: []
466
468
  };
467
469
  };
@@ -1 +1 @@
1
- {"version":3,"file":"svelte-chunk.js","sources":["../../../../node_modules/.pnpm/@jridgewell+sourcemap-codec@1.4.15/node_modules/@jridgewell/sourcemap-codec/dist/sourcemap-codec.umd.js","../../../../node_modules/.pnpm/vscode-languageserver-textdocument@1.0.11/node_modules/vscode-languageserver-textdocument/lib/esm/main.js","../../src/ts/virtualCode/svelte.ts"],"sourcesContent":["(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined' ? factory(exports) :\n typeof define === 'function' && define.amd ? define(['exports'], factory) :\n (global = typeof globalThis !== 'undefined' ? globalThis : global || self, factory(global.sourcemapCodec = {}));\n})(this, (function (exports) { 'use strict';\n\n const comma = ','.charCodeAt(0);\n const semicolon = ';'.charCodeAt(0);\n const chars = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/';\n const intToChar = new Uint8Array(64); // 64 possible chars.\n const charToInt = new Uint8Array(128); // z is 122 in ASCII\n for (let i = 0; i < chars.length; i++) {\n const c = chars.charCodeAt(i);\n intToChar[i] = c;\n charToInt[c] = i;\n }\n // Provide a fallback for older environments.\n const td = typeof TextDecoder !== 'undefined'\n ? /* #__PURE__ */ new TextDecoder()\n : typeof Buffer !== 'undefined'\n ? {\n decode(buf) {\n const out = Buffer.from(buf.buffer, buf.byteOffset, buf.byteLength);\n return out.toString();\n },\n }\n : {\n decode(buf) {\n let out = '';\n for (let i = 0; i < buf.length; i++) {\n out += String.fromCharCode(buf[i]);\n }\n return out;\n },\n };\n function decode(mappings) {\n const state = new Int32Array(5);\n const decoded = [];\n let index = 0;\n do {\n const semi = indexOf(mappings, index);\n const line = [];\n let sorted = true;\n let lastCol = 0;\n state[0] = 0;\n for (let i = index; i < semi; i++) {\n let seg;\n i = decodeInteger(mappings, i, state, 0); // genColumn\n const col = state[0];\n if (col < lastCol)\n sorted = false;\n lastCol = col;\n if (hasMoreVlq(mappings, i, semi)) {\n i = decodeInteger(mappings, i, state, 1); // sourcesIndex\n i = decodeInteger(mappings, i, state, 2); // sourceLine\n i = decodeInteger(mappings, i, state, 3); // sourceColumn\n if (hasMoreVlq(mappings, i, semi)) {\n i = decodeInteger(mappings, i, state, 4); // namesIndex\n seg = [col, state[1], state[2], state[3], state[4]];\n }\n else {\n seg = [col, state[1], state[2], state[3]];\n }\n }\n else {\n seg = [col];\n }\n line.push(seg);\n }\n if (!sorted)\n sort(line);\n decoded.push(line);\n index = semi + 1;\n } while (index <= mappings.length);\n return decoded;\n }\n function indexOf(mappings, index) {\n const idx = mappings.indexOf(';', index);\n return idx === -1 ? mappings.length : idx;\n }\n function decodeInteger(mappings, pos, state, j) {\n let value = 0;\n let shift = 0;\n let integer = 0;\n do {\n const c = mappings.charCodeAt(pos++);\n integer = charToInt[c];\n value |= (integer & 31) << shift;\n shift += 5;\n } while (integer & 32);\n const shouldNegate = value & 1;\n value >>>= 1;\n if (shouldNegate) {\n value = -0x80000000 | -value;\n }\n state[j] += value;\n return pos;\n }\n function hasMoreVlq(mappings, i, length) {\n if (i >= length)\n return false;\n return mappings.charCodeAt(i) !== comma;\n }\n function sort(line) {\n line.sort(sortComparator);\n }\n function sortComparator(a, b) {\n return a[0] - b[0];\n }\n function encode(decoded) {\n const state = new Int32Array(5);\n const bufLength = 1024 * 16;\n const subLength = bufLength - 36;\n const buf = new Uint8Array(bufLength);\n const sub = buf.subarray(0, subLength);\n let pos = 0;\n let out = '';\n for (let i = 0; i < decoded.length; i++) {\n const line = decoded[i];\n if (i > 0) {\n if (pos === bufLength) {\n out += td.decode(buf);\n pos = 0;\n }\n buf[pos++] = semicolon;\n }\n if (line.length === 0)\n continue;\n state[0] = 0;\n for (let j = 0; j < line.length; j++) {\n const segment = line[j];\n // We can push up to 5 ints, each int can take at most 7 chars, and we\n // may push a comma.\n if (pos > subLength) {\n out += td.decode(sub);\n buf.copyWithin(0, subLength, pos);\n pos -= subLength;\n }\n if (j > 0)\n buf[pos++] = comma;\n pos = encodeInteger(buf, pos, state, segment, 0); // genColumn\n if (segment.length === 1)\n continue;\n pos = encodeInteger(buf, pos, state, segment, 1); // sourcesIndex\n pos = encodeInteger(buf, pos, state, segment, 2); // sourceLine\n pos = encodeInteger(buf, pos, state, segment, 3); // sourceColumn\n if (segment.length === 4)\n continue;\n pos = encodeInteger(buf, pos, state, segment, 4); // namesIndex\n }\n }\n return out + td.decode(buf.subarray(0, pos));\n }\n function encodeInteger(buf, pos, state, segment, j) {\n const next = segment[j];\n let num = next - state[j];\n state[j] = next;\n num = num < 0 ? (-num << 1) | 1 : num << 1;\n do {\n let clamped = num & 0b011111;\n num >>>= 5;\n if (num > 0)\n clamped |= 0b100000;\n buf[pos++] = intToChar[clamped];\n } while (num > 0);\n return pos;\n }\n\n exports.decode = decode;\n exports.encode = encode;\n\n Object.defineProperty(exports, '__esModule', { value: true });\n\n}));\n//# sourceMappingURL=sourcemap-codec.umd.js.map\n","/* --------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n * ------------------------------------------------------------------------------------------ */\n'use strict';\nclass FullTextDocument {\n constructor(uri, languageId, version, content) {\n this._uri = uri;\n this._languageId = languageId;\n this._version = version;\n this._content = content;\n this._lineOffsets = undefined;\n }\n get uri() {\n return this._uri;\n }\n get languageId() {\n return this._languageId;\n }\n get version() {\n return this._version;\n }\n getText(range) {\n if (range) {\n const start = this.offsetAt(range.start);\n const end = this.offsetAt(range.end);\n return this._content.substring(start, end);\n }\n return this._content;\n }\n update(changes, version) {\n for (let change of changes) {\n if (FullTextDocument.isIncremental(change)) {\n // makes sure start is before end\n const range = getWellformedRange(change.range);\n // update content\n const startOffset = this.offsetAt(range.start);\n const endOffset = this.offsetAt(range.end);\n this._content = this._content.substring(0, startOffset) + change.text + this._content.substring(endOffset, this._content.length);\n // update the offsets\n const startLine = Math.max(range.start.line, 0);\n const endLine = Math.max(range.end.line, 0);\n let lineOffsets = this._lineOffsets;\n const addedLineOffsets = computeLineOffsets(change.text, false, startOffset);\n if (endLine - startLine === addedLineOffsets.length) {\n for (let i = 0, len = addedLineOffsets.length; i < len; i++) {\n lineOffsets[i + startLine + 1] = addedLineOffsets[i];\n }\n }\n else {\n if (addedLineOffsets.length < 10000) {\n lineOffsets.splice(startLine + 1, endLine - startLine, ...addedLineOffsets);\n }\n else { // avoid too many arguments for splice\n this._lineOffsets = lineOffsets = lineOffsets.slice(0, startLine + 1).concat(addedLineOffsets, lineOffsets.slice(endLine + 1));\n }\n }\n const diff = change.text.length - (endOffset - startOffset);\n if (diff !== 0) {\n for (let i = startLine + 1 + addedLineOffsets.length, len = lineOffsets.length; i < len; i++) {\n lineOffsets[i] = lineOffsets[i] + diff;\n }\n }\n }\n else if (FullTextDocument.isFull(change)) {\n this._content = change.text;\n this._lineOffsets = undefined;\n }\n else {\n throw new Error('Unknown change event received');\n }\n }\n this._version = version;\n }\n getLineOffsets() {\n if (this._lineOffsets === undefined) {\n this._lineOffsets = computeLineOffsets(this._content, true);\n }\n return this._lineOffsets;\n }\n positionAt(offset) {\n offset = Math.max(Math.min(offset, this._content.length), 0);\n let lineOffsets = this.getLineOffsets();\n let low = 0, high = lineOffsets.length;\n if (high === 0) {\n return { line: 0, character: offset };\n }\n while (low < high) {\n let mid = Math.floor((low + high) / 2);\n if (lineOffsets[mid] > offset) {\n high = mid;\n }\n else {\n low = mid + 1;\n }\n }\n // low is the least x for which the line offset is larger than the current offset\n // or array.length if no line offset is larger than the current offset\n let line = low - 1;\n return { line, character: offset - lineOffsets[line] };\n }\n offsetAt(position) {\n let lineOffsets = this.getLineOffsets();\n if (position.line >= lineOffsets.length) {\n return this._content.length;\n }\n else if (position.line < 0) {\n return 0;\n }\n let lineOffset = lineOffsets[position.line];\n let nextLineOffset = (position.line + 1 < lineOffsets.length) ? lineOffsets[position.line + 1] : this._content.length;\n return Math.max(Math.min(lineOffset + position.character, nextLineOffset), lineOffset);\n }\n get lineCount() {\n return this.getLineOffsets().length;\n }\n static isIncremental(event) {\n let candidate = event;\n return candidate !== undefined && candidate !== null &&\n typeof candidate.text === 'string' && candidate.range !== undefined &&\n (candidate.rangeLength === undefined || typeof candidate.rangeLength === 'number');\n }\n static isFull(event) {\n let candidate = event;\n return candidate !== undefined && candidate !== null &&\n typeof candidate.text === 'string' && candidate.range === undefined && candidate.rangeLength === undefined;\n }\n}\nexport var TextDocument;\n(function (TextDocument) {\n /**\n * Creates a new text document.\n *\n * @param uri The document's uri.\n * @param languageId The document's language Id.\n * @param version The document's initial version number.\n * @param content The document's content.\n */\n function create(uri, languageId, version, content) {\n return new FullTextDocument(uri, languageId, version, content);\n }\n TextDocument.create = create;\n /**\n * Updates a TextDocument by modifying its content.\n *\n * @param document the document to update. Only documents created by TextDocument.create are valid inputs.\n * @param changes the changes to apply to the document.\n * @param version the changes version for the document.\n * @returns The updated TextDocument. Note: That's the same document instance passed in as first parameter.\n *\n */\n function update(document, changes, version) {\n if (document instanceof FullTextDocument) {\n document.update(changes, version);\n return document;\n }\n else {\n throw new Error('TextDocument.update: document must be created by TextDocument.create');\n }\n }\n TextDocument.update = update;\n function applyEdits(document, edits) {\n let text = document.getText();\n let sortedEdits = mergeSort(edits.map(getWellformedEdit), (a, b) => {\n let diff = a.range.start.line - b.range.start.line;\n if (diff === 0) {\n return a.range.start.character - b.range.start.character;\n }\n return diff;\n });\n let lastModifiedOffset = 0;\n const spans = [];\n for (const e of sortedEdits) {\n let startOffset = document.offsetAt(e.range.start);\n if (startOffset < lastModifiedOffset) {\n throw new Error('Overlapping edit');\n }\n else if (startOffset > lastModifiedOffset) {\n spans.push(text.substring(lastModifiedOffset, startOffset));\n }\n if (e.newText.length) {\n spans.push(e.newText);\n }\n lastModifiedOffset = document.offsetAt(e.range.end);\n }\n spans.push(text.substr(lastModifiedOffset));\n return spans.join('');\n }\n TextDocument.applyEdits = applyEdits;\n})(TextDocument || (TextDocument = {}));\nfunction mergeSort(data, compare) {\n if (data.length <= 1) {\n // sorted\n return data;\n }\n const p = (data.length / 2) | 0;\n const left = data.slice(0, p);\n const right = data.slice(p);\n mergeSort(left, compare);\n mergeSort(right, compare);\n let leftIdx = 0;\n let rightIdx = 0;\n let i = 0;\n while (leftIdx < left.length && rightIdx < right.length) {\n let ret = compare(left[leftIdx], right[rightIdx]);\n if (ret <= 0) {\n // smaller_equal -> take left to preserve order\n data[i++] = left[leftIdx++];\n }\n else {\n // greater -> take right\n data[i++] = right[rightIdx++];\n }\n }\n while (leftIdx < left.length) {\n data[i++] = left[leftIdx++];\n }\n while (rightIdx < right.length) {\n data[i++] = right[rightIdx++];\n }\n return data;\n}\nfunction computeLineOffsets(text, isAtLineStart, textOffset = 0) {\n const result = isAtLineStart ? [textOffset] : [];\n for (let i = 0; i < text.length; i++) {\n let ch = text.charCodeAt(i);\n if (ch === 13 /* CharCode.CarriageReturn */ || ch === 10 /* CharCode.LineFeed */) {\n if (ch === 13 /* CharCode.CarriageReturn */ && i + 1 < text.length && text.charCodeAt(i + 1) === 10 /* CharCode.LineFeed */) {\n i++;\n }\n result.push(textOffset + i + 1);\n }\n }\n return result;\n}\nfunction getWellformedRange(range) {\n const start = range.start;\n const end = range.end;\n if (start.line > end.line || (start.line === end.line && start.character > end.character)) {\n return { start: end, end: start };\n }\n return range;\n}\nfunction getWellformedEdit(textEdit) {\n const range = getWellformedRange(textEdit.range);\n if (range !== textEdit.range) {\n return { newText: textEdit.newText, range };\n }\n return textEdit;\n}\n","import type { CodeMapping, VirtualCode } from '@vue/language-core';\nimport { decode } from '@jridgewell/sourcemap-codec';\nimport { svelte2tsx } from 'svelte2tsx';\nimport { TextDocument } from 'vscode-languageserver-textdocument';\n\nimport type { CreateVirtualCode } from './types';\n\n// See: https://github.com/johnsoncodehk/language-tools/blob/volar2/packages/language-server/src/languagePlugin.ts\nexport const createVirtualCode: CreateVirtualCode = (\n fileId,\n snapshot,\n ts\n): VirtualCode | undefined => {\n const text = snapshot.getText(0, snapshot.getLength());\n\n let tsx: ReturnType<typeof svelte2tsx>;\n\n try {\n tsx = svelte2tsx(text, {\n filename: fileId,\n isTsFile: true,\n emitOnTemplateError: true,\n mode: 'ts',\n });\n } catch (error) {\n return;\n }\n\n const v3Mappings = decode(tsx.map.mappings);\n const document = TextDocument.create('', 'svelte', 0, text);\n const generateDocument = TextDocument.create('', 'typescript', 0, tsx.code);\n const mappings: CodeMapping[] = [];\n\n let current:\n | {\n genOffset: number;\n sourceOffset: number;\n }\n | undefined;\n\n for (let genLine = 0; genLine < v3Mappings.length; genLine++) {\n for (const segment of v3Mappings[genLine]) {\n const genCharacter = segment[0];\n const genOffset = generateDocument.offsetAt({ line: genLine, character: genCharacter });\n if (current) {\n let length = genOffset - current.genOffset;\n const sourceText = text.substring(current.sourceOffset, current.sourceOffset + length);\n const genText = tsx.code.substring(current.genOffset, current.genOffset + length);\n if (sourceText !== genText) {\n length = 0;\n for (let i = 0; i < genOffset - current.genOffset; i++) {\n if (sourceText[i] === genText[i]) {\n length = i + 1;\n } else {\n break;\n }\n }\n }\n if (length > 0) {\n const lastMapping = mappings.length ? mappings[mappings.length - 1] : undefined;\n if (\n lastMapping &&\n lastMapping.generatedOffsets[0] + lastMapping.lengths[0] === current.genOffset &&\n lastMapping.sourceOffsets[0] + lastMapping.lengths[0] === current.sourceOffset\n ) {\n lastMapping.lengths[0] += length;\n } else {\n mappings.push({\n sourceOffsets: [current.sourceOffset],\n generatedOffsets: [current.genOffset],\n lengths: [length],\n data: {\n verification: true,\n completion: true,\n semantic: true,\n navigation: true,\n structure: false,\n format: false,\n },\n });\n }\n }\n current = undefined;\n }\n if (segment[2] !== undefined && segment[3] !== undefined) {\n const sourceOffset = document.offsetAt({ line: segment[2], character: segment[3] });\n current = {\n genOffset,\n sourceOffset,\n };\n }\n }\n }\n\n return {\n id: 'ts',\n languageId: 'typescript',\n snapshot: ts.ScriptSnapshot.fromString(tsx.code),\n mappings: mappings,\n embeddedCodes: [],\n } satisfies VirtualCode;\n};\n"],"names":["exports","comma","charCodeAt","semicolon","chars","intToChar","Uint8Array","charToInt","i","length","c","TextDecoder","Buffer","decode","buf","from","buffer","byteOffset","byteLength","toString","out","String","fromCharCode","mappings","state","Int32Array","decoded","index","semi","indexOf","line","sorted","lastCol","seg","decodeInteger","col","hasMoreVlq","push","sort","idx","j","value","shift","integer","pos","shouldNegate","sortComparator","a","b","encode","bufLength","subLength","sub","subarray","_i3","td","segment","copyWithin","encodeInteger","factory","FullTextDocument","constructor","uri","languageId","version","content","this","_uri","_languageId","_version","_content","_lineOffsets","undefined","getText","range","start","offsetAt","end","substring","update","changes","change","isIncremental","getWellformedRange","startOffset","endOffset","text","startLine","Math","max","endLine","lineOffsets","addedLineOffsets","computeLineOffsets","len","splice","slice","concat","diff","isFull","Error","getLineOffsets","positionAt","offset","min","low","high","character","mid","floor","position","lineOffset","lineCount","event","candidate","rangeLength","TextDocument","create","document","applyEdits","edits","sortedEdits","mergeSort","map","getWellformedEdit","lastModifiedOffset","spans","e","newText","substr","join","data","compare","p","left","right","leftIdx","rightIdx","isAtLineStart","textOffset","result","ch","textEdit","createVirtualCode","fileId","snapshot","ts","getLength","tsx","svelte2tsx","filename","isTsFile","emitOnTemplateError","mode","error","v3Mappings","generateDocument","code","current","genLine","genOffset","sourceText","sourceOffset","genText","lastMapping","generatedOffsets","lengths","sourceOffsets","verification","completion","semantic","navigation","structure","format","id","ScriptSnapshot","fromString","embeddedCodes"],"mappings":"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","x_google_ignoreList":[0,1]}
1
+ {"version":3,"file":"svelte-chunk.js","sources":["../../../../node_modules/.pnpm/@jridgewell+sourcemap-codec@1.4.15/node_modules/@jridgewell/sourcemap-codec/dist/sourcemap-codec.umd.js","../../../../node_modules/.pnpm/vscode-languageserver-textdocument@1.0.11/node_modules/vscode-languageserver-textdocument/lib/esm/main.js","../../src/ts/transformers/svelte.ts"],"sourcesContent":["(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined' ? factory(exports) :\n typeof define === 'function' && define.amd ? define(['exports'], factory) :\n (global = typeof globalThis !== 'undefined' ? globalThis : global || self, factory(global.sourcemapCodec = {}));\n})(this, (function (exports) { 'use strict';\n\n const comma = ','.charCodeAt(0);\n const semicolon = ';'.charCodeAt(0);\n const chars = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/';\n const intToChar = new Uint8Array(64); // 64 possible chars.\n const charToInt = new Uint8Array(128); // z is 122 in ASCII\n for (let i = 0; i < chars.length; i++) {\n const c = chars.charCodeAt(i);\n intToChar[i] = c;\n charToInt[c] = i;\n }\n // Provide a fallback for older environments.\n const td = typeof TextDecoder !== 'undefined'\n ? /* #__PURE__ */ new TextDecoder()\n : typeof Buffer !== 'undefined'\n ? {\n decode(buf) {\n const out = Buffer.from(buf.buffer, buf.byteOffset, buf.byteLength);\n return out.toString();\n },\n }\n : {\n decode(buf) {\n let out = '';\n for (let i = 0; i < buf.length; i++) {\n out += String.fromCharCode(buf[i]);\n }\n return out;\n },\n };\n function decode(mappings) {\n const state = new Int32Array(5);\n const decoded = [];\n let index = 0;\n do {\n const semi = indexOf(mappings, index);\n const line = [];\n let sorted = true;\n let lastCol = 0;\n state[0] = 0;\n for (let i = index; i < semi; i++) {\n let seg;\n i = decodeInteger(mappings, i, state, 0); // genColumn\n const col = state[0];\n if (col < lastCol)\n sorted = false;\n lastCol = col;\n if (hasMoreVlq(mappings, i, semi)) {\n i = decodeInteger(mappings, i, state, 1); // sourcesIndex\n i = decodeInteger(mappings, i, state, 2); // sourceLine\n i = decodeInteger(mappings, i, state, 3); // sourceColumn\n if (hasMoreVlq(mappings, i, semi)) {\n i = decodeInteger(mappings, i, state, 4); // namesIndex\n seg = [col, state[1], state[2], state[3], state[4]];\n }\n else {\n seg = [col, state[1], state[2], state[3]];\n }\n }\n else {\n seg = [col];\n }\n line.push(seg);\n }\n if (!sorted)\n sort(line);\n decoded.push(line);\n index = semi + 1;\n } while (index <= mappings.length);\n return decoded;\n }\n function indexOf(mappings, index) {\n const idx = mappings.indexOf(';', index);\n return idx === -1 ? mappings.length : idx;\n }\n function decodeInteger(mappings, pos, state, j) {\n let value = 0;\n let shift = 0;\n let integer = 0;\n do {\n const c = mappings.charCodeAt(pos++);\n integer = charToInt[c];\n value |= (integer & 31) << shift;\n shift += 5;\n } while (integer & 32);\n const shouldNegate = value & 1;\n value >>>= 1;\n if (shouldNegate) {\n value = -0x80000000 | -value;\n }\n state[j] += value;\n return pos;\n }\n function hasMoreVlq(mappings, i, length) {\n if (i >= length)\n return false;\n return mappings.charCodeAt(i) !== comma;\n }\n function sort(line) {\n line.sort(sortComparator);\n }\n function sortComparator(a, b) {\n return a[0] - b[0];\n }\n function encode(decoded) {\n const state = new Int32Array(5);\n const bufLength = 1024 * 16;\n const subLength = bufLength - 36;\n const buf = new Uint8Array(bufLength);\n const sub = buf.subarray(0, subLength);\n let pos = 0;\n let out = '';\n for (let i = 0; i < decoded.length; i++) {\n const line = decoded[i];\n if (i > 0) {\n if (pos === bufLength) {\n out += td.decode(buf);\n pos = 0;\n }\n buf[pos++] = semicolon;\n }\n if (line.length === 0)\n continue;\n state[0] = 0;\n for (let j = 0; j < line.length; j++) {\n const segment = line[j];\n // We can push up to 5 ints, each int can take at most 7 chars, and we\n // may push a comma.\n if (pos > subLength) {\n out += td.decode(sub);\n buf.copyWithin(0, subLength, pos);\n pos -= subLength;\n }\n if (j > 0)\n buf[pos++] = comma;\n pos = encodeInteger(buf, pos, state, segment, 0); // genColumn\n if (segment.length === 1)\n continue;\n pos = encodeInteger(buf, pos, state, segment, 1); // sourcesIndex\n pos = encodeInteger(buf, pos, state, segment, 2); // sourceLine\n pos = encodeInteger(buf, pos, state, segment, 3); // sourceColumn\n if (segment.length === 4)\n continue;\n pos = encodeInteger(buf, pos, state, segment, 4); // namesIndex\n }\n }\n return out + td.decode(buf.subarray(0, pos));\n }\n function encodeInteger(buf, pos, state, segment, j) {\n const next = segment[j];\n let num = next - state[j];\n state[j] = next;\n num = num < 0 ? (-num << 1) | 1 : num << 1;\n do {\n let clamped = num & 0b011111;\n num >>>= 5;\n if (num > 0)\n clamped |= 0b100000;\n buf[pos++] = intToChar[clamped];\n } while (num > 0);\n return pos;\n }\n\n exports.decode = decode;\n exports.encode = encode;\n\n Object.defineProperty(exports, '__esModule', { value: true });\n\n}));\n//# sourceMappingURL=sourcemap-codec.umd.js.map\n","/* --------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n * ------------------------------------------------------------------------------------------ */\n'use strict';\nclass FullTextDocument {\n constructor(uri, languageId, version, content) {\n this._uri = uri;\n this._languageId = languageId;\n this._version = version;\n this._content = content;\n this._lineOffsets = undefined;\n }\n get uri() {\n return this._uri;\n }\n get languageId() {\n return this._languageId;\n }\n get version() {\n return this._version;\n }\n getText(range) {\n if (range) {\n const start = this.offsetAt(range.start);\n const end = this.offsetAt(range.end);\n return this._content.substring(start, end);\n }\n return this._content;\n }\n update(changes, version) {\n for (let change of changes) {\n if (FullTextDocument.isIncremental(change)) {\n // makes sure start is before end\n const range = getWellformedRange(change.range);\n // update content\n const startOffset = this.offsetAt(range.start);\n const endOffset = this.offsetAt(range.end);\n this._content = this._content.substring(0, startOffset) + change.text + this._content.substring(endOffset, this._content.length);\n // update the offsets\n const startLine = Math.max(range.start.line, 0);\n const endLine = Math.max(range.end.line, 0);\n let lineOffsets = this._lineOffsets;\n const addedLineOffsets = computeLineOffsets(change.text, false, startOffset);\n if (endLine - startLine === addedLineOffsets.length) {\n for (let i = 0, len = addedLineOffsets.length; i < len; i++) {\n lineOffsets[i + startLine + 1] = addedLineOffsets[i];\n }\n }\n else {\n if (addedLineOffsets.length < 10000) {\n lineOffsets.splice(startLine + 1, endLine - startLine, ...addedLineOffsets);\n }\n else { // avoid too many arguments for splice\n this._lineOffsets = lineOffsets = lineOffsets.slice(0, startLine + 1).concat(addedLineOffsets, lineOffsets.slice(endLine + 1));\n }\n }\n const diff = change.text.length - (endOffset - startOffset);\n if (diff !== 0) {\n for (let i = startLine + 1 + addedLineOffsets.length, len = lineOffsets.length; i < len; i++) {\n lineOffsets[i] = lineOffsets[i] + diff;\n }\n }\n }\n else if (FullTextDocument.isFull(change)) {\n this._content = change.text;\n this._lineOffsets = undefined;\n }\n else {\n throw new Error('Unknown change event received');\n }\n }\n this._version = version;\n }\n getLineOffsets() {\n if (this._lineOffsets === undefined) {\n this._lineOffsets = computeLineOffsets(this._content, true);\n }\n return this._lineOffsets;\n }\n positionAt(offset) {\n offset = Math.max(Math.min(offset, this._content.length), 0);\n let lineOffsets = this.getLineOffsets();\n let low = 0, high = lineOffsets.length;\n if (high === 0) {\n return { line: 0, character: offset };\n }\n while (low < high) {\n let mid = Math.floor((low + high) / 2);\n if (lineOffsets[mid] > offset) {\n high = mid;\n }\n else {\n low = mid + 1;\n }\n }\n // low is the least x for which the line offset is larger than the current offset\n // or array.length if no line offset is larger than the current offset\n let line = low - 1;\n return { line, character: offset - lineOffsets[line] };\n }\n offsetAt(position) {\n let lineOffsets = this.getLineOffsets();\n if (position.line >= lineOffsets.length) {\n return this._content.length;\n }\n else if (position.line < 0) {\n return 0;\n }\n let lineOffset = lineOffsets[position.line];\n let nextLineOffset = (position.line + 1 < lineOffsets.length) ? lineOffsets[position.line + 1] : this._content.length;\n return Math.max(Math.min(lineOffset + position.character, nextLineOffset), lineOffset);\n }\n get lineCount() {\n return this.getLineOffsets().length;\n }\n static isIncremental(event) {\n let candidate = event;\n return candidate !== undefined && candidate !== null &&\n typeof candidate.text === 'string' && candidate.range !== undefined &&\n (candidate.rangeLength === undefined || typeof candidate.rangeLength === 'number');\n }\n static isFull(event) {\n let candidate = event;\n return candidate !== undefined && candidate !== null &&\n typeof candidate.text === 'string' && candidate.range === undefined && candidate.rangeLength === undefined;\n }\n}\nexport var TextDocument;\n(function (TextDocument) {\n /**\n * Creates a new text document.\n *\n * @param uri The document's uri.\n * @param languageId The document's language Id.\n * @param version The document's initial version number.\n * @param content The document's content.\n */\n function create(uri, languageId, version, content) {\n return new FullTextDocument(uri, languageId, version, content);\n }\n TextDocument.create = create;\n /**\n * Updates a TextDocument by modifying its content.\n *\n * @param document the document to update. Only documents created by TextDocument.create are valid inputs.\n * @param changes the changes to apply to the document.\n * @param version the changes version for the document.\n * @returns The updated TextDocument. Note: That's the same document instance passed in as first parameter.\n *\n */\n function update(document, changes, version) {\n if (document instanceof FullTextDocument) {\n document.update(changes, version);\n return document;\n }\n else {\n throw new Error('TextDocument.update: document must be created by TextDocument.create');\n }\n }\n TextDocument.update = update;\n function applyEdits(document, edits) {\n let text = document.getText();\n let sortedEdits = mergeSort(edits.map(getWellformedEdit), (a, b) => {\n let diff = a.range.start.line - b.range.start.line;\n if (diff === 0) {\n return a.range.start.character - b.range.start.character;\n }\n return diff;\n });\n let lastModifiedOffset = 0;\n const spans = [];\n for (const e of sortedEdits) {\n let startOffset = document.offsetAt(e.range.start);\n if (startOffset < lastModifiedOffset) {\n throw new Error('Overlapping edit');\n }\n else if (startOffset > lastModifiedOffset) {\n spans.push(text.substring(lastModifiedOffset, startOffset));\n }\n if (e.newText.length) {\n spans.push(e.newText);\n }\n lastModifiedOffset = document.offsetAt(e.range.end);\n }\n spans.push(text.substr(lastModifiedOffset));\n return spans.join('');\n }\n TextDocument.applyEdits = applyEdits;\n})(TextDocument || (TextDocument = {}));\nfunction mergeSort(data, compare) {\n if (data.length <= 1) {\n // sorted\n return data;\n }\n const p = (data.length / 2) | 0;\n const left = data.slice(0, p);\n const right = data.slice(p);\n mergeSort(left, compare);\n mergeSort(right, compare);\n let leftIdx = 0;\n let rightIdx = 0;\n let i = 0;\n while (leftIdx < left.length && rightIdx < right.length) {\n let ret = compare(left[leftIdx], right[rightIdx]);\n if (ret <= 0) {\n // smaller_equal -> take left to preserve order\n data[i++] = left[leftIdx++];\n }\n else {\n // greater -> take right\n data[i++] = right[rightIdx++];\n }\n }\n while (leftIdx < left.length) {\n data[i++] = left[leftIdx++];\n }\n while (rightIdx < right.length) {\n data[i++] = right[rightIdx++];\n }\n return data;\n}\nfunction computeLineOffsets(text, isAtLineStart, textOffset = 0) {\n const result = isAtLineStart ? [textOffset] : [];\n for (let i = 0; i < text.length; i++) {\n let ch = text.charCodeAt(i);\n if (ch === 13 /* CharCode.CarriageReturn */ || ch === 10 /* CharCode.LineFeed */) {\n if (ch === 13 /* CharCode.CarriageReturn */ && i + 1 < text.length && text.charCodeAt(i + 1) === 10 /* CharCode.LineFeed */) {\n i++;\n }\n result.push(textOffset + i + 1);\n }\n }\n return result;\n}\nfunction getWellformedRange(range) {\n const start = range.start;\n const end = range.end;\n if (start.line > end.line || (start.line === end.line && start.character > end.character)) {\n return { start: end, end: start };\n }\n return range;\n}\nfunction getWellformedEdit(textEdit) {\n const range = getWellformedRange(textEdit.range);\n if (range !== textEdit.range) {\n return { newText: textEdit.newText, range };\n }\n return textEdit;\n}\n","import ts from 'typescript';\nimport type { CodeMapping, VirtualCode } from '@vue/language-core';\nimport { decode } from '@jridgewell/sourcemap-codec';\nimport { svelte2tsx } from 'svelte2tsx';\nimport { TextDocument } from 'vscode-languageserver-textdocument';\n\n// See: https://github.com/johnsoncodehk/language-tools/blob/volar2/packages/language-server/src/languagePlugin.ts\nexport const transform = (sourceFile: ts.SourceFile): VirtualCode | undefined => {\n const text = sourceFile.getFullText();\n\n let tsx: ReturnType<typeof svelte2tsx>;\n\n try {\n tsx = svelte2tsx(text, {\n filename: sourceFile.fileName,\n isTsFile: true,\n emitOnTemplateError: true,\n mode: 'ts',\n });\n } catch (error) {\n return;\n }\n\n const v3Mappings = decode(tsx.map.mappings);\n const document = TextDocument.create('', 'svelte', 0, text);\n const generateDocument = TextDocument.create('', 'typescript', 0, tsx.code);\n const mappings: CodeMapping[] = [];\n\n let current:\n | {\n genOffset: number;\n sourceOffset: number;\n }\n | undefined;\n\n for (let genLine = 0; genLine < v3Mappings.length; genLine++) {\n for (const segment of v3Mappings[genLine]) {\n const genCharacter = segment[0];\n const genOffset = generateDocument.offsetAt({ line: genLine, character: genCharacter });\n if (current) {\n let length = genOffset - current.genOffset;\n const sourceText = text.substring(current.sourceOffset, current.sourceOffset + length);\n const genText = tsx.code.substring(current.genOffset, current.genOffset + length);\n if (sourceText !== genText) {\n length = 0;\n for (let i = 0; i < genOffset - current.genOffset; i++) {\n if (sourceText[i] === genText[i]) {\n length = i + 1;\n } else {\n break;\n }\n }\n }\n if (length > 0) {\n const lastMapping = mappings.length ? mappings[mappings.length - 1] : undefined;\n if (\n lastMapping &&\n lastMapping.generatedOffsets[0] + lastMapping.lengths[0] === current.genOffset &&\n lastMapping.sourceOffsets[0] + lastMapping.lengths[0] === current.sourceOffset\n ) {\n lastMapping.lengths[0] += length;\n } else {\n mappings.push({\n sourceOffsets: [current.sourceOffset],\n generatedOffsets: [current.genOffset],\n lengths: [length],\n data: {\n verification: true,\n completion: true,\n semantic: true,\n navigation: true,\n structure: false,\n format: false,\n },\n });\n }\n }\n current = undefined;\n }\n if (segment[2] !== undefined && segment[3] !== undefined) {\n const sourceOffset = document.offsetAt({ line: segment[2], character: segment[3] });\n current = {\n genOffset,\n sourceOffset,\n };\n }\n }\n }\n\n return {\n id: 'ts',\n languageId: 'typescript',\n snapshot: ts.ScriptSnapshot.fromString(tsx.code),\n mappings: mappings,\n embeddedCodes: [],\n } satisfies VirtualCode;\n};\n"],"names":["exports","comma","charCodeAt","semicolon","chars","intToChar","Uint8Array","charToInt","i","length","c","TextDecoder","Buffer","decode","buf","from","buffer","byteOffset","byteLength","toString","out","String","fromCharCode","mappings","state","Int32Array","decoded","index","semi","indexOf","line","sorted","lastCol","seg","decodeInteger","col","hasMoreVlq","push","sort","idx","j","value","shift","integer","pos","shouldNegate","sortComparator","a","b","encode","bufLength","subLength","sub","subarray","_i3","td","segment","copyWithin","encodeInteger","factory","FullTextDocument","constructor","uri","languageId","version","content","this","_uri","_languageId","_version","_content","_lineOffsets","undefined","getText","range","start","offsetAt","end","substring","update","changes","change","isIncremental","getWellformedRange","startOffset","endOffset","text","startLine","Math","max","endLine","lineOffsets","addedLineOffsets","computeLineOffsets","len","splice","slice","concat","diff","isFull","Error","getLineOffsets","positionAt","offset","min","low","high","character","mid","floor","position","lineOffset","lineCount","event","candidate","rangeLength","TextDocument","create","document","applyEdits","edits","sortedEdits","mergeSort","map","getWellformedEdit","lastModifiedOffset","spans","e","newText","substr","join","data","compare","p","left","right","leftIdx","rightIdx","isAtLineStart","textOffset","result","ch","textEdit","sourceFile","getFullText","tsx","svelte2tsx","filename","fileName","isTsFile","emitOnTemplateError","mode","error","v3Mappings","generateDocument","code","current","genLine","genOffset","sourceText","sourceOffset","genText","lastMapping","generatedOffsets","lengths","sourceOffsets","verification","completion","semantic","navigation","structure","format","id","snapshot","ts","ScriptSnapshot","fromString","embeddedCodes"],"mappings":"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","x_google_ignoreList":[0,1]}
@@ -1,6 +1,8 @@
1
- import { svelte2tsx as e } from "svelte2tsx";
1
+ import e from "typescript";
2
2
 
3
- var t = {
3
+ import { svelte2tsx as t } from "svelte2tsx";
4
+
5
+ var r = {
4
6
  exports: {}
5
7
  };
6
8
 
@@ -108,7 +110,7 @@ var t = {
108
110
  var l = 0;
109
111
  var c = "";
110
112
  for (var g = 0; g < e.length; g++) {
111
- var h = e[g];
113
+ var u = e[g];
112
114
  if (g > 0) {
113
115
  if (l === a) {
114
116
  c += f.decode(s);
@@ -116,18 +118,18 @@ var t = {
116
118
  }
117
119
  s[l++] = r;
118
120
  }
119
- if (0 === h.length) {
121
+ if (0 === u.length) {
120
122
  continue;
121
123
  }
122
124
  n[0] = 0;
123
- for (var u = 0; u < h.length; u++) {
124
- var v = h[u];
125
+ for (var h = 0; h < u.length; h++) {
126
+ var v = u[h];
125
127
  if (l > i) {
126
128
  c += f.decode(o);
127
129
  s.copyWithin(0, i, l);
128
130
  l -= i;
129
131
  }
130
- if (u > 0) {
132
+ if (h > 0) {
131
133
  s[l++] = t;
132
134
  }
133
135
  l = encodeInteger(s, l, n, v, 0);
@@ -164,9 +166,9 @@ var t = {
164
166
  Object.defineProperty(e, "__esModule", {
165
167
  value: !0
166
168
  });
167
- }(t.exports);
169
+ }(r.exports);
168
170
 
169
- var r = t.exports;
171
+ var n = r.exports;
170
172
 
171
173
  class FullTextDocument {
172
174
  constructor(e, t, r, n) {
@@ -213,10 +215,10 @@ class FullTextDocument {
213
215
  } else {
214
216
  this._lineOffsets = f = f.slice(0, s + 1).concat(l, f.slice(o + 1));
215
217
  }
216
- var h = r.text.length - (i - a);
217
- if (0 !== h) {
218
- for (var u = s + 1 + l.length, v = f.length; u < v; u++) {
219
- f[u] = f[u] + h;
218
+ var u = r.text.length - (i - a);
219
+ if (0 !== u) {
220
+ for (var h = s + 1 + l.length, v = f.length; h < v; h++) {
221
+ f[h] = f[h] + u;
220
222
  }
221
223
  }
222
224
  } else if (FullTextDocument.isFull(r)) {
@@ -279,7 +281,7 @@ class FullTextDocument {
279
281
  }
280
282
  }
281
283
 
282
- var n;
284
+ var a;
283
285
 
284
286
  !function(e) {
285
287
  e.create = function create(e, t, r, n) {
@@ -319,7 +321,7 @@ var n;
319
321
  i.push(r.substr(a));
320
322
  return i.join("");
321
323
  };
322
- }(n || (n = {}));
324
+ }(a || (a = {}));
323
325
 
324
326
  function mergeSort(e, t) {
325
327
  if (e.length <= 1) {
@@ -386,12 +388,12 @@ function getWellformedEdit(e) {
386
388
  return e;
387
389
  }
388
390
 
389
- var createVirtualCode = (t, a, i) => {
390
- var s = a.getText(0, a.getLength());
391
- var o;
391
+ var transform = r => {
392
+ var i = r.getFullText();
393
+ var s;
392
394
  try {
393
- o = e(s, {
394
- filename: t,
395
+ s = t(i, {
396
+ filename: r.fileName,
395
397
  isTsFile: !0,
396
398
  emitOnTemplateError: !0,
397
399
  mode: "ts"
@@ -399,40 +401,40 @@ var createVirtualCode = (t, a, i) => {
399
401
  } catch (e) {
400
402
  return;
401
403
  }
402
- var f = r.decode(o.map.mappings);
403
- var l = n.create("", "svelte", 0, s);
404
- var c = n.create("", "typescript", 0, o.code);
405
- var g = [];
406
- var h;
407
- for (var u = 0; u < f.length; u++) {
408
- for (var v of f[u]) {
409
- var d = c.offsetAt({
404
+ var o = n.decode(s.map.mappings);
405
+ var f = a.create("", "svelte", 0, i);
406
+ var l = a.create("", "typescript", 0, s.code);
407
+ var c = [];
408
+ var g;
409
+ for (var u = 0; u < o.length; u++) {
410
+ for (var h of o[u]) {
411
+ var v = l.offsetAt({
410
412
  line: u,
411
- character: v[0]
413
+ character: h[0]
412
414
  });
413
- if (h) {
414
- var p = d - h.genOffset;
415
- var m = s.substring(h.sourceOffset, h.sourceOffset + p);
416
- var O = o.code.substring(h.genOffset, h.genOffset + p);
417
- if (m !== O) {
418
- p = 0;
419
- for (var x = 0; x < d - h.genOffset; x++) {
420
- if (m[x] === O[x]) {
421
- p = x + 1;
415
+ if (g) {
416
+ var d = v - g.genOffset;
417
+ var p = i.substring(g.sourceOffset, g.sourceOffset + d);
418
+ var m = s.code.substring(g.genOffset, g.genOffset + d);
419
+ if (p !== m) {
420
+ d = 0;
421
+ for (var O = 0; O < v - g.genOffset; O++) {
422
+ if (p[O] === m[O]) {
423
+ d = O + 1;
422
424
  } else {
423
425
  break;
424
426
  }
425
427
  }
426
428
  }
427
- if (p > 0) {
428
- var _ = g.length ? g[g.length - 1] : void 0;
429
- if (_ && _.generatedOffsets[0] + _.lengths[0] === h.genOffset && _.sourceOffsets[0] + _.lengths[0] === h.sourceOffset) {
430
- _.lengths[0] += p;
429
+ if (d > 0) {
430
+ var x = c.length ? c[c.length - 1] : void 0;
431
+ if (x && x.generatedOffsets[0] + x.lengths[0] === g.genOffset && x.sourceOffsets[0] + x.lengths[0] === g.sourceOffset) {
432
+ x.lengths[0] += d;
431
433
  } else {
432
- g.push({
433
- sourceOffsets: [ h.sourceOffset ],
434
- generatedOffsets: [ h.genOffset ],
435
- lengths: [ p ],
434
+ c.push({
435
+ sourceOffsets: [ g.sourceOffset ],
436
+ generatedOffsets: [ g.genOffset ],
437
+ lengths: [ d ],
436
438
  data: {
437
439
  verification: !0,
438
440
  completion: !0,
@@ -444,14 +446,14 @@ var createVirtualCode = (t, a, i) => {
444
446
  });
445
447
  }
446
448
  }
447
- h = void 0;
449
+ g = void 0;
448
450
  }
449
- if (void 0 !== v[2] && void 0 !== v[3]) {
450
- h = {
451
- genOffset: d,
452
- sourceOffset: l.offsetAt({
453
- line: v[2],
454
- character: v[3]
451
+ if (void 0 !== h[2] && void 0 !== h[3]) {
452
+ g = {
453
+ genOffset: v,
454
+ sourceOffset: f.offsetAt({
455
+ line: h[2],
456
+ character: h[3]
455
457
  })
456
458
  };
457
459
  }
@@ -460,11 +462,11 @@ var createVirtualCode = (t, a, i) => {
460
462
  return {
461
463
  id: "ts",
462
464
  languageId: "typescript",
463
- snapshot: i.ScriptSnapshot.fromString(o.code),
464
- mappings: g,
465
+ snapshot: e.ScriptSnapshot.fromString(s.code),
466
+ mappings: c,
465
467
  embeddedCodes: []
466
468
  };
467
469
  };
468
470
 
469
- export { createVirtualCode };
471
+ export { transform };
470
472
  //# sourceMappingURL=svelte-chunk.mjs.map