@cainiaofe/cn-utils
Version:
菜鸟前端基础工具库
34 lines (33 loc) • 2 kB
JavaScript
;
var _a, _b, _c, _d, _e, _f;
Object.defineProperty(exports, "__esModule", { value: true });
exports.getClientInfo = exports.getBrowserVersion = exports.getBrowserName = exports.isPC = exports.isMobile = exports.ua = void 0;
var tslib_1 = require("tslib");
var url_1 = require("../url");
var parser_1 = tslib_1.__importDefault(require("./parser"));
exports.ua = window.navigator.userAgent;
var browser = new parser_1.default(exports.ua);
var userAgent = ((_b = (_a = window.navigator) === null || _a === void 0 ? void 0 : _a.userAgent) === null || _b === void 0 ? void 0 : _b.toLocaleLowerCase()) || '';
var isIpadMini = userAgent.includes('ipad') && userAgent.includes('mini');
exports.isMobile = (_d = (_c = window._GATEWAY_UA) === null || _c === void 0 ? void 0 : _c.loadMobile) !== null && _d !== void 0 ? _d : (!isIpadMini && userAgent.indexOf('mobile') > -1);
exports.isPC = (_f = (_e = window._GATEWAY_UA) === null || _e === void 0 ? void 0 : _e.loadPC) !== null && _f !== void 0 ? _f : !exports.isMobile;
exports.getBrowserName = browser.getBrowserName.bind(browser);
exports.getBrowserVersion = browser.getBrowserVersion.bind(browser);
/**
* 获取客户端/浏览器信息
*/
var getClientInfo = function () {
var _a, _b, _c;
var __next_lowcode_mobile__ = (0, url_1.urlParse)(window.location.href, true, true).query.__next_lowcode_mobile__;
var userAgent = ((_a = window.navigator) === null || _a === void 0 ? void 0 : _a.userAgent) || '';
var isIpadMini = userAgent.toLocaleLowerCase().includes('ipad') &&
userAgent.toLocaleLowerCase().includes('mini');
var isMobile = __next_lowcode_mobile__ === 'true' ||
((_c = (_b = window._GATEWAY_UA) === null || _b === void 0 ? void 0 : _b.loadMobile) !== null && _c !== void 0 ? _c : (!isIpadMini && userAgent.toLocaleLowerCase().indexOf('mobile') > -1));
return {
isMobile: isMobile,
isPC: !isMobile,
userAgent: userAgent,
};
};
exports.getClientInfo = getClientInfo;