@sgrsoft/vpe-core-sdk 0.20.2 → 0.20.3
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/maManager.d.ts +0 -4
- package/dist/vpe-core-sdk.cjs.js +1 -1
- package/dist/vpe-core-sdk.es.js +815 -819
- package/package.json +1 -1
package/dist/vpe-core-sdk.es.js
CHANGED
|
@@ -1,184 +1,183 @@
|
|
|
1
1
|
var p = _t;
|
|
2
|
-
function
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
return x;
|
|
6
|
-
}, Ie();
|
|
7
|
-
}
|
|
8
|
-
(function(x, t) {
|
|
9
|
-
for (var e = _t, i = x(); ; )
|
|
10
|
-
try {
|
|
11
|
-
var a = parseInt(e(486)) / 1 + -parseInt(e(527)) / 2 * (parseInt(e(498)) / 3) + -parseInt(e(521)) / 4 + parseInt(e(504)) / 5 * (-parseInt(e(518)) / 6) + parseInt(e(476)) / 7 + -parseInt(e(512)) / 8 + parseInt(e(492)) / 9;
|
|
12
|
-
if (a === t) break;
|
|
13
|
-
i.push(i.shift());
|
|
14
|
-
} catch {
|
|
15
|
-
i.push(i.shift());
|
|
16
|
-
}
|
|
17
|
-
})(Ie, 355083);
|
|
18
|
-
function _t(x, t) {
|
|
19
|
-
x = x - 445;
|
|
20
|
-
var e = Ie(), i = e[x];
|
|
2
|
+
function _t(a, t) {
|
|
3
|
+
a = a - 406;
|
|
4
|
+
var e = ke(), i = e[a];
|
|
21
5
|
return i;
|
|
22
6
|
}
|
|
23
|
-
|
|
24
|
-
var
|
|
25
|
-
(function(x, t) {
|
|
26
|
-
for (var e = Ct, i = x(); ; )
|
|
7
|
+
(function(a, t) {
|
|
8
|
+
for (var e = _t, i = a(); ; )
|
|
27
9
|
try {
|
|
28
|
-
var
|
|
29
|
-
if (
|
|
10
|
+
var x = -parseInt(e(438)) / 1 + -parseInt(e(429)) / 2 * (-parseInt(e(406)) / 3) + -parseInt(e(449)) / 4 * (parseInt(e(441)) / 5) + -parseInt(e(418)) / 6 + parseInt(e(407)) / 7 + parseInt(e(473)) / 8 * (parseInt(e(460)) / 9) + parseInt(e(450)) / 10;
|
|
11
|
+
if (x === t) break;
|
|
30
12
|
i.push(i.shift());
|
|
31
13
|
} catch {
|
|
32
14
|
i.push(i.shift());
|
|
33
15
|
}
|
|
34
|
-
})(ke,
|
|
16
|
+
})(ke, 231086);
|
|
35
17
|
function ke() {
|
|
36
|
-
var
|
|
18
|
+
var a = ["1537386zeccsY", "Sexuality", "Pause", "Subtitle Style", "The network connection is unstable.", "Font Color", "Monthly basic API calls exceeded. Please switch to a paid version.", "Required module was not loaded. (hls.js)", "Font Size", "Window Color", "Cannot play DASH video on iOS.", "1846GFwSMT", "Change text, color, and background styles", "Auto", "Player Execution Failed", "Yellow", "Black", "Raised", "Red", "seconds until auto-play", "353640QVsEzk", "Horror", "Mute", "29725HpHiyF", "Autoplay", "Uniform", "Apply Default Style", "This video may be inappropriate for minors.", "Background Color", "The license is not valid.", "This feature requires the Standard plan.", "212ejHLgC", "3037960CnWLVj", "Cannot play video", "Bold", "hour(s)", "Play", "Next video", "Not used", "Auto Skip Opening/Ending", "Magenta", "Extra Bold", "243387YMhVfi", "License", "Green", "Authentication Failed", "Font Weight", "The live stream is OFFLINE.", "Subtitles", "Auto Skip Opening", "Auto Skip Intro", "Screen capture / screen recording has been detected.", "Violence", "hour", "Background Opacity", "136uMotGl", "FairPlay certificate validation failed.", "Thin", "Cancel", "Invalid access. Please check your access_key.", "Invalid URL format.", "Quality", "Turn off captions", "Skip Ending", "This video is rated for all audiences.", "Settings", "Language", "Blue", "In a moment", "Cyan", "minute(s)", "Next video will play in {timeTxt} seconds.", "Turn on captions", "You are muted.", "Window Opacity", "3zpyEAv", "2741144IEcSiQ", "Drop Shadow", "Failed to communicate with the DRM license server.", "Replay", "Normal", "Scheduled", "Player Startup Failed", "Auto Skip Ending", "Unmute", "second(s)", "Exit fullscreen"];
|
|
37
19
|
return ke = function() {
|
|
38
|
-
return
|
|
20
|
+
return a;
|
|
39
21
|
}, ke();
|
|
40
22
|
}
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
23
|
+
const qt = { common: { cancel: p(476), auto: p(431), normal: p(411), notUse: p(456), prev: "Previous video", next: p(455), delayText: p(437), license: p(461), play: p(454), pause: p(420), replay: p(410), fullOn: "Fullscreen", fullOff: p(417), muteOn: p(440), muteOff: p(415), captionOff: p(480), captionOn: p(490), setting: p(483), live: "LIVE", miniPlayer: "Mini player", isMute: p(491), subtitle: p(466), subtitleNot: "Subtitles not available" }, settings: { autoplay: p(442), playbackRate: "Playback speed", captions: "Subtitles", quality: p(479) }, skip: { introSkip: "Skip Intro", openingSkip: "Skip Opening", endingSkip: p(481), autoSkipIntro: p(468), autoSkipOpening: p(467), autoSkipEnding: p(414), autoSkipOpeningEnding: p(457) }, ageRating: { noticeAll: p(482), notice12: "This video may be inappropriate for children under 12 and requires parental guidance.", notice15: "This video may be inappropriate for children under 15 and requires parental guidance.", notice19: p(445) }, contentWarning: { sexuality: p(419), violence: p(470), language: p(484), drugs: "Drugs", horror: p(439), imitation: "Imitation risk", provocative: "Provocative content" }, error: { "01": { title: p(451), desc: p(477) }, "02": { title: p(451), desc: "You do not have permission to play this video." }, "03": { title: p(463), desc: p(422) }, "04": { title: p(451), desc: "The video could not be played." }, "05": { title: p(451), desc: p(447) }, "06": { title: p(451), desc: p(424) }, "07": { title: p(451), desc: "Unsupported format." }, "08": { title: "Cannot play video", desc: p(478) }, "09": { title: p(451), desc: p(465) }, 10: { title: p(451), desc: p(428) }, 11: { title: p(451), desc: "Invalid DRM token." }, 12: { title: p(451), desc: p(409) }, 13: { title: p(451), desc: p(474) }, 14: { title: p(451), desc: p(469) }, 15: { title: p(432), desc: p(425) }, 16: { title: "Player Execution Failed", desc: "Required module was not loaded. (dash.js)" }, 17: { title: p(413), desc: p(448) } }, tv: { default: "Default", quality: p(479), subtitleStyle: p(421), subtitleStyleDesc: p(430), applyDefaultStyle: p(444), fontColor: p(423), fontSize: p(426), textOpacity: "Text Opacity", edgeStyle: "Text Edge Style", bgColor: p(446), bgOpacity: p(472), windowColor: p(427), windowOpacity: p(492), fontWeight: p(464), weight: { thin: p(475), normal: "Normal", semiBold: "Semi Bold", bold: p(452), extraBold: p(459) }, color: { white: "White", black: p(434), red: p(436), green: p(462), blue: p(485), yellow: p(433), magenta: p(458), cyan: p(487) }, edge: { none: "None", dropShadow: p(408), raised: p(435), depressed: "Depressed", uniform: p(443) } }, alternative: { hour: p(453), minute: p(488), second: p(416), after: p(486), afterMin: "min", afterHour: p(471), afterDay: "day", startPlay: "Video will start in {timeTxt}.", nextPlay: p(489), afterPlay: p(412) } };
|
|
24
|
+
var g = Tt;
|
|
25
|
+
function Tt(a, t) {
|
|
26
|
+
a = a - 177;
|
|
27
|
+
var e = Ee(), i = e[a];
|
|
44
28
|
return i;
|
|
45
29
|
}
|
|
46
|
-
|
|
47
|
-
var
|
|
48
|
-
function Tt(x, t) {
|
|
49
|
-
x = x - 443;
|
|
50
|
-
var e = Ee(), i = e[x];
|
|
51
|
-
return i;
|
|
52
|
-
}
|
|
53
|
-
(function(x, t) {
|
|
54
|
-
for (var e = Tt, i = x(); ; )
|
|
30
|
+
(function(a, t) {
|
|
31
|
+
for (var e = Tt, i = a(); ; )
|
|
55
32
|
try {
|
|
56
|
-
var
|
|
57
|
-
if (
|
|
33
|
+
var x = -parseInt(e(205)) / 1 * (parseInt(e(211)) / 2) + parseInt(e(218)) / 3 + -parseInt(e(177)) / 4 + parseInt(e(206)) / 5 * (parseInt(e(212)) / 6) + -parseInt(e(181)) / 7 + -parseInt(e(221)) / 8 * (parseInt(e(187)) / 9) + parseInt(e(231)) / 10;
|
|
34
|
+
if (x === t) break;
|
|
58
35
|
i.push(i.shift());
|
|
59
36
|
} catch {
|
|
60
37
|
i.push(i.shift());
|
|
61
38
|
}
|
|
62
|
-
})(Ee,
|
|
63
|
-
const
|
|
39
|
+
})(Ee, 721967);
|
|
40
|
+
const Kt = { common: { cancel: "취소", auto: "자동", normal: "보통", notUse: g(242), prev: g(219), next: "다음 동영상", delayText: g(239), license: g(203), play: "재생", pause: "일시정지", replay: g(215), fullOn: g(186), fullOff: "전체화면 해제", muteOn: g(208), muteOff: g(226), captionOff: "자막끄기", captionOn: g(185), setting: "설정", live: g(202), miniPlayer: g(199), isMute: "음소거 상태입니다.", subtitle: "자막", subtitleNot: g(224) }, settings: { autoplay: "자동재생", playbackRate: g(192), captions: "자막", quality: g(241) }, skip: { introSkip: g(195), openingSkip: g(207), endingSkip: g(216), autoSkipIntro: g(232), autoSkipOpening: g(223), autoSkipEnding: "엔딩 자동 스킵", autoSkipOpeningEnding: "오프닝/엔딩 자동 스킵" }, ageRating: { noticeAll: "이 영상은 전체 관람가 영상입니다.", notice12: g(238), notice15: g(240), notice19: g(179) }, contentWarning: { sexuality: g(193), violence: "폭력", language: "욕설", drugs: "약물", horror: "공포", imitation: g(213), provocative: g(222) }, error: { "01": { title: g(197), desc: g(184) }, "02": { title: g(197), desc: "동영상을 재생할 권한이 없습니다." }, "03": { title: g(188), desc: "네트워크 연결이 원활하지 않습니다." }, "04": { title: g(197), desc: "동영상을 재생할 수 없습니다." }, "05": { title: g(197), desc: g(178) }, "06": { title: g(197), desc: g(229) }, "07": { title: "동영상을 재생할 수 없음", desc: g(204) }, "08": { title: g(197), desc: "URL 형식이 잘못되었습니다." }, "09": { title: "동영상을 재생할 수 없음", desc: g(198) }, 10: { title: g(197), desc: g(217) }, 11: { title: "동영상을 재생할 수 없음", desc: g(228) }, 12: { title: "동영상을 재생할 수 없음", desc: g(200) }, 13: { title: g(197), desc: "FairPlay 인증서 검증에 실패하였습니다." }, 14: { title: "동영상을 재생할 수 없음", desc: "화면 캡쳐 / 화면 녹화가 감지되었습니다." }, 15: { title: g(201), desc: g(230) }, 16: { title: "플레이어 실행 실패", desc: "필수 모듈이 로드되지 않았습니다. (dash.js)" }, 17: { title: g(196), desc: "Standard 요금제가 필요한 기능입니다." } }, tv: { default: "기본", quality: "화질", subtitleStyle: g(189), subtitleStyleDesc: g(235), applyDefaultStyle: g(234), fontColor: "글꼴 색상", fontSize: g(191), textOpacity: g(225), edgeStyle: g(194), bgColor: "배경 색상", bgOpacity: g(243), windowColor: g(236), windowOpacity: g(237), fontWeight: g(220), weight: { thin: "얇게", normal: "보통", semiBold: g(227), bold: "굵게", extraBold: g(209) }, color: { white: "흰색", black: "검정색", red: g(180), green: g(183), blue: "파란색", yellow: g(244), magenta: g(214), cyan: "청록색" }, edge: { none: "없음", dropShadow: g(210), raised: "양각", depressed: "음각", uniform: "균일" } }, alternative: { hour: "시", minute: "분", second: "초", after: "잠시 ", afterMin: "분 ", afterHour: g(190), afterDay: "일 ", startPlay: g(233), nextPlay: g(182), afterPlay: "예정" } };
|
|
64
41
|
function Ee() {
|
|
65
|
-
var
|
|
42
|
+
var a = ["플레이어 실행 실패", "실시간", "라이선스", "지원하지 않는 형식입니다.", "1ThABbs", "44885qjljXa", "오프닝 건너뛰기", "음소거", "매우 굵게", "그림자", "92978gVgcEn", "198fxVJjc", "모방위험", "자홍색", "다시보기", "엔딩 건너뛰기", "iOS에서 Dash 비디오를 재생할 수 없습니다.", "386634XBFqgB", "이전 동영상", "글자 굵기", "1736qtywGn", "자극적 장면", "오프닝 자동 스킵", "자막 사용 불가", "텍스트 불투명도", "음소거 해제", "약간 굵게", "DRM 토큰이 잘못되었습니다.", "월 기본 제공 호출 건수를 초과하였습니다. 유료 버전으로 전환 후 사용 부탁 드립니다.", "필수 모듈이 로드되지 않았습니다. (hls.js)", "24597250FodDuQ", "인트로 자동 스킵", "{timeTxt} 후 영상이 시작됩니다.", "기본 스타일 적용", "텍스트, 색상, 배경 스타일 변경", "창 색상", "창 불투명도", "이 영상은 12세 미만의 청소년이 시청하기에 부적절하므로 보호자의 시청지도가 필요한 영상입니다.", "초 뒤 자동재생", "이 영상은 15세 미만의 청소년이 시청하기에 부적절하므로 보호자의 시청지도가 필요한 영상입니다.", "해상도", "사용안함", "배경 불투명도", "노란색", "3663012gijeFW", "라이선스가 유효하지 않습니다.", "이 영상은 청소년이 시청하기에 부적절한 영상입니다.", "빨간색", "4532514LLhvpa", "{timeTxt}초 후 다음 영상이 재생됩니다.", "초록색", "잘못된 접근입니다. access_key를 확인해주세요.", "자막켜기", "전체화면", "22941gTHcIl", "인증 실패", "자막 스타일", "시간 ", "글꼴 크기", "재생 속도", "성적 표현", "글자 테두리 스타일", "인트로 건너뛰기", "플레이어 구동 실패", "동영상을 재생할 수 없음", "라이브스트림이 OFFLINE 입니다.", "미니플레이어", "DRM 라이선스 서버와 통신에 실패하였습니다."];
|
|
66
43
|
return Ee = function() {
|
|
67
|
-
return
|
|
44
|
+
return a;
|
|
68
45
|
}, Ee();
|
|
69
46
|
}
|
|
70
|
-
|
|
71
|
-
(function(
|
|
72
|
-
|
|
73
|
-
for (; ; )
|
|
47
|
+
var w = Ct;
|
|
48
|
+
(function(a, t) {
|
|
49
|
+
for (var e = Ct, i = a(); ; )
|
|
74
50
|
try {
|
|
75
|
-
|
|
51
|
+
var x = parseInt(e(366)) / 1 + parseInt(e(402)) / 2 * (-parseInt(e(383)) / 3) + parseInt(e(374)) / 4 + parseInt(e(369)) / 5 * (-parseInt(e(373)) / 6) + -parseInt(e(378)) / 7 * (-parseInt(e(392)) / 8) + parseInt(e(398)) / 9 * (-parseInt(e(425)) / 10) + -parseInt(e(420)) / 11 * (-parseInt(e(410)) / 12);
|
|
52
|
+
if (x === t) break;
|
|
76
53
|
i.push(i.shift());
|
|
77
54
|
} catch {
|
|
78
55
|
i.push(i.shift());
|
|
79
56
|
}
|
|
80
|
-
})(
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
return
|
|
57
|
+
})(_e, 603719);
|
|
58
|
+
function Ct(a, t) {
|
|
59
|
+
a = a - 362;
|
|
60
|
+
var e = _e(), i = e[a];
|
|
61
|
+
return i;
|
|
85
62
|
}
|
|
86
|
-
function
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
63
|
+
function _e() {
|
|
64
|
+
var a = ["ミニプレーヤー", "浮き出し", "サポートされていない形式です。", "キャンセル", "10rNOvbg", "文字の太さ", "ライセンスが無効です。", "{timeTxt}後に動画が始まります。", "ウィンドウ色", "デフォルトスタイルを適用", "しばらくして", "沈み込み", "プレーヤーの起動に失敗しました", "必須モジュールが読み込まれていません。(dash.js)", "字幕をオンにする", "全画面表示", "動画を再生できませんでした。", "iOSではDASHビデオを再生できません。", "429559UXpdHE", "模倣危険", "月間の基本提供呼び出し回数を超過しました。有料版に切り替えてご利用ください。", "295eJctTv", "再生速度", "この動画を再生する権限がありません。", "テキスト不透明度", "83364SkHjps", "4483432PqPVgY", "{timeTxt}秒後に次の動画が再生されます。", "次の動画", "ミュート解除", "1253SRFqHk", "文字エッジスタイル", "デフォルト", "この機能にはStandardプランが必要です。", "刺激的な場面", "25647TZuOTZ", "使用しない", "秒後に自動再生", "ウィンドウ不透明度", "動画を再生できません", "イントロ自動スキップ", "FairPlay証明書の検証に失敗しました。", "テキスト、色、背景スタイルを変更", "やや太い", "10960hjISVk", "全画面表示を終了", "一時停止", "ライブ", "性的表現", "この映像は12歳未満の視聴には不適切な内容を含むため、保護者の指導が必要です。", "747567TdIdWy", "DRMライセンスサーバーとの通信に失敗しました。", "イントロをスキップ", "必須モジュールが読み込まれていません。(hls.js)", "232BIERQy", "ミュート", "認証に失敗しました", "自動再生", "オープニング自動スキップ", "不正なアクセスです。access_keyを確認してください。", "字幕をオフにする", "エンディングをスキップ", "2724cbFtdV", "マゼンタ", "エンディング自動スキップ", "前の動画", "字幕スタイル", "この映像は15歳未満の視聴には不適切な内容を含むため、保護者の指導が必要です。", "背景色", "この映像は未成年者の視聴には不適切な内容を含みます。", "時間後", "この映像は全年齢対象です。", "34045catBmX"];
|
|
65
|
+
return _e = function() {
|
|
66
|
+
return a;
|
|
67
|
+
}, _e();
|
|
68
|
+
}
|
|
69
|
+
const Wt = { common: { cancel: w(424), auto: "自動", normal: "標準", notUse: w(384), prev: w(413), next: w(376), delayText: w(385), license: "ライセンス", play: "再生", pause: w(394), replay: "リプレイ", fullOn: w(363), fullOff: w(393), muteOn: w(403), muteOff: w(377), captionOff: w(408), captionOn: w(362), setting: "設定", live: w(395), miniPlayer: w(421), isMute: "ミュート状態です。", subtitle: "字幕", subtitleNot: "字幕は利用できません" }, settings: { autoplay: w(405), playbackRate: w(370), captions: "字幕", quality: "画質" }, skip: { introSkip: w(400), openingSkip: "オープニングをスキップ", endingSkip: w(409), autoSkipIntro: w(388), autoSkipOpening: w(406), autoSkipEnding: w(412), autoSkipOpeningEnding: "OP/ED自動スキップ" }, ageRating: { noticeAll: w(419), notice12: w(397), notice15: w(415), notice19: w(417) }, contentWarning: { sexuality: w(396), violence: "暴力", language: "暴言", drugs: "薬物", horror: "恐怖", imitation: w(367), provocative: w(382) }, error: { "01": { title: w(387), desc: w(407) }, "02": { title: w(387), desc: w(371) }, "03": { title: w(404), desc: "ネットワーク接続が不安定です。" }, "04": { title: w(387), desc: w(364) }, "05": { title: w(387), desc: w(427) }, "06": { title: w(387), desc: w(368) }, "07": { title: "動画を再生できません", desc: w(423) }, "08": { title: w(387), desc: "URLの形式が正しくありません。" }, "09": { title: "動画を再生できません", desc: "ライブストリームはオフラインです。" }, 10: { title: w(387), desc: w(365) }, 11: { title: w(387), desc: "DRMトークンが無効です。" }, 12: { title: w(387), desc: w(399) }, 13: { title: "動画を再生できません", desc: w(389) }, 14: { title: w(387), desc: "画面キャプチャ/画面録画が検出されました。" }, 15: { title: "プレーヤーの起動に失敗しました", desc: w(401) }, 16: { title: w(433), desc: w(434) }, 17: { title: w(433), desc: w(381) } }, tv: { default: w(380), quality: "画質", subtitleStyle: w(414), subtitleStyleDesc: w(390), applyDefaultStyle: w(430), fontColor: "フォント色", fontSize: "フォントサイズ", textOpacity: w(372), edgeStyle: w(379), bgColor: w(416), bgOpacity: "背景不透明度", windowColor: w(429), windowOpacity: w(386), fontWeight: w(426), weight: { thin: "細い", normal: "標準", semiBold: w(391), bold: "太い", extraBold: "極太" }, color: { white: "白", black: "黒", red: "赤", green: "緑", blue: "青", yellow: "黄", magenta: w(411), cyan: "シアン" }, edge: { none: "なし", dropShadow: "ドロップシャドウ", raised: w(422), depressed: w(432), uniform: "均一" } }, alternative: { hour: "時間", minute: "分", second: "秒", after: w(431), afterMin: "分後", afterHour: w(418), afterDay: "日後", startPlay: w(428), nextPlay: w(375), afterPlay: "予定" } }, fe = At;
|
|
70
|
+
function At(a, t) {
|
|
71
|
+
return a = a - 461, Te()[a];
|
|
72
|
+
}
|
|
73
|
+
function Te() {
|
|
74
|
+
const a = ["3032886QCOkLf", "1041169WRelyp", "3426095gZLzDP", "10271080kNZLJH", "4740786QuvKQU", "undefined", "2vNDIot", "58470tdxVqy", "1128022IIwjGT", "split", "language", "4EwOpAe", "2673rklGOE"];
|
|
75
|
+
return Te = function() {
|
|
76
|
+
return a;
|
|
77
|
+
}, Te();
|
|
92
78
|
}
|
|
93
|
-
function
|
|
94
|
-
|
|
79
|
+
(function(a, t) {
|
|
80
|
+
const e = At, i = a();
|
|
81
|
+
for (; ; )
|
|
82
|
+
try {
|
|
83
|
+
if (parseInt(e(470)) / 1 * (-parseInt(e(462)) / 2) + -parseInt(e(469)) / 3 + parseInt(e(467)) / 4 * (parseInt(e(471)) / 5) + -parseInt(e(473)) / 6 + -parseInt(e(464)) / 7 + parseInt(e(472)) / 8 + parseInt(e(468)) / 9 * (parseInt(e(463)) / 10) === t) break;
|
|
84
|
+
i.push(i.shift());
|
|
85
|
+
} catch {
|
|
86
|
+
i.push(i.shift());
|
|
87
|
+
}
|
|
88
|
+
})(Te, 702255);
|
|
89
|
+
const Rt = { en: qt, ko: Kt, ja: Wt }, jt = () => typeof navigator !== fe(461) && typeof navigator[fe(466)] !== fe(461);
|
|
90
|
+
function Jt(a) {
|
|
91
|
+
const t = fe, e = a[t(465)]("-")[0];
|
|
92
|
+
return e in Rt ? e : "en";
|
|
95
93
|
}
|
|
96
|
-
function
|
|
97
|
-
const
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
94
|
+
function Je(a) {
|
|
95
|
+
const t = fe;
|
|
96
|
+
let e = "en";
|
|
97
|
+
a ? e = a : jt() && (e = navigator[t(466)]);
|
|
98
|
+
const i = Jt(e);
|
|
99
|
+
return Rt[i];
|
|
101
100
|
}
|
|
102
101
|
Je();
|
|
103
|
-
var
|
|
102
|
+
var Xt = "2.0.9", Zt = 500, rt = "user-agent", ae = "", ot = "?", _ = {
|
|
104
103
|
FUNCTION: "function",
|
|
105
104
|
OBJECT: "object",
|
|
106
105
|
STRING: "string",
|
|
107
106
|
UNDEFINED: "undefined"
|
|
108
|
-
}, D = "browser", Y = "cpu", F = "device", U = "engine", P = "os",
|
|
107
|
+
}, D = "browser", Y = "cpu", F = "device", U = "engine", P = "os", xe = "result", d = "name", s = "type", u = "vendor", l = "version", M = "architecture", pe = "major", c = "model", Se = "console", v = "mobile", k = "tablet", T = "smarttv", L = "wearable", we = "xr", ue = "embedded", Qt = "fetcher", Q = "inapp", et = "brands", X = "formFactors", tt = "fullVersionList", ne = "platform", it = "platformVersion", Ue = "bitness", j = "sec-ch-ua", $t = j + "-full-version-list", e0 = j + "-arch", t0 = j + "-" + Ue, i0 = j + "-form-factors", a0 = j + "-" + v, x0 = j + "-" + c, Mt = j + "-" + ne, n0 = Mt + "-version", Ot = [et, tt, v, c, ne, it, M, X, Ue], ge = "Amazon", $ = "Apple", st = "ASUS", ct = "BlackBerry", J = "Google", dt = "Huawei", Ge = "Lenovo", lt = "Honor", me = "LG", He = "Microsoft", Ve = "Motorola", ut = "Nvidia", ft = "OnePlus", Ye = "OPPO", se = "Samsung", pt = "Sharp", ce = "Sony", ze = "Xiaomi", qe = "Zebra", ht = "Chrome", bt = "Chromium", q = "Chromecast", Ie = "Edge", de = "Firefox", ee = "Opera", Ke = "Facebook", wt = "Sogou", te = "Mobile ", ie = " Browser", Xe = "Windows", r0 = typeof window !== _.UNDEFINED, O = r0 && window.navigator ? window.navigator : void 0, Z = O && O.userAgentData ? O.userAgentData : void 0, o0 = function(a, t) {
|
|
109
108
|
var e = {}, i = t;
|
|
110
|
-
if (!
|
|
109
|
+
if (!Ce(t)) {
|
|
111
110
|
i = {};
|
|
112
|
-
for (var
|
|
113
|
-
for (var r in t[
|
|
114
|
-
i[r] = t[
|
|
111
|
+
for (var x in t)
|
|
112
|
+
for (var r in t[x])
|
|
113
|
+
i[r] = t[x][r].concat(i[r] ? i[r] : []);
|
|
115
114
|
}
|
|
116
|
-
for (var o in
|
|
117
|
-
e[o] = i[o] && i[o].length % 2 === 0 ? i[o].concat(
|
|
115
|
+
for (var o in a)
|
|
116
|
+
e[o] = i[o] && i[o].length % 2 === 0 ? i[o].concat(a[o]) : a[o];
|
|
118
117
|
return e;
|
|
119
|
-
},
|
|
120
|
-
for (var t = {}, e = 0; e <
|
|
121
|
-
t[
|
|
118
|
+
}, Be = function(a) {
|
|
119
|
+
for (var t = {}, e = 0; e < a.length; e++)
|
|
120
|
+
t[a[e].toUpperCase()] = a[e];
|
|
122
121
|
return t;
|
|
123
|
-
}, Ze = function(
|
|
124
|
-
if (typeof
|
|
125
|
-
for (var e in
|
|
126
|
-
if (
|
|
122
|
+
}, Ze = function(a, t) {
|
|
123
|
+
if (typeof a === _.OBJECT && a.length > 0) {
|
|
124
|
+
for (var e in a)
|
|
125
|
+
if (K(t) == K(a[e])) return !0;
|
|
127
126
|
return !1;
|
|
128
127
|
}
|
|
129
|
-
return he(
|
|
130
|
-
},
|
|
131
|
-
for (var e in
|
|
132
|
-
return /^(browser|cpu|device|engine|os)$/.test(e) || (t ?
|
|
133
|
-
}, he = function(
|
|
134
|
-
return typeof
|
|
135
|
-
},
|
|
136
|
-
if (
|
|
137
|
-
for (var t = [], e = re(/\\?\"/g,
|
|
128
|
+
return he(a) ? K(t) == K(a) : !1;
|
|
129
|
+
}, Ce = function(a, t) {
|
|
130
|
+
for (var e in a)
|
|
131
|
+
return /^(browser|cpu|device|engine|os)$/.test(e) || (t ? Ce(a[e]) : !1);
|
|
132
|
+
}, he = function(a) {
|
|
133
|
+
return typeof a === _.STRING;
|
|
134
|
+
}, We = function(a) {
|
|
135
|
+
if (a) {
|
|
136
|
+
for (var t = [], e = re(/\\?\"/g, a).split(","), i = 0; i < e.length; i++)
|
|
138
137
|
if (e[i].indexOf(";") > -1) {
|
|
139
|
-
var
|
|
140
|
-
t[i] = { brand:
|
|
138
|
+
var x = Ae(e[i]).split(";v=");
|
|
139
|
+
t[i] = { brand: x[0], version: x[1] };
|
|
141
140
|
} else
|
|
142
141
|
t[i] = Ae(e[i]);
|
|
143
142
|
return t;
|
|
144
143
|
}
|
|
145
|
-
},
|
|
146
|
-
return he(
|
|
147
|
-
}, Qe = function(
|
|
148
|
-
return he(
|
|
149
|
-
}, V = function(
|
|
150
|
-
for (var t in
|
|
151
|
-
if (
|
|
152
|
-
var e =
|
|
144
|
+
}, K = function(a) {
|
|
145
|
+
return he(a) ? a.toLowerCase() : a;
|
|
146
|
+
}, Qe = function(a) {
|
|
147
|
+
return he(a) ? re(/[^\d\.]/g, a).split(".")[0] : void 0;
|
|
148
|
+
}, V = function(a) {
|
|
149
|
+
for (var t in a)
|
|
150
|
+
if (a.hasOwnProperty(t)) {
|
|
151
|
+
var e = a[t];
|
|
153
152
|
typeof e == _.OBJECT && e.length == 2 ? this[e[0]] = e[1] : this[e] = void 0;
|
|
154
153
|
}
|
|
155
154
|
return this;
|
|
156
|
-
}, re = function(
|
|
157
|
-
return he(t) ? t.replace(
|
|
158
|
-
},
|
|
159
|
-
return re(/\\?\"/g,
|
|
160
|
-
}, Ae = function(
|
|
161
|
-
return
|
|
162
|
-
}, $e = function(
|
|
163
|
-
if (!(!
|
|
164
|
-
for (var e = 0, i,
|
|
155
|
+
}, re = function(a, t) {
|
|
156
|
+
return he(t) ? t.replace(a, ae) : t;
|
|
157
|
+
}, le = function(a) {
|
|
158
|
+
return re(/\\?\"/g, a);
|
|
159
|
+
}, Ae = function(a, t) {
|
|
160
|
+
return a = re(/^\s\s*/, String(a)), typeof t === _.UNDEFINED ? a : a.substring(0, t);
|
|
161
|
+
}, $e = function(a, t) {
|
|
162
|
+
if (!(!a || !t))
|
|
163
|
+
for (var e = 0, i, x, r, o, f, h; e < t.length && !f; ) {
|
|
165
164
|
var S = t[e], I = t[e + 1];
|
|
166
|
-
for (i =
|
|
167
|
-
if (
|
|
165
|
+
for (i = x = 0; i < S.length && !f && S[i]; )
|
|
166
|
+
if (f = S[i++].exec(a), f)
|
|
168
167
|
for (r = 0; r < I.length; r++)
|
|
169
|
-
|
|
168
|
+
h = f[++x], o = I[r], typeof o === _.OBJECT && o.length > 0 ? o.length === 2 ? typeof o[1] == _.FUNCTION ? this[o[0]] = o[1].call(this, h) : this[o[0]] = o[1] : o.length >= 3 && (typeof o[1] === _.FUNCTION && !(o[1].exec && o[1].test) ? o.length > 3 ? this[o[0]] = h ? o[1].apply(this, o.slice(2)) : void 0 : this[o[0]] = h ? o[1].call(this, h, o[2]) : void 0 : o.length == 3 ? this[o[0]] = h ? h.replace(o[1], o[2]) : void 0 : o.length == 4 ? this[o[0]] = h ? o[3].call(this, h.replace(o[1], o[2])) : void 0 : o.length > 4 && (this[o[0]] = h ? o[3].apply(this, [h.replace(o[1], o[2])].concat(o.slice(4))) : void 0)) : this[o] = h || void 0;
|
|
170
169
|
e += 2;
|
|
171
170
|
}
|
|
172
|
-
}, N = function(
|
|
171
|
+
}, N = function(a, t) {
|
|
173
172
|
for (var e in t)
|
|
174
173
|
if (typeof t[e] === _.OBJECT && t[e].length > 0) {
|
|
175
174
|
for (var i = 0; i < t[e].length; i++)
|
|
176
|
-
if (Ze(t[e][i],
|
|
177
|
-
return e ===
|
|
178
|
-
} else if (Ze(t[e],
|
|
179
|
-
return e ===
|
|
180
|
-
return t.hasOwnProperty("*") ? t["*"] :
|
|
181
|
-
},
|
|
175
|
+
if (Ze(t[e][i], a))
|
|
176
|
+
return e === ot ? void 0 : e;
|
|
177
|
+
} else if (Ze(t[e], a))
|
|
178
|
+
return e === ot ? void 0 : e;
|
|
179
|
+
return t.hasOwnProperty("*") ? t["*"] : a;
|
|
180
|
+
}, gt = {
|
|
182
181
|
ME: "4.90",
|
|
183
182
|
"NT 3.51": "3.51",
|
|
184
183
|
"NT 4.0": "4.0",
|
|
@@ -190,7 +189,7 @@ var Jt = "2.0.9", Xt = 500, ot = "user-agent", xe = "", st = "?", _ = {
|
|
|
190
189
|
"8.1": "6.3",
|
|
191
190
|
10: ["6.4", "10.0"],
|
|
192
191
|
NT: ""
|
|
193
|
-
},
|
|
192
|
+
}, mt = {
|
|
194
193
|
embedded: "Automotive",
|
|
195
194
|
mobile: "Mobile",
|
|
196
195
|
tablet: ["Tablet", "EInk"],
|
|
@@ -199,7 +198,7 @@ var Jt = "2.0.9", Xt = 500, ot = "user-agent", xe = "", st = "?", _ = {
|
|
|
199
198
|
xr: ["VR", "XR"],
|
|
200
199
|
"?": ["Desktop", "Unknown"],
|
|
201
200
|
"*": void 0
|
|
202
|
-
},
|
|
201
|
+
}, s0 = {
|
|
203
202
|
Chrome: "Google Chrome",
|
|
204
203
|
Edge: "Microsoft Edge",
|
|
205
204
|
"Edge WebView2": "Microsoft Edge WebView2",
|
|
@@ -209,23 +208,23 @@ var Jt = "2.0.9", Xt = 500, ot = "user-agent", xe = "", st = "?", _ = {
|
|
|
209
208
|
"MIUI Browser": "Miui Browser",
|
|
210
209
|
"Opera Mobi": "OperaMobile",
|
|
211
210
|
Yandex: "YaBrowser"
|
|
212
|
-
},
|
|
211
|
+
}, yt = {
|
|
213
212
|
browser: [
|
|
214
213
|
[
|
|
215
214
|
// Most common regardless engine
|
|
216
215
|
/\b(?:crmo|crios)\/([\w\.]+)/i
|
|
217
216
|
// Chrome for Android/iOS
|
|
218
217
|
],
|
|
219
|
-
[
|
|
218
|
+
[l, [d, te + "Chrome"]],
|
|
220
219
|
[
|
|
221
220
|
/webview.+edge\/([\w\.]+)/i
|
|
222
221
|
// Microsoft Edge
|
|
223
222
|
],
|
|
224
|
-
[
|
|
223
|
+
[l, [d, Ie + " WebView"]],
|
|
225
224
|
[
|
|
226
225
|
/edg(?:e|ios|a)?\/([\w\.]+)/i
|
|
227
226
|
],
|
|
228
|
-
[
|
|
227
|
+
[l, [d, "Edge"]],
|
|
229
228
|
[
|
|
230
229
|
// Presto based
|
|
231
230
|
/(opera mini)\/([-\w\.]+)/i,
|
|
@@ -235,33 +234,33 @@ var Jt = "2.0.9", Xt = 500, ot = "user-agent", xe = "", st = "?", _ = {
|
|
|
235
234
|
/(opera)(?:.+version\/|[\/ ]+)([\w\.]+)/i
|
|
236
235
|
// Opera
|
|
237
236
|
],
|
|
238
|
-
[
|
|
237
|
+
[d, l],
|
|
239
238
|
[
|
|
240
239
|
/opios[\/ ]+([\w\.]+)/i
|
|
241
240
|
// Opera mini on iphone >= 8.0
|
|
242
241
|
],
|
|
243
|
-
[
|
|
242
|
+
[l, [d, ee + " Mini"]],
|
|
244
243
|
[
|
|
245
244
|
/\bop(?:rg)?x\/([\w\.]+)/i
|
|
246
245
|
// Opera GX
|
|
247
246
|
],
|
|
248
|
-
[
|
|
247
|
+
[l, [d, ee + " GX"]],
|
|
249
248
|
[
|
|
250
249
|
/\bopr\/([\w\.]+)/i
|
|
251
250
|
// Opera Webkit
|
|
252
251
|
],
|
|
253
|
-
[
|
|
252
|
+
[l, [d, ee]],
|
|
254
253
|
[
|
|
255
254
|
// Mixed
|
|
256
255
|
/\bb[ai]*d(?:uhd|[ub]*[aekoprswx]{5,6})[\/ ]?([\w\.]+)/i
|
|
257
256
|
// Baidu
|
|
258
257
|
],
|
|
259
|
-
[
|
|
258
|
+
[l, [d, "Baidu"]],
|
|
260
259
|
[
|
|
261
260
|
/\b(?:mxbrowser|mxios|myie2)\/?([-\w\.]*)\b/i
|
|
262
261
|
// Maxthon
|
|
263
262
|
],
|
|
264
|
-
[
|
|
263
|
+
[l, [d, "Maxthon"]],
|
|
265
264
|
[
|
|
266
265
|
/(kindle)\/([\w\.]+)/i,
|
|
267
266
|
// Kindle
|
|
@@ -284,22 +283,22 @@ var Jt = "2.0.9", Xt = 500, ot = "user-agent", xe = "", st = "?", _ = {
|
|
|
284
283
|
/(ecosia|weibo)(?:__| \w+@)([\d\.]+)/i
|
|
285
284
|
// Ecosia/Weibo
|
|
286
285
|
],
|
|
287
|
-
[
|
|
286
|
+
[d, l],
|
|
288
287
|
[
|
|
289
288
|
/quark(?:pc)?\/([-\w\.]+)/i
|
|
290
289
|
// Quark
|
|
291
290
|
],
|
|
292
|
-
[
|
|
291
|
+
[l, [d, "Quark"]],
|
|
293
292
|
[
|
|
294
293
|
/\bddg\/([\w\.]+)/i
|
|
295
294
|
// DuckDuckGo
|
|
296
295
|
],
|
|
297
|
-
[
|
|
296
|
+
[l, [d, "DuckDuckGo"]],
|
|
298
297
|
[
|
|
299
298
|
/(?:\buc? ?browser|(?:juc.+)ucweb)[\/ ]?([\w\.]+)/i
|
|
300
299
|
// UCBrowser
|
|
301
300
|
],
|
|
302
|
-
[
|
|
301
|
+
[l, [d, "UCBrowser"]],
|
|
303
302
|
[
|
|
304
303
|
/microm.+\bqbcore\/([\w\.]+)/i,
|
|
305
304
|
// WeChat Desktop for Windows Built-in Browser
|
|
@@ -307,107 +306,107 @@ var Jt = "2.0.9", Xt = 500, ot = "user-agent", xe = "", st = "?", _ = {
|
|
|
307
306
|
/micromessenger\/([\w\.]+)/i
|
|
308
307
|
// WeChat
|
|
309
308
|
],
|
|
310
|
-
[
|
|
309
|
+
[l, [d, "WeChat"]],
|
|
311
310
|
[
|
|
312
311
|
/konqueror\/([\w\.]+)/i
|
|
313
312
|
// Konqueror
|
|
314
313
|
],
|
|
315
|
-
[
|
|
314
|
+
[l, [d, "Konqueror"]],
|
|
316
315
|
[
|
|
317
316
|
/trident.+rv[: ]([\w\.]{1,9})\b.+like gecko/i
|
|
318
317
|
// IE11
|
|
319
318
|
],
|
|
320
|
-
[
|
|
319
|
+
[l, [d, "IE"]],
|
|
321
320
|
[
|
|
322
321
|
/ya(?:search)?browser\/([\w\.]+)/i
|
|
323
322
|
// Yandex
|
|
324
323
|
],
|
|
325
|
-
[
|
|
324
|
+
[l, [d, "Yandex"]],
|
|
326
325
|
[
|
|
327
326
|
/slbrowser\/([\w\.]+)/i
|
|
328
327
|
// Smart Lenovo Browser
|
|
329
328
|
],
|
|
330
|
-
[
|
|
329
|
+
[l, [d, "Smart " + Ge + ie]],
|
|
331
330
|
[
|
|
332
331
|
/(av(?:ast|g|ira))\/([\w\.]+)/i
|
|
333
332
|
// Avast/AVG/Avira Secure Browser
|
|
334
333
|
],
|
|
335
|
-
[[
|
|
334
|
+
[[d, /(.+)/, "$1 Secure" + ie], l],
|
|
336
335
|
[
|
|
337
336
|
/norton\/([\w\.]+)/i
|
|
338
337
|
// Norton Private Browser
|
|
339
338
|
],
|
|
340
|
-
[
|
|
339
|
+
[l, [d, "Norton Private" + ie]],
|
|
341
340
|
[
|
|
342
341
|
/\bfocus\/([\w\.]+)/i
|
|
343
342
|
// Firefox Focus
|
|
344
343
|
],
|
|
345
|
-
[
|
|
344
|
+
[l, [d, de + " Focus"]],
|
|
346
345
|
[
|
|
347
346
|
/ mms\/([\w\.]+)$/i
|
|
348
347
|
// Opera Neon
|
|
349
348
|
],
|
|
350
|
-
[
|
|
349
|
+
[l, [d, ee + " Neon"]],
|
|
351
350
|
[
|
|
352
351
|
/ opt\/([\w\.]+)$/i
|
|
353
352
|
// Opera Touch
|
|
354
353
|
],
|
|
355
|
-
[
|
|
354
|
+
[l, [d, ee + " Touch"]],
|
|
356
355
|
[
|
|
357
356
|
/coc_coc\w+\/([\w\.]+)/i
|
|
358
357
|
// Coc Coc Browser
|
|
359
358
|
],
|
|
360
|
-
[
|
|
359
|
+
[l, [d, "Coc Coc"]],
|
|
361
360
|
[
|
|
362
361
|
/dolfin\/([\w\.]+)/i
|
|
363
362
|
// Dolphin
|
|
364
363
|
],
|
|
365
|
-
[
|
|
364
|
+
[l, [d, "Dolphin"]],
|
|
366
365
|
[
|
|
367
366
|
/coast\/([\w\.]+)/i
|
|
368
367
|
// Opera Coast
|
|
369
368
|
],
|
|
370
|
-
[
|
|
369
|
+
[l, [d, ee + " Coast"]],
|
|
371
370
|
[
|
|
372
371
|
/miuibrowser\/([\w\.]+)/i
|
|
373
372
|
// MIUI Browser
|
|
374
373
|
],
|
|
375
|
-
[
|
|
374
|
+
[l, [d, "MIUI" + ie]],
|
|
376
375
|
[
|
|
377
376
|
/fxios\/([\w\.-]+)/i
|
|
378
377
|
// Firefox for iOS
|
|
379
378
|
],
|
|
380
|
-
[
|
|
379
|
+
[l, [d, te + de]],
|
|
381
380
|
[
|
|
382
381
|
/\bqihoobrowser\/?([\w\.]*)/i
|
|
383
382
|
// 360
|
|
384
383
|
],
|
|
385
|
-
[
|
|
384
|
+
[l, [d, "360"]],
|
|
386
385
|
[
|
|
387
386
|
/\b(qq)\/([\w\.]+)/i
|
|
388
387
|
// QQ
|
|
389
388
|
],
|
|
390
|
-
[[
|
|
389
|
+
[[d, /(.+)/, "$1Browser"], l],
|
|
391
390
|
[
|
|
392
391
|
/(oculus|sailfish|huawei|vivo|pico)browser\/([\w\.]+)/i
|
|
393
392
|
],
|
|
394
|
-
[[
|
|
393
|
+
[[d, /(.+)/, "$1" + ie], l],
|
|
395
394
|
[
|
|
396
395
|
// Oculus/Sailfish/HuaweiBrowser/VivoBrowser/PicoBrowser
|
|
397
396
|
/samsungbrowser\/([\w\.]+)/i
|
|
398
397
|
// Samsung Internet
|
|
399
398
|
],
|
|
400
|
-
[
|
|
399
|
+
[l, [d, se + " Internet"]],
|
|
401
400
|
[
|
|
402
401
|
/metasr[\/ ]?([\d\.]+)/i
|
|
403
402
|
// Sogou Explorer
|
|
404
403
|
],
|
|
405
|
-
[
|
|
404
|
+
[l, [d, wt + " Explorer"]],
|
|
406
405
|
[
|
|
407
406
|
/(sogou)mo\w+\/([\d\.]+)/i
|
|
408
407
|
// Sogou Mobile
|
|
409
408
|
],
|
|
410
|
-
[[
|
|
409
|
+
[[d, wt + " Mobile"], l],
|
|
411
410
|
[
|
|
412
411
|
/(electron)\/([\w\.]+) safari/i,
|
|
413
412
|
// Electron-based App
|
|
@@ -416,23 +415,23 @@ var Jt = "2.0.9", Xt = 500, ot = "user-agent", xe = "", st = "?", _ = {
|
|
|
416
415
|
/m?(qqbrowser|2345(?=browser|chrome|explorer))\w*[\/ ]?v?([\w\.]+)/i
|
|
417
416
|
// QQ/2345
|
|
418
417
|
],
|
|
419
|
-
[
|
|
418
|
+
[d, l],
|
|
420
419
|
[
|
|
421
420
|
/(lbbrowser|luakit|rekonq|steam(?= (clie|tenf|gameo)))/i
|
|
422
421
|
// LieBao Browser/Luakit/Rekonq/Steam
|
|
423
422
|
],
|
|
424
|
-
[
|
|
423
|
+
[d],
|
|
425
424
|
[
|
|
426
425
|
/ome\/([\w\.]+).+(iron(?= saf)|360(?=[es]e$))/i
|
|
427
426
|
// Iron / 360
|
|
428
427
|
],
|
|
429
|
-
[
|
|
428
|
+
[l, d],
|
|
430
429
|
[
|
|
431
430
|
// WebView
|
|
432
431
|
/((?:fban\/fbios|fb_iab\/fb4a)(?!.+fbav)|;fbav\/([\w\.]+);)/i
|
|
433
432
|
// Facebook App for iOS & Android
|
|
434
433
|
],
|
|
435
|
-
[[
|
|
434
|
+
[[d, Ke], l, [s, Q]],
|
|
436
435
|
[
|
|
437
436
|
/(kakao(?:talk|story))[\/ ]([\w\.]+)/i,
|
|
438
437
|
// Kakao App
|
|
@@ -453,111 +452,111 @@ var Jt = "2.0.9", Xt = 500, ot = "user-agent", xe = "", st = "?", _ = {
|
|
|
453
452
|
/(instagram|snapchat|klarna)[\/ ]([-\w\.]+)/i
|
|
454
453
|
// Instagram/Snapchat/Klarna
|
|
455
454
|
],
|
|
456
|
-
[
|
|
455
|
+
[d, l, [s, Q]],
|
|
457
456
|
[
|
|
458
457
|
/\bgsa\/([\w\.]+) .*safari\//i
|
|
459
458
|
// Google Search Appliance on iOS
|
|
460
459
|
],
|
|
461
|
-
[
|
|
460
|
+
[l, [d, "GSA"], [s, Q]],
|
|
462
461
|
[
|
|
463
462
|
/(?:musical_ly|trill)(?:.+app_?version\/|_)([\w\.]+)/i
|
|
464
463
|
// TikTok
|
|
465
464
|
],
|
|
466
|
-
[
|
|
465
|
+
[l, [d, "TikTok"], [s, Q]],
|
|
467
466
|
[
|
|
468
467
|
/\[(linkedin)app\]/i
|
|
469
468
|
// LinkedIn App for iOS & Android
|
|
470
469
|
],
|
|
471
|
-
[
|
|
470
|
+
[d, [s, Q]],
|
|
472
471
|
[
|
|
473
472
|
/(zalo(?:app)?)[\/\sa-z]*([\w\.-]+)/i
|
|
474
473
|
// Zalo
|
|
475
474
|
],
|
|
476
|
-
[[
|
|
475
|
+
[[d, /(.+)/, "Zalo"], l, [s, Q]],
|
|
477
476
|
[
|
|
478
477
|
/(chromium)[\/ ]([-\w\.]+)/i
|
|
479
478
|
// Chromium
|
|
480
479
|
],
|
|
481
|
-
[
|
|
480
|
+
[d, l],
|
|
482
481
|
[
|
|
483
482
|
/ome-(lighthouse)$/i
|
|
484
483
|
// Chrome Lighthouse
|
|
485
484
|
],
|
|
486
|
-
[
|
|
485
|
+
[d, [s, Qt]],
|
|
487
486
|
[
|
|
488
487
|
/headlesschrome(?:\/([\w\.]+)| )/i
|
|
489
488
|
// Chrome Headless
|
|
490
489
|
],
|
|
491
|
-
[
|
|
490
|
+
[l, [d, ht + " Headless"]],
|
|
492
491
|
[
|
|
493
492
|
/wv\).+chrome\/([\w\.]+).+edgw\//i
|
|
494
493
|
// Edge WebView2
|
|
495
494
|
],
|
|
496
|
-
[
|
|
495
|
+
[l, [d, Ie + " WebView2"]],
|
|
497
496
|
[
|
|
498
497
|
/ wv\).+(chrome)\/([\w\.]+)/i
|
|
499
498
|
// Chrome WebView
|
|
500
499
|
],
|
|
501
|
-
[[
|
|
500
|
+
[[d, ht + " WebView"], l],
|
|
502
501
|
[
|
|
503
502
|
/droid.+ version\/([\w\.]+)\b.+(?:mobile safari|safari)/i
|
|
504
503
|
// Android Browser
|
|
505
504
|
],
|
|
506
|
-
[
|
|
505
|
+
[l, [d, "Android" + ie]],
|
|
507
506
|
[
|
|
508
507
|
/chrome\/([\w\.]+) mobile/i
|
|
509
508
|
// Chrome Mobile
|
|
510
509
|
],
|
|
511
|
-
[
|
|
510
|
+
[l, [d, te + "Chrome"]],
|
|
512
511
|
[
|
|
513
512
|
/(chrome|omniweb|arora|[tizenoka]{5} ?browser)\/v?([\w\.]+)/i
|
|
514
513
|
// Chrome/OmniWeb/Arora/Tizen/Nokia
|
|
515
514
|
],
|
|
516
|
-
[
|
|
515
|
+
[d, l],
|
|
517
516
|
[
|
|
518
517
|
/version\/([\w\.\,]+) .*mobile(?:\/\w+ | ?)safari/i
|
|
519
518
|
// Safari Mobile
|
|
520
519
|
],
|
|
521
|
-
[
|
|
520
|
+
[l, [d, te + "Safari"]],
|
|
522
521
|
[
|
|
523
522
|
/iphone .*mobile(?:\/\w+ | ?)safari/i
|
|
524
523
|
],
|
|
525
|
-
[[
|
|
524
|
+
[[d, te + "Safari"]],
|
|
526
525
|
[
|
|
527
526
|
/version\/([\w\.\,]+) .*(safari)/i
|
|
528
527
|
// Safari
|
|
529
528
|
],
|
|
530
|
-
[
|
|
529
|
+
[l, d],
|
|
531
530
|
[
|
|
532
531
|
/webkit.+?(mobile ?safari|safari)(\/[\w\.]+)/i
|
|
533
532
|
// Safari < 3.0
|
|
534
533
|
],
|
|
535
|
-
[
|
|
534
|
+
[d, [l, "1"]],
|
|
536
535
|
[
|
|
537
536
|
/(webkit|khtml)\/([\w\.]+)/i
|
|
538
537
|
],
|
|
539
|
-
[
|
|
538
|
+
[d, l],
|
|
540
539
|
[
|
|
541
540
|
// Gecko based
|
|
542
541
|
/(?:mobile|tablet);.*(firefox)\/([\w\.-]+)/i
|
|
543
542
|
// Firefox Mobile
|
|
544
543
|
],
|
|
545
|
-
[[
|
|
544
|
+
[[d, te + de], l],
|
|
546
545
|
[
|
|
547
546
|
/(navigator|netscape\d?)\/([-\w\.]+)/i
|
|
548
547
|
// Netscape
|
|
549
548
|
],
|
|
550
|
-
[[
|
|
549
|
+
[[d, "Netscape"], l],
|
|
551
550
|
[
|
|
552
551
|
/(wolvic|librewolf)\/([\w\.]+)/i
|
|
553
552
|
// Wolvic/LibreWolf
|
|
554
553
|
],
|
|
555
|
-
[
|
|
554
|
+
[d, l],
|
|
556
555
|
[
|
|
557
556
|
/mobile vr; rv:([\w\.]+)\).+firefox/i
|
|
558
557
|
// Firefox Reality
|
|
559
558
|
],
|
|
560
|
-
[
|
|
559
|
+
[l, [d, de + " Reality"]],
|
|
561
560
|
[
|
|
562
561
|
/ekiohf.+(flow)\/([\w\.]+)/i,
|
|
563
562
|
// Flow
|
|
@@ -577,46 +576,46 @@ var Jt = "2.0.9", Xt = 500, ot = "user-agent", xe = "", st = "?", _ = {
|
|
|
577
576
|
/\b(links) \(([\w\.]+)/i
|
|
578
577
|
// Links
|
|
579
578
|
],
|
|
580
|
-
[
|
|
579
|
+
[d, [l, /_/g, "."]],
|
|
581
580
|
[
|
|
582
581
|
/(cobalt)\/([\w\.]+)/i
|
|
583
582
|
// Cobalt
|
|
584
583
|
],
|
|
585
|
-
[
|
|
584
|
+
[d, [l, /[^\d\.]+./, ae]]
|
|
586
585
|
],
|
|
587
586
|
cpu: [
|
|
588
587
|
[
|
|
589
588
|
/\b((amd|x|x86[-_]?|wow|win)64)\b/i
|
|
590
589
|
// AMD64 (x64)
|
|
591
590
|
],
|
|
592
|
-
[[
|
|
591
|
+
[[M, "amd64"]],
|
|
593
592
|
[
|
|
594
593
|
/(ia32(?=;))/i,
|
|
595
594
|
// IA32 (quicktime)
|
|
596
595
|
/\b((i[346]|x)86)(pc)?\b/i
|
|
597
596
|
// IA32 (x86)
|
|
598
597
|
],
|
|
599
|
-
[[
|
|
598
|
+
[[M, "ia32"]],
|
|
600
599
|
[
|
|
601
600
|
/\b(aarch64|arm(v?[89]e?l?|_?64))\b/i
|
|
602
601
|
// ARM64
|
|
603
602
|
],
|
|
604
|
-
[[
|
|
603
|
+
[[M, "arm64"]],
|
|
605
604
|
[
|
|
606
605
|
/\b(arm(v[67])?ht?n?[fl]p?)\b/i
|
|
607
606
|
// ARMHF
|
|
608
607
|
],
|
|
609
|
-
[[
|
|
608
|
+
[[M, "armhf"]],
|
|
610
609
|
[
|
|
611
610
|
// PocketPC mistakenly identified as PowerPC
|
|
612
611
|
/( (ce|mobile); ppc;|\/[\w\.]+arm\b)/i
|
|
613
612
|
],
|
|
614
|
-
[[
|
|
613
|
+
[[M, "arm"]],
|
|
615
614
|
[
|
|
616
615
|
/ sun4\w[;\)]/i
|
|
617
616
|
// SPARC
|
|
618
617
|
],
|
|
619
|
-
[[
|
|
618
|
+
[[M, "sparc"]],
|
|
620
619
|
[
|
|
621
620
|
// IA64, 68K, ARM/64, AVR/32, IRIX/64, MIPS/64, SPARC/64, PA-RISC
|
|
622
621
|
/\b(avr32|ia64(?=;)|68k(?=\))|\barm(?=v([1-7]|[5-7]1)l?|;|eabi)|(irix|mips|sparc)(64)?\b|pa-risc)/i,
|
|
@@ -625,15 +624,15 @@ var Jt = "2.0.9", Xt = 500, ot = "user-agent", xe = "", st = "?", _ = {
|
|
|
625
624
|
/(?:osf1|[freopnt]{3,4}bsd) (alpha)/i
|
|
626
625
|
// Alpha
|
|
627
626
|
],
|
|
628
|
-
[[
|
|
627
|
+
[[M, /ower/, ae, K]],
|
|
629
628
|
[
|
|
630
629
|
/mc680.0/i
|
|
631
630
|
],
|
|
632
|
-
[[
|
|
631
|
+
[[M, "68k"]],
|
|
633
632
|
[
|
|
634
633
|
/winnt.+\[axp/i
|
|
635
634
|
],
|
|
636
|
-
[[
|
|
635
|
+
[[M, "alpha"]]
|
|
637
636
|
],
|
|
638
637
|
device: [
|
|
639
638
|
[
|
|
@@ -670,16 +669,16 @@ var Jt = "2.0.9", Xt = 500, ot = "user-agent", xe = "", st = "?", _ = {
|
|
|
670
669
|
// Sharp
|
|
671
670
|
/\b(sh-?[altvz]?\d\d[a-ekm]?)/i
|
|
672
671
|
],
|
|
673
|
-
[c, [u,
|
|
672
|
+
[c, [u, pt], [s, v]],
|
|
674
673
|
[
|
|
675
674
|
// Honor
|
|
676
675
|
/\b((?:brt|eln|hey2?|gdi|jdn)-a?[lnw]09|(?:ag[rm]3?|jdn2|kob2)-a?[lw]0[09]hn)(?: bui|\)|;)/i
|
|
677
676
|
],
|
|
678
|
-
[c, [u,
|
|
677
|
+
[c, [u, lt], [s, k]],
|
|
679
678
|
[
|
|
680
679
|
/honor([-\w ]+)[;\)]/i
|
|
681
680
|
],
|
|
682
|
-
[c, [u,
|
|
681
|
+
[c, [u, lt], [s, v]],
|
|
683
682
|
[
|
|
684
683
|
// Huawei
|
|
685
684
|
/\b((?:ag[rs][2356]?k?|bah[234]?|bg[2o]|bt[kv]|cmr|cpn|db[ry]2?|jdn2|got|kob2?k?|mon|pce|scm|sht?|[tw]gr|vrd)-[ad]?[lw][0125][09]b?|605hw|bg2-u03|(?:gem|fdr|m2|ple|t1)-[7a]0[1-4][lu]|t1-a2[13][lw]|mediapad[\w\. ]*(?= bui|\)))\b(?!.+d\/s)/i
|
|
@@ -714,7 +713,7 @@ var Jt = "2.0.9", Xt = 500, ot = "user-agent", xe = "", st = "?", _ = {
|
|
|
714
713
|
/droid.+; (cph2[3-6]\d[13579]|((gm|hd)19|(ac|be|in|kb)20|(d[en]|eb|le|mt)21|ne22)[0-2]\d|p[g-l]\w[1m]10)\b/i,
|
|
715
714
|
/(?:one)?(?:plus)? (a\d0\d\d)(?: b|\))/i
|
|
716
715
|
],
|
|
717
|
-
[c, [u,
|
|
716
|
+
[c, [u, ft], [s, v]],
|
|
718
717
|
[
|
|
719
718
|
// OPPO
|
|
720
719
|
/; (\w+) bui.+ oppo/i,
|
|
@@ -767,13 +766,13 @@ var Jt = "2.0.9", Xt = 500, ot = "user-agent", xe = "", st = "?", _ = {
|
|
|
767
766
|
// LG
|
|
768
767
|
/\b(?:lg)?([vl]k\-?\d{3}) bui| 3\.[-\w; ]{10}lg?-([06cv9]{3,4})/i
|
|
769
768
|
],
|
|
770
|
-
[c, [u,
|
|
769
|
+
[c, [u, me], [s, k]],
|
|
771
770
|
[
|
|
772
771
|
/(lm(?:-?f100[nv]?|-[\w\.]+)(?= bui|\))|nexus [45])/i,
|
|
773
772
|
/\blg[-e;\/ ]+(?!.*(?:browser|netcast|android tv|watch|webos))(\w+)/i,
|
|
774
773
|
/\blg-?([\d\w]+) bui/i
|
|
775
774
|
],
|
|
776
|
-
[c, [u,
|
|
775
|
+
[c, [u, me], [s, v]],
|
|
777
776
|
[
|
|
778
777
|
// Nokia
|
|
779
778
|
/(nokia) (t[12][01])/i
|
|
@@ -817,12 +816,12 @@ var Jt = "2.0.9", Xt = 500, ot = "user-agent", xe = "", st = "?", _ = {
|
|
|
817
816
|
/(kf[a-z]+)( bui|\)).+silk\//i
|
|
818
817
|
// Kindle Fire HD
|
|
819
818
|
],
|
|
820
|
-
[c, [u,
|
|
819
|
+
[c, [u, ge], [s, k]],
|
|
821
820
|
[
|
|
822
821
|
/((?:sd|kf)[0349hijorstuw]+)( bui|\)).+silk\//i
|
|
823
822
|
// Fire Phone
|
|
824
823
|
],
|
|
825
|
-
[[c, /(.+)/g, "Fire Phone $1"], [u,
|
|
824
|
+
[[c, /(.+)/g, "Fire Phone $1"], [u, ge], [s, v]],
|
|
826
825
|
[
|
|
827
826
|
// BlackBerry
|
|
828
827
|
/(playbook);[-\w\),; ]+(rim)/i
|
|
@@ -833,16 +832,16 @@ var Jt = "2.0.9", Xt = 500, ot = "user-agent", xe = "", st = "?", _ = {
|
|
|
833
832
|
/\b((?:bb[a-f]|st[hv])100-\d)/i,
|
|
834
833
|
/(?:blackberry|\(bb10;) (\w+)/i
|
|
835
834
|
],
|
|
836
|
-
[c, [u,
|
|
835
|
+
[c, [u, ct], [s, v]],
|
|
837
836
|
[
|
|
838
837
|
// Asus
|
|
839
838
|
/(?:\b|asus_)(transfo[prime ]{4,10} \w+|eeepc|slider \w+|nexus 7|padfone|p00[cj])/i
|
|
840
839
|
],
|
|
841
|
-
[c, [u,
|
|
840
|
+
[c, [u, st], [s, k]],
|
|
842
841
|
[
|
|
843
842
|
/ (z[bes]6[027][012][km][ls]|zenfone \d\w?)\b/i
|
|
844
843
|
],
|
|
845
|
-
[c, [u,
|
|
844
|
+
[c, [u, st], [s, v]],
|
|
846
845
|
[
|
|
847
846
|
// HTC
|
|
848
847
|
/(nexus 9)/i
|
|
@@ -872,7 +871,7 @@ var Jt = "2.0.9", Xt = 500, ot = "user-agent", xe = "", st = "?", _ = {
|
|
|
872
871
|
// itel
|
|
873
872
|
/(itel) ((\w+))/i
|
|
874
873
|
],
|
|
875
|
-
[[u,
|
|
874
|
+
[[u, K], c, [s, N, { tablet: ["p10001l", "w7001"], "*": "mobile" }]],
|
|
876
875
|
[
|
|
877
876
|
// Acer
|
|
878
877
|
/droid.+; ([ab][1-7]-?[0178a]\d\d?)/i
|
|
@@ -975,7 +974,7 @@ var Jt = "2.0.9", Xt = 500, ot = "user-agent", xe = "", st = "?", _ = {
|
|
|
975
974
|
/((?:tegranote|shield t(?!.+d tv))[\w- ]*?)(?: b|\))/i
|
|
976
975
|
// Nvidia Tablets
|
|
977
976
|
],
|
|
978
|
-
[c, [u,
|
|
977
|
+
[c, [u, ut], [s, k]],
|
|
979
978
|
[
|
|
980
979
|
/(sprint) (\w+)/i
|
|
981
980
|
// Sprint Phones
|
|
@@ -990,11 +989,11 @@ var Jt = "2.0.9", Xt = 500, ot = "user-agent", xe = "", st = "?", _ = {
|
|
|
990
989
|
/droid.+; ([c6]+|et5[16]|mc[239][23]x?|vc8[03]x?)\)/i
|
|
991
990
|
// Zebra
|
|
992
991
|
],
|
|
993
|
-
[c, [u,
|
|
992
|
+
[c, [u, qe], [s, k]],
|
|
994
993
|
[
|
|
995
994
|
/droid.+; (ec30|ps20|tc[2-8]\d[kx])\)/i
|
|
996
995
|
],
|
|
997
|
-
[c, [u,
|
|
996
|
+
[c, [u, qe], [s, v]],
|
|
998
997
|
[
|
|
999
998
|
///////////////////
|
|
1000
999
|
// SMARTTVS
|
|
@@ -1004,90 +1003,90 @@ var Jt = "2.0.9", Xt = 500, ot = "user-agent", xe = "", st = "?", _ = {
|
|
|
1004
1003
|
/smart-tv.+(samsung)/i
|
|
1005
1004
|
// Samsung
|
|
1006
1005
|
],
|
|
1007
|
-
[u, [s,
|
|
1006
|
+
[u, [s, T]],
|
|
1008
1007
|
[
|
|
1009
1008
|
/hbbtv.+maple;(\d+)/i
|
|
1010
1009
|
],
|
|
1011
|
-
[[c, /^/, "SmartTV"], [u, se], [s,
|
|
1010
|
+
[[c, /^/, "SmartTV"], [u, se], [s, T]],
|
|
1012
1011
|
[
|
|
1013
1012
|
/(vizio)(?: |.+model\/)(\w+-\w+)/i,
|
|
1014
1013
|
// Vizio
|
|
1015
1014
|
/tcast.+(lg)e?. ([-\w]+)/i
|
|
1016
1015
|
// LG SmartTV
|
|
1017
1016
|
],
|
|
1018
|
-
[u, c, [s,
|
|
1017
|
+
[u, c, [s, T]],
|
|
1019
1018
|
[
|
|
1020
1019
|
/(nux; netcast.+smarttv|lg (netcast\.tv-201\d|android tv))/i
|
|
1021
1020
|
],
|
|
1022
|
-
[[u,
|
|
1021
|
+
[[u, me], [s, T]],
|
|
1023
1022
|
[
|
|
1024
1023
|
/(apple) ?tv/i
|
|
1025
1024
|
// Apple TV
|
|
1026
1025
|
],
|
|
1027
|
-
[u, [c, $ + " TV"], [s,
|
|
1026
|
+
[u, [c, $ + " TV"], [s, T]],
|
|
1028
1027
|
[
|
|
1029
1028
|
/crkey.*devicetype\/chromecast/i
|
|
1030
1029
|
// Google Chromecast Third Generation
|
|
1031
1030
|
],
|
|
1032
|
-
[[c,
|
|
1031
|
+
[[c, q + " Third Generation"], [u, J], [s, T]],
|
|
1033
1032
|
[
|
|
1034
1033
|
/crkey.*devicetype\/([^/]*)/i
|
|
1035
1034
|
// Google Chromecast with specific device type
|
|
1036
1035
|
],
|
|
1037
|
-
[[c, /^/, "Chromecast "], [u, J], [s,
|
|
1036
|
+
[[c, /^/, "Chromecast "], [u, J], [s, T]],
|
|
1038
1037
|
[
|
|
1039
1038
|
/fuchsia.*crkey/i
|
|
1040
1039
|
// Google Chromecast Nest Hub
|
|
1041
1040
|
],
|
|
1042
|
-
[[c,
|
|
1041
|
+
[[c, q + " Nest Hub"], [u, J], [s, T]],
|
|
1043
1042
|
[
|
|
1044
1043
|
/crkey/i
|
|
1045
1044
|
// Google Chromecast, Linux-based or unknown
|
|
1046
1045
|
],
|
|
1047
|
-
[[c,
|
|
1046
|
+
[[c, q], [u, J], [s, T]],
|
|
1048
1047
|
[
|
|
1049
1048
|
/(portaltv)/i
|
|
1050
1049
|
// Facebook Portal TV
|
|
1051
1050
|
],
|
|
1052
|
-
[c, [u,
|
|
1051
|
+
[c, [u, Ke], [s, T]],
|
|
1053
1052
|
[
|
|
1054
1053
|
/droid.+aft(\w+)( bui|\))/i
|
|
1055
1054
|
// Fire TV
|
|
1056
1055
|
],
|
|
1057
|
-
[c, [u,
|
|
1056
|
+
[c, [u, ge], [s, T]],
|
|
1058
1057
|
[
|
|
1059
1058
|
/(shield \w+ tv)/i
|
|
1060
1059
|
// Nvidia Shield TV
|
|
1061
1060
|
],
|
|
1062
|
-
[c, [u,
|
|
1061
|
+
[c, [u, ut], [s, T]],
|
|
1063
1062
|
[
|
|
1064
1063
|
/\(dtv[\);].+(aquos)/i,
|
|
1065
1064
|
/(aquos-tv[\w ]+)\)/i
|
|
1066
1065
|
// Sharp
|
|
1067
1066
|
],
|
|
1068
|
-
[c, [u,
|
|
1067
|
+
[c, [u, pt], [s, T]],
|
|
1069
1068
|
[
|
|
1070
1069
|
/(bravia[\w ]+)( bui|\))/i
|
|
1071
1070
|
// Sony
|
|
1072
1071
|
],
|
|
1073
|
-
[c, [u, ce], [s,
|
|
1072
|
+
[c, [u, ce], [s, T]],
|
|
1074
1073
|
[
|
|
1075
1074
|
/(mi(tv|box)-?\w+) bui/i
|
|
1076
1075
|
// Xiaomi
|
|
1077
1076
|
],
|
|
1078
|
-
[c, [u, ze], [s,
|
|
1077
|
+
[c, [u, ze], [s, T]],
|
|
1079
1078
|
[
|
|
1080
1079
|
/Hbbtv.*(technisat) (.*);/i
|
|
1081
1080
|
// TechniSAT
|
|
1082
1081
|
],
|
|
1083
|
-
[u, c, [s,
|
|
1082
|
+
[u, c, [s, T]],
|
|
1084
1083
|
[
|
|
1085
1084
|
/\b(roku)[\dx]*[\)\/]((?:dvp-)?[\d\.]*)/i,
|
|
1086
1085
|
// Roku
|
|
1087
1086
|
/hbbtv\/\d+\.\d+\.\d+ +\([\w\+ ]*; *([\w\d][^;]*);([^;]*)/i
|
|
1088
1087
|
// HbbTV devices
|
|
1089
1088
|
],
|
|
1090
|
-
[[u, /.+\/(\w+)/, "$1", N, { LG: "lge" }], [c, Ae], [s,
|
|
1089
|
+
[[u, /.+\/(\w+)/, "$1", N, { LG: "lge" }], [c, Ae], [s, T]],
|
|
1091
1090
|
[
|
|
1092
1091
|
///////////////////
|
|
1093
1092
|
// CONSOLES
|
|
@@ -1095,12 +1094,12 @@ var Jt = "2.0.9", Xt = 500, ot = "user-agent", xe = "", st = "?", _ = {
|
|
|
1095
1094
|
/(playstation \w+)/i
|
|
1096
1095
|
// Playstation
|
|
1097
1096
|
],
|
|
1098
|
-
[c, [u, ce], [s,
|
|
1097
|
+
[c, [u, ce], [s, Se]],
|
|
1099
1098
|
[
|
|
1100
1099
|
/\b(xbox(?: one)?(?!; xbox))[\); ]/i
|
|
1101
1100
|
// Microsoft Xbox
|
|
1102
1101
|
],
|
|
1103
|
-
[c, [u, He], [s,
|
|
1102
|
+
[c, [u, He], [s, Se]],
|
|
1104
1103
|
[
|
|
1105
1104
|
/(ouya)/i,
|
|
1106
1105
|
// Ouya
|
|
@@ -1112,7 +1111,7 @@ var Jt = "2.0.9", Xt = 500, ot = "user-agent", xe = "", st = "?", _ = {
|
|
|
1112
1111
|
/droid.+; ((shield|rgcube|gr0006))( bui|\))/i
|
|
1113
1112
|
// Nvidia Portable/Anbernic/Logitech
|
|
1114
1113
|
],
|
|
1115
|
-
[[u, N, { Nvidia: "Shield", Anbernic: "RGCUBE", Logitech: "GR0006" }], c, [s,
|
|
1114
|
+
[[u, N, { Nvidia: "Shield", Anbernic: "RGCUBE", Logitech: "GR0006" }], c, [s, Se]],
|
|
1116
1115
|
[
|
|
1117
1116
|
///////////////////
|
|
1118
1117
|
// WEARABLES
|
|
@@ -1120,48 +1119,48 @@ var Jt = "2.0.9", Xt = 500, ot = "user-agent", xe = "", st = "?", _ = {
|
|
|
1120
1119
|
/\b(sm-[lr]\d\d[0156][fnuw]?s?|gear live)\b/i
|
|
1121
1120
|
// Samsung Galaxy Watch
|
|
1122
1121
|
],
|
|
1123
|
-
[c, [u, se], [s,
|
|
1122
|
+
[c, [u, se], [s, L]],
|
|
1124
1123
|
[
|
|
1125
1124
|
/((pebble))app/i,
|
|
1126
1125
|
// Pebble
|
|
1127
1126
|
/(asus|google|lg|oppo|xiaomi) ((pixel |zen)?watch[\w ]*)( bui|\))/i
|
|
1128
1127
|
// Asus ZenWatch / LG Watch / Pixel Watch / Xiaomi Watch
|
|
1129
1128
|
],
|
|
1130
|
-
[u, c, [s,
|
|
1129
|
+
[u, c, [s, L]],
|
|
1131
1130
|
[
|
|
1132
1131
|
/(ow(?:19|20)?we?[1-3]{1,3})/i
|
|
1133
1132
|
// Oppo Watch
|
|
1134
1133
|
],
|
|
1135
|
-
[c, [u, Ye], [s,
|
|
1134
|
+
[c, [u, Ye], [s, L]],
|
|
1136
1135
|
[
|
|
1137
1136
|
/(watch)(?: ?os[,\/]|\d,\d\/)[\d\.]+/i
|
|
1138
1137
|
// Apple Watch
|
|
1139
1138
|
],
|
|
1140
|
-
[c, [u, $], [s,
|
|
1139
|
+
[c, [u, $], [s, L]],
|
|
1141
1140
|
[
|
|
1142
1141
|
/(opwwe\d{3})/i
|
|
1143
1142
|
// OnePlus Watch
|
|
1144
1143
|
],
|
|
1145
|
-
[c, [u,
|
|
1144
|
+
[c, [u, ft], [s, L]],
|
|
1146
1145
|
[
|
|
1147
1146
|
/(moto 360)/i
|
|
1148
1147
|
// Motorola 360
|
|
1149
1148
|
],
|
|
1150
|
-
[c, [u, Ve], [s,
|
|
1149
|
+
[c, [u, Ve], [s, L]],
|
|
1151
1150
|
[
|
|
1152
1151
|
/(smartwatch 3)/i
|
|
1153
1152
|
// Sony SmartWatch
|
|
1154
1153
|
],
|
|
1155
|
-
[c, [u, ce], [s,
|
|
1154
|
+
[c, [u, ce], [s, L]],
|
|
1156
1155
|
[
|
|
1157
1156
|
/(g watch r)/i
|
|
1158
1157
|
// LG G Watch R
|
|
1159
1158
|
],
|
|
1160
|
-
[c, [u,
|
|
1159
|
+
[c, [u, me], [s, L]],
|
|
1161
1160
|
[
|
|
1162
1161
|
/droid.+; (wt63?0{2,3})\)/i
|
|
1163
1162
|
],
|
|
1164
|
-
[c, [u,
|
|
1163
|
+
[c, [u, qe], [s, L]],
|
|
1165
1164
|
[
|
|
1166
1165
|
///////////////////
|
|
1167
1166
|
// XR
|
|
@@ -1169,22 +1168,22 @@ var Jt = "2.0.9", Xt = 500, ot = "user-agent", xe = "", st = "?", _ = {
|
|
|
1169
1168
|
/droid.+; (glass) \d/i
|
|
1170
1169
|
// Google Glass
|
|
1171
1170
|
],
|
|
1172
|
-
[c, [u, J], [s,
|
|
1171
|
+
[c, [u, J], [s, we]],
|
|
1173
1172
|
[
|
|
1174
1173
|
/(pico) ([\w ]+) os\d/i
|
|
1175
1174
|
// Pico
|
|
1176
1175
|
],
|
|
1177
|
-
[u, c, [s,
|
|
1176
|
+
[u, c, [s, we]],
|
|
1178
1177
|
[
|
|
1179
1178
|
/(quest( \d| pro)?s?).+vr/i
|
|
1180
1179
|
// Meta Quest
|
|
1181
1180
|
],
|
|
1182
|
-
[c, [u,
|
|
1181
|
+
[c, [u, Ke], [s, we]],
|
|
1183
1182
|
[
|
|
1184
1183
|
/mobile vr; rv.+firefox/i
|
|
1185
1184
|
// Unidentifiable VR device using Firefox Reality / Wolvic
|
|
1186
1185
|
],
|
|
1187
|
-
[[s,
|
|
1186
|
+
[[s, we]],
|
|
1188
1187
|
[
|
|
1189
1188
|
///////////////////
|
|
1190
1189
|
// EMBEDDED
|
|
@@ -1197,7 +1196,7 @@ var Jt = "2.0.9", Xt = 500, ot = "user-agent", xe = "", st = "?", _ = {
|
|
|
1197
1196
|
/(aeobc)\b/i
|
|
1198
1197
|
// Echo Dot
|
|
1199
1198
|
],
|
|
1200
|
-
[c, [u,
|
|
1199
|
+
[c, [u, ge], [s, ue]],
|
|
1201
1200
|
[
|
|
1202
1201
|
/(homepod).+mac os/i
|
|
1203
1202
|
// Apple HomePod
|
|
@@ -1215,11 +1214,11 @@ var Jt = "2.0.9", Xt = 500, ot = "user-agent", xe = "", st = "?", _ = {
|
|
|
1215
1214
|
/droid.+; ([\w- ]+) (4k|android|smart|google)[- ]?tv/i
|
|
1216
1215
|
// Unidentifiable SmartTV
|
|
1217
1216
|
],
|
|
1218
|
-
[c, [s,
|
|
1217
|
+
[c, [s, T]],
|
|
1219
1218
|
[
|
|
1220
1219
|
/\b((4k|android|smart|opera)[- ]?tv|tv; rv:|large screen[\w ]+safari)\b/i
|
|
1221
1220
|
],
|
|
1222
|
-
[[s,
|
|
1221
|
+
[[s, T]],
|
|
1223
1222
|
[
|
|
1224
1223
|
/droid .+?; ([^;]+?)(?: bui|; wv\)|\) applew|; hmsc).+?(mobile|vr|\d) safari/i
|
|
1225
1224
|
],
|
|
@@ -1245,17 +1244,17 @@ var Jt = "2.0.9", Xt = 500, ot = "user-agent", xe = "", st = "?", _ = {
|
|
|
1245
1244
|
/windows.+ edge\/([\w\.]+)/i
|
|
1246
1245
|
// EdgeHTML
|
|
1247
1246
|
],
|
|
1248
|
-
[
|
|
1247
|
+
[l, [d, Ie + "HTML"]],
|
|
1249
1248
|
[
|
|
1250
1249
|
/(arkweb)\/([\w\.]+)/i
|
|
1251
1250
|
// ArkWeb
|
|
1252
1251
|
],
|
|
1253
|
-
[
|
|
1252
|
+
[d, l],
|
|
1254
1253
|
[
|
|
1255
1254
|
/webkit\/537\.36.+chrome\/(?!27)([\w\.]+)/i
|
|
1256
1255
|
// Blink
|
|
1257
1256
|
],
|
|
1258
|
-
[
|
|
1257
|
+
[l, [d, "Blink"]],
|
|
1259
1258
|
[
|
|
1260
1259
|
/(presto)\/([\w\.]+)/i,
|
|
1261
1260
|
// Presto
|
|
@@ -1270,16 +1269,16 @@ var Jt = "2.0.9", Xt = 500, ot = "user-agent", xe = "", st = "?", _ = {
|
|
|
1270
1269
|
/\b(libweb)/i
|
|
1271
1270
|
// LibWeb
|
|
1272
1271
|
],
|
|
1273
|
-
[
|
|
1272
|
+
[d, l],
|
|
1274
1273
|
[
|
|
1275
1274
|
/ladybird\//i
|
|
1276
1275
|
],
|
|
1277
|
-
[[
|
|
1276
|
+
[[d, "LibWeb"]],
|
|
1278
1277
|
[
|
|
1279
1278
|
/rv\:([\w\.]{1,9})\b.+(gecko)/i
|
|
1280
1279
|
// Gecko
|
|
1281
1280
|
],
|
|
1282
|
-
[
|
|
1281
|
+
[l, d]
|
|
1283
1282
|
],
|
|
1284
1283
|
os: [
|
|
1285
1284
|
[
|
|
@@ -1287,24 +1286,24 @@ var Jt = "2.0.9", Xt = 500, ot = "user-agent", xe = "", st = "?", _ = {
|
|
|
1287
1286
|
/(windows nt) (6\.[23]); arm/i
|
|
1288
1287
|
// Windows RT
|
|
1289
1288
|
],
|
|
1290
|
-
[[
|
|
1289
|
+
[[d, /N/, "R"], [l, N, gt]],
|
|
1291
1290
|
[
|
|
1292
1291
|
/(windows (?:phone|mobile|iot))(?: os)?[\/ ]?([\d\.]*( se)?)/i,
|
|
1293
1292
|
// Windows IoT/Mobile/Phone
|
|
1294
1293
|
// Windows NT/3.1/95/98/ME/2000/XP/Vista/7/8/8.1/10/11
|
|
1295
1294
|
/(windows)[\/ ](1[01]|2000|3\.1|7|8(\.1)?|9[58]|me|server 20\d\d( r2)?|vista|xp)/i
|
|
1296
1295
|
],
|
|
1297
|
-
[
|
|
1296
|
+
[d, l],
|
|
1298
1297
|
[
|
|
1299
1298
|
/windows nt ?([\d\.\)]*)(?!.+xbox)/i,
|
|
1300
1299
|
/\bwin(?=3| ?9|n)(?:nt| 9x )?([\d\.;]*)/i
|
|
1301
1300
|
],
|
|
1302
|
-
[[
|
|
1301
|
+
[[l, /(;|\))/g, "", N, gt], [d, Xe]],
|
|
1303
1302
|
[
|
|
1304
1303
|
/(windows ce)\/?([\d\.]*)/i
|
|
1305
1304
|
// Windows CE
|
|
1306
1305
|
],
|
|
1307
|
-
[
|
|
1306
|
+
[d, l],
|
|
1308
1307
|
[
|
|
1309
1308
|
// iOS/macOS
|
|
1310
1309
|
/[adehimnop]{4,7}\b(?:.*os ([\w]+) like mac|; opera)/i,
|
|
@@ -1313,100 +1312,100 @@ var Jt = "2.0.9", Xt = 500, ot = "user-agent", xe = "", st = "?", _ = {
|
|
|
1313
1312
|
/\btvos ?([\w\.]+)/i,
|
|
1314
1313
|
/cfnetwork\/.+darwin/i
|
|
1315
1314
|
],
|
|
1316
|
-
[[
|
|
1315
|
+
[[l, /_/g, "."], [d, "iOS"]],
|
|
1317
1316
|
[
|
|
1318
1317
|
/(mac os x) ?([\w\. ]*)/i,
|
|
1319
1318
|
/(macintosh|mac_powerpc\b)(?!.+(haiku|morphos))/i
|
|
1320
1319
|
// Mac OS
|
|
1321
1320
|
],
|
|
1322
|
-
[[
|
|
1321
|
+
[[d, "macOS"], [l, /_/g, "."]],
|
|
1323
1322
|
[
|
|
1324
1323
|
// Google Chromecast
|
|
1325
1324
|
/android ([\d\.]+).*crkey/i
|
|
1326
1325
|
// Google Chromecast, Android-based
|
|
1327
1326
|
],
|
|
1328
|
-
[
|
|
1327
|
+
[l, [d, q + " Android"]],
|
|
1329
1328
|
[
|
|
1330
1329
|
/fuchsia.*crkey\/([\d\.]+)/i
|
|
1331
1330
|
// Google Chromecast, Fuchsia-based
|
|
1332
1331
|
],
|
|
1333
|
-
[
|
|
1332
|
+
[l, [d, q + " Fuchsia"]],
|
|
1334
1333
|
[
|
|
1335
1334
|
/crkey\/([\d\.]+).*devicetype\/smartspeaker/i
|
|
1336
1335
|
// Google Chromecast, Linux-based Smart Speaker
|
|
1337
1336
|
],
|
|
1338
|
-
[
|
|
1337
|
+
[l, [d, q + " SmartSpeaker"]],
|
|
1339
1338
|
[
|
|
1340
1339
|
/linux.*crkey\/([\d\.]+)/i
|
|
1341
1340
|
// Google Chromecast, Legacy Linux-based
|
|
1342
1341
|
],
|
|
1343
|
-
[
|
|
1342
|
+
[l, [d, q + " Linux"]],
|
|
1344
1343
|
[
|
|
1345
1344
|
/crkey\/([\d\.]+)/i
|
|
1346
1345
|
// Google Chromecast, unknown
|
|
1347
1346
|
],
|
|
1348
|
-
[
|
|
1347
|
+
[l, [d, q]],
|
|
1349
1348
|
[
|
|
1350
1349
|
// Mobile OSes
|
|
1351
1350
|
/droid ([\w\.]+)\b.+(android[- ]x86)/i
|
|
1352
1351
|
// Android-x86
|
|
1353
1352
|
],
|
|
1354
|
-
[
|
|
1353
|
+
[l, d],
|
|
1355
1354
|
[
|
|
1356
1355
|
/(ubuntu) ([\w\.]+) like android/i
|
|
1357
1356
|
// Ubuntu Touch
|
|
1358
1357
|
],
|
|
1359
|
-
[[
|
|
1358
|
+
[[d, /(.+)/, "$1 Touch"], l],
|
|
1360
1359
|
[
|
|
1361
1360
|
/(harmonyos)[\/ ]?([\d\.]*)/i,
|
|
1362
1361
|
// HarmonyOS
|
|
1363
1362
|
// Android/Blackberry/WebOS/QNX/Bada/RIM/KaiOS/Maemo/MeeGo/S40/Sailfish OS/OpenHarmony/Tizen
|
|
1364
1363
|
/(android|bada|blackberry|kaios|maemo|meego|openharmony|qnx|rim tablet os|sailfish|series40|symbian|tizen)\w*[-\/\.; ]?([\d\.]*)/i
|
|
1365
1364
|
],
|
|
1366
|
-
[
|
|
1365
|
+
[d, l],
|
|
1367
1366
|
[
|
|
1368
1367
|
/\(bb(10);/i
|
|
1369
1368
|
// BlackBerry 10
|
|
1370
1369
|
],
|
|
1371
|
-
[
|
|
1370
|
+
[l, [d, ct]],
|
|
1372
1371
|
[
|
|
1373
1372
|
/(?:symbian ?os|symbos|s60(?=;)|series ?60)[-\/ ]?([\w\.]*)/i
|
|
1374
1373
|
// Symbian
|
|
1375
1374
|
],
|
|
1376
|
-
[
|
|
1375
|
+
[l, [d, "Symbian"]],
|
|
1377
1376
|
[
|
|
1378
1377
|
/mozilla\/[\d\.]+ \((?:mobile[;\w ]*|tablet|tv|[^\)]*(?:viera|lg(?:l25|-d300)|alcatel ?o.+|y300-f1)); rv:([\w\.]+)\).+gecko\//i
|
|
1379
1378
|
// Firefox OS
|
|
1380
1379
|
],
|
|
1381
|
-
[
|
|
1380
|
+
[l, [d, de + " OS"]],
|
|
1382
1381
|
[
|
|
1383
1382
|
/\b(?:hp)?wos(?:browser)?\/([\w\.]+)/i,
|
|
1384
1383
|
// WebOS
|
|
1385
1384
|
/webos(?:[ \/]?|\.tv-20(?=2[2-9]))(\d[\d\.]*)/i
|
|
1386
1385
|
],
|
|
1387
|
-
[
|
|
1386
|
+
[l, [d, "webOS"]],
|
|
1388
1387
|
[
|
|
1389
1388
|
/web0s;.+?(?:chr[o0]me|safari)\/(\d+)/i
|
|
1390
1389
|
// https://webostv.developer.lge.com/develop/specifications/web-api-and-web-engine
|
|
1391
1390
|
],
|
|
1392
|
-
[[
|
|
1391
|
+
[[l, N, { 25: "120", 24: "108", 23: "94", 22: "87", 6: "79", 5: "68", 4: "53", 3: "38", 2: "538", 1: "537", "*": "TV" }], [d, "webOS"]],
|
|
1393
1392
|
[
|
|
1394
1393
|
/watch(?: ?os[,\/ ]|\d,\d\/)([\d\.]+)/i
|
|
1395
1394
|
// watchOS
|
|
1396
1395
|
],
|
|
1397
|
-
[
|
|
1396
|
+
[l, [d, "watchOS"]],
|
|
1398
1397
|
[
|
|
1399
1398
|
// Google ChromeOS
|
|
1400
1399
|
/cros [\w]+(?:\)| ([\w\.]+)\b)/i
|
|
1401
1400
|
// Chromium OS
|
|
1402
1401
|
],
|
|
1403
|
-
[
|
|
1402
|
+
[l, [d, "Chrome OS"]],
|
|
1404
1403
|
[
|
|
1405
1404
|
// Smart TVs
|
|
1406
1405
|
/kepler ([\w\.]+); (aft|aeo)/i
|
|
1407
1406
|
// Vega OS
|
|
1408
1407
|
],
|
|
1409
|
-
[
|
|
1408
|
+
[l, [d, "Vega OS"]],
|
|
1410
1409
|
[
|
|
1411
1410
|
/(netrange)mmh/i,
|
|
1412
1411
|
// Netrange
|
|
@@ -1441,74 +1440,74 @@ var Jt = "2.0.9", Xt = 500, ot = "user-agent", xe = "", st = "?", _ = {
|
|
|
1441
1440
|
/(haiku) ?(r\d)?/i
|
|
1442
1441
|
// Haiku
|
|
1443
1442
|
],
|
|
1444
|
-
[
|
|
1443
|
+
[d, l],
|
|
1445
1444
|
[
|
|
1446
1445
|
/(sunos) ?([\d\.]*)/i
|
|
1447
1446
|
// Solaris
|
|
1448
1447
|
],
|
|
1449
|
-
[[
|
|
1448
|
+
[[d, "Solaris"], l],
|
|
1450
1449
|
[
|
|
1451
1450
|
/\b(beos|os\/2|amigaos|openvms|hp-ux|serenityos)/i,
|
|
1452
1451
|
// BeOS/OS2/AmigaOS/OpenVMS/HP-UX/SerenityOS
|
|
1453
1452
|
/(unix) ?([\w\.]*)/i
|
|
1454
1453
|
// UNIX
|
|
1455
1454
|
],
|
|
1456
|
-
[
|
|
1455
|
+
[d, l]
|
|
1457
1456
|
]
|
|
1458
|
-
},
|
|
1459
|
-
var
|
|
1460
|
-
return V.call(
|
|
1461
|
-
[D, [
|
|
1462
|
-
[Y, [
|
|
1457
|
+
}, ye = (function() {
|
|
1458
|
+
var a = { init: {}, isIgnore: {}, isIgnoreRgx: {}, toString: {} };
|
|
1459
|
+
return V.call(a.init, [
|
|
1460
|
+
[D, [d, l, pe, s]],
|
|
1461
|
+
[Y, [M]],
|
|
1463
1462
|
[F, [s, c, u]],
|
|
1464
|
-
[U, [
|
|
1465
|
-
[P, [
|
|
1466
|
-
]), V.call(
|
|
1467
|
-
[D, [
|
|
1468
|
-
[U, [
|
|
1469
|
-
[P, [
|
|
1470
|
-
]), V.call(
|
|
1463
|
+
[U, [d, l]],
|
|
1464
|
+
[P, [d, l]]
|
|
1465
|
+
]), V.call(a.isIgnore, [
|
|
1466
|
+
[D, [l, pe]],
|
|
1467
|
+
[U, [l]],
|
|
1468
|
+
[P, [l]]
|
|
1469
|
+
]), V.call(a.isIgnoreRgx, [
|
|
1471
1470
|
[D, / ?browser$/i],
|
|
1472
1471
|
[P, / ?os$/i]
|
|
1473
|
-
]), V.call(
|
|
1474
|
-
[D, [
|
|
1475
|
-
[Y, [
|
|
1472
|
+
]), V.call(a.toString, [
|
|
1473
|
+
[D, [d, l]],
|
|
1474
|
+
[Y, [M]],
|
|
1476
1475
|
[F, [u, c]],
|
|
1477
|
-
[U, [
|
|
1478
|
-
[P, [
|
|
1479
|
-
]),
|
|
1480
|
-
})(),
|
|
1481
|
-
var e =
|
|
1476
|
+
[U, [d, l]],
|
|
1477
|
+
[P, [d, l]]
|
|
1478
|
+
]), a;
|
|
1479
|
+
})(), c0 = function(a, t) {
|
|
1480
|
+
var e = ye.init[t], i = ye.isIgnore[t] || 0, x = ye.isIgnoreRgx[t] || 0, r = ye.toString[t] || 0;
|
|
1482
1481
|
function o() {
|
|
1483
1482
|
V.call(this, e);
|
|
1484
1483
|
}
|
|
1485
1484
|
return o.prototype.getItem = function() {
|
|
1486
|
-
return
|
|
1485
|
+
return a;
|
|
1487
1486
|
}, o.prototype.withClientHints = function() {
|
|
1488
|
-
return Z ? Z.getHighEntropyValues(
|
|
1489
|
-
return
|
|
1490
|
-
}) :
|
|
1487
|
+
return Z ? Z.getHighEntropyValues(Ot).then(function(f) {
|
|
1488
|
+
return a.setCH(new Dt(f, !1)).parseCH().get();
|
|
1489
|
+
}) : a.parseCH().get();
|
|
1491
1490
|
}, o.prototype.withFeatureCheck = function() {
|
|
1492
|
-
return
|
|
1493
|
-
}, t !=
|
|
1494
|
-
var
|
|
1491
|
+
return a.detectFeature().get();
|
|
1492
|
+
}, t != xe && (o.prototype.is = function(f) {
|
|
1493
|
+
var h = !1;
|
|
1495
1494
|
for (var S in this)
|
|
1496
|
-
if (this.hasOwnProperty(S) && !Ze(i, S) &&
|
|
1497
|
-
if (
|
|
1498
|
-
} else if (
|
|
1499
|
-
|
|
1495
|
+
if (this.hasOwnProperty(S) && !Ze(i, S) && K(x ? re(x, this[S]) : this[S]) == K(x ? re(x, f) : f)) {
|
|
1496
|
+
if (h = !0, f != _.UNDEFINED) break;
|
|
1497
|
+
} else if (f == _.UNDEFINED && h) {
|
|
1498
|
+
h = !h;
|
|
1500
1499
|
break;
|
|
1501
1500
|
}
|
|
1502
|
-
return
|
|
1501
|
+
return h;
|
|
1503
1502
|
}, o.prototype.toString = function() {
|
|
1504
|
-
var
|
|
1505
|
-
for (var
|
|
1506
|
-
typeof this[r[
|
|
1507
|
-
return
|
|
1508
|
-
}), o.prototype.then = function(
|
|
1509
|
-
var
|
|
1510
|
-
for (var R in
|
|
1511
|
-
|
|
1503
|
+
var f = ae;
|
|
1504
|
+
for (var h in r)
|
|
1505
|
+
typeof this[r[h]] !== _.UNDEFINED && (f += (f ? " " : ae) + this[r[h]]);
|
|
1506
|
+
return f || _.UNDEFINED;
|
|
1507
|
+
}), o.prototype.then = function(f) {
|
|
1508
|
+
var h = this, S = function() {
|
|
1509
|
+
for (var R in h)
|
|
1510
|
+
h.hasOwnProperty(R) && (this[R] = h[R]);
|
|
1512
1511
|
};
|
|
1513
1512
|
S.prototype = {
|
|
1514
1513
|
is: o.prototype.is,
|
|
@@ -1517,154 +1516,154 @@ var Jt = "2.0.9", Xt = 500, ot = "user-agent", xe = "", st = "?", _ = {
|
|
|
1517
1516
|
withFeatureCheck: o.prototype.withFeatureCheck
|
|
1518
1517
|
};
|
|
1519
1518
|
var I = new S();
|
|
1520
|
-
return
|
|
1519
|
+
return f(I), I;
|
|
1521
1520
|
}, new o();
|
|
1522
1521
|
};
|
|
1523
|
-
function Dt(
|
|
1524
|
-
if (
|
|
1522
|
+
function Dt(a, t) {
|
|
1523
|
+
if (a = a || {}, V.call(this, Ot), t)
|
|
1525
1524
|
V.call(this, [
|
|
1526
|
-
[et,
|
|
1527
|
-
[tt,
|
|
1528
|
-
[v, /\?1/.test(
|
|
1529
|
-
[c,
|
|
1530
|
-
[ne,
|
|
1531
|
-
[it,
|
|
1532
|
-
[
|
|
1533
|
-
[X,
|
|
1534
|
-
[Ue,
|
|
1525
|
+
[et, We(a[j])],
|
|
1526
|
+
[tt, We(a[$t])],
|
|
1527
|
+
[v, /\?1/.test(a[a0])],
|
|
1528
|
+
[c, le(a[x0])],
|
|
1529
|
+
[ne, le(a[Mt])],
|
|
1530
|
+
[it, le(a[n0])],
|
|
1531
|
+
[M, le(a[e0])],
|
|
1532
|
+
[X, We(a[i0])],
|
|
1533
|
+
[Ue, le(a[t0])]
|
|
1535
1534
|
]);
|
|
1536
1535
|
else
|
|
1537
|
-
for (var e in
|
|
1538
|
-
this.hasOwnProperty(e) && typeof
|
|
1536
|
+
for (var e in a)
|
|
1537
|
+
this.hasOwnProperty(e) && typeof a[e] !== _.UNDEFINED && (this[e] = a[e]);
|
|
1539
1538
|
}
|
|
1540
|
-
function
|
|
1539
|
+
function W(a, t, e, i) {
|
|
1541
1540
|
return V.call(this, [
|
|
1542
|
-
["itemType",
|
|
1541
|
+
["itemType", a],
|
|
1543
1542
|
["ua", t],
|
|
1544
1543
|
["uaCH", i],
|
|
1545
1544
|
["rgxMap", e],
|
|
1546
|
-
["data",
|
|
1545
|
+
["data", c0(this, a)]
|
|
1547
1546
|
]), this;
|
|
1548
1547
|
}
|
|
1549
|
-
|
|
1550
|
-
return
|
|
1548
|
+
W.prototype.get = function(a) {
|
|
1549
|
+
return a ? this.data.hasOwnProperty(a) ? this.data[a] : void 0 : this.data;
|
|
1551
1550
|
};
|
|
1552
|
-
|
|
1553
|
-
return this.data[
|
|
1551
|
+
W.prototype.set = function(a, t) {
|
|
1552
|
+
return this.data[a] = t, this;
|
|
1554
1553
|
};
|
|
1555
|
-
|
|
1556
|
-
return this.uaCH =
|
|
1554
|
+
W.prototype.setCH = function(a) {
|
|
1555
|
+
return this.uaCH = a, this;
|
|
1557
1556
|
};
|
|
1558
|
-
|
|
1559
|
-
if (
|
|
1557
|
+
W.prototype.detectFeature = function() {
|
|
1558
|
+
if (O && O.userAgent == this.ua)
|
|
1560
1559
|
switch (this.itemType) {
|
|
1561
1560
|
case D:
|
|
1562
|
-
|
|
1561
|
+
O.brave && typeof O.brave.isBrave == _.FUNCTION && this.set(d, "Brave");
|
|
1563
1562
|
break;
|
|
1564
1563
|
case F:
|
|
1565
|
-
!this.get(s) && Z && Z[v] && this.set(s, v), this.get(c) == "Macintosh" &&
|
|
1564
|
+
!this.get(s) && Z && Z[v] && this.set(s, v), this.get(c) == "Macintosh" && O && typeof O.standalone !== _.UNDEFINED && O.maxTouchPoints && O.maxTouchPoints > 2 && this.set(c, "iPad").set(s, k);
|
|
1566
1565
|
break;
|
|
1567
1566
|
case P:
|
|
1568
|
-
!this.get(
|
|
1567
|
+
!this.get(d) && Z && Z[ne] && this.set(d, Z[ne]);
|
|
1569
1568
|
break;
|
|
1570
|
-
case
|
|
1571
|
-
var
|
|
1572
|
-
return
|
|
1569
|
+
case xe:
|
|
1570
|
+
var a = this.data, t = function(e) {
|
|
1571
|
+
return a[e].getItem().detectFeature().get();
|
|
1573
1572
|
};
|
|
1574
1573
|
this.set(D, t(D)).set(Y, t(Y)).set(F, t(F)).set(U, t(U)).set(P, t(P));
|
|
1575
1574
|
}
|
|
1576
1575
|
return this;
|
|
1577
1576
|
};
|
|
1578
|
-
|
|
1579
|
-
switch (this.itemType !=
|
|
1577
|
+
W.prototype.parseUA = function() {
|
|
1578
|
+
switch (this.itemType != xe && $e.call(this.data, this.ua, this.rgxMap), this.itemType) {
|
|
1580
1579
|
case D:
|
|
1581
|
-
this.set(pe, Qe(this.get(
|
|
1580
|
+
this.set(pe, Qe(this.get(l)));
|
|
1582
1581
|
break;
|
|
1583
1582
|
case P:
|
|
1584
|
-
if (this.get(
|
|
1585
|
-
var
|
|
1586
|
-
|
|
1583
|
+
if (this.get(d) == "iOS" && this.get(l) == "18.6") {
|
|
1584
|
+
var a = /\) Version\/([\d\.]+)/.exec(this.ua);
|
|
1585
|
+
a && parseInt(a[1].substring(0, 2), 10) >= 26 && this.set(l, a[1]);
|
|
1587
1586
|
}
|
|
1588
1587
|
break;
|
|
1589
1588
|
}
|
|
1590
1589
|
return this;
|
|
1591
1590
|
};
|
|
1592
|
-
|
|
1593
|
-
var
|
|
1591
|
+
W.prototype.parseCH = function() {
|
|
1592
|
+
var a = this.uaCH, t = this.rgxMap;
|
|
1594
1593
|
switch (this.itemType) {
|
|
1595
1594
|
case D:
|
|
1596
1595
|
case U:
|
|
1597
|
-
var e =
|
|
1596
|
+
var e = a[tt] || a[et], i;
|
|
1598
1597
|
if (e)
|
|
1599
|
-
for (var
|
|
1600
|
-
var r = e[
|
|
1601
|
-
this.itemType == D && !/not.a.brand/i.test(r) && (!i || /Chrom/.test(i) && r !=
|
|
1598
|
+
for (var x = 0; x < e.length; x++) {
|
|
1599
|
+
var r = e[x].brand || e[x], o = e[x].version;
|
|
1600
|
+
this.itemType == D && !/not.a.brand/i.test(r) && (!i || /Chrom/.test(i) && r != bt || i == Ie && /WebView2/.test(r)) && (r = N(r, s0), i = this.get(d), i && !/Chrom/.test(i) && /Chrom/.test(r) || this.set(d, r).set(l, o).set(pe, Qe(o)), i = r), this.itemType == U && r == bt && this.set(l, o);
|
|
1602
1601
|
}
|
|
1603
1602
|
break;
|
|
1604
1603
|
case Y:
|
|
1605
|
-
var
|
|
1606
|
-
|
|
1604
|
+
var f = a[M];
|
|
1605
|
+
f && (f && a[Ue] == "64" && (f += "64"), $e.call(this.data, f + ";", t));
|
|
1607
1606
|
break;
|
|
1608
1607
|
case F:
|
|
1609
|
-
if (
|
|
1610
|
-
var
|
|
1611
|
-
$e.call(
|
|
1608
|
+
if (a[v] && this.set(s, v), a[c] && (this.set(c, a[c]), !this.get(s) || !this.get(u))) {
|
|
1609
|
+
var h = {};
|
|
1610
|
+
$e.call(h, "droid 9; " + a[c] + ")", t), !this.get(s) && h.type && this.set(s, h.type), !this.get(u) && h.vendor && this.set(u, h.vendor);
|
|
1612
1611
|
}
|
|
1613
|
-
if (
|
|
1612
|
+
if (a[X]) {
|
|
1614
1613
|
var S;
|
|
1615
|
-
if (typeof
|
|
1616
|
-
for (var I = 0; !S && I <
|
|
1617
|
-
S = N(
|
|
1614
|
+
if (typeof a[X] != "string")
|
|
1615
|
+
for (var I = 0; !S && I < a[X].length; )
|
|
1616
|
+
S = N(a[X][I++], mt);
|
|
1618
1617
|
else
|
|
1619
|
-
S = N(
|
|
1618
|
+
S = N(a[X], mt);
|
|
1620
1619
|
this.set(s, S);
|
|
1621
1620
|
}
|
|
1622
1621
|
break;
|
|
1623
1622
|
case P:
|
|
1624
|
-
var R =
|
|
1623
|
+
var R = a[ne];
|
|
1625
1624
|
if (R) {
|
|
1626
|
-
var H =
|
|
1627
|
-
R == Xe && (H = parseInt(Qe(H), 10) >= 13 ? "11" : "10"), this.set(
|
|
1625
|
+
var H = a[it];
|
|
1626
|
+
R == Xe && (H = parseInt(Qe(H), 10) >= 13 ? "11" : "10"), this.set(d, R).set(l, H);
|
|
1628
1627
|
}
|
|
1629
|
-
this.get(
|
|
1628
|
+
this.get(d) == Xe && a[c] == "Xbox" && this.set(d, "Xbox").set(l, void 0);
|
|
1630
1629
|
break;
|
|
1631
|
-
case
|
|
1632
|
-
var oe = this.data, z = function(
|
|
1633
|
-
return oe[
|
|
1630
|
+
case xe:
|
|
1631
|
+
var oe = this.data, z = function(be) {
|
|
1632
|
+
return oe[be].getItem().setCH(a).parseCH().get();
|
|
1634
1633
|
};
|
|
1635
1634
|
this.set(D, z(D)).set(Y, z(Y)).set(F, z(F)).set(U, z(U)).set(P, z(P));
|
|
1636
1635
|
}
|
|
1637
1636
|
return this;
|
|
1638
1637
|
};
|
|
1639
|
-
function G(
|
|
1640
|
-
if (typeof
|
|
1638
|
+
function G(a, t, e) {
|
|
1639
|
+
if (typeof a === _.OBJECT ? (Ce(a, !0) ? (typeof t === _.OBJECT && (e = t), t = a) : (e = a, t = void 0), a = void 0) : typeof a === _.STRING && !Ce(t, !0) && (e = t, t = void 0), e)
|
|
1641
1640
|
if (typeof e.append === _.FUNCTION) {
|
|
1642
1641
|
var i = {};
|
|
1643
1642
|
e.forEach(function(I, R) {
|
|
1644
1643
|
i[String(R).toLowerCase()] = I;
|
|
1645
1644
|
}), e = i;
|
|
1646
1645
|
} else {
|
|
1647
|
-
var
|
|
1646
|
+
var x = {};
|
|
1648
1647
|
for (var r in e)
|
|
1649
|
-
e.hasOwnProperty(r) && (
|
|
1650
|
-
e =
|
|
1648
|
+
e.hasOwnProperty(r) && (x[String(r).toLowerCase()] = e[r]);
|
|
1649
|
+
e = x;
|
|
1651
1650
|
}
|
|
1652
1651
|
if (!(this instanceof G))
|
|
1653
|
-
return new G(
|
|
1654
|
-
var o = typeof
|
|
1652
|
+
return new G(a, t, e).getResult();
|
|
1653
|
+
var o = typeof a === _.STRING ? a : (
|
|
1655
1654
|
// Passed user-agent string
|
|
1656
|
-
e && e[
|
|
1655
|
+
e && e[rt] ? e[rt] : (
|
|
1657
1656
|
// User-Agent from passed headers
|
|
1658
|
-
|
|
1657
|
+
O && O.userAgent ? O.userAgent : (
|
|
1659
1658
|
// navigator.userAgent
|
|
1660
|
-
|
|
1659
|
+
ae
|
|
1661
1660
|
)
|
|
1662
1661
|
)
|
|
1663
|
-
),
|
|
1664
|
-
return I ==
|
|
1665
|
-
return new
|
|
1662
|
+
), f = new Dt(e, !0), h = t ? o0(yt, t) : yt, S = function(I) {
|
|
1663
|
+
return I == xe ? function() {
|
|
1664
|
+
return new W(I, o, h, f).set("ua", o).set(D, this.getBrowser()).set(Y, this.getCPU()).set(F, this.getDevice()).set(U, this.getEngine()).set(P, this.getOS()).get();
|
|
1666
1665
|
} : function() {
|
|
1667
|
-
return new
|
|
1666
|
+
return new W(I, o, h[I], f).parseUA().get();
|
|
1668
1667
|
};
|
|
1669
1668
|
};
|
|
1670
1669
|
return V.call(this, [
|
|
@@ -1673,662 +1672,659 @@ function G(x, t, e) {
|
|
|
1673
1672
|
["getDevice", S(F)],
|
|
1674
1673
|
["getEngine", S(U)],
|
|
1675
1674
|
["getOS", S(P)],
|
|
1676
|
-
["getResult", S(
|
|
1675
|
+
["getResult", S(xe)],
|
|
1677
1676
|
["getUA", function() {
|
|
1678
1677
|
return o;
|
|
1679
1678
|
}],
|
|
1680
1679
|
["setUA", function(I) {
|
|
1681
|
-
return he(I) && (o = Ae(I,
|
|
1680
|
+
return he(I) && (o = Ae(I, Zt)), this;
|
|
1682
1681
|
}]
|
|
1683
1682
|
]).setUA(o), this;
|
|
1684
1683
|
}
|
|
1685
|
-
G.VERSION =
|
|
1686
|
-
G.BROWSER =
|
|
1687
|
-
G.CPU =
|
|
1688
|
-
G.DEVICE =
|
|
1689
|
-
G.ENGINE = G.OS =
|
|
1690
|
-
const
|
|
1684
|
+
G.VERSION = Xt;
|
|
1685
|
+
G.BROWSER = Be([d, l, pe, s]);
|
|
1686
|
+
G.CPU = Be([M]);
|
|
1687
|
+
G.DEVICE = Be([c, u, s, Se, v, T, k, L, ue]);
|
|
1688
|
+
G.ENGINE = G.OS = Be([d, l]);
|
|
1689
|
+
const d0 = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
|
|
1691
1690
|
__proto__: null,
|
|
1692
1691
|
UAParser: G
|
|
1693
1692
|
}, Symbol.toStringTag, { value: "Module" })), A = [];
|
|
1694
|
-
for (let
|
|
1695
|
-
A.push((
|
|
1696
|
-
function l0(
|
|
1697
|
-
return (A[
|
|
1693
|
+
for (let a = 0; a < 256; ++a)
|
|
1694
|
+
A.push((a + 256).toString(16).slice(1));
|
|
1695
|
+
function l0(a, t = 0) {
|
|
1696
|
+
return (A[a[t + 0]] + A[a[t + 1]] + A[a[t + 2]] + A[a[t + 3]] + "-" + A[a[t + 4]] + A[a[t + 5]] + "-" + A[a[t + 6]] + A[a[t + 7]] + "-" + A[a[t + 8]] + A[a[t + 9]] + "-" + A[a[t + 10]] + A[a[t + 11]] + A[a[t + 12]] + A[a[t + 13]] + A[a[t + 14]] + A[a[t + 15]]).toLowerCase();
|
|
1698
1697
|
}
|
|
1699
1698
|
let je;
|
|
1700
|
-
const
|
|
1701
|
-
function
|
|
1699
|
+
const u0 = new Uint8Array(16);
|
|
1700
|
+
function f0() {
|
|
1702
1701
|
if (!je) {
|
|
1703
1702
|
if (typeof crypto > "u" || !crypto.getRandomValues)
|
|
1704
1703
|
throw new Error("crypto.getRandomValues() not supported. See https://github.com/uuidjs/uuid#getrandomvalues-not-supported");
|
|
1705
1704
|
je = crypto.getRandomValues.bind(crypto);
|
|
1706
1705
|
}
|
|
1707
|
-
return je(
|
|
1706
|
+
return je(u0);
|
|
1708
1707
|
}
|
|
1709
|
-
const p0 = typeof crypto < "u" && crypto.randomUUID && crypto.randomUUID.bind(crypto),
|
|
1710
|
-
function h0(
|
|
1711
|
-
|
|
1712
|
-
const i =
|
|
1708
|
+
const p0 = typeof crypto < "u" && crypto.randomUUID && crypto.randomUUID.bind(crypto), vt = { randomUUID: p0 };
|
|
1709
|
+
function h0(a, t, e) {
|
|
1710
|
+
a = a || {};
|
|
1711
|
+
const i = a.random ?? a.rng?.() ?? f0();
|
|
1713
1712
|
if (i.length < 16)
|
|
1714
1713
|
throw new Error("Random bytes length must be >= 16");
|
|
1715
1714
|
return i[6] = i[6] & 15 | 64, i[8] = i[8] & 63 | 128, l0(i);
|
|
1716
1715
|
}
|
|
1717
|
-
function Pt(
|
|
1718
|
-
return
|
|
1716
|
+
function Pt(a, t, e) {
|
|
1717
|
+
return vt.randomUUID && !a ? vt.randomUUID() : h0(a);
|
|
1718
|
+
}
|
|
1719
|
+
const n = Nt;
|
|
1720
|
+
function Re() {
|
|
1721
|
+
const a = ["Netherlands", "Turkey", "El Salvador", "Cook Islands", "1374630daNmUc", "Nigeria", "Tokelau", "Wallis and Futuna", "Saint Kitts and Nevis", "Bahamas", "Curaçao", "Guyana", "Papua New Guinea", "Benin", "British Indian Ocean Territory", "Panama", "Macedonia (the former Yugoslav Republic of)", "Norfolk Island", "Niue", "Ecuador", "131250FkUcVJ", "China", "Serbia", "Latvia", "Denmark", "France", "Malawi", "Tuvalu", "Philippines", "Mauritius", "Portugal", "Chad", "India", "Niger", "Montenegro", "Gambia", "Canada", "Liechtenstein", "Kenya", "Belize", "Argentina", "Burkina Faso", "United Arab Emirates", "21mgmyIv", "Holy See", "Maldives", "Guinea-Bissau", "Guadeloupe", "Monaco", "Botswana", "Marshall Islands", "Antarctica", "Timor-Leste", "403eCJJIT", "Mongolia", "Eritrea", "Finland", "Sint Maarten (Dutch part)", "Mayotte", "Malaysia", "Mauritania", "Kyrgyzstan", "Bulgaria", "Micronesia (Federated States of)", "Belarus", "Albania", "Saint Helena, Ascension and Tristan da Cunha", "16893602WtnZXm", "Saudi Arabia", "Guinea", "Algeria", "Israel", "Saint Vincent and the Grenadines", "Uganda", "Bonaire, Sint Eustatius and Saba", "Pakistan", "Belgium", "Costa Rica", "Congo", "Réunion", "Bolivia (Plurinational State of)", "Bosnia and Herzegovina", "Sweden", "Christmas Island", "Korea, Republic of", "Tanzania, United Republic of", "Turkmenistan", "Mexico", "7054380SJPOWB", "Trinidad and Tobago", "Solomon Islands", "Liberia", "Nauru", "South Sudan", "8rEsznw", "Bhutan", "Cayman Islands", "Venezuela (Bolivarian Republic of)", "Tajikistan", "Fiji", "Haiti", "Mali", "110896QUmFxw", "Malta", "Gibraltar", "Pitcairn", "Ethiopia", "Austria", "Burundi", "Saint Lucia", "South Africa", "United States Minor Outlying Islands", "Central African Republic", "Virgin Islands (British)", "1510XXYZdv", "870330NEyBOy", "Dominican Republic", "Spain", "Turks and Caicos Islands", "Palau", "Barbados", "Bermuda", "French Guiana", "Iraq", "Brazil", "South Georgia and the South Sandwich Islands", "Australia", "Brunei Darussalam", "Senegal", "Cyprus", "Faroe Islands", "Guernsey", "Sri Lanka", "Indonesia", "Dominica", "Togo", "Ghana", "Palestine, State of", "Ireland", "Romania", "Guam", "Saint Pierre and Miquelon", "Myanmar", "Slovakia", "Grenada", "Tonga", "Mozambique", "Gabon", "Macao", "Côte d'Ivoire", "Azerbaijan", "Nicaragua", "387ktGnXT", "Switzerland", "Kiribati", "Lesotho", "Lithuania", "Czech Republic", "Cambodia", "Namibia", "Poland", "American Samoa", "Kuwait", "Japan", "Madagascar", "Somalia", "Vanuatu", "San Marino", "Martinique", "Sierra Leone", "Peru", "Viet Nam", "Suriname", "Svalbard and Jan Mayen", "Slovenia", "United States of America", "Jamaica", "Russian Federation", "Georgia", "Saint Martin (French part)", "Andorra", "Bangladesh"];
|
|
1722
|
+
return Re = function() {
|
|
1723
|
+
return a;
|
|
1724
|
+
}, Re();
|
|
1719
1725
|
}
|
|
1720
|
-
|
|
1721
|
-
|
|
1722
|
-
const e = Ut, i = x();
|
|
1726
|
+
(function(a, t) {
|
|
1727
|
+
const e = Nt, i = a();
|
|
1723
1728
|
for (; ; )
|
|
1724
1729
|
try {
|
|
1725
|
-
if (parseInt(e(
|
|
1730
|
+
if (-parseInt(e(480)) / 1 * (parseInt(e(359)) / 2) + parseInt(e(447)) / 3 * (-parseInt(e(339)) / 4) + -parseInt(e(360)) / 5 + parseInt(e(431)) / 6 * (parseInt(e(470)) / 7) + -parseInt(e(347)) / 8 * (parseInt(e(397)) / 9) + -parseInt(e(333)) / 10 + parseInt(e(494)) / 11 === t) break;
|
|
1726
1731
|
i.push(i.shift());
|
|
1727
1732
|
} catch {
|
|
1728
1733
|
i.push(i.shift());
|
|
1729
1734
|
}
|
|
1730
|
-
})(Re,
|
|
1731
|
-
|
|
1732
|
-
|
|
1733
|
-
return x = x - 359, Re()[x];
|
|
1734
|
-
}
|
|
1735
|
-
function Re() {
|
|
1736
|
-
const x = ["9WfjzPS", "South Georgia and the South Sandwich Islands", "American Samoa", "Aruba", "Finland", "Niue", "11pdWmdk", "Chile", "Korea (Democratic People's Republic of)", "Cook Islands", "French Southern Territories", "French Guiana", "Isle of Man", "Dominican Republic", "Kenya", "Bouvet Island", "Congo (Democratic Republic of the)", "Tuvalu", "78ekHdGJ", "Virgin Islands (U.S.)", "Lithuania", "Austria", "Serbia", "Greece", "Heard Island and McDonald Islands", "French Polynesia", "Morocco", "Uruguay", "Iran (Islamic Republic of)", "Curaçao", "Sierra Leone", "Viet Nam", "Guatemala", "Croatia", "Slovakia", "Sao Tome and Principe", "Hungary", "Åland Islands", "United States of America", "Turks and Caicos Islands", "Cyprus", "Georgia", "Singapore", "2wrIVYz", "Guernsey", "Barbados", "Congo", "Holy See", "Mozambique", "Papua New Guinea", "Nepal", "Djibouti", "Antigua and Barbuda", "Guinea", "Turkmenistan", "Faroe Islands", "Brazil", "Turkey", "Saint Lucia", "Syrian Arab Republic", "Tunisia", "United States Minor Outlying Islands", "Macao", "Iceland", "Switzerland", "Liberia", "Saint Pierre and Miquelon", "Kazakhstan", "Ireland", "Jersey", "Madagascar", "Montserrat", "Wallis and Futuna", "Hong Kong", "Palestine, State of", "Guam", "Algeria", "Nauru", "Haiti", "Belgium", "186772jWebJa", "Slovenia", "San Marino", "Benin", "Thailand", "Indonesia", "Falkland Islands (Malvinas)", "Luxembourg", "Cameroon", "Micronesia (Federated States of)", "Cayman Islands", "Romania", "Japan", "El Salvador", "Cambodia", "Bulgaria", "Vanuatu", "Saudi Arabia", "Mali", "Argentina", "Albania", "Peru", "Brunei Darussalam", "Ghana", "Saint Kitts and Nevis", "Tajikistan", "Portugal", "Lebanon", "Venezuela (Bolivarian Republic of)", "9630232PuUxZY", "Bhutan", "Bosnia and Herzegovina", "Pakistan", "Fiji", "Australia", "Saint Barthélemy", "Russian Federation", "Western Sahara", "Tanzania, United Republic of", "728781kFflpM", "Sri Lanka", "Mexico", "Kyrgyzstan", "Comoros", "21115860GavMGu", "Libya", "Kuwait", "United Kingdom", "Bahamas", "Angola", "Antarctica", "274550nnovEx", "Burundi", "10LxAjmS", "Nicaragua", "Bangladesh", "Gibraltar", "Burkina Faso", "Spain", "Malaysia", "Andorra", "890067zkJbAb", "Monaco", "Zimbabwe", "Guinea-Bissau", "Guyana", "South Africa", "Uganda", "Myanmar", "Gabon", "Somalia", "Bolivia (Plurinational State of)", "Central African Republic", "South Sudan", "New Caledonia", "Panama", "Moldova (Republic of)", "Zambia", "504833rkQeog", "Réunion", "Poland", "Belize", "France", "Lao People's Democratic Republic", "Paraguay", "Afghanistan", "Mongolia", "Sint Maarten (Dutch part)", "Korea, Republic of", "Equatorial Guinea", "Suriname", "Israel", "Iraq", "Sudan", "Cocos (Keeling) Islands", "United Arab Emirates", "Palau", "Saint Martin (French part)", "Ethiopia", "British Indian Ocean Territory", "Cabo Verde", "Norway", "Grenada", "Montenegro", "Cuba", "Bonaire, Sint Eustatius and Saba", "Gambia", "Philippines"];
|
|
1737
|
-
return Re = function() {
|
|
1738
|
-
return x;
|
|
1739
|
-
}, Re();
|
|
1735
|
+
})(Re, 355762);
|
|
1736
|
+
function Nt(a, t) {
|
|
1737
|
+
return a = a - 321, Re()[a];
|
|
1740
1738
|
}
|
|
1741
|
-
const E =
|
|
1742
|
-
(function(
|
|
1743
|
-
const e =
|
|
1739
|
+
const Ut = { AF: "Afghanistan", AX: "Åland Islands", AL: n(492), DZ: n(497), AS: n(406), AD: n(425), AO: "Angola", AI: "Anguilla", AQ: n(478), AG: "Antigua and Barbuda", AR: n(467), AM: "Armenia", AW: "Aruba", AU: n(371), AT: n(352), AZ: n(395), BS: n(436), BH: "Bahrain", BD: n(426), BB: n(365), BY: n(491), BE: n(321), BZ: n(466), BJ: n(440), BM: n(366), BT: n(340), BO: n(325), BQ: n(501), BA: n(326), BW: n(476), BV: "Bouvet Island", BR: n(369), IO: n(441), BN: n(372), BG: n(489), BF: n(468), BI: n(353), CV: "Cabo Verde", KH: n(403), CM: "Cameroon", CA: n(463), KY: n(341), CF: n(357), TD: n(458), CL: "Chile", CN: n(448), CX: n(328), CC: "Cocos (Keeling) Islands", CO: "Colombia", KM: "Comoros", CG: n(323), CD: "Congo (Democratic Republic of the)", CK: n(430), CR: n(322), CI: n(394), HR: "Croatia", CU: "Cuba", CW: n(437), CY: n(374), CZ: n(402), DK: n(451), DJ: "Djibouti", DM: n(379), DO: n(361), EC: n(446), EG: "Egypt", SV: n(429), GQ: "Equatorial Guinea", ER: n(482), EE: "Estonia", ET: n(351), FK: "Falkland Islands (Malvinas)", FO: n(375), FJ: n(344), FI: n(483), FR: n(452), GF: n(367), PF: "French Polynesia", TF: "French Southern Territories", GA: n(392), GM: n(462), GE: n(423), DE: "Germany", GH: n(381), GI: n(349), GR: "Greece", GL: "Greenland", GD: n(389), GP: n(474), GU: n(385), GT: "Guatemala", GG: n(376), GN: n(496), GW: n(473), GY: n(438), HT: n(345), HM: "Heard Island and McDonald Islands", VA: n(471), HN: "Honduras", HK: "Hong Kong", HU: "Hungary", IS: "Iceland", IN: n(459), ID: n(378), IR: "Iran (Islamic Republic of)", IQ: n(368), IE: n(383), IM: "Isle of Man", IL: n(498), IT: "Italy", JM: n(421), JP: n(408), JE: "Jersey", JO: "Jordan", KZ: "Kazakhstan", KE: n(465), KI: n(399), KP: "Korea (Democratic People's Republic of)", KR: n(329), KW: n(407), KG: n(488), LA: "Lao People's Democratic Republic", LV: n(450), LB: "Lebanon", LS: n(400), LR: n(336), LY: "Libya", LI: n(464), LT: n(401), LU: "Luxembourg", MO: n(393), MK: n(443), MG: n(409), MW: n(453), MY: n(486), MV: n(472), ML: n(346), MT: n(348), MH: n(477), MQ: n(413), MR: n(487), MU: n(456), YT: n(485), MX: n(332), FM: n(490), MD: "Moldova (Republic of)", MC: n(475), MN: n(481), ME: n(461), MS: "Montserrat", MA: "Morocco", MZ: n(391), MM: n(387), NA: n(404), NR: n(337), NP: "Nepal", NL: n(427), NC: "New Caledonia", NZ: "New Zealand", NI: n(396), NE: n(460), NG: n(432), NU: n(445), NF: n(444), MP: "Northern Mariana Islands", NO: "Norway", OM: "Oman", PK: n(502), PW: n(364), PS: n(382), PA: n(442), PG: n(439), PY: "Paraguay", PE: n(415), PH: n(455), PN: n(350), PL: n(405), PT: n(457), PR: "Puerto Rico", QA: "Qatar", RE: n(324), RO: n(384), RU: n(422), RW: "Rwanda", BL: "Saint Barthélemy", SH: n(493), KN: n(435), LC: n(354), MF: n(424), PM: n(386), VC: n(499), WS: "Samoa", SM: n(412), ST: "Sao Tome and Principe", SA: n(495), SN: n(373), RS: n(449), SC: "Seychelles", SL: n(414), SG: "Singapore", SX: n(484), SK: n(388), SI: n(419), SB: n(335), SO: n(410), ZA: n(355), GS: n(370), SS: n(338), ES: n(362), LK: n(377), SD: "Sudan", SR: n(417), SJ: n(418), SZ: "Swaziland", SE: n(327), CH: n(398), SY: "Syrian Arab Republic", TW: "Taiwan", TJ: n(343), TZ: n(330), TH: "Thailand", TL: n(479), TG: n(380), TK: n(433), TO: n(390), TT: n(334), TN: "Tunisia", TR: n(428), TM: n(331), TC: n(363), TV: n(454), UG: n(500), UA: "Ukraine", AE: n(469), GB: "United Kingdom", US: n(420), UM: n(356), UY: "Uruguay", UZ: "Uzbekistan", VU: n(411), VE: n(342), VN: n(416), VG: n(358), VI: "Virgin Islands (U.S.)", WF: n(434), EH: "Western Sahara", YE: "Yemen", ZM: "Zambia", ZW: "Zimbabwe" }, E = Bt;
|
|
1740
|
+
(function(a, t) {
|
|
1741
|
+
const e = Bt, i = a();
|
|
1744
1742
|
for (; ; )
|
|
1745
1743
|
try {
|
|
1746
|
-
if (-parseInt(e(
|
|
1744
|
+
if (-parseInt(e(490)) / 1 + parseInt(e(501)) / 2 + -parseInt(e(492)) / 3 + -parseInt(e(505)) / 4 + parseInt(e(518)) / 5 + parseInt(e(461)) / 6 + parseInt(e(527)) / 7 === t) break;
|
|
1747
1745
|
i.push(i.shift());
|
|
1748
1746
|
} catch {
|
|
1749
1747
|
i.push(i.shift());
|
|
1750
1748
|
}
|
|
1751
|
-
})(
|
|
1752
|
-
const
|
|
1753
|
-
let
|
|
1754
|
-
|
|
1755
|
-
|
|
1749
|
+
})(Me, 464206);
|
|
1750
|
+
const Le = { gov: { prod: { log: E(512), report: "https://log.vpe.gov-ntruss.com/stats" }, beta: { log: E(516), report: E(472) } }, pub: { prod: { log: E(495), report: E(474) }, beta: { log: E(500), report: E(471) } } };
|
|
1751
|
+
let C = { video: {}, browser: {}, device: {}, connection: {}, screen: {}, player_version: E(514), extra: { sessionId: null, playerType: "VPE React Native" }, log_type: "vpe", privacy: { cookie_enabled: !0 } }, B = { platform: E(521), stage: E(460), sync: !1, syncResult: {} };
|
|
1752
|
+
function Bt(a, t) {
|
|
1753
|
+
return a = a - 457, Me()[a];
|
|
1754
|
+
}
|
|
1755
|
+
const b0 = (/* @__PURE__ */ new Date())[E(468)](), Lt = (a) => a;
|
|
1756
|
+
function ve() {
|
|
1756
1757
|
return Pt();
|
|
1757
1758
|
}
|
|
1758
|
-
function
|
|
1759
|
+
function St() {
|
|
1759
1760
|
return Pt();
|
|
1760
1761
|
}
|
|
1761
|
-
const
|
|
1762
|
-
const
|
|
1763
|
-
return { logDate: i, logDateUnix:
|
|
1762
|
+
const Ft = () => {
|
|
1763
|
+
const a = E, t = /* @__PURE__ */ new Date(), e = (o) => String(o)[a(489)](2, "0"), i = t[a(484)]() + "-" + e(t[a(475)]() + 1) + "-" + e(t[a(478)]()) + " " + e(t[a(463)]()) + ":" + e(t[a(515)]()) + ":" + e(t[a(524)]()), x = Math[a(526)](t.getTime() / 1e3), r = (/* @__PURE__ */ new Date())[a(468)]() - b0;
|
|
1764
|
+
return { logDate: i, logDateUnix: x, thisSec: r };
|
|
1764
1765
|
};
|
|
1765
|
-
function
|
|
1766
|
-
|
|
1767
|
-
|
|
1768
|
-
function xt(x, t) {
|
|
1769
|
-
return x = x - 250, Oe()[x];
|
|
1766
|
+
function w0(a) {
|
|
1767
|
+
const t = E;
|
|
1768
|
+
return typeof a === t(523) && a !== null && !Array[t(510)](a);
|
|
1770
1769
|
}
|
|
1771
|
-
function at(
|
|
1772
|
-
|
|
1773
|
-
|
|
1774
|
-
|
|
1775
|
-
|
|
1776
|
-
|
|
1770
|
+
function at(a, t) {
|
|
1771
|
+
const e = E;
|
|
1772
|
+
Object[e(470)](t)[e(469)](([i, x]) => {
|
|
1773
|
+
const r = e;
|
|
1774
|
+
w0(x) ? (!a[i] && (a[i] = {}), Object[r(470)](x)[r(469)](([o, f]) => {
|
|
1775
|
+
f != null && (a[i][o] = f);
|
|
1776
|
+
})) : x != null && (a[i] = x);
|
|
1777
1777
|
});
|
|
1778
1778
|
}
|
|
1779
|
-
function
|
|
1779
|
+
function Me() {
|
|
1780
|
+
const a = ["error", "log_type", "https://papi.vpe.naverncp.com/player/maSync", "POST", "actionType", "dash", "join", "https://papi.beta-vpe.naverncp.com/player/maSync", "671210PEpchO", "extra", "assign", "json", "3644068YdKELQ", "sync", "report", "MA init report failed:", "host", "isArray", "logDateUnix", "https://papi.vpe.gov-ntruss.com/player/maSync", "syncResult", "latest", "getMinutes", "https://papi.beta-vpe.gov-ntruss.com/player/maSync", "stage", "2528150ByCMVu", "logDate", "totalStartTime", "pub", "parse", "object", "getSeconds", "browser", "floor", "3355723MySRmd", "application/json", "country", "playerStartTime", "MA vpe init", "seekedTime", "TID", "type", "address", "prod", "4939698BOokMB", "geoLocation", "getHours", "nation", "MA report actionType ->", "video", "------------------------------------------------", "getTime", "forEach", "entries", "https://log.beta-vpe.naverncp.com/stats", "https://log.beta-vpe.gov-ntruss.com/stats", "log", "https://log.vpe.naverncp.com/stats", "getMonth", "vpeKey", "videoStartTime", "getDate", "m3u8", "indexOf", "url", "Korea, Republic of", "stringify", "getFullYear", "net", "UUID", "actionDuration", "hls", "padStart", "292001eSiBic", "push", "1430049oKVlzO"];
|
|
1781
|
+
return Me = function() {
|
|
1782
|
+
return a;
|
|
1783
|
+
}, Me();
|
|
1784
|
+
}
|
|
1785
|
+
function g0(a) {
|
|
1780
1786
|
const t = E;
|
|
1781
|
-
return
|
|
1787
|
+
return a[t(480)](t(479)) > -1 ? t(488) : a[t(480)]("mpd") > -1 ? t(498) : "mp4";
|
|
1782
1788
|
}
|
|
1783
|
-
function
|
|
1789
|
+
function m0(a) {
|
|
1784
1790
|
const t = E, e = [];
|
|
1785
|
-
return
|
|
1791
|
+
return a?.r1 && e[t(491)](a.r1), a?.r2 && e[t(491)](a.r2), a?.r3 && e[t(491)](a.r3), e[t(499)](" ");
|
|
1786
1792
|
}
|
|
1787
|
-
function
|
|
1793
|
+
function Gt(a) {
|
|
1788
1794
|
const t = E;
|
|
1789
|
-
|
|
1790
|
-
|
|
1791
|
-
}),
|
|
1795
|
+
a[t(487)] === "1.0" && (a[t(487)] = 0), a[t(487)] === void 0 && (a[t(487)] = 0), [t(530), t(477), t(520), t(532)][t(469)]((i) => {
|
|
1796
|
+
a[i] === void 0 && (a[i] = 0);
|
|
1797
|
+
}), a[t(458)] === void 0 && C.video?.[t(458)] && (a[t(458)] = C[t(466)][t(458)]), a[t(481)] === void 0 && C[t(466)]?.url && (a[t(481)] = C.video[t(481)], a.videoFormat = g0(a.url));
|
|
1792
1798
|
}
|
|
1793
|
-
function
|
|
1799
|
+
function Ht(a) {
|
|
1794
1800
|
const t = E;
|
|
1795
|
-
return !!(
|
|
1801
|
+
return !!(a[t(486)] && a.TID && a[t(509)]);
|
|
1796
1802
|
}
|
|
1797
|
-
function Fe(
|
|
1803
|
+
function Fe(a) {
|
|
1798
1804
|
const t = E;
|
|
1799
1805
|
try {
|
|
1800
|
-
const e =
|
|
1801
|
-
e && (
|
|
1806
|
+
const e = B.syncResult?.[t(462)];
|
|
1807
|
+
e && (a[t(459)] = m0(e), a.isp = e[t(485)] || "", a.ip = B[t(513)]?.ip || "", a[t(464)] = e[t(529)] || "");
|
|
1802
1808
|
} catch {
|
|
1803
1809
|
}
|
|
1804
1810
|
}
|
|
1805
|
-
|
|
1806
|
-
const x = ["mpd", "https://papi.beta-vpe.naverncp.com/player/maSync", "Korea, Republic of", "stage", "prod", "log", "nation", "geoLocation", "video", "MA config initialization failed:", "log_type", "padStart", "seekedTime", "application/json", "22177330zarpWv", "hls", "isArray", "5641293UCRKlC", "forEach", "35MSPLBF", "sync", "entries", "totalStartTime", "vpePackageId", "join", "indexOf", "getFullYear", "dash", "result", "1.0", "country", "25227pftRJB", "assign", "type", "report", "VPE React Native", "TID", "2645486fScQUq", "actionDuration", "913692lXHpHw", "MA init report failed:", "created_at", "getHours", "mp4", "POST", "sessionId", "host", "latest", "actionType", "logDate", "push", "stringify", "9ObtQYZ", "pub", "getTime", "https://papi.vpe.gov-ntruss.com/player/maSync", "12320632ikBRti", "508923lcwSOH", "address", "https://log.beta-vpe.naverncp.com/stats", "UUID", "syncResult", "error", "videoFormat", "net", "vpeKey", "40rTDoBR", "getSeconds", "browser", "logDateUnix", "parse", "url", "https://log.vpe.gov-ntruss.com/stats", "https://papi.beta-vpe.gov-ntruss.com/player/maSync", "vpe", "platform", "extra", "------------------------------------------------"];
|
|
1807
|
-
return Oe = function() {
|
|
1808
|
-
return x;
|
|
1809
|
-
}, Oe();
|
|
1810
|
-
}
|
|
1811
|
-
const m0 = async (x) => {
|
|
1811
|
+
const y0 = async (a) => {
|
|
1812
1812
|
const t = E;
|
|
1813
|
-
if (!
|
|
1814
|
-
const { platform: e, stage: i } =
|
|
1813
|
+
if (!a) return;
|
|
1814
|
+
const { platform: e, stage: i } = B, x = Le[e][i][t(473)];
|
|
1815
1815
|
try {
|
|
1816
|
-
const r = await fetch(
|
|
1817
|
-
|
|
1818
|
-
const { logDate:
|
|
1819
|
-
return
|
|
1816
|
+
const r = await fetch(x, { method: t(496), headers: { "Content-Type": t(528) }, body: JSON[t(483)]({ access_key: a }) }), o = await r[t(504)]();
|
|
1817
|
+
B[t(506)] = o.result?.[t(506)] || !1, B[t(513)] = o.result || {};
|
|
1818
|
+
const { logDate: f, logDateUnix: h } = Ft();
|
|
1819
|
+
return C[t(502)][t(519)] = f, C[t(502)][t(511)] = h, B[t(513)]?.[t(462)] && Fe(C[t(502)]), o;
|
|
1820
1820
|
} catch (r) {
|
|
1821
|
-
return console[t(
|
|
1821
|
+
return console[t(493)]("MA config initialization failed:", r), null;
|
|
1822
1822
|
}
|
|
1823
|
-
},
|
|
1824
|
-
const t = E, { platform: e, stage: i } =
|
|
1825
|
-
r[t(
|
|
1823
|
+
}, v0 = async (a) => {
|
|
1824
|
+
const t = E, { platform: e, stage: i } = B, x = Lt(Le[e][i][t(507)]), r = { ...a };
|
|
1825
|
+
r[t(494)] = "vpe", Fe(r[t(502)]);
|
|
1826
1826
|
try {
|
|
1827
|
-
await fetch(
|
|
1827
|
+
await fetch(x, { method: t(496), headers: { "Content-Type": t(528) }, body: JSON[t(483)](r) });
|
|
1828
1828
|
} catch (o) {
|
|
1829
|
-
console
|
|
1829
|
+
console[t(493)](t(508), o);
|
|
1830
1830
|
}
|
|
1831
|
-
},
|
|
1832
|
-
const t = E, { platform: e, stage: i } =
|
|
1833
|
-
if (at(r,
|
|
1831
|
+
}, S0 = async (a) => {
|
|
1832
|
+
const t = E, { platform: e, stage: i } = B, x = Lt(Le[e][i].report), r = JSON.parse(JSON[t(483)](C));
|
|
1833
|
+
if (at(r, a), r[t(494)] = "MA", Fe(r[t(502)]), Gt(r[t(502)]), !!Ht(r[t(502)]))
|
|
1834
1834
|
try {
|
|
1835
|
-
r
|
|
1835
|
+
r.type != "timeupdate", await fetch(x, { method: t(496), headers: { "Content-Type": t(528) }, body: JSON[t(483)](r) });
|
|
1836
1836
|
} catch (o) {
|
|
1837
|
-
console[t(
|
|
1837
|
+
console[t(473)]("MA report failed:", o);
|
|
1838
1838
|
}
|
|
1839
1839
|
};
|
|
1840
|
-
async function
|
|
1840
|
+
async function I0(a, t, e, i, x) {
|
|
1841
1841
|
const r = E;
|
|
1842
|
-
|
|
1843
|
-
const { logDate: o, logDateUnix:
|
|
1844
|
-
|
|
1842
|
+
B.platform = a, B[r(517)] = t, at(C, e), i && (C[r(502)].vpePackageId = i), x && (C.extra[r(476)] = x), C[r(502)].nation ? C[r(525)][r(529)] = Ut[C[r(502)][r(464)]] || r(482) : C.browser[r(529)] = r(482);
|
|
1843
|
+
const { logDate: o, logDateUnix: f } = Ft();
|
|
1844
|
+
C[r(502)][r(519)] = o, C[r(502)][r(511)] = f, C[r(502)].created_at = f;
|
|
1845
1845
|
}
|
|
1846
|
-
async function
|
|
1847
|
-
const t = E, e = JSON[t(
|
|
1848
|
-
|
|
1846
|
+
async function k0(a) {
|
|
1847
|
+
const t = E, e = JSON[t(522)](JSON.stringify(C));
|
|
1848
|
+
a[t(502)] && Object[t(503)](e[t(502)], a[t(502)]), e[t(466)] = a[t(466)], await v0(e), console[t(473)](t(531));
|
|
1849
1849
|
}
|
|
1850
|
-
function
|
|
1851
|
-
const t = E, { platform: e, stage: i } =
|
|
1852
|
-
if (!
|
|
1853
|
-
const r = JSON[t(
|
|
1854
|
-
if (at(r,
|
|
1850
|
+
function E0(a) {
|
|
1851
|
+
const t = E, { platform: e, stage: i } = B, x = Le[e]?.[i]?.[t(507)];
|
|
1852
|
+
if (!x) return !1;
|
|
1853
|
+
const r = JSON[t(522)](JSON[t(483)](C));
|
|
1854
|
+
if (at(r, a), r[t(494)] = "MA", Fe(r[t(502)]), Gt(r[t(502)]), !Ht(r[t(502)])) return !1;
|
|
1855
1855
|
try {
|
|
1856
|
-
const o = new Blob([JSON[t(
|
|
1857
|
-
return navigator.sendBeacon(
|
|
1856
|
+
const o = new Blob([JSON[t(483)](r)], { type: t(528) });
|
|
1857
|
+
return navigator.sendBeacon(x, o);
|
|
1858
1858
|
} catch {
|
|
1859
1859
|
return !1;
|
|
1860
1860
|
}
|
|
1861
1861
|
}
|
|
1862
|
-
|
|
1863
|
-
(
|
|
1864
|
-
|
|
1862
|
+
function Oe() {
|
|
1863
|
+
const a = ["7fgsIGB", "866511SwxTYF", "#4299f5", "#ffffff", "dropshadow", "rgba(0, 0, 0, 0.4)", "#009dff", "903492pPWFkq", "watermarkConfig", "54939AgHShC", "1qbZWmu", "pay", "contain", "progressBar", "NAVER CLOUD PLATFORM", "6609850rRQCdS", "1291240SZEQkF", "16/9", "2889464JSUQUp", "controlBtn", "32ORlTfT", "captionStyle", "all", "2392890sJKZcQ"];
|
|
1864
|
+
return Oe = function() {
|
|
1865
|
+
return a;
|
|
1866
|
+
}, Oe();
|
|
1867
|
+
}
|
|
1868
|
+
function xt(a, t) {
|
|
1869
|
+
return a = a - 286, Oe()[a];
|
|
1870
|
+
}
|
|
1871
|
+
const It = xt;
|
|
1872
|
+
(function(a, t) {
|
|
1873
|
+
const e = xt, i = a();
|
|
1865
1874
|
for (; ; )
|
|
1866
1875
|
try {
|
|
1867
|
-
if (-parseInt(e(
|
|
1876
|
+
if (-parseInt(e(288)) / 1 * (parseInt(e(309)) / 2) + -parseInt(e(287)) / 3 * (-parseInt(e(298)) / 4) + -parseInt(e(294)) / 5 + parseInt(e(301)) / 6 * (parseInt(e(302)) / 7) + -parseInt(e(296)) / 8 + parseInt(e(303)) / 9 + parseInt(e(293)) / 10 === t) break;
|
|
1868
1877
|
i.push(i.shift());
|
|
1869
1878
|
} catch {
|
|
1870
1879
|
i.push(i.shift());
|
|
1871
1880
|
}
|
|
1872
|
-
})(
|
|
1873
|
-
const _0 = (
|
|
1874
|
-
const e =
|
|
1875
|
-
if (t !== e(
|
|
1876
|
-
const
|
|
1877
|
-
return
|
|
1878
|
-
};
|
|
1879
|
-
function
|
|
1880
|
-
const
|
|
1881
|
-
return Me = function() {
|
|
1882
|
-
return x;
|
|
1883
|
-
}, Me();
|
|
1884
|
-
}
|
|
1885
|
-
function nt(x, t) {
|
|
1886
|
-
return x = x - 188, Me()[x];
|
|
1887
|
-
}
|
|
1888
|
-
const C0 = { free: !0, startMutedInfoNotVisible: !1, lowLatencyMode: !1, progressBarColor: "#009dff", playRateSetting: [0.5, 0.75, 1, 1.5, 2], descriptionNotVisible: !0, seekingPreview: !1, controlActiveTime: 1500, ui: E0(189), token: "", setStartTime: null, controlBtn: { play: !0, fullscreen: !0, volume: !0, times: !0, setting: !1, pictureInPicture: !1, progressBar: !0 } }, g = Ht;
|
|
1889
|
-
(function(x, t) {
|
|
1890
|
-
const e = Ht, i = x();
|
|
1881
|
+
})(Oe, 231406);
|
|
1882
|
+
const _0 = (a = {}, t) => {
|
|
1883
|
+
const e = xt, i = { autostart: !0, muted: !1, aspectRatio: e(295), objectFit: e(290), controls: !0, keyboardShortcut: !0, startMutedInfoNotVisible: !1, allowsPictureInPicture: !1, staysActiveInBackground: !1, screenRecordingPrevention: !1, modalFullscreen: !1, seekingPreview: !0, lang: "ko", ui: e(300), controlBtn: { play: !0, fullscreen: !0, progressBar: !0, volume: !1, times: !0, pictureInPicture: !0, setting: !0, subtitle: !0 }, progressBarColor: e(304), controlActiveTime: 3e3, playRateSetting: [0.5, 0.75, 1, 1.5, 2], autoPause: !1, repeat: !1, setStartTime: void 0, playIndex: 0, lowLatencyMode: !0, touchGestures: !0, descriptionNotVisible: !1, devTestAppId: void 0, token: "", visibleWatermark: !1, iosFullscreenNativeMode: !0, watermarkText: e(292), watermarkConfig: { randPosition: !0, randPositionInterVal: 3e3, x: 10, y: 10, opacity: 0.5 }, captionStyle: { fontSize: 12, color: e(305), backgroundColor: e(307), edgeStyle: e(306) }, override: null };
|
|
1884
|
+
if (t !== e(289)) return { ...i, ...T0 };
|
|
1885
|
+
const x = { ...i, ...a };
|
|
1886
|
+
return a[e(297)] && (x[e(297)] = { ...i[e(297)], ...a[e(297)] }), a[e(286)] && (x[e(286)] = { ...i.watermarkConfig, ...a[e(286)] }), a[e(299)] && (x.captionStyle = { ...i[e(299)], ...a.captionStyle }), x[e(297)]?.progressBar === void 0 && (x[e(297)][e(291)] = !0), x;
|
|
1887
|
+
}, T0 = { free: !0, startMutedInfoNotVisible: !1, lowLatencyMode: !1, progressBarColor: It(308), playRateSetting: [0.5, 0.75, 1, 1.5, 2], descriptionNotVisible: !0, seekingPreview: !1, controlActiveTime: 1500, ui: It(300), token: "", setStartTime: null, controlBtn: { play: !0, fullscreen: !0, volume: !0, times: !0, setting: !1, pictureInPicture: !1, progressBar: !0 } }, b = Vt;
|
|
1888
|
+
(function(a, t) {
|
|
1889
|
+
const e = Vt, i = a();
|
|
1891
1890
|
for (; ; )
|
|
1892
1891
|
try {
|
|
1893
|
-
if (parseInt(e(
|
|
1892
|
+
if (parseInt(e(267)) / 1 * (parseInt(e(247)) / 2) + -parseInt(e(294)) / 3 * (-parseInt(e(253)) / 4) + parseInt(e(292)) / 5 + parseInt(e(308)) / 6 * (-parseInt(e(228)) / 7) + -parseInt(e(275)) / 8 + parseInt(e(318)) / 9 + parseInt(e(316)) / 10 * (parseInt(e(225)) / 11) === t) break;
|
|
1894
1893
|
i.push(i.shift());
|
|
1895
1894
|
} catch {
|
|
1896
1895
|
i.push(i.shift());
|
|
1897
1896
|
}
|
|
1898
|
-
})(De,
|
|
1899
|
-
|
|
1900
|
-
return x = x - 283, De()[x];
|
|
1901
|
-
}
|
|
1902
|
-
function De() {
|
|
1903
|
-
const x = ["Unknown Error", "nextTrack", "seeked", "quality", "firstPlay", "forEach", "13948344PVXuyz", "prevQuality", "fullscreenYn", "padStart", "PLAYING", "WAITING_END", "pause", "prevAction", "error", "handleTrackChange", "REBUFFERING", "message", "url", "prevTime", "3kWkUEX", "seeking", "PAUSE", "handleTimeUpdate", "prevUrl", "ERROR", "isSeeking", "percent", "SEEKED", "code", "entries", "buildSessionMetrics", "342000LYyGLf", "getTime", "getDate", "speedChangeCnt", "E0000", "duration", "beforeunload", "handleTimeUpdateFocus", "isFullscreen", "dispatchEvent", "playAttempt", "getSeconds", "extra", "playedTime", "state", "reportData", "pauseCnt", "resetStateForNewTrack", "FULLSCREEN_CHANGE", "handleError", "handleQualityChange", "Korea, Republic of", "WAITING", "waiting", "browser", "hidden", "addEventListener", "rebuffering", "loadingEnd", "PREV_TRACK", "ratechange", "quality_change", "startTime", "nation", "handleEnded", "123492uimnTW", "isEnded", "removeEventListener", "RATE_CHANGE", "handlePlay", "sendSessionBeacon", "336679saBnke", "ended", "PAUSED", "UUID", "VPE", "TID", "TIMEUPDATE", "handleWaiting", "round", "lastPlaybackSpeed", "getFullYear", "98454RhfJUY", "seekCnt", "visibilitychange", "currentTime", "timeupdate", "boundVisibilityChange", "handleCanplay", "toFixed", "bufferingStart", "ENDED", "sessionId", "initializeReportData", "isBuffering", "visibilityState", "playbackRate", "handleRateChange", "getMinutes", "contentDuration", "contentId", "boundBeforeUnload", "maSync", "handlePause", "NEXT_TRACK", "PLAYER_START", "handleSeeking", "STARTUP", "playing", "bind", "104826rgYzbf", "CANPLAY", "initTimeupdate", "firstPlaying", "SEEKING", "stageData", "startup", "type", "player_start", "getHours", "report", "country", "isPlaying", "object", "handleBeforeUnload", "QUALITY_CHANGE", "data", "beaconSent", "1234432kLZjSG", "handleFullscreenChange", "handlePlayerStart", "then", "video", "now", "handleVisibilityChange", "firstError", "isPlainObject", "112DOzafZ"];
|
|
1904
|
-
return De = function() {
|
|
1905
|
-
return x;
|
|
1906
|
-
}, De();
|
|
1907
|
-
}
|
|
1908
|
-
const kt = "0p", T0 = 59e3, A0 = 1, m = { PLAYER_START: g(385), STARTUP: g(383), PLAY: "play", PAUSE: g(417), PLAYING: g(375), PAUSED: g(417), SEEKING: g(286), SEEKED: g(407), WAITING: g(320), WAITING_END: "waitingEnd", CANPLAY: "canplay", ENDED: "ended", NEXT_TRACK: g(406), PREV_TRACK: "prevTrack", ERROR: g(419), QUALITY_CHANGE: g(328), REBUFFERING: g(324), TIMEUPDATE: g(353), TIMEUPDATE_FOCUS: "timeupdateFocus", RATE_CHANGE: g(327), FULLSCREEN_CHANGE: "fullscreenchange" };
|
|
1897
|
+
})(De, 529851);
|
|
1898
|
+
const kt = "0p", C0 = 59e3, A0 = 1, m = { PLAYER_START: b(205), STARTUP: b(185), PLAY: b(315), PAUSE: b(198), PLAYING: b(265), PAUSED: b(198), SEEKING: "seeking", SEEKED: b(223), WAITING: b(233), WAITING_END: b(276), CANPLAY: b(274), ENDED: "ended", NEXT_TRACK: b(293), PREV_TRACK: b(266), ERROR: b(194), QUALITY_CHANGE: b(279), REBUFFERING: b(250), TIMEUPDATE: b(321), TIMEUPDATE_FOCUS: b(281), RATE_CHANGE: b(239), FULLSCREEN_CHANGE: b(243) };
|
|
1909
1899
|
class R0 {
|
|
1910
|
-
|
|
1911
|
-
|
|
1912
|
-
[
|
|
1913
|
-
|
|
1914
|
-
[
|
|
1915
|
-
[
|
|
1900
|
+
[b(257)];
|
|
1901
|
+
[b(230)];
|
|
1902
|
+
[b(242)];
|
|
1903
|
+
beaconSent = !1;
|
|
1904
|
+
[b(207)];
|
|
1905
|
+
[b(277)];
|
|
1916
1906
|
constructor(t, e, i) {
|
|
1917
|
-
const
|
|
1918
|
-
this
|
|
1907
|
+
const x = b;
|
|
1908
|
+
this.stageData = { platform: t, stage: e, sync: !1, syncResult: {} }, this[x(257)] = { video: {}, browser: {}, device: {}, connection: {}, screen: {}, player_version: x(285), extra: { UUID: null, TID: null, sessionId: null, playerType: "VPE", playAttempt: !1 }, log_type: x(262), privacy: { cookie_enabled: !0 } }, this[x(242)] = { prevAction: null, isPlaying: !1, isSeeking: !1, initTimeupdate: !1, isBuffering: !1, firstError: !1, isEnded: !1, firstPlay: !0, firstPlaying: !0, startTime: 0, prevTime: 0, startUpDuration: 0, prevUrl: "", prevQuality: kt, pauseCnt: 0, seekCnt: 0, speedChangeCnt: 0, lastPlaybackSpeed: 1, fullscreenYn: !1, contentId: null, contentDuration: 0 }, this[x(236)](i), this[x(230)], this[x(207)] = this[x(311)][x(216)](this), this[x(277)] = this[x(248)][x(216)](this), window.addEventListener("beforeunload", this[x(207)]), document.addEventListener(x(200), this[x(277)]);
|
|
1919
1909
|
}
|
|
1920
1910
|
initializeReportData(t) {
|
|
1921
|
-
const e =
|
|
1922
|
-
this
|
|
1911
|
+
const e = b;
|
|
1912
|
+
this.reportData = { ...this.reportData, ...t }, this[e(257)].extra.nation ? this[e(257)][e(214)][e(217)] = Ut[this[e(257)][e(325)][e(208)]] || e(273) : this.reportData[e(214)][e(217)] = e(273);
|
|
1923
1913
|
}
|
|
1924
|
-
|
|
1925
|
-
const t =
|
|
1926
|
-
return { logDate:
|
|
1914
|
+
[b(261)]() {
|
|
1915
|
+
const t = b, e = /* @__PURE__ */ new Date(), i = (o) => String(o)[t(296)](2, "0"), x = e.getFullYear() + "-" + i(e[t(300)]() + 1) + "-" + i(e[t(249)]()) + " " + i(e[t(201)]()) + ":" + i(e[t(307)]()) + ":" + i(e[t(319)]()), r = Math[t(298)](e[t(261)]() / 1e3);
|
|
1916
|
+
return { logDate: x, logDateUnix: r };
|
|
1927
1917
|
}
|
|
1928
|
-
[
|
|
1929
|
-
return typeof t
|
|
1918
|
+
[b(219)](t) {
|
|
1919
|
+
return typeof t == "object" && t !== null && !Array[b(183)](t);
|
|
1930
1920
|
}
|
|
1931
|
-
async [
|
|
1932
|
-
const i =
|
|
1933
|
-
if (this[i(
|
|
1934
|
-
const { logDate:
|
|
1935
|
-
this[i(
|
|
1921
|
+
async [b(220)](t, e) {
|
|
1922
|
+
const i = b;
|
|
1923
|
+
if (this[i(242)][i(259)]) return;
|
|
1924
|
+
const { logDate: x, logDateUnix: r } = this[i(261)](), o = Date[i(215)](), f = this[i(242)][i(213)] > 0 ? o - this.state[i(213)] : 0, h = f, S = e && typeof e === i(270) && e.data ? e.data : {}, I = { ...this[i(257)], video: this[i(257)][i(258)], extra: { ...this.reportData[i(325)], actionType: t, actionDuration: h ? h[i(304)](2) : 0, logDate: x, logDateUnix: r, ...S } };
|
|
1925
|
+
this.state[i(213)] = o, await S0(I);
|
|
1936
1926
|
}
|
|
1937
1927
|
async maInit(t) {
|
|
1938
|
-
const e =
|
|
1939
|
-
!this[e(
|
|
1928
|
+
const e = b;
|
|
1929
|
+
!this[e(257)][e(325)][e(232)] && (this[e(257)][e(325)][e(232)] = St(), this[e(257)].extra[e(323)] = ve(), this[e(257)].extra[e(264)] = ve()), t[e(325)].sessionId = this[e(257)].extra.sessionId, await k0(t);
|
|
1940
1930
|
}
|
|
1941
|
-
async [
|
|
1942
|
-
const e =
|
|
1943
|
-
!t || typeof t
|
|
1931
|
+
async [b(291)](t) {
|
|
1932
|
+
const e = b;
|
|
1933
|
+
!t || typeof t !== e(270) || Object[e(241)](t)[e(312)](([i, x]) => {
|
|
1944
1934
|
const r = e;
|
|
1945
|
-
this[r(
|
|
1946
|
-
const
|
|
1947
|
-
|
|
1948
|
-
}) :
|
|
1935
|
+
this[r(219)](x) ? Object.entries(x).forEach(([o, f]) => {
|
|
1936
|
+
const h = r;
|
|
1937
|
+
f != null && (this[h(257)][i][o] = f);
|
|
1938
|
+
}) : x != null && (this.reportData[i] = x);
|
|
1949
1939
|
});
|
|
1950
1940
|
}
|
|
1951
|
-
|
|
1952
|
-
const e =
|
|
1941
|
+
dispatchEvent(t) {
|
|
1942
|
+
const e = b, { type: i, data: x } = t, r = { url: x?.[e(256)] || this[e(242)][e(286)], type: x?.type, quality: x?.quality || this[e(242)][e(210)], data: x };
|
|
1953
1943
|
switch (i) {
|
|
1954
|
-
case m[e(
|
|
1955
|
-
this[e(
|
|
1944
|
+
case m[e(212)]:
|
|
1945
|
+
this[e(186)](r, x);
|
|
1956
1946
|
break;
|
|
1957
|
-
case m[e(
|
|
1958
|
-
this.handleStartup(r,
|
|
1947
|
+
case m[e(209)]:
|
|
1948
|
+
this.handleStartup(r, x);
|
|
1959
1949
|
break;
|
|
1960
1950
|
case m.PLAY:
|
|
1961
|
-
this
|
|
1951
|
+
this.handlePlay(r, x);
|
|
1962
1952
|
break;
|
|
1963
|
-
case m[e(
|
|
1964
|
-
this[e(
|
|
1953
|
+
case m[e(263)]:
|
|
1954
|
+
this[e(295)](r, x);
|
|
1965
1955
|
break;
|
|
1966
|
-
case m[e(
|
|
1967
|
-
this[e(
|
|
1956
|
+
case m[e(320)]:
|
|
1957
|
+
this[e(284)](r, x);
|
|
1968
1958
|
break;
|
|
1969
|
-
case m
|
|
1970
|
-
this[e(
|
|
1959
|
+
case m[e(251)]:
|
|
1960
|
+
this[e(188)](r, x);
|
|
1971
1961
|
break;
|
|
1972
|
-
case m[e(
|
|
1973
|
-
this[e(
|
|
1962
|
+
case m[e(187)]:
|
|
1963
|
+
this[e(314)](r, x);
|
|
1974
1964
|
break;
|
|
1975
|
-
case m[e(
|
|
1976
|
-
this.handleSeeked(r,
|
|
1965
|
+
case m[e(254)]:
|
|
1966
|
+
this.handleSeeked(r, x);
|
|
1977
1967
|
break;
|
|
1978
|
-
case m[e(
|
|
1979
|
-
case
|
|
1980
|
-
this[e(
|
|
1968
|
+
case m[e(193)]:
|
|
1969
|
+
case "bufferingStart":
|
|
1970
|
+
this[e(211)](r, x);
|
|
1981
1971
|
break;
|
|
1982
|
-
case m[e(
|
|
1983
|
-
case
|
|
1984
|
-
case
|
|
1985
|
-
this[e(
|
|
1972
|
+
case m[e(190)]:
|
|
1973
|
+
case e(290):
|
|
1974
|
+
case "loadingEnd":
|
|
1975
|
+
this[e(303)](r, x);
|
|
1986
1976
|
break;
|
|
1987
|
-
case m[e(
|
|
1988
|
-
this[e(
|
|
1977
|
+
case m[e(255)]:
|
|
1978
|
+
this[e(303)](r, x);
|
|
1989
1979
|
break;
|
|
1990
|
-
case m
|
|
1991
|
-
this
|
|
1980
|
+
case m[e(289)]:
|
|
1981
|
+
this[e(317)](r, x);
|
|
1992
1982
|
break;
|
|
1993
1983
|
case "nextTrack":
|
|
1994
|
-
case
|
|
1995
|
-
this
|
|
1984
|
+
case e(266):
|
|
1985
|
+
this[e(229)](i, r, x);
|
|
1996
1986
|
break;
|
|
1997
|
-
case m[e(
|
|
1998
|
-
this[e(
|
|
1987
|
+
case m[e(309)]:
|
|
1988
|
+
this[e(260)](r, x);
|
|
1999
1989
|
break;
|
|
2000
|
-
case m[e(
|
|
2001
|
-
this[e(
|
|
1990
|
+
case m[e(184)]:
|
|
1991
|
+
this[e(196)](r, x);
|
|
2002
1992
|
break;
|
|
2003
|
-
case m[e(
|
|
2004
|
-
this[e(
|
|
1993
|
+
case m[e(288)]:
|
|
1994
|
+
this[e(322)](r, x);
|
|
2005
1995
|
break;
|
|
2006
|
-
case m[e(
|
|
2007
|
-
this.handleFullscreenChange(r,
|
|
1996
|
+
case m[e(224)]:
|
|
1997
|
+
this.handleFullscreenChange(r, x);
|
|
2008
1998
|
break;
|
|
2009
1999
|
}
|
|
2010
2000
|
}
|
|
2011
|
-
|
|
2012
|
-
const i =
|
|
2013
|
-
!this[i(
|
|
2001
|
+
handlePlayerStart(t, e) {
|
|
2002
|
+
const i = b;
|
|
2003
|
+
!this[i(257)][i(325)][i(232)] && (this[i(257)][i(325)][i(232)] = St(), this.reportData.extra[i(323)] = ve(), this[i(257)][i(325)][i(264)] = ve()), this.state[i(302)] = Date.now(), this[i(242)].prevTime = this[i(242)][i(302)], this.report(m.PLAYER_START, { ...t, data: e });
|
|
2014
2004
|
}
|
|
2015
|
-
|
|
2016
|
-
const i =
|
|
2017
|
-
this
|
|
2005
|
+
[b(244)](t, e) {
|
|
2006
|
+
const i = b;
|
|
2007
|
+
this[i(242)][i(226)] && (e?.[i(305)] && (this[i(242)][i(305)] = e[i(305)]), e?.duration && (this[i(242)][i(280)] = Math[i(231)](e[i(268)] * 1e3)), this[i(242)][i(278)] = !0, this[i(220)](m.STARTUP, { ...t, data: e }), this[i(242)][i(226)] = !1);
|
|
2018
2008
|
}
|
|
2019
|
-
[
|
|
2020
|
-
const i =
|
|
2021
|
-
this
|
|
2009
|
+
[b(283)](t, e) {
|
|
2010
|
+
const i = b;
|
|
2011
|
+
this[i(242)].isPlaying || (this.reportData[i(325)][i(202)] = e?.[i(202)], this[i(257)][i(325)][i(197)] = e?.[i(197)], this.state[i(278)] = !0, this[i(257)][i(325)][i(238)] = !0, this[i(242)].firstPlay && (this[i(242)].firstPlay = !1), this[i(242)][i(192)] === m[i(203)] && this[i(220)](m.PLAYING, { ...t, data: e }), this.state[i(192)] = m[i(245)]);
|
|
2022
2012
|
}
|
|
2023
|
-
|
|
2024
|
-
const i =
|
|
2025
|
-
this
|
|
2013
|
+
[b(295)](t, e) {
|
|
2014
|
+
const i = b;
|
|
2015
|
+
this.state.isSeeking || this.state[i(306)] || !this[i(242)][i(278)] || (this.state.pauseCnt++, this[i(242)][i(278)] = !1, this[i(220)](m[i(203)], { ...t, data: { ...e, pauseCnt: this[i(242)][i(282)] } }), this.state[i(192)] = m[i(203)]);
|
|
2026
2016
|
}
|
|
2027
|
-
[
|
|
2028
|
-
const i =
|
|
2029
|
-
this[i(
|
|
2017
|
+
[b(284)](t, e) {
|
|
2018
|
+
const i = b;
|
|
2019
|
+
this[i(242)].isPlaying = !0, this[i(257)].extra[i(238)] = !0, !(this[i(257)][i(325)][i(222)] < A0) && (this[i(242)][i(278)] && Date[i(215)]() - this[i(242)][i(213)] > C0 && this[i(220)](m[i(245)], { ...t, data: e }), this[i(242)][i(286)] = t.url || "", this[i(242)][i(210)] = t[i(252)] || kt);
|
|
2030
2020
|
}
|
|
2031
|
-
|
|
2032
|
-
const i =
|
|
2033
|
-
this[i(
|
|
2021
|
+
[b(188)](t, e) {
|
|
2022
|
+
const i = b;
|
|
2023
|
+
this[i(257)][i(325)][i(222)] > 0 && (this[i(220)](m[i(245)], { ...t, data: e }), this.state.initTimeupdate = !0);
|
|
2034
2024
|
}
|
|
2035
|
-
[
|
|
2036
|
-
const i =
|
|
2037
|
-
this[i(
|
|
2025
|
+
[b(314)](t, e) {
|
|
2026
|
+
const i = b;
|
|
2027
|
+
this.state[i(324)] || (this[i(242)].seekCnt++, this.state.isSeeking = !0, this[i(242)].isPlaying ? this[i(220)](m[i(245)], { ...t, data: e }) : this[i(242)][i(192)] === m[i(203)] && this.report(m[i(203)], { ...t, data: e }), this[i(242)].prevAction = m.SEEKING);
|
|
2038
2028
|
}
|
|
2039
2029
|
handleSeeked(t, e) {
|
|
2040
|
-
const i =
|
|
2041
|
-
this[i(
|
|
2030
|
+
const i = b;
|
|
2031
|
+
this[i(242)][i(324)] && (this[i(242)][i(324)] = !1, this[i(220)](m[i(187)], { ...t, data: e }), this.state[i(192)] = this[i(242)][i(278)] ? m[i(245)] : m[i(203)]);
|
|
2042
2032
|
}
|
|
2043
|
-
[
|
|
2044
|
-
const i =
|
|
2045
|
-
this[i(
|
|
2033
|
+
[b(211)](t, e) {
|
|
2034
|
+
const i = b;
|
|
2035
|
+
this[i(242)][i(324)] || this.state[i(306)] || (this[i(242)][i(306)] = !0, this[i(242)][i(278)] && this[i(220)](m[i(245)], { ...t, data: e }), this[i(242)][i(192)] = m[i(195)]);
|
|
2046
2036
|
}
|
|
2047
|
-
|
|
2048
|
-
const i =
|
|
2049
|
-
this[i(
|
|
2037
|
+
[b(303)](t, e) {
|
|
2038
|
+
const i = b;
|
|
2039
|
+
this.state[i(306)] && (this[i(242)][i(306)] = !1, this.report(m.REBUFFERING, { ...t, data: e }), this[i(242)].prevAction = this[i(242)][i(278)] ? m.PLAYING : m.PAUSED);
|
|
2050
2040
|
}
|
|
2051
|
-
|
|
2052
|
-
const
|
|
2053
|
-
this[
|
|
2041
|
+
[b(237)]() {
|
|
2042
|
+
const t = b;
|
|
2043
|
+
if (this[t(221)] || this.state.isEnded || this.state[t(259)] || !this.reportData[t(325)][t(264)] || !this[t(257)][t(325)][t(323)]) return;
|
|
2044
|
+
this[t(221)] = !0;
|
|
2045
|
+
const { logDate: e, logDateUnix: i } = this.getTime(), x = Date[t(215)](), r = this.state[t(213)] > 0 ? x - this[t(242)][t(213)] : 0, o = (this[t(257)][t(325)].currentTime || 0) * 1e3, f = this.state.contentDuration, h = f > 0 ? Math[t(231)](o / f * 1e4) / 100 : 0, S = this[t(257)][t(325)][t(202)] || 0, I = { ...this.reportData, video: this[t(257)].video, extra: { ...this.reportData[t(325)], actionType: t(227), actionDuration: r ? r[t(304)](2) : 0, logDate: e, logDateUnix: i, contentId: this[t(242)][t(305)], contentDuration: f, watchPercent: h, isCompleted: h >= 95, isBounce: S < 1e4, pauseCnt: this[t(242)][t(282)], seekCnt: this.state.seekCnt, speedChangeCnt: this[t(242)][t(234)], lastPlaybackSpeed: this[t(242)][t(310)], fullscreenYn: this.state.fullscreenYn, dropOffPosition: Math[t(231)](o) } };
|
|
2046
|
+
E0(I);
|
|
2054
2047
|
}
|
|
2055
|
-
[
|
|
2056
|
-
|
|
2057
|
-
if (this[t(394)] || this.state[t(333)] || this[t(311)][t(402)] || !this[t(312)][t(309)][t(341)] || !this.reportData[t(309)][t(343)]) return;
|
|
2058
|
-
this[t(394)] = !0;
|
|
2059
|
-
const { logDate: e, logDateUnix: i } = this[t(298)](), a = Date[t(400)](), r = this[t(311)][t(284)] > 0 ? a - this.state[t(284)] : 0, o = (this[t(312)].extra[t(352)] || 0) * 1e3, h = this[t(311)][t(366)], f = h > 0 ? Math[t(346)](o / h * 1e4) / 100 : 0, S = this[t(312)][t(309)][t(310)] || 0, I = { ...this[t(312)], video: this[t(312)].video, extra: { ...this[t(312)].extra, actionType: t(339), actionDuration: r ? r[t(356)](2) : 0, logDate: e, logDateUnix: i, contentId: this[t(311)][t(367)], contentDuration: h, watchPercent: f, isCompleted: f >= 95, isBounce: S < 1e4, pauseCnt: this[t(311)][t(313)], seekCnt: this.state[t(350)], speedChangeCnt: this[t(311)].speedChangeCnt, lastPlaybackSpeed: this.state[t(347)], fullscreenYn: this[t(311)].fullscreenYn, dropOffPosition: Math[t(346)](o) } };
|
|
2060
|
-
k0(I);
|
|
2048
|
+
[b(311)]() {
|
|
2049
|
+
this[b(237)]();
|
|
2061
2050
|
}
|
|
2062
|
-
[
|
|
2063
|
-
|
|
2051
|
+
[b(248)]() {
|
|
2052
|
+
const t = b;
|
|
2053
|
+
document.visibilityState === t(204) && this[t(237)]();
|
|
2064
2054
|
}
|
|
2065
|
-
[
|
|
2066
|
-
const t =
|
|
2067
|
-
|
|
2055
|
+
[b(191)]() {
|
|
2056
|
+
const t = b;
|
|
2057
|
+
window[t(199)]("beforeunload", this[t(207)]), document[t(199)](t(200), this[t(277)]);
|
|
2068
2058
|
}
|
|
2069
|
-
|
|
2070
|
-
const
|
|
2071
|
-
|
|
2059
|
+
[b(235)](t, e) {
|
|
2060
|
+
const i = b, x = (e?.[i(222)] || 0) * 1e3, r = this[i(242)][i(280)], o = r > 0 ? Math[i(231)](x / r * 1e4) / 100 : 0, f = this[i(257)][i(325)][i(202)] || 0;
|
|
2061
|
+
return { ...t, data: { ...e, contentId: this.state[i(305)], contentDuration: r, watchPercent: o, isCompleted: o >= 95, isBounce: f < 1e4, pauseCnt: this[i(242)][i(282)], seekCnt: this[i(242)].seekCnt, speedChangeCnt: this[i(242)][i(234)], lastPlaybackSpeed: this[i(242)][i(310)], fullscreenYn: this[i(242)][i(313)], dropOffPosition: Math[i(231)](x) } };
|
|
2072
2062
|
}
|
|
2073
|
-
[
|
|
2074
|
-
const i =
|
|
2075
|
-
|
|
2063
|
+
[b(317)](t, e) {
|
|
2064
|
+
const i = b;
|
|
2065
|
+
this[i(242)].isEnded || (this[i(242)][i(301)] = !0, this[i(242)][i(278)] = !1, this[i(221)] = !0, this.state[i(192)] !== m[i(203)] && this[i(220)](this.state.prevAction || m[i(245)], { ...t, data: e }), this[i(220)](m[i(289)], this.buildSessionMetrics(t, e)));
|
|
2076
2066
|
}
|
|
2077
|
-
[
|
|
2078
|
-
const
|
|
2079
|
-
this
|
|
2080
|
-
|
|
2081
|
-
|
|
2082
|
-
|
|
2083
|
-
this[a(387)](this[a(311)][a(418)] || m[a(415)], this[a(296)](e, i))[a(398)](() => {
|
|
2084
|
-
const o = a;
|
|
2085
|
-
this[o(387)](r, { ...e, data: i })[o(398)](() => {
|
|
2086
|
-
this[o(314)]();
|
|
2067
|
+
[b(229)](t, e, i) {
|
|
2068
|
+
const x = b, r = t === x(293) ? m[x(218)] : m.PREV_TRACK;
|
|
2069
|
+
this.report(this.state[x(192)] || m.PLAYING, this[x(235)](e, i))[x(287)](() => {
|
|
2070
|
+
const o = x;
|
|
2071
|
+
this.report(r, { ...e, data: i })[o(287)](() => {
|
|
2072
|
+
this.resetStateForNewTrack();
|
|
2087
2073
|
});
|
|
2088
2074
|
});
|
|
2089
2075
|
}
|
|
2090
|
-
[
|
|
2091
|
-
const i =
|
|
2092
|
-
this
|
|
2093
|
-
const
|
|
2094
|
-
this.report(m
|
|
2076
|
+
[b(260)](t, e) {
|
|
2077
|
+
const i = b;
|
|
2078
|
+
this[i(242)].prevAction && !this.state.firstPlaying && this[i(220)](this[i(242)][i(192)], this[i(235)](t, e));
|
|
2079
|
+
const x = { errorCode: e?.code || i(206), errorMessage: e?.[i(271)] || i(272) };
|
|
2080
|
+
this.report(m[i(309)], { ...t, data: { ...e, ...x } }), this[i(242)][i(259)] = !0;
|
|
2095
2081
|
}
|
|
2096
|
-
[
|
|
2097
|
-
const i =
|
|
2098
|
-
this
|
|
2082
|
+
[b(196)](t, e) {
|
|
2083
|
+
const i = b;
|
|
2084
|
+
this[i(242)][i(192)] && !this[i(242)][i(324)] && !this[i(242)][i(306)] && !this.state[i(226)] && (this[i(242)].isSeeking = !0, this.report(this[i(242)].prevAction, { ...t, data: e }), this[i(242)][i(192)] = m.SEEKING);
|
|
2099
2085
|
}
|
|
2100
|
-
[
|
|
2101
|
-
const i =
|
|
2102
|
-
|
|
2086
|
+
[b(322)](t, e) {
|
|
2087
|
+
const i = b, x = e?.[i(299)] || e?.[i(325)]?.playbackRate || 1;
|
|
2088
|
+
x !== this.state[i(310)] && (this[i(242)][i(234)]++, this.state[i(310)] = x, this[i(220)](m[i(288)], { ...t, data: { ...e, speedChangeCnt: this[i(242)][i(234)], lastPlaybackSpeed: x } }));
|
|
2103
2089
|
}
|
|
2104
|
-
[
|
|
2105
|
-
const i =
|
|
2106
|
-
(e?.isFullscreen || e?.
|
|
2090
|
+
[b(189)](t, e) {
|
|
2091
|
+
const i = b;
|
|
2092
|
+
(e?.isFullscreen || e?.extra?.[i(297)]) && (this.state[i(313)] = !0), this[i(220)](m[i(224)], { ...t, data: { ...e, fullscreenYn: this[i(242)][i(313)] } });
|
|
2107
2093
|
}
|
|
2108
|
-
[
|
|
2109
|
-
const t =
|
|
2110
|
-
this[t(
|
|
2094
|
+
[b(269)]() {
|
|
2095
|
+
const t = b;
|
|
2096
|
+
this[t(242)][t(192)] = null, this[t(242)][t(278)] = !1, this[t(242)].prevTime = 0, this[t(242)].firstPlaying = !0, this[t(242)][t(246)] = !1, this[t(242)].pauseCnt = 0, this.state[t(240)] = 0, this.state.speedChangeCnt = 0, this[t(242)][t(310)] = 1, this[t(242)][t(313)] = !1, this[t(242)][t(305)] = null, this.state[t(280)] = 0;
|
|
2111
2097
|
}
|
|
2112
2098
|
}
|
|
2113
|
-
|
|
2114
|
-
|
|
2115
|
-
|
|
2099
|
+
function Vt(a, t) {
|
|
2100
|
+
return a = a - 183, De()[a];
|
|
2101
|
+
}
|
|
2102
|
+
function De() {
|
|
2103
|
+
const a = ["209iDAyPg", "firstPlaying", "ended", "2383318LNmOnh", "handleTrackChange", "stageData", "round", "sessionId", "waiting", "speedChangeCnt", "buildSessionMetrics", "initializeReportData", "sendSessionBeacon", "playAttempt", "ratechange", "seekCnt", "entries", "state", "fullscreenchange", "handleStartup", "PLAYING", "initTimeupdate", "2696eJubUy", "handleVisibilityChange", "getDate", "rebuffering", "TIMEUPDATE_FOCUS", "quality", "1308KLhdIT", "SEEKED", "CANPLAY", "url", "reportData", "video", "firstError", "handleError", "getTime", "vpe", "PAUSE", "UUID", "playing", "prevTrack", "61wpuXme", "duration", "resetStateForNewTrack", "object", "message", "Unknown Error", "Korea, Republic of", "canplay", "4249768tLeAhX", "waitingEnd", "boundVisibilityChange", "isPlaying", "quality_change", "contentDuration", "timeupdateFocus", "pauseCnt", "handlePlay", "handleTimeUpdate", "latest", "prevUrl", "then", "RATE_CHANGE", "ENDED", "bufferingEnd", "maSync", "1662605dGtBrP", "nextTrack", "2256DkgFMY", "handlePause", "padStart", "isFullscreen", "floor", "playbackRate", "getMonth", "isEnded", "startTime", "handleCanplay", "toFixed", "contentId", "isBuffering", "getMinutes", "18KcJNDH", "ERROR", "lastPlaybackSpeed", "handleBeforeUnload", "forEach", "fullscreenYn", "handleSeeking", "play", "718970bdSSzA", "handleEnded", "502182JfEzII", "getSeconds", "TIMEUPDATE", "timeupdate", "handleRateChange", "TID", "isSeeking", "extra", "isArray", "QUALITY_CHANGE", "startup", "handlePlayerStart", "SEEKING", "handleTimeUpdateFocus", "handleFullscreenChange", "WAITING_END", "destroy", "prevAction", "WAITING", "error", "REBUFFERING", "handleQualityChange", "percent", "pause", "removeEventListener", "visibilitychange", "getHours", "playedTime", "PAUSED", "hidden", "player_start", "E0000", "boundBeforeUnload", "nation", "STARTUP", "prevQuality", "handleWaiting", "PLAYER_START", "prevTime", "browser", "now", "bind", "country", "NEXT_TRACK", "isPlainObject", "report", "beaconSent", "currentTime", "seeked", "FULLSCREEN_CHANGE"];
|
|
2104
|
+
return De = function() {
|
|
2105
|
+
return a;
|
|
2106
|
+
}, De();
|
|
2107
|
+
}
|
|
2108
|
+
const y = Yt;
|
|
2109
|
+
function Yt(a, t) {
|
|
2110
|
+
return a = a - 443, Pe()[a];
|
|
2111
|
+
}
|
|
2112
|
+
(function(a, t) {
|
|
2113
|
+
const e = Yt, i = a();
|
|
2116
2114
|
for (; ; )
|
|
2117
2115
|
try {
|
|
2118
|
-
if (-parseInt(e(
|
|
2116
|
+
if (-parseInt(e(562)) / 1 + parseInt(e(535)) / 2 * (-parseInt(e(521)) / 3) + parseInt(e(512)) / 4 * (-parseInt(e(595)) / 5) + -parseInt(e(611)) / 6 * (-parseInt(e(464)) / 7) + -parseInt(e(472)) / 8 + parseInt(e(467)) / 9 + parseInt(e(583)) / 10 === t) break;
|
|
2119
2117
|
i.push(i.shift());
|
|
2120
2118
|
} catch {
|
|
2121
2119
|
i.push(i.shift());
|
|
2122
2120
|
}
|
|
2123
|
-
})(Pe,
|
|
2121
|
+
})(Pe, 551574);
|
|
2124
2122
|
function Pe() {
|
|
2125
|
-
const
|
|
2123
|
+
const a = ["aHR0cHM6Ly9sb2cuYmV0YS12cGUubmF2ZXJuY3AuY29tL3N0YXRz", "length", "Naver webview", "join", "toString", "appId", "origin", "5148OGOBVn", "statusText", "downlink", "reduce", "hlsPaser", "startup", "href", "version", "playbackRate", "48qxlhbe", "errorInfo", "stage", "controlBtn", "ratechange", "hasFirstPlayReported", "playerName", "playerStateReport", "error", "HLS 파싱 실패:", "player_version", "url", "fullscreenchange", "maUse", "13796axGKmO", "Content-Type", "watermarkConfig", "aHR0cHM6Ly9wYXBpLmJldGEtdnBlLm5hdmVybmNwLmNvbS9wbGF5ZXIvY29uZmln", "whale", "isDev", "Edg", "translator", ".m3u8", "UAParser", "Error:", "indexOf", "incomingType", "data", "Auto", "aHR0cHM6Ly9wYXBpLnZwZS5nb3YtbnRydXNzLmNvbS9wbGF5ZXIvY29uZmln", "LIVE", "Other", "access_key", "host", "title", "kbps", "dash", "getErrorState", "includes", "errorCode", "device", "232320Yyzace", "E0003", "pricing", "mobile", "map", "report", "VPE Player: accessKey 또는 appId가 없어 키 인증을 건너뜁니다.", "naver", "ncplayer : ", "match", "warn", "auto", "stringify", "playerStartTimeMs", "application/json", "Safari", "pay", "player_name", "currentTime", "maInit", "some", "15327290XxXebb", "screen", "mozConnection", "#EXT-X-STREAM-INF", "meta", "VOD", "round", "mpd", "createPlayerInfo", "startTimeAt", "status", "videoHeight", "3135ltsUuA", "connection", "config", "getResult", "cid", "playerInfo", "result", "aHR0cHM6Ly9sb2cudnBlLmdvdi1udHJ1c3MuY29tL3N0YXRz", "location", "browser", "effectiveType", "aHR0cHM6Ly9sb2cudnBlLm5hdmVybmNwLmNvbS9zdGF0cw==", "playlist", "ready", "Unknown", "vendor", "95610eePjaz", "maManager", "saveData", "now", "mp4", "object", "startsWith", "accessKey", "height", "Base64 decoding failed:", "updateTranslator", "performKeyCheck", "userAgent", "getElapsedMilliseconds", "getVideoProtocol", "extra", "rtt", "isPaidTier", "code", "Kakao webview", "webkitConnection", "contentId", "protocol", "E0002", "252RMxsGf", "toLowerCase", "options", "3579633TjiFQS", "Firefox", "Whale", "lang", "setErrorRun", "6423320pZaKqY", "width", "aHR0cHM6Ly9sb2cuYmV0YS12cGUuZ292LW50cnVzcy5jb20vc3RhdHM=", "split", "language", "player_start", "floor", "VPE SDK Initialization failed:", "port", "navigator", "kakao", "getTime", "userAgentData", "model", "test", "getBrowserInfo", "quality", "deviceMemory", "VPE", "name", "videoWidth", "vpe", "domain", "type", "video", "platform", "live", "hls", "errorState", "serverConfig", "getValidatedOptions", "volumechange", "Edge"];
|
|
2126
2124
|
return Pe = function() {
|
|
2127
|
-
return
|
|
2125
|
+
return a;
|
|
2128
2126
|
}, Pe();
|
|
2129
2127
|
}
|
|
2130
|
-
|
|
2131
|
-
return x = x - 240, Pe()[x];
|
|
2132
|
-
}
|
|
2133
|
-
const O0 = { gov: { prod: { config: "aHR0cHM6Ly9wYXBpLnZwZS5nb3YtbnRydXNzLmNvbS9wbGF5ZXIvY29uZmln", report: y(316) }, beta: { config: y(396), report: y(247) } }, pub: { prod: { config: y(343), report: y(344) }, beta: { config: y(310), report: "aHR0cHM6Ly9sb2cuYmV0YS12cGUubmF2ZXJuY3AuY29tL3N0YXRz" } } };
|
|
2128
|
+
const M0 = { gov: { prod: { config: y(550), report: y(602) }, beta: { config: "aHR0cHM6Ly9wYXBpLmJldGEtdnBlLmdvdi1udHJ1c3MuY29tL3BsYXllci9jb25maWc=", report: y(474) } }, pub: { prod: { config: "aHR0cHM6Ly9wYXBpLnZwZS5uYXZlcm5jcC5jb20vcGxheWVyL2NvbmZpZw==", report: y(606) }, beta: { config: y(538), report: y(505) } } };
|
|
2134
2129
|
let Et = [];
|
|
2135
|
-
const
|
|
2130
|
+
const O0 = (a) => {
|
|
2136
2131
|
const t = y;
|
|
2137
2132
|
try {
|
|
2138
|
-
return atob(
|
|
2133
|
+
return atob(a);
|
|
2139
2134
|
} catch (e) {
|
|
2140
|
-
return console
|
|
2135
|
+
return console[t(529)](t(449), e), "";
|
|
2141
2136
|
}
|
|
2142
2137
|
};
|
|
2143
2138
|
class P0 {
|
|
2144
|
-
|
|
2145
|
-
|
|
2146
|
-
[y(
|
|
2147
|
-
[y(
|
|
2148
|
-
[y(
|
|
2149
|
-
|
|
2150
|
-
[y(
|
|
2151
|
-
[y(
|
|
2152
|
-
[y(
|
|
2153
|
-
[y(
|
|
2154
|
-
[y(
|
|
2155
|
-
[y(
|
|
2156
|
-
[y(
|
|
2157
|
-
[y(
|
|
2158
|
-
constructor({ accessKey: t, appId: e, platform: i, stage:
|
|
2159
|
-
const
|
|
2160
|
-
this
|
|
2139
|
+
serverConfig = {};
|
|
2140
|
+
[y(600)] = null;
|
|
2141
|
+
[y(447)];
|
|
2142
|
+
[y(510)];
|
|
2143
|
+
[y(497)];
|
|
2144
|
+
[y(523)];
|
|
2145
|
+
[y(540)];
|
|
2146
|
+
[y(542)] = Je();
|
|
2147
|
+
[y(500)];
|
|
2148
|
+
[y(612)] = null;
|
|
2149
|
+
[y(592)] = null;
|
|
2150
|
+
[y(547)] = null;
|
|
2151
|
+
[y(526)] = !1;
|
|
2152
|
+
[y(575)] = 0;
|
|
2153
|
+
constructor({ accessKey: t, appId: e, platform: i, stage: x, isDev: r = !1, language: o }) {
|
|
2154
|
+
const f = y;
|
|
2155
|
+
this.accessKey = t, this[f(510)] = e || location[f(511)], this.platform = i, this[f(523)] = x, this[f(540)] = r, this[f(450)](o), this.errorState = { errorCode: null, errorMessage: null };
|
|
2161
2156
|
}
|
|
2162
|
-
async
|
|
2163
|
-
const t = y, e = ["accessKey", t(
|
|
2164
|
-
if ([this[e[0]], this[e[1]]]
|
|
2157
|
+
async initialize() {
|
|
2158
|
+
const t = y, e = ["accessKey", "appId", t(463), "E0001", t(563)], i = t(568);
|
|
2159
|
+
if ([this[e[0]], this[e[1]]][t(582)]((o) => !o)) return console[t(572)](i), { error: this.setErrorRun(e[2]) };
|
|
2165
2160
|
const r = (o) => {
|
|
2166
|
-
const
|
|
2167
|
-
return this[
|
|
2161
|
+
const f = t;
|
|
2162
|
+
return this[f(501)] = o, this.playerInfo = this.createPlayerInfo(o), this[f(600)];
|
|
2168
2163
|
};
|
|
2169
2164
|
try {
|
|
2170
|
-
const o = await this[t(
|
|
2171
|
-
if (o[t(
|
|
2172
|
-
const
|
|
2173
|
-
if (window[t(
|
|
2174
|
-
await
|
|
2175
|
-
const
|
|
2176
|
-
this[t(
|
|
2165
|
+
const o = await this[t(451)]();
|
|
2166
|
+
if (o[t(458)] !== 200) return { error: this[t(471)](e[3]) };
|
|
2167
|
+
const f = r(o);
|
|
2168
|
+
if (window[t(493)] && (window[t(493)][t(527)] = f?.[t(579)], window[t(493)].playerVersion = f?.[t(531)], window.vpe[t(579)] = f[t(579)] + "|" + f[t(531)], window[t(493)].state = this[t(523)]), f?.[t(534)] === "Y") {
|
|
2169
|
+
await I0(this[t(497)], this[t(523)], f, this.appId, this[t(447)]);
|
|
2170
|
+
const h = await y0(this[t(447)]);
|
|
2171
|
+
this[t(612)] = new R0(this[t(497)], this.stage, f), this[t(592)] = Date[t(443)](), h?.[t(601)]?.sync && await this[t(612)][t(581)]({ video: f.video || {}, extra: { ...f[t(455)] } });
|
|
2177
2172
|
}
|
|
2178
|
-
return { options: this.
|
|
2173
|
+
return { options: this[t(501)].result?.[t(466)], playerInfo: f };
|
|
2179
2174
|
} catch (o) {
|
|
2180
|
-
return console
|
|
2175
|
+
return console.error(t(479), o), { error: this[t(471)](e[4]) };
|
|
2181
2176
|
}
|
|
2182
2177
|
}
|
|
2183
|
-
async [y(
|
|
2184
|
-
const t = y, e = ["?preview=true", t(
|
|
2178
|
+
async [y(451)]() {
|
|
2179
|
+
const t = y, e = ["?preview=true", t(597), t(536), t(576), t(553), t(494), "POST"], i = this[t(540)] ? e[0] : "", x = O0(M0[this[t(497)]][this[t(523)]][e[1]]) + i, r = this.appId, o = JSON[t(574)]([e[4], e[5]][t(515)]((h, S, I) => {
|
|
2185
2180
|
const R = t;
|
|
2186
|
-
return
|
|
2187
|
-
}, {})),
|
|
2188
|
-
if (!
|
|
2189
|
-
return
|
|
2181
|
+
return h[S] = [this[R(447)], r][I], h;
|
|
2182
|
+
}, {})), f = await fetch(x, { method: e[6], headers: { [e[2]]: e[3] }, body: o });
|
|
2183
|
+
if (!f.ok) throw new Error(["API", t(545), f[t(593)], f[t(513)]][t(508)](" "));
|
|
2184
|
+
return f.json();
|
|
2190
2185
|
}
|
|
2191
|
-
[y(
|
|
2192
|
-
const t = y, e = navigator
|
|
2193
|
-
return /Edg\/(\d+\.\d+)/[t(
|
|
2186
|
+
[y(487)]() {
|
|
2187
|
+
const t = y, e = navigator[t(452)];
|
|
2188
|
+
return /Edg\/(\d+\.\d+)/[t(486)](e) ? { origin: t(504), version: RegExp.$1 } : /Chrome\/(\d+\.\d+)/[t(486)](e) && !e[t(559)](t(541)) ? { origin: "Chrome", version: RegExp.$1 } : /Firefox\/(\d+\.\d+)/[t(486)](e) ? { origin: t(468), version: RegExp.$1 } : /Version\/(\d+\.\d+)/.test(e) && e.includes(t(577)) ? { origin: t(577), version: RegExp.$1 } : { origin: t(609), version: t(609) };
|
|
2194
2189
|
}
|
|
2195
|
-
[y(
|
|
2196
|
-
const e = y, [i,
|
|
2197
|
-
return window[e(
|
|
2190
|
+
[y(591)](t) {
|
|
2191
|
+
const e = y, [i, x] = t[e(601)].name[e(475)]("|"), r = navigator.connection || navigator[e(585)] || navigator[e(460)], o = this.getBrowserInfo(), f = navigator[e(484)], h = new G(window.navigator[e(452)])[e(598)]();
|
|
2192
|
+
return window[e(481)].userAgent[e(465)]()[e(559)](e(539)) ? h[e(604)][e(491)] = e(469) : window[e(481)].userAgent[e(465)]().includes("kakaotalk") ? h[e(604)][e(491)] = e(459) : window[e(481)][e(452)][e(465)]()[e(559)](e(569)) ? h[e(604)].name = e(507) : window[e(481)].userAgent[e(465)]()[e(559)](e(482)) ? h[e(604)][e(491)] = e(459) : window[e(481)][e(452)].toLowerCase()[e(559)](e(569)) && (h.browser[e(491)] = e(507)), { cid: t[e(601)][e(599)], player_name: i, player_version: x, pricing: t.result[e(564)], maUse: t.result[e(466)]?.maUse === "Y" ? "Y" : "N", browser: { lang: navigator[e(476)], ua: navigator[e(452)] }, screen: { width: window[e(584)].width, height: window[e(584)][e(448)] }, connection: { network: r?.[e(605)] ?? "unknown", downlink: r?.downlink ?? null, rtt: r?.[e(456)] ?? null, save_data: r?.[e(613)] ?? !1 }, device: { platform: f?.[e(497)] ?? e(609), mobile: f?.[e(565)] ?? !1, memory: navigator[e(489)] ?? null, processor: navigator.hardwareConcurrency ?? null }, video: { url: "" }, extra: { vpeKey: this[e(447)], playerType: e(490), playerVersion: window[e(493)]?.playerVersion ?? x, os: f?.[e(497)] ?? "Unknown", osOrigin: h.os[e(491)] || e(609), osVersion: h.os[e(519)], vpePackageId: null, actionDuration: this[e(453)](), actionType: "ready", browser: o[e(511)], browserOrigin: o[e(511)], browserVersion: o[e(519)], quality: e(552), qualityOrigin: e(549), device: h[e(561)].vendor + " " + h[e(561)][e(485)], location: window[e(603)].href, host: window[e(603)][e(554)], port: window.location[e(480)], protocol: window[e(603)][e(462)], title: "" } };
|
|
2198
2193
|
}
|
|
2199
|
-
|
|
2200
|
-
const e = y, i = t
|
|
2201
|
-
return this[e(
|
|
2194
|
+
[y(471)](t) {
|
|
2195
|
+
const e = y, i = t.slice(-2), x = this[e(542)][e(529)][i] || this.translator.error["01"], r = { errorCode: t, errorMessage: x };
|
|
2196
|
+
return this[e(500)] = r, console[e(529)](e(570), r), r;
|
|
2202
2197
|
}
|
|
2203
|
-
|
|
2204
|
-
|
|
2198
|
+
updateTranslator(t) {
|
|
2199
|
+
const e = y;
|
|
2200
|
+
this[e(542)] = Je(t);
|
|
2205
2201
|
}
|
|
2206
|
-
[y(
|
|
2207
|
-
return this[y(
|
|
2202
|
+
[y(558)]() {
|
|
2203
|
+
return this[y(500)];
|
|
2208
2204
|
}
|
|
2209
|
-
|
|
2205
|
+
[y(457)]() {
|
|
2210
2206
|
const t = y;
|
|
2211
|
-
return this[t(
|
|
2207
|
+
return this[t(501)][t(601)]?.[t(564)] === t(578);
|
|
2212
2208
|
}
|
|
2213
|
-
|
|
2209
|
+
isInitialized() {
|
|
2214
2210
|
const t = y;
|
|
2215
|
-
return !!this
|
|
2211
|
+
return !!this[t(501)][t(601)];
|
|
2216
2212
|
}
|
|
2217
|
-
|
|
2218
|
-
const e = y, i = _0(this
|
|
2219
|
-
this[e(
|
|
2220
|
-
const
|
|
2221
|
-
return
|
|
2213
|
+
[y(502)](t) {
|
|
2214
|
+
const e = y, i = _0(this[e(501)][e(601)]?.[e(466)], this[e(501)].result?.[e(564)]);
|
|
2215
|
+
this[e(501)][e(601)]?.[e(564)] !== "pay" && (t = { ...t, ...i });
|
|
2216
|
+
const x = { ...i, ...t ?? {} };
|
|
2217
|
+
return x?.[e(470)] && (x?.[e(470)] == e(573) || this.updateTranslator(x[e(470)])), t?.[e(524)] && (x[e(524)] = { ...i[e(524)], ...t[e(524)] }), t?.[e(537)] && (x[e(537)] = { ...i[e(537)], ...t.watermarkConfig }), x.playlist && !Array.isArray(x[e(607)]) && (x[e(607)] = [{ file: x[e(607)] }]), Et = x.playlist || [], x;
|
|
2222
2218
|
}
|
|
2223
|
-
|
|
2219
|
+
getPlaylist() {
|
|
2224
2220
|
return Et || [];
|
|
2225
2221
|
}
|
|
2226
2222
|
$t(t) {
|
|
2227
|
-
const e = y, i = t[e(
|
|
2228
|
-
let
|
|
2223
|
+
const e = y, i = t[e(475)](".");
|
|
2224
|
+
let x = this[e(542)];
|
|
2229
2225
|
for (const r of i)
|
|
2230
|
-
if (
|
|
2226
|
+
if (x && typeof x === e(445) && r in x) x = x[r];
|
|
2231
2227
|
else return t;
|
|
2232
|
-
return typeof
|
|
2228
|
+
return typeof x == "string" ? x : t;
|
|
2233
2229
|
}
|
|
2234
|
-
async [y(
|
|
2230
|
+
async [y(516)](t) {
|
|
2235
2231
|
const e = y, i = [];
|
|
2236
|
-
if (!t || t[e(
|
|
2237
|
-
const
|
|
2232
|
+
if (!t || t[e(546)](e(543)) === -1) return i;
|
|
2233
|
+
const x = (f, h) => {
|
|
2238
2234
|
const S = e;
|
|
2239
2235
|
try {
|
|
2240
|
-
return new URL(
|
|
2236
|
+
return new URL(h, f)[S(509)]();
|
|
2241
2237
|
} catch {
|
|
2242
|
-
return
|
|
2238
|
+
return h;
|
|
2243
2239
|
}
|
|
2244
|
-
}, r = (
|
|
2245
|
-
const
|
|
2240
|
+
}, r = (f) => {
|
|
2241
|
+
const h = e, S = f[h(571)](/RESOLUTION=(\d+)x(\d+)/);
|
|
2246
2242
|
if (S) return S[2] + "p";
|
|
2247
|
-
const I = h
|
|
2248
|
-
return I ? Math.round(Number(I[1]) / 1e3) +
|
|
2249
|
-
}, o = (
|
|
2250
|
-
const
|
|
2251
|
-
for (let I = 0; I < S
|
|
2243
|
+
const I = f[h(571)](/BANDWIDTH=(\d+)/);
|
|
2244
|
+
return I ? Math.round(Number(I[1]) / 1e3) + h(556) : "auto";
|
|
2245
|
+
}, o = (f) => {
|
|
2246
|
+
const h = e, S = f[h(475)](/\r?\n/)[h(566)]((I) => I.trim()).filter((I) => I[h(506)] > 0);
|
|
2247
|
+
for (let I = 0; I < S.length; I += 1) {
|
|
2252
2248
|
const R = S[I];
|
|
2253
|
-
if (R
|
|
2249
|
+
if (R[h(446)](h(586))) {
|
|
2254
2250
|
const H = S[I + 1];
|
|
2255
|
-
H && !H[
|
|
2251
|
+
H && !H[h(446)]("#") && (i.push({ quality: r(R), url: x(t, H), levelIndex: i.length }), I += 1);
|
|
2256
2252
|
}
|
|
2257
2253
|
}
|
|
2258
2254
|
};
|
|
2259
2255
|
try {
|
|
2260
|
-
const
|
|
2261
|
-
if (!
|
|
2262
|
-
const
|
|
2263
|
-
return
|
|
2264
|
-
} catch (
|
|
2265
|
-
return console[e(
|
|
2256
|
+
const f = await fetch(t);
|
|
2257
|
+
if (!f.ok) return i;
|
|
2258
|
+
const h = await f.text();
|
|
2259
|
+
return h && o(h), i;
|
|
2260
|
+
} catch (f) {
|
|
2261
|
+
return console[e(529)](e(530), f), i;
|
|
2266
2262
|
}
|
|
2267
2263
|
}
|
|
2268
|
-
async [y(
|
|
2264
|
+
async [y(528)](t) {
|
|
2269
2265
|
const e = y;
|
|
2270
|
-
if (!t?.
|
|
2271
|
-
const i = new
|
|
2272
|
-
if (t.type ==
|
|
2273
|
-
if (t[e(
|
|
2274
|
-
await this[e(
|
|
2266
|
+
if (!t?.[e(495)] || !this[e(612)] || this[e(600)]?.maUse !== "Y") return;
|
|
2267
|
+
const i = new d0[e(544)](window[e(481)].userAgent).getResult();
|
|
2268
|
+
if (t.type == e(503) || t[e(495)] == "stateChange") return;
|
|
2269
|
+
if (t[e(495)] == "ratechange") {
|
|
2270
|
+
await this[e(567)](e(525), { extra: { playbackRate: t?.[e(548)]?.[e(520)] || t?.[e(496)]?.[e(548)]?.[e(520)] || 1 } }, t[e(495)]);
|
|
2275
2271
|
return;
|
|
2276
2272
|
}
|
|
2277
|
-
if (t[e(
|
|
2278
|
-
await this[e(
|
|
2273
|
+
if (t[e(495)] == e(533)) {
|
|
2274
|
+
await this[e(567)](e(533), { extra: { isFullscreen: t?.data?.isFullscreen || !1 } }, t[e(495)]);
|
|
2279
2275
|
return;
|
|
2280
2276
|
}
|
|
2281
|
-
const
|
|
2282
|
-
t[e(
|
|
2283
|
-
const r = t?.[e(
|
|
2284
|
-
this
|
|
2285
|
-
const
|
|
2286
|
-
|
|
2287
|
-
const S = t?.
|
|
2288
|
-
let oe = 0, z = 0,
|
|
2289
|
-
if (
|
|
2290
|
-
const
|
|
2291
|
-
z =
|
|
2277
|
+
const x = t.type;
|
|
2278
|
+
t[e(495)] == e(608) && (t[e(495)] = e(477));
|
|
2279
|
+
const r = t?.[e(496)]?.[e(495)] == e(498), o = navigator[e(596)] || navigator[e(585)] || navigator.webkitConnection || null;
|
|
2280
|
+
this.incomingType = t?.[e(495)] || null;
|
|
2281
|
+
const f = this.incomingType === "play" && !this[e(526)], h = f ? e(517) : this[e(547)];
|
|
2282
|
+
f && (this[e(526)] = !0);
|
|
2283
|
+
const S = t?.[e(496)]?.data?.duration || 0, I = t?.[e(496)]?.[e(548)]?.[e(580)] || 0, R = t?.video?.[e(492)] || 0, H = t?.[e(496)]?.[e(594)] || 0;
|
|
2284
|
+
let oe = 0, z = 0, be = 0;
|
|
2285
|
+
if (h == e(477) && (oe = this[e(453)](), this.playerStartTimeMs = oe), h == e(517)) {
|
|
2286
|
+
const nt = this.getElapsedMilliseconds();
|
|
2287
|
+
z = nt - this[e(575)], be = nt;
|
|
2292
2288
|
}
|
|
2293
|
-
const
|
|
2294
|
-
await this[e(
|
|
2289
|
+
const zt = { type: h, video: { type: e(r ? 551 : 588), quality: t?.[e(496)]?.[e(488)] ? t?.[e(496)]?.[e(488)] : e(573), url: t?.video?.[e(532)] }, connection: o ? { network: o[e(605)], downlink: o[e(514)], rtt: o.rtt, save_data: o[e(613)] } : void 0, extra: { actionType: h, title: t?.[e(587)]?.[e(555)], contentId: t?.video?.[e(461)] || t?.[e(587)]?.[e(461)] || null, metaData: t?.[e(587)], videoWidth: Math[e(589)](R), videoHeight: Math[e(589)](H), video_protocols: this.getVideoProtocol(t?.[e(496)]?.url), duration: Math[e(478)](S), currentTime: Math[e(478)](I), playedTime: this[e(453)](), viewingTime: Math[e(589)](this.getElapsedMilliseconds() / 1e3), playerStartTime: oe, videoStartTime: z, totalStartTime: be, percent: Math.round(I / S * 100), quality: t?.[e(496)]?.[e(488)] ? t?.video?.[e(488)] : e(573), errorCode: t?.[e(522)]?.[e(560)], errorMessage: t?.[e(522)]?.errorMessage, actionDuration: this[e(453)]() / 1e3, device: i.device[e(610)] + " " + i[e(561)].model, location: window.location[e(518)], host: window.location[e(554)], port: window[e(603)].port, protocol: window[e(603)].protocol }, browser: { lang: navigator[e(476)], ua: navigator.userAgent }, screen: { width: window[e(584)][e(473)], height: window[e(584)][e(448)] } };
|
|
2290
|
+
await this[e(567)](h, zt, x);
|
|
2295
2291
|
}
|
|
2296
|
-
async
|
|
2297
|
-
const
|
|
2298
|
-
if (!this[
|
|
2299
|
-
const r = e && typeof e ===
|
|
2300
|
-
await this
|
|
2292
|
+
async report(t, e, i) {
|
|
2293
|
+
const x = y;
|
|
2294
|
+
if (!this[x(612)]) return;
|
|
2295
|
+
const r = e && typeof e === x(445) ? e : { extra: { actionDuration: this[x(453)]() } };
|
|
2296
|
+
await this.maManager.maSync(r), await this[x(612)].dispatchEvent({ type: t, data: r });
|
|
2301
2297
|
}
|
|
2302
|
-
[y(
|
|
2298
|
+
[y(454)](t) {
|
|
2303
2299
|
const e = y;
|
|
2304
|
-
return t
|
|
2300
|
+
return t.indexOf("m3u8") > -1 ? e(499) : t[e(546)](e(590)) > -1 ? e(557) : e(444);
|
|
2305
2301
|
}
|
|
2306
2302
|
getElapsedMilliseconds() {
|
|
2307
2303
|
const t = y;
|
|
2308
|
-
return this[t(
|
|
2304
|
+
return this[t(592)] ? (/* @__PURE__ */ new Date())[t(483)]() - this[t(592)] : 0;
|
|
2309
2305
|
}
|
|
2310
2306
|
}
|
|
2311
|
-
|
|
2312
|
-
|
|
2307
|
+
function D0(a, t) {
|
|
2308
|
+
a = a - 422;
|
|
2309
|
+
var e = Ne(), i = e[a];
|
|
2310
|
+
return i;
|
|
2311
|
+
}
|
|
2312
|
+
(function(a, t) {
|
|
2313
|
+
for (var e = D0, i = a(); ; )
|
|
2313
2314
|
try {
|
|
2314
|
-
var
|
|
2315
|
-
if (
|
|
2315
|
+
var x = parseInt(e(425)) / 1 * (parseInt(e(427)) / 2) + parseInt(e(429)) / 3 * (-parseInt(e(426)) / 4) + -parseInt(e(428)) / 5 * (-parseInt(e(422)) / 6) + -parseInt(e(431)) / 7 + parseInt(e(432)) / 8 + parseInt(e(423)) / 9 * (parseInt(e(430)) / 10) + parseInt(e(433)) / 11 * (parseInt(e(424)) / 12);
|
|
2316
|
+
if (x === t) break;
|
|
2316
2317
|
i.push(i.shift());
|
|
2317
2318
|
} catch {
|
|
2318
2319
|
i.push(i.shift());
|
|
2319
2320
|
}
|
|
2320
|
-
})(Ne,
|
|
2321
|
+
})(Ne, 833164);
|
|
2321
2322
|
function Ne() {
|
|
2322
|
-
var
|
|
2323
|
+
var a = ["18320QeRRJU", "4597768FumRDq", "2239160Ynmtof", "156607SdBlGs", "69714wenOen", "3825RDgwHp", "384OqvaQj", "1tZzHrb", "3428ozwkcG", "921314jNCuHU", "75ifEKEr", "2307xKzsOn"];
|
|
2323
2324
|
return Ne = function() {
|
|
2324
|
-
return
|
|
2325
|
+
return a;
|
|
2325
2326
|
}, Ne();
|
|
2326
2327
|
}
|
|
2327
|
-
function D0(x, t) {
|
|
2328
|
-
x = x - 203;
|
|
2329
|
-
var e = Ne(), i = e[x];
|
|
2330
|
-
return i;
|
|
2331
|
-
}
|
|
2332
2328
|
export {
|
|
2333
2329
|
P0 as default,
|
|
2334
2330
|
Je as getTranslator
|