@sgrsoft/vpe-core-sdk 0.20.7 → 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 +814 -814
- package/package.json +1 -1
package/dist/vpe-core-sdk.es.js
CHANGED
|
@@ -1,183 +1,182 @@
|
|
|
1
|
-
var
|
|
2
|
-
function
|
|
3
|
-
|
|
4
|
-
var e = Ie(), i = e[x];
|
|
5
|
-
return i;
|
|
6
|
-
}
|
|
7
|
-
function Ie() {
|
|
8
|
-
var x = ["min", "Cannot play DASH video on iOS.", "You are muted.", "5141265RBAgwB", "The network connection is unstable.", "Drugs", "Font Size", "Horror", "Required module was not loaded. (dash.js)", "Sexuality", "hour(s)", "Exit fullscreen", "Invalid URL format.", "Default", "Window Color", "Video will start in {timeTxt}.", "Extra Bold", "643603ItEQfR", "seconds until auto-play", "3154fcRBFV", "You do not have permission to play this video.", "Change text, color, and background styles", "Depressed", "Subtitles not available", "1897731cRwkfR", "Cancel", "Unsupported format.", "Background Opacity", "Screen capture / screen recording has been detected.", "FairPlay certificate validation failed.", "Playback speed", "Fullscreen", "Skip Opening", "Raised", "Text Edge Style", "3926116QGYeZZ", "Auto Skip Intro", "Turn off captions", "In a moment", "None", "Mini player", "Provocative content", "Window Opacity", "Yellow", "Turn on captions", "The video could not be played.", "This video may be inappropriate for children under 12 and requires parental guidance.", "Magenta", "Required module was not loaded. (hls.js)", "20oOOMeW", "Green", "Quality", "24TjcrZw", "Mute", "Subtitles", "Failed to communicate with the DRM license server.", "7sGnUlU", "Next video will play in {timeTxt} seconds.", "Skip Ending", "Invalid DRM token.", "Auto Skip Opening/Ending", "Blue", "Bold", "Auto Skip Opening", "day", "Next video", "This video is rated for all audiences.", "Skip Intro", "The license is not valid.", "Font Color", "Semi Bold", "1728030QLEJiK", "Normal", "Replay", "This video may be inappropriate for minors.", "Font Weight", "minute(s)", "License", "Imitation risk", "Drop Shadow", "Not used", "Red", "Play", "Previous video", "Uniform", "2660697PBtuXt", "Cannot play video", "Black", "660GuFlQP", "Settings", "Apply Default Style", "Auto Skip Ending", "Invalid access. Please check your access_key."];
|
|
9
|
-
return Ie = function() {
|
|
10
|
-
return x;
|
|
11
|
-
}, Ie();
|
|
12
|
-
}
|
|
13
|
-
(function(x, t) {
|
|
14
|
-
for (var e = Tt, i = x(); ; )
|
|
1
|
+
var p = Et;
|
|
2
|
+
(function(a, t) {
|
|
3
|
+
for (var e = Et, i = a(); ; )
|
|
15
4
|
try {
|
|
16
|
-
var n =
|
|
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
|
-
})(
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
var e = ke(), i = e[x];
|
|
11
|
+
})(ke, 328566);
|
|
12
|
+
function Et(a, t) {
|
|
13
|
+
a = a - 342;
|
|
14
|
+
var e = ke(), i = e[a];
|
|
27
15
|
return i;
|
|
28
16
|
}
|
|
29
|
-
var b = Ct;
|
|
30
|
-
(function(x, t) {
|
|
31
|
-
for (var e = Ct, i = x(); ; )
|
|
32
|
-
try {
|
|
33
|
-
var n = -parseInt(e(313)) / 1 + parseInt(e(341)) / 2 + -parseInt(e(368)) / 3 + parseInt(e(374)) / 4 + -parseInt(e(333)) / 5 + parseInt(e(350)) / 6 * (parseInt(e(345)) / 7) + parseInt(e(352)) / 8 * (-parseInt(e(347)) / 9);
|
|
34
|
-
if (n === t) break;
|
|
35
|
-
i.push(i.shift());
|
|
36
|
-
} catch {
|
|
37
|
-
i.push(i.shift());
|
|
38
|
-
}
|
|
39
|
-
})(ke, 537349);
|
|
40
|
-
const Kt = { common: { cancel: "취소", auto: "자동", normal: "보통", notUse: b(363), prev: b(354), next: "다음 동영상", delayText: "초 뒤 자동재생", license: b(328), play: "재생", pause: b(327), replay: b(335), fullOn: b(353), fullOff: b(358), muteOn: b(364), muteOff: b(323), captionOff: "자막끄기", captionOn: b(308), setting: "설정", live: b(317), miniPlayer: b(371), isMute: b(343), subtitle: "자막", subtitleNot: "자막 사용 불가" }, settings: { autoplay: b(365), playbackRate: b(309), captions: "자막", quality: b(319) }, skip: { introSkip: b(331), openingSkip: "오프닝 건너뛰기", endingSkip: b(324), autoSkipIntro: b(346), autoSkipOpening: b(314), autoSkipEnding: b(310), autoSkipOpeningEnding: "오프닝/엔딩 자동 스킵" }, ageRating: { noticeAll: b(311), notice12: b(366), notice15: b(332), notice19: b(334) }, contentWarning: { sexuality: "성적 표현", violence: "폭력", language: "욕설", drugs: "약물", horror: "공포", imitation: b(339), provocative: b(330) }, error: { "01": { title: b(348), desc: "잘못된 접근입니다. access_key를 확인해주세요." }, "02": { title: b(348), desc: b(340) }, "03": { title: b(349), desc: b(369) }, "04": { title: b(348), desc: b(351) }, "05": { title: "동영상을 재생할 수 없음", desc: b(372) }, "06": { title: b(348), desc: b(321) }, "07": { title: b(348), desc: b(316) }, "08": { title: "동영상을 재생할 수 없음", desc: b(329) }, "09": { title: b(348), desc: b(336) }, 10: { title: b(348), desc: b(315) }, 11: { title: b(348), desc: b(322) }, 12: { title: "동영상을 재생할 수 없음", desc: b(344) }, 13: { title: b(348), desc: "FairPlay 인증서 검증에 실패하였습니다." }, 14: { title: "동영상을 재생할 수 없음", desc: "화면 캡쳐 / 화면 녹화가 감지되었습니다." }, 15: { title: "플레이어 실행 실패", desc: b(367) }, 16: { title: b(356), desc: b(312) }, 17: { title: b(360), desc: b(338) } }, tv: { default: "기본", quality: "화질", subtitleStyle: "자막 스타일", subtitleStyleDesc: b(318), applyDefaultStyle: b(370), fontColor: b(355), fontSize: "글꼴 크기", textOpacity: b(325), edgeStyle: b(306), bgColor: "배경 색상", bgOpacity: b(307), windowColor: b(304), windowOpacity: "창 불투명도", fontWeight: b(337), weight: { thin: "얇게", normal: "보통", semiBold: b(326), bold: "굵게", extraBold: b(373) }, color: { white: "흰색", black: "검정색", red: b(305), green: b(359), blue: b(362), yellow: "노란색", magenta: b(342), cyan: b(303) }, edge: { none: "없음", dropShadow: b(361), raised: "양각", depressed: "음각", uniform: "균일" } }, alternative: { hour: "시", minute: "분", second: "초", after: "잠시 ", afterMin: "분 ", afterHour: b(357), afterDay: "일 ", startPlay: "{timeTxt} 후 영상이 시작됩니다.", nextPlay: b(320), afterPlay: "예정" } };
|
|
41
17
|
function ke() {
|
|
42
|
-
var
|
|
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"];
|
|
43
19
|
return ke = function() {
|
|
44
|
-
return
|
|
20
|
+
return a;
|
|
45
21
|
}, ke();
|
|
46
22
|
}
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
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) } };
|
|
24
|
+
var w = Tt;
|
|
25
|
+
function Tt(a, t) {
|
|
26
|
+
a = a - 477;
|
|
27
|
+
var e = _e(), i = e[a];
|
|
50
28
|
return i;
|
|
51
29
|
}
|
|
52
|
-
|
|
53
|
-
(
|
|
54
|
-
for (var e = At, i = x(); ; )
|
|
30
|
+
(function(a, t) {
|
|
31
|
+
for (var e = Tt, i = a(); ; )
|
|
55
32
|
try {
|
|
56
|
-
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);
|
|
57
34
|
if (n === t) break;
|
|
58
35
|
i.push(i.shift());
|
|
59
36
|
} catch {
|
|
60
37
|
i.push(i.shift());
|
|
61
38
|
}
|
|
62
|
-
})(_e,
|
|
39
|
+
})(_e, 819649);
|
|
63
40
|
function _e() {
|
|
64
|
-
var
|
|
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}초 후 다음 영상이 재생됩니다.", "일시정지"];
|
|
65
42
|
return _e = function() {
|
|
66
|
-
return
|
|
43
|
+
return a;
|
|
67
44
|
}, _e();
|
|
68
45
|
}
|
|
69
|
-
const
|
|
70
|
-
function
|
|
71
|
-
|
|
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;
|
|
72
51
|
}
|
|
52
|
+
var g = Ct;
|
|
53
|
+
(function(a, t) {
|
|
54
|
+
for (var e = Ct, i = a(); ; )
|
|
55
|
+
try {
|
|
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);
|
|
57
|
+
if (n === t) break;
|
|
58
|
+
i.push(i.shift());
|
|
59
|
+
} catch {
|
|
60
|
+
i.push(i.shift());
|
|
61
|
+
}
|
|
62
|
+
})(Ee, 403977);
|
|
73
63
|
function Ee() {
|
|
74
|
-
|
|
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", "模倣危険", "字幕をオフにする"];
|
|
75
65
|
return Ee = function() {
|
|
76
|
-
return
|
|
66
|
+
return a;
|
|
77
67
|
}, Ee();
|
|
78
68
|
}
|
|
79
|
-
const
|
|
80
|
-
(function(
|
|
81
|
-
const e =
|
|
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;
|
|
70
|
+
(function(a, t) {
|
|
71
|
+
const e = Dt, i = a();
|
|
82
72
|
for (; ; )
|
|
83
73
|
try {
|
|
84
|
-
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;
|
|
85
75
|
i.push(i.shift());
|
|
86
76
|
} catch {
|
|
87
77
|
i.push(i.shift());
|
|
88
78
|
}
|
|
89
|
-
})(
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
const t = x.split("-")[0];
|
|
93
|
-
return t in Mt ? t : "en";
|
|
79
|
+
})(Te, 345296);
|
|
80
|
+
function Dt(a, t) {
|
|
81
|
+
return a = a - 212, Te()[a];
|
|
94
82
|
}
|
|
95
|
-
function
|
|
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";
|
|
93
|
+
}
|
|
94
|
+
function Je(a) {
|
|
96
95
|
let t = "en";
|
|
97
|
-
|
|
98
|
-
const e =
|
|
96
|
+
a ? t = a : Kt() && (t = navigator.language);
|
|
97
|
+
const e = jt(t);
|
|
99
98
|
return Mt[e];
|
|
100
99
|
}
|
|
101
|
-
|
|
102
|
-
var Xt = "2.0.9",
|
|
100
|
+
Je();
|
|
101
|
+
var Xt = "2.0.9", Jt = 500, ot = "user-agent", re = "", st = "?", E = {
|
|
103
102
|
FUNCTION: "function",
|
|
104
103
|
OBJECT: "object",
|
|
105
104
|
STRING: "string",
|
|
106
105
|
UNDEFINED: "undefined"
|
|
107
|
-
}, O = "browser",
|
|
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) {
|
|
108
107
|
var e = {}, i = t;
|
|
109
|
-
if (!
|
|
108
|
+
if (!Ce(t)) {
|
|
110
109
|
i = {};
|
|
111
110
|
for (var n in t)
|
|
112
111
|
for (var r in t[n])
|
|
113
112
|
i[r] = t[n][r].concat(i[r] ? i[r] : []);
|
|
114
113
|
}
|
|
115
|
-
for (var o in
|
|
116
|
-
e[o] = i[o] && i[o].length % 2 === 0 ? i[o].concat(
|
|
114
|
+
for (var o in a)
|
|
115
|
+
e[o] = i[o] && i[o].length % 2 === 0 ? i[o].concat(a[o]) : a[o];
|
|
117
116
|
return e;
|
|
118
|
-
},
|
|
119
|
-
for (var t = {}, e = 0; e <
|
|
120
|
-
t[
|
|
117
|
+
}, Le = function(a) {
|
|
118
|
+
for (var t = {}, e = 0; e < a.length; e++)
|
|
119
|
+
t[a[e].toUpperCase()] = a[e];
|
|
121
120
|
return t;
|
|
122
|
-
},
|
|
123
|
-
if (typeof
|
|
124
|
-
for (var e in
|
|
125
|
-
if (
|
|
121
|
+
}, Qe = function(a, t) {
|
|
122
|
+
if (typeof a === E.OBJECT && a.length > 0) {
|
|
123
|
+
for (var e in a)
|
|
124
|
+
if (j(t) == j(a[e])) return !0;
|
|
126
125
|
return !1;
|
|
127
126
|
}
|
|
128
|
-
return
|
|
129
|
-
},
|
|
130
|
-
for (var e in
|
|
131
|
-
return /^(browser|cpu|device|engine|os)$/.test(e) || (t ?
|
|
132
|
-
},
|
|
133
|
-
return typeof
|
|
134
|
-
},
|
|
135
|
-
if (
|
|
136
|
-
for (var t = [], e =
|
|
127
|
+
return be(a) ? j(t) == j(a) : !1;
|
|
128
|
+
}, Ce = function(a, t) {
|
|
129
|
+
for (var e in a)
|
|
130
|
+
return /^(browser|cpu|device|engine|os)$/.test(e) || (t ? Ce(a[e]) : !1);
|
|
131
|
+
}, be = function(a) {
|
|
132
|
+
return typeof a === E.STRING;
|
|
133
|
+
}, je = function(a) {
|
|
134
|
+
if (a) {
|
|
135
|
+
for (var t = [], e = ce(/\\?\"/g, a).split(","), i = 0; i < e.length; i++)
|
|
137
136
|
if (e[i].indexOf(";") > -1) {
|
|
138
|
-
var n =
|
|
137
|
+
var n = Ae(e[i]).split(";v=");
|
|
139
138
|
t[i] = { brand: n[0], version: n[1] };
|
|
140
139
|
} else
|
|
141
|
-
t[i] =
|
|
140
|
+
t[i] = Ae(e[i]);
|
|
142
141
|
return t;
|
|
143
142
|
}
|
|
144
|
-
},
|
|
145
|
-
return
|
|
146
|
-
},
|
|
147
|
-
return
|
|
148
|
-
},
|
|
149
|
-
for (var t in
|
|
150
|
-
if (
|
|
151
|
-
var e =
|
|
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) {
|
|
148
|
+
for (var t in a)
|
|
149
|
+
if (a.hasOwnProperty(t)) {
|
|
150
|
+
var e = a[t];
|
|
152
151
|
typeof e == E.OBJECT && e.length == 2 ? this[e[0]] = e[1] : this[e] = void 0;
|
|
153
152
|
}
|
|
154
153
|
return this;
|
|
155
|
-
},
|
|
156
|
-
return
|
|
157
|
-
},
|
|
158
|
-
return
|
|
159
|
-
},
|
|
160
|
-
return
|
|
161
|
-
},
|
|
162
|
-
if (!(!
|
|
163
|
-
for (var e = 0, i, n, r, o,
|
|
154
|
+
}, ce = function(a, t) {
|
|
155
|
+
return be(t) ? t.replace(a, re) : t;
|
|
156
|
+
}, fe = function(a) {
|
|
157
|
+
return ce(/\\?\"/g, a);
|
|
158
|
+
}, Ae = function(a, t) {
|
|
159
|
+
return a = ce(/^\s\s*/, String(a)), typeof t === E.UNDEFINED ? a : a.substring(0, t);
|
|
160
|
+
}, et = function(a, t) {
|
|
161
|
+
if (!(!a || !t))
|
|
162
|
+
for (var e = 0, i, n, r, o, f, h; e < t.length && !f; ) {
|
|
164
163
|
var y = t[e], I = t[e + 1];
|
|
165
|
-
for (i = n = 0; i < y.length && !
|
|
166
|
-
if (
|
|
164
|
+
for (i = n = 0; i < y.length && !f && y[i]; )
|
|
165
|
+
if (f = y[i++].exec(a), f)
|
|
167
166
|
for (r = 0; r < I.length; r++)
|
|
168
|
-
|
|
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;
|
|
169
168
|
e += 2;
|
|
170
169
|
}
|
|
171
|
-
}, U = function(
|
|
170
|
+
}, U = function(a, t) {
|
|
172
171
|
for (var e in t)
|
|
173
172
|
if (typeof t[e] === E.OBJECT && t[e].length > 0) {
|
|
174
173
|
for (var i = 0; i < t[e].length; i++)
|
|
175
|
-
if (
|
|
176
|
-
return e ===
|
|
177
|
-
} else if (
|
|
178
|
-
return e ===
|
|
179
|
-
return t.hasOwnProperty("*") ? t["*"] :
|
|
180
|
-
},
|
|
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;
|
|
178
|
+
return t.hasOwnProperty("*") ? t["*"] : a;
|
|
179
|
+
}, mt = {
|
|
181
180
|
ME: "4.90",
|
|
182
181
|
"NT 3.51": "3.51",
|
|
183
182
|
"NT 4.0": "4.0",
|
|
@@ -189,7 +188,7 @@ var Xt = "2.0.9", Qt = 500, rt = "user-agent", ne = "", ot = "?", E = {
|
|
|
189
188
|
"8.1": "6.3",
|
|
190
189
|
10: ["6.4", "10.0"],
|
|
191
190
|
NT: ""
|
|
192
|
-
},
|
|
191
|
+
}, yt = {
|
|
193
192
|
embedded: "Automotive",
|
|
194
193
|
mobile: "Mobile",
|
|
195
194
|
tablet: ["Tablet", "EInk"],
|
|
@@ -198,7 +197,7 @@ var Xt = "2.0.9", Qt = 500, rt = "user-agent", ne = "", ot = "?", E = {
|
|
|
198
197
|
xr: ["VR", "XR"],
|
|
199
198
|
"?": ["Desktop", "Unknown"],
|
|
200
199
|
"*": void 0
|
|
201
|
-
},
|
|
200
|
+
}, o0 = {
|
|
202
201
|
Chrome: "Google Chrome",
|
|
203
202
|
Edge: "Microsoft Edge",
|
|
204
203
|
"Edge WebView2": "Microsoft Edge WebView2",
|
|
@@ -208,23 +207,23 @@ var Xt = "2.0.9", Qt = 500, rt = "user-agent", ne = "", ot = "?", E = {
|
|
|
208
207
|
"MIUI Browser": "Miui Browser",
|
|
209
208
|
"Opera Mobi": "OperaMobile",
|
|
210
209
|
Yandex: "YaBrowser"
|
|
211
|
-
},
|
|
210
|
+
}, vt = {
|
|
212
211
|
browser: [
|
|
213
212
|
[
|
|
214
213
|
// Most common regardless engine
|
|
215
214
|
/\b(?:crmo|crios)\/([\w\.]+)/i
|
|
216
215
|
// Chrome for Android/iOS
|
|
217
216
|
],
|
|
218
|
-
[
|
|
217
|
+
[l, [d, xe + "Chrome"]],
|
|
219
218
|
[
|
|
220
219
|
/webview.+edge\/([\w\.]+)/i
|
|
221
220
|
// Microsoft Edge
|
|
222
221
|
],
|
|
223
|
-
[
|
|
222
|
+
[l, [d, Ie + " WebView"]],
|
|
224
223
|
[
|
|
225
224
|
/edg(?:e|ios|a)?\/([\w\.]+)/i
|
|
226
225
|
],
|
|
227
|
-
[
|
|
226
|
+
[l, [d, "Edge"]],
|
|
228
227
|
[
|
|
229
228
|
// Presto based
|
|
230
229
|
/(opera mini)\/([-\w\.]+)/i,
|
|
@@ -234,33 +233,33 @@ var Xt = "2.0.9", Qt = 500, rt = "user-agent", ne = "", ot = "?", E = {
|
|
|
234
233
|
/(opera)(?:.+version\/|[\/ ]+)([\w\.]+)/i
|
|
235
234
|
// Opera
|
|
236
235
|
],
|
|
237
|
-
[
|
|
236
|
+
[d, l],
|
|
238
237
|
[
|
|
239
238
|
/opios[\/ ]+([\w\.]+)/i
|
|
240
239
|
// Opera mini on iphone >= 8.0
|
|
241
240
|
],
|
|
242
|
-
[
|
|
241
|
+
[l, [d, ae + " Mini"]],
|
|
243
242
|
[
|
|
244
243
|
/\bop(?:rg)?x\/([\w\.]+)/i
|
|
245
244
|
// Opera GX
|
|
246
245
|
],
|
|
247
|
-
[
|
|
246
|
+
[l, [d, ae + " GX"]],
|
|
248
247
|
[
|
|
249
248
|
/\bopr\/([\w\.]+)/i
|
|
250
249
|
// Opera Webkit
|
|
251
250
|
],
|
|
252
|
-
[
|
|
251
|
+
[l, [d, ae]],
|
|
253
252
|
[
|
|
254
253
|
// Mixed
|
|
255
254
|
/\bb[ai]*d(?:uhd|[ub]*[aekoprswx]{5,6})[\/ ]?([\w\.]+)/i
|
|
256
255
|
// Baidu
|
|
257
256
|
],
|
|
258
|
-
[
|
|
257
|
+
[l, [d, "Baidu"]],
|
|
259
258
|
[
|
|
260
259
|
/\b(?:mxbrowser|mxios|myie2)\/?([-\w\.]*)\b/i
|
|
261
260
|
// Maxthon
|
|
262
261
|
],
|
|
263
|
-
[
|
|
262
|
+
[l, [d, "Maxthon"]],
|
|
264
263
|
[
|
|
265
264
|
/(kindle)\/([\w\.]+)/i,
|
|
266
265
|
// Kindle
|
|
@@ -283,22 +282,22 @@ var Xt = "2.0.9", Qt = 500, rt = "user-agent", ne = "", ot = "?", E = {
|
|
|
283
282
|
/(ecosia|weibo)(?:__| \w+@)([\d\.]+)/i
|
|
284
283
|
// Ecosia/Weibo
|
|
285
284
|
],
|
|
286
|
-
[
|
|
285
|
+
[d, l],
|
|
287
286
|
[
|
|
288
287
|
/quark(?:pc)?\/([-\w\.]+)/i
|
|
289
288
|
// Quark
|
|
290
289
|
],
|
|
291
|
-
[
|
|
290
|
+
[l, [d, "Quark"]],
|
|
292
291
|
[
|
|
293
292
|
/\bddg\/([\w\.]+)/i
|
|
294
293
|
// DuckDuckGo
|
|
295
294
|
],
|
|
296
|
-
[
|
|
295
|
+
[l, [d, "DuckDuckGo"]],
|
|
297
296
|
[
|
|
298
297
|
/(?:\buc? ?browser|(?:juc.+)ucweb)[\/ ]?([\w\.]+)/i
|
|
299
298
|
// UCBrowser
|
|
300
299
|
],
|
|
301
|
-
[
|
|
300
|
+
[l, [d, "UCBrowser"]],
|
|
302
301
|
[
|
|
303
302
|
/microm.+\bqbcore\/([\w\.]+)/i,
|
|
304
303
|
// WeChat Desktop for Windows Built-in Browser
|
|
@@ -306,107 +305,107 @@ var Xt = "2.0.9", Qt = 500, rt = "user-agent", ne = "", ot = "?", E = {
|
|
|
306
305
|
/micromessenger\/([\w\.]+)/i
|
|
307
306
|
// WeChat
|
|
308
307
|
],
|
|
309
|
-
[
|
|
308
|
+
[l, [d, "WeChat"]],
|
|
310
309
|
[
|
|
311
310
|
/konqueror\/([\w\.]+)/i
|
|
312
311
|
// Konqueror
|
|
313
312
|
],
|
|
314
|
-
[
|
|
313
|
+
[l, [d, "Konqueror"]],
|
|
315
314
|
[
|
|
316
315
|
/trident.+rv[: ]([\w\.]{1,9})\b.+like gecko/i
|
|
317
316
|
// IE11
|
|
318
317
|
],
|
|
319
|
-
[
|
|
318
|
+
[l, [d, "IE"]],
|
|
320
319
|
[
|
|
321
320
|
/ya(?:search)?browser\/([\w\.]+)/i
|
|
322
321
|
// Yandex
|
|
323
322
|
],
|
|
324
|
-
[
|
|
323
|
+
[l, [d, "Yandex"]],
|
|
325
324
|
[
|
|
326
325
|
/slbrowser\/([\w\.]+)/i
|
|
327
326
|
// Smart Lenovo Browser
|
|
328
327
|
],
|
|
329
|
-
[
|
|
328
|
+
[l, [d, "Smart " + Ge + ne]],
|
|
330
329
|
[
|
|
331
330
|
/(av(?:ast|g|ira))\/([\w\.]+)/i
|
|
332
331
|
// Avast/AVG/Avira Secure Browser
|
|
333
332
|
],
|
|
334
|
-
[[
|
|
333
|
+
[[d, /(.+)/, "$1 Secure" + ne], l],
|
|
335
334
|
[
|
|
336
335
|
/norton\/([\w\.]+)/i
|
|
337
336
|
// Norton Private Browser
|
|
338
337
|
],
|
|
339
|
-
[
|
|
338
|
+
[l, [d, "Norton Private" + ne]],
|
|
340
339
|
[
|
|
341
340
|
/\bfocus\/([\w\.]+)/i
|
|
342
341
|
// Firefox Focus
|
|
343
342
|
],
|
|
344
|
-
[
|
|
343
|
+
[l, [d, ue + " Focus"]],
|
|
345
344
|
[
|
|
346
345
|
/ mms\/([\w\.]+)$/i
|
|
347
346
|
// Opera Neon
|
|
348
347
|
],
|
|
349
|
-
[
|
|
348
|
+
[l, [d, ae + " Neon"]],
|
|
350
349
|
[
|
|
351
350
|
/ opt\/([\w\.]+)$/i
|
|
352
351
|
// Opera Touch
|
|
353
352
|
],
|
|
354
|
-
[
|
|
353
|
+
[l, [d, ae + " Touch"]],
|
|
355
354
|
[
|
|
356
355
|
/coc_coc\w+\/([\w\.]+)/i
|
|
357
356
|
// Coc Coc Browser
|
|
358
357
|
],
|
|
359
|
-
[
|
|
358
|
+
[l, [d, "Coc Coc"]],
|
|
360
359
|
[
|
|
361
360
|
/dolfin\/([\w\.]+)/i
|
|
362
361
|
// Dolphin
|
|
363
362
|
],
|
|
364
|
-
[
|
|
363
|
+
[l, [d, "Dolphin"]],
|
|
365
364
|
[
|
|
366
365
|
/coast\/([\w\.]+)/i
|
|
367
366
|
// Opera Coast
|
|
368
367
|
],
|
|
369
|
-
[
|
|
368
|
+
[l, [d, ae + " Coast"]],
|
|
370
369
|
[
|
|
371
370
|
/miuibrowser\/([\w\.]+)/i
|
|
372
371
|
// MIUI Browser
|
|
373
372
|
],
|
|
374
|
-
[
|
|
373
|
+
[l, [d, "MIUI" + ne]],
|
|
375
374
|
[
|
|
376
375
|
/fxios\/([\w\.-]+)/i
|
|
377
376
|
// Firefox for iOS
|
|
378
377
|
],
|
|
379
|
-
[
|
|
378
|
+
[l, [d, xe + ue]],
|
|
380
379
|
[
|
|
381
380
|
/\bqihoobrowser\/?([\w\.]*)/i
|
|
382
381
|
// 360
|
|
383
382
|
],
|
|
384
|
-
[
|
|
383
|
+
[l, [d, "360"]],
|
|
385
384
|
[
|
|
386
385
|
/\b(qq)\/([\w\.]+)/i
|
|
387
386
|
// QQ
|
|
388
387
|
],
|
|
389
|
-
[[
|
|
388
|
+
[[d, /(.+)/, "$1Browser"], l],
|
|
390
389
|
[
|
|
391
390
|
/(oculus|sailfish|huawei|vivo|pico)browser\/([\w\.]+)/i
|
|
392
391
|
],
|
|
393
|
-
[[
|
|
392
|
+
[[d, /(.+)/, "$1" + ne], l],
|
|
394
393
|
[
|
|
395
394
|
// Oculus/Sailfish/HuaweiBrowser/VivoBrowser/PicoBrowser
|
|
396
395
|
/samsungbrowser\/([\w\.]+)/i
|
|
397
396
|
// Samsung Internet
|
|
398
397
|
],
|
|
399
|
-
[
|
|
398
|
+
[l, [d, de + " Internet"]],
|
|
400
399
|
[
|
|
401
400
|
/metasr[\/ ]?([\d\.]+)/i
|
|
402
401
|
// Sogou Explorer
|
|
403
402
|
],
|
|
404
|
-
[
|
|
403
|
+
[l, [d, gt + " Explorer"]],
|
|
405
404
|
[
|
|
406
405
|
/(sogou)mo\w+\/([\d\.]+)/i
|
|
407
406
|
// Sogou Mobile
|
|
408
407
|
],
|
|
409
|
-
[[
|
|
408
|
+
[[d, gt + " Mobile"], l],
|
|
410
409
|
[
|
|
411
410
|
/(electron)\/([\w\.]+) safari/i,
|
|
412
411
|
// Electron-based App
|
|
@@ -415,23 +414,23 @@ var Xt = "2.0.9", Qt = 500, rt = "user-agent", ne = "", ot = "?", E = {
|
|
|
415
414
|
/m?(qqbrowser|2345(?=browser|chrome|explorer))\w*[\/ ]?v?([\w\.]+)/i
|
|
416
415
|
// QQ/2345
|
|
417
416
|
],
|
|
418
|
-
[
|
|
417
|
+
[d, l],
|
|
419
418
|
[
|
|
420
419
|
/(lbbrowser|luakit|rekonq|steam(?= (clie|tenf|gameo)))/i
|
|
421
420
|
// LieBao Browser/Luakit/Rekonq/Steam
|
|
422
421
|
],
|
|
423
|
-
[
|
|
422
|
+
[d],
|
|
424
423
|
[
|
|
425
424
|
/ome\/([\w\.]+).+(iron(?= saf)|360(?=[es]e$))/i
|
|
426
425
|
// Iron / 360
|
|
427
426
|
],
|
|
428
|
-
[
|
|
427
|
+
[l, d],
|
|
429
428
|
[
|
|
430
429
|
// WebView
|
|
431
430
|
/((?:fban\/fbios|fb_iab\/fb4a)(?!.+fbav)|;fbav\/([\w\.]+);)/i
|
|
432
431
|
// Facebook App for iOS & Android
|
|
433
432
|
],
|
|
434
|
-
[[
|
|
433
|
+
[[d, Ke], l, [s, te]],
|
|
435
434
|
[
|
|
436
435
|
/(kakao(?:talk|story))[\/ ]([\w\.]+)/i,
|
|
437
436
|
// Kakao App
|
|
@@ -452,111 +451,111 @@ var Xt = "2.0.9", Qt = 500, rt = "user-agent", ne = "", ot = "?", E = {
|
|
|
452
451
|
/(instagram|snapchat|klarna)[\/ ]([-\w\.]+)/i
|
|
453
452
|
// Instagram/Snapchat/Klarna
|
|
454
453
|
],
|
|
455
|
-
[
|
|
454
|
+
[d, l, [s, te]],
|
|
456
455
|
[
|
|
457
456
|
/\bgsa\/([\w\.]+) .*safari\//i
|
|
458
457
|
// Google Search Appliance on iOS
|
|
459
458
|
],
|
|
460
|
-
[
|
|
459
|
+
[l, [d, "GSA"], [s, te]],
|
|
461
460
|
[
|
|
462
461
|
/(?:musical_ly|trill)(?:.+app_?version\/|_)([\w\.]+)/i
|
|
463
462
|
// TikTok
|
|
464
463
|
],
|
|
465
|
-
[
|
|
464
|
+
[l, [d, "TikTok"], [s, te]],
|
|
466
465
|
[
|
|
467
466
|
/\[(linkedin)app\]/i
|
|
468
467
|
// LinkedIn App for iOS & Android
|
|
469
468
|
],
|
|
470
|
-
[
|
|
469
|
+
[d, [s, te]],
|
|
471
470
|
[
|
|
472
471
|
/(zalo(?:app)?)[\/\sa-z]*([\w\.-]+)/i
|
|
473
472
|
// Zalo
|
|
474
473
|
],
|
|
475
|
-
[[
|
|
474
|
+
[[d, /(.+)/, "Zalo"], l, [s, te]],
|
|
476
475
|
[
|
|
477
476
|
/(chromium)[\/ ]([-\w\.]+)/i
|
|
478
477
|
// Chromium
|
|
479
478
|
],
|
|
480
|
-
[
|
|
479
|
+
[d, l],
|
|
481
480
|
[
|
|
482
481
|
/ome-(lighthouse)$/i
|
|
483
482
|
// Chrome Lighthouse
|
|
484
483
|
],
|
|
485
|
-
[
|
|
484
|
+
[d, [s, Zt]],
|
|
486
485
|
[
|
|
487
486
|
/headlesschrome(?:\/([\w\.]+)| )/i
|
|
488
487
|
// Chrome Headless
|
|
489
488
|
],
|
|
490
|
-
[
|
|
489
|
+
[l, [d, bt + " Headless"]],
|
|
491
490
|
[
|
|
492
491
|
/wv\).+chrome\/([\w\.]+).+edgw\//i
|
|
493
492
|
// Edge WebView2
|
|
494
493
|
],
|
|
495
|
-
[
|
|
494
|
+
[l, [d, Ie + " WebView2"]],
|
|
496
495
|
[
|
|
497
496
|
/ wv\).+(chrome)\/([\w\.]+)/i
|
|
498
497
|
// Chrome WebView
|
|
499
498
|
],
|
|
500
|
-
[[
|
|
499
|
+
[[d, bt + " WebView"], l],
|
|
501
500
|
[
|
|
502
501
|
/droid.+ version\/([\w\.]+)\b.+(?:mobile safari|safari)/i
|
|
503
502
|
// Android Browser
|
|
504
503
|
],
|
|
505
|
-
[
|
|
504
|
+
[l, [d, "Android" + ne]],
|
|
506
505
|
[
|
|
507
506
|
/chrome\/([\w\.]+) mobile/i
|
|
508
507
|
// Chrome Mobile
|
|
509
508
|
],
|
|
510
|
-
[
|
|
509
|
+
[l, [d, xe + "Chrome"]],
|
|
511
510
|
[
|
|
512
511
|
/(chrome|omniweb|arora|[tizenoka]{5} ?browser)\/v?([\w\.]+)/i
|
|
513
512
|
// Chrome/OmniWeb/Arora/Tizen/Nokia
|
|
514
513
|
],
|
|
515
|
-
[
|
|
514
|
+
[d, l],
|
|
516
515
|
[
|
|
517
516
|
/version\/([\w\.\,]+) .*mobile(?:\/\w+ | ?)safari/i
|
|
518
517
|
// Safari Mobile
|
|
519
518
|
],
|
|
520
|
-
[
|
|
519
|
+
[l, [d, xe + "Safari"]],
|
|
521
520
|
[
|
|
522
521
|
/iphone .*mobile(?:\/\w+ | ?)safari/i
|
|
523
522
|
],
|
|
524
|
-
[[
|
|
523
|
+
[[d, xe + "Safari"]],
|
|
525
524
|
[
|
|
526
525
|
/version\/([\w\.\,]+) .*(safari)/i
|
|
527
526
|
// Safari
|
|
528
527
|
],
|
|
529
|
-
[
|
|
528
|
+
[l, d],
|
|
530
529
|
[
|
|
531
530
|
/webkit.+?(mobile ?safari|safari)(\/[\w\.]+)/i
|
|
532
531
|
// Safari < 3.0
|
|
533
532
|
],
|
|
534
|
-
[
|
|
533
|
+
[d, [l, "1"]],
|
|
535
534
|
[
|
|
536
535
|
/(webkit|khtml)\/([\w\.]+)/i
|
|
537
536
|
],
|
|
538
|
-
[
|
|
537
|
+
[d, l],
|
|
539
538
|
[
|
|
540
539
|
// Gecko based
|
|
541
540
|
/(?:mobile|tablet);.*(firefox)\/([\w\.-]+)/i
|
|
542
541
|
// Firefox Mobile
|
|
543
542
|
],
|
|
544
|
-
[[
|
|
543
|
+
[[d, xe + ue], l],
|
|
545
544
|
[
|
|
546
545
|
/(navigator|netscape\d?)\/([-\w\.]+)/i
|
|
547
546
|
// Netscape
|
|
548
547
|
],
|
|
549
|
-
[[
|
|
548
|
+
[[d, "Netscape"], l],
|
|
550
549
|
[
|
|
551
550
|
/(wolvic|librewolf)\/([\w\.]+)/i
|
|
552
551
|
// Wolvic/LibreWolf
|
|
553
552
|
],
|
|
554
|
-
[
|
|
553
|
+
[d, l],
|
|
555
554
|
[
|
|
556
555
|
/mobile vr; rv:([\w\.]+)\).+firefox/i
|
|
557
556
|
// Firefox Reality
|
|
558
557
|
],
|
|
559
|
-
[
|
|
558
|
+
[l, [d, ue + " Reality"]],
|
|
560
559
|
[
|
|
561
560
|
/ekiohf.+(flow)\/([\w\.]+)/i,
|
|
562
561
|
// Flow
|
|
@@ -576,12 +575,12 @@ var Xt = "2.0.9", Qt = 500, rt = "user-agent", ne = "", ot = "?", E = {
|
|
|
576
575
|
/\b(links) \(([\w\.]+)/i
|
|
577
576
|
// Links
|
|
578
577
|
],
|
|
579
|
-
[
|
|
578
|
+
[d, [l, /_/g, "."]],
|
|
580
579
|
[
|
|
581
580
|
/(cobalt)\/([\w\.]+)/i
|
|
582
581
|
// Cobalt
|
|
583
582
|
],
|
|
584
|
-
[
|
|
583
|
+
[d, [l, /[^\d\.]+./, re]]
|
|
585
584
|
],
|
|
586
585
|
cpu: [
|
|
587
586
|
[
|
|
@@ -624,7 +623,7 @@ var Xt = "2.0.9", Qt = 500, rt = "user-agent", ne = "", ot = "?", E = {
|
|
|
624
623
|
/(?:osf1|[freopnt]{3,4}bsd) (alpha)/i
|
|
625
624
|
// Alpha
|
|
626
625
|
],
|
|
627
|
-
[[M, /ower/,
|
|
626
|
+
[[M, /ower/, re, j]],
|
|
628
627
|
[
|
|
629
628
|
/mc680.0/i
|
|
630
629
|
],
|
|
@@ -642,29 +641,29 @@ var Xt = "2.0.9", Qt = 500, rt = "user-agent", ne = "", ot = "?", E = {
|
|
|
642
641
|
// Samsung
|
|
643
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
|
|
644
643
|
],
|
|
645
|
-
[c, [u,
|
|
644
|
+
[c, [u, de], [s, k]],
|
|
646
645
|
[
|
|
647
646
|
/\b((?:s[cgp]h|gt|sm)-(?![lr])\w+|sc[g-]?[\d]+a?|galaxy nexus)/i,
|
|
648
647
|
/samsung[- ]((?!sm-[lr]|browser)[-\w]+)/i,
|
|
649
648
|
/sec-(sgh\w+)/i
|
|
650
649
|
],
|
|
651
|
-
[c, [u,
|
|
650
|
+
[c, [u, de], [s, v]],
|
|
652
651
|
[
|
|
653
652
|
// Apple
|
|
654
653
|
/(?:\/|\()(ip(?:hone|od)[\w, ]*)[\/\);]/i
|
|
655
654
|
// iPod/iPhone
|
|
656
655
|
],
|
|
657
|
-
[c, [u,
|
|
656
|
+
[c, [u, ie], [s, v]],
|
|
658
657
|
[
|
|
659
658
|
/\b(?:ios|apple\w+)\/.+[\(\/](ipad)/i,
|
|
660
659
|
// iPad
|
|
661
660
|
/\b(ipad)[\d,]*[;\] ].+(mac |i(pad)?)os/i
|
|
662
661
|
],
|
|
663
|
-
[c, [u,
|
|
662
|
+
[c, [u, ie], [s, k]],
|
|
664
663
|
[
|
|
665
664
|
/(macintosh);/i
|
|
666
665
|
],
|
|
667
|
-
[c, [u,
|
|
666
|
+
[c, [u, ie]],
|
|
668
667
|
[
|
|
669
668
|
// Sharp
|
|
670
669
|
/\b(sh-?[altvz]?\d\d[a-ekm]?)/i
|
|
@@ -674,11 +673,11 @@ var Xt = "2.0.9", Qt = 500, rt = "user-agent", ne = "", ot = "?", E = {
|
|
|
674
673
|
// Honor
|
|
675
674
|
/\b((?:brt|eln|hey2?|gdi|jdn)-a?[lnw]09|(?:ag[rm]3?|jdn2|kob2)-a?[lw]0[09]hn)(?: bui|\)|;)/i
|
|
676
675
|
],
|
|
677
|
-
[c, [u,
|
|
676
|
+
[c, [u, ut], [s, k]],
|
|
678
677
|
[
|
|
679
678
|
/honor([-\w ]+)[;\)]/i
|
|
680
679
|
],
|
|
681
|
-
[c, [u,
|
|
680
|
+
[c, [u, ut], [s, v]],
|
|
682
681
|
[
|
|
683
682
|
// Huawei
|
|
684
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
|
|
@@ -695,7 +694,7 @@ var Xt = "2.0.9", Qt = 500, rt = "user-agent", ne = "", ot = "?", E = {
|
|
|
695
694
|
/\b(?:xiao)?((?:red)?mi[-_ ]?pad[\w- ]*)(?: bui|\))/i
|
|
696
695
|
// Mi Pad tablets
|
|
697
696
|
],
|
|
698
|
-
[[c, /_/g, " "], [u,
|
|
697
|
+
[[c, /_/g, " "], [u, ze], [s, k]],
|
|
699
698
|
[
|
|
700
699
|
/\b; (\w+) build\/hm\1/i,
|
|
701
700
|
// Xiaomi Hongmi 'numeric' models
|
|
@@ -707,7 +706,7 @@ var Xt = "2.0.9", Qt = 500, rt = "user-agent", ne = "", ot = "?", E = {
|
|
|
707
706
|
/\b(mi[-_ ]?(?:a\d|one|one[_ ]plus|note|max|cc)?[_ ]?(?:\d{0,2}\w?)[_ ]?(?:plus|se|lite|pro)?( 5g|lte)?)(?: bui|\))/i,
|
|
708
707
|
/ ([\w ]+) miui\/v?\d/i
|
|
709
708
|
],
|
|
710
|
-
[[c, /_/g, " "], [u,
|
|
709
|
+
[[c, /_/g, " "], [u, ze], [s, v]],
|
|
711
710
|
[
|
|
712
711
|
// OnePlus
|
|
713
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,
|
|
@@ -719,11 +718,11 @@ var Xt = "2.0.9", Qt = 500, rt = "user-agent", ne = "", ot = "?", E = {
|
|
|
719
718
|
/; (\w+) bui.+ oppo/i,
|
|
720
719
|
/\b(cph[12]\d{3}|p(?:af|c[al]|d\w|e[ar])[mt]\d0|x9007|a101op)\b/i
|
|
721
720
|
],
|
|
722
|
-
[c, [u,
|
|
721
|
+
[c, [u, qe], [s, v]],
|
|
723
722
|
[
|
|
724
723
|
/\b(opd2(\d{3}a?))(?: bui|\))/i
|
|
725
724
|
],
|
|
726
|
-
[c, [u, U, { OnePlus: ["203", "304", "403", "404", "413", "415"], "*":
|
|
725
|
+
[c, [u, U, { OnePlus: ["203", "304", "403", "404", "413", "415"], "*": qe }], [s, k]],
|
|
727
726
|
[
|
|
728
727
|
// BLU
|
|
729
728
|
/(vivo (5r?|6|8l?|go|one|s|x[il]?[2-4]?)[\w\+ ]*)(?: bui|\))/i
|
|
@@ -746,33 +745,33 @@ var Xt = "2.0.9", Qt = 500, rt = "user-agent", ne = "", ot = "?", E = {
|
|
|
746
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,
|
|
747
746
|
/lenovo ?(b[68]0[08]0-?[hf]?|tab(?:[\w- ]+?)|tb[\w-]{6,7})( bui|;|\)|\/)/i
|
|
748
747
|
],
|
|
749
|
-
[c, [u,
|
|
748
|
+
[c, [u, Ge], [s, k]],
|
|
750
749
|
[
|
|
751
750
|
/lenovo[-_ ]?([-\w ]+?)(?: bui|\)|\/)/i
|
|
752
751
|
],
|
|
753
|
-
[c, [u,
|
|
752
|
+
[c, [u, Ge], [s, v]],
|
|
754
753
|
[
|
|
755
754
|
// Motorola
|
|
756
755
|
/\b(milestone|droid(?:[2-4x]| (?:bionic|x2|pro|razr))?:?( 4g)?)\b[\w ]+build\//i,
|
|
757
756
|
/\bmot(?:orola)?[- ]([\w\s]+)(\)| bui)/i,
|
|
758
757
|
/((?:moto(?! 360)[-\w\(\) ]+|xt\d{3,4}[cgkosw\+]?[-\d]*|nexus 6)(?= bui|\)))/i
|
|
759
758
|
],
|
|
760
|
-
[c, [u,
|
|
759
|
+
[c, [u, Ye], [s, v]],
|
|
761
760
|
[
|
|
762
761
|
/\b(mz60\d|xoom[2 ]{0,2}) build\//i
|
|
763
762
|
],
|
|
764
|
-
[c, [u,
|
|
763
|
+
[c, [u, Ye], [s, k]],
|
|
765
764
|
[
|
|
766
765
|
// LG
|
|
767
766
|
/\b(?:lg)?([vl]k\-?\d{3}) bui| 3\.[-\w; ]{10}lg?-([06cv9]{3,4})/i
|
|
768
767
|
],
|
|
769
|
-
[c, [u,
|
|
768
|
+
[c, [u, me], [s, k]],
|
|
770
769
|
[
|
|
771
770
|
/(lm(?:-?f100[nv]?|-[\w\.]+)(?= bui|\))|nexus [45])/i,
|
|
772
771
|
/\blg[-e;\/ ]+(?!.*(?:browser|netcast|android tv|watch|webos))(\w+)/i,
|
|
773
772
|
/\blg-?([\d\w]+) bui/i
|
|
774
773
|
],
|
|
775
|
-
[c, [u,
|
|
774
|
+
[c, [u, me], [s, v]],
|
|
776
775
|
[
|
|
777
776
|
// Nokia
|
|
778
777
|
/(nokia) (t[12][01])/i
|
|
@@ -788,12 +787,12 @@ var Xt = "2.0.9", Qt = 500, rt = "user-agent", ne = "", ot = "?", E = {
|
|
|
788
787
|
/(pixel (c|tablet))\b/i
|
|
789
788
|
// Google Pixel C/Tablet
|
|
790
789
|
],
|
|
791
|
-
[c, [u,
|
|
790
|
+
[c, [u, Z], [s, k]],
|
|
792
791
|
[
|
|
793
792
|
// Google Pixel
|
|
794
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
|
|
795
794
|
],
|
|
796
|
-
[c, [u,
|
|
795
|
+
[c, [u, Z], [s, v]],
|
|
797
796
|
[
|
|
798
797
|
/(google) (pixelbook( go)?)/i
|
|
799
798
|
],
|
|
@@ -816,12 +815,12 @@ var Xt = "2.0.9", Qt = 500, rt = "user-agent", ne = "", ot = "?", E = {
|
|
|
816
815
|
/(kf[a-z]+)( bui|\)).+silk\//i
|
|
817
816
|
// Kindle Fire HD
|
|
818
817
|
],
|
|
819
|
-
[c, [u,
|
|
818
|
+
[c, [u, ge], [s, k]],
|
|
820
819
|
[
|
|
821
820
|
/((?:sd|kf)[0349hijorstuw]+)( bui|\)).+silk\//i
|
|
822
821
|
// Fire Phone
|
|
823
822
|
],
|
|
824
|
-
[[c, /(.+)/g, "Fire Phone $1"], [u,
|
|
823
|
+
[[c, /(.+)/g, "Fire Phone $1"], [u, ge], [s, v]],
|
|
825
824
|
[
|
|
826
825
|
// BlackBerry
|
|
827
826
|
/(playbook);[-\w\),; ]+(rim)/i
|
|
@@ -832,16 +831,16 @@ var Xt = "2.0.9", Qt = 500, rt = "user-agent", ne = "", ot = "?", E = {
|
|
|
832
831
|
/\b((?:bb[a-f]|st[hv])100-\d)/i,
|
|
833
832
|
/(?:blackberry|\(bb10;) (\w+)/i
|
|
834
833
|
],
|
|
835
|
-
[c, [u,
|
|
834
|
+
[c, [u, dt], [s, v]],
|
|
836
835
|
[
|
|
837
836
|
// Asus
|
|
838
837
|
/(?:\b|asus_)(transfo[prime ]{4,10} \w+|eeepc|slider \w+|nexus 7|padfone|p00[cj])/i
|
|
839
838
|
],
|
|
840
|
-
[c, [u,
|
|
839
|
+
[c, [u, ct], [s, k]],
|
|
841
840
|
[
|
|
842
841
|
/ (z[bes]6[027][012][km][ls]|zenfone \d\w?)\b/i
|
|
843
842
|
],
|
|
844
|
-
[c, [u,
|
|
843
|
+
[c, [u, ct], [s, v]],
|
|
845
844
|
[
|
|
846
845
|
// HTC
|
|
847
846
|
/(nexus 9)/i
|
|
@@ -871,7 +870,7 @@ var Xt = "2.0.9", Qt = 500, rt = "user-agent", ne = "", ot = "?", E = {
|
|
|
871
870
|
// itel
|
|
872
871
|
/(itel) ((\w+))/i
|
|
873
872
|
],
|
|
874
|
-
[[u,
|
|
873
|
+
[[u, j], c, [s, U, { tablet: ["p10001l", "w7001"], "*": "mobile" }]],
|
|
875
874
|
[
|
|
876
875
|
// Acer
|
|
877
876
|
/droid.+; ([ab][1-7]-?[0178a]\d\d?)/i
|
|
@@ -964,7 +963,7 @@ var Xt = "2.0.9", Qt = 500, rt = "user-agent", ne = "", ot = "?", E = {
|
|
|
964
963
|
/(surface duo)/i
|
|
965
964
|
// Surface Duo
|
|
966
965
|
],
|
|
967
|
-
[c, [u,
|
|
966
|
+
[c, [u, Ve], [s, k]],
|
|
968
967
|
[
|
|
969
968
|
/droid [\d\.]+; (fp\du?)(?: b|\))/i
|
|
970
969
|
// Fairphone
|
|
@@ -974,7 +973,7 @@ var Xt = "2.0.9", Qt = 500, rt = "user-agent", ne = "", ot = "?", E = {
|
|
|
974
973
|
/((?:tegranote|shield t(?!.+d tv))[\w- ]*?)(?: b|\))/i
|
|
975
974
|
// Nvidia Tablets
|
|
976
975
|
],
|
|
977
|
-
[c, [u,
|
|
976
|
+
[c, [u, ft], [s, k]],
|
|
978
977
|
[
|
|
979
978
|
/(sprint) (\w+)/i
|
|
980
979
|
// Sprint Phones
|
|
@@ -984,16 +983,16 @@ var Xt = "2.0.9", Qt = 500, rt = "user-agent", ne = "", ot = "?", E = {
|
|
|
984
983
|
/(kin\.[onetw]{3})/i
|
|
985
984
|
// Microsoft Kin
|
|
986
985
|
],
|
|
987
|
-
[[c, /\./g, " "], [u,
|
|
986
|
+
[[c, /\./g, " "], [u, Ve], [s, v]],
|
|
988
987
|
[
|
|
989
988
|
/droid.+; ([c6]+|et5[16]|mc[239][23]x?|vc8[03]x?)\)/i
|
|
990
989
|
// Zebra
|
|
991
990
|
],
|
|
992
|
-
[c, [u,
|
|
991
|
+
[c, [u, We], [s, k]],
|
|
993
992
|
[
|
|
994
993
|
/droid.+; (ec30|ps20|tc[2-8]\d[kx])\)/i
|
|
995
994
|
],
|
|
996
|
-
[c, [u,
|
|
995
|
+
[c, [u, We], [s, v]],
|
|
997
996
|
[
|
|
998
997
|
///////////////////
|
|
999
998
|
// SMARTTVS
|
|
@@ -1007,7 +1006,7 @@ var Xt = "2.0.9", Qt = 500, rt = "user-agent", ne = "", ot = "?", E = {
|
|
|
1007
1006
|
[
|
|
1008
1007
|
/hbbtv.+maple;(\d+)/i
|
|
1009
1008
|
],
|
|
1010
|
-
[[c, /^/, "SmartTV"], [u,
|
|
1009
|
+
[[c, /^/, "SmartTV"], [u, de], [s, T]],
|
|
1011
1010
|
[
|
|
1012
1011
|
/(vizio)(?: |.+model\/)(\w+-\w+)/i,
|
|
1013
1012
|
// Vizio
|
|
@@ -1018,47 +1017,47 @@ var Xt = "2.0.9", Qt = 500, rt = "user-agent", ne = "", ot = "?", E = {
|
|
|
1018
1017
|
[
|
|
1019
1018
|
/(nux; netcast.+smarttv|lg (netcast\.tv-201\d|android tv))/i
|
|
1020
1019
|
],
|
|
1021
|
-
[[u,
|
|
1020
|
+
[[u, me], [s, T]],
|
|
1022
1021
|
[
|
|
1023
1022
|
/(apple) ?tv/i
|
|
1024
1023
|
// Apple TV
|
|
1025
1024
|
],
|
|
1026
|
-
[u, [c,
|
|
1025
|
+
[u, [c, ie + " TV"], [s, T]],
|
|
1027
1026
|
[
|
|
1028
1027
|
/crkey.*devicetype\/chromecast/i
|
|
1029
1028
|
// Google Chromecast Third Generation
|
|
1030
1029
|
],
|
|
1031
|
-
[[c,
|
|
1030
|
+
[[c, K + " Third Generation"], [u, Z], [s, T]],
|
|
1032
1031
|
[
|
|
1033
1032
|
/crkey.*devicetype\/([^/]*)/i
|
|
1034
1033
|
// Google Chromecast with specific device type
|
|
1035
1034
|
],
|
|
1036
|
-
[[c, /^/, "Chromecast "], [u,
|
|
1035
|
+
[[c, /^/, "Chromecast "], [u, Z], [s, T]],
|
|
1037
1036
|
[
|
|
1038
1037
|
/fuchsia.*crkey/i
|
|
1039
1038
|
// Google Chromecast Nest Hub
|
|
1040
1039
|
],
|
|
1041
|
-
[[c,
|
|
1040
|
+
[[c, K + " Nest Hub"], [u, Z], [s, T]],
|
|
1042
1041
|
[
|
|
1043
1042
|
/crkey/i
|
|
1044
1043
|
// Google Chromecast, Linux-based or unknown
|
|
1045
1044
|
],
|
|
1046
|
-
[[c,
|
|
1045
|
+
[[c, K], [u, Z], [s, T]],
|
|
1047
1046
|
[
|
|
1048
1047
|
/(portaltv)/i
|
|
1049
1048
|
// Facebook Portal TV
|
|
1050
1049
|
],
|
|
1051
|
-
[c, [u,
|
|
1050
|
+
[c, [u, Ke], [s, T]],
|
|
1052
1051
|
[
|
|
1053
1052
|
/droid.+aft(\w+)( bui|\))/i
|
|
1054
1053
|
// Fire TV
|
|
1055
1054
|
],
|
|
1056
|
-
[c, [u,
|
|
1055
|
+
[c, [u, ge], [s, T]],
|
|
1057
1056
|
[
|
|
1058
1057
|
/(shield \w+ tv)/i
|
|
1059
1058
|
// Nvidia Shield TV
|
|
1060
1059
|
],
|
|
1061
|
-
[c, [u,
|
|
1060
|
+
[c, [u, ft], [s, T]],
|
|
1062
1061
|
[
|
|
1063
1062
|
/\(dtv[\);].+(aquos)/i,
|
|
1064
1063
|
/(aquos-tv[\w ]+)\)/i
|
|
@@ -1074,7 +1073,7 @@ var Xt = "2.0.9", Qt = 500, rt = "user-agent", ne = "", ot = "?", E = {
|
|
|
1074
1073
|
/(mi(tv|box)-?\w+) bui/i
|
|
1075
1074
|
// Xiaomi
|
|
1076
1075
|
],
|
|
1077
|
-
[c, [u,
|
|
1076
|
+
[c, [u, ze], [s, T]],
|
|
1078
1077
|
[
|
|
1079
1078
|
/Hbbtv.*(technisat) (.*);/i
|
|
1080
1079
|
// TechniSAT
|
|
@@ -1086,7 +1085,7 @@ var Xt = "2.0.9", Qt = 500, rt = "user-agent", ne = "", ot = "?", E = {
|
|
|
1086
1085
|
/hbbtv\/\d+\.\d+\.\d+ +\([\w\+ ]*; *([\w\d][^;]*);([^;]*)/i
|
|
1087
1086
|
// HbbTV devices
|
|
1088
1087
|
],
|
|
1089
|
-
[[u, /.+\/(\w+)/, "$1", U, { LG: "lge" }], [c,
|
|
1088
|
+
[[u, /.+\/(\w+)/, "$1", U, { LG: "lge" }], [c, Ae], [s, T]],
|
|
1090
1089
|
[
|
|
1091
1090
|
///////////////////
|
|
1092
1091
|
// CONSOLES
|
|
@@ -1094,12 +1093,12 @@ var Xt = "2.0.9", Qt = 500, rt = "user-agent", ne = "", ot = "?", E = {
|
|
|
1094
1093
|
/(playstation \w+)/i
|
|
1095
1094
|
// Playstation
|
|
1096
1095
|
],
|
|
1097
|
-
[c, [u, le], [s,
|
|
1096
|
+
[c, [u, le], [s, Se]],
|
|
1098
1097
|
[
|
|
1099
1098
|
/\b(xbox(?: one)?(?!; xbox))[\); ]/i
|
|
1100
1099
|
// Microsoft Xbox
|
|
1101
1100
|
],
|
|
1102
|
-
[c, [u,
|
|
1101
|
+
[c, [u, Ve], [s, Se]],
|
|
1103
1102
|
[
|
|
1104
1103
|
/(ouya)/i,
|
|
1105
1104
|
// Ouya
|
|
@@ -1111,7 +1110,7 @@ var Xt = "2.0.9", Qt = 500, rt = "user-agent", ne = "", ot = "?", E = {
|
|
|
1111
1110
|
/droid.+; ((shield|rgcube|gr0006))( bui|\))/i
|
|
1112
1111
|
// Nvidia Portable/Anbernic/Logitech
|
|
1113
1112
|
],
|
|
1114
|
-
[[u, U, { Nvidia: "Shield", Anbernic: "RGCUBE", Logitech: "GR0006" }], c, [s,
|
|
1113
|
+
[[u, U, { Nvidia: "Shield", Anbernic: "RGCUBE", Logitech: "GR0006" }], c, [s, Se]],
|
|
1115
1114
|
[
|
|
1116
1115
|
///////////////////
|
|
1117
1116
|
// WEARABLES
|
|
@@ -1119,7 +1118,7 @@ var Xt = "2.0.9", Qt = 500, rt = "user-agent", ne = "", ot = "?", E = {
|
|
|
1119
1118
|
/\b(sm-[lr]\d\d[0156][fnuw]?s?|gear live)\b/i
|
|
1120
1119
|
// Samsung Galaxy Watch
|
|
1121
1120
|
],
|
|
1122
|
-
[c, [u,
|
|
1121
|
+
[c, [u, de], [s, H]],
|
|
1123
1122
|
[
|
|
1124
1123
|
/((pebble))app/i,
|
|
1125
1124
|
// Pebble
|
|
@@ -1131,12 +1130,12 @@ var Xt = "2.0.9", Qt = 500, rt = "user-agent", ne = "", ot = "?", E = {
|
|
|
1131
1130
|
/(ow(?:19|20)?we?[1-3]{1,3})/i
|
|
1132
1131
|
// Oppo Watch
|
|
1133
1132
|
],
|
|
1134
|
-
[c, [u,
|
|
1133
|
+
[c, [u, qe], [s, H]],
|
|
1135
1134
|
[
|
|
1136
1135
|
/(watch)(?: ?os[,\/]|\d,\d\/)[\d\.]+/i
|
|
1137
1136
|
// Apple Watch
|
|
1138
1137
|
],
|
|
1139
|
-
[c, [u,
|
|
1138
|
+
[c, [u, ie], [s, H]],
|
|
1140
1139
|
[
|
|
1141
1140
|
/(opwwe\d{3})/i
|
|
1142
1141
|
// OnePlus Watch
|
|
@@ -1146,7 +1145,7 @@ var Xt = "2.0.9", Qt = 500, rt = "user-agent", ne = "", ot = "?", E = {
|
|
|
1146
1145
|
/(moto 360)/i
|
|
1147
1146
|
// Motorola 360
|
|
1148
1147
|
],
|
|
1149
|
-
[c, [u,
|
|
1148
|
+
[c, [u, Ye], [s, H]],
|
|
1150
1149
|
[
|
|
1151
1150
|
/(smartwatch 3)/i
|
|
1152
1151
|
// Sony SmartWatch
|
|
@@ -1156,11 +1155,11 @@ var Xt = "2.0.9", Qt = 500, rt = "user-agent", ne = "", ot = "?", E = {
|
|
|
1156
1155
|
/(g watch r)/i
|
|
1157
1156
|
// LG G Watch R
|
|
1158
1157
|
],
|
|
1159
|
-
[c, [u,
|
|
1158
|
+
[c, [u, me], [s, H]],
|
|
1160
1159
|
[
|
|
1161
1160
|
/droid.+; (wt63?0{2,3})\)/i
|
|
1162
1161
|
],
|
|
1163
|
-
[c, [u,
|
|
1162
|
+
[c, [u, We], [s, H]],
|
|
1164
1163
|
[
|
|
1165
1164
|
///////////////////
|
|
1166
1165
|
// XR
|
|
@@ -1168,22 +1167,22 @@ var Xt = "2.0.9", Qt = 500, rt = "user-agent", ne = "", ot = "?", E = {
|
|
|
1168
1167
|
/droid.+; (glass) \d/i
|
|
1169
1168
|
// Google Glass
|
|
1170
1169
|
],
|
|
1171
|
-
[c, [u,
|
|
1170
|
+
[c, [u, Z], [s, we]],
|
|
1172
1171
|
[
|
|
1173
1172
|
/(pico) ([\w ]+) os\d/i
|
|
1174
1173
|
// Pico
|
|
1175
1174
|
],
|
|
1176
|
-
[u, c, [s,
|
|
1175
|
+
[u, c, [s, we]],
|
|
1177
1176
|
[
|
|
1178
1177
|
/(quest( \d| pro)?s?).+vr/i
|
|
1179
1178
|
// Meta Quest
|
|
1180
1179
|
],
|
|
1181
|
-
[c, [u,
|
|
1180
|
+
[c, [u, Ke], [s, we]],
|
|
1182
1181
|
[
|
|
1183
1182
|
/mobile vr; rv.+firefox/i
|
|
1184
1183
|
// Unidentifiable VR device using Firefox Reality / Wolvic
|
|
1185
1184
|
],
|
|
1186
|
-
[[s,
|
|
1185
|
+
[[s, we]],
|
|
1187
1186
|
[
|
|
1188
1187
|
///////////////////
|
|
1189
1188
|
// EMBEDDED
|
|
@@ -1196,12 +1195,12 @@ var Xt = "2.0.9", Qt = 500, rt = "user-agent", ne = "", ot = "?", E = {
|
|
|
1196
1195
|
/(aeobc)\b/i
|
|
1197
1196
|
// Echo Dot
|
|
1198
1197
|
],
|
|
1199
|
-
[c, [u,
|
|
1198
|
+
[c, [u, ge], [s, pe]],
|
|
1200
1199
|
[
|
|
1201
1200
|
/(homepod).+mac os/i
|
|
1202
1201
|
// Apple HomePod
|
|
1203
1202
|
],
|
|
1204
|
-
[c, [u,
|
|
1203
|
+
[c, [u, ie], [s, pe]],
|
|
1205
1204
|
[
|
|
1206
1205
|
/windows iot/i
|
|
1207
1206
|
// Unidentifiable embedded device using Windows IoT
|
|
@@ -1244,17 +1243,17 @@ var Xt = "2.0.9", Qt = 500, rt = "user-agent", ne = "", ot = "?", E = {
|
|
|
1244
1243
|
/windows.+ edge\/([\w\.]+)/i
|
|
1245
1244
|
// EdgeHTML
|
|
1246
1245
|
],
|
|
1247
|
-
[
|
|
1246
|
+
[l, [d, Ie + "HTML"]],
|
|
1248
1247
|
[
|
|
1249
1248
|
/(arkweb)\/([\w\.]+)/i
|
|
1250
1249
|
// ArkWeb
|
|
1251
1250
|
],
|
|
1252
|
-
[
|
|
1251
|
+
[d, l],
|
|
1253
1252
|
[
|
|
1254
1253
|
/webkit\/537\.36.+chrome\/(?!27)([\w\.]+)/i
|
|
1255
1254
|
// Blink
|
|
1256
1255
|
],
|
|
1257
|
-
[
|
|
1256
|
+
[l, [d, "Blink"]],
|
|
1258
1257
|
[
|
|
1259
1258
|
/(presto)\/([\w\.]+)/i,
|
|
1260
1259
|
// Presto
|
|
@@ -1269,16 +1268,16 @@ var Xt = "2.0.9", Qt = 500, rt = "user-agent", ne = "", ot = "?", E = {
|
|
|
1269
1268
|
/\b(libweb)/i
|
|
1270
1269
|
// LibWeb
|
|
1271
1270
|
],
|
|
1272
|
-
[
|
|
1271
|
+
[d, l],
|
|
1273
1272
|
[
|
|
1274
1273
|
/ladybird\//i
|
|
1275
1274
|
],
|
|
1276
|
-
[[
|
|
1275
|
+
[[d, "LibWeb"]],
|
|
1277
1276
|
[
|
|
1278
1277
|
/rv\:([\w\.]{1,9})\b.+(gecko)/i
|
|
1279
1278
|
// Gecko
|
|
1280
1279
|
],
|
|
1281
|
-
[
|
|
1280
|
+
[l, d]
|
|
1282
1281
|
],
|
|
1283
1282
|
os: [
|
|
1284
1283
|
[
|
|
@@ -1286,24 +1285,24 @@ var Xt = "2.0.9", Qt = 500, rt = "user-agent", ne = "", ot = "?", E = {
|
|
|
1286
1285
|
/(windows nt) (6\.[23]); arm/i
|
|
1287
1286
|
// Windows RT
|
|
1288
1287
|
],
|
|
1289
|
-
[[
|
|
1288
|
+
[[d, /N/, "R"], [l, U, mt]],
|
|
1290
1289
|
[
|
|
1291
1290
|
/(windows (?:phone|mobile|iot))(?: os)?[\/ ]?([\d\.]*( se)?)/i,
|
|
1292
1291
|
// Windows IoT/Mobile/Phone
|
|
1293
1292
|
// Windows NT/3.1/95/98/ME/2000/XP/Vista/7/8/8.1/10/11
|
|
1294
1293
|
/(windows)[\/ ](1[01]|2000|3\.1|7|8(\.1)?|9[58]|me|server 20\d\d( r2)?|vista|xp)/i
|
|
1295
1294
|
],
|
|
1296
|
-
[
|
|
1295
|
+
[d, l],
|
|
1297
1296
|
[
|
|
1298
1297
|
/windows nt ?([\d\.\)]*)(?!.+xbox)/i,
|
|
1299
1298
|
/\bwin(?=3| ?9|n)(?:nt| 9x )?([\d\.;]*)/i
|
|
1300
1299
|
],
|
|
1301
|
-
[[
|
|
1300
|
+
[[l, /(;|\))/g, "", U, mt], [d, Ze]],
|
|
1302
1301
|
[
|
|
1303
1302
|
/(windows ce)\/?([\d\.]*)/i
|
|
1304
1303
|
// Windows CE
|
|
1305
1304
|
],
|
|
1306
|
-
[
|
|
1305
|
+
[d, l],
|
|
1307
1306
|
[
|
|
1308
1307
|
// iOS/macOS
|
|
1309
1308
|
/[adehimnop]{4,7}\b(?:.*os ([\w]+) like mac|; opera)/i,
|
|
@@ -1312,100 +1311,100 @@ var Xt = "2.0.9", Qt = 500, rt = "user-agent", ne = "", ot = "?", E = {
|
|
|
1312
1311
|
/\btvos ?([\w\.]+)/i,
|
|
1313
1312
|
/cfnetwork\/.+darwin/i
|
|
1314
1313
|
],
|
|
1315
|
-
[[
|
|
1314
|
+
[[l, /_/g, "."], [d, "iOS"]],
|
|
1316
1315
|
[
|
|
1317
1316
|
/(mac os x) ?([\w\. ]*)/i,
|
|
1318
1317
|
/(macintosh|mac_powerpc\b)(?!.+(haiku|morphos))/i
|
|
1319
1318
|
// Mac OS
|
|
1320
1319
|
],
|
|
1321
|
-
[[
|
|
1320
|
+
[[d, "macOS"], [l, /_/g, "."]],
|
|
1322
1321
|
[
|
|
1323
1322
|
// Google Chromecast
|
|
1324
1323
|
/android ([\d\.]+).*crkey/i
|
|
1325
1324
|
// Google Chromecast, Android-based
|
|
1326
1325
|
],
|
|
1327
|
-
[
|
|
1326
|
+
[l, [d, K + " Android"]],
|
|
1328
1327
|
[
|
|
1329
1328
|
/fuchsia.*crkey\/([\d\.]+)/i
|
|
1330
1329
|
// Google Chromecast, Fuchsia-based
|
|
1331
1330
|
],
|
|
1332
|
-
[
|
|
1331
|
+
[l, [d, K + " Fuchsia"]],
|
|
1333
1332
|
[
|
|
1334
1333
|
/crkey\/([\d\.]+).*devicetype\/smartspeaker/i
|
|
1335
1334
|
// Google Chromecast, Linux-based Smart Speaker
|
|
1336
1335
|
],
|
|
1337
|
-
[
|
|
1336
|
+
[l, [d, K + " SmartSpeaker"]],
|
|
1338
1337
|
[
|
|
1339
1338
|
/linux.*crkey\/([\d\.]+)/i
|
|
1340
1339
|
// Google Chromecast, Legacy Linux-based
|
|
1341
1340
|
],
|
|
1342
|
-
[
|
|
1341
|
+
[l, [d, K + " Linux"]],
|
|
1343
1342
|
[
|
|
1344
1343
|
/crkey\/([\d\.]+)/i
|
|
1345
1344
|
// Google Chromecast, unknown
|
|
1346
1345
|
],
|
|
1347
|
-
[
|
|
1346
|
+
[l, [d, K]],
|
|
1348
1347
|
[
|
|
1349
1348
|
// Mobile OSes
|
|
1350
1349
|
/droid ([\w\.]+)\b.+(android[- ]x86)/i
|
|
1351
1350
|
// Android-x86
|
|
1352
1351
|
],
|
|
1353
|
-
[
|
|
1352
|
+
[l, d],
|
|
1354
1353
|
[
|
|
1355
1354
|
/(ubuntu) ([\w\.]+) like android/i
|
|
1356
1355
|
// Ubuntu Touch
|
|
1357
1356
|
],
|
|
1358
|
-
[[
|
|
1357
|
+
[[d, /(.+)/, "$1 Touch"], l],
|
|
1359
1358
|
[
|
|
1360
1359
|
/(harmonyos)[\/ ]?([\d\.]*)/i,
|
|
1361
1360
|
// HarmonyOS
|
|
1362
1361
|
// Android/Blackberry/WebOS/QNX/Bada/RIM/KaiOS/Maemo/MeeGo/S40/Sailfish OS/OpenHarmony/Tizen
|
|
1363
1362
|
/(android|bada|blackberry|kaios|maemo|meego|openharmony|qnx|rim tablet os|sailfish|series40|symbian|tizen)\w*[-\/\.; ]?([\d\.]*)/i
|
|
1364
1363
|
],
|
|
1365
|
-
[
|
|
1364
|
+
[d, l],
|
|
1366
1365
|
[
|
|
1367
1366
|
/\(bb(10);/i
|
|
1368
1367
|
// BlackBerry 10
|
|
1369
1368
|
],
|
|
1370
|
-
[
|
|
1369
|
+
[l, [d, dt]],
|
|
1371
1370
|
[
|
|
1372
1371
|
/(?:symbian ?os|symbos|s60(?=;)|series ?60)[-\/ ]?([\w\.]*)/i
|
|
1373
1372
|
// Symbian
|
|
1374
1373
|
],
|
|
1375
|
-
[
|
|
1374
|
+
[l, [d, "Symbian"]],
|
|
1376
1375
|
[
|
|
1377
1376
|
/mozilla\/[\d\.]+ \((?:mobile[;\w ]*|tablet|tv|[^\)]*(?:viera|lg(?:l25|-d300)|alcatel ?o.+|y300-f1)); rv:([\w\.]+)\).+gecko\//i
|
|
1378
1377
|
// Firefox OS
|
|
1379
1378
|
],
|
|
1380
|
-
[
|
|
1379
|
+
[l, [d, ue + " OS"]],
|
|
1381
1380
|
[
|
|
1382
1381
|
/\b(?:hp)?wos(?:browser)?\/([\w\.]+)/i,
|
|
1383
1382
|
// WebOS
|
|
1384
1383
|
/webos(?:[ \/]?|\.tv-20(?=2[2-9]))(\d[\d\.]*)/i
|
|
1385
1384
|
],
|
|
1386
|
-
[
|
|
1385
|
+
[l, [d, "webOS"]],
|
|
1387
1386
|
[
|
|
1388
1387
|
/web0s;.+?(?:chr[o0]me|safari)\/(\d+)/i
|
|
1389
1388
|
// https://webostv.developer.lge.com/develop/specifications/web-api-and-web-engine
|
|
1390
1389
|
],
|
|
1391
|
-
[[
|
|
1390
|
+
[[l, U, { 25: "120", 24: "108", 23: "94", 22: "87", 6: "79", 5: "68", 4: "53", 3: "38", 2: "538", 1: "537", "*": "TV" }], [d, "webOS"]],
|
|
1392
1391
|
[
|
|
1393
1392
|
/watch(?: ?os[,\/ ]|\d,\d\/)([\d\.]+)/i
|
|
1394
1393
|
// watchOS
|
|
1395
1394
|
],
|
|
1396
|
-
[
|
|
1395
|
+
[l, [d, "watchOS"]],
|
|
1397
1396
|
[
|
|
1398
1397
|
// Google ChromeOS
|
|
1399
1398
|
/cros [\w]+(?:\)| ([\w\.]+)\b)/i
|
|
1400
1399
|
// Chromium OS
|
|
1401
1400
|
],
|
|
1402
|
-
[
|
|
1401
|
+
[l, [d, "Chrome OS"]],
|
|
1403
1402
|
[
|
|
1404
1403
|
// Smart TVs
|
|
1405
1404
|
/kepler ([\w\.]+); (aft|aeo)/i
|
|
1406
1405
|
// Vega OS
|
|
1407
1406
|
],
|
|
1408
|
-
[
|
|
1407
|
+
[l, [d, "Vega OS"]],
|
|
1409
1408
|
[
|
|
1410
1409
|
/(netrange)mmh/i,
|
|
1411
1410
|
// Netrange
|
|
@@ -1440,74 +1439,74 @@ var Xt = "2.0.9", Qt = 500, rt = "user-agent", ne = "", ot = "?", E = {
|
|
|
1440
1439
|
/(haiku) ?(r\d)?/i
|
|
1441
1440
|
// Haiku
|
|
1442
1441
|
],
|
|
1443
|
-
[
|
|
1442
|
+
[d, l],
|
|
1444
1443
|
[
|
|
1445
1444
|
/(sunos) ?([\d\.]*)/i
|
|
1446
1445
|
// Solaris
|
|
1447
1446
|
],
|
|
1448
|
-
[[
|
|
1447
|
+
[[d, "Solaris"], l],
|
|
1449
1448
|
[
|
|
1450
1449
|
/\b(beos|os\/2|amigaos|openvms|hp-ux|serenityos)/i,
|
|
1451
1450
|
// BeOS/OS2/AmigaOS/OpenVMS/HP-UX/SerenityOS
|
|
1452
1451
|
/(unix) ?([\w\.]*)/i
|
|
1453
1452
|
// UNIX
|
|
1454
1453
|
],
|
|
1455
|
-
[
|
|
1454
|
+
[d, l]
|
|
1456
1455
|
]
|
|
1457
|
-
},
|
|
1458
|
-
var
|
|
1459
|
-
return
|
|
1460
|
-
[O, [
|
|
1461
|
-
[
|
|
1456
|
+
}, ye = (function() {
|
|
1457
|
+
var a = { init: {}, isIgnore: {}, isIgnoreRgx: {}, toString: {} };
|
|
1458
|
+
return q.call(a.init, [
|
|
1459
|
+
[O, [d, l, he, s]],
|
|
1460
|
+
[z, [M]],
|
|
1462
1461
|
[G, [s, c, u]],
|
|
1463
|
-
[
|
|
1464
|
-
[N, [
|
|
1465
|
-
]),
|
|
1466
|
-
[O, [
|
|
1467
|
-
[
|
|
1468
|
-
[N, [
|
|
1469
|
-
]),
|
|
1462
|
+
[L, [d, l]],
|
|
1463
|
+
[N, [d, l]]
|
|
1464
|
+
]), q.call(a.isIgnore, [
|
|
1465
|
+
[O, [l, he]],
|
|
1466
|
+
[L, [l]],
|
|
1467
|
+
[N, [l]]
|
|
1468
|
+
]), q.call(a.isIgnoreRgx, [
|
|
1470
1469
|
[O, / ?browser$/i],
|
|
1471
1470
|
[N, / ?os$/i]
|
|
1472
|
-
]),
|
|
1473
|
-
[O, [
|
|
1474
|
-
[
|
|
1471
|
+
]), q.call(a.toString, [
|
|
1472
|
+
[O, [d, l]],
|
|
1473
|
+
[z, [M]],
|
|
1475
1474
|
[G, [u, c]],
|
|
1476
|
-
[
|
|
1477
|
-
[N, [
|
|
1478
|
-
]),
|
|
1479
|
-
})(),
|
|
1480
|
-
var e =
|
|
1475
|
+
[L, [d, l]],
|
|
1476
|
+
[N, [d, l]]
|
|
1477
|
+
]), a;
|
|
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;
|
|
1481
1480
|
function o() {
|
|
1482
|
-
|
|
1481
|
+
q.call(this, e);
|
|
1483
1482
|
}
|
|
1484
1483
|
return o.prototype.getItem = function() {
|
|
1485
|
-
return
|
|
1484
|
+
return a;
|
|
1486
1485
|
}, o.prototype.withClientHints = function() {
|
|
1487
|
-
return $ ? $.getHighEntropyValues(Ot).then(function(
|
|
1488
|
-
return
|
|
1489
|
-
}) :
|
|
1486
|
+
return $ ? $.getHighEntropyValues(Ot).then(function(f) {
|
|
1487
|
+
return a.setCH(new Pt(f, !1)).parseCH().get();
|
|
1488
|
+
}) : a.parseCH().get();
|
|
1490
1489
|
}, o.prototype.withFeatureCheck = function() {
|
|
1491
|
-
return
|
|
1492
|
-
}, t !=
|
|
1493
|
-
var
|
|
1490
|
+
return a.detectFeature().get();
|
|
1491
|
+
}, t != oe && (o.prototype.is = function(f) {
|
|
1492
|
+
var h = !1;
|
|
1494
1493
|
for (var y in this)
|
|
1495
|
-
if (this.hasOwnProperty(y) && !
|
|
1496
|
-
if (
|
|
1497
|
-
} else if (
|
|
1498
|
-
|
|
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) {
|
|
1497
|
+
h = !h;
|
|
1499
1498
|
break;
|
|
1500
1499
|
}
|
|
1501
|
-
return
|
|
1500
|
+
return h;
|
|
1502
1501
|
}, o.prototype.toString = function() {
|
|
1503
|
-
var
|
|
1504
|
-
for (var
|
|
1505
|
-
typeof this[r[
|
|
1506
|
-
return
|
|
1507
|
-
}), o.prototype.then = function(
|
|
1508
|
-
var
|
|
1509
|
-
for (var A in
|
|
1510
|
-
|
|
1502
|
+
var f = re;
|
|
1503
|
+
for (var h in r)
|
|
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() {
|
|
1508
|
+
for (var A in h)
|
|
1509
|
+
h.hasOwnProperty(A) && (this[A] = h[A]);
|
|
1511
1510
|
};
|
|
1512
1511
|
y.prototype = {
|
|
1513
1512
|
is: o.prototype.is,
|
|
@@ -1516,127 +1515,127 @@ var Xt = "2.0.9", Qt = 500, rt = "user-agent", ne = "", ot = "?", E = {
|
|
|
1516
1515
|
withFeatureCheck: o.prototype.withFeatureCheck
|
|
1517
1516
|
};
|
|
1518
1517
|
var I = new y();
|
|
1519
|
-
return
|
|
1518
|
+
return f(I), I;
|
|
1520
1519
|
}, new o();
|
|
1521
1520
|
};
|
|
1522
|
-
function Pt(
|
|
1523
|
-
if (
|
|
1524
|
-
|
|
1525
|
-
[
|
|
1526
|
-
[
|
|
1527
|
-
[v, /\?1/.test(
|
|
1528
|
-
[c,
|
|
1529
|
-
[
|
|
1530
|
-
[
|
|
1531
|
-
[M,
|
|
1532
|
-
[Q,
|
|
1533
|
-
[
|
|
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])]
|
|
1534
1533
|
]);
|
|
1535
1534
|
else
|
|
1536
|
-
for (var e in
|
|
1537
|
-
this.hasOwnProperty(e) && typeof
|
|
1535
|
+
for (var e in a)
|
|
1536
|
+
this.hasOwnProperty(e) && typeof a[e] !== E.UNDEFINED && (this[e] = a[e]);
|
|
1538
1537
|
}
|
|
1539
|
-
function
|
|
1540
|
-
return
|
|
1541
|
-
["itemType",
|
|
1538
|
+
function X(a, t, e, i) {
|
|
1539
|
+
return q.call(this, [
|
|
1540
|
+
["itemType", a],
|
|
1542
1541
|
["ua", t],
|
|
1543
1542
|
["uaCH", i],
|
|
1544
1543
|
["rgxMap", e],
|
|
1545
|
-
["data",
|
|
1544
|
+
["data", s0(this, a)]
|
|
1546
1545
|
]), this;
|
|
1547
1546
|
}
|
|
1548
|
-
|
|
1549
|
-
return
|
|
1547
|
+
X.prototype.get = function(a) {
|
|
1548
|
+
return a ? this.data.hasOwnProperty(a) ? this.data[a] : void 0 : this.data;
|
|
1550
1549
|
};
|
|
1551
|
-
|
|
1552
|
-
return this.data[
|
|
1550
|
+
X.prototype.set = function(a, t) {
|
|
1551
|
+
return this.data[a] = t, this;
|
|
1553
1552
|
};
|
|
1554
|
-
|
|
1555
|
-
return this.uaCH =
|
|
1553
|
+
X.prototype.setCH = function(a) {
|
|
1554
|
+
return this.uaCH = a, this;
|
|
1556
1555
|
};
|
|
1557
|
-
|
|
1558
|
-
if (
|
|
1556
|
+
X.prototype.detectFeature = function() {
|
|
1557
|
+
if (R && R.userAgent == this.ua)
|
|
1559
1558
|
switch (this.itemType) {
|
|
1560
1559
|
case O:
|
|
1561
|
-
|
|
1560
|
+
R.brave && typeof R.brave.isBrave == E.FUNCTION && this.set(d, "Brave");
|
|
1562
1561
|
break;
|
|
1563
1562
|
case G:
|
|
1564
|
-
!this.get(s) && $ && $[v] && this.set(s, v), this.get(c) == "Macintosh" &&
|
|
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);
|
|
1565
1564
|
break;
|
|
1566
1565
|
case N:
|
|
1567
|
-
!this.get(
|
|
1566
|
+
!this.get(d) && $ && $[se] && this.set(d, $[se]);
|
|
1568
1567
|
break;
|
|
1569
|
-
case
|
|
1570
|
-
var
|
|
1571
|
-
return
|
|
1568
|
+
case oe:
|
|
1569
|
+
var a = this.data, t = function(e) {
|
|
1570
|
+
return a[e].getItem().detectFeature().get();
|
|
1572
1571
|
};
|
|
1573
|
-
this.set(O, t(O)).set(
|
|
1572
|
+
this.set(O, t(O)).set(z, t(z)).set(G, t(G)).set(L, t(L)).set(N, t(N));
|
|
1574
1573
|
}
|
|
1575
1574
|
return this;
|
|
1576
1575
|
};
|
|
1577
|
-
|
|
1578
|
-
switch (this.itemType !=
|
|
1576
|
+
X.prototype.parseUA = function() {
|
|
1577
|
+
switch (this.itemType != oe && et.call(this.data, this.ua, this.rgxMap), this.itemType) {
|
|
1579
1578
|
case O:
|
|
1580
|
-
this.set(he,
|
|
1579
|
+
this.set(he, $e(this.get(l)));
|
|
1581
1580
|
break;
|
|
1582
1581
|
case N:
|
|
1583
|
-
if (this.get(
|
|
1584
|
-
var
|
|
1585
|
-
|
|
1582
|
+
if (this.get(d) == "iOS" && this.get(l) == "18.6") {
|
|
1583
|
+
var a = /\) Version\/([\d\.]+)/.exec(this.ua);
|
|
1584
|
+
a && parseInt(a[1].substring(0, 2), 10) >= 26 && this.set(l, a[1]);
|
|
1586
1585
|
}
|
|
1587
1586
|
break;
|
|
1588
1587
|
}
|
|
1589
1588
|
return this;
|
|
1590
1589
|
};
|
|
1591
|
-
|
|
1592
|
-
var
|
|
1590
|
+
X.prototype.parseCH = function() {
|
|
1591
|
+
var a = this.uaCH, t = this.rgxMap;
|
|
1593
1592
|
switch (this.itemType) {
|
|
1594
1593
|
case O:
|
|
1595
|
-
case
|
|
1596
|
-
var e =
|
|
1594
|
+
case L:
|
|
1595
|
+
var e = a[it] || a[tt], i;
|
|
1597
1596
|
if (e)
|
|
1598
1597
|
for (var n = 0; n < e.length; n++) {
|
|
1599
1598
|
var r = e[n].brand || e[n], o = e[n].version;
|
|
1600
|
-
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);
|
|
1601
1600
|
}
|
|
1602
1601
|
break;
|
|
1603
|
-
case
|
|
1604
|
-
var
|
|
1605
|
-
|
|
1602
|
+
case z:
|
|
1603
|
+
var f = a[M];
|
|
1604
|
+
f && (f && a[Ue] == "64" && (f += "64"), et.call(this.data, f + ";", t));
|
|
1606
1605
|
break;
|
|
1607
1606
|
case G:
|
|
1608
|
-
if (
|
|
1609
|
-
var
|
|
1610
|
-
|
|
1607
|
+
if (a[v] && this.set(s, v), a[c] && (this.set(c, a[c]), !this.get(s) || !this.get(u))) {
|
|
1608
|
+
var h = {};
|
|
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);
|
|
1611
1610
|
}
|
|
1612
|
-
if (
|
|
1611
|
+
if (a[Q]) {
|
|
1613
1612
|
var y;
|
|
1614
|
-
if (typeof
|
|
1615
|
-
for (var I = 0; !y && I <
|
|
1616
|
-
y = U(
|
|
1613
|
+
if (typeof a[Q] != "string")
|
|
1614
|
+
for (var I = 0; !y && I < a[Q].length; )
|
|
1615
|
+
y = U(a[Q][I++], yt);
|
|
1617
1616
|
else
|
|
1618
|
-
y = U(
|
|
1617
|
+
y = U(a[Q], yt);
|
|
1619
1618
|
this.set(s, y);
|
|
1620
1619
|
}
|
|
1621
1620
|
break;
|
|
1622
1621
|
case N:
|
|
1623
|
-
var A =
|
|
1622
|
+
var A = a[se];
|
|
1624
1623
|
if (A) {
|
|
1625
|
-
var P =
|
|
1626
|
-
A ==
|
|
1624
|
+
var P = a[at];
|
|
1625
|
+
A == Ze && (P = parseInt($e(P), 10) >= 13 ? "11" : "10"), this.set(d, A).set(l, P);
|
|
1627
1626
|
}
|
|
1628
|
-
this.get(
|
|
1627
|
+
this.get(d) == Ze && a[c] == "Xbox" && this.set(d, "Xbox").set(l, void 0);
|
|
1629
1628
|
break;
|
|
1630
|
-
case
|
|
1631
|
-
var
|
|
1632
|
-
return
|
|
1629
|
+
case oe:
|
|
1630
|
+
var Y = this.data, F = function(W) {
|
|
1631
|
+
return Y[W].getItem().setCH(a).parseCH().get();
|
|
1633
1632
|
};
|
|
1634
|
-
this.set(O, F(O)).set(
|
|
1633
|
+
this.set(O, F(O)).set(z, F(z)).set(G, F(G)).set(L, F(L)).set(N, F(N));
|
|
1635
1634
|
}
|
|
1636
1635
|
return this;
|
|
1637
1636
|
};
|
|
1638
|
-
function
|
|
1639
|
-
if (typeof
|
|
1637
|
+
function V(a, t, e) {
|
|
1638
|
+
if (typeof a === E.OBJECT ? (Ce(a, !0) ? (typeof t === E.OBJECT && (e = t), t = a) : (e = a, t = void 0), a = void 0) : typeof a === E.STRING && !Ce(t, !0) && (e = t, t = void 0), e)
|
|
1640
1639
|
if (typeof e.append === E.FUNCTION) {
|
|
1641
1640
|
var i = {};
|
|
1642
1641
|
e.forEach(function(I, A) {
|
|
@@ -1648,691 +1647,692 @@ function q(x, t, e) {
|
|
|
1648
1647
|
e.hasOwnProperty(r) && (n[String(r).toLowerCase()] = e[r]);
|
|
1649
1648
|
e = n;
|
|
1650
1649
|
}
|
|
1651
|
-
if (!(this instanceof
|
|
1652
|
-
return new
|
|
1653
|
-
var o = typeof
|
|
1650
|
+
if (!(this instanceof V))
|
|
1651
|
+
return new V(a, t, e).getResult();
|
|
1652
|
+
var o = typeof a === E.STRING ? a : (
|
|
1654
1653
|
// Passed user-agent string
|
|
1655
|
-
e && e[
|
|
1654
|
+
e && e[ot] ? e[ot] : (
|
|
1656
1655
|
// User-Agent from passed headers
|
|
1657
|
-
|
|
1656
|
+
R && R.userAgent ? R.userAgent : (
|
|
1658
1657
|
// navigator.userAgent
|
|
1659
|
-
|
|
1658
|
+
re
|
|
1660
1659
|
)
|
|
1661
1660
|
)
|
|
1662
|
-
),
|
|
1663
|
-
return I ==
|
|
1664
|
-
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();
|
|
1665
1664
|
} : function() {
|
|
1666
|
-
return new
|
|
1665
|
+
return new X(I, o, h[I], f).parseUA().get();
|
|
1667
1666
|
};
|
|
1668
1667
|
};
|
|
1669
|
-
return
|
|
1668
|
+
return q.call(this, [
|
|
1670
1669
|
["getBrowser", y(O)],
|
|
1671
|
-
["getCPU", y(
|
|
1670
|
+
["getCPU", y(z)],
|
|
1672
1671
|
["getDevice", y(G)],
|
|
1673
|
-
["getEngine", y(
|
|
1672
|
+
["getEngine", y(L)],
|
|
1674
1673
|
["getOS", y(N)],
|
|
1675
|
-
["getResult", y(
|
|
1674
|
+
["getResult", y(oe)],
|
|
1676
1675
|
["getUA", function() {
|
|
1677
1676
|
return o;
|
|
1678
1677
|
}],
|
|
1679
1678
|
["setUA", function(I) {
|
|
1680
|
-
return
|
|
1679
|
+
return be(I) && (o = Ae(I, Jt)), this;
|
|
1681
1680
|
}]
|
|
1682
1681
|
]).setUA(o), this;
|
|
1683
1682
|
}
|
|
1684
|
-
|
|
1685
|
-
|
|
1686
|
-
|
|
1687
|
-
|
|
1688
|
-
|
|
1689
|
-
const
|
|
1683
|
+
V.VERSION = Xt;
|
|
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({
|
|
1690
1689
|
__proto__: null,
|
|
1691
|
-
UAParser:
|
|
1692
|
-
}, Symbol.toStringTag, { value: "Module" })),
|
|
1693
|
-
for (let
|
|
1694
|
-
|
|
1695
|
-
function d0(
|
|
1696
|
-
return (
|
|
1690
|
+
UAParser: V
|
|
1691
|
+
}, Symbol.toStringTag, { value: "Module" })), D = [];
|
|
1692
|
+
for (let a = 0; a < 256; ++a)
|
|
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();
|
|
1697
1696
|
}
|
|
1698
|
-
let
|
|
1699
|
-
const
|
|
1700
|
-
function
|
|
1701
|
-
if (!
|
|
1697
|
+
let Xe;
|
|
1698
|
+
const l0 = new Uint8Array(16);
|
|
1699
|
+
function u0() {
|
|
1700
|
+
if (!Xe) {
|
|
1702
1701
|
if (typeof crypto > "u" || !crypto.getRandomValues)
|
|
1703
1702
|
throw new Error("crypto.getRandomValues() not supported. See https://github.com/uuidjs/uuid#getrandomvalues-not-supported");
|
|
1704
|
-
|
|
1703
|
+
Xe = crypto.getRandomValues.bind(crypto);
|
|
1705
1704
|
}
|
|
1706
|
-
return
|
|
1705
|
+
return Xe(l0);
|
|
1707
1706
|
}
|
|
1708
|
-
const
|
|
1709
|
-
function
|
|
1710
|
-
|
|
1711
|
-
const i =
|
|
1707
|
+
const f0 = typeof crypto < "u" && crypto.randomUUID && crypto.randomUUID.bind(crypto), St = { randomUUID: f0 };
|
|
1708
|
+
function p0(a, t, e) {
|
|
1709
|
+
a = a || {};
|
|
1710
|
+
const i = a.random ?? a.rng?.() ?? u0();
|
|
1712
1711
|
if (i.length < 16)
|
|
1713
1712
|
throw new Error("Random bytes length must be >= 16");
|
|
1714
1713
|
return i[6] = i[6] & 15 | 64, i[8] = i[8] & 63 | 128, d0(i);
|
|
1715
1714
|
}
|
|
1716
|
-
function Nt(
|
|
1717
|
-
return St.randomUUID && !
|
|
1715
|
+
function Nt(a, t, e) {
|
|
1716
|
+
return St.randomUUID && !a ? St.randomUUID() : p0(a);
|
|
1718
1717
|
}
|
|
1719
|
-
function
|
|
1720
|
-
|
|
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();
|
|
1721
1723
|
}
|
|
1722
|
-
const
|
|
1723
|
-
|
|
1724
|
-
|
|
1724
|
+
const x = Ut;
|
|
1725
|
+
function Ut(a, t) {
|
|
1726
|
+
return a = a - 387, De()[a];
|
|
1727
|
+
}
|
|
1728
|
+
(function(a, t) {
|
|
1729
|
+
const e = Ut, i = a();
|
|
1725
1730
|
for (; ; )
|
|
1726
1731
|
try {
|
|
1727
|
-
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;
|
|
1728
1733
|
i.push(i.shift());
|
|
1729
1734
|
} catch {
|
|
1730
1735
|
i.push(i.shift());
|
|
1731
1736
|
}
|
|
1732
|
-
})(
|
|
1733
|
-
|
|
1734
|
-
|
|
1735
|
-
|
|
1736
|
-
return x;
|
|
1737
|
-
}, Ae();
|
|
1738
|
-
}
|
|
1739
|
-
const Bt = { AF: a(241), AX: a(228), AL: a(343), DZ: a(239), AS: "American Samoa", AD: a(326), AO: "Angola", AI: a(352), AQ: a(249), AG: a(402), AR: a(371), AM: a(238), AW: a(232), AU: a(397), AT: a(279), AZ: a(252), BS: a(313), BH: "Bahrain", BD: "Bangladesh", BB: a(213), BY: a(370), BE: a(292), BZ: a(393), BJ: "Benin", BM: a(271), BT: a(381), BO: "Bolivia (Plurinational State of)", BQ: a(319), BA: "Bosnia and Herzegovina", BW: "Botswana", BV: "Bouvet Island", BR: a(386), IO: a(261), BN: a(337), BG: a(362), BF: "Burkina Faso", BI: a(355), CV: a(324), KH: "Cambodia", CM: a(367), CA: a(217), KY: a(253), CF: a(349), TD: "Chad", CL: a(297), CN: a(293), CX: "Christmas Island", CC: a(251), CO: a(305), KM: "Comoros", CG: a(368), CD: a(312), CK: a(379), CR: a(269), CI: a(270), HR: a(328), CU: a(366), CW: "Curaçao", CY: a(320), CZ: a(330), DK: a(327), DJ: a(392), DM: a(347), DO: a(333), EC: a(329), EG: "Egypt", SV: "El Salvador", GQ: a(388), ER: "Eritrea", EE: "Estonia", ET: a(231), FK: a(229), FO: "Faroe Islands", FJ: a(230), FI: "Finland", FR: a(220), GF: a(373), PF: a(235), TF: "French Southern Territories", GA: "Gabon", GM: a(356), GE: a(310), DE: "Germany", GH: a(258), GI: "Gibraltar", GR: "Greece", GL: a(383), GD: a(263), GP: a(226), GU: a(247), GT: a(221), GG: a(248), GN: a(369), GW: a(403), GY: a(361), HT: "Haiti", HM: a(224), VA: a(278), HN: a(301), HK: a(215), HU: a(350), IS: a(275), IN: "India", ID: a(296), IR: a(332), IQ: a(290), IE: "Ireland", IM: a(256), IL: a(295), IT: a(336), JM: a(274), JP: a(353), JE: a(389), JO: "Jordan", KZ: "Kazakhstan", KE: "Kenya", KI: a(273), KP: a(315), KR: a(260), KW: a(294), KG: "Kyrgyzstan", LA: a(240), LV: a(219), LB: a(280), LS: a(266), LR: a(321), LY: a(222), LI: a(314), LT: a(384), LU: a(325), MO: a(363), MK: a(311), MG: a(288), MW: "Malawi", MY: "Malaysia", MV: a(317), ML: a(404), MT: a(318), MH: "Marshall Islands", MQ: a(335), MR: a(257), MU: "Mauritius", YT: a(395), MX: a(376), FM: a(316), MD: a(304), MC: a(308), MN: a(344), ME: a(264), MS: a(259), MA: a(281), MZ: a(250), MM: a(406), NA: "Namibia", NR: "Nauru", NP: a(398), NL: "Netherlands", NC: a(309), NZ: a(216), NI: a(214), NE: "Niger", NG: a(345), NU: "Niue", NF: a(357), MP: a(265), NO: "Norway", OM: a(285), PK: "Pakistan", PW: a(277), PS: a(385), PA: "Panama", PG: a(360), PY: a(211), PE: "Peru", PH: "Philippines", PN: "Pitcairn", PL: "Poland", PT: a(339), PR: a(378), QA: a(298), RE: "Réunion", RO: a(255), RU: a(340), RW: a(323), BL: a(372), SH: a(299), KN: a(334), LC: a(286), MF: a(236), PM: a(306), VC: a(338), WS: a(380), SM: "San Marino", ST: "Sao Tome and Principe", SA: a(359), SN: a(300), RS: a(401), SC: a(390), SL: a(212), SG: a(358), SX: a(399), SK: a(348), SI: a(237), SB: "Solomon Islands", SO: a(262), ZA: a(289), GS: a(377), SS: a(223), ES: a(268), LK: a(254), SD: a(405), SR: a(365), SJ: "Svalbard and Jan Mayen", SZ: "Swaziland", SE: a(245), CH: a(227), SY: a(374), TW: a(234), TJ: a(225), TZ: a(302), TH: a(307), TL: a(400), TG: "Togo", TK: "Tokelau", TO: a(276), TT: a(272), TN: a(346), TR: a(303), TM: a(351), TC: a(282), TV: a(246), UG: "Uganda", UA: "Ukraine", AE: a(341), GB: a(331), US: a(244), UM: a(291), UY: a(267), UZ: a(391), VU: a(354), VE: "Venezuela (Bolivarian Republic of)", VN: "Viet Nam", VG: a(284), VI: a(364), WF: "Wallis and Futuna", EH: a(382), YE: a(394), ZM: a(243), ZW: a(342) }, _ = Vt;
|
|
1740
|
-
(function(x, t) {
|
|
1741
|
-
const e = Vt, i = x();
|
|
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;
|
|
1739
|
+
(function(a, t) {
|
|
1740
|
+
const e = Vt, i = a();
|
|
1742
1741
|
for (; ; )
|
|
1743
1742
|
try {
|
|
1744
|
-
if (
|
|
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;
|
|
1745
1744
|
i.push(i.shift());
|
|
1746
1745
|
} catch {
|
|
1747
1746
|
i.push(i.shift());
|
|
1748
1747
|
}
|
|
1749
|
-
})(
|
|
1750
|
-
const Be = { gov: { prod: { log:
|
|
1751
|
-
let C = { video: {}, browser: {}, device: {}, connection: {}, screen: {}, player_version:
|
|
1752
|
-
const
|
|
1753
|
-
function
|
|
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() {
|
|
1754
1753
|
return Nt();
|
|
1755
1754
|
}
|
|
1756
1755
|
function It() {
|
|
1757
1756
|
return Nt();
|
|
1758
1757
|
}
|
|
1759
1758
|
const Ft = () => {
|
|
1760
|
-
const
|
|
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;
|
|
1761
1760
|
return { logDate: i, logDateUnix: n, thisSec: r };
|
|
1762
1761
|
};
|
|
1763
|
-
function
|
|
1762
|
+
function b0(a) {
|
|
1764
1763
|
const t = _;
|
|
1765
|
-
return typeof
|
|
1764
|
+
return typeof a === t(143) && a !== null && !Array[t(199)](a);
|
|
1766
1765
|
}
|
|
1767
|
-
function
|
|
1766
|
+
function xt(a, t) {
|
|
1768
1767
|
const e = _;
|
|
1769
|
-
Object[e(
|
|
1768
|
+
Object[e(138)](t)[e(187)](([i, n]) => {
|
|
1770
1769
|
const r = e;
|
|
1771
|
-
|
|
1772
|
-
|
|
1773
|
-
})) : n != null && (
|
|
1770
|
+
b0(n) ? (!a[i] && (a[i] = {}), Object.entries(n)[r(187)](([o, f]) => {
|
|
1771
|
+
f != null && (a[i][o] = f);
|
|
1772
|
+
})) : n != null && (a[i] = n);
|
|
1774
1773
|
});
|
|
1775
1774
|
}
|
|
1776
|
-
function
|
|
1775
|
+
function w0(a) {
|
|
1777
1776
|
const t = _;
|
|
1778
|
-
return
|
|
1777
|
+
return a[t(169)](t(180)) > -1 ? t(160) : a[t(169)](t(162)) > -1 ? t(165) : t(182);
|
|
1779
1778
|
}
|
|
1780
|
-
function
|
|
1779
|
+
function g0(a) {
|
|
1781
1780
|
const t = _, e = [];
|
|
1782
|
-
return
|
|
1781
|
+
return a?.r1 && e.push(a.r1), a?.r2 && e[t(157)](a.r2), a?.r3 && e[t(157)](a.r3), e.join(" ");
|
|
1783
1782
|
}
|
|
1784
|
-
function Ht(
|
|
1783
|
+
function Ht(a) {
|
|
1785
1784
|
const t = _;
|
|
1786
|
-
|
|
1787
|
-
|
|
1788
|
-
}),
|
|
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) => {
|
|
1786
|
+
a[i] === void 0 && (a[i] = 0);
|
|
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)]));
|
|
1789
1788
|
}
|
|
1790
|
-
function Gt(
|
|
1789
|
+
function Gt(a) {
|
|
1791
1790
|
const t = _;
|
|
1792
|
-
return !!(
|
|
1791
|
+
return !!(a[t(140)] && a.TID && a[t(176)]);
|
|
1793
1792
|
}
|
|
1794
|
-
function
|
|
1793
|
+
function Fe(a) {
|
|
1795
1794
|
const t = _;
|
|
1796
1795
|
try {
|
|
1797
|
-
const e =
|
|
1798
|
-
e && (
|
|
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)] || "");
|
|
1799
1798
|
} catch {
|
|
1800
1799
|
}
|
|
1801
1800
|
}
|
|
1802
|
-
function
|
|
1803
|
-
|
|
1804
|
-
return Re = function() {
|
|
1805
|
-
return x;
|
|
1806
|
-
}, Re();
|
|
1801
|
+
function Vt(a, t) {
|
|
1802
|
+
return a = a - 123, Me()[a];
|
|
1807
1803
|
}
|
|
1808
|
-
const
|
|
1804
|
+
const m0 = async (a) => {
|
|
1809
1805
|
const t = _;
|
|
1810
|
-
if (!
|
|
1811
|
-
const { platform: e, stage: i } =
|
|
1806
|
+
if (!a) return;
|
|
1807
|
+
const { platform: e, stage: i } = B, n = Be[e][i][t(125)];
|
|
1812
1808
|
try {
|
|
1813
|
-
const r = await fetch(n, { method:
|
|
1814
|
-
|
|
1815
|
-
const { logDate:
|
|
1816
|
-
return C[t(
|
|
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;
|
|
1817
1813
|
} catch (r) {
|
|
1818
|
-
return console[t(
|
|
1814
|
+
return console[t(186)](t(168), r), null;
|
|
1819
1815
|
}
|
|
1820
|
-
}
|
|
1821
|
-
|
|
1822
|
-
|
|
1823
|
-
}
|
|
1824
|
-
const v0 = async (x) => {
|
|
1825
|
-
const t = _, { platform: e, stage: i } = L, n = Lt(Be[e][i].report), r = { ...x };
|
|
1826
|
-
r[t(488)] = t(402), Le(r[t(456)]);
|
|
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);
|
|
1827
1819
|
try {
|
|
1828
|
-
await fetch(n, { method: t(
|
|
1820
|
+
await fetch(n, { method: t(134), headers: { "Content-Type": t(197) }, body: JSON.stringify(r) });
|
|
1829
1821
|
} catch (o) {
|
|
1830
|
-
console[t(
|
|
1822
|
+
console[t(186)](t(150), o);
|
|
1831
1823
|
}
|
|
1832
|
-
},
|
|
1833
|
-
const t = _, { platform: e, stage: i } =
|
|
1834
|
-
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)]))
|
|
1835
1827
|
try {
|
|
1836
|
-
r[t(
|
|
1828
|
+
r[t(202)] != "timeupdate", await fetch(n, { method: t(134), headers: { "Content-Type": t(197) }, body: JSON[t(155)](r) });
|
|
1837
1829
|
} catch (o) {
|
|
1838
|
-
console
|
|
1830
|
+
console[t(125)](t(153), o);
|
|
1839
1831
|
}
|
|
1840
1832
|
};
|
|
1841
|
-
async function
|
|
1833
|
+
async function S0(a, t, e, i, n) {
|
|
1842
1834
|
const r = _;
|
|
1843
|
-
|
|
1844
|
-
const { logDate: o, logDateUnix:
|
|
1845
|
-
C
|
|
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;
|
|
1846
1838
|
}
|
|
1847
|
-
|
|
1848
|
-
const
|
|
1849
|
-
|
|
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();
|
|
1850
1844
|
}
|
|
1851
|
-
function
|
|
1852
|
-
const t = _,
|
|
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));
|
|
1848
|
+
}
|
|
1849
|
+
function k0(a) {
|
|
1850
|
+
const t = _, { platform: e, stage: i } = B, n = Be[e]?.[i]?.report;
|
|
1853
1851
|
if (!n) return !1;
|
|
1854
|
-
const r = JSON
|
|
1855
|
-
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;
|
|
1856
1854
|
try {
|
|
1857
|
-
const o = new Blob([JSON
|
|
1858
|
-
return navigator[t(
|
|
1855
|
+
const o = new Blob([JSON[t(155)](r)], { type: t(197) });
|
|
1856
|
+
return navigator[t(189)](n, o);
|
|
1859
1857
|
} catch {
|
|
1860
1858
|
return !1;
|
|
1861
1859
|
}
|
|
1862
1860
|
}
|
|
1863
|
-
const
|
|
1864
|
-
(function(
|
|
1865
|
-
const e =
|
|
1861
|
+
const _0 = nt;
|
|
1862
|
+
(function(a, t) {
|
|
1863
|
+
const e = nt, i = a();
|
|
1866
1864
|
for (; ; )
|
|
1867
1865
|
try {
|
|
1868
|
-
if (
|
|
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;
|
|
1869
1867
|
i.push(i.shift());
|
|
1870
1868
|
} catch {
|
|
1871
1869
|
i.push(i.shift());
|
|
1872
1870
|
}
|
|
1873
|
-
})(
|
|
1874
|
-
|
|
1875
|
-
|
|
1876
|
-
|
|
1877
|
-
|
|
1878
|
-
|
|
1871
|
+
})(Re, 443313);
|
|
1872
|
+
function nt(a, t) {
|
|
1873
|
+
return a = a - 499, Re()[a];
|
|
1874
|
+
}
|
|
1875
|
+
const E0 = (a = {}, t) => {
|
|
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 };
|
|
1878
|
+
const n = { ...i, ...a };
|
|
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;
|
|
1879
1880
|
};
|
|
1880
|
-
function
|
|
1881
|
-
|
|
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();
|
|
1882
1886
|
}
|
|
1883
|
-
|
|
1884
|
-
|
|
1885
|
-
|
|
1886
|
-
|
|
1887
|
-
|
|
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();
|
|
1888
1893
|
}
|
|
1889
|
-
|
|
1890
|
-
|
|
1891
|
-
const e = Yt, i = x();
|
|
1894
|
+
(function(a, t) {
|
|
1895
|
+
const e = rt, i = a();
|
|
1892
1896
|
for (; ; )
|
|
1893
1897
|
try {
|
|
1894
|
-
if (
|
|
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
|
-
})(
|
|
1900
|
-
function
|
|
1901
|
-
|
|
1902
|
-
return De = function() {
|
|
1903
|
-
return x;
|
|
1904
|
-
}, De();
|
|
1905
|
-
}
|
|
1906
|
-
function Yt(x, t) {
|
|
1907
|
-
return x = x - 354, De()[x];
|
|
1903
|
+
})(Oe, 198051);
|
|
1904
|
+
function rt(a, t) {
|
|
1905
|
+
return a = a - 142, Oe()[a];
|
|
1908
1906
|
}
|
|
1909
|
-
const
|
|
1910
|
-
class
|
|
1911
|
-
[
|
|
1912
|
-
[
|
|
1913
|
-
|
|
1914
|
-
[
|
|
1915
|
-
[
|
|
1916
|
-
[
|
|
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
|
|
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
|
-
const e =
|
|
1931
|
-
return typeof t === e(
|
|
1927
|
+
isPlainObject(t) {
|
|
1928
|
+
const e = b;
|
|
1929
|
+
return typeof t === e(157) && t !== null && !Array[e(222)](t);
|
|
1932
1930
|
}
|
|
1933
|
-
async [
|
|
1934
|
-
const i =
|
|
1935
|
-
if (this
|
|
1936
|
-
const { logDate: n, logDateUnix: r } = this[i(
|
|
1937
|
-
for (const
|
|
1938
|
-
y[
|
|
1939
|
-
const P = this
|
|
1940
|
-
this[i(
|
|
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);
|
|
1941
1939
|
}
|
|
1942
|
-
async [
|
|
1943
|
-
const e =
|
|
1944
|
-
!this
|
|
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);
|
|
1945
1943
|
}
|
|
1946
|
-
async [
|
|
1947
|
-
|
|
1948
|
-
|
|
1949
|
-
|
|
1950
|
-
|
|
1951
|
-
|
|
1952
|
-
|
|
1953
|
-
}) : n != null && (this[r(437)][i] = n);
|
|
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);
|
|
1954
1951
|
});
|
|
1955
1952
|
}
|
|
1956
|
-
[
|
|
1957
|
-
const e =
|
|
1958
|
-
switch (o && o > 0 && (this[e(
|
|
1959
|
-
case m[e(
|
|
1960
|
-
this[e(
|
|
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);
|
|
1961
1958
|
break;
|
|
1962
|
-
case m
|
|
1963
|
-
this
|
|
1959
|
+
case m.STARTUP:
|
|
1960
|
+
this.handleStartup(r, n);
|
|
1964
1961
|
break;
|
|
1965
|
-
case m
|
|
1966
|
-
this[e(
|
|
1962
|
+
case m.PLAY:
|
|
1963
|
+
this[e(166)](r, n);
|
|
1967
1964
|
break;
|
|
1968
|
-
case m
|
|
1965
|
+
case m[e(161)]:
|
|
1969
1966
|
this.handlePause(r, n);
|
|
1970
1967
|
break;
|
|
1971
|
-
case m
|
|
1972
|
-
this[e(
|
|
1968
|
+
case m.TIMEUPDATE:
|
|
1969
|
+
this[e(177)](r, n);
|
|
1973
1970
|
break;
|
|
1974
|
-
case m
|
|
1975
|
-
this
|
|
1971
|
+
case m.TIMEUPDATE_FOCUS:
|
|
1972
|
+
this.handleTimeUpdateFocus(r, n);
|
|
1976
1973
|
break;
|
|
1977
|
-
case m
|
|
1978
|
-
this
|
|
1974
|
+
case m.SEEKING:
|
|
1975
|
+
this[e(206)](r, n);
|
|
1979
1976
|
break;
|
|
1980
|
-
case m
|
|
1981
|
-
this[e(
|
|
1977
|
+
case m[e(220)]:
|
|
1978
|
+
this[e(238)](r, n);
|
|
1982
1979
|
break;
|
|
1983
|
-
case m[e(
|
|
1984
|
-
case e(
|
|
1985
|
-
this
|
|
1980
|
+
case m[e(232)]:
|
|
1981
|
+
case e(271):
|
|
1982
|
+
this.handleWaiting(r, n);
|
|
1986
1983
|
break;
|
|
1987
|
-
case m
|
|
1988
|
-
case
|
|
1989
|
-
case e(
|
|
1990
|
-
this
|
|
1984
|
+
case m.WAITING_END:
|
|
1985
|
+
case "bufferingEnd":
|
|
1986
|
+
case e(150):
|
|
1987
|
+
this.handleCanplay(r, n);
|
|
1991
1988
|
break;
|
|
1992
|
-
case m
|
|
1993
|
-
this[e(
|
|
1989
|
+
case m.CANPLAY:
|
|
1990
|
+
this[e(183)](r, n);
|
|
1994
1991
|
break;
|
|
1995
1992
|
case m.ENDED:
|
|
1996
|
-
this
|
|
1993
|
+
this.handleEnded(r, n);
|
|
1997
1994
|
break;
|
|
1998
1995
|
case "nextTrack":
|
|
1999
|
-
case e(
|
|
2000
|
-
this
|
|
1996
|
+
case e(176):
|
|
1997
|
+
this[e(244)](i, r, n);
|
|
2001
1998
|
break;
|
|
2002
|
-
case m[e(
|
|
2003
|
-
this[e(
|
|
1999
|
+
case m[e(168)]:
|
|
2000
|
+
this[e(268)](r, n);
|
|
2004
2001
|
break;
|
|
2005
|
-
case m
|
|
2002
|
+
case m[e(282)]:
|
|
2006
2003
|
this.handleQualityChange(r, n);
|
|
2007
2004
|
break;
|
|
2008
|
-
case m
|
|
2009
|
-
this[e(
|
|
2005
|
+
case m[e(195)]:
|
|
2006
|
+
this[e(264)](r, n);
|
|
2010
2007
|
break;
|
|
2011
2008
|
case m.FULLSCREEN_CHANGE:
|
|
2012
|
-
this
|
|
2009
|
+
this[e(272)](r, n);
|
|
2013
2010
|
break;
|
|
2014
2011
|
}
|
|
2015
2012
|
}
|
|
2016
|
-
|
|
2017
|
-
const i =
|
|
2018
|
-
!this[i(
|
|
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 });
|
|
2019
2016
|
}
|
|
2020
|
-
[
|
|
2021
|
-
const i =
|
|
2022
|
-
if (this[i(
|
|
2023
|
-
const n = e?.[i(
|
|
2024
|
-
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;
|
|
2025
2022
|
}
|
|
2026
2023
|
}
|
|
2027
|
-
[
|
|
2028
|
-
const i =
|
|
2029
|
-
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);
|
|
2030
2027
|
}
|
|
2031
|
-
[
|
|
2032
|
-
const i =
|
|
2033
|
-
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)]);
|
|
2034
2031
|
}
|
|
2035
|
-
|
|
2036
|
-
const i =
|
|
2037
|
-
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);
|
|
2038
2035
|
}
|
|
2039
|
-
[
|
|
2040
|
-
const i =
|
|
2041
|
-
this
|
|
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);
|
|
2042
2039
|
}
|
|
2043
|
-
|
|
2044
|
-
const i =
|
|
2045
|
-
this
|
|
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)]);
|
|
2046
2043
|
}
|
|
2047
|
-
[
|
|
2048
|
-
const i =
|
|
2049
|
-
this[i(
|
|
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)]);
|
|
2050
2047
|
}
|
|
2051
|
-
[
|
|
2052
|
-
const i =
|
|
2053
|
-
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)]);
|
|
2054
2051
|
}
|
|
2055
|
-
|
|
2056
|
-
const i =
|
|
2057
|
-
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)]);
|
|
2058
2055
|
}
|
|
2059
|
-
|
|
2060
|
-
const t =
|
|
2061
|
-
if (this[t(
|
|
2062
|
-
this[t(
|
|
2063
|
-
const { logDate: e, logDateUnix: i } = this
|
|
2064
|
-
|
|
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);
|
|
2065
2062
|
}
|
|
2066
|
-
[
|
|
2067
|
-
this
|
|
2063
|
+
[b(143)]() {
|
|
2064
|
+
this[b(241)]();
|
|
2068
2065
|
}
|
|
2069
|
-
[
|
|
2070
|
-
const t =
|
|
2071
|
-
document[t(
|
|
2066
|
+
[b(229)]() {
|
|
2067
|
+
const t = b;
|
|
2068
|
+
document[t(228)] === t(171) && this.sendSessionBeacon();
|
|
2072
2069
|
}
|
|
2073
|
-
|
|
2074
|
-
const t =
|
|
2075
|
-
window[t(
|
|
2070
|
+
[b(281)]() {
|
|
2071
|
+
const t = b;
|
|
2072
|
+
window[t(283)](t(181), this.boundBeforeUnload), document[t(283)](t(145), this[t(254)]);
|
|
2076
2073
|
}
|
|
2077
|
-
|
|
2078
|
-
const i =
|
|
2079
|
-
let y = this[i(
|
|
2080
|
-
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) } };
|
|
2081
2078
|
}
|
|
2082
|
-
|
|
2083
|
-
const i =
|
|
2084
|
-
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)));
|
|
2085
2082
|
}
|
|
2086
|
-
[
|
|
2087
|
-
const n =
|
|
2088
|
-
this[n(
|
|
2089
|
-
|
|
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)](() => {
|
|
2086
|
+
const o = n;
|
|
2087
|
+
this[o(248)](r, { ...e, data: i })[o(208)](() => {
|
|
2090
2088
|
this.resetStateForNewTrack();
|
|
2091
2089
|
});
|
|
2092
2090
|
});
|
|
2093
2091
|
}
|
|
2094
|
-
[
|
|
2095
|
-
const i =
|
|
2096
|
-
this[i(
|
|
2097
|
-
const n = { errorCode: e?.code ||
|
|
2098
|
-
this[i(
|
|
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;
|
|
2099
2097
|
}
|
|
2100
|
-
[
|
|
2101
|
-
const i =
|
|
2102
|
-
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)]);
|
|
2103
2101
|
}
|
|
2104
|
-
|
|
2105
|
-
const i =
|
|
2106
|
-
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 } }));
|
|
2107
2105
|
}
|
|
2108
|
-
|
|
2109
|
-
const i =
|
|
2110
|
-
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)] } });
|
|
2111
2109
|
}
|
|
2112
|
-
|
|
2113
|
-
const t =
|
|
2114
|
-
this[t(
|
|
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;
|
|
2115
2113
|
}
|
|
2116
2114
|
}
|
|
2117
|
-
const S =
|
|
2118
|
-
(function(
|
|
2119
|
-
const e =
|
|
2115
|
+
const S = Yt;
|
|
2116
|
+
(function(a, t) {
|
|
2117
|
+
const e = Yt, i = a();
|
|
2120
2118
|
for (; ; )
|
|
2121
2119
|
try {
|
|
2122
|
-
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;
|
|
2123
2121
|
i.push(i.shift());
|
|
2124
2122
|
} catch {
|
|
2125
2123
|
i.push(i.shift());
|
|
2126
2124
|
}
|
|
2127
|
-
})(
|
|
2128
|
-
|
|
2129
|
-
|
|
2130
|
-
|
|
2131
|
-
function Oe() {
|
|
2132
|
-
const x = ["mp4", "reduce", "serverConfig", "stringify", "isInitialized", "Base64 decoding failed:", "aHR0cHM6Ly9wYXBpLmJldGEtdnBlLm5hdmVybmNwLmNvbS9wbGF5ZXIvY29uZmln", "vendor", "Kakao webview", "incomingType", "version", "m3u8", "error", "translator", "isDev", "errorCode", "pay", "isFullscreen", "Chrome", "video", "meta", "state", "object", "maInit", "playerStartTimeMs", "Content-Type", "live", "cid", "config", "2705106NaJymk", "saveData", "maSync", "auto", "screen", "API", "device", "trim", "contentId", "hlsPaser", "round", "controlBtn", "#EXT-X-STREAM-INF", "userAgentData", "playlist", "setErrorRun", "accessKey", "playerName", "data", "kakao", "play", "watermarkConfig", "aHR0cHM6Ly9sb2cudnBlLmdvdi1udHJ1c3MuY29tL3N0YXRz", "ready", "E0002", "VOD", "errorMessage", "LIVE", "VPE SDK Initialization failed:", "model", "Auto", "title", "effectiveType", "some", "2660031smUSAZ", "mpd", "warn", "playerVersion", "json", "language", "userAgent", "ratechange", "type", "options", "startTimeAt", "dash", "isPaidTier", "player_start", "Error:", "kbps", "downlink", "getVideoProtocol", "host", "quality", "indexOf", "player_version", "VPE Player: accessKey 또는 appId가 없어 키 인증을 건너뜁니다.", "getElapsedMilliseconds", "POST", "VPE", "browser", "currentTime", "aHR0cHM6Ly9wYXBpLnZwZS5uYXZlcm5jcC5jb20vcGxheWVyL2NvbmZpZw==", "getTime", "platform", "domain", "?preview=true", "url", "hls", "match", "2158107QxYLlN", "playerInfo", "name", "mobile", "playbackRate", "4863393oStoMp", "Whale", "aHR0cHM6Ly9wYXBpLnZwZS5nb3YtbnRydXNzLmNvbS9wbGF5ZXIvY29uZmln", "map", "protocol", "aHR0cHM6Ly9sb2cuYmV0YS12cGUuZ292LW50cnVzcy5jb20vc3RhdHM=", "toLowerCase", "startup", "vpe", "Edg", "hasFirstPlayReported", "floor", "kakaotalk", "lang", "duration", "status", "Unknown", "whale", "result", "Safari", "connection", "UAParser", "maUse", "Firefox", "navigator", "split", "playerStateReport", "push", "errorInfo", "origin", "ncplayer : ", "sync", "aHR0cHM6Ly9sb2cudnBlLm5hdmVybmNwLmNvbS9zdGF0cw==", "getBrowserInfo", "HLS 파싱 실패:", "getResult", "updateTranslator", "appId", "href", "hardwareConcurrency", "10tSzqyi", "errorState", "test", "code", "height", "1521832VquVyx", "Other", "report", "8nRtDJZ", "mozConnection", "pricing", "slice", "6uQEFKv", "text", "Naver webview", "location", "width", "1859630dKiZJw", "maManager", "statusText", "rtt", "webkitConnection", "includes", "212753QHvbrg", "fullscreenchange", "access_key", "length", "port", "stage", "extra", "startsWith"];
|
|
2133
|
-
return Oe = function() {
|
|
2134
|
-
return x;
|
|
2135
|
-
}, Oe();
|
|
2136
|
-
}
|
|
2137
|
-
const M0 = { gov: { prod: { config: S(218), report: S(338) }, beta: { config: "aHR0cHM6Ly9wYXBpLmJldGEtdnBlLmdvdi1udHJ1c3MuY29tL3BsYXllci9jb25maWc=", report: S(221) } }, pub: { prod: { config: S(378), report: S(248) }, beta: { config: S(293), report: "aHR0cHM6Ly9sb2cuYmV0YS12cGUubmF2ZXJuY3AuY29tL3N0YXRz" } } };
|
|
2138
|
-
let Et = [];
|
|
2139
|
-
const D0 = (x) => {
|
|
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) } } };
|
|
2127
|
+
let _t = [];
|
|
2128
|
+
const R0 = (a) => {
|
|
2140
2129
|
const t = S;
|
|
2141
2130
|
try {
|
|
2142
|
-
return atob(
|
|
2131
|
+
return atob(a);
|
|
2143
2132
|
} catch (e) {
|
|
2144
|
-
return console[t(
|
|
2133
|
+
return console[t(519)]("Base64 decoding failed:", e), "";
|
|
2145
2134
|
}
|
|
2146
2135
|
};
|
|
2136
|
+
function Yt(a, t) {
|
|
2137
|
+
return a = a - 411, Pe()[a];
|
|
2138
|
+
}
|
|
2147
2139
|
class P0 {
|
|
2148
|
-
[S(
|
|
2149
|
-
|
|
2150
|
-
|
|
2151
|
-
[S(
|
|
2152
|
-
|
|
2153
|
-
[S(
|
|
2154
|
-
|
|
2155
|
-
|
|
2156
|
-
[S(
|
|
2157
|
-
[S(
|
|
2140
|
+
[S(522)] = {};
|
|
2141
|
+
[S(558)] = null;
|
|
2142
|
+
[S(583)];
|
|
2143
|
+
[S(453)];
|
|
2144
|
+
platform;
|
|
2145
|
+
[S(523)];
|
|
2146
|
+
[S(468)];
|
|
2147
|
+
translator = Je();
|
|
2148
|
+
[S(430)];
|
|
2149
|
+
[S(565)] = null;
|
|
2158
2150
|
startTimeAt = null;
|
|
2159
|
-
|
|
2160
|
-
[S(
|
|
2151
|
+
incomingType = null;
|
|
2152
|
+
[S(505)] = !1;
|
|
2161
2153
|
playerStartTimeMs = 0;
|
|
2162
2154
|
constructor({ accessKey: t, appId: e, platform: i, stage: n, isDev: r = !1, language: o }) {
|
|
2163
|
-
const
|
|
2164
|
-
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 };
|
|
2165
2157
|
}
|
|
2166
2158
|
async initialize() {
|
|
2167
|
-
const t = S, e = [t(
|
|
2168
|
-
if ([this[e[0]], this[e[1]]]
|
|
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]) };
|
|
2169
2161
|
const r = (o) => {
|
|
2170
|
-
const
|
|
2171
|
-
return this[
|
|
2162
|
+
const f = t;
|
|
2163
|
+
return this[f(522)] = o, this[f(558)] = this[f(474)](o), this[f(558)];
|
|
2172
2164
|
};
|
|
2173
2165
|
try {
|
|
2174
|
-
const o = await this
|
|
2175
|
-
if (o[t(
|
|
2176
|
-
const
|
|
2177
|
-
if (window
|
|
2178
|
-
await
|
|
2179
|
-
const
|
|
2180
|
-
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)] } });
|
|
2181
2173
|
}
|
|
2182
|
-
return { options: this[t(
|
|
2174
|
+
return { options: this[t(522)][t(478)]?.[t(421)], playerInfo: f };
|
|
2183
2175
|
} catch (o) {
|
|
2184
|
-
return console[t(
|
|
2176
|
+
return console[t(519)](t(546), o), { error: this[t(515)](e[4]) };
|
|
2185
2177
|
}
|
|
2186
2178
|
}
|
|
2187
|
-
async
|
|
2188
|
-
const t = S, e = [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) => {
|
|
2189
2181
|
const A = t;
|
|
2190
|
-
return
|
|
2191
|
-
}, {})),
|
|
2192
|
-
if (!
|
|
2193
|
-
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)]();
|
|
2194
2186
|
}
|
|
2195
|
-
|
|
2196
|
-
const t = S, e = navigator
|
|
2197
|
-
return /Edg\/(\d+\.\d+)/.test(e) ? { origin:
|
|
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) };
|
|
2198
2190
|
}
|
|
2199
2191
|
createPlayerInfo(t) {
|
|
2200
|
-
const e = S, [i, n] = t[e(
|
|
2201
|
-
return window
|
|
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: "" } };
|
|
2202
2194
|
}
|
|
2203
|
-
[S(
|
|
2204
|
-
const e = S, i = t
|
|
2205
|
-
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;
|
|
2206
2198
|
}
|
|
2207
|
-
|
|
2199
|
+
[S(432)](t) {
|
|
2208
2200
|
const e = S;
|
|
2209
|
-
this[e(
|
|
2201
|
+
this[e(439)] = Je(t);
|
|
2210
2202
|
}
|
|
2211
|
-
|
|
2212
|
-
return this[S(
|
|
2203
|
+
[S(518)]() {
|
|
2204
|
+
return this[S(430)];
|
|
2213
2205
|
}
|
|
2214
|
-
|
|
2206
|
+
isPaidTier() {
|
|
2215
2207
|
const t = S;
|
|
2216
|
-
return this[t(
|
|
2208
|
+
return this[t(522)].result?.[t(494)] === "pay";
|
|
2217
2209
|
}
|
|
2218
|
-
[S(
|
|
2219
|
-
|
|
2210
|
+
[S(551)]() {
|
|
2211
|
+
const t = S;
|
|
2212
|
+
return !!this[t(522)][t(478)];
|
|
2220
2213
|
}
|
|
2221
|
-
|
|
2222
|
-
const e = S, i = E0(this.
|
|
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
|
-
|
|
2228
|
-
return
|
|
2220
|
+
[S(571)]() {
|
|
2221
|
+
return _t || [];
|
|
2229
2222
|
}
|
|
2230
2223
|
$t(t) {
|
|
2231
|
-
const e = S, i = t
|
|
2232
|
-
let n = this[e(
|
|
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 === e(
|
|
2227
|
+
if (n && typeof n === e(562) && r in n) n = n[r];
|
|
2235
2228
|
else return t;
|
|
2236
|
-
return typeof n
|
|
2229
|
+
return typeof n === e(450) ? n : t;
|
|
2237
2230
|
}
|
|
2238
|
-
async
|
|
2231
|
+
async hlsPaser(t) {
|
|
2239
2232
|
const e = S, i = [];
|
|
2240
|
-
if (!t || t[e(
|
|
2241
|
-
const n = (
|
|
2233
|
+
if (!t || t[e(557)](".m3u8") === -1) return i;
|
|
2234
|
+
const n = (f, h) => {
|
|
2235
|
+
const y = e;
|
|
2242
2236
|
try {
|
|
2243
|
-
return new URL(
|
|
2237
|
+
return new URL(h, f)[y(417)]();
|
|
2244
2238
|
} catch {
|
|
2245
|
-
return
|
|
2239
|
+
return h;
|
|
2246
2240
|
}
|
|
2247
|
-
}, r = (
|
|
2248
|
-
const
|
|
2241
|
+
}, r = (f) => {
|
|
2242
|
+
const h = e, y = f.match(/RESOLUTION=(\d+)x(\d+)/);
|
|
2249
2243
|
if (y) return y[2] + "p";
|
|
2250
|
-
const I =
|
|
2251
|
-
return I ? Math
|
|
2252
|
-
}, o = (
|
|
2253
|
-
const
|
|
2254
|
-
for (let I = 0; I < y[
|
|
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) {
|
|
2255
2249
|
const A = y[I];
|
|
2256
|
-
if (A[
|
|
2250
|
+
if (A[h(458)](h(460))) {
|
|
2257
2251
|
const P = y[I + 1];
|
|
2258
|
-
P && !P[
|
|
2252
|
+
P && !P[h(458)]("#") && (i[h(564)]({ quality: r(A), url: n(t, P), levelIndex: i[h(472)] }), I += 1);
|
|
2259
2253
|
}
|
|
2260
2254
|
}
|
|
2261
2255
|
};
|
|
2262
2256
|
try {
|
|
2263
|
-
const
|
|
2264
|
-
if (!
|
|
2265
|
-
const
|
|
2266
|
-
return
|
|
2267
|
-
} catch (
|
|
2268
|
-
return console[e(
|
|
2257
|
+
const f = await fetch(t);
|
|
2258
|
+
if (!f.ok) return i;
|
|
2259
|
+
const h = await f.text();
|
|
2260
|
+
return h && o(h), i;
|
|
2261
|
+
} catch (f) {
|
|
2262
|
+
return console[e(519)](e(424), f), i;
|
|
2269
2263
|
}
|
|
2270
2264
|
}
|
|
2271
|
-
async [S(
|
|
2265
|
+
async [S(508)](t) {
|
|
2272
2266
|
const e = S;
|
|
2273
|
-
if (!t?.[e(
|
|
2274
|
-
const i = new
|
|
2275
|
-
if (t
|
|
2276
|
-
if (t[e(
|
|
2277
|
-
await this
|
|
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)]);
|
|
2278
2272
|
return;
|
|
2279
2273
|
}
|
|
2280
|
-
if (t
|
|
2281
|
-
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);
|
|
2282
2276
|
return;
|
|
2283
2277
|
}
|
|
2284
|
-
const n = t[e(
|
|
2285
|
-
t[e(
|
|
2286
|
-
const r = t?.[e(
|
|
2287
|
-
this[e(
|
|
2288
|
-
const
|
|
2289
|
-
|
|
2290
|
-
const y = t?.
|
|
2291
|
-
let
|
|
2292
|
-
if (
|
|
2293
|
-
const
|
|
2294
|
-
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;
|
|
2295
2289
|
}
|
|
2296
|
-
const
|
|
2297
|
-
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);
|
|
2298
2292
|
}
|
|
2299
|
-
async [S(
|
|
2293
|
+
async [S(532)](t, e, i) {
|
|
2300
2294
|
const n = S;
|
|
2301
|
-
if (!this[n(
|
|
2302
|
-
const r = e && typeof e === n(
|
|
2303
|
-
await this[n(
|
|
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 });
|
|
2304
2298
|
}
|
|
2305
|
-
[S(
|
|
2299
|
+
[S(423)](t) {
|
|
2306
2300
|
const e = S;
|
|
2307
|
-
return t[e(
|
|
2301
|
+
return t[e(557)](e(413)) > -1 ? "hls" : t[e(557)](e(569)) > -1 ? e(537) : e(488);
|
|
2308
2302
|
}
|
|
2309
|
-
[S(
|
|
2303
|
+
[S(539)]() {
|
|
2310
2304
|
const t = S;
|
|
2311
|
-
return this.startTimeAt ? (/* @__PURE__ */ new Date())
|
|
2305
|
+
return this.startTimeAt ? (/* @__PURE__ */ new Date()).getTime() - this[t(566)] : 0;
|
|
2312
2306
|
}
|
|
2313
2307
|
}
|
|
2314
|
-
|
|
2315
|
-
|
|
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
|
+
}
|
|
2319
|
+
(function(a, t) {
|
|
2320
|
+
for (var e = O0, i = a(); ; )
|
|
2316
2321
|
try {
|
|
2317
|
-
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;
|
|
2318
2323
|
if (n === t) break;
|
|
2319
2324
|
i.push(i.shift());
|
|
2320
2325
|
} catch {
|
|
2321
2326
|
i.push(i.shift());
|
|
2322
2327
|
}
|
|
2323
|
-
})(
|
|
2324
|
-
function
|
|
2325
|
-
|
|
2326
|
-
|
|
2327
|
-
|
|
2328
|
-
}
|
|
2329
|
-
function Pe() {
|
|
2330
|
-
var x = ["2sgyrVz", "18165MDrYEw", "7741050HQFfKX", "609861NLzXiV", "378lBpfIQ", "5042536VLdoDQ", "8961897lzPOMs", "662332zUFKXA", "608909TwSfwq", "9vFexgr"];
|
|
2331
|
-
return Pe = function() {
|
|
2332
|
-
return x;
|
|
2333
|
-
}, Pe();
|
|
2328
|
+
})(Ne, 749526);
|
|
2329
|
+
function Ne() {
|
|
2330
|
+
var a = ["18426880eOXUIs", "8064680jWwaUH", "51gAktfm", "523822TSjpsf", "1915ckDudW", "924DgnPnF", "719724GxnpRI", "77WhIFTS", "1983879rfYQhh", "119142LKmZXD"];
|
|
2331
|
+
return Ne = function() {
|
|
2332
|
+
return a;
|
|
2333
|
+
}, Ne();
|
|
2334
2334
|
}
|
|
2335
2335
|
export {
|
|
2336
2336
|
P0 as default,
|
|
2337
|
-
|
|
2337
|
+
Je as getTranslator
|
|
2338
2338
|
};
|