ts-budgie
Version:
Converts TypeScript code to Budgie.
40 lines • 1.85 kB
JavaScript
;
function __export(m) {
for (var p in m) if (!exports.hasOwnProperty(p)) exports[p] = m[p];
}
Object.defineProperty(exports, "__esModule", { value: true });
var visitEachComment_1 = require("./comments/visitEachComment");
var visitSourceFile_1 = require("./nodes/visitSourceFile");
var transformationsPrinter_1 = require("./printing/transformationsPrinter");
var service_1 = require("./service");
var transforms_1 = require("./transforms");
var budgieLine_1 = require("./output/budgieLine");
exports.BudgieLine = budgieLine_1.BudgieLine;
var transformation_1 = require("./output/transformation");
exports.Transformation = transformation_1.Transformation;
var service_2 = require("./service");
exports.TransformationService = service_2.TransformationService;
__export(require("./transforms"));
/**
* Creates a TypeScript-to-Budgie code transformer.
*
* @returns A TypeScript-to-Budgie code transformer.
*/
exports.createTransformer = function (options) {
var transformers = [visitSourceFile_1.visitSourceFile];
// For now, we skip comments to avoid having to resolve positioning
if (options.skipComments === false) {
transformers.push(visitEachComment_1.visitEachComment);
}
return new transforms_1.Transformer({
compilerOptions: options.compilerOptions === undefined ? {} : options.compilerOptions,
contextOptions: {
baseDirectory: options.baseDirectory === undefined ? "" : options.baseDirectory,
outputNamespace: options.outputNamespace === undefined ? "" : options.outputNamespace,
},
printer: new transformationsPrinter_1.TransformationsPrinter(),
service: new service_1.TransformationService(transformers),
sourceFiles: options.sourceFiles,
});
};
//# sourceMappingURL=index.js.map