UNPKG

create-vite-app-cli

Version:

a fast create webapp template cli, perfect engineering development experience, currently supported template presets include: - `react-ts` (React + TypeScript + Vite + Pnpm + Zustand + Openapi + Docker) - `vue-ts` (Vue 3 + TypeScript + Vite + Pnpm + Pinia

25 lines (19 loc) 688 B
import { StateCreator, StoreMutatorIdentifier } from "zustand"; type Logger = < T, Mps extends [StoreMutatorIdentifier, unknown][] = [], Mcs extends [StoreMutatorIdentifier, unknown][] = [], >( f: StateCreator<T, Mps, Mcs>, name?: string, ) => StateCreator<T, Mps, Mcs>; type LoggerImpl = <T>(f: StateCreator<T, [], []>, name?: string) => StateCreator<T, [], []>; const loggerImpl: LoggerImpl = (f, name) => (set, get, store) => { const loggedSet: typeof set = (...a) => { set(...a); console.log(...(name ? [`${name}:`] : []), get()); }; store.setState = loggedSet; return f(loggedSet, get, store); }; export const logger = loggerImpl as unknown as Logger;