jsonchou / zax-device

universal device module

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Zax Device

support SSR & Miniprogram & Browser side

NPM version Build Status codecov code style: prettier

util module

Browsers support

IE / Edge
IE / Edge
Firefox
Firefox
Chrome
Chrome
Safari
Safari
iOS Safari
iOS Safari
Opera
Opera
IE8+ Edge+ last 10 versions last 10 versions last 2 versions last 2 versions last 2 versions

Install

npm i zax-device -S

usage

import ZaxDevice,{ isWechat, isAlipay, isToutiao, isDouyin, isApp, isMiniApp, isAndroid, isIOS, isClientSide, isServerSide, isWechatMiniApp, isAlipayMiniApp, isBytedanceMiniApp, isBaiduMiniApp } from 'zax-device'
let device = new ZaxDevice({
	ua: 'CUSTOM UA OR NULL',
	appMapping: {
		dax: 'WEBVIEW_FLAG'
	}
})

// client side
// or
import { device } from 'zax-device'

device.setAppMapping('dax', 'DAX_REGEX_FLAG') //
device.setUA(ctx.reqeust.header['user-agent']) // set server ua

isWechat() //
isWechat() //
isAlipay() //
isToutiao() //
isDouyin() //
isApp() //
isApp('douyin') // same as isDouyin()
isMiniApp() //
isAndroid() //
isIOS() //
isClientSide() //
isServerSide() //
isWechatMiniApp() //
isAlipayMiniApp() //
isBytedanceMiniApp() //
isBaiduMiniApp() //

//server side
isIOS(ctx.reqeust.header['user-agent'])

Docs

Test Case

About

universal device module

License:MIT License


Languages

Language:TypeScript 83.8%Language:JavaScript 15.1%Language:HTML 1.0%Language:CSS 0.2%