@myinterview/widget-react 1.1.32 → 1.1.33-beta-e083411

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/esm/index.js CHANGED
@@ -12836,7 +12836,961 @@ var platform$1 = {exports: {}};
12836
12836
 
12837
12837
  var platform = platform$1.exports;
12838
12838
 
12839
+ var uaParser = {exports: {}};
12840
+
12841
+ (function (module, exports) {
12842
+ /////////////////////////////////////////////////////////////////////////////////
12843
+ /* UAParser.js v1.0.36
12844
+ Copyright © 2012-2021 Faisal Salman <f@faisalman.com>
12845
+ MIT License *//*
12846
+ Detect Browser, Engine, OS, CPU, and Device type/model from User-Agent data.
12847
+ Supports browser & node.js environment.
12848
+ Demo : https://faisalman.github.io/ua-parser-js
12849
+ Source : https://github.com/faisalman/ua-parser-js */
12850
+ /////////////////////////////////////////////////////////////////////////////////
12851
+
12852
+ (function (window, undefined$1) {
12853
+
12854
+ //////////////
12855
+ // Constants
12856
+ /////////////
12857
+
12858
+
12859
+ var LIBVERSION = '1.0.36',
12860
+ EMPTY = '',
12861
+ UNKNOWN = '?',
12862
+ FUNC_TYPE = 'function',
12863
+ UNDEF_TYPE = 'undefined',
12864
+ OBJ_TYPE = 'object',
12865
+ STR_TYPE = 'string',
12866
+ MAJOR = 'major',
12867
+ MODEL = 'model',
12868
+ NAME = 'name',
12869
+ TYPE = 'type',
12870
+ VENDOR = 'vendor',
12871
+ VERSION = 'version',
12872
+ ARCHITECTURE= 'architecture',
12873
+ CONSOLE = 'console',
12874
+ MOBILE = 'mobile',
12875
+ TABLET = 'tablet',
12876
+ SMARTTV = 'smarttv',
12877
+ WEARABLE = 'wearable',
12878
+ EMBEDDED = 'embedded',
12879
+ UA_MAX_LENGTH = 350;
12880
+
12881
+ var AMAZON = 'Amazon',
12882
+ APPLE = 'Apple',
12883
+ ASUS = 'ASUS',
12884
+ BLACKBERRY = 'BlackBerry',
12885
+ BROWSER = 'Browser',
12886
+ CHROME = 'Chrome',
12887
+ EDGE = 'Edge',
12888
+ FIREFOX = 'Firefox',
12889
+ GOOGLE = 'Google',
12890
+ HUAWEI = 'Huawei',
12891
+ LG = 'LG',
12892
+ MICROSOFT = 'Microsoft',
12893
+ MOTOROLA = 'Motorola',
12894
+ OPERA = 'Opera',
12895
+ SAMSUNG = 'Samsung',
12896
+ SHARP = 'Sharp',
12897
+ SONY = 'Sony',
12898
+ XIAOMI = 'Xiaomi',
12899
+ ZEBRA = 'Zebra',
12900
+ FACEBOOK = 'Facebook',
12901
+ CHROMIUM_OS = 'Chromium OS',
12902
+ MAC_OS = 'Mac OS';
12903
+
12904
+ ///////////
12905
+ // Helper
12906
+ //////////
12907
+
12908
+ var extend = function (regexes, extensions) {
12909
+ var mergedRegexes = {};
12910
+ for (var i in regexes) {
12911
+ if (extensions[i] && extensions[i].length % 2 === 0) {
12912
+ mergedRegexes[i] = extensions[i].concat(regexes[i]);
12913
+ } else {
12914
+ mergedRegexes[i] = regexes[i];
12915
+ }
12916
+ }
12917
+ return mergedRegexes;
12918
+ },
12919
+ enumerize = function (arr) {
12920
+ var enums = {};
12921
+ for (var i=0; i<arr.length; i++) {
12922
+ enums[arr[i].toUpperCase()] = arr[i];
12923
+ }
12924
+ return enums;
12925
+ },
12926
+ has = function (str1, str2) {
12927
+ return typeof str1 === STR_TYPE ? lowerize(str2).indexOf(lowerize(str1)) !== -1 : false;
12928
+ },
12929
+ lowerize = function (str) {
12930
+ return str.toLowerCase();
12931
+ },
12932
+ majorize = function (version) {
12933
+ return typeof(version) === STR_TYPE ? version.replace(/[^\d\.]/g, EMPTY).split('.')[0] : undefined$1;
12934
+ },
12935
+ trim = function (str, len) {
12936
+ if (typeof(str) === STR_TYPE) {
12937
+ str = str.replace(/^\s\s*/, EMPTY);
12938
+ return typeof(len) === UNDEF_TYPE ? str : str.substring(0, UA_MAX_LENGTH);
12939
+ }
12940
+ };
12941
+
12942
+ ///////////////
12943
+ // Map helper
12944
+ //////////////
12945
+
12946
+ var rgxMapper = function (ua, arrays) {
12947
+
12948
+ var i = 0, j, k, p, q, matches, match;
12949
+
12950
+ // loop through all regexes maps
12951
+ while (i < arrays.length && !matches) {
12952
+
12953
+ var regex = arrays[i], // even sequence (0,2,4,..)
12954
+ props = arrays[i + 1]; // odd sequence (1,3,5,..)
12955
+ j = k = 0;
12956
+
12957
+ // try matching uastring with regexes
12958
+ while (j < regex.length && !matches) {
12959
+
12960
+ if (!regex[j]) { break; }
12961
+ matches = regex[j++].exec(ua);
12962
+
12963
+ if (!!matches) {
12964
+ for (p = 0; p < props.length; p++) {
12965
+ match = matches[++k];
12966
+ q = props[p];
12967
+ // check if given property is actually array
12968
+ if (typeof q === OBJ_TYPE && q.length > 0) {
12969
+ if (q.length === 2) {
12970
+ if (typeof q[1] == FUNC_TYPE) {
12971
+ // assign modified match
12972
+ this[q[0]] = q[1].call(this, match);
12973
+ } else {
12974
+ // assign given value, ignore regex match
12975
+ this[q[0]] = q[1];
12976
+ }
12977
+ } else if (q.length === 3) {
12978
+ // check whether function or regex
12979
+ if (typeof q[1] === FUNC_TYPE && !(q[1].exec && q[1].test)) {
12980
+ // call function (usually string mapper)
12981
+ this[q[0]] = match ? q[1].call(this, match, q[2]) : undefined$1;
12982
+ } else {
12983
+ // sanitize match using given regex
12984
+ this[q[0]] = match ? match.replace(q[1], q[2]) : undefined$1;
12985
+ }
12986
+ } else if (q.length === 4) {
12987
+ this[q[0]] = match ? q[3].call(this, match.replace(q[1], q[2])) : undefined$1;
12988
+ }
12989
+ } else {
12990
+ this[q] = match ? match : undefined$1;
12991
+ }
12992
+ }
12993
+ }
12994
+ }
12995
+ i += 2;
12996
+ }
12997
+ },
12998
+
12999
+ strMapper = function (str, map) {
13000
+
13001
+ for (var i in map) {
13002
+ // check if current value is array
13003
+ if (typeof map[i] === OBJ_TYPE && map[i].length > 0) {
13004
+ for (var j = 0; j < map[i].length; j++) {
13005
+ if (has(map[i][j], str)) {
13006
+ return (i === UNKNOWN) ? undefined$1 : i;
13007
+ }
13008
+ }
13009
+ } else if (has(map[i], str)) {
13010
+ return (i === UNKNOWN) ? undefined$1 : i;
13011
+ }
13012
+ }
13013
+ return str;
13014
+ };
13015
+
13016
+ ///////////////
13017
+ // String map
13018
+ //////////////
13019
+
13020
+ // Safari < 3.0
13021
+ var oldSafariMap = {
13022
+ '1.0' : '/8',
13023
+ '1.2' : '/1',
13024
+ '1.3' : '/3',
13025
+ '2.0' : '/412',
13026
+ '2.0.2' : '/416',
13027
+ '2.0.3' : '/417',
13028
+ '2.0.4' : '/419',
13029
+ '?' : '/'
13030
+ },
13031
+ windowsVersionMap = {
13032
+ 'ME' : '4.90',
13033
+ 'NT 3.11' : 'NT3.51',
13034
+ 'NT 4.0' : 'NT4.0',
13035
+ '2000' : 'NT 5.0',
13036
+ 'XP' : ['NT 5.1', 'NT 5.2'],
13037
+ 'Vista' : 'NT 6.0',
13038
+ '7' : 'NT 6.1',
13039
+ '8' : 'NT 6.2',
13040
+ '8.1' : 'NT 6.3',
13041
+ '10' : ['NT 6.4', 'NT 10.0'],
13042
+ 'RT' : 'ARM'
13043
+ };
13044
+
13045
+ //////////////
13046
+ // Regex map
13047
+ /////////////
13048
+
13049
+ var regexes = {
13050
+
13051
+ browser : [[
13052
+
13053
+ /\b(?:crmo|crios)\/([\w\.]+)/i // Chrome for Android/iOS
13054
+ ], [VERSION, [NAME, 'Chrome']], [
13055
+ /edg(?:e|ios|a)?\/([\w\.]+)/i // Microsoft Edge
13056
+ ], [VERSION, [NAME, 'Edge']], [
13057
+
13058
+ // Presto based
13059
+ /(opera mini)\/([-\w\.]+)/i, // Opera Mini
13060
+ /(opera [mobiletab]{3,6})\b.+version\/([-\w\.]+)/i, // Opera Mobi/Tablet
13061
+ /(opera)(?:.+version\/|[\/ ]+)([\w\.]+)/i // Opera
13062
+ ], [NAME, VERSION], [
13063
+ /opios[\/ ]+([\w\.]+)/i // Opera mini on iphone >= 8.0
13064
+ ], [VERSION, [NAME, OPERA+' Mini']], [
13065
+ /\bopr\/([\w\.]+)/i // Opera Webkit
13066
+ ], [VERSION, [NAME, OPERA]], [
13067
+
13068
+ // Mixed
13069
+ /(kindle)\/([\w\.]+)/i, // Kindle
13070
+ /(lunascape|maxthon|netfront|jasmine|blazer)[\/ ]?([\w\.]*)/i, // Lunascape/Maxthon/Netfront/Jasmine/Blazer
13071
+ // Trident based
13072
+ /(avant |iemobile|slim)(?:browser)?[\/ ]?([\w\.]*)/i, // Avant/IEMobile/SlimBrowser
13073
+ /(ba?idubrowser)[\/ ]?([\w\.]+)/i, // Baidu Browser
13074
+ /(?:ms|\()(ie) ([\w\.]+)/i, // Internet Explorer
13075
+
13076
+ // Webkit/KHTML based // Flock/RockMelt/Midori/Epiphany/Silk/Skyfire/Bolt/Iron/Iridium/PhantomJS/Bowser/QupZilla/Falkon
13077
+ /(flock|rockmelt|midori|epiphany|silk|skyfire|bolt|iron|vivaldi|iridium|phantomjs|bowser|quark|qupzilla|falkon|rekonq|puffin|brave|whale(?!.+naver)|qqbrowserlite|qq|duckduckgo)\/([-\w\.]+)/i,
13078
+ // Rekonq/Puffin/Brave/Whale/QQBrowserLite/QQ, aka ShouQ
13079
+ /(heytap|ovi)browser\/([\d\.]+)/i, // Heytap/Ovi
13080
+ /(weibo)__([\d\.]+)/i // Weibo
13081
+ ], [NAME, VERSION], [
13082
+ /(?:\buc? ?browser|(?:juc.+)ucweb)[\/ ]?([\w\.]+)/i // UCBrowser
13083
+ ], [VERSION, [NAME, 'UC'+BROWSER]], [
13084
+ /microm.+\bqbcore\/([\w\.]+)/i, // WeChat Desktop for Windows Built-in Browser
13085
+ /\bqbcore\/([\w\.]+).+microm/i
13086
+ ], [VERSION, [NAME, 'WeChat(Win) Desktop']], [
13087
+ /micromessenger\/([\w\.]+)/i // WeChat
13088
+ ], [VERSION, [NAME, 'WeChat']], [
13089
+ /konqueror\/([\w\.]+)/i // Konqueror
13090
+ ], [VERSION, [NAME, 'Konqueror']], [
13091
+ /trident.+rv[: ]([\w\.]{1,9})\b.+like gecko/i // IE11
13092
+ ], [VERSION, [NAME, 'IE']], [
13093
+ /ya(?:search)?browser\/([\w\.]+)/i // Yandex
13094
+ ], [VERSION, [NAME, 'Yandex']], [
13095
+ /(avast|avg)\/([\w\.]+)/i // Avast/AVG Secure Browser
13096
+ ], [[NAME, /(.+)/, '$1 Secure '+BROWSER], VERSION], [
13097
+ /\bfocus\/([\w\.]+)/i // Firefox Focus
13098
+ ], [VERSION, [NAME, FIREFOX+' Focus']], [
13099
+ /\bopt\/([\w\.]+)/i // Opera Touch
13100
+ ], [VERSION, [NAME, OPERA+' Touch']], [
13101
+ /coc_coc\w+\/([\w\.]+)/i // Coc Coc Browser
13102
+ ], [VERSION, [NAME, 'Coc Coc']], [
13103
+ /dolfin\/([\w\.]+)/i // Dolphin
13104
+ ], [VERSION, [NAME, 'Dolphin']], [
13105
+ /coast\/([\w\.]+)/i // Opera Coast
13106
+ ], [VERSION, [NAME, OPERA+' Coast']], [
13107
+ /miuibrowser\/([\w\.]+)/i // MIUI Browser
13108
+ ], [VERSION, [NAME, 'MIUI '+BROWSER]], [
13109
+ /fxios\/([-\w\.]+)/i // Firefox for iOS
13110
+ ], [VERSION, [NAME, FIREFOX]], [
13111
+ /\bqihu|(qi?ho?o?|360)browser/i // 360
13112
+ ], [[NAME, '360 '+BROWSER]], [
13113
+ /(oculus|samsung|sailfish|huawei)browser\/([\w\.]+)/i
13114
+ ], [[NAME, /(.+)/, '$1 '+BROWSER], VERSION], [ // Oculus/Samsung/Sailfish/Huawei Browser
13115
+ /(comodo_dragon)\/([\w\.]+)/i // Comodo Dragon
13116
+ ], [[NAME, /_/g, ' '], VERSION], [
13117
+ /(electron)\/([\w\.]+) safari/i, // Electron-based App
13118
+ /(tesla)(?: qtcarbrowser|\/(20\d\d\.[-\w\.]+))/i, // Tesla
13119
+ /m?(qqbrowser|baiduboxapp|2345Explorer)[\/ ]?([\w\.]+)/i // QQBrowser/Baidu App/2345 Browser
13120
+ ], [NAME, VERSION], [
13121
+ /(metasr)[\/ ]?([\w\.]+)/i, // SouGouBrowser
13122
+ /(lbbrowser)/i, // LieBao Browser
13123
+ /\[(linkedin)app\]/i // LinkedIn App for iOS & Android
13124
+ ], [NAME], [
13125
+
13126
+ // WebView
13127
+ /((?:fban\/fbios|fb_iab\/fb4a)(?!.+fbav)|;fbav\/([\w\.]+);)/i // Facebook App for iOS & Android
13128
+ ], [[NAME, FACEBOOK], VERSION], [
13129
+ /(kakao(?:talk|story))[\/ ]([\w\.]+)/i, // Kakao App
13130
+ /(naver)\(.*?(\d+\.[\w\.]+).*\)/i, // Naver InApp
13131
+ /safari (line)\/([\w\.]+)/i, // Line App for iOS
13132
+ /\b(line)\/([\w\.]+)\/iab/i, // Line App for Android
13133
+ /(chromium|instagram|snapchat)[\/ ]([-\w\.]+)/i // Chromium/Instagram/Snapchat
13134
+ ], [NAME, VERSION], [
13135
+ /\bgsa\/([\w\.]+) .*safari\//i // Google Search Appliance on iOS
13136
+ ], [VERSION, [NAME, 'GSA']], [
13137
+ /musical_ly(?:.+app_?version\/|_)([\w\.]+)/i // TikTok
13138
+ ], [VERSION, [NAME, 'TikTok']], [
13139
+
13140
+ /headlesschrome(?:\/([\w\.]+)| )/i // Chrome Headless
13141
+ ], [VERSION, [NAME, CHROME+' Headless']], [
13142
+
13143
+ / wv\).+(chrome)\/([\w\.]+)/i // Chrome WebView
13144
+ ], [[NAME, CHROME+' WebView'], VERSION], [
13145
+
13146
+ /droid.+ version\/([\w\.]+)\b.+(?:mobile safari|safari)/i // Android Browser
13147
+ ], [VERSION, [NAME, 'Android '+BROWSER]], [
13148
+
13149
+ /(chrome|omniweb|arora|[tizenoka]{5} ?browser)\/v?([\w\.]+)/i // Chrome/OmniWeb/Arora/Tizen/Nokia
13150
+ ], [NAME, VERSION], [
13151
+
13152
+ /version\/([\w\.\,]+) .*mobile\/\w+ (safari)/i // Mobile Safari
13153
+ ], [VERSION, [NAME, 'Mobile Safari']], [
13154
+ /version\/([\w(\.|\,)]+) .*(mobile ?safari|safari)/i // Safari & Safari Mobile
13155
+ ], [VERSION, NAME], [
13156
+ /webkit.+?(mobile ?safari|safari)(\/[\w\.]+)/i // Safari < 3.0
13157
+ ], [NAME, [VERSION, strMapper, oldSafariMap]], [
13158
+
13159
+ /(webkit|khtml)\/([\w\.]+)/i
13160
+ ], [NAME, VERSION], [
13161
+
13162
+ // Gecko based
13163
+ /(navigator|netscape\d?)\/([-\w\.]+)/i // Netscape
13164
+ ], [[NAME, 'Netscape'], VERSION], [
13165
+ /mobile vr; rv:([\w\.]+)\).+firefox/i // Firefox Reality
13166
+ ], [VERSION, [NAME, FIREFOX+' Reality']], [
13167
+ /ekiohf.+(flow)\/([\w\.]+)/i, // Flow
13168
+ /(swiftfox)/i, // Swiftfox
13169
+ /(icedragon|iceweasel|camino|chimera|fennec|maemo browser|minimo|conkeror|klar)[\/ ]?([\w\.\+]+)/i,
13170
+ // IceDragon/Iceweasel/Camino/Chimera/Fennec/Maemo/Minimo/Conkeror/Klar
13171
+ /(seamonkey|k-meleon|icecat|iceape|firebird|phoenix|palemoon|basilisk|waterfox)\/([-\w\.]+)$/i,
13172
+ // Firefox/SeaMonkey/K-Meleon/IceCat/IceApe/Firebird/Phoenix
13173
+ /(firefox)\/([\w\.]+)/i, // Other Firefox-based
13174
+ /(mozilla)\/([\w\.]+) .+rv\:.+gecko\/\d+/i, // Mozilla
13175
+
13176
+ // Other
13177
+ /(polaris|lynx|dillo|icab|doris|amaya|w3m|netsurf|sleipnir|obigo|mosaic|(?:go|ice|up)[\. ]?browser)[-\/ ]?v?([\w\.]+)/i,
13178
+ // Polaris/Lynx/Dillo/iCab/Doris/Amaya/w3m/NetSurf/Sleipnir/Obigo/Mosaic/Go/ICE/UP.Browser
13179
+ /(links) \(([\w\.]+)/i, // Links
13180
+ /panasonic;(viera)/i // Panasonic Viera
13181
+ ], [NAME, VERSION], [
13182
+
13183
+ /(cobalt)\/([\w\.]+)/i // Cobalt
13184
+ ], [NAME, [VERSION, /master.|lts./, ""]]
13185
+ ],
13186
+
13187
+ cpu : [[
13188
+
13189
+ /(?:(amd|x(?:(?:86|64)[-_])?|wow|win)64)[;\)]/i // AMD64 (x64)
13190
+ ], [[ARCHITECTURE, 'amd64']], [
13191
+
13192
+ /(ia32(?=;))/i // IA32 (quicktime)
13193
+ ], [[ARCHITECTURE, lowerize]], [
13194
+
13195
+ /((?:i[346]|x)86)[;\)]/i // IA32 (x86)
13196
+ ], [[ARCHITECTURE, 'ia32']], [
13197
+
13198
+ /\b(aarch64|arm(v?8e?l?|_?64))\b/i // ARM64
13199
+ ], [[ARCHITECTURE, 'arm64']], [
13200
+
13201
+ /\b(arm(?:v[67])?ht?n?[fl]p?)\b/i // ARMHF
13202
+ ], [[ARCHITECTURE, 'armhf']], [
13203
+
13204
+ // PocketPC mistakenly identified as PowerPC
13205
+ /windows (ce|mobile); ppc;/i
13206
+ ], [[ARCHITECTURE, 'arm']], [
13207
+
13208
+ /((?:ppc|powerpc)(?:64)?)(?: mac|;|\))/i // PowerPC
13209
+ ], [[ARCHITECTURE, /ower/, EMPTY, lowerize]], [
13210
+
13211
+ /(sun4\w)[;\)]/i // SPARC
13212
+ ], [[ARCHITECTURE, 'sparc']], [
13213
+
13214
+ /((?:avr32|ia64(?=;))|68k(?=\))|\barm(?=v(?:[1-7]|[5-7]1)l?|;|eabi)|(?=atmel )avr|(?:irix|mips|sparc)(?:64)?\b|pa-risc)/i
13215
+ // IA64, 68K, ARM/64, AVR/32, IRIX/64, MIPS/64, SPARC/64, PA-RISC
13216
+ ], [[ARCHITECTURE, lowerize]]
13217
+ ],
13218
+
13219
+ device : [[
13220
+
13221
+ //////////////////////////
13222
+ // MOBILES & TABLETS
13223
+ /////////////////////////
13224
+
13225
+ // Samsung
13226
+ /\b(sch-i[89]0\d|shw-m380s|sm-[ptx]\w{2,4}|gt-[pn]\d{2,4}|sgh-t8[56]9|nexus 10)/i
13227
+ ], [MODEL, [VENDOR, SAMSUNG], [TYPE, TABLET]], [
13228
+ /\b((?:s[cgp]h|gt|sm)-\w+|sc[g-]?[\d]+a?|galaxy nexus)/i,
13229
+ /samsung[- ]([-\w]+)/i,
13230
+ /sec-(sgh\w+)/i
13231
+ ], [MODEL, [VENDOR, SAMSUNG], [TYPE, MOBILE]], [
13232
+
13233
+ // Apple
13234
+ /(?:\/|\()(ip(?:hone|od)[\w, ]*)(?:\/|;)/i // iPod/iPhone
13235
+ ], [MODEL, [VENDOR, APPLE], [TYPE, MOBILE]], [
13236
+ /\((ipad);[-\w\),; ]+apple/i, // iPad
13237
+ /applecoremedia\/[\w\.]+ \((ipad)/i,
13238
+ /\b(ipad)\d\d?,\d\d?[;\]].+ios/i
13239
+ ], [MODEL, [VENDOR, APPLE], [TYPE, TABLET]], [
13240
+ /(macintosh);/i
13241
+ ], [MODEL, [VENDOR, APPLE]], [
13242
+
13243
+ // Sharp
13244
+ /\b(sh-?[altvz]?\d\d[a-ekm]?)/i
13245
+ ], [MODEL, [VENDOR, SHARP], [TYPE, MOBILE]], [
13246
+
13247
+ // Huawei
13248
+ /\b((?:ag[rs][23]?|bah2?|sht?|btv)-a?[lw]\d{2})\b(?!.+d\/s)/i
13249
+ ], [MODEL, [VENDOR, HUAWEI], [TYPE, TABLET]], [
13250
+ /(?:huawei|honor)([-\w ]+)[;\)]/i,
13251
+ /\b(nexus 6p|\w{2,4}e?-[atu]?[ln][\dx][012359c][adn]?)\b(?!.+d\/s)/i
13252
+ ], [MODEL, [VENDOR, HUAWEI], [TYPE, MOBILE]], [
13253
+
13254
+ // Xiaomi
13255
+ /\b(poco[\w ]+|m2\d{3}j\d\d[a-z]{2})(?: bui|\))/i, // Xiaomi POCO
13256
+ /\b; (\w+) build\/hm\1/i, // Xiaomi Hongmi 'numeric' models
13257
+ /\b(hm[-_ ]?note?[_ ]?(?:\d\w)?) bui/i, // Xiaomi Hongmi
13258
+ /\b(redmi[\-_ ]?(?:note|k)?[\w_ ]+)(?: bui|\))/i, // Xiaomi Redmi
13259
+ /\b(mi[-_ ]?(?:a\d|one|one[_ ]plus|note lte|max|cc)?[_ ]?(?:\d?\w?)[_ ]?(?:plus|se|lite)?)(?: bui|\))/i // Xiaomi Mi
13260
+ ], [[MODEL, /_/g, ' '], [VENDOR, XIAOMI], [TYPE, MOBILE]], [
13261
+ /\b(mi[-_ ]?(?:pad)(?:[\w_ ]+))(?: bui|\))/i // Mi Pad tablets
13262
+ ],[[MODEL, /_/g, ' '], [VENDOR, XIAOMI], [TYPE, TABLET]], [
13263
+
13264
+ // OPPO
13265
+ /; (\w+) bui.+ oppo/i,
13266
+ /\b(cph[12]\d{3}|p(?:af|c[al]|d\w|e[ar])[mt]\d0|x9007|a101op)\b/i
13267
+ ], [MODEL, [VENDOR, 'OPPO'], [TYPE, MOBILE]], [
13268
+
13269
+ // Vivo
13270
+ /vivo (\w+)(?: bui|\))/i,
13271
+ /\b(v[12]\d{3}\w?[at])(?: bui|;)/i
13272
+ ], [MODEL, [VENDOR, 'Vivo'], [TYPE, MOBILE]], [
13273
+
13274
+ // Realme
13275
+ /\b(rmx[12]\d{3})(?: bui|;|\))/i
13276
+ ], [MODEL, [VENDOR, 'Realme'], [TYPE, MOBILE]], [
13277
+
13278
+ // Motorola
13279
+ /\b(milestone|droid(?:[2-4x]| (?:bionic|x2|pro|razr))?:?( 4g)?)\b[\w ]+build\//i,
13280
+ /\bmot(?:orola)?[- ](\w*)/i,
13281
+ /((?:moto[\w\(\) ]+|xt\d{3,4}|nexus 6)(?= bui|\)))/i
13282
+ ], [MODEL, [VENDOR, MOTOROLA], [TYPE, MOBILE]], [
13283
+ /\b(mz60\d|xoom[2 ]{0,2}) build\//i
13284
+ ], [MODEL, [VENDOR, MOTOROLA], [TYPE, TABLET]], [
13285
+
13286
+ // LG
13287
+ /((?=lg)?[vl]k\-?\d{3}) bui| 3\.[-\w; ]{10}lg?-([06cv9]{3,4})/i
13288
+ ], [MODEL, [VENDOR, LG], [TYPE, TABLET]], [
13289
+ /(lm(?:-?f100[nv]?|-[\w\.]+)(?= bui|\))|nexus [45])/i,
13290
+ /\blg[-e;\/ ]+((?!browser|netcast|android tv)\w+)/i,
13291
+ /\blg-?([\d\w]+) bui/i
13292
+ ], [MODEL, [VENDOR, LG], [TYPE, MOBILE]], [
13293
+
13294
+ // Lenovo
13295
+ /(ideatab[-\w ]+)/i,
13296
+ /lenovo ?(s[56]000[-\w]+|tab(?:[\w ]+)|yt[-\d\w]{6}|tb[-\d\w]{6})/i
13297
+ ], [MODEL, [VENDOR, 'Lenovo'], [TYPE, TABLET]], [
13298
+
13299
+ // Nokia
13300
+ /(?:maemo|nokia).*(n900|lumia \d+)/i,
13301
+ /nokia[-_ ]?([-\w\.]*)/i
13302
+ ], [[MODEL, /_/g, ' '], [VENDOR, 'Nokia'], [TYPE, MOBILE]], [
13303
+
13304
+ // Google
13305
+ /(pixel c)\b/i // Google Pixel C
13306
+ ], [MODEL, [VENDOR, GOOGLE], [TYPE, TABLET]], [
13307
+ /droid.+; (pixel[\daxl ]{0,6})(?: bui|\))/i // Google Pixel
13308
+ ], [MODEL, [VENDOR, GOOGLE], [TYPE, MOBILE]], [
13309
+
13310
+ // Sony
13311
+ /droid.+ (a?\d[0-2]{2}so|[c-g]\d{4}|so[-gl]\w+|xq-a\w[4-7][12])(?= bui|\).+chrome\/(?![1-6]{0,1}\d\.))/i
13312
+ ], [MODEL, [VENDOR, SONY], [TYPE, MOBILE]], [
13313
+ /sony tablet [ps]/i,
13314
+ /\b(?:sony)?sgp\w+(?: bui|\))/i
13315
+ ], [[MODEL, 'Xperia Tablet'], [VENDOR, SONY], [TYPE, TABLET]], [
13316
+
13317
+ // OnePlus
13318
+ / (kb2005|in20[12]5|be20[12][59])\b/i,
13319
+ /(?:one)?(?:plus)? (a\d0\d\d)(?: b|\))/i
13320
+ ], [MODEL, [VENDOR, 'OnePlus'], [TYPE, MOBILE]], [
13321
+
13322
+ // Amazon
13323
+ /(alexa)webm/i,
13324
+ /(kf[a-z]{2}wi|aeo[c-r]{2})( bui|\))/i, // Kindle Fire without Silk / Echo Show
13325
+ /(kf[a-z]+)( bui|\)).+silk\//i // Kindle Fire HD
13326
+ ], [MODEL, [VENDOR, AMAZON], [TYPE, TABLET]], [
13327
+ /((?:sd|kf)[0349hijorstuw]+)( bui|\)).+silk\//i // Fire Phone
13328
+ ], [[MODEL, /(.+)/g, 'Fire Phone $1'], [VENDOR, AMAZON], [TYPE, MOBILE]], [
13329
+
13330
+ // BlackBerry
13331
+ /(playbook);[-\w\),; ]+(rim)/i // BlackBerry PlayBook
13332
+ ], [MODEL, VENDOR, [TYPE, TABLET]], [
13333
+ /\b((?:bb[a-f]|st[hv])100-\d)/i,
13334
+ /\(bb10; (\w+)/i // BlackBerry 10
13335
+ ], [MODEL, [VENDOR, BLACKBERRY], [TYPE, MOBILE]], [
13336
+
13337
+ // Asus
13338
+ /(?:\b|asus_)(transfo[prime ]{4,10} \w+|eeepc|slider \w+|nexus 7|padfone|p00[cj])/i
13339
+ ], [MODEL, [VENDOR, ASUS], [TYPE, TABLET]], [
13340
+ / (z[bes]6[027][012][km][ls]|zenfone \d\w?)\b/i
13341
+ ], [MODEL, [VENDOR, ASUS], [TYPE, MOBILE]], [
13342
+
13343
+ // HTC
13344
+ /(nexus 9)/i // HTC Nexus 9
13345
+ ], [MODEL, [VENDOR, 'HTC'], [TYPE, TABLET]], [
13346
+ /(htc)[-;_ ]{1,2}([\w ]+(?=\)| bui)|\w+)/i, // HTC
13347
+
13348
+ // ZTE
13349
+ /(zte)[- ]([\w ]+?)(?: bui|\/|\))/i,
13350
+ /(alcatel|geeksphone|nexian|panasonic(?!(?:;|\.))|sony(?!-bra))[-_ ]?([-\w]*)/i // Alcatel/GeeksPhone/Nexian/Panasonic/Sony
13351
+ ], [VENDOR, [MODEL, /_/g, ' '], [TYPE, MOBILE]], [
13352
+
13353
+ // Acer
13354
+ /droid.+; ([ab][1-7]-?[0178a]\d\d?)/i
13355
+ ], [MODEL, [VENDOR, 'Acer'], [TYPE, TABLET]], [
13356
+
13357
+ // Meizu
13358
+ /droid.+; (m[1-5] note) bui/i,
13359
+ /\bmz-([-\w]{2,})/i
13360
+ ], [MODEL, [VENDOR, 'Meizu'], [TYPE, MOBILE]], [
13361
+
13362
+ // MIXED
13363
+ /(blackberry|benq|palm(?=\-)|sonyericsson|acer|asus|dell|meizu|motorola|polytron|infinix|tecno)[-_ ]?([-\w]*)/i,
13364
+ // BlackBerry/BenQ/Palm/Sony-Ericsson/Acer/Asus/Dell/Meizu/Motorola/Polytron
13365
+ /(hp) ([\w ]+\w)/i, // HP iPAQ
13366
+ /(asus)-?(\w+)/i, // Asus
13367
+ /(microsoft); (lumia[\w ]+)/i, // Microsoft Lumia
13368
+ /(lenovo)[-_ ]?([-\w]+)/i, // Lenovo
13369
+ /(jolla)/i, // Jolla
13370
+ /(oppo) ?([\w ]+) bui/i // OPPO
13371
+ ], [VENDOR, MODEL, [TYPE, MOBILE]], [
13372
+
13373
+ /(kobo)\s(ereader|touch)/i, // Kobo
13374
+ /(archos) (gamepad2?)/i, // Archos
13375
+ /(hp).+(touchpad(?!.+tablet)|tablet)/i, // HP TouchPad
13376
+ /(kindle)\/([\w\.]+)/i, // Kindle
13377
+ /(nook)[\w ]+build\/(\w+)/i, // Nook
13378
+ /(dell) (strea[kpr\d ]*[\dko])/i, // Dell Streak
13379
+ /(le[- ]+pan)[- ]+(\w{1,9}) bui/i, // Le Pan Tablets
13380
+ /(trinity)[- ]*(t\d{3}) bui/i, // Trinity Tablets
13381
+ /(gigaset)[- ]+(q\w{1,9}) bui/i, // Gigaset Tablets
13382
+ /(vodafone) ([\w ]+)(?:\)| bui)/i // Vodafone
13383
+ ], [VENDOR, MODEL, [TYPE, TABLET]], [
13384
+
13385
+ /(surface duo)/i // Surface Duo
13386
+ ], [MODEL, [VENDOR, MICROSOFT], [TYPE, TABLET]], [
13387
+ /droid [\d\.]+; (fp\du?)(?: b|\))/i // Fairphone
13388
+ ], [MODEL, [VENDOR, 'Fairphone'], [TYPE, MOBILE]], [
13389
+ /(u304aa)/i // AT&T
13390
+ ], [MODEL, [VENDOR, 'AT&T'], [TYPE, MOBILE]], [
13391
+ /\bsie-(\w*)/i // Siemens
13392
+ ], [MODEL, [VENDOR, 'Siemens'], [TYPE, MOBILE]], [
13393
+ /\b(rct\w+) b/i // RCA Tablets
13394
+ ], [MODEL, [VENDOR, 'RCA'], [TYPE, TABLET]], [
13395
+ /\b(venue[\d ]{2,7}) b/i // Dell Venue Tablets
13396
+ ], [MODEL, [VENDOR, 'Dell'], [TYPE, TABLET]], [
13397
+ /\b(q(?:mv|ta)\w+) b/i // Verizon Tablet
13398
+ ], [MODEL, [VENDOR, 'Verizon'], [TYPE, TABLET]], [
13399
+ /\b(?:barnes[& ]+noble |bn[rt])([\w\+ ]*) b/i // Barnes & Noble Tablet
13400
+ ], [MODEL, [VENDOR, 'Barnes & Noble'], [TYPE, TABLET]], [
13401
+ /\b(tm\d{3}\w+) b/i
13402
+ ], [MODEL, [VENDOR, 'NuVision'], [TYPE, TABLET]], [
13403
+ /\b(k88) b/i // ZTE K Series Tablet
13404
+ ], [MODEL, [VENDOR, 'ZTE'], [TYPE, TABLET]], [
13405
+ /\b(nx\d{3}j) b/i // ZTE Nubia
13406
+ ], [MODEL, [VENDOR, 'ZTE'], [TYPE, MOBILE]], [
13407
+ /\b(gen\d{3}) b.+49h/i // Swiss GEN Mobile
13408
+ ], [MODEL, [VENDOR, 'Swiss'], [TYPE, MOBILE]], [
13409
+ /\b(zur\d{3}) b/i // Swiss ZUR Tablet
13410
+ ], [MODEL, [VENDOR, 'Swiss'], [TYPE, TABLET]], [
13411
+ /\b((zeki)?tb.*\b) b/i // Zeki Tablets
13412
+ ], [MODEL, [VENDOR, 'Zeki'], [TYPE, TABLET]], [
13413
+ /\b([yr]\d{2}) b/i,
13414
+ /\b(dragon[- ]+touch |dt)(\w{5}) b/i // Dragon Touch Tablet
13415
+ ], [[VENDOR, 'Dragon Touch'], MODEL, [TYPE, TABLET]], [
13416
+ /\b(ns-?\w{0,9}) b/i // Insignia Tablets
13417
+ ], [MODEL, [VENDOR, 'Insignia'], [TYPE, TABLET]], [
13418
+ /\b((nxa|next)-?\w{0,9}) b/i // NextBook Tablets
13419
+ ], [MODEL, [VENDOR, 'NextBook'], [TYPE, TABLET]], [
13420
+ /\b(xtreme\_)?(v(1[045]|2[015]|[3469]0|7[05])) b/i // Voice Xtreme Phones
13421
+ ], [[VENDOR, 'Voice'], MODEL, [TYPE, MOBILE]], [
13422
+ /\b(lvtel\-)?(v1[12]) b/i // LvTel Phones
13423
+ ], [[VENDOR, 'LvTel'], MODEL, [TYPE, MOBILE]], [
13424
+ /\b(ph-1) /i // Essential PH-1
13425
+ ], [MODEL, [VENDOR, 'Essential'], [TYPE, MOBILE]], [
13426
+ /\b(v(100md|700na|7011|917g).*\b) b/i // Envizen Tablets
13427
+ ], [MODEL, [VENDOR, 'Envizen'], [TYPE, TABLET]], [
13428
+ /\b(trio[-\w\. ]+) b/i // MachSpeed Tablets
13429
+ ], [MODEL, [VENDOR, 'MachSpeed'], [TYPE, TABLET]], [
13430
+ /\btu_(1491) b/i // Rotor Tablets
13431
+ ], [MODEL, [VENDOR, 'Rotor'], [TYPE, TABLET]], [
13432
+ /(shield[\w ]+) b/i // Nvidia Shield Tablets
13433
+ ], [MODEL, [VENDOR, 'Nvidia'], [TYPE, TABLET]], [
13434
+ /(sprint) (\w+)/i // Sprint Phones
13435
+ ], [VENDOR, MODEL, [TYPE, MOBILE]], [
13436
+ /(kin\.[onetw]{3})/i // Microsoft Kin
13437
+ ], [[MODEL, /\./g, ' '], [VENDOR, MICROSOFT], [TYPE, MOBILE]], [
13438
+ /droid.+; (cc6666?|et5[16]|mc[239][23]x?|vc8[03]x?)\)/i // Zebra
13439
+ ], [MODEL, [VENDOR, ZEBRA], [TYPE, TABLET]], [
13440
+ /droid.+; (ec30|ps20|tc[2-8]\d[kx])\)/i
13441
+ ], [MODEL, [VENDOR, ZEBRA], [TYPE, MOBILE]], [
13442
+
13443
+ ///////////////////
13444
+ // SMARTTVS
13445
+ ///////////////////
13446
+
13447
+ /smart-tv.+(samsung)/i // Samsung
13448
+ ], [VENDOR, [TYPE, SMARTTV]], [
13449
+ /hbbtv.+maple;(\d+)/i
13450
+ ], [[MODEL, /^/, 'SmartTV'], [VENDOR, SAMSUNG], [TYPE, SMARTTV]], [
13451
+ /(nux; netcast.+smarttv|lg (netcast\.tv-201\d|android tv))/i // LG SmartTV
13452
+ ], [[VENDOR, LG], [TYPE, SMARTTV]], [
13453
+ /(apple) ?tv/i // Apple TV
13454
+ ], [VENDOR, [MODEL, APPLE+' TV'], [TYPE, SMARTTV]], [
13455
+ /crkey/i // Google Chromecast
13456
+ ], [[MODEL, CHROME+'cast'], [VENDOR, GOOGLE], [TYPE, SMARTTV]], [
13457
+ /droid.+aft(\w+)( bui|\))/i // Fire TV
13458
+ ], [MODEL, [VENDOR, AMAZON], [TYPE, SMARTTV]], [
13459
+ /\(dtv[\);].+(aquos)/i,
13460
+ /(aquos-tv[\w ]+)\)/i // Sharp
13461
+ ], [MODEL, [VENDOR, SHARP], [TYPE, SMARTTV]],[
13462
+ /(bravia[\w ]+)( bui|\))/i // Sony
13463
+ ], [MODEL, [VENDOR, SONY], [TYPE, SMARTTV]], [
13464
+ /(mitv-\w{5}) bui/i // Xiaomi
13465
+ ], [MODEL, [VENDOR, XIAOMI], [TYPE, SMARTTV]], [
13466
+ /Hbbtv.*(technisat) (.*);/i // TechniSAT
13467
+ ], [VENDOR, MODEL, [TYPE, SMARTTV]], [
13468
+ /\b(roku)[\dx]*[\)\/]((?:dvp-)?[\d\.]*)/i, // Roku
13469
+ /hbbtv\/\d+\.\d+\.\d+ +\([\w\+ ]*; *([\w\d][^;]*);([^;]*)/i // HbbTV devices
13470
+ ], [[VENDOR, trim], [MODEL, trim], [TYPE, SMARTTV]], [
13471
+ /\b(android tv|smart[- ]?tv|opera tv|tv; rv:)\b/i // SmartTV from Unidentified Vendors
13472
+ ], [[TYPE, SMARTTV]], [
13473
+
13474
+ ///////////////////
13475
+ // CONSOLES
13476
+ ///////////////////
13477
+
13478
+ /(ouya)/i, // Ouya
13479
+ /(nintendo) ([wids3utch]+)/i // Nintendo
13480
+ ], [VENDOR, MODEL, [TYPE, CONSOLE]], [
13481
+ /droid.+; (shield) bui/i // Nvidia
13482
+ ], [MODEL, [VENDOR, 'Nvidia'], [TYPE, CONSOLE]], [
13483
+ /(playstation [345portablevi]+)/i // Playstation
13484
+ ], [MODEL, [VENDOR, SONY], [TYPE, CONSOLE]], [
13485
+ /\b(xbox(?: one)?(?!; xbox))[\); ]/i // Microsoft Xbox
13486
+ ], [MODEL, [VENDOR, MICROSOFT], [TYPE, CONSOLE]], [
13487
+
13488
+ ///////////////////
13489
+ // WEARABLES
13490
+ ///////////////////
13491
+
13492
+ /((pebble))app/i // Pebble
13493
+ ], [VENDOR, MODEL, [TYPE, WEARABLE]], [
13494
+ /(watch)(?: ?os[,\/]|\d,\d\/)[\d\.]+/i // Apple Watch
13495
+ ], [MODEL, [VENDOR, APPLE], [TYPE, WEARABLE]], [
13496
+ /droid.+; (glass) \d/i // Google Glass
13497
+ ], [MODEL, [VENDOR, GOOGLE], [TYPE, WEARABLE]], [
13498
+ /droid.+; (wt63?0{2,3})\)/i
13499
+ ], [MODEL, [VENDOR, ZEBRA], [TYPE, WEARABLE]], [
13500
+ /(quest( 2| pro)?)/i // Oculus Quest
13501
+ ], [MODEL, [VENDOR, FACEBOOK], [TYPE, WEARABLE]], [
13502
+
13503
+ ///////////////////
13504
+ // EMBEDDED
13505
+ ///////////////////
13506
+
13507
+ /(tesla)(?: qtcarbrowser|\/[-\w\.]+)/i // Tesla
13508
+ ], [VENDOR, [TYPE, EMBEDDED]], [
13509
+ /(aeobc)\b/i // Echo Dot
13510
+ ], [MODEL, [VENDOR, AMAZON], [TYPE, EMBEDDED]], [
13511
+
13512
+ ////////////////////
13513
+ // MIXED (GENERIC)
13514
+ ///////////////////
13515
+
13516
+ /droid .+?; ([^;]+?)(?: bui|\) applew).+? mobile safari/i // Android Phones from Unidentified Vendors
13517
+ ], [MODEL, [TYPE, MOBILE]], [
13518
+ /droid .+?; ([^;]+?)(?: bui|\) applew).+?(?! mobile) safari/i // Android Tablets from Unidentified Vendors
13519
+ ], [MODEL, [TYPE, TABLET]], [
13520
+ /\b((tablet|tab)[;\/]|focus\/\d(?!.+mobile))/i // Unidentifiable Tablet
13521
+ ], [[TYPE, TABLET]], [
13522
+ /(phone|mobile(?:[;\/]| [ \w\/\.]*safari)|pda(?=.+windows ce))/i // Unidentifiable Mobile
13523
+ ], [[TYPE, MOBILE]], [
13524
+ /(android[-\w\. ]{0,9});.+buil/i // Generic Android Device
13525
+ ], [MODEL, [VENDOR, 'Generic']]
13526
+ ],
13527
+
13528
+ engine : [[
13529
+
13530
+ /windows.+ edge\/([\w\.]+)/i // EdgeHTML
13531
+ ], [VERSION, [NAME, EDGE+'HTML']], [
13532
+
13533
+ /webkit\/537\.36.+chrome\/(?!27)([\w\.]+)/i // Blink
13534
+ ], [VERSION, [NAME, 'Blink']], [
13535
+
13536
+ /(presto)\/([\w\.]+)/i, // Presto
13537
+ /(webkit|trident|netfront|netsurf|amaya|lynx|w3m|goanna)\/([\w\.]+)/i, // WebKit/Trident/NetFront/NetSurf/Amaya/Lynx/w3m/Goanna
13538
+ /ekioh(flow)\/([\w\.]+)/i, // Flow
13539
+ /(khtml|tasman|links)[\/ ]\(?([\w\.]+)/i, // KHTML/Tasman/Links
13540
+ /(icab)[\/ ]([23]\.[\d\.]+)/i, // iCab
13541
+ /\b(libweb)/i
13542
+ ], [NAME, VERSION], [
13543
+
13544
+ /rv\:([\w\.]{1,9})\b.+(gecko)/i // Gecko
13545
+ ], [VERSION, NAME]
13546
+ ],
13547
+
13548
+ os : [[
13549
+
13550
+ // Windows
13551
+ /microsoft (windows) (vista|xp)/i // Windows (iTunes)
13552
+ ], [NAME, VERSION], [
13553
+ /(windows) nt 6\.2; (arm)/i, // Windows RT
13554
+ /(windows (?:phone(?: os)?|mobile))[\/ ]?([\d\.\w ]*)/i, // Windows Phone
13555
+ /(windows)[\/ ]?([ntce\d\. ]+\w)(?!.+xbox)/i
13556
+ ], [NAME, [VERSION, strMapper, windowsVersionMap]], [
13557
+ /(win(?=3|9|n)|win 9x )([nt\d\.]+)/i
13558
+ ], [[NAME, 'Windows'], [VERSION, strMapper, windowsVersionMap]], [
13559
+
13560
+ // iOS/macOS
13561
+ /ip[honead]{2,4}\b(?:.*os ([\w]+) like mac|; opera)/i, // iOS
13562
+ /(?:ios;fbsv\/|iphone.+ios[\/ ])([\d\.]+)/i,
13563
+ /cfnetwork\/.+darwin/i
13564
+ ], [[VERSION, /_/g, '.'], [NAME, 'iOS']], [
13565
+ /(mac os x) ?([\w\. ]*)/i,
13566
+ /(macintosh|mac_powerpc\b)(?!.+haiku)/i // Mac OS
13567
+ ], [[NAME, MAC_OS], [VERSION, /_/g, '.']], [
13568
+
13569
+ // Mobile OSes
13570
+ /droid ([\w\.]+)\b.+(android[- ]x86|harmonyos)/i // Android-x86/HarmonyOS
13571
+ ], [VERSION, NAME], [ // Android/WebOS/QNX/Bada/RIM/Maemo/MeeGo/Sailfish OS
13572
+ /(android|webos|qnx|bada|rim tablet os|maemo|meego|sailfish)[-\/ ]?([\w\.]*)/i,
13573
+ /(blackberry)\w*\/([\w\.]*)/i, // Blackberry
13574
+ /(tizen|kaios)[\/ ]([\w\.]+)/i, // Tizen/KaiOS
13575
+ /\((series40);/i // Series 40
13576
+ ], [NAME, VERSION], [
13577
+ /\(bb(10);/i // BlackBerry 10
13578
+ ], [VERSION, [NAME, BLACKBERRY]], [
13579
+ /(?:symbian ?os|symbos|s60(?=;)|series60)[-\/ ]?([\w\.]*)/i // Symbian
13580
+ ], [VERSION, [NAME, 'Symbian']], [
13581
+ /mozilla\/[\d\.]+ \((?:mobile|tablet|tv|mobile; [\w ]+); rv:.+ gecko\/([\w\.]+)/i // Firefox OS
13582
+ ], [VERSION, [NAME, FIREFOX+' OS']], [
13583
+ /web0s;.+rt(tv)/i,
13584
+ /\b(?:hp)?wos(?:browser)?\/([\w\.]+)/i // WebOS
13585
+ ], [VERSION, [NAME, 'webOS']], [
13586
+ /watch(?: ?os[,\/]|\d,\d\/)([\d\.]+)/i // watchOS
13587
+ ], [VERSION, [NAME, 'watchOS']], [
13588
+
13589
+ // Google Chromecast
13590
+ /crkey\/([\d\.]+)/i // Google Chromecast
13591
+ ], [VERSION, [NAME, CHROME+'cast']], [
13592
+ /(cros) [\w]+(?:\)| ([\w\.]+)\b)/i // Chromium OS
13593
+ ], [[NAME, CHROMIUM_OS], VERSION],[
13594
+
13595
+ // Smart TVs
13596
+ /panasonic;(viera)/i, // Panasonic Viera
13597
+ /(netrange)mmh/i, // Netrange
13598
+ /(nettv)\/(\d+\.[\w\.]+)/i, // NetTV
13599
+
13600
+ // Console
13601
+ /(nintendo|playstation) ([wids345portablevuch]+)/i, // Nintendo/Playstation
13602
+ /(xbox); +xbox ([^\);]+)/i, // Microsoft Xbox (360, One, X, S, Series X, Series S)
13603
+
13604
+ // Other
13605
+ /\b(joli|palm)\b ?(?:os)?\/?([\w\.]*)/i, // Joli/Palm
13606
+ /(mint)[\/\(\) ]?(\w*)/i, // Mint
13607
+ /(mageia|vectorlinux)[; ]/i, // Mageia/VectorLinux
13608
+ /([kxln]?ubuntu|debian|suse|opensuse|gentoo|arch(?= linux)|slackware|fedora|mandriva|centos|pclinuxos|red ?hat|zenwalk|linpus|raspbian|plan 9|minix|risc os|contiki|deepin|manjaro|elementary os|sabayon|linspire)(?: gnu\/linux)?(?: enterprise)?(?:[- ]linux)?(?:-gnu)?[-\/ ]?(?!chrom|package)([-\w\.]*)/i,
13609
+ // Ubuntu/Debian/SUSE/Gentoo/Arch/Slackware/Fedora/Mandriva/CentOS/PCLinuxOS/RedHat/Zenwalk/Linpus/Raspbian/Plan9/Minix/RISCOS/Contiki/Deepin/Manjaro/elementary/Sabayon/Linspire
13610
+ /(hurd|linux) ?([\w\.]*)/i, // Hurd/Linux
13611
+ /(gnu) ?([\w\.]*)/i, // GNU
13612
+ /\b([-frentopcghs]{0,5}bsd|dragonfly)[\/ ]?(?!amd|[ix346]{1,2}86)([\w\.]*)/i, // FreeBSD/NetBSD/OpenBSD/PC-BSD/GhostBSD/DragonFly
13613
+ /(haiku) (\w+)/i // Haiku
13614
+ ], [NAME, VERSION], [
13615
+ /(sunos) ?([\w\.\d]*)/i // Solaris
13616
+ ], [[NAME, 'Solaris'], VERSION], [
13617
+ /((?:open)?solaris)[-\/ ]?([\w\.]*)/i, // Solaris
13618
+ /(aix) ((\d)(?=\.|\)| )[\w\.])*/i, // AIX
13619
+ /\b(beos|os\/2|amigaos|morphos|openvms|fuchsia|hp-ux|serenityos)/i, // BeOS/OS2/AmigaOS/MorphOS/OpenVMS/Fuchsia/HP-UX/SerenityOS
13620
+ /(unix) ?([\w\.]*)/i // UNIX
13621
+ ], [NAME, VERSION]
13622
+ ]
13623
+ };
13624
+
13625
+ /////////////////
13626
+ // Constructor
13627
+ ////////////////
13628
+
13629
+ var UAParser = function (ua, extensions) {
13630
+
13631
+ if (typeof ua === OBJ_TYPE) {
13632
+ extensions = ua;
13633
+ ua = undefined$1;
13634
+ }
13635
+
13636
+ if (!(this instanceof UAParser)) {
13637
+ return new UAParser(ua, extensions).getResult();
13638
+ }
13639
+
13640
+ var _navigator = (typeof window !== UNDEF_TYPE && window.navigator) ? window.navigator : undefined$1;
13641
+ var _ua = ua || ((_navigator && _navigator.userAgent) ? _navigator.userAgent : EMPTY);
13642
+ var _uach = (_navigator && _navigator.userAgentData) ? _navigator.userAgentData : undefined$1;
13643
+ var _rgxmap = extensions ? extend(regexes, extensions) : regexes;
13644
+ var _isSelfNav = _navigator && _navigator.userAgent == _ua;
13645
+
13646
+ this.getBrowser = function () {
13647
+ var _browser = {};
13648
+ _browser[NAME] = undefined$1;
13649
+ _browser[VERSION] = undefined$1;
13650
+ rgxMapper.call(_browser, _ua, _rgxmap.browser);
13651
+ _browser[MAJOR] = majorize(_browser[VERSION]);
13652
+ // Brave-specific detection
13653
+ if (_isSelfNav && _navigator && _navigator.brave && typeof _navigator.brave.isBrave == FUNC_TYPE) {
13654
+ _browser[NAME] = 'Brave';
13655
+ }
13656
+ return _browser;
13657
+ };
13658
+ this.getCPU = function () {
13659
+ var _cpu = {};
13660
+ _cpu[ARCHITECTURE] = undefined$1;
13661
+ rgxMapper.call(_cpu, _ua, _rgxmap.cpu);
13662
+ return _cpu;
13663
+ };
13664
+ this.getDevice = function () {
13665
+ var _device = {};
13666
+ _device[VENDOR] = undefined$1;
13667
+ _device[MODEL] = undefined$1;
13668
+ _device[TYPE] = undefined$1;
13669
+ rgxMapper.call(_device, _ua, _rgxmap.device);
13670
+ if (_isSelfNav && !_device[TYPE] && _uach && _uach.mobile) {
13671
+ _device[TYPE] = MOBILE;
13672
+ }
13673
+ // iPadOS-specific detection: identified as Mac, but has some iOS-only properties
13674
+ if (_isSelfNav && _device[MODEL] == 'Macintosh' && _navigator && typeof _navigator.standalone !== UNDEF_TYPE && _navigator.maxTouchPoints && _navigator.maxTouchPoints > 2) {
13675
+ _device[MODEL] = 'iPad';
13676
+ _device[TYPE] = TABLET;
13677
+ }
13678
+ return _device;
13679
+ };
13680
+ this.getEngine = function () {
13681
+ var _engine = {};
13682
+ _engine[NAME] = undefined$1;
13683
+ _engine[VERSION] = undefined$1;
13684
+ rgxMapper.call(_engine, _ua, _rgxmap.engine);
13685
+ return _engine;
13686
+ };
13687
+ this.getOS = function () {
13688
+ var _os = {};
13689
+ _os[NAME] = undefined$1;
13690
+ _os[VERSION] = undefined$1;
13691
+ rgxMapper.call(_os, _ua, _rgxmap.os);
13692
+ if (_isSelfNav && !_os[NAME] && _uach && _uach.platform != 'Unknown') {
13693
+ _os[NAME] = _uach.platform
13694
+ .replace(/chrome os/i, CHROMIUM_OS)
13695
+ .replace(/macos/i, MAC_OS); // backward compatibility
13696
+ }
13697
+ return _os;
13698
+ };
13699
+ this.getResult = function () {
13700
+ return {
13701
+ ua : this.getUA(),
13702
+ browser : this.getBrowser(),
13703
+ engine : this.getEngine(),
13704
+ os : this.getOS(),
13705
+ device : this.getDevice(),
13706
+ cpu : this.getCPU()
13707
+ };
13708
+ };
13709
+ this.getUA = function () {
13710
+ return _ua;
13711
+ };
13712
+ this.setUA = function (ua) {
13713
+ _ua = (typeof ua === STR_TYPE && ua.length > UA_MAX_LENGTH) ? trim(ua, UA_MAX_LENGTH) : ua;
13714
+ return this;
13715
+ };
13716
+ this.setUA(_ua);
13717
+ return this;
13718
+ };
13719
+
13720
+ UAParser.VERSION = LIBVERSION;
13721
+ UAParser.BROWSER = enumerize([NAME, VERSION, MAJOR]);
13722
+ UAParser.CPU = enumerize([ARCHITECTURE]);
13723
+ UAParser.DEVICE = enumerize([MODEL, VENDOR, TYPE, CONSOLE, MOBILE, SMARTTV, TABLET, WEARABLE, EMBEDDED]);
13724
+ UAParser.ENGINE = UAParser.OS = enumerize([NAME, VERSION]);
13725
+
13726
+ ///////////
13727
+ // Export
13728
+ //////////
13729
+
13730
+ // check js environment
13731
+ {
13732
+ // nodejs env
13733
+ if (module.exports) {
13734
+ exports = module.exports = UAParser;
13735
+ }
13736
+ exports.UAParser = UAParser;
13737
+ }
13738
+
13739
+ // jQuery/Zepto specific (optional)
13740
+ // Note:
13741
+ // In AMD env the global scope should be kept clean, but jQuery is an exception.
13742
+ // jQuery always exports to global scope, unless jQuery.noConflict(true) is used,
13743
+ // and we should catch that.
13744
+ var $ = typeof window !== UNDEF_TYPE && (window.jQuery || window.Zepto);
13745
+ if ($ && !$.ua) {
13746
+ var parser = new UAParser();
13747
+ $.ua = parser.getResult();
13748
+ $.ua.get = function () {
13749
+ return parser.getUA();
13750
+ };
13751
+ $.ua.set = function (ua) {
13752
+ parser.setUA(ua);
13753
+ var result = parser.getResult();
13754
+ for (var prop in result) {
13755
+ $.ua[prop] = result[prop];
13756
+ }
13757
+ };
13758
+ }
13759
+
13760
+ })(typeof window === 'object' ? window : commonjsGlobal);
13761
+ } (uaParser, uaParser.exports));
13762
+
13763
+ var UAParser = uaParser.exports;
13764
+
12839
13765
  var _a, _b, _c, _d, _e;
