freerasp-react-native
Version:
React Native plugin for improving app security and threat monitoring on Android and iOS mobile devices.
40 lines (39 loc) • 1.3 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.useFreeRasp = void 0;
var _native = require("./native");
var _react = require("react");
var _raspExecutionState = require("../listeners/raspExecutionState");
var _threat = require("../listeners/threat");
let isRaspStarted = false;
const useFreeRasp = (config, actions, raspExecutionStateActions) => {
(0, _react.useEffect)(() => {
(async () => {
await (0, _threat.setThreatListeners)(actions);
raspExecutionStateActions && (await (0, _raspExecutionState.setRaspExecutionStateListener)(raspExecutionStateActions));
if (isRaspStarted) {
return;
}
try {
const response = await (0, _native.talsecStart)(config);
if (response !== 'freeRASP started') {
(0, _native.onInvalidCallback)();
}
isRaspStarted = true;
} catch (e) {
console.error(`${e.code}: ${e.message}`);
}
})();
return () => {
(async () => {
await (0, _threat.removeThreatListener)();
await (0, _raspExecutionState.removeRaspExecutionStateEventListener)();
})();
};
// eslint-disable-next-line react-hooks/exhaustive-deps
}, []);
};
exports.useFreeRasp = useFreeRasp;
//# sourceMappingURL=reactNative.js.map