diff --git a/docs/assets/example/control.js b/docs/assets/example/control.js deleted file mode 100644 index 51c66700f..000000000 --- a/docs/assets/example/control.js +++ /dev/null @@ -1,61 +0,0 @@ -var art = new Artplayer({ - container: '.artplayer-app', - url: '/assets/sample/video.mp4', - pip: true, - screenshot: true, - setting: true, - loop: true, - flip: true, - playbackRate: true, - aspectRatio: true, - fullscreen: true, - fullscreenWeb: true, - subtitleOffset: true, - miniProgressBar: true, - airplay: true, - theme: '#23ade5', - thumbnails: { - url: '/assets/sample/thumbnails.png', - number: 60, - column: 10, - }, - subtitle: { - url: '/assets/sample/subtitle.srt', - type: 'srt', - style: { - color: '#fe9200', - fontSize: '20px', - }, - encoding: 'utf-8', - }, - highlight: [ - { - time: 15, - text: 'One more chance', - }, - { - time: 30, - text: '谁でもいいはずなのに', - }, - { - time: 45, - text: '夏の想い出がまわる', - }, - { - time: 60, - text: 'こんなとこにあるはずもないのに', - }, - { - time: 75, - text: '终わり', - }, - ], - icons: { - loading: '', - state: '', - indicator: '', - }, - plugins: [ - artplayerPluginControl() - ], -}); diff --git a/docs/index.html b/docs/index.html index 806b50263..c0ffdb6a8 100644 --- a/docs/index.html +++ b/docs/index.html @@ -39,10 +39,6 @@ artplayer-plugin-iframe -
  • - artplayer-plugin-control -
  • artplayer-plugin-hls-quality diff --git a/packages/artplayer-plugin-control/.npmignore b/packages/artplayer-plugin-control/.npmignore deleted file mode 100644 index ec696c3f1..000000000 --- a/packages/artplayer-plugin-control/.npmignore +++ /dev/null @@ -1,10 +0,0 @@ -node_modules -.DS_Store -yarn.lock -package-lock.json -test -coverage -.nyc_output -.parcel-cache -.cache -docs \ No newline at end of file diff --git a/packages/artplayer-plugin-control/.npmrc b/packages/artplayer-plugin-control/.npmrc deleted file mode 100644 index 9cf949503..000000000 --- a/packages/artplayer-plugin-control/.npmrc +++ /dev/null @@ -1 +0,0 @@ -package-lock=false \ No newline at end of file diff --git a/packages/artplayer-plugin-control/README.md b/packages/artplayer-plugin-control/README.md deleted file mode 100644 index 2ad09dd2f..000000000 --- a/packages/artplayer-plugin-control/README.md +++ /dev/null @@ -1,15 +0,0 @@ -# artplayer-plugin-control - -Control plugin for ArtPlayer - -## Demo - -[https://artplayer.org](https://artplayer.org/?libs=./uncompiled/artplayer-plugin-control/index.js&example=control) - -## Usage - -[https://artplayer.org/document/en/Plugins/control](https://artplayer.org/document/en/Plugins/control) - -## License - -MIT © Harvey Zack diff --git a/packages/artplayer-plugin-control/dist/artplayer-plugin-control.js b/packages/artplayer-plugin-control/dist/artplayer-plugin-control.js deleted file mode 100644 index 2d7636bd9..000000000 --- a/packages/artplayer-plugin-control/dist/artplayer-plugin-control.js +++ /dev/null @@ -1,25 +0,0 @@ -/*! - * artplayer-plugin-control.js v2.0.0 - * Github: https://github.com/zhw2590582/ArtPlayer - * (c) 2017-2023 Harvey Zack - * Released under the MIT License. - */ -!// modules are defined as an array -// [ module function, map of requires ] -// -// map of requires is short require name -> numeric require -// -// anything defined in a previous bundle is accessed via the -// orig method which is the require for previous bundles -function(e,t,r,o,n){/* eslint-disable no-undef */var l="undefined"!=typeof globalThis?globalThis:"undefined"!=typeof self?self:"undefined"!=typeof window?window:"undefined"!=typeof global?global:{},a="function"==typeof l[o]&&l[o],i=a.cache||{},u="undefined"!=typeof module&&"function"==typeof module.require&&module.require.bind(module);function p(t,r){if(!i[t]){if(!e[t]){// if we cannot find the module within our internal map or -// cache jump to the current global require ie. the last bundle -// that was added to the page. -var n="function"==typeof l[o]&&l[o];if(!r&&n)return n(t,!0);// If there are other bundles on this page the require from the -// previous one is saved to 'previousRequire'. Repeat this as -// many times as there are bundles until the module is found or -// we exhaust the require chain. -if(a)return a(t,!0);// Try the node require function if it exists. -if(u&&"string"==typeof t)return u(t);var c=Error("Cannot find module '"+t+"'");throw c.code="MODULE_NOT_FOUND",c}s.resolve=function(r){var o=e[t][1][r];return null!=o?o:r},s.cache={};var d=i[t]=new p.Module(t);e[t][0].call(d.exports,s,d,d.exports,this)}return i[t].exports;function s(e){var t=s.resolve(e);return!1===t?{}:p(t)}}p.isParcelRequire=!0,p.Module=function(e){this.id=e,this.bundle=p,this.exports={}},p.modules=e,p.cache=i,p.parent=a,p.register=function(t,r){e[t]=[function(e,t){t.exports=r},{}]},Object.defineProperty(p,"root",{get:function(){return l[o]}}),l[o]=p;for(var c=0;ca);var n=e("bundle-text:./style.less"),l=o.interopDefault(n);function a(){return e=>{!function(e){let{version:t,utils:{errorHandle:r}}=e.constructor,o=t.split(".").map(Number),n=o[0],l=o[1]/100;r(n+l>=5,`Artplayer.js@${t} is not compatible the artplayerPluginControl@${a.version}. Please update it to version Artplayer.js@5.x.x`)}(e);let{template:{$bottom:t,$player:r},constructor:{utils:{append:o,secondToTime:n,addClass:l,removeClass:i,hasClass:u,isMobile:p}}}=e;if(p)return;let c="artplayer-plugin-control";l(r,c);let d=o(t,'
    '),s=o(t,'
    '),f=["video:loadedmetadata","video:timeupdate","video:progress"];for(let t=0;t{d.innerText=n(e.currentTime),s.innerText=n(e.duration)});return{name:"artplayerPluginControl",get enable(){return u(r,c)},set enable(state){state?l(r,c):i(r,c)}}}}if(a.env="production",a.version="2.0.0",a.build="2023-11-23 23:22:00","undefined"!=typeof document&&!document.getElementById("artplayer-plugin-control")){let e=document.createElement("style");e.id="artplayer-plugin-control",e.textContent=l.default,document.head.appendChild(e)}"undefined"!=typeof window&&(window.artplayerPluginControl=a)},{"bundle-text:./style.less":"klrMD","@parcel/transformer-js/src/esmodule-helpers.js":"9pCYc"}],klrMD:[function(e,t,r){t.exports=".artplayer-plugin-control{--art-control-height:46px;--art-control-icon-scale:1.1}.artplayer-plugin-control .apa-control-current,.artplayer-plugin-control .apa-control-duration{display:flex}.artplayer-plugin-control .art-control-time,.artplayer-plugin-control .art-controls-center{display:none}.artplayer-plugin-control .art-settings{bottom:85px}.artplayer-plugin-control .art-bottom{backdrop-filter:saturate(180%)blur(20px);background-color:#000000b3;background-image:none;border-radius:10px;align-items:center;width:400px;height:70px;margin-left:-200px;inset:auto auto 10px 50%;overflow:visible;box-shadow:0 10px 15px -3px #0003,0 4px 6px -4px #0003}.artplayer-plugin-control .art-bottom .art-progress{width:70%}.artplayer-plugin-control .art-bottom .art-controls{width:100%}.artplayer-plugin-control .art-bottom .apa-control-current,.artplayer-plugin-control .art-bottom .apa-control-duration{justify-content:center;width:15%;font-size:12px;line-height:1;display:flex;position:absolute;top:10px}.artplayer-plugin-control .art-bottom .apa-control-current{left:0}.artplayer-plugin-control .art-bottom .apa-control-duration{right:0}.apa-control-current,.apa-control-duration{display:none}"},{}],"9pCYc":[function(e,t,r){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||t.hasOwnProperty(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})}},{}]},["16V0T"],"16V0T","parcelRequire4dc0"); \ No newline at end of file diff --git a/packages/artplayer-plugin-control/dist/artplayer-plugin-control.legacy.js b/packages/artplayer-plugin-control/dist/artplayer-plugin-control.legacy.js deleted file mode 100644 index b4a95f019..000000000 --- a/packages/artplayer-plugin-control/dist/artplayer-plugin-control.legacy.js +++ /dev/null @@ -1,25 +0,0 @@ -/*! - * artplayer-plugin-control.js v2.0.0 - * Github: https://github.com/zhw2590582/ArtPlayer - * (c) 2017-2023 Harvey Zack - * Released under the MIT License. - */ -!// modules are defined as an array -// [ module function, map of requires ] -// -// map of requires is short require name -> numeric require -// -// anything defined in a previous bundle is accessed via the -// orig method which is the require for previous bundles -function(e,t,r,o,n){/* eslint-disable no-undef */var a="undefined"!=typeof globalThis?globalThis:"undefined"!=typeof self?self:"undefined"!=typeof window?window:"undefined"!=typeof global?global:{},l="function"==typeof a[o]&&a[o],i=l.cache||{},u="undefined"!=typeof module&&"function"==typeof module.require&&module.require.bind(module);function p(t,r){if(!i[t]){if(!e[t]){// if we cannot find the module within our internal map or -// cache jump to the current global require ie. the last bundle -// that was added to the page. -var n="function"==typeof a[o]&&a[o];if(!r&&n)return n(t,!0);// If there are other bundles on this page the require from the -// previous one is saved to 'previousRequire'. Repeat this as -// many times as there are bundles until the module is found or -// we exhaust the require chain. -if(l)return l(t,!0);// Try the node require function if it exists. -if(u&&"string"==typeof t)return u(t);var c=Error("Cannot find module '"+t+"'");throw c.code="MODULE_NOT_FOUND",c}s.resolve=function(r){var o=e[t][1][r];return null!=o?o:r},s.cache={};var d=i[t]=new p.Module(t);e[t][0].call(d.exports,s,d,d.exports,this)}return i[t].exports;function s(e){var t=s.resolve(e);return!1===t?{}:p(t)}}p.isParcelRequire=!0,p.Module=function(e){this.id=e,this.bundle=p,this.exports={}},p.modules=e,p.cache=i,p.parent=l,p.register=function(t,r){e[t]=[function(e,t){t.exports=r},{}]},Object.defineProperty(p,"root",{get:function(){return a[o]}}),a[o]=p;for(var c=0;c=5,"Artplayer.js@".concat(r," is not compatible the artplayerPluginControl@").concat(l.version,". Please update it to version Artplayer.js@5.x.x"));var t,r,o,n=e.template,a=n.$bottom,i=n.$player,u=e.constructor.utils,p=u.append,c=u.secondToTime,d=u.addClass,s=u.removeClass,f=u.hasClass;if(!u.isMobile){var y="artplayer-plugin-control";d(i,y);for(var g=p(a,'
    '),m=p(a,'
    '),b=["video:loadedmetadata","video:timeupdate","video:progress"],x=0;x", - "browserslist": "last 1 Chrome version", - "homepage": "https://artplayer.org", - "repository": { - "type": "git", - "url": "git+https://github.com/zhw2590582/ArtPlayer.git" - }, - "bugs": { - "url": "https://github.com/zhw2590582/ArtPlayer/issues" - }, - "keywords": [ - "html5", - "video", - "player" - ] -} diff --git a/packages/artplayer-plugin-control/src/index.js b/packages/artplayer-plugin-control/src/index.js deleted file mode 100644 index eac9e660f..000000000 --- a/packages/artplayer-plugin-control/src/index.js +++ /dev/null @@ -1,76 +0,0 @@ -import style from 'bundle-text:./style.less'; - -function checkVersion(art) { - const { - version, - utils: { errorHandle }, - } = art.constructor; - const arr = version.split('.').map(Number); - const major = arr[0]; - const minor = arr[1] / 100; - errorHandle( - major + minor >= 5, - `Artplayer.js@${version} is not compatible the artplayerPluginControl@${artplayerPluginControl.version}. Please update it to version Artplayer.js@5.x.x`, - ); -} - -export default function artplayerPluginControl() { - return (art) => { - checkVersion(art); - - const { - template: { $bottom, $player }, - constructor: { - utils: { append, secondToTime, addClass, removeClass, hasClass, isMobile }, - }, - } = art; - - if (isMobile) return; - - const className = 'artplayer-plugin-control'; - addClass($player, className); - - const $current = append($bottom, `
    `); - const $duration = append($bottom, `
    `); - - const events = ['video:loadedmetadata', 'video:timeupdate', 'video:progress']; - - for (let index = 0; index < events.length; index++) { - art.on(events[index], () => { - $current.innerText = secondToTime(art.currentTime); - $duration.innerText = secondToTime(art.duration); - }); - } - - return { - name: 'artplayerPluginControl', - get enable() { - return hasClass($player, className); - }, - set enable(state) { - if (state) { - addClass($player, className); - } else { - removeClass($player, className); - } - }, - }; - }; -} - -artplayerPluginControl.env = process.env.NODE_ENV; -artplayerPluginControl.version = process.env.APP_VER; -artplayerPluginControl.build = process.env.BUILD_DATE; - -if (typeof document !== 'undefined') { - if (!document.getElementById('artplayer-plugin-control')) { - const $style = document.createElement('style'); - $style.id = 'artplayer-plugin-control'; - $style.textContent = style; - document.head.appendChild($style); - } -} - -if (typeof window !== 'undefined') { - window['artplayerPluginControl'] = artplayerPluginControl; -} diff --git a/packages/artplayer-plugin-control/src/style.less b/packages/artplayer-plugin-control/src/style.less deleted file mode 100644 index 263357bbd..000000000 --- a/packages/artplayer-plugin-control/src/style.less +++ /dev/null @@ -1,67 +0,0 @@ -.artplayer-plugin-control { - --art-control-height: 46px; - --art-control-icon-scale: 1.1; - - .apa-control-current, - .apa-control-duration { - display: flex; - } - - .art-control-time, - .art-controls-center { - display: none; - } - - .art-settings { - bottom: 85px; - } - - .art-bottom { - height: 70px; - width: 400px; - margin-left: -200px; - inset: auto; - overflow: visible; - align-items: center; - border-radius: 10px; - left: 50%; - bottom: 10px; - -webkit-backdrop-filter: saturate(180%) blur(20px); - backdrop-filter: saturate(180%) blur(20px); - background-color: rgba(0, 0, 0, 0.7); - box-shadow: 0 10px 15px -3px rgb(0 0 0 / 0.2), 0 4px 6px -4px rgb(0 0 0 / 0.2); - background-image: none; - - .art-progress { - width: 70%; - } - - .art-controls { - width: 100%; - } - - .apa-control-current, - .apa-control-duration { - display: flex; - justify-content: center; - line-height: 1; - width: 15%; - font-size: 12px; - position: absolute; - top: 10px; - } - - .apa-control-current { - left: 0; - } - - .apa-control-duration { - right: 0; - } - } -} - -.apa-control-current, -.apa-control-duration { - display: none; -} diff --git a/packages/artplayer-plugin-control/types/artplayer-plugin-control.d.ts b/packages/artplayer-plugin-control/types/artplayer-plugin-control.d.ts deleted file mode 100644 index 46176c215..000000000 --- a/packages/artplayer-plugin-control/types/artplayer-plugin-control.d.ts +++ /dev/null @@ -1,13 +0,0 @@ -import type Artplayer from 'artplayer'; - -export = artplayerPluginControl; -export as namespace artplayerPluginControl; - -type Option = {}; - -type Control = { - name: 'artplayerPluginControl'; - enable: Boolean; -}; - -declare const artplayerPluginControl: (option?: Option) => (art: Artplayer) => Control; diff --git a/packages/artplayer-plugin-multiple-subtitles/types/artplayer-plugin-multiple-subtitles.d.ts b/packages/artplayer-plugin-multiple-subtitles/types/artplayer-plugin-multiple-subtitles.d.ts index a4ba37c7f..79ea2b8b6 100644 --- a/packages/artplayer-plugin-multiple-subtitles/types/artplayer-plugin-multiple-subtitles.d.ts +++ b/packages/artplayer-plugin-multiple-subtitles/types/artplayer-plugin-multiple-subtitles.d.ts @@ -12,5 +12,5 @@ declare const artplayerPluginMultipleSubtitles: (option: { onParser?(...args: object[]): object; }[]; }) => (art: Artplayer) => { - name: 'artplayerPluginMultipleSubtitles'; + name: 'multipleSubtitles'; }; diff --git a/packages/artplayer-vitepress/docs/.vitepress/config.js b/packages/artplayer-vitepress/docs/.vitepress/config.js index 1fd523944..882072304 100644 --- a/packages/artplayer-vitepress/docs/.vitepress/config.js +++ b/packages/artplayer-vitepress/docs/.vitepress/config.js @@ -69,7 +69,6 @@ const config = { { text: 'Iframe 控制', link: '/plugin/iframe' }, { text: 'Hls 画质', link: '/plugin/hls-quality' }, { text: 'Dash 画质', link: '/plugin/dash-quality' }, - { text: '控制器皮肤', link: '/plugin/control-ui' }, ] }, { @@ -122,7 +121,6 @@ const config = { { text: 'Iframe Control', link: '/en/plugin/iframe' }, { text: 'Hls Quality', link: '/en/plugin/hls-quality' }, { text: 'Dash Quality', link: '/en/plugin/dash-quality' }, - { text: 'Control UI', link: '/en/plugin/control-ui' }, ] }, { diff --git a/packages/artplayer-vitepress/docs/en/plugin/control-ui.md b/packages/artplayer-vitepress/docs/en/plugin/control-ui.md deleted file mode 100644 index d205f6d9b..000000000 --- a/packages/artplayer-vitepress/docs/en/plugin/control-ui.md +++ /dev/null @@ -1,92 +0,0 @@ -# 控制器皮肤 - -## 演示 - -👉 [查看完整演示](https://artplayer.org/?libs=./uncompiled/artplayer-plugin-control/index.js&example=control) - -## 安装 - -::: code-group - -```bash [npm] -npm install artplayer-plugin-control -``` - -```bash [yarn] -yarn add artplayer-plugin-control -``` - -```bash [pnpm] -pnpm add artplayer-plugin-control -``` - -```html [script] - -``` - -::: - -## CDN - -::: code-group - -```bash [jsdelivr.net] -https://cdn.jsdelivr.net/npm/artplayer-plugin-control/dist/artplayer-plugin-control.js -``` - -```bash [unpkg.com] -https://unpkg.com/artplayer-plugin-control/dist/artplayer-plugin-control.js -``` - -::: - -## 使用 - -
    - ▶ Run Code -
    - -```js{7} -var art = new Artplayer({ - container: '.artplayer-app', - url: '/assets/sample/video.mp4', - fullscreen: true, - fullscreenWeb: true, - plugins: [ - artplayerPluginControl(), - ], -}); -``` - -## `enable` - -- Type: `Getter/Setter` -- Parameter: `Boolean` - -是否启用新的控制器皮肤 - -
    - ▶ Run Code -
    - -```js -var art = new Artplayer({ - container: '.artplayer-app', - url: '/assets/sample/video.mp4', - fullscreen: true, - fullscreenWeb: true, - controls: [ - { - position: 'right', - html: '', - click: function () { - const { enable } = art.plugins.artplayerPluginControl; - art.plugins.artplayerPluginControl.enable = !enable; - }, - }, - ], - plugins: [ - artplayerPluginControl(), - ], -}); -``` \ No newline at end of file diff --git a/packages/artplayer-vitepress/docs/plugin/control-ui.md b/packages/artplayer-vitepress/docs/plugin/control-ui.md deleted file mode 100644 index d205f6d9b..000000000 --- a/packages/artplayer-vitepress/docs/plugin/control-ui.md +++ /dev/null @@ -1,92 +0,0 @@ -# 控制器皮肤 - -## 演示 - -👉 [查看完整演示](https://artplayer.org/?libs=./uncompiled/artplayer-plugin-control/index.js&example=control) - -## 安装 - -::: code-group - -```bash [npm] -npm install artplayer-plugin-control -``` - -```bash [yarn] -yarn add artplayer-plugin-control -``` - -```bash [pnpm] -pnpm add artplayer-plugin-control -``` - -```html [script] - -``` - -::: - -## CDN - -::: code-group - -```bash [jsdelivr.net] -https://cdn.jsdelivr.net/npm/artplayer-plugin-control/dist/artplayer-plugin-control.js -``` - -```bash [unpkg.com] -https://unpkg.com/artplayer-plugin-control/dist/artplayer-plugin-control.js -``` - -::: - -## 使用 - -
    - ▶ Run Code -
    - -```js{7} -var art = new Artplayer({ - container: '.artplayer-app', - url: '/assets/sample/video.mp4', - fullscreen: true, - fullscreenWeb: true, - plugins: [ - artplayerPluginControl(), - ], -}); -``` - -## `enable` - -- Type: `Getter/Setter` -- Parameter: `Boolean` - -是否启用新的控制器皮肤 - -
    - ▶ Run Code -
    - -```js -var art = new Artplayer({ - container: '.artplayer-app', - url: '/assets/sample/video.mp4', - fullscreen: true, - fullscreenWeb: true, - controls: [ - { - position: 'right', - html: '', - click: function () { - const { enable } = art.plugins.artplayerPluginControl; - art.plugins.artplayerPluginControl.enable = !enable; - }, - }, - ], - plugins: [ - artplayerPluginControl(), - ], -}); -``` \ No newline at end of file