13766
+ const getUAParserData = (userAgent) => {
13767
+ var _a, _b;
13768
+ if (userAgent) {
13769
+ const uaParserData = new UAParser(userAgent);
13770
+ const Parser = uaParserData.getResult();
13771
+ const { ua } = Parser;
13772
+ const browserName = Parser.browser.name;
13773
+ const browserVersion = Parser.browser.version;
13774
+ const osName = Parser.os.name;
13775
+ const osVersion = Parser.os.version;
13776
+ return {
13777
+ description: `${browserName} ${browserVersion} on ${osName} ${osVersion}`,
13778
+ layout: (_a = Parser === null || Parser === void 0 ? void 0 : Parser.engine) === null || _a === void 0 ? void 0 : _a.name,
13779
+ manufacturer: null,
13780
+ name: browserName,
13781
+ prerelease: null,
13782
+ product: (_b = Parser === null || Parser === void 0 ? void 0 : Parser.device) === null || _b === void 0 ? void 0 : _b.model,
13783
+ ua: ua.replace(/Macintosh;/, 'Linux;').replace(/Intel Mac OS X (\d+_\d+_\d+)/, 'Android $1').replace(/ AppleWebKit/, ' Mobile AppleWebKit'),
13784
+ version: browserVersion,
13785
+ os: {
13786
+ architecture: 32,
13787
+ family: osName,
13788
+ version: osVersion,
13789
+ },
13790
+ };
13791
+ }
13792
+ return undefined;
13793
+ };
12840
13794
  const isMobile = ['Android', 'iOS'].some((os) => { var _a, _b; return (_b = (_a = platform.os) === null || _a === void 0 ? void 0 : _a.family) === null || _b === void 0 ? void 0 : _b.includes(os); })
