Actualizacion maquina principal
[dotfiles/.git] / .config / coc / extensions / node_modules / coc-prettier / node_modules / stylelint / node_modules / table / dist / drawBorder.js
diff --git a/.config/coc/extensions/node_modules/coc-prettier/node_modules/stylelint/node_modules/table/dist/drawBorder.js b/.config/coc/extensions/node_modules/coc-prettier/node_modules/stylelint/node_modules/table/dist/drawBorder.js
new file mode 100644 (file)
index 0000000..beae57f
--- /dev/null
@@ -0,0 +1,96 @@
+'use strict';
+
+Object.defineProperty(exports, "__esModule", {
+  value: true
+});
+/**
+ * @typedef drawBorder~parts
+ * @property {string} left
+ * @property {string} right
+ * @property {string} body
+ * @property {string} join
+ */
+
+/**
+ * @param {number[]} columnSizeIndex
+ * @param {drawBorder~parts} parts
+ * @returns {string}
+ */
+const drawBorder = (columnSizeIndex, parts) => {
+  const columns = columnSizeIndex.map(size => {
+    return parts.body.repeat(size);
+  }).join(parts.join);
+
+  return parts.left + columns + parts.right + '\n';
+};
+
+/**
+ * @typedef drawBorderTop~parts
+ * @property {string} topLeft
+ * @property {string} topRight
+ * @property {string} topBody
+ * @property {string} topJoin
+ */
+
+/**
+ * @param {number[]} columnSizeIndex
+ * @param {drawBorderTop~parts} parts
+ * @returns {string}
+ */
+const drawBorderTop = (columnSizeIndex, parts) => {
+  return drawBorder(columnSizeIndex, {
+    body: parts.topBody,
+    join: parts.topJoin,
+    left: parts.topLeft,
+    right: parts.topRight
+  });
+};
+
+/**
+ * @typedef drawBorderJoin~parts
+ * @property {string} joinLeft
+ * @property {string} joinRight
+ * @property {string} joinBody
+ * @property {string} joinJoin
+ */
+
+/**
+ * @param {number[]} columnSizeIndex
+ * @param {drawBorderJoin~parts} parts
+ * @returns {string}
+ */
+const drawBorderJoin = (columnSizeIndex, parts) => {
+  return drawBorder(columnSizeIndex, {
+    body: parts.joinBody,
+    join: parts.joinJoin,
+    left: parts.joinLeft,
+    right: parts.joinRight
+  });
+};
+
+/**
+ * @typedef drawBorderBottom~parts
+ * @property {string} topLeft
+ * @property {string} topRight
+ * @property {string} topBody
+ * @property {string} topJoin
+ */
+
+/**
+ * @param {number[]} columnSizeIndex
+ * @param {drawBorderBottom~parts} parts
+ * @returns {string}
+ */
+const drawBorderBottom = (columnSizeIndex, parts) => {
+  return drawBorder(columnSizeIndex, {
+    body: parts.bottomBody,
+    join: parts.bottomJoin,
+    left: parts.bottomLeft,
+    right: parts.bottomRight
+  });
+};
+
+exports.drawBorder = drawBorder;
+exports.drawBorderBottom = drawBorderBottom;
+exports.drawBorderJoin = drawBorderJoin;
+exports.drawBorderTop = drawBorderTop;
\ No newline at end of file