typescript-svelte-plugin
Advanced tools
Comparing version
@@ -5,2 +5,3 @@ "use strict"; | ||
const utils_1 = require("../utils"); | ||
const svelte2tsx_1 = require("svelte2tsx"); | ||
const ENSURE_COMPONENT_HELPER = '__sveltets_2_ensureComponent'; | ||
@@ -55,3 +56,3 @@ function decorateCallHierarchy(ls, snapshotManager, typescript) { | ||
.find((statement) => typescript.isFunctionDeclaration(statement) && | ||
statement.name?.getText() === 'render') | ||
statement.name?.getText() === svelte2tsx_1.internalHelpers.renderName) | ||
?.name?.getStart() | ||
@@ -126,3 +127,3 @@ : -1; | ||
} | ||
if (item.name === 'render') { | ||
if (item.name === svelte2tsx_1.internalHelpers.renderName) { | ||
const end = item.selectionSpan.start + item.selectionSpan.length; | ||
@@ -129,0 +130,0 @@ const renderFunction = sourceFile.statements.find((statement) => statement.getStart() <= item.selectionSpan.start && statement.getEnd() >= end); |
@@ -5,2 +5,3 @@ "use strict"; | ||
const utils_1 = require("../utils"); | ||
const svelte2tsx_1 = require("svelte2tsx"); | ||
function decorateNavigateToItems(ls, snapshotManager) { | ||
@@ -16,8 +17,11 @@ const getNavigateToItems = ls.getNavigateToItems; | ||
if (item.name.startsWith('__sveltets_') || | ||
(item.name === 'render' && !item.containerName)) { | ||
item.name === svelte2tsx_1.internalHelpers.renderName || | ||
item.name.startsWith('$$')) { | ||
return; | ||
} | ||
let textSpan = snapshotManager | ||
.get(item.fileName) | ||
?.getOriginalTextSpan(item.textSpan); | ||
const snapshot = snapshotManager.get(item.fileName); | ||
if (!snapshot || !(0, utils_1.isNoTextSpanInGeneratedCode)(snapshot.getText(), item.textSpan)) { | ||
return; | ||
} | ||
let textSpan = snapshot.getOriginalTextSpan(item.textSpan); | ||
if (!textSpan) { | ||
@@ -31,4 +35,10 @@ if ((0, utils_1.isGeneratedSvelteComponentName)(item.name)) { | ||
} | ||
const containerName = item.containerName === svelte2tsx_1.internalHelpers.renderName || !item.containerName | ||
? isInScript(textSpan.start, snapshot.getOriginalText()) | ||
? 'script' | ||
: '' | ||
: item.containerName; | ||
return { | ||
...item, | ||
containerName, | ||
textSpan | ||
@@ -40,2 +50,8 @@ }; | ||
} | ||
function isInScript(offset, originalText) { | ||
const text = originalText.slice(0, offset); | ||
const lastScriptTag = text.lastIndexOf('<script'); | ||
const lastCloseTag = text.lastIndexOf('</script>'); | ||
return lastScriptTag > lastCloseTag; | ||
} | ||
//# sourceMappingURL=navigate-to-items.js.map |
{ | ||
"name": "typescript-svelte-plugin", | ||
"version": "0.3.47", | ||
"version": "0.3.48", | ||
"description": "A TypeScript Plugin providing Svelte intellisense", | ||
@@ -5,0 +5,0 @@ "main": "dist/src/index.js", |
159887
0.58%3665
0.47%