vite-typescript-plugin
Version:
A Vite plugin for seamless integration between Vite and Typescript.
31 lines (30 loc) • 1.37 kB
JavaScript
;
var __importDefault = (this && this.__importDefault) || function (mod) {
return (mod && mod.__esModule) ? mod : { "default": mod };
};
Object.defineProperty(exports, "__esModule", { value: true });
exports.getSourceFile = void 0;
const typescript_1 = __importDefault(require("typescript"));
const path_1 = __importDefault(require("path"));
function getSourceFile(fileName, languageVersionOrOptions, onError, shouldCreateNewSourceFile) {
var _a;
let sourceFileDetails = this.getCacheFileDetails(fileName);
if (sourceFileDetails.sourceFile === undefined || shouldCreateNewSourceFile) {
let text;
try {
text = this.readFile(fileName);
if (text) {
let scriptKind = (_a = this.extensionsSupport[path_1.default.extname(fileName)]) === null || _a === void 0 ? void 0 : _a.scriptKind;
return (sourceFileDetails.sourceFile = typescript_1.default.createSourceFile(fileName, text, languageVersionOrOptions, true, scriptKind));
}
}
catch (e) {
if (onError) {
onError(e.message);
}
}
return typescript_1.default.createSourceFile(fileName, "", languageVersionOrOptions, true);
}
return sourceFileDetails.sourceFile;
}
exports.getSourceFile = getSourceFile;