@mindedge/vuetify-player 0.5.1 → 0.5.2

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.
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@mindedge/vuetify-player",
3
- "version": "0.5.1",
3
+ "version": "0.5.2",
4
4
  "private": false,
5
5
  "description": "Accessible, localized, full featured media player with Vuetifyjs",
6
6
  "author": "Jacob Rogaishio",
@@ -281,15 +281,18 @@
281
281
  <v-list>
282
282
  <v-list-item-group>
283
283
  <v-list-item
284
- v-for="track in current.tracks"
285
- :key="track.srclang"
284
+ v-for="(
285
+ track, index
286
+ ) in current.tracks"
287
+ :key="'track-' + index"
286
288
  @click="
287
- onSelectTrack(
288
- track.srclang
289
+ onSelectTrackByIndex(
290
+ index
289
291
  )
290
292
  "
291
293
  >
292
294
  <v-list-item-title>{{
295
+ track.label ||
293
296
  track.srclang
294
297
  }}</v-list-item-title>
295
298
  </v-list-item>
@@ -1009,7 +1012,32 @@ export default {
1009
1012
  }, 50)
1010
1013
  },
1011
1014
  /**
1012
- * Select a specific track by lang
1015
+ * Select a specific track by index (supports multiple tracks with same language)
1016
+ *
1017
+ * @param Number index The track index to activate
1018
+ * @param String mode The track mode ('showing', 'hidden', 'disabled')
1019
+ */
1020
+ onSelectTrackByIndex(index, mode = 'showing') {
1021
+ if (this.player.textTracks && this.player.textTracks.length > 0) {
1022
+ // Disable all tracks first
1023
+ for (let i = 0; i < this.player.textTracks.length; i++) {
1024
+ this.player.textTracks[i].mode = 'disabled'
1025
+ }
1026
+
1027
+ // Enable the selected track
1028
+ if (this.player.textTracks[index]) {
1029
+ this.player.textTracks[index].mode = mode
1030
+ this.state.ccLang = this.player.textTracks[index].language
1031
+
1032
+ this.setCues(this.player.textTracks[index])
1033
+
1034
+ // Emit the current track
1035
+ this.$emit('trackchange', this.player.textTracks[index])
1036
+ }
1037
+ }
1038
+ },
1039
+ /**
1040
+ * Select a specific track by lang (kept for backward compatibility)
1013
1041
  *
1014
1042
  * @param String|null lang The lang to load. Eg en-US, sv-SE, etc. Pass nothing / null to turn off captions
1015
1043
  */