Skip to content

useFlatMap (since v1.0.0)

Diagnostic Category: lint/complexity/useFlatMap

Sources:

Promotes the use of .flatMap() when map().flat() are used together.

const array = ["split", "the text", "into words"];
array.map(sentence => sentence.split(' ')).flat();
complexity/useFlatMap.js:2:1 lint/complexity/useFlatMap  FIXABLE  ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━

   The call chain .map().flat() can be replaced with a single .flatMap() call.
  
    1 │ const array = ["split", "the text", "into words"];
  > 2 │ array.map(sentence => sentence.split(' ')).flat();
   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
    3 │ 
  
   Safe fix: Replace the chain with .flatMap().
  
    1 1  const array = ["split", "the text", "into words"];
    2  - array.map(sentence·=>·sentence.split('·')).flat();
      2+ array.flatMap(sentence·=>·sentence.split('·'));
    3 3  
  
const array = ["split", "the text", "into words"];
array.map(sentence => sentence.split(' ')).flat(1);
complexity/useFlatMap.js:2:1 lint/complexity/useFlatMap  FIXABLE  ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━

   The call chain .map().flat() can be replaced with a single .flatMap() call.
  
    1 │ const array = ["split", "the text", "into words"];
  > 2 │ array.map(sentence => sentence.split(' ')).flat(1);
   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
    3 │ 
  
   Safe fix: Replace the chain with .flatMap().
  
    1 1  const array = ["split", "the text", "into words"];
    2  - array.map(sentence·=>·sentence.split('·')).flat(1);
      2+ array.flatMap(sentence·=>·sentence.split('·'));
    3 3  
  
const array = ["split", "the text", "into words"];
array.map(sentence => sentence.split(' ')).flat(2);