@saooti/octopus-sdk 37.0.6 → 37.0.8

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (236) hide show
  1. package/README.md +2 -2
  2. package/index.ts +22 -22
  3. package/package.json +26 -22
  4. package/src/App.vue +69 -60
  5. package/src/api/classicCrud.ts +12 -12
  6. package/src/api/initialize.ts +1 -1
  7. package/src/assets/transition.scss +34 -22
  8. package/src/components/display/aggregator/RssSection.vue +3 -3
  9. package/src/components/display/categories/CategoryChooser.vue +73 -60
  10. package/src/components/display/categories/CategoryFilter.vue +134 -90
  11. package/src/components/display/categories/CategoryList.vue +76 -62
  12. package/src/components/display/comments/AddCommentModal.vue +44 -44
  13. package/src/components/display/comments/CommentBasicView.vue +38 -30
  14. package/src/components/display/comments/CommentInput.vue +121 -106
  15. package/src/components/display/comments/CommentItem.vue +144 -102
  16. package/src/components/display/comments/CommentList.vue +117 -85
  17. package/src/components/display/comments/CommentParentInfo.vue +18 -15
  18. package/src/components/display/comments/CommentPlayer.vue +39 -41
  19. package/src/components/display/comments/CommentSection.vue +68 -53
  20. package/src/components/display/edit/EditBox.vue +7 -7
  21. package/src/components/display/edit/EditBoxRadio.vue +3 -4
  22. package/src/components/display/edit/EditCommentBox.vue +34 -36
  23. package/src/components/display/emission/EmissionInlineList.vue +75 -63
  24. package/src/components/display/emission/EmissionItem.vue +47 -35
  25. package/src/components/display/emission/EmissionList.vue +118 -83
  26. package/src/components/display/emission/EmissionPlayerItem.vue +89 -89
  27. package/src/components/display/filter/AdvancedSearch.vue +81 -73
  28. package/src/components/display/filter/CategorySearchFilter.vue +27 -25
  29. package/src/components/display/filter/DateFilter.vue +38 -38
  30. package/src/components/display/filter/MonetizableFilter.vue +16 -14
  31. package/src/components/display/filter/ProductorSearch.vue +55 -47
  32. package/src/components/display/filter/RubriqueChoice.vue +42 -27
  33. package/src/components/display/filter/RubriqueFilter.vue +130 -85
  34. package/src/components/display/filter/SearchOrder.vue +16 -11
  35. package/src/components/display/list/ListPaginate.vue +72 -70
  36. package/src/components/display/list/PaginateParams.vue +29 -30
  37. package/src/components/display/list/PaginateSection.vue +210 -0
  38. package/src/components/display/list/SwiperList.vue +28 -32
  39. package/src/components/display/live/CountDown.vue +12 -14
  40. package/src/components/display/live/LiveHorizontalList.vue +60 -50
  41. package/src/components/display/live/LiveItem.vue +42 -26
  42. package/src/components/display/live/LiveList.vue +92 -65
  43. package/src/components/display/live/RadioCurrently.vue +47 -42
  44. package/src/components/display/live/RadioImage.vue +40 -42
  45. package/src/components/display/live/RadioItem.vue +15 -22
  46. package/src/components/display/live/RadioList.vue +24 -21
  47. package/src/components/display/live/RadioPlanning.vue +105 -68
  48. package/src/components/display/organisation/OrganisationChooser.vue +58 -42
  49. package/src/components/display/organisation/OrganisationChooserLight.vue +27 -19
  50. package/src/components/display/participant/ParticipantItem.vue +89 -77
  51. package/src/components/display/participant/ParticipantList.vue +90 -60
  52. package/src/components/display/playlist/PlaylistItem.vue +32 -35
  53. package/src/components/display/playlist/PlaylistList.vue +70 -52
  54. package/src/components/display/playlist/PodcastList.vue +61 -50
  55. package/src/components/display/playlist/PodcastPlaylistInlineList.vue +47 -38
  56. package/src/components/display/podcasts/AnimatorsItem.vue +17 -15
  57. package/src/components/display/podcasts/ParticipantDescription.vue +21 -22
  58. package/src/components/display/podcasts/PodcastFilterList.vue +28 -26
  59. package/src/components/display/podcasts/PodcastImage.vue +129 -131
  60. package/src/components/display/podcasts/PodcastInlineList.vue +33 -29
  61. package/src/components/display/podcasts/PodcastInlineListClassic.vue +91 -71
  62. package/src/components/display/podcasts/PodcastInlineListTemplate.vue +94 -85
  63. package/src/components/display/podcasts/PodcastItem.vue +96 -90
  64. package/src/components/display/podcasts/PodcastItemInfo.vue +61 -65
  65. package/src/components/display/podcasts/PodcastList.vue +115 -84
  66. package/src/components/display/podcasts/PodcastModuleBox.vue +95 -104
  67. package/src/components/display/podcasts/PodcastPlayBar.vue +45 -32
  68. package/src/components/display/podcasts/PodcastSwiperList.vue +65 -55
  69. package/src/components/display/podcasts/TagList.vue +33 -37
  70. package/src/components/display/rubriques/RubriqueChooser.vue +70 -51
  71. package/src/components/display/rubriques/RubriqueList.vue +117 -89
  72. package/src/components/display/sharing/PlayerParameters.vue +45 -42
  73. package/src/components/display/sharing/QrCode.vue +52 -46
  74. package/src/components/display/sharing/ShareButtons.vue +18 -18
  75. package/src/components/display/sharing/ShareButtonsIntern.vue +100 -78
  76. package/src/components/display/sharing/ShareDistribution.vue +101 -67
  77. package/src/components/display/sharing/SharePlayer.vue +207 -127
  78. package/src/components/display/sharing/SharePlayerColors.vue +15 -15
  79. package/src/components/display/sharing/SharePlayerRadio.vue +62 -39
  80. package/src/components/display/sharing/SharePlayerTypes.vue +93 -55
  81. package/src/components/display/sharing/SubscribeButtons.vue +83 -32
  82. package/src/components/display/studio/RecordingItemButton.vue +3 -3
  83. package/src/components/form/ClassicCheckbox.vue +32 -31
  84. package/src/components/form/ClassicDatePicker.vue +47 -49
  85. package/src/components/form/ClassicInputText.vue +99 -98
  86. package/src/components/form/ClassicLoading.vue +11 -14
  87. package/src/components/form/ClassicMultiselect.vue +125 -126
  88. package/src/components/form/ClassicRadio.vue +15 -18
  89. package/src/components/form/ClassicSearch.vue +17 -23
  90. package/src/components/form/ClassicSelect.vue +35 -27
  91. package/src/components/form/{Wysiwyg.vue → ClassicWysiwyg.vue} +103 -118
  92. package/src/components/misc/AcpmImage.vue +6 -6
  93. package/src/components/misc/ClassicAccordion.vue +73 -0
  94. package/src/components/misc/ClassicNav.vue +117 -0
  95. package/src/components/misc/ClassicPopover.vue +212 -0
  96. package/src/components/misc/{Spinner.vue → ClassicSpinner.vue} +14 -15
  97. package/src/components/misc/ErrorMessage.vue +9 -17
  98. package/src/components/misc/FooterSection.vue +198 -0
  99. package/src/components/misc/HomeDropdown.vue +60 -60
  100. package/src/components/misc/LeftMenu.vue +115 -79
  101. package/src/components/misc/ProgressBar.vue +36 -32
  102. package/src/components/misc/SnackBar.vue +169 -0
  103. package/src/components/misc/TopBar.vue +162 -116
  104. package/src/components/misc/modal/ClassicModal.vue +99 -103
  105. package/src/components/misc/modal/ClipboardModal.vue +21 -23
  106. package/src/components/misc/modal/MessageModal.vue +22 -28
  107. package/src/components/misc/modal/NewsletterModal.vue +139 -113
  108. package/src/components/misc/modal/QrCodeModal.vue +14 -17
  109. package/src/components/misc/modal/ShareModalPlayer.vue +44 -60
  110. package/src/components/misc/player/PlayerCompact.vue +47 -62
  111. package/src/components/misc/player/{Player.vue → PlayerComponent.vue} +54 -46
  112. package/src/components/misc/player/PlayerLarge.vue +62 -61
  113. package/src/components/misc/player/PlayerProgressBar.vue +40 -30
  114. package/src/components/misc/player/PlayerTimeline.vue +32 -36
  115. package/src/components/misc/player/radio/RadioHistory.vue +62 -59
  116. package/src/components/misc/player/radio/RadioProgressBar.vue +44 -35
  117. package/src/components/mixins/cookies.ts +11 -10
  118. package/src/components/mixins/displayMethods.ts +5 -4
  119. package/src/components/mixins/handle403.ts +9 -9
  120. package/src/components/mixins/imageProxy.ts +14 -7
  121. package/src/components/mixins/init.ts +31 -16
  122. package/src/components/mixins/orgaComputed.ts +7 -7
  123. package/src/components/mixins/organisationFilter.ts +36 -22
  124. package/src/components/mixins/player/playerComment.ts +46 -37
  125. package/src/components/mixins/player/playerDisplay.ts +122 -87
  126. package/src/components/mixins/player/playerLive.ts +65 -43
  127. package/src/components/mixins/player/playerLogic.ts +133 -88
  128. package/src/components/mixins/player/playerTranscript.ts +48 -30
  129. package/src/components/mixins/radio/fetchRadioData.ts +40 -23
  130. package/src/components/mixins/selenium.ts +2 -2
  131. package/src/components/mixins/tagOfMixins.ts +11 -11
  132. package/src/components/pages/CategoryPage.vue +43 -0
  133. package/src/components/pages/{Emission.vue → EmissionPage.vue} +98 -67
  134. package/src/components/pages/{Emissions.vue → EmissionsPage.vue} +51 -44
  135. package/src/components/pages/Error403Page.vue +20 -19
  136. package/src/components/pages/HomePage.vue +144 -0
  137. package/src/components/pages/LivesPage.vue +66 -0
  138. package/src/components/pages/PageNotFound.vue +33 -22
  139. package/src/components/pages/{Participant.vue → ParticipantPage.vue} +63 -49
  140. package/src/components/pages/{Participants.vue → ParticipantsPage.vue} +9 -9
  141. package/src/components/pages/PlaylistPage.vue +175 -0
  142. package/src/components/pages/{Playlists.vue → PlaylistsPage.vue} +16 -14
  143. package/src/components/pages/PodcastPage.vue +365 -0
  144. package/src/components/pages/PodcastsPage.vue +152 -0
  145. package/src/components/pages/RadioPage.vue +131 -0
  146. package/src/components/pages/RubriquePage.vue +45 -0
  147. package/src/components/pages/{Search.vue → SearchPage.vue} +19 -19
  148. package/src/helper/dom.ts +1 -1
  149. package/src/helper/duration.ts +10 -4
  150. package/src/helper/useEventListener.ts +7 -8
  151. package/src/i18n.ts +31 -30
  152. package/src/locale/de.ts +272 -257
  153. package/src/locale/educationen.ts +13 -13
  154. package/src/locale/educationfr.ts +1 -1
  155. package/src/locale/en.ts +332 -324
  156. package/src/locale/es.ts +334 -318
  157. package/src/locale/fr.ts +339 -324
  158. package/src/locale/it.ts +341 -328
  159. package/src/locale/messages.ts +9 -9
  160. package/src/locale/sl.ts +324 -319
  161. package/src/main.ts +28 -31
  162. package/src/router/router.ts +218 -198
  163. package/src/shims-tsx.d.ts +1 -1
  164. package/src/shims-vue.d.ts +1 -1
  165. package/src/stores/ApiStore.ts +44 -44
  166. package/src/stores/AuthStore.ts +21 -15
  167. package/src/stores/CommentStore.ts +13 -11
  168. package/src/stores/FilterStore.ts +25 -15
  169. package/src/stores/GeneralStore.ts +15 -15
  170. package/src/stores/ParamSdkStore.ts +179 -137
  171. package/src/stores/PlayerStore.ts +139 -125
  172. package/src/stores/class/adserver/adserverConfig.ts +1 -1
  173. package/src/stores/class/adserver/adserverOtherEmission.ts +9 -9
  174. package/src/stores/class/cartouchier/cartouche.ts +4 -4
  175. package/src/stores/class/cartouchier/cartouchier.ts +2 -2
  176. package/src/stores/class/conference/conference.ts +10 -9
  177. package/src/stores/class/conference/conferenceMessage.ts +2 -2
  178. package/src/stores/class/conference/conferenceParticipant.ts +1 -1
  179. package/src/stores/class/conference/studioCall.ts +6 -6
  180. package/src/stores/class/contract/contractOrganisation.ts +5 -5
  181. package/src/stores/class/ftp/ftpEmission.ts +9 -9
  182. package/src/stores/class/ftp/testFtpEmission.ts +4 -4
  183. package/src/stores/class/general/audioView.ts +19 -19
  184. package/src/stores/class/general/category.ts +1 -1
  185. package/src/stores/class/general/classicSelectType.ts +2 -3
  186. package/src/stores/class/general/customPlayer.ts +8 -8
  187. package/src/stores/class/general/emission.ts +20 -20
  188. package/src/stores/class/general/fetchParam.ts +8 -2
  189. package/src/stores/class/general/initState.ts +31 -31
  190. package/src/stores/class/general/interfacePageable.ts +13 -13
  191. package/src/stores/class/general/ituneCategory.ts +4 -4
  192. package/src/stores/class/general/listReturn.ts +12 -12
  193. package/src/stores/class/general/media.ts +7 -7
  194. package/src/stores/class/general/organisation.ts +9 -9
  195. package/src/stores/class/general/pageable.ts +10 -10
  196. package/src/stores/class/general/participant.ts +7 -7
  197. package/src/stores/class/general/player.ts +30 -28
  198. package/src/stores/class/general/playlist.ts +17 -19
  199. package/src/stores/class/general/podcast.ts +19 -19
  200. package/src/stores/class/general/sortPageable.ts +4 -4
  201. package/src/stores/class/general/soundcastCategory.ts +7 -7
  202. package/src/stores/class/ouestFrance/ofTag.ts +34 -34
  203. package/src/stores/class/ouestFrance/ofTagInfo.ts +9 -9
  204. package/src/stores/class/ouestFrance/ofTagPage.ts +7 -7
  205. package/src/stores/class/ouestFrance/ofTagSeo.ts +7 -7
  206. package/src/stores/class/ouestFrance/ofTagVente.ts +6 -6
  207. package/src/stores/class/ouestFrance/ofTagWithParents.ts +20 -20
  208. package/src/stores/class/radio/canal.ts +4 -4
  209. package/src/stores/class/radio/live.ts +6 -6
  210. package/src/stores/class/radio/mix.ts +16 -16
  211. package/src/stores/class/radio/playlistMedia.ts +7 -7
  212. package/src/stores/class/radio/recurrence.ts +54 -54
  213. package/src/stores/class/rss/rssEmission.ts +13 -13
  214. package/src/stores/class/rss/rssInfo.ts +7 -7
  215. package/src/stores/class/rubrique/rubriquage.ts +2 -2
  216. package/src/stores/class/rubrique/rubrique.ts +1 -1
  217. package/src/stores/class/stat/statArrayIncome.ts +5 -5
  218. package/src/stores/class/stat/statArrayObject.ts +26 -26
  219. package/src/stores/class/stat/statGraph.ts +6 -6
  220. package/src/stores/class/user/person.ts +4 -2
  221. package/src/stores/class/user/profile.ts +4 -2
  222. package/src/stores/class/user/userKeycloak.ts +4 -5
  223. package/src/components/display/list/Paginate.vue +0 -181
  224. package/src/components/misc/Accordion.vue +0 -78
  225. package/src/components/misc/Footer.vue +0 -169
  226. package/src/components/misc/Nav.vue +0 -119
  227. package/src/components/misc/Popover.vue +0 -193
  228. package/src/components/misc/Snackbar.vue +0 -168
  229. package/src/components/pages/Category.vue +0 -41
  230. package/src/components/pages/Home.vue +0 -125
  231. package/src/components/pages/Lives.vue +0 -64
  232. package/src/components/pages/Playlist.vue +0 -164
  233. package/src/components/pages/Podcast.vue +0 -307
  234. package/src/components/pages/Podcasts.vue +0 -146
  235. package/src/components/pages/Radio.vue +0 -122
  236. package/src/components/pages/Rubrique.vue +0 -42
