@saooti/octopus-sdk 39.0.42 → 39.0.44

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": "@saooti/octopus-sdk",
3
- "version": "39.0.42",
3
+ "version": "39.0.44",
4
4
  "private": false,
5
5
  "description": "Javascript SDK for using octopus",
6
6
  "author": "Saooti",
@@ -40,8 +40,7 @@
40
40
  "sonarqube-scanner": "^3.3.0",
41
41
  "swiper": "^11.1.4",
42
42
  "video.js": "^8.12.0",
43
- "videojs-contrib-quality-levels": "^4.1.0",
44
- "videojs-hls-quality-selector": "^2.0.0",
43
+ "videojs-quality-selector-hls": "^1.1.1",
45
44
  "vite": "^5.3.1",
46
45
  "vue": "^3.4.30",
47
46
  "vue-i18n": "^9.13.1",
@@ -52,8 +51,6 @@
52
51
  "vue3-swatches": "^1.2.4"
53
52
  },
54
53
  "devDependencies": {
55
- "@types/videojs-contrib-quality-levels": "^2.0.4",
56
- "@types/videojs-hls-quality-selector": "^1.1.3",
57
54
  "@types/vue-select": "^3.16.8",
58
55
  "@typescript-eslint/eslint-plugin": "^7.14.1",
59
56
  "@typescript-eslint/parser": "^7.14.1",
@@ -83,7 +83,7 @@ input:not([class^="vs__"]), button:not([class^="vs__"]), select:not([class^="vs_
83
83
  text-decoration: none !important;
84
84
  white-space: nowrap;
85
85
  border-width: 0;
86
- min-width: 24px;
86
+ //min-width: 24px; Problème avec flex-shrink
87
87
  @media (max-width: 960px) {
88
88
  white-space: normal;
89
89
  }
@@ -138,6 +138,9 @@ input:not([class^="vs__"]), button:not([class^="vs__"]), select:not([class^="vs_
138
138
  left: 0;
139
139
  }
140
140
  }
141
+ &.btn-min-width{
142
+ min-width: 24px;
143
+ }
141
144
 
142
145
  &.btn-primary {
143
146
  display: flex;
@@ -23,10 +23,10 @@
23
23
  </svg>
24
24
  </button>
25
25
  <div v-for="pageNumber in pagination" :key="pageNumber">
26
- <span v-if="null === pageNumber" class="btn"> ... </span>
26
+ <span v-if="null === pageNumber" class="btn btn-min-width"> ... </span>
27
27
  <button
28
28
  v-else
29
- class="btn"
29
+ class="btn btn-min-width"
30
30
  :class="{ active: page === pageNumber - 1 }"
31
31
  @click="changeFirst((pageNumber - 1) * rowsPerPage)"
32
32
  >
@@ -36,7 +36,7 @@
36
36
  <button
37
37
  v-for="paginateButton in buttonsRight"
38
38
  :key="paginateButton.title"
39
- class="btn"
39
+ class="btn btn-min-width"
40
40
  :title="paginateButton.title"
41
41
  :disabled="paginateButton.disabled"
42
42
  @click="paginateButton.action"
@@ -14,13 +14,9 @@ import { usePlayerStore } from "@/stores/PlayerStore";
14
14
  import { mapActions } from "pinia";
15
15
  import { playerLogicProgress } from "../../../mixins/player/playerLogicProgress";
16
16
  import videojs, { VideoJsPlayer } from "video.js";
17
- import qualitySelector from "videojs-hls-quality-selector";
18
- import qualityLevels from "videojs-contrib-quality-levels";
19
- if (!videojs.getPlugin("qualityLevels")) {
20
- videojs.registerPlugin("qualityLevels", qualityLevels);
21
- }
22
- if (!videojs.getPlugin("hlsQualitySelector")) {
23
- videojs.registerPlugin("hlsQualitySelector", qualitySelector);
17
+ import qualitySelectorHls from "videojs-quality-selector-hls";
18
+ if (undefined===videojs.getPlugin("qualitySelectorHls")) {
19
+ videojs.registerPlugin("qualitySelectorHls", qualitySelectorHls);
24
20
  }
25
21
  import { defineComponent } from "vue";
26
22
  export default defineComponent({
@@ -68,11 +64,6 @@ export default defineComponent({
68
64
  nativeAudioTracks: false,
69
65
  nativeVideoTracks: false,
70
66
  },
71
- plugins: {
72
- hlsQualitySelector: {
73
- displayCurrentQuality: true,
74
- },
75
- },
76
67
  };
77
68
  },
78
69
  },
@@ -99,7 +90,7 @@ export default defineComponent({
99
90
  }
100
91
  this.videoClean();
101
92
  this.playLive();
102
- }, 5000);
93
+ }, 15000);
103
94
  },
104
95
  async playLive(): Promise<void> {
105
96
  clearTimeout(this.stalledTimout);
@@ -113,6 +104,8 @@ export default defineComponent({
113
104
  document.getElementById("video-element-hls") as Element,
114
105
  this.videoOptions,
115
106
  () => {
107
+ this.player.qualitySelectorHls( {displayCurrentQuality: true} );
108
+ /*console.log(this.player.tech(true).vhs.playlistController_); */
116
109
  this.errorPlay = "";
117
110
  this.playing = true;
118
111
  },
@@ -79,6 +79,9 @@ export const playerLive = defineComponent({
79
79
  await this.initHls(hlsStreamUrl);
80
80
  }
81
81
  } catch (error) {
82
+ if("STOPPED"===this.playerStatus){
83
+ return;
84
+ }
82
85
  setTimeout(() => {
83
86
  this.playHls(hlsStreamUrl);
84
87
  }, 1000);
@@ -103,8 +106,8 @@ export const playerLive = defineComponent({
103
106
  this.onPlay();
104
107
  resolve();
105
108
  });
106
- this.hls.on(Hls.Events.ERROR, async () => {
107
- reject(new Error("There is an error while reading media content"));
109
+ this.hls.on(Hls.Events.ERROR, async (event, data) => {
110
+ reject(new Error("There is an error while reading media content"+data.details));
108
111
  });
109
112
  this.hls.loadSource(hlsStreamUrl);
110
113
  });
@@ -72,6 +72,7 @@ export const playerLogicProgress = defineComponent({
72
72
  "podcast/prepare/live/" + this.playerLive.podcastId+"?mediaType="+mediaType,
73
73
  undefined,
74
74
  );
75
+ //TODO check if we can do otherwise
75
76
  await octopusApi.fetchDataPublicWithParams<string | null>(
76
77
  0,
77
78
  "podcast/download/live/" + this.playerLive.podcastId + ".m3u8",
@@ -5,14 +5,14 @@ const state: ParamStore = {
5
5
  generalParameters: {
6
6
  organisationId: "ecbd98d9-79bd-4312-ad5e-fc7c1c4a191c",
7
7
  authenticated: false,
8
- isAdmin: true,
9
- isRoleLive: true,
10
- isCommments: true,
11
- isOrganisation:true,
12
- isPlaylist: true,
13
- isProduction: true,
14
- isContribution: true,
15
- isRadio: true,
8
+ isAdmin: false,
9
+ isRoleLive: false,
10
+ isCommments: false,
11
+ isOrganisation:false,
12
+ isPlaylist: false,
13
+ isProduction: false,
14
+ isContribution: false,
15
+ isRadio: false,
16
16
  ApiUri: "https://api.dev2.saooti.org/",
17
17
  podcastmaker: false,
18
18
  buttonPlus: true,