JSPM

discord-simpletable

1.1.6
    • ESM via JSPM
    • ES Module Entrypoint
    • Export Map
    • Keywords
    • License
    • Repository URL
    • TypeScript Types
    • README
    • Created
    • Published
    • Downloads 2
    • Score
      100M100P100Q25009F

    A DiscordSimpleTable builder for Discord.js

    Package Exports

    • discord-simpletable
    • discord-simpletable/DiscordSimpleTable.js

    This package does not declare an exports field, so the exports above have been automatically detected and optimized by JSPM instead. If any package subpath is missing, it is recommended to post an issue to the original package (discord-simpletable) to support the "exports" field. If that is not possible, create a JSPM override to customize the exports field for this package.

    Readme

    DiscordSimpleTable by Nicusch

    DiscordSimpleTable provides a way to create and format tables for Emebed messages in Discord. It allows customization of column headers, row data, and table appearance, including options for adding index columns and vertical bars.

    const DiscordSimpleTable = require('discord-simpletable');
    
    const data = [
      { name: "Nicusch", sizetype: "Big", count: 20 },
      { name: "Noner", sizetype: "Medium", count: 13 },
      { name: "Don", sizetype: "Extralarge", count: 55 },
      { name: "Han", sizetype: "ExtraMediumLarge", count: 33 },
    ];
    
    const columns = [
      { label: 'Username', key: 'name' },
      { label: 'Bucket Size', key: 'sizetype' },
      { label: 'Count', key: 'count' }
    ];
    
    const tableString = new DiscordSimpleTable(columns)
      .setJsonArrayInputs(data) // Set the data for the table
      .setStringOffset(2) // Add an offset to align column headers
      .addVerticalBar() // Add a vertical bar between columns
      .setIndexLabel('#') // Set the label for the index column (default is "#")
      .addIndex(1) // Add an index column starting at 1
      .build(); // Build the table
    
    // "const tableString" is now ready to be used
    // as an example in Discord.js Api
    
    const { EmbedBuilder } = require('discord.js'); // Import the EmbedBuilder
    
    const exampleEmbed = new EmbedBuilder()
        .setColor(0x0099FF) // Set your color
        .setTitle('Discord Simple Table') // Set your title
        .setDescription(tableString) // use our new custom made table

    Final Discord Embed:

    discord-simpletable

    You can also leave out the ".addVerticalBar()" and ".addIndex(1)"

    //...
    
      const tableString = new DiscordSimpleTable(columns)
        .setJsonArrayInputs(data)
        .setStringOffset(2)
        .build();
    
        // Note: .setIndexLabel('#') can also be removed since it wont be added when no .addIndex(1) exists
    
    //...

    discord-simpletable

    The rows and columns will have proper spacing, regardless of word length. For Discord.js, very long rows may not display well on all devices due to differences in screen sizes.

    Example to change empty space to '-'

    //...
      const tableString = new DiscordSimpleTable(columns, '-')
    //...

    Easy Install

    npm install discord-simpletable

    More Examples For Easy Understanding

    const DiscordSimpleTable = require('discord-simpletable');
    
    const data = [
      { name: "Nicusch", sizetype: "Big", count: 20 }
    ]
    
    const columns = [
      { label: 'Username', key: 'name' },
      { label: 'Bucket Size', key: 'sizetype' },
      { label: 'Count', key: 'count' }
    ];
    
    const tableString = new DiscordSimpleTable(columns)
      .setJsonArrayInputs(data)
      .setStringOffset(1) // only using one space
      .build();
    

    discord-simpletable

    const DiscordSimpleTable = require('discord-simpletable');
    
    const data = [
      { name: "Nicusch", sizetype: "Big", count: 20 },
      { name: "Noner", sizetype: "Medium", count: 13 },
      { name: "Don", sizetype: "Extralarge", count: 55 },
      { name: "Han", sizetype: "ExtraMediumLarge", count: 33 },
    ];
    
    const columns = [
      { label: 'Username', key: 'name' },
      { label: 'Bucket Size', key: 'sizetype' },
      { label: 'Count', key: 'count' }
    ];
    
    const tableString = new DiscordSimpleTable(columns, '-') // you can add other spacing chars like '-'
      .setJsonArrayInputs(data)
      .setStringOffset(2)
      .build();
    

    discord-simpletable