package/README.md CHANGED
@@ -492,7 +492,7 @@ See [Configuration Reference](https://cli.vuejs.org/config/).
492
492
  * 29.0.23 Eslint
493
493
  * 29.0.24 Version stable vue3
494
494
  * 29.0.25 Specific category does not display in correct order
495
- * 29.0.26 Snackbar position
495
+ * 29.0.26 SnackBar position
496
496
  * 29.0.27 Petit cursor:pointer des familles
497
497
  * 29.0.28 Petite couleur des familles
498
498
  * 29.0.29 Amélioration Popover
@@ -617,7 +617,7 @@ See [Configuration Reference](https://cli.vuejs.org/config/).
617
617
  * 31.0.24 Amélioration accessibilité
618
618
  * 31.0.25 Erreur audioUrl
619
619
  * 31.0.26 Erreur 403 page expose
620
- * 31.0.27 Snackbar chose holdtime
620
+ * 31.0.27 SnackBar chose holdtime
621
621
  * 31.0.28 Mixins orgComputed
622
622
  * 31.0.29 Changement css
623
623
  * 31.0.30 Changement css
package/index.ts CHANGED
@@ -1,34 +1,34 @@
1
1
  //Pages
2
- export const getLives = () => import("./src/components/pages/Lives.vue");
3
- export const getPodcast = () => import("./src/components/pages/Podcast.vue");
4
- export const getPodcasts = () => import("./src/components/pages/Podcasts.vue");
5
- export const getEmission = () => import("./src/components/pages/Emission.vue");
6
- export const getEmissions = () => import("./src/components/pages/Emissions.vue");
7
- export const getPlaylist = () => import("./src/components/pages/Playlist.vue");
8
- export const getPlaylists = () => import("./src/components/pages/Playlists.vue");
9
- export const getParticipant = () => import("./src/components/pages/Participant.vue");
10
- export const getParticipants = () => import("./src/components/pages/Participants.vue");
11
- export const getSearch = () => import("./src/components/pages/Search.vue");
12
- export const getHome = () => import("./src/components/pages/Home.vue");
13
- export const getCategory = () => import("./src/components/pages/Category.vue");
14
- export const getRubrique = () => import("./src/components/pages/Rubrique.vue");
2
+ export const getLives = () => import("./src/components/pages/LivesPage.vue");
3
+ export const getPodcast = () => import("./src/components/pages/PodcastPage.vue");
4
+ export const getPodcasts = () => import("./src/components/pages/PodcastsPage.vue");
5
+ export const getEmission = () => import("./src/components/pages/EmissionPage.vue");
6
+ export const getEmissions = () => import("./src/components/pages/EmissionsPage.vue");
7
+ export const getPlaylist = () => import("./src/components/pages/PlaylistPage.vue");
8
+ export const getPlaylists = () => import("./src/components/pages/PlaylistsPage.vue");
9
+ export const getParticipant = () => import("./src/components/pages/ParticipantPage.vue");
10
+ export const getParticipants = () => import("./src/components/pages/ParticipantsPage.vue");
11
+ export const getSearch = () => import("./src/components/pages/SearchPage.vue");
12
+ export const getHome = () => import("./src/components/pages/HomePage.vue");
13
+ export const getCategory = () => import("./src/components/pages/CategoryPage.vue");
14
+ export const getRubrique = () => import("./src/components/pages/RubriquePage.vue");
15
15
  export const getError403Page = () => import("./src/components/pages/Error403Page.vue");
16
- export const getRadio = () => import("./src/components/pages/Radio.vue");
16
+ export const getRadio = () => import("./src/components/pages/RadioPage.vue");
17
17
 
18
18
  //Misc
19
- export const getAccordion = () => import("./src/components/misc/Accordion.vue");
20
- export const getNav = () => import("./src/components/misc/Nav.vue");
19
+ export const getAccordion = () => import("./src/components/misc/ClassicAccordion.vue");
20
+ export const getNav = () => import("./src/components/misc/ClassicNav.vue");
21
21
  export const getProgressBar = () => import("./src/components/misc/ProgressBar.vue");
22
- export const getSpinner = () => import("./src/components/misc/Spinner.vue");
23
- export const getFooter = () => import("./src/components/misc/Footer.vue");
22
+ export const getSpinner = () => import("./src/components/misc/ClassicSpinner.vue");
23
+ export const getFooter = () => import("./src/components/misc/FooterSection.vue");
24
24
  export const getLeftMenu = () => import("./src/components/misc/LeftMenu.vue");
25
- export const getPlayer = () => import("./src/components/misc/player/Player.vue");
26
- export const getSnackbar = () => import("./src/components/misc/Snackbar.vue");
25
+ export const getPlayer = () => import("./src/components/misc/player/PlayerComponent.vue");
26
+ export const getSnackbar = () => import("./src/components/misc/SnackBar.vue");
27
27
  export const getTopBar = () => import("./src/components/misc/TopBar.vue");
28
28
  export const getHomeDropdown = () => import("./src/components/misc/HomeDropdown.vue");
29
29
  export const getMessageModal = () => import("./src/components/misc/modal/MessageModal.vue");
30
30
  export const getErrorMessage = () => import("./src/components/misc/ErrorMessage.vue");
31
- export const getPopover = () => import("./src/components/misc/Popover.vue");
31
+ export const getPopover = () => import("./src/components/misc/ClassicPopover.vue");
32
32
  export const getClassicModal = () => import("./src/components/misc/modal/ClassicModal.vue");
33
33
 
34
34
 
@@ -65,7 +65,7 @@ export const getClassicRadio = () => import("./src/components/form/ClassicRadio.
65
65
  export const getClassicLoading = () => import("./src/components/form/ClassicLoading.vue");
66
66
  export const getClassicSelect = () => import("./src/components/form/ClassicSelect.vue");
67
67
  export const getClassicDatePicker = () => import("./src/components/form/ClassicDatePicker.vue");
68
- export const getPaginate = () => import("./src/components/display/list/Paginate.vue");
68
+ export const getPaginate = () => import("./src/components/display/list/PaginateSection.vue");
69
69
  export const getPaginateParams = () => import("./src/components/display/list/PaginateParams.vue");
70
70
  export const getListPaginate = () => import("./src/components/display/list/ListPaginate.vue");
71
71
  export const getClassicMultiselect = () => import("./src/components/form/ClassicMultiselect.vue");
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@saooti/octopus-sdk",
3
- "version": "37.0.6",
3
+ "version": "37.0.8",
4
4
  "private": false,
5
5
  "description": "Javascript SDK for using octopus",
6
6
  "author": "Saooti",
@@ -10,53 +10,53 @@
10
10
  "dev": "vite",
11
11
  "lint": "eslint --ext .js,.vue --fix src",
12
12
  "build_bundle": "vue-cli-service build --target lib --name octopus ./index.js",
13
- "prettifile": "prettier --single-quote --trailing-comma es5 --write",
14
- "prettify": "prettier --single-quote --trailing-comma es5 --write src/**/**/**/*.{js,vue}",
15
13
  "sonar": "node sonarqube-scanner.js",
16
14
  "test": "jest --coverage"
17
15
  },
18
16
  "dependencies": {
19
17
  "@popperjs/core": "^2.11.8",
20
18
  "@saooti/octopus-api": "^0.34.3",
21
- "@tiptap/extension-link": "^2.0.3",
22
- "@tiptap/pm": "^2.0.3",
23
- "@tiptap/extension-underline": "^2.0.3",
24
- "@tiptap/starter-kit": "^2.0.3",
25
- "@tiptap/vue-3": "^2.0.3",
19
+ "@tiptap/extension-link": "^2.0.4",
20
+ "@tiptap/extension-underline": "^2.0.4",
21
+ "@tiptap/pm": "^2.0.4",
22
+ "@tiptap/starter-kit": "^2.0.4",
23
+ "@tiptap/vue-3": "^2.0.4",
26
24
  "@vue/cli": "^5.0.8",
27
25
  "@vue/compat": "^3.3.4",
28
26
  "autoprefixer": "^10.4.14",
29
27
  "axios": "^1.4.0",
30
28
  "dayjs": "^1.11.9",
29
+ "eslint-config-prettier": "^8.8.0",
30
+ "eslint-plugin-prettier": "^5.0.0",
31
31
  "express": "^4.18.2",
32
- "hls.js": "^1.4.7",
33
- "humanize-duration": "^3.28.0",
34
- "jest": "^29.5.0",
32
+ "hls.js": "^1.4.9",
33
+ "humanize-duration": "^3.29.0",
34
+ "jest": "^29.6.1",
35
35
  "pinia": "^2.1.4",
36
36
  "qrcode.vue": "^3.4.0",
37
37
  "sass": "^1.63.6",
38
38
  "sonarqube-scanner": "^3.0.0",
39
- "swiper": "^9.3.2",
39
+ "swiper": "^10.0.4",
40
40
  "v-calendar": "^3.0.3",
41
- "vite": "^4.3.9",
41
+ "vite": "^4.4.4",
42
42
  "vue": "^3.3.4",
43
43
  "vue-i18n": "^9.2.2",
44
44
  "vue-recaptcha": "^2.0.3",
45
- "vue-router": "^4.2.2",
45
+ "vue-router": "^4.2.4",
46
46
  "vue-select": "^4.0.0-beta.6",
47
47
  "vue3-lazyload": "^0.3.6",
48
48
  "vue3-swatches": "^1.2.3"
49
49
  },
50
50
  "devDependencies": {
51
51
  "@types/vue-select": "^3.16.2",
52
- "@typescript-eslint/eslint-plugin": "^5.60.1",
53
- "@typescript-eslint/parser": "^5.60.1",
52
+ "@typescript-eslint/eslint-plugin": "^6.0.0",
53
+ "@typescript-eslint/parser": "^6.0.0",
54
54
  "@vitejs/plugin-vue": "^4.2.3",
55
55
  "@vue/compiler-sfc": "^3.3.4",
56
- "@vue/eslint-config-typescript": "^8.0.0",
57
- "eslint": "^8.44.0",
58
- "eslint-plugin-vue": "^7.17.0",
59
- "typescript": "^4.9.5"
56
+ "@vue/eslint-config-typescript": "^11.0.3",
57
+ "eslint": "^8.45.0",
58
+ "eslint-plugin-vue": "^9.15.1",
59
+ "typescript": "^5.1.6"
60
60
  },
61
61
  "eslintConfig": {
62
62
  "root": true,
@@ -71,14 +71,18 @@
71
71
  "plugin:vue/base",
72
72
  "plugin:vue/vue3-recommended",
73
73
  "plugin:vue/vue3-essential",
74
- "plugin:vue/vue3-strongly-recommended"
74
+ "plugin:vue/vue3-strongly-recommended",
75
+ "prettier",
76
+ "plugin:prettier/recommended"
75
77
  ],
78
+ "plugins": ["prettier"],
76
79
  "rules": {
77
80
  "no-console": "off",
78
81
  "no-debugger": "off",
79
82
  "@typescript-eslint/ban-ts-ignore": "off",
80
83
  "@typescript-eslint/ban-ts-comment": "off",
81
- "no-async-promise-executor": "off"
84
+ "no-async-promise-executor": "off",
85
+ "prettier/prettier": ["error", {}]
82
86
  },
83
87
  "parserOptions": {
84
88
  "parser": "@typescript-eslint/parser"
package/src/App.vue CHANGED
@@ -1,50 +1,45 @@
1
1
  <template>
2
- <div
3
- v-if="isInit"
4
- :key="reload"
5
- class="d-flex flex-column h-100 octopus-app"
6
- >
7
- <TopBar
8
- v-model:displayMenu="displayMenu"
9
- :is-education="false"
10
- />
2
+ <div v-if="isInit" :key="reload" class="d-flex flex-column h-100 octopus-app">
3
+ <TopBar v-model:displayMenu="displayMenu" :is-education="false" />
11
4
  <LeftMenu
12
5
  v-if="displayMenu"
13
6
  :is-education="false"
14
- @close="displayMenu=false"
7
+ @close="displayMenu = false"
15
8
  />
16
9
  <CategoryFilter />
17
10
  <router-view />
18
11
  <FooterOctopus />
19
- <Player />
12
+ <PlayerComponent />
20
13
  </div>
21
14
  </template>
22
15
 
23
16
  <script lang="ts">
24
- import TopBar from '@/components/misc/TopBar.vue';
25
- import FooterOctopus from '@/components/misc/Footer.vue';
26
- import Player from '@/components/misc/player/Player.vue';
27
- import CategoryFilter from '@/components/display/categories/CategoryFilter.vue';
28
- import { state } from './stores/ParamSdkStore';
29
- import { Rubriquage } from './stores/class/rubrique/rubriquage';
30
- import { RubriquageFilter } from './stores/class/rubrique/rubriquageFilter';
31
- import { Rubrique } from './stores/class/rubrique/rubrique';
32
- import initSDK from './components/mixins/init';
33
- import { useFilterStore } from '@/stores/FilterStore';
34
- import { useGeneralStore } from '@/stores/GeneralStore';
35
- import { mapState, mapActions } from 'pinia';
36
- import { defineAsyncComponent, defineComponent } from 'vue';
37
- import { Category } from './stores/class/general/category';
38
- const LeftMenu = defineAsyncComponent(() => import('@/components/misc/LeftMenu.vue'));
17
+ import TopBar from "@/components/misc/TopBar.vue";
18
+ import FooterOctopus from "@/components/misc/FooterSection.vue";
19
+ import PlayerComponent from "@/components/misc/player/PlayerComponent.vue";
20
+ import CategoryFilter from "@/components/display/categories/CategoryFilter.vue";
21
+ import { state } from "./stores/ParamSdkStore";
22
+ import { Rubriquage } from "./stores/class/rubrique/rubriquage";
23
+ import { RubriquageFilter } from "./stores/class/rubrique/rubriquageFilter";
24
+ import { Rubrique } from "./stores/class/rubrique/rubrique";
25
+ import initSDK from "./components/mixins/init";
26
+ import { useFilterStore } from "@/stores/FilterStore";
27
+ import { useGeneralStore } from "@/stores/GeneralStore";
28
+ import { mapState, mapActions } from "pinia";
29
+ import { defineAsyncComponent, defineComponent } from "vue";
30
+ import { Category } from "./stores/class/general/category";
31
+ const LeftMenu = defineAsyncComponent(
32
+ () => import("@/components/misc/LeftMenu.vue"),
33
+ );
39
34
  export default defineComponent({
40
- name: 'App',
41
-
35
+ name: "App",
36
+
42
37
  components: {
43
38
  TopBar,
44
39
  LeftMenu,
45
40
  CategoryFilter,
46
41
  FooterOctopus,
47
- Player
42
+ PlayerComponent,
48
43
  },
49
44
 
50
45
  mixins: [initSDK],
@@ -57,82 +52,96 @@ export default defineComponent({
57
52
  };
58
53
  },
59
54
 
60
- computed:{
61
- ...mapState(useFilterStore, ['filterRubriquage', 'filterOrgaId']),
62
- ...mapState(useGeneralStore, ['storedCategories']),
55
+ computed: {
56
+ ...mapState(useFilterStore, ["filterRubriquage", "filterOrgaId"]),
57
+ ...mapState(useGeneralStore, ["storedCategories"]),
63
58
  },
64
59
 
65
60
  watch: {
66
- '$i18n.locale'(){
61
+ "$i18n.locale"() {
67
62
  this.$forceUpdate();
68
63
  this.reload = !this.reload;
69
- }
64
+ },
70
65
  },
71
- async created(){
66
+ async created() {
72
67
  await this.initApp();
73
68
  },
74
- methods:{
75
- ...mapActions(useFilterStore, ['filterUpdateIab', 'filterUpdateRubrique']),
76
- async initApp(){
69
+ methods: {
70
+ ...mapActions(useFilterStore, ["filterUpdateIab", "filterUpdateRubrique"]),
71
+ async initApp() {
77
72
  await this.initSdk();
78
73
  await this.handleOrganisationFilter();
79
74
  this.handleIabIdFilter();
80
75
  this.handleRubriquesFilter();
81
- this.isInit =true;
76
+ this.isInit = true;
82
77
  },
83
- async handleOrganisationFilter(){
84
- let orgaId = '';
85
- if (this.$route.query.productor && 'string'===typeof this.$route.query.productor) {
78
+ async handleOrganisationFilter() {
79
+ let orgaId = "";
80
+ if (
81
+ this.$route.query.productor &&
82
+ "string" === typeof this.$route.query.productor
83
+ ) {
86
84
  orgaId = this.$route.query.productor;
87
- } else if(state.generalParameters.organisationId){
85
+ } else if (state.generalParameters.organisationId) {
88
86
  orgaId = state.generalParameters.organisationId;
89
87
  }
90
- if(''===orgaId){
88
+ if ("" === orgaId) {
91
89
  return;
92
90
  }
93
91
  await this.selectOrganisation(orgaId);
94
92
  },
95
- handleIabIdFilter(){
96
- if(this.filterOrgaId){
93
+ handleIabIdFilter() {
94
+ if (this.filterOrgaId) {
97
95
  return;
98
96
  }
99
- if (this.$route.query.iabId && 'string'===typeof this.$route.query.iabId) {
97
+ if (
98
+ this.$route.query.iabId &&
99
+ "string" === typeof this.$route.query.iabId
100
+ ) {
100
101
  const iabId = parseInt(this.$route.query.iabId, 10);
101
102
  const category = this.storedCategories.filter((c: Category) => {
102
103
  return c.id === iabId;
103
104
  });
104
- if(category.length){
105
+ if (category.length) {
105
106
  this.filterUpdateIab(category[0]);
106
107
  }
107
108
  }
108
109
  },
109
- handleRubriquesFilter(){
110
- if(0===this.filterRubriquage.length){
110
+ handleRubriquesFilter() {
111
+ if (0 === this.filterRubriquage.length) {
111
112
  return;
112
113
  }
113
- if (this.$route.query.rubriquesId && 'string'===typeof this.$route.query.rubriquesId) {
114
- const arrayFilter = this.$route.query.rubriquesId.split(',');
115
- const rubriquesFilter: Array<RubriquageFilter>=[];
114
+ if (
115
+ this.$route.query.rubriquesId &&
116
+ "string" === typeof this.$route.query.rubriquesId
117
+ ) {
118
+ const arrayFilter = this.$route.query.rubriquesId.split(",");
119
+ const rubriquesFilter: Array<RubriquageFilter> = [];
116
120
  const filterLength = arrayFilter.length;
117
121
  for (let index = 0; index < filterLength; index++) {
118
- const rubriqueFilter = arrayFilter[index].split(':');
122
+ const rubriqueFilter = arrayFilter[index].split(":");
119
123
  const rubriquage = this.filterRubriquage.find((x: Rubriquage) => {
120
124
  return x.rubriquageId === parseInt(rubriqueFilter[0]);
121
125
  });
122
- if(rubriquage){
126
+ if (rubriquage) {
123
127
  const rubrique = rubriquage.rubriques.find((x: Rubrique) => {
124
128
  return x.rubriqueId === parseInt(rubriqueFilter[1]);
125
129
  });
126
- rubriquesFilter.push({rubriquageId: rubriquage.rubriquageId, rubriqueId:rubrique.rubriqueId, nameRubriquage: rubriquage.title, nameRubrique :rubrique.name});
130
+ rubriquesFilter.push({
131
+ rubriquageId: rubriquage.rubriquageId,
132
+ rubriqueId: rubrique.rubriqueId,
133
+ nameRubriquage: rubriquage.title,
134
+ nameRubrique: rubrique.name,
135
+ });
127
136
  }
128
137
  }
129
- if(rubriquesFilter.length){
138
+ if (rubriquesFilter.length) {
130
139
  this.filterUpdateRubrique(rubriquesFilter);
131
140
  }
132
141
  }
133
- }
134
- }
135
- })
142
+ },
143
+ },
144
+ });
136
145
  </script>
137
146
 
138
147
  <style lang="scss" src="@/assets/octopus-library.scss"></style>
@@ -1,16 +1,16 @@
1
1
  import axios from "axios";
2
2
  enum ModuleApi {
3
- DEFAULT = 0,
4
- MEDIA = 1,
5
- COMMENT = 2,
6
- KEYCLOAK = 3,
7
- FRONTOFFICE = 4,
8
- PLAYER = 6,
9
- STORAGE = 8,
10
- STUDIO = 9,
11
- PROCESSOR= 10,
12
- SPEECHTOTEXT=11
13
- }
3
+ DEFAULT = 0,
4
+ MEDIA = 1,
5
+ COMMENT = 2,
6
+ KEYCLOAK = 3,
7
+ FRONTOFFICE = 4,
8
+ PLAYER = 6,
9
+ STORAGE = 8,
10
+ STUDIO = 9,
11
+ PROCESSOR = 10,
12
+ SPEECHTOTEXT = 11,
13
+ }
14
14
  /* eslint-disable */
15
15
  export default {
16
16
  async fetchData<Type>(moduleName: ModuleApi,wsPath:string, forceRefresh?:boolean): Promise<Type>{
@@ -30,4 +30,4 @@ export default {
30
30
  await axios.delete('/mock');
31
31
  },
32
32
  };
33
- /* eslint-enable */
33
+ /* eslint-enable */
@@ -5,4 +5,4 @@ export default{
5
5
  return true;
6
6
  },
7
7
  };
8
- /* eslint-enable */
8
+ /* eslint-enable */
@@ -2,7 +2,7 @@
2
2
  .arrow-transform {
3
3
  transform: rotate(180deg);
4
4
  }
5
- .bloc-paddle {
5
+ .bloc-paddle{
6
6
  align-items: flex-end;
7
7
  display: flex;
8
8
  width: 0.9rem;
@@ -17,34 +17,45 @@
17
17
  margin: 0.05rem;
18
18
  background: #fff;
19
19
  }
20
-
21
20
  .paddle1 {
22
- animation-duration: 0.6s;
23
- animation-name: slidein;
24
- animation-iteration-count: infinite;
25
- animation-direction: alternate;
21
+ height: 50%;
26
22
  }
27
-
28
23
  .paddle2 {
29
- animation-duration: 0.3s;
30
- animation-name: slidein2;
31
- animation-iteration-count: infinite;
32
- animation-direction: alternate;
24
+ height: 25%;
33
25
  }
34
-
35
26
  .paddle3 {
36
- animation-duration: 0.5s;
37
- animation-name: slidein3;
38
- animation-iteration-count: infinite;
39
- animation-direction: alternate;
27
+ height: 80%;
28
+ }
29
+
30
+ &.play-animation{
31
+ .paddle1 {
32
+ animation-duration: 0.6s;
33
+ animation-name: slidein;
34
+ animation-iteration-count: infinite;
35
+ animation-direction: alternate;
36
+ }
37
+
38
+ .paddle2 {
39
+ animation-duration: 0.3s;
40
+ animation-name: slidein2;
41
+ animation-iteration-count: infinite;
42
+ animation-direction: alternate;
43
+ }
44
+
45
+ .paddle3 {
46
+ animation-duration: 0.5s;
47
+ animation-name: slidein3;
48
+ animation-iteration-count: infinite;
49
+ animation-direction: alternate;
50
+ }
40
51
  }
41
52
  @keyframes slidein {
42
- 0% {
43
- height: 0;
44
- }
45
- 100% {
46
- height: 1rem;
47
- }
53
+ 0% {
54
+ height: 0;
55
+ }
56
+ 100% {
57
+ height: 1rem;
58
+ }
48
59
  }
49
60
 
50
61
  @keyframes slidein2 {
@@ -64,6 +75,7 @@
64
75
  height: 0;
65
76
  }
66
77
  }
78
+
67
79
  }
68
80
  .out-left-enter-active,
69
81
  .out-left-leave-active,
@@ -3,6 +3,6 @@
3
3
  </template>
4
4
 
5
5
  <script lang="ts">
6
- import { defineComponent } from 'vue'
7
- export default defineComponent({})
8
- </script>
6
+ import { defineComponent } from "vue";
7
+ export default defineComponent({});
8
+ </script>