@saooti/octopus-sdk 37.0.5 → 37.0.7

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 (263) hide show
  1. package/README.md +2 -2
  2. package/index.html +1 -0
  3. package/index.ts +21 -21
  4. package/package.json +26 -20
  5. package/public/css/fonts/icomoon.eot +0 -0
  6. package/public/css/fonts/icomoon.svg +1 -1
  7. package/public/css/fonts/icomoon.ttf +0 -0
  8. package/public/css/fonts/icomoon.woff +0 -0
  9. package/public/css/fonts/montserrat/Montserrat-Black.ttf +0 -0
  10. package/public/css/fonts/montserrat/Montserrat-BlackItalic.ttf +0 -0
  11. package/public/css/fonts/montserrat/Montserrat-Bold.ttf +0 -0
  12. package/public/css/fonts/montserrat/Montserrat-BoldItalic.ttf +0 -0
  13. package/public/css/fonts/montserrat/Montserrat-ExtraBold.ttf +0 -0
  14. package/public/css/fonts/montserrat/Montserrat-ExtraBoldItalic.ttf +0 -0
  15. package/public/css/fonts/montserrat/Montserrat-ExtraLight.ttf +0 -0
  16. package/public/css/fonts/montserrat/Montserrat-ExtraLightItalic.ttf +0 -0
  17. package/public/css/fonts/montserrat/Montserrat-Italic.ttf +0 -0
  18. package/public/css/fonts/montserrat/Montserrat-Light.ttf +0 -0
  19. package/public/css/fonts/montserrat/Montserrat-LightItalic.ttf +0 -0
  20. package/public/css/fonts/montserrat/Montserrat-Medium.ttf +0 -0
  21. package/public/css/fonts/montserrat/Montserrat-MediumItalic.ttf +0 -0
  22. package/public/css/fonts/montserrat/Montserrat-Regular.ttf +0 -0
  23. package/public/css/fonts/montserrat/Montserrat-SemiBold.ttf +0 -0
  24. package/public/css/fonts/montserrat/Montserrat-SemiBoldItalic.ttf +0 -0
  25. package/public/css/fonts/montserrat/Montserrat-Thin.ttf +0 -0
  26. package/public/css/fonts/montserrat/Montserrat-ThinItalic.ttf +0 -0
  27. package/public/css/fonts/montserrat/style.css +28 -0
  28. package/public/css/fonts/style.css +5 -5
  29. package/src/App.vue +69 -60
  30. package/src/api/classicCrud.ts +12 -12
  31. package/src/api/initialize.ts +1 -1
  32. package/src/assets/bootstrap.scss +9 -0
  33. package/src/assets/general.scss +1 -1
  34. package/src/assets/share.scss +1 -1
  35. package/src/components/display/aggregator/RssSection.vue +3 -3
  36. package/src/components/display/categories/CategoryChooser.vue +73 -60
  37. package/src/components/display/categories/CategoryFilter.vue +134 -90
  38. package/src/components/display/categories/CategoryList.vue +76 -62
  39. package/src/components/display/comments/AddCommentModal.vue +44 -44
  40. package/src/components/display/comments/CommentBasicView.vue +38 -30
  41. package/src/components/display/comments/CommentInput.vue +122 -110
  42. package/src/components/display/comments/CommentItem.vue +144 -102
  43. package/src/components/display/comments/CommentList.vue +117 -85
  44. package/src/components/display/comments/CommentParentInfo.vue +18 -15
  45. package/src/components/display/comments/CommentPlayer.vue +39 -41
  46. package/src/components/display/comments/CommentSection.vue +68 -53
  47. package/src/components/display/edit/EditBox.vue +7 -7
  48. package/src/components/display/edit/EditBoxRadio.vue +3 -4
  49. package/src/components/display/edit/EditCommentBox.vue +34 -36
  50. package/src/components/display/emission/EmissionInlineList.vue +75 -63
  51. package/src/components/display/emission/EmissionItem.vue +47 -35
  52. package/src/components/display/emission/EmissionList.vue +111 -83
  53. package/src/components/display/emission/EmissionPlayerItem.vue +89 -89
  54. package/src/components/display/filter/AdvancedSearch.vue +81 -73
  55. package/src/components/display/filter/CategorySearchFilter.vue +27 -25
  56. package/src/components/display/filter/DateFilter.vue +38 -38
  57. package/src/components/display/filter/MonetizableFilter.vue +16 -14
  58. package/src/components/display/filter/ProductorSearch.vue +55 -47
  59. package/src/components/display/filter/RubriqueChoice.vue +42 -27
  60. package/src/components/display/filter/RubriqueFilter.vue +130 -85
  61. package/src/components/display/filter/SearchOrder.vue +16 -11
  62. package/src/components/display/list/ListPaginate.vue +72 -70
  63. package/src/components/display/list/PaginateParams.vue +29 -30
  64. package/src/components/display/list/PaginateSection.vue +210 -0
  65. package/src/components/display/list/SwiperList.vue +28 -32
  66. package/src/components/display/live/CountDown.vue +12 -14
  67. package/src/components/display/live/LiveHorizontalList.vue +60 -50
  68. package/src/components/display/live/LiveItem.vue +42 -26
  69. package/src/components/display/live/LiveList.vue +92 -65
  70. package/src/components/display/live/RadioCurrently.vue +47 -42
  71. package/src/components/display/live/RadioImage.vue +40 -42
  72. package/src/components/display/live/RadioItem.vue +15 -22
  73. package/src/components/display/live/RadioList.vue +24 -21
  74. package/src/components/display/live/RadioPlanning.vue +105 -68
  75. package/src/components/display/organisation/OrganisationChooser.vue +58 -42
  76. package/src/components/display/organisation/OrganisationChooserLight.vue +27 -19
  77. package/src/components/display/participant/ParticipantItem.vue +89 -76
  78. package/src/components/display/participant/ParticipantList.vue +90 -60
  79. package/src/components/display/playlist/PlaylistItem.vue +32 -35
  80. package/src/components/display/playlist/PlaylistList.vue +70 -52
  81. package/src/components/display/playlist/PodcastList.vue +61 -50
  82. package/src/components/display/playlist/PodcastPlaylistInlineList.vue +47 -38
  83. package/src/components/display/podcasts/AnimatorsItem.vue +17 -15
  84. package/src/components/display/podcasts/ParticipantDescription.vue +21 -22
  85. package/src/components/display/podcasts/PodcastFilterList.vue +28 -26
  86. package/src/components/display/podcasts/PodcastImage.vue +129 -138
  87. package/src/components/display/podcasts/PodcastInlineList.vue +33 -29
  88. package/src/components/display/podcasts/PodcastInlineListClassic.vue +91 -71
  89. package/src/components/display/podcasts/PodcastInlineListTemplate.vue +94 -85
  90. package/src/components/display/podcasts/PodcastItem.vue +96 -90
  91. package/src/components/display/podcasts/PodcastItemInfo.vue +63 -65
  92. package/src/components/display/podcasts/PodcastList.vue +115 -84
  93. package/src/components/display/podcasts/PodcastModuleBox.vue +95 -104
  94. package/src/components/display/podcasts/PodcastPlayBar.vue +45 -32
  95. package/src/components/display/podcasts/PodcastSwiperList.vue +65 -55
  96. package/src/components/display/podcasts/TagList.vue +33 -37
  97. package/src/components/display/rubriques/RubriqueChooser.vue +70 -51
  98. package/src/components/display/rubriques/RubriqueList.vue +117 -89
  99. package/src/components/display/sharing/PlayerParameters.vue +45 -42
  100. package/src/components/display/sharing/QrCode.vue +52 -46
  101. package/src/components/display/sharing/ShareButtons.vue +25 -27
  102. package/src/components/display/sharing/ShareButtonsIntern.vue +182 -155
  103. package/src/components/display/sharing/ShareDistribution.vue +101 -67
  104. package/src/components/display/sharing/SharePlayer.vue +207 -127
  105. package/src/components/display/sharing/SharePlayerColors.vue +15 -15
  106. package/src/components/display/sharing/SharePlayerRadio.vue +62 -39
  107. package/src/components/display/sharing/SharePlayerTypes.vue +93 -55
  108. package/src/components/display/sharing/SubscribeButtons.vue +83 -32
  109. package/src/components/display/studio/RecordingItemButton.vue +3 -3
  110. package/src/components/form/ClassicCheckbox.vue +32 -31
  111. package/src/components/form/ClassicDatePicker.vue +47 -49
  112. package/src/components/form/ClassicInputText.vue +99 -98
  113. package/src/components/form/ClassicLoading.vue +11 -14
  114. package/src/components/form/ClassicMultiselect.vue +125 -126
  115. package/src/components/form/ClassicRadio.vue +15 -18
  116. package/src/components/form/ClassicSearch.vue +17 -23
  117. package/src/components/form/ClassicSelect.vue +35 -27
  118. package/src/components/form/{Wysiwyg.vue → ClassicWysiwyg.vue} +94 -109
  119. package/src/components/misc/AcpmImage.vue +26 -0
  120. package/src/components/misc/ClassicAccordion.vue +69 -0
  121. package/src/components/misc/ClassicNav.vue +117 -0
  122. package/src/components/misc/ClassicPopover.vue +212 -0
  123. package/src/components/misc/{Spinner.vue → ClassicSpinner.vue} +14 -15
  124. package/src/components/misc/ErrorMessage.vue +9 -17
  125. package/src/components/misc/FooterSection.vue +198 -0
  126. package/src/components/misc/HomeDropdown.vue +67 -64
  127. package/src/components/misc/LeftMenu.vue +115 -79
  128. package/src/components/misc/ProgressBar.vue +36 -32
  129. package/src/components/misc/SnackBar.vue +169 -0
  130. package/src/components/misc/TopBar.vue +161 -115
  131. package/src/components/misc/modal/ClassicModal.vue +99 -103
  132. package/src/components/misc/modal/ClipboardModal.vue +21 -23
  133. package/src/components/misc/modal/MessageModal.vue +22 -28
  134. package/src/components/misc/modal/NewsletterModal.vue +139 -113
  135. package/src/components/misc/modal/QrCodeModal.vue +14 -17
  136. package/src/components/misc/modal/ShareModalPlayer.vue +44 -60
  137. package/src/components/misc/player/PlayerCompact.vue +47 -62
  138. package/src/components/misc/player/{Player.vue → PlayerComponent.vue} +54 -46
  139. package/src/components/misc/player/PlayerLarge.vue +66 -62
  140. package/src/components/misc/player/PlayerProgressBar.vue +40 -30
  141. package/src/components/misc/player/PlayerTimeline.vue +32 -36
  142. package/src/components/misc/player/radio/RadioHistory.vue +62 -59
  143. package/src/components/misc/player/radio/RadioProgressBar.vue +44 -35
  144. package/src/components/mixins/cookies.ts +11 -10
  145. package/src/components/mixins/displayMethods.ts +5 -4
  146. package/src/components/mixins/handle403.ts +9 -9
  147. package/src/components/mixins/imageProxy.ts +14 -7
  148. package/src/components/mixins/init.ts +31 -16
  149. package/src/components/mixins/orgaComputed.ts +7 -7
  150. package/src/components/mixins/organisationFilter.ts +36 -22
  151. package/src/components/mixins/player/playerComment.ts +46 -37
  152. package/src/components/mixins/player/playerDisplay.ts +122 -87
  153. package/src/components/mixins/player/playerLive.ts +65 -43
  154. package/src/components/mixins/player/playerLogic.ts +133 -88
  155. package/src/components/mixins/player/playerTranscript.ts +48 -30
  156. package/src/components/mixins/radio/fetchRadioData.ts +40 -23
  157. package/src/components/mixins/selenium.ts +2 -2
  158. package/src/components/mixins/tagOfMixins.ts +11 -11
  159. package/src/components/pages/CategoryPage.vue +43 -0
  160. package/src/components/pages/{Emission.vue → EmissionPage.vue} +98 -67
  161. package/src/components/pages/{Emissions.vue → EmissionsPage.vue} +51 -44
  162. package/src/components/pages/Error403Page.vue +20 -19
  163. package/src/components/pages/HomePage.vue +144 -0
  164. package/src/components/pages/LivesPage.vue +66 -0
  165. package/src/components/pages/PageNotFound.vue +33 -22
  166. package/src/components/pages/{Participant.vue → ParticipantPage.vue} +63 -49
  167. package/src/components/pages/{Participants.vue → ParticipantsPage.vue} +9 -9
  168. package/src/components/pages/PlaylistPage.vue +175 -0
  169. package/src/components/pages/{Playlists.vue → PlaylistsPage.vue} +16 -14
  170. package/src/components/pages/PodcastPage.vue +365 -0
  171. package/src/components/pages/PodcastsPage.vue +152 -0
  172. package/src/components/pages/RadioPage.vue +131 -0
  173. package/src/components/pages/RubriquePage.vue +45 -0
  174. package/src/components/pages/{Search.vue → SearchPage.vue} +19 -19
  175. package/src/helper/dom.ts +1 -1
  176. package/src/helper/duration.ts +10 -4
  177. package/src/helper/useEventListener.ts +7 -8
  178. package/src/i18n.ts +31 -30
  179. package/src/locale/de.ts +263 -257
  180. package/src/locale/educationen.ts +13 -13
  181. package/src/locale/educationfr.ts +1 -1
  182. package/src/locale/en.ts +323 -324
  183. package/src/locale/es.ts +325 -318
  184. package/src/locale/fr.ts +330 -324
  185. package/src/locale/it.ts +332 -328
  186. package/src/locale/messages.ts +9 -9
  187. package/src/locale/sl.ts +315 -319
  188. package/src/main.ts +28 -31
  189. package/src/router/router.ts +218 -198
  190. package/src/shims-tsx.d.ts +1 -1
  191. package/src/shims-vue.d.ts +1 -1
  192. package/src/stores/ApiStore.ts +44 -44
  193. package/src/stores/AuthStore.ts +24 -16
  194. package/src/stores/CommentStore.ts +13 -11
  195. package/src/stores/FilterStore.ts +25 -15
  196. package/src/stores/GeneralStore.ts +15 -15
  197. package/src/stores/ParamSdkStore.ts +179 -137
  198. package/src/stores/PlayerStore.ts +139 -125
  199. package/src/stores/class/adserver/adserverConfig.ts +1 -1
  200. package/src/stores/class/adserver/adserverOtherEmission.ts +9 -9
  201. package/src/stores/class/cartouchier/cartouche.ts +4 -4
  202. package/src/stores/class/cartouchier/cartouchier.ts +2 -2
  203. package/src/stores/class/conference/conference.ts +10 -9
  204. package/src/stores/class/conference/conferenceMessage.ts +2 -2
  205. package/src/stores/class/conference/conferenceParticipant.ts +1 -1
  206. package/src/stores/class/conference/studioCall.ts +6 -6
  207. package/src/stores/class/contract/contractOrganisation.ts +5 -5
  208. package/src/stores/class/ftp/ftpEmission.ts +9 -9
  209. package/src/stores/class/ftp/testFtpEmission.ts +4 -4
  210. package/src/stores/class/general/audioView.ts +19 -19
  211. package/src/stores/class/general/category.ts +1 -1
  212. package/src/stores/class/general/classicSelectType.ts +2 -3
  213. package/src/stores/class/general/customPlayer.ts +8 -8
  214. package/src/stores/class/general/emission.ts +20 -21
  215. package/src/stores/class/general/fetchParam.ts +8 -2
  216. package/src/stores/class/general/initState.ts +31 -31
  217. package/src/stores/class/general/interfacePageable.ts +13 -13
  218. package/src/stores/class/general/ituneCategory.ts +4 -4
  219. package/src/stores/class/general/listReturn.ts +12 -12
  220. package/src/stores/class/general/media.ts +7 -7
  221. package/src/stores/class/general/organisation.ts +9 -10
  222. package/src/stores/class/general/pageable.ts +10 -10
  223. package/src/stores/class/general/participant.ts +7 -7
  224. package/src/stores/class/general/player.ts +30 -28
  225. package/src/stores/class/general/playlist.ts +17 -19
  226. package/src/stores/class/general/podcast.ts +19 -19
  227. package/src/stores/class/general/sortPageable.ts +4 -4
  228. package/src/stores/class/general/soundcastCategory.ts +7 -7
  229. package/src/stores/class/ouestFrance/ofTag.ts +34 -34
  230. package/src/stores/class/ouestFrance/ofTagInfo.ts +9 -9
  231. package/src/stores/class/ouestFrance/ofTagPage.ts +7 -7
  232. package/src/stores/class/ouestFrance/ofTagSeo.ts +7 -7
  233. package/src/stores/class/ouestFrance/ofTagVente.ts +6 -6
  234. package/src/stores/class/ouestFrance/ofTagWithParents.ts +20 -20
  235. package/src/stores/class/radio/canal.ts +4 -4
  236. package/src/stores/class/radio/live.ts +6 -6
  237. package/src/stores/class/radio/mix.ts +16 -16
  238. package/src/stores/class/radio/playlistMedia.ts +7 -7
  239. package/src/stores/class/radio/recurrence.ts +54 -54
  240. package/src/stores/class/rss/rssEmission.ts +13 -13
  241. package/src/stores/class/rss/rssInfo.ts +7 -7
  242. package/src/stores/class/rubrique/rubriquage.ts +2 -2
  243. package/src/stores/class/rubrique/rubrique.ts +1 -1
  244. package/src/stores/class/stat/statArrayIncome.ts +5 -5
  245. package/src/stores/class/stat/statArrayObject.ts +26 -26
  246. package/src/stores/class/stat/statGraph.ts +6 -6
  247. package/src/stores/class/user/person.ts +4 -2
  248. package/src/stores/class/user/profile.ts +4 -2
  249. package/src/stores/class/user/userKeycloak.ts +4 -5
  250. package/src/components/display/list/Paginate.vue +0 -181
  251. package/src/components/misc/Accordion.vue +0 -78
  252. package/src/components/misc/Footer.vue +0 -165
  253. package/src/components/misc/Nav.vue +0 -119
  254. package/src/components/misc/Popover.vue +0 -193
  255. package/src/components/misc/Snackbar.vue +0 -168
  256. package/src/components/pages/Category.vue +0 -41
  257. package/src/components/pages/Home.vue +0 -125
  258. package/src/components/pages/Lives.vue +0 -64
  259. package/src/components/pages/Playlist.vue +0 -164
  260. package/src/components/pages/Podcast.vue +0 -307
  261. package/src/components/pages/Podcasts.vue +0 -146
  262. package/src/components/pages/Radio.vue +0 -122
  263. package/src/components/pages/Rubrique.vue +0 -42