12841
13795
  || ((_a = platform.name) === null || _a === void 0 ? void 0 : _a.includes('Mobile'))
12842
13796
  || (navigator.maxTouchPoints > 2 && /MacIntel/.test(navigator.platform)); // For iPads
@@ -30212,7 +31166,7 @@ const prod_config = {
30212
31166
  const config$1 = (configEnv) => {
30213
31167
  let env = configEnv;
30214
31168
  try {
30215
- env !== null && env !== void 0 ? env : (env = "prod");
31169
+ env !== null && env !== void 0 ? env : (env = "staging");
30216
31170
  }
30217
31171
  catch (_a) { }
30218
31172
  switch (env) {
@@ -30231,8 +31185,8 @@ const configGenerator = () => {
30231
31185
  let environment;
30232
31186
  let release;
30233
31187
  try {
30234
- environment !== null && environment !== void 0 ? environment : (environment = "prod");
30235
- release !== null && release !== void 0 ? release : (release = "1.1.32");
31188
+ environment !== null && environment !== void 0 ? environment : (environment = "staging");
31189
+ release !== null && release !== void 0 ? release : (release = "1.1.33");
30236
31190
  }
30237
31191
  catch (_a) {
30238
31192
  console.error('sentry configGenerator error');
@@ -44974,7 +45928,7 @@ const accWidgetMachine = createMachine({
44974
45928
  tags: [TAGS.LOADING],
44975
45929
  invoke: {
44976
45930
  id: 'createVideo',
44977
- src: ({ widgetConfig: { candidate, job, video, config } }) => createVideo({ candidate, job, video }, config.event_id),
45931
+ src: ({ widgetConfig: { candidate, job, video, config } }) => createVideo({ candidate, job, video: (Object.assign(Object.assign({}, video), { platform: getUAParserData(navigator.userAgent) })) }, config.event_id),
44978
45932
  onDone: [
44979
45933
  {
44980
45934
  actions: [ACTIONS$6.SET_CONFIG, ACTIONS$6.SET_EVENT_ID, ACTIONS$6.SET_SESSION, { type: ACTIONS$6.CONSOLE_DEBUG, data: { message: DEBUG.INTERVIEW_DATA_RECEIVED } }],
@@ -48556,7 +49510,7 @@ const useAccessibility = () => {
48556
49510
  };
48557
49511
 
48558
49512
  const Widget = forwardRef(({ candidate, job, video, config, disabled = false, buttonText = 'START INTERVIEW', buttonStyle = {}, children, styleUrls = [], fontsUrls = [], }, clientRef) => {
48559
- const widget_version = "1.1.32";
49513
+ const widget_version = "1.1.33";
48560
49514
  const [isWidgetOpen, setIsWidgetOpen] = useState(false);
48561
49515
  const [isWidgetMinimized, setIsWidgetMinimized] = useState(false);
48562
49516
  const [isIncognitoMode, setIsIncognitoMode] = useState(false);