@saooti/octopus-sdk 29.0.1 → 29.0.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/README.md +1 -0
- package/package.json +5 -1
- package/src/assets/bootstrap-diff.scss +4 -0
- package/src/assets/form.scss +19 -0
- package/src/assets/modal.scss +9 -10
- package/src/components/display/categories/CategoryList.vue +20 -19
- package/src/components/display/comments/AddCommentModal.vue +67 -67
- package/src/components/display/comments/CommentItem.vue +10 -7
- package/src/components/display/emission/EmissionInlineList.vue +4 -2
- package/src/components/display/filter/AdvancedSearch.vue +40 -27
- package/src/components/display/podcasts/ParticipantDescription.vue +20 -6
- package/src/components/display/rubriques/RubriqueList.vue +20 -19
- package/src/components/display/sharing/PlayerParameters.vue +8 -4
- package/src/components/display/sharing/ShareButtons.vue +11 -11
- package/src/components/misc/HomeDropdown.vue +116 -87
- package/src/components/misc/modal/MessageModal.vue +51 -50
- package/src/components/misc/modal/NewsletterModal.vue +88 -82
- package/src/components/misc/modal/QrCodeModal.vue +25 -21
- package/src/components/misc/modal/ShareModalPlayer.vue +91 -51
- package/src/components/pages/Participant.vue +2 -1
- package/src/main.ts +8 -3
|
@@ -1,63 +1,89 @@
|
|
|
1
1
|
<template>
|
|
2
2
|
<div>
|
|
3
|
-
<
|
|
3
|
+
<div
|
|
4
4
|
id="share-modal"
|
|
5
|
-
|
|
6
|
-
:title="$t('Share the player')"
|
|
7
|
-
@close="closePopup"
|
|
8
|
-
@hide="closePopup"
|
|
9
|
-
@cancel="closePopup"
|
|
5
|
+
class="modal"
|
|
10
6
|
>
|
|
11
|
-
<
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
class="
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
<
|
|
19
|
-
|
|
20
|
-
class="
|
|
21
|
-
|
|
7
|
+
<div class="modal-backdrop" />
|
|
8
|
+
<div class="modal-dialog">
|
|
9
|
+
<div class="modal-content">
|
|
10
|
+
<div class="modal-header">
|
|
11
|
+
<h5 class="modal-title">
|
|
12
|
+
{{ $t('Share the player') }}
|
|
13
|
+
</h5>
|
|
14
|
+
<button
|
|
15
|
+
type="button"
|
|
16
|
+
class="btn-close"
|
|
17
|
+
aria-label="Close"
|
|
18
|
+
@click="closePopup"
|
|
22
19
|
/>
|
|
23
|
-
</
|
|
24
|
-
<
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
20
|
+
</div>
|
|
21
|
+
<div class="modal-body">
|
|
22
|
+
<ul class="nav nav-tabs">
|
|
23
|
+
<li
|
|
24
|
+
v-for="(tab, index) in tabs"
|
|
25
|
+
:key="tab"
|
|
26
|
+
class="nav-item"
|
|
27
|
+
>
|
|
28
|
+
<div
|
|
29
|
+
class="nav-link"
|
|
30
|
+
:class="activeTab === index? 'active':''"
|
|
31
|
+
@click="activeTab = index"
|
|
32
|
+
>
|
|
33
|
+
{{ tab }}
|
|
34
|
+
</div>
|
|
35
|
+
</li>
|
|
36
|
+
</ul>
|
|
37
|
+
<div class="tab-content p-2 share-modal-border">
|
|
38
|
+
<div
|
|
39
|
+
class="tab-pane tab-pane"
|
|
40
|
+
:class="activeTab === 0? 'active':''"
|
|
41
|
+
>
|
|
42
|
+
<p>{{ embedLink }}</p>
|
|
43
|
+
<div
|
|
44
|
+
class="saooti-copy"
|
|
45
|
+
@click="onCopyCode(embedLink, afterCopy)"
|
|
46
|
+
/>
|
|
47
|
+
</div>
|
|
48
|
+
<div
|
|
49
|
+
class="tab-pane tab-pane"
|
|
50
|
+
:class="activeTab === 1? 'active':''"
|
|
51
|
+
>
|
|
52
|
+
<div class="d-flex flex-column">
|
|
53
|
+
<div class="d-flex">
|
|
54
|
+
<p>{{ embedlyLink }}</p>
|
|
55
|
+
<div
|
|
56
|
+
class="saooti-copy"
|
|
57
|
+
@click="onCopyCode(embedlyLink, afterCopy)"
|
|
58
|
+
/>
|
|
59
|
+
</div>
|
|
60
|
+
<QrCode :url="embedlyLink" />
|
|
61
|
+
</div>
|
|
62
|
+
</div>
|
|
63
|
+
<div
|
|
64
|
+
v-if="directLink"
|
|
65
|
+
class="tab-pane tab-pane active"
|
|
66
|
+
:class="activeTab === 2? 'active':''"
|
|
67
|
+
>
|
|
68
|
+
<p>{{ directLink.audioUrl }}</p>
|
|
31
69
|
<div
|
|
32
70
|
class="saooti-copy"
|
|
33
|
-
@click="onCopyCode(
|
|
71
|
+
@click="onCopyCode(directLink.audioUrl, snackbarRef)"
|
|
34
72
|
/>
|
|
35
73
|
</div>
|
|
36
|
-
<QrCode :url="embedlyLink" />
|
|
37
74
|
</div>
|
|
38
|
-
</
|
|
39
|
-
<
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
</b-tabs>
|
|
51
|
-
</template>
|
|
52
|
-
<template #modal-footer>
|
|
53
|
-
<button
|
|
54
|
-
class="btn btn-primary m-1"
|
|
55
|
-
@click="closePopup"
|
|
56
|
-
>
|
|
57
|
-
{{ $t('Close') }}
|
|
58
|
-
</button>
|
|
59
|
-
</template>
|
|
60
|
-
</b-modal>
|
|
75
|
+
</div>
|
|
76
|
+
<div class="modal-footer">
|
|
77
|
+
<button
|
|
78
|
+
class="btn btn-primary m-1"
|
|
79
|
+
@click="closePopup"
|
|
80
|
+
>
|
|
81
|
+
{{ $t('Close') }}
|
|
82
|
+
</button>
|
|
83
|
+
</div>
|
|
84
|
+
</div>
|
|
85
|
+
</div>
|
|
86
|
+
</div>
|
|
61
87
|
<Snackbar
|
|
62
88
|
ref="snackbar"
|
|
63
89
|
position="bottom-left"
|
|
@@ -71,6 +97,7 @@ import { displayMethods } from '../../mixins/functions';
|
|
|
71
97
|
|
|
72
98
|
import QrCode from '../../display/sharing/QrCode.vue';
|
|
73
99
|
import { defineComponent } from 'vue'
|
|
100
|
+
import { Podcast } from '@/store/class/podcast';
|
|
74
101
|
export default defineComponent({
|
|
75
102
|
name: 'ShareModalPlayer',
|
|
76
103
|
|
|
@@ -82,9 +109,22 @@ export default defineComponent({
|
|
|
82
109
|
props: {
|
|
83
110
|
embedLink: { default: undefined, type: String},
|
|
84
111
|
embedlyLink: { default: undefined, type: String},
|
|
85
|
-
directLink: { default: undefined, type:
|
|
112
|
+
directLink: { default: undefined, type: Object as ()=>Podcast},
|
|
86
113
|
},
|
|
87
114
|
emits: ['close'],
|
|
115
|
+
data() {
|
|
116
|
+
return {
|
|
117
|
+
activeTab: 0 as number,
|
|
118
|
+
};
|
|
119
|
+
},
|
|
120
|
+
computed:{
|
|
121
|
+
tabs(): Array<string>{
|
|
122
|
+
if(this.directLink){
|
|
123
|
+
return [this.$t('Embed link'),this.$t('Embedly link'),this.$t('Direct link')];
|
|
124
|
+
}
|
|
125
|
+
return [this.$t('Embed link'),this.$t('Embedly link')];
|
|
126
|
+
}
|
|
127
|
+
},
|
|
88
128
|
methods: {
|
|
89
129
|
closePopup(event: { preventDefault: () => void }): void {
|
|
90
130
|
event.preventDefault();
|
|
@@ -158,8 +158,9 @@ export default defineComponent({
|
|
|
158
158
|
).trim();
|
|
159
159
|
},
|
|
160
160
|
editRight(): boolean {
|
|
161
|
+
if(!this.participant || !this.participant.orga ){return false;}
|
|
161
162
|
if (
|
|
162
|
-
(this.authenticated &&
|
|
163
|
+
(this.authenticated &&
|
|
163
164
|
this.organisationId === this.participant.orga.id) ||
|
|
164
165
|
state.generalParameters.isAdmin
|
|
165
166
|
)
|
package/src/main.ts
CHANGED
|
@@ -11,8 +11,8 @@ import { VueReCaptcha } from 'vue-recaptcha-v3';
|
|
|
11
11
|
FormGroupPlugin,
|
|
12
12
|
FormTextareaPlugin,
|
|
13
13
|
CollapsePlugin } from 'bootstrap-vue-3'; */
|
|
14
|
-
import bootstrap from 'bootstrap-vue-3';
|
|
15
|
-
import 'bootstrap-vue-3/dist/bootstrap-vue-3.css';
|
|
14
|
+
/* import bootstrap from 'bootstrap-vue-3';
|
|
15
|
+
import 'bootstrap-vue-3/dist/bootstrap-vue-3.css'; */
|
|
16
16
|
import App from './App.vue';
|
|
17
17
|
import { createI18n } from 'vue-i18n';
|
|
18
18
|
import I18nResources from './locale/messages';
|
|
@@ -20,6 +20,11 @@ import router from '@/router/router';
|
|
|
20
20
|
const moment = require('moment');
|
|
21
21
|
import store from '@/store/AppStore';
|
|
22
22
|
const paramStore = require('./store/paramStore');
|
|
23
|
+
/* import 'popper.js/dist/popper.min.js'; */
|
|
24
|
+
/* import 'jquery/src/jquery.js'; */
|
|
25
|
+
import 'jquery';
|
|
26
|
+
import 'bootstrap/dist/js/bootstrap.bundle.min.js';
|
|
27
|
+
|
|
23
28
|
|
|
24
29
|
//TODO
|
|
25
30
|
const navigatorLang = navigator.language /* || navigator.userLanguage */;
|
|
@@ -62,7 +67,7 @@ paramStore
|
|
|
62
67
|
.use(i18n)
|
|
63
68
|
.use(store)
|
|
64
69
|
.use(router)
|
|
65
|
-
.use(bootstrap)
|
|
70
|
+
/* .use(bootstrap) */
|
|
66
71
|
.use(VueReCaptcha, { siteKey: '6LfyP_4ZAAAAAPODj8nov2LvosIwcX0GYeBSungh' })
|
|
67
72
|
/* .use(ModalPlugin)
|
|
68
73
|
.use(FormRadioPlugin)
|