mirror of
https://github.com/zhw2590582/ArtPlayer.git
synced 2026-10-18 02:21:20 -08:00
29 lines
1021 B
JavaScript
29 lines
1021 B
JavaScript
export default class Whitelist {
|
|
constructor(art) {
|
|
const { kindOf } = art.constructor;
|
|
const { whitelist } = art.option;
|
|
this.userAgent = window.navigator.userAgent;
|
|
this.isMobile = /Android|webOS|iPhone|iPad|iPod|BlackBerry|IEMobile|Opera Mini/i.test(this.userAgent);
|
|
this.state =
|
|
!this.isMobile ||
|
|
whitelist.some(item => {
|
|
const type = kindOf(item);
|
|
let result = false;
|
|
switch (type) {
|
|
case 'string':
|
|
result = this.userAgent.indexOf(item) > -1;
|
|
break;
|
|
case 'function':
|
|
result = item(this.userAgent);
|
|
break;
|
|
case 'regexp':
|
|
result = item.test(this.userAgent);
|
|
break;
|
|
default:
|
|
break;
|
|
}
|
|
return result;
|
|
});
|
|
}
|
|
}
|