@malagu/core
Version:
53 lines • 2.13 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.parseCssTime = exports.parseCssMagnitude = exports.isBasicWasmSupported = exports.isNative = exports.isIPad = exports.isSafari = exports.isChrome = exports.isWebKit = exports.isFirefox = exports.isOpera = exports.isEdgeOrIE = exports.isEdge = exports.isIE = void 0;
const userAgent = typeof navigator !== 'undefined' ? navigator.userAgent : '';
exports.isIE = (userAgent.indexOf('Trident') >= 0);
exports.isEdge = (userAgent.indexOf('Edge/') >= 0);
exports.isEdgeOrIE = exports.isIE || exports.isEdge;
exports.isOpera = (userAgent.indexOf('Opera') >= 0);
exports.isFirefox = (userAgent.indexOf('Firefox') >= 0);
exports.isWebKit = (userAgent.indexOf('AppleWebKit') >= 0);
exports.isChrome = (userAgent.indexOf('Chrome') >= 0);
exports.isSafari = (userAgent.indexOf('Chrome') === -1) && (userAgent.indexOf('Safari') >= 0);
exports.isIPad = (userAgent.indexOf('iPad') >= 0);
// tslint:disable-next-line:no-any
exports.isNative = typeof window.process !== 'undefined';
// tslint:disable-next-line:no-any
exports.isBasicWasmSupported = typeof window.WebAssembly !== 'undefined';
function parseCssMagnitude(value, defaultValue) {
if (value) {
let parsed;
if (value.endsWith('px')) {
parsed = parseFloat(value.substring(0, value.length - 2));
}
else {
parsed = parseFloat(value);
}
if (!isNaN(parsed)) {
return parsed;
}
}
return defaultValue;
}
exports.parseCssMagnitude = parseCssMagnitude;
function parseCssTime(time, defaultValue) {
if (time) {
let parsed;
if (time.endsWith('ms')) {
parsed = parseFloat(time.substring(0, time.length - 2));
}
else if (time.endsWith('s')) {
parsed = parseFloat(time.substring(0, time.length - 1)) * 1000;
}
else {
parsed = parseFloat(time);
}
if (!isNaN(parsed)) {
return parsed;
}
}
return defaultValue;
}
exports.parseCssTime = parseCssTime;
//# sourceMappingURL=browser.js.map