Skip to content

@maxhealth.tech/prefab / rx / Rx

Class: Rx ​

Defined in: rx/rx.ts:16

Rx — Reactive expression builder.

Builds template expressions like "{{ count + 1 }}" or "{{ user.name }}" that are evaluated client-side by the prefab renderer.

Usage: rx('count') → "{{ count }}" rx('count').add(1) → "{{ count + 1 }}" rx('user').dot('name') → "{{ user.name }}" rx('items').length() → "{{ items | length }}" rx('price').currency('USD') → "{{ price | currency:'USD' }}" rx('active').then('Yes', 'No') → "{{ active ? 'Yes' : 'No' }}"

Constructors ​

Constructor ​

ts
new Rx(expression): Rx;

Defined in: rx/rx.ts:19

Parameters ​

ParameterType
expressionstring

Returns ​

Rx

Accessors ​

expression ​

Get Signature ​

ts
get expression(): string;

Defined in: rx/rx.ts:26

Raw expression string without {{ }} wrapper

Returns ​

string

Methods ​

toString() ​

ts
toString(): string;

Defined in: rx/rx.ts:31

Serialize to "{{ expression }}" template string

Returns ​

string


toJSON() ​

ts
toJSON(): string;

Defined in: rx/rx.ts:35

Returns ​

string


dot() ​

ts
dot(key): Rx;

Defined in: rx/rx.ts:42

Dot-path access: rx('user').dot('name') → "{{ user.name }}"

Parameters ​

ParameterType
keystring

Returns ​

Rx


at() ​

ts
at(index): Rx;

Defined in: rx/rx.ts:47

Index access: rx('items').at(0) → "{{ items.0 }}"

Parameters ​

ParameterType
indexnumber | Rx

Returns ​

Rx


add() ​

ts
add(other): Rx;

Defined in: rx/rx.ts:54

Parameters ​

ParameterType
otherstring | number | Rx

Returns ​

Rx


sub() ​

ts
sub(other): Rx;

Defined in: rx/rx.ts:58

Parameters ​

ParameterType
otherstring | number | Rx

Returns ​

Rx


mul() ​

ts
mul(other): Rx;

Defined in: rx/rx.ts:62

Parameters ​

ParameterType
otherstring | number | Rx

Returns ​

Rx


div() ​

ts
div(other): Rx;

Defined in: rx/rx.ts:66

Parameters ​

ParameterType
otherstring | number | Rx

Returns ​

Rx


mod() ​

ts
mod(other): Rx;

Defined in: rx/rx.ts:70

Parameters ​

ParameterType
otherstring | number | Rx

Returns ​

Rx


eq() ​

ts
eq(other): Rx;

Defined in: rx/rx.ts:76

Parameters ​

ParameterType
otherunknown

Returns ​

Rx


neq() ​

ts
neq(other): Rx;

Defined in: rx/rx.ts:80

Parameters ​

ParameterType
otherunknown

Returns ​

Rx


gt() ​

ts
gt(other): Rx;

Defined in: rx/rx.ts:84

Parameters ​

ParameterType
othernumber | Rx

Returns ​

Rx


gte() ​

ts
gte(other): Rx;

Defined in: rx/rx.ts:88

Parameters ​

ParameterType
othernumber | Rx

Returns ​

Rx


lt() ​

ts
lt(other): Rx;

Defined in: rx/rx.ts:92

Parameters ​

ParameterType
othernumber | Rx

Returns ​

Rx


lte() ​

ts
lte(other): Rx;

Defined in: rx/rx.ts:96

Parameters ​

ParameterType
othernumber | Rx

Returns ​

Rx


and() ​

ts
and(other): Rx;

Defined in: rx/rx.ts:102

Parameters ​

ParameterType
otherRx

Returns ​

Rx


or() ​

ts
or(other): Rx;

Defined in: rx/rx.ts:106

Parameters ​

ParameterType
otherRx

Returns ​

Rx


not() ​

ts
not(): Rx;

Defined in: rx/rx.ts:110

Returns ​

Rx


then() ​

ts
then(ifTrue, ifFalse): Rx;

Defined in: rx/rx.ts:116

Parameters ​

ParameterType
ifTrueunknown
ifFalseunknown

Returns ​

Rx


currency() ​

ts
currency(code?): Rx;

Defined in: rx/rx.ts:122

Parameters ​

ParameterType
code?string

Returns ​

Rx


percent() ​

ts
percent(decimals?): Rx;

Defined in: rx/rx.ts:126

Parameters ​

ParameterType
decimals?number

Returns ​

Rx


number() ​

ts
number(decimals?): Rx;

Defined in: rx/rx.ts:130

Parameters ​

ParameterType
decimals?number

Returns ​

Rx


round() ​

ts
round(decimals?): Rx;

Defined in: rx/rx.ts:134

Parameters ​

ParameterTypeDefault value
decimalsnumber0

Returns ​

Rx


compact() ​

ts
compact(decimals?): Rx;

Defined in: rx/rx.ts:138

Parameters ​

ParameterType
decimals?number

Returns ​

Rx


abs() ​

ts
abs(): Rx;

Defined in: rx/rx.ts:142

Returns ​

Rx


date() ​

ts
date(format?): Rx;

Defined in: rx/rx.ts:146

Parameters ​

ParameterType
format?string

Returns ​

Rx


time() ​

ts
time(): Rx;

Defined in: rx/rx.ts:150

Returns ​

Rx


datetime() ​

ts
datetime(): Rx;

Defined in: rx/rx.ts:154

Returns ​

Rx


upper() ​

ts
upper(): Rx;

Defined in: rx/rx.ts:158

Returns ​

Rx


lower() ​

ts
lower(): Rx;

Defined in: rx/rx.ts:162

Returns ​

Rx


truncate() ​

ts
truncate(maxLength): Rx;

Defined in: rx/rx.ts:166

Parameters ​

ParameterType
maxLengthnumber

Returns ​

Rx


pluralize() ​

ts
pluralize(word?): Rx;

Defined in: rx/rx.ts:170

Parameters ​

ParameterType
word?string

Returns ​

Rx


length() ​

ts
length(): Rx;

Defined in: rx/rx.ts:174

Returns ​

Rx


join() ​

ts
join(separator?): Rx;

Defined in: rx/rx.ts:178

Parameters ​

ParameterType
separator?string

Returns ​

Rx


first() ​

ts
first(): Rx;

Defined in: rx/rx.ts:182

Returns ​

Rx


last() ​

ts
last(): Rx;

Defined in: rx/rx.ts:186

Returns ​

Rx


selectattr() ​

ts
selectattr(attr): Rx;

Defined in: rx/rx.ts:190

Parameters ​

ParameterType
attrstring

Returns ​

Rx


rejectattr() ​

ts
rejectattr(attr): Rx;

Defined in: rx/rx.ts:194

Parameters ​

ParameterType
attrstring

Returns ​

Rx


default() ​

ts
default(value): Rx;

Defined in: rx/rx.ts:198

Parameters ​

ParameterType
valueunknown

Returns ​

Rx


pipe() ​

ts
pipe(name, ...args): Rx;

Defined in: rx/rx.ts:210

Append an arbitrary pipe filter: rx('x').pipe('humanName') → {{ x | humanName }}

Supports variadic args: .pipe('date', 'long') → {{ x | date:'long' }} Use this for custom pipes registered via registerPipe().

Parameters ​

ParameterType
namestring
...argsunknown[]

Returns ​

Rx

Released under the MIT License.