diff --git a/docs/js/artplayer.js b/docs/js/artplayer.js index e524ecd83..d7527e4ad 100644 --- a/docs/js/artplayer.js +++ b/docs/js/artplayer.js @@ -702,7 +702,9 @@ 'Pause': '暂停', 'Rate': '速度', 'Mute': '静音', - 'Reconnect': '重新连接' + 'Reconnect': '重新连接', + 'Hide subtitle': '隐藏字幕', + 'Show subtitle': '显示字幕' }, 'zh-tw': { 'About author': '關於作者', @@ -714,7 +716,9 @@ 'Pause': '暫停', 'Rate': '速度', 'Mute': '靜音', - 'Reconnect': '重新連接' + 'Reconnect': '重新連接', + 'Hide subtitle': '隱藏字幕', + 'Show subtitle': '顯示字幕' } }; @@ -1094,13 +1098,16 @@ var volumeClose = ""; + var subtitle = ""; + var icons = { loading: loading, playBig: playBig, play: play, pause: pause, volume: volume, - volumeClose: volumeClose + volumeClose: volumeClose, + subtitle: subtitle }; function creatDomFromSvg(map) { @@ -1130,18 +1137,11 @@ createClass(PlayAndPause, [{ key: "apply", value: function apply(art) { - this.art = art; - this.init(); - } - }, { - key: "init", - value: function init() { var _this = this; - var _this$art = this.art, - proxy = _this$art.events.proxy, - player = _this$art.player, - i18n = _this$art.i18n; + var proxy = art.events.proxy, + player = art.player, + i18n = art.i18n; this.$play = append(this.option.$control, icons$1.play); this.$pause = append(this.option.$control, icons$1.pause); tooltip(this.$play, i18n.get('Play')); @@ -1153,11 +1153,11 @@ proxy(this.$pause, 'click', function () { player.pause(); }); - this.art.on('video:playing', function () { + art.on('video:playing', function () { _this.$play.style.display = 'none'; _this.$pause.style.display = 'block'; }); - this.art.on('video:pause', function () { + art.on('video:pause', function () { _this.$play.style.display = 'block'; _this.$pause.style.display = 'none'; }); @@ -1174,16 +1174,16 @@ classCallCheck(this, Progress); this.option = option; + this.isDroging = false; + this.getLoaded = this.getLoaded.bind(this); + this.getPlayed = this.getPlayed.bind(this); + this.set = this.set.bind(this); } createClass(Progress, [{ key: "apply", value: function apply(art) { this.art = art; - this.isDroging = false; - this.getLoaded = this.getLoaded.bind(this); - this.getPlayed = this.getPlayed.bind(this); - this.set = this.set.bind(this); this.init(); } }, { @@ -1353,7 +1353,24 @@ createClass(Subtitle, [{ key: "apply", value: function apply(art) { - this.art = art; + var _this = this; + + var proxy = art.events.proxy, + subtitle = art.subtitle, + i18n = art.i18n; + this.$subtitle = append(this.option.$control, icons$1.subtitle); + tooltip(this.$subtitle, i18n.get('Hide subtitle')); + proxy(this.$subtitle, 'click', function () { + if (subtitle.isShow) { + subtitle.hide(); + tooltip(_this.$subtitle, i18n.get('Show subtitle')); + _this.$subtitle.style.opacity = '.5'; + } else { + subtitle.show(); + tooltip(_this.$subtitle, i18n.get('Hide subtitle')); + _this.$subtitle.style.opacity = '1'; + } + }); } }]); @@ -1409,13 +1426,13 @@ classCallCheck(this, Volume); this.option = option; + this.isDroging = false; } createClass(Volume, [{ key: "apply", value: function apply(art) { this.art = art; - this.isDroging = false; this.init(); } }, { @@ -2070,6 +2087,7 @@ classCallCheck(this, Subtitle); this.art = art; + this.isShow = true; var url = this.art.option.subtitle.url; if (url) { @@ -2159,6 +2177,7 @@ value: function show() { var $subtitle = this.art.refs.$subtitle; $subtitle.style.display = 'block'; + this.isShow = true; this.art.emit('subtitle:show', $subtitle); } }, { @@ -2166,6 +2185,7 @@ value: function hide() { var $subtitle = this.art.refs.$subtitle; $subtitle.style.display = 'none'; + this.isShow = false; this.art.emit('subtitle:hide', $subtitle); } }, { diff --git a/docs/js/artplayer.js.map b/docs/js/artplayer.js.map index a6dd30b11..79f399fa3 100644 --- a/docs/js/artplayer.js.map +++ b/docs/js/artplayer.js.map @@ -1 +1 @@ -{"version":3,"file":"artplayer.js","sources":["../../node_modules/@babel/runtime/helpers/setPrototypeOf.js","../../node_modules/@babel/runtime/helpers/construct.js","../../node_modules/@babel/runtime/helpers/arrayWithoutHoles.js","../../node_modules/@babel/runtime/helpers/iterableToArray.js","../../node_modules/@babel/runtime/helpers/nonIterableSpread.js","../../node_modules/@babel/runtime/helpers/toConsumableArray.js","../../node_modules/@babel/runtime/helpers/classCallCheck.js","../../node_modules/@babel/runtime/helpers/createClass.js","../../node_modules/@babel/runtime/helpers/typeof.js","../../node_modules/@babel/runtime/helpers/assertThisInitialized.js","../../node_modules/@babel/runtime/helpers/possibleConstructorReturn.js","../../node_modules/@babel/runtime/helpers/getPrototypeOf.js","../../node_modules/@babel/runtime/helpers/inherits.js","../../node_modules/@babel/runtime/helpers/defineProperty.js","../../node_modules/@babel/runtime/helpers/objectSpread.js","../../node_modules/@babel/runtime/helpers/isNativeFunction.js","../../node_modules/@babel/runtime/helpers/wrapNativeSuper.js","../../src/utils/index.js","../../src/verification/scheme.js","../../src/verification/index.js","../../src/config/mimeCodec.js","../../src/config/mse.js","../../src/config/video.js","../../src/config/index.js","../../node_modules/tiny-emitter/index.js","../../src/template.js","../../src/i18n.js","../../src/player.js","../../src/controls/danmu.js","../../src/controls/fullscreen.js","../../src/controls/pip.js","../../node_modules/@babel/runtime/helpers/arrayWithHoles.js","../../node_modules/@babel/runtime/helpers/iterableToArrayLimit.js","../../node_modules/@babel/runtime/helpers/nonIterableRest.js","../../node_modules/@babel/runtime/helpers/slicedToArray.js","../../src/icons/index.js","../../src/controls/playAndPause.js","../../src/controls/progress.js","../../src/controls/subtitle.js","../../src/controls/time.js","../../src/controls/volume.js","../../src/controls/setting.js","../../src/controls/thumbnails.js","../../src/controls/index.js","../../src/contextmenu.js","../../src/danmu.js","../../src/info.js","../../src/subtitle.js","../../src/events.js","../../src/hotkey.js","../../src/layers.js","../../src/loading.js","../../src/notice.js","../../src/mask.js","../../src/index.js"],"sourcesContent":["function _setPrototypeOf(o, p) {\n module.exports = _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) {\n o.__proto__ = p;\n return o;\n };\n\n return _setPrototypeOf(o, p);\n}\n\nmodule.exports = _setPrototypeOf;","var setPrototypeOf = require(\"./setPrototypeOf\");\n\nfunction isNativeReflectConstruct() {\n if (typeof Reflect === \"undefined\" || !Reflect.construct) return false;\n if (Reflect.construct.sham) return false;\n if (typeof Proxy === \"function\") return true;\n\n try {\n Date.prototype.toString.call(Reflect.construct(Date, [], function () {}));\n return true;\n } catch (e) {\n return false;\n }\n}\n\nfunction _construct(Parent, args, Class) {\n if (isNativeReflectConstruct()) {\n module.exports = _construct = Reflect.construct;\n } else {\n module.exports = _construct = function _construct(Parent, args, Class) {\n var a = [null];\n a.push.apply(a, args);\n var Constructor = Function.bind.apply(Parent, a);\n var instance = new Constructor();\n if (Class) setPrototypeOf(instance, Class.prototype);\n return instance;\n };\n }\n\n return _construct.apply(null, arguments);\n}\n\nmodule.exports = _construct;","function _arrayWithoutHoles(arr) {\n if (Array.isArray(arr)) {\n for (var i = 0, arr2 = new Array(arr.length); i < arr.length; i++) {\n arr2[i] = arr[i];\n }\n\n return arr2;\n }\n}\n\nmodule.exports = _arrayWithoutHoles;","function _iterableToArray(iter) {\n if (Symbol.iterator in Object(iter) || Object.prototype.toString.call(iter) === \"[object Arguments]\") return Array.from(iter);\n}\n\nmodule.exports = _iterableToArray;","function _nonIterableSpread() {\n throw new TypeError(\"Invalid attempt to spread non-iterable instance\");\n}\n\nmodule.exports = _nonIterableSpread;","var arrayWithoutHoles = require(\"./arrayWithoutHoles\");\n\nvar iterableToArray = require(\"./iterableToArray\");\n\nvar nonIterableSpread = require(\"./nonIterableSpread\");\n\nfunction _toConsumableArray(arr) {\n return arrayWithoutHoles(arr) || iterableToArray(arr) || nonIterableSpread();\n}\n\nmodule.exports = _toConsumableArray;","function _classCallCheck(instance, Constructor) {\n if (!(instance instanceof Constructor)) {\n throw new TypeError(\"Cannot call a class as a function\");\n }\n}\n\nmodule.exports = _classCallCheck;","function _defineProperties(target, props) {\n for (var i = 0; i < props.length; i++) {\n var descriptor = props[i];\n descriptor.enumerable = descriptor.enumerable || false;\n descriptor.configurable = true;\n if (\"value\" in descriptor) descriptor.writable = true;\n Object.defineProperty(target, descriptor.key, descriptor);\n }\n}\n\nfunction _createClass(Constructor, protoProps, staticProps) {\n if (protoProps) _defineProperties(Constructor.prototype, protoProps);\n if (staticProps) _defineProperties(Constructor, staticProps);\n return Constructor;\n}\n\nmodule.exports = _createClass;","function _typeof2(obj) { if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") { _typeof2 = function _typeof2(obj) { return typeof obj; }; } else { _typeof2 = function _typeof2(obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }; } return _typeof2(obj); }\n\nfunction _typeof(obj) {\n if (typeof Symbol === \"function\" && _typeof2(Symbol.iterator) === \"symbol\") {\n module.exports = _typeof = function _typeof(obj) {\n return _typeof2(obj);\n };\n } else {\n module.exports = _typeof = function _typeof(obj) {\n return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : _typeof2(obj);\n };\n }\n\n return _typeof(obj);\n}\n\nmodule.exports = _typeof;","function _assertThisInitialized(self) {\n if (self === void 0) {\n throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\");\n }\n\n return self;\n}\n\nmodule.exports = _assertThisInitialized;","var _typeof = require(\"../helpers/typeof\");\n\nvar assertThisInitialized = require(\"./assertThisInitialized\");\n\nfunction _possibleConstructorReturn(self, call) {\n if (call && (_typeof(call) === \"object\" || typeof call === \"function\")) {\n return call;\n }\n\n return assertThisInitialized(self);\n}\n\nmodule.exports = _possibleConstructorReturn;","function _getPrototypeOf(o) {\n module.exports = _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) {\n return o.__proto__ || Object.getPrototypeOf(o);\n };\n return _getPrototypeOf(o);\n}\n\nmodule.exports = _getPrototypeOf;","var setPrototypeOf = require(\"./setPrototypeOf\");\n\nfunction _inherits(subClass, superClass) {\n if (typeof superClass !== \"function\" && superClass !== null) {\n throw new TypeError(\"Super expression must either be null or a function\");\n }\n\n subClass.prototype = Object.create(superClass && superClass.prototype, {\n constructor: {\n value: subClass,\n writable: true,\n configurable: true\n }\n });\n if (superClass) setPrototypeOf(subClass, superClass);\n}\n\nmodule.exports = _inherits;","function _defineProperty(obj, key, value) {\n if (key in obj) {\n Object.defineProperty(obj, key, {\n value: value,\n enumerable: true,\n configurable: true,\n writable: true\n });\n } else {\n obj[key] = value;\n }\n\n return obj;\n}\n\nmodule.exports = _defineProperty;","var defineProperty = require(\"./defineProperty\");\n\nfunction _objectSpread(target) {\n for (var i = 1; i < arguments.length; i++) {\n var source = arguments[i] != null ? arguments[i] : {};\n var ownKeys = Object.keys(source);\n\n if (typeof Object.getOwnPropertySymbols === 'function') {\n ownKeys = ownKeys.concat(Object.getOwnPropertySymbols(source).filter(function (sym) {\n return Object.getOwnPropertyDescriptor(source, sym).enumerable;\n }));\n }\n\n ownKeys.forEach(function (key) {\n defineProperty(target, key, source[key]);\n });\n }\n\n return target;\n}\n\nmodule.exports = _objectSpread;","function _isNativeFunction(fn) {\n return Function.toString.call(fn).indexOf(\"[native code]\") !== -1;\n}\n\nmodule.exports = _isNativeFunction;","var getPrototypeOf = require(\"./getPrototypeOf\");\n\nvar setPrototypeOf = require(\"./setPrototypeOf\");\n\nvar isNativeFunction = require(\"./isNativeFunction\");\n\nvar construct = require(\"./construct\");\n\nfunction _wrapNativeSuper(Class) {\n var _cache = typeof Map === \"function\" ? new Map() : undefined;\n\n module.exports = _wrapNativeSuper = function _wrapNativeSuper(Class) {\n if (Class === null || !isNativeFunction(Class)) return Class;\n\n if (typeof Class !== \"function\") {\n throw new TypeError(\"Super expression must either be null or a function\");\n }\n\n if (typeof _cache !== \"undefined\") {\n if (_cache.has(Class)) return _cache.get(Class);\n\n _cache.set(Class, Wrapper);\n }\n\n function Wrapper() {\n return construct(Class, arguments, getPrototypeOf(this).constructor);\n }\n\n Wrapper.prototype = Object.create(Class.prototype, {\n constructor: {\n value: Wrapper,\n enumerable: false,\n writable: true,\n configurable: true\n }\n });\n return setPrototypeOf(Wrapper, Class);\n };\n\n return _wrapNativeSuper(Class);\n}\n\nmodule.exports = _wrapNativeSuper;","export class ArtPlayerError extends Error {\n constructor(message, context) {\n super(message);\n if (typeof Error.captureStackTrace === 'function') {\n Error.captureStackTrace(this, context || this.constructor);\n }\n this.name = 'ArtPlayerError';\n }\n}\n\nexport function errorHandle(condition, msg) {\n const isFun = typeof condition === 'function';\n if (isFun ? !isFun() : !condition) {\n throw new ArtPlayerError(msg);\n }\n}\n\nexport function clamp(num, a, b) {\n return Math.max(Math.min(num, Math.max(a, b)), Math.min(a, b));\n}\n\nexport function getExt(url) {\n if (url.includes('?')) {\n return getExt(url.split('?')[0]);\n }\n\n if (url.includes('#')) {\n return getExt(url.split('#')[0]);\n }\n\n return url\n .trim()\n .toLowerCase()\n .split('.')\n .pop();\n}\n\nexport function append(parent, child) {\n if (child instanceof Element) {\n parent.appendChild(child);\n } else {\n parent.insertAdjacentHTML('beforeend', child);\n }\n return parent.lastElementChild;\n}\n\nexport function setStyle(element, styles) {\n Object.keys(styles).forEach(key => {\n element.style[key] = styles[key];\n });\n return element;\n}\n\nexport function secondToTime(second) {\n const add0 = num => num < 10 ? `0${num}` : String(num);\n const hour = Math.floor(second / 3600);\n const min = Math.floor((second - hour * 3600) / 60);\n const sec = Math.floor(second - hour * 3600 - min * 60);\n return (hour > 0 ? [hour, min, sec] : [min, sec]).map(add0).join(':');\n}\n\nexport function deepMerge(...sources) {\n const isObject = value => value !== null && typeof value === 'object';\n let returnValue = {};\n for (const source of sources) {\n if (Array.isArray(source)) {\n if (!Array.isArray(returnValue)) {\n returnValue = [];\n }\n returnValue = [...returnValue, ...source];\n } else if (isObject(source)) {\n for (const key in source) {\n if (source.hasOwnProperty(key)) {\n let value = source[key];\n if (isObject(value) && key in returnValue) {\n value = deepMerge(returnValue[key], value);\n }\n returnValue = { ...returnValue, [key]: value };\n }\n }\n }\n }\n return returnValue;\n}\n\nexport function getStorage(key) {\n const storage = JSON.parse(localStorage.getItem('artplayer_settings')) || {};\n return key ? storage[key] : storage;\n}\n\nexport function setStorage(key, value) {\n const storage = Object.assign({}, getStorage(), {\n [key]: value\n });\n localStorage.setItem('artplayer_settings', JSON.stringify(storage));\n}\n\nexport function getType(val) {\n const { toString } = Object.prototype;\n const type = toString.call(val).slice(8, -1).toLowerCase().replace(/\\s/g, '');\n return type;\n}\n\nexport function tooltip(target, msg, pos = 'up') {\n target.setAttribute('data-balloon', msg);\n target.setAttribute('data-balloon-pos', pos);\n}\n\nexport function sleep(ms = 0) {\n return new Promise(resolve => setTimeout(resolve, ms));\n}\n","export default {\n container: {\n type: 'string',\n required: true\n },\n url: {\n type: 'string',\n required: true\n },\n poster: {\n type: 'string'\n },\n volume: {\n type: 'number'\n },\n thumbnails: {\n type: 'object',\n child: {\n url: {\n type: 'string'\n },\n number: {\n type: 'number'\n },\n width: {\n type: 'number'\n },\n height: {\n type: 'number'\n },\n column: {\n type: 'number'\n }\n }\n },\n autoplay: {\n type: 'boolean'\n },\n loop: {\n type: 'boolean'\n },\n type: {\n type: 'string'\n },\n mimeCodec: {\n type: 'string'\n },\n layers: {\n type: 'array',\n child: {\n name: {\n type: 'string'\n },\n index: {\n type: 'number'\n },\n html: {\n type: 'string'\n },\n style: {\n type: 'object'\n }\n }\n },\n contextmenu: {\n type: 'array',\n child: {\n name: {\n type: 'string'\n },\n html: {\n type: 'string'\n },\n click: {\n type: 'function'\n }\n }\n },\n loading: {\n type: 'string'\n },\n theme: {\n type: 'string'\n },\n hotkey: {\n type: 'boolean'\n },\n subtitle: {\n type: 'object',\n child: {\n url: {\n type: 'string'\n },\n style: {\n type: 'object'\n }\n }\n },\n controls: {\n type: 'array',\n child: {\n option: {\n disable: {\n type: 'boolean'\n },\n position: {\n type: 'string'\n },\n index: {\n type: 'number'\n }\n }\n }\n },\n highlight: {\n type: 'array',\n child: {\n time: {\n type: 'number'\n },\n text: {\n type: 'string'\n }\n }\n },\n moreVideoAttr: {\n type: 'object'\n },\n lang: {\n type: 'string'\n }\n};\n","import { errorHandle, getType } from '../utils';\nimport scheme from './scheme';\n\nexport default function validOption(option, param = scheme, path = ['option']) {\n Object.keys(option).some(key => {\n if (!param[key]) {\n return true;\n }\n\n const value = option[key];\n const type = getType(value);\n const requiredType = param[key].type;\n const isRequired = param[key].required;\n const requiredChild = param[key].child;\n\n if (type === 'object' && requiredChild) {\n validOption(value, requiredChild, path.concat(key));\n }\n\n if (type === 'array' && requiredChild) {\n value.forEach((item, index) => {\n validOption(item, requiredChild, path.concat(`${key}[${index}]`));\n });\n }\n\n errorHandle(!isRequired || value, `'${path.join('.')}.${key}' is required`);\n errorHandle(requiredType === type, `'${path.join('.')}.${key}' require '${requiredType}' type, but got '${type}'`);\n return false;\n });\n}\n","export default {\n mp4: 'video/mp4; codecs=\"avc1.42E01E, mp4a.40.2\"',\n webm: 'video/webm; codecs=\"vorbis, vp8\"',\n ts: 'video/mp2t; codecs=\"avc1.42E01E, mp4a.40.2\"'\n};\n","export default {\n mediaSource: {\n propertys: [\n 'activeSourceBuffers',\n 'duration',\n 'readyState',\n 'sourceBuffers'\n ],\n methods: [\n 'addSourceBuffer',\n 'endOfStream',\n 'removeSourceBuffer',\n 'clearLiveSeekableRange',\n 'setLiveSeekableRange'\n ],\n events: [\n 'sourceclose',\n 'sourceended',\n 'sourceopen'\n ]\n },\n sourceBuffer: {\n propertys: [\n 'mode',\n 'updating',\n 'buffered',\n 'timestampOffset',\n 'audioTracks',\n 'videoTracks',\n 'textTracks',\n 'appendWindowStart',\n 'appendWindowEnd',\n 'trackDefaults'\n ],\n methods: [\n 'appendBuffer',\n 'appendStream',\n 'abort',\n 'remove'\n ],\n events: [\n 'abort',\n 'error',\n 'update',\n 'updateend',\n 'updatestart'\n ]\n },\n sourceBufferList: {\n propertys: [\n 'length'\n ],\n events: [\n 'addsourcebuffer',\n 'removesourcebuffer'\n ]\n }\n};\n","export default {\n propertys: [\n 'audioTracks',\n 'autoplay',\n 'buffered',\n 'controller',\n 'controls',\n 'crossOrigin',\n 'currentSrc',\n 'currentTime',\n 'defaultMuted',\n 'defaultPlaybackRate',\n 'duration',\n 'ended',\n 'error',\n 'loop',\n 'mediaGroup',\n 'muted',\n 'networkState',\n 'paused',\n 'playbackRate',\n 'played',\n 'preload',\n 'readyState',\n 'seekable',\n 'seeking',\n 'src',\n 'startDate',\n 'textTracks',\n 'videoTracks',\n 'volume'\n ],\n methods: [\n 'addTextTrack',\n 'canPlayType',\n 'load',\n 'play',\n 'pause'\n ],\n events: [\n 'abort',\n 'canplay',\n 'canplaythrough',\n 'durationchange',\n 'emptied',\n 'ended',\n 'error',\n 'loadeddata',\n 'loadedmetadata',\n 'loadstart',\n 'pause',\n 'play',\n 'playing',\n 'progress',\n 'ratechange',\n 'seeked',\n 'seeking',\n 'stalled',\n 'suspend',\n 'timeupdate',\n 'volumechange',\n 'waiting'\n ]\n};\n","import mimeCodec from './mimeCodec';\nimport mse from './mse';\nimport video from './video';\n\nexport default {\n mimeCodec,\n mse,\n video\n};\n","function E () {\n // Keep this empty so it's easier to inherit from\n // (via https://github.com/lipsmack from https://github.com/scottcorgan/tiny-emitter/issues/3)\n}\n\nE.prototype = {\n on: function (name, callback, ctx) {\n var e = this.e || (this.e = {});\n\n (e[name] || (e[name] = [])).push({\n fn: callback,\n ctx: ctx\n });\n\n return this;\n },\n\n once: function (name, callback, ctx) {\n var self = this;\n function listener () {\n self.off(name, listener);\n callback.apply(ctx, arguments);\n };\n\n listener._ = callback\n return this.on(name, listener, ctx);\n },\n\n emit: function (name) {\n var data = [].slice.call(arguments, 1);\n var evtArr = ((this.e || (this.e = {}))[name] || []).slice();\n var i = 0;\n var len = evtArr.length;\n\n for (i; i < len; i++) {\n evtArr[i].fn.apply(evtArr[i].ctx, data);\n }\n\n return this;\n },\n\n off: function (name, callback) {\n var e = this.e || (this.e = {});\n var evts = e[name];\n var liveEvents = [];\n\n if (evts && callback) {\n for (var i = 0, len = evts.length; i < len; i++) {\n if (evts[i].fn !== callback && evts[i].fn._ !== callback)\n liveEvents.push(evts[i]);\n }\n }\n\n // Remove event from queue to prevent memory leak\n // Suggested by https://github.com/lazd\n // Ref: https://github.com/scottcorgan/tiny-emitter/commit/c6ebfaa9bc973b33d110a84a307742b7cf94c953#commitcomment-5024910\n\n (liveEvents.length)\n ? e[name] = liveEvents\n : delete e[name];\n\n return this;\n }\n};\n\nmodule.exports = E;\n","export default class Template {\n constructor(art) {\n this.art = art;\n this.init();\n }\n\n init() {\n const { refs } = this.art;\n refs.$container.innerHTML = `\n
${item}
`)\n .join('');\n }\n this.art.emit('subtitle:update', $subtitle);\n });\n }\n });\n }\n\n load(url) {\n let type;\n return fetch(url)\n .then(response => {\n type = response.headers.get('Content-Type');\n return response.text();\n })\n .then(text => {\n if ((/x-subrip/gi).test(type)) {\n return this.srtToVtt(text);\n }\n return url;\n })\n .catch(err => {\n throw err;\n });\n }\n\n srtToVtt(text) {\n const vttText = 'WEBVTT \\r\\n\\r\\n'.concat(\n text\n .replace(/\\{\\\\([ibu])\\}/g, '$1>')\n .replace(/\\{\\\\([ibu])1\\}/g, '<$1>')\n .replace(/\\{([ibu])\\}/g, '<$1>')\n .replace(/\\{\\/([ibu])\\}/g, '$1>')\n .replace(/(\\d\\d:\\d\\d:\\d\\d),(\\d\\d\\d)/g, '$1.$2')\n .concat('\\r\\n\\r\\n')\n );\n return URL.createObjectURL(\n new Blob([vttText], {\n type: 'text/vtt'\n })\n );\n }\n\n checkExt(url) {\n const ext = getExt(url);\n errorHandle(\n ext === 'vtt' || ext === 'srt',\n `'subtitle.url' option require 'vtt' or 'srt' format, but got '${ext}'.`\n );\n }\n\n show() {\n const { $subtitle } = this.art.refs;\n $subtitle.style.display = 'block';\n this.art.emit('subtitle:show', $subtitle);\n }\n\n hide() {\n const { $subtitle } = this.art.refs;\n $subtitle.style.display = 'none';\n this.art.emit('subtitle:hide', $subtitle);\n }\n\n switch(url) {\n const { $track } = this.art.refs;\n this.checkExt(url);\n errorHandle($track, 'You need to initialize the subtitle option first.');\n this.load(url).then(data => {\n if (url !== data) {\n $track.src = data;\n this.art.emit('subtitle:switch', url);\n }\n });\n }\n}\n","export default class Events {\n constructor(art) {\n this.art = art;\n this.destroyEvents = [];\n this.proxy = this.proxy.bind(this);\n }\n\n proxy(target, name, callback, option = {}) {\n if (Array.isArray(name)) {\n name.forEach(item => this.proxy(target, item, callback, option));\n }\n\n target.addEventListener(name, callback, option);\n this.destroyEvents.push(() => {\n target.removeEventListener(name, callback, option);\n });\n }\n\n destroy() {\n this.destroyEvents.forEach(event => event());\n }\n}\n","export default class Hotkey {\n constructor(art) {\n this.art = art;\n if (this.art.option.hotkey) {\n this.init();\n }\n }\n\n init() {\n const {\n player,\n refs: { $player },\n events: { proxy }\n } = this.art;\n\n proxy(document, 'click', event => {\n this.art.isFocus = event.path.indexOf($player) > -1;\n });\n\n proxy(window, 'keydown', event => {\n if (this.art.isFocus) {\n const tag = document.activeElement.tagName.toUpperCase();\n const editable = document.activeElement.getAttribute('contenteditable');\n if (\n tag !== 'INPUT' &&\n tag !== 'TEXTAREA' &&\n editable !== '' &&\n editable !== 'true'\n ) {\n switch (event.keyCode) {\n case 39:\n event.preventDefault();\n player.seek(player.currentTime() + 10);\n break;\n case 37:\n event.preventDefault();\n player.seek(player.currentTime() - 10);\n break;\n case 38:\n event.preventDefault();\n player.volume(player.volume() + 0.05);\n break;\n case 40:\n event.preventDefault();\n player.volume(player.volume() - 0.05);\n break;\n case 32:\n event.preventDefault();\n player.toggle();\n break;\n default:\n break;\n }\n }\n }\n });\n }\n}\n","import { append, setStyle } from './utils';\n\nlet id = 0;\nexport default class Layers {\n constructor(art) {\n this.art = art;\n this.add = this.add.bind(this);\n this.art.option.layers.filter(item => item.disable === false).forEach(this.add);\n this.init();\n }\n\n init() {\n const { refs, player, events: { proxy } } = this.art;\n proxy(refs.$layers, 'click', event => {\n if (event.path[0] === refs.$layers) {\n player.pause();\n }\n });\n }\n\n add(option, callback) {\n const { refs } = this.art;\n id++;\n\n const $layer = document.createElement('div');\n $layer.setAttribute('data-art-layer-id', id);\n $layer.setAttribute('class', `art-layer art-layer-${option.name || id}`);\n $layer.style.zIndex = option.index || id;\n append($layer, option.html);\n setStyle($layer, option.style || {});\n refs.$layers.appendChild($layer);\n this.art.emit('layers:add', $layer);\n callback && callback($layer);\n }\n\n show() {\n const { $layers } = this.art.refs;\n $layers.style.display = 'block';\n this.art.emit('layers:show', $layers);\n }\n\n hide() {\n const { $layers } = this.art.refs;\n $layers.style.display = 'none';\n this.art.emit('layers:hide', $layers);\n }\n}\n","import icons from './icons';\nimport { append } from './utils';\n\nexport default class Loading {\n constructor(art) {\n this.art = art;\n this.init();\n }\n\n init() {\n const { option, refs: { $loading } } = this.art;\n append($loading, option.loading || icons.loading);\n }\n\n hide() {\n const { $loading } = this.art.refs;\n $loading.style.display = 'none';\n this.art.emit('loading:hide', $loading);\n }\n\n show() {\n const { $loading } = this.art.refs;\n $loading.style.display = 'flex';\n this.art.emit('loading:show', $loading);\n }\n}\n","export default class Notice {\n constructor(art) {\n this.art = art;\n this.timer = null;\n }\n\n show(msg, autoHide = true, time = 1000) {\n const { $notice } = this.art.refs;\n $notice.style.display = 'block';\n $notice.innerHTML = msg instanceof Error ? msg.message.trim() : msg;\n if (autoHide) {\n clearTimeout(this.timer);\n this.timer = setTimeout(() => {\n this.hide();\n }, time);\n }\n this.art.emit('notice:show', $notice);\n }\n\n hide() {\n const { $notice } = this.art.refs;\n $notice.style.display = 'none';\n this.art.emit('notice:hide', $notice);\n }\n}\n","import icons from './icons';\nimport { append } from './utils';\n\nexport default class Mask {\n constructor(art) {\n this.art = art;\n this.init();\n }\n\n init() {\n const {\n player,\n refs,\n events: { proxy }\n } = this.art;\n\n append(refs.$mask, icons.playBig);\n\n proxy(refs.$mask, 'click', () => {\n player.play();\n this.hide();\n });\n }\n\n show() {\n const { $mask } = this.art.refs;\n $mask.style.display = 'block';\n this.art.emit('mask:show', $mask);\n }\n\n hide() {\n const { $mask } = this.art.refs;\n $mask.style.display = 'none';\n this.art.emit('mask:show', $mask);\n }\n}\n","import './style';\nimport 'balloon-css/balloon.min.css';\nimport { deepMerge } from './utils';\nimport validOption from './verification';\nimport config from './config';\nimport Emitter from 'tiny-emitter';\nimport Template from './template';\nimport I18n from './i18n';\nimport Player from './player';\nimport Controls from './controls';\nimport Contextmenu from './contextmenu';\nimport Danmu from './danmu';\nimport Info from './info';\nimport Subtitle from './subtitle';\nimport Events from './events';\nimport Hotkey from './hotkey';\nimport Layers from './layers';\nimport Loading from './loading';\nimport Notice from './notice';\nimport Mask from './mask';\n\nlet id = 0;\nexport const instances = [];\n\nclass Artplayer extends Emitter {\n constructor(option) {\n super();\n this.emit('init:start');\n this.option = deepMerge({}, Artplayer.DEFAULTS, option);\n validOption(this.option);\n this.init();\n this.emit('init:end');\n }\n\n static get version() {\n return '__VERSION__';\n }\n\n static get config() {\n return config;\n }\n\n static get DEFAULTS() {\n return {\n container: '.artplayer',\n url: '',\n poster: '',\n volume: 0.7,\n thumbnails: {\n url: '',\n number: 60,\n width: 160,\n height: 90,\n column: 10\n },\n autoplay: false,\n loop: false,\n type: '',\n mimeCodec: '',\n layers: [],\n contextmenu: [],\n loading: '',\n theme: '#f00',\n hotkey: true,\n subtitle: {\n url: '',\n style: {}\n },\n controls: [],\n highlight: [],\n moreVideoAttr: {\n 'controls': false,\n 'preload': 'auto',\n 'webkit-playsinline': true,\n 'playsinline': true\n },\n lang: navigator.language.toLowerCase()\n };\n }\n\n static use(Plugin) {\n const name = Plugin.name.toLowerCase();\n const installedPlugins = this.plugins || (this.plugins = {});\n if (!installedPlugins[name]) {\n const args = Array.from(arguments).slice(1);\n args.unshift(this);\n installedPlugins[name] = new Plugin(...args);\n this.prototype.emit('use', Plugin);\n }\n return this;\n }\n\n init() {\n this.isError = false;\n this.isFocus = false;\n this.isPlaying = false;\n this.refs = {};\n\n if (this.option.container instanceof Element) {\n this.refs.$container = this.option.container;\n } else {\n this.refs.$container = document.querySelector(this.option.container);\n }\n\n this.template = new Template(this);\n this.i18n = new I18n(this);\n this.notice = new Notice(this);\n this.events = new Events(this);\n this.player = new Player(this);\n this.layers = new Layers(this);\n this.controls = new Controls(this);\n this.contextmenu = new Contextmenu(this);\n this.danmu = new Danmu(this);\n this.subtitle = new Subtitle(this);\n this.info = new Info(this);\n this.loading = new Loading(this);\n this.hotkey = new Hotkey(this);\n this.mask = new Mask(this);\n\n this.id = id++;\n instances.push(this);\n return this;\n }\n\n destroy(removeHtml = false) {\n this.events.destroy();\n instances.splice(instances.indexOf(this), 1);\n if (removeHtml) {\n this.refs.$container.innerHTML = '';\n }\n this.emit('destroy');\n }\n}\n\nwindow.Artplayer = Artplayer;\nexport default Artplayer;\n"],"names":["_typeof","ArtPlayerError","message","context","Error","captureStackTrace","constructor","name","errorHandle","condition","msg","isFun","clamp","num","a","b","Math","max","min","getExt","url","includes","split","trim","toLowerCase","pop","append","parent","child","Element","appendChild","insertAdjacentHTML","lastElementChild","setStyle","element","styles","Object","keys","forEach","key","style","secondToTime","second","add0","String","hour","floor","sec","map","join","deepMerge","isObject","value","returnValue","sources","source","Array","isArray","hasOwnProperty","getStorage","storage","JSON","parse","localStorage","getItem","setStorage","assign","setItem","stringify","getType","val","toString","prototype","type","call","slice","replace","tooltip","target","pos","setAttribute","sleep","ms","Promise","resolve","setTimeout","container","required","poster","volume","thumbnails","number","width","height","column","autoplay","loop","mimeCodec","layers","index","html","contextmenu","click","loading","theme","hotkey","subtitle","controls","option","disable","position","highlight","time","text","moreVideoAttr","lang","validOption","param","scheme","path","some","requiredType","isRequired","requiredChild","concat","item","mp4","webm","ts","mediaSource","propertys","methods","events","sourceBuffer","sourceBufferList","mse","video","Template","art","init","refs","$container","innerHTML","$player","querySelector","$video","$subtitle","$bottom","$progress","$controls","$controlsLeft","$controlsRight","$layers","$loading","$notice","$mask","$info","$infoPanel","$infoClose","i18nMap","I18n","language","callback","Player","eventBind","firstLoad","reconnectTime","maxReconnectTime","src","proxy","i18n","notice","config","eventName","event","emit","on","show","hide","mask","promise","play","undefined","then","catch","err","console","warn","isPlaying","seek","get","isError","classList","add","destroy","pause","newTime","duration","currentTime","percentage","parseInt","rate","newRate","playbackRate","Danmu","Fullscreen","Pip","icons","playBig","volumeClose","creatDomFromSvg","result","tmp","document","createElement","childNodes","PlayAndPause","player","$play","$control","$pause","display","Progress","isDroging","getLoaded","bind","getPlayed","set","$loaded","$played","$highlight","$indicator","$tip","left","Number","indexOf","showHighlight","showTime","getPosFromEvent","remove","dataset","clientWidth","tipWidth","buffered","length","end","getBoundingClientRect","x","Subtitle","Time","getTime","Volume","$volume","$volumeClose","$volumePanel","$volumeHandle","setVolumeHandle","volumeChangeFromEvent","panelLeft","panelWidth","handleWidth","Setting","Thumbnails","isLoad","load","showThumbnails","reject","image","Image","complete","progress","posWidth","perWidth","perIndex","ceil","yIndex","xIndex","backgroundImage","backgroundPosition","id","Controls","$map","mount","control","commonMethod","push","apply","sort","controlIndex","defineProperty","Contextmenu","info","preventDefault","isFocus","$contextmenu","creatMenu","setPos","$menu","mouseX","clientX","mouseY","clientY","cHeight","cWidth","cLeft","cTop","top","mHeight","mWidth","menuLeft","menuTop","Info","creatInfo","getHeader","clearTimeout","timer","infoHtml","types","from","querySelectorAll","fetch","method","data","headers","head","checkExt","$track","default","kind","textTracks","track","activeCues","cue","template","getCueAsHTML","response","test","srtToVtt","vttText","URL","createObjectURL","Blob","ext","Events","destroyEvents","addEventListener","removeEventListener","Hotkey","window","tag","activeElement","tagName","toUpperCase","editable","getAttribute","keyCode","toggle","Layers","filter","$layer","zIndex","Loading","Notice","autoHide","Mask","instances","Artplayer","DEFAULTS","danmu","removeHtml","splice","Plugin","installedPlugins","plugins","args","arguments","unshift","navigator","Emitter"],"mappings":"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"} \ No newline at end of file +{"version":3,"file":"artplayer.js","sources":["../../node_modules/@babel/runtime/helpers/setPrototypeOf.js","../../node_modules/@babel/runtime/helpers/construct.js","../../node_modules/@babel/runtime/helpers/arrayWithoutHoles.js","../../node_modules/@babel/runtime/helpers/iterableToArray.js","../../node_modules/@babel/runtime/helpers/nonIterableSpread.js","../../node_modules/@babel/runtime/helpers/toConsumableArray.js","../../node_modules/@babel/runtime/helpers/classCallCheck.js","../../node_modules/@babel/runtime/helpers/createClass.js","../../node_modules/@babel/runtime/helpers/typeof.js","../../node_modules/@babel/runtime/helpers/assertThisInitialized.js","../../node_modules/@babel/runtime/helpers/possibleConstructorReturn.js","../../node_modules/@babel/runtime/helpers/getPrototypeOf.js","../../node_modules/@babel/runtime/helpers/inherits.js","../../node_modules/@babel/runtime/helpers/defineProperty.js","../../node_modules/@babel/runtime/helpers/objectSpread.js","../../node_modules/@babel/runtime/helpers/isNativeFunction.js","../../node_modules/@babel/runtime/helpers/wrapNativeSuper.js","../../src/utils/index.js","../../src/verification/scheme.js","../../src/verification/index.js","../../src/config/mimeCodec.js","../../src/config/mse.js","../../src/config/video.js","../../src/config/index.js","../../node_modules/tiny-emitter/index.js","../../src/template.js","../../src/i18n.js","../../src/player.js","../../src/controls/danmu.js","../../src/controls/fullscreen.js","../../src/controls/pip.js","../../node_modules/@babel/runtime/helpers/arrayWithHoles.js","../../node_modules/@babel/runtime/helpers/iterableToArrayLimit.js","../../node_modules/@babel/runtime/helpers/nonIterableRest.js","../../node_modules/@babel/runtime/helpers/slicedToArray.js","../../src/icons/index.js","../../src/controls/playAndPause.js","../../src/controls/progress.js","../../src/controls/subtitle.js","../../src/controls/time.js","../../src/controls/volume.js","../../src/controls/setting.js","../../src/controls/thumbnails.js","../../src/controls/index.js","../../src/contextmenu.js","../../src/danmu.js","../../src/info.js","../../src/subtitle.js","../../src/events.js","../../src/hotkey.js","../../src/layers.js","../../src/loading.js","../../src/notice.js","../../src/mask.js","../../src/index.js"],"sourcesContent":["function _setPrototypeOf(o, p) {\n module.exports = _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) {\n o.__proto__ = p;\n return o;\n };\n\n return _setPrototypeOf(o, p);\n}\n\nmodule.exports = _setPrototypeOf;","var setPrototypeOf = require(\"./setPrototypeOf\");\n\nfunction isNativeReflectConstruct() {\n if (typeof Reflect === \"undefined\" || !Reflect.construct) return false;\n if (Reflect.construct.sham) return false;\n if (typeof Proxy === \"function\") return true;\n\n try {\n Date.prototype.toString.call(Reflect.construct(Date, [], function () {}));\n return true;\n } catch (e) {\n return false;\n }\n}\n\nfunction _construct(Parent, args, Class) {\n if (isNativeReflectConstruct()) {\n module.exports = _construct = Reflect.construct;\n } else {\n module.exports = _construct = function _construct(Parent, args, Class) {\n var a = [null];\n a.push.apply(a, args);\n var Constructor = Function.bind.apply(Parent, a);\n var instance = new Constructor();\n if (Class) setPrototypeOf(instance, Class.prototype);\n return instance;\n };\n }\n\n return _construct.apply(null, arguments);\n}\n\nmodule.exports = _construct;","function _arrayWithoutHoles(arr) {\n if (Array.isArray(arr)) {\n for (var i = 0, arr2 = new Array(arr.length); i < arr.length; i++) {\n arr2[i] = arr[i];\n }\n\n return arr2;\n }\n}\n\nmodule.exports = _arrayWithoutHoles;","function _iterableToArray(iter) {\n if (Symbol.iterator in Object(iter) || Object.prototype.toString.call(iter) === \"[object Arguments]\") return Array.from(iter);\n}\n\nmodule.exports = _iterableToArray;","function _nonIterableSpread() {\n throw new TypeError(\"Invalid attempt to spread non-iterable instance\");\n}\n\nmodule.exports = _nonIterableSpread;","var arrayWithoutHoles = require(\"./arrayWithoutHoles\");\n\nvar iterableToArray = require(\"./iterableToArray\");\n\nvar nonIterableSpread = require(\"./nonIterableSpread\");\n\nfunction _toConsumableArray(arr) {\n return arrayWithoutHoles(arr) || iterableToArray(arr) || nonIterableSpread();\n}\n\nmodule.exports = _toConsumableArray;","function _classCallCheck(instance, Constructor) {\n if (!(instance instanceof Constructor)) {\n throw new TypeError(\"Cannot call a class as a function\");\n }\n}\n\nmodule.exports = _classCallCheck;","function _defineProperties(target, props) {\n for (var i = 0; i < props.length; i++) {\n var descriptor = props[i];\n descriptor.enumerable = descriptor.enumerable || false;\n descriptor.configurable = true;\n if (\"value\" in descriptor) descriptor.writable = true;\n Object.defineProperty(target, descriptor.key, descriptor);\n }\n}\n\nfunction _createClass(Constructor, protoProps, staticProps) {\n if (protoProps) _defineProperties(Constructor.prototype, protoProps);\n if (staticProps) _defineProperties(Constructor, staticProps);\n return Constructor;\n}\n\nmodule.exports = _createClass;","function _typeof2(obj) { if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") { _typeof2 = function _typeof2(obj) { return typeof obj; }; } else { _typeof2 = function _typeof2(obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }; } return _typeof2(obj); }\n\nfunction _typeof(obj) {\n if (typeof Symbol === \"function\" && _typeof2(Symbol.iterator) === \"symbol\") {\n module.exports = _typeof = function _typeof(obj) {\n return _typeof2(obj);\n };\n } else {\n module.exports = _typeof = function _typeof(obj) {\n return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : _typeof2(obj);\n };\n }\n\n return _typeof(obj);\n}\n\nmodule.exports = _typeof;","function _assertThisInitialized(self) {\n if (self === void 0) {\n throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\");\n }\n\n return self;\n}\n\nmodule.exports = _assertThisInitialized;","var _typeof = require(\"../helpers/typeof\");\n\nvar assertThisInitialized = require(\"./assertThisInitialized\");\n\nfunction _possibleConstructorReturn(self, call) {\n if (call && (_typeof(call) === \"object\" || typeof call === \"function\")) {\n return call;\n }\n\n return assertThisInitialized(self);\n}\n\nmodule.exports = _possibleConstructorReturn;","function _getPrototypeOf(o) {\n module.exports = _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) {\n return o.__proto__ || Object.getPrototypeOf(o);\n };\n return _getPrototypeOf(o);\n}\n\nmodule.exports = _getPrototypeOf;","var setPrototypeOf = require(\"./setPrototypeOf\");\n\nfunction _inherits(subClass, superClass) {\n if (typeof superClass !== \"function\" && superClass !== null) {\n throw new TypeError(\"Super expression must either be null or a function\");\n }\n\n subClass.prototype = Object.create(superClass && superClass.prototype, {\n constructor: {\n value: subClass,\n writable: true,\n configurable: true\n }\n });\n if (superClass) setPrototypeOf(subClass, superClass);\n}\n\nmodule.exports = _inherits;","function _defineProperty(obj, key, value) {\n if (key in obj) {\n Object.defineProperty(obj, key, {\n value: value,\n enumerable: true,\n configurable: true,\n writable: true\n });\n } else {\n obj[key] = value;\n }\n\n return obj;\n}\n\nmodule.exports = _defineProperty;","var defineProperty = require(\"./defineProperty\");\n\nfunction _objectSpread(target) {\n for (var i = 1; i < arguments.length; i++) {\n var source = arguments[i] != null ? arguments[i] : {};\n var ownKeys = Object.keys(source);\n\n if (typeof Object.getOwnPropertySymbols === 'function') {\n ownKeys = ownKeys.concat(Object.getOwnPropertySymbols(source).filter(function (sym) {\n return Object.getOwnPropertyDescriptor(source, sym).enumerable;\n }));\n }\n\n ownKeys.forEach(function (key) {\n defineProperty(target, key, source[key]);\n });\n }\n\n return target;\n}\n\nmodule.exports = _objectSpread;","function _isNativeFunction(fn) {\n return Function.toString.call(fn).indexOf(\"[native code]\") !== -1;\n}\n\nmodule.exports = _isNativeFunction;","var getPrototypeOf = require(\"./getPrototypeOf\");\n\nvar setPrototypeOf = require(\"./setPrototypeOf\");\n\nvar isNativeFunction = require(\"./isNativeFunction\");\n\nvar construct = require(\"./construct\");\n\nfunction _wrapNativeSuper(Class) {\n var _cache = typeof Map === \"function\" ? new Map() : undefined;\n\n module.exports = _wrapNativeSuper = function _wrapNativeSuper(Class) {\n if (Class === null || !isNativeFunction(Class)) return Class;\n\n if (typeof Class !== \"function\") {\n throw new TypeError(\"Super expression must either be null or a function\");\n }\n\n if (typeof _cache !== \"undefined\") {\n if (_cache.has(Class)) return _cache.get(Class);\n\n _cache.set(Class, Wrapper);\n }\n\n function Wrapper() {\n return construct(Class, arguments, getPrototypeOf(this).constructor);\n }\n\n Wrapper.prototype = Object.create(Class.prototype, {\n constructor: {\n value: Wrapper,\n enumerable: false,\n writable: true,\n configurable: true\n }\n });\n return setPrototypeOf(Wrapper, Class);\n };\n\n return _wrapNativeSuper(Class);\n}\n\nmodule.exports = _wrapNativeSuper;","export class ArtPlayerError extends Error {\n constructor(message, context) {\n super(message);\n if (typeof Error.captureStackTrace === 'function') {\n Error.captureStackTrace(this, context || this.constructor);\n }\n this.name = 'ArtPlayerError';\n }\n}\n\nexport function errorHandle(condition, msg) {\n const isFun = typeof condition === 'function';\n if (isFun ? !isFun() : !condition) {\n throw new ArtPlayerError(msg);\n }\n}\n\nexport function clamp(num, a, b) {\n return Math.max(Math.min(num, Math.max(a, b)), Math.min(a, b));\n}\n\nexport function getExt(url) {\n if (url.includes('?')) {\n return getExt(url.split('?')[0]);\n }\n\n if (url.includes('#')) {\n return getExt(url.split('#')[0]);\n }\n\n return url\n .trim()\n .toLowerCase()\n .split('.')\n .pop();\n}\n\nexport function append(parent, child) {\n if (child instanceof Element) {\n parent.appendChild(child);\n } else {\n parent.insertAdjacentHTML('beforeend', child);\n }\n return parent.lastElementChild;\n}\n\nexport function setStyle(element, styles) {\n Object.keys(styles).forEach(key => {\n element.style[key] = styles[key];\n });\n return element;\n}\n\nexport function secondToTime(second) {\n const add0 = num => num < 10 ? `0${num}` : String(num);\n const hour = Math.floor(second / 3600);\n const min = Math.floor((second - hour * 3600) / 60);\n const sec = Math.floor(second - hour * 3600 - min * 60);\n return (hour > 0 ? [hour, min, sec] : [min, sec]).map(add0).join(':');\n}\n\nexport function deepMerge(...sources) {\n const isObject = value => value !== null && typeof value === 'object';\n let returnValue = {};\n for (const source of sources) {\n if (Array.isArray(source)) {\n if (!Array.isArray(returnValue)) {\n returnValue = [];\n }\n returnValue = [...returnValue, ...source];\n } else if (isObject(source)) {\n for (const key in source) {\n if (source.hasOwnProperty(key)) {\n let value = source[key];\n if (isObject(value) && key in returnValue) {\n value = deepMerge(returnValue[key], value);\n }\n returnValue = { ...returnValue, [key]: value };\n }\n }\n }\n }\n return returnValue;\n}\n\nexport function getStorage(key) {\n const storage = JSON.parse(localStorage.getItem('artplayer_settings')) || {};\n return key ? storage[key] : storage;\n}\n\nexport function setStorage(key, value) {\n const storage = Object.assign({}, getStorage(), {\n [key]: value\n });\n localStorage.setItem('artplayer_settings', JSON.stringify(storage));\n}\n\nexport function getType(val) {\n const { toString } = Object.prototype;\n const type = toString.call(val).slice(8, -1).toLowerCase().replace(/\\s/g, '');\n return type;\n}\n\nexport function tooltip(target, msg, pos = 'up') {\n target.setAttribute('data-balloon', msg);\n target.setAttribute('data-balloon-pos', pos);\n}\n\nexport function sleep(ms = 0) {\n return new Promise(resolve => setTimeout(resolve, ms));\n}\n","export default {\n container: {\n type: 'string',\n required: true\n },\n url: {\n type: 'string',\n required: true\n },\n poster: {\n type: 'string'\n },\n volume: {\n type: 'number'\n },\n thumbnails: {\n type: 'object',\n child: {\n url: {\n type: 'string'\n },\n number: {\n type: 'number'\n },\n width: {\n type: 'number'\n },\n height: {\n type: 'number'\n },\n column: {\n type: 'number'\n }\n }\n },\n autoplay: {\n type: 'boolean'\n },\n loop: {\n type: 'boolean'\n },\n type: {\n type: 'string'\n },\n mimeCodec: {\n type: 'string'\n },\n layers: {\n type: 'array',\n child: {\n name: {\n type: 'string'\n },\n index: {\n type: 'number'\n },\n html: {\n type: 'string'\n },\n style: {\n type: 'object'\n }\n }\n },\n contextmenu: {\n type: 'array',\n child: {\n name: {\n type: 'string'\n },\n html: {\n type: 'string'\n },\n click: {\n type: 'function'\n }\n }\n },\n loading: {\n type: 'string'\n },\n theme: {\n type: 'string'\n },\n hotkey: {\n type: 'boolean'\n },\n subtitle: {\n type: 'object',\n child: {\n url: {\n type: 'string'\n },\n style: {\n type: 'object'\n }\n }\n },\n controls: {\n type: 'array',\n child: {\n option: {\n disable: {\n type: 'boolean'\n },\n position: {\n type: 'string'\n },\n index: {\n type: 'number'\n }\n }\n }\n },\n highlight: {\n type: 'array',\n child: {\n time: {\n type: 'number'\n },\n text: {\n type: 'string'\n }\n }\n },\n moreVideoAttr: {\n type: 'object'\n },\n lang: {\n type: 'string'\n }\n};\n","import { errorHandle, getType } from '../utils';\nimport scheme from './scheme';\n\nexport default function validOption(option, param = scheme, path = ['option']) {\n Object.keys(option).some(key => {\n if (!param[key]) {\n return true;\n }\n\n const value = option[key];\n const type = getType(value);\n const requiredType = param[key].type;\n const isRequired = param[key].required;\n const requiredChild = param[key].child;\n\n if (type === 'object' && requiredChild) {\n validOption(value, requiredChild, path.concat(key));\n }\n\n if (type === 'array' && requiredChild) {\n value.forEach((item, index) => {\n validOption(item, requiredChild, path.concat(`${key}[${index}]`));\n });\n }\n\n errorHandle(!isRequired || value, `'${path.join('.')}.${key}' is required`);\n errorHandle(requiredType === type, `'${path.join('.')}.${key}' require '${requiredType}' type, but got '${type}'`);\n return false;\n });\n}\n","export default {\n mp4: 'video/mp4; codecs=\"avc1.42E01E, mp4a.40.2\"',\n webm: 'video/webm; codecs=\"vorbis, vp8\"',\n ts: 'video/mp2t; codecs=\"avc1.42E01E, mp4a.40.2\"'\n};\n","export default {\n mediaSource: {\n propertys: [\n 'activeSourceBuffers',\n 'duration',\n 'readyState',\n 'sourceBuffers'\n ],\n methods: [\n 'addSourceBuffer',\n 'endOfStream',\n 'removeSourceBuffer',\n 'clearLiveSeekableRange',\n 'setLiveSeekableRange'\n ],\n events: [\n 'sourceclose',\n 'sourceended',\n 'sourceopen'\n ]\n },\n sourceBuffer: {\n propertys: [\n 'mode',\n 'updating',\n 'buffered',\n 'timestampOffset',\n 'audioTracks',\n 'videoTracks',\n 'textTracks',\n 'appendWindowStart',\n 'appendWindowEnd',\n 'trackDefaults'\n ],\n methods: [\n 'appendBuffer',\n 'appendStream',\n 'abort',\n 'remove'\n ],\n events: [\n 'abort',\n 'error',\n 'update',\n 'updateend',\n 'updatestart'\n ]\n },\n sourceBufferList: {\n propertys: [\n 'length'\n ],\n events: [\n 'addsourcebuffer',\n 'removesourcebuffer'\n ]\n }\n};\n","export default {\n propertys: [\n 'audioTracks',\n 'autoplay',\n 'buffered',\n 'controller',\n 'controls',\n 'crossOrigin',\n 'currentSrc',\n 'currentTime',\n 'defaultMuted',\n 'defaultPlaybackRate',\n 'duration',\n 'ended',\n 'error',\n 'loop',\n 'mediaGroup',\n 'muted',\n 'networkState',\n 'paused',\n 'playbackRate',\n 'played',\n 'preload',\n 'readyState',\n 'seekable',\n 'seeking',\n 'src',\n 'startDate',\n 'textTracks',\n 'videoTracks',\n 'volume'\n ],\n methods: [\n 'addTextTrack',\n 'canPlayType',\n 'load',\n 'play',\n 'pause'\n ],\n events: [\n 'abort',\n 'canplay',\n 'canplaythrough',\n 'durationchange',\n 'emptied',\n 'ended',\n 'error',\n 'loadeddata',\n 'loadedmetadata',\n 'loadstart',\n 'pause',\n 'play',\n 'playing',\n 'progress',\n 'ratechange',\n 'seeked',\n 'seeking',\n 'stalled',\n 'suspend',\n 'timeupdate',\n 'volumechange',\n 'waiting'\n ]\n};\n","import mimeCodec from './mimeCodec';\nimport mse from './mse';\nimport video from './video';\n\nexport default {\n mimeCodec,\n mse,\n video\n};\n","function E () {\n // Keep this empty so it's easier to inherit from\n // (via https://github.com/lipsmack from https://github.com/scottcorgan/tiny-emitter/issues/3)\n}\n\nE.prototype = {\n on: function (name, callback, ctx) {\n var e = this.e || (this.e = {});\n\n (e[name] || (e[name] = [])).push({\n fn: callback,\n ctx: ctx\n });\n\n return this;\n },\n\n once: function (name, callback, ctx) {\n var self = this;\n function listener () {\n self.off(name, listener);\n callback.apply(ctx, arguments);\n };\n\n listener._ = callback\n return this.on(name, listener, ctx);\n },\n\n emit: function (name) {\n var data = [].slice.call(arguments, 1);\n var evtArr = ((this.e || (this.e = {}))[name] || []).slice();\n var i = 0;\n var len = evtArr.length;\n\n for (i; i < len; i++) {\n evtArr[i].fn.apply(evtArr[i].ctx, data);\n }\n\n return this;\n },\n\n off: function (name, callback) {\n var e = this.e || (this.e = {});\n var evts = e[name];\n var liveEvents = [];\n\n if (evts && callback) {\n for (var i = 0, len = evts.length; i < len; i++) {\n if (evts[i].fn !== callback && evts[i].fn._ !== callback)\n liveEvents.push(evts[i]);\n }\n }\n\n // Remove event from queue to prevent memory leak\n // Suggested by https://github.com/lazd\n // Ref: https://github.com/scottcorgan/tiny-emitter/commit/c6ebfaa9bc973b33d110a84a307742b7cf94c953#commitcomment-5024910\n\n (liveEvents.length)\n ? e[name] = liveEvents\n : delete e[name];\n\n return this;\n }\n};\n\nmodule.exports = E;\n","export default class Template {\n constructor(art) {\n this.art = art;\n this.init();\n }\n\n init() {\n const { refs } = this.art;\n refs.$container.innerHTML = `\n${item}
`)\n .join('');\n }\n this.art.emit('subtitle:update', $subtitle);\n });\n }\n });\n }\n\n load(url) {\n let type;\n return fetch(url)\n .then(response => {\n type = response.headers.get('Content-Type');\n return response.text();\n })\n .then(text => {\n if ((/x-subrip/gi).test(type)) {\n return this.srtToVtt(text);\n }\n return url;\n })\n .catch(err => {\n throw err;\n });\n }\n\n srtToVtt(text) {\n const vttText = 'WEBVTT \\r\\n\\r\\n'.concat(\n text\n .replace(/\\{\\\\([ibu])\\}/g, '$1>')\n .replace(/\\{\\\\([ibu])1\\}/g, '<$1>')\n .replace(/\\{([ibu])\\}/g, '<$1>')\n .replace(/\\{\\/([ibu])\\}/g, '$1>')\n .replace(/(\\d\\d:\\d\\d:\\d\\d),(\\d\\d\\d)/g, '$1.$2')\n .concat('\\r\\n\\r\\n')\n );\n return URL.createObjectURL(\n new Blob([vttText], {\n type: 'text/vtt'\n })\n );\n }\n\n checkExt(url) {\n const ext = getExt(url);\n errorHandle(\n ext === 'vtt' || ext === 'srt',\n `'subtitle.url' option require 'vtt' or 'srt' format, but got '${ext}'.`\n );\n }\n\n show() {\n const { $subtitle } = this.art.refs;\n $subtitle.style.display = 'block';\n this.isShow = true;\n this.art.emit('subtitle:show', $subtitle);\n }\n\n hide() {\n const { $subtitle } = this.art.refs;\n $subtitle.style.display = 'none';\n this.isShow = false;\n this.art.emit('subtitle:hide', $subtitle);\n }\n\n switch(url) {\n const { $track } = this.art.refs;\n this.checkExt(url);\n errorHandle($track, 'You need to initialize the subtitle option first.');\n this.load(url).then(data => {\n if (url !== data) {\n $track.src = data;\n this.art.emit('subtitle:switch', url);\n }\n });\n }\n}\n","export default class Events {\n constructor(art) {\n this.art = art;\n this.destroyEvents = [];\n this.proxy = this.proxy.bind(this);\n }\n\n proxy(target, name, callback, option = {}) {\n if (Array.isArray(name)) {\n name.forEach(item => this.proxy(target, item, callback, option));\n }\n\n target.addEventListener(name, callback, option);\n this.destroyEvents.push(() => {\n target.removeEventListener(name, callback, option);\n });\n }\n\n destroy() {\n this.destroyEvents.forEach(event => event());\n }\n}\n","export default class Hotkey {\n constructor(art) {\n this.art = art;\n if (this.art.option.hotkey) {\n this.init();\n }\n }\n\n init() {\n const {\n player,\n refs: { $player },\n events: { proxy }\n } = this.art;\n\n proxy(document, 'click', event => {\n this.art.isFocus = event.path.indexOf($player) > -1;\n });\n\n proxy(window, 'keydown', event => {\n if (this.art.isFocus) {\n const tag = document.activeElement.tagName.toUpperCase();\n const editable = document.activeElement.getAttribute('contenteditable');\n if (\n tag !== 'INPUT' &&\n tag !== 'TEXTAREA' &&\n editable !== '' &&\n editable !== 'true'\n ) {\n switch (event.keyCode) {\n case 39:\n event.preventDefault();\n player.seek(player.currentTime() + 10);\n break;\n case 37:\n event.preventDefault();\n player.seek(player.currentTime() - 10);\n break;\n case 38:\n event.preventDefault();\n player.volume(player.volume() + 0.05);\n break;\n case 40:\n event.preventDefault();\n player.volume(player.volume() - 0.05);\n break;\n case 32:\n event.preventDefault();\n player.toggle();\n break;\n default:\n break;\n }\n }\n }\n });\n }\n}\n","import { append, setStyle } from './utils';\n\nlet id = 0;\nexport default class Layers {\n constructor(art) {\n this.art = art;\n this.add = this.add.bind(this);\n this.art.option.layers.filter(item => item.disable === false).forEach(this.add);\n this.init();\n }\n\n init() {\n const { refs, player, events: { proxy } } = this.art;\n proxy(refs.$layers, 'click', event => {\n if (event.path[0] === refs.$layers) {\n player.pause();\n }\n });\n }\n\n add(option, callback) {\n const { refs } = this.art;\n id++;\n\n const $layer = document.createElement('div');\n $layer.setAttribute('data-art-layer-id', id);\n $layer.setAttribute('class', `art-layer art-layer-${option.name || id}`);\n $layer.style.zIndex = option.index || id;\n append($layer, option.html);\n setStyle($layer, option.style || {});\n refs.$layers.appendChild($layer);\n this.art.emit('layers:add', $layer);\n callback && callback($layer);\n }\n\n show() {\n const { $layers } = this.art.refs;\n $layers.style.display = 'block';\n this.art.emit('layers:show', $layers);\n }\n\n hide() {\n const { $layers } = this.art.refs;\n $layers.style.display = 'none';\n this.art.emit('layers:hide', $layers);\n }\n}\n","import icons from './icons';\nimport { append } from './utils';\n\nexport default class Loading {\n constructor(art) {\n this.art = art;\n this.init();\n }\n\n init() {\n const { option, refs: { $loading } } = this.art;\n append($loading, option.loading || icons.loading);\n }\n\n hide() {\n const { $loading } = this.art.refs;\n $loading.style.display = 'none';\n this.art.emit('loading:hide', $loading);\n }\n\n show() {\n const { $loading } = this.art.refs;\n $loading.style.display = 'flex';\n this.art.emit('loading:show', $loading);\n }\n}\n","export default class Notice {\n constructor(art) {\n this.art = art;\n this.timer = null;\n }\n\n show(msg, autoHide = true, time = 1000) {\n const { $notice } = this.art.refs;\n $notice.style.display = 'block';\n $notice.innerHTML = msg instanceof Error ? msg.message.trim() : msg;\n if (autoHide) {\n clearTimeout(this.timer);\n this.timer = setTimeout(() => {\n this.hide();\n }, time);\n }\n this.art.emit('notice:show', $notice);\n }\n\n hide() {\n const { $notice } = this.art.refs;\n $notice.style.display = 'none';\n this.art.emit('notice:hide', $notice);\n }\n}\n","import icons from './icons';\nimport { append } from './utils';\n\nexport default class Mask {\n constructor(art) {\n this.art = art;\n this.init();\n }\n\n init() {\n const {\n player,\n refs,\n events: { proxy }\n } = this.art;\n\n append(refs.$mask, icons.playBig);\n\n proxy(refs.$mask, 'click', () => {\n player.play();\n this.hide();\n });\n }\n\n show() {\n const { $mask } = this.art.refs;\n $mask.style.display = 'block';\n this.art.emit('mask:show', $mask);\n }\n\n hide() {\n const { $mask } = this.art.refs;\n $mask.style.display = 'none';\n this.art.emit('mask:show', $mask);\n }\n}\n","import './style';\nimport 'balloon-css/balloon.min.css';\nimport { deepMerge } from './utils';\nimport validOption from './verification';\nimport config from './config';\nimport Emitter from 'tiny-emitter';\nimport Template from './template';\nimport I18n from './i18n';\nimport Player from './player';\nimport Controls from './controls';\nimport Contextmenu from './contextmenu';\nimport Danmu from './danmu';\nimport Info from './info';\nimport Subtitle from './subtitle';\nimport Events from './events';\nimport Hotkey from './hotkey';\nimport Layers from './layers';\nimport Loading from './loading';\nimport Notice from './notice';\nimport Mask from './mask';\n\nlet id = 0;\nexport const instances = [];\n\nclass Artplayer extends Emitter {\n constructor(option) {\n super();\n this.emit('init:start');\n this.option = deepMerge({}, Artplayer.DEFAULTS, option);\n validOption(this.option);\n this.init();\n this.emit('init:end');\n }\n\n static get version() {\n return '__VERSION__';\n }\n\n static get config() {\n return config;\n }\n\n static get DEFAULTS() {\n return {\n container: '.artplayer',\n url: '',\n poster: '',\n volume: 0.7,\n thumbnails: {\n url: '',\n number: 60,\n width: 160,\n height: 90,\n column: 10\n },\n autoplay: false,\n loop: false,\n type: '',\n mimeCodec: '',\n layers: [],\n contextmenu: [],\n loading: '',\n theme: '#f00',\n hotkey: true,\n subtitle: {\n url: '',\n style: {}\n },\n controls: [],\n highlight: [],\n moreVideoAttr: {\n 'controls': false,\n 'preload': 'auto',\n 'webkit-playsinline': true,\n 'playsinline': true\n },\n lang: navigator.language.toLowerCase()\n };\n }\n\n static use(Plugin) {\n const name = Plugin.name.toLowerCase();\n const installedPlugins = this.plugins || (this.plugins = {});\n if (!installedPlugins[name]) {\n const args = Array.from(arguments).slice(1);\n args.unshift(this);\n installedPlugins[name] = new Plugin(...args);\n this.prototype.emit('use', Plugin);\n }\n return this;\n }\n\n init() {\n this.isError = false;\n this.isFocus = false;\n this.isPlaying = false;\n this.refs = {};\n\n if (this.option.container instanceof Element) {\n this.refs.$container = this.option.container;\n } else {\n this.refs.$container = document.querySelector(this.option.container);\n }\n\n this.template = new Template(this);\n this.i18n = new I18n(this);\n this.notice = new Notice(this);\n this.events = new Events(this);\n this.player = new Player(this);\n this.layers = new Layers(this);\n this.controls = new Controls(this);\n this.contextmenu = new Contextmenu(this);\n this.danmu = new Danmu(this);\n this.subtitle = new Subtitle(this);\n this.info = new Info(this);\n this.loading = new Loading(this);\n this.hotkey = new Hotkey(this);\n this.mask = new Mask(this);\n\n this.id = id++;\n instances.push(this);\n return this;\n }\n\n destroy(removeHtml = false) {\n this.events.destroy();\n instances.splice(instances.indexOf(this), 1);\n if (removeHtml) {\n this.refs.$container.innerHTML = '';\n }\n this.emit('destroy');\n }\n}\n\nwindow.Artplayer = Artplayer;\nexport default Artplayer;\n"],"names":["_typeof","ArtPlayerError","message","context","Error","captureStackTrace","constructor","name","errorHandle","condition","msg","isFun","clamp","num","a","b","Math","max","min","getExt","url","includes","split","trim","toLowerCase","pop","append","parent","child","Element","appendChild","insertAdjacentHTML","lastElementChild","setStyle","element","styles","Object","keys","forEach","key","style","secondToTime","second","add0","String","hour","floor","sec","map","join","deepMerge","isObject","value","returnValue","sources","source","Array","isArray","hasOwnProperty","getStorage","storage","JSON","parse","localStorage","getItem","setStorage","assign","setItem","stringify","getType","val","toString","prototype","type","call","slice","replace","tooltip","target","pos","setAttribute","sleep","ms","Promise","resolve","setTimeout","container","required","poster","volume","thumbnails","number","width","height","column","autoplay","loop","mimeCodec","layers","index","html","contextmenu","click","loading","theme","hotkey","subtitle","controls","option","disable","position","highlight","time","text","moreVideoAttr","lang","validOption","param","scheme","path","some","requiredType","isRequired","requiredChild","concat","item","mp4","webm","ts","mediaSource","propertys","methods","events","sourceBuffer","sourceBufferList","mse","video","Template","art","init","refs","$container","innerHTML","$player","querySelector","$video","$subtitle","$bottom","$progress","$controls","$controlsLeft","$controlsRight","$layers","$loading","$notice","$mask","$info","$infoPanel","$infoClose","i18nMap","I18n","language","callback","Player","eventBind","firstLoad","reconnectTime","maxReconnectTime","src","proxy","i18n","notice","config","eventName","event","emit","on","show","hide","mask","promise","play","undefined","then","catch","err","console","warn","isPlaying","seek","get","isError","classList","add","destroy","pause","newTime","duration","currentTime","percentage","parseInt","rate","newRate","playbackRate","Danmu","Fullscreen","Pip","icons","playBig","volumeClose","creatDomFromSvg","result","tmp","document","createElement","childNodes","PlayAndPause","player","$play","$control","$pause","display","Progress","isDroging","getLoaded","bind","getPlayed","set","$loaded","$played","$highlight","$indicator","$tip","left","Number","indexOf","showHighlight","showTime","getPosFromEvent","remove","dataset","clientWidth","tipWidth","buffered","length","end","getBoundingClientRect","x","Subtitle","isShow","opacity","Time","getTime","Volume","$volume","$volumeClose","$volumePanel","$volumeHandle","setVolumeHandle","volumeChangeFromEvent","panelLeft","panelWidth","handleWidth","Setting","Thumbnails","isLoad","load","showThumbnails","reject","image","Image","complete","progress","posWidth","perWidth","perIndex","ceil","yIndex","xIndex","backgroundImage","backgroundPosition","id","Controls","$map","mount","control","commonMethod","push","apply","sort","controlIndex","defineProperty","Contextmenu","info","preventDefault","isFocus","$contextmenu","creatMenu","setPos","$menu","mouseX","clientX","mouseY","clientY","cHeight","cWidth","cLeft","cTop","top","mHeight","mWidth","menuLeft","menuTop","Info","creatInfo","getHeader","clearTimeout","timer","infoHtml","types","from","querySelectorAll","fetch","method","data","headers","head","checkExt","$track","default","kind","textTracks","track","activeCues","cue","template","getCueAsHTML","response","test","srtToVtt","vttText","URL","createObjectURL","Blob","ext","Events","destroyEvents","addEventListener","removeEventListener","Hotkey","window","tag","activeElement","tagName","toUpperCase","editable","getAttribute","keyCode","toggle","Layers","filter","$layer","zIndex","Loading","Notice","autoHide","Mask","instances","Artplayer","DEFAULTS","danmu","removeHtml","splice","Plugin","installedPlugins","plugins","args","arguments","unshift","navigator","Emitter"],"mappings":"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"} \ No newline at end of file diff --git a/src/controls/playAndPause.js b/src/controls/playAndPause.js index eb4655561..8ce338afb 100644 --- a/src/controls/playAndPause.js +++ b/src/controls/playAndPause.js @@ -7,13 +7,7 @@ export default class PlayAndPause { } apply(art) { - this.art = art; - this.init(); - } - - init() { - const { events: { proxy }, player, i18n } = this.art; - + const { events: { proxy }, player, i18n } = art; this.$play = append(this.option.$control, icons.play); this.$pause = append(this.option.$control, icons.pause); tooltip(this.$play, i18n.get('Play')); @@ -28,12 +22,12 @@ export default class PlayAndPause { player.pause(); }); - this.art.on('video:playing', () => { + art.on('video:playing', () => { this.$play.style.display = 'none'; this.$pause.style.display = 'block'; }); - this.art.on('video:pause', () => { + art.on('video:pause', () => { this.$play.style.display = 'block'; this.$pause.style.display = 'none'; }); diff --git a/src/controls/progress.js b/src/controls/progress.js index bb7c9673c..75ee66440 100644 --- a/src/controls/progress.js +++ b/src/controls/progress.js @@ -3,14 +3,14 @@ import { append, clamp, secondToTime } from '../utils'; export default class Progress { constructor(option) { this.option = option; - } - - apply(art) { - this.art = art; this.isDroging = false; this.getLoaded = this.getLoaded.bind(this); this.getPlayed = this.getPlayed.bind(this); this.set = this.set.bind(this); + } + + apply(art) { + this.art = art; this.init(); } diff --git a/src/controls/subtitle.js b/src/controls/subtitle.js index b2343ea0e..783b07336 100644 --- a/src/controls/subtitle.js +++ b/src/controls/subtitle.js @@ -1,9 +1,26 @@ +import { append, tooltip } from '../utils'; +import icons from '../icons'; + export default class Subtitle { constructor(option) { this.option = option; } apply(art) { - this.art = art; + const { events: { proxy }, subtitle, i18n } = art; + this.$subtitle = append(this.option.$control, icons.subtitle); + tooltip(this.$subtitle, i18n.get('Hide subtitle')); + + proxy(this.$subtitle, 'click', () => { + if (subtitle.isShow) { + subtitle.hide(); + tooltip(this.$subtitle, i18n.get('Show subtitle')); + this.$subtitle.style.opacity = '.5'; + } else { + subtitle.show(); + tooltip(this.$subtitle, i18n.get('Hide subtitle')); + this.$subtitle.style.opacity = '1'; + } + }); } } diff --git a/src/controls/volume.js b/src/controls/volume.js index d8937397e..350295f26 100644 --- a/src/controls/volume.js +++ b/src/controls/volume.js @@ -4,11 +4,11 @@ import icons from '../icons'; export default class Volume { constructor(option) { this.option = option; + this.isDroging = false; } apply(art) { this.art = art; - this.isDroging = false; this.init(); } diff --git a/src/i18n.js b/src/i18n.js index 029de7beb..1ae84034b 100644 --- a/src/i18n.js +++ b/src/i18n.js @@ -9,7 +9,9 @@ let i18nMap = { 'Pause': '暂停', 'Rate': '速度', 'Mute': '静音', - 'Reconnect': '重新连接' + 'Reconnect': '重新连接', + 'Hide subtitle': '隐藏字幕', + 'Show subtitle': '显示字幕' }, 'zh-tw': { 'About author': '關於作者', @@ -21,7 +23,9 @@ let i18nMap = { 'Pause': '暫停', 'Rate': '速度', 'Mute': '靜音', - 'Reconnect': '重新連接' + 'Reconnect': '重新連接', + 'Hide subtitle': '隱藏字幕', + 'Show subtitle': '顯示字幕' } }; diff --git a/src/icons/index.js b/src/icons/index.js index e47176589..f6d5bbc31 100644 --- a/src/icons/index.js +++ b/src/icons/index.js @@ -4,6 +4,7 @@ import play from './play.svg'; import pause from './pause.svg'; import volume from './volume.svg'; import volumeClose from './volume-close.svg'; +import subtitle from './subtitle.svg'; const icons = { loading, @@ -11,7 +12,8 @@ const icons = { play, pause, volume, - volumeClose + volumeClose, + subtitle }; function creatDomFromSvg(map) { diff --git a/src/icons/subtitle.svg b/src/icons/subtitle.svg new file mode 100644 index 000000000..242b3aff9 --- /dev/null +++ b/src/icons/subtitle.svg @@ -0,0 +1,4 @@ + \ No newline at end of file diff --git a/src/subtitle.js b/src/subtitle.js index 9add80f0e..f2c6dc258 100644 --- a/src/subtitle.js +++ b/src/subtitle.js @@ -3,6 +3,7 @@ import { errorHandle, getExt, setStyle } from './utils'; export default class Subtitle { constructor(art) { this.art = art; + this.isShow = true; const { url } = this.art.option.subtitle; if (url) { @@ -92,12 +93,14 @@ export default class Subtitle { show() { const { $subtitle } = this.art.refs; $subtitle.style.display = 'block'; + this.isShow = true; this.art.emit('subtitle:show', $subtitle); } hide() { const { $subtitle } = this.art.refs; $subtitle.style.display = 'none'; + this.isShow = false; this.art.emit('subtitle:hide', $subtitle); }