Skip to content

Commit b4c139b

Browse files
authored
fix(ui/ua): support OpenHarmony and more browsers (#1087)
1 parent 3e45bb9 commit b4c139b

File tree

1 file changed

+9
-1
lines changed

1 file changed

+9
-1
lines changed

ui/artalk/src/lib/detect.ts

Lines changed: 9 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -29,6 +29,7 @@ function Detect(userAgent?: string) {
2929
Edge: u.includes('Edge') || u.includes('Edg'),
3030
Firefox: u.includes('Firefox') || u.includes('FxiOS'),
3131
'Firefox Focus': u.includes('Focus'),
32+
Servo: u.includes('Servo'),
3233
Chromium: u.includes('Chromium'),
3334
Opera: u.includes('Opera') || u.includes('OPR'),
3435
Vivaldi: u.includes('Vivaldi'),
@@ -45,8 +46,10 @@ function Detect(userAgent?: string) {
4546
'2345Explorer': u.includes('2345Explorer'),
4647
TheWorld: u.includes('TheWorld'),
4748
MIUI: u.includes('MiuiBrowser'),
49+
HuaweiBrowser: u.includes('HuaweiBrowser'),
4850
Quark: u.includes('Quark'),
4951
Qiyu: u.includes('Qiyu'),
52+
'360Browser': u.includes('360Browser'),
5053
Wechat: u.includes('MicroMessenger'),
5154
Taobao: u.includes('AliApp(TB'),
5255
Alipay: u.includes('AliApp(AP'),
@@ -70,13 +73,14 @@ function Detect(userAgent?: string) {
7073
MeeGo: u.includes('MeeGo'),
7174
Symbian: u.includes('Symbian'),
7275
iOS: u.includes('like Mac OS X'),
76+
OpenHarmony: u.includes('OpenHarmony'),
7377
'Chrome OS': u.includes('CrOS'),
7478
WebOS: u.includes('hpwOS'),
7579
}
7680

7781
// 设备
7882
const deviceMatch = {
79-
Mobile: u.includes('Mobi') || u.includes('iPh') || u.includes('480'),
83+
Mobile: u.includes('Mobi') || u.includes('iPh') || u.includes('480') || u.includes('Phone'),
8084
Tablet: u.includes('Tablet') || u.includes('Pad') || u.includes('Nexus 7')
8185
}
8286

@@ -139,6 +143,7 @@ function Detect(userAgent?: string) {
139143
Debian: () => u.replace(/^.*Debian\/([\d.]+).*$/, '$1'),
140144
'Windows Phone': () => u.replace(/^.*Windows Phone( OS)? ([\d.]+);.*$/, '$2'),
141145
'macOS': () => u.replace(/^.*Mac OS X ([\d_]+).*$/, '$1').replace(/_/g, '.'),
146+
OpenHarmony: () => u.replace(/^.*OpenHarmony ([\d.]+).*$/, '$1'),
142147
WebOS: () => u.replace(/^.*hpwOS\/([\d.]+);.*$/, '$1')
143148
}
144149

@@ -158,6 +163,7 @@ function Detect(userAgent?: string) {
158163
Edge: () => u.replace(/^.*(Edge|Edg|Edg[A-Z]{1})\/([\d.]+).*$/, '$2'),
159164
Firefox: () => u.replace(/^.*Firefox\/([\d.]+).*$/, '$1').replace(/^.*FxiOS\/([\d.]+).*$/, '$1'),
160165
'Firefox Focus': () => u.replace(/^.*Focus\/([\d.]+).*$/, '$1'),
166+
Servo: () => u.replace(/^.*Servo\/?([\d.]+).*$/, '$1'),
161167
Chromium: () => u.replace(/^.*Chromium\/([\d.]+).*$/, '$1'),
162168
Opera: () => u.replace(/^.*Opera\/([\d.]+).*$/, '$1').replace(/^.*OPR\/([\d.]+).*$/, '$1'),
163169
Vivaldi: () => u.replace(/^.*Vivaldi\/([\d.]+).*$/, '$1'),
@@ -172,8 +178,10 @@ function Detect(userAgent?: string) {
172178
'2345Explorer': () => u.replace(/^.*2345Explorer\/([\d.]+).*$/, '$1'),
173179
TheWorld: () => u.replace(/^.*TheWorld ([\d.]+).*$/, '$1'),
174180
MIUI: () => u.replace(/^.*MiuiBrowser\/([\d.]+).*$/, '$1'),
181+
HuaweiBrowser: () => u.replace(/^.*HuaweiBrowser\/([\d.]+).*$/, '$1'),
175182
Quark: () => u.replace(/^.*Quark\/([\d.]+).*$/, '$1'),
176183
Qiyu: () => u.replace(/^.*Qiyu\/([\d.]+).*$/, '$1'),
184+
'360Browser': () => u.replace(/^.*360Browser\/([\d.]+).*$/, '$1'),
177185
Wechat: () => u.replace(/^.*MicroMessenger\/([\d.]+).*$/, '$1'),
178186
Taobao: () => u.replace(/^.*AliApp\(TB\/([\d.]+).*$/, '$1'),
179187
Alipay: () => u.replace(/^.*AliApp\(AP\/([\d.]+).*$/, '$1'),

0 commit comments

Comments
 (0)