zwplayer-vue2x 1.0.31 → 1.0.32

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.
@@ -30,6 +30,12 @@ const availabe_props = {
30
30
  disableVolumeControl: 'boolean',
31
31
  lostFocusPause: 'boolean',
32
32
  autoSmallWindow: 'boolean',
33
+ localPlayback: 'boolean',
34
+ recordButton: 'boolean',
35
+ segmentButton: 'boolean',
36
+ disableMutedConfirm: 'boolean',
37
+ keepAudioWindow: 'boolean',
38
+ lang: 'string',
33
39
  thumbnails: 'object',
34
40
  sendDanmu: 'function',
35
41
  danmuBarId: 'string',
@@ -42,27 +48,27 @@ const availabe_props = {
42
48
  };
43
49
 
44
50
  export default {
45
- name: 'ZwPlayer',
46
- data () {
51
+ name: 'ZwPlayer',
52
+ data () {
47
53
  return {
48
- zwplayer: null,
49
- nodename: 'ZwPlayer'
50
- }
51
- },
54
+ zwplayer: null,
55
+ nodename: 'ZwPlayer'
56
+ }
57
+ },
52
58
  props: {
53
- zwplayerlib: String,
54
- murl: String,
55
- nodeid: String,
56
- muted: Boolean,
57
- autoplay: {
58
- type: Boolean,
59
- default: true
60
- },
59
+ zwplayerlib: String,
60
+ murl: String,
61
+ nodeid: String,
62
+ muted: Boolean,
63
+ autoplay: {
64
+ type: Boolean,
65
+ default: true
66
+ },
61
67
  videoprop: Object,
62
68
  videostyle: String,
63
- reconnect: {
64
- type: Boolean,
65
- default: true
69
+ reconnect: {
70
+ type: Boolean,
71
+ default: true
66
72
  },
67
73
  controlbar: {
68
74
  type: Boolean,
@@ -73,24 +79,24 @@ export default {
73
79
  default: true
74
80
  }
75
81
  },
76
-
77
- emits: ['oneterror', 'onmediaevent', 'onready'],
78
- methods: {
79
- play(url, isLive, useOldFlv) {
80
- let vm = this;
81
-
82
- if (!url)
83
- url = this.murl;
84
- if (!vm.zwplayer)
85
- return;
86
-
82
+
83
+ emits: ['oneterror', 'onmediaevent', 'onready', 'onFileSelected', 'onFileLoaded'],
84
+ methods: {
85
+ play(url, isLive, useOldFlv) {
86
+ let vm = this;
87
+
88
+ if (!url)
89
+ url = this.murl;
90
+ if (!vm.zwplayer)
91
+ return;
92
+
87
93
  vm.zwplayer.play(url, isLive, useOldFlv);
88
- },
89
- stop() {
90
- let vm = this;
91
-
92
- if (vm.zwplayer) {
93
- vm.zwplayer.stop();
94
+ },
95
+ stop() {
96
+ let vm = this;
97
+
98
+ if (vm.zwplayer) {
99
+ vm.zwplayer.stop();
94
100
  }
95
101
  },
96
102
  pause() {
@@ -113,7 +119,7 @@ export default {
113
119
  }
114
120
  return undefined;
115
121
  },
116
-
122
+
117
123
  getCurrentTime() {
118
124
  let vm = this;
119
125
  if (vm.zwplayer) {
@@ -121,103 +127,103 @@ export default {
121
127
  }
122
128
  return undefined;
123
129
  },
124
-
130
+
125
131
  seekTime(time) {
126
132
  let vm = this;
127
-
133
+
128
134
  if (vm.zwplayer) {
129
135
  vm.zwplayer.seekTime(time);
130
136
  }
131
137
  },
132
138
  destroy() {
133
139
  let vm = this;
134
-
140
+
135
141
  if (vm.zwplayer) {
136
142
  vm.zwplayer.destroy();
137
143
  }
138
144
  },
139
145
  setplaystate(bPlaying) {
140
146
  let vm = this;
141
-
147
+
142
148
  if (vm.zwplayer) {
143
149
  vm.zwplayer.setplaystate(bPlaying);
144
150
  }
145
151
  },
146
-
152
+
147
153
  setEnableDanmu(bEnable) {
148
154
  let vm = this;
149
-
155
+
150
156
  if (vm.zwplayer) {
151
157
  vm.zwplayer.setEnableDanmu(bEnable);
152
158
  }
153
159
  },
154
-
160
+
155
161
  appendDanmu(msgObj, setting) {
156
162
  let vm = this;
157
-
163
+
158
164
  if (vm.zwplayer) {
159
165
  vm.zwplayer.appendDanmu(msgObj, setting);
160
166
  }
161
167
  },
162
-
168
+
163
169
  setChapters(chapters) {
164
170
  let vm = this;
165
-
171
+
166
172
  if (vm.zwplayer) {
167
173
  vm.zwplayer.setChapters(chapters);
168
174
  }
169
175
  },
170
-
176
+
171
177
  addSubtitle(subtitleUrl, pos, title) {
172
178
  let vm = this;
173
-
179
+
174
180
  if (vm.zwplayer) {
175
181
  vm.zwplayer.addSubtitle(subtitleUrl, pos, title);
176
182
  }
177
183
  },
178
-
184
+
179
185
  removeSubtitle() {
180
186
  let vm = this;
181
-
187
+
182
188
  if (vm.zwplayer) {
183
189
  vm.zwplayer.removeSubtitle();
184
190
  }
185
191
  },
186
-
192
+
187
193
  buildDanmuControlbar(parentId, className) {
188
194
  let vm = this;
189
-
195
+
190
196
  if (vm.zwplayer) {
191
197
  vm.zwplayer.buildDanmuControlbar(parentId, className);
192
198
  }
193
199
  },
194
-
200
+
195
201
  notifyResize(width, height) {
196
202
  let vm = this;
197
-
203
+
198
204
  if (vm.zwplayer) {
199
205
  vm.zwplayer.notifyResize(width, height);
200
206
  }
201
207
  },
202
-
203
- setMute(bMute) {
204
- let vm = this;
205
-
206
- if (vm.zwplayer) {
207
- vm.zwplayer.setMuted(bMute);
208
+
209
+ setMute(bMute) {
210
+ let vm = this;
211
+
212
+ if (vm.zwplayer) {
213
+ vm.zwplayer.setMuted(bMute);
208
214
  }
209
- },
210
-
211
- setullscr(bFullScr) {
212
- let vm = this;
213
-
214
- if (vm.zwplayer) {
215
- vm.is_fullscr = bFullScr;
216
- vm.zwplayer.setFullscreen(bFullScr);
215
+ },
216
+
217
+ setullscr(bFullScr) {
218
+ let vm = this;
219
+
220
+ if (vm.zwplayer) {
221
+ vm.is_fullscr = bFullScr;
222
+ vm.zwplayer.setFullscreen(bFullScr);
217
223
  }
218
224
  },
219
225
  },
220
-
226
+
221
227
  computed: {
222
228
  CurrentTime: function() {
223
229
  let vm = this;
@@ -226,18 +232,18 @@ export default {
226
232
  }
227
233
  return -1;
228
234
  }
229
- },
230
-
235
+ },
236
+
231
237
  render(createElement) {
232
238
  let playerid;
233
-
239
+
234
240
  // console.log('render');
235
241
  if (this.nodeid) {
236
242
  playerid = this.nodeid;
237
243
  }
238
244
  else {
239
245
  let now = (new Date()).getTime();
240
-
246
+
241
247
  if (!window.nextZWPlayerId) {
242
248
  window.nextZWPlayerId = 1000;
243
249
  }
@@ -246,37 +252,37 @@ export default {
246
252
  }
247
253
  playerid = 'zwplayer-'+ window.nextZWPlayerId + '-' + now;
248
254
  }
249
-
255
+
250
256
  let playerWrap = createElement('div', {
251
257
  class: {'zwplayer-vue': true},
252
258
  attrs: {
253
259
  id: playerid,
254
260
  },
255
261
  }, []);
256
-
262
+
257
263
  if (playerWrap) {
258
264
  let vm = this;
259
265
  vm.playerid = playerid;
260
266
  }
261
-
267
+
262
268
  if (this.zwplayer && this.murl !== this.old_murl) {
263
269
  this.zwplayer.play(this.murl); // change movie url
264
270
  this.old_murl = this.murl;
265
271
  }
266
-
272
+
267
273
  return playerWrap;
268
- },
269
-
270
- mounted() {
274
+ },
275
+
276
+ mounted() {
271
277
  let vm = this;
272
- // console.log('mounted');
278
+ //console.log('mounted main');
273
279
  let zwplayer_js;
274
-
280
+
275
281
  if (vm.zwplayerlib)
276
282
  zwplayer_js = vm.zwplayerlib;
277
283
  else
278
284
  zwplayer_js = zwplayer_js_def;
279
-
285
+
280
286
  vm.rootElm = document.getElementById(vm.playerid);
281
287
  if (vm.rootElm) {
282
288
  vm.rootElm.style.width = '100%';
@@ -287,11 +293,11 @@ export default {
287
293
 
288
294
  zwplayer_loadjs('zwplayer-core', zwplayer_js, function(jsid) {
289
295
  let url = '';
290
-
296
+
291
297
  if (!jsid) {
292
- console.log('zwplayer_loadjs failed!');
298
+ //console.log('zwplayer_loadjs failed!');
293
299
  }
294
-
300
+
295
301
  if (vm.murl)
296
302
  url = vm.murl;
297
303
  else if (vm.videoprop && typeof vm.videoprop.url !== 'undefined')
@@ -299,7 +305,7 @@ export default {
299
305
  let videostyle = "width:100%;height:100%;";
300
306
  if (vm.videoprop && typeof vm.videoprop.videostyle !== 'undefined')
301
307
  videostyle = vm.videoprop.videostyle;
302
-
308
+
303
309
  let params = {
304
310
  url: url,
305
311
  playerElm: vm.rootElm,
@@ -316,6 +322,13 @@ export default {
316
322
  vm.$emit('onnetclose', this);
317
323
  return true;
318
324
  },
325
+ onFileSelected: function(event) {
326
+ vm.$emit('onFileSelected', event, this);
327
+ },
328
+
329
+ onFileLoaded: function(event) {
330
+ vm.$emit('onFileLoaded', event, this);
331
+ },
319
332
  onneterror: function() {
320
333
  vm.$emit('onneterror', this);
321
334
  },
@@ -323,9 +336,9 @@ export default {
323
336
  vm.$emit('onmediaevent', event, this);
324
337
  }
325
338
  };
326
-
339
+
327
340
  let props_list = availabe_props;
328
-
341
+
329
342
  const isTypeOf = function(type, types) {
330
343
  if (types.indexOf('|') > 0) {
331
344
  var typeList = types.split('|');
@@ -335,10 +348,10 @@ export default {
335
348
  }
336
349
  return false;
337
350
  }
338
-
351
+
339
352
  return type === types;
340
353
  }
341
-
354
+
342
355
  for (let prop in vm.$attrs) {
343
356
  var propType = typeof vm.$attrs[prop];
344
357
  if (prop in props_list && isTypeOf(propType, props_list[prop])) {
@@ -348,31 +361,31 @@ export default {
348
361
  params[prop] = vm.$attrs[prop];
349
362
  }
350
363
  }
351
-
364
+ //console.log(params)
352
365
  vm.zwplayer = new window.ZWPlayer(params);
353
-
366
+
354
367
  if(params.danmuBarId) {
355
368
  vm.zwplayer.buildDanmuControlbar(params.danmuBarId, 'vue-zwp-danmubar');
356
369
  }
357
-
370
+
358
371
  vm.old_murl = url;
359
372
  })
360
- },
361
-
373
+ },
374
+
362
375
  beforeDestroy() { // vue3.x beforeUnmount
363
376
  let vm = this;
364
- // console.log('beforeUnmount');
365
- if (vm.zwplayer) {
366
- vm.zwplayer.stop();
377
+ // console.log('beforeUnmount');
378
+ if (vm.zwplayer) {
379
+ vm.zwplayer.stop();
367
380
  }
368
- },
369
-
370
- destroyed() { // vue3.x unmounted
381
+ },
382
+
383
+ destroyed() { // vue3.x unmounted
371
384
  let vm = this;
372
- // console.log('unmounted');
373
- if (vm.zwplayer) {
374
- vm.zwplayer.destroy();
375
- delete vm.zwplayer;
385
+ // console.log('unmounted');
386
+ if (vm.zwplayer) {
387
+ vm.zwplayer.destroy();
388
+ delete vm.zwplayer;
376
389
  }
377
390
  }
378
391
  }