@saooti/octopus-sdk 31.0.36 → 31.0.39
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/README.md +5 -0
- package/index.ts +5 -2
- package/package.json +1 -1
- package/src/components/display/emission/EmissionList.vue +3 -3
- package/src/components/display/live/LiveHorizontalList.vue +2 -2
- package/src/components/display/participant/ParticipantList.vue +2 -2
- package/src/components/display/playlist/PlaylistList.vue +2 -2
- package/src/components/display/playlist/PodcastList.vue +1 -1
- package/src/components/display/podcasts/PodcastImage.vue +1 -1
- package/src/components/display/podcasts/PodcastInlineListTemplate.vue +15 -2
- package/src/components/display/podcasts/PodcastItem.vue +9 -2
- package/src/components/display/podcasts/PodcastList.vue +2 -2
- package/src/components/display/podcasts/PodcastSwiperList.vue +4 -6
- package/src/components/display/sharing/ShareButtons.vue +2 -2
- package/src/components/misc/HomeDropdown.vue +14 -26
- package/src/components/misc/TopBar.vue +1 -1
- package/src/store/paramStore.ts +3 -1
- package/src/store/typeAppStore.ts +4 -4
package/README.md
CHANGED
|
@@ -586,6 +586,8 @@ See [Configuration Reference](https://cli.vuejs.org/config/).
|
|
|
586
586
|
* 30.0.87 Podcastmaker newest (swiper list)
|
|
587
587
|
* 30.0.88 Podcastmaker newest (swiper list)
|
|
588
588
|
* 30.0.89 Podcastmaker newest (swiper list)
|
|
589
|
+
* 30.0.90 Podcastmaker newest (swiper list)
|
|
590
|
+
* 30.0.91 Encore newest
|
|
589
591
|
|
|
590
592
|
* 31.0.0 Passage en 31
|
|
591
593
|
* 31.0.1 Ajout pocket casts
|
|
@@ -624,4 +626,7 @@ See [Configuration Reference](https://cli.vuejs.org/config/).
|
|
|
624
626
|
* 31.0.34 Icones
|
|
625
627
|
* 31.0.35 Il faut croire que c'est SDK Day...
|
|
626
628
|
* 31.0.36 Améliorations multiples (pagination, modales, pages d'erreurs...)
|
|
629
|
+
* 31.0.37 Continuation améliorations
|
|
630
|
+
* 31.0.38 Changement reponsive topbar
|
|
631
|
+
* 31.0.39 Erreur refactor
|
|
627
632
|
|
package/index.ts
CHANGED
|
@@ -59,6 +59,7 @@ import ClassicRadio from "./src/components/form/ClassicRadio.vue";
|
|
|
59
59
|
import ClassicLoading from "./src/components/form/ClassicLoading.vue";
|
|
60
60
|
import ClassicSelect from "./src/components/form/ClassicSelect.vue";
|
|
61
61
|
import Paginate from "./src/components/display/list/Paginate.vue";
|
|
62
|
+
import ListPaginate from "./src/components/display/list/ListPaginate.vue";
|
|
62
63
|
|
|
63
64
|
//mixins
|
|
64
65
|
import {selenium} from "./src/components/mixins/functions";
|
|
@@ -120,7 +121,8 @@ const components = {
|
|
|
120
121
|
PodcastPlaylistInlineList,
|
|
121
122
|
ClassicSelect,
|
|
122
123
|
Error403Page,
|
|
123
|
-
Paginate
|
|
124
|
+
Paginate,
|
|
125
|
+
ListPaginate
|
|
124
126
|
}
|
|
125
127
|
|
|
126
128
|
export default components;
|
|
@@ -177,5 +179,6 @@ export {
|
|
|
177
179
|
PodcastPlaylistInlineList,
|
|
178
180
|
ClassicSelect,
|
|
179
181
|
Error403Page,
|
|
180
|
-
Paginate
|
|
182
|
+
Paginate,
|
|
183
|
+
ListPaginate
|
|
181
184
|
};
|
package/package.json
CHANGED
|
@@ -20,7 +20,7 @@
|
|
|
20
20
|
:key="e.emissionId"
|
|
21
21
|
>
|
|
22
22
|
<EmissionItem
|
|
23
|
-
v-if="
|
|
23
|
+
v-if="0!==e.emissionId"
|
|
24
24
|
:emission="e"
|
|
25
25
|
/>
|
|
26
26
|
</template>
|
|
@@ -35,7 +35,7 @@
|
|
|
35
35
|
:key="e.emissionId"
|
|
36
36
|
>
|
|
37
37
|
<EmissionPlayerItem
|
|
38
|
-
v-if="
|
|
38
|
+
v-if="0!==e.emissionId"
|
|
39
39
|
:emission="e"
|
|
40
40
|
class="m-3 flex-shrink-0"
|
|
41
41
|
:class="mainRubriquage(e)"
|
|
@@ -148,7 +148,7 @@ export default defineComponent({
|
|
|
148
148
|
this.reloadList();
|
|
149
149
|
},
|
|
150
150
|
dfirst(): void{
|
|
151
|
-
if(!this.emissions[this.dfirst] ||
|
|
151
|
+
if(!this.emissions[this.dfirst] || 0===this.emissions[this.dfirst].emissionId){
|
|
152
152
|
this.fetchContent(false);
|
|
153
153
|
}
|
|
154
154
|
},
|
|
@@ -23,7 +23,7 @@
|
|
|
23
23
|
:key="p.podcastId"
|
|
24
24
|
>
|
|
25
25
|
<PodcastItem
|
|
26
|
-
v-if="
|
|
26
|
+
v-if="0!==p.podcastId"
|
|
27
27
|
:podcast="p"
|
|
28
28
|
/>
|
|
29
29
|
</template>
|
|
@@ -80,7 +80,7 @@ export default defineComponent({
|
|
|
80
80
|
this.reloadList();
|
|
81
81
|
},
|
|
82
82
|
dfirst(): void{
|
|
83
|
-
if(!this.lives[this.dfirst] ||
|
|
83
|
+
if(!this.lives[this.dfirst] || 0===this.lives[this.dfirst].podcastId){
|
|
84
84
|
this.fetchContent(false);
|
|
85
85
|
}
|
|
86
86
|
},
|
|
@@ -18,7 +18,7 @@
|
|
|
18
18
|
:key="p.participantId"
|
|
19
19
|
>
|
|
20
20
|
<ParticipantItem
|
|
21
|
-
v-if="
|
|
21
|
+
v-if="0!==p.participantId"
|
|
22
22
|
:participant="p"
|
|
23
23
|
/>
|
|
24
24
|
</template>
|
|
@@ -91,7 +91,7 @@ export default defineComponent({
|
|
|
91
91
|
this.reloadList();
|
|
92
92
|
},
|
|
93
93
|
dfirst(): void{
|
|
94
|
-
if(!this.participants[this.dfirst] ||
|
|
94
|
+
if(!this.participants[this.dfirst] || 0===this.participants[this.dfirst].participantId){
|
|
95
95
|
this.fetchContent(false);
|
|
96
96
|
}
|
|
97
97
|
},
|
|
@@ -18,7 +18,7 @@
|
|
|
18
18
|
:key="p.playlistId"
|
|
19
19
|
>
|
|
20
20
|
<PlaylistItem
|
|
21
|
-
v-if="
|
|
21
|
+
v-if="0!==p.playlistId"
|
|
22
22
|
:playlist="p"
|
|
23
23
|
/>
|
|
24
24
|
</template>
|
|
@@ -94,7 +94,7 @@ export default defineComponent({
|
|
|
94
94
|
this.reloadList();
|
|
95
95
|
},
|
|
96
96
|
dfirst(): void{
|
|
97
|
-
if(!this.playlists[this.dfirst] ||
|
|
97
|
+
if(!this.playlists[this.dfirst] || 0===this.playlists[this.dfirst].playlistId){
|
|
98
98
|
this.fetchContent(false);
|
|
99
99
|
}
|
|
100
100
|
},
|
|
@@ -97,7 +97,7 @@ export default defineComponent({
|
|
|
97
97
|
props: {
|
|
98
98
|
podcast: { default: ()=>({}), type: Object as ()=>Podcast},
|
|
99
99
|
hidePlay: { default: false, type: Boolean},
|
|
100
|
-
displayDescription: { default:
|
|
100
|
+
displayDescription: { default: false, type: Boolean},
|
|
101
101
|
arrowDirection: { default: 'up', type: String},
|
|
102
102
|
isAnimatorLive: { default: false, type: Boolean},
|
|
103
103
|
fetchConference: { default: undefined, type: Object as ()=>Conference},
|
|
@@ -2,7 +2,18 @@
|
|
|
2
2
|
<div
|
|
3
3
|
class="d-flex flex-column p-3"
|
|
4
4
|
>
|
|
5
|
-
<
|
|
5
|
+
<div class="d-flex align-items-center mb-2">
|
|
6
|
+
<h2 class="mb-0">
|
|
7
|
+
{{ title }}
|
|
8
|
+
</h2>
|
|
9
|
+
<router-link
|
|
10
|
+
v-if="isButtonNextTitle"
|
|
11
|
+
class="btn admin-button m-1 fw-bold saooti-right"
|
|
12
|
+
:title="buttonText"
|
|
13
|
+
:to="refTo"
|
|
14
|
+
@click="handleSeeMoreButton"
|
|
15
|
+
/>
|
|
16
|
+
</div>
|
|
6
17
|
<div class="d-flex justify-content-between">
|
|
7
18
|
<div class="d-flex">
|
|
8
19
|
<button
|
|
@@ -44,7 +55,8 @@
|
|
|
44
55
|
</div>
|
|
45
56
|
<slot name="list-inline" />
|
|
46
57
|
<router-link
|
|
47
|
-
|
|
58
|
+
v-if="!isButtonNextTitle"
|
|
59
|
+
class="btn btn-link align-self-center width-fit-content m-4"
|
|
48
60
|
:to="refTo"
|
|
49
61
|
@click="handleSeeMoreButton"
|
|
50
62
|
>
|
|
@@ -80,6 +92,7 @@ export default defineComponent({
|
|
|
80
92
|
iabId: { default: undefined, type: Number},
|
|
81
93
|
rubriqueId: { default: () => [], type: Array as ()=> Array<number> },
|
|
82
94
|
noRubriquageId: { default: () => [], type: Array as ()=> Array<number> },
|
|
95
|
+
isButtonNextTitle: {default: false, type:Boolean}
|
|
83
96
|
},
|
|
84
97
|
emits:['sortChrono','sortPopular', 'displayPrevious', 'displayNext'],
|
|
85
98
|
data() {
|
|
@@ -10,13 +10,14 @@
|
|
|
10
10
|
>
|
|
11
11
|
<PodcastImage
|
|
12
12
|
:podcast="podcast"
|
|
13
|
-
:hide-play="!hover || !description"
|
|
14
|
-
:display-description="description"
|
|
13
|
+
:hide-play="!podcastItemDescription || (podcastItemDescription && (!hover || !description))"
|
|
14
|
+
:display-description="description && podcastItemDescription"
|
|
15
15
|
:arrow-direction="arrowDirection"
|
|
16
16
|
@hideDescription="hideDescription"
|
|
17
17
|
@showDescription="showDescription"
|
|
18
18
|
/>
|
|
19
19
|
<div
|
|
20
|
+
v-if="podcastItemDescription"
|
|
20
21
|
ref="descriptionPodcastContainer"
|
|
21
22
|
class="description-podcast-item html-wysiwyg-content"
|
|
22
23
|
:class="[
|
|
@@ -80,6 +81,9 @@ export default defineComponent({
|
|
|
80
81
|
podcastBorderBottom(): boolean {
|
|
81
82
|
return (state.podcastsPage.podcastBorderBottom as boolean);
|
|
82
83
|
},
|
|
84
|
+
podcastItemDescription(): boolean {
|
|
85
|
+
return (state.podcastPage.podcastItemDescription as boolean);
|
|
86
|
+
},
|
|
83
87
|
displayDate(): string {
|
|
84
88
|
return moment(this.podcast.pubDate).format('X');
|
|
85
89
|
},
|
|
@@ -89,6 +93,7 @@ export default defineComponent({
|
|
|
89
93
|
},
|
|
90
94
|
|
|
91
95
|
mounted() {
|
|
96
|
+
if(!this.podcastItemDescription){return}
|
|
92
97
|
const podcastDesc = (this.$refs.descriptionPodcast as HTMLElement);
|
|
93
98
|
const podcastDescContainer = (this.$refs.descriptionPodcastContainer as HTMLElement);
|
|
94
99
|
if (
|
|
@@ -100,10 +105,12 @@ export default defineComponent({
|
|
|
100
105
|
},
|
|
101
106
|
methods: {
|
|
102
107
|
showDescription(): void {
|
|
108
|
+
if(!this.podcastItemDescription){return}
|
|
103
109
|
this.arrowDirection = 'down';
|
|
104
110
|
this.hover = true;
|
|
105
111
|
},
|
|
106
112
|
hideDescription(): void {
|
|
113
|
+
if(!this.podcastItemDescription){return}
|
|
107
114
|
this.arrowDirection = 'up';
|
|
108
115
|
this.hover = false;
|
|
109
116
|
},
|
|
@@ -19,7 +19,7 @@
|
|
|
19
19
|
:key="p.podcastId"
|
|
20
20
|
>
|
|
21
21
|
<PodcastItem
|
|
22
|
-
v-if="
|
|
22
|
+
v-if="0!==p.podcastId"
|
|
23
23
|
:podcast="p"
|
|
24
24
|
/>
|
|
25
25
|
</template>
|
|
@@ -125,7 +125,7 @@ export default defineComponent({
|
|
|
125
125
|
this.reloadList();
|
|
126
126
|
},
|
|
127
127
|
dfirst(): void{
|
|
128
|
-
if(!this.podcasts[this.dfirst] ||
|
|
128
|
+
if(!this.podcasts[this.dfirst] || 0===this.podcasts[this.dfirst].podcastId){
|
|
129
129
|
this.fetchContent(false);
|
|
130
130
|
}
|
|
131
131
|
},
|
|
@@ -10,6 +10,7 @@
|
|
|
10
10
|
:iab-id="iabId"
|
|
11
11
|
:rubrique-id="rubriqueId"
|
|
12
12
|
:no-rubriquage-id="noRubriquageId"
|
|
13
|
+
:is-button-next-title="true"
|
|
13
14
|
@sortChrono="sortChrono"
|
|
14
15
|
@sortPopular="sortPopular"
|
|
15
16
|
>
|
|
@@ -18,10 +19,10 @@
|
|
|
18
19
|
:loading-text="loading?$t('Loading podcasts ...'):undefined"
|
|
19
20
|
/>
|
|
20
21
|
<swiper
|
|
21
|
-
v-
|
|
22
|
+
v-if="!loading"
|
|
22
23
|
:slides-per-view="numberItem"
|
|
23
24
|
:space-between="10"
|
|
24
|
-
:loop="
|
|
25
|
+
:loop="allPodcasts.length>=numberItem"
|
|
25
26
|
:navigation="true"
|
|
26
27
|
:modules="modules"
|
|
27
28
|
>
|
|
@@ -83,7 +84,6 @@ export default defineComponent({
|
|
|
83
84
|
data() {
|
|
84
85
|
return {
|
|
85
86
|
loading: true as boolean,
|
|
86
|
-
loaded: true as boolean,
|
|
87
87
|
popularSort: false as boolean,
|
|
88
88
|
allPodcasts: [] as Array<Podcast>,
|
|
89
89
|
modules: [Navigation],
|
|
@@ -151,11 +151,10 @@ export default defineComponent({
|
|
|
151
151
|
sort: this.popularSort ? 'POPULARITY' : 'DATE',
|
|
152
152
|
query: this.query,
|
|
153
153
|
});
|
|
154
|
-
this.loading = false;
|
|
155
|
-
this.loaded = true;
|
|
156
154
|
this.allPodcasts = this.allPodcasts.concat(
|
|
157
155
|
data.result.filter((pod: Podcast|null) => null !== pod)
|
|
158
156
|
);
|
|
157
|
+
this.loading = false;
|
|
159
158
|
},
|
|
160
159
|
sortPopular(): void {
|
|
161
160
|
if (this.popularSort) return;
|
|
@@ -171,7 +170,6 @@ export default defineComponent({
|
|
|
171
170
|
},
|
|
172
171
|
reset(): void {
|
|
173
172
|
this.loading = true;
|
|
174
|
-
this.loaded = true;
|
|
175
173
|
this.allPodcasts.length = 0;
|
|
176
174
|
},
|
|
177
175
|
},
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
<template
|
|
4
4
|
v-if="authenticated || participantId || organisationId || notExclusive"
|
|
5
5
|
>
|
|
6
|
-
<div class="d-flex
|
|
6
|
+
<div class="d-flex mb-2">
|
|
7
7
|
<h3 class="mb-0">
|
|
8
8
|
{{ $t('Share') }}
|
|
9
9
|
</h3>
|
|
@@ -12,7 +12,7 @@
|
|
|
12
12
|
id="popover-share-help"
|
|
13
13
|
role="button"
|
|
14
14
|
tabindex="-1"
|
|
15
|
-
class="saooti-help ms-2"
|
|
15
|
+
class="saooti-help ms-2 align-items-start"
|
|
16
16
|
:title="$t('Help')"
|
|
17
17
|
/>
|
|
18
18
|
<Popover
|
|
@@ -49,22 +49,16 @@
|
|
|
49
49
|
</template>
|
|
50
50
|
<template v-if="!isEducation">
|
|
51
51
|
<hr class="dropdown-divider">
|
|
52
|
-
<
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
class="dropdown-item"
|
|
63
|
-
rel="noopener"
|
|
64
|
-
target="_blank"
|
|
65
|
-
>
|
|
66
|
-
{{ $t('TutoMag') }}
|
|
67
|
-
</a>
|
|
52
|
+
<template v-for="helpLink in helpLinks" :key="helpLink.title">
|
|
53
|
+
<a
|
|
54
|
+
:href="helpLink.href"
|
|
55
|
+
class="dropdown-item"
|
|
56
|
+
rel="noopener"
|
|
57
|
+
target="_blank"
|
|
58
|
+
>
|
|
59
|
+
{{ helpLink.title }}
|
|
60
|
+
</a>
|
|
61
|
+
</template>
|
|
68
62
|
</template>
|
|
69
63
|
<hr class="dropdown-divider">
|
|
70
64
|
<a
|
|
@@ -95,17 +89,17 @@ export default defineComponent({
|
|
|
95
89
|
isEducation: { default: false, type: Boolean},
|
|
96
90
|
},
|
|
97
91
|
computed: {
|
|
98
|
-
|
|
92
|
+
helpLinks(){
|
|
99
93
|
return [
|
|
100
94
|
{title:this.$t('Help'), href:'https://help.octopus.saooti.com/Aide/'},
|
|
101
95
|
{title:this.$t('TutoMag'),href:"https://help.octopus.saooti.com/"}];
|
|
102
|
-
},
|
|
96
|
+
},
|
|
103
97
|
routerBackoffice(){
|
|
104
98
|
return [
|
|
105
|
-
{title:this.$t('Upload'),class:"btn btn-primary w-100", path:'/main/priv/upload', condition:
|
|
99
|
+
{title:this.$t('Upload'),class:"btn btn-primary w-100", path:'/main/priv/upload', condition: (state.generalParameters.isContribution as boolean)},
|
|
106
100
|
{title:this.$t('My space'),class:"show-phone dropdown-item", path:'/main/priv/backoffice', condition: true},
|
|
107
101
|
{title:this.$t('Edit my profile'),class:"dropdown-item", path:'/main/priv/edit/profile', condition: true},
|
|
108
|
-
{title:this.$t('Edit my organisation'),class:"dropdown-item", path:'/main/priv/edit/organisation', condition:
|
|
102
|
+
{title:this.$t('Edit my organisation'),class:"dropdown-item", path:'/main/priv/edit/organisation', condition: (state.generalParameters.isOrganisation as boolean)}];
|
|
109
103
|
},
|
|
110
104
|
|
|
111
105
|
isPodcastmaker(): boolean {
|
|
@@ -114,12 +108,6 @@ export default defineComponent({
|
|
|
114
108
|
authenticated(): boolean {
|
|
115
109
|
return this.$store.state.authentication.isAuthenticated;
|
|
116
110
|
},
|
|
117
|
-
isOrganisation(): boolean {
|
|
118
|
-
return (state.generalParameters.isOrganisation as boolean);
|
|
119
|
-
},
|
|
120
|
-
isContribution(): boolean {
|
|
121
|
-
return (state.generalParameters.isContribution as boolean);
|
|
122
|
-
},
|
|
123
111
|
},
|
|
124
112
|
|
|
125
113
|
methods: {
|
package/src/store/paramStore.ts
CHANGED
|
@@ -34,6 +34,7 @@ const state:paramStore = {
|
|
|
34
34
|
podcastItemShowEmission: false,
|
|
35
35
|
clickPlayGoPage:false,
|
|
36
36
|
listTypeClassic: true,
|
|
37
|
+
podcastItemDescription:true
|
|
37
38
|
},
|
|
38
39
|
podcastsPage: {
|
|
39
40
|
ProductorSearch: true,
|
|
@@ -122,7 +123,8 @@ export interface PodcastPage{
|
|
|
122
123
|
resourceUrl?: string |undefined,
|
|
123
124
|
podcastItemShowEmission?: boolean,
|
|
124
125
|
clickPlayGoPage?:boolean,
|
|
125
|
-
listTypeClassic?:boolean
|
|
126
|
+
listTypeClassic?:boolean,
|
|
127
|
+
podcastItemDescription?:boolean,
|
|
126
128
|
}
|
|
127
129
|
export interface PodcastsPage{
|
|
128
130
|
ProductorSearch?: boolean,
|
|
@@ -13,7 +13,7 @@ import { Rubrique } from "./class/rubrique/rubrique"
|
|
|
13
13
|
export function emptyPlaylistData(): Playlist{
|
|
14
14
|
return {
|
|
15
15
|
description: '',
|
|
16
|
-
playlistId:
|
|
16
|
+
playlistId: 0,
|
|
17
17
|
podcasts: [],
|
|
18
18
|
score: 0,
|
|
19
19
|
title: '',
|
|
@@ -23,12 +23,12 @@ export function emptyParticipantData(): Participant{
|
|
|
23
23
|
return {
|
|
24
24
|
firstName: '',
|
|
25
25
|
lastName: '',
|
|
26
|
-
participantId
|
|
26
|
+
participantId:0
|
|
27
27
|
}
|
|
28
28
|
}
|
|
29
29
|
export function emptyEmissionData(): Emission{
|
|
30
30
|
return {
|
|
31
|
-
emissionId:
|
|
31
|
+
emissionId: 0,
|
|
32
32
|
name: '' ,
|
|
33
33
|
description: '' ,
|
|
34
34
|
imageUrl: '' ,
|
|
@@ -45,7 +45,7 @@ export function emptyEmissionData(): Emission{
|
|
|
45
45
|
|
|
46
46
|
export function emptyPodcastData(): Podcast{
|
|
47
47
|
return {
|
|
48
|
-
podcastId
|
|
48
|
+
podcastId:0,
|
|
49
49
|
audioUrl: '' ,
|
|
50
50
|
audioStorageUrl: '' ,
|
|
51
51
|
imageUrl: '' ,
|