@@ -1,9 +1,9 @@
1
- import { Organisation } from '@/stores/class/general/organisation';
2
- import { Profile } from '@/stores/class/user/profile';
3
- import { defineStore } from 'pinia';
1
+ import { Organisation } from "@/stores/class/general/organisation";
2
+ import { Profile } from "@/stores/class/user/profile";
3
+ import { defineStore } from "pinia";
4
4
 
5
- interface AuthState{
6
- authName: string;
5
+ interface AuthState {
6
+ authName: string;
7
7
  authOrgaId?: string;
8
8
  authOrgaName?: string;
9
9
  authRole: Array<string>;
@@ -12,25 +12,23 @@ interface AuthState{
12
12
  refreshToken?: string;
13
13
  expiration?: Date;
14
14
  };
15
- authProfile: Profile;
15
+ authProfile?: Profile;
16
16
  authOrganisation: Organisation;
17
17
  }
18
- export const useAuthStore = defineStore('AuthStore', {
18
+ export const useAuthStore = defineStore("AuthStore", {
19
19
  state: (): AuthState => ({
20
- authName: '',
21
- authRole: [''],
20
+ authName: "",
21
+ authRole: [""],
22
22
  authParam: {
23
23
  accessToken: undefined,
24
24
  refreshToken: undefined,
25
25
  expiration: undefined,
26
26
  },
27
- authProfile: {
28
- userId: '',
29
- },
27
+ authProfile: undefined,
30
28
  authOrganisation: {
31
- id: '',
32
- name: '',
33
- imageUrl: '',
29
+ id: "",
30
+ name: "",
31
+ imageUrl: "",
34
32
  description: undefined,
35
33
  monetisable: undefined,
36
34
  location: undefined,
@@ -40,4 +38,14 @@ export const useAuthStore = defineStore('AuthStore', {
40
38
  },
41
39
  },
42
40
  }),
43
- })
41
+ getters: {
42
+ isGarRole(): string | undefined {
43
+ return this.authProfile?.attributes?.["GAR"] as
44
+ | string
45
+ | undefined; /* return "ELEVE"; */ /*CHEF_ETABLISSEMENT, ENSEIGNANT, ELEVE, undefined */
46
+ },
47
+ isGarStudent(): boolean {
48
+ return "ELEVE" === this.isGarRole;
49
+ },
50
+ },
51
+ });
@@ -1,12 +1,12 @@
1
- import { defineStore } from 'pinia';
2
- import { CommentPodcast } from './class/general/comment';
1
+ import { defineStore } from "pinia";
2
+ import { CommentPodcast } from "./class/general/comment";
3
3
  interface CommentState {
4
- commentInitialized: boolean;
4
+ commentInitialized: boolean;
5
5
  commentWebsocketengine: undefined;
6
6
  commentPodcastId?: number;
7
7
  commentOrgaId?: string;
8
8
  commentEventToHandle: Array<{
9
- comment: CommentPodcast
9
+ comment: CommentPodcast;
10
10
  type: string;
11
11
  }>;
12
12
  commentKnownIdentity: string | null;
@@ -14,7 +14,7 @@ interface CommentState {
14
14
  commentLoaded: Array<CommentPodcast>;
15
15
  commentTotalCount: number;
16
16
  }
17
- export const useCommentStore = defineStore('CommentStore', {
17
+ export const useCommentStore = defineStore("CommentStore", {
18
18
  state: (): CommentState => ({
19
19
  commentInitialized: false,
20
20
  commentWebsocketengine: undefined,
@@ -26,15 +26,17 @@ export const useCommentStore = defineStore('CommentStore', {
26
26
  commentLoaded: [],
27
27
  commentTotalCount: 0,
28
28
  }),
29
- getters:{
30
- },
29
+ getters: {},
31
30
  actions: {
32
- setCommentIdentity(identity:string|null) {
31
+ setCommentIdentity(identity: string | null) {
33
32
  this.commentKnownIdentity = identity;
34
33
  },
35
- setCommentLoaded(data: {podcastId?: number, comments:Array<CommentPodcast>}) {
34
+ setCommentLoaded(data: {
35
+ podcastId?: number;
36
+ comments: Array<CommentPodcast>;
37
+ }) {
36
38
  this.commentActualPodcastId = data.podcastId;
37
39
  this.commentLoaded = data.comments;
38
40
  },
39
- }
40
- })
41
+ },
42
+ });
@@ -1,11 +1,11 @@
1
- import { Category } from '@/stores/class/general/category';
2
- import { Rubriquage } from '@/stores/class/rubrique/rubriquage';
3
- import { RubriquageFilter } from '@/stores/class/rubrique/rubriquageFilter';
4
- import { Rubrique } from '@/stores/class/rubrique/rubrique';
5
- import { defineStore } from 'pinia';
1
+ import { Category } from "@/stores/class/general/category";
2
+ import { Rubriquage } from "@/stores/class/rubrique/rubriquage";
3
+ import { RubriquageFilter } from "@/stores/class/rubrique/rubriquageFilter";
4
+ import { Rubrique } from "@/stores/class/rubrique/rubrique";
5
+ import { defineStore } from "pinia";
6
6
 
7
- interface FilterState{
8
- filterOrgaId?: string;
7
+ interface FilterState {
8
+ filterOrgaId?: string;
9
9
  filterImgUrl?: string;
10
10
  filterName?: string;
11
11
  filterRubriquage: Array<Rubriquage>;
@@ -17,15 +17,21 @@ interface FilterState{
17
17
  filterLive?: boolean;
18
18
  filterIab?: Category;
19
19
  }
20
- export const useFilterStore = defineStore('FilterStore', {
20
+ export const useFilterStore = defineStore("FilterStore", {
21
21
  state: (): FilterState => ({
22
22
  filterRubriquage: [],
23
23
  filterRubrique: [],
24
24
  filterRubriqueDisplay: [],
25
25
  filterLive: false,
26
26
  }),
27
- actions : {
28
- filterUpdateOrga(filter: {orgaId?:string,imgUrl?:string,name?:string,rubriquageArray?:Array<Rubriquage>, isLive?:boolean }) {
27
+ actions: {
28
+ filterUpdateOrga(filter: {
29
+ orgaId?: string;
30
+ imgUrl?: string;
31
+ name?: string;
32
+ rubriquageArray?: Array<Rubriquage>;
33
+ isLive?: boolean;
34
+ }) {
29
35
  this.filterOrgaId = filter.orgaId;
30
36
  if (filter.imgUrl || !filter.orgaId) {
31
37
  this.filterImgUrl = filter.imgUrl;
@@ -33,13 +39,13 @@ export const useFilterStore = defineStore('FilterStore', {
33
39
  if (filter.name || !filter.orgaId) {
34
40
  this.filterName = filter.name;
35
41
  }
36
- if(filter.rubriquageArray){
42
+ if (filter.rubriquageArray) {
37
43
  this.filterRubriquage = filter.rubriquageArray;
38
44
  }
39
45
  this.filterLive = filter.isLive;
40
46
  this.filterIab = undefined;
41
47
  },
42
- filterUpdateIab(iab?:Category) {
48
+ filterUpdateIab(iab?: Category) {
43
49
  this.filterIab = iab;
44
50
  },
45
51
  filterUpdateRubrique(rubriqueFilter: Array<RubriquageFilter>) {
@@ -48,7 +54,11 @@ export const useFilterStore = defineStore('FilterStore', {
48
54
  filterUpdateRubriqueDisplay(rubriques: Array<Rubrique>) {
49
55
  this.filterRubriqueDisplay = rubriques;
50
56
  },
51
- filterUpdateMedia(filter: {type?:string, order?:string, field?:string}) {
57
+ filterUpdateMedia(filter: {
58
+ type?: string;
59
+ order?: string;
60
+ field?: string;
61
+ }) {
52
62
  if (filter.type) {
53
63
  this.filterTypeMedia = filter.type;
54
64
  }
@@ -59,5 +69,5 @@ export const useFilterStore = defineStore('FilterStore', {
59
69
  this.filterSortField = filter.field;
60
70
  }
61
71
  },
62
- }
63
- })
72
+ },
73
+ });
@@ -1,26 +1,26 @@
1
- import { Category } from '@/stores/class/general/category';
2
- import { defineStore } from 'pinia';
1
+ import { Category } from "@/stores/class/general/category";
2
+ import { defineStore } from "pinia";
3
3
 
4
- interface GeneralState{
4
+ interface GeneralState {
5
5
  metaTitle: string;
6
6
  platformEducation: boolean;
7
7
  generalLogoUrl: string;
8
8
  storedCategories: Array<Category>;
9
9
  storedCategoriesOrga: Array<Category>;
10
10
  isBeforeLive: boolean;
11
- consentTcf: string|null;
11
+ consentTcf: string | null;
12
12
  }
13
- export const useGeneralStore = defineStore('GeneralStore', {
13
+ export const useGeneralStore = defineStore("GeneralStore", {
14
14
  state: (): GeneralState => ({
15
- metaTitle: 'Octopus by Saooti',
16
- platformEducation:false,
17
- generalLogoUrl: '/img/logo_octopus_final.svg',
15
+ metaTitle: "Octopus by Saooti",
16
+ platformEducation: false,
17
+ generalLogoUrl: "/img/logo_octopus_final.svg",
18
18
  storedCategories: [],
19
19
  storedCategoriesOrga: [],
20
20
  isBeforeLive: true,
21
21
  consentTcf: null,
22
22
  }),
23
- actions:{
23
+ actions: {
24
24
  storedUpdateCategories(categories: Array<Category>) {
25
25
  this.storedCategories = categories;
26
26
  },
@@ -30,15 +30,15 @@ export const useGeneralStore = defineStore('GeneralStore', {
30
30
  isBeforeLiveUpdate(isBeforeLive: boolean) {
31
31
  this.isBeforeLive = isBeforeLive;
32
32
  },
33
- consentTcfUpdate(consentTcf: string|null) {
33
+ consentTcfUpdate(consentTcf: string | null) {
34
34
  this.consentTcf = consentTcf;
35
35
  },
36
36
  platformUpdateEducation(isEducation: boolean) {
37
37
  this.platformEducation = isEducation;
38
- if(isEducation){
39
- this.generalLogoUrl = '/img/logo_education.webp';
40
- this.metaTitle = 'RadioEducation.org';
38
+ if (isEducation) {
39
+ this.generalLogoUrl = "/img/logo_education.webp";
40
+ this.metaTitle = "RadioEducation.org";
41
41
  }
42
42
  },
43
- }
44
- })
43
+ },
44
+ });
@@ -1,9 +1,9 @@
1
- import octopusApi from '@saooti/octopus-api';
2
- import { Category } from './class/general/category';
1
+ import octopusApi from "@saooti/octopus-api";
2
+ import { Category } from "./class/general/category";
3
3
 
4
- const state:ParamStore = {
4
+ const state: ParamStore = {
5
5
  generalParameters: {
6
- organisationId:'ecbd98d9-79bd-4312-ad5e-fc7c1c4a191c',
6
+ organisationId: "ecbd98d9-79bd-4312-ad5e-fc7c1c4a191c",
7
7
  authenticated: true,
8
8
  isAdmin: true,
9
9
  isRoleLive: true,
@@ -12,33 +12,33 @@ const state:ParamStore = {
12
12
  isPlaylist: false,
13
13
  isProduction: false,
14
14
  isContribution: true,
15
- ApiUri: 'https://api.dev2.saooti.org/',
15
+ ApiUri: "https://api.dev2.saooti.org/",
16
16
  podcastmaker: false,
17
17
  buttonPlus: true,
18
18
  allCategories: [],
19
19
  isLiveTab: true,
20
20
  isCaptchaTest: true,
21
- podcastItem:13.5,
22
- isInlineAnimation:true,
21
+ podcastItem: 13.5,
22
+ isInlineAnimation: true,
23
23
  },
24
24
  podcastPage: {
25
25
  EditBox: true,
26
26
  SharePlayer: true,
27
27
  ShareButtons: true,
28
28
  ShareDistribution: true,
29
- MiniplayerUri: 'https://playerbeta.dev2.saooti.org/',
30
- hlsUri: 'https://hls.dev2.saooti.org/',
29
+ MiniplayerUri: "https://playerbeta.dev2.saooti.org/",
30
+ hlsUri: "https://hls.dev2.saooti.org/",
31
31
  mainRubrique: 0,
32
32
  resourceUrl: undefined,
33
33
  podcastItemShowEmission: false,
34
- clickPlayGoPage:false,
34
+ clickPlayGoPage: false,
35
35
  listTypeClassic: false,
36
- podcastItemDescription:true
36
+ podcastItemDescription: true,
37
37
  },
38
38
  podcastsPage: {
39
39
  MonetizableFilter: true,
40
40
  podcastBorderBottom: false,
41
- titlePage: undefined
41
+ titlePage: undefined,
42
42
  },
43
43
  emissionsPage: {
44
44
  smallItems: false,
@@ -50,15 +50,15 @@ const state:ParamStore = {
50
50
  buttonMore: false,
51
51
  overflowScroll: false,
52
52
  titleInImage: false,
53
- progressBar:false
53
+ progressBar: false,
54
54
  },
55
55
  emissionPage: {
56
- isDisplayPodcasts:true,
57
- overflowScroll:false
56
+ isDisplayPodcasts: true,
57
+ overflowScroll: false,
58
58
  },
59
59
  intervenantPage: {
60
60
  lightStyle: false,
61
- titlePage: undefined
61
+ titlePage: undefined,
62
62
  },
63
63
  intervenantsPage: {
64
64
  titlePage: undefined,
@@ -74,150 +74,192 @@ const state:ParamStore = {
74
74
  contactLink: undefined,
75
75
  },
76
76
  organisation: {
77
- imageUrl: '/img/emptypodcast.webp',
78
- name: 'Saooti',
79
- userName: '',
77
+ imageUrl: "/img/emptypodcast.webp",
78
+ name: "Saooti",
79
+ userName: "",
80
80
  },
81
81
  octopusApi: {
82
- url: 'https://api.dev2.saooti.org/',
83
- commentsUrl: 'https://comments.dev2.saooti.org/',
84
- imageUrl:'https://imageproxy.dev2.saooti.org/',
85
- studioUrl: 'https://studio.dev2.saooti.org/',
86
- playerUrl: 'https://playerbeta.dev2.saooti.org/',
87
- speechToTextUrl:'https://speech2text.dev2.saooti.org/',
88
- recoUrl: 'https://reco.dev2.saooti.org/',
82
+ url: "https://api.dev2.saooti.org/",
83
+ commentsUrl: "https://comments.dev2.saooti.org/",
84
+ imageUrl: "https://imageproxy.dev2.saooti.org/",
85
+ studioUrl: "https://studio.dev2.saooti.org/",
86
+ playerUrl: "https://playerbeta.dev2.saooti.org/",
87
+ speechToTextUrl: "https://speech2text.dev2.saooti.org/",
88
+ recoUrl: "https://reco.dev2.saooti.org/",
89
89
  organisationId: undefined,
90
90
  rubriqueIdFilter: undefined,
91
91
  },
92
92
  };
93
- export interface GeneralParameters{
94
- organisationId?: string,
95
- authenticated?: boolean,
96
- isAdmin?: boolean,
97
- isRoleLive?: boolean,
98
- isCommments?: boolean,
99
- isOrganisation?: boolean,
100
- isPlaylist?: boolean,
101
- isProduction?: boolean,
102
- isContribution?: boolean,
103
- ApiUri?: string,
104
- podcastmaker?: boolean,
105
- buttonPlus?: boolean,
106
- allCategories?: Array<Category>,
107
- isLiveTab?: boolean,
108
- isCaptchaTest?: boolean,
109
- podcastItem?: number,
110
- podcastmakerColor?: string,
111
- isInlineAnimation?: boolean
93
+ export interface GeneralParameters {
94
+ organisationId?: string;
95
+ authenticated?: boolean;
96
+ isAdmin?: boolean;
97
+ isRoleLive?: boolean;
98
+ isCommments?: boolean;
99
+ isOrganisation?: boolean;
100
+ isPlaylist?: boolean;
101
+ isProduction?: boolean;
102
+ isContribution?: boolean;
103
+ ApiUri?: string;
104
+ podcastmaker?: boolean;
105
+ buttonPlus?: boolean;
106
+ allCategories?: Array<Category>;
107
+ isLiveTab?: boolean;
108
+ isCaptchaTest?: boolean;
109
+ podcastItem?: number;
110
+ podcastmakerColor?: string;
111
+ isInlineAnimation?: boolean;
112
112
  }
113
- export interface PodcastPage{
114
- EditBox?: boolean,
115
- SharePlayer?: boolean,
116
- ShareButtons?: boolean,
117
- ShareDistribution?: boolean,
118
- MiniplayerUri?: string,
119
- hlsUri?: string,
120
- mainRubrique?: number,
121
- resourceUrl?: string,
122
- podcastItemShowEmission?: boolean,
123
- clickPlayGoPage?:boolean,
124
- listTypeClassic?:boolean,
125
- podcastItemDescription?:boolean,
113
+ export interface PodcastPage {
114
+ EditBox?: boolean;
115
+ SharePlayer?: boolean;
116
+ ShareButtons?: boolean;
117
+ ShareDistribution?: boolean;
118
+ MiniplayerUri?: string;
119
+ hlsUri?: string;
120
+ mainRubrique?: number;
121
+ resourceUrl?: string;
122
+ podcastItemShowEmission?: boolean;
123
+ clickPlayGoPage?: boolean;
124
+ listTypeClassic?: boolean;
125
+ podcastItemDescription?: boolean;
126
126
  }
127
- export interface PodcastsPage{
128
- MonetizableFilter?: boolean,
129
- podcastBorderBottom?: boolean,
130
- titlePage?: string,
127
+ export interface PodcastsPage {
128
+ MonetizableFilter?: boolean;
129
+ podcastBorderBottom?: boolean;
130
+ titlePage?: string;
131
131
  }
132
- export interface EmissionsPage{
133
- smallItems?: boolean,
134
- lightItems?: boolean,
135
- titlePage?: string,
136
- itemPlayer?: boolean,
137
- rubriquage?: number,
138
- mainRubrique?: number,
139
- buttonMore?: boolean,
140
- overflowScroll?: boolean,
141
- titleInImage?: boolean,
142
- progressBar?:boolean
132
+ export interface EmissionsPage {
133
+ smallItems?: boolean;
134
+ lightItems?: boolean;
135
+ titlePage?: string;
136
+ itemPlayer?: boolean;
137
+ rubriquage?: number;
138
+ mainRubrique?: number;
139
+ buttonMore?: boolean;
140
+ overflowScroll?: boolean;
141
+ titleInImage?: boolean;
142
+ progressBar?: boolean;
143
143
  }
144
- export interface EmissionPage{
145
- isDisplayPodcasts?:boolean,
146
- overflowScroll?: boolean,
144
+ export interface EmissionPage {
145
+ isDisplayPodcasts?: boolean;
146
+ overflowScroll?: boolean;
147
147
  }
148
- export interface IntervenantPage{
149
- lightStyle?: boolean,
150
- titlePage?: string
148
+ export interface IntervenantPage {
149
+ lightStyle?: boolean;
150
+ titlePage?: string;
151
151
  }
152
- export interface IntervenantsPage{
153
- titlePage?: string
152
+ export interface IntervenantsPage {
153
+ titlePage?: string;
154
154
  }
155
- export interface SearchPage{
156
- hideBar?: boolean
155
+ export interface SearchPage {
156
+ hideBar?: boolean;
157
157
  }
158
- export interface Player{
159
- image?: boolean
160
- emissionName?: boolean
158
+ export interface Player {
159
+ image?: boolean;
160
+ emissionName?: boolean;
161
161
  }
162
- export interface Footer{
163
- contactLink?: string
162
+ export interface Footer {
163
+ contactLink?: string;
164
164
  }
165
- export interface Organisation{
166
- imageUrl?: string,
167
- name?: string,
168
- userName?: string,
165
+ export interface Organisation {
166
+ imageUrl?: string;
167
+ name?: string;
168
+ userName?: string;
169
169
  }
170
- export interface OctopusApi{
171
- url?: string,
172
- commentsUrl?: string,
173
- imageUrl?: string,
174
- studioUrl?: string,
175
- playerUrl?: string,
176
- radioUrl?:string,
177
- speechToTextUrl?:string,
178
- recoUrl?:string,
179
- organisationId?: string,
170
+ export interface OctopusApi {
171
+ url?: string;
172
+ commentsUrl?: string;
173
+ imageUrl?: string;
174
+ studioUrl?: string;
175
+ playerUrl?: string;
176
+ radioUrl?: string;
177
+ speechToTextUrl?: string;
178
+ recoUrl?: string;
179
+ organisationId?: string;
180
180
  oAuthParam?: {
181
- accessToken: string,
182
- refreshToken: string,
183
- expiration: string,
184
- },
185
- rubriqueIdFilter?: Array<number>,
181
+ accessToken: string;
182
+ refreshToken: string;
183
+ expiration: string;
184
+ };
185
+ rubriqueIdFilter?: Array<number>;
186
186
  }
187
- export interface ParamStore{
188
- generalParameters:GeneralParameters,
189
- podcastPage: PodcastPage,
190
- podcastsPage: PodcastsPage,
191
- emissionsPage:EmissionsPage,
192
- emissionPage: EmissionPage,
193
- intervenantPage:IntervenantPage,
194
- intervenantsPage:IntervenantsPage,
195
- searchPage:SearchPage,
196
- player: Player,
197
- footer: Footer,
198
- organisation:Organisation,
199
- octopusApi:OctopusApi,
187
+ export interface ParamStore {
188
+ generalParameters: GeneralParameters;
189
+ podcastPage: PodcastPage;
190
+ podcastsPage: PodcastsPage;
191
+ emissionsPage: EmissionsPage;
192
+ emissionPage: EmissionPage;
193
+ intervenantPage: IntervenantPage;
194
+ intervenantsPage: IntervenantsPage;
195
+ searchPage: SearchPage;
196
+ player: Player;
197
+ footer: Footer;
198
+ organisation: Organisation;
199
+ octopusApi: OctopusApi;
200
200
  }
201
- const definedProps = (obj: GeneralParameters|PodcastPage|PodcastsPage|EmissionsPage|EmissionPage|IntervenantPage|IntervenantsPage|SearchPage|Player|Footer|Organisation|OctopusApi) => Object.fromEntries(
202
- Object.entries(obj).filter(([, v]) => v !== undefined)
203
- );
201
+ const definedProps = (
202
+ obj:
203
+ | GeneralParameters
204
+ | PodcastPage
205
+ | PodcastsPage
206
+ | EmissionsPage
207
+ | EmissionPage
208
+ | IntervenantPage
209
+ | IntervenantsPage
210
+ | SearchPage
211
+ | Player
212
+ | Footer
213
+ | Organisation
214
+ | OctopusApi,
215
+ ) => Object.fromEntries(Object.entries(obj).filter(([, v]) => v !== undefined));
204
216
  const initialize = function initialize(initObject: ParamStore): Promise<void> {
205
217
  return new Promise<void>((resolve, reject) => {
206
- state.generalParameters = Object.assign(state.generalParameters, definedProps(initObject.generalParameters));
207
- if(!state.generalParameters.authenticated){
218
+ state.generalParameters = Object.assign(
219
+ state.generalParameters,
220
+ definedProps(initObject.generalParameters),
221
+ );
222
+ if (!state.generalParameters.authenticated) {
208
223
  state.generalParameters.organisationId = undefined;
209
224
  }
210
- state.podcastPage = Object.assign(state.podcastPage, definedProps(initObject.podcastPage));
211
- state.podcastsPage = Object.assign(state.podcastsPage, definedProps(initObject.podcastsPage));
212
- state.emissionsPage = Object.assign(state.emissionsPage, definedProps(initObject.emissionsPage));
213
- state.emissionPage = Object.assign(state.emissionPage, definedProps(initObject.emissionPage));
214
- state.intervenantPage = Object.assign(state.intervenantPage, definedProps(initObject.intervenantPage));
215
- state.intervenantsPage = Object.assign(state.intervenantsPage, definedProps(initObject.intervenantsPage));
216
- state.searchPage = Object.assign(state.searchPage, definedProps(initObject.searchPage));
217
- state.player = Object.assign(state.player, definedProps(initObject.player));
218
- state.organisation = Object.assign(state.organisation, definedProps(initObject.organisation));
219
- state.footer = Object.assign(state.footer, definedProps(initObject.footer));
220
- state.octopusApi = Object.assign(state.octopusApi, definedProps(initObject.octopusApi));
225
+ state.podcastPage = Object.assign(
226
+ state.podcastPage,
227
+ definedProps(initObject.podcastPage),
228
+ );
229
+ state.podcastsPage = Object.assign(
230
+ state.podcastsPage,
231
+ definedProps(initObject.podcastsPage),
232
+ );
233
+ state.emissionsPage = Object.assign(
234
+ state.emissionsPage,
235
+ definedProps(initObject.emissionsPage),
236
+ );
237
+ state.emissionPage = Object.assign(
238
+ state.emissionPage,
239
+ definedProps(initObject.emissionPage),
240
+ );
241
+ state.intervenantPage = Object.assign(
242
+ state.intervenantPage,
243
+ definedProps(initObject.intervenantPage),
244
+ );
245
+ state.intervenantsPage = Object.assign(
246
+ state.intervenantsPage,
247
+ definedProps(initObject.intervenantsPage),
248
+ );
249
+ state.searchPage = Object.assign(
250
+ state.searchPage,
251
+ definedProps(initObject.searchPage),
252
+ );
253
+ state.player = Object.assign(state.player, definedProps(initObject.player));
254
+ state.organisation = Object.assign(
255
+ state.organisation,
256
+ definedProps(initObject.organisation),
257
+ );
258
+ state.footer = Object.assign(state.footer, definedProps(initObject.footer));
259
+ state.octopusApi = Object.assign(
260
+ state.octopusApi,
261
+ definedProps(initObject.octopusApi),
262
+ );
221
263
  if (initObject.octopusApi) {
222
264
  try {
223
265
  octopusApi.initialize(state.octopusApi);
@@ -232,4 +274,4 @@ const initialize = function initialize(initObject: ParamStore): Promise<void> {
232
274
  };
233
275
 
234
276
  export default { initialize, state };
235
- export { initialize, state };
277
+ export { initialize, state };