UNPKG

markdown-table-prettify

Version:

Transforms markdown tables to be more readable.

42 lines (41 loc) 2.04 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.PadCalculatorSelector = void 0; var LeftAlignment = require("./left"); var RightAlignment = require("./right"); var CenterAlignment = require("./center"); var alignment_1 = require("../models/alignment"); var PadCalculatorSelector = /** @class */ (function () { function PadCalculatorSelector() { } PadCalculatorSelector.prototype.select = function (table, column) { switch (table.alignments[column]) { case alignment_1.Alignment.Center: return this.centerAlignmentPadCalculator(table, column); case alignment_1.Alignment.Right: return this.rightAlignmentPadCalculator(table, column); default: return this.leftAlignmentPadCalculator(table, column); } }; PadCalculatorSelector.prototype.leftAlignmentPadCalculator = function (table, column) { if (column == 0) return new LeftAlignment.FirstColumnPadCalculator(); if (column == table.columnCount - 1) return new LeftAlignment.LastColumnPadCalculator(); return new LeftAlignment.MiddleColumnPadCalculator(); }; PadCalculatorSelector.prototype.centerAlignmentPadCalculator = function (table, column) { if (column == 0) return new CenterAlignment.FirstColumnPadCalculator(); if (column == table.columnCount - 1) return new CenterAlignment.LastColumnPadCalculator(); return new CenterAlignment.MiddleColumnPadCalculator(); }; PadCalculatorSelector.prototype.rightAlignmentPadCalculator = function (table, column) { if (column == 0) return new RightAlignment.FirstColumnPadCalculator(); if (column == table.columnCount - 1) return new RightAlignment.LastColumnPadCalculator(); return new RightAlignment.MiddleColumnPadCalculator(); }; return PadCalculatorSelector; }()); exports.PadCalculatorSelector = PadCalculatorSelector;