@kustomer/chat-react-native
Version:
Kustomer Chat SDK wrapper for React Native
31 lines (30 loc) • 1.24 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.default = void 0;
var _react = require("react");
var _NativeModules = require("../NativeModules");
const useIsKustomerLoggedIn = (idType, id, {
loggedInPollInterval = 1000,
loggedOutPollInterval = 5000
} = {}) => {
const [isLoggedIn, setIsLoggedIn] = (0, _react.useState)(null);
(0, _react.useEffect)(() => {
_NativeModules.KustomerChat.isLoggedIn(idType, id).then(setIsLoggedIn);
}, []);
(0, _react.useEffect)(() => {
if (isLoggedIn === true) {
const updateTimer = setInterval(() => _NativeModules.KustomerChat.isLoggedIn(idType, id).then(setIsLoggedIn), loggedInPollInterval);
return () => clearInterval(updateTimer);
} else if (isLoggedIn === false || isLoggedIn === null) {
const updateTimer = setInterval(() => _NativeModules.KustomerChat.isLoggedIn(idType, id).then(setIsLoggedIn), loggedOutPollInterval);
return () => clearInterval(updateTimer);
} else {
return () => {};
}
}, [isLoggedIn, id, idType, loggedInPollInterval, loggedOutPollInterval]);
return isLoggedIn;
};
var _default = exports.default = useIsKustomerLoggedIn;
//# sourceMappingURL=useIsKustomerLoggedIn.js.map