UNPKG

ayanami

Version:
16 lines (15 loc) 699 B
import * as React from 'react'; import get from 'lodash/get'; import { combineWithIkari } from '../core'; import { useSubscribeAyanamiState } from './use-subscribe-ayanami-state'; export function useAyanamiInstance(ayanami, config) { var ikari = React.useMemo(function () { return combineWithIkari(ayanami); }, [ayanami]); var state = useSubscribeAyanamiState(ayanami, config ? config.selector : undefined); React.useEffect(function () { return function () { var isDestroyWhenUnmount = get(config, 'destroyWhenUnmount', false); if (isDestroyWhenUnmount) { ayanami.destroy(); } }; }, [ayanami, config]); return [state, ikari.triggerActions]; }