// import react import Signal, { effect } from '../signal'; // create signal const UserSignal = new Signal.State(null); export const loading = new Signal.State(true); // set to window if (typeof window !== 'undefined') window.UserSignal = UserSignal; // effect effect(() => { // cehck user id if (!UserSignal.get()) return; // check $crisp if (typeof window === 'undefined') return; // check crisp if (!window.$crisp) return; // user const user = UserSignal.get(); // add user email if (!user?.email) return; // set email window.$crisp.push(['set', 'user:email', user.email]); // return user return UserSignal.get()?.id; }); /** * export api signal */ export default UserSignal;