@saooti/octopus-sdk 42.0.3 → 42.0.5

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 (1065) hide show
  1. package/dist/AccessibilityModal-Bk-lyxlI.mjs +119 -0
  2. package/dist/AccessibilityModal-Bk-lyxlI.mjs.map +1 -0
  3. package/dist/AccessibilityModal-DqRtmHwG.mjs.map +1 -0
  4. package/dist/AdsProgressBar-B6Mi09W8.mjs +28 -0
  5. package/dist/AdsProgressBar-B6Mi09W8.mjs.map +1 -0
  6. package/dist/AdsProgressBar-CAP7Zj--.mjs.map +1 -0
  7. package/dist/AdvancedSearch-CVglkFkt.mjs.map +1 -0
  8. package/dist/AdvancedSearch-D6vwfxo5.mjs +317 -0
  9. package/dist/AdvancedSearch-D6vwfxo5.mjs.map +1 -0
  10. package/dist/AdvancedSearch-DINUCkA8.mjs.map +1 -0
  11. package/dist/AdvancedSearch-XvvmHfah.mjs.map +1 -0
  12. package/dist/AmazonMusicIcon-BbyyRbP4.mjs +49 -0
  13. package/dist/AmazonMusicIcon-BbyyRbP4.mjs.map +1 -0
  14. package/dist/AmazonMusicIcon-D5vNh4HG.mjs.map +1 -0
  15. package/dist/ApplePodcastIcon-Cq5SSyRm.mjs +51 -0
  16. package/dist/ApplePodcastIcon-Cq5SSyRm.mjs.map +1 -0
  17. package/dist/ApplePodcastIcon-DtC4TS8H.mjs.map +1 -0
  18. package/dist/CategoryChooser-DWEL9V5p.mjs.map +1 -0
  19. package/dist/CategoryChooser-DklLXzrz.mjs +216 -0
  20. package/dist/CategoryChooser-DklLXzrz.mjs.map +1 -0
  21. package/dist/CategoryFilter-BYG8Fnzn.mjs.map +1 -0
  22. package/dist/CategoryFilter-Bg279Zhp.mjs.map +1 -0
  23. package/dist/CategoryFilter-CmS3Ny_9.mjs +205 -0
  24. package/dist/CategoryFilter-CmS3Ny_9.mjs.map +1 -0
  25. package/dist/CategoryList-CfMKagU8.mjs +153 -0
  26. package/dist/CategoryList-CfMKagU8.mjs.map +1 -0
  27. package/dist/CategoryList-CtYJ1Otd.mjs.map +1 -0
  28. package/dist/CategoryList-fb__vBIZ.mjs.map +1 -0
  29. package/dist/CategoryPage-BXpFZSoD.mjs.map +1 -0
  30. package/dist/CategoryPage-CjFCzM5T.mjs.map +1 -0
  31. package/dist/CategoryPage-D8ZeqW_O.mjs +41 -0
  32. package/dist/CategoryPage-D8ZeqW_O.mjs.map +1 -0
  33. package/dist/CategoryPage-DOpUFF1y.mjs.map +1 -0
  34. package/dist/CategorySearchFilter-1oMd2Mm5.mjs +54 -0
  35. package/dist/CategorySearchFilter-1oMd2Mm5.mjs.map +1 -0
  36. package/dist/CategorySearchFilter-CEGWqMSt.mjs.map +1 -0
  37. package/dist/ChapteringModal-Bj_VrtB1.mjs.map +1 -0
  38. package/dist/ChapteringModal-C35ILBs7.mjs +64 -0
  39. package/dist/ChapteringModal-C35ILBs7.mjs.map +1 -0
  40. package/dist/ChapteringModal-CN-qJH9j.mjs.map +1 -0
  41. package/dist/CheckIdentityModal-4XD5uK5v.mjs.map +1 -0
  42. package/dist/CheckIdentityModal-RQYssX9o.mjs.map +1 -0
  43. package/dist/CheckIdentityModal-ekQqQKIU.mjs +62 -0
  44. package/dist/CheckIdentityModal-ekQqQKIU.mjs.map +1 -0
  45. package/dist/ChooseEpisodesNumber-BbsEFK07.mjs +50 -0
  46. package/dist/ChooseEpisodesNumber-BbsEFK07.mjs.map +1 -0
  47. package/dist/ChooseEpisodesNumber-OlhXXsCa.mjs.map +1 -0
  48. package/dist/ClassicAccordion-H690GTb-.mjs +87 -0
  49. package/dist/ClassicAccordion-H690GTb-.mjs.map +1 -0
  50. package/dist/ClassicAccordion-S0e-IhFa.mjs.map +1 -0
  51. package/dist/ClassicAlert-D51F43qS.mjs +57 -0
  52. package/dist/ClassicAlert-D51F43qS.mjs.map +1 -0
  53. package/dist/ClassicAlert-DUQplMvs.mjs.map +1 -0
  54. package/dist/ClassicBigChip-BbWdjK3W.mjs.map +1 -0
  55. package/dist/ClassicBigChip-CMefjO08.mjs.map +1 -0
  56. package/dist/ClassicBigChip-CaUJ5EI5.mjs +33 -0
  57. package/dist/ClassicBigChip-CaUJ5EI5.mjs.map +1 -0
  58. package/dist/ClassicCheckbox-BHKCPtLR.mjs.map +1 -0
  59. package/dist/ClassicCheckbox-CqA5WUGc.mjs +113 -0
  60. package/dist/ClassicCheckbox-CqA5WUGc.mjs.map +1 -0
  61. package/dist/ClassicContentEditable-BSsnA6oo.mjs.map +1 -0
  62. package/dist/ClassicContentEditable-R2O8-zPZ.mjs +52 -0
  63. package/dist/ClassicContentEditable-R2O8-zPZ.mjs.map +1 -0
  64. package/dist/ClassicCopyButton-M9AP3MKD.mjs.map +1 -0
  65. package/dist/ClassicCopyButton-y5PyWjLR.mjs +69 -0
  66. package/dist/ClassicCopyButton-y5PyWjLR.mjs.map +1 -0
  67. package/dist/ClassicDatePicker-CS5ufjLj.mjs +226 -0
  68. package/dist/ClassicDatePicker-CS5ufjLj.mjs.map +1 -0
  69. package/dist/ClassicDatePicker-DWVn4oHu.mjs.map +1 -0
  70. package/dist/ClassicEmojiPicker-BJeHH_oM.mjs +74 -0
  71. package/dist/ClassicEmojiPicker-BJeHH_oM.mjs.map +1 -0
  72. package/dist/ClassicEmojiPicker-EQy5H_zL.mjs.map +1 -0
  73. package/dist/ClassicHelpButton-B6jXpEKT.mjs.map +1 -0
  74. package/dist/ClassicHelpButton-DkCQoPpA.mjs +57 -0
  75. package/dist/ClassicHelpButton-DkCQoPpA.mjs.map +1 -0
  76. package/dist/ClassicInputText-B7EAwP2N.mjs.map +1 -0
  77. package/dist/ClassicInputText-adAE0MPy.mjs +335 -0
  78. package/dist/ClassicInputText-adAE0MPy.mjs.map +1 -0
  79. package/dist/ClassicLazy-7mFHxG6O.mjs.map +1 -0
  80. package/dist/ClassicLazy-DKgiCdDI.mjs +92 -0
  81. package/dist/ClassicLazy-DKgiCdDI.mjs.map +1 -0
  82. package/dist/ClassicLoading-Crlw7cAx.mjs.map +1 -0
  83. package/dist/ClassicLoading-DZLIyuUd.mjs +52 -0
  84. package/dist/ClassicLoading-DZLIyuUd.mjs.map +1 -0
  85. package/dist/ClassicModal-CilwHp9p.mjs.map +1 -0
  86. package/dist/ClassicModal-DbRPVcJr.mjs +87 -0
  87. package/dist/ClassicModal-DbRPVcJr.mjs.map +1 -0
  88. package/dist/ClassicModalInBody-BkaRcZZx.mjs.map +1 -0
  89. package/dist/ClassicModalInBody-Dq9PBoaB.mjs +77 -0
  90. package/dist/ClassicModalInBody-Dq9PBoaB.mjs.map +1 -0
  91. package/dist/ClassicMultiselect-BEY-HpGk.mjs.map +1 -0
  92. package/dist/ClassicMultiselect-wJ9U_4b2.mjs +246 -0
  93. package/dist/ClassicMultiselect-wJ9U_4b2.mjs.map +1 -0
  94. package/dist/ClassicNav-Dvm8faD9.mjs.map +1 -0
  95. package/dist/ClassicNav-P2h4OFEY.mjs +65 -0
  96. package/dist/ClassicNav-P2h4OFEY.mjs.map +1 -0
  97. package/dist/ClassicPopover-BIyLKorz.mjs.map +1 -0
  98. package/dist/ClassicPopover-Bk5kf37e.mjs +261 -0
  99. package/dist/ClassicPopover-Bk5kf37e.mjs.map +1 -0
  100. package/dist/ClassicRadio-BwylgGYF.mjs.map +1 -0
  101. package/dist/ClassicRadio-Dr6od5uM.mjs +78 -0
  102. package/dist/ClassicRadio-Dr6od5uM.mjs.map +1 -0
  103. package/dist/ClassicRadioLabel-DIij8S-y.mjs +86 -0
  104. package/dist/ClassicRadioLabel-DIij8S-y.mjs.map +1 -0
  105. package/dist/ClassicRadioLabel-ynBzFxC2.mjs.map +1 -0
  106. package/dist/ClassicSearch-BPWOTzhw.mjs +76 -0
  107. package/dist/ClassicSearch-BPWOTzhw.mjs.map +1 -0
  108. package/dist/ClassicSearch-D5yT0JRA.mjs.map +1 -0
  109. package/dist/ClassicSelect-BaY2yvwP.mjs.map +1 -0
  110. package/dist/ClassicSelect-BeCuKMad.mjs +138 -0
  111. package/dist/ClassicSelect-BeCuKMad.mjs.map +1 -0
  112. package/dist/ClassicSpinner-CL99QR-h.mjs +39 -0
  113. package/dist/ClassicSpinner-CL99QR-h.mjs.map +1 -0
  114. package/dist/ClassicSpinner-lNq7TnmD.mjs.map +1 -0
  115. package/dist/ClassicTabs-Bcine4_p.mjs.map +1 -0
  116. package/dist/ClassicTabs-sNP268jp.mjs +52 -0
  117. package/dist/ClassicTabs-sNP268jp.mjs.map +1 -0
  118. package/dist/ClassicTagInput-DrIZVI0X.mjs +82 -0
  119. package/dist/ClassicTagInput-DrIZVI0X.mjs.map +1 -0
  120. package/dist/ClassicTagInput-HM3VUbHp.mjs.map +1 -0
  121. package/dist/ClassicWysiwyg-BKq8ExjM.mjs.map +1 -0
  122. package/dist/ClassicWysiwyg-CRx5L0lR.mjs +200 -0
  123. package/dist/ClassicWysiwyg-CRx5L0lR.mjs.map +1 -0
  124. package/dist/ClipboardModal-DcUIqJGT.mjs +64 -0
  125. package/dist/ClipboardModal-DcUIqJGT.mjs.map +1 -0
  126. package/dist/ClipboardModal-MJw-Q5H5.mjs.map +1 -0
  127. package/dist/ClipboardModal-VRWz6S2A.mjs.map +1 -0
  128. package/dist/CommentBasicView-BIiF59xV.mjs.map +1 -0
  129. package/dist/CommentBasicView-CmDziW-M.mjs +103 -0
  130. package/dist/CommentBasicView-CmDziW-M.mjs.map +1 -0
  131. package/dist/CommentInput-BH-j4xYE.mjs.map +1 -0
  132. package/dist/CommentInput-CCpv7RF8.mjs +150 -0
  133. package/dist/CommentInput-CCpv7RF8.mjs.map +1 -0
  134. package/dist/CommentInput-DOuugk5A.mjs.map +1 -0
  135. package/dist/CommentItem-B1wXPEZZ.mjs +194 -0
  136. package/dist/CommentItem-B1wXPEZZ.mjs.map +1 -0
  137. package/dist/CommentItem-DuJsZoIk.mjs.map +1 -0
  138. package/dist/CommentItem-XLeueLaZ.mjs.map +1 -0
  139. package/dist/CommentList-ByBLWHYE.mjs.map +1 -0
  140. package/dist/CommentList-CIoNgXiD.mjs.map +1 -0
  141. package/dist/CommentList-dSoD09Di.mjs +262 -0
  142. package/dist/CommentList-dSoD09Di.mjs.map +1 -0
  143. package/dist/CommentMoreActions-CnczLaid.mjs +248 -0
  144. package/dist/CommentMoreActions-CnczLaid.mjs.map +1 -0
  145. package/dist/CommentMoreActions-CyEIOrzQ.mjs.map +1 -0
  146. package/dist/CommentMoreActions-X9tC_I0A.mjs.map +1 -0
  147. package/dist/CommentName-CkGKXK3_.mjs +73 -0
  148. package/dist/CommentName-CkGKXK3_.mjs.map +1 -0
  149. package/dist/CommentName-rapSs0fp.mjs.map +1 -0
  150. package/dist/CommentName-sabBJAA8.mjs.map +1 -0
  151. package/dist/CommentParentInfo-CQXTtdBn.mjs.map +1 -0
  152. package/dist/CommentParentInfo-D3nI0C85.mjs.map +1 -0
  153. package/dist/CommentParentInfo-J1vHOCm3.mjs +47 -0
  154. package/dist/CommentParentInfo-J1vHOCm3.mjs.map +1 -0
  155. package/dist/CommentPlayer-70dIz2Rg.mjs +67 -0
  156. package/dist/CommentPlayer-70dIz2Rg.mjs.map +1 -0
  157. package/dist/CommentPlayer-BVhVIPgD.mjs.map +1 -0
  158. package/dist/CommentPlayer-Cfa-z5qQ.mjs.map +1 -0
  159. package/dist/CommentSection-2kJz9TRg.mjs.map +1 -0
  160. package/dist/CommentSection-Bz6q4N6d.mjs +113 -0
  161. package/dist/CommentSection-Bz6q4N6d.mjs.map +1 -0
  162. package/dist/CommentSection-DRpvhHqB.mjs.map +1 -0
  163. package/dist/CommentStore-BFkEAz_S.mjs.map +1 -0
  164. package/dist/CommentStore-BjQ0AGHa.mjs +355 -0
  165. package/dist/CommentStore-BjQ0AGHa.mjs.map +1 -0
  166. package/dist/ContractPreviewModal-DhoEBsqo.mjs +75 -0
  167. package/dist/ContractPreviewModal-DhoEBsqo.mjs.map +1 -0
  168. package/dist/ContractPreviewModal-DjCwrq7e.mjs.map +1 -0
  169. package/dist/ContractPreviewModal-Dqyo5xUg.mjs.map +1 -0
  170. package/dist/CountDown-CAUtA0Vp.mjs.map +1 -0
  171. package/dist/CountDown-Ce0nxiby.mjs +28 -0
  172. package/dist/CountDown-Ce0nxiby.mjs.map +1 -0
  173. package/dist/CountdownOctopus-CR9zvBmW.mjs +34 -0
  174. package/dist/CountdownOctopus-CR9zvBmW.mjs.map +1 -0
  175. package/dist/CountdownOctopus-i6-l0aLA.mjs.map +1 -0
  176. package/dist/DateFilter-DD9cY_la.mjs.map +1 -0
  177. package/dist/DateFilter-DkU1MSa-.mjs +101 -0
  178. package/dist/DateFilter-DkU1MSa-.mjs.map +1 -0
  179. package/dist/DeezerIcon-BUdIKeqN.mjs.map +1 -0
  180. package/dist/DeezerIcon-D4cq4iPQ.mjs +49 -0
  181. package/dist/DeezerIcon-D4cq4iPQ.mjs.map +1 -0
  182. package/dist/DownloadPodcastButton-C5jl5QoM.mjs.map +1 -0
  183. package/dist/DownloadPodcastButton-Cbtq6s60.mjs.map +1 -0
  184. package/dist/DownloadPodcastButton-DLMz5Siw.mjs +39 -0
  185. package/dist/DownloadPodcastButton-DLMz5Siw.mjs.map +1 -0
  186. package/dist/EditCommentModal-3jlBtPco.mjs.map +1 -0
  187. package/dist/EditCommentModal-B5xc_AC2.mjs.map +1 -0
  188. package/dist/EditCommentModal-_iEit4p4.mjs +134 -0
  189. package/dist/EditCommentModal-_iEit4p4.mjs.map +1 -0
  190. package/dist/EditFtpIcon-D5VaHXWl.mjs.map +1 -0
  191. package/dist/EditFtpIcon-Do2G7rmM.mjs +47 -0
  192. package/dist/EditFtpIcon-Do2G7rmM.mjs.map +1 -0
  193. package/dist/EmissionGroupChooser-CQ6wTihw.mjs.map +1 -0
  194. package/dist/EmissionGroupChooser-D3xCu4tW.mjs +55 -0
  195. package/dist/EmissionGroupChooser-D3xCu4tW.mjs.map +1 -0
  196. package/dist/EmissionGroupChooser-DheKnUrA.mjs.map +1 -0
  197. package/dist/EmissionInlineList-CPgw-_jC.mjs +129 -0
  198. package/dist/EmissionInlineList-CPgw-_jC.mjs.map +1 -0
  199. package/dist/EmissionInlineList-CeCcnsfP.mjs.map +1 -0
  200. package/dist/EmissionInlineList-DD5tKHdg.mjs.map +1 -0
  201. package/dist/EmissionItem-Cl53in7H.mjs +144 -0
  202. package/dist/EmissionItem-Cl53in7H.mjs.map +1 -0
  203. package/dist/EmissionItem-DO1G4P7I.mjs.map +1 -0
  204. package/dist/EmissionItem-Dyamdgqm.mjs.map +1 -0
  205. package/dist/EmissionItem-NQh_dIN1.mjs.map +1 -0
  206. package/dist/EmissionList-CNizEXC9.mjs.map +1 -0
  207. package/dist/EmissionList-D4DFhKPt.mjs +286 -0
  208. package/dist/EmissionList-D4DFhKPt.mjs.map +1 -0
  209. package/dist/EmissionList-DfhK6dgl.mjs.map +1 -0
  210. package/dist/EmissionList-JEE2Remj.mjs.map +1 -0
  211. package/dist/EmissionPage-B1OhP9b5.mjs.map +1 -0
  212. package/dist/EmissionPage-B3fju1Sc.mjs +247 -0
  213. package/dist/EmissionPage-B3fju1Sc.mjs.map +1 -0
  214. package/dist/EmissionPage-Cizyfg77.mjs.map +1 -0
  215. package/dist/EmissionPage-Dq4ECbbk.mjs.map +1 -0
  216. package/dist/EmissionPlayerItem-BzFck8k6.mjs +148 -0
  217. package/dist/EmissionPlayerItem-BzFck8k6.mjs.map +1 -0
  218. package/dist/EmissionPlayerItem-DhOuAEBr.mjs.map +1 -0
  219. package/dist/EmissionPlayerItem-DiM1VHun.mjs.map +1 -0
  220. package/dist/EmissionPresentationItem-CEjtj9mf.mjs +54 -0
  221. package/dist/EmissionPresentationItem-CEjtj9mf.mjs.map +1 -0
  222. package/dist/EmissionPresentationItem-DSCyFHjR.mjs.map +1 -0
  223. package/dist/EmissionPresentationItem-TpmURnni.mjs.map +1 -0
  224. package/dist/EmissionPresentationList-C80QlXif.mjs.map +1 -0
  225. package/dist/EmissionPresentationList-D1UcWrLn.mjs +104 -0
  226. package/dist/EmissionPresentationList-D1UcWrLn.mjs.map +1 -0
  227. package/dist/EmissionPresentationList-uApAVXPy.mjs.map +1 -0
  228. package/dist/EmissionsPage-B-Lgftdx.mjs.map +1 -0
  229. package/dist/EmissionsPage-CQm8C671.mjs +120 -0
  230. package/dist/EmissionsPage-CQm8C671.mjs.map +1 -0
  231. package/dist/EmissionsPage-CiV3jjrr.mjs.map +1 -0
  232. package/dist/EmissionsPage-Dop7rOfp.mjs.map +1 -0
  233. package/dist/Error403Page-8Z8InpBQ.mjs.map +1 -0
  234. package/dist/Error403Page-B4wfiYPh.mjs +56 -0
  235. package/dist/Error403Page-B4wfiYPh.mjs.map +1 -0
  236. package/dist/Error403Page-Du1eHk-4.mjs.map +1 -0
  237. package/dist/ErrorMessage-D2XAzxpC.mjs.map +1 -0
  238. package/dist/ErrorMessage-DcUdnqSU.mjs +33 -0
  239. package/dist/ErrorMessage-DcUdnqSU.mjs.map +1 -0
  240. package/dist/FooterGarSection-BlQXLOSL.mjs.map +1 -0
  241. package/dist/FooterGarSection-CFtIQW51.mjs.map +1 -0
  242. package/dist/FooterGarSection-DSu-iiPb.mjs +54 -0
  243. package/dist/FooterGarSection-DSu-iiPb.mjs.map +1 -0
  244. package/dist/FooterSection-CAGk8GmW.mjs +196 -0
  245. package/dist/FooterSection-CAGk8GmW.mjs.map +1 -0
  246. package/dist/FooterSection-CYVlRfnp.mjs.map +1 -0
  247. package/dist/FooterSection-LpLoB0-0.mjs.map +1 -0
  248. package/dist/GeneralStore-CUlq_NjO.mjs +45 -0
  249. package/dist/GeneralStore-CUlq_NjO.mjs.map +1 -0
  250. package/dist/HomeDropdown-DWCPphGw.mjs.map +1 -0
  251. package/dist/HomeDropdown-Dcyt9IM6.mjs +81 -0
  252. package/dist/HomeDropdown-Dcyt9IM6.mjs.map +1 -0
  253. package/dist/HomeDropdown-j5CLhQP9.mjs.map +1 -0
  254. package/dist/HomePage-D947-CtJ.mjs.map +1 -0
  255. package/dist/HomePage-DoZG25gj.mjs +142 -0
  256. package/dist/HomePage-DoZG25gj.mjs.map +1 -0
  257. package/dist/HomePage-DvbT5DWY.mjs.map +1 -0
  258. package/dist/HomePage-o7H3mupQ.mjs.map +1 -0
  259. package/dist/IHeartIcon-70F_rHQh.mjs.map +1 -0
  260. package/dist/IHeartIcon-D9X-Udgq.mjs +53 -0
  261. package/dist/IHeartIcon-D9X-Udgq.mjs.map +1 -0
  262. package/dist/LikeButton-DFkrvbgE.mjs.map +1 -0
  263. package/dist/LikeButton-gkh5hlOU.mjs +61 -0
  264. package/dist/LikeButton-gkh5hlOU.mjs.map +1 -0
  265. package/dist/LikeSection-BLrRZGlp.mjs +137 -0
  266. package/dist/LikeSection-BLrRZGlp.mjs.map +1 -0
  267. package/dist/LikeSection-DGKUdmkX.mjs.map +1 -0
  268. package/dist/LikeSection-no5OlBSF.mjs.map +1 -0
  269. package/dist/ListPaginate-BWWtCWZX.mjs +174 -0
  270. package/dist/ListPaginate-BWWtCWZX.mjs.map +1 -0
  271. package/dist/ListPaginate-DwmCOplg.mjs.map +1 -0
  272. package/dist/ListPaginate-QZ7t7y81.mjs.map +1 -0
  273. package/dist/LiveHorizontalList-BObeVsFj.mjs.map +1 -0
  274. package/dist/LiveHorizontalList-CDS6piq6.mjs +111 -0
  275. package/dist/LiveHorizontalList-CDS6piq6.mjs.map +1 -0
  276. package/dist/LiveHorizontalList-D_GkeFWa.mjs.map +1 -0
  277. package/dist/LiveHorizontalList-bMtchMkz.mjs.map +1 -0
  278. package/dist/LiveList-Bf2IwhCb.mjs +265 -0
  279. package/dist/LiveList-Bf2IwhCb.mjs.map +1 -0
  280. package/dist/LiveList-CLi1Bq0h.mjs.map +1 -0
  281. package/dist/LiveList-DZy0OfFl.mjs.map +1 -0
  282. package/dist/LiveList-uGUcdGMJ.mjs.map +1 -0
  283. package/dist/LivesPage-4xpcvJSQ.mjs.map +1 -0
  284. package/dist/LivesPage-BqEg0zT2.mjs.map +1 -0
  285. package/dist/LivesPage-CNPiAlnt.mjs.map +1 -0
  286. package/dist/LivesPage-CfYmRxnV.mjs +55 -0
  287. package/dist/LivesPage-CfYmRxnV.mjs.map +1 -0
  288. package/dist/MapPage-BDhnH1Kl.mjs.map +1 -0
  289. package/dist/MapPage-DjLcn4uk.mjs +276 -0
  290. package/dist/MapPage-DjLcn4uk.mjs.map +1 -0
  291. package/dist/MapPage-gETfgUu-.mjs.map +1 -0
  292. package/dist/MessageModal-B35dCbWB.mjs.map +1 -0
  293. package/dist/MessageModal-BWI3HTM0.mjs +116 -0
  294. package/dist/MessageModal-BWI3HTM0.mjs.map +1 -0
  295. package/dist/MobileMenu-B51ClvR4.mjs.map +1 -0
  296. package/dist/MobileMenu-BPtGG3Nt.mjs.map +1 -0
  297. package/dist/MobileMenu-CdvJhI_5.mjs +162 -0
  298. package/dist/MobileMenu-CdvJhI_5.mjs.map +1 -0
  299. package/dist/MonetizableFilter-BGQTUtwX.mjs.map +1 -0
  300. package/dist/MonetizableFilter-DOlNz4IP.mjs +66 -0
  301. package/dist/MonetizableFilter-DOlNz4IP.mjs.map +1 -0
  302. package/dist/NewsletterModal-3Hv1lNuN.mjs.map +1 -0
  303. package/dist/NewsletterModal-Cit-Ckrg.mjs.map +1 -0
  304. package/dist/NewsletterModal-Cq-ZW_Y_.mjs +64 -0
  305. package/dist/NewsletterModal-Cq-ZW_Y_.mjs.map +1 -0
  306. package/dist/OctopusMultiselect-CDijfV8W.mjs +325 -0
  307. package/dist/OctopusMultiselect-CDijfV8W.mjs.map +1 -0
  308. package/dist/OctopusMultiselect-tXNIWVpp.mjs.map +1 -0
  309. package/dist/OrganisationChooser-CH20oK8w.mjs +164 -0
  310. package/dist/OrganisationChooser-CH20oK8w.mjs.map +1 -0
  311. package/dist/OrganisationChooser-foPC-Rwo.mjs.map +1 -0
  312. package/dist/OrganisationChooser-m6bJKDBa.mjs.map +1 -0
  313. package/dist/OrganisationChooserLight-BGPuDaCx.mjs.map +1 -0
  314. package/dist/OrganisationChooserLight-DJHyYp6k.mjs.map +1 -0
  315. package/dist/OrganisationChooserLight-DqO0gfx7.mjs +63 -0
  316. package/dist/OrganisationChooserLight-DqO0gfx7.mjs.map +1 -0
  317. package/dist/PageLogout-Bc8zBpoo.mjs.map +1 -0
  318. package/dist/PageLogout-xQXWO2UF.mjs +21 -0
  319. package/dist/PageLogout-xQXWO2UF.mjs.map +1 -0
  320. package/dist/PageNotFound-BPFW-fzo.mjs.map +1 -0
  321. package/dist/PageNotFound-Dpv0tY-G.mjs +45 -0
  322. package/dist/PageNotFound-Dpv0tY-G.mjs.map +1 -0
  323. package/dist/PageNotFound-r_6Ei8S9.mjs.map +1 -0
  324. package/dist/PaginateParams-CbAaMAAM.mjs.map +1 -0
  325. package/dist/PaginateParams-CjJoKjUD.mjs +90 -0
  326. package/dist/PaginateParams-CjJoKjUD.mjs.map +1 -0
  327. package/dist/PaginateSection-BJ6iQai2.mjs.map +1 -0
  328. package/dist/PaginateSection-I875HiC5.mjs +184 -0
  329. package/dist/PaginateSection-I875HiC5.mjs.map +1 -0
  330. package/dist/ParticipantDescription-BsS6OEz9.mjs +57 -0
  331. package/dist/ParticipantDescription-BsS6OEz9.mjs.map +1 -0
  332. package/dist/ParticipantDescription-CwREwvZy.mjs.map +1 -0
  333. package/dist/ParticipantInlineList-BmE7OeIA.mjs.map +1 -0
  334. package/dist/ParticipantInlineList-C1BElB13.mjs +95 -0
  335. package/dist/ParticipantInlineList-C1BElB13.mjs.map +1 -0
  336. package/dist/ParticipantInlineList-DasTqo5z.mjs.map +1 -0
  337. package/dist/ParticipantItem-B3n9mXtJ.mjs +113 -0
  338. package/dist/ParticipantItem-B3n9mXtJ.mjs.map +1 -0
  339. package/dist/ParticipantItem-BOYW9dkV.mjs.map +1 -0
  340. package/dist/ParticipantItem-DiD5ANdf.mjs.map +1 -0
  341. package/dist/ParticipantPage-DI9J2hc9.mjs +161 -0
  342. package/dist/ParticipantPage-DI9J2hc9.mjs.map +1 -0
  343. package/dist/ParticipantPage-Dd0RQWvi.mjs.map +1 -0
  344. package/dist/ParticipantPage-DpEOyLsF.mjs.map +1 -0
  345. package/dist/ParticipantPage-KSNX-i8c.mjs.map +1 -0
  346. package/dist/ParticipantsPage-CC--r1ny.mjs.map +1 -0
  347. package/dist/ParticipantsPage-CVfRUkIM.mjs +215 -0
  348. package/dist/ParticipantsPage-CVfRUkIM.mjs.map +1 -0
  349. package/dist/ParticipantsPage-DF_C3M6I.mjs.map +1 -0
  350. package/dist/PlayVideoIcon-CQJTc1O7.mjs.map +1 -0
  351. package/dist/PlayVideoIcon-QfmloAS6.mjs +50 -0
  352. package/dist/PlayVideoIcon-QfmloAS6.mjs.map +1 -0
  353. package/dist/PlayerAnonymousModal-B_IyhbMR.mjs +67 -0
  354. package/dist/PlayerAnonymousModal-B_IyhbMR.mjs.map +1 -0
  355. package/dist/PlayerAnonymousModal-C_13dRO7.mjs.map +1 -0
  356. package/dist/PlayerAnonymousModal-DH3k1hXl.mjs.map +1 -0
  357. package/dist/PlayerCommonParameters-BF8-HN2S.mjs +32 -0
  358. package/dist/PlayerCommonParameters-BF8-HN2S.mjs.map +1 -0
  359. package/dist/PlayerCommonParameters-Dn-OIiO8.mjs.map +1 -0
  360. package/dist/PlayerCompact-BFLLRuDe.mjs.map +1 -0
  361. package/dist/PlayerCompact-DEeOaAfG.mjs.map +1 -0
  362. package/dist/PlayerCompact-DdCp2i_P.mjs +157 -0
  363. package/dist/PlayerCompact-DdCp2i_P.mjs.map +1 -0
  364. package/dist/PlayerComponent-BA2dlmRD.mjs.map +1 -0
  365. package/dist/PlayerComponent-CWtN6Je1.mjs +894 -0
  366. package/dist/PlayerComponent-CWtN6Je1.mjs.map +1 -0
  367. package/dist/PlayerComponent-im3MzRzo.mjs.map +1 -0
  368. package/dist/PlayerFmIcon-BGCKu8Y2.mjs +49 -0
  369. package/dist/PlayerFmIcon-BGCKu8Y2.mjs.map +1 -0
  370. package/dist/PlayerFmIcon-BxQ1g45P.mjs.map +1 -0
  371. package/dist/PlayerLarge-3OMY0_Tt.mjs.map +1 -0
  372. package/dist/PlayerLarge-BqjHyRf7.mjs.map +1 -0
  373. package/dist/PlayerLarge-I7FONG3B.mjs +153 -0
  374. package/dist/PlayerLarge-I7FONG3B.mjs.map +1 -0
  375. package/dist/PlayerParameters-fpNIoYO9.mjs.map +1 -0
  376. package/dist/PlayerParameters-y4IXdHiE.mjs +195 -0
  377. package/dist/PlayerParameters-y4IXdHiE.mjs.map +1 -0
  378. package/dist/PlayerPlayButton-Bm6Rp8bS.mjs +327 -0
  379. package/dist/PlayerPlayButton-Bm6Rp8bS.mjs.map +1 -0
  380. package/dist/PlayerPlayButton-DdIezDHQ.mjs.map +1 -0
  381. package/dist/PlayerPlayButton-T1Fr5nWh.mjs.map +1 -0
  382. package/dist/PlayerProgressBar-5jLv6Y7S.mjs.map +1 -0
  383. package/dist/PlayerProgressBar-8Q9iCyLs.mjs.map +1 -0
  384. package/dist/PlayerProgressBar-C38YCi9Z.mjs +75 -0
  385. package/dist/PlayerProgressBar-C38YCi9Z.mjs.map +1 -0
  386. package/dist/PlayerStore-BVK7ItEM.mjs.map +1 -0
  387. package/dist/PlayerStore-DB5dkc3c.mjs +230 -0
  388. package/dist/PlayerStore-DB5dkc3c.mjs.map +1 -0
  389. package/dist/PlayerVideo-Bud1rcxU.mjs +52 -0
  390. package/dist/PlayerVideo-Bud1rcxU.mjs.map +1 -0
  391. package/dist/PlayerVideo-CX3JS9bK.mjs.map +1 -0
  392. package/dist/PlayerVideo-D0mTmRCq.mjs.map +1 -0
  393. package/dist/PlayerVideoDigiteka-CiTtloWK.mjs +82 -0
  394. package/dist/PlayerVideoDigiteka-CiTtloWK.mjs.map +1 -0
  395. package/dist/PlayerVideoDigiteka-DjlfXgIZ.mjs.map +1 -0
  396. package/dist/PlayerVideoDigiteka-Dn3neAtr.mjs.map +1 -0
  397. package/dist/PlayerVideoHls-BJj1m924.mjs.map +1 -0
  398. package/dist/PlayerVideoHls-D909ECaY.mjs.map +1 -0
  399. package/dist/PlayerVideoHls-DjAlSV39.mjs +199 -0
  400. package/dist/PlayerVideoHls-DjAlSV39.mjs.map +1 -0
  401. package/dist/PlayerYoutubeEmbed-D0A4EWhU.mjs.map +1 -0
  402. package/dist/PlayerYoutubeEmbed-D5ZhaHbv.mjs +32 -0
  403. package/dist/PlayerYoutubeEmbed-D5ZhaHbv.mjs.map +1 -0
  404. package/dist/PlaylistPage-B-qoOMDN.mjs.map +1 -0
  405. package/dist/PlaylistPage-Botg5_jv.mjs.map +1 -0
  406. package/dist/PlaylistPage-C56-smtp.mjs.map +1 -0
  407. package/dist/PlaylistPage-aIWF8InW.mjs +180 -0
  408. package/dist/PlaylistPage-aIWF8InW.mjs.map +1 -0
  409. package/dist/PlaylistsPage-BSNE0BZ9.mjs.map +1 -0
  410. package/dist/PlaylistsPage-D2QbHMQu.mjs.map +1 -0
  411. package/dist/PlaylistsPage-Pnn895N-.mjs +322 -0
  412. package/dist/PlaylistsPage-Pnn895N-.mjs.map +1 -0
  413. package/dist/PocketCastIcon-Nm45VN7b.mjs.map +1 -0
  414. package/dist/PocketCastIcon-RfG93aY3.mjs +49 -0
  415. package/dist/PocketCastIcon-RfG93aY3.mjs.map +1 -0
  416. package/dist/PodcastAddictIcon-DRF7w4QM.mjs.map +1 -0
  417. package/dist/PodcastAddictIcon-v149CijV.mjs +52 -0
  418. package/dist/PodcastAddictIcon-v149CijV.mjs.map +1 -0
  419. package/dist/PodcastFilterList-CQ8vxYW7.mjs.map +1 -0
  420. package/dist/PodcastFilterList-CZzD028O.mjs.map +1 -0
  421. package/dist/PodcastFilterList-Khjz0Dny.mjs +179 -0
  422. package/dist/PodcastFilterList-Khjz0Dny.mjs.map +1 -0
  423. package/dist/PodcastFilterList-NSECjEDk.mjs.map +1 -0
  424. package/dist/PodcastImage-B-_N0gS4.mjs.map +1 -0
  425. package/dist/PodcastImage-BrfDAORW.mjs +148 -0
  426. package/dist/PodcastImage-BrfDAORW.mjs.map +1 -0
  427. package/dist/PodcastImage-DTrISr_U.mjs.map +1 -0
  428. package/dist/PodcastInlineList-BkHA9K7I.mjs +126 -0
  429. package/dist/PodcastInlineList-BkHA9K7I.mjs.map +1 -0
  430. package/dist/PodcastInlineList-Bq-uF-n4.mjs.map +1 -0
  431. package/dist/PodcastInlineList-DOkuKLLe.mjs.map +1 -0
  432. package/dist/PodcastInlineList-cWF3ymZw.mjs.map +1 -0
  433. package/dist/PodcastInlineListTemplate-BWUKzZU9.mjs.map +1 -0
  434. package/dist/PodcastInlineListTemplate-Bc479tGK.mjs.map +1 -0
  435. package/dist/PodcastInlineListTemplate-CiuRCR7t.mjs +206 -0
  436. package/dist/PodcastInlineListTemplate-CiuRCR7t.mjs.map +1 -0
  437. package/dist/PodcastIsPlaying-B2uIZI7V.mjs.map +1 -0
  438. package/dist/PodcastIsPlaying-DEviEW23.mjs +21 -0
  439. package/dist/PodcastIsPlaying-DEviEW23.mjs.map +1 -0
  440. package/dist/PodcastIsPlaying-DzzRwggt.mjs.map +1 -0
  441. package/dist/PodcastItem-6qkOg90q.mjs +213 -0
  442. package/dist/PodcastItem-6qkOg90q.mjs.map +1 -0
  443. package/dist/PodcastItem-DLD5hfk7.mjs.map +1 -0
  444. package/dist/PodcastItem-ltLOqm-_.mjs.map +1 -0
  445. package/dist/PodcastItem-naoxNwra.mjs.map +1 -0
  446. package/dist/PodcastList-5vFekv1m.mjs.map +1 -0
  447. package/dist/PodcastList-B60tYB2G.mjs.map +1 -0
  448. package/dist/PodcastList-B9xZlEH4.mjs +152 -0
  449. package/dist/PodcastList-B9xZlEH4.mjs.map +1 -0
  450. package/dist/PodcastList-BYBjpOL8.mjs.map +1 -0
  451. package/dist/PodcastList-BuDcObSr.mjs.map +1 -0
  452. package/dist/PodcastList-DQanN0Bb.mjs.map +1 -0
  453. package/dist/PodcastList-gdQbPtGY.mjs +234 -0
  454. package/dist/PodcastList-gdQbPtGY.mjs.map +1 -0
  455. package/dist/PodcastList-jCzCt_eR.mjs.map +1 -0
  456. package/dist/PodcastPage-B5WpXRPn.mjs.map +1 -0
  457. package/dist/PodcastPage-BFjlYZGL.mjs.map +1 -0
  458. package/dist/PodcastPage-BUlluWvM.mjs.map +1 -0
  459. package/dist/PodcastPage-D3aBkgdA.mjs +585 -0
  460. package/dist/PodcastPage-D3aBkgdA.mjs.map +1 -0
  461. package/dist/PodcastPlannedSpinner-BJDQ4VPx.mjs +20 -0
  462. package/dist/PodcastPlannedSpinner-BJDQ4VPx.mjs.map +1 -0
  463. package/dist/PodcastPlannedSpinner-BN7unEqf.mjs.map +1 -0
  464. package/dist/PodcastPlayBar-BotWFQoJ.mjs.map +1 -0
  465. package/dist/PodcastPlayBar-C7pDzmXr.mjs +65 -0
  466. package/dist/PodcastPlayBar-C7pDzmXr.mjs.map +1 -0
  467. package/dist/PodcastPlayBar-Dc71_DSn.mjs.map +1 -0
  468. package/dist/PodcastPlayBasicButton-9u92vEzq.mjs.map +1 -0
  469. package/dist/PodcastPlayBasicButton-BRbHFpVR.mjs +52 -0
  470. package/dist/PodcastPlayBasicButton-BRbHFpVR.mjs.map +1 -0
  471. package/dist/PodcastPlayBasicButton-Ds_kg-b1.mjs.map +1 -0
  472. package/dist/PodcastPlayButton-CMaudNx5.mjs +203 -0
  473. package/dist/PodcastPlayButton-CMaudNx5.mjs.map +1 -0
  474. package/dist/PodcastPlayButton-RjnyBBYO.mjs.map +1 -0
  475. package/dist/PodcastPlayButton-TpwW09jp.mjs.map +1 -0
  476. package/dist/PodcastPlaylistInlineList-BLAD7cMN.mjs.map +1 -0
  477. package/dist/PodcastPlaylistInlineList-BllOtctp.mjs +82 -0
  478. package/dist/PodcastPlaylistInlineList-BllOtctp.mjs.map +1 -0
  479. package/dist/PodcastPlaylistInlineList-CSITiCoX.mjs.map +1 -0
  480. package/dist/PodcastPlaylistInlineList-kO0naL9A.mjs.map +1 -0
  481. package/dist/PodcastPresentationList-BcKJ9XZ7.mjs +152 -0
  482. package/dist/PodcastPresentationList-BcKJ9XZ7.mjs.map +1 -0
  483. package/dist/PodcastPresentationList-CRCO4abw.mjs.map +1 -0
  484. package/dist/PodcastPresentationList-CSWhzlnX.mjs.map +1 -0
  485. package/dist/PodcastProgressBar-Ctp0I77F.mjs.map +1 -0
  486. package/dist/PodcastProgressBar-Dih-EtLn.mjs.map +1 -0
  487. package/dist/PodcastProgressBar-xAMieMIt.mjs +80 -0
  488. package/dist/PodcastProgressBar-xAMieMIt.mjs.map +1 -0
  489. package/dist/PodcastRawTranscript-BbCPFt3l.mjs.map +1 -0
  490. package/dist/PodcastRawTranscript-CdKhzP8l.mjs +146 -0
  491. package/dist/PodcastRawTranscript-CdKhzP8l.mjs.map +1 -0
  492. package/dist/PodcastRawTranscript-Cp0XSlnz.mjs.map +1 -0
  493. package/dist/PodcastRubriqueList-BGiDpOsb.mjs.map +1 -0
  494. package/dist/PodcastRubriqueList-BqhnhoEz.mjs +65 -0
  495. package/dist/PodcastRubriqueList-BqhnhoEz.mjs.map +1 -0
  496. package/dist/PodcastRubriqueList-CPaVKHY5.mjs.map +1 -0
  497. package/dist/PodcastSeasonInfo-BwD--f9z.mjs +37 -0
  498. package/dist/PodcastSeasonInfo-BwD--f9z.mjs.map +1 -0
  499. package/dist/PodcastSeasonInfo-DL_CsYTY.mjs.map +1 -0
  500. package/dist/PodcastSwiperList-C2H-uWk9.mjs.map +1 -0
  501. package/dist/PodcastSwiperList-CY2NOyCN.mjs.map +1 -0
  502. package/dist/PodcastSwiperList-Cj4G10ln.mjs.map +1 -0
  503. package/dist/PodcastSwiperList-DI-90c4F.mjs +191 -0
  504. package/dist/PodcastSwiperList-DI-90c4F.mjs.map +1 -0
  505. package/dist/PodcastmakerHeader-BubtZY7u.mjs.map +1 -0
  506. package/dist/PodcastmakerHeader-CURC8nyy.mjs.map +1 -0
  507. package/dist/PodcastmakerHeader-DLy0YSgm.mjs +46 -0
  508. package/dist/PodcastmakerHeader-DLy0YSgm.mjs.map +1 -0
  509. package/dist/PodcastsPage-CYG8bXaW.mjs.map +1 -0
  510. package/dist/PodcastsPage-DZlGTlaX.mjs +135 -0
  511. package/dist/PodcastsPage-DZlGTlaX.mjs.map +1 -0
  512. package/dist/PodcastsPage-PTwwATNT.mjs.map +1 -0
  513. package/dist/PodcastsPage-dOgLCDY5.mjs.map +1 -0
  514. package/dist/PresentationLayout-BWueEtST.mjs +70 -0
  515. package/dist/PresentationLayout-BWueEtST.mjs.map +1 -0
  516. package/dist/PresentationLayout-BmcVqEo8.mjs.map +1 -0
  517. package/dist/ProductorSearch-Bp7S8Sut.mjs.map +1 -0
  518. package/dist/ProductorSearch-ir5rkehT.mjs +132 -0
  519. package/dist/ProductorSearch-ir5rkehT.mjs.map +1 -0
  520. package/dist/ProductorSearch-yQPCj7Pa.mjs.map +1 -0
  521. package/dist/ProgressBar-B6z6oHHm.mjs.map +1 -0
  522. package/dist/ProgressBar-DLbzpY3L.mjs.map +1 -0
  523. package/dist/ProgressBar-ubd7c7H0.mjs +135 -0
  524. package/dist/ProgressBar-ubd7c7H0.mjs.map +1 -0
  525. package/dist/QrCode-BR3jPdJS.mjs +140 -0
  526. package/dist/QrCode-BR3jPdJS.mjs.map +1 -0
  527. package/dist/QrCode-C7IL9c3c.mjs.map +1 -0
  528. package/dist/QrCode-D86qgrdm.mjs.map +1 -0
  529. package/dist/QrCodeModal-9PCWJenP.mjs.map +1 -0
  530. package/dist/QrCodeModal-Cf1O9nwT.mjs.map +1 -0
  531. package/dist/QrCodeModal-DnREe0Jk.mjs +48 -0
  532. package/dist/QrCodeModal-DnREe0Jk.mjs.map +1 -0
  533. package/dist/RadioCurrently-BNzaJNoY.mjs +89 -0
  534. package/dist/RadioCurrently-BNzaJNoY.mjs.map +1 -0
  535. package/dist/RadioCurrently-Bz4kKaGc.mjs.map +1 -0
  536. package/dist/RadioCurrently-COaGoNF8.mjs.map +1 -0
  537. package/dist/RadioHistory-B_PBz6hY.mjs.map +1 -0
  538. package/dist/RadioHistory-DMGTXE4V.mjs +116 -0
  539. package/dist/RadioHistory-DMGTXE4V.mjs.map +1 -0
  540. package/dist/RadioHistory-Yhqmee1d.mjs.map +1 -0
  541. package/dist/RadioImage-B5jrzD8s.mjs.map +1 -0
  542. package/dist/RadioImage-BgrUZZIa.mjs +66 -0
  543. package/dist/RadioImage-BgrUZZIa.mjs.map +1 -0
  544. package/dist/RadioImage-D2MFmuqR.mjs.map +1 -0
  545. package/dist/RadioList-Bab4Pj9m.mjs.map +1 -0
  546. package/dist/RadioList-Bh8ub58m.mjs +95 -0
  547. package/dist/RadioList-Bh8ub58m.mjs.map +1 -0
  548. package/dist/RadioList-Ctbf98I9.mjs.map +1 -0
  549. package/dist/RadioPage-BY7YU_yL.mjs.map +1 -0
  550. package/dist/RadioPage-BtsGEI5i.mjs +105 -0
  551. package/dist/RadioPage-BtsGEI5i.mjs.map +1 -0
  552. package/dist/RadioPage-DtS3r-48.mjs.map +1 -0
  553. package/dist/RadioPlanning-B-sRUVGb.mjs.map +1 -0
  554. package/dist/RadioPlanning-D2RNEdEQ.mjs.map +1 -0
  555. package/dist/RadioPlanning-DMighzUU.mjs +257 -0
  556. package/dist/RadioPlanning-DMighzUU.mjs.map +1 -0
  557. package/dist/RadioProgressBar-4MT37o9a.mjs.map +1 -0
  558. package/dist/RadioProgressBar-CiapCPN-.mjs +47 -0
  559. package/dist/RadioProgressBar-CiapCPN-.mjs.map +1 -0
  560. package/dist/RadioProgressBar-DrxSXvmY.mjs.map +1 -0
  561. package/dist/RadiolineIcon-CIePjE9k.mjs.map +1 -0
  562. package/dist/RadiolineIcon-QP88nzG8.mjs +50 -0
  563. package/dist/RadiolineIcon-QP88nzG8.mjs.map +1 -0
  564. package/dist/RecaptchaModal-BThWkUuj.mjs.map +1 -0
  565. package/dist/RecaptchaModal-BkETInqb.mjs.map +1 -0
  566. package/dist/RecaptchaModal-DlThDzSF.mjs +119 -0
  567. package/dist/RecaptchaModal-DlThDzSF.mjs.map +1 -0
  568. package/dist/ReportAbuseModal-BfYBle6z.mjs.map +1 -0
  569. package/dist/ReportAbuseModal-Bnhfpowa.mjs.map +1 -0
  570. package/dist/ReportAbuseModal-Pd8P9tNB.mjs +107 -0
  571. package/dist/ReportAbuseModal-Pd8P9tNB.mjs.map +1 -0
  572. package/dist/RightsIndicator-COEtdoj_.mjs.map +1 -0
  573. package/dist/RightsIndicator-CZtSrb5K.mjs.map +1 -0
  574. package/dist/RightsIndicator-DNmA3L9O.mjs.map +1 -0
  575. package/dist/RightsIndicator-DYhqEbAB.mjs +69 -0
  576. package/dist/RightsIndicator-DYhqEbAB.mjs.map +1 -0
  577. package/dist/RightsWrapper-BHIinXXL.mjs.map +1 -0
  578. package/dist/RightsWrapper-CewAJoDY.mjs.map +1 -0
  579. package/dist/RightsWrapper-Cz5TnSUC.mjs +164 -0
  580. package/dist/RightsWrapper-Cz5TnSUC.mjs.map +1 -0
  581. package/dist/RubriqueChoice-BN4nirmx.mjs +120 -0
  582. package/dist/RubriqueChoice-BN4nirmx.mjs.map +1 -0
  583. package/dist/RubriqueChoice-BxmZoBZL.mjs.map +1 -0
  584. package/dist/RubriqueChoice-C4rglHV1.mjs.map +1 -0
  585. package/dist/RubriqueChooser-BceFw2x2.mjs.map +1 -0
  586. package/dist/RubriqueChooser-BgIvDDv7.mjs +213 -0
  587. package/dist/RubriqueChooser-BgIvDDv7.mjs.map +1 -0
  588. package/dist/RubriqueFilter-BwBU4kpV.mjs +168 -0
  589. package/dist/RubriqueFilter-BwBU4kpV.mjs.map +1 -0
  590. package/dist/RubriqueFilter-C7lAoJNq.mjs.map +1 -0
  591. package/dist/RubriqueFilter-CKF-seUZ.mjs.map +1 -0
  592. package/dist/RubriqueFilter-oDd4AytG.mjs.map +1 -0
  593. package/dist/RubriqueList-Cr0vXMew.mjs.map +1 -0
  594. package/dist/RubriqueList-D2PPns3m.mjs +169 -0
  595. package/dist/RubriqueList-D2PPns3m.mjs.map +1 -0
  596. package/dist/RubriqueList-zHKQE6OL.mjs.map +1 -0
  597. package/dist/RubriquePage-2ITwxYLr.mjs.map +1 -0
  598. package/dist/RubriquePage-Bpt2wwjK.mjs.map +1 -0
  599. package/dist/RubriquePage-CFrQ5Hw-.mjs +86 -0
  600. package/dist/RubriquePage-CFrQ5Hw-.mjs.map +1 -0
  601. package/dist/RubriquePage-Cf9QJQJB.mjs.map +1 -0
  602. package/dist/SearchOrder-CJ0Fj6Wd.mjs.map +1 -0
  603. package/dist/SearchOrder-CLl5slg5.mjs +70 -0
  604. package/dist/SearchOrder-CLl5slg5.mjs.map +1 -0
  605. package/dist/SearchPage-BopqRW_4.mjs.map +1 -0
  606. package/dist/SearchPage-BskiH0Hg.mjs +58 -0
  607. package/dist/SearchPage-BskiH0Hg.mjs.map +1 -0
  608. package/dist/SearchPage-D0Tz8ELe.mjs.map +1 -0
  609. package/dist/SearchPage-DLj9zYeL.mjs.map +1 -0
  610. package/dist/ShareAnonymous-B16PsWEJ.mjs +249 -0
  611. package/dist/ShareAnonymous-B16PsWEJ.mjs.map +1 -0
  612. package/dist/ShareAnonymous-CBVGRI6L.mjs.map +1 -0
  613. package/dist/ShareAnonymous-DmDaW3PH.mjs.map +1 -0
  614. package/dist/ShareModalPlayer-BV_1CKus.mjs.map +1 -0
  615. package/dist/ShareModalPlayer-SIkm_vpv.mjs.map +1 -0
  616. package/dist/ShareModalPlayer-lGW9vRFS.mjs +111 -0
  617. package/dist/ShareModalPlayer-lGW9vRFS.mjs.map +1 -0
  618. package/dist/ShareNewsletter-BigVU8EV.mjs.map +1 -0
  619. package/dist/ShareNewsletter-CRQBK_3P.mjs +181 -0
  620. package/dist/ShareNewsletter-CRQBK_3P.mjs.map +1 -0
  621. package/dist/ShareNewsletter-CleivWOu.mjs.map +1 -0
  622. package/dist/SharePlayer-CGlvYVn4.mjs.map +1 -0
  623. package/dist/SharePlayer-CSKYsE9H.mjs.map +1 -0
  624. package/dist/SharePlayer-Cdjz1NrC.mjs +319 -0
  625. package/dist/SharePlayer-Cdjz1NrC.mjs.map +1 -0
  626. package/dist/SharePlayerColors-D-9MoYm6.mjs.map +1 -0
  627. package/dist/SharePlayerColors-p_LreBcc.mjs +61 -0
  628. package/dist/SharePlayerColors-p_LreBcc.mjs.map +1 -0
  629. package/dist/SharePlayerRadio-BJBbDNn5.mjs.map +1 -0
  630. package/dist/SharePlayerRadio-DbHw7Vcn.mjs +99 -0
  631. package/dist/SharePlayerRadio-DbHw7Vcn.mjs.map +1 -0
  632. package/dist/SharePlayerRadio-OMXyRc4D.mjs.map +1 -0
  633. package/dist/SharePlayerTypes-BTWxUJWi.mjs +206 -0
  634. package/dist/SharePlayerTypes-BTWxUJWi.mjs.map +1 -0
  635. package/dist/SharePlayerTypes-C2_JNU6C.mjs.map +1 -0
  636. package/dist/SharePlayerTypes-DBERUe0_.mjs.map +1 -0
  637. package/dist/ShareSocialsButtons-Bwh9bMoR.mjs +132 -0
  638. package/dist/ShareSocialsButtons-Bwh9bMoR.mjs.map +1 -0
  639. package/dist/ShareSocialsButtons-CMOEQdYB.mjs.map +1 -0
  640. package/dist/ShareSocialsButtons-D0b8OawP.mjs.map +1 -0
  641. package/dist/SimpleLayout-BRjk598k.mjs.map +1 -0
  642. package/dist/SimpleLayout-D9uJF7mS.mjs +28 -0
  643. package/dist/SimpleLayout-D9uJF7mS.mjs.map +1 -0
  644. package/dist/SimpleLayout-b-QQv5aQ.mjs.map +1 -0
  645. package/dist/SmartLinkPage-CSTfusv3.mjs.map +1 -0
  646. package/dist/SmartLinkPage-CeGDzza8.mjs +187 -0
  647. package/dist/SmartLinkPage-CeGDzza8.mjs.map +1 -0
  648. package/dist/SmartLinkPage-DGRvD-vv.mjs.map +1 -0
  649. package/dist/SnackBar-DdE1dYhi.mjs.map +1 -0
  650. package/dist/SnackBar-jRnNt--Z.mjs +150 -0
  651. package/dist/SnackBar-jRnNt--Z.mjs.map +1 -0
  652. package/dist/SubscribeButtons-CHsq-Vk7.mjs +160 -0
  653. package/dist/SubscribeButtons-CHsq-Vk7.mjs.map +1 -0
  654. package/dist/SubscribeButtons-CJhlLSWX.mjs.map +1 -0
  655. package/dist/SubscribeButtons-ChrHIXBv.mjs.map +1 -0
  656. package/dist/SwiperList-BKiF8jIc.mjs +170 -0
  657. package/dist/SwiperList-BKiF8jIc.mjs.map +1 -0
  658. package/dist/SwiperList-BoALb00d.mjs.map +1 -0
  659. package/dist/SwiperList-DBmjvvCX.mjs.map +1 -0
  660. package/dist/TagList-BECg0vNz.mjs.map +1 -0
  661. package/dist/TagList-DRJvO9Gr.mjs.map +1 -0
  662. package/dist/TagList-DiGc-7Rj.mjs +110 -0
  663. package/dist/TagList-DiGc-7Rj.mjs.map +1 -0
  664. package/dist/TagPage-Bn2cVKpN.mjs.map +1 -0
  665. package/dist/TagPage-C9x5XWOd.mjs.map +1 -0
  666. package/dist/TagPage-DchdAQV2.mjs.map +1 -0
  667. package/dist/TagPage-Vd8JH7-r.mjs +99 -0
  668. package/dist/TagPage-Vd8JH7-r.mjs.map +1 -0
  669. package/dist/TopBar-B20_SqNY.mjs.map +1 -0
  670. package/dist/TopBar-DRclhhd6.mjs.map +1 -0
  671. package/dist/TopBar-FHuZ4j9H.mjs +358 -0
  672. package/dist/TopBar-FHuZ4j9H.mjs.map +1 -0
  673. package/dist/TuninIcon-BplDWgtD.mjs.map +1 -0
  674. package/dist/TuninIcon-SHr7Y1qJ.mjs +49 -0
  675. package/dist/TuninIcon-SHr7Y1qJ.mjs.map +1 -0
  676. package/dist/UserButtonContent-B-AMExwJ.mjs.map +1 -0
  677. package/dist/UserButtonContent-Btivzl2V.mjs.map +1 -0
  678. package/dist/UserButtonContent-I7ahjnuS.mjs +163 -0
  679. package/dist/UserButtonContent-I7ahjnuS.mjs.map +1 -0
  680. package/dist/VastStore-BPwOrXvb.mjs +80 -0
  681. package/dist/VastStore-BPwOrXvb.mjs.map +1 -0
  682. package/dist/VideoModuleBox-Bw0xu9_f.mjs.map +1 -0
  683. package/dist/VideoModuleBox-C8zDhbqA.mjs.map +1 -0
  684. package/dist/VideoModuleBox-Cl6YoznO.mjs +70 -0
  685. package/dist/VideoModuleBox-Cl6YoznO.mjs.map +1 -0
  686. package/dist/VideoPage-B-lgTFnX.mjs.map +1 -0
  687. package/dist/VideoPage-B5Tp2PMs.mjs +222 -0
  688. package/dist/VideoPage-B5Tp2PMs.mjs.map +1 -0
  689. package/dist/VideoPage-X3dZyaQH.mjs.map +1 -0
  690. package/dist/XIcon-DAVMitPh.mjs +49 -0
  691. package/dist/XIcon-DAVMitPh.mjs.map +1 -0
  692. package/dist/XIcon-Dz4rI_Hd.mjs.map +1 -0
  693. package/dist/_plugin-vue_export-helper-BOaGB7Aw.mjs +8 -0
  694. package/dist/aggregatorsApi-hyFtV8aL.mjs.map +1 -0
  695. package/dist/api-tznrp2lH.mjs.map +1 -0
  696. package/dist/apiUtils-D4ULJJbh.mjs.map +1 -0
  697. package/dist/buttons-cdGcewjB.mjs.map +1 -0
  698. package/dist/buttons-kyb_6P3e.mjs.map +1 -0
  699. package/dist/buttons-uGrbDDaA.mjs +113 -0
  700. package/dist/buttons-uGrbDDaA.mjs.map +1 -0
  701. package/dist/classicApi-BKNiWOG4.mjs +1790 -0
  702. package/dist/classicApi-BKNiWOG4.mjs.map +1 -0
  703. package/dist/classicApi-DC7iamat.mjs.map +1 -0
  704. package/dist/config-C73GMJpz.mjs +9 -0
  705. package/dist/config-C73GMJpz.mjs.map +1 -0
  706. package/dist/cookiesHelper-BQksSais.mjs +23 -0
  707. package/dist/cookiesHelper-BQksSais.mjs.map +1 -0
  708. package/dist/displayHelper-CpXshNzz.mjs +22 -0
  709. package/dist/displayHelper-CpXshNzz.mjs.map +1 -0
  710. package/dist/domHelper-DTMIrMbs.mjs +15 -0
  711. package/dist/domHelper-DTMIrMbs.mjs.map +1 -0
  712. package/dist/downloadHelper-CWLRMcjc.mjs +36 -0
  713. package/dist/downloadHelper-CWLRMcjc.mjs.map +1 -0
  714. package/dist/downloadHelper-DB969RNb.mjs.map +1 -0
  715. package/dist/educationen-B0PNsHqt.mjs +18 -0
  716. package/dist/educationen-B0PNsHqt.mjs.map +1 -0
  717. package/dist/educationfr-DnXyASTX.mjs +6 -0
  718. package/dist/educationfr-DnXyASTX.mjs.map +1 -0
  719. package/dist/emission-ByePXT9Y.mjs +33 -0
  720. package/dist/emission-ByePXT9Y.mjs.map +1 -0
  721. package/dist/emissionApi-WS6yl56a.mjs.map +1 -0
  722. package/dist/groupsApi-CecqFbyg.mjs.map +1 -0
  723. package/dist/i18n-l4HCrPF3.mjs.map +1 -0
  724. package/dist/icons-1GR2yFzw.mjs.map +1 -0
  725. package/dist/icons-B4eHXcRy.mjs +18 -0
  726. package/dist/icons-B4eHXcRy.mjs.map +1 -0
  727. package/dist/index.css +7208 -2
  728. package/dist/index.d.ts +1 -0
  729. package/dist/index.mjs +735 -408
  730. package/dist/index.mjs.map +1 -0
  731. package/dist/keys-TjlLYNQE.mjs +18 -0
  732. package/dist/keys-TjlLYNQE.mjs.map +1 -0
  733. package/dist/localisation-iXoGtJ3j.mjs +13 -0
  734. package/dist/localisation-iXoGtJ3j.mjs.map +1 -0
  735. package/dist/logo_saooti_play_black-BLx_RUuM.mjs +6 -0
  736. package/dist/logo_saooti_play_black-BLx_RUuM.mjs.map +1 -0
  737. package/dist/messages-Czjqh0tU.mjs +2679 -0
  738. package/dist/messages-Czjqh0tU.mjs.map +1 -0
  739. package/dist/organisation-CxyRYjC0.mjs +19 -0
  740. package/dist/organisation-CxyRYjC0.mjs.map +1 -0
  741. package/dist/ouest_france_logo-WOgdbVGH.mjs +6 -0
  742. package/dist/ouest_france_logo-WOgdbVGH.mjs.map +1 -0
  743. package/dist/playlistApi-LcxgQmJH.mjs.map +1 -0
  744. package/dist/podcast-Da9L7I5Q.mjs +76 -0
  745. package/dist/podcast-Da9L7I5Q.mjs.map +1 -0
  746. package/dist/podcastApi-5-MtD1l_.mjs.map +1 -0
  747. package/dist/rolldown-runtime-D7D4PA-g.mjs +13 -0
  748. package/dist/src/components/composable/usePresentationItem.d.ts +1 -1
  749. package/dist/src/i18n.d.ts +8 -1
  750. package/dist/src/locale/messages.d.ts +30 -0
  751. package/dist/src/stores/ParamSdkStore.d.ts +6 -1
  752. package/dist/src/stores/class/general/organisation.d.ts +2 -0
  753. package/dist/stringHelper-DFr4Khve.mjs +15 -0
  754. package/dist/stringHelper-DFr4Khve.mjs.map +1 -0
  755. package/dist/tests-mocks.mjs +16 -14
  756. package/dist/tests-mocks.mjs.map +1 -0
  757. package/dist/tests.mjs +86 -51
  758. package/dist/tests.mjs.map +1 -0
  759. package/dist/transcriptionApi-Drk3sv6J.mjs.map +1 -0
  760. package/dist/types-8roXR0of.mjs +11 -0
  761. package/dist/types-8roXR0of.mjs.map +1 -0
  762. package/dist/useAdvancedParamInit-Ci4c333p.mjs +162 -0
  763. package/dist/useAdvancedParamInit-Ci4c333p.mjs.map +1 -0
  764. package/dist/useAdvancedParamInit-CpNDHede.mjs.map +1 -0
  765. package/dist/useCountdown-DPweZzmz.mjs +51 -0
  766. package/dist/useCountdown-DPweZzmz.mjs.map +1 -0
  767. package/dist/useDayjs-BqojyoqU.mjs +32 -0
  768. package/dist/useDayjs-BqojyoqU.mjs.map +1 -0
  769. package/dist/useDayjs-zt5R5ZIe.mjs.map +1 -0
  770. package/dist/useErrorHandler-DNz9da5N.mjs +19 -0
  771. package/dist/useErrorHandler-DNz9da5N.mjs.map +1 -0
  772. package/dist/useErrorHandler-Nce0QKlB.mjs.map +1 -0
  773. package/dist/useImageProxy-B2vNJKgd.mjs +20 -0
  774. package/dist/useImageProxy-B2vNJKgd.mjs.map +1 -0
  775. package/dist/useImageProxy-C7wjiN0F.mjs.map +1 -0
  776. package/dist/useOrgaComputed-D8ikvtGw.mjs.map +1 -0
  777. package/dist/useOrgaComputed-T8Mhcne0.mjs +19 -0
  778. package/dist/useOrgaComputed-T8Mhcne0.mjs.map +1 -0
  779. package/dist/usePlayerLogicProgress-CSdUmqxN.mjs +108 -0
  780. package/dist/usePlayerLogicProgress-CSdUmqxN.mjs.map +1 -0
  781. package/dist/usePlayerLogicProgress-DnNbZCWg.mjs.map +1 -0
  782. package/dist/usePodcastView-BJw3J1sE.mjs.map +1 -0
  783. package/dist/usePodcastView-DR83HM0j.mjs +56 -0
  784. package/dist/usePodcastView-DR83HM0j.mjs.map +1 -0
  785. package/dist/usePresentationItem-BLUjp4Le.mjs.map +1 -0
  786. package/dist/usePresentationItem-C28KKH4P.mjs.map +1 -0
  787. package/dist/usePresentationItem-rJkFlZFu.mjs +144 -0
  788. package/dist/usePresentationItem-rJkFlZFu.mjs.map +1 -0
  789. package/dist/useResizePhone-CpfFUmfV.mjs +37 -0
  790. package/dist/useResizePhone-CpfFUmfV.mjs.map +1 -0
  791. package/dist/useRights-JVTbEOUh.mjs +276 -0
  792. package/dist/useRights-JVTbEOUh.mjs.map +1 -0
  793. package/dist/useRights-Z6_G-y4s.mjs.map +1 -0
  794. package/dist/useRouteUpdateParams-DurlddRA.mjs +59 -0
  795. package/dist/useRouteUpdateParams-DurlddRA.mjs.map +1 -0
  796. package/dist/useRubriquesFilterComputed-CQxqKOWL.mjs.map +1 -0
  797. package/dist/useRubriquesFilterComputed-CWUxRSYK.mjs +13 -0
  798. package/dist/useRubriquesFilterComputed-CWUxRSYK.mjs.map +1 -0
  799. package/dist/useRubriquesFilterParam-D7JQhKT5.mjs.map +1 -0
  800. package/dist/useRubriquesFilterParam-U-wcZUul.mjs +36 -0
  801. package/dist/useRubriquesFilterParam-U-wcZUul.mjs.map +1 -0
  802. package/dist/useSeasonsManagement-D-ngDipg.mjs +44 -0
  803. package/dist/useSeasonsManagement-D-ngDipg.mjs.map +1 -0
  804. package/dist/useSelenium-DwQtyBRt.mjs +11 -0
  805. package/dist/useSelenium-DwQtyBRt.mjs.map +1 -0
  806. package/dist/useSeoTitleUrl-CrM1YzAc.mjs +31 -0
  807. package/dist/useSeoTitleUrl-CrM1YzAc.mjs.map +1 -0
  808. package/dist/useSharePath-Vh29oc9Z.mjs +70 -0
  809. package/dist/useSharePath-Vh29oc9Z.mjs.map +1 -0
  810. package/dist/useSharePlatforms-B8R3fZy9.mjs.map +1 -0
  811. package/dist/useSharePlatforms-D0v8XOk3.mjs.map +1 -0
  812. package/dist/useSharePlatforms-aq487WBa.mjs +415 -0
  813. package/dist/useSharePlatforms-aq487WBa.mjs.map +1 -0
  814. package/dist/useSimplePageParam-CL9Tbu3B.mjs.map +1 -0
  815. package/dist/useSimplePageParam-CPjjYD88.mjs +54 -0
  816. package/dist/useSimplePageParam-CPjjYD88.mjs.map +1 -0
  817. package/dist/useTagOf-JxYdEyRm.mjs +20 -0
  818. package/dist/useTagOf-JxYdEyRm.mjs.map +1 -0
  819. package/dist/useTranslation-B-nJSPAk.mjs +205 -0
  820. package/dist/useTranslation-B-nJSPAk.mjs.map +1 -0
  821. package/dist/useTranslation-DjbHwIm7.mjs.map +1 -0
  822. package/dist/usefetchRadioData-CHglTIFu.mjs.map +1 -0
  823. package/dist/usefetchRadioData-gMdg1_Yh.mjs +55 -0
  824. package/dist/usefetchRadioData-gMdg1_Yh.mjs.map +1 -0
  825. package/dist/youtubeVideoHelper-DOeaXxVp.mjs +16 -0
  826. package/dist/youtubeVideoHelper-DOeaXxVp.mjs.map +1 -0
  827. package/package.json +8 -8
  828. package/src/components/composable/usePresentationItem.ts +3 -1
  829. package/src/components/display/live/RadioCurrently.vue +3 -4
  830. package/src/components/layouts/PresentationItem.vue +8 -1
  831. package/src/components/layouts/PresentationLayout.vue +9 -3
  832. package/src/components/misc/ProgressBar.vue +0 -1
  833. package/src/components/misc/player/ads/AdsProgressBar.vue +17 -1
  834. package/src/components/misc/player/radio/RadioProgressBar.vue +16 -0
  835. package/src/stores/AuthStore.ts +10 -1
  836. package/dist/AccessibilityModal-CBIb3UQS.mjs +0 -93
  837. package/dist/AdsProgressBar-BwRrrKOT.mjs +0 -19
  838. package/dist/AdvancedSearch-CRM10skn.mjs +0 -249
  839. package/dist/AmazonMusicIcon-6zqZK6Q9.mjs +0 -39
  840. package/dist/ApplePodcastIcon-C3ogP5y5.mjs +0 -40
  841. package/dist/CategoryChooser-Ct0No4RM.mjs +0 -173
  842. package/dist/CategoryFilter-Brp-KFg7.mjs +0 -146
  843. package/dist/CategoryList-CMOJ2PnA.mjs +0 -107
  844. package/dist/CategoryPage-Bc37UcZy.mjs +0 -28
  845. package/dist/CategorySearchFilter-BRfxF0yK.mjs +0 -39
  846. package/dist/ChapteringModal-CyH6QLeE.mjs +0 -46
  847. package/dist/CheckIdentityModal-CHV9trKX.mjs +0 -51
  848. package/dist/ChooseEpisodesNumber-CXJO5dfs.mjs +0 -33
  849. package/dist/ClassicAccordion-Czni43ek.mjs +0 -71
  850. package/dist/ClassicAlert-1IB6N33c.mjs +0 -35
  851. package/dist/ClassicBigChip-D6QO8W-G.mjs +0 -25
  852. package/dist/ClassicCheckbox-xPu56Drn.mjs +0 -89
  853. package/dist/ClassicContentEditable-CWmtRihd.mjs +0 -45
  854. package/dist/ClassicCopyButton-DJ9T09fS.mjs +0 -52
  855. package/dist/ClassicDatePicker-BrPx6CHY.mjs +0 -187
  856. package/dist/ClassicEmojiPicker-2c55qjy6.mjs +0 -63
  857. package/dist/ClassicHelpButton-DdEJu6tX.mjs +0 -34
  858. package/dist/ClassicInputText-ILQDQz8R.mjs +0 -270
  859. package/dist/ClassicLazy-DhdsXyI4.mjs +0 -56
  860. package/dist/ClassicLoading-CXfMjpyl.mjs +0 -40
  861. package/dist/ClassicModal-Dl2IdzXZ.mjs +0 -63
  862. package/dist/ClassicModalInBody-D5-RfQ8Z.mjs +0 -58
  863. package/dist/ClassicMultiselect-DKdQdAtp.mjs +0 -201
  864. package/dist/ClassicNav-DYez6p1J.mjs +0 -47
  865. package/dist/ClassicPopover-6uo-YUgO.mjs +0 -167
  866. package/dist/ClassicRadio-BbJEgMB7.mjs +0 -61
  867. package/dist/ClassicRadioLabel-DgimkkQe.mjs +0 -76
  868. package/dist/ClassicSearch-CtL1cpnF.mjs +0 -63
  869. package/dist/ClassicSelect-BpA0jKN6.mjs +0 -111
  870. package/dist/ClassicSpinner-DFRDD51g.mjs +0 -28
  871. package/dist/ClassicTabs-DYOZLNK2.mjs +0 -40
  872. package/dist/ClassicTagInput-DiRwA8CF.mjs +0 -62
  873. package/dist/ClassicWysiwyg-CbBzD-21.mjs +0 -164
  874. package/dist/ClipboardModal-B0Jt9ME7.mjs +0 -56
  875. package/dist/CommentBasicView-CJgGRZXW.mjs +0 -76
  876. package/dist/CommentInput-ChEnqzNa.mjs +0 -111
  877. package/dist/CommentItem-BE3-5CFl.mjs +0 -155
  878. package/dist/CommentList-B0fDtqIH.mjs +0 -204
  879. package/dist/CommentMoreActions-DFTHxzHB.mjs +0 -191
  880. package/dist/CommentName-ByE5TV4u.mjs +0 -56
  881. package/dist/CommentParentInfo-DyzP495k.mjs +0 -36
  882. package/dist/CommentPlayer-2eRUFpll.mjs +0 -47
  883. package/dist/CommentSection-DQx3qX6H.mjs +0 -79
  884. package/dist/CommentStore-C4lkShsH.mjs +0 -279
  885. package/dist/ContractPreviewModal-BxOE6aiU.mjs +0 -53
  886. package/dist/CountDown-o6ye6yv1.mjs +0 -17
  887. package/dist/CountdownOctopus-D0X5hVBu.mjs +0 -23
  888. package/dist/DateFilter-67VvJ4ez.mjs +0 -79
  889. package/dist/DeezerIcon-CybxfijL.mjs +0 -39
  890. package/dist/DownloadPodcastButton-Dcgt8FfA.mjs +0 -30
  891. package/dist/EditCommentModal-K6D1-4gU.mjs +0 -114
  892. package/dist/EditFtpIcon-B1FO4hqc.mjs +0 -39
  893. package/dist/EmissionGroupChooser-B0UXS-d_.mjs +0 -44
  894. package/dist/EmissionInlineList-CRJ4pIxb.mjs +0 -113
  895. package/dist/EmissionItem-8WTkKsCa.mjs +0 -116
  896. package/dist/EmissionList-ucpW_ejS.mjs +0 -230
  897. package/dist/EmissionPage-B8Nlb52Y.mjs +0 -188
  898. package/dist/EmissionPlayerItem-BzuNcAsq.mjs +0 -119
  899. package/dist/EmissionPresentationItem-ZU93UKW2.mjs +0 -41
  900. package/dist/EmissionPresentationList-LY-FEWC2.mjs +0 -92
  901. package/dist/EmissionsPage-wzpDLmzO.mjs +0 -112
  902. package/dist/Error403Page-DLaOyud0.mjs +0 -40
  903. package/dist/ErrorMessage-B4gtlriP.mjs +0 -22
  904. package/dist/FooterGarSection-BwFRytaV.mjs +0 -39
  905. package/dist/FooterSection-VGdzyEZf.mjs +0 -148
  906. package/dist/GeneralStore-Darfv4af.mjs +0 -39
  907. package/dist/HomeDropdown-CNSPuJot.mjs +0 -66
  908. package/dist/HomePage-CGaCXQBm.mjs +0 -106
  909. package/dist/IHeartIcon-DP1otYre.mjs +0 -42
  910. package/dist/LikeButton-Cu8jAJHx.mjs +0 -40
  911. package/dist/LikeSection-D_q391TU.mjs +0 -96
  912. package/dist/ListPaginate-B-PYbP3K.mjs +0 -147
  913. package/dist/LiveHorizontalList-CDIDwBWJ.mjs +0 -77
  914. package/dist/LiveList-Dvxk12Cc.mjs +0 -206
  915. package/dist/LivesPage-BByFveAd.mjs +0 -40
  916. package/dist/MapPage-w7hUFr9g.mjs +0 -240
  917. package/dist/MessageModal-BcqS77v6.mjs +0 -101
  918. package/dist/MobileMenu-D19pTUkT.mjs +0 -136
  919. package/dist/MonetizableFilter-B7NHzXEY.mjs +0 -58
  920. package/dist/NewsletterModal-BekCWfJB.mjs +0 -53
  921. package/dist/OctopusMultiselect-CaLjXg_3.mjs +0 -234
  922. package/dist/OrganisationChooser-ywDaRPU9.mjs +0 -133
  923. package/dist/OrganisationChooserLight-CMNA-YR5.mjs +0 -48
  924. package/dist/PageLogout-CVZHOw8c.mjs +0 -12
  925. package/dist/PageNotFound-kY0Vk237.mjs +0 -37
  926. package/dist/PaginateParams-Bjz3ZI-5.mjs +0 -75
  927. package/dist/PaginateSection-Oip_5JHt.mjs +0 -137
  928. package/dist/ParticipantDescription-DVSfKvtg.mjs +0 -46
  929. package/dist/ParticipantInlineList-n3IcMXXU.mjs +0 -84
  930. package/dist/ParticipantItem-CoS5qVct.mjs +0 -91
  931. package/dist/ParticipantPage-CqwpZDjv.mjs +0 -129
  932. package/dist/ParticipantsPage-BzZFxuAX.mjs +0 -168
  933. package/dist/PlayVideoIcon-BhTQpMyL.mjs +0 -40
  934. package/dist/PlayerAnonymousModal-Clf2m_PO.mjs +0 -61
  935. package/dist/PlayerCommonParameters-x0zV7AoW.mjs +0 -27
  936. package/dist/PlayerCompact-ff2-h0Ys.mjs +0 -128
  937. package/dist/PlayerComponent-BIZ29VAP.mjs +0 -592
  938. package/dist/PlayerFmIcon-D7gURz4r.mjs +0 -39
  939. package/dist/PlayerLarge-C958Fkm_.mjs +0 -128
  940. package/dist/PlayerParameters-kVBMXQIb.mjs +0 -173
  941. package/dist/PlayerPlayButton-DL0e7DAU.mjs +0 -231
  942. package/dist/PlayerProgressBar-DK9ClWaE.mjs +0 -67
  943. package/dist/PlayerStore-DlQZRxsf.mjs +0 -166
  944. package/dist/PlayerVideo-BRkaIXH7.mjs +0 -35
  945. package/dist/PlayerVideoDigiteka-CNfWw0hs.mjs +0 -59
  946. package/dist/PlayerVideoHls-Czu2Xvob.mjs +0 -125
  947. package/dist/PlayerYoutubeEmbed-D-UrFhXm.mjs +0 -25
  948. package/dist/PlaylistPage-BV_3q5Pg.mjs +0 -135
  949. package/dist/PlaylistsPage-g82vXz51.mjs +0 -254
  950. package/dist/PocketCastIcon-CM5NDsDa.mjs +0 -39
  951. package/dist/PodcastAddictIcon-CW3Uxj4I.mjs +0 -42
  952. package/dist/PodcastFilterList-CpH9ALL0.mjs +0 -139
  953. package/dist/PodcastImage-Kr7qE9PW.mjs +0 -115
  954. package/dist/PodcastInlineList-CSPSuPXn.mjs +0 -117
  955. package/dist/PodcastInlineListTemplate-CBGWengl.mjs +0 -180
  956. package/dist/PodcastIsPlaying-CvZMCgrV.mjs +0 -17
  957. package/dist/PodcastItem-B6xZ9spO.mjs +0 -158
  958. package/dist/PodcastList-DM2kODR9.mjs +0 -113
  959. package/dist/PodcastList-DN7U6G3x.mjs +0 -184
  960. package/dist/PodcastPage-ClPlzjJY.mjs +0 -409
  961. package/dist/PodcastPlannedSpinner-DcDDays8.mjs +0 -12
  962. package/dist/PodcastPlayBar-C-7lR6Or.mjs +0 -39
  963. package/dist/PodcastPlayBasicButton-akh9XtTL.mjs +0 -44
  964. package/dist/PodcastPlayButton-CqjJC_GT.mjs +0 -118
  965. package/dist/PodcastPlaylistInlineList-DTJpiuMG.mjs +0 -63
  966. package/dist/PodcastPresentationList-B0D9wjP2.mjs +0 -130
  967. package/dist/PodcastProgressBar-CIf_zX6H.mjs +0 -66
  968. package/dist/PodcastRawTranscript-EqIv2k5F.mjs +0 -100
  969. package/dist/PodcastRubriqueList-DCchX3n9.mjs +0 -46
  970. package/dist/PodcastSeasonInfo-DDGSqj8M.mjs +0 -28
  971. package/dist/PodcastSwiperList-PSwifeRx.mjs +0 -164
  972. package/dist/PodcastmakerHeader-DpCkSoQE.mjs +0 -33
  973. package/dist/PodcastsPage-CSWymx6J.mjs +0 -123
  974. package/dist/PresentationLayout-LcZqb8bn.mjs +0 -62
  975. package/dist/ProductorSearch-l_LHvS3J.mjs +0 -91
  976. package/dist/ProgressBar-CB9kEepm.mjs +0 -112
  977. package/dist/QrCode-D-3wdYEC.mjs +0 -105
  978. package/dist/QrCodeModal-BAk2VQzU.mjs +0 -43
  979. package/dist/RadioCurrently-r21pyYBe.mjs +0 -57
  980. package/dist/RadioHistory-BNqw7gzG.mjs +0 -89
  981. package/dist/RadioImage-IbBgMDUL.mjs +0 -46
  982. package/dist/RadioList-CLjDwo6u.mjs +0 -70
  983. package/dist/RadioPage-Bx4i1Mpi.mjs +0 -72
  984. package/dist/RadioPlanning-Br27Ttix.mjs +0 -183
  985. package/dist/RadioProgressBar-Cb3AfYLQ.mjs +0 -31
  986. package/dist/RadiolineIcon-CxHZGhfr.mjs +0 -40
  987. package/dist/RecaptchaModal-CxtAdOpC.mjs +0 -95
  988. package/dist/ReportAbuseModal-iggcskxa.mjs +0 -92
  989. package/dist/RightsIndicator-D_7amy65.mjs +0 -58
  990. package/dist/RightsWrapper-Bo6Xza5_.mjs +0 -104
  991. package/dist/RubriqueChoice-DWvVVaMg.mjs +0 -101
  992. package/dist/RubriqueChooser-B7wvJeQc.mjs +0 -165
  993. package/dist/RubriqueFilter-CJDRNtiD.mjs +0 -119
  994. package/dist/RubriqueList-CISdSdFN.mjs +0 -117
  995. package/dist/RubriquePage-C8CF_iFS.mjs +0 -71
  996. package/dist/SearchOrder-D_dAhj9M.mjs +0 -62
  997. package/dist/SearchPage-DvLjGwKI.mjs +0 -38
  998. package/dist/ShareAnonymous-GQ600Owz.mjs +0 -189
  999. package/dist/ShareModalPlayer-pB-HAwc-.mjs +0 -87
  1000. package/dist/ShareNewsletter-Cdyw0GB9.mjs +0 -143
  1001. package/dist/SharePlayer-XribbnSm.mjs +0 -210
  1002. package/dist/SharePlayerColors-BpdifsHh.mjs +0 -49
  1003. package/dist/SharePlayerRadio-Co0G90iE.mjs +0 -66
  1004. package/dist/SharePlayerTypes-Crlc6fV2.mjs +0 -148
  1005. package/dist/ShareSocialsButtons-oPwpAJiG.mjs +0 -100
  1006. package/dist/SimpleLayout-DO6e66-u.mjs +0 -22
  1007. package/dist/SmartLinkPage-Bfe3J2rs.mjs +0 -131
  1008. package/dist/SnackBar-BL-mLRun.mjs +0 -128
  1009. package/dist/SubscribeButtons-BsUSeVE2.mjs +0 -120
  1010. package/dist/SwiperList-05VP6fwg.mjs +0 -119
  1011. package/dist/TagList-CpH_cvNv.mjs +0 -80
  1012. package/dist/TagPage-B7mbRbqr.mjs +0 -79
  1013. package/dist/TopBar-DljepaOt.mjs +0 -260
  1014. package/dist/TuninIcon-DENNxlP8.mjs +0 -39
  1015. package/dist/UserButtonContent-B20fPV-J.mjs +0 -125
  1016. package/dist/VastStore-8IiEgtQW.mjs +0 -71
  1017. package/dist/VideoModuleBox-DJdYQGMX.mjs +0 -58
  1018. package/dist/VideoPage-Bllo2Q-Y.mjs +0 -148
  1019. package/dist/XIcon-DNBT2Zgf.mjs +0 -39
  1020. package/dist/_plugin-vue_export-helper-B3ysoDQm.mjs +0 -8
  1021. package/dist/buttons-CWMRsA_g.mjs +0 -79
  1022. package/dist/classicApi-CT9k0xvp.mjs +0 -1176
  1023. package/dist/config-DMjLBcZ2.mjs +0 -7
  1024. package/dist/cookiesHelper-BQ3M1-Xr.mjs +0 -20
  1025. package/dist/displayHelper-DQtoqc_6.mjs +0 -11
  1026. package/dist/domHelper-BPw2kGCL.mjs +0 -12
  1027. package/dist/downloadHelper-DkfB6XQg.mjs +0 -23
  1028. package/dist/educationen-KT401RLo.mjs +0 -16
  1029. package/dist/educationfr-BIafOUp-.mjs +0 -4
  1030. package/dist/emission-CQ1VuxRc.mjs +0 -22
  1031. package/dist/icons-aOUoelo6.mjs +0 -11
  1032. package/dist/keys-CV5SBM1i.mjs +0 -4
  1033. package/dist/localisation-CBnt682X.mjs +0 -9
  1034. package/dist/logo_saooti_play_black-Doe3es2H.mjs +0 -4
  1035. package/dist/messages-DxUrH00s.mjs +0 -2677
  1036. package/dist/organisation-JgfYj1Jp.mjs +0 -17
  1037. package/dist/ouest_france_logo-9dPaEPNA.mjs +0 -4
  1038. package/dist/podcast-BoNHyuLe.mjs +0 -53
  1039. package/dist/rolldown-runtime-Dy4uBu1J.mjs +0 -11
  1040. package/dist/stringHelper-8Cu4x0-T.mjs +0 -13
  1041. package/dist/types-BMNwRfo9.mjs +0 -8
  1042. package/dist/useAdvancedParamInit-Y3eC3aep.mjs +0 -111
  1043. package/dist/useCountdown-vXzlLAgF.mjs +0 -32
  1044. package/dist/useDayjs-ayZHsoc2.mjs +0 -28
  1045. package/dist/useErrorHandler-Chh24Net.mjs +0 -12
  1046. package/dist/useImageProxy-C_wlfbSP.mjs +0 -16
  1047. package/dist/useOrgaComputed-CmlIJ5XC.mjs +0 -16
  1048. package/dist/usePlayerLogicProgress-B0mjPIEj.mjs +0 -68
  1049. package/dist/usePodcastView-wkow7peQ.mjs +0 -31
  1050. package/dist/usePresentationItem-C37nsJnQ.mjs +0 -100
  1051. package/dist/useResizePhone-4hSkK5pa.mjs +0 -28
  1052. package/dist/useRights-CXa0yDii.mjs +0 -221
  1053. package/dist/useRouteUpdateParams-DJLm3IAI.mjs +0 -55
  1054. package/dist/useRubriquesFilterComputed-goozXeIB.mjs +0 -11
  1055. package/dist/useRubriquesFilterParam-CrsdD0Oj.mjs +0 -32
  1056. package/dist/useSeasonsManagement-DwbmJywJ.mjs +0 -24
  1057. package/dist/useSelenium-DAM6EF3J.mjs +0 -9
  1058. package/dist/useSeoTitleUrl-UfPXDCPa.mjs +0 -25
  1059. package/dist/useSharePath-D9G8Jdlb.mjs +0 -40
  1060. package/dist/useSharePlatforms-B7Xnf_If.mjs +0 -322
  1061. package/dist/useSimplePageParam-D6TmZIPG.mjs +0 -39
  1062. package/dist/useTagOf-Btweq3v2.mjs +0 -17
  1063. package/dist/useTranslation-D3t40JaE.mjs +0 -139
  1064. package/dist/usefetchRadioData-knVpkZCB.mjs +0 -48
  1065. package/dist/youtubeVideoHelper-Cdlokujb.mjs +0 -14
@@ -0,0 +1,113 @@
1
+ import { i as useAuthStore } from "./classicApi-BKNiWOG4.mjs";
2
+ import { t as useCommentStore } from "./CommentStore-BjQ0AGHa.mjs";
3
+ import { computed, createBlock, createCommentVNode, createElementBlock, createElementVNode, createTextVNode, createVNode, defineAsyncComponent, defineComponent, normalizeClass, onBeforeMount, openBlock, ref, resolveDynamicComponent, toDisplayString, unref, vShow, watch, withCtx, withDirectives } from "vue";
4
+ import { useI18n } from "vue-i18n";
5
+ import RefreshIcon from "vue-material-design-icons/Refresh.vue";
6
+ //#region src/components/display/comments/CommentSection.vue?vue&type=script&setup=true&lang.ts
7
+ var _hoisted_1 = { class: "module-box" };
8
+ var _hoisted_2 = { class: "d-flex align-items-center" };
9
+ var _hoisted_3 = ["title"];
10
+ //#endregion
11
+ //#region src/components/display/comments/CommentSection.vue
12
+ var CommentSection_default = /* @__PURE__ */ defineComponent({
13
+ __name: "CommentSection",
14
+ props: {
15
+ podcast: {
16
+ default: void 0,
17
+ type: Object
18
+ },
19
+ inStudio: {
20
+ default: false,
21
+ type: Boolean
22
+ },
23
+ stateFilter: {
24
+ default: "",
25
+ type: String
26
+ }
27
+ },
28
+ emits: ["commentReceived"],
29
+ setup(__props, { emit: __emit }) {
30
+ const CommentList = defineAsyncComponent(() => import("./CommentList-dSoD09Di.mjs"));
31
+ const CommentInput = defineAsyncComponent(() => import("./CommentInput-CCpv7RF8.mjs"));
32
+ const props = __props;
33
+ const emit = __emit;
34
+ const reload = ref(false);
35
+ const configPodcast = ref(void 0);
36
+ const nbComments = ref(0);
37
+ const eventToHandle = ref(void 0);
38
+ const { t } = useI18n();
39
+ const commentStore = useCommentStore();
40
+ const authStore = useAuthStore();
41
+ const displayCommentSection = computed(() => canPostComment.value || nbComments.value > 0);
42
+ const canPostComment = computed(() => {
43
+ return commentStore.getCanPostComment(configPodcast.value, props.podcast, void 0 !== authStore.authOrgaId);
44
+ });
45
+ const eventActive = computed(() => void 0 !== props.podcast?.conferenceId);
46
+ watch(() => commentStore.commentEventToHandle, async () => {
47
+ if (!commentStore.commentEventToHandle.length || commentStore.commentPodcastId !== props.podcast?.podcastId) return;
48
+ eventToHandle.value = commentStore.commentEventToHandle[0];
49
+ commentStore.commentEventHandled();
50
+ emit("commentReceived");
51
+ }, { deep: true });
52
+ onBeforeMount(() => fetchPodcastCommentsConfig());
53
+ async function fetchPodcastCommentsConfig() {
54
+ if (!props.podcast?.podcastId) return;
55
+ configPodcast.value = await commentStore.getCommentsConfig(props.podcast);
56
+ if (!eventActive.value) return;
57
+ initLiveComments();
58
+ }
59
+ async function initLiveComments() {
60
+ if (!props.podcast?.podcastId || !props.podcast?.organisation.id) return;
61
+ if (!commentStore.commentInitialized) await commentStore.initialize();
62
+ await commentStore.initComments(props.podcast.podcastId, props.podcast.organisation.id);
63
+ }
64
+ function newComment(comment) {
65
+ if (eventActive.value) return;
66
+ eventToHandle.value = {
67
+ type: "CREATE",
68
+ comment
69
+ };
70
+ }
71
+ return (_ctx, _cache) => {
72
+ return withDirectives((openBlock(), createElementBlock("section", _hoisted_1, [
73
+ createElementVNode("div", _hoisted_2, [(openBlock(), createBlock(resolveDynamicComponent(__props.inStudio ? "div" : "h3"), { class: normalizeClass(__props.inStudio ? "m-1 fw-bold" : "mb-0 me-2") }, {
74
+ default: withCtx(() => [createTextVNode(toDisplayString(unref(t)("Podcast's comments")), 1)]),
75
+ _: 1
76
+ }, 8, ["class"])), createElementVNode("button", {
77
+ title: unref(t)("Refresh"),
78
+ class: "btn btn-transparent",
79
+ onClick: _cache[0] || (_cache[0] = ($event) => reload.value = !reload.value)
80
+ }, [createVNode(RefreshIcon)], 8, _hoisted_3)]),
81
+ canPostComment.value ? (openBlock(), createBlock(unref(CommentInput), {
82
+ key: 0,
83
+ podcast: __props.podcast,
84
+ onNewComment: newComment
85
+ }, null, 8, ["podcast"])) : createCommentVNode("", true),
86
+ createVNode(unref(CommentList), {
87
+ "nb-comments": nbComments.value,
88
+ "onUpdate:nbComments": _cache[1] || (_cache[1] = ($event) => nbComments.value = $event),
89
+ class: normalizeClass(__props.inStudio ? "mt-2" : "mt-5"),
90
+ podcast: __props.podcast,
91
+ "is-flat-list": __props.inStudio,
92
+ reload: reload.value,
93
+ config: configPodcast.value,
94
+ "event-to-handle": eventToHandle.value,
95
+ "state-filter": __props.stateFilter
96
+ }, null, 8, [
97
+ "nb-comments",
98
+ "class",
99
+ "podcast",
100
+ "is-flat-list",
101
+ "reload",
102
+ "config",
103
+ "event-to-handle",
104
+ "state-filter"
105
+ ])
106
+ ], 512)), [[vShow, displayCommentSection.value]]);
107
+ };
108
+ }
109
+ });
110
+ //#endregion
111
+ export { CommentSection_default as default };
112
+
113
+ //# sourceMappingURL=CommentSection-Bz6q4N6d.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"CommentSection-Bz6q4N6d.mjs","names":[],"sources":["../src/components/display/comments/CommentSection.vue","../src/components/display/comments/CommentSection.vue"],"sourcesContent":["<template>\n <section v-show=\"displayCommentSection\" class=\"module-box\">\n <div class=\"d-flex align-items-center\">\n <component \n :is=\"inStudio? 'div':'h3'\" \n :class=\"inStudio? 'm-1 fw-bold':'mb-0 me-2'\">{{ t(\"Podcast's comments\") }}</component>\n <button\n :title=\"t('Refresh')\"\n class=\"btn btn-transparent\"\n @click=\"reload = !reload\"\n >\n <RefreshIcon />\n </button>\n </div>\n <CommentInput\n v-if=\"canPostComment\"\n :podcast=\"podcast\"\n @new-comment=\"newComment\"\n />\n <CommentList\n v-model:nb-comments=\"nbComments\"\n :class=\"inStudio? 'mt-2':'mt-5'\"\n :podcast=\"podcast\"\n :is-flat-list=\"inStudio\"\n :reload=\"reload\"\n :config=\"configPodcast\"\n :event-to-handle=\"eventToHandle\"\n :state-filter=\"stateFilter\"\n />\n </section>\n</template>\n\n<script setup lang=\"ts\">\nimport RefreshIcon from \"vue-material-design-icons/Refresh.vue\";\nimport { Podcast } from \"@/stores/class/general/podcast\";\nimport { computed, defineAsyncComponent, onBeforeMount, ref, Ref, watch } from \"vue\";\nimport { useCommentStore } from \"../../../stores/CommentStore\";\nimport { useAuthStore } from \"../../../stores/AuthStore\";\nimport {\n CommentMessage,\n CommentsConfig,\n} from \"@/stores/class/config/commentsConfig\";\nimport { CommentPodcast } from \"@/stores/class/general/comment\";\nimport { useI18n } from \"vue-i18n\";\nconst CommentList = defineAsyncComponent(() => import(\"./CommentList.vue\"));\nconst CommentInput = defineAsyncComponent(() => import(\"./CommentInput.vue\"));\n\n//Props \nconst props = defineProps({\n podcast: { default: undefined, type: Object as () => Podcast },\n inStudio: { default: false, type: Boolean },\n stateFilter: { default: \"\", type: String },\n})\n\n//Emits\nconst emit = defineEmits([\"commentReceived\"]);\n\n//Data \nconst reload = ref(false);\nconst configPodcast: Ref<CommentsConfig | undefined> = ref(undefined);\nconst nbComments = ref(0);\nconst eventToHandle: Ref<CommentMessage | undefined> = ref(undefined);\n\n//Composables\nconst { t } = useI18n();\nconst commentStore = useCommentStore();\nconst authStore = useAuthStore();\n\n\n//Computed\nconst displayCommentSection = computed(() => canPostComment.value || nbComments.value > 0);\nconst canPostComment = computed(() => {\n return commentStore.getCanPostComment(\n configPodcast.value,\n props.podcast,\n undefined !== authStore.authOrgaId,\n );\n});\nconst eventActive = computed(() => undefined !== props.podcast?.conferenceId);\n\n\n//Watch\nwatch(()=>commentStore.commentEventToHandle, async () => {\n if (\n !commentStore.commentEventToHandle.length ||\n commentStore.commentPodcastId !== props.podcast?.podcastId\n ){\n return;\n }\n eventToHandle.value = commentStore.commentEventToHandle[0];\n commentStore.commentEventHandled();\n emit('commentReceived');\n}, {deep: true});\n\n\nonBeforeMount(()=>fetchPodcastCommentsConfig())\n\n\n//Methods\nasync function fetchPodcastCommentsConfig() {\n if (!props.podcast?.podcastId) {\n return;\n }\n configPodcast.value = await commentStore.getCommentsConfig(props.podcast);\n if (!eventActive.value) {\n return;\n }\n initLiveComments();\n}\nasync function initLiveComments(): Promise<void> {\n if (!props.podcast?.podcastId || !props.podcast?.organisation.id) {\n return;\n }\n if (!commentStore.commentInitialized) {\n await commentStore.initialize();\n }\n await commentStore.initComments(\n props.podcast.podcastId,\n props.podcast.organisation.id,\n );\n}\nfunction newComment(comment: CommentPodcast) {\n if (eventActive.value) {\n return;\n }\n eventToHandle.value = { type: \"CREATE\", comment: comment };\n}\n</script>\n","<template>\n <section v-show=\"displayCommentSection\" class=\"module-box\">\n <div class=\"d-flex align-items-center\">\n <component \n :is=\"inStudio? 'div':'h3'\" \n :class=\"inStudio? 'm-1 fw-bold':'mb-0 me-2'\">{{ t(\"Podcast's comments\") }}</component>\n <button\n :title=\"t('Refresh')\"\n class=\"btn btn-transparent\"\n @click=\"reload = !reload\"\n >\n <RefreshIcon />\n </button>\n </div>\n <CommentInput\n v-if=\"canPostComment\"\n :podcast=\"podcast\"\n @new-comment=\"newComment\"\n />\n <CommentList\n v-model:nb-comments=\"nbComments\"\n :class=\"inStudio? 'mt-2':'mt-5'\"\n :podcast=\"podcast\"\n :is-flat-list=\"inStudio\"\n :reload=\"reload\"\n :config=\"configPodcast\"\n :event-to-handle=\"eventToHandle\"\n :state-filter=\"stateFilter\"\n />\n </section>\n</template>\n\n<script setup lang=\"ts\">\nimport RefreshIcon from \"vue-material-design-icons/Refresh.vue\";\nimport { Podcast } from \"@/stores/class/general/podcast\";\nimport { computed, defineAsyncComponent, onBeforeMount, ref, Ref, watch } from \"vue\";\nimport { useCommentStore } from \"../../../stores/CommentStore\";\nimport { useAuthStore } from \"../../../stores/AuthStore\";\nimport {\n CommentMessage,\n CommentsConfig,\n} from \"@/stores/class/config/commentsConfig\";\nimport { CommentPodcast } from \"@/stores/class/general/comment\";\nimport { useI18n } from \"vue-i18n\";\nconst CommentList = defineAsyncComponent(() => import(\"./CommentList.vue\"));\nconst CommentInput = defineAsyncComponent(() => import(\"./CommentInput.vue\"));\n\n//Props \nconst props = defineProps({\n podcast: { default: undefined, type: Object as () => Podcast },\n inStudio: { default: false, type: Boolean },\n stateFilter: { default: \"\", type: String },\n})\n\n//Emits\nconst emit = defineEmits([\"commentReceived\"]);\n\n//Data \nconst reload = ref(false);\nconst configPodcast: Ref<CommentsConfig | undefined> = ref(undefined);\nconst nbComments = ref(0);\nconst eventToHandle: Ref<CommentMessage | undefined> = ref(undefined);\n\n//Composables\nconst { t } = useI18n();\nconst commentStore = useCommentStore();\nconst authStore = useAuthStore();\n\n\n//Computed\nconst displayCommentSection = computed(() => canPostComment.value || nbComments.value > 0);\nconst canPostComment = computed(() => {\n return commentStore.getCanPostComment(\n configPodcast.value,\n props.podcast,\n undefined !== authStore.authOrgaId,\n );\n});\nconst eventActive = computed(() => undefined !== props.podcast?.conferenceId);\n\n\n//Watch\nwatch(()=>commentStore.commentEventToHandle, async () => {\n if (\n !commentStore.commentEventToHandle.length ||\n commentStore.commentPodcastId !== props.podcast?.podcastId\n ){\n return;\n }\n eventToHandle.value = commentStore.commentEventToHandle[0];\n commentStore.commentEventHandled();\n emit('commentReceived');\n}, {deep: true});\n\n\nonBeforeMount(()=>fetchPodcastCommentsConfig())\n\n\n//Methods\nasync function fetchPodcastCommentsConfig() {\n if (!props.podcast?.podcastId) {\n return;\n }\n configPodcast.value = await commentStore.getCommentsConfig(props.podcast);\n if (!eventActive.value) {\n return;\n }\n initLiveComments();\n}\nasync function initLiveComments(): Promise<void> {\n if (!props.podcast?.podcastId || !props.podcast?.organisation.id) {\n return;\n }\n if (!commentStore.commentInitialized) {\n await commentStore.initialize();\n }\n await commentStore.initComments(\n props.podcast.podcastId,\n props.podcast.organisation.id,\n );\n}\nfunction newComment(comment: CommentPodcast) {\n if (eventActive.value) {\n return;\n }\n eventToHandle.value = { type: \"CREATE\", comment: comment };\n}\n</script>\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;EA4CA,MAAM,cAAc,2BAA2B,OAAO,6BAAoB;EAC1E,MAAM,eAAe,2BAA2B,OAAO,8BAAqB;EAG5E,MAAM,QAAQ;EAOd,MAAM,OAAO;EAGb,MAAM,SAAS,IAAI,KAAK;EACxB,MAAM,gBAAiD,IAAI,KAAA,CAAS;EACpE,MAAM,aAAa,IAAI,CAAC;EACxB,MAAM,gBAAiD,IAAI,KAAA,CAAS;EAGpE,MAAM,EAAE,MAAM,QAAQ;EACtB,MAAM,eAAe,gBAAgB;EACrC,MAAM,YAAY,aAAa;EAI/B,MAAM,wBAAwB,eAAe,eAAe,SAAS,WAAW,QAAQ,CAAC;EACzF,MAAM,iBAAiB,eAAe;GACpC,OAAO,aAAa,kBAClB,cAAc,OACd,MAAM,SACN,KAAA,MAAc,UAAU,UAC1B;EACF,CAAC;EACD,MAAM,cAAc,eAAgB,KAAA,MAAc,MAAM,SAAS,YAAY;EAI7E,YAAU,aAAa,sBAAsB,YAAY;GACvD,IACE,CAAC,aAAa,qBAAqB,UACnC,aAAa,qBAAqB,MAAM,SAAS,WAEjD;GAEF,cAAc,QAAQ,aAAa,qBAAqB;GACxD,aAAa,oBAAoB;GACjC,KAAK,iBAAiB;EACxB,GAAG,EAAC,MAAM,KAAI,CAAC;EAGf,oBAAkB,2BAA2B,CAAC;EAI9C,eAAe,6BAA6B;GAC1C,IAAI,CAAC,MAAM,SAAS,WAClB;GAEF,cAAc,QAAQ,MAAM,aAAa,kBAAkB,MAAM,OAAO;GACxE,IAAI,CAAC,YAAY,OACf;GAEF,iBAAiB;EACnB;EACA,eAAe,mBAAkC;GAC/C,IAAI,CAAC,MAAM,SAAS,aAAa,CAAC,MAAM,SAAS,aAAa,IAC5D;GAEF,IAAI,CAAC,aAAa,oBAChB,MAAM,aAAa,WAAW;GAEhC,MAAM,aAAa,aACjB,MAAM,QAAQ,WACd,MAAM,QAAQ,aAAa,EAC7B;EACF;EACA,SAAS,WAAW,SAAyB;GAC3C,IAAI,YAAY,OACd;GAEF,cAAc,QAAQ;IAAE,MAAM;IAAmB;GAAQ;EAC3D;;uCA7HE,mBA4BU,WA5BV,YA4BU;IA3BR,mBAWM,OAXN,YAWM,EAAA,UAAA,GAVJ,YAEwF,wBADjF,QAAA,WAAQ,QAAA,IAAA,GAAA,EACZ,OAAK,eAAE,QAAA,WAAQ,gBAAA,WAAA,EAAA,GAAA;4BAA0D,CAAA,gBAAA,gBAA1B,MAAA,CAAA,EAAC,oBAAA,CAAA,GAAA,CAAA,CAAA,CAAA;;uBACnD,mBAMS,UAAA;KALN,OAAO,MAAA,CAAA,EAAC,SAAA;KACT,OAAM;KACL,SAAK,OAAA,OAAA,OAAA,MAAA,WAAE,OAAA,QAAM,CAAI,OAAA;QAElB,YAAe,WAAA,CAAA,GAAA,GAAA,UAAA,CAAA,CAAA;IAIX,eAAA,SAAA,UAAA,GADR,YAIE,MAAA,YAAA,GAAA;;KAFC,SAAS,QAAA;KACT,cAAa;;IAEhB,YASE,MAAA,WAAA,GAAA;KARQ,eAAa,WAAA;6EAAU,QAAA;KAC9B,OAAK,eAAE,QAAA,WAAQ,SAAA,MAAA;KACf,SAAS,QAAA;KACT,gBAAc,QAAA;KACd,QAAQ,OAAA;KACR,QAAQ,cAAA;KACR,mBAAiB,cAAA;KACjB,gBAAc,QAAA;;;;;;;;;;;sBA1BF,sBAAA,KAAqB,CAAA,CAAA"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"CommentSection-DRpvhHqB.mjs","names":[],"sources":["../src/components/display/comments/CommentSection.vue","../src/components/display/comments/CommentSection.vue"],"sourcesContent":["<template>\n <section v-show=\"displayCommentSection\" class=\"module-box\">\n <div class=\"d-flex align-items-center\">\n <component \n :is=\"inStudio? 'div':'h3'\" \n :class=\"inStudio? 'm-1 fw-bold':'mb-0 me-2'\">{{ t(\"Podcast's comments\") }}</component>\n <button\n :title=\"t('Refresh')\"\n class=\"btn btn-transparent\"\n @click=\"reload = !reload\"\n >\n <RefreshIcon />\n </button>\n </div>\n <CommentInput\n v-if=\"canPostComment\"\n :podcast=\"podcast\"\n @new-comment=\"newComment\"\n />\n <CommentList\n v-model:nb-comments=\"nbComments\"\n :class=\"inStudio? 'mt-2':'mt-5'\"\n :podcast=\"podcast\"\n :is-flat-list=\"inStudio\"\n :reload=\"reload\"\n :config=\"configPodcast\"\n :event-to-handle=\"eventToHandle\"\n :state-filter=\"stateFilter\"\n />\n </section>\n</template>\n\n<script setup lang=\"ts\">\nimport RefreshIcon from \"vue-material-design-icons/Refresh.vue\";\nimport { Podcast } from \"@/stores/class/general/podcast\";\nimport { computed, defineAsyncComponent, onBeforeMount, ref, Ref, watch } from \"vue\";\nimport { useCommentStore } from \"../../../stores/CommentStore\";\nimport { useAuthStore } from \"../../../stores/AuthStore\";\nimport {\n CommentMessage,\n CommentsConfig,\n} from \"@/stores/class/config/commentsConfig\";\nimport { CommentPodcast } from \"@/stores/class/general/comment\";\nimport { useI18n } from \"vue-i18n\";\nconst CommentList = defineAsyncComponent(() => import(\"./CommentList.vue\"));\nconst CommentInput = defineAsyncComponent(() => import(\"./CommentInput.vue\"));\n\n//Props \nconst props = defineProps({\n podcast: { default: undefined, type: Object as () => Podcast },\n inStudio: { default: false, type: Boolean },\n stateFilter: { default: \"\", type: String },\n})\n\n//Emits\nconst emit = defineEmits([\"commentReceived\"]);\n\n//Data \nconst reload = ref(false);\nconst configPodcast: Ref<CommentsConfig | undefined> = ref(undefined);\nconst nbComments = ref(0);\nconst eventToHandle: Ref<CommentMessage | undefined> = ref(undefined);\n\n//Composables\nconst { t } = useI18n();\nconst commentStore = useCommentStore();\nconst authStore = useAuthStore();\n\n\n//Computed\nconst displayCommentSection = computed(() => canPostComment.value || nbComments.value > 0);\nconst canPostComment = computed(() => {\n return commentStore.getCanPostComment(\n configPodcast.value,\n props.podcast,\n undefined !== authStore.authOrgaId,\n );\n});\nconst eventActive = computed(() => undefined !== props.podcast?.conferenceId);\n\n\n//Watch\nwatch(()=>commentStore.commentEventToHandle, async () => {\n if (\n !commentStore.commentEventToHandle.length ||\n commentStore.commentPodcastId !== props.podcast?.podcastId\n ){\n return;\n }\n eventToHandle.value = commentStore.commentEventToHandle[0];\n commentStore.commentEventHandled();\n emit('commentReceived');\n}, {deep: true});\n\n\nonBeforeMount(()=>fetchPodcastCommentsConfig())\n\n\n//Methods\nasync function fetchPodcastCommentsConfig() {\n if (!props.podcast?.podcastId) {\n return;\n }\n configPodcast.value = await commentStore.getCommentsConfig(props.podcast);\n if (!eventActive.value) {\n return;\n }\n initLiveComments();\n}\nasync function initLiveComments(): Promise<void> {\n if (!props.podcast?.podcastId || !props.podcast?.organisation.id) {\n return;\n }\n if (!commentStore.commentInitialized) {\n await commentStore.initialize();\n }\n await commentStore.initComments(\n props.podcast.podcastId,\n props.podcast.organisation.id,\n );\n}\nfunction newComment(comment: CommentPodcast) {\n if (eventActive.value) {\n return;\n }\n eventToHandle.value = { type: \"CREATE\", comment: comment };\n}\n</script>\n","<template>\n <section v-show=\"displayCommentSection\" class=\"module-box\">\n <div class=\"d-flex align-items-center\">\n <component \n :is=\"inStudio? 'div':'h3'\" \n :class=\"inStudio? 'm-1 fw-bold':'mb-0 me-2'\">{{ t(\"Podcast's comments\") }}</component>\n <button\n :title=\"t('Refresh')\"\n class=\"btn btn-transparent\"\n @click=\"reload = !reload\"\n >\n <RefreshIcon />\n </button>\n </div>\n <CommentInput\n v-if=\"canPostComment\"\n :podcast=\"podcast\"\n @new-comment=\"newComment\"\n />\n <CommentList\n v-model:nb-comments=\"nbComments\"\n :class=\"inStudio? 'mt-2':'mt-5'\"\n :podcast=\"podcast\"\n :is-flat-list=\"inStudio\"\n :reload=\"reload\"\n :config=\"configPodcast\"\n :event-to-handle=\"eventToHandle\"\n :state-filter=\"stateFilter\"\n />\n </section>\n</template>\n\n<script setup lang=\"ts\">\nimport RefreshIcon from \"vue-material-design-icons/Refresh.vue\";\nimport { Podcast } from \"@/stores/class/general/podcast\";\nimport { computed, defineAsyncComponent, onBeforeMount, ref, Ref, watch } from \"vue\";\nimport { useCommentStore } from \"../../../stores/CommentStore\";\nimport { useAuthStore } from \"../../../stores/AuthStore\";\nimport {\n CommentMessage,\n CommentsConfig,\n} from \"@/stores/class/config/commentsConfig\";\nimport { CommentPodcast } from \"@/stores/class/general/comment\";\nimport { useI18n } from \"vue-i18n\";\nconst CommentList = defineAsyncComponent(() => import(\"./CommentList.vue\"));\nconst CommentInput = defineAsyncComponent(() => import(\"./CommentInput.vue\"));\n\n//Props \nconst props = defineProps({\n podcast: { default: undefined, type: Object as () => Podcast },\n inStudio: { default: false, type: Boolean },\n stateFilter: { default: \"\", type: String },\n})\n\n//Emits\nconst emit = defineEmits([\"commentReceived\"]);\n\n//Data \nconst reload = ref(false);\nconst configPodcast: Ref<CommentsConfig | undefined> = ref(undefined);\nconst nbComments = ref(0);\nconst eventToHandle: Ref<CommentMessage | undefined> = ref(undefined);\n\n//Composables\nconst { t } = useI18n();\nconst commentStore = useCommentStore();\nconst authStore = useAuthStore();\n\n\n//Computed\nconst displayCommentSection = computed(() => canPostComment.value || nbComments.value > 0);\nconst canPostComment = computed(() => {\n return commentStore.getCanPostComment(\n configPodcast.value,\n props.podcast,\n undefined !== authStore.authOrgaId,\n );\n});\nconst eventActive = computed(() => undefined !== props.podcast?.conferenceId);\n\n\n//Watch\nwatch(()=>commentStore.commentEventToHandle, async () => {\n if (\n !commentStore.commentEventToHandle.length ||\n commentStore.commentPodcastId !== props.podcast?.podcastId\n ){\n return;\n }\n eventToHandle.value = commentStore.commentEventToHandle[0];\n commentStore.commentEventHandled();\n emit('commentReceived');\n}, {deep: true});\n\n\nonBeforeMount(()=>fetchPodcastCommentsConfig())\n\n\n//Methods\nasync function fetchPodcastCommentsConfig() {\n if (!props.podcast?.podcastId) {\n return;\n }\n configPodcast.value = await commentStore.getCommentsConfig(props.podcast);\n if (!eventActive.value) {\n return;\n }\n initLiveComments();\n}\nasync function initLiveComments(): Promise<void> {\n if (!props.podcast?.podcastId || !props.podcast?.organisation.id) {\n return;\n }\n if (!commentStore.commentInitialized) {\n await commentStore.initialize();\n }\n await commentStore.initComments(\n props.podcast.podcastId,\n props.podcast.organisation.id,\n );\n}\nfunction newComment(comment: CommentPodcast) {\n if (eventActive.value) {\n return;\n }\n eventToHandle.value = { type: \"CREATE\", comment: comment };\n}\n</script>\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;EA4CA,MAAM,cAAc,2BAA2B,OAAO,6BAAoB;EAC1E,MAAM,eAAe,2BAA2B,OAAO,8BAAqB;EAG5E,MAAM,QAAQ;EAOd,MAAM,OAAO;EAGb,MAAM,SAAS,IAAI,KAAK;EACxB,MAAM,gBAAiD,IAAI,KAAA,CAAS;EACpE,MAAM,aAAa,IAAI,CAAC;EACxB,MAAM,gBAAiD,IAAI,KAAA,CAAS;EAGpE,MAAM,EAAE,MAAM,QAAQ;EACtB,MAAM,eAAe,gBAAgB;EACrC,MAAM,YAAY,aAAa;EAI/B,MAAM,wBAAwB,eAAe,eAAe,SAAS,WAAW,QAAQ,CAAC;EACzF,MAAM,iBAAiB,eAAe;GACpC,OAAO,aAAa,kBAClB,cAAc,OACd,MAAM,SACN,KAAA,MAAc,UAAU,UAC1B;EACF,CAAC;EACD,MAAM,cAAc,eAAgB,KAAA,MAAc,MAAM,SAAS,YAAY;EAI7E,YAAU,aAAa,sBAAsB,YAAY;GACvD,IACE,CAAC,aAAa,qBAAqB,UACnC,aAAa,qBAAqB,MAAM,SAAS,WAEjD;GAEF,cAAc,QAAQ,aAAa,qBAAqB;GACxD,aAAa,oBAAoB;GACjC,KAAK,iBAAiB;EACxB,GAAG,EAAC,MAAM,KAAI,CAAC;EAGf,oBAAkB,2BAA2B,CAAC;EAI9C,eAAe,6BAA6B;GAC1C,IAAI,CAAC,MAAM,SAAS,WAClB;GAEF,cAAc,QAAQ,MAAM,aAAa,kBAAkB,MAAM,OAAO;GACxE,IAAI,CAAC,YAAY,OACf;GAEF,iBAAiB;EACnB;EACA,eAAe,mBAAkC;GAC/C,IAAI,CAAC,MAAM,SAAS,aAAa,CAAC,MAAM,SAAS,aAAa,IAC5D;GAEF,IAAI,CAAC,aAAa,oBAChB,MAAM,aAAa,WAAW;GAEhC,MAAM,aAAa,aACjB,MAAM,QAAQ,WACd,MAAM,QAAQ,aAAa,EAC7B;EACF;EACA,SAAS,WAAW,SAAyB;GAC3C,IAAI,YAAY,OACd;GAEF,cAAc,QAAQ;IAAE,MAAM;IAAmB;GAAQ;EAC3D;;uCA7HE,mBA4BU,WA5BV,YA4BU;IA3BR,mBAWM,OAXN,YAWM,EAAA,UAAA,GAVJ,YAEwF,wBADjF,QAAA,WAAQ,QAAA,IAAA,GAAA,EACZ,OAAK,eAAE,QAAA,WAAQ,gBAAA,WAAA,EAAA,GAAA;4BAA0D,CAAA,gBAAA,gBAA1B,MAAA,CAAA,EAAC,oBAAA,CAAA,GAAA,CAAA,CAAA,CAAA;;uBACnD,mBAMS,UAAA;KALN,OAAO,MAAA,CAAA,EAAC,SAAA;KACT,OAAM;KACL,SAAK,OAAA,OAAA,OAAA,MAAA,WAAE,OAAA,QAAM,CAAI,OAAA;QAElB,YAAe,WAAA,CAAA,GAAA,GAAA,UAAA,CAAA,CAAA;IAIX,eAAA,SAAA,UAAA,GADR,YAIE,MAAA,YAAA,GAAA;;KAFC,SAAS,QAAA;KACT,cAAa;;IAEhB,YASE,MAAA,WAAA,GAAA;KARQ,eAAa,WAAA;6EAAU,QAAA;KAC9B,OAAK,eAAE,QAAA,WAAQ,SAAA,MAAA;KACf,SAAS,QAAA;KACT,gBAAc,QAAA;KACd,QAAQ,OAAA;KACR,QAAQ,cAAA;KACR,mBAAiB,cAAA;KACjB,gBAAc,QAAA;;;;;;;;;;;sBA1BF,sBAAA,KAAqB,CAAA,CAAA"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"CommentStore-BFkEAz_S.mjs","names":[],"sources":["../src/websocket/wss.ts","../src/websocket/commentWebsocket.ts","../src/stores/CommentStore.ts"],"sourcesContent":["/* eslint-disable */\nlet SockJS: any = null;\nlet Stomp: any = null;\n/* eslint-enable */\n\ninterface Subscription {\n id: string;\n topic: string;\n callback: (message: { body: string }) => void;\n subscription?: () => void;\n}\n\nexport default class WssConnection {\n url: string;\n endpoint: string;\n subscriptions: Array<Subscription>;\n /* eslint-disable */\n socket: {\n (url: string, _reserved?: any, options?: SockJS.Options | undefined): WebSocket;\n new (url: string, _reserved?: any, options?: SockJS.Options | undefined): WebSocket;\n prototype: WebSocket;\n CONNECTING: SockJS.CONNECTING;\n OPEN: SockJS.OPEN;\n CLOSING: SockJS.CLOSING;\n CLOSED: SockJS.CLOSED;\n }|undefined ;\n client: any;\n queuedMessages: Array<any>;\n processingMsg: boolean;\n wssBroken: boolean;\n /* eslint-enable */\n /**\n *\n * @param {String} url url of the wss\n * @param {String} endpoint of the wss\n * @param {Map<String, Function>} topics list of topics and associated callback\n */\n constructor(url: string, endpoint: string) {\n this.url = url;\n this.endpoint = endpoint;\n this.subscriptions = [];\n this.processingMsg = false;\n this.queuedMessages = [];\n this.wssBroken = false;\n }\n async processQueuedMessages() {\n if (this.processingMsg) {\n return;\n }\n if (this.queuedMessages.length === 0) {\n return;\n }\n this.processingMsg = true;\n try {\n const message = this.queuedMessages.shift();\n await message.callback(message.message);\n } catch (error) {\n console.log(error);\n }\n this.processingMsg = false;\n this.processQueuedMessages();\n }\n\n async connect(): Promise<void> {\n return new Promise<void>((resolve, reject) => {\n (async () => {\n if (null === SockJS) {\n await import(\"sockjs-client/dist/sockjs\").then((sockLibrary) => {\n SockJS = sockLibrary.default;\n });\n }\n if (null === Stomp) {\n await import(\"@stomp/stompjs\").then((stompLibrary) => {\n Stomp = stompLibrary.Stomp;\n });\n }\n this.socket = new SockJS(\"https://\" + this.url + \"/\" + this.endpoint);\n this.client = Stomp.over(this.socket);\n this.client.heartbeat.outgoing = 2000;\n this.client.heartbeat.incoming = 2000;\n this.client.debug = (sockMessage: string) => {\n if (\n sockMessage.includes(\"did not receive server activity for the last\")\n ) {\n this.wssBroken = true;\n }\n };\n this.client.onConnect = () => {\n this.connectionSuccess();\n resolve();\n };\n this.client.onStompError = () => {\n this.wssBroken = true;\n this.connectionErrorReconnect();\n reject(new Error());\n };\n this.client.onWebSocketError = () => {\n this.wssBroken = true;\n this.connectionErrorReconnect();\n reject(new Error());\n };\n this.client.onDisconnect = () => {\n this.connectionErrorReconnect();\n reject(new Error());\n };\n this.client.onWebSocketClose = () => {\n this.connectionErrorReconnect();\n reject(new Error());\n };\n\n this.client.activate();\n })();\n });\n }\n\n async connectionErrorReconnect() {\n if (!this.wssBroken) {\n return;\n }\n console.log(\"Error in ws try to reconnect\");\n setTimeout(() => {\n this.connect();\n }, 10);\n this.wssBroken = false;\n }\n\n connectionSuccess(): void {\n this.subscriptions.forEach((element: Subscription) => {\n // On récupère tous les évènements freeswitch\n try {\n this.subscribe(element.topic, element.callback);\n } catch {\n setTimeout(() => {\n this.connect();\n }, 10000);\n return;\n }\n });\n }\n\n subscribe(topic: string, callback: (message: { body: string }) => any): void {\n const subscription = this.client.subscribe(topic, (message: any) => {\n this.queuedMessages.push({ message: message, callback: callback });\n this.processQueuedMessages();\n });\n this.subscriptions.push({\n id: subscription.id,\n topic: topic,\n callback: callback,\n });\n }\n\n unsubscribe(topic: string): void {\n if (!topic) {\n throw new Error(\n \"Cannot remove subscription if no search pattern is founded\",\n );\n }\n const removedSubscriptions: Array<Subscription> = [];\n this.subscriptions.forEach((item: Subscription) => {\n let valid = true;\n if (item.topic !== topic) {\n valid = false;\n }\n if (valid) {\n removedSubscriptions.push(item);\n try {\n this.client.unsubscribe(item.id);\n } catch {\n console.log(\"Error while deconnecting client with item \" + item.id);\n }\n }\n });\n this.subscriptions = this.subscriptions.filter(\n (item: Subscription) => !removedSubscriptions.includes(item),\n );\n }\n\n disconnect(): void {\n this.client.deactivate();\n }\n}\n","import { CommentMessage } from \"@/stores/class/config/commentsConfig\";\nimport WssConnection from \"./wss\";\n\nexport default class CommentEngine {\n uri: string;\n connection: WssConnection | undefined;\n subscribedEventComment: number|undefined;\n\n constructor(wssDomain: string) {\n this.uri = wssDomain;\n this.connection = undefined;\n this.subscribedEventComment = undefined;\n }\n\n async initialize(): Promise<void> {\n this.connection = new WssConnection(this.uri, \"websocket\");\n await this.connection.connect();\n }\n async close(): Promise<void> {\n if (!this.connection) {\n return;\n }\n this.connection.disconnect();\n this.connection = undefined;\n }\n\n subscribeToPodcastCommentEventBus(\n podcastId: number,\n queueName: string,\n callback: (jsonMessage: CommentMessage) => void,\n ): void {\n if (!this.connection) {\n throw new Error(\n \"Websocket engine must be initialized, before it can subscribe to any events\",\n );\n }\n if (podcastId) {\n this.connection.subscribe(\n queueName,\n (message) => {\n const jsonMessage = JSON.parse(message.body);\n callback.call(this, jsonMessage);\n },\n );\n this.subscribedEventComment = podcastId;\n }\n }\n\n unsubscribeToPodcastCommentEventBus(podcastId: number, queueName: string): void {\n if (!this.connection) {\n throw new Error(\n \"Websocket engine must be initialized, before it can unsubscribe to any events\",\n );\n }\n if (!podcastId) {\n throw new Error(\n \"Cannot unsubscribe to comments event bus if no id provided\",\n );\n }\n this.connection.unsubscribe(queueName);\n this.subscribedEventComment = undefined;\n }\n\n isPodcastCommentEventConnected(podcastId: number): boolean {\n return podcastId===this.subscribedEventComment;\n }\n}\n","//Import dayjs extend\nimport dayjs from \"dayjs\";\nimport relativeTime from \"dayjs/plugin/relativeTime\";\ndayjs.extend(relativeTime);\n\nimport { defineStore } from \"pinia\";\nimport cookiesHelper from \"../helper/cookiesHelper\";\nimport WebSocketEngine from \"../websocket/commentWebsocket\";\nimport { CommentPodcast } from \"./class/general/comment\";\nimport { useAuthStore } from \"./AuthStore\";\nimport { useApiStore } from \"./ApiStore\";\nimport stringHelper from \"../helper/stringHelper\";\nimport { CommentMessage, CommentsConfig } from \"./class/config/commentsConfig\";\nimport classicApi from \"../api/classicApi\";\nimport { Podcast } from \"./class/general/podcast\";\nimport { ListClassicReturn } from \"./class/general/listReturn\";\nfunction errorCommentsConfig(): CommentsConfig {\n return {\n inherited: false,\n abuse: {\n authRequired: true,\n },\n commentLikes: {\n authRequired: true,\n dislikeEnabled: false,\n likeEnabled: false,\n },\n comments: {\n authRequired: true,\n commentAllowed: \"NONE\",\n defaultState: \"PENDING\",\n depth: 2,\n },\n podcastLikes: {\n authRequired: true,\n dislikeEnabled: false,\n likeEnabled: false,\n },\n };\n}\n\n\nexport interface CommentUser {\n name: string | null;\n uuid: string | null;\n uuidHash: string | null;\n}\ninterface CommentState {\n commentInitialized: boolean;\n commentWebsocketengine: WebSocketEngine | undefined;\n commentPodcastId?: number;\n commentQueueName?: string;\n commentEventToHandle: Array<CommentMessage>;\n commentUser?: CommentUser;\n commentsForPlayer: { [key: number]: Array<CommentPodcast> };\n podcastsCommentsConfig: { [key: number]: CommentsConfig };\n}\nexport const useCommentStore = defineStore(\"CommentStore\", {\n state: (): CommentState => ({\n commentInitialized: false,\n commentWebsocketengine: undefined,\n commentPodcastId: undefined,\n commentQueueName: undefined,\n commentEventToHandle: [],\n commentsForPlayer: {},\n podcastsCommentsConfig: {},\n }),\n actions: {\n async fetchCommentsForPlayer(podcastId: number) {\n if (!this.commentsForPlayer[podcastId]) {\n this.commentsForPlayer[podcastId] = [];\n const size = 50;\n let first = 0;\n let keepFetching = true;\n while (keepFetching) {\n const data = await classicApi.fetchData<ListClassicReturn<CommentPodcast>>({\n api:2,\n path:\"comment/list\",\n parameters:{\n first: first,\n size: size,\n podcastId: podcastId,\n sort: \"DATE_DESC\",\n hideAnswers: true,\n state: \"VALIDATED\",\n },\n isNotAuth:true\n });\n first += size;\n this.commentsForPlayer[podcastId] = this.commentsForPlayer[\n podcastId\n ].concat(data.result);\n keepFetching =\n data.count !== this.commentsForPlayer[podcastId].length;\n }\n }\n return this.commentsForPlayer[podcastId];\n },\n async digest(message: string) {\n return Array.from(\n new Uint8Array(\n await crypto.subtle.digest(\n \"SHA-1\",\n new TextEncoder().encode(message),\n ),\n ),\n (byte) => byte.toString(16).padStart(2, \"0\"),\n ).join(\"\");\n },\n async initCommentUser() {\n if (this.commentUser) {\n return;\n }\n const authStore = useAuthStore();\n if (authStore.authProfile) {\n this.commentUser = {\n name: authStore.authName,\n uuid: authStore.authProfile.userId,\n };\n return;\n }\n let uuid = cookiesHelper.getCookie(\"comment-octopus-uuid\");\n if (null === uuid) {\n uuid = stringHelper.uuidv4();\n cookiesHelper.setCookie(\"comment-octopus-uuid\", uuid);\n }\n const hash = await this.digest(uuid);\n this.commentUser = {\n name: cookiesHelper.getCookie(\"comment-octopus-name\"),\n uuid: uuid,\n uuidHash: hash,\n };\n if (\"#miniplayer\" === this.commentUser?.name) {\n this.commentUser.name = null;\n }\n },\n setCommentUser(name: string) {\n const authStore = useAuthStore();\n if (authStore.authProfile || !this.commentUser) {\n return;\n }\n cookiesHelper.setCookie(\"comment-octopus-name\", name);\n this.commentUser.name = name;\n },\n async getCommentsConfig(podcast: Podcast): Promise<CommentsConfig> {\n if (this.podcastsCommentsConfig[podcast.podcastId]) {\n return this.podcastsCommentsConfig[podcast.podcastId];\n }\n try {\n this.podcastsCommentsConfig[podcast.podcastId] = await classicApi.fetchData<CommentsConfig>({\n api: 2,\n path:\"config/podcast/\" + podcast.podcastId,\n });\n } catch {\n try {\n this.podcastsCommentsConfig[podcast.podcastId] = await classicApi.fetchData<CommentsConfig>({\n api: 2,\n path: \"config/emission/\" + podcast.emission.emissionId,\n });\n } catch {\n this.podcastsCommentsConfig[podcast.podcastId] = errorCommentsConfig(); \n }\n }\n return this.podcastsCommentsConfig[podcast.podcastId];\n },\n resetPodcastsConfig() {\n this.podcastsCommentsConfig = {};\n },\n updatePodcastsConfig(podcastId: number, config: CommentsConfig) {\n this.podcastsCommentsConfig[podcastId] = config;\n },\n getCanPostCommentAllowed(\n config: CommentsConfig,\n podcast: Podcast,\n ): boolean {\n if (\"NONE\" === config.comments.commentAllowed) {\n return false;\n }\n const rightsLiveOnly =\n \"LIVE_ONLY\" === config.comments.commentAllowed &&\n undefined !== podcast.conferenceId &&\n \"READY_TO_RECORD\" === podcast.processingStatus;\n const rightsLiveRecord =\n \"LIVE_AND_REPLAY\" === config.comments.commentAllowed &&\n undefined !== podcast.conferenceId;\n return (\n \"ALL\" === config.comments.commentAllowed ||\n rightsLiveOnly ||\n rightsLiveRecord\n );\n },\n getCanPostComment(\n config: CommentsConfig | undefined,\n podcast: Podcast | undefined,\n isAuth: boolean,\n ): boolean {\n if (!config || !podcast) {\n return false;\n }\n return (\n this.getCanPostCommentAllowed(config, podcast) &&\n (!config.comments.authRequired ||\n (config.comments.authRequired && isAuth))\n );\n },\n getCanReportAbuse(\n config: CommentsConfig | undefined,\n isAuth: boolean,\n ): boolean {\n if (!config) {\n return false;\n }\n return (\n !config.abuse.authRequired || (config.abuse.authRequired && isAuth)\n );\n },\n\n /*--------------------------------------------------------------------------------------------------------------\n | |\n | Initializing state |\n | |\n --------------------------------------------------------------------------------------------------------------*/\n async initialize() {\n const apiStore = useApiStore();\n const commentUrl = apiStore.commentUrl?? \"https://comments.dev2.saooti.org/\";\n const url = stringHelper.trimChar(commentUrl.replace(\"https://\", \"\"),\"/\");\n const engine = new WebSocketEngine(url);\n await engine.initialize();\n this.commentWebsocketengine = engine;\n this.commentInitialized = true;\n },\n\n /*--------------------------------------------------------------------------------------------------------------\n | |\n | Comments management methods |\n | |\n --------------------------------------------------------------------------------------------------------------*/\n unsubscribeToEvent() {\n if (!this.commentWebsocketengine) {\n return;\n }\n if (\n this.commentPodcastId &&\n this.commentQueueName &&\n this.commentWebsocketengine.isPodcastCommentEventConnected(\n this.commentPodcastId,\n )\n ) {\n this.commentWebsocketengine.unsubscribeToPodcastCommentEventBus(\n this.commentPodcastId,\n this.commentQueueName,\n );\n }\n },\n\n subscribeToEvents() {\n if (!this.commentWebsocketengine) {\n return;\n }\n if (this.commentPodcastId && this.commentQueueName) {\n this.commentWebsocketengine.subscribeToPodcastCommentEventBus(\n this.commentPodcastId,\n this.commentQueueName,\n (message) => {\n this.commentEventToHandleUpdate(message);\n },\n );\n }\n },\n\n async initComments(podcastId: number, organisationId: string) {\n this.unsubscribeToEvent();\n this.commentQueueName =\n \"/topic/comment.\" + organisationId + \".\" + podcastId;\n this.commentPodcastId = podcastId;\n this.subscribeToEvents();\n },\n async unsubscribeComments() {\n this.unsubscribeComments();\n this.commentPodcastId = undefined;\n },\n\n /*--------------------------------------------------------------------------------------------------------------\n | |\n | Managing conference WebSocket Event Received |\n | |\n --------------------------------------------------------------------------------------------------------------*/\n commentEventHandled() {\n this.commentEventToHandle.shift();\n },\n commentEventToHandleUpdate(eventToHandle: {\n comment: CommentPodcast;\n type: string;\n }) {\n if (eventToHandle) {\n this.commentEventToHandle.push(eventToHandle);\n } else {\n this.commentEventToHandle.splice(0, this.commentEventToHandle.length);\n }\n },\n },\n});\n"],"mappings":";;;;;;;AACA,IAAI,SAAc;AAClB,IAAI,QAAa;AAUjB,IAAqB,gBAArB,MAAmC;CACjC;CACA;CACA;CAEA;CASA;CACA;CACA;CACA;;;;;;;CAQA,YAAY,KAAa,UAAkB;EACzC,KAAK,MAAM;EACX,KAAK,WAAW;EAChB,KAAK,gBAAgB,CAAC;EACtB,KAAK,gBAAgB;EACrB,KAAK,iBAAiB,CAAC;EACvB,KAAK,YAAY;CACnB;CACA,MAAM,wBAAwB;EAC5B,IAAI,KAAK,eACP;EAEF,IAAI,KAAK,eAAe,WAAW,GACjC;EAEF,KAAK,gBAAgB;EACrB,IAAI;GACF,MAAM,UAAU,KAAK,eAAe,MAAM;GAC1C,MAAM,QAAQ,SAAS,QAAQ,OAAO;EACxC,SAAS,OAAO;GACd,QAAQ,IAAI,KAAK;EACnB;EACA,KAAK,gBAAgB;EACrB,KAAK,sBAAsB;CAC7B;CAEA,MAAM,UAAyB;EAC7B,OAAO,IAAI,SAAe,SAAS,WAAW;GAC5C,CAAC,YAAY;IACX,IAAI,SAAS,QACX,MAAM,OAAO,6BAA6B,MAAM,gBAAgB;KAC9D,SAAS,YAAY;IACvB,CAAC;IAEH,IAAI,SAAS,OACX,MAAM,OAAO,kBAAkB,MAAM,iBAAiB;KACpD,QAAQ,aAAa;IACvB,CAAC;IAEH,KAAK,SAAS,IAAI,OAAO,aAAa,KAAK,MAAM,MAAM,KAAK,QAAQ;IACpE,KAAK,SAAS,MAAM,KAAK,KAAK,MAAM;IACpC,KAAK,OAAO,UAAU,WAAW;IACjC,KAAK,OAAO,UAAU,WAAW;IACjC,KAAK,OAAO,SAAS,gBAAwB;KAC3C,IACE,YAAY,SAAS,8CAA8C,GAEnE,KAAK,YAAY;IAErB;IACA,KAAK,OAAO,kBAAkB;KAC5B,KAAK,kBAAkB;KACvB,QAAQ;IACV;IACA,KAAK,OAAO,qBAAqB;KAC/B,KAAK,YAAY;KACjB,KAAK,yBAAyB;KAC9B,uBAAO,IAAI,MAAM,CAAC;IACpB;IACA,KAAK,OAAO,yBAAyB;KACnC,KAAK,YAAY;KACjB,KAAK,yBAAyB;KAC9B,uBAAO,IAAI,MAAM,CAAC;IACpB;IACA,KAAK,OAAO,qBAAqB;KAC/B,KAAK,yBAAyB;KAC9B,uBAAO,IAAI,MAAM,CAAC;IACpB;IACA,KAAK,OAAO,yBAAyB;KACnC,KAAK,yBAAyB;KAC9B,uBAAO,IAAI,MAAM,CAAC;IACpB;IAEA,KAAK,OAAO,SAAS;GACvB,GAAG;EACL,CAAC;CACH;CAEA,MAAM,2BAA2B;EAC/B,IAAI,CAAC,KAAK,WACR;EAEF,QAAQ,IAAI,8BAA8B;EAC1C,iBAAiB;GACf,KAAK,QAAQ;EACf,GAAG,EAAE;EACL,KAAK,YAAY;CACnB;CAEA,oBAA0B;EACxB,KAAK,cAAc,SAAS,YAA0B;GAEpD,IAAI;IACF,KAAK,UAAU,QAAQ,OAAO,QAAQ,QAAQ;GAChD,QAAQ;IACN,iBAAiB;KACf,KAAK,QAAQ;IACf,GAAG,GAAK;IACR;GACF;EACF,CAAC;CACH;CAEA,UAAU,OAAe,UAAoD;EAC3E,MAAM,eAAe,KAAK,OAAO,UAAU,QAAQ,YAAiB;GAClE,KAAK,eAAe,KAAK;IAAW;IAAmB;GAAS,CAAC;GACjE,KAAK,sBAAsB;EAC7B,CAAC;EACD,KAAK,cAAc,KAAK;GACtB,IAAI,aAAa;GACV;GACG;EACZ,CAAC;CACH;CAEA,YAAY,OAAqB;EAC/B,IAAI,CAAC,OACH,MAAM,IAAI,MACR,4DACF;EAEF,MAAM,uBAA4C,CAAC;EACnD,KAAK,cAAc,SAAS,SAAuB;GACjD,IAAI,QAAQ;GACZ,IAAI,KAAK,UAAU,OACjB,QAAQ;GAEV,IAAI,OAAO;IACT,qBAAqB,KAAK,IAAI;IAC9B,IAAI;KACF,KAAK,OAAO,YAAY,KAAK,EAAE;IACjC,QAAQ;KACN,QAAQ,IAAI,+CAA+C,KAAK,EAAE;IACpE;GACF;EACF,CAAC;EACD,KAAK,gBAAgB,KAAK,cAAc,QACrC,SAAuB,CAAC,qBAAqB,SAAS,IAAI,CAC7D;CACF;CAEA,aAAmB;EACjB,KAAK,OAAO,WAAW;CACzB;AACF;;;AClLA,IAAqB,gBAArB,MAAmC;CACjC;CACA;CACA;CAEA,YAAY,WAAmB;EAC7B,KAAK,MAAM;EACX,KAAK,aAAa,KAAA;EAClB,KAAK,yBAAyB,KAAA;CAChC;CAEA,MAAM,aAA4B;EAChC,KAAK,aAAa,IAAI,cAAc,KAAK,KAAK,WAAW;EACzD,MAAM,KAAK,WAAW,QAAQ;CAChC;CACA,MAAM,QAAuB;EAC3B,IAAI,CAAC,KAAK,YACR;EAEF,KAAK,WAAW,WAAW;EAC3B,KAAK,aAAa,KAAA;CACpB;CAEA,kCACE,WACA,WACA,UACM;EACN,IAAI,CAAC,KAAK,YACR,MAAM,IAAI,MACR,6EACF;EAEF,IAAI,WAAW;GACb,KAAK,WAAW,UACd,YACC,YAAY;IACX,MAAM,cAAc,KAAK,MAAM,QAAQ,IAAI;IAC3C,SAAS,KAAK,MAAM,WAAW;GACjC,CACF;GACA,KAAK,yBAAyB;EAChC;CACF;CAEA,oCAAoC,WAAmB,WAAyB;EAC9E,IAAI,CAAC,KAAK,YACR,MAAM,IAAI,MACR,+EACF;EAEF,IAAI,CAAC,WACH,MAAM,IAAI,MACR,4DACF;EAEF,KAAK,WAAW,YAAY,SAAS;EACrC,KAAK,yBAAyB,KAAA;CAChC;CAEA,+BAA+B,WAA4B;EACzD,OAAO,cAAY,KAAK;CAC1B;AACF;;;AC/DA,MAAM,OAAO,YAAY;AAazB,SAAS,sBAAsC;CAC7C,OAAO;EACL,WAAW;EACX,OAAO,EACL,cAAc,KAChB;EACA,cAAc;GACZ,cAAc;GACd,gBAAgB;GAChB,aAAa;EACf;EACA,UAAU;GACR,cAAc;GACd,gBAAgB;GAChB,cAAc;GACd,OAAO;EACT;EACA,cAAc;GACZ,cAAc;GACd,gBAAgB;GAChB,aAAa;EACf;CACF;AACF;AAkBA,IAAa,kBAAkB,YAAY,gBAAgB;CACzD,cAA4B;EAC1B,oBAAoB;EACpB,wBAAwB,KAAA;EACxB,kBAAkB,KAAA;EAClB,kBAAkB,KAAA;EAClB,sBAAsB,CAAC;EACvB,mBAAmB,CAAC;EACpB,wBAAwB,CAAC;CAC3B;CACA,SAAS;EACP,MAAM,uBAAuB,WAAmB;GAC9C,IAAI,CAAC,KAAK,kBAAkB,YAAY;IACtC,KAAK,kBAAkB,aAAa,CAAC;IACrC,MAAM,OAAO;IACb,IAAI,QAAQ;IACZ,IAAI,eAAe;IACnB,OAAO,cAAc;KACnB,MAAM,OAAO,MAAM,mBAAW,UAA6C;MACzE,KAAI;MACJ,MAAK;MACL,YAAW;OACF;OACD;OACK;OACX,MAAM;OACN,aAAa;OACb,OAAO;MACT;MACA,WAAU;KACZ,CAAC;KACD,SAAS;KACT,KAAK,kBAAkB,aAAa,KAAK,kBACvC,WACA,OAAO,KAAK,MAAM;KACpB,eACE,KAAK,UAAU,KAAK,kBAAkB,WAAW;IACrD;GACF;GACA,OAAO,KAAK,kBAAkB;EAChC;EACA,MAAM,OAAO,SAAiB;GAC5B,OAAO,MAAM,KACX,IAAI,WACF,MAAM,OAAO,OAAO,OAClB,SACA,IAAI,YAAY,EAAE,OAAO,OAAO,CAClC,CACF,IACC,SAAS,KAAK,SAAS,EAAE,EAAE,SAAS,GAAG,GAAG,CAC7C,EAAE,KAAK,EAAE;EACX;EACA,MAAM,kBAAkB;GACtB,IAAI,KAAK,aACP;GAEF,MAAM,YAAY,aAAa;GAC/B,IAAI,UAAU,aAAa;IACzB,KAAK,cAAc;KACjB,MAAM,UAAU;KAChB,MAAM,UAAU,YAAY;IAC9B;IACA;GACF;GACA,IAAI,OAAO,sBAAc,UAAU,sBAAsB;GACzD,IAAI,SAAS,MAAM;IACjB,OAAO,qBAAa,OAAO;IAC3B,sBAAc,UAAU,wBAAwB,IAAI;GACtD;GACA,MAAM,OAAO,MAAM,KAAK,OAAO,IAAI;GACnC,KAAK,cAAc;IACjB,MAAM,sBAAc,UAAU,sBAAsB;IAC9C;IACN,UAAU;GACZ;GACA,IAAI,kBAAkB,KAAK,aAAa,MACtC,KAAK,YAAY,OAAO;EAE5B;EACA,eAAe,MAAc;GAE3B,IADkB,aACd,EAAU,eAAe,CAAC,KAAK,aACjC;GAEF,sBAAc,UAAU,wBAAwB,IAAI;GACpD,KAAK,YAAY,OAAO;EAC1B;EACA,MAAM,kBAAkB,SAA2C;GACjE,IAAI,KAAK,uBAAuB,QAAQ,YACtC,OAAO,KAAK,uBAAuB,QAAQ;GAE7C,IAAI;IACF,KAAK,uBAAuB,QAAQ,aAAa,MAAM,mBAAW,UAA0B;KAC1F,KAAK;KACL,MAAK,oBAAoB,QAAQ;IACnC,CAAC;GACH,QAAQ;IACN,IAAI;KACF,KAAK,uBAAuB,QAAQ,aAAa,MAAM,mBAAW,UAA0B;MAC1F,KAAK;MACL,MAAM,qBAAqB,QAAQ,SAAS;KAC9C,CAAC;IACH,QAAQ;KACN,KAAK,uBAAuB,QAAQ,aAAa,oBAAoB;IACvE;GACF;GACA,OAAO,KAAK,uBAAuB,QAAQ;EAC7C;EACA,sBAAsB;GACpB,KAAK,yBAAyB,CAAC;EACjC;EACA,qBAAqB,WAAmB,QAAwB;GAC9D,KAAK,uBAAuB,aAAa;EAC3C;EACA,yBACE,QACA,SACS;GACT,IAAI,WAAW,OAAO,SAAS,gBAC7B,OAAO;GAET,MAAM,iBACJ,gBAAgB,OAAO,SAAS,kBAChC,KAAA,MAAc,QAAQ,gBACtB,sBAAsB,QAAQ;GAChC,MAAM,mBACJ,sBAAsB,OAAO,SAAS,kBACtC,KAAA,MAAc,QAAQ;GACxB,OACE,UAAU,OAAO,SAAS,kBAC1B,kBACA;EAEJ;EACA,kBACE,QACA,SACA,QACS;GACT,IAAI,CAAC,UAAU,CAAC,SACd,OAAO;GAET,OACE,KAAK,yBAAyB,QAAQ,OAAO,MAC5C,CAAC,OAAO,SAAS,gBACf,OAAO,SAAS,gBAAgB;EAEvC;EACA,kBACE,QACA,QACS;GACT,IAAI,CAAC,QACH,OAAO;GAET,OACE,CAAC,OAAO,MAAM,gBAAiB,OAAO,MAAM,gBAAgB;EAEhE;EAOA,MAAM,aAAa;GAEjB,MAAM,aADW,YACE,EAAS,cAAa;GAEzC,MAAM,SAAS,IAAI,cADN,qBAAa,SAAS,WAAW,QAAQ,YAAY,EAAE,GAAE,GACnC,CAAG;GACtC,MAAM,OAAO,WAAW;GACxB,KAAK,yBAAyB;GAC9B,KAAK,qBAAqB;EAC5B;EAOA,qBAAqB;GACnB,IAAI,CAAC,KAAK,wBACR;GAEF,IACE,KAAK,oBACL,KAAK,oBACL,KAAK,uBAAuB,+BAC1B,KAAK,gBACP,GAEA,KAAK,uBAAuB,oCAC1B,KAAK,kBACL,KAAK,gBACP;EAEJ;EAEA,oBAAoB;GAClB,IAAI,CAAC,KAAK,wBACR;GAEF,IAAI,KAAK,oBAAoB,KAAK,kBAChC,KAAK,uBAAuB,kCAC1B,KAAK,kBACL,KAAK,mBACJ,YAAY;IACX,KAAK,2BAA2B,OAAO;GACzC,CACF;EAEJ;EAEA,MAAM,aAAa,WAAmB,gBAAwB;GAC5D,KAAK,mBAAmB;GACxB,KAAK,mBACH,oBAAoB,iBAAiB,MAAM;GAC7C,KAAK,mBAAmB;GACxB,KAAK,kBAAkB;EACzB;EACA,MAAM,sBAAsB;GAC1B,KAAK,oBAAoB;GACzB,KAAK,mBAAmB,KAAA;EAC1B;EAOA,sBAAsB;GACpB,KAAK,qBAAqB,MAAM;EAClC;EACA,2BAA2B,eAGxB;GACD,IAAI,eACF,KAAK,qBAAqB,KAAK,aAAa;QAE5C,KAAK,qBAAqB,OAAO,GAAG,KAAK,qBAAqB,MAAM;EAExE;CACF;AACF,CAAC"}
@@ -0,0 +1,355 @@
1
+ import { i as useAuthStore, t as classicApi_default, w as useApiStore } from "./classicApi-BKNiWOG4.mjs";
2
+ import { t as stringHelper_default } from "./stringHelper-DFr4Khve.mjs";
3
+ import { t as cookiesHelper_default } from "./cookiesHelper-BQksSais.mjs";
4
+ import { defineStore } from "pinia";
5
+ import dayjs from "dayjs";
6
+ import relativeTime from "dayjs/plugin/relativeTime";
7
+ //#region src/websocket/wss.ts
8
+ var SockJS = null;
9
+ var Stomp = null;
10
+ var WssConnection = class {
11
+ url;
12
+ endpoint;
13
+ subscriptions;
14
+ socket;
15
+ client;
16
+ queuedMessages;
17
+ processingMsg;
18
+ wssBroken;
19
+ /**
20
+ *
21
+ * @param {String} url url of the wss
22
+ * @param {String} endpoint of the wss
23
+ * @param {Map<String, Function>} topics list of topics and associated callback
24
+ */
25
+ constructor(url, endpoint) {
26
+ this.url = url;
27
+ this.endpoint = endpoint;
28
+ this.subscriptions = [];
29
+ this.processingMsg = false;
30
+ this.queuedMessages = [];
31
+ this.wssBroken = false;
32
+ }
33
+ async processQueuedMessages() {
34
+ if (this.processingMsg) return;
35
+ if (this.queuedMessages.length === 0) return;
36
+ this.processingMsg = true;
37
+ try {
38
+ const message = this.queuedMessages.shift();
39
+ await message.callback(message.message);
40
+ } catch (error) {
41
+ console.log(error);
42
+ }
43
+ this.processingMsg = false;
44
+ this.processQueuedMessages();
45
+ }
46
+ async connect() {
47
+ return new Promise((resolve, reject) => {
48
+ (async () => {
49
+ if (null === SockJS) await import("sockjs-client/dist/sockjs").then((sockLibrary) => {
50
+ SockJS = sockLibrary.default;
51
+ });
52
+ if (null === Stomp) await import("@stomp/stompjs").then((stompLibrary) => {
53
+ Stomp = stompLibrary.Stomp;
54
+ });
55
+ this.socket = new SockJS("https://" + this.url + "/" + this.endpoint);
56
+ this.client = Stomp.over(this.socket);
57
+ this.client.heartbeat.outgoing = 2e3;
58
+ this.client.heartbeat.incoming = 2e3;
59
+ this.client.debug = (sockMessage) => {
60
+ if (sockMessage.includes("did not receive server activity for the last")) this.wssBroken = true;
61
+ };
62
+ this.client.onConnect = () => {
63
+ this.connectionSuccess();
64
+ resolve();
65
+ };
66
+ this.client.onStompError = () => {
67
+ this.wssBroken = true;
68
+ this.connectionErrorReconnect();
69
+ reject(/* @__PURE__ */ new Error());
70
+ };
71
+ this.client.onWebSocketError = () => {
72
+ this.wssBroken = true;
73
+ this.connectionErrorReconnect();
74
+ reject(/* @__PURE__ */ new Error());
75
+ };
76
+ this.client.onDisconnect = () => {
77
+ this.connectionErrorReconnect();
78
+ reject(/* @__PURE__ */ new Error());
79
+ };
80
+ this.client.onWebSocketClose = () => {
81
+ this.connectionErrorReconnect();
82
+ reject(/* @__PURE__ */ new Error());
83
+ };
84
+ this.client.activate();
85
+ })();
86
+ });
87
+ }
88
+ async connectionErrorReconnect() {
89
+ if (!this.wssBroken) return;
90
+ console.log("Error in ws try to reconnect");
91
+ setTimeout(() => {
92
+ this.connect();
93
+ }, 10);
94
+ this.wssBroken = false;
95
+ }
96
+ connectionSuccess() {
97
+ this.subscriptions.forEach((element) => {
98
+ try {
99
+ this.subscribe(element.topic, element.callback);
100
+ } catch {
101
+ setTimeout(() => {
102
+ this.connect();
103
+ }, 1e4);
104
+ return;
105
+ }
106
+ });
107
+ }
108
+ subscribe(topic, callback) {
109
+ const subscription = this.client.subscribe(topic, (message) => {
110
+ this.queuedMessages.push({
111
+ message,
112
+ callback
113
+ });
114
+ this.processQueuedMessages();
115
+ });
116
+ this.subscriptions.push({
117
+ id: subscription.id,
118
+ topic,
119
+ callback
120
+ });
121
+ }
122
+ unsubscribe(topic) {
123
+ if (!topic) throw new Error("Cannot remove subscription if no search pattern is founded");
124
+ const removedSubscriptions = [];
125
+ this.subscriptions.forEach((item) => {
126
+ let valid = true;
127
+ if (item.topic !== topic) valid = false;
128
+ if (valid) {
129
+ removedSubscriptions.push(item);
130
+ try {
131
+ this.client.unsubscribe(item.id);
132
+ } catch {
133
+ console.log("Error while deconnecting client with item " + item.id);
134
+ }
135
+ }
136
+ });
137
+ this.subscriptions = this.subscriptions.filter((item) => !removedSubscriptions.includes(item));
138
+ }
139
+ disconnect() {
140
+ this.client.deactivate();
141
+ }
142
+ };
143
+ //#endregion
144
+ //#region src/websocket/commentWebsocket.ts
145
+ var CommentEngine = class {
146
+ uri;
147
+ connection;
148
+ subscribedEventComment;
149
+ constructor(wssDomain) {
150
+ this.uri = wssDomain;
151
+ this.connection = void 0;
152
+ this.subscribedEventComment = void 0;
153
+ }
154
+ async initialize() {
155
+ this.connection = new WssConnection(this.uri, "websocket");
156
+ await this.connection.connect();
157
+ }
158
+ async close() {
159
+ if (!this.connection) return;
160
+ this.connection.disconnect();
161
+ this.connection = void 0;
162
+ }
163
+ subscribeToPodcastCommentEventBus(podcastId, queueName, callback) {
164
+ if (!this.connection) throw new Error("Websocket engine must be initialized, before it can subscribe to any events");
165
+ if (podcastId) {
166
+ this.connection.subscribe(queueName, (message) => {
167
+ const jsonMessage = JSON.parse(message.body);
168
+ callback.call(this, jsonMessage);
169
+ });
170
+ this.subscribedEventComment = podcastId;
171
+ }
172
+ }
173
+ unsubscribeToPodcastCommentEventBus(podcastId, queueName) {
174
+ if (!this.connection) throw new Error("Websocket engine must be initialized, before it can unsubscribe to any events");
175
+ if (!podcastId) throw new Error("Cannot unsubscribe to comments event bus if no id provided");
176
+ this.connection.unsubscribe(queueName);
177
+ this.subscribedEventComment = void 0;
178
+ }
179
+ isPodcastCommentEventConnected(podcastId) {
180
+ return podcastId === this.subscribedEventComment;
181
+ }
182
+ };
183
+ //#endregion
184
+ //#region src/stores/CommentStore.ts
185
+ dayjs.extend(relativeTime);
186
+ function errorCommentsConfig() {
187
+ return {
188
+ inherited: false,
189
+ abuse: { authRequired: true },
190
+ commentLikes: {
191
+ authRequired: true,
192
+ dislikeEnabled: false,
193
+ likeEnabled: false
194
+ },
195
+ comments: {
196
+ authRequired: true,
197
+ commentAllowed: "NONE",
198
+ defaultState: "PENDING",
199
+ depth: 2
200
+ },
201
+ podcastLikes: {
202
+ authRequired: true,
203
+ dislikeEnabled: false,
204
+ likeEnabled: false
205
+ }
206
+ };
207
+ }
208
+ var useCommentStore = defineStore("CommentStore", {
209
+ state: () => ({
210
+ commentInitialized: false,
211
+ commentWebsocketengine: void 0,
212
+ commentPodcastId: void 0,
213
+ commentQueueName: void 0,
214
+ commentEventToHandle: [],
215
+ commentsForPlayer: {},
216
+ podcastsCommentsConfig: {}
217
+ }),
218
+ actions: {
219
+ async fetchCommentsForPlayer(podcastId) {
220
+ if (!this.commentsForPlayer[podcastId]) {
221
+ this.commentsForPlayer[podcastId] = [];
222
+ const size = 50;
223
+ let first = 0;
224
+ let keepFetching = true;
225
+ while (keepFetching) {
226
+ const data = await classicApi_default.fetchData({
227
+ api: 2,
228
+ path: "comment/list",
229
+ parameters: {
230
+ first,
231
+ size,
232
+ podcastId,
233
+ sort: "DATE_DESC",
234
+ hideAnswers: true,
235
+ state: "VALIDATED"
236
+ },
237
+ isNotAuth: true
238
+ });
239
+ first += size;
240
+ this.commentsForPlayer[podcastId] = this.commentsForPlayer[podcastId].concat(data.result);
241
+ keepFetching = data.count !== this.commentsForPlayer[podcastId].length;
242
+ }
243
+ }
244
+ return this.commentsForPlayer[podcastId];
245
+ },
246
+ async digest(message) {
247
+ return Array.from(new Uint8Array(await crypto.subtle.digest("SHA-1", new TextEncoder().encode(message))), (byte) => byte.toString(16).padStart(2, "0")).join("");
248
+ },
249
+ async initCommentUser() {
250
+ if (this.commentUser) return;
251
+ const authStore = useAuthStore();
252
+ if (authStore.authProfile) {
253
+ this.commentUser = {
254
+ name: authStore.authName,
255
+ uuid: authStore.authProfile.userId
256
+ };
257
+ return;
258
+ }
259
+ let uuid = cookiesHelper_default.getCookie("comment-octopus-uuid");
260
+ if (null === uuid) {
261
+ uuid = stringHelper_default.uuidv4();
262
+ cookiesHelper_default.setCookie("comment-octopus-uuid", uuid);
263
+ }
264
+ const hash = await this.digest(uuid);
265
+ this.commentUser = {
266
+ name: cookiesHelper_default.getCookie("comment-octopus-name"),
267
+ uuid,
268
+ uuidHash: hash
269
+ };
270
+ if ("#miniplayer" === this.commentUser?.name) this.commentUser.name = null;
271
+ },
272
+ setCommentUser(name) {
273
+ if (useAuthStore().authProfile || !this.commentUser) return;
274
+ cookiesHelper_default.setCookie("comment-octopus-name", name);
275
+ this.commentUser.name = name;
276
+ },
277
+ async getCommentsConfig(podcast) {
278
+ if (this.podcastsCommentsConfig[podcast.podcastId]) return this.podcastsCommentsConfig[podcast.podcastId];
279
+ try {
280
+ this.podcastsCommentsConfig[podcast.podcastId] = await classicApi_default.fetchData({
281
+ api: 2,
282
+ path: "config/podcast/" + podcast.podcastId
283
+ });
284
+ } catch {
285
+ try {
286
+ this.podcastsCommentsConfig[podcast.podcastId] = await classicApi_default.fetchData({
287
+ api: 2,
288
+ path: "config/emission/" + podcast.emission.emissionId
289
+ });
290
+ } catch {
291
+ this.podcastsCommentsConfig[podcast.podcastId] = errorCommentsConfig();
292
+ }
293
+ }
294
+ return this.podcastsCommentsConfig[podcast.podcastId];
295
+ },
296
+ resetPodcastsConfig() {
297
+ this.podcastsCommentsConfig = {};
298
+ },
299
+ updatePodcastsConfig(podcastId, config) {
300
+ this.podcastsCommentsConfig[podcastId] = config;
301
+ },
302
+ getCanPostCommentAllowed(config, podcast) {
303
+ if ("NONE" === config.comments.commentAllowed) return false;
304
+ const rightsLiveOnly = "LIVE_ONLY" === config.comments.commentAllowed && void 0 !== podcast.conferenceId && "READY_TO_RECORD" === podcast.processingStatus;
305
+ const rightsLiveRecord = "LIVE_AND_REPLAY" === config.comments.commentAllowed && void 0 !== podcast.conferenceId;
306
+ return "ALL" === config.comments.commentAllowed || rightsLiveOnly || rightsLiveRecord;
307
+ },
308
+ getCanPostComment(config, podcast, isAuth) {
309
+ if (!config || !podcast) return false;
310
+ return this.getCanPostCommentAllowed(config, podcast) && (!config.comments.authRequired || config.comments.authRequired && isAuth);
311
+ },
312
+ getCanReportAbuse(config, isAuth) {
313
+ if (!config) return false;
314
+ return !config.abuse.authRequired || config.abuse.authRequired && isAuth;
315
+ },
316
+ async initialize() {
317
+ const commentUrl = useApiStore().commentUrl ?? "https://comments.dev2.saooti.org/";
318
+ const engine = new CommentEngine(stringHelper_default.trimChar(commentUrl.replace("https://", ""), "/"));
319
+ await engine.initialize();
320
+ this.commentWebsocketengine = engine;
321
+ this.commentInitialized = true;
322
+ },
323
+ unsubscribeToEvent() {
324
+ if (!this.commentWebsocketengine) return;
325
+ if (this.commentPodcastId && this.commentQueueName && this.commentWebsocketengine.isPodcastCommentEventConnected(this.commentPodcastId)) this.commentWebsocketengine.unsubscribeToPodcastCommentEventBus(this.commentPodcastId, this.commentQueueName);
326
+ },
327
+ subscribeToEvents() {
328
+ if (!this.commentWebsocketengine) return;
329
+ if (this.commentPodcastId && this.commentQueueName) this.commentWebsocketengine.subscribeToPodcastCommentEventBus(this.commentPodcastId, this.commentQueueName, (message) => {
330
+ this.commentEventToHandleUpdate(message);
331
+ });
332
+ },
333
+ async initComments(podcastId, organisationId) {
334
+ this.unsubscribeToEvent();
335
+ this.commentQueueName = "/topic/comment." + organisationId + "." + podcastId;
336
+ this.commentPodcastId = podcastId;
337
+ this.subscribeToEvents();
338
+ },
339
+ async unsubscribeComments() {
340
+ this.unsubscribeComments();
341
+ this.commentPodcastId = void 0;
342
+ },
343
+ commentEventHandled() {
344
+ this.commentEventToHandle.shift();
345
+ },
346
+ commentEventToHandleUpdate(eventToHandle) {
347
+ if (eventToHandle) this.commentEventToHandle.push(eventToHandle);
348
+ else this.commentEventToHandle.splice(0, this.commentEventToHandle.length);
349
+ }
350
+ }
351
+ });
352
+ //#endregion
353
+ export { useCommentStore as t };
354
+
355
+ //# sourceMappingURL=CommentStore-BjQ0AGHa.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"CommentStore-BjQ0AGHa.mjs","names":[],"sources":["../src/websocket/wss.ts","../src/websocket/commentWebsocket.ts","../src/stores/CommentStore.ts"],"sourcesContent":["/* eslint-disable */\nlet SockJS: any = null;\nlet Stomp: any = null;\n/* eslint-enable */\n\ninterface Subscription {\n id: string;\n topic: string;\n callback: (message: { body: string }) => void;\n subscription?: () => void;\n}\n\nexport default class WssConnection {\n url: string;\n endpoint: string;\n subscriptions: Array<Subscription>;\n /* eslint-disable */\n socket: {\n (url: string, _reserved?: any, options?: SockJS.Options | undefined): WebSocket;\n new (url: string, _reserved?: any, options?: SockJS.Options | undefined): WebSocket;\n prototype: WebSocket;\n CONNECTING: SockJS.CONNECTING;\n OPEN: SockJS.OPEN;\n CLOSING: SockJS.CLOSING;\n CLOSED: SockJS.CLOSED;\n }|undefined ;\n client: any;\n queuedMessages: Array<any>;\n processingMsg: boolean;\n wssBroken: boolean;\n /* eslint-enable */\n /**\n *\n * @param {String} url url of the wss\n * @param {String} endpoint of the wss\n * @param {Map<String, Function>} topics list of topics and associated callback\n */\n constructor(url: string, endpoint: string) {\n this.url = url;\n this.endpoint = endpoint;\n this.subscriptions = [];\n this.processingMsg = false;\n this.queuedMessages = [];\n this.wssBroken = false;\n }\n async processQueuedMessages() {\n if (this.processingMsg) {\n return;\n }\n if (this.queuedMessages.length === 0) {\n return;\n }\n this.processingMsg = true;\n try {\n const message = this.queuedMessages.shift();\n await message.callback(message.message);\n } catch (error) {\n console.log(error);\n }\n this.processingMsg = false;\n this.processQueuedMessages();\n }\n\n async connect(): Promise<void> {\n return new Promise<void>((resolve, reject) => {\n (async () => {\n if (null === SockJS) {\n await import(\"sockjs-client/dist/sockjs\").then((sockLibrary) => {\n SockJS = sockLibrary.default;\n });\n }\n if (null === Stomp) {\n await import(\"@stomp/stompjs\").then((stompLibrary) => {\n Stomp = stompLibrary.Stomp;\n });\n }\n this.socket = new SockJS(\"https://\" + this.url + \"/\" + this.endpoint);\n this.client = Stomp.over(this.socket);\n this.client.heartbeat.outgoing = 2000;\n this.client.heartbeat.incoming = 2000;\n this.client.debug = (sockMessage: string) => {\n if (\n sockMessage.includes(\"did not receive server activity for the last\")\n ) {\n this.wssBroken = true;\n }\n };\n this.client.onConnect = () => {\n this.connectionSuccess();\n resolve();\n };\n this.client.onStompError = () => {\n this.wssBroken = true;\n this.connectionErrorReconnect();\n reject(new Error());\n };\n this.client.onWebSocketError = () => {\n this.wssBroken = true;\n this.connectionErrorReconnect();\n reject(new Error());\n };\n this.client.onDisconnect = () => {\n this.connectionErrorReconnect();\n reject(new Error());\n };\n this.client.onWebSocketClose = () => {\n this.connectionErrorReconnect();\n reject(new Error());\n };\n\n this.client.activate();\n })();\n });\n }\n\n async connectionErrorReconnect() {\n if (!this.wssBroken) {\n return;\n }\n console.log(\"Error in ws try to reconnect\");\n setTimeout(() => {\n this.connect();\n }, 10);\n this.wssBroken = false;\n }\n\n connectionSuccess(): void {\n this.subscriptions.forEach((element: Subscription) => {\n // On récupère tous les évènements freeswitch\n try {\n this.subscribe(element.topic, element.callback);\n } catch {\n setTimeout(() => {\n this.connect();\n }, 10000);\n return;\n }\n });\n }\n\n subscribe(topic: string, callback: (message: { body: string }) => any): void {\n const subscription = this.client.subscribe(topic, (message: any) => {\n this.queuedMessages.push({ message: message, callback: callback });\n this.processQueuedMessages();\n });\n this.subscriptions.push({\n id: subscription.id,\n topic: topic,\n callback: callback,\n });\n }\n\n unsubscribe(topic: string): void {\n if (!topic) {\n throw new Error(\n \"Cannot remove subscription if no search pattern is founded\",\n );\n }\n const removedSubscriptions: Array<Subscription> = [];\n this.subscriptions.forEach((item: Subscription) => {\n let valid = true;\n if (item.topic !== topic) {\n valid = false;\n }\n if (valid) {\n removedSubscriptions.push(item);\n try {\n this.client.unsubscribe(item.id);\n } catch {\n console.log(\"Error while deconnecting client with item \" + item.id);\n }\n }\n });\n this.subscriptions = this.subscriptions.filter(\n (item: Subscription) => !removedSubscriptions.includes(item),\n );\n }\n\n disconnect(): void {\n this.client.deactivate();\n }\n}\n","import { CommentMessage } from \"@/stores/class/config/commentsConfig\";\nimport WssConnection from \"./wss\";\n\nexport default class CommentEngine {\n uri: string;\n connection: WssConnection | undefined;\n subscribedEventComment: number|undefined;\n\n constructor(wssDomain: string) {\n this.uri = wssDomain;\n this.connection = undefined;\n this.subscribedEventComment = undefined;\n }\n\n async initialize(): Promise<void> {\n this.connection = new WssConnection(this.uri, \"websocket\");\n await this.connection.connect();\n }\n async close(): Promise<void> {\n if (!this.connection) {\n return;\n }\n this.connection.disconnect();\n this.connection = undefined;\n }\n\n subscribeToPodcastCommentEventBus(\n podcastId: number,\n queueName: string,\n callback: (jsonMessage: CommentMessage) => void,\n ): void {\n if (!this.connection) {\n throw new Error(\n \"Websocket engine must be initialized, before it can subscribe to any events\",\n );\n }\n if (podcastId) {\n this.connection.subscribe(\n queueName,\n (message) => {\n const jsonMessage = JSON.parse(message.body);\n callback.call(this, jsonMessage);\n },\n );\n this.subscribedEventComment = podcastId;\n }\n }\n\n unsubscribeToPodcastCommentEventBus(podcastId: number, queueName: string): void {\n if (!this.connection) {\n throw new Error(\n \"Websocket engine must be initialized, before it can unsubscribe to any events\",\n );\n }\n if (!podcastId) {\n throw new Error(\n \"Cannot unsubscribe to comments event bus if no id provided\",\n );\n }\n this.connection.unsubscribe(queueName);\n this.subscribedEventComment = undefined;\n }\n\n isPodcastCommentEventConnected(podcastId: number): boolean {\n return podcastId===this.subscribedEventComment;\n }\n}\n","//Import dayjs extend\nimport dayjs from \"dayjs\";\nimport relativeTime from \"dayjs/plugin/relativeTime\";\ndayjs.extend(relativeTime);\n\nimport { defineStore } from \"pinia\";\nimport cookiesHelper from \"../helper/cookiesHelper\";\nimport WebSocketEngine from \"../websocket/commentWebsocket\";\nimport { CommentPodcast } from \"./class/general/comment\";\nimport { useAuthStore } from \"./AuthStore\";\nimport { useApiStore } from \"./ApiStore\";\nimport stringHelper from \"../helper/stringHelper\";\nimport { CommentMessage, CommentsConfig } from \"./class/config/commentsConfig\";\nimport classicApi from \"../api/classicApi\";\nimport { Podcast } from \"./class/general/podcast\";\nimport { ListClassicReturn } from \"./class/general/listReturn\";\nfunction errorCommentsConfig(): CommentsConfig {\n return {\n inherited: false,\n abuse: {\n authRequired: true,\n },\n commentLikes: {\n authRequired: true,\n dislikeEnabled: false,\n likeEnabled: false,\n },\n comments: {\n authRequired: true,\n commentAllowed: \"NONE\",\n defaultState: \"PENDING\",\n depth: 2,\n },\n podcastLikes: {\n authRequired: true,\n dislikeEnabled: false,\n likeEnabled: false,\n },\n };\n}\n\n\nexport interface CommentUser {\n name: string | null;\n uuid: string | null;\n uuidHash: string | null;\n}\ninterface CommentState {\n commentInitialized: boolean;\n commentWebsocketengine: WebSocketEngine | undefined;\n commentPodcastId?: number;\n commentQueueName?: string;\n commentEventToHandle: Array<CommentMessage>;\n commentUser?: CommentUser;\n commentsForPlayer: { [key: number]: Array<CommentPodcast> };\n podcastsCommentsConfig: { [key: number]: CommentsConfig };\n}\nexport const useCommentStore = defineStore(\"CommentStore\", {\n state: (): CommentState => ({\n commentInitialized: false,\n commentWebsocketengine: undefined,\n commentPodcastId: undefined,\n commentQueueName: undefined,\n commentEventToHandle: [],\n commentsForPlayer: {},\n podcastsCommentsConfig: {},\n }),\n actions: {\n async fetchCommentsForPlayer(podcastId: number) {\n if (!this.commentsForPlayer[podcastId]) {\n this.commentsForPlayer[podcastId] = [];\n const size = 50;\n let first = 0;\n let keepFetching = true;\n while (keepFetching) {\n const data = await classicApi.fetchData<ListClassicReturn<CommentPodcast>>({\n api:2,\n path:\"comment/list\",\n parameters:{\n first: first,\n size: size,\n podcastId: podcastId,\n sort: \"DATE_DESC\",\n hideAnswers: true,\n state: \"VALIDATED\",\n },\n isNotAuth:true\n });\n first += size;\n this.commentsForPlayer[podcastId] = this.commentsForPlayer[\n podcastId\n ].concat(data.result);\n keepFetching =\n data.count !== this.commentsForPlayer[podcastId].length;\n }\n }\n return this.commentsForPlayer[podcastId];\n },\n async digest(message: string) {\n return Array.from(\n new Uint8Array(\n await crypto.subtle.digest(\n \"SHA-1\",\n new TextEncoder().encode(message),\n ),\n ),\n (byte) => byte.toString(16).padStart(2, \"0\"),\n ).join(\"\");\n },\n async initCommentUser() {\n if (this.commentUser) {\n return;\n }\n const authStore = useAuthStore();\n if (authStore.authProfile) {\n this.commentUser = {\n name: authStore.authName,\n uuid: authStore.authProfile.userId,\n };\n return;\n }\n let uuid = cookiesHelper.getCookie(\"comment-octopus-uuid\");\n if (null === uuid) {\n uuid = stringHelper.uuidv4();\n cookiesHelper.setCookie(\"comment-octopus-uuid\", uuid);\n }\n const hash = await this.digest(uuid);\n this.commentUser = {\n name: cookiesHelper.getCookie(\"comment-octopus-name\"),\n uuid: uuid,\n uuidHash: hash,\n };\n if (\"#miniplayer\" === this.commentUser?.name) {\n this.commentUser.name = null;\n }\n },\n setCommentUser(name: string) {\n const authStore = useAuthStore();\n if (authStore.authProfile || !this.commentUser) {\n return;\n }\n cookiesHelper.setCookie(\"comment-octopus-name\", name);\n this.commentUser.name = name;\n },\n async getCommentsConfig(podcast: Podcast): Promise<CommentsConfig> {\n if (this.podcastsCommentsConfig[podcast.podcastId]) {\n return this.podcastsCommentsConfig[podcast.podcastId];\n }\n try {\n this.podcastsCommentsConfig[podcast.podcastId] = await classicApi.fetchData<CommentsConfig>({\n api: 2,\n path:\"config/podcast/\" + podcast.podcastId,\n });\n } catch {\n try {\n this.podcastsCommentsConfig[podcast.podcastId] = await classicApi.fetchData<CommentsConfig>({\n api: 2,\n path: \"config/emission/\" + podcast.emission.emissionId,\n });\n } catch {\n this.podcastsCommentsConfig[podcast.podcastId] = errorCommentsConfig(); \n }\n }\n return this.podcastsCommentsConfig[podcast.podcastId];\n },\n resetPodcastsConfig() {\n this.podcastsCommentsConfig = {};\n },\n updatePodcastsConfig(podcastId: number, config: CommentsConfig) {\n this.podcastsCommentsConfig[podcastId] = config;\n },\n getCanPostCommentAllowed(\n config: CommentsConfig,\n podcast: Podcast,\n ): boolean {\n if (\"NONE\" === config.comments.commentAllowed) {\n return false;\n }\n const rightsLiveOnly =\n \"LIVE_ONLY\" === config.comments.commentAllowed &&\n undefined !== podcast.conferenceId &&\n \"READY_TO_RECORD\" === podcast.processingStatus;\n const rightsLiveRecord =\n \"LIVE_AND_REPLAY\" === config.comments.commentAllowed &&\n undefined !== podcast.conferenceId;\n return (\n \"ALL\" === config.comments.commentAllowed ||\n rightsLiveOnly ||\n rightsLiveRecord\n );\n },\n getCanPostComment(\n config: CommentsConfig | undefined,\n podcast: Podcast | undefined,\n isAuth: boolean,\n ): boolean {\n if (!config || !podcast) {\n return false;\n }\n return (\n this.getCanPostCommentAllowed(config, podcast) &&\n (!config.comments.authRequired ||\n (config.comments.authRequired && isAuth))\n );\n },\n getCanReportAbuse(\n config: CommentsConfig | undefined,\n isAuth: boolean,\n ): boolean {\n if (!config) {\n return false;\n }\n return (\n !config.abuse.authRequired || (config.abuse.authRequired && isAuth)\n );\n },\n\n /*--------------------------------------------------------------------------------------------------------------\n | |\n | Initializing state |\n | |\n --------------------------------------------------------------------------------------------------------------*/\n async initialize() {\n const apiStore = useApiStore();\n const commentUrl = apiStore.commentUrl?? \"https://comments.dev2.saooti.org/\";\n const url = stringHelper.trimChar(commentUrl.replace(\"https://\", \"\"),\"/\");\n const engine = new WebSocketEngine(url);\n await engine.initialize();\n this.commentWebsocketengine = engine;\n this.commentInitialized = true;\n },\n\n /*--------------------------------------------------------------------------------------------------------------\n | |\n | Comments management methods |\n | |\n --------------------------------------------------------------------------------------------------------------*/\n unsubscribeToEvent() {\n if (!this.commentWebsocketengine) {\n return;\n }\n if (\n this.commentPodcastId &&\n this.commentQueueName &&\n this.commentWebsocketengine.isPodcastCommentEventConnected(\n this.commentPodcastId,\n )\n ) {\n this.commentWebsocketengine.unsubscribeToPodcastCommentEventBus(\n this.commentPodcastId,\n this.commentQueueName,\n );\n }\n },\n\n subscribeToEvents() {\n if (!this.commentWebsocketengine) {\n return;\n }\n if (this.commentPodcastId && this.commentQueueName) {\n this.commentWebsocketengine.subscribeToPodcastCommentEventBus(\n this.commentPodcastId,\n this.commentQueueName,\n (message) => {\n this.commentEventToHandleUpdate(message);\n },\n );\n }\n },\n\n async initComments(podcastId: number, organisationId: string) {\n this.unsubscribeToEvent();\n this.commentQueueName =\n \"/topic/comment.\" + organisationId + \".\" + podcastId;\n this.commentPodcastId = podcastId;\n this.subscribeToEvents();\n },\n async unsubscribeComments() {\n this.unsubscribeComments();\n this.commentPodcastId = undefined;\n },\n\n /*--------------------------------------------------------------------------------------------------------------\n | |\n | Managing conference WebSocket Event Received |\n | |\n --------------------------------------------------------------------------------------------------------------*/\n commentEventHandled() {\n this.commentEventToHandle.shift();\n },\n commentEventToHandleUpdate(eventToHandle: {\n comment: CommentPodcast;\n type: string;\n }) {\n if (eventToHandle) {\n this.commentEventToHandle.push(eventToHandle);\n } else {\n this.commentEventToHandle.splice(0, this.commentEventToHandle.length);\n }\n },\n },\n});\n"],"mappings":"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"}