UNPKG

nolimitstore

Version:

A lightweight Redux-like store for React and React Native, with hooks and selector support. Built with TypeScript, no boilerplate, and full reactivity via useSyncExternalStore.

22 lines (21 loc) 615 B
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.createStore = createStore; function createStore(initialState, reducer) { let state = initialState; let listeners = []; function getState() { return state; } function dispatch(action) { state = reducer(state, action); listeners.forEach(listener => listener()); } function subscribe(listener) { listeners.push(listener); return () => { listeners = listeners.filter(l => l !== listener); }; } return { getState, dispatch, subscribe }; }