list.append()

The modified list.append() function returns a copy of $list with $val added and/or with multiple $values added to the end.

The function is modified by adding arbitrary values to the end of the parameters to preserve the original functionality.

// Sass.
@use 'sass:list';

// The `list.append()` function.
@function append($list, $val, $separator: auto, $values...) {
  @each $value in list.join(($val,), $values, comma) {
    $list: list.append($list, $value, $separator);
  }
  @return $list;
}

Parameters

$list

The list to append the $val and/or $values into.

$val

The value to append to the end of $list.

$separator

The separator comma, space or slash of the list. Default, auto.

$values...

Additional values to append into $list.

Return

Returns a copy of $list with $val and/or $values added to the end.

Examples

// Use.
@use 'angular-package/sass/list';

// Examples.
@debug list.append(10px 20px, 30px); // 10px 20px 30px
@debug list.append((red, green), blue, space); // red green blue

// additional values
@debug list.append((blue, red), green, auto, blue, red); // blue, red, green, blue, red
@debug list.append(10px 20px, 30px 40px, auto, 1px, 15px); // 10px 20px (30px 40px) 1px 15px
@debug list.append(10px, 20px, auto, 1em, 2rem); // 10px 20px 1em 2rem
@debug list.append(10px 20px, 30px 40px, auto, 1px, 15px, (1px 2px 3px)); // 10px 20px (30px 40px) 1px 15px (1px 2px 3px)
@debug list.append((10px, 20px), 30px 40px, auto, 1px, 15px, (1px 2px 3px), (4px, 5px)); // 10px, 20px, 30px 40px, 1px, 15px, 1px 2px 3px, (4px, 5px)

Last updated