Socket
Socket
Sign inDemoInstall

realar

Package Overview
Dependencies
Maintainers
1
Versions
129
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

realar - npm Package Compare versions

Comparing version 0.6.0-alpha.9 to 0.6.0-alpha.10

15

build/index.js

@@ -442,2 +442,9 @@ "use strict";

};
const make_flag = (initial, is_signal) => {
initial = !!initial;
const h = box(initial, 0, is_signal && pure_arrow_fn_returns_undef);
h[key_is_signal] = is_signal;
h[key_has_default] = 1;
return fill_entity(h, proto_entity_writtable_leaf, 1, initial, 0, (v) => h[1](!!v));
};
const get_getter_to_reactionable_or_custom = (re) => ((re && re[key_get]) || (typeof re === const_string_function ? re : () => re));

@@ -453,4 +460,2 @@ const make_value_combine_handler = (cfg, fn) => {

const value_trigger = (initial) => make_trigger(initial);
const value_trigger_flag = (initial) => make_trigger(!!initial, 1);
const value_trigger_flag_invert = (initial) => make_trigger(!initial, 1);
const value_from = (get, set) => {

@@ -464,7 +469,7 @@ const h = sel(get[key_get] || get).slice(0, 1);

const value_combine = (cfg, fn) => fill_entity(make_value_combine_handler(cfg, fn), proto_entity_readable);
value_trigger_flag[key_invert] = value_trigger_flag_invert;
value_trigger[key_flag] = value_trigger_flag;
const value_flag = (initial) => make_flag(initial);
value[key_trigger] = value_trigger;
value[key_from] = value_from;
value[key_combine] = value_combine;
value[key_flag] = value_flag;
const signal = (function (initial) {

@@ -489,2 +494,3 @@ const h = box(initial, 0, pure_arrow_fn_returns_undef);

};
const signal_flag = (initial) => make_flag(initial, 1);
signal_trigger_flag[key_invert] = signal_trigger_flag_invert;

@@ -494,2 +500,3 @@ signal_trigger[key_flag] = signal_trigger_flag;

signal[key_from] = signal_from;
signal[key_flag] = signal_flag;
//

@@ -496,0 +503,0 @@ // Realar internal

@@ -10,2 +10,3 @@ import { FC } from 'react';

} | ((value: T) => void);
declare type Re_Exemplar = Re<any>;
declare type Re_CfgExemplar = {

@@ -44,3 +45,3 @@ [key: string]: Re<any>;

unsafe: () => () => void;
func: <T extends () => any>(fn: T) => T;
func: <T extends (...args: any[]) => any>(fn: T) => T;
};

@@ -186,10 +187,18 @@ declare type E_SetPartial<T> = Equals<T, void> extends true ? {

(func: (value: Arg) => any, emptyValue: WillExtract<O>): Ret;
(re: Re_Exemplar, emptyValue: WillExtract<O>): Ret;
(func?: (value: Arg) => any): WillRet;
(re?: Re_Exemplar): WillRet;
track(func: (value: Arg) => any, emptyValue: WillExtract<O>): Ret;
track(re: Re_Exemplar, emptyValue: WillExtract<O>): Ret;
track(func?: (value: Arg) => any): WillRet;
track(re?: Re_Exemplar): WillRet;
not: {
(func: (value: Arg) => any, emptyValue: WillExtract<O>): Ret;
(re: Re_Exemplar, emptyValue: WillExtract<O>): Ret;
(func?: (value: Arg) => any): WillRet;
(re?: Re_Exemplar): WillRet;
track(func: (value: Arg) => any, emptyValue: WillExtract<O>): Ret;
track(re: Re_Exemplar, emptyValue: WillExtract<O>): Ret;
track(func?: (value: Arg) => any): WillRet;
track(re?: Re_Exemplar): WillRet;
};

@@ -201,6 +210,10 @@ };

(func?: (value: I) => any): Ret;
(re?: Re_Exemplar): Ret;
track(func?: (value: I) => any): Ret;
track(re?: Re_Exemplar): Ret;
not: {
(func?: (value: I) => any): Ret;
(re?: Re_Exemplar): Ret;
track(func?: (value: I) => any): Ret;
track(re?: Re_Exemplar): Ret;
};

@@ -271,4 +284,5 @@ };

}
declare type Value<I = undefined, O = I> = E_SetPartial<I> & E_ValPartial<I, WillExpand<O>> & E_Value<I, O>;
declare type Signal<I = void, O = I> = E_SetPartial<I> & E_ValPartial<I, WillExpand<O>> & E_Signal<I, O>;
declare type E_IfAnyInput<I> = Equals<I, any> extends true ? (() => void) : {};
declare type Value<I = undefined, O = I> = E_SetPartial<I> & E_ValPartial<I, WillExpand<O>> & E_Value<I, O> & E_IfAnyInput<I>;
declare type Signal<I = void, O = I> = E_SetPartial<I> & E_ValPartial<I, WillExpand<O>> & E_Signal<I, O> & E_IfAnyInput<I>;
declare type ValueReadonly<O> = E_ValReadonlyPartial<WillExpand<O>> & E_ValueReadonly<O>;

@@ -282,11 +296,7 @@ declare type SignalReadonly<O> = E_ValReadonlyPartial<WillExpand<O>> & E_SignalReadonly<O>;

<T>(initial: T): Value<T>;
flag: {
(): Value<boolean>;
(initial: boolean): Value<boolean>;
invert: {
(): Value<boolean>;
(initial: boolean): Value<boolean>;
};
};
};
flag: {
(): Value<any, boolean>;
(initial: any): Value<any, boolean>;
};
from: {

@@ -374,10 +384,14 @@ <O>(get: Re<O>): ValueReadonly<WillExpand<O>>;

flag: {
(): Signal<boolean>;
(initial: boolean): Signal<boolean>;
(): Signal<void, boolean>;
(initial: boolean): Signal<void, boolean>;
invert: {
(): Signal<boolean>;
(initial: boolean): Signal<boolean>;
(): Signal<void, boolean>;
(initial: boolean): Signal<void, boolean>;
};
};
};
flag: {
(): Signal<any, boolean>;
(initial: any): Signal<any, boolean>;
};
from: {

@@ -384,0 +398,0 @@ <O>(get: Re<O>): SignalReadonly<O>;

{
"name": "realar",
"version": "0.6.0-alpha.9",
"version": "0.6.0-alpha.10",
"description": "Advanced state manager for React",

@@ -91,3 +91,3 @@ "repository": {

},
"gitHead": "5c4a08ac3e7d25f38eedc35d8e13bc18ab34f683"
"gitHead": "3c87cbcdd157178668ebc3db29f126f55e2870e5"
}

@@ -21,3 +21,3 @@ # Realar

You can make stores and "actions"
You can make stores and "actions" <sup>_[play on runkit](https://runkit.com/betula/60c071ff26dea9001373459c)_</sup>

@@ -31,3 +31,3 @@ ```javascript

And bind to React easily
And bind to React easily <sup>_[play on codesandbox](https://codesandbox.io/s/realar-readme-second-example-ld0g1?file=/src/App.tsx)_</sup>

@@ -38,7 +38,9 @@ ```javascript

return <p>{state} <button onClick={inc}>+</button></p>
return <p>{state}
<button onClick={inc}>+</button>
</p>
}
```
You can make streams
You can make streams <sup>_[play on runkit](https://runkit.com/betula/60c073765105e1001311b294)_</sup>

@@ -50,6 +52,6 @@ ```javascript

.filter()
.to(add);
.to(add)
```
And bind to React
And bind to React <sup>_[play on codesandbox](https://codesandbox.io/s/realar-readme-fourth-example-18pcj?file=/src/App.tsx)_</sup>

@@ -71,10 +73,10 @@ ```javascript

class Counter {
@prop state = 0;
@prop state = 0
add = (num) => this.state += num;
inc = () => this.add(1);
add = (num) => this.state += num
inc = () => this.add(1)
}
```
And bind to React
And bind to React <sup>_[play on codesandbox](https://codesandbox.io/s/realar-readme-example-with-classes-j4q4e?file=/src/App.tsx)_</sup>

@@ -85,17 +87,20 @@ ```javascript

return <p>{state} <button onClick={inc}>+</button></p>
return <p>{state}
<button onClick={inc}>+</button>
</p>
})
```
And you can use it together
And you can use it together <sup>_[play on codesandbox](https://codesandbox.io/s/realar-readme-example-together-cppu6?file=/src/App.tsx)_</sup>
```javascript
class Positive {
@cache get state() {
return store.val > 0 ? 'positive' : 'non'
}
const counter = new Counter()
const store = value.from(() => counter.state)
constructor() {
sync(() => this.state, console.log)
}
const App = () => {
const state = useValue(() => store.val)
return <p>{state}
<button onClick={counter.inc}>+</button>
</p>
}

@@ -108,45 +113,48 @@ ```

- [Get started](./docs/get-started.md)
- [Classes usage](./docs/classes.md)
- [Core](./docs/core.md)
- [OOP usage](./docs/oop.md)
- Examples
- [Simple form](./docs/examples.md#simple-form)
- [Basic usage](./docs/examples.md#basic-usage)
- API
- Declarative framework
- [value](./docs/api.md#value)
- [signal](./docs/api.md#signal)
- [value](./docs/api-value.md)
- [signal](./docs/api-signal.md)
- Imperative framework
- [on](./docs/api.md#on)
- on.once
- [sync](./docs/api.md#sync)
- [cycle](./docs/api.md#cycle)
- Class decorators for TRFP
- [prop]()
- [prop](./docs/api.md#prop)
- [cache](./docs/api.md#cache)
- Shared technique
- [shared]()
- [initial]()
- [free]()
- [mock]()
- [unmock]()
- [shared](./docs/api.md#shared)
- [initial](./docs/api.md#initial)
- [free](./docs/api.md#free)
- [mock](./docs/api.md#mock)
- [unmock](./docs/api.md#unmock)
- Unsubscribe scopes control
- [isolate]()
- [un]()
- Additional api
- [local.inject]()
- [contextual]()
- [pool]()
- [un](./docs/api.md#un)
- isolate
- Async api
- [pool](./docs/api.md#pool)
- Track and transactions
- [transaction]()
- [untrack]()
- [transaction](./docs/api.md#transaction)
- [untrack](./docs/api.md#untrack)
- [untrack.func](./docs/api.md#untrackfunc)
- React bindings
- [observe]()
- [useValue]()
- [useValues]()
- [useLocal]()
- [useScoped]()
- [useShared]()
- [Scope]()
- [useJsx]()
- [observe](./docs/api.md#observe)
- [useValue](./docs/api.md#usevalue)
- [useValues](./docs/api.md#usevalues)
- useLocal
- [useScoped](./docs/api.md#usescoped)
- useShared
- Scope
- [useJsx](./docs/api.md#usejsx)
### Demos
+ [Basic usage on codesandbox](https://codesandbox.io/s/realar-basic-example-41vvd?file=/src/App.tsx).
+ [Hello](https://github.com/realar-project/hello) - shared state demonstration.

@@ -153,0 +161,0 @@ + [Todos](https://github.com/realar-project/todos) - todomvc implementation.

@@ -758,2 +758,10 @@ import React, { Context, FC } from 'react';

const make_flag = (initial, is_signal?) => {
initial = !!initial;
const h = (box as any)(initial, 0, is_signal && pure_arrow_fn_returns_undef);
h[key_is_signal] = is_signal;
h[key_has_default] = 1;
return fill_entity(h, proto_entity_writtable_leaf, 1, initial, 0, (v) => h[1](!!v));
}
const get_getter_to_reactionable_or_custom = (re) => (

@@ -779,4 +787,2 @@ (re && re[key_get]) || (typeof re === const_string_function ? re : () => re)

const value_trigger = (initial) => make_trigger(initial);
const value_trigger_flag = (initial) => make_trigger(!!initial, 1);
const value_trigger_flag_invert = (initial) => make_trigger(!initial, 1);
const value_from = (get, set?) => {

@@ -789,8 +795,8 @@ const h = sel(get[key_get] || get).slice(0, 1);

const value_combine = (cfg, fn?) => fill_entity(make_value_combine_handler(cfg, fn), proto_entity_readable);
const value_flag = (initial) => make_flag(initial)
value_trigger_flag[key_invert] = value_trigger_flag_invert;
value_trigger[key_flag] = value_trigger_flag;
value[key_trigger] = value_trigger as any;
value[key_from] = value_from;
value[key_combine] = value_combine;
value[key_flag] = value_flag as any;

@@ -816,2 +822,3 @@

}
const signal_flag = (initial) => make_flag(initial, 1)

@@ -822,2 +829,3 @@ signal_trigger_flag[key_invert] = signal_trigger_flag_invert;

signal[key_from] = signal_from;
signal[key_flag] = signal_flag as any;

@@ -824,0 +832,0 @@

@@ -51,2 +51,3 @@ import { FC } from 'react';

type Re_Exemplar = Re<any>;
type Re_CfgExemplar = {

@@ -92,3 +93,3 @@ [key: string]: Re<any>

unsafe: () => () => void;
func: <T extends () => any>(fn: T) => T;
func: <T extends (...args: any[]) => any>(fn: T) => T;
}

@@ -241,10 +242,18 @@

(func: (value: Arg) => any, emptyValue: WillExtract<O>): Ret // untracked by default
(re: Re_Exemplar, emptyValue: WillExtract<O>): Ret
(func?: (value: Arg) => any): WillRet
(re?: Re_Exemplar): WillRet
track(func: (value: Arg) => any, emptyValue: WillExtract<O>): Ret
track(re: Re_Exemplar, emptyValue: WillExtract<O>): Ret
track(func?: (value: Arg) => any): WillRet
track(re?: Re_Exemplar): WillRet
not: {
(func: (value: Arg) => any, emptyValue: WillExtract<O>): Ret // untracked by default
(re: Re_Exemplar, emptyValue: WillExtract<O>): Ret
(func?: (value: Arg) => any): WillRet
(re?: Re_Exemplar): WillRet
track(func: (value: Arg) => any, emptyValue: WillExtract<O>): Ret
track(re: Re_Exemplar, emptyValue: WillExtract<O>): Ret
track(func?: (value: Arg) => any): WillRet
track(re?: Re_Exemplar): WillRet
}

@@ -256,6 +265,10 @@ }

(func?: (value: I) => any): Ret // untracked by default
(re?: Re_Exemplar): Ret
track(func?: (value: I) => any): Ret
track(re?: Re_Exemplar): Ret
not: {
(func?: (value: I) => any): Ret // untracked by default
(re?: Re_Exemplar): Ret
track(func?: (value: I) => any): Ret
track(re?: Re_Exemplar): Ret
}

@@ -358,6 +371,7 @@ }

type E_IfAnyInput<I> = Equals<I, any> extends true ? (() => void) : {};
type Value<I = undefined, O = I> = E_SetPartial<I> & E_ValPartial<I, WillExpand<O>> & E_Value<I, O>
type Signal<I = void, O = I> = E_SetPartial<I> & E_ValPartial<I, WillExpand<O>> & E_Signal<I, O>
type Value<I = undefined, O = I> = E_SetPartial<I> & E_ValPartial<I, WillExpand<O>> & E_Value<I, O> & E_IfAnyInput<I>
type Signal<I = void, O = I> = E_SetPartial<I> & E_ValPartial<I, WillExpand<O>> & E_Signal<I, O> & E_IfAnyInput<I>

@@ -382,13 +396,7 @@ type ValueReadonly<O> = E_ValReadonlyPartial<WillExpand<O>> & E_ValueReadonly<O>

<T>(initial: T): Value<T>;
flag: {
(): Value<boolean>;
(initial: boolean): Value<boolean>;
invert: {
(): Value<boolean>;
(initial: boolean): Value<boolean>;
}
}
};
flag: {
(): Value<any, boolean>;
(initial: any): Value<any, boolean>;
}

@@ -482,8 +490,8 @@ from: {

flag: {
(): Signal<boolean>;
(initial: boolean): Signal<boolean>;
(): Signal<void, boolean>;
(initial: boolean): Signal<void, boolean>;
invert: {
(): Signal<boolean>;
(initial: boolean): Signal<boolean>;
(): Signal<void, boolean>;
(initial: boolean): Signal<void, boolean>;
}

@@ -493,2 +501,7 @@ }

flag: {
(): Signal<any, boolean>;
(initial: any): Signal<any, boolean>;
}
from: {

@@ -495,0 +508,0 @@ <O>(get: Re<O>): SignalReadonly<O>

Sorry, the diff of this file is not supported yet

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc