UNPKG

alm

Version:

The best IDE for TypeScript

38 lines (37 loc) 1.35 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); /** * Backend for the live analysis feature */ /** Imports */ var utils = require("../../../../common/utils"); /** We just use the *active* project if any */ var activeProject = require("../activeProject"); var getProject = activeProject.GetProject.getCurrentIfAny; /** Some other analysis modules we depend on */ var umlDiagram = require("../umlDiagram/umlDiagram"); function getLiveAnalysis(query) { var filePath = query.filePath; var project = activeProject.GetProject.getCurrentIfAny(); var program = project.languageService.getProgram(); var sourceFile = project.getProjectSourceFiles().find(function (f) { return f.fileName === query.filePath; }); /** Figure out overrides */ var overrides = []; var classes = umlDiagram.getClasses({ sourceFile: sourceFile, program: program }); classes.forEach(function (c) { c.members.forEach(function (m) { if (m.override) { var override = m.override; overrides.push({ line: m.location.position.line, overrides: override }); } }); }); var result = { overrides: overrides }; return utils.resolve(result); } exports.getLiveAnalysis = getLiveAnalysis;