Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/tripolskypetr/functools-kit
A library with helpers for react-declarative app backend development
https://github.com/tripolskypetr/functools-kit
functional-programming helpers lambda react-declarative serverless
Last synced: about 1 month ago
JSON representation
A library with helpers for react-declarative app backend development
- Host: GitHub
- URL: https://github.com/tripolskypetr/functools-kit
- Owner: tripolskypetr
- License: mit
- Created: 2024-11-09T14:27:21.000Z (2 months ago)
- Default Branch: master
- Last Pushed: 2024-11-27T17:34:27.000Z (about 1 month ago)
- Last Synced: 2024-11-27T18:26:04.570Z (about 1 month ago)
- Topics: functional-programming, helpers, lambda, react-declarative, serverless
- Language: TypeScript
- Homepage: https://github.com/react-declarative/react-declarative
- Size: 483 KB
- Stars: 1
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# func-kit
> A library with helpers for [react-declarative](https://github.com/react-declarative/react-declarative) app backend development
## What inside
The complete description is available [by this link](https://github.com/react-declarative/react-declarative/blob/master/docs/code/UTILS.md). This npm module exports the following TypeScript definitions:
1. **Utility Functions** :- `randomString`: Generates a random string using UUID.
- `compareFulltext`: Compares a search term against a data object.
- `compareArray`: Checks if two arrays are equal.
- `isObject`: Verifies if a value is an object.
- `formatText`: Formats a string based on a template with customizable options.
- `singleshot` and `singlerun`: Functions that run once and allow clearing/resetting.
- `debounce`: Creates a debounced version of a function.
- `retry`: Retries a function multiple times until it succeeds.
- `deepFlat`: Deep flattens an array.
- `memoize`: Caches function results based on argument changes.
- `trycatch`: Wraps a function with a try-catch block.
- `sleep`: Delays execution by a specified time.
- `cancelable`, `queued`, `execpool`: Wrappers for promise-based functions with enhanced functionality like cancellation and concurrency control.
- `createAwaiter`: Creates an awaitable promise and returns resolve and reject out of the closure.
2. **Interfaces and Types** :- `IParams`, `IClearable`, `ITaskStatus`, `ICounted`, `IError`, and various `IWrappedFn` types for defining functionalities related to tasks, observers, and clearing mechanisms.
- `TObserver`, `TSubject`, `TObservable`, `TBehaviorSubject`: Types representing observer and subject patterns for handling observable data streams.
3. **Classes** :- `Task`: Represents a task with status tracking.
- `Observer`, `Subject`, `BehaviorSubject`: Classes implementing observer/observable patterns.
- `EventEmitter`: Provides event management capabilities.
- `Operator`, `Source`: Utility classes for creating and manipulating observers.
4. **Constants** :- `CANCELED_PROMISE_SYMBOL`: A unique symbol representing cancellation status.