@saooti/octopus-sdk 38.2.19 → 38.3.0
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 +1 -1
- package/public/img/logo_octopus_black.png +0 -0
- package/src/components/display/sharing/ShareButtons.vue +2 -2
- package/src/components/misc/modal/NewsletterModal.vue +220 -122
- package/src/components/pages/Error403Page.vue +1 -1
- package/src/locale/de.ts +5 -8
- package/src/locale/en.ts +5 -8
- package/src/locale/es.ts +5 -8
- package/src/locale/fr.ts +6 -9
- package/src/locale/it.ts +5 -8
- package/src/locale/sl.ts +5 -8
- package/src/stores/GeneralStore.ts +1 -1
- package/public/img/logo_octopus_final.svg +0 -68
package/package.json
CHANGED
|
Binary file
|
|
@@ -28,7 +28,7 @@
|
|
|
28
28
|
</div>
|
|
29
29
|
</div>
|
|
30
30
|
<div class="d-flex align-items-center">
|
|
31
|
-
<div
|
|
31
|
+
<!-- <div
|
|
32
32
|
v-if="podcast || emission || playlist"
|
|
33
33
|
class="d-flex flex-column ms-4"
|
|
34
34
|
>
|
|
@@ -43,7 +43,7 @@
|
|
|
43
43
|
@click="newsletter = true"
|
|
44
44
|
/>
|
|
45
45
|
</div>
|
|
46
|
-
</div>
|
|
46
|
+
</div> -->
|
|
47
47
|
<div class="d-flex flex-column ms-4">
|
|
48
48
|
<div class="h2 mb-2">
|
|
49
49
|
{{ $t("QR Code") }}
|
|
@@ -1,58 +1,75 @@
|
|
|
1
1
|
<template>
|
|
2
2
|
<ClassicModal
|
|
3
3
|
id-modal="newsletter-modal"
|
|
4
|
-
:title-modal="
|
|
4
|
+
:title-modal="$t('Share newsletter')"
|
|
5
5
|
:closable="false"
|
|
6
6
|
@close="closePopup"
|
|
7
7
|
>
|
|
8
8
|
<template #body>
|
|
9
|
-
<div class="d-flex
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
<div class="d-flex
|
|
14
|
-
<
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
9
|
+
<div class="d-flex justify-content-between">
|
|
10
|
+
<!-- eslint-disable vue/no-v-html -->
|
|
11
|
+
<div v-html="newsletterHtml" />
|
|
12
|
+
<!-- eslint-enable -->
|
|
13
|
+
<div class="d-flex flex-column flex-grow-1 ms-4">
|
|
14
|
+
<h4 class="mb-3">
|
|
15
|
+
{{ $t("Configuration") }}
|
|
16
|
+
</h4>
|
|
17
|
+
<label for="share-url-newsletter">{{ $t("Share") }}</label>
|
|
18
|
+
<input
|
|
19
|
+
id="share-url-newsletter"
|
|
20
|
+
v-model="shareUrl"
|
|
21
|
+
class="form-input mb-2"
|
|
22
|
+
type="text"
|
|
23
|
+
:class="{ 'border border-danger': 0 === shareUrl }"
|
|
22
24
|
/>
|
|
23
|
-
<
|
|
24
|
-
<
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
<div class="d-flex">
|
|
29
|
-
<!-- eslint-disable vue/no-v-html -->
|
|
30
|
-
<div class="flex-grow-1 me-3" v-html="newsletterHtml" />
|
|
31
|
-
<!-- eslint-enable -->
|
|
32
|
-
<div class="d-flex flex-column">
|
|
33
|
-
<h4 class="mb-2">
|
|
34
|
-
{{ $t("Copy and embed the HTML code into your email tool") }}
|
|
35
|
-
</h4>
|
|
36
|
-
<textarea
|
|
37
|
-
id="newsletter_code_textarea"
|
|
38
|
-
v-model="newsletterHtml"
|
|
39
|
-
readonly
|
|
40
|
-
@click="selectAll"
|
|
25
|
+
<template v-if="podcast">
|
|
26
|
+
<ClassicCheckbox
|
|
27
|
+
v-model:textInit="displayEmissionName"
|
|
28
|
+
id-checkbox="display-emission-name"
|
|
29
|
+
:label="$t('Display emission name')"
|
|
41
30
|
/>
|
|
42
|
-
<
|
|
43
|
-
|
|
44
|
-
|
|
31
|
+
<ClassicCheckbox
|
|
32
|
+
v-model:textInit="displayParticipantsNames"
|
|
33
|
+
id-checkbox="display-participants-names"
|
|
34
|
+
:label="$t('Display participants list')"
|
|
45
35
|
/>
|
|
46
|
-
|
|
47
|
-
|
|
36
|
+
</template>
|
|
37
|
+
<div class="d-flex align-items-center mt-2">
|
|
38
|
+
<VSwatches
|
|
39
|
+
v-model="color"
|
|
40
|
+
class="c-hand me-2 mt-2"
|
|
41
|
+
show-fallback
|
|
42
|
+
fallback-input-type="color"
|
|
43
|
+
colors="text-advanced"
|
|
44
|
+
popover-to="right"
|
|
45
|
+
:data-color="color"
|
|
46
|
+
/>
|
|
47
|
+
<div>{{ $t("Choose main color") }}</div>
|
|
48
|
+
</div>
|
|
49
|
+
<div
|
|
50
|
+
class="d-flex justify-content-between align-items-center mt-3 mb-2"
|
|
51
|
+
>
|
|
52
|
+
<h4 class="mb-0">
|
|
53
|
+
{{ $t("HTML Code") }}
|
|
54
|
+
</h4>
|
|
55
|
+
<input
|
|
56
|
+
type="button"
|
|
57
|
+
:value="$t('Copy')"
|
|
58
|
+
class="btn btn-primary"
|
|
59
|
+
:title="$t('Copy')"
|
|
48
60
|
@click="onCopyCode(newsletterHtml, afterCopy)"
|
|
49
|
-
|
|
50
|
-
{{ $t("Copy") }}
|
|
51
|
-
</button>
|
|
61
|
+
/>
|
|
52
62
|
</div>
|
|
63
|
+
<textarea
|
|
64
|
+
id="newsletter_code_textarea"
|
|
65
|
+
v-model="newsletterHtml"
|
|
66
|
+
readonly
|
|
67
|
+
@click="selectAll"
|
|
68
|
+
/>
|
|
69
|
+
<label for="newsletter_code_textarea" :title="$t('HTML Code')" />
|
|
53
70
|
</div>
|
|
54
|
-
<SnackBar ref="snackbar" position="bottom-left" />
|
|
55
71
|
</div>
|
|
72
|
+
<SnackBar ref="snackbar" position="bottom-left" />
|
|
56
73
|
</template>
|
|
57
74
|
<template #footer>
|
|
58
75
|
<button class="btn btn-primary m-1" @click="closePopup">
|
|
@@ -64,11 +81,16 @@
|
|
|
64
81
|
|
|
65
82
|
<script lang="ts">
|
|
66
83
|
import ClassicModal from "../modal/ClassicModal.vue";
|
|
84
|
+
import ClassicCheckbox from "../../form/ClassicCheckbox.vue";
|
|
67
85
|
import SnackBar from "../../misc/SnackBar.vue";
|
|
86
|
+
import dayjs from "dayjs";
|
|
68
87
|
// @ts-ignore
|
|
69
88
|
import { VSwatches } from "vue3-swatches";
|
|
70
89
|
import "vue3-swatches/dist/style.css";
|
|
90
|
+
// @ts-ignore
|
|
91
|
+
import humanizeDuration from "humanize-duration";
|
|
71
92
|
import displayMethods from "../../mixins/displayMethods";
|
|
93
|
+
import { Participant } from "@/stores/class/general/participant";
|
|
72
94
|
import { Podcast } from "@/stores/class/general/podcast";
|
|
73
95
|
import { state } from "../../../stores/ParamSdkStore";
|
|
74
96
|
import { defineComponent } from "vue";
|
|
@@ -83,6 +105,7 @@ export default defineComponent({
|
|
|
83
105
|
components: {
|
|
84
106
|
SnackBar,
|
|
85
107
|
VSwatches,
|
|
108
|
+
ClassicCheckbox,
|
|
86
109
|
ClassicModal,
|
|
87
110
|
},
|
|
88
111
|
|
|
@@ -98,6 +121,8 @@ export default defineComponent({
|
|
|
98
121
|
|
|
99
122
|
data() {
|
|
100
123
|
return {
|
|
124
|
+
displayParticipantsNames: true as boolean,
|
|
125
|
+
displayEmissionName: true as boolean,
|
|
101
126
|
color: "#40a372" as string,
|
|
102
127
|
shareUrl: window.location.href,
|
|
103
128
|
};
|
|
@@ -105,93 +130,163 @@ export default defineComponent({
|
|
|
105
130
|
|
|
106
131
|
computed: {
|
|
107
132
|
...mapState(useAuthStore, ["authOrganisation"]),
|
|
108
|
-
|
|
133
|
+
date(): string {
|
|
134
|
+
if (!this.podcast || 1970 === dayjs(this.podcast.pubDate).year()) {
|
|
135
|
+
return "";
|
|
136
|
+
}
|
|
137
|
+
return dayjs(this.podcast.pubDate).format("D MMMM YYYY, HH[h]mm");
|
|
138
|
+
},
|
|
139
|
+
duration(): string {
|
|
140
|
+
if (!this.podcast || this.podcast.duration <= 1) return "";
|
|
141
|
+
if (this.podcast.duration > 600000) {
|
|
142
|
+
return humanizeDuration(this.podcast.duration, {
|
|
143
|
+
language: this.$i18n.locale,
|
|
144
|
+
largest: 1,
|
|
145
|
+
round: true,
|
|
146
|
+
});
|
|
147
|
+
}
|
|
148
|
+
return humanizeDuration(this.podcast.duration, {
|
|
149
|
+
language: this.$i18n.locale,
|
|
150
|
+
largest: 2,
|
|
151
|
+
round: true,
|
|
152
|
+
});
|
|
153
|
+
},
|
|
154
|
+
emissionName(): string {
|
|
155
|
+
if (!this.displayEmissionName || !this.podcast) {
|
|
156
|
+
return "";
|
|
157
|
+
}
|
|
158
|
+
return `<tr><td colspan="2" style="font-size: 16px;line-height:24px;font-weight: bold;">${this.podcast.emission.name}</td></tr>`;
|
|
159
|
+
},
|
|
160
|
+
articleHtml(): string {
|
|
161
|
+
if (!this.podcast?.article || 0 === this.podcast.article?.length) {
|
|
162
|
+
return "";
|
|
163
|
+
}
|
|
164
|
+
return `<a href="${this.podcast.article}" title="${this.$t(
|
|
165
|
+
"See associated article",
|
|
166
|
+
)}">
|
|
167
|
+
<img width="44" height="44" style="display: inline-block;vertical-align: middle; margin-right:3px" src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAYAAADgdz34AAAABmJLR0QA/wD/AP+gvaeTAAAA6UlEQVRIie3WPUpEMRTF8R9+4QpEBGttrcdeV+E2pp3KdYi7GBRttNVCZgOCjSuQ+UCLJzLIe7l3HpFpPJAuOf+T5F4SYh3jFZ/JMVlevJUwv8c+HvEQzD/FIBEaHOFtKdkosWb0PfdHGwXzOxxk03SpDVDNvA1Q1bwNcFMwn/cB/K6iQ+3VMsVVDQDcylVMSl1VBOea5FFjTXHWZVJqtCdcYjcI+YHnPoB3FY6qdERVVNrBHi6wGXgscK3Z8UqAE80dbAeAGV4wXhUwxk5gHurP72CtgP9Gw5oabYBhT7/wwZ/If09S35Yv52lVAXwyqt0AAAAASUVORK5CYII=">
|
|
168
|
+
</a>
|
|
169
|
+
<a style="color: #000;text-decoration: none;" href="${
|
|
170
|
+
this.podcast.article
|
|
171
|
+
}">${this.$t("See associated article")}</a>`;
|
|
172
|
+
},
|
|
173
|
+
participantsName(): string {
|
|
174
|
+
if (
|
|
175
|
+
!this.displayParticipantsNames ||
|
|
176
|
+
!this.podcast ||
|
|
177
|
+
!this.podcast.animators
|
|
178
|
+
)
|
|
179
|
+
return "";
|
|
180
|
+
const text = [""];
|
|
181
|
+
this.podcast.animators.forEach((element: Participant) => {
|
|
182
|
+
text.push(
|
|
183
|
+
`<table width='100%' style="width:100%;background: #f3f3f3;font-family: Arial, sans-serif;font-size: 12px;line-height: 20px;border-bottom-left-radius: 1.5em;border-bottom-right-radius: 1.5em;">
|
|
184
|
+
<tr>
|
|
185
|
+
<td width="90" rowspan="2" style="text-align:left; vertical-align: top; width: 90px;padding:0 15px 15px 10px">
|
|
186
|
+
<img width="72" style="width: 62px;height: 62px;border-radius: 50%;background-color: #fff;" src="${
|
|
187
|
+
element.imageUrl
|
|
188
|
+
}" alt="${this.$t("Animator image")}">
|
|
189
|
+
</td>
|
|
190
|
+
<td height="1" style="height: 1px;text-align:left; font-size: 14px;line-height:20px;vertical-align: top;font-weight: bold;padding-top: 23px;">${this.getName(
|
|
191
|
+
element,
|
|
192
|
+
)}</td>
|
|
193
|
+
</tr>`,
|
|
194
|
+
);
|
|
195
|
+
if (element.description) {
|
|
196
|
+
text.push(
|
|
197
|
+
`<tr><td style="height: 100%;text-align:justify;padding-bottom: 15px;padding-right: 15px; font-size: 12px;line-height:16px;vertical-align: top">
|
|
198
|
+
${element.description}</td></tr>`,
|
|
199
|
+
);
|
|
200
|
+
}
|
|
201
|
+
text.push(`</table>`);
|
|
202
|
+
});
|
|
203
|
+
return text.join("");
|
|
204
|
+
},
|
|
205
|
+
imageUrl(): string {
|
|
109
206
|
if (this.podcast) {
|
|
110
|
-
return {
|
|
111
|
-
titleModal: this.$t("Share the episode in your newsletter"),
|
|
112
|
-
imageUrl: `${this.podcast.imageUrl}" alt="${this.$t(
|
|
113
|
-
"Podcast image",
|
|
114
|
-
)}`,
|
|
115
|
-
title:this.podcast.title,
|
|
116
|
-
description: this.podcast.description ?? "",
|
|
117
|
-
shareText: this.$t("Listen this episode"),
|
|
118
|
-
emissionHtml: `<tr><td>
|
|
119
|
-
<div style="display:flex; margin-top:5px;">
|
|
120
|
-
<div style="font-size:20px; color:gray; margin-right:5px;">${this.$t(
|
|
121
|
-
"Emission",
|
|
122
|
-
)} :</div>
|
|
123
|
-
<a href="${this.shareUrl}" style="font-size: 18px;color: ${
|
|
124
|
-
this.color
|
|
125
|
-
};">${this.podcast.emission.name}</a>
|
|
126
|
-
</div></td></tr>`,
|
|
127
|
-
articleHtml:
|
|
128
|
-
!this.podcast?.article || 0 === this.podcast.article?.length
|
|
129
|
-
? ``
|
|
130
|
-
: `<tr><td>
|
|
131
|
-
<div style="display:flex;">
|
|
132
|
-
<svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24"><path fill="currentColor" d="M7 17h7v-2H7zm0-4h10v-2H7zm0-4h10V7H7zM5 21q-.825 0-1.412-.587T3 19V5q0-.825.588-1.412T5 3h14q.825 0 1.413.588T21 5v14q0 .825-.587 1.413T19 21zm0-2h14V5H5zM5 5v14z"/></svg>
|
|
133
|
-
<a href="${
|
|
134
|
-
this.podcast.article
|
|
135
|
-
}" style="color: black;margin-top:2px">${this.$t(
|
|
136
|
-
"See associated article",
|
|
137
|
-
)}</a>
|
|
138
|
-
</div></td></tr>
|
|
139
|
-
`,
|
|
140
|
-
colorTitle: `color:black;`,
|
|
141
|
-
};
|
|
207
|
+
return `${this.podcast.imageUrl}" alt="${this.$t("Podcast image")}`;
|
|
142
208
|
}
|
|
143
209
|
if (this.emission) {
|
|
144
|
-
return {
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
|
|
148
|
-
)}`,
|
|
149
|
-
title: this.emission.name,
|
|
150
|
-
description: this.emission.description ?? "",
|
|
151
|
-
shareText: this.$t("Listen to all episodes"),
|
|
152
|
-
emissionHtml: ``,
|
|
153
|
-
articleHtml: ``,
|
|
154
|
-
colorTitle: `color:${this.color};`,
|
|
155
|
-
};
|
|
210
|
+
return `${this.emission.imageUrl}" alt="${this.$t("Emission image")}`;
|
|
211
|
+
}
|
|
212
|
+
if (this.playlist) {
|
|
213
|
+
return `${this.playlist.imageUrl}" alt="${this.$t("Playlist image")}`;
|
|
156
214
|
}
|
|
157
|
-
return
|
|
158
|
-
|
|
159
|
-
|
|
160
|
-
|
|
161
|
-
|
|
162
|
-
|
|
163
|
-
|
|
164
|
-
|
|
165
|
-
|
|
166
|
-
|
|
167
|
-
|
|
168
|
-
}
|
|
215
|
+
return "";
|
|
216
|
+
},
|
|
217
|
+
title(): string {
|
|
218
|
+
if (this.podcast) {
|
|
219
|
+
return this.podcast.title;
|
|
220
|
+
}
|
|
221
|
+
if (this.emission) {
|
|
222
|
+
return this.emission.name;
|
|
223
|
+
}
|
|
224
|
+
if (this.playlist) {
|
|
225
|
+
return this.playlist.title;
|
|
226
|
+
}
|
|
227
|
+
return "";
|
|
228
|
+
},
|
|
229
|
+
description(): string {
|
|
230
|
+
if (this.podcast?.description) {
|
|
231
|
+
return `<tr><td colspan="2" valign="top" style="line-height:24px;font-size: 14px;max-width: 500px;">${this.podcast.description}</td></tr>`;
|
|
232
|
+
}
|
|
233
|
+
if (this.emission?.description) {
|
|
234
|
+
return `<tr><td colspan="2" valign="top" style="line-height:24px;font-size: 14px;max-width: 500px;">${this.emission.description}</td></tr>`;
|
|
235
|
+
}
|
|
236
|
+
if (this.playlist?.description) {
|
|
237
|
+
return `<tr><td colspan="2" valign="top" style="line-height:24px;font-size: 14px;max-width: 500px;">${this.playlist.description}</td></tr>`;
|
|
238
|
+
}
|
|
239
|
+
return "";
|
|
240
|
+
},
|
|
241
|
+
shareText(): string {
|
|
242
|
+
if (this.podcast) {
|
|
243
|
+
return this.$t("Listen this episode");
|
|
244
|
+
}
|
|
245
|
+
if (this.emission) {
|
|
246
|
+
return this.$t("All podcast emission button");
|
|
247
|
+
}
|
|
248
|
+
return this.$t("Podcasts in the playlist");
|
|
249
|
+
},
|
|
250
|
+
durationPodcast(): string {
|
|
251
|
+
if (!this.podcast) {
|
|
252
|
+
return "";
|
|
253
|
+
}
|
|
254
|
+
return `<td colspan="2" style="height: 1px;color: #666;font-size: 12px;line-height: 16px;padding-top:15px;">
|
|
255
|
+
<span>${this.date}</span>
|
|
256
|
+
<span style="padding: 0 10px">${this.$t("Duration", {
|
|
257
|
+
duration: this.duration,
|
|
258
|
+
})}</span>
|
|
259
|
+
</td>`;
|
|
169
260
|
},
|
|
170
261
|
newsletterHtml(): string {
|
|
171
|
-
|
|
172
|
-
|
|
173
|
-
<
|
|
174
|
-
|
|
175
|
-
|
|
176
|
-
|
|
177
|
-
|
|
178
|
-
|
|
179
|
-
|
|
180
|
-
<
|
|
181
|
-
|
|
182
|
-
|
|
183
|
-
|
|
184
|
-
|
|
185
|
-
|
|
186
|
-
|
|
187
|
-
|
|
188
|
-
|
|
189
|
-
|
|
190
|
-
this.
|
|
191
|
-
|
|
192
|
-
</
|
|
193
|
-
</
|
|
194
|
-
|
|
262
|
+
const html = [
|
|
263
|
+
`<table width='100%' style="width:100%;background:#f3f3f3;font-family: Arial, sans-serif;font-size: 12px;line-height: 20px;border-top-left-radius: 1.5em;border-top-right-radius: 1.5em;">
|
|
264
|
+
<tr>
|
|
265
|
+
<td valign="top" rowspan="4" style="vertical-align: top; padding: 10px;">
|
|
266
|
+
<img width="140" height="140" src="${this.imageUrl}" style="width: 140px;border-radius: 16px; box-shadow: 0px 12px 48px 6px rgba(64, 163, 114, 0.2);">
|
|
267
|
+
</td>
|
|
268
|
+
${this.durationPodcast}
|
|
269
|
+
</tr>
|
|
270
|
+
<tr>
|
|
271
|
+
<td colspan="2" valign="top" style="line-height:24px;color: ${this.color};font-size: 17px;text-transform: uppercase;overflow: hidden;text-overflow: ellipsis;white-space: nowrap;max-width: 400px;padding-top: 0.5em;">
|
|
272
|
+
${this.title}
|
|
273
|
+
</td>
|
|
274
|
+
</tr>
|
|
275
|
+
${this.emissionName}${this.description}`,
|
|
276
|
+
];
|
|
277
|
+
html.push(
|
|
278
|
+
`</table>
|
|
279
|
+
<table width='100%' style="width:100%;background:#f3f3f3;font-family: Arial, sans-serif;font-size: 12px;line-height: 20px;">
|
|
280
|
+
<tr style="font-family: Arial, sans-serif;font-size: 12px;line-height: 20px;background: #f3f3f3;vertical-align: middle;padding: 15px 10px;display: flex; align-items:center; flex-wrap:wrap">
|
|
281
|
+
<td><a href="${this.shareUrl}">
|
|
282
|
+
<svg fill="#000000" height="30px" width="30px" version="1.1" id="Capa_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" viewBox="0 0 17.804 17.804" xml:space="preserve"><g id="SVGRepo_bgCarrier" stroke-width="0"></g><g id="SVGRepo_tracerCarrier" stroke-linecap="round" stroke-linejoin="round"></g><g id="SVGRepo_iconCarrier"> <g> <g id="c98_play"> <path d="M2.067,0.043C2.21-0.028,2.372-0.008,2.493,0.085l13.312,8.503c0.094,0.078,0.154,0.191,0.154,0.313 c0,0.12-0.061,0.237-0.154,0.314L2.492,17.717c-0.07,0.057-0.162,0.087-0.25,0.087l-0.176-0.04 c-0.136-0.065-0.222-0.207-0.222-0.361V0.402C1.844,0.25,1.93,0.107,2.067,0.043z"></path> </g> <g id="Capa_1_78_"> </g> </g> </g></svg>
|
|
283
|
+
</a></td>
|
|
284
|
+
<td style="margin-left:10px"><a style="color: #000;text-decoration: none; margin-right:8px" href="${this.shareUrl}">${this.shareText}</a></td>
|
|
285
|
+
${this.articleHtml}
|
|
286
|
+
</tr>
|
|
287
|
+
</table>${this.participantsName}`,
|
|
288
|
+
);
|
|
289
|
+
return html.join("");
|
|
195
290
|
},
|
|
196
291
|
},
|
|
197
292
|
created() {
|
|
@@ -202,6 +297,9 @@ export default defineComponent({
|
|
|
202
297
|
closePopup(): void {
|
|
203
298
|
this.$emit("close");
|
|
204
299
|
},
|
|
300
|
+
getName(person: Participant): string {
|
|
301
|
+
return `${person.firstName ?? ""} ${person.lastName ?? ""}`.trim();
|
|
302
|
+
},
|
|
205
303
|
selectAll(element: Event): void {
|
|
206
304
|
const target = element.target;
|
|
207
305
|
if (null !== target) {
|
package/src/locale/de.ts
CHANGED
|
@@ -200,10 +200,12 @@ export default {
|
|
|
200
200
|
Publishing: "Veröffentlichen",
|
|
201
201
|
"select productor": "Produzenten wählen",
|
|
202
202
|
"Share newsletter": "Einen Newsletter teilen",
|
|
203
|
-
|
|
204
|
-
"
|
|
203
|
+
Configuration: "Konfiguration",
|
|
204
|
+
"HTML Code": "HTML-Code",
|
|
205
205
|
"Listen this episode": "Diese Folge anhören",
|
|
206
|
-
"
|
|
206
|
+
"Display emission name": "Titel der Reihe anzeigen",
|
|
207
|
+
"Display participants list": "Liste der Sprecher anzeigen",
|
|
208
|
+
"Choose main color": "Wählen Sie die Hauptfarbe",
|
|
207
209
|
"Octopus is ACPM Podcast accredited": "Octopus ist von der ACPM zertifiziert",
|
|
208
210
|
"Live episode": "Aktuelle Live-Übertragungen",
|
|
209
211
|
"This live will start": "Diese Live-Übertragung beginnt",
|
|
@@ -349,9 +351,4 @@ export default {
|
|
|
349
351
|
"Share in one click":"Mit einem Klick teilen",
|
|
350
352
|
"Chaptering":"Kapitelaufteilung",
|
|
351
353
|
"Listen to the latest episode":"Hören Sie sich die neueste Folge an",
|
|
352
|
-
"Share the episode in your newsletter": "Teilen Sie die Episode in Ihrem Newsletter",
|
|
353
|
-
"Share the series in your newsletter": "Teilen Sie die Show in Ihrem Newsletter",
|
|
354
|
-
"Share the playlist in your newsletter": "Teilen Sie die Playlist in Ihrem Newsletter",
|
|
355
|
-
"Listen to all episodes":"Hören Sie sich alle Folgen an",
|
|
356
|
-
"Newsletter elements":"Piktogramm abspielen, Name der Show, Mehr anzeigen",
|
|
357
354
|
}
|
package/src/locale/en.ts
CHANGED
|
@@ -198,10 +198,12 @@ export default {
|
|
|
198
198
|
Publishing: "Publishing",
|
|
199
199
|
"select productor": "Select Producer",
|
|
200
200
|
"Share newsletter": "Share a newsletter",
|
|
201
|
-
|
|
202
|
-
"
|
|
201
|
+
Configuration: "Configuration",
|
|
202
|
+
"HTML Code": "HTML Code",
|
|
203
203
|
"Listen this episode": "Listen to this episode",
|
|
204
|
-
"
|
|
204
|
+
"Display emission name": "Display the series title",
|
|
205
|
+
"Display participants list": "Display the speakers list",
|
|
206
|
+
"Choose main color": "Choose the main color",
|
|
205
207
|
"Octopus is ACPM Podcast accredited": "Octopus is ACPM accredited",
|
|
206
208
|
"Live episode": "Current Live episodes",
|
|
207
209
|
"This live will start": "This live will start",
|
|
@@ -349,9 +351,4 @@ export default {
|
|
|
349
351
|
"Share in one click":"Share in one click",
|
|
350
352
|
"Chaptering":"Chaptering",
|
|
351
353
|
"Listen to the latest episode":"Listen to the latest episode",
|
|
352
|
-
"Share the episode in your newsletter": "Share the episode in your newsletter",
|
|
353
|
-
"Share the series in your newsletter": "Share the series in your newsletter",
|
|
354
|
-
"Share the playlist in your newsletter": "Share the playlist in your newsletter",
|
|
355
|
-
"Listen to all episodes":"Listen to all episodes",
|
|
356
|
-
"Newsletter elements":"Play pictogram, name of the show, See more",
|
|
357
354
|
};
|
package/src/locale/es.ts
CHANGED
|
@@ -199,10 +199,12 @@ export default {
|
|
|
199
199
|
Publishing: "En proceso de publicación",
|
|
200
200
|
"select productor": "Seleccionar productor",
|
|
201
201
|
"Share newsletter": "Compartir newsletter",
|
|
202
|
-
|
|
203
|
-
"
|
|
202
|
+
Configuration: "Configuración",
|
|
203
|
+
"HTML Code": "Código HTML",
|
|
204
204
|
"Listen this episode": "Escuchar este episodio",
|
|
205
|
-
"
|
|
205
|
+
"Display emission name": "Mostrar el título del programa",
|
|
206
|
+
"Display participants list": "Mostrar la lista de participantes",
|
|
207
|
+
"Choose main color": "Elegir el color principal",
|
|
206
208
|
"Octopus is ACPM Podcast accredited":
|
|
207
209
|
"Octopus ha recibido la certificación ACPM",
|
|
208
210
|
"Live episode": "Episodios en directo ahora",
|
|
@@ -350,9 +352,4 @@ export default {
|
|
|
350
352
|
"Share in one click":"Comparte en un clic",
|
|
351
353
|
"Chaptering":"Capítulos",
|
|
352
354
|
"Listen to the latest episode":"Escuche el último episodio",
|
|
353
|
-
"Share the episode in your newsletter": "Comparte el episodio en tu newsletter",
|
|
354
|
-
"Share the series in your newsletter": "Comparte el programa en tu newsletter",
|
|
355
|
-
"Share the playlist in your newsletter": "Comparte la lista de reproducción en tu newsletter",
|
|
356
|
-
"Listen to all episodes":"Escuche todos los episodios",
|
|
357
|
-
"Newsletter elements":"Pictograma de reproducción, nombre del programa, Ver más",
|
|
358
355
|
}
|
package/src/locale/fr.ts
CHANGED
|
@@ -201,11 +201,13 @@ export default {
|
|
|
201
201
|
Debriefing: "Debriefing",
|
|
202
202
|
Publishing: "Publication",
|
|
203
203
|
"select productor": "Choisir un producteur",
|
|
204
|
-
"Share newsletter": "Partage
|
|
205
|
-
|
|
206
|
-
"
|
|
204
|
+
"Share newsletter": "Partage d'une newsletter",
|
|
205
|
+
Configuration: "Configuration",
|
|
206
|
+
"HTML Code": "Code HTML",
|
|
207
207
|
"Listen this episode": "Écouter ce podcast",
|
|
208
|
-
"
|
|
208
|
+
"Display emission name": "Afficher le titre de l'émission",
|
|
209
|
+
"Display participants list": "Afficher la liste des intervenants",
|
|
210
|
+
"Choose main color": "Choisir la couleur principale",
|
|
209
211
|
"Octopus is ACPM Podcast accredited": "Octopus est accrédité ACPM Podcasts",
|
|
210
212
|
"Live episode": "Épisode en live",
|
|
211
213
|
"This live will start": "Ce live débutera",
|
|
@@ -356,9 +358,4 @@ export default {
|
|
|
356
358
|
"Share in one click":"Partager en un clic",
|
|
357
359
|
"Chaptering":"Chapitrage",
|
|
358
360
|
"Listen to the latest episode":"Écouter le dernier épisode",
|
|
359
|
-
"Share the episode in your newsletter": "Partagez l'épisode dans votre newsletter",
|
|
360
|
-
"Share the series in your newsletter": "Partagez l'émission dans votre newsletter",
|
|
361
|
-
"Share the playlist in your newsletter": "Partagez la playlist dans votre newsletter",
|
|
362
|
-
"Listen to all episodes":"Écouter tous les épisodes",
|
|
363
|
-
"Newsletter elements":"Pictogramme Play, nom de l'émission, Voir plus",
|
|
364
361
|
};
|
package/src/locale/it.ts
CHANGED
|
@@ -197,10 +197,12 @@ export default{
|
|
|
197
197
|
Publishing: 'In corso di pubblicazione',
|
|
198
198
|
'select productor': 'Seleziona producer',
|
|
199
199
|
'Share newsletter': "Condividi newsletter",
|
|
200
|
-
|
|
201
|
-
|
|
200
|
+
Configuration: 'Configurazione',
|
|
201
|
+
'HTML Code': 'Codice HTML',
|
|
202
202
|
'Listen this episode': 'Ascolta questo episodio',
|
|
203
|
-
'
|
|
203
|
+
'Display emission name': "Mostra il titolo della serie",
|
|
204
|
+
'Display participants list': 'Mostra la lista degli speaker',
|
|
205
|
+
'Choose main color': 'Seleziona colore principale',
|
|
204
206
|
'Octopus is ACPM Podcast accredited': 'Octopus è accreditata ACPM Podcast',
|
|
205
207
|
'Live episode': 'Episodi live',
|
|
206
208
|
'This live will start': 'Questo live inizierà',
|
|
@@ -342,9 +344,4 @@ export default{
|
|
|
342
344
|
"Share in one click":"Condividi con un clic",
|
|
343
345
|
"Chaptering":"Capitolazione",
|
|
344
346
|
"Listen to the latest episode":"Ascolta l'ultimo episodio",
|
|
345
|
-
"Share the episode in your newsletter": "Condividi l'episodio nella tua newsletter",
|
|
346
|
-
"Share the series in your newsletter": "Condividi lo spettacolo nella tua newsletter",
|
|
347
|
-
"Share the playlist in your newsletter": "Condividi la playlist nella tua newsletter",
|
|
348
|
-
"Listen to all episodes":"Ascolta tutti gli episodi",
|
|
349
|
-
"Newsletter elements":"Riproduci pittogramma, nome dello spettacolo, vedi altro",
|
|
350
347
|
};
|
package/src/locale/sl.ts
CHANGED
|
@@ -194,10 +194,12 @@ export default {
|
|
|
194
194
|
Publishing: "Objava",
|
|
195
195
|
"select productor": "Izberi producenta",
|
|
196
196
|
"Share newsletter": "Deli glasilo",
|
|
197
|
-
|
|
198
|
-
"
|
|
197
|
+
Configuration: "Konfiguracija",
|
|
198
|
+
"HTML Code": "Koda HTML",
|
|
199
199
|
"Listen this episode": "Poslušajte to epizodo",
|
|
200
|
-
"
|
|
200
|
+
"Display emission name": "Prikaži naslov oddaje",
|
|
201
|
+
"Display participants list": "Prikaži seznam sodelujočih",
|
|
202
|
+
"Choose main color": "Izberi glavno barvo",
|
|
201
203
|
"Octopus is ACPM Podcast accredited":
|
|
202
204
|
"Octopus je akreditiran pri organizaciji ACPM",
|
|
203
205
|
"Live episode": "Trenutne epizode v živo",
|
|
@@ -339,9 +341,4 @@ export default {
|
|
|
339
341
|
"Share in one click":"Delite z enim klikom",
|
|
340
342
|
"Chaptering":"Poglavje",
|
|
341
343
|
"Listen to the latest episode":"Poslušajte najnovejšo epizodo",
|
|
342
|
-
"Share the episode in your newsletter": "Delite epizodo v svojem glasilu",
|
|
343
|
-
"Share the series in your newsletter": "Delite oddajo v svojem glasilu",
|
|
344
|
-
"Share the playlist in your newsletter": "Delite seznam predvajanja v svojem glasilu",
|
|
345
|
-
"Listen to all episodes":"Poslušaj vse epizode",
|
|
346
|
-
"Newsletter elements":"Predvajaj piktogram, ime oddaje, Poglej več",
|
|
347
344
|
}
|
|
@@ -19,7 +19,7 @@ export const useGeneralStore = defineStore("GeneralStore", {
|
|
|
19
19
|
state: (): GeneralState => ({
|
|
20
20
|
metaTitle: "Octopus by Saooti",
|
|
21
21
|
platformEducation: false,
|
|
22
|
-
generalLogoUrl: "/img/
|
|
22
|
+
generalLogoUrl: "/img/logo_octopus_black.png",
|
|
23
23
|
storedCategories: [],
|
|
24
24
|
storedCategoriesOrga: [],
|
|
25
25
|
isBeforeLive: true,
|
|
@@ -1,68 +0,0 @@
|
|
|
1
|
-
<?xml version="1.0" encoding="utf-8"?>
|
|
2
|
-
<!-- Generator: Adobe Illustrator 27.0.0, SVG Export Plug-In . SVG Version: 6.00 Build 0) -->
|
|
3
|
-
<svg version="1.1" id="Calque_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
|
|
4
|
-
viewBox="0 0 193.6 55.8" style="enable-background:new 0 0 193.6 55.8;" xml:space="preserve">
|
|
5
|
-
<style type="text/css">
|
|
6
|
-
.st0{enable-background:new ;}
|
|
7
|
-
.st1{fill:#188658;}
|
|
8
|
-
</style>
|
|
9
|
-
<g class="st0">
|
|
10
|
-
<path d="M130.2,41.3c1.7,0,2.6,0.8,2.6,2.3c0,1.5-1,2.4-2.6,2.4h-1.5v2h-1.1v-6.6H130.2z M128.7,44.9h1.5c1,0,1.6-0.4,1.6-1.3
|
|
11
|
-
c0-0.9-0.6-1.3-1.6-1.3h-1.5V44.9z"/>
|
|
12
|
-
<path d="M138.6,45.4c0,1.5-1.1,2.6-2.6,2.6c-1.6,0-2.6-1-2.6-2.6c0-1.5,1.1-2.5,2.6-2.5C137.6,42.8,138.6,43.9,138.6,45.4z
|
|
13
|
-
M134.5,45.4c0,1,0.6,1.6,1.5,1.6c0.9,0,1.5-0.7,1.5-1.6c0-1-0.6-1.6-1.5-1.6C135.1,43.8,134.5,44.4,134.5,45.4z"/>
|
|
14
|
-
<path d="M144.6,47.9h-1.1v-0.9c-0.4,0.6-1,0.9-1.8,0.9c-1.4,0-2.4-1-2.4-2.6c0-1.5,1-2.5,2.4-2.5c0.8,0,1.4,0.3,1.8,0.9v-2.9h1.1
|
|
15
|
-
V47.9z M143.5,45.4c0-1-0.6-1.7-1.5-1.7c-0.9,0-1.5,0.7-1.5,1.7c0,1,0.6,1.6,1.5,1.6C142.8,47.1,143.5,46.4,143.5,45.4z"/>
|
|
16
|
-
<path d="M150.3,43.7l-0.6,0.7c-0.3-0.4-0.8-0.6-1.4-0.6c-0.9,0-1.5,0.7-1.5,1.6s0.6,1.6,1.5,1.6c0.6,0,1.1-0.2,1.5-0.6l0.6,0.6
|
|
17
|
-
c-0.5,0.6-1.2,0.9-2.1,0.9c-1.5,0-2.5-1-2.5-2.5c0-1.5,1-2.6,2.5-2.6C149.2,42.8,149.9,43.1,150.3,43.7z"/>
|
|
18
|
-
<path d="M154.3,47.3c-0.4,0.4-0.9,0.7-1.7,0.7c-1.1,0-1.8-0.7-1.8-1.6c0-0.9,0.7-1.5,1.9-1.5h1.5v-0.2c0-0.6-0.4-1-1.2-1
|
|
19
|
-
c-0.5,0-1,0.2-1.5,0.5l-0.4-0.8c0.7-0.4,1.2-0.6,2.2-0.6c1.3,0,2,0.7,2,1.8l0,3.3h-1.1V47.3z M154.3,46.1v-0.5H153
|
|
20
|
-
c-0.7,0-1,0.2-1,0.7c0,0.5,0.4,0.7,1,0.7C153.7,47.1,154.3,46.7,154.3,46.1z"/>
|
|
21
|
-
<path d="M160.1,43.3l-0.4,0.8c-0.4-0.3-1-0.4-1.4-0.4c-0.4,0-0.7,0.1-0.7,0.5c0,0.9,2.7,0.4,2.7,2.2c0,1-0.9,1.5-1.9,1.5
|
|
22
|
-
c-0.7,0-1.5-0.2-2-0.7l0.4-0.8c0.4,0.4,1.1,0.6,1.7,0.6c0.5,0,0.8-0.2,0.8-0.5c0-1-2.6-0.5-2.6-2.3c0-1,0.9-1.5,1.9-1.5
|
|
23
|
-
C159,42.8,159.7,43,160.1,43.3z"/>
|
|
24
|
-
<path d="M164.1,47.6c-0.4,0.2-0.8,0.4-1.2,0.4c-0.8,0-1.4-0.4-1.4-1.5v-2.6h-0.7v-0.8h0.7v-1.4h1.1v1.4h1.5v0.8h-1.5v2.4
|
|
25
|
-
c0,0.5,0.2,0.7,0.5,0.7c0.2,0,0.5-0.1,0.8-0.2L164.1,47.6z"/>
|
|
26
|
-
<path d="M171.4,47.1c-0.6,0.6-1.3,0.9-2,0.9c-1.2,0-2.1-0.8-2.1-1.9c0-0.9,0.7-1.4,1.4-1.8c-0.4-0.6-0.6-1.1-0.6-1.5
|
|
27
|
-
c0-0.9,0.7-1.5,1.7-1.5c1,0,1.7,0.6,1.7,1.4c0,0.9-0.8,1.4-1.6,1.8c0.4,0.4,0.8,0.9,1.4,1.4c0.2-0.3,0.4-0.7,0.6-1.2l0.7,0.5
|
|
28
|
-
c-0.2,0.5-0.4,0.9-0.7,1.3l1.1,1l-0.6,0.6L171.4,47.1z M170.8,46.5c-0.7-0.7-1.2-1.2-1.6-1.7c-0.5,0.3-1,0.7-1,1.2
|
|
29
|
-
c0,0.7,0.5,1.1,1.2,1.1C169.9,47.1,170.4,46.9,170.8,46.5z M169.5,43.9c0.6-0.3,1.2-0.7,1.2-1.3c0-0.4-0.3-0.7-0.8-0.7
|
|
30
|
-
c-0.5,0-0.9,0.3-0.9,0.8C169,43.1,169.1,43.5,169.5,43.9z"/>
|
|
31
|
-
<path d="M180.3,46.9v1h-4v-6.6h1.1v5.6H180.3z"/>
|
|
32
|
-
<path d="M182.5,41.5c0,0.4-0.3,0.7-0.6,0.7c-0.4,0-0.6-0.3-0.6-0.7c0-0.4,0.3-0.7,0.6-0.7C182.2,40.8,182.5,41.1,182.5,41.5z
|
|
33
|
-
M181.3,47.9v-5h1.1v5H181.3z"/>
|
|
34
|
-
<path d="M185.1,47.9l-1.9-5h1.1l1.4,4l1.4-4h1.1l-1.9,5H185.1z"/>
|
|
35
|
-
<path d="M193.2,45.8h-3.8c0.2,0.8,0.8,1.3,1.6,1.3c0.5,0,1-0.2,1.4-0.6l0.6,0.6c-0.5,0.5-1.2,0.9-2.1,0.9c-1.5,0-2.6-1-2.6-2.5
|
|
36
|
-
c0-1.5,1-2.5,2.5-2.6C192.6,42.8,193.3,44,193.2,45.8z M192.2,45c0-0.8-0.6-1.3-1.4-1.3c-0.8,0-1.4,0.5-1.5,1.3H192.2z"/>
|
|
37
|
-
</g>
|
|
38
|
-
<g>
|
|
39
|
-
<path d="M32.7,15.6c0,8.7-7.1,15.5-16.2,15.5S0.4,24.3,0.4,15.6c0-8.8,7.1-15.4,16.2-15.4S32.7,6.9,32.7,15.6z M5.7,15.6
|
|
40
|
-
c0,6.1,5,10.8,11,10.8s10.8-4.8,10.8-10.8c0-6.1-4.9-10.8-10.8-10.8C10.6,4.9,5.7,9.6,5.7,15.6z"/>
|
|
41
|
-
<path d="M59.2,11.3l-2.7,3.2c-1.6-1.7-3.8-2.7-6.6-2.6c-4,0-6.9,3-6.9,7.4s2.9,7.4,6.9,7.4c2.9,0,5.3-1,6.8-2.8l2.8,2.8
|
|
42
|
-
C57.3,29.5,54,31,49.6,31c-6.9,0-11.7-4.7-11.7-11.7S42.7,7.5,49.6,7.5C53.8,7.5,57,8.9,59.2,11.3z"/>
|
|
43
|
-
<path d="M79.9,29.4c-1.8,1.1-3.7,1.7-5.7,1.7c-3.5,0-6.5-2-6.5-6.7v-12h-3.3V8.6h3.3V2.2h5v6.4h6.8v3.7h-6.8v11.1
|
|
44
|
-
c0,2.4,0.9,3.1,2.5,3.1c1,0,2.1-0.3,3.5-1L79.9,29.4z"/>
|
|
45
|
-
<path d="M140.2,19.4c0,6.9-4.4,11.7-11,11.7c-3.7,0-6.5-1.5-8.2-4.2v21h-5V7.7h5v4c1.7-2.7,4.5-4.2,8.1-4.2
|
|
46
|
-
C135.7,7.5,140.2,12.3,140.2,19.4z M135.2,19.2c0-4.3-2.9-7.5-7.1-7.5c-4.1,0-7.1,3.1-7.1,7.5c0,4.5,2.9,7.6,7.1,7.6
|
|
47
|
-
C132.3,26.8,135.2,23.6,135.2,19.2z"/>
|
|
48
|
-
<path d="M168.7,30.9h-5v-4.5c-1.6,3.2-4.5,4.7-8.3,4.7c-5.3,0-8.5-3.4-8.5-8.9V7.7h5v13c0,3.5,2,5.6,5.4,5.6c4-0.1,6.4-3.2,6.4-7.2
|
|
49
|
-
V7.7h5L168.7,30.9L168.7,30.9z"/>
|
|
50
|
-
<path d="M193.2,9.8l-1.8,3.7c-2-1.3-4.6-2-6.7-2c-2,0-3.4,0.7-3.4,2.3c0,4.3,12.3,2,12.3,10.4c0,4.7-4.2,6.9-8.9,6.9
|
|
51
|
-
c-3.4,0-7-1.1-9.3-3.2l1.8-3.6c2,1.8,5.2,2.9,7.7,2.9c2.1,0,3.8-0.7,3.8-2.5c0-4.7-12.2-2.1-12.1-10.4c0-4.7,4.1-6.7,8.5-6.7
|
|
52
|
-
C188.1,7.5,191.2,8.4,193.2,9.8z"/>
|
|
53
|
-
</g>
|
|
54
|
-
<g>
|
|
55
|
-
<path class="st1" d="M94.1,38.4c-1.8,2-2.5,4.9-1.6,7.7c1.3,4.1,5.8,6.3,9.9,5s6.3-5.8,5-9.9c-0.5-1.7-1.6-3-2.9-3.9l-0.9,1
|
|
56
|
-
c1.1,0.8,2.1,1.9,2.5,3.3c1.1,3.4-0.7,7-4.1,8.2c-3.4,1.1-7-0.7-8.2-4.1c-0.7-2.3-0.2-4.6,1.3-6.3L94.1,38.4z"/>
|
|
57
|
-
<path class="st1" d="M88.6,47.4c2.1,6.4,9,9.8,15.3,7.7c6.4-2.1,9.8-9,7.7-15.3c-0.8-2.5-2.4-4.5-4.4-6l-0.9,1
|
|
58
|
-
c1.8,1.3,3.2,3.1,4,5.4c1.9,5.7-1.2,11.8-6.9,13.7c-5.7,1.9-11.8-1.2-13.7-6.9c-1.3-3.8-0.3-7.8,2.2-10.6l-1-0.9
|
|
59
|
-
c-0.7,0.7-1.2,1.6-1.7,2.5c-0.1,0-1.9,0.1-2.5-1.3c0,0-0.4-1.4,0.6-2.3l-0.9-1c-1.6,1.5-1,3.6-1,3.7c0.6,1.6,2,2.1,3.1,2.2
|
|
60
|
-
c-0.4,0.9-0.6,1.9-0.7,3c-0.9-0.2-3.4-0.9-4.6-3c-1.1-1.9-0.9-4.6,0.5-7.9L82.6,31c-1.8,3.3-1.7,7-0.6,9c1.6,2.8,4.8,3.5,5.7,3.7
|
|
61
|
-
C88,44.8,88.2,46.1,88.6,47.4z"/>
|
|
62
|
-
<path class="st1" d="M101,46.9c1.8-0.6,2.8-2.6,2.2-4.4c-0.6-1.8-2.6-2.8-4.4-2.2s-2.8,2.6-2.2,4.4C97.2,46.5,99.2,47.5,101,46.9z
|
|
63
|
-
M99.2,41.5c1.1-0.4,2.4,0.2,2.7,1.4c0.4,1.1-0.2,2.4-1.4,2.7c-1.1,0.4-2.4-0.2-2.7-1.4C97.5,43.1,98.1,41.9,99.2,41.5z"/>
|
|
64
|
-
</g>
|
|
65
|
-
<path class="st1" d="M97.7,31.6c6.7,0,12.1-5.4,12.1-12.1S104.3,7.4,97.7,7.4c-6.7,0-12.1,5.4-12.1,12.1S91,31.6,97.7,31.6z"/>
|
|
66
|
-
<path class="st1" d="M97.7,34.8c8.4,0,15.2-6.8,15.2-15.2S106,4.4,97.7,4.4s-15.2,6.8-15.2,15.2S89.3,34.8,97.7,34.8z M97.7,5.7
|
|
67
|
-
c7.7,0,13.9,6.3,13.9,13.9s-6.3,13.9-13.9,13.9c-7.7,0-13.9-6.3-13.9-13.9S90,5.7,97.7,5.7z"/>
|
|
68
|
-
</svg>
|