mirror of
https://github.com/zhw2590582/ArtPlayer.git
synced 2026-10-09 03:46:16 -08:00
feat: Fix dropdown menu bug in dev.js and build.js
This commit is contained in:
1 parent
1192f18de6
commit
73bafc988a
10 files changed
+95
-91
No files matched your search
@@ -9,6 +9,7 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
|
||||
- 优化 `setBar` 事件
|
||||
- 新增 `artplayerPluginChapter` 插件
|
||||
- 新增 `art.plugins.artplayerPluginDanmuku.load(target)` 参数,用于追加弹幕库
|
||||
- 修复 `artplayerPluginVttThumbnail` 在移动端不显示的问题
|
||||
- 修复弹幕插件样式,和字号百分比显示的 `bug`
|
||||
- 移动端也可以看到 `thumbnails` 了
|
||||
|
||||
|
||||
@@ -142,24 +142,25 @@
|
||||
this[globalName] = mainExports;
|
||||
}
|
||||
}
|
||||
})({"1gq8W":[function(require,module,exports) {
|
||||
})({"eYYuT":[function(require,module,exports) {
|
||||
var parcelHelpers = require("@parcel/transformer-js/src/esmodule-helpers.js");
|
||||
parcelHelpers.defineInteropFlag(exports);
|
||||
parcelHelpers.export(exports, "default", ()=>artplayerPluginVttThumbnail);
|
||||
var _getVttArray = require("./getVttArray");
|
||||
var _getVttArrayDefault = parcelHelpers.interopDefault(_getVttArray);
|
||||
function artplayerPluginVttThumbnail(option) {
|
||||
return async (art)=>{
|
||||
const { constructor: { utils: { setStyle , clamp } } , template: { $progress } , events: { proxy } } = art;
|
||||
const vttArray = await (0, _getVttArrayDefault.default)(option.vtt);
|
||||
function getPosFromEvent(art, event) {
|
||||
const { $progress } = art.template;
|
||||
const { left } = $progress.getBoundingClientRect();
|
||||
const width = clamp(event.pageX - left, 0, $progress.clientWidth);
|
||||
const second = width / $progress.clientWidth * art.duration;
|
||||
return {
|
||||
width,
|
||||
second
|
||||
};
|
||||
const { constructor: { utils: { setStyle, isMobile } }, template: { $progress } } = art;
|
||||
let timer = null;
|
||||
const thumbnails = await (0, _getVttArrayDefault.default)(option.vtt);
|
||||
function showThumbnails($control, find, width) {
|
||||
setStyle($control, "backgroundImage", `url(${find.url})`);
|
||||
setStyle($control, "height", `${find.h}px`);
|
||||
setStyle($control, "width", `${find.w}px`);
|
||||
setStyle($control, "backgroundPosition", `-${find.x}px -${find.y}px`);
|
||||
if (width <= find.w / 2) setStyle($control, "left", 0);
|
||||
else if (width > $progress.clientWidth - find.w / 2) setStyle($control, "left", `${$progress.clientWidth - find.w}px`);
|
||||
else setStyle($control, "left", `${width - find.w / 2}px`);
|
||||
}
|
||||
art.controls.add({
|
||||
name: "thumbnails",
|
||||
@@ -167,24 +168,23 @@ function artplayerPluginVttThumbnail(option) {
|
||||
index: 20,
|
||||
style: option.style || {},
|
||||
mounted ($control) {
|
||||
proxy($progress, "mousemove", async (event)=>{
|
||||
setStyle($control, "display", "block");
|
||||
const { second , width } = getPosFromEvent(art, event);
|
||||
const find = vttArray.find((item)=>second >= item.start && second <= item.end);
|
||||
if (!find) return setStyle($control, "display", "none");
|
||||
setStyle($control, "backgroundImage", `url(${find.url})`);
|
||||
setStyle($control, "height", `${find.h}px`);
|
||||
setStyle($control, "width", `${find.w}px`);
|
||||
setStyle($control, "backgroundPosition", `-${find.x}px -${find.y}px`);
|
||||
if (width <= find.w / 2) setStyle($control, "left", 0);
|
||||
else if (width > $progress.clientWidth - find.w / 2) setStyle($control, "left", `${$progress.clientWidth - find.w}px`);
|
||||
else setStyle($control, "left", `${width - find.w / 2}px`);
|
||||
});
|
||||
proxy($progress, "mouseleave", ()=>{
|
||||
setStyle($control, "display", "none");
|
||||
});
|
||||
art.on("hover", (state)=>{
|
||||
if (!state) setStyle($control, "display", "none");
|
||||
art.on("setBar", async (type, percentage, event)=>{
|
||||
const isMobileDroging = type === "played" && event && isMobile;
|
||||
if (type === "hover" || isMobileDroging) {
|
||||
const width = $progress.clientWidth * percentage;
|
||||
const second = percentage * art.duration;
|
||||
setStyle($control, "display", "flex");
|
||||
const find = thumbnails.find((item)=>second >= item.start && second <= item.end);
|
||||
if (!find) return setStyle($control, "display", "none");
|
||||
if (width > 0 && width < $progress.clientWidth) showThumbnails($control, find, width);
|
||||
else if (!isMobile) setStyle($control, "display", "none");
|
||||
if (isMobileDroging) {
|
||||
clearTimeout(timer);
|
||||
timer = setTimeout(()=>{
|
||||
setStyle($control, "display", "none");
|
||||
}, 500);
|
||||
}
|
||||
}
|
||||
});
|
||||
}
|
||||
});
|
||||
@@ -193,15 +193,12 @@ function artplayerPluginVttThumbnail(option) {
|
||||
};
|
||||
};
|
||||
}
|
||||
exports.default = artplayerPluginVttThumbnail;
|
||||
artplayerPluginVttThumbnail.env = "development";
|
||||
artplayerPluginVttThumbnail.version = "1.0.0";
|
||||
artplayerPluginVttThumbnail.build = "2023-04-23 09:57:46";
|
||||
if (typeof window !== "undefined") window["artplayerPluginVttThumbnail"] = artplayerPluginVttThumbnail;
|
||||
|
||||
},{"./getVttArray":"gSM1I","@parcel/transformer-js/src/esmodule-helpers.js":"5dUr6"}],"gSM1I":[function(require,module,exports) {
|
||||
},{"./getVttArray":"cKvoV","@parcel/transformer-js/src/esmodule-helpers.js":"kBreb"}],"cKvoV":[function(require,module,exports) {
|
||||
var parcelHelpers = require("@parcel/transformer-js/src/esmodule-helpers.js");
|
||||
parcelHelpers.defineInteropFlag(exports);
|
||||
parcelHelpers.export(exports, "default", ()=>getVttArray);
|
||||
function padEnd(str, targetLength, padString) {
|
||||
if (str.length > targetLength) return String(str);
|
||||
else {
|
||||
@@ -234,10 +231,14 @@ async function getVttArray(vttUrl = "") {
|
||||
const textMatch = text.match(textReg);
|
||||
const start = Math.floor(t2d(timeMatch[1]));
|
||||
const end = Math.floor(t2d(timeMatch[2]));
|
||||
const urlArr = vttUrl.split("/");
|
||||
urlArr.pop();
|
||||
urlArr.push(textMatch[1]);
|
||||
const url = urlArr.join("/");
|
||||
let url = textMatch[1];
|
||||
const isAbsoluteUrl = /^\/|((https?|ftp|file):\/\/)/i.test(url);
|
||||
if (!isAbsoluteUrl) {
|
||||
const urlArr = vttUrl.split("/");
|
||||
urlArr.pop();
|
||||
urlArr.push(url);
|
||||
url = urlArr.join("/");
|
||||
}
|
||||
const result = {
|
||||
start,
|
||||
end,
|
||||
@@ -250,9 +251,8 @@ async function getVttArray(vttUrl = "") {
|
||||
}
|
||||
return vttArray;
|
||||
}
|
||||
exports.default = getVttArray;
|
||||
|
||||
},{"@parcel/transformer-js/src/esmodule-helpers.js":"5dUr6"}],"5dUr6":[function(require,module,exports) {
|
||||
},{"@parcel/transformer-js/src/esmodule-helpers.js":"kBreb"}],"kBreb":[function(require,module,exports) {
|
||||
exports.interopDefault = function(a) {
|
||||
return a && a.__esModule ? a : {
|
||||
default: a
|
||||
@@ -265,7 +265,7 @@ exports.defineInteropFlag = function(a) {
|
||||
};
|
||||
exports.exportAll = function(source, dest) {
|
||||
Object.keys(source).forEach(function(key) {
|
||||
if (key === "default" || key === "__esModule" || dest.hasOwnProperty(key)) return;
|
||||
if (key === "default" || key === "__esModule" || Object.prototype.hasOwnProperty.call(dest, key)) return;
|
||||
Object.defineProperty(dest, key, {
|
||||
enumerable: true,
|
||||
get: function() {
|
||||
@@ -282,6 +282,6 @@ exports.export = function(dest, destName, get) {
|
||||
});
|
||||
};
|
||||
|
||||
},{}]},["1gq8W"], "1gq8W", "parcelRequire4dc0")
|
||||
},{}]},["eYYuT"], "eYYuT", "parcelRequire94c2")
|
||||
|
||||
//# sourceMappingURL=index.js.map
|
||||
@@ -1 +1 @@
|
||||
{"mappings":"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","sources":["packages/artplayer-plugin-vtt-thumbnail/src/index.js","packages/artplayer-plugin-vtt-thumbnail/src/getVttArray.js","node_modules/@parcel/transformer-js/src/esmodule-helpers.js"],"sourcesContent":["import getVttArray from './getVttArray';\n\nexport default function artplayerPluginVttThumbnail(option) {\n return async (art) => {\n const {\n constructor: {\n utils: { setStyle, clamp },\n },\n template: { $progress },\n events: { proxy },\n } = art;\n\n const vttArray = await getVttArray(option.vtt);\n\n function getPosFromEvent(art, event) {\n const { $progress } = art.template;\n const { left } = $progress.getBoundingClientRect();\n const width = clamp(event.pageX - left, 0, $progress.clientWidth);\n const second = (width / $progress.clientWidth) * art.duration;\n return { width, second };\n }\n\n art.controls.add({\n name: 'thumLine truncated
|
||||
{"mappings":"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","sources":["Desktop/github/ArtPlayer/packages/artplayer-plugin-vtt-thumbnail/src/index.js","Desktop/github/ArtPlayer/packages/artplayer-plugin-vtt-thumbnail/src/getVttArray.js","Desktop/github/ArtPlayer/node_modules/@parcel/transformer-js/src/esmodule-helpers.js"],"sourcesContent":["import getVttArray from './getVttArray';\n\nexport default function artplayerPluginVttThumbnail(option) {\n return async (art) => {\n const {\n constructor: {\n utils: { setStyle, isMobile },\n },\n template: { $progress },\n } = art;\n\n let timer = null;\n const thumbnails = await getVttArray(option.vtt);\n\n function showThumbnails($control, find, width) {\n setStyle($control, 'backgroundImage', `url(${find.url})`);\n setStyle($control, 'height', `${find.h}px`);\n setStyle($control, 'width', `${find.w}px`);\n setStyle($control, 'backgroundPosition', `-${find.x}px -${find.y}px`);\n if (width <= find.w / 2) {\n setStyle($control, 'left', 0);\n } else if (width > $progress.clientWidth - find.w / 2) {\n setStyle($control, 'left'Line truncated
|
||||
@@ -142,7 +142,7 @@
|
||||
this[globalName] = mainExports;
|
||||
}
|
||||
}
|
||||
})({"gEVO5":[function(require,module,exports) {
|
||||
})({"1uFaH":[function(require,module,exports) {
|
||||
var parcelHelpers = require("@parcel/transformer-js/src/esmodule-helpers.js");
|
||||
parcelHelpers.defineInteropFlag(exports);
|
||||
var _emitter = require("./emitter");
|
||||
@@ -182,7 +182,7 @@ class ArtplayerToolThumbnail extends (0, _emitterDefault.default) {
|
||||
}
|
||||
setup(option = {}) {
|
||||
this.option = Object.assign({}, this.option, option);
|
||||
const { fileInput , number , width , column } = this.option;
|
||||
const { fileInput, number, width, column } = this.option;
|
||||
this.errorHandle(fileInput instanceof Element, "The 'fileInput' is not a Element");
|
||||
if (!(fileInput.tagName === "INPUT" && fileInput.type === "file")) {
|
||||
fileInput.style.position = "relative";
|
||||
@@ -242,7 +242,7 @@ class ArtplayerToolThumbnail extends (0, _emitterDefault.default) {
|
||||
}
|
||||
start() {
|
||||
if (!this.video.duration) return (0, _utils.sleep)(1000).then(()=>this.start());
|
||||
const { width , number , begin , end } = this.option;
|
||||
const { width, number, begin, end } = this.option;
|
||||
const height = this.video.videoHeight / this.video.videoWidth * width;
|
||||
this.option.height = height;
|
||||
this.option.begin = (0, _utils.clamp)(begin, 0, this.video.duration);
|
||||
@@ -283,7 +283,7 @@ class ArtplayerToolThumbnail extends (0, _emitterDefault.default) {
|
||||
});
|
||||
}
|
||||
creatScreenshotDate() {
|
||||
const { number , width , height , column , begin } = this.option;
|
||||
const { number, width, height, column, begin } = this.option;
|
||||
const timeGap = this.duration / number;
|
||||
const timePoints = [
|
||||
begin + timeGap
|
||||
@@ -299,7 +299,7 @@ class ArtplayerToolThumbnail extends (0, _emitterDefault.default) {
|
||||
}));
|
||||
}
|
||||
creatCanvas() {
|
||||
const { number , width , height , column } = this.option;
|
||||
const { number, width, height, column } = this.option;
|
||||
const canvas = document.createElement("canvas");
|
||||
const context2D = canvas.getContext("2d");
|
||||
canvas.width = width * column;
|
||||
@@ -343,7 +343,7 @@ class ArtplayerToolThumbnail extends (0, _emitterDefault.default) {
|
||||
exports.default = ArtplayerToolThumbnail;
|
||||
window["ArtplayerToolThumbnail"] = ArtplayerToolThumbnail;
|
||||
|
||||
},{"./emitter":"2ZQK0","./utils":"5vF3n","@parcel/transformer-js/src/esmodule-helpers.js":"8MjWm"}],"2ZQK0":[function(require,module,exports) {
|
||||
},{"./emitter":"lQHUa","./utils":"kMfwO","@parcel/transformer-js/src/esmodule-helpers.js":"kBreb"}],"lQHUa":[function(require,module,exports) {
|
||||
var parcelHelpers = require("@parcel/transformer-js/src/esmodule-helpers.js");
|
||||
parcelHelpers.defineInteropFlag(exports);
|
||||
class Emitter {
|
||||
@@ -383,7 +383,7 @@ class Emitter {
|
||||
}
|
||||
exports.default = Emitter;
|
||||
|
||||
},{"@parcel/transformer-js/src/esmodule-helpers.js":"8MjWm"}],"8MjWm":[function(require,module,exports) {
|
||||
},{"@parcel/transformer-js/src/esmodule-helpers.js":"kBreb"}],"kBreb":[function(require,module,exports) {
|
||||
exports.interopDefault = function(a) {
|
||||
return a && a.__esModule ? a : {
|
||||
default: a
|
||||
@@ -396,7 +396,7 @@ exports.defineInteropFlag = function(a) {
|
||||
};
|
||||
exports.exportAll = function(source, dest) {
|
||||
Object.keys(source).forEach(function(key) {
|
||||
if (key === "default" || key === "__esModule" || dest.hasOwnProperty(key)) return;
|
||||
if (key === "default" || key === "__esModule" || Object.prototype.hasOwnProperty.call(dest, key)) return;
|
||||
Object.defineProperty(dest, key, {
|
||||
enumerable: true,
|
||||
get: function() {
|
||||
@@ -413,7 +413,7 @@ exports.export = function(dest, destName, get) {
|
||||
});
|
||||
};
|
||||
|
||||
},{}],"5vF3n":[function(require,module,exports) {
|
||||
},{}],"kMfwO":[function(require,module,exports) {
|
||||
var parcelHelpers = require("@parcel/transformer-js/src/esmodule-helpers.js");
|
||||
parcelHelpers.defineInteropFlag(exports);
|
||||
parcelHelpers.export(exports, "sleep", ()=>sleep);
|
||||
@@ -435,6 +435,6 @@ function clamp(num, a, b) {
|
||||
return Math.max(Math.min(num, Math.max(a, b)), Math.min(a, b));
|
||||
}
|
||||
|
||||
},{"@parcel/transformer-js/src/esmodule-helpers.js":"8MjWm"}]},["gEVO5"], "gEVO5", "parcelRequire7b4c")
|
||||
},{"@parcel/transformer-js/src/esmodule-helpers.js":"kBreb"}]},["1uFaH"], "1uFaH", "parcelRequire94c2")
|
||||
|
||||
//# sourceMappingURL=index.js.map
|
||||
@@ -1 +1 @@
|
||||
{"mappings":"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 truncated
|
||||
{"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;;AACA;AAEe,MAAM,+BAA+B,CAAA,GAAA,uBAAO,AAAD;IACtD,YAAY,SAAS,CAAC,CAAC,CAAE;QACrB,KAAK;QACL,IAAI,CAAC,UAAU,GAAG;QAClB,IAAI,CAAC,MAAM,GAAG,CAAC;QACf,IAAI,CAAC,KAAK,CAAC,OAAO,MAAM,CAAC,CAAC,GAAG,uBAAuB,QAAQ,EAAE;QAC9D,IAAI,CAAC,KAAK,GAAG,uBAAuB,UAAU;QAC9C,IAAI,CAAC,QAAQ,GAAG;QAChB,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,IAAI;QAC7C,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI;QACnC,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,gBAAgB,CAAC,UAAU,IAAI,CAAC,WAAW;QACjE,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,gBAAgB,CAAC,YAAY,uBAAuB,UAAU;QACpF,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,gBAAgB,CAAC,QAAQ,uBAAuB,MAAM;IAChF;IAEA,WAAW,WAAW;QAClB,OAAO;YACH,QAAQ;YACR,OAAO;YACP,QAAQ;YACR,QAAQ;YACR,OAAO;YACP,KAAK;QACT;IACJ;IAEA,OAAO,WAAW,KAAK,EAAE;QACrB,MAAM,cAAc;IACxB;IAEA,OAAO,KAAK,EAAE;QACV,MAAM,cAAc;QACpB,MAAM,OAAO,MAAM,YAAY,CAAC,KAAK,CAAC,EAAE;QACxC,IAAI,CAAC,SAAS,CAAC;IACnB;IAEA,MAAM,SAAS,CAAC,CAAC,EAAE;QACf,IAAI,CAAC,MAAM,GAAG,OAAO,MAAM,CAAC,CAAC,GAAG,IAAI,CAAC,MAAM,EAAE;QAC7C,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,IAAI,CAAC,MAAM;QAExD,IAAI,CAAC,WAAW,CAAC,qBAAqB,SAAS;QAE/C,IAAI,CAAE,CAAA,UAAU,OAAO,KAAK,WAAW,UAAU,IAAI,KAAK,MAAK,GAAI;YAC/D,UAAU,KAAK,CAAC,QAAQ,GAAG;YAC3B,MAAM,eAAe,SAAS,aAAa,CAAC;YAC5C,aAAa,IAAI,GAAG;YACpB,aAAa,KAAK,CAAC,QAAQ,GAAG;YAC9B,aAAa,KAAK,CAAC,KAAK,GAAG;YAC3B,aAAa,KAAK,CAAC,MAAM,GAAG;YAC5B,aAAa,KAAK,CAAC,IAAI,GAAG;YAC1B,aAAa,KAAK,CAAC,GAAG,GAAG;YACzB,aAAa,KAAK,CAAC,KAAK,GAAG;YAC3B,aAAa,KAAK,CAAC,MAAM,GAAG;YAC5B,aAAa,KAAK,CAAC,OAAO,GAAG;YAC7B,UAAU,WAAW,CAAC;YACtB,IAAI,CAAC,MAAM,CAAC,SAAS,GAAG;QAC5B;QAEA;YAAC;YAAU;YAAS;YAAU;YAAS;SAAM,CAAC,OAAO,CAAC,CAAC;YACnD,IAAI,CAAC,WAAW,CAAC,OAAO,IAAI,CAAC,MAAM,CAAC,KAAK,KAAK,UAAU,CAAC,KAAK,EAAE,KAAK,iBAAiB,CAAC;QAC3F;QAEA,IAAI,CAAC,MAAM,CAAC,MAAM,GAAG,CAAA,GAAA,YAAK,AAAD,EAAE,QAAQ,IAAI;QACvC,IAAI,CAAC,MAAM,CAAC,KAAK,GAAG,CAAA,GAAA,YAAK,AAAD,EAAE,OAAO,IAAI;QACrC,IAAI,CAAC,MAAM,CAAC,MAAM,GAAG,CAAA,GAAA,YAAK,AAAD,EAAE,QAAQ,GAAG;QACtC,OAAO,IAAI;IACf;IAEA,OAAO,aAAa;QAChB,MAAM,QAAQ,SAAS,aAAa,CAAC;QACrC,MAAM,KAAK,CAAC,QAAQ,GAAG;QACvB,MAAM,KAAK,CAAC,GAAG,GAAG;QAClB,MAAM,KAAK,CAAC,IAAI,GAAG;QACnB,MAAM,KAAK,GAAG;QACd,MAAM,QAAQ,GAAG;QACjB,SAAS,IAAI,CAAC,WAAW,CAAC;QAC1B,OAAO;IACX;IAEA,YAAY,KAAK,EAAE;QACf,MAAM,OAAO,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,KAAK,CAAC,EAAE;QAC3C,IAAI,CAAC,SAAS,CAAC;QACf,MAAM,MAAM,CAAC,KAAK,GAAG;IACzB;IAEA,UAAU,IAAI,EAAE;QACZ,IAAI,MAAM;YACN,MAAM,cAAc,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,KAAK,IAAI;YACpD,IAAI,CAAC,WAAW,CACZ,gBAAgB,WAAW,gBAAgB,YAC3C,CAAC,+CAA+C,EAAE,KAAK,IAAI,CAAC,CAAC;YAEjE,MAAM,WAAW,IAAI,eAAe,CAAC;YACrC,IAAI,CAAC,QAAQ,GAAG;YAChB,IAAI,CAAC,IAAI,GAAG;YACZ,IAAI,CAAC,IAAI,CAAC,QAAQ,IAAI,CAAC,IAAI;YAC3B,IAAI,CAAC,KAAK,CAAC,GAAG,GAAG;YACjB,IAAI,CAAC,IAAI,CAAC,SAAS,IAAI,CAAC,KAAK;QACjC;IACJ;IAEA,QAAQ;QACJ,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,QAAQ,EAAE,OAAO,CAAA,GAAA,YAAK,AAAD,EAAE,MAAM,IAAI,CAAC,IAAM,IAAI,CAAC,KAAK;QAClE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,GAAG,EAAE,GAAG,IAAI,CAAC,MAAM;QACjD,MAAM,SAAS,AAAC,IAAI,CAAC,KAAK,CAAC,WAAW,GAAG,IAAI,CAAC,KAAK,CAAC,UAAU,GAAI;QAClE,IAAI,CAAC,MAAM,CAAC,MAAM,GAAG;QACrB,IAAI,CAAC,MAAM,CAAC,KAAK,GAAG,CAAA,GAAA,YAAK,AAAD,EAAE,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,QAAQ;QACvD,IAAI,CAAC,MAAM,CAAC,GAAG,GAAG,CAAA,GAAA,YAAK,AAAD,EAAE,OAAO,IAAI,CAAC,KAAK,CAAC,QAAQ,EAAE,OAAO,IAAI,CAAC,KAAK,CAAC,QAAQ;QAC9E,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,MAAM,CAAC,GAAG,GAAG,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC,4CAA4C,CAAC;QACpG,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,MAAM,CAAC,GAAG,GAAG,IAAI,CAAC,MAAM,CAAC,KAAK;QACnD,IAAI,CAAC,OAAO,GAAG,SAAS,IAAI,CAAC,QAAQ;QACrC,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,KAAK,EAAE;QAC1C,IAAI,CAAC,WAAW,CAAC,CAAC,IAAI,CAAC,UAAU,EAAE;QACnC,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,OAAO,IAAI,GAAG,CAAC,sDAAsD,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC;QAC3G,MAAM,iBAAiB,IAAI,CAAC,mBAAmB;QAC/C,MAAM,SAAS,IAAI,CAAC,WAAW;QAC/B,MAAM,YAAY,OAAO,UAAU,CAAC;QACpC,IAAI,CAAC,IAAI,CAAC,UAAU;QACpB,MAAM,cAAc,eAAe,GAAG,CAAC,CAAC,MAAM,QAAU;gBACpD,OAAO,IAAI,QAAQ,CAAC;oBAChB,IAAI,CAAC,KAAK,CAAC,SAAS,GAAG;wBACnB,UAAU,SAAS,CAAC,IAAI,CAAC,KAAK,EAAE,KAAK,CAAC,EAAE,KAAK,CAAC,EAAE,OAAO;wBACvD,OAAO,MAAM,CAAC,CAAC;4BACX,IAAI,IAAI,CAAC,YAAY,EACjB,IAAI,eAAe,CAAC,IAAI,CAAC,YAAY;4BAEzC,IAAI,CAAC,YAAY,GAAG,IAAI,eAAe,CAAC;4BACxC,IAAI,CAAC,IAAI,CAAC,UAAU,IAAI,CAAC,YAAY,EAAE,AAAC,CAAA,QAAQ,CAAA,IAAK;4BACrD,IAAI,CAAC,KAAK,CAAC,SAAS,GAAG;4BACvB;wBACJ;oBACJ;oBACA,IAAI,CAAC,KAAK,CAAC,WAAW,GAAG,KAAK,IAAI;gBACtC;YACJ;QACA,IAAI,CAAC,UAAU,GAAG;QAClB,OAAO,CAAA,GAAA,0BAAmB,AAAD,EAAE,aACtB,IAAI,CAAC;YACF,IAAI,CAAC,UAAU,GAAG;YAClB,IAAI,CAAC,IAAI,CAAC;QACd,GACC,KAAK,CAAC,CAAC;YACJ,IAAI,CAAC,UAAU,GAAG;YAClB,IAAI,CAAC,IAAI,CAAC,SAAS,IAAI,OAAO;YAC9B,MAAM;QACV;IACR;IAEA,sBAAsB;QAClB,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,GAAG,IAAI,CAAC,MAAM;QAC5D,MAAM,UAAU,IAAI,CAAC,QAAQ,GAAG;QAChC,MAAM,aAAa;YAAC,QAAQ;SAAQ;QACpC,MAAO,WAAW,MAAM,GAAG,OAAQ;YAC/B,MAAM,OAAO,UAAU,CAAC,WAAW,MAAM,GAAG,EAAE;YAC9C,WAAW,IAAI,CAAC,OAAO;QAC3B;QACA,OAAO,WAAW,GALine truncated
|
||||
@@ -1,6 +1,6 @@
|
||||
{
|
||||
"license": "MIT",
|
||||
"version": "1.0.0",
|
||||
"version": "1.0.1",
|
||||
"name": "artplayer-plugin-vtt-thumbnail",
|
||||
"types": "types/artplayer-plugin-vtt-thumbnail.d.ts",
|
||||
"description": "vtt thumbnail plugin for ArtPlayer",
|
||||
@@ -21,4 +21,4 @@
|
||||
"video",
|
||||
"player"
|
||||
]
|
||||
}
|
||||
}
|
||||
@@ -4,20 +4,26 @@ export default function artplayerPluginVttThumbnail(option) {
|
||||
return async (art) => {
|
||||
const {
|
||||
constructor: {
|
||||
utils: { setStyle, clamp },
|
||||
utils: { setStyle, isMobile },
|
||||
},
|
||||
template: { $progress },
|
||||
events: { proxy },
|
||||
} = art;
|
||||
|
||||
const vttArray = await getVttArray(option.vtt);
|
||||
let timer = null;
|
||||
const thumbnails = await getVttArray(option.vtt);
|
||||
|
||||
function getPosFromEvent(art, event) {
|
||||
const { $progress } = art.template;
|
||||
const { left } = $progress.getBoundingClientRect();
|
||||
const width = clamp(event.pageX - left, 0, $progress.clientWidth);
|
||||
const second = (width / $progress.clientWidth) * art.duration;
|
||||
return { width, second };
|
||||
function showThumbnails($control, find, width) {
|
||||
setStyle($control, 'backgroundImage', `url(${find.url})`);
|
||||
setStyle($control, 'height', `${find.h}px`);
|
||||
setStyle($control, 'width', `${find.w}px`);
|
||||
setStyle($control, 'backgroundPosition', `-${find.x}px -${find.y}px`);
|
||||
if (width <= find.w / 2) {
|
||||
setStyle($control, 'left', 0);
|
||||
} else if (width > $progress.clientWidth - find.w / 2) {
|
||||
setStyle($control, 'left', `${$progress.clientWidth - find.w}px`);
|
||||
} else {
|
||||
setStyle($control, 'left', `${width - find.w / 2}px`);
|
||||
}
|
||||
}
|
||||
|
||||
art.controls.add({
|
||||
@@ -26,33 +32,31 @@ export default function artplayerPluginVttThumbnail(option) {
|
||||
index: 20,
|
||||
style: option.style || {},
|
||||
mounted($control) {
|
||||
proxy($progress, 'mousemove', async (event) => {
|
||||
setStyle($control, 'display', 'block');
|
||||
const { second, width } = getPosFromEvent(art, event);
|
||||
const find = vttArray.find((item) => second >= item.start && second <= item.end);
|
||||
if (!find) return setStyle($control, 'display', 'none');
|
||||
art.on('setBar', async (type, percentage, event) => {
|
||||
const isMobileDroging = type === 'played' && event && isMobile;
|
||||
|
||||
setStyle($control, 'backgroundImage', `url(${find.url})`);
|
||||
setStyle($control, 'height', `${find.h}px`);
|
||||
setStyle($control, 'width', `${find.w}px`);
|
||||
setStyle($control, 'backgroundPosition', `-${find.x}px -${find.y}px`);
|
||||
if (type === 'hover' || isMobileDroging) {
|
||||
const width = $progress.clientWidth * percentage;
|
||||
const second = percentage * art.duration;
|
||||
setStyle($control, 'display', 'flex');
|
||||
|
||||
if (width <= find.w / 2) {
|
||||
setStyle($control, 'left', 0);
|
||||
} else if (width > $progress.clientWidth - find.w / 2) {
|
||||
setStyle($control, 'left', `${$progress.clientWidth - find.w}px`);
|
||||
} else {
|
||||
setStyle($control, 'left', `${width - find.w / 2}px`);
|
||||
}
|
||||
});
|
||||
const find = thumbnails.find((item) => second >= item.start && second <= item.end);
|
||||
if (!find) return setStyle($control, 'display', 'none');
|
||||
|
||||
proxy($progress, 'mouseleave', () => {
|
||||
setStyle($control, 'display', 'none');
|
||||
});
|
||||
if (width > 0 && width < $progress.clientWidth) {
|
||||
showThumbnails($control, find, width);
|
||||
} else {
|
||||
if (!isMobile) {
|
||||
setStyle($control, 'display', 'none');
|
||||
}
|
||||
}
|
||||
|
||||
art.on('hover', (state) => {
|
||||
if (!state) {
|
||||
setStyle($control, 'display', 'none');
|
||||
if (isMobileDroging) {
|
||||
clearTimeout(timer);
|
||||
timer = setTimeout(() => {
|
||||
setStyle($control, 'display', 'none');
|
||||
}, 500);
|
||||
}
|
||||
}
|
||||
});
|
||||
},
|
||||
|
||||
@@ -111,7 +111,6 @@ async function runBuild() {
|
||||
choices: Object.keys(projects).map((name) => ({
|
||||
title: name,
|
||||
value: name,
|
||||
description: projects[name],
|
||||
})),
|
||||
initial: 0,
|
||||
});
|
||||
|
||||
@@ -85,7 +85,6 @@ async function develop(name) {
|
||||
choices: Object.keys(projects).map((name) => ({
|
||||
title: name,
|
||||
value: name,
|
||||
description: projects[name],
|
||||
})),
|
||||
initial: 0,
|
||||
});
|
||||
|
||||
@@ -16,6 +16,7 @@ export function formatDate(date) {
|
||||
export function getProjects() {
|
||||
return glob
|
||||
.sync('packages/*')
|
||||
.sort()
|
||||
.filter((item) => !item.endsWith('artplayer-template') && !item.endsWith('artplayer-vitepress'))
|
||||
.reduce((result, item) => {
|
||||
const name = item.split(/\/|\\/g).pop();
|
||||
|
||||
Reference in new issue
Block a user