@saooti/octopus-sdk 39.3.7 → 39.3.8

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 (35) hide show
  1. package/eslint.config.mjs +29 -0
  2. package/package.json +5 -41
  3. package/plateform.conf +1 -1
  4. package/src/api/classicApi.ts +1 -1
  5. package/src/components/display/comments/CommentInput.vue +1 -1
  6. package/src/components/display/filter/SearchOrder.vue +1 -1
  7. package/src/components/display/list/SwiperList.vue +3 -3
  8. package/src/components/display/live/LiveList.vue +1 -1
  9. package/src/components/display/live/RadioPlanning.vue +40 -10
  10. package/src/components/display/podcasts/TagList.vue +1 -1
  11. package/src/components/display/rubriques/RubriqueChooser.vue +1 -1
  12. package/src/components/display/sharing/ShareButtons.vue +1 -1
  13. package/src/components/display/sharing/SharePlayer.vue +1 -1
  14. package/src/components/display/sharing/SharePlayerColors.vue +0 -1
  15. package/src/components/display/sharing/SharePlayerTypes.vue +1 -1
  16. package/src/components/display/sharing/SubscribeButtons.vue +1 -1
  17. package/src/components/form/ClassicEmojiPicker.vue +1 -1
  18. package/src/components/misc/FooterSection.vue +1 -1
  19. package/src/components/misc/modal/ContractPreviewModal.vue +1 -1
  20. package/src/components/misc/modal/NewsletterModal.vue +0 -1
  21. package/src/components/mixins/player/playerLive.ts +1 -1
  22. package/src/components/mixins/player/playerLogicProgress.ts +1 -1
  23. package/src/components/mixins/player/playerStitching.ts +7 -7
  24. package/src/components/mixins/player/playerTranscript.ts +1 -1
  25. package/src/components/mixins/player/playerVast.ts +2 -2
  26. package/src/components/mixins/podcast/podcastView.ts +1 -1
  27. package/src/components/mixins/routeParam/advancedParamInit.ts +1 -1
  28. package/src/components/mixins/seoTitleUrl.ts +1 -1
  29. package/src/locale/de.ts +2 -0
  30. package/src/locale/en.ts +2 -0
  31. package/src/locale/es.ts +2 -0
  32. package/src/locale/fr.ts +2 -0
  33. package/src/locale/it.ts +2 -0
  34. package/src/locale/sl.ts +2 -0
  35. package/src/main.ts +1 -1
@@ -0,0 +1,29 @@
1
+ import eslint from '@eslint/js';
2
+ import eslintConfigPrettier from 'eslint-config-prettier';
3
+ import eslintPluginVue from 'eslint-plugin-vue';
4
+ import globals from 'globals';
5
+ import typescriptEslint from 'typescript-eslint';
6
+
7
+ export default typescriptEslint.config(
8
+ { ignores: ['*.d.ts', '**/coverage', '**/dist'] },
9
+ {
10
+ extends: [
11
+ eslint.configs.recommended,
12
+ ...typescriptEslint.configs.recommended,
13
+ ...eslintPluginVue.configs['flat/recommended'],
14
+ ],
15
+ files: ['**/*.{ts,vue}'],
16
+ languageOptions: {
17
+ ecmaVersion: 'latest',
18
+ sourceType: 'module',
19
+ globals: globals.browser,
20
+ parserOptions: {
21
+ parser: typescriptEslint.parser,
22
+ },
23
+ },
24
+ rules: {
25
+ // your rules
26
+ },
27
+ },
28
+ eslintConfigPrettier
29
+ );
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@saooti/octopus-sdk",
3
- "version": "39.3.7",
3
+ "version": "39.3.8",
4
4
  "private": false,
5
5
  "description": "Javascript SDK for using octopus",
6
6
  "author": "Saooti",
@@ -10,7 +10,7 @@
10
10
  "dev": "vite",
11
11
  "proxy_authentifié": "node proxy.ts",
12
12
  "proxy_non_authentifié": "node proxy.ts false",
13
- "lint": "eslint --ext .js,.vue --fix src",
13
+ "lint": "eslint --fix src",
14
14
  "build_bundle": "vue-cli-service build --target lib --name octopus ./index.js",
15
15
  "sonar": "node sonarqube-scanner.js"
16
16
  },
@@ -32,8 +32,8 @@
32
32
  "dayjs": "^1.11.13",
33
33
  "emoji-mart-vue-fast": "^15.0.3",
34
34
  "eslint-config-prettier": "^9.1.0",
35
- "eslint-plugin-prettier": "^5.2.1",
36
35
  "express": "^4.21.2",
36
+ "globals": "^15.13.0",
37
37
  "hls.js": "^1.5.17",
38
38
  "humanize-duration": "^3.32.1",
39
39
  "pinia": "^2.3.0",
@@ -42,6 +42,7 @@
42
42
  "sockjs-client": "^1.6.1",
43
43
  "sonarqube-scanner": "^3.3.0",
44
44
  "swiper": "^11.1.14",
45
+ "typescript-eslint": "^8.18.1",
45
46
  "video.js": "^8.21.0",
46
47
  "videojs-quality-selector-hls": "^1.1.1",
47
48
  "vite": "^5.4.11",
@@ -56,48 +57,11 @@
56
57
  },
57
58
  "devDependencies": {
58
59
  "@types/sockjs-client": "^1.5.4",
59
- "@typescript-eslint/eslint-plugin": "^8.18.0",
60
- "@typescript-eslint/parser": "^8.18.0",
61
60
  "@vitejs/plugin-vue": "^5.1.4",
62
- "eslint": "^9.16.0",
61
+ "eslint": "^9.17.0",
63
62
  "eslint-plugin-vue": "^9.32.0",
64
63
  "typescript": "^5.6.3"
65
64
  },
66
- "eslintConfig": {
67
- "root": true,
68
- "env": {
69
- "node": true
70
- },
71
- "extends": [
72
- "eslint:recommended",
73
- "@vue/typescript",
74
- "plugin:@typescript-eslint/eslint-recommended",
75
- "plugin:@typescript-eslint/recommended",
76
- "plugin:vue/base",
77
- "plugin:vue/vue3-recommended",
78
- "plugin:vue/vue3-essential",
79
- "plugin:vue/vue3-strongly-recommended",
80
- "prettier",
81
- "plugin:prettier/recommended"
82
- ],
83
- "plugins": [
84
- "prettier"
85
- ],
86
- "rules": {
87
- "no-console": "off",
88
- "no-debugger": "off",
89
- "@typescript-eslint/ban-ts-ignore": "off",
90
- "@typescript-eslint/ban-ts-comment": "off",
91
- "no-async-promise-executor": "off",
92
- "prettier/prettier": [
93
- "error",
94
- {}
95
- ]
96
- },
97
- "parserOptions": {
98
- "parser": "@typescript-eslint/parser"
99
- }
100
- },
101
65
  "postcss": {
102
66
  "plugins": {
103
67
  "autoprefixer": {}
package/plateform.conf CHANGED
@@ -1 +1 @@
1
- preprod.saooti.org
1
+ octopus.saooti.com
@@ -144,7 +144,7 @@ export default {
144
144
  },
145
145
 
146
146
  adjustParameters(params:RequestParameters){
147
- let parametersUpdated = params.parameters ?? {};
147
+ const parametersUpdated = params.parameters ?? {};
148
148
  if (params.path.includes('podcast/search')){
149
149
  if(!params.parameters?.includeHidden || params.isNotAuth){
150
150
  parametersUpdated.validity = true;
@@ -165,7 +165,7 @@ export default defineComponent({
165
165
  this.$emit("newComment", commentReceived);
166
166
  this.newComment = "";
167
167
  this.isTextareaActive = false;
168
- } catch (error) {
168
+ } catch {
169
169
  this.postError = true;
170
170
  }
171
171
  this.isCheckIdentity = false;
@@ -30,7 +30,7 @@ export default defineComponent({
30
30
  },
31
31
  computed: {
32
32
  optionsArray() {
33
- let options = [
33
+ const options = [
34
34
  { title: this.$t("Sort score"), value: "SCORE" },
35
35
  {
36
36
  title: this.$t("Sort last"),
@@ -105,14 +105,14 @@ export default defineComponent({
105
105
  slidesUpdated() {
106
106
  //TODO CODE USELESS IF LIBRARY IS FIXED BUT FOR NOW IT IS IMPORTANT
107
107
  if (!this.$el) return;
108
- let slides = this.$el.getElementsByClassName("swiper-slide");
109
- for (let slide of slides) {
108
+ const slides = this.$el.getElementsByClassName("swiper-slide");
109
+ for (const slide of slides) {
110
110
  slide.style.width = this.itemRecalculizedSize + "px";
111
111
  }
112
112
  },
113
113
  slideChange() {
114
114
  if (!this.$el) return;
115
- let wrapper = this.$el.getElementsByClassName("swiper-wrapper")[0];
115
+ const wrapper = this.$el.getElementsByClassName("swiper-wrapper")[0];
116
116
  if (wrapper.style.transform.includes("translate3d(40px")) {
117
117
  return;
118
118
  }
@@ -106,7 +106,7 @@ export default defineComponent({
106
106
  },
107
107
  statusArraySelect(): Array<{ title: string; value: string }> {
108
108
  const statusArray = [{ title: this.$t("All lives"), value: "ALL" }];
109
- for (let status of this.statusFetched) {
109
+ for (const status of this.statusFetched) {
110
110
  let title = "";
111
111
  switch (status) {
112
112
  case "RECORDING":
@@ -4,9 +4,9 @@
4
4
  {{ $t("Program") }}
5
5
  </h2>
6
6
  <div class="py-3">
7
- <div class="d-flex align-items-center w-100">
7
+ <div class="d-flex align-items-center w-100 mb-3">
8
8
  <button
9
- v-for="day in arrayDays"
9
+ v-for="day in displayArrayDays"
10
10
  :key="day.date"
11
11
  class="d-flex flex-column align-items-center flex-grow-1 button-date"
12
12
  :class="day.date == daySelected ? 'bg-primary text-white' : ''"
@@ -16,6 +16,10 @@
16
16
  <span>{{ day.title }}</span>
17
17
  </button>
18
18
  </div>
19
+ <button class="btn btn-primary mb-3 mx-0" v-if="isPhone" @click="showAllDays = !showAllDays">
20
+ <template v-if="!showAllDays">{{ $t('Show more days') }}</template>
21
+ <template v-else>{{ $t('Show fewer days') }}</template>
22
+ </button>
19
23
  <div
20
24
  class="d-flex align-items-center justify-content-center border-bottom"
21
25
  >
@@ -64,7 +68,7 @@
64
68
  {{ dateDisplay(planningItem.startDate) }}
65
69
  </div>
66
70
  <router-link
67
- class="d-flex align-items-center text-dark"
71
+ class="d-flex align-items-center flex-nowrap text-dark"
68
72
  :to="{
69
73
  name: 'podcast',
70
74
  params: { podcastId: planningItem.podcastId },
@@ -77,7 +81,7 @@
77
81
  "
78
82
  width="150"
79
83
  height="150"
80
- class="m-2"
84
+ class="m-2 program-item-img"
81
85
  role="presentation"
82
86
  :title="
83
87
  $t('Episode name image', {
@@ -93,7 +97,7 @@
93
97
  >
94
98
  {{ $t("Live") }}
95
99
  </div>
96
- <div class="flex-grow-1 text-truncate fw-bold">
100
+ <div class="flex-grow-1 fw-bold">
97
101
  {{ planningItem.podcastData.title }}
98
102
  </div>
99
103
  </div>
@@ -114,6 +118,7 @@ import utc from "dayjs/plugin/utc";
114
118
  dayjs.extend(utc);
115
119
  import classicApi from "../../../api/classicApi";
116
120
  import imageProxy from "../../mixins/imageProxy";
121
+ import resizePhone from "../../mixins/resizePhone";
117
122
  import ClassicLoading from "../../form/ClassicLoading.vue";
118
123
  import { defineComponent } from "vue";
119
124
  import { Canal } from "@/stores/class/radio/canal";
@@ -126,7 +131,7 @@ export default defineComponent({
126
131
  ClassicLoading,
127
132
  },
128
133
 
129
- mixins: [imageProxy],
134
+ mixins: [imageProxy,resizePhone],
130
135
 
131
136
  props: {
132
137
  radio: { default: undefined, type: Object as () => Canal },
@@ -150,6 +155,9 @@ export default defineComponent({
150
155
  }>,
151
156
  loading: true as boolean,
152
157
  error: false as boolean,
158
+ isPhone: false as boolean,
159
+ windowWidth: 0 as number,
160
+ showAllDays: false as boolean
153
161
  };
154
162
  },
155
163
 
@@ -187,6 +195,12 @@ export default defineComponent({
187
195
  },
188
196
  ];
189
197
  },
198
+ displayArrayDays(){
199
+ if(this.isPhone && !this.showAllDays){
200
+ return this.arrayDays.slice(6, 9);
201
+ }
202
+ return this.arrayDays;
203
+ },
190
204
  },
191
205
 
192
206
  mounted() {
@@ -217,7 +231,7 @@ export default defineComponent({
217
231
  this.planning[this.daySelected],
218
232
  ).reduce((r, c) => r.concat(c), []);
219
233
  let selectedOccurrence = arrayOccurrences[0];
220
- for (let occ of arrayOccurrences) {
234
+ for (const occ of arrayOccurrences) {
221
235
  selectedOccurrence = occ;
222
236
  if (dayjs(occ.endDate).isAfter(now)) {
223
237
  break;
@@ -289,9 +303,9 @@ export default defineComponent({
289
303
  this.loading = true;
290
304
  this.error = false;
291
305
  try {
292
- let occurrences = await this.fetchOccurrencesAndLives();
306
+ const occurrences = await this.fetchOccurrencesAndLives();
293
307
  let periodDayIndex = 0;
294
- for (let occ of occurrences) {
308
+ for (const occ of occurrences) {
295
309
  if (!occ.podcastId) {
296
310
  continue;
297
311
  }
@@ -335,14 +349,30 @@ export default defineComponent({
335
349
  .program-item-date {
336
350
  width: 100px;
337
351
  font-size: 1.1rem;
352
+ @media (max-width: 960px) {
353
+ font-size: 0.8rem;
354
+ }
355
+ }
356
+ .program-item-img{
357
+ @media (max-width: 960px) {
358
+ width: 80px;
359
+ height: 80px;
360
+ margin: 0.5rem 0.5rem 0 0 !important;
361
+ }
338
362
  }
339
363
  .button-date {
340
364
  border: 1px solid #ddd;
341
- padding: 0.5rem 0;
365
+ padding: 0.5rem;
342
366
  color: black !important;
367
+ &.text-white{
368
+ color: white !important;
369
+ }
343
370
  &:hover {
344
371
  background: #ddd;
345
372
  }
373
+ @media (max-width: 960px) {
374
+ width: 80px;
375
+ }
346
376
  }
347
377
  }
348
378
  </style>
@@ -62,7 +62,7 @@ export default defineComponent({
62
62
  computed: {
63
63
  ouestFranceMainTag(): string | undefined {
64
64
  if (this.podcastAnnotations?.["mainOfTag"]) {
65
- for (let key in this.podcastAnnotations) {
65
+ for (const key in this.podcastAnnotations) {
66
66
  if (
67
67
  this.podcastAnnotations[key] ===
68
68
  this.podcastAnnotations["mainOfTag"] &&
@@ -75,7 +75,7 @@ export default defineComponent({
75
75
  return { name: this.defaultanswer, rubriqueId: 0 };
76
76
  },
77
77
  rubriques(): Array<Rubrique> {
78
- let rubriques = this.allRubriques;
78
+ const rubriques = this.allRubriques;
79
79
  if (!this.getDefaultRubrique) {
80
80
  return rubriques;
81
81
  }
@@ -258,7 +258,7 @@ export default defineComponent({
258
258
  return state.generalParameters.podcastmaker as boolean;
259
259
  },
260
260
  rssUrl(): string {
261
- let api = this.apiUrl + "rss/";
261
+ const api = this.apiUrl + "rss/";
262
262
  if (
263
263
  (!this.isPodcastmaker && this.playlist) ||
264
264
  this.podcast ||
@@ -261,7 +261,7 @@ export default defineComponent({
261
261
  );
262
262
  }
263
263
  let url = [""];
264
- let iFrameNumber =
264
+ const iFrameNumber =
265
265
  this.displayChoiceAllEpisodes && "all" === this.episodeNumbers
266
266
  ? "/0"
267
267
  : "/" + this.iFrameNumber;
@@ -34,7 +34,6 @@
34
34
  </template>
35
35
 
36
36
  <script lang="ts">
37
- // @ts-ignore
38
37
  import { VSwatches } from "vue3-swatches";
39
38
  import "vue3-swatches/dist/style.css";
40
39
  import { defineComponent } from "vue";
@@ -177,7 +177,7 @@ export default defineComponent({
177
177
  type: string,
178
178
  selectIfPossible = true,
179
179
  ): Promise<boolean> {
180
- let customPlayersForType = await this.fetchPlayerPaginate(type);
180
+ const customPlayersForType = await this.fetchPlayerPaginate(type);
181
181
  this.customPlayers = this.customPlayers.concat(customPlayersForType);
182
182
  if (
183
183
  "video" !== this.iFrameModel &&
@@ -204,7 +204,7 @@ export default defineComponent({
204
204
  return sub.filter((item) => item.url);
205
205
  },
206
206
  rssUrl(): string | undefined {
207
- let api = this.apiUrl + "rss/";
207
+ const api = this.apiUrl + "rss/";
208
208
  if (this.emission) {
209
209
  return api + "emission/" + this.emission?.emissionId + ".rss";
210
210
  }
@@ -32,7 +32,7 @@ import ClassicPopover from "../misc/ClassicPopover.vue";
32
32
  import data from "emoji-mart-vue-fast/data/all.json";
33
33
  import "emoji-mart-vue-fast/css/emoji-mart.css";
34
34
  import { Picker, EmojiIndex } from "emoji-mart-vue-fast/src";
35
- let emojiIndex = new EmojiIndex(data);
35
+ const emojiIndex = new EmojiIndex(data);
36
36
  import { defineComponent } from "vue";
37
37
  export default defineComponent({
38
38
  name: "ClassicEmojiPicker",
@@ -110,7 +110,7 @@ export default defineComponent({
110
110
  return undefined !== this.authOrgaId;
111
111
  },
112
112
  routerLinkSecondArray() {
113
- let links = [];
113
+ const links = [];
114
114
  if (!this.isGarRole) {
115
115
  links.push(
116
116
  { title: this.$t("Contact"), routeName: "/main/pub/contact" },
@@ -28,7 +28,7 @@ import { mapState } from "pinia";
28
28
  import { useApiStore } from "../../../stores/ApiStore";
29
29
  import { useAuthStore } from "../../../stores/AuthStore";
30
30
  import { Contract } from "../../../stores/class/contract/contract";
31
- // @ts-ignore
31
+ // @ts-expect-error Problème de bibliothèque
32
32
  import { usePDF, VuePDF, PDFDocumentLoadingTask } from "@tato30/vue-pdf";
33
33
  import { defineComponent, defineAsyncComponent, ShallowRef } from "vue";
34
34
  const ClassicModal = defineAsyncComponent(() => import("./ClassicModal.vue"));
@@ -60,7 +60,6 @@
60
60
  import ContentCopyIcon from "vue-material-design-icons/ContentCopy.vue";
61
61
  import ClassicModal from "../modal/ClassicModal.vue";
62
62
  import SnackBar from "../../misc/SnackBar.vue";
63
- // @ts-ignore
64
63
  import { VSwatches } from "vue3-swatches";
65
64
  import "vue3-swatches/dist/style.css";
66
65
  import displayMethods from "../../mixins/displayMethods";
@@ -80,7 +80,7 @@ export const playerLive = defineComponent({
80
80
  } else {
81
81
  await this.initHls(hlsStreamUrl);
82
82
  }
83
- } catch (error) {
83
+ } catch {
84
84
  this.onHlsError(hlsStreamUrl);
85
85
  }
86
86
  },
@@ -84,7 +84,7 @@ export const playerLogicProgress = defineComponent({
84
84
  isNotAuth:true
85
85
  });
86
86
  this.setDownloadId(downloadId);
87
- } catch (error) {
87
+ } catch {
88
88
  this.downloadId = null;
89
89
  console.log("ERROR downloadId");
90
90
  }
@@ -95,7 +95,7 @@ export const playerStitching = defineComponent({
95
95
  if(!this.playerCurrentChange || !this.playerPodcast ||(this.playerCurrentChange && this.adPositionsPodcasts[this.playerCurrentChange])){
96
96
  return;
97
97
  }
98
- let adserverConfig = await classicApi.fetchData<AdserverOtherEmission>({
98
+ const adserverConfig = await classicApi.fetchData<AdserverOtherEmission>({
99
99
  api:0,
100
100
  path: `ad/test/podcast/${this.playerCurrentChange}`,
101
101
  isNotAuth:true
@@ -110,11 +110,11 @@ export const playerStitching = defineComponent({
110
110
  this.updateAdPositionsPodcasts(this.playerCurrentChange, selectedAdPositions);
111
111
  },
112
112
  generateAllAdPositions(doublets: Array<AdserverTiming>, podcastDuration: number): Array<AdPosition>{
113
- let adPositions: Array<AdPosition> = [];
113
+ const adPositions: Array<AdPosition> = [];
114
114
  if(doublets.some((element: AdserverTiming)=>{return "TAG_NO_AD"===element.tag})){
115
115
  return [];
116
116
  }
117
- for (let doublet of doublets) {
117
+ for (const doublet of doublets) {
118
118
  if(!doublet.tag){continue;}
119
119
  let seconds = 0;
120
120
  if("post"===doublet.timing.insertion){
@@ -143,16 +143,16 @@ export const playerStitching = defineComponent({
143
143
  });
144
144
  },
145
145
  async selectCorrectAdPositions(allAdPositions: Array<AdPosition>, podcastDuration: number, minIntervalDuration:number, minTailDuration:number): Promise<Array<AdPosition>>{
146
- let adPositions: Array<AdPosition> = [];
146
+ const adPositions: Array<AdPosition> = [];
147
147
  let previousPosition = -1;
148
- for(let adPosition of allAdPositions){
148
+ for(const adPosition of allAdPositions){
149
149
  switch (adPosition.policy) {
150
150
  case "pre":
151
151
  adPositions.push(await this.defineVastUrl(adPosition));
152
152
  previousPosition = 0;
153
153
  break;
154
154
  case "mid":
155
- let position = adPosition.seconds;
155
+ const position = adPosition.seconds;
156
156
  if (position > podcastDuration - minTailDuration) {
157
157
  //Too close to end
158
158
  continue;
@@ -182,7 +182,7 @@ export const playerStitching = defineComponent({
182
182
  return adPosition;
183
183
  },
184
184
  async getVastUrl(tag: string, adCount: number): Promise<string>{
185
- let baseUrl = "https://api.soundcast.io/v1/vast/"+tag;
185
+ const baseUrl = "https://api.soundcast.io/v1/vast/"+tag;
186
186
  let keywords: Array<string> = [];
187
187
  if(this.playerPodcast?.tags?.length){
188
188
  const attributes = await this.getOrgaAttributes(this.playerPodcast.organisation.id);
@@ -20,7 +20,7 @@ export const playerTranscript = defineComponent({
20
20
  {
21
21
  return;
22
22
  }
23
- let adserverConfig = await classicApi.fetchData<AdserverOtherEmission>({
23
+ const adserverConfig = await classicApi.fetchData<AdserverOtherEmission>({
24
24
  api:0,
25
25
  path:`ad/test/podcast/${this.playerPodcast.podcastId}`,
26
26
  isNotAuth:true
@@ -112,12 +112,12 @@ export const playerVast = defineComponent({
112
112
  adsManager.addEventListener(google.ima.AdErrorEvent.Type.AD_ERROR,this.onAdError);
113
113
  adsManager.addEventListener(google.ima.AdEvent.Type.CONTENT_PAUSE_REQUESTED, this.onContentPauseRequested);
114
114
  adsManager.addEventListener(google.ima.AdEvent.Type.CONTENT_RESUME_REQUESTED, this.onContentResumeRequested);
115
- let events = [
115
+ const events = [
116
116
  google.ima.AdEvent.Type.ALL_ADS_COMPLETED, google.ima.AdEvent.Type.AD_PROGRESS,
117
117
  google.ima.AdEvent.Type.COMPLETE, google.ima.AdEvent.Type.LOADED,
118
118
  google.ima.AdEvent.Type.PAUSED, google.ima.AdEvent.Type.STARTED,
119
119
  ];
120
- for (let index in events) {
120
+ for (const index in events) {
121
121
  adsManager.addEventListener(events[index], this.onAdEvent);
122
122
  }
123
123
  //adsManager.addEventListener(google.ima.AdEvent.Type.SKIPPED, this.onAdEvent);
@@ -1,5 +1,5 @@
1
1
  import dayjs from "dayjs";
2
- // @ts-ignore
2
+ // @ts-expect-error Bibliothèque non typée
3
3
  import humanizeDuration from "humanize-duration";
4
4
  import { defineComponent } from 'vue';
5
5
  export default defineComponent({
@@ -7,6 +7,7 @@ import { mapState } from "pinia";
7
7
  import { RubriquageFilter } from "@/stores/class/rubrique/rubriquageFilter";
8
8
  import dayjs from "dayjs";
9
9
  export const advancedParamInit = defineComponent({
10
+ mixins: [orgaComputed, paginateParamInit, rubriquesFilterParam],
10
11
  props: {
11
12
  productor: { default: undefined, type: String },
12
13
  routeQuery: { default: "", type: String },
@@ -19,7 +20,6 @@ export const advancedParamInit = defineComponent({
19
20
  routeOrga: { default: undefined, type: String },
20
21
  routeRubriques: { default: "", type: String },
21
22
  },
22
- mixins: [orgaComputed, paginateParamInit, rubriquesFilterParam],
23
23
  data() {
24
24
  return {
25
25
  isInit: false as boolean,
@@ -14,7 +14,7 @@ export const seoTitleUrl = defineComponent({
14
14
  }
15
15
  const withoutSpecialChar = text.replaceAll(
16
16
  /[!"`'#%&,:;<>=\-_@{}~\$\.\(\)\*\+\/\\\?\[\]\^\|]+/gm, ' ');
17
- let trimText = withoutSpecialChar.trim();
17
+ const trimText = withoutSpecialChar.trim();
18
18
  return "-"+trimText.replaceAll(/\s+/gm, '-');
19
19
  },
20
20
  },
package/src/locale/de.ts CHANGED
@@ -400,4 +400,6 @@ export default {
400
400
  "Listening progress bar":"Fortschrittsbalken beim Zuhören",
401
401
  "Contract preview": "Vertragsübersicht",
402
402
  "Clear search":"Suche löschen",
403
+ "Show more days":"Weitere Tage anzeigen",
404
+ "Show fewer days":"Weniger Tage anzeigen",
403
405
  }
package/src/locale/en.ts CHANGED
@@ -401,4 +401,6 @@ export default {
401
401
  "Listening progress bar":"Listening progress bar",
402
402
  "Contract preview": "Contract preview",
403
403
  "Clear search":"Clear search",
404
+ "Show more days":"Show more days",
405
+ "Show fewer days":"Show fewer days",
404
406
  };
package/src/locale/es.ts CHANGED
@@ -401,4 +401,6 @@ export default {
401
401
  "Listening progress bar":"Barra de progreso de escucha",
402
402
  "Contract preview": "Panoramica del contratto",
403
403
  "Clear search":"Borrar búsqueda",
404
+ "Show more days":"Mostrar más días",
405
+ "Show fewer days":"Mostrar menos días",
404
406
  }
package/src/locale/fr.ts CHANGED
@@ -408,4 +408,6 @@ export default {
408
408
  "Listening progress bar":"Barre de progression de l'écoute",
409
409
  "Contract preview": "Aperçu du document",
410
410
  "Clear search":"Effacer la recherche",
411
+ "Show more days":"Afficher plus de jours",
412
+ "Show fewer days":"Afficher moins de jours",
411
413
  };
package/src/locale/it.ts CHANGED
@@ -395,4 +395,6 @@ export default{
395
395
  "Listening progress bar":"Barra di avanzamento dell'ascolto",
396
396
  "Contract preview": "Panoramica del contratto",
397
397
  "Clear search":"Cancella ricerca",
398
+ "Show more days":"Mostra più giorni",
399
+ "Show fewer days":"Mostra meno giorni",
398
400
  };
package/src/locale/sl.ts CHANGED
@@ -391,4 +391,6 @@ export default {
391
391
  "Listening progress bar":"Vrstica napredka poslušanja",
392
392
  "Contract preview": "Pregled pogodbe",
393
393
  "Clear search":"Počisti iskanje",
394
+ "Show more days":"Prikaži več dni",
395
+ "Show fewer days":"Prikaži manj dni",
394
396
  }
package/src/main.ts CHANGED
@@ -99,7 +99,7 @@ router.isReady().then(() => {
99
99
  beforeCreate() {
100
100
  if (this.$options.watch) {
101
101
  Object.entries(this.$options.watch).forEach(([watcherKey, func]) => {
102
- // @ts-ignore
102
+ // @ts-expect-error
103
103
  this.$options.watch[watcherKey] = new Proxy(func, {
104
104
  apply(target, thisArg) {
105
105
  let targetAny : any= target;