https://github.com/appbaseio/reactivecore
Core architecture of reactive UI libraries
https://github.com/appbaseio/reactivecore
Last synced: about 1 year ago
JSON representation
Core architecture of reactive UI libraries
- Host: GitHub
- URL: https://github.com/appbaseio/reactivecore
- Owner: appbaseio
- License: apache-2.0
- Created: 2017-11-08T16:18:54.000Z (over 8 years ago)
- Default Branch: master
- Last Pushed: 2025-03-03T16:53:16.000Z (over 1 year ago)
- Last Synced: 2025-06-10T00:43:38.097Z (about 1 year ago)
- Language: JavaScript
- Size: 973 KB
- Stars: 33
- Watchers: 5
- Forks: 28
- Open Issues: 8
-
Metadata Files:
- Readme: README.md
- Changelog: CHANGELOG.md
- License: LICENSE
Awesome Lists containing this project
README
# `reactivecore`
[](https://badge.fury.io/js/%40appbaseio%2Freactivecore)
This is the platform agnostic core architecture of reactive UI libraries.
## Installation
```
yarn add @appbaseio/reactivecore
```
## Usage and documentation
### Create store:
```
import configureStore from "@appbaseio/reactivecore";
```
### Supported actions:
Import via:
```
import { } from "@appbaseio/reactivecore/lib/actions"
```
| Action | Usage |
|---------------------------|:------------------------------------------------------|
| `addComponent` | to register a component in the store |
| `removeComponent` | to remove a component from the store |
| `watchComponent` | to set up component subscription |
| `setQuery` | to set the component query in the store |
| `setQueryOptions` | to add external query options |
| `logQuery` | Executed automatically to log query for gatekeeping |
| `executeQuery` | Executed automatically (whenever necessary, based on the dependency tree) when the query of a component is updated|
| `updateHits` | updates results from elasticsearch query |
| `updateQuery` | to update the query in the store - called when a change is triggered in the component|
| `loadMore` | for infinte loading and pagination |
### Utility methods
Import via:
```
import { } from "@appbaseio/reactivecore/lib/utils"
```
| Method | Usage |
|-----------------------|:----------------------------------------------------------|
| `isEqual` | Compare two objects/arrays |
| `debounce` | Standard debounce |
| `getQueryOptions` | returns applied query options (supports `size` & `from`) |
| `pushToAndClause` | Pushes component to leaf `and` node. Handy for internal component registration |
| `checkValueChange` | checks and executes before/onValueChange for sensors |
| `getAggsOrder` | returns aggs order query based on `sortBy` prop |
| `checkPropChange` | checks for props changes that would need to update the query via callback |
| `checkSomePropChange` | checks for any prop change in the propsList and invokes the callback |
## Changelog
Check the [Changelog](./CHANGELOG.md) doc