Someone reading rows.flat(3) can't tell why the depth is 3, or whether it was picked to mean "all the way down". Say why in a comment, give the number a name, or use Infinity to flatten every level.
A depth of 1 is allowed, because it's the default.
Configure
Off by default. To turn it on:
bunfig.toml
[lint.rules]
"unicorn/no-magic-array-flat-depth" = "error" # or "warn"
Examples
Reported:
const cells = tables.flat(2);
Not reported:
const cells = tables.flat(2 /* table, then row */);
const TABLE_DEPTH = 2;
const sameCells = tables.flat(TABLE_DEPTH);
const leaves = tree.flat(Infinity);
const rows = tables.flat(1);