UNPKG

@cursorify/react

Version:

Customizable cursor component for any style 🕹️

49 lines (48 loc) 1.34 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); const react_1 = require("react"); const reducer = (state, action) => { switch (action.type) { case 'UPDATE_STYLE': return { ...state, cursorStyle: action.payload, }; case 'UPDATE_MOUSE_STATE': return { ...state, mouseState: action.payload, }; case 'UPDATE_CURSOR': return { ...state, cursor: action.payload, }; case 'UPDATE_DELAY': return { ...state, delay: action.payload, }; case 'UPDATE_OPACITY': return { ...state, opacity: action.payload, }; case 'UPDATE_VISIBLE_DEFAULT_CURSOR': return { ...state, defaultCursorVisible: action.payload, }; case 'UPDATE_ENABLED': return { ...state, enabled: action.payload, }; default: return state; } }; const useCursorifyReducer = (defaultState) => { return (0, react_1.useReducer)(reducer, defaultState); }; exports.default = useCursorifyReducer;