xstate-helpers
Version:
A collection of helpers for XState (with React).
20 lines (14 loc) • 578 B
JavaScript
;
Object.defineProperty(exports, '__esModule', { value: true });
var React = require('react');
var react = require('@xstate/react');
function useStateCan(service, event) {
return react.useSelector(service, React.useCallback(state => {
if (typeof (state === null || state === void 0 ? void 0 : state.can) !== 'function') {
throw new Error(`Provided service of useStateCan() is invalid`);
}
return state.can(event);
}, // eslint-disable-next-line react-hooks/exhaustive-deps
[JSON.stringify(event)]));
}
exports.useStateCan = useStateCan;