@weebuinc/web-kit
v0.1.2
Published
Weebu Web Utility Kit
Downloads
5
Readme
Web Kit
A library of functions and utilities to simplify the web development process. Checkout the full docs.
Getting Started
Getting setup is a snap.
Download the web-kit library.
npm install @weebuinc/web-kit
Import functions into your project.
import { wait } from '@weebuinc/web-kit';
export async function waitForSeconds(seconds: number) {
await wait(seconds * 1000);
}
Functions
Parsers
Argumenter
This function that can take parameters, in any order, and returns a class that parses the values by type.
interface Argumenter {
array: Array<any>;
boolean: boolean;
function: Function;
instance<T>(type: { new (...args): T } | (Function & { prototype: T })): T;
nil: null;
null: null;
number: number;
object: Object;
string: string;
symbol: symbol;
}
function argumenter(...args): Argumenter;
Reducers
withCatch
This function wraps a callback code block and returns an object containing either the returned value of the callback or the error thrown by it.
interface WithCatchReturn<E, R> {
result?: R;
error?: E;
}
export function withCatch<E = Error, R = any>(cb: () => R): WithCatchReturn<E, R>;
export function withCatch<E = Error, R = any>(cb: () => Promise<R>): Promise<WithCatchReturn<E, R>>;
Timers
debounce
This function accepts a callback and returns a dispatch that debounces the callback.
type DebounceCallback = (...args) => Awaited<any>;
type DebounceDispatch<C extends DebounceCallback> = (...params: Parameters<C>) => Awaited<void>;
export function debounce<C extends DebounceCallback>(cb: C): DebounceDispatch<C>;
export function debounce<C extends DebounceCallback>(cb: C, timeout: number): DebounceDispatch<C>;
epoch
This function returns the unix epoch timestamp for the current time
export function epoch(): number;
lapse
This function returns another function that calculates the lapse period of time in-between its subsequent calls
type TimeUnit = 'milliseconds' | 'ms' | 'seconds' | 's' | 'minutes' | 'm' | 'hours' | 'h' | 'days' | 'd';
type Lap = (unit?: TimeUnit) => number;
export function lapse(unit: TimeUnit = 'ms'): Lap;
wait
This function returns a void promise that resolves after a specified amount of time.
export function wait(): Promise<void>;
export function wait(milliseconds: number): Promise<void>;
Transformers
camel
This function takes an input string and converts it to camel case.
export function camel(value: string): string;
kebab
This function takes an input string and converts it to kebab case.
export function kebab(value: string): string;
snake
This function takes an input string and converts it to snake case.
export function snake(value: string): string