mirror of
https://github.com/zhw2590582/ArtPlayer.git
synced 2026-10-08 19:06:15 -08:00
8 lines
4.7 KiB
JavaScript
8 lines
4.7 KiB
JavaScript
|
|
/*!
|
|
* artplayer-plugin-vtt-thumbnail.js v1.0.3
|
|
* Github: https://github.com/zhw2590582/ArtPlayer
|
|
* (c) 2017-2025 Harvey Zack
|
|
* Released under the MIT License.
|
|
*/
|
|
!function(e,t,r,n,o,i,l,u){var f="undefined"!=typeof globalThis?globalThis:"undefined"!=typeof self?self:"undefined"!=typeof window?window:"undefined"!=typeof global?global:{},a="function"==typeof f[n]&&f[n],d=a.i||{},c=a.cache||{},s="undefined"!=typeof module&&"function"==typeof module.require&&module.require.bind(module);function p(t,r){if(!c[t]){if(!e[t]){if(o[t])return o[t];var i="function"==typeof f[n]&&f[n];if(!r&&i)return i(t,!0);if(a)return a(t,!0);if(s&&"string"==typeof t)return s(t);var l=Error("Cannot find module '"+t+"'");throw l.code="MODULE_NOT_FOUND",l}d.resolve=function(r){var n=e[t][1][r];return null!=n?n:r},d.cache={};var u=c[t]=new p.Module(t);e[t][0].call(u.exports,d,u,u.exports,f)}return c[t].exports;function d(e){var t=d.resolve(e);if(!1===t)return{};if(Array.isArray(t)){var r={__esModule:!0};return t.forEach(function(e){var t=e[0],n=e[1],o=e[2]||e[0],i=p(n);"*"===t?Object.keys(i).forEach(function(e){"default"===e||"__esModule"===e||Object.prototype.hasOwnProperty.call(r,e)||Object.defineProperty(r,e,{enumerable:!0,get:function(){return i[e]}})}):"*"===o?Object.defineProperty(r,t,{enumerable:!0,value:i}):Object.defineProperty(r,t,{enumerable:!0,get:function(){return"default"===o?i.__esModule?i.default:i:i[o]}})}),r}return p(t)}}p.isParcelRequire=!0,p.Module=function(e){this.id=e,this.bundle=p,this.require=s,this.exports={}},p.modules=e,p.cache=c,p.parent=a,p.distDir=void 0,p.publicUrl=void 0,p.devServer=void 0,p.i=d,p.register=function(t,r){e[t]=[function(e,t){t.exports=r},{}]},Object.defineProperty(p,"root",{get:function(){return f[n]}}),f[n]=p;for(var h=0;h<t.length;h++)p(t[h]);if(r){var y=p(r);"object"==typeof exports&&"undefined"!=typeof module?module.exports=y:"function"==typeof define&&define.amd&&define(function(){return y})}}({egVzc:[function(e,t,r,n){var o=e("@parcel/transformer-js/src/esmodule-helpers.js");o.defineInteropFlag(r),o.export(r,"default",()=>u);var i=e("./getVttArray"),l=o.interopDefault(i);function u(e){return async t=>{let{constructor:{utils:{setStyle:r,isMobile:n,addClass:o}},template:{$progress:i}}=t,u=null,f=await (0,l.default)(e.vtt);return t.controls.add({name:"vtt-thumbnail",position:"top",index:20,style:e.style||{},mounted(e){o(e,"art-control-thumbnails"),t.on("setBar",async(o,l,a)=>{let d="played"===o&&a&&n;if("hover"===o||d){let o=i.clientWidth*l,a=l*t.duration;r(e,"display","flex");let c=f.find(e=>a>=e.start&&a<=e.end);if(!c)return r(e,"display","none");if(o>0&&o<i.clientWidth)r(e,"backgroundImage",`url(${c.url})`),r(e,"height",`${c.h}px`),r(e,"width",`${c.w}px`),r(e,"backgroundPosition",`-${c.x}px -${c.y}px`),o<=c.w/2?r(e,"left",0):o>i.clientWidth-c.w/2?r(e,"left",`${i.clientWidth-c.w}px`):r(e,"left",`${o-c.w/2}px`);else n||r(e,"display","none");d&&(clearTimeout(u),u=setTimeout(()=>{r(e,"display","none")},500))}})}}),{name:"artplayerPluginVttThumbnail"}}}"undefined"!=typeof window&&(window.artplayerPluginVttThumbnail=u)},{"./getVttArray":"i9qdo","@parcel/transformer-js/src/esmodule-helpers.js":"loqXi"}],i9qdo:[function(e,t,r,n){var o=e("@parcel/transformer-js/src/esmodule-helpers.js");function i(e){var t,r,n;let o=e.split("."),i=o[0].split(":")||[],l=Number((t=o[1]||"0",r=3,n="0",t.length>r?String(t):((r-=t.length)>n.length&&(n+=n.repeat(r/n.length)),String(t)+n.slice(0,r))))/1e3;return 3600*Number(i[i.length-3]||0)+60*Number(i[i.length-2]||0)+Number(i[i.length-1]||0)+l}async function l(e=""){let t=(await (await fetch(e)).text()).split(/[\n\r]/g).filter(e=>e.trim()),r=[];for(let n=1;n<t.length;n+=2){let o=t[n],l=t[n+1];if(!l.trim())continue;let u=/((?:\d{2}:)?(?:\d{2}:)?\d{2}(?:.\d{3})?) ?-->?((?:\d{2}:)?(?:\d{2}:)?\d{2}(?:.\d{3})?)/,f=o.match(u),a=/(.*)#(\w{4})=(.*)/,d=l.match(a),c=Math.floor(i(f[1])),s=Math.floor(i(f[2])),p=d[1];if(!/^\/|(?:https?|ftp|file):\/\//i.test(p)){let t=e.split("/");t.pop(),t.push(p),p=t.join("/")}let h={start:c,end:s,url:p},y=d[2].split(""),m=d[3].split(",");for(let e=0;e<y.length;e++)h[y[e]]=m[e];r.push(h)}return r}o.defineInteropFlag(r),o.export(r,"default",()=>l)},{"@parcel/transformer-js/src/esmodule-helpers.js":"loqXi"}],loqXi:[function(e,t,r,n){r.interopDefault=function(e){return e&&e.__esModule?e:{default:e}},r.defineInteropFlag=function(e){Object.defineProperty(e,"__esModule",{value:!0})},r.exportAll=function(e,t){return Object.keys(e).forEach(function(r){"default"===r||"__esModule"===r||Object.prototype.hasOwnProperty.call(t,r)||Object.defineProperty(t,r,{enumerable:!0,get:function(){return e[r]}})}),t},r.export=function(e,t,r){Object.defineProperty(e,t,{enumerable:!0,get:r})}},{}]},["egVzc"],"egVzc","parcelRequire4dc0",{});let{default:e}=parcelRequire4dc0("egVzc");export{e as default}; |