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