siphon-cli
Version:
Simple bundler for web applications. 📦🔧🧡
58 lines (57 loc) • 2.35 kB
JavaScript
;
var __extends = (this && this.__extends) || (function () {
var extendStatics = function (d, b) {
extendStatics = Object.setPrototypeOf ||
({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };
return extendStatics(d, b);
};
return function (d, b) {
if (typeof b !== "function" && b !== null)
throw new TypeError("Class extends value " + String(b) + " is not a constructor or null");
extendStatics(d, b);
function __() { this.constructor = d; }
d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
};
})();
var __assign = (this && this.__assign) || function () {
__assign = Object.assign || function(t) {
for (var s, i = 1, n = arguments.length; i < n; i++) {
s = arguments[i];
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
t[p] = s[p];
}
return t;
};
return __assign.apply(this, arguments);
};
Object.defineProperty(exports, "__esModule", { value: true });
exports.ezra = exports.ezra_gen_internals = void 0;
var _1 = require(".");
var utils_1 = require("./utils");
var ezra_gen_internals = (function (_super) {
__extends(ezra_gen_internals, _super);
function ezra_gen_internals() {
return _super !== null && _super.apply(this, arguments) || this;
}
return ezra_gen_internals;
}(utils_1.gen_utils));
exports.ezra_gen_internals = ezra_gen_internals;
exports.ezra = ezra_gen_internals.prototype;
exports.ezra.generate = function (node, options) {
var _a;
this.options = __assign(__assign({}, _1.defaults), options);
if (node.type === "Program") {
this.indentLevel = (_a = this.options.indent) !== null && _a !== void 0 ? _a : 0;
for (var x = 0; x < this.indentLevel; x++) {
this.write(" ");
this.lineLength += 2;
}
}
for (var i = 0; node.body[i]; i++) {
this.renderTopLevel(node.body[i]);
if (i !== node.body.length - 1 && node.body[i].type !== "EmptyNode")
this.newline();
}
return this.state;
};