1.0.1 • Published 3 years ago

@hugop/discord-table v1.0.1

Weekly downloads
-
License
MIT
Repository
github
Last release
3 years ago

discord-table

npm (scoped) NPM Build Status

Discord Table is a very simple package to build Markdown tables through the Discord API. Taking some formatting parameters, it returns a string[] object, usable with the Discord API to print a table.

Usage

The content of the table is an Array of lines.

A line is an Array of cells.

A cell is an Array of sub-cells.

Javascript import

const dcTable = require('@hugop/discord-table')

TypeScript import

import {createDiscordTable} from "@hugop/discord-table";

Basic usage

 const headers = [
  ["USERNAME"], ["ROLES"], ["AGE"], ["DAYS SINCE JOINED"]
];
const content = [
  [["Jeremy"], ["Admin", "Regular"], ["18"], ["45 days"]],
  [["James"], ["Newcomer"], [], ["2 days"]],
  [["Marc"], ["Regular"], ["22"], ["20 days"]],
  [],
  [["Karl"], ["BANNED"], ["BANNED"], ["BANNED"]]
]
const result = dcTable.createDiscordTable({
  headers: headers,
  content: content,
  spacesBetweenColumns: [5, 5, 5],
  maxColumnLengths: [30, 30, 30, 30]
})

Result on Discord

Missing picture

Installation

npm link

This is a Node.js module available through the npm registry.

Installation:

$ npm install @hugop/discord-table

Features

  • Customizable maximum column length for each column
  • Customizable space between each column
  • Multi-line cells

Notes

  • You are responsible for ensuring that the resulting object fits the Discord API limitations (such as maximum length authorized per message).
  • The maximum width allowed by the table before a line wraps to another line depends on the client's screen width. You might need to adjust column lengths and space between columns to ensure that most users can see each line properly.
  • Some Emojis and special characters that are full width may shift how columns appear