@saooti/octopus-sdk 42.0.4 → 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 (1062) 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/display/live/RadioCurrently.vue +3 -4
  829. package/src/components/layouts/PresentationLayout.vue +9 -3
  830. package/src/components/misc/ProgressBar.vue +0 -1
  831. package/src/components/misc/player/ads/AdsProgressBar.vue +17 -1
  832. package/src/components/misc/player/radio/RadioProgressBar.vue +16 -0
  833. package/dist/AccessibilityModal-CBIb3UQS.mjs +0 -93
  834. package/dist/AdsProgressBar-BwRrrKOT.mjs +0 -19
  835. package/dist/AdvancedSearch-Bd9tK-4i.mjs +0 -249
  836. package/dist/AmazonMusicIcon-6zqZK6Q9.mjs +0 -39
  837. package/dist/ApplePodcastIcon-C3ogP5y5.mjs +0 -40
  838. package/dist/CategoryChooser-Ct0No4RM.mjs +0 -173
  839. package/dist/CategoryFilter-CNCjhnMP.mjs +0 -146
  840. package/dist/CategoryList-Buh73sPa.mjs +0 -107
  841. package/dist/CategoryPage-guP6_hCq.mjs +0 -28
  842. package/dist/CategorySearchFilter-BRfxF0yK.mjs +0 -39
  843. package/dist/ChapteringModal-B29-28dk.mjs +0 -46
  844. package/dist/CheckIdentityModal-Dh-7hC5M.mjs +0 -51
  845. package/dist/ChooseEpisodesNumber-CXJO5dfs.mjs +0 -33
  846. package/dist/ClassicAccordion-Czni43ek.mjs +0 -71
  847. package/dist/ClassicAlert-1IB6N33c.mjs +0 -35
  848. package/dist/ClassicBigChip-D6QO8W-G.mjs +0 -25
  849. package/dist/ClassicCheckbox-xPu56Drn.mjs +0 -89
  850. package/dist/ClassicContentEditable-CWmtRihd.mjs +0 -45
  851. package/dist/ClassicCopyButton-DJ9T09fS.mjs +0 -52
  852. package/dist/ClassicDatePicker-BrPx6CHY.mjs +0 -187
  853. package/dist/ClassicEmojiPicker-2c55qjy6.mjs +0 -63
  854. package/dist/ClassicHelpButton-DdEJu6tX.mjs +0 -34
  855. package/dist/ClassicInputText-ILQDQz8R.mjs +0 -270
  856. package/dist/ClassicLazy-DhdsXyI4.mjs +0 -56
  857. package/dist/ClassicLoading-CXfMjpyl.mjs +0 -40
  858. package/dist/ClassicModal-Dl2IdzXZ.mjs +0 -63
  859. package/dist/ClassicModalInBody-D5-RfQ8Z.mjs +0 -58
  860. package/dist/ClassicMultiselect-DKdQdAtp.mjs +0 -201
  861. package/dist/ClassicNav-DYez6p1J.mjs +0 -47
  862. package/dist/ClassicPopover-6uo-YUgO.mjs +0 -167
  863. package/dist/ClassicRadio-BbJEgMB7.mjs +0 -61
  864. package/dist/ClassicRadioLabel-DgimkkQe.mjs +0 -76
  865. package/dist/ClassicSearch-CtL1cpnF.mjs +0 -63
  866. package/dist/ClassicSelect-BpA0jKN6.mjs +0 -111
  867. package/dist/ClassicSpinner-DFRDD51g.mjs +0 -28
  868. package/dist/ClassicTabs-DYOZLNK2.mjs +0 -40
  869. package/dist/ClassicTagInput-DiRwA8CF.mjs +0 -62
  870. package/dist/ClassicWysiwyg-CbBzD-21.mjs +0 -164
  871. package/dist/ClipboardModal-DBIetCe6.mjs +0 -56
  872. package/dist/CommentBasicView-CJgGRZXW.mjs +0 -76
  873. package/dist/CommentInput-BuXFDUZI.mjs +0 -111
  874. package/dist/CommentItem-C1KdIG3j.mjs +0 -155
  875. package/dist/CommentList-DTKpZSb6.mjs +0 -204
  876. package/dist/CommentMoreActions-BiyzPozQ.mjs +0 -191
  877. package/dist/CommentName-BdoUJC9A.mjs +0 -56
  878. package/dist/CommentParentInfo-kXKfL3N4.mjs +0 -36
  879. package/dist/CommentPlayer-BIOwn4Ao.mjs +0 -47
  880. package/dist/CommentSection-CQGAn83J.mjs +0 -79
  881. package/dist/CommentStore-CVBkPvHJ.mjs +0 -279
  882. package/dist/ContractPreviewModal-BJEnYMoK.mjs +0 -53
  883. package/dist/CountDown-o6ye6yv1.mjs +0 -17
  884. package/dist/CountdownOctopus-D0X5hVBu.mjs +0 -23
  885. package/dist/DateFilter-67VvJ4ez.mjs +0 -79
  886. package/dist/DeezerIcon-CybxfijL.mjs +0 -39
  887. package/dist/DownloadPodcastButton-CcUJ8Wuh.mjs +0 -30
  888. package/dist/EditCommentModal-DoVppFIY.mjs +0 -114
  889. package/dist/EditFtpIcon-B1FO4hqc.mjs +0 -39
  890. package/dist/EmissionGroupChooser-B10wDKyp.mjs +0 -44
  891. package/dist/EmissionInlineList-Cn8j50o6.mjs +0 -113
  892. package/dist/EmissionItem-CQbtdUNM.mjs +0 -116
  893. package/dist/EmissionList-E0Hsq0mr.mjs +0 -230
  894. package/dist/EmissionPage-BY0IY-Ci.mjs +0 -188
  895. package/dist/EmissionPlayerItem-KHWB18Ru.mjs +0 -119
  896. package/dist/EmissionPresentationItem-2hfEZ9Wc.mjs +0 -41
  897. package/dist/EmissionPresentationList-Da6YRCuJ.mjs +0 -92
  898. package/dist/EmissionsPage-BpPlQ1vL.mjs +0 -112
  899. package/dist/Error403Page-D7zKplcn.mjs +0 -40
  900. package/dist/ErrorMessage-B4gtlriP.mjs +0 -22
  901. package/dist/FooterGarSection-CwAVj0X8.mjs +0 -39
  902. package/dist/FooterSection-CklRE0yr.mjs +0 -148
  903. package/dist/GeneralStore-Darfv4af.mjs +0 -39
  904. package/dist/HomeDropdown-D65QDBBQ.mjs +0 -66
  905. package/dist/HomePage-stJtq5XR.mjs +0 -106
  906. package/dist/IHeartIcon-DP1otYre.mjs +0 -42
  907. package/dist/LikeButton-Cu8jAJHx.mjs +0 -40
  908. package/dist/LikeSection-xB4hZ4kv.mjs +0 -96
  909. package/dist/ListPaginate-gdpJpyC6.mjs +0 -147
  910. package/dist/LiveHorizontalList-D1QZCKdq.mjs +0 -77
  911. package/dist/LiveList-CerWcFJv.mjs +0 -206
  912. package/dist/LivesPage-C-jtDd4n.mjs +0 -40
  913. package/dist/MapPage-Bef5gLQu.mjs +0 -240
  914. package/dist/MessageModal-BcqS77v6.mjs +0 -101
  915. package/dist/MobileMenu-CV5t_RXg.mjs +0 -136
  916. package/dist/MonetizableFilter-B7NHzXEY.mjs +0 -58
  917. package/dist/NewsletterModal-CEI0I08q.mjs +0 -53
  918. package/dist/OctopusMultiselect-CaLjXg_3.mjs +0 -234
  919. package/dist/OrganisationChooser-CvHoHxHL.mjs +0 -133
  920. package/dist/OrganisationChooserLight-CJ7IbvRM.mjs +0 -48
  921. package/dist/PageLogout-CVZHOw8c.mjs +0 -12
  922. package/dist/PageNotFound-Cgmgm9i1.mjs +0 -37
  923. package/dist/PaginateParams-Bjz3ZI-5.mjs +0 -75
  924. package/dist/PaginateSection-Oip_5JHt.mjs +0 -137
  925. package/dist/ParticipantDescription-DVSfKvtg.mjs +0 -46
  926. package/dist/ParticipantInlineList-CVsGpX6b.mjs +0 -84
  927. package/dist/ParticipantItem-BIWNtU2J.mjs +0 -91
  928. package/dist/ParticipantPage-BvSoNApw.mjs +0 -129
  929. package/dist/ParticipantsPage-ho_vMsWs.mjs +0 -168
  930. package/dist/PlayVideoIcon-BhTQpMyL.mjs +0 -40
  931. package/dist/PlayerAnonymousModal-DI-OzIJ0.mjs +0 -61
  932. package/dist/PlayerCommonParameters-x0zV7AoW.mjs +0 -27
  933. package/dist/PlayerCompact-BjS5HFvK.mjs +0 -128
  934. package/dist/PlayerComponent-CajQtPxX.mjs +0 -592
  935. package/dist/PlayerFmIcon-D7gURz4r.mjs +0 -39
  936. package/dist/PlayerLarge-H4sl7hoe.mjs +0 -128
  937. package/dist/PlayerParameters-kVBMXQIb.mjs +0 -173
  938. package/dist/PlayerPlayButton-DfzHBM_X.mjs +0 -231
  939. package/dist/PlayerProgressBar-CSY72hgw.mjs +0 -67
  940. package/dist/PlayerStore-C4T1vCHz.mjs +0 -166
  941. package/dist/PlayerVideo-BfR5fBo_.mjs +0 -35
  942. package/dist/PlayerVideoDigiteka-C6ZA6XkR.mjs +0 -59
  943. package/dist/PlayerVideoHls-B8dm2-2-.mjs +0 -125
  944. package/dist/PlayerYoutubeEmbed-D-UrFhXm.mjs +0 -25
  945. package/dist/PlaylistPage-DTy_55xp.mjs +0 -135
  946. package/dist/PlaylistsPage-m-ST2PUd.mjs +0 -254
  947. package/dist/PocketCastIcon-CM5NDsDa.mjs +0 -39
  948. package/dist/PodcastAddictIcon-CW3Uxj4I.mjs +0 -42
  949. package/dist/PodcastFilterList-Bz8c8rOJ.mjs +0 -139
  950. package/dist/PodcastImage-BGQti5JM.mjs +0 -115
  951. package/dist/PodcastInlineList-WvkPSh1V.mjs +0 -117
  952. package/dist/PodcastInlineListTemplate-D1bIqp9s.mjs +0 -180
  953. package/dist/PodcastIsPlaying-mWJppqAl.mjs +0 -17
  954. package/dist/PodcastItem-CYPwjD38.mjs +0 -158
  955. package/dist/PodcastList-BfqxVGag.mjs +0 -184
  956. package/dist/PodcastList-D3jE4KxK.mjs +0 -113
  957. package/dist/PodcastPage-GTzk5mUv.mjs +0 -409
  958. package/dist/PodcastPlannedSpinner-DcDDays8.mjs +0 -12
  959. package/dist/PodcastPlayBar-YJnOuGTK.mjs +0 -39
  960. package/dist/PodcastPlayBasicButton-BYpnGOO1.mjs +0 -44
  961. package/dist/PodcastPlayButton-CJ8BRg-T.mjs +0 -118
  962. package/dist/PodcastPlaylistInlineList-CmgnXWqI.mjs +0 -63
  963. package/dist/PodcastPresentationList-BBbhrj5M.mjs +0 -130
  964. package/dist/PodcastProgressBar-DDmGqHRZ.mjs +0 -66
  965. package/dist/PodcastRawTranscript-uMquvyIx.mjs +0 -100
  966. package/dist/PodcastRubriqueList-CMcls_jK.mjs +0 -46
  967. package/dist/PodcastSeasonInfo-DDGSqj8M.mjs +0 -28
  968. package/dist/PodcastSwiperList-CR4Daki7.mjs +0 -164
  969. package/dist/PodcastmakerHeader-Blma5tOE.mjs +0 -33
  970. package/dist/PodcastsPage-BZfbH613.mjs +0 -123
  971. package/dist/PresentationLayout-LcZqb8bn.mjs +0 -62
  972. package/dist/ProductorSearch-Cyo0OOte.mjs +0 -91
  973. package/dist/ProgressBar-h-6hD6C6.mjs +0 -112
  974. package/dist/QrCode-CB7uCURG.mjs +0 -105
  975. package/dist/QrCodeModal-uLXUjfFk.mjs +0 -43
  976. package/dist/RadioCurrently-CxTpzc3O.mjs +0 -57
  977. package/dist/RadioHistory-DaY_apJL.mjs +0 -89
  978. package/dist/RadioImage-CGdu0tqS.mjs +0 -46
  979. package/dist/RadioList-Dwjy8BJK.mjs +0 -70
  980. package/dist/RadioPage-B0cZlWcd.mjs +0 -72
  981. package/dist/RadioPlanning-yTAzd4fk.mjs +0 -183
  982. package/dist/RadioProgressBar-DLRlsyeG.mjs +0 -31
  983. package/dist/RadiolineIcon-CxHZGhfr.mjs +0 -40
  984. package/dist/RecaptchaModal-eBNvLZYg.mjs +0 -95
  985. package/dist/ReportAbuseModal-0i7fa_Kb.mjs +0 -92
  986. package/dist/RightsIndicator-BFKSa05U.mjs +0 -58
  987. package/dist/RightsWrapper-BRWuAx2F.mjs +0 -104
  988. package/dist/RubriqueChoice-DWvVVaMg.mjs +0 -101
  989. package/dist/RubriqueChooser-B7wvJeQc.mjs +0 -165
  990. package/dist/RubriqueFilter-BLW_L9Wm.mjs +0 -119
  991. package/dist/RubriqueList-DKBuYW37.mjs +0 -117
  992. package/dist/RubriquePage-D4b-tHSI.mjs +0 -71
  993. package/dist/SearchOrder-D_dAhj9M.mjs +0 -62
  994. package/dist/SearchPage-DiEabf9d.mjs +0 -38
  995. package/dist/ShareAnonymous-DnvGBSfx.mjs +0 -189
  996. package/dist/ShareModalPlayer-CXYjEN8k.mjs +0 -87
  997. package/dist/ShareNewsletter-C6U_Jjnm.mjs +0 -143
  998. package/dist/SharePlayer-B7YLKRAB.mjs +0 -210
  999. package/dist/SharePlayerColors-BpdifsHh.mjs +0 -49
  1000. package/dist/SharePlayerRadio-Dy6UuwWM.mjs +0 -66
  1001. package/dist/SharePlayerTypes-CeecVrvy.mjs +0 -148
  1002. package/dist/ShareSocialsButtons-ty0wa4Hj.mjs +0 -100
  1003. package/dist/SimpleLayout-BgflH0r5.mjs +0 -22
  1004. package/dist/SmartLinkPage-BmXB-5t-.mjs +0 -131
  1005. package/dist/SnackBar-BL-mLRun.mjs +0 -128
  1006. package/dist/SubscribeButtons-Bqc3UtOf.mjs +0 -120
  1007. package/dist/SwiperList-nkm8nHZC.mjs +0 -119
  1008. package/dist/TagList-BcJZfwL5.mjs +0 -80
  1009. package/dist/TagPage-DFUbxGht.mjs +0 -79
  1010. package/dist/TopBar-1YG7Pruy.mjs +0 -260
  1011. package/dist/TuninIcon-DENNxlP8.mjs +0 -39
  1012. package/dist/UserButtonContent-CKxL8aX3.mjs +0 -125
  1013. package/dist/VastStore-8IiEgtQW.mjs +0 -71
  1014. package/dist/VideoModuleBox-B54AebXt.mjs +0 -58
  1015. package/dist/VideoPage-BxYH2SFo.mjs +0 -148
  1016. package/dist/XIcon-DNBT2Zgf.mjs +0 -39
  1017. package/dist/_plugin-vue_export-helper-B3ysoDQm.mjs +0 -8
  1018. package/dist/buttons-CWMRsA_g.mjs +0 -79
  1019. package/dist/classicApi-DR5O2l0-.mjs +0 -1183
  1020. package/dist/config-DMjLBcZ2.mjs +0 -7
  1021. package/dist/cookiesHelper-BQ3M1-Xr.mjs +0 -20
  1022. package/dist/displayHelper-DQtoqc_6.mjs +0 -11
  1023. package/dist/domHelper-BPw2kGCL.mjs +0 -12
  1024. package/dist/downloadHelper-DqI60vwY.mjs +0 -23
  1025. package/dist/educationen-KT401RLo.mjs +0 -16
  1026. package/dist/educationfr-BIafOUp-.mjs +0 -4
  1027. package/dist/emission-CQ1VuxRc.mjs +0 -22
  1028. package/dist/icons-aOUoelo6.mjs +0 -11
  1029. package/dist/keys-CV5SBM1i.mjs +0 -4
  1030. package/dist/localisation-CBnt682X.mjs +0 -9
  1031. package/dist/logo_saooti_play_black-Doe3es2H.mjs +0 -4
  1032. package/dist/messages-DxUrH00s.mjs +0 -2677
  1033. package/dist/organisation-JgfYj1Jp.mjs +0 -17
  1034. package/dist/ouest_france_logo-9dPaEPNA.mjs +0 -4
  1035. package/dist/podcast-BoNHyuLe.mjs +0 -53
  1036. package/dist/rolldown-runtime-Dy4uBu1J.mjs +0 -11
  1037. package/dist/stringHelper-8Cu4x0-T.mjs +0 -13
  1038. package/dist/types-BMNwRfo9.mjs +0 -8
  1039. package/dist/useAdvancedParamInit-DIw4V0uk.mjs +0 -111
  1040. package/dist/useCountdown-vXzlLAgF.mjs +0 -32
  1041. package/dist/useDayjs-CCvXE-aF.mjs +0 -28
  1042. package/dist/useErrorHandler-CNqmf6tv.mjs +0 -12
  1043. package/dist/useImageProxy-C3duE5Uj.mjs +0 -16
  1044. package/dist/useOrgaComputed-ZwTfEXF-.mjs +0 -16
  1045. package/dist/usePlayerLogicProgress--FrjZ3zY.mjs +0 -68
  1046. package/dist/usePodcastView-EmNdC0A1.mjs +0 -31
  1047. package/dist/usePresentationItem-PCEJ9BHI.mjs +0 -100
  1048. package/dist/useResizePhone-4hSkK5pa.mjs +0 -28
  1049. package/dist/useRights-D4GJoff9.mjs +0 -221
  1050. package/dist/useRouteUpdateParams-DJLm3IAI.mjs +0 -55
  1051. package/dist/useRubriquesFilterComputed-BKI04l9G.mjs +0 -11
  1052. package/dist/useRubriquesFilterParam-C5AZlQOX.mjs +0 -32
  1053. package/dist/useSeasonsManagement-DwbmJywJ.mjs +0 -24
  1054. package/dist/useSelenium-DAM6EF3J.mjs +0 -9
  1055. package/dist/useSeoTitleUrl-UfPXDCPa.mjs +0 -25
  1056. package/dist/useSharePath-D9G8Jdlb.mjs +0 -40
  1057. package/dist/useSharePlatforms-DWJtsHHs.mjs +0 -322
  1058. package/dist/useSimplePageParam-DJBHk-Yr.mjs +0 -39
  1059. package/dist/useTagOf-Btweq3v2.mjs +0 -17
  1060. package/dist/useTranslation-xTuUuIiz.mjs +0 -139
  1061. package/dist/usefetchRadioData-SnCkZcGt.mjs +0 -48
  1062. package/dist/youtubeVideoHelper-Cdlokujb.mjs +0 -14
@@ -0,0 +1 @@
1
+ {"version":3,"file":"usePresentationItem-BLUjp4Le.mjs","names":[],"sources":["../src/components/layouts/PresentationItem.vue","../src/components/layouts/PresentationItem.vue","../src/components/composable/usePresentationItem.ts"],"sourcesContent":["<!--\n Component to display an element with its description\n-->\n<template>\n <article\n class=\"classic-element-container item-presentation-container mt-3\"\n :class=\"vertical ? 'vertical-item' : ''\"\n >\n <router-link\n :to=\"route\"\n class=\"d-flex-column flex-grow-1 text-dark\"\n :class=\"vertical ? 'flex-column' : ''\"\n >\n <div\n class=\"img-box\"\n :class=\"vertical ? 'img-box-bigger' : ''\"\n >\n <img\n v-lazy=\"useProxyImageUrl(imageUrl, tailleImage)\"\n :width=\"tailleImage\"\n :height=\"tailleImage\"\n aria-hidden=\"true\"\n :alt=\"name\"\n :title=\"name\"\n >\n\n <div class=\"tags\">\n <span\n v-for=\"tag in tags\"\n :key=\"tag\"\n >\n {{ tag }}\n </span>\n </div>\n\n <slot name=\"after-image\" />\n </div>\n \n <div\n class=\"classic-element-text pb-0\"\n :class=\"{ 'pt-1': vertical }\"\n >\n <div class=\"element-name mb-2 basic-line-clamp\">\n {{ name }}\n </div>\n <div\n v-if=\"!isPhone && (description || additionalInfo)\"\n ref=\"descriptionItemContainer\"\n class=\"element-description htms-wysiwyg-content mt-0\"\n >\n <div v-if=\"additionalInfo\" class=\"mb-2\">\n <div\n v-for=\"info, index in additionalInfo\"\n :key=\"index\"\n class=\"text-secondary\"\n >\n {{ info }}\n </div>\n </div>\n <!-- eslint-disable vue/no-v-html -->\n <div\n v-if=\"description\"\n ref=\"descriptionItem\"\n v-html=\"urlify(description || '')\"\n />\n <!-- eslint-enable -->\n </div>\n </div>\n </router-link>\n </article>\n</template>\n\n<script setup lang=\"ts\">\nimport {useResizePhone} from \"../composable/useResizePhone\";\nimport {useImageProxy} from \"../composable/useImageProxy\";\nimport displayHelper from \"../../helper/displayHelper\";\nimport { nextTick, useTemplateRef, watch, computed } from \"vue\";\nimport { RouteLocationRaw } from \"vue-router\";\n\n//Props \nconst props = defineProps<{\n /** The route to which to redirect when clicking on element */\n route: RouteLocationRaw|string;\n /** The URL to the image */\n imageUrl: string;\n /** The name of the element */\n name: string;\n /** Tags associated with the element (rubriques, themes, etc) */\n tags?: Array<string>;\n /** Additional info displayed below name */\n additionalInfo?: Array<string>;\n /** The description of the element */\n description?: string;\n /** When true display the card vertically */\n vertical?: boolean;\n}>();\n\n//Data\nconst descriptionItemRef = useTemplateRef('descriptionItem');\nconst descriptionItemContainerRef = useTemplateRef('descriptionItemContainer');\n\n\n//Composables\nconst { isPhone } = useResizePhone();\nconst { useProxyImageUrl } = useImageProxy();\n\n// Computed\n// Calcul de la taille de l'image\nconst tailleImage = computed(() => {\n // L'élément fait 400 de large à la verticale, mais on prend en compte les bordures\n if (props.vertical) {\n return '396';\n } else if (isPhone.value) {\n return '246';\n } else {\n return '250';\n }\n});\n\n//Watch\nwatch(isPhone, async () => {\n nextTick(() => {\n if (!props.description || isPhone.value) {\n return;\n }\n const itemDesc = descriptionItemRef?.value as HTMLElement;\n const itemDescContainer = descriptionItemContainerRef?.value as HTMLElement;\n if (\n itemDesc &&\n itemDescContainer &&\n itemDesc.clientHeight > itemDescContainer.clientHeight\n ) {\n itemDescContainer.classList.add(\"after-element-description\");\n }\n });\n}, { immediate: true });\n\nfunction urlify(text:string|undefined){\n return displayHelper.urlify(text);\n}\n</script>\n\n<style scoped lang=\"scss\">\n.octopus-app {\n .item-presentation-container {\n @media (width <= 960px) {\n width: 250px !important;\n margin-right: 0.5rem;\n }\n\n .element-description {\n height: 0;\n flex-grow: 1;\n max-height: unset;\n\n p:first-child {\n // Prevent unecessary space before first paragraph\n margin-top: 0 !important;\n }\n }\n }\n\n .classic-element-container.vertical-item {\n flex-grow: 0;\n width: 400px;\n flex-shrink: 0;\n }\n\n .img-box {\n // Make it relative so that absolute elements associated with the image\n // are positioned within the image box\n position: relative;\n\n @media (width <= 960px) {\n height: calc(var(--octopus-image-size) - 4);\n }\n }\n\n .img-box-bigger {\n // L'élément fait 400 de large à la verticale, mais on prend en compte les bordures\n width: 396px;\n height: 396px;\n }\n\n .tags {\n position: absolute;\n top: 10px;\n left: 10px;\n\n display: flex;\n gap: 10px;\n flex-wrap: wrap;\n\n > span {\n background-color: white;\n padding: .25em .75em;\n font-size: 14px;\n font-weight: bold;\n color: var(--octopus-primary);\n border-radius: var(--octopus-border-radius);\n border: 1px solid color-mix(in lch, var(--octopus-primary), transparent 60%);\n\n // Limit width\n max-width: 200px;\n overflow: hidden;\n white-space: nowrap;\n text-overflow: ellipsis;\n }\n }\n}\n</style>\n","<!--\n Component to display an element with its description\n-->\n<template>\n <article\n class=\"classic-element-container item-presentation-container mt-3\"\n :class=\"vertical ? 'vertical-item' : ''\"\n >\n <router-link\n :to=\"route\"\n class=\"d-flex-column flex-grow-1 text-dark\"\n :class=\"vertical ? 'flex-column' : ''\"\n >\n <div\n class=\"img-box\"\n :class=\"vertical ? 'img-box-bigger' : ''\"\n >\n <img\n v-lazy=\"useProxyImageUrl(imageUrl, tailleImage)\"\n :width=\"tailleImage\"\n :height=\"tailleImage\"\n aria-hidden=\"true\"\n :alt=\"name\"\n :title=\"name\"\n >\n\n <div class=\"tags\">\n <span\n v-for=\"tag in tags\"\n :key=\"tag\"\n >\n {{ tag }}\n </span>\n </div>\n\n <slot name=\"after-image\" />\n </div>\n \n <div\n class=\"classic-element-text pb-0\"\n :class=\"{ 'pt-1': vertical }\"\n >\n <div class=\"element-name mb-2 basic-line-clamp\">\n {{ name }}\n </div>\n <div\n v-if=\"!isPhone && (description || additionalInfo)\"\n ref=\"descriptionItemContainer\"\n class=\"element-description htms-wysiwyg-content mt-0\"\n >\n <div v-if=\"additionalInfo\" class=\"mb-2\">\n <div\n v-for=\"info, index in additionalInfo\"\n :key=\"index\"\n class=\"text-secondary\"\n >\n {{ info }}\n </div>\n </div>\n <!-- eslint-disable vue/no-v-html -->\n <div\n v-if=\"description\"\n ref=\"descriptionItem\"\n v-html=\"urlify(description || '')\"\n />\n <!-- eslint-enable -->\n </div>\n </div>\n </router-link>\n </article>\n</template>\n\n<script setup lang=\"ts\">\nimport {useResizePhone} from \"../composable/useResizePhone\";\nimport {useImageProxy} from \"../composable/useImageProxy\";\nimport displayHelper from \"../../helper/displayHelper\";\nimport { nextTick, useTemplateRef, watch, computed } from \"vue\";\nimport { RouteLocationRaw } from \"vue-router\";\n\n//Props \nconst props = defineProps<{\n /** The route to which to redirect when clicking on element */\n route: RouteLocationRaw|string;\n /** The URL to the image */\n imageUrl: string;\n /** The name of the element */\n name: string;\n /** Tags associated with the element (rubriques, themes, etc) */\n tags?: Array<string>;\n /** Additional info displayed below name */\n additionalInfo?: Array<string>;\n /** The description of the element */\n description?: string;\n /** When true display the card vertically */\n vertical?: boolean;\n}>();\n\n//Data\nconst descriptionItemRef = useTemplateRef('descriptionItem');\nconst descriptionItemContainerRef = useTemplateRef('descriptionItemContainer');\n\n\n//Composables\nconst { isPhone } = useResizePhone();\nconst { useProxyImageUrl } = useImageProxy();\n\n// Computed\n// Calcul de la taille de l'image\nconst tailleImage = computed(() => {\n // L'élément fait 400 de large à la verticale, mais on prend en compte les bordures\n if (props.vertical) {\n return '396';\n } else if (isPhone.value) {\n return '246';\n } else {\n return '250';\n }\n});\n\n//Watch\nwatch(isPhone, async () => {\n nextTick(() => {\n if (!props.description || isPhone.value) {\n return;\n }\n const itemDesc = descriptionItemRef?.value as HTMLElement;\n const itemDescContainer = descriptionItemContainerRef?.value as HTMLElement;\n if (\n itemDesc &&\n itemDescContainer &&\n itemDesc.clientHeight > itemDescContainer.clientHeight\n ) {\n itemDescContainer.classList.add(\"after-element-description\");\n }\n });\n}, { immediate: true });\n\nfunction urlify(text:string|undefined){\n return displayHelper.urlify(text);\n}\n</script>\n\n<style scoped lang=\"scss\">\n.octopus-app {\n .item-presentation-container {\n @media (width <= 960px) {\n width: 250px !important;\n margin-right: 0.5rem;\n }\n\n .element-description {\n height: 0;\n flex-grow: 1;\n max-height: unset;\n\n p:first-child {\n // Prevent unecessary space before first paragraph\n margin-top: 0 !important;\n }\n }\n }\n\n .classic-element-container.vertical-item {\n flex-grow: 0;\n width: 400px;\n flex-shrink: 0;\n }\n\n .img-box {\n // Make it relative so that absolute elements associated with the image\n // are positioned within the image box\n position: relative;\n\n @media (width <= 960px) {\n height: calc(var(--octopus-image-size) - 4);\n }\n }\n\n .img-box-bigger {\n // L'élément fait 400 de large à la verticale, mais on prend en compte les bordures\n width: 396px;\n height: 396px;\n }\n\n .tags {\n position: absolute;\n top: 10px;\n left: 10px;\n\n display: flex;\n gap: 10px;\n flex-wrap: wrap;\n\n > span {\n background-color: white;\n padding: .25em .75em;\n font-size: 14px;\n font-weight: bold;\n color: var(--octopus-primary);\n border-radius: var(--octopus-border-radius);\n border: 1px solid color-mix(in lch, var(--octopus-primary), transparent 60%);\n\n // Limit width\n max-width: 200px;\n overflow: hidden;\n white-space: nowrap;\n text-overflow: ellipsis;\n }\n }\n}\n</style>\n","import { Emission } from \"@/stores/class/general/emission\";\nimport { state } from \"../../stores/ParamSdkStore\";\nimport { useGeneralStore } from \"../../stores/GeneralStore\";\nimport { Podcast } from \"../../stores/class/general/podcast\";\nimport { rubriquesApi } from \"../../api\";\nimport { useDayjs } from \"./useDayjs\";\nimport { unique } from \"@/helper/arrayHelper\";\n\nexport const usePresentationItem = () => {\n const generalStore = useGeneralStore();\n const { formatDate } = useDayjs();\n\n function iabTags(emission: Emission): Array<string> {\n return generalStore.storedCategories\n .filter(cat => emission.iabIds.includes(cat.id))\n .map(cat => cat.name);\n }\n\n async function rubriqueTags(element: Podcast|Emission, filterRubriquageId?: number): Promise<Array<string>> {\n const rubriqueIds: Array<number> = [];\n if (element.rubriqueIds) {\n rubriqueIds.push(...element.rubriqueIds);\n }\n if ('emission' in element && element.emission.rubriqueIds) {\n rubriqueIds.push(...element.emission.rubriqueIds);\n }\n const uniqueRubriqueIds = rubriqueIds.filter(unique);\n const promises = uniqueRubriqueIds.map(rubriquesApi.getCachedRubrique);\n const rubriques = await Promise.all(promises);\n\n if (filterRubriquageId) {\n return rubriques.filter(r => r.rubriquageId === filterRubriquageId).map(r => r.name);\n } else {\n return rubriques.map(r => r.name);\n }\n }\n \n async function tagsFor(element: Podcast|Emission): Promise<Array<string>|undefined> {\n const type = state.presentationItems.tags;\n let tags: Array<string>|undefined = undefined;\n if (type === 'iab') {\n const emission = 'emission' in element ? element.emission : element;\n tags = iabTags(emission);\n } else if (type === 'rubrique') {\n tags = await rubriqueTags(element, state.presentationItems.tagsRubriquageId);\n }\n\n if (tags && state.presentationItems.tagsLimit) {\n return tags.slice(0, state.presentationItems.tagsLimit);\n }\n\n return tags;\n }\n\n async function additionalInfoFor(element: Podcast|Emission): Promise<Array<string>|undefined> {\n const prop = state.presentationItems.additionalInfo;\n const restrictiveRubriquageId = state.presentationItems.restrictiveRubriquageId;\n if (!prop?.length) {\n return undefined;\n }\n\n const podcast = 'emission' in element ? element : null;\n const emission = podcast?.emission ?? element as Emission;\n\n const result = await Promise.all(prop.map(async property => {\n if (property === 'date') {\n if (podcast?.pubDate) {\n return formatDate(podcast.pubDate);\n } else {\n return null;\n }\n } else if (property === 'productor') {\n return emission.orga.name;\n } else if (property === 'restrictive-rubrique' && restrictiveRubriquageId !== undefined) {\n const rubriques = await rubriqueTags(element, restrictiveRubriquageId);\n return rubriques.join(', ');\n }\n return null;\n }));\n\n return result.filter(p => p !== null);\n }\n\n return { tagsFor, additionalInfoFor };\n};\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAgFA,MAAM,QAAQ;EAkBd,MAAM,qBAAqB,eAAe,iBAAiB;EAC3D,MAAM,8BAA8B,eAAe,0BAA0B;EAI7E,MAAM,EAAE,YAAY,eAAe;EACnC,MAAM,EAAE,qBAAqB,cAAc;EAI3C,MAAM,cAAc,eAAe;GAE/B,IAAI,MAAM,UACN,OAAO;QACJ,IAAI,QAAQ,OACf,OAAO;QAEP,OAAO;EAEf,CAAC;EAGD,MAAM,SAAS,YAAY;GACvB,eAAe;IACX,IAAI,CAAC,MAAM,eAAe,QAAQ,OAC9B;IAEJ,MAAM,WAAW,oBAAoB;IACrC,MAAM,oBAAoB,6BAA6B;IACvD,IACI,YACA,qBACA,SAAS,eAAe,kBAAkB,cAE1C,kBAAkB,UAAU,IAAI,2BAA2B;GAEnE,CAAC;EACL,GAAG,EAAE,WAAW,KAAK,CAAC;EAEtB,SAAS,OAAO,MAAsB;GAClC,OAAO,sBAAc,OAAO,IAAI;EACpC;;;;;;;;;;;;;;;;;;;;;;;;;mBCjHqB,OAAM,OAAM;mBAgBZ,OAAM,qCAAoC;;;CAK3C,KAAI;CACJ,OAAM;;;;CAEqB,OAAM;;;;;;qBA9CjD,mBAiEU,WAAA,EAhEN,OAAK,eAAA,CAAC,8DACE,OAAA,WAAQ,kBAAA,EAAA,CAAA,EAAA,GAAA,CAEhB,YA4Dc,wBAAA;EA3DT,IAAI,OAAA;EACL,OAAK,eAAA,CAAC,uCACE,OAAA,WAAQ,gBAAA,EAAA,CAAA;;yBAyBV,CAvBN,mBAuBM,OAAA,EAtBF,OAAK,eAAA,CAAC,WACE,OAAA,WAAQ,mBAAA,EAAA,CAAA,EAAA,GAAA;kBAEhB,mBAOC,OAAA;IALI,OAAO,OAAA;IACP,QAAQ,OAAA;IACT,eAAY;IACX,KAAK,OAAA;IACL,OAAO,OAAA;+CALA,OAAA,iBAAiB,OAAA,UAAU,OAAA,WAAW,CAAA,CAAA,CAAA;GAQlD,mBAOM,OAPN,YAOM,EAAA,UAAA,IAAA,GANF,mBAKO,UAAA,MAAA,WAJW,OAAA,OAAP,QAAG;wBADd,mBAKO,QAAA,EAHF,KAAK,IAAG,GAAA,gBAEN,GAAG,GAAA,CAAA;;GAId,WAA2B,KAAA,QAAA,eAAA,CAAA,GAAA,KAAA,GAAA,IAAA;SAG/B,mBA6BM,OAAA,EA5BF,OAAK,eAAA,CAAC,6BAA2B,EAAA,QACf,OAAA,SAAQ,CAAA,CAAA,EAAA,GAAA,CAE1B,mBAEM,OAFN,YAEM,gBADC,OAAA,IAAI,GAAA,CAAA,GAAA,CAGA,OAAA,YAAY,OAAA,eAAe,OAAA,mBAAA,UAAA,GADtC,mBAqBM,OArBN,YAqBM;GAhBS,OAAA,kBAAA,UAAA,GAAX,mBAQM,OARN,YAQM,EAAA,UAAA,IAAA,GAPF,mBAMM,UAAA,MAAA,WALoB,OAAA,iBAAf,MAAM,UAAK;wBADtB,mBAMM,OAAA;KAJD,KAAK;KACN,OAAM;uBAEH,IAAI,GAAA,CAAA;;GAGf,mBAAA,gCAAA;GAEU,OAAA,eAAA,UAAA,GADV,mBAIE,OAAA;;IAFE,KAAI;IACJ,WAAQ,OAAA,OAAO,OAAA,eAAW,EAAA;;GAE9B,mBAAA,iBAAA;;;;;;;;;;;;ACzDpB,IAAa,4BAA4B;CACrC,MAAM,eAAe,gBAAgB;CACrC,MAAM,EAAE,eAAe,SAAS;CAEhC,SAAS,QAAQ,UAAmC;EAChD,OAAO,aAAa,iBACf,QAAO,QAAO,SAAS,OAAO,SAAS,IAAI,EAAE,CAAC,EAC9C,KAAI,QAAO,IAAI,IAAI;CAC5B;CAEA,eAAe,aAAa,SAA2B,oBAAqD;EACxG,MAAM,cAA6B,CAAC;EACpC,IAAI,QAAQ,aACR,YAAY,KAAK,GAAG,QAAQ,WAAW;EAE3C,IAAI,cAAc,WAAW,QAAQ,SAAS,aAC1C,YAAY,KAAK,GAAG,QAAQ,SAAS,WAAW;EAGpD,MAAM,WADoB,YAAY,OAAO,MAC5B,EAAkB,IAAI,aAAa,iBAAiB;EACrE,MAAM,YAAY,MAAM,QAAQ,IAAI,QAAQ;EAE5C,IAAI,oBACA,OAAO,UAAU,QAAO,MAAK,EAAE,iBAAiB,kBAAkB,EAAE,KAAI,MAAK,EAAE,IAAI;OAEnF,OAAO,UAAU,KAAI,MAAK,EAAE,IAAI;CAExC;CAEA,eAAe,QAAQ,SAA6D;EAChF,MAAM,OAAO,MAAM,kBAAkB;EACrC,IAAI,OAAgC,KAAA;EACpC,IAAI,SAAS,OAET,OAAO,QADU,cAAc,UAAU,QAAQ,WAAW,OACrC;OACpB,IAAI,SAAS,YAChB,OAAO,MAAM,aAAa,SAAS,MAAM,kBAAkB,gBAAgB;EAG/E,IAAI,QAAQ,MAAM,kBAAkB,WAChC,OAAO,KAAK,MAAM,GAAG,MAAM,kBAAkB,SAAS;EAG1D,OAAO;CACX;CAEA,eAAe,kBAAkB,SAA6D;EAC1F,MAAM,OAAO,MAAM,kBAAkB;EACrC,MAAM,0BAA0B,MAAM,kBAAkB;EACxD,IAAI,CAAC,MAAM,QACP;EAGJ,MAAM,UAAU,cAAc,UAAU,UAAU;EAClD,MAAM,WAAW,SAAS,YAAY;EAkBtC,QAAO,MAhBc,QAAQ,IAAI,KAAK,IAAI,OAAM,aAAY;GACxD,IAAI,aAAa,QACb,IAAI,SAAS,SACT,OAAO,WAAW,QAAQ,OAAO;QAEjC,OAAO;QAER,IAAI,aAAa,aACpB,OAAO,SAAS,KAAK;QAClB,IAAI,aAAa,0BAA0B,4BAA4B,KAAA,GAE1E,QAAO,MADiB,aAAa,SAAS,uBAAuB,GACpD,KAAK,IAAI;GAE9B,OAAO;EACX,CAAC,CAAC,GAEY,QAAO,MAAK,MAAM,IAAI;CACxC;CAEA,OAAO;EAAE;EAAS;CAAkB;AACxC"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"usePresentationItem-C28KKH4P.mjs","names":[],"sources":["../src/components/layouts/PresentationItem.vue","../src/components/layouts/PresentationItem.vue","../src/components/composable/usePresentationItem.ts"],"sourcesContent":["<!--\n Component to display an element with its description\n-->\n<template>\n <article\n class=\"classic-element-container item-presentation-container mt-3\"\n :class=\"vertical ? 'vertical-item' : ''\"\n >\n <router-link\n :to=\"route\"\n class=\"d-flex-column flex-grow-1 text-dark\"\n :class=\"vertical ? 'flex-column' : ''\"\n >\n <div\n class=\"img-box\"\n :class=\"vertical ? 'img-box-bigger' : ''\"\n >\n <img\n v-lazy=\"useProxyImageUrl(imageUrl, tailleImage)\"\n :width=\"tailleImage\"\n :height=\"tailleImage\"\n aria-hidden=\"true\"\n :alt=\"name\"\n :title=\"name\"\n >\n\n <div class=\"tags\">\n <span\n v-for=\"tag in tags\"\n :key=\"tag\"\n >\n {{ tag }}\n </span>\n </div>\n\n <slot name=\"after-image\" />\n </div>\n \n <div\n class=\"classic-element-text pb-0\"\n :class=\"{ 'pt-1': vertical }\"\n >\n <div class=\"element-name mb-2 basic-line-clamp\">\n {{ name }}\n </div>\n <div\n v-if=\"!isPhone && (description || additionalInfo)\"\n ref=\"descriptionItemContainer\"\n class=\"element-description htms-wysiwyg-content mt-0\"\n >\n <div v-if=\"additionalInfo\" class=\"mb-2\">\n <div\n v-for=\"info, index in additionalInfo\"\n :key=\"index\"\n class=\"text-secondary\"\n >\n {{ info }}\n </div>\n </div>\n <!-- eslint-disable vue/no-v-html -->\n <div\n v-if=\"description\"\n ref=\"descriptionItem\"\n v-html=\"urlify(description || '')\"\n />\n <!-- eslint-enable -->\n </div>\n </div>\n </router-link>\n </article>\n</template>\n\n<script setup lang=\"ts\">\nimport {useResizePhone} from \"../composable/useResizePhone\";\nimport {useImageProxy} from \"../composable/useImageProxy\";\nimport displayHelper from \"../../helper/displayHelper\";\nimport { nextTick, useTemplateRef, watch, computed } from \"vue\";\nimport { RouteLocationRaw } from \"vue-router\";\n\n//Props \nconst props = defineProps<{\n /** The route to which to redirect when clicking on element */\n route: RouteLocationRaw|string;\n /** The URL to the image */\n imageUrl: string;\n /** The name of the element */\n name: string;\n /** Tags associated with the element (rubriques, themes, etc) */\n tags?: Array<string>;\n /** Additional info displayed below name */\n additionalInfo?: Array<string>;\n /** The description of the element */\n description?: string;\n /** When true display the card vertically */\n vertical?: boolean;\n}>();\n\n//Data\nconst descriptionItemRef = useTemplateRef('descriptionItem');\nconst descriptionItemContainerRef = useTemplateRef('descriptionItemContainer');\n\n\n//Composables\nconst { isPhone } = useResizePhone();\nconst { useProxyImageUrl } = useImageProxy();\n\n// Computed\n// Calcul de la taille de l'image\nconst tailleImage = computed(() => {\n // L'élément fait 400 de large à la verticale, mais on prend en compte les bordures\n if (props.vertical) {\n return '396';\n } else if (isPhone.value) {\n return '246';\n } else {\n return '250';\n }\n});\n\n//Watch\nwatch(isPhone, async () => {\n nextTick(() => {\n if (!props.description || isPhone.value) {\n return;\n }\n const itemDesc = descriptionItemRef?.value as HTMLElement;\n const itemDescContainer = descriptionItemContainerRef?.value as HTMLElement;\n if (\n itemDesc &&\n itemDescContainer &&\n itemDesc.clientHeight > itemDescContainer.clientHeight\n ) {\n itemDescContainer.classList.add(\"after-element-description\");\n }\n });\n}, { immediate: true });\n\nfunction urlify(text:string|undefined){\n return displayHelper.urlify(text);\n}\n</script>\n\n<style scoped lang=\"scss\">\n.octopus-app {\n .item-presentation-container {\n @media (width <= 960px) {\n width: 250px !important;\n margin-right: 0.5rem;\n }\n\n .element-description {\n height: 0;\n flex-grow: 1;\n max-height: unset;\n\n p:first-child {\n // Prevent unecessary space before first paragraph\n margin-top: 0 !important;\n }\n }\n }\n\n .classic-element-container.vertical-item {\n flex-grow: 0;\n width: 400px;\n flex-shrink: 0;\n }\n\n .img-box {\n // Make it relative so that absolute elements associated with the image\n // are positioned within the image box\n position: relative;\n\n @media (width <= 960px) {\n height: calc(var(--octopus-image-size) - 4);\n }\n }\n\n .img-box-bigger {\n // L'élément fait 400 de large à la verticale, mais on prend en compte les bordures\n width: 396px;\n height: 396px;\n }\n\n .tags {\n position: absolute;\n top: 10px;\n left: 10px;\n\n display: flex;\n gap: 10px;\n flex-wrap: wrap;\n\n > span {\n background-color: white;\n padding: .25em .75em;\n font-size: 14px;\n font-weight: bold;\n color: var(--octopus-primary);\n border-radius: var(--octopus-border-radius);\n border: 1px solid color-mix(in lch, var(--octopus-primary), transparent 60%);\n\n // Limit width\n max-width: 200px;\n overflow: hidden;\n white-space: nowrap;\n text-overflow: ellipsis;\n }\n }\n}\n</style>\n","<!--\n Component to display an element with its description\n-->\n<template>\n <article\n class=\"classic-element-container item-presentation-container mt-3\"\n :class=\"vertical ? 'vertical-item' : ''\"\n >\n <router-link\n :to=\"route\"\n class=\"d-flex-column flex-grow-1 text-dark\"\n :class=\"vertical ? 'flex-column' : ''\"\n >\n <div\n class=\"img-box\"\n :class=\"vertical ? 'img-box-bigger' : ''\"\n >\n <img\n v-lazy=\"useProxyImageUrl(imageUrl, tailleImage)\"\n :width=\"tailleImage\"\n :height=\"tailleImage\"\n aria-hidden=\"true\"\n :alt=\"name\"\n :title=\"name\"\n >\n\n <div class=\"tags\">\n <span\n v-for=\"tag in tags\"\n :key=\"tag\"\n >\n {{ tag }}\n </span>\n </div>\n\n <slot name=\"after-image\" />\n </div>\n \n <div\n class=\"classic-element-text pb-0\"\n :class=\"{ 'pt-1': vertical }\"\n >\n <div class=\"element-name mb-2 basic-line-clamp\">\n {{ name }}\n </div>\n <div\n v-if=\"!isPhone && (description || additionalInfo)\"\n ref=\"descriptionItemContainer\"\n class=\"element-description htms-wysiwyg-content mt-0\"\n >\n <div v-if=\"additionalInfo\" class=\"mb-2\">\n <div\n v-for=\"info, index in additionalInfo\"\n :key=\"index\"\n class=\"text-secondary\"\n >\n {{ info }}\n </div>\n </div>\n <!-- eslint-disable vue/no-v-html -->\n <div\n v-if=\"description\"\n ref=\"descriptionItem\"\n v-html=\"urlify(description || '')\"\n />\n <!-- eslint-enable -->\n </div>\n </div>\n </router-link>\n </article>\n</template>\n\n<script setup lang=\"ts\">\nimport {useResizePhone} from \"../composable/useResizePhone\";\nimport {useImageProxy} from \"../composable/useImageProxy\";\nimport displayHelper from \"../../helper/displayHelper\";\nimport { nextTick, useTemplateRef, watch, computed } from \"vue\";\nimport { RouteLocationRaw } from \"vue-router\";\n\n//Props \nconst props = defineProps<{\n /** The route to which to redirect when clicking on element */\n route: RouteLocationRaw|string;\n /** The URL to the image */\n imageUrl: string;\n /** The name of the element */\n name: string;\n /** Tags associated with the element (rubriques, themes, etc) */\n tags?: Array<string>;\n /** Additional info displayed below name */\n additionalInfo?: Array<string>;\n /** The description of the element */\n description?: string;\n /** When true display the card vertically */\n vertical?: boolean;\n}>();\n\n//Data\nconst descriptionItemRef = useTemplateRef('descriptionItem');\nconst descriptionItemContainerRef = useTemplateRef('descriptionItemContainer');\n\n\n//Composables\nconst { isPhone } = useResizePhone();\nconst { useProxyImageUrl } = useImageProxy();\n\n// Computed\n// Calcul de la taille de l'image\nconst tailleImage = computed(() => {\n // L'élément fait 400 de large à la verticale, mais on prend en compte les bordures\n if (props.vertical) {\n return '396';\n } else if (isPhone.value) {\n return '246';\n } else {\n return '250';\n }\n});\n\n//Watch\nwatch(isPhone, async () => {\n nextTick(() => {\n if (!props.description || isPhone.value) {\n return;\n }\n const itemDesc = descriptionItemRef?.value as HTMLElement;\n const itemDescContainer = descriptionItemContainerRef?.value as HTMLElement;\n if (\n itemDesc &&\n itemDescContainer &&\n itemDesc.clientHeight > itemDescContainer.clientHeight\n ) {\n itemDescContainer.classList.add(\"after-element-description\");\n }\n });\n}, { immediate: true });\n\nfunction urlify(text:string|undefined){\n return displayHelper.urlify(text);\n}\n</script>\n\n<style scoped lang=\"scss\">\n.octopus-app {\n .item-presentation-container {\n @media (width <= 960px) {\n width: 250px !important;\n margin-right: 0.5rem;\n }\n\n .element-description {\n height: 0;\n flex-grow: 1;\n max-height: unset;\n\n p:first-child {\n // Prevent unecessary space before first paragraph\n margin-top: 0 !important;\n }\n }\n }\n\n .classic-element-container.vertical-item {\n flex-grow: 0;\n width: 400px;\n flex-shrink: 0;\n }\n\n .img-box {\n // Make it relative so that absolute elements associated with the image\n // are positioned within the image box\n position: relative;\n\n @media (width <= 960px) {\n height: calc(var(--octopus-image-size) - 4);\n }\n }\n\n .img-box-bigger {\n // L'élément fait 400 de large à la verticale, mais on prend en compte les bordures\n width: 396px;\n height: 396px;\n }\n\n .tags {\n position: absolute;\n top: 10px;\n left: 10px;\n\n display: flex;\n gap: 10px;\n flex-wrap: wrap;\n\n > span {\n background-color: white;\n padding: .25em .75em;\n font-size: 14px;\n font-weight: bold;\n color: var(--octopus-primary);\n border-radius: var(--octopus-border-radius);\n border: 1px solid color-mix(in lch, var(--octopus-primary), transparent 60%);\n\n // Limit width\n max-width: 200px;\n overflow: hidden;\n white-space: nowrap;\n text-overflow: ellipsis;\n }\n }\n}\n</style>\n","import { Emission } from \"@/stores/class/general/emission\";\nimport { state } from \"../../stores/ParamSdkStore\";\nimport { useGeneralStore } from \"../../stores/GeneralStore\";\nimport { Podcast } from \"../../stores/class/general/podcast\";\nimport { rubriquesApi } from \"../../api\";\nimport { useDayjs } from \"./useDayjs\";\nimport { unique } from \"@/helper/arrayHelper\";\n\nexport const usePresentationItem = () => {\n const generalStore = useGeneralStore();\n const { formatDate } = useDayjs();\n\n function iabTags(emission: Emission): Array<string> {\n return generalStore.storedCategories\n .filter(cat => emission.iabIds.includes(cat.id))\n .map(cat => cat.name);\n }\n\n async function rubriqueTags(element: Podcast|Emission, filterRubriquageId?: number): Promise<Array<string>> {\n const rubriqueIds: Array<number> = [];\n if (element.rubriqueIds) {\n rubriqueIds.push(...element.rubriqueIds);\n }\n if ('emission' in element && element.emission.rubriqueIds) {\n rubriqueIds.push(...element.emission.rubriqueIds);\n }\n const uniqueRubriqueIds = rubriqueIds.filter(unique);\n const promises = uniqueRubriqueIds.map(rubriquesApi.getCachedRubrique);\n const rubriques = await Promise.all(promises);\n\n if (filterRubriquageId) {\n return rubriques.filter(r => r.rubriquageId === filterRubriquageId).map(r => r.name);\n } else {\n return rubriques.map(r => r.name);\n }\n }\n \n async function tagsFor(element: Podcast|Emission): Promise<Array<string>|undefined> {\n const type = state.presentationItems.tags;\n let tags: Array<string>|undefined = undefined;\n if (type === 'iab') {\n const emission = 'emission' in element ? element.emission : element;\n tags = iabTags(emission);\n } else if (type === 'rubrique') {\n tags = await rubriqueTags(element, state.presentationItems.tagsRubriquageId);\n }\n\n if (tags && state.presentationItems.tagsLimit) {\n return tags.slice(0, state.presentationItems.tagsLimit);\n }\n\n return tags;\n }\n\n async function additionalInfoFor(element: Podcast|Emission): Promise<Array<string>|undefined> {\n const prop = state.presentationItems.additionalInfo;\n const restrictiveRubriquageId = state.presentationItems.restrictiveRubriquageId;\n if (!prop?.length) {\n return undefined;\n }\n\n const podcast = 'emission' in element ? element : null;\n const emission = podcast?.emission ?? element as Emission;\n\n const result = await Promise.all(prop.map(async property => {\n if (property === 'date') {\n if (podcast?.pubDate) {\n return formatDate(podcast.pubDate);\n } else {\n return null;\n }\n } else if (property === 'productor') {\n return emission.orga.name;\n } else if (property === 'restrictive-rubrique' && restrictiveRubriquageId !== undefined) {\n const rubriques = await rubriqueTags(element, restrictiveRubriquageId);\n return rubriques.join(', ');\n }\n return null;\n }));\n\n return result.filter(p => p !== null);\n }\n\n return { tagsFor, additionalInfoFor };\n};\n"],"mappings":"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"}
@@ -0,0 +1,144 @@
1
+ import { E as state, a as rubriquesApi, m as unique } from "./classicApi-BKNiWOG4.mjs";
2
+ import { t as useResizePhone } from "./useResizePhone-CpfFUmfV.mjs";
3
+ import { t as _plugin_vue_export_helper_default } from "./_plugin-vue_export-helper-BOaGB7Aw.mjs";
4
+ import { t as displayHelper_default } from "./displayHelper-CpXshNzz.mjs";
5
+ import { t as useImageProxy } from "./useImageProxy-B2vNJKgd.mjs";
6
+ import { t as useGeneralStore } from "./GeneralStore-CUlq_NjO.mjs";
7
+ import { t as useDayjs } from "./useDayjs-BqojyoqU.mjs";
8
+ import { Fragment, computed, createCommentVNode, createElementBlock, createElementVNode, createVNode, defineComponent, nextTick, normalizeClass, openBlock, renderList, renderSlot, resolveComponent, resolveDirective, toDisplayString, unref, useTemplateRef, watch, withCtx, withDirectives } from "vue";
9
+ //#region src/components/layouts/PresentationItem.vue?vue&type=script&setup=true&lang.ts
10
+ var _hoisted_1 = [
11
+ "width",
12
+ "height",
13
+ "alt",
14
+ "title"
15
+ ];
16
+ var _hoisted_2 = { class: "tags" };
17
+ var _hoisted_3 = { class: "element-name mb-2 basic-line-clamp" };
18
+ var _hoisted_4 = {
19
+ key: 0,
20
+ ref: "descriptionItemContainer",
21
+ class: "element-description htms-wysiwyg-content mt-0"
22
+ };
23
+ var _hoisted_5 = {
24
+ key: 0,
25
+ class: "mb-2"
26
+ };
27
+ var _hoisted_6 = ["innerHTML"];
28
+ //#endregion
29
+ //#region src/components/layouts/PresentationItem.vue
30
+ var PresentationItem_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @__PURE__ */ defineComponent({
31
+ __name: "PresentationItem",
32
+ props: {
33
+ route: {},
34
+ imageUrl: {},
35
+ name: {},
36
+ tags: {},
37
+ additionalInfo: {},
38
+ description: {},
39
+ vertical: { type: Boolean }
40
+ },
41
+ setup(__props) {
42
+ const props = __props;
43
+ const descriptionItemRef = useTemplateRef("descriptionItem");
44
+ const descriptionItemContainerRef = useTemplateRef("descriptionItemContainer");
45
+ const { isPhone } = useResizePhone();
46
+ const { useProxyImageUrl } = useImageProxy();
47
+ const tailleImage = computed(() => {
48
+ if (props.vertical) return "396";
49
+ else if (isPhone.value) return "246";
50
+ else return "250";
51
+ });
52
+ watch(isPhone, async () => {
53
+ nextTick(() => {
54
+ if (!props.description || isPhone.value) return;
55
+ const itemDesc = descriptionItemRef?.value;
56
+ const itemDescContainer = descriptionItemContainerRef?.value;
57
+ if (itemDesc && itemDescContainer && itemDesc.clientHeight > itemDescContainer.clientHeight) itemDescContainer.classList.add("after-element-description");
58
+ });
59
+ }, { immediate: true });
60
+ function urlify(text) {
61
+ return displayHelper_default.urlify(text);
62
+ }
63
+ return (_ctx, _cache) => {
64
+ const _component_router_link = resolveComponent("router-link");
65
+ const _directive_lazy = resolveDirective("lazy");
66
+ return openBlock(), createElementBlock("article", { class: normalizeClass(["classic-element-container item-presentation-container mt-3", __props.vertical ? "vertical-item" : ""]) }, [createVNode(_component_router_link, {
67
+ to: __props.route,
68
+ class: normalizeClass(["d-flex-column flex-grow-1 text-dark", __props.vertical ? "flex-column" : ""])
69
+ }, {
70
+ default: withCtx(() => [createElementVNode("div", { class: normalizeClass(["img-box", __props.vertical ? "img-box-bigger" : ""]) }, [
71
+ withDirectives(createElementVNode("img", {
72
+ width: tailleImage.value,
73
+ height: tailleImage.value,
74
+ "aria-hidden": "true",
75
+ alt: __props.name,
76
+ title: __props.name
77
+ }, null, 8, _hoisted_1), [[_directive_lazy, unref(useProxyImageUrl)(__props.imageUrl, tailleImage.value)]]),
78
+ createElementVNode("div", _hoisted_2, [(openBlock(true), createElementBlock(Fragment, null, renderList(__props.tags, (tag) => {
79
+ return openBlock(), createElementBlock("span", { key: tag }, toDisplayString(tag), 1);
80
+ }), 128))]),
81
+ renderSlot(_ctx.$slots, "after-image", {}, void 0, true)
82
+ ], 2), createElementVNode("div", { class: normalizeClass(["classic-element-text pb-0", { "pt-1": __props.vertical }]) }, [createElementVNode("div", _hoisted_3, toDisplayString(__props.name), 1), !unref(isPhone) && (__props.description || __props.additionalInfo) ? (openBlock(), createElementBlock("div", _hoisted_4, [__props.additionalInfo ? (openBlock(), createElementBlock("div", _hoisted_5, [(openBlock(true), createElementBlock(Fragment, null, renderList(__props.additionalInfo, (info, index) => {
83
+ return openBlock(), createElementBlock("div", {
84
+ key: index,
85
+ class: "text-secondary"
86
+ }, toDisplayString(info), 1);
87
+ }), 128))])) : createCommentVNode("", true), __props.description ? (openBlock(), createElementBlock("div", {
88
+ key: 1,
89
+ ref: "descriptionItem",
90
+ innerHTML: urlify(__props.description || "")
91
+ }, null, 8, _hoisted_6)) : createCommentVNode("", true)], 512)) : createCommentVNode("", true)], 2)]),
92
+ _: 3
93
+ }, 8, ["to", "class"])], 2);
94
+ };
95
+ }
96
+ }), [["__scopeId", "data-v-9e52d398"]]);
97
+ //#endregion
98
+ //#region src/components/composable/usePresentationItem.ts
99
+ var usePresentationItem = () => {
100
+ const generalStore = useGeneralStore();
101
+ const { formatDate } = useDayjs();
102
+ function iabTags(emission) {
103
+ return generalStore.storedCategories.filter((cat) => emission.iabIds.includes(cat.id)).map((cat) => cat.name);
104
+ }
105
+ async function rubriqueTags(element, filterRubriquageId) {
106
+ const rubriqueIds = [];
107
+ if (element.rubriqueIds) rubriqueIds.push(...element.rubriqueIds);
108
+ if ("emission" in element && element.emission.rubriqueIds) rubriqueIds.push(...element.emission.rubriqueIds);
109
+ const promises = rubriqueIds.filter(unique).map(rubriquesApi.getCachedRubrique);
110
+ const rubriques = await Promise.all(promises);
111
+ if (filterRubriquageId) return rubriques.filter((r) => r.rubriquageId === filterRubriquageId).map((r) => r.name);
112
+ else return rubriques.map((r) => r.name);
113
+ }
114
+ async function tagsFor(element) {
115
+ const type = state.presentationItems.tags;
116
+ let tags = void 0;
117
+ if (type === "iab") tags = iabTags("emission" in element ? element.emission : element);
118
+ else if (type === "rubrique") tags = await rubriqueTags(element, state.presentationItems.tagsRubriquageId);
119
+ if (tags && state.presentationItems.tagsLimit) return tags.slice(0, state.presentationItems.tagsLimit);
120
+ return tags;
121
+ }
122
+ async function additionalInfoFor(element) {
123
+ const prop = state.presentationItems.additionalInfo;
124
+ const restrictiveRubriquageId = state.presentationItems.restrictiveRubriquageId;
125
+ if (!prop?.length) return;
126
+ const podcast = "emission" in element ? element : null;
127
+ const emission = podcast?.emission ?? element;
128
+ return (await Promise.all(prop.map(async (property) => {
129
+ if (property === "date") if (podcast?.pubDate) return formatDate(podcast.pubDate);
130
+ else return null;
131
+ else if (property === "productor") return emission.orga.name;
132
+ else if (property === "restrictive-rubrique" && restrictiveRubriquageId !== void 0) return (await rubriqueTags(element, restrictiveRubriquageId)).join(", ");
133
+ return null;
134
+ }))).filter((p) => p !== null);
135
+ }
136
+ return {
137
+ tagsFor,
138
+ additionalInfoFor
139
+ };
140
+ };
141
+ //#endregion
142
+ export { PresentationItem_default as n, usePresentationItem as t };
143
+
144
+ //# sourceMappingURL=usePresentationItem-rJkFlZFu.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"usePresentationItem-rJkFlZFu.mjs","names":[],"sources":["../src/components/layouts/PresentationItem.vue","../src/components/layouts/PresentationItem.vue","../src/components/composable/usePresentationItem.ts"],"sourcesContent":["<!--\n Component to display an element with its description\n-->\n<template>\n <article\n class=\"classic-element-container item-presentation-container mt-3\"\n :class=\"vertical ? 'vertical-item' : ''\"\n >\n <router-link\n :to=\"route\"\n class=\"d-flex-column flex-grow-1 text-dark\"\n :class=\"vertical ? 'flex-column' : ''\"\n >\n <div\n class=\"img-box\"\n :class=\"vertical ? 'img-box-bigger' : ''\"\n >\n <img\n v-lazy=\"useProxyImageUrl(imageUrl, tailleImage)\"\n :width=\"tailleImage\"\n :height=\"tailleImage\"\n aria-hidden=\"true\"\n :alt=\"name\"\n :title=\"name\"\n >\n\n <div class=\"tags\">\n <span\n v-for=\"tag in tags\"\n :key=\"tag\"\n >\n {{ tag }}\n </span>\n </div>\n\n <slot name=\"after-image\" />\n </div>\n \n <div\n class=\"classic-element-text pb-0\"\n :class=\"{ 'pt-1': vertical }\"\n >\n <div class=\"element-name mb-2 basic-line-clamp\">\n {{ name }}\n </div>\n <div\n v-if=\"!isPhone && (description || additionalInfo)\"\n ref=\"descriptionItemContainer\"\n class=\"element-description htms-wysiwyg-content mt-0\"\n >\n <div v-if=\"additionalInfo\" class=\"mb-2\">\n <div\n v-for=\"info, index in additionalInfo\"\n :key=\"index\"\n class=\"text-secondary\"\n >\n {{ info }}\n </div>\n </div>\n <!-- eslint-disable vue/no-v-html -->\n <div\n v-if=\"description\"\n ref=\"descriptionItem\"\n v-html=\"urlify(description || '')\"\n />\n <!-- eslint-enable -->\n </div>\n </div>\n </router-link>\n </article>\n</template>\n\n<script setup lang=\"ts\">\nimport {useResizePhone} from \"../composable/useResizePhone\";\nimport {useImageProxy} from \"../composable/useImageProxy\";\nimport displayHelper from \"../../helper/displayHelper\";\nimport { nextTick, useTemplateRef, watch, computed } from \"vue\";\nimport { RouteLocationRaw } from \"vue-router\";\n\n//Props \nconst props = defineProps<{\n /** The route to which to redirect when clicking on element */\n route: RouteLocationRaw|string;\n /** The URL to the image */\n imageUrl: string;\n /** The name of the element */\n name: string;\n /** Tags associated with the element (rubriques, themes, etc) */\n tags?: Array<string>;\n /** Additional info displayed below name */\n additionalInfo?: Array<string>;\n /** The description of the element */\n description?: string;\n /** When true display the card vertically */\n vertical?: boolean;\n}>();\n\n//Data\nconst descriptionItemRef = useTemplateRef('descriptionItem');\nconst descriptionItemContainerRef = useTemplateRef('descriptionItemContainer');\n\n\n//Composables\nconst { isPhone } = useResizePhone();\nconst { useProxyImageUrl } = useImageProxy();\n\n// Computed\n// Calcul de la taille de l'image\nconst tailleImage = computed(() => {\n // L'élément fait 400 de large à la verticale, mais on prend en compte les bordures\n if (props.vertical) {\n return '396';\n } else if (isPhone.value) {\n return '246';\n } else {\n return '250';\n }\n});\n\n//Watch\nwatch(isPhone, async () => {\n nextTick(() => {\n if (!props.description || isPhone.value) {\n return;\n }\n const itemDesc = descriptionItemRef?.value as HTMLElement;\n const itemDescContainer = descriptionItemContainerRef?.value as HTMLElement;\n if (\n itemDesc &&\n itemDescContainer &&\n itemDesc.clientHeight > itemDescContainer.clientHeight\n ) {\n itemDescContainer.classList.add(\"after-element-description\");\n }\n });\n}, { immediate: true });\n\nfunction urlify(text:string|undefined){\n return displayHelper.urlify(text);\n}\n</script>\n\n<style scoped lang=\"scss\">\n.octopus-app {\n .item-presentation-container {\n @media (width <= 960px) {\n width: 250px !important;\n margin-right: 0.5rem;\n }\n\n .element-description {\n height: 0;\n flex-grow: 1;\n max-height: unset;\n\n p:first-child {\n // Prevent unecessary space before first paragraph\n margin-top: 0 !important;\n }\n }\n }\n\n .classic-element-container.vertical-item {\n flex-grow: 0;\n width: 400px;\n flex-shrink: 0;\n }\n\n .img-box {\n // Make it relative so that absolute elements associated with the image\n // are positioned within the image box\n position: relative;\n\n @media (width <= 960px) {\n height: calc(var(--octopus-image-size) - 4);\n }\n }\n\n .img-box-bigger {\n // L'élément fait 400 de large à la verticale, mais on prend en compte les bordures\n width: 396px;\n height: 396px;\n }\n\n .tags {\n position: absolute;\n top: 10px;\n left: 10px;\n\n display: flex;\n gap: 10px;\n flex-wrap: wrap;\n\n > span {\n background-color: white;\n padding: .25em .75em;\n font-size: 14px;\n font-weight: bold;\n color: var(--octopus-primary);\n border-radius: var(--octopus-border-radius);\n border: 1px solid color-mix(in lch, var(--octopus-primary), transparent 60%);\n\n // Limit width\n max-width: 200px;\n overflow: hidden;\n white-space: nowrap;\n text-overflow: ellipsis;\n }\n }\n}\n</style>\n","<!--\n Component to display an element with its description\n-->\n<template>\n <article\n class=\"classic-element-container item-presentation-container mt-3\"\n :class=\"vertical ? 'vertical-item' : ''\"\n >\n <router-link\n :to=\"route\"\n class=\"d-flex-column flex-grow-1 text-dark\"\n :class=\"vertical ? 'flex-column' : ''\"\n >\n <div\n class=\"img-box\"\n :class=\"vertical ? 'img-box-bigger' : ''\"\n >\n <img\n v-lazy=\"useProxyImageUrl(imageUrl, tailleImage)\"\n :width=\"tailleImage\"\n :height=\"tailleImage\"\n aria-hidden=\"true\"\n :alt=\"name\"\n :title=\"name\"\n >\n\n <div class=\"tags\">\n <span\n v-for=\"tag in tags\"\n :key=\"tag\"\n >\n {{ tag }}\n </span>\n </div>\n\n <slot name=\"after-image\" />\n </div>\n \n <div\n class=\"classic-element-text pb-0\"\n :class=\"{ 'pt-1': vertical }\"\n >\n <div class=\"element-name mb-2 basic-line-clamp\">\n {{ name }}\n </div>\n <div\n v-if=\"!isPhone && (description || additionalInfo)\"\n ref=\"descriptionItemContainer\"\n class=\"element-description htms-wysiwyg-content mt-0\"\n >\n <div v-if=\"additionalInfo\" class=\"mb-2\">\n <div\n v-for=\"info, index in additionalInfo\"\n :key=\"index\"\n class=\"text-secondary\"\n >\n {{ info }}\n </div>\n </div>\n <!-- eslint-disable vue/no-v-html -->\n <div\n v-if=\"description\"\n ref=\"descriptionItem\"\n v-html=\"urlify(description || '')\"\n />\n <!-- eslint-enable -->\n </div>\n </div>\n </router-link>\n </article>\n</template>\n\n<script setup lang=\"ts\">\nimport {useResizePhone} from \"../composable/useResizePhone\";\nimport {useImageProxy} from \"../composable/useImageProxy\";\nimport displayHelper from \"../../helper/displayHelper\";\nimport { nextTick, useTemplateRef, watch, computed } from \"vue\";\nimport { RouteLocationRaw } from \"vue-router\";\n\n//Props \nconst props = defineProps<{\n /** The route to which to redirect when clicking on element */\n route: RouteLocationRaw|string;\n /** The URL to the image */\n imageUrl: string;\n /** The name of the element */\n name: string;\n /** Tags associated with the element (rubriques, themes, etc) */\n tags?: Array<string>;\n /** Additional info displayed below name */\n additionalInfo?: Array<string>;\n /** The description of the element */\n description?: string;\n /** When true display the card vertically */\n vertical?: boolean;\n}>();\n\n//Data\nconst descriptionItemRef = useTemplateRef('descriptionItem');\nconst descriptionItemContainerRef = useTemplateRef('descriptionItemContainer');\n\n\n//Composables\nconst { isPhone } = useResizePhone();\nconst { useProxyImageUrl } = useImageProxy();\n\n// Computed\n// Calcul de la taille de l'image\nconst tailleImage = computed(() => {\n // L'élément fait 400 de large à la verticale, mais on prend en compte les bordures\n if (props.vertical) {\n return '396';\n } else if (isPhone.value) {\n return '246';\n } else {\n return '250';\n }\n});\n\n//Watch\nwatch(isPhone, async () => {\n nextTick(() => {\n if (!props.description || isPhone.value) {\n return;\n }\n const itemDesc = descriptionItemRef?.value as HTMLElement;\n const itemDescContainer = descriptionItemContainerRef?.value as HTMLElement;\n if (\n itemDesc &&\n itemDescContainer &&\n itemDesc.clientHeight > itemDescContainer.clientHeight\n ) {\n itemDescContainer.classList.add(\"after-element-description\");\n }\n });\n}, { immediate: true });\n\nfunction urlify(text:string|undefined){\n return displayHelper.urlify(text);\n}\n</script>\n\n<style scoped lang=\"scss\">\n.octopus-app {\n .item-presentation-container {\n @media (width <= 960px) {\n width: 250px !important;\n margin-right: 0.5rem;\n }\n\n .element-description {\n height: 0;\n flex-grow: 1;\n max-height: unset;\n\n p:first-child {\n // Prevent unecessary space before first paragraph\n margin-top: 0 !important;\n }\n }\n }\n\n .classic-element-container.vertical-item {\n flex-grow: 0;\n width: 400px;\n flex-shrink: 0;\n }\n\n .img-box {\n // Make it relative so that absolute elements associated with the image\n // are positioned within the image box\n position: relative;\n\n @media (width <= 960px) {\n height: calc(var(--octopus-image-size) - 4);\n }\n }\n\n .img-box-bigger {\n // L'élément fait 400 de large à la verticale, mais on prend en compte les bordures\n width: 396px;\n height: 396px;\n }\n\n .tags {\n position: absolute;\n top: 10px;\n left: 10px;\n\n display: flex;\n gap: 10px;\n flex-wrap: wrap;\n\n > span {\n background-color: white;\n padding: .25em .75em;\n font-size: 14px;\n font-weight: bold;\n color: var(--octopus-primary);\n border-radius: var(--octopus-border-radius);\n border: 1px solid color-mix(in lch, var(--octopus-primary), transparent 60%);\n\n // Limit width\n max-width: 200px;\n overflow: hidden;\n white-space: nowrap;\n text-overflow: ellipsis;\n }\n }\n}\n</style>\n","import { Emission } from \"@/stores/class/general/emission\";\nimport { state } from \"../../stores/ParamSdkStore\";\nimport { useGeneralStore } from \"../../stores/GeneralStore\";\nimport { Podcast } from \"../../stores/class/general/podcast\";\nimport { rubriquesApi } from \"../../api\";\nimport { useDayjs } from \"./useDayjs\";\nimport { unique } from \"@/helper/arrayHelper\";\n\nexport const usePresentationItem = () => {\n const generalStore = useGeneralStore();\n const { formatDate } = useDayjs();\n\n function iabTags(emission: Emission): Array<string> {\n return generalStore.storedCategories\n .filter(cat => emission.iabIds.includes(cat.id))\n .map(cat => cat.name);\n }\n\n async function rubriqueTags(element: Podcast|Emission, filterRubriquageId?: number): Promise<Array<string>> {\n const rubriqueIds: Array<number> = [];\n if (element.rubriqueIds) {\n rubriqueIds.push(...element.rubriqueIds);\n }\n if ('emission' in element && element.emission.rubriqueIds) {\n rubriqueIds.push(...element.emission.rubriqueIds);\n }\n const uniqueRubriqueIds = rubriqueIds.filter(unique);\n const promises = uniqueRubriqueIds.map(rubriquesApi.getCachedRubrique);\n const rubriques = await Promise.all(promises);\n\n if (filterRubriquageId) {\n return rubriques.filter(r => r.rubriquageId === filterRubriquageId).map(r => r.name);\n } else {\n return rubriques.map(r => r.name);\n }\n }\n \n async function tagsFor(element: Podcast|Emission): Promise<Array<string>|undefined> {\n const type = state.presentationItems.tags;\n let tags: Array<string>|undefined = undefined;\n if (type === 'iab') {\n const emission = 'emission' in element ? element.emission : element;\n tags = iabTags(emission);\n } else if (type === 'rubrique') {\n tags = await rubriqueTags(element, state.presentationItems.tagsRubriquageId);\n }\n\n if (tags && state.presentationItems.tagsLimit) {\n return tags.slice(0, state.presentationItems.tagsLimit);\n }\n\n return tags;\n }\n\n async function additionalInfoFor(element: Podcast|Emission): Promise<Array<string>|undefined> {\n const prop = state.presentationItems.additionalInfo;\n const restrictiveRubriquageId = state.presentationItems.restrictiveRubriquageId;\n if (!prop?.length) {\n return undefined;\n }\n\n const podcast = 'emission' in element ? element : null;\n const emission = podcast?.emission ?? element as Emission;\n\n const result = await Promise.all(prop.map(async property => {\n if (property === 'date') {\n if (podcast?.pubDate) {\n return formatDate(podcast.pubDate);\n } else {\n return null;\n }\n } else if (property === 'productor') {\n return emission.orga.name;\n } else if (property === 'restrictive-rubrique' && restrictiveRubriquageId !== undefined) {\n const rubriques = await rubriqueTags(element, restrictiveRubriquageId);\n return rubriques.join(', ');\n }\n return null;\n }));\n\n return result.filter(p => p !== null);\n }\n\n return { tagsFor, additionalInfoFor };\n};\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAgFA,MAAM,QAAQ;EAkBd,MAAM,qBAAqB,eAAe,iBAAiB;EAC3D,MAAM,8BAA8B,eAAe,0BAA0B;EAI7E,MAAM,EAAE,YAAY,eAAe;EACnC,MAAM,EAAE,qBAAqB,cAAc;EAI3C,MAAM,cAAc,eAAe;GAE/B,IAAI,MAAM,UACN,OAAO;QACJ,IAAI,QAAQ,OACf,OAAO;QAEP,OAAO;EAEf,CAAC;EAGD,MAAM,SAAS,YAAY;GACvB,eAAe;IACX,IAAI,CAAC,MAAM,eAAe,QAAQ,OAC9B;IAEJ,MAAM,WAAW,oBAAoB;IACrC,MAAM,oBAAoB,6BAA6B;IACvD,IACI,YACA,qBACA,SAAS,eAAe,kBAAkB,cAE1C,kBAAkB,UAAU,IAAI,2BAA2B;GAEnE,CAAC;EACL,GAAG,EAAE,WAAW,KAAK,CAAC;EAEtB,SAAS,OAAO,MAAsB;GAClC,OAAO,sBAAc,OAAO,IAAI;EACpC;;;;uBAvII,mBAiEU,WAAA,EAhEN,OAAK,eAAA,CAAC,8DACE,QAAA,WAAQ,kBAAA,EAAA,CAAA,EAAA,GAAA,CAEhB,YA4Dc,wBAAA;IA3DT,IAAI,QAAA;IACL,OAAK,eAAA,CAAC,uCACE,QAAA,WAAQ,gBAAA,EAAA,CAAA;;2BAyBV,CAvBN,mBAuBM,OAAA,EAtBF,OAAK,eAAA,CAAC,WACE,QAAA,WAAQ,mBAAA,EAAA,CAAA,EAAA,GAAA;oBAEhB,mBAOC,OAAA;MALI,OAAO,YAAA;MACP,QAAQ,YAAA;MACT,eAAY;MACX,KAAK,QAAA;MACL,OAAO,QAAA;iDALA,MAAA,gBAAA,EAAiB,QAAA,UAAU,YAAA,KAAW,CAAA,CAAA,CAAA;KAQlD,mBAOM,OAPN,YAOM,EAAA,UAAA,IAAA,GANF,mBAKO,UAAA,MAAA,WAJW,QAAA,OAAP,QAAG;0BADd,mBAKO,QAAA,EAHF,KAAK,IAAG,GAAA,gBAEN,GAAG,GAAA,CAAA;;KAId,WAA2B,KAAA,QAAA,eAAA,CAAA,GAAA,KAAA,GAAA,IAAA;WAG/B,mBA6BM,OAAA,EA5BF,OAAK,eAAA,CAAC,6BAA2B,EAAA,QACf,QAAA,SAAQ,CAAA,CAAA,EAAA,GAAA,CAE1B,mBAEM,OAFN,YAEM,gBADC,QAAA,IAAI,GAAA,CAAA,GAAA,CAGA,MAAA,OAAA,MAAY,QAAA,eAAe,QAAA,mBAAA,UAAA,GADtC,mBAqBM,OArBN,YAqBM,CAhBS,QAAA,kBAAA,UAAA,GAAX,mBAQM,OARN,YAQM,EAAA,UAAA,IAAA,GAPF,mBAMM,UAAA,MAAA,WALoB,QAAA,iBAAf,MAAM,UAAK;yBADtB,mBAMM,OAAA;MAJD,KAAK;MACN,OAAM;wBAEH,IAAI,GAAA,CAAA;iDAKL,QAAA,eAAA,UAAA,GADV,mBAIE,OAAA;;KAFE,KAAI;KACJ,WAAQ,OAAO,QAAA,eAAW,EAAA;;;;;;;;;AEvDlD,IAAa,4BAA4B;CACrC,MAAM,eAAe,gBAAgB;CACrC,MAAM,EAAE,eAAe,SAAS;CAEhC,SAAS,QAAQ,UAAmC;EAChD,OAAO,aAAa,iBACf,QAAO,QAAO,SAAS,OAAO,SAAS,IAAI,EAAE,CAAC,EAC9C,KAAI,QAAO,IAAI,IAAI;CAC5B;CAEA,eAAe,aAAa,SAA2B,oBAAqD;EACxG,MAAM,cAA6B,CAAC;EACpC,IAAI,QAAQ,aACR,YAAY,KAAK,GAAG,QAAQ,WAAW;EAE3C,IAAI,cAAc,WAAW,QAAQ,SAAS,aAC1C,YAAY,KAAK,GAAG,QAAQ,SAAS,WAAW;EAGpD,MAAM,WADoB,YAAY,OAAO,MAC5B,EAAkB,IAAI,aAAa,iBAAiB;EACrE,MAAM,YAAY,MAAM,QAAQ,IAAI,QAAQ;EAE5C,IAAI,oBACA,OAAO,UAAU,QAAO,MAAK,EAAE,iBAAiB,kBAAkB,EAAE,KAAI,MAAK,EAAE,IAAI;OAEnF,OAAO,UAAU,KAAI,MAAK,EAAE,IAAI;CAExC;CAEA,eAAe,QAAQ,SAA6D;EAChF,MAAM,OAAO,MAAM,kBAAkB;EACrC,IAAI,OAAgC,KAAA;EACpC,IAAI,SAAS,OAET,OAAO,QADU,cAAc,UAAU,QAAQ,WAAW,OACrC;OACpB,IAAI,SAAS,YAChB,OAAO,MAAM,aAAa,SAAS,MAAM,kBAAkB,gBAAgB;EAG/E,IAAI,QAAQ,MAAM,kBAAkB,WAChC,OAAO,KAAK,MAAM,GAAG,MAAM,kBAAkB,SAAS;EAG1D,OAAO;CACX;CAEA,eAAe,kBAAkB,SAA6D;EAC1F,MAAM,OAAO,MAAM,kBAAkB;EACrC,MAAM,0BAA0B,MAAM,kBAAkB;EACxD,IAAI,CAAC,MAAM,QACP;EAGJ,MAAM,UAAU,cAAc,UAAU,UAAU;EAClD,MAAM,WAAW,SAAS,YAAY;EAkBtC,QAAO,MAhBc,QAAQ,IAAI,KAAK,IAAI,OAAM,aAAY;GACxD,IAAI,aAAa,QACb,IAAI,SAAS,SACT,OAAO,WAAW,QAAQ,OAAO;QAEjC,OAAO;QAER,IAAI,aAAa,aACpB,OAAO,SAAS,KAAK;QAClB,IAAI,aAAa,0BAA0B,4BAA4B,KAAA,GAE1E,QAAO,MADiB,aAAa,SAAS,uBAAuB,GACpD,KAAK,IAAI;GAE9B,OAAO;EACX,CAAC,CAAC,GAEY,QAAO,MAAK,MAAM,IAAI;CACxC;CAEA,OAAO;EAAE;EAAS;CAAkB;AACxC"}
@@ -0,0 +1,37 @@
1
+ import { computed, onBeforeUnmount, onMounted, ref } from "vue";
2
+ //#region src/helper/debounceHelper.ts
3
+ function debounce(func, timeout) {
4
+ let timer;
5
+ return (...args) => {
6
+ clearTimeout(timer);
7
+ timer = setTimeout(() => {
8
+ func(...args);
9
+ }, timeout);
10
+ };
11
+ }
12
+ //#endregion
13
+ //#region src/components/composable/useResizePhone.ts
14
+ var useResizePhone = () => {
15
+ const windowWidth = ref(0);
16
+ const debounceResizeEvent = ref(void 0);
17
+ const isPhone = computed(() => windowWidth.value < 960);
18
+ function handleResize() {
19
+ windowWidth.value = window.innerWidth;
20
+ }
21
+ onMounted(() => {
22
+ debounceResizeEvent.value = debounce(handleResize, 500);
23
+ window.addEventListener("resize", debounceResizeEvent.value);
24
+ handleResize();
25
+ });
26
+ onBeforeUnmount(() => {
27
+ window.removeEventListener("resize", debounceResizeEvent.value);
28
+ });
29
+ return {
30
+ isPhone,
31
+ windowWidth
32
+ };
33
+ };
34
+ //#endregion
35
+ export { debounce as n, useResizePhone as t };
36
+
37
+ //# sourceMappingURL=useResizePhone-CpfFUmfV.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useResizePhone-CpfFUmfV.mjs","names":[],"sources":["../src/helper/debounceHelper.ts","../src/components/composable/useResizePhone.ts"],"sourcesContent":["export default function debounce<Params extends any[]>(\n func: (...args: Params) => any,\n timeout: number,\n): (...args: Params) => void {\n let timer: ReturnType<typeof setTimeout>;\n return (...args: Params) => {\n clearTimeout(timer)\n timer = setTimeout(() => {\n func(...args)\n }, timeout)\n }\n}","import debounce from '../../helper/debounceHelper';\nimport {computed, onBeforeUnmount, onMounted, Ref, ref} from 'vue';\nexport const useResizePhone = ()=>{\n\tconst windowWidth = ref(0);\n const debounceResizeEvent : Ref<undefined|((...args: any[]) => void)> =ref(undefined);\n\n const isPhone = computed(() => windowWidth.value < 960);\n\n function handleResize() {\n windowWidth.value = window.innerWidth;\n }\n onMounted(() => {\n debounceResizeEvent.value = debounce(handleResize, 500);\n window.addEventListener('resize', debounceResizeEvent.value);\n handleResize();\n })\n \n onBeforeUnmount(() => {\n window.removeEventListener('resize', debounceResizeEvent.value);\n })\n\n\treturn {\n isPhone,\n\t\twindowWidth,\n\t}\n}\n\n"],"mappings":";;AAAA,SAAwB,SACtB,MACA,SAC2B;CAC3B,IAAI;CACJ,QAAQ,GAAG,SAAiB;EAC1B,aAAa,KAAK;EAClB,QAAQ,iBAAiB;GACvB,KAAK,GAAG,IAAI;EACd,GAAG,OAAO;CACZ;AACF;;;ACTA,IAAa,uBAAqB;CACjC,MAAM,cAAc,IAAI,CAAC;CACxB,MAAM,sBAAiE,IAAI,KAAA,CAAS;CAEpF,MAAM,UAAU,eAAe,YAAY,QAAQ,GAAG;CAEtD,SAAS,eAAe;EACtB,YAAY,QAAQ,OAAO;CAC7B;CACA,gBAAgB;EACd,oBAAoB,QAAQ,SAAS,cAAc,GAAG;EACtD,OAAO,iBAAiB,UAAU,oBAAoB,KAAK;EAC3D,aAAa;CACf,CAAC;CAED,sBAAsB;EACpB,OAAO,oBAAoB,UAAU,oBAAoB,KAAK;CAChE,CAAC;CAEF,OAAO;EACJ;EACF;CACD;AACD"}
@@ -0,0 +1,276 @@
1
+ import { i as useAuthStore } from "./classicApi-BKNiWOG4.mjs";
2
+ //#region src/components/composable/useRights.ts
3
+ var ActionRight = /* @__PURE__ */ function(ActionRight) {
4
+ /** User can perform the action */
5
+ ActionRight["Allowed"] = "allowed";
6
+ /** User lacks the required role */
7
+ ActionRight["DeniedNoRight"] = "no_right";
8
+ /** User has a restricted role but does not own the resource **/
9
+ ActionRight["DeniedNotOwner"] = "not_owner";
10
+ /** User is scoped to specific rubriques */
11
+ ActionRight["DeniedInsufficientScope"] = "no_scope";
12
+ return ActionRight;
13
+ }({});
14
+ /**
15
+ * Generates boolean shortcut functions from a set of `getRightXxx` functions.
16
+ *
17
+ * Convention: `get${Action}Right(…args) → ActionRight`
18
+ * becomes `can${Action}(…args) → boolean`
19
+ *
20
+ * The generated function returns true when the underlying getRightXxx returns
21
+ * ActionRight.Allowed, and false otherwise. This means callers that only need
22
+ * a simple yes/no answer can use canXxx(), while callers that need the specific
23
+ * denial reason (DeniedNoRight vs DeniedNotOwner) can call getRightXxx() directly.
24
+ *
25
+ * Only synchronous functions should be passed here; async rights functions must
26
+ * be wrapped manually.
27
+ */
28
+ function deriveCanFunctions(fns) {
29
+ const result = {};
30
+ for (const key of Object.keys(fns)) if (key.startsWith("get") && key.endsWith("Right")) {
31
+ const canKey = `can${key.slice(3, -5)}`;
32
+ result[canKey] = (...args) => fns[key](...args) === "allowed";
33
+ }
34
+ return result;
35
+ }
36
+ /**
37
+ * Composable to manage rights.
38
+ * Based on AuthStore, but converts roles to easily usable tests for various
39
+ * actions.
40
+ */
41
+ var useRights = () => {
42
+ const authStore = useAuthStore();
43
+ function roleContainsAny(...roles) {
44
+ return authStore.authRole.findIndex((r) => roles.includes(r)) > -1;
45
+ }
46
+ function hasSufficientScope(elementRubriques = [], parentRubriques = []) {
47
+ const ids = elementRubriques.concat(parentRubriques);
48
+ const scope = authStore.userScope;
49
+ if (scope.length === 0) return true;
50
+ for (const id of scope) if (ids.includes(id)) return true;
51
+ return false;
52
+ }
53
+ function getCreateEmissionRight() {
54
+ return roleContainsAny("ADMIN", "ORGANISATION", "PRODUCTION", "RESTRICTED_PRODUCTION") ? "allowed" : "no_right";
55
+ }
56
+ function getEditEmissionRight(emission) {
57
+ if (!hasSufficientScope(emission.rubriqueIds)) return "no_scope";
58
+ if (!emission.emissionId && getCreateEmissionRight() === "allowed" || roleContainsAny("ADMIN", "ORGANISATION", "PRODUCTION")) return "allowed";
59
+ if (roleContainsAny("RESTRICTED_PRODUCTION")) return emission.createdByUserId === authStore.authProfile?.userId ? "allowed" : "not_owner";
60
+ return "no_right";
61
+ }
62
+ function getDeleteEmissionRight(emission) {
63
+ if (roleContainsAny("ADMIN", "ORGANISATION")) return "allowed";
64
+ else if (roleContainsAny("PRODUCTION", "RESTRICTED_PRODUCTION")) return hasSufficientScope(emission.rubriqueIds) ? "allowed" : "no_scope";
65
+ else return "no_right";
66
+ }
67
+ function getEditCommentsConfigEmissionRight() {
68
+ return roleContainsAny("ADMIN", "ORGANISATION", "PRODUCTION") ? "allowed" : "no_right";
69
+ }
70
+ function getCreatePodcastRight(emission) {
71
+ if (roleContainsAny("ADMIN", "ORGANISATION")) return "allowed";
72
+ else if (roleContainsAny("PRODUCTION", "PODCAST_CRUD", "RESTRICTED_PRODUCTION", "RESTRICTED_ANIMATION")) return !emission || hasSufficientScope(emission.rubriqueIds) ? "allowed" : "no_scope";
73
+ else return "no_right";
74
+ }
75
+ function getDuplicatePodcastRight() {
76
+ return roleContainsAny("ADMIN", "ORGANISATION", "PRODUCTION", "RESTRICTED_PRODUCTION") ? "allowed" : "no_right";
77
+ }
78
+ function getEditPodcastRight(podcast) {
79
+ if (!hasSufficientScope(podcast.rubriqueIds, podcast.emission.rubriqueIds)) return "no_scope";
80
+ if (roleContainsAny("ADMIN", "ORGANISATION", "PRODUCTION")) return "allowed";
81
+ if (roleContainsAny("RESTRICTED_PRODUCTION", "RESTRICTED_ANIMATION")) return podcast.createdByUserId === authStore.authProfile?.userId ? "allowed" : "not_owner";
82
+ if (roleContainsAny("PODCAST_CRUD")) return podcast.valid === false && podcast.publisher?.userId === authStore.authProfile?.userId ? "allowed" : "not_owner";
83
+ return "no_right";
84
+ }
85
+ function getDeletePodcastRight(podcast) {
86
+ return getEditPodcastRight(podcast);
87
+ }
88
+ function getValidatePodcastRight() {
89
+ return roleContainsAny("ADMIN", "ORGANISATION", "PRODUCTION", "PODCAST_VALIDATION") ? "allowed" : "no_right";
90
+ }
91
+ function getEditCommentsConfigPodcastRight() {
92
+ return roleContainsAny("ADMIN", "ORGANISATION", "PRODUCTION") ? "allowed" : "no_right";
93
+ }
94
+ function getCreatePlaylistRight() {
95
+ return roleContainsAny("ADMIN", "ORGANISATION", "PLAYLISTS") ? "allowed" : "no_right";
96
+ }
97
+ function getEditPlaylistRight() {
98
+ return roleContainsAny("ADMIN", "ORGANISATION", "PLAYLISTS") ? "allowed" : "no_right";
99
+ }
100
+ function getDeletePlaylistRight() {
101
+ return roleContainsAny("ADMIN", "ORGANISATION", "PLAYLISTS") ? "allowed" : "no_right";
102
+ }
103
+ function getCreateParticipantRight() {
104
+ return roleContainsAny("ADMIN", "ORGANISATION", "PRODUCTION", "RESTRICTED_PRODUCTION") ? "allowed" : "no_right";
105
+ }
106
+ async function getParticipantEditRight(participantId) {
107
+ return !participantId || roleContainsAny("ADMIN", "ORGANISATION", "PRODUCTION", "RESTRICTED_PRODUCTION") ? "allowed" : "no_right";
108
+ }
109
+ async function canEditParticipant(participantId) {
110
+ return await getParticipantEditRight(participantId) === "allowed";
111
+ }
112
+ async function canDeleteParticipant(participantId) {
113
+ return await getParticipantEditRight(participantId) === "allowed";
114
+ }
115
+ function getCreateRubriquesRight() {
116
+ return roleContainsAny("ADMIN", "ORGANISATION", "EDITION") ? "allowed" : "no_right";
117
+ }
118
+ function getEditRubriquesRight(_element) {
119
+ return getCreateRubriquesRight();
120
+ }
121
+ function getCreateAggregatorRight() {
122
+ return roleContainsAny("ADMIN", "ORGANISATION") ? "allowed" : "no_right";
123
+ }
124
+ function getEditAggregatorRight() {
125
+ return roleContainsAny("ADMIN", "ORGANISATION") ? "allowed" : "no_right";
126
+ }
127
+ function getDeleteAggregatorRight() {
128
+ return roleContainsAny("ADMIN", "ORGANISATION") ? "allowed" : "no_right";
129
+ }
130
+ function getCreateCartouchierRight() {
131
+ return roleContainsAny("ADMIN", "ORGANISATION", "PRODUCTION", "RADIO", "ANIMATION", "PODCAST_CRUD", "RESTRICTED_PRODUCTION", "RESTRICTED_ANIMATION") ? "allowed" : "no_right";
132
+ }
133
+ function getEditCartouchierRight(element) {
134
+ if (roleContainsAny("ADMIN", "ORGANISATION", "PRODUCTION", "RADIO", "ANIMATION")) return "allowed";
135
+ if (roleContainsAny("RESTRICTED_PRODUCTION", "RESTRICTED_ANIMATION", "PODCAST_CRUD")) return element.ownerId !== void 0 && element.ownerId !== null && element.ownerId === authStore.authProfile?.userId ? "allowed" : "not_owner";
136
+ return "no_right";
137
+ }
138
+ function getDeleteCartouchierRight(element) {
139
+ return getEditCartouchierRight(element);
140
+ }
141
+ function getCreatePlaylistMediaRight() {
142
+ return roleContainsAny("ADMIN", "ORGANISATION", "PRODUCTION", "RADIO", "ANIMATION", "PODCAST_CRUD", "RESTRICTED_PRODUCTION", "RESTRICTED_ANIMATION") ? "allowed" : "no_right";
143
+ }
144
+ function getEditPlaylistMediaRight(element) {
145
+ if (roleContainsAny("ADMIN", "ORGANISATION", "PRODUCTION", "RADIO", "ANIMATION")) return "allowed";
146
+ if (roleContainsAny("RESTRICTED_PRODUCTION", "RESTRICTED_ANIMATION", "PODCAST_CRUD")) return element.ownerId !== void 0 && element.ownerId !== null && element.ownerId === authStore.authProfile?.userId ? "allowed" : "not_owner";
147
+ return "no_right";
148
+ }
149
+ function getDeletePlaylistMediaRight(element) {
150
+ return getEditPlaylistMediaRight(element);
151
+ }
152
+ function getCreateMediaRight() {
153
+ return roleContainsAny("ADMIN", "ORGANISATION", "PRODUCTION", "RADIO", "ANIMATION", "PODCAST_CRUD", "RESTRICTED_PRODUCTION", "RESTRICTED_ANIMATION") ? "allowed" : "no_right";
154
+ }
155
+ function getEditMediaRight(element) {
156
+ if (roleContainsAny("ADMIN", "ORGANISATION", "PRODUCTION", "RADIO", "ANIMATION")) return "allowed";
157
+ if (roleContainsAny("RESTRICTED_PRODUCTION", "RESTRICTED_ANIMATION", "PODCAST_CRUD")) return element.ownerId !== void 0 && element.ownerId !== null && element.ownerId === authStore.authProfile?.userId ? "allowed" : "not_owner";
158
+ return "no_right";
159
+ }
160
+ function getDeleteMediaRight(element) {
161
+ return getEditMediaRight(element);
162
+ }
163
+ function getCreateMixRight() {
164
+ return roleContainsAny("ADMIN", "ORGANISATION", "RADIO") ? "allowed" : "no_right";
165
+ }
166
+ function getEditMixRight(_element) {
167
+ return getCreateMixRight();
168
+ }
169
+ function getDeleteMixRight(element) {
170
+ return getEditMixRight(element);
171
+ }
172
+ function getEditTranscriptRight(podcast) {
173
+ if (!hasSufficientScope(podcast.rubriqueIds, podcast.emission.rubriqueIds)) return "no_scope";
174
+ if (roleContainsAny("ADMIN", "ORGANISATION", "PRODUCTION")) return "allowed";
175
+ if (roleContainsAny("RESTRICTED_PRODUCTION", "PODCAST_CRUD")) return podcast.createdByUserId === authStore.authProfile?.userId ? "allowed" : "not_owner";
176
+ return "no_right";
177
+ }
178
+ function getEditTranscriptVisibilityRight(podcast) {
179
+ if (!hasSufficientScope(podcast.rubriqueIds, podcast.emission.rubriqueIds)) return "no_scope";
180
+ return roleContainsAny("ADMIN", "ORGANISATION", "PRODUCTION") ? "allowed" : "no_right";
181
+ }
182
+ function getEditTranslationRight(podcast) {
183
+ return getEditTranscriptRight(podcast);
184
+ }
185
+ function getAccessRecordingRight(conference, isLive) {
186
+ if (isLive) return roleContainsAny("LIVE") ? "allowed" : "no_right";
187
+ else return roleContainsAny("ANIMATION", "RESTRICTED_ANIMATION") ? "allowed" : "no_right";
188
+ }
189
+ function getEditCodeInsertPlayerRight() {
190
+ return roleContainsAny("ADMIN", "ORGANISATION") ? "allowed" : "no_right";
191
+ }
192
+ function getEditChapteringRight(podcast) {
193
+ return getEditPodcastRight(podcast);
194
+ }
195
+ function getCreatePromoVideoRight(podcast) {
196
+ if (!hasSufficientScope(podcast.rubriqueIds, podcast.emission.rubriqueIds)) return "no_scope";
197
+ else if (roleContainsAny("ADMIN", "ORGANISATION", "PRODUCTION")) return "allowed";
198
+ else return "no_right";
199
+ }
200
+ function getEditPromoVideoRight(podcast) {
201
+ return getCreatePromoVideoRight(podcast);
202
+ }
203
+ function getDeletePromoVideoRight(podcast) {
204
+ return getCreatePromoVideoRight(podcast);
205
+ }
206
+ function canSeeHistory() {
207
+ return roleContainsAny("ADMIN", "ORGANISATION");
208
+ }
209
+ function isRestrictedProduction() {
210
+ return roleContainsAny("RESTRICTED_PRODUCTION") && !roleContainsAny("ADMIN", "ORGANISATION", "PRODUCTION");
211
+ }
212
+ const rightFns = {
213
+ getCreateEmissionRight,
214
+ getEditEmissionRight,
215
+ getDeleteEmissionRight,
216
+ getEditCommentsConfigEmissionRight,
217
+ getCreatePodcastRight,
218
+ getDuplicatePodcastRight,
219
+ getEditPodcastRight,
220
+ getDeletePodcastRight,
221
+ getValidatePodcastRight,
222
+ getEditCommentsConfigPodcastRight,
223
+ getCreatePlaylistRight,
224
+ getEditPlaylistRight,
225
+ getDeletePlaylistRight,
226
+ getCreateParticipantRight,
227
+ getCreateRubriquesRight,
228
+ getEditRubriquesRight,
229
+ getCreateAggregatorRight,
230
+ getEditAggregatorRight,
231
+ getDeleteAggregatorRight,
232
+ getCreateCartouchierRight,
233
+ getEditCartouchierRight,
234
+ getDeleteCartouchierRight,
235
+ getCreatePlaylistMediaRight,
236
+ getEditPlaylistMediaRight,
237
+ getDeletePlaylistMediaRight,
238
+ getCreateMediaRight,
239
+ getEditMediaRight,
240
+ getDeleteMediaRight,
241
+ getCreateMixRight,
242
+ getEditMixRight,
243
+ getDeleteMixRight,
244
+ getEditTranscriptRight,
245
+ getEditTranscriptVisibilityRight,
246
+ getEditTranslationRight,
247
+ getAccessRecordingRight,
248
+ getEditCodeInsertPlayerRight,
249
+ getEditChapteringRight,
250
+ getCreatePromoVideoRight,
251
+ getEditPromoVideoRight,
252
+ getDeletePromoVideoRight
253
+ };
254
+ const canFns = deriveCanFunctions(rightFns);
255
+ function canReadRSSRules() {
256
+ return roleContainsAny("ADMIN", "ORGANISATION", "PRODUCTION");
257
+ }
258
+ function canEditRSSRules() {
259
+ return canReadRSSRules();
260
+ }
261
+ return {
262
+ ...rightFns,
263
+ ...canFns,
264
+ getParticipantEditRight,
265
+ canEditParticipant,
266
+ canDeleteParticipant,
267
+ canReadRSSRules,
268
+ canEditRSSRules,
269
+ canSeeHistory,
270
+ isRestrictedProduction
271
+ };
272
+ };
273
+ //#endregion
274
+ export { useRights as n, ActionRight as t };
275
+
276
+ //# sourceMappingURL=useRights-JVTbEOUh.mjs.map