kplayer-ts 1.0.1 → 1.0.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE +20 -0
- package/README.md +466 -138
- package/dist/kplayer-ts.cjs.js +397 -0
- package/dist/kplayer-ts.cjs.js.map +1 -0
- package/dist/kplayer-ts.d.ts +6 -0
- package/dist/{kplayer.es.js → kplayer-ts.es.js} +281 -268
- package/dist/kplayer-ts.es.js.map +1 -0
- package/dist/kplayer-ts.umd.js +397 -0
- package/dist/kplayer-ts.umd.js.map +1 -0
- package/dist/main.d.ts +1 -0
- package/dist/template/player.d.ts +21 -0
- package/dist/template/video.d.ts +12 -0
- package/dist/ts/ad.d.ts +39 -0
- package/dist/ts/bar.d.ts +10 -0
- package/dist/ts/bezel.d.ts +6 -0
- package/dist/ts/contextmenu.d.ts +12 -0
- package/dist/ts/controller.d.ts +38 -0
- package/dist/ts/events.d.ts +11 -0
- package/dist/ts/fullscreen.d.ts +15 -0
- package/dist/ts/hotkey.d.ts +11 -0
- package/dist/ts/i18n.d.ts +6 -0
- package/dist/ts/icons.d.ts +22 -0
- package/dist/ts/index.d.ts +3 -0
- package/dist/ts/info-panel.d.ts +16 -0
- package/dist/ts/options.d.ts +5 -0
- package/dist/ts/player.d.ts +107 -0
- package/dist/ts/setting.d.ts +14 -0
- package/dist/ts/subtitle.d.ts +22 -0
- package/dist/ts/subtitles.d.ts +19 -0
- package/dist/ts/template.d.ts +94 -0
- package/dist/ts/thumbnails.d.ts +18 -0
- package/dist/ts/timer.d.ts +22 -0
- package/dist/ts/types.d.ts +146 -0
- package/dist/ts/user.d.ts +21 -0
- package/dist/ts/utils.d.ts +21 -0
- package/package.json +10 -6
- package/dist/kplayer.cjs.js +0 -410
- package/dist/kplayer.cjs.js.map +0 -1
- package/dist/kplayer.css +0 -1
- package/dist/kplayer.es.js.map +0 -1
- package/dist/kplayer.umd.js +0 -410
- package/dist/kplayer.umd.js.map +0 -1
|
@@ -1,4 +1,5 @@
|
|
|
1
|
-
const C = /mobile|android|iphone|ipod|phone|ipad/i.test(
|
|
1
|
+
(function(){"use strict";try{if(typeof document<"u"){var e=document.createElement("style");e.appendChild(document.createTextNode(':root{--balloon-border-radius: 2px;--balloon-color: rgba(16, 16, 16, .95);--balloon-text-color: #fff;--balloon-font-size: 12px;--balloon-move: 4px}button[aria-label][data-balloon-pos]{overflow:visible}[aria-label][data-balloon-pos]{position:relative;cursor:pointer}[aria-label][data-balloon-pos]:after{opacity:0;pointer-events:none;transition:all .18s ease-out .18s;text-indent:0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Open Sans,Helvetica Neue,sans-serif;font-weight:400;font-style:normal;text-shadow:none;font-size:var(--balloon-font-size);background:var(--balloon-color);border-radius:2px;color:var(--balloon-text-color);border-radius:var(--balloon-border-radius);content:attr(aria-label);padding:.5em 1em;position:absolute;white-space:nowrap;z-index:10}[aria-label][data-balloon-pos]:before{width:0;height:0;border:5px solid transparent;border-top-color:var(--balloon-color);opacity:0;pointer-events:none;transition:all .18s ease-out .18s;content:"";position:absolute;z-index:10}[aria-label][data-balloon-pos]:hover:before,[aria-label][data-balloon-pos]:hover:after,[aria-label][data-balloon-pos][data-balloon-visible]:before,[aria-label][data-balloon-pos][data-balloon-visible]:after,[aria-label][data-balloon-pos]:not([data-balloon-nofocus]):focus:before,[aria-label][data-balloon-pos]:not([data-balloon-nofocus]):focus:after{opacity:1;pointer-events:none}[aria-label][data-balloon-pos].font-awesome:after{font-family:FontAwesome,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Open Sans,Helvetica Neue,sans-serif}[aria-label][data-balloon-pos][data-balloon-break]:after{white-space:pre}[aria-label][data-balloon-pos][data-balloon-break][data-balloon-length]:after{white-space:pre-line;word-break:break-word}[aria-label][data-balloon-pos][data-balloon-blunt]:before,[aria-label][data-balloon-pos][data-balloon-blunt]:after{transition:none}[aria-label][data-balloon-pos][data-balloon-pos=up]:hover:after,[aria-label][data-balloon-pos][data-balloon-pos=up][data-balloon-visible]:after,[aria-label][data-balloon-pos][data-balloon-pos=down]:hover:after,[aria-label][data-balloon-pos][data-balloon-pos=down][data-balloon-visible]:after{transform:translate(-50%)}[aria-label][data-balloon-pos][data-balloon-pos=up]:hover:before,[aria-label][data-balloon-pos][data-balloon-pos=up][data-balloon-visible]:before,[aria-label][data-balloon-pos][data-balloon-pos=down]:hover:before,[aria-label][data-balloon-pos][data-balloon-pos=down][data-balloon-visible]:before{transform:translate(-50%)}[aria-label][data-balloon-pos][data-balloon-pos*=-left]:after{left:0}[aria-label][data-balloon-pos][data-balloon-pos*=-left]:before{left:5px}[aria-label][data-balloon-pos][data-balloon-pos*=-right]:after{right:0}[aria-label][data-balloon-pos][data-balloon-pos*=-right]:before{right:5px}[aria-label][data-balloon-pos][data-balloon-po*=-left]:hover:after,[aria-label][data-balloon-pos][data-balloon-po*=-left][data-balloon-visible]:after,[aria-label][data-balloon-pos][data-balloon-pos*=-right]:hover:after,[aria-label][data-balloon-pos][data-balloon-pos*=-right][data-balloon-visible]:after{transform:translate(0)}[aria-label][data-balloon-pos][data-balloon-po*=-left]:hover:before,[aria-label][data-balloon-pos][data-balloon-po*=-left][data-balloon-visible]:before,[aria-label][data-balloon-pos][data-balloon-pos*=-right]:hover:before,[aria-label][data-balloon-pos][data-balloon-pos*=-right][data-balloon-visible]:before{transform:translate(0)}[aria-label][data-balloon-pos][data-balloon-pos^=up]:before,[aria-label][data-balloon-pos][data-balloon-pos^=up]:after{bottom:100%;transform-origin:top;transform:translateY(var(--balloon-move))}[aria-label][data-balloon-pos][data-balloon-pos^=up]:after{margin-bottom:10px}[aria-label][data-balloon-pos][data-balloon-pos=up]:before,[aria-label][data-balloon-pos][data-balloon-pos=up]:after{left:50%;transform:translate(-50%,var(--balloon-move))}[aria-label][data-balloon-pos][data-balloon-pos^=down]:before,[aria-label][data-balloon-pos][data-balloon-pos^=down]:after{top:100%;transform:translateY(calc(var(--balloon-move) * -1))}[aria-label][data-balloon-pos][data-balloon-pos^=down]:after{margin-top:10px}[aria-label][data-balloon-pos][data-balloon-pos^=down]:before{width:0;height:0;border:5px solid transparent;border-bottom-color:var(--balloon-color)}[aria-label][data-balloon-pos][data-balloon-pos=down]:after,[aria-label][data-balloon-pos][data-balloon-pos=down]:before{left:50%;transform:translate(-50%,calc(var(--balloon-move) * -1))}[aria-label][data-balloon-pos][data-balloon-pos=left]:hover:after,[aria-label][data-balloon-pos][data-balloon-pos=left][data-balloon-visible]:after,[aria-label][data-balloon-pos][data-balloon-pos=right]:hover:after,[aria-label][data-balloon-pos][data-balloon-pos=right][data-balloon-visible]:after{transform:translateY(-50%)}[aria-label][data-balloon-pos][data-balloon-pos=left]:hover:before,[aria-label][data-balloon-pos][data-balloon-pos=left][data-balloon-visible]:before,[aria-label][data-balloon-pos][data-balloon-pos=right]:hover:before,[aria-label][data-balloon-pos][data-balloon-pos=right][data-balloon-visible]:before{transform:translateY(-50%)}[aria-label][data-balloon-pos][data-balloon-pos=left]:after,[aria-label][data-balloon-pos][data-balloon-pos=left]:before{right:100%;top:50%;transform:translate(var(--balloon-move),-50%)}[aria-label][data-balloon-pos][data-balloon-pos=left]:after{margin-right:10px}[aria-label][data-balloon-pos][data-balloon-pos=left]:before{width:0;height:0;border:5px solid transparent;border-left-color:var(--balloon-color)}[aria-label][data-balloon-pos][data-balloon-pos=right]:after,[aria-label][data-balloon-pos][data-balloon-pos=right]:before{left:100%;top:50%;transform:translate(calc(var(--balloon-move) * -1),-50%)}[aria-label][data-balloon-pos][data-balloon-pos=right]:after{margin-left:10px}[aria-label][data-balloon-pos][data-balloon-pos=right]:before{width:0;height:0;border:5px solid transparent;border-right-color:var(--balloon-color)}[aria-label][data-balloon-pos][data-balloon-length]:after{white-space:normal}[aria-label][data-balloon-pos][data-balloon-length=small]:after{width:80px}[aria-label][data-balloon-pos][data-balloon-length=medium]:after{width:150px}[aria-label][data-balloon-pos][data-balloon-length=large]:after{width:260px}[aria-label][data-balloon-pos][data-balloon-length=xlarge]:after{width:380px}@media screen and (max-width: 768px){[aria-label][data-balloon-pos][data-balloon-length=xlarge]:after{width:90vw}}[aria-label][data-balloon-pos][data-balloon-length=fit]:after{width:100%}@font-face{font-family:Manrope;font-style:normal;font-weight:400;font-display:swap;src:url(https://fonts.gstatic.com/s/manrope/v20/xn7_YHE41ni1AdIRqAuZuw1Bx9mbZk79FO_F.ttf) format("truetype")}@font-face{font-family:Manrope;font-style:normal;font-weight:500;font-display:swap;src:url(https://fonts.gstatic.com/s/manrope/v20/xn7_YHE41ni1AdIRqAuZuw1Bx9mbZk7PFO_F.ttf) format("truetype")}@font-face{font-family:Manrope;font-style:normal;font-weight:700;font-display:swap;src:url(https://fonts.gstatic.com/s/manrope/v20/xn7_YHE41ni1AdIRqAuZuw1Bx9mbZk4aE-_F.ttf) format("truetype")}@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-weight:400;font-display:swap;src:url(https://fonts.gstatic.com/s/plusjakartasans/v12/LDIbaomQNQcsA88c7O9yZ4KMCoOg4IA6-91aHEjcWuA_qU7NSg.ttf) format("truetype")}@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-weight:500;font-display:swap;src:url(https://fonts.gstatic.com/s/plusjakartasans/v12/LDIbaomQNQcsA88c7O9yZ4KMCoOg4IA6-91aHEjcWuA_m07NSg.ttf) format("truetype")}@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-weight:700;font-display:swap;src:url(https://fonts.gstatic.com/s/plusjakartasans/v12/LDIbaomQNQcsA88c7O9yZ4KMCoOg4IA6-91aHEjcWuA_TknNSg.ttf) format("truetype")}@keyframes my-face{2%{transform:translateY(1.5px) rotate(1.5deg)}4%{transform:translateY(-1.5px) rotate(-.5deg)}6%{transform:translateY(1.5px) rotate(-1.5deg)}8%{transform:translateY(-1.5px) rotate(-1.5deg)}10%{transform:translateY(2.5px) rotate(1.5deg)}12%{transform:translateY(-.5px) rotate(1.5deg)}14%{transform:translateY(-1.5px) rotate(1.5deg)}16%{transform:translateY(-.5px) rotate(-1.5deg)}18%{transform:translateY(.5px) rotate(-1.5deg)}20%{transform:translateY(-1.5px) rotate(2.5deg)}22%{transform:translateY(.5px) rotate(-1.5deg)}24%{transform:translateY(1.5px) rotate(1.5deg)}26%{transform:translateY(.5px) rotate(.5deg)}28%{transform:translateY(.5px) rotate(1.5deg)}30%{transform:translateY(-.5px) rotate(2.5deg)}32%{transform:translateY(1.5px) rotate(-.5deg)}34%{transform:translateY(1.5px) rotate(-.5deg)}36%{transform:translateY(-1.5px) rotate(2.5deg)}38%{transform:translateY(1.5px) rotate(-1.5deg)}40%{transform:translateY(-.5px) rotate(2.5deg)}42%{transform:translateY(2.5px) rotate(-1.5deg)}44%{transform:translateY(1.5px) rotate(.5deg)}46%{transform:translateY(-1.5px) rotate(2.5deg)}48%{transform:translateY(-.5px) rotate(.5deg)}50%{transform:translateY(.5px) rotate(.5deg)}52%{transform:translateY(2.5px) rotate(2.5deg)}54%{transform:translateY(-1.5px) rotate(1.5deg)}56%{transform:translateY(2.5px) rotate(2.5deg)}58%{transform:translateY(.5px) rotate(2.5deg)}60%{transform:translateY(2.5px) rotate(2.5deg)}62%{transform:translateY(-.5px) rotate(2.5deg)}64%{transform:translateY(-.5px) rotate(1.5deg)}66%{transform:translateY(1.5px) rotate(-.5deg)}68%{transform:translateY(-1.5px) rotate(-.5deg)}70%{transform:translateY(1.5px) rotate(.5deg)}72%{transform:translateY(2.5px) rotate(1.5deg)}74%{transform:translateY(-.5px) rotate(.5deg)}76%{transform:translateY(-.5px) rotate(2.5deg)}78%{transform:translateY(-.5px) rotate(1.5deg)}80%{transform:translateY(1.5px) rotate(1.5deg)}82%{transform:translateY(-.5px) rotate(.5deg)}84%{transform:translateY(1.5px) rotate(2.5deg)}86%{transform:translateY(-1.5px) rotate(-1.5deg)}88%{transform:translateY(-.5px) rotate(2.5deg)}90%{transform:translateY(2.5px) rotate(-.5deg)}92%{transform:translateY(.5px) rotate(-.5deg)}94%{transform:translateY(2.5px) rotate(.5deg)}96%{transform:translateY(-.5px) rotate(1.5deg)}98%{transform:translateY(-1.5px) rotate(-.5deg)}0%,to{transform:translate(0) rotate(0)}}.kplayer{position:relative;overflow:hidden;-webkit-user-select:none;user-select:none;line-height:1;font-family:Noto Sans,sans-serif}.kplayer *{box-sizing:content-box}.kplayer svg{width:100%;height:100%;fill:#fff}.kplayer svg path,.kplayer svg circle{fill:#fff}.kplayer svg[stroke] path,.kplayer svg[stroke] circle,.kplayer svg[stroke] line,.kplayer svg[stroke] polyline,.kplayer svg[stroke] rect{stroke:#fff;fill:none}.kplayer svg[stroke] path[fill=none][stroke=none]{stroke:none}.kplayer:-webkit-full-screen{width:100%;height:100%;background:#000;position:fixed;z-index:100000;left:0;top:0;margin:0;padding:0;transform:translate(0)}.kplayer.kplayer-no-awaken .kplayer-controller .kplayer-icons .kplayer-setting .kplayer-setting-box .kplayer-setting-showdan,.kplayer.kplayer-no-awaken .kplayer-controller .kplayer-icons .kplayer-setting .kplayer-setting-box .kplayer-setting-awaken,.kplayer.kplayer-no-awaken .kplayer-controller .kplayer-icons .kplayer-setting .kplayer-setting-box .kplayer-setting-danunlimit,.kplayer.kplayer-no-awaken .kplayer-awaken,.kplayer.kplayer-live .kplayer-time,.kplayer.kplayer-live .kplayer-bar-wrap,.kplayer.kplayer-live .kplayer-setting-speed,.kplayer.kplayer-live .kplayer-setting-loop,.kplayer.kplayer-live.kplayer-no-awaken .kplayer-setting{display:none}.kplayer.kplayer-arrow .kplayer-awaken{font-size:18px}.kplayer.kplayer-arrow .kplayer-icon{margin:0 -3px}.kplayer.kplayer-playing .kplayer-awaken .kplayer-awaken-move{animation-play-state:running}.kplayer.kplayer-loading .kplayer-bezel .diplayer-loading-icon{display:block}.kplayer.kplayer-loading .kplayer-awaken,.kplayer.kplayer-paused .kplayer-awaken,.kplayer.kplayer-loading .kplayer-awaken-move,.kplayer.kplayer-paused .kplayer-awaken-move{animation-play-state:paused}.kplayer.kplayer-hide-controller{cursor:none}.kplayer.kplayer-hide-controller .kplayer-controller-mask,.kplayer.kplayer-hide-controller .kplayer-controller{opacity:0;transform:translateY(100%)}.kplayer.kplayer-hide-controller .kplayer-title-bar{opacity:0;visibility:hidden}.kplayer.kplayer-hide-controller .kplayer-mobile-controls{opacity:0;visibility:hidden;pointer-events:none}.kplayer.kplayer-show-controller .kplayer-controller-mask,.kplayer.kplayer-show-controller .kplayer-controller{opacity:1}.kplayer.kplayer-fulled{position:fixed;z-index:100000;left:0;top:0;width:100%!important;height:100%!important}.kplayer.kplayer-mobile .kplayer-icons-center{display:none!important}.kplayer.kplayer-mobile .kplayer-controller .kplayer-icons .kplayer-volume,.kplayer.kplayer-mobile .kplayer-controller .kplayer-icons .kplayer-camera-icon,.kplayer.kplayer-mobile .kplayer-controller .kplayer-icons .kplayer-airplay-icon,.kplayer.kplayer-mobile .kplayer-controller .kplayer-icons .kplayer-chromecast-icon,.kplayer.kplayer-mobile .kplayer-controller .kplayer-icons .kplayer-play-icon{display:none}.kplayer.kplayer-mobile .kplayer-controller .kplayer-icons .kplayer-full-in-icon,.kplayer.kplayer-mobile .kplayer-controller .kplayer-icons .kplayer-full-icon{display:inline-block}.kplayer.kplayer-mobile .kplayer-title-bar{top:8px;right:8px;left:44px;max-width:none}.kplayer.kplayer-mobile .kplayer-title-bar .kplayer-title-main{font-size:14px}.kplayer.kplayer-mobile .kplayer-title-bar .kplayer-title-desc{font-size:12px}.kplayer.kplayer-mobile .kplayer-bar-time,.kplayer.kplayer-mobile.kplayer-hide-controller .kplayer-mobile-controls{display:none}.kplayer.kplayer-mobile .kplayer-mobile-controls{display:flex}.kplayer .kplayer-mobile-controls{display:none;position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);align-items:center;gap:32px;z-index:1;transition:opacity .3s ease,visibility .3s ease}.kplayer .kplayer-mobile-controls button{background:transparent;border:none;outline:none;cursor:pointer;padding:0;opacity:.9}.kplayer .kplayer-mobile-controls button svg{width:36px;height:36px;display:block;fill:#fff;stroke:#fff}.kplayer .kplayer-mobile-controls button svg path{fill:#fff}.kplayer .kplayer-mobile-controls .kplayer-mobile-play-btn{width:52px;height:52px;background:#0006;border-radius:50%;display:flex;align-items:center;justify-content:center}.kplayer .kplayer-mobile-controls .kplayer-mobile-play-btn svg{width:28px;height:28px}.kplayer .kplayer-mobile-play{display:none!important}.kplayer-web-fullscreen-fix{position:fixed;top:0;left:0;margin:0;padding:0}.kplayer-ad-playing .kplayer-controller{opacity:0!important;pointer-events:none!important;visibility:hidden!important}.kplayer-ad-playing .kplayer-controller-mask{opacity:0!important;pointer-events:none!important}.kplayer-ad-playing .kplayer-title-bar,.kplayer-ad-playing .kplayer-back{opacity:0!important;visibility:hidden!important;pointer-events:none!important}[data-balloon]:before{display:none}[data-balloon]:after{padding:.3em .7em;background:#111111b3}[data-balloon][data-balloon-pos=up]:after{margin-bottom:0}.kplayer-bezel{position:absolute;left:0;right:0;top:0;bottom:0;font-size:22px;color:#fff;pointer-events:none}.kplayer-bezel .kplayer-bezel-icon{position:absolute;top:50%;left:50%;margin:-26px 0 0 -26px;height:52px;width:52px;padding:12px;box-sizing:border-box;background:#00000080;border-radius:50%;opacity:0;pointer-events:none}.kplayer-bezel .kplayer-bezel-icon.kplayer-bezel-transition{animation:bezel-hide .5s linear}@keyframes bezel-hide{0%{opacity:1;transform:scale(1)}to{opacity:0;transform:scale(2)}}.kplayer-bezel .kplayer-danloading{position:absolute;top:50%;margin-top:-7px;width:100%;text-align:center;font-size:14px;line-height:14px;animation:my-face 5s infinite ease-in-out}.kplayer-bezel .diplayer-loading-icon{display:none;position:absolute;top:50%;left:50%;margin:-18px 0 0 -18px;height:36px;width:36px;pointer-events:none}.kplayer-bezel .diplayer-loading-icon .diplayer-loading-hide{display:none}.kplayer-bezel .diplayer-loading-icon .diplayer-loading-dot{animation:diplayer-loading-dot-fade .8s ease infinite;opacity:0;transform-origin:4px 4px}.kplayer-bezel .diplayer-loading-icon .diplayer-loading-dot.diplayer-loading-dot-1{animation-delay:.1s}.kplayer-bezel .diplayer-loading-icon .diplayer-loading-dot.diplayer-loading-dot-2{animation-delay:.2s}.kplayer-bezel .diplayer-loading-icon .diplayer-loading-dot.diplayer-loading-dot-3{animation-delay:.3s}.kplayer-bezel .diplayer-loading-icon .diplayer-loading-dot.diplayer-loading-dot-4{animation-delay:.4s}.kplayer-bezel .diplayer-loading-icon .diplayer-loading-dot.diplayer-loading-dot-5{animation-delay:.5s}.kplayer-bezel .diplayer-loading-icon .diplayer-loading-dot.diplayer-loading-dot-6{animation-delay:.6s}.kplayer-bezel .diplayer-loading-icon .diplayer-loading-dot.diplayer-loading-dot-7{animation-delay:.7s}@keyframes diplayer-loading-dot-fade{0%{opacity:.7;transform:scale(1.2)}50%{opacity:.25;transform:scale(.9)}to{opacity:.25;transform:scale(.85)}}.kplayer-controller-mask{background:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAADGCAYAAAAT+OqFAAAAdklEQVQoz42QQQ7AIAgEF/T/D+kbq/RWAlnQyyazA4aoAB4FsBSA/bFjuF1EOL7VbrIrBuusmrt4ZZORfb6ehbWdnRHEIiITaEUKa5EJqUakRSaEYBJSCY2dEstQY7AuxahwXFrvZmWl2rh4JZ07z9dLtesfNj5q0FU3A5ObbwAAAABJRU5ErkJggg==) repeat-x bottom;height:98px;width:100%;position:absolute;bottom:0;transition:all .15s ease}.kplayer-back{position:absolute;top:10px;left:15px;height:30px;width:30px;z-index:90;cursor:pointer;display:flex;align-items:center;justify-content:center;opacity:1;visibility:visible;pointer-events:all}.kplayer-back .kplayer-title-back-btn{width:30px;height:30px;padding:0;display:flex;align-items:center;justify-content:center;border:none;background:transparent;outline:none;cursor:pointer;opacity:1;transition:opacity .15s ease}.kplayer-back .kplayer-title-back-btn:hover{opacity:1}.kplayer-back .kplayer-title-back-btn svg{width:22px!important;height:22px!important;display:block;fill:#fff}.kplayer-back .kplayer-title-back-btn svg path{fill:#fff}@media (max-width: 768px){.kplayer-back{top:8px;left:10px;width:24px;height:24px}.kplayer-back .kplayer-title-back-btn{width:24px;height:24px}.kplayer-back .kplayer-title-back-btn svg{width:22px!important;height:22px!important}}.kplayer-title-wrap{position:absolute;top:10px;left:15px;right:5px;z-index:90}.kplayer-hide-controller .kplayer-title-wrap,.kplayer-hide-controller .kplayer-title-bar,.kplayer-hide-controller .kplayer-back{opacity:0;visibility:hidden;pointer-events:none}.kplayer-title-main{font-weight:800}.kplayer-title-bar{position:absolute;top:10px;right:15px;left:auto;z-index:90;min-height:30px;display:inline-flex;flex-direction:column;align-items:flex-end;justify-content:flex-start;text-align:right;opacity:1;visibility:visible;pointer-events:none;max-width:60%}.kplayer-title-bar .kplayer-title-info{display:flex;flex-direction:column;align-items:flex-end;gap:4px}.kplayer-title-bar .kplayer-title-main{display:block;font-size:22px;font-weight:700;color:#fff;line-height:1.2;text-align:right;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;letter-spacing:-.01em;margin:0}.kplayer-title-bar .kplayer-title-desc{display:block;font-size:15px;font-weight:400;color:#fffc;line-height:1.3;text-align:right;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}@media (max-width: 1400px){.kplayer-title-bar{top:10px;right:10px}.kplayer-title-bar .kplayer-title-main{font-size:20px}.kplayer-title-bar .kplayer-title-desc{font-size:14px}}@media (max-width: 768px){.kplayer-title-bar .kplayer-title-main{font-size:18px}.kplayer-title-bar .kplayer-title-desc{font-size:13px}}@media (max-width: 480px){.kplayer-title-bar .kplayer-title-main{font-size:13px}.kplayer-title-bar .kplayer-title-desc{font-size:11px}.kplayer-title-bar .kplayer-title-back-btn{width:30px;height:30px}.kplayer-title-bar .kplayer-title-back-btn svg{width:15px;height:15px}}.kplayer-title-bar .kplayer-title-info{min-height:30px;justify-content:center}.kplayer.kplayer-mobile .kplayer-back{top:8px;left:10px;width:24px;height:24px;display:flex;align-items:center;justify-content:center}.kplayer.kplayer-mobile .kplayer-back .kplayer-title-back-btn{width:24px;height:24px;display:flex;align-items:center;justify-content:center}.kplayer.kplayer-mobile .kplayer-back .kplayer-title-back-btn svg{width:20px!important;height:20px!important}.kplayer.kplayer-mobile .kplayer-title-bar{top:8px;right:8px;left:44px;max-width:none;pointer-events:none}.kplayer.kplayer-mobile .kplayer-title-bar .kplayer-title-info{width:100%;gap:2px}.kplayer.kplayer-mobile .kplayer-title-bar .kplayer-title-main{font-size:13px;line-height:1.2;white-space:normal;overflow:hidden;display:-webkit-box;-webkit-line-clamp:1;-webkit-box-orient:vertical}.kplayer.kplayer-mobile .kplayer-title-bar .kplayer-title-desc{font-size:11px;line-height:1.2;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.kplayer-controller{position:absolute;bottom:0;left:0;right:0;height:41px;padding:0 20px;-webkit-user-select:none;user-select:none;transition:all .1s ease}.kplayer-controller .kplayer-bar-wrap{padding:5px 0;cursor:pointer;position:absolute;bottom:33px;width:calc(100% - 40px);height:4px}.kplayer-controller .kplayer-bar-wrap:hover .kplayer-bar .kplayer-played .kplayer-thumb{transform:scale(1)}.kplayer-controller .kplayer-bar-wrap:hover .kplayer-highlight,.kplayer-controller .kplayer-bar-wrap:hover .kplayer-ad-marker{display:block;width:8px;transform:translate(-4px);top:4px;height:40%}.kplayer-controller .kplayer-bar-wrap .kplayer-ad-marker{z-index:12;position:absolute;top:5px;width:6px;height:30%;border-radius:6px;background-color:gold;text-align:center;transform:translate(-3px);transition:all .2s ease-in-out}.kplayer-controller .kplayer-bar-wrap .kplayer-ad-marker:hover .kplayer-ad-marker-text{display:block}.kplayer-controller .kplayer-bar-wrap .kplayer-ad-marker:hover~.kplayer-bar-preview{opacity:0}.kplayer-controller .kplayer-bar-wrap .kplayer-ad-marker:hover~.kplayer-bar-time{opacity:0}.kplayer-controller .kplayer-bar-wrap .kplayer-ad-marker .kplayer-ad-marker-text{display:none;position:absolute;left:50%;top:-24px;padding:5px 8px;background-color:#0000009e;color:#fff;border-radius:4px;font-size:12px;white-space:nowrap;transform:translate(-50%)}.kplayer-controller .kplayer-bar-wrap .kplayer-highlight{z-index:12;position:absolute;top:5px;width:6px;height:30%;border-radius:6px;background-color:#fff;text-align:center;transform:translate(-3px);transition:all .2s ease-in-out}.kplayer-controller .kplayer-bar-wrap .kplayer-highlight:hover .kplayer-highlight-text{display:block}.kplayer-controller .kplayer-bar-wrap .kplayer-highlight:hover~.kplayer-bar-preview{opacity:0}.kplayer-controller .kplayer-bar-wrap .kplayer-highlight:hover~.kplayer-bar-time{opacity:0}.kplayer-controller .kplayer-bar-wrap .kplayer-highlight .kplayer-highlight-text{display:none;position:absolute;left:50%;top:-24px;padding:5px 8px;background-color:#0000009e;color:#fff;border-radius:4px;font-size:12px;white-space:nowrap;transform:translate(-50%)}.kplayer-controller .kplayer-bar-wrap .kplayer-bar-preview{position:absolute;background:#fff;pointer-events:none;display:none;background-size:16000px 100%}.kplayer-controller .kplayer-bar-wrap .kplayer-bar-preview-canvas{position:absolute;width:100%;height:100%;z-index:1;pointer-events:none}.kplayer-controller .kplayer-bar-wrap .kplayer-bar-time{position:absolute;left:0;top:-20px;border-radius:4px;padding:5px 7px;background-color:#0000009e;color:#fff;font-size:12px;text-align:center;opacity:1;transition:opacity .1s ease-in-out;word-wrap:normal;word-break:normal;z-index:2;pointer-events:none}.kplayer-controller .kplayer-bar-wrap .kplayer-bar-time.hidden{opacity:0}.kplayer-controller .kplayer-bar-wrap .kplayer-bar{position:relative;height:4px;width:100%;background:#fff3;cursor:pointer}.kplayer-controller .kplayer-bar-wrap .kplayer-bar .kplayer-loaded{position:absolute;left:0;top:0;bottom:0;background:#fff6;height:4px;transition:all .5s ease;will-change:width}.kplayer-controller .kplayer-bar-wrap .kplayer-bar .kplayer-played{position:absolute;left:0;top:0;bottom:0;height:4px;will-change:width}.kplayer-controller .kplayer-bar-wrap .kplayer-bar .kplayer-played .kplayer-thumb{position:absolute;top:0;right:5px;margin-top:-4px;margin-right:-10px;height:11px;width:11px;border-radius:50%;cursor:pointer;transition:all .3s ease-in-out;transform:scale(0)}.kplayer-controller .kplayer-icons{height:38px;position:absolute;bottom:0}.kplayer-controller .kplayer-icons.kplayer-icons-left .kplayer-icon{padding:7px}.kplayer-controller .kplayer-icons.kplayer-icons-right{right:20px}.kplayer-controller .kplayer-icons.kplayer-icons-right .kplayer-icon{padding:8px}.kplayer-controller .kplayer-icons.kplayer-icons-center{left:50%;transform:translate(-50%);display:inline-flex;align-items:center}.kplayer-controller .kplayer-icons.kplayer-icons-center .kplayer-icon{padding:8px}.kplayer-controller .kplayer-icons .kplayer-time,.kplayer-controller .kplayer-icons .kplayer-live-badge{line-height:38px;color:#eee;text-shadow:0 0 2px rgba(0,0,0,.5);vertical-align:middle;font-size:13px;cursor:default}.kplayer-controller .kplayer-icons .kplayer-live-dot{display:inline-block;width:6px;height:6px;vertical-align:4%;margin-right:5px;content:"";border-radius:6px}.kplayer-controller .kplayer-icons .kplayer-icon{width:40px;height:100%;border:none;background-color:transparent;outline:none;cursor:pointer;vertical-align:middle;box-sizing:border-box;display:inline-block}.kplayer-controller .kplayer-icons .kplayer-icon .kplayer-icon-content{color:#fff;transition:all .2s ease-in-out;opacity:.8}.kplayer-controller .kplayer-icons .kplayer-icon:hover .kplayer-icon-content{opacity:1}.kplayer-controller .kplayer-icons .kplayer-icon.kplayer-quality-icon{color:#fff;width:auto;line-height:22px;font-size:14px}.kplayer-controller .kplayer-icons .kplayer-icon.kplayer-setting-icon{padding-top:8.5px}.kplayer-controller .kplayer-icons .kplayer-icon.kplayer-volume-icon{width:43px}.kplayer-controller .kplayer-icons .kplayer-icon.kplayer-full-in-icon,.kplayer-controller .kplayer-icons .kplayer-icon.kplayer-full-icon{display:inline-block}.kplayer-controller .kplayer-icons .kplayer-volume{position:relative;display:inline-block;cursor:pointer;height:100%}.kplayer-controller .kplayer-icons .kplayer-volume:hover .kplayer-volume-bar-wrap .kplayer-volume-bar,.kplayer-controller .kplayer-icons .kplayer-volume.kplayer-volume-active .kplayer-volume-bar-wrap .kplayer-volume-bar{width:45px}.kplayer-controller .kplayer-icons .kplayer-volume:hover .kplayer-volume-bar-wrap .kplayer-volume-bar .kplayer-volume-bar-inner .kplayer-thumb,.kplayer-controller .kplayer-icons .kplayer-volume.kplayer-volume-active .kplayer-volume-bar-wrap .kplayer-volume-bar .kplayer-volume-bar-inner .kplayer-thumb{transform:scale(1)}.kplayer-controller .kplayer-icons .kplayer-volume .kplayer-volume-bar-wrap{display:inline-block;margin:0 10px 0 -5px;vertical-align:middle;height:100%}.kplayer-controller .kplayer-icons .kplayer-volume .kplayer-volume-bar-wrap .kplayer-volume-bar{position:relative;top:17px;width:0;height:3px;background:#fff3;transition:all .3s ease-in-out}.kplayer-controller .kplayer-icons .kplayer-volume .kplayer-volume-bar-wrap .kplayer-volume-bar .kplayer-volume-bar-inner{position:absolute;bottom:0;left:0;height:100%;transition:all .1s ease;will-change:width}.kplayer-controller .kplayer-icons .kplayer-volume .kplayer-volume-bar-wrap .kplayer-volume-bar .kplayer-volume-bar-inner .kplayer-thumb{position:absolute;top:0;right:5px;margin-top:-4px;margin-right:-10px;height:11px;width:11px;border-radius:50%;cursor:pointer;transition:all .3s ease-in-out;transform:scale(0)}.kplayer-controller .kplayer-icons .kplayer-subtitle-btn,.kplayer-controller .kplayer-icons .kplayer-subtitles{display:inline-block;height:100%}.kplayer-controller .kplayer-icons .kplayer-subtitles .kplayer-subtitles-box{position:absolute;right:0;bottom:50px;transform:scale(0);width:fit-content;max-width:240px;min-width:120px;border-radius:8px;background:#16161af5;border:.5px solid rgba(255,255,255,.1);padding:4px 0;transition:none;overflow:auto;z-index:2}.kplayer-controller .kplayer-icons .kplayer-subtitles .kplayer-subtitles-box.kplayer-subtitles-panel{display:block}.kplayer-controller .kplayer-icons .kplayer-subtitles .kplayer-subtitles-box.kplayer-subtitles-box-open{transform:scale(1)}.kplayer-controller .kplayer-icons .kplayer-subtitles .kplayer-subtitles-item{display:flex;align-items:center;justify-content:space-between;height:36px;padding:0 12px;box-sizing:border-box;cursor:pointer;position:relative;transition:background .12s}.kplayer-controller .kplayer-icons .kplayer-subtitles .kplayer-subtitles-item:hover{background-color:#ffffff12}.kplayer-controller .kplayer-icons .kplayer-subtitles .kplayer-subtitles-item .kplayer-label{font-size:13px;color:#ffffffbf;white-space:nowrap}.kplayer-controller .kplayer-icons .kplayer-subtitles .kplayer-subtitles-item.kplayer-selected .kplayer-label{color:#fff}.kplayer-controller .kplayer-icons .kplayer-subtitles .kplayer-subtitles-item.kplayer-selected .kplayer-check-icon{opacity:1}.kplayer-controller .kplayer-icons .kplayer-setting{display:inline-block;height:100%;position:relative;z-index:10000}.kplayer-controller .kplayer-icons .kplayer-setting .kplayer-setting-box{position:absolute;right:0;bottom:50px;transform-origin:bottom right;transform:scale(0);width:220px;border-radius:2px;background:#16161af5;padding:10px 0;transition:none;overflow:hidden;z-index:9999;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px)}.kplayer-controller .kplayer-icons .kplayer-setting .kplayer-setting-box>div{display:none}.kplayer-controller .kplayer-icons .kplayer-setting .kplayer-setting-box>div.kplayer-setting-origin-panel{display:block}.kplayer-controller .kplayer-icons .kplayer-setting .kplayer-setting-box.kplayer-setting-box-open{transform:scale(1)}.kplayer-controller .kplayer-icons .kplayer-setting .kplayer-setting-box.kplayer-setting-box-narrow{width:220px}.kplayer-controller .kplayer-icons .kplayer-setting .kplayer-setting-box.kplayer-setting-box-speed .kplayer-setting-origin-panel{display:none}.kplayer-controller .kplayer-icons .kplayer-setting .kplayer-setting-box.kplayer-setting-box-speed .kplayer-setting-speed-panel{display:block}.kplayer-controller .kplayer-icons .kplayer-setting .kplayer-setting-box.kplayer-setting-box-speed .kplayer-setting-subtitle-panel,.kplayer-controller .kplayer-icons .kplayer-setting .kplayer-setting-box.kplayer-setting-box-speed .kplayer-setting-quality-panel,.kplayer-controller .kplayer-icons .kplayer-setting .kplayer-setting-box.kplayer-setting-box-subtitle .kplayer-setting-origin-panel,.kplayer-controller .kplayer-icons .kplayer-setting .kplayer-setting-box.kplayer-setting-box-subtitle .kplayer-setting-speed-panel,.kplayer-controller .kplayer-icons .kplayer-setting .kplayer-setting-box.kplayer-setting-box-subtitle .kplayer-setting-quality-panel{display:none}.kplayer-controller .kplayer-icons .kplayer-setting .kplayer-setting-box.kplayer-setting-box-subtitle .kplayer-setting-subtitle-panel{display:block}.kplayer-controller .kplayer-icons .kplayer-setting .kplayer-setting-box.kplayer-setting-box-quality .kplayer-setting-origin-panel,.kplayer-controller .kplayer-icons .kplayer-setting .kplayer-setting-box.kplayer-setting-box-quality .kplayer-setting-speed-panel,.kplayer-controller .kplayer-icons .kplayer-setting .kplayer-setting-box.kplayer-setting-box-quality .kplayer-setting-subtitle-panel{display:none}.kplayer-controller .kplayer-icons .kplayer-setting .kplayer-setting-box.kplayer-setting-box-quality .kplayer-setting-quality-panel{display:block}.kplayer-controller .kplayer-icons .kplayer-setting .kplayer-setting-panel-back{display:flex;align-items:center;gap:8px;padding:0 12px;height:38px;min-height:38px;cursor:pointer;border-bottom:.5px solid rgba(255,255,255,.08);margin-bottom:3px;box-sizing:border-box;transition:background .12s}.kplayer-controller .kplayer-icons .kplayer-setting .kplayer-setting-panel-back:hover{background:#ffffff12}.kplayer-controller .kplayer-icons .kplayer-setting .kplayer-setting-panel-back .kplayer-setting-back-icon{width:16px;height:16px;display:inline-flex;align-items:center;justify-content:center;opacity:1;flex-shrink:0}.kplayer-controller .kplayer-icons .kplayer-setting .kplayer-setting-panel-back .kplayer-setting-back-icon svg{width:14px;height:14px;fill:#fff}.kplayer-controller .kplayer-icons .kplayer-setting .kplayer-setting-panel-back .kplayer-label{font-size:12px;color:#fff;font-weight:400}.kplayer-controller .kplayer-icons .kplayer-setting .kplayer-setting-item{display:flex;align-items:center;justify-content:space-between;height:38px;min-height:38px;padding:0 12px;box-sizing:border-box;cursor:pointer;position:relative;transition:background .12s}.kplayer-controller .kplayer-icons .kplayer-setting .kplayer-setting-item:hover{background-color:#ffffff12}.kplayer-controller .kplayer-icons .kplayer-setting .kplayer-setting-item:active{background-color:#ffffff1f}.kplayer-controller .kplayer-icons .kplayer-setting .kplayer-setting-action{display:flex;align-items:center;justify-content:space-between;height:38px;min-height:38px;padding:0 12px;box-sizing:border-box;cursor:pointer;transition:background .12s}.kplayer-controller .kplayer-icons .kplayer-setting .kplayer-setting-action:hover{background-color:#ffffff12}.kplayer-controller .kplayer-icons .kplayer-setting .kplayer-setting-action:active{background-color:#ffffff1f}.kplayer-controller .kplayer-icons .kplayer-setting .kplayer-setting-action-main{display:inline-flex;align-items:center;gap:9px}.kplayer-controller .kplayer-icons .kplayer-setting .kplayer-setting-action-icon{width:16px;height:16px;display:inline-flex;align-items:center;justify-content:center;opacity:1;flex-shrink:0}.kplayer-controller .kplayer-icons .kplayer-setting .kplayer-setting-action-icon svg{width:15px;height:15px;fill:#fff}.kplayer-controller .kplayer-icons .kplayer-setting .kplayer-setting-action-btn{display:inline-flex;align-items:center;justify-content:center;width:22px;height:22px;opacity:.7;transition:opacity .15s}.kplayer-controller .kplayer-icons .kplayer-setting .kplayer-setting-action-btn:hover{opacity:1}.kplayer-controller .kplayer-icons .kplayer-setting .kplayer-setting-action-btn svg{width:13px;height:13px;fill:#fff}.kplayer-controller .kplayer-icons .kplayer-setting .kplayer-label{font-size:13px;color:#fff;font-weight:400;display:inline-block;vertical-align:middle;white-space:nowrap}.kplayer-controller .kplayer-icons .kplayer-setting .kplayer-title{font-size:13px;padding:10px 0;color:#fff;font-weight:400;display:inline-block;vertical-align:middle;white-space:nowrap}.kplayer-controller .kplayer-icons .kplayer-setting .kplayer-setting-current-value{font-size:12px;color:#fff;margin-right:2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:80px}.kplayer-controller .kplayer-icons .kplayer-setting .kplayer-setting-item-right{display:inline-flex;align-items:center;gap:4px;flex-shrink:0}.kplayer-controller .kplayer-icons .kplayer-setting .kplayer-setting-arrow{width:14px;height:14px;display:inline-flex;align-items:center;justify-content:center;opacity:.35}.kplayer-controller .kplayer-icons .kplayer-setting .kplayer-setting-arrow svg{width:12px;height:12px;fill:#fff}.kplayer-controller .kplayer-icons .kplayer-setting .kplayer-setting-speed-badge{font-size:11px;color:#fff;background:#ffffff14;border-radius:4px;padding:2px 6px;font-weight:500;white-space:nowrap}.kplayer-controller .kplayer-icons .kplayer-setting .kplayer-setting-speed-item{display:flex;align-items:center;justify-content:space-between;height:36px;min-height:36px;padding:0 12px;box-sizing:border-box;cursor:pointer;transition:background .12s}.kplayer-controller .kplayer-icons .kplayer-setting .kplayer-setting-speed-item:hover{background-color:#ffffff12}.kplayer-controller .kplayer-icons .kplayer-setting .kplayer-setting-speed-item:active{background-color:#ffffff1f}.kplayer-controller .kplayer-icons .kplayer-setting .kplayer-setting-speed-item .kplayer-label,.kplayer-controller .kplayer-icons .kplayer-setting .kplayer-setting-speed-item.kplayer-selected .kplayer-label{color:#fff}.kplayer-controller .kplayer-icons .kplayer-setting .kplayer-setting-speed-item.kplayer-selected .kplayer-check-icon{opacity:1}.kplayer-controller .kplayer-icons .kplayer-setting .kplayer-setting-subtitle-toggle{display:flex;align-items:center;justify-content:space-between;height:38px;min-height:38px;padding:0 12px;box-sizing:border-box;cursor:pointer;transition:background .12s}.kplayer-controller .kplayer-icons .kplayer-setting .kplayer-setting-subtitle-toggle:hover{background-color:#ffffff12}.kplayer-controller .kplayer-icons .kplayer-setting .kplayer-toggle{width:32px;height:20px;text-align:center;font-size:0;vertical-align:middle;position:relative;flex-shrink:0}.kplayer-controller .kplayer-icons .kplayer-setting .kplayer-toggle input{max-height:0;max-width:0;display:none}.kplayer-controller .kplayer-icons .kplayer-setting .kplayer-toggle input+label{display:inline-block;position:relative;box-shadow:none;border:.5px solid rgba(255,255,255,.2);background:#ffffff1a;height:20px;width:32px;border-radius:10px;box-sizing:border-box;cursor:pointer;transition:background .2s ease-in-out,border-color .2s ease-in-out}.kplayer-controller .kplayer-icons .kplayer-setting .kplayer-toggle input+label:before{content:"";position:absolute;display:block;height:18px;width:18px;top:0;left:0;border-radius:15px;transition:.2s ease-in-out}.kplayer-controller .kplayer-icons .kplayer-setting .kplayer-toggle input+label:after{content:"";position:absolute;display:block;left:0;top:0;border-radius:15px;background:#ffffffe6;transition:.2s ease-in-out;box-shadow:0 1px 3px #0006;height:18px;width:18px}.kplayer-controller .kplayer-icons .kplayer-setting .kplayer-toggle input:checked+label{border-color:#ffffff80;background:#ffffff73}.kplayer-controller .kplayer-icons .kplayer-setting .kplayer-toggle input:checked+label:before{width:30px;background:transparent}.kplayer-controller .kplayer-icons .kplayer-setting .kplayer-toggle input:checked+label:after{left:12px}.kplayer-controller .kplayer-icons .kplayer-setting .kplayer-setting-awaken{padding:0 12px;height:38px;min-height:38px;display:flex;align-items:center;justify-content:space-between;cursor:pointer;transition:background .12s}.kplayer-controller .kplayer-icons .kplayer-setting .kplayer-setting-awaken:hover{background-color:#ffffff12}.kplayer-controller .kplayer-icons .kplayer-setting .kplayer-setting-awaken .kplayer-label{color:#fff}.kplayer-controller .kplayer-icons .kplayer-setting .kplayer-setting-awaken:hover .kplayer-label,.kplayer-controller .kplayer-icons .kplayer-setting .kplayer-setting-awaken.kplayer-setting-awaken-active .kplayer-label{display:none}.kplayer-controller .kplayer-icons .kplayer-setting .kplayer-setting-awaken:hover .kplayer-awaken-bar-wrap,.kplayer-controller .kplayer-icons .kplayer-setting .kplayer-setting-awaken.kplayer-setting-awaken-active .kplayer-awaken-bar-wrap{display:inline-flex}.kplayer-controller .kplayer-icons .kplayer-setting .kplayer-setting-awaken .kplayer-awaken-bar-wrap{flex:1;padding:0;box-sizing:border-box;display:none;align-items:center;height:100%;width:100%}.kplayer-controller .kplayer-icons .kplayer-setting .kplayer-setting-awaken .kplayer-awaken-bar-wrap .kplayer-awaken-bar{position:relative;width:100%;height:3px;background:#fff3;border-radius:2px;transition:all .3s ease-in-out}.kplayer-controller .kplayer-icons .kplayer-setting .kplayer-setting-awaken .kplayer-awaken-bar-wrap .kplayer-awaken-bar .kplayer-awaken-bar-inner{position:absolute;bottom:0;left:0;height:100%;border-radius:2px;transition:all .1s ease;background:#ffffffb3;will-change:width}.kplayer-controller .kplayer-icons .kplayer-setting .kplayer-setting-awaken .kplayer-awaken-bar-wrap .kplayer-awaken-bar .kplayer-awaken-bar-inner .kplayer-thumb{position:absolute;top:0;right:5px;margin-top:-4px;margin-right:-10px;height:11px;width:11px;border-radius:50%;cursor:pointer;transition:all .3s ease-in-out;background:#fff;box-shadow:0 1px 3px #0000004d}.kplayer-controller .kplayer-icons .kplayer-setting .kplayer-subtitles-inline,.kplayer-controller .kplayer-icons .kplayer-setting .kplayer-quality-inline{display:block;height:auto}.kplayer-controller .kplayer-icons .kplayer-setting .kplayer-subtitles-inline .kplayer-subtitles-box,.kplayer-controller .kplayer-icons .kplayer-setting .kplayer-quality-inline .kplayer-quality-list{position:static;transform:none;display:block;width:100%;max-width:none;min-width:0;background:transparent;border:none;padding:0;border-radius:0}.kplayer-controller .kplayer-icons .kplayer-setting .kplayer-subtitles-inline .kplayer-subtitles-item{display:flex;align-items:center;justify-content:space-between;height:36px;min-height:36px;padding:0 12px;cursor:pointer;transition:background .12s;box-sizing:border-box}.kplayer-controller .kplayer-icons .kplayer-setting .kplayer-subtitles-inline .kplayer-subtitles-item:hover{background-color:#ffffff12}.kplayer-controller .kplayer-icons .kplayer-setting .kplayer-subtitles-inline .kplayer-subtitles-item .kplayer-label{color:#fff;font-size:13px}.kplayer-controller .kplayer-icons .kplayer-setting .kplayer-subtitles-inline .kplayer-subtitles-item.kplayer-selected .kplayer-label{color:#fff}.kplayer-controller .kplayer-icons .kplayer-setting .kplayer-subtitles-inline .kplayer-subtitles-item.kplayer-selected .kplayer-check-icon{opacity:1}.kplayer-controller .kplayer-icons .kplayer-setting .kplayer-quality-inline .kplayer-quality-item{display:flex;align-items:center;justify-content:space-between;height:36px;min-height:36px;padding:0 12px;cursor:pointer;transition:background .12s;box-sizing:border-box;text-align:left;line-height:36px}.kplayer-controller .kplayer-icons .kplayer-setting .kplayer-quality-inline .kplayer-quality-item:hover{background-color:#ffffff12}.kplayer-controller .kplayer-icons .kplayer-setting .kplayer-quality-inline .kplayer-quality-item .kplayer-label{color:#fff;font-size:13px}.kplayer-controller .kplayer-icons .kplayer-setting .kplayer-quality-inline .kplayer-quality-item.kplayer-selected .kplayer-label{color:#fff}.kplayer-controller .kplayer-icons .kplayer-setting .kplayer-quality-inline .kplayer-quality-item.kplayer-selected .kplayer-check-icon{opacity:1}.kplayer-controller .kplayer-icons .kplayer-setting .kplayer-check-icon{width:14px;height:14px;display:inline-flex;align-items:center;justify-content:center;opacity:0;transition:opacity .15s ease;flex-shrink:0}.kplayer-controller .kplayer-icons .kplayer-setting .kplayer-check-icon svg{width:13px;height:13px;fill:none;stroke:#fff;stroke-width:2.5;stroke-linecap:round;stroke-linejoin:round}.kplayer-controller .kplayer-icons .kplayer-setting .kplayer-quality{position:relative;display:inline-block;height:100%;z-index:2}.kplayer-controller .kplayer-icons .kplayer-setting .kplayer-quality:hover .kplayer-quality-list,.kplayer-controller .kplayer-icons .kplayer-setting .kplayer-quality:hover .kplayer-quality-mask{display:block}.kplayer-controller .kplayer-icons .kplayer-setting .kplayer-quality .kplayer-quality-mask{display:none;position:absolute;bottom:38px;left:-18px;width:80px;padding-bottom:12px}.kplayer-controller .kplayer-icons .kplayer-setting .kplayer-quality .kplayer-quality-list{display:none;font-size:12px;width:100px;border-radius:8px;background:#16161af5;border:.5px solid rgba(255,255,255,.1);padding:4px 0;transition:all .2s ease-in-out;overflow:hidden;color:#fff;text-align:center}.kplayer-controller .kplayer-icons .kplayer-setting .kplayer-quality .kplayer-quality-item{height:30px;box-sizing:border-box;cursor:pointer;line-height:30px;padding:0 10px;font-size:13px;color:#ffffffbf;transition:background .12s}.kplayer-controller .kplayer-icons .kplayer-setting .kplayer-quality .kplayer-quality-item:hover{background-color:#ffffff12}.kplayer-controller .kplayer-icons .kplayer-setting .kplayer-quality .kplayer-quality-item.kplayer-selected{color:#fff}.kplayer-controller .kplayer-icons .kplayer-setting .kplayer-quality .kplayer-quality-item.kplayer-selected .kplayer-check-icon{opacity:1}.kplayer-controller .kplayer-icons .kplayer-label{color:#fff;font-size:13px;display:inline-block;vertical-align:middle;white-space:nowrap}.kplayer-mobile-play{z-index:1;display:none;width:50px;height:50px;border:none;background-color:transparent;outline:none;cursor:pointer;box-sizing:border-box;opacity:.8;position:absolute;left:50%;top:50%;transform:translate(-50%,-50%)}.kplayer-awaken{position:absolute;left:0;right:0;top:0;bottom:0;font-size:22px;color:#fff}.kplayer-awaken .kplayer-awaken-item{display:inline-block;pointer-events:none;-webkit-user-select:none;user-select:none;cursor:default;white-space:nowrap;text-shadow:.5px .5px .5px rgba(0,0,0,.5)}.kplayer-awaken .kplayer-awaken-item--demo{position:absolute;visibility:hidden}.kplayer-awaken .kplayer-awaken-right{position:absolute;right:0;transform:translate(100%)}.kplayer-awaken .kplayer-awaken-right.kplayer-awaken-move{will-change:transform;animation-name:awaken;animation-timing-function:linear;animation-play-state:paused}@keyframes awaken{0%{transform:translate(100%)}}.kplayer-awaken .kplayer-awaken-top,.kplayer-awaken .kplayer-awaken-bottom{position:absolute;width:100%;text-align:center;visibility:hidden}.kplayer-awaken .kplayer-awaken-top.kplayer-awaken-move,.kplayer-awaken .kplayer-awaken-bottom.kplayer-awaken-move{will-change:visibility;animation-name:awaken-center;animation-timing-function:linear;animation-play-state:paused}@keyframes awaken-center{0%{visibility:visible}to{visibility:visible}}.kplayer-logo{pointer-events:none;position:absolute;left:20px;top:60px;max-width:100px;max-height:50px}.kplayer-logo img{max-width:100%;max-height:100%;background:none}@media (max-width: 768px){.kplayer-logo{pointer-events:none;position:absolute;left:15px;top:30px;max-width:80px;max-height:50px}.kplayer-logo img{max-width:100%;max-height:100%;background:none}}.kplayer-menu{position:absolute;width:170px;border-radius:2px;background:#16161af5;padding:5px 0;overflow:hidden;z-index:3;display:none}.kplayer-menu.kplayer-menu-show{display:block}.kplayer-menu .kplayer-menu-item{height:30px;box-sizing:border-box;cursor:pointer}.kplayer-menu .kplayer-menu-item:hover{background-color:#ffffff1a}.kplayer-menu .kplayer-menu-item a{padding:0 10px;line-height:30px;color:#eee;font-size:13px;display:inline-block;vertical-align:middle;width:100%;box-sizing:border-box;white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.kplayer-menu .kplayer-menu-item a:hover{text-decoration:none}.kplayer-notice-list{position:absolute;bottom:60px;left:20px}.kplayer-notice-list .kplayer-notice{border-radius:2px;background:#16161af5;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);transition:all .3s ease-in-out;overflow:hidden;color:#ffffffe0;font-size:13px;font-weight:400;display:table;pointer-events:none;animation:showNotice .3s ease 1 forwards}.kplayer-notice-list .remove-notice{animation:removeNotice .3s ease 1 forwards}@keyframes showNotice{0%{padding:0;font-size:0;margin-top:0;opacity:0}to{padding:6px 14px;font-size:13px;margin-top:5px;opacity:1}}@keyframes removeNotice{0%{padding:6px 14px;font-size:13px;margin-top:5px;opacity:1}20%{font-size:11px;opacity:.5}21%{font-size:0;padding:6px 10px}to{padding:0;margin-top:0;font-size:0;opacity:0}}.kplayer-subtitle{position:absolute;bottom:40px;width:90%;left:5%;text-align:center;color:#fff;text-shadow:.5px .5px .5px rgba(0,0,0,.5);font-size:20px}.kplayer-subtitle.kplayer-subtitle-hide{display:none}.kplayer-mask{position:absolute;top:0;bottom:0;left:0;right:0;z-index:1;display:none}.kplayer-mask.kplayer-mask-show{display:block}.kplayer-video-wrap{position:relative;overflow:hidden;background:#000;font-size:0;width:100%;height:100%}.kplayer-video-wrap .kplayer-video{width:100%;height:100%;display:none}.kplayer-video-wrap .kplayer-video-current{display:block}.kplayer-video-wrap .kplayer-video-prepare{display:none}video::-webkit-media-text-track-display{display:none!important}.kplayer-info-panel{position:absolute;top:10px;left:10px;width:400px;background:#1c1c1ccc;padding:10px;color:#fff;font-size:12px;border-radius:2px}.kplayer-info-panel-hide{display:none}.kplayer-info-panel .kplayer-info-panel-close{cursor:pointer;position:absolute;right:10px;top:10px}.kplayer-info-panel .kplayer-info-panel-item>span{display:inline-block;vertical-align:middle;line-height:15px;white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.kplayer-info-panel .kplayer-info-panel-item-title{width:100px;text-align:right;margin-right:10px}.kplayer-info-panel .kplayer-info-panel-item-data{width:260px}.kplayer-skip-btn{position:absolute;bottom:60px;right:16px;z-index:2;display:flex;align-items:center;gap:6px;padding:6px 14px;border:none;border-radius:2px;background:#16161af5;color:#ffffffe0;font-size:13px;font-weight:400;cursor:pointer;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);-webkit-user-select:none;user-select:none;white-space:nowrap}.kplayer-skip-btn-text{pointer-events:none}.kplayer-hide-controller .kplayer-skip-btn{bottom:16px}')),document.head.appendChild(e)}}catch(a){console.error("vite-plugin-css-injected-by-js",a)}})();
|
|
2
|
+
const q = /mobile|android|iphone|ipod|phone|ipad/i.test(
|
|
2
3
|
window.navigator.userAgent
|
|
3
4
|
), u = {
|
|
4
5
|
/**
|
|
@@ -43,7 +44,7 @@ const C = /mobile|android|iphone|ipod|phone|ipad/i.test(
|
|
|
43
44
|
setScrollPosition({ left: n = 0, top: e = 0 }) {
|
|
44
45
|
this.isFirefox ? (document.documentElement.scrollLeft = n, document.documentElement.scrollTop = e) : window.scrollTo(n, e);
|
|
45
46
|
},
|
|
46
|
-
isMobile:
|
|
47
|
+
isMobile: q,
|
|
47
48
|
isFirefox: /firefox/i.test(window.navigator.userAgent),
|
|
48
49
|
isChrome: /chrome/i.test(window.navigator.userAgent),
|
|
49
50
|
isSafari: /safari/i.test(window.navigator.userAgent),
|
|
@@ -56,9 +57,9 @@ const C = /mobile|android|iphone|ipod|phone|ipad/i.test(
|
|
|
56
57
|
}
|
|
57
58
|
},
|
|
58
59
|
nameMap: {
|
|
59
|
-
dragStart:
|
|
60
|
-
dragMove:
|
|
61
|
-
dragEnd:
|
|
60
|
+
dragStart: q ? "touchstart" : "mousedown",
|
|
61
|
+
dragMove: q ? "touchmove" : "mousemove",
|
|
62
|
+
dragEnd: q ? "touchend" : "mouseup"
|
|
62
63
|
},
|
|
63
64
|
color2Number(n) {
|
|
64
65
|
return n[0] === "#" && (n = n.substr(1)), n.length === 3 && (n = `${n[0]}${n[0]}${n[1]}${n[1]}${n[2]}${n[2]}`), parseInt(n, 16) + 0 & 16777215;
|
|
@@ -454,15 +455,15 @@ const _ = {
|
|
|
454
455
|
}
|
|
455
456
|
}, D = `<svg xmlns="http://www.w3.org/2000/svg" version="1.1" viewBox="0 0 16 32">
|
|
456
457
|
<path d="M15.552 15.168q0.448 0.32 0.448 0.832 0 0.448-0.448 0.768l-13.696 8.512q-0.768 0.512-1.312 0.192t-0.544-1.28v-16.448q0-0.96 0.544-1.28t1.312 0.192z"></path>
|
|
457
|
-
</svg>`,
|
|
458
|
+
</svg>`, Q = `<svg xmlns="http://www.w3.org/2000/svg" version="1.1" viewBox="0 0 17 32">
|
|
458
459
|
<path d="M14.080 4.8q2.88 0 2.88 2.048v18.24q0 2.112-2.88 2.112t-2.88-2.112v-18.24q0-2.048 2.88-2.048zM2.88 4.8q2.88 0 2.88 2.048v18.24q0 2.112-2.88 2.112t-2.88-2.112v-18.24q0-2.048 2.88-2.048z"></path>
|
|
459
|
-
</svg>`,
|
|
460
|
+
</svg>`, K = `<svg xmlns="http://www.w3.org/2000/svg" version="1.1" viewBox="0 0 21 32">
|
|
460
461
|
<path d="M13.728 6.272v19.456q0 0.448-0.352 0.8t-0.8 0.32-0.8-0.32l-5.952-5.952h-4.672q-0.48 0-0.8-0.352t-0.352-0.8v-6.848q0-0.48 0.352-0.8t0.8-0.352h4.672l5.952-5.952q0.32-0.32 0.8-0.32t0.8 0.32 0.352 0.8zM20.576 16q0 1.344-0.768 2.528t-2.016 1.664q-0.16 0.096-0.448 0.096-0.448 0-0.8-0.32t-0.32-0.832q0-0.384 0.192-0.64t0.544-0.448 0.608-0.384 0.512-0.64 0.192-1.024-0.192-1.024-0.512-0.64-0.608-0.384-0.544-0.448-0.192-0.64q0-0.48 0.32-0.832t0.8-0.32q0.288 0 0.448 0.096 1.248 0.48 2.016 1.664t0.768 2.528zM25.152 16q0 2.72-1.536 5.056t-4 3.36q-0.256 0.096-0.448 0.096-0.48 0-0.832-0.352t-0.32-0.8q0-0.704 0.672-1.056 1.024-0.512 1.376-0.8 1.312-0.96 2.048-2.4t0.736-3.104-0.736-3.104-2.048-2.4q-0.352-0.288-1.376-0.8-0.672-0.352-0.672-1.056 0-0.448 0.32-0.8t0.8-0.352q0.224 0 0.48 0.096 2.496 1.056 4 3.36t1.536 5.056z"></path>
|
|
461
462
|
</svg>`, X = `<svg xmlns="http://www.w3.org/2000/svg" version="1.1" viewBox="0 0 21 32">
|
|
462
463
|
<path d="M13.728 6.272v19.456q0 0.448-0.352 0.8t-0.8 0.32-0.8-0.32l-5.952-5.952h-4.672q-0.48 0-0.8-0.352t-0.352-0.8v-6.848q0-0.48 0.352-0.8t0.8-0.352h4.672l5.952-5.952q0.32-0.32 0.8-0.32t0.8 0.32 0.352 0.8zM20.576 16q0 1.344-0.768 2.528t-2.016 1.664q-0.16 0.096-0.448 0.096-0.448 0-0.8-0.32t-0.32-0.832q0-0.384 0.192-0.64t0.544-0.448 0.608-0.384 0.512-0.64 0.192-1.024-0.192-1.024-0.512-0.64-0.608-0.384-0.544-0.448-0.192-0.64q0-0.48 0.32-0.832t0.8-0.32q0.288 0 0.448 0.096 1.248 0.48 2.016 1.664t0.768 2.528z"></path>
|
|
463
|
-
</svg>`,
|
|
464
|
+
</svg>`, Z = `<svg xmlns="http://www.w3.org/2000/svg" version="1.1" viewBox="0 0 21 32">
|
|
464
465
|
<path d="M13.728 6.272v19.456q0 0.448-0.352 0.8t-0.8 0.32-0.8-0.32l-5.952-5.952h-4.672q-0.48 0-0.8-0.352t-0.352-0.8v-6.848q0-0.48 0.352-0.8t0.8-0.352h4.672l5.952-5.952q0.32-0.32 0.8-0.32t0.8 0.32 0.352 0.8z"></path>
|
|
465
|
-
</svg>`,
|
|
466
|
+
</svg>`, Y = `<svg xmlns="http://www.w3.org/2000/svg" version="1.1" viewBox="0 0 32 33">
|
|
466
467
|
<path d="M6.667 28h-5.333c-0.8 0-1.333-0.533-1.333-1.333v-5.333c0-0.8 0.533-1.333 1.333-1.333s1.333 0.533 1.333 1.333v4h4c0.8 0 1.333 0.533 1.333 1.333s-0.533 1.333-1.333 1.333zM30.667 28h-5.333c-0.8 0-1.333-0.533-1.333-1.333s0.533-1.333 1.333-1.333h4v-4c0-0.8 0.533-1.333 1.333-1.333s1.333 0.533 1.333 1.333v5.333c0 0.8-0.533 1.333-1.333 1.333zM30.667 12c-0.8 0-1.333-0.533-1.333-1.333v-4h-4c-0.8 0-1.333-0.533-1.333-1.333s0.533-1.333 1.333-1.333h5.333c0.8 0 1.333 0.533 1.333 1.333v5.333c0 0.8-0.533 1.333-1.333 1.333zM1.333 12c-0.8 0-1.333-0.533-1.333-1.333v-5.333c0-0.8 0.533-1.333 1.333-1.333h5.333c0.8 0 1.333 0.533 1.333 1.333s-0.533 1.333-1.333 1.333h-4v4c0 0.8-0.533 1.333-1.333 1.333z"></path>
|
|
467
468
|
</svg>`, G = `<svg xmlns="http://www.w3.org/2000/svg" version="1.1" viewBox="0 0 32 33">
|
|
468
469
|
<path d="M24.965 24.38h-18.132c-1.366 0-2.478-1.113-2.478-2.478v-11.806c0-1.364 1.111-2.478 2.478-2.478h18.132c1.366 0 2.478 1.113 2.478 2.478v11.806c0 1.364-1.11 2.478-2.478 2.478zM6.833 10.097v11.806h18.134l-0.002-11.806h-18.132zM2.478 28.928h5.952c0.684 0 1.238-0.554 1.238-1.239 0-0.684-0.554-1.238-1.238-1.238h-5.952v-5.802c0-0.684-0.554-1.239-1.238-1.239s-1.239 0.556-1.239 1.239v5.802c0 1.365 1.111 2.478 2.478 2.478zM30.761 19.412c-0.684 0-1.238 0.554-1.238 1.238v5.801h-5.951c-0.686 0-1.239 0.554-1.239 1.238 0 0.686 0.554 1.239 1.239 1.239h5.951c1.366 0 2.478-1.111 2.478-2.478v-5.801c0-0.683-0.554-1.238-1.239-1.238zM0 5.55v5.802c0 0.683 0.554 1.238 1.238 1.238s1.238-0.555 1.238-1.238v-5.802h5.952c0.684 0 1.238-0.554 1.238-1.238s-0.554-1.238-1.238-1.238h-5.951c-1.366-0.001-2.478 1.111-2.478 2.476zM32 11.35v-5.801c0-1.365-1.11-2.478-2.478-2.478h-5.951c-0.686 0-1.239 0.554-1.239 1.238s0.554 1.238 1.239 1.238h5.951v5.801c0 0.683 0.554 1.237 1.238 1.237 0.686 0.002 1.239-0.553 1.239-1.236z"></path>
|
|
@@ -497,27 +498,13 @@ const _ = {
|
|
|
497
498
|
</svg>
|
|
498
499
|
</svg>`, ne = '<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="icon icon-tabler icons-tabler-outline icon-tabler-cast"><path stroke="none" d="M0 0h24v24H0z" fill="none"/><path d="M3 19l.01 0" /><path d="M7 19a4 4 0 0 0 -4 -4" /><path d="M11 19a8 8 0 0 0 -8 -8" /><path d="M15 19h3a3 3 0 0 0 3 -3v-8a3 3 0 0 0 -3 -3h-12a3 3 0 0 0 -2.8 2" /></svg>', le = `<svg version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px" viewBox="0 0 1000 1000" enable-background="new 0 0 1000 1000" xml:space="preserve">
|
|
499
500
|
<g><path d="M990,503.4c0,25.9-21,46.9-46.9,46.9H56.9c-25.9,0-46.9-21-46.9-46.9v-4.6c0-25.9,21-46.9,46.9-46.9h886.1c25.9,0,46.9,21,46.9,46.9V503.4z"></path><path d="M430.9,131.1c18.3,18.3,18.3,48.1,0,66.4L93.1,535.2c-18.3,18.3-48.1,18.3-66.4,0l-2.9-2.9C5.5,514,5.5,484.3,23.9,466l337.7-337.7c18.3-18.3,48.1-18.3,66.4,0L430.9,131.1z"></path><path d="M430.9,868.9c18.3-18.3,18.3-48.1,0-66.4L93.1,464.8c-18.3-18.3-48.1-18.3-66.4,0l-2.9,2.9C5.5,486,5.5,515.7,23.9,534l337.7,337.7c18.3,18.3,48.1,18.3,66.4,0L430.9,868.9z"></path></g>
|
|
500
|
-
</svg>`, re =
|
|
501
|
-
<g fill="currentColor" fill-rule="evenodd">
|
|
502
|
-
<path d="m 5.5924415,15.888 c 0.689576,-0.850221 1.934556,-0.988067 2.793425,-0.309293 0.858869,0.678775 1.01244,1.921914 0.344575,2.789293 -3.080792,3.874075 -4.749496,8.682314 -4.731,13.632 C 3.9968145,43.81419 13.325754,53.521229 25.13073,53.987735 36.935706,54.45424 47.001556,45.513639 47.931221,33.736084 48.860886,21.958529 40.322412,11.54939 28.590442,10.158 l 2.709,2.323 c 0.805609,0.726128 0.885668,1.962033 0.180472,2.786027 -0.705196,0.823994 -1.938636,0.935771 -2.780472,0.251973 l -7,-6 C 21.25581,9.139031 21.000457,8.5841111 21.000457,8 c 0,-0.5841111 0.255353,-1.1390314 0.698985,-1.519 l 7,-6 c 0.539853,-0.48659126 1.301183,-0.64202535 1.988568,-0.4059887 0.687386,0.2360366 1.192625,0.8263892 1.319668,1.5419814 C 32.134722,2.3325849 31.863571,3.0607745 31.299442,3.519 l -3.019,2.587 C 42.289945,7.3398222 52.778928,19.489857 51.954757,33.529417 51.130586,47.568977 39.292047,58.408309 25.234406,57.994492 11.176766,57.580675 -0.00366845,46.06373 -5.5845031e-4,32 -0.02194145,26.149702 1.9507985,20.466743 5.5924415,15.888 Z" fill-rule="nonzero"/>
|
|
503
|
-
<path d="m 18.518442,15.3 c -0.345217,0.403014 -0.836445,0.652314 -1.365537,0.693013 -0.529093,0.0407 -1.05267,-0.130538 -1.455463,-0.476013 l -7.0000005,-6 C 8.2538095,9.137031 7.9984565,8.5821111 7.9984565,7.998 c 0,-0.5841111 0.255353,-1.1390315 0.698985,-1.519 l 7.0000005,-6 c 0.539853,-0.48659126 1.301183,-0.64202535 1.988568,-0.4059887 0.687386,0.2360366 1.192625,0.8263892 1.319668,1.5419814 C 19.132722,2.3305849 18.861571,3.0587745 18.297442,3.517 l -5.225,4.483 5.227,4.481 c 0.838569,0.718149 0.936595,1.979957 0.219,2.819 z" fill-rule="nonzero"/>
|
|
504
|
-
<path d="m 15,40 c -1.104569,0 -2,0.895431 -2,2 0,1.104569 0.895431,2 2,2 h 6 c 1.104569,0 2,-0.895431 2,-2 0,-1.104569 -0.895431,-2 -2,-2 H 20 V 23 C 19.999864,22.262562 19.593937,21.58503 18.943766,21.237045 18.293595,20.88906 17.504684,20.92709 16.891,21.336 l -3,2 c -0.895079,0.599923 -1.153983,1.801111 -0.585512,2.716488 C 13.87396,26.967865 15.06543,27.268334 16,26.732 V 40 Z" fill-rule="nonzero"/>
|
|
505
|
-
<path d="m 31,21 c -2.761424,0 -5,2.238576 -5,5 v 13 c 0,2.761424 2.238576,5 5,5 h 3 c 2.761424,0 5,-2.238576 5,-5 V 26 c 0,-2.761424 -2.238576,-5 -5,-5 z m 4,5 v 13 c 0,0.552285 -0.447715,1 -1,1 h -3 c -0.552285,0 -1,-0.447715 -1,-1 V 26 c 0,-0.552285 0.447715,-1 1,-1 h 3 c 0.552285,0 1,0.447715 1,1 z" fill-rule="nonzero"/>
|
|
506
|
-
</g>
|
|
507
|
-
</svg>`, oe = `<svg height="64" viewBox="0 0 52 58" width="64" xmlns="http://www.w3.org/2000/svg">
|
|
508
|
-
<g fill="currentColor" fill-rule="evenodd">
|
|
509
|
-
<path d="M 46.407,15.888 C 45.717424,15.037779 44.472444,14.899933 43.613575,15.578707 42.754706,16.257482 42.601135,17.500621 43.269,18.368 46.349792,22.242075 48.018496,27.050314 48,32 48.002627,43.81419 38.673688,53.521229 26.868712,53.987735 15.063736,54.45424 4.9978851,45.513639 4.0682205,33.736084 3.1385559,21.958529 11.67703,11.54939 23.409,10.158 L 20.7,12.481 c -0.805609,0.726128 -0.885668,1.962033 -0.180472,2.786027 0.705196,0.823994 1.938636,0.935771 2.780472,0.251973 l 7,-6 C 30.743632,9.139031 30.998985,8.5841111 30.998985,8 30.998985,7.4158889 30.743632,6.8609686 30.3,6.481 l -7,-6 C 22.760147,-0.00559126 21.998817,-0.16102535 21.311432,0.0750113 20.624046,0.3110479 20.118807,0.9014005 19.991764,1.6169927 19.86472,2.3325849 20.135871,3.0607745 20.7,3.519 l 3.019,2.587 C 9.709497,7.3398222 -0.77948671,19.489857 0.0446845,33.529417 0.8688557,47.568977 12.707395,58.408309 26.765036,57.994492 40.822676,57.580675 52.00311,46.06373 52,32 52.021383,26.149702 50.048643,20.466743 46.407,15.888 Z" fill-rule="nonzero"/>
|
|
510
|
-
<path d="m 33.481,15.3 c 0.345217,0.403014 0.836445,0.652314 1.365537,0.693013 0.529093,0.0407 1.05267,-0.130538 1.455463,-0.476013 l 7,-6 c 0.443632,-0.379969 0.698985,-0.9348889 0.698985,-1.519 0,-0.5841111 -0.255353,-1.1390315 -0.698985,-1.519 l -7,-6 C 35.762147,-0.00759126 35.000817,-0.16302535 34.313432,0.0730113 33.626046,0.3090479 33.120807,0.8994005 32.993764,1.6149927 32.86672,2.3305849 33.137871,3.0587745 33.702,3.517 L 38.927,8 33.7,12.481 c -0.838569,0.718149 -0.936595,1.979957 -0.219,2.819 z" fill-rule="nonzero"/>
|
|
511
|
-
<path d="m 15,40 c -1.104569,0 -2,0.895431 -2,2 0,1.104569 0.895431,2 2,2 h 6 c 1.104569,0 2,-0.895431 2,-2 0,-1.104569 -0.895431,-2 -2,-2 H 20 V 23 C 19.999864,22.262562 19.593937,21.58503 18.943766,21.237045 18.293595,20.88906 17.504684,20.92709 16.891,21.336 l -3,2 c -0.895079,0.599923 -1.153983,1.801111 -0.585512,2.716488 C 13.87396,26.967865 15.06543,27.268334 16,26.732 V 40 Z" fill-rule="nonzero"/>
|
|
512
|
-
<path d="m 31,21 c -2.761424,0 -5,2.238576 -5,5 v 13 c 0,2.761424 2.238576,5 5,5 h 3 c 2.761424,0 5,-2.238576 5,-5 V 26 c 0,-2.761424 -2.238576,-5 -5,-5 z m 4,5 v 13 c 0,0.552285 -0.447715,1 -1,1 h -3 c -0.552285,0 -1,-0.447715 -1,-1 V 26 c 0,-0.552285 0.447715,-1 1,-1 h 3 c 0.552285,0 1,0.447715 1,1 z" fill-rule="nonzero"/>
|
|
513
|
-
</g>
|
|
514
|
-
</svg>`, ce = '<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="icon icon-tabler icons-tabler-outline icon-tabler-badge-hd"><path stroke="none" d="M0 0h24v24H0z" fill="none"/><path d="M3 7a2 2 0 0 1 2 -2h14a2 2 0 0 1 2 2v10a2 2 0 0 1 -2 2h-14a2 2 0 0 1 -2 -2v-10" /><path d="M14 9v6h1a2 2 0 0 0 2 -2v-2a2 2 0 0 0 -2 -2h-1" /><path d="M7 15v-6" /><path d="M10 15v-6" /><path d="M7 12h3" /></svg>', w = {
|
|
501
|
+
</svg>`, re = '<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 -960 960 960" fill="currentColor" class="w-6 md:w-8 lg:w-12"><path d="M360-522h-30q-10.4 0-17.2-7.12-6.8-7.11-6.8-18 0-10.88 7.08-17.38 7.09-6.5 17.92-6.5h55q11 0 17.5 6.5T410-547v212q0 10.83-7.12 17.92-7.11 7.08-18 7.08-10.88 0-17.88-7.08-7-7.09-7-17.92v-187Zm147 212q-18.7 0-31.35-12.65Q463-335.3 463-354v-173q0-18.7 12.65-31.35Q488.3-571 507-571h83q18.7 0 31.35 12.65Q634-545.7 634-527v173q0 18.7-12.65 31.35Q608.7-310 590-310h-83Zm6-50h71v-162h-71v162ZM480-80q-75 0-140.5-28T225-185q-49-49-77-114.5T120-440q0-12.75 8.68-21.38 8.67-8.62 21.5-8.62 12.82 0 21.32 8.62 8.5 8.63 8.5 21.38 0 125.36 87.32 212.68Q354.64-140 480-140q125.36 0 212.68-87.32Q780-314.64 780-440q0-125.36-85-212.68Q610-740 485-740h-22l52 52q9 9 9 21t-8.61 21q-9.39 9-21.39 9t-21-9L368-751q-9-9-9-21t9-21l106-106q8-8 20.5-8t20.85 8q7.65 8 7.65 20.5t-8 20.5l-58 58h23q75 0 140.5 28T735-695q49 49 77 114.5T840-440q0 75-28 140.5T735-185q-49 49-114.5 77T480-80Z"></path></svg>', oe = '<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 -960 960 960" fill="currentColor" class="w-6 md:w-8 lg:w-12"><path d="M480-80q-75 0-140.5-28T225-185q-49-49-77-114.5T120-440q0-75 28-140.5T225-695q49-49 114.5-77T480-800h23l-57-57q-8-8-8-20.5t7.65-20.5q8.35-8 20.35-8.5 12-.5 20 7.5l106 106q9 9 9 21t-9 21L487-646q-9 9-21 9t-21.39-9q-8.61-9-8.61-21t9-21l52-52h-22q-125 0-210 87.32T180-440q0 125.36 87.32 212.68Q354.64-140 480-140q125.36 0 212.68-87.32Q780-314.64 780-440q0-12.75 8.68-21.38 8.67-8.62 21.5-8.62 12.82 0 21.32 8.62 8.5 8.63 8.5 21.38 0 75-28 140.5T735-185q-49 49-114.5 77T480-80ZM360-522h-30q-10.4 0-17.2-7.12-6.8-7.11-6.8-18 0-10.88 7.08-17.38 7.09-6.5 17.92-6.5h55q11 0 17.5 6.5T410-547v212q0 10.83-7.12 17.92-7.11 7.08-18 7.08-10.88 0-17.88-7.08-7-7.09-7-17.92v-187Zm147 212q-18.7 0-31.35-12.65Q463-335.3 463-354v-173q0-18.7 12.65-31.35Q488.3-571 507-571h83q18.7 0 31.35 12.65Q634-545.7 634-527v173q0 18.7-12.65 31.35Q608.7-310 590-310h-83Zm6-50h71v-162h-71v162Z"></path></svg>', pe = '<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="icon icon-tabler icons-tabler-outline icon-tabler-badge-hd"><path stroke="none" d="M0 0h24v24H0z" fill="none"/><path d="M3 7a2 2 0 0 1 2 -2h14a2 2 0 0 1 2 2v10a2 2 0 0 1 -2 2h-14a2 2 0 0 1 -2 -2v-10" /><path d="M14 9v6h1a2 2 0 0 0 2 -2v-2a2 2 0 0 0 -2 -2h-1" /><path d="M7 15v-6" /><path d="M10 15v-6" /><path d="M7 12h3" /></svg>', w = {
|
|
515
502
|
play: D,
|
|
516
|
-
pause:
|
|
517
|
-
volumeUp:
|
|
503
|
+
pause: Q,
|
|
504
|
+
volumeUp: K,
|
|
518
505
|
volumeDown: X,
|
|
519
|
-
volumeOff:
|
|
520
|
-
full:
|
|
506
|
+
volumeOff: Z,
|
|
507
|
+
full: Y,
|
|
521
508
|
fullWeb: G,
|
|
522
509
|
setting: J,
|
|
523
510
|
right: ee,
|
|
@@ -529,7 +516,7 @@ const _ = {
|
|
|
529
516
|
back: le,
|
|
530
517
|
rewind: re,
|
|
531
518
|
forward: oe,
|
|
532
|
-
video:
|
|
519
|
+
video: pe
|
|
533
520
|
};
|
|
534
521
|
function A(n) {
|
|
535
522
|
return String(n ?? "").replace(/&/g, "&").replace(/"/g, """).replace(/</g, "<").replace(/>/g, ">");
|
|
@@ -563,10 +550,10 @@ function b(n) {
|
|
|
563
550
|
function d(n) {
|
|
564
551
|
return n == null ? "" : String(n);
|
|
565
552
|
}
|
|
566
|
-
function
|
|
553
|
+
function S(n) {
|
|
567
554
|
return n ? "checked" : "";
|
|
568
555
|
}
|
|
569
|
-
function
|
|
556
|
+
function ce({
|
|
570
557
|
options: n,
|
|
571
558
|
index: e,
|
|
572
559
|
tran: t,
|
|
@@ -574,14 +561,14 @@ function pe({
|
|
|
574
561
|
mobile: s,
|
|
575
562
|
video: a
|
|
576
563
|
}) {
|
|
577
|
-
var
|
|
578
|
-
const l = n.theme || "#b7daff",
|
|
564
|
+
var k, r, p, f, v, L, B, T, $, H, I, P, W;
|
|
565
|
+
const l = n.theme || "#b7daff", o = n.awaken && typeof n.awaken == "object" && n.awaken.bottom ? ` style="margin-bottom:${b(n.awaken.bottom)}"` : "", h = n.subtitle && typeof n.subtitle.url == "string", y = ((f = (p = (k = n.video) == null ? void 0 : k.quality) == null ? void 0 : p[((r = n.video) == null ? void 0 : r.defaultQuality) ?? 0]) == null ? void 0 : f.name) || "", m = (v = n.title) != null && v.back ? `
|
|
579
566
|
<div class="kplayer-back">
|
|
580
567
|
<button class="kplayer-title-back-btn" aria-label="Back">
|
|
581
568
|
<span class="kplayer-icon-content">${d(i.back)}</span>
|
|
582
569
|
</button>
|
|
583
|
-
</div>` : "",
|
|
584
|
-
${
|
|
570
|
+
</div>` : "", c = n.title ? `
|
|
571
|
+
${m}
|
|
585
572
|
<div class="kplayer-title-bar">
|
|
586
573
|
<div class="kplayer-title-info">
|
|
587
574
|
<div class="kplayer-title-main">${d(n.title.title || "")}</div>
|
|
@@ -596,8 +583,8 @@ ${k}
|
|
|
596
583
|
<div class="kplayer-logo">
|
|
597
584
|
<img src="${b(n.logo)}">
|
|
598
585
|
</div>` : ""}
|
|
599
|
-
${
|
|
600
|
-
<div class="kplayer-awaken"${
|
|
586
|
+
${c}
|
|
587
|
+
<div class="kplayer-awaken"${o}>
|
|
601
588
|
<div class="kplayer-awaken-item kplayer-awaken-item--demo"></div>
|
|
602
589
|
</div>
|
|
603
590
|
<div class="kplayer-subtitle"></div>
|
|
@@ -672,14 +659,14 @@ ${k}
|
|
|
672
659
|
</div>
|
|
673
660
|
</div>` : ""}
|
|
674
661
|
|
|
675
|
-
${(
|
|
662
|
+
${(L = n.video) != null && L.quality || ((B = n.video) == null ? void 0 : B.type) === "hls" || ((T = n.video) == null ? void 0 : T.type) === "auto" ? `
|
|
676
663
|
<div class="kplayer-setting-item kplayer-setting-quality-entry">
|
|
677
664
|
<div class="kplayer-setting-action-main">
|
|
678
665
|
<span class="kplayer-setting-action-icon">${d(i.video || i.setting)}</span>
|
|
679
666
|
<span class="kplayer-label">${d(t("quality"))}</span>
|
|
680
667
|
</div>
|
|
681
668
|
<div class="kplayer-setting-item-right">
|
|
682
|
-
<span class="kplayer-setting-current-value" id="kplayer-quality-current"
|
|
669
|
+
<span class="kplayer-setting-current-value" id="kplayer-quality-current"> ${d(y || "Auto")}</span>
|
|
683
670
|
<span class="kplayer-setting-arrow">${d(i.right)}</span>
|
|
684
671
|
</div>
|
|
685
672
|
</div>` : ""}
|
|
@@ -723,14 +710,14 @@ ${k}
|
|
|
723
710
|
<span class="kplayer-label">${d(t("loop"))}</span>
|
|
724
711
|
</div>
|
|
725
712
|
<div class="kplayer-toggle">
|
|
726
|
-
<input class="kplayer-toggle-setting-input" type="checkbox" name="kplayer-toggle" ${
|
|
713
|
+
<input class="kplayer-toggle-setting-input" type="checkbox" name="kplayer-toggle" ${S(n.loop)}>
|
|
727
714
|
<label for="kplayer-toggle"></label>
|
|
728
715
|
</div>
|
|
729
716
|
</div>
|
|
730
717
|
|
|
731
718
|
<div class="kplayer-setting-item kplayer-setting-showdan">
|
|
732
719
|
<div class="kplayer-toggle">
|
|
733
|
-
<input class="kplayer-showdan-setting-input" type="checkbox" name="kplayer-toggle-dan" ${
|
|
720
|
+
<input class="kplayer-showdan-setting-input" type="checkbox" name="kplayer-toggle-dan" ${S(!0)}>
|
|
734
721
|
<label for="kplayer-toggle-dan"></label>
|
|
735
722
|
</div>
|
|
736
723
|
</div>
|
|
@@ -738,7 +725,7 @@ ${k}
|
|
|
738
725
|
<div class="kplayer-setting-item kplayer-setting-danunlimit">
|
|
739
726
|
<span class="kplayer-label">${d(t("unlimited-awaken"))}</span>
|
|
740
727
|
<div class="kplayer-toggle">
|
|
741
|
-
<input class="kplayer-danunlimit-setting-input" type="checkbox" name="kplayer-toggle-danunlimit" ${
|
|
728
|
+
<input class="kplayer-danunlimit-setting-input" type="checkbox" name="kplayer-toggle-danunlimit" ${S(
|
|
742
729
|
typeof n.awaken == "object" && (($ = n.awaken) == null ? void 0 : $.unlimited)
|
|
743
730
|
)}>
|
|
744
731
|
<label for="kplayer-toggle-danunlimit"></label>
|
|
@@ -782,7 +769,7 @@ ${k}
|
|
|
782
769
|
<span class="kplayer-label">${d(t("subtitle"))}</span>
|
|
783
770
|
</div>
|
|
784
771
|
</div>
|
|
785
|
-
${n.subtitle ?
|
|
772
|
+
${n.subtitle ? h ? `
|
|
786
773
|
<div class="kplayer-setting-subtitle-toggle">
|
|
787
774
|
<div class="kplayer-setting-action-main">
|
|
788
775
|
<span class="kplayer-setting-action-icon">${d(i.subtitle)}</span>
|
|
@@ -793,9 +780,9 @@ ${k}
|
|
|
793
780
|
<div class="kplayer-subtitles-box">
|
|
794
781
|
<div class="kplayer-subtitles-panel">
|
|
795
782
|
${(Array.isArray(n.subtitle.url) ? n.subtitle.url : []).map((g) => {
|
|
796
|
-
const
|
|
783
|
+
const x = g, U = x.lang ? x.name ? `${x.name} (${t(x.lang)})` : t(x.lang) : x.name || "";
|
|
797
784
|
return `
|
|
798
|
-
<div class="kplayer-subtitles-item" data-subtitle="${b(
|
|
785
|
+
<div class="kplayer-subtitles-item" data-subtitle="${b(x.url)}">
|
|
799
786
|
<span class="kplayer-label">${d(U)}</span>
|
|
800
787
|
<span class="kplayer-check-icon"><svg viewBox="0 0 24 24" fill="none" stroke="#fff" stroke-width="2.5" stroke-linecap="round" stroke-linejoin="round"><polyline points="20 6 9 17 4 12"/></svg></span>
|
|
801
788
|
</div>`;
|
|
@@ -816,9 +803,9 @@ ${k}
|
|
|
816
803
|
${(H = n.video) != null && H.quality || ((I = n.video) == null ? void 0 : I.type) === "hls" || ((P = n.video) == null ? void 0 : P.type) === "auto" ? `
|
|
817
804
|
<div class="kplayer-quality-inline">
|
|
818
805
|
<div class="kplayer-quality-list">
|
|
819
|
-
${(
|
|
820
|
-
(g,
|
|
821
|
-
<div class="kplayer-quality-item" data-index="${
|
|
806
|
+
${(W = n.video) != null && W.quality ? n.video.quality.map(
|
|
807
|
+
(g, x) => `
|
|
808
|
+
<div class="kplayer-quality-item" data-index="${x}">
|
|
822
809
|
<span class="kplayer-label">${d(g.name)}</span>
|
|
823
810
|
<span class="kplayer-check-icon"><svg viewBox="0 0 24 24" fill="none" stroke="#fff" stroke-width="2.5" stroke-linecap="round" stroke-linejoin="round"><polyline points="20 6 9 17 4 12"/></svg></span>
|
|
824
811
|
</div>`
|
|
@@ -892,10 +879,10 @@ ${k}
|
|
|
892
879
|
|
|
893
880
|
<div class="kplayer-menu">
|
|
894
881
|
${(n.contextmenu || []).map((g) => {
|
|
895
|
-
const
|
|
882
|
+
const x = `${g.key ? t(g.key) : ""}${g.text ? g.text : ""}`;
|
|
896
883
|
return `
|
|
897
884
|
<div class="kplayer-menu-item">
|
|
898
|
-
<a ${g.link ? 'target="_blank"' : ""} href="${b(g.link || "javascript:void(0);")}">${d(
|
|
885
|
+
<a ${g.link ? 'target="_blank"' : ""} href="${b(g.link || "javascript:void(0);")}">${d(x)}</a>
|
|
899
886
|
</div>`;
|
|
900
887
|
}).join("")}
|
|
901
888
|
</div>
|
|
@@ -919,12 +906,12 @@ ${k}
|
|
|
919
906
|
|
|
920
907
|
`.trim();
|
|
921
908
|
}
|
|
922
|
-
class
|
|
909
|
+
class F {
|
|
923
910
|
constructor(e) {
|
|
924
911
|
this.container = e.container, this.options = e.options, this.index = e.index, this.tran = e.tran, this.init();
|
|
925
912
|
}
|
|
926
913
|
init() {
|
|
927
|
-
this.container.innerHTML =
|
|
914
|
+
this.container.innerHTML = ce({
|
|
928
915
|
options: this.options,
|
|
929
916
|
index: this.index,
|
|
930
917
|
tran: this.tran,
|
|
@@ -995,7 +982,7 @@ class he {
|
|
|
995
982
|
left: "0",
|
|
996
983
|
right: "0",
|
|
997
984
|
bottom: "0",
|
|
998
|
-
zIndex: "
|
|
985
|
+
zIndex: "100",
|
|
999
986
|
background: "#000"
|
|
1000
987
|
}), this.adContent = document.createElement("div"), this.adContent.className = "kplayer-ad-content", Object.assign(this.adContent.style, {
|
|
1001
988
|
width: "100%",
|
|
@@ -1015,8 +1002,8 @@ class he {
|
|
|
1015
1002
|
padding: "6px 14px",
|
|
1016
1003
|
border: "none",
|
|
1017
1004
|
borderRadius: "2px",
|
|
1018
|
-
background: "rgba(
|
|
1019
|
-
color: "rgba(
|
|
1005
|
+
background: "rgba(255, 255, 255, 0.96)",
|
|
1006
|
+
color: "rgba(0, 0, 0, 1.0)",
|
|
1020
1007
|
fontSize: "13px",
|
|
1021
1008
|
fontWeight: "400",
|
|
1022
1009
|
cursor: "pointer"
|
|
@@ -1031,8 +1018,8 @@ class he {
|
|
|
1031
1018
|
padding: "6px 14px",
|
|
1032
1019
|
border: "none",
|
|
1033
1020
|
borderRadius: "2px",
|
|
1034
|
-
background: "rgba(
|
|
1035
|
-
color: "rgba(
|
|
1021
|
+
background: "rgba(255, 255, 255, 0.96)",
|
|
1022
|
+
color: "rgba(0, 0, 0, 1.0)",
|
|
1036
1023
|
fontSize: "13px",
|
|
1037
1024
|
cursor: "pointer"
|
|
1038
1025
|
}), this.deeplinkBtn.textContent = "Learn more", this.deeplinkBtn.addEventListener("click", () => {
|
|
@@ -1043,11 +1030,11 @@ class he {
|
|
|
1043
1030
|
top: "12px",
|
|
1044
1031
|
left: "16px",
|
|
1045
1032
|
zIndex: "60",
|
|
1046
|
-
padding: "
|
|
1033
|
+
padding: "5px 10px",
|
|
1047
1034
|
borderRadius: "2px",
|
|
1048
|
-
background: "rgba(
|
|
1049
|
-
color: "rgba(255, 255, 255, 0
|
|
1050
|
-
fontSize: "
|
|
1035
|
+
background: "rgba(255, 174, 0, 0.8)",
|
|
1036
|
+
color: "rgba(255, 255, 255, 1.0)",
|
|
1037
|
+
fontSize: "12px",
|
|
1051
1038
|
letterSpacing: "0.04em"
|
|
1052
1039
|
}), this.adLabel.textContent = "Ad", this.adContainer.appendChild(this.adContent), this.adContainer.appendChild(this.skipBtn), this.adContainer.appendChild(this.deeplinkBtn), this.adContainer.appendChild(this.adLabel), e.appendChild(this.adContainer);
|
|
1053
1040
|
}
|
|
@@ -1059,8 +1046,8 @@ class he {
|
|
|
1059
1046
|
s.className = "kplayer-ad-marker-text";
|
|
1060
1047
|
let a = "Ad";
|
|
1061
1048
|
if ((l = t.name) != null && l.includes("vast_")) {
|
|
1062
|
-
const
|
|
1063
|
-
a =
|
|
1049
|
+
const o = t.name.replace("vast_", "");
|
|
1050
|
+
a = o === "start" || o === "end" ? "Ad" : `Ad · ${o}`;
|
|
1064
1051
|
} else t.name && (a = t.name);
|
|
1065
1052
|
return s.textContent = a, i.appendChild(s), i;
|
|
1066
1053
|
}
|
|
@@ -1098,7 +1085,9 @@ class he {
|
|
|
1098
1085
|
}));
|
|
1099
1086
|
}
|
|
1100
1087
|
_showAd(e) {
|
|
1101
|
-
this.currentAd = e, this.adContent.innerHTML = "", this.adContainer && (this.adContainer.style.display = "block"), this.
|
|
1088
|
+
this.currentAd = e, this.adContent.innerHTML = "", this.adContainer && (this.adContainer.style.display = "block"), this.player.container.classList.add("kplayer-ad-playing"), this.player.controller.hide(), this.player.controller.disableAutoHide = !0;
|
|
1089
|
+
const t = this.player.template.titleBar;
|
|
1090
|
+
t && (t.style.opacity = "0", t.style.visibility = "hidden", t.style.pointerEvents = "none"), this.player.setting.hide(), this.deeplinkBtn.style.display = e.deeplink ? "flex" : "none", e.type === "image" ? this._showImageAd(e) : e.type === "text" ? this._showTextAd(e) : e.type === "video" && this._showVideoAd(e), e.type !== "video" ? this.player.pause() : this.player.video.pause(), this._startSkipTimer(e.skipTime || 5);
|
|
1102
1091
|
}
|
|
1103
1092
|
_showImageAd(e) {
|
|
1104
1093
|
const t = document.createElement("img");
|
|
@@ -1144,32 +1133,34 @@ class he {
|
|
|
1144
1133
|
this.skipRemaining > 0 || this._closeAd();
|
|
1145
1134
|
}
|
|
1146
1135
|
_closeAd() {
|
|
1147
|
-
clearInterval(this.skipTimer), this._adVideo && (this._adVideo.pause(), this._adVideo.src = "", this._adVideo = null), this.adContent.style.background = "", this.adContainer && (this.adContainer.style.background = "#000", this.adContainer.style.display = "none"), this.skipBtn.style.display = "none", this.deeplinkBtn.style.display = "none", this.adContent.innerHTML = "";
|
|
1148
|
-
const e = this.
|
|
1149
|
-
|
|
1150
|
-
|
|
1151
|
-
|
|
1136
|
+
clearInterval(this.skipTimer), this.player.container.classList.remove("kplayer-ad-playing"), this._adVideo && (this._adVideo.pause(), this._adVideo.src = "", this._adVideo = null), this.adContent.style.background = "", this.adContainer && (this.adContainer.style.background = "#000", this.adContainer.style.display = "none"), this.skipBtn.style.display = "none", this.deeplinkBtn.style.display = "none", this.adContent.innerHTML = "", this.player.controller.disableAutoHide = !1, this.player.controller.show();
|
|
1137
|
+
const e = this.player.template.titleBar;
|
|
1138
|
+
e && (e.style.opacity = "", e.style.visibility = "", e.style.pointerEvents = "", e.style.transform = "");
|
|
1139
|
+
const t = this.currentAd;
|
|
1140
|
+
if (this.currentAd = null, t && t.startTime !== void 0) {
|
|
1141
|
+
const i = (t.startTime || 0) + 0.5, s = this.player.video.duration || 0;
|
|
1142
|
+
s > 0 && i < s && (this.player.video.currentTime = i);
|
|
1152
1143
|
}
|
|
1153
1144
|
this.player.play();
|
|
1154
1145
|
}
|
|
1155
1146
|
async _loadVAST(e) {
|
|
1156
1147
|
var t;
|
|
1157
1148
|
try {
|
|
1158
|
-
const s = await (await fetch(e)).text(), l = new DOMParser().parseFromString(s, "text/xml"),
|
|
1159
|
-
if (
|
|
1160
|
-
const
|
|
1161
|
-
for (const
|
|
1162
|
-
const
|
|
1163
|
-
let
|
|
1164
|
-
|
|
1165
|
-
const p =
|
|
1166
|
-
|
|
1149
|
+
const s = await (await fetch(e)).text(), l = new DOMParser().parseFromString(s, "text/xml"), o = "http://www.iab.net/videosuite/vmap", h = l.getElementsByTagNameNS(o, "AdBreak");
|
|
1150
|
+
if (h.length > 0) {
|
|
1151
|
+
const y = this.player.video.duration || 0, m = [];
|
|
1152
|
+
for (const c of Array.from(h)) {
|
|
1153
|
+
const k = c.getAttribute("timeOffset") || "";
|
|
1154
|
+
let r = 0;
|
|
1155
|
+
k === "start" ? r = 0 : k === "end" ? r = y > 0 ? y - 1 : 99999 : k && (r = this._parseTime(k));
|
|
1156
|
+
const p = c.getElementsByTagNameNS(
|
|
1157
|
+
o,
|
|
1167
1158
|
"AdTagURI"
|
|
1168
1159
|
)[0], f = (t = p == null ? void 0 : p.textContent) == null ? void 0 : t.trim();
|
|
1169
|
-
f &&
|
|
1160
|
+
f && m.push({ vastUrl: f, startTime: r, timeOffset: k });
|
|
1170
1161
|
}
|
|
1171
|
-
for (const { vastUrl:
|
|
1172
|
-
await this._fetchVASTAndRegister(
|
|
1162
|
+
for (const { vastUrl: c, startTime: k, timeOffset: r } of m)
|
|
1163
|
+
await this._fetchVASTAndRegister(c, k, r);
|
|
1173
1164
|
this._registerVMAPMarkers();
|
|
1174
1165
|
} else
|
|
1175
1166
|
await this._parseVASTAndShow(l, 0, 5);
|
|
@@ -1178,22 +1169,22 @@ class he {
|
|
|
1178
1169
|
}
|
|
1179
1170
|
}
|
|
1180
1171
|
async _fetchVASTAndRegister(e, t, i) {
|
|
1181
|
-
var s, a, l,
|
|
1172
|
+
var s, a, l, o;
|
|
1182
1173
|
try {
|
|
1183
|
-
const
|
|
1184
|
-
if (!
|
|
1185
|
-
const
|
|
1174
|
+
const y = await (await fetch(e)).text(), c = new DOMParser().parseFromString(y, "text/xml"), k = c.querySelector("MediaFile"), r = (s = k == null ? void 0 : k.textContent) == null ? void 0 : s.trim(), p = (a = c.querySelector("Linear")) == null ? void 0 : a.getAttribute("skipoffset"), f = p ? this._parseTime(p) : 5, v = (o = (l = c.querySelector("Impression")) == null ? void 0 : l.textContent) == null ? void 0 : o.trim();
|
|
1175
|
+
if (!r) return;
|
|
1176
|
+
const L = {
|
|
1186
1177
|
type: "video",
|
|
1187
|
-
url:
|
|
1178
|
+
url: r,
|
|
1188
1179
|
startTime: t,
|
|
1189
1180
|
skipTime: f,
|
|
1190
1181
|
name: `vast_${i}`,
|
|
1191
1182
|
_impressionUrl: v,
|
|
1192
1183
|
_isPostroll: i === "end"
|
|
1193
1184
|
};
|
|
1194
|
-
this.options || (this.options = { url: [] }), Array.isArray(this.options.url) || (this.options.url = []), this.options.url.push(
|
|
1195
|
-
} catch (
|
|
1196
|
-
console.warn("[Kplayer] VAST fetch failed:", e,
|
|
1185
|
+
this.options || (this.options = { url: [] }), Array.isArray(this.options.url) || (this.options.url = []), this.options.url.push(L);
|
|
1186
|
+
} catch (h) {
|
|
1187
|
+
console.warn("[Kplayer] VAST fetch failed:", e, h);
|
|
1197
1188
|
}
|
|
1198
1189
|
}
|
|
1199
1190
|
_registerVMAPMarkers() {
|
|
@@ -1209,17 +1200,17 @@ class he {
|
|
|
1209
1200
|
if (a.startTime === void 0 || a.startTime <= 0) return;
|
|
1210
1201
|
const l = a.startTime / t * 100;
|
|
1211
1202
|
if (l >= 100) return;
|
|
1212
|
-
const
|
|
1213
|
-
this.player.template.playedBarWrap.appendChild(
|
|
1203
|
+
const o = this._createMarker(l, a);
|
|
1204
|
+
this.player.template.playedBarWrap.appendChild(o), this.adMarkers.push(o);
|
|
1214
1205
|
}));
|
|
1215
1206
|
};
|
|
1216
1207
|
this.player.video.duration && this.player.video.duration !== 1 / 0 ? e() : this.player.on("durationchange", e), this._bindTimeUpdate();
|
|
1217
1208
|
}
|
|
1218
1209
|
async _parseVASTAndShow(e, t, i) {
|
|
1219
|
-
var
|
|
1220
|
-
const s = e.querySelector("MediaFile"), a = (
|
|
1221
|
-
|
|
1222
|
-
}), a && this._showAd({ type: "video", url: a, startTime: t, skipTime:
|
|
1210
|
+
var y, m, c, k;
|
|
1211
|
+
const s = e.querySelector("MediaFile"), a = (y = s == null ? void 0 : s.textContent) == null ? void 0 : y.trim(), l = (m = e.querySelector("Linear")) == null ? void 0 : m.getAttribute("skipoffset"), o = l ? this._parseTime(l) : i, h = (k = (c = e.querySelector("Impression")) == null ? void 0 : c.textContent) == null ? void 0 : k.trim();
|
|
1212
|
+
h && fetch(h).catch(() => {
|
|
1213
|
+
}), a && this._showAd({ type: "video", url: a, startTime: t, skipTime: o });
|
|
1223
1214
|
}
|
|
1224
1215
|
_parseTime(e) {
|
|
1225
1216
|
if (!e) return 0;
|
|
@@ -1458,25 +1449,25 @@ class me {
|
|
|
1458
1449
|
`);
|
|
1459
1450
|
if (!l.length || l[0].startsWith("WEBVTT") || l[0].startsWith("NOTE") || l[0].startsWith("STYLE"))
|
|
1460
1451
|
continue;
|
|
1461
|
-
let
|
|
1462
|
-
for (let
|
|
1463
|
-
if (l[
|
|
1464
|
-
|
|
1452
|
+
let o = -1;
|
|
1453
|
+
for (let r = 0; r < l.length; r++)
|
|
1454
|
+
if (l[r].includes("-->")) {
|
|
1455
|
+
o = r;
|
|
1465
1456
|
break;
|
|
1466
1457
|
}
|
|
1467
|
-
if (
|
|
1468
|
-
const
|
|
1458
|
+
if (o === -1) continue;
|
|
1459
|
+
const y = l[o].match(
|
|
1469
1460
|
/((?:\d{2}:)?\d{2}:\d{2}[.,]\d{3})\s*-->\s*((?:\d{2}:)?\d{2}:\d{2}[.,]\d{3})/
|
|
1470
1461
|
);
|
|
1471
|
-
if (!
|
|
1472
|
-
const
|
|
1462
|
+
if (!y) continue;
|
|
1463
|
+
const m = this._timeToSeconds(y[1]), c = this._timeToSeconds(y[2]), k = l.slice(o + 1).join(`
|
|
1473
1464
|
`).trim();
|
|
1474
|
-
if (
|
|
1465
|
+
if (k)
|
|
1475
1466
|
try {
|
|
1476
|
-
const
|
|
1477
|
-
t.push(
|
|
1478
|
-
} catch (
|
|
1479
|
-
console.warn("[KPlayer] VTTCue failed:",
|
|
1467
|
+
const r = new VTTCue(m, c, k);
|
|
1468
|
+
t.push(r);
|
|
1469
|
+
} catch (r) {
|
|
1470
|
+
console.warn("[KPlayer] VTTCue failed:", r, m, c, k);
|
|
1480
1471
|
}
|
|
1481
1472
|
}
|
|
1482
1473
|
return t;
|
|
@@ -1819,11 +1810,11 @@ class we {
|
|
|
1819
1810
|
(i) => {
|
|
1820
1811
|
var s, a;
|
|
1821
1812
|
if (this.player.video.duration) {
|
|
1822
|
-
const l = this.player.template.playedBarWrap.getBoundingClientRect().left,
|
|
1823
|
-
if (
|
|
1813
|
+
const l = this.player.template.playedBarWrap.getBoundingClientRect().left, o = (i.clientX || i.changedTouches[0].clientX) - l;
|
|
1814
|
+
if (o < 0 || o > this.player.template.playedBarWrap.offsetWidth)
|
|
1824
1815
|
return;
|
|
1825
|
-
const
|
|
1826
|
-
u.isMobile && ((s = this.thumbnails) == null || s.show()), (a = this.thumbnails) == null || a.move(
|
|
1816
|
+
const h = this.player.video.duration * (o / this.player.template.playedBarWrap.offsetWidth);
|
|
1817
|
+
u.isMobile && ((s = this.thumbnails) == null || s.show()), (a = this.thumbnails) == null || a.move(o), this.player.template.playedBarTime.style.left = `${o - (h >= 3600 ? 25 : 20)}px`, this.player.template.playedBarTime.innerText = u.secondToTime(h), this.player.template.playedBarTime.classList.remove("hidden");
|
|
1827
1818
|
}
|
|
1828
1819
|
}
|
|
1829
1820
|
), this.player.template.playedBarWrap.addEventListener(
|
|
@@ -1943,9 +1934,9 @@ class we {
|
|
|
1943
1934
|
z && (z = !1, this.initChromecast());
|
|
1944
1935
|
const t = (a) => {
|
|
1945
1936
|
if (!cast) return !1;
|
|
1946
|
-
const l = new cast.media.MediaInfo(a),
|
|
1937
|
+
const l = new cast.media.MediaInfo(a), o = new cast.media.LoadRequest(l);
|
|
1947
1938
|
return this.session ? (this.session.loadMedia(
|
|
1948
|
-
|
|
1939
|
+
o,
|
|
1949
1940
|
i.bind(this, "loadMedia"),
|
|
1950
1941
|
s
|
|
1951
1942
|
).play(), !0) : (window.open(a), !1);
|
|
@@ -1957,11 +1948,11 @@ class we {
|
|
|
1957
1948
|
(e = this.player.template.chromecastButton) == null || e.addEventListener("click", () => {
|
|
1958
1949
|
var a, l;
|
|
1959
1950
|
M ? (M = !1, (a = this.currentMedia) == null || a.stop(), (l = this.session) == null || l.stop(), this.initChromecast()) : (M = !0, cast == null || cast.requestSession(
|
|
1960
|
-
(
|
|
1961
|
-
this.session =
|
|
1951
|
+
(o) => {
|
|
1952
|
+
this.session = o, t(this.player.options.video.url || "");
|
|
1962
1953
|
},
|
|
1963
|
-
(
|
|
1964
|
-
|
|
1954
|
+
(o) => {
|
|
1955
|
+
o.code === "cancel" ? this.session = void 0 : console.error("Error selecting cast device", o);
|
|
1965
1956
|
}
|
|
1966
1957
|
));
|
|
1967
1958
|
});
|
|
@@ -2015,21 +2006,21 @@ class we {
|
|
|
2015
2006
|
)), clearTimeout(this.autoHideTimer);
|
|
2016
2007
|
}
|
|
2017
2008
|
}
|
|
2018
|
-
class
|
|
2009
|
+
class Le {
|
|
2019
2010
|
constructor(e) {
|
|
2020
|
-
var a, l,
|
|
2011
|
+
var a, l, o;
|
|
2021
2012
|
this.player = e, this.player.template.mask.addEventListener("click", () => {
|
|
2022
|
-
this.hide();
|
|
2013
|
+
this.hide(), this.player.contextmenu.shown && this.player.contextmenu.hide(), this.player.subtitles && this.player.subtitles.hide();
|
|
2023
2014
|
}), this.player.template.settingButton.addEventListener("click", () => {
|
|
2024
2015
|
this.show();
|
|
2025
2016
|
}), this.loop = this.player.options.loop || !1, this.player.template.loopToggle.checked = this.loop, this.player.template.loop.addEventListener("click", () => {
|
|
2026
2017
|
this.player.template.loopToggle.checked = !this.player.template.loopToggle.checked, this.loop = this.player.template.loopToggle.checked;
|
|
2027
2018
|
}), this.showAwaken = this.player.user.get("awaken"), this.showAwaken || this.player.awaken && this.player.awaken.hide(), this.player.template.showAwakenToggle.checked = !!this.showAwaken, this.player.template.showAwaken.addEventListener("click", () => {
|
|
2028
|
-
var
|
|
2029
|
-
this.player.template.showAwakenToggle.checked = !this.player.template.showAwakenToggle.checked, this.player.template.showAwakenToggle.checked ? (this.showAwaken = 1, (
|
|
2019
|
+
var h, y;
|
|
2020
|
+
this.player.template.showAwakenToggle.checked = !this.player.template.showAwakenToggle.checked, this.player.template.showAwakenToggle.checked ? (this.showAwaken = 1, (h = this.player.awaken) == null || h.show()) : (this.showAwaken = 0, (y = this.player.awaken) == null || y.hide()), this.player.user.set("awaken", this.showAwaken ? 1 : 0), this.hide();
|
|
2030
2021
|
}), this.unlimitAwaken = this.player.user.get("unlimited"), this.player.template.unlimitAwakenToggle.checked = !!this.unlimitAwaken, this.player.template.unlimitAwaken.addEventListener("click", () => {
|
|
2031
|
-
var
|
|
2032
|
-
this.player.template.unlimitAwakenToggle.checked = !this.player.template.unlimitAwakenToggle.checked, this.player.template.unlimitAwakenToggle.checked ? (this.unlimitAwaken = 1, (
|
|
2022
|
+
var h, y;
|
|
2023
|
+
this.player.template.unlimitAwakenToggle.checked = !this.player.template.unlimitAwakenToggle.checked, this.player.template.unlimitAwakenToggle.checked ? (this.unlimitAwaken = 1, (h = this.player.awaken) == null || h.unlimit(!0)) : (this.unlimitAwaken = 0, (y = this.player.awaken) == null || y.unlimit(!1)), this.player.user.set("unlimited", this.unlimitAwaken ? 1 : 0), this.hide();
|
|
2033
2024
|
}), this.player.template.speed.addEventListener("click", () => {
|
|
2034
2025
|
this.player.template.settingBox.classList.add(
|
|
2035
2026
|
"kplayer-setting-box-speed"
|
|
@@ -2038,17 +2029,17 @@ class xe {
|
|
|
2038
2029
|
const i = (this.player.options.playbackSpeed || []).indexOf(1);
|
|
2039
2030
|
if (i >= 0 && this.player.template.speedItem[i] && this.player.template.speedItem[i].classList.add(
|
|
2040
2031
|
"kplayer-selected"
|
|
2041
|
-
), Array.from(this.player.template.speedItem).forEach((
|
|
2042
|
-
|
|
2032
|
+
), Array.from(this.player.template.speedItem).forEach((h, y) => {
|
|
2033
|
+
h.addEventListener("click", () => {
|
|
2043
2034
|
Array.from(this.player.template.speedItem).forEach(
|
|
2044
|
-
(
|
|
2045
|
-
),
|
|
2046
|
-
const
|
|
2035
|
+
(c) => c.classList.remove("kplayer-selected")
|
|
2036
|
+
), h.classList.add("kplayer-selected"), this.player.speed(Number(h.dataset.speed));
|
|
2037
|
+
const m = this.player.container.querySelector(
|
|
2047
2038
|
"#kplayer-speed-current"
|
|
2048
2039
|
);
|
|
2049
|
-
if (
|
|
2050
|
-
const
|
|
2051
|
-
|
|
2040
|
+
if (m) {
|
|
2041
|
+
const c = h.dataset.speed;
|
|
2042
|
+
m.textContent = c === "1" ? "1×" : c + "×";
|
|
2052
2043
|
}
|
|
2053
2044
|
});
|
|
2054
2045
|
}), this.player.template.subtitleEntry && this.player.template.subtitleEntry.addEventListener("click", () => {
|
|
@@ -2065,19 +2056,19 @@ class xe {
|
|
|
2065
2056
|
".kplayer-setting-chromecast-entry"
|
|
2066
2057
|
), this.screenshotEntry = this.player.container.querySelector(
|
|
2067
2058
|
".kplayer-setting-screenshot-entry"
|
|
2068
|
-
), this.screenshotEntry && this.player.template.camareButton && this.screenshotEntry.addEventListener("click", (
|
|
2069
|
-
var
|
|
2070
|
-
|
|
2071
|
-
}), this.airplayEntry && this.player.template.airplayButton && this.airplayEntry.addEventListener("click", (
|
|
2072
|
-
var
|
|
2073
|
-
|
|
2074
|
-
}), this.chromecastEntry && this.player.template.chromecastButton && this.chromecastEntry.addEventListener("click", (
|
|
2075
|
-
var
|
|
2076
|
-
|
|
2059
|
+
), this.screenshotEntry && this.player.template.camareButton && this.screenshotEntry.addEventListener("click", (h) => {
|
|
2060
|
+
var y;
|
|
2061
|
+
h.stopPropagation(), (y = this.player.template.camareButton) == null || y.click(), this.hide();
|
|
2062
|
+
}), this.airplayEntry && this.player.template.airplayButton && this.airplayEntry.addEventListener("click", (h) => {
|
|
2063
|
+
var y;
|
|
2064
|
+
h.stopPropagation(), (y = this.player.template.airplayButton) == null || y.click(), this.hide();
|
|
2065
|
+
}), this.chromecastEntry && this.player.template.chromecastButton && this.chromecastEntry.addEventListener("click", (h) => {
|
|
2066
|
+
var y;
|
|
2067
|
+
h.stopPropagation(), (y = this.player.template.chromecastButton) == null || y.click(), this.hide();
|
|
2077
2068
|
}), this.player.container.querySelectorAll(
|
|
2078
2069
|
".kplayer-setting-back-main"
|
|
2079
|
-
).forEach((
|
|
2080
|
-
|
|
2070
|
+
).forEach((h) => {
|
|
2071
|
+
h.addEventListener("click", () => {
|
|
2081
2072
|
this.player.template.settingBox.classList.remove(
|
|
2082
2073
|
"kplayer-setting-box-speed"
|
|
2083
2074
|
), this.player.template.settingBox.classList.remove(
|
|
@@ -2089,36 +2080,36 @@ class xe {
|
|
|
2089
2080
|
);
|
|
2090
2081
|
});
|
|
2091
2082
|
}), this.player.awaken) {
|
|
2092
|
-
this.player.on("awaken_opacity", (
|
|
2093
|
-
this.player.bar.set("awaken",
|
|
2083
|
+
this.player.on("awaken_opacity", (c) => {
|
|
2084
|
+
this.player.bar.set("awaken", c, "width"), this.player.user.set("opacity", c);
|
|
2094
2085
|
}), (a = this.player.awaken) == null || a.opacity(this.player.user.get("opacity"));
|
|
2095
|
-
const
|
|
2086
|
+
const y = (c) => {
|
|
2096
2087
|
var p, f, v;
|
|
2097
|
-
const
|
|
2098
|
-
let
|
|
2088
|
+
const k = c;
|
|
2089
|
+
let r = ((k.clientX || ((f = (p = k.changedTouches) == null ? void 0 : p[0]) == null ? void 0 : f.clientX) || 0) - u.getBoundingClientRectViewLeft(
|
|
2099
2090
|
this.player.template.awakenOpacityBarWrap
|
|
2100
2091
|
)) / 130;
|
|
2101
|
-
|
|
2102
|
-
},
|
|
2103
|
-
var
|
|
2104
|
-
document.removeEventListener(u.nameMap.dragEnd,
|
|
2092
|
+
r = Math.max(0, Math.min(1, r)), (v = this.player.awaken) == null || v.opacity(r);
|
|
2093
|
+
}, m = () => {
|
|
2094
|
+
var c;
|
|
2095
|
+
document.removeEventListener(u.nameMap.dragEnd, m), document.removeEventListener(u.nameMap.dragMove, y), (c = this.player.template.awakenOpacityBox) == null || c.classList.remove(
|
|
2105
2096
|
"kplayer-setting-awaken-active"
|
|
2106
2097
|
);
|
|
2107
2098
|
};
|
|
2108
2099
|
(l = this.player.template.awakenOpacityBarWrapWrap) == null || l.addEventListener(
|
|
2109
2100
|
"click",
|
|
2110
|
-
(
|
|
2111
|
-
var
|
|
2112
|
-
let
|
|
2101
|
+
(c) => {
|
|
2102
|
+
var r;
|
|
2103
|
+
let k = ((c.clientX || 0) - u.getBoundingClientRectViewLeft(
|
|
2113
2104
|
this.player.template.awakenOpacityBarWrap
|
|
2114
2105
|
)) / 130;
|
|
2115
|
-
|
|
2106
|
+
k = Math.max(0, Math.min(1, k)), (r = this.player.awaken) == null || r.opacity(k);
|
|
2116
2107
|
}
|
|
2117
|
-
), (
|
|
2108
|
+
), (o = this.player.template.awakenOpacityBarWrapWrap) == null || o.addEventListener(
|
|
2118
2109
|
u.nameMap.dragStart,
|
|
2119
2110
|
() => {
|
|
2120
|
-
var
|
|
2121
|
-
document.addEventListener(u.nameMap.dragMove,
|
|
2111
|
+
var c;
|
|
2112
|
+
document.addEventListener(u.nameMap.dragMove, y), document.addEventListener(u.nameMap.dragEnd, m), (c = this.player.template.awakenOpacityBox) == null || c.classList.add(
|
|
2122
2113
|
"kplayer-setting-awaken-active"
|
|
2123
2114
|
);
|
|
2124
2115
|
}
|
|
@@ -2141,10 +2132,16 @@ class xe {
|
|
|
2141
2132
|
}, 300), this.player.controller.disableAutoHide = !1;
|
|
2142
2133
|
}
|
|
2143
2134
|
show() {
|
|
2135
|
+
if (this.player.template.settingBox.classList.contains(
|
|
2136
|
+
"kplayer-setting-box-open"
|
|
2137
|
+
)) {
|
|
2138
|
+
this.hide();
|
|
2139
|
+
return;
|
|
2140
|
+
}
|
|
2144
2141
|
this.player.template.settingBox.classList.add("kplayer-setting-box-open"), this.player.template.mask.classList.add("kplayer-mask-show"), this.player.controller.disableAutoHide = !0;
|
|
2145
2142
|
}
|
|
2146
2143
|
}
|
|
2147
|
-
class
|
|
2144
|
+
class xe {
|
|
2148
2145
|
constructor(e) {
|
|
2149
2146
|
this.player = e, this.doHotKeyHandler = this.doHotKey.bind(this), this.cancelFullScreenHandler = this.cancelFullScreen.bind(this), this.player.options.hotkey && document.addEventListener("keydown", this.doHotKeyHandler), document.addEventListener("keydown", this.cancelFullScreenHandler);
|
|
2150
2147
|
}
|
|
@@ -2252,37 +2249,37 @@ class Ee {
|
|
|
2252
2249
|
}
|
|
2253
2250
|
update() {
|
|
2254
2251
|
var e;
|
|
2255
|
-
this.template.infoVersion && (this.template.infoVersion.innerHTML = "v1.0.
|
|
2252
|
+
this.template.infoVersion && (this.template.infoVersion.innerHTML = "v1.0.3 dev"), this.template.infoType && (this.template.infoType.innerHTML = this.player.type || ""), this.template.infoUrl && (this.template.infoUrl.innerHTML = ((e = this.player.options.video) == null ? void 0 : e.url) || ""), this.template.infoResolution && (this.template.infoResolution.innerHTML = `${this.video.videoWidth} x ${this.video.videoHeight}`), this.template.infoDuration && (this.template.infoDuration.innerHTML = String(this.video.duration)), this.player.options.awaken && typeof this.player.options.awaken == "object" && (this.template.infoAwakenId && (this.template.infoAwakenId.innerHTML = this.player.options.awaken.id || ""), this.template.infoAwakenApi && (this.template.infoAwakenApi.innerHTML = this.player.options.awaken.api || ""));
|
|
2256
2253
|
}
|
|
2257
2254
|
fps(e) {
|
|
2258
2255
|
this.template.infoFPS && (this.template.infoFPS.innerHTML = `${e.toFixed(1)}`);
|
|
2259
2256
|
}
|
|
2260
2257
|
}
|
|
2261
2258
|
let V = 0;
|
|
2262
|
-
const
|
|
2259
|
+
const C = [];
|
|
2263
2260
|
function Te(n) {
|
|
2264
2261
|
const e = n.DefaultConfig.loader;
|
|
2265
2262
|
return class extends e {
|
|
2266
2263
|
constructor(i) {
|
|
2267
2264
|
super(i);
|
|
2268
2265
|
const s = this.load.bind(this);
|
|
2269
|
-
this.load = function(a, l,
|
|
2270
|
-
const
|
|
2271
|
-
|
|
2266
|
+
this.load = function(a, l, o) {
|
|
2267
|
+
const h = o.onSuccess;
|
|
2268
|
+
o.onSuccess = function(y, m, c, k) {
|
|
2272
2269
|
try {
|
|
2273
2270
|
if (a.type === "fragment") {
|
|
2274
|
-
const
|
|
2271
|
+
const r = y.data;
|
|
2275
2272
|
let p;
|
|
2276
|
-
if (
|
|
2273
|
+
if (r instanceof ArrayBuffer ? p = r : typeof r == "string" && (p = new TextEncoder().encode(r).buffer), p) {
|
|
2277
2274
|
const f = new Blob([p], { type: "video/mp2t" }), v = URL.createObjectURL(f);
|
|
2278
|
-
|
|
2275
|
+
y.url = v, setTimeout(() => URL.revokeObjectURL(v), 1e4);
|
|
2279
2276
|
}
|
|
2280
2277
|
}
|
|
2281
|
-
} catch (
|
|
2282
|
-
console.warn("[KPlayer] BlobHLSLoader error:",
|
|
2278
|
+
} catch (r) {
|
|
2279
|
+
console.warn("[KPlayer] BlobHLSLoader error:", r);
|
|
2283
2280
|
}
|
|
2284
|
-
y
|
|
2285
|
-
}, s(a, l,
|
|
2281
|
+
h(y, m, c, k);
|
|
2282
|
+
}, s(a, l, o);
|
|
2286
2283
|
};
|
|
2287
2284
|
}
|
|
2288
2285
|
};
|
|
@@ -2292,55 +2289,55 @@ async function R(n, e, t, i) {
|
|
|
2292
2289
|
if (!s.ok) throw new Error(`HTTP ${s.status}`);
|
|
2293
2290
|
let a = await s.text();
|
|
2294
2291
|
if (e && t && i) {
|
|
2295
|
-
const l = /^\d{2}:\d{2}:\d{2}[.,]\d{3}\s*-->\s*\d{2}:\d{2}:\d{2}[.,]\d{3}$/,
|
|
2296
|
-
const
|
|
2292
|
+
const l = /^\d{2}:\d{2}:\d{2}[.,]\d{3}\s*-->\s*\d{2}:\d{2}:\d{2}[.,]\d{3}$/, o = async (p, f, v) => {
|
|
2293
|
+
const L = new Uint8Array(
|
|
2297
2294
|
p.match(/.{2}/g).map((T) => parseInt(T, 16))
|
|
2298
2295
|
), B = await crypto.subtle.decrypt(
|
|
2299
2296
|
{ name: "AES-CBC", iv: v.buffer },
|
|
2300
2297
|
f,
|
|
2301
|
-
|
|
2298
|
+
L.buffer
|
|
2302
2299
|
);
|
|
2303
2300
|
return new TextDecoder().decode(B);
|
|
2304
|
-
},
|
|
2301
|
+
}, h = new Uint8Array(
|
|
2305
2302
|
t.match(/.{2}/g).map((p) => parseInt(p, 16))
|
|
2306
|
-
),
|
|
2303
|
+
), y = new Uint8Array(
|
|
2307
2304
|
i.match(/.{2}/g).map((p) => parseInt(p, 16))
|
|
2308
|
-
),
|
|
2305
|
+
), m = await crypto.subtle.importKey(
|
|
2309
2306
|
"raw",
|
|
2310
|
-
|
|
2307
|
+
h.buffer,
|
|
2311
2308
|
{ name: "AES-CBC" },
|
|
2312
2309
|
!1,
|
|
2313
2310
|
["decrypt"]
|
|
2314
2311
|
);
|
|
2315
|
-
let
|
|
2312
|
+
let c;
|
|
2316
2313
|
try {
|
|
2317
|
-
|
|
2314
|
+
c = atob(a.trim());
|
|
2318
2315
|
} catch {
|
|
2319
|
-
|
|
2316
|
+
c = a;
|
|
2320
2317
|
}
|
|
2321
|
-
const
|
|
2322
|
-
`),
|
|
2323
|
-
for (const p of
|
|
2318
|
+
const k = c.split(`
|
|
2319
|
+
`), r = [];
|
|
2320
|
+
for (const p of k) {
|
|
2324
2321
|
const f = p.trim();
|
|
2325
2322
|
if (!f) {
|
|
2326
|
-
|
|
2323
|
+
r.push(p);
|
|
2327
2324
|
continue;
|
|
2328
2325
|
}
|
|
2329
2326
|
if (l.test(f)) {
|
|
2330
|
-
|
|
2327
|
+
r.push(p);
|
|
2331
2328
|
continue;
|
|
2332
2329
|
}
|
|
2333
2330
|
if (/^[0-9a-fA-F]+$/.test(f) && f.length % 2 === 0)
|
|
2334
2331
|
try {
|
|
2335
|
-
const v = await
|
|
2336
|
-
|
|
2332
|
+
const v = await o(f, m, y);
|
|
2333
|
+
r.push(v);
|
|
2337
2334
|
} catch {
|
|
2338
|
-
|
|
2335
|
+
r.push(p);
|
|
2339
2336
|
}
|
|
2340
2337
|
else
|
|
2341
|
-
|
|
2338
|
+
r.push(p);
|
|
2342
2339
|
}
|
|
2343
|
-
a =
|
|
2340
|
+
a = r.join(`
|
|
2344
2341
|
`);
|
|
2345
2342
|
}
|
|
2346
2343
|
return a;
|
|
@@ -2355,29 +2352,29 @@ class Ae {
|
|
|
2355
2352
|
const s = { subtitle: "", lang: "off", url: "" };
|
|
2356
2353
|
if (this.options.subtitle.url.push(s), this.options.subtitle.defaultSubtitle !== void 0) {
|
|
2357
2354
|
const l = this.options.subtitle.defaultSubtitle;
|
|
2358
|
-
typeof l == "string" ? this.options.subtitle.index = this.options.subtitle.url.findIndex((
|
|
2355
|
+
typeof l == "string" ? this.options.subtitle.index = this.options.subtitle.url.findIndex((o) => o.lang === l || o.name === l) : typeof l == "number" && (this.options.subtitle.index = l);
|
|
2359
2356
|
}
|
|
2360
2357
|
const a = this.options.subtitle.url;
|
|
2361
2358
|
(this.options.subtitle.index === -1 || this.options.subtitle.index == null || this.options.subtitle.index > a.length - 1) && (this.options.subtitle.index = a.findIndex(
|
|
2362
2359
|
(l) => l.lang === this.options.lang
|
|
2363
2360
|
)), this.options.subtitle.index === -1 && (this.options.subtitle.index = a.length - 1);
|
|
2364
2361
|
}
|
|
2365
|
-
this.template = new
|
|
2362
|
+
this.template = new F({
|
|
2366
2363
|
container: this.container,
|
|
2367
2364
|
options: this.options,
|
|
2368
2365
|
index: V,
|
|
2369
2366
|
tran: this.tran
|
|
2370
|
-
}), this.video = this.template.video, this.bar = new fe(this.template), this.bezel = new ge(this.template.bezel), this.fullScreen = new ue(this), this.controller = new we(this), this.setting = new
|
|
2367
|
+
}), this.video = this.template.video, this.bar = new fe(this.template), this.bezel = new ge(this.template.bezel), this.fullScreen = new ue(this), this.controller = new we(this), this.setting = new Le(this), this.plugins = {}, this.docClickFun = () => {
|
|
2371
2368
|
this.focus = !1;
|
|
2372
2369
|
}, this.containerClickFun = () => {
|
|
2373
2370
|
this.focus = !0;
|
|
2374
|
-
}, document.addEventListener("click", this.docClickFun, !0), this.container.addEventListener("click", this.containerClickFun, !0), this.paused = !0, this.timer = new ve(this), this.hotkey = new
|
|
2371
|
+
}, document.addEventListener("click", this.docClickFun, !0), this.container.addEventListener("click", this.containerClickFun, !0), this.paused = !0, this.timer = new ve(this), this.hotkey = new xe(this), this.contextmenu = new Be(this), this.initVideo(
|
|
2375
2372
|
this.video,
|
|
2376
2373
|
this.quality && this.quality.type || this.options.video.type || "auto"
|
|
2377
2374
|
), this.infoPanel = new Ee(this), (this.options.ad || this.options.vastAD) && (this.ad = new he(this)), this.options.vastAD && this.options.vastADURL && ((i = this.ad) == null || i._loadVAST(this.options.vastADURL)), this.template.titleBack && this.template.titleBack.addEventListener("click", () => {
|
|
2378
2375
|
var s;
|
|
2379
2376
|
typeof ((s = this.options.title) == null ? void 0 : s.onBack) == "function" ? this.options.title.onBack(this) : window.history.back(), this.events.trigger("title_back");
|
|
2380
|
-
}), !this.awaken && this.options.autoplay && this.play(), this.moveBar = !1, V++,
|
|
2377
|
+
}), !this.awaken && this.options.autoplay && this.play(), this.moveBar = !1, V++, C.push(this);
|
|
2381
2378
|
}
|
|
2382
2379
|
seek(e) {
|
|
2383
2380
|
e = Math.max(e, 0), this.video.duration && (e = Math.min(e, this.video.duration)), this.video.currentTime < e ? this.notice(
|
|
@@ -2390,7 +2387,7 @@ class Ae {
|
|
|
2390
2387
|
if (this.paused = !1, this.video.paused && !u.isMobile && this.bezel.switch(w.play), this.template.playButton.innerHTML = w.pause, this.template.mobilePlayButton.innerHTML = w.pause, e || Promise.resolve(this.video.play()).catch(() => {
|
|
2391
2388
|
this.pause();
|
|
2392
2389
|
}), this.timer.enable("loading"), this.container.classList.remove("kplayer-paused"), this.container.classList.add("kplayer-playing"), this.awaken && this.awaken.play(), this.options.mutex)
|
|
2393
|
-
for (const i of
|
|
2390
|
+
for (const i of C)
|
|
2394
2391
|
this !== i && i.pause();
|
|
2395
2392
|
const t = this.container.querySelector(
|
|
2396
2393
|
".kplayer-mobile-play-btn .kplayer-icon-content"
|
|
@@ -2429,10 +2426,10 @@ class Ae {
|
|
|
2429
2426
|
this.events.on(e, t);
|
|
2430
2427
|
}
|
|
2431
2428
|
initMSE(e, t) {
|
|
2432
|
-
var a, l,
|
|
2429
|
+
var a, l, o, h, y, m, c, k;
|
|
2433
2430
|
if (this.type = t, (a = this.options.video.customType) != null && a[t]) {
|
|
2434
|
-
const
|
|
2435
|
-
typeof
|
|
2431
|
+
const r = this.options.video.customType[t];
|
|
2432
|
+
typeof r == "function" ? r(this.video, this) : console.error(`Illegal customType: ${t}`);
|
|
2436
2433
|
return;
|
|
2437
2434
|
}
|
|
2438
2435
|
let i = t;
|
|
@@ -2440,26 +2437,26 @@ class Ae {
|
|
|
2440
2437
|
const s = this.quality ? this.quality.url : e.src;
|
|
2441
2438
|
switch (i) {
|
|
2442
2439
|
case "hls": {
|
|
2443
|
-
const
|
|
2444
|
-
if (!
|
|
2440
|
+
const r = window.Hls;
|
|
2441
|
+
if (!r) {
|
|
2445
2442
|
this.notice("Error: Can't find Hls.");
|
|
2446
2443
|
return;
|
|
2447
2444
|
}
|
|
2448
|
-
if (!
|
|
2445
|
+
if (!r.isSupported()) {
|
|
2449
2446
|
this.notice("Error: Hls is not supported.");
|
|
2450
2447
|
return;
|
|
2451
2448
|
}
|
|
2452
2449
|
const p = ((l = this.options.pluginOptions) == null ? void 0 : l.hls) || {}, f = Te(
|
|
2453
|
-
|
|
2454
|
-
), v = new
|
|
2450
|
+
r
|
|
2451
|
+
), v = new r({
|
|
2455
2452
|
...p,
|
|
2456
2453
|
loader: f
|
|
2457
2454
|
});
|
|
2458
|
-
this.plugins.hls = v, v.loadSource(e.src), v.attachMedia(e), v.on(
|
|
2459
|
-
this.buildHlsQualityMenu(v), this.updateHlsQualityCurrentLabel();
|
|
2455
|
+
this.plugins.hls = v, v.loadSource(e.src), v.attachMedia(e), v.on(r.Events.MANIFEST_PARSED, () => {
|
|
2456
|
+
this.buildHlsQualityMenu(v, r), this.updateHlsQualityCurrentLabel();
|
|
2460
2457
|
}), v.on(
|
|
2461
|
-
|
|
2462
|
-
(
|
|
2458
|
+
r.Events.LEVEL_SWITCHED,
|
|
2459
|
+
(L, B) => {
|
|
2463
2460
|
this.hlsCurrentLevel = B.level, this.updateHlsQualityCurrentLabel();
|
|
2464
2461
|
}
|
|
2465
2462
|
), this.events.on("destroy", () => {
|
|
@@ -2468,18 +2465,18 @@ class Ae {
|
|
|
2468
2465
|
break;
|
|
2469
2466
|
}
|
|
2470
2467
|
case "flv": {
|
|
2471
|
-
const
|
|
2472
|
-
if (
|
|
2473
|
-
if (
|
|
2474
|
-
const p =
|
|
2468
|
+
const r = window.flvjs;
|
|
2469
|
+
if (r)
|
|
2470
|
+
if (r.isSupported()) {
|
|
2471
|
+
const p = r.createPlayer(
|
|
2475
2472
|
Object.assign(
|
|
2476
|
-
((
|
|
2473
|
+
((h = (o = this.options.pluginOptions) == null ? void 0 : o.flv) == null ? void 0 : h.mediaDataSource) || {},
|
|
2477
2474
|
{
|
|
2478
2475
|
type: "flv",
|
|
2479
2476
|
url: e.src
|
|
2480
2477
|
}
|
|
2481
2478
|
),
|
|
2482
|
-
(
|
|
2479
|
+
(m = (y = this.options.pluginOptions) == null ? void 0 : y.flv) == null ? void 0 : m.config
|
|
2483
2480
|
);
|
|
2484
2481
|
this.plugins.flvjs = p, p.attachMediaElement(e), p.load(), this.events.on("destroy", () => {
|
|
2485
2482
|
p.unload(), p.detachMediaElement(), p.destroy(), delete this.plugins.flvjs;
|
|
@@ -2494,26 +2491,26 @@ class Ae {
|
|
|
2494
2491
|
break;
|
|
2495
2492
|
}
|
|
2496
2493
|
case "dash": {
|
|
2497
|
-
const
|
|
2498
|
-
if (
|
|
2499
|
-
const p =
|
|
2500
|
-
p.initialize(e, e.src, !1, 0), p.updateSettings(((
|
|
2501
|
-
|
|
2494
|
+
const r = window.dashjs;
|
|
2495
|
+
if (r) {
|
|
2496
|
+
const p = r.MediaPlayer().create();
|
|
2497
|
+
p.initialize(e, e.src, !1, 0), p.updateSettings(((c = this.options.pluginOptions) == null ? void 0 : c.dash) || {}), this.plugins.dash = p, this.events.on("destroy", () => {
|
|
2498
|
+
r.MediaPlayer().reset(), delete this.plugins.dash;
|
|
2502
2499
|
}), this.events.on("quality_end", () => {
|
|
2503
2500
|
var f;
|
|
2504
|
-
s !== ((f = this.quality) == null ? void 0 : f.url) &&
|
|
2501
|
+
s !== ((f = this.quality) == null ? void 0 : f.url) && r.MediaPlayer().reset();
|
|
2505
2502
|
});
|
|
2506
2503
|
} else
|
|
2507
2504
|
this.notice("Error: Can't find dashjs.");
|
|
2508
2505
|
break;
|
|
2509
2506
|
}
|
|
2510
2507
|
case "webtorrent": {
|
|
2511
|
-
const
|
|
2512
|
-
if (
|
|
2513
|
-
if (
|
|
2508
|
+
const r = window.WebTorrent;
|
|
2509
|
+
if (r)
|
|
2510
|
+
if (r.WEBRTC_SUPPORT) {
|
|
2514
2511
|
this.container.classList.add("kplayer-loading");
|
|
2515
|
-
const p = new
|
|
2516
|
-
((
|
|
2512
|
+
const p = new r(
|
|
2513
|
+
((k = this.options.pluginOptions) == null ? void 0 : k.webtorrent) || {}
|
|
2517
2514
|
);
|
|
2518
2515
|
this.plugins.webtorrent = p;
|
|
2519
2516
|
const f = e.src;
|
|
@@ -2522,8 +2519,8 @@ class Ae {
|
|
|
2522
2519
|
() => this.container.classList.remove("kplayer-loading"),
|
|
2523
2520
|
{ once: !0 }
|
|
2524
2521
|
), p.add(f, (v) => {
|
|
2525
|
-
const
|
|
2526
|
-
|
|
2522
|
+
const L = v.files.find((B) => B.name.endsWith(".mp4"));
|
|
2523
|
+
L == null || L.renderTo(this.video, {
|
|
2527
2524
|
autoplay: this.options.autoplay,
|
|
2528
2525
|
controls: !1
|
|
2529
2526
|
});
|
|
@@ -2592,40 +2589,56 @@ class Ae {
|
|
|
2592
2589
|
e.textContent = i ? `${i.height}p` : "Manual";
|
|
2593
2590
|
}
|
|
2594
2591
|
}
|
|
2595
|
-
buildHlsQualityMenu(e) {
|
|
2592
|
+
buildHlsQualityMenu(e, t) {
|
|
2596
2593
|
var y;
|
|
2597
2594
|
if (!((y = e == null ? void 0 : e.levels) != null && y.length)) return;
|
|
2598
|
-
const
|
|
2599
|
-
e.levels.forEach((
|
|
2600
|
-
const
|
|
2601
|
-
|
|
2602
|
-
index:
|
|
2603
|
-
name:
|
|
2604
|
-
height:
|
|
2605
|
-
bitrate:
|
|
2595
|
+
const i = /* @__PURE__ */ new Set(), s = [];
|
|
2596
|
+
e.levels.forEach((m, c) => {
|
|
2597
|
+
const k = `${m.height}-${m.bitrate}`;
|
|
2598
|
+
i.has(k) || (i.add(k), s.push({
|
|
2599
|
+
index: c,
|
|
2600
|
+
name: m.height ? `${m.height}p` : `${Math.round((m.bitrate || 0) / 1e3)}kbps`,
|
|
2601
|
+
height: m.height || 0,
|
|
2602
|
+
bitrate: m.bitrate || 0
|
|
2606
2603
|
}));
|
|
2607
|
-
}),
|
|
2608
|
-
const
|
|
2604
|
+
}), s.sort((m, c) => c.height - m.height || c.bitrate - m.bitrate);
|
|
2605
|
+
const a = [{ index: -1, name: "Auto" }, ...s], l = this.container.querySelector(
|
|
2609
2606
|
".kplayer-quality-list"
|
|
2610
2607
|
);
|
|
2611
|
-
if (!
|
|
2612
|
-
|
|
2613
|
-
(
|
|
2614
|
-
|
|
2615
|
-
|
|
2616
|
-
|
|
2617
|
-
|
|
2608
|
+
if (!l) return;
|
|
2609
|
+
l.innerHTML = a.map(
|
|
2610
|
+
(m) => `
|
|
2611
|
+
<div class="kplayer-quality-item" data-level="${m.index}">
|
|
2612
|
+
<span class="kplayer-label">${m.name}</span>
|
|
2613
|
+
</div>
|
|
2614
|
+
`
|
|
2618
2615
|
).join("");
|
|
2619
|
-
const
|
|
2616
|
+
const o = l.querySelectorAll(".kplayer-quality-item"), h = this.container.querySelector(
|
|
2620
2617
|
"#kplayer-quality-current"
|
|
2621
2618
|
);
|
|
2622
|
-
|
|
2623
|
-
|
|
2624
|
-
var
|
|
2625
|
-
const
|
|
2626
|
-
e.currentLevel =
|
|
2619
|
+
o.forEach((m) => {
|
|
2620
|
+
m.addEventListener("click", () => {
|
|
2621
|
+
var p;
|
|
2622
|
+
const c = Number(m.dataset.level);
|
|
2623
|
+
e.currentLevel = c, e.nextLevel = c, e.loadLevel = c, o.forEach((f) => f.classList.remove("active")), m.classList.add("active");
|
|
2624
|
+
const k = ((p = m.textContent) == null ? void 0 : p.trim()) || "";
|
|
2625
|
+
h && (h.textContent = k), this.notice(
|
|
2626
|
+
`${this.tran("switching-quality").replace("%q", k)}`,
|
|
2627
|
+
-1,
|
|
2628
|
+
void 0,
|
|
2629
|
+
"switch-quality"
|
|
2630
|
+
);
|
|
2631
|
+
const r = () => {
|
|
2632
|
+
this.notice(
|
|
2633
|
+
`${this.tran("switched-quality").replace("%q", k)}`,
|
|
2634
|
+
2e3,
|
|
2635
|
+
void 0,
|
|
2636
|
+
"switch-quality"
|
|
2637
|
+
), e.off(t.Events.LEVEL_SWITCHED, r);
|
|
2638
|
+
};
|
|
2639
|
+
e.on(t.Events.LEVEL_SWITCHED, r);
|
|
2627
2640
|
});
|
|
2628
|
-
}),
|
|
2641
|
+
}), h && (h.textContent = "Auto");
|
|
2629
2642
|
}
|
|
2630
2643
|
switchQuality(e) {
|
|
2631
2644
|
var l;
|
|
@@ -2670,21 +2683,21 @@ class Ae {
|
|
|
2670
2683
|
), this.switchingQuality = !1, this.events.trigger("quality_end");
|
|
2671
2684
|
}
|
|
2672
2685
|
}), this.on("error", () => {
|
|
2673
|
-
var
|
|
2674
|
-
this.video.error && this.prevVideo && (this.template.videoWrap.removeChild(this.video), this.video = this.prevVideo, i || this.video.play(), this.qualityIndex = this.prevIndex, this.quality = (
|
|
2686
|
+
var o;
|
|
2687
|
+
this.video.error && this.prevVideo && (this.template.videoWrap.removeChild(this.video), this.video = this.prevVideo, i || this.video.play(), this.qualityIndex = this.prevIndex, this.quality = (o = this.options.video.quality) == null ? void 0 : o[this.qualityIndex ?? 0], this.prevVideo = void 0, this.switchingQuality = !1);
|
|
2675
2688
|
});
|
|
2676
2689
|
}
|
|
2677
2690
|
notice(e, t = 2e3, i = 0.8, s) {
|
|
2678
2691
|
let a;
|
|
2679
2692
|
if (s && (a = document.getElementById(`kplayer-notice-${s}`), a && (a.innerHTML = e), this.noticeList[s] && (clearTimeout(this.noticeList[s]), this.noticeList[s] = null)), !a) {
|
|
2680
|
-
const l =
|
|
2693
|
+
const l = F.NewNotice(e, i, s);
|
|
2681
2694
|
this.template.noticeList.appendChild(l), a = l;
|
|
2682
2695
|
}
|
|
2683
2696
|
this.events.trigger("notice_show", a), t > 0 && (this.noticeList[s || ""] = setTimeout(
|
|
2684
|
-
/* @__PURE__ */ ((l,
|
|
2697
|
+
/* @__PURE__ */ ((l, o) => () => {
|
|
2685
2698
|
l.addEventListener("animationend", () => {
|
|
2686
|
-
|
|
2687
|
-
}), l.classList.add("remove-notice"),
|
|
2699
|
+
o.template.noticeList.removeChild(l);
|
|
2700
|
+
}), l.classList.add("remove-notice"), o.events.trigger("notice_hide"), o.noticeList[s || ""] = null;
|
|
2688
2701
|
})(a, this),
|
|
2689
2702
|
t
|
|
2690
2703
|
));
|
|
@@ -2701,10 +2714,10 @@ class Ae {
|
|
|
2701
2714
|
}
|
|
2702
2715
|
destroy() {
|
|
2703
2716
|
var e;
|
|
2704
|
-
|
|
2717
|
+
C.splice(C.indexOf(this), 1), this.pause(), document.removeEventListener("click", this.docClickFun, !0), this.container.removeEventListener("click", this.containerClickFun, !0), this.fullScreen.destroy(), this.hotkey.destroy(), this.contextmenu.destroy(), this.controller.destroy(), this.timer.destroy(), this.video.src = "", this.container.innerHTML = "", (e = this.ad) == null || e.destroy(), this.events.trigger("destroy");
|
|
2705
2718
|
}
|
|
2706
2719
|
static get version() {
|
|
2707
|
-
return "1.0.
|
|
2720
|
+
return "1.0.3";
|
|
2708
2721
|
}
|
|
2709
2722
|
async _loadSubtitleTexts() {
|
|
2710
2723
|
var s;
|
|
@@ -2735,19 +2748,19 @@ class Ae {
|
|
|
2735
2748
|
return;
|
|
2736
2749
|
}
|
|
2737
2750
|
try {
|
|
2738
|
-
const
|
|
2751
|
+
const o = await R(
|
|
2739
2752
|
i.url,
|
|
2740
2753
|
t.encrypt,
|
|
2741
2754
|
t.key,
|
|
2742
2755
|
t.iv
|
|
2743
2756
|
);
|
|
2744
|
-
await ((a = this.subtitle) == null ? void 0 : a.loadVttText(
|
|
2745
|
-
} catch (
|
|
2746
|
-
console.warn("[KPlayer] Subtitle switch failed:",
|
|
2757
|
+
await ((a = this.subtitle) == null ? void 0 : a.loadVttText(o)), (l = this.subtitle) == null || l.show();
|
|
2758
|
+
} catch (o) {
|
|
2759
|
+
console.warn("[KPlayer] Subtitle switch failed:", o);
|
|
2747
2760
|
}
|
|
2748
2761
|
}
|
|
2749
2762
|
}
|
|
2750
2763
|
export {
|
|
2751
2764
|
Ae as default
|
|
2752
2765
|
};
|
|
2753
|
-
//# sourceMappingURL=kplayer.es.js.map
|
|
2766
|
+
//# sourceMappingURL=kplayer-ts.es.js.map
|