xgplayer 2.31.3 → 2.31.7

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (108) hide show
  1. package/README.md +1 -1
  2. package/bin/xgplayer.js +0 -0
  3. package/browser/controls/airplay.js +1 -0
  4. package/browser/controls/cssFullscreen.js +1 -0
  5. package/browser/controls/danmu.js +1 -0
  6. package/browser/controls/definition.js +1 -0
  7. package/browser/controls/download.js +1 -0
  8. package/browser/controls/enter.js +1 -0
  9. package/browser/controls/error.js +1 -0
  10. package/browser/controls/errorRetry.js +1 -0
  11. package/browser/controls/flex.js +1 -0
  12. package/browser/controls/fullscreen.js +1 -0
  13. package/browser/controls/i18n.js +1 -0
  14. package/browser/controls/keyboard.js +1 -0
  15. package/browser/controls/loading.js +1 -0
  16. package/browser/controls/localPreview.js +1 -0
  17. package/browser/controls/memoryPlay.js +1 -0
  18. package/browser/controls/miniplayer.js +22 -0
  19. package/browser/controls/mobile.js +1 -0
  20. package/browser/controls/nativeTextTrack.js +1 -0
  21. package/browser/controls/pc.js +1 -0
  22. package/browser/controls/pip.js +1 -0
  23. package/browser/controls/play.js +1 -0
  24. package/browser/controls/playNext.js +1 -0
  25. package/browser/controls/playbackRate.js +1 -0
  26. package/browser/controls/poster.js +1 -0
  27. package/browser/controls/progress.js +1 -0
  28. package/browser/controls/reload.js +1 -0
  29. package/browser/controls/replay.js +1 -0
  30. package/browser/controls/rotate.js +1 -0
  31. package/browser/controls/screenShot.js +1 -0
  32. package/browser/controls/start.js +1 -0
  33. package/browser/controls/textTrack.js +1 -0
  34. package/browser/controls/time.js +1 -0
  35. package/browser/controls/volume.js +1 -0
  36. package/browser/core_player.js +1 -1
  37. package/browser/core_player.js.map +1 -1
  38. package/browser/index.js +5 -5
  39. package/browser/index.js.map +1 -1
  40. package/browser/simple_player.js +1 -1
  41. package/browser/simple_player.js.map +1 -1
  42. package/dist/controls/airplay.js +1 -0
  43. package/dist/controls/cssFullscreen.js +1 -0
  44. package/dist/controls/danmu.js +1 -0
  45. package/dist/controls/definition.js +1 -0
  46. package/dist/controls/download.js +1 -0
  47. package/dist/controls/enter.js +1 -0
  48. package/dist/controls/error.js +1 -0
  49. package/dist/controls/errorRetry.js +1 -0
  50. package/dist/controls/flex.js +1 -0
  51. package/dist/controls/fullscreen.js +1 -0
  52. package/dist/controls/i18n.js +1 -0
  53. package/dist/controls/keyboard.js +1 -0
  54. package/dist/controls/loading.js +1 -0
  55. package/dist/controls/localPreview.js +1 -0
  56. package/dist/controls/memoryPlay.js +1 -0
  57. package/dist/controls/miniplayer.js +22 -0
  58. package/dist/controls/mobile.js +1 -0
  59. package/dist/controls/nativeTextTrack.js +1 -0
  60. package/dist/controls/pc.js +1 -0
  61. package/dist/controls/pip.js +1 -0
  62. package/dist/controls/play.js +1 -0
  63. package/dist/controls/playNext.js +1 -0
  64. package/dist/controls/playbackRate.js +1 -0
  65. package/dist/controls/poster.js +1 -0
  66. package/dist/controls/progress.js +1 -0
  67. package/dist/controls/reload.js +1 -0
  68. package/dist/controls/replay.js +1 -0
  69. package/dist/controls/rotate.js +1 -0
  70. package/dist/controls/screenShot.js +1 -0
  71. package/dist/controls/start.js +1 -0
  72. package/dist/controls/textTrack.js +1 -0
  73. package/dist/controls/time.js +1 -0
  74. package/dist/controls/volume.js +1 -0
  75. package/dist/core_player.js +12 -7
  76. package/dist/core_player.js.map +1 -1
  77. package/dist/index.js +44 -21
  78. package/dist/index.js.map +1 -1
  79. package/dist/simple_player.js +27 -11
  80. package/dist/simple_player.js.map +1 -1
  81. package/es/controls/definition.js +1 -1
  82. package/es/controls/errorRetry.js +1 -1
  83. package/es/controls/memoryPlay.js +1 -1
  84. package/es/controls/miniplayer.js +4 -4
  85. package/es/controls/nativeTextTrack.js +1 -1
  86. package/es/controls/pip.js +1 -1
  87. package/es/controls/progress.js +1 -1
  88. package/es/core_player.js +1 -1
  89. package/es/core_player.js.map +1 -1
  90. package/es/index.js +6 -6
  91. package/es/index.js.map +1 -1
  92. package/es/simple_player.js +1 -1
  93. package/es/simple_player.js.map +1 -1
  94. package/package.json +2 -1
  95. package/src/controls/memoryPlay.js +4 -1
  96. package/src/controls/pip.js +3 -1
  97. package/src/player.js +6 -6
  98. package/src/proxy.js +3 -0
  99. package/src/skin/controls/definition.js +1 -0
  100. package/src/skin/controls/memoryPlay.js +1 -1
  101. package/src/skin/controls/playNext.js +1 -1
  102. package/src/skin/controls/progress.js +17 -6
  103. package/version.json +1 -1
  104. package/webpack.config.js +1 -1
  105. package/browser/controls.js.map +0 -1
  106. package/browser/player.js.map +0 -1
  107. package/dist/controls.js.map +0 -1
  108. package/dist/player.js.map +0 -1
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "xgplayer",
3
- "version": "2.31.3",
3
+ "version": "2.31.7",
4
4
  "description": "video player",
5
5
  "main": "./dist/index.js",
6
6
  "typings": "./types/index.d.ts",
@@ -15,6 +15,7 @@
15
15
  "release:stable": "npm version patch && npm publish --registry=https://registry.npmjs.org",
16
16
  "release:alpha": "npm version prerelease --preid=alpha && npm publish --tag xgplayer-2-alpha --registry=https://registry.npmjs.org",
17
17
  "release:alpha-test": "npm publish --tag alpha-test-2x --registry=https://registry.npmjs.org"
18
+
18
19
  },
19
20
  "keywords": [
20
21
  "video",
@@ -1,7 +1,10 @@
1
1
  let memoryPlay = function () {
2
2
  let player = this
3
3
  player.on('memoryPlayStart', (lastPlayTime) => {
4
- player.currentTime = lastPlayTime
4
+ setTimeout(() => {
5
+ console.log('memoryPlayStart', lastPlayTime, player.readyState, 11)
6
+ player.currentTime = lastPlayTime
7
+ },)
5
8
  })
6
9
  }
7
10
 
@@ -1,5 +1,5 @@
1
1
 
2
- import { PresentationMode, checkWebkitSetPresentationMode } from '../utils/util'
2
+ import { PresentationMode, checkWebkitSetPresentationMode, addClass, removeClass} from '../utils/util'
3
3
 
4
4
  let pip = function () {
5
5
  let player = this
@@ -25,10 +25,12 @@ let pip = function () {
25
25
  }
26
26
 
27
27
  player.video.addEventListener('enterpictureinpicture', function (pipWindow) {
28
+ addClass(player.root, 'xgplayer-pip-active')
28
29
  player.emit('requestPictureInPicture', pipWindow)
29
30
  })
30
31
 
31
32
  player.video.addEventListener('leavepictureinpicture', function () {
33
+ removeClass(player.root, 'xgplayer-pip-active')
32
34
  player.emit('exitPictureInPicture')
33
35
  })
34
36
 
package/src/player.js CHANGED
@@ -330,12 +330,12 @@ class Player extends Proxy {
330
330
  allOff(this)
331
331
  }
332
332
 
333
- if (!this.paused) {
334
- this.pause()
335
- this.once('pause', destroyFunc)
336
- } else {
337
- destroyFunc.call(this)
338
- }
333
+ // destroy immediately
334
+ // Don't use the paused property detection, it doesn't use MediaElement.paused,
335
+ // so it's not accurate enough. Destroy after waiting for pause event, this
336
+ // changes the synchronous behavior of destroy api
337
+ destroyFunc.call(this)
338
+
339
339
  super.destroy()
340
340
  }
341
341
 
package/src/proxy.js CHANGED
@@ -487,6 +487,9 @@ class Proxy {
487
487
  get pip () {
488
488
  return hasClass(this.root, 'xgplayer-pip-active')
489
489
  }
490
+ get isMiniPlayer () {
491
+ return hasClass(this.root, 'xgplayer-miniplayer-active')
492
+ }
490
493
  }
491
494
 
492
495
  export default Proxy
@@ -56,6 +56,7 @@ let s_definition = function () {
56
56
  return a.href === src
57
57
  }
58
58
  })
59
+ console.warn('cursrc:', cursrc, 'src:', src, 'list:', list)
59
60
  tmp.push(`</ul><p class='name'>${(cursrc[0] || {name: ''}).name}</p>`)
60
61
  let urlInRoot = root.querySelector('.xgplayer-definition')
61
62
  if (urlInRoot) {
@@ -29,7 +29,7 @@ let s_memoryPlay = function () {
29
29
  }, lastPlayTimeHideDelay * 1000)
30
30
  }
31
31
  }
32
- player.once('play', handlePlay)
32
+ player.once('playing', handlePlay)
33
33
  player.once('ended', removeFunc)
34
34
  }
35
35
 
@@ -26,7 +26,7 @@ let s_playNext = function () {
26
26
  let onUrlListEnd = function () {
27
27
  addClass(player.root, 'xgplayer-playnext-inactive')
28
28
  }
29
- player.on('urlListEnd', onUrlListEnd)
29
+ player.on('urlListEnd', onUrlListEnd)
30
30
 
31
31
  function onDestroy () {
32
32
  player.off('urlListEnd', onUrlListEnd)
@@ -166,8 +166,12 @@ let s_progress = function () {
166
166
  player.config.enableSwipeHandler.call(player);
167
167
  });
168
168
  };
169
-
170
- ['touchstart', 'mousedown'].forEach(item => {
169
+ let events = ['touchstart', 'mousedown'];
170
+ if (sniffer.device === 'mobile') {
171
+ // 解决在移动端触发多次seeking问题
172
+ events.pop()
173
+ }
174
+ events.forEach(item => {
171
175
  container.addEventListener(item, function (e) {
172
176
  if (player.config.disableProgress) return;
173
177
  // e.preventDefault()
@@ -205,6 +209,7 @@ let s_progress = function () {
205
209
  progress.style.width = `${w * 100 / containerWidth}%`
206
210
 
207
211
  if (player.videoConfig.mediaType === 'video' && !player.dash && !player.config.closeMoveSeek) {
212
+ console.log('trigger touchmove')
208
213
  player.currentTime = Number(now).toFixed(1)
209
214
  } else {
210
215
  let time = findDom(player.controls, '.xgplayer-time')
@@ -230,6 +235,7 @@ let s_progress = function () {
230
235
  player.emit('focus')
231
236
  }
232
237
  let up = function (e) {
238
+ console.log('up event', e)
233
239
  // e.preventDefault()
234
240
  e.stopPropagation()
235
241
  event(e)
@@ -250,6 +256,7 @@ let s_progress = function () {
250
256
  if(player.config.allowSeekPlayed && (Number(now).toFixed(1) > player.maxPlayedTime)) {}
251
257
  else {
252
258
  progress.style.width = `${w * 100 / containerWidth}%`
259
+ console.warn('trigger touchup')
253
260
  player.currentTime = Number(now).toFixed(1)
254
261
  }
255
262
  }
@@ -259,10 +266,14 @@ let s_progress = function () {
259
266
  player.emit('focus')
260
267
  player.isProgressMoving = false
261
268
  }
262
- window.addEventListener('mousemove', move)
263
- window.addEventListener('touchmove', move, { passive: false })
264
- window.addEventListener('mouseup', up)
265
- window.addEventListener('touchend', up)
269
+ // if (item === 'touchstart') {
270
+ window.addEventListener('touchmove', move, { passive: false })
271
+ window.addEventListener('touchend', up)
272
+ // } else {
273
+ window.addEventListener('mousemove', move)
274
+ // console.warn('add envent mouseup')
275
+ window.addEventListener('mouseup', up)
276
+ // }
266
277
  return true
267
278
  })
268
279
  })
package/version.json CHANGED
@@ -1,3 +1,3 @@
1
1
  {
2
- "version": "2.31.3"
2
+ "version": "2.31.7"
3
3
  }
package/webpack.config.js CHANGED
@@ -160,4 +160,4 @@ const client_controls = controls.map(key => {
160
160
  }
161
161
  })
162
162
 
163
- module.exports = [umd, umd_es6, client].concat(umd_es6_controls)
163
+ module.exports = [umd, umd_es6, client].concat(umd_es6_controls, umd_controls, client_controls)