UNPKG

@oieduardorabelo/use-user-agent

Version:

React Hooks to detect browsers user-agent using ua-parser-js as main dependency.

49 lines (39 loc) 1.05 kB
'use strict'; Object.defineProperty(exports, '__esModule', { value: true }); var React = require('react'); var UAParser = require('ua-parser-js'); function useUserAgent(uastring) { if (uastring === void 0) { uastring = window.navigator.userAgent; } var _React$useState = React.useState(null), state = _React$useState[0], setState = _React$useState[1]; React.useEffect(function () { var didRun = true; try { var uaParser = new UAParser.UAParser(); uaParser.setUA(uastring); var payload = { os: uaParser.getOS(), browser: uaParser.getBrowser(), cpu: uaParser.getCPU(), device: uaParser.getDevice(), engine: uaParser.getEngine() }; if (didRun) { setState(payload); } } catch (err) { if (didRun) { setState(null); } } return function () { didRun = false; }; }, [uastring]); return state; } exports.useUserAgent = useUserAgent; //# sourceMappingURL=use-user-agent.cjs.development.js.map