Skip to content

Headers in Table don't calculate the size correctly if using emoticons like "🧪" #210

@mastrzyz

Description

@mastrzyz

For some reason with the following code :

const baseColumns = [
  ["🧪aaaa", ""],
  ["A", "B"]
];

const config = {
  spanningCells: [{ col: 0, row: 0, colSpan: 2 }]
};

console.log(table(baseColumns, config));

We get the following error from table :
subjectWidth: 6 , containerwidth:5
node_modules/table/dist/src/alignString.js

    if (subjectWidth > containerWidth) {
        throw new Error('Subject parameter value width cannot be greater than the container width.');
    }

This does not repro if I remove the emoticon

const baseColumns = [
  ["aaaaaaaaaaaaaaaaaaaaaa", ""],
  ["A", "B"]
];

const config = {
  spanningCells: [{ col: 0, row: 0, colSpan: 2 }]
};

console.log(table(baseColumns, config));

output.

╔═══════╗
║ aaaaa ║
║ aaaaa ║
║ aaaaa ║
║ aaaaa ║
║ aa    ║
╟───┬───╢
║ A │ B ║
╚═══╧═══╝

Note this also repros if I use colSpan instead of header.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions