GithubNPM
Options
All
  • Public
  • Public/Protected
  • All
Menu

RxJS Ninja - Booleans

The RXJS Ninja Logo

rxjs-boolean

Website | API Documentation | Changelog

@rxjs-ninja/rxjs-boolean provides operators for querying, filtering and modifying boolean values, and Observable for generating boolean emitters.

Function and Operator categories

Create

Functions and Operators for creating Observable boolean values

const numbers = [0, 1, 0, 0, 1, 0, 1];
const strings = ['RxJS', '', '', 'Ninja', 'TypeScript'];

// Generate a boolean array from numbers
fromBoolean(numbers).subscribe();
// Output: `false, true, false, false, true, false, true`

// Generate a boolean array from numbers
fromBoolean(strings).subscribe();
// Output: `true, false, false, true, true`

Filter

Operators for filtering Observable sources for truthy values

const strings$ = from(['RxJS', '', '', 'Ninja', 'TypeScript', '', 'Angular']);

// Get the first truthy value
strings$.pipe(firstTruthy()).subscribe();
// Output: `RxJS`

// Get the first truthy value that is over length of 6
strings$.pipe(firstTruthy((v) => v.length > 5)).subscribe();
// Output: `TypeScript`

// Get the last truthy value
strings$.pipe(lastTruthy()).subscribe();
// Output: `Angular`

// Get the last truthy value of less than 5 characters
strings$.pipe(lastTruthy((v) => v.length < 5)).subscribe();
// Output: `RxJS`

Modify

Operators for modifying boolean values

const source$ = from([false, true, true, false]);

// Flip the boolean value
source$.pipe(flip()).subscribe();
// Output: `true, false, false, true`

Validation

Operators that provide boolean output based on checks against source values

const input = ['4485275742308327', '1111222233334444', '111133332224444'];
from(input).pipe(luhnCheck()).subscribe();
// Output: `[true, true, false]`

Generated using TypeDoc, the 18/11/2022 at 13:22:58