API reference@evolu/commonArray › concatArrays

Call Signature

function concatArrays<T>(
  first: readonly [T, T],
  second: readonly T[],
): readonly [T, T];

Defined in: packages/common/src/Array.ts:576

Concatenates two arrays, returning a new readonly array.

Returns a non-empty array when at least one input is non-empty.

Concatenating non-empty inputs

import {
  assertEqual,
  assertType,
  concatArrays,
  type NonEmptyReadonlyArray,
} from "@evolu/common";

const nonEmpty: NonEmptyReadonlyArray<number> = [1];
const joined = concatArrays([1, 2], [3, 4]);
const fromLeft = concatArrays(nonEmpty, []);
const fromRight = concatArrays([], nonEmpty);

assertEqual(joined, [1, 2, 3, 4]);
assertType<NonEmptyReadonlyArray<number>, typeof fromLeft>();
assertType<NonEmptyReadonlyArray<number>, typeof fromRight>();

Call Signature

function concatArrays<T>(
  first: readonly T[],
  second: readonly [T, T],
): readonly [T, T];

Defined in: packages/common/src/Array.ts:581

Second non-empty.

Call Signature

function concatArrays<T>(
  first: readonly T[],
  second: readonly T[],
): readonly T[];

Defined in: packages/common/src/Array.ts:586

Both possibly empty.