@sgrsoft/vpe-core-sdk 0.20.8 → 0.20.9
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/vpe-core-sdk.cjs.js +1 -1
- package/dist/vpe-core-sdk.es.js +715 -716
- package/package.json +1 -1
package/dist/vpe-core-sdk.es.js
CHANGED
|
@@ -1,111 +1,109 @@
|
|
|
1
|
-
|
|
2
|
-
var a = ["Unsupported format.", "None", "Player Execution Failed", "Scheduled", "Failed to communicate with the DRM license server.", "Subtitles", "Turn off captions", "Black", "Normal", "You do not have permission to play this video.", "Red", "hour", "day", "12EfXorw", "Cannot play DASH video on iOS.", "Magenta", "10WSEkfQ", "Font Weight", "Skip Intro", "Invalid URL format.", "Authentication Failed", "Pause", "Font Size", "8920857rcxcEM", "Apply Default Style", "Yellow", "Drop Shadow", "LIVE", "Invalid access. Please check your access_key.", "Depressed", "This video is rated for all audiences.", "White", "Thin", "Window Color", "263295BMlbNs", "Drugs", "Cancel", "Sexuality", "Settings", "Extra Bold", "Monthly basic API calls exceeded. Please switch to a paid version.", "Background Opacity", "Mini player", "Change text, color, and background styles", "Auto Skip Opening", "Player Startup Failed", "Exit fullscreen", "Bold", "206178uztrlL", "minute(s)", "Horror", "Provocative content", "seconds until auto-play", "Auto", "Turn on captions", "Play", "6VBueDs", "174544CxItfw", "Fullscreen", "1345676cRCDiv", "Unmute", "Quality", "Mute", "Text Edge Style", "In a moment", "8ZlSlWK", "You are muted.", "Cannot play video", "Text Opacity", "Previous video", "This feature requires the Standard plan.", "Video will start in {timeTxt}.", "Autoplay", "Required module was not loaded. (hls.js)", "Skip Ending", "Raised", "108XeUxKy", "Next video", "License", "Imitation risk", "FairPlay certificate validation failed.", "653415JNbypj", "Invalid DRM token.", "Subtitle Style", "Playback speed", "Green", "Violence", "7BonNqg", "Semi Bold", "The live stream is OFFLINE.", "Auto Skip Ending", "6095141YWnYNF", "Auto Skip Intro"];
|
|
3
|
-
return ke = function() {
|
|
4
|
-
return a;
|
|
5
|
-
}, ke();
|
|
6
|
-
}
|
|
7
|
-
var f = Et;
|
|
8
|
-
function Et(a, t) {
|
|
9
|
-
a = a - 322;
|
|
10
|
-
var e = ke(), i = e[a];
|
|
11
|
-
return i;
|
|
12
|
-
}
|
|
1
|
+
var p = Et;
|
|
13
2
|
(function(a, t) {
|
|
14
3
|
for (var e = Et, i = a(); ; )
|
|
15
4
|
try {
|
|
16
|
-
var n = parseInt(e(
|
|
5
|
+
var n = parseInt(e(423)) / 1 * (parseInt(e(397)) / 2) + parseInt(e(403)) / 3 * (-parseInt(e(387)) / 4) + parseInt(e(391)) / 5 * (-parseInt(e(428)) / 6) + -parseInt(e(354)) / 7 + parseInt(e(344)) / 8 * (-parseInt(e(356)) / 9) + parseInt(e(416)) / 10 + -parseInt(e(377)) / 11 * (-parseInt(e(359)) / 12);
|
|
17
6
|
if (n === t) break;
|
|
18
7
|
i.push(i.shift());
|
|
19
8
|
} catch {
|
|
20
9
|
i.push(i.shift());
|
|
21
10
|
}
|
|
22
|
-
})(ke,
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
var
|
|
26
|
-
return
|
|
11
|
+
})(ke, 328566);
|
|
12
|
+
function Et(a, t) {
|
|
13
|
+
a = a - 342;
|
|
14
|
+
var e = ke(), i = e[a];
|
|
15
|
+
return i;
|
|
16
|
+
}
|
|
17
|
+
function ke() {
|
|
18
|
+
var a = ["Replay", "The live stream is OFFLINE.", "Monthly basic API calls exceeded. Please switch to a paid version.", "Subtitles not available", "Font Size", "Turn on captions", "398248WsQGAv", "Not used", "Autoplay", "Cannot play video", "Invalid access. Please check your access_key.", "Cancel", "In a moment", "Settings", "Auto Skip Intro", "The video could not be played.", "3267614nEsYCg", "Subtitle Style", "117trZffP", "Failed to communicate with the DRM license server.", "Background Color", "120flaGZf", "FairPlay certificate validation failed.", "Auto", "Scheduled", "Mute", "Bold", "Font Weight", "Skip Opening", "Next video", "Video will start in {timeTxt}.", "Required module was not loaded. (dash.js)", "Provocative content", "minute(s)", "Screen capture / screen recording has been detected.", "Play", "Previous video", "second(s)", "Skip Intro", "904585oaVJBM", "Thin", "Fullscreen", "Invalid URL format.", "Semi Bold", "Auto Skip Ending", "This video is rated for all audiences.", "Green", "Yellow", "Authentication Failed", "4yHnXrU", "White", "Quality", "Drugs", "1246925synkLJ", "Pause", "None", "LIVE", "Imitation risk", "hour(s)", "1020124FVrmAa", "Exit fullscreen", "Playback speed", "Next video will play in {timeTxt} seconds.", "Background Opacity", "Unsupported format.", "258993dtAVsI", "Player Execution Failed", "You are muted.", "day", "Normal", "License", "Player Startup Failed", "Extra Bold", "Cyan", "Required module was not loaded. (hls.js)", "Skip Ending", "Auto Skip Opening/Ending", "Text Opacity", "4458250piBPPC", "Invalid DRM token.", "Violence", "Raised", "Magenta", "The network connection is unstable.", "Apply Default Style", "1TTYoSx", "min", "seconds until auto-play", "Drop Shadow", "Cannot play DASH video on iOS.", "6JbDZZn", "Sexuality"];
|
|
19
|
+
return ke = function() {
|
|
27
20
|
return a;
|
|
28
|
-
},
|
|
21
|
+
}, ke();
|
|
29
22
|
}
|
|
23
|
+
const qt = { common: { cancel: p(349), auto: p(361), normal: p(407), notUse: p(345), prev: p(374), next: p(367), delayText: p(425), license: p(408), play: p(373), pause: p(392), replay: p(430), fullOn: p(379), fullOff: p(398), muteOn: p(363), muteOff: "Unmute", captionOff: "Turn off captions", captionOn: p(343), setting: p(351), live: p(394), miniPlayer: "Mini player", isMute: p(405), subtitle: "Subtitles", subtitleNot: p(433) }, settings: { autoplay: p(346), playbackRate: p(399), captions: "Subtitles", quality: "Quality" }, skip: { introSkip: p(376), openingSkip: p(366), endingSkip: p(413), autoSkipIntro: p(352), autoSkipOpening: "Auto Skip Opening", autoSkipEnding: p(382), autoSkipOpeningEnding: p(414) }, ageRating: { noticeAll: p(383), 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: "This video may be inappropriate for minors." }, contentWarning: { sexuality: p(429), violence: p(418), language: "Language", drugs: p(390), horror: "Horror", imitation: p(395), provocative: p(370) }, error: { "01": { title: p(347), desc: p(348) }, "02": { title: p(347), desc: "You do not have permission to play this video." }, "03": { title: p(386), desc: p(421) }, "04": { title: p(347), desc: p(353) }, "05": { title: "Cannot play video", desc: "The license is not valid." }, "06": { title: p(347), desc: p(432) }, "07": { title: p(347), desc: p(402) }, "08": { title: p(347), desc: p(380) }, "09": { title: p(347), desc: p(431) }, 10: { title: p(347), desc: p(427) }, 11: { title: p(347), desc: p(417) }, 12: { title: p(347), desc: p(357) }, 13: { title: p(347), desc: p(360) }, 14: { title: "Cannot play video", desc: p(372) }, 15: { title: p(404), desc: p(412) }, 16: { title: p(404), desc: p(369) }, 17: { title: p(409), desc: "This feature requires the Standard plan." } }, tv: { default: "Default", quality: p(389), subtitleStyle: p(355), subtitleStyleDesc: "Change text, color, and background styles", applyDefaultStyle: p(422), fontColor: "Font Color", fontSize: p(342), textOpacity: p(415), edgeStyle: "Text Edge Style", bgColor: p(358), bgOpacity: p(401), windowColor: "Window Color", windowOpacity: "Window Opacity", fontWeight: p(365), weight: { thin: p(378), normal: p(407), semiBold: p(381), bold: p(364), extraBold: p(410) }, color: { white: p(388), black: "Black", red: "Red", green: p(384), blue: "Blue", yellow: p(385), magenta: p(420), cyan: p(411) }, edge: { none: p(393), dropShadow: p(426), raised: p(419), depressed: "Depressed", uniform: "Uniform" } }, alternative: { hour: p(396), minute: p(371), second: p(375), after: p(350), afterMin: p(424), afterHour: "hour", afterDay: p(406), startPlay: p(368), nextPlay: p(400), afterPlay: p(362) } };
|
|
30
24
|
var w = Tt;
|
|
31
25
|
function Tt(a, t) {
|
|
32
|
-
a = a -
|
|
26
|
+
a = a - 477;
|
|
33
27
|
var e = _e(), i = e[a];
|
|
34
28
|
return i;
|
|
35
29
|
}
|
|
36
30
|
(function(a, t) {
|
|
37
31
|
for (var e = Tt, i = a(); ; )
|
|
38
32
|
try {
|
|
39
|
-
var n =
|
|
33
|
+
var n = parseInt(e(505)) / 1 * (parseInt(e(492)) / 2) + parseInt(e(515)) / 3 + -parseInt(e(497)) / 4 + -parseInt(e(532)) / 5 + parseInt(e(537)) / 6 * (-parseInt(e(534)) / 7) + -parseInt(e(519)) / 8 * (parseInt(e(521)) / 9) + -parseInt(e(539)) / 10 * (-parseInt(e(530)) / 11);
|
|
40
34
|
if (n === t) break;
|
|
41
35
|
i.push(i.shift());
|
|
42
36
|
} catch {
|
|
43
37
|
i.push(i.shift());
|
|
44
38
|
}
|
|
45
|
-
})(_e,
|
|
46
|
-
|
|
47
|
-
var
|
|
39
|
+
})(_e, 819649);
|
|
40
|
+
function _e() {
|
|
41
|
+
var a = ["월 기본 제공 호출 건수를 초과하였습니다. 유료 버전으로 전환 후 사용 부탁 드립니다.", "자막끄기", "인증 실패", "이 영상은 전체 관람가 영상입니다.", "오프닝/엔딩 자동 스킵", "전체화면 해제", "1221lgoFcS", "화면 캡쳐 / 화면 녹화가 감지되었습니다.", "5133470VrNxNZ", "동영상을 재생할 수 없음", "41489iXyFIO", "인트로 건너뛰기", "자극적 장면", "618LZpKfI", "파란색", "176060yhpBXE", "FairPlay 인증서 검증에 실패하였습니다.", "검정색", "필수 모듈이 로드되지 않았습니다. (hls.js)", "DRM 토큰이 잘못되었습니다.", "글꼴 크기", "이전 동영상", "배경 색상", "텍스트 불투명도", "필수 모듈이 로드되지 않았습니다. (dash.js)", "미니플레이어", "음소거 해제", "Standard 요금제가 필요한 기능입니다.", "매우 굵게", "그림자", "플레이어 실행 실패", "라이브스트림이 OFFLINE 입니다.", "사용안함", "자홍색", "창 불투명도", "{timeTxt} 후 영상이 시작됩니다.", "기본 스타일 적용", "자막 스타일", "137636DTPDxy", "동영상을 재생할 수 없습니다.", "플레이어 구동 실패", "자막켜기", "URL 형식이 잘못되었습니다.", "832920aviapd", "빨간색", "잠시 ", "성적 표현", "오프닝 자동 스킵", "잘못된 접근입니다. access_key를 확인해주세요.", "엔딩 건너뛰기", "음소거", "16CInxvS", "창 색상", "인트로 자동 스킵", "시간 ", "해상도", "노란색", "초록색", "글자 굵기", "전체화면", "이 영상은 12세 미만의 청소년이 시청하기에 부적절하므로 보호자의 시청지도가 필요한 영상입니다.", "722790yZULjO", "DRM 라이선스 서버와 통신에 실패하였습니다.", "이 영상은 15세 미만의 청소년이 시청하기에 부적절하므로 보호자의 시청지도가 필요한 영상입니다.", "재생 속도", "2544uCHSco", "오프닝 건너뛰기", "17865kRAQoS", "{timeTxt}초 후 다음 영상이 재생됩니다.", "일시정지"];
|
|
42
|
+
return _e = function() {
|
|
43
|
+
return a;
|
|
44
|
+
}, _e();
|
|
45
|
+
}
|
|
46
|
+
const zt = { common: { cancel: "취소", auto: "자동", normal: "보통", notUse: w(486), prev: w(545), next: "다음 동영상", delayText: "초 뒤 자동재생", license: "라이선스", play: "재생", pause: w(523), replay: "다시보기", fullOn: w(513), fullOff: w(529), muteOn: w(504), muteOff: w(480), captionOff: w(525), captionOn: w(495), setting: "설정", live: "실시간", miniPlayer: w(479), isMute: "음소거 상태입니다.", subtitle: "자막", subtitleNot: "자막 사용 불가" }, settings: { autoplay: "자동재생", playbackRate: w(518), captions: "자막", quality: w(509) }, skip: { introSkip: w(535), openingSkip: w(520), endingSkip: w(503), autoSkipIntro: w(507), autoSkipOpening: w(501), autoSkipEnding: "엔딩 자동 스킵", autoSkipOpeningEnding: w(528) }, ageRating: { noticeAll: w(527), notice12: w(514), notice15: w(517), notice19: "이 영상은 청소년이 시청하기에 부적절한 영상입니다." }, contentWarning: { sexuality: w(500), violence: "폭력", language: "욕설", drugs: "약물", horror: "공포", imitation: "모방위험", provocative: w(536) }, error: { "01": { title: w(533), desc: w(502) }, "02": { title: w(533), desc: "동영상을 재생할 권한이 없습니다." }, "03": { title: w(526), desc: "네트워크 연결이 원활하지 않습니다." }, "04": { title: w(533), desc: w(493) }, "05": { title: w(533), desc: "라이선스가 유효하지 않습니다." }, "06": { title: w(533), desc: w(524) }, "07": { title: w(533), desc: "지원하지 않는 형식입니다." }, "08": { title: w(533), desc: w(496) }, "09": { title: w(533), desc: w(485) }, 10: { title: w(533), desc: "iOS에서 Dash 비디오를 재생할 수 없습니다." }, 11: { title: "동영상을 재생할 수 없음", desc: w(543) }, 12: { title: w(533), desc: w(516) }, 13: { title: "동영상을 재생할 수 없음", desc: w(540) }, 14: { title: w(533), desc: w(531) }, 15: { title: w(484), desc: w(542) }, 16: { title: w(484), desc: w(478) }, 17: { title: w(494), desc: w(481) } }, tv: { default: "기본", quality: "화질", subtitleStyle: w(491), subtitleStyleDesc: "텍스트, 색상, 배경 스타일 변경", applyDefaultStyle: w(490), fontColor: "글꼴 색상", fontSize: w(544), textOpacity: w(477), edgeStyle: "글자 테두리 스타일", bgColor: w(546), bgOpacity: "배경 불투명도", windowColor: w(506), windowOpacity: w(488), fontWeight: w(512), weight: { thin: "얇게", normal: "보통", semiBold: "약간 굵게", bold: "굵게", extraBold: w(482) }, color: { white: "흰색", black: w(541), red: w(498), green: w(511), blue: w(538), yellow: w(510), magenta: w(487), cyan: "청록색" }, edge: { none: "없음", dropShadow: w(483), raised: "양각", depressed: "음각", uniform: "균일" } }, alternative: { hour: "시", minute: "분", second: "초", after: w(499), afterMin: "분 ", afterHour: w(508), afterDay: "일 ", startPlay: w(489), nextPlay: w(522), afterPlay: "예정" } };
|
|
47
|
+
function Ct(a, t) {
|
|
48
|
+
a = a - 247;
|
|
49
|
+
var e = Ee(), i = e[a];
|
|
50
|
+
return i;
|
|
51
|
+
}
|
|
52
|
+
var g = Ct;
|
|
48
53
|
(function(a, t) {
|
|
49
54
|
for (var e = Ct, i = a(); ; )
|
|
50
55
|
try {
|
|
51
|
-
var n = -parseInt(e(
|
|
56
|
+
var n = -parseInt(e(261)) / 1 * (-parseInt(e(303)) / 2) + -parseInt(e(293)) / 3 + -parseInt(e(307)) / 4 + -parseInt(e(259)) / 5 * (-parseInt(e(267)) / 6) + -parseInt(e(270)) / 7 + parseInt(e(313)) / 8 + -parseInt(e(301)) / 9 * (-parseInt(e(286)) / 10);
|
|
52
57
|
if (n === t) break;
|
|
53
58
|
i.push(i.shift());
|
|
54
59
|
} catch {
|
|
55
60
|
i.push(i.shift());
|
|
56
61
|
}
|
|
57
|
-
})(Ee,
|
|
58
|
-
function Ct(a, t) {
|
|
59
|
-
a = a - 467;
|
|
60
|
-
var e = Ee(), i = e[a];
|
|
61
|
-
return i;
|
|
62
|
-
}
|
|
62
|
+
})(Ee, 403977);
|
|
63
63
|
function Ee() {
|
|
64
|
-
var a = ["
|
|
64
|
+
var a = ["デフォルトスタイルを適用", "FairPlay証明書の検証に失敗しました。", "動画を再生できませんでした。", "183784QDXyyC", "沈み込み", "文字の太さ", "ミュート解除", "認証に失敗しました", "{timeTxt}秒後に次の動画が再生されます。", "時間後", "プレーヤーの起動に失敗しました", "サポートされていない形式です。", "ミュート状態です。", "背景不透明度", "不正なアクセスです。access_keyを確認してください。", "字幕スタイル", "1010gVlmGs", "画面キャプチャ/画面録画が検出されました。", "736447uXDEob", "リプレイ", "使用しない", "シアン", "フォント色", "この映像は未成年者の視聴には不適切な内容を含みます。", "19476lVRdqz", "前の動画", "再生速度", "4883067MwncKL", "テキスト不透明度", "ミュート", "全画面表示", "オープニング自動スキップ", "DRMトークンが無効です。", "動画を再生できません", "文字エッジスタイル", "キャンセル", "iOSではDASHビデオを再生できません。", "一時停止", "刺激的な場面", "しばらくして", "ネットワーク接続が不安定です。", "エンディングをスキップ", "テキスト、色、背景スタイルを変更", "322360uwShpk", "必須モジュールが読み込まれていません。(dash.js)", "URLの形式が正しくありません。", "この動画を再生する権限がありません。", "この映像は15歳未満の視聴には不適切な内容を含むため、保護者の指導が必要です。", "ライブストリームはオフラインです。", "秒後に自動再生", "605046tDirgq", "自動再生", "DRMライセンスサーバーとの通信に失敗しました。", "イントロをスキップ", "OP/ED自動スキップ", "この機能にはStandardプランが必要です。", "ウィンドウ不透明度", "オープニングをスキップ", "171uqrriA", "フォントサイズ", "2uekanR", "字幕は利用できません", "ドロップシャドウ", "ライセンスが無効です。", "2897424HxAPqm", "模倣危険", "字幕をオフにする"];
|
|
65
65
|
return Ee = function() {
|
|
66
66
|
return a;
|
|
67
67
|
}, Ee();
|
|
68
68
|
}
|
|
69
|
-
const
|
|
70
|
-
function Te() {
|
|
71
|
-
const a = ["216eFduBJ", "1190924cIckSd", "132793QyxyHF", "6tYoumL", "language", "1533805eQtOuQ", "137445Zvlxvo", "102IxqHZx", "68787KXBsTn", "undefined", "55975zuvdRK", "30956DcqZyW", "430bPAbYr"];
|
|
72
|
-
return Te = function() {
|
|
73
|
-
return a;
|
|
74
|
-
}, Te();
|
|
75
|
-
}
|
|
69
|
+
const Wt = { common: { cancel: g(278), auto: "自動", normal: "標準", notUse: g(263), prev: g(268), next: "次の動画", delayText: g(292), license: "ライセンス", play: "再生", pause: g(280), replay: g(262), fullOn: g(273), fullOff: "全画面表示を終了", muteOn: g(272), muteOff: g(249), captionOff: g(309), captionOn: "字幕をオンにする", setting: "設定", live: "ライブ", miniPlayer: "ミニプレーヤー", isMute: g(255), subtitle: "字幕", subtitleNot: g(304) }, settings: { autoplay: g(294), playbackRate: g(269), captions: "字幕", quality: "画質" }, skip: { introSkip: g(296), openingSkip: g(300), endingSkip: g(284), autoSkipIntro: "イントロ自動スキップ", autoSkipOpening: g(274), autoSkipEnding: "エンディング自動スキップ", autoSkipOpeningEnding: g(297) }, ageRating: { noticeAll: "この映像は全年齢対象です。", notice12: "この映像は12歳未満の視聴には不適切な内容を含むため、保護者の指導が必要です。", notice15: g(290), notice19: g(266) }, contentWarning: { sexuality: "性的表現", violence: "暴力", language: "暴言", drugs: "薬物", horror: "恐怖", imitation: g(308), provocative: g(281) }, error: { "01": { title: g(276), desc: g(257) }, "02": { title: g(276), desc: g(289) }, "03": { title: g(250), desc: g(283) }, "04": { title: g(276), desc: g(312) }, "05": { title: g(276), desc: g(306) }, "06": { title: "動画を再生できません", desc: "月間の基本提供呼び出し回数を超過しました。有料版に切り替えてご利用ください。" }, "07": { title: "動画を再生できません", desc: g(254) }, "08": { title: g(276), desc: g(288) }, "09": { title: g(276), desc: g(291) }, 10: { title: g(276), desc: g(279) }, 11: { title: g(276), desc: g(275) }, 12: { title: g(276), desc: g(295) }, 13: { title: "動画を再生できません", desc: g(311) }, 14: { title: g(276), desc: g(260) }, 15: { title: "プレーヤーの起動に失敗しました", desc: "必須モジュールが読み込まれていません。(hls.js)" }, 16: { title: g(253), desc: g(287) }, 17: { title: g(253), desc: g(298) } }, tv: { default: "デフォルト", quality: "画質", subtitleStyle: g(258), subtitleStyleDesc: g(285), applyDefaultStyle: g(310), fontColor: g(265), fontSize: g(302), textOpacity: g(271), edgeStyle: g(277), bgColor: "背景色", bgOpacity: g(256), windowColor: "ウィンドウ色", windowOpacity: g(299), fontWeight: g(248), weight: { thin: "細い", normal: "標準", semiBold: "やや太い", bold: "太い", extraBold: "極太" }, color: { white: "白", black: "黒", red: "赤", green: "緑", blue: "青", yellow: "黄", magenta: "マゼンタ", cyan: g(264) }, edge: { none: "なし", dropShadow: g(305), raised: "浮き出し", depressed: g(247), uniform: "均一" } }, alternative: { hour: "時間", minute: "分", second: "秒", after: g(282), afterMin: "分後", afterHour: g(252), afterDay: "日後", startPlay: "{timeTxt}後に動画が始まります。", nextPlay: g(251), afterPlay: "予定" } }, At = Dt;
|
|
76
70
|
(function(a, t) {
|
|
77
|
-
const e =
|
|
71
|
+
const e = Dt, i = a();
|
|
78
72
|
for (; ; )
|
|
79
73
|
try {
|
|
80
|
-
if (parseInt(e(
|
|
74
|
+
if (parseInt(e(212)) / 1 + parseInt(e(223)) / 2 * (parseInt(e(221)) / 3) + -parseInt(e(222)) / 4 * (-parseInt(e(220)) / 5) + parseInt(e(224)) / 6 * (-parseInt(e(218)) / 7) + parseInt(e(214)) / 8 * (parseInt(e(213)) / 9) + -parseInt(e(217)) / 10 + -parseInt(e(216)) / 11 === t) break;
|
|
81
75
|
i.push(i.shift());
|
|
82
76
|
} catch {
|
|
83
77
|
i.push(i.shift());
|
|
84
78
|
}
|
|
85
|
-
})(Te,
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
return a = a - 491, Te()[a];
|
|
79
|
+
})(Te, 345296);
|
|
80
|
+
function Dt(a, t) {
|
|
81
|
+
return a = a - 212, Te()[a];
|
|
89
82
|
}
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
83
|
+
function Te() {
|
|
84
|
+
const a = ["712nusYwb", "188gxCimh", "1921902JFYfaE", "644308gGEWDD", "9ugHoMo", "2401128zETusN", "split", "5020466dmGZzF", "113160TzJzjO", "7fhXTlG", "undefined", "1625PICrqD", "4182XfOHuA"];
|
|
85
|
+
return Te = function() {
|
|
86
|
+
return a;
|
|
87
|
+
}, Te();
|
|
88
|
+
}
|
|
89
|
+
const Mt = { en: qt, ko: zt, ja: Wt }, Kt = () => typeof navigator !== At(219) && typeof navigator.language < "u";
|
|
90
|
+
function jt(a) {
|
|
91
|
+
const t = At, e = a[t(215)]("-")[0];
|
|
92
|
+
return e in Mt ? e : "en";
|
|
94
93
|
}
|
|
95
94
|
function Je(a) {
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
return At[i];
|
|
95
|
+
let t = "en";
|
|
96
|
+
a ? t = a : Kt() && (t = navigator.language);
|
|
97
|
+
const e = jt(t);
|
|
98
|
+
return Mt[e];
|
|
101
99
|
}
|
|
102
100
|
Je();
|
|
103
|
-
var Xt = "2.0.9",
|
|
101
|
+
var Xt = "2.0.9", Jt = 500, ot = "user-agent", re = "", st = "?", E = {
|
|
104
102
|
FUNCTION: "function",
|
|
105
103
|
OBJECT: "object",
|
|
106
104
|
STRING: "string",
|
|
107
105
|
UNDEFINED: "undefined"
|
|
108
|
-
}, O = "browser", z = "cpu", G = "device",
|
|
106
|
+
}, O = "browser", z = "cpu", G = "device", L = "engine", N = "os", oe = "result", d = "name", s = "type", u = "vendor", l = "version", M = "architecture", he = "major", c = "model", Se = "console", v = "mobile", k = "tablet", T = "smarttv", H = "wearable", we = "xr", pe = "embedded", Zt = "fetcher", te = "inapp", tt = "brands", Q = "formFactors", it = "fullVersionList", se = "platform", at = "platformVersion", Ue = "bitness", J = "sec-ch-ua", Qt = J + "-full-version-list", $t = J + "-arch", e0 = J + "-" + Ue, t0 = J + "-form-factors", i0 = J + "-" + v, a0 = J + "-" + c, Rt = J + "-" + se, x0 = Rt + "-version", Ot = [tt, it, v, c, se, at, M, Q, Ue], ge = "Amazon", ie = "Apple", ct = "ASUS", dt = "BlackBerry", Z = "Google", lt = "Huawei", Ge = "Lenovo", ut = "Honor", me = "LG", Ve = "Microsoft", Ye = "Motorola", ft = "Nvidia", pt = "OnePlus", qe = "OPPO", de = "Samsung", ht = "Sharp", le = "Sony", ze = "Xiaomi", We = "Zebra", bt = "Chrome", wt = "Chromium", K = "Chromecast", Ie = "Edge", ue = "Firefox", ae = "Opera", Ke = "Facebook", gt = "Sogou", xe = "Mobile ", ne = " Browser", Ze = "Windows", n0 = typeof window !== E.UNDEFINED, R = n0 && window.navigator ? window.navigator : void 0, $ = R && R.userAgentData ? R.userAgentData : void 0, r0 = function(a, t) {
|
|
109
107
|
var e = {}, i = t;
|
|
110
108
|
if (!Ce(t)) {
|
|
111
109
|
i = {};
|
|
@@ -116,25 +114,25 @@ var Xt = "2.0.9", Zt = 500, rt = "user-agent", ne = "", ot = "?", E = {
|
|
|
116
114
|
for (var o in a)
|
|
117
115
|
e[o] = i[o] && i[o].length % 2 === 0 ? i[o].concat(a[o]) : a[o];
|
|
118
116
|
return e;
|
|
119
|
-
},
|
|
117
|
+
}, Le = function(a) {
|
|
120
118
|
for (var t = {}, e = 0; e < a.length; e++)
|
|
121
119
|
t[a[e].toUpperCase()] = a[e];
|
|
122
120
|
return t;
|
|
123
|
-
},
|
|
121
|
+
}, Qe = function(a, t) {
|
|
124
122
|
if (typeof a === E.OBJECT && a.length > 0) {
|
|
125
123
|
for (var e in a)
|
|
126
|
-
if (
|
|
124
|
+
if (j(t) == j(a[e])) return !0;
|
|
127
125
|
return !1;
|
|
128
126
|
}
|
|
129
|
-
return
|
|
127
|
+
return be(a) ? j(t) == j(a) : !1;
|
|
130
128
|
}, Ce = function(a, t) {
|
|
131
129
|
for (var e in a)
|
|
132
130
|
return /^(browser|cpu|device|engine|os)$/.test(e) || (t ? Ce(a[e]) : !1);
|
|
133
|
-
},
|
|
131
|
+
}, be = function(a) {
|
|
134
132
|
return typeof a === E.STRING;
|
|
135
|
-
},
|
|
133
|
+
}, je = function(a) {
|
|
136
134
|
if (a) {
|
|
137
|
-
for (var t = [], e =
|
|
135
|
+
for (var t = [], e = ce(/\\?\"/g, a).split(","), i = 0; i < e.length; i++)
|
|
138
136
|
if (e[i].indexOf(";") > -1) {
|
|
139
137
|
var n = Ae(e[i]).split(";v=");
|
|
140
138
|
t[i] = { brand: n[0], version: n[1] };
|
|
@@ -142,43 +140,43 @@ var Xt = "2.0.9", Zt = 500, rt = "user-agent", ne = "", ot = "?", E = {
|
|
|
142
140
|
t[i] = Ae(e[i]);
|
|
143
141
|
return t;
|
|
144
142
|
}
|
|
145
|
-
},
|
|
146
|
-
return
|
|
147
|
-
},
|
|
148
|
-
return
|
|
149
|
-
},
|
|
143
|
+
}, j = function(a) {
|
|
144
|
+
return be(a) ? a.toLowerCase() : a;
|
|
145
|
+
}, $e = function(a) {
|
|
146
|
+
return be(a) ? ce(/[^\d\.]/g, a).split(".")[0] : void 0;
|
|
147
|
+
}, q = function(a) {
|
|
150
148
|
for (var t in a)
|
|
151
149
|
if (a.hasOwnProperty(t)) {
|
|
152
150
|
var e = a[t];
|
|
153
151
|
typeof e == E.OBJECT && e.length == 2 ? this[e[0]] = e[1] : this[e] = void 0;
|
|
154
152
|
}
|
|
155
153
|
return this;
|
|
156
|
-
},
|
|
157
|
-
return
|
|
158
|
-
},
|
|
159
|
-
return
|
|
154
|
+
}, ce = function(a, t) {
|
|
155
|
+
return be(t) ? t.replace(a, re) : t;
|
|
156
|
+
}, fe = function(a) {
|
|
157
|
+
return ce(/\\?\"/g, a);
|
|
160
158
|
}, Ae = function(a, t) {
|
|
161
|
-
return a =
|
|
162
|
-
},
|
|
159
|
+
return a = ce(/^\s\s*/, String(a)), typeof t === E.UNDEFINED ? a : a.substring(0, t);
|
|
160
|
+
}, et = function(a, t) {
|
|
163
161
|
if (!(!a || !t))
|
|
164
|
-
for (var e = 0, i, n, r, o,
|
|
165
|
-
var
|
|
166
|
-
for (i = n = 0; i <
|
|
167
|
-
if (
|
|
162
|
+
for (var e = 0, i, n, r, o, f, h; e < t.length && !f; ) {
|
|
163
|
+
var y = t[e], I = t[e + 1];
|
|
164
|
+
for (i = n = 0; i < y.length && !f && y[i]; )
|
|
165
|
+
if (f = y[i++].exec(a), f)
|
|
168
166
|
for (r = 0; r < I.length; r++)
|
|
169
|
-
h =
|
|
167
|
+
h = f[++n], o = I[r], typeof o === E.OBJECT && o.length > 0 ? o.length === 2 ? typeof o[1] == E.FUNCTION ? this[o[0]] = o[1].call(this, h) : this[o[0]] = o[1] : o.length >= 3 && (typeof o[1] === E.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
168
|
e += 2;
|
|
171
169
|
}
|
|
172
170
|
}, U = function(a, t) {
|
|
173
171
|
for (var e in t)
|
|
174
172
|
if (typeof t[e] === E.OBJECT && t[e].length > 0) {
|
|
175
173
|
for (var i = 0; i < t[e].length; i++)
|
|
176
|
-
if (
|
|
177
|
-
return e ===
|
|
178
|
-
} else if (
|
|
179
|
-
return e ===
|
|
174
|
+
if (Qe(t[e][i], a))
|
|
175
|
+
return e === st ? void 0 : e;
|
|
176
|
+
} else if (Qe(t[e], a))
|
|
177
|
+
return e === st ? void 0 : e;
|
|
180
178
|
return t.hasOwnProperty("*") ? t["*"] : a;
|
|
181
|
-
},
|
|
179
|
+
}, mt = {
|
|
182
180
|
ME: "4.90",
|
|
183
181
|
"NT 3.51": "3.51",
|
|
184
182
|
"NT 4.0": "4.0",
|
|
@@ -190,7 +188,7 @@ var Xt = "2.0.9", Zt = 500, rt = "user-agent", ne = "", ot = "?", E = {
|
|
|
190
188
|
"8.1": "6.3",
|
|
191
189
|
10: ["6.4", "10.0"],
|
|
192
190
|
NT: ""
|
|
193
|
-
},
|
|
191
|
+
}, yt = {
|
|
194
192
|
embedded: "Automotive",
|
|
195
193
|
mobile: "Mobile",
|
|
196
194
|
tablet: ["Tablet", "EInk"],
|
|
@@ -199,7 +197,7 @@ var Xt = "2.0.9", Zt = 500, rt = "user-agent", ne = "", ot = "?", E = {
|
|
|
199
197
|
xr: ["VR", "XR"],
|
|
200
198
|
"?": ["Desktop", "Unknown"],
|
|
201
199
|
"*": void 0
|
|
202
|
-
},
|
|
200
|
+
}, o0 = {
|
|
203
201
|
Chrome: "Google Chrome",
|
|
204
202
|
Edge: "Microsoft Edge",
|
|
205
203
|
"Edge WebView2": "Microsoft Edge WebView2",
|
|
@@ -209,14 +207,14 @@ var Xt = "2.0.9", Zt = 500, rt = "user-agent", ne = "", ot = "?", E = {
|
|
|
209
207
|
"MIUI Browser": "Miui Browser",
|
|
210
208
|
"Opera Mobi": "OperaMobile",
|
|
211
209
|
Yandex: "YaBrowser"
|
|
212
|
-
},
|
|
210
|
+
}, vt = {
|
|
213
211
|
browser: [
|
|
214
212
|
[
|
|
215
213
|
// Most common regardless engine
|
|
216
214
|
/\b(?:crmo|crios)\/([\w\.]+)/i
|
|
217
215
|
// Chrome for Android/iOS
|
|
218
216
|
],
|
|
219
|
-
[l, [d,
|
|
217
|
+
[l, [d, xe + "Chrome"]],
|
|
220
218
|
[
|
|
221
219
|
/webview.+edge\/([\w\.]+)/i
|
|
222
220
|
// Microsoft Edge
|
|
@@ -240,17 +238,17 @@ var Xt = "2.0.9", Zt = 500, rt = "user-agent", ne = "", ot = "?", E = {
|
|
|
240
238
|
/opios[\/ ]+([\w\.]+)/i
|
|
241
239
|
// Opera mini on iphone >= 8.0
|
|
242
240
|
],
|
|
243
|
-
[l, [d,
|
|
241
|
+
[l, [d, ae + " Mini"]],
|
|
244
242
|
[
|
|
245
243
|
/\bop(?:rg)?x\/([\w\.]+)/i
|
|
246
244
|
// Opera GX
|
|
247
245
|
],
|
|
248
|
-
[l, [d,
|
|
246
|
+
[l, [d, ae + " GX"]],
|
|
249
247
|
[
|
|
250
248
|
/\bopr\/([\w\.]+)/i
|
|
251
249
|
// Opera Webkit
|
|
252
250
|
],
|
|
253
|
-
[l, [d,
|
|
251
|
+
[l, [d, ae]],
|
|
254
252
|
[
|
|
255
253
|
// Mixed
|
|
256
254
|
/\bb[ai]*d(?:uhd|[ub]*[aekoprswx]{5,6})[\/ ]?([\w\.]+)/i
|
|
@@ -327,32 +325,32 @@ var Xt = "2.0.9", Zt = 500, rt = "user-agent", ne = "", ot = "?", E = {
|
|
|
327
325
|
/slbrowser\/([\w\.]+)/i
|
|
328
326
|
// Smart Lenovo Browser
|
|
329
327
|
],
|
|
330
|
-
[l, [d, "Smart " +
|
|
328
|
+
[l, [d, "Smart " + Ge + ne]],
|
|
331
329
|
[
|
|
332
330
|
/(av(?:ast|g|ira))\/([\w\.]+)/i
|
|
333
331
|
// Avast/AVG/Avira Secure Browser
|
|
334
332
|
],
|
|
335
|
-
[[d, /(.+)/, "$1 Secure" +
|
|
333
|
+
[[d, /(.+)/, "$1 Secure" + ne], l],
|
|
336
334
|
[
|
|
337
335
|
/norton\/([\w\.]+)/i
|
|
338
336
|
// Norton Private Browser
|
|
339
337
|
],
|
|
340
|
-
[l, [d, "Norton Private" +
|
|
338
|
+
[l, [d, "Norton Private" + ne]],
|
|
341
339
|
[
|
|
342
340
|
/\bfocus\/([\w\.]+)/i
|
|
343
341
|
// Firefox Focus
|
|
344
342
|
],
|
|
345
|
-
[l, [d,
|
|
343
|
+
[l, [d, ue + " Focus"]],
|
|
346
344
|
[
|
|
347
345
|
/ mms\/([\w\.]+)$/i
|
|
348
346
|
// Opera Neon
|
|
349
347
|
],
|
|
350
|
-
[l, [d,
|
|
348
|
+
[l, [d, ae + " Neon"]],
|
|
351
349
|
[
|
|
352
350
|
/ opt\/([\w\.]+)$/i
|
|
353
351
|
// Opera Touch
|
|
354
352
|
],
|
|
355
|
-
[l, [d,
|
|
353
|
+
[l, [d, ae + " Touch"]],
|
|
356
354
|
[
|
|
357
355
|
/coc_coc\w+\/([\w\.]+)/i
|
|
358
356
|
// Coc Coc Browser
|
|
@@ -367,17 +365,17 @@ var Xt = "2.0.9", Zt = 500, rt = "user-agent", ne = "", ot = "?", E = {
|
|
|
367
365
|
/coast\/([\w\.]+)/i
|
|
368
366
|
// Opera Coast
|
|
369
367
|
],
|
|
370
|
-
[l, [d,
|
|
368
|
+
[l, [d, ae + " Coast"]],
|
|
371
369
|
[
|
|
372
370
|
/miuibrowser\/([\w\.]+)/i
|
|
373
371
|
// MIUI Browser
|
|
374
372
|
],
|
|
375
|
-
[l, [d, "MIUI" +
|
|
373
|
+
[l, [d, "MIUI" + ne]],
|
|
376
374
|
[
|
|
377
375
|
/fxios\/([\w\.-]+)/i
|
|
378
376
|
// Firefox for iOS
|
|
379
377
|
],
|
|
380
|
-
[l, [d,
|
|
378
|
+
[l, [d, xe + ue]],
|
|
381
379
|
[
|
|
382
380
|
/\bqihoobrowser\/?([\w\.]*)/i
|
|
383
381
|
// 360
|
|
@@ -391,23 +389,23 @@ var Xt = "2.0.9", Zt = 500, rt = "user-agent", ne = "", ot = "?", E = {
|
|
|
391
389
|
[
|
|
392
390
|
/(oculus|sailfish|huawei|vivo|pico)browser\/([\w\.]+)/i
|
|
393
391
|
],
|
|
394
|
-
[[d, /(.+)/, "$1" +
|
|
392
|
+
[[d, /(.+)/, "$1" + ne], l],
|
|
395
393
|
[
|
|
396
394
|
// Oculus/Sailfish/HuaweiBrowser/VivoBrowser/PicoBrowser
|
|
397
395
|
/samsungbrowser\/([\w\.]+)/i
|
|
398
396
|
// Samsung Internet
|
|
399
397
|
],
|
|
400
|
-
[l, [d,
|
|
398
|
+
[l, [d, de + " Internet"]],
|
|
401
399
|
[
|
|
402
400
|
/metasr[\/ ]?([\d\.]+)/i
|
|
403
401
|
// Sogou Explorer
|
|
404
402
|
],
|
|
405
|
-
[l, [d,
|
|
403
|
+
[l, [d, gt + " Explorer"]],
|
|
406
404
|
[
|
|
407
405
|
/(sogou)mo\w+\/([\d\.]+)/i
|
|
408
406
|
// Sogou Mobile
|
|
409
407
|
],
|
|
410
|
-
[[d,
|
|
408
|
+
[[d, gt + " Mobile"], l],
|
|
411
409
|
[
|
|
412
410
|
/(electron)\/([\w\.]+) safari/i,
|
|
413
411
|
// Electron-based App
|
|
@@ -432,7 +430,7 @@ var Xt = "2.0.9", Zt = 500, rt = "user-agent", ne = "", ot = "?", E = {
|
|
|
432
430
|
/((?:fban\/fbios|fb_iab\/fb4a)(?!.+fbav)|;fbav\/([\w\.]+);)/i
|
|
433
431
|
// Facebook App for iOS & Android
|
|
434
432
|
],
|
|
435
|
-
[[d,
|
|
433
|
+
[[d, Ke], l, [s, te]],
|
|
436
434
|
[
|
|
437
435
|
/(kakao(?:talk|story))[\/ ]([\w\.]+)/i,
|
|
438
436
|
// Kakao App
|
|
@@ -453,27 +451,27 @@ var Xt = "2.0.9", Zt = 500, rt = "user-agent", ne = "", ot = "?", E = {
|
|
|
453
451
|
/(instagram|snapchat|klarna)[\/ ]([-\w\.]+)/i
|
|
454
452
|
// Instagram/Snapchat/Klarna
|
|
455
453
|
],
|
|
456
|
-
[d, l, [s,
|
|
454
|
+
[d, l, [s, te]],
|
|
457
455
|
[
|
|
458
456
|
/\bgsa\/([\w\.]+) .*safari\//i
|
|
459
457
|
// Google Search Appliance on iOS
|
|
460
458
|
],
|
|
461
|
-
[l, [d, "GSA"], [s,
|
|
459
|
+
[l, [d, "GSA"], [s, te]],
|
|
462
460
|
[
|
|
463
461
|
/(?:musical_ly|trill)(?:.+app_?version\/|_)([\w\.]+)/i
|
|
464
462
|
// TikTok
|
|
465
463
|
],
|
|
466
|
-
[l, [d, "TikTok"], [s,
|
|
464
|
+
[l, [d, "TikTok"], [s, te]],
|
|
467
465
|
[
|
|
468
466
|
/\[(linkedin)app\]/i
|
|
469
467
|
// LinkedIn App for iOS & Android
|
|
470
468
|
],
|
|
471
|
-
[d, [s,
|
|
469
|
+
[d, [s, te]],
|
|
472
470
|
[
|
|
473
471
|
/(zalo(?:app)?)[\/\sa-z]*([\w\.-]+)/i
|
|
474
472
|
// Zalo
|
|
475
473
|
],
|
|
476
|
-
[[d, /(.+)/, "Zalo"], l, [s,
|
|
474
|
+
[[d, /(.+)/, "Zalo"], l, [s, te]],
|
|
477
475
|
[
|
|
478
476
|
/(chromium)[\/ ]([-\w\.]+)/i
|
|
479
477
|
// Chromium
|
|
@@ -483,12 +481,12 @@ var Xt = "2.0.9", Zt = 500, rt = "user-agent", ne = "", ot = "?", E = {
|
|
|
483
481
|
/ome-(lighthouse)$/i
|
|
484
482
|
// Chrome Lighthouse
|
|
485
483
|
],
|
|
486
|
-
[d, [s,
|
|
484
|
+
[d, [s, Zt]],
|
|
487
485
|
[
|
|
488
486
|
/headlesschrome(?:\/([\w\.]+)| )/i
|
|
489
487
|
// Chrome Headless
|
|
490
488
|
],
|
|
491
|
-
[l, [d,
|
|
489
|
+
[l, [d, bt + " Headless"]],
|
|
492
490
|
[
|
|
493
491
|
/wv\).+chrome\/([\w\.]+).+edgw\//i
|
|
494
492
|
// Edge WebView2
|
|
@@ -498,17 +496,17 @@ var Xt = "2.0.9", Zt = 500, rt = "user-agent", ne = "", ot = "?", E = {
|
|
|
498
496
|
/ wv\).+(chrome)\/([\w\.]+)/i
|
|
499
497
|
// Chrome WebView
|
|
500
498
|
],
|
|
501
|
-
[[d,
|
|
499
|
+
[[d, bt + " WebView"], l],
|
|
502
500
|
[
|
|
503
501
|
/droid.+ version\/([\w\.]+)\b.+(?:mobile safari|safari)/i
|
|
504
502
|
// Android Browser
|
|
505
503
|
],
|
|
506
|
-
[l, [d, "Android" +
|
|
504
|
+
[l, [d, "Android" + ne]],
|
|
507
505
|
[
|
|
508
506
|
/chrome\/([\w\.]+) mobile/i
|
|
509
507
|
// Chrome Mobile
|
|
510
508
|
],
|
|
511
|
-
[l, [d,
|
|
509
|
+
[l, [d, xe + "Chrome"]],
|
|
512
510
|
[
|
|
513
511
|
/(chrome|omniweb|arora|[tizenoka]{5} ?browser)\/v?([\w\.]+)/i
|
|
514
512
|
// Chrome/OmniWeb/Arora/Tizen/Nokia
|
|
@@ -518,11 +516,11 @@ var Xt = "2.0.9", Zt = 500, rt = "user-agent", ne = "", ot = "?", E = {
|
|
|
518
516
|
/version\/([\w\.\,]+) .*mobile(?:\/\w+ | ?)safari/i
|
|
519
517
|
// Safari Mobile
|
|
520
518
|
],
|
|
521
|
-
[l, [d,
|
|
519
|
+
[l, [d, xe + "Safari"]],
|
|
522
520
|
[
|
|
523
521
|
/iphone .*mobile(?:\/\w+ | ?)safari/i
|
|
524
522
|
],
|
|
525
|
-
[[d,
|
|
523
|
+
[[d, xe + "Safari"]],
|
|
526
524
|
[
|
|
527
525
|
/version\/([\w\.\,]+) .*(safari)/i
|
|
528
526
|
// Safari
|
|
@@ -542,7 +540,7 @@ var Xt = "2.0.9", Zt = 500, rt = "user-agent", ne = "", ot = "?", E = {
|
|
|
542
540
|
/(?:mobile|tablet);.*(firefox)\/([\w\.-]+)/i
|
|
543
541
|
// Firefox Mobile
|
|
544
542
|
],
|
|
545
|
-
[[d,
|
|
543
|
+
[[d, xe + ue], l],
|
|
546
544
|
[
|
|
547
545
|
/(navigator|netscape\d?)\/([-\w\.]+)/i
|
|
548
546
|
// Netscape
|
|
@@ -557,7 +555,7 @@ var Xt = "2.0.9", Zt = 500, rt = "user-agent", ne = "", ot = "?", E = {
|
|
|
557
555
|
/mobile vr; rv:([\w\.]+)\).+firefox/i
|
|
558
556
|
// Firefox Reality
|
|
559
557
|
],
|
|
560
|
-
[l, [d,
|
|
558
|
+
[l, [d, ue + " Reality"]],
|
|
561
559
|
[
|
|
562
560
|
/ekiohf.+(flow)\/([\w\.]+)/i,
|
|
563
561
|
// Flow
|
|
@@ -582,41 +580,41 @@ var Xt = "2.0.9", Zt = 500, rt = "user-agent", ne = "", ot = "?", E = {
|
|
|
582
580
|
/(cobalt)\/([\w\.]+)/i
|
|
583
581
|
// Cobalt
|
|
584
582
|
],
|
|
585
|
-
[d, [l, /[^\d\.]+./,
|
|
583
|
+
[d, [l, /[^\d\.]+./, re]]
|
|
586
584
|
],
|
|
587
585
|
cpu: [
|
|
588
586
|
[
|
|
589
587
|
/\b((amd|x|x86[-_]?|wow|win)64)\b/i
|
|
590
588
|
// AMD64 (x64)
|
|
591
589
|
],
|
|
592
|
-
[[
|
|
590
|
+
[[M, "amd64"]],
|
|
593
591
|
[
|
|
594
592
|
/(ia32(?=;))/i,
|
|
595
593
|
// IA32 (quicktime)
|
|
596
594
|
/\b((i[346]|x)86)(pc)?\b/i
|
|
597
595
|
// IA32 (x86)
|
|
598
596
|
],
|
|
599
|
-
[[
|
|
597
|
+
[[M, "ia32"]],
|
|
600
598
|
[
|
|
601
599
|
/\b(aarch64|arm(v?[89]e?l?|_?64))\b/i
|
|
602
600
|
// ARM64
|
|
603
601
|
],
|
|
604
|
-
[[
|
|
602
|
+
[[M, "arm64"]],
|
|
605
603
|
[
|
|
606
604
|
/\b(arm(v[67])?ht?n?[fl]p?)\b/i
|
|
607
605
|
// ARMHF
|
|
608
606
|
],
|
|
609
|
-
[[
|
|
607
|
+
[[M, "armhf"]],
|
|
610
608
|
[
|
|
611
609
|
// PocketPC mistakenly identified as PowerPC
|
|
612
610
|
/( (ce|mobile); ppc;|\/[\w\.]+arm\b)/i
|
|
613
611
|
],
|
|
614
|
-
[[
|
|
612
|
+
[[M, "arm"]],
|
|
615
613
|
[
|
|
616
614
|
/ sun4\w[;\)]/i
|
|
617
615
|
// SPARC
|
|
618
616
|
],
|
|
619
|
-
[[
|
|
617
|
+
[[M, "sparc"]],
|
|
620
618
|
[
|
|
621
619
|
// IA64, 68K, ARM/64, AVR/32, IRIX/64, MIPS/64, SPARC/64, PA-RISC
|
|
622
620
|
/\b(avr32|ia64(?=;)|68k(?=\))|\barm(?=v([1-7]|[5-7]1)l?|;|eabi)|(irix|mips|sparc)(64)?\b|pa-risc)/i,
|
|
@@ -625,15 +623,15 @@ var Xt = "2.0.9", Zt = 500, rt = "user-agent", ne = "", ot = "?", E = {
|
|
|
625
623
|
/(?:osf1|[freopnt]{3,4}bsd) (alpha)/i
|
|
626
624
|
// Alpha
|
|
627
625
|
],
|
|
628
|
-
[[
|
|
626
|
+
[[M, /ower/, re, j]],
|
|
629
627
|
[
|
|
630
628
|
/mc680.0/i
|
|
631
629
|
],
|
|
632
|
-
[[
|
|
630
|
+
[[M, "68k"]],
|
|
633
631
|
[
|
|
634
632
|
/winnt.+\[axp/i
|
|
635
633
|
],
|
|
636
|
-
[[
|
|
634
|
+
[[M, "alpha"]]
|
|
637
635
|
],
|
|
638
636
|
device: [
|
|
639
637
|
[
|
|
@@ -643,53 +641,53 @@ var Xt = "2.0.9", Zt = 500, rt = "user-agent", ne = "", ot = "?", E = {
|
|
|
643
641
|
// Samsung
|
|
644
642
|
/\b(sch-i[89]0\d|shw-m380s|sm-[ptx]\w{2,4}|gt-[pn]\d{2,4}|sgh-t8[56]9|nexus 10)/i
|
|
645
643
|
],
|
|
646
|
-
[c, [u,
|
|
644
|
+
[c, [u, de], [s, k]],
|
|
647
645
|
[
|
|
648
646
|
/\b((?:s[cgp]h|gt|sm)-(?![lr])\w+|sc[g-]?[\d]+a?|galaxy nexus)/i,
|
|
649
647
|
/samsung[- ]((?!sm-[lr]|browser)[-\w]+)/i,
|
|
650
648
|
/sec-(sgh\w+)/i
|
|
651
649
|
],
|
|
652
|
-
[c, [u,
|
|
650
|
+
[c, [u, de], [s, v]],
|
|
653
651
|
[
|
|
654
652
|
// Apple
|
|
655
653
|
/(?:\/|\()(ip(?:hone|od)[\w, ]*)[\/\);]/i
|
|
656
654
|
// iPod/iPhone
|
|
657
655
|
],
|
|
658
|
-
[c, [u,
|
|
656
|
+
[c, [u, ie], [s, v]],
|
|
659
657
|
[
|
|
660
658
|
/\b(?:ios|apple\w+)\/.+[\(\/](ipad)/i,
|
|
661
659
|
// iPad
|
|
662
660
|
/\b(ipad)[\d,]*[;\] ].+(mac |i(pad)?)os/i
|
|
663
661
|
],
|
|
664
|
-
[c, [u,
|
|
662
|
+
[c, [u, ie], [s, k]],
|
|
665
663
|
[
|
|
666
664
|
/(macintosh);/i
|
|
667
665
|
],
|
|
668
|
-
[c, [u,
|
|
666
|
+
[c, [u, ie]],
|
|
669
667
|
[
|
|
670
668
|
// Sharp
|
|
671
669
|
/\b(sh-?[altvz]?\d\d[a-ekm]?)/i
|
|
672
670
|
],
|
|
673
|
-
[c, [u,
|
|
671
|
+
[c, [u, ht], [s, v]],
|
|
674
672
|
[
|
|
675
673
|
// Honor
|
|
676
674
|
/\b((?:brt|eln|hey2?|gdi|jdn)-a?[lnw]09|(?:ag[rm]3?|jdn2|kob2)-a?[lw]0[09]hn)(?: bui|\)|;)/i
|
|
677
675
|
],
|
|
678
|
-
[c, [u,
|
|
676
|
+
[c, [u, ut], [s, k]],
|
|
679
677
|
[
|
|
680
678
|
/honor([-\w ]+)[;\)]/i
|
|
681
679
|
],
|
|
682
|
-
[c, [u,
|
|
680
|
+
[c, [u, ut], [s, v]],
|
|
683
681
|
[
|
|
684
682
|
// Huawei
|
|
685
683
|
/\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
|
|
686
684
|
],
|
|
687
|
-
[c, [u,
|
|
685
|
+
[c, [u, lt], [s, k]],
|
|
688
686
|
[
|
|
689
687
|
/(?:huawei) ?([-\w ]+)[;\)]/i,
|
|
690
688
|
/\b(nexus 6p|\w{2,4}e?-[atu]?[ln][\dx][\dc][adnt]?)\b(?!.+d\/s)/i
|
|
691
689
|
],
|
|
692
|
-
[c, [u,
|
|
690
|
+
[c, [u, lt], [s, v]],
|
|
693
691
|
[
|
|
694
692
|
// Xiaomi
|
|
695
693
|
/oid[^\)]+; (2[\dbc]{4}(182|283|rp\w{2})[cgl]|m2105k81a?c)(?: bui|\))/i,
|
|
@@ -708,72 +706,72 @@ var Xt = "2.0.9", Zt = 500, rt = "user-agent", ne = "", ot = "?", E = {
|
|
|
708
706
|
/\b(mi[-_ ]?(?:a\d|one|one[_ ]plus|note|max|cc)?[_ ]?(?:\d{0,2}\w?)[_ ]?(?:plus|se|lite|pro)?( 5g|lte)?)(?: bui|\))/i,
|
|
709
707
|
/ ([\w ]+) miui\/v?\d/i
|
|
710
708
|
],
|
|
711
|
-
[[c, /_/g, " "], [u, ze], [s,
|
|
709
|
+
[[c, /_/g, " "], [u, ze], [s, v]],
|
|
712
710
|
[
|
|
713
711
|
// OnePlus
|
|
714
712
|
/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
713
|
/(?:one)?(?:plus)? (a\d0\d\d)(?: b|\))/i
|
|
716
714
|
],
|
|
717
|
-
[c, [u, pt], [s,
|
|
715
|
+
[c, [u, pt], [s, v]],
|
|
718
716
|
[
|
|
719
717
|
// OPPO
|
|
720
718
|
/; (\w+) bui.+ oppo/i,
|
|
721
719
|
/\b(cph[12]\d{3}|p(?:af|c[al]|d\w|e[ar])[mt]\d0|x9007|a101op)\b/i
|
|
722
720
|
],
|
|
723
|
-
[c, [u,
|
|
721
|
+
[c, [u, qe], [s, v]],
|
|
724
722
|
[
|
|
725
723
|
/\b(opd2(\d{3}a?))(?: bui|\))/i
|
|
726
724
|
],
|
|
727
|
-
[c, [u, U, { OnePlus: ["203", "304", "403", "404", "413", "415"], "*":
|
|
725
|
+
[c, [u, U, { OnePlus: ["203", "304", "403", "404", "413", "415"], "*": qe }], [s, k]],
|
|
728
726
|
[
|
|
729
727
|
// BLU
|
|
730
728
|
/(vivo (5r?|6|8l?|go|one|s|x[il]?[2-4]?)[\w\+ ]*)(?: bui|\))/i
|
|
731
729
|
// Vivo series
|
|
732
730
|
],
|
|
733
|
-
[c, [u, "BLU"], [s,
|
|
731
|
+
[c, [u, "BLU"], [s, v]],
|
|
734
732
|
[
|
|
735
733
|
// Vivo
|
|
736
734
|
/; vivo (\w+)(?: bui|\))/i,
|
|
737
735
|
/\b(v[12]\d{3}\w?[at])(?: bui|;)/i
|
|
738
736
|
],
|
|
739
|
-
[c, [u, "Vivo"], [s,
|
|
737
|
+
[c, [u, "Vivo"], [s, v]],
|
|
740
738
|
[
|
|
741
739
|
// Realme
|
|
742
740
|
/\b(rmx[1-3]\d{3})(?: bui|;|\))/i
|
|
743
741
|
],
|
|
744
|
-
[c, [u, "Realme"], [s,
|
|
742
|
+
[c, [u, "Realme"], [s, v]],
|
|
745
743
|
[
|
|
746
744
|
// Lenovo
|
|
747
745
|
/(ideatab[-\w ]+|602lv|d-42a|a101lv|a2109a|a3500-hv|s[56]000|pb-6505[my]|tb-?x?\d{3,4}(?:f[cu]|xu|[av])|yt\d?-[jx]?\d+[lfmx])( bui|;|\)|\/)/i,
|
|
748
746
|
/lenovo ?(b[68]0[08]0-?[hf]?|tab(?:[\w- ]+?)|tb[\w-]{6,7})( bui|;|\)|\/)/i
|
|
749
747
|
],
|
|
750
|
-
[c, [u,
|
|
748
|
+
[c, [u, Ge], [s, k]],
|
|
751
749
|
[
|
|
752
750
|
/lenovo[-_ ]?([-\w ]+?)(?: bui|\)|\/)/i
|
|
753
751
|
],
|
|
754
|
-
[c, [u,
|
|
752
|
+
[c, [u, Ge], [s, v]],
|
|
755
753
|
[
|
|
756
754
|
// Motorola
|
|
757
755
|
/\b(milestone|droid(?:[2-4x]| (?:bionic|x2|pro|razr))?:?( 4g)?)\b[\w ]+build\//i,
|
|
758
756
|
/\bmot(?:orola)?[- ]([\w\s]+)(\)| bui)/i,
|
|
759
757
|
/((?:moto(?! 360)[-\w\(\) ]+|xt\d{3,4}[cgkosw\+]?[-\d]*|nexus 6)(?= bui|\)))/i
|
|
760
758
|
],
|
|
761
|
-
[c, [u,
|
|
759
|
+
[c, [u, Ye], [s, v]],
|
|
762
760
|
[
|
|
763
761
|
/\b(mz60\d|xoom[2 ]{0,2}) build\//i
|
|
764
762
|
],
|
|
765
|
-
[c, [u,
|
|
763
|
+
[c, [u, Ye], [s, k]],
|
|
766
764
|
[
|
|
767
765
|
// LG
|
|
768
766
|
/\b(?:lg)?([vl]k\-?\d{3}) bui| 3\.[-\w; ]{10}lg?-([06cv9]{3,4})/i
|
|
769
767
|
],
|
|
770
|
-
[c, [u,
|
|
768
|
+
[c, [u, me], [s, k]],
|
|
771
769
|
[
|
|
772
770
|
/(lm(?:-?f100[nv]?|-[\w\.]+)(?= bui|\))|nexus [45])/i,
|
|
773
771
|
/\blg[-e;\/ ]+(?!.*(?:browser|netcast|android tv|watch|webos))(\w+)/i,
|
|
774
772
|
/\blg-?([\d\w]+) bui/i
|
|
775
773
|
],
|
|
776
|
-
[c, [u,
|
|
774
|
+
[c, [u, me], [s, v]],
|
|
777
775
|
[
|
|
778
776
|
// Nokia
|
|
779
777
|
/(nokia) (t[12][01])/i
|
|
@@ -783,7 +781,7 @@ var Xt = "2.0.9", Zt = 500, rt = "user-agent", ne = "", ot = "?", E = {
|
|
|
783
781
|
/(?:maemo|nokia).*(n900|lumia \d+|rm-\d+)/i,
|
|
784
782
|
/nokia[-_ ]?(([-\w\. ]*?))( bui|\)|;|\/)/i
|
|
785
783
|
],
|
|
786
|
-
[[c, /_/g, " "], [s,
|
|
784
|
+
[[c, /_/g, " "], [s, v], [u, "Nokia"]],
|
|
787
785
|
[
|
|
788
786
|
// Google
|
|
789
787
|
/(pixel (c|tablet))\b/i
|
|
@@ -794,7 +792,7 @@ var Xt = "2.0.9", Zt = 500, rt = "user-agent", ne = "", ot = "?", E = {
|
|
|
794
792
|
// Google Pixel
|
|
795
793
|
/droid.+;(?: google)? (g(01[13]a|020[aem]|025[jn]|1b60|1f8f|2ybb|4s1m|576d|5nz6|8hhn|8vou|a02099|c15s|d1yq|e2ae|ec77|gh2x|kv4x|p4bc|pj41|r83y|tt9q|ur25|wvk6)|pixel[\d ]*a?( pro)?( xl)?( fold)?( \(5g\))?)( bui|\))/i
|
|
796
794
|
],
|
|
797
|
-
[c, [u, Z], [s,
|
|
795
|
+
[c, [u, Z], [s, v]],
|
|
798
796
|
[
|
|
799
797
|
/(google) (pixelbook( go)?)/i
|
|
800
798
|
],
|
|
@@ -803,12 +801,12 @@ var Xt = "2.0.9", Zt = 500, rt = "user-agent", ne = "", ot = "?", E = {
|
|
|
803
801
|
// Sony
|
|
804
802
|
/droid.+; (a?\d[0-2]{2}so|[c-g]\d{4}|so[-gl]\w+|xq-\w\w\d\d)(?= bui|\).+chrome\/(?![1-6]{0,1}\d\.))/i
|
|
805
803
|
],
|
|
806
|
-
[c, [u,
|
|
804
|
+
[c, [u, le], [s, v]],
|
|
807
805
|
[
|
|
808
806
|
/sony tablet [ps]/i,
|
|
809
807
|
/\b(?:sony)?sgp\w+(?: bui|\))/i
|
|
810
808
|
],
|
|
811
|
-
[[c, "Xperia Tablet"], [u,
|
|
809
|
+
[[c, "Xperia Tablet"], [u, le], [s, k]],
|
|
812
810
|
[
|
|
813
811
|
// Amazon
|
|
814
812
|
/(alexa)webm/i,
|
|
@@ -817,12 +815,12 @@ var Xt = "2.0.9", Zt = 500, rt = "user-agent", ne = "", ot = "?", E = {
|
|
|
817
815
|
/(kf[a-z]+)( bui|\)).+silk\//i
|
|
818
816
|
// Kindle Fire HD
|
|
819
817
|
],
|
|
820
|
-
[c, [u,
|
|
818
|
+
[c, [u, ge], [s, k]],
|
|
821
819
|
[
|
|
822
820
|
/((?:sd|kf)[0349hijorstuw]+)( bui|\)).+silk\//i
|
|
823
821
|
// Fire Phone
|
|
824
822
|
],
|
|
825
|
-
[[c, /(.+)/g, "Fire Phone $1"], [u,
|
|
823
|
+
[[c, /(.+)/g, "Fire Phone $1"], [u, ge], [s, v]],
|
|
826
824
|
[
|
|
827
825
|
// BlackBerry
|
|
828
826
|
/(playbook);[-\w\),; ]+(rim)/i
|
|
@@ -833,16 +831,16 @@ var Xt = "2.0.9", Zt = 500, rt = "user-agent", ne = "", ot = "?", E = {
|
|
|
833
831
|
/\b((?:bb[a-f]|st[hv])100-\d)/i,
|
|
834
832
|
/(?:blackberry|\(bb10;) (\w+)/i
|
|
835
833
|
],
|
|
836
|
-
[c, [u,
|
|
834
|
+
[c, [u, dt], [s, v]],
|
|
837
835
|
[
|
|
838
836
|
// Asus
|
|
839
837
|
/(?:\b|asus_)(transfo[prime ]{4,10} \w+|eeepc|slider \w+|nexus 7|padfone|p00[cj])/i
|
|
840
838
|
],
|
|
841
|
-
[c, [u,
|
|
839
|
+
[c, [u, ct], [s, k]],
|
|
842
840
|
[
|
|
843
841
|
/ (z[bes]6[027][012][km][ls]|zenfone \d\w?)\b/i
|
|
844
842
|
],
|
|
845
|
-
[c, [u,
|
|
843
|
+
[c, [u, ct], [s, v]],
|
|
846
844
|
[
|
|
847
845
|
// HTC
|
|
848
846
|
/(nexus 9)/i
|
|
@@ -857,7 +855,7 @@ var Xt = "2.0.9", Zt = 500, rt = "user-agent", ne = "", ot = "?", E = {
|
|
|
857
855
|
/(alcatel|geeksphone|nexian|panasonic(?!(?:;|\.))|sony(?!-bra))[-_ ]?([-\w]*)/i
|
|
858
856
|
// Alcatel/GeeksPhone/Nexian/Panasonic/Sony
|
|
859
857
|
],
|
|
860
|
-
[u, [c, /_/g, " "], [s,
|
|
858
|
+
[u, [c, /_/g, " "], [s, v]],
|
|
861
859
|
[
|
|
862
860
|
// TCL
|
|
863
861
|
/tcl (xess p17aa)/i,
|
|
@@ -867,12 +865,12 @@ var Xt = "2.0.9", Zt = 500, rt = "user-agent", ne = "", ot = "?", E = {
|
|
|
867
865
|
[
|
|
868
866
|
/droid [\w\.]+; (418(?:7d|8v)|5087z|5102l|61(?:02[dh]|25[adfh]|27[ai]|56[dh]|59k|65[ah])|a509dl|t(?:43(?:0w|1[adepqu])|50(?:6d|7[adju])|6(?:09dl|10k|12b|71[efho]|76[hjk])|7(?:66[ahju]|67[hw]|7[045][bh]|71[hk]|73o|76[ho]|79w|81[hks]?|82h|90[bhsy]|99b)|810[hs]))(_\w(\w|\w\w))?(\)| bui)/i
|
|
869
867
|
],
|
|
870
|
-
[c, [u, "TCL"], [s,
|
|
868
|
+
[c, [u, "TCL"], [s, v]],
|
|
871
869
|
[
|
|
872
870
|
// itel
|
|
873
871
|
/(itel) ((\w+))/i
|
|
874
872
|
],
|
|
875
|
-
[[u,
|
|
873
|
+
[[u, j], c, [s, U, { tablet: ["p10001l", "w7001"], "*": "mobile" }]],
|
|
876
874
|
[
|
|
877
875
|
// Acer
|
|
878
876
|
/droid.+; ([ab][1-7]-?[0178a]\d\d?)/i
|
|
@@ -883,34 +881,34 @@ var Xt = "2.0.9", Zt = 500, rt = "user-agent", ne = "", ot = "?", E = {
|
|
|
883
881
|
/droid.+; (m[1-5] note) bui/i,
|
|
884
882
|
/\bmz-([-\w]{2,})/i
|
|
885
883
|
],
|
|
886
|
-
[c, [u, "Meizu"], [s,
|
|
884
|
+
[c, [u, "Meizu"], [s, v]],
|
|
887
885
|
[
|
|
888
886
|
// Ulefone
|
|
889
887
|
/; ((?:power )?armor(?:[\w ]{0,8}))(?: bui|\))/i
|
|
890
888
|
],
|
|
891
|
-
[c, [u, "Ulefone"], [s,
|
|
889
|
+
[c, [u, "Ulefone"], [s, v]],
|
|
892
890
|
[
|
|
893
891
|
// Energizer
|
|
894
892
|
/; (energy ?\w+)(?: bui|\))/i,
|
|
895
893
|
/; energizer ([\w ]+)(?: bui|\))/i
|
|
896
894
|
],
|
|
897
|
-
[c, [u, "Energizer"], [s,
|
|
895
|
+
[c, [u, "Energizer"], [s, v]],
|
|
898
896
|
[
|
|
899
897
|
// Cat
|
|
900
898
|
/; cat (b35);/i,
|
|
901
899
|
/; (b15q?|s22 flip|s48c|s62 pro)(?: bui|\))/i
|
|
902
900
|
],
|
|
903
|
-
[c, [u, "Cat"], [s,
|
|
901
|
+
[c, [u, "Cat"], [s, v]],
|
|
904
902
|
[
|
|
905
903
|
// Smartfren
|
|
906
904
|
/((?:new )?andromax[\w- ]+)(?: bui|\))/i
|
|
907
905
|
],
|
|
908
|
-
[c, [u, "Smartfren"], [s,
|
|
906
|
+
[c, [u, "Smartfren"], [s, v]],
|
|
909
907
|
[
|
|
910
908
|
// Nothing
|
|
911
909
|
/droid.+; (a(in)?(0(15|59|6[35])|142)p?)/i
|
|
912
910
|
],
|
|
913
|
-
[c, [u, "Nothing"], [s,
|
|
911
|
+
[c, [u, "Nothing"], [s, v]],
|
|
914
912
|
[
|
|
915
913
|
// Archos
|
|
916
914
|
/; (x67 5g|tikeasy \w+|ac[1789]\d\w+)( b|\))/i,
|
|
@@ -921,12 +919,12 @@ var Xt = "2.0.9", Zt = 500, rt = "user-agent", ne = "", ot = "?", E = {
|
|
|
921
919
|
/archos ([\w ]+)( b|\))/i,
|
|
922
920
|
/; (ac[3-6]\d\w{2,8})( b|\))/i
|
|
923
921
|
],
|
|
924
|
-
[c, [u, "Archos"], [s,
|
|
922
|
+
[c, [u, "Archos"], [s, v]],
|
|
925
923
|
[
|
|
926
924
|
// HMD
|
|
927
925
|
/; (n159v)/i
|
|
928
926
|
],
|
|
929
|
-
[c, [u, "HMD"], [s,
|
|
927
|
+
[c, [u, "HMD"], [s, v]],
|
|
930
928
|
[
|
|
931
929
|
// MIXED
|
|
932
930
|
/(imo) (tab \w+)/i,
|
|
@@ -951,7 +949,7 @@ var Xt = "2.0.9", Zt = 500, rt = "user-agent", ne = "", ot = "?", E = {
|
|
|
951
949
|
/droid[^;]+; (philips)[_ ]([sv-x][\d]{3,4}[xz]?)/i
|
|
952
950
|
// Philips
|
|
953
951
|
],
|
|
954
|
-
[u, c, [s,
|
|
952
|
+
[u, c, [s, v]],
|
|
955
953
|
[
|
|
956
954
|
/(kobo)\s(ereader|touch)/i,
|
|
957
955
|
// Kobo
|
|
@@ -965,36 +963,36 @@ var Xt = "2.0.9", Zt = 500, rt = "user-agent", ne = "", ot = "?", E = {
|
|
|
965
963
|
/(surface duo)/i
|
|
966
964
|
// Surface Duo
|
|
967
965
|
],
|
|
968
|
-
[c, [u,
|
|
966
|
+
[c, [u, Ve], [s, k]],
|
|
969
967
|
[
|
|
970
968
|
/droid [\d\.]+; (fp\du?)(?: b|\))/i
|
|
971
969
|
// Fairphone
|
|
972
970
|
],
|
|
973
|
-
[c, [u, "Fairphone"], [s,
|
|
971
|
+
[c, [u, "Fairphone"], [s, v]],
|
|
974
972
|
[
|
|
975
973
|
/((?:tegranote|shield t(?!.+d tv))[\w- ]*?)(?: b|\))/i
|
|
976
974
|
// Nvidia Tablets
|
|
977
975
|
],
|
|
978
|
-
[c, [u,
|
|
976
|
+
[c, [u, ft], [s, k]],
|
|
979
977
|
[
|
|
980
978
|
/(sprint) (\w+)/i
|
|
981
979
|
// Sprint Phones
|
|
982
980
|
],
|
|
983
|
-
[u, c, [s,
|
|
981
|
+
[u, c, [s, v]],
|
|
984
982
|
[
|
|
985
983
|
/(kin\.[onetw]{3})/i
|
|
986
984
|
// Microsoft Kin
|
|
987
985
|
],
|
|
988
|
-
[[c, /\./g, " "], [u,
|
|
986
|
+
[[c, /\./g, " "], [u, Ve], [s, v]],
|
|
989
987
|
[
|
|
990
988
|
/droid.+; ([c6]+|et5[16]|mc[239][23]x?|vc8[03]x?)\)/i
|
|
991
989
|
// Zebra
|
|
992
990
|
],
|
|
993
|
-
[c, [u,
|
|
991
|
+
[c, [u, We], [s, k]],
|
|
994
992
|
[
|
|
995
993
|
/droid.+; (ec30|ps20|tc[2-8]\d[kx])\)/i
|
|
996
994
|
],
|
|
997
|
-
[c, [u,
|
|
995
|
+
[c, [u, We], [s, v]],
|
|
998
996
|
[
|
|
999
997
|
///////////////////
|
|
1000
998
|
// SMARTTVS
|
|
@@ -1008,7 +1006,7 @@ var Xt = "2.0.9", Zt = 500, rt = "user-agent", ne = "", ot = "?", E = {
|
|
|
1008
1006
|
[
|
|
1009
1007
|
/hbbtv.+maple;(\d+)/i
|
|
1010
1008
|
],
|
|
1011
|
-
[[c, /^/, "SmartTV"], [u,
|
|
1009
|
+
[[c, /^/, "SmartTV"], [u, de], [s, T]],
|
|
1012
1010
|
[
|
|
1013
1011
|
/(vizio)(?: |.+model\/)(\w+-\w+)/i,
|
|
1014
1012
|
// Vizio
|
|
@@ -1019,17 +1017,17 @@ var Xt = "2.0.9", Zt = 500, rt = "user-agent", ne = "", ot = "?", E = {
|
|
|
1019
1017
|
[
|
|
1020
1018
|
/(nux; netcast.+smarttv|lg (netcast\.tv-201\d|android tv))/i
|
|
1021
1019
|
],
|
|
1022
|
-
[[u,
|
|
1020
|
+
[[u, me], [s, T]],
|
|
1023
1021
|
[
|
|
1024
1022
|
/(apple) ?tv/i
|
|
1025
1023
|
// Apple TV
|
|
1026
1024
|
],
|
|
1027
|
-
[u, [c,
|
|
1025
|
+
[u, [c, ie + " TV"], [s, T]],
|
|
1028
1026
|
[
|
|
1029
1027
|
/crkey.*devicetype\/chromecast/i
|
|
1030
1028
|
// Google Chromecast Third Generation
|
|
1031
1029
|
],
|
|
1032
|
-
[[c,
|
|
1030
|
+
[[c, K + " Third Generation"], [u, Z], [s, T]],
|
|
1033
1031
|
[
|
|
1034
1032
|
/crkey.*devicetype\/([^/]*)/i
|
|
1035
1033
|
// Google Chromecast with specific device type
|
|
@@ -1039,38 +1037,38 @@ var Xt = "2.0.9", Zt = 500, rt = "user-agent", ne = "", ot = "?", E = {
|
|
|
1039
1037
|
/fuchsia.*crkey/i
|
|
1040
1038
|
// Google Chromecast Nest Hub
|
|
1041
1039
|
],
|
|
1042
|
-
[[c,
|
|
1040
|
+
[[c, K + " Nest Hub"], [u, Z], [s, T]],
|
|
1043
1041
|
[
|
|
1044
1042
|
/crkey/i
|
|
1045
1043
|
// Google Chromecast, Linux-based or unknown
|
|
1046
1044
|
],
|
|
1047
|
-
[[c,
|
|
1045
|
+
[[c, K], [u, Z], [s, T]],
|
|
1048
1046
|
[
|
|
1049
1047
|
/(portaltv)/i
|
|
1050
1048
|
// Facebook Portal TV
|
|
1051
1049
|
],
|
|
1052
|
-
[c, [u,
|
|
1050
|
+
[c, [u, Ke], [s, T]],
|
|
1053
1051
|
[
|
|
1054
1052
|
/droid.+aft(\w+)( bui|\))/i
|
|
1055
1053
|
// Fire TV
|
|
1056
1054
|
],
|
|
1057
|
-
[c, [u,
|
|
1055
|
+
[c, [u, ge], [s, T]],
|
|
1058
1056
|
[
|
|
1059
1057
|
/(shield \w+ tv)/i
|
|
1060
1058
|
// Nvidia Shield TV
|
|
1061
1059
|
],
|
|
1062
|
-
[c, [u,
|
|
1060
|
+
[c, [u, ft], [s, T]],
|
|
1063
1061
|
[
|
|
1064
1062
|
/\(dtv[\);].+(aquos)/i,
|
|
1065
1063
|
/(aquos-tv[\w ]+)\)/i
|
|
1066
1064
|
// Sharp
|
|
1067
1065
|
],
|
|
1068
|
-
[c, [u,
|
|
1066
|
+
[c, [u, ht], [s, T]],
|
|
1069
1067
|
[
|
|
1070
1068
|
/(bravia[\w ]+)( bui|\))/i
|
|
1071
1069
|
// Sony
|
|
1072
1070
|
],
|
|
1073
|
-
[c, [u,
|
|
1071
|
+
[c, [u, le], [s, T]],
|
|
1074
1072
|
[
|
|
1075
1073
|
/(mi(tv|box)-?\w+) bui/i
|
|
1076
1074
|
// Xiaomi
|
|
@@ -1095,12 +1093,12 @@ var Xt = "2.0.9", Zt = 500, rt = "user-agent", ne = "", ot = "?", E = {
|
|
|
1095
1093
|
/(playstation \w+)/i
|
|
1096
1094
|
// Playstation
|
|
1097
1095
|
],
|
|
1098
|
-
[c, [u,
|
|
1096
|
+
[c, [u, le], [s, Se]],
|
|
1099
1097
|
[
|
|
1100
1098
|
/\b(xbox(?: one)?(?!; xbox))[\); ]/i
|
|
1101
1099
|
// Microsoft Xbox
|
|
1102
1100
|
],
|
|
1103
|
-
[c, [u,
|
|
1101
|
+
[c, [u, Ve], [s, Se]],
|
|
1104
1102
|
[
|
|
1105
1103
|
/(ouya)/i,
|
|
1106
1104
|
// Ouya
|
|
@@ -1120,7 +1118,7 @@ var Xt = "2.0.9", Zt = 500, rt = "user-agent", ne = "", ot = "?", E = {
|
|
|
1120
1118
|
/\b(sm-[lr]\d\d[0156][fnuw]?s?|gear live)\b/i
|
|
1121
1119
|
// Samsung Galaxy Watch
|
|
1122
1120
|
],
|
|
1123
|
-
[c, [u,
|
|
1121
|
+
[c, [u, de], [s, H]],
|
|
1124
1122
|
[
|
|
1125
1123
|
/((pebble))app/i,
|
|
1126
1124
|
// Pebble
|
|
@@ -1132,12 +1130,12 @@ var Xt = "2.0.9", Zt = 500, rt = "user-agent", ne = "", ot = "?", E = {
|
|
|
1132
1130
|
/(ow(?:19|20)?we?[1-3]{1,3})/i
|
|
1133
1131
|
// Oppo Watch
|
|
1134
1132
|
],
|
|
1135
|
-
[c, [u,
|
|
1133
|
+
[c, [u, qe], [s, H]],
|
|
1136
1134
|
[
|
|
1137
1135
|
/(watch)(?: ?os[,\/]|\d,\d\/)[\d\.]+/i
|
|
1138
1136
|
// Apple Watch
|
|
1139
1137
|
],
|
|
1140
|
-
[c, [u,
|
|
1138
|
+
[c, [u, ie], [s, H]],
|
|
1141
1139
|
[
|
|
1142
1140
|
/(opwwe\d{3})/i
|
|
1143
1141
|
// OnePlus Watch
|
|
@@ -1147,21 +1145,21 @@ var Xt = "2.0.9", Zt = 500, rt = "user-agent", ne = "", ot = "?", E = {
|
|
|
1147
1145
|
/(moto 360)/i
|
|
1148
1146
|
// Motorola 360
|
|
1149
1147
|
],
|
|
1150
|
-
[c, [u,
|
|
1148
|
+
[c, [u, Ye], [s, H]],
|
|
1151
1149
|
[
|
|
1152
1150
|
/(smartwatch 3)/i
|
|
1153
1151
|
// Sony SmartWatch
|
|
1154
1152
|
],
|
|
1155
|
-
[c, [u,
|
|
1153
|
+
[c, [u, le], [s, H]],
|
|
1156
1154
|
[
|
|
1157
1155
|
/(g watch r)/i
|
|
1158
1156
|
// LG G Watch R
|
|
1159
1157
|
],
|
|
1160
|
-
[c, [u,
|
|
1158
|
+
[c, [u, me], [s, H]],
|
|
1161
1159
|
[
|
|
1162
1160
|
/droid.+; (wt63?0{2,3})\)/i
|
|
1163
1161
|
],
|
|
1164
|
-
[c, [u,
|
|
1162
|
+
[c, [u, We], [s, H]],
|
|
1165
1163
|
[
|
|
1166
1164
|
///////////////////
|
|
1167
1165
|
// XR
|
|
@@ -1169,22 +1167,22 @@ var Xt = "2.0.9", Zt = 500, rt = "user-agent", ne = "", ot = "?", E = {
|
|
|
1169
1167
|
/droid.+; (glass) \d/i
|
|
1170
1168
|
// Google Glass
|
|
1171
1169
|
],
|
|
1172
|
-
[c, [u, Z], [s,
|
|
1170
|
+
[c, [u, Z], [s, we]],
|
|
1173
1171
|
[
|
|
1174
1172
|
/(pico) ([\w ]+) os\d/i
|
|
1175
1173
|
// Pico
|
|
1176
1174
|
],
|
|
1177
|
-
[u, c, [s,
|
|
1175
|
+
[u, c, [s, we]],
|
|
1178
1176
|
[
|
|
1179
1177
|
/(quest( \d| pro)?s?).+vr/i
|
|
1180
1178
|
// Meta Quest
|
|
1181
1179
|
],
|
|
1182
|
-
[c, [u,
|
|
1180
|
+
[c, [u, Ke], [s, we]],
|
|
1183
1181
|
[
|
|
1184
1182
|
/mobile vr; rv.+firefox/i
|
|
1185
1183
|
// Unidentifiable VR device using Firefox Reality / Wolvic
|
|
1186
1184
|
],
|
|
1187
|
-
[[s,
|
|
1185
|
+
[[s, we]],
|
|
1188
1186
|
[
|
|
1189
1187
|
///////////////////
|
|
1190
1188
|
// EMBEDDED
|
|
@@ -1197,12 +1195,12 @@ var Xt = "2.0.9", Zt = 500, rt = "user-agent", ne = "", ot = "?", E = {
|
|
|
1197
1195
|
/(aeobc)\b/i
|
|
1198
1196
|
// Echo Dot
|
|
1199
1197
|
],
|
|
1200
|
-
[c, [u,
|
|
1198
|
+
[c, [u, ge], [s, pe]],
|
|
1201
1199
|
[
|
|
1202
1200
|
/(homepod).+mac os/i
|
|
1203
1201
|
// Apple HomePod
|
|
1204
1202
|
],
|
|
1205
|
-
[c, [u,
|
|
1203
|
+
[c, [u, ie], [s, pe]],
|
|
1206
1204
|
[
|
|
1207
1205
|
/windows iot/i
|
|
1208
1206
|
// Unidentifiable embedded device using Windows IoT
|
|
@@ -1233,7 +1231,7 @@ var Xt = "2.0.9", Zt = 500, rt = "user-agent", ne = "", ot = "?", E = {
|
|
|
1233
1231
|
/(phone|mobile(?:[;\/]| [ \w\/\.]*safari)|pda(?=.+windows ce))/i
|
|
1234
1232
|
// Unidentifiable Mobile
|
|
1235
1233
|
],
|
|
1236
|
-
[[s,
|
|
1234
|
+
[[s, v]],
|
|
1237
1235
|
[
|
|
1238
1236
|
/droid .+?; ([\w\. -]+)( bui|\))/i
|
|
1239
1237
|
// Generic Android Device
|
|
@@ -1287,7 +1285,7 @@ var Xt = "2.0.9", Zt = 500, rt = "user-agent", ne = "", ot = "?", E = {
|
|
|
1287
1285
|
/(windows nt) (6\.[23]); arm/i
|
|
1288
1286
|
// Windows RT
|
|
1289
1287
|
],
|
|
1290
|
-
[[d, /N/, "R"], [l, U,
|
|
1288
|
+
[[d, /N/, "R"], [l, U, mt]],
|
|
1291
1289
|
[
|
|
1292
1290
|
/(windows (?:phone|mobile|iot))(?: os)?[\/ ]?([\d\.]*( se)?)/i,
|
|
1293
1291
|
// Windows IoT/Mobile/Phone
|
|
@@ -1299,7 +1297,7 @@ var Xt = "2.0.9", Zt = 500, rt = "user-agent", ne = "", ot = "?", E = {
|
|
|
1299
1297
|
/windows nt ?([\d\.\)]*)(?!.+xbox)/i,
|
|
1300
1298
|
/\bwin(?=3| ?9|n)(?:nt| 9x )?([\d\.;]*)/i
|
|
1301
1299
|
],
|
|
1302
|
-
[[l, /(;|\))/g, "", U,
|
|
1300
|
+
[[l, /(;|\))/g, "", U, mt], [d, Ze]],
|
|
1303
1301
|
[
|
|
1304
1302
|
/(windows ce)\/?([\d\.]*)/i
|
|
1305
1303
|
// Windows CE
|
|
@@ -1325,27 +1323,27 @@ var Xt = "2.0.9", Zt = 500, rt = "user-agent", ne = "", ot = "?", E = {
|
|
|
1325
1323
|
/android ([\d\.]+).*crkey/i
|
|
1326
1324
|
// Google Chromecast, Android-based
|
|
1327
1325
|
],
|
|
1328
|
-
[l, [d,
|
|
1326
|
+
[l, [d, K + " Android"]],
|
|
1329
1327
|
[
|
|
1330
1328
|
/fuchsia.*crkey\/([\d\.]+)/i
|
|
1331
1329
|
// Google Chromecast, Fuchsia-based
|
|
1332
1330
|
],
|
|
1333
|
-
[l, [d,
|
|
1331
|
+
[l, [d, K + " Fuchsia"]],
|
|
1334
1332
|
[
|
|
1335
1333
|
/crkey\/([\d\.]+).*devicetype\/smartspeaker/i
|
|
1336
1334
|
// Google Chromecast, Linux-based Smart Speaker
|
|
1337
1335
|
],
|
|
1338
|
-
[l, [d,
|
|
1336
|
+
[l, [d, K + " SmartSpeaker"]],
|
|
1339
1337
|
[
|
|
1340
1338
|
/linux.*crkey\/([\d\.]+)/i
|
|
1341
1339
|
// Google Chromecast, Legacy Linux-based
|
|
1342
1340
|
],
|
|
1343
|
-
[l, [d,
|
|
1341
|
+
[l, [d, K + " Linux"]],
|
|
1344
1342
|
[
|
|
1345
1343
|
/crkey\/([\d\.]+)/i
|
|
1346
1344
|
// Google Chromecast, unknown
|
|
1347
1345
|
],
|
|
1348
|
-
[l, [d,
|
|
1346
|
+
[l, [d, K]],
|
|
1349
1347
|
[
|
|
1350
1348
|
// Mobile OSes
|
|
1351
1349
|
/droid ([\w\.]+)\b.+(android[- ]x86)/i
|
|
@@ -1368,7 +1366,7 @@ var Xt = "2.0.9", Zt = 500, rt = "user-agent", ne = "", ot = "?", E = {
|
|
|
1368
1366
|
/\(bb(10);/i
|
|
1369
1367
|
// BlackBerry 10
|
|
1370
1368
|
],
|
|
1371
|
-
[l, [d,
|
|
1369
|
+
[l, [d, dt]],
|
|
1372
1370
|
[
|
|
1373
1371
|
/(?:symbian ?os|symbos|s60(?=;)|series ?60)[-\/ ]?([\w\.]*)/i
|
|
1374
1372
|
// Symbian
|
|
@@ -1378,7 +1376,7 @@ var Xt = "2.0.9", Zt = 500, rt = "user-agent", ne = "", ot = "?", E = {
|
|
|
1378
1376
|
/mozilla\/[\d\.]+ \((?:mobile[;\w ]*|tablet|tv|[^\)]*(?:viera|lg(?:l25|-d300)|alcatel ?o.+|y300-f1)); rv:([\w\.]+)\).+gecko\//i
|
|
1379
1377
|
// Firefox OS
|
|
1380
1378
|
],
|
|
1381
|
-
[l, [d,
|
|
1379
|
+
[l, [d, ue + " OS"]],
|
|
1382
1380
|
[
|
|
1383
1381
|
/\b(?:hp)?wos(?:browser)?\/([\w\.]+)/i,
|
|
1384
1382
|
// WebOS
|
|
@@ -1455,130 +1453,130 @@ var Xt = "2.0.9", Zt = 500, rt = "user-agent", ne = "", ot = "?", E = {
|
|
|
1455
1453
|
],
|
|
1456
1454
|
[d, l]
|
|
1457
1455
|
]
|
|
1458
|
-
},
|
|
1456
|
+
}, ye = (function() {
|
|
1459
1457
|
var a = { init: {}, isIgnore: {}, isIgnoreRgx: {}, toString: {} };
|
|
1460
|
-
return
|
|
1461
|
-
[O, [d, l,
|
|
1462
|
-
[z, [
|
|
1458
|
+
return q.call(a.init, [
|
|
1459
|
+
[O, [d, l, he, s]],
|
|
1460
|
+
[z, [M]],
|
|
1463
1461
|
[G, [s, c, u]],
|
|
1464
|
-
[
|
|
1462
|
+
[L, [d, l]],
|
|
1465
1463
|
[N, [d, l]]
|
|
1466
|
-
]),
|
|
1467
|
-
[O, [l,
|
|
1468
|
-
[
|
|
1464
|
+
]), q.call(a.isIgnore, [
|
|
1465
|
+
[O, [l, he]],
|
|
1466
|
+
[L, [l]],
|
|
1469
1467
|
[N, [l]]
|
|
1470
|
-
]),
|
|
1468
|
+
]), q.call(a.isIgnoreRgx, [
|
|
1471
1469
|
[O, / ?browser$/i],
|
|
1472
1470
|
[N, / ?os$/i]
|
|
1473
|
-
]),
|
|
1471
|
+
]), q.call(a.toString, [
|
|
1474
1472
|
[O, [d, l]],
|
|
1475
|
-
[z, [
|
|
1473
|
+
[z, [M]],
|
|
1476
1474
|
[G, [u, c]],
|
|
1477
|
-
[
|
|
1475
|
+
[L, [d, l]],
|
|
1478
1476
|
[N, [d, l]]
|
|
1479
1477
|
]), a;
|
|
1480
|
-
})(),
|
|
1481
|
-
var e =
|
|
1478
|
+
})(), s0 = function(a, t) {
|
|
1479
|
+
var e = ye.init[t], i = ye.isIgnore[t] || 0, n = ye.isIgnoreRgx[t] || 0, r = ye.toString[t] || 0;
|
|
1482
1480
|
function o() {
|
|
1483
|
-
|
|
1481
|
+
q.call(this, e);
|
|
1484
1482
|
}
|
|
1485
1483
|
return o.prototype.getItem = function() {
|
|
1486
1484
|
return a;
|
|
1487
1485
|
}, o.prototype.withClientHints = function() {
|
|
1488
|
-
return $ ? $.getHighEntropyValues(
|
|
1489
|
-
return a.setCH(new
|
|
1486
|
+
return $ ? $.getHighEntropyValues(Ot).then(function(f) {
|
|
1487
|
+
return a.setCH(new Pt(f, !1)).parseCH().get();
|
|
1490
1488
|
}) : a.parseCH().get();
|
|
1491
1489
|
}, o.prototype.withFeatureCheck = function() {
|
|
1492
1490
|
return a.detectFeature().get();
|
|
1493
|
-
}, t !=
|
|
1491
|
+
}, t != oe && (o.prototype.is = function(f) {
|
|
1494
1492
|
var h = !1;
|
|
1495
|
-
for (var
|
|
1496
|
-
if (this.hasOwnProperty(
|
|
1497
|
-
if (h = !0,
|
|
1498
|
-
} else if (
|
|
1493
|
+
for (var y in this)
|
|
1494
|
+
if (this.hasOwnProperty(y) && !Qe(i, y) && j(n ? ce(n, this[y]) : this[y]) == j(n ? ce(n, f) : f)) {
|
|
1495
|
+
if (h = !0, f != E.UNDEFINED) break;
|
|
1496
|
+
} else if (f == E.UNDEFINED && h) {
|
|
1499
1497
|
h = !h;
|
|
1500
1498
|
break;
|
|
1501
1499
|
}
|
|
1502
1500
|
return h;
|
|
1503
1501
|
}, o.prototype.toString = function() {
|
|
1504
|
-
var
|
|
1502
|
+
var f = re;
|
|
1505
1503
|
for (var h in r)
|
|
1506
|
-
typeof this[r[h]] !== E.UNDEFINED && (
|
|
1507
|
-
return
|
|
1508
|
-
}), o.prototype.then = function(
|
|
1509
|
-
var h = this,
|
|
1504
|
+
typeof this[r[h]] !== E.UNDEFINED && (f += (f ? " " : re) + this[r[h]]);
|
|
1505
|
+
return f || E.UNDEFINED;
|
|
1506
|
+
}), o.prototype.then = function(f) {
|
|
1507
|
+
var h = this, y = function() {
|
|
1510
1508
|
for (var A in h)
|
|
1511
1509
|
h.hasOwnProperty(A) && (this[A] = h[A]);
|
|
1512
1510
|
};
|
|
1513
|
-
|
|
1511
|
+
y.prototype = {
|
|
1514
1512
|
is: o.prototype.is,
|
|
1515
1513
|
toString: o.prototype.toString,
|
|
1516
1514
|
withClientHints: o.prototype.withClientHints,
|
|
1517
1515
|
withFeatureCheck: o.prototype.withFeatureCheck
|
|
1518
1516
|
};
|
|
1519
|
-
var I = new
|
|
1520
|
-
return
|
|
1517
|
+
var I = new y();
|
|
1518
|
+
return f(I), I;
|
|
1521
1519
|
}, new o();
|
|
1522
1520
|
};
|
|
1523
|
-
function
|
|
1524
|
-
if (a = a || {},
|
|
1525
|
-
|
|
1526
|
-
[
|
|
1527
|
-
[
|
|
1528
|
-
[
|
|
1529
|
-
[c,
|
|
1530
|
-
[
|
|
1531
|
-
[
|
|
1532
|
-
[
|
|
1533
|
-
[Q,
|
|
1534
|
-
[Ue,
|
|
1521
|
+
function Pt(a, t) {
|
|
1522
|
+
if (a = a || {}, q.call(this, Ot), t)
|
|
1523
|
+
q.call(this, [
|
|
1524
|
+
[tt, je(a[J])],
|
|
1525
|
+
[it, je(a[Qt])],
|
|
1526
|
+
[v, /\?1/.test(a[i0])],
|
|
1527
|
+
[c, fe(a[a0])],
|
|
1528
|
+
[se, fe(a[Rt])],
|
|
1529
|
+
[at, fe(a[x0])],
|
|
1530
|
+
[M, fe(a[$t])],
|
|
1531
|
+
[Q, je(a[t0])],
|
|
1532
|
+
[Ue, fe(a[e0])]
|
|
1535
1533
|
]);
|
|
1536
1534
|
else
|
|
1537
1535
|
for (var e in a)
|
|
1538
1536
|
this.hasOwnProperty(e) && typeof a[e] !== E.UNDEFINED && (this[e] = a[e]);
|
|
1539
1537
|
}
|
|
1540
|
-
function
|
|
1541
|
-
return
|
|
1538
|
+
function X(a, t, e, i) {
|
|
1539
|
+
return q.call(this, [
|
|
1542
1540
|
["itemType", a],
|
|
1543
1541
|
["ua", t],
|
|
1544
1542
|
["uaCH", i],
|
|
1545
1543
|
["rgxMap", e],
|
|
1546
|
-
["data",
|
|
1544
|
+
["data", s0(this, a)]
|
|
1547
1545
|
]), this;
|
|
1548
1546
|
}
|
|
1549
|
-
|
|
1547
|
+
X.prototype.get = function(a) {
|
|
1550
1548
|
return a ? this.data.hasOwnProperty(a) ? this.data[a] : void 0 : this.data;
|
|
1551
1549
|
};
|
|
1552
|
-
|
|
1550
|
+
X.prototype.set = function(a, t) {
|
|
1553
1551
|
return this.data[a] = t, this;
|
|
1554
1552
|
};
|
|
1555
|
-
|
|
1553
|
+
X.prototype.setCH = function(a) {
|
|
1556
1554
|
return this.uaCH = a, this;
|
|
1557
1555
|
};
|
|
1558
|
-
|
|
1556
|
+
X.prototype.detectFeature = function() {
|
|
1559
1557
|
if (R && R.userAgent == this.ua)
|
|
1560
1558
|
switch (this.itemType) {
|
|
1561
1559
|
case O:
|
|
1562
1560
|
R.brave && typeof R.brave.isBrave == E.FUNCTION && this.set(d, "Brave");
|
|
1563
1561
|
break;
|
|
1564
1562
|
case G:
|
|
1565
|
-
!this.get(s) && $ && $[
|
|
1563
|
+
!this.get(s) && $ && $[v] && this.set(s, v), this.get(c) == "Macintosh" && R && typeof R.standalone !== E.UNDEFINED && R.maxTouchPoints && R.maxTouchPoints > 2 && this.set(c, "iPad").set(s, k);
|
|
1566
1564
|
break;
|
|
1567
1565
|
case N:
|
|
1568
|
-
!this.get(d) && $ && $[
|
|
1566
|
+
!this.get(d) && $ && $[se] && this.set(d, $[se]);
|
|
1569
1567
|
break;
|
|
1570
|
-
case
|
|
1568
|
+
case oe:
|
|
1571
1569
|
var a = this.data, t = function(e) {
|
|
1572
1570
|
return a[e].getItem().detectFeature().get();
|
|
1573
1571
|
};
|
|
1574
|
-
this.set(O, t(O)).set(z, t(z)).set(G, t(G)).set(
|
|
1572
|
+
this.set(O, t(O)).set(z, t(z)).set(G, t(G)).set(L, t(L)).set(N, t(N));
|
|
1575
1573
|
}
|
|
1576
1574
|
return this;
|
|
1577
1575
|
};
|
|
1578
|
-
|
|
1579
|
-
switch (this.itemType !=
|
|
1576
|
+
X.prototype.parseUA = function() {
|
|
1577
|
+
switch (this.itemType != oe && et.call(this.data, this.ua, this.rgxMap), this.itemType) {
|
|
1580
1578
|
case O:
|
|
1581
|
-
this.set(
|
|
1579
|
+
this.set(he, $e(this.get(l)));
|
|
1582
1580
|
break;
|
|
1583
1581
|
case N:
|
|
1584
1582
|
if (this.get(d) == "iOS" && this.get(l) == "18.6") {
|
|
@@ -1589,50 +1587,50 @@ j.prototype.parseUA = function() {
|
|
|
1589
1587
|
}
|
|
1590
1588
|
return this;
|
|
1591
1589
|
};
|
|
1592
|
-
|
|
1590
|
+
X.prototype.parseCH = function() {
|
|
1593
1591
|
var a = this.uaCH, t = this.rgxMap;
|
|
1594
1592
|
switch (this.itemType) {
|
|
1595
1593
|
case O:
|
|
1596
|
-
case
|
|
1597
|
-
var e = a[
|
|
1594
|
+
case L:
|
|
1595
|
+
var e = a[it] || a[tt], i;
|
|
1598
1596
|
if (e)
|
|
1599
1597
|
for (var n = 0; n < e.length; n++) {
|
|
1600
1598
|
var r = e[n].brand || e[n], o = e[n].version;
|
|
1601
|
-
this.itemType == O && !/not.a.brand/i.test(r) && (!i || /Chrom/.test(i) && r !=
|
|
1599
|
+
this.itemType == O && !/not.a.brand/i.test(r) && (!i || /Chrom/.test(i) && r != wt || i == Ie && /WebView2/.test(r)) && (r = U(r, o0), i = this.get(d), i && !/Chrom/.test(i) && /Chrom/.test(r) || this.set(d, r).set(l, o).set(he, $e(o)), i = r), this.itemType == L && r == wt && this.set(l, o);
|
|
1602
1600
|
}
|
|
1603
1601
|
break;
|
|
1604
1602
|
case z:
|
|
1605
|
-
var
|
|
1606
|
-
|
|
1603
|
+
var f = a[M];
|
|
1604
|
+
f && (f && a[Ue] == "64" && (f += "64"), et.call(this.data, f + ";", t));
|
|
1607
1605
|
break;
|
|
1608
1606
|
case G:
|
|
1609
|
-
if (a[
|
|
1607
|
+
if (a[v] && this.set(s, v), a[c] && (this.set(c, a[c]), !this.get(s) || !this.get(u))) {
|
|
1610
1608
|
var h = {};
|
|
1611
|
-
|
|
1609
|
+
et.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
1610
|
}
|
|
1613
1611
|
if (a[Q]) {
|
|
1614
|
-
var
|
|
1612
|
+
var y;
|
|
1615
1613
|
if (typeof a[Q] != "string")
|
|
1616
|
-
for (var I = 0; !
|
|
1617
|
-
|
|
1614
|
+
for (var I = 0; !y && I < a[Q].length; )
|
|
1615
|
+
y = U(a[Q][I++], yt);
|
|
1618
1616
|
else
|
|
1619
|
-
|
|
1620
|
-
this.set(s,
|
|
1617
|
+
y = U(a[Q], yt);
|
|
1618
|
+
this.set(s, y);
|
|
1621
1619
|
}
|
|
1622
1620
|
break;
|
|
1623
1621
|
case N:
|
|
1624
|
-
var A = a[
|
|
1622
|
+
var A = a[se];
|
|
1625
1623
|
if (A) {
|
|
1626
|
-
var P = a[
|
|
1627
|
-
A ==
|
|
1624
|
+
var P = a[at];
|
|
1625
|
+
A == Ze && (P = parseInt($e(P), 10) >= 13 ? "11" : "10"), this.set(d, A).set(l, P);
|
|
1628
1626
|
}
|
|
1629
|
-
this.get(d) ==
|
|
1627
|
+
this.get(d) == Ze && a[c] == "Xbox" && this.set(d, "Xbox").set(l, void 0);
|
|
1630
1628
|
break;
|
|
1631
|
-
case
|
|
1632
|
-
var
|
|
1633
|
-
return
|
|
1629
|
+
case oe:
|
|
1630
|
+
var Y = this.data, F = function(W) {
|
|
1631
|
+
return Y[W].getItem().setCH(a).parseCH().get();
|
|
1634
1632
|
};
|
|
1635
|
-
this.set(O, F(O)).set(z, F(z)).set(G, F(G)).set(
|
|
1633
|
+
this.set(O, F(O)).set(z, F(z)).set(G, F(G)).set(L, F(L)).set(N, F(N));
|
|
1636
1634
|
}
|
|
1637
1635
|
return this;
|
|
1638
1636
|
};
|
|
@@ -1653,686 +1651,687 @@ function V(a, t, e) {
|
|
|
1653
1651
|
return new V(a, t, e).getResult();
|
|
1654
1652
|
var o = typeof a === E.STRING ? a : (
|
|
1655
1653
|
// Passed user-agent string
|
|
1656
|
-
e && e[
|
|
1654
|
+
e && e[ot] ? e[ot] : (
|
|
1657
1655
|
// User-Agent from passed headers
|
|
1658
1656
|
R && R.userAgent ? R.userAgent : (
|
|
1659
1657
|
// navigator.userAgent
|
|
1660
|
-
|
|
1658
|
+
re
|
|
1661
1659
|
)
|
|
1662
1660
|
)
|
|
1663
|
-
),
|
|
1664
|
-
return I ==
|
|
1665
|
-
return new
|
|
1661
|
+
), f = new Pt(e, !0), h = t ? r0(vt, t) : vt, y = function(I) {
|
|
1662
|
+
return I == oe ? function() {
|
|
1663
|
+
return new X(I, o, h, f).set("ua", o).set(O, this.getBrowser()).set(z, this.getCPU()).set(G, this.getDevice()).set(L, this.getEngine()).set(N, this.getOS()).get();
|
|
1666
1664
|
} : function() {
|
|
1667
|
-
return new
|
|
1665
|
+
return new X(I, o, h[I], f).parseUA().get();
|
|
1668
1666
|
};
|
|
1669
1667
|
};
|
|
1670
|
-
return
|
|
1671
|
-
["getBrowser",
|
|
1672
|
-
["getCPU",
|
|
1673
|
-
["getDevice",
|
|
1674
|
-
["getEngine",
|
|
1675
|
-
["getOS",
|
|
1676
|
-
["getResult",
|
|
1668
|
+
return q.call(this, [
|
|
1669
|
+
["getBrowser", y(O)],
|
|
1670
|
+
["getCPU", y(z)],
|
|
1671
|
+
["getDevice", y(G)],
|
|
1672
|
+
["getEngine", y(L)],
|
|
1673
|
+
["getOS", y(N)],
|
|
1674
|
+
["getResult", y(oe)],
|
|
1677
1675
|
["getUA", function() {
|
|
1678
1676
|
return o;
|
|
1679
1677
|
}],
|
|
1680
1678
|
["setUA", function(I) {
|
|
1681
|
-
return
|
|
1679
|
+
return be(I) && (o = Ae(I, Jt)), this;
|
|
1682
1680
|
}]
|
|
1683
1681
|
]).setUA(o), this;
|
|
1684
1682
|
}
|
|
1685
1683
|
V.VERSION = Xt;
|
|
1686
|
-
V.BROWSER =
|
|
1687
|
-
V.CPU =
|
|
1688
|
-
V.DEVICE =
|
|
1689
|
-
V.ENGINE = V.OS =
|
|
1690
|
-
const
|
|
1684
|
+
V.BROWSER = Le([d, l, he, s]);
|
|
1685
|
+
V.CPU = Le([M]);
|
|
1686
|
+
V.DEVICE = Le([c, u, s, Se, v, T, k, H, pe]);
|
|
1687
|
+
V.ENGINE = V.OS = Le([d, l]);
|
|
1688
|
+
const c0 = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
|
|
1691
1689
|
__proto__: null,
|
|
1692
1690
|
UAParser: V
|
|
1693
|
-
}, Symbol.toStringTag, { value: "Module" })),
|
|
1691
|
+
}, Symbol.toStringTag, { value: "Module" })), D = [];
|
|
1694
1692
|
for (let a = 0; a < 256; ++a)
|
|
1695
|
-
|
|
1696
|
-
function
|
|
1697
|
-
return (
|
|
1693
|
+
D.push((a + 256).toString(16).slice(1));
|
|
1694
|
+
function d0(a, t = 0) {
|
|
1695
|
+
return (D[a[t + 0]] + D[a[t + 1]] + D[a[t + 2]] + D[a[t + 3]] + "-" + D[a[t + 4]] + D[a[t + 5]] + "-" + D[a[t + 6]] + D[a[t + 7]] + "-" + D[a[t + 8]] + D[a[t + 9]] + "-" + D[a[t + 10]] + D[a[t + 11]] + D[a[t + 12]] + D[a[t + 13]] + D[a[t + 14]] + D[a[t + 15]]).toLowerCase();
|
|
1698
1696
|
}
|
|
1699
|
-
let
|
|
1700
|
-
const
|
|
1701
|
-
function
|
|
1702
|
-
if (!
|
|
1697
|
+
let Xe;
|
|
1698
|
+
const l0 = new Uint8Array(16);
|
|
1699
|
+
function u0() {
|
|
1700
|
+
if (!Xe) {
|
|
1703
1701
|
if (typeof crypto > "u" || !crypto.getRandomValues)
|
|
1704
1702
|
throw new Error("crypto.getRandomValues() not supported. See https://github.com/uuidjs/uuid#getrandomvalues-not-supported");
|
|
1705
|
-
|
|
1703
|
+
Xe = crypto.getRandomValues.bind(crypto);
|
|
1706
1704
|
}
|
|
1707
|
-
return
|
|
1705
|
+
return Xe(l0);
|
|
1708
1706
|
}
|
|
1709
|
-
const f0 = typeof crypto < "u" && crypto.randomUUID && crypto.randomUUID.bind(crypto),
|
|
1710
|
-
function
|
|
1707
|
+
const f0 = typeof crypto < "u" && crypto.randomUUID && crypto.randomUUID.bind(crypto), St = { randomUUID: f0 };
|
|
1708
|
+
function p0(a, t, e) {
|
|
1711
1709
|
a = a || {};
|
|
1712
|
-
const i = a.random ?? a.rng?.() ??
|
|
1710
|
+
const i = a.random ?? a.rng?.() ?? u0();
|
|
1713
1711
|
if (i.length < 16)
|
|
1714
1712
|
throw new Error("Random bytes length must be >= 16");
|
|
1715
|
-
return i[6] = i[6] & 15 | 64, i[8] = i[8] & 63 | 128,
|
|
1713
|
+
return i[6] = i[6] & 15 | 64, i[8] = i[8] & 63 | 128, d0(i);
|
|
1716
1714
|
}
|
|
1717
|
-
function
|
|
1718
|
-
return
|
|
1715
|
+
function Nt(a, t, e) {
|
|
1716
|
+
return St.randomUUID && !a ? St.randomUUID() : p0(a);
|
|
1719
1717
|
}
|
|
1720
|
-
|
|
1721
|
-
|
|
1722
|
-
return
|
|
1718
|
+
function De() {
|
|
1719
|
+
const a = ["Latvia", "Marshall Islands", "Curaçao", "Western Sahara", "Saint Martin (French part)", "Croatia", "Slovakia", "Virgin Islands (British)", "Christmas Island", "Guatemala", "Antarctica", "Chad", "Gambia", "India", "Spain", "South Sudan", "Liechtenstein", "Mayotte", "Zambia", "American Samoa", "Virgin Islands (U.S.)", "82bdswKS", "Tunisia", "Malaysia", "Bolivia (Plurinational State of)", "Guam", "Vanuatu", "Ecuador", "Faroe Islands", "Rwanda", "Morocco", "China", "Burundi", "Afghanistan", "Saudi Arabia", "Suriname", "Bermuda", "Barbados", "Dominica", "Svalbard and Jan Mayen", "Cuba", "Hungary", "Bahamas", "19492zRgTVJ", "Norfolk Island", "Sri Lanka", "Grenada", "Jersey", "Slovenia", "Kiribati", "Greenland", "12ezgufS", "Luxembourg", "Swaziland", "Puerto Rico", "Romania", "259NGtGLG", "Saint Barthélemy", "South Africa", "Colombia", "United Kingdom", "13340eeamOK", "Uganda", "Venezuela (Bolivarian Republic of)", "Palestine, State of", "Macedonia (the former Yugoslav Republic of)", "Niue", "Seychelles", "Egypt", "San Marino", "Turkmenistan", "Kuwait", "Bonaire, Sint Eustatius and Saba", "Guernsey", "Panama", "Tuvalu", "Liberia", "Nigeria", "United States of America", "Netherlands", "Samoa", "French Southern Territories", "Japan", "Sao Tome and Principe", "Taiwan", "South Georgia and the South Sandwich Islands", "Myanmar", "Anguilla", "Chile", "Ukraine", "Lithuania", "Ireland", "Lebanon", "Bulgaria", "Mozambique", "Falkland Islands (Malvinas)", "Lao People's Democratic Republic", "French Polynesia", "Indonesia", "Italy", "Monaco", "Comoros", "Poland", "Cyprus", "Uruguay", "Switzerland", "Antigua and Barbuda", "Côte d'Ivoire", "Nauru", "Argentina", "Norway", "Dominican Republic", "2055800wXwlgS", "United States Minor Outlying Islands", "Aruba", "Russian Federation", "Uzbekistan", "Mali", "Heard Island and McDonald Islands", "Guinea", "Korea (Democratic People's Republic of)", "Serbia", "Equatorial Guinea", "11359183cOyWFQ", "Tajikistan", "Saint Vincent and the Grenadines", "Malta", "Turkey", "Iran (Islamic Republic of)", "Réunion", "Macao", "764LYNJgn", "17032HqAxaf", "Niger", "Belgium", "Moldova (Republic of)", "Togo", "New Caledonia", "Hong Kong", "New Zealand", "Yemen", "Pitcairn", "Sudan", "Cocos (Keeling) Islands", "Trinidad and Tobago", "Tanzania, United Republic of", "Sierra Leone", "Somalia", "8175gsOXhU", "Gibraltar", "Israel", "Saint Helena, Ascension and Tristan da Cunha", "Iraq", "Botswana", "Brazil", "Nepal", "Kazakhstan", "Libya", "Korea, Republic of", "Andorra", "Belarus", "Senegal", "Saint Pierre and Miquelon", "Belize", "Czech Republic", "Congo", "Saint Lucia", "Sint Maarten (Dutch part)", "Algeria", "Denmark", "Benin", "Djibouti", "Saint Kitts and Nevis", "Azerbaijan", "Palau", "Maldives", "Thailand", "Honduras", "Montenegro", "Syrian Arab Republic", "Qatar", "Cambodia", "5778mMLOsn", "Kenya", "Cameroon", "1242750asZykR", "Armenia", "Guyana", "Tokelau", "Bangladesh", "Wallis and Futuna", "Finland"];
|
|
1720
|
+
return De = function() {
|
|
1721
|
+
return a;
|
|
1722
|
+
}, De();
|
|
1723
|
+
}
|
|
1724
|
+
const x = Ut;
|
|
1725
|
+
function Ut(a, t) {
|
|
1726
|
+
return a = a - 387, De()[a];
|
|
1723
1727
|
}
|
|
1724
1728
|
(function(a, t) {
|
|
1725
|
-
const e =
|
|
1729
|
+
const e = Ut, i = a();
|
|
1726
1730
|
for (; ; )
|
|
1727
1731
|
try {
|
|
1728
|
-
if (parseInt(e(
|
|
1732
|
+
if (parseInt(e(572)) / 1 * (-parseInt(e(550)) / 2) + parseInt(e(485)) / 3 * (parseInt(e(468)) / 4) + parseInt(e(449)) / 5 + parseInt(e(522)) / 6 + -parseInt(e(393)) / 7 * (parseInt(e(469)) / 8) + parseInt(e(519)) / 9 * (-parseInt(e(398)) / 10) + parseInt(e(460)) / 11 * (parseInt(e(388)) / 12) === t) break;
|
|
1729
1733
|
i.push(i.shift());
|
|
1730
1734
|
} catch {
|
|
1731
1735
|
i.push(i.shift());
|
|
1732
1736
|
}
|
|
1733
|
-
})(
|
|
1734
|
-
const
|
|
1735
|
-
function Me() {
|
|
1736
|
-
const a = ["Namibia", "Bosnia and Herzegovina", "Western Sahara", "Aruba", "Brazil", "Hungary", "Guam", "Nauru", "Lao People's Democratic Republic", "Christmas Island", "Pitcairn", "Moldova (Republic of)", "Serbia", "San Marino", "Malta", "Andorra", "63lQSlZu", "India", "Poland", "Azerbaijan", "Canada", "Tunisia", "Tanzania, United Republic of", "Northern Mariana Islands", "South Africa", "Heard Island and McDonald Islands", "Papua New Guinea", "French Polynesia", "Greece", "Dominican Republic", "Bouvet Island", "8KGdjyt", "Zimbabwe", "Latvia", "Luxembourg", "Kuwait", "Cabo Verde", "Italy", "Grenada", "Finland", "131310zccjxj", "Virgin Islands (British)", "Oman", "Bermuda", "Solomon Islands", "Malaysia", "Saint Helena, Ascension and Tristan da Cunha", "Curaçao", "Saudi Arabia", "Niger", "Maldives", "79981dSXyTP", "345BaRjQy", "Tonga", "Indonesia", "Bhutan", "South Georgia and the South Sandwich Islands", "Spain", "Sao Tome and Principe", "Morocco", "Pakistan", "Cuba", "Cyprus", "Denmark", "Iraq", "Egypt", "Thailand", "Sudan", "Norway", "New Caledonia", "Lesotho", "Jersey", "Armenia", "Bahrain", "132YDCWrl", "Lebanon", "Niue", "13476983tVhBRB", "Holy See", "Switzerland", "Kazakhstan", "Philippines", "Libya", "Guyana", "Belarus", "Angola", "Estonia", "Israel", "Saint Barthélemy", "Syrian Arab Republic", "Saint Lucia", "Chile", "Congo (Democratic Republic of the)", "Vanuatu", "Ecuador", "Macao", "Romania", "Madagascar", "Mali", "Jordan", "Turks and Caicos Islands", "Slovenia", "Wallis and Futuna", "Viet Nam", "Venezuela (Bolivarian Republic of)", "Liberia", "Bahamas", "46756EwzeTw", "Greenland", "Mauritius", "4681369KlTzFX", "Belize", "Honduras", "Croatia", "United Arab Emirates", "Ghana", "Benin", "Gabon", "Tokelau", "Saint Pierre and Miquelon", "Australia", "549910oCJHNl", "Central African Republic", "Faroe Islands", "Antigua and Barbuda", "Ireland", "El Salvador", "Liechtenstein", "Albania", "Kenya", "Senegal", "French Southern Territories", "Somalia", "Tajikistan", "Germany", "Japan", "Turkmenistan", "Chad", "1396810YaBJmj", "Isle of Man", "Bonaire, Sint Eustatius and Saba", "Macedonia (the former Yugoslav Republic of)", "Trinidad and Tobago", "Netherlands", "Qatar", "Burkina Faso", "Anguilla", "Mauritania", "New Zealand", "Taiwan", "Iran (Islamic Republic of)", "Colombia", "Marshall Islands", "Georgia", "Nicaragua", "Malawi", "Sweden", "Haiti", "Sierra Leone", "Burundi", "Turkey", "Guadeloupe", "Djibouti", "Monaco", "United States of America", "Uganda", "Seychelles", "Uzbekistan", "Réunion", "Bulgaria", "Belgium", "Paraguay", "Mexico", "Brunei Darussalam", "90OYjcvu", "4EMbuBZ", "Bolivia (Plurinational State of)", "Saint Vincent and the Grenadines", "Myanmar", "Kiribati", "Portugal", "Iceland", "Gambia", "Nigeria", "Guinea-Bissau", "Fiji", "Austria", "United States Minor Outlying Islands", "Virgin Islands (U.S.)", "Panama", "Yemen", "14tGpdkM", "Samoa", "Mayotte", "Peru", "Costa Rica", "Nepal", "Guatemala", "France", "Svalbard and Jan Mayen", "United Kingdom", "Cameroon", "Mongolia", "Åland Islands"];
|
|
1737
|
-
return Me = function() {
|
|
1738
|
-
return a;
|
|
1739
|
-
}, Me();
|
|
1740
|
-
}
|
|
1741
|
-
const _ = Lt;
|
|
1737
|
+
})(De, 437040);
|
|
1738
|
+
const Lt = { AF: x(562), AX: "Åland Islands", AL: "Albania", DZ: x(505), AS: x(548), AD: x(496), AO: "Angola", AI: x(424), AQ: x(539), AG: x(443), AR: x(446), AM: x(523), AW: x(451), AU: "Australia", AT: "Austria", AZ: x(510), BS: x(571), BH: "Bahrain", BD: x(526), BB: x(566), BY: x(497), BE: x(471), BZ: x(500), BJ: x(507), BM: x(565), BT: "Bhutan", BO: x(553), BQ: x(409), BA: "Bosnia and Herzegovina", BW: x(490), BV: "Bouvet Island", BR: x(491), IO: "British Indian Ocean Territory", BN: "Brunei Darussalam", BG: x(430), BF: "Burkina Faso", BI: x(561), CV: "Cabo Verde", KH: x(518), CM: x(521), CA: "Canada", KY: "Cayman Islands", CF: "Central African Republic", TD: x(540), CL: x(425), CN: x(560), CX: x(537), CC: x(480), CO: x(396), KM: x(438), CG: x(502), CD: "Congo (Democratic Republic of the)", CK: "Cook Islands", CR: "Costa Rica", CI: x(444), HR: x(534), CU: x(569), CW: x(531), CY: x(440), CZ: x(501), DK: x(506), DJ: x(508), DM: x(567), DO: x(448), EC: x(556), EG: x(405), SV: "El Salvador", GQ: x(459), ER: "Eritrea", EE: "Estonia", ET: "Ethiopia", FK: x(432), FO: x(557), FJ: "Fiji", FI: x(528), FR: "France", GF: "French Guiana", PF: x(434), TF: x(418), GA: "Gabon", GM: x(541), GE: "Georgia", DE: "Germany", GH: "Ghana", GI: x(486), GR: "Greece", GL: x(387), GD: x(575), GP: "Guadeloupe", GU: x(554), GT: x(538), GG: x(410), GN: x(456), GW: "Guinea-Bissau", GY: x(524), HT: "Haiti", HM: x(455), VA: "Holy See", HN: x(514), HK: x(475), HU: x(570), IS: "Iceland", IN: x(542), ID: x(435), IR: x(465), IQ: x(489), IE: x(428), IM: "Isle of Man", IL: x(487), IT: x(436), JM: "Jamaica", JP: x(419), JE: x(576), JO: "Jordan", KZ: x(493), KE: x(520), KI: x(578), KP: x(457), KR: x(495), KW: x(408), KG: "Kyrgyzstan", LA: x(433), LV: x(529), LB: x(429), LS: "Lesotho", LR: x(413), LY: x(494), LI: x(545), LT: x(427), LU: x(389), MO: x(467), MK: x(402), MG: "Madagascar", MW: "Malawi", MY: x(552), MV: x(512), ML: x(454), MT: x(463), MH: x(530), MQ: "Martinique", MR: "Mauritania", MU: "Mauritius", YT: x(546), MX: "Mexico", FM: "Micronesia (Federated States of)", MD: x(472), MC: x(437), MN: "Mongolia", ME: x(515), MS: "Montserrat", MA: x(559), MZ: x(431), MM: x(423), NA: "Namibia", NR: x(445), NP: x(492), NL: x(416), NC: x(474), NZ: x(476), NI: "Nicaragua", NE: x(470), NG: x(414), NU: x(403), NF: x(573), MP: "Northern Mariana Islands", NO: x(447), OM: "Oman", PK: "Pakistan", PW: x(511), PS: x(401), PA: x(411), PG: "Papua New Guinea", PY: "Paraguay", PE: "Peru", PH: "Philippines", PN: x(478), PL: x(439), PT: "Portugal", PR: x(391), QA: x(517), RE: x(466), RO: x(392), RU: x(452), RW: x(558), BL: x(394), SH: x(488), KN: x(509), LC: x(503), MF: x(533), PM: x(499), VC: x(462), WS: x(417), SM: x(406), ST: x(420), SA: x(563), SN: x(498), RS: x(458), SC: x(404), SL: x(483), SG: "Singapore", SX: x(504), SK: x(535), SI: x(577), SB: "Solomon Islands", SO: x(484), ZA: x(395), GS: x(422), SS: x(544), ES: x(543), LK: x(574), SD: x(479), SR: x(564), SJ: x(568), SZ: x(390), SE: "Sweden", CH: x(442), SY: x(516), TW: x(421), TJ: x(461), TZ: x(482), TH: x(513), TL: "Timor-Leste", TG: x(473), TK: x(525), TO: "Tonga", TT: x(481), TN: x(551), TR: x(464), TM: x(407), TC: "Turks and Caicos Islands", TV: x(412), UG: x(399), UA: x(426), AE: "United Arab Emirates", GB: x(397), US: x(415), UM: x(450), UY: x(441), UZ: x(453), VU: x(555), VE: x(400), VN: "Viet Nam", VG: x(536), VI: x(549), WF: x(527), EH: x(532), YE: x(477), ZM: x(547), ZW: "Zimbabwe" }, _ = Vt;
|
|
1742
1739
|
(function(a, t) {
|
|
1743
|
-
const e =
|
|
1740
|
+
const e = Vt, i = a();
|
|
1744
1741
|
for (; ; )
|
|
1745
1742
|
try {
|
|
1746
|
-
if (parseInt(e(
|
|
1743
|
+
if (parseInt(e(124)) / 1 + parseInt(e(135)) / 2 + -parseInt(e(190)) / 3 + -parseInt(e(188)) / 4 + -parseInt(e(147)) / 5 * (-parseInt(e(152)) / 6) + -parseInt(e(133)) / 7 * (-parseInt(e(173)) / 8) + -parseInt(e(136)) / 9 === t) break;
|
|
1747
1744
|
i.push(i.shift());
|
|
1748
1745
|
} catch {
|
|
1749
1746
|
i.push(i.shift());
|
|
1750
1747
|
}
|
|
1751
|
-
})(
|
|
1752
|
-
const
|
|
1753
|
-
let C = { video: {}, browser: {}, device: {}, connection: {}, screen: {}, player_version: "latest", extra: { sessionId: null, playerType:
|
|
1754
|
-
const
|
|
1755
|
-
function
|
|
1756
|
-
return
|
|
1757
|
-
}
|
|
1758
|
-
function St() {
|
|
1759
|
-
return Pt();
|
|
1760
|
-
}
|
|
1761
|
-
function Lt(a, t) {
|
|
1762
|
-
return a = a - 203, De()[a];
|
|
1748
|
+
})(Me, 365662);
|
|
1749
|
+
const Be = { gov: { prod: { log: "https://papi.vpe.gov-ntruss.com/player/maSync", report: _(185) }, beta: { log: _(184), report: _(194) } }, pub: { prod: { log: "https://papi.vpe.naverncp.com/player/maSync", report: _(156) }, beta: { log: _(159), report: _(163) } } };
|
|
1750
|
+
let C = { video: {}, browser: {}, device: {}, connection: {}, screen: {}, player_version: "latest", extra: { sessionId: null, playerType: "VPE React Native" }, log_type: _(201), privacy: { cookie_enabled: !0 } }, B = { platform: _(148), stage: _(191), sync: !1, syncResult: {} };
|
|
1751
|
+
const h0 = (/* @__PURE__ */ new Date())[_(164)](), Bt = (a) => a;
|
|
1752
|
+
function ve() {
|
|
1753
|
+
return Nt();
|
|
1763
1754
|
}
|
|
1764
|
-
function
|
|
1765
|
-
|
|
1766
|
-
return De = function() {
|
|
1767
|
-
return a;
|
|
1768
|
-
}, De();
|
|
1755
|
+
function It() {
|
|
1756
|
+
return Nt();
|
|
1769
1757
|
}
|
|
1770
1758
|
const Ft = () => {
|
|
1771
|
-
const a = _, t = /* @__PURE__ */ new Date(), e = (o) => String(o)
|
|
1759
|
+
const a = _, t = /* @__PURE__ */ new Date(), e = (o) => String(o).padStart(2, "0"), i = t[a(181)]() + "-" + e(t[a(131)]() + 1) + "-" + e(t[a(146)]()) + " " + e(t.getHours()) + ":" + e(t[a(145)]()) + ":" + e(t[a(127)]()), n = Math[a(195)](t[a(164)]() / 1e3), r = (/* @__PURE__ */ new Date())[a(164)]() - h0;
|
|
1772
1760
|
return { logDate: i, logDateUnix: n, thisSec: r };
|
|
1773
1761
|
};
|
|
1774
|
-
function
|
|
1762
|
+
function b0(a) {
|
|
1775
1763
|
const t = _;
|
|
1776
|
-
return typeof a === t(
|
|
1764
|
+
return typeof a === t(143) && a !== null && !Array[t(199)](a);
|
|
1777
1765
|
}
|
|
1778
|
-
function
|
|
1766
|
+
function xt(a, t) {
|
|
1779
1767
|
const e = _;
|
|
1780
|
-
Object[e(
|
|
1768
|
+
Object[e(138)](t)[e(187)](([i, n]) => {
|
|
1781
1769
|
const r = e;
|
|
1782
|
-
|
|
1783
|
-
|
|
1770
|
+
b0(n) ? (!a[i] && (a[i] = {}), Object.entries(n)[r(187)](([o, f]) => {
|
|
1771
|
+
f != null && (a[i][o] = f);
|
|
1784
1772
|
})) : n != null && (a[i] = n);
|
|
1785
1773
|
});
|
|
1786
1774
|
}
|
|
1787
|
-
function
|
|
1775
|
+
function w0(a) {
|
|
1788
1776
|
const t = _;
|
|
1789
|
-
return a[t(
|
|
1777
|
+
return a[t(169)](t(180)) > -1 ? t(160) : a[t(169)](t(162)) > -1 ? t(165) : t(182);
|
|
1790
1778
|
}
|
|
1791
|
-
function
|
|
1779
|
+
function g0(a) {
|
|
1792
1780
|
const t = _, e = [];
|
|
1793
|
-
return a?.r1 && e
|
|
1781
|
+
return a?.r1 && e.push(a.r1), a?.r2 && e[t(157)](a.r2), a?.r3 && e[t(157)](a.r3), e.join(" ");
|
|
1794
1782
|
}
|
|
1795
1783
|
function Ht(a) {
|
|
1796
1784
|
const t = _;
|
|
1797
|
-
a
|
|
1785
|
+
a.actionDuration === "1.0" && (a[t(139)] = 0), a.actionDuration === void 0 && (a[t(139)] = 0), ["playerStartTime", t(123), t(158), "seekedTime"][t(187)]((i) => {
|
|
1798
1786
|
a[i] === void 0 && (a[i] = 0);
|
|
1799
|
-
}), a[t(
|
|
1787
|
+
}), a[t(202)] === void 0 && C[t(196)]?.[t(202)] && (a.type = C[t(196)][t(202)]), a[t(177)] === void 0 && C[t(196)]?.[t(177)] && (a.url = C[t(196)][t(177)], a[t(151)] = w0(a[t(177)]));
|
|
1800
1788
|
}
|
|
1801
1789
|
function Gt(a) {
|
|
1802
1790
|
const t = _;
|
|
1803
|
-
return !!(a[t(
|
|
1791
|
+
return !!(a[t(140)] && a.TID && a[t(176)]);
|
|
1804
1792
|
}
|
|
1805
1793
|
function Fe(a) {
|
|
1806
1794
|
const t = _;
|
|
1807
1795
|
try {
|
|
1808
|
-
const e =
|
|
1809
|
-
e && (a
|
|
1796
|
+
const e = B[t(137)]?.[t(193)];
|
|
1797
|
+
e && (a.address = g0(e), a[t(200)] = e.net || "", a.ip = B[t(137)]?.ip || "", a[t(126)] = e[t(161)] || "");
|
|
1810
1798
|
} catch {
|
|
1811
1799
|
}
|
|
1812
1800
|
}
|
|
1813
|
-
|
|
1801
|
+
function Vt(a, t) {
|
|
1802
|
+
return a = a - 123, Me()[a];
|
|
1803
|
+
}
|
|
1804
|
+
const m0 = async (a) => {
|
|
1814
1805
|
const t = _;
|
|
1815
1806
|
if (!a) return;
|
|
1816
|
-
const { platform: e, stage: i } =
|
|
1807
|
+
const { platform: e, stage: i } = B, n = Be[e][i][t(125)];
|
|
1817
1808
|
try {
|
|
1818
|
-
const r = await fetch(n, { method: t(
|
|
1819
|
-
|
|
1820
|
-
const { logDate:
|
|
1821
|
-
return C
|
|
1809
|
+
const r = await fetch(n, { method: t(134), headers: { "Content-Type": "application/json" }, body: JSON[t(155)]({ access_key: a }) }), o = await r[t(198)]();
|
|
1810
|
+
B[t(149)] = o.result?.[t(149)] || !1, B.syncResult = o[t(172)] || {};
|
|
1811
|
+
const { logDate: f, logDateUnix: h } = Ft();
|
|
1812
|
+
return C[t(183)][t(129)] = f, C.extra.logDateUnix = h, B[t(137)]?.[t(193)] && Fe(C[t(183)]), o;
|
|
1822
1813
|
} catch (r) {
|
|
1823
|
-
return console[t(
|
|
1814
|
+
return console[t(186)](t(168), r), null;
|
|
1824
1815
|
}
|
|
1825
|
-
},
|
|
1826
|
-
const t = _, { platform: e, stage: i } =
|
|
1827
|
-
r
|
|
1816
|
+
}, y0 = async (a) => {
|
|
1817
|
+
const t = _, { platform: e, stage: i } = B, n = Bt(Be[e][i][t(166)]), r = { ...a };
|
|
1818
|
+
r.log_type = t(201), Fe(r.extra);
|
|
1828
1819
|
try {
|
|
1829
|
-
await fetch(n, { method: t(
|
|
1820
|
+
await fetch(n, { method: t(134), headers: { "Content-Type": t(197) }, body: JSON.stringify(r) });
|
|
1830
1821
|
} catch (o) {
|
|
1831
|
-
console[t(
|
|
1822
|
+
console[t(186)](t(150), o);
|
|
1832
1823
|
}
|
|
1833
|
-
},
|
|
1834
|
-
const t = _, { platform: e, stage: i } =
|
|
1835
|
-
if (
|
|
1824
|
+
}, v0 = async (a) => {
|
|
1825
|
+
const t = _, { platform: e, stage: i } = B, n = Bt(Be[e][i].report), r = JSON[t(192)](JSON.stringify(C));
|
|
1826
|
+
if (xt(r, a), r[t(203)] = "MA", Fe(r[t(183)]), Ht(r[t(183)]), !!Gt(r[t(183)]))
|
|
1836
1827
|
try {
|
|
1837
|
-
r
|
|
1828
|
+
r[t(202)] != "timeupdate", await fetch(n, { method: t(134), headers: { "Content-Type": t(197) }, body: JSON[t(155)](r) });
|
|
1838
1829
|
} catch (o) {
|
|
1839
|
-
console[t(
|
|
1830
|
+
console[t(125)](t(153), o);
|
|
1840
1831
|
}
|
|
1841
1832
|
};
|
|
1842
|
-
async function
|
|
1833
|
+
async function S0(a, t, e, i, n) {
|
|
1843
1834
|
const r = _;
|
|
1844
|
-
|
|
1845
|
-
const { logDate: o, logDateUnix:
|
|
1846
|
-
C[r(
|
|
1835
|
+
B[r(142)] = a, B[r(132)] = t, xt(C, e), i && (C.extra[r(130)] = i), n && (C[r(183)][r(170)] = n), C[r(183)][r(126)] ? C[r(175)][r(161)] = Lt[C[r(183)].nation] || "Korea, Republic of" : C[r(175)].country = r(128);
|
|
1836
|
+
const { logDate: o, logDateUnix: f } = Ft();
|
|
1837
|
+
C[r(183)][r(129)] = o, C.extra[r(178)] = f, C.extra[r(171)] = f;
|
|
1847
1838
|
}
|
|
1848
|
-
|
|
1849
|
-
const
|
|
1850
|
-
|
|
1839
|
+
function Me() {
|
|
1840
|
+
const a = ["getTime", "dash", "report", "------------------------------------------------", "MA config initialization failed:", "indexOf", "vpeKey", "created_at", "result", "2159176LhEGSu", "actionType", "browser", "host", "url", "logDateUnix", "TID", "m3u8", "getFullYear", "mp4", "extra", "https://papi.beta-vpe.gov-ntruss.com/player/maSync", "https://log.vpe.gov-ntruss.com/stats", "error", "forEach", "569912xltAkO", "sendBeacon", "1582491SjqrMF", "prod", "parse", "geoLocation", "https://log.beta-vpe.gov-ntruss.com/stats", "floor", "video", "application/json", "json", "isArray", "isp", "vpe", "type", "log_type", "videoStartTime", "649571KiPaYu", "log", "nation", "getSeconds", "Korea, Republic of", "logDate", "vpePackageId", "getMonth", "stage", "7mjqpgK", "POST", "976412mXnqPL", "5270832EtPJah", "syncResult", "entries", "actionDuration", "UUID", "MA vpe init", "platform", "object", "MA report actionType ->", "getMinutes", "getDate", "1068055XgjlKH", "pub", "sync", "MA init report failed:", "videoFormat", "6fNGAsE", "MA report failed:", "assign", "stringify", "https://log.vpe.naverncp.com/stats", "push", "totalStartTime", "https://papi.beta-vpe.naverncp.com/player/maSync", "hls", "country", "mpd", "https://log.beta-vpe.naverncp.com/stats"];
|
|
1841
|
+
return Me = function() {
|
|
1842
|
+
return a;
|
|
1843
|
+
}, Me();
|
|
1844
|
+
}
|
|
1845
|
+
async function I0(a) {
|
|
1846
|
+
const t = _, e = JSON[t(192)](JSON[t(155)](C));
|
|
1847
|
+
a.extra && Object[t(154)](e[t(183)], a.extra), e[t(196)] = a[t(196)], await y0(e), console[t(125)](t(141));
|
|
1851
1848
|
}
|
|
1852
|
-
function
|
|
1853
|
-
const t = _, { platform: e, stage: i } =
|
|
1849
|
+
function k0(a) {
|
|
1850
|
+
const t = _, { platform: e, stage: i } = B, n = Be[e]?.[i]?.report;
|
|
1854
1851
|
if (!n) return !1;
|
|
1855
|
-
const r = JSON[t(
|
|
1856
|
-
if (
|
|
1852
|
+
const r = JSON[t(192)](JSON[t(155)](C));
|
|
1853
|
+
if (xt(r, a), r[t(203)] = "MA", Fe(r.extra), Ht(r[t(183)]), !Gt(r[t(183)])) return !1;
|
|
1857
1854
|
try {
|
|
1858
|
-
const o = new Blob([JSON[t(
|
|
1859
|
-
return navigator
|
|
1855
|
+
const o = new Blob([JSON[t(155)](r)], { type: t(197) });
|
|
1856
|
+
return navigator[t(189)](n, o);
|
|
1860
1857
|
} catch {
|
|
1861
1858
|
return !1;
|
|
1862
1859
|
}
|
|
1863
1860
|
}
|
|
1864
|
-
|
|
1865
|
-
return a = a - 339, Re()[a];
|
|
1866
|
-
}
|
|
1867
|
-
const It = xt;
|
|
1868
|
-
function Re() {
|
|
1869
|
-
const a = ["#ffffff", "all", "6ziGXaa", "rgba(0, 0, 0, 0.4)", "1528732CfdAVb", "16/9", "watermarkConfig", "777585MPPJrh", "8514lslRvf", "6lDaUsm", "3336svOoZR", "646313uScAkn", "#009dff", "2638086vUnqSL", "dropshadow", "10KIjSTm", "captionStyle", "12738915zwCjTN", "contain", "pay", "NAVER CLOUD PLATFORM", "controlBtn", "23383943LzYLJE", "progressBar", "#4299f5"];
|
|
1870
|
-
return Re = function() {
|
|
1871
|
-
return a;
|
|
1872
|
-
}, Re();
|
|
1873
|
-
}
|
|
1861
|
+
const _0 = nt;
|
|
1874
1862
|
(function(a, t) {
|
|
1875
|
-
const e =
|
|
1863
|
+
const e = nt, i = a();
|
|
1876
1864
|
for (; ; )
|
|
1877
1865
|
try {
|
|
1878
|
-
if (parseInt(e(
|
|
1866
|
+
if (parseInt(e(503)) / 1 * (-parseInt(e(521)) / 2) + -parseInt(e(501)) / 3 * (-parseInt(e(517)) / 4) + -parseInt(e(499)) / 5 * (parseInt(e(519)) / 6) + parseInt(e(515)) / 7 * (parseInt(e(512)) / 8) + parseInt(e(505)) / 9 * (parseInt(e(506)) / 10) + parseInt(e(504)) / 11 + parseInt(e(522)) / 12 * (-parseInt(e(500)) / 13) === t) break;
|
|
1879
1867
|
i.push(i.shift());
|
|
1880
1868
|
} catch {
|
|
1881
1869
|
i.push(i.shift());
|
|
1882
1870
|
}
|
|
1883
|
-
})(Re,
|
|
1871
|
+
})(Re, 443313);
|
|
1872
|
+
function nt(a, t) {
|
|
1873
|
+
return a = a - 499, Re()[a];
|
|
1874
|
+
}
|
|
1884
1875
|
const E0 = (a = {}, t) => {
|
|
1885
|
-
const e =
|
|
1886
|
-
if (t !== e(
|
|
1876
|
+
const e = nt, i = { autostart: !0, muted: !1, aspectRatio: e(520), objectFit: e(514), controls: !0, keyboardShortcut: !0, startMutedInfoNotVisible: !1, allowsPictureInPicture: !1, staysActiveInBackground: !1, screenRecordingPrevention: !1, modalFullscreen: !1, seekingPreview: !0, lang: "ko", ui: e(516), controlBtn: { play: !0, fullscreen: !0, progressBar: !0, volume: !1, times: !0, pictureInPicture: !0, setting: !0, subtitle: !0 }, progressBarColor: "#4299f5", 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(502), watermarkConfig: { randPosition: !0, randPositionInterVal: 3e3, x: 10, y: 10, opacity: 0.5 }, captionStyle: { fontSize: 12, color: "#ffffff", backgroundColor: e(508), edgeStyle: e(518) }, override: null };
|
|
1877
|
+
if (t !== e(507)) return { ...i, ...T0 };
|
|
1887
1878
|
const n = { ...i, ...a };
|
|
1888
|
-
return a[e(
|
|
1889
|
-
}
|
|
1879
|
+
return a[e(511)] && (n.controlBtn = { ...i[e(511)], ...a.controlBtn }), a.watermarkConfig && (n[e(513)] = { ...i[e(513)], ...a.watermarkConfig }), a[e(510)] && (n[e(510)] = { ...i.captionStyle, ...a.captionStyle }), n[e(511)]?.[e(509)] === void 0 && (n.controlBtn[e(509)] = !0), n;
|
|
1880
|
+
};
|
|
1881
|
+
function Re() {
|
|
1882
|
+
const a = ["3804qeSvFA", "2776465XLtBrR", "32838RLnpnu", "3wXzMWp", "NAVER CLOUD PLATFORM", "51137BfcXoq", "8792399AZzRkq", "1034649rRUVPE", "70WdHDQk", "pay", "rgba(0, 0, 0, 0.4)", "progressBar", "captionStyle", "controlBtn", "16552uYlkzF", "watermarkConfig", "contain", "420xOuogO", "all", "489236xYOCDf", "dropshadow", "6XhFtos", "16/9", "2wzAcps"];
|
|
1883
|
+
return Re = function() {
|
|
1884
|
+
return a;
|
|
1885
|
+
}, Re();
|
|
1886
|
+
}
|
|
1887
|
+
const T0 = { free: !0, startMutedInfoNotVisible: !1, lowLatencyMode: !1, progressBarColor: "#009dff", playRateSetting: [0.5, 0.75, 1, 1.5, 2], descriptionNotVisible: !0, seekingPreview: !1, controlActiveTime: 1500, ui: _0(516), token: "", setStartTime: null, controlBtn: { play: !0, fullscreen: !0, volume: !0, times: !0, setting: !1, pictureInPicture: !1, progressBar: !0 } }, b = rt;
|
|
1888
|
+
function Oe() {
|
|
1889
|
+
const a = ["prevTime", "seeking", "ended", "4qktxAi", "handleBeforeUnload", "prevUrl", "visibilitychange", "dispatchEvent", "nation", "initTimeupdate", "NEXT_TRACK", "loadingEnd", "STARTUP", "vpe", "toFixed", "6915830vbTCtX", "dropOffPosition", "contentId", "object", "playing", "PLAYING", "isBounce", "PAUSE", "seekCnt", "isEnded", "url", "handlePause", "handlePlay", "startTime", "ERROR", "player_start", "timeupdateFocus", "hidden", "currentTime", "firstError", "firstPlaying", "rebuffering", "prevTrack", "handleTimeUpdate", "18sgofsj", "getSeconds", "video", "beforeunload", "data", "handleCanplay", "timeupdate", "fullscreenYn", "now", "percent", "stageData", "playedTime", "pauseCnt", "reportData", "1382542DYrbtZ", "state", "padStart", "RATE_CHANGE", "E0000", "sessionId", "619605SHBaRW", "TID", "11fktgQc", "latest", "addEventListener", "getTime", "firstPlay", "handleTimeUpdateFocus", "handleSeeking", "waiting", "then", "895648wJUKvy", "VPE", "seeked", "initializeReportData", "entries", "238670OHnnQx", "isSeeking", "PLAYER_START", "nextTrack", "fullscreenchange", "beaconSent", "SEEKED", "browser", "isArray", "SEEKING", "buildSessionMetrics", "quality_change", "getMonth", "handleStartup", "visibilityState", "handleVisibilityChange", "quality", "prevAction", "WAITING", "79770eYujAq", "handleQualityChange", "REBUFFERING", "Korea, Republic of", "type", "handleSeeked", "1XlbusH", "PAUSED", "sendSessionBeacon", "round", "PREV_TRACK", "handleTrackChange", "166246qfdRmg", "speedChangeCnt", "FULLSCREEN_CHANGE", "report", "floor", "fullscreenDuration", "message", "getDate", "handleWaiting", "boundVisibilityChange", "playbackRate", "lastPlaybackSpeed", "isPlaying", "boundBeforeUnload", "playAttempt", "prevQuality", "maInit", "UUID", "error", "handleRateChange", "maSync", "pause", "getFullYear", "handleError", "handlePlayerStart", "isFullscreen", "bufferingStart", "handleFullscreenChange", "contentDuration", "extra", "canplay", "ratechange", "isBuffering", "resetStateForNewTrack", "watchPercent", "duration", "destroy", "QUALITY_CHANGE", "removeEventListener", "fullscreenEnterTime"];
|
|
1890
|
+
return Oe = function() {
|
|
1891
|
+
return a;
|
|
1892
|
+
}, Oe();
|
|
1893
|
+
}
|
|
1890
1894
|
(function(a, t) {
|
|
1891
|
-
const e =
|
|
1895
|
+
const e = rt, i = a();
|
|
1892
1896
|
for (; ; )
|
|
1893
1897
|
try {
|
|
1894
|
-
if (parseInt(e(
|
|
1898
|
+
if (parseInt(e(239)) / 1 * (-parseInt(e(245)) / 2) + parseInt(e(233)) / 3 * (-parseInt(e(142)) / 4) + parseInt(e(214)) / 5 * (-parseInt(e(178)) / 6) + -parseInt(e(192)) / 7 + -parseInt(e(209)) / 8 + parseInt(e(198)) / 9 + parseInt(e(154)) / 10 * (parseInt(e(200)) / 11) === t) break;
|
|
1895
1899
|
i.push(i.shift());
|
|
1896
1900
|
} catch {
|
|
1897
1901
|
i.push(i.shift());
|
|
1898
1902
|
}
|
|
1899
|
-
})(Oe,
|
|
1900
|
-
function
|
|
1901
|
-
|
|
1902
|
-
return Oe = function() {
|
|
1903
|
-
return a;
|
|
1904
|
-
}, Oe();
|
|
1903
|
+
})(Oe, 198051);
|
|
1904
|
+
function rt(a, t) {
|
|
1905
|
+
return a = a - 142, Oe()[a];
|
|
1905
1906
|
}
|
|
1906
|
-
const kt = "0p", C0 = 59e3, A0 = 1, m = { PLAYER_START:
|
|
1907
|
-
|
|
1908
|
-
|
|
1909
|
-
|
|
1910
|
-
|
|
1911
|
-
[
|
|
1912
|
-
|
|
1913
|
-
[
|
|
1914
|
-
beaconSent = !1;
|
|
1915
|
-
boundBeforeUnload;
|
|
1916
|
-
[g(316)];
|
|
1907
|
+
const kt = "0p", C0 = 59e3, A0 = 1, m = { PLAYER_START: b(169), STARTUP: "startup", PLAY: "play", PAUSE: b(266), PLAYING: b(158), PAUSED: b(266), SEEKING: b(286), SEEKED: b(211), WAITING: b(207), WAITING_END: "waitingEnd", CANPLAY: b(275), ENDED: "ended", NEXT_TRACK: b(217), PREV_TRACK: "prevTrack", ERROR: b(263), QUALITY_CHANGE: b(225), REBUFFERING: b(175), TIMEUPDATE: b(184), TIMEUPDATE_FOCUS: b(170), RATE_CHANGE: b(276), FULLSCREEN_CHANGE: b(218) };
|
|
1908
|
+
class D0 {
|
|
1909
|
+
[b(191)];
|
|
1910
|
+
[b(188)];
|
|
1911
|
+
state;
|
|
1912
|
+
[b(219)] = !1;
|
|
1913
|
+
[b(258)];
|
|
1914
|
+
[b(254)];
|
|
1917
1915
|
constructor(t, e, i) {
|
|
1918
|
-
const n =
|
|
1919
|
-
this
|
|
1916
|
+
const n = b;
|
|
1917
|
+
this.stageData = { platform: t, stage: e, sync: !1, syncResult: {} }, this[n(191)] = { video: {}, browser: {}, device: {}, connection: {}, screen: {}, player_version: n(201), extra: { UUID: null, TID: null, sessionId: null, playerType: n(210), playAttempt: !1 }, log_type: n(152), privacy: { cookie_enabled: !0 } }, this[n(193)] = { 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, fullscreenEnterTime: 0, fullscreenDuration: 0, contentId: null, contentDuration: 0 }, this.initializeReportData(i), this[n(188)], this.boundBeforeUnload = this[n(143)].bind(this), this[n(254)] = this[n(229)].bind(this), window[n(202)](n(181), this[n(258)]), document[n(202)](n(145), this[n(254)]);
|
|
1920
1918
|
}
|
|
1921
|
-
[
|
|
1922
|
-
const e =
|
|
1923
|
-
this.reportData = { ...this[e(
|
|
1919
|
+
[b(212)](t) {
|
|
1920
|
+
const e = b;
|
|
1921
|
+
this.reportData = { ...this[e(191)], ...t }, this[e(191)].extra[e(147)] ? this[e(191)][e(221)].country = Lt[this[e(191)][e(274)][e(147)]] || e(236) : this.reportData[e(221)].country = e(236);
|
|
1924
1922
|
}
|
|
1925
|
-
[
|
|
1926
|
-
const t =
|
|
1923
|
+
[b(203)]() {
|
|
1924
|
+
const t = b, e = /* @__PURE__ */ new Date(), i = (o) => String(o)[t(194)](2, "0"), n = e[t(267)]() + "-" + i(e[t(226)]() + 1) + "-" + i(e[t(252)]()) + " " + i(e.getHours()) + ":" + i(e.getMinutes()) + ":" + i(e[t(179)]()), r = Math[t(249)](e.getTime() / 1e3);
|
|
1927
1925
|
return { logDate: n, logDateUnix: r };
|
|
1928
1926
|
}
|
|
1929
|
-
|
|
1930
|
-
|
|
1927
|
+
isPlainObject(t) {
|
|
1928
|
+
const e = b;
|
|
1929
|
+
return typeof t === e(157) && t !== null && !Array[e(222)](t);
|
|
1931
1930
|
}
|
|
1932
|
-
async [
|
|
1933
|
-
const i =
|
|
1934
|
-
if (this[i(
|
|
1935
|
-
const { logDate: n, logDateUnix: r } = this
|
|
1936
|
-
for (const
|
|
1937
|
-
|
|
1938
|
-
const P = this[i(
|
|
1939
|
-
this
|
|
1931
|
+
async [b(248)](t, e) {
|
|
1932
|
+
const i = b;
|
|
1933
|
+
if (this[i(193)][i(173)]) return;
|
|
1934
|
+
const { logDate: n, logDateUnix: r } = this[i(203)](), o = Date.now(), f = this.state[i(285)] > 0 ? o - this[i(193)].prevTime : 0, h = f, y = e && typeof e === i(157) && e[i(182)] ? e[i(182)] : {}, I = [i(156), i(273), i(279), "isCompleted", i(160), i(190), i(162), i(246), "lastPlaybackSpeed", i(185), i(250), i(155)], A = {};
|
|
1935
|
+
for (const ee of I)
|
|
1936
|
+
y[ee] !== void 0 && (A[ee] = y[ee]);
|
|
1937
|
+
const P = this[i(193)][i(273)], Y = P > 0 ? Math[i(249)](P / 1e3) : this.reportData.extra[i(280)] || 0, F = this[i(191)][i(274)][i(172)] || 0, W = Y > 0 ? Math[i(242)](F / Y * 1e4) / 100 : 0, He = { ...this[i(191)], video: this[i(191)][i(180)], percent: W, extra: { ...this[i(191)][i(274)], actionType: t, actionDuration: h ? h[i(153)](2) : 0, duration: Y, contentDuration: P, percent: W, watch_percent: W, logDate: n, logDateUnix: r, ...A } };
|
|
1938
|
+
this[i(193)][i(285)] = o, await v0(He);
|
|
1940
1939
|
}
|
|
1941
|
-
async [
|
|
1942
|
-
const e =
|
|
1943
|
-
!this[e(
|
|
1940
|
+
async [b(261)](t) {
|
|
1941
|
+
const e = b;
|
|
1942
|
+
!this[e(191)][e(274)][e(197)] && (this[e(191)].extra[e(197)] = It(), this[e(191)][e(274)][e(199)] = ve(), this[e(191)][e(274)][e(262)] = ve()), t.extra[e(197)] = this.reportData.extra[e(197)], await I0(t);
|
|
1944
1943
|
}
|
|
1945
|
-
async [
|
|
1946
|
-
|
|
1947
|
-
|
|
1948
|
-
|
|
1949
|
-
|
|
1950
|
-
|
|
1951
|
-
}) :
|
|
1944
|
+
async [b(265)](t) {
|
|
1945
|
+
!t || typeof t != "object" || Object.entries(t).forEach(([e, i]) => {
|
|
1946
|
+
const n = rt;
|
|
1947
|
+
this.isPlainObject(i) ? Object[n(213)](i).forEach(([r, o]) => {
|
|
1948
|
+
const f = n;
|
|
1949
|
+
o != null && (this[f(191)][e][r] = o);
|
|
1950
|
+
}) : i != null && (this[n(191)][e] = i);
|
|
1952
1951
|
});
|
|
1953
1952
|
}
|
|
1954
|
-
[
|
|
1955
|
-
const e =
|
|
1956
|
-
switch (o && o > 0 && (this[e(
|
|
1957
|
-
case m[e(
|
|
1958
|
-
this
|
|
1953
|
+
[b(146)](t) {
|
|
1954
|
+
const e = b, { type: i, data: n } = t, r = { url: n?.[e(164)] || this[e(193)][e(144)], type: n?.[e(237)], quality: n?.[e(230)] || this.state[e(260)], data: n }, o = n?.[e(274)]?.[e(280)];
|
|
1955
|
+
switch (o && o > 0 && (this[e(193)].contentDuration = Math.round(o * 1e3)), i) {
|
|
1956
|
+
case m[e(216)]:
|
|
1957
|
+
this[e(269)](r, n);
|
|
1959
1958
|
break;
|
|
1960
1959
|
case m.STARTUP:
|
|
1961
1960
|
this.handleStartup(r, n);
|
|
1962
1961
|
break;
|
|
1963
1962
|
case m.PLAY:
|
|
1964
|
-
this
|
|
1963
|
+
this[e(166)](r, n);
|
|
1965
1964
|
break;
|
|
1966
|
-
case m[e(
|
|
1965
|
+
case m[e(161)]:
|
|
1967
1966
|
this.handlePause(r, n);
|
|
1968
1967
|
break;
|
|
1969
|
-
case m
|
|
1970
|
-
this[e(
|
|
1968
|
+
case m.TIMEUPDATE:
|
|
1969
|
+
this[e(177)](r, n);
|
|
1971
1970
|
break;
|
|
1972
1971
|
case m.TIMEUPDATE_FOCUS:
|
|
1973
|
-
this
|
|
1972
|
+
this.handleTimeUpdateFocus(r, n);
|
|
1974
1973
|
break;
|
|
1975
1974
|
case m.SEEKING:
|
|
1976
|
-
this[e(
|
|
1975
|
+
this[e(206)](r, n);
|
|
1977
1976
|
break;
|
|
1978
|
-
case m
|
|
1979
|
-
this
|
|
1977
|
+
case m[e(220)]:
|
|
1978
|
+
this[e(238)](r, n);
|
|
1980
1979
|
break;
|
|
1981
|
-
case m[e(
|
|
1982
|
-
case e(
|
|
1980
|
+
case m[e(232)]:
|
|
1981
|
+
case e(271):
|
|
1983
1982
|
this.handleWaiting(r, n);
|
|
1984
1983
|
break;
|
|
1985
1984
|
case m.WAITING_END:
|
|
1986
|
-
case
|
|
1987
|
-
case e(
|
|
1985
|
+
case "bufferingEnd":
|
|
1986
|
+
case e(150):
|
|
1988
1987
|
this.handleCanplay(r, n);
|
|
1989
1988
|
break;
|
|
1990
1989
|
case m.CANPLAY:
|
|
1991
|
-
this[e(
|
|
1990
|
+
this[e(183)](r, n);
|
|
1992
1991
|
break;
|
|
1993
|
-
case m
|
|
1994
|
-
this
|
|
1992
|
+
case m.ENDED:
|
|
1993
|
+
this.handleEnded(r, n);
|
|
1995
1994
|
break;
|
|
1996
|
-
case
|
|
1997
|
-
case
|
|
1998
|
-
this[e(
|
|
1995
|
+
case "nextTrack":
|
|
1996
|
+
case e(176):
|
|
1997
|
+
this[e(244)](i, r, n);
|
|
1999
1998
|
break;
|
|
2000
|
-
case m[e(
|
|
2001
|
-
this[e(
|
|
1999
|
+
case m[e(168)]:
|
|
2000
|
+
this[e(268)](r, n);
|
|
2002
2001
|
break;
|
|
2003
|
-
case m[e(
|
|
2004
|
-
this
|
|
2002
|
+
case m[e(282)]:
|
|
2003
|
+
this.handleQualityChange(r, n);
|
|
2005
2004
|
break;
|
|
2006
|
-
case m
|
|
2007
|
-
this[e(
|
|
2005
|
+
case m[e(195)]:
|
|
2006
|
+
this[e(264)](r, n);
|
|
2008
2007
|
break;
|
|
2009
2008
|
case m.FULLSCREEN_CHANGE:
|
|
2010
|
-
this[e(
|
|
2009
|
+
this[e(272)](r, n);
|
|
2011
2010
|
break;
|
|
2012
2011
|
}
|
|
2013
2012
|
}
|
|
2014
|
-
[
|
|
2015
|
-
const i =
|
|
2016
|
-
!this
|
|
2013
|
+
[b(269)](t, e) {
|
|
2014
|
+
const i = b;
|
|
2015
|
+
!this[i(191)][i(274)].sessionId && (this[i(191)][i(274)][i(197)] = It(), this[i(191)][i(274)][i(199)] = ve(), this[i(191)][i(274)][i(262)] = ve()), this[i(193)].startTime = Date[i(186)](), this.state.prevTime = this.state[i(167)], this[i(248)](m.PLAYER_START, { ...t, data: e });
|
|
2017
2016
|
}
|
|
2018
|
-
[
|
|
2019
|
-
const i =
|
|
2020
|
-
if (this[i(
|
|
2021
|
-
const n = e?.[i(
|
|
2022
|
-
n?.[i(
|
|
2017
|
+
[b(227)](t, e) {
|
|
2018
|
+
const i = b;
|
|
2019
|
+
if (this[i(193)][i(174)]) {
|
|
2020
|
+
const n = e?.[i(274)] || e || {};
|
|
2021
|
+
n?.[i(156)] && (this[i(193)][i(156)] = n[i(156)]), this[i(193)][i(257)] = !0, this.report(m[i(151)], { ...t, data: { ...e, contentId: this[i(193)][i(156)], contentDuration: this.state[i(273)] } }), this.state[i(174)] = !1;
|
|
2023
2022
|
}
|
|
2024
2023
|
}
|
|
2025
|
-
|
|
2026
|
-
const i =
|
|
2027
|
-
this[i(
|
|
2024
|
+
[b(166)](t, e) {
|
|
2025
|
+
const i = b;
|
|
2026
|
+
this.state[i(257)] || (this.reportData[i(274)][i(189)] = e?.[i(189)], this[i(191)][i(274)][i(187)] = e?.[i(187)], this[i(193)][i(257)] = !0, this.reportData[i(274)][i(259)] = !0, this[i(193)][i(204)] && (this[i(193)][i(204)] = !1), this[i(193)][i(231)] === m[i(240)] && this[i(248)](m.PLAYING, { ...t, data: e }), this[i(193)][i(231)] = m.PLAYING);
|
|
2028
2027
|
}
|
|
2029
|
-
[
|
|
2030
|
-
const i =
|
|
2031
|
-
this[i(
|
|
2028
|
+
[b(165)](t, e) {
|
|
2029
|
+
const i = b;
|
|
2030
|
+
this.state[i(215)] || this[i(193)][i(277)] || !this[i(193)][i(257)] || (this.state[i(190)]++, this.state[i(257)] = !1, this.report(m[i(240)], { ...t, data: { ...e, pauseCnt: this.state[i(190)] } }), this[i(193)][i(231)] = m[i(240)]);
|
|
2032
2031
|
}
|
|
2033
|
-
|
|
2034
|
-
const i =
|
|
2035
|
-
this[i(
|
|
2032
|
+
[b(177)](t, e) {
|
|
2033
|
+
const i = b;
|
|
2034
|
+
this[i(193)][i(257)] = !0, this[i(191)][i(274)][i(259)] = !0, !(this.reportData[i(274)].currentTime < A0) && (this.state[i(257)] && Date.now() - this[i(193)].prevTime > C0 && this[i(248)](m.PLAYING, { ...t, data: e }), this[i(193)][i(144)] = t.url || "", this[i(193)].prevQuality = t[i(230)] || kt);
|
|
2036
2035
|
}
|
|
2037
|
-
|
|
2038
|
-
const i =
|
|
2039
|
-
this[i(
|
|
2036
|
+
[b(205)](t, e) {
|
|
2037
|
+
const i = b;
|
|
2038
|
+
this[i(191)][i(274)][i(172)] > 0 && (this[i(248)](m[i(159)], { ...t, data: e }), this.state[i(148)] = !0);
|
|
2040
2039
|
}
|
|
2041
|
-
|
|
2042
|
-
const i =
|
|
2043
|
-
this[i(
|
|
2040
|
+
[b(206)](t, e) {
|
|
2041
|
+
const i = b;
|
|
2042
|
+
this[i(193)][i(215)] || (this.state[i(162)]++, this.state[i(215)] = !0, this[i(193)][i(257)] ? this.report(m.PLAYING, { ...t, data: e }) : this[i(193)][i(231)] === m[i(240)] && this[i(248)](m[i(240)], { ...t, data: e }), this[i(193)].prevAction = m[i(223)]);
|
|
2044
2043
|
}
|
|
2045
|
-
|
|
2046
|
-
const i =
|
|
2047
|
-
this
|
|
2044
|
+
[b(238)](t, e) {
|
|
2045
|
+
const i = b;
|
|
2046
|
+
this[i(193)][i(215)] && (this[i(193)][i(215)] = !1, this[i(248)](m[i(223)], { ...t, data: e }), this[i(193)][i(231)] = this.state.isPlaying ? m[i(159)] : m[i(240)]);
|
|
2048
2047
|
}
|
|
2049
|
-
[
|
|
2050
|
-
const i =
|
|
2051
|
-
this[i(
|
|
2048
|
+
[b(253)](t, e) {
|
|
2049
|
+
const i = b;
|
|
2050
|
+
this[i(193)][i(215)] || this[i(193)].isBuffering || (this[i(193)][i(277)] = !0, this[i(193)][i(257)] && this[i(248)](m[i(159)], { ...t, data: e }), this[i(193)][i(231)] = m[i(235)]);
|
|
2052
2051
|
}
|
|
2053
|
-
|
|
2054
|
-
const i =
|
|
2055
|
-
this[i(
|
|
2052
|
+
handleCanplay(t, e) {
|
|
2053
|
+
const i = b;
|
|
2054
|
+
this[i(193)][i(277)] && (this[i(193)][i(277)] = !1, this[i(248)](m[i(235)], { ...t, data: e }), this[i(193)].prevAction = this[i(193)][i(257)] ? m[i(159)] : m[i(240)]);
|
|
2056
2055
|
}
|
|
2057
|
-
|
|
2058
|
-
const t =
|
|
2059
|
-
if (this
|
|
2060
|
-
this[t(
|
|
2061
|
-
const { logDate: e, logDateUnix: i } = this
|
|
2062
|
-
|
|
2056
|
+
sendSessionBeacon() {
|
|
2057
|
+
const t = b;
|
|
2058
|
+
if (this[t(219)] || this[t(193)][t(163)] || this[t(193)][t(173)] || !this.reportData[t(274)].UUID || !this[t(191)][t(274)][t(199)]) return;
|
|
2059
|
+
this[t(219)] = !0;
|
|
2060
|
+
const { logDate: e, logDateUnix: i } = this[t(203)](), n = Date[t(186)](), r = this.state[t(285)] > 0 ? n - this.state[t(285)] : 0, o = (this.reportData[t(274)][t(172)] || 0) * 1e3, f = this[t(193)].contentDuration, h = f > 0 ? Math[t(242)](o / f * 1e4) / 100 : 0, y = this.reportData.extra[t(189)] || 0, I = { ...this.reportData, video: this[t(191)][t(180)], percent: h, extra: { ...this[t(191)].extra, actionType: t(287), actionDuration: r ? r[t(153)](2) : 0, duration: f > 0 ? Math[t(249)](f / 1e3) : this.reportData.extra[t(280)] || 0, logDate: e, logDateUnix: i, contentId: this[t(193)][t(156)], contentDuration: f, percent: h, watch_percent: h, watchPercent: h, isCompleted: h >= 95, isBounce: y < 1e4, pauseCnt: this[t(193)].pauseCnt, seekCnt: this[t(193)][t(162)], speedChangeCnt: this.state[t(246)], lastPlaybackSpeed: this[t(193)].lastPlaybackSpeed, fullscreenYn: this.state.fullscreenYn, fullscreenDuration: this.state[t(250)] + (this.state[t(284)] > 0 ? Date.now() - this[t(193)][t(284)] : 0), dropOffPosition: Math[t(242)](o) } };
|
|
2061
|
+
k0(I);
|
|
2063
2062
|
}
|
|
2064
|
-
[
|
|
2065
|
-
this[
|
|
2063
|
+
[b(143)]() {
|
|
2064
|
+
this[b(241)]();
|
|
2066
2065
|
}
|
|
2067
|
-
[
|
|
2068
|
-
const t =
|
|
2069
|
-
document[t(
|
|
2066
|
+
[b(229)]() {
|
|
2067
|
+
const t = b;
|
|
2068
|
+
document[t(228)] === t(171) && this.sendSessionBeacon();
|
|
2070
2069
|
}
|
|
2071
|
-
|
|
2072
|
-
const t =
|
|
2073
|
-
window
|
|
2070
|
+
[b(281)]() {
|
|
2071
|
+
const t = b;
|
|
2072
|
+
window[t(283)](t(181), this.boundBeforeUnload), document[t(283)](t(145), this[t(254)]);
|
|
2074
2073
|
}
|
|
2075
|
-
|
|
2076
|
-
const i =
|
|
2077
|
-
let
|
|
2078
|
-
return this[i(
|
|
2074
|
+
buildSessionMetrics(t, e) {
|
|
2075
|
+
const i = b, n = e?.[i(274)] || e || {}, r = (n?.currentTime || 0) * 1e3, o = this[i(193)][i(273)], f = o > 0 ? Math[i(242)](r / o * 1e4) / 100 : 0, h = this[i(191)].extra[i(189)] || 0;
|
|
2076
|
+
let y = this[i(193)].fullscreenDuration;
|
|
2077
|
+
return this.state[i(284)] > 0 && (y += Date[i(186)]() - this[i(193)][i(284)]), { ...t, data: { ...e, contentId: this[i(193)][i(156)], duration: o > 0 ? Math.floor(o / 1e3) : n?.[i(280)] || 0, contentDuration: o, watchPercent: f, isCompleted: f >= 95, isBounce: h < 1e4, pauseCnt: this[i(193)].pauseCnt, seekCnt: this.state[i(162)], speedChangeCnt: this.state[i(246)], lastPlaybackSpeed: this[i(193)][i(256)], fullscreenYn: this[i(193)][i(185)], fullscreenDuration: y, dropOffPosition: Math.round(r) } };
|
|
2079
2078
|
}
|
|
2080
|
-
|
|
2081
|
-
const i =
|
|
2082
|
-
this
|
|
2079
|
+
handleEnded(t, e) {
|
|
2080
|
+
const i = b;
|
|
2081
|
+
this.state.isEnded || (this.state[i(163)] = !0, this[i(193)].isPlaying = !1, this.beaconSent = !0, this[i(193)][i(231)] !== m[i(240)] && this.report(this[i(193)][i(231)] || m[i(159)], { ...t, data: e }), this[i(248)](m.ENDED, this[i(224)](t, e)));
|
|
2083
2082
|
}
|
|
2084
|
-
|
|
2085
|
-
const n =
|
|
2086
|
-
this[n(
|
|
2083
|
+
[b(244)](t, e, i) {
|
|
2084
|
+
const n = b, r = t === "nextTrack" ? m[n(149)] : m[n(243)];
|
|
2085
|
+
this[n(248)](this.state.prevAction || m.PLAYING, this[n(224)](e, i))[n(208)](() => {
|
|
2087
2086
|
const o = n;
|
|
2088
|
-
this[o(
|
|
2089
|
-
this
|
|
2087
|
+
this[o(248)](r, { ...e, data: i })[o(208)](() => {
|
|
2088
|
+
this.resetStateForNewTrack();
|
|
2090
2089
|
});
|
|
2091
2090
|
});
|
|
2092
2091
|
}
|
|
2093
|
-
[
|
|
2094
|
-
const i =
|
|
2095
|
-
this[i(
|
|
2096
|
-
const n = { errorCode: e?.
|
|
2097
|
-
this
|
|
2092
|
+
[b(268)](t, e) {
|
|
2093
|
+
const i = b;
|
|
2094
|
+
this.state[i(231)] && !this[i(193)][i(174)] && this[i(248)](this[i(193)].prevAction, this[i(224)](t, e));
|
|
2095
|
+
const n = { errorCode: e?.code || i(196), errorMessage: e?.[i(251)] || "Unknown Error" };
|
|
2096
|
+
this[i(248)](m[i(168)], { ...t, data: { ...e, ...n } }), this[i(193)][i(173)] = !0;
|
|
2098
2097
|
}
|
|
2099
|
-
[
|
|
2100
|
-
const i =
|
|
2101
|
-
this[i(
|
|
2098
|
+
[b(234)](t, e) {
|
|
2099
|
+
const i = b;
|
|
2100
|
+
this[i(193)].prevAction && !this[i(193)][i(215)] && !this[i(193)][i(277)] && !this.state[i(174)] && (this[i(193)][i(215)] = !0, this[i(248)](this[i(193)][i(231)], { ...t, data: e }), this.state[i(231)] = m[i(223)]);
|
|
2102
2101
|
}
|
|
2103
|
-
[
|
|
2104
|
-
const i =
|
|
2105
|
-
n !== this[i(
|
|
2102
|
+
[b(264)](t, e) {
|
|
2103
|
+
const i = b, n = e?.[i(255)] || e?.[i(274)]?.[i(255)] || 1;
|
|
2104
|
+
n !== this[i(193)][i(256)] && (this[i(193)][i(246)]++, this[i(193)][i(256)] = n, this[i(248)](m[i(195)], { ...t, data: { ...e, speedChangeCnt: this[i(193)][i(246)], lastPlaybackSpeed: n } }));
|
|
2106
2105
|
}
|
|
2107
|
-
[
|
|
2108
|
-
const i =
|
|
2109
|
-
e?.[i(
|
|
2106
|
+
[b(272)](t, e) {
|
|
2107
|
+
const i = b;
|
|
2108
|
+
e?.[i(270)] || e?.[i(274)]?.[i(270)] ? (this[i(193)][i(185)] = !0, this.state[i(284)] = Date.now()) : this[i(193)].fullscreenEnterTime > 0 && (this.state[i(250)] += Date[i(186)]() - this.state[i(284)], this.state[i(284)] = 0), this[i(248)](m[i(247)], { ...t, data: { ...e, fullscreenYn: this[i(193)][i(185)], fullscreenDuration: this.state[i(250)] } });
|
|
2110
2109
|
}
|
|
2111
|
-
[
|
|
2112
|
-
const t =
|
|
2113
|
-
this
|
|
2110
|
+
[b(278)]() {
|
|
2111
|
+
const t = b;
|
|
2112
|
+
this[t(193)][t(231)] = null, this.state.isPlaying = !1, this[t(193)][t(285)] = 0, this.state[t(174)] = !0, this[t(193)][t(148)] = !1, this[t(193)].pauseCnt = 0, this[t(193)].seekCnt = 0, this[t(193)][t(246)] = 0, this.state.lastPlaybackSpeed = 1, this.state[t(185)] = !1, this.state[t(284)] = 0, this.state[t(250)] = 0, this.state[t(156)] = null, this.state[t(273)] = 0;
|
|
2114
2113
|
}
|
|
2115
2114
|
}
|
|
2116
|
-
|
|
2117
|
-
return a = a - 225, Pe()[a];
|
|
2118
|
-
}
|
|
2119
|
-
function Pe() {
|
|
2120
|
-
const a = ["UAParser", "round", "API", "domain", "maInit", "maManager", "userAgent", "getTime", "5AwCcsa", "location", "application/json", "maSync", "pricing", "includes", "downlink", "incomingType", "origin", "name", "ncplayer : ", "HLS 파싱 실패:", "fullscreenchange", "E0003", "volumechange", "naver", "push", "error", "Base64 decoding failed:", "E0002", "pay", "Chrome", "width", "VOD", "vendor", "lang", "errorInfo", "errorCode", "kakaotalk", "filter", "Other", "player_name", "aHR0cHM6Ly9sb2cudnBlLmdvdi1udHJ1c3MuY29tL3N0YXRz", "getElapsedMilliseconds", "hardwareConcurrency", "2NDqBIk", "controlBtn", "config", "getPlaylist", "getValidatedOptions", "2408733nHACuT", "#EXT-X-STREAM-INF", "3962384wHcCuW", "translator", "isInitialized", "getResult", "text", "webkitConnection", "currentTime", "duration", "updateTranslator", "12WyJDxa", "errorState", "stateChange", "playerStartTimeMs", "stringify", "aHR0cHM6Ly9wYXBpLnZwZS5nb3YtbnRydXNzLmNvbS9wbGF5ZXIvY29uZmln", "model", "Naver webview", "json", "startup", "errorMessage", "playbackRate", "dispatchEvent", "playerInfo", "isArray", "vpe", "hasFirstPlayReported", "VPE", "auto", "port", "playerVersion", "cid", "floor", "Safari", "getErrorState", "1564bCZdig", "VPE SDK Initialization failed:", "device", "join", "screen", "play", "data", "7321938pVbJfe", "appId", "slice", "aHR0cHM6Ly9wYXBpLmJldGEtdnBlLmdvdi1udHJ1c3MuY29tL3BsYXllci9jb25maWc=", "hlsPaser", "setErrorRun", "toString", "player_start", "sync", "video", "hls", ".m3u8", "30485819cufwxb", "playlist", "E0001", "height", "playerName", "effectiveType", "mp4", "meta", "watermarkConfig", "maUse", "length", "href", "7wRUEho", "initialize", "LIVE", "code", "now", "protocol", "videoHeight", "type", "startsWith", "4851VhMcjS", "createPlayerInfo", "aHR0cHM6Ly9sb2cuYmV0YS12cGUubmF2ZXJuY3AuY29tL3N0YXRz", "kbps", "title", "performKeyCheck", "aHR0cHM6Ly9wYXBpLmJldGEtdnBlLm5hdmVybmNwLmNvbS9wbGF5ZXIvY29uZmln", "stage", "url", "isFullscreen", "isPaidTier", "match", "getBrowserInfo", "accessKey", "videoWidth", "aHR0cHM6Ly9sb2cudnBlLm5hdmVybmNwLmNvbS9zdGF0cw==", "Unknown", "dash", "11dPBArU", "m3u8", "status", "deviceMemory", "browser", "playerStateReport", "Auto", "serverConfig", "player_version", "indexOf", "saveData", "language", "connection", "userAgentData", "Kakao webview", "quality", "3116540NDMWFt", "getVideoProtocol", "toLowerCase", "rtt", "924473VJFogv", "version", "platform", "Whale", "options", "reduce", "isDev", "result", "Firefox", "navigator", "Content-Type", "host", "string", "test", "mozConnection", "report", "split", "mpd", "contentId"];
|
|
2121
|
-
return Pe = function() {
|
|
2122
|
-
return a;
|
|
2123
|
-
}, Pe();
|
|
2124
|
-
}
|
|
2125
|
-
const y = Yt;
|
|
2115
|
+
const S = Yt;
|
|
2126
2116
|
(function(a, t) {
|
|
2127
2117
|
const e = Yt, i = a();
|
|
2128
2118
|
for (; ; )
|
|
2129
2119
|
try {
|
|
2130
|
-
if (-parseInt(e(
|
|
2120
|
+
if (-parseInt(e(436)) / 1 * (-parseInt(e(411)) / 2) + -parseInt(e(507)) / 3 + parseInt(e(425)) / 4 * (parseInt(e(462)) / 5) + parseInt(e(554)) / 6 + -parseInt(e(560)) / 7 * (-parseInt(e(504)) / 8) + parseInt(e(438)) / 9 * (parseInt(e(470)) / 10) + parseInt(e(415)) / 11 * (-parseInt(e(584)) / 12) === t) break;
|
|
2131
2121
|
i.push(i.shift());
|
|
2132
2122
|
} catch {
|
|
2133
2123
|
i.push(i.shift());
|
|
2134
2124
|
}
|
|
2135
|
-
})(Pe,
|
|
2136
|
-
const
|
|
2125
|
+
})(Pe, 740655);
|
|
2126
|
+
const M0 = { gov: { prod: { config: "aHR0cHM6Ly9wYXBpLnZwZS5nb3YtbnRydXNzLmNvbS9wbGF5ZXIvY29uZmln", report: "aHR0cHM6Ly9sb2cudnBlLmdvdi1udHJ1c3MuY29tL3N0YXRz" }, beta: { config: "aHR0cHM6Ly9wYXBpLmJldGEtdnBlLmdvdi1udHJ1c3MuY29tL3BsYXllci9jb25maWc=", report: S(568) } }, pub: { prod: { config: S(542), report: S(447) }, beta: { config: S(457), report: S(570) } } };
|
|
2137
2127
|
let _t = [];
|
|
2138
2128
|
const R0 = (a) => {
|
|
2139
|
-
const t =
|
|
2129
|
+
const t = S;
|
|
2140
2130
|
try {
|
|
2141
2131
|
return atob(a);
|
|
2142
2132
|
} catch (e) {
|
|
2143
|
-
return console
|
|
2133
|
+
return console[t(519)]("Base64 decoding failed:", e), "";
|
|
2144
2134
|
}
|
|
2145
2135
|
};
|
|
2136
|
+
function Yt(a, t) {
|
|
2137
|
+
return a = a - 411, Pe()[a];
|
|
2138
|
+
}
|
|
2146
2139
|
class P0 {
|
|
2147
|
-
|
|
2148
|
-
[
|
|
2149
|
-
[
|
|
2150
|
-
[
|
|
2151
|
-
|
|
2152
|
-
[
|
|
2153
|
-
[
|
|
2140
|
+
[S(522)] = {};
|
|
2141
|
+
[S(558)] = null;
|
|
2142
|
+
[S(583)];
|
|
2143
|
+
[S(453)];
|
|
2144
|
+
platform;
|
|
2145
|
+
[S(523)];
|
|
2146
|
+
[S(468)];
|
|
2154
2147
|
translator = Je();
|
|
2155
|
-
|
|
2156
|
-
|
|
2148
|
+
[S(430)];
|
|
2149
|
+
[S(565)] = null;
|
|
2157
2150
|
startTimeAt = null;
|
|
2158
|
-
|
|
2159
|
-
[
|
|
2151
|
+
incomingType = null;
|
|
2152
|
+
[S(505)] = !1;
|
|
2160
2153
|
playerStartTimeMs = 0;
|
|
2161
2154
|
constructor({ accessKey: t, appId: e, platform: i, stage: n, isDev: r = !1, language: o }) {
|
|
2162
|
-
const
|
|
2163
|
-
this[
|
|
2155
|
+
const f = S;
|
|
2156
|
+
this[f(583)] = t, this[f(453)] = e || location.origin, this[f(501)] = i, this.stage = n, this[f(468)] = r, this[f(432)](o), this[f(430)] = { errorCode: null, errorMessage: null };
|
|
2164
2157
|
}
|
|
2165
|
-
async
|
|
2166
|
-
const t =
|
|
2167
|
-
if ([this[e[0]], this[e[1]]].some((o) => !o)) return console
|
|
2158
|
+
async initialize() {
|
|
2159
|
+
const t = S, e = [t(583), t(453), t(426), t(451), t(455)], i = t(463);
|
|
2160
|
+
if ([this[e[0]], this[e[1]]].some((o) => !o)) return console[t(414)](i), { error: this[t(515)](e[2]) };
|
|
2168
2161
|
const r = (o) => {
|
|
2169
|
-
const
|
|
2170
|
-
return this[
|
|
2162
|
+
const f = t;
|
|
2163
|
+
return this[f(522)] = o, this[f(558)] = this[f(474)](o), this[f(558)];
|
|
2171
2164
|
};
|
|
2172
2165
|
try {
|
|
2173
|
-
const o = await this[t(
|
|
2174
|
-
if (o[t(
|
|
2175
|
-
const
|
|
2176
|
-
if (window[t(
|
|
2177
|
-
await
|
|
2178
|
-
const h = await
|
|
2179
|
-
this
|
|
2166
|
+
const o = await this[t(535)]();
|
|
2167
|
+
if (o[t(422)] !== 200) return { error: this[t(515)](e[3]) };
|
|
2168
|
+
const f = r(o);
|
|
2169
|
+
if (window[t(549)] && (window[t(549)][t(489)] = f?.[t(469)], window[t(549)][t(540)] = f?.[t(510)], window.vpe.player_name = f[t(469)] + "|" + f[t(510)], window[t(549)][t(587)] = this.stage), f?.[t(487)] === "Y") {
|
|
2170
|
+
await S0(this.platform, this[t(523)], f, this[t(453)], this[t(583)]);
|
|
2171
|
+
const h = await m0(this[t(583)]);
|
|
2172
|
+
this.maManager = new D0(this[t(501)], this.stage, f), this[t(566)] = Date[t(452)](), h?.[t(478)]?.[t(428)] && await this.maManager[t(445)]({ video: f[t(461)] || {}, extra: { ...f[t(471)] } });
|
|
2180
2173
|
}
|
|
2181
|
-
return { options: this[t(
|
|
2174
|
+
return { options: this[t(522)][t(478)]?.[t(421)], playerInfo: f };
|
|
2182
2175
|
} catch (o) {
|
|
2183
|
-
return console[t(
|
|
2176
|
+
return console[t(519)](t(546), o), { error: this[t(515)](e[4]) };
|
|
2184
2177
|
}
|
|
2185
2178
|
}
|
|
2186
|
-
async [
|
|
2187
|
-
const t =
|
|
2179
|
+
async [S(535)]() {
|
|
2180
|
+
const t = S, e = [t(545), t(467), t(543), "application/json", "access_key", "domain", t(484)], i = this[t(468)] ? e[0] : "", n = R0(M0[this[t(501)]][this[t(523)]][e[1]]) + i, r = this.appId, o = JSON[t(544)]([e[4], e[5]][t(434)]((h, y, I) => {
|
|
2188
2181
|
const A = t;
|
|
2189
|
-
return h[
|
|
2190
|
-
}, {})),
|
|
2191
|
-
if (!
|
|
2192
|
-
return
|
|
2182
|
+
return h[y] = [this[A(583)], r][I], h;
|
|
2183
|
+
}, {})), f = await fetch(n, { method: e[6], headers: { [e[2]]: e[3] }, body: o });
|
|
2184
|
+
if (!f.ok) throw new Error([t(476), "Error:", f[t(555)], f.statusText][t(418)](" "));
|
|
2185
|
+
return f[t(541)]();
|
|
2193
2186
|
}
|
|
2194
|
-
|
|
2195
|
-
const t =
|
|
2196
|
-
return /Edg\/(\d+\.\d+)
|
|
2187
|
+
getBrowserInfo() {
|
|
2188
|
+
const t = S, e = navigator.userAgent;
|
|
2189
|
+
return /Edg\/(\d+\.\d+)/.test(e) ? { origin: t(531), version: RegExp.$1 } : /Chrome\/(\d+\.\d+)/.test(e) && !e[t(443)]("Edg") ? { origin: "Chrome", version: RegExp.$1 } : /Firefox\/(\d+\.\d+)/.test(e) ? { origin: t(481), version: RegExp.$1 } : /Version\/(\d+\.\d+)/[t(520)](e) && e[t(443)](t(514)) ? { origin: t(514), version: RegExp.$1 } : { origin: t(416), version: t(416) };
|
|
2197
2190
|
}
|
|
2198
|
-
|
|
2199
|
-
const e =
|
|
2200
|
-
return window[e(
|
|
2191
|
+
createPlayerInfo(t) {
|
|
2192
|
+
const e = S, [i, n] = t[e(478)][e(435)][e(419)]("|"), r = navigator.connection || navigator[e(521)] || navigator.webkitConnection, o = this[e(512)](), f = navigator[e(495)], h = new V(window[e(538)][e(559)])[e(449)]();
|
|
2193
|
+
return window[e(538)].userAgent[e(465)]()[e(443)](e(477)) ? h[e(420)][e(435)] = e(529) : window[e(538)][e(559)].toLowerCase()[e(443)]("kakaotalk") ? h[e(420)].name = e(585) : window[e(538)].userAgent[e(465)]()[e(443)](e(490)) ? h[e(420)][e(435)] = e(500) : window.navigator[e(559)][e(465)]()[e(443)]("kakao") ? h.browser[e(435)] = e(585) : window.navigator[e(559)][e(465)]().includes(e(490)) && (h[e(420)][e(435)] = e(500)), { cid: t[e(478)][e(525)], player_name: i, player_version: n, pricing: t[e(478)][e(494)], maUse: t[e(478)][e(421)]?.[e(487)] === "Y" ? "Y" : "N", browser: { lang: navigator[e(459)], ua: navigator[e(559)] }, screen: { width: window[e(575)].width, height: window[e(575)][e(479)] }, connection: { network: r?.[e(498)] ?? e(574), downlink: r?.downlink ?? null, rtt: r?.[e(433)] ?? null, save_data: r?.saveData ?? !1 }, device: { platform: f?.[e(501)] ?? "Unknown", mobile: f?.mobile ?? !1, memory: navigator[e(486)] ?? null, processor: navigator[e(530)] ?? null }, video: { url: "" }, extra: { vpeKey: this[e(583)], playerType: e(440), playerVersion: window.vpe?.[e(540)] ?? n, os: f?.[e(501)] ?? e(416), osOrigin: h.os[e(435)] || e(416), osVersion: h.os[e(547)], vpePackageId: null, actionDuration: this[e(539)](), actionType: e(485), browser: o[e(548)], browserOrigin: o[e(548)], browserVersion: o[e(547)], quality: e(563), qualityOrigin: e(499), device: h[e(536)].vendor + " " + h[e(536)][e(511)], location: window.location[e(454)], host: window[e(464)][e(431)], port: window[e(464)].port, protocol: window[e(464)][e(493)], title: "" } };
|
|
2201
2194
|
}
|
|
2202
|
-
|
|
2203
|
-
const e =
|
|
2204
|
-
return this[e(
|
|
2195
|
+
[S(515)](t) {
|
|
2196
|
+
const e = S, i = t.slice(-2), n = this[e(439)][e(519)][i] || this.translator[e(519)]["01"], r = { errorCode: t, errorMessage: n };
|
|
2197
|
+
return this[e(430)] = r, console[e(519)](e(572), r), r;
|
|
2205
2198
|
}
|
|
2206
|
-
[
|
|
2207
|
-
const e =
|
|
2208
|
-
this[e(
|
|
2199
|
+
[S(432)](t) {
|
|
2200
|
+
const e = S;
|
|
2201
|
+
this[e(439)] = Je(t);
|
|
2209
2202
|
}
|
|
2210
|
-
[
|
|
2211
|
-
return this
|
|
2203
|
+
[S(518)]() {
|
|
2204
|
+
return this[S(430)];
|
|
2212
2205
|
}
|
|
2213
|
-
|
|
2214
|
-
const t =
|
|
2215
|
-
return this[t(
|
|
2206
|
+
isPaidTier() {
|
|
2207
|
+
const t = S;
|
|
2208
|
+
return this[t(522)].result?.[t(494)] === "pay";
|
|
2216
2209
|
}
|
|
2217
|
-
[
|
|
2218
|
-
const t =
|
|
2219
|
-
return !!this[t(
|
|
2210
|
+
[S(551)]() {
|
|
2211
|
+
const t = S;
|
|
2212
|
+
return !!this[t(522)][t(478)];
|
|
2220
2213
|
}
|
|
2221
|
-
[
|
|
2222
|
-
const e =
|
|
2223
|
-
this[e(
|
|
2214
|
+
[S(586)](t) {
|
|
2215
|
+
const e = S, i = E0(this[e(522)].result?.[e(421)], this[e(522)][e(478)]?.[e(494)]);
|
|
2216
|
+
this.serverConfig[e(478)]?.[e(494)] !== "pay" && (t = { ...t, ...i });
|
|
2224
2217
|
const n = { ...i, ...t ?? {} };
|
|
2225
|
-
return n?.
|
|
2218
|
+
return n?.lang && (n?.[e(482)] == e(579) || this[e(432)](n.lang)), t?.[e(497)] && (n[e(497)] = { ...i[e(497)], ...t[e(497)] }), t?.watermarkConfig && (n[e(446)] = { ...i[e(446)], ...t[e(446)] }), n.playlist && !Array[e(503)](n[e(442)]) && (n[e(442)] = [{ file: n[e(442)] }]), _t = n[e(442)] || [], n;
|
|
2226
2219
|
}
|
|
2227
|
-
[
|
|
2220
|
+
[S(571)]() {
|
|
2228
2221
|
return _t || [];
|
|
2229
2222
|
}
|
|
2230
2223
|
$t(t) {
|
|
2231
|
-
const e =
|
|
2232
|
-
let n = this
|
|
2224
|
+
const e = S, i = t[e(419)](".");
|
|
2225
|
+
let n = this[e(439)];
|
|
2233
2226
|
for (const r of i)
|
|
2234
|
-
if (n && typeof n
|
|
2227
|
+
if (n && typeof n === e(562) && r in n) n = n[r];
|
|
2235
2228
|
else return t;
|
|
2236
|
-
return typeof n === e(
|
|
2229
|
+
return typeof n === e(450) ? n : t;
|
|
2237
2230
|
}
|
|
2238
|
-
async
|
|
2239
|
-
const e =
|
|
2240
|
-
if (!t || t[e(
|
|
2241
|
-
const n = (
|
|
2242
|
-
const
|
|
2231
|
+
async hlsPaser(t) {
|
|
2232
|
+
const e = S, i = [];
|
|
2233
|
+
if (!t || t[e(557)](".m3u8") === -1) return i;
|
|
2234
|
+
const n = (f, h) => {
|
|
2235
|
+
const y = e;
|
|
2243
2236
|
try {
|
|
2244
|
-
return new URL(h,
|
|
2237
|
+
return new URL(h, f)[y(417)]();
|
|
2245
2238
|
} catch {
|
|
2246
2239
|
return h;
|
|
2247
2240
|
}
|
|
2248
|
-
}, r = (
|
|
2249
|
-
const h = e,
|
|
2250
|
-
if (
|
|
2251
|
-
const I =
|
|
2252
|
-
return I ? Math
|
|
2253
|
-
}, o = (
|
|
2254
|
-
const h = e,
|
|
2255
|
-
for (let I = 0; I <
|
|
2256
|
-
const A =
|
|
2257
|
-
if (A
|
|
2258
|
-
const P =
|
|
2259
|
-
P && !P[h(
|
|
2241
|
+
}, r = (f) => {
|
|
2242
|
+
const h = e, y = f.match(/RESOLUTION=(\d+)x(\d+)/);
|
|
2243
|
+
if (y) return y[2] + "p";
|
|
2244
|
+
const I = f[h(496)](/BANDWIDTH=(\d+)/);
|
|
2245
|
+
return I ? Math.round(Number(I[1]) / 1e3) + h(502) : h(579);
|
|
2246
|
+
}, o = (f) => {
|
|
2247
|
+
const h = e, y = f.split(/\r?\n/)[h(581)]((I) => I.trim())[h(483)]((I) => I[h(472)] > 0);
|
|
2248
|
+
for (let I = 0; I < y[h(472)]; I += 1) {
|
|
2249
|
+
const A = y[I];
|
|
2250
|
+
if (A[h(458)](h(460))) {
|
|
2251
|
+
const P = y[I + 1];
|
|
2252
|
+
P && !P[h(458)]("#") && (i[h(564)]({ quality: r(A), url: n(t, P), levelIndex: i[h(472)] }), I += 1);
|
|
2260
2253
|
}
|
|
2261
2254
|
}
|
|
2262
2255
|
};
|
|
2263
2256
|
try {
|
|
2264
|
-
const
|
|
2265
|
-
if (!
|
|
2266
|
-
const h = await
|
|
2257
|
+
const f = await fetch(t);
|
|
2258
|
+
if (!f.ok) return i;
|
|
2259
|
+
const h = await f.text();
|
|
2267
2260
|
return h && o(h), i;
|
|
2268
|
-
} catch (
|
|
2269
|
-
return console[e(
|
|
2261
|
+
} catch (f) {
|
|
2262
|
+
return console[e(519)](e(424), f), i;
|
|
2270
2263
|
}
|
|
2271
2264
|
}
|
|
2272
|
-
async [
|
|
2273
|
-
const e =
|
|
2274
|
-
if (!t?.[e(
|
|
2275
|
-
const i = new
|
|
2276
|
-
if (t.type == e(
|
|
2277
|
-
if (t
|
|
2278
|
-
await this
|
|
2265
|
+
async [S(508)](t) {
|
|
2266
|
+
const e = S;
|
|
2267
|
+
if (!t?.[e(576)] || !this[e(565)] || this[e(558)]?.maUse !== "Y") return;
|
|
2268
|
+
const i = new c0[e(526)](window[e(538)][e(559)])[e(449)]();
|
|
2269
|
+
if (t.type == e(517) || t[e(576)] == e(528)) return;
|
|
2270
|
+
if (t[e(576)] == e(466)) {
|
|
2271
|
+
await this.report(e(466), { extra: { playbackRate: t?.[e(533)]?.[e(506)] || t?.[e(461)]?.[e(533)]?.playbackRate || 1 } }, t[e(576)]);
|
|
2279
2272
|
return;
|
|
2280
2273
|
}
|
|
2281
|
-
if (t
|
|
2282
|
-
await this[e(
|
|
2274
|
+
if (t[e(576)] == "fullscreenchange") {
|
|
2275
|
+
await this[e(532)](e(550), { extra: { isFullscreen: t?.[e(533)]?.[e(516)] || !1 } }, t.type);
|
|
2283
2276
|
return;
|
|
2284
2277
|
}
|
|
2285
|
-
const n = t[e(
|
|
2286
|
-
t[e(
|
|
2287
|
-
const r = t?.[e(
|
|
2288
|
-
this[e(
|
|
2289
|
-
const
|
|
2290
|
-
|
|
2291
|
-
const
|
|
2292
|
-
let
|
|
2293
|
-
if (h == e(
|
|
2294
|
-
const
|
|
2295
|
-
F =
|
|
2278
|
+
const n = t[e(576)];
|
|
2279
|
+
t[e(576)] == e(485) && (t.type = "player_start");
|
|
2280
|
+
const r = t?.[e(461)]?.type == e(437), o = navigator[e(524)] || navigator.mozConnection || navigator[e(448)] || null;
|
|
2281
|
+
this[e(527)] = t?.type || null;
|
|
2282
|
+
const f = this[e(527)] === e(553) && !this[e(505)], h = f ? e(441) : this[e(527)];
|
|
2283
|
+
f && (this[e(505)] = !0);
|
|
2284
|
+
const y = t?.video?.data?.[e(577)] || 0, I = t?.[e(461)]?.[e(533)]?.currentTime || 0, A = t?.[e(461)]?.[e(582)] || 0, P = t?.[e(461)]?.[e(492)] || 0;
|
|
2285
|
+
let Y = 0, F = 0, W = 0;
|
|
2286
|
+
if (h == e(513) && (Y = this[e(539)](), this[e(475)] = Y), h == e(441)) {
|
|
2287
|
+
const ee = this[e(539)]();
|
|
2288
|
+
F = ee - this[e(475)], W = ee;
|
|
2296
2289
|
}
|
|
2297
|
-
const
|
|
2298
|
-
await this[e(
|
|
2290
|
+
const He = { type: h, video: { type: e(r ? 578 : 427), quality: t?.[e(461)]?.[e(412)] ? t?.[e(461)]?.quality : e(579), url: t?.[e(461)]?.[e(573)] }, connection: o ? { network: o[e(498)], downlink: o[e(567)], rtt: o[e(433)], save_data: o[e(556)] } : void 0, extra: { actionType: h, video_type: e(r ? 578 : 427), title: t?.[e(552)]?.[e(473)], contentId: t?.[e(461)]?.[e(534)] || t?.[e(552)]?.[e(534)] || null, metaData: t?.[e(552)], videoWidth: Math.round(A), videoHeight: Math[e(444)](P), video_protocols: this[e(423)](t?.[e(461)]?.[e(573)]), duration: Math[e(480)](y), currentTime: Math[e(480)](I), playedTime: this[e(539)](), viewingTime: Math[e(444)](this.getElapsedMilliseconds() / 1e3), playerStartTime: Y, videoStartTime: F, totalStartTime: W, percent: Math[e(444)](I / y * 100), quality: t?.[e(461)]?.[e(412)] ? t?.[e(461)]?.[e(412)] : e(579), errorCode: t?.[e(561)]?.[e(509)], errorMessage: t?.errorInfo?.errorMessage, actionDuration: this[e(539)]() / 1e3, device: i.device.vendor + " " + i.device[e(511)], location: window.location[e(454)], host: window.location.host, port: window[e(464)][e(491)], protocol: window[e(464)][e(493)] }, browser: { lang: navigator[e(459)], ua: navigator[e(559)] }, screen: { width: window.screen[e(580)], height: window[e(575)].height } };
|
|
2291
|
+
await this[e(532)](h, He, n);
|
|
2299
2292
|
}
|
|
2300
|
-
async [
|
|
2301
|
-
const n =
|
|
2302
|
-
if (!this[n(
|
|
2303
|
-
const r = e && typeof e
|
|
2304
|
-
await this[n(
|
|
2293
|
+
async [S(532)](t, e, i) {
|
|
2294
|
+
const n = S;
|
|
2295
|
+
if (!this[n(565)]) return;
|
|
2296
|
+
const r = e && typeof e === n(562) ? e : { extra: { actionDuration: this.getElapsedMilliseconds() } };
|
|
2297
|
+
await this.maManager[n(429)](r), await this[n(565)][n(456)]({ type: t, data: r });
|
|
2305
2298
|
}
|
|
2306
|
-
[
|
|
2307
|
-
const e =
|
|
2308
|
-
return t
|
|
2299
|
+
[S(423)](t) {
|
|
2300
|
+
const e = S;
|
|
2301
|
+
return t[e(557)](e(413)) > -1 ? "hls" : t[e(557)](e(569)) > -1 ? e(537) : e(488);
|
|
2309
2302
|
}
|
|
2310
|
-
[
|
|
2311
|
-
const t =
|
|
2312
|
-
return this.startTimeAt ? (/* @__PURE__ */ new Date())
|
|
2303
|
+
[S(539)]() {
|
|
2304
|
+
const t = S;
|
|
2305
|
+
return this.startTimeAt ? (/* @__PURE__ */ new Date()).getTime() - this[t(566)] : 0;
|
|
2313
2306
|
}
|
|
2314
2307
|
}
|
|
2308
|
+
function Pe() {
|
|
2309
|
+
const a = ["Edge", "report", "data", "contentId", "performKeyCheck", "device", "dash", "navigator", "getElapsedMilliseconds", "playerVersion", "json", "aHR0cHM6Ly9wYXBpLnZwZS5uYXZlcm5jcC5jb20vcGxheWVyL2NvbmZpZw==", "Content-Type", "stringify", "?preview=true", "VPE SDK Initialization failed:", "version", "origin", "vpe", "fullscreenchange", "isInitialized", "meta", "play", "5268318cMLtgO", "status", "saveData", "indexOf", "playerInfo", "userAgent", "2047059QasqxO", "errorInfo", "object", "Other", "push", "maManager", "startTimeAt", "downlink", "aHR0cHM6Ly9sb2cuYmV0YS12cGUuZ292LW50cnVzcy5jb20vc3RhdHM=", "mpd", "aHR0cHM6Ly9sb2cuYmV0YS12cGUubmF2ZXJuY3AuY29tL3N0YXRz", "getPlaylist", "ncplayer : ", "url", "unknown", "screen", "type", "duration", "LIVE", "auto", "width", "map", "videoWidth", "accessKey", "33810936mhHcnA", "Kakao webview", "getValidatedOptions", "state", "8570FRphLv", "quality", "m3u8", "warn", "11WgIYYJ", "Unknown", "toString", "join", "split", "browser", "options", "code", "getVideoProtocol", "HLS 파싱 실패:", "44fOMIlV", "E0002", "VOD", "sync", "maSync", "errorState", "host", "updateTranslator", "rtt", "reduce", "name", "326ckhatm", "live", "153MPFHmx", "translator", "VPE", "startup", "playlist", "includes", "round", "maInit", "watermarkConfig", "aHR0cHM6Ly9sb2cudnBlLm5hdmVybmNwLmNvbS9zdGF0cw==", "webkitConnection", "getResult", "string", "E0001", "now", "appId", "href", "E0003", "dispatchEvent", "aHR0cHM6Ly9wYXBpLmJldGEtdnBlLm5hdmVybmNwLmNvbS9wbGF5ZXIvY29uZmln", "startsWith", "language", "#EXT-X-STREAM-INF", "video", "100645LLNQYy", "VPE Player: accessKey 또는 appId가 없어 키 인증을 건너뜁니다.", "location", "toLowerCase", "ratechange", "config", "isDev", "player_name", "284590oMdqCt", "extra", "length", "title", "createPlayerInfo", "playerStartTimeMs", "API", "whale", "result", "height", "floor", "Firefox", "lang", "filter", "POST", "ready", "deviceMemory", "maUse", "mp4", "playerName", "naver", "port", "videoHeight", "protocol", "pricing", "userAgentData", "match", "controlBtn", "effectiveType", "Auto", "Naver webview", "platform", "kbps", "isArray", "32xhqkdN", "hasFirstPlayReported", "playbackRate", "1775100fEaJVk", "playerStateReport", "errorCode", "player_version", "model", "getBrowserInfo", "player_start", "Safari", "setErrorRun", "isFullscreen", "volumechange", "getErrorState", "error", "test", "mozConnection", "serverConfig", "stage", "connection", "cid", "UAParser", "incomingType", "stateChange", "Whale", "hardwareConcurrency"];
|
|
2310
|
+
return Pe = function() {
|
|
2311
|
+
return a;
|
|
2312
|
+
}, Pe();
|
|
2313
|
+
}
|
|
2314
|
+
function O0(a, t) {
|
|
2315
|
+
a = a - 415;
|
|
2316
|
+
var e = Ne(), i = e[a];
|
|
2317
|
+
return i;
|
|
2318
|
+
}
|
|
2315
2319
|
(function(a, t) {
|
|
2316
2320
|
for (var e = O0, i = a(); ; )
|
|
2317
2321
|
try {
|
|
2318
|
-
var n = parseInt(e(
|
|
2322
|
+
var n = -parseInt(e(421)) / 1 + parseInt(e(417)) / 2 * (-parseInt(e(420)) / 3) + -parseInt(e(423)) / 4 * (parseInt(e(422)) / 5) + parseInt(e(424)) / 6 * (parseInt(e(415)) / 7) + -parseInt(e(419)) / 8 + parseInt(e(416)) / 9 + parseInt(e(418)) / 10;
|
|
2319
2323
|
if (n === t) break;
|
|
2320
2324
|
i.push(i.shift());
|
|
2321
2325
|
} catch {
|
|
2322
2326
|
i.push(i.shift());
|
|
2323
2327
|
}
|
|
2324
|
-
})(Ne,
|
|
2328
|
+
})(Ne, 749526);
|
|
2325
2329
|
function Ne() {
|
|
2326
|
-
var a = ["
|
|
2330
|
+
var a = ["18426880eOXUIs", "8064680jWwaUH", "51gAktfm", "523822TSjpsf", "1915ckDudW", "924DgnPnF", "719724GxnpRI", "77WhIFTS", "1983879rfYQhh", "119142LKmZXD"];
|
|
2327
2331
|
return Ne = function() {
|
|
2328
2332
|
return a;
|
|
2329
2333
|
}, Ne();
|
|
2330
2334
|
}
|
|
2331
|
-
function O0(a, t) {
|
|
2332
|
-
a = a - 105;
|
|
2333
|
-
var e = Ne(), i = e[a];
|
|
2334
|
-
return i;
|
|
2335
|
-
}
|
|
2336
2335
|
export {
|
|
2337
2336
|
P0 as default,
|
|
2338
2337
|
Je as getTranslator
|