@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":"RubriqueChooser-BgIvDDv7.mjs","names":[],"sources":["../src/components/display/rubriques/RubriqueChooser.vue","../src/components/display/rubriques/RubriqueChooser.vue"],"sourcesContent":["<template>\n <ClassicMultiselect\n :id=\"id\"\n ref=\"selectRubrique\"\n :option-chosen=\"model\"\n option-label=\"name\"\n :display-label=\"displayLabel\"\n :label=\"label ?? t('By rubric')\"\n :text-danger=\"textDanger\"\n :placeholder=\"placeholderText\"\n :max-element=\"maxElement\"\n :multiple=\"multiple\"\n :min-search-length=\"1\"\n :width=\"width\"\n :in-modal=\"inModal\"\n :is-disabled=\"isDisabled\"\n :no-deselect=\"noDeselect\"\n @on-search=\"onSearchRubrique\"\n @selected=\"onRubriqueSelected\"\n />\n</template>\n\n<script setup lang=\"ts\">\nimport { Rubrique } from \"@/stores/class/rubrique/rubrique\";\nimport ClassicMultiselect from \"../../form/ClassicMultiselect.vue\";\nimport { computed, onMounted, Ref, ref, useTemplateRef, watch } from \"vue\";\nimport { useI18n } from \"vue-i18n\";\n\n//Props \nconst props = defineProps({\n defaultanswer: { default: \"\", type: String },\n width: { default: undefined, type: String },\n /**\n * Active la sélection multiple\n */\n multiple: { default: false, type: Boolean },\n reset: { default: false, type: Boolean },\n /**\n * Les rubriques à afficher\n */\n allRubriques: { default: () => [], type: Array as () => Array<Rubrique> },\n rubriqueSelected: { default: undefined, type: Number },\n rubriqueSelectedArray: {\n default: undefined,\n type: Object as () => Array<number>,\n },\n id: { default: \"rubrique-chooser\", type: String },\n withoutRubrique: { default: false, type: Boolean },\n isDisabled: { default: false, type: Boolean },\n noDeselect: { default: true, type: Boolean },\n inModal: { default: false, type: Boolean },\n label:{default: undefined, type: String },\n displayLabel: { default: false, type: Boolean },\n textDanger :{ default: undefined, type: String },\n /**\n * Le texte affiché là où l'utilisateur doit effectuer sa saisie\n */\n placeholder: { type: String, required: false, default: undefined }\n})\n\n\n//Emits\nconst emit = defineEmits([\n \"update:rubriqueSelected\",\n \"update:rubriqueSelectedArray\",\n \"selected\"\n]);\n\n\n//Composables\nconst { t } = useI18n();\n\n\n//Data \nconst maxElement = ref(250);\nconst rubrique: Ref<Rubrique | undefined> = ref(undefined);\nconst rubriqueForArray: Ref<Array<Rubrique> | undefined> = ref([]);\nconst withoutItem: Ref<{\n name: string;\n rubriqueId: number;\n}> = ref({ name: t(\"Without rubric\"), rubriqueId: -1 });\nconst selectRubriqueRef = useTemplateRef('selectRubrique');\n\n\n//Computed\nconst getDefaultRubrique = computed(() => {\n if (\"\" === props.defaultanswer) {\n return undefined;\n }\n return { name: props.defaultanswer, rubriqueId: 0 };\n});\nconst rubriques = computed(() => {\n const rubriques = props.allRubriques;\n if (!getDefaultRubrique.value) {\n return rubriques;\n }\n if (props.withoutRubrique) {\n rubriques.unshift(withoutItem.value);\n }\n rubriques.unshift(getDefaultRubrique.value);\n return rubriques;\n});\n\nconst model = computed({\n get(): Rubrique | Array<Rubrique> | undefined {\n return !props.multiple ? rubrique.value : rubriqueForArray.value;\n },\n set(value: Rubrique | Array<Rubrique> | undefined): void {\n if (!props.multiple) {\n rubrique.value = value as Rubrique | undefined;\n return;\n }\n rubriqueForArray.value = value as Array<Rubrique>;\n },\n})\n\n/**\n * Le texte à afficher dans la saisie de l'utilisateur\n */\nconst placeholderText = computed(() => {\n if (props.placeholder) {\n return props.placeholder;\n } else {\n return t('Type string to filter by categories');\n }\n});\n\n//Watch\nwatch(()=>props.rubriqueSelected, () => {\n if (props.rubriqueSelected) {\n initRubriqueSelected();\n } else {\n rubrique.value = getDefaultRubrique.value;\n }\n}, {immediate: true});\nwatch(()=>props.reset, () => {\n rubrique.value = getDefaultRubrique.value;\n});\n\nonMounted(()=>initRubriqueArray())\n\n\n//Methods\nfunction onSearchRubrique(query: string): void {\n let tempRubriques = rubriques.value;\n if (query) {\n tempRubriques = tempRubriques.filter((item: Rubrique) => {\n return item.name.toUpperCase().includes(query.toUpperCase());\n });\n }\n (selectRubriqueRef?.value as InstanceType<typeof ClassicMultiselect>).afterSearch(tempRubriques, tempRubriques.length);\n}\nfunction onRubriqueSelected(rubrique: Rubrique | Array<Rubrique>): void {\n if (undefined !== props.rubriqueSelected) {\n emit(\"update:rubriqueSelected\",(rubrique as Rubrique).rubriqueId);\n }\n if (undefined !== props.rubriqueSelectedArray) {\n const idsArray: Array<number> = [];\n (rubrique as Array<Rubrique>).forEach((el: Rubrique) => {\n idsArray.push(el.rubriqueId ?? 0);\n });\n emit(\"update:rubriqueSelectedArray\", idsArray);\n } else {\n emit(\"selected\", rubrique);\n }\n}\nfunction initRubriqueSelected(): void {\n rubrique.value =\n rubriques.value.find((el: Rubrique) => {\n return el.rubriqueId === props.rubriqueSelected;\n }) ?? getDefaultRubrique.value;\n}\nfunction initRubriqueArray(): void {\n if (!rubriqueForArray.value || !props.rubriqueSelectedArray) {\n return;\n }\n rubriqueForArray.value.length = 0;\n props.rubriqueSelectedArray.forEach((element: number) => {\n const item = rubriques.value.find((el: Rubrique) => {\n return el.rubriqueId === element;\n });\n if (rubriqueForArray.value && item) {\n rubriqueForArray.value.push(item);\n }\n });\n}\n</script>\n","<template>\n <ClassicMultiselect\n :id=\"id\"\n ref=\"selectRubrique\"\n :option-chosen=\"model\"\n option-label=\"name\"\n :display-label=\"displayLabel\"\n :label=\"label ?? t('By rubric')\"\n :text-danger=\"textDanger\"\n :placeholder=\"placeholderText\"\n :max-element=\"maxElement\"\n :multiple=\"multiple\"\n :min-search-length=\"1\"\n :width=\"width\"\n :in-modal=\"inModal\"\n :is-disabled=\"isDisabled\"\n :no-deselect=\"noDeselect\"\n @on-search=\"onSearchRubrique\"\n @selected=\"onRubriqueSelected\"\n />\n</template>\n\n<script setup lang=\"ts\">\nimport { Rubrique } from \"@/stores/class/rubrique/rubrique\";\nimport ClassicMultiselect from \"../../form/ClassicMultiselect.vue\";\nimport { computed, onMounted, Ref, ref, useTemplateRef, watch } from \"vue\";\nimport { useI18n } from \"vue-i18n\";\n\n//Props \nconst props = defineProps({\n defaultanswer: { default: \"\", type: String },\n width: { default: undefined, type: String },\n /**\n * Active la sélection multiple\n */\n multiple: { default: false, type: Boolean },\n reset: { default: false, type: Boolean },\n /**\n * Les rubriques à afficher\n */\n allRubriques: { default: () => [], type: Array as () => Array<Rubrique> },\n rubriqueSelected: { default: undefined, type: Number },\n rubriqueSelectedArray: {\n default: undefined,\n type: Object as () => Array<number>,\n },\n id: { default: \"rubrique-chooser\", type: String },\n withoutRubrique: { default: false, type: Boolean },\n isDisabled: { default: false, type: Boolean },\n noDeselect: { default: true, type: Boolean },\n inModal: { default: false, type: Boolean },\n label:{default: undefined, type: String },\n displayLabel: { default: false, type: Boolean },\n textDanger :{ default: undefined, type: String },\n /**\n * Le texte affiché là où l'utilisateur doit effectuer sa saisie\n */\n placeholder: { type: String, required: false, default: undefined }\n})\n\n\n//Emits\nconst emit = defineEmits([\n \"update:rubriqueSelected\",\n \"update:rubriqueSelectedArray\",\n \"selected\"\n]);\n\n\n//Composables\nconst { t } = useI18n();\n\n\n//Data \nconst maxElement = ref(250);\nconst rubrique: Ref<Rubrique | undefined> = ref(undefined);\nconst rubriqueForArray: Ref<Array<Rubrique> | undefined> = ref([]);\nconst withoutItem: Ref<{\n name: string;\n rubriqueId: number;\n}> = ref({ name: t(\"Without rubric\"), rubriqueId: -1 });\nconst selectRubriqueRef = useTemplateRef('selectRubrique');\n\n\n//Computed\nconst getDefaultRubrique = computed(() => {\n if (\"\" === props.defaultanswer) {\n return undefined;\n }\n return { name: props.defaultanswer, rubriqueId: 0 };\n});\nconst rubriques = computed(() => {\n const rubriques = props.allRubriques;\n if (!getDefaultRubrique.value) {\n return rubriques;\n }\n if (props.withoutRubrique) {\n rubriques.unshift(withoutItem.value);\n }\n rubriques.unshift(getDefaultRubrique.value);\n return rubriques;\n});\n\nconst model = computed({\n get(): Rubrique | Array<Rubrique> | undefined {\n return !props.multiple ? rubrique.value : rubriqueForArray.value;\n },\n set(value: Rubrique | Array<Rubrique> | undefined): void {\n if (!props.multiple) {\n rubrique.value = value as Rubrique | undefined;\n return;\n }\n rubriqueForArray.value = value as Array<Rubrique>;\n },\n})\n\n/**\n * Le texte à afficher dans la saisie de l'utilisateur\n */\nconst placeholderText = computed(() => {\n if (props.placeholder) {\n return props.placeholder;\n } else {\n return t('Type string to filter by categories');\n }\n});\n\n//Watch\nwatch(()=>props.rubriqueSelected, () => {\n if (props.rubriqueSelected) {\n initRubriqueSelected();\n } else {\n rubrique.value = getDefaultRubrique.value;\n }\n}, {immediate: true});\nwatch(()=>props.reset, () => {\n rubrique.value = getDefaultRubrique.value;\n});\n\nonMounted(()=>initRubriqueArray())\n\n\n//Methods\nfunction onSearchRubrique(query: string): void {\n let tempRubriques = rubriques.value;\n if (query) {\n tempRubriques = tempRubriques.filter((item: Rubrique) => {\n return item.name.toUpperCase().includes(query.toUpperCase());\n });\n }\n (selectRubriqueRef?.value as InstanceType<typeof ClassicMultiselect>).afterSearch(tempRubriques, tempRubriques.length);\n}\nfunction onRubriqueSelected(rubrique: Rubrique | Array<Rubrique>): void {\n if (undefined !== props.rubriqueSelected) {\n emit(\"update:rubriqueSelected\",(rubrique as Rubrique).rubriqueId);\n }\n if (undefined !== props.rubriqueSelectedArray) {\n const idsArray: Array<number> = [];\n (rubrique as Array<Rubrique>).forEach((el: Rubrique) => {\n idsArray.push(el.rubriqueId ?? 0);\n });\n emit(\"update:rubriqueSelectedArray\", idsArray);\n } else {\n emit(\"selected\", rubrique);\n }\n}\nfunction initRubriqueSelected(): void {\n rubrique.value =\n rubriques.value.find((el: Rubrique) => {\n return el.rubriqueId === props.rubriqueSelected;\n }) ?? getDefaultRubrique.value;\n}\nfunction initRubriqueArray(): void {\n if (!rubriqueForArray.value || !props.rubriqueSelectedArray) {\n return;\n }\n rubriqueForArray.value.length = 0;\n props.rubriqueSelectedArray.forEach((element: number) => {\n const item = rubriques.value.find((el: Rubrique) => {\n return el.rubriqueId === element;\n });\n if (rubriqueForArray.value && item) {\n rubriqueForArray.value.push(item);\n }\n });\n}\n</script>\n"],"mappings":"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"}
@@ -0,0 +1,168 @@
1
+ import { r as useFilterStore, t as classicApi_default } from "./classicApi-BKNiWOG4.mjs";
2
+ import { t as ClassicCheckbox_default } from "./ClassicCheckbox-CqA5WUGc.mjs";
3
+ import { t as useRubriquesFilterParam } from "./useRubriquesFilterParam-U-wcZUul.mjs";
4
+ import { Fragment, computed, createBlock, createCommentVNode, createElementBlock, createVNode, defineAsyncComponent, defineComponent, onBeforeMount, openBlock, ref, renderList, toDisplayString, unref, watch } from "vue";
5
+ import { useI18n } from "vue-i18n";
6
+ //#region src/components/display/filter/RubriqueFilter.vue?vue&type=script&setup=true&lang.ts
7
+ var _hoisted_1 = {
8
+ key: 0,
9
+ class: "d-flex mt-3 align-items-center"
10
+ };
11
+ var _hoisted_2 = {
12
+ key: 0,
13
+ class: "d-flex ms-1 flex-column flex-grow-1"
14
+ };
15
+ //#endregion
16
+ //#region src/components/display/filter/RubriqueFilter.vue
17
+ var RubriqueFilter_default = /* @__PURE__ */ defineComponent({
18
+ __name: "RubriqueFilter",
19
+ props: {
20
+ organisationId: {
21
+ default: void 0,
22
+ type: String
23
+ },
24
+ rubriqueFilter: {
25
+ default: () => [],
26
+ type: Array
27
+ }
28
+ },
29
+ emits: ["update:rubriqueFilter", "warning"],
30
+ setup(__props, { emit: __emit }) {
31
+ const RubriqueChoice = defineAsyncComponent(() => import("./RubriqueChoice-BN4nirmx.mjs"));
32
+ const props = __props;
33
+ const emit = __emit;
34
+ const isRubriquage = ref(false);
35
+ const internRubriqueFilter = ref([]);
36
+ const rubriquageData = ref([]);
37
+ const needToFetchRubrique = ref(false);
38
+ const { t } = useI18n();
39
+ const { stringifyRubriquesFilter } = useRubriquesFilterParam();
40
+ const filterStore = useFilterStore();
41
+ const organisation = computed(() => props.organisationId ? props.organisationId : filterStore.filterOrgaId);
42
+ const availableRubriquage = computed(() => getAvailableRubriquage(internRubriqueFilter.value));
43
+ watch(organisation, () => {
44
+ if (isRubriquage.value) fetchTopics();
45
+ else needToFetchRubrique.value = true;
46
+ });
47
+ watch(() => props.rubriqueFilter, () => {
48
+ isRubriquage.value = 0 !== props.rubriqueFilter?.length;
49
+ if (props.rubriqueFilter && stringifyRubriquesFilter(internRubriqueFilter.value) !== stringifyRubriquesFilter(props.rubriqueFilter)) internRubriqueFilter.value = props.rubriqueFilter;
50
+ }, {
51
+ deep: true,
52
+ immediate: true
53
+ });
54
+ watch(isRubriquage, () => {
55
+ if (needToFetchRubrique.value) fetchTopics();
56
+ if (isRubriquage.value && 0 === internRubriqueFilter.value.length) addFilter();
57
+ const value = isRubriquage.value ? internRubriqueFilter.value : [];
58
+ if (stringifyRubriquesFilter(value) !== stringifyRubriquesFilter(props.rubriqueFilter)) emit("update:rubriqueFilter", value);
59
+ });
60
+ onBeforeMount(() => fetchTopics());
61
+ function updateInternRubriqueFilter() {
62
+ if (isRubriquage.value) emit("update:rubriqueFilter", internRubriqueFilter.value);
63
+ else isRubriquage.value = true;
64
+ }
65
+ function addFilter() {
66
+ if (availableRubriquage.value?.[0].rubriquageId) {
67
+ internRubriqueFilter.value.push({
68
+ rubriquageId: availableRubriquage.value[0].rubriquageId,
69
+ rubriqueId: 0,
70
+ nameRubriquage: rubriquageData.value[0].title,
71
+ nameRubrique: ""
72
+ });
73
+ updateInternRubriqueFilter();
74
+ }
75
+ }
76
+ function deleteRubriqueChoice(index) {
77
+ internRubriqueFilter.value.splice(index, 1);
78
+ updateInternRubriqueFilter();
79
+ }
80
+ function getAvailableRubriquage(filterRubrique) {
81
+ if (filterRubrique.length) {
82
+ const rubriquageIdToNotShow = filterRubrique.map((a) => a.rubriquageId);
83
+ return rubriquageData.value.filter((element) => {
84
+ if (element.rubriquageId) return !rubriquageIdToNotShow.includes(element.rubriquageId);
85
+ });
86
+ }
87
+ return rubriquageData.value;
88
+ }
89
+ function getRubriquage(index) {
90
+ const elementToNotShow = Array.from(internRubriqueFilter.value);
91
+ elementToNotShow.splice(index, 1);
92
+ return getAvailableRubriquage(elementToNotShow);
93
+ }
94
+ function updateRubrique(newValue) {
95
+ const item = internRubriqueFilter.value[newValue.index];
96
+ item.rubriqueId = newValue.rubriqueId;
97
+ internRubriqueFilter.value.splice(newValue.index, 1, item);
98
+ updateInternRubriqueFilter();
99
+ }
100
+ function updateRubriquage(newValue) {
101
+ const item = internRubriqueFilter.value[newValue.index];
102
+ item.rubriquageId = newValue.rubriquageId;
103
+ internRubriqueFilter.value.splice(newValue.index, 1, item);
104
+ updateInternRubriqueFilter();
105
+ }
106
+ async function fetchTopics() {
107
+ if (!organisation.value) return;
108
+ needToFetchRubrique.value = false;
109
+ rubriquageData.value = (await classicApi_default.fetchData({
110
+ api: 0,
111
+ path: "rubriquage/find/" + organisation.value,
112
+ specialTreatement: true
113
+ })).filter((element) => {
114
+ return element.rubriques.length;
115
+ });
116
+ if (0 === rubriquageData.value.length) {
117
+ if (internRubriqueFilter.value.length) {
118
+ internRubriqueFilter.value = [];
119
+ updateInternRubriqueFilter();
120
+ emit("warning");
121
+ }
122
+ return;
123
+ }
124
+ const internRubriqueFilterToUpdate = [];
125
+ for (const filter of internRubriqueFilter.value) if (rubriquageData.value.find((element) => element.rubriquageId === filter.rubriquageId)) internRubriqueFilterToUpdate.push(filter);
126
+ if (internRubriqueFilterToUpdate.length !== internRubriqueFilter.value.length) {
127
+ internRubriqueFilter.value = internRubriqueFilterToUpdate;
128
+ updateInternRubriqueFilter();
129
+ emit("warning");
130
+ }
131
+ }
132
+ return (_ctx, _cache) => {
133
+ return organisation.value && rubriquageData.value ? (openBlock(), createElementBlock("div", _hoisted_1, [createVNode(ClassicCheckbox_default, {
134
+ "text-init": isRubriquage.value,
135
+ "onUpdate:textInit": _cache[0] || (_cache[0] = ($event) => isRubriquage.value = $event),
136
+ class: "flex-shrink-0",
137
+ "id-checkbox": "search-rubriquage-checkbox",
138
+ label: unref(t)("By topic")
139
+ }, null, 8, ["text-init", "label"]), isRubriquage.value ? (openBlock(), createElementBlock("div", _hoisted_2, [(openBlock(true), createElementBlock(Fragment, null, renderList(internRubriqueFilter.value, (filter, index) => {
140
+ return openBlock(), createBlock(unref(RubriqueChoice), {
141
+ key: index,
142
+ index,
143
+ "rubriquage-display": getRubriquage(index),
144
+ "rubrique-id-selected": filter.rubriqueId,
145
+ "rubriquage-id-selected": filter.rubriquageId,
146
+ "no-deselect": true,
147
+ onUpdateRubrique: updateRubrique,
148
+ onUpdateRubriquage: updateRubriquage,
149
+ onDeleteRubriqueChoice: ($event) => deleteRubriqueChoice(index)
150
+ }, null, 8, [
151
+ "index",
152
+ "rubriquage-display",
153
+ "rubrique-id-selected",
154
+ "rubriquage-id-selected",
155
+ "onDeleteRubriqueChoice"
156
+ ]);
157
+ }), 128)), availableRubriquage.value.length ? (openBlock(), createElementBlock("button", {
158
+ key: 0,
159
+ class: "btn mt-2",
160
+ onClick: addFilter
161
+ }, toDisplayString(unref(t)("Add a sort criterion by topic")), 1)) : createCommentVNode("", true)])) : createCommentVNode("", true)])) : createCommentVNode("", true);
162
+ };
163
+ }
164
+ });
165
+ //#endregion
166
+ export { RubriqueFilter_default as default };
167
+
168
+ //# sourceMappingURL=RubriqueFilter-BwBU4kpV.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"RubriqueFilter-BwBU4kpV.mjs","names":[],"sources":["../src/components/display/filter/RubriqueFilter.vue","../src/components/display/filter/RubriqueFilter.vue"],"sourcesContent":["<template>\n <div\n v-if=\"organisation && rubriquageData\"\n class=\"d-flex mt-3 align-items-center\"\n >\n <ClassicCheckbox\n v-model:text-init=\"isRubriquage\"\n class=\"flex-shrink-0\"\n id-checkbox=\"search-rubriquage-checkbox\"\n :label=\"t('By topic')\"\n />\n <div v-if=\"isRubriquage\" class=\"d-flex ms-1 flex-column flex-grow-1\">\n <RubriqueChoice\n v-for=\"(filter, index) in internRubriqueFilter\"\n :key=\"index\"\n :index=\"index\"\n :rubriquage-display=\"getRubriquage(index)\"\n :rubrique-id-selected=\"filter.rubriqueId\"\n :rubriquage-id-selected=\"filter.rubriquageId\"\n :no-deselect=\"true\"\n @update-rubrique=\"updateRubrique\"\n @update-rubriquage=\"updateRubriquage\"\n @delete-rubrique-choice=\"deleteRubriqueChoice(index)\"\n />\n <button\n v-if=\"availableRubriquage.length\"\n class=\"btn mt-2\"\n @click=\"addFilter\"\n >\n {{ t(\"Add a sort criterion by topic\") }}\n </button>\n </div>\n </div>\n</template>\n\n<script setup lang=\"ts\">\nimport { useRubriquesFilterParam } from \"../../composable/route/useRubriquesFilterParam\";\nimport classicApi from \"../../../api/classicApi\";\nimport ClassicCheckbox from \"../../form/ClassicCheckbox.vue\";\nimport { Rubriquage } from \"@/stores/class/rubrique/rubriquage\";\nimport { RubriquageFilter } from \"@/stores/class/rubrique/rubriquageFilter\";\nimport { useFilterStore } from \"../../../stores/FilterStore\";\nimport { defineAsyncComponent, ref, Ref, computed, watch, onBeforeMount } from \"vue\";\nimport { useI18n } from \"vue-i18n\";\nconst RubriqueChoice = defineAsyncComponent(\n () => import(\"./RubriqueChoice.vue\"),\n);\n\n//Props \nconst props = defineProps({\n organisationId: { default: undefined, type: String },\n rubriqueFilter: {\n default: () => [],\n type: Array as () => Array<RubriquageFilter>,\n },\n})\n\n//Emits\nconst emit = defineEmits([\"update:rubriqueFilter\", \"warning\"]);\n\n//Data \nconst isRubriquage = ref(false);\nconst internRubriqueFilter: Ref<Array<RubriquageFilter>> = ref([]);\nconst rubriquageData: Ref<Array<Rubriquage>> = ref([]);\nconst needToFetchRubrique = ref(false);\n\n//Composables\nconst { t } = useI18n();\nconst { stringifyRubriquesFilter } = useRubriquesFilterParam();\nconst filterStore = useFilterStore();\n\n//Computed\nconst organisation = computed(() => props.organisationId ? props.organisationId : filterStore.filterOrgaId);\nconst availableRubriquage = computed(() => getAvailableRubriquage(internRubriqueFilter.value));\n\n\n//Watch\nwatch(organisation, () => {\n if (isRubriquage.value) {\n fetchTopics();\n } else {\n needToFetchRubrique.value = true;\n }\n});\nwatch(()=>props.rubriqueFilter, () => {\n isRubriquage.value = 0 !== props.rubriqueFilter?.length;\n if (\n props.rubriqueFilter &&\n stringifyRubriquesFilter(internRubriqueFilter.value) !==\n stringifyRubriquesFilter(props.rubriqueFilter)\n ) {\n internRubriqueFilter.value = props.rubriqueFilter;\n }\n}, {deep: true,immediate: true});\nwatch(isRubriquage, () => {\n if (needToFetchRubrique.value) {\n fetchTopics();\n }\n if (isRubriquage.value && 0 === internRubriqueFilter.value.length) {\n addFilter();\n }\n const value = isRubriquage.value ? internRubriqueFilter.value : [];\n if (\n stringifyRubriquesFilter(value) !==\n stringifyRubriquesFilter(props.rubriqueFilter)\n ) {\n emit(\"update:rubriqueFilter\", value);\n }\n});\n\n\nonBeforeMount(()=>fetchTopics())\n\n//Methods\nfunction updateInternRubriqueFilter() {\n if (isRubriquage.value) {\n emit(\"update:rubriqueFilter\", internRubriqueFilter.value);\n } else {\n isRubriquage.value = true;\n }\n}\nfunction addFilter(): void {\n if (availableRubriquage.value?.[0].rubriquageId) {\n internRubriqueFilter.value.push({\n rubriquageId: availableRubriquage.value[0].rubriquageId,\n rubriqueId: 0,\n nameRubriquage: rubriquageData.value[0].title,\n nameRubrique: \"\",\n });\n updateInternRubriqueFilter();\n }\n}\nfunction deleteRubriqueChoice(index: number): void {\n internRubriqueFilter.value.splice(index, 1);\n updateInternRubriqueFilter();\n}\nfunction getAvailableRubriquage(\n filterRubrique: Array<RubriquageFilter>,\n): Array<Rubriquage> {\n if (filterRubrique.length) {\n const rubriquageIdToNotShow = filterRubrique.map((a) => a.rubriquageId);\n return rubriquageData.value.filter((element) => {\n if (element.rubriquageId) {\n return !rubriquageIdToNotShow.includes(element.rubriquageId);\n }\n });\n }\n return rubriquageData.value;\n}\nfunction getRubriquage(index: number) {\n const elementToNotShow = Array.from(internRubriqueFilter.value);\n elementToNotShow.splice(index, 1);\n return getAvailableRubriquage(elementToNotShow);\n}\nfunction updateRubrique(newValue: { rubriqueId: number; index: number }): void {\n const item = internRubriqueFilter.value[newValue.index];\n item.rubriqueId = newValue.rubriqueId;\n internRubriqueFilter.value.splice(newValue.index, 1, item);\n updateInternRubriqueFilter();\n}\nfunction updateRubriquage(newValue: { rubriquageId: number; index: number }): void {\n const item = internRubriqueFilter.value[newValue.index];\n item.rubriquageId = newValue.rubriquageId;\n internRubriqueFilter.value.splice(newValue.index, 1, item);\n updateInternRubriqueFilter();\n}\nasync function fetchTopics(): Promise<void> {\n if (!organisation.value) return;\n needToFetchRubrique.value = false;\n const data = await classicApi.fetchData<Array<Rubriquage>>({\n api: 0,\n path: \"rubriquage/find/\" + organisation.value,\n specialTreatement: true,\n });\n rubriquageData.value = data.filter((element: Rubriquage) => {\n return element.rubriques.length;\n });\n if (0 === rubriquageData.value.length) {\n if (internRubriqueFilter.value.length) {\n internRubriqueFilter.value = [];\n updateInternRubriqueFilter();\n emit(\"warning\");\n }\n return;\n }\n const internRubriqueFilterToUpdate = [];\n for (const filter of internRubriqueFilter.value) {\n const rubriquageExist = rubriquageData.value.find(\n (element) => element.rubriquageId === filter.rubriquageId,\n );\n if (rubriquageExist) {\n internRubriqueFilterToUpdate.push(filter);\n }\n }\n if (\n internRubriqueFilterToUpdate.length !== internRubriqueFilter.value.length\n ) {\n internRubriqueFilter.value = internRubriqueFilterToUpdate;\n updateInternRubriqueFilter();\n emit(\"warning\");\n }\n}\n</script>\n","<template>\n <div\n v-if=\"organisation && rubriquageData\"\n class=\"d-flex mt-3 align-items-center\"\n >\n <ClassicCheckbox\n v-model:text-init=\"isRubriquage\"\n class=\"flex-shrink-0\"\n id-checkbox=\"search-rubriquage-checkbox\"\n :label=\"t('By topic')\"\n />\n <div v-if=\"isRubriquage\" class=\"d-flex ms-1 flex-column flex-grow-1\">\n <RubriqueChoice\n v-for=\"(filter, index) in internRubriqueFilter\"\n :key=\"index\"\n :index=\"index\"\n :rubriquage-display=\"getRubriquage(index)\"\n :rubrique-id-selected=\"filter.rubriqueId\"\n :rubriquage-id-selected=\"filter.rubriquageId\"\n :no-deselect=\"true\"\n @update-rubrique=\"updateRubrique\"\n @update-rubriquage=\"updateRubriquage\"\n @delete-rubrique-choice=\"deleteRubriqueChoice(index)\"\n />\n <button\n v-if=\"availableRubriquage.length\"\n class=\"btn mt-2\"\n @click=\"addFilter\"\n >\n {{ t(\"Add a sort criterion by topic\") }}\n </button>\n </div>\n </div>\n</template>\n\n<script setup lang=\"ts\">\nimport { useRubriquesFilterParam } from \"../../composable/route/useRubriquesFilterParam\";\nimport classicApi from \"../../../api/classicApi\";\nimport ClassicCheckbox from \"../../form/ClassicCheckbox.vue\";\nimport { Rubriquage } from \"@/stores/class/rubrique/rubriquage\";\nimport { RubriquageFilter } from \"@/stores/class/rubrique/rubriquageFilter\";\nimport { useFilterStore } from \"../../../stores/FilterStore\";\nimport { defineAsyncComponent, ref, Ref, computed, watch, onBeforeMount } from \"vue\";\nimport { useI18n } from \"vue-i18n\";\nconst RubriqueChoice = defineAsyncComponent(\n () => import(\"./RubriqueChoice.vue\"),\n);\n\n//Props \nconst props = defineProps({\n organisationId: { default: undefined, type: String },\n rubriqueFilter: {\n default: () => [],\n type: Array as () => Array<RubriquageFilter>,\n },\n})\n\n//Emits\nconst emit = defineEmits([\"update:rubriqueFilter\", \"warning\"]);\n\n//Data \nconst isRubriquage = ref(false);\nconst internRubriqueFilter: Ref<Array<RubriquageFilter>> = ref([]);\nconst rubriquageData: Ref<Array<Rubriquage>> = ref([]);\nconst needToFetchRubrique = ref(false);\n\n//Composables\nconst { t } = useI18n();\nconst { stringifyRubriquesFilter } = useRubriquesFilterParam();\nconst filterStore = useFilterStore();\n\n//Computed\nconst organisation = computed(() => props.organisationId ? props.organisationId : filterStore.filterOrgaId);\nconst availableRubriquage = computed(() => getAvailableRubriquage(internRubriqueFilter.value));\n\n\n//Watch\nwatch(organisation, () => {\n if (isRubriquage.value) {\n fetchTopics();\n } else {\n needToFetchRubrique.value = true;\n }\n});\nwatch(()=>props.rubriqueFilter, () => {\n isRubriquage.value = 0 !== props.rubriqueFilter?.length;\n if (\n props.rubriqueFilter &&\n stringifyRubriquesFilter(internRubriqueFilter.value) !==\n stringifyRubriquesFilter(props.rubriqueFilter)\n ) {\n internRubriqueFilter.value = props.rubriqueFilter;\n }\n}, {deep: true,immediate: true});\nwatch(isRubriquage, () => {\n if (needToFetchRubrique.value) {\n fetchTopics();\n }\n if (isRubriquage.value && 0 === internRubriqueFilter.value.length) {\n addFilter();\n }\n const value = isRubriquage.value ? internRubriqueFilter.value : [];\n if (\n stringifyRubriquesFilter(value) !==\n stringifyRubriquesFilter(props.rubriqueFilter)\n ) {\n emit(\"update:rubriqueFilter\", value);\n }\n});\n\n\nonBeforeMount(()=>fetchTopics())\n\n//Methods\nfunction updateInternRubriqueFilter() {\n if (isRubriquage.value) {\n emit(\"update:rubriqueFilter\", internRubriqueFilter.value);\n } else {\n isRubriquage.value = true;\n }\n}\nfunction addFilter(): void {\n if (availableRubriquage.value?.[0].rubriquageId) {\n internRubriqueFilter.value.push({\n rubriquageId: availableRubriquage.value[0].rubriquageId,\n rubriqueId: 0,\n nameRubriquage: rubriquageData.value[0].title,\n nameRubrique: \"\",\n });\n updateInternRubriqueFilter();\n }\n}\nfunction deleteRubriqueChoice(index: number): void {\n internRubriqueFilter.value.splice(index, 1);\n updateInternRubriqueFilter();\n}\nfunction getAvailableRubriquage(\n filterRubrique: Array<RubriquageFilter>,\n): Array<Rubriquage> {\n if (filterRubrique.length) {\n const rubriquageIdToNotShow = filterRubrique.map((a) => a.rubriquageId);\n return rubriquageData.value.filter((element) => {\n if (element.rubriquageId) {\n return !rubriquageIdToNotShow.includes(element.rubriquageId);\n }\n });\n }\n return rubriquageData.value;\n}\nfunction getRubriquage(index: number) {\n const elementToNotShow = Array.from(internRubriqueFilter.value);\n elementToNotShow.splice(index, 1);\n return getAvailableRubriquage(elementToNotShow);\n}\nfunction updateRubrique(newValue: { rubriqueId: number; index: number }): void {\n const item = internRubriqueFilter.value[newValue.index];\n item.rubriqueId = newValue.rubriqueId;\n internRubriqueFilter.value.splice(newValue.index, 1, item);\n updateInternRubriqueFilter();\n}\nfunction updateRubriquage(newValue: { rubriquageId: number; index: number }): void {\n const item = internRubriqueFilter.value[newValue.index];\n item.rubriquageId = newValue.rubriquageId;\n internRubriqueFilter.value.splice(newValue.index, 1, item);\n updateInternRubriqueFilter();\n}\nasync function fetchTopics(): Promise<void> {\n if (!organisation.value) return;\n needToFetchRubrique.value = false;\n const data = await classicApi.fetchData<Array<Rubriquage>>({\n api: 0,\n path: \"rubriquage/find/\" + organisation.value,\n specialTreatement: true,\n });\n rubriquageData.value = data.filter((element: Rubriquage) => {\n return element.rubriques.length;\n });\n if (0 === rubriquageData.value.length) {\n if (internRubriqueFilter.value.length) {\n internRubriqueFilter.value = [];\n updateInternRubriqueFilter();\n emit(\"warning\");\n }\n return;\n }\n const internRubriqueFilterToUpdate = [];\n for (const filter of internRubriqueFilter.value) {\n const rubriquageExist = rubriquageData.value.find(\n (element) => element.rubriquageId === filter.rubriquageId,\n );\n if (rubriquageExist) {\n internRubriqueFilterToUpdate.push(filter);\n }\n }\n if (\n internRubriqueFilterToUpdate.length !== internRubriqueFilter.value.length\n ) {\n internRubriqueFilter.value = internRubriqueFilterToUpdate;\n updateInternRubriqueFilter();\n emit(\"warning\");\n }\n}\n</script>\n"],"mappings":"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"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"RubriqueFilter-C7lAoJNq.mjs","names":[],"sources":["../src/components/display/filter/RubriqueFilter.vue","../src/components/display/filter/RubriqueFilter.vue"],"sourcesContent":["<template>\n <div\n v-if=\"organisation && rubriquageData\"\n class=\"d-flex mt-3 align-items-center\"\n >\n <ClassicCheckbox\n v-model:text-init=\"isRubriquage\"\n class=\"flex-shrink-0\"\n id-checkbox=\"search-rubriquage-checkbox\"\n :label=\"t('By topic')\"\n />\n <div v-if=\"isRubriquage\" class=\"d-flex ms-1 flex-column flex-grow-1\">\n <RubriqueChoice\n v-for=\"(filter, index) in internRubriqueFilter\"\n :key=\"index\"\n :index=\"index\"\n :rubriquage-display=\"getRubriquage(index)\"\n :rubrique-id-selected=\"filter.rubriqueId\"\n :rubriquage-id-selected=\"filter.rubriquageId\"\n :no-deselect=\"true\"\n @update-rubrique=\"updateRubrique\"\n @update-rubriquage=\"updateRubriquage\"\n @delete-rubrique-choice=\"deleteRubriqueChoice(index)\"\n />\n <button\n v-if=\"availableRubriquage.length\"\n class=\"btn mt-2\"\n @click=\"addFilter\"\n >\n {{ t(\"Add a sort criterion by topic\") }}\n </button>\n </div>\n </div>\n</template>\n\n<script setup lang=\"ts\">\nimport { useRubriquesFilterParam } from \"../../composable/route/useRubriquesFilterParam\";\nimport classicApi from \"../../../api/classicApi\";\nimport ClassicCheckbox from \"../../form/ClassicCheckbox.vue\";\nimport { Rubriquage } from \"@/stores/class/rubrique/rubriquage\";\nimport { RubriquageFilter } from \"@/stores/class/rubrique/rubriquageFilter\";\nimport { useFilterStore } from \"../../../stores/FilterStore\";\nimport { defineAsyncComponent, ref, Ref, computed, watch, onBeforeMount } from \"vue\";\nimport { useI18n } from \"vue-i18n\";\nconst RubriqueChoice = defineAsyncComponent(\n () => import(\"./RubriqueChoice.vue\"),\n);\n\n//Props \nconst props = defineProps({\n organisationId: { default: undefined, type: String },\n rubriqueFilter: {\n default: () => [],\n type: Array as () => Array<RubriquageFilter>,\n },\n})\n\n//Emits\nconst emit = defineEmits([\"update:rubriqueFilter\", \"warning\"]);\n\n//Data \nconst isRubriquage = ref(false);\nconst internRubriqueFilter: Ref<Array<RubriquageFilter>> = ref([]);\nconst rubriquageData: Ref<Array<Rubriquage>> = ref([]);\nconst needToFetchRubrique = ref(false);\n\n//Composables\nconst { t } = useI18n();\nconst { stringifyRubriquesFilter } = useRubriquesFilterParam();\nconst filterStore = useFilterStore();\n\n//Computed\nconst organisation = computed(() => props.organisationId ? props.organisationId : filterStore.filterOrgaId);\nconst availableRubriquage = computed(() => getAvailableRubriquage(internRubriqueFilter.value));\n\n\n//Watch\nwatch(organisation, () => {\n if (isRubriquage.value) {\n fetchTopics();\n } else {\n needToFetchRubrique.value = true;\n }\n});\nwatch(()=>props.rubriqueFilter, () => {\n isRubriquage.value = 0 !== props.rubriqueFilter?.length;\n if (\n props.rubriqueFilter &&\n stringifyRubriquesFilter(internRubriqueFilter.value) !==\n stringifyRubriquesFilter(props.rubriqueFilter)\n ) {\n internRubriqueFilter.value = props.rubriqueFilter;\n }\n}, {deep: true,immediate: true});\nwatch(isRubriquage, () => {\n if (needToFetchRubrique.value) {\n fetchTopics();\n }\n if (isRubriquage.value && 0 === internRubriqueFilter.value.length) {\n addFilter();\n }\n const value = isRubriquage.value ? internRubriqueFilter.value : [];\n if (\n stringifyRubriquesFilter(value) !==\n stringifyRubriquesFilter(props.rubriqueFilter)\n ) {\n emit(\"update:rubriqueFilter\", value);\n }\n});\n\n\nonBeforeMount(()=>fetchTopics())\n\n//Methods\nfunction updateInternRubriqueFilter() {\n if (isRubriquage.value) {\n emit(\"update:rubriqueFilter\", internRubriqueFilter.value);\n } else {\n isRubriquage.value = true;\n }\n}\nfunction addFilter(): void {\n if (availableRubriquage.value?.[0].rubriquageId) {\n internRubriqueFilter.value.push({\n rubriquageId: availableRubriquage.value[0].rubriquageId,\n rubriqueId: 0,\n nameRubriquage: rubriquageData.value[0].title,\n nameRubrique: \"\",\n });\n updateInternRubriqueFilter();\n }\n}\nfunction deleteRubriqueChoice(index: number): void {\n internRubriqueFilter.value.splice(index, 1);\n updateInternRubriqueFilter();\n}\nfunction getAvailableRubriquage(\n filterRubrique: Array<RubriquageFilter>,\n): Array<Rubriquage> {\n if (filterRubrique.length) {\n const rubriquageIdToNotShow = filterRubrique.map((a) => a.rubriquageId);\n return rubriquageData.value.filter((element) => {\n if (element.rubriquageId) {\n return !rubriquageIdToNotShow.includes(element.rubriquageId);\n }\n });\n }\n return rubriquageData.value;\n}\nfunction getRubriquage(index: number) {\n const elementToNotShow = Array.from(internRubriqueFilter.value);\n elementToNotShow.splice(index, 1);\n return getAvailableRubriquage(elementToNotShow);\n}\nfunction updateRubrique(newValue: { rubriqueId: number; index: number }): void {\n const item = internRubriqueFilter.value[newValue.index];\n item.rubriqueId = newValue.rubriqueId;\n internRubriqueFilter.value.splice(newValue.index, 1, item);\n updateInternRubriqueFilter();\n}\nfunction updateRubriquage(newValue: { rubriquageId: number; index: number }): void {\n const item = internRubriqueFilter.value[newValue.index];\n item.rubriquageId = newValue.rubriquageId;\n internRubriqueFilter.value.splice(newValue.index, 1, item);\n updateInternRubriqueFilter();\n}\nasync function fetchTopics(): Promise<void> {\n if (!organisation.value) return;\n needToFetchRubrique.value = false;\n const data = await classicApi.fetchData<Array<Rubriquage>>({\n api: 0,\n path: \"rubriquage/find/\" + organisation.value,\n specialTreatement: true,\n });\n rubriquageData.value = data.filter((element: Rubriquage) => {\n return element.rubriques.length;\n });\n if (0 === rubriquageData.value.length) {\n if (internRubriqueFilter.value.length) {\n internRubriqueFilter.value = [];\n updateInternRubriqueFilter();\n emit(\"warning\");\n }\n return;\n }\n const internRubriqueFilterToUpdate = [];\n for (const filter of internRubriqueFilter.value) {\n const rubriquageExist = rubriquageData.value.find(\n (element) => element.rubriquageId === filter.rubriquageId,\n );\n if (rubriquageExist) {\n internRubriqueFilterToUpdate.push(filter);\n }\n }\n if (\n internRubriqueFilterToUpdate.length !== internRubriqueFilter.value.length\n ) {\n internRubriqueFilter.value = internRubriqueFilterToUpdate;\n updateInternRubriqueFilter();\n emit(\"warning\");\n }\n}\n</script>\n","<template>\n <div\n v-if=\"organisation && rubriquageData\"\n class=\"d-flex mt-3 align-items-center\"\n >\n <ClassicCheckbox\n v-model:text-init=\"isRubriquage\"\n class=\"flex-shrink-0\"\n id-checkbox=\"search-rubriquage-checkbox\"\n :label=\"t('By topic')\"\n />\n <div v-if=\"isRubriquage\" class=\"d-flex ms-1 flex-column flex-grow-1\">\n <RubriqueChoice\n v-for=\"(filter, index) in internRubriqueFilter\"\n :key=\"index\"\n :index=\"index\"\n :rubriquage-display=\"getRubriquage(index)\"\n :rubrique-id-selected=\"filter.rubriqueId\"\n :rubriquage-id-selected=\"filter.rubriquageId\"\n :no-deselect=\"true\"\n @update-rubrique=\"updateRubrique\"\n @update-rubriquage=\"updateRubriquage\"\n @delete-rubrique-choice=\"deleteRubriqueChoice(index)\"\n />\n <button\n v-if=\"availableRubriquage.length\"\n class=\"btn mt-2\"\n @click=\"addFilter\"\n >\n {{ t(\"Add a sort criterion by topic\") }}\n </button>\n </div>\n </div>\n</template>\n\n<script setup lang=\"ts\">\nimport { useRubriquesFilterParam } from \"../../composable/route/useRubriquesFilterParam\";\nimport classicApi from \"../../../api/classicApi\";\nimport ClassicCheckbox from \"../../form/ClassicCheckbox.vue\";\nimport { Rubriquage } from \"@/stores/class/rubrique/rubriquage\";\nimport { RubriquageFilter } from \"@/stores/class/rubrique/rubriquageFilter\";\nimport { useFilterStore } from \"../../../stores/FilterStore\";\nimport { defineAsyncComponent, ref, Ref, computed, watch, onBeforeMount } from \"vue\";\nimport { useI18n } from \"vue-i18n\";\nconst RubriqueChoice = defineAsyncComponent(\n () => import(\"./RubriqueChoice.vue\"),\n);\n\n//Props \nconst props = defineProps({\n organisationId: { default: undefined, type: String },\n rubriqueFilter: {\n default: () => [],\n type: Array as () => Array<RubriquageFilter>,\n },\n})\n\n//Emits\nconst emit = defineEmits([\"update:rubriqueFilter\", \"warning\"]);\n\n//Data \nconst isRubriquage = ref(false);\nconst internRubriqueFilter: Ref<Array<RubriquageFilter>> = ref([]);\nconst rubriquageData: Ref<Array<Rubriquage>> = ref([]);\nconst needToFetchRubrique = ref(false);\n\n//Composables\nconst { t } = useI18n();\nconst { stringifyRubriquesFilter } = useRubriquesFilterParam();\nconst filterStore = useFilterStore();\n\n//Computed\nconst organisation = computed(() => props.organisationId ? props.organisationId : filterStore.filterOrgaId);\nconst availableRubriquage = computed(() => getAvailableRubriquage(internRubriqueFilter.value));\n\n\n//Watch\nwatch(organisation, () => {\n if (isRubriquage.value) {\n fetchTopics();\n } else {\n needToFetchRubrique.value = true;\n }\n});\nwatch(()=>props.rubriqueFilter, () => {\n isRubriquage.value = 0 !== props.rubriqueFilter?.length;\n if (\n props.rubriqueFilter &&\n stringifyRubriquesFilter(internRubriqueFilter.value) !==\n stringifyRubriquesFilter(props.rubriqueFilter)\n ) {\n internRubriqueFilter.value = props.rubriqueFilter;\n }\n}, {deep: true,immediate: true});\nwatch(isRubriquage, () => {\n if (needToFetchRubrique.value) {\n fetchTopics();\n }\n if (isRubriquage.value && 0 === internRubriqueFilter.value.length) {\n addFilter();\n }\n const value = isRubriquage.value ? internRubriqueFilter.value : [];\n if (\n stringifyRubriquesFilter(value) !==\n stringifyRubriquesFilter(props.rubriqueFilter)\n ) {\n emit(\"update:rubriqueFilter\", value);\n }\n});\n\n\nonBeforeMount(()=>fetchTopics())\n\n//Methods\nfunction updateInternRubriqueFilter() {\n if (isRubriquage.value) {\n emit(\"update:rubriqueFilter\", internRubriqueFilter.value);\n } else {\n isRubriquage.value = true;\n }\n}\nfunction addFilter(): void {\n if (availableRubriquage.value?.[0].rubriquageId) {\n internRubriqueFilter.value.push({\n rubriquageId: availableRubriquage.value[0].rubriquageId,\n rubriqueId: 0,\n nameRubriquage: rubriquageData.value[0].title,\n nameRubrique: \"\",\n });\n updateInternRubriqueFilter();\n }\n}\nfunction deleteRubriqueChoice(index: number): void {\n internRubriqueFilter.value.splice(index, 1);\n updateInternRubriqueFilter();\n}\nfunction getAvailableRubriquage(\n filterRubrique: Array<RubriquageFilter>,\n): Array<Rubriquage> {\n if (filterRubrique.length) {\n const rubriquageIdToNotShow = filterRubrique.map((a) => a.rubriquageId);\n return rubriquageData.value.filter((element) => {\n if (element.rubriquageId) {\n return !rubriquageIdToNotShow.includes(element.rubriquageId);\n }\n });\n }\n return rubriquageData.value;\n}\nfunction getRubriquage(index: number) {\n const elementToNotShow = Array.from(internRubriqueFilter.value);\n elementToNotShow.splice(index, 1);\n return getAvailableRubriquage(elementToNotShow);\n}\nfunction updateRubrique(newValue: { rubriqueId: number; index: number }): void {\n const item = internRubriqueFilter.value[newValue.index];\n item.rubriqueId = newValue.rubriqueId;\n internRubriqueFilter.value.splice(newValue.index, 1, item);\n updateInternRubriqueFilter();\n}\nfunction updateRubriquage(newValue: { rubriquageId: number; index: number }): void {\n const item = internRubriqueFilter.value[newValue.index];\n item.rubriquageId = newValue.rubriquageId;\n internRubriqueFilter.value.splice(newValue.index, 1, item);\n updateInternRubriqueFilter();\n}\nasync function fetchTopics(): Promise<void> {\n if (!organisation.value) return;\n needToFetchRubrique.value = false;\n const data = await classicApi.fetchData<Array<Rubriquage>>({\n api: 0,\n path: \"rubriquage/find/\" + organisation.value,\n specialTreatement: true,\n });\n rubriquageData.value = data.filter((element: Rubriquage) => {\n return element.rubriques.length;\n });\n if (0 === rubriquageData.value.length) {\n if (internRubriqueFilter.value.length) {\n internRubriqueFilter.value = [];\n updateInternRubriqueFilter();\n emit(\"warning\");\n }\n return;\n }\n const internRubriqueFilterToUpdate = [];\n for (const filter of internRubriqueFilter.value) {\n const rubriquageExist = rubriquageData.value.find(\n (element) => element.rubriquageId === filter.rubriquageId,\n );\n if (rubriquageExist) {\n internRubriqueFilterToUpdate.push(filter);\n }\n }\n if (\n internRubriqueFilterToUpdate.length !== internRubriqueFilter.value.length\n ) {\n internRubriqueFilter.value = internRubriqueFilterToUpdate;\n updateInternRubriqueFilter();\n emit(\"warning\");\n }\n}\n</script>\n"],"mappings":"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"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"RubriqueFilter-CKF-seUZ.mjs","names":[],"sources":["../src/components/display/filter/RubriqueFilter.vue","../src/components/display/filter/RubriqueFilter.vue"],"sourcesContent":["<template>\n <div\n v-if=\"organisation && rubriquageData\"\n class=\"d-flex mt-3 align-items-center\"\n >\n <ClassicCheckbox\n v-model:text-init=\"isRubriquage\"\n class=\"flex-shrink-0\"\n id-checkbox=\"search-rubriquage-checkbox\"\n :label=\"t('By topic')\"\n />\n <div v-if=\"isRubriquage\" class=\"d-flex ms-1 flex-column flex-grow-1\">\n <RubriqueChoice\n v-for=\"(filter, index) in internRubriqueFilter\"\n :key=\"index\"\n :index=\"index\"\n :rubriquage-display=\"getRubriquage(index)\"\n :rubrique-id-selected=\"filter.rubriqueId\"\n :rubriquage-id-selected=\"filter.rubriquageId\"\n :no-deselect=\"true\"\n @update-rubrique=\"updateRubrique\"\n @update-rubriquage=\"updateRubriquage\"\n @delete-rubrique-choice=\"deleteRubriqueChoice(index)\"\n />\n <button\n v-if=\"availableRubriquage.length\"\n class=\"btn mt-2\"\n @click=\"addFilter\"\n >\n {{ t(\"Add a sort criterion by topic\") }}\n </button>\n </div>\n </div>\n</template>\n\n<script setup lang=\"ts\">\nimport { useRubriquesFilterParam } from \"../../composable/route/useRubriquesFilterParam\";\nimport classicApi from \"../../../api/classicApi\";\nimport ClassicCheckbox from \"../../form/ClassicCheckbox.vue\";\nimport { Rubriquage } from \"@/stores/class/rubrique/rubriquage\";\nimport { RubriquageFilter } from \"@/stores/class/rubrique/rubriquageFilter\";\nimport { useFilterStore } from \"../../../stores/FilterStore\";\nimport { defineAsyncComponent, ref, Ref, computed, watch, onBeforeMount } from \"vue\";\nimport { useI18n } from \"vue-i18n\";\nconst RubriqueChoice = defineAsyncComponent(\n () => import(\"./RubriqueChoice.vue\"),\n);\n\n//Props \nconst props = defineProps({\n organisationId: { default: undefined, type: String },\n rubriqueFilter: {\n default: () => [],\n type: Array as () => Array<RubriquageFilter>,\n },\n})\n\n//Emits\nconst emit = defineEmits([\"update:rubriqueFilter\", \"warning\"]);\n\n//Data \nconst isRubriquage = ref(false);\nconst internRubriqueFilter: Ref<Array<RubriquageFilter>> = ref([]);\nconst rubriquageData: Ref<Array<Rubriquage>> = ref([]);\nconst needToFetchRubrique = ref(false);\n\n//Composables\nconst { t } = useI18n();\nconst { stringifyRubriquesFilter } = useRubriquesFilterParam();\nconst filterStore = useFilterStore();\n\n//Computed\nconst organisation = computed(() => props.organisationId ? props.organisationId : filterStore.filterOrgaId);\nconst availableRubriquage = computed(() => getAvailableRubriquage(internRubriqueFilter.value));\n\n\n//Watch\nwatch(organisation, () => {\n if (isRubriquage.value) {\n fetchTopics();\n } else {\n needToFetchRubrique.value = true;\n }\n});\nwatch(()=>props.rubriqueFilter, () => {\n isRubriquage.value = 0 !== props.rubriqueFilter?.length;\n if (\n props.rubriqueFilter &&\n stringifyRubriquesFilter(internRubriqueFilter.value) !==\n stringifyRubriquesFilter(props.rubriqueFilter)\n ) {\n internRubriqueFilter.value = props.rubriqueFilter;\n }\n}, {deep: true,immediate: true});\nwatch(isRubriquage, () => {\n if (needToFetchRubrique.value) {\n fetchTopics();\n }\n if (isRubriquage.value && 0 === internRubriqueFilter.value.length) {\n addFilter();\n }\n const value = isRubriquage.value ? internRubriqueFilter.value : [];\n if (\n stringifyRubriquesFilter(value) !==\n stringifyRubriquesFilter(props.rubriqueFilter)\n ) {\n emit(\"update:rubriqueFilter\", value);\n }\n});\n\n\nonBeforeMount(()=>fetchTopics())\n\n//Methods\nfunction updateInternRubriqueFilter() {\n if (isRubriquage.value) {\n emit(\"update:rubriqueFilter\", internRubriqueFilter.value);\n } else {\n isRubriquage.value = true;\n }\n}\nfunction addFilter(): void {\n if (availableRubriquage.value?.[0].rubriquageId) {\n internRubriqueFilter.value.push({\n rubriquageId: availableRubriquage.value[0].rubriquageId,\n rubriqueId: 0,\n nameRubriquage: rubriquageData.value[0].title,\n nameRubrique: \"\",\n });\n updateInternRubriqueFilter();\n }\n}\nfunction deleteRubriqueChoice(index: number): void {\n internRubriqueFilter.value.splice(index, 1);\n updateInternRubriqueFilter();\n}\nfunction getAvailableRubriquage(\n filterRubrique: Array<RubriquageFilter>,\n): Array<Rubriquage> {\n if (filterRubrique.length) {\n const rubriquageIdToNotShow = filterRubrique.map((a) => a.rubriquageId);\n return rubriquageData.value.filter((element) => {\n if (element.rubriquageId) {\n return !rubriquageIdToNotShow.includes(element.rubriquageId);\n }\n });\n }\n return rubriquageData.value;\n}\nfunction getRubriquage(index: number) {\n const elementToNotShow = Array.from(internRubriqueFilter.value);\n elementToNotShow.splice(index, 1);\n return getAvailableRubriquage(elementToNotShow);\n}\nfunction updateRubrique(newValue: { rubriqueId: number; index: number }): void {\n const item = internRubriqueFilter.value[newValue.index];\n item.rubriqueId = newValue.rubriqueId;\n internRubriqueFilter.value.splice(newValue.index, 1, item);\n updateInternRubriqueFilter();\n}\nfunction updateRubriquage(newValue: { rubriquageId: number; index: number }): void {\n const item = internRubriqueFilter.value[newValue.index];\n item.rubriquageId = newValue.rubriquageId;\n internRubriqueFilter.value.splice(newValue.index, 1, item);\n updateInternRubriqueFilter();\n}\nasync function fetchTopics(): Promise<void> {\n if (!organisation.value) return;\n needToFetchRubrique.value = false;\n const data = await classicApi.fetchData<Array<Rubriquage>>({\n api: 0,\n path: \"rubriquage/find/\" + organisation.value,\n specialTreatement: true,\n });\n rubriquageData.value = data.filter((element: Rubriquage) => {\n return element.rubriques.length;\n });\n if (0 === rubriquageData.value.length) {\n if (internRubriqueFilter.value.length) {\n internRubriqueFilter.value = [];\n updateInternRubriqueFilter();\n emit(\"warning\");\n }\n return;\n }\n const internRubriqueFilterToUpdate = [];\n for (const filter of internRubriqueFilter.value) {\n const rubriquageExist = rubriquageData.value.find(\n (element) => element.rubriquageId === filter.rubriquageId,\n );\n if (rubriquageExist) {\n internRubriqueFilterToUpdate.push(filter);\n }\n }\n if (\n internRubriqueFilterToUpdate.length !== internRubriqueFilter.value.length\n ) {\n internRubriqueFilter.value = internRubriqueFilterToUpdate;\n updateInternRubriqueFilter();\n emit(\"warning\");\n }\n}\n</script>\n","<template>\n <div\n v-if=\"organisation && rubriquageData\"\n class=\"d-flex mt-3 align-items-center\"\n >\n <ClassicCheckbox\n v-model:text-init=\"isRubriquage\"\n class=\"flex-shrink-0\"\n id-checkbox=\"search-rubriquage-checkbox\"\n :label=\"t('By topic')\"\n />\n <div v-if=\"isRubriquage\" class=\"d-flex ms-1 flex-column flex-grow-1\">\n <RubriqueChoice\n v-for=\"(filter, index) in internRubriqueFilter\"\n :key=\"index\"\n :index=\"index\"\n :rubriquage-display=\"getRubriquage(index)\"\n :rubrique-id-selected=\"filter.rubriqueId\"\n :rubriquage-id-selected=\"filter.rubriquageId\"\n :no-deselect=\"true\"\n @update-rubrique=\"updateRubrique\"\n @update-rubriquage=\"updateRubriquage\"\n @delete-rubrique-choice=\"deleteRubriqueChoice(index)\"\n />\n <button\n v-if=\"availableRubriquage.length\"\n class=\"btn mt-2\"\n @click=\"addFilter\"\n >\n {{ t(\"Add a sort criterion by topic\") }}\n </button>\n </div>\n </div>\n</template>\n\n<script setup lang=\"ts\">\nimport { useRubriquesFilterParam } from \"../../composable/route/useRubriquesFilterParam\";\nimport classicApi from \"../../../api/classicApi\";\nimport ClassicCheckbox from \"../../form/ClassicCheckbox.vue\";\nimport { Rubriquage } from \"@/stores/class/rubrique/rubriquage\";\nimport { RubriquageFilter } from \"@/stores/class/rubrique/rubriquageFilter\";\nimport { useFilterStore } from \"../../../stores/FilterStore\";\nimport { defineAsyncComponent, ref, Ref, computed, watch, onBeforeMount } from \"vue\";\nimport { useI18n } from \"vue-i18n\";\nconst RubriqueChoice = defineAsyncComponent(\n () => import(\"./RubriqueChoice.vue\"),\n);\n\n//Props \nconst props = defineProps({\n organisationId: { default: undefined, type: String },\n rubriqueFilter: {\n default: () => [],\n type: Array as () => Array<RubriquageFilter>,\n },\n})\n\n//Emits\nconst emit = defineEmits([\"update:rubriqueFilter\", \"warning\"]);\n\n//Data \nconst isRubriquage = ref(false);\nconst internRubriqueFilter: Ref<Array<RubriquageFilter>> = ref([]);\nconst rubriquageData: Ref<Array<Rubriquage>> = ref([]);\nconst needToFetchRubrique = ref(false);\n\n//Composables\nconst { t } = useI18n();\nconst { stringifyRubriquesFilter } = useRubriquesFilterParam();\nconst filterStore = useFilterStore();\n\n//Computed\nconst organisation = computed(() => props.organisationId ? props.organisationId : filterStore.filterOrgaId);\nconst availableRubriquage = computed(() => getAvailableRubriquage(internRubriqueFilter.value));\n\n\n//Watch\nwatch(organisation, () => {\n if (isRubriquage.value) {\n fetchTopics();\n } else {\n needToFetchRubrique.value = true;\n }\n});\nwatch(()=>props.rubriqueFilter, () => {\n isRubriquage.value = 0 !== props.rubriqueFilter?.length;\n if (\n props.rubriqueFilter &&\n stringifyRubriquesFilter(internRubriqueFilter.value) !==\n stringifyRubriquesFilter(props.rubriqueFilter)\n ) {\n internRubriqueFilter.value = props.rubriqueFilter;\n }\n}, {deep: true,immediate: true});\nwatch(isRubriquage, () => {\n if (needToFetchRubrique.value) {\n fetchTopics();\n }\n if (isRubriquage.value && 0 === internRubriqueFilter.value.length) {\n addFilter();\n }\n const value = isRubriquage.value ? internRubriqueFilter.value : [];\n if (\n stringifyRubriquesFilter(value) !==\n stringifyRubriquesFilter(props.rubriqueFilter)\n ) {\n emit(\"update:rubriqueFilter\", value);\n }\n});\n\n\nonBeforeMount(()=>fetchTopics())\n\n//Methods\nfunction updateInternRubriqueFilter() {\n if (isRubriquage.value) {\n emit(\"update:rubriqueFilter\", internRubriqueFilter.value);\n } else {\n isRubriquage.value = true;\n }\n}\nfunction addFilter(): void {\n if (availableRubriquage.value?.[0].rubriquageId) {\n internRubriqueFilter.value.push({\n rubriquageId: availableRubriquage.value[0].rubriquageId,\n rubriqueId: 0,\n nameRubriquage: rubriquageData.value[0].title,\n nameRubrique: \"\",\n });\n updateInternRubriqueFilter();\n }\n}\nfunction deleteRubriqueChoice(index: number): void {\n internRubriqueFilter.value.splice(index, 1);\n updateInternRubriqueFilter();\n}\nfunction getAvailableRubriquage(\n filterRubrique: Array<RubriquageFilter>,\n): Array<Rubriquage> {\n if (filterRubrique.length) {\n const rubriquageIdToNotShow = filterRubrique.map((a) => a.rubriquageId);\n return rubriquageData.value.filter((element) => {\n if (element.rubriquageId) {\n return !rubriquageIdToNotShow.includes(element.rubriquageId);\n }\n });\n }\n return rubriquageData.value;\n}\nfunction getRubriquage(index: number) {\n const elementToNotShow = Array.from(internRubriqueFilter.value);\n elementToNotShow.splice(index, 1);\n return getAvailableRubriquage(elementToNotShow);\n}\nfunction updateRubrique(newValue: { rubriqueId: number; index: number }): void {\n const item = internRubriqueFilter.value[newValue.index];\n item.rubriqueId = newValue.rubriqueId;\n internRubriqueFilter.value.splice(newValue.index, 1, item);\n updateInternRubriqueFilter();\n}\nfunction updateRubriquage(newValue: { rubriquageId: number; index: number }): void {\n const item = internRubriqueFilter.value[newValue.index];\n item.rubriquageId = newValue.rubriquageId;\n internRubriqueFilter.value.splice(newValue.index, 1, item);\n updateInternRubriqueFilter();\n}\nasync function fetchTopics(): Promise<void> {\n if (!organisation.value) return;\n needToFetchRubrique.value = false;\n const data = await classicApi.fetchData<Array<Rubriquage>>({\n api: 0,\n path: \"rubriquage/find/\" + organisation.value,\n specialTreatement: true,\n });\n rubriquageData.value = data.filter((element: Rubriquage) => {\n return element.rubriques.length;\n });\n if (0 === rubriquageData.value.length) {\n if (internRubriqueFilter.value.length) {\n internRubriqueFilter.value = [];\n updateInternRubriqueFilter();\n emit(\"warning\");\n }\n return;\n }\n const internRubriqueFilterToUpdate = [];\n for (const filter of internRubriqueFilter.value) {\n const rubriquageExist = rubriquageData.value.find(\n (element) => element.rubriquageId === filter.rubriquageId,\n );\n if (rubriquageExist) {\n internRubriqueFilterToUpdate.push(filter);\n }\n }\n if (\n internRubriqueFilterToUpdate.length !== internRubriqueFilter.value.length\n ) {\n internRubriqueFilter.value = internRubriqueFilterToUpdate;\n updateInternRubriqueFilter();\n emit(\"warning\");\n }\n}\n</script>\n"],"mappings":"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"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"RubriqueFilter-oDd4AytG.mjs","names":[],"sources":["../src/components/display/filter/RubriqueFilter.vue","../src/components/display/filter/RubriqueFilter.vue"],"sourcesContent":["<template>\n <div\n v-if=\"organisation && rubriquageData\"\n class=\"d-flex mt-3 align-items-center\"\n >\n <ClassicCheckbox\n v-model:text-init=\"isRubriquage\"\n class=\"flex-shrink-0\"\n id-checkbox=\"search-rubriquage-checkbox\"\n :label=\"t('By topic')\"\n />\n <div v-if=\"isRubriquage\" class=\"d-flex ms-1 flex-column flex-grow-1\">\n <RubriqueChoice\n v-for=\"(filter, index) in internRubriqueFilter\"\n :key=\"index\"\n :index=\"index\"\n :rubriquage-display=\"getRubriquage(index)\"\n :rubrique-id-selected=\"filter.rubriqueId\"\n :rubriquage-id-selected=\"filter.rubriquageId\"\n :no-deselect=\"true\"\n @update-rubrique=\"updateRubrique\"\n @update-rubriquage=\"updateRubriquage\"\n @delete-rubrique-choice=\"deleteRubriqueChoice(index)\"\n />\n <button\n v-if=\"availableRubriquage.length\"\n class=\"btn mt-2\"\n @click=\"addFilter\"\n >\n {{ t(\"Add a sort criterion by topic\") }}\n </button>\n </div>\n </div>\n</template>\n\n<script setup lang=\"ts\">\nimport { useRubriquesFilterParam } from \"../../composable/route/useRubriquesFilterParam\";\nimport classicApi from \"../../../api/classicApi\";\nimport ClassicCheckbox from \"../../form/ClassicCheckbox.vue\";\nimport { Rubriquage } from \"@/stores/class/rubrique/rubriquage\";\nimport { RubriquageFilter } from \"@/stores/class/rubrique/rubriquageFilter\";\nimport { useFilterStore } from \"../../../stores/FilterStore\";\nimport { defineAsyncComponent, ref, Ref, computed, watch, onBeforeMount } from \"vue\";\nimport { useI18n } from \"vue-i18n\";\nconst RubriqueChoice = defineAsyncComponent(\n () => import(\"./RubriqueChoice.vue\"),\n);\n\n//Props \nconst props = defineProps({\n organisationId: { default: undefined, type: String },\n rubriqueFilter: {\n default: () => [],\n type: Array as () => Array<RubriquageFilter>,\n },\n})\n\n//Emits\nconst emit = defineEmits([\"update:rubriqueFilter\", \"warning\"]);\n\n//Data \nconst isRubriquage = ref(false);\nconst internRubriqueFilter: Ref<Array<RubriquageFilter>> = ref([]);\nconst rubriquageData: Ref<Array<Rubriquage>> = ref([]);\nconst needToFetchRubrique = ref(false);\n\n//Composables\nconst { t } = useI18n();\nconst { stringifyRubriquesFilter } = useRubriquesFilterParam();\nconst filterStore = useFilterStore();\n\n//Computed\nconst organisation = computed(() => props.organisationId ? props.organisationId : filterStore.filterOrgaId);\nconst availableRubriquage = computed(() => getAvailableRubriquage(internRubriqueFilter.value));\n\n\n//Watch\nwatch(organisation, () => {\n if (isRubriquage.value) {\n fetchTopics();\n } else {\n needToFetchRubrique.value = true;\n }\n});\nwatch(()=>props.rubriqueFilter, () => {\n isRubriquage.value = 0 !== props.rubriqueFilter?.length;\n if (\n props.rubriqueFilter &&\n stringifyRubriquesFilter(internRubriqueFilter.value) !==\n stringifyRubriquesFilter(props.rubriqueFilter)\n ) {\n internRubriqueFilter.value = props.rubriqueFilter;\n }\n}, {deep: true,immediate: true});\nwatch(isRubriquage, () => {\n if (needToFetchRubrique.value) {\n fetchTopics();\n }\n if (isRubriquage.value && 0 === internRubriqueFilter.value.length) {\n addFilter();\n }\n const value = isRubriquage.value ? internRubriqueFilter.value : [];\n if (\n stringifyRubriquesFilter(value) !==\n stringifyRubriquesFilter(props.rubriqueFilter)\n ) {\n emit(\"update:rubriqueFilter\", value);\n }\n});\n\n\nonBeforeMount(()=>fetchTopics())\n\n//Methods\nfunction updateInternRubriqueFilter() {\n if (isRubriquage.value) {\n emit(\"update:rubriqueFilter\", internRubriqueFilter.value);\n } else {\n isRubriquage.value = true;\n }\n}\nfunction addFilter(): void {\n if (availableRubriquage.value?.[0].rubriquageId) {\n internRubriqueFilter.value.push({\n rubriquageId: availableRubriquage.value[0].rubriquageId,\n rubriqueId: 0,\n nameRubriquage: rubriquageData.value[0].title,\n nameRubrique: \"\",\n });\n updateInternRubriqueFilter();\n }\n}\nfunction deleteRubriqueChoice(index: number): void {\n internRubriqueFilter.value.splice(index, 1);\n updateInternRubriqueFilter();\n}\nfunction getAvailableRubriquage(\n filterRubrique: Array<RubriquageFilter>,\n): Array<Rubriquage> {\n if (filterRubrique.length) {\n const rubriquageIdToNotShow = filterRubrique.map((a) => a.rubriquageId);\n return rubriquageData.value.filter((element) => {\n if (element.rubriquageId) {\n return !rubriquageIdToNotShow.includes(element.rubriquageId);\n }\n });\n }\n return rubriquageData.value;\n}\nfunction getRubriquage(index: number) {\n const elementToNotShow = Array.from(internRubriqueFilter.value);\n elementToNotShow.splice(index, 1);\n return getAvailableRubriquage(elementToNotShow);\n}\nfunction updateRubrique(newValue: { rubriqueId: number; index: number }): void {\n const item = internRubriqueFilter.value[newValue.index];\n item.rubriqueId = newValue.rubriqueId;\n internRubriqueFilter.value.splice(newValue.index, 1, item);\n updateInternRubriqueFilter();\n}\nfunction updateRubriquage(newValue: { rubriquageId: number; index: number }): void {\n const item = internRubriqueFilter.value[newValue.index];\n item.rubriquageId = newValue.rubriquageId;\n internRubriqueFilter.value.splice(newValue.index, 1, item);\n updateInternRubriqueFilter();\n}\nasync function fetchTopics(): Promise<void> {\n if (!organisation.value) return;\n needToFetchRubrique.value = false;\n const data = await classicApi.fetchData<Array<Rubriquage>>({\n api: 0,\n path: \"rubriquage/find/\" + organisation.value,\n specialTreatement: true,\n });\n rubriquageData.value = data.filter((element: Rubriquage) => {\n return element.rubriques.length;\n });\n if (0 === rubriquageData.value.length) {\n if (internRubriqueFilter.value.length) {\n internRubriqueFilter.value = [];\n updateInternRubriqueFilter();\n emit(\"warning\");\n }\n return;\n }\n const internRubriqueFilterToUpdate = [];\n for (const filter of internRubriqueFilter.value) {\n const rubriquageExist = rubriquageData.value.find(\n (element) => element.rubriquageId === filter.rubriquageId,\n );\n if (rubriquageExist) {\n internRubriqueFilterToUpdate.push(filter);\n }\n }\n if (\n internRubriqueFilterToUpdate.length !== internRubriqueFilter.value.length\n ) {\n internRubriqueFilter.value = internRubriqueFilterToUpdate;\n updateInternRubriqueFilter();\n emit(\"warning\");\n }\n}\n</script>\n","<template>\n <div\n v-if=\"organisation && rubriquageData\"\n class=\"d-flex mt-3 align-items-center\"\n >\n <ClassicCheckbox\n v-model:text-init=\"isRubriquage\"\n class=\"flex-shrink-0\"\n id-checkbox=\"search-rubriquage-checkbox\"\n :label=\"t('By topic')\"\n />\n <div v-if=\"isRubriquage\" class=\"d-flex ms-1 flex-column flex-grow-1\">\n <RubriqueChoice\n v-for=\"(filter, index) in internRubriqueFilter\"\n :key=\"index\"\n :index=\"index\"\n :rubriquage-display=\"getRubriquage(index)\"\n :rubrique-id-selected=\"filter.rubriqueId\"\n :rubriquage-id-selected=\"filter.rubriquageId\"\n :no-deselect=\"true\"\n @update-rubrique=\"updateRubrique\"\n @update-rubriquage=\"updateRubriquage\"\n @delete-rubrique-choice=\"deleteRubriqueChoice(index)\"\n />\n <button\n v-if=\"availableRubriquage.length\"\n class=\"btn mt-2\"\n @click=\"addFilter\"\n >\n {{ t(\"Add a sort criterion by topic\") }}\n </button>\n </div>\n </div>\n</template>\n\n<script setup lang=\"ts\">\nimport { useRubriquesFilterParam } from \"../../composable/route/useRubriquesFilterParam\";\nimport classicApi from \"../../../api/classicApi\";\nimport ClassicCheckbox from \"../../form/ClassicCheckbox.vue\";\nimport { Rubriquage } from \"@/stores/class/rubrique/rubriquage\";\nimport { RubriquageFilter } from \"@/stores/class/rubrique/rubriquageFilter\";\nimport { useFilterStore } from \"../../../stores/FilterStore\";\nimport { defineAsyncComponent, ref, Ref, computed, watch, onBeforeMount } from \"vue\";\nimport { useI18n } from \"vue-i18n\";\nconst RubriqueChoice = defineAsyncComponent(\n () => import(\"./RubriqueChoice.vue\"),\n);\n\n//Props \nconst props = defineProps({\n organisationId: { default: undefined, type: String },\n rubriqueFilter: {\n default: () => [],\n type: Array as () => Array<RubriquageFilter>,\n },\n})\n\n//Emits\nconst emit = defineEmits([\"update:rubriqueFilter\", \"warning\"]);\n\n//Data \nconst isRubriquage = ref(false);\nconst internRubriqueFilter: Ref<Array<RubriquageFilter>> = ref([]);\nconst rubriquageData: Ref<Array<Rubriquage>> = ref([]);\nconst needToFetchRubrique = ref(false);\n\n//Composables\nconst { t } = useI18n();\nconst { stringifyRubriquesFilter } = useRubriquesFilterParam();\nconst filterStore = useFilterStore();\n\n//Computed\nconst organisation = computed(() => props.organisationId ? props.organisationId : filterStore.filterOrgaId);\nconst availableRubriquage = computed(() => getAvailableRubriquage(internRubriqueFilter.value));\n\n\n//Watch\nwatch(organisation, () => {\n if (isRubriquage.value) {\n fetchTopics();\n } else {\n needToFetchRubrique.value = true;\n }\n});\nwatch(()=>props.rubriqueFilter, () => {\n isRubriquage.value = 0 !== props.rubriqueFilter?.length;\n if (\n props.rubriqueFilter &&\n stringifyRubriquesFilter(internRubriqueFilter.value) !==\n stringifyRubriquesFilter(props.rubriqueFilter)\n ) {\n internRubriqueFilter.value = props.rubriqueFilter;\n }\n}, {deep: true,immediate: true});\nwatch(isRubriquage, () => {\n if (needToFetchRubrique.value) {\n fetchTopics();\n }\n if (isRubriquage.value && 0 === internRubriqueFilter.value.length) {\n addFilter();\n }\n const value = isRubriquage.value ? internRubriqueFilter.value : [];\n if (\n stringifyRubriquesFilter(value) !==\n stringifyRubriquesFilter(props.rubriqueFilter)\n ) {\n emit(\"update:rubriqueFilter\", value);\n }\n});\n\n\nonBeforeMount(()=>fetchTopics())\n\n//Methods\nfunction updateInternRubriqueFilter() {\n if (isRubriquage.value) {\n emit(\"update:rubriqueFilter\", internRubriqueFilter.value);\n } else {\n isRubriquage.value = true;\n }\n}\nfunction addFilter(): void {\n if (availableRubriquage.value?.[0].rubriquageId) {\n internRubriqueFilter.value.push({\n rubriquageId: availableRubriquage.value[0].rubriquageId,\n rubriqueId: 0,\n nameRubriquage: rubriquageData.value[0].title,\n nameRubrique: \"\",\n });\n updateInternRubriqueFilter();\n }\n}\nfunction deleteRubriqueChoice(index: number): void {\n internRubriqueFilter.value.splice(index, 1);\n updateInternRubriqueFilter();\n}\nfunction getAvailableRubriquage(\n filterRubrique: Array<RubriquageFilter>,\n): Array<Rubriquage> {\n if (filterRubrique.length) {\n const rubriquageIdToNotShow = filterRubrique.map((a) => a.rubriquageId);\n return rubriquageData.value.filter((element) => {\n if (element.rubriquageId) {\n return !rubriquageIdToNotShow.includes(element.rubriquageId);\n }\n });\n }\n return rubriquageData.value;\n}\nfunction getRubriquage(index: number) {\n const elementToNotShow = Array.from(internRubriqueFilter.value);\n elementToNotShow.splice(index, 1);\n return getAvailableRubriquage(elementToNotShow);\n}\nfunction updateRubrique(newValue: { rubriqueId: number; index: number }): void {\n const item = internRubriqueFilter.value[newValue.index];\n item.rubriqueId = newValue.rubriqueId;\n internRubriqueFilter.value.splice(newValue.index, 1, item);\n updateInternRubriqueFilter();\n}\nfunction updateRubriquage(newValue: { rubriquageId: number; index: number }): void {\n const item = internRubriqueFilter.value[newValue.index];\n item.rubriquageId = newValue.rubriquageId;\n internRubriqueFilter.value.splice(newValue.index, 1, item);\n updateInternRubriqueFilter();\n}\nasync function fetchTopics(): Promise<void> {\n if (!organisation.value) return;\n needToFetchRubrique.value = false;\n const data = await classicApi.fetchData<Array<Rubriquage>>({\n api: 0,\n path: \"rubriquage/find/\" + organisation.value,\n specialTreatement: true,\n });\n rubriquageData.value = data.filter((element: Rubriquage) => {\n return element.rubriques.length;\n });\n if (0 === rubriquageData.value.length) {\n if (internRubriqueFilter.value.length) {\n internRubriqueFilter.value = [];\n updateInternRubriqueFilter();\n emit(\"warning\");\n }\n return;\n }\n const internRubriqueFilterToUpdate = [];\n for (const filter of internRubriqueFilter.value) {\n const rubriquageExist = rubriquageData.value.find(\n (element) => element.rubriquageId === filter.rubriquageId,\n );\n if (rubriquageExist) {\n internRubriqueFilterToUpdate.push(filter);\n }\n }\n if (\n internRubriqueFilterToUpdate.length !== internRubriqueFilter.value.length\n ) {\n internRubriqueFilter.value = internRubriqueFilterToUpdate;\n updateInternRubriqueFilter();\n emit(\"warning\");\n }\n}\n</script>\n"],"mappings":"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"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"RubriqueList-Cr0vXMew.mjs","names":[],"sources":["../src/components/display/rubriques/RubriqueList.vue","../src/components/display/rubriques/RubriqueList.vue"],"sourcesContent":["<template>\n <div class=\"d-inline-flex w-100 mb-3 px-3 hide-phone\">\n <div ref=\"rubriqueListContainer\" class=\"rubrique-list-container\">\n\n <!-- Liste déroulante pour sélectionner le rubriquage -->\n <select\n v-model=\"rubriquage\"\n :title=\"t('By topic')\"\n class=\"c-hand\"\n @change=\"onRubriquageSelected\"\n >\n <option\n v-for=\"myRubriquage in rubriquageDisplay\"\n :key=\"myRubriquage.rubriquageId\"\n :value=\"myRubriquage\"\n >\n {{ myRubriquage.title }}\n </option>\n </select>\n\n <!-- Boutons de sélection de la rubrique -->\n <button\n v-for=\"rubrique in rubriqueDisplay\"\n :id=\"'rubrique' + rubrique.rubriqueId\"\n :key=\"rubrique.rubriqueId\"\n class=\"btn btn-primary btn-on-dark m-1\"\n @click=\"addFilter(rubrique)\"\n >\n {{ rubrique.name }}\n </button>\n </div>\n\n <!-- Bouton pour afficher les rubriques cachées -->\n <button\n v-show=\"hidenRubriques.length\"\n id=\"rubriques-dropdown\"\n class=\"btn btn-primary btn-on-dark m-1\"\n :title=\"t('See more')\"\n >\n <PlusIcon />\n </button>\n\n <!-- Popup de sélection des rubriques cachées -->\n <ClassicPopover\n ref=\"popoverRubrique\"\n target=\"rubriques-dropdown\"\n :only-click=\"true\"\n :left-pos=\"true\"\n >\n <RubriqueChooser\n v-if=\"hidenRubriques.length\"\n class=\"rubrique-chooser-minwidth\"\n :all-rubriques=\"hidenRubriques\"\n :placeholder=\"rubriqueChooserText\"\n @selected=\"addFilterFromPopover($event)\"\n />\n </ClassicPopover>\n </div>\n</template>\n\n<script setup lang=\"ts\">\nimport PlusIcon from \"vue-material-design-icons/Plus.vue\";\nimport { useRubriquesFilterParam } from \"../../composable/route/useRubriquesFilterParam\";\nimport ClassicPopover from \"../../misc/ClassicPopover.vue\";\nimport { Rubrique } from \"@/stores/class/rubrique/rubrique\";\nimport { Rubriquage } from \"@/stores/class/rubrique/rubriquage\";\nimport { useFilterStore } from \"../../../stores/FilterStore\";\nimport { computed, defineAsyncComponent, nextTick, onBeforeUnmount, onMounted, Ref, ref, useTemplateRef, watch } from \"vue\";\nimport { useI18n } from \"vue-i18n\";\nconst RubriqueChooser = defineAsyncComponent(\n () => import(\"../rubriques/RubriqueChooser.vue\"),\n);\n\n//Props \nconst props = defineProps({\n rubriquages: { default: () => [], type: Array as () => Array<Rubriquage> },\n})\n\n//Data \nconst hidenRubriques: Ref<Array<Rubrique>> = ref([]);\nconst rubriquage: Ref<Rubriquage | undefined> = ref(undefined);\nconst popoverRubriqueRef = useTemplateRef('popoverRubrique');\nconst rubriqueListContainerRef = useTemplateRef('rubriqueListContainer');\n\n\n//Composables\nconst { t } = useI18n();\nconst { modifyRubriquesFilter } = useRubriquesFilterParam();\nconst filterStore = useFilterStore();\n\n\n//Computed\nconst rubriqueDisplay = computed(() => {\n return filterStore.filterRubriqueDisplay.filter(\n (rubrique: Rubrique) => 0 !== rubrique.podcastCount,\n );\n});\nconst rubriquageDisplay = computed(() => {\n const elementToNotShow = Array.from(filterStore.filterRubrique);\n if (elementToNotShow.length) {\n const rubriquageIdToNotShow = elementToNotShow.map(\n (a) => a.rubriquageId,\n );\n return props.rubriquages.filter((element) => {\n if (!element.rubriquageId) {\n return;\n }\n return !rubriquageIdToNotShow.includes(element.rubriquageId);\n });\n }\n return Array.from(props.rubriquages).toSorted((a,b) => {\n if(a.title > b.title){\n return 1;\n }\n return (b.title > a.title) ? -1 : 0;\n });\n});\n\n// Retourne le texte à afficher dans le RubriqueChooser\nconst rubriqueChooserText = computed(() => {\n if (!rubriquage.value) {\n return '';\n }\n let topic = rubriquage.value.title;\n return t('Enter name of topic', { topic });\n});\n\n\n//Watch\nwatch(()=>filterStore.filterRubrique, () => {\n selectNewRubriquage()\n}, {deep: true});\n\nonMounted(()=>selectNewRubriquage())\n\nonBeforeUnmount(()=> window.removeEventListener(\"resize\", resizeWindow))\n\n\n//Methods\nfunction initRubriques(): void {\n filterStore.filterUpdateRubriqueDisplay(rubriquage.value?.rubriques ?? []);\n window.addEventListener(\"resize\", resizeWindow);\n nextTick(() => {\n resizeWindow();\n });\n}\nfunction addFilterFromPopover(rubrique: Rubrique): void {\n const popover = popoverRubriqueRef?.value as InstanceType<typeof ClassicPopover>;\n popover.clearClick();\n addFilter(rubrique);\n}\nfunction addFilter(rubrique: Rubrique): void {\n if (!rubriquage.value) {\n return;\n }\n const filterToAdd = {\n rubriquageId: rubriquage.value.rubriquageId ?? 0,\n rubriqueId: rubrique.rubriqueId ?? 0,\n nameRubriquage: rubriquage.value.title,\n nameRubrique: rubrique.name,\n };\n modifyRubriquesFilter((a) => {\n a.push(filterToAdd);\n return a;\n });\n selectNewRubriquage();\n}\nfunction selectNewRubriquage() {\n const rubriquageLength = props.rubriquages.length;\n if (rubriquageLength === filterStore.filterRubrique.length) {\n return;\n }\n let index = 0;\n const rubriquageAlreadyFilter = filterStore.filterRubrique.map(\n (a) => a.rubriquageId,\n );\n for (index; index < rubriquageLength; index++) {\n const rubriquageIdIndex = props.rubriquages[index].rubriquageId;\n if (\n rubriquageIdIndex &&\n !rubriquageAlreadyFilter.includes(rubriquageIdIndex)\n ) {\n break;\n }\n }\n rubriquage.value = props.rubriquages[index];\n initRubriques();\n}\nfunction resizeWindow(): void {\n const rubriqueList = rubriqueListContainerRef?.value as HTMLElement;\n if (null === rubriqueList) {\n return;\n }\n rubriqueList.style.justifyContent = \"flex-start\";\n hidenRubriques.value.length = 0;\n rubriqueDisplay.value.forEach((element: Rubrique) => {\n const el = rubriqueList.querySelector('#rubrique' + element.rubriqueId);\n if (!el) return;\n if (el.classList.contains(\"hid\")) {\n el.classList.remove(\"hid\");\n }\n });\n rubriqueDisplay.value.forEach((element: Rubrique) => {\n const el = rubriqueList.querySelector('#rubrique' + element.rubriqueId);\n if (!el) return;\n const parent = el.parentElement;\n if (\n null !== parent &&\n el.offsetLeft + el.clientWidth <= parent.clientWidth - 20\n ) {\n return;\n }\n hidenRubriques.value.push(element);\n if (!el.classList.contains(\"hid\")) {\n el.className += \" hid\";\n }\n });\n if (!hidenRubriques.value.length) {\n rubriqueList.style.justifyContent = \"center\";\n }\n}\nfunction onRubriquageSelected() {\n initRubriques();\n}\n</script>\n\n<style lang=\"scss\">\n.octopus-app {\n .rubrique-list-container {\n display: flex;\n justify-content: flex-start;\n align-items: center;\n overflow: hidden;\n flex-grow: 1;\n width: 0;\n padding: 0 4rem;\n\n select {\n width: auto;\n border-radius: var(--octopus-border-radius);\n margin: 0.25rem;\n font-size: 0.6rem;\n padding: 0.5rem;\n }\n }\n\n #popoverrubriques-dropdown {\n overflow: initial !important;\n }\n\n .rubrique-chooser-minwidth {\n min-width: 400px;\n\n @media (width <= 500px) {\n min-width: 90vw;\n }\n }\n}\n</style>\n","<template>\n <div class=\"d-inline-flex w-100 mb-3 px-3 hide-phone\">\n <div ref=\"rubriqueListContainer\" class=\"rubrique-list-container\">\n\n <!-- Liste déroulante pour sélectionner le rubriquage -->\n <select\n v-model=\"rubriquage\"\n :title=\"t('By topic')\"\n class=\"c-hand\"\n @change=\"onRubriquageSelected\"\n >\n <option\n v-for=\"myRubriquage in rubriquageDisplay\"\n :key=\"myRubriquage.rubriquageId\"\n :value=\"myRubriquage\"\n >\n {{ myRubriquage.title }}\n </option>\n </select>\n\n <!-- Boutons de sélection de la rubrique -->\n <button\n v-for=\"rubrique in rubriqueDisplay\"\n :id=\"'rubrique' + rubrique.rubriqueId\"\n :key=\"rubrique.rubriqueId\"\n class=\"btn btn-primary btn-on-dark m-1\"\n @click=\"addFilter(rubrique)\"\n >\n {{ rubrique.name }}\n </button>\n </div>\n\n <!-- Bouton pour afficher les rubriques cachées -->\n <button\n v-show=\"hidenRubriques.length\"\n id=\"rubriques-dropdown\"\n class=\"btn btn-primary btn-on-dark m-1\"\n :title=\"t('See more')\"\n >\n <PlusIcon />\n </button>\n\n <!-- Popup de sélection des rubriques cachées -->\n <ClassicPopover\n ref=\"popoverRubrique\"\n target=\"rubriques-dropdown\"\n :only-click=\"true\"\n :left-pos=\"true\"\n >\n <RubriqueChooser\n v-if=\"hidenRubriques.length\"\n class=\"rubrique-chooser-minwidth\"\n :all-rubriques=\"hidenRubriques\"\n :placeholder=\"rubriqueChooserText\"\n @selected=\"addFilterFromPopover($event)\"\n />\n </ClassicPopover>\n </div>\n</template>\n\n<script setup lang=\"ts\">\nimport PlusIcon from \"vue-material-design-icons/Plus.vue\";\nimport { useRubriquesFilterParam } from \"../../composable/route/useRubriquesFilterParam\";\nimport ClassicPopover from \"../../misc/ClassicPopover.vue\";\nimport { Rubrique } from \"@/stores/class/rubrique/rubrique\";\nimport { Rubriquage } from \"@/stores/class/rubrique/rubriquage\";\nimport { useFilterStore } from \"../../../stores/FilterStore\";\nimport { computed, defineAsyncComponent, nextTick, onBeforeUnmount, onMounted, Ref, ref, useTemplateRef, watch } from \"vue\";\nimport { useI18n } from \"vue-i18n\";\nconst RubriqueChooser = defineAsyncComponent(\n () => import(\"../rubriques/RubriqueChooser.vue\"),\n);\n\n//Props \nconst props = defineProps({\n rubriquages: { default: () => [], type: Array as () => Array<Rubriquage> },\n})\n\n//Data \nconst hidenRubriques: Ref<Array<Rubrique>> = ref([]);\nconst rubriquage: Ref<Rubriquage | undefined> = ref(undefined);\nconst popoverRubriqueRef = useTemplateRef('popoverRubrique');\nconst rubriqueListContainerRef = useTemplateRef('rubriqueListContainer');\n\n\n//Composables\nconst { t } = useI18n();\nconst { modifyRubriquesFilter } = useRubriquesFilterParam();\nconst filterStore = useFilterStore();\n\n\n//Computed\nconst rubriqueDisplay = computed(() => {\n return filterStore.filterRubriqueDisplay.filter(\n (rubrique: Rubrique) => 0 !== rubrique.podcastCount,\n );\n});\nconst rubriquageDisplay = computed(() => {\n const elementToNotShow = Array.from(filterStore.filterRubrique);\n if (elementToNotShow.length) {\n const rubriquageIdToNotShow = elementToNotShow.map(\n (a) => a.rubriquageId,\n );\n return props.rubriquages.filter((element) => {\n if (!element.rubriquageId) {\n return;\n }\n return !rubriquageIdToNotShow.includes(element.rubriquageId);\n });\n }\n return Array.from(props.rubriquages).toSorted((a,b) => {\n if(a.title > b.title){\n return 1;\n }\n return (b.title > a.title) ? -1 : 0;\n });\n});\n\n// Retourne le texte à afficher dans le RubriqueChooser\nconst rubriqueChooserText = computed(() => {\n if (!rubriquage.value) {\n return '';\n }\n let topic = rubriquage.value.title;\n return t('Enter name of topic', { topic });\n});\n\n\n//Watch\nwatch(()=>filterStore.filterRubrique, () => {\n selectNewRubriquage()\n}, {deep: true});\n\nonMounted(()=>selectNewRubriquage())\n\nonBeforeUnmount(()=> window.removeEventListener(\"resize\", resizeWindow))\n\n\n//Methods\nfunction initRubriques(): void {\n filterStore.filterUpdateRubriqueDisplay(rubriquage.value?.rubriques ?? []);\n window.addEventListener(\"resize\", resizeWindow);\n nextTick(() => {\n resizeWindow();\n });\n}\nfunction addFilterFromPopover(rubrique: Rubrique): void {\n const popover = popoverRubriqueRef?.value as InstanceType<typeof ClassicPopover>;\n popover.clearClick();\n addFilter(rubrique);\n}\nfunction addFilter(rubrique: Rubrique): void {\n if (!rubriquage.value) {\n return;\n }\n const filterToAdd = {\n rubriquageId: rubriquage.value.rubriquageId ?? 0,\n rubriqueId: rubrique.rubriqueId ?? 0,\n nameRubriquage: rubriquage.value.title,\n nameRubrique: rubrique.name,\n };\n modifyRubriquesFilter((a) => {\n a.push(filterToAdd);\n return a;\n });\n selectNewRubriquage();\n}\nfunction selectNewRubriquage() {\n const rubriquageLength = props.rubriquages.length;\n if (rubriquageLength === filterStore.filterRubrique.length) {\n return;\n }\n let index = 0;\n const rubriquageAlreadyFilter = filterStore.filterRubrique.map(\n (a) => a.rubriquageId,\n );\n for (index; index < rubriquageLength; index++) {\n const rubriquageIdIndex = props.rubriquages[index].rubriquageId;\n if (\n rubriquageIdIndex &&\n !rubriquageAlreadyFilter.includes(rubriquageIdIndex)\n ) {\n break;\n }\n }\n rubriquage.value = props.rubriquages[index];\n initRubriques();\n}\nfunction resizeWindow(): void {\n const rubriqueList = rubriqueListContainerRef?.value as HTMLElement;\n if (null === rubriqueList) {\n return;\n }\n rubriqueList.style.justifyContent = \"flex-start\";\n hidenRubriques.value.length = 0;\n rubriqueDisplay.value.forEach((element: Rubrique) => {\n const el = rubriqueList.querySelector('#rubrique' + element.rubriqueId);\n if (!el) return;\n if (el.classList.contains(\"hid\")) {\n el.classList.remove(\"hid\");\n }\n });\n rubriqueDisplay.value.forEach((element: Rubrique) => {\n const el = rubriqueList.querySelector('#rubrique' + element.rubriqueId);\n if (!el) return;\n const parent = el.parentElement;\n if (\n null !== parent &&\n el.offsetLeft + el.clientWidth <= parent.clientWidth - 20\n ) {\n return;\n }\n hidenRubriques.value.push(element);\n if (!el.classList.contains(\"hid\")) {\n el.className += \" hid\";\n }\n });\n if (!hidenRubriques.value.length) {\n rubriqueList.style.justifyContent = \"center\";\n }\n}\nfunction onRubriquageSelected() {\n initRubriques();\n}\n</script>\n\n<style lang=\"scss\">\n.octopus-app {\n .rubrique-list-container {\n display: flex;\n justify-content: flex-start;\n align-items: center;\n overflow: hidden;\n flex-grow: 1;\n width: 0;\n padding: 0 4rem;\n\n select {\n width: auto;\n border-radius: var(--octopus-border-radius);\n margin: 0.25rem;\n font-size: 0.6rem;\n padding: 0.5rem;\n }\n }\n\n #popoverrubriques-dropdown {\n overflow: initial !important;\n }\n\n .rubrique-chooser-minwidth {\n min-width: 400px;\n\n @media (width <= 500px) {\n min-width: 90vw;\n }\n }\n}\n</style>\n"],"mappings":"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"}
@@ -0,0 +1,169 @@
1
+ import { r as useFilterStore } from "./classicApi-BKNiWOG4.mjs";
2
+ import { t as ClassicPopover_default } from "./ClassicPopover-Bk5kf37e.mjs";
3
+ import { t as useRubriquesFilterParam } from "./useRubriquesFilterParam-U-wcZUul.mjs";
4
+ import { Fragment, computed, createBlock, createCommentVNode, createElementBlock, createElementVNode, createVNode, defineAsyncComponent, defineComponent, nextTick, onBeforeUnmount, onMounted, openBlock, ref, renderList, toDisplayString, unref, useTemplateRef, vModelSelect, vShow, watch, withCtx, withDirectives } from "vue";
5
+ import PlusIcon from "vue-material-design-icons/Plus.vue";
6
+ import { useI18n } from "vue-i18n";
7
+ //#region src/components/display/rubriques/RubriqueList.vue?vue&type=script&setup=true&lang.ts
8
+ var _hoisted_1 = { class: "d-inline-flex w-100 mb-3 px-3 hide-phone" };
9
+ var _hoisted_2 = {
10
+ ref: "rubriqueListContainer",
11
+ class: "rubrique-list-container"
12
+ };
13
+ var _hoisted_3 = ["title"];
14
+ var _hoisted_4 = ["value"];
15
+ var _hoisted_5 = ["id", "onClick"];
16
+ var _hoisted_6 = ["title"];
17
+ //#endregion
18
+ //#region src/components/display/rubriques/RubriqueList.vue
19
+ var RubriqueList_default = /* @__PURE__ */ defineComponent({
20
+ __name: "RubriqueList",
21
+ props: { rubriquages: {
22
+ default: () => [],
23
+ type: Array
24
+ } },
25
+ setup(__props) {
26
+ const RubriqueChooser = defineAsyncComponent(() => import("./RubriqueChooser-BgIvDDv7.mjs"));
27
+ const props = __props;
28
+ const hidenRubriques = ref([]);
29
+ const rubriquage = ref(void 0);
30
+ const popoverRubriqueRef = useTemplateRef("popoverRubrique");
31
+ const rubriqueListContainerRef = useTemplateRef("rubriqueListContainer");
32
+ const { t } = useI18n();
33
+ const { modifyRubriquesFilter } = useRubriquesFilterParam();
34
+ const filterStore = useFilterStore();
35
+ const rubriqueDisplay = computed(() => {
36
+ return filterStore.filterRubriqueDisplay.filter((rubrique) => 0 !== rubrique.podcastCount);
37
+ });
38
+ const rubriquageDisplay = computed(() => {
39
+ const elementToNotShow = Array.from(filterStore.filterRubrique);
40
+ if (elementToNotShow.length) {
41
+ const rubriquageIdToNotShow = elementToNotShow.map((a) => a.rubriquageId);
42
+ return props.rubriquages.filter((element) => {
43
+ if (!element.rubriquageId) return;
44
+ return !rubriquageIdToNotShow.includes(element.rubriquageId);
45
+ });
46
+ }
47
+ return Array.from(props.rubriquages).toSorted((a, b) => {
48
+ if (a.title > b.title) return 1;
49
+ return b.title > a.title ? -1 : 0;
50
+ });
51
+ });
52
+ const rubriqueChooserText = computed(() => {
53
+ if (!rubriquage.value) return "";
54
+ let topic = rubriquage.value.title;
55
+ return t("Enter name of topic", { topic });
56
+ });
57
+ watch(() => filterStore.filterRubrique, () => {
58
+ selectNewRubriquage();
59
+ }, { deep: true });
60
+ onMounted(() => selectNewRubriquage());
61
+ onBeforeUnmount(() => window.removeEventListener("resize", resizeWindow));
62
+ function initRubriques() {
63
+ filterStore.filterUpdateRubriqueDisplay(rubriquage.value?.rubriques ?? []);
64
+ window.addEventListener("resize", resizeWindow);
65
+ nextTick(() => {
66
+ resizeWindow();
67
+ });
68
+ }
69
+ function addFilterFromPopover(rubrique) {
70
+ (popoverRubriqueRef?.value).clearClick();
71
+ addFilter(rubrique);
72
+ }
73
+ function addFilter(rubrique) {
74
+ if (!rubriquage.value) return;
75
+ const filterToAdd = {
76
+ rubriquageId: rubriquage.value.rubriquageId ?? 0,
77
+ rubriqueId: rubrique.rubriqueId ?? 0,
78
+ nameRubriquage: rubriquage.value.title,
79
+ nameRubrique: rubrique.name
80
+ };
81
+ modifyRubriquesFilter((a) => {
82
+ a.push(filterToAdd);
83
+ return a;
84
+ });
85
+ selectNewRubriquage();
86
+ }
87
+ function selectNewRubriquage() {
88
+ const rubriquageLength = props.rubriquages.length;
89
+ if (rubriquageLength === filterStore.filterRubrique.length) return;
90
+ let index = 0;
91
+ const rubriquageAlreadyFilter = filterStore.filterRubrique.map((a) => a.rubriquageId);
92
+ for (; index < rubriquageLength; index++) {
93
+ const rubriquageIdIndex = props.rubriquages[index].rubriquageId;
94
+ if (rubriquageIdIndex && !rubriquageAlreadyFilter.includes(rubriquageIdIndex)) break;
95
+ }
96
+ rubriquage.value = props.rubriquages[index];
97
+ initRubriques();
98
+ }
99
+ function resizeWindow() {
100
+ const rubriqueList = rubriqueListContainerRef?.value;
101
+ if (null === rubriqueList) return;
102
+ rubriqueList.style.justifyContent = "flex-start";
103
+ hidenRubriques.value.length = 0;
104
+ rubriqueDisplay.value.forEach((element) => {
105
+ const el = rubriqueList.querySelector("#rubrique" + element.rubriqueId);
106
+ if (!el) return;
107
+ if (el.classList.contains("hid")) el.classList.remove("hid");
108
+ });
109
+ rubriqueDisplay.value.forEach((element) => {
110
+ const el = rubriqueList.querySelector("#rubrique" + element.rubriqueId);
111
+ if (!el) return;
112
+ const parent = el.parentElement;
113
+ if (null !== parent && el.offsetLeft + el.clientWidth <= parent.clientWidth - 20) return;
114
+ hidenRubriques.value.push(element);
115
+ if (!el.classList.contains("hid")) el.className += " hid";
116
+ });
117
+ if (!hidenRubriques.value.length) rubriqueList.style.justifyContent = "center";
118
+ }
119
+ function onRubriquageSelected() {
120
+ initRubriques();
121
+ }
122
+ return (_ctx, _cache) => {
123
+ return openBlock(), createElementBlock("div", _hoisted_1, [
124
+ createElementVNode("div", _hoisted_2, [withDirectives(createElementVNode("select", {
125
+ "onUpdate:modelValue": _cache[0] || (_cache[0] = ($event) => rubriquage.value = $event),
126
+ title: unref(t)("By topic"),
127
+ class: "c-hand",
128
+ onChange: onRubriquageSelected
129
+ }, [(openBlock(true), createElementBlock(Fragment, null, renderList(rubriquageDisplay.value, (myRubriquage) => {
130
+ return openBlock(), createElementBlock("option", {
131
+ key: myRubriquage.rubriquageId,
132
+ value: myRubriquage
133
+ }, toDisplayString(myRubriquage.title), 9, _hoisted_4);
134
+ }), 128))], 40, _hoisted_3), [[vModelSelect, rubriquage.value]]), (openBlock(true), createElementBlock(Fragment, null, renderList(rubriqueDisplay.value, (rubrique) => {
135
+ return openBlock(), createElementBlock("button", {
136
+ id: "rubrique" + rubrique.rubriqueId,
137
+ key: rubrique.rubriqueId,
138
+ class: "btn btn-primary btn-on-dark m-1",
139
+ onClick: ($event) => addFilter(rubrique)
140
+ }, toDisplayString(rubrique.name), 9, _hoisted_5);
141
+ }), 128))], 512),
142
+ withDirectives(createElementVNode("button", {
143
+ id: "rubriques-dropdown",
144
+ class: "btn btn-primary btn-on-dark m-1",
145
+ title: unref(t)("See more")
146
+ }, [createVNode(PlusIcon)], 8, _hoisted_6), [[vShow, hidenRubriques.value.length]]),
147
+ createVNode(ClassicPopover_default, {
148
+ ref: "popoverRubrique",
149
+ target: "rubriques-dropdown",
150
+ "only-click": true,
151
+ "left-pos": true
152
+ }, {
153
+ default: withCtx(() => [hidenRubriques.value.length ? (openBlock(), createBlock(unref(RubriqueChooser), {
154
+ key: 0,
155
+ class: "rubrique-chooser-minwidth",
156
+ "all-rubriques": hidenRubriques.value,
157
+ placeholder: rubriqueChooserText.value,
158
+ onSelected: _cache[1] || (_cache[1] = ($event) => addFilterFromPopover($event))
159
+ }, null, 8, ["all-rubriques", "placeholder"])) : createCommentVNode("", true)]),
160
+ _: 1
161
+ }, 512)
162
+ ]);
163
+ };
164
+ }
165
+ });
166
+ //#endregion
167
+ export { RubriqueList_default as default };
168
+
169
+ //# sourceMappingURL=RubriqueList-D2PPns3m.mjs.map