UNPKG

ts-lit-plugin

Version:

Typescript plugin that adds type checking and code completion to lit-html

46 lines (45 loc) 1.62 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.translateDefinition = void 0; var ts_module_js_1 = require("../../ts-module.js"); var translate_range_js_1 = require("./translate-range.js"); function translateDefinition(definition) { return { definitions: definition.targets.map(translateDefinitionInfo), textSpan: (0, translate_range_js_1.translateRange)(definition.fromRange) }; } exports.translateDefinition = translateDefinition; function translateDefinitionInfo(target) { var targetStart; var targetEnd; var targetFileName; var targetName; switch (target.kind) { case "range": targetStart = target.range.start; targetEnd = target.range.end; targetFileName = target.sourceFile.fileName; targetName = target.name || ""; break; case "node": { var node = target.node; targetStart = node.getStart(); targetEnd = node.getEnd(); targetFileName = node.getSourceFile().fileName; targetName = target.name || (ts_module_js_1.tsModule.ts.isIdentifier(node) ? node.getText() : ""); break; } } return { name: targetName, textSpan: { start: targetStart, length: targetEnd - targetStart }, fileName: targetFileName, containerName: targetFileName, kind: ts_module_js_1.tsModule.ts.ScriptElementKind.memberVariableElement, containerKind: ts_module_js_1.tsModule.ts.ScriptElementKind.functionElement